[2026-08-25 00:00:05,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:00:05,019.019 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 00:00:09,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:00:09,117.117 INFO    ] Checking for system updates...
[2026-08-25 00:00:09,153.153 INFO    ] 200
[2026-08-25 00:00:09,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:09,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:00:09,212.212 INFO    ] No update needed
[2026-08-25 00:00:09,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 00:00:09,254.254 INFO    ] 200
[2026-08-25 00:00:09,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:09,296.296 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:00:09,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:00:09,355.355 INFO    ] No camera update needed
[2026-08-25 00:00:09,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:00:09,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:00:09,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:00:09,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:00:11,408.408 INFO    ] ================================================
[2026-08-25 00:00:11,423.423 INFO    ] Launching Daemon at Tue Aug 25 00:00:11 IST 2026
[2026-08-25 00:00:11,434.434 INFO    ] ================================================
[2026-08-25 00:00:11,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:00:11
[2026-08-25 00:00:12,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:00:12,862.862 INFO    ] Initializing speech engine...
[2026-08-25 00:00:12,871.871 INFO    ] 2026-08-25 00:00:12
[2026-08-25 00:00:13,144.144 INFO    ] 2026-08-25 00:00:13
[2026-08-25 00:00:13,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:00:13,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:00:13,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:00:13,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:00:13,609.609 INFO    ] time= 25/08/2026 00:00:13
[2026-08-25 00:00:13,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:00:13,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:00:13,806.806 INFO    ] No existing commands found in stream
[2026-08-25 00:00:18,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:00:18,821.821 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 00:00:19,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:00:19,989.989 INFO    ] Checking for system updates...
[2026-08-25 00:00:20,025.025 INFO    ] 200
[2026-08-25 00:00:20,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:20,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:00:20,084.084 INFO    ] No update needed
[2026-08-25 00:00:20,087.087 INFO    ] Checking for camera pi updates...
[2026-08-25 00:00:20,120.120 INFO    ] 200
[2026-08-25 00:00:20,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:20,163.163 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:00:20,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:00:20,210.210 INFO    ] No camera update needed
[2026-08-25 00:00:20,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:00:20,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:00:20,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:00:20,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:00:22,265.265 INFO    ] ================================================
[2026-08-25 00:00:22,281.281 INFO    ] Launching Daemon at Tue Aug 25 00:00:22 IST 2026
[2026-08-25 00:00:22,291.291 INFO    ] ================================================
[2026-08-25 00:00:22,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:00:22
[2026-08-25 00:00:23,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:00:23,746.746 INFO    ] Initializing speech engine...
[2026-08-25 00:00:23,755.755 INFO    ] 2026-08-25 00:00:23
[2026-08-25 00:00:24,012.012 INFO    ] 2026-08-25 00:00:24
[2026-08-25 00:00:24,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:00:24,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:00:24,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:00:24,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:00:24,381.381 INFO    ] time= 25/08/2026 00:00:24
[2026-08-25 00:00:24,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:00:24,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:00:24,489.489 INFO    ] No existing commands found in stream
[2026-08-25 00:00:29,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:00:29,528.528 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 00:00:30,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:00:30,609.609 INFO    ] Checking for system updates...
[2026-08-25 00:00:30,647.647 INFO    ] 200
[2026-08-25 00:00:30,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:30,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:00:30,703.703 INFO    ] No update needed
[2026-08-25 00:00:30,705.705 INFO    ] Checking for camera pi updates...
[2026-08-25 00:00:30,739.739 INFO    ] 200
[2026-08-25 00:00:30,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:30,782.782 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:00:30,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:00:30,842.842 INFO    ] No camera update needed
[2026-08-25 00:00:30,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:00:30,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:00:30,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:00:30,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:00:32,898.898 INFO    ] ================================================
[2026-08-25 00:00:32,914.914 INFO    ] Launching Daemon at Tue Aug 25 00:00:32 IST 2026
[2026-08-25 00:00:32,925.925 INFO    ] ================================================
[2026-08-25 00:00:33,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:00:33
[2026-08-25 00:00:34,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:00:34,407.407 INFO    ] Initializing speech engine...
[2026-08-25 00:00:34,415.415 INFO    ] 2026-08-25 00:00:34
[2026-08-25 00:00:34,674.674 INFO    ] 2026-08-25 00:00:34
[2026-08-25 00:00:34,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:00:34,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:00:34,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:00:35,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:00:35,143.143 INFO    ] time= 25/08/2026 00:00:35
[2026-08-25 00:00:35,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:00:35,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:00:35,359.359 INFO    ] No existing commands found in stream
[2026-08-25 00:00:40,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:00:40,386.386 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 00:00:44,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:00:44,795.795 INFO    ] Checking for system updates...
[2026-08-25 00:00:44,830.830 INFO    ] 200
[2026-08-25 00:00:44,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:44,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:00:44,889.889 INFO    ] No update needed
[2026-08-25 00:00:44,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 00:00:44,930.930 INFO    ] 200
[2026-08-25 00:00:44,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:44,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:00:45,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:00:45,116.116 INFO    ] No camera update needed
[2026-08-25 00:00:45,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:00:45,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:00:45,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:00:45,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:00:47,171.171 INFO    ] ================================================
[2026-08-25 00:00:47,187.187 INFO    ] Launching Daemon at Tue Aug 25 00:00:47 IST 2026
[2026-08-25 00:00:47,198.198 INFO    ] ================================================
[2026-08-25 00:00:47,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:00:47
[2026-08-25 00:00:48,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:00:48,624.624 INFO    ] Initializing speech engine...
[2026-08-25 00:00:48,636.636 INFO    ] 2026-08-25 00:00:48
[2026-08-25 00:00:48,888.888 INFO    ] 2026-08-25 00:00:48
[2026-08-25 00:00:48,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:00:49,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:00:49,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:00:49,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:00:49,266.266 INFO    ] time= 25/08/2026 00:00:49
[2026-08-25 00:00:49,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:00:49,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:00:49,440.440 INFO    ] No existing commands found in stream
[2026-08-25 00:00:54,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:00:54,468.468 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 00:00:56,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:00:56,301.301 INFO    ] Checking for system updates...
[2026-08-25 00:00:56,336.336 INFO    ] 200
[2026-08-25 00:00:56,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:56,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:00:56,393.393 INFO    ] No update needed
[2026-08-25 00:00:56,395.395 INFO    ] Checking for camera pi updates...
[2026-08-25 00:00:56,429.429 INFO    ] 200
[2026-08-25 00:00:56,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:00:56,473.473 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:00:56,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:00:56,529.529 INFO    ] No camera update needed
[2026-08-25 00:00:56,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:00:56,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:00:56,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:00:56,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:00:58,586.586 INFO    ] ================================================
[2026-08-25 00:00:58,603.603 INFO    ] Launching Daemon at Tue Aug 25 00:00:58 IST 2026
[2026-08-25 00:00:58,615.615 INFO    ] ================================================
[2026-08-25 00:00:59,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:00:59
[2026-08-25 00:00:59,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:01:00,211.211 INFO    ] Initializing speech engine...
[2026-08-25 00:01:00,220.220 INFO    ] 2026-08-25 00:01:00
[2026-08-25 00:01:00,490.490 INFO    ] 2026-08-25 00:01:00
[2026-08-25 00:01:00,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:01:00,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:01:00,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:01:00,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:01:01,035.035 INFO    ] time= 25/08/2026 00:01:00
[2026-08-25 00:01:01,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:01:01,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:01:01,204.204 INFO    ] No existing commands found in stream
[2026-08-25 00:01:06,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:01:06,233.233 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 00:01:10,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:01:10,237.237 INFO    ] Checking for system updates...
[2026-08-25 00:01:10,273.273 INFO    ] 200
[2026-08-25 00:01:10,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:10,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:01:10,334.334 INFO    ] No update needed
[2026-08-25 00:01:10,337.337 INFO    ] Checking for camera pi updates...
[2026-08-25 00:01:10,378.378 INFO    ] 200
[2026-08-25 00:01:10,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:10,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:01:10,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:01:10,476.476 INFO    ] No camera update needed
[2026-08-25 00:01:10,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:01:10,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:01:10,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:01:10,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:01:12,534.534 INFO    ] ================================================
[2026-08-25 00:01:12,548.548 INFO    ] Launching Daemon at Tue Aug 25 00:01:12 IST 2026
[2026-08-25 00:01:12,559.559 INFO    ] ================================================
[2026-08-25 00:01:13,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:01:13
[2026-08-25 00:01:13,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:01:13,976.976 INFO    ] Initializing speech engine...
[2026-08-25 00:01:13,985.985 INFO    ] 2026-08-25 00:01:13
[2026-08-25 00:01:14,248.248 INFO    ] 2026-08-25 00:01:14
[2026-08-25 00:01:14,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:01:14,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:01:14,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:01:14,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:01:14,722.722 INFO    ] time= 25/08/2026 00:01:14
[2026-08-25 00:01:14,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:01:14,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:01:14,942.942 INFO    ] No existing commands found in stream
[2026-08-25 00:01:19,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:01:19,982.982 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 00:01:22,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:01:22,261.261 INFO    ] Checking for system updates...
[2026-08-25 00:01:22,296.296 INFO    ] 200
[2026-08-25 00:01:22,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:22,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:01:22,359.359 INFO    ] No update needed
[2026-08-25 00:01:22,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 00:01:22,394.394 INFO    ] 200
[2026-08-25 00:01:22,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:22,436.436 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:01:22,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:01:22,486.486 INFO    ] No camera update needed
[2026-08-25 00:01:22,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:01:22,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:01:22,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:01:22,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:01:24,542.542 INFO    ] ================================================
[2026-08-25 00:01:24,557.557 INFO    ] Launching Daemon at Tue Aug 25 00:01:24 IST 2026
[2026-08-25 00:01:24,568.568 INFO    ] ================================================
[2026-08-25 00:01:25,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:01:25
[2026-08-25 00:01:25,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:01:25,983.983 INFO    ] Initializing speech engine...
[2026-08-25 00:01:26,006.006 INFO    ] 2026-08-25 00:01:25
[2026-08-25 00:01:26,259.259 INFO    ] 2026-08-25 00:01:26
[2026-08-25 00:01:26,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:01:26,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:01:26,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:01:26,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:01:26,639.639 INFO    ] time= 25/08/2026 00:01:26
[2026-08-25 00:01:26,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:01:26,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:01:26,827.827 INFO    ] No existing commands found in stream
[2026-08-25 00:01:31,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:01:31,852.852 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 00:01:34,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:01:34,225.225 INFO    ] Checking for system updates...
[2026-08-25 00:01:34,267.267 INFO    ] 200
[2026-08-25 00:01:34,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:34,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:01:34,329.329 INFO    ] No update needed
[2026-08-25 00:01:34,332.332 INFO    ] Checking for camera pi updates...
[2026-08-25 00:01:34,381.381 INFO    ] 200
[2026-08-25 00:01:34,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:34,437.437 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:01:34,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:01:34,492.492 INFO    ] No camera update needed
[2026-08-25 00:01:34,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:01:34,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:01:34,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:01:34,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:01:36,550.550 INFO    ] ================================================
[2026-08-25 00:01:36,565.565 INFO    ] Launching Daemon at Tue Aug 25 00:01:36 IST 2026
[2026-08-25 00:01:36,576.576 INFO    ] ================================================
[2026-08-25 00:01:37,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:01:37
[2026-08-25 00:01:37,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:01:37,999.999 INFO    ] Initializing speech engine...
[2026-08-25 00:01:38,008.008 INFO    ] 2026-08-25 00:01:38
[2026-08-25 00:01:38,267.267 INFO    ] 2026-08-25 00:01:38
[2026-08-25 00:01:38,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:01:38,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:01:38,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:01:38,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:01:38,732.732 INFO    ] time= 25/08/2026 00:01:38
[2026-08-25 00:01:38,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:01:38,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:01:38,982.982 INFO    ] No existing commands found in stream
[2026-08-25 00:01:43,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:01:43,998.998 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 00:01:45,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:01:45,724.724 INFO    ] Checking for system updates...
[2026-08-25 00:01:45,759.759 INFO    ] 200
[2026-08-25 00:01:45,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:45,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:01:45,816.816 INFO    ] No update needed
[2026-08-25 00:01:45,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 00:01:45,853.853 INFO    ] 200
[2026-08-25 00:01:45,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:45,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:01:45,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:01:45,962.962 INFO    ] No camera update needed
[2026-08-25 00:01:45,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:01:45,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:01:45,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:01:45,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:01:48,016.016 INFO    ] ================================================
[2026-08-25 00:01:48,031.031 INFO    ] Launching Daemon at Tue Aug 25 00:01:48 IST 2026
[2026-08-25 00:01:48,042.042 INFO    ] ================================================
[2026-08-25 00:01:48,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:01:48
[2026-08-25 00:01:49,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:01:49,623.623 INFO    ] Initializing speech engine...
[2026-08-25 00:01:49,633.633 INFO    ] 2026-08-25 00:01:49
[2026-08-25 00:01:49,905.905 INFO    ] 2026-08-25 00:01:49
[2026-08-25 00:01:49,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:01:50,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:01:50,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:01:50,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:01:50,408.408 INFO    ] time= 25/08/2026 00:01:50
[2026-08-25 00:01:50,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:01:50,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:01:50,626.626 INFO    ] No existing commands found in stream
[2026-08-25 00:01:55,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:01:55,648.648 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 00:01:56,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:01:56,886.886 INFO    ] Checking for system updates...
[2026-08-25 00:01:56,922.922 INFO    ] 200
[2026-08-25 00:01:56,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:56,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:01:56,982.982 INFO    ] No update needed
[2026-08-25 00:01:56,984.984 INFO    ] Checking for camera pi updates...
[2026-08-25 00:01:57,017.017 INFO    ] 200
[2026-08-25 00:01:57,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:01:57,060.060 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:01:57,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:01:57,117.117 INFO    ] No camera update needed
[2026-08-25 00:01:57,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:01:57,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:01:57,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:01:57,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:01:59,171.171 INFO    ] ================================================
[2026-08-25 00:01:59,186.186 INFO    ] Launching Daemon at Tue Aug 25 00:01:59 IST 2026
[2026-08-25 00:01:59,197.197 INFO    ] ================================================
[2026-08-25 00:01:59,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:01:59
[2026-08-25 00:02:00,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:02:00,642.642 INFO    ] Initializing speech engine...
[2026-08-25 00:02:00,651.651 INFO    ] 2026-08-25 00:02:00
[2026-08-25 00:02:00,901.901 INFO    ] 2026-08-25 00:02:00
[2026-08-25 00:02:00,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:02:01,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:02:01,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:02:01,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:02:01,396.396 INFO    ] time= 25/08/2026 00:02:01
[2026-08-25 00:02:01,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:02:01,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:02:01,608.608 INFO    ] No existing commands found in stream
[2026-08-25 00:02:06,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:02:06,624.624 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 00:02:09,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:02:09,691.691 INFO    ] Checking for system updates...
[2026-08-25 00:02:09,726.726 INFO    ] 200
[2026-08-25 00:02:09,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:09,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:02:09,783.783 INFO    ] No update needed
[2026-08-25 00:02:09,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 00:02:09,820.820 INFO    ] 200
[2026-08-25 00:02:09,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:09,866.866 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:02:09,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:02:09,914.914 INFO    ] No camera update needed
[2026-08-25 00:02:09,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:02:09,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:02:09,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:02:09,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:02:11,973.973 INFO    ] ================================================
[2026-08-25 00:02:11,988.988 INFO    ] Launching Daemon at Tue Aug 25 00:02:11 IST 2026
[2026-08-25 00:02:12,999.999 INFO    ] ================================================
[2026-08-25 00:02:12,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:02:12
[2026-08-25 00:02:13,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:02:13,582.582 INFO    ] Initializing speech engine...
[2026-08-25 00:02:13,589.589 INFO    ] 2026-08-25 00:02:13
[2026-08-25 00:02:13,864.864 INFO    ] 2026-08-25 00:02:13
[2026-08-25 00:02:13,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:02:14,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:02:14,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:02:14,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:02:14,360.360 INFO    ] time= 25/08/2026 00:02:14
[2026-08-25 00:02:14,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:02:14,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:02:14,578.578 INFO    ] No existing commands found in stream
[2026-08-25 00:02:19,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:02:19,599.599 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 00:02:22,003.003 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:02:22,006.006 INFO    ] Checking for system updates...
[2026-08-25 00:02:22,045.045 INFO    ] 200
[2026-08-25 00:02:22,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:22,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:02:22,119.119 INFO    ] No update needed
[2026-08-25 00:02:22,123.123 INFO    ] Checking for camera pi updates...
[2026-08-25 00:02:22,163.163 INFO    ] 200
[2026-08-25 00:02:22,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:22,206.206 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:02:22,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:02:22,261.261 INFO    ] No camera update needed
[2026-08-25 00:02:22,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:02:22,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:02:22,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:02:22,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:02:24,318.318 INFO    ] ================================================
[2026-08-25 00:02:24,333.333 INFO    ] Launching Daemon at Tue Aug 25 00:02:24 IST 2026
[2026-08-25 00:02:24,344.344 INFO    ] ================================================
[2026-08-25 00:02:24,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:02:24
[2026-08-25 00:02:25,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:02:25,903.903 INFO    ] Initializing speech engine...
[2026-08-25 00:02:25,909.909 INFO    ] 2026-08-25 00:02:25
[2026-08-25 00:02:26,183.183 INFO    ] 2026-08-25 00:02:26
[2026-08-25 00:02:26,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:02:26,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:02:26,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:02:26,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:02:26,730.730 INFO    ] time= 25/08/2026 00:02:26
[2026-08-25 00:02:26,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:02:26,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:02:26,889.889 INFO    ] No existing commands found in stream
[2026-08-25 00:02:31,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:02:31,916.916 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 00:02:33,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:02:33,471.471 INFO    ] Checking for system updates...
[2026-08-25 00:02:33,508.508 INFO    ] 200
[2026-08-25 00:02:33,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:33,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:02:33,567.567 INFO    ] No update needed
[2026-08-25 00:02:33,570.570 INFO    ] Checking for camera pi updates...
[2026-08-25 00:02:33,610.610 INFO    ] 200
[2026-08-25 00:02:33,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:33,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:02:33,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:02:33,707.707 INFO    ] No camera update needed
[2026-08-25 00:02:33,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:02:33,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:02:33,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:02:33,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:02:35,765.765 INFO    ] ================================================
[2026-08-25 00:02:35,779.779 INFO    ] Launching Daemon at Tue Aug 25 00:02:35 IST 2026
[2026-08-25 00:02:35,790.790 INFO    ] ================================================
[2026-08-25 00:02:36,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:02:36
[2026-08-25 00:02:36,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:02:37,196.196 INFO    ] Initializing speech engine...
[2026-08-25 00:02:37,204.204 INFO    ] 2026-08-25 00:02:37
[2026-08-25 00:02:37,499.499 INFO    ] 2026-08-25 00:02:37
[2026-08-25 00:02:37,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:02:37,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:02:37,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:02:37,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:02:37,878.878 INFO    ] time= 25/08/2026 00:02:37
[2026-08-25 00:02:37,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:02:37,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:02:38,012.012 INFO    ] No existing commands found in stream
[2026-08-25 00:02:43,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:02:43,050.050 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 00:02:47,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:02:47,003.003 INFO    ] Checking for system updates...
[2026-08-25 00:02:47,040.040 INFO    ] 200
[2026-08-25 00:02:47,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:47,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:02:47,104.104 INFO    ] No update needed
[2026-08-25 00:02:47,108.108 INFO    ] Checking for camera pi updates...
[2026-08-25 00:02:47,145.145 INFO    ] 200
[2026-08-25 00:02:47,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:47,190.190 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:02:47,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:02:47,247.247 INFO    ] No camera update needed
[2026-08-25 00:02:47,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:02:47,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:02:47,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:02:47,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:02:49,304.304 INFO    ] ================================================
[2026-08-25 00:02:49,319.319 INFO    ] Launching Daemon at Tue Aug 25 00:02:49 IST 2026
[2026-08-25 00:02:49,330.330 INFO    ] ================================================
[2026-08-25 00:02:49,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:02:49
[2026-08-25 00:02:50,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:02:50,792.792 INFO    ] Initializing speech engine...
[2026-08-25 00:02:50,799.799 INFO    ] 2026-08-25 00:02:50
[2026-08-25 00:02:51,046.046 INFO    ] 2026-08-25 00:02:51
[2026-08-25 00:02:51,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:02:51,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:02:51,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:02:51,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:02:51,527.527 INFO    ] time= 25/08/2026 00:02:51
[2026-08-25 00:02:51,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:02:51,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:02:51,741.741 INFO    ] No existing commands found in stream
[2026-08-25 00:02:56,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:02:56,766.766 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 00:02:57,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:02:57,643.643 INFO    ] Checking for system updates...
[2026-08-25 00:02:57,679.679 INFO    ] 200
[2026-08-25 00:02:57,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:57,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:02:57,735.735 INFO    ] No update needed
[2026-08-25 00:02:57,738.738 INFO    ] Checking for camera pi updates...
[2026-08-25 00:02:57,771.771 INFO    ] 200
[2026-08-25 00:02:57,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:02:57,813.813 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:02:57,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:02:57,970.970 INFO    ] No camera update needed
[2026-08-25 00:02:57,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:02:57,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:02:57,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:02:57,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:03:00,027.027 INFO    ] ================================================
[2026-08-25 00:03:00,042.042 INFO    ] Launching Daemon at Tue Aug 25 00:03:00 IST 2026
[2026-08-25 00:03:00,054.054 INFO    ] ================================================
[2026-08-25 00:03:00,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:03:00
[2026-08-25 00:03:01,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:03:01,485.485 INFO    ] Initializing speech engine...
[2026-08-25 00:03:01,494.494 INFO    ] 2026-08-25 00:03:01
[2026-08-25 00:03:01,791.791 INFO    ] 2026-08-25 00:03:01
[2026-08-25 00:03:01,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:03:02,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:03:02,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:03:02,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:03:02,258.258 INFO    ] time= 25/08/2026 00:03:02
[2026-08-25 00:03:02,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:03:02,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:03:02,392.392 INFO    ] No existing commands found in stream
[2026-08-25 00:03:07,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:03:07,414.414 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 00:03:08,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:03:08,774.774 INFO    ] Checking for system updates...
[2026-08-25 00:03:08,814.814 INFO    ] 200
[2026-08-25 00:03:08,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:08,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:03:08,874.874 INFO    ] No update needed
[2026-08-25 00:03:08,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 00:03:08,910.910 INFO    ] 200
[2026-08-25 00:03:08,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:08,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:03:09,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:03:09,007.007 INFO    ] No camera update needed
[2026-08-25 00:03:09,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:03:09,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:03:09,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:03:09,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:03:11,060.060 INFO    ] ================================================
[2026-08-25 00:03:11,081.081 INFO    ] Launching Daemon at Tue Aug 25 00:03:11 IST 2026
[2026-08-25 00:03:11,092.092 INFO    ] ================================================
[2026-08-25 00:03:11,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:03:11
[2026-08-25 00:03:12,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:03:12,489.489 INFO    ] Initializing speech engine...
[2026-08-25 00:03:12,494.494 INFO    ] 2026-08-25 00:03:12
[2026-08-25 00:03:12,791.791 INFO    ] 2026-08-25 00:03:12
[2026-08-25 00:03:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:03:13,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:03:13,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:03:13,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:03:13,201.201 INFO    ] time= 25/08/2026 00:03:13
[2026-08-25 00:03:13,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:03:13,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:03:13,367.367 INFO    ] No existing commands found in stream
[2026-08-25 00:03:18,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:03:18,400.400 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 00:03:19,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:03:19,986.986 INFO    ] Checking for system updates...
[2026-08-25 00:03:20,022.022 INFO    ] 200
[2026-08-25 00:03:20,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:20,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:20,080.080 INFO    ] No update needed
[2026-08-25 00:03:20,083.083 INFO    ] Checking for camera pi updates...
[2026-08-25 00:03:20,117.117 INFO    ] 200
[2026-08-25 00:03:20,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:20,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:03:20,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:20,215.215 INFO    ] No camera update needed
[2026-08-25 00:03:20,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:03:20,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:03:20,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:03:20,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:03:22,270.270 INFO    ] ================================================
[2026-08-25 00:03:22,286.286 INFO    ] Launching Daemon at Tue Aug 25 00:03:22 IST 2026
[2026-08-25 00:03:22,296.296 INFO    ] ================================================
[2026-08-25 00:03:22,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:03:22
[2026-08-25 00:03:23,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:03:23,876.876 INFO    ] Initializing speech engine...
[2026-08-25 00:03:23,890.890 INFO    ] 2026-08-25 00:03:23
[2026-08-25 00:03:24,153.153 INFO    ] 2026-08-25 00:03:24
[2026-08-25 00:03:24,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:03:24,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:03:24,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:03:24,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:03:24,631.631 INFO    ] time= 25/08/2026 00:03:24
[2026-08-25 00:03:24,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:03:24,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:03:24,850.850 INFO    ] No existing commands found in stream
[2026-08-25 00:03:29,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:03:29,867.867 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 00:03:32,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:03:32,033.033 INFO    ] Checking for system updates...
[2026-08-25 00:03:32,075.075 INFO    ] 200
[2026-08-25 00:03:32,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:32,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:32,137.137 INFO    ] No update needed
[2026-08-25 00:03:32,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 00:03:32,175.175 INFO    ] 200
[2026-08-25 00:03:32,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:32,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:03:32,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:32,279.279 INFO    ] No camera update needed
[2026-08-25 00:03:32,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:03:32,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:03:32,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:03:32,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:03:34,338.338 INFO    ] ================================================
[2026-08-25 00:03:34,353.353 INFO    ] Launching Daemon at Tue Aug 25 00:03:34 IST 2026
[2026-08-25 00:03:34,364.364 INFO    ] ================================================
[2026-08-25 00:03:34,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:03:34
[2026-08-25 00:03:35,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:03:35,876.876 INFO    ] Initializing speech engine...
[2026-08-25 00:03:35,890.890 INFO    ] 2026-08-25 00:03:35
[2026-08-25 00:03:36,139.139 INFO    ] 2026-08-25 00:03:36
[2026-08-25 00:03:36,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:03:36,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:03:36,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:03:36,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:03:36,625.625 INFO    ] time= 25/08/2026 00:03:36
[2026-08-25 00:03:36,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:03:36,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:03:36,856.856 INFO    ] No existing commands found in stream
[2026-08-25 00:03:41,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:03:41,874.874 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 00:03:45,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:03:45,135.135 INFO    ] Checking for system updates...
[2026-08-25 00:03:45,171.171 INFO    ] 200
[2026-08-25 00:03:45,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:45,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:45,232.232 INFO    ] No update needed
[2026-08-25 00:03:45,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 00:03:45,269.269 INFO    ] 200
[2026-08-25 00:03:45,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:45,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:03:45,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:45,361.361 INFO    ] No camera update needed
[2026-08-25 00:03:45,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:03:45,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:03:45,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:03:45,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:03:47,418.418 INFO    ] ================================================
[2026-08-25 00:03:47,433.433 INFO    ] Launching Daemon at Tue Aug 25 00:03:47 IST 2026
[2026-08-25 00:03:47,443.443 INFO    ] ================================================
[2026-08-25 00:03:48,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:03:48
[2026-08-25 00:03:48,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:03:48,949.949 INFO    ] Initializing speech engine...
[2026-08-25 00:03:48,955.955 INFO    ] 2026-08-25 00:03:48
[2026-08-25 00:03:49,217.217 INFO    ] 2026-08-25 00:03:49
[2026-08-25 00:03:49,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:03:49,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:03:49,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:03:49,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:03:49,750.750 INFO    ] time= 25/08/2026 00:03:49
[2026-08-25 00:03:49,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:03:49,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:03:49,903.903 INFO    ] No existing commands found in stream
[2026-08-25 00:03:54,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:03:54,928.928 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 00:03:57,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:03:57,066.066 INFO    ] Checking for system updates...
[2026-08-25 00:03:57,103.103 INFO    ] 200
[2026-08-25 00:03:57,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:57,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:57,160.160 INFO    ] No update needed
[2026-08-25 00:03:57,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 00:03:57,195.195 INFO    ] 200
[2026-08-25 00:03:57,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:03:57,238.238 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:03:57,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:03:57,287.287 INFO    ] No camera update needed
[2026-08-25 00:03:57,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:03:57,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:03:57,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:03:57,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:03:59,341.341 INFO    ] ================================================
[2026-08-25 00:03:59,357.357 INFO    ] Launching Daemon at Tue Aug 25 00:03:59 IST 2026
[2026-08-25 00:03:59,367.367 INFO    ] ================================================
[2026-08-25 00:03:59,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:03:59
[2026-08-25 00:04:00,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:04:00,824.824 INFO    ] Initializing speech engine...
[2026-08-25 00:04:00,833.833 INFO    ] 2026-08-25 00:04:00
[2026-08-25 00:04:01,081.081 INFO    ] 2026-08-25 00:04:01
[2026-08-25 00:04:01,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:04:01,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:04:01,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:04:01,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:04:01,582.582 INFO    ] time= 25/08/2026 00:04:01
[2026-08-25 00:04:01,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:04:01,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:04:01,779.779 INFO    ] No existing commands found in stream
[2026-08-25 00:04:06,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:04:06,801.801 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 00:04:09,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:04:09,765.765 INFO    ] Checking for system updates...
[2026-08-25 00:04:09,800.800 INFO    ] 200
[2026-08-25 00:04:09,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:09,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:04:09,868.868 INFO    ] No update needed
[2026-08-25 00:04:09,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 00:04:09,904.904 INFO    ] 200
[2026-08-25 00:04:09,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:09,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:04:09,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:04:09,999.999 INFO    ] No camera update needed
[2026-08-25 00:04:10,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:04:10,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:04:10,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:04:10,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:04:12,059.059 INFO    ] ================================================
[2026-08-25 00:04:12,075.075 INFO    ] Launching Daemon at Tue Aug 25 00:04:12 IST 2026
[2026-08-25 00:04:12,085.085 INFO    ] ================================================
[2026-08-25 00:04:12,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:04:12
[2026-08-25 00:04:13,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:04:13,658.658 INFO    ] Initializing speech engine...
[2026-08-25 00:04:13,678.678 INFO    ] 2026-08-25 00:04:13
[2026-08-25 00:04:13,942.942 INFO    ] 2026-08-25 00:04:13
[2026-08-25 00:04:13,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:04:14,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:04:14,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:04:14,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:04:14,359.359 INFO    ] time= 25/08/2026 00:04:14
[2026-08-25 00:04:14,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:04:14,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:04:14,447.447 INFO    ] No existing commands found in stream
[2026-08-25 00:04:19,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:04:19,480.480 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 00:04:20,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:04:20,580.580 INFO    ] Checking for system updates...
[2026-08-25 00:04:20,615.615 INFO    ] 200
[2026-08-25 00:04:20,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:20,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:04:20,681.681 INFO    ] No update needed
[2026-08-25 00:04:20,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 00:04:20,717.717 INFO    ] 200
[2026-08-25 00:04:20,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:20,760.760 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:04:20,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:04:20,813.813 INFO    ] No camera update needed
[2026-08-25 00:04:20,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:04:20,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:04:20,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:04:20,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:04:22,872.872 INFO    ] ================================================
[2026-08-25 00:04:22,888.888 INFO    ] Launching Daemon at Tue Aug 25 00:04:22 IST 2026
[2026-08-25 00:04:22,899.899 INFO    ] ================================================
[2026-08-25 00:04:23,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:04:23
[2026-08-25 00:04:24,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:04:24,316.316 INFO    ] Initializing speech engine...
[2026-08-25 00:04:24,325.325 INFO    ] 2026-08-25 00:04:24
[2026-08-25 00:04:24,570.570 INFO    ] 2026-08-25 00:04:24
[2026-08-25 00:04:24,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:04:24,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:04:24,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:04:24,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:04:24,949.949 INFO    ] time= 25/08/2026 00:04:24
[2026-08-25 00:04:24,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:04:25,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:04:25,152.152 INFO    ] No existing commands found in stream
[2026-08-25 00:04:30,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:04:30,165.165 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 00:04:32,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:04:32,991.991 INFO    ] Checking for system updates...
[2026-08-25 00:04:33,041.041 INFO    ] 200
[2026-08-25 00:04:33,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:33,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:04:33,115.115 INFO    ] No update needed
[2026-08-25 00:04:33,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 00:04:33,166.166 INFO    ] 200
[2026-08-25 00:04:33,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:33,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:04:33,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:04:33,288.288 INFO    ] No camera update needed
[2026-08-25 00:04:33,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:04:33,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:04:33,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:04:33,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:04:35,348.348 INFO    ] ================================================
[2026-08-25 00:04:35,363.363 INFO    ] Launching Daemon at Tue Aug 25 00:04:35 IST 2026
[2026-08-25 00:04:35,376.376 INFO    ] ================================================
[2026-08-25 00:04:36,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:04:36
[2026-08-25 00:04:36,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:04:37,005.005 INFO    ] Initializing speech engine...
[2026-08-25 00:04:37,012.012 INFO    ] 2026-08-25 00:04:37
[2026-08-25 00:04:37,290.290 INFO    ] 2026-08-25 00:04:37
[2026-08-25 00:04:37,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:04:37,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:04:37,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:04:37,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:04:37,780.780 INFO    ] time= 25/08/2026 00:04:37
[2026-08-25 00:04:37,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:04:37,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:04:38,008.008 INFO    ] No existing commands found in stream
[2026-08-25 00:04:43,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:04:43,029.029 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 00:04:46,845.845 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:04:46,848.848 INFO    ] Checking for system updates...
[2026-08-25 00:04:46,889.889 INFO    ] 200
[2026-08-25 00:04:46,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:46,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:04:46,948.948 INFO    ] No update needed
[2026-08-25 00:04:46,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 00:04:46,984.984 INFO    ] 200
[2026-08-25 00:04:46,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:04:47,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:04:47,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:04:47,073.073 INFO    ] No camera update needed
[2026-08-25 00:04:47,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:04:47,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:04:47,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:04:47,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:04:49,128.128 INFO    ] ================================================
[2026-08-25 00:04:49,143.143 INFO    ] Launching Daemon at Tue Aug 25 00:04:49 IST 2026
[2026-08-25 00:04:49,155.155 INFO    ] ================================================
[2026-08-25 00:04:49,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:04:49
[2026-08-25 00:04:50,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:04:50,833.833 INFO    ] Initializing speech engine...
[2026-08-25 00:04:50,841.841 INFO    ] 2026-08-25 00:04:50
[2026-08-25 00:04:51,130.130 INFO    ] 2026-08-25 00:04:51
[2026-08-25 00:04:51,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:04:51,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:04:51,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:04:51,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:04:51,602.602 INFO    ] time= 25/08/2026 00:04:51
[2026-08-25 00:04:51,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:04:51,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:04:51,800.800 INFO    ] No existing commands found in stream
[2026-08-25 00:04:56,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:04:56,847.847 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 00:05:00,266.266 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:05:00,268.268 INFO    ] Checking for system updates...
[2026-08-25 00:05:00,303.303 INFO    ] 200
[2026-08-25 00:05:00,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:00,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:00,367.367 INFO    ] No update needed
[2026-08-25 00:05:00,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 00:05:00,402.402 INFO    ] 200
[2026-08-25 00:05:00,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:00,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:05:00,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:00,602.602 INFO    ] No camera update needed
[2026-08-25 00:05:00,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:05:00,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:05:00,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:05:00,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:05:02,659.659 INFO    ] ================================================
[2026-08-25 00:05:02,680.680 INFO    ] Launching Daemon at Tue Aug 25 00:05:02 IST 2026
[2026-08-25 00:05:02,696.696 INFO    ] ================================================
[2026-08-25 00:05:03,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:05:03
[2026-08-25 00:05:03,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:05:04,264.264 INFO    ] Initializing speech engine...
[2026-08-25 00:05:04,289.289 INFO    ] 2026-08-25 00:05:04
[2026-08-25 00:05:04,561.561 INFO    ] 2026-08-25 00:05:04
[2026-08-25 00:05:04,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:05:04,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:05:04,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:05:04,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:05:04,973.973 INFO    ] time= 25/08/2026 00:05:04
[2026-08-25 00:05:04,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:05:04,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:05:05,062.062 INFO    ] No existing commands found in stream
[2026-08-25 00:05:10,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:05:10,096.096 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 00:05:14,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:05:14,394.394 INFO    ] Checking for system updates...
[2026-08-25 00:05:14,432.432 INFO    ] 200
[2026-08-25 00:05:14,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:14,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:05:14,489.489 INFO    ] No update needed
[2026-08-25 00:05:14,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 00:05:14,525.525 INFO    ] 200
[2026-08-25 00:05:14,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:14,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:05:14,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:05:14,614.614 INFO    ] No camera update needed
[2026-08-25 00:05:14,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:05:14,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:05:14,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:05:14,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:05:16,670.670 INFO    ] ================================================
[2026-08-25 00:05:16,685.685 INFO    ] Launching Daemon at Tue Aug 25 00:05:16 IST 2026
[2026-08-25 00:05:16,695.695 INFO    ] ================================================
[2026-08-25 00:05:17,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:05:17
[2026-08-25 00:05:17,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:05:18,145.145 INFO    ] Initializing speech engine...
[2026-08-25 00:05:18,153.153 INFO    ] 2026-08-25 00:05:18
[2026-08-25 00:05:18,412.412 INFO    ] 2026-08-25 00:05:18
[2026-08-25 00:05:18,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:05:18,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:05:18,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:05:18,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:05:18,954.954 INFO    ] time= 25/08/2026 00:05:18
[2026-08-25 00:05:18,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:05:18,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:05:19,106.106 INFO    ] No existing commands found in stream
[2026-08-25 00:05:24,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:05:24,128.128 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 00:05:25,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:05:25,246.246 INFO    ] Checking for system updates...
[2026-08-25 00:05:25,285.285 INFO    ] 200
[2026-08-25 00:05:25,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:25,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:25,343.343 INFO    ] No update needed
[2026-08-25 00:05:25,346.346 INFO    ] Checking for camera pi updates...
[2026-08-25 00:05:25,382.382 INFO    ] 200
[2026-08-25 00:05:25,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:25,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:05:25,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:25,489.489 INFO    ] No camera update needed
[2026-08-25 00:05:25,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:05:25,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:05:25,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:05:25,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:05:27,548.548 INFO    ] ================================================
[2026-08-25 00:05:27,563.563 INFO    ] Launching Daemon at Tue Aug 25 00:05:27 IST 2026
[2026-08-25 00:05:27,574.574 INFO    ] ================================================
[2026-08-25 00:05:28,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:05:28
[2026-08-25 00:05:28,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:05:29,025.025 INFO    ] Initializing speech engine...
[2026-08-25 00:05:29,033.033 INFO    ] 2026-08-25 00:05:29
[2026-08-25 00:05:29,292.292 INFO    ] 2026-08-25 00:05:29
[2026-08-25 00:05:29,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:05:29,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:05:29,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:05:29,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:05:29,751.751 INFO    ] time= 25/08/2026 00:05:29
[2026-08-25 00:05:29,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:05:29,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:05:29,973.973 INFO    ] No existing commands found in stream
[2026-08-25 00:05:34,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:05:34,999.999 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 00:05:38,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:05:38,036.036 INFO    ] Checking for system updates...
[2026-08-25 00:05:38,072.072 INFO    ] 200
[2026-08-25 00:05:38,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:38,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:38,128.128 INFO    ] No update needed
[2026-08-25 00:05:38,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 00:05:38,167.167 INFO    ] 200
[2026-08-25 00:05:38,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:38,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:05:38,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:38,280.280 INFO    ] No camera update needed
[2026-08-25 00:05:38,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:05:38,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:05:38,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:05:38,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:05:40,335.335 INFO    ] ================================================
[2026-08-25 00:05:40,350.350 INFO    ] Launching Daemon at Tue Aug 25 00:05:40 IST 2026
[2026-08-25 00:05:40,361.361 INFO    ] ================================================
[2026-08-25 00:05:41,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:05:40
[2026-08-25 00:05:41,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:05:41,956.956 INFO    ] Initializing speech engine...
[2026-08-25 00:05:41,971.971 INFO    ] 2026-08-25 00:05:41
[2026-08-25 00:05:42,251.251 INFO    ] 2026-08-25 00:05:42
[2026-08-25 00:05:42,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:05:42,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:05:42,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:05:42,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:05:42,701.701 INFO    ] time= 25/08/2026 00:05:42
[2026-08-25 00:05:42,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:05:42,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:05:42,935.935 INFO    ] No existing commands found in stream
[2026-08-25 00:05:47,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:05:47,954.954 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 00:05:53,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:05:53,624.624 INFO    ] Checking for system updates...
[2026-08-25 00:05:53,661.661 INFO    ] 200
[2026-08-25 00:05:53,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:53,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:53,725.725 INFO    ] No update needed
[2026-08-25 00:05:53,728.728 INFO    ] Checking for camera pi updates...
[2026-08-25 00:05:53,766.766 INFO    ] 200
[2026-08-25 00:05:53,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:05:53,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:05:53,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:05:53,868.868 INFO    ] No camera update needed
[2026-08-25 00:05:53,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:05:53,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:05:53,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:05:53,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:05:55,925.925 INFO    ] ================================================
[2026-08-25 00:05:55,940.940 INFO    ] Launching Daemon at Tue Aug 25 00:05:55 IST 2026
[2026-08-25 00:05:55,951.951 INFO    ] ================================================
[2026-08-25 00:05:56,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:05:56
[2026-08-25 00:05:57,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:05:57,544.544 INFO    ] Initializing speech engine...
[2026-08-25 00:05:57,552.552 INFO    ] 2026-08-25 00:05:57
[2026-08-25 00:05:57,820.820 INFO    ] 2026-08-25 00:05:57
[2026-08-25 00:05:57,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:05:58,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:05:58,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:05:58,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:05:58,311.311 INFO    ] time= 25/08/2026 00:05:58
[2026-08-25 00:05:58,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:05:58,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:05:58,541.541 INFO    ] No existing commands found in stream
[2026-08-25 00:06:03,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:06:03,558.558 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 00:06:04,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:06:04,264.264 INFO    ] Checking for system updates...
[2026-08-25 00:06:04,299.299 INFO    ] 200
[2026-08-25 00:06:04,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:04,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:06:04,357.357 INFO    ] No update needed
[2026-08-25 00:06:04,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 00:06:04,397.397 INFO    ] 200
[2026-08-25 00:06:04,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:04,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:06:04,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:06:04,496.496 INFO    ] No camera update needed
[2026-08-25 00:06:04,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:06:04,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:06:04,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:06:04,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:06:06,553.553 INFO    ] ================================================
[2026-08-25 00:06:06,568.568 INFO    ] Launching Daemon at Tue Aug 25 00:06:06 IST 2026
[2026-08-25 00:06:06,578.578 INFO    ] ================================================
[2026-08-25 00:06:07,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:06:07
[2026-08-25 00:06:07,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:06:07,984.984 INFO    ] Initializing speech engine...
[2026-08-25 00:06:07,997.997 INFO    ] 2026-08-25 00:06:07
[2026-08-25 00:06:08,274.274 INFO    ] 2026-08-25 00:06:08
[2026-08-25 00:06:08,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:06:08,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:06:08,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:06:08,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:06:08,641.641 INFO    ] time= 25/08/2026 00:06:08
[2026-08-25 00:06:08,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:06:08,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:06:08,764.764 INFO    ] No existing commands found in stream
[2026-08-25 00:06:13,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:06:13,779.779 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 00:06:17,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:06:17,873.873 INFO    ] Checking for system updates...
[2026-08-25 00:06:17,909.909 INFO    ] 200
[2026-08-25 00:06:17,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:17,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:06:17,970.970 INFO    ] No update needed
[2026-08-25 00:06:17,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 00:06:18,009.009 INFO    ] 200
[2026-08-25 00:06:18,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:18,051.051 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:06:18,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:06:18,098.098 INFO    ] No camera update needed
[2026-08-25 00:06:18,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:06:18,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:06:18,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:06:18,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:06:20,153.153 INFO    ] ================================================
[2026-08-25 00:06:20,169.169 INFO    ] Launching Daemon at Tue Aug 25 00:06:20 IST 2026
[2026-08-25 00:06:20,179.179 INFO    ] ================================================
[2026-08-25 00:06:20,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:06:20
[2026-08-25 00:06:21,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:06:21,606.606 INFO    ] Initializing speech engine...
[2026-08-25 00:06:21,616.616 INFO    ] 2026-08-25 00:06:21
[2026-08-25 00:06:21,861.861 INFO    ] 2026-08-25 00:06:21
[2026-08-25 00:06:21,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:06:22,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:06:22,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:06:22,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:06:22,371.371 INFO    ] time= 25/08/2026 00:06:22
[2026-08-25 00:06:22,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:06:22,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:06:22,568.568 INFO    ] No existing commands found in stream
[2026-08-25 00:06:27,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:06:27,599.599 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 00:06:29,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:06:29,162.162 INFO    ] Checking for system updates...
[2026-08-25 00:06:29,197.197 INFO    ] 200
[2026-08-25 00:06:29,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:29,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:06:29,259.259 INFO    ] No update needed
[2026-08-25 00:06:29,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 00:06:29,295.295 INFO    ] 200
[2026-08-25 00:06:29,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:29,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:06:29,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:06:29,392.392 INFO    ] No camera update needed
[2026-08-25 00:06:29,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:06:29,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:06:29,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:06:29,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:06:31,450.450 INFO    ] ================================================
[2026-08-25 00:06:31,466.466 INFO    ] Launching Daemon at Tue Aug 25 00:06:31 IST 2026
[2026-08-25 00:06:31,477.477 INFO    ] ================================================
[2026-08-25 00:06:32,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:06:32
[2026-08-25 00:06:32,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:06:32,936.936 INFO    ] Initializing speech engine...
[2026-08-25 00:06:32,945.945 INFO    ] 2026-08-25 00:06:32
[2026-08-25 00:06:33,233.233 INFO    ] 2026-08-25 00:06:33
[2026-08-25 00:06:33,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:06:33,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:06:33,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:06:33,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:06:33,642.642 INFO    ] time= 25/08/2026 00:06:33
[2026-08-25 00:06:33,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:06:33,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:06:33,830.830 INFO    ] No existing commands found in stream
[2026-08-25 00:06:38,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:06:38,858.858 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 00:06:41,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:06:41,773.773 INFO    ] Checking for system updates...
[2026-08-25 00:06:41,809.809 INFO    ] 200
[2026-08-25 00:06:41,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:41,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:06:41,865.865 INFO    ] No update needed
[2026-08-25 00:06:41,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 00:06:41,901.901 INFO    ] 200
[2026-08-25 00:06:41,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:41,943.943 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:06:41,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:06:42,000.000 INFO    ] No camera update needed
[2026-08-25 00:06:42,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:06:42,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:06:42,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:06:42,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:06:44,055.055 INFO    ] ================================================
[2026-08-25 00:06:44,071.071 INFO    ] Launching Daemon at Tue Aug 25 00:06:44 IST 2026
[2026-08-25 00:06:44,082.082 INFO    ] ================================================
[2026-08-25 00:06:44,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:06:44
[2026-08-25 00:06:45,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:06:45,495.495 INFO    ] Initializing speech engine...
[2026-08-25 00:06:45,513.513 INFO    ] 2026-08-25 00:06:45
[2026-08-25 00:06:45,764.764 INFO    ] 2026-08-25 00:06:45
[2026-08-25 00:06:45,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:06:46,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:06:46,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:06:46,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:06:46,242.242 INFO    ] time= 25/08/2026 00:06:46
[2026-08-25 00:06:46,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:06:46,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:06:46,456.456 INFO    ] No existing commands found in stream
[2026-08-25 00:06:51,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:06:51,484.484 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 00:06:54,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:06:54,933.933 INFO    ] Checking for system updates...
[2026-08-25 00:06:54,969.969 INFO    ] 200
[2026-08-25 00:06:54,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:55,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:06:55,032.032 INFO    ] No update needed
[2026-08-25 00:06:55,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 00:06:55,071.071 INFO    ] 200
[2026-08-25 00:06:55,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:06:55,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:06:55,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:06:55,165.165 INFO    ] No camera update needed
[2026-08-25 00:06:55,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:06:55,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:06:55,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:06:55,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:06:57,220.220 INFO    ] ================================================
[2026-08-25 00:06:57,236.236 INFO    ] Launching Daemon at Tue Aug 25 00:06:57 IST 2026
[2026-08-25 00:06:57,247.247 INFO    ] ================================================
[2026-08-25 00:06:57,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:06:57
[2026-08-25 00:06:58,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:06:58,818.818 INFO    ] Initializing speech engine...
[2026-08-25 00:06:58,829.829 INFO    ] 2026-08-25 00:06:58
[2026-08-25 00:06:59,099.099 INFO    ] 2026-08-25 00:06:59
[2026-08-25 00:06:59,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:06:59,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:06:59,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:06:59,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:06:59,618.618 INFO    ] time= 25/08/2026 00:06:59
[2026-08-25 00:06:59,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:06:59,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:06:59,805.805 INFO    ] No existing commands found in stream
[2026-08-25 00:07:04,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:07:04,827.827 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 00:07:05,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:07:05,350.350 INFO    ] Checking for system updates...
[2026-08-25 00:07:05,391.391 INFO    ] 200
[2026-08-25 00:07:05,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:05,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:07:05,451.451 INFO    ] No update needed
[2026-08-25 00:07:05,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 00:07:05,492.492 INFO    ] 200
[2026-08-25 00:07:05,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:05,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:07:05,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:07:05,602.602 INFO    ] No camera update needed
[2026-08-25 00:07:05,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:07:05,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:07:05,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:07:05,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:07:07,664.664 INFO    ] ================================================
[2026-08-25 00:07:07,682.682 INFO    ] Launching Daemon at Tue Aug 25 00:07:07 IST 2026
[2026-08-25 00:07:07,693.693 INFO    ] ================================================
[2026-08-25 00:07:08,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:07:08
[2026-08-25 00:07:09,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:07:09,348.348 INFO    ] Initializing speech engine...
[2026-08-25 00:07:09,356.356 INFO    ] 2026-08-25 00:07:09
[2026-08-25 00:07:09,637.637 INFO    ] 2026-08-25 00:07:09
[2026-08-25 00:07:09,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:07:09,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:07:09,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:07:10,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:07:10,168.168 INFO    ] time= 25/08/2026 00:07:10
[2026-08-25 00:07:10,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:07:10,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:07:10,327.327 INFO    ] No existing commands found in stream
[2026-08-25 00:07:15,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:07:15,347.347 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 00:07:17,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:07:17,609.609 INFO    ] Checking for system updates...
[2026-08-25 00:07:17,647.647 INFO    ] 200
[2026-08-25 00:07:17,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:17,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:07:17,715.715 INFO    ] No update needed
[2026-08-25 00:07:17,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 00:07:17,753.753 INFO    ] 200
[2026-08-25 00:07:17,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:17,797.797 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:07:17,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:07:17,850.850 INFO    ] No camera update needed
[2026-08-25 00:07:17,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:07:17,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:07:17,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:07:17,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:07:19,909.909 INFO    ] ================================================
[2026-08-25 00:07:19,925.925 INFO    ] Launching Daemon at Tue Aug 25 00:07:19 IST 2026
[2026-08-25 00:07:19,936.936 INFO    ] ================================================
[2026-08-25 00:07:20,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:07:20
[2026-08-25 00:07:21,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:07:21,618.618 INFO    ] Initializing speech engine...
[2026-08-25 00:07:21,631.631 INFO    ] 2026-08-25 00:07:21
[2026-08-25 00:07:21,949.949 INFO    ] 2026-08-25 00:07:21
[2026-08-25 00:07:22,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:07:22,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:07:22,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:07:22,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:07:22,455.455 INFO    ] time= 25/08/2026 00:07:22
[2026-08-25 00:07:22,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:07:22,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:07:22,635.635 INFO    ] No existing commands found in stream
[2026-08-25 00:07:27,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:07:27,665.665 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 00:07:29,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:07:29,166.166 INFO    ] Checking for system updates...
[2026-08-25 00:07:29,204.204 INFO    ] 200
[2026-08-25 00:07:29,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:29,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:07:29,272.272 INFO    ] No update needed
[2026-08-25 00:07:29,274.274 INFO    ] Checking for camera pi updates...
[2026-08-25 00:07:29,313.313 INFO    ] 200
[2026-08-25 00:07:29,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:29,364.364 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:07:29,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:07:29,415.415 INFO    ] No camera update needed
[2026-08-25 00:07:29,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:07:29,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:07:29,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:07:29,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:07:31,477.477 INFO    ] ================================================
[2026-08-25 00:07:31,494.494 INFO    ] Launching Daemon at Tue Aug 25 00:07:31 IST 2026
[2026-08-25 00:07:31,506.506 INFO    ] ================================================
[2026-08-25 00:07:32,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:07:32
[2026-08-25 00:07:32,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:07:33,116.116 INFO    ] Initializing speech engine...
[2026-08-25 00:07:33,128.128 INFO    ] 2026-08-25 00:07:33
[2026-08-25 00:07:33,410.410 INFO    ] 2026-08-25 00:07:33
[2026-08-25 00:07:33,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:07:33,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:07:33,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:07:33,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:07:33,896.896 INFO    ] time= 25/08/2026 00:07:33
[2026-08-25 00:07:33,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:07:33,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:07:34,098.098 INFO    ] No existing commands found in stream
[2026-08-25 00:07:39,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:07:39,129.129 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 00:07:40,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:07:40,374.374 INFO    ] Checking for system updates...
[2026-08-25 00:07:40,411.411 INFO    ] 200
[2026-08-25 00:07:40,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:40,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:07:40,470.470 INFO    ] No update needed
[2026-08-25 00:07:40,473.473 INFO    ] Checking for camera pi updates...
[2026-08-25 00:07:40,507.507 INFO    ] 200
[2026-08-25 00:07:40,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:40,552.552 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:07:40,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:07:40,620.620 INFO    ] No camera update needed
[2026-08-25 00:07:40,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:07:40,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:07:40,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:07:40,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:07:42,678.678 INFO    ] ================================================
[2026-08-25 00:07:42,694.694 INFO    ] Launching Daemon at Tue Aug 25 00:07:42 IST 2026
[2026-08-25 00:07:42,705.705 INFO    ] ================================================
[2026-08-25 00:07:43,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:07:43
[2026-08-25 00:07:43,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:07:44,136.136 INFO    ] Initializing speech engine...
[2026-08-25 00:07:44,145.145 INFO    ] 2026-08-25 00:07:44
[2026-08-25 00:07:44,393.393 INFO    ] 2026-08-25 00:07:44
[2026-08-25 00:07:44,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:07:44,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:07:44,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:07:44,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:07:44,861.861 INFO    ] time= 25/08/2026 00:07:44
[2026-08-25 00:07:44,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:07:44,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:07:45,075.075 INFO    ] No existing commands found in stream
[2026-08-25 00:07:50,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:07:50,108.108 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 00:07:53,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:07:53,380.380 INFO    ] Checking for system updates...
[2026-08-25 00:07:53,416.416 INFO    ] 200
[2026-08-25 00:07:53,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:53,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:07:53,473.473 INFO    ] No update needed
[2026-08-25 00:07:53,476.476 INFO    ] Checking for camera pi updates...
[2026-08-25 00:07:53,509.509 INFO    ] 200
[2026-08-25 00:07:53,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:07:53,552.552 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:07:53,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:07:53,608.608 INFO    ] No camera update needed
[2026-08-25 00:07:53,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:07:53,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:07:53,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:07:53,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:07:55,664.664 INFO    ] ================================================
[2026-08-25 00:07:55,680.680 INFO    ] Launching Daemon at Tue Aug 25 00:07:55 IST 2026
[2026-08-25 00:07:55,692.692 INFO    ] ================================================
[2026-08-25 00:07:56,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:07:56
[2026-08-25 00:07:56,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:07:57,087.087 INFO    ] Initializing speech engine...
[2026-08-25 00:07:57,109.109 INFO    ] 2026-08-25 00:07:57
[2026-08-25 00:07:57,362.362 INFO    ] 2026-08-25 00:07:57
[2026-08-25 00:07:57,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:07:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:07:57,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:07:57,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:07:57,855.855 INFO    ] time= 25/08/2026 00:07:57
[2026-08-25 00:07:57,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:07:57,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:07:58,053.053 INFO    ] No existing commands found in stream
[2026-08-25 00:08:03,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:08:03,080.080 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 00:08:05,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:08:05,771.771 INFO    ] Checking for system updates...
[2026-08-25 00:08:05,807.807 INFO    ] 200
[2026-08-25 00:08:05,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:05,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:05,865.865 INFO    ] No update needed
[2026-08-25 00:08:05,869.869 INFO    ] Checking for camera pi updates...
[2026-08-25 00:08:05,911.911 INFO    ] 200
[2026-08-25 00:08:05,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:05,964.964 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:08:06,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:06,018.018 INFO    ] No camera update needed
[2026-08-25 00:08:06,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:08:06,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:08:06,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:08:06,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:08:08,076.076 INFO    ] ================================================
[2026-08-25 00:08:08,092.092 INFO    ] Launching Daemon at Tue Aug 25 00:08:08 IST 2026
[2026-08-25 00:08:08,103.103 INFO    ] ================================================
[2026-08-25 00:08:08,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:08:08
[2026-08-25 00:08:09,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:08:09,520.520 INFO    ] Initializing speech engine...
[2026-08-25 00:08:09,531.531 INFO    ] 2026-08-25 00:08:09
[2026-08-25 00:08:09,775.775 INFO    ] 2026-08-25 00:08:09
[2026-08-25 00:08:09,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:08:10,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:08:10,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:08:10,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:08:10,219.219 INFO    ] time= 25/08/2026 00:08:10
[2026-08-25 00:08:10,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:08:10,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:08:10,460.460 INFO    ] No existing commands found in stream
[2026-08-25 00:08:15,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:08:15,490.490 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 00:08:19,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:08:19,011.011 INFO    ] Checking for system updates...
[2026-08-25 00:08:19,047.047 INFO    ] 200
[2026-08-25 00:08:19,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:19,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:19,105.105 INFO    ] No update needed
[2026-08-25 00:08:19,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 00:08:19,141.141 INFO    ] 200
[2026-08-25 00:08:19,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:19,184.184 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:08:19,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:19,232.232 INFO    ] No camera update needed
[2026-08-25 00:08:19,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:08:19,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:08:19,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:08:19,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:08:21,289.289 INFO    ] ================================================
[2026-08-25 00:08:21,305.305 INFO    ] Launching Daemon at Tue Aug 25 00:08:21 IST 2026
[2026-08-25 00:08:21,316.316 INFO    ] ================================================
[2026-08-25 00:08:21,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:08:21
[2026-08-25 00:08:22,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:08:22,948.948 INFO    ] Initializing speech engine...
[2026-08-25 00:08:22,956.956 INFO    ] 2026-08-25 00:08:22
[2026-08-25 00:08:23,202.202 INFO    ] 2026-08-25 00:08:23
[2026-08-25 00:08:23,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:08:23,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:08:23,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:08:23,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:08:23,700.700 INFO    ] time= 25/08/2026 00:08:23
[2026-08-25 00:08:23,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:08:23,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:08:23,900.900 INFO    ] No existing commands found in stream
[2026-08-25 00:08:28,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:08:28,938.938 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 00:08:30,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:08:30,581.581 INFO    ] Checking for system updates...
[2026-08-25 00:08:30,617.617 INFO    ] 200
[2026-08-25 00:08:30,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:30,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:08:30,674.674 INFO    ] No update needed
[2026-08-25 00:08:30,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 00:08:30,709.709 INFO    ] 200
[2026-08-25 00:08:30,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:30,752.752 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:08:30,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:08:30,810.810 INFO    ] No camera update needed
[2026-08-25 00:08:30,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:08:30,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:08:30,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:08:30,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:08:32,865.865 INFO    ] ================================================
[2026-08-25 00:08:32,881.881 INFO    ] Launching Daemon at Tue Aug 25 00:08:32 IST 2026
[2026-08-25 00:08:32,893.893 INFO    ] ================================================
[2026-08-25 00:08:33,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:08:33
[2026-08-25 00:08:34,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:08:34,529.529 INFO    ] Initializing speech engine...
[2026-08-25 00:08:34,541.541 INFO    ] 2026-08-25 00:08:34
[2026-08-25 00:08:34,830.830 INFO    ] 2026-08-25 00:08:34
[2026-08-25 00:08:34,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:08:35,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:08:35,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:08:35,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:08:35,371.371 INFO    ] time= 25/08/2026 00:08:35
[2026-08-25 00:08:35,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:08:35,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:08:35,530.530 INFO    ] No existing commands found in stream
[2026-08-25 00:08:40,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:08:40,546.546 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 00:08:43,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:08:43,343.343 INFO    ] Checking for system updates...
[2026-08-25 00:08:43,380.380 INFO    ] 200
[2026-08-25 00:08:43,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:43,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:43,444.444 INFO    ] No update needed
[2026-08-25 00:08:43,446.446 INFO    ] Checking for camera pi updates...
[2026-08-25 00:08:43,479.479 INFO    ] 200
[2026-08-25 00:08:43,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:43,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:08:43,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:43,567.567 INFO    ] No camera update needed
[2026-08-25 00:08:43,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:08:43,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:08:43,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:08:43,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:08:45,621.621 INFO    ] ================================================
[2026-08-25 00:08:45,637.637 INFO    ] Launching Daemon at Tue Aug 25 00:08:45 IST 2026
[2026-08-25 00:08:45,648.648 INFO    ] ================================================
[2026-08-25 00:08:46,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:08:46
[2026-08-25 00:08:46,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:08:47,050.050 INFO    ] Initializing speech engine...
[2026-08-25 00:08:47,057.057 INFO    ] 2026-08-25 00:08:47
[2026-08-25 00:08:47,331.331 INFO    ] 2026-08-25 00:08:47
[2026-08-25 00:08:47,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:08:47,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:08:47,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:08:47,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:08:47,789.789 INFO    ] time= 25/08/2026 00:08:47
[2026-08-25 00:08:47,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:08:47,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:08:48,046.046 INFO    ] No existing commands found in stream
[2026-08-25 00:08:53,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:08:53,065.065 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 00:08:56,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:08:56,634.634 INFO    ] Checking for system updates...
[2026-08-25 00:08:56,670.670 INFO    ] 200
[2026-08-25 00:08:56,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:56,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:56,729.729 INFO    ] No update needed
[2026-08-25 00:08:56,731.731 INFO    ] Checking for camera pi updates...
[2026-08-25 00:08:56,766.766 INFO    ] 200
[2026-08-25 00:08:56,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:08:56,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:08:56,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:08:56,857.857 INFO    ] No camera update needed
[2026-08-25 00:08:56,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:08:56,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:08:56,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:08:56,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:08:58,912.912 INFO    ] ================================================
[2026-08-25 00:08:58,927.927 INFO    ] Launching Daemon at Tue Aug 25 00:08:58 IST 2026
[2026-08-25 00:08:58,942.942 INFO    ] ================================================
[2026-08-25 00:08:59,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:08:59
[2026-08-25 00:09:00,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:09:00,373.373 INFO    ] Initializing speech engine...
[2026-08-25 00:09:00,382.382 INFO    ] 2026-08-25 00:09:00
[2026-08-25 00:09:00,632.632 INFO    ] 2026-08-25 00:09:00
[2026-08-25 00:09:00,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:09:00,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:09:00,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:09:01,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:09:01,010.010 INFO    ] time= 25/08/2026 00:09:01
[2026-08-25 00:09:01,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:09:01,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:09:01,206.206 INFO    ] No existing commands found in stream
[2026-08-25 00:09:06,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:09:06,225.225 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 00:09:10,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:09:10,273.273 INFO    ] Checking for system updates...
[2026-08-25 00:09:10,308.308 INFO    ] 200
[2026-08-25 00:09:10,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:10,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:10,364.364 INFO    ] No update needed
[2026-08-25 00:09:10,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 00:09:10,403.403 INFO    ] 200
[2026-08-25 00:09:10,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:10,446.446 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:09:10,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:10,598.598 INFO    ] No camera update needed
[2026-08-25 00:09:10,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:09:10,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:09:10,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:09:10,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:09:12,657.657 INFO    ] ================================================
[2026-08-25 00:09:12,672.672 INFO    ] Launching Daemon at Tue Aug 25 00:09:12 IST 2026
[2026-08-25 00:09:12,683.683 INFO    ] ================================================
[2026-08-25 00:09:13,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:09:13
[2026-08-25 00:09:13,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:09:14,078.078 INFO    ] Initializing speech engine...
[2026-08-25 00:09:14,087.087 INFO    ] 2026-08-25 00:09:14
[2026-08-25 00:09:14,378.378 INFO    ] 2026-08-25 00:09:14
[2026-08-25 00:09:14,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:09:14,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:09:14,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:09:14,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:09:14,728.728 INFO    ] time= 25/08/2026 00:09:14
[2026-08-25 00:09:14,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:09:14,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:09:14,871.871 INFO    ] No existing commands found in stream
[2026-08-25 00:09:19,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:09:19,891.891 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 00:09:23,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:09:23,603.603 INFO    ] Checking for system updates...
[2026-08-25 00:09:23,637.637 INFO    ] 200
[2026-08-25 00:09:23,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:23,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:23,694.694 INFO    ] No update needed
[2026-08-25 00:09:23,697.697 INFO    ] Checking for camera pi updates...
[2026-08-25 00:09:23,734.734 INFO    ] 200
[2026-08-25 00:09:23,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:23,781.781 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:09:23,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:23,826.826 INFO    ] No camera update needed
[2026-08-25 00:09:23,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:09:23,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:09:23,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:09:23,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:09:25,880.880 INFO    ] ================================================
[2026-08-25 00:09:25,896.896 INFO    ] Launching Daemon at Tue Aug 25 00:09:25 IST 2026
[2026-08-25 00:09:25,907.907 INFO    ] ================================================
[2026-08-25 00:09:26,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:09:26
[2026-08-25 00:09:27,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:09:27,420.420 INFO    ] Initializing speech engine...
[2026-08-25 00:09:27,443.443 INFO    ] 2026-08-25 00:09:27
[2026-08-25 00:09:27,697.697 INFO    ] 2026-08-25 00:09:27
[2026-08-25 00:09:27,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:09:27,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:09:27,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:09:28,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:09:28,088.088 INFO    ] time= 25/08/2026 00:09:28
[2026-08-25 00:09:28,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:09:28,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:09:28,196.196 INFO    ] No existing commands found in stream
[2026-08-25 00:09:33,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:09:33,230.230 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 00:09:34,749.749 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:09:34,751.751 INFO    ] Checking for system updates...
[2026-08-25 00:09:34,790.790 INFO    ] 200
[2026-08-25 00:09:34,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:34,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:34,849.849 INFO    ] No update needed
[2026-08-25 00:09:34,851.851 INFO    ] Checking for camera pi updates...
[2026-08-25 00:09:34,887.887 INFO    ] 200
[2026-08-25 00:09:34,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:34,932.932 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:09:34,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:34,980.980 INFO    ] No camera update needed
[2026-08-25 00:09:34,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:09:34,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:09:34,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:09:34,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:09:37,036.036 INFO    ] ================================================
[2026-08-25 00:09:37,051.051 INFO    ] Launching Daemon at Tue Aug 25 00:09:37 IST 2026
[2026-08-25 00:09:37,062.062 INFO    ] ================================================
[2026-08-25 00:09:37,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:09:37
[2026-08-25 00:09:38,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:09:38,468.468 INFO    ] Initializing speech engine...
[2026-08-25 00:09:38,474.474 INFO    ] 2026-08-25 00:09:38
[2026-08-25 00:09:38,769.769 INFO    ] 2026-08-25 00:09:38
[2026-08-25 00:09:38,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:09:39,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:09:39,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:09:39,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:09:39,186.186 INFO    ] time= 25/08/2026 00:09:39
[2026-08-25 00:09:39,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:09:39,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:09:39,271.271 INFO    ] No existing commands found in stream
[2026-08-25 00:09:44,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:09:44,292.292 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 00:09:45,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:09:45,942.942 INFO    ] Checking for system updates...
[2026-08-25 00:09:45,978.978 INFO    ] 200
[2026-08-25 00:09:45,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:46,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:09:46,034.034 INFO    ] No update needed
[2026-08-25 00:09:46,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 00:09:46,070.070 INFO    ] 200
[2026-08-25 00:09:46,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:46,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:09:46,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:09:46,165.165 INFO    ] No camera update needed
[2026-08-25 00:09:46,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:09:46,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:09:46,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:09:46,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:09:48,218.218 INFO    ] ================================================
[2026-08-25 00:09:48,234.234 INFO    ] Launching Daemon at Tue Aug 25 00:09:48 IST 2026
[2026-08-25 00:09:48,246.246 INFO    ] ================================================
[2026-08-25 00:09:48,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:09:48
[2026-08-25 00:09:49,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:09:49,692.692 INFO    ] Initializing speech engine...
[2026-08-25 00:09:49,698.698 INFO    ] 2026-08-25 00:09:49
[2026-08-25 00:09:50,001.001 INFO    ] 2026-08-25 00:09:49
[2026-08-25 00:09:50,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:09:50,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:09:50,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:09:50,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:09:50,391.391 INFO    ] time= 25/08/2026 00:09:50
[2026-08-25 00:09:50,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:09:50,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:09:50,520.520 INFO    ] No existing commands found in stream
[2026-08-25 00:09:55,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:09:55,559.559 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 00:09:59,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:09:59,723.723 INFO    ] Checking for system updates...
[2026-08-25 00:09:59,759.759 INFO    ] 200
[2026-08-25 00:09:59,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:59,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:59,816.816 INFO    ] No update needed
[2026-08-25 00:09:59,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 00:09:59,856.856 INFO    ] 200
[2026-08-25 00:09:59,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:09:59,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:09:59,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:09:59,958.958 INFO    ] No camera update needed
[2026-08-25 00:09:59,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:09:59,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:09:59,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:09:59,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:10:02,034.034 INFO    ] ================================================
[2026-08-25 00:10:02,084.084 INFO    ] Launching Daemon at Tue Aug 25 00:10:02 IST 2026
[2026-08-25 00:10:02,115.115 INFO    ] ================================================
[2026-08-25 00:10:02,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:10:02
[2026-08-25 00:10:03,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:10:03,965.965 INFO    ] Initializing speech engine...
[2026-08-25 00:10:03,969.969 INFO    ] 2026-08-25 00:10:03
[2026-08-25 00:10:04,294.294 INFO    ] 2026-08-25 00:10:04
[2026-08-25 00:10:04,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:10:04,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:10:04,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:10:04,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:10:04,808.808 INFO    ] time= 25/08/2026 00:10:04
[2026-08-25 00:10:04,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:10:04,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:10:05,019.019 INFO    ] No existing commands found in stream
[2026-08-25 00:10:10,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:10:10,048.048 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 00:10:10,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:10:10,668.668 INFO    ] Checking for system updates...
[2026-08-25 00:10:10,709.709 INFO    ] 200
[2026-08-25 00:10:10,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:10,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:10:10,768.768 INFO    ] No update needed
[2026-08-25 00:10:10,771.771 INFO    ] Checking for camera pi updates...
[2026-08-25 00:10:10,808.808 INFO    ] 200
[2026-08-25 00:10:10,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:10,856.856 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:10:10,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:10:10,905.905 INFO    ] No camera update needed
[2026-08-25 00:10:10,908.908 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:10:10,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:10:10,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:10:10,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:10:12,965.965 INFO    ] ================================================
[2026-08-25 00:10:12,981.981 INFO    ] Launching Daemon at Tue Aug 25 00:10:12 IST 2026
[2026-08-25 00:10:12,993.993 INFO    ] ================================================
[2026-08-25 00:10:13,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:10:13
[2026-08-25 00:10:14,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:10:14,452.452 INFO    ] Initializing speech engine...
[2026-08-25 00:10:14,460.460 INFO    ] 2026-08-25 00:10:14
[2026-08-25 00:10:14,732.732 INFO    ] 2026-08-25 00:10:14
[2026-08-25 00:10:14,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:10:15,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:10:15,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:10:15,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:10:15,202.202 INFO    ] time= 25/08/2026 00:10:15
[2026-08-25 00:10:15,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:10:15,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:10:15,417.417 INFO    ] No existing commands found in stream
[2026-08-25 00:10:20,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:10:20,439.439 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 00:10:21,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:10:21,603.603 INFO    ] Checking for system updates...
[2026-08-25 00:10:21,641.641 INFO    ] 200
[2026-08-25 00:10:21,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:21,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:10:21,697.697 INFO    ] No update needed
[2026-08-25 00:10:21,700.700 INFO    ] Checking for camera pi updates...
[2026-08-25 00:10:21,733.733 INFO    ] 200
[2026-08-25 00:10:21,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:21,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:10:21,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:10:21,837.837 INFO    ] No camera update needed
[2026-08-25 00:10:21,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:10:21,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:10:21,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:10:21,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:10:23,892.892 INFO    ] ================================================
[2026-08-25 00:10:23,907.907 INFO    ] Launching Daemon at Tue Aug 25 00:10:23 IST 2026
[2026-08-25 00:10:23,917.917 INFO    ] ================================================
[2026-08-25 00:10:24,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:10:24
[2026-08-25 00:10:25,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:10:25,373.373 INFO    ] Initializing speech engine...
[2026-08-25 00:10:25,382.382 INFO    ] 2026-08-25 00:10:25
[2026-08-25 00:10:25,630.630 INFO    ] 2026-08-25 00:10:25
[2026-08-25 00:10:25,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:10:25,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:10:25,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:10:26,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:10:26,129.129 INFO    ] time= 25/08/2026 00:10:26
[2026-08-25 00:10:26,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:10:26,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:10:26,337.337 INFO    ] No existing commands found in stream
[2026-08-25 00:10:31,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:10:31,353.353 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 00:10:34,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:10:34,712.712 INFO    ] Checking for system updates...
[2026-08-25 00:10:34,751.751 INFO    ] 200
[2026-08-25 00:10:34,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:34,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:10:34,809.809 INFO    ] No update needed
[2026-08-25 00:10:34,811.811 INFO    ] Checking for camera pi updates...
[2026-08-25 00:10:34,845.845 INFO    ] 200
[2026-08-25 00:10:34,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:34,892.892 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:10:34,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:10:34,942.942 INFO    ] No camera update needed
[2026-08-25 00:10:34,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:10:34,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:10:34,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:10:34,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:10:37,998.998 INFO    ] ================================================
[2026-08-25 00:10:37,014.014 INFO    ] Launching Daemon at Tue Aug 25 00:10:37 IST 2026
[2026-08-25 00:10:37,025.025 INFO    ] ================================================
[2026-08-25 00:10:37,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:10:37
[2026-08-25 00:10:38,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:10:38,629.629 INFO    ] Initializing speech engine...
[2026-08-25 00:10:38,637.637 INFO    ] 2026-08-25 00:10:38
[2026-08-25 00:10:38,911.911 INFO    ] 2026-08-25 00:10:38
[2026-08-25 00:10:38,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:10:39,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:10:39,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:10:39,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:10:39,405.405 INFO    ] time= 25/08/2026 00:10:39
[2026-08-25 00:10:39,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:10:39,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:10:39,612.612 INFO    ] No existing commands found in stream
[2026-08-25 00:10:44,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:10:44,635.635 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 00:10:48,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:10:48,633.633 INFO    ] Checking for system updates...
[2026-08-25 00:10:48,673.673 INFO    ] 200
[2026-08-25 00:10:48,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:48,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:10:48,730.730 INFO    ] No update needed
[2026-08-25 00:10:48,732.732 INFO    ] Checking for camera pi updates...
[2026-08-25 00:10:48,769.769 INFO    ] 200
[2026-08-25 00:10:48,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:10:48,811.811 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:10:48,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:10:48,863.863 INFO    ] No camera update needed
[2026-08-25 00:10:48,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:10:48,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:10:48,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:10:48,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:10:50,917.917 INFO    ] ================================================
[2026-08-25 00:10:50,933.933 INFO    ] Launching Daemon at Tue Aug 25 00:10:50 IST 2026
[2026-08-25 00:10:50,944.944 INFO    ] ================================================
[2026-08-25 00:10:51,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:10:51
[2026-08-25 00:10:52,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:10:52,462.462 INFO    ] Initializing speech engine...
[2026-08-25 00:10:52,470.470 INFO    ] 2026-08-25 00:10:52
[2026-08-25 00:10:52,783.783 INFO    ] 2026-08-25 00:10:52
[2026-08-25 00:10:52,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:10:53,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:10:53,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:10:53,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:10:53,206.206 INFO    ] time= 25/08/2026 00:10:53
[2026-08-25 00:10:53,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:10:53,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:10:53,426.426 INFO    ] No existing commands found in stream
[2026-08-25 00:10:58,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:10:58,453.453 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 00:11:01,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:11:01,365.365 INFO    ] Checking for system updates...
[2026-08-25 00:11:01,401.401 INFO    ] 200
[2026-08-25 00:11:01,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:01,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:01,467.467 INFO    ] No update needed
[2026-08-25 00:11:01,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 00:11:01,502.502 INFO    ] 200
[2026-08-25 00:11:01,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:01,555.555 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:11:01,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:01,611.611 INFO    ] No camera update needed
[2026-08-25 00:11:01,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:11:01,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:11:01,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:11:01,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:11:03,698.698 INFO    ] ================================================
[2026-08-25 00:11:03,714.714 INFO    ] Launching Daemon at Tue Aug 25 00:11:03 IST 2026
[2026-08-25 00:11:03,725.725 INFO    ] ================================================
[2026-08-25 00:11:04,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:11:04
[2026-08-25 00:11:04,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:11:05,172.172 INFO    ] Initializing speech engine...
[2026-08-25 00:11:05,196.196 INFO    ] 2026-08-25 00:11:05
[2026-08-25 00:11:05,462.462 INFO    ] 2026-08-25 00:11:05
[2026-08-25 00:11:05,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:11:05,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:11:05,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:11:05,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:11:05,845.845 INFO    ] time= 25/08/2026 00:11:05
[2026-08-25 00:11:05,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:11:05,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:11:05,955.955 INFO    ] No existing commands found in stream
[2026-08-25 00:11:10,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:11:10,970.970 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 00:11:12,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:11:12,443.443 INFO    ] Checking for system updates...
[2026-08-25 00:11:12,478.478 INFO    ] 200
[2026-08-25 00:11:12,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:12,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:11:12,540.540 INFO    ] No update needed
[2026-08-25 00:11:12,542.542 INFO    ] Checking for camera pi updates...
[2026-08-25 00:11:12,578.578 INFO    ] 200
[2026-08-25 00:11:12,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:12,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:11:12,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:11:12,779.779 INFO    ] No camera update needed
[2026-08-25 00:11:12,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:11:12,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:11:12,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:11:12,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:11:14,833.833 INFO    ] ================================================
[2026-08-25 00:11:14,849.849 INFO    ] Launching Daemon at Tue Aug 25 00:11:14 IST 2026
[2026-08-25 00:11:14,862.862 INFO    ] ================================================
[2026-08-25 00:11:15,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:11:15
[2026-08-25 00:11:16,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:11:16,258.258 INFO    ] Initializing speech engine...
[2026-08-25 00:11:16,267.267 INFO    ] 2026-08-25 00:11:16
[2026-08-25 00:11:16,552.552 INFO    ] 2026-08-25 00:11:16
[2026-08-25 00:11:16,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:11:16,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:11:16,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:11:16,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:11:16,960.960 INFO    ] time= 25/08/2026 00:11:16
[2026-08-25 00:11:16,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:11:16,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:11:17,081.081 INFO    ] No existing commands found in stream
[2026-08-25 00:11:22,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:11:22,109.109 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 00:11:22,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:11:22,551.551 INFO    ] Checking for system updates...
[2026-08-25 00:11:22,586.586 INFO    ] 200
[2026-08-25 00:11:22,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:22,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:22,644.644 INFO    ] No update needed
[2026-08-25 00:11:22,646.646 INFO    ] Checking for camera pi updates...
[2026-08-25 00:11:22,682.682 INFO    ] 200
[2026-08-25 00:11:22,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:22,724.724 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:11:22,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:22,768.768 INFO    ] No camera update needed
[2026-08-25 00:11:22,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:11:22,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:11:22,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:11:22,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:11:24,824.824 INFO    ] ================================================
[2026-08-25 00:11:24,839.839 INFO    ] Launching Daemon at Tue Aug 25 00:11:24 IST 2026
[2026-08-25 00:11:24,850.850 INFO    ] ================================================
[2026-08-25 00:11:25,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:11:25
[2026-08-25 00:11:25,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:11:26,246.246 INFO    ] Initializing speech engine...
[2026-08-25 00:11:26,258.258 INFO    ] 2026-08-25 00:11:26
[2026-08-25 00:11:26,525.525 INFO    ] 2026-08-25 00:11:26
[2026-08-25 00:11:26,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:11:26,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:11:26,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:11:26,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:11:26,985.985 INFO    ] time= 25/08/2026 00:11:26
[2026-08-25 00:11:27,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:11:27,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:11:27,229.229 INFO    ] No existing commands found in stream
[2026-08-25 00:11:32,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:11:32,260.260 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 00:11:33,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:11:33,641.641 INFO    ] Checking for system updates...
[2026-08-25 00:11:33,678.678 INFO    ] 200
[2026-08-25 00:11:33,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:33,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:33,739.739 INFO    ] No update needed
[2026-08-25 00:11:33,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 00:11:33,773.773 INFO    ] 200
[2026-08-25 00:11:33,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:33,819.819 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:11:33,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:33,864.864 INFO    ] No camera update needed
[2026-08-25 00:11:33,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:11:33,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:11:33,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:11:33,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:11:35,918.918 INFO    ] ================================================
[2026-08-25 00:11:35,933.933 INFO    ] Launching Daemon at Tue Aug 25 00:11:35 IST 2026
[2026-08-25 00:11:35,943.943 INFO    ] ================================================
[2026-08-25 00:11:36,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:11:36
[2026-08-25 00:11:37,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:11:37,532.532 INFO    ] Initializing speech engine...
[2026-08-25 00:11:37,541.541 INFO    ] 2026-08-25 00:11:37
[2026-08-25 00:11:37,855.855 INFO    ] 2026-08-25 00:11:37
[2026-08-25 00:11:37,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:11:38,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:11:38,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:11:38,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:11:38,353.353 INFO    ] time= 25/08/2026 00:11:38
[2026-08-25 00:11:38,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:11:38,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:11:38,509.509 INFO    ] No existing commands found in stream
[2026-08-25 00:11:43,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:11:43,534.534 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 00:11:46,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:11:46,321.321 INFO    ] Checking for system updates...
[2026-08-25 00:11:46,358.358 INFO    ] 200
[2026-08-25 00:11:46,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:46,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:11:46,415.415 INFO    ] No update needed
[2026-08-25 00:11:46,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 00:11:46,453.453 INFO    ] 200
[2026-08-25 00:11:46,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:46,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:11:46,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:11:46,548.548 INFO    ] No camera update needed
[2026-08-25 00:11:46,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:11:46,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:11:46,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:11:46,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:11:48,603.603 INFO    ] ================================================
[2026-08-25 00:11:48,618.618 INFO    ] Launching Daemon at Tue Aug 25 00:11:48 IST 2026
[2026-08-25 00:11:48,628.628 INFO    ] ================================================
[2026-08-25 00:11:49,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:11:49
[2026-08-25 00:11:49,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:11:50,033.033 INFO    ] Initializing speech engine...
[2026-08-25 00:11:50,052.052 INFO    ] 2026-08-25 00:11:50
[2026-08-25 00:11:50,302.302 INFO    ] 2026-08-25 00:11:50
[2026-08-25 00:11:50,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:11:50,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:11:50,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:11:50,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:11:50,677.677 INFO    ] time= 25/08/2026 00:11:50
[2026-08-25 00:11:50,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:11:50,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:11:50,862.862 INFO    ] No existing commands found in stream
[2026-08-25 00:11:55,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:11:55,890.890 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 00:11:57,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:11:57,140.140 INFO    ] Checking for system updates...
[2026-08-25 00:11:57,180.180 INFO    ] 200
[2026-08-25 00:11:57,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:57,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:57,250.250 INFO    ] No update needed
[2026-08-25 00:11:57,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 00:11:57,286.286 INFO    ] 200
[2026-08-25 00:11:57,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:11:57,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:11:57,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:11:57,378.378 INFO    ] No camera update needed
[2026-08-25 00:11:57,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:11:57,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:11:57,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:11:57,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:11:59,433.433 INFO    ] ================================================
[2026-08-25 00:11:59,447.447 INFO    ] Launching Daemon at Tue Aug 25 00:11:59 IST 2026
[2026-08-25 00:11:59,458.458 INFO    ] ================================================
[2026-08-25 00:12:00,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:12:00
[2026-08-25 00:12:00,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:12:00,892.892 INFO    ] Initializing speech engine...
[2026-08-25 00:12:00,915.915 INFO    ] 2026-08-25 00:12:00
[2026-08-25 00:12:01,170.170 INFO    ] 2026-08-25 00:12:01
[2026-08-25 00:12:01,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:12:01,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:12:01,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:12:01,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:12:01,626.626 INFO    ] time= 25/08/2026 00:12:01
[2026-08-25 00:12:01,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:12:01,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:12:01,721.721 INFO    ] No existing commands found in stream
[2026-08-25 00:12:06,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:12:06,736.736 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 00:12:08,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:12:08,883.883 INFO    ] Checking for system updates...
[2026-08-25 00:12:08,920.920 INFO    ] 200
[2026-08-25 00:12:08,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:08,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:12:08,978.978 INFO    ] No update needed
[2026-08-25 00:12:08,980.980 INFO    ] Checking for camera pi updates...
[2026-08-25 00:12:09,016.016 INFO    ] 200
[2026-08-25 00:12:09,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:09,064.064 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:12:09,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:12:09,113.113 INFO    ] No camera update needed
[2026-08-25 00:12:09,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:12:09,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:12:09,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:12:09,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:12:11,170.170 INFO    ] ================================================
[2026-08-25 00:12:11,185.185 INFO    ] Launching Daemon at Tue Aug 25 00:12:11 IST 2026
[2026-08-25 00:12:11,196.196 INFO    ] ================================================
[2026-08-25 00:12:11,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:12:11
[2026-08-25 00:12:12,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:12:12,711.711 INFO    ] Initializing speech engine...
[2026-08-25 00:12:12,736.736 INFO    ] 2026-08-25 00:12:12
[2026-08-25 00:12:12,991.991 INFO    ] 2026-08-25 00:12:12
[2026-08-25 00:12:13,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:12:13,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:12:13,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:12:13,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:12:13,368.368 INFO    ] time= 25/08/2026 00:12:13
[2026-08-25 00:12:13,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:12:13,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:12:13,522.522 INFO    ] No existing commands found in stream
[2026-08-25 00:12:18,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:12:18,550.550 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 00:12:19,850.850 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:12:19,852.852 INFO    ] Checking for system updates...
[2026-08-25 00:12:19,891.891 INFO    ] 200
[2026-08-25 00:12:19,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:19,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:12:19,953.953 INFO    ] No update needed
[2026-08-25 00:12:19,955.955 INFO    ] Checking for camera pi updates...
[2026-08-25 00:12:19,992.992 INFO    ] 200
[2026-08-25 00:12:19,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:20,034.034 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:12:20,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:12:20,089.089 INFO    ] No camera update needed
[2026-08-25 00:12:20,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:12:20,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:12:20,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:12:20,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:12:22,146.146 INFO    ] ================================================
[2026-08-25 00:12:22,161.161 INFO    ] Launching Daemon at Tue Aug 25 00:12:22 IST 2026
[2026-08-25 00:12:22,172.172 INFO    ] ================================================
[2026-08-25 00:12:22,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:12:22
[2026-08-25 00:12:23,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:12:23,631.631 INFO    ] Initializing speech engine...
[2026-08-25 00:12:23,637.637 INFO    ] 2026-08-25 00:12:23
[2026-08-25 00:12:23,896.896 INFO    ] 2026-08-25 00:12:23
[2026-08-25 00:12:23,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:12:24,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:12:24,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:12:24,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:12:24,379.379 INFO    ] time= 25/08/2026 00:12:24
[2026-08-25 00:12:24,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:12:24,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:12:24,575.575 INFO    ] No existing commands found in stream
[2026-08-25 00:12:29,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:12:29,600.600 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 00:12:33,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:12:33,882.882 INFO    ] Checking for system updates...
[2026-08-25 00:12:33,922.922 INFO    ] 200
[2026-08-25 00:12:33,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:33,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:12:33,980.980 INFO    ] No update needed
[2026-08-25 00:12:33,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 00:12:34,016.016 INFO    ] 200
[2026-08-25 00:12:34,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:34,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:12:34,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:12:34,123.123 INFO    ] No camera update needed
[2026-08-25 00:12:34,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:12:34,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:12:34,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:12:34,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:12:36,179.179 INFO    ] ================================================
[2026-08-25 00:12:36,194.194 INFO    ] Launching Daemon at Tue Aug 25 00:12:36 IST 2026
[2026-08-25 00:12:36,205.205 INFO    ] ================================================
[2026-08-25 00:12:36,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:12:36
[2026-08-25 00:12:37,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:12:37,670.670 INFO    ] Initializing speech engine...
[2026-08-25 00:12:37,683.683 INFO    ] 2026-08-25 00:12:37
[2026-08-25 00:12:37,932.932 INFO    ] 2026-08-25 00:12:37
[2026-08-25 00:12:37,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:12:38,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:12:38,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:12:38,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:12:38,416.416 INFO    ] time= 25/08/2026 00:12:38
[2026-08-25 00:12:38,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:12:38,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:12:38,651.651 INFO    ] No existing commands found in stream
[2026-08-25 00:12:43,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:12:43,670.670 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 00:12:46,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:12:46,705.705 INFO    ] Checking for system updates...
[2026-08-25 00:12:46,740.740 INFO    ] 200
[2026-08-25 00:12:46,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:46,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:12:46,799.799 INFO    ] No update needed
[2026-08-25 00:12:46,801.801 INFO    ] Checking for camera pi updates...
[2026-08-25 00:12:46,838.838 INFO    ] 200
[2026-08-25 00:12:46,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:12:46,885.885 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:12:46,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:12:46,937.937 INFO    ] No camera update needed
[2026-08-25 00:12:46,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:12:46,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:12:46,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:12:46,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:12:48,993.993 INFO    ] ================================================
[2026-08-25 00:12:49,009.009 INFO    ] Launching Daemon at Tue Aug 25 00:12:49 IST 2026
[2026-08-25 00:12:49,020.020 INFO    ] ================================================
[2026-08-25 00:12:49,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:12:49
[2026-08-25 00:12:50,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:12:50,453.453 INFO    ] Initializing speech engine...
[2026-08-25 00:12:50,462.462 INFO    ] 2026-08-25 00:12:50
[2026-08-25 00:12:50,707.707 INFO    ] 2026-08-25 00:12:50
[2026-08-25 00:12:50,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:12:50,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:12:51,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:12:51,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:12:51,176.176 INFO    ] time= 25/08/2026 00:12:51
[2026-08-25 00:12:51,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:12:51,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:12:51,399.399 INFO    ] No existing commands found in stream
[2026-08-25 00:12:56,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:12:56,426.426 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 00:13:00,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:13:00,124.124 INFO    ] Checking for system updates...
[2026-08-25 00:13:00,165.165 INFO    ] 200
[2026-08-25 00:13:00,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:00,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:13:00,235.235 INFO    ] No update needed
[2026-08-25 00:13:00,238.238 INFO    ] Checking for camera pi updates...
[2026-08-25 00:13:00,272.272 INFO    ] 200
[2026-08-25 00:13:00,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:00,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:13:00,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:13:00,387.387 INFO    ] No camera update needed
[2026-08-25 00:13:00,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:13:00,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:13:00,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:13:00,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:13:02,450.450 INFO    ] ================================================
[2026-08-25 00:13:02,473.473 INFO    ] Launching Daemon at Tue Aug 25 00:13:02 IST 2026
[2026-08-25 00:13:02,491.491 INFO    ] ================================================
[2026-08-25 00:13:03,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:13:03
[2026-08-25 00:13:03,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:13:04,195.195 INFO    ] Initializing speech engine...
[2026-08-25 00:13:04,201.201 INFO    ] 2026-08-25 00:13:04
[2026-08-25 00:13:04,474.474 INFO    ] 2026-08-25 00:13:04
[2026-08-25 00:13:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:13:04,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:13:04,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:13:04,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:13:04,952.952 INFO    ] time= 25/08/2026 00:13:04
[2026-08-25 00:13:05,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:13:05,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:13:05,146.146 INFO    ] No existing commands found in stream
[2026-08-25 00:13:10,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:13:10,172.172 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 00:13:13,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:13:13,324.324 INFO    ] Checking for system updates...
[2026-08-25 00:13:13,364.364 INFO    ] 200
[2026-08-25 00:13:13,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:13,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:13:13,430.430 INFO    ] No update needed
[2026-08-25 00:13:13,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 00:13:13,470.470 INFO    ] 200
[2026-08-25 00:13:13,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:13,514.514 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:13:13,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:13:13,566.566 INFO    ] No camera update needed
[2026-08-25 00:13:13,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:13:13,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:13:13,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:13:13,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:13:15,622.622 INFO    ] ================================================
[2026-08-25 00:13:15,638.638 INFO    ] Launching Daemon at Tue Aug 25 00:13:15 IST 2026
[2026-08-25 00:13:15,649.649 INFO    ] ================================================
[2026-08-25 00:13:16,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:13:16
[2026-08-25 00:13:16,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:13:17,102.102 INFO    ] Initializing speech engine...
[2026-08-25 00:13:17,111.111 INFO    ] 2026-08-25 00:13:17
[2026-08-25 00:13:17,381.381 INFO    ] 2026-08-25 00:13:17
[2026-08-25 00:13:17,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:13:17,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:13:17,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:13:17,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:13:17,858.858 INFO    ] time= 25/08/2026 00:13:17
[2026-08-25 00:13:17,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:13:17,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:13:18,065.065 INFO    ] No existing commands found in stream
[2026-08-25 00:13:23,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:13:23,096.096 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 00:13:25,239.239 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:13:25,242.242 INFO    ] Checking for system updates...
[2026-08-25 00:13:25,279.279 INFO    ] 200
[2026-08-25 00:13:25,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:25,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:13:25,346.346 INFO    ] No update needed
[2026-08-25 00:13:25,349.349 INFO    ] Checking for camera pi updates...
[2026-08-25 00:13:25,387.387 INFO    ] 200
[2026-08-25 00:13:25,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:25,436.436 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:13:25,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:13:25,572.572 INFO    ] No camera update needed
[2026-08-25 00:13:25,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:13:25,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:13:25,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:13:25,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:13:27,633.633 INFO    ] ================================================
[2026-08-25 00:13:27,648.648 INFO    ] Launching Daemon at Tue Aug 25 00:13:27 IST 2026
[2026-08-25 00:13:27,659.659 INFO    ] ================================================
[2026-08-25 00:13:28,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:13:28
[2026-08-25 00:13:28,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:13:29,082.082 INFO    ] Initializing speech engine...
[2026-08-25 00:13:29,100.100 INFO    ] 2026-08-25 00:13:29
[2026-08-25 00:13:29,371.371 INFO    ] 2026-08-25 00:13:29
[2026-08-25 00:13:29,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:13:29,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:13:29,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:13:29,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:13:29,839.839 INFO    ] time= 25/08/2026 00:13:29
[2026-08-25 00:13:29,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:13:29,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:13:30,063.063 INFO    ] No existing commands found in stream
[2026-08-25 00:13:35,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:13:35,091.091 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 00:13:38,737.737 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:13:38,740.740 INFO    ] Checking for system updates...
[2026-08-25 00:13:38,775.775 INFO    ] 200
[2026-08-25 00:13:38,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:38,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:13:38,835.835 INFO    ] No update needed
[2026-08-25 00:13:38,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 00:13:38,875.875 INFO    ] 200
[2026-08-25 00:13:38,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:38,922.922 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:13:38,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:13:38,973.973 INFO    ] No camera update needed
[2026-08-25 00:13:38,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:13:38,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:13:38,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:13:38,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:13:41,029.029 INFO    ] ================================================
[2026-08-25 00:13:41,045.045 INFO    ] Launching Daemon at Tue Aug 25 00:13:41 IST 2026
[2026-08-25 00:13:41,057.057 INFO    ] ================================================
[2026-08-25 00:13:41,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:13:41
[2026-08-25 00:13:42,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:13:42,677.677 INFO    ] Initializing speech engine...
[2026-08-25 00:13:42,685.685 INFO    ] 2026-08-25 00:13:42
[2026-08-25 00:13:42,971.971 INFO    ] 2026-08-25 00:13:42
[2026-08-25 00:13:43,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:13:43,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:13:43,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:13:43,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:13:43,435.435 INFO    ] time= 25/08/2026 00:13:43
[2026-08-25 00:13:43,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:13:43,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:13:43,659.659 INFO    ] No existing commands found in stream
[2026-08-25 00:13:48,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:13:48,677.677 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 00:13:50,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:13:51,001.001 INFO    ] Checking for system updates...
[2026-08-25 00:13:51,039.039 INFO    ] 200
[2026-08-25 00:13:51,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:51,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:13:51,096.096 INFO    ] No update needed
[2026-08-25 00:13:51,098.098 INFO    ] Checking for camera pi updates...
[2026-08-25 00:13:51,131.131 INFO    ] 200
[2026-08-25 00:13:51,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:13:51,175.175 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:13:51,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:13:51,241.241 INFO    ] No camera update needed
[2026-08-25 00:13:51,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:13:51,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:13:51,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:13:51,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:13:53,296.296 INFO    ] ================================================
[2026-08-25 00:13:53,311.311 INFO    ] Launching Daemon at Tue Aug 25 00:13:53 IST 2026
[2026-08-25 00:13:53,322.322 INFO    ] ================================================
[2026-08-25 00:13:53,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:13:53
[2026-08-25 00:13:54,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:13:54,755.755 INFO    ] Initializing speech engine...
[2026-08-25 00:13:54,764.764 INFO    ] 2026-08-25 00:13:54
[2026-08-25 00:13:55,023.023 INFO    ] 2026-08-25 00:13:55
[2026-08-25 00:13:55,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:13:55,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:13:55,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:13:55,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:13:55,566.566 INFO    ] time= 25/08/2026 00:13:55
[2026-08-25 00:13:55,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:13:55,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:13:55,711.711 INFO    ] No existing commands found in stream
[2026-08-25 00:14:00,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:14:00,736.736 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 00:14:01,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:14:01,707.707 INFO    ] Checking for system updates...
[2026-08-25 00:14:01,768.768 INFO    ] 200
[2026-08-25 00:14:01,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:01,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:14:01,849.849 INFO    ] No update needed
[2026-08-25 00:14:01,852.852 INFO    ] Checking for camera pi updates...
[2026-08-25 00:14:01,889.889 INFO    ] 200
[2026-08-25 00:14:01,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:01,947.947 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:14:02,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:14:02,022.022 INFO    ] No camera update needed
[2026-08-25 00:14:02,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:14:02,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:14:02,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:14:02,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:14:04,087.087 INFO    ] ================================================
[2026-08-25 00:14:04,103.103 INFO    ] Launching Daemon at Tue Aug 25 00:14:04 IST 2026
[2026-08-25 00:14:04,114.114 INFO    ] ================================================
[2026-08-25 00:14:04,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:14:04
[2026-08-25 00:14:05,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:14:05,507.507 INFO    ] Initializing speech engine...
[2026-08-25 00:14:05,513.513 INFO    ] 2026-08-25 00:14:05
[2026-08-25 00:14:05,786.786 INFO    ] 2026-08-25 00:14:05
[2026-08-25 00:14:05,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:14:06,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:14:06,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:14:06,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:14:06,290.290 INFO    ] time= 25/08/2026 00:14:06
[2026-08-25 00:14:06,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:14:06,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:14:06,503.503 INFO    ] No existing commands found in stream
[2026-08-25 00:14:11,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:14:11,530.530 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 00:14:15,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:14:15,261.261 INFO    ] Checking for system updates...
[2026-08-25 00:14:15,303.303 INFO    ] 200
[2026-08-25 00:14:15,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:15,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:14:15,369.369 INFO    ] No update needed
[2026-08-25 00:14:15,371.371 INFO    ] Checking for camera pi updates...
[2026-08-25 00:14:15,409.409 INFO    ] 200
[2026-08-25 00:14:15,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:15,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:14:15,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:14:15,504.504 INFO    ] No camera update needed
[2026-08-25 00:14:15,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:14:15,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:14:15,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:14:15,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:14:17,562.562 INFO    ] ================================================
[2026-08-25 00:14:17,578.578 INFO    ] Launching Daemon at Tue Aug 25 00:14:17 IST 2026
[2026-08-25 00:14:17,589.589 INFO    ] ================================================
[2026-08-25 00:14:18,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:14:18
[2026-08-25 00:14:18,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:14:19,028.028 INFO    ] Initializing speech engine...
[2026-08-25 00:14:19,044.044 INFO    ] 2026-08-25 00:14:19
[2026-08-25 00:14:19,328.328 INFO    ] 2026-08-25 00:14:19
[2026-08-25 00:14:19,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:14:19,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:14:19,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:14:19,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:14:19,745.745 INFO    ] time= 25/08/2026 00:14:19
[2026-08-25 00:14:19,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:14:19,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:14:19,899.899 INFO    ] No existing commands found in stream
[2026-08-25 00:14:24,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:14:24,928.928 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 00:14:27,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:14:27,493.493 INFO    ] Checking for system updates...
[2026-08-25 00:14:27,529.529 INFO    ] 200
[2026-08-25 00:14:27,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:27,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:14:27,585.585 INFO    ] No update needed
[2026-08-25 00:14:27,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 00:14:27,621.621 INFO    ] 200
[2026-08-25 00:14:27,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:27,663.663 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:14:27,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:14:27,712.712 INFO    ] No camera update needed
[2026-08-25 00:14:27,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:14:27,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:14:27,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:14:27,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:14:29,767.767 INFO    ] ================================================
[2026-08-25 00:14:29,782.782 INFO    ] Launching Daemon at Tue Aug 25 00:14:29 IST 2026
[2026-08-25 00:14:29,793.793 INFO    ] ================================================
[2026-08-25 00:14:30,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:14:30
[2026-08-25 00:14:31,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:14:31,408.408 INFO    ] Initializing speech engine...
[2026-08-25 00:14:31,425.425 INFO    ] 2026-08-25 00:14:31
[2026-08-25 00:14:31,691.691 INFO    ] 2026-08-25 00:14:31
[2026-08-25 00:14:31,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:14:31,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:14:31,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:14:32,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:14:32,194.194 INFO    ] time= 25/08/2026 00:14:32
[2026-08-25 00:14:32,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:14:32,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:14:32,425.425 INFO    ] No existing commands found in stream
[2026-08-25 00:14:37,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:14:37,447.447 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 00:14:38,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:14:38,756.756 INFO    ] Checking for system updates...
[2026-08-25 00:14:38,792.792 INFO    ] 200
[2026-08-25 00:14:38,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:38,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:14:38,849.849 INFO    ] No update needed
[2026-08-25 00:14:38,852.852 INFO    ] Checking for camera pi updates...
[2026-08-25 00:14:38,885.885 INFO    ] 200
[2026-08-25 00:14:38,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:38,928.928 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:14:38,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:14:38,975.975 INFO    ] No camera update needed
[2026-08-25 00:14:38,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:14:38,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:14:38,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:14:38,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:14:41,033.033 INFO    ] ================================================
[2026-08-25 00:14:41,049.049 INFO    ] Launching Daemon at Tue Aug 25 00:14:41 IST 2026
[2026-08-25 00:14:41,061.061 INFO    ] ================================================
[2026-08-25 00:14:41,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:14:41
[2026-08-25 00:14:42,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:14:42,514.514 INFO    ] Initializing speech engine...
[2026-08-25 00:14:42,523.523 INFO    ] 2026-08-25 00:14:42
[2026-08-25 00:14:42,793.793 INFO    ] 2026-08-25 00:14:42
[2026-08-25 00:14:42,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:14:43,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:14:43,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:14:43,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:14:43,318.318 INFO    ] time= 25/08/2026 00:14:43
[2026-08-25 00:14:43,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:14:43,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:14:43,478.478 INFO    ] No existing commands found in stream
[2026-08-25 00:14:48,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:14:48,500.500 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 00:14:49,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:14:49,283.283 INFO    ] Checking for system updates...
[2026-08-25 00:14:49,318.318 INFO    ] 200
[2026-08-25 00:14:49,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:49,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:14:49,375.375 INFO    ] No update needed
[2026-08-25 00:14:49,378.378 INFO    ] Checking for camera pi updates...
[2026-08-25 00:14:49,411.411 INFO    ] 200
[2026-08-25 00:14:49,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:49,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:14:49,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:14:49,507.507 INFO    ] No camera update needed
[2026-08-25 00:14:49,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:14:49,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:14:49,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:14:49,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:14:51,564.564 INFO    ] ================================================
[2026-08-25 00:14:51,580.580 INFO    ] Launching Daemon at Tue Aug 25 00:14:51 IST 2026
[2026-08-25 00:14:51,591.591 INFO    ] ================================================
[2026-08-25 00:14:52,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:14:52
[2026-08-25 00:14:52,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:14:53,222.222 INFO    ] Initializing speech engine...
[2026-08-25 00:14:53,231.231 INFO    ] 2026-08-25 00:14:53
[2026-08-25 00:14:53,491.491 INFO    ] 2026-08-25 00:14:53
[2026-08-25 00:14:53,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:14:53,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:14:53,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:14:53,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:14:53,890.890 INFO    ] time= 25/08/2026 00:14:53
[2026-08-25 00:14:53,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:14:53,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:14:54,000.000 INFO    ] No existing commands found in stream
[2026-08-25 00:14:59,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:14:59,028.028 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 00:14:59,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:14:59,622.622 INFO    ] Checking for system updates...
[2026-08-25 00:14:59,657.657 INFO    ] 200
[2026-08-25 00:14:59,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:59,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:14:59,714.714 INFO    ] No update needed
[2026-08-25 00:14:59,716.716 INFO    ] Checking for camera pi updates...
[2026-08-25 00:14:59,749.749 INFO    ] 200
[2026-08-25 00:14:59,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:14:59,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:14:59,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:14:59,842.842 INFO    ] No camera update needed
[2026-08-25 00:14:59,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:14:59,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:14:59,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:14:59,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:15:01,923.923 INFO    ] ================================================
[2026-08-25 00:15:02,992.992 INFO    ] Launching Daemon at Tue Aug 25 00:15:01 IST 2026
[2026-08-25 00:15:02,018.018 INFO    ] ================================================
[2026-08-25 00:15:02,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:15:02
[2026-08-25 00:15:03,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:15:03,732.732 INFO    ] Initializing speech engine...
[2026-08-25 00:15:03,740.740 INFO    ] 2026-08-25 00:15:03
[2026-08-25 00:15:04,030.030 INFO    ] 2026-08-25 00:15:04
[2026-08-25 00:15:04,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:15:04,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:15:04,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:15:04,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:15:04,448.448 INFO    ] time= 25/08/2026 00:15:04
[2026-08-25 00:15:04,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:15:04,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:15:04,531.531 INFO    ] No existing commands found in stream
[2026-08-25 00:15:09,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:15:09,547.547 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 00:15:11,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:15:11,484.484 INFO    ] Checking for system updates...
[2026-08-25 00:15:11,519.519 INFO    ] 200
[2026-08-25 00:15:11,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:11,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:15:11,576.576 INFO    ] No update needed
[2026-08-25 00:15:11,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 00:15:11,611.611 INFO    ] 200
[2026-08-25 00:15:11,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:11,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:15:11,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:15:11,704.704 INFO    ] No camera update needed
[2026-08-25 00:15:11,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:15:11,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:15:11,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:15:11,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:15:13,758.758 INFO    ] ================================================
[2026-08-25 00:15:13,773.773 INFO    ] Launching Daemon at Tue Aug 25 00:15:13 IST 2026
[2026-08-25 00:15:13,784.784 INFO    ] ================================================
[2026-08-25 00:15:14,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:15:14
[2026-08-25 00:15:15,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:15:15,362.362 INFO    ] Initializing speech engine...
[2026-08-25 00:15:15,371.371 INFO    ] 2026-08-25 00:15:15
[2026-08-25 00:15:15,651.651 INFO    ] 2026-08-25 00:15:15
[2026-08-25 00:15:15,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:15:15,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:15:15,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:15:16,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:15:16,146.146 INFO    ] time= 25/08/2026 00:15:16
[2026-08-25 00:15:16,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:15:16,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:15:16,357.357 INFO    ] No existing commands found in stream
[2026-08-25 00:15:21,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:15:21,386.386 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 00:15:23,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:15:23,617.617 INFO    ] Checking for system updates...
[2026-08-25 00:15:23,658.658 INFO    ] 200
[2026-08-25 00:15:23,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:23,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:15:23,714.714 INFO    ] No update needed
[2026-08-25 00:15:23,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 00:15:23,750.750 INFO    ] 200
[2026-08-25 00:15:23,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:23,792.792 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:15:23,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:15:23,844.844 INFO    ] No camera update needed
[2026-08-25 00:15:23,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:15:23,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:15:23,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:15:23,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:15:25,901.901 INFO    ] ================================================
[2026-08-25 00:15:25,916.916 INFO    ] Launching Daemon at Tue Aug 25 00:15:25 IST 2026
[2026-08-25 00:15:25,927.927 INFO    ] ================================================
[2026-08-25 00:15:26,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:15:26
[2026-08-25 00:15:27,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:15:27,384.384 INFO    ] Initializing speech engine...
[2026-08-25 00:15:27,392.392 INFO    ] 2026-08-25 00:15:27
[2026-08-25 00:15:27,651.651 INFO    ] 2026-08-25 00:15:27
[2026-08-25 00:15:27,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:15:27,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:15:27,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:15:28,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:15:28,139.139 INFO    ] time= 25/08/2026 00:15:28
[2026-08-25 00:15:28,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:15:28,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:15:28,337.337 INFO    ] No existing commands found in stream
[2026-08-25 00:15:33,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:15:33,355.355 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 00:15:35,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:15:35,475.475 INFO    ] Checking for system updates...
[2026-08-25 00:15:35,511.511 INFO    ] 200
[2026-08-25 00:15:35,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:35,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:15:35,569.569 INFO    ] No update needed
[2026-08-25 00:15:35,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 00:15:35,609.609 INFO    ] 200
[2026-08-25 00:15:35,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:35,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:15:35,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:15:35,708.708 INFO    ] No camera update needed
[2026-08-25 00:15:35,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:15:35,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:15:35,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:15:35,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:15:37,765.765 INFO    ] ================================================
[2026-08-25 00:15:37,781.781 INFO    ] Launching Daemon at Tue Aug 25 00:15:37 IST 2026
[2026-08-25 00:15:37,792.792 INFO    ] ================================================
[2026-08-25 00:15:38,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:15:38
[2026-08-25 00:15:39,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:15:39,307.307 INFO    ] Initializing speech engine...
[2026-08-25 00:15:39,319.319 INFO    ] 2026-08-25 00:15:39
[2026-08-25 00:15:39,600.600 INFO    ] 2026-08-25 00:15:39
[2026-08-25 00:15:39,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:15:39,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:15:39,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:15:40,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:15:40,104.104 INFO    ] time= 25/08/2026 00:15:40
[2026-08-25 00:15:40,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:15:40,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:15:40,319.319 INFO    ] No existing commands found in stream
[2026-08-25 00:15:45,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:15:45,345.345 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 00:15:46,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:15:46,454.454 INFO    ] Checking for system updates...
[2026-08-25 00:15:46,490.490 INFO    ] 200
[2026-08-25 00:15:46,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:46,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:15:46,555.555 INFO    ] No update needed
[2026-08-25 00:15:46,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 00:15:46,597.597 INFO    ] 200
[2026-08-25 00:15:46,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:46,645.645 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:15:46,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:15:46,712.712 INFO    ] No camera update needed
[2026-08-25 00:15:46,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:15:46,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:15:46,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:15:46,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:15:48,767.767 INFO    ] ================================================
[2026-08-25 00:15:48,783.783 INFO    ] Launching Daemon at Tue Aug 25 00:15:48 IST 2026
[2026-08-25 00:15:48,794.794 INFO    ] ================================================
[2026-08-25 00:15:49,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:15:49
[2026-08-25 00:15:50,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:15:50,470.470 INFO    ] Initializing speech engine...
[2026-08-25 00:15:50,485.485 INFO    ] 2026-08-25 00:15:50
[2026-08-25 00:15:50,759.759 INFO    ] 2026-08-25 00:15:50
[2026-08-25 00:15:50,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:15:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:15:51,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:15:51,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:15:51,245.245 INFO    ] time= 25/08/2026 00:15:51
[2026-08-25 00:15:51,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:15:51,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:15:51,468.468 INFO    ] No existing commands found in stream
[2026-08-25 00:15:56,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:15:56,495.495 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 00:15:58,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:15:58,557.557 INFO    ] Checking for system updates...
[2026-08-25 00:15:58,594.594 INFO    ] 200
[2026-08-25 00:15:58,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:58,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:15:58,651.651 INFO    ] No update needed
[2026-08-25 00:15:58,654.654 INFO    ] Checking for camera pi updates...
[2026-08-25 00:15:58,687.687 INFO    ] 200
[2026-08-25 00:15:58,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:15:58,731.731 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:15:58,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:15:58,780.780 INFO    ] No camera update needed
[2026-08-25 00:15:58,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:15:58,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:15:58,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:15:58,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:16:00,842.842 INFO    ] ================================================
[2026-08-25 00:16:00,857.857 INFO    ] Launching Daemon at Tue Aug 25 00:16:00 IST 2026
[2026-08-25 00:16:00,868.868 INFO    ] ================================================
[2026-08-25 00:16:01,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:16:01
[2026-08-25 00:16:02,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:16:02,515.515 INFO    ] Initializing speech engine...
[2026-08-25 00:16:02,533.533 INFO    ] 2026-08-25 00:16:02
[2026-08-25 00:16:02,844.844 INFO    ] 2026-08-25 00:16:02
[2026-08-25 00:16:02,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:16:03,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:16:03,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:16:03,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:16:03,366.366 INFO    ] time= 25/08/2026 00:16:03
[2026-08-25 00:16:03,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:16:03,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:16:03,620.620 INFO    ] No existing commands found in stream
[2026-08-25 00:16:08,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:16:08,657.657 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 00:16:12,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:16:12,236.236 INFO    ] Checking for system updates...
[2026-08-25 00:16:12,278.278 INFO    ] 200
[2026-08-25 00:16:12,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:12,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:16:12,350.350 INFO    ] No update needed
[2026-08-25 00:16:12,352.352 INFO    ] Checking for camera pi updates...
[2026-08-25 00:16:12,391.391 INFO    ] 200
[2026-08-25 00:16:12,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:12,436.436 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:16:12,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:16:12,494.494 INFO    ] No camera update needed
[2026-08-25 00:16:12,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:16:12,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:16:12,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:16:12,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:16:14,553.553 INFO    ] ================================================
[2026-08-25 00:16:14,568.568 INFO    ] Launching Daemon at Tue Aug 25 00:16:14 IST 2026
[2026-08-25 00:16:14,579.579 INFO    ] ================================================
[2026-08-25 00:16:15,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:16:15
[2026-08-25 00:16:15,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:16:16,077.077 INFO    ] Initializing speech engine...
[2026-08-25 00:16:16,090.090 INFO    ] 2026-08-25 00:16:16
[2026-08-25 00:16:16,337.337 INFO    ] 2026-08-25 00:16:16
[2026-08-25 00:16:16,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:16:16,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:16:16,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:16:16,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:16:16,813.813 INFO    ] time= 25/08/2026 00:16:16
[2026-08-25 00:16:16,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:16:16,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:16:17,016.016 INFO    ] No existing commands found in stream
[2026-08-25 00:16:22,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:16:22,041.041 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 00:16:23,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:16:23,515.515 INFO    ] Checking for system updates...
[2026-08-25 00:16:23,557.557 INFO    ] 200
[2026-08-25 00:16:23,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:23,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:16:23,639.639 INFO    ] No update needed
[2026-08-25 00:16:23,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 00:16:23,679.679 INFO    ] 200
[2026-08-25 00:16:23,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:23,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:16:23,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:16:23,774.774 INFO    ] No camera update needed
[2026-08-25 00:16:23,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:16:23,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:16:23,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:16:23,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:16:25,829.829 INFO    ] ================================================
[2026-08-25 00:16:25,845.845 INFO    ] Launching Daemon at Tue Aug 25 00:16:25 IST 2026
[2026-08-25 00:16:25,856.856 INFO    ] ================================================
[2026-08-25 00:16:26,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:16:26
[2026-08-25 00:16:27,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:16:27,313.313 INFO    ] Initializing speech engine...
[2026-08-25 00:16:27,323.323 INFO    ] 2026-08-25 00:16:27
[2026-08-25 00:16:27,587.587 INFO    ] 2026-08-25 00:16:27
[2026-08-25 00:16:27,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:16:27,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:16:27,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:16:28,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:16:28,121.121 INFO    ] time= 25/08/2026 00:16:28
[2026-08-25 00:16:28,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:16:28,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:16:28,375.375 INFO    ] No existing commands found in stream
[2026-08-25 00:16:33,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:16:33,391.391 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 00:16:36,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:16:36,692.692 INFO    ] Checking for system updates...
[2026-08-25 00:16:36,733.733 INFO    ] 200
[2026-08-25 00:16:36,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:36,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:16:36,790.790 INFO    ] No update needed
[2026-08-25 00:16:36,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 00:16:36,827.827 INFO    ] 200
[2026-08-25 00:16:36,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:36,872.872 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:16:36,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:16:36,919.919 INFO    ] No camera update needed
[2026-08-25 00:16:36,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:16:36,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:16:36,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:16:36,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:16:38,974.974 INFO    ] ================================================
[2026-08-25 00:16:38,989.989 INFO    ] Launching Daemon at Tue Aug 25 00:16:38 IST 2026
[2026-08-25 00:16:39,999.999 INFO    ] ================================================
[2026-08-25 00:16:39,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:16:39
[2026-08-25 00:16:40,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:16:40,441.441 INFO    ] Initializing speech engine...
[2026-08-25 00:16:40,454.454 INFO    ] 2026-08-25 00:16:40
[2026-08-25 00:16:40,718.718 INFO    ] 2026-08-25 00:16:40
[2026-08-25 00:16:40,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:16:40,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:16:40,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:16:41,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:16:41,095.095 INFO    ] time= 25/08/2026 00:16:41
[2026-08-25 00:16:41,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:16:41,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:16:41,274.274 INFO    ] No existing commands found in stream
[2026-08-25 00:16:46,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:16:46,302.302 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 00:16:46,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:16:46,753.753 INFO    ] Checking for system updates...
[2026-08-25 00:16:46,794.794 INFO    ] 200
[2026-08-25 00:16:46,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:46,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:16:46,859.859 INFO    ] No update needed
[2026-08-25 00:16:46,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 00:16:46,894.894 INFO    ] 200
[2026-08-25 00:16:46,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:16:46,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:16:46,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:16:46,985.985 INFO    ] No camera update needed
[2026-08-25 00:16:46,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:16:46,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:16:46,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:16:47,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:16:49,041.041 INFO    ] ================================================
[2026-08-25 00:16:49,056.056 INFO    ] Launching Daemon at Tue Aug 25 00:16:49 IST 2026
[2026-08-25 00:16:49,067.067 INFO    ] ================================================
[2026-08-25 00:16:49,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:16:49
[2026-08-25 00:16:50,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:16:50,721.721 INFO    ] Initializing speech engine...
[2026-08-25 00:16:50,733.733 INFO    ] 2026-08-25 00:16:50
[2026-08-25 00:16:51,018.018 INFO    ] 2026-08-25 00:16:50
[2026-08-25 00:16:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:16:51,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:16:51,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:16:51,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:16:51,560.560 INFO    ] time= 25/08/2026 00:16:51
[2026-08-25 00:16:51,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:16:51,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:16:51,720.720 INFO    ] No existing commands found in stream
[2026-08-25 00:16:56,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:16:56,747.747 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 00:17:00,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:17:00,145.145 INFO    ] Checking for system updates...
[2026-08-25 00:17:00,182.182 INFO    ] 200
[2026-08-25 00:17:00,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:00,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:17:00,248.248 INFO    ] No update needed
[2026-08-25 00:17:00,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 00:17:00,288.288 INFO    ] 200
[2026-08-25 00:17:00,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:00,335.335 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:17:00,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:17:00,382.382 INFO    ] No camera update needed
[2026-08-25 00:17:00,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:17:00,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:17:00,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:17:00,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:17:02,439.439 INFO    ] ================================================
[2026-08-25 00:17:02,461.461 INFO    ] Launching Daemon at Tue Aug 25 00:17:02 IST 2026
[2026-08-25 00:17:02,478.478 INFO    ] ================================================
[2026-08-25 00:17:03,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:17:03
[2026-08-25 00:17:03,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:17:04,237.237 INFO    ] Initializing speech engine...
[2026-08-25 00:17:04,243.243 INFO    ] 2026-08-25 00:17:04
[2026-08-25 00:17:04,503.503 INFO    ] 2026-08-25 00:17:04
[2026-08-25 00:17:04,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:17:04,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:17:04,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:17:04,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:17:04,967.967 INFO    ] time= 25/08/2026 00:17:04
[2026-08-25 00:17:05,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:17:05,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:17:05,175.175 INFO    ] No existing commands found in stream
[2026-08-25 00:17:10,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:17:10,210.210 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 00:17:14,212.212 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:17:14,215.215 INFO    ] Checking for system updates...
[2026-08-25 00:17:14,250.250 INFO    ] 200
[2026-08-25 00:17:14,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:14,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:17:14,306.306 INFO    ] No update needed
[2026-08-25 00:17:14,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 00:17:14,345.345 INFO    ] 200
[2026-08-25 00:17:14,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:14,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:17:14,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:17:14,441.441 INFO    ] No camera update needed
[2026-08-25 00:17:14,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:17:14,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:17:14,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:17:14,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:17:16,496.496 INFO    ] ================================================
[2026-08-25 00:17:16,511.511 INFO    ] Launching Daemon at Tue Aug 25 00:17:16 IST 2026
[2026-08-25 00:17:16,522.522 INFO    ] ================================================
[2026-08-25 00:17:17,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:17:17
[2026-08-25 00:17:17,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:17:17,953.953 INFO    ] Initializing speech engine...
[2026-08-25 00:17:17,961.961 INFO    ] 2026-08-25 00:17:17
[2026-08-25 00:17:18,228.228 INFO    ] 2026-08-25 00:17:18
[2026-08-25 00:17:18,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:17:18,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:17:18,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:17:18,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:17:18,644.644 INFO    ] time= 25/08/2026 00:17:18
[2026-08-25 00:17:18,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:17:18,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:17:18,729.729 INFO    ] No existing commands found in stream
[2026-08-25 00:17:23,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:17:23,747.747 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 00:17:26,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:17:26,234.234 INFO    ] Checking for system updates...
[2026-08-25 00:17:26,269.269 INFO    ] 200
[2026-08-25 00:17:26,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:26,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:17:26,332.332 INFO    ] No update needed
[2026-08-25 00:17:26,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 00:17:26,370.370 INFO    ] 200
[2026-08-25 00:17:26,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:26,417.417 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:17:26,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:17:26,463.463 INFO    ] No camera update needed
[2026-08-25 00:17:26,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:17:26,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:17:26,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:17:26,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:17:28,518.518 INFO    ] ================================================
[2026-08-25 00:17:28,533.533 INFO    ] Launching Daemon at Tue Aug 25 00:17:28 IST 2026
[2026-08-25 00:17:28,543.543 INFO    ] ================================================
[2026-08-25 00:17:29,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:17:29
[2026-08-25 00:17:29,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:17:30,157.157 INFO    ] Initializing speech engine...
[2026-08-25 00:17:30,169.169 INFO    ] 2026-08-25 00:17:30
[2026-08-25 00:17:30,479.479 INFO    ] 2026-08-25 00:17:30
[2026-08-25 00:17:30,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:17:30,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:17:30,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:17:30,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:17:30,901.901 INFO    ] time= 25/08/2026 00:17:30
[2026-08-25 00:17:30,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:17:30,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:17:31,134.134 INFO    ] No existing commands found in stream
[2026-08-25 00:17:36,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:17:36,152.152 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 00:17:39,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:17:39,278.278 INFO    ] Checking for system updates...
[2026-08-25 00:17:39,318.318 INFO    ] 200
[2026-08-25 00:17:39,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:39,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:17:39,383.383 INFO    ] No update needed
[2026-08-25 00:17:39,386.386 INFO    ] Checking for camera pi updates...
[2026-08-25 00:17:39,420.420 INFO    ] 200
[2026-08-25 00:17:39,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:39,464.464 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:17:39,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:17:39,614.614 INFO    ] No camera update needed
[2026-08-25 00:17:39,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:17:39,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:17:39,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:17:39,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:17:41,673.673 INFO    ] ================================================
[2026-08-25 00:17:41,688.688 INFO    ] Launching Daemon at Tue Aug 25 00:17:41 IST 2026
[2026-08-25 00:17:41,698.698 INFO    ] ================================================
[2026-08-25 00:17:42,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:17:42
[2026-08-25 00:17:42,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:17:43,148.148 INFO    ] Initializing speech engine...
[2026-08-25 00:17:43,169.169 INFO    ] 2026-08-25 00:17:43
[2026-08-25 00:17:43,435.435 INFO    ] 2026-08-25 00:17:43
[2026-08-25 00:17:43,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:17:43,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:17:43,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:17:43,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:17:43,848.848 INFO    ] time= 25/08/2026 00:17:43
[2026-08-25 00:17:43,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:17:43,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:17:44,049.049 INFO    ] No existing commands found in stream
[2026-08-25 00:17:49,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:17:49,083.083 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 00:17:51,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:17:51,316.316 INFO    ] Checking for system updates...
[2026-08-25 00:17:51,356.356 INFO    ] 200
[2026-08-25 00:17:51,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:51,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:17:51,420.420 INFO    ] No update needed
[2026-08-25 00:17:51,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 00:17:51,457.457 INFO    ] 200
[2026-08-25 00:17:51,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:17:51,506.506 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:17:51,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:17:51,560.560 INFO    ] No camera update needed
[2026-08-25 00:17:51,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:17:51,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:17:51,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:17:51,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:17:53,617.617 INFO    ] ================================================
[2026-08-25 00:17:53,633.633 INFO    ] Launching Daemon at Tue Aug 25 00:17:53 IST 2026
[2026-08-25 00:17:53,643.643 INFO    ] ================================================
[2026-08-25 00:17:54,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:17:54
[2026-08-25 00:17:54,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:17:55,062.062 INFO    ] Initializing speech engine...
[2026-08-25 00:17:55,080.080 INFO    ] 2026-08-25 00:17:55
[2026-08-25 00:17:55,330.330 INFO    ] 2026-08-25 00:17:55
[2026-08-25 00:17:55,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:17:55,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:17:55,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:17:55,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:17:55,834.834 INFO    ] time= 25/08/2026 00:17:55
[2026-08-25 00:17:55,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:17:55,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:17:56,054.054 INFO    ] No existing commands found in stream
[2026-08-25 00:18:01,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:18:01,069.069 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 00:18:02,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:18:02,163.163 INFO    ] Checking for system updates...
[2026-08-25 00:18:02,224.224 INFO    ] 200
[2026-08-25 00:18:02,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:02,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:02,325.325 INFO    ] No update needed
[2026-08-25 00:18:02,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 00:18:02,369.369 INFO    ] 200
[2026-08-25 00:18:02,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:02,419.419 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:18:02,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:02,483.483 INFO    ] No camera update needed
[2026-08-25 00:18:02,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:18:02,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:18:02,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:18:02,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:18:04,547.547 INFO    ] ================================================
[2026-08-25 00:18:04,562.562 INFO    ] Launching Daemon at Tue Aug 25 00:18:04 IST 2026
[2026-08-25 00:18:04,573.573 INFO    ] ================================================
[2026-08-25 00:18:05,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:18:05
[2026-08-25 00:18:05,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:18:05,972.972 INFO    ] Initializing speech engine...
[2026-08-25 00:18:05,987.987 INFO    ] 2026-08-25 00:18:05
[2026-08-25 00:18:06,269.269 INFO    ] 2026-08-25 00:18:06
[2026-08-25 00:18:06,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:18:06,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:18:06,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:18:06,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:18:06,714.714 INFO    ] time= 25/08/2026 00:18:06
[2026-08-25 00:18:06,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:18:06,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:18:06,909.909 INFO    ] No existing commands found in stream
[2026-08-25 00:18:11,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:18:11,937.937 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 00:18:13,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:18:13,584.584 INFO    ] Checking for system updates...
[2026-08-25 00:18:13,619.619 INFO    ] 200
[2026-08-25 00:18:13,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:13,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:13,676.676 INFO    ] No update needed
[2026-08-25 00:18:13,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 00:18:13,711.711 INFO    ] 200
[2026-08-25 00:18:13,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:13,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:18:13,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:13,807.807 INFO    ] No camera update needed
[2026-08-25 00:18:13,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:18:13,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:18:13,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:18:13,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:18:15,867.867 INFO    ] ================================================
[2026-08-25 00:18:15,883.883 INFO    ] Launching Daemon at Tue Aug 25 00:18:15 IST 2026
[2026-08-25 00:18:15,894.894 INFO    ] ================================================
[2026-08-25 00:18:16,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:18:16
[2026-08-25 00:18:17,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:18:17,489.489 INFO    ] Initializing speech engine...
[2026-08-25 00:18:17,497.497 INFO    ] 2026-08-25 00:18:17
[2026-08-25 00:18:17,783.783 INFO    ] 2026-08-25 00:18:17
[2026-08-25 00:18:17,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:18:18,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:18:18,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:18:18,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:18:18,264.264 INFO    ] time= 25/08/2026 00:18:18
[2026-08-25 00:18:18,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:18:18,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:18:18,495.495 INFO    ] No existing commands found in stream
[2026-08-25 00:18:23,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:18:23,527.527 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 00:18:24,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:18:24,047.047 INFO    ] Checking for system updates...
[2026-08-25 00:18:24,083.083 INFO    ] 200
[2026-08-25 00:18:24,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:24,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:24,142.142 INFO    ] No update needed
[2026-08-25 00:18:24,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 00:18:24,192.192 INFO    ] 200
[2026-08-25 00:18:24,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:24,240.240 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:18:24,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:24,290.290 INFO    ] No camera update needed
[2026-08-25 00:18:24,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:18:24,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:18:24,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:18:24,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:18:26,350.350 INFO    ] ================================================
[2026-08-25 00:18:26,367.367 INFO    ] Launching Daemon at Tue Aug 25 00:18:26 IST 2026
[2026-08-25 00:18:26,379.379 INFO    ] ================================================
[2026-08-25 00:18:26,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:18:26
[2026-08-25 00:18:27,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:18:27,841.841 INFO    ] Initializing speech engine...
[2026-08-25 00:18:27,866.866 INFO    ] 2026-08-25 00:18:27
[2026-08-25 00:18:28,134.134 INFO    ] 2026-08-25 00:18:28
[2026-08-25 00:18:28,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:18:28,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:18:28,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:18:28,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:18:28,525.525 INFO    ] time= 25/08/2026 00:18:28
[2026-08-25 00:18:28,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:18:28,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:18:28,632.632 INFO    ] No existing commands found in stream
[2026-08-25 00:18:33,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:18:33,647.647 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 00:18:36,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:18:36,752.752 INFO    ] Checking for system updates...
[2026-08-25 00:18:36,790.790 INFO    ] 200
[2026-08-25 00:18:36,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:36,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:36,852.852 INFO    ] No update needed
[2026-08-25 00:18:36,854.854 INFO    ] Checking for camera pi updates...
[2026-08-25 00:18:36,888.888 INFO    ] 200
[2026-08-25 00:18:36,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:36,930.930 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:18:36,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:18:36,977.977 INFO    ] No camera update needed
[2026-08-25 00:18:36,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:18:36,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:18:36,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:18:36,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:18:39,030.030 INFO    ] ================================================
[2026-08-25 00:18:39,046.046 INFO    ] Launching Daemon at Tue Aug 25 00:18:39 IST 2026
[2026-08-25 00:18:39,056.056 INFO    ] ================================================
[2026-08-25 00:18:39,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:18:39
[2026-08-25 00:18:40,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:18:40,653.653 INFO    ] Initializing speech engine...
[2026-08-25 00:18:40,660.660 INFO    ] 2026-08-25 00:18:40
[2026-08-25 00:18:40,981.981 INFO    ] 2026-08-25 00:18:40
[2026-08-25 00:18:41,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:18:41,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:18:41,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:18:41,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:18:41,404.404 INFO    ] time= 25/08/2026 00:18:41
[2026-08-25 00:18:41,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:18:41,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:18:41,627.627 INFO    ] No existing commands found in stream
[2026-08-25 00:18:46,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:18:46,657.657 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 00:18:49,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:18:49,090.090 INFO    ] Checking for system updates...
[2026-08-25 00:18:49,128.128 INFO    ] 200
[2026-08-25 00:18:49,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:49,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:18:49,192.192 INFO    ] No update needed
[2026-08-25 00:18:49,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 00:18:49,228.228 INFO    ] 200
[2026-08-25 00:18:49,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:18:49,274.274 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:18:49,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:18:49,322.322 INFO    ] No camera update needed
[2026-08-25 00:18:49,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:18:49,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:18:49,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:18:49,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:18:51,377.377 INFO    ] ================================================
[2026-08-25 00:18:51,392.392 INFO    ] Launching Daemon at Tue Aug 25 00:18:51 IST 2026
[2026-08-25 00:18:51,403.403 INFO    ] ================================================
[2026-08-25 00:18:51,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:18:51
[2026-08-25 00:18:52,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:18:52,853.853 INFO    ] Initializing speech engine...
[2026-08-25 00:18:52,861.861 INFO    ] 2026-08-25 00:18:52
[2026-08-25 00:18:53,131.131 INFO    ] 2026-08-25 00:18:53
[2026-08-25 00:18:53,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:18:53,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:18:53,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:18:53,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:18:53,578.578 INFO    ] time= 25/08/2026 00:18:53
[2026-08-25 00:18:53,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:18:53,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:18:53,801.801 INFO    ] No existing commands found in stream
[2026-08-25 00:18:58,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:18:58,824.824 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 00:19:01,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:19:01,755.755 INFO    ] Checking for system updates...
[2026-08-25 00:19:01,818.818 INFO    ] 200
[2026-08-25 00:19:01,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:01,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:19:01,939.939 INFO    ] No update needed
[2026-08-25 00:19:01,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 00:19:02,005.005 INFO    ] 200
[2026-08-25 00:19:02,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:02,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:19:02,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:19:02,143.143 INFO    ] No camera update needed
[2026-08-25 00:19:02,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:19:02,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:19:02,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:19:02,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:19:04,229.229 INFO    ] ================================================
[2026-08-25 00:19:04,244.244 INFO    ] Launching Daemon at Tue Aug 25 00:19:04 IST 2026
[2026-08-25 00:19:04,255.255 INFO    ] ================================================
[2026-08-25 00:19:04,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:19:04
[2026-08-25 00:19:05,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:19:05,866.866 INFO    ] Initializing speech engine...
[2026-08-25 00:19:05,874.874 INFO    ] 2026-08-25 00:19:05
[2026-08-25 00:19:06,144.144 INFO    ] 2026-08-25 00:19:06
[2026-08-25 00:19:06,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:19:06,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:19:06,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:19:06,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:19:06,627.627 INFO    ] time= 25/08/2026 00:19:06
[2026-08-25 00:19:06,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:19:06,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:19:06,882.882 INFO    ] No existing commands found in stream
[2026-08-25 00:19:11,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:19:11,896.896 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 00:19:16,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:19:16,229.229 INFO    ] Checking for system updates...
[2026-08-25 00:19:16,268.268 INFO    ] 200
[2026-08-25 00:19:16,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:16,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:19:16,326.326 INFO    ] No update needed
[2026-08-25 00:19:16,329.329 INFO    ] Checking for camera pi updates...
[2026-08-25 00:19:16,362.362 INFO    ] 200
[2026-08-25 00:19:16,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:16,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:19:16,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:19:16,455.455 INFO    ] No camera update needed
[2026-08-25 00:19:16,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:19:16,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:19:16,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:19:16,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:19:18,510.510 INFO    ] ================================================
[2026-08-25 00:19:18,526.526 INFO    ] Launching Daemon at Tue Aug 25 00:19:18 IST 2026
[2026-08-25 00:19:18,537.537 INFO    ] ================================================
[2026-08-25 00:19:19,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:19:19
[2026-08-25 00:19:19,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:19:19,952.952 INFO    ] Initializing speech engine...
[2026-08-25 00:19:19,961.961 INFO    ] 2026-08-25 00:19:19
[2026-08-25 00:19:20,251.251 INFO    ] 2026-08-25 00:19:20
[2026-08-25 00:19:20,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:19:20,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:19:20,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:19:20,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:19:20,669.669 INFO    ] time= 25/08/2026 00:19:20
[2026-08-25 00:19:20,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:19:20,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:19:20,843.843 INFO    ] No existing commands found in stream
[2026-08-25 00:19:25,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:19:25,876.876 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 00:19:28,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:19:28,094.094 INFO    ] Checking for system updates...
[2026-08-25 00:19:28,130.130 INFO    ] 200
[2026-08-25 00:19:28,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:28,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:19:28,187.187 INFO    ] No update needed
[2026-08-25 00:19:28,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 00:19:28,222.222 INFO    ] 200
[2026-08-25 00:19:28,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:28,268.268 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:19:28,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:19:28,319.319 INFO    ] No camera update needed
[2026-08-25 00:19:28,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:19:28,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:19:28,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:19:28,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:19:30,373.373 INFO    ] ================================================
[2026-08-25 00:19:30,388.388 INFO    ] Launching Daemon at Tue Aug 25 00:19:30 IST 2026
[2026-08-25 00:19:30,398.398 INFO    ] ================================================
[2026-08-25 00:19:30,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:19:30
[2026-08-25 00:19:31,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:19:31,939.939 INFO    ] Initializing speech engine...
[2026-08-25 00:19:31,947.947 INFO    ] 2026-08-25 00:19:31
[2026-08-25 00:19:32,213.213 INFO    ] 2026-08-25 00:19:32
[2026-08-25 00:19:32,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:19:32,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:19:32,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:19:32,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:19:32,711.711 INFO    ] time= 25/08/2026 00:19:32
[2026-08-25 00:19:32,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:19:32,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:19:32,935.935 INFO    ] No existing commands found in stream
[2026-08-25 00:19:37,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:19:37,967.967 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 00:19:38,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:19:38,911.911 INFO    ] Checking for system updates...
[2026-08-25 00:19:38,947.947 INFO    ] 200
[2026-08-25 00:19:38,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:39,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:19:39,008.008 INFO    ] No update needed
[2026-08-25 00:19:39,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 00:19:39,044.044 INFO    ] 200
[2026-08-25 00:19:39,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:39,091.091 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:19:39,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:19:39,144.144 INFO    ] No camera update needed
[2026-08-25 00:19:39,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:19:39,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:19:39,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:19:39,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:19:41,199.199 INFO    ] ================================================
[2026-08-25 00:19:41,215.215 INFO    ] Launching Daemon at Tue Aug 25 00:19:41 IST 2026
[2026-08-25 00:19:41,226.226 INFO    ] ================================================
[2026-08-25 00:19:41,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:19:41
[2026-08-25 00:19:42,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:19:42,671.671 INFO    ] Initializing speech engine...
[2026-08-25 00:19:42,684.684 INFO    ] 2026-08-25 00:19:42
[2026-08-25 00:19:42,947.947 INFO    ] 2026-08-25 00:19:42
[2026-08-25 00:19:42,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:19:43,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:19:43,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:19:43,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:19:43,354.354 INFO    ] time= 25/08/2026 00:19:43
[2026-08-25 00:19:43,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:19:43,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:19:43,515.515 INFO    ] No existing commands found in stream
[2026-08-25 00:19:48,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:19:48,530.530 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 00:19:49,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:19:49,883.883 INFO    ] Checking for system updates...
[2026-08-25 00:19:49,928.928 INFO    ] 200
[2026-08-25 00:19:49,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:49,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:19:49,997.997 INFO    ] No update needed
[2026-08-25 00:19:49,999.999 INFO    ] Checking for camera pi updates...
[2026-08-25 00:19:50,038.038 INFO    ] 200
[2026-08-25 00:19:50,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:19:50,088.088 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:19:50,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:19:50,239.239 INFO    ] No camera update needed
[2026-08-25 00:19:50,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:19:50,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:19:50,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:19:50,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:19:52,300.300 INFO    ] ================================================
[2026-08-25 00:19:52,315.315 INFO    ] Launching Daemon at Tue Aug 25 00:19:52 IST 2026
[2026-08-25 00:19:52,326.326 INFO    ] ================================================
[2026-08-25 00:19:52,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:19:52
[2026-08-25 00:19:53,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:19:53,750.750 INFO    ] Initializing speech engine...
[2026-08-25 00:19:53,766.766 INFO    ] 2026-08-25 00:19:53
[2026-08-25 00:19:54,050.050 INFO    ] 2026-08-25 00:19:54
[2026-08-25 00:19:54,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:19:54,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:19:54,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:19:54,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:19:54,431.431 INFO    ] time= 25/08/2026 00:19:54
[2026-08-25 00:19:54,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:19:54,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:19:54,559.559 INFO    ] No existing commands found in stream
[2026-08-25 00:19:59,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:19:59,658.658 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 00:20:02,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:20:02,307.307 INFO    ] Checking for system updates...
[2026-08-25 00:20:02,488.488 INFO    ] 200
[2026-08-25 00:20:02,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:02,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:02,710.710 INFO    ] No update needed
[2026-08-25 00:20:02,713.713 INFO    ] Checking for camera pi updates...
[2026-08-25 00:20:02,827.827 INFO    ] 200
[2026-08-25 00:20:02,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:02,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:20:03,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:03,045.045 INFO    ] No camera update needed
[2026-08-25 00:20:03,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:20:03,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:20:03,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:20:03,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:20:05,118.118 INFO    ] ================================================
[2026-08-25 00:20:05,133.133 INFO    ] Launching Daemon at Tue Aug 25 00:20:05 IST 2026
[2026-08-25 00:20:05,144.144 INFO    ] ================================================
[2026-08-25 00:20:05,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:20:05
[2026-08-25 00:20:06,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:20:06,773.773 INFO    ] Initializing speech engine...
[2026-08-25 00:20:06,780.780 INFO    ] 2026-08-25 00:20:06
[2026-08-25 00:20:07,069.069 INFO    ] 2026-08-25 00:20:07
[2026-08-25 00:20:07,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:20:07,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:20:07,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:20:07,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:20:07,567.567 INFO    ] time= 25/08/2026 00:20:07
[2026-08-25 00:20:07,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:20:07,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:20:07,767.767 INFO    ] No existing commands found in stream
[2026-08-25 00:20:12,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:20:12,781.781 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 00:20:15,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:20:15,742.742 INFO    ] Checking for system updates...
[2026-08-25 00:20:15,787.787 INFO    ] 200
[2026-08-25 00:20:15,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:15,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:15,865.865 INFO    ] No update needed
[2026-08-25 00:20:15,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 00:20:15,909.909 INFO    ] 200
[2026-08-25 00:20:15,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:15,955.955 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:20:16,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:16,006.006 INFO    ] No camera update needed
[2026-08-25 00:20:16,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:20:16,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:20:16,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:20:16,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:20:18,068.068 INFO    ] ================================================
[2026-08-25 00:20:18,083.083 INFO    ] Launching Daemon at Tue Aug 25 00:20:18 IST 2026
[2026-08-25 00:20:18,095.095 INFO    ] ================================================
[2026-08-25 00:20:18,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:20:18
[2026-08-25 00:20:19,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:20:19,588.588 INFO    ] Initializing speech engine...
[2026-08-25 00:20:19,597.597 INFO    ] 2026-08-25 00:20:19
[2026-08-25 00:20:19,855.855 INFO    ] 2026-08-25 00:20:19
[2026-08-25 00:20:19,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:20:20,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:20:20,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:20:20,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:20:20,314.314 INFO    ] time= 25/08/2026 00:20:20
[2026-08-25 00:20:20,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:20:20,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:20:20,489.489 INFO    ] No existing commands found in stream
[2026-08-25 00:20:25,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:20:25,504.504 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 00:20:27,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:20:27,166.166 INFO    ] Checking for system updates...
[2026-08-25 00:20:27,202.202 INFO    ] 200
[2026-08-25 00:20:27,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:27,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:27,266.266 INFO    ] No update needed
[2026-08-25 00:20:27,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 00:20:27,301.301 INFO    ] 200
[2026-08-25 00:20:27,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:27,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:20:27,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:27,395.395 INFO    ] No camera update needed
[2026-08-25 00:20:27,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:20:27,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:20:27,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:20:27,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:20:29,452.452 INFO    ] ================================================
[2026-08-25 00:20:29,467.467 INFO    ] Launching Daemon at Tue Aug 25 00:20:29 IST 2026
[2026-08-25 00:20:29,478.478 INFO    ] ================================================
[2026-08-25 00:20:30,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:20:30
[2026-08-25 00:20:30,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:20:30,940.940 INFO    ] Initializing speech engine...
[2026-08-25 00:20:30,946.946 INFO    ] 2026-08-25 00:20:30
[2026-08-25 00:20:31,195.195 INFO    ] 2026-08-25 00:20:31
[2026-08-25 00:20:31,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:20:31,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:20:31,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:20:31,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:20:31,570.570 INFO    ] time= 25/08/2026 00:20:31
[2026-08-25 00:20:31,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:20:31,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:20:31,756.756 INFO    ] No existing commands found in stream
[2026-08-25 00:20:36,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:20:36,775.775 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 00:20:38,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:20:38,783.783 INFO    ] Checking for system updates...
[2026-08-25 00:20:38,820.820 INFO    ] 200
[2026-08-25 00:20:38,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:38,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:38,882.882 INFO    ] No update needed
[2026-08-25 00:20:38,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 00:20:38,920.920 INFO    ] 200
[2026-08-25 00:20:38,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:38,967.967 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:20:39,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:20:39,016.016 INFO    ] No camera update needed
[2026-08-25 00:20:39,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:20:39,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:20:39,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:20:39,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:20:41,072.072 INFO    ] ================================================
[2026-08-25 00:20:41,088.088 INFO    ] Launching Daemon at Tue Aug 25 00:20:41 IST 2026
[2026-08-25 00:20:41,100.100 INFO    ] ================================================
[2026-08-25 00:20:41,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:20:41
[2026-08-25 00:20:42,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:20:42,503.503 INFO    ] Initializing speech engine...
[2026-08-25 00:20:42,512.512 INFO    ] 2026-08-25 00:20:42
[2026-08-25 00:20:42,800.800 INFO    ] 2026-08-25 00:20:42
[2026-08-25 00:20:42,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:20:43,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:20:43,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:20:43,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:20:43,209.209 INFO    ] time= 25/08/2026 00:20:43
[2026-08-25 00:20:43,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:20:43,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:20:43,391.391 INFO    ] No existing commands found in stream
[2026-08-25 00:20:48,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:20:48,424.424 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 00:20:51,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:20:51,243.243 INFO    ] Checking for system updates...
[2026-08-25 00:20:51,278.278 INFO    ] 200
[2026-08-25 00:20:51,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:51,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:20:51,340.340 INFO    ] No update needed
[2026-08-25 00:20:51,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 00:20:51,375.375 INFO    ] 200
[2026-08-25 00:20:51,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:20:51,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:20:51,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:20:51,471.471 INFO    ] No camera update needed
[2026-08-25 00:20:51,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:20:51,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:20:51,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:20:51,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:20:53,526.526 INFO    ] ================================================
[2026-08-25 00:20:53,542.542 INFO    ] Launching Daemon at Tue Aug 25 00:20:53 IST 2026
[2026-08-25 00:20:53,553.553 INFO    ] ================================================
[2026-08-25 00:20:54,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:20:54
[2026-08-25 00:20:54,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:20:55,004.004 INFO    ] Initializing speech engine...
[2026-08-25 00:20:55,011.011 INFO    ] 2026-08-25 00:20:55
[2026-08-25 00:20:55,271.271 INFO    ] 2026-08-25 00:20:55
[2026-08-25 00:20:55,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:20:55,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:20:55,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:20:55,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:20:55,736.736 INFO    ] time= 25/08/2026 00:20:55
[2026-08-25 00:20:55,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:20:55,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:20:55,967.967 INFO    ] No existing commands found in stream
[2026-08-25 00:21:00,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:21:00,986.986 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 00:21:02,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:21:02,376.376 INFO    ] Checking for system updates...
[2026-08-25 00:21:02,420.420 INFO    ] 200
[2026-08-25 00:21:02,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:02,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:02,484.484 INFO    ] No update needed
[2026-08-25 00:21:02,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 00:21:02,527.527 INFO    ] 200
[2026-08-25 00:21:02,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:02,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:21:02,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:02,646.646 INFO    ] No camera update needed
[2026-08-25 00:21:02,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:21:02,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:21:02,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:21:02,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:21:04,716.716 INFO    ] ================================================
[2026-08-25 00:21:04,732.732 INFO    ] Launching Daemon at Tue Aug 25 00:21:04 IST 2026
[2026-08-25 00:21:04,743.743 INFO    ] ================================================
[2026-08-25 00:21:05,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:21:05
[2026-08-25 00:21:05,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:21:06,202.202 INFO    ] Initializing speech engine...
[2026-08-25 00:21:06,210.210 INFO    ] 2026-08-25 00:21:06
[2026-08-25 00:21:06,475.475 INFO    ] 2026-08-25 00:21:06
[2026-08-25 00:21:06,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:21:06,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:21:06,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:21:06,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:21:06,888.888 INFO    ] time= 25/08/2026 00:21:06
[2026-08-25 00:21:06,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:21:06,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:21:07,044.044 INFO    ] No existing commands found in stream
[2026-08-25 00:21:12,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:21:12,072.072 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 00:21:15,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:21:15,811.811 INFO    ] Checking for system updates...
[2026-08-25 00:21:15,846.846 INFO    ] 200
[2026-08-25 00:21:15,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:15,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:15,903.903 INFO    ] No update needed
[2026-08-25 00:21:15,906.906 INFO    ] Checking for camera pi updates...
[2026-08-25 00:21:15,942.942 INFO    ] 200
[2026-08-25 00:21:15,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:15,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:21:16,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:16,037.037 INFO    ] No camera update needed
[2026-08-25 00:21:16,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:21:16,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:21:16,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:21:16,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:21:18,091.091 INFO    ] ================================================
[2026-08-25 00:21:18,106.106 INFO    ] Launching Daemon at Tue Aug 25 00:21:18 IST 2026
[2026-08-25 00:21:18,117.117 INFO    ] ================================================
[2026-08-25 00:21:18,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:21:18
[2026-08-25 00:21:19,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:21:19,543.543 INFO    ] Initializing speech engine...
[2026-08-25 00:21:19,552.552 INFO    ] 2026-08-25 00:21:19
[2026-08-25 00:21:19,815.815 INFO    ] 2026-08-25 00:21:19
[2026-08-25 00:21:19,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:21:20,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:21:20,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:21:20,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:21:20,208.208 INFO    ] time= 25/08/2026 00:21:20
[2026-08-25 00:21:20,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:21:20,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:21:20,355.355 INFO    ] No existing commands found in stream
[2026-08-25 00:21:25,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:21:25,382.382 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 00:21:28,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:21:28,401.401 INFO    ] Checking for system updates...
[2026-08-25 00:21:28,439.439 INFO    ] 200
[2026-08-25 00:21:28,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:28,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:28,497.497 INFO    ] No update needed
[2026-08-25 00:21:28,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 00:21:28,535.535 INFO    ] 200
[2026-08-25 00:21:28,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:28,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:21:28,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:28,625.625 INFO    ] No camera update needed
[2026-08-25 00:21:28,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:21:28,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:21:28,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:21:28,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:21:30,680.680 INFO    ] ================================================
[2026-08-25 00:21:30,695.695 INFO    ] Launching Daemon at Tue Aug 25 00:21:30 IST 2026
[2026-08-25 00:21:30,706.706 INFO    ] ================================================
[2026-08-25 00:21:31,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:21:31
[2026-08-25 00:21:31,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:21:32,187.187 INFO    ] Initializing speech engine...
[2026-08-25 00:21:32,192.192 INFO    ] 2026-08-25 00:21:32
[2026-08-25 00:21:32,449.449 INFO    ] 2026-08-25 00:21:32
[2026-08-25 00:21:32,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:21:32,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:21:32,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:21:32,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:21:32,840.840 INFO    ] time= 25/08/2026 00:21:32
[2026-08-25 00:21:32,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:21:32,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:21:33,005.005 INFO    ] No existing commands found in stream
[2026-08-25 00:21:38,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:21:38,038.038 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 00:21:41,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:21:41,773.773 INFO    ] Checking for system updates...
[2026-08-25 00:21:41,812.812 INFO    ] 200
[2026-08-25 00:21:41,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:41,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:21:41,875.875 INFO    ] No update needed
[2026-08-25 00:21:41,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 00:21:41,910.910 INFO    ] 200
[2026-08-25 00:21:41,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:41,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:21:42,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:21:42,008.008 INFO    ] No camera update needed
[2026-08-25 00:21:42,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:21:42,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:21:42,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:21:42,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:21:44,063.063 INFO    ] ================================================
[2026-08-25 00:21:44,079.079 INFO    ] Launching Daemon at Tue Aug 25 00:21:44 IST 2026
[2026-08-25 00:21:44,090.090 INFO    ] ================================================
[2026-08-25 00:21:44,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:21:44
[2026-08-25 00:21:45,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:21:45,567.567 INFO    ] Initializing speech engine...
[2026-08-25 00:21:45,577.577 INFO    ] 2026-08-25 00:21:45
[2026-08-25 00:21:45,825.825 INFO    ] 2026-08-25 00:21:45
[2026-08-25 00:21:45,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:21:46,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:21:46,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:21:46,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:21:46,280.280 INFO    ] time= 25/08/2026 00:21:46
[2026-08-25 00:21:46,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:21:46,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:21:46,480.480 INFO    ] No existing commands found in stream
[2026-08-25 00:21:51,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:21:51,518.518 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 00:21:52,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:21:52,202.202 INFO    ] Checking for system updates...
[2026-08-25 00:21:52,238.238 INFO    ] 200
[2026-08-25 00:21:52,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:52,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:52,301.301 INFO    ] No update needed
[2026-08-25 00:21:52,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 00:21:52,337.337 INFO    ] 200
[2026-08-25 00:21:52,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:21:52,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:21:52,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:21:52,539.539 INFO    ] No camera update needed
[2026-08-25 00:21:52,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:21:52,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:21:52,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:21:52,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:21:54,597.597 INFO    ] ================================================
[2026-08-25 00:21:54,612.612 INFO    ] Launching Daemon at Tue Aug 25 00:21:54 IST 2026
[2026-08-25 00:21:54,624.624 INFO    ] ================================================
[2026-08-25 00:21:55,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:21:55
[2026-08-25 00:21:55,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:21:56,049.049 INFO    ] Initializing speech engine...
[2026-08-25 00:21:56,063.063 INFO    ] 2026-08-25 00:21:56
[2026-08-25 00:21:56,346.346 INFO    ] 2026-08-25 00:21:56
[2026-08-25 00:21:56,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:21:56,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:21:56,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:21:56,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:21:56,755.755 INFO    ] time= 25/08/2026 00:21:56
[2026-08-25 00:21:56,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:21:56,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:21:56,917.917 INFO    ] No existing commands found in stream
[2026-08-25 00:22:01,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:22:01,951.951 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 00:22:05,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:22:05,870.870 INFO    ] Checking for system updates...
[2026-08-25 00:22:05,906.906 INFO    ] 200
[2026-08-25 00:22:05,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:05,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:22:05,967.967 INFO    ] No update needed
[2026-08-25 00:22:05,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 00:22:06,013.013 INFO    ] 200
[2026-08-25 00:22:06,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:06,073.073 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:22:06,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:22:06,122.122 INFO    ] No camera update needed
[2026-08-25 00:22:06,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:22:06,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:22:06,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:22:06,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:22:08,180.180 INFO    ] ================================================
[2026-08-25 00:22:08,195.195 INFO    ] Launching Daemon at Tue Aug 25 00:22:08 IST 2026
[2026-08-25 00:22:08,206.206 INFO    ] ================================================
[2026-08-25 00:22:08,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:22:08
[2026-08-25 00:22:09,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:22:09,736.736 INFO    ] Initializing speech engine...
[2026-08-25 00:22:09,754.754 INFO    ] 2026-08-25 00:22:09
[2026-08-25 00:22:10,022.022 INFO    ] 2026-08-25 00:22:10
[2026-08-25 00:22:10,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:22:10,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:22:10,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:22:10,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:22:10,528.528 INFO    ] time= 25/08/2026 00:22:10
[2026-08-25 00:22:10,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:22:10,616.616 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:22:10,750.750 INFO    ] No existing commands found in stream
[2026-08-25 00:22:15,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:22:15,782.782 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 00:22:19,892.892 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:22:19,895.895 INFO    ] Checking for system updates...
[2026-08-25 00:22:19,932.932 INFO    ] 200
[2026-08-25 00:22:19,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:19,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:22:19,998.998 INFO    ] No update needed
[2026-08-25 00:22:20,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 00:22:20,036.036 INFO    ] 200
[2026-08-25 00:22:20,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:20,085.085 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:22:20,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:22:20,143.143 INFO    ] No camera update needed
[2026-08-25 00:22:20,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:22:20,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:22:20,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:22:20,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:22:22,203.203 INFO    ] ================================================
[2026-08-25 00:22:22,219.219 INFO    ] Launching Daemon at Tue Aug 25 00:22:22 IST 2026
[2026-08-25 00:22:22,230.230 INFO    ] ================================================
[2026-08-25 00:22:22,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:22:22
[2026-08-25 00:22:23,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:22:23,666.666 INFO    ] Initializing speech engine...
[2026-08-25 00:22:23,675.675 INFO    ] 2026-08-25 00:22:23
[2026-08-25 00:22:23,931.931 INFO    ] 2026-08-25 00:22:23
[2026-08-25 00:22:23,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:22:24,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:22:24,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:22:24,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:22:24,425.425 INFO    ] time= 25/08/2026 00:22:24
[2026-08-25 00:22:24,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:22:24,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:22:24,636.636 INFO    ] No existing commands found in stream
[2026-08-25 00:22:29,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:22:29,653.653 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 00:22:31,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:22:31,423.423 INFO    ] Checking for system updates...
[2026-08-25 00:22:31,461.461 INFO    ] 200
[2026-08-25 00:22:31,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:31,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:22:31,532.532 INFO    ] No update needed
[2026-08-25 00:22:31,535.535 INFO    ] Checking for camera pi updates...
[2026-08-25 00:22:31,571.571 INFO    ] 200
[2026-08-25 00:22:31,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:31,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:22:31,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:22:31,673.673 INFO    ] No camera update needed
[2026-08-25 00:22:31,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:22:31,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:22:31,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:22:31,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:22:33,731.731 INFO    ] ================================================
[2026-08-25 00:22:33,747.747 INFO    ] Launching Daemon at Tue Aug 25 00:22:33 IST 2026
[2026-08-25 00:22:33,757.757 INFO    ] ================================================
[2026-08-25 00:22:34,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:22:34
[2026-08-25 00:22:34,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:22:35,243.243 INFO    ] Initializing speech engine...
[2026-08-25 00:22:35,252.252 INFO    ] 2026-08-25 00:22:35
[2026-08-25 00:22:35,533.533 INFO    ] 2026-08-25 00:22:35
[2026-08-25 00:22:35,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:22:35,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:22:35,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:22:36,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:22:36,090.090 INFO    ] time= 25/08/2026 00:22:36
[2026-08-25 00:22:36,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:22:36,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:22:36,243.243 INFO    ] No existing commands found in stream
[2026-08-25 00:22:41,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:22:41,263.263 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 00:22:44,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:22:44,887.887 INFO    ] Checking for system updates...
[2026-08-25 00:22:44,925.925 INFO    ] 200
[2026-08-25 00:22:44,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:44,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:22:44,986.986 INFO    ] No update needed
[2026-08-25 00:22:44,989.989 INFO    ] Checking for camera pi updates...
[2026-08-25 00:22:45,022.022 INFO    ] 200
[2026-08-25 00:22:45,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:45,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:22:45,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:22:45,111.111 INFO    ] No camera update needed
[2026-08-25 00:22:45,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:22:45,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:22:45,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:22:45,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:22:47,167.167 INFO    ] ================================================
[2026-08-25 00:22:47,182.182 INFO    ] Launching Daemon at Tue Aug 25 00:22:47 IST 2026
[2026-08-25 00:22:47,193.193 INFO    ] ================================================
[2026-08-25 00:22:47,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:22:47
[2026-08-25 00:22:48,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:22:48,665.665 INFO    ] Initializing speech engine...
[2026-08-25 00:22:48,673.673 INFO    ] 2026-08-25 00:22:48
[2026-08-25 00:22:48,933.933 INFO    ] 2026-08-25 00:22:48
[2026-08-25 00:22:48,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:22:49,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:22:49,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:22:49,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:22:49,391.391 INFO    ] time= 25/08/2026 00:22:49
[2026-08-25 00:22:49,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:22:49,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:22:49,631.631 INFO    ] No existing commands found in stream
[2026-08-25 00:22:54,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:22:54,646.646 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 00:22:57,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:22:57,583.583 INFO    ] Checking for system updates...
[2026-08-25 00:22:57,618.618 INFO    ] 200
[2026-08-25 00:22:57,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:57,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:22:57,675.675 INFO    ] No update needed
[2026-08-25 00:22:57,677.677 INFO    ] Checking for camera pi updates...
[2026-08-25 00:22:57,711.711 INFO    ] 200
[2026-08-25 00:22:57,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:22:57,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:22:57,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:22:57,811.811 INFO    ] No camera update needed
[2026-08-25 00:22:57,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:22:57,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:22:57,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:22:57,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:22:59,866.866 INFO    ] ================================================
[2026-08-25 00:22:59,882.882 INFO    ] Launching Daemon at Tue Aug 25 00:22:59 IST 2026
[2026-08-25 00:22:59,893.893 INFO    ] ================================================
[2026-08-25 00:23:00,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:23:00
[2026-08-25 00:23:01,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:23:01,657.657 INFO    ] Initializing speech engine...
[2026-08-25 00:23:01,672.672 INFO    ] 2026-08-25 00:23:01
[2026-08-25 00:23:02,057.057 INFO    ] 2026-08-25 00:23:02
[2026-08-25 00:23:02,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:23:02,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:23:02,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:23:02,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:23:02,543.543 INFO    ] time= 25/08/2026 00:23:02
[2026-08-25 00:23:02,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:23:02,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:23:02,707.707 INFO    ] No existing commands found in stream
[2026-08-25 00:23:07,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:23:07,730.730 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 00:23:08,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:23:08,333.333 INFO    ] Checking for system updates...
[2026-08-25 00:23:08,368.368 INFO    ] 200
[2026-08-25 00:23:08,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:08,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:08,437.437 INFO    ] No update needed
[2026-08-25 00:23:08,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 00:23:08,474.474 INFO    ] 200
[2026-08-25 00:23:08,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:08,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:23:08,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:08,574.574 INFO    ] No camera update needed
[2026-08-25 00:23:08,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:23:08,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:23:08,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:23:08,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:23:10,631.631 INFO    ] ================================================
[2026-08-25 00:23:10,647.647 INFO    ] Launching Daemon at Tue Aug 25 00:23:10 IST 2026
[2026-08-25 00:23:10,658.658 INFO    ] ================================================
[2026-08-25 00:23:11,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:23:11
[2026-08-25 00:23:11,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:23:12,115.115 INFO    ] Initializing speech engine...
[2026-08-25 00:23:12,126.126 INFO    ] 2026-08-25 00:23:12
[2026-08-25 00:23:12,387.387 INFO    ] 2026-08-25 00:23:12
[2026-08-25 00:23:12,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:23:12,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:23:12,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:23:12,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:23:12,870.870 INFO    ] time= 25/08/2026 00:23:12
[2026-08-25 00:23:12,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:23:12,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:23:13,086.086 INFO    ] No existing commands found in stream
[2026-08-25 00:23:18,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:23:18,112.112 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 00:23:22,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:23:22,235.235 INFO    ] Checking for system updates...
[2026-08-25 00:23:22,274.274 INFO    ] 200
[2026-08-25 00:23:22,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:22,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:22,331.331 INFO    ] No update needed
[2026-08-25 00:23:22,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 00:23:22,371.371 INFO    ] 200
[2026-08-25 00:23:22,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:22,420.420 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:23:22,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:22,470.470 INFO    ] No camera update needed
[2026-08-25 00:23:22,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:23:22,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:23:22,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:23:22,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:23:24,527.527 INFO    ] ================================================
[2026-08-25 00:23:24,542.542 INFO    ] Launching Daemon at Tue Aug 25 00:23:24 IST 2026
[2026-08-25 00:23:24,553.553 INFO    ] ================================================
[2026-08-25 00:23:25,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:23:25
[2026-08-25 00:23:25,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:23:26,225.225 INFO    ] Initializing speech engine...
[2026-08-25 00:23:26,238.238 INFO    ] 2026-08-25 00:23:26
[2026-08-25 00:23:26,517.517 INFO    ] 2026-08-25 00:23:26
[2026-08-25 00:23:26,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:23:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:23:26,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:23:26,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:23:26,924.924 INFO    ] time= 25/08/2026 00:23:26
[2026-08-25 00:23:26,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:23:26,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:23:27,043.043 INFO    ] No existing commands found in stream
[2026-08-25 00:23:32,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:23:32,078.078 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 00:23:33,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:23:33,761.761 INFO    ] Checking for system updates...
[2026-08-25 00:23:33,803.803 INFO    ] 200
[2026-08-25 00:23:33,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:33,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:33,860.860 INFO    ] No update needed
[2026-08-25 00:23:33,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 00:23:33,900.900 INFO    ] 200
[2026-08-25 00:23:33,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:33,943.943 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:23:33,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:34,000.000 INFO    ] No camera update needed
[2026-08-25 00:23:34,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:23:34,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:23:34,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:23:34,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:23:36,056.056 INFO    ] ================================================
[2026-08-25 00:23:36,072.072 INFO    ] Launching Daemon at Tue Aug 25 00:23:36 IST 2026
[2026-08-25 00:23:36,084.084 INFO    ] ================================================
[2026-08-25 00:23:36,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:23:36
[2026-08-25 00:23:37,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:23:37,553.553 INFO    ] Initializing speech engine...
[2026-08-25 00:23:37,560.560 INFO    ] 2026-08-25 00:23:37
[2026-08-25 00:23:37,821.821 INFO    ] 2026-08-25 00:23:37
[2026-08-25 00:23:37,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:23:38,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:23:38,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:23:38,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:23:38,289.289 INFO    ] time= 25/08/2026 00:23:38
[2026-08-25 00:23:38,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:23:38,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:23:38,521.521 INFO    ] No existing commands found in stream
[2026-08-25 00:23:43,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:23:43,553.553 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 00:23:44,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:23:44,922.922 INFO    ] Checking for system updates...
[2026-08-25 00:23:44,958.958 INFO    ] 200
[2026-08-25 00:23:44,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:45,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:45,016.016 INFO    ] No update needed
[2026-08-25 00:23:45,018.018 INFO    ] Checking for camera pi updates...
[2026-08-25 00:23:45,059.059 INFO    ] 200
[2026-08-25 00:23:45,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:45,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:23:45,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:23:45,147.147 INFO    ] No camera update needed
[2026-08-25 00:23:45,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:23:45,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:23:45,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:23:45,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:23:47,204.204 INFO    ] ================================================
[2026-08-25 00:23:47,220.220 INFO    ] Launching Daemon at Tue Aug 25 00:23:47 IST 2026
[2026-08-25 00:23:47,231.231 INFO    ] ================================================
[2026-08-25 00:23:47,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:23:47
[2026-08-25 00:23:48,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:23:48,635.635 INFO    ] Initializing speech engine...
[2026-08-25 00:23:48,641.641 INFO    ] 2026-08-25 00:23:48
[2026-08-25 00:23:48,940.940 INFO    ] 2026-08-25 00:23:48
[2026-08-25 00:23:48,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:23:49,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:23:49,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:23:49,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:23:49,325.325 INFO    ] time= 25/08/2026 00:23:49
[2026-08-25 00:23:49,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:23:49,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:23:49,451.451 INFO    ] No existing commands found in stream
[2026-08-25 00:23:54,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:23:54,472.472 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 00:23:58,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:23:58,853.853 INFO    ] Checking for system updates...
[2026-08-25 00:23:58,888.888 INFO    ] 200
[2026-08-25 00:23:58,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:58,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:23:58,952.952 INFO    ] No update needed
[2026-08-25 00:23:58,955.955 INFO    ] Checking for camera pi updates...
[2026-08-25 00:23:58,987.987 INFO    ] 200
[2026-08-25 00:23:58,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:23:59,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:23:59,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:23:59,190.190 INFO    ] No camera update needed
[2026-08-25 00:23:59,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:23:59,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:23:59,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:23:59,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:24:01,258.258 INFO    ] ================================================
[2026-08-25 00:24:01,293.293 INFO    ] Launching Daemon at Tue Aug 25 00:24:01 IST 2026
[2026-08-25 00:24:01,340.340 INFO    ] ================================================
[2026-08-25 00:24:02,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:24:02
[2026-08-25 00:24:02,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:24:03,002.002 INFO    ] Initializing speech engine...
[2026-08-25 00:24:03,014.014 INFO    ] 2026-08-25 00:24:03
[2026-08-25 00:24:03,285.285 INFO    ] 2026-08-25 00:24:03
[2026-08-25 00:24:03,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:24:03,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:24:03,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:24:03,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:24:03,689.689 INFO    ] time= 25/08/2026 00:24:03
[2026-08-25 00:24:03,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:24:03,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:24:03,800.800 INFO    ] No existing commands found in stream
[2026-08-25 00:24:08,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:24:08,833.833 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 00:24:09,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:24:09,704.704 INFO    ] Checking for system updates...
[2026-08-25 00:24:09,739.739 INFO    ] 200
[2026-08-25 00:24:09,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:09,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:09,803.803 INFO    ] No update needed
[2026-08-25 00:24:09,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 00:24:09,840.840 INFO    ] 200
[2026-08-25 00:24:09,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:09,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:24:09,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:09,951.951 INFO    ] No camera update needed
[2026-08-25 00:24:09,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:24:09,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:24:09,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:24:09,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:24:12,010.010 INFO    ] ================================================
[2026-08-25 00:24:12,025.025 INFO    ] Launching Daemon at Tue Aug 25 00:24:12 IST 2026
[2026-08-25 00:24:12,037.037 INFO    ] ================================================
[2026-08-25 00:24:12,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:24:12
[2026-08-25 00:24:13,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:24:13,498.498 INFO    ] Initializing speech engine...
[2026-08-25 00:24:13,513.513 INFO    ] 2026-08-25 00:24:13
[2026-08-25 00:24:13,802.802 INFO    ] 2026-08-25 00:24:13
[2026-08-25 00:24:13,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:24:14,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:24:14,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:24:14,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:24:14,187.187 INFO    ] time= 25/08/2026 00:24:14
[2026-08-25 00:24:14,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:24:14,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:24:14,316.316 INFO    ] No existing commands found in stream
[2026-08-25 00:24:19,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:24:19,335.335 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 00:24:21,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:24:21,712.712 INFO    ] Checking for system updates...
[2026-08-25 00:24:21,747.747 INFO    ] 200
[2026-08-25 00:24:21,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:21,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:21,804.804 INFO    ] No update needed
[2026-08-25 00:24:21,807.807 INFO    ] Checking for camera pi updates...
[2026-08-25 00:24:21,841.841 INFO    ] 200
[2026-08-25 00:24:21,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:21,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:24:21,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:21,940.940 INFO    ] No camera update needed
[2026-08-25 00:24:21,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:24:21,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:24:21,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:24:21,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:24:24,999.999 INFO    ] ================================================
[2026-08-25 00:24:24,015.015 INFO    ] Launching Daemon at Tue Aug 25 00:24:24 IST 2026
[2026-08-25 00:24:24,025.025 INFO    ] ================================================
[2026-08-25 00:24:24,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:24:24
[2026-08-25 00:24:25,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:24:25,424.424 INFO    ] Initializing speech engine...
[2026-08-25 00:24:25,432.432 INFO    ] 2026-08-25 00:24:25
[2026-08-25 00:24:25,727.727 INFO    ] 2026-08-25 00:24:25
[2026-08-25 00:24:25,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:24:25,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:24:25,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:24:26,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:24:26,112.112 INFO    ] time= 25/08/2026 00:24:26
[2026-08-25 00:24:26,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:24:26,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:24:26,236.236 INFO    ] No existing commands found in stream
[2026-08-25 00:24:31,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:24:31,251.251 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 00:24:33,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:24:33,590.590 INFO    ] Checking for system updates...
[2026-08-25 00:24:33,629.629 INFO    ] 200
[2026-08-25 00:24:33,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:33,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:33,687.687 INFO    ] No update needed
[2026-08-25 00:24:33,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 00:24:33,727.727 INFO    ] 200
[2026-08-25 00:24:33,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:33,770.770 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:24:33,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:33,828.828 INFO    ] No camera update needed
[2026-08-25 00:24:33,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:24:33,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:24:33,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:24:33,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:24:35,884.884 INFO    ] ================================================
[2026-08-25 00:24:35,899.899 INFO    ] Launching Daemon at Tue Aug 25 00:24:35 IST 2026
[2026-08-25 00:24:35,910.910 INFO    ] ================================================
[2026-08-25 00:24:36,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:24:36
[2026-08-25 00:24:37,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:24:37,396.396 INFO    ] Initializing speech engine...
[2026-08-25 00:24:37,407.407 INFO    ] 2026-08-25 00:24:37
[2026-08-25 00:24:37,719.719 INFO    ] 2026-08-25 00:24:37
[2026-08-25 00:24:37,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:24:38,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:24:38,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:24:38,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:24:38,222.222 INFO    ] time= 25/08/2026 00:24:38
[2026-08-25 00:24:38,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:24:38,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:24:38,379.379 INFO    ] No existing commands found in stream
[2026-08-25 00:24:43,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:24:43,410.410 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 00:24:46,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:24:46,112.112 INFO    ] Checking for system updates...
[2026-08-25 00:24:46,153.153 INFO    ] 200
[2026-08-25 00:24:46,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:46,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:46,219.219 INFO    ] No update needed
[2026-08-25 00:24:46,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 00:24:46,260.260 INFO    ] 200
[2026-08-25 00:24:46,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:24:46,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:24:46,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:24:46,361.361 INFO    ] No camera update needed
[2026-08-25 00:24:46,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:24:46,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:24:46,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:24:46,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:24:48,419.419 INFO    ] ================================================
[2026-08-25 00:24:48,435.435 INFO    ] Launching Daemon at Tue Aug 25 00:24:48 IST 2026
[2026-08-25 00:24:48,445.445 INFO    ] ================================================
[2026-08-25 00:24:49,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:24:49
[2026-08-25 00:24:49,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:24:49,876.876 INFO    ] Initializing speech engine...
[2026-08-25 00:24:49,885.885 INFO    ] 2026-08-25 00:24:49
[2026-08-25 00:24:50,141.141 INFO    ] 2026-08-25 00:24:50
[2026-08-25 00:24:50,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:24:50,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:24:50,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:24:50,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:24:50,562.562 INFO    ] time= 25/08/2026 00:24:50
[2026-08-25 00:24:50,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:24:50,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:24:50,792.792 INFO    ] No existing commands found in stream
[2026-08-25 00:24:55,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:24:55,821.821 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 00:25:00,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:25:00,154.154 INFO    ] Checking for system updates...
[2026-08-25 00:25:00,190.190 INFO    ] 200
[2026-08-25 00:25:00,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:00,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:00,246.246 INFO    ] No update needed
[2026-08-25 00:25:00,249.249 INFO    ] Checking for camera pi updates...
[2026-08-25 00:25:00,282.282 INFO    ] 200
[2026-08-25 00:25:00,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:00,325.325 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:25:00,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:00,374.374 INFO    ] No camera update needed
[2026-08-25 00:25:00,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:25:00,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:25:00,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:25:00,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:25:02,452.452 INFO    ] ================================================
[2026-08-25 00:25:02,472.472 INFO    ] Launching Daemon at Tue Aug 25 00:25:02 IST 2026
[2026-08-25 00:25:02,486.486 INFO    ] ================================================
[2026-08-25 00:25:03,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:25:03
[2026-08-25 00:25:03,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:25:04,024.024 INFO    ] Initializing speech engine...
[2026-08-25 00:25:04,032.032 INFO    ] 2026-08-25 00:25:04
[2026-08-25 00:25:04,293.293 INFO    ] 2026-08-25 00:25:04
[2026-08-25 00:25:04,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:25:04,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:25:04,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:25:04,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:25:04,747.747 INFO    ] time= 25/08/2026 00:25:04
[2026-08-25 00:25:04,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:25:04,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:25:04,956.956 INFO    ] No existing commands found in stream
[2026-08-25 00:25:09,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:25:09,986.986 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 00:25:11,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:25:11,084.084 INFO    ] Checking for system updates...
[2026-08-25 00:25:11,120.120 INFO    ] 200
[2026-08-25 00:25:11,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:11,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:25:11,180.180 INFO    ] No update needed
[2026-08-25 00:25:11,183.183 INFO    ] Checking for camera pi updates...
[2026-08-25 00:25:11,219.219 INFO    ] 200
[2026-08-25 00:25:11,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:11,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:25:11,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:25:11,319.319 INFO    ] No camera update needed
[2026-08-25 00:25:11,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:25:11,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:25:11,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:25:11,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:25:13,374.374 INFO    ] ================================================
[2026-08-25 00:25:13,390.390 INFO    ] Launching Daemon at Tue Aug 25 00:25:13 IST 2026
[2026-08-25 00:25:13,401.401 INFO    ] ================================================
[2026-08-25 00:25:13,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:25:13
[2026-08-25 00:25:14,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:25:14,849.849 INFO    ] Initializing speech engine...
[2026-08-25 00:25:14,875.875 INFO    ] 2026-08-25 00:25:14
[2026-08-25 00:25:15,148.148 INFO    ] 2026-08-25 00:25:15
[2026-08-25 00:25:15,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:25:15,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:25:15,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:25:15,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:25:15,570.570 INFO    ] time= 25/08/2026 00:25:15
[2026-08-25 00:25:15,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:25:15,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:25:15,653.653 INFO    ] No existing commands found in stream
[2026-08-25 00:25:20,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:25:20,669.669 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 00:25:21,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:25:21,374.374 INFO    ] Checking for system updates...
[2026-08-25 00:25:21,409.409 INFO    ] 200
[2026-08-25 00:25:21,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:21,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:25:21,467.467 INFO    ] No update needed
[2026-08-25 00:25:21,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 00:25:21,503.503 INFO    ] 200
[2026-08-25 00:25:21,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:21,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:25:21,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:25:21,593.593 INFO    ] No camera update needed
[2026-08-25 00:25:21,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:25:21,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:25:21,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:25:21,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:25:23,646.646 INFO    ] ================================================
[2026-08-25 00:25:23,661.661 INFO    ] Launching Daemon at Tue Aug 25 00:25:23 IST 2026
[2026-08-25 00:25:23,672.672 INFO    ] ================================================
[2026-08-25 00:25:24,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:25:24
[2026-08-25 00:25:24,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:25:25,065.065 INFO    ] Initializing speech engine...
[2026-08-25 00:25:25,073.073 INFO    ] 2026-08-25 00:25:25
[2026-08-25 00:25:25,347.347 INFO    ] 2026-08-25 00:25:25
[2026-08-25 00:25:25,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:25:25,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:25:25,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:25:25,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:25:25,726.726 INFO    ] time= 25/08/2026 00:25:25
[2026-08-25 00:25:25,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:25:25,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:25:25,909.909 INFO    ] No existing commands found in stream
[2026-08-25 00:25:30,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:25:30,937.937 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 00:25:31,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:25:31,423.423 INFO    ] Checking for system updates...
[2026-08-25 00:25:31,467.467 INFO    ] 200
[2026-08-25 00:25:31,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:31,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:31,538.538 INFO    ] No update needed
[2026-08-25 00:25:31,541.541 INFO    ] Checking for camera pi updates...
[2026-08-25 00:25:31,581.581 INFO    ] 200
[2026-08-25 00:25:31,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:31,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:25:31,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:31,691.691 INFO    ] No camera update needed
[2026-08-25 00:25:31,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:25:31,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:25:31,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:25:31,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:25:33,749.749 INFO    ] ================================================
[2026-08-25 00:25:33,764.764 INFO    ] Launching Daemon at Tue Aug 25 00:25:33 IST 2026
[2026-08-25 00:25:33,775.775 INFO    ] ================================================
[2026-08-25 00:25:34,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:25:34
[2026-08-25 00:25:35,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:25:35,413.413 INFO    ] Initializing speech engine...
[2026-08-25 00:25:35,420.420 INFO    ] 2026-08-25 00:25:35
[2026-08-25 00:25:35,702.702 INFO    ] 2026-08-25 00:25:35
[2026-08-25 00:25:35,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:25:35,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:25:35,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:25:36,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:25:36,145.145 INFO    ] time= 25/08/2026 00:25:36
[2026-08-25 00:25:36,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:25:36,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:25:36,397.397 INFO    ] No existing commands found in stream
[2026-08-25 00:25:41,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:25:41,428.428 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 00:25:42,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:25:42,522.522 INFO    ] Checking for system updates...
[2026-08-25 00:25:42,558.558 INFO    ] 200
[2026-08-25 00:25:42,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:42,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:42,615.615 INFO    ] No update needed
[2026-08-25 00:25:42,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 00:25:42,650.650 INFO    ] 200
[2026-08-25 00:25:42,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:42,697.697 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:25:42,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:42,745.745 INFO    ] No camera update needed
[2026-08-25 00:25:42,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:25:42,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:25:42,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:25:42,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:25:44,798.798 INFO    ] ================================================
[2026-08-25 00:25:44,813.813 INFO    ] Launching Daemon at Tue Aug 25 00:25:44 IST 2026
[2026-08-25 00:25:44,824.824 INFO    ] ================================================
[2026-08-25 00:25:45,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:25:45
[2026-08-25 00:25:46,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:25:46,269.269 INFO    ] Initializing speech engine...
[2026-08-25 00:25:46,287.287 INFO    ] 2026-08-25 00:25:46
[2026-08-25 00:25:46,538.538 INFO    ] 2026-08-25 00:25:46
[2026-08-25 00:25:46,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:25:46,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:25:46,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:25:46,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:25:47,034.034 INFO    ] time= 25/08/2026 00:25:46
[2026-08-25 00:25:47,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:25:47,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:25:47,242.242 INFO    ] No existing commands found in stream
[2026-08-25 00:25:52,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:25:52,261.261 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 00:25:52,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:25:52,740.740 INFO    ] Checking for system updates...
[2026-08-25 00:25:52,775.775 INFO    ] 200
[2026-08-25 00:25:52,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:52,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:52,840.840 INFO    ] No update needed
[2026-08-25 00:25:52,842.842 INFO    ] Checking for camera pi updates...
[2026-08-25 00:25:52,876.876 INFO    ] 200
[2026-08-25 00:25:52,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:25:52,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:25:52,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:25:52,972.972 INFO    ] No camera update needed
[2026-08-25 00:25:52,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:25:52,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:25:52,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:25:52,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:25:55,027.027 INFO    ] ================================================
[2026-08-25 00:25:55,042.042 INFO    ] Launching Daemon at Tue Aug 25 00:25:55 IST 2026
[2026-08-25 00:25:55,053.053 INFO    ] ================================================
[2026-08-25 00:25:55,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:25:55
[2026-08-25 00:25:56,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:25:56,467.467 INFO    ] Initializing speech engine...
[2026-08-25 00:25:56,485.485 INFO    ] 2026-08-25 00:25:56
[2026-08-25 00:25:56,737.737 INFO    ] 2026-08-25 00:25:56
[2026-08-25 00:25:56,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:25:57,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:25:57,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:25:57,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:25:57,210.210 INFO    ] time= 25/08/2026 00:25:57
[2026-08-25 00:25:57,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:25:57,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:25:57,441.441 INFO    ] No existing commands found in stream
[2026-08-25 00:26:02,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:26:02,470.470 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 00:26:05,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:26:05,524.524 INFO    ] Checking for system updates...
[2026-08-25 00:26:05,564.564 INFO    ] 200
[2026-08-25 00:26:05,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:05,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:05,630.630 INFO    ] No update needed
[2026-08-25 00:26:05,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 00:26:05,666.666 INFO    ] 200
[2026-08-25 00:26:05,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:05,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:26:05,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:05,759.759 INFO    ] No camera update needed
[2026-08-25 00:26:05,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:26:05,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:26:05,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:26:05,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:26:07,814.814 INFO    ] ================================================
[2026-08-25 00:26:07,829.829 INFO    ] Launching Daemon at Tue Aug 25 00:26:07 IST 2026
[2026-08-25 00:26:07,840.840 INFO    ] ================================================
[2026-08-25 00:26:08,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:26:08
[2026-08-25 00:26:09,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:26:09,386.386 INFO    ] Initializing speech engine...
[2026-08-25 00:26:09,401.401 INFO    ] 2026-08-25 00:26:09
[2026-08-25 00:26:09,719.719 INFO    ] 2026-08-25 00:26:09
[2026-08-25 00:26:09,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:26:09,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:26:09,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:26:10,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:26:10,223.223 INFO    ] time= 25/08/2026 00:26:10
[2026-08-25 00:26:10,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:26:10,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:26:10,386.386 INFO    ] No existing commands found in stream
[2026-08-25 00:26:15,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:26:15,419.419 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 00:26:19,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:26:19,115.115 INFO    ] Checking for system updates...
[2026-08-25 00:26:19,156.156 INFO    ] 200
[2026-08-25 00:26:19,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:19,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:26:19,221.221 INFO    ] No update needed
[2026-08-25 00:26:19,223.223 INFO    ] Checking for camera pi updates...
[2026-08-25 00:26:19,262.262 INFO    ] 200
[2026-08-25 00:26:19,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:19,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:26:19,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:26:19,352.352 INFO    ] No camera update needed
[2026-08-25 00:26:19,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:26:19,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:26:19,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:26:19,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:26:21,408.408 INFO    ] ================================================
[2026-08-25 00:26:21,423.423 INFO    ] Launching Daemon at Tue Aug 25 00:26:21 IST 2026
[2026-08-25 00:26:21,435.435 INFO    ] ================================================
[2026-08-25 00:26:22,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:26:22
[2026-08-25 00:26:22,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:26:22,866.866 INFO    ] Initializing speech engine...
[2026-08-25 00:26:22,891.891 INFO    ] 2026-08-25 00:26:22
[2026-08-25 00:26:23,172.172 INFO    ] 2026-08-25 00:26:23
[2026-08-25 00:26:23,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:26:23,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:26:23,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:26:23,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:26:23,580.580 INFO    ] time= 25/08/2026 00:26:23
[2026-08-25 00:26:23,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:26:23,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:26:23,691.691 INFO    ] No existing commands found in stream
[2026-08-25 00:26:28,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:26:28,707.707 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 00:26:32,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:26:32,803.803 INFO    ] Checking for system updates...
[2026-08-25 00:26:32,843.843 INFO    ] 200
[2026-08-25 00:26:32,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:32,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:32,901.901 INFO    ] No update needed
[2026-08-25 00:26:32,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 00:26:32,941.941 INFO    ] 200
[2026-08-25 00:26:32,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:32,986.986 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:26:33,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:33,049.049 INFO    ] No camera update needed
[2026-08-25 00:26:33,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:26:33,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:26:33,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:26:33,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:26:35,103.103 INFO    ] ================================================
[2026-08-25 00:26:35,119.119 INFO    ] Launching Daemon at Tue Aug 25 00:26:35 IST 2026
[2026-08-25 00:26:35,129.129 INFO    ] ================================================
[2026-08-25 00:26:35,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:26:35
[2026-08-25 00:26:36,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:26:36,741.741 INFO    ] Initializing speech engine...
[2026-08-25 00:26:36,764.764 INFO    ] 2026-08-25 00:26:36
[2026-08-25 00:26:37,022.022 INFO    ] 2026-08-25 00:26:37
[2026-08-25 00:26:37,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:26:37,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:26:37,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:26:37,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:26:37,524.524 INFO    ] time= 25/08/2026 00:26:37
[2026-08-25 00:26:37,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:26:37,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:26:37,739.739 INFO    ] No existing commands found in stream
[2026-08-25 00:26:42,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:26:42,765.765 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 00:26:45,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:26:45,164.164 INFO    ] Checking for system updates...
[2026-08-25 00:26:45,200.200 INFO    ] 200
[2026-08-25 00:26:45,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:45,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:45,268.268 INFO    ] No update needed
[2026-08-25 00:26:45,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 00:26:45,310.310 INFO    ] 200
[2026-08-25 00:26:45,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:45,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:26:45,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:45,402.402 INFO    ] No camera update needed
[2026-08-25 00:26:45,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:26:45,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:26:45,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:26:45,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:26:47,461.461 INFO    ] ================================================
[2026-08-25 00:26:47,476.476 INFO    ] Launching Daemon at Tue Aug 25 00:26:47 IST 2026
[2026-08-25 00:26:47,486.486 INFO    ] ================================================
[2026-08-25 00:26:48,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:26:48
[2026-08-25 00:26:48,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:26:48,938.938 INFO    ] Initializing speech engine...
[2026-08-25 00:26:48,949.949 INFO    ] 2026-08-25 00:26:48
[2026-08-25 00:26:49,216.216 INFO    ] 2026-08-25 00:26:49
[2026-08-25 00:26:49,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:26:49,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:26:49,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:26:49,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:26:49,626.626 INFO    ] time= 25/08/2026 00:26:49
[2026-08-25 00:26:49,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:26:49,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:26:49,822.822 INFO    ] No existing commands found in stream
[2026-08-25 00:26:54,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:26:54,836.836 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 00:26:57,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:26:57,065.065 INFO    ] Checking for system updates...
[2026-08-25 00:26:57,105.105 INFO    ] 200
[2026-08-25 00:26:57,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:57,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:57,170.170 INFO    ] No update needed
[2026-08-25 00:26:57,173.173 INFO    ] Checking for camera pi updates...
[2026-08-25 00:26:57,210.210 INFO    ] 200
[2026-08-25 00:26:57,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:26:57,258.258 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:26:57,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:26:57,315.315 INFO    ] No camera update needed
[2026-08-25 00:26:57,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:26:57,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:26:57,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:26:57,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:26:59,372.372 INFO    ] ================================================
[2026-08-25 00:26:59,387.387 INFO    ] Launching Daemon at Tue Aug 25 00:26:59 IST 2026
[2026-08-25 00:26:59,399.399 INFO    ] ================================================
[2026-08-25 00:26:59,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:26:59
[2026-08-25 00:27:00,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:27:00,812.812 INFO    ] Initializing speech engine...
[2026-08-25 00:27:00,821.821 INFO    ] 2026-08-25 00:27:00
[2026-08-25 00:27:01,130.130 INFO    ] 2026-08-25 00:27:01
[2026-08-25 00:27:01,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:27:01,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:27:01,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:27:01,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:27:01,590.590 INFO    ] time= 25/08/2026 00:27:01
[2026-08-25 00:27:01,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:27:01,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:27:01,685.685 INFO    ] No existing commands found in stream
[2026-08-25 00:27:06,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:27:06,730.730 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 00:27:11,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:27:11,172.172 INFO    ] Checking for system updates...
[2026-08-25 00:27:11,209.209 INFO    ] 200
[2026-08-25 00:27:11,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:11,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:27:11,266.266 INFO    ] No update needed
[2026-08-25 00:27:11,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 00:27:11,302.302 INFO    ] 200
[2026-08-25 00:27:11,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:11,344.344 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:27:11,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:27:11,393.393 INFO    ] No camera update needed
[2026-08-25 00:27:11,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:27:11,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:27:11,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:27:11,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:27:13,449.449 INFO    ] ================================================
[2026-08-25 00:27:13,464.464 INFO    ] Launching Daemon at Tue Aug 25 00:27:13 IST 2026
[2026-08-25 00:27:13,474.474 INFO    ] ================================================
[2026-08-25 00:27:14,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:27:14
[2026-08-25 00:27:14,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:27:14,942.942 INFO    ] Initializing speech engine...
[2026-08-25 00:27:14,949.949 INFO    ] 2026-08-25 00:27:14
[2026-08-25 00:27:15,211.211 INFO    ] 2026-08-25 00:27:15
[2026-08-25 00:27:15,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:27:15,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:27:15,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:27:15,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:27:15,703.703 INFO    ] time= 25/08/2026 00:27:15
[2026-08-25 00:27:15,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:27:15,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:27:15,910.910 INFO    ] No existing commands found in stream
[2026-08-25 00:27:20,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:27:20,927.927 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 00:27:23,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:27:23,035.035 INFO    ] Checking for system updates...
[2026-08-25 00:27:23,070.070 INFO    ] 200
[2026-08-25 00:27:23,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:23,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:27:23,127.127 INFO    ] No update needed
[2026-08-25 00:27:23,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 00:27:23,164.164 INFO    ] 200
[2026-08-25 00:27:23,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:23,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:27:23,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:27:23,272.272 INFO    ] No camera update needed
[2026-08-25 00:27:23,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:27:23,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:27:23,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:27:23,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:27:25,330.330 INFO    ] ================================================
[2026-08-25 00:27:25,345.345 INFO    ] Launching Daemon at Tue Aug 25 00:27:25 IST 2026
[2026-08-25 00:27:25,356.356 INFO    ] ================================================
[2026-08-25 00:27:26,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:27:26
[2026-08-25 00:27:26,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:27:26,975.975 INFO    ] Initializing speech engine...
[2026-08-25 00:27:26,984.984 INFO    ] 2026-08-25 00:27:26
[2026-08-25 00:27:27,245.245 INFO    ] 2026-08-25 00:27:27
[2026-08-25 00:27:27,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:27:27,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:27:27,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:27:27,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:27:27,729.729 INFO    ] time= 25/08/2026 00:27:27
[2026-08-25 00:27:27,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:27:27,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:27:27,923.923 INFO    ] No existing commands found in stream
[2026-08-25 00:27:32,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:27:32,952.952 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 00:27:36,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:27:36,466.466 INFO    ] Checking for system updates...
[2026-08-25 00:27:36,507.507 INFO    ] 200
[2026-08-25 00:27:36,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:36,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:27:36,571.571 INFO    ] No update needed
[2026-08-25 00:27:36,573.573 INFO    ] Checking for camera pi updates...
[2026-08-25 00:27:36,611.611 INFO    ] 200
[2026-08-25 00:27:36,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:36,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:27:36,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:27:36,702.702 INFO    ] No camera update needed
[2026-08-25 00:27:36,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:27:36,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:27:36,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:27:36,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:27:38,760.760 INFO    ] ================================================
[2026-08-25 00:27:38,776.776 INFO    ] Launching Daemon at Tue Aug 25 00:27:38 IST 2026
[2026-08-25 00:27:38,786.786 INFO    ] ================================================
[2026-08-25 00:27:39,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:27:39
[2026-08-25 00:27:39,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:27:40,246.246 INFO    ] Initializing speech engine...
[2026-08-25 00:27:40,259.259 INFO    ] 2026-08-25 00:27:40
[2026-08-25 00:27:40,526.526 INFO    ] 2026-08-25 00:27:40
[2026-08-25 00:27:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:27:40,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:27:40,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:27:40,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:27:40,977.977 INFO    ] time= 25/08/2026 00:27:40
[2026-08-25 00:27:41,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:27:41,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:27:41,197.197 INFO    ] No existing commands found in stream
[2026-08-25 00:27:46,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:27:46,223.223 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 00:27:50,171.171 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:27:50,174.174 INFO    ] Checking for system updates...
[2026-08-25 00:27:50,213.213 INFO    ] 200
[2026-08-25 00:27:50,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:50,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:27:50,270.270 INFO    ] No update needed
[2026-08-25 00:27:50,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 00:27:50,309.309 INFO    ] 200
[2026-08-25 00:27:50,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:27:50,353.353 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:27:50,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:27:50,399.399 INFO    ] No camera update needed
[2026-08-25 00:27:50,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:27:50,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:27:50,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:27:50,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:27:52,455.455 INFO    ] ================================================
[2026-08-25 00:27:52,469.469 INFO    ] Launching Daemon at Tue Aug 25 00:27:52 IST 2026
[2026-08-25 00:27:52,480.480 INFO    ] ================================================
[2026-08-25 00:27:53,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:27:53
[2026-08-25 00:27:53,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:27:53,902.902 INFO    ] Initializing speech engine...
[2026-08-25 00:27:53,912.912 INFO    ] 2026-08-25 00:27:53
[2026-08-25 00:27:54,159.159 INFO    ] 2026-08-25 00:27:54
[2026-08-25 00:27:54,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:27:54,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:27:54,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:27:54,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:27:54,635.635 INFO    ] time= 25/08/2026 00:27:54
[2026-08-25 00:27:54,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:27:54,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:27:54,866.866 INFO    ] No existing commands found in stream
[2026-08-25 00:27:59,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:27:59,895.895 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 00:28:00,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:28:00,886.886 INFO    ] Checking for system updates...
[2026-08-25 00:28:00,921.921 INFO    ] 200
[2026-08-25 00:28:00,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:00,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:28:00,979.979 INFO    ] No update needed
[2026-08-25 00:28:00,981.981 INFO    ] Checking for camera pi updates...
[2026-08-25 00:28:01,019.019 INFO    ] 200
[2026-08-25 00:28:01,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:01,067.067 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:28:01,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:28:01,143.143 INFO    ] No camera update needed
[2026-08-25 00:28:01,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:28:01,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:28:01,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:28:01,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:28:03,223.223 INFO    ] ================================================
[2026-08-25 00:28:03,238.238 INFO    ] Launching Daemon at Tue Aug 25 00:28:03 IST 2026
[2026-08-25 00:28:03,249.249 INFO    ] ================================================
[2026-08-25 00:28:03,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:28:03
[2026-08-25 00:28:04,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:28:04,885.885 INFO    ] Initializing speech engine...
[2026-08-25 00:28:04,895.895 INFO    ] 2026-08-25 00:28:04
[2026-08-25 00:28:05,177.177 INFO    ] 2026-08-25 00:28:05
[2026-08-25 00:28:05,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:28:05,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:28:05,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:28:05,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:28:05,730.730 INFO    ] time= 25/08/2026 00:28:05
[2026-08-25 00:28:05,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:28:05,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:28:05,901.901 INFO    ] No existing commands found in stream
[2026-08-25 00:28:10,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:28:10,947.947 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 00:28:14,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:28:14,425.425 INFO    ] Checking for system updates...
[2026-08-25 00:28:14,461.461 INFO    ] 200
[2026-08-25 00:28:14,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:14,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:28:14,528.528 INFO    ] No update needed
[2026-08-25 00:28:14,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 00:28:14,568.568 INFO    ] 200
[2026-08-25 00:28:14,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:14,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:28:14,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:28:14,756.756 INFO    ] No camera update needed
[2026-08-25 00:28:14,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:28:14,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:28:14,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:28:14,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:28:16,811.811 INFO    ] ================================================
[2026-08-25 00:28:16,826.826 INFO    ] Launching Daemon at Tue Aug 25 00:28:16 IST 2026
[2026-08-25 00:28:16,836.836 INFO    ] ================================================
[2026-08-25 00:28:17,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:28:17
[2026-08-25 00:28:18,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:28:18,299.299 INFO    ] Initializing speech engine...
[2026-08-25 00:28:18,307.307 INFO    ] 2026-08-25 00:28:18
[2026-08-25 00:28:18,568.568 INFO    ] 2026-08-25 00:28:18
[2026-08-25 00:28:18,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:28:18,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:28:18,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:28:18,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:28:19,037.037 INFO    ] time= 25/08/2026 00:28:18
[2026-08-25 00:28:19,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:28:19,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:28:19,255.255 INFO    ] No existing commands found in stream
[2026-08-25 00:28:24,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:28:24,279.279 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 00:28:24,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:28:24,765.765 INFO    ] Checking for system updates...
[2026-08-25 00:28:24,801.801 INFO    ] 200
[2026-08-25 00:28:24,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:24,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:28:24,864.864 INFO    ] No update needed
[2026-08-25 00:28:24,867.867 INFO    ] Checking for camera pi updates...
[2026-08-25 00:28:24,900.900 INFO    ] 200
[2026-08-25 00:28:24,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:24,943.943 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:28:24,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:28:24,992.992 INFO    ] No camera update needed
[2026-08-25 00:28:24,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:28:24,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:28:25,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:28:25,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:28:27,046.046 INFO    ] ================================================
[2026-08-25 00:28:27,061.061 INFO    ] Launching Daemon at Tue Aug 25 00:28:27 IST 2026
[2026-08-25 00:28:27,071.071 INFO    ] ================================================
[2026-08-25 00:28:27,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:28:27
[2026-08-25 00:28:28,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:28:28,599.599 INFO    ] Initializing speech engine...
[2026-08-25 00:28:28,607.607 INFO    ] 2026-08-25 00:28:28
[2026-08-25 00:28:28,896.896 INFO    ] 2026-08-25 00:28:28
[2026-08-25 00:28:28,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:28:29,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:28:29,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:28:29,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:28:29,443.443 INFO    ] time= 25/08/2026 00:28:29
[2026-08-25 00:28:29,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:28:29,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:28:29,608.608 INFO    ] No existing commands found in stream
[2026-08-25 00:28:34,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:28:34,638.638 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 00:28:35,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:28:35,795.795 INFO    ] Checking for system updates...
[2026-08-25 00:28:35,832.832 INFO    ] 200
[2026-08-25 00:28:35,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:35,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:28:35,890.890 INFO    ] No update needed
[2026-08-25 00:28:35,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 00:28:35,929.929 INFO    ] 200
[2026-08-25 00:28:35,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:35,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:28:36,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:28:36,037.037 INFO    ] No camera update needed
[2026-08-25 00:28:36,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:28:36,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:28:36,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:28:36,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:28:38,091.091 INFO    ] ================================================
[2026-08-25 00:28:38,106.106 INFO    ] Launching Daemon at Tue Aug 25 00:28:38 IST 2026
[2026-08-25 00:28:38,116.116 INFO    ] ================================================
[2026-08-25 00:28:38,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:28:38
[2026-08-25 00:28:39,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:28:39,729.729 INFO    ] Initializing speech engine...
[2026-08-25 00:28:39,737.737 INFO    ] 2026-08-25 00:28:39
[2026-08-25 00:28:40,007.007 INFO    ] 2026-08-25 00:28:40
[2026-08-25 00:28:40,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:28:40,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:28:40,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:28:40,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:28:40,498.498 INFO    ] time= 25/08/2026 00:28:40
[2026-08-25 00:28:40,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:28:40,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:28:40,719.719 INFO    ] No existing commands found in stream
[2026-08-25 00:28:45,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:28:45,750.750 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 00:28:47,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:28:47,414.414 INFO    ] Checking for system updates...
[2026-08-25 00:28:47,454.454 INFO    ] 200
[2026-08-25 00:28:47,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:47,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:28:47,517.517 INFO    ] No update needed
[2026-08-25 00:28:47,520.520 INFO    ] Checking for camera pi updates...
[2026-08-25 00:28:47,556.556 INFO    ] 200
[2026-08-25 00:28:47,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:28:47,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:28:47,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:28:47,660.660 INFO    ] No camera update needed
[2026-08-25 00:28:47,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:28:47,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:28:47,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:28:47,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:28:49,714.714 INFO    ] ================================================
[2026-08-25 00:28:49,729.729 INFO    ] Launching Daemon at Tue Aug 25 00:28:49 IST 2026
[2026-08-25 00:28:49,740.740 INFO    ] ================================================
[2026-08-25 00:28:50,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:28:50
[2026-08-25 00:28:50,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:28:51,248.248 INFO    ] Initializing speech engine...
[2026-08-25 00:28:51,261.261 INFO    ] 2026-08-25 00:28:51
[2026-08-25 00:28:51,570.570 INFO    ] 2026-08-25 00:28:51
[2026-08-25 00:28:51,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:28:51,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:28:51,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:28:52,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:28:52,097.097 INFO    ] time= 25/08/2026 00:28:52
[2026-08-25 00:28:52,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:28:52,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:28:52,269.269 INFO    ] No existing commands found in stream
[2026-08-25 00:28:57,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:28:57,303.303 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 00:29:01,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:29:01,799.799 INFO    ] Checking for system updates...
[2026-08-25 00:29:01,840.840 INFO    ] 200
[2026-08-25 00:29:01,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:01,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:29:01,905.905 INFO    ] No update needed
[2026-08-25 00:29:01,908.908 INFO    ] Checking for camera pi updates...
[2026-08-25 00:29:01,946.946 INFO    ] 200
[2026-08-25 00:29:01,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:02,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:29:02,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:29:02,072.072 INFO    ] No camera update needed
[2026-08-25 00:29:02,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:29:02,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:29:02,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:29:02,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:29:04,161.161 INFO    ] ================================================
[2026-08-25 00:29:04,176.176 INFO    ] Launching Daemon at Tue Aug 25 00:29:04 IST 2026
[2026-08-25 00:29:04,187.187 INFO    ] ================================================
[2026-08-25 00:29:04,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:29:04
[2026-08-25 00:29:05,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:29:05,633.633 INFO    ] Initializing speech engine...
[2026-08-25 00:29:05,639.639 INFO    ] 2026-08-25 00:29:05
[2026-08-25 00:29:05,898.898 INFO    ] 2026-08-25 00:29:05
[2026-08-25 00:29:05,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:29:06,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:29:06,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:29:06,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:29:06,437.437 INFO    ] time= 25/08/2026 00:29:06
[2026-08-25 00:29:06,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:29:06,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:29:06,585.585 INFO    ] No existing commands found in stream
[2026-08-25 00:29:11,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:29:11,603.603 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 00:29:13,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:29:13,471.471 INFO    ] Checking for system updates...
[2026-08-25 00:29:13,506.506 INFO    ] 200
[2026-08-25 00:29:13,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:13,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:29:13,569.569 INFO    ] No update needed
[2026-08-25 00:29:13,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 00:29:13,607.607 INFO    ] 200
[2026-08-25 00:29:13,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:13,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:29:13,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:29:13,708.708 INFO    ] No camera update needed
[2026-08-25 00:29:13,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:29:13,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:29:13,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:29:13,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:29:15,763.763 INFO    ] ================================================
[2026-08-25 00:29:15,778.778 INFO    ] Launching Daemon at Tue Aug 25 00:29:15 IST 2026
[2026-08-25 00:29:15,788.788 INFO    ] ================================================
[2026-08-25 00:29:16,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:29:16
[2026-08-25 00:29:16,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:29:17,187.187 INFO    ] Initializing speech engine...
[2026-08-25 00:29:17,212.212 INFO    ] 2026-08-25 00:29:17
[2026-08-25 00:29:17,484.484 INFO    ] 2026-08-25 00:29:17
[2026-08-25 00:29:17,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:29:17,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:29:17,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:29:17,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:29:17,889.889 INFO    ] time= 25/08/2026 00:29:17
[2026-08-25 00:29:17,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:29:17,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:29:18,031.031 INFO    ] No existing commands found in stream
[2026-08-25 00:29:23,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:29:23,064.064 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 00:29:27,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:29:27,093.093 INFO    ] Checking for system updates...
[2026-08-25 00:29:27,132.132 INFO    ] 200
[2026-08-25 00:29:27,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:27,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:29:27,194.194 INFO    ] No update needed
[2026-08-25 00:29:27,196.196 INFO    ] Checking for camera pi updates...
[2026-08-25 00:29:27,236.236 INFO    ] 200
[2026-08-25 00:29:27,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:27,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:29:27,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:29:27,335.335 INFO    ] No camera update needed
[2026-08-25 00:29:27,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:29:27,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:29:27,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:29:27,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:29:29,389.389 INFO    ] ================================================
[2026-08-25 00:29:29,405.405 INFO    ] Launching Daemon at Tue Aug 25 00:29:29 IST 2026
[2026-08-25 00:29:29,416.416 INFO    ] ================================================
[2026-08-25 00:29:30,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:29:30
[2026-08-25 00:29:30,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:29:31,013.013 INFO    ] Initializing speech engine...
[2026-08-25 00:29:31,026.026 INFO    ] 2026-08-25 00:29:31
[2026-08-25 00:29:31,302.302 INFO    ] 2026-08-25 00:29:31
[2026-08-25 00:29:31,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:29:31,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:29:31,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:29:31,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:29:31,797.797 INFO    ] time= 25/08/2026 00:29:31
[2026-08-25 00:29:31,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:29:31,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:29:31,992.992 INFO    ] No existing commands found in stream
[2026-08-25 00:29:37,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:29:37,029.029 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 00:29:41,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:29:41,005.005 INFO    ] Checking for system updates...
[2026-08-25 00:29:41,042.042 INFO    ] 200
[2026-08-25 00:29:41,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:41,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:29:41,100.100 INFO    ] No update needed
[2026-08-25 00:29:41,102.102 INFO    ] Checking for camera pi updates...
[2026-08-25 00:29:41,141.141 INFO    ] 200
[2026-08-25 00:29:41,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:41,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:29:41,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:29:41,243.243 INFO    ] No camera update needed
[2026-08-25 00:29:41,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:29:41,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:29:41,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:29:41,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:29:43,301.301 INFO    ] ================================================
[2026-08-25 00:29:43,316.316 INFO    ] Launching Daemon at Tue Aug 25 00:29:43 IST 2026
[2026-08-25 00:29:43,327.327 INFO    ] ================================================
[2026-08-25 00:29:43,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:29:43
[2026-08-25 00:29:44,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:29:44,950.950 INFO    ] Initializing speech engine...
[2026-08-25 00:29:44,962.962 INFO    ] 2026-08-25 00:29:44
[2026-08-25 00:29:45,268.268 INFO    ] 2026-08-25 00:29:45
[2026-08-25 00:29:45,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:29:45,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:29:45,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:29:45,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:29:45,774.774 INFO    ] time= 25/08/2026 00:29:45
[2026-08-25 00:29:45,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:29:45,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:29:45,934.934 INFO    ] No existing commands found in stream
[2026-08-25 00:29:50,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:29:50,968.968 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 00:29:54,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:29:54,034.034 INFO    ] Checking for system updates...
[2026-08-25 00:29:54,071.071 INFO    ] 200
[2026-08-25 00:29:54,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:54,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:29:54,136.136 INFO    ] No update needed
[2026-08-25 00:29:54,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 00:29:54,177.177 INFO    ] 200
[2026-08-25 00:29:54,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:29:54,230.230 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:29:54,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:29:54,279.279 INFO    ] No camera update needed
[2026-08-25 00:29:54,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:29:54,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:29:54,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:29:54,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:29:56,335.335 INFO    ] ================================================
[2026-08-25 00:29:56,351.351 INFO    ] Launching Daemon at Tue Aug 25 00:29:56 IST 2026
[2026-08-25 00:29:56,362.362 INFO    ] ================================================
[2026-08-25 00:29:56,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:29:56
[2026-08-25 00:29:57,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:29:57,775.775 INFO    ] Initializing speech engine...
[2026-08-25 00:29:57,788.788 INFO    ] 2026-08-25 00:29:57
[2026-08-25 00:29:58,040.040 INFO    ] 2026-08-25 00:29:58
[2026-08-25 00:29:58,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:29:58,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:29:58,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:29:58,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:29:58,521.521 INFO    ] time= 25/08/2026 00:29:58
[2026-08-25 00:29:58,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:29:58,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:29:58,756.756 INFO    ] No existing commands found in stream
[2026-08-25 00:30:03,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:30:03,779.779 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 00:30:09,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:30:09,119.119 INFO    ] Checking for system updates...
[2026-08-25 00:30:09,158.158 INFO    ] 200
[2026-08-25 00:30:09,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:09,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:30:09,217.217 INFO    ] No update needed
[2026-08-25 00:30:09,219.219 INFO    ] Checking for camera pi updates...
[2026-08-25 00:30:09,252.252 INFO    ] 200
[2026-08-25 00:30:09,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:09,295.295 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:30:09,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:30:09,354.354 INFO    ] No camera update needed
[2026-08-25 00:30:09,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:30:09,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:30:09,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:30:09,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:30:11,411.411 INFO    ] ================================================
[2026-08-25 00:30:11,427.427 INFO    ] Launching Daemon at Tue Aug 25 00:30:11 IST 2026
[2026-08-25 00:30:11,438.438 INFO    ] ================================================
[2026-08-25 00:30:12,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:30:12
[2026-08-25 00:30:12,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:30:13,049.049 INFO    ] Initializing speech engine...
[2026-08-25 00:30:13,063.063 INFO    ] 2026-08-25 00:30:13
[2026-08-25 00:30:13,375.375 INFO    ] 2026-08-25 00:30:13
[2026-08-25 00:30:13,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:30:13,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:30:13,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:30:13,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:30:13,881.881 INFO    ] time= 25/08/2026 00:30:13
[2026-08-25 00:30:13,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:30:13,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:30:14,037.037 INFO    ] No existing commands found in stream
[2026-08-25 00:30:19,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:30:19,060.060 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 00:30:21,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:30:21,038.038 INFO    ] Checking for system updates...
[2026-08-25 00:30:21,075.075 INFO    ] 200
[2026-08-25 00:30:21,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:21,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:30:21,133.133 INFO    ] No update needed
[2026-08-25 00:30:21,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 00:30:21,169.169 INFO    ] 200
[2026-08-25 00:30:21,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:21,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:30:21,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:30:21,367.367 INFO    ] No camera update needed
[2026-08-25 00:30:21,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:30:21,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:30:21,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:30:21,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:30:23,423.423 INFO    ] ================================================
[2026-08-25 00:30:23,438.438 INFO    ] Launching Daemon at Tue Aug 25 00:30:23 IST 2026
[2026-08-25 00:30:23,449.449 INFO    ] ================================================
[2026-08-25 00:30:24,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:30:24
[2026-08-25 00:30:24,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:30:25,058.058 INFO    ] Initializing speech engine...
[2026-08-25 00:30:25,066.066 INFO    ] 2026-08-25 00:30:25
[2026-08-25 00:30:25,318.318 INFO    ] 2026-08-25 00:30:25
[2026-08-25 00:30:25,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:30:25,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:30:25,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:30:25,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:30:25,819.819 INFO    ] time= 25/08/2026 00:30:25
[2026-08-25 00:30:25,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:30:25,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:30:26,039.039 INFO    ] No existing commands found in stream
[2026-08-25 00:30:31,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:30:31,065.065 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 00:30:35,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:30:35,423.423 INFO    ] Checking for system updates...
[2026-08-25 00:30:35,462.462 INFO    ] 200
[2026-08-25 00:30:35,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:35,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:30:35,526.526 INFO    ] No update needed
[2026-08-25 00:30:35,529.529 INFO    ] Checking for camera pi updates...
[2026-08-25 00:30:35,563.563 INFO    ] 200
[2026-08-25 00:30:35,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:35,612.612 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:30:35,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:30:35,674.674 INFO    ] No camera update needed
[2026-08-25 00:30:35,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:30:35,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:30:35,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:30:35,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:30:37,733.733 INFO    ] ================================================
[2026-08-25 00:30:37,749.749 INFO    ] Launching Daemon at Tue Aug 25 00:30:37 IST 2026
[2026-08-25 00:30:37,759.759 INFO    ] ================================================
[2026-08-25 00:30:38,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:30:38
[2026-08-25 00:30:38,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:30:39,205.205 INFO    ] Initializing speech engine...
[2026-08-25 00:30:39,214.214 INFO    ] 2026-08-25 00:30:39
[2026-08-25 00:30:39,464.464 INFO    ] 2026-08-25 00:30:39
[2026-08-25 00:30:39,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:30:39,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:30:39,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:30:39,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:30:39,960.960 INFO    ] time= 25/08/2026 00:30:39
[2026-08-25 00:30:40,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:30:40,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:30:40,170.170 INFO    ] No existing commands found in stream
[2026-08-25 00:30:45,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:30:45,189.189 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 00:30:47,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:30:47,338.338 INFO    ] Checking for system updates...
[2026-08-25 00:30:47,378.378 INFO    ] 200
[2026-08-25 00:30:47,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:47,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:30:47,443.443 INFO    ] No update needed
[2026-08-25 00:30:47,446.446 INFO    ] Checking for camera pi updates...
[2026-08-25 00:30:47,487.487 INFO    ] 200
[2026-08-25 00:30:47,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:47,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:30:47,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:30:47,592.592 INFO    ] No camera update needed
[2026-08-25 00:30:47,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:30:47,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:30:47,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:30:47,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:30:49,650.650 INFO    ] ================================================
[2026-08-25 00:30:49,665.665 INFO    ] Launching Daemon at Tue Aug 25 00:30:49 IST 2026
[2026-08-25 00:30:49,676.676 INFO    ] ================================================
[2026-08-25 00:30:50,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:30:50
[2026-08-25 00:30:50,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:30:51,140.140 INFO    ] Initializing speech engine...
[2026-08-25 00:30:51,165.165 INFO    ] 2026-08-25 00:30:51
[2026-08-25 00:30:51,439.439 INFO    ] 2026-08-25 00:30:51
[2026-08-25 00:30:51,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:30:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:30:51,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:30:51,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:30:51,855.855 INFO    ] time= 25/08/2026 00:30:51
[2026-08-25 00:30:51,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:30:51,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:30:51,941.941 INFO    ] No existing commands found in stream
[2026-08-25 00:30:56,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:30:56,969.969 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 00:30:59,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:30:59,825.825 INFO    ] Checking for system updates...
[2026-08-25 00:30:59,862.862 INFO    ] 200
[2026-08-25 00:30:59,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:30:59,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:30:59,926.926 INFO    ] No update needed
[2026-08-25 00:30:59,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 00:30:59,962.962 INFO    ] 200
[2026-08-25 00:30:59,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:00,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:31:00,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:31:00,053.053 INFO    ] No camera update needed
[2026-08-25 00:31:00,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:31:00,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:31:00,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:31:00,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:31:02,115.115 INFO    ] ================================================
[2026-08-25 00:31:02,136.136 INFO    ] Launching Daemon at Tue Aug 25 00:31:02 IST 2026
[2026-08-25 00:31:02,148.148 INFO    ] ================================================
[2026-08-25 00:31:02,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:31:02
[2026-08-25 00:31:03,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:31:03,693.693 INFO    ] Initializing speech engine...
[2026-08-25 00:31:03,701.701 INFO    ] 2026-08-25 00:31:03
[2026-08-25 00:31:03,952.952 INFO    ] 2026-08-25 00:31:03
[2026-08-25 00:31:03,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:31:04,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:31:04,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:31:04,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:31:04,331.331 INFO    ] time= 25/08/2026 00:31:04
[2026-08-25 00:31:04,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:31:04,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:31:04,494.494 INFO    ] No existing commands found in stream
[2026-08-25 00:31:09,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:31:09,527.527 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 00:31:12,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:31:12,283.283 INFO    ] Checking for system updates...
[2026-08-25 00:31:12,318.318 INFO    ] 200
[2026-08-25 00:31:12,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:12,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:12,376.376 INFO    ] No update needed
[2026-08-25 00:31:12,378.378 INFO    ] Checking for camera pi updates...
[2026-08-25 00:31:12,411.411 INFO    ] 200
[2026-08-25 00:31:12,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:12,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:31:12,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:12,503.503 INFO    ] No camera update needed
[2026-08-25 00:31:12,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:31:12,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:31:12,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:31:12,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:31:14,559.559 INFO    ] ================================================
[2026-08-25 00:31:14,574.574 INFO    ] Launching Daemon at Tue Aug 25 00:31:14 IST 2026
[2026-08-25 00:31:14,585.585 INFO    ] ================================================
[2026-08-25 00:31:15,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:31:15
[2026-08-25 00:31:15,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:31:16,018.018 INFO    ] Initializing speech engine...
[2026-08-25 00:31:16,023.023 INFO    ] 2026-08-25 00:31:16
[2026-08-25 00:31:16,276.276 INFO    ] 2026-08-25 00:31:16
[2026-08-25 00:31:16,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:31:16,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:31:16,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:31:16,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:31:16,756.756 INFO    ] time= 25/08/2026 00:31:16
[2026-08-25 00:31:16,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:31:16,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:31:16,959.959 INFO    ] No existing commands found in stream
[2026-08-25 00:31:21,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:31:21,983.983 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 00:31:23,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:31:23,266.266 INFO    ] Checking for system updates...
[2026-08-25 00:31:23,301.301 INFO    ] 200
[2026-08-25 00:31:23,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:23,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:23,358.358 INFO    ] No update needed
[2026-08-25 00:31:23,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 00:31:23,394.394 INFO    ] 200
[2026-08-25 00:31:23,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:23,441.441 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:31:23,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:23,487.487 INFO    ] No camera update needed
[2026-08-25 00:31:23,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:31:23,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:31:23,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:31:23,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:31:25,542.542 INFO    ] ================================================
[2026-08-25 00:31:25,557.557 INFO    ] Launching Daemon at Tue Aug 25 00:31:25 IST 2026
[2026-08-25 00:31:25,568.568 INFO    ] ================================================
[2026-08-25 00:31:26,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:31:26
[2026-08-25 00:31:26,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:31:27,011.011 INFO    ] Initializing speech engine...
[2026-08-25 00:31:27,026.026 INFO    ] 2026-08-25 00:31:27
[2026-08-25 00:31:27,308.308 INFO    ] 2026-08-25 00:31:27
[2026-08-25 00:31:27,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:31:28,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:31:28,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:31:28,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:31:28,263.263 INFO    ] time= 25/08/2026 00:31:28
[2026-08-25 00:31:28,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:31:28,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:31:28,494.494 INFO    ] No existing commands found in stream
[2026-08-25 00:31:33,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:31:33,510.510 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 00:31:34,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:31:34,161.161 INFO    ] Checking for system updates...
[2026-08-25 00:31:34,197.197 INFO    ] 200
[2026-08-25 00:31:34,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:34,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:34,255.255 INFO    ] No update needed
[2026-08-25 00:31:34,258.258 INFO    ] Checking for camera pi updates...
[2026-08-25 00:31:34,296.296 INFO    ] 200
[2026-08-25 00:31:34,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:34,339.339 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:31:34,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:34,395.395 INFO    ] No camera update needed
[2026-08-25 00:31:34,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:31:34,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:31:34,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:31:34,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:31:36,451.451 INFO    ] ================================================
[2026-08-25 00:31:36,466.466 INFO    ] Launching Daemon at Tue Aug 25 00:31:36 IST 2026
[2026-08-25 00:31:36,477.477 INFO    ] ================================================
[2026-08-25 00:31:37,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:31:37
[2026-08-25 00:31:37,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:31:37,933.933 INFO    ] Initializing speech engine...
[2026-08-25 00:31:37,939.939 INFO    ] 2026-08-25 00:31:37
[2026-08-25 00:31:38,196.196 INFO    ] 2026-08-25 00:31:38
[2026-08-25 00:31:38,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:31:38,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:31:38,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:31:38,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:31:38,666.666 INFO    ] time= 25/08/2026 00:31:38
[2026-08-25 00:31:38,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:31:38,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:31:38,912.912 INFO    ] No existing commands found in stream
[2026-08-25 00:31:43,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:31:43,927.927 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 00:31:47,192.192 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:31:47,195.195 INFO    ] Checking for system updates...
[2026-08-25 00:31:47,231.231 INFO    ] 200
[2026-08-25 00:31:47,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:47,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:47,291.291 INFO    ] No update needed
[2026-08-25 00:31:47,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 00:31:47,326.326 INFO    ] 200
[2026-08-25 00:31:47,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:31:47,373.373 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:31:47,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:31:47,426.426 INFO    ] No camera update needed
[2026-08-25 00:31:47,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:31:47,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:31:47,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:31:47,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:31:49,479.479 INFO    ] ================================================
[2026-08-25 00:31:49,494.494 INFO    ] Launching Daemon at Tue Aug 25 00:31:49 IST 2026
[2026-08-25 00:31:49,505.505 INFO    ] ================================================
[2026-08-25 00:31:50,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:31:50
[2026-08-25 00:31:50,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:31:51,110.110 INFO    ] Initializing speech engine...
[2026-08-25 00:31:51,116.116 INFO    ] 2026-08-25 00:31:51
[2026-08-25 00:31:51,404.404 INFO    ] 2026-08-25 00:31:51
[2026-08-25 00:31:51,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:31:51,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:31:51,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:31:51,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:31:51,950.950 INFO    ] time= 25/08/2026 00:31:51
[2026-08-25 00:31:51,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:31:51,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:31:52,109.109 INFO    ] No existing commands found in stream
[2026-08-25 00:31:57,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:31:57,127.127 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 00:32:00,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:32:00,544.544 INFO    ] Checking for system updates...
[2026-08-25 00:32:00,584.584 INFO    ] 200
[2026-08-25 00:32:00,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:00,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:32:00,643.643 INFO    ] No update needed
[2026-08-25 00:32:00,646.646 INFO    ] Checking for camera pi updates...
[2026-08-25 00:32:00,681.681 INFO    ] 200
[2026-08-25 00:32:00,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:00,725.725 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:32:00,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:32:00,782.782 INFO    ] No camera update needed
[2026-08-25 00:32:00,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:32:00,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:32:00,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:32:00,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:32:02,852.852 INFO    ] ================================================
[2026-08-25 00:32:02,873.873 INFO    ] Launching Daemon at Tue Aug 25 00:32:02 IST 2026
[2026-08-25 00:32:02,886.886 INFO    ] ================================================
[2026-08-25 00:32:03,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:32:03
[2026-08-25 00:32:04,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:32:04,376.376 INFO    ] Initializing speech engine...
[2026-08-25 00:32:04,383.383 INFO    ] 2026-08-25 00:32:04
[2026-08-25 00:32:04,641.641 INFO    ] 2026-08-25 00:32:04
[2026-08-25 00:32:04,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:32:04,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:32:04,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:32:05,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:32:05,078.078 INFO    ] time= 25/08/2026 00:32:05
[2026-08-25 00:32:05,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:32:05,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:32:05,329.329 INFO    ] No existing commands found in stream
[2026-08-25 00:32:10,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:32:10,351.351 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 00:32:14,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:32:14,285.285 INFO    ] Checking for system updates...
[2026-08-25 00:32:14,321.321 INFO    ] 200
[2026-08-25 00:32:14,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:14,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:32:14,386.386 INFO    ] No update needed
[2026-08-25 00:32:14,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 00:32:14,422.422 INFO    ] 200
[2026-08-25 00:32:14,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:14,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:32:14,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:32:14,519.519 INFO    ] No camera update needed
[2026-08-25 00:32:14,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:32:14,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:32:14,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:32:14,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:32:16,575.575 INFO    ] ================================================
[2026-08-25 00:32:16,590.590 INFO    ] Launching Daemon at Tue Aug 25 00:32:16 IST 2026
[2026-08-25 00:32:16,600.600 INFO    ] ================================================
[2026-08-25 00:32:17,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:32:17
[2026-08-25 00:32:17,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:32:18,063.063 INFO    ] Initializing speech engine...
[2026-08-25 00:32:18,076.076 INFO    ] 2026-08-25 00:32:18
[2026-08-25 00:32:18,344.344 INFO    ] 2026-08-25 00:32:18
[2026-08-25 00:32:18,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:32:18,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:32:18,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:32:18,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:32:18,810.810 INFO    ] time= 25/08/2026 00:32:18
[2026-08-25 00:32:18,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:32:18,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:32:19,009.009 INFO    ] No existing commands found in stream
[2026-08-25 00:32:24,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:32:24,040.040 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 00:32:27,916.916 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:32:27,919.919 INFO    ] Checking for system updates...
[2026-08-25 00:32:27,956.956 INFO    ] 200
[2026-08-25 00:32:27,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:28,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:32:28,015.015 INFO    ] No update needed
[2026-08-25 00:32:28,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 00:32:28,052.052 INFO    ] 200
[2026-08-25 00:32:28,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:28,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:32:28,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:32:28,252.252 INFO    ] No camera update needed
[2026-08-25 00:32:28,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:32:28,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:32:28,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:32:28,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:32:30,310.310 INFO    ] ================================================
[2026-08-25 00:32:30,325.325 INFO    ] Launching Daemon at Tue Aug 25 00:32:30 IST 2026
[2026-08-25 00:32:30,336.336 INFO    ] ================================================
[2026-08-25 00:32:30,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:32:30
[2026-08-25 00:32:31,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:32:32,011.011 INFO    ] Initializing speech engine...
[2026-08-25 00:32:32,026.026 INFO    ] 2026-08-25 00:32:32
[2026-08-25 00:32:32,314.314 INFO    ] 2026-08-25 00:32:32
[2026-08-25 00:32:32,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:32:32,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:32:32,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:32:32,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:32:32,776.776 INFO    ] time= 25/08/2026 00:32:32
[2026-08-25 00:32:32,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:32:32,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:32:33,068.068 INFO    ] No existing commands found in stream
[2026-08-25 00:32:38,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:32:38,093.093 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 00:32:42,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:32:42,273.273 INFO    ] Checking for system updates...
[2026-08-25 00:32:42,313.313 INFO    ] 200
[2026-08-25 00:32:42,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:42,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:32:42,378.378 INFO    ] No update needed
[2026-08-25 00:32:42,381.381 INFO    ] Checking for camera pi updates...
[2026-08-25 00:32:42,416.416 INFO    ] 200
[2026-08-25 00:32:42,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:42,464.464 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:32:42,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:32:42,517.517 INFO    ] No camera update needed
[2026-08-25 00:32:42,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:32:42,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:32:42,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:32:42,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:32:44,575.575 INFO    ] ================================================
[2026-08-25 00:32:44,590.590 INFO    ] Launching Daemon at Tue Aug 25 00:32:44 IST 2026
[2026-08-25 00:32:44,600.600 INFO    ] ================================================
[2026-08-25 00:32:45,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:32:45
[2026-08-25 00:32:45,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:32:46,201.201 INFO    ] Initializing speech engine...
[2026-08-25 00:32:46,216.216 INFO    ] 2026-08-25 00:32:46
[2026-08-25 00:32:46,487.487 INFO    ] 2026-08-25 00:32:46
[2026-08-25 00:32:46,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:32:46,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:32:46,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:32:46,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:32:46,977.977 INFO    ] time= 25/08/2026 00:32:46
[2026-08-25 00:32:47,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:32:47,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:32:47,201.201 INFO    ] No existing commands found in stream
[2026-08-25 00:32:52,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:32:52,224.224 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 00:32:55,995.995 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:32:55,998.998 INFO    ] Checking for system updates...
[2026-08-25 00:32:56,035.035 INFO    ] 200
[2026-08-25 00:32:56,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:56,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:32:56,093.093 INFO    ] No update needed
[2026-08-25 00:32:56,096.096 INFO    ] Checking for camera pi updates...
[2026-08-25 00:32:56,131.131 INFO    ] 200
[2026-08-25 00:32:56,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:32:56,174.174 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:32:56,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:32:56,223.223 INFO    ] No camera update needed
[2026-08-25 00:32:56,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:32:56,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:32:56,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:32:56,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:32:58,281.281 INFO    ] ================================================
[2026-08-25 00:32:58,296.296 INFO    ] Launching Daemon at Tue Aug 25 00:32:58 IST 2026
[2026-08-25 00:32:58,306.306 INFO    ] ================================================
[2026-08-25 00:32:58,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:32:58
[2026-08-25 00:32:59,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:32:59,719.719 INFO    ] Initializing speech engine...
[2026-08-25 00:32:59,743.743 INFO    ] 2026-08-25 00:32:59
[2026-08-25 00:33:00,017.017 INFO    ] 2026-08-25 00:32:59
[2026-08-25 00:33:00,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:33:00,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:33:00,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:33:00,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:33:00,429.429 INFO    ] time= 25/08/2026 00:33:00
[2026-08-25 00:33:00,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:33:00,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:33:00,601.601 INFO    ] No existing commands found in stream
[2026-08-25 00:33:05,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:33:05,634.634 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 00:33:08,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:33:08,870.870 INFO    ] Checking for system updates...
[2026-08-25 00:33:08,904.904 INFO    ] 200
[2026-08-25 00:33:08,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:08,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:33:08,961.961 INFO    ] No update needed
[2026-08-25 00:33:08,963.963 INFO    ] Checking for camera pi updates...
[2026-08-25 00:33:08,999.999 INFO    ] 200
[2026-08-25 00:33:09,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:09,046.046 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:33:09,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:33:09,093.093 INFO    ] No camera update needed
[2026-08-25 00:33:09,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:33:09,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:33:09,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:33:09,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:33:11,149.149 INFO    ] ================================================
[2026-08-25 00:33:11,164.164 INFO    ] Launching Daemon at Tue Aug 25 00:33:11 IST 2026
[2026-08-25 00:33:11,175.175 INFO    ] ================================================
[2026-08-25 00:33:11,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:33:11
[2026-08-25 00:33:12,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:33:12,787.787 INFO    ] Initializing speech engine...
[2026-08-25 00:33:12,795.795 INFO    ] 2026-08-25 00:33:12
[2026-08-25 00:33:13,100.100 INFO    ] 2026-08-25 00:33:13
[2026-08-25 00:33:13,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:33:13,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:33:13,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:33:13,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:33:13,586.586 INFO    ] time= 25/08/2026 00:33:13
[2026-08-25 00:33:13,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:33:13,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:33:13,771.771 INFO    ] No existing commands found in stream
[2026-08-25 00:33:18,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:33:18,791.791 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 00:33:22,098.098 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:33:22,101.101 INFO    ] Checking for system updates...
[2026-08-25 00:33:22,137.137 INFO    ] 200
[2026-08-25 00:33:22,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:22,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:33:22,197.197 INFO    ] No update needed
[2026-08-25 00:33:22,199.199 INFO    ] Checking for camera pi updates...
[2026-08-25 00:33:22,238.238 INFO    ] 200
[2026-08-25 00:33:22,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:22,282.282 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:33:22,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:33:22,334.334 INFO    ] No camera update needed
[2026-08-25 00:33:22,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:33:22,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:33:22,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:33:22,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:33:24,392.392 INFO    ] ================================================
[2026-08-25 00:33:24,407.407 INFO    ] Launching Daemon at Tue Aug 25 00:33:24 IST 2026
[2026-08-25 00:33:24,418.418 INFO    ] ================================================
[2026-08-25 00:33:24,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:33:24
[2026-08-25 00:33:25,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:33:25,837.837 INFO    ] Initializing speech engine...
[2026-08-25 00:33:25,846.846 INFO    ] 2026-08-25 00:33:25
[2026-08-25 00:33:26,091.091 INFO    ] 2026-08-25 00:33:26
[2026-08-25 00:33:26,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:33:26,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:33:26,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:33:26,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:33:26,592.592 INFO    ] time= 25/08/2026 00:33:26
[2026-08-25 00:33:26,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:33:26,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:33:26,802.802 INFO    ] No existing commands found in stream
[2026-08-25 00:33:31,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:33:31,829.829 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 00:33:34,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:33:34,957.957 INFO    ] Checking for system updates...
[2026-08-25 00:33:34,993.993 INFO    ] 200
[2026-08-25 00:33:34,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:35,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:33:35,057.057 INFO    ] No update needed
[2026-08-25 00:33:35,059.059 INFO    ] Checking for camera pi updates...
[2026-08-25 00:33:35,092.092 INFO    ] 200
[2026-08-25 00:33:35,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:35,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:33:35,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:33:35,187.187 INFO    ] No camera update needed
[2026-08-25 00:33:35,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:33:35,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:33:35,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:33:35,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:33:37,242.242 INFO    ] ================================================
[2026-08-25 00:33:37,257.257 INFO    ] Launching Daemon at Tue Aug 25 00:33:37 IST 2026
[2026-08-25 00:33:37,268.268 INFO    ] ================================================
[2026-08-25 00:33:37,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:33:37
[2026-08-25 00:33:38,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:33:38,710.710 INFO    ] Initializing speech engine...
[2026-08-25 00:33:38,720.720 INFO    ] 2026-08-25 00:33:38
[2026-08-25 00:33:38,978.978 INFO    ] 2026-08-25 00:33:38
[2026-08-25 00:33:39,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:33:39,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:33:39,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:33:39,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:33:39,454.454 INFO    ] time= 25/08/2026 00:33:39
[2026-08-25 00:33:39,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:33:39,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:33:39,642.642 INFO    ] No existing commands found in stream
[2026-08-25 00:33:44,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:33:44,675.675 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 00:33:46,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:33:46,336.336 INFO    ] Checking for system updates...
[2026-08-25 00:33:46,373.373 INFO    ] 200
[2026-08-25 00:33:46,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:46,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:33:46,436.436 INFO    ] No update needed
[2026-08-25 00:33:46,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 00:33:46,472.472 INFO    ] 200
[2026-08-25 00:33:46,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:33:46,515.515 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:33:46,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:33:46,560.560 INFO    ] No camera update needed
[2026-08-25 00:33:46,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:33:46,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:33:46,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:33:46,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:33:48,614.614 INFO    ] ================================================
[2026-08-25 00:33:48,629.629 INFO    ] Launching Daemon at Tue Aug 25 00:33:48 IST 2026
[2026-08-25 00:33:48,640.640 INFO    ] ================================================
[2026-08-25 00:33:49,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:33:49
[2026-08-25 00:33:49,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:33:50,103.103 INFO    ] Initializing speech engine...
[2026-08-25 00:33:50,112.112 INFO    ] 2026-08-25 00:33:50
[2026-08-25 00:33:50,364.364 INFO    ] 2026-08-25 00:33:50
[2026-08-25 00:33:50,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:33:50,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:33:50,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:33:50,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:33:50,839.839 INFO    ] time= 25/08/2026 00:33:50
[2026-08-25 00:33:50,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:33:50,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:33:51,092.092 INFO    ] No existing commands found in stream
[2026-08-25 00:33:56,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:33:56,110.110 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 00:34:00,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:34:00,527.527 INFO    ] Checking for system updates...
[2026-08-25 00:34:00,571.571 INFO    ] 200
[2026-08-25 00:34:00,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:00,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:00,632.632 INFO    ] No update needed
[2026-08-25 00:34:00,634.634 INFO    ] Checking for camera pi updates...
[2026-08-25 00:34:00,668.668 INFO    ] 200
[2026-08-25 00:34:00,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:00,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:34:00,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:00,765.765 INFO    ] No camera update needed
[2026-08-25 00:34:00,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:34:00,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:34:00,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:34:00,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:34:02,832.832 INFO    ] ================================================
[2026-08-25 00:34:02,853.853 INFO    ] Launching Daemon at Tue Aug 25 00:34:02 IST 2026
[2026-08-25 00:34:02,869.869 INFO    ] ================================================
[2026-08-25 00:34:03,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:34:03
[2026-08-25 00:34:04,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:34:04,579.579 INFO    ] Initializing speech engine...
[2026-08-25 00:34:04,593.593 INFO    ] 2026-08-25 00:34:04
[2026-08-25 00:34:04,904.904 INFO    ] 2026-08-25 00:34:04
[2026-08-25 00:34:04,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:34:05,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:34:05,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:34:05,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:34:05,406.406 INFO    ] time= 25/08/2026 00:34:05
[2026-08-25 00:34:05,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:34:05,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:34:05,559.559 INFO    ] No existing commands found in stream
[2026-08-25 00:34:10,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:34:10,597.597 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 00:34:13,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:34:13,625.625 INFO    ] Checking for system updates...
[2026-08-25 00:34:13,661.661 INFO    ] 200
[2026-08-25 00:34:13,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:13,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:13,721.721 INFO    ] No update needed
[2026-08-25 00:34:13,723.723 INFO    ] Checking for camera pi updates...
[2026-08-25 00:34:13,758.758 INFO    ] 200
[2026-08-25 00:34:13,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:13,805.805 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:34:13,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:13,852.852 INFO    ] No camera update needed
[2026-08-25 00:34:13,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:34:13,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:34:13,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:34:13,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:34:15,909.909 INFO    ] ================================================
[2026-08-25 00:34:15,924.924 INFO    ] Launching Daemon at Tue Aug 25 00:34:15 IST 2026
[2026-08-25 00:34:15,935.935 INFO    ] ================================================
[2026-08-25 00:34:16,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:34:16
[2026-08-25 00:34:17,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:34:17,329.329 INFO    ] Initializing speech engine...
[2026-08-25 00:34:17,343.343 INFO    ] 2026-08-25 00:34:17
[2026-08-25 00:34:17,608.608 INFO    ] 2026-08-25 00:34:17
[2026-08-25 00:34:17,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:34:17,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:34:17,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:34:17,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:34:17,981.981 INFO    ] time= 25/08/2026 00:34:17
[2026-08-25 00:34:17,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:34:18,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:34:18,151.151 INFO    ] No existing commands found in stream
[2026-08-25 00:34:23,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:34:23,179.179 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 00:34:26,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:34:26,187.187 INFO    ] Checking for system updates...
[2026-08-25 00:34:26,227.227 INFO    ] 200
[2026-08-25 00:34:26,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:26,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:26,290.290 INFO    ] No update needed
[2026-08-25 00:34:26,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 00:34:26,326.326 INFO    ] 200
[2026-08-25 00:34:26,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:26,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:34:26,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:26,415.415 INFO    ] No camera update needed
[2026-08-25 00:34:26,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:34:26,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:34:26,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:34:26,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:34:28,470.470 INFO    ] ================================================
[2026-08-25 00:34:28,485.485 INFO    ] Launching Daemon at Tue Aug 25 00:34:28 IST 2026
[2026-08-25 00:34:28,495.495 INFO    ] ================================================
[2026-08-25 00:34:29,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:34:29
[2026-08-25 00:34:29,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:34:29,919.919 INFO    ] Initializing speech engine...
[2026-08-25 00:34:29,930.930 INFO    ] 2026-08-25 00:34:29
[2026-08-25 00:34:30,174.174 INFO    ] 2026-08-25 00:34:30
[2026-08-25 00:34:30,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:34:30,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:34:30,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:34:30,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:34:30,649.649 INFO    ] time= 25/08/2026 00:34:30
[2026-08-25 00:34:30,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:34:30,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:34:30,865.865 INFO    ] No existing commands found in stream
[2026-08-25 00:34:35,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:34:35,898.898 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 00:34:39,140.140 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:34:39,143.143 INFO    ] Checking for system updates...
[2026-08-25 00:34:39,178.178 INFO    ] 200
[2026-08-25 00:34:39,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:39,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:39,235.235 INFO    ] No update needed
[2026-08-25 00:34:39,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 00:34:39,274.274 INFO    ] 200
[2026-08-25 00:34:39,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:39,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:34:39,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:39,368.368 INFO    ] No camera update needed
[2026-08-25 00:34:39,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:34:39,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:34:39,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:34:39,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:34:41,423.423 INFO    ] ================================================
[2026-08-25 00:34:41,438.438 INFO    ] Launching Daemon at Tue Aug 25 00:34:41 IST 2026
[2026-08-25 00:34:41,450.450 INFO    ] ================================================
[2026-08-25 00:34:42,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:34:42
[2026-08-25 00:34:42,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:34:42,854.854 INFO    ] Initializing speech engine...
[2026-08-25 00:34:42,860.860 INFO    ] 2026-08-25 00:34:42
[2026-08-25 00:34:43,153.153 INFO    ] 2026-08-25 00:34:43
[2026-08-25 00:34:43,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:34:43,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:34:43,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:34:43,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:34:43,528.528 INFO    ] time= 25/08/2026 00:34:43
[2026-08-25 00:34:43,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:34:43,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:34:43,651.651 INFO    ] No existing commands found in stream
[2026-08-25 00:34:48,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:34:48,667.667 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 00:34:50,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:34:50,570.570 INFO    ] Checking for system updates...
[2026-08-25 00:34:50,607.607 INFO    ] 200
[2026-08-25 00:34:50,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:50,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:50,664.664 INFO    ] No update needed
[2026-08-25 00:34:50,667.667 INFO    ] Checking for camera pi updates...
[2026-08-25 00:34:50,704.704 INFO    ] 200
[2026-08-25 00:34:50,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:34:50,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:34:50,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:34:50,799.799 INFO    ] No camera update needed
[2026-08-25 00:34:50,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:34:50,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:34:50,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:34:50,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:34:52,854.854 INFO    ] ================================================
[2026-08-25 00:34:52,869.869 INFO    ] Launching Daemon at Tue Aug 25 00:34:52 IST 2026
[2026-08-25 00:34:52,880.880 INFO    ] ================================================
[2026-08-25 00:34:53,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:34:53
[2026-08-25 00:34:54,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:34:54,281.281 INFO    ] Initializing speech engine...
[2026-08-25 00:34:54,289.289 INFO    ] 2026-08-25 00:34:54
[2026-08-25 00:34:54,579.579 INFO    ] 2026-08-25 00:34:54
[2026-08-25 00:34:54,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:34:54,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:34:54,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:34:54,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:34:54,970.970 INFO    ] time= 25/08/2026 00:34:54
[2026-08-25 00:34:54,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:34:54,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:34:55,078.078 INFO    ] No existing commands found in stream
[2026-08-25 00:35:00,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:35:00,097.097 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 00:35:01,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:35:01,679.679 INFO    ] Checking for system updates...
[2026-08-25 00:35:01,831.831 INFO    ] 200
[2026-08-25 00:35:01,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:02,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:35:02,034.034 INFO    ] No update needed
[2026-08-25 00:35:02,038.038 INFO    ] Checking for camera pi updates...
[2026-08-25 00:35:02,098.098 INFO    ] 200
[2026-08-25 00:35:02,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:02,213.213 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:35:02,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:35:02,300.300 INFO    ] No camera update needed
[2026-08-25 00:35:02,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:35:02,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:35:02,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:35:02,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:35:04,374.374 INFO    ] ================================================
[2026-08-25 00:35:04,391.391 INFO    ] Launching Daemon at Tue Aug 25 00:35:04 IST 2026
[2026-08-25 00:35:04,402.402 INFO    ] ================================================
[2026-08-25 00:35:04,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:35:04
[2026-08-25 00:35:05,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:35:05,818.818 INFO    ] Initializing speech engine...
[2026-08-25 00:35:05,824.824 INFO    ] 2026-08-25 00:35:05
[2026-08-25 00:35:06,118.118 INFO    ] 2026-08-25 00:35:06
[2026-08-25 00:35:06,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:35:06,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:35:06,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:35:06,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:35:06,534.534 INFO    ] time= 25/08/2026 00:35:06
[2026-08-25 00:35:06,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:35:06,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:35:06,693.693 INFO    ] No existing commands found in stream
[2026-08-25 00:35:08,165.165 INFO    ] Received new command: ID=1787598308122-0
[2026-08-25 00:35:08,170.170 INFO    ] process_and_cleanup_command: msg_id=1787598308122-0
[2026-08-25 00:35:08,177.177 INFO    ] is_command_expired: timestamp=2026-08-24T19:05:07.723Z, expiry=30s
[2026-08-25 00:35:08,274.274 INFO    ] Command removed from stream: 1787598308122-0. returning for processing...
[2026-08-25 00:35:08,279.279 INFO    ] ***** get_valid_command
[2026-08-25 00:35:08,284.284 INFO    ] {'source': 'webapp', 'timeout': '10', 'timestamp': '2026-08-24T19:05:07.723Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1787598307723-8vb0cso8h","orderId":"TM03202401260825003421445","is_vending":false}'}
[2026-08-25 00:35:08,289.289 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787598307723-8vb0cso8h', 'is_vending': False, 'orderId': 'TM03202401260825003421445'}
[2026-08-25 00:35:08,294.294 INFO    ] Handling start order...
[2026-08-25 00:35:08,299.299 INFO    ] handle_start_order_command
[2026-08-25 00:35:08,320.320 INFO    ] _send_start_order_success: request_id=start-order-1787598307723-8vb0cso8h, order_id=TM03202401260825003421445
[2026-08-25 00:35:08,325.325 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 00:35:08,430.430 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787598308365-0
[2026-08-25 00:35:08,446.446 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 00:35:08,451.451 INFO    ] Checking for system updates...
[2026-08-25 00:35:08,501.501 INFO    ] 200
[2026-08-25 00:35:08,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:08,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:35:08,586.586 INFO    ] No update needed
[2026-08-25 00:35:08,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 00:35:08,656.656 INFO    ] 200
[2026-08-25 00:35:08,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:08,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:35:08,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:35:08,971.971 INFO    ] No camera update needed
[2026-08-25 00:35:08,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:35:08,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:35:09,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:35:09,044.044 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 00:35:09,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:35:11,119.119 INFO    ] ================================================
[2026-08-25 00:35:11,136.136 INFO    ] Launching Daemon at Tue Aug 25 00:35:11 IST 2026
[2026-08-25 00:35:11,147.147 INFO    ] ================================================
[2026-08-25 00:35:11,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:35:11
[2026-08-25 00:35:12,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:35:12,560.560 INFO    ] Initializing speech engine...
[2026-08-25 00:35:12,567.567 INFO    ] 2026-08-25 00:35:12
[2026-08-25 00:35:12,856.856 INFO    ] 2026-08-25 00:35:12
[2026-08-25 00:35:12,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:35:13,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:35:13,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:35:13,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:35:13,269.269 INFO    ] time= 25/08/2026 00:35:13
[2026-08-25 00:35:13,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:35:13,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:35:13,461.461 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 00:35:13,497.497 INFO    ] Checking historical command: ID=1787598308365-0
[2026-08-25 00:35:13,503.503 INFO    ] process_and_cleanup_command: msg_id=1787598308365-0
[2026-08-25 00:35:13,522.522 INFO    ] is_command_expired: timestamp=2026-08-24T19:05:08.322126Z, expiry=30s
[2026-08-25 00:35:13,671.671 INFO    ] Command removed from stream: 1787598308365-0. returning for processing...
[2026-08-25 00:35:13,704.704 INFO    ] ***** get_valid_command
[2026-08-25 00:35:13,742.742 INFO    ] {'status': 'success', 'message': 'start-order success', 'message_type': 'command_response', 'timestamp': '2026-08-24T19:05:08.322126Z', 'metadata_request_id': 'start-order-1787598307723-8vb0cso8h', 'metadata_order_id': 'TM03202401260825003421445', 'imei': 'TM03202401'}
[2026-08-25 00:35:13,786.786 INFO    ] Checking historical command: ID=1787598310945-0
[2026-08-25 00:35:13,826.826 INFO    ] process_and_cleanup_command: msg_id=1787598310945-0
[2026-08-25 00:35:13,877.877 INFO    ] is_command_expired: timestamp=2026-08-24T19:05:10.580Z, expiry=30s
[2026-08-25 00:35:14,020.020 INFO    ] Command removed from stream: 1787598310945-0. returning for processing...
[2026-08-25 00:35:14,046.046 INFO    ] ***** get_valid_command
[2026-08-25 00:35:14,049.049 INFO    ] {'command': 'process-order', 'source': 'webapp', 'timeout': '60', 'data': '{"request_id":"process-order-1787598310580-rkxwnx7fc","orderId":"TM03202401260825003421445","is_vending":false,"accessCode":"99763921"}', 'timestamp': '2026-08-24T19:05:10.580Z'}
[2026-08-25 00:35:14,064.064 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1787598310580-rkxwnx7fc', 'accessCode': '99763921', 'orderId': 'TM03202401260825003421445', 'is_vending': False}
[2026-08-25 00:35:14,067.067 INFO    ] Handling process order...
[2026-08-25 00:35:14,070.070 INFO    ] Processing process-order command...
[2026-08-25 00:35:14,073.073 INFO    ] 🔍 Lock file Order ID: TM03202401260825003421445, TS: 2026-08-25 00:35:08
[2026-08-25 00:35:14,087.087 INFO    ] ✅ Order lock valid for TM03202401260825003421445
[2026-08-25 00:35:14,165.165 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 00:35:14,219.219 INFO    ] processing access code 99763921 for order TM03202401260825003421445
[2026-08-25 00:35:14,238.238 INFO    ] 🔍 Lock file Order ID: TM03202401260825003421445, TS: 2026-08-25 00:35:08
[2026-08-25 00:35:14,242.242 INFO    ] ✅ Order lock valid for TM03202401260825003421445
[2026-08-25 00:35:14,261.261 INFO    ] 2026-08-25 00:35:14
[2026-08-25 00:35:14,372.372 INFO    ] 200
[2026-08-25 00:35:14,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:14,382.382 INFO    ] 99763921
[2026-08-25 00:35:14,387.387 INFO    ] 2026-08-25 00:35:14
[2026-08-25 00:35:14,391.391 INFO    ] session id :711747522
[2026-08-25 00:35:14,396.396 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=99763921&imei=TM03202401&session_id=711747522
[2026-08-25 00:35:15,576.576 INFO    ] 200
[2026-08-25 00:35:15,581.581 INFO    ] {"data": {"access_code": "99763921", "order_id": "TM03202401260825003421445", "bill_amount": "10", "invoice_bill": "10", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500725", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "tray_id": "14", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm", "sku_total": 10}], "mobile": "7894281936"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 00:35:15,591.591 INFO    ] 10
[2026-08-25 00:35:15,596.596 INFO    ] TM03202401260825003421445
[2026-08-25 00:35:15,602.602 INFO    ] 7894281936
[2026-08-25 00:35:15,607.607 INFO    ] 2026-08-25 00:35:15
[2026-08-25 00:35:15,641.641 INFO    ] Door Opening for user mobile ending with  one nine three six 
[2026-08-25 00:35:15,651.651 INFO    ] Door Opening for user mobile ending with  one nine three six 
[2026-08-25 00:35:15,671.671 INFO    ] 1ee1fb5c9028291103f83746dc0c127e
[2026-08-25 00:35:15,681.681 INFO    ] 2026-08-25 00:35:15
[2026-08-25 00:35:15,686.686 INFO    ] playing audio file
[2026-08-25 00:35:15,728.728 INFO    ] 2026-08-25 00:35:15
[2026-08-25 00:35:15,751.751 INFO    ] 2026-08-25 00:35:15
[2026-08-25 00:35:15,764.764 INFO    ] publish_status: order_id=TM03202401260825003421445
[2026-08-25 00:35:15,779.779 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825003421445
[2026-08-25 00:35:15,938.938 INFO    ] [publish_status] Message added to stream with ID: 1787598315869-0
[2026-08-25 00:35:15,946.946 INFO    ] Published to order:TM03202401260825003421445: {'server_response': '{"msg": "Order Data", "rstatus": true, "status": true, "data": {"bill_amount": "10", "mobile": "7894281936", "proposed_sku_json": [{"skuid": "4500725", "qty": 1, "sku_total": 10, "offer_desc": "", "offer_id": "", "mrp": "10", "image_url": "https://images.tinymart.in/product/4500725-5961.png", "tray_id": "14", "door_id": "1", "name": "Maxvita Coconut Cookies 40gm", "unit_price": 10}], "access_code": "99763921", "order_id": "TM03202401260825003421445", "invoice_bill": "10"}}', 'timestamp': '2026-08-24T19:05:15.752435Z', 'server_status': 'order-started', 'order_id': 'TM03202401260825003421445'} (ID: 1787598315869-0)
[2026-08-25 00:35:16,513.513 INFO    ] {'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'bill_amount': '10', 'mobile': '7894281936', 'proposed_sku_json': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10, 'offer_desc': '', 'offer_id': '', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'tray_id': '14', 'door_id': '1', 'name': 'Maxvita Coconut Cookies 40gm', 'unit_price': 10}], 'access_code': '99763921', 'order_id': 'TM03202401260825003421445', 'invoice_bill': '10'}}, 'server_status': 'order-started', 'order_id': 'TM03202401260825003421445'}
[2026-08-25 00:35:16,516.516 INFO    ] 200
[2026-08-25 00:35:16,519.519 INFO    ] {"data":{"server_response":{"msg":"Order Data","rstatus":true,"status":true,"data":{"bill_amount":"10","mobile":"7894281936","proposed_sku_json":[{"skuid":"4500725","qty":1,"sku_total":10,"offer_desc":"","offer_id":"","mrp":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","tray_id":"14","door_id":"1","name":"Maxvita Coconut Cookies 40gm","unit_price":10}],"access_code":"99763921","order_id":"TM03202401260825003421445","invoice_bill":"10"}},"server_status":"order-started","order_id":"TM03202401260825003421445"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 00:35:16,522.522 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'bill_amount': '10', 'mobile': '7894281936', 'proposed_sku_json': [{'skuid': '4500725', 'name': 'Maxvita Coconut Cookies 40gm', 'qty': 1, 'offer_desc': '', 'offer_id': '', 'mrp': '10', 'door_id': '1', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'sku_total': 10, 'tray_id': '14'}], 'access_code': '99763921', 'order_id': 'TM03202401260825003421445', 'invoice_bill': '10'}}, 'order_id': 'TM03202401260825003421445'}, 'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}}
[2026-08-25 00:35:16,525.525 INFO    ] 2026-08-25 00:35:16
[2026-08-25 00:35:16,571.571 INFO    ] 200
[2026-08-25 00:35:16,574.574 INFO    ] True
[2026-08-25 00:35:16,759.759 INFO    ] 200
[2026-08-25 00:35:16,762.762 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 00:35:16,765.765 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-25 00:35:16,768.768 INFO    ] *** process_order ***
[2026-08-25 00:35:17,949.949 INFO    ] 200
[2026-08-25 00:35:17,951.951 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 00:35:17,954.954 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'delay': 0}
[2026-08-25 00:35:17,956.956 INFO    ] *** process_order ***
[2026-08-25 00:35:17,959.959 INFO    ] publish_status: order_id=TM03202401260825003421445
[2026-08-25 00:35:17,962.962 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825003421445
[2026-08-25 00:35:18,023.023 INFO    ] [publish_status] Message added to stream with ID: 1787598317989-0
[2026-08-25 00:35:18,026.026 INFO    ] Published to order:TM03202401260825003421445: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  "}, "voiceNote": "Door is open...", "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "delay": 0}', 'server_status': 'doorOpened', 'order_id': 'TM03202401260825003421445'} (ID: 1787598317989-0)
[2026-08-25 00:35:19,082.082 INFO    ] 2026-08-25 00:35:19
[2026-08-25 00:35:19,086.086 INFO    ] publish_status: order_id=TM03202401260825003421445
[2026-08-25 00:35:19,088.088 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825003421445
[2026-08-25 00:35:19,186.186 INFO    ] [publish_status] Message added to stream with ID: 1787598319150-0
[2026-08-25 00:35:19,188.188 INFO    ] Published to order:TM03202401260825003421445: {'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "Note": ""}, "voiceNote": "Please Wait", "status": "True", "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "delay": 0}', 'timestamp': '2026-08-24T19:05:19.084146Z', 'server_status': 'processOrder', 'order_id': 'TM03202401260825003421445'} (ID: 1787598319150-0)
[2026-08-25 00:35:19,318.318 INFO    ] {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'Note': ''}, 'voiceNote': 'Please Wait', 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'rstatus': True, 'delay': 0}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825003421445'}
[2026-08-25 00:35:19,321.321 INFO    ] 200
[2026-08-25 00:35:19,323.323 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","Note":""},"voiceNote":"Please Wait","status":"true","SectionMain":{"Header":"Processing Order"},"rstatus":true,"delay":0},"server_status":"processOrder","order_id":"TM03202401260825003421445"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 00:35:19,326.326 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'delay': 0}, 'order_id': 'TM03202401260825003421445'}, 'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}}
[2026-08-25 00:35:19,329.329 INFO    ] 2026-08-25 00:35:19
[2026-08-25 00:35:19,331.331 INFO    ] None
[2026-08-25 00:35:19,334.334 INFO    ] Opening Door now
[2026-08-25 00:35:19,337.337 INFO    ] Opening Door now
[2026-08-25 00:35:19,339.339 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 00:35:19,342.342 INFO    ] 2026-08-25 00:35:19
[2026-08-25 00:35:19,345.345 INFO    ] playing audio file
[2026-08-25 00:35:19,362.362 INFO    ] 2026-08-25 00:35:19
[2026-08-25 00:35:19,365.365 INFO    ] 2026-08-25 00:35:19
[2026-08-25 00:35:22,427.427 INFO    ] 200
[2026-08-25 00:35:22,430.430 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 00:35:22,433.433 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-25 00:35:25,547.547 INFO    ] 200
[2026-08-25 00:35:25,550.550 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 00:35:25,554.554 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-25 00:35:28,613.613 INFO    ] 200
[2026-08-25 00:35:28,616.616 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 00:35:28,620.620 INFO    ] Please close door 1
[2026-08-25 00:35:28,623.623 INFO    ] Please close door 1
[2026-08-25 00:35:28,626.626 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 00:35:28,630.630 INFO    ] 2026-08-25 00:35:28
[2026-08-25 00:35:28,633.633 INFO    ] playing audio file
[2026-08-25 00:35:28,651.651 INFO    ] 2026-08-25 00:35:28
[2026-08-25 00:35:28,656.656 INFO    ] publish_status: order_id=TM03202401260825003421445
[2026-08-25 00:35:28,659.659 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825003421445
[2026-08-25 00:35:28,768.768 INFO    ] [publish_status] Message added to stream with ID: 1787598328732-0
[2026-08-25 00:35:28,771.771 INFO    ] Published to order:TM03202401260825003421445: {'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "Note": "Please Close the door after picking up products"}, "voiceNote": "Please close door 1", "status": "False", "SectionMain": {"Header": "Door Open"}, "rstatus": false, "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}}', 'timestamp': '2026-08-24T19:05:28.653740Z', 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825003421445'} (ID: 1787598328732-0)
[2026-08-25 00:35:29,339.339 INFO    ] {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825003421445'}
[2026-08-25 00:35:29,342.342 INFO    ] 200
[2026-08-25 00:35:29,345.345 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"Maxvita Coconut Cookies 40gm"}],"Header":"Pick the below items from the door"},"SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","Note":"Please Close the door after picking up products"},"voiceNote":"Please close door 1","status":"false","SectionMain":{"Header":"Door Open"},"rstatus":false,"error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"}},"server_status":"OrderStatus","order_id":"TM03202401260825003421445"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 00:35:29,350.350 INFO    ] {'data': {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}}, 'order_id': 'TM03202401260825003421445'}, 'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}}
[2026-08-25 00:35:29,355.355 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-25 00:35:32,426.426 INFO    ] 200
[2026-08-25 00:35:32,430.430 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 00:35:32,433.433 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'rstatus': False, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}}
[2026-08-25 00:35:35,517.517 INFO    ] 200
[2026-08-25 00:35:35,520.520 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 00:35:35,523.523 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'delay': 100}
[2026-08-25 00:35:35,526.526 INFO    ] 2026-08-25 00:35:35
[2026-08-25 00:35:35,528.528 INFO    ] Order Completed 
[2026-08-25 00:35:35,531.531 INFO    ] Order Completed 
[2026-08-25 00:35:35,533.533 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 00:35:35,536.536 INFO    ] 2026-08-25 00:35:35
[2026-08-25 00:35:35,539.539 INFO    ] playing audio file
[2026-08-25 00:35:35,557.557 INFO    ] 2026-08-25 00:35:35
[2026-08-25 00:35:35,560.560 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'rstatus': True, 'delay': 100}
[2026-08-25 00:35:35,563.563 INFO    ] 2026-08-25 00:35:35
[2026-08-25 00:35:39,226.226 INFO    ] 200
[2026-08-25 00:35:39,229.229 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825003421445", "skus": [{"image_url": "https://images.tinymart.in/product/4500725-5961.png", "skuid": "4500725", "door_id": "", "unit_price": "10", "qty": 1, "tray_id": "26", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm per peice", "sku_total": 10.0}], "res": "True", "total_amount": 10.0, "logic": "WBL"}
[2026-08-25 00:35:39,232.232 INFO    ] {'anomaly': 0, 'res': 'True', 'orderId': 'TM03202401260825003421445', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10.0, 'unit_price': '10', 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26'}], 'total_amount': 10.0, 'rstatus': True, 'logic': 'WBL'}
[2026-08-25 00:35:39,234.234 INFO    ] {'anomaly': 0, 'res': 'True', 'orderId': 'TM03202401260825003421445', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10.0, 'unit_price': '10', 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26'}], 'total_amount': 10.0, 'rstatus': True, 'logic': 'WBL'}
[2026-08-25 00:35:39,237.237 INFO    ] 2026-08-25 00:35:39
[2026-08-25 00:35:39,239.239 INFO    ] 2026-08-25 00:35:39
[2026-08-25 00:35:39,242.242 INFO    ] 10
[2026-08-25 00:35:39,244.244 INFO    ] 2026-08-25 00:35:39
[2026-08-25 00:35:39,247.247 INFO    ] 2026-08-25 00:35:39
[2026-08-25 00:35:39,249.249 INFO    ]  Your Bill Amount is 10
[2026-08-25 00:35:39,251.251 INFO    ]  Your Bill Amount is 10
[2026-08-25 00:35:39,254.254 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-08-25 00:35:39,256.256 INFO    ] 2026-08-25 00:35:39
[2026-08-25 00:35:39,259.259 INFO    ] playing audio file
[2026-08-25 00:35:39,276.276 INFO    ] 2026-08-25 00:35:39
[2026-08-25 00:35:39,279.279 INFO    ] 2026-08-25 00:35:39
[2026-08-25 00:35:39,282.282 INFO    ] publish_status: order_id=TM03202401260825003421445
[2026-08-25 00:35:39,285.285 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825003421445
[2026-08-25 00:35:39,353.353 INFO    ] [publish_status] Message added to stream with ID: 1787598339317-0
[2026-08-25 00:35:39,356.356 INFO    ] Published to order:TM03202401260825003421445: {'server_response': '{"anomaly": 0, "res": "True", "orderId": "TM03202401260825003421445", "skus": [{"skuid": "4500725", "qty": 1, "sku_total": 10.0, "unit_price": "10", "mrp": "10", "door_id": "", "image_url": "https://images.tinymart.in/product/4500725-5961.png", "name": "Maxvita Coconut Cookies 40gm per peice", "tray_id": "26"}], "total_amount": 10.0, "rstatus": true, "logic": "WBL"}', 'timestamp': '2026-08-24T19:05:39.281010Z', 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825003421445'} (ID: 1787598339317-0)
[2026-08-25 00:35:40,218.218 INFO    ] {'server_response': {'anomaly': 0, 'res': 'True', 'orderId': 'TM03202401260825003421445', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10.0, 'unit_price': '10', 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26'}], 'total_amount': 10.0, 'rstatus': True, 'logic': 'WBL'}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825003421445'}
[2026-08-25 00:35:40,221.221 INFO    ] 200
[2026-08-25 00:35:40,224.224 INFO    ] {"data":{"server_response":{"anomaly":0,"res":"true","orderId":"TM03202401260825003421445","skus":[{"skuid":"4500725","qty":1,"sku_total":10,"unit_price":"10","mrp":"10","door_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm per peice","tray_id":"26"}],"total_amount":10,"rstatus":true,"logic":"WBL"},"server_status":"invoiceOrder","order_id":"TM03202401260825003421445"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 00:35:40,228.228 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'res': 'true', 'orderId': 'TM03202401260825003421445', 'skus': [{'skuid': '4500725', 'qty': 1, 'mrp': '10', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26'}], 'total_amount': 10, 'rstatus': True, 'logic': 'WBL'}, 'order_id': 'TM03202401260825003421445'}, 'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}}
[2026-08-25 00:35:40,231.231 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'anomaly': 0, 'res': 'true', 'orderId': 'TM03202401260825003421445', 'skus': [{'skuid': '4500725', 'qty': 1, 'mrp': '10', 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26'}], 'total_amount': 10, 'rstatus': True, 'logic': 'WBL'}, 'order_id': 'TM03202401260825003421445'}, 'response': {'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully'}}
[2026-08-25 00:35:40,233.233 INFO    ] 2026-08-25 00:35:40
[2026-08-25 00:35:44,841.841 INFO    ] 200
[2026-08-25 00:35:44,843.843 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": ["TM03202401260825003421445_0"], "order_items": [], "tray_synced": ["TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445", "TM03202401260825003421445"], "status": true}
[2026-08-25 00:35:44,850.850 INFO    ] 2026-08-25 00:35:44
[2026-08-25 00:35:44,973.973 INFO    ] 200
[2026-08-25 00:35:44,976.976 INFO    ] True
[2026-08-25 00:35:44,978.978 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825003421445
[2026-08-25 00:35:44,982.982 INFO    ] start order file deleted
[2026-08-25 00:35:44,984.984 INFO    ] Checking for system updates...
[2026-08-25 00:35:45,019.019 INFO    ] 200
[2026-08-25 00:35:45,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:45,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:35:45,098.098 INFO    ] No update needed
[2026-08-25 00:35:45,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 00:35:45,144.144 INFO    ] 200
[2026-08-25 00:35:45,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:45,187.187 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:35:45,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:35:45,236.236 INFO    ] No camera update needed
[2026-08-25 00:35:45,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:35:45,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:35:45,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:35:45,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:35:47,291.291 INFO    ] ================================================
[2026-08-25 00:35:47,307.307 INFO    ] Launching Daemon at Tue Aug 25 00:35:47 IST 2026
[2026-08-25 00:35:47,318.318 INFO    ] ================================================
[2026-08-25 00:35:47,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:35:47
[2026-08-25 00:35:48,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:35:48,760.760 INFO    ] Initializing speech engine...
[2026-08-25 00:35:48,779.779 INFO    ] 2026-08-25 00:35:48
[2026-08-25 00:35:49,053.053 INFO    ] 2026-08-25 00:35:49
[2026-08-25 00:35:49,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:35:49,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:35:49,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:35:49,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:35:49,533.533 INFO    ] time= 25/08/2026 00:35:49
[2026-08-25 00:35:49,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:35:49,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:35:49,787.787 INFO    ] No existing commands found in stream
[2026-08-25 00:35:54,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:35:54,810.810 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 00:35:58,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:35:58,743.743 INFO    ] Checking for system updates...
[2026-08-25 00:35:58,780.780 INFO    ] 200
[2026-08-25 00:35:58,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:58,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:35:58,848.848 INFO    ] No update needed
[2026-08-25 00:35:58,851.851 INFO    ] Checking for camera pi updates...
[2026-08-25 00:35:58,884.884 INFO    ] 200
[2026-08-25 00:35:58,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:35:58,933.933 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:35:58,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:35:58,991.991 INFO    ] No camera update needed
[2026-08-25 00:35:58,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:35:58,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:35:59,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:35:59,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:36:01,050.050 INFO    ] ================================================
[2026-08-25 00:36:01,066.066 INFO    ] Launching Daemon at Tue Aug 25 00:36:01 IST 2026
[2026-08-25 00:36:01,077.077 INFO    ] ================================================
[2026-08-25 00:36:01,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:36:01
[2026-08-25 00:36:02,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:36:02,780.780 INFO    ] Initializing speech engine...
[2026-08-25 00:36:02,793.793 INFO    ] 2026-08-25 00:36:02
[2026-08-25 00:36:03,078.078 INFO    ] 2026-08-25 00:36:03
[2026-08-25 00:36:03,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:36:03,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:36:03,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:36:03,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:36:03,675.675 INFO    ] time= 25/08/2026 00:36:03
[2026-08-25 00:36:03,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:36:03,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:36:03,848.848 INFO    ] No existing commands found in stream
[2026-08-25 00:36:08,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:36:08,875.875 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 00:36:12,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:36:12,046.046 INFO    ] Checking for system updates...
[2026-08-25 00:36:12,085.085 INFO    ] 200
[2026-08-25 00:36:12,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:12,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:12,150.150 INFO    ] No update needed
[2026-08-25 00:36:12,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 00:36:12,191.191 INFO    ] 200
[2026-08-25 00:36:12,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:12,240.240 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:36:12,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:12,292.292 INFO    ] No camera update needed
[2026-08-25 00:36:12,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:36:12,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:36:12,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:36:12,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:36:14,350.350 INFO    ] ================================================
[2026-08-25 00:36:14,365.365 INFO    ] Launching Daemon at Tue Aug 25 00:36:14 IST 2026
[2026-08-25 00:36:14,376.376 INFO    ] ================================================
[2026-08-25 00:36:14,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:36:14
[2026-08-25 00:36:15,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:36:15,843.843 INFO    ] Initializing speech engine...
[2026-08-25 00:36:15,849.849 INFO    ] 2026-08-25 00:36:15
[2026-08-25 00:36:16,120.120 INFO    ] 2026-08-25 00:36:16
[2026-08-25 00:36:16,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:36:16,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:36:16,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:36:16,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:36:16,590.590 INFO    ] time= 25/08/2026 00:36:16
[2026-08-25 00:36:16,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:36:16,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:36:16,783.783 INFO    ] No existing commands found in stream
[2026-08-25 00:36:21,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:36:21,813.813 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 00:36:24,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:36:24,925.925 INFO    ] Checking for system updates...
[2026-08-25 00:36:24,960.960 INFO    ] 200
[2026-08-25 00:36:24,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:25,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:25,018.018 INFO    ] No update needed
[2026-08-25 00:36:25,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 00:36:25,060.060 INFO    ] 200
[2026-08-25 00:36:25,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:25,104.104 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:36:25,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:25,156.156 INFO    ] No camera update needed
[2026-08-25 00:36:25,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:36:25,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:36:25,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:36:25,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:36:27,211.211 INFO    ] ================================================
[2026-08-25 00:36:27,226.226 INFO    ] Launching Daemon at Tue Aug 25 00:36:27 IST 2026
[2026-08-25 00:36:27,237.237 INFO    ] ================================================
[2026-08-25 00:36:27,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:36:27
[2026-08-25 00:36:28,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:36:28,703.703 INFO    ] Initializing speech engine...
[2026-08-25 00:36:28,712.712 INFO    ] 2026-08-25 00:36:28
[2026-08-25 00:36:29,010.010 INFO    ] 2026-08-25 00:36:28
[2026-08-25 00:36:29,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:36:29,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:36:29,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:36:29,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:36:29,424.424 INFO    ] time= 25/08/2026 00:36:29
[2026-08-25 00:36:29,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:36:29,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:36:29,511.511 INFO    ] No existing commands found in stream
[2026-08-25 00:36:34,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:36:34,549.549 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 00:36:37,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:36:37,734.734 INFO    ] Checking for system updates...
[2026-08-25 00:36:37,774.774 INFO    ] 200
[2026-08-25 00:36:37,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:37,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:37,831.831 INFO    ] No update needed
[2026-08-25 00:36:37,834.834 INFO    ] Checking for camera pi updates...
[2026-08-25 00:36:37,867.867 INFO    ] 200
[2026-08-25 00:36:37,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:37,909.909 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:36:38,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:38,058.058 INFO    ] No camera update needed
[2026-08-25 00:36:38,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:36:38,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:36:38,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:36:38,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:36:40,113.113 INFO    ] ================================================
[2026-08-25 00:36:40,128.128 INFO    ] Launching Daemon at Tue Aug 25 00:36:40 IST 2026
[2026-08-25 00:36:40,138.138 INFO    ] ================================================
[2026-08-25 00:36:40,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:36:40
[2026-08-25 00:36:41,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:36:41,556.556 INFO    ] Initializing speech engine...
[2026-08-25 00:36:41,565.565 INFO    ] 2026-08-25 00:36:41
[2026-08-25 00:36:41,828.828 INFO    ] 2026-08-25 00:36:41
[2026-08-25 00:36:41,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:36:42,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:36:42,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:36:42,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:36:42,285.285 INFO    ] time= 25/08/2026 00:36:42
[2026-08-25 00:36:42,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:36:42,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:36:42,510.510 INFO    ] No existing commands found in stream
[2026-08-25 00:36:47,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:36:47,538.538 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 00:36:50,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:36:50,326.326 INFO    ] Checking for system updates...
[2026-08-25 00:36:50,365.365 INFO    ] 200
[2026-08-25 00:36:50,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:50,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:50,421.421 INFO    ] No update needed
[2026-08-25 00:36:50,424.424 INFO    ] Checking for camera pi updates...
[2026-08-25 00:36:50,458.458 INFO    ] 200
[2026-08-25 00:36:50,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:36:50,501.501 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:36:50,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:36:50,556.556 INFO    ] No camera update needed
[2026-08-25 00:36:50,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:36:50,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:36:50,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:36:50,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:36:52,613.613 INFO    ] ================================================
[2026-08-25 00:36:52,628.628 INFO    ] Launching Daemon at Tue Aug 25 00:36:52 IST 2026
[2026-08-25 00:36:52,638.638 INFO    ] ================================================
[2026-08-25 00:36:53,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:36:53
[2026-08-25 00:36:53,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:36:54,095.095 INFO    ] Initializing speech engine...
[2026-08-25 00:36:54,113.113 INFO    ] 2026-08-25 00:36:54
[2026-08-25 00:36:54,398.398 INFO    ] 2026-08-25 00:36:54
[2026-08-25 00:36:54,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:36:54,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:36:54,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:36:54,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:36:54,780.780 INFO    ] time= 25/08/2026 00:36:54
[2026-08-25 00:36:54,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:36:54,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:36:54,967.967 INFO    ] No existing commands found in stream
[2026-08-25 00:36:59,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:36:59,994.994 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 00:37:01,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:37:01,867.867 INFO    ] Checking for system updates...
[2026-08-25 00:37:01,903.903 INFO    ] 200
[2026-08-25 00:37:01,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:02,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:37:02,013.013 INFO    ] No update needed
[2026-08-25 00:37:02,022.022 INFO    ] Checking for camera pi updates...
[2026-08-25 00:37:02,100.100 INFO    ] 200
[2026-08-25 00:37:02,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:02,176.176 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:37:02,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:37:02,263.263 INFO    ] No camera update needed
[2026-08-25 00:37:02,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:37:02,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:37:02,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:37:02,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:37:04,330.330 INFO    ] ================================================
[2026-08-25 00:37:04,345.345 INFO    ] Launching Daemon at Tue Aug 25 00:37:04 IST 2026
[2026-08-25 00:37:04,356.356 INFO    ] ================================================
[2026-08-25 00:37:04,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:37:04
[2026-08-25 00:37:05,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:37:05,875.875 INFO    ] Initializing speech engine...
[2026-08-25 00:37:05,889.889 INFO    ] 2026-08-25 00:37:05
[2026-08-25 00:37:06,178.178 INFO    ] 2026-08-25 00:37:06
[2026-08-25 00:37:06,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:37:06,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:37:06,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:37:06,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:37:06,715.715 INFO    ] time= 25/08/2026 00:37:06
[2026-08-25 00:37:06,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:37:06,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:37:06,866.866 INFO    ] No existing commands found in stream
[2026-08-25 00:37:11,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:37:11,895.895 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 00:37:16,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:37:16,197.197 INFO    ] Checking for system updates...
[2026-08-25 00:37:16,240.240 INFO    ] 200
[2026-08-25 00:37:16,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:16,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:37:16,310.310 INFO    ] No update needed
[2026-08-25 00:37:16,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 00:37:16,350.350 INFO    ] 200
[2026-08-25 00:37:16,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:16,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:37:16,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:37:16,450.450 INFO    ] No camera update needed
[2026-08-25 00:37:16,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:37:16,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:37:16,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:37:16,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:37:18,507.507 INFO    ] ================================================
[2026-08-25 00:37:18,522.522 INFO    ] Launching Daemon at Tue Aug 25 00:37:18 IST 2026
[2026-08-25 00:37:18,541.541 INFO    ] ================================================
[2026-08-25 00:37:19,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:37:19
[2026-08-25 00:37:19,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:37:19,982.982 INFO    ] Initializing speech engine...
[2026-08-25 00:37:19,990.990 INFO    ] 2026-08-25 00:37:19
[2026-08-25 00:37:20,297.297 INFO    ] 2026-08-25 00:37:20
[2026-08-25 00:37:20,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:37:20,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:37:20,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:37:20,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:37:20,731.731 INFO    ] time= 25/08/2026 00:37:20
[2026-08-25 00:37:20,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:37:20,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:37:20,897.897 INFO    ] No existing commands found in stream
[2026-08-25 00:37:25,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:37:25,930.930 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 00:37:29,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:37:29,526.526 INFO    ] Checking for system updates...
[2026-08-25 00:37:29,562.562 INFO    ] 200
[2026-08-25 00:37:29,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:29,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:37:29,628.628 INFO    ] No update needed
[2026-08-25 00:37:29,631.631 INFO    ] Checking for camera pi updates...
[2026-08-25 00:37:29,670.670 INFO    ] 200
[2026-08-25 00:37:29,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:29,712.712 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:37:29,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:37:29,765.765 INFO    ] No camera update needed
[2026-08-25 00:37:29,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:37:29,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:37:29,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:37:29,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:37:31,822.822 INFO    ] ================================================
[2026-08-25 00:37:31,838.838 INFO    ] Launching Daemon at Tue Aug 25 00:37:31 IST 2026
[2026-08-25 00:37:31,850.850 INFO    ] ================================================
[2026-08-25 00:37:32,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:37:32
[2026-08-25 00:37:33,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:37:33,575.575 INFO    ] Initializing speech engine...
[2026-08-25 00:37:33,586.586 INFO    ] 2026-08-25 00:37:33
[2026-08-25 00:37:33,860.860 INFO    ] 2026-08-25 00:37:33
[2026-08-25 00:37:33,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:37:34,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:37:34,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:37:34,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:37:34,342.342 INFO    ] time= 25/08/2026 00:37:34
[2026-08-25 00:37:34,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:37:34,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:37:34,584.584 INFO    ] No existing commands found in stream
[2026-08-25 00:37:39,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:37:39,608.608 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 00:37:41,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:37:41,393.393 INFO    ] Checking for system updates...
[2026-08-25 00:37:41,433.433 INFO    ] 200
[2026-08-25 00:37:41,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:41,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:37:41,500.500 INFO    ] No update needed
[2026-08-25 00:37:41,503.503 INFO    ] Checking for camera pi updates...
[2026-08-25 00:37:41,537.537 INFO    ] 200
[2026-08-25 00:37:41,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:41,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:37:41,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:37:41,639.639 INFO    ] No camera update needed
[2026-08-25 00:37:41,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:37:41,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:37:41,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:37:41,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:37:43,698.698 INFO    ] ================================================
[2026-08-25 00:37:43,714.714 INFO    ] Launching Daemon at Tue Aug 25 00:37:43 IST 2026
[2026-08-25 00:37:43,725.725 INFO    ] ================================================
[2026-08-25 00:37:44,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:37:44
[2026-08-25 00:37:44,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:37:45,201.201 INFO    ] Initializing speech engine...
[2026-08-25 00:37:45,213.213 INFO    ] 2026-08-25 00:37:45
[2026-08-25 00:37:45,483.483 INFO    ] 2026-08-25 00:37:45
[2026-08-25 00:37:45,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:37:45,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:37:45,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:37:45,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:37:45,968.968 INFO    ] time= 25/08/2026 00:37:45
[2026-08-25 00:37:46,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:37:46,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:37:46,159.159 INFO    ] No existing commands found in stream
[2026-08-25 00:37:51,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:37:51,198.198 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 00:37:55,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:37:55,289.289 INFO    ] Checking for system updates...
[2026-08-25 00:37:55,327.327 INFO    ] 200
[2026-08-25 00:37:55,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:55,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:37:55,385.385 INFO    ] No update needed
[2026-08-25 00:37:55,388.388 INFO    ] Checking for camera pi updates...
[2026-08-25 00:37:55,426.426 INFO    ] 200
[2026-08-25 00:37:55,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:37:55,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:37:55,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:37:55,528.528 INFO    ] No camera update needed
[2026-08-25 00:37:55,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:37:55,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:37:55,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:37:55,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:37:57,586.586 INFO    ] ================================================
[2026-08-25 00:37:57,601.601 INFO    ] Launching Daemon at Tue Aug 25 00:37:57 IST 2026
[2026-08-25 00:37:57,612.612 INFO    ] ================================================
[2026-08-25 00:37:58,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:37:58
[2026-08-25 00:37:58,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:37:59,064.064 INFO    ] Initializing speech engine...
[2026-08-25 00:37:59,072.072 INFO    ] 2026-08-25 00:37:59
[2026-08-25 00:37:59,343.343 INFO    ] 2026-08-25 00:37:59
[2026-08-25 00:37:59,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:37:59,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:37:59,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:37:59,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:37:59,789.789 INFO    ] time= 25/08/2026 00:37:59
[2026-08-25 00:37:59,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:37:59,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:38:00,035.035 INFO    ] No existing commands found in stream
[2026-08-25 00:38:05,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:38:05,056.056 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 00:38:06,923.923 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:38:06,926.926 INFO    ] Checking for system updates...
[2026-08-25 00:38:06,963.963 INFO    ] 200
[2026-08-25 00:38:06,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:07,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:38:07,021.021 INFO    ] No update needed
[2026-08-25 00:38:07,024.024 INFO    ] Checking for camera pi updates...
[2026-08-25 00:38:07,058.058 INFO    ] 200
[2026-08-25 00:38:07,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:07,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:38:07,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:38:07,153.153 INFO    ] No camera update needed
[2026-08-25 00:38:07,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:38:07,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:38:07,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:38:07,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:38:09,211.211 INFO    ] ================================================
[2026-08-25 00:38:09,227.227 INFO    ] Launching Daemon at Tue Aug 25 00:38:09 IST 2026
[2026-08-25 00:38:09,238.238 INFO    ] ================================================
[2026-08-25 00:38:09,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:38:09
[2026-08-25 00:38:10,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:38:10,924.924 INFO    ] Initializing speech engine...
[2026-08-25 00:38:10,933.933 INFO    ] 2026-08-25 00:38:10
[2026-08-25 00:38:11,224.224 INFO    ] 2026-08-25 00:38:11
[2026-08-25 00:38:11,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:38:11,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:38:11,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:38:11,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:38:11,632.632 INFO    ] time= 25/08/2026 00:38:11
[2026-08-25 00:38:11,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:38:11,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:38:11,812.812 INFO    ] No existing commands found in stream
[2026-08-25 00:38:16,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:38:16,841.841 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 00:38:19,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:38:19,113.113 INFO    ] Checking for system updates...
[2026-08-25 00:38:19,150.150 INFO    ] 200
[2026-08-25 00:38:19,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:19,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:38:19,209.209 INFO    ] No update needed
[2026-08-25 00:38:19,211.211 INFO    ] Checking for camera pi updates...
[2026-08-25 00:38:19,249.249 INFO    ] 200
[2026-08-25 00:38:19,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:19,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:38:19,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:38:19,355.355 INFO    ] No camera update needed
[2026-08-25 00:38:19,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:38:19,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:38:19,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:38:19,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:38:21,412.412 INFO    ] ================================================
[2026-08-25 00:38:21,427.427 INFO    ] Launching Daemon at Tue Aug 25 00:38:21 IST 2026
[2026-08-25 00:38:21,438.438 INFO    ] ================================================
[2026-08-25 00:38:22,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:38:22
[2026-08-25 00:38:22,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:38:22,887.887 INFO    ] Initializing speech engine...
[2026-08-25 00:38:22,900.900 INFO    ] 2026-08-25 00:38:22
[2026-08-25 00:38:23,188.188 INFO    ] 2026-08-25 00:38:23
[2026-08-25 00:38:23,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:38:23,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:38:23,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:38:23,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:38:23,602.602 INFO    ] time= 25/08/2026 00:38:23
[2026-08-25 00:38:23,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:38:23,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:38:23,789.789 INFO    ] No existing commands found in stream
[2026-08-25 00:38:28,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:38:28,822.822 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 00:38:32,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:38:32,947.947 INFO    ] Checking for system updates...
[2026-08-25 00:38:32,990.990 INFO    ] 200
[2026-08-25 00:38:32,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:33,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:38:33,058.058 INFO    ] No update needed
[2026-08-25 00:38:33,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 00:38:33,100.100 INFO    ] 200
[2026-08-25 00:38:33,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:33,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:38:33,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:38:33,198.198 INFO    ] No camera update needed
[2026-08-25 00:38:33,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:38:33,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:38:33,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:38:33,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:38:35,259.259 INFO    ] ================================================
[2026-08-25 00:38:35,274.274 INFO    ] Launching Daemon at Tue Aug 25 00:38:35 IST 2026
[2026-08-25 00:38:35,285.285 INFO    ] ================================================
[2026-08-25 00:38:35,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:38:35
[2026-08-25 00:38:36,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:38:36,750.750 INFO    ] Initializing speech engine...
[2026-08-25 00:38:36,775.775 INFO    ] 2026-08-25 00:38:36
[2026-08-25 00:38:37,048.048 INFO    ] 2026-08-25 00:38:37
[2026-08-25 00:38:37,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:38:37,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:38:37,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:38:37,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:38:37,458.458 INFO    ] time= 25/08/2026 00:38:37
[2026-08-25 00:38:37,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:38:37,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:38:37,548.548 INFO    ] No existing commands found in stream
[2026-08-25 00:38:42,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:38:42,563.563 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 00:38:44,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:38:44,935.935 INFO    ] Checking for system updates...
[2026-08-25 00:38:44,971.971 INFO    ] 200
[2026-08-25 00:38:44,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:45,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:38:45,030.030 INFO    ] No update needed
[2026-08-25 00:38:45,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 00:38:45,066.066 INFO    ] 200
[2026-08-25 00:38:45,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:45,109.109 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:38:45,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:38:45,259.259 INFO    ] No camera update needed
[2026-08-25 00:38:45,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:38:45,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:38:45,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:38:45,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:38:47,317.317 INFO    ] ================================================
[2026-08-25 00:38:47,333.333 INFO    ] Launching Daemon at Tue Aug 25 00:38:47 IST 2026
[2026-08-25 00:38:47,345.345 INFO    ] ================================================
[2026-08-25 00:38:47,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:38:47
[2026-08-25 00:38:48,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:38:48,788.788 INFO    ] Initializing speech engine...
[2026-08-25 00:38:48,797.797 INFO    ] 2026-08-25 00:38:48
[2026-08-25 00:38:49,090.090 INFO    ] 2026-08-25 00:38:49
[2026-08-25 00:38:49,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:38:49,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:38:49,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:38:49,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:38:49,506.506 INFO    ] time= 25/08/2026 00:38:49
[2026-08-25 00:38:49,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:38:49,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:38:49,682.682 INFO    ] No existing commands found in stream
[2026-08-25 00:38:54,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:38:54,710.710 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 00:38:59,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:38:59,009.009 INFO    ] Checking for system updates...
[2026-08-25 00:38:59,045.045 INFO    ] 200
[2026-08-25 00:38:59,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:59,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:38:59,108.108 INFO    ] No update needed
[2026-08-25 00:38:59,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 00:38:59,144.144 INFO    ] 200
[2026-08-25 00:38:59,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:38:59,191.191 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:38:59,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:38:59,237.237 INFO    ] No camera update needed
[2026-08-25 00:38:59,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:38:59,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:38:59,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:38:59,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:39:01,295.295 INFO    ] ================================================
[2026-08-25 00:39:01,310.310 INFO    ] Launching Daemon at Tue Aug 25 00:39:01 IST 2026
[2026-08-25 00:39:01,321.321 INFO    ] ================================================
[2026-08-25 00:39:02,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:39:02
[2026-08-25 00:39:02,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:39:03,198.198 INFO    ] Initializing speech engine...
[2026-08-25 00:39:03,214.214 INFO    ] 2026-08-25 00:39:03
[2026-08-25 00:39:03,498.498 INFO    ] 2026-08-25 00:39:03
[2026-08-25 00:39:03,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:39:03,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:39:03,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:39:03,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:39:04,010.010 INFO    ] time= 25/08/2026 00:39:03
[2026-08-25 00:39:04,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:39:04,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:39:04,215.215 INFO    ] No existing commands found in stream
[2026-08-25 00:39:09,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:39:09,239.239 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 00:39:12,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:39:12,376.376 INFO    ] Checking for system updates...
[2026-08-25 00:39:12,411.411 INFO    ] 200
[2026-08-25 00:39:12,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:12,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:39:12,468.468 INFO    ] No update needed
[2026-08-25 00:39:12,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 00:39:12,504.504 INFO    ] 200
[2026-08-25 00:39:12,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:12,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:39:12,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:39:12,599.599 INFO    ] No camera update needed
[2026-08-25 00:39:12,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:39:12,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:39:12,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:39:12,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:39:14,654.654 INFO    ] ================================================
[2026-08-25 00:39:14,669.669 INFO    ] Launching Daemon at Tue Aug 25 00:39:14 IST 2026
[2026-08-25 00:39:14,680.680 INFO    ] ================================================
[2026-08-25 00:39:15,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:39:15
[2026-08-25 00:39:15,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:39:16,127.127 INFO    ] Initializing speech engine...
[2026-08-25 00:39:16,133.133 INFO    ] 2026-08-25 00:39:16
[2026-08-25 00:39:16,393.393 INFO    ] 2026-08-25 00:39:16
[2026-08-25 00:39:16,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:39:16,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:39:16,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:39:16,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:39:16,862.862 INFO    ] time= 25/08/2026 00:39:16
[2026-08-25 00:39:16,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:39:16,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:39:17,074.074 INFO    ] No existing commands found in stream
[2026-08-25 00:39:22,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:39:22,102.102 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 00:39:24,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:39:24,865.865 INFO    ] Checking for system updates...
[2026-08-25 00:39:24,900.900 INFO    ] 200
[2026-08-25 00:39:24,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:24,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:39:24,961.961 INFO    ] No update needed
[2026-08-25 00:39:24,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 00:39:24,998.998 INFO    ] 200
[2026-08-25 00:39:25,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:25,041.041 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:39:25,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:39:25,111.111 INFO    ] No camera update needed
[2026-08-25 00:39:25,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:39:25,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:39:25,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:39:25,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:39:27,169.169 INFO    ] ================================================
[2026-08-25 00:39:27,185.185 INFO    ] Launching Daemon at Tue Aug 25 00:39:27 IST 2026
[2026-08-25 00:39:27,196.196 INFO    ] ================================================
[2026-08-25 00:39:27,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:39:27
[2026-08-25 00:39:28,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:39:28,843.843 INFO    ] Initializing speech engine...
[2026-08-25 00:39:28,856.856 INFO    ] 2026-08-25 00:39:28
[2026-08-25 00:39:29,171.171 INFO    ] 2026-08-25 00:39:29
[2026-08-25 00:39:29,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:39:29,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:39:29,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:39:29,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:39:29,686.686 INFO    ] time= 25/08/2026 00:39:29
[2026-08-25 00:39:29,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:39:29,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:39:29,831.831 INFO    ] No existing commands found in stream
[2026-08-25 00:39:34,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:39:34,859.859 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 00:39:39,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:39:39,028.028 INFO    ] Checking for system updates...
[2026-08-25 00:39:39,069.069 INFO    ] 200
[2026-08-25 00:39:39,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:39,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:39:39,128.128 INFO    ] No update needed
[2026-08-25 00:39:39,131.131 INFO    ] Checking for camera pi updates...
[2026-08-25 00:39:39,166.166 INFO    ] 200
[2026-08-25 00:39:39,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:39,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:39:39,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:39:39,260.260 INFO    ] No camera update needed
[2026-08-25 00:39:39,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:39:39,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:39:39,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:39:39,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:39:41,317.317 INFO    ] ================================================
[2026-08-25 00:39:41,331.331 INFO    ] Launching Daemon at Tue Aug 25 00:39:41 IST 2026
[2026-08-25 00:39:41,343.343 INFO    ] ================================================
[2026-08-25 00:39:41,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:39:41
[2026-08-25 00:39:42,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:39:42,809.809 INFO    ] Initializing speech engine...
[2026-08-25 00:39:42,815.815 INFO    ] 2026-08-25 00:39:42
[2026-08-25 00:39:43,075.075 INFO    ] 2026-08-25 00:39:43
[2026-08-25 00:39:43,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:39:43,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:39:43,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:39:43,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:39:43,553.553 INFO    ] time= 25/08/2026 00:39:43
[2026-08-25 00:39:43,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:39:43,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:39:43,757.757 INFO    ] No existing commands found in stream
[2026-08-25 00:39:48,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:39:48,785.785 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 00:39:53,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:39:53,274.274 INFO    ] Checking for system updates...
[2026-08-25 00:39:53,309.309 INFO    ] 200
[2026-08-25 00:39:53,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:53,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:39:53,366.366 INFO    ] No update needed
[2026-08-25 00:39:53,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 00:39:53,409.409 INFO    ] 200
[2026-08-25 00:39:53,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:39:53,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:39:53,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:39:53,511.511 INFO    ] No camera update needed
[2026-08-25 00:39:53,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:39:53,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:39:53,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:39:53,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:39:55,564.564 INFO    ] ================================================
[2026-08-25 00:39:55,580.580 INFO    ] Launching Daemon at Tue Aug 25 00:39:55 IST 2026
[2026-08-25 00:39:55,591.591 INFO    ] ================================================
[2026-08-25 00:39:56,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:39:56
[2026-08-25 00:39:56,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:39:57,056.056 INFO    ] Initializing speech engine...
[2026-08-25 00:39:57,067.067 INFO    ] 2026-08-25 00:39:57
[2026-08-25 00:39:57,324.324 INFO    ] 2026-08-25 00:39:57
[2026-08-25 00:39:57,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:39:57,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:39:57,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:39:57,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:39:57,862.862 INFO    ] time= 25/08/2026 00:39:57
[2026-08-25 00:39:57,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:39:57,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:39:58,030.030 INFO    ] No existing commands found in stream
[2026-08-25 00:40:03,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:40:03,066.066 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 00:40:07,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:40:07,222.222 INFO    ] Checking for system updates...
[2026-08-25 00:40:07,261.261 INFO    ] 200
[2026-08-25 00:40:07,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:07,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:40:07,321.321 INFO    ] No update needed
[2026-08-25 00:40:07,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 00:40:07,357.357 INFO    ] 200
[2026-08-25 00:40:07,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:07,401.401 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:40:07,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:40:07,450.450 INFO    ] No camera update needed
[2026-08-25 00:40:07,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:40:07,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:40:07,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:40:07,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:40:09,507.507 INFO    ] ================================================
[2026-08-25 00:40:09,522.522 INFO    ] Launching Daemon at Tue Aug 25 00:40:09 IST 2026
[2026-08-25 00:40:09,533.533 INFO    ] ================================================
[2026-08-25 00:40:10,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:40:10
[2026-08-25 00:40:10,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:40:10,999.999 INFO    ] Initializing speech engine...
[2026-08-25 00:40:11,009.009 INFO    ] 2026-08-25 00:40:11
[2026-08-25 00:40:11,255.255 INFO    ] 2026-08-25 00:40:11
[2026-08-25 00:40:11,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:40:11,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:40:11,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:40:11,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:40:11,734.734 INFO    ] time= 25/08/2026 00:40:11
[2026-08-25 00:40:11,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:40:11,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:40:11,955.955 INFO    ] No existing commands found in stream
[2026-08-25 00:40:16,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:40:16,982.982 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 00:40:20,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:40:20,352.352 INFO    ] Checking for system updates...
[2026-08-25 00:40:20,388.388 INFO    ] 200
[2026-08-25 00:40:20,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:20,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:40:20,446.446 INFO    ] No update needed
[2026-08-25 00:40:20,448.448 INFO    ] Checking for camera pi updates...
[2026-08-25 00:40:20,482.482 INFO    ] 200
[2026-08-25 00:40:20,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:20,524.524 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:40:20,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:40:20,577.577 INFO    ] No camera update needed
[2026-08-25 00:40:20,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:40:20,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:40:20,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:40:20,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:40:22,634.634 INFO    ] ================================================
[2026-08-25 00:40:22,649.649 INFO    ] Launching Daemon at Tue Aug 25 00:40:22 IST 2026
[2026-08-25 00:40:22,664.664 INFO    ] ================================================
[2026-08-25 00:40:23,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:40:23
[2026-08-25 00:40:23,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:40:24,060.060 INFO    ] Initializing speech engine...
[2026-08-25 00:40:24,069.069 INFO    ] 2026-08-25 00:40:24
[2026-08-25 00:40:24,353.353 INFO    ] 2026-08-25 00:40:24
[2026-08-25 00:40:24,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:40:24,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:40:24,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:40:24,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:40:24,722.722 INFO    ] time= 25/08/2026 00:40:24
[2026-08-25 00:40:24,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:40:24,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:40:24,843.843 INFO    ] No existing commands found in stream
[2026-08-25 00:40:29,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:40:29,858.858 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 00:40:33,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:40:33,557.557 INFO    ] Checking for system updates...
[2026-08-25 00:40:33,593.593 INFO    ] 200
[2026-08-25 00:40:33,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:33,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:40:33,650.650 INFO    ] No update needed
[2026-08-25 00:40:33,652.652 INFO    ] Checking for camera pi updates...
[2026-08-25 00:40:33,685.685 INFO    ] 200
[2026-08-25 00:40:33,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:33,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:40:33,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:40:33,791.791 INFO    ] No camera update needed
[2026-08-25 00:40:33,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:40:33,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:40:33,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:40:33,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:40:35,846.846 INFO    ] ================================================
[2026-08-25 00:40:35,861.861 INFO    ] Launching Daemon at Tue Aug 25 00:40:35 IST 2026
[2026-08-25 00:40:35,872.872 INFO    ] ================================================
[2026-08-25 00:40:36,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:40:36
[2026-08-25 00:40:37,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:40:37,301.301 INFO    ] Initializing speech engine...
[2026-08-25 00:40:37,308.308 INFO    ] 2026-08-25 00:40:37
[2026-08-25 00:40:37,568.568 INFO    ] 2026-08-25 00:40:37
[2026-08-25 00:40:37,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:40:37,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:40:37,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:40:37,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:40:38,055.055 INFO    ] time= 25/08/2026 00:40:38
[2026-08-25 00:40:38,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:40:38,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:40:38,260.260 INFO    ] No existing commands found in stream
[2026-08-25 00:40:43,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:40:43,277.277 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 00:40:47,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:40:47,407.407 INFO    ] Checking for system updates...
[2026-08-25 00:40:47,443.443 INFO    ] 200
[2026-08-25 00:40:47,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:47,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:40:47,501.501 INFO    ] No update needed
[2026-08-25 00:40:47,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 00:40:47,538.538 INFO    ] 200
[2026-08-25 00:40:47,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:40:47,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:40:47,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:40:47,725.725 INFO    ] No camera update needed
[2026-08-25 00:40:47,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:40:47,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:40:47,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:40:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:40:49,781.781 INFO    ] ================================================
[2026-08-25 00:40:49,795.795 INFO    ] Launching Daemon at Tue Aug 25 00:40:49 IST 2026
[2026-08-25 00:40:49,806.806 INFO    ] ================================================
[2026-08-25 00:40:50,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:40:50
[2026-08-25 00:40:50,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:40:51,223.223 INFO    ] Initializing speech engine...
[2026-08-25 00:40:51,233.233 INFO    ] 2026-08-25 00:40:51
[2026-08-25 00:40:51,489.489 INFO    ] 2026-08-25 00:40:51
[2026-08-25 00:40:51,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:40:51,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:40:51,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:40:51,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:40:51,946.946 INFO    ] time= 25/08/2026 00:40:51
[2026-08-25 00:40:52,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:40:52,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:40:52,161.161 INFO    ] No existing commands found in stream
[2026-08-25 00:40:57,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:40:57,189.189 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 00:41:01,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:41:01,231.231 INFO    ] Checking for system updates...
[2026-08-25 00:41:01,267.267 INFO    ] 200
[2026-08-25 00:41:01,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:01,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:41:01,325.325 INFO    ] No update needed
[2026-08-25 00:41:01,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 00:41:01,364.364 INFO    ] 200
[2026-08-25 00:41:01,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:01,407.407 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:41:01,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:41:01,464.464 INFO    ] No camera update needed
[2026-08-25 00:41:01,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:41:01,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:41:01,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:41:01,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:41:03,527.527 INFO    ] ================================================
[2026-08-25 00:41:03,545.545 INFO    ] Launching Daemon at Tue Aug 25 00:41:03 IST 2026
[2026-08-25 00:41:03,559.559 INFO    ] ================================================
[2026-08-25 00:41:04,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:41:04
[2026-08-25 00:41:04,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:41:04,990.990 INFO    ] Initializing speech engine...
[2026-08-25 00:41:04,995.995 INFO    ] 2026-08-25 00:41:04
[2026-08-25 00:41:05,289.289 INFO    ] 2026-08-25 00:41:05
[2026-08-25 00:41:05,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:41:05,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:41:05,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:41:05,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:41:05,638.638 INFO    ] time= 25/08/2026 00:41:05
[2026-08-25 00:41:05,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:41:05,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:41:05,772.772 INFO    ] No existing commands found in stream
[2026-08-25 00:41:10,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:41:10,788.788 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 00:41:11,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:41:11,995.995 INFO    ] Checking for system updates...
[2026-08-25 00:41:12,030.030 INFO    ] 200
[2026-08-25 00:41:12,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:12,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:12,088.088 INFO    ] No update needed
[2026-08-25 00:41:12,090.090 INFO    ] Checking for camera pi updates...
[2026-08-25 00:41:12,123.123 INFO    ] 200
[2026-08-25 00:41:12,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:12,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:41:12,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:12,227.227 INFO    ] No camera update needed
[2026-08-25 00:41:12,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:41:12,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:41:12,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:41:12,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:41:14,280.280 INFO    ] ================================================
[2026-08-25 00:41:14,296.296 INFO    ] Launching Daemon at Tue Aug 25 00:41:14 IST 2026
[2026-08-25 00:41:14,306.306 INFO    ] ================================================
[2026-08-25 00:41:14,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:41:14
[2026-08-25 00:41:15,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:41:15,806.806 INFO    ] Initializing speech engine...
[2026-08-25 00:41:15,815.815 INFO    ] 2026-08-25 00:41:15
[2026-08-25 00:41:16,073.073 INFO    ] 2026-08-25 00:41:16
[2026-08-25 00:41:16,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:41:16,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:41:16,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:41:16,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:41:16,531.531 INFO    ] time= 25/08/2026 00:41:16
[2026-08-25 00:41:16,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:41:16,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:41:16,749.749 INFO    ] No existing commands found in stream
[2026-08-25 00:41:21,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:41:21,778.778 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 00:41:22,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:41:22,493.493 INFO    ] Checking for system updates...
[2026-08-25 00:41:22,530.530 INFO    ] 200
[2026-08-25 00:41:22,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:22,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:22,675.675 INFO    ] No update needed
[2026-08-25 00:41:22,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 00:41:22,712.712 INFO    ] 200
[2026-08-25 00:41:22,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:22,757.757 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:41:22,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:22,814.814 INFO    ] No camera update needed
[2026-08-25 00:41:22,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:41:22,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:41:22,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:41:22,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:41:24,873.873 INFO    ] ================================================
[2026-08-25 00:41:24,888.888 INFO    ] Launching Daemon at Tue Aug 25 00:41:24 IST 2026
[2026-08-25 00:41:24,899.899 INFO    ] ================================================
[2026-08-25 00:41:25,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:41:25
[2026-08-25 00:41:26,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:41:26,352.352 INFO    ] Initializing speech engine...
[2026-08-25 00:41:26,359.359 INFO    ] 2026-08-25 00:41:26
[2026-08-25 00:41:26,622.622 INFO    ] 2026-08-25 00:41:26
[2026-08-25 00:41:26,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:41:26,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:41:26,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:41:27,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:41:27,162.162 INFO    ] time= 25/08/2026 00:41:27
[2026-08-25 00:41:27,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:41:27,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:41:27,315.315 INFO    ] No existing commands found in stream
[2026-08-25 00:41:32,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:41:32,330.330 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 00:41:34,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:41:34,133.133 INFO    ] Checking for system updates...
[2026-08-25 00:41:34,170.170 INFO    ] 200
[2026-08-25 00:41:34,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:34,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:34,229.229 INFO    ] No update needed
[2026-08-25 00:41:34,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 00:41:34,266.266 INFO    ] 200
[2026-08-25 00:41:34,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:34,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:41:34,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:34,360.360 INFO    ] No camera update needed
[2026-08-25 00:41:34,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:41:34,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:41:34,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:41:34,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:41:36,418.418 INFO    ] ================================================
[2026-08-25 00:41:36,433.433 INFO    ] Launching Daemon at Tue Aug 25 00:41:36 IST 2026
[2026-08-25 00:41:36,443.443 INFO    ] ================================================
[2026-08-25 00:41:37,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:41:37
[2026-08-25 00:41:37,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:41:37,837.837 INFO    ] Initializing speech engine...
[2026-08-25 00:41:37,850.850 INFO    ] 2026-08-25 00:41:37
[2026-08-25 00:41:38,111.111 INFO    ] 2026-08-25 00:41:38
[2026-08-25 00:41:38,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:41:38,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:41:38,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:41:38,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:41:38,578.578 INFO    ] time= 25/08/2026 00:41:38
[2026-08-25 00:41:38,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:41:38,674.674 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:41:38,808.808 INFO    ] No existing commands found in stream
[2026-08-25 00:41:43,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:41:43,833.833 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 00:41:46,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:41:46,826.826 INFO    ] Checking for system updates...
[2026-08-25 00:41:46,862.862 INFO    ] 200
[2026-08-25 00:41:46,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:46,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:41:46,921.921 INFO    ] No update needed
[2026-08-25 00:41:46,923.923 INFO    ] Checking for camera pi updates...
[2026-08-25 00:41:46,957.957 INFO    ] 200
[2026-08-25 00:41:46,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:46,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:41:47,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:41:47,051.051 INFO    ] No camera update needed
[2026-08-25 00:41:47,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:41:47,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:41:47,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:41:47,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:41:49,106.106 INFO    ] ================================================
[2026-08-25 00:41:49,120.120 INFO    ] Launching Daemon at Tue Aug 25 00:41:49 IST 2026
[2026-08-25 00:41:49,131.131 INFO    ] ================================================
[2026-08-25 00:41:49,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:41:49
[2026-08-25 00:41:50,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:41:50,550.550 INFO    ] Initializing speech engine...
[2026-08-25 00:41:50,556.556 INFO    ] 2026-08-25 00:41:50
[2026-08-25 00:41:50,814.814 INFO    ] 2026-08-25 00:41:50
[2026-08-25 00:41:50,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:41:51,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:41:51,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:41:51,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:41:51,302.302 INFO    ] time= 25/08/2026 00:41:51
[2026-08-25 00:41:51,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:41:51,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:41:51,509.509 INFO    ] No existing commands found in stream
[2026-08-25 00:41:56,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:41:56,525.525 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 00:41:59,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:41:59,665.665 INFO    ] Checking for system updates...
[2026-08-25 00:41:59,703.703 INFO    ] 200
[2026-08-25 00:41:59,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:59,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:59,761.761 INFO    ] No update needed
[2026-08-25 00:41:59,763.763 INFO    ] Checking for camera pi updates...
[2026-08-25 00:41:59,796.796 INFO    ] 200
[2026-08-25 00:41:59,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:41:59,838.838 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:41:59,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:41:59,897.897 INFO    ] No camera update needed
[2026-08-25 00:41:59,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:41:59,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:41:59,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:41:59,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:42:01,979.979 INFO    ] ================================================
[2026-08-25 00:42:02,018.018 INFO    ] Launching Daemon at Tue Aug 25 00:42:02 IST 2026
[2026-08-25 00:42:02,043.043 INFO    ] ================================================
[2026-08-25 00:42:02,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:42:02
[2026-08-25 00:42:03,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:42:03,812.812 INFO    ] Initializing speech engine...
[2026-08-25 00:42:03,828.828 INFO    ] 2026-08-25 00:42:03
[2026-08-25 00:42:04,103.103 INFO    ] 2026-08-25 00:42:04
[2026-08-25 00:42:04,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:42:04,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:42:04,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:42:04,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:42:04,504.504 INFO    ] time= 25/08/2026 00:42:04
[2026-08-25 00:42:04,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:42:04,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:42:04,691.691 INFO    ] No existing commands found in stream
[2026-08-25 00:42:09,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:42:09,719.719 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 00:42:12,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:42:12,434.434 INFO    ] Checking for system updates...
[2026-08-25 00:42:12,469.469 INFO    ] 200
[2026-08-25 00:42:12,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:12,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:42:12,527.527 INFO    ] No update needed
[2026-08-25 00:42:12,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 00:42:12,562.562 INFO    ] 200
[2026-08-25 00:42:12,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:12,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:42:12,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:42:12,656.656 INFO    ] No camera update needed
[2026-08-25 00:42:12,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:42:12,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:42:12,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:42:12,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:42:14,710.710 INFO    ] ================================================
[2026-08-25 00:42:14,725.725 INFO    ] Launching Daemon at Tue Aug 25 00:42:14 IST 2026
[2026-08-25 00:42:14,736.736 INFO    ] ================================================
[2026-08-25 00:42:15,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:42:15
[2026-08-25 00:42:15,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:42:16,284.284 INFO    ] Initializing speech engine...
[2026-08-25 00:42:16,303.303 INFO    ] 2026-08-25 00:42:16
[2026-08-25 00:42:16,558.558 INFO    ] 2026-08-25 00:42:16
[2026-08-25 00:42:16,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:42:16,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:42:16,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:42:16,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:42:17,035.035 INFO    ] time= 25/08/2026 00:42:16
[2026-08-25 00:42:17,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:42:17,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:42:17,227.227 INFO    ] No existing commands found in stream
[2026-08-25 00:42:22,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:42:22,255.255 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 00:42:22,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:42:22,748.748 INFO    ] Checking for system updates...
[2026-08-25 00:42:22,784.784 INFO    ] 200
[2026-08-25 00:42:22,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:22,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:42:22,840.840 INFO    ] No update needed
[2026-08-25 00:42:22,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 00:42:22,878.878 INFO    ] 200
[2026-08-25 00:42:22,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:22,921.921 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:42:22,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:42:22,974.974 INFO    ] No camera update needed
[2026-08-25 00:42:22,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:42:22,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:42:22,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:42:22,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:42:25,028.028 INFO    ] ================================================
[2026-08-25 00:42:25,042.042 INFO    ] Launching Daemon at Tue Aug 25 00:42:25 IST 2026
[2026-08-25 00:42:25,053.053 INFO    ] ================================================
[2026-08-25 00:42:25,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:42:25
[2026-08-25 00:42:26,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:42:26,490.490 INFO    ] Initializing speech engine...
[2026-08-25 00:42:26,493.493 INFO    ] 2026-08-25 00:42:26
[2026-08-25 00:42:26,758.758 INFO    ] 2026-08-25 00:42:26
[2026-08-25 00:42:26,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:42:27,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:42:27,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:42:27,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:42:27,236.236 INFO    ] time= 25/08/2026 00:42:27
[2026-08-25 00:42:27,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:42:27,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:42:27,479.479 INFO    ] No existing commands found in stream
[2026-08-25 00:42:32,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:42:32,509.509 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 00:42:36,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:42:36,772.772 INFO    ] Checking for system updates...
[2026-08-25 00:42:36,808.808 INFO    ] 200
[2026-08-25 00:42:36,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:36,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:42:36,865.865 INFO    ] No update needed
[2026-08-25 00:42:36,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 00:42:36,905.905 INFO    ] 200
[2026-08-25 00:42:36,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:36,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:42:36,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:42:37,008.008 INFO    ] No camera update needed
[2026-08-25 00:42:37,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:42:37,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:42:37,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:42:37,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:42:39,063.063 INFO    ] ================================================
[2026-08-25 00:42:39,079.079 INFO    ] Launching Daemon at Tue Aug 25 00:42:39 IST 2026
[2026-08-25 00:42:39,090.090 INFO    ] ================================================
[2026-08-25 00:42:39,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:42:39
[2026-08-25 00:42:40,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:42:40,508.508 INFO    ] Initializing speech engine...
[2026-08-25 00:42:40,518.518 INFO    ] 2026-08-25 00:42:40
[2026-08-25 00:42:40,763.763 INFO    ] 2026-08-25 00:42:40
[2026-08-25 00:42:40,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:42:41,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:42:41,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:42:41,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:42:41,241.241 INFO    ] time= 25/08/2026 00:42:41
[2026-08-25 00:42:41,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:42:41,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:42:41,446.446 INFO    ] No existing commands found in stream
[2026-08-25 00:42:46,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:42:46,479.479 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 00:42:49,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:42:49,520.520 INFO    ] Checking for system updates...
[2026-08-25 00:42:49,556.556 INFO    ] 200
[2026-08-25 00:42:49,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:49,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:42:49,618.618 INFO    ] No update needed
[2026-08-25 00:42:49,620.620 INFO    ] Checking for camera pi updates...
[2026-08-25 00:42:49,657.657 INFO    ] 200
[2026-08-25 00:42:49,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:42:49,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:42:49,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:42:49,851.851 INFO    ] No camera update needed
[2026-08-25 00:42:49,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:42:49,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:42:49,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:42:49,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:42:51,906.906 INFO    ] ================================================
[2026-08-25 00:42:51,923.923 INFO    ] Launching Daemon at Tue Aug 25 00:42:51 IST 2026
[2026-08-25 00:42:51,935.935 INFO    ] ================================================
[2026-08-25 00:42:52,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:42:52
[2026-08-25 00:42:53,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:42:53,482.482 INFO    ] Initializing speech engine...
[2026-08-25 00:42:53,497.497 INFO    ] 2026-08-25 00:42:53
[2026-08-25 00:42:53,778.778 INFO    ] 2026-08-25 00:42:53
[2026-08-25 00:42:53,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:42:54,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:42:54,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:42:54,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:42:54,189.189 INFO    ] time= 25/08/2026 00:42:54
[2026-08-25 00:42:54,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:42:54,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:42:54,282.282 INFO    ] No existing commands found in stream
[2026-08-25 00:42:59,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:42:59,298.298 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 00:43:05,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:43:05,427.427 INFO    ] Checking for system updates...
[2026-08-25 00:43:05,462.462 INFO    ] 200
[2026-08-25 00:43:05,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:05,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:05,524.524 INFO    ] No update needed
[2026-08-25 00:43:05,527.527 INFO    ] Checking for camera pi updates...
[2026-08-25 00:43:05,560.560 INFO    ] 200
[2026-08-25 00:43:05,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:05,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:43:05,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:05,655.655 INFO    ] No camera update needed
[2026-08-25 00:43:05,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:43:05,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:43:05,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:43:05,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:43:07,713.713 INFO    ] ================================================
[2026-08-25 00:43:07,728.728 INFO    ] Launching Daemon at Tue Aug 25 00:43:07 IST 2026
[2026-08-25 00:43:07,739.739 INFO    ] ================================================
[2026-08-25 00:43:08,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:43:08
[2026-08-25 00:43:08,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:43:09,235.235 INFO    ] Initializing speech engine...
[2026-08-25 00:43:09,243.243 INFO    ] 2026-08-25 00:43:09
[2026-08-25 00:43:09,488.488 INFO    ] 2026-08-25 00:43:09
[2026-08-25 00:43:09,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:43:09,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:43:09,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:43:09,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:43:09,988.988 INFO    ] time= 25/08/2026 00:43:09
[2026-08-25 00:43:10,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:43:10,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:43:10,197.197 INFO    ] No existing commands found in stream
[2026-08-25 00:43:15,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:43:15,215.215 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 00:43:16,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:43:16,955.955 INFO    ] Checking for system updates...
[2026-08-25 00:43:16,990.990 INFO    ] 200
[2026-08-25 00:43:16,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:17,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:17,057.057 INFO    ] No update needed
[2026-08-25 00:43:17,060.060 INFO    ] Checking for camera pi updates...
[2026-08-25 00:43:17,096.096 INFO    ] 200
[2026-08-25 00:43:17,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:17,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:43:17,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:17,198.198 INFO    ] No camera update needed
[2026-08-25 00:43:17,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:43:17,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:43:17,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:43:17,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:43:19,254.254 INFO    ] ================================================
[2026-08-25 00:43:19,270.270 INFO    ] Launching Daemon at Tue Aug 25 00:43:19 IST 2026
[2026-08-25 00:43:19,281.281 INFO    ] ================================================
[2026-08-25 00:43:19,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:43:19
[2026-08-25 00:43:20,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:43:20,708.708 INFO    ] Initializing speech engine...
[2026-08-25 00:43:20,717.717 INFO    ] 2026-08-25 00:43:20
[2026-08-25 00:43:20,985.985 INFO    ] 2026-08-25 00:43:20
[2026-08-25 00:43:21,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:43:21,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:43:21,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:43:21,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:43:21,429.429 INFO    ] time= 25/08/2026 00:43:21
[2026-08-25 00:43:21,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:43:21,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:43:21,655.655 INFO    ] No existing commands found in stream
[2026-08-25 00:43:26,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:43:26,682.682 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 00:43:28,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:43:28,837.837 INFO    ] Checking for system updates...
[2026-08-25 00:43:28,872.872 INFO    ] 200
[2026-08-25 00:43:28,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:28,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:43:28,934.934 INFO    ] No update needed
[2026-08-25 00:43:28,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 00:43:28,971.971 INFO    ] 200
[2026-08-25 00:43:28,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:29,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:43:29,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:43:29,064.064 INFO    ] No camera update needed
[2026-08-25 00:43:29,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:43:29,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:43:29,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:43:29,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:43:31,118.118 INFO    ] ================================================
[2026-08-25 00:43:31,137.137 INFO    ] Launching Daemon at Tue Aug 25 00:43:31 IST 2026
[2026-08-25 00:43:31,148.148 INFO    ] ================================================
[2026-08-25 00:43:31,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:43:31
[2026-08-25 00:43:32,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:43:32,716.716 INFO    ] Initializing speech engine...
[2026-08-25 00:43:32,722.722 INFO    ] 2026-08-25 00:43:32
[2026-08-25 00:43:33,026.026 INFO    ] 2026-08-25 00:43:33
[2026-08-25 00:43:33,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:43:33,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:43:33,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:43:33,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:43:33,490.490 INFO    ] time= 25/08/2026 00:43:33
[2026-08-25 00:43:33,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:43:33,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:43:33,727.727 INFO    ] No existing commands found in stream
[2026-08-25 00:43:38,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:43:38,759.759 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 00:43:41,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:43:41,334.334 INFO    ] Checking for system updates...
[2026-08-25 00:43:41,374.374 INFO    ] 200
[2026-08-25 00:43:41,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:41,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:41,432.432 INFO    ] No update needed
[2026-08-25 00:43:41,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 00:43:41,472.472 INFO    ] 200
[2026-08-25 00:43:41,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:41,520.520 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:43:41,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:41,569.569 INFO    ] No camera update needed
[2026-08-25 00:43:41,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:43:41,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:43:41,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:43:41,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:43:43,626.626 INFO    ] ================================================
[2026-08-25 00:43:43,640.640 INFO    ] Launching Daemon at Tue Aug 25 00:43:43 IST 2026
[2026-08-25 00:43:43,651.651 INFO    ] ================================================
[2026-08-25 00:43:44,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:43:44
[2026-08-25 00:43:44,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:43:45,197.197 INFO    ] Initializing speech engine...
[2026-08-25 00:43:45,207.207 INFO    ] 2026-08-25 00:43:45
[2026-08-25 00:43:45,479.479 INFO    ] 2026-08-25 00:43:45
[2026-08-25 00:43:45,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:43:45,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:43:45,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:43:45,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:43:45,959.959 INFO    ] time= 25/08/2026 00:43:45
[2026-08-25 00:43:46,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:43:46,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:43:46,167.167 INFO    ] No existing commands found in stream
[2026-08-25 00:43:51,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:43:51,201.201 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 00:43:55,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:43:55,367.367 INFO    ] Checking for system updates...
[2026-08-25 00:43:55,403.403 INFO    ] 200
[2026-08-25 00:43:55,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:55,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:55,459.459 INFO    ] No update needed
[2026-08-25 00:43:55,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 00:43:55,502.502 INFO    ] 200
[2026-08-25 00:43:55,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:43:55,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:43:55,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:43:55,605.605 INFO    ] No camera update needed
[2026-08-25 00:43:55,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:43:55,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:43:55,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:43:55,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:43:57,659.659 INFO    ] ================================================
[2026-08-25 00:43:57,674.674 INFO    ] Launching Daemon at Tue Aug 25 00:43:57 IST 2026
[2026-08-25 00:43:57,686.686 INFO    ] ================================================
[2026-08-25 00:43:58,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:43:58
[2026-08-25 00:43:58,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:43:59,289.289 INFO    ] Initializing speech engine...
[2026-08-25 00:43:59,294.294 INFO    ] 2026-08-25 00:43:59
[2026-08-25 00:43:59,565.565 INFO    ] 2026-08-25 00:43:59
[2026-08-25 00:43:59,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:43:59,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:43:59,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:44:00,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:44:00,059.059 INFO    ] time= 25/08/2026 00:44:00
[2026-08-25 00:44:00,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:44:00,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:44:00,276.276 INFO    ] No existing commands found in stream
[2026-08-25 00:44:05,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:44:05,305.305 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 00:44:09,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:44:09,247.247 INFO    ] Checking for system updates...
[2026-08-25 00:44:09,288.288 INFO    ] 200
[2026-08-25 00:44:09,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:09,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:09,348.348 INFO    ] No update needed
[2026-08-25 00:44:09,351.351 INFO    ] Checking for camera pi updates...
[2026-08-25 00:44:09,385.385 INFO    ] 200
[2026-08-25 00:44:09,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:09,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:44:09,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:09,474.474 INFO    ] No camera update needed
[2026-08-25 00:44:09,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:44:09,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:44:09,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:44:09,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:44:11,529.529 INFO    ] ================================================
[2026-08-25 00:44:11,544.544 INFO    ] Launching Daemon at Tue Aug 25 00:44:11 IST 2026
[2026-08-25 00:44:11,556.556 INFO    ] ================================================
[2026-08-25 00:44:12,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:44:12
[2026-08-25 00:44:12,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:44:13,134.134 INFO    ] Initializing speech engine...
[2026-08-25 00:44:13,140.140 INFO    ] 2026-08-25 00:44:13
[2026-08-25 00:44:13,409.409 INFO    ] 2026-08-25 00:44:13
[2026-08-25 00:44:13,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:44:13,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:44:13,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:44:13,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:44:13,919.919 INFO    ] time= 25/08/2026 00:44:13
[2026-08-25 00:44:13,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:44:13,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:44:14,097.097 INFO    ] No existing commands found in stream
[2026-08-25 00:44:19,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:44:19,114.114 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 00:44:21,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:44:21,606.606 INFO    ] Checking for system updates...
[2026-08-25 00:44:21,641.641 INFO    ] 200
[2026-08-25 00:44:21,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:21,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:21,705.705 INFO    ] No update needed
[2026-08-25 00:44:21,708.708 INFO    ] Checking for camera pi updates...
[2026-08-25 00:44:21,744.744 INFO    ] 200
[2026-08-25 00:44:21,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:21,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:44:21,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:21,857.857 INFO    ] No camera update needed
[2026-08-25 00:44:21,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:44:21,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:44:21,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:44:21,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:44:23,911.911 INFO    ] ================================================
[2026-08-25 00:44:23,927.927 INFO    ] Launching Daemon at Tue Aug 25 00:44:23 IST 2026
[2026-08-25 00:44:23,938.938 INFO    ] ================================================
[2026-08-25 00:44:24,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:44:24
[2026-08-25 00:44:25,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:44:25,343.343 INFO    ] Initializing speech engine...
[2026-08-25 00:44:25,352.352 INFO    ] 2026-08-25 00:44:25
[2026-08-25 00:44:25,641.641 INFO    ] 2026-08-25 00:44:25
[2026-08-25 00:44:25,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:44:25,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:44:25,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:44:26,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:44:26,019.019 INFO    ] time= 25/08/2026 00:44:26
[2026-08-25 00:44:26,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:44:26,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:44:26,142.142 INFO    ] No existing commands found in stream
[2026-08-25 00:44:31,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:44:31,158.158 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 00:44:33,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:44:33,638.638 INFO    ] Checking for system updates...
[2026-08-25 00:44:33,675.675 INFO    ] 200
[2026-08-25 00:44:33,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:33,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:33,745.745 INFO    ] No update needed
[2026-08-25 00:44:33,748.748 INFO    ] Checking for camera pi updates...
[2026-08-25 00:44:33,785.785 INFO    ] 200
[2026-08-25 00:44:33,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:33,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:44:33,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:33,880.880 INFO    ] No camera update needed
[2026-08-25 00:44:33,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:44:33,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:44:33,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:44:33,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:44:35,937.937 INFO    ] ================================================
[2026-08-25 00:44:35,953.953 INFO    ] Launching Daemon at Tue Aug 25 00:44:35 IST 2026
[2026-08-25 00:44:35,964.964 INFO    ] ================================================
[2026-08-25 00:44:36,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:44:36
[2026-08-25 00:44:37,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:44:37,422.422 INFO    ] Initializing speech engine...
[2026-08-25 00:44:37,429.429 INFO    ] 2026-08-25 00:44:37
[2026-08-25 00:44:37,702.702 INFO    ] 2026-08-25 00:44:37
[2026-08-25 00:44:37,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:44:37,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:44:37,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:44:38,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:44:38,182.182 INFO    ] time= 25/08/2026 00:44:38
[2026-08-25 00:44:38,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:44:38,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:44:38,371.371 INFO    ] No existing commands found in stream
[2026-08-25 00:44:43,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:44:43,399.399 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 00:44:44,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:44:44,356.356 INFO    ] Checking for system updates...
[2026-08-25 00:44:44,392.392 INFO    ] 200
[2026-08-25 00:44:44,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:44,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:44,453.453 INFO    ] No update needed
[2026-08-25 00:44:44,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 00:44:44,489.489 INFO    ] 200
[2026-08-25 00:44:44,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:44,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:44:44,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:44,600.600 INFO    ] No camera update needed
[2026-08-25 00:44:44,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:44:44,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:44:44,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:44:44,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:44:46,656.656 INFO    ] ================================================
[2026-08-25 00:44:46,671.671 INFO    ] Launching Daemon at Tue Aug 25 00:44:46 IST 2026
[2026-08-25 00:44:46,683.683 INFO    ] ================================================
[2026-08-25 00:44:47,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:44:47
[2026-08-25 00:44:47,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:44:48,147.147 INFO    ] Initializing speech engine...
[2026-08-25 00:44:48,166.166 INFO    ] 2026-08-25 00:44:48
[2026-08-25 00:44:48,415.415 INFO    ] 2026-08-25 00:44:48
[2026-08-25 00:44:48,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:44:48,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:44:48,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:44:48,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:44:48,910.910 INFO    ] time= 25/08/2026 00:44:48
[2026-08-25 00:44:48,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:44:49,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:44:49,095.095 INFO    ] No existing commands found in stream
[2026-08-25 00:44:54,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:44:54,109.109 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 00:44:55,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:44:55,788.788 INFO    ] Checking for system updates...
[2026-08-25 00:44:55,823.823 INFO    ] 200
[2026-08-25 00:44:55,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:55,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:55,886.886 INFO    ] No update needed
[2026-08-25 00:44:55,888.888 INFO    ] Checking for camera pi updates...
[2026-08-25 00:44:55,925.925 INFO    ] 200
[2026-08-25 00:44:55,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:44:55,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:44:56,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:44:56,123.123 INFO    ] No camera update needed
[2026-08-25 00:44:56,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:44:56,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:44:56,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:44:56,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:44:58,178.178 INFO    ] ================================================
[2026-08-25 00:44:58,194.194 INFO    ] Launching Daemon at Tue Aug 25 00:44:58 IST 2026
[2026-08-25 00:44:58,205.205 INFO    ] ================================================
[2026-08-25 00:44:58,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:44:58
[2026-08-25 00:44:59,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:44:59,822.822 INFO    ] Initializing speech engine...
[2026-08-25 00:44:59,830.830 INFO    ] 2026-08-25 00:44:59
[2026-08-25 00:45:00,115.115 INFO    ] 2026-08-25 00:45:00
[2026-08-25 00:45:00,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:45:00,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:45:00,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:45:00,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:45:00,650.650 INFO    ] time= 25/08/2026 00:45:00
[2026-08-25 00:45:00,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:45:00,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:45:00,806.806 INFO    ] No existing commands found in stream
[2026-08-25 00:45:05,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:45:05,822.822 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 00:45:09,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:45:09,050.050 INFO    ] Checking for system updates...
[2026-08-25 00:45:09,090.090 INFO    ] 200
[2026-08-25 00:45:09,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:09,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:45:09,155.155 INFO    ] No update needed
[2026-08-25 00:45:09,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 00:45:09,192.192 INFO    ] 200
[2026-08-25 00:45:09,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:09,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:45:09,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:45:09,298.298 INFO    ] No camera update needed
[2026-08-25 00:45:09,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:45:09,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:45:09,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:45:09,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:45:11,355.355 INFO    ] ================================================
[2026-08-25 00:45:11,371.371 INFO    ] Launching Daemon at Tue Aug 25 00:45:11 IST 2026
[2026-08-25 00:45:11,382.382 INFO    ] ================================================
[2026-08-25 00:45:11,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:45:11
[2026-08-25 00:45:12,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:45:12,834.834 INFO    ] Initializing speech engine...
[2026-08-25 00:45:12,843.843 INFO    ] 2026-08-25 00:45:12
[2026-08-25 00:45:13,103.103 INFO    ] 2026-08-25 00:45:13
[2026-08-25 00:45:13,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:45:13,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:45:13,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:45:13,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:45:13,644.644 INFO    ] time= 25/08/2026 00:45:13
[2026-08-25 00:45:13,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:45:13,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:45:13,797.797 INFO    ] No existing commands found in stream
[2026-08-25 00:45:18,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:45:18,814.814 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 00:45:19,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:45:19,648.648 INFO    ] Checking for system updates...
[2026-08-25 00:45:19,684.684 INFO    ] 200
[2026-08-25 00:45:19,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:19,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:45:19,745.745 INFO    ] No update needed
[2026-08-25 00:45:19,747.747 INFO    ] Checking for camera pi updates...
[2026-08-25 00:45:19,780.780 INFO    ] 200
[2026-08-25 00:45:19,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:19,833.833 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:45:19,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:45:19,886.886 INFO    ] No camera update needed
[2026-08-25 00:45:19,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:45:19,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:45:19,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:45:19,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:45:21,940.940 INFO    ] ================================================
[2026-08-25 00:45:21,955.955 INFO    ] Launching Daemon at Tue Aug 25 00:45:21 IST 2026
[2026-08-25 00:45:21,967.967 INFO    ] ================================================
[2026-08-25 00:45:22,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:45:22
[2026-08-25 00:45:23,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:45:23,449.449 INFO    ] Initializing speech engine...
[2026-08-25 00:45:23,458.458 INFO    ] 2026-08-25 00:45:23
[2026-08-25 00:45:23,718.718 INFO    ] 2026-08-25 00:45:23
[2026-08-25 00:45:23,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:45:23,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:45:24,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:45:24,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:45:24,260.260 INFO    ] time= 25/08/2026 00:45:24
[2026-08-25 00:45:24,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:45:24,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:45:24,394.394 INFO    ] No existing commands found in stream
[2026-08-25 00:45:29,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:45:29,425.425 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 00:45:31,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:45:31,457.457 INFO    ] Checking for system updates...
[2026-08-25 00:45:31,497.497 INFO    ] 200
[2026-08-25 00:45:31,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:31,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:45:31,559.559 INFO    ] No update needed
[2026-08-25 00:45:31,562.562 INFO    ] Checking for camera pi updates...
[2026-08-25 00:45:31,595.595 INFO    ] 200
[2026-08-25 00:45:31,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:31,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:45:31,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:45:31,685.685 INFO    ] No camera update needed
[2026-08-25 00:45:31,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:45:31,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:45:31,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:45:31,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:45:33,742.742 INFO    ] ================================================
[2026-08-25 00:45:33,757.757 INFO    ] Launching Daemon at Tue Aug 25 00:45:33 IST 2026
[2026-08-25 00:45:33,769.769 INFO    ] ================================================
[2026-08-25 00:45:34,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:45:34
[2026-08-25 00:45:34,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:45:35,194.194 INFO    ] Initializing speech engine...
[2026-08-25 00:45:35,203.203 INFO    ] 2026-08-25 00:45:35
[2026-08-25 00:45:35,459.459 INFO    ] 2026-08-25 00:45:35
[2026-08-25 00:45:35,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:45:35,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:45:35,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:45:35,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:45:35,947.947 INFO    ] time= 25/08/2026 00:45:35
[2026-08-25 00:45:36,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:45:36,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:45:36,151.151 INFO    ] No existing commands found in stream
[2026-08-25 00:45:41,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:45:41,169.169 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 00:45:42,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:45:42,593.593 INFO    ] Checking for system updates...
[2026-08-25 00:45:42,630.630 INFO    ] 200
[2026-08-25 00:45:42,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:42,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:45:42,688.688 INFO    ] No update needed
[2026-08-25 00:45:42,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 00:45:42,723.723 INFO    ] 200
[2026-08-25 00:45:42,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:42,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:45:42,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:45:42,817.817 INFO    ] No camera update needed
[2026-08-25 00:45:42,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:45:42,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:45:42,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:45:42,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:45:44,873.873 INFO    ] ================================================
[2026-08-25 00:45:44,888.888 INFO    ] Launching Daemon at Tue Aug 25 00:45:44 IST 2026
[2026-08-25 00:45:44,900.900 INFO    ] ================================================
[2026-08-25 00:45:45,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:45:45
[2026-08-25 00:45:46,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:45:46,349.349 INFO    ] Initializing speech engine...
[2026-08-25 00:45:46,359.359 INFO    ] 2026-08-25 00:45:46
[2026-08-25 00:45:46,607.607 INFO    ] 2026-08-25 00:45:46
[2026-08-25 00:45:46,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:45:46,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:45:46,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:45:47,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:45:47,086.086 INFO    ] time= 25/08/2026 00:45:47
[2026-08-25 00:45:47,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:45:47,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:45:47,285.285 INFO    ] No existing commands found in stream
[2026-08-25 00:45:52,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:45:52,319.319 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 00:45:55,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:45:55,019.019 INFO    ] Checking for system updates...
[2026-08-25 00:45:55,055.055 INFO    ] 200
[2026-08-25 00:45:55,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:55,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:45:55,120.120 INFO    ] No update needed
[2026-08-25 00:45:55,123.123 INFO    ] Checking for camera pi updates...
[2026-08-25 00:45:55,156.156 INFO    ] 200
[2026-08-25 00:45:55,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:45:55,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:45:55,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:45:55,247.247 INFO    ] No camera update needed
[2026-08-25 00:45:55,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:45:55,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:45:55,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:45:55,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:45:57,302.302 INFO    ] ================================================
[2026-08-25 00:45:57,318.318 INFO    ] Launching Daemon at Tue Aug 25 00:45:57 IST 2026
[2026-08-25 00:45:57,329.329 INFO    ] ================================================
[2026-08-25 00:45:57,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:45:57
[2026-08-25 00:45:58,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:45:58,750.750 INFO    ] Initializing speech engine...
[2026-08-25 00:45:58,759.759 INFO    ] 2026-08-25 00:45:58
[2026-08-25 00:45:59,011.011 INFO    ] 2026-08-25 00:45:58
[2026-08-25 00:45:59,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:45:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:45:59,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:45:59,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:45:59,504.504 INFO    ] time= 25/08/2026 00:45:59
[2026-08-25 00:45:59,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:45:59,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:45:59,694.694 INFO    ] No existing commands found in stream
[2026-08-25 00:46:04,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:46:04,719.719 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 00:46:07,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:46:07,369.369 INFO    ] Checking for system updates...
[2026-08-25 00:46:07,404.404 INFO    ] 200
[2026-08-25 00:46:07,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:07,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:46:07,464.464 INFO    ] No update needed
[2026-08-25 00:46:07,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 00:46:07,505.505 INFO    ] 200
[2026-08-25 00:46:07,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:07,566.566 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:46:07,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:46:07,615.615 INFO    ] No camera update needed
[2026-08-25 00:46:07,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:46:07,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:46:07,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:46:07,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:46:09,671.671 INFO    ] ================================================
[2026-08-25 00:46:09,686.686 INFO    ] Launching Daemon at Tue Aug 25 00:46:09 IST 2026
[2026-08-25 00:46:09,697.697 INFO    ] ================================================
[2026-08-25 00:46:10,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:46:10
[2026-08-25 00:46:11,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:46:11,339.339 INFO    ] Initializing speech engine...
[2026-08-25 00:46:11,348.348 INFO    ] 2026-08-25 00:46:11
[2026-08-25 00:46:11,640.640 INFO    ] 2026-08-25 00:46:11
[2026-08-25 00:46:11,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:46:11,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:46:11,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:46:12,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:46:12,158.158 INFO    ] time= 25/08/2026 00:46:12
[2026-08-25 00:46:12,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:46:12,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:46:12,333.333 INFO    ] No existing commands found in stream
[2026-08-25 00:46:17,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:46:17,362.362 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 00:46:21,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:46:21,332.332 INFO    ] Checking for system updates...
[2026-08-25 00:46:21,376.376 INFO    ] 200
[2026-08-25 00:46:21,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:21,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:46:21,443.443 INFO    ] No update needed
[2026-08-25 00:46:21,446.446 INFO    ] Checking for camera pi updates...
[2026-08-25 00:46:21,488.488 INFO    ] 200
[2026-08-25 00:46:21,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:21,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:46:21,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:46:21,596.596 INFO    ] No camera update needed
[2026-08-25 00:46:21,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:46:21,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:46:21,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:46:21,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:46:23,652.652 INFO    ] ================================================
[2026-08-25 00:46:23,667.667 INFO    ] Launching Daemon at Tue Aug 25 00:46:23 IST 2026
[2026-08-25 00:46:23,679.679 INFO    ] ================================================
[2026-08-25 00:46:24,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:46:24
[2026-08-25 00:46:24,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:46:25,076.076 INFO    ] Initializing speech engine...
[2026-08-25 00:46:25,091.091 INFO    ] 2026-08-25 00:46:25
[2026-08-25 00:46:25,355.355 INFO    ] 2026-08-25 00:46:25
[2026-08-25 00:46:25,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:46:25,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:46:25,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:46:25,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:46:25,732.732 INFO    ] time= 25/08/2026 00:46:25
[2026-08-25 00:46:25,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:46:25,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:46:25,916.916 INFO    ] No existing commands found in stream
[2026-08-25 00:46:30,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:46:30,947.947 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 00:46:33,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:46:33,065.065 INFO    ] Checking for system updates...
[2026-08-25 00:46:33,100.100 INFO    ] 200
[2026-08-25 00:46:33,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:33,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:46:33,163.163 INFO    ] No update needed
[2026-08-25 00:46:33,166.166 INFO    ] Checking for camera pi updates...
[2026-08-25 00:46:33,205.205 INFO    ] 200
[2026-08-25 00:46:33,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:33,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:46:33,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:46:33,308.308 INFO    ] No camera update needed
[2026-08-25 00:46:33,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:46:33,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:46:33,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:46:33,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:46:35,365.365 INFO    ] ================================================
[2026-08-25 00:46:35,380.380 INFO    ] Launching Daemon at Tue Aug 25 00:46:35 IST 2026
[2026-08-25 00:46:35,391.391 INFO    ] ================================================
[2026-08-25 00:46:35,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:46:35
[2026-08-25 00:46:36,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:46:36,843.843 INFO    ] Initializing speech engine...
[2026-08-25 00:46:36,850.850 INFO    ] 2026-08-25 00:46:36
[2026-08-25 00:46:37,103.103 INFO    ] 2026-08-25 00:46:37
[2026-08-25 00:46:37,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:46:37,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:46:37,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:46:37,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:46:37,592.592 INFO    ] time= 25/08/2026 00:46:37
[2026-08-25 00:46:37,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:46:37,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:46:37,792.792 INFO    ] No existing commands found in stream
[2026-08-25 00:46:42,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:46:42,819.819 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 00:46:46,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:46:46,061.061 INFO    ] Checking for system updates...
[2026-08-25 00:46:46,099.099 INFO    ] 200
[2026-08-25 00:46:46,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:46,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:46:46,156.156 INFO    ] No update needed
[2026-08-25 00:46:46,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 00:46:46,191.191 INFO    ] 200
[2026-08-25 00:46:46,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:46,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:46:46,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:46:46,288.288 INFO    ] No camera update needed
[2026-08-25 00:46:46,290.290 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:46:46,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:46:46,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:46:46,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:46:48,343.343 INFO    ] ================================================
[2026-08-25 00:46:48,359.359 INFO    ] Launching Daemon at Tue Aug 25 00:46:48 IST 2026
[2026-08-25 00:46:48,371.371 INFO    ] ================================================
[2026-08-25 00:46:48,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:46:48
[2026-08-25 00:46:49,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:46:49,831.831 INFO    ] Initializing speech engine...
[2026-08-25 00:46:49,843.843 INFO    ] 2026-08-25 00:46:49
[2026-08-25 00:46:50,108.108 INFO    ] 2026-08-25 00:46:50
[2026-08-25 00:46:50,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:46:50,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:46:50,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:46:50,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:46:50,499.499 INFO    ] time= 25/08/2026 00:46:50
[2026-08-25 00:46:50,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:46:50,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:46:50,657.657 INFO    ] No existing commands found in stream
[2026-08-25 00:46:55,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:46:55,691.691 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 00:46:59,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:46:59,215.215 INFO    ] Checking for system updates...
[2026-08-25 00:46:59,250.250 INFO    ] 200
[2026-08-25 00:46:59,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:59,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:46:59,307.307 INFO    ] No update needed
[2026-08-25 00:46:59,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 00:46:59,342.342 INFO    ] 200
[2026-08-25 00:46:59,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:46:59,389.389 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:46:59,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:46:59,537.537 INFO    ] No camera update needed
[2026-08-25 00:46:59,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:46:59,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:46:59,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:46:59,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:47:01,600.600 INFO    ] ================================================
[2026-08-25 00:47:01,622.622 INFO    ] Launching Daemon at Tue Aug 25 00:47:01 IST 2026
[2026-08-25 00:47:01,643.643 INFO    ] ================================================
[2026-08-25 00:47:02,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:47:02
[2026-08-25 00:47:02,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:47:03,247.247 INFO    ] Initializing speech engine...
[2026-08-25 00:47:03,259.259 INFO    ] 2026-08-25 00:47:03
[2026-08-25 00:47:03,524.524 INFO    ] 2026-08-25 00:47:03
[2026-08-25 00:47:03,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:47:03,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:47:03,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:47:04,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:47:04,050.050 INFO    ] time= 25/08/2026 00:47:04
[2026-08-25 00:47:04,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:47:04,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:47:04,201.201 INFO    ] No existing commands found in stream
[2026-08-25 00:47:09,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:47:09,218.218 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 00:47:13,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:47:13,288.288 INFO    ] Checking for system updates...
[2026-08-25 00:47:13,325.325 INFO    ] 200
[2026-08-25 00:47:13,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:13,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:47:13,388.388 INFO    ] No update needed
[2026-08-25 00:47:13,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 00:47:13,448.448 INFO    ] 200
[2026-08-25 00:47:13,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:13,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:47:13,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:47:13,555.555 INFO    ] No camera update needed
[2026-08-25 00:47:13,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:47:13,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:47:13,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:47:13,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:47:15,611.611 INFO    ] ================================================
[2026-08-25 00:47:15,626.626 INFO    ] Launching Daemon at Tue Aug 25 00:47:15 IST 2026
[2026-08-25 00:47:15,637.637 INFO    ] ================================================
[2026-08-25 00:47:16,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:47:16
[2026-08-25 00:47:16,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:47:17,103.103 INFO    ] Initializing speech engine...
[2026-08-25 00:47:17,112.112 INFO    ] 2026-08-25 00:47:17
[2026-08-25 00:47:17,361.361 INFO    ] 2026-08-25 00:47:17
[2026-08-25 00:47:17,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:47:17,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:47:17,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:47:17,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:47:17,737.737 INFO    ] time= 25/08/2026 00:47:17
[2026-08-25 00:47:17,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:47:17,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:47:17,929.929 INFO    ] No existing commands found in stream
[2026-08-25 00:47:22,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:47:22,951.951 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 00:47:26,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:47:26,822.822 INFO    ] Checking for system updates...
[2026-08-25 00:47:26,860.860 INFO    ] 200
[2026-08-25 00:47:26,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:26,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:47:26,917.917 INFO    ] No update needed
[2026-08-25 00:47:26,919.919 INFO    ] Checking for camera pi updates...
[2026-08-25 00:47:26,953.953 INFO    ] 200
[2026-08-25 00:47:26,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:26,996.996 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:47:27,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:47:27,049.049 INFO    ] No camera update needed
[2026-08-25 00:47:27,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:47:27,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:47:27,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:47:27,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:47:29,102.102 INFO    ] ================================================
[2026-08-25 00:47:29,117.117 INFO    ] Launching Daemon at Tue Aug 25 00:47:29 IST 2026
[2026-08-25 00:47:29,128.128 INFO    ] ================================================
[2026-08-25 00:47:29,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:47:29
[2026-08-25 00:47:30,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:47:30,549.549 INFO    ] Initializing speech engine...
[2026-08-25 00:47:30,559.559 INFO    ] 2026-08-25 00:47:30
[2026-08-25 00:47:30,808.808 INFO    ] 2026-08-25 00:47:30
[2026-08-25 00:47:30,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:47:31,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:47:31,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:47:31,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:47:31,293.293 INFO    ] time= 25/08/2026 00:47:31
[2026-08-25 00:47:31,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:47:31,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:47:31,537.537 INFO    ] No existing commands found in stream
[2026-08-25 00:47:36,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:47:36,569.569 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 00:47:40,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:47:40,710.710 INFO    ] Checking for system updates...
[2026-08-25 00:47:40,748.748 INFO    ] 200
[2026-08-25 00:47:40,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:40,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:47:40,810.810 INFO    ] No update needed
[2026-08-25 00:47:40,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 00:47:40,845.845 INFO    ] 200
[2026-08-25 00:47:40,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:40,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:47:40,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:47:40,941.941 INFO    ] No camera update needed
[2026-08-25 00:47:40,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:47:40,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:47:40,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:47:40,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:47:43,995.995 INFO    ] ================================================
[2026-08-25 00:47:43,010.010 INFO    ] Launching Daemon at Tue Aug 25 00:47:43 IST 2026
[2026-08-25 00:47:43,020.020 INFO    ] ================================================
[2026-08-25 00:47:43,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:47:43
[2026-08-25 00:47:44,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:47:44,477.477 INFO    ] Initializing speech engine...
[2026-08-25 00:47:44,482.482 INFO    ] 2026-08-25 00:47:44
[2026-08-25 00:47:44,730.730 INFO    ] 2026-08-25 00:47:44
[2026-08-25 00:47:44,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:47:45,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:47:45,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:47:45,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:47:45,202.202 INFO    ] time= 25/08/2026 00:47:45
[2026-08-25 00:47:45,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:47:45,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:47:45,389.389 INFO    ] No existing commands found in stream
[2026-08-25 00:47:50,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:47:50,421.421 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 00:47:51,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:47:51,500.500 INFO    ] Checking for system updates...
[2026-08-25 00:47:51,535.535 INFO    ] 200
[2026-08-25 00:47:51,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:51,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:47:51,592.592 INFO    ] No update needed
[2026-08-25 00:47:51,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 00:47:51,632.632 INFO    ] 200
[2026-08-25 00:47:51,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:47:51,675.675 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:47:51,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:47:51,732.732 INFO    ] No camera update needed
[2026-08-25 00:47:51,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:47:51,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:47:51,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:47:51,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:47:53,788.788 INFO    ] ================================================
[2026-08-25 00:47:53,805.805 INFO    ] Launching Daemon at Tue Aug 25 00:47:53 IST 2026
[2026-08-25 00:47:53,817.817 INFO    ] ================================================
[2026-08-25 00:47:54,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:47:54
[2026-08-25 00:47:55,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:47:55,304.304 INFO    ] Initializing speech engine...
[2026-08-25 00:47:55,319.319 INFO    ] 2026-08-25 00:47:55
[2026-08-25 00:47:55,601.601 INFO    ] 2026-08-25 00:47:55
[2026-08-25 00:47:55,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:47:55,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:47:55,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:47:56,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:47:56,009.009 INFO    ] time= 25/08/2026 00:47:56
[2026-08-25 00:47:56,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:47:56,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:47:56,176.176 INFO    ] No existing commands found in stream
[2026-08-25 00:48:01,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:48:01,209.209 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 00:48:02,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:48:02,011.011 INFO    ] Checking for system updates...
[2026-08-25 00:48:02,057.057 INFO    ] 200
[2026-08-25 00:48:02,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:02,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:02,136.136 INFO    ] No update needed
[2026-08-25 00:48:02,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 00:48:02,190.190 INFO    ] 200
[2026-08-25 00:48:02,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:02,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:48:02,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:02,374.374 INFO    ] No camera update needed
[2026-08-25 00:48:02,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:48:02,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:48:02,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:48:02,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:48:04,434.434 INFO    ] ================================================
[2026-08-25 00:48:04,449.449 INFO    ] Launching Daemon at Tue Aug 25 00:48:04 IST 2026
[2026-08-25 00:48:04,460.460 INFO    ] ================================================
[2026-08-25 00:48:05,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:48:05
[2026-08-25 00:48:05,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:48:06,039.039 INFO    ] Initializing speech engine...
[2026-08-25 00:48:06,047.047 INFO    ] 2026-08-25 00:48:06
[2026-08-25 00:48:06,337.337 INFO    ] 2026-08-25 00:48:06
[2026-08-25 00:48:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:48:06,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:48:06,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:48:06,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:48:06,788.788 INFO    ] time= 25/08/2026 00:48:06
[2026-08-25 00:48:06,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:48:06,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:48:06,965.965 INFO    ] No existing commands found in stream
[2026-08-25 00:48:11,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:48:11,987.987 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 00:48:13,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:48:13,749.749 INFO    ] Checking for system updates...
[2026-08-25 00:48:13,787.787 INFO    ] 200
[2026-08-25 00:48:13,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:13,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:13,843.843 INFO    ] No update needed
[2026-08-25 00:48:13,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 00:48:13,885.885 INFO    ] 200
[2026-08-25 00:48:13,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:13,927.927 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:48:13,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:13,975.975 INFO    ] No camera update needed
[2026-08-25 00:48:13,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:48:13,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:48:13,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:48:13,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:48:16,031.031 INFO    ] ================================================
[2026-08-25 00:48:16,046.046 INFO    ] Launching Daemon at Tue Aug 25 00:48:16 IST 2026
[2026-08-25 00:48:16,057.057 INFO    ] ================================================
[2026-08-25 00:48:16,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:48:16
[2026-08-25 00:48:17,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:48:17,580.580 INFO    ] Initializing speech engine...
[2026-08-25 00:48:17,603.603 INFO    ] 2026-08-25 00:48:17
[2026-08-25 00:48:17,857.857 INFO    ] 2026-08-25 00:48:17
[2026-08-25 00:48:17,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:48:18,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:48:18,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:48:18,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:48:18,364.364 INFO    ] time= 25/08/2026 00:48:18
[2026-08-25 00:48:18,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:48:18,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:48:18,552.552 INFO    ] No existing commands found in stream
[2026-08-25 00:48:23,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:48:23,580.580 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 00:48:27,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:48:27,378.378 INFO    ] Checking for system updates...
[2026-08-25 00:48:27,416.416 INFO    ] 200
[2026-08-25 00:48:27,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:27,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:48:27,482.482 INFO    ] No update needed
[2026-08-25 00:48:27,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 00:48:27,518.518 INFO    ] 200
[2026-08-25 00:48:27,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:27,563.563 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:48:27,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:48:27,615.615 INFO    ] No camera update needed
[2026-08-25 00:48:27,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:48:27,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:48:27,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:48:27,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:48:29,674.674 INFO    ] ================================================
[2026-08-25 00:48:29,689.689 INFO    ] Launching Daemon at Tue Aug 25 00:48:29 IST 2026
[2026-08-25 00:48:29,700.700 INFO    ] ================================================
[2026-08-25 00:48:30,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:48:30
[2026-08-25 00:48:31,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:48:31,307.307 INFO    ] Initializing speech engine...
[2026-08-25 00:48:31,315.315 INFO    ] 2026-08-25 00:48:31
[2026-08-25 00:48:31,660.660 INFO    ] 2026-08-25 00:48:31
[2026-08-25 00:48:31,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:48:31,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:48:31,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:48:32,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:48:32,181.181 INFO    ] time= 25/08/2026 00:48:32
[2026-08-25 00:48:32,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:48:32,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:48:32,411.411 INFO    ] No existing commands found in stream
[2026-08-25 00:48:37,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:48:37,439.439 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 00:48:40,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:48:40,275.275 INFO    ] Checking for system updates...
[2026-08-25 00:48:40,312.312 INFO    ] 200
[2026-08-25 00:48:40,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:40,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:40,377.377 INFO    ] No update needed
[2026-08-25 00:48:40,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 00:48:40,418.418 INFO    ] 200
[2026-08-25 00:48:40,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:40,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:48:40,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:40,525.525 INFO    ] No camera update needed
[2026-08-25 00:48:40,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:48:40,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:48:40,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:48:40,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:48:42,583.583 INFO    ] ================================================
[2026-08-25 00:48:42,597.597 INFO    ] Launching Daemon at Tue Aug 25 00:48:42 IST 2026
[2026-08-25 00:48:42,608.608 INFO    ] ================================================
[2026-08-25 00:48:43,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:48:43
[2026-08-25 00:48:43,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:48:44,049.049 INFO    ] Initializing speech engine...
[2026-08-25 00:48:44,060.060 INFO    ] 2026-08-25 00:48:44
[2026-08-25 00:48:44,323.323 INFO    ] 2026-08-25 00:48:44
[2026-08-25 00:48:44,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:48:44,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:48:44,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:48:44,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:48:44,732.732 INFO    ] time= 25/08/2026 00:48:44
[2026-08-25 00:48:44,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:48:44,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:48:44,931.931 INFO    ] No existing commands found in stream
[2026-08-25 00:48:49,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:48:49,964.964 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 00:48:52,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:48:52,781.781 INFO    ] Checking for system updates...
[2026-08-25 00:48:52,816.816 INFO    ] 200
[2026-08-25 00:48:52,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:52,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:52,878.878 INFO    ] No update needed
[2026-08-25 00:48:52,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 00:48:52,916.916 INFO    ] 200
[2026-08-25 00:48:52,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:48:52,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:48:53,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:48:53,019.019 INFO    ] No camera update needed
[2026-08-25 00:48:53,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:48:53,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:48:53,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:48:53,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:48:55,073.073 INFO    ] ================================================
[2026-08-25 00:48:55,088.088 INFO    ] Launching Daemon at Tue Aug 25 00:48:55 IST 2026
[2026-08-25 00:48:55,099.099 INFO    ] ================================================
[2026-08-25 00:48:55,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:48:55
[2026-08-25 00:48:56,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:48:56,496.496 INFO    ] Initializing speech engine...
[2026-08-25 00:48:56,515.515 INFO    ] 2026-08-25 00:48:56
[2026-08-25 00:48:56,768.768 INFO    ] 2026-08-25 00:48:56
[2026-08-25 00:48:56,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:48:57,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:48:57,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:48:57,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:48:57,249.249 INFO    ] time= 25/08/2026 00:48:57
[2026-08-25 00:48:57,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:48:57,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:48:57,479.479 INFO    ] No existing commands found in stream
[2026-08-25 00:49:02,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:49:02,506.506 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 00:49:04,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:49:04,710.710 INFO    ] Checking for system updates...
[2026-08-25 00:49:04,748.748 INFO    ] 200
[2026-08-25 00:49:04,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:04,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:49:04,805.805 INFO    ] No update needed
[2026-08-25 00:49:04,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 00:49:04,841.841 INFO    ] 200
[2026-08-25 00:49:04,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:04,884.884 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:49:04,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:49:04,942.942 INFO    ] No camera update needed
[2026-08-25 00:49:04,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:49:04,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:49:04,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:49:04,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:49:07,003.003 INFO    ] ================================================
[2026-08-25 00:49:07,018.018 INFO    ] Launching Daemon at Tue Aug 25 00:49:07 IST 2026
[2026-08-25 00:49:07,029.029 INFO    ] ================================================
[2026-08-25 00:49:07,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:49:07
[2026-08-25 00:49:08,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:49:08,452.452 INFO    ] Initializing speech engine...
[2026-08-25 00:49:08,470.470 INFO    ] 2026-08-25 00:49:08
[2026-08-25 00:49:08,743.743 INFO    ] 2026-08-25 00:49:08
[2026-08-25 00:49:08,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:49:08,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:49:08,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:49:09,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:49:09,163.163 INFO    ] time= 25/08/2026 00:49:09
[2026-08-25 00:49:09,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:49:09,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:49:09,317.317 INFO    ] No existing commands found in stream
[2026-08-25 00:49:14,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:49:14,349.349 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 00:49:18,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:49:18,310.310 INFO    ] Checking for system updates...
[2026-08-25 00:49:18,348.348 INFO    ] 200
[2026-08-25 00:49:18,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:18,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:49:18,421.421 INFO    ] No update needed
[2026-08-25 00:49:18,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 00:49:18,456.456 INFO    ] 200
[2026-08-25 00:49:18,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:18,508.508 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:49:18,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:49:18,556.556 INFO    ] No camera update needed
[2026-08-25 00:49:18,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:49:18,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:49:18,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:49:18,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:49:20,611.611 INFO    ] ================================================
[2026-08-25 00:49:20,626.626 INFO    ] Launching Daemon at Tue Aug 25 00:49:20 IST 2026
[2026-08-25 00:49:20,638.638 INFO    ] ================================================
[2026-08-25 00:49:21,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:49:21
[2026-08-25 00:49:21,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:49:22,059.059 INFO    ] Initializing speech engine...
[2026-08-25 00:49:22,072.072 INFO    ] 2026-08-25 00:49:22
[2026-08-25 00:49:22,337.337 INFO    ] 2026-08-25 00:49:22
[2026-08-25 00:49:22,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:49:22,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:49:22,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:49:22,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:49:22,819.819 INFO    ] time= 25/08/2026 00:49:22
[2026-08-25 00:49:22,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:49:22,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:49:23,040.040 INFO    ] No existing commands found in stream
[2026-08-25 00:49:28,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:49:28,063.063 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 00:49:32,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:49:32,074.074 INFO    ] Checking for system updates...
[2026-08-25 00:49:32,118.118 INFO    ] 200
[2026-08-25 00:49:32,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:32,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:49:32,190.190 INFO    ] No update needed
[2026-08-25 00:49:32,192.192 INFO    ] Checking for camera pi updates...
[2026-08-25 00:49:32,228.228 INFO    ] 200
[2026-08-25 00:49:32,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:32,275.275 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:49:32,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:49:32,340.340 INFO    ] No camera update needed
[2026-08-25 00:49:32,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:49:32,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:49:32,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:49:32,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:49:34,397.397 INFO    ] ================================================
[2026-08-25 00:49:34,413.413 INFO    ] Launching Daemon at Tue Aug 25 00:49:34 IST 2026
[2026-08-25 00:49:34,423.423 INFO    ] ================================================
[2026-08-25 00:49:34,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:49:34
[2026-08-25 00:49:35,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:49:35,817.817 INFO    ] Initializing speech engine...
[2026-08-25 00:49:35,831.831 INFO    ] 2026-08-25 00:49:35
[2026-08-25 00:49:36,094.094 INFO    ] 2026-08-25 00:49:36
[2026-08-25 00:49:36,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:49:36,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:49:36,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:49:36,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:49:36,585.585 INFO    ] time= 25/08/2026 00:49:36
[2026-08-25 00:49:36,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:49:36,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:49:36,800.800 INFO    ] No existing commands found in stream
[2026-08-25 00:49:41,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:49:41,828.828 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 00:49:43,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:49:43,312.312 INFO    ] Checking for system updates...
[2026-08-25 00:49:43,351.351 INFO    ] 200
[2026-08-25 00:49:43,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:43,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:49:43,415.415 INFO    ] No update needed
[2026-08-25 00:49:43,417.417 INFO    ] Checking for camera pi updates...
[2026-08-25 00:49:43,450.450 INFO    ] 200
[2026-08-25 00:49:43,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:43,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:49:43,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:49:43,556.556 INFO    ] No camera update needed
[2026-08-25 00:49:43,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:49:43,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:49:43,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:49:43,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:49:45,610.610 INFO    ] ================================================
[2026-08-25 00:49:45,626.626 INFO    ] Launching Daemon at Tue Aug 25 00:49:45 IST 2026
[2026-08-25 00:49:45,636.636 INFO    ] ================================================
[2026-08-25 00:49:46,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:49:46
[2026-08-25 00:49:46,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:49:47,272.272 INFO    ] Initializing speech engine...
[2026-08-25 00:49:47,278.278 INFO    ] 2026-08-25 00:49:47
[2026-08-25 00:49:47,546.546 INFO    ] 2026-08-25 00:49:47
[2026-08-25 00:49:47,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:49:47,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:49:47,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:49:47,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:49:48,011.011 INFO    ] time= 25/08/2026 00:49:47
[2026-08-25 00:49:48,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:49:48,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:49:48,215.215 INFO    ] No existing commands found in stream
[2026-08-25 00:49:53,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:49:53,242.242 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 00:49:55,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:49:55,111.111 INFO    ] Checking for system updates...
[2026-08-25 00:49:55,146.146 INFO    ] 200
[2026-08-25 00:49:55,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:55,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:49:55,211.211 INFO    ] No update needed
[2026-08-25 00:49:55,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 00:49:55,247.247 INFO    ] 200
[2026-08-25 00:49:55,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:49:55,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:49:55,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:49:55,353.353 INFO    ] No camera update needed
[2026-08-25 00:49:55,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:49:55,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:49:55,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:49:55,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:49:57,411.411 INFO    ] ================================================
[2026-08-25 00:49:57,426.426 INFO    ] Launching Daemon at Tue Aug 25 00:49:57 IST 2026
[2026-08-25 00:49:57,436.436 INFO    ] ================================================
[2026-08-25 00:49:58,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:49:58
[2026-08-25 00:49:58,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:49:58,859.859 INFO    ] Initializing speech engine...
[2026-08-25 00:49:58,869.869 INFO    ] 2026-08-25 00:49:58
[2026-08-25 00:49:59,114.114 INFO    ] 2026-08-25 00:49:59
[2026-08-25 00:49:59,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:49:59,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:49:59,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:49:59,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:49:59,607.607 INFO    ] time= 25/08/2026 00:49:59
[2026-08-25 00:49:59,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:49:59,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:49:59,818.818 INFO    ] No existing commands found in stream
[2026-08-25 00:50:04,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:50:04,833.833 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 00:50:08,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:50:08,526.526 INFO    ] Checking for system updates...
[2026-08-25 00:50:08,562.562 INFO    ] 200
[2026-08-25 00:50:08,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:08,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:50:08,636.636 INFO    ] No update needed
[2026-08-25 00:50:08,638.638 INFO    ] Checking for camera pi updates...
[2026-08-25 00:50:08,676.676 INFO    ] 200
[2026-08-25 00:50:08,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:08,723.723 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:50:08,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:50:08,771.771 INFO    ] No camera update needed
[2026-08-25 00:50:08,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:50:08,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:50:08,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:50:08,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:50:10,829.829 INFO    ] ================================================
[2026-08-25 00:50:10,846.846 INFO    ] Launching Daemon at Tue Aug 25 00:50:10 IST 2026
[2026-08-25 00:50:10,857.857 INFO    ] ================================================
[2026-08-25 00:50:11,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:50:11
[2026-08-25 00:50:12,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:50:12,436.436 INFO    ] Initializing speech engine...
[2026-08-25 00:50:12,442.442 INFO    ] 2026-08-25 00:50:12
[2026-08-25 00:50:12,717.717 INFO    ] 2026-08-25 00:50:12
[2026-08-25 00:50:12,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:50:13,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:50:13,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:50:13,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:50:13,268.268 INFO    ] time= 25/08/2026 00:50:13
[2026-08-25 00:50:13,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:50:13,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:50:13,440.440 INFO    ] No existing commands found in stream
[2026-08-25 00:50:18,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:50:18,455.455 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 00:50:20,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:50:20,592.592 INFO    ] Checking for system updates...
[2026-08-25 00:50:20,628.628 INFO    ] 200
[2026-08-25 00:50:20,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:20,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:50:20,685.685 INFO    ] No update needed
[2026-08-25 00:50:20,688.688 INFO    ] Checking for camera pi updates...
[2026-08-25 00:50:20,726.726 INFO    ] 200
[2026-08-25 00:50:20,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:20,774.774 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:50:20,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:50:20,825.825 INFO    ] No camera update needed
[2026-08-25 00:50:20,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:50:20,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:50:20,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:50:20,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:50:22,883.883 INFO    ] ================================================
[2026-08-25 00:50:22,898.898 INFO    ] Launching Daemon at Tue Aug 25 00:50:22 IST 2026
[2026-08-25 00:50:22,908.908 INFO    ] ================================================
[2026-08-25 00:50:23,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:50:23
[2026-08-25 00:50:24,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:50:24,355.355 INFO    ] Initializing speech engine...
[2026-08-25 00:50:24,364.364 INFO    ] 2026-08-25 00:50:24
[2026-08-25 00:50:24,611.611 INFO    ] 2026-08-25 00:50:24
[2026-08-25 00:50:24,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:50:24,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:50:24,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:50:25,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:50:25,097.097 INFO    ] time= 25/08/2026 00:50:25
[2026-08-25 00:50:25,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:50:25,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:50:25,313.313 INFO    ] No existing commands found in stream
[2026-08-25 00:50:30,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:50:30,343.343 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 00:50:34,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:50:34,353.353 INFO    ] Checking for system updates...
[2026-08-25 00:50:34,392.392 INFO    ] 200
[2026-08-25 00:50:34,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:34,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:50:34,450.450 INFO    ] No update needed
[2026-08-25 00:50:34,452.452 INFO    ] Checking for camera pi updates...
[2026-08-25 00:50:34,490.490 INFO    ] 200
[2026-08-25 00:50:34,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:34,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:50:34,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:50:34,580.580 INFO    ] No camera update needed
[2026-08-25 00:50:34,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:50:34,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:50:34,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:50:34,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:50:36,634.634 INFO    ] ================================================
[2026-08-25 00:50:36,650.650 INFO    ] Launching Daemon at Tue Aug 25 00:50:36 IST 2026
[2026-08-25 00:50:36,660.660 INFO    ] ================================================
[2026-08-25 00:50:37,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:50:37
[2026-08-25 00:50:37,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:50:38,063.063 INFO    ] Initializing speech engine...
[2026-08-25 00:50:38,078.078 INFO    ] 2026-08-25 00:50:38
[2026-08-25 00:50:38,346.346 INFO    ] 2026-08-25 00:50:38
[2026-08-25 00:50:38,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:50:38,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:50:38,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:50:38,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:50:38,823.823 INFO    ] time= 25/08/2026 00:50:38
[2026-08-25 00:50:38,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:50:38,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:50:39,089.089 INFO    ] No existing commands found in stream
[2026-08-25 00:50:44,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:50:44,115.115 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 00:50:45,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:50:45,953.953 INFO    ] Checking for system updates...
[2026-08-25 00:50:45,993.993 INFO    ] 200
[2026-08-25 00:50:45,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:46,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:50:46,050.050 INFO    ] No update needed
[2026-08-25 00:50:46,053.053 INFO    ] Checking for camera pi updates...
[2026-08-25 00:50:46,086.086 INFO    ] 200
[2026-08-25 00:50:46,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:46,134.134 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:50:46,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:50:46,182.182 INFO    ] No camera update needed
[2026-08-25 00:50:46,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:50:46,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:50:46,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:50:46,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:50:48,239.239 INFO    ] ================================================
[2026-08-25 00:50:48,255.255 INFO    ] Launching Daemon at Tue Aug 25 00:50:48 IST 2026
[2026-08-25 00:50:48,266.266 INFO    ] ================================================
[2026-08-25 00:50:48,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:50:48
[2026-08-25 00:50:49,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:50:49,698.698 INFO    ] Initializing speech engine...
[2026-08-25 00:50:49,704.704 INFO    ] 2026-08-25 00:50:49
[2026-08-25 00:50:50,009.009 INFO    ] 2026-08-25 00:50:49
[2026-08-25 00:50:50,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:50:50,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:50:50,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:50:50,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:50:50,439.439 INFO    ] time= 25/08/2026 00:50:50
[2026-08-25 00:50:50,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:50:50,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:50:50,540.540 INFO    ] No existing commands found in stream
[2026-08-25 00:50:55,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:50:55,573.573 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 00:50:57,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:50:57,562.562 INFO    ] Checking for system updates...
[2026-08-25 00:50:57,597.597 INFO    ] 200
[2026-08-25 00:50:57,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:57,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:50:57,662.662 INFO    ] No update needed
[2026-08-25 00:50:57,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 00:50:57,703.703 INFO    ] 200
[2026-08-25 00:50:57,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:50:57,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:50:57,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:50:57,800.800 INFO    ] No camera update needed
[2026-08-25 00:50:57,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:50:57,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:50:57,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:50:57,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:50:59,854.854 INFO    ] ================================================
[2026-08-25 00:50:59,869.869 INFO    ] Launching Daemon at Tue Aug 25 00:50:59 IST 2026
[2026-08-25 00:50:59,879.879 INFO    ] ================================================
[2026-08-25 00:51:00,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:51:00
[2026-08-25 00:51:01,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:51:01,294.294 INFO    ] Initializing speech engine...
[2026-08-25 00:51:01,304.304 INFO    ] 2026-08-25 00:51:01
[2026-08-25 00:51:01,553.553 INFO    ] 2026-08-25 00:51:01
[2026-08-25 00:51:01,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:51:01,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:51:01,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:51:02,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:51:02,089.089 INFO    ] time= 25/08/2026 00:51:02
[2026-08-25 00:51:02,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:51:02,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:51:02,262.262 INFO    ] No existing commands found in stream
[2026-08-25 00:51:07,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:51:07,298.298 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 00:51:08,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:51:08,344.344 INFO    ] Checking for system updates...
[2026-08-25 00:51:08,384.384 INFO    ] 200
[2026-08-25 00:51:08,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:08,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:08,450.450 INFO    ] No update needed
[2026-08-25 00:51:08,452.452 INFO    ] Checking for camera pi updates...
[2026-08-25 00:51:08,490.490 INFO    ] 200
[2026-08-25 00:51:08,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:08,533.533 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:51:08,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:08,689.689 INFO    ] No camera update needed
[2026-08-25 00:51:08,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:51:08,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:51:08,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:51:08,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:51:10,746.746 INFO    ] ================================================
[2026-08-25 00:51:10,761.761 INFO    ] Launching Daemon at Tue Aug 25 00:51:10 IST 2026
[2026-08-25 00:51:10,772.772 INFO    ] ================================================
[2026-08-25 00:51:11,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:51:11
[2026-08-25 00:51:12,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:51:12,336.336 INFO    ] Initializing speech engine...
[2026-08-25 00:51:12,343.343 INFO    ] 2026-08-25 00:51:12
[2026-08-25 00:51:12,606.606 INFO    ] 2026-08-25 00:51:12
[2026-08-25 00:51:12,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:51:12,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:51:12,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:51:13,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:51:13,105.105 INFO    ] time= 25/08/2026 00:51:13
[2026-08-25 00:51:13,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:51:13,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:51:13,320.320 INFO    ] No existing commands found in stream
[2026-08-25 00:51:18,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:51:18,337.337 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 00:51:21,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:51:21,876.876 INFO    ] Checking for system updates...
[2026-08-25 00:51:21,916.916 INFO    ] 200
[2026-08-25 00:51:21,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:21,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:21,974.974 INFO    ] No update needed
[2026-08-25 00:51:21,976.976 INFO    ] Checking for camera pi updates...
[2026-08-25 00:51:22,013.013 INFO    ] 200
[2026-08-25 00:51:22,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:22,060.060 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:51:22,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:22,110.110 INFO    ] No camera update needed
[2026-08-25 00:51:22,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:51:22,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:51:22,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:51:22,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:51:24,165.165 INFO    ] ================================================
[2026-08-25 00:51:24,181.181 INFO    ] Launching Daemon at Tue Aug 25 00:51:24 IST 2026
[2026-08-25 00:51:24,191.191 INFO    ] ================================================
[2026-08-25 00:51:24,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:51:24
[2026-08-25 00:51:25,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:51:25,596.596 INFO    ] Initializing speech engine...
[2026-08-25 00:51:25,605.605 INFO    ] 2026-08-25 00:51:25
[2026-08-25 00:51:25,894.894 INFO    ] 2026-08-25 00:51:25
[2026-08-25 00:51:25,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:51:26,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:51:26,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:51:26,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:51:26,309.309 INFO    ] time= 25/08/2026 00:51:26
[2026-08-25 00:51:26,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:51:26,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:51:26,487.487 INFO    ] No existing commands found in stream
[2026-08-25 00:51:31,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:51:31,510.510 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 00:51:34,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:51:34,738.738 INFO    ] Checking for system updates...
[2026-08-25 00:51:34,777.777 INFO    ] 200
[2026-08-25 00:51:34,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:34,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:34,845.845 INFO    ] No update needed
[2026-08-25 00:51:34,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 00:51:34,883.883 INFO    ] 200
[2026-08-25 00:51:34,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:34,930.930 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:51:34,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:34,981.981 INFO    ] No camera update needed
[2026-08-25 00:51:34,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:51:34,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:51:34,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:51:34,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:51:37,036.036 INFO    ] ================================================
[2026-08-25 00:51:37,051.051 INFO    ] Launching Daemon at Tue Aug 25 00:51:37 IST 2026
[2026-08-25 00:51:37,062.062 INFO    ] ================================================
[2026-08-25 00:51:37,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:51:37
[2026-08-25 00:51:38,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:51:38,511.511 INFO    ] Initializing speech engine...
[2026-08-25 00:51:38,529.529 INFO    ] 2026-08-25 00:51:38
[2026-08-25 00:51:38,800.800 INFO    ] 2026-08-25 00:51:38
[2026-08-25 00:51:38,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:51:39,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:51:39,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:51:39,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:51:39,295.295 INFO    ] time= 25/08/2026 00:51:39
[2026-08-25 00:51:39,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:51:39,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:51:39,526.526 INFO    ] No existing commands found in stream
[2026-08-25 00:51:44,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:51:44,546.546 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 00:51:46,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:51:46,869.869 INFO    ] Checking for system updates...
[2026-08-25 00:51:46,905.905 INFO    ] 200
[2026-08-25 00:51:46,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:46,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:46,961.961 INFO    ] No update needed
[2026-08-25 00:51:46,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 00:51:46,997.997 INFO    ] 200
[2026-08-25 00:51:46,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:47,041.041 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:51:47,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:47,094.094 INFO    ] No camera update needed
[2026-08-25 00:51:47,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:51:47,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:51:47,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:51:47,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:51:49,155.155 INFO    ] ================================================
[2026-08-25 00:51:49,172.172 INFO    ] Launching Daemon at Tue Aug 25 00:51:49 IST 2026
[2026-08-25 00:51:49,183.183 INFO    ] ================================================
[2026-08-25 00:51:49,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:51:49
[2026-08-25 00:51:50,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:51:50,607.607 INFO    ] Initializing speech engine...
[2026-08-25 00:51:50,616.616 INFO    ] 2026-08-25 00:51:50
[2026-08-25 00:51:50,868.868 INFO    ] 2026-08-25 00:51:50
[2026-08-25 00:51:50,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:51:51,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:51:51,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:51:51,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:51:51,259.259 INFO    ] time= 25/08/2026 00:51:51
[2026-08-25 00:51:51,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:51:51,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:51:51,457.457 INFO    ] No existing commands found in stream
[2026-08-25 00:51:56,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:51:56,474.474 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 00:51:57,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:51:57,799.799 INFO    ] Checking for system updates...
[2026-08-25 00:51:57,835.835 INFO    ] 200
[2026-08-25 00:51:57,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:57,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:57,897.897 INFO    ] No update needed
[2026-08-25 00:51:57,899.899 INFO    ] Checking for camera pi updates...
[2026-08-25 00:51:57,935.935 INFO    ] 200
[2026-08-25 00:51:57,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:51:57,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:51:58,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:51:58,029.029 INFO    ] No camera update needed
[2026-08-25 00:51:58,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:51:58,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:51:58,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:51:58,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:52:00,087.087 INFO    ] ================================================
[2026-08-25 00:52:00,101.101 INFO    ] Launching Daemon at Tue Aug 25 00:52:00 IST 2026
[2026-08-25 00:52:00,112.112 INFO    ] ================================================
[2026-08-25 00:52:00,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:52:00
[2026-08-25 00:52:01,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:52:01,864.864 INFO    ] Initializing speech engine...
[2026-08-25 00:52:01,868.868 INFO    ] 2026-08-25 00:52:01
[2026-08-25 00:52:02,280.280 INFO    ] 2026-08-25 00:52:02
[2026-08-25 00:52:02,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:52:02,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:52:02,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:52:02,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:52:02,777.777 INFO    ] time= 25/08/2026 00:52:02
[2026-08-25 00:52:02,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:52:02,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:52:02,955.955 INFO    ] No existing commands found in stream
[2026-08-25 00:52:07,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:52:07,985.985 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 00:52:12,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:52:12,193.193 INFO    ] Checking for system updates...
[2026-08-25 00:52:12,232.232 INFO    ] 200
[2026-08-25 00:52:12,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:12,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:12,289.289 INFO    ] No update needed
[2026-08-25 00:52:12,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 00:52:12,325.325 INFO    ] 200
[2026-08-25 00:52:12,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:12,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:52:12,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:12,417.417 INFO    ] No camera update needed
[2026-08-25 00:52:12,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:52:12,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:52:12,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:52:12,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:52:14,473.473 INFO    ] ================================================
[2026-08-25 00:52:14,488.488 INFO    ] Launching Daemon at Tue Aug 25 00:52:14 IST 2026
[2026-08-25 00:52:14,499.499 INFO    ] ================================================
[2026-08-25 00:52:15,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:52:15
[2026-08-25 00:52:15,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:52:15,915.915 INFO    ] Initializing speech engine...
[2026-08-25 00:52:15,924.924 INFO    ] 2026-08-25 00:52:15
[2026-08-25 00:52:16,176.176 INFO    ] 2026-08-25 00:52:16
[2026-08-25 00:52:16,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:52:16,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:52:16,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:52:16,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:52:16,640.640 INFO    ] time= 25/08/2026 00:52:16
[2026-08-25 00:52:16,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:52:16,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:52:16,861.861 INFO    ] No existing commands found in stream
[2026-08-25 00:52:21,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:52:21,889.889 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 00:52:22,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:52:22,470.470 INFO    ] Checking for system updates...
[2026-08-25 00:52:22,511.511 INFO    ] 200
[2026-08-25 00:52:22,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:22,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:22,575.575 INFO    ] No update needed
[2026-08-25 00:52:22,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 00:52:22,614.614 INFO    ] 200
[2026-08-25 00:52:22,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:22,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:52:22,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:22,708.708 INFO    ] No camera update needed
[2026-08-25 00:52:22,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:52:22,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:52:22,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:52:22,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:52:24,765.765 INFO    ] ================================================
[2026-08-25 00:52:24,780.780 INFO    ] Launching Daemon at Tue Aug 25 00:52:24 IST 2026
[2026-08-25 00:52:24,790.790 INFO    ] ================================================
[2026-08-25 00:52:25,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:52:25
[2026-08-25 00:52:25,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:52:26,233.233 INFO    ] Initializing speech engine...
[2026-08-25 00:52:26,243.243 INFO    ] 2026-08-25 00:52:26
[2026-08-25 00:52:26,490.490 INFO    ] 2026-08-25 00:52:26
[2026-08-25 00:52:26,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:52:26,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:52:26,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:52:26,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:52:26,966.966 INFO    ] time= 25/08/2026 00:52:26
[2026-08-25 00:52:27,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:52:27,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:52:27,175.175 INFO    ] No existing commands found in stream
[2026-08-25 00:52:32,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:52:32,209.209 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 00:52:33,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:52:33,495.495 INFO    ] Checking for system updates...
[2026-08-25 00:52:33,533.533 INFO    ] 200
[2026-08-25 00:52:33,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:33,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:33,600.600 INFO    ] No update needed
[2026-08-25 00:52:33,603.603 INFO    ] Checking for camera pi updates...
[2026-08-25 00:52:33,638.638 INFO    ] 200
[2026-08-25 00:52:33,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:33,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:52:33,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:33,753.753 INFO    ] No camera update needed
[2026-08-25 00:52:33,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:52:33,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:52:33,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:52:33,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:52:35,809.809 INFO    ] ================================================
[2026-08-25 00:52:35,824.824 INFO    ] Launching Daemon at Tue Aug 25 00:52:35 IST 2026
[2026-08-25 00:52:35,834.834 INFO    ] ================================================
[2026-08-25 00:52:36,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:52:36
[2026-08-25 00:52:37,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:52:37,282.282 INFO    ] Initializing speech engine...
[2026-08-25 00:52:37,290.290 INFO    ] 2026-08-25 00:52:37
[2026-08-25 00:52:37,539.539 INFO    ] 2026-08-25 00:52:37
[2026-08-25 00:52:37,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:52:37,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:52:37,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:52:37,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:52:38,009.009 INFO    ] time= 25/08/2026 00:52:37
[2026-08-25 00:52:38,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:52:38,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:52:38,229.229 INFO    ] No existing commands found in stream
[2026-08-25 00:52:43,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:52:43,259.259 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 00:52:47,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:52:47,520.520 INFO    ] Checking for system updates...
[2026-08-25 00:52:47,555.555 INFO    ] 200
[2026-08-25 00:52:47,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:47,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:47,613.613 INFO    ] No update needed
[2026-08-25 00:52:47,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 00:52:47,649.649 INFO    ] 200
[2026-08-25 00:52:47,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:52:47,692.692 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:52:47,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:52:47,741.741 INFO    ] No camera update needed
[2026-08-25 00:52:47,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:52:47,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:52:47,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:52:47,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:52:49,799.799 INFO    ] ================================================
[2026-08-25 00:52:49,814.814 INFO    ] Launching Daemon at Tue Aug 25 00:52:49 IST 2026
[2026-08-25 00:52:49,824.824 INFO    ] ================================================
[2026-08-25 00:52:50,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:52:50
[2026-08-25 00:52:50,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:52:51,269.269 INFO    ] Initializing speech engine...
[2026-08-25 00:52:51,276.276 INFO    ] 2026-08-25 00:52:51
[2026-08-25 00:52:51,535.535 INFO    ] 2026-08-25 00:52:51
[2026-08-25 00:52:51,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:52:51,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:52:51,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:52:51,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:52:52,016.016 INFO    ] time= 25/08/2026 00:52:51
[2026-08-25 00:52:52,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:52:52,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:52:52,214.214 INFO    ] No existing commands found in stream
[2026-08-25 00:52:57,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:52:57,239.239 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 00:53:00,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:53:00,158.158 INFO    ] Checking for system updates...
[2026-08-25 00:53:00,196.196 INFO    ] 200
[2026-08-25 00:53:00,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:00,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:53:00,257.257 INFO    ] No update needed
[2026-08-25 00:53:00,259.259 INFO    ] Checking for camera pi updates...
[2026-08-25 00:53:00,295.295 INFO    ] 200
[2026-08-25 00:53:00,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:00,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:53:00,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:53:00,395.395 INFO    ] No camera update needed
[2026-08-25 00:53:00,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:53:00,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:53:00,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:53:00,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:53:02,460.460 INFO    ] ================================================
[2026-08-25 00:53:02,479.479 INFO    ] Launching Daemon at Tue Aug 25 00:53:02 IST 2026
[2026-08-25 00:53:02,492.492 INFO    ] ================================================
[2026-08-25 00:53:03,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:53:03
[2026-08-25 00:53:03,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:53:04,045.045 INFO    ] Initializing speech engine...
[2026-08-25 00:53:04,050.050 INFO    ] 2026-08-25 00:53:04
[2026-08-25 00:53:04,311.311 INFO    ] 2026-08-25 00:53:04
[2026-08-25 00:53:04,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:53:04,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:53:04,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:53:04,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:53:04,853.853 INFO    ] time= 25/08/2026 00:53:04
[2026-08-25 00:53:04,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:53:04,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:53:05,006.006 INFO    ] No existing commands found in stream
[2026-08-25 00:53:10,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:53:10,023.023 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 00:53:12,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:53:12,526.526 INFO    ] Checking for system updates...
[2026-08-25 00:53:12,565.565 INFO    ] 200
[2026-08-25 00:53:12,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:12,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:53:12,624.624 INFO    ] No update needed
[2026-08-25 00:53:12,627.627 INFO    ] Checking for camera pi updates...
[2026-08-25 00:53:12,664.664 INFO    ] 200
[2026-08-25 00:53:12,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:12,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:53:12,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:53:12,869.869 INFO    ] No camera update needed
[2026-08-25 00:53:12,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:53:12,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:53:12,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:53:12,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:53:14,923.923 INFO    ] ================================================
[2026-08-25 00:53:14,939.939 INFO    ] Launching Daemon at Tue Aug 25 00:53:14 IST 2026
[2026-08-25 00:53:14,951.951 INFO    ] ================================================
[2026-08-25 00:53:15,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:53:15
[2026-08-25 00:53:16,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:53:16,401.401 INFO    ] Initializing speech engine...
[2026-08-25 00:53:16,412.412 INFO    ] 2026-08-25 00:53:16
[2026-08-25 00:53:16,672.672 INFO    ] 2026-08-25 00:53:16
[2026-08-25 00:53:16,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:53:16,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:53:16,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:53:17,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:53:17,151.151 INFO    ] time= 25/08/2026 00:53:17
[2026-08-25 00:53:17,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:53:17,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:53:17,349.349 INFO    ] No existing commands found in stream
[2026-08-25 00:53:22,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:53:22,379.379 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 00:53:25,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:53:25,004.004 INFO    ] Checking for system updates...
[2026-08-25 00:53:25,039.039 INFO    ] 200
[2026-08-25 00:53:25,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:25,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:53:25,096.096 INFO    ] No update needed
[2026-08-25 00:53:25,099.099 INFO    ] Checking for camera pi updates...
[2026-08-25 00:53:25,132.132 INFO    ] 200
[2026-08-25 00:53:25,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:25,175.175 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:53:25,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:53:25,234.234 INFO    ] No camera update needed
[2026-08-25 00:53:25,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:53:25,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:53:25,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:53:25,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:53:27,289.289 INFO    ] ================================================
[2026-08-25 00:53:27,305.305 INFO    ] Launching Daemon at Tue Aug 25 00:53:27 IST 2026
[2026-08-25 00:53:27,316.316 INFO    ] ================================================
[2026-08-25 00:53:27,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:53:27
[2026-08-25 00:53:28,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:53:28,712.712 INFO    ] Initializing speech engine...
[2026-08-25 00:53:28,735.735 INFO    ] 2026-08-25 00:53:28
[2026-08-25 00:53:28,988.988 INFO    ] 2026-08-25 00:53:28
[2026-08-25 00:53:29,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:53:29,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:53:29,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:53:29,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:53:29,447.447 INFO    ] time= 25/08/2026 00:53:29
[2026-08-25 00:53:29,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:53:29,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:53:29,680.680 INFO    ] No existing commands found in stream
[2026-08-25 00:53:34,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:53:34,705.705 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 00:53:37,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:53:37,982.982 INFO    ] Checking for system updates...
[2026-08-25 00:53:38,021.021 INFO    ] 200
[2026-08-25 00:53:38,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:38,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:53:38,085.085 INFO    ] No update needed
[2026-08-25 00:53:38,087.087 INFO    ] Checking for camera pi updates...
[2026-08-25 00:53:38,121.121 INFO    ] 200
[2026-08-25 00:53:38,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:38,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:53:38,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:53:38,216.216 INFO    ] No camera update needed
[2026-08-25 00:53:38,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:53:38,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:53:38,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:53:38,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:53:40,270.270 INFO    ] ================================================
[2026-08-25 00:53:40,286.286 INFO    ] Launching Daemon at Tue Aug 25 00:53:40 IST 2026
[2026-08-25 00:53:40,297.297 INFO    ] ================================================
[2026-08-25 00:53:40,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:53:40
[2026-08-25 00:53:41,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:53:41,759.759 INFO    ] Initializing speech engine...
[2026-08-25 00:53:41,774.774 INFO    ] 2026-08-25 00:53:41
[2026-08-25 00:53:42,088.088 INFO    ] 2026-08-25 00:53:42
[2026-08-25 00:53:42,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:53:42,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:53:42,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:53:42,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:53:42,611.611 INFO    ] time= 25/08/2026 00:53:42
[2026-08-25 00:53:42,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:53:42,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:53:42,802.802 INFO    ] No existing commands found in stream
[2026-08-25 00:53:47,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:53:47,831.831 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-25 00:53:50,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:53:50,733.733 INFO    ] Checking for system updates...
[2026-08-25 00:53:50,773.773 INFO    ] 200
[2026-08-25 00:53:50,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:50,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:53:50,837.837 INFO    ] No update needed
[2026-08-25 00:53:50,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 00:53:50,876.876 INFO    ] 200
[2026-08-25 00:53:50,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:53:50,924.924 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:53:50,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:53:50,980.980 INFO    ] No camera update needed
[2026-08-25 00:53:50,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:53:50,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:53:50,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:53:50,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:53:53,035.035 INFO    ] ================================================
[2026-08-25 00:53:53,051.051 INFO    ] Launching Daemon at Tue Aug 25 00:53:53 IST 2026
[2026-08-25 00:53:53,062.062 INFO    ] ================================================
[2026-08-25 00:53:53,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:53:53
[2026-08-25 00:53:54,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:53:54,526.526 INFO    ] Initializing speech engine...
[2026-08-25 00:53:54,533.533 INFO    ] 2026-08-25 00:53:54
[2026-08-25 00:53:54,794.794 INFO    ] 2026-08-25 00:53:54
[2026-08-25 00:53:54,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:53:55,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:53:55,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:53:55,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:53:55,277.277 INFO    ] time= 25/08/2026 00:53:55
[2026-08-25 00:53:55,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:53:55,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:53:55,489.489 INFO    ] No existing commands found in stream
[2026-08-25 00:54:00,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:54:00,507.507 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 00:54:02,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:54:02,295.295 INFO    ] Checking for system updates...
[2026-08-25 00:54:02,348.348 INFO    ] 200
[2026-08-25 00:54:02,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:02,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:54:02,426.426 INFO    ] No update needed
[2026-08-25 00:54:02,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 00:54:02,467.467 INFO    ] 200
[2026-08-25 00:54:02,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:02,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:54:02,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:54:02,570.570 INFO    ] No camera update needed
[2026-08-25 00:54:02,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:54:02,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:54:02,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:54:02,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:54:04,631.631 INFO    ] ================================================
[2026-08-25 00:54:04,648.648 INFO    ] Launching Daemon at Tue Aug 25 00:54:04 IST 2026
[2026-08-25 00:54:04,660.660 INFO    ] ================================================
[2026-08-25 00:54:05,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:54:05
[2026-08-25 00:54:05,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:54:06,084.084 INFO    ] Initializing speech engine...
[2026-08-25 00:54:06,090.090 INFO    ] 2026-08-25 00:54:06
[2026-08-25 00:54:06,363.363 INFO    ] 2026-08-25 00:54:06
[2026-08-25 00:54:06,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:54:06,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:54:06,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:54:06,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:54:06,861.861 INFO    ] time= 25/08/2026 00:54:06
[2026-08-25 00:54:06,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:54:06,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:54:07,085.085 INFO    ] No existing commands found in stream
[2026-08-25 00:54:12,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:54:12,106.106 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 00:54:16,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:54:16,203.203 INFO    ] Checking for system updates...
[2026-08-25 00:54:16,244.244 INFO    ] 200
[2026-08-25 00:54:16,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:16,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:16,314.314 INFO    ] No update needed
[2026-08-25 00:54:16,318.318 INFO    ] Checking for camera pi updates...
[2026-08-25 00:54:16,364.364 INFO    ] 200
[2026-08-25 00:54:16,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:16,418.418 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:54:16,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:16,479.479 INFO    ] No camera update needed
[2026-08-25 00:54:16,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:54:16,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:54:16,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:54:16,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:54:18,538.538 INFO    ] ================================================
[2026-08-25 00:54:18,554.554 INFO    ] Launching Daemon at Tue Aug 25 00:54:18 IST 2026
[2026-08-25 00:54:18,565.565 INFO    ] ================================================
[2026-08-25 00:54:19,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:54:19
[2026-08-25 00:54:19,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:54:20,010.010 INFO    ] Initializing speech engine...
[2026-08-25 00:54:20,030.030 INFO    ] 2026-08-25 00:54:20
[2026-08-25 00:54:20,285.285 INFO    ] 2026-08-25 00:54:20
[2026-08-25 00:54:20,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:54:20,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:54:20,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:54:20,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:54:20,751.751 INFO    ] time= 25/08/2026 00:54:20
[2026-08-25 00:54:20,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:54:20,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:54:20,991.991 INFO    ] No existing commands found in stream
[2026-08-25 00:54:26,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:54:26,010.010 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 00:54:27,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:54:27,528.528 INFO    ] Checking for system updates...
[2026-08-25 00:54:27,565.565 INFO    ] 200
[2026-08-25 00:54:27,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:27,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:27,631.631 INFO    ] No update needed
[2026-08-25 00:54:27,634.634 INFO    ] Checking for camera pi updates...
[2026-08-25 00:54:27,668.668 INFO    ] 200
[2026-08-25 00:54:27,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:27,712.712 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:54:27,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:27,760.760 INFO    ] No camera update needed
[2026-08-25 00:54:27,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:54:27,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:54:27,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:54:27,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:54:29,817.817 INFO    ] ================================================
[2026-08-25 00:54:29,832.832 INFO    ] Launching Daemon at Tue Aug 25 00:54:29 IST 2026
[2026-08-25 00:54:29,843.843 INFO    ] ================================================
[2026-08-25 00:54:30,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:54:30
[2026-08-25 00:54:31,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:54:31,362.362 INFO    ] Initializing speech engine...
[2026-08-25 00:54:31,370.370 INFO    ] 2026-08-25 00:54:31
[2026-08-25 00:54:31,630.630 INFO    ] 2026-08-25 00:54:31
[2026-08-25 00:54:31,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:54:31,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:54:31,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:54:32,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:54:32,212.212 INFO    ] time= 25/08/2026 00:54:32
[2026-08-25 00:54:32,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:54:32,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:54:32,436.436 INFO    ] No existing commands found in stream
[2026-08-25 00:54:37,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:54:37,465.465 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 00:54:40,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:54:40,670.670 INFO    ] Checking for system updates...
[2026-08-25 00:54:40,706.706 INFO    ] 200
[2026-08-25 00:54:40,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:40,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:40,773.773 INFO    ] No update needed
[2026-08-25 00:54:40,776.776 INFO    ] Checking for camera pi updates...
[2026-08-25 00:54:40,815.815 INFO    ] 200
[2026-08-25 00:54:40,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:40,859.859 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:54:40,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:40,915.915 INFO    ] No camera update needed
[2026-08-25 00:54:40,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:54:40,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:54:40,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:54:40,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:54:42,973.973 INFO    ] ================================================
[2026-08-25 00:54:42,988.988 INFO    ] Launching Daemon at Tue Aug 25 00:54:42 IST 2026
[2026-08-25 00:54:43,999.999 INFO    ] ================================================
[2026-08-25 00:54:43,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:54:43
[2026-08-25 00:54:44,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:54:44,554.554 INFO    ] Initializing speech engine...
[2026-08-25 00:54:44,577.577 INFO    ] 2026-08-25 00:54:44
[2026-08-25 00:54:44,834.834 INFO    ] 2026-08-25 00:54:44
[2026-08-25 00:54:44,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:54:45,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:54:45,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:54:45,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:54:45,211.211 INFO    ] time= 25/08/2026 00:54:45
[2026-08-25 00:54:45,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:54:45,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:54:45,411.411 INFO    ] No existing commands found in stream
[2026-08-25 00:54:50,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:54:50,424.424 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 00:54:52,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:54:52,611.611 INFO    ] Checking for system updates...
[2026-08-25 00:54:52,646.646 INFO    ] 200
[2026-08-25 00:54:52,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:52,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:52,710.710 INFO    ] No update needed
[2026-08-25 00:54:52,712.712 INFO    ] Checking for camera pi updates...
[2026-08-25 00:54:52,745.745 INFO    ] 200
[2026-08-25 00:54:52,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:54:52,793.793 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:54:52,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:54:52,836.836 INFO    ] No camera update needed
[2026-08-25 00:54:52,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:54:52,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:54:52,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:54:52,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:54:54,890.890 INFO    ] ================================================
[2026-08-25 00:54:54,905.905 INFO    ] Launching Daemon at Tue Aug 25 00:54:54 IST 2026
[2026-08-25 00:54:54,915.915 INFO    ] ================================================
[2026-08-25 00:54:55,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:54:55
[2026-08-25 00:54:56,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:54:56,559.559 INFO    ] Initializing speech engine...
[2026-08-25 00:54:56,571.571 INFO    ] 2026-08-25 00:54:56
[2026-08-25 00:54:56,854.854 INFO    ] 2026-08-25 00:54:56
[2026-08-25 00:54:56,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:54:57,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:54:57,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:54:57,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:54:57,403.403 INFO    ] time= 25/08/2026 00:54:57
[2026-08-25 00:54:57,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:54:57,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:54:57,564.564 INFO    ] No existing commands found in stream
[2026-08-25 00:55:02,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:55:02,599.599 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 00:55:04,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:55:04,391.391 INFO    ] Checking for system updates...
[2026-08-25 00:55:04,426.426 INFO    ] 200
[2026-08-25 00:55:04,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:04,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:04,491.491 INFO    ] No update needed
[2026-08-25 00:55:04,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 00:55:04,527.527 INFO    ] 200
[2026-08-25 00:55:04,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:04,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:55:04,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:04,625.625 INFO    ] No camera update needed
[2026-08-25 00:55:04,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:55:04,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:55:04,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:55:04,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:55:06,685.685 INFO    ] ================================================
[2026-08-25 00:55:06,701.701 INFO    ] Launching Daemon at Tue Aug 25 00:55:06 IST 2026
[2026-08-25 00:55:06,711.711 INFO    ] ================================================
[2026-08-25 00:55:07,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:55:07
[2026-08-25 00:55:07,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:55:08,160.160 INFO    ] Initializing speech engine...
[2026-08-25 00:55:08,185.185 INFO    ] 2026-08-25 00:55:08
[2026-08-25 00:55:08,462.462 INFO    ] 2026-08-25 00:55:08
[2026-08-25 00:55:08,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:55:08,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:55:08,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:55:08,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:55:08,846.846 INFO    ] time= 25/08/2026 00:55:08
[2026-08-25 00:55:08,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:55:08,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:55:08,973.973 INFO    ] No existing commands found in stream
[2026-08-25 00:55:13,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:55:13,988.988 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 00:55:16,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:55:16,839.839 INFO    ] Checking for system updates...
[2026-08-25 00:55:16,874.874 INFO    ] 200
[2026-08-25 00:55:16,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:16,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:16,932.932 INFO    ] No update needed
[2026-08-25 00:55:16,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 00:55:16,968.968 INFO    ] 200
[2026-08-25 00:55:16,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:17,016.016 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:55:17,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:17,162.162 INFO    ] No camera update needed
[2026-08-25 00:55:17,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:55:17,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:55:17,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:55:17,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:55:19,218.218 INFO    ] ================================================
[2026-08-25 00:55:19,233.233 INFO    ] Launching Daemon at Tue Aug 25 00:55:19 IST 2026
[2026-08-25 00:55:19,244.244 INFO    ] ================================================
[2026-08-25 00:55:19,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:55:19
[2026-08-25 00:55:20,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:55:20,653.653 INFO    ] Initializing speech engine...
[2026-08-25 00:55:20,659.659 INFO    ] 2026-08-25 00:55:20
[2026-08-25 00:55:20,961.961 INFO    ] 2026-08-25 00:55:20
[2026-08-25 00:55:20,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:55:21,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:55:21,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:55:21,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:55:21,320.320 INFO    ] time= 25/08/2026 00:55:21
[2026-08-25 00:55:21,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:55:21,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:55:21,472.472 INFO    ] No existing commands found in stream
[2026-08-25 00:55:26,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:55:26,486.486 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 00:55:30,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:55:30,452.452 INFO    ] Checking for system updates...
[2026-08-25 00:55:30,488.488 INFO    ] 200
[2026-08-25 00:55:30,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:30,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:30,546.546 INFO    ] No update needed
[2026-08-25 00:55:30,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 00:55:30,587.587 INFO    ] 200
[2026-08-25 00:55:30,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:30,633.633 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:55:30,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:30,679.679 INFO    ] No camera update needed
[2026-08-25 00:55:30,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:55:30,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:55:30,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:55:30,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:55:32,745.745 INFO    ] ================================================
[2026-08-25 00:55:32,765.765 INFO    ] Launching Daemon at Tue Aug 25 00:55:32 IST 2026
[2026-08-25 00:55:32,777.777 INFO    ] ================================================
[2026-08-25 00:55:33,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:55:33
[2026-08-25 00:55:33,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:55:34,195.195 INFO    ] Initializing speech engine...
[2026-08-25 00:55:34,204.204 INFO    ] 2026-08-25 00:55:34
[2026-08-25 00:55:34,453.453 INFO    ] 2026-08-25 00:55:34
[2026-08-25 00:55:34,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:55:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:55:34,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:55:34,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:55:34,826.826 INFO    ] time= 25/08/2026 00:55:34
[2026-08-25 00:55:34,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:55:34,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:55:34,998.998 INFO    ] No existing commands found in stream
[2026-08-25 00:55:40,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:55:40,026.026 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 00:55:40,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:55:40,741.741 INFO    ] Checking for system updates...
[2026-08-25 00:55:40,776.776 INFO    ] 200
[2026-08-25 00:55:40,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:40,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:55:40,833.833 INFO    ] No update needed
[2026-08-25 00:55:40,835.835 INFO    ] Checking for camera pi updates...
[2026-08-25 00:55:40,872.872 INFO    ] 200
[2026-08-25 00:55:40,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:40,914.914 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:55:40,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:55:40,970.970 INFO    ] No camera update needed
[2026-08-25 00:55:40,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:55:40,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:55:40,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:55:40,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:55:43,027.027 INFO    ] ================================================
[2026-08-25 00:55:43,042.042 INFO    ] Launching Daemon at Tue Aug 25 00:55:43 IST 2026
[2026-08-25 00:55:43,052.052 INFO    ] ================================================
[2026-08-25 00:55:43,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:55:43
[2026-08-25 00:55:44,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:55:44,699.699 INFO    ] Initializing speech engine...
[2026-08-25 00:55:44,713.713 INFO    ] 2026-08-25 00:55:44
[2026-08-25 00:55:45,028.028 INFO    ] 2026-08-25 00:55:44
[2026-08-25 00:55:45,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:55:45,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:55:45,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:55:45,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:55:45,546.546 INFO    ] time= 25/08/2026 00:55:45
[2026-08-25 00:55:45,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:55:45,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:55:45,730.730 INFO    ] No existing commands found in stream
[2026-08-25 00:55:50,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:55:50,760.760 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 00:55:52,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:55:52,391.391 INFO    ] Checking for system updates...
[2026-08-25 00:55:52,483.483 INFO    ] 200
[2026-08-25 00:55:52,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:52,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:52,576.576 INFO    ] No update needed
[2026-08-25 00:55:52,579.579 INFO    ] Checking for camera pi updates...
[2026-08-25 00:55:52,621.621 INFO    ] 200
[2026-08-25 00:55:52,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:55:52,668.668 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:55:52,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:55:52,715.715 INFO    ] No camera update needed
[2026-08-25 00:55:52,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:55:52,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:55:52,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:55:52,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:55:54,770.770 INFO    ] ================================================
[2026-08-25 00:55:54,785.785 INFO    ] Launching Daemon at Tue Aug 25 00:55:54 IST 2026
[2026-08-25 00:55:54,797.797 INFO    ] ================================================
[2026-08-25 00:55:55,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:55:55
[2026-08-25 00:55:55,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:55:56,260.260 INFO    ] Initializing speech engine...
[2026-08-25 00:55:56,284.284 INFO    ] 2026-08-25 00:55:56
[2026-08-25 00:55:56,565.565 INFO    ] 2026-08-25 00:55:56
[2026-08-25 00:55:56,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:55:56,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:55:56,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:55:56,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:55:56,945.945 INFO    ] time= 25/08/2026 00:55:56
[2026-08-25 00:55:56,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:55:56,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:55:57,131.131 INFO    ] No existing commands found in stream
[2026-08-25 00:56:02,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:56:02,166.166 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 00:56:04,474.474 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:56:04,476.476 INFO    ] Checking for system updates...
[2026-08-25 00:56:04,512.512 INFO    ] 200
[2026-08-25 00:56:04,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:04,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:56:04,570.570 INFO    ] No update needed
[2026-08-25 00:56:04,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 00:56:04,610.610 INFO    ] 200
[2026-08-25 00:56:04,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:04,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:56:04,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:56:04,708.708 INFO    ] No camera update needed
[2026-08-25 00:56:04,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:56:04,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:56:04,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:56:04,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:56:06,763.763 INFO    ] ================================================
[2026-08-25 00:56:06,778.778 INFO    ] Launching Daemon at Tue Aug 25 00:56:06 IST 2026
[2026-08-25 00:56:06,788.788 INFO    ] ================================================
[2026-08-25 00:56:07,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:56:07
[2026-08-25 00:56:07,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:56:08,211.211 INFO    ] Initializing speech engine...
[2026-08-25 00:56:08,218.218 INFO    ] 2026-08-25 00:56:08
[2026-08-25 00:56:08,480.480 INFO    ] 2026-08-25 00:56:08
[2026-08-25 00:56:08,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:56:08,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:56:08,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:56:08,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:56:08,946.946 INFO    ] time= 25/08/2026 00:56:08
[2026-08-25 00:56:09,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:56:09,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:56:09,116.116 INFO    ] No existing commands found in stream
[2026-08-25 00:56:14,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:56:14,156.156 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 00:56:18,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 00:56:18,293.293 INFO    ] Checking for system updates...
[2026-08-25 00:56:18,329.329 INFO    ] 200
[2026-08-25 00:56:18,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:18,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:56:18,385.385 INFO    ] No update needed
[2026-08-25 00:56:18,388.388 INFO    ] Checking for camera pi updates...
[2026-08-25 00:56:18,421.421 INFO    ] 200
[2026-08-25 00:56:18,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:18,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:56:18,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:56:18,519.519 INFO    ] No camera update needed
[2026-08-25 00:56:18,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:56:18,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:56:18,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:56:18,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:56:20,574.574 INFO    ] ================================================
[2026-08-25 00:56:20,589.589 INFO    ] Launching Daemon at Tue Aug 25 00:56:20 IST 2026
[2026-08-25 00:56:20,600.600 INFO    ] ================================================
[2026-08-25 00:56:21,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:56:21
[2026-08-25 00:56:21,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:56:22,098.098 INFO    ] Initializing speech engine...
[2026-08-25 00:56:22,107.107 INFO    ] 2026-08-25 00:56:22
[2026-08-25 00:56:22,366.366 INFO    ] 2026-08-25 00:56:22
[2026-08-25 00:56:22,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:56:22,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:56:22,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:56:22,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:56:22,830.830 INFO    ] time= 25/08/2026 00:56:22
[2026-08-25 00:56:22,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:56:22,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:56:23,060.060 INFO    ] No existing commands found in stream
[2026-08-25 00:56:28,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:56:28,079.079 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 00:56:28,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:56:28,555.555 INFO    ] Checking for system updates...
[2026-08-25 00:56:28,591.591 INFO    ] 200
[2026-08-25 00:56:28,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:28,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:56:28,648.648 INFO    ] No update needed
[2026-08-25 00:56:28,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 00:56:28,685.685 INFO    ] 200
[2026-08-25 00:56:28,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:28,726.726 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:56:28,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:56:28,778.778 INFO    ] No camera update needed
[2026-08-25 00:56:28,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:56:28,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:56:28,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:56:28,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:56:30,834.834 INFO    ] ================================================
[2026-08-25 00:56:30,848.848 INFO    ] Launching Daemon at Tue Aug 25 00:56:30 IST 2026
[2026-08-25 00:56:30,859.859 INFO    ] ================================================
[2026-08-25 00:56:31,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:56:31
[2026-08-25 00:56:32,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:56:32,314.314 INFO    ] Initializing speech engine...
[2026-08-25 00:56:32,336.336 INFO    ] 2026-08-25 00:56:32
[2026-08-25 00:56:32,628.628 INFO    ] 2026-08-25 00:56:32
[2026-08-25 00:56:32,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:56:32,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:56:32,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:56:33,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:56:33,053.053 INFO    ] time= 25/08/2026 00:56:33
[2026-08-25 00:56:33,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:56:33,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:56:33,250.250 INFO    ] No existing commands found in stream
[2026-08-25 00:56:38,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:56:38,262.262 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 00:56:42,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:56:42,463.463 INFO    ] Checking for system updates...
[2026-08-25 00:56:42,497.497 INFO    ] 200
[2026-08-25 00:56:42,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:42,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:56:42,553.553 INFO    ] No update needed
[2026-08-25 00:56:42,555.555 INFO    ] Checking for camera pi updates...
[2026-08-25 00:56:42,589.589 INFO    ] 200
[2026-08-25 00:56:42,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:42,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:56:42,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:56:42,688.688 INFO    ] No camera update needed
[2026-08-25 00:56:42,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:56:42,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:56:42,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:56:42,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:56:44,743.743 INFO    ] ================================================
[2026-08-25 00:56:44,758.758 INFO    ] Launching Daemon at Tue Aug 25 00:56:44 IST 2026
[2026-08-25 00:56:44,769.769 INFO    ] ================================================
[2026-08-25 00:56:45,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:56:45
[2026-08-25 00:56:45,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:56:46,219.219 INFO    ] Initializing speech engine...
[2026-08-25 00:56:46,230.230 INFO    ] 2026-08-25 00:56:46
[2026-08-25 00:56:46,488.488 INFO    ] 2026-08-25 00:56:46
[2026-08-25 00:56:46,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:56:46,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:56:46,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:56:46,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:56:47,026.026 INFO    ] time= 25/08/2026 00:56:46
[2026-08-25 00:56:47,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:56:47,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:56:47,180.180 INFO    ] No existing commands found in stream
[2026-08-25 00:56:52,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:56:52,197.197 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 00:56:55,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:56:55,747.747 INFO    ] Checking for system updates...
[2026-08-25 00:56:55,783.783 INFO    ] 200
[2026-08-25 00:56:55,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:55,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:56:55,842.842 INFO    ] No update needed
[2026-08-25 00:56:55,844.844 INFO    ] Checking for camera pi updates...
[2026-08-25 00:56:55,881.881 INFO    ] 200
[2026-08-25 00:56:55,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:56:55,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:56:55,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:56:55,973.973 INFO    ] No camera update needed
[2026-08-25 00:56:55,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:56:55,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:56:55,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:56:55,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:56:58,027.027 INFO    ] ================================================
[2026-08-25 00:56:58,043.043 INFO    ] Launching Daemon at Tue Aug 25 00:56:58 IST 2026
[2026-08-25 00:56:58,054.054 INFO    ] ================================================
[2026-08-25 00:56:58,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:56:58
[2026-08-25 00:56:59,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:56:59,669.669 INFO    ] Initializing speech engine...
[2026-08-25 00:56:59,679.679 INFO    ] 2026-08-25 00:56:59
[2026-08-25 00:56:59,981.981 INFO    ] 2026-08-25 00:56:59
[2026-08-25 00:57:00,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:57:00,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:57:00,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:57:00,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:57:00,487.487 INFO    ] time= 25/08/2026 00:57:00
[2026-08-25 00:57:00,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:57:00,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:57:00,670.670 INFO    ] No existing commands found in stream
[2026-08-25 00:57:05,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:57:05,699.699 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 00:57:07,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:57:07,405.405 INFO    ] Checking for system updates...
[2026-08-25 00:57:07,441.441 INFO    ] 200
[2026-08-25 00:57:07,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:07,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:07,502.502 INFO    ] No update needed
[2026-08-25 00:57:07,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 00:57:07,541.541 INFO    ] 200
[2026-08-25 00:57:07,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:07,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:57:07,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:07,629.629 INFO    ] No camera update needed
[2026-08-25 00:57:07,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:57:07,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:57:07,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:57:07,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:57:09,684.684 INFO    ] ================================================
[2026-08-25 00:57:09,699.699 INFO    ] Launching Daemon at Tue Aug 25 00:57:09 IST 2026
[2026-08-25 00:57:09,710.710 INFO    ] ================================================
[2026-08-25 00:57:10,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:57:10
[2026-08-25 00:57:10,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:57:11,159.159 INFO    ] Initializing speech engine...
[2026-08-25 00:57:11,164.164 INFO    ] 2026-08-25 00:57:11
[2026-08-25 00:57:11,412.412 INFO    ] 2026-08-25 00:57:11
[2026-08-25 00:57:11,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:57:11,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:57:11,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:57:11,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:57:11,881.881 INFO    ] time= 25/08/2026 00:57:11
[2026-08-25 00:57:11,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:57:11,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:57:12,111.111 INFO    ] No existing commands found in stream
[2026-08-25 00:57:17,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:57:17,135.135 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 00:57:18,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 00:57:18,502.502 INFO    ] Checking for system updates...
[2026-08-25 00:57:18,537.537 INFO    ] 200
[2026-08-25 00:57:18,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:18,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:18,593.593 INFO    ] No update needed
[2026-08-25 00:57:18,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 00:57:18,632.632 INFO    ] 200
[2026-08-25 00:57:18,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:18,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:57:18,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:18,822.822 INFO    ] No camera update needed
[2026-08-25 00:57:18,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:57:18,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:57:18,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:57:18,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:57:20,879.879 INFO    ] ================================================
[2026-08-25 00:57:20,893.893 INFO    ] Launching Daemon at Tue Aug 25 00:57:20 IST 2026
[2026-08-25 00:57:20,905.905 INFO    ] ================================================
[2026-08-25 00:57:21,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:57:21
[2026-08-25 00:57:22,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:57:22,357.357 INFO    ] Initializing speech engine...
[2026-08-25 00:57:22,368.368 INFO    ] 2026-08-25 00:57:22
[2026-08-25 00:57:22,615.615 INFO    ] 2026-08-25 00:57:22
[2026-08-25 00:57:22,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:57:22,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:57:22,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:57:23,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:57:23,086.086 INFO    ] time= 25/08/2026 00:57:23
[2026-08-25 00:57:23,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:57:23,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:57:23,309.309 INFO    ] No existing commands found in stream
[2026-08-25 00:57:28,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:57:28,336.336 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 00:57:31,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:57:31,795.795 INFO    ] Checking for system updates...
[2026-08-25 00:57:31,840.840 INFO    ] 200
[2026-08-25 00:57:31,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:31,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:57:31,901.901 INFO    ] No update needed
[2026-08-25 00:57:31,904.904 INFO    ] Checking for camera pi updates...
[2026-08-25 00:57:31,938.938 INFO    ] 200
[2026-08-25 00:57:31,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:31,988.988 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:57:32,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:57:32,058.058 INFO    ] No camera update needed
[2026-08-25 00:57:32,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:57:32,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:57:32,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:57:32,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:57:34,117.117 INFO    ] ================================================
[2026-08-25 00:57:34,133.133 INFO    ] Launching Daemon at Tue Aug 25 00:57:34 IST 2026
[2026-08-25 00:57:34,144.144 INFO    ] ================================================
[2026-08-25 00:57:34,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:57:34
[2026-08-25 00:57:35,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:57:35,594.594 INFO    ] Initializing speech engine...
[2026-08-25 00:57:35,603.603 INFO    ] 2026-08-25 00:57:35
[2026-08-25 00:57:35,858.858 INFO    ] 2026-08-25 00:57:35
[2026-08-25 00:57:35,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:57:36,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:57:36,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:57:36,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:57:36,327.327 INFO    ] time= 25/08/2026 00:57:36
[2026-08-25 00:57:36,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:57:36,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:57:36,547.547 INFO    ] No existing commands found in stream
[2026-08-25 00:57:41,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:57:41,577.577 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 00:57:44,941.941 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:57:44,944.944 INFO    ] Checking for system updates...
[2026-08-25 00:57:44,982.982 INFO    ] 200
[2026-08-25 00:57:44,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:45,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:45,039.039 INFO    ] No update needed
[2026-08-25 00:57:45,041.041 INFO    ] Checking for camera pi updates...
[2026-08-25 00:57:45,074.074 INFO    ] 200
[2026-08-25 00:57:45,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:45,122.122 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:57:45,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:45,169.169 INFO    ] No camera update needed
[2026-08-25 00:57:45,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:57:45,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:57:45,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:57:45,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:57:47,225.225 INFO    ] ================================================
[2026-08-25 00:57:47,241.241 INFO    ] Launching Daemon at Tue Aug 25 00:57:47 IST 2026
[2026-08-25 00:57:47,252.252 INFO    ] ================================================
[2026-08-25 00:57:47,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:57:47
[2026-08-25 00:57:48,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:57:48,709.709 INFO    ] Initializing speech engine...
[2026-08-25 00:57:48,715.715 INFO    ] 2026-08-25 00:57:48
[2026-08-25 00:57:48,980.980 INFO    ] 2026-08-25 00:57:48
[2026-08-25 00:57:49,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:57:49,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:57:49,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:57:49,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:57:49,392.392 INFO    ] time= 25/08/2026 00:57:49
[2026-08-25 00:57:49,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:57:49,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:57:49,481.481 INFO    ] No existing commands found in stream
[2026-08-25 00:57:54,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:57:54,514.514 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 00:57:55,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:57:55,363.363 INFO    ] Checking for system updates...
[2026-08-25 00:57:55,398.398 INFO    ] 200
[2026-08-25 00:57:55,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:55,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:55,458.458 INFO    ] No update needed
[2026-08-25 00:57:55,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 00:57:55,493.493 INFO    ] 200
[2026-08-25 00:57:55,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:57:55,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:57:55,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:57:55,601.601 INFO    ] No camera update needed
[2026-08-25 00:57:55,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:57:55,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:57:55,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:57:55,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:57:57,655.655 INFO    ] ================================================
[2026-08-25 00:57:57,671.671 INFO    ] Launching Daemon at Tue Aug 25 00:57:57 IST 2026
[2026-08-25 00:57:57,685.685 INFO    ] ================================================
[2026-08-25 00:57:58,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:57:58
[2026-08-25 00:57:58,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:57:59,090.090 INFO    ] Initializing speech engine...
[2026-08-25 00:57:59,096.096 INFO    ] 2026-08-25 00:57:59
[2026-08-25 00:57:59,388.388 INFO    ] 2026-08-25 00:57:59
[2026-08-25 00:57:59,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:57:59,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:57:59,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:57:59,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:57:59,764.764 INFO    ] time= 25/08/2026 00:57:59
[2026-08-25 00:57:59,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:57:59,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:57:59,885.885 INFO    ] No existing commands found in stream
[2026-08-25 00:58:04,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:58:04,901.901 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 00:58:07,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:58:07,499.499 INFO    ] Checking for system updates...
[2026-08-25 00:58:07,535.535 INFO    ] 200
[2026-08-25 00:58:07,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:07,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:07,592.592 INFO    ] No update needed
[2026-08-25 00:58:07,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 00:58:07,631.631 INFO    ] 200
[2026-08-25 00:58:07,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:07,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:58:07,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:07,719.719 INFO    ] No camera update needed
[2026-08-25 00:58:07,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:58:07,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:58:07,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:58:07,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:58:09,775.775 INFO    ] ================================================
[2026-08-25 00:58:09,789.789 INFO    ] Launching Daemon at Tue Aug 25 00:58:09 IST 2026
[2026-08-25 00:58:09,801.801 INFO    ] ================================================
[2026-08-25 00:58:10,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:58:10
[2026-08-25 00:58:11,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:58:11,405.405 INFO    ] Initializing speech engine...
[2026-08-25 00:58:11,418.418 INFO    ] 2026-08-25 00:58:11
[2026-08-25 00:58:11,696.696 INFO    ] 2026-08-25 00:58:11
[2026-08-25 00:58:11,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:58:11,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:58:11,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:58:12,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:58:12,167.167 INFO    ] time= 25/08/2026 00:58:12
[2026-08-25 00:58:12,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:58:12,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:58:12,377.377 INFO    ] No existing commands found in stream
[2026-08-25 00:58:17,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:58:17,401.401 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 00:58:19,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:58:19,315.315 INFO    ] Checking for system updates...
[2026-08-25 00:58:19,351.351 INFO    ] 200
[2026-08-25 00:58:19,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:19,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:19,410.410 INFO    ] No update needed
[2026-08-25 00:58:19,413.413 INFO    ] Checking for camera pi updates...
[2026-08-25 00:58:19,450.450 INFO    ] 200
[2026-08-25 00:58:19,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:19,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:58:19,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:19,552.552 INFO    ] No camera update needed
[2026-08-25 00:58:19,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:58:19,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:58:19,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:58:19,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:58:21,609.609 INFO    ] ================================================
[2026-08-25 00:58:21,625.625 INFO    ] Launching Daemon at Tue Aug 25 00:58:21 IST 2026
[2026-08-25 00:58:21,636.636 INFO    ] ================================================
[2026-08-25 00:58:22,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:58:22
[2026-08-25 00:58:22,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:58:23,050.050 INFO    ] Initializing speech engine...
[2026-08-25 00:58:23,069.069 INFO    ] 2026-08-25 00:58:23
[2026-08-25 00:58:23,314.314 INFO    ] 2026-08-25 00:58:23
[2026-08-25 00:58:23,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:58:23,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:58:23,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:58:23,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:58:23,787.787 INFO    ] time= 25/08/2026 00:58:23
[2026-08-25 00:58:23,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:58:23,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:58:23,995.995 INFO    ] No existing commands found in stream
[2026-08-25 00:58:29,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:58:29,029.029 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 00:58:29,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:58:29,573.573 INFO    ] Checking for system updates...
[2026-08-25 00:58:29,608.608 INFO    ] 200
[2026-08-25 00:58:29,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:29,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:29,665.665 INFO    ] No update needed
[2026-08-25 00:58:29,667.667 INFO    ] Checking for camera pi updates...
[2026-08-25 00:58:29,704.704 INFO    ] 200
[2026-08-25 00:58:29,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:29,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:58:29,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:29,798.798 INFO    ] No camera update needed
[2026-08-25 00:58:29,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:58:29,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:58:29,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:58:29,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:58:31,855.855 INFO    ] ================================================
[2026-08-25 00:58:31,872.872 INFO    ] Launching Daemon at Tue Aug 25 00:58:31 IST 2026
[2026-08-25 00:58:31,884.884 INFO    ] ================================================
[2026-08-25 00:58:32,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:58:32
[2026-08-25 00:58:33,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:58:33,475.475 INFO    ] Initializing speech engine...
[2026-08-25 00:58:33,483.483 INFO    ] 2026-08-25 00:58:33
[2026-08-25 00:58:33,731.731 INFO    ] 2026-08-25 00:58:33
[2026-08-25 00:58:33,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:58:34,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:58:34,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:58:34,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:58:34,210.210 INFO    ] time= 25/08/2026 00:58:34
[2026-08-25 00:58:34,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:58:34,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:58:34,430.430 INFO    ] No existing commands found in stream
[2026-08-25 00:58:39,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:58:39,457.457 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 00:58:41,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:58:41,500.500 INFO    ] Checking for system updates...
[2026-08-25 00:58:41,539.539 INFO    ] 200
[2026-08-25 00:58:41,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:41,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:58:41,598.598 INFO    ] No update needed
[2026-08-25 00:58:41,601.601 INFO    ] Checking for camera pi updates...
[2026-08-25 00:58:41,636.636 INFO    ] 200
[2026-08-25 00:58:41,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:41,683.683 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:58:41,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:58:41,732.732 INFO    ] No camera update needed
[2026-08-25 00:58:41,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:58:41,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:58:41,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:58:41,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:58:43,786.786 INFO    ] ================================================
[2026-08-25 00:58:43,802.802 INFO    ] Launching Daemon at Tue Aug 25 00:58:43 IST 2026
[2026-08-25 00:58:43,813.813 INFO    ] ================================================
[2026-08-25 00:58:44,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:58:44
[2026-08-25 00:58:45,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:58:45,372.372 INFO    ] Initializing speech engine...
[2026-08-25 00:58:45,397.397 INFO    ] 2026-08-25 00:58:45
[2026-08-25 00:58:45,672.672 INFO    ] 2026-08-25 00:58:45
[2026-08-25 00:58:45,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:58:45,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:58:45,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:58:46,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:58:46,172.172 INFO    ] time= 25/08/2026 00:58:46
[2026-08-25 00:58:46,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:58:46,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:58:46,381.381 INFO    ] No existing commands found in stream
[2026-08-25 00:58:51,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:58:51,400.400 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 00:58:52,372.372 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:58:52,375.375 INFO    ] Checking for system updates...
[2026-08-25 00:58:52,411.411 INFO    ] 200
[2026-08-25 00:58:52,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:52,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:52,468.468 INFO    ] No update needed
[2026-08-25 00:58:52,471.471 INFO    ] Checking for camera pi updates...
[2026-08-25 00:58:52,503.503 INFO    ] 200
[2026-08-25 00:58:52,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:58:52,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:58:52,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:58:52,598.598 INFO    ] No camera update needed
[2026-08-25 00:58:52,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:58:52,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:58:52,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:58:52,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:58:54,654.654 INFO    ] ================================================
[2026-08-25 00:58:54,670.670 INFO    ] Launching Daemon at Tue Aug 25 00:58:54 IST 2026
[2026-08-25 00:58:54,681.681 INFO    ] ================================================
[2026-08-25 00:58:55,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:58:55
[2026-08-25 00:58:55,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:58:56,264.264 INFO    ] Initializing speech engine...
[2026-08-25 00:58:56,272.272 INFO    ] 2026-08-25 00:58:56
[2026-08-25 00:58:56,528.528 INFO    ] 2026-08-25 00:58:56
[2026-08-25 00:58:56,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:58:56,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:58:56,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:58:56,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:58:56,988.988 INFO    ] time= 25/08/2026 00:58:56
[2026-08-25 00:58:57,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:58:57,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:58:57,197.197 INFO    ] No existing commands found in stream
[2026-08-25 00:59:02,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:59:02,231.231 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 00:59:03,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:59:03,903.903 INFO    ] Checking for system updates...
[2026-08-25 00:59:03,938.938 INFO    ] 200
[2026-08-25 00:59:03,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:03,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:59:03,998.998 INFO    ] No update needed
[2026-08-25 00:59:04,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 00:59:04,036.036 INFO    ] 200
[2026-08-25 00:59:04,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:04,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:59:04,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:59:04,155.155 INFO    ] No camera update needed
[2026-08-25 00:59:04,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:59:04,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:59:04,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:59:04,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:59:06,217.217 INFO    ] ================================================
[2026-08-25 00:59:06,239.239 INFO    ] Launching Daemon at Tue Aug 25 00:59:06 IST 2026
[2026-08-25 00:59:06,250.250 INFO    ] ================================================
[2026-08-25 00:59:06,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:59:06
[2026-08-25 00:59:07,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:59:07,666.666 INFO    ] Initializing speech engine...
[2026-08-25 00:59:07,675.675 INFO    ] 2026-08-25 00:59:07
[2026-08-25 00:59:07,920.920 INFO    ] 2026-08-25 00:59:07
[2026-08-25 00:59:07,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:59:08,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:59:08,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:59:08,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:59:08,287.287 INFO    ] time= 25/08/2026 00:59:08
[2026-08-25 00:59:08,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:59:08,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:59:08,482.482 INFO    ] No existing commands found in stream
[2026-08-25 00:59:13,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:59:13,496.496 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 00:59:14,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 00:59:14,063.063 INFO    ] Checking for system updates...
[2026-08-25 00:59:14,104.104 INFO    ] 200
[2026-08-25 00:59:14,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:14,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:59:14,161.161 INFO    ] No update needed
[2026-08-25 00:59:14,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 00:59:14,197.197 INFO    ] 200
[2026-08-25 00:59:14,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:14,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:59:14,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:59:14,290.290 INFO    ] No camera update needed
[2026-08-25 00:59:14,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:59:14,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:59:14,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:59:14,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:59:16,347.347 INFO    ] ================================================
[2026-08-25 00:59:16,362.362 INFO    ] Launching Daemon at Tue Aug 25 00:59:16 IST 2026
[2026-08-25 00:59:16,373.373 INFO    ] ================================================
[2026-08-25 00:59:16,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:59:16
[2026-08-25 00:59:17,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:59:17,788.788 INFO    ] Initializing speech engine...
[2026-08-25 00:59:17,796.796 INFO    ] 2026-08-25 00:59:17
[2026-08-25 00:59:18,042.042 INFO    ] 2026-08-25 00:59:18
[2026-08-25 00:59:18,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:59:18,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:59:18,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:59:18,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:59:18,409.409 INFO    ] time= 25/08/2026 00:59:18
[2026-08-25 00:59:18,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:59:18,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:59:18,595.595 INFO    ] No existing commands found in stream
[2026-08-25 00:59:23,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:59:23,617.617 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 00:59:28,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 00:59:28,028.028 INFO    ] Checking for system updates...
[2026-08-25 00:59:28,064.064 INFO    ] 200
[2026-08-25 00:59:28,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:28,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:59:28,123.123 INFO    ] No update needed
[2026-08-25 00:59:28,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 00:59:28,159.159 INFO    ] 200
[2026-08-25 00:59:28,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:28,206.206 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:59:28,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:59:28,353.353 INFO    ] No camera update needed
[2026-08-25 00:59:28,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:59:28,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:59:28,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:59:28,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:59:30,407.407 INFO    ] ================================================
[2026-08-25 00:59:30,423.423 INFO    ] Launching Daemon at Tue Aug 25 00:59:30 IST 2026
[2026-08-25 00:59:30,433.433 INFO    ] ================================================
[2026-08-25 00:59:31,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:59:31
[2026-08-25 00:59:31,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:59:31,923.923 INFO    ] Initializing speech engine...
[2026-08-25 00:59:31,932.932 INFO    ] 2026-08-25 00:59:31
[2026-08-25 00:59:32,225.225 INFO    ] 2026-08-25 00:59:32
[2026-08-25 00:59:32,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:59:32,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:59:32,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:59:32,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:59:32,630.630 INFO    ] time= 25/08/2026 00:59:32
[2026-08-25 00:59:32,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:59:32,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:59:32,742.742 INFO    ] No existing commands found in stream
[2026-08-25 00:59:37,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:59:37,758.758 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 00:59:41,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 00:59:41,823.823 INFO    ] Checking for system updates...
[2026-08-25 00:59:41,864.864 INFO    ] 200
[2026-08-25 00:59:41,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:41,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:59:41,922.922 INFO    ] No update needed
[2026-08-25 00:59:41,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 00:59:41,959.959 INFO    ] 200
[2026-08-25 00:59:41,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:42,004.004 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:59:42,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 00:59:42,052.052 INFO    ] No camera update needed
[2026-08-25 00:59:42,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:59:42,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:59:42,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:59:42,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:59:44,109.109 INFO    ] ================================================
[2026-08-25 00:59:44,124.124 INFO    ] Launching Daemon at Tue Aug 25 00:59:44 IST 2026
[2026-08-25 00:59:44,135.135 INFO    ] ================================================
[2026-08-25 00:59:44,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:59:44
[2026-08-25 00:59:45,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:59:45,776.776 INFO    ] Initializing speech engine...
[2026-08-25 00:59:45,789.789 INFO    ] 2026-08-25 00:59:45
[2026-08-25 00:59:46,079.079 INFO    ] 2026-08-25 00:59:46
[2026-08-25 00:59:46,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:59:46,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:59:46,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:59:46,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:59:46,511.511 INFO    ] time= 25/08/2026 00:59:46
[2026-08-25 00:59:46,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:59:46,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:59:46,611.611 INFO    ] No existing commands found in stream
[2026-08-25 00:59:51,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 00:59:51,649.649 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 00:59:53,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 00:59:53,449.449 INFO    ] Checking for system updates...
[2026-08-25 00:59:53,490.490 INFO    ] 200
[2026-08-25 00:59:53,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:53,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:59:53,554.554 INFO    ] No update needed
[2026-08-25 00:59:53,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 00:59:53,589.589 INFO    ] 200
[2026-08-25 00:59:53,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 00:59:53,633.633 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 00:59:53,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 00:59:53,680.680 INFO    ] No camera update needed
[2026-08-25 00:59:53,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-25 00:59:53,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 00:59:53,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 00:59:53,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 00:59:55,735.735 INFO    ] ================================================
[2026-08-25 00:59:55,751.751 INFO    ] Launching Daemon at Tue Aug 25 00:59:55 IST 2026
[2026-08-25 00:59:55,762.762 INFO    ] ================================================
[2026-08-25 00:59:56,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 00:59:56
[2026-08-25 00:59:56,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 00:59:57,163.163 INFO    ] Initializing speech engine...
[2026-08-25 00:59:57,176.176 INFO    ] 2026-08-25 00:59:57
[2026-08-25 00:59:57,437.437 INFO    ] 2026-08-25 00:59:57
[2026-08-25 00:59:57,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 00:59:57,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 00:59:57,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 00:59:57,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 00:59:57,900.900 INFO    ] time= 25/08/2026 00:59:57
[2026-08-25 00:59:57,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 00:59:57,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 00:59:58,138.138 INFO    ] No existing commands found in stream
[2026-08-25 01:00:03,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:00:03,157.157 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 01:00:07,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:00:07,388.388 INFO    ] Checking for system updates...
[2026-08-25 01:00:07,425.425 INFO    ] 200
[2026-08-25 01:00:07,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:07,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:00:07,484.484 INFO    ] No update needed
[2026-08-25 01:00:07,486.486 INFO    ] Checking for camera pi updates...
[2026-08-25 01:00:07,524.524 INFO    ] 200
[2026-08-25 01:00:07,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:07,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:00:07,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:00:07,616.616 INFO    ] No camera update needed
[2026-08-25 01:00:07,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:00:07,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:00:07,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:00:07,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:00:09,671.671 INFO    ] ================================================
[2026-08-25 01:00:09,687.687 INFO    ] Launching Daemon at Tue Aug 25 01:00:09 IST 2026
[2026-08-25 01:00:09,697.697 INFO    ] ================================================
[2026-08-25 01:00:10,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:00:10
[2026-08-25 01:00:10,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:00:11,155.155 INFO    ] Initializing speech engine...
[2026-08-25 01:00:11,160.160 INFO    ] 2026-08-25 01:00:11
[2026-08-25 01:00:11,424.424 INFO    ] 2026-08-25 01:00:11
[2026-08-25 01:00:11,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:00:11,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:00:11,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:00:11,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:00:11,838.838 INFO    ] time= 25/08/2026 01:00:11
[2026-08-25 01:00:11,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:00:11,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:00:11,925.925 INFO    ] No existing commands found in stream
[2026-08-25 01:00:16,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:00:16,940.940 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 01:00:18,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:00:18,205.205 INFO    ] Checking for system updates...
[2026-08-25 01:00:18,241.241 INFO    ] 200
[2026-08-25 01:00:18,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:18,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:00:18,298.298 INFO    ] No update needed
[2026-08-25 01:00:18,301.301 INFO    ] Checking for camera pi updates...
[2026-08-25 01:00:18,339.339 INFO    ] 200
[2026-08-25 01:00:18,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:18,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:00:18,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:00:18,437.437 INFO    ] No camera update needed
[2026-08-25 01:00:18,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:00:18,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:00:18,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:00:18,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:00:20,492.492 INFO    ] ================================================
[2026-08-25 01:00:20,507.507 INFO    ] Launching Daemon at Tue Aug 25 01:00:20 IST 2026
[2026-08-25 01:00:20,518.518 INFO    ] ================================================
[2026-08-25 01:00:21,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:00:21
[2026-08-25 01:00:21,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:00:21,927.927 INFO    ] Initializing speech engine...
[2026-08-25 01:00:21,941.941 INFO    ] 2026-08-25 01:00:21
[2026-08-25 01:00:22,210.210 INFO    ] 2026-08-25 01:00:22
[2026-08-25 01:00:22,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:00:22,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:00:22,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:00:22,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:00:22,657.657 INFO    ] time= 25/08/2026 01:00:22
[2026-08-25 01:00:22,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:00:22,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:00:22,926.926 INFO    ] No existing commands found in stream
[2026-08-25 01:00:27,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:00:27,949.949 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 01:00:29,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:00:29,457.457 INFO    ] Checking for system updates...
[2026-08-25 01:00:29,493.493 INFO    ] 200
[2026-08-25 01:00:29,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:29,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:00:29,551.551 INFO    ] No update needed
[2026-08-25 01:00:29,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 01:00:29,597.597 INFO    ] 200
[2026-08-25 01:00:29,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:29,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:00:29,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:00:29,720.720 INFO    ] No camera update needed
[2026-08-25 01:00:29,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:00:29,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:00:29,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:00:29,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:00:31,787.787 INFO    ] ================================================
[2026-08-25 01:00:31,803.803 INFO    ] Launching Daemon at Tue Aug 25 01:00:31 IST 2026
[2026-08-25 01:00:31,815.815 INFO    ] ================================================
[2026-08-25 01:00:32,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:00:32
[2026-08-25 01:00:33,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:00:33,305.305 INFO    ] Initializing speech engine...
[2026-08-25 01:00:33,312.312 INFO    ] 2026-08-25 01:00:33
[2026-08-25 01:00:33,610.610 INFO    ] 2026-08-25 01:00:33
[2026-08-25 01:00:33,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:00:33,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:00:33,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:00:34,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:00:34,035.035 INFO    ] time= 25/08/2026 01:00:34
[2026-08-25 01:00:34,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:00:34,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:00:34,122.122 INFO    ] No existing commands found in stream
[2026-08-25 01:00:39,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:00:39,136.136 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 01:00:40,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:00:40,164.164 INFO    ] Checking for system updates...
[2026-08-25 01:00:40,205.205 INFO    ] 200
[2026-08-25 01:00:40,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:40,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:00:40,288.288 INFO    ] No update needed
[2026-08-25 01:00:40,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 01:00:40,335.335 INFO    ] 200
[2026-08-25 01:00:40,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:40,389.389 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:00:40,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:00:40,438.438 INFO    ] No camera update needed
[2026-08-25 01:00:40,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:00:40,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:00:40,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:00:40,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:00:42,492.492 INFO    ] ================================================
[2026-08-25 01:00:42,508.508 INFO    ] Launching Daemon at Tue Aug 25 01:00:42 IST 2026
[2026-08-25 01:00:42,518.518 INFO    ] ================================================
[2026-08-25 01:00:43,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:00:43
[2026-08-25 01:00:43,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:00:43,967.967 INFO    ] Initializing speech engine...
[2026-08-25 01:00:43,978.978 INFO    ] 2026-08-25 01:00:43
[2026-08-25 01:00:44,238.238 INFO    ] 2026-08-25 01:00:44
[2026-08-25 01:00:44,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:00:44,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:00:44,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:00:44,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:00:44,697.697 INFO    ] time= 25/08/2026 01:00:44
[2026-08-25 01:00:44,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:00:44,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:00:44,900.900 INFO    ] No existing commands found in stream
[2026-08-25 01:00:49,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:00:49,924.924 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 01:00:52,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:00:52,257.257 INFO    ] Checking for system updates...
[2026-08-25 01:00:52,296.296 INFO    ] 200
[2026-08-25 01:00:52,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:52,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:00:52,354.354 INFO    ] No update needed
[2026-08-25 01:00:52,356.356 INFO    ] Checking for camera pi updates...
[2026-08-25 01:00:52,393.393 INFO    ] 200
[2026-08-25 01:00:52,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:00:52,441.441 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:00:52,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:00:52,493.493 INFO    ] No camera update needed
[2026-08-25 01:00:52,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:00:52,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:00:52,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:00:52,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:00:54,548.548 INFO    ] ================================================
[2026-08-25 01:00:54,563.563 INFO    ] Launching Daemon at Tue Aug 25 01:00:54 IST 2026
[2026-08-25 01:00:54,574.574 INFO    ] ================================================
[2026-08-25 01:00:55,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:00:55
[2026-08-25 01:00:55,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:00:56,033.033 INFO    ] Initializing speech engine...
[2026-08-25 01:00:56,058.058 INFO    ] 2026-08-25 01:00:56
[2026-08-25 01:00:56,337.337 INFO    ] 2026-08-25 01:00:56
[2026-08-25 01:00:56,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:00:56,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:00:56,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:00:56,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:00:56,729.729 INFO    ] time= 25/08/2026 01:00:56
[2026-08-25 01:00:56,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:00:56,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:00:56,832.832 INFO    ] No existing commands found in stream
[2026-08-25 01:01:01,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:01:01,873.873 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 01:01:03,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:01:03,413.413 INFO    ] Checking for system updates...
[2026-08-25 01:01:03,450.450 INFO    ] 200
[2026-08-25 01:01:03,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:03,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:01:03,513.513 INFO    ] No update needed
[2026-08-25 01:01:03,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 01:01:03,554.554 INFO    ] 200
[2026-08-25 01:01:03,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:03,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:01:03,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:01:03,656.656 INFO    ] No camera update needed
[2026-08-25 01:01:03,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:01:03,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:01:03,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:01:03,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:01:05,710.710 INFO    ] ================================================
[2026-08-25 01:01:05,726.726 INFO    ] Launching Daemon at Tue Aug 25 01:01:05 IST 2026
[2026-08-25 01:01:05,736.736 INFO    ] ================================================
[2026-08-25 01:01:06,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:01:06
[2026-08-25 01:01:06,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:01:07,215.215 INFO    ] Initializing speech engine...
[2026-08-25 01:01:07,230.230 INFO    ] 2026-08-25 01:01:07
[2026-08-25 01:01:07,506.506 INFO    ] 2026-08-25 01:01:07
[2026-08-25 01:01:07,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:01:07,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:01:07,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:01:07,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:01:07,905.905 INFO    ] time= 25/08/2026 01:01:07
[2026-08-25 01:01:07,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:01:07,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:01:08,018.018 INFO    ] No existing commands found in stream
[2026-08-25 01:01:13,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:01:13,051.051 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 01:01:14,901.901 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:01:14,904.904 INFO    ] Checking for system updates...
[2026-08-25 01:01:14,939.939 INFO    ] 200
[2026-08-25 01:01:14,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:14,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:01:15,000.000 INFO    ] No update needed
[2026-08-25 01:01:15,002.002 INFO    ] Checking for camera pi updates...
[2026-08-25 01:01:15,039.039 INFO    ] 200
[2026-08-25 01:01:15,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:15,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:01:15,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:01:15,128.128 INFO    ] No camera update needed
[2026-08-25 01:01:15,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:01:15,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:01:15,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:01:15,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:01:17,184.184 INFO    ] ================================================
[2026-08-25 01:01:17,199.199 INFO    ] Launching Daemon at Tue Aug 25 01:01:17 IST 2026
[2026-08-25 01:01:17,210.210 INFO    ] ================================================
[2026-08-25 01:01:17,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:01:17
[2026-08-25 01:01:18,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:01:18,648.648 INFO    ] Initializing speech engine...
[2026-08-25 01:01:18,658.658 INFO    ] 2026-08-25 01:01:18
[2026-08-25 01:01:18,955.955 INFO    ] 2026-08-25 01:01:18
[2026-08-25 01:01:18,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:01:19,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:01:19,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:01:19,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:01:19,338.338 INFO    ] time= 25/08/2026 01:01:19
[2026-08-25 01:01:19,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:01:19,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:01:19,463.463 INFO    ] No existing commands found in stream
[2026-08-25 01:01:24,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:01:24,476.476 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 01:01:27,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:01:27,277.277 INFO    ] Checking for system updates...
[2026-08-25 01:01:27,313.313 INFO    ] 200
[2026-08-25 01:01:27,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:27,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:01:27,370.370 INFO    ] No update needed
[2026-08-25 01:01:27,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 01:01:27,406.406 INFO    ] 200
[2026-08-25 01:01:27,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:27,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:01:27,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:01:27,500.500 INFO    ] No camera update needed
[2026-08-25 01:01:27,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:01:27,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:01:27,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:01:27,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:01:29,556.556 INFO    ] ================================================
[2026-08-25 01:01:29,571.571 INFO    ] Launching Daemon at Tue Aug 25 01:01:29 IST 2026
[2026-08-25 01:01:29,581.581 INFO    ] ================================================
[2026-08-25 01:01:30,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:01:30
[2026-08-25 01:01:30,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:01:31,041.041 INFO    ] Initializing speech engine...
[2026-08-25 01:01:31,061.061 INFO    ] 2026-08-25 01:01:31
[2026-08-25 01:01:31,331.331 INFO    ] 2026-08-25 01:01:31
[2026-08-25 01:01:31,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:01:31,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:01:31,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:01:31,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:01:31,716.716 INFO    ] time= 25/08/2026 01:01:31
[2026-08-25 01:01:31,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:01:31,750.750 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:01:31,844.844 INFO    ] No existing commands found in stream
[2026-08-25 01:01:36,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:01:36,855.855 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 01:01:40,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:01:40,144.144 INFO    ] Checking for system updates...
[2026-08-25 01:01:40,183.183 INFO    ] 200
[2026-08-25 01:01:40,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:40,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:01:40,241.241 INFO    ] No update needed
[2026-08-25 01:01:40,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 01:01:40,277.277 INFO    ] 200
[2026-08-25 01:01:40,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:40,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:01:40,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:01:40,368.368 INFO    ] No camera update needed
[2026-08-25 01:01:40,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:01:40,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:01:40,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:01:40,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:01:42,425.425 INFO    ] ================================================
[2026-08-25 01:01:42,440.440 INFO    ] Launching Daemon at Tue Aug 25 01:01:42 IST 2026
[2026-08-25 01:01:42,451.451 INFO    ] ================================================
[2026-08-25 01:01:43,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:01:43
[2026-08-25 01:01:43,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:01:43,895.895 INFO    ] Initializing speech engine...
[2026-08-25 01:01:43,910.910 INFO    ] 2026-08-25 01:01:43
[2026-08-25 01:01:44,199.199 INFO    ] 2026-08-25 01:01:44
[2026-08-25 01:01:44,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:01:44,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:01:44,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:01:44,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:01:44,584.584 INFO    ] time= 25/08/2026 01:01:44
[2026-08-25 01:01:44,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:01:44,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:01:44,710.710 INFO    ] No existing commands found in stream
[2026-08-25 01:01:49,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:01:49,726.726 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 01:01:53,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:01:53,499.499 INFO    ] Checking for system updates...
[2026-08-25 01:01:53,535.535 INFO    ] 200
[2026-08-25 01:01:53,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:53,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:01:53,592.592 INFO    ] No update needed
[2026-08-25 01:01:53,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 01:01:53,632.632 INFO    ] 200
[2026-08-25 01:01:53,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:01:53,675.675 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:01:53,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:01:53,723.723 INFO    ] No camera update needed
[2026-08-25 01:01:53,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:01:53,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:01:53,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:01:53,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:01:55,781.781 INFO    ] ================================================
[2026-08-25 01:01:55,796.796 INFO    ] Launching Daemon at Tue Aug 25 01:01:55 IST 2026
[2026-08-25 01:01:55,806.806 INFO    ] ================================================
[2026-08-25 01:01:56,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:01:56
[2026-08-25 01:01:56,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:01:57,251.251 INFO    ] Initializing speech engine...
[2026-08-25 01:01:57,261.261 INFO    ] 2026-08-25 01:01:57
[2026-08-25 01:01:57,563.563 INFO    ] 2026-08-25 01:01:57
[2026-08-25 01:01:57,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:01:57,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:01:57,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:01:57,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:01:57,929.929 INFO    ] time= 25/08/2026 01:01:57
[2026-08-25 01:01:57,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:01:57,959.959 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:01:58,069.069 INFO    ] No existing commands found in stream
[2026-08-25 01:02:03,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:02:03,094.094 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 01:02:06,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:02:06,437.437 INFO    ] Checking for system updates...
[2026-08-25 01:02:06,476.476 INFO    ] 200
[2026-08-25 01:02:06,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:06,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:02:06,533.533 INFO    ] No update needed
[2026-08-25 01:02:06,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 01:02:06,570.570 INFO    ] 200
[2026-08-25 01:02:06,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:06,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:02:06,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:02:06,667.667 INFO    ] No camera update needed
[2026-08-25 01:02:06,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:02:06,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:02:06,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:02:06,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:02:08,728.728 INFO    ] ================================================
[2026-08-25 01:02:08,743.743 INFO    ] Launching Daemon at Tue Aug 25 01:02:08 IST 2026
[2026-08-25 01:02:08,754.754 INFO    ] ================================================
[2026-08-25 01:02:09,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:02:09
[2026-08-25 01:02:09,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:02:10,190.190 INFO    ] Initializing speech engine...
[2026-08-25 01:02:10,195.195 INFO    ] 2026-08-25 01:02:10
[2026-08-25 01:02:10,493.493 INFO    ] 2026-08-25 01:02:10
[2026-08-25 01:02:10,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:02:10,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:02:10,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:02:10,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:02:10,845.845 INFO    ] time= 25/08/2026 01:02:10
[2026-08-25 01:02:10,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:02:10,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:02:10,996.996 INFO    ] No existing commands found in stream
[2026-08-25 01:02:16,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:02:16,010.010 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 01:02:19,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:02:19,084.084 INFO    ] Checking for system updates...
[2026-08-25 01:02:19,119.119 INFO    ] 200
[2026-08-25 01:02:19,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:19,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:19,177.177 INFO    ] No update needed
[2026-08-25 01:02:19,180.180 INFO    ] Checking for camera pi updates...
[2026-08-25 01:02:19,213.213 INFO    ] 200
[2026-08-25 01:02:19,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:19,260.260 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:02:19,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:19,316.316 INFO    ] No camera update needed
[2026-08-25 01:02:19,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:02:19,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:02:19,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:02:19,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:02:21,370.370 INFO    ] ================================================
[2026-08-25 01:02:21,385.385 INFO    ] Launching Daemon at Tue Aug 25 01:02:21 IST 2026
[2026-08-25 01:02:21,396.396 INFO    ] ================================================
[2026-08-25 01:02:21,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:02:21
[2026-08-25 01:02:22,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:02:22,824.824 INFO    ] Initializing speech engine...
[2026-08-25 01:02:22,843.843 INFO    ] 2026-08-25 01:02:22
[2026-08-25 01:02:23,106.106 INFO    ] 2026-08-25 01:02:23
[2026-08-25 01:02:23,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:02:23,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:02:23,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:02:23,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:02:23,579.579 INFO    ] time= 25/08/2026 01:02:23
[2026-08-25 01:02:23,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:02:23,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:02:23,805.805 INFO    ] No existing commands found in stream
[2026-08-25 01:02:28,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:02:28,830.830 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 01:02:31,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:02:31,924.924 INFO    ] Checking for system updates...
[2026-08-25 01:02:31,963.963 INFO    ] 200
[2026-08-25 01:02:31,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:32,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:32,034.034 INFO    ] No update needed
[2026-08-25 01:02:32,037.037 INFO    ] Checking for camera pi updates...
[2026-08-25 01:02:32,073.073 INFO    ] 200
[2026-08-25 01:02:32,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:32,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:02:32,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:32,211.211 INFO    ] No camera update needed
[2026-08-25 01:02:32,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:02:32,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:02:32,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:02:32,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:02:34,268.268 INFO    ] ================================================
[2026-08-25 01:02:34,288.288 INFO    ] Launching Daemon at Tue Aug 25 01:02:34 IST 2026
[2026-08-25 01:02:34,299.299 INFO    ] ================================================
[2026-08-25 01:02:34,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:02:34
[2026-08-25 01:02:35,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:02:35,737.737 INFO    ] Initializing speech engine...
[2026-08-25 01:02:35,755.755 INFO    ] 2026-08-25 01:02:35
[2026-08-25 01:02:36,001.001 INFO    ] 2026-08-25 01:02:35
[2026-08-25 01:02:36,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:02:36,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:02:36,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:02:36,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:02:36,375.375 INFO    ] time= 25/08/2026 01:02:36
[2026-08-25 01:02:36,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:02:36,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:02:36,566.566 INFO    ] No existing commands found in stream
[2026-08-25 01:02:41,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:02:41,594.594 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 01:02:42,914.914 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:02:42,917.917 INFO    ] Checking for system updates...
[2026-08-25 01:02:42,952.952 INFO    ] 200
[2026-08-25 01:02:42,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:43,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:43,017.017 INFO    ] No update needed
[2026-08-25 01:02:43,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 01:02:43,054.054 INFO    ] 200
[2026-08-25 01:02:43,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:43,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:02:43,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:43,146.146 INFO    ] No camera update needed
[2026-08-25 01:02:43,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:02:43,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:02:43,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:02:43,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:02:45,201.201 INFO    ] ================================================
[2026-08-25 01:02:45,216.216 INFO    ] Launching Daemon at Tue Aug 25 01:02:45 IST 2026
[2026-08-25 01:02:45,227.227 INFO    ] ================================================
[2026-08-25 01:02:45,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:02:45
[2026-08-25 01:02:46,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:02:46,709.709 INFO    ] Initializing speech engine...
[2026-08-25 01:02:46,717.717 INFO    ] 2026-08-25 01:02:46
[2026-08-25 01:02:46,969.969 INFO    ] 2026-08-25 01:02:46
[2026-08-25 01:02:47,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:02:47,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:02:47,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:02:47,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:02:47,455.455 INFO    ] time= 25/08/2026 01:02:47
[2026-08-25 01:02:47,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:02:47,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:02:47,666.666 INFO    ] No existing commands found in stream
[2026-08-25 01:02:52,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:02:52,686.686 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 01:02:53,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:02:53,340.340 INFO    ] Checking for system updates...
[2026-08-25 01:02:53,376.376 INFO    ] 200
[2026-08-25 01:02:53,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:53,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:53,436.436 INFO    ] No update needed
[2026-08-25 01:02:53,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 01:02:53,476.476 INFO    ] 200
[2026-08-25 01:02:53,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:02:53,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:02:53,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:02:53,566.566 INFO    ] No camera update needed
[2026-08-25 01:02:53,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:02:53,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:02:53,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:02:53,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:02:55,622.622 INFO    ] ================================================
[2026-08-25 01:02:55,637.637 INFO    ] Launching Daemon at Tue Aug 25 01:02:55 IST 2026
[2026-08-25 01:02:55,648.648 INFO    ] ================================================
[2026-08-25 01:02:56,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:02:56
[2026-08-25 01:02:56,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:02:57,099.099 INFO    ] Initializing speech engine...
[2026-08-25 01:02:57,109.109 INFO    ] 2026-08-25 01:02:57
[2026-08-25 01:02:57,391.391 INFO    ] 2026-08-25 01:02:57
[2026-08-25 01:02:57,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:02:57,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:02:57,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:02:57,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:02:57,880.880 INFO    ] time= 25/08/2026 01:02:57
[2026-08-25 01:02:57,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:02:57,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:02:58,071.071 INFO    ] No existing commands found in stream
[2026-08-25 01:03:03,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:03:03,101.101 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 01:03:04,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:03:04,079.079 INFO    ] Checking for system updates...
[2026-08-25 01:03:04,116.116 INFO    ] 200
[2026-08-25 01:03:04,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:04,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:04,175.175 INFO    ] No update needed
[2026-08-25 01:03:04,177.177 INFO    ] Checking for camera pi updates...
[2026-08-25 01:03:04,211.211 INFO    ] 200
[2026-08-25 01:03:04,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:04,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:03:04,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:04,318.318 INFO    ] No camera update needed
[2026-08-25 01:03:04,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:03:04,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:03:04,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:03:04,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:03:06,377.377 INFO    ] ================================================
[2026-08-25 01:03:06,392.392 INFO    ] Launching Daemon at Tue Aug 25 01:03:06 IST 2026
[2026-08-25 01:03:06,403.403 INFO    ] ================================================
[2026-08-25 01:03:06,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:03:06
[2026-08-25 01:03:07,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:03:07,833.833 INFO    ] Initializing speech engine...
[2026-08-25 01:03:07,850.850 INFO    ] 2026-08-25 01:03:07
[2026-08-25 01:03:08,141.141 INFO    ] 2026-08-25 01:03:08
[2026-08-25 01:03:08,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:03:08,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:03:08,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:03:08,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:03:08,591.591 INFO    ] time= 25/08/2026 01:03:08
[2026-08-25 01:03:08,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:03:08,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:03:08,774.774 INFO    ] No existing commands found in stream
[2026-08-25 01:03:13,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:03:13,799.799 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 01:03:14,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:03:14,907.907 INFO    ] Checking for system updates...
[2026-08-25 01:03:14,944.944 INFO    ] 200
[2026-08-25 01:03:14,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:15,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:15,003.003 INFO    ] No update needed
[2026-08-25 01:03:15,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 01:03:15,040.040 INFO    ] 200
[2026-08-25 01:03:15,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:15,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:03:15,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:15,137.137 INFO    ] No camera update needed
[2026-08-25 01:03:15,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:03:15,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:03:15,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:03:15,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:03:17,191.191 INFO    ] ================================================
[2026-08-25 01:03:17,206.206 INFO    ] Launching Daemon at Tue Aug 25 01:03:17 IST 2026
[2026-08-25 01:03:17,217.217 INFO    ] ================================================
[2026-08-25 01:03:17,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:03:17
[2026-08-25 01:03:18,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:03:18,857.857 INFO    ] Initializing speech engine...
[2026-08-25 01:03:18,867.867 INFO    ] 2026-08-25 01:03:18
[2026-08-25 01:03:19,126.126 INFO    ] 2026-08-25 01:03:19
[2026-08-25 01:03:19,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:03:19,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:03:19,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:03:19,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:03:19,611.611 INFO    ] time= 25/08/2026 01:03:19
[2026-08-25 01:03:19,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:03:19,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:03:19,827.827 INFO    ] No existing commands found in stream
[2026-08-25 01:03:24,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:03:24,847.847 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 01:03:27,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:03:27,697.697 INFO    ] Checking for system updates...
[2026-08-25 01:03:27,736.736 INFO    ] 200
[2026-08-25 01:03:27,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:27,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:27,800.800 INFO    ] No update needed
[2026-08-25 01:03:27,803.803 INFO    ] Checking for camera pi updates...
[2026-08-25 01:03:27,835.835 INFO    ] 200
[2026-08-25 01:03:27,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:27,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:03:27,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:27,941.941 INFO    ] No camera update needed
[2026-08-25 01:03:27,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:03:27,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:03:27,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:03:27,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:03:30,995.995 INFO    ] ================================================
[2026-08-25 01:03:30,010.010 INFO    ] Launching Daemon at Tue Aug 25 01:03:30 IST 2026
[2026-08-25 01:03:30,021.021 INFO    ] ================================================
[2026-08-25 01:03:30,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:03:30
[2026-08-25 01:03:31,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:03:31,435.435 INFO    ] Initializing speech engine...
[2026-08-25 01:03:31,443.443 INFO    ] 2026-08-25 01:03:31
[2026-08-25 01:03:31,702.702 INFO    ] 2026-08-25 01:03:31
[2026-08-25 01:03:31,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:03:31,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:03:32,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:03:32,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:03:32,184.184 INFO    ] time= 25/08/2026 01:03:32
[2026-08-25 01:03:32,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:03:32,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:03:32,415.415 INFO    ] No existing commands found in stream
[2026-08-25 01:03:37,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:03:37,443.443 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 01:03:41,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:03:41,715.715 INFO    ] Checking for system updates...
[2026-08-25 01:03:41,751.751 INFO    ] 200
[2026-08-25 01:03:41,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:41,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:41,808.808 INFO    ] No update needed
[2026-08-25 01:03:41,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 01:03:41,844.844 INFO    ] 200
[2026-08-25 01:03:41,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:41,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:03:42,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:42,054.054 INFO    ] No camera update needed
[2026-08-25 01:03:42,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:03:42,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:03:42,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:03:42,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:03:44,111.111 INFO    ] ================================================
[2026-08-25 01:03:44,129.129 INFO    ] Launching Daemon at Tue Aug 25 01:03:44 IST 2026
[2026-08-25 01:03:44,140.140 INFO    ] ================================================
[2026-08-25 01:03:44,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:03:44
[2026-08-25 01:03:45,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:03:45,632.632 INFO    ] Initializing speech engine...
[2026-08-25 01:03:45,642.642 INFO    ] 2026-08-25 01:03:45
[2026-08-25 01:03:45,892.892 INFO    ] 2026-08-25 01:03:45
[2026-08-25 01:03:45,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:03:46,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:03:46,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:03:46,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:03:46,373.373 INFO    ] time= 25/08/2026 01:03:46
[2026-08-25 01:03:46,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:03:46,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:03:46,622.622 INFO    ] No existing commands found in stream
[2026-08-25 01:03:51,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:03:51,640.640 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 01:03:54,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:03:54,693.693 INFO    ] Checking for system updates...
[2026-08-25 01:03:54,729.729 INFO    ] 200
[2026-08-25 01:03:54,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:54,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:54,786.786 INFO    ] No update needed
[2026-08-25 01:03:54,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 01:03:54,826.826 INFO    ] 200
[2026-08-25 01:03:54,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:03:54,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:03:54,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:03:54,933.933 INFO    ] No camera update needed
[2026-08-25 01:03:54,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:03:54,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:03:54,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:03:54,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:03:56,988.988 INFO    ] ================================================
[2026-08-25 01:03:57,003.003 INFO    ] Launching Daemon at Tue Aug 25 01:03:56 IST 2026
[2026-08-25 01:03:57,014.014 INFO    ] ================================================
[2026-08-25 01:03:57,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:03:57
[2026-08-25 01:03:58,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:03:58,413.413 INFO    ] Initializing speech engine...
[2026-08-25 01:03:58,422.422 INFO    ] 2026-08-25 01:03:58
[2026-08-25 01:03:58,695.695 INFO    ] 2026-08-25 01:03:58
[2026-08-25 01:03:58,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:03:58,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:03:58,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:03:59,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:03:59,070.070 INFO    ] time= 25/08/2026 01:03:59
[2026-08-25 01:03:59,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:03:59,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:03:59,248.248 INFO    ] No existing commands found in stream
[2026-08-25 01:04:04,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:04:04,277.277 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 01:04:07,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:04:07,697.697 INFO    ] Checking for system updates...
[2026-08-25 01:04:07,733.733 INFO    ] 200
[2026-08-25 01:04:07,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:07,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:04:07,792.792 INFO    ] No update needed
[2026-08-25 01:04:07,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 01:04:07,828.828 INFO    ] 200
[2026-08-25 01:04:07,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:07,870.870 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:04:07,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:04:07,914.914 INFO    ] No camera update needed
[2026-08-25 01:04:07,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:04:07,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:04:07,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:04:07,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:04:09,969.969 INFO    ] ================================================
[2026-08-25 01:04:09,985.985 INFO    ] Launching Daemon at Tue Aug 25 01:04:09 IST 2026
[2026-08-25 01:04:10,996.996 INFO    ] ================================================
[2026-08-25 01:04:10,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:04:10
[2026-08-25 01:04:11,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:04:11,452.452 INFO    ] Initializing speech engine...
[2026-08-25 01:04:11,460.460 INFO    ] 2026-08-25 01:04:11
[2026-08-25 01:04:11,757.757 INFO    ] 2026-08-25 01:04:11
[2026-08-25 01:04:11,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:04:11,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:04:11,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:04:12,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:04:12,137.137 INFO    ] time= 25/08/2026 01:04:12
[2026-08-25 01:04:12,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:04:12,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:04:12,326.326 INFO    ] No existing commands found in stream
[2026-08-25 01:04:17,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:04:17,347.347 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 01:04:17,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:04:17,848.848 INFO    ] Checking for system updates...
[2026-08-25 01:04:17,883.883 INFO    ] 200
[2026-08-25 01:04:17,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:17,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:04:17,940.940 INFO    ] No update needed
[2026-08-25 01:04:17,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 01:04:17,979.979 INFO    ] 200
[2026-08-25 01:04:17,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:18,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:04:18,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:04:18,083.083 INFO    ] No camera update needed
[2026-08-25 01:04:18,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:04:18,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:04:18,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:04:18,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:04:20,138.138 INFO    ] ================================================
[2026-08-25 01:04:20,152.152 INFO    ] Launching Daemon at Tue Aug 25 01:04:20 IST 2026
[2026-08-25 01:04:20,163.163 INFO    ] ================================================
[2026-08-25 01:04:20,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:04:20
[2026-08-25 01:04:21,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:04:21,597.597 INFO    ] Initializing speech engine...
[2026-08-25 01:04:21,605.605 INFO    ] 2026-08-25 01:04:21
[2026-08-25 01:04:21,896.896 INFO    ] 2026-08-25 01:04:21
[2026-08-25 01:04:21,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:04:22,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:04:22,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:04:22,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:04:22,313.313 INFO    ] time= 25/08/2026 01:04:22
[2026-08-25 01:04:22,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:04:22,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:04:22,488.488 INFO    ] No existing commands found in stream
[2026-08-25 01:04:27,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:04:27,516.516 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 01:04:30,730.730 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:04:30,733.733 INFO    ] Checking for system updates...
[2026-08-25 01:04:30,768.768 INFO    ] 200
[2026-08-25 01:04:30,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:30,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:04:30,831.831 INFO    ] No update needed
[2026-08-25 01:04:30,833.833 INFO    ] Checking for camera pi updates...
[2026-08-25 01:04:30,870.870 INFO    ] 200
[2026-08-25 01:04:30,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:30,913.913 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:04:30,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:04:30,960.960 INFO    ] No camera update needed
[2026-08-25 01:04:30,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:04:30,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:04:30,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:04:30,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:04:33,020.020 INFO    ] ================================================
[2026-08-25 01:04:33,038.038 INFO    ] Launching Daemon at Tue Aug 25 01:04:33 IST 2026
[2026-08-25 01:04:33,049.049 INFO    ] ================================================
[2026-08-25 01:04:33,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:04:33
[2026-08-25 01:04:34,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:04:34,499.499 INFO    ] Initializing speech engine...
[2026-08-25 01:04:34,506.506 INFO    ] 2026-08-25 01:04:34
[2026-08-25 01:04:34,804.804 INFO    ] 2026-08-25 01:04:34
[2026-08-25 01:04:34,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:04:35,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:04:35,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:04:35,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:04:35,203.203 INFO    ] time= 25/08/2026 01:04:35
[2026-08-25 01:04:35,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:04:35,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:04:35,316.316 INFO    ] No existing commands found in stream
[2026-08-25 01:04:40,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:04:40,334.334 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 01:04:42,055.055 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:04:42,057.057 INFO    ] Checking for system updates...
[2026-08-25 01:04:42,093.093 INFO    ] 200
[2026-08-25 01:04:42,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:42,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:04:42,150.150 INFO    ] No update needed
[2026-08-25 01:04:42,152.152 INFO    ] Checking for camera pi updates...
[2026-08-25 01:04:42,185.185 INFO    ] 200
[2026-08-25 01:04:42,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:42,228.228 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:04:42,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:04:42,279.279 INFO    ] No camera update needed
[2026-08-25 01:04:42,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:04:42,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:04:42,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:04:42,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:04:44,335.335 INFO    ] ================================================
[2026-08-25 01:04:44,350.350 INFO    ] Launching Daemon at Tue Aug 25 01:04:44 IST 2026
[2026-08-25 01:04:44,361.361 INFO    ] ================================================
[2026-08-25 01:04:44,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:04:44
[2026-08-25 01:04:45,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:04:45,815.815 INFO    ] Initializing speech engine...
[2026-08-25 01:04:45,821.821 INFO    ] 2026-08-25 01:04:45
[2026-08-25 01:04:46,097.097 INFO    ] 2026-08-25 01:04:46
[2026-08-25 01:04:46,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:04:46,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:04:46,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:04:46,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:04:46,583.583 INFO    ] time= 25/08/2026 01:04:46
[2026-08-25 01:04:46,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:04:46,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:04:46,792.792 INFO    ] No existing commands found in stream
[2026-08-25 01:04:51,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:04:51,828.828 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 01:04:55,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:04:55,416.416 INFO    ] Checking for system updates...
[2026-08-25 01:04:55,451.451 INFO    ] 200
[2026-08-25 01:04:55,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:55,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:04:55,517.517 INFO    ] No update needed
[2026-08-25 01:04:55,520.520 INFO    ] Checking for camera pi updates...
[2026-08-25 01:04:55,558.558 INFO    ] 200
[2026-08-25 01:04:55,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:04:55,601.601 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:04:55,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:04:55,656.656 INFO    ] No camera update needed
[2026-08-25 01:04:55,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:04:55,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:04:55,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:04:55,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:04:57,712.712 INFO    ] ================================================
[2026-08-25 01:04:57,729.729 INFO    ] Launching Daemon at Tue Aug 25 01:04:57 IST 2026
[2026-08-25 01:04:57,740.740 INFO    ] ================================================
[2026-08-25 01:04:58,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:04:58
[2026-08-25 01:04:59,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:04:59,408.408 INFO    ] Initializing speech engine...
[2026-08-25 01:04:59,419.419 INFO    ] 2026-08-25 01:04:59
[2026-08-25 01:04:59,691.691 INFO    ] 2026-08-25 01:04:59
[2026-08-25 01:04:59,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:04:59,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:05:00,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:05:00,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:05:00,195.195 INFO    ] time= 25/08/2026 01:05:00
[2026-08-25 01:05:00,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:05:00,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:05:00,400.400 INFO    ] No existing commands found in stream
[2026-08-25 01:05:05,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:05:05,415.415 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 01:05:08,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:05:08,667.667 INFO    ] Checking for system updates...
[2026-08-25 01:05:08,702.702 INFO    ] 200
[2026-08-25 01:05:08,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:08,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:05:08,759.759 INFO    ] No update needed
[2026-08-25 01:05:08,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 01:05:08,794.794 INFO    ] 200
[2026-08-25 01:05:08,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:08,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:05:08,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:05:08,892.892 INFO    ] No camera update needed
[2026-08-25 01:05:08,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:05:08,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:05:08,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:05:08,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:05:10,947.947 INFO    ] ================================================
[2026-08-25 01:05:10,962.962 INFO    ] Launching Daemon at Tue Aug 25 01:05:10 IST 2026
[2026-08-25 01:05:10,973.973 INFO    ] ================================================
[2026-08-25 01:05:11,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:05:11
[2026-08-25 01:05:12,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:05:12,673.673 INFO    ] Initializing speech engine...
[2026-08-25 01:05:13,075.075 INFO    ] 2026-08-25 01:05:13
[2026-08-25 01:05:13,434.434 INFO    ] 2026-08-25 01:05:13
[2026-08-25 01:05:13,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:05:13,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:05:13,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:05:13,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:05:13,952.952 INFO    ] time= 25/08/2026 01:05:13
[2026-08-25 01:05:13,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:05:13,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:05:14,086.086 INFO    ] No existing commands found in stream
[2026-08-25 01:05:19,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:05:19,114.114 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 01:05:22,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:05:22,710.710 INFO    ] Checking for system updates...
[2026-08-25 01:05:22,747.747 INFO    ] 200
[2026-08-25 01:05:22,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:22,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:05:22,806.806 INFO    ] No update needed
[2026-08-25 01:05:22,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 01:05:22,841.841 INFO    ] 200
[2026-08-25 01:05:22,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:22,889.889 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:05:22,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:05:22,937.937 INFO    ] No camera update needed
[2026-08-25 01:05:22,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:05:22,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:05:22,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:05:22,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:05:24,991.991 INFO    ] ================================================
[2026-08-25 01:05:25,007.007 INFO    ] Launching Daemon at Tue Aug 25 01:05:25 IST 2026
[2026-08-25 01:05:25,017.017 INFO    ] ================================================
[2026-08-25 01:05:25,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:05:25
[2026-08-25 01:05:26,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:05:26,488.488 INFO    ] Initializing speech engine...
[2026-08-25 01:05:26,501.501 INFO    ] 2026-08-25 01:05:26
[2026-08-25 01:05:26,785.785 INFO    ] 2026-08-25 01:05:26
[2026-08-25 01:05:26,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:05:27,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:05:27,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:05:27,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:05:27,258.258 INFO    ] time= 25/08/2026 01:05:27
[2026-08-25 01:05:27,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:05:27,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:05:27,471.471 INFO    ] No existing commands found in stream
[2026-08-25 01:05:32,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:05:32,501.501 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 01:05:33,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:05:33,437.437 INFO    ] Checking for system updates...
[2026-08-25 01:05:33,478.478 INFO    ] 200
[2026-08-25 01:05:33,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:33,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:05:33,545.545 INFO    ] No update needed
[2026-08-25 01:05:33,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 01:05:33,583.583 INFO    ] 200
[2026-08-25 01:05:33,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:33,633.633 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:05:33,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:05:33,684.684 INFO    ] No camera update needed
[2026-08-25 01:05:33,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:05:33,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:05:33,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:05:33,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:05:35,743.743 INFO    ] ================================================
[2026-08-25 01:05:35,758.758 INFO    ] Launching Daemon at Tue Aug 25 01:05:35 IST 2026
[2026-08-25 01:05:35,769.769 INFO    ] ================================================
[2026-08-25 01:05:36,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:05:36
[2026-08-25 01:05:37,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:05:37,407.407 INFO    ] Initializing speech engine...
[2026-08-25 01:05:37,419.419 INFO    ] 2026-08-25 01:05:37
[2026-08-25 01:05:37,731.731 INFO    ] 2026-08-25 01:05:37
[2026-08-25 01:05:37,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:05:38,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:05:38,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:05:38,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:05:38,252.252 INFO    ] time= 25/08/2026 01:05:38
[2026-08-25 01:05:38,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:05:38,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:05:38,398.398 INFO    ] No existing commands found in stream
[2026-08-25 01:05:43,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:05:43,426.426 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 01:05:44,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:05:44,527.527 INFO    ] Checking for system updates...
[2026-08-25 01:05:44,564.564 INFO    ] 200
[2026-08-25 01:05:44,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:44,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:05:44,630.630 INFO    ] No update needed
[2026-08-25 01:05:44,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 01:05:44,667.667 INFO    ] 200
[2026-08-25 01:05:44,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:44,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:05:44,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:05:44,861.861 INFO    ] No camera update needed
[2026-08-25 01:05:44,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:05:44,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:05:44,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:05:44,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:05:46,921.921 INFO    ] ================================================
[2026-08-25 01:05:46,936.936 INFO    ] Launching Daemon at Tue Aug 25 01:05:46 IST 2026
[2026-08-25 01:05:46,946.946 INFO    ] ================================================
[2026-08-25 01:05:47,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:05:47
[2026-08-25 01:05:48,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:05:48,381.381 INFO    ] Initializing speech engine...
[2026-08-25 01:05:48,387.387 INFO    ] 2026-08-25 01:05:48
[2026-08-25 01:05:48,673.673 INFO    ] 2026-08-25 01:05:48
[2026-08-25 01:05:48,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:05:48,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:05:48,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:05:49,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:05:49,057.057 INFO    ] time= 25/08/2026 01:05:49
[2026-08-25 01:05:49,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:05:49,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:05:49,184.184 INFO    ] No existing commands found in stream
[2026-08-25 01:05:54,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:05:54,199.199 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 01:05:58,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:05:58,153.153 INFO    ] Checking for system updates...
[2026-08-25 01:05:58,188.188 INFO    ] 200
[2026-08-25 01:05:58,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:58,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:05:58,259.259 INFO    ] No update needed
[2026-08-25 01:05:58,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 01:05:58,299.299 INFO    ] 200
[2026-08-25 01:05:58,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:05:58,341.341 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:05:58,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:05:58,391.391 INFO    ] No camera update needed
[2026-08-25 01:05:58,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:05:58,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:05:58,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:05:58,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:06:00,450.450 INFO    ] ================================================
[2026-08-25 01:06:00,465.465 INFO    ] Launching Daemon at Tue Aug 25 01:06:00 IST 2026
[2026-08-25 01:06:00,476.476 INFO    ] ================================================
[2026-08-25 01:06:01,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:06:01
[2026-08-25 01:06:01,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:06:02,100.100 INFO    ] Initializing speech engine...
[2026-08-25 01:06:02,104.104 INFO    ] 2026-08-25 01:06:02
[2026-08-25 01:06:02,457.457 INFO    ] 2026-08-25 01:06:02
[2026-08-25 01:06:02,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:06:02,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:06:02,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:06:02,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:06:02,999.999 INFO    ] time= 25/08/2026 01:06:02
[2026-08-25 01:06:03,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:06:03,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:06:03,159.159 INFO    ] No existing commands found in stream
[2026-08-25 01:06:08,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:06:08,187.187 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 01:06:10,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:06:10,201.201 INFO    ] Checking for system updates...
[2026-08-25 01:06:10,237.237 INFO    ] 200
[2026-08-25 01:06:10,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:10,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:06:10,296.296 INFO    ] No update needed
[2026-08-25 01:06:10,298.298 INFO    ] Checking for camera pi updates...
[2026-08-25 01:06:10,331.331 INFO    ] 200
[2026-08-25 01:06:10,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:10,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:06:10,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:06:10,427.427 INFO    ] No camera update needed
[2026-08-25 01:06:10,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:06:10,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:06:10,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:06:10,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:06:12,487.487 INFO    ] ================================================
[2026-08-25 01:06:12,503.503 INFO    ] Launching Daemon at Tue Aug 25 01:06:12 IST 2026
[2026-08-25 01:06:12,514.514 INFO    ] ================================================
[2026-08-25 01:06:13,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:06:13
[2026-08-25 01:06:13,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:06:14,210.210 INFO    ] Initializing speech engine...
[2026-08-25 01:06:14,222.222 INFO    ] 2026-08-25 01:06:14
[2026-08-25 01:06:14,534.534 INFO    ] 2026-08-25 01:06:14
[2026-08-25 01:06:14,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:06:14,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:06:14,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:06:15,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:06:15,043.043 INFO    ] time= 25/08/2026 01:06:15
[2026-08-25 01:06:15,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:06:15,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:06:15,199.199 INFO    ] No existing commands found in stream
[2026-08-25 01:06:20,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:06:20,221.221 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 01:06:21,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:06:21,808.808 INFO    ] Checking for system updates...
[2026-08-25 01:06:21,845.845 INFO    ] 200
[2026-08-25 01:06:21,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:21,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:06:21,905.905 INFO    ] No update needed
[2026-08-25 01:06:21,907.907 INFO    ] Checking for camera pi updates...
[2026-08-25 01:06:21,942.942 INFO    ] 200
[2026-08-25 01:06:21,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:21,986.986 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:06:22,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:06:22,041.041 INFO    ] No camera update needed
[2026-08-25 01:06:22,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:06:22,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:06:22,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:06:22,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:06:24,097.097 INFO    ] ================================================
[2026-08-25 01:06:24,112.112 INFO    ] Launching Daemon at Tue Aug 25 01:06:24 IST 2026
[2026-08-25 01:06:24,123.123 INFO    ] ================================================
[2026-08-25 01:06:24,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:06:24
[2026-08-25 01:06:25,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:06:25,539.539 INFO    ] Initializing speech engine...
[2026-08-25 01:06:25,547.547 INFO    ] 2026-08-25 01:06:25
[2026-08-25 01:06:25,848.848 INFO    ] 2026-08-25 01:06:25
[2026-08-25 01:06:25,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:06:26,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:06:26,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:06:26,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:06:26,242.242 INFO    ] time= 25/08/2026 01:06:26
[2026-08-25 01:06:26,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:06:26,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:06:26,364.364 INFO    ] No existing commands found in stream
[2026-08-25 01:06:31,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:06:31,382.382 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 01:06:34,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:06:34,754.754 INFO    ] Checking for system updates...
[2026-08-25 01:06:34,790.790 INFO    ] 200
[2026-08-25 01:06:34,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:34,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:06:34,848.848 INFO    ] No update needed
[2026-08-25 01:06:34,850.850 INFO    ] Checking for camera pi updates...
[2026-08-25 01:06:34,883.883 INFO    ] 200
[2026-08-25 01:06:34,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:34,927.927 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:06:34,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:06:34,981.981 INFO    ] No camera update needed
[2026-08-25 01:06:34,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:06:34,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:06:34,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:06:34,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:06:37,037.037 INFO    ] ================================================
[2026-08-25 01:06:37,052.052 INFO    ] Launching Daemon at Tue Aug 25 01:06:37 IST 2026
[2026-08-25 01:06:37,062.062 INFO    ] ================================================
[2026-08-25 01:06:37,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:06:37
[2026-08-25 01:06:38,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:06:38,507.507 INFO    ] Initializing speech engine...
[2026-08-25 01:06:38,515.515 INFO    ] 2026-08-25 01:06:38
[2026-08-25 01:06:38,821.821 INFO    ] 2026-08-25 01:06:38
[2026-08-25 01:06:38,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:06:39,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:06:39,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:06:39,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:06:39,211.211 INFO    ] time= 25/08/2026 01:06:39
[2026-08-25 01:06:39,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:06:39,254.254 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:06:39,340.340 INFO    ] No existing commands found in stream
[2026-08-25 01:06:44,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:06:44,356.356 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 01:06:47,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:06:47,385.385 INFO    ] Checking for system updates...
[2026-08-25 01:06:47,420.420 INFO    ] 200
[2026-08-25 01:06:47,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:47,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:06:47,477.477 INFO    ] No update needed
[2026-08-25 01:06:47,479.479 INFO    ] Checking for camera pi updates...
[2026-08-25 01:06:47,513.513 INFO    ] 200
[2026-08-25 01:06:47,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:06:47,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:06:47,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:06:47,612.612 INFO    ] No camera update needed
[2026-08-25 01:06:47,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:06:47,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:06:47,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:06:47,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:06:49,668.668 INFO    ] ================================================
[2026-08-25 01:06:49,683.683 INFO    ] Launching Daemon at Tue Aug 25 01:06:49 IST 2026
[2026-08-25 01:06:49,694.694 INFO    ] ================================================
[2026-08-25 01:06:50,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:06:50
[2026-08-25 01:06:50,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:06:51,289.289 INFO    ] Initializing speech engine...
[2026-08-25 01:06:51,300.300 INFO    ] 2026-08-25 01:06:51
[2026-08-25 01:06:51,614.614 INFO    ] 2026-08-25 01:06:51
[2026-08-25 01:06:51,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:06:51,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:06:51,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:06:52,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:06:52,125.125 INFO    ] time= 25/08/2026 01:06:52
[2026-08-25 01:06:52,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:06:52,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:06:52,286.286 INFO    ] No existing commands found in stream
[2026-08-25 01:06:57,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:06:57,321.321 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 01:07:01,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:07:01,094.094 INFO    ] Checking for system updates...
[2026-08-25 01:07:01,129.129 INFO    ] 200
[2026-08-25 01:07:01,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:01,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:01,187.187 INFO    ] No update needed
[2026-08-25 01:07:01,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 01:07:01,223.223 INFO    ] 200
[2026-08-25 01:07:01,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:01,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:07:01,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:01,325.325 INFO    ] No camera update needed
[2026-08-25 01:07:01,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:07:01,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:07:01,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:07:01,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:07:03,392.392 INFO    ] ================================================
[2026-08-25 01:07:03,409.409 INFO    ] Launching Daemon at Tue Aug 25 01:07:03 IST 2026
[2026-08-25 01:07:03,420.420 INFO    ] ================================================
[2026-08-25 01:07:04,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:07:04
[2026-08-25 01:07:04,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:07:04,871.871 INFO    ] Initializing speech engine...
[2026-08-25 01:07:04,888.888 INFO    ] 2026-08-25 01:07:04
[2026-08-25 01:07:05,178.178 INFO    ] 2026-08-25 01:07:05
[2026-08-25 01:07:05,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:07:05,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:07:05,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:07:05,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:07:05,569.569 INFO    ] time= 25/08/2026 01:07:05
[2026-08-25 01:07:05,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:07:05,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:07:05,697.697 INFO    ] No existing commands found in stream
[2026-08-25 01:07:10,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:07:10,712.712 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 01:07:13,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:07:13,713.713 INFO    ] Checking for system updates...
[2026-08-25 01:07:13,750.750 INFO    ] 200
[2026-08-25 01:07:13,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:13,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:13,806.806 INFO    ] No update needed
[2026-08-25 01:07:13,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 01:07:13,842.842 INFO    ] 200
[2026-08-25 01:07:13,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:13,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:07:13,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:13,942.942 INFO    ] No camera update needed
[2026-08-25 01:07:13,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:07:13,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:07:13,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:07:13,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:07:16,997.997 INFO    ] ================================================
[2026-08-25 01:07:16,012.012 INFO    ] Launching Daemon at Tue Aug 25 01:07:16 IST 2026
[2026-08-25 01:07:16,022.022 INFO    ] ================================================
[2026-08-25 01:07:16,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:07:16
[2026-08-25 01:07:17,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:07:17,419.419 INFO    ] Initializing speech engine...
[2026-08-25 01:07:17,425.425 INFO    ] 2026-08-25 01:07:17
[2026-08-25 01:07:17,733.733 INFO    ] 2026-08-25 01:07:17
[2026-08-25 01:07:17,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:07:17,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:07:17,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:07:18,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:07:18,123.123 INFO    ] time= 25/08/2026 01:07:18
[2026-08-25 01:07:18,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:07:18,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:07:18,252.252 INFO    ] No existing commands found in stream
[2026-08-25 01:07:23,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:07:23,265.265 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 01:07:26,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:07:26,804.804 INFO    ] Checking for system updates...
[2026-08-25 01:07:26,839.839 INFO    ] 200
[2026-08-25 01:07:26,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:26,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:07:26,897.897 INFO    ] No update needed
[2026-08-25 01:07:26,899.899 INFO    ] Checking for camera pi updates...
[2026-08-25 01:07:26,938.938 INFO    ] 200
[2026-08-25 01:07:26,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:26,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:07:27,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:07:27,047.047 INFO    ] No camera update needed
[2026-08-25 01:07:27,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:07:27,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:07:27,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:07:27,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:07:29,102.102 INFO    ] ================================================
[2026-08-25 01:07:29,118.118 INFO    ] Launching Daemon at Tue Aug 25 01:07:29 IST 2026
[2026-08-25 01:07:29,129.129 INFO    ] ================================================
[2026-08-25 01:07:29,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:07:29
[2026-08-25 01:07:30,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:07:30,596.596 INFO    ] Initializing speech engine...
[2026-08-25 01:07:30,605.605 INFO    ] 2026-08-25 01:07:30
[2026-08-25 01:07:30,854.854 INFO    ] 2026-08-25 01:07:30
[2026-08-25 01:07:30,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:07:31,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:07:31,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:07:31,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:07:31,356.356 INFO    ] time= 25/08/2026 01:07:31
[2026-08-25 01:07:31,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:07:31,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:07:31,566.566 INFO    ] No existing commands found in stream
[2026-08-25 01:07:36,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:07:36,581.581 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 01:07:40,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:07:40,264.264 INFO    ] Checking for system updates...
[2026-08-25 01:07:40,301.301 INFO    ] 200
[2026-08-25 01:07:40,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:40,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:40,367.367 INFO    ] No update needed
[2026-08-25 01:07:40,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 01:07:40,407.407 INFO    ] 200
[2026-08-25 01:07:40,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:40,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:07:40,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:40,499.499 INFO    ] No camera update needed
[2026-08-25 01:07:40,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:07:40,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:07:40,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:07:40,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:07:42,555.555 INFO    ] ================================================
[2026-08-25 01:07:42,570.570 INFO    ] Launching Daemon at Tue Aug 25 01:07:42 IST 2026
[2026-08-25 01:07:42,581.581 INFO    ] ================================================
[2026-08-25 01:07:43,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:07:43
[2026-08-25 01:07:43,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:07:44,032.032 INFO    ] Initializing speech engine...
[2026-08-25 01:07:44,043.043 INFO    ] 2026-08-25 01:07:44
[2026-08-25 01:07:44,296.296 INFO    ] 2026-08-25 01:07:44
[2026-08-25 01:07:44,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:07:44,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:07:44,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:07:44,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:07:44,751.751 INFO    ] time= 25/08/2026 01:07:44
[2026-08-25 01:07:44,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:07:44,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:07:44,983.983 INFO    ] No existing commands found in stream
[2026-08-25 01:07:49,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:07:50,001.001 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 01:07:53,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:07:53,065.065 INFO    ] Checking for system updates...
[2026-08-25 01:07:53,106.106 INFO    ] 200
[2026-08-25 01:07:53,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:53,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:53,164.164 INFO    ] No update needed
[2026-08-25 01:07:53,167.167 INFO    ] Checking for camera pi updates...
[2026-08-25 01:07:53,205.205 INFO    ] 200
[2026-08-25 01:07:53,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:07:53,253.253 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:07:53,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:07:53,410.410 INFO    ] No camera update needed
[2026-08-25 01:07:53,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:07:53,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:07:53,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:07:53,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:07:55,467.467 INFO    ] ================================================
[2026-08-25 01:07:55,483.483 INFO    ] Launching Daemon at Tue Aug 25 01:07:55 IST 2026
[2026-08-25 01:07:55,493.493 INFO    ] ================================================
[2026-08-25 01:07:56,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:07:56
[2026-08-25 01:07:56,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:07:56,906.906 INFO    ] Initializing speech engine...
[2026-08-25 01:07:56,914.914 INFO    ] 2026-08-25 01:07:56
[2026-08-25 01:07:57,213.213 INFO    ] 2026-08-25 01:07:57
[2026-08-25 01:07:57,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:07:57,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:07:57,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:07:57,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:07:57,599.599 INFO    ] time= 25/08/2026 01:07:57
[2026-08-25 01:07:57,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:07:57,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:07:57,730.730 INFO    ] No existing commands found in stream
[2026-08-25 01:08:02,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:08:02,745.745 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 01:08:04,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:08:04,135.135 INFO    ] Checking for system updates...
[2026-08-25 01:08:04,175.175 INFO    ] 200
[2026-08-25 01:08:04,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:04,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:04,238.238 INFO    ] No update needed
[2026-08-25 01:08:04,241.241 INFO    ] Checking for camera pi updates...
[2026-08-25 01:08:04,275.275 INFO    ] 200
[2026-08-25 01:08:04,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:04,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:08:04,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:04,369.369 INFO    ] No camera update needed
[2026-08-25 01:08:04,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:08:04,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:08:04,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:08:04,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:08:06,427.427 INFO    ] ================================================
[2026-08-25 01:08:06,442.442 INFO    ] Launching Daemon at Tue Aug 25 01:08:06 IST 2026
[2026-08-25 01:08:06,455.455 INFO    ] ================================================
[2026-08-25 01:08:07,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:08:07
[2026-08-25 01:08:07,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:08:07,876.876 INFO    ] Initializing speech engine...
[2026-08-25 01:08:07,898.898 INFO    ] 2026-08-25 01:08:07
[2026-08-25 01:08:08,154.154 INFO    ] 2026-08-25 01:08:08
[2026-08-25 01:08:08,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:08:08,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:08:08,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:08:08,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:08:08,638.638 INFO    ] time= 25/08/2026 01:08:08
[2026-08-25 01:08:08,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:08:08,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:08:08,850.850 INFO    ] No existing commands found in stream
[2026-08-25 01:08:13,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:08:13,878.878 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 01:08:16,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:08:16,627.627 INFO    ] Checking for system updates...
[2026-08-25 01:08:16,667.667 INFO    ] 200
[2026-08-25 01:08:16,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:16,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:16,731.731 INFO    ] No update needed
[2026-08-25 01:08:16,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 01:08:16,768.768 INFO    ] 200
[2026-08-25 01:08:16,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:16,820.820 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:08:16,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:16,864.864 INFO    ] No camera update needed
[2026-08-25 01:08:16,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:08:16,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:08:16,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:08:16,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:08:18,918.918 INFO    ] ================================================
[2026-08-25 01:08:18,934.934 INFO    ] Launching Daemon at Tue Aug 25 01:08:18 IST 2026
[2026-08-25 01:08:18,944.944 INFO    ] ================================================
[2026-08-25 01:08:19,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:08:19
[2026-08-25 01:08:20,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:08:20,568.568 INFO    ] Initializing speech engine...
[2026-08-25 01:08:20,580.580 INFO    ] 2026-08-25 01:08:20
[2026-08-25 01:08:20,895.895 INFO    ] 2026-08-25 01:08:20
[2026-08-25 01:08:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:08:21,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:08:21,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:08:21,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:08:21,411.411 INFO    ] time= 25/08/2026 01:08:21
[2026-08-25 01:08:21,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:08:21,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:08:21,554.554 INFO    ] No existing commands found in stream
[2026-08-25 01:08:26,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:08:26,584.584 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 01:08:30,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:08:30,507.507 INFO    ] Checking for system updates...
[2026-08-25 01:08:30,548.548 INFO    ] 200
[2026-08-25 01:08:30,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:30,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:30,615.615 INFO    ] No update needed
[2026-08-25 01:08:30,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 01:08:30,652.652 INFO    ] 200
[2026-08-25 01:08:30,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:30,697.697 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:08:30,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:30,746.746 INFO    ] No camera update needed
[2026-08-25 01:08:30,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:08:30,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:08:30,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:08:30,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:08:32,817.817 INFO    ] ================================================
[2026-08-25 01:08:32,832.832 INFO    ] Launching Daemon at Tue Aug 25 01:08:32 IST 2026
[2026-08-25 01:08:32,844.844 INFO    ] ================================================
[2026-08-25 01:08:33,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:08:33
[2026-08-25 01:08:34,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:08:34,432.432 INFO    ] Initializing speech engine...
[2026-08-25 01:08:34,450.450 INFO    ] 2026-08-25 01:08:34
[2026-08-25 01:08:34,700.700 INFO    ] 2026-08-25 01:08:34
[2026-08-25 01:08:34,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:08:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:08:35,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:08:35,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:08:35,181.181 INFO    ] time= 25/08/2026 01:08:35
[2026-08-25 01:08:35,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:08:35,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:08:35,423.423 INFO    ] No existing commands found in stream
[2026-08-25 01:08:40,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:08:40,440.440 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 01:08:41,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:08:41,484.484 INFO    ] Checking for system updates...
[2026-08-25 01:08:41,523.523 INFO    ] 200
[2026-08-25 01:08:41,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:41,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:08:41,581.581 INFO    ] No update needed
[2026-08-25 01:08:41,583.583 INFO    ] Checking for camera pi updates...
[2026-08-25 01:08:41,621.621 INFO    ] 200
[2026-08-25 01:08:41,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:41,663.663 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:08:41,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:08:41,710.710 INFO    ] No camera update needed
[2026-08-25 01:08:41,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:08:41,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:08:41,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:08:41,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:08:43,766.766 INFO    ] ================================================
[2026-08-25 01:08:43,780.780 INFO    ] Launching Daemon at Tue Aug 25 01:08:43 IST 2026
[2026-08-25 01:08:43,791.791 INFO    ] ================================================
[2026-08-25 01:08:44,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:08:44
[2026-08-25 01:08:44,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:08:45,191.191 INFO    ] Initializing speech engine...
[2026-08-25 01:08:45,212.212 INFO    ] 2026-08-25 01:08:45
[2026-08-25 01:08:45,470.470 INFO    ] 2026-08-25 01:08:45
[2026-08-25 01:08:45,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:08:45,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:08:45,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:08:45,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:08:45,960.960 INFO    ] time= 25/08/2026 01:08:45
[2026-08-25 01:08:46,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:08:46,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:08:46,194.194 INFO    ] No existing commands found in stream
[2026-08-25 01:08:51,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:08:51,211.211 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 01:08:55,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:08:55,147.147 INFO    ] Checking for system updates...
[2026-08-25 01:08:55,186.186 INFO    ] 200
[2026-08-25 01:08:55,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:55,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:55,243.243 INFO    ] No update needed
[2026-08-25 01:08:55,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 01:08:55,279.279 INFO    ] 200
[2026-08-25 01:08:55,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:08:55,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:08:55,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:08:55,378.378 INFO    ] No camera update needed
[2026-08-25 01:08:55,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:08:55,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:08:55,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:08:55,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:08:57,434.434 INFO    ] ================================================
[2026-08-25 01:08:57,449.449 INFO    ] Launching Daemon at Tue Aug 25 01:08:57 IST 2026
[2026-08-25 01:08:57,459.459 INFO    ] ================================================
[2026-08-25 01:08:58,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:08:58
[2026-08-25 01:08:58,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:08:58,916.916 INFO    ] Initializing speech engine...
[2026-08-25 01:08:58,923.923 INFO    ] 2026-08-25 01:08:58
[2026-08-25 01:08:59,181.181 INFO    ] 2026-08-25 01:08:59
[2026-08-25 01:08:59,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:08:59,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:08:59,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:08:59,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:08:59,666.666 INFO    ] time= 25/08/2026 01:08:59
[2026-08-25 01:08:59,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:08:59,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:08:59,875.875 INFO    ] No existing commands found in stream
[2026-08-25 01:09:04,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:09:04,897.897 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 01:09:06,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:09:06,606.606 INFO    ] Checking for system updates...
[2026-08-25 01:09:06,641.641 INFO    ] 200
[2026-08-25 01:09:06,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:06,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:06,702.702 INFO    ] No update needed
[2026-08-25 01:09:06,705.705 INFO    ] Checking for camera pi updates...
[2026-08-25 01:09:06,737.737 INFO    ] 200
[2026-08-25 01:09:06,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:06,784.784 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:09:06,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:06,834.834 INFO    ] No camera update needed
[2026-08-25 01:09:06,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:09:06,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:09:06,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:09:06,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:09:08,890.890 INFO    ] ================================================
[2026-08-25 01:09:08,905.905 INFO    ] Launching Daemon at Tue Aug 25 01:09:08 IST 2026
[2026-08-25 01:09:08,916.916 INFO    ] ================================================
[2026-08-25 01:09:09,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:09:09
[2026-08-25 01:09:10,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:09:10,521.521 INFO    ] Initializing speech engine...
[2026-08-25 01:09:10,534.534 INFO    ] 2026-08-25 01:09:10
[2026-08-25 01:09:10,802.802 INFO    ] 2026-08-25 01:09:10
[2026-08-25 01:09:10,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:09:11,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:09:11,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:09:11,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:09:11,261.261 INFO    ] time= 25/08/2026 01:09:11
[2026-08-25 01:09:11,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:09:11,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:09:11,512.512 INFO    ] No existing commands found in stream
[2026-08-25 01:09:16,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:09:16,531.531 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 01:09:17,099.099 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:09:17,102.102 INFO    ] Checking for system updates...
[2026-08-25 01:09:17,139.139 INFO    ] 200
[2026-08-25 01:09:17,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:17,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:17,203.203 INFO    ] No update needed
[2026-08-25 01:09:17,206.206 INFO    ] Checking for camera pi updates...
[2026-08-25 01:09:17,243.243 INFO    ] 200
[2026-08-25 01:09:17,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:17,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:09:17,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:17,341.341 INFO    ] No camera update needed
[2026-08-25 01:09:17,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:09:17,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:09:17,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:09:17,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:09:19,396.396 INFO    ] ================================================
[2026-08-25 01:09:19,411.411 INFO    ] Launching Daemon at Tue Aug 25 01:09:19 IST 2026
[2026-08-25 01:09:19,422.422 INFO    ] ================================================
[2026-08-25 01:09:20,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:09:19
[2026-08-25 01:09:20,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:09:20,879.879 INFO    ] Initializing speech engine...
[2026-08-25 01:09:20,886.886 INFO    ] 2026-08-25 01:09:20
[2026-08-25 01:09:21,147.147 INFO    ] 2026-08-25 01:09:21
[2026-08-25 01:09:21,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:09:21,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:09:21,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:09:21,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:09:21,634.634 INFO    ] time= 25/08/2026 01:09:21
[2026-08-25 01:09:21,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:09:21,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:09:21,827.827 INFO    ] No existing commands found in stream
[2026-08-25 01:09:26,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:09:26,854.854 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 01:09:27,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:09:27,808.808 INFO    ] Checking for system updates...
[2026-08-25 01:09:27,843.843 INFO    ] 200
[2026-08-25 01:09:27,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:27,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:27,900.900 INFO    ] No update needed
[2026-08-25 01:09:27,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 01:09:27,939.939 INFO    ] 200
[2026-08-25 01:09:27,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:27,982.982 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:09:28,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:28,036.036 INFO    ] No camera update needed
[2026-08-25 01:09:28,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:09:28,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:09:28,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:09:28,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:09:30,091.091 INFO    ] ================================================
[2026-08-25 01:09:30,107.107 INFO    ] Launching Daemon at Tue Aug 25 01:09:30 IST 2026
[2026-08-25 01:09:30,118.118 INFO    ] ================================================
[2026-08-25 01:09:30,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:09:30
[2026-08-25 01:09:31,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:09:31,578.578 INFO    ] Initializing speech engine...
[2026-08-25 01:09:31,601.601 INFO    ] 2026-08-25 01:09:31
[2026-08-25 01:09:31,897.897 INFO    ] 2026-08-25 01:09:31
[2026-08-25 01:09:31,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:09:32,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:09:32,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:09:32,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:09:32,281.281 INFO    ] time= 25/08/2026 01:09:32
[2026-08-25 01:09:32,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:09:32,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:09:32,408.408 INFO    ] No existing commands found in stream
[2026-08-25 01:09:37,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:09:37,442.442 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 01:09:40,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:09:40,487.487 INFO    ] Checking for system updates...
[2026-08-25 01:09:40,523.523 INFO    ] 200
[2026-08-25 01:09:40,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:40,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:40,582.582 INFO    ] No update needed
[2026-08-25 01:09:40,585.585 INFO    ] Checking for camera pi updates...
[2026-08-25 01:09:40,620.620 INFO    ] 200
[2026-08-25 01:09:40,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:40,663.663 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:09:40,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:09:40,720.720 INFO    ] No camera update needed
[2026-08-25 01:09:40,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:09:40,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:09:40,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:09:40,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:09:42,780.780 INFO    ] ================================================
[2026-08-25 01:09:42,795.795 INFO    ] Launching Daemon at Tue Aug 25 01:09:42 IST 2026
[2026-08-25 01:09:42,806.806 INFO    ] ================================================
[2026-08-25 01:09:43,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:09:43
[2026-08-25 01:09:44,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:09:44,420.420 INFO    ] Initializing speech engine...
[2026-08-25 01:09:44,427.427 INFO    ] 2026-08-25 01:09:44
[2026-08-25 01:09:44,720.720 INFO    ] 2026-08-25 01:09:44
[2026-08-25 01:09:44,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:09:44,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:09:44,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:09:45,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:09:45,174.174 INFO    ] time= 25/08/2026 01:09:45
[2026-08-25 01:09:45,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:09:45,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:09:45,384.384 INFO    ] No existing commands found in stream
[2026-08-25 01:09:50,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:09:50,415.415 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 01:09:51,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:09:51,505.505 INFO    ] Checking for system updates...
[2026-08-25 01:09:51,544.544 INFO    ] 200
[2026-08-25 01:09:51,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:51,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:09:51,602.602 INFO    ] No update needed
[2026-08-25 01:09:51,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 01:09:51,639.639 INFO    ] 200
[2026-08-25 01:09:51,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:09:51,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:09:51,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:09:51,726.726 INFO    ] No camera update needed
[2026-08-25 01:09:51,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:09:51,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:09:51,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:09:51,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:09:53,781.781 INFO    ] ================================================
[2026-08-25 01:09:53,796.796 INFO    ] Launching Daemon at Tue Aug 25 01:09:53 IST 2026
[2026-08-25 01:09:53,807.807 INFO    ] ================================================
[2026-08-25 01:09:54,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:09:54
[2026-08-25 01:09:55,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:09:55,280.280 INFO    ] Initializing speech engine...
[2026-08-25 01:09:55,302.302 INFO    ] 2026-08-25 01:09:55
[2026-08-25 01:09:55,563.563 INFO    ] 2026-08-25 01:09:55
[2026-08-25 01:09:55,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:09:55,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:09:55,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:09:55,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:09:56,037.037 INFO    ] time= 25/08/2026 01:09:55
[2026-08-25 01:09:56,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:09:56,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:09:56,268.268 INFO    ] No existing commands found in stream
[2026-08-25 01:10:01,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:10:01,287.287 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 01:10:04,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:10:04,307.307 INFO    ] Checking for system updates...
[2026-08-25 01:10:04,357.357 INFO    ] 200
[2026-08-25 01:10:04,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:04,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:04,426.426 INFO    ] No update needed
[2026-08-25 01:10:04,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 01:10:04,465.465 INFO    ] 200
[2026-08-25 01:10:04,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:04,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:10:04,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:04,563.563 INFO    ] No camera update needed
[2026-08-25 01:10:04,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:10:04,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:10:04,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:10:04,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:10:06,627.627 INFO    ] ================================================
[2026-08-25 01:10:06,643.643 INFO    ] Launching Daemon at Tue Aug 25 01:10:06 IST 2026
[2026-08-25 01:10:06,662.662 INFO    ] ================================================
[2026-08-25 01:10:07,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:10:07
[2026-08-25 01:10:07,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:10:08,120.120 INFO    ] Initializing speech engine...
[2026-08-25 01:10:08,126.126 INFO    ] 2026-08-25 01:10:08
[2026-08-25 01:10:08,373.373 INFO    ] 2026-08-25 01:10:08
[2026-08-25 01:10:08,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:10:08,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:10:08,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:10:08,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:10:08,873.873 INFO    ] time= 25/08/2026 01:10:08
[2026-08-25 01:10:08,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:10:08,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:10:09,087.087 INFO    ] No existing commands found in stream
[2026-08-25 01:10:14,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:10:14,106.106 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 01:10:17,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:10:17,301.301 INFO    ] Checking for system updates...
[2026-08-25 01:10:17,337.337 INFO    ] 200
[2026-08-25 01:10:17,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:17,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:17,400.400 INFO    ] No update needed
[2026-08-25 01:10:17,402.402 INFO    ] Checking for camera pi updates...
[2026-08-25 01:10:17,440.440 INFO    ] 200
[2026-08-25 01:10:17,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:17,485.485 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:10:17,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:17,531.531 INFO    ] No camera update needed
[2026-08-25 01:10:17,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:10:17,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:10:17,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:10:17,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:10:19,587.587 INFO    ] ================================================
[2026-08-25 01:10:19,601.601 INFO    ] Launching Daemon at Tue Aug 25 01:10:19 IST 2026
[2026-08-25 01:10:19,612.612 INFO    ] ================================================
[2026-08-25 01:10:20,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:10:20
[2026-08-25 01:10:20,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:10:21,032.032 INFO    ] Initializing speech engine...
[2026-08-25 01:10:21,041.041 INFO    ] 2026-08-25 01:10:21
[2026-08-25 01:10:21,291.291 INFO    ] 2026-08-25 01:10:21
[2026-08-25 01:10:21,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:10:21,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:10:21,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:10:21,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:10:21,770.770 INFO    ] time= 25/08/2026 01:10:21
[2026-08-25 01:10:21,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:10:21,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:10:21,997.997 INFO    ] No existing commands found in stream
[2026-08-25 01:10:27,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:10:27,027.027 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 01:10:28,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:10:28,597.597 INFO    ] Checking for system updates...
[2026-08-25 01:10:28,632.632 INFO    ] 200
[2026-08-25 01:10:28,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:28,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:28,688.688 INFO    ] No update needed
[2026-08-25 01:10:28,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 01:10:28,724.724 INFO    ] 200
[2026-08-25 01:10:28,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:28,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:10:28,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:28,815.815 INFO    ] No camera update needed
[2026-08-25 01:10:28,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:10:28,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:10:28,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:10:28,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:10:30,869.869 INFO    ] ================================================
[2026-08-25 01:10:30,884.884 INFO    ] Launching Daemon at Tue Aug 25 01:10:30 IST 2026
[2026-08-25 01:10:30,895.895 INFO    ] ================================================
[2026-08-25 01:10:31,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:10:31
[2026-08-25 01:10:32,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:10:32,370.370 INFO    ] Initializing speech engine...
[2026-08-25 01:10:32,387.387 INFO    ] 2026-08-25 01:10:32
[2026-08-25 01:10:32,686.686 INFO    ] 2026-08-25 01:10:32
[2026-08-25 01:10:32,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:10:32,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:10:32,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:10:33,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:10:33,068.068 INFO    ] time= 25/08/2026 01:10:33
[2026-08-25 01:10:33,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:10:33,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:10:33,205.205 INFO    ] No existing commands found in stream
[2026-08-25 01:10:38,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:10:38,220.220 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 01:10:38,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:10:38,798.798 INFO    ] Checking for system updates...
[2026-08-25 01:10:38,837.837 INFO    ] 200
[2026-08-25 01:10:38,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:38,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:38,900.900 INFO    ] No update needed
[2026-08-25 01:10:38,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 01:10:38,935.935 INFO    ] 200
[2026-08-25 01:10:38,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:38,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:10:39,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:39,031.031 INFO    ] No camera update needed
[2026-08-25 01:10:39,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:10:39,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:10:39,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:10:39,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:10:41,087.087 INFO    ] ================================================
[2026-08-25 01:10:41,109.109 INFO    ] Launching Daemon at Tue Aug 25 01:10:41 IST 2026
[2026-08-25 01:10:41,120.120 INFO    ] ================================================
[2026-08-25 01:10:41,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:10:41
[2026-08-25 01:10:42,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:10:42,572.572 INFO    ] Initializing speech engine...
[2026-08-25 01:10:42,585.585 INFO    ] 2026-08-25 01:10:42
[2026-08-25 01:10:42,840.840 INFO    ] 2026-08-25 01:10:42
[2026-08-25 01:10:42,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:10:43,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:10:43,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:10:43,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:10:43,380.380 INFO    ] time= 25/08/2026 01:10:43
[2026-08-25 01:10:43,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:10:43,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:10:43,531.531 INFO    ] No existing commands found in stream
[2026-08-25 01:10:48,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:10:48,549.549 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 01:10:52,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:10:52,133.133 INFO    ] Checking for system updates...
[2026-08-25 01:10:52,170.170 INFO    ] 200
[2026-08-25 01:10:52,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:52,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:52,228.228 INFO    ] No update needed
[2026-08-25 01:10:52,230.230 INFO    ] Checking for camera pi updates...
[2026-08-25 01:10:52,268.268 INFO    ] 200
[2026-08-25 01:10:52,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:10:52,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:10:52,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:10:52,358.358 INFO    ] No camera update needed
[2026-08-25 01:10:52,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:10:52,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:10:52,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:10:52,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:10:54,415.415 INFO    ] ================================================
[2026-08-25 01:10:54,430.430 INFO    ] Launching Daemon at Tue Aug 25 01:10:54 IST 2026
[2026-08-25 01:10:54,440.440 INFO    ] ================================================
[2026-08-25 01:10:55,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:10:55
[2026-08-25 01:10:55,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:10:55,891.891 INFO    ] Initializing speech engine...
[2026-08-25 01:10:55,899.899 INFO    ] 2026-08-25 01:10:55
[2026-08-25 01:10:56,160.160 INFO    ] 2026-08-25 01:10:56
[2026-08-25 01:10:56,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:10:56,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:10:56,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:10:56,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:10:56,651.651 INFO    ] time= 25/08/2026 01:10:56
[2026-08-25 01:10:56,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:10:56,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:10:56,856.856 INFO    ] No existing commands found in stream
[2026-08-25 01:11:01,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:11:01,872.872 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 01:11:03,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:11:03,506.506 INFO    ] Checking for system updates...
[2026-08-25 01:11:03,541.541 INFO    ] 200
[2026-08-25 01:11:03,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:03,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:11:03,601.601 INFO    ] No update needed
[2026-08-25 01:11:03,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 01:11:03,637.637 INFO    ] 200
[2026-08-25 01:11:03,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:03,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:11:03,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:11:03,732.732 INFO    ] No camera update needed
[2026-08-25 01:11:03,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:11:03,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:11:03,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:11:03,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:11:05,786.786 INFO    ] ================================================
[2026-08-25 01:11:05,801.801 INFO    ] Launching Daemon at Tue Aug 25 01:11:05 IST 2026
[2026-08-25 01:11:05,812.812 INFO    ] ================================================
[2026-08-25 01:11:06,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:11:06
[2026-08-25 01:11:07,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:11:07,399.399 INFO    ] Initializing speech engine...
[2026-08-25 01:11:07,413.413 INFO    ] 2026-08-25 01:11:07
[2026-08-25 01:11:07,699.699 INFO    ] 2026-08-25 01:11:07
[2026-08-25 01:11:07,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:11:07,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:11:07,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:11:08,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:11:08,187.187 INFO    ] time= 25/08/2026 01:11:08
[2026-08-25 01:11:08,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:11:08,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:11:08,398.398 INFO    ] No existing commands found in stream
[2026-08-25 01:11:13,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:11:13,424.424 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 01:11:14,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:11:14,938.938 INFO    ] Checking for system updates...
[2026-08-25 01:11:15,042.042 INFO    ] 200
[2026-08-25 01:11:15,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:15,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:11:15,099.099 INFO    ] No update needed
[2026-08-25 01:11:15,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 01:11:15,139.139 INFO    ] 200
[2026-08-25 01:11:15,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:15,187.187 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:11:15,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:11:15,234.234 INFO    ] No camera update needed
[2026-08-25 01:11:15,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:11:15,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:11:15,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:11:15,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:11:17,290.290 INFO    ] ================================================
[2026-08-25 01:11:17,306.306 INFO    ] Launching Daemon at Tue Aug 25 01:11:17 IST 2026
[2026-08-25 01:11:17,316.316 INFO    ] ================================================
[2026-08-25 01:11:17,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:11:17
[2026-08-25 01:11:18,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:11:18,729.729 INFO    ] Initializing speech engine...
[2026-08-25 01:11:18,748.748 INFO    ] 2026-08-25 01:11:18
[2026-08-25 01:11:18,999.999 INFO    ] 2026-08-25 01:11:18
[2026-08-25 01:11:19,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:11:19,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:11:19,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:11:19,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:11:19,374.374 INFO    ] time= 25/08/2026 01:11:19
[2026-08-25 01:11:19,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:11:19,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:11:19,554.554 INFO    ] No existing commands found in stream
[2026-08-25 01:11:24,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:11:24,582.582 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 01:11:26,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:11:26,675.675 INFO    ] Checking for system updates...
[2026-08-25 01:11:26,711.711 INFO    ] 200
[2026-08-25 01:11:26,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:26,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:11:26,771.771 INFO    ] No update needed
[2026-08-25 01:11:26,774.774 INFO    ] Checking for camera pi updates...
[2026-08-25 01:11:26,808.808 INFO    ] 200
[2026-08-25 01:11:26,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:26,861.861 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:11:26,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:11:26,908.908 INFO    ] No camera update needed
[2026-08-25 01:11:26,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:11:26,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:11:26,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:11:26,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:11:28,965.965 INFO    ] ================================================
[2026-08-25 01:11:28,979.979 INFO    ] Launching Daemon at Tue Aug 25 01:11:28 IST 2026
[2026-08-25 01:11:28,990.990 INFO    ] ================================================
[2026-08-25 01:11:29,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:11:29
[2026-08-25 01:11:30,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:11:30,399.399 INFO    ] Initializing speech engine...
[2026-08-25 01:11:30,422.422 INFO    ] 2026-08-25 01:11:30
[2026-08-25 01:11:30,697.697 INFO    ] 2026-08-25 01:11:30
[2026-08-25 01:11:30,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:11:31,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:11:31,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:11:31,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:11:31,277.277 INFO    ] time= 25/08/2026 01:11:31
[2026-08-25 01:11:31,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:11:31,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:11:31,416.416 INFO    ] No existing commands found in stream
[2026-08-25 01:11:36,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:11:36,448.448 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 01:11:39,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:11:39,030.030 INFO    ] Checking for system updates...
[2026-08-25 01:11:39,070.070 INFO    ] 200
[2026-08-25 01:11:39,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:39,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:11:39,135.135 INFO    ] No update needed
[2026-08-25 01:11:39,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 01:11:39,175.175 INFO    ] 200
[2026-08-25 01:11:39,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:39,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:11:39,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:11:39,274.274 INFO    ] No camera update needed
[2026-08-25 01:11:39,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:11:39,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:11:39,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:11:39,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:11:41,329.329 INFO    ] ================================================
[2026-08-25 01:11:41,344.344 INFO    ] Launching Daemon at Tue Aug 25 01:11:41 IST 2026
[2026-08-25 01:11:41,354.354 INFO    ] ================================================
[2026-08-25 01:11:41,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:11:41
[2026-08-25 01:11:42,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:11:42,760.760 INFO    ] Initializing speech engine...
[2026-08-25 01:11:42,768.768 INFO    ] 2026-08-25 01:11:42
[2026-08-25 01:11:43,059.059 INFO    ] 2026-08-25 01:11:43
[2026-08-25 01:11:43,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:11:43,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:11:43,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:11:43,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:11:43,432.432 INFO    ] time= 25/08/2026 01:11:43
[2026-08-25 01:11:43,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:11:43,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:11:43,553.553 INFO    ] No existing commands found in stream
[2026-08-25 01:11:48,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:11:48,568.568 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 01:11:52,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:11:52,146.146 INFO    ] Checking for system updates...
[2026-08-25 01:11:52,182.182 INFO    ] 200
[2026-08-25 01:11:52,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:52,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:11:52,246.246 INFO    ] No update needed
[2026-08-25 01:11:52,249.249 INFO    ] Checking for camera pi updates...
[2026-08-25 01:11:52,283.283 INFO    ] 200
[2026-08-25 01:11:52,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:11:52,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:11:52,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:11:52,381.381 INFO    ] No camera update needed
[2026-08-25 01:11:52,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:11:52,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:11:52,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:11:52,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:11:54,439.439 INFO    ] ================================================
[2026-08-25 01:11:54,454.454 INFO    ] Launching Daemon at Tue Aug 25 01:11:54 IST 2026
[2026-08-25 01:11:54,465.465 INFO    ] ================================================
[2026-08-25 01:11:55,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:11:55
[2026-08-25 01:11:55,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:11:55,926.926 INFO    ] Initializing speech engine...
[2026-08-25 01:11:55,937.937 INFO    ] 2026-08-25 01:11:55
[2026-08-25 01:11:56,216.216 INFO    ] 2026-08-25 01:11:56
[2026-08-25 01:11:56,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:11:56,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:11:56,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:11:56,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:11:56,746.746 INFO    ] time= 25/08/2026 01:11:56
[2026-08-25 01:11:56,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:11:56,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:11:56,887.887 INFO    ] No existing commands found in stream
[2026-08-25 01:12:01,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:12:01,911.911 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 01:12:02,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:12:02,904.904 INFO    ] Checking for system updates...
[2026-08-25 01:12:02,964.964 INFO    ] 200
[2026-08-25 01:12:02,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:03,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:12:03,058.058 INFO    ] No update needed
[2026-08-25 01:12:03,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 01:12:03,099.099 INFO    ] 200
[2026-08-25 01:12:03,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:03,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:12:03,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:12:03,226.226 INFO    ] No camera update needed
[2026-08-25 01:12:03,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:12:03,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:12:03,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:12:03,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:12:05,288.288 INFO    ] ================================================
[2026-08-25 01:12:05,304.304 INFO    ] Launching Daemon at Tue Aug 25 01:12:05 IST 2026
[2026-08-25 01:12:05,315.315 INFO    ] ================================================
[2026-08-25 01:12:05,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:12:05
[2026-08-25 01:12:06,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:12:06,776.776 INFO    ] Initializing speech engine...
[2026-08-25 01:12:06,785.785 INFO    ] 2026-08-25 01:12:06
[2026-08-25 01:12:07,056.056 INFO    ] 2026-08-25 01:12:07
[2026-08-25 01:12:07,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:12:07,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:12:07,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:12:07,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:12:07,529.529 INFO    ] time= 25/08/2026 01:12:07
[2026-08-25 01:12:07,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:12:07,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:12:07,745.745 INFO    ] No existing commands found in stream
[2026-08-25 01:12:12,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:12:12,760.760 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 01:12:16,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:12:16,387.387 INFO    ] Checking for system updates...
[2026-08-25 01:12:16,422.422 INFO    ] 200
[2026-08-25 01:12:16,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:16,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:12:16,478.478 INFO    ] No update needed
[2026-08-25 01:12:16,481.481 INFO    ] Checking for camera pi updates...
[2026-08-25 01:12:16,517.517 INFO    ] 200
[2026-08-25 01:12:16,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:16,566.566 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:12:16,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:12:16,710.710 INFO    ] No camera update needed
[2026-08-25 01:12:16,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:12:16,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:12:16,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:12:16,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:12:18,766.766 INFO    ] ================================================
[2026-08-25 01:12:18,781.781 INFO    ] Launching Daemon at Tue Aug 25 01:12:18 IST 2026
[2026-08-25 01:12:18,791.791 INFO    ] ================================================
[2026-08-25 01:12:19,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:12:19
[2026-08-25 01:12:19,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:12:20,229.229 INFO    ] Initializing speech engine...
[2026-08-25 01:12:20,246.246 INFO    ] 2026-08-25 01:12:20
[2026-08-25 01:12:20,521.521 INFO    ] 2026-08-25 01:12:20
[2026-08-25 01:12:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:12:20,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:12:20,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:12:20,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:12:21,008.008 INFO    ] time= 25/08/2026 01:12:20
[2026-08-25 01:12:21,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:12:21,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:12:21,252.252 INFO    ] No existing commands found in stream
[2026-08-25 01:12:26,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:12:26,283.283 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 01:12:26,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:12:26,738.738 INFO    ] Checking for system updates...
[2026-08-25 01:12:26,773.773 INFO    ] 200
[2026-08-25 01:12:26,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:26,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:12:26,830.830 INFO    ] No update needed
[2026-08-25 01:12:26,833.833 INFO    ] Checking for camera pi updates...
[2026-08-25 01:12:26,867.867 INFO    ] 200
[2026-08-25 01:12:26,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:26,915.915 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:12:26,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:12:26,969.969 INFO    ] No camera update needed
[2026-08-25 01:12:26,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:12:26,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:12:26,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:12:26,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:12:29,025.025 INFO    ] ================================================
[2026-08-25 01:12:29,040.040 INFO    ] Launching Daemon at Tue Aug 25 01:12:29 IST 2026
[2026-08-25 01:12:29,051.051 INFO    ] ================================================
[2026-08-25 01:12:29,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:12:29
[2026-08-25 01:12:30,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:12:30,615.615 INFO    ] Initializing speech engine...
[2026-08-25 01:12:30,621.621 INFO    ] 2026-08-25 01:12:30
[2026-08-25 01:12:30,909.909 INFO    ] 2026-08-25 01:12:30
[2026-08-25 01:12:30,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:12:31,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:12:31,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:12:31,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:12:31,375.375 INFO    ] time= 25/08/2026 01:12:31
[2026-08-25 01:12:31,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:12:31,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:12:31,579.579 INFO    ] No existing commands found in stream
[2026-08-25 01:12:36,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:12:36,608.608 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 01:12:40,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:12:40,242.242 INFO    ] Checking for system updates...
[2026-08-25 01:12:40,278.278 INFO    ] 200
[2026-08-25 01:12:40,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:40,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:12:40,338.338 INFO    ] No update needed
[2026-08-25 01:12:40,340.340 INFO    ] Checking for camera pi updates...
[2026-08-25 01:12:40,375.375 INFO    ] 200
[2026-08-25 01:12:40,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:40,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:12:40,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:12:40,473.473 INFO    ] No camera update needed
[2026-08-25 01:12:40,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:12:40,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:12:40,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:12:40,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:12:42,529.529 INFO    ] ================================================
[2026-08-25 01:12:42,544.544 INFO    ] Launching Daemon at Tue Aug 25 01:12:42 IST 2026
[2026-08-25 01:12:42,554.554 INFO    ] ================================================
[2026-08-25 01:12:43,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:12:43
[2026-08-25 01:12:43,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:12:43,983.983 INFO    ] Initializing speech engine...
[2026-08-25 01:12:44,009.009 INFO    ] 2026-08-25 01:12:43
[2026-08-25 01:12:44,273.273 INFO    ] 2026-08-25 01:12:44
[2026-08-25 01:12:44,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:12:44,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:12:44,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:12:44,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:12:44,650.650 INFO    ] time= 25/08/2026 01:12:44
[2026-08-25 01:12:44,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:12:44,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:12:44,851.851 INFO    ] No existing commands found in stream
[2026-08-25 01:12:49,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:12:49,864.864 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 01:12:51,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:12:51,820.820 INFO    ] Checking for system updates...
[2026-08-25 01:12:51,855.855 INFO    ] 200
[2026-08-25 01:12:51,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:51,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:12:51,915.915 INFO    ] No update needed
[2026-08-25 01:12:51,917.917 INFO    ] Checking for camera pi updates...
[2026-08-25 01:12:51,950.950 INFO    ] 200
[2026-08-25 01:12:51,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:12:51,998.998 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:12:52,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:12:52,045.045 INFO    ] No camera update needed
[2026-08-25 01:12:52,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:12:52,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:12:52,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:12:52,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:12:54,100.100 INFO    ] ================================================
[2026-08-25 01:12:54,116.116 INFO    ] Launching Daemon at Tue Aug 25 01:12:54 IST 2026
[2026-08-25 01:12:54,126.126 INFO    ] ================================================
[2026-08-25 01:12:54,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:12:54
[2026-08-25 01:12:55,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:12:55,771.771 INFO    ] Initializing speech engine...
[2026-08-25 01:12:55,780.780 INFO    ] 2026-08-25 01:12:55
[2026-08-25 01:12:56,062.062 INFO    ] 2026-08-25 01:12:56
[2026-08-25 01:12:56,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:12:56,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:12:56,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:12:56,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:12:56,522.522 INFO    ] time= 25/08/2026 01:12:56
[2026-08-25 01:12:56,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:12:56,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:12:56,770.770 INFO    ] No existing commands found in stream
[2026-08-25 01:13:01,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:13:01,798.798 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 01:13:03,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:13:03,618.618 INFO    ] Checking for system updates...
[2026-08-25 01:13:03,657.657 INFO    ] 200
[2026-08-25 01:13:03,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:03,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:13:03,716.716 INFO    ] No update needed
[2026-08-25 01:13:03,718.718 INFO    ] Checking for camera pi updates...
[2026-08-25 01:13:03,754.754 INFO    ] 200
[2026-08-25 01:13:03,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:03,801.801 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:13:03,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:13:03,852.852 INFO    ] No camera update needed
[2026-08-25 01:13:03,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:13:03,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:13:03,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:13:03,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:13:05,908.908 INFO    ] ================================================
[2026-08-25 01:13:05,922.922 INFO    ] Launching Daemon at Tue Aug 25 01:13:05 IST 2026
[2026-08-25 01:13:05,933.933 INFO    ] ================================================
[2026-08-25 01:13:06,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:13:06
[2026-08-25 01:13:07,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:13:07,531.531 INFO    ] Initializing speech engine...
[2026-08-25 01:13:07,542.542 INFO    ] 2026-08-25 01:13:07
[2026-08-25 01:13:07,846.846 INFO    ] 2026-08-25 01:13:07
[2026-08-25 01:13:07,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:13:08,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:13:08,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:13:08,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:13:08,265.265 INFO    ] time= 25/08/2026 01:13:08
[2026-08-25 01:13:08,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:13:08,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:13:08,486.486 INFO    ] No existing commands found in stream
[2026-08-25 01:13:13,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:13:13,517.517 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 01:13:16,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:13:16,517.517 INFO    ] Checking for system updates...
[2026-08-25 01:13:16,554.554 INFO    ] 200
[2026-08-25 01:13:16,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:16,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:16,613.613 INFO    ] No update needed
[2026-08-25 01:13:16,616.616 INFO    ] Checking for camera pi updates...
[2026-08-25 01:13:16,650.650 INFO    ] 200
[2026-08-25 01:13:16,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:16,694.694 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:13:16,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:16,742.742 INFO    ] No camera update needed
[2026-08-25 01:13:16,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:13:16,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:13:16,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:13:16,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:13:18,799.799 INFO    ] ================================================
[2026-08-25 01:13:18,814.814 INFO    ] Launching Daemon at Tue Aug 25 01:13:18 IST 2026
[2026-08-25 01:13:18,825.825 INFO    ] ================================================
[2026-08-25 01:13:19,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:13:19
[2026-08-25 01:13:19,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:13:20,231.231 INFO    ] Initializing speech engine...
[2026-08-25 01:13:20,245.245 INFO    ] 2026-08-25 01:13:20
[2026-08-25 01:13:20,526.526 INFO    ] 2026-08-25 01:13:20
[2026-08-25 01:13:20,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:13:20,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:13:20,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:13:20,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:13:20,932.932 INFO    ] time= 25/08/2026 01:13:20
[2026-08-25 01:13:20,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:13:20,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:13:21,017.017 INFO    ] No existing commands found in stream
[2026-08-25 01:13:26,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:13:26,035.035 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 01:13:26,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:13:26,975.975 INFO    ] Checking for system updates...
[2026-08-25 01:13:27,013.013 INFO    ] 200
[2026-08-25 01:13:27,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:27,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:27,075.075 INFO    ] No update needed
[2026-08-25 01:13:27,078.078 INFO    ] Checking for camera pi updates...
[2026-08-25 01:13:27,110.110 INFO    ] 200
[2026-08-25 01:13:27,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:27,154.154 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:13:27,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:27,202.202 INFO    ] No camera update needed
[2026-08-25 01:13:27,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:13:27,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:13:27,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:13:27,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:13:29,256.256 INFO    ] ================================================
[2026-08-25 01:13:29,272.272 INFO    ] Launching Daemon at Tue Aug 25 01:13:29 IST 2026
[2026-08-25 01:13:29,283.283 INFO    ] ================================================
[2026-08-25 01:13:29,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:13:29
[2026-08-25 01:13:30,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:13:30,735.735 INFO    ] Initializing speech engine...
[2026-08-25 01:13:30,741.741 INFO    ] 2026-08-25 01:13:30
[2026-08-25 01:13:31,006.006 INFO    ] 2026-08-25 01:13:31
[2026-08-25 01:13:31,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:13:31,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:13:31,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:13:31,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:13:31,414.414 INFO    ] time= 25/08/2026 01:13:31
[2026-08-25 01:13:31,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:13:31,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:13:31,592.592 INFO    ] No existing commands found in stream
[2026-08-25 01:13:36,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:13:36,626.626 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 01:13:37,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:13:37,438.438 INFO    ] Checking for system updates...
[2026-08-25 01:13:37,473.473 INFO    ] 200
[2026-08-25 01:13:37,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:37,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:13:37,536.536 INFO    ] No update needed
[2026-08-25 01:13:37,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 01:13:37,574.574 INFO    ] 200
[2026-08-25 01:13:37,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:37,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:13:37,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:13:37,669.669 INFO    ] No camera update needed
[2026-08-25 01:13:37,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:13:37,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:13:37,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:13:37,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:13:39,724.724 INFO    ] ================================================
[2026-08-25 01:13:39,740.740 INFO    ] Launching Daemon at Tue Aug 25 01:13:39 IST 2026
[2026-08-25 01:13:39,750.750 INFO    ] ================================================
[2026-08-25 01:13:40,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:13:40
[2026-08-25 01:13:40,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:13:41,205.205 INFO    ] Initializing speech engine...
[2026-08-25 01:13:41,213.213 INFO    ] 2026-08-25 01:13:41
[2026-08-25 01:13:41,479.479 INFO    ] 2026-08-25 01:13:41
[2026-08-25 01:13:41,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:13:41,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:13:41,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:13:41,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:13:41,879.879 INFO    ] time= 25/08/2026 01:13:41
[2026-08-25 01:13:41,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:13:41,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:13:41,966.966 INFO    ] No existing commands found in stream
[2026-08-25 01:13:46,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:13:46,981.981 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 01:13:48,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:13:48,439.439 INFO    ] Checking for system updates...
[2026-08-25 01:13:48,475.475 INFO    ] 200
[2026-08-25 01:13:48,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:48,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:48,533.533 INFO    ] No update needed
[2026-08-25 01:13:48,535.535 INFO    ] Checking for camera pi updates...
[2026-08-25 01:13:48,568.568 INFO    ] 200
[2026-08-25 01:13:48,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:48,615.615 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:13:48,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:48,665.665 INFO    ] No camera update needed
[2026-08-25 01:13:48,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:13:48,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:13:48,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:13:48,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:13:50,720.720 INFO    ] ================================================
[2026-08-25 01:13:50,739.739 INFO    ] Launching Daemon at Tue Aug 25 01:13:50 IST 2026
[2026-08-25 01:13:50,750.750 INFO    ] ================================================
[2026-08-25 01:13:51,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:13:51
[2026-08-25 01:13:51,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:13:52,147.147 INFO    ] Initializing speech engine...
[2026-08-25 01:13:52,153.153 INFO    ] 2026-08-25 01:13:52
[2026-08-25 01:13:52,426.426 INFO    ] 2026-08-25 01:13:52
[2026-08-25 01:13:52,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:13:52,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:13:52,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:13:52,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:13:52,802.802 INFO    ] time= 25/08/2026 01:13:52
[2026-08-25 01:13:52,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:13:52,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:13:52,969.969 INFO    ] No existing commands found in stream
[2026-08-25 01:13:57,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:13:57,997.997 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 01:13:59,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:13:59,377.377 INFO    ] Checking for system updates...
[2026-08-25 01:13:59,411.411 INFO    ] 200
[2026-08-25 01:13:59,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:59,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:59,473.473 INFO    ] No update needed
[2026-08-25 01:13:59,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 01:13:59,511.511 INFO    ] 200
[2026-08-25 01:13:59,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:13:59,553.553 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:13:59,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:13:59,603.603 INFO    ] No camera update needed
[2026-08-25 01:13:59,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:13:59,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:13:59,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:13:59,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:14:01,661.661 INFO    ] ================================================
[2026-08-25 01:14:01,688.688 INFO    ] Launching Daemon at Tue Aug 25 01:14:01 IST 2026
[2026-08-25 01:14:01,702.702 INFO    ] ================================================
[2026-08-25 01:14:02,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:14:02
[2026-08-25 01:14:03,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:14:03,444.444 INFO    ] Initializing speech engine...
[2026-08-25 01:14:03,455.455 INFO    ] 2026-08-25 01:14:03
[2026-08-25 01:14:03,727.727 INFO    ] 2026-08-25 01:14:03
[2026-08-25 01:14:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:14:04,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:14:04,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:14:04,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:14:04,289.289 INFO    ] time= 25/08/2026 01:14:04
[2026-08-25 01:14:04,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:14:04,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:14:04,446.446 INFO    ] No existing commands found in stream
[2026-08-25 01:14:09,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:14:09,465.465 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 01:14:13,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:14:13,827.827 INFO    ] Checking for system updates...
[2026-08-25 01:14:13,867.867 INFO    ] 200
[2026-08-25 01:14:13,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:13,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:13,931.931 INFO    ] No update needed
[2026-08-25 01:14:13,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 01:14:13,968.968 INFO    ] 200
[2026-08-25 01:14:13,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:14,012.012 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:14:14,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:14,061.061 INFO    ] No camera update needed
[2026-08-25 01:14:14,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:14:14,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:14:14,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:14:14,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:14:16,118.118 INFO    ] ================================================
[2026-08-25 01:14:16,133.133 INFO    ] Launching Daemon at Tue Aug 25 01:14:16 IST 2026
[2026-08-25 01:14:16,144.144 INFO    ] ================================================
[2026-08-25 01:14:16,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:14:16
[2026-08-25 01:14:17,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:14:17,599.599 INFO    ] Initializing speech engine...
[2026-08-25 01:14:17,604.604 INFO    ] 2026-08-25 01:14:17
[2026-08-25 01:14:17,865.865 INFO    ] 2026-08-25 01:14:17
[2026-08-25 01:14:17,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:14:18,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:14:18,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:14:18,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:14:18,362.362 INFO    ] time= 25/08/2026 01:14:18
[2026-08-25 01:14:18,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:14:18,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:14:18,560.560 INFO    ] No existing commands found in stream
[2026-08-25 01:14:23,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:14:23,579.579 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 01:14:28,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:14:28,008.008 INFO    ] Checking for system updates...
[2026-08-25 01:14:28,043.043 INFO    ] 200
[2026-08-25 01:14:28,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:28,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:28,100.100 INFO    ] No update needed
[2026-08-25 01:14:28,102.102 INFO    ] Checking for camera pi updates...
[2026-08-25 01:14:28,139.139 INFO    ] 200
[2026-08-25 01:14:28,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:28,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:14:28,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:28,329.329 INFO    ] No camera update needed
[2026-08-25 01:14:28,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:14:28,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:14:28,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:14:28,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:14:30,386.386 INFO    ] ================================================
[2026-08-25 01:14:30,401.401 INFO    ] Launching Daemon at Tue Aug 25 01:14:30 IST 2026
[2026-08-25 01:14:30,412.412 INFO    ] ================================================
[2026-08-25 01:14:30,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:14:30
[2026-08-25 01:14:31,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:14:31,840.840 INFO    ] Initializing speech engine...
[2026-08-25 01:14:31,863.863 INFO    ] 2026-08-25 01:14:31
[2026-08-25 01:14:32,133.133 INFO    ] 2026-08-25 01:14:32
[2026-08-25 01:14:32,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:14:32,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:14:32,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:14:32,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:14:32,525.525 INFO    ] time= 25/08/2026 01:14:32
[2026-08-25 01:14:32,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:14:32,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:14:32,704.704 INFO    ] No existing commands found in stream
[2026-08-25 01:14:37,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:14:37,738.738 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 01:14:41,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:14:41,817.817 INFO    ] Checking for system updates...
[2026-08-25 01:14:41,855.855 INFO    ] 200
[2026-08-25 01:14:41,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:41,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:41,917.917 INFO    ] No update needed
[2026-08-25 01:14:41,919.919 INFO    ] Checking for camera pi updates...
[2026-08-25 01:14:41,952.952 INFO    ] 200
[2026-08-25 01:14:41,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:41,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:14:42,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:42,045.045 INFO    ] No camera update needed
[2026-08-25 01:14:42,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:14:42,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:14:42,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:14:42,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:14:44,102.102 INFO    ] ================================================
[2026-08-25 01:14:44,117.117 INFO    ] Launching Daemon at Tue Aug 25 01:14:44 IST 2026
[2026-08-25 01:14:44,127.127 INFO    ] ================================================
[2026-08-25 01:14:44,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:14:44
[2026-08-25 01:14:45,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:14:45,545.545 INFO    ] Initializing speech engine...
[2026-08-25 01:14:45,567.567 INFO    ] 2026-08-25 01:14:45
[2026-08-25 01:14:45,829.829 INFO    ] 2026-08-25 01:14:45
[2026-08-25 01:14:45,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:14:46,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:14:46,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:14:46,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:14:46,239.239 INFO    ] time= 25/08/2026 01:14:46
[2026-08-25 01:14:46,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:14:46,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:14:46,397.397 INFO    ] No existing commands found in stream
[2026-08-25 01:14:51,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:14:51,430.430 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 01:14:54,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:14:54,235.235 INFO    ] Checking for system updates...
[2026-08-25 01:14:54,271.271 INFO    ] 200
[2026-08-25 01:14:54,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:54,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:54,330.330 INFO    ] No update needed
[2026-08-25 01:14:54,332.332 INFO    ] Checking for camera pi updates...
[2026-08-25 01:14:54,365.365 INFO    ] 200
[2026-08-25 01:14:54,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:14:54,407.407 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:14:54,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:14:54,462.462 INFO    ] No camera update needed
[2026-08-25 01:14:54,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:14:54,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:14:54,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:14:54,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:14:56,516.516 INFO    ] ================================================
[2026-08-25 01:14:56,536.536 INFO    ] Launching Daemon at Tue Aug 25 01:14:56 IST 2026
[2026-08-25 01:14:56,547.547 INFO    ] ================================================
[2026-08-25 01:14:57,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:14:57
[2026-08-25 01:14:57,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:14:57,996.996 INFO    ] Initializing speech engine...
[2026-08-25 01:14:58,004.004 INFO    ] 2026-08-25 01:14:57
[2026-08-25 01:14:58,253.253 INFO    ] 2026-08-25 01:14:58
[2026-08-25 01:14:58,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:14:58,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:14:58,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:14:58,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:14:58,732.732 INFO    ] time= 25/08/2026 01:14:58
[2026-08-25 01:14:58,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:14:58,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:14:58,946.946 INFO    ] No existing commands found in stream
[2026-08-25 01:15:03,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:15:03,974.974 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 01:15:06,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:15:06,007.007 INFO    ] Checking for system updates...
[2026-08-25 01:15:06,056.056 INFO    ] 200
[2026-08-25 01:15:06,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:06,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:06,119.119 INFO    ] No update needed
[2026-08-25 01:15:06,122.122 INFO    ] Checking for camera pi updates...
[2026-08-25 01:15:06,159.159 INFO    ] 200
[2026-08-25 01:15:06,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:06,206.206 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:15:06,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:06,265.265 INFO    ] No camera update needed
[2026-08-25 01:15:06,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:15:06,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:15:06,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:15:06,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:15:08,320.320 INFO    ] ================================================
[2026-08-25 01:15:08,336.336 INFO    ] Launching Daemon at Tue Aug 25 01:15:08 IST 2026
[2026-08-25 01:15:08,346.346 INFO    ] ================================================
[2026-08-25 01:15:08,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:15:08
[2026-08-25 01:15:09,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:15:09,947.947 INFO    ] Initializing speech engine...
[2026-08-25 01:15:09,955.955 INFO    ] 2026-08-25 01:15:09
[2026-08-25 01:15:10,231.231 INFO    ] 2026-08-25 01:15:10
[2026-08-25 01:15:10,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:15:10,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:15:10,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:15:10,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:15:10,727.727 INFO    ] time= 25/08/2026 01:15:10
[2026-08-25 01:15:10,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:15:10,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:15:10,944.944 INFO    ] No existing commands found in stream
[2026-08-25 01:15:15,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:15:15,963.963 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 01:15:18,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:15:18,798.798 INFO    ] Checking for system updates...
[2026-08-25 01:15:18,835.835 INFO    ] 200
[2026-08-25 01:15:18,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:18,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:18,899.899 INFO    ] No update needed
[2026-08-25 01:15:18,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 01:15:18,934.934 INFO    ] 200
[2026-08-25 01:15:18,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:18,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:15:19,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:19,029.029 INFO    ] No camera update needed
[2026-08-25 01:15:19,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:15:19,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:15:19,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:15:19,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:15:21,084.084 INFO    ] ================================================
[2026-08-25 01:15:21,100.100 INFO    ] Launching Daemon at Tue Aug 25 01:15:21 IST 2026
[2026-08-25 01:15:21,111.111 INFO    ] ================================================
[2026-08-25 01:15:21,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:15:21
[2026-08-25 01:15:22,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:15:22,679.679 INFO    ] Initializing speech engine...
[2026-08-25 01:15:22,689.689 INFO    ] 2026-08-25 01:15:22
[2026-08-25 01:15:22,970.970 INFO    ] 2026-08-25 01:15:22
[2026-08-25 01:15:23,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:15:23,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:15:23,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:15:23,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:15:23,459.459 INFO    ] time= 25/08/2026 01:15:23
[2026-08-25 01:15:23,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:15:23,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:15:23,659.659 INFO    ] No existing commands found in stream
[2026-08-25 01:15:28,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:15:28,679.679 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 01:15:33,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:15:33,116.116 INFO    ] Checking for system updates...
[2026-08-25 01:15:33,152.152 INFO    ] 200
[2026-08-25 01:15:33,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:33,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:33,212.212 INFO    ] No update needed
[2026-08-25 01:15:33,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 01:15:33,252.252 INFO    ] 200
[2026-08-25 01:15:33,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:33,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:15:33,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:33,360.360 INFO    ] No camera update needed
[2026-08-25 01:15:33,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:15:33,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:15:33,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:15:33,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:15:35,417.417 INFO    ] ================================================
[2026-08-25 01:15:35,432.432 INFO    ] Launching Daemon at Tue Aug 25 01:15:35 IST 2026
[2026-08-25 01:15:35,444.444 INFO    ] ================================================
[2026-08-25 01:15:36,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:15:36
[2026-08-25 01:15:36,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:15:36,869.869 INFO    ] Initializing speech engine...
[2026-08-25 01:15:36,877.877 INFO    ] 2026-08-25 01:15:36
[2026-08-25 01:15:37,175.175 INFO    ] 2026-08-25 01:15:37
[2026-08-25 01:15:37,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:15:37,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:15:37,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:15:37,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:15:37,573.573 INFO    ] time= 25/08/2026 01:15:37
[2026-08-25 01:15:37,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:15:37,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:15:37,678.678 INFO    ] No existing commands found in stream
[2026-08-25 01:15:42,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:15:42,693.693 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 01:15:45,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:15:45,287.287 INFO    ] Checking for system updates...
[2026-08-25 01:15:45,322.322 INFO    ] 200
[2026-08-25 01:15:45,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:45,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:45,382.382 INFO    ] No update needed
[2026-08-25 01:15:45,385.385 INFO    ] Checking for camera pi updates...
[2026-08-25 01:15:45,422.422 INFO    ] 200
[2026-08-25 01:15:45,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:45,472.472 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:15:45,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:45,521.521 INFO    ] No camera update needed
[2026-08-25 01:15:45,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:15:45,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:15:45,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:15:45,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:15:47,581.581 INFO    ] ================================================
[2026-08-25 01:15:47,597.597 INFO    ] Launching Daemon at Tue Aug 25 01:15:47 IST 2026
[2026-08-25 01:15:47,608.608 INFO    ] ================================================
[2026-08-25 01:15:48,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:15:48
[2026-08-25 01:15:48,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:15:49,212.212 INFO    ] Initializing speech engine...
[2026-08-25 01:15:49,225.225 INFO    ] 2026-08-25 01:15:49
[2026-08-25 01:15:49,506.506 INFO    ] 2026-08-25 01:15:49
[2026-08-25 01:15:49,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:15:49,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:15:49,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:15:49,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:15:49,965.965 INFO    ] time= 25/08/2026 01:15:49
[2026-08-25 01:15:50,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:15:50,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:15:50,114.114 INFO    ] No existing commands found in stream
[2026-08-25 01:15:55,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:15:55,130.130 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 01:15:57,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:15:57,701.701 INFO    ] Checking for system updates...
[2026-08-25 01:15:57,738.738 INFO    ] 200
[2026-08-25 01:15:57,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:57,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:57,796.796 INFO    ] No update needed
[2026-08-25 01:15:57,799.799 INFO    ] Checking for camera pi updates...
[2026-08-25 01:15:57,837.837 INFO    ] 200
[2026-08-25 01:15:57,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:15:57,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:15:57,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:15:57,929.929 INFO    ] No camera update needed
[2026-08-25 01:15:57,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:15:57,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:15:57,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:15:57,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:15:59,988.988 INFO    ] ================================================
[2026-08-25 01:16:00,003.003 INFO    ] Launching Daemon at Tue Aug 25 01:15:59 IST 2026
[2026-08-25 01:16:00,014.014 INFO    ] ================================================
[2026-08-25 01:16:00,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:16:00
[2026-08-25 01:16:01,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:16:01,489.489 INFO    ] Initializing speech engine...
[2026-08-25 01:16:01,498.498 INFO    ] 2026-08-25 01:16:01
[2026-08-25 01:16:01,762.762 INFO    ] 2026-08-25 01:16:01
[2026-08-25 01:16:01,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:16:02,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:16:02,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:16:02,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:16:02,257.257 INFO    ] time= 25/08/2026 01:16:02
[2026-08-25 01:16:02,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:16:02,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:16:02,367.367 INFO    ] No existing commands found in stream
[2026-08-25 01:16:07,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:16:07,383.383 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 01:16:11,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:16:11,619.619 INFO    ] Checking for system updates...
[2026-08-25 01:16:11,656.656 INFO    ] 200
[2026-08-25 01:16:11,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:11,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:16:11,715.715 INFO    ] No update needed
[2026-08-25 01:16:11,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 01:16:11,755.755 INFO    ] 200
[2026-08-25 01:16:11,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:11,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:16:11,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:16:11,860.860 INFO    ] No camera update needed
[2026-08-25 01:16:11,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:16:11,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:16:11,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:16:11,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:16:13,918.918 INFO    ] ================================================
[2026-08-25 01:16:13,935.935 INFO    ] Launching Daemon at Tue Aug 25 01:16:13 IST 2026
[2026-08-25 01:16:13,947.947 INFO    ] ================================================
[2026-08-25 01:16:14,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:16:14
[2026-08-25 01:16:15,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:16:15,404.404 INFO    ] Initializing speech engine...
[2026-08-25 01:16:15,431.431 INFO    ] 2026-08-25 01:16:15
[2026-08-25 01:16:15,713.713 INFO    ] 2026-08-25 01:16:15
[2026-08-25 01:16:15,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:16:15,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:16:15,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:16:16,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:16:16,103.103 INFO    ] time= 25/08/2026 01:16:16
[2026-08-25 01:16:16,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:16:16,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:16:16,213.213 INFO    ] No existing commands found in stream
[2026-08-25 01:16:21,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:16:21,241.241 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 01:16:25,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:16:25,177.177 INFO    ] Checking for system updates...
[2026-08-25 01:16:25,212.212 INFO    ] 200
[2026-08-25 01:16:25,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:25,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:16:25,268.268 INFO    ] No update needed
[2026-08-25 01:16:25,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 01:16:25,304.304 INFO    ] 200
[2026-08-25 01:16:25,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:25,347.347 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:16:25,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:16:25,402.402 INFO    ] No camera update needed
[2026-08-25 01:16:25,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:16:25,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:16:25,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:16:25,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:16:27,457.457 INFO    ] ================================================
[2026-08-25 01:16:27,473.473 INFO    ] Launching Daemon at Tue Aug 25 01:16:27 IST 2026
[2026-08-25 01:16:27,485.485 INFO    ] ================================================
[2026-08-25 01:16:28,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:16:28
[2026-08-25 01:16:28,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:16:29,131.131 INFO    ] Initializing speech engine...
[2026-08-25 01:16:29,146.146 INFO    ] 2026-08-25 01:16:29
[2026-08-25 01:16:29,436.436 INFO    ] 2026-08-25 01:16:29
[2026-08-25 01:16:29,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:16:29,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:16:29,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:16:29,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:16:29,977.977 INFO    ] time= 25/08/2026 01:16:29
[2026-08-25 01:16:29,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:16:30,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:16:30,135.135 INFO    ] No existing commands found in stream
[2026-08-25 01:16:35,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:16:35,152.152 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 01:16:37,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:16:37,520.520 INFO    ] Checking for system updates...
[2026-08-25 01:16:37,556.556 INFO    ] 200
[2026-08-25 01:16:37,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:37,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:16:37,620.620 INFO    ] No update needed
[2026-08-25 01:16:37,623.623 INFO    ] Checking for camera pi updates...
[2026-08-25 01:16:37,657.657 INFO    ] 200
[2026-08-25 01:16:37,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:37,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:16:37,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:16:37,758.758 INFO    ] No camera update needed
[2026-08-25 01:16:37,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:16:37,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:16:37,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:16:37,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:16:39,815.815 INFO    ] ================================================
[2026-08-25 01:16:39,831.831 INFO    ] Launching Daemon at Tue Aug 25 01:16:39 IST 2026
[2026-08-25 01:16:39,842.842 INFO    ] ================================================
[2026-08-25 01:16:40,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:16:40
[2026-08-25 01:16:41,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:16:41,264.264 INFO    ] Initializing speech engine...
[2026-08-25 01:16:41,289.289 INFO    ] 2026-08-25 01:16:41
[2026-08-25 01:16:41,537.537 INFO    ] 2026-08-25 01:16:41
[2026-08-25 01:16:41,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:16:41,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:16:41,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:16:41,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:16:41,916.916 INFO    ] time= 25/08/2026 01:16:41
[2026-08-25 01:16:41,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:16:41,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:16:42,046.046 INFO    ] No existing commands found in stream
[2026-08-25 01:16:47,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:16:47,083.083 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 01:16:48,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:16:48,358.358 INFO    ] Checking for system updates...
[2026-08-25 01:16:48,400.400 INFO    ] 200
[2026-08-25 01:16:48,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:48,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:16:48,457.457 INFO    ] No update needed
[2026-08-25 01:16:48,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 01:16:48,497.497 INFO    ] 200
[2026-08-25 01:16:48,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:16:48,544.544 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:16:48,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:16:48,597.597 INFO    ] No camera update needed
[2026-08-25 01:16:48,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:16:48,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:16:48,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:16:48,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:16:50,651.651 INFO    ] ================================================
[2026-08-25 01:16:50,667.667 INFO    ] Launching Daemon at Tue Aug 25 01:16:50 IST 2026
[2026-08-25 01:16:50,678.678 INFO    ] ================================================
[2026-08-25 01:16:51,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:16:51
[2026-08-25 01:16:51,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:16:52,273.273 INFO    ] Initializing speech engine...
[2026-08-25 01:16:52,281.281 INFO    ] 2026-08-25 01:16:52
[2026-08-25 01:16:52,551.551 INFO    ] 2026-08-25 01:16:52
[2026-08-25 01:16:52,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:16:52,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:16:52,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:16:52,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:16:52,982.982 INFO    ] time= 25/08/2026 01:16:52
[2026-08-25 01:16:53,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:16:53,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:16:53,166.166 INFO    ] No existing commands found in stream
[2026-08-25 01:16:58,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:16:58,207.207 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 01:16:59,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:16:59,917.917 INFO    ] Checking for system updates...
[2026-08-25 01:16:59,952.952 INFO    ] 200
[2026-08-25 01:16:59,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:00,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:17:00,008.008 INFO    ] No update needed
[2026-08-25 01:17:00,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 01:17:00,044.044 INFO    ] 200
[2026-08-25 01:17:00,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:00,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:17:00,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:17:00,134.134 INFO    ] No camera update needed
[2026-08-25 01:17:00,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:17:00,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:17:00,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:17:00,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:17:02,190.190 INFO    ] ================================================
[2026-08-25 01:17:02,207.207 INFO    ] Launching Daemon at Tue Aug 25 01:17:02 IST 2026
[2026-08-25 01:17:02,219.219 INFO    ] ================================================
[2026-08-25 01:17:02,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:17:02
[2026-08-25 01:17:03,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:17:03,861.861 INFO    ] Initializing speech engine...
[2026-08-25 01:17:03,884.884 INFO    ] 2026-08-25 01:17:03
[2026-08-25 01:17:04,139.139 INFO    ] 2026-08-25 01:17:04
[2026-08-25 01:17:04,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:17:04,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:17:04,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:17:04,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:17:04,615.615 INFO    ] time= 25/08/2026 01:17:04
[2026-08-25 01:17:04,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:17:04,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:17:04,851.851 INFO    ] No existing commands found in stream
[2026-08-25 01:17:09,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:17:09,867.867 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 01:17:10,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:17:10,395.395 INFO    ] Checking for system updates...
[2026-08-25 01:17:10,430.430 INFO    ] 200
[2026-08-25 01:17:10,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:10,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:17:10,487.487 INFO    ] No update needed
[2026-08-25 01:17:10,490.490 INFO    ] Checking for camera pi updates...
[2026-08-25 01:17:10,523.523 INFO    ] 200
[2026-08-25 01:17:10,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:10,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:17:10,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:17:10,618.618 INFO    ] No camera update needed
[2026-08-25 01:17:10,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:17:10,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:17:10,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:17:10,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:17:12,675.675 INFO    ] ================================================
[2026-08-25 01:17:12,690.690 INFO    ] Launching Daemon at Tue Aug 25 01:17:12 IST 2026
[2026-08-25 01:17:12,702.702 INFO    ] ================================================
[2026-08-25 01:17:13,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:17:13
[2026-08-25 01:17:14,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:17:14,306.306 INFO    ] Initializing speech engine...
[2026-08-25 01:17:14,315.315 INFO    ] 2026-08-25 01:17:14
[2026-08-25 01:17:14,604.604 INFO    ] 2026-08-25 01:17:14
[2026-08-25 01:17:14,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:17:14,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:17:14,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:17:15,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:17:15,100.100 INFO    ] time= 25/08/2026 01:17:15
[2026-08-25 01:17:15,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:17:15,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:17:15,286.286 INFO    ] No existing commands found in stream
[2026-08-25 01:17:20,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:17:20,306.306 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 01:17:23,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:17:23,121.121 INFO    ] Checking for system updates...
[2026-08-25 01:17:23,160.160 INFO    ] 200
[2026-08-25 01:17:23,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:23,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:17:23,216.216 INFO    ] No update needed
[2026-08-25 01:17:23,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 01:17:23,251.251 INFO    ] 200
[2026-08-25 01:17:23,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:23,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:17:23,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:17:23,352.352 INFO    ] No camera update needed
[2026-08-25 01:17:23,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:17:23,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:17:23,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:17:23,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:17:25,407.407 INFO    ] ================================================
[2026-08-25 01:17:25,424.424 INFO    ] Launching Daemon at Tue Aug 25 01:17:25 IST 2026
[2026-08-25 01:17:25,435.435 INFO    ] ================================================
[2026-08-25 01:17:26,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:17:26
[2026-08-25 01:17:26,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:17:27,058.058 INFO    ] Initializing speech engine...
[2026-08-25 01:17:27,067.067 INFO    ] 2026-08-25 01:17:27
[2026-08-25 01:17:27,340.340 INFO    ] 2026-08-25 01:17:27
[2026-08-25 01:17:27,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:17:27,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:17:27,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:17:27,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:17:27,826.826 INFO    ] time= 25/08/2026 01:17:27
[2026-08-25 01:17:27,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:17:27,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:17:28,021.021 INFO    ] No existing commands found in stream
[2026-08-25 01:17:33,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:17:33,050.050 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 01:17:33,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:17:33,691.691 INFO    ] Checking for system updates...
[2026-08-25 01:17:33,729.729 INFO    ] 200
[2026-08-25 01:17:33,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:33,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:17:33,793.793 INFO    ] No update needed
[2026-08-25 01:17:33,797.797 INFO    ] Checking for camera pi updates...
[2026-08-25 01:17:33,834.834 INFO    ] 200
[2026-08-25 01:17:33,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:33,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:17:33,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:17:33,945.945 INFO    ] No camera update needed
[2026-08-25 01:17:33,948.948 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:17:33,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:17:33,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:17:33,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:17:36,002.002 INFO    ] ================================================
[2026-08-25 01:17:36,018.018 INFO    ] Launching Daemon at Tue Aug 25 01:17:36 IST 2026
[2026-08-25 01:17:36,029.029 INFO    ] ================================================
[2026-08-25 01:17:36,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:17:36
[2026-08-25 01:17:37,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:17:37,615.615 INFO    ] Initializing speech engine...
[2026-08-25 01:17:37,626.626 INFO    ] 2026-08-25 01:17:37
[2026-08-25 01:17:37,930.930 INFO    ] 2026-08-25 01:17:37
[2026-08-25 01:17:38,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:17:38,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:17:38,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:17:38,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:17:38,438.438 INFO    ] time= 25/08/2026 01:17:38
[2026-08-25 01:17:38,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:17:38,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:17:38,604.604 INFO    ] No existing commands found in stream
[2026-08-25 01:17:43,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:17:43,637.637 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 01:17:44,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:17:44,172.172 INFO    ] Checking for system updates...
[2026-08-25 01:17:44,208.208 INFO    ] 200
[2026-08-25 01:17:44,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:44,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:17:44,266.266 INFO    ] No update needed
[2026-08-25 01:17:44,269.269 INFO    ] Checking for camera pi updates...
[2026-08-25 01:17:44,303.303 INFO    ] 200
[2026-08-25 01:17:44,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:44,347.347 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:17:44,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:17:44,409.409 INFO    ] No camera update needed
[2026-08-25 01:17:44,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:17:44,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:17:44,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:17:44,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:17:46,467.467 INFO    ] ================================================
[2026-08-25 01:17:46,483.483 INFO    ] Launching Daemon at Tue Aug 25 01:17:46 IST 2026
[2026-08-25 01:17:46,495.495 INFO    ] ================================================
[2026-08-25 01:17:47,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:17:47
[2026-08-25 01:17:47,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:17:47,892.892 INFO    ] Initializing speech engine...
[2026-08-25 01:17:47,907.907 INFO    ] 2026-08-25 01:17:47
[2026-08-25 01:17:48,175.175 INFO    ] 2026-08-25 01:17:48
[2026-08-25 01:17:48,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:17:48,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:17:48,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:17:48,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:17:48,552.552 INFO    ] time= 25/08/2026 01:17:48
[2026-08-25 01:17:48,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:17:48,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:17:48,719.719 INFO    ] No existing commands found in stream
[2026-08-25 01:17:53,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:17:53,747.747 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 01:17:55,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:17:55,411.411 INFO    ] Checking for system updates...
[2026-08-25 01:17:55,450.450 INFO    ] 200
[2026-08-25 01:17:55,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:55,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:17:55,520.520 INFO    ] No update needed
[2026-08-25 01:17:55,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 01:17:55,557.557 INFO    ] 200
[2026-08-25 01:17:55,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:17:55,601.601 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:17:55,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:17:55,659.659 INFO    ] No camera update needed
[2026-08-25 01:17:55,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:17:55,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:17:55,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:17:55,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:17:57,717.717 INFO    ] ================================================
[2026-08-25 01:17:57,734.734 INFO    ] Launching Daemon at Tue Aug 25 01:17:57 IST 2026
[2026-08-25 01:17:57,746.746 INFO    ] ================================================
[2026-08-25 01:17:58,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:17:58
[2026-08-25 01:17:58,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:17:59,283.283 INFO    ] Initializing speech engine...
[2026-08-25 01:17:59,293.293 INFO    ] 2026-08-25 01:17:59
[2026-08-25 01:17:59,565.565 INFO    ] 2026-08-25 01:17:59
[2026-08-25 01:17:59,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:17:59,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:17:59,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:18:00,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:18:00,098.098 INFO    ] time= 25/08/2026 01:18:00
[2026-08-25 01:18:00,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:18:00,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:18:00,328.328 INFO    ] No existing commands found in stream
[2026-08-25 01:18:05,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:18:05,358.358 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 01:18:07,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:18:07,221.221 INFO    ] Checking for system updates...
[2026-08-25 01:18:07,259.259 INFO    ] 200
[2026-08-25 01:18:07,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:07,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:18:07,318.318 INFO    ] No update needed
[2026-08-25 01:18:07,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 01:18:07,355.355 INFO    ] 200
[2026-08-25 01:18:07,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:07,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:18:07,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:18:07,458.458 INFO    ] No camera update needed
[2026-08-25 01:18:07,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:18:07,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:18:07,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:18:07,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:18:09,517.517 INFO    ] ================================================
[2026-08-25 01:18:09,533.533 INFO    ] Launching Daemon at Tue Aug 25 01:18:09 IST 2026
[2026-08-25 01:18:09,544.544 INFO    ] ================================================
[2026-08-25 01:18:10,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:18:10
[2026-08-25 01:18:10,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:18:11,005.005 INFO    ] Initializing speech engine...
[2026-08-25 01:18:11,019.019 INFO    ] 2026-08-25 01:18:11
[2026-08-25 01:18:11,307.307 INFO    ] 2026-08-25 01:18:11
[2026-08-25 01:18:11,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:18:11,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:18:11,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:18:11,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:18:11,708.708 INFO    ] time= 25/08/2026 01:18:11
[2026-08-25 01:18:11,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:18:11,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:18:11,817.817 INFO    ] No existing commands found in stream
[2026-08-25 01:18:16,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:18:16,836.836 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 01:18:17,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:18:17,380.380 INFO    ] Checking for system updates...
[2026-08-25 01:18:17,416.416 INFO    ] 200
[2026-08-25 01:18:17,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:17,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:18:17,481.481 INFO    ] No update needed
[2026-08-25 01:18:17,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 01:18:17,521.521 INFO    ] 200
[2026-08-25 01:18:17,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:17,563.563 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:18:17,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:18:17,612.612 INFO    ] No camera update needed
[2026-08-25 01:18:17,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:18:17,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:18:17,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:18:17,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:18:19,667.667 INFO    ] ================================================
[2026-08-25 01:18:19,682.682 INFO    ] Launching Daemon at Tue Aug 25 01:18:19 IST 2026
[2026-08-25 01:18:19,693.693 INFO    ] ================================================
[2026-08-25 01:18:20,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:18:20
[2026-08-25 01:18:20,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:18:21,136.136 INFO    ] Initializing speech engine...
[2026-08-25 01:18:21,142.142 INFO    ] 2026-08-25 01:18:21
[2026-08-25 01:18:21,441.441 INFO    ] 2026-08-25 01:18:21
[2026-08-25 01:18:21,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:18:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:18:21,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:18:21,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:18:21,874.874 INFO    ] time= 25/08/2026 01:18:21
[2026-08-25 01:18:21,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:18:21,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:18:22,049.049 INFO    ] No existing commands found in stream
[2026-08-25 01:18:27,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:18:27,072.072 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 01:18:28,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:18:28,290.290 INFO    ] Checking for system updates...
[2026-08-25 01:18:28,326.326 INFO    ] 200
[2026-08-25 01:18:28,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:28,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:18:28,382.382 INFO    ] No update needed
[2026-08-25 01:18:28,384.384 INFO    ] Checking for camera pi updates...
[2026-08-25 01:18:28,419.419 INFO    ] 200
[2026-08-25 01:18:28,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:28,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:18:28,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:18:28,511.511 INFO    ] No camera update needed
[2026-08-25 01:18:28,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:18:28,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:18:28,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:18:28,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:18:30,565.565 INFO    ] ================================================
[2026-08-25 01:18:30,581.581 INFO    ] Launching Daemon at Tue Aug 25 01:18:30 IST 2026
[2026-08-25 01:18:30,592.592 INFO    ] ================================================
[2026-08-25 01:18:31,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:18:31
[2026-08-25 01:18:31,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:18:32,299.299 INFO    ] Initializing speech engine...
[2026-08-25 01:18:32,309.309 INFO    ] 2026-08-25 01:18:32
[2026-08-25 01:18:32,608.608 INFO    ] 2026-08-25 01:18:32
[2026-08-25 01:18:32,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:18:32,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:18:32,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:18:33,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:18:33,056.056 INFO    ] time= 25/08/2026 01:18:33
[2026-08-25 01:18:33,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:18:33,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:18:33,286.286 INFO    ] No existing commands found in stream
[2026-08-25 01:18:38,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:18:38,322.322 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 01:18:41,413.413 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:18:41,416.416 INFO    ] Checking for system updates...
[2026-08-25 01:18:41,451.451 INFO    ] 200
[2026-08-25 01:18:41,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:41,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:18:41,511.511 INFO    ] No update needed
[2026-08-25 01:18:41,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 01:18:41,546.546 INFO    ] 200
[2026-08-25 01:18:41,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:41,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:18:41,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:18:41,735.735 INFO    ] No camera update needed
[2026-08-25 01:18:41,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:18:41,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:18:41,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:18:41,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:18:43,790.790 INFO    ] ================================================
[2026-08-25 01:18:43,806.806 INFO    ] Launching Daemon at Tue Aug 25 01:18:43 IST 2026
[2026-08-25 01:18:43,817.817 INFO    ] ================================================
[2026-08-25 01:18:44,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:18:44
[2026-08-25 01:18:45,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:18:45,481.481 INFO    ] Initializing speech engine...
[2026-08-25 01:18:45,492.492 INFO    ] 2026-08-25 01:18:45
[2026-08-25 01:18:45,782.782 INFO    ] 2026-08-25 01:18:45
[2026-08-25 01:18:45,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:18:46,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:18:46,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:18:46,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:18:46,322.322 INFO    ] time= 25/08/2026 01:18:46
[2026-08-25 01:18:46,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:18:46,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:18:46,513.513 INFO    ] No existing commands found in stream
[2026-08-25 01:18:51,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:18:51,553.553 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 01:18:53,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:18:53,803.803 INFO    ] Checking for system updates...
[2026-08-25 01:18:53,843.843 INFO    ] 200
[2026-08-25 01:18:53,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:53,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:18:53,909.909 INFO    ] No update needed
[2026-08-25 01:18:53,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 01:18:53,944.944 INFO    ] 200
[2026-08-25 01:18:53,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:18:53,987.987 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:18:54,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:18:54,042.042 INFO    ] No camera update needed
[2026-08-25 01:18:54,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:18:54,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:18:54,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:18:54,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:18:56,096.096 INFO    ] ================================================
[2026-08-25 01:18:56,112.112 INFO    ] Launching Daemon at Tue Aug 25 01:18:56 IST 2026
[2026-08-25 01:18:56,124.124 INFO    ] ================================================
[2026-08-25 01:18:56,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:18:56
[2026-08-25 01:18:57,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:18:57,590.590 INFO    ] Initializing speech engine...
[2026-08-25 01:18:57,596.596 INFO    ] 2026-08-25 01:18:57
[2026-08-25 01:18:57,844.844 INFO    ] 2026-08-25 01:18:57
[2026-08-25 01:18:57,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:18:58,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:18:58,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:18:58,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:18:58,336.336 INFO    ] time= 25/08/2026 01:18:58
[2026-08-25 01:18:58,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:18:58,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:18:58,540.540 INFO    ] No existing commands found in stream
[2026-08-25 01:19:03,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:19:03,564.564 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 01:19:05,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:19:05,076.076 INFO    ] Checking for system updates...
[2026-08-25 01:19:05,116.116 INFO    ] 200
[2026-08-25 01:19:05,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:05,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:19:05,176.176 INFO    ] No update needed
[2026-08-25 01:19:05,178.178 INFO    ] Checking for camera pi updates...
[2026-08-25 01:19:05,213.213 INFO    ] 200
[2026-08-25 01:19:05,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:05,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:19:05,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:19:05,310.310 INFO    ] No camera update needed
[2026-08-25 01:19:05,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:19:05,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:19:05,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:19:05,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:19:07,366.366 INFO    ] ================================================
[2026-08-25 01:19:07,382.382 INFO    ] Launching Daemon at Tue Aug 25 01:19:07 IST 2026
[2026-08-25 01:19:07,393.393 INFO    ] ================================================
[2026-08-25 01:19:07,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:19:07
[2026-08-25 01:19:08,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:19:08,867.867 INFO    ] Initializing speech engine...
[2026-08-25 01:19:08,878.878 INFO    ] 2026-08-25 01:19:08
[2026-08-25 01:19:09,140.140 INFO    ] 2026-08-25 01:19:09
[2026-08-25 01:19:09,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:19:09,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:19:09,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:19:09,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:19:09,604.604 INFO    ] time= 25/08/2026 01:19:09
[2026-08-25 01:19:09,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:19:09,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:19:09,835.835 INFO    ] No existing commands found in stream
[2026-08-25 01:19:14,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:19:14,863.863 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 01:19:17,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:19:17,220.220 INFO    ] Checking for system updates...
[2026-08-25 01:19:17,268.268 INFO    ] 200
[2026-08-25 01:19:17,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:17,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:17,331.331 INFO    ] No update needed
[2026-08-25 01:19:17,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 01:19:17,367.367 INFO    ] 200
[2026-08-25 01:19:17,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:17,416.416 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:19:17,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:17,471.471 INFO    ] No camera update needed
[2026-08-25 01:19:17,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:19:17,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:19:17,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:19:17,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:19:19,526.526 INFO    ] ================================================
[2026-08-25 01:19:19,542.542 INFO    ] Launching Daemon at Tue Aug 25 01:19:19 IST 2026
[2026-08-25 01:19:19,557.557 INFO    ] ================================================
[2026-08-25 01:19:20,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:19:20
[2026-08-25 01:19:20,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:19:21,012.012 INFO    ] Initializing speech engine...
[2026-08-25 01:19:21,021.021 INFO    ] 2026-08-25 01:19:21
[2026-08-25 01:19:21,285.285 INFO    ] 2026-08-25 01:19:21
[2026-08-25 01:19:21,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:19:21,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:19:21,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:19:21,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:19:21,772.772 INFO    ] time= 25/08/2026 01:19:21
[2026-08-25 01:19:21,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:19:21,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:19:21,985.985 INFO    ] No existing commands found in stream
[2026-08-25 01:19:27,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:19:27,010.010 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 01:19:27,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:19:27,958.958 INFO    ] Checking for system updates...
[2026-08-25 01:19:27,998.998 INFO    ] 200
[2026-08-25 01:19:28,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:28,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:28,056.056 INFO    ] No update needed
[2026-08-25 01:19:28,058.058 INFO    ] Checking for camera pi updates...
[2026-08-25 01:19:28,092.092 INFO    ] 200
[2026-08-25 01:19:28,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:28,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:19:28,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:28,188.188 INFO    ] No camera update needed
[2026-08-25 01:19:28,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:19:28,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:19:28,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:19:28,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:19:30,242.242 INFO    ] ================================================
[2026-08-25 01:19:30,258.258 INFO    ] Launching Daemon at Tue Aug 25 01:19:30 IST 2026
[2026-08-25 01:19:30,270.270 INFO    ] ================================================
[2026-08-25 01:19:30,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:19:30
[2026-08-25 01:19:31,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:19:31,718.718 INFO    ] Initializing speech engine...
[2026-08-25 01:19:31,723.723 INFO    ] 2026-08-25 01:19:31
[2026-08-25 01:19:31,997.997 INFO    ] 2026-08-25 01:19:31
[2026-08-25 01:19:32,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:19:32,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:19:32,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:19:32,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:19:32,424.424 INFO    ] time= 25/08/2026 01:19:32
[2026-08-25 01:19:32,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:19:32,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:19:32,610.610 INFO    ] No existing commands found in stream
[2026-08-25 01:19:37,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:19:37,644.644 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 01:19:38,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:19:38,458.458 INFO    ] Checking for system updates...
[2026-08-25 01:19:38,493.493 INFO    ] 200
[2026-08-25 01:19:38,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:38,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:38,549.549 INFO    ] No update needed
[2026-08-25 01:19:38,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 01:19:38,585.585 INFO    ] 200
[2026-08-25 01:19:38,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:38,627.627 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:19:38,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:38,679.679 INFO    ] No camera update needed
[2026-08-25 01:19:38,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:19:38,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:19:38,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:19:38,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:19:40,735.735 INFO    ] ================================================
[2026-08-25 01:19:40,751.751 INFO    ] Launching Daemon at Tue Aug 25 01:19:40 IST 2026
[2026-08-25 01:19:40,762.762 INFO    ] ================================================
[2026-08-25 01:19:41,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:19:41
[2026-08-25 01:19:41,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:19:42,226.226 INFO    ] Initializing speech engine...
[2026-08-25 01:19:42,234.234 INFO    ] 2026-08-25 01:19:42
[2026-08-25 01:19:42,495.495 INFO    ] 2026-08-25 01:19:42
[2026-08-25 01:19:42,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:19:42,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:19:42,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:19:42,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:19:42,967.967 INFO    ] time= 25/08/2026 01:19:42
[2026-08-25 01:19:43,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:19:43,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:19:43,189.189 INFO    ] No existing commands found in stream
[2026-08-25 01:19:48,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:19:48,217.217 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 01:19:50,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:19:50,483.483 INFO    ] Checking for system updates...
[2026-08-25 01:19:50,519.519 INFO    ] 200
[2026-08-25 01:19:50,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:50,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:50,576.576 INFO    ] No update needed
[2026-08-25 01:19:50,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 01:19:50,616.616 INFO    ] 200
[2026-08-25 01:19:50,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:19:50,664.664 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:19:50,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:19:50,722.722 INFO    ] No camera update needed
[2026-08-25 01:19:50,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:19:50,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:19:50,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:19:50,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:19:52,777.777 INFO    ] ================================================
[2026-08-25 01:19:52,793.793 INFO    ] Launching Daemon at Tue Aug 25 01:19:52 IST 2026
[2026-08-25 01:19:52,803.803 INFO    ] ================================================
[2026-08-25 01:19:53,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:19:53
[2026-08-25 01:19:54,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:19:54,289.289 INFO    ] Initializing speech engine...
[2026-08-25 01:19:54,298.298 INFO    ] 2026-08-25 01:19:54
[2026-08-25 01:19:54,560.560 INFO    ] 2026-08-25 01:19:54
[2026-08-25 01:19:54,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:19:54,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:19:54,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:19:54,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:19:55,047.047 INFO    ] time= 25/08/2026 01:19:54
[2026-08-25 01:19:55,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:19:55,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:19:55,257.257 INFO    ] No existing commands found in stream
[2026-08-25 01:20:00,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:20:00,278.278 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 01:20:02,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:20:02,422.422 INFO    ] Checking for system updates...
[2026-08-25 01:20:02,489.489 INFO    ] 200
[2026-08-25 01:20:02,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:02,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:20:02,584.584 INFO    ] No update needed
[2026-08-25 01:20:02,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 01:20:02,634.634 INFO    ] 200
[2026-08-25 01:20:02,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:02,687.687 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:20:02,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:20:02,905.905 INFO    ] No camera update needed
[2026-08-25 01:20:02,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:20:02,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:20:02,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:20:02,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:20:04,967.967 INFO    ] ================================================
[2026-08-25 01:20:04,982.982 INFO    ] Launching Daemon at Tue Aug 25 01:20:04 IST 2026
[2026-08-25 01:20:04,993.993 INFO    ] ================================================
[2026-08-25 01:20:05,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:20:05
[2026-08-25 01:20:06,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:20:06,448.448 INFO    ] Initializing speech engine...
[2026-08-25 01:20:06,456.456 INFO    ] 2026-08-25 01:20:06
[2026-08-25 01:20:06,717.717 INFO    ] 2026-08-25 01:20:06
[2026-08-25 01:20:06,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:20:07,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:20:07,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:20:07,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:20:07,208.208 INFO    ] time= 25/08/2026 01:20:07
[2026-08-25 01:20:07,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:20:07,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:20:07,425.425 INFO    ] No existing commands found in stream
[2026-08-25 01:20:12,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:20:12,457.457 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 01:20:14,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:20:14,830.830 INFO    ] Checking for system updates...
[2026-08-25 01:20:14,867.867 INFO    ] 200
[2026-08-25 01:20:14,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:14,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:20:14,930.930 INFO    ] No update needed
[2026-08-25 01:20:14,932.932 INFO    ] Checking for camera pi updates...
[2026-08-25 01:20:14,966.966 INFO    ] 200
[2026-08-25 01:20:14,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:15,008.008 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:20:15,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:20:15,057.057 INFO    ] No camera update needed
[2026-08-25 01:20:15,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:20:15,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:20:15,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:20:15,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:20:17,111.111 INFO    ] ================================================
[2026-08-25 01:20:17,127.127 INFO    ] Launching Daemon at Tue Aug 25 01:20:17 IST 2026
[2026-08-25 01:20:17,137.137 INFO    ] ================================================
[2026-08-25 01:20:17,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:20:17
[2026-08-25 01:20:18,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:20:18,621.621 INFO    ] Initializing speech engine...
[2026-08-25 01:20:18,630.630 INFO    ] 2026-08-25 01:20:18
[2026-08-25 01:20:18,877.877 INFO    ] 2026-08-25 01:20:18
[2026-08-25 01:20:18,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:20:19,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:20:19,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:20:19,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:20:19,358.358 INFO    ] time= 25/08/2026 01:20:19
[2026-08-25 01:20:19,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:20:19,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:20:19,567.567 INFO    ] No existing commands found in stream
[2026-08-25 01:20:24,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:20:24,597.597 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 01:20:26,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:20:26,566.566 INFO    ] Checking for system updates...
[2026-08-25 01:20:26,605.605 INFO    ] 200
[2026-08-25 01:20:26,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:26,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:20:26,662.662 INFO    ] No update needed
[2026-08-25 01:20:26,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 01:20:26,702.702 INFO    ] 200
[2026-08-25 01:20:26,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:26,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:20:26,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:20:26,805.805 INFO    ] No camera update needed
[2026-08-25 01:20:26,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:20:26,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:20:26,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:20:26,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:20:28,859.859 INFO    ] ================================================
[2026-08-25 01:20:28,875.875 INFO    ] Launching Daemon at Tue Aug 25 01:20:28 IST 2026
[2026-08-25 01:20:28,886.886 INFO    ] ================================================
[2026-08-25 01:20:29,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:20:29
[2026-08-25 01:20:30,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:20:30,503.503 INFO    ] Initializing speech engine...
[2026-08-25 01:20:30,515.515 INFO    ] 2026-08-25 01:20:30
[2026-08-25 01:20:30,831.831 INFO    ] 2026-08-25 01:20:30
[2026-08-25 01:20:30,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:20:31,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:20:31,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:20:31,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:20:31,348.348 INFO    ] time= 25/08/2026 01:20:31
[2026-08-25 01:20:31,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:20:31,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:20:31,510.510 INFO    ] No existing commands found in stream
[2026-08-25 01:20:36,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:20:36,532.532 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 01:20:37,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:20:37,320.320 INFO    ] Checking for system updates...
[2026-08-25 01:20:37,357.357 INFO    ] 200
[2026-08-25 01:20:37,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:37,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:20:37,414.414 INFO    ] No update needed
[2026-08-25 01:20:37,417.417 INFO    ] Checking for camera pi updates...
[2026-08-25 01:20:37,454.454 INFO    ] 200
[2026-08-25 01:20:37,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:37,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:20:37,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:20:37,548.548 INFO    ] No camera update needed
[2026-08-25 01:20:37,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:20:37,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:20:37,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:20:37,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:20:39,603.603 INFO    ] ================================================
[2026-08-25 01:20:39,618.618 INFO    ] Launching Daemon at Tue Aug 25 01:20:39 IST 2026
[2026-08-25 01:20:39,628.628 INFO    ] ================================================
[2026-08-25 01:20:40,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:20:40
[2026-08-25 01:20:40,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:20:41,081.081 INFO    ] Initializing speech engine...
[2026-08-25 01:20:41,087.087 INFO    ] 2026-08-25 01:20:41
[2026-08-25 01:20:41,334.334 INFO    ] 2026-08-25 01:20:41
[2026-08-25 01:20:41,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:20:41,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:20:41,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:20:41,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:20:41,795.795 INFO    ] time= 25/08/2026 01:20:41
[2026-08-25 01:20:41,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:20:41,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:20:41,987.987 INFO    ] No existing commands found in stream
[2026-08-25 01:20:46,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:20:47,000.000 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 01:20:47,935.935 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:20:47,937.937 INFO    ] Checking for system updates...
[2026-08-25 01:20:47,973.973 INFO    ] 200
[2026-08-25 01:20:47,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:48,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:20:48,030.030 INFO    ] No update needed
[2026-08-25 01:20:48,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 01:20:48,066.066 INFO    ] 200
[2026-08-25 01:20:48,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:48,113.113 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:20:48,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:20:48,264.264 INFO    ] No camera update needed
[2026-08-25 01:20:48,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:20:48,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:20:48,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:20:48,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:20:50,318.318 INFO    ] ================================================
[2026-08-25 01:20:50,333.333 INFO    ] Launching Daemon at Tue Aug 25 01:20:50 IST 2026
[2026-08-25 01:20:50,344.344 INFO    ] ================================================
[2026-08-25 01:20:50,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:20:50
[2026-08-25 01:20:51,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:20:51,871.871 INFO    ] Initializing speech engine...
[2026-08-25 01:20:51,880.880 INFO    ] 2026-08-25 01:20:51
[2026-08-25 01:20:52,127.127 INFO    ] 2026-08-25 01:20:52
[2026-08-25 01:20:52,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:20:52,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:20:52,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:20:52,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:20:52,619.619 INFO    ] time= 25/08/2026 01:20:52
[2026-08-25 01:20:52,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:20:52,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:20:52,809.809 INFO    ] No existing commands found in stream
[2026-08-25 01:20:57,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:20:57,848.848 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 01:20:59,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:20:59,426.426 INFO    ] Checking for system updates...
[2026-08-25 01:20:59,463.463 INFO    ] 200
[2026-08-25 01:20:59,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:59,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:20:59,528.528 INFO    ] No update needed
[2026-08-25 01:20:59,531.531 INFO    ] Checking for camera pi updates...
[2026-08-25 01:20:59,569.569 INFO    ] 200
[2026-08-25 01:20:59,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:20:59,621.621 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:20:59,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:20:59,670.670 INFO    ] No camera update needed
[2026-08-25 01:20:59,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:20:59,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:20:59,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:20:59,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:21:01,727.727 INFO    ] ================================================
[2026-08-25 01:21:01,742.742 INFO    ] Launching Daemon at Tue Aug 25 01:21:01 IST 2026
[2026-08-25 01:21:01,753.753 INFO    ] ================================================
[2026-08-25 01:21:02,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:21:02
[2026-08-25 01:21:03,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:21:03,453.453 INFO    ] Initializing speech engine...
[2026-08-25 01:21:03,468.468 INFO    ] 2026-08-25 01:21:03
[2026-08-25 01:21:03,786.786 INFO    ] 2026-08-25 01:21:03
[2026-08-25 01:21:03,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:21:04,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:21:04,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:21:04,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:21:04,184.184 INFO    ] time= 25/08/2026 01:21:04
[2026-08-25 01:21:04,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:21:04,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:21:04,313.313 INFO    ] No existing commands found in stream
[2026-08-25 01:21:09,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:21:09,328.328 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 01:21:13,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:21:13,690.690 INFO    ] Checking for system updates...
[2026-08-25 01:21:13,725.725 INFO    ] 200
[2026-08-25 01:21:13,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:13,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:21:13,789.789 INFO    ] No update needed
[2026-08-25 01:21:13,791.791 INFO    ] Checking for camera pi updates...
[2026-08-25 01:21:13,829.829 INFO    ] 200
[2026-08-25 01:21:13,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:13,872.872 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:21:13,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:21:13,928.928 INFO    ] No camera update needed
[2026-08-25 01:21:13,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:21:13,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:21:13,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:21:13,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:21:15,982.982 INFO    ] ================================================
[2026-08-25 01:21:16,997.997 INFO    ] Launching Daemon at Tue Aug 25 01:21:15 IST 2026
[2026-08-25 01:21:16,008.008 INFO    ] ================================================
[2026-08-25 01:21:16,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:21:16
[2026-08-25 01:21:17,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:21:17,424.424 INFO    ] Initializing speech engine...
[2026-08-25 01:21:17,432.432 INFO    ] 2026-08-25 01:21:17
[2026-08-25 01:21:17,682.682 INFO    ] 2026-08-25 01:21:17
[2026-08-25 01:21:17,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:21:17,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:21:17,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:21:18,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:21:18,060.060 INFO    ] time= 25/08/2026 01:21:18
[2026-08-25 01:21:18,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:21:18,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:21:18,238.238 INFO    ] No existing commands found in stream
[2026-08-25 01:21:23,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:21:23,266.266 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 01:21:24,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:21:24,832.832 INFO    ] Checking for system updates...
[2026-08-25 01:21:24,867.867 INFO    ] 200
[2026-08-25 01:21:24,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:24,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:21:24,924.924 INFO    ] No update needed
[2026-08-25 01:21:24,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 01:21:24,963.963 INFO    ] 200
[2026-08-25 01:21:24,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:25,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:21:25,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:21:25,070.070 INFO    ] No camera update needed
[2026-08-25 01:21:25,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:21:25,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:21:25,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:21:25,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:21:27,125.125 INFO    ] ================================================
[2026-08-25 01:21:27,141.141 INFO    ] Launching Daemon at Tue Aug 25 01:21:27 IST 2026
[2026-08-25 01:21:27,152.152 INFO    ] ================================================
[2026-08-25 01:21:27,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:21:27
[2026-08-25 01:21:28,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:21:28,573.573 INFO    ] Initializing speech engine...
[2026-08-25 01:21:28,582.582 INFO    ] 2026-08-25 01:21:28
[2026-08-25 01:21:28,832.832 INFO    ] 2026-08-25 01:21:28
[2026-08-25 01:21:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:21:29,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:21:29,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:21:29,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:21:29,322.322 INFO    ] time= 25/08/2026 01:21:29
[2026-08-25 01:21:29,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:21:29,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:21:29,552.552 INFO    ] No existing commands found in stream
[2026-08-25 01:21:34,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:21:34,572.572 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 01:21:38,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:21:38,309.309 INFO    ] Checking for system updates...
[2026-08-25 01:21:38,345.345 INFO    ] 200
[2026-08-25 01:21:38,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:38,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:21:38,404.404 INFO    ] No update needed
[2026-08-25 01:21:38,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 01:21:38,442.442 INFO    ] 200
[2026-08-25 01:21:38,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:38,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:21:38,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:21:38,544.544 INFO    ] No camera update needed
[2026-08-25 01:21:38,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:21:38,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:21:38,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:21:38,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:21:40,601.601 INFO    ] ================================================
[2026-08-25 01:21:40,616.616 INFO    ] Launching Daemon at Tue Aug 25 01:21:40 IST 2026
[2026-08-25 01:21:40,628.628 INFO    ] ================================================
[2026-08-25 01:21:41,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:21:41
[2026-08-25 01:21:41,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:21:42,182.182 INFO    ] Initializing speech engine...
[2026-08-25 01:21:42,192.192 INFO    ] 2026-08-25 01:21:42
[2026-08-25 01:21:42,441.441 INFO    ] 2026-08-25 01:21:42
[2026-08-25 01:21:42,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:21:42,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:21:42,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:21:42,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:21:42,819.819 INFO    ] time= 25/08/2026 01:21:42
[2026-08-25 01:21:42,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:21:42,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:21:43,015.015 INFO    ] No existing commands found in stream
[2026-08-25 01:21:48,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:21:48,030.030 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 01:21:50,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:21:50,040.040 INFO    ] Checking for system updates...
[2026-08-25 01:21:50,076.076 INFO    ] 200
[2026-08-25 01:21:50,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:50,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:21:50,134.134 INFO    ] No update needed
[2026-08-25 01:21:50,137.137 INFO    ] Checking for camera pi updates...
[2026-08-25 01:21:50,176.176 INFO    ] 200
[2026-08-25 01:21:50,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:21:50,229.229 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:21:50,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:21:50,286.286 INFO    ] No camera update needed
[2026-08-25 01:21:50,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:21:50,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:21:50,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:21:50,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:21:52,348.348 INFO    ] ================================================
[2026-08-25 01:21:52,363.363 INFO    ] Launching Daemon at Tue Aug 25 01:21:52 IST 2026
[2026-08-25 01:21:52,374.374 INFO    ] ================================================
[2026-08-25 01:21:52,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:21:52
[2026-08-25 01:21:53,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:21:53,781.781 INFO    ] Initializing speech engine...
[2026-08-25 01:21:53,804.804 INFO    ] 2026-08-25 01:21:53
[2026-08-25 01:21:54,060.060 INFO    ] 2026-08-25 01:21:54
[2026-08-25 01:21:54,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:21:54,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:21:54,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:21:54,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:21:54,540.540 INFO    ] time= 25/08/2026 01:21:54
[2026-08-25 01:21:54,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:21:54,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:21:54,733.733 INFO    ] No existing commands found in stream
[2026-08-25 01:21:59,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:21:59,758.758 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 01:22:03,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:22:03,080.080 INFO    ] Checking for system updates...
[2026-08-25 01:22:03,130.130 INFO    ] 200
[2026-08-25 01:22:03,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:03,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:22:03,211.211 INFO    ] No update needed
[2026-08-25 01:22:03,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 01:22:03,256.256 INFO    ] 200
[2026-08-25 01:22:03,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:03,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:22:03,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:22:03,361.361 INFO    ] No camera update needed
[2026-08-25 01:22:03,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:22:03,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:22:03,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:22:03,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:22:05,426.426 INFO    ] ================================================
[2026-08-25 01:22:05,441.441 INFO    ] Launching Daemon at Tue Aug 25 01:22:05 IST 2026
[2026-08-25 01:22:05,452.452 INFO    ] ================================================
[2026-08-25 01:22:06,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:22:06
[2026-08-25 01:22:06,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:22:06,851.851 INFO    ] Initializing speech engine...
[2026-08-25 01:22:06,874.874 INFO    ] 2026-08-25 01:22:06
[2026-08-25 01:22:07,145.145 INFO    ] 2026-08-25 01:22:07
[2026-08-25 01:22:07,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:22:07,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:22:07,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:22:07,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:22:07,522.522 INFO    ] time= 25/08/2026 01:22:07
[2026-08-25 01:22:07,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:22:07,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:22:07,695.695 INFO    ] No existing commands found in stream
[2026-08-25 01:22:12,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:22:12,723.723 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 01:22:15,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:22:15,748.748 INFO    ] Checking for system updates...
[2026-08-25 01:22:15,784.784 INFO    ] 200
[2026-08-25 01:22:15,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:15,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:22:15,842.842 INFO    ] No update needed
[2026-08-25 01:22:15,844.844 INFO    ] Checking for camera pi updates...
[2026-08-25 01:22:15,880.880 INFO    ] 200
[2026-08-25 01:22:15,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:15,922.922 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:22:15,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:22:15,976.976 INFO    ] No camera update needed
[2026-08-25 01:22:15,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:22:15,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:22:15,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:22:15,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:22:18,033.033 INFO    ] ================================================
[2026-08-25 01:22:18,047.047 INFO    ] Launching Daemon at Tue Aug 25 01:22:18 IST 2026
[2026-08-25 01:22:18,058.058 INFO    ] ================================================
[2026-08-25 01:22:18,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:22:18
[2026-08-25 01:22:19,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:22:19,485.485 INFO    ] Initializing speech engine...
[2026-08-25 01:22:19,490.490 INFO    ] 2026-08-25 01:22:19
[2026-08-25 01:22:19,738.738 INFO    ] 2026-08-25 01:22:19
[2026-08-25 01:22:19,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:22:19,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:22:19,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:22:20,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:22:20,112.112 INFO    ] time= 25/08/2026 01:22:20
[2026-08-25 01:22:20,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:22:20,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:22:20,305.305 INFO    ] No existing commands found in stream
[2026-08-25 01:22:25,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:22:25,326.326 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 01:22:29,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:22:29,441.441 INFO    ] Checking for system updates...
[2026-08-25 01:22:29,476.476 INFO    ] 200
[2026-08-25 01:22:29,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:29,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:22:29,540.540 INFO    ] No update needed
[2026-08-25 01:22:29,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 01:22:29,577.577 INFO    ] 200
[2026-08-25 01:22:29,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:29,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:22:29,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:22:29,673.673 INFO    ] No camera update needed
[2026-08-25 01:22:29,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:22:29,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:22:29,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:22:29,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:22:31,729.729 INFO    ] ================================================
[2026-08-25 01:22:31,744.744 INFO    ] Launching Daemon at Tue Aug 25 01:22:31 IST 2026
[2026-08-25 01:22:31,754.754 INFO    ] ================================================
[2026-08-25 01:22:32,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:22:32
[2026-08-25 01:22:33,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:22:33,468.468 INFO    ] Initializing speech engine...
[2026-08-25 01:22:33,477.477 INFO    ] 2026-08-25 01:22:33
[2026-08-25 01:22:33,727.727 INFO    ] 2026-08-25 01:22:33
[2026-08-25 01:22:33,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:22:33,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:22:33,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:22:34,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:22:34,102.102 INFO    ] time= 25/08/2026 01:22:34
[2026-08-25 01:22:34,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:22:34,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:22:34,270.270 INFO    ] No existing commands found in stream
[2026-08-25 01:22:39,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:22:39,298.298 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 01:22:43,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:22:43,574.574 INFO    ] Checking for system updates...
[2026-08-25 01:22:43,609.609 INFO    ] 200
[2026-08-25 01:22:43,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:43,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:22:43,672.672 INFO    ] No update needed
[2026-08-25 01:22:43,674.674 INFO    ] Checking for camera pi updates...
[2026-08-25 01:22:43,711.711 INFO    ] 200
[2026-08-25 01:22:43,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:43,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:22:43,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:22:43,814.814 INFO    ] No camera update needed
[2026-08-25 01:22:43,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:22:43,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:22:43,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:22:43,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:22:45,868.868 INFO    ] ================================================
[2026-08-25 01:22:45,883.883 INFO    ] Launching Daemon at Tue Aug 25 01:22:45 IST 2026
[2026-08-25 01:22:45,894.894 INFO    ] ================================================
[2026-08-25 01:22:46,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:22:46
[2026-08-25 01:22:47,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:22:47,319.319 INFO    ] Initializing speech engine...
[2026-08-25 01:22:47,340.340 INFO    ] 2026-08-25 01:22:47
[2026-08-25 01:22:47,613.613 INFO    ] 2026-08-25 01:22:47
[2026-08-25 01:22:47,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:22:47,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:22:47,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:22:47,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:22:47,982.982 INFO    ] time= 25/08/2026 01:22:47
[2026-08-25 01:22:48,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:22:48,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:22:48,105.105 INFO    ] No existing commands found in stream
[2026-08-25 01:22:53,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:22:53,120.120 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 01:22:57,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:22:57,458.458 INFO    ] Checking for system updates...
[2026-08-25 01:22:57,494.494 INFO    ] 200
[2026-08-25 01:22:57,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:57,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:22:57,550.550 INFO    ] No update needed
[2026-08-25 01:22:57,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 01:22:57,586.586 INFO    ] 200
[2026-08-25 01:22:57,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:22:57,632.632 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:22:57,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:22:57,781.781 INFO    ] No camera update needed
[2026-08-25 01:22:57,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:22:57,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:22:57,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:22:57,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:22:59,835.835 INFO    ] ================================================
[2026-08-25 01:22:59,850.850 INFO    ] Launching Daemon at Tue Aug 25 01:22:59 IST 2026
[2026-08-25 01:22:59,861.861 INFO    ] ================================================
[2026-08-25 01:23:00,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:23:00
[2026-08-25 01:23:01,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:23:01,596.596 INFO    ] Initializing speech engine...
[2026-08-25 01:23:01,602.602 INFO    ] 2026-08-25 01:23:01
[2026-08-25 01:23:01,913.913 INFO    ] 2026-08-25 01:23:01
[2026-08-25 01:23:01,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:23:02,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:23:02,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:23:02,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:23:02,370.370 INFO    ] time= 25/08/2026 01:23:02
[2026-08-25 01:23:02,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:23:02,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:23:02,522.522 INFO    ] No existing commands found in stream
[2026-08-25 01:23:07,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:23:07,537.537 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 01:23:10,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:23:10,027.027 INFO    ] Checking for system updates...
[2026-08-25 01:23:10,065.065 INFO    ] 200
[2026-08-25 01:23:10,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:10,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:10,122.122 INFO    ] No update needed
[2026-08-25 01:23:10,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 01:23:10,157.157 INFO    ] 200
[2026-08-25 01:23:10,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:10,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:23:10,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:10,257.257 INFO    ] No camera update needed
[2026-08-25 01:23:10,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:23:10,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:23:10,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:23:10,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:23:12,313.313 INFO    ] ================================================
[2026-08-25 01:23:12,328.328 INFO    ] Launching Daemon at Tue Aug 25 01:23:12 IST 2026
[2026-08-25 01:23:12,338.338 INFO    ] ================================================
[2026-08-25 01:23:12,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:23:12
[2026-08-25 01:23:13,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:23:13,776.776 INFO    ] Initializing speech engine...
[2026-08-25 01:23:13,787.787 INFO    ] 2026-08-25 01:23:13
[2026-08-25 01:23:14,040.040 INFO    ] 2026-08-25 01:23:14
[2026-08-25 01:23:14,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:23:14,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:23:14,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:23:14,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:23:14,498.498 INFO    ] time= 25/08/2026 01:23:14
[2026-08-25 01:23:14,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:23:14,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:23:14,747.747 INFO    ] No existing commands found in stream
[2026-08-25 01:23:19,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:23:19,772.772 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 01:23:22,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:23:22,748.748 INFO    ] Checking for system updates...
[2026-08-25 01:23:22,788.788 INFO    ] 200
[2026-08-25 01:23:22,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:22,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:22,854.854 INFO    ] No update needed
[2026-08-25 01:23:22,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 01:23:22,892.892 INFO    ] 200
[2026-08-25 01:23:22,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:22,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:23:22,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:22,994.994 INFO    ] No camera update needed
[2026-08-25 01:23:22,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:23:23,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:23:23,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:23:23,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:23:25,054.054 INFO    ] ================================================
[2026-08-25 01:23:25,069.069 INFO    ] Launching Daemon at Tue Aug 25 01:23:25 IST 2026
[2026-08-25 01:23:25,080.080 INFO    ] ================================================
[2026-08-25 01:23:25,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:23:25
[2026-08-25 01:23:26,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:23:26,534.534 INFO    ] Initializing speech engine...
[2026-08-25 01:23:26,543.543 INFO    ] 2026-08-25 01:23:26
[2026-08-25 01:23:26,793.793 INFO    ] 2026-08-25 01:23:26
[2026-08-25 01:23:26,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:23:27,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:23:27,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:23:27,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:23:27,277.277 INFO    ] time= 25/08/2026 01:23:27
[2026-08-25 01:23:27,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:23:27,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:23:27,513.513 INFO    ] No existing commands found in stream
[2026-08-25 01:23:32,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:23:32,532.532 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 01:23:33,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:23:33,827.827 INFO    ] Checking for system updates...
[2026-08-25 01:23:33,866.866 INFO    ] 200
[2026-08-25 01:23:33,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:33,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:33,922.922 INFO    ] No update needed
[2026-08-25 01:23:33,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 01:23:33,958.958 INFO    ] 200
[2026-08-25 01:23:33,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:34,000.000 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:23:34,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:34,050.050 INFO    ] No camera update needed
[2026-08-25 01:23:34,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:23:34,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:23:34,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:23:34,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:23:36,105.105 INFO    ] ================================================
[2026-08-25 01:23:36,120.120 INFO    ] Launching Daemon at Tue Aug 25 01:23:36 IST 2026
[2026-08-25 01:23:36,130.130 INFO    ] ================================================
[2026-08-25 01:23:36,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:23:36
[2026-08-25 01:23:37,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:23:37,652.652 INFO    ] Initializing speech engine...
[2026-08-25 01:23:37,660.660 INFO    ] 2026-08-25 01:23:37
[2026-08-25 01:23:37,911.911 INFO    ] 2026-08-25 01:23:37
[2026-08-25 01:23:37,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:23:38,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:23:38,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:23:38,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:23:38,399.399 INFO    ] time= 25/08/2026 01:23:38
[2026-08-25 01:23:38,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:23:38,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:23:38,627.627 INFO    ] No existing commands found in stream
[2026-08-25 01:23:43,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:23:43,650.650 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 01:23:46,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:23:46,850.850 INFO    ] Checking for system updates...
[2026-08-25 01:23:46,885.885 INFO    ] 200
[2026-08-25 01:23:46,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:46,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:46,943.943 INFO    ] No update needed
[2026-08-25 01:23:46,946.946 INFO    ] Checking for camera pi updates...
[2026-08-25 01:23:46,978.978 INFO    ] 200
[2026-08-25 01:23:46,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:47,023.023 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:23:47,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:23:47,076.076 INFO    ] No camera update needed
[2026-08-25 01:23:47,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:23:47,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:23:47,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:23:47,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:23:49,132.132 INFO    ] ================================================
[2026-08-25 01:23:49,147.147 INFO    ] Launching Daemon at Tue Aug 25 01:23:49 IST 2026
[2026-08-25 01:23:49,158.158 INFO    ] ================================================
[2026-08-25 01:23:49,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:23:49
[2026-08-25 01:23:50,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:23:50,573.573 INFO    ] Initializing speech engine...
[2026-08-25 01:23:50,582.582 INFO    ] 2026-08-25 01:23:50
[2026-08-25 01:23:50,831.831 INFO    ] 2026-08-25 01:23:50
[2026-08-25 01:23:50,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:23:51,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:23:51,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:23:51,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:23:51,208.208 INFO    ] time= 25/08/2026 01:23:51
[2026-08-25 01:23:51,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:23:51,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:23:51,405.405 INFO    ] No existing commands found in stream
[2026-08-25 01:23:56,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:23:56,424.424 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 01:23:58,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:23:58,466.466 INFO    ] Checking for system updates...
[2026-08-25 01:23:58,501.501 INFO    ] 200
[2026-08-25 01:23:58,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:58,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:23:58,561.561 INFO    ] No update needed
[2026-08-25 01:23:58,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 01:23:58,596.596 INFO    ] 200
[2026-08-25 01:23:58,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:23:58,651.651 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:23:58,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:23:58,696.696 INFO    ] No camera update needed
[2026-08-25 01:23:58,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:23:58,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:23:58,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:23:58,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:24:00,753.753 INFO    ] ================================================
[2026-08-25 01:24:00,771.771 INFO    ] Launching Daemon at Tue Aug 25 01:24:00 IST 2026
[2026-08-25 01:24:00,785.785 INFO    ] ================================================
[2026-08-25 01:24:01,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:24:01
[2026-08-25 01:24:01,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:24:02,498.498 INFO    ] Initializing speech engine...
[2026-08-25 01:24:02,503.503 INFO    ] 2026-08-25 01:24:02
[2026-08-25 01:24:02,852.852 INFO    ] 2026-08-25 01:24:02
[2026-08-25 01:24:02,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:24:03,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:24:03,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:24:03,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:24:03,367.367 INFO    ] time= 25/08/2026 01:24:03
[2026-08-25 01:24:03,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:24:03,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:24:03,513.513 INFO    ] No existing commands found in stream
[2026-08-25 01:24:08,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:24:08,545.545 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 01:24:09,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:24:09,440.440 INFO    ] Checking for system updates...
[2026-08-25 01:24:09,477.477 INFO    ] 200
[2026-08-25 01:24:09,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:09,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:24:09,537.537 INFO    ] No update needed
[2026-08-25 01:24:09,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 01:24:09,573.573 INFO    ] 200
[2026-08-25 01:24:09,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:09,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:24:09,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:24:09,660.660 INFO    ] No camera update needed
[2026-08-25 01:24:09,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:24:09,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:24:09,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:24:09,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:24:11,718.718 INFO    ] ================================================
[2026-08-25 01:24:11,733.733 INFO    ] Launching Daemon at Tue Aug 25 01:24:11 IST 2026
[2026-08-25 01:24:11,743.743 INFO    ] ================================================
[2026-08-25 01:24:12,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:24:12
[2026-08-25 01:24:12,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:24:13,204.204 INFO    ] Initializing speech engine...
[2026-08-25 01:24:13,212.212 INFO    ] 2026-08-25 01:24:13
[2026-08-25 01:24:13,474.474 INFO    ] 2026-08-25 01:24:13
[2026-08-25 01:24:13,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:24:13,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:24:13,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:24:13,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:24:13,910.910 INFO    ] time= 25/08/2026 01:24:13
[2026-08-25 01:24:13,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:24:14,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:24:14,141.141 INFO    ] No existing commands found in stream
[2026-08-25 01:24:19,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:24:19,174.174 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 01:24:21,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:24:21,536.536 INFO    ] Checking for system updates...
[2026-08-25 01:24:21,576.576 INFO    ] 200
[2026-08-25 01:24:21,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:21,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:24:21,633.633 INFO    ] No update needed
[2026-08-25 01:24:21,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 01:24:21,673.673 INFO    ] 200
[2026-08-25 01:24:21,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:21,717.717 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:24:21,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:24:21,769.769 INFO    ] No camera update needed
[2026-08-25 01:24:21,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:24:21,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:24:21,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:24:21,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:24:23,825.825 INFO    ] ================================================
[2026-08-25 01:24:23,840.840 INFO    ] Launching Daemon at Tue Aug 25 01:24:23 IST 2026
[2026-08-25 01:24:23,851.851 INFO    ] ================================================
[2026-08-25 01:24:24,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:24:24
[2026-08-25 01:24:25,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:24:25,288.288 INFO    ] Initializing speech engine...
[2026-08-25 01:24:25,297.297 INFO    ] 2026-08-25 01:24:25
[2026-08-25 01:24:25,545.545 INFO    ] 2026-08-25 01:24:25
[2026-08-25 01:24:25,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:24:25,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:24:25,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:24:25,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:24:25,921.921 INFO    ] time= 25/08/2026 01:24:25
[2026-08-25 01:24:25,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:24:25,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:24:26,105.105 INFO    ] No existing commands found in stream
[2026-08-25 01:24:31,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:24:31,134.134 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 01:24:35,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:24:35,255.255 INFO    ] Checking for system updates...
[2026-08-25 01:24:35,290.290 INFO    ] 200
[2026-08-25 01:24:35,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:35,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:24:35,347.347 INFO    ] No update needed
[2026-08-25 01:24:35,349.349 INFO    ] Checking for camera pi updates...
[2026-08-25 01:24:35,382.382 INFO    ] 200
[2026-08-25 01:24:35,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:35,424.424 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:24:35,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:24:35,486.486 INFO    ] No camera update needed
[2026-08-25 01:24:35,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:24:35,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:24:35,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:24:35,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:24:37,543.543 INFO    ] ================================================
[2026-08-25 01:24:37,558.558 INFO    ] Launching Daemon at Tue Aug 25 01:24:37 IST 2026
[2026-08-25 01:24:37,568.568 INFO    ] ================================================
[2026-08-25 01:24:38,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:24:38
[2026-08-25 01:24:38,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:24:39,037.037 INFO    ] Initializing speech engine...
[2026-08-25 01:24:39,046.046 INFO    ] 2026-08-25 01:24:39
[2026-08-25 01:24:39,295.295 INFO    ] 2026-08-25 01:24:39
[2026-08-25 01:24:39,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:24:39,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:24:39,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:24:39,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:24:39,711.711 INFO    ] time= 25/08/2026 01:24:39
[2026-08-25 01:24:39,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:24:39,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:24:39,796.796 INFO    ] No existing commands found in stream
[2026-08-25 01:24:44,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:24:44,811.811 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 01:24:45,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:24:45,278.278 INFO    ] Checking for system updates...
[2026-08-25 01:24:45,314.314 INFO    ] 200
[2026-08-25 01:24:45,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:45,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:24:45,377.377 INFO    ] No update needed
[2026-08-25 01:24:45,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 01:24:45,416.416 INFO    ] 200
[2026-08-25 01:24:45,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:45,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:24:45,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:24:45,507.507 INFO    ] No camera update needed
[2026-08-25 01:24:45,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:24:45,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:24:45,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:24:45,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:24:47,561.561 INFO    ] ================================================
[2026-08-25 01:24:47,576.576 INFO    ] Launching Daemon at Tue Aug 25 01:24:47 IST 2026
[2026-08-25 01:24:47,586.586 INFO    ] ================================================
[2026-08-25 01:24:48,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:24:48
[2026-08-25 01:24:48,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:24:48,989.989 INFO    ] Initializing speech engine...
[2026-08-25 01:24:49,010.010 INFO    ] 2026-08-25 01:24:48
[2026-08-25 01:24:49,269.269 INFO    ] 2026-08-25 01:24:49
[2026-08-25 01:24:49,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:24:49,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:24:49,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:24:49,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:24:49,747.747 INFO    ] time= 25/08/2026 01:24:49
[2026-08-25 01:24:49,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:24:49,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:24:49,981.981 INFO    ] No existing commands found in stream
[2026-08-25 01:24:55,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:24:55,006.006 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 01:24:57,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:24:57,317.317 INFO    ] Checking for system updates...
[2026-08-25 01:24:57,356.356 INFO    ] 200
[2026-08-25 01:24:57,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:57,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:24:57,413.413 INFO    ] No update needed
[2026-08-25 01:24:57,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 01:24:57,453.453 INFO    ] 200
[2026-08-25 01:24:57,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:24:57,495.495 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:24:57,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:24:57,548.548 INFO    ] No camera update needed
[2026-08-25 01:24:57,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:24:57,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:24:57,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:24:57,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:24:59,603.603 INFO    ] ================================================
[2026-08-25 01:24:59,619.619 INFO    ] Launching Daemon at Tue Aug 25 01:24:59 IST 2026
[2026-08-25 01:24:59,630.630 INFO    ] ================================================
[2026-08-25 01:25:00,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:25:00
[2026-08-25 01:25:00,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:25:01,029.029 INFO    ] Initializing speech engine...
[2026-08-25 01:25:01,051.051 INFO    ] 2026-08-25 01:25:01
[2026-08-25 01:25:01,697.697 INFO    ] 2026-08-25 01:25:01
[2026-08-25 01:25:01,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:25:01,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:25:01,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:25:02,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:25:02,135.135 INFO    ] time= 25/08/2026 01:25:02
[2026-08-25 01:25:02,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:25:02,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:25:02,344.344 INFO    ] No existing commands found in stream
[2026-08-25 01:25:07,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:25:07,358.358 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 01:25:09,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:25:09,739.739 INFO    ] Checking for system updates...
[2026-08-25 01:25:09,776.776 INFO    ] 200
[2026-08-25 01:25:09,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:09,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:09,843.843 INFO    ] No update needed
[2026-08-25 01:25:09,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 01:25:09,885.885 INFO    ] 200
[2026-08-25 01:25:09,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:09,934.934 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:25:09,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:09,983.983 INFO    ] No camera update needed
[2026-08-25 01:25:09,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:25:09,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:25:09,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:25:10,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:25:12,043.043 INFO    ] ================================================
[2026-08-25 01:25:12,058.058 INFO    ] Launching Daemon at Tue Aug 25 01:25:12 IST 2026
[2026-08-25 01:25:12,070.070 INFO    ] ================================================
[2026-08-25 01:25:12,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:25:12
[2026-08-25 01:25:13,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:25:13,468.468 INFO    ] Initializing speech engine...
[2026-08-25 01:25:13,477.477 INFO    ] 2026-08-25 01:25:13
[2026-08-25 01:25:13,753.753 INFO    ] 2026-08-25 01:25:13
[2026-08-25 01:25:13,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:25:13,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:25:14,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:25:14,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:25:14,219.219 INFO    ] time= 25/08/2026 01:25:14
[2026-08-25 01:25:14,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:25:14,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:25:14,463.463 INFO    ] No existing commands found in stream
[2026-08-25 01:25:19,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:25:19,496.496 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 01:25:20,533.533 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:25:20,536.536 INFO    ] Checking for system updates...
[2026-08-25 01:25:20,572.572 INFO    ] 200
[2026-08-25 01:25:20,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:20,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:20,639.639 INFO    ] No update needed
[2026-08-25 01:25:20,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 01:25:20,679.679 INFO    ] 200
[2026-08-25 01:25:20,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:20,723.723 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:25:20,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:20,771.771 INFO    ] No camera update needed
[2026-08-25 01:25:20,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:25:20,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:25:20,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:25:20,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:25:22,831.831 INFO    ] ================================================
[2026-08-25 01:25:22,849.849 INFO    ] Launching Daemon at Tue Aug 25 01:25:22 IST 2026
[2026-08-25 01:25:22,860.860 INFO    ] ================================================
[2026-08-25 01:25:23,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:25:23
[2026-08-25 01:25:24,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:25:24,320.320 INFO    ] Initializing speech engine...
[2026-08-25 01:25:24,325.325 INFO    ] 2026-08-25 01:25:24
[2026-08-25 01:25:24,574.574 INFO    ] 2026-08-25 01:25:24
[2026-08-25 01:25:24,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:25:24,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:25:24,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:25:24,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:25:24,940.940 INFO    ] time= 25/08/2026 01:25:24
[2026-08-25 01:25:24,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:25:24,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:25:25,104.104 INFO    ] No existing commands found in stream
[2026-08-25 01:25:30,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:25:30,132.132 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 01:25:31,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:25:31,746.746 INFO    ] Checking for system updates...
[2026-08-25 01:25:31,784.784 INFO    ] 200
[2026-08-25 01:25:31,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:31,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:25:31,845.845 INFO    ] No update needed
[2026-08-25 01:25:31,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 01:25:31,888.888 INFO    ] 200
[2026-08-25 01:25:31,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:31,938.938 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:25:31,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:25:31,999.999 INFO    ] No camera update needed
[2026-08-25 01:25:32,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:25:32,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:25:32,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:25:32,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:25:34,058.058 INFO    ] ================================================
[2026-08-25 01:25:34,073.073 INFO    ] Launching Daemon at Tue Aug 25 01:25:34 IST 2026
[2026-08-25 01:25:34,084.084 INFO    ] ================================================
[2026-08-25 01:25:34,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:25:34
[2026-08-25 01:25:35,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:25:35,550.550 INFO    ] Initializing speech engine...
[2026-08-25 01:25:35,560.560 INFO    ] 2026-08-25 01:25:35
[2026-08-25 01:25:35,820.820 INFO    ] 2026-08-25 01:25:35
[2026-08-25 01:25:35,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:25:36,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:25:36,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:25:36,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:25:36,345.345 INFO    ] time= 25/08/2026 01:25:36
[2026-08-25 01:25:36,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:25:36,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:25:36,523.523 INFO    ] No existing commands found in stream
[2026-08-25 01:25:41,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:25:41,552.552 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 01:25:44,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:25:44,029.029 INFO    ] Checking for system updates...
[2026-08-25 01:25:44,066.066 INFO    ] 200
[2026-08-25 01:25:44,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:44,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:44,128.128 INFO    ] No update needed
[2026-08-25 01:25:44,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 01:25:44,176.176 INFO    ] 200
[2026-08-25 01:25:44,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:44,218.218 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:25:44,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:44,265.265 INFO    ] No camera update needed
[2026-08-25 01:25:44,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:25:44,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:25:44,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:25:44,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:25:46,321.321 INFO    ] ================================================
[2026-08-25 01:25:46,336.336 INFO    ] Launching Daemon at Tue Aug 25 01:25:46 IST 2026
[2026-08-25 01:25:46,347.347 INFO    ] ================================================
[2026-08-25 01:25:46,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:25:46
[2026-08-25 01:25:47,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:25:47,822.822 INFO    ] Initializing speech engine...
[2026-08-25 01:25:47,836.836 INFO    ] 2026-08-25 01:25:47
[2026-08-25 01:25:48,113.113 INFO    ] 2026-08-25 01:25:48
[2026-08-25 01:25:48,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:25:48,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:25:48,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:25:48,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:25:48,589.589 INFO    ] time= 25/08/2026 01:25:48
[2026-08-25 01:25:48,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:25:48,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:25:48,818.818 INFO    ] No existing commands found in stream
[2026-08-25 01:25:53,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:25:53,837.837 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 01:25:56,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:25:56,148.148 INFO    ] Checking for system updates...
[2026-08-25 01:25:56,183.183 INFO    ] 200
[2026-08-25 01:25:56,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:56,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:56,239.239 INFO    ] No update needed
[2026-08-25 01:25:56,242.242 INFO    ] Checking for camera pi updates...
[2026-08-25 01:25:56,276.276 INFO    ] 200
[2026-08-25 01:25:56,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:25:56,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:25:56,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:25:56,378.378 INFO    ] No camera update needed
[2026-08-25 01:25:56,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:25:56,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:25:56,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:25:56,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:25:58,435.435 INFO    ] ================================================
[2026-08-25 01:25:58,450.450 INFO    ] Launching Daemon at Tue Aug 25 01:25:58 IST 2026
[2026-08-25 01:25:58,461.461 INFO    ] ================================================
[2026-08-25 01:25:59,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:25:59
[2026-08-25 01:25:59,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:26:00,114.114 INFO    ] Initializing speech engine...
[2026-08-25 01:26:00,125.125 INFO    ] 2026-08-25 01:26:00
[2026-08-25 01:26:00,419.419 INFO    ] 2026-08-25 01:26:00
[2026-08-25 01:26:00,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:26:00,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:26:00,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:26:00,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:26:00,958.958 INFO    ] time= 25/08/2026 01:26:00
[2026-08-25 01:26:00,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:26:00,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:26:01,094.094 INFO    ] No existing commands found in stream
[2026-08-25 01:26:06,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:26:06,126.126 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 01:26:10,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:26:10,096.096 INFO    ] Checking for system updates...
[2026-08-25 01:26:10,134.134 INFO    ] 200
[2026-08-25 01:26:10,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:10,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:10,198.198 INFO    ] No update needed
[2026-08-25 01:26:10,201.201 INFO    ] Checking for camera pi updates...
[2026-08-25 01:26:10,240.240 INFO    ] 200
[2026-08-25 01:26:10,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:10,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:26:10,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:10,337.337 INFO    ] No camera update needed
[2026-08-25 01:26:10,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:26:10,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:26:10,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:26:10,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:26:12,392.392 INFO    ] ================================================
[2026-08-25 01:26:12,408.408 INFO    ] Launching Daemon at Tue Aug 25 01:26:12 IST 2026
[2026-08-25 01:26:12,419.419 INFO    ] ================================================
[2026-08-25 01:26:13,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:26:13
[2026-08-25 01:26:13,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:26:14,065.065 INFO    ] Initializing speech engine...
[2026-08-25 01:26:14,076.076 INFO    ] 2026-08-25 01:26:14
[2026-08-25 01:26:14,363.363 INFO    ] 2026-08-25 01:26:14
[2026-08-25 01:26:14,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:26:14,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:26:14,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:26:14,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:26:14,833.833 INFO    ] time= 25/08/2026 01:26:14
[2026-08-25 01:26:14,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:26:14,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:26:15,023.023 INFO    ] No existing commands found in stream
[2026-08-25 01:26:20,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:26:20,038.038 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 01:26:21,182.182 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:26:21,185.185 INFO    ] Checking for system updates...
[2026-08-25 01:26:21,221.221 INFO    ] 200
[2026-08-25 01:26:21,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:21,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:21,278.278 INFO    ] No update needed
[2026-08-25 01:26:21,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 01:26:21,313.313 INFO    ] 200
[2026-08-25 01:26:21,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:21,360.360 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:26:21,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:21,422.422 INFO    ] No camera update needed
[2026-08-25 01:26:21,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:26:21,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:26:21,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:26:21,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:26:23,476.476 INFO    ] ================================================
[2026-08-25 01:26:23,491.491 INFO    ] Launching Daemon at Tue Aug 25 01:26:23 IST 2026
[2026-08-25 01:26:23,502.502 INFO    ] ================================================
[2026-08-25 01:26:24,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:26:24
[2026-08-25 01:26:24,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:26:25,138.138 INFO    ] Initializing speech engine...
[2026-08-25 01:26:25,152.152 INFO    ] 2026-08-25 01:26:25
[2026-08-25 01:26:25,462.462 INFO    ] 2026-08-25 01:26:25
[2026-08-25 01:26:25,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:26:25,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:26:25,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:26:25,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:26:25,969.969 INFO    ] time= 25/08/2026 01:26:25
[2026-08-25 01:26:25,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:26:26,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:26:26,124.124 INFO    ] No existing commands found in stream
[2026-08-25 01:26:31,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:26:31,159.159 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 01:26:33,543.543 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:26:33,546.546 INFO    ] Checking for system updates...
[2026-08-25 01:26:33,581.581 INFO    ] 200
[2026-08-25 01:26:33,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:33,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:33,640.640 INFO    ] No update needed
[2026-08-25 01:26:33,642.642 INFO    ] Checking for camera pi updates...
[2026-08-25 01:26:33,676.676 INFO    ] 200
[2026-08-25 01:26:33,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:33,719.719 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:26:33,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:33,770.770 INFO    ] No camera update needed
[2026-08-25 01:26:33,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:26:33,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:26:33,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:26:33,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:26:35,826.826 INFO    ] ================================================
[2026-08-25 01:26:35,840.840 INFO    ] Launching Daemon at Tue Aug 25 01:26:35 IST 2026
[2026-08-25 01:26:35,851.851 INFO    ] ================================================
[2026-08-25 01:26:36,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:26:36
[2026-08-25 01:26:36,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:26:37,267.267 INFO    ] Initializing speech engine...
[2026-08-25 01:26:37,276.276 INFO    ] 2026-08-25 01:26:37
[2026-08-25 01:26:37,522.522 INFO    ] 2026-08-25 01:26:37
[2026-08-25 01:26:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:26:37,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:26:37,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:26:37,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:26:37,891.891 INFO    ] time= 25/08/2026 01:26:37
[2026-08-25 01:26:37,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:26:37,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:26:37,984.984 INFO    ] No existing commands found in stream
[2026-08-25 01:26:43,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:26:43,022.022 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 01:26:44,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:26:44,687.687 INFO    ] Checking for system updates...
[2026-08-25 01:26:44,723.723 INFO    ] 200
[2026-08-25 01:26:44,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:44,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:44,783.783 INFO    ] No update needed
[2026-08-25 01:26:44,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 01:26:44,820.820 INFO    ] 200
[2026-08-25 01:26:44,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:44,866.866 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:26:44,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:44,922.922 INFO    ] No camera update needed
[2026-08-25 01:26:44,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:26:44,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:26:44,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:26:44,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:26:46,980.980 INFO    ] ================================================
[2026-08-25 01:26:47,995.995 INFO    ] Launching Daemon at Tue Aug 25 01:26:46 IST 2026
[2026-08-25 01:26:47,006.006 INFO    ] ================================================
[2026-08-25 01:26:47,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:26:47
[2026-08-25 01:26:48,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:26:48,441.441 INFO    ] Initializing speech engine...
[2026-08-25 01:26:48,448.448 INFO    ] 2026-08-25 01:26:48
[2026-08-25 01:26:48,707.707 INFO    ] 2026-08-25 01:26:48
[2026-08-25 01:26:48,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:26:48,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:26:48,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:26:49,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:26:49,165.165 INFO    ] time= 25/08/2026 01:26:49
[2026-08-25 01:26:49,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:26:49,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:26:49,387.387 INFO    ] No existing commands found in stream
[2026-08-25 01:26:54,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:26:54,417.417 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 01:26:57,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:26:57,238.238 INFO    ] Checking for system updates...
[2026-08-25 01:26:57,273.273 INFO    ] 200
[2026-08-25 01:26:57,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:57,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:57,330.330 INFO    ] No update needed
[2026-08-25 01:26:57,332.332 INFO    ] Checking for camera pi updates...
[2026-08-25 01:26:57,365.365 INFO    ] 200
[2026-08-25 01:26:57,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:26:57,407.407 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:26:57,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:26:57,459.459 INFO    ] No camera update needed
[2026-08-25 01:26:57,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:26:57,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:26:57,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:26:57,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:26:59,516.516 INFO    ] ================================================
[2026-08-25 01:26:59,531.531 INFO    ] Launching Daemon at Tue Aug 25 01:26:59 IST 2026
[2026-08-25 01:26:59,541.541 INFO    ] ================================================
[2026-08-25 01:27:00,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:27:00
[2026-08-25 01:27:00,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:27:00,949.949 INFO    ] Initializing speech engine...
[2026-08-25 01:27:00,957.957 INFO    ] 2026-08-25 01:27:00
[2026-08-25 01:27:01,246.246 INFO    ] 2026-08-25 01:27:01
[2026-08-25 01:27:01,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:27:01,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:27:01,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:27:01,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:27:01,585.585 INFO    ] time= 25/08/2026 01:27:01
[2026-08-25 01:27:01,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:27:01,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:27:01,660.660 INFO    ] No existing commands found in stream
[2026-08-25 01:27:06,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:27:06,672.672 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 01:27:07,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:27:07,608.608 INFO    ] Checking for system updates...
[2026-08-25 01:27:07,643.643 INFO    ] 200
[2026-08-25 01:27:07,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:07,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:27:07,699.699 INFO    ] No update needed
[2026-08-25 01:27:07,701.701 INFO    ] Checking for camera pi updates...
[2026-08-25 01:27:07,734.734 INFO    ] 200
[2026-08-25 01:27:07,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:07,781.781 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:27:07,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:27:07,941.941 INFO    ] No camera update needed
[2026-08-25 01:27:07,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:27:07,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:27:07,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:27:07,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:27:10,996.996 INFO    ] ================================================
[2026-08-25 01:27:10,011.011 INFO    ] Launching Daemon at Tue Aug 25 01:27:10 IST 2026
[2026-08-25 01:27:10,022.022 INFO    ] ================================================
[2026-08-25 01:27:10,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:27:10
[2026-08-25 01:27:11,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:27:11,430.430 INFO    ] Initializing speech engine...
[2026-08-25 01:27:11,444.444 INFO    ] 2026-08-25 01:27:11
[2026-08-25 01:27:11,705.705 INFO    ] 2026-08-25 01:27:11
[2026-08-25 01:27:11,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:27:11,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:27:12,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:27:12,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:27:12,178.178 INFO    ] time= 25/08/2026 01:27:12
[2026-08-25 01:27:12,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:27:12,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:27:12,392.392 INFO    ] No existing commands found in stream
[2026-08-25 01:27:17,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:27:17,419.419 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 01:27:18,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:27:18,792.792 INFO    ] Checking for system updates...
[2026-08-25 01:27:18,829.829 INFO    ] 200
[2026-08-25 01:27:18,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:18,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:27:18,891.891 INFO    ] No update needed
[2026-08-25 01:27:18,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 01:27:18,928.928 INFO    ] 200
[2026-08-25 01:27:18,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:18,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:27:19,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:27:19,024.024 INFO    ] No camera update needed
[2026-08-25 01:27:19,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:27:19,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:27:19,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:27:19,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:27:21,081.081 INFO    ] ================================================
[2026-08-25 01:27:21,096.096 INFO    ] Launching Daemon at Tue Aug 25 01:27:21 IST 2026
[2026-08-25 01:27:21,107.107 INFO    ] ================================================
[2026-08-25 01:27:21,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:27:21
[2026-08-25 01:27:22,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:27:22,527.527 INFO    ] Initializing speech engine...
[2026-08-25 01:27:22,536.536 INFO    ] 2026-08-25 01:27:22
[2026-08-25 01:27:22,781.781 INFO    ] 2026-08-25 01:27:22
[2026-08-25 01:27:22,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:27:23,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:27:23,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:27:23,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:27:23,259.259 INFO    ] time= 25/08/2026 01:27:23
[2026-08-25 01:27:23,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:27:23,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:27:23,463.463 INFO    ] No existing commands found in stream
[2026-08-25 01:27:28,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:27:28,498.498 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 01:27:31,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:27:31,890.890 INFO    ] Checking for system updates...
[2026-08-25 01:27:31,927.927 INFO    ] 200
[2026-08-25 01:27:31,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:31,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:27:31,989.989 INFO    ] No update needed
[2026-08-25 01:27:31,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 01:27:32,027.027 INFO    ] 200
[2026-08-25 01:27:32,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:32,082.082 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:27:32,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:27:32,147.147 INFO    ] No camera update needed
[2026-08-25 01:27:32,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:27:32,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:27:32,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:27:32,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:27:34,208.208 INFO    ] ================================================
[2026-08-25 01:27:34,223.223 INFO    ] Launching Daemon at Tue Aug 25 01:27:34 IST 2026
[2026-08-25 01:27:34,234.234 INFO    ] ================================================
[2026-08-25 01:27:34,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:27:34
[2026-08-25 01:27:35,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:27:35,692.692 INFO    ] Initializing speech engine...
[2026-08-25 01:27:35,702.702 INFO    ] 2026-08-25 01:27:35
[2026-08-25 01:27:35,950.950 INFO    ] 2026-08-25 01:27:35
[2026-08-25 01:27:35,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:27:36,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:27:36,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:27:36,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:27:36,452.452 INFO    ] time= 25/08/2026 01:27:36
[2026-08-25 01:27:36,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:27:36,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:27:36,663.663 INFO    ] No existing commands found in stream
[2026-08-25 01:27:41,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:27:41,684.684 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 01:27:45,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:27:45,600.600 INFO    ] Checking for system updates...
[2026-08-25 01:27:45,636.636 INFO    ] 200
[2026-08-25 01:27:45,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:45,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:27:45,697.697 INFO    ] No update needed
[2026-08-25 01:27:45,699.699 INFO    ] Checking for camera pi updates...
[2026-08-25 01:27:45,732.732 INFO    ] 200
[2026-08-25 01:27:45,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:45,776.776 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:27:45,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:27:45,834.834 INFO    ] No camera update needed
[2026-08-25 01:27:45,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:27:45,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:27:45,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:27:45,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:27:47,888.888 INFO    ] ================================================
[2026-08-25 01:27:47,903.903 INFO    ] Launching Daemon at Tue Aug 25 01:27:47 IST 2026
[2026-08-25 01:27:47,915.915 INFO    ] ================================================
[2026-08-25 01:27:48,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:27:48
[2026-08-25 01:27:49,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:27:49,391.391 INFO    ] Initializing speech engine...
[2026-08-25 01:27:49,399.399 INFO    ] 2026-08-25 01:27:49
[2026-08-25 01:27:49,662.662 INFO    ] 2026-08-25 01:27:49
[2026-08-25 01:27:49,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:27:49,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:27:49,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:27:50,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:27:50,151.151 INFO    ] time= 25/08/2026 01:27:50
[2026-08-25 01:27:50,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:27:50,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:27:50,387.387 INFO    ] No existing commands found in stream
[2026-08-25 01:27:55,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:27:55,409.409 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 01:27:58,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:27:58,557.557 INFO    ] Checking for system updates...
[2026-08-25 01:27:58,592.592 INFO    ] 200
[2026-08-25 01:27:58,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:58,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:27:58,651.651 INFO    ] No update needed
[2026-08-25 01:27:58,653.653 INFO    ] Checking for camera pi updates...
[2026-08-25 01:27:58,686.686 INFO    ] 200
[2026-08-25 01:27:58,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:27:58,734.734 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:27:58,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:27:58,785.785 INFO    ] No camera update needed
[2026-08-25 01:27:58,787.787 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:27:58,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:27:58,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:27:58,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:28:00,841.841 INFO    ] ================================================
[2026-08-25 01:28:00,857.857 INFO    ] Launching Daemon at Tue Aug 25 01:28:00 IST 2026
[2026-08-25 01:28:00,868.868 INFO    ] ================================================
[2026-08-25 01:28:01,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:28:01
[2026-08-25 01:28:02,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:28:02,636.636 INFO    ] Initializing speech engine...
[2026-08-25 01:28:02,647.647 INFO    ] 2026-08-25 01:28:02
[2026-08-25 01:28:02,957.957 INFO    ] 2026-08-25 01:28:02
[2026-08-25 01:28:03,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:28:03,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:28:03,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:28:03,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:28:03,516.516 INFO    ] time= 25/08/2026 01:28:03
[2026-08-25 01:28:03,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:28:03,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:28:03,687.687 INFO    ] No existing commands found in stream
[2026-08-25 01:28:08,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:28:08,715.715 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 01:28:09,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:28:09,840.840 INFO    ] Checking for system updates...
[2026-08-25 01:28:09,877.877 INFO    ] 200
[2026-08-25 01:28:09,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:09,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:28:09,935.935 INFO    ] No update needed
[2026-08-25 01:28:09,938.938 INFO    ] Checking for camera pi updates...
[2026-08-25 01:28:09,977.977 INFO    ] 200
[2026-08-25 01:28:09,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:10,025.025 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:28:10,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:28:10,072.072 INFO    ] No camera update needed
[2026-08-25 01:28:10,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:28:10,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:28:10,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:28:10,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:28:12,129.129 INFO    ] ================================================
[2026-08-25 01:28:12,145.145 INFO    ] Launching Daemon at Tue Aug 25 01:28:12 IST 2026
[2026-08-25 01:28:12,157.157 INFO    ] ================================================
[2026-08-25 01:28:12,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:28:12
[2026-08-25 01:28:13,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:28:13,779.779 INFO    ] Initializing speech engine...
[2026-08-25 01:28:13,791.791 INFO    ] 2026-08-25 01:28:13
[2026-08-25 01:28:14,094.094 INFO    ] 2026-08-25 01:28:14
[2026-08-25 01:28:14,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:28:14,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:28:14,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:28:14,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:28:14,598.598 INFO    ] time= 25/08/2026 01:28:14
[2026-08-25 01:28:14,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:28:14,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:28:14,753.753 INFO    ] No existing commands found in stream
[2026-08-25 01:28:19,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:28:19,787.787 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 01:28:21,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:28:21,360.360 INFO    ] Checking for system updates...
[2026-08-25 01:28:21,396.396 INFO    ] 200
[2026-08-25 01:28:21,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:21,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:28:21,456.456 INFO    ] No update needed
[2026-08-25 01:28:21,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 01:28:21,492.492 INFO    ] 200
[2026-08-25 01:28:21,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:21,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:28:21,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:28:21,588.588 INFO    ] No camera update needed
[2026-08-25 01:28:21,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:28:21,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:28:21,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:28:21,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:28:23,644.644 INFO    ] ================================================
[2026-08-25 01:28:23,659.659 INFO    ] Launching Daemon at Tue Aug 25 01:28:23 IST 2026
[2026-08-25 01:28:23,671.671 INFO    ] ================================================
[2026-08-25 01:28:24,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:28:24
[2026-08-25 01:28:24,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:28:25,169.169 INFO    ] Initializing speech engine...
[2026-08-25 01:28:25,181.181 INFO    ] 2026-08-25 01:28:25
[2026-08-25 01:28:25,487.487 INFO    ] 2026-08-25 01:28:25
[2026-08-25 01:28:25,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:28:25,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:28:25,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:28:25,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:28:25,989.989 INFO    ] time= 25/08/2026 01:28:25
[2026-08-25 01:28:25,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:28:26,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:28:26,139.139 INFO    ] No existing commands found in stream
[2026-08-25 01:28:31,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:28:31,160.160 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 01:28:34,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:28:34,369.369 INFO    ] Checking for system updates...
[2026-08-25 01:28:34,405.405 INFO    ] 200
[2026-08-25 01:28:34,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:34,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:28:34,468.468 INFO    ] No update needed
[2026-08-25 01:28:34,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 01:28:34,511.511 INFO    ] 200
[2026-08-25 01:28:34,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:34,558.558 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:28:34,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:28:34,614.614 INFO    ] No camera update needed
[2026-08-25 01:28:34,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:28:34,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:28:34,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:28:34,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:28:36,669.669 INFO    ] ================================================
[2026-08-25 01:28:36,685.685 INFO    ] Launching Daemon at Tue Aug 25 01:28:36 IST 2026
[2026-08-25 01:28:36,697.697 INFO    ] ================================================
[2026-08-25 01:28:37,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:28:37
[2026-08-25 01:28:37,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:28:38,143.143 INFO    ] Initializing speech engine...
[2026-08-25 01:28:38,153.153 INFO    ] 2026-08-25 01:28:38
[2026-08-25 01:28:38,401.401 INFO    ] 2026-08-25 01:28:38
[2026-08-25 01:28:38,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:28:38,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:28:38,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:28:38,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:28:38,869.869 INFO    ] time= 25/08/2026 01:28:38
[2026-08-25 01:28:38,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:28:38,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:28:39,106.106 INFO    ] No existing commands found in stream
[2026-08-25 01:28:44,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:28:44,122.122 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 01:28:47,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:28:47,005.005 INFO    ] Checking for system updates...
[2026-08-25 01:28:47,041.041 INFO    ] 200
[2026-08-25 01:28:47,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:47,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:28:47,097.097 INFO    ] No update needed
[2026-08-25 01:28:47,100.100 INFO    ] Checking for camera pi updates...
[2026-08-25 01:28:47,133.133 INFO    ] 200
[2026-08-25 01:28:47,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:47,181.181 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:28:47,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:28:47,229.229 INFO    ] No camera update needed
[2026-08-25 01:28:47,231.231 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:28:47,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:28:47,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:28:47,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:28:49,284.284 INFO    ] ================================================
[2026-08-25 01:28:49,299.299 INFO    ] Launching Daemon at Tue Aug 25 01:28:49 IST 2026
[2026-08-25 01:28:49,311.311 INFO    ] ================================================
[2026-08-25 01:28:49,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:28:49
[2026-08-25 01:28:50,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:28:50,771.771 INFO    ] Initializing speech engine...
[2026-08-25 01:28:50,780.780 INFO    ] 2026-08-25 01:28:50
[2026-08-25 01:28:51,031.031 INFO    ] 2026-08-25 01:28:51
[2026-08-25 01:28:51,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:28:51,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:28:51,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:28:51,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:28:51,525.525 INFO    ] time= 25/08/2026 01:28:51
[2026-08-25 01:28:51,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:28:51,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:28:51,728.728 INFO    ] No existing commands found in stream
[2026-08-25 01:28:56,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:28:56,750.750 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 01:28:59,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:28:59,477.477 INFO    ] Checking for system updates...
[2026-08-25 01:28:59,513.513 INFO    ] 200
[2026-08-25 01:28:59,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:59,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:28:59,577.577 INFO    ] No update needed
[2026-08-25 01:28:59,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 01:28:59,616.616 INFO    ] 200
[2026-08-25 01:28:59,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:28:59,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:28:59,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:28:59,710.710 INFO    ] No camera update needed
[2026-08-25 01:28:59,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:28:59,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:28:59,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:28:59,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:29:01,779.779 INFO    ] ================================================
[2026-08-25 01:29:01,808.808 INFO    ] Launching Daemon at Tue Aug 25 01:29:01 IST 2026
[2026-08-25 01:29:01,822.822 INFO    ] ================================================
[2026-08-25 01:29:02,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:29:02
[2026-08-25 01:29:03,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:29:03,483.483 INFO    ] Initializing speech engine...
[2026-08-25 01:29:03,503.503 INFO    ] 2026-08-25 01:29:03
[2026-08-25 01:29:03,753.753 INFO    ] 2026-08-25 01:29:03
[2026-08-25 01:29:03,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:29:03,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:29:03,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:29:04,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:29:04,123.123 INFO    ] time= 25/08/2026 01:29:04
[2026-08-25 01:29:04,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:29:04,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:29:04,305.305 INFO    ] No existing commands found in stream
[2026-08-25 01:29:09,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:29:09,331.331 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 01:29:12,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:29:12,788.788 INFO    ] Checking for system updates...
[2026-08-25 01:29:12,825.825 INFO    ] 200
[2026-08-25 01:29:12,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:12,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:29:12,889.889 INFO    ] No update needed
[2026-08-25 01:29:12,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 01:29:12,930.930 INFO    ] 200
[2026-08-25 01:29:12,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:12,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:29:13,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:29:13,126.126 INFO    ] No camera update needed
[2026-08-25 01:29:13,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:29:13,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:29:13,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:29:13,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:29:15,184.184 INFO    ] ================================================
[2026-08-25 01:29:15,199.199 INFO    ] Launching Daemon at Tue Aug 25 01:29:15 IST 2026
[2026-08-25 01:29:15,211.211 INFO    ] ================================================
[2026-08-25 01:29:15,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:29:15
[2026-08-25 01:29:16,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:29:16,628.628 INFO    ] Initializing speech engine...
[2026-08-25 01:29:16,633.633 INFO    ] 2026-08-25 01:29:16
[2026-08-25 01:29:16,884.884 INFO    ] 2026-08-25 01:29:16
[2026-08-25 01:29:16,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:29:17,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:29:17,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:29:17,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:29:17,381.381 INFO    ] time= 25/08/2026 01:29:17
[2026-08-25 01:29:17,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:29:17,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:29:17,585.585 INFO    ] No existing commands found in stream
[2026-08-25 01:29:22,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:29:22,610.610 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 01:29:26,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:29:26,640.640 INFO    ] Checking for system updates...
[2026-08-25 01:29:26,675.675 INFO    ] 200
[2026-08-25 01:29:26,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:26,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:29:26,734.734 INFO    ] No update needed
[2026-08-25 01:29:26,737.737 INFO    ] Checking for camera pi updates...
[2026-08-25 01:29:26,773.773 INFO    ] 200
[2026-08-25 01:29:26,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:26,817.817 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:29:26,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:29:26,865.865 INFO    ] No camera update needed
[2026-08-25 01:29:26,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:29:26,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:29:26,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:29:26,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:29:28,922.922 INFO    ] ================================================
[2026-08-25 01:29:28,937.937 INFO    ] Launching Daemon at Tue Aug 25 01:29:28 IST 2026
[2026-08-25 01:29:28,949.949 INFO    ] ================================================
[2026-08-25 01:29:29,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:29:29
[2026-08-25 01:29:30,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:29:30,386.386 INFO    ] Initializing speech engine...
[2026-08-25 01:29:30,393.393 INFO    ] 2026-08-25 01:29:30
[2026-08-25 01:29:30,652.652 INFO    ] 2026-08-25 01:29:30
[2026-08-25 01:29:30,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:29:30,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:29:30,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:29:31,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:29:31,129.129 INFO    ] time= 25/08/2026 01:29:31
[2026-08-25 01:29:31,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:29:31,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:29:31,348.348 INFO    ] No existing commands found in stream
[2026-08-25 01:29:36,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:29:36,370.370 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 01:29:37,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:29:37,010.010 INFO    ] Checking for system updates...
[2026-08-25 01:29:37,049.049 INFO    ] 200
[2026-08-25 01:29:37,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:37,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:29:37,108.108 INFO    ] No update needed
[2026-08-25 01:29:37,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 01:29:37,153.153 INFO    ] 200
[2026-08-25 01:29:37,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:37,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:29:37,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:29:37,246.246 INFO    ] No camera update needed
[2026-08-25 01:29:37,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:29:37,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:29:37,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:29:37,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:29:39,306.306 INFO    ] ================================================
[2026-08-25 01:29:39,322.322 INFO    ] Launching Daemon at Tue Aug 25 01:29:39 IST 2026
[2026-08-25 01:29:39,333.333 INFO    ] ================================================
[2026-08-25 01:29:39,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:29:39
[2026-08-25 01:29:40,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:29:40,969.969 INFO    ] Initializing speech engine...
[2026-08-25 01:29:40,982.982 INFO    ] 2026-08-25 01:29:40
[2026-08-25 01:29:41,290.290 INFO    ] 2026-08-25 01:29:41
[2026-08-25 01:29:41,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:29:41,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:29:41,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:29:41,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:29:41,800.800 INFO    ] time= 25/08/2026 01:29:41
[2026-08-25 01:29:41,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:29:41,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:29:41,966.966 INFO    ] No existing commands found in stream
[2026-08-25 01:29:46,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:29:46,994.994 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 01:29:49,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:29:49,888.888 INFO    ] Checking for system updates...
[2026-08-25 01:29:49,930.930 INFO    ] 200
[2026-08-25 01:29:49,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:49,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:29:49,994.994 INFO    ] No update needed
[2026-08-25 01:29:49,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 01:29:50,031.031 INFO    ] 200
[2026-08-25 01:29:50,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:29:50,076.076 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:29:50,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:29:50,126.126 INFO    ] No camera update needed
[2026-08-25 01:29:50,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:29:50,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:29:50,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:29:50,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:29:52,184.184 INFO    ] ================================================
[2026-08-25 01:29:52,200.200 INFO    ] Launching Daemon at Tue Aug 25 01:29:52 IST 2026
[2026-08-25 01:29:52,211.211 INFO    ] ================================================
[2026-08-25 01:29:52,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:29:52
[2026-08-25 01:29:53,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:29:53,609.609 INFO    ] Initializing speech engine...
[2026-08-25 01:29:53,622.622 INFO    ] 2026-08-25 01:29:53
[2026-08-25 01:29:53,887.887 INFO    ] 2026-08-25 01:29:53
[2026-08-25 01:29:53,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:29:54,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:29:54,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:29:54,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:29:54,313.313 INFO    ] time= 25/08/2026 01:29:54
[2026-08-25 01:29:54,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:29:54,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:29:54,471.471 INFO    ] No existing commands found in stream
[2026-08-25 01:29:59,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:29:59,487.487 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 01:30:02,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:30:02,671.671 INFO    ] Checking for system updates...
[2026-08-25 01:30:02,717.717 INFO    ] 200
[2026-08-25 01:30:02,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:02,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:30:02,796.796 INFO    ] No update needed
[2026-08-25 01:30:02,799.799 INFO    ] Checking for camera pi updates...
[2026-08-25 01:30:02,847.847 INFO    ] 200
[2026-08-25 01:30:02,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:02,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:30:02,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:30:02,987.987 INFO    ] No camera update needed
[2026-08-25 01:30:02,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:30:02,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:30:03,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:30:03,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:30:05,053.053 INFO    ] ================================================
[2026-08-25 01:30:05,069.069 INFO    ] Launching Daemon at Tue Aug 25 01:30:05 IST 2026
[2026-08-25 01:30:05,080.080 INFO    ] ================================================
[2026-08-25 01:30:05,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:30:05
[2026-08-25 01:30:06,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:30:06,514.514 INFO    ] Initializing speech engine...
[2026-08-25 01:30:06,520.520 INFO    ] 2026-08-25 01:30:06
[2026-08-25 01:30:06,765.765 INFO    ] 2026-08-25 01:30:06
[2026-08-25 01:30:06,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:30:07,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:30:07,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:30:07,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:30:07,229.229 INFO    ] time= 25/08/2026 01:30:07
[2026-08-25 01:30:07,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:30:07,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:30:07,490.490 INFO    ] No existing commands found in stream
[2026-08-25 01:30:12,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:30:12,513.513 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 01:30:16,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:30:16,114.114 INFO    ] Checking for system updates...
[2026-08-25 01:30:16,150.150 INFO    ] 200
[2026-08-25 01:30:16,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:16,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:30:16,212.212 INFO    ] No update needed
[2026-08-25 01:30:16,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 01:30:16,250.250 INFO    ] 200
[2026-08-25 01:30:16,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:16,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:30:16,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:30:16,353.353 INFO    ] No camera update needed
[2026-08-25 01:30:16,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:30:16,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:30:16,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:30:16,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:30:18,408.408 INFO    ] ================================================
[2026-08-25 01:30:18,423.423 INFO    ] Launching Daemon at Tue Aug 25 01:30:18 IST 2026
[2026-08-25 01:30:18,434.434 INFO    ] ================================================
[2026-08-25 01:30:19,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:30:19
[2026-08-25 01:30:19,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:30:20,039.039 INFO    ] Initializing speech engine...
[2026-08-25 01:30:20,047.047 INFO    ] 2026-08-25 01:30:20
[2026-08-25 01:30:20,321.321 INFO    ] 2026-08-25 01:30:20
[2026-08-25 01:30:20,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:30:20,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:30:20,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:30:20,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:30:20,808.808 INFO    ] time= 25/08/2026 01:30:20
[2026-08-25 01:30:20,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:30:20,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:30:21,020.020 INFO    ] No existing commands found in stream
[2026-08-25 01:30:26,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:30:26,043.043 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 01:30:27,656.656 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:30:27,658.658 INFO    ] Checking for system updates...
[2026-08-25 01:30:27,694.694 INFO    ] 200
[2026-08-25 01:30:27,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:27,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:30:27,752.752 INFO    ] No update needed
[2026-08-25 01:30:27,754.754 INFO    ] Checking for camera pi updates...
[2026-08-25 01:30:27,788.788 INFO    ] 200
[2026-08-25 01:30:27,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:27,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:30:27,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:30:27,903.903 INFO    ] No camera update needed
[2026-08-25 01:30:27,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:30:27,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:30:27,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:30:27,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:30:29,959.959 INFO    ] ================================================
[2026-08-25 01:30:29,975.975 INFO    ] Launching Daemon at Tue Aug 25 01:30:29 IST 2026
[2026-08-25 01:30:29,988.988 INFO    ] ================================================
[2026-08-25 01:30:30,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:30:30
[2026-08-25 01:30:31,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:30:31,420.420 INFO    ] Initializing speech engine...
[2026-08-25 01:30:31,443.443 INFO    ] 2026-08-25 01:30:31
[2026-08-25 01:30:31,703.703 INFO    ] 2026-08-25 01:30:31
[2026-08-25 01:30:31,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:30:32,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:30:32,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:30:32,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:30:32,152.152 INFO    ] time= 25/08/2026 01:30:32
[2026-08-25 01:30:32,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:30:32,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:30:32,292.292 INFO    ] No existing commands found in stream
[2026-08-25 01:30:37,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:30:37,315.315 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 01:30:38,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:30:38,653.653 INFO    ] Checking for system updates...
[2026-08-25 01:30:38,694.694 INFO    ] 200
[2026-08-25 01:30:38,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:38,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:30:38,754.754 INFO    ] No update needed
[2026-08-25 01:30:38,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 01:30:38,791.791 INFO    ] 200
[2026-08-25 01:30:38,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:38,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:30:38,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:30:38,893.893 INFO    ] No camera update needed
[2026-08-25 01:30:38,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:30:38,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:30:38,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:30:38,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:30:40,954.954 INFO    ] ================================================
[2026-08-25 01:30:40,969.969 INFO    ] Launching Daemon at Tue Aug 25 01:30:40 IST 2026
[2026-08-25 01:30:40,980.980 INFO    ] ================================================
[2026-08-25 01:30:41,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:30:41
[2026-08-25 01:30:42,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:30:42,386.386 INFO    ] Initializing speech engine...
[2026-08-25 01:30:42,393.393 INFO    ] 2026-08-25 01:30:42
[2026-08-25 01:30:42,694.694 INFO    ] 2026-08-25 01:30:42
[2026-08-25 01:30:42,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:30:42,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:30:42,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:30:43,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:30:43,051.051 INFO    ] time= 25/08/2026 01:30:43
[2026-08-25 01:30:43,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:30:43,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:30:43,138.138 INFO    ] No existing commands found in stream
[2026-08-25 01:30:48,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:30:48,152.152 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 01:30:50,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:30:50,927.927 INFO    ] Checking for system updates...
[2026-08-25 01:30:50,967.967 INFO    ] 200
[2026-08-25 01:30:50,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:51,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:30:51,025.025 INFO    ] No update needed
[2026-08-25 01:30:51,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 01:30:51,060.060 INFO    ] 200
[2026-08-25 01:30:51,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:30:51,108.108 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:30:51,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:30:51,159.159 INFO    ] No camera update needed
[2026-08-25 01:30:51,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:30:51,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:30:51,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:30:51,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:30:53,214.214 INFO    ] ================================================
[2026-08-25 01:30:53,231.231 INFO    ] Launching Daemon at Tue Aug 25 01:30:53 IST 2026
[2026-08-25 01:30:53,242.242 INFO    ] ================================================
[2026-08-25 01:30:53,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:30:53
[2026-08-25 01:30:54,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:30:54,651.651 INFO    ] Initializing speech engine...
[2026-08-25 01:30:54,673.673 INFO    ] 2026-08-25 01:30:54
[2026-08-25 01:30:54,925.925 INFO    ] 2026-08-25 01:30:54
[2026-08-25 01:30:54,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:30:55,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:30:55,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:30:55,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:30:55,395.395 INFO    ] time= 25/08/2026 01:30:55
[2026-08-25 01:30:55,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:30:55,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:30:55,633.633 INFO    ] No existing commands found in stream
[2026-08-25 01:31:00,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:31:00,649.649 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 01:31:02,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:31:02,366.366 INFO    ] Checking for system updates...
[2026-08-25 01:31:02,409.409 INFO    ] 200
[2026-08-25 01:31:02,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:02,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:02,479.479 INFO    ] No update needed
[2026-08-25 01:31:02,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 01:31:02,539.539 INFO    ] 200
[2026-08-25 01:31:02,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:02,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:31:02,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:02,674.674 INFO    ] No camera update needed
[2026-08-25 01:31:02,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:31:02,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:31:02,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:31:02,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:31:04,736.736 INFO    ] ================================================
[2026-08-25 01:31:04,751.751 INFO    ] Launching Daemon at Tue Aug 25 01:31:04 IST 2026
[2026-08-25 01:31:04,763.763 INFO    ] ================================================
[2026-08-25 01:31:05,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:31:05
[2026-08-25 01:31:05,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:31:06,191.191 INFO    ] Initializing speech engine...
[2026-08-25 01:31:06,198.198 INFO    ] 2026-08-25 01:31:06
[2026-08-25 01:31:06,474.474 INFO    ] 2026-08-25 01:31:06
[2026-08-25 01:31:06,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:31:06,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:31:06,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:31:06,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:31:06,847.847 INFO    ] time= 25/08/2026 01:31:06
[2026-08-25 01:31:06,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:31:06,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:31:07,040.040 INFO    ] No existing commands found in stream
[2026-08-25 01:31:12,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:31:12,059.059 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 01:31:15,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:31:15,197.197 INFO    ] Checking for system updates...
[2026-08-25 01:31:15,232.232 INFO    ] 200
[2026-08-25 01:31:15,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:15,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:15,289.289 INFO    ] No update needed
[2026-08-25 01:31:15,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 01:31:15,326.326 INFO    ] 200
[2026-08-25 01:31:15,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:15,368.368 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:31:15,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:15,514.514 INFO    ] No camera update needed
[2026-08-25 01:31:15,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:31:15,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:31:15,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:31:15,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:31:17,569.569 INFO    ] ================================================
[2026-08-25 01:31:17,584.584 INFO    ] Launching Daemon at Tue Aug 25 01:31:17 IST 2026
[2026-08-25 01:31:17,596.596 INFO    ] ================================================
[2026-08-25 01:31:18,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:31:18
[2026-08-25 01:31:18,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:31:19,231.231 INFO    ] Initializing speech engine...
[2026-08-25 01:31:19,240.240 INFO    ] 2026-08-25 01:31:19
[2026-08-25 01:31:19,516.516 INFO    ] 2026-08-25 01:31:19
[2026-08-25 01:31:19,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:31:19,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:31:19,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:31:19,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:31:19,999.999 INFO    ] time= 25/08/2026 01:31:19
[2026-08-25 01:31:20,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:31:20,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:31:20,195.195 INFO    ] No existing commands found in stream
[2026-08-25 01:31:25,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:31:25,230.230 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 01:31:28,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:31:28,748.748 INFO    ] Checking for system updates...
[2026-08-25 01:31:28,783.783 INFO    ] 200
[2026-08-25 01:31:28,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:28,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:31:28,841.841 INFO    ] No update needed
[2026-08-25 01:31:28,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 01:31:28,880.880 INFO    ] 200
[2026-08-25 01:31:28,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:28,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:31:28,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:31:28,986.986 INFO    ] No camera update needed
[2026-08-25 01:31:28,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:31:28,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:31:28,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:31:29,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:31:31,042.042 INFO    ] ================================================
[2026-08-25 01:31:31,057.057 INFO    ] Launching Daemon at Tue Aug 25 01:31:31 IST 2026
[2026-08-25 01:31:31,068.068 INFO    ] ================================================
[2026-08-25 01:31:31,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:31:31
[2026-08-25 01:31:32,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:31:32,605.605 INFO    ] Initializing speech engine...
[2026-08-25 01:31:32,618.618 INFO    ] 2026-08-25 01:31:32
[2026-08-25 01:31:32,905.905 INFO    ] 2026-08-25 01:31:32
[2026-08-25 01:31:32,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:31:34,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:31:34,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:31:35,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:31:35,146.146 INFO    ] time= 25/08/2026 01:31:35
[2026-08-25 01:31:35,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:31:35,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:31:35,218.218 INFO    ] No existing commands found in stream
[2026-08-25 01:31:40,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:31:40,231.231 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 01:31:42,875.875 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:31:42,877.877 INFO    ] Checking for system updates...
[2026-08-25 01:31:42,913.913 INFO    ] 200
[2026-08-25 01:31:42,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:42,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:42,978.978 INFO    ] No update needed
[2026-08-25 01:31:42,980.980 INFO    ] Checking for camera pi updates...
[2026-08-25 01:31:43,013.013 INFO    ] 200
[2026-08-25 01:31:43,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:43,056.056 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:31:43,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:43,114.114 INFO    ] No camera update needed
[2026-08-25 01:31:43,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:31:43,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:31:43,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:31:43,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:31:45,174.174 INFO    ] ================================================
[2026-08-25 01:31:45,189.189 INFO    ] Launching Daemon at Tue Aug 25 01:31:45 IST 2026
[2026-08-25 01:31:45,200.200 INFO    ] ================================================
[2026-08-25 01:31:45,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:31:45
[2026-08-25 01:31:46,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:31:46,846.846 INFO    ] Initializing speech engine...
[2026-08-25 01:31:46,861.861 INFO    ] 2026-08-25 01:31:46
[2026-08-25 01:31:47,151.151 INFO    ] 2026-08-25 01:31:47
[2026-08-25 01:31:47,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:31:47,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:31:47,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:31:47,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:31:47,695.695 INFO    ] time= 25/08/2026 01:31:47
[2026-08-25 01:31:47,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:31:47,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:31:47,853.853 INFO    ] No existing commands found in stream
[2026-08-25 01:31:52,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:31:52,873.873 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 01:31:55,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:31:55,350.350 INFO    ] Checking for system updates...
[2026-08-25 01:31:55,387.387 INFO    ] 200
[2026-08-25 01:31:55,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:55,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:55,453.453 INFO    ] No update needed
[2026-08-25 01:31:55,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 01:31:55,490.490 INFO    ] 200
[2026-08-25 01:31:55,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:31:55,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:31:55,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:31:55,587.587 INFO    ] No camera update needed
[2026-08-25 01:31:55,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:31:55,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:31:55,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:31:55,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:31:57,642.642 INFO    ] ================================================
[2026-08-25 01:31:57,658.658 INFO    ] Launching Daemon at Tue Aug 25 01:31:57 IST 2026
[2026-08-25 01:31:57,670.670 INFO    ] ================================================
[2026-08-25 01:31:58,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:31:58
[2026-08-25 01:31:58,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:31:59,124.124 INFO    ] Initializing speech engine...
[2026-08-25 01:31:59,130.130 INFO    ] 2026-08-25 01:31:59
[2026-08-25 01:31:59,390.390 INFO    ] 2026-08-25 01:31:59
[2026-08-25 01:31:59,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:31:59,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:31:59,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:31:59,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:31:59,858.858 INFO    ] time= 25/08/2026 01:31:59
[2026-08-25 01:31:59,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:31:59,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:32:00,078.078 INFO    ] No existing commands found in stream
[2026-08-25 01:32:05,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:32:05,101.101 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 01:32:07,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:32:07,272.272 INFO    ] Checking for system updates...
[2026-08-25 01:32:07,310.310 INFO    ] 200
[2026-08-25 01:32:07,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:07,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:32:07,396.396 INFO    ] No update needed
[2026-08-25 01:32:07,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 01:32:07,435.435 INFO    ] 200
[2026-08-25 01:32:07,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:07,479.479 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:32:07,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:32:07,532.532 INFO    ] No camera update needed
[2026-08-25 01:32:07,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:32:07,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:32:07,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:32:07,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:32:09,592.592 INFO    ] ================================================
[2026-08-25 01:32:09,607.607 INFO    ] Launching Daemon at Tue Aug 25 01:32:09 IST 2026
[2026-08-25 01:32:09,617.617 INFO    ] ================================================
[2026-08-25 01:32:10,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:32:10
[2026-08-25 01:32:10,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:32:11,083.083 INFO    ] Initializing speech engine...
[2026-08-25 01:32:11,092.092 INFO    ] 2026-08-25 01:32:11
[2026-08-25 01:32:11,350.350 INFO    ] 2026-08-25 01:32:11
[2026-08-25 01:32:11,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:32:11,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:32:11,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:32:11,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:32:11,817.817 INFO    ] time= 25/08/2026 01:32:11
[2026-08-25 01:32:11,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:32:11,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:32:12,042.042 INFO    ] No existing commands found in stream
[2026-08-25 01:32:17,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:32:17,061.061 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 01:32:20,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:32:20,903.903 INFO    ] Checking for system updates...
[2026-08-25 01:32:20,938.938 INFO    ] 200
[2026-08-25 01:32:20,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:20,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:32:20,994.994 INFO    ] No update needed
[2026-08-25 01:32:20,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 01:32:21,030.030 INFO    ] 200
[2026-08-25 01:32:21,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:21,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:32:21,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:32:21,132.132 INFO    ] No camera update needed
[2026-08-25 01:32:21,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:32:21,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:32:21,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:32:21,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:32:23,188.188 INFO    ] ================================================
[2026-08-25 01:32:23,203.203 INFO    ] Launching Daemon at Tue Aug 25 01:32:23 IST 2026
[2026-08-25 01:32:23,213.213 INFO    ] ================================================
[2026-08-25 01:32:23,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:32:23
[2026-08-25 01:32:24,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:32:24,756.756 INFO    ] Initializing speech engine...
[2026-08-25 01:32:24,765.765 INFO    ] 2026-08-25 01:32:24
[2026-08-25 01:32:25,041.041 INFO    ] 2026-08-25 01:32:25
[2026-08-25 01:32:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:32:25,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:32:25,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:32:25,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:32:25,422.422 INFO    ] time= 25/08/2026 01:32:25
[2026-08-25 01:32:25,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:32:25,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:32:25,601.601 INFO    ] No existing commands found in stream
[2026-08-25 01:32:30,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:32:30,634.634 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 01:32:32,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:32:32,650.650 INFO    ] Checking for system updates...
[2026-08-25 01:32:32,689.689 INFO    ] 200
[2026-08-25 01:32:32,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:32,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:32:32,748.748 INFO    ] No update needed
[2026-08-25 01:32:32,751.751 INFO    ] Checking for camera pi updates...
[2026-08-25 01:32:32,785.785 INFO    ] 200
[2026-08-25 01:32:32,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:32,828.828 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:32:32,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:32:32,883.883 INFO    ] No camera update needed
[2026-08-25 01:32:32,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:32:32,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:32:32,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:32:32,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:32:34,939.939 INFO    ] ================================================
[2026-08-25 01:32:34,954.954 INFO    ] Launching Daemon at Tue Aug 25 01:32:34 IST 2026
[2026-08-25 01:32:34,965.965 INFO    ] ================================================
[2026-08-25 01:32:35,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:32:35
[2026-08-25 01:32:36,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:32:36,552.552 INFO    ] Initializing speech engine...
[2026-08-25 01:32:36,565.565 INFO    ] 2026-08-25 01:32:36
[2026-08-25 01:32:36,874.874 INFO    ] 2026-08-25 01:32:36
[2026-08-25 01:32:36,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:32:37,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:32:37,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:32:37,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:32:37,401.401 INFO    ] time= 25/08/2026 01:32:37
[2026-08-25 01:32:37,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:32:37,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:32:37,558.558 INFO    ] No existing commands found in stream
[2026-08-25 01:32:42,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:32:42,581.581 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 01:32:44,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:32:44,249.249 INFO    ] Checking for system updates...
[2026-08-25 01:32:44,290.290 INFO    ] 200
[2026-08-25 01:32:44,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:44,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:32:44,356.356 INFO    ] No update needed
[2026-08-25 01:32:44,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 01:32:44,396.396 INFO    ] 200
[2026-08-25 01:32:44,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:44,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:32:44,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:32:44,503.503 INFO    ] No camera update needed
[2026-08-25 01:32:44,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:32:44,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:32:44,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:32:44,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:32:46,558.558 INFO    ] ================================================
[2026-08-25 01:32:46,573.573 INFO    ] Launching Daemon at Tue Aug 25 01:32:46 IST 2026
[2026-08-25 01:32:46,584.584 INFO    ] ================================================
[2026-08-25 01:32:47,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:32:47
[2026-08-25 01:32:47,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:32:48,191.191 INFO    ] Initializing speech engine...
[2026-08-25 01:32:48,202.202 INFO    ] 2026-08-25 01:32:48
[2026-08-25 01:32:48,509.509 INFO    ] 2026-08-25 01:32:48
[2026-08-25 01:32:48,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:32:48,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:32:48,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:32:48,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:32:48,965.965 INFO    ] time= 25/08/2026 01:32:48
[2026-08-25 01:32:49,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:32:49,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:32:49,176.176 INFO    ] No existing commands found in stream
[2026-08-25 01:32:54,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:32:54,205.205 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 01:32:57,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:32:57,951.951 INFO    ] Checking for system updates...
[2026-08-25 01:32:57,987.987 INFO    ] 200
[2026-08-25 01:32:57,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:58,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:32:58,045.045 INFO    ] No update needed
[2026-08-25 01:32:58,048.048 INFO    ] Checking for camera pi updates...
[2026-08-25 01:32:58,086.086 INFO    ] 200
[2026-08-25 01:32:58,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:32:58,135.135 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:32:58,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:32:58,193.193 INFO    ] No camera update needed
[2026-08-25 01:32:58,196.196 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:32:58,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:32:58,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:32:58,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:33:00,252.252 INFO    ] ================================================
[2026-08-25 01:33:00,267.267 INFO    ] Launching Daemon at Tue Aug 25 01:33:00 IST 2026
[2026-08-25 01:33:00,278.278 INFO    ] ================================================
[2026-08-25 01:33:00,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:33:00
[2026-08-25 01:33:01,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:33:02,080.080 INFO    ] Initializing speech engine...
[2026-08-25 01:33:02,091.091 INFO    ] 2026-08-25 01:33:02
[2026-08-25 01:33:02,423.423 INFO    ] 2026-08-25 01:33:02
[2026-08-25 01:33:02,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:33:02,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:33:02,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:33:02,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:33:02,898.898 INFO    ] time= 25/08/2026 01:33:02
[2026-08-25 01:33:02,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:33:02,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:33:03,084.084 INFO    ] No existing commands found in stream
[2026-08-25 01:33:08,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:33:08,126.126 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 01:33:09,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:33:09,687.687 INFO    ] Checking for system updates...
[2026-08-25 01:33:09,723.723 INFO    ] 200
[2026-08-25 01:33:09,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:09,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:33:09,784.784 INFO    ] No update needed
[2026-08-25 01:33:09,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 01:33:09,819.819 INFO    ] 200
[2026-08-25 01:33:09,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:09,867.867 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:33:09,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:33:09,912.912 INFO    ] No camera update needed
[2026-08-25 01:33:09,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:33:09,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:33:09,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:33:09,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:33:11,966.966 INFO    ] ================================================
[2026-08-25 01:33:11,982.982 INFO    ] Launching Daemon at Tue Aug 25 01:33:11 IST 2026
[2026-08-25 01:33:11,993.993 INFO    ] ================================================
[2026-08-25 01:33:12,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:33:12
[2026-08-25 01:33:13,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:33:13,403.403 INFO    ] Initializing speech engine...
[2026-08-25 01:33:13,412.412 INFO    ] 2026-08-25 01:33:13
[2026-08-25 01:33:13,659.659 INFO    ] 2026-08-25 01:33:13
[2026-08-25 01:33:13,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:33:13,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:33:13,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:33:14,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:33:14,126.126 INFO    ] time= 25/08/2026 01:33:14
[2026-08-25 01:33:14,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:33:14,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:33:14,349.349 INFO    ] No existing commands found in stream
[2026-08-25 01:33:19,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:33:19,376.376 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 01:33:23,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:33:23,613.613 INFO    ] Checking for system updates...
[2026-08-25 01:33:23,649.649 INFO    ] 200
[2026-08-25 01:33:23,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:23,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:33:23,712.712 INFO    ] No update needed
[2026-08-25 01:33:23,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 01:33:23,747.747 INFO    ] 200
[2026-08-25 01:33:23,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:23,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:33:23,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:33:23,938.938 INFO    ] No camera update needed
[2026-08-25 01:33:23,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:33:23,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:33:23,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:33:23,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:33:25,992.992 INFO    ] ================================================
[2026-08-25 01:33:26,007.007 INFO    ] Launching Daemon at Tue Aug 25 01:33:26 IST 2026
[2026-08-25 01:33:26,018.018 INFO    ] ================================================
[2026-08-25 01:33:26,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:33:26
[2026-08-25 01:33:27,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:33:27,417.417 INFO    ] Initializing speech engine...
[2026-08-25 01:33:27,423.423 INFO    ] 2026-08-25 01:33:27
[2026-08-25 01:33:27,696.696 INFO    ] 2026-08-25 01:33:27
[2026-08-25 01:33:27,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:33:27,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:33:27,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:33:28,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:33:28,073.073 INFO    ] time= 25/08/2026 01:33:28
[2026-08-25 01:33:28,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:33:28,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:33:28,262.262 INFO    ] No existing commands found in stream
[2026-08-25 01:33:33,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:33:33,287.287 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 01:33:35,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:33:35,842.842 INFO    ] Checking for system updates...
[2026-08-25 01:33:35,877.877 INFO    ] 200
[2026-08-25 01:33:35,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:35,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:33:35,942.942 INFO    ] No update needed
[2026-08-25 01:33:35,944.944 INFO    ] Checking for camera pi updates...
[2026-08-25 01:33:35,978.978 INFO    ] 200
[2026-08-25 01:33:35,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:36,025.025 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:33:36,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:33:36,077.077 INFO    ] No camera update needed
[2026-08-25 01:33:36,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:33:36,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:33:36,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:33:36,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:33:38,135.135 INFO    ] ================================================
[2026-08-25 01:33:38,151.151 INFO    ] Launching Daemon at Tue Aug 25 01:33:38 IST 2026
[2026-08-25 01:33:38,162.162 INFO    ] ================================================
[2026-08-25 01:33:38,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:33:38
[2026-08-25 01:33:39,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:33:39,780.780 INFO    ] Initializing speech engine...
[2026-08-25 01:33:39,788.788 INFO    ] 2026-08-25 01:33:39
[2026-08-25 01:33:40,060.060 INFO    ] 2026-08-25 01:33:40
[2026-08-25 01:33:40,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:33:40,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:33:40,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:33:40,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:33:40,530.530 INFO    ] time= 25/08/2026 01:33:40
[2026-08-25 01:33:40,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:33:40,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:33:40,764.764 INFO    ] No existing commands found in stream
[2026-08-25 01:33:45,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:33:45,783.783 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 01:33:48,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:33:48,270.270 INFO    ] Checking for system updates...
[2026-08-25 01:33:48,307.307 INFO    ] 200
[2026-08-25 01:33:48,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:48,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:33:48,365.365 INFO    ] No update needed
[2026-08-25 01:33:48,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 01:33:48,401.401 INFO    ] 200
[2026-08-25 01:33:48,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:33:48,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:33:48,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:33:48,489.489 INFO    ] No camera update needed
[2026-08-25 01:33:48,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:33:48,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:33:48,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:33:48,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:33:50,546.546 INFO    ] ================================================
[2026-08-25 01:33:50,561.561 INFO    ] Launching Daemon at Tue Aug 25 01:33:50 IST 2026
[2026-08-25 01:33:50,573.573 INFO    ] ================================================
[2026-08-25 01:33:51,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:33:51
[2026-08-25 01:33:51,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:33:52,208.208 INFO    ] Initializing speech engine...
[2026-08-25 01:33:52,216.216 INFO    ] 2026-08-25 01:33:52
[2026-08-25 01:33:52,476.476 INFO    ] 2026-08-25 01:33:52
[2026-08-25 01:33:52,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:33:52,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:33:52,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:33:52,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:33:52,946.946 INFO    ] time= 25/08/2026 01:33:52
[2026-08-25 01:33:53,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:33:53,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:33:53,167.167 INFO    ] No existing commands found in stream
[2026-08-25 01:33:58,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:33:58,190.190 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 01:34:01,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:34:01,819.819 INFO    ] Checking for system updates...
[2026-08-25 01:34:01,862.862 INFO    ] 200
[2026-08-25 01:34:01,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:01,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:01,927.927 INFO    ] No update needed
[2026-08-25 01:34:01,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 01:34:01,972.972 INFO    ] 200
[2026-08-25 01:34:01,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:02,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:34:02,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:02,117.117 INFO    ] No camera update needed
[2026-08-25 01:34:02,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:34:02,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:34:02,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:34:02,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:34:04,181.181 INFO    ] ================================================
[2026-08-25 01:34:04,197.197 INFO    ] Launching Daemon at Tue Aug 25 01:34:04 IST 2026
[2026-08-25 01:34:04,209.209 INFO    ] ================================================
[2026-08-25 01:34:04,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:34:04
[2026-08-25 01:34:05,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:34:05,635.635 INFO    ] Initializing speech engine...
[2026-08-25 01:34:05,644.644 INFO    ] 2026-08-25 01:34:05
[2026-08-25 01:34:05,893.893 INFO    ] 2026-08-25 01:34:05
[2026-08-25 01:34:05,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:34:06,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:34:06,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:34:06,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:34:06,263.263 INFO    ] time= 25/08/2026 01:34:06
[2026-08-25 01:34:06,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:34:06,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:34:06,366.366 INFO    ] No existing commands found in stream
[2026-08-25 01:34:11,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:34:11,404.404 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 01:34:12,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:34:12,249.249 INFO    ] Checking for system updates...
[2026-08-25 01:34:12,288.288 INFO    ] 200
[2026-08-25 01:34:12,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:12,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:12,346.346 INFO    ] No update needed
[2026-08-25 01:34:12,348.348 INFO    ] Checking for camera pi updates...
[2026-08-25 01:34:12,384.384 INFO    ] 200
[2026-08-25 01:34:12,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:12,431.431 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:34:12,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:12,488.488 INFO    ] No camera update needed
[2026-08-25 01:34:12,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:34:12,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:34:12,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:34:12,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:34:14,543.543 INFO    ] ================================================
[2026-08-25 01:34:14,559.559 INFO    ] Launching Daemon at Tue Aug 25 01:34:14 IST 2026
[2026-08-25 01:34:14,571.571 INFO    ] ================================================
[2026-08-25 01:34:15,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:34:15
[2026-08-25 01:34:15,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:34:16,024.024 INFO    ] Initializing speech engine...
[2026-08-25 01:34:16,034.034 INFO    ] 2026-08-25 01:34:16
[2026-08-25 01:34:16,297.297 INFO    ] 2026-08-25 01:34:16
[2026-08-25 01:34:16,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:34:16,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:34:16,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:34:16,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:34:16,757.757 INFO    ] time= 25/08/2026 01:34:16
[2026-08-25 01:34:16,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:34:16,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:34:16,982.982 INFO    ] No existing commands found in stream
[2026-08-25 01:34:22,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:34:22,007.007 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 01:34:23,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:34:23,010.010 INFO    ] Checking for system updates...
[2026-08-25 01:34:23,050.050 INFO    ] 200
[2026-08-25 01:34:23,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:23,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:34:23,111.111 INFO    ] No update needed
[2026-08-25 01:34:23,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 01:34:23,147.147 INFO    ] 200
[2026-08-25 01:34:23,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:23,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:34:23,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:34:23,241.241 INFO    ] No camera update needed
[2026-08-25 01:34:23,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:34:23,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:34:23,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:34:23,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:34:25,300.300 INFO    ] ================================================
[2026-08-25 01:34:25,316.316 INFO    ] Launching Daemon at Tue Aug 25 01:34:25 IST 2026
[2026-08-25 01:34:25,328.328 INFO    ] ================================================
[2026-08-25 01:34:25,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:34:25
[2026-08-25 01:34:26,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:34:26,747.747 INFO    ] Initializing speech engine...
[2026-08-25 01:34:26,756.756 INFO    ] 2026-08-25 01:34:26
[2026-08-25 01:34:27,001.001 INFO    ] 2026-08-25 01:34:26
[2026-08-25 01:34:27,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:34:27,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:34:27,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:34:27,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:34:27,477.477 INFO    ] time= 25/08/2026 01:34:27
[2026-08-25 01:34:27,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:34:27,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:34:27,706.706 INFO    ] No existing commands found in stream
[2026-08-25 01:34:32,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:34:32,724.724 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 01:34:36,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:34:36,272.272 INFO    ] Checking for system updates...
[2026-08-25 01:34:36,308.308 INFO    ] 200
[2026-08-25 01:34:36,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:36,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:36,371.371 INFO    ] No update needed
[2026-08-25 01:34:36,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 01:34:36,408.408 INFO    ] 200
[2026-08-25 01:34:36,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:36,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:34:36,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:36,506.506 INFO    ] No camera update needed
[2026-08-25 01:34:36,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:34:36,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:34:36,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:34:36,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:34:38,566.566 INFO    ] ================================================
[2026-08-25 01:34:38,582.582 INFO    ] Launching Daemon at Tue Aug 25 01:34:38 IST 2026
[2026-08-25 01:34:38,598.598 INFO    ] ================================================
[2026-08-25 01:34:39,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:34:39
[2026-08-25 01:34:39,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:34:40,004.004 INFO    ] Initializing speech engine...
[2026-08-25 01:34:40,017.017 INFO    ] 2026-08-25 01:34:40
[2026-08-25 01:34:40,291.291 INFO    ] 2026-08-25 01:34:40
[2026-08-25 01:34:40,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:34:40,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:34:40,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:34:40,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:34:40,795.795 INFO    ] time= 25/08/2026 01:34:40
[2026-08-25 01:34:40,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:34:40,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:34:40,993.993 INFO    ] No existing commands found in stream
[2026-08-25 01:34:46,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:34:46,011.011 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 01:34:49,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:34:49,159.159 INFO    ] Checking for system updates...
[2026-08-25 01:34:49,195.195 INFO    ] 200
[2026-08-25 01:34:49,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:49,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:49,258.258 INFO    ] No update needed
[2026-08-25 01:34:49,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 01:34:49,298.298 INFO    ] 200
[2026-08-25 01:34:49,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:34:49,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:34:49,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:34:49,388.388 INFO    ] No camera update needed
[2026-08-25 01:34:49,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:34:49,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:34:49,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:34:49,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:34:51,444.444 INFO    ] ================================================
[2026-08-25 01:34:51,459.459 INFO    ] Launching Daemon at Tue Aug 25 01:34:51 IST 2026
[2026-08-25 01:34:51,470.470 INFO    ] ================================================
[2026-08-25 01:34:52,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:34:52
[2026-08-25 01:34:52,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:34:52,926.926 INFO    ] Initializing speech engine...
[2026-08-25 01:34:52,935.935 INFO    ] 2026-08-25 01:34:52
[2026-08-25 01:34:53,184.184 INFO    ] 2026-08-25 01:34:53
[2026-08-25 01:34:53,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:34:53,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:34:53,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:34:53,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:34:53,552.552 INFO    ] time= 25/08/2026 01:34:53
[2026-08-25 01:34:53,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:34:53,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:34:53,749.749 INFO    ] No existing commands found in stream
[2026-08-25 01:34:58,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:34:58,762.762 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 01:35:02,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:35:02,892.892 INFO    ] Checking for system updates...
[2026-08-25 01:35:02,934.934 INFO    ] 200
[2026-08-25 01:35:02,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:03,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:35:03,011.011 INFO    ] No update needed
[2026-08-25 01:35:03,013.013 INFO    ] Checking for camera pi updates...
[2026-08-25 01:35:03,056.056 INFO    ] 200
[2026-08-25 01:35:03,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:03,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:35:03,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:35:03,181.181 INFO    ] No camera update needed
[2026-08-25 01:35:03,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:35:03,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:35:03,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:35:03,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:35:05,237.237 INFO    ] ================================================
[2026-08-25 01:35:05,252.252 INFO    ] Launching Daemon at Tue Aug 25 01:35:05 IST 2026
[2026-08-25 01:35:05,263.263 INFO    ] ================================================
[2026-08-25 01:35:05,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:35:05
[2026-08-25 01:35:06,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:35:06,733.733 INFO    ] Initializing speech engine...
[2026-08-25 01:35:06,742.742 INFO    ] 2026-08-25 01:35:06
[2026-08-25 01:35:06,995.995 INFO    ] 2026-08-25 01:35:06
[2026-08-25 01:35:07,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:35:07,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:35:07,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:35:07,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:35:07,439.439 INFO    ] time= 25/08/2026 01:35:07
[2026-08-25 01:35:07,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:35:07,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:35:07,558.558 INFO    ] No existing commands found in stream
[2026-08-25 01:35:12,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:35:12,573.573 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 01:35:15,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:35:15,462.462 INFO    ] Checking for system updates...
[2026-08-25 01:35:15,498.498 INFO    ] 200
[2026-08-25 01:35:15,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:15,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:35:15,562.562 INFO    ] No update needed
[2026-08-25 01:35:15,564.564 INFO    ] Checking for camera pi updates...
[2026-08-25 01:35:15,601.601 INFO    ] 200
[2026-08-25 01:35:15,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:15,644.644 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:35:15,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:35:15,695.695 INFO    ] No camera update needed
[2026-08-25 01:35:15,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:35:15,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:35:15,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:35:15,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:35:17,751.751 INFO    ] ================================================
[2026-08-25 01:35:17,767.767 INFO    ] Launching Daemon at Tue Aug 25 01:35:17 IST 2026
[2026-08-25 01:35:17,778.778 INFO    ] ================================================
[2026-08-25 01:35:18,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:35:18
[2026-08-25 01:35:19,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:35:19,338.338 INFO    ] Initializing speech engine...
[2026-08-25 01:35:19,346.346 INFO    ] 2026-08-25 01:35:19
[2026-08-25 01:35:19,632.632 INFO    ] 2026-08-25 01:35:19
[2026-08-25 01:35:19,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:35:19,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:35:19,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:35:20,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:35:20,012.012 INFO    ] time= 25/08/2026 01:35:20
[2026-08-25 01:35:20,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:35:20,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:35:20,176.176 INFO    ] No existing commands found in stream
[2026-08-25 01:35:25,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:35:25,201.201 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 01:35:29,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:35:29,382.382 INFO    ] Checking for system updates...
[2026-08-25 01:35:29,423.423 INFO    ] 200
[2026-08-25 01:35:29,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:29,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:35:29,482.482 INFO    ] No update needed
[2026-08-25 01:35:29,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 01:35:29,524.524 INFO    ] 200
[2026-08-25 01:35:29,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:29,569.569 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:35:29,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:35:29,723.723 INFO    ] No camera update needed
[2026-08-25 01:35:29,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:35:29,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:35:29,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:35:29,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:35:31,780.780 INFO    ] ================================================
[2026-08-25 01:35:31,810.810 INFO    ] Launching Daemon at Tue Aug 25 01:35:31 IST 2026
[2026-08-25 01:35:31,821.821 INFO    ] ================================================
[2026-08-25 01:35:32,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:35:32
[2026-08-25 01:35:33,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:35:33,368.368 INFO    ] Initializing speech engine...
[2026-08-25 01:35:33,377.377 INFO    ] 2026-08-25 01:35:33
[2026-08-25 01:35:33,635.635 INFO    ] 2026-08-25 01:35:33
[2026-08-25 01:35:33,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:35:33,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:35:33,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:35:34,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:35:34,099.099 INFO    ] time= 25/08/2026 01:35:34
[2026-08-25 01:35:34,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:35:34,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:35:34,273.273 INFO    ] No existing commands found in stream
[2026-08-25 01:35:39,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:35:39,288.288 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 01:35:41,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:35:41,358.358 INFO    ] Checking for system updates...
[2026-08-25 01:35:41,399.399 INFO    ] 200
[2026-08-25 01:35:41,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:41,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:35:41,460.460 INFO    ] No update needed
[2026-08-25 01:35:41,463.463 INFO    ] Checking for camera pi updates...
[2026-08-25 01:35:41,502.502 INFO    ] 200
[2026-08-25 01:35:41,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:41,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:35:41,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:35:41,631.631 INFO    ] No camera update needed
[2026-08-25 01:35:41,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:35:41,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:35:41,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:35:41,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:35:43,690.690 INFO    ] ================================================
[2026-08-25 01:35:43,707.707 INFO    ] Launching Daemon at Tue Aug 25 01:35:43 IST 2026
[2026-08-25 01:35:43,720.720 INFO    ] ================================================
[2026-08-25 01:35:44,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:35:44
[2026-08-25 01:35:45,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:35:45,420.420 INFO    ] Initializing speech engine...
[2026-08-25 01:35:45,428.428 INFO    ] 2026-08-25 01:35:45
[2026-08-25 01:35:45,673.673 INFO    ] 2026-08-25 01:35:45
[2026-08-25 01:35:45,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:35:45,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:35:45,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:35:46,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:35:46,158.158 INFO    ] time= 25/08/2026 01:35:46
[2026-08-25 01:35:46,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:35:46,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:35:46,340.340 INFO    ] No existing commands found in stream
[2026-08-25 01:35:51,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:35:51,355.355 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 01:35:53,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:35:53,821.821 INFO    ] Checking for system updates...
[2026-08-25 01:35:53,860.860 INFO    ] 200
[2026-08-25 01:35:53,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:53,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:35:53,924.924 INFO    ] No update needed
[2026-08-25 01:35:53,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 01:35:53,961.961 INFO    ] 200
[2026-08-25 01:35:53,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:35:54,008.008 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:35:54,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:35:54,056.056 INFO    ] No camera update needed
[2026-08-25 01:35:54,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:35:54,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:35:54,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:35:54,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:35:56,112.112 INFO    ] ================================================
[2026-08-25 01:35:56,127.127 INFO    ] Launching Daemon at Tue Aug 25 01:35:56 IST 2026
[2026-08-25 01:35:56,139.139 INFO    ] ================================================
[2026-08-25 01:35:56,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:35:56
[2026-08-25 01:35:57,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:35:57,552.552 INFO    ] Initializing speech engine...
[2026-08-25 01:35:57,561.561 INFO    ] 2026-08-25 01:35:57
[2026-08-25 01:35:57,809.809 INFO    ] 2026-08-25 01:35:57
[2026-08-25 01:35:57,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:35:58,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:35:58,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:35:58,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:35:58,177.177 INFO    ] time= 25/08/2026 01:35:58
[2026-08-25 01:35:58,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:35:58,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:35:58,352.352 INFO    ] No existing commands found in stream
[2026-08-25 01:36:03,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:36:03,385.385 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 01:36:06,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:36:06,686.686 INFO    ] Checking for system updates...
[2026-08-25 01:36:06,722.722 INFO    ] 200
[2026-08-25 01:36:06,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:06,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:36:06,784.784 INFO    ] No update needed
[2026-08-25 01:36:06,787.787 INFO    ] Checking for camera pi updates...
[2026-08-25 01:36:06,824.824 INFO    ] 200
[2026-08-25 01:36:06,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:06,870.870 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:36:06,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:36:06,917.917 INFO    ] No camera update needed
[2026-08-25 01:36:06,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:36:06,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:36:06,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:36:06,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:36:08,978.978 INFO    ] ================================================
[2026-08-25 01:36:08,993.993 INFO    ] Launching Daemon at Tue Aug 25 01:36:08 IST 2026
[2026-08-25 01:36:09,005.005 INFO    ] ================================================
[2026-08-25 01:36:09,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:36:09
[2026-08-25 01:36:10,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:36:10,493.493 INFO    ] Initializing speech engine...
[2026-08-25 01:36:10,505.505 INFO    ] 2026-08-25 01:36:10
[2026-08-25 01:36:10,773.773 INFO    ] 2026-08-25 01:36:10
[2026-08-25 01:36:10,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:36:11,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:36:11,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:36:11,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:36:11,225.225 INFO    ] time= 25/08/2026 01:36:11
[2026-08-25 01:36:11,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:36:11,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:36:11,366.366 INFO    ] No existing commands found in stream
[2026-08-25 01:36:16,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:36:16,381.381 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 01:36:19,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:36:19,492.492 INFO    ] Checking for system updates...
[2026-08-25 01:36:19,531.531 INFO    ] 200
[2026-08-25 01:36:19,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:19,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:36:19,594.594 INFO    ] No update needed
[2026-08-25 01:36:19,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 01:36:19,631.631 INFO    ] 200
[2026-08-25 01:36:19,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:19,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:36:19,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:36:19,734.734 INFO    ] No camera update needed
[2026-08-25 01:36:19,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:36:19,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:36:19,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:36:19,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:36:21,795.795 INFO    ] ================================================
[2026-08-25 01:36:21,811.811 INFO    ] Launching Daemon at Tue Aug 25 01:36:21 IST 2026
[2026-08-25 01:36:21,822.822 INFO    ] ================================================
[2026-08-25 01:36:22,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:36:22
[2026-08-25 01:36:22,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:36:23,223.223 INFO    ] Initializing speech engine...
[2026-08-25 01:36:23,246.246 INFO    ] 2026-08-25 01:36:23
[2026-08-25 01:36:23,497.497 INFO    ] 2026-08-25 01:36:23
[2026-08-25 01:36:23,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:36:23,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:36:23,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:36:23,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:36:23,966.966 INFO    ] time= 25/08/2026 01:36:23
[2026-08-25 01:36:24,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:36:24,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:36:24,173.173 INFO    ] No existing commands found in stream
[2026-08-25 01:36:29,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:36:29,203.203 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 01:36:30,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:36:30,149.149 INFO    ] Checking for system updates...
[2026-08-25 01:36:30,185.185 INFO    ] 200
[2026-08-25 01:36:30,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:30,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:36:30,245.245 INFO    ] No update needed
[2026-08-25 01:36:30,248.248 INFO    ] Checking for camera pi updates...
[2026-08-25 01:36:30,281.281 INFO    ] 200
[2026-08-25 01:36:30,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:30,323.323 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:36:30,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:36:30,373.373 INFO    ] No camera update needed
[2026-08-25 01:36:30,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:36:30,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:36:30,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:36:30,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:36:32,430.430 INFO    ] ================================================
[2026-08-25 01:36:32,446.446 INFO    ] Launching Daemon at Tue Aug 25 01:36:32 IST 2026
[2026-08-25 01:36:32,458.458 INFO    ] ================================================
[2026-08-25 01:36:33,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:36:33
[2026-08-25 01:36:33,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:36:34,049.049 INFO    ] Initializing speech engine...
[2026-08-25 01:36:34,061.061 INFO    ] 2026-08-25 01:36:34
[2026-08-25 01:36:34,331.331 INFO    ] 2026-08-25 01:36:34
[2026-08-25 01:36:34,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:36:34,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:36:34,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:36:34,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:36:34,817.817 INFO    ] time= 25/08/2026 01:36:34
[2026-08-25 01:36:34,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:36:34,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:36:35,022.022 INFO    ] No existing commands found in stream
[2026-08-25 01:36:40,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:36:40,048.048 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 01:36:41,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:36:41,260.260 INFO    ] Checking for system updates...
[2026-08-25 01:36:41,299.299 INFO    ] 200
[2026-08-25 01:36:41,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:41,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:36:41,357.357 INFO    ] No update needed
[2026-08-25 01:36:41,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 01:36:41,396.396 INFO    ] 200
[2026-08-25 01:36:41,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:41,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:36:41,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:36:41,488.488 INFO    ] No camera update needed
[2026-08-25 01:36:41,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:36:41,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:36:41,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:36:41,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:36:43,542.542 INFO    ] ================================================
[2026-08-25 01:36:43,558.558 INFO    ] Launching Daemon at Tue Aug 25 01:36:43 IST 2026
[2026-08-25 01:36:43,569.569 INFO    ] ================================================
[2026-08-25 01:36:44,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:36:44
[2026-08-25 01:36:44,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:36:45,022.022 INFO    ] Initializing speech engine...
[2026-08-25 01:36:45,029.029 INFO    ] 2026-08-25 01:36:45
[2026-08-25 01:36:45,304.304 INFO    ] 2026-08-25 01:36:45
[2026-08-25 01:36:45,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:36:45,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:36:45,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:36:45,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:36:45,740.740 INFO    ] time= 25/08/2026 01:36:45
[2026-08-25 01:36:45,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:36:45,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:36:45,982.982 INFO    ] No existing commands found in stream
[2026-08-25 01:36:50,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:36:50,999.999 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 01:36:55,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:36:55,088.088 INFO    ] Checking for system updates...
[2026-08-25 01:36:55,124.124 INFO    ] 200
[2026-08-25 01:36:55,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:55,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:36:55,182.182 INFO    ] No update needed
[2026-08-25 01:36:55,184.184 INFO    ] Checking for camera pi updates...
[2026-08-25 01:36:55,217.217 INFO    ] 200
[2026-08-25 01:36:55,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:36:55,265.265 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:36:55,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:36:55,322.322 INFO    ] No camera update needed
[2026-08-25 01:36:55,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:36:55,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:36:55,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:36:55,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:36:57,378.378 INFO    ] ================================================
[2026-08-25 01:36:57,393.393 INFO    ] Launching Daemon at Tue Aug 25 01:36:57 IST 2026
[2026-08-25 01:36:57,403.403 INFO    ] ================================================
[2026-08-25 01:36:57,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:36:57
[2026-08-25 01:36:58,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:36:58,803.803 INFO    ] Initializing speech engine...
[2026-08-25 01:36:58,817.817 INFO    ] 2026-08-25 01:36:58
[2026-08-25 01:36:59,083.083 INFO    ] 2026-08-25 01:36:59
[2026-08-25 01:36:59,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:36:59,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:36:59,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:36:59,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:36:59,513.513 INFO    ] time= 25/08/2026 01:36:59
[2026-08-25 01:36:59,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:36:59,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:36:59,706.706 INFO    ] No existing commands found in stream
[2026-08-25 01:37:04,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:37:04,721.721 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 01:37:07,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:37:07,553.553 INFO    ] Checking for system updates...
[2026-08-25 01:37:07,590.590 INFO    ] 200
[2026-08-25 01:37:07,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:07,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:37:07,649.649 INFO    ] No update needed
[2026-08-25 01:37:07,652.652 INFO    ] Checking for camera pi updates...
[2026-08-25 01:37:07,688.688 INFO    ] 200
[2026-08-25 01:37:07,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:07,732.732 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:37:07,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:37:07,778.778 INFO    ] No camera update needed
[2026-08-25 01:37:07,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:37:07,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:37:07,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:37:07,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:37:09,834.834 INFO    ] ================================================
[2026-08-25 01:37:09,849.849 INFO    ] Launching Daemon at Tue Aug 25 01:37:09 IST 2026
[2026-08-25 01:37:09,860.860 INFO    ] ================================================
[2026-08-25 01:37:10,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:37:10
[2026-08-25 01:37:11,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:37:11,418.418 INFO    ] Initializing speech engine...
[2026-08-25 01:37:11,424.424 INFO    ] 2026-08-25 01:37:11
[2026-08-25 01:37:11,681.681 INFO    ] 2026-08-25 01:37:11
[2026-08-25 01:37:11,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:37:11,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:37:11,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:37:12,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:37:12,186.186 INFO    ] time= 25/08/2026 01:37:12
[2026-08-25 01:37:12,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:37:12,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:37:12,438.438 INFO    ] No existing commands found in stream
[2026-08-25 01:37:17,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:37:17,466.466 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 01:37:18,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:37:18,808.808 INFO    ] Checking for system updates...
[2026-08-25 01:37:18,847.847 INFO    ] 200
[2026-08-25 01:37:18,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:18,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:37:18,903.903 INFO    ] No update needed
[2026-08-25 01:37:18,906.906 INFO    ] Checking for camera pi updates...
[2026-08-25 01:37:18,942.942 INFO    ] 200
[2026-08-25 01:37:18,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:18,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:37:19,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:37:19,043.043 INFO    ] No camera update needed
[2026-08-25 01:37:19,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:37:19,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:37:19,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:37:19,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:37:21,097.097 INFO    ] ================================================
[2026-08-25 01:37:21,112.112 INFO    ] Launching Daemon at Tue Aug 25 01:37:21 IST 2026
[2026-08-25 01:37:21,123.123 INFO    ] ================================================
[2026-08-25 01:37:21,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:37:21
[2026-08-25 01:37:22,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:37:22,584.584 INFO    ] Initializing speech engine...
[2026-08-25 01:37:22,594.594 INFO    ] 2026-08-25 01:37:22
[2026-08-25 01:37:22,856.856 INFO    ] 2026-08-25 01:37:22
[2026-08-25 01:37:22,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:37:23,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:37:23,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:37:23,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:37:23,325.325 INFO    ] time= 25/08/2026 01:37:23
[2026-08-25 01:37:23,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:37:23,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:37:23,545.545 INFO    ] No existing commands found in stream
[2026-08-25 01:37:28,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:37:28,568.568 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 01:37:32,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:37:32,819.819 INFO    ] Checking for system updates...
[2026-08-25 01:37:32,858.858 INFO    ] 200
[2026-08-25 01:37:32,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:32,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:37:32,921.921 INFO    ] No update needed
[2026-08-25 01:37:32,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 01:37:32,957.957 INFO    ] 200
[2026-08-25 01:37:32,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:33,005.005 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:37:33,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:37:33,053.053 INFO    ] No camera update needed
[2026-08-25 01:37:33,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:37:33,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:37:33,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:37:33,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:37:35,107.107 INFO    ] ================================================
[2026-08-25 01:37:35,122.122 INFO    ] Launching Daemon at Tue Aug 25 01:37:35 IST 2026
[2026-08-25 01:37:35,133.133 INFO    ] ================================================
[2026-08-25 01:37:35,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:37:35
[2026-08-25 01:37:36,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:37:36,553.553 INFO    ] Initializing speech engine...
[2026-08-25 01:37:36,560.560 INFO    ] 2026-08-25 01:37:36
[2026-08-25 01:37:36,803.803 INFO    ] 2026-08-25 01:37:36
[2026-08-25 01:37:36,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:37:37,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:37:37,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:37:37,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:37:37,296.296 INFO    ] time= 25/08/2026 01:37:37
[2026-08-25 01:37:37,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:37:37,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:37:37,509.509 INFO    ] No existing commands found in stream
[2026-08-25 01:37:42,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:37:42,537.537 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 01:37:43,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:37:43,657.657 INFO    ] Checking for system updates...
[2026-08-25 01:37:43,697.697 INFO    ] 200
[2026-08-25 01:37:43,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:43,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:37:43,760.760 INFO    ] No update needed
[2026-08-25 01:37:43,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 01:37:43,799.799 INFO    ] 200
[2026-08-25 01:37:43,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:43,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:37:43,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:37:43,899.899 INFO    ] No camera update needed
[2026-08-25 01:37:43,901.901 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:37:43,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:37:43,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:37:43,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:37:45,954.954 INFO    ] ================================================
[2026-08-25 01:37:45,969.969 INFO    ] Launching Daemon at Tue Aug 25 01:37:45 IST 2026
[2026-08-25 01:37:45,981.981 INFO    ] ================================================
[2026-08-25 01:37:46,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:37:46
[2026-08-25 01:37:47,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:37:47,405.405 INFO    ] Initializing speech engine...
[2026-08-25 01:37:47,413.413 INFO    ] 2026-08-25 01:37:47
[2026-08-25 01:37:47,655.655 INFO    ] 2026-08-25 01:37:47
[2026-08-25 01:37:47,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:37:47,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:37:47,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:37:48,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:37:48,095.095 INFO    ] time= 25/08/2026 01:37:48
[2026-08-25 01:37:48,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:37:48,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:37:48,350.350 INFO    ] No existing commands found in stream
[2026-08-25 01:37:53,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:37:53,378.378 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 01:37:55,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:37:55,208.208 INFO    ] Checking for system updates...
[2026-08-25 01:37:55,249.249 INFO    ] 200
[2026-08-25 01:37:55,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:55,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:37:55,311.311 INFO    ] No update needed
[2026-08-25 01:37:55,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 01:37:55,352.352 INFO    ] 200
[2026-08-25 01:37:55,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:37:55,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:37:55,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:37:55,450.450 INFO    ] No camera update needed
[2026-08-25 01:37:55,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:37:55,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:37:55,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:37:55,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:37:57,509.509 INFO    ] ================================================
[2026-08-25 01:37:57,525.525 INFO    ] Launching Daemon at Tue Aug 25 01:37:57 IST 2026
[2026-08-25 01:37:57,537.537 INFO    ] ================================================
[2026-08-25 01:37:58,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:37:58
[2026-08-25 01:37:58,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:37:59,040.040 INFO    ] Initializing speech engine...
[2026-08-25 01:37:59,062.062 INFO    ] 2026-08-25 01:37:59
[2026-08-25 01:37:59,320.320 INFO    ] 2026-08-25 01:37:59
[2026-08-25 01:37:59,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:37:59,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:37:59,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:37:59,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:37:59,697.697 INFO    ] time= 25/08/2026 01:37:59
[2026-08-25 01:37:59,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:37:59,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:37:59,884.884 INFO    ] No existing commands found in stream
[2026-08-25 01:38:04,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:38:04,913.913 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 01:38:05,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:38:05,945.945 INFO    ] Checking for system updates...
[2026-08-25 01:38:05,984.984 INFO    ] 200
[2026-08-25 01:38:05,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:06,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:38:06,041.041 INFO    ] No update needed
[2026-08-25 01:38:06,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 01:38:06,081.081 INFO    ] 200
[2026-08-25 01:38:06,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:06,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:38:06,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:38:06,184.184 INFO    ] No camera update needed
[2026-08-25 01:38:06,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:38:06,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:38:06,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:38:06,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:38:08,239.239 INFO    ] ================================================
[2026-08-25 01:38:08,256.256 INFO    ] Launching Daemon at Tue Aug 25 01:38:08 IST 2026
[2026-08-25 01:38:08,266.266 INFO    ] ================================================
[2026-08-25 01:38:08,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:38:08
[2026-08-25 01:38:09,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:38:09,911.911 INFO    ] Initializing speech engine...
[2026-08-25 01:38:09,921.921 INFO    ] 2026-08-25 01:38:09
[2026-08-25 01:38:10,214.214 INFO    ] 2026-08-25 01:38:10
[2026-08-25 01:38:10,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:38:10,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:38:10,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:38:10,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:38:10,718.718 INFO    ] time= 25/08/2026 01:38:10
[2026-08-25 01:38:10,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:38:10,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:38:10,903.903 INFO    ] No existing commands found in stream
[2026-08-25 01:38:15,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:38:15,922.922 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 01:38:20,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:38:20,011.011 INFO    ] Checking for system updates...
[2026-08-25 01:38:20,052.052 INFO    ] 200
[2026-08-25 01:38:20,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:20,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:38:20,119.119 INFO    ] No update needed
[2026-08-25 01:38:20,122.122 INFO    ] Checking for camera pi updates...
[2026-08-25 01:38:20,160.160 INFO    ] 200
[2026-08-25 01:38:20,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:20,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:38:20,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:38:20,265.265 INFO    ] No camera update needed
[2026-08-25 01:38:20,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:38:20,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:38:20,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:38:20,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:38:22,323.323 INFO    ] ================================================
[2026-08-25 01:38:22,338.338 INFO    ] Launching Daemon at Tue Aug 25 01:38:22 IST 2026
[2026-08-25 01:38:22,350.350 INFO    ] ================================================
[2026-08-25 01:38:22,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:38:22
[2026-08-25 01:38:23,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:38:23,774.774 INFO    ] Initializing speech engine...
[2026-08-25 01:38:23,781.781 INFO    ] 2026-08-25 01:38:23
[2026-08-25 01:38:24,025.025 INFO    ] 2026-08-25 01:38:24
[2026-08-25 01:38:24,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:38:24,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:38:24,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:38:24,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:38:24,468.468 INFO    ] time= 25/08/2026 01:38:24
[2026-08-25 01:38:24,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:38:24,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:38:24,718.718 INFO    ] No existing commands found in stream
[2026-08-25 01:38:29,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:38:29,745.745 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 01:38:31,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:38:31,643.643 INFO    ] Checking for system updates...
[2026-08-25 01:38:31,682.682 INFO    ] 200
[2026-08-25 01:38:31,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:31,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:38:31,754.754 INFO    ] No update needed
[2026-08-25 01:38:31,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 01:38:31,794.794 INFO    ] 200
[2026-08-25 01:38:31,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:31,851.851 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:38:31,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:38:31,912.912 INFO    ] No camera update needed
[2026-08-25 01:38:31,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:38:31,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:38:31,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:38:31,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:38:33,970.970 INFO    ] ================================================
[2026-08-25 01:38:33,987.987 INFO    ] Launching Daemon at Tue Aug 25 01:38:33 IST 2026
[2026-08-25 01:38:34,997.997 INFO    ] ================================================
[2026-08-25 01:38:34,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:38:34
[2026-08-25 01:38:35,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:38:35,658.658 INFO    ] Initializing speech engine...
[2026-08-25 01:38:35,670.670 INFO    ] 2026-08-25 01:38:35
[2026-08-25 01:38:35,979.979 INFO    ] 2026-08-25 01:38:35
[2026-08-25 01:38:36,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:38:36,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:38:36,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:38:36,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:38:36,490.490 INFO    ] time= 25/08/2026 01:38:36
[2026-08-25 01:38:36,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:38:36,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:38:36,664.664 INFO    ] No existing commands found in stream
[2026-08-25 01:38:41,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:38:41,699.699 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 01:38:43,421.421 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:38:43,424.424 INFO    ] Checking for system updates...
[2026-08-25 01:38:43,465.465 INFO    ] 200
[2026-08-25 01:38:43,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:43,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:38:43,533.533 INFO    ] No update needed
[2026-08-25 01:38:43,535.535 INFO    ] Checking for camera pi updates...
[2026-08-25 01:38:43,570.570 INFO    ] 200
[2026-08-25 01:38:43,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:43,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:38:43,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:38:43,674.674 INFO    ] No camera update needed
[2026-08-25 01:38:43,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:38:43,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:38:43,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:38:43,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:38:45,734.734 INFO    ] ================================================
[2026-08-25 01:38:45,749.749 INFO    ] Launching Daemon at Tue Aug 25 01:38:45 IST 2026
[2026-08-25 01:38:45,760.760 INFO    ] ================================================
[2026-08-25 01:38:46,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:38:46
[2026-08-25 01:38:46,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:38:47,166.166 INFO    ] Initializing speech engine...
[2026-08-25 01:38:47,189.189 INFO    ] 2026-08-25 01:38:47
[2026-08-25 01:38:47,446.446 INFO    ] 2026-08-25 01:38:47
[2026-08-25 01:38:47,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:38:47,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:38:47,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:38:47,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:38:47,826.826 INFO    ] time= 25/08/2026 01:38:47
[2026-08-25 01:38:47,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:38:47,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:38:47,982.982 INFO    ] No existing commands found in stream
[2026-08-25 01:38:53,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:38:53,009.009 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 01:38:54,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:38:54,478.478 INFO    ] Checking for system updates...
[2026-08-25 01:38:54,513.513 INFO    ] 200
[2026-08-25 01:38:54,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:54,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:38:54,570.570 INFO    ] No update needed
[2026-08-25 01:38:54,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 01:38:54,605.605 INFO    ] 200
[2026-08-25 01:38:54,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:38:54,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:38:54,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:38:54,698.698 INFO    ] No camera update needed
[2026-08-25 01:38:54,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:38:54,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:38:54,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:38:54,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:38:56,754.754 INFO    ] ================================================
[2026-08-25 01:38:56,770.770 INFO    ] Launching Daemon at Tue Aug 25 01:38:56 IST 2026
[2026-08-25 01:38:56,782.782 INFO    ] ================================================
[2026-08-25 01:38:57,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:38:57
[2026-08-25 01:38:57,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:38:58,203.203 INFO    ] Initializing speech engine...
[2026-08-25 01:38:58,216.216 INFO    ] 2026-08-25 01:38:58
[2026-08-25 01:38:58,467.467 INFO    ] 2026-08-25 01:38:58
[2026-08-25 01:38:58,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:38:58,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:38:58,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:38:58,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:38:58,843.843 INFO    ] time= 25/08/2026 01:38:58
[2026-08-25 01:38:58,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:38:58,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:38:59,026.026 INFO    ] No existing commands found in stream
[2026-08-25 01:39:04,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:39:04,054.054 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 01:39:06,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:39:06,588.588 INFO    ] Checking for system updates...
[2026-08-25 01:39:06,627.627 INFO    ] 200
[2026-08-25 01:39:06,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:06,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:39:06,689.689 INFO    ] No update needed
[2026-08-25 01:39:06,691.691 INFO    ] Checking for camera pi updates...
[2026-08-25 01:39:06,725.725 INFO    ] 200
[2026-08-25 01:39:06,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:06,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:39:06,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:39:06,814.814 INFO    ] No camera update needed
[2026-08-25 01:39:06,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:39:06,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:39:06,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:39:06,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:39:08,873.873 INFO    ] ================================================
[2026-08-25 01:39:08,889.889 INFO    ] Launching Daemon at Tue Aug 25 01:39:08 IST 2026
[2026-08-25 01:39:08,899.899 INFO    ] ================================================
[2026-08-25 01:39:09,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:39:09
[2026-08-25 01:39:10,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:39:10,421.421 INFO    ] Initializing speech engine...
[2026-08-25 01:39:10,435.435 INFO    ] 2026-08-25 01:39:10
[2026-08-25 01:39:10,741.741 INFO    ] 2026-08-25 01:39:10
[2026-08-25 01:39:10,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:39:11,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:39:11,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:39:11,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:39:11,250.250 INFO    ] time= 25/08/2026 01:39:11
[2026-08-25 01:39:11,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:39:11,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:39:11,434.434 INFO    ] No existing commands found in stream
[2026-08-25 01:39:16,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:39:16,469.469 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 01:39:29,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:39:29,326.326 INFO    ] Checking for system updates...
[2026-08-25 01:39:29,363.363 INFO    ] 200
[2026-08-25 01:39:29,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:29,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:39:29,422.422 INFO    ] No update needed
[2026-08-25 01:39:29,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 01:39:29,459.459 INFO    ] 200
[2026-08-25 01:39:29,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:29,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:39:29,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:39:29,552.552 INFO    ] No camera update needed
[2026-08-25 01:39:29,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:39:29,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:39:29,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:39:29,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:39:31,612.612 INFO    ] ================================================
[2026-08-25 01:39:31,630.630 INFO    ] Launching Daemon at Tue Aug 25 01:39:31 IST 2026
[2026-08-25 01:39:31,642.642 INFO    ] ================================================
[2026-08-25 01:39:32,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:39:32
[2026-08-25 01:39:32,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:39:33,166.166 INFO    ] Initializing speech engine...
[2026-08-25 01:39:33,173.173 INFO    ] 2026-08-25 01:39:33
[2026-08-25 01:39:33,454.454 INFO    ] 2026-08-25 01:39:33
[2026-08-25 01:39:33,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:39:33,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:39:33,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:39:33,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:39:33,824.824 INFO    ] time= 25/08/2026 01:39:33
[2026-08-25 01:39:33,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:39:33,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:39:33,908.908 INFO    ] No existing commands found in stream
[2026-08-25 01:39:38,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:39:38,922.922 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 01:39:40,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:39:40,969.969 INFO    ] Checking for system updates...
[2026-08-25 01:39:41,075.075 INFO    ] 200
[2026-08-25 01:39:41,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:41,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:39:41,134.134 INFO    ] No update needed
[2026-08-25 01:39:41,137.137 INFO    ] Checking for camera pi updates...
[2026-08-25 01:39:41,177.177 INFO    ] 200
[2026-08-25 01:39:41,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:41,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:39:41,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:39:41,373.373 INFO    ] No camera update needed
[2026-08-25 01:39:41,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:39:41,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:39:41,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:39:41,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:39:43,432.432 INFO    ] ================================================
[2026-08-25 01:39:43,448.448 INFO    ] Launching Daemon at Tue Aug 25 01:39:43 IST 2026
[2026-08-25 01:39:43,459.459 INFO    ] ================================================
[2026-08-25 01:39:44,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:39:44
[2026-08-25 01:39:44,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:39:44,940.940 INFO    ] Initializing speech engine...
[2026-08-25 01:39:44,956.956 INFO    ] 2026-08-25 01:39:44
[2026-08-25 01:39:45,237.237 INFO    ] 2026-08-25 01:39:45
[2026-08-25 01:39:45,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:39:45,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:39:45,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:39:45,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:39:45,665.665 INFO    ] time= 25/08/2026 01:39:45
[2026-08-25 01:39:45,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:39:45,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:39:45,755.755 INFO    ] No existing commands found in stream
[2026-08-25 01:39:50,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:39:50,774.774 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 01:39:54,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:39:54,400.400 INFO    ] Checking for system updates...
[2026-08-25 01:39:54,435.435 INFO    ] 200
[2026-08-25 01:39:54,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:54,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:39:54,492.492 INFO    ] No update needed
[2026-08-25 01:39:54,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 01:39:54,532.532 INFO    ] 200
[2026-08-25 01:39:54,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:39:54,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:39:54,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:39:54,629.629 INFO    ] No camera update needed
[2026-08-25 01:39:54,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:39:54,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:39:54,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:39:54,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:39:56,684.684 INFO    ] ================================================
[2026-08-25 01:39:56,699.699 INFO    ] Launching Daemon at Tue Aug 25 01:39:56 IST 2026
[2026-08-25 01:39:56,710.710 INFO    ] ================================================
[2026-08-25 01:39:57,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:39:57
[2026-08-25 01:39:57,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:39:58,128.128 INFO    ] Initializing speech engine...
[2026-08-25 01:39:58,141.141 INFO    ] 2026-08-25 01:39:58
[2026-08-25 01:39:58,433.433 INFO    ] 2026-08-25 01:39:58
[2026-08-25 01:39:58,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:39:58,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:39:58,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:39:58,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:39:58,826.826 INFO    ] time= 25/08/2026 01:39:58
[2026-08-25 01:39:58,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:39:58,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:39:58,953.953 INFO    ] No existing commands found in stream
[2026-08-25 01:40:03,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:40:03,969.969 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 01:40:08,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:40:08,285.285 INFO    ] Checking for system updates...
[2026-08-25 01:40:08,324.324 INFO    ] 200
[2026-08-25 01:40:08,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:08,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:40:08,388.388 INFO    ] No update needed
[2026-08-25 01:40:08,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 01:40:08,423.423 INFO    ] 200
[2026-08-25 01:40:08,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:08,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:40:08,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:40:08,516.516 INFO    ] No camera update needed
[2026-08-25 01:40:08,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:40:08,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:40:08,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:40:08,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:40:10,571.571 INFO    ] ================================================
[2026-08-25 01:40:10,587.587 INFO    ] Launching Daemon at Tue Aug 25 01:40:10 IST 2026
[2026-08-25 01:40:10,598.598 INFO    ] ================================================
[2026-08-25 01:40:11,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:40:11
[2026-08-25 01:40:11,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:40:12,042.042 INFO    ] Initializing speech engine...
[2026-08-25 01:40:12,058.058 INFO    ] 2026-08-25 01:40:12
[2026-08-25 01:40:12,329.329 INFO    ] 2026-08-25 01:40:12
[2026-08-25 01:40:12,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:40:12,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:40:12,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:40:12,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:40:12,812.812 INFO    ] time= 25/08/2026 01:40:12
[2026-08-25 01:40:12,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:40:12,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:40:13,036.036 INFO    ] No existing commands found in stream
[2026-08-25 01:40:18,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:40:18,052.052 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 01:40:21,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:40:21,240.240 INFO    ] Checking for system updates...
[2026-08-25 01:40:21,278.278 INFO    ] 200
[2026-08-25 01:40:21,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:21,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:40:21,343.343 INFO    ] No update needed
[2026-08-25 01:40:21,346.346 INFO    ] Checking for camera pi updates...
[2026-08-25 01:40:21,384.384 INFO    ] 200
[2026-08-25 01:40:21,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:21,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:40:21,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:40:21,493.493 INFO    ] No camera update needed
[2026-08-25 01:40:21,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:40:21,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:40:21,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:40:21,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:40:23,550.550 INFO    ] ================================================
[2026-08-25 01:40:23,566.566 INFO    ] Launching Daemon at Tue Aug 25 01:40:23 IST 2026
[2026-08-25 01:40:23,576.576 INFO    ] ================================================
[2026-08-25 01:40:24,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:40:24
[2026-08-25 01:40:24,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:40:24,992.992 INFO    ] Initializing speech engine...
[2026-08-25 01:40:25,002.002 INFO    ] 2026-08-25 01:40:24
[2026-08-25 01:40:25,248.248 INFO    ] 2026-08-25 01:40:25
[2026-08-25 01:40:25,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:40:25,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:40:25,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:40:25,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:40:25,616.616 INFO    ] time= 25/08/2026 01:40:25
[2026-08-25 01:40:25,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:40:25,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:40:25,805.805 INFO    ] No existing commands found in stream
[2026-08-25 01:40:30,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:40:30,826.826 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 01:40:32,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:40:32,720.720 INFO    ] Checking for system updates...
[2026-08-25 01:40:32,755.755 INFO    ] 200
[2026-08-25 01:40:32,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:32,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:40:32,811.811 INFO    ] No update needed
[2026-08-25 01:40:32,814.814 INFO    ] Checking for camera pi updates...
[2026-08-25 01:40:32,850.850 INFO    ] 200
[2026-08-25 01:40:32,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:32,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:40:32,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:40:32,949.949 INFO    ] No camera update needed
[2026-08-25 01:40:32,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:40:32,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:40:32,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:40:32,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:40:35,005.005 INFO    ] ================================================
[2026-08-25 01:40:35,020.020 INFO    ] Launching Daemon at Tue Aug 25 01:40:35 IST 2026
[2026-08-25 01:40:35,031.031 INFO    ] ================================================
[2026-08-25 01:40:35,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:40:35
[2026-08-25 01:40:36,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:40:36,628.628 INFO    ] Initializing speech engine...
[2026-08-25 01:40:36,641.641 INFO    ] 2026-08-25 01:40:36
[2026-08-25 01:40:36,951.951 INFO    ] 2026-08-25 01:40:36
[2026-08-25 01:40:37,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:40:37,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:40:37,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:40:37,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:40:37,451.451 INFO    ] time= 25/08/2026 01:40:37
[2026-08-25 01:40:37,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:40:37,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:40:37,637.637 INFO    ] No existing commands found in stream
[2026-08-25 01:40:42,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:40:42,666.666 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 01:40:44,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:40:44,399.399 INFO    ] Checking for system updates...
[2026-08-25 01:40:44,439.439 INFO    ] 200
[2026-08-25 01:40:44,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:44,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:40:44,499.499 INFO    ] No update needed
[2026-08-25 01:40:44,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 01:40:44,537.537 INFO    ] 200
[2026-08-25 01:40:44,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:44,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:40:44,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:40:44,630.630 INFO    ] No camera update needed
[2026-08-25 01:40:44,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:40:44,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:40:44,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:40:44,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:40:46,687.687 INFO    ] ================================================
[2026-08-25 01:40:46,703.703 INFO    ] Launching Daemon at Tue Aug 25 01:40:46 IST 2026
[2026-08-25 01:40:46,715.715 INFO    ] ================================================
[2026-08-25 01:40:47,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:40:47
[2026-08-25 01:40:47,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:40:48,104.104 INFO    ] Initializing speech engine...
[2026-08-25 01:40:48,112.112 INFO    ] 2026-08-25 01:40:48
[2026-08-25 01:40:48,389.389 INFO    ] 2026-08-25 01:40:48
[2026-08-25 01:40:48,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:40:48,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:40:48,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:40:48,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:40:48,763.763 INFO    ] time= 25/08/2026 01:40:48
[2026-08-25 01:40:48,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:40:48,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:40:48,936.936 INFO    ] No existing commands found in stream
[2026-08-25 01:40:53,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:40:53,964.964 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 01:40:56,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:40:56,518.518 INFO    ] Checking for system updates...
[2026-08-25 01:40:56,553.553 INFO    ] 200
[2026-08-25 01:40:56,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:56,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:40:56,616.616 INFO    ] No update needed
[2026-08-25 01:40:56,619.619 INFO    ] Checking for camera pi updates...
[2026-08-25 01:40:56,652.652 INFO    ] 200
[2026-08-25 01:40:56,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:40:56,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:40:56,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:40:56,739.739 INFO    ] No camera update needed
[2026-08-25 01:40:56,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:40:56,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:40:56,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:40:56,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:40:58,795.795 INFO    ] ================================================
[2026-08-25 01:40:58,811.811 INFO    ] Launching Daemon at Tue Aug 25 01:40:58 IST 2026
[2026-08-25 01:40:58,822.822 INFO    ] ================================================
[2026-08-25 01:40:59,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:40:59
[2026-08-25 01:40:59,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:41:00,217.217 INFO    ] Initializing speech engine...
[2026-08-25 01:41:00,223.223 INFO    ] 2026-08-25 01:41:00
[2026-08-25 01:41:00,521.521 INFO    ] 2026-08-25 01:41:00
[2026-08-25 01:41:00,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:41:00,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:41:00,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:41:00,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:41:00,895.895 INFO    ] time= 25/08/2026 01:41:00
[2026-08-25 01:41:00,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:41:00,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:41:01,017.017 INFO    ] No existing commands found in stream
[2026-08-25 01:41:06,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:41:06,038.038 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 01:41:08,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:41:08,240.240 INFO    ] Checking for system updates...
[2026-08-25 01:41:08,275.275 INFO    ] 200
[2026-08-25 01:41:08,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:08,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:41:08,338.338 INFO    ] No update needed
[2026-08-25 01:41:08,340.340 INFO    ] Checking for camera pi updates...
[2026-08-25 01:41:08,382.382 INFO    ] 200
[2026-08-25 01:41:08,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:08,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:41:08,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:41:08,485.485 INFO    ] No camera update needed
[2026-08-25 01:41:08,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:41:08,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:41:08,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:41:08,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:41:10,545.545 INFO    ] ================================================
[2026-08-25 01:41:10,561.561 INFO    ] Launching Daemon at Tue Aug 25 01:41:10 IST 2026
[2026-08-25 01:41:10,571.571 INFO    ] ================================================
[2026-08-25 01:41:11,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:41:11
[2026-08-25 01:41:11,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:41:12,178.178 INFO    ] Initializing speech engine...
[2026-08-25 01:41:12,190.190 INFO    ] 2026-08-25 01:41:12
[2026-08-25 01:41:12,456.456 INFO    ] 2026-08-25 01:41:12
[2026-08-25 01:41:12,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:41:12,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:41:12,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:41:12,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:41:12,950.950 INFO    ] time= 25/08/2026 01:41:12
[2026-08-25 01:41:13,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:41:13,027.027 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:41:13,179.179 INFO    ] No existing commands found in stream
[2026-08-25 01:41:18,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:41:18,211.211 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 01:41:20,616.616 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:41:20,619.619 INFO    ] Checking for system updates...
[2026-08-25 01:41:20,656.656 INFO    ] 200
[2026-08-25 01:41:20,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:20,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:41:20,715.715 INFO    ] No update needed
[2026-08-25 01:41:20,718.718 INFO    ] Checking for camera pi updates...
[2026-08-25 01:41:20,752.752 INFO    ] 200
[2026-08-25 01:41:20,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:20,805.805 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:41:20,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:41:20,858.858 INFO    ] No camera update needed
[2026-08-25 01:41:20,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:41:20,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:41:20,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:41:20,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:41:22,913.913 INFO    ] ================================================
[2026-08-25 01:41:22,928.928 INFO    ] Launching Daemon at Tue Aug 25 01:41:22 IST 2026
[2026-08-25 01:41:22,939.939 INFO    ] ================================================
[2026-08-25 01:41:23,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:41:23
[2026-08-25 01:41:24,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:41:24,447.447 INFO    ] Initializing speech engine...
[2026-08-25 01:41:24,452.452 INFO    ] 2026-08-25 01:41:24
[2026-08-25 01:41:24,704.704 INFO    ] 2026-08-25 01:41:24
[2026-08-25 01:41:24,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:41:24,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:41:24,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:41:25,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:41:25,171.171 INFO    ] time= 25/08/2026 01:41:25
[2026-08-25 01:41:25,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:41:25,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:41:25,375.375 INFO    ] No existing commands found in stream
[2026-08-25 01:41:30,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:41:30,408.408 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 01:41:31,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:41:31,680.680 INFO    ] Checking for system updates...
[2026-08-25 01:41:31,716.716 INFO    ] 200
[2026-08-25 01:41:31,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:31,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:41:31,774.774 INFO    ] No update needed
[2026-08-25 01:41:31,777.777 INFO    ] Checking for camera pi updates...
[2026-08-25 01:41:31,821.821 INFO    ] 200
[2026-08-25 01:41:31,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:31,882.882 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:41:31,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:41:31,931.931 INFO    ] No camera update needed
[2026-08-25 01:41:31,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:41:31,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:41:31,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:41:31,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:41:33,990.990 INFO    ] ================================================
[2026-08-25 01:41:34,007.007 INFO    ] Launching Daemon at Tue Aug 25 01:41:34 IST 2026
[2026-08-25 01:41:34,019.019 INFO    ] ================================================
[2026-08-25 01:41:34,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:41:34
[2026-08-25 01:41:35,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:41:35,655.655 INFO    ] Initializing speech engine...
[2026-08-25 01:41:35,665.665 INFO    ] 2026-08-25 01:41:35
[2026-08-25 01:41:35,942.942 INFO    ] 2026-08-25 01:41:35
[2026-08-25 01:41:35,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:41:36,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:41:36,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:41:36,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:41:36,487.487 INFO    ] time= 25/08/2026 01:41:36
[2026-08-25 01:41:36,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:41:36,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:41:36,643.643 INFO    ] No existing commands found in stream
[2026-08-25 01:41:41,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:41:41,677.677 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 01:41:43,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:41:43,945.945 INFO    ] Checking for system updates...
[2026-08-25 01:41:43,981.981 INFO    ] 200
[2026-08-25 01:41:43,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:44,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:41:44,043.043 INFO    ] No update needed
[2026-08-25 01:41:44,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 01:41:44,084.084 INFO    ] 200
[2026-08-25 01:41:44,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:44,139.139 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:41:44,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:41:44,287.287 INFO    ] No camera update needed
[2026-08-25 01:41:44,290.290 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:41:44,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:41:44,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:41:44,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:41:46,346.346 INFO    ] ================================================
[2026-08-25 01:41:46,361.361 INFO    ] Launching Daemon at Tue Aug 25 01:41:46 IST 2026
[2026-08-25 01:41:46,372.372 INFO    ] ================================================
[2026-08-25 01:41:46,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:41:46
[2026-08-25 01:41:47,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:41:47,793.793 INFO    ] Initializing speech engine...
[2026-08-25 01:41:47,801.801 INFO    ] 2026-08-25 01:41:47
[2026-08-25 01:41:48,097.097 INFO    ] 2026-08-25 01:41:48
[2026-08-25 01:41:48,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:41:48,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:41:48,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:41:48,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:41:48,516.516 INFO    ] time= 25/08/2026 01:41:48
[2026-08-25 01:41:48,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:41:48,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:41:48,608.608 INFO    ] No existing commands found in stream
[2026-08-25 01:41:53,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:41:53,646.646 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 01:41:58,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:41:58,062.062 INFO    ] Checking for system updates...
[2026-08-25 01:41:58,097.097 INFO    ] 200
[2026-08-25 01:41:58,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:58,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:41:58,160.160 INFO    ] No update needed
[2026-08-25 01:41:58,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 01:41:58,196.196 INFO    ] 200
[2026-08-25 01:41:58,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:41:58,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:41:58,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:41:58,292.292 INFO    ] No camera update needed
[2026-08-25 01:41:58,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:41:58,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:41:58,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:41:58,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:42:00,347.347 INFO    ] ================================================
[2026-08-25 01:42:00,362.362 INFO    ] Launching Daemon at Tue Aug 25 01:42:00 IST 2026
[2026-08-25 01:42:00,373.373 INFO    ] ================================================
[2026-08-25 01:42:00,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:42:00
[2026-08-25 01:42:01,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:42:01,989.989 INFO    ] Initializing speech engine...
[2026-08-25 01:42:01,992.992 INFO    ] 2026-08-25 01:42:01
[2026-08-25 01:42:02,412.412 INFO    ] 2026-08-25 01:42:02
[2026-08-25 01:42:02,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:42:02,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:42:02,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:42:02,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:42:02,873.873 INFO    ] time= 25/08/2026 01:42:02
[2026-08-25 01:42:02,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:42:02,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:42:03,008.008 INFO    ] No existing commands found in stream
[2026-08-25 01:42:08,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:42:08,020.020 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 01:42:09,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:42:09,330.330 INFO    ] Checking for system updates...
[2026-08-25 01:42:09,366.366 INFO    ] 200
[2026-08-25 01:42:09,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:09,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:09,432.432 INFO    ] No update needed
[2026-08-25 01:42:09,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 01:42:09,470.470 INFO    ] 200
[2026-08-25 01:42:09,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:09,514.514 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:42:09,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:09,562.562 INFO    ] No camera update needed
[2026-08-25 01:42:09,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:42:09,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:42:09,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:42:09,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:42:11,621.621 INFO    ] ================================================
[2026-08-25 01:42:11,636.636 INFO    ] Launching Daemon at Tue Aug 25 01:42:11 IST 2026
[2026-08-25 01:42:11,646.646 INFO    ] ================================================
[2026-08-25 01:42:12,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:42:12
[2026-08-25 01:42:12,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:42:13,069.069 INFO    ] Initializing speech engine...
[2026-08-25 01:42:13,094.094 INFO    ] 2026-08-25 01:42:13
[2026-08-25 01:42:13,365.365 INFO    ] 2026-08-25 01:42:13
[2026-08-25 01:42:13,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:42:13,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:42:13,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:42:13,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:42:13,785.785 INFO    ] time= 25/08/2026 01:42:13
[2026-08-25 01:42:13,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:42:13,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:42:13,873.873 INFO    ] No existing commands found in stream
[2026-08-25 01:42:18,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:42:18,906.906 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 01:42:22,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:42:22,789.789 INFO    ] Checking for system updates...
[2026-08-25 01:42:22,829.829 INFO    ] 200
[2026-08-25 01:42:22,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:22,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:22,894.894 INFO    ] No update needed
[2026-08-25 01:42:22,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 01:42:22,931.931 INFO    ] 200
[2026-08-25 01:42:22,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:22,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:42:23,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:23,039.039 INFO    ] No camera update needed
[2026-08-25 01:42:23,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:42:23,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:42:23,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:42:23,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:42:25,094.094 INFO    ] ================================================
[2026-08-25 01:42:25,109.109 INFO    ] Launching Daemon at Tue Aug 25 01:42:25 IST 2026
[2026-08-25 01:42:25,120.120 INFO    ] ================================================
[2026-08-25 01:42:25,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:42:25
[2026-08-25 01:42:26,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:42:26,741.741 INFO    ] Initializing speech engine...
[2026-08-25 01:42:26,750.750 INFO    ] 2026-08-25 01:42:26
[2026-08-25 01:42:27,036.036 INFO    ] 2026-08-25 01:42:27
[2026-08-25 01:42:27,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:42:27,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:42:27,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:42:27,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:42:27,529.529 INFO    ] time= 25/08/2026 01:42:27
[2026-08-25 01:42:27,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:42:27,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:42:27,731.731 INFO    ] No existing commands found in stream
[2026-08-25 01:42:32,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:42:32,760.760 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 01:42:35,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:42:35,867.867 INFO    ] Checking for system updates...
[2026-08-25 01:42:35,905.905 INFO    ] 200
[2026-08-25 01:42:35,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:35,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:35,963.963 INFO    ] No update needed
[2026-08-25 01:42:35,966.966 INFO    ] Checking for camera pi updates...
[2026-08-25 01:42:36,001.001 INFO    ] 200
[2026-08-25 01:42:36,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:36,050.050 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:42:36,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:36,097.097 INFO    ] No camera update needed
[2026-08-25 01:42:36,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:42:36,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:42:36,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:42:36,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:42:38,152.152 INFO    ] ================================================
[2026-08-25 01:42:38,167.167 INFO    ] Launching Daemon at Tue Aug 25 01:42:38 IST 2026
[2026-08-25 01:42:38,177.177 INFO    ] ================================================
[2026-08-25 01:42:38,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:42:38
[2026-08-25 01:42:39,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:42:39,812.812 INFO    ] Initializing speech engine...
[2026-08-25 01:42:39,825.825 INFO    ] 2026-08-25 01:42:39
[2026-08-25 01:42:40,132.132 INFO    ] 2026-08-25 01:42:40
[2026-08-25 01:42:40,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:42:40,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:42:40,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:42:40,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:42:40,640.640 INFO    ] time= 25/08/2026 01:42:40
[2026-08-25 01:42:40,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:42:40,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:42:40,795.795 INFO    ] No existing commands found in stream
[2026-08-25 01:42:45,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:42:45,839.839 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 01:42:46,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:42:46,641.641 INFO    ] Checking for system updates...
[2026-08-25 01:42:46,677.677 INFO    ] 200
[2026-08-25 01:42:46,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:46,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:46,736.736 INFO    ] No update needed
[2026-08-25 01:42:46,739.739 INFO    ] Checking for camera pi updates...
[2026-08-25 01:42:46,773.773 INFO    ] 200
[2026-08-25 01:42:46,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:46,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:42:46,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:46,867.867 INFO    ] No camera update needed
[2026-08-25 01:42:46,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:42:46,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:42:46,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:42:46,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:42:48,928.928 INFO    ] ================================================
[2026-08-25 01:42:48,944.944 INFO    ] Launching Daemon at Tue Aug 25 01:42:48 IST 2026
[2026-08-25 01:42:48,955.955 INFO    ] ================================================
[2026-08-25 01:42:49,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:42:49
[2026-08-25 01:42:50,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:42:50,584.584 INFO    ] Initializing speech engine...
[2026-08-25 01:42:50,598.598 INFO    ] 2026-08-25 01:42:50
[2026-08-25 01:42:50,882.882 INFO    ] 2026-08-25 01:42:50
[2026-08-25 01:42:50,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:42:51,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:42:51,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:42:51,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:42:51,412.412 INFO    ] time= 25/08/2026 01:42:51
[2026-08-25 01:42:51,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:42:51,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:42:51,588.588 INFO    ] No existing commands found in stream
[2026-08-25 01:42:56,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:42:56,617.617 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 01:42:57,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:42:57,669.669 INFO    ] Checking for system updates...
[2026-08-25 01:42:57,705.705 INFO    ] 200
[2026-08-25 01:42:57,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:57,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:57,761.761 INFO    ] No update needed
[2026-08-25 01:42:57,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 01:42:57,803.803 INFO    ] 200
[2026-08-25 01:42:57,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:42:57,845.845 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:42:57,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:42:57,894.894 INFO    ] No camera update needed
[2026-08-25 01:42:57,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:42:57,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:42:57,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:42:57,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:42:59,949.949 INFO    ] ================================================
[2026-08-25 01:42:59,965.965 INFO    ] Launching Daemon at Tue Aug 25 01:42:59 IST 2026
[2026-08-25 01:42:59,976.976 INFO    ] ================================================
[2026-08-25 01:43:00,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:43:00
[2026-08-25 01:43:01,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:43:01,422.422 INFO    ] Initializing speech engine...
[2026-08-25 01:43:01,437.437 INFO    ] 2026-08-25 01:43:01
[2026-08-25 01:43:01,718.718 INFO    ] 2026-08-25 01:43:01
[2026-08-25 01:43:01,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:43:02,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:43:02,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:43:02,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:43:02,206.206 INFO    ] time= 25/08/2026 01:43:02
[2026-08-25 01:43:02,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:43:02,229.229 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:43:02,293.293 INFO    ] No existing commands found in stream
[2026-08-25 01:43:07,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:43:07,315.315 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 01:43:08,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:43:08,839.839 INFO    ] Checking for system updates...
[2026-08-25 01:43:08,874.874 INFO    ] 200
[2026-08-25 01:43:08,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:08,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:08,930.930 INFO    ] No update needed
[2026-08-25 01:43:08,933.933 INFO    ] Checking for camera pi updates...
[2026-08-25 01:43:08,967.967 INFO    ] 200
[2026-08-25 01:43:08,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:09,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:43:09,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:09,057.057 INFO    ] No camera update needed
[2026-08-25 01:43:09,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:43:09,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:43:09,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:43:09,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:43:11,112.112 INFO    ] ================================================
[2026-08-25 01:43:11,127.127 INFO    ] Launching Daemon at Tue Aug 25 01:43:11 IST 2026
[2026-08-25 01:43:11,138.138 INFO    ] ================================================
[2026-08-25 01:43:11,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:43:11
[2026-08-25 01:43:12,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:43:12,750.750 INFO    ] Initializing speech engine...
[2026-08-25 01:43:12,761.761 INFO    ] 2026-08-25 01:43:12
[2026-08-25 01:43:13,037.037 INFO    ] 2026-08-25 01:43:13
[2026-08-25 01:43:13,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:43:13,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:43:13,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:43:13,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:43:13,513.513 INFO    ] time= 25/08/2026 01:43:13
[2026-08-25 01:43:13,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:43:13,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:43:13,709.709 INFO    ] No existing commands found in stream
[2026-08-25 01:43:18,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:43:18,742.742 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 01:43:21,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:43:21,040.040 INFO    ] Checking for system updates...
[2026-08-25 01:43:21,077.077 INFO    ] 200
[2026-08-25 01:43:21,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:21,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:21,136.136 INFO    ] No update needed
[2026-08-25 01:43:21,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 01:43:21,174.174 INFO    ] 200
[2026-08-25 01:43:21,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:21,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:43:21,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:21,276.276 INFO    ] No camera update needed
[2026-08-25 01:43:21,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:43:21,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:43:21,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:43:21,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:43:23,334.334 INFO    ] ================================================
[2026-08-25 01:43:23,349.349 INFO    ] Launching Daemon at Tue Aug 25 01:43:23 IST 2026
[2026-08-25 01:43:23,360.360 INFO    ] ================================================
[2026-08-25 01:43:23,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:43:23
[2026-08-25 01:43:24,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:43:24,772.772 INFO    ] Initializing speech engine...
[2026-08-25 01:43:24,783.783 INFO    ] 2026-08-25 01:43:24
[2026-08-25 01:43:25,039.039 INFO    ] 2026-08-25 01:43:25
[2026-08-25 01:43:25,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:43:25,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:43:25,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:43:25,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:43:25,478.478 INFO    ] time= 25/08/2026 01:43:25
[2026-08-25 01:43:25,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:43:25,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:43:25,711.711 INFO    ] No existing commands found in stream
[2026-08-25 01:43:30,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:43:30,739.739 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 01:43:34,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:43:34,262.262 INFO    ] Checking for system updates...
[2026-08-25 01:43:34,302.302 INFO    ] 200
[2026-08-25 01:43:34,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:34,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:43:34,364.364 INFO    ] No update needed
[2026-08-25 01:43:34,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 01:43:34,400.400 INFO    ] 200
[2026-08-25 01:43:34,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:34,450.450 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:43:34,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:43:34,500.500 INFO    ] No camera update needed
[2026-08-25 01:43:34,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:43:34,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:43:34,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:43:34,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:43:36,557.557 INFO    ] ================================================
[2026-08-25 01:43:36,573.573 INFO    ] Launching Daemon at Tue Aug 25 01:43:36 IST 2026
[2026-08-25 01:43:36,583.583 INFO    ] ================================================
[2026-08-25 01:43:37,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:43:37
[2026-08-25 01:43:37,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:43:38,161.161 INFO    ] Initializing speech engine...
[2026-08-25 01:43:38,170.170 INFO    ] 2026-08-25 01:43:38
[2026-08-25 01:43:38,463.463 INFO    ] 2026-08-25 01:43:38
[2026-08-25 01:43:38,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:43:38,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:43:38,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:43:38,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:43:38,887.887 INFO    ] time= 25/08/2026 01:43:38
[2026-08-25 01:43:38,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:43:38,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:43:38,970.970 INFO    ] No existing commands found in stream
[2026-08-25 01:43:43,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:43:43,986.986 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 01:43:45,137.137 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:43:45,139.139 INFO    ] Checking for system updates...
[2026-08-25 01:43:45,177.177 INFO    ] 200
[2026-08-25 01:43:45,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:45,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:45,234.234 INFO    ] No update needed
[2026-08-25 01:43:45,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 01:43:45,272.272 INFO    ] 200
[2026-08-25 01:43:45,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:45,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:43:45,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:45,485.485 INFO    ] No camera update needed
[2026-08-25 01:43:45,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:43:45,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:43:45,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:43:45,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:43:47,541.541 INFO    ] ================================================
[2026-08-25 01:43:47,556.556 INFO    ] Launching Daemon at Tue Aug 25 01:43:47 IST 2026
[2026-08-25 01:43:47,567.567 INFO    ] ================================================
[2026-08-25 01:43:48,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:43:48
[2026-08-25 01:43:48,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:43:49,159.159 INFO    ] Initializing speech engine...
[2026-08-25 01:43:49,170.170 INFO    ] 2026-08-25 01:43:49
[2026-08-25 01:43:49,441.441 INFO    ] 2026-08-25 01:43:49
[2026-08-25 01:43:49,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:43:49,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:43:49,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:43:49,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:43:49,934.934 INFO    ] time= 25/08/2026 01:43:49
[2026-08-25 01:43:49,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:43:49,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:43:50,123.123 INFO    ] No existing commands found in stream
[2026-08-25 01:43:55,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:43:55,152.152 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 01:43:55,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:43:55,613.613 INFO    ] Checking for system updates...
[2026-08-25 01:43:55,650.650 INFO    ] 200
[2026-08-25 01:43:55,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:55,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:55,708.708 INFO    ] No update needed
[2026-08-25 01:43:55,710.710 INFO    ] Checking for camera pi updates...
[2026-08-25 01:43:55,744.744 INFO    ] 200
[2026-08-25 01:43:55,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:43:55,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:43:55,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:43:55,845.845 INFO    ] No camera update needed
[2026-08-25 01:43:55,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:43:55,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:43:55,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:43:55,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:43:57,903.903 INFO    ] ================================================
[2026-08-25 01:43:57,919.919 INFO    ] Launching Daemon at Tue Aug 25 01:43:57 IST 2026
[2026-08-25 01:43:57,930.930 INFO    ] ================================================
[2026-08-25 01:43:58,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:43:58
[2026-08-25 01:43:59,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:43:59,352.352 INFO    ] Initializing speech engine...
[2026-08-25 01:43:59,360.360 INFO    ] 2026-08-25 01:43:59
[2026-08-25 01:43:59,614.614 INFO    ] 2026-08-25 01:43:59
[2026-08-25 01:43:59,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:43:59,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:43:59,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:44:00,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:44:00,095.095 INFO    ] time= 25/08/2026 01:44:00
[2026-08-25 01:44:00,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:44:00,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:44:00,305.305 INFO    ] No existing commands found in stream
[2026-08-25 01:44:05,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:44:05,322.322 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 01:44:08,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:44:08,149.149 INFO    ] Checking for system updates...
[2026-08-25 01:44:08,188.188 INFO    ] 200
[2026-08-25 01:44:08,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:08,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:44:08,251.251 INFO    ] No update needed
[2026-08-25 01:44:08,253.253 INFO    ] Checking for camera pi updates...
[2026-08-25 01:44:08,290.290 INFO    ] 200
[2026-08-25 01:44:08,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:08,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:44:08,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:44:08,380.380 INFO    ] No camera update needed
[2026-08-25 01:44:08,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:44:08,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:44:08,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:44:08,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:44:10,435.435 INFO    ] ================================================
[2026-08-25 01:44:10,451.451 INFO    ] Launching Daemon at Tue Aug 25 01:44:10 IST 2026
[2026-08-25 01:44:10,463.463 INFO    ] ================================================
[2026-08-25 01:44:11,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:44:11
[2026-08-25 01:44:11,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:44:11,868.868 INFO    ] Initializing speech engine...
[2026-08-25 01:44:11,877.877 INFO    ] 2026-08-25 01:44:11
[2026-08-25 01:44:12,169.169 INFO    ] 2026-08-25 01:44:12
[2026-08-25 01:44:12,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:44:12,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:44:12,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:44:12,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:44:12,589.589 INFO    ] time= 25/08/2026 01:44:12
[2026-08-25 01:44:12,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:44:12,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:44:12,675.675 INFO    ] No existing commands found in stream
[2026-08-25 01:44:17,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:44:17,708.708 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 01:44:20,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:44:20,059.059 INFO    ] Checking for system updates...
[2026-08-25 01:44:20,094.094 INFO    ] 200
[2026-08-25 01:44:20,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:20,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:44:20,152.152 INFO    ] No update needed
[2026-08-25 01:44:20,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 01:44:20,188.188 INFO    ] 200
[2026-08-25 01:44:20,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:20,230.230 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:44:20,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:44:20,280.280 INFO    ] No camera update needed
[2026-08-25 01:44:20,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:44:20,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:44:20,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:44:20,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:44:22,336.336 INFO    ] ================================================
[2026-08-25 01:44:22,351.351 INFO    ] Launching Daemon at Tue Aug 25 01:44:22 IST 2026
[2026-08-25 01:44:22,363.363 INFO    ] ================================================
[2026-08-25 01:44:22,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:44:22
[2026-08-25 01:44:23,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:44:23,764.764 INFO    ] Initializing speech engine...
[2026-08-25 01:44:23,773.773 INFO    ] 2026-08-25 01:44:23
[2026-08-25 01:44:24,065.065 INFO    ] 2026-08-25 01:44:24
[2026-08-25 01:44:24,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:44:24,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:44:24,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:44:24,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:44:24,446.446 INFO    ] time= 25/08/2026 01:44:24
[2026-08-25 01:44:24,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:44:24,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:44:24,574.574 INFO    ] No existing commands found in stream
[2026-08-25 01:44:29,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:44:29,612.612 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 01:44:33,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:44:33,515.515 INFO    ] Checking for system updates...
[2026-08-25 01:44:33,550.550 INFO    ] 200
[2026-08-25 01:44:33,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:33,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:44:33,610.610 INFO    ] No update needed
[2026-08-25 01:44:33,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 01:44:33,647.647 INFO    ] 200
[2026-08-25 01:44:33,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:33,689.689 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:44:33,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:44:33,741.741 INFO    ] No camera update needed
[2026-08-25 01:44:33,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:44:33,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:44:33,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:44:33,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:44:35,797.797 INFO    ] ================================================
[2026-08-25 01:44:35,813.813 INFO    ] Launching Daemon at Tue Aug 25 01:44:35 IST 2026
[2026-08-25 01:44:35,823.823 INFO    ] ================================================
[2026-08-25 01:44:36,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:44:36
[2026-08-25 01:44:36,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:44:37,216.216 INFO    ] Initializing speech engine...
[2026-08-25 01:44:37,229.229 INFO    ] 2026-08-25 01:44:37
[2026-08-25 01:44:37,489.489 INFO    ] 2026-08-25 01:44:37
[2026-08-25 01:44:37,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:44:37,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:44:37,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:44:37,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:44:37,962.962 INFO    ] time= 25/08/2026 01:44:37
[2026-08-25 01:44:38,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:44:38,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:44:38,138.138 INFO    ] No existing commands found in stream
[2026-08-25 01:44:43,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:44:43,172.172 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 01:44:46,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:44:46,172.172 INFO    ] Checking for system updates...
[2026-08-25 01:44:46,211.211 INFO    ] 200
[2026-08-25 01:44:46,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:46,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:44:46,290.290 INFO    ] No update needed
[2026-08-25 01:44:46,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 01:44:46,328.328 INFO    ] 200
[2026-08-25 01:44:46,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:46,375.375 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:44:46,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:44:46,422.422 INFO    ] No camera update needed
[2026-08-25 01:44:46,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:44:46,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:44:46,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:44:46,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:44:48,478.478 INFO    ] ================================================
[2026-08-25 01:44:48,494.494 INFO    ] Launching Daemon at Tue Aug 25 01:44:48 IST 2026
[2026-08-25 01:44:48,505.505 INFO    ] ================================================
[2026-08-25 01:44:49,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:44:49
[2026-08-25 01:44:49,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:44:49,922.922 INFO    ] Initializing speech engine...
[2026-08-25 01:44:49,932.932 INFO    ] 2026-08-25 01:44:49
[2026-08-25 01:44:50,176.176 INFO    ] 2026-08-25 01:44:50
[2026-08-25 01:44:50,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:44:50,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:44:50,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:44:50,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:44:50,650.650 INFO    ] time= 25/08/2026 01:44:50
[2026-08-25 01:44:50,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:44:50,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:44:50,870.870 INFO    ] No existing commands found in stream
[2026-08-25 01:44:55,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:44:55,888.888 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 01:44:57,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:44:57,750.750 INFO    ] Checking for system updates...
[2026-08-25 01:44:57,786.786 INFO    ] 200
[2026-08-25 01:44:57,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:57,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:44:57,847.847 INFO    ] No update needed
[2026-08-25 01:44:57,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 01:44:57,883.883 INFO    ] 200
[2026-08-25 01:44:57,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:44:57,930.930 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:44:57,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:44:57,975.975 INFO    ] No camera update needed
[2026-08-25 01:44:57,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:44:57,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:44:57,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:44:57,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:45:00,032.032 INFO    ] ================================================
[2026-08-25 01:45:00,047.047 INFO    ] Launching Daemon at Tue Aug 25 01:45:00 IST 2026
[2026-08-25 01:45:00,057.057 INFO    ] ================================================
[2026-08-25 01:45:00,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:45:00
[2026-08-25 01:45:01,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:45:01,490.490 INFO    ] Initializing speech engine...
[2026-08-25 01:45:01,500.500 INFO    ] 2026-08-25 01:45:01
[2026-08-25 01:45:01,759.759 INFO    ] 2026-08-25 01:45:01
[2026-08-25 01:45:01,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:45:02,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:45:02,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:45:02,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:45:02,273.273 INFO    ] time= 25/08/2026 01:45:02
[2026-08-25 01:45:02,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:45:02,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:45:02,414.414 INFO    ] No existing commands found in stream
[2026-08-25 01:45:07,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:45:07,451.451 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 01:45:09,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:45:09,071.071 INFO    ] Checking for system updates...
[2026-08-25 01:45:09,107.107 INFO    ] 200
[2026-08-25 01:45:09,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:09,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:45:09,166.166 INFO    ] No update needed
[2026-08-25 01:45:09,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 01:45:09,208.208 INFO    ] 200
[2026-08-25 01:45:09,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:09,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:45:09,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:45:09,325.325 INFO    ] No camera update needed
[2026-08-25 01:45:09,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:45:09,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:45:09,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:45:09,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:45:11,384.384 INFO    ] ================================================
[2026-08-25 01:45:11,399.399 INFO    ] Launching Daemon at Tue Aug 25 01:45:11 IST 2026
[2026-08-25 01:45:11,410.410 INFO    ] ================================================
[2026-08-25 01:45:11,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:45:11
[2026-08-25 01:45:12,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:45:12,839.839 INFO    ] Initializing speech engine...
[2026-08-25 01:45:12,845.845 INFO    ] 2026-08-25 01:45:12
[2026-08-25 01:45:13,104.104 INFO    ] 2026-08-25 01:45:13
[2026-08-25 01:45:13,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:45:13,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:45:13,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:45:13,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:45:13,576.576 INFO    ] time= 25/08/2026 01:45:13
[2026-08-25 01:45:13,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:45:13,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:45:13,790.790 INFO    ] No existing commands found in stream
[2026-08-25 01:45:18,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:45:18,815.815 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 01:45:21,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:45:21,898.898 INFO    ] Checking for system updates...
[2026-08-25 01:45:21,936.936 INFO    ] 200
[2026-08-25 01:45:21,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:21,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:45:21,992.992 INFO    ] No update needed
[2026-08-25 01:45:21,995.995 INFO    ] Checking for camera pi updates...
[2026-08-25 01:45:22,031.031 INFO    ] 200
[2026-08-25 01:45:22,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:22,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:45:22,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:45:22,122.122 INFO    ] No camera update needed
[2026-08-25 01:45:22,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:45:22,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:45:22,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:45:22,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:45:24,178.178 INFO    ] ================================================
[2026-08-25 01:45:24,193.193 INFO    ] Launching Daemon at Tue Aug 25 01:45:24 IST 2026
[2026-08-25 01:45:24,204.204 INFO    ] ================================================
[2026-08-25 01:45:24,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:45:24
[2026-08-25 01:45:25,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:45:25,818.818 INFO    ] Initializing speech engine...
[2026-08-25 01:45:25,830.830 INFO    ] 2026-08-25 01:45:25
[2026-08-25 01:45:26,099.099 INFO    ] 2026-08-25 01:45:26
[2026-08-25 01:45:26,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:45:26,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:45:26,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:45:26,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:45:26,585.585 INFO    ] time= 25/08/2026 01:45:26
[2026-08-25 01:45:26,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:45:26,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:45:26,784.784 INFO    ] No existing commands found in stream
[2026-08-25 01:45:31,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:45:31,811.811 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 01:45:35,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:45:35,351.351 INFO    ] Checking for system updates...
[2026-08-25 01:45:35,391.391 INFO    ] 200
[2026-08-25 01:45:35,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:35,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:45:35,456.456 INFO    ] No update needed
[2026-08-25 01:45:35,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 01:45:35,494.494 INFO    ] 200
[2026-08-25 01:45:35,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:35,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:45:35,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:45:35,588.588 INFO    ] No camera update needed
[2026-08-25 01:45:35,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:45:35,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:45:35,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:45:35,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:45:37,646.646 INFO    ] ================================================
[2026-08-25 01:45:37,661.661 INFO    ] Launching Daemon at Tue Aug 25 01:45:37 IST 2026
[2026-08-25 01:45:37,672.672 INFO    ] ================================================
[2026-08-25 01:45:38,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:45:38
[2026-08-25 01:45:38,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:45:39,200.200 INFO    ] Initializing speech engine...
[2026-08-25 01:45:39,216.216 INFO    ] 2026-08-25 01:45:39
[2026-08-25 01:45:39,527.527 INFO    ] 2026-08-25 01:45:39
[2026-08-25 01:45:39,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:45:39,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:45:39,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:45:39,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:45:39,885.885 INFO    ] time= 25/08/2026 01:45:39
[2026-08-25 01:45:39,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:45:39,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:45:39,966.966 INFO    ] No existing commands found in stream
[2026-08-25 01:45:44,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:45:44,980.980 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 01:45:47,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:45:47,380.380 INFO    ] Checking for system updates...
[2026-08-25 01:45:47,421.421 INFO    ] 200
[2026-08-25 01:45:47,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:47,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:45:47,479.479 INFO    ] No update needed
[2026-08-25 01:45:47,482.482 INFO    ] Checking for camera pi updates...
[2026-08-25 01:45:47,516.516 INFO    ] 200
[2026-08-25 01:45:47,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:45:47,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:45:47,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:45:47,714.714 INFO    ] No camera update needed
[2026-08-25 01:45:47,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:45:47,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:45:47,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:45:47,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:45:49,772.772 INFO    ] ================================================
[2026-08-25 01:45:49,792.792 INFO    ] Launching Daemon at Tue Aug 25 01:45:49 IST 2026
[2026-08-25 01:45:49,803.803 INFO    ] ================================================
[2026-08-25 01:45:50,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:45:50
[2026-08-25 01:45:51,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:45:51,411.411 INFO    ] Initializing speech engine...
[2026-08-25 01:45:51,423.423 INFO    ] 2026-08-25 01:45:51
[2026-08-25 01:45:51,703.703 INFO    ] 2026-08-25 01:45:51
[2026-08-25 01:45:51,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:45:51,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:45:52,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:45:52,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:45:52,241.241 INFO    ] time= 25/08/2026 01:45:52
[2026-08-25 01:45:52,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:45:52,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:45:52,416.416 INFO    ] No existing commands found in stream
[2026-08-25 01:45:57,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:45:57,448.448 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 01:46:00,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:46:00,202.202 INFO    ] Checking for system updates...
[2026-08-25 01:46:00,242.242 INFO    ] 200
[2026-08-25 01:46:00,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:00,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:00,308.308 INFO    ] No update needed
[2026-08-25 01:46:00,311.311 INFO    ] Checking for camera pi updates...
[2026-08-25 01:46:00,345.345 INFO    ] 200
[2026-08-25 01:46:00,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:00,393.393 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:46:00,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:00,444.444 INFO    ] No camera update needed
[2026-08-25 01:46:00,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:46:00,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:46:00,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:46:00,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:46:02,509.509 INFO    ] ================================================
[2026-08-25 01:46:02,535.535 INFO    ] Launching Daemon at Tue Aug 25 01:46:02 IST 2026
[2026-08-25 01:46:02,551.551 INFO    ] ================================================
[2026-08-25 01:46:03,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:46:03
[2026-08-25 01:46:03,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:46:04,063.063 INFO    ] Initializing speech engine...
[2026-08-25 01:46:04,072.072 INFO    ] 2026-08-25 01:46:04
[2026-08-25 01:46:04,363.363 INFO    ] 2026-08-25 01:46:04
[2026-08-25 01:46:04,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:46:04,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:46:04,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:46:04,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:46:04,778.778 INFO    ] time= 25/08/2026 01:46:04
[2026-08-25 01:46:04,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:46:04,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:46:04,872.872 INFO    ] No existing commands found in stream
[2026-08-25 01:46:09,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:46:09,905.905 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 01:46:12,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:46:12,293.293 INFO    ] Checking for system updates...
[2026-08-25 01:46:12,329.329 INFO    ] 200
[2026-08-25 01:46:12,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:12,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:12,386.386 INFO    ] No update needed
[2026-08-25 01:46:12,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 01:46:12,421.421 INFO    ] 200
[2026-08-25 01:46:12,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:12,464.464 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:46:12,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:12,520.520 INFO    ] No camera update needed
[2026-08-25 01:46:12,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:46:12,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:46:12,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:46:12,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:46:14,577.577 INFO    ] ================================================
[2026-08-25 01:46:14,592.592 INFO    ] Launching Daemon at Tue Aug 25 01:46:14 IST 2026
[2026-08-25 01:46:14,603.603 INFO    ] ================================================
[2026-08-25 01:46:15,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:46:15
[2026-08-25 01:46:15,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:46:16,194.194 INFO    ] Initializing speech engine...
[2026-08-25 01:46:16,201.201 INFO    ] 2026-08-25 01:46:16
[2026-08-25 01:46:16,507.507 INFO    ] 2026-08-25 01:46:16
[2026-08-25 01:46:16,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:46:16,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:46:16,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:46:16,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:46:17,019.019 INFO    ] time= 25/08/2026 01:46:17
[2026-08-25 01:46:17,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:46:17,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:46:17,174.174 INFO    ] No existing commands found in stream
[2026-08-25 01:46:22,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:46:22,196.196 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 01:46:26,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:46:26,371.371 INFO    ] Checking for system updates...
[2026-08-25 01:46:26,406.406 INFO    ] 200
[2026-08-25 01:46:26,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:26,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:26,462.462 INFO    ] No update needed
[2026-08-25 01:46:26,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 01:46:26,498.498 INFO    ] 200
[2026-08-25 01:46:26,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:26,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:46:26,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:26,603.603 INFO    ] No camera update needed
[2026-08-25 01:46:26,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:46:26,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:46:26,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:46:26,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:46:28,657.657 INFO    ] ================================================
[2026-08-25 01:46:28,673.673 INFO    ] Launching Daemon at Tue Aug 25 01:46:28 IST 2026
[2026-08-25 01:46:28,683.683 INFO    ] ================================================
[2026-08-25 01:46:29,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:46:29
[2026-08-25 01:46:29,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:46:30,286.286 INFO    ] Initializing speech engine...
[2026-08-25 01:46:30,293.293 INFO    ] 2026-08-25 01:46:30
[2026-08-25 01:46:30,580.580 INFO    ] 2026-08-25 01:46:30
[2026-08-25 01:46:30,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:46:30,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:46:30,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:46:31,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:46:31,063.063 INFO    ] time= 25/08/2026 01:46:31
[2026-08-25 01:46:31,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:46:31,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:46:31,273.273 INFO    ] No existing commands found in stream
[2026-08-25 01:46:36,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:46:36,298.298 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 01:46:38,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:46:38,715.715 INFO    ] Checking for system updates...
[2026-08-25 01:46:38,751.751 INFO    ] 200
[2026-08-25 01:46:38,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:38,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:38,809.809 INFO    ] No update needed
[2026-08-25 01:46:38,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 01:46:38,846.846 INFO    ] 200
[2026-08-25 01:46:38,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:38,889.889 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:46:38,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:38,947.947 INFO    ] No camera update needed
[2026-08-25 01:46:38,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:46:38,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:46:38,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:46:38,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:46:41,007.007 INFO    ] ================================================
[2026-08-25 01:46:41,022.022 INFO    ] Launching Daemon at Tue Aug 25 01:46:41 IST 2026
[2026-08-25 01:46:41,033.033 INFO    ] ================================================
[2026-08-25 01:46:41,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:46:41
[2026-08-25 01:46:42,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:46:42,525.525 INFO    ] Initializing speech engine...
[2026-08-25 01:46:42,533.533 INFO    ] 2026-08-25 01:46:42
[2026-08-25 01:46:42,810.810 INFO    ] 2026-08-25 01:46:42
[2026-08-25 01:46:42,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:46:43,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:46:43,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:46:43,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:46:43,284.284 INFO    ] time= 25/08/2026 01:46:43
[2026-08-25 01:46:43,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:46:43,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:46:43,510.510 INFO    ] No existing commands found in stream
[2026-08-25 01:46:48,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:46:48,537.537 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 01:46:51,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:46:51,672.672 INFO    ] Checking for system updates...
[2026-08-25 01:46:51,709.709 INFO    ] 200
[2026-08-25 01:46:51,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:51,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:51,772.772 INFO    ] No update needed
[2026-08-25 01:46:51,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 01:46:51,809.809 INFO    ] 200
[2026-08-25 01:46:51,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:46:51,853.853 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:46:51,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:46:51,904.904 INFO    ] No camera update needed
[2026-08-25 01:46:51,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:46:51,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:46:51,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:46:51,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:46:53,961.961 INFO    ] ================================================
[2026-08-25 01:46:53,977.977 INFO    ] Launching Daemon at Tue Aug 25 01:46:53 IST 2026
[2026-08-25 01:46:53,988.988 INFO    ] ================================================
[2026-08-25 01:46:54,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:46:54
[2026-08-25 01:46:55,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:46:55,567.567 INFO    ] Initializing speech engine...
[2026-08-25 01:46:55,576.576 INFO    ] 2026-08-25 01:46:55
[2026-08-25 01:46:55,856.856 INFO    ] 2026-08-25 01:46:55
[2026-08-25 01:46:55,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:46:56,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:46:56,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:46:56,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:46:56,391.391 INFO    ] time= 25/08/2026 01:46:56
[2026-08-25 01:46:56,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:46:56,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:46:56,541.541 INFO    ] No existing commands found in stream
[2026-08-25 01:47:01,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:47:01,564.564 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 01:47:02,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:47:02,503.503 INFO    ] Checking for system updates...
[2026-08-25 01:47:02,550.550 INFO    ] 200
[2026-08-25 01:47:02,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:02,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:02,615.615 INFO    ] No update needed
[2026-08-25 01:47:02,618.618 INFO    ] Checking for camera pi updates...
[2026-08-25 01:47:02,656.656 INFO    ] 200
[2026-08-25 01:47:02,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:02,706.706 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:47:02,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:02,771.771 INFO    ] No camera update needed
[2026-08-25 01:47:02,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:47:02,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:47:02,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:47:02,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:47:04,841.841 INFO    ] ================================================
[2026-08-25 01:47:04,856.856 INFO    ] Launching Daemon at Tue Aug 25 01:47:04 IST 2026
[2026-08-25 01:47:04,867.867 INFO    ] ================================================
[2026-08-25 01:47:05,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:47:05
[2026-08-25 01:47:06,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:47:06,469.469 INFO    ] Initializing speech engine...
[2026-08-25 01:47:06,479.479 INFO    ] 2026-08-25 01:47:06
[2026-08-25 01:47:06,724.724 INFO    ] 2026-08-25 01:47:06
[2026-08-25 01:47:06,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:47:06,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:47:06,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:47:07,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:47:07,187.187 INFO    ] time= 25/08/2026 01:47:07
[2026-08-25 01:47:07,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:47:07,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:47:07,435.435 INFO    ] No existing commands found in stream
[2026-08-25 01:47:12,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:47:12,466.466 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 01:47:15,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:47:15,972.972 INFO    ] Checking for system updates...
[2026-08-25 01:47:16,008.008 INFO    ] 200
[2026-08-25 01:47:16,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:16,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:47:16,064.064 INFO    ] No update needed
[2026-08-25 01:47:16,067.067 INFO    ] Checking for camera pi updates...
[2026-08-25 01:47:16,100.100 INFO    ] 200
[2026-08-25 01:47:16,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:16,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:47:16,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:47:16,190.190 INFO    ] No camera update needed
[2026-08-25 01:47:16,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:47:16,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:47:16,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:47:16,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:47:18,245.245 INFO    ] ================================================
[2026-08-25 01:47:18,261.261 INFO    ] Launching Daemon at Tue Aug 25 01:47:18 IST 2026
[2026-08-25 01:47:18,272.272 INFO    ] ================================================
[2026-08-25 01:47:18,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:47:18
[2026-08-25 01:47:19,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:47:19,772.772 INFO    ] Initializing speech engine...
[2026-08-25 01:47:19,781.781 INFO    ] 2026-08-25 01:47:19
[2026-08-25 01:47:20,029.029 INFO    ] 2026-08-25 01:47:20
[2026-08-25 01:47:20,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:47:20,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:47:20,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:47:20,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:47:20,408.408 INFO    ] time= 25/08/2026 01:47:20
[2026-08-25 01:47:20,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:47:20,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:47:20,584.584 INFO    ] No existing commands found in stream
[2026-08-25 01:47:25,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:47:25,617.617 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 01:47:29,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:47:29,716.716 INFO    ] Checking for system updates...
[2026-08-25 01:47:29,751.751 INFO    ] 200
[2026-08-25 01:47:29,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:29,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:29,808.808 INFO    ] No update needed
[2026-08-25 01:47:29,811.811 INFO    ] Checking for camera pi updates...
[2026-08-25 01:47:29,844.844 INFO    ] 200
[2026-08-25 01:47:29,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:29,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:47:29,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:29,938.938 INFO    ] No camera update needed
[2026-08-25 01:47:29,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:47:29,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:47:29,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:47:29,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:47:32,996.996 INFO    ] ================================================
[2026-08-25 01:47:32,014.014 INFO    ] Launching Daemon at Tue Aug 25 01:47:32 IST 2026
[2026-08-25 01:47:32,026.026 INFO    ] ================================================
[2026-08-25 01:47:32,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:47:32
[2026-08-25 01:47:33,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:47:33,495.495 INFO    ] Initializing speech engine...
[2026-08-25 01:47:33,515.515 INFO    ] 2026-08-25 01:47:33
[2026-08-25 01:47:33,779.779 INFO    ] 2026-08-25 01:47:33
[2026-08-25 01:47:33,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:47:34,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:47:34,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:47:34,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:47:34,166.166 INFO    ] time= 25/08/2026 01:47:34
[2026-08-25 01:47:34,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:47:34,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:47:34,280.280 INFO    ] No existing commands found in stream
[2026-08-25 01:47:39,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:47:39,298.298 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 01:47:41,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:47:41,340.340 INFO    ] Checking for system updates...
[2026-08-25 01:47:41,375.375 INFO    ] 200
[2026-08-25 01:47:41,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:41,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:41,432.432 INFO    ] No update needed
[2026-08-25 01:47:41,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 01:47:41,468.468 INFO    ] 200
[2026-08-25 01:47:41,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:41,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:47:41,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:41,567.567 INFO    ] No camera update needed
[2026-08-25 01:47:41,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:47:41,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:47:41,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:47:41,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:47:43,622.622 INFO    ] ================================================
[2026-08-25 01:47:43,637.637 INFO    ] Launching Daemon at Tue Aug 25 01:47:43 IST 2026
[2026-08-25 01:47:43,648.648 INFO    ] ================================================
[2026-08-25 01:47:44,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:47:44
[2026-08-25 01:47:44,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:47:45,056.056 INFO    ] Initializing speech engine...
[2026-08-25 01:47:45,062.062 INFO    ] 2026-08-25 01:47:45
[2026-08-25 01:47:45,360.360 INFO    ] 2026-08-25 01:47:45
[2026-08-25 01:47:45,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:47:45,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:47:45,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:47:45,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:47:45,771.771 INFO    ] time= 25/08/2026 01:47:45
[2026-08-25 01:47:45,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:47:45,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:47:45,861.861 INFO    ] No existing commands found in stream
[2026-08-25 01:47:50,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:47:50,900.900 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 01:47:52,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:47:52,088.088 INFO    ] Checking for system updates...
[2026-08-25 01:47:52,123.123 INFO    ] 200
[2026-08-25 01:47:52,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:52,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:52,184.184 INFO    ] No update needed
[2026-08-25 01:47:52,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 01:47:52,219.219 INFO    ] 200
[2026-08-25 01:47:52,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:47:52,262.262 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:47:52,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:47:52,416.416 INFO    ] No camera update needed
[2026-08-25 01:47:52,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:47:52,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:47:52,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:47:52,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:47:54,470.470 INFO    ] ================================================
[2026-08-25 01:47:54,485.485 INFO    ] Launching Daemon at Tue Aug 25 01:47:54 IST 2026
[2026-08-25 01:47:54,496.496 INFO    ] ================================================
[2026-08-25 01:47:55,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:47:55
[2026-08-25 01:47:55,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:47:55,961.961 INFO    ] Initializing speech engine...
[2026-08-25 01:47:55,970.970 INFO    ] 2026-08-25 01:47:55
[2026-08-25 01:47:56,218.218 INFO    ] 2026-08-25 01:47:56
[2026-08-25 01:47:56,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:47:56,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:47:56,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:47:56,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:47:56,719.719 INFO    ] time= 25/08/2026 01:47:56
[2026-08-25 01:47:56,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:47:56,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:47:56,929.929 INFO    ] No existing commands found in stream
[2026-08-25 01:48:01,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:48:01,948.948 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 01:48:03,719.719 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:48:03,721.721 INFO    ] Checking for system updates...
[2026-08-25 01:48:03,758.758 INFO    ] 200
[2026-08-25 01:48:03,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:03,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:48:03,815.815 INFO    ] No update needed
[2026-08-25 01:48:03,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 01:48:03,852.852 INFO    ] 200
[2026-08-25 01:48:03,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:03,897.897 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:48:03,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:48:03,951.951 INFO    ] No camera update needed
[2026-08-25 01:48:03,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:48:03,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:48:03,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:48:03,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:48:06,008.008 INFO    ] ================================================
[2026-08-25 01:48:06,023.023 INFO    ] Launching Daemon at Tue Aug 25 01:48:06 IST 2026
[2026-08-25 01:48:06,033.033 INFO    ] ================================================
[2026-08-25 01:48:06,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:48:06
[2026-08-25 01:48:07,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:48:07,472.472 INFO    ] Initializing speech engine...
[2026-08-25 01:48:07,484.484 INFO    ] 2026-08-25 01:48:07
[2026-08-25 01:48:07,745.745 INFO    ] 2026-08-25 01:48:07
[2026-08-25 01:48:07,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:48:07,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:48:07,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:48:08,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:48:08,113.113 INFO    ] time= 25/08/2026 01:48:08
[2026-08-25 01:48:08,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:48:08,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:48:08,290.290 INFO    ] No existing commands found in stream
[2026-08-25 01:48:13,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:48:13,323.323 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 01:48:17,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:48:17,169.169 INFO    ] Checking for system updates...
[2026-08-25 01:48:17,204.204 INFO    ] 200
[2026-08-25 01:48:17,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:17,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:48:17,262.262 INFO    ] No update needed
[2026-08-25 01:48:17,264.264 INFO    ] Checking for camera pi updates...
[2026-08-25 01:48:17,297.297 INFO    ] 200
[2026-08-25 01:48:17,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:17,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:48:17,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:48:17,398.398 INFO    ] No camera update needed
[2026-08-25 01:48:17,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:48:17,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:48:17,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:48:17,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:48:19,452.452 INFO    ] ================================================
[2026-08-25 01:48:19,467.467 INFO    ] Launching Daemon at Tue Aug 25 01:48:19 IST 2026
[2026-08-25 01:48:19,478.478 INFO    ] ================================================
[2026-08-25 01:48:20,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:48:20
[2026-08-25 01:48:20,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:48:21,026.026 INFO    ] Initializing speech engine...
[2026-08-25 01:48:21,034.034 INFO    ] 2026-08-25 01:48:21
[2026-08-25 01:48:21,291.291 INFO    ] 2026-08-25 01:48:21
[2026-08-25 01:48:21,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:48:21,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:48:21,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:48:21,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:48:21,756.756 INFO    ] time= 25/08/2026 01:48:21
[2026-08-25 01:48:21,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:48:21,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:48:21,976.976 INFO    ] No existing commands found in stream
[2026-08-25 01:48:26,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:48:27,000.000 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 01:48:30,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:48:30,950.950 INFO    ] Checking for system updates...
[2026-08-25 01:48:30,986.986 INFO    ] 200
[2026-08-25 01:48:30,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:31,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:48:31,056.056 INFO    ] No update needed
[2026-08-25 01:48:31,059.059 INFO    ] Checking for camera pi updates...
[2026-08-25 01:48:31,098.098 INFO    ] 200
[2026-08-25 01:48:31,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:31,148.148 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:48:31,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:48:31,203.203 INFO    ] No camera update needed
[2026-08-25 01:48:31,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:48:31,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:48:31,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:48:31,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:48:33,260.260 INFO    ] ================================================
[2026-08-25 01:48:33,275.275 INFO    ] Launching Daemon at Tue Aug 25 01:48:33 IST 2026
[2026-08-25 01:48:33,286.286 INFO    ] ================================================
[2026-08-25 01:48:33,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:48:33
[2026-08-25 01:48:34,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:48:34,727.727 INFO    ] Initializing speech engine...
[2026-08-25 01:48:34,736.736 INFO    ] 2026-08-25 01:48:34
[2026-08-25 01:48:34,982.982 INFO    ] 2026-08-25 01:48:34
[2026-08-25 01:48:35,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:48:35,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:48:35,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:48:35,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:48:35,414.414 INFO    ] time= 25/08/2026 01:48:35
[2026-08-25 01:48:35,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:48:35,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:48:35,596.596 INFO    ] No existing commands found in stream
[2026-08-25 01:48:40,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:48:40,610.610 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 01:48:42,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:48:42,301.301 INFO    ] Checking for system updates...
[2026-08-25 01:48:42,339.339 INFO    ] 200
[2026-08-25 01:48:42,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:42,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:48:42,406.406 INFO    ] No update needed
[2026-08-25 01:48:42,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 01:48:42,448.448 INFO    ] 200
[2026-08-25 01:48:42,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:42,493.493 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:48:42,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:48:42,541.541 INFO    ] No camera update needed
[2026-08-25 01:48:42,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:48:42,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:48:42,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:48:42,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:48:44,602.602 INFO    ] ================================================
[2026-08-25 01:48:44,618.618 INFO    ] Launching Daemon at Tue Aug 25 01:48:44 IST 2026
[2026-08-25 01:48:44,628.628 INFO    ] ================================================
[2026-08-25 01:48:45,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:48:45
[2026-08-25 01:48:45,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:48:46,072.072 INFO    ] Initializing speech engine...
[2026-08-25 01:48:46,078.078 INFO    ] 2026-08-25 01:48:46
[2026-08-25 01:48:46,376.376 INFO    ] 2026-08-25 01:48:46
[2026-08-25 01:48:46,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:48:46,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:48:46,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:48:46,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:48:46,765.765 INFO    ] time= 25/08/2026 01:48:46
[2026-08-25 01:48:46,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:48:46,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:48:46,891.891 INFO    ] No existing commands found in stream
[2026-08-25 01:48:51,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:48:51,908.908 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 01:48:54,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:48:54,901.901 INFO    ] Checking for system updates...
[2026-08-25 01:48:54,936.936 INFO    ] 200
[2026-08-25 01:48:54,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:54,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:48:54,992.992 INFO    ] No update needed
[2026-08-25 01:48:54,995.995 INFO    ] Checking for camera pi updates...
[2026-08-25 01:48:55,028.028 INFO    ] 200
[2026-08-25 01:48:55,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:48:55,076.076 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:48:55,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:48:55,126.126 INFO    ] No camera update needed
[2026-08-25 01:48:55,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:48:55,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:48:55,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:48:55,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:48:57,182.182 INFO    ] ================================================
[2026-08-25 01:48:57,198.198 INFO    ] Launching Daemon at Tue Aug 25 01:48:57 IST 2026
[2026-08-25 01:48:57,209.209 INFO    ] ================================================
[2026-08-25 01:48:57,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:48:57
[2026-08-25 01:48:58,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:48:58,846.846 INFO    ] Initializing speech engine...
[2026-08-25 01:48:58,853.853 INFO    ] 2026-08-25 01:48:58
[2026-08-25 01:48:59,138.138 INFO    ] 2026-08-25 01:48:59
[2026-08-25 01:48:59,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:48:59,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:48:59,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:48:59,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:48:59,614.614 INFO    ] time= 25/08/2026 01:48:59
[2026-08-25 01:48:59,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:48:59,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:48:59,822.822 INFO    ] No existing commands found in stream
[2026-08-25 01:49:04,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:49:04,839.839 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 01:49:07,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:49:07,390.390 INFO    ] Checking for system updates...
[2026-08-25 01:49:07,425.425 INFO    ] 200
[2026-08-25 01:49:07,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:07,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:07,483.483 INFO    ] No update needed
[2026-08-25 01:49:07,486.486 INFO    ] Checking for camera pi updates...
[2026-08-25 01:49:07,520.520 INFO    ] 200
[2026-08-25 01:49:07,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:07,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:49:07,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:07,623.623 INFO    ] No camera update needed
[2026-08-25 01:49:07,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:49:07,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:49:07,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:49:07,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:49:09,678.678 INFO    ] ================================================
[2026-08-25 01:49:09,693.693 INFO    ] Launching Daemon at Tue Aug 25 01:49:09 IST 2026
[2026-08-25 01:49:09,703.703 INFO    ] ================================================
[2026-08-25 01:49:10,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:49:10
[2026-08-25 01:49:10,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:49:11,162.162 INFO    ] Initializing speech engine...
[2026-08-25 01:49:11,171.171 INFO    ] 2026-08-25 01:49:11
[2026-08-25 01:49:11,422.422 INFO    ] 2026-08-25 01:49:11
[2026-08-25 01:49:11,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:49:11,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:49:11,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:49:11,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:49:11,802.802 INFO    ] time= 25/08/2026 01:49:11
[2026-08-25 01:49:11,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:49:11,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:49:11,996.996 INFO    ] No existing commands found in stream
[2026-08-25 01:49:17,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:49:17,017.017 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 01:49:17,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:49:17,938.938 INFO    ] Checking for system updates...
[2026-08-25 01:49:17,974.974 INFO    ] 200
[2026-08-25 01:49:17,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:18,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:49:18,036.036 INFO    ] No update needed
[2026-08-25 01:49:18,038.038 INFO    ] Checking for camera pi updates...
[2026-08-25 01:49:18,072.072 INFO    ] 200
[2026-08-25 01:49:18,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:18,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:49:18,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:49:18,179.179 INFO    ] No camera update needed
[2026-08-25 01:49:18,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:49:18,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:49:18,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:49:18,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:49:20,233.233 INFO    ] ================================================
[2026-08-25 01:49:20,248.248 INFO    ] Launching Daemon at Tue Aug 25 01:49:20 IST 2026
[2026-08-25 01:49:20,259.259 INFO    ] ================================================
[2026-08-25 01:49:20,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:49:20
[2026-08-25 01:49:21,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:49:21,680.680 INFO    ] Initializing speech engine...
[2026-08-25 01:49:21,689.689 INFO    ] 2026-08-25 01:49:21
[2026-08-25 01:49:21,939.939 INFO    ] 2026-08-25 01:49:21
[2026-08-25 01:49:21,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:49:22,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:49:22,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:49:22,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:49:22,314.314 INFO    ] time= 25/08/2026 01:49:22
[2026-08-25 01:49:22,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:49:22,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:49:22,483.483 INFO    ] No existing commands found in stream
[2026-08-25 01:49:27,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:49:27,521.521 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 01:49:30,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:49:30,173.173 INFO    ] Checking for system updates...
[2026-08-25 01:49:30,208.208 INFO    ] 200
[2026-08-25 01:49:30,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:30,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:30,265.265 INFO    ] No update needed
[2026-08-25 01:49:30,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 01:49:30,306.306 INFO    ] 200
[2026-08-25 01:49:30,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:30,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:49:30,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:30,401.401 INFO    ] No camera update needed
[2026-08-25 01:49:30,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:49:30,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:49:30,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:49:30,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:49:32,461.461 INFO    ] ================================================
[2026-08-25 01:49:32,482.482 INFO    ] Launching Daemon at Tue Aug 25 01:49:32 IST 2026
[2026-08-25 01:49:32,502.502 INFO    ] ================================================
[2026-08-25 01:49:33,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:49:33
[2026-08-25 01:49:33,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:49:33,923.923 INFO    ] Initializing speech engine...
[2026-08-25 01:49:33,931.931 INFO    ] 2026-08-25 01:49:33
[2026-08-25 01:49:34,182.182 INFO    ] 2026-08-25 01:49:34
[2026-08-25 01:49:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:49:34,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:49:34,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:49:34,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:49:34,555.555 INFO    ] time= 25/08/2026 01:49:34
[2026-08-25 01:49:34,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:49:34,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:49:34,738.738 INFO    ] No existing commands found in stream
[2026-08-25 01:49:39,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:49:39,766.766 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 01:49:43,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:49:43,489.489 INFO    ] Checking for system updates...
[2026-08-25 01:49:43,528.528 INFO    ] 200
[2026-08-25 01:49:43,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:43,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:43,585.585 INFO    ] No update needed
[2026-08-25 01:49:43,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 01:49:43,626.626 INFO    ] 200
[2026-08-25 01:49:43,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:43,668.668 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:49:43,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:43,717.717 INFO    ] No camera update needed
[2026-08-25 01:49:43,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:49:43,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:49:43,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:49:43,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:49:45,771.771 INFO    ] ================================================
[2026-08-25 01:49:45,786.786 INFO    ] Launching Daemon at Tue Aug 25 01:49:45 IST 2026
[2026-08-25 01:49:45,801.801 INFO    ] ================================================
[2026-08-25 01:49:46,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:49:46
[2026-08-25 01:49:46,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:49:47,236.236 INFO    ] Initializing speech engine...
[2026-08-25 01:49:47,245.245 INFO    ] 2026-08-25 01:49:47
[2026-08-25 01:49:47,496.496 INFO    ] 2026-08-25 01:49:47
[2026-08-25 01:49:47,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:49:47,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:49:47,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:49:47,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:49:47,874.874 INFO    ] time= 25/08/2026 01:49:47
[2026-08-25 01:49:47,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:49:47,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:49:48,063.063 INFO    ] No existing commands found in stream
[2026-08-25 01:49:53,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:49:53,089.089 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 01:49:56,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:49:56,319.319 INFO    ] Checking for system updates...
[2026-08-25 01:49:56,383.383 INFO    ] 200
[2026-08-25 01:49:56,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:56,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:56,445.445 INFO    ] No update needed
[2026-08-25 01:49:56,448.448 INFO    ] Checking for camera pi updates...
[2026-08-25 01:49:56,482.482 INFO    ] 200
[2026-08-25 01:49:56,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:49:56,533.533 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:49:56,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:49:56,681.681 INFO    ] No camera update needed
[2026-08-25 01:49:56,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:49:56,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:49:56,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:49:56,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:49:58,741.741 INFO    ] ================================================
[2026-08-25 01:49:58,757.757 INFO    ] Launching Daemon at Tue Aug 25 01:49:58 IST 2026
[2026-08-25 01:49:58,768.768 INFO    ] ================================================
[2026-08-25 01:49:59,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:49:59
[2026-08-25 01:50:00,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:50:00,347.347 INFO    ] Initializing speech engine...
[2026-08-25 01:50:00,361.361 INFO    ] 2026-08-25 01:50:00
[2026-08-25 01:50:00,650.650 INFO    ] 2026-08-25 01:50:00
[2026-08-25 01:50:00,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:50:00,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:50:00,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:50:01,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:50:01,135.135 INFO    ] time= 25/08/2026 01:50:01
[2026-08-25 01:50:01,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:50:01,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:50:01,385.385 INFO    ] No existing commands found in stream
[2026-08-25 01:50:06,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:50:06,412.412 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 01:50:07,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:50:07,945.945 INFO    ] Checking for system updates...
[2026-08-25 01:50:07,984.984 INFO    ] 200
[2026-08-25 01:50:07,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:08,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:50:08,046.046 INFO    ] No update needed
[2026-08-25 01:50:08,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 01:50:08,085.085 INFO    ] 200
[2026-08-25 01:50:08,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:08,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:50:08,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:50:08,189.189 INFO    ] No camera update needed
[2026-08-25 01:50:08,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:50:08,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:50:08,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:50:08,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:50:10,246.246 INFO    ] ================================================
[2026-08-25 01:50:10,261.261 INFO    ] Launching Daemon at Tue Aug 25 01:50:10 IST 2026
[2026-08-25 01:50:10,272.272 INFO    ] ================================================
[2026-08-25 01:50:10,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:50:10
[2026-08-25 01:50:11,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:50:11,715.715 INFO    ] Initializing speech engine...
[2026-08-25 01:50:11,740.740 INFO    ] 2026-08-25 01:50:11
[2026-08-25 01:50:12,009.009 INFO    ] 2026-08-25 01:50:11
[2026-08-25 01:50:12,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:50:12,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:50:12,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:50:12,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:50:12,419.419 INFO    ] time= 25/08/2026 01:50:12
[2026-08-25 01:50:12,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:50:12,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:50:12,556.556 INFO    ] No existing commands found in stream
[2026-08-25 01:50:17,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:50:17,584.584 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 01:50:18,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:50:18,317.317 INFO    ] Checking for system updates...
[2026-08-25 01:50:18,352.352 INFO    ] 200
[2026-08-25 01:50:18,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:18,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:50:18,410.410 INFO    ] No update needed
[2026-08-25 01:50:18,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 01:50:18,445.445 INFO    ] 200
[2026-08-25 01:50:18,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:18,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:50:18,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:50:18,544.544 INFO    ] No camera update needed
[2026-08-25 01:50:18,546.546 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:50:18,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:50:18,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:50:18,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:50:20,599.599 INFO    ] ================================================
[2026-08-25 01:50:20,614.614 INFO    ] Launching Daemon at Tue Aug 25 01:50:20 IST 2026
[2026-08-25 01:50:20,625.625 INFO    ] ================================================
[2026-08-25 01:50:21,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:50:21
[2026-08-25 01:50:21,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:50:22,101.101 INFO    ] Initializing speech engine...
[2026-08-25 01:50:22,116.116 INFO    ] 2026-08-25 01:50:22
[2026-08-25 01:50:22,384.384 INFO    ] 2026-08-25 01:50:22
[2026-08-25 01:50:22,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:50:22,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:50:22,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:50:22,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:50:22,786.786 INFO    ] time= 25/08/2026 01:50:22
[2026-08-25 01:50:22,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:50:22,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:50:22,923.923 INFO    ] No existing commands found in stream
[2026-08-25 01:50:27,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:50:27,951.951 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 01:50:28,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:50:28,821.821 INFO    ] Checking for system updates...
[2026-08-25 01:50:28,857.857 INFO    ] 200
[2026-08-25 01:50:28,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:28,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:50:28,919.919 INFO    ] No update needed
[2026-08-25 01:50:28,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 01:50:28,957.957 INFO    ] 200
[2026-08-25 01:50:28,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:29,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:50:29,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:50:29,062.062 INFO    ] No camera update needed
[2026-08-25 01:50:29,065.065 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:50:29,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:50:29,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:50:29,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:50:31,119.119 INFO    ] ================================================
[2026-08-25 01:50:31,134.134 INFO    ] Launching Daemon at Tue Aug 25 01:50:31 IST 2026
[2026-08-25 01:50:31,145.145 INFO    ] ================================================
[2026-08-25 01:50:31,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:50:31
[2026-08-25 01:50:32,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:50:32,661.661 INFO    ] Initializing speech engine...
[2026-08-25 01:50:32,669.669 INFO    ] 2026-08-25 01:50:32
[2026-08-25 01:50:32,940.940 INFO    ] 2026-08-25 01:50:32
[2026-08-25 01:50:32,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:50:33,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:50:33,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:50:33,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:50:33,292.292 INFO    ] time= 25/08/2026 01:50:33
[2026-08-25 01:50:33,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:50:33,324.324 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:50:33,398.398 INFO    ] No existing commands found in stream
[2026-08-25 01:50:38,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:50:38,437.437 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 01:50:41,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:50:41,221.221 INFO    ] Checking for system updates...
[2026-08-25 01:50:41,257.257 INFO    ] 200
[2026-08-25 01:50:41,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:41,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:50:41,317.317 INFO    ] No update needed
[2026-08-25 01:50:41,319.319 INFO    ] Checking for camera pi updates...
[2026-08-25 01:50:41,354.354 INFO    ] 200
[2026-08-25 01:50:41,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:41,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:50:41,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:50:41,453.453 INFO    ] No camera update needed
[2026-08-25 01:50:41,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:50:41,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:50:41,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:50:41,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:50:43,509.509 INFO    ] ================================================
[2026-08-25 01:50:43,524.524 INFO    ] Launching Daemon at Tue Aug 25 01:50:43 IST 2026
[2026-08-25 01:50:43,534.534 INFO    ] ================================================
[2026-08-25 01:50:44,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:50:44
[2026-08-25 01:50:44,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:50:45,100.100 INFO    ] Initializing speech engine...
[2026-08-25 01:50:45,114.114 INFO    ] 2026-08-25 01:50:45
[2026-08-25 01:50:45,389.389 INFO    ] 2026-08-25 01:50:45
[2026-08-25 01:50:45,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:50:45,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:50:45,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:50:45,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:50:45,939.939 INFO    ] time= 25/08/2026 01:50:45
[2026-08-25 01:50:45,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:50:45,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:50:46,094.094 INFO    ] No existing commands found in stream
[2026-08-25 01:50:51,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:50:51,111.111 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 01:50:54,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:50:54,441.441 INFO    ] Checking for system updates...
[2026-08-25 01:50:54,481.481 INFO    ] 200
[2026-08-25 01:50:54,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:54,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:50:54,539.539 INFO    ] No update needed
[2026-08-25 01:50:54,541.541 INFO    ] Checking for camera pi updates...
[2026-08-25 01:50:54,576.576 INFO    ] 200
[2026-08-25 01:50:54,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:50:54,619.619 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:50:54,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:50:54,672.672 INFO    ] No camera update needed
[2026-08-25 01:50:54,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:50:54,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:50:54,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:50:54,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:50:56,729.729 INFO    ] ================================================
[2026-08-25 01:50:56,744.744 INFO    ] Launching Daemon at Tue Aug 25 01:50:56 IST 2026
[2026-08-25 01:50:56,755.755 INFO    ] ================================================
[2026-08-25 01:50:57,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:50:57
[2026-08-25 01:50:58,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:50:58,358.358 INFO    ] Initializing speech engine...
[2026-08-25 01:50:58,370.370 INFO    ] 2026-08-25 01:50:58
[2026-08-25 01:50:58,638.638 INFO    ] 2026-08-25 01:50:58
[2026-08-25 01:50:58,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:50:58,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:50:58,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:50:59,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:50:59,198.198 INFO    ] time= 25/08/2026 01:50:59
[2026-08-25 01:50:59,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:50:59,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:50:59,351.351 INFO    ] No existing commands found in stream
[2026-08-25 01:51:04,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:51:04,372.372 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 01:51:04,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:51:04,890.890 INFO    ] Checking for system updates...
[2026-08-25 01:51:04,926.926 INFO    ] 200
[2026-08-25 01:51:04,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:04,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:51:04,989.989 INFO    ] No update needed
[2026-08-25 01:51:04,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 01:51:05,028.028 INFO    ] 200
[2026-08-25 01:51:05,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:05,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:51:05,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:51:05,128.128 INFO    ] No camera update needed
[2026-08-25 01:51:05,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:51:05,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:51:05,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:51:05,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:51:07,184.184 INFO    ] ================================================
[2026-08-25 01:51:07,199.199 INFO    ] Launching Daemon at Tue Aug 25 01:51:07 IST 2026
[2026-08-25 01:51:07,210.210 INFO    ] ================================================
[2026-08-25 01:51:07,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:51:07
[2026-08-25 01:51:08,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:51:08,662.662 INFO    ] Initializing speech engine...
[2026-08-25 01:51:08,672.672 INFO    ] 2026-08-25 01:51:08
[2026-08-25 01:51:08,933.933 INFO    ] 2026-08-25 01:51:08
[2026-08-25 01:51:08,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:51:09,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:51:09,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:51:09,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:51:09,407.407 INFO    ] time= 25/08/2026 01:51:09
[2026-08-25 01:51:09,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:51:09,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:51:09,620.620 INFO    ] No existing commands found in stream
[2026-08-25 01:51:14,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:51:14,643.643 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 01:51:16,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:51:16,849.849 INFO    ] Checking for system updates...
[2026-08-25 01:51:16,886.886 INFO    ] 200
[2026-08-25 01:51:16,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:16,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:51:16,944.944 INFO    ] No update needed
[2026-08-25 01:51:16,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 01:51:16,980.980 INFO    ] 200
[2026-08-25 01:51:16,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:17,023.023 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:51:17,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:51:17,079.079 INFO    ] No camera update needed
[2026-08-25 01:51:17,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:51:17,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:51:17,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:51:17,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:51:19,135.135 INFO    ] ================================================
[2026-08-25 01:51:19,150.150 INFO    ] Launching Daemon at Tue Aug 25 01:51:19 IST 2026
[2026-08-25 01:51:19,160.160 INFO    ] ================================================
[2026-08-25 01:51:19,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:51:19
[2026-08-25 01:51:20,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:51:20,553.553 INFO    ] Initializing speech engine...
[2026-08-25 01:51:20,568.568 INFO    ] 2026-08-25 01:51:20
[2026-08-25 01:51:20,833.833 INFO    ] 2026-08-25 01:51:20
[2026-08-25 01:51:20,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:51:21,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:51:21,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:51:21,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:51:21,206.206 INFO    ] time= 25/08/2026 01:51:21
[2026-08-25 01:51:21,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:51:21,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:51:21,342.342 INFO    ] No existing commands found in stream
[2026-08-25 01:51:26,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:51:26,380.380 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 01:51:28,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:51:28,667.667 INFO    ] Checking for system updates...
[2026-08-25 01:51:28,702.702 INFO    ] 200
[2026-08-25 01:51:28,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:28,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:51:28,758.758 INFO    ] No update needed
[2026-08-25 01:51:28,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 01:51:28,794.794 INFO    ] 200
[2026-08-25 01:51:28,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:28,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:51:28,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:51:28,899.899 INFO    ] No camera update needed
[2026-08-25 01:51:28,901.901 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:51:28,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:51:28,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:51:28,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:51:30,956.956 INFO    ] ================================================
[2026-08-25 01:51:30,971.971 INFO    ] Launching Daemon at Tue Aug 25 01:51:30 IST 2026
[2026-08-25 01:51:30,982.982 INFO    ] ================================================
[2026-08-25 01:51:31,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:51:31
[2026-08-25 01:51:32,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:51:32,471.471 INFO    ] Initializing speech engine...
[2026-08-25 01:51:32,485.485 INFO    ] 2026-08-25 01:51:32
[2026-08-25 01:51:32,784.784 INFO    ] 2026-08-25 01:51:32
[2026-08-25 01:51:32,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:51:33,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:51:33,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:51:33,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:51:33,181.181 INFO    ] time= 25/08/2026 01:51:33
[2026-08-25 01:51:33,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:51:33,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:51:33,302.302 INFO    ] No existing commands found in stream
[2026-08-25 01:51:38,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:51:38,317.317 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 01:51:41,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:51:41,789.789 INFO    ] Checking for system updates...
[2026-08-25 01:51:41,825.825 INFO    ] 200
[2026-08-25 01:51:41,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:41,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:51:41,882.882 INFO    ] No update needed
[2026-08-25 01:51:41,884.884 INFO    ] Checking for camera pi updates...
[2026-08-25 01:51:41,917.917 INFO    ] 200
[2026-08-25 01:51:41,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:41,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:51:42,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:51:42,015.015 INFO    ] No camera update needed
[2026-08-25 01:51:42,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:51:42,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:51:42,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:51:42,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:51:44,068.068 INFO    ] ================================================
[2026-08-25 01:51:44,083.083 INFO    ] Launching Daemon at Tue Aug 25 01:51:44 IST 2026
[2026-08-25 01:51:44,094.094 INFO    ] ================================================
[2026-08-25 01:51:44,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:51:44
[2026-08-25 01:51:45,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:51:45,533.533 INFO    ] Initializing speech engine...
[2026-08-25 01:51:45,541.541 INFO    ] 2026-08-25 01:51:45
[2026-08-25 01:51:45,803.803 INFO    ] 2026-08-25 01:51:45
[2026-08-25 01:51:45,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:51:46,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:51:46,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:51:46,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:51:46,262.262 INFO    ] time= 25/08/2026 01:51:46
[2026-08-25 01:51:46,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:51:46,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:51:46,479.479 INFO    ] No existing commands found in stream
[2026-08-25 01:51:51,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:51:51,509.509 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 01:51:54,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:51:54,979.979 INFO    ] Checking for system updates...
[2026-08-25 01:51:55,016.016 INFO    ] 200
[2026-08-25 01:51:55,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:55,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:51:55,076.076 INFO    ] No update needed
[2026-08-25 01:51:55,079.079 INFO    ] Checking for camera pi updates...
[2026-08-25 01:51:55,116.116 INFO    ] 200
[2026-08-25 01:51:55,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:51:55,158.158 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:51:55,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:51:55,206.206 INFO    ] No camera update needed
[2026-08-25 01:51:55,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:51:55,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:51:55,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:51:55,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:51:57,262.262 INFO    ] ================================================
[2026-08-25 01:51:57,277.277 INFO    ] Launching Daemon at Tue Aug 25 01:51:57 IST 2026
[2026-08-25 01:51:57,288.288 INFO    ] ================================================
[2026-08-25 01:51:57,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:51:57
[2026-08-25 01:51:58,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:51:58,699.699 INFO    ] Initializing speech engine...
[2026-08-25 01:51:58,719.719 INFO    ] 2026-08-25 01:51:58
[2026-08-25 01:51:58,968.968 INFO    ] 2026-08-25 01:51:58
[2026-08-25 01:51:59,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:51:59,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:51:59,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:51:59,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:51:59,411.411 INFO    ] time= 25/08/2026 01:51:59
[2026-08-25 01:51:59,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:51:59,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:51:59,660.660 INFO    ] No existing commands found in stream
[2026-08-25 01:52:04,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:52:04,696.696 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 01:52:06,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:52:06,274.274 INFO    ] Checking for system updates...
[2026-08-25 01:52:06,310.310 INFO    ] 200
[2026-08-25 01:52:06,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:06,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:52:06,373.373 INFO    ] No update needed
[2026-08-25 01:52:06,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 01:52:06,410.410 INFO    ] 200
[2026-08-25 01:52:06,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:06,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:52:06,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:52:06,520.520 INFO    ] No camera update needed
[2026-08-25 01:52:06,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:52:06,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:52:06,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:52:06,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:52:08,593.593 INFO    ] ================================================
[2026-08-25 01:52:08,608.608 INFO    ] Launching Daemon at Tue Aug 25 01:52:08 IST 2026
[2026-08-25 01:52:08,619.619 INFO    ] ================================================
[2026-08-25 01:52:09,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:52:09
[2026-08-25 01:52:09,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:52:10,073.073 INFO    ] Initializing speech engine...
[2026-08-25 01:52:10,082.082 INFO    ] 2026-08-25 01:52:10
[2026-08-25 01:52:10,331.331 INFO    ] 2026-08-25 01:52:10
[2026-08-25 01:52:10,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:52:10,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:52:10,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:52:10,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:52:10,733.733 INFO    ] time= 25/08/2026 01:52:10
[2026-08-25 01:52:10,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:52:10,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:52:10,887.887 INFO    ] No existing commands found in stream
[2026-08-25 01:52:15,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:52:15,920.920 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 01:52:17,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:52:17,835.835 INFO    ] Checking for system updates...
[2026-08-25 01:52:17,872.872 INFO    ] 200
[2026-08-25 01:52:17,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:17,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:52:17,938.938 INFO    ] No update needed
[2026-08-25 01:52:17,941.941 INFO    ] Checking for camera pi updates...
[2026-08-25 01:52:17,980.980 INFO    ] 200
[2026-08-25 01:52:17,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:18,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:52:18,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:52:18,093.093 INFO    ] No camera update needed
[2026-08-25 01:52:18,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:52:18,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:52:18,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:52:18,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:52:20,149.149 INFO    ] ================================================
[2026-08-25 01:52:20,165.165 INFO    ] Launching Daemon at Tue Aug 25 01:52:20 IST 2026
[2026-08-25 01:52:20,176.176 INFO    ] ================================================
[2026-08-25 01:52:20,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:52:20
[2026-08-25 01:52:21,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:52:21,711.711 INFO    ] Initializing speech engine...
[2026-08-25 01:52:21,727.727 INFO    ] 2026-08-25 01:52:21
[2026-08-25 01:52:21,982.982 INFO    ] 2026-08-25 01:52:21
[2026-08-25 01:52:22,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:52:22,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:52:22,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:52:22,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:52:22,469.469 INFO    ] time= 25/08/2026 01:52:22
[2026-08-25 01:52:22,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:52:22,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:52:22,707.707 INFO    ] No existing commands found in stream
[2026-08-25 01:52:27,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:52:27,726.726 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 01:52:30,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:52:30,688.688 INFO    ] Checking for system updates...
[2026-08-25 01:52:30,723.723 INFO    ] 200
[2026-08-25 01:52:30,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:30,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:52:30,789.789 INFO    ] No update needed
[2026-08-25 01:52:30,792.792 INFO    ] Checking for camera pi updates...
[2026-08-25 01:52:30,826.826 INFO    ] 200
[2026-08-25 01:52:30,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:30,868.868 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:52:30,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:52:30,933.933 INFO    ] No camera update needed
[2026-08-25 01:52:30,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:52:30,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:52:30,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:52:30,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:52:32,990.990 INFO    ] ================================================
[2026-08-25 01:52:33,006.006 INFO    ] Launching Daemon at Tue Aug 25 01:52:33 IST 2026
[2026-08-25 01:52:33,017.017 INFO    ] ================================================
[2026-08-25 01:52:33,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:52:33
[2026-08-25 01:52:34,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:52:34,492.492 INFO    ] Initializing speech engine...
[2026-08-25 01:52:34,501.501 INFO    ] 2026-08-25 01:52:34
[2026-08-25 01:52:34,795.795 INFO    ] 2026-08-25 01:52:34
[2026-08-25 01:52:34,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:52:35,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:52:35,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:52:35,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:52:35,175.175 INFO    ] time= 25/08/2026 01:52:35
[2026-08-25 01:52:35,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:52:35,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:52:35,300.300 INFO    ] No existing commands found in stream
[2026-08-25 01:52:40,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:52:40,314.314 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 01:52:40,871.871 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:52:40,873.873 INFO    ] Checking for system updates...
[2026-08-25 01:52:40,909.909 INFO    ] 200
[2026-08-25 01:52:40,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:40,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:52:40,968.968 INFO    ] No update needed
[2026-08-25 01:52:40,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 01:52:41,007.007 INFO    ] 200
[2026-08-25 01:52:41,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:41,049.049 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:52:41,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:52:41,106.106 INFO    ] No camera update needed
[2026-08-25 01:52:41,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:52:41,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:52:41,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:52:41,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:52:43,161.161 INFO    ] ================================================
[2026-08-25 01:52:43,177.177 INFO    ] Launching Daemon at Tue Aug 25 01:52:43 IST 2026
[2026-08-25 01:52:43,188.188 INFO    ] ================================================
[2026-08-25 01:52:43,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:52:43
[2026-08-25 01:52:44,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:52:44,816.816 INFO    ] Initializing speech engine...
[2026-08-25 01:52:44,833.833 INFO    ] 2026-08-25 01:52:44
[2026-08-25 01:52:45,105.105 INFO    ] 2026-08-25 01:52:45
[2026-08-25 01:52:45,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:52:45,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:52:45,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:52:45,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:52:45,588.588 INFO    ] time= 25/08/2026 01:52:45
[2026-08-25 01:52:45,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:52:45,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:52:45,793.793 INFO    ] No existing commands found in stream
[2026-08-25 01:52:50,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:52:50,821.821 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 01:52:54,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:52:54,441.441 INFO    ] Checking for system updates...
[2026-08-25 01:52:54,478.478 INFO    ] 200
[2026-08-25 01:52:54,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:54,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:52:54,542.542 INFO    ] No update needed
[2026-08-25 01:52:54,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 01:52:54,583.583 INFO    ] 200
[2026-08-25 01:52:54,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:52:54,631.631 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:52:54,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:52:54,694.694 INFO    ] No camera update needed
[2026-08-25 01:52:54,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:52:54,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:52:54,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:52:54,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:52:56,753.753 INFO    ] ================================================
[2026-08-25 01:52:56,775.775 INFO    ] Launching Daemon at Tue Aug 25 01:52:56 IST 2026
[2026-08-25 01:52:56,786.786 INFO    ] ================================================
[2026-08-25 01:52:57,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:52:57
[2026-08-25 01:52:57,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:52:58,220.220 INFO    ] Initializing speech engine...
[2026-08-25 01:52:58,243.243 INFO    ] 2026-08-25 01:52:58
[2026-08-25 01:52:58,506.506 INFO    ] 2026-08-25 01:52:58
[2026-08-25 01:52:58,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:52:58,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:52:58,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:52:58,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:52:58,916.916 INFO    ] time= 25/08/2026 01:52:58
[2026-08-25 01:52:58,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:52:58,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:52:59,007.007 INFO    ] No existing commands found in stream
[2026-08-25 01:53:04,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:53:04,045.045 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 01:53:06,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:53:06,646.646 INFO    ] Checking for system updates...
[2026-08-25 01:53:06,682.682 INFO    ] 200
[2026-08-25 01:53:06,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:06,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:53:06,739.739 INFO    ] No update needed
[2026-08-25 01:53:06,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 01:53:06,776.776 INFO    ] 200
[2026-08-25 01:53:06,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:06,821.821 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:53:06,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:53:06,874.874 INFO    ] No camera update needed
[2026-08-25 01:53:06,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:53:06,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:53:06,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:53:06,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:53:08,928.928 INFO    ] ================================================
[2026-08-25 01:53:08,943.943 INFO    ] Launching Daemon at Tue Aug 25 01:53:08 IST 2026
[2026-08-25 01:53:08,954.954 INFO    ] ================================================
[2026-08-25 01:53:09,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:53:09
[2026-08-25 01:53:10,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:53:10,354.354 INFO    ] Initializing speech engine...
[2026-08-25 01:53:10,369.369 INFO    ] 2026-08-25 01:53:10
[2026-08-25 01:53:10,635.635 INFO    ] 2026-08-25 01:53:10
[2026-08-25 01:53:10,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:53:10,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:53:10,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:53:11,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:53:11,011.011 INFO    ] time= 25/08/2026 01:53:11
[2026-08-25 01:53:11,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:53:11,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:53:11,179.179 INFO    ] No existing commands found in stream
[2026-08-25 01:53:16,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:53:16,210.210 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 01:53:17,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:53:17,919.919 INFO    ] Checking for system updates...
[2026-08-25 01:53:17,955.955 INFO    ] 200
[2026-08-25 01:53:17,957.957 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:17,960.960 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 01:53:17,962.962 INFO    ] Checking for camera pi updates...
[2026-08-25 01:53:17,995.995 INFO    ] 200
[2026-08-25 01:53:17,998.998 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:18,000.000 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 01:53:18,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:53:18,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:53:18,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:53:18,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:53:20,057.057 INFO    ] ================================================
[2026-08-25 01:53:20,073.073 INFO    ] Launching Daemon at Tue Aug 25 01:53:20 IST 2026
[2026-08-25 01:53:20,084.084 INFO    ] ================================================
[2026-08-25 01:53:20,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:53:20
[2026-08-25 01:53:21,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:53:21,500.500 INFO    ] Initializing speech engine...
[2026-08-25 01:53:21,506.506 INFO    ] 2026-08-25 01:53:21
[2026-08-25 01:53:21,799.799 INFO    ] 2026-08-25 01:53:21
[2026-08-25 01:53:21,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:53:22,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:53:22,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:53:22,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:53:22,300.300 INFO    ] time= 25/08/2026 01:53:22
[2026-08-25 01:53:22,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:53:22,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:53:22,455.455 INFO    ] No existing commands found in stream
[2026-08-25 01:53:27,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:53:27,493.493 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 01:53:29,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:53:29,510.510 INFO    ] Checking for system updates...
[2026-08-25 01:53:29,549.549 INFO    ] 200
[2026-08-25 01:53:29,552.552 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:29,554.554 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 01:53:29,557.557 INFO    ] Checking for camera pi updates...
[2026-08-25 01:53:29,590.590 INFO    ] 200
[2026-08-25 01:53:29,592.592 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:29,595.595 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 01:53:29,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:53:29,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:53:29,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:53:29,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:53:31,650.650 INFO    ] ================================================
[2026-08-25 01:53:31,665.665 INFO    ] Launching Daemon at Tue Aug 25 01:53:31 IST 2026
[2026-08-25 01:53:31,677.677 INFO    ] ================================================
[2026-08-25 01:53:32,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:53:32
[2026-08-25 01:53:32,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:53:33,173.173 INFO    ] Initializing speech engine...
[2026-08-25 01:53:33,181.181 INFO    ] 2026-08-25 01:53:33
[2026-08-25 01:53:33,452.452 INFO    ] 2026-08-25 01:53:33
[2026-08-25 01:53:33,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:53:33,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:53:33,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:53:33,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:53:33,823.823 INFO    ] time= 25/08/2026 01:53:33
[2026-08-25 01:53:33,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:53:33,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:53:34,014.014 INFO    ] No existing commands found in stream
[2026-08-25 01:53:39,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:53:39,031.031 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 01:53:39,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:53:39,641.641 INFO    ] Checking for system updates...
[2026-08-25 01:53:39,676.676 INFO    ] 200
[2026-08-25 01:53:39,679.679 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:39,681.681 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 01:53:39,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 01:53:39,716.716 INFO    ] 200
[2026-08-25 01:53:39,719.719 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:39,721.721 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 01:53:39,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:53:39,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:53:39,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:53:39,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:53:41,777.777 INFO    ] ================================================
[2026-08-25 01:53:41,793.793 INFO    ] Launching Daemon at Tue Aug 25 01:53:41 IST 2026
[2026-08-25 01:53:41,805.805 INFO    ] ================================================
[2026-08-25 01:53:42,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:53:42
[2026-08-25 01:53:42,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:53:43,241.241 INFO    ] Initializing speech engine...
[2026-08-25 01:53:43,249.249 INFO    ] 2026-08-25 01:53:43
[2026-08-25 01:53:43,505.505 INFO    ] 2026-08-25 01:53:43
[2026-08-25 01:53:43,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:53:43,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:53:43,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:53:43,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:53:43,989.989 INFO    ] time= 25/08/2026 01:53:43
[2026-08-25 01:53:44,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:53:44,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:53:44,200.200 INFO    ] No existing commands found in stream
[2026-08-25 01:53:49,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:53:49,219.219 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 01:53:53,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:53:53,403.403 INFO    ] Checking for system updates...
[2026-08-25 01:53:53,443.443 INFO    ] 200
[2026-08-25 01:53:53,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:53,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:53:53,502.502 INFO    ] No update needed
[2026-08-25 01:53:53,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 01:53:53,543.543 INFO    ] 200
[2026-08-25 01:53:53,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:53:53,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:53:53,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:53:53,643.643 INFO    ] No camera update needed
[2026-08-25 01:53:53,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:53:53,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:53:53,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:53:53,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:53:55,701.701 INFO    ] ================================================
[2026-08-25 01:53:55,718.718 INFO    ] Launching Daemon at Tue Aug 25 01:53:55 IST 2026
[2026-08-25 01:53:55,729.729 INFO    ] ================================================
[2026-08-25 01:53:56,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:53:56
[2026-08-25 01:53:57,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:53:57,327.327 INFO    ] Initializing speech engine...
[2026-08-25 01:53:57,335.335 INFO    ] 2026-08-25 01:53:57
[2026-08-25 01:53:57,608.608 INFO    ] 2026-08-25 01:53:57
[2026-08-25 01:53:57,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:53:57,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:53:57,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:53:58,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:53:58,087.087 INFO    ] time= 25/08/2026 01:53:58
[2026-08-25 01:53:58,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:53:58,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:53:58,294.294 INFO    ] No existing commands found in stream
[2026-08-25 01:54:03,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:54:03,320.320 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 01:54:04,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:54:04,692.692 INFO    ] Checking for system updates...
[2026-08-25 01:54:04,729.729 INFO    ] 200
[2026-08-25 01:54:04,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:04,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:54:04,793.793 INFO    ] No update needed
[2026-08-25 01:54:04,796.796 INFO    ] Checking for camera pi updates...
[2026-08-25 01:54:04,830.830 INFO    ] 200
[2026-08-25 01:54:04,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:04,877.877 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:54:04,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:54:04,935.935 INFO    ] No camera update needed
[2026-08-25 01:54:04,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:54:04,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:54:04,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:54:04,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:54:06,991.991 INFO    ] ================================================
[2026-08-25 01:54:07,007.007 INFO    ] Launching Daemon at Tue Aug 25 01:54:07 IST 2026
[2026-08-25 01:54:07,020.020 INFO    ] ================================================
[2026-08-25 01:54:07,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:54:07
[2026-08-25 01:54:08,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:54:08,620.620 INFO    ] Initializing speech engine...
[2026-08-25 01:54:08,628.628 INFO    ] 2026-08-25 01:54:08
[2026-08-25 01:54:08,911.911 INFO    ] 2026-08-25 01:54:08
[2026-08-25 01:54:08,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:54:09,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:54:09,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:54:09,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:54:09,366.366 INFO    ] time= 25/08/2026 01:54:09
[2026-08-25 01:54:09,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:54:09,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:54:09,606.606 INFO    ] No existing commands found in stream
[2026-08-25 01:54:14,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:54:14,633.633 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 01:54:17,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:54:17,404.404 INFO    ] Checking for system updates...
[2026-08-25 01:54:17,441.441 INFO    ] 200
[2026-08-25 01:54:17,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:17,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:17,504.504 INFO    ] No update needed
[2026-08-25 01:54:17,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 01:54:17,541.541 INFO    ] 200
[2026-08-25 01:54:17,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:17,586.586 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:54:17,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:17,735.735 INFO    ] No camera update needed
[2026-08-25 01:54:17,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:54:17,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:54:17,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:54:17,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:54:19,793.793 INFO    ] ================================================
[2026-08-25 01:54:19,809.809 INFO    ] Launching Daemon at Tue Aug 25 01:54:19 IST 2026
[2026-08-25 01:54:19,819.819 INFO    ] ================================================
[2026-08-25 01:54:20,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:54:20
[2026-08-25 01:54:21,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:54:21,287.287 INFO    ] Initializing speech engine...
[2026-08-25 01:54:21,303.303 INFO    ] 2026-08-25 01:54:21
[2026-08-25 01:54:21,592.592 INFO    ] 2026-08-25 01:54:21
[2026-08-25 01:54:21,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:54:21,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:54:21,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:54:21,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:54:21,973.973 INFO    ] time= 25/08/2026 01:54:21
[2026-08-25 01:54:21,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:54:22,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:54:22,101.101 INFO    ] No existing commands found in stream
[2026-08-25 01:54:27,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:54:27,119.119 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 01:54:29,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:54:29,273.273 INFO    ] Checking for system updates...
[2026-08-25 01:54:29,309.309 INFO    ] 200
[2026-08-25 01:54:29,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:29,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:29,368.368 INFO    ] No update needed
[2026-08-25 01:54:29,370.370 INFO    ] Checking for camera pi updates...
[2026-08-25 01:54:29,405.405 INFO    ] 200
[2026-08-25 01:54:29,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:29,453.453 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:54:29,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:29,516.516 INFO    ] No camera update needed
[2026-08-25 01:54:29,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:54:29,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:54:29,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:54:29,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:54:31,573.573 INFO    ] ================================================
[2026-08-25 01:54:31,589.589 INFO    ] Launching Daemon at Tue Aug 25 01:54:31 IST 2026
[2026-08-25 01:54:31,600.600 INFO    ] ================================================
[2026-08-25 01:54:32,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:54:32
[2026-08-25 01:54:33,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:54:33,344.344 INFO    ] Initializing speech engine...
[2026-08-25 01:54:33,353.353 INFO    ] 2026-08-25 01:54:33
[2026-08-25 01:54:33,611.611 INFO    ] 2026-08-25 01:54:33
[2026-08-25 01:54:33,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:54:33,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:54:33,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:54:34,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:54:34,080.080 INFO    ] time= 25/08/2026 01:54:34
[2026-08-25 01:54:34,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:54:34,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:54:34,304.304 INFO    ] No existing commands found in stream
[2026-08-25 01:54:39,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:54:39,332.332 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 01:54:42,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:54:42,361.361 INFO    ] Checking for system updates...
[2026-08-25 01:54:42,396.396 INFO    ] 200
[2026-08-25 01:54:42,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:42,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:42,453.453 INFO    ] No update needed
[2026-08-25 01:54:42,455.455 INFO    ] Checking for camera pi updates...
[2026-08-25 01:54:42,498.498 INFO    ] 200
[2026-08-25 01:54:42,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:42,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:54:42,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:42,600.600 INFO    ] No camera update needed
[2026-08-25 01:54:42,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:54:42,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:54:42,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:54:42,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:54:44,656.656 INFO    ] ================================================
[2026-08-25 01:54:44,671.671 INFO    ] Launching Daemon at Tue Aug 25 01:54:44 IST 2026
[2026-08-25 01:54:44,682.682 INFO    ] ================================================
[2026-08-25 01:54:45,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:54:45
[2026-08-25 01:54:46,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:54:46,303.303 INFO    ] Initializing speech engine...
[2026-08-25 01:54:46,309.309 INFO    ] 2026-08-25 01:54:46
[2026-08-25 01:54:46,587.587 INFO    ] 2026-08-25 01:54:46
[2026-08-25 01:54:46,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:54:46,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:54:46,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:54:47,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:54:47,081.081 INFO    ] time= 25/08/2026 01:54:47
[2026-08-25 01:54:47,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:54:47,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:54:47,277.277 INFO    ] No existing commands found in stream
[2026-08-25 01:54:52,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:54:52,309.309 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 01:54:53,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:54:53,122.122 INFO    ] Checking for system updates...
[2026-08-25 01:54:53,158.158 INFO    ] 200
[2026-08-25 01:54:53,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:53,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:53,215.215 INFO    ] No update needed
[2026-08-25 01:54:53,217.217 INFO    ] Checking for camera pi updates...
[2026-08-25 01:54:53,251.251 INFO    ] 200
[2026-08-25 01:54:53,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:54:53,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:54:53,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:54:53,343.343 INFO    ] No camera update needed
[2026-08-25 01:54:53,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:54:53,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:54:53,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:54:53,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:54:55,396.396 INFO    ] ================================================
[2026-08-25 01:54:55,411.411 INFO    ] Launching Daemon at Tue Aug 25 01:54:55 IST 2026
[2026-08-25 01:54:55,422.422 INFO    ] ================================================
[2026-08-25 01:54:55,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:54:55
[2026-08-25 01:54:56,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:54:56,846.846 INFO    ] Initializing speech engine...
[2026-08-25 01:54:56,855.855 INFO    ] 2026-08-25 01:54:56
[2026-08-25 01:54:57,104.104 INFO    ] 2026-08-25 01:54:57
[2026-08-25 01:54:57,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:54:57,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:54:57,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:54:57,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:54:57,482.482 INFO    ] time= 25/08/2026 01:54:57
[2026-08-25 01:54:57,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:54:57,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:54:57,679.679 INFO    ] No existing commands found in stream
[2026-08-25 01:55:02,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:55:02,691.691 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 01:55:06,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:55:06,013.013 INFO    ] Checking for system updates...
[2026-08-25 01:55:06,050.050 INFO    ] 200
[2026-08-25 01:55:06,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:06,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:55:06,107.107 INFO    ] No update needed
[2026-08-25 01:55:06,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 01:55:06,147.147 INFO    ] 200
[2026-08-25 01:55:06,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:06,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:55:06,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:55:06,242.242 INFO    ] No camera update needed
[2026-08-25 01:55:06,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:55:06,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:55:06,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:55:06,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:55:08,297.297 INFO    ] ================================================
[2026-08-25 01:55:08,313.313 INFO    ] Launching Daemon at Tue Aug 25 01:55:08 IST 2026
[2026-08-25 01:55:08,323.323 INFO    ] ================================================
[2026-08-25 01:55:08,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:55:08
[2026-08-25 01:55:09,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:55:09,892.892 INFO    ] Initializing speech engine...
[2026-08-25 01:55:09,901.901 INFO    ] 2026-08-25 01:55:09
[2026-08-25 01:55:10,146.146 INFO    ] 2026-08-25 01:55:10
[2026-08-25 01:55:10,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:55:10,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:55:10,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:55:10,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:55:10,621.621 INFO    ] time= 25/08/2026 01:55:10
[2026-08-25 01:55:10,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:55:10,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:55:10,836.836 INFO    ] No existing commands found in stream
[2026-08-25 01:55:15,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:55:15,864.864 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 01:55:16,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:55:16,483.483 INFO    ] Checking for system updates...
[2026-08-25 01:55:16,519.519 INFO    ] 200
[2026-08-25 01:55:16,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:16,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:55:16,575.575 INFO    ] No update needed
[2026-08-25 01:55:16,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 01:55:16,611.611 INFO    ] 200
[2026-08-25 01:55:16,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:16,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:55:16,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:55:16,704.704 INFO    ] No camera update needed
[2026-08-25 01:55:16,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:55:16,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:55:16,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:55:16,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:55:18,758.758 INFO    ] ================================================
[2026-08-25 01:55:18,773.773 INFO    ] Launching Daemon at Tue Aug 25 01:55:18 IST 2026
[2026-08-25 01:55:18,784.784 INFO    ] ================================================
[2026-08-25 01:55:19,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:55:19
[2026-08-25 01:55:19,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:55:20,227.227 INFO    ] Initializing speech engine...
[2026-08-25 01:55:20,242.242 INFO    ] 2026-08-25 01:55:20
[2026-08-25 01:55:20,498.498 INFO    ] 2026-08-25 01:55:20
[2026-08-25 01:55:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:55:20,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:55:20,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:55:20,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:55:20,970.970 INFO    ] time= 25/08/2026 01:55:20
[2026-08-25 01:55:21,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:55:21,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:55:21,200.200 INFO    ] No existing commands found in stream
[2026-08-25 01:55:26,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:55:26,225.225 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 01:55:28,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:55:28,181.181 INFO    ] Checking for system updates...
[2026-08-25 01:55:28,220.220 INFO    ] 200
[2026-08-25 01:55:28,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:28,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:55:28,277.277 INFO    ] No update needed
[2026-08-25 01:55:28,279.279 INFO    ] Checking for camera pi updates...
[2026-08-25 01:55:28,313.313 INFO    ] 200
[2026-08-25 01:55:28,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:28,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:55:28,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:55:28,408.408 INFO    ] No camera update needed
[2026-08-25 01:55:28,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:55:28,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:55:28,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:55:28,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:55:30,464.464 INFO    ] ================================================
[2026-08-25 01:55:30,479.479 INFO    ] Launching Daemon at Tue Aug 25 01:55:30 IST 2026
[2026-08-25 01:55:30,489.489 INFO    ] ================================================
[2026-08-25 01:55:31,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:55:31
[2026-08-25 01:55:31,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:55:32,000.000 INFO    ] Initializing speech engine...
[2026-08-25 01:55:32,018.018 INFO    ] 2026-08-25 01:55:32
[2026-08-25 01:55:32,301.301 INFO    ] 2026-08-25 01:55:32
[2026-08-25 01:55:32,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:55:32,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:55:32,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:55:32,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:55:32,684.684 INFO    ] time= 25/08/2026 01:55:32
[2026-08-25 01:55:32,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:55:32,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:55:32,879.879 INFO    ] No existing commands found in stream
[2026-08-25 01:55:37,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:55:37,908.908 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 01:55:39,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:55:39,043.043 INFO    ] Checking for system updates...
[2026-08-25 01:55:39,079.079 INFO    ] 200
[2026-08-25 01:55:39,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:39,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:55:39,141.141 INFO    ] No update needed
[2026-08-25 01:55:39,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 01:55:39,177.177 INFO    ] 200
[2026-08-25 01:55:39,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:39,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:55:39,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:55:39,279.279 INFO    ] No camera update needed
[2026-08-25 01:55:39,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:55:39,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:55:39,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:55:39,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:55:41,333.333 INFO    ] ================================================
[2026-08-25 01:55:41,348.348 INFO    ] Launching Daemon at Tue Aug 25 01:55:41 IST 2026
[2026-08-25 01:55:41,359.359 INFO    ] ================================================
[2026-08-25 01:55:41,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:55:41
[2026-08-25 01:55:42,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:55:42,775.775 INFO    ] Initializing speech engine...
[2026-08-25 01:55:42,784.784 INFO    ] 2026-08-25 01:55:42
[2026-08-25 01:55:43,044.044 INFO    ] 2026-08-25 01:55:43
[2026-08-25 01:55:43,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:55:43,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:55:43,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:55:43,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:55:43,496.496 INFO    ] time= 25/08/2026 01:55:43
[2026-08-25 01:55:43,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:55:43,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:55:43,736.736 INFO    ] No existing commands found in stream
[2026-08-25 01:55:48,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:55:48,754.754 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 01:55:51,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:55:51,121.121 INFO    ] Checking for system updates...
[2026-08-25 01:55:51,159.159 INFO    ] 200
[2026-08-25 01:55:51,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:51,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:55:51,215.215 INFO    ] No update needed
[2026-08-25 01:55:51,217.217 INFO    ] Checking for camera pi updates...
[2026-08-25 01:55:51,250.250 INFO    ] 200
[2026-08-25 01:55:51,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:55:51,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:55:51,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:55:51,352.352 INFO    ] No camera update needed
[2026-08-25 01:55:51,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:55:51,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:55:51,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:55:51,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:55:53,408.408 INFO    ] ================================================
[2026-08-25 01:55:53,423.423 INFO    ] Launching Daemon at Tue Aug 25 01:55:53 IST 2026
[2026-08-25 01:55:53,433.433 INFO    ] ================================================
[2026-08-25 01:55:54,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:55:54
[2026-08-25 01:55:54,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:55:54,868.868 INFO    ] Initializing speech engine...
[2026-08-25 01:55:54,880.880 INFO    ] 2026-08-25 01:55:54
[2026-08-25 01:55:55,176.176 INFO    ] 2026-08-25 01:55:55
[2026-08-25 01:55:55,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:55:55,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:55:55,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:55:55,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:55:55,650.650 INFO    ] time= 25/08/2026 01:55:55
[2026-08-25 01:55:55,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:55:55,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:55:55,897.897 INFO    ] No existing commands found in stream
[2026-08-25 01:56:00,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:56:00,916.916 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 01:56:05,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:56:05,152.152 INFO    ] Checking for system updates...
[2026-08-25 01:56:05,188.188 INFO    ] 200
[2026-08-25 01:56:05,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:05,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:56:05,244.244 INFO    ] No update needed
[2026-08-25 01:56:05,246.246 INFO    ] Checking for camera pi updates...
[2026-08-25 01:56:05,279.279 INFO    ] 200
[2026-08-25 01:56:05,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:05,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:56:05,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:56:05,372.372 INFO    ] No camera update needed
[2026-08-25 01:56:05,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:56:05,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:56:05,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:56:05,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:56:07,428.428 INFO    ] ================================================
[2026-08-25 01:56:07,443.443 INFO    ] Launching Daemon at Tue Aug 25 01:56:07 IST 2026
[2026-08-25 01:56:07,453.453 INFO    ] ================================================
[2026-08-25 01:56:08,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:56:08
[2026-08-25 01:56:08,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:56:08,932.932 INFO    ] Initializing speech engine...
[2026-08-25 01:56:08,947.947 INFO    ] 2026-08-25 01:56:08
[2026-08-25 01:56:09,200.200 INFO    ] 2026-08-25 01:56:09
[2026-08-25 01:56:09,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:56:09,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:56:09,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:56:09,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:56:09,665.665 INFO    ] time= 25/08/2026 01:56:09
[2026-08-25 01:56:09,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:56:09,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:56:09,925.925 INFO    ] No existing commands found in stream
[2026-08-25 01:56:14,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:56:14,940.940 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 01:56:17,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:56:17,951.951 INFO    ] Checking for system updates...
[2026-08-25 01:56:17,988.988 INFO    ] 200
[2026-08-25 01:56:17,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:18,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:56:18,045.045 INFO    ] No update needed
[2026-08-25 01:56:18,047.047 INFO    ] Checking for camera pi updates...
[2026-08-25 01:56:18,083.083 INFO    ] 200
[2026-08-25 01:56:18,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:18,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:56:18,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:56:18,185.185 INFO    ] No camera update needed
[2026-08-25 01:56:18,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:56:18,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:56:18,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:56:18,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:56:20,242.242 INFO    ] ================================================
[2026-08-25 01:56:20,258.258 INFO    ] Launching Daemon at Tue Aug 25 01:56:20 IST 2026
[2026-08-25 01:56:20,269.269 INFO    ] ================================================
[2026-08-25 01:56:20,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:56:20
[2026-08-25 01:56:21,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:56:21,723.723 INFO    ] Initializing speech engine...
[2026-08-25 01:56:21,734.734 INFO    ] 2026-08-25 01:56:21
[2026-08-25 01:56:21,996.996 INFO    ] 2026-08-25 01:56:21
[2026-08-25 01:56:22,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:56:22,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:56:22,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:56:22,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:56:22,398.398 INFO    ] time= 25/08/2026 01:56:22
[2026-08-25 01:56:22,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:56:22,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:56:22,483.483 INFO    ] No existing commands found in stream
[2026-08-25 01:56:27,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:56:27,516.516 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 01:56:31,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:56:31,590.590 INFO    ] Checking for system updates...
[2026-08-25 01:56:31,626.626 INFO    ] 200
[2026-08-25 01:56:31,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:31,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:56:31,697.697 INFO    ] No update needed
[2026-08-25 01:56:31,700.700 INFO    ] Checking for camera pi updates...
[2026-08-25 01:56:31,740.740 INFO    ] 200
[2026-08-25 01:56:31,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:31,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:56:31,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:56:31,942.942 INFO    ] No camera update needed
[2026-08-25 01:56:31,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:56:31,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:56:31,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:56:31,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:56:34,999.999 INFO    ] ================================================
[2026-08-25 01:56:34,015.015 INFO    ] Launching Daemon at Tue Aug 25 01:56:34 IST 2026
[2026-08-25 01:56:34,027.027 INFO    ] ================================================
[2026-08-25 01:56:34,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:56:34
[2026-08-25 01:56:35,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:56:35,483.483 INFO    ] Initializing speech engine...
[2026-08-25 01:56:35,489.489 INFO    ] 2026-08-25 01:56:35
[2026-08-25 01:56:35,749.749 INFO    ] 2026-08-25 01:56:35
[2026-08-25 01:56:35,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:56:36,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:56:36,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:56:36,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:56:36,211.211 INFO    ] time= 25/08/2026 01:56:36
[2026-08-25 01:56:36,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:56:36,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:56:36,444.444 INFO    ] No existing commands found in stream
[2026-08-25 01:56:41,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:56:41,462.462 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 01:56:45,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:56:45,328.328 INFO    ] Checking for system updates...
[2026-08-25 01:56:45,364.364 INFO    ] 200
[2026-08-25 01:56:45,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:45,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:56:45,423.423 INFO    ] No update needed
[2026-08-25 01:56:45,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 01:56:45,460.460 INFO    ] 200
[2026-08-25 01:56:45,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:45,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:56:45,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:56:45,562.562 INFO    ] No camera update needed
[2026-08-25 01:56:45,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:56:45,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:56:45,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:56:45,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:56:47,620.620 INFO    ] ================================================
[2026-08-25 01:56:47,636.636 INFO    ] Launching Daemon at Tue Aug 25 01:56:47 IST 2026
[2026-08-25 01:56:47,647.647 INFO    ] ================================================
[2026-08-25 01:56:48,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:56:48
[2026-08-25 01:56:48,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:56:49,061.061 INFO    ] Initializing speech engine...
[2026-08-25 01:56:49,074.074 INFO    ] 2026-08-25 01:56:49
[2026-08-25 01:56:49,350.350 INFO    ] 2026-08-25 01:56:49
[2026-08-25 01:56:49,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:56:49,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:56:49,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:56:49,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:56:49,710.710 INFO    ] time= 25/08/2026 01:56:49
[2026-08-25 01:56:49,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:56:49,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:56:49,828.828 INFO    ] No existing commands found in stream
[2026-08-25 01:56:54,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:56:54,843.843 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 01:56:58,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:56:58,139.139 INFO    ] Checking for system updates...
[2026-08-25 01:56:58,175.175 INFO    ] 200
[2026-08-25 01:56:58,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:58,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:56:58,238.238 INFO    ] No update needed
[2026-08-25 01:56:58,241.241 INFO    ] Checking for camera pi updates...
[2026-08-25 01:56:58,279.279 INFO    ] 200
[2026-08-25 01:56:58,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:56:58,326.326 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:56:58,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:56:58,388.388 INFO    ] No camera update needed
[2026-08-25 01:56:58,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:56:58,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:56:58,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:56:58,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:57:00,445.445 INFO    ] ================================================
[2026-08-25 01:57:00,461.461 INFO    ] Launching Daemon at Tue Aug 25 01:57:00 IST 2026
[2026-08-25 01:57:00,471.471 INFO    ] ================================================
[2026-08-25 01:57:01,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:57:01
[2026-08-25 01:57:01,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:57:02,198.198 INFO    ] Initializing speech engine...
[2026-08-25 01:57:02,208.208 INFO    ] 2026-08-25 01:57:02
[2026-08-25 01:57:02,568.568 INFO    ] 2026-08-25 01:57:02
[2026-08-25 01:57:02,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:57:02,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:57:02,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:57:03,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:57:03,047.047 INFO    ] time= 25/08/2026 01:57:03
[2026-08-25 01:57:03,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:57:03,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:57:03,285.285 INFO    ] No existing commands found in stream
[2026-08-25 01:57:08,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:57:08,310.310 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 01:57:09,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:57:09,464.464 INFO    ] Checking for system updates...
[2026-08-25 01:57:09,500.500 INFO    ] 200
[2026-08-25 01:57:09,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:09,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:09,558.558 INFO    ] No update needed
[2026-08-25 01:57:09,560.560 INFO    ] Checking for camera pi updates...
[2026-08-25 01:57:09,597.597 INFO    ] 200
[2026-08-25 01:57:09,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:09,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:57:09,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:09,687.687 INFO    ] No camera update needed
[2026-08-25 01:57:09,689.689 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:57:09,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:57:09,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:57:09,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:57:11,740.740 INFO    ] ================================================
[2026-08-25 01:57:11,756.756 INFO    ] Launching Daemon at Tue Aug 25 01:57:11 IST 2026
[2026-08-25 01:57:11,767.767 INFO    ] ================================================
[2026-08-25 01:57:12,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:57:12
[2026-08-25 01:57:13,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:57:13,377.377 INFO    ] Initializing speech engine...
[2026-08-25 01:57:13,385.385 INFO    ] 2026-08-25 01:57:13
[2026-08-25 01:57:13,658.658 INFO    ] 2026-08-25 01:57:13
[2026-08-25 01:57:13,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:57:13,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:57:13,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:57:14,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:57:14,137.137 INFO    ] time= 25/08/2026 01:57:14
[2026-08-25 01:57:14,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:57:14,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:57:14,360.360 INFO    ] No existing commands found in stream
[2026-08-25 01:57:19,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:57:19,391.391 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 01:57:22,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:57:22,469.469 INFO    ] Checking for system updates...
[2026-08-25 01:57:22,505.505 INFO    ] 200
[2026-08-25 01:57:22,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:22,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:22,564.564 INFO    ] No update needed
[2026-08-25 01:57:22,567.567 INFO    ] Checking for camera pi updates...
[2026-08-25 01:57:22,600.600 INFO    ] 200
[2026-08-25 01:57:22,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:22,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:57:22,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:22,693.693 INFO    ] No camera update needed
[2026-08-25 01:57:22,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:57:22,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:57:22,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:57:22,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:57:24,748.748 INFO    ] ================================================
[2026-08-25 01:57:24,765.765 INFO    ] Launching Daemon at Tue Aug 25 01:57:24 IST 2026
[2026-08-25 01:57:24,776.776 INFO    ] ================================================
[2026-08-25 01:57:25,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:57:25
[2026-08-25 01:57:25,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:57:26,194.194 INFO    ] Initializing speech engine...
[2026-08-25 01:57:26,202.202 INFO    ] 2026-08-25 01:57:26
[2026-08-25 01:57:26,459.459 INFO    ] 2026-08-25 01:57:26
[2026-08-25 01:57:26,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:57:26,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:57:26,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:57:26,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:57:26,914.914 INFO    ] time= 25/08/2026 01:57:26
[2026-08-25 01:57:26,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:57:27,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:57:27,154.154 INFO    ] No existing commands found in stream
[2026-08-25 01:57:32,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:57:32,170.170 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 01:57:32,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:57:32,738.738 INFO    ] Checking for system updates...
[2026-08-25 01:57:32,792.792 INFO    ] 200
[2026-08-25 01:57:32,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:32,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:32,859.859 INFO    ] No update needed
[2026-08-25 01:57:32,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 01:57:32,894.894 INFO    ] 200
[2026-08-25 01:57:32,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:32,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:57:32,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:33,001.001 INFO    ] No camera update needed
[2026-08-25 01:57:33,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:57:33,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:57:33,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:57:33,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:57:35,056.056 INFO    ] ================================================
[2026-08-25 01:57:35,072.072 INFO    ] Launching Daemon at Tue Aug 25 01:57:35 IST 2026
[2026-08-25 01:57:35,083.083 INFO    ] ================================================
[2026-08-25 01:57:35,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:57:35
[2026-08-25 01:57:36,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:57:36,713.713 INFO    ] Initializing speech engine...
[2026-08-25 01:57:36,728.728 INFO    ] 2026-08-25 01:57:36
[2026-08-25 01:57:37,037.037 INFO    ] 2026-08-25 01:57:37
[2026-08-25 01:57:37,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:57:37,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:57:37,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:57:37,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:57:37,546.546 INFO    ] time= 25/08/2026 01:57:37
[2026-08-25 01:57:37,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:57:37,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:57:37,719.719 INFO    ] No existing commands found in stream
[2026-08-25 01:57:42,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:57:42,753.753 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 01:57:44,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:57:44,408.408 INFO    ] Checking for system updates...
[2026-08-25 01:57:44,445.445 INFO    ] 200
[2026-08-25 01:57:44,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:44,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:44,510.510 INFO    ] No update needed
[2026-08-25 01:57:44,512.512 INFO    ] Checking for camera pi updates...
[2026-08-25 01:57:44,547.547 INFO    ] 200
[2026-08-25 01:57:44,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:44,595.595 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:57:44,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:44,647.647 INFO    ] No camera update needed
[2026-08-25 01:57:44,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:57:44,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:57:44,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:57:44,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:57:46,706.706 INFO    ] ================================================
[2026-08-25 01:57:46,721.721 INFO    ] Launching Daemon at Tue Aug 25 01:57:46 IST 2026
[2026-08-25 01:57:46,733.733 INFO    ] ================================================
[2026-08-25 01:57:47,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:57:47
[2026-08-25 01:57:47,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:57:48,145.145 INFO    ] Initializing speech engine...
[2026-08-25 01:57:48,157.157 INFO    ] 2026-08-25 01:57:48
[2026-08-25 01:57:48,421.421 INFO    ] 2026-08-25 01:57:48
[2026-08-25 01:57:48,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:57:48,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:57:48,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:57:48,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:57:48,795.795 INFO    ] time= 25/08/2026 01:57:48
[2026-08-25 01:57:48,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:57:48,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:57:48,917.917 INFO    ] No existing commands found in stream
[2026-08-25 01:57:53,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:57:53,932.932 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 01:57:55,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:57:55,467.467 INFO    ] Checking for system updates...
[2026-08-25 01:57:55,502.502 INFO    ] 200
[2026-08-25 01:57:55,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:55,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:55,559.559 INFO    ] No update needed
[2026-08-25 01:57:55,561.561 INFO    ] Checking for camera pi updates...
[2026-08-25 01:57:55,594.594 INFO    ] 200
[2026-08-25 01:57:55,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:57:55,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:57:55,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:57:55,695.695 INFO    ] No camera update needed
[2026-08-25 01:57:55,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:57:55,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:57:55,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:57:55,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:57:57,751.751 INFO    ] ================================================
[2026-08-25 01:57:57,766.766 INFO    ] Launching Daemon at Tue Aug 25 01:57:57 IST 2026
[2026-08-25 01:57:57,777.777 INFO    ] ================================================
[2026-08-25 01:57:58,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:57:58
[2026-08-25 01:57:59,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:57:59,382.382 INFO    ] Initializing speech engine...
[2026-08-25 01:57:59,396.396 INFO    ] 2026-08-25 01:57:59
[2026-08-25 01:57:59,674.674 INFO    ] 2026-08-25 01:57:59
[2026-08-25 01:57:59,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:57:59,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:57:59,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:58:00,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:58:00,208.208 INFO    ] time= 25/08/2026 01:58:00
[2026-08-25 01:58:00,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:58:00,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:58:00,370.370 INFO    ] No existing commands found in stream
[2026-08-25 01:58:05,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:58:05,400.400 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 01:58:09,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:58:09,157.157 INFO    ] Checking for system updates...
[2026-08-25 01:58:09,193.193 INFO    ] 200
[2026-08-25 01:58:09,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:09,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:58:09,258.258 INFO    ] No update needed
[2026-08-25 01:58:09,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 01:58:09,298.298 INFO    ] 200
[2026-08-25 01:58:09,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:09,342.342 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:58:09,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:58:09,393.393 INFO    ] No camera update needed
[2026-08-25 01:58:09,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:58:09,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:58:09,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:58:09,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:58:11,450.450 INFO    ] ================================================
[2026-08-25 01:58:11,466.466 INFO    ] Launching Daemon at Tue Aug 25 01:58:11 IST 2026
[2026-08-25 01:58:11,476.476 INFO    ] ================================================
[2026-08-25 01:58:12,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:58:12
[2026-08-25 01:58:12,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:58:13,079.079 INFO    ] Initializing speech engine...
[2026-08-25 01:58:13,091.091 INFO    ] 2026-08-25 01:58:13
[2026-08-25 01:58:13,376.376 INFO    ] 2026-08-25 01:58:13
[2026-08-25 01:58:13,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:58:13,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:58:13,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:58:13,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:58:13,835.835 INFO    ] time= 25/08/2026 01:58:13
[2026-08-25 01:58:13,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:58:13,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:58:14,034.034 INFO    ] No existing commands found in stream
[2026-08-25 01:58:19,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:58:19,069.069 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 01:58:20,934.934 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:58:20,937.937 INFO    ] Checking for system updates...
[2026-08-25 01:58:20,973.973 INFO    ] 200
[2026-08-25 01:58:20,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:21,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:21,033.033 INFO    ] No update needed
[2026-08-25 01:58:21,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 01:58:21,070.070 INFO    ] 200
[2026-08-25 01:58:21,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:21,115.115 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:58:21,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:21,166.166 INFO    ] No camera update needed
[2026-08-25 01:58:21,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:58:21,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:58:21,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:58:21,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:58:23,225.225 INFO    ] ================================================
[2026-08-25 01:58:23,241.241 INFO    ] Launching Daemon at Tue Aug 25 01:58:23 IST 2026
[2026-08-25 01:58:23,253.253 INFO    ] ================================================
[2026-08-25 01:58:23,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:58:23
[2026-08-25 01:58:24,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:58:24,672.672 INFO    ] Initializing speech engine...
[2026-08-25 01:58:24,690.690 INFO    ] 2026-08-25 01:58:24
[2026-08-25 01:58:24,941.941 INFO    ] 2026-08-25 01:58:24
[2026-08-25 01:58:24,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:58:25,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:58:25,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:58:25,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:58:25,382.382 INFO    ] time= 25/08/2026 01:58:25
[2026-08-25 01:58:25,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:58:25,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:58:25,556.556 INFO    ] No existing commands found in stream
[2026-08-25 01:58:30,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:58:30,575.575 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 01:58:34,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 01:58:34,205.205 INFO    ] Checking for system updates...
[2026-08-25 01:58:34,244.244 INFO    ] 200
[2026-08-25 01:58:34,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:34,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:34,301.301 INFO    ] No update needed
[2026-08-25 01:58:34,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 01:58:34,337.337 INFO    ] 200
[2026-08-25 01:58:34,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:34,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:58:34,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:34,537.537 INFO    ] No camera update needed
[2026-08-25 01:58:34,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:58:34,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:58:34,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:58:34,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:58:36,593.593 INFO    ] ================================================
[2026-08-25 01:58:36,608.608 INFO    ] Launching Daemon at Tue Aug 25 01:58:36 IST 2026
[2026-08-25 01:58:36,619.619 INFO    ] ================================================
[2026-08-25 01:58:37,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:58:37
[2026-08-25 01:58:37,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:58:38,157.157 INFO    ] Initializing speech engine...
[2026-08-25 01:58:38,171.171 INFO    ] 2026-08-25 01:58:38
[2026-08-25 01:58:38,478.478 INFO    ] 2026-08-25 01:58:38
[2026-08-25 01:58:38,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:58:38,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:58:38,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:58:38,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:58:38,915.915 INFO    ] time= 25/08/2026 01:58:38
[2026-08-25 01:58:38,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:58:38,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:58:39,109.109 INFO    ] No existing commands found in stream
[2026-08-25 01:58:44,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:58:44,143.143 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 01:58:47,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 01:58:47,173.173 INFO    ] Checking for system updates...
[2026-08-25 01:58:47,212.212 INFO    ] 200
[2026-08-25 01:58:47,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:47,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:47,269.269 INFO    ] No update needed
[2026-08-25 01:58:47,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 01:58:47,306.306 INFO    ] 200
[2026-08-25 01:58:47,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:47,353.353 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:58:47,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:47,406.406 INFO    ] No camera update needed
[2026-08-25 01:58:47,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:58:47,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:58:47,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:58:47,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:58:49,461.461 INFO    ] ================================================
[2026-08-25 01:58:49,477.477 INFO    ] Launching Daemon at Tue Aug 25 01:58:49 IST 2026
[2026-08-25 01:58:49,488.488 INFO    ] ================================================
[2026-08-25 01:58:50,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:58:50
[2026-08-25 01:58:50,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:58:50,915.915 INFO    ] Initializing speech engine...
[2026-08-25 01:58:50,927.927 INFO    ] 2026-08-25 01:58:50
[2026-08-25 01:58:51,182.182 INFO    ] 2026-08-25 01:58:51
[2026-08-25 01:58:51,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:58:51,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:58:51,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:58:51,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:58:51,675.675 INFO    ] time= 25/08/2026 01:58:51
[2026-08-25 01:58:51,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:58:51,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:58:51,904.904 INFO    ] No existing commands found in stream
[2026-08-25 01:58:56,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:58:56,931.931 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 01:58:59,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 01:58:59,769.769 INFO    ] Checking for system updates...
[2026-08-25 01:58:59,805.805 INFO    ] 200
[2026-08-25 01:58:59,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:59,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:59,862.862 INFO    ] No update needed
[2026-08-25 01:58:59,864.864 INFO    ] Checking for camera pi updates...
[2026-08-25 01:58:59,898.898 INFO    ] 200
[2026-08-25 01:58:59,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:58:59,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:58:59,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:58:59,987.987 INFO    ] No camera update needed
[2026-08-25 01:58:59,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:58:59,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:58:59,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:59:00,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:59:02,043.043 INFO    ] ================================================
[2026-08-25 01:59:02,064.064 INFO    ] Launching Daemon at Tue Aug 25 01:59:02 IST 2026
[2026-08-25 01:59:02,079.079 INFO    ] ================================================
[2026-08-25 01:59:02,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:59:02
[2026-08-25 01:59:03,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:59:03,642.642 INFO    ] Initializing speech engine...
[2026-08-25 01:59:03,650.650 INFO    ] 2026-08-25 01:59:03
[2026-08-25 01:59:03,902.902 INFO    ] 2026-08-25 01:59:03
[2026-08-25 01:59:03,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:59:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:59:04,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:59:04,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:59:04,279.279 INFO    ] time= 25/08/2026 01:59:04
[2026-08-25 01:59:04,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:59:04,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:59:04,358.358 INFO    ] No existing commands found in stream
[2026-08-25 01:59:09,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:59:09,391.391 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 01:59:10,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 01:59:10,247.247 INFO    ] Checking for system updates...
[2026-08-25 01:59:10,282.282 INFO    ] 200
[2026-08-25 01:59:10,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:10,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:59:10,346.346 INFO    ] No update needed
[2026-08-25 01:59:10,348.348 INFO    ] Checking for camera pi updates...
[2026-08-25 01:59:10,385.385 INFO    ] 200
[2026-08-25 01:59:10,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:10,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:59:10,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 01:59:10,484.484 INFO    ] No camera update needed
[2026-08-25 01:59:10,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:59:10,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:59:10,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:59:10,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:59:12,538.538 INFO    ] ================================================
[2026-08-25 01:59:12,554.554 INFO    ] Launching Daemon at Tue Aug 25 01:59:12 IST 2026
[2026-08-25 01:59:12,566.566 INFO    ] ================================================
[2026-08-25 01:59:13,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:59:13
[2026-08-25 01:59:13,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:59:14,027.027 INFO    ] Initializing speech engine...
[2026-08-25 01:59:14,036.036 INFO    ] 2026-08-25 01:59:14
[2026-08-25 01:59:14,299.299 INFO    ] 2026-08-25 01:59:14
[2026-08-25 01:59:14,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:59:14,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:59:14,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:59:14,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:59:14,767.767 INFO    ] time= 25/08/2026 01:59:14
[2026-08-25 01:59:14,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:59:14,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:59:14,984.984 INFO    ] No existing commands found in stream
[2026-08-25 01:59:20,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:59:20,006.006 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 01:59:22,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 01:59:22,244.244 INFO    ] Checking for system updates...
[2026-08-25 01:59:22,303.303 INFO    ] 200
[2026-08-25 01:59:22,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:22,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:59:22,377.377 INFO    ] No update needed
[2026-08-25 01:59:22,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 01:59:22,441.441 INFO    ] 200
[2026-08-25 01:59:22,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:22,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:59:22,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:59:22,537.537 INFO    ] No camera update needed
[2026-08-25 01:59:22,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:59:22,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:59:22,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:59:22,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:59:24,593.593 INFO    ] ================================================
[2026-08-25 01:59:24,609.609 INFO    ] Launching Daemon at Tue Aug 25 01:59:24 IST 2026
[2026-08-25 01:59:24,620.620 INFO    ] ================================================
[2026-08-25 01:59:25,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:59:25
[2026-08-25 01:59:25,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:59:26,072.072 INFO    ] Initializing speech engine...
[2026-08-25 01:59:26,081.081 INFO    ] 2026-08-25 01:59:26
[2026-08-25 01:59:26,383.383 INFO    ] 2026-08-25 01:59:26
[2026-08-25 01:59:26,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:59:26,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:59:26,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:59:26,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:59:26,865.865 INFO    ] time= 25/08/2026 01:59:26
[2026-08-25 01:59:26,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:59:26,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:59:27,100.100 INFO    ] No existing commands found in stream
[2026-08-25 01:59:32,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:59:32,134.134 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 01:59:35,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:59:35,905.905 INFO    ] Checking for system updates...
[2026-08-25 01:59:35,944.944 INFO    ] 200
[2026-08-25 01:59:35,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:36,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:59:36,007.007 INFO    ] No update needed
[2026-08-25 01:59:36,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 01:59:36,047.047 INFO    ] 200
[2026-08-25 01:59:36,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:36,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:59:36,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:59:36,131.131 INFO    ] No camera update needed
[2026-08-25 01:59:36,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:59:36,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:59:36,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:59:36,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:59:38,186.186 INFO    ] ================================================
[2026-08-25 01:59:38,201.201 INFO    ] Launching Daemon at Tue Aug 25 01:59:38 IST 2026
[2026-08-25 01:59:38,213.213 INFO    ] ================================================
[2026-08-25 01:59:38,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:59:38
[2026-08-25 01:59:39,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:59:39,703.703 INFO    ] Initializing speech engine...
[2026-08-25 01:59:39,713.713 INFO    ] 2026-08-25 01:59:39
[2026-08-25 01:59:39,961.961 INFO    ] 2026-08-25 01:59:39
[2026-08-25 01:59:39,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:59:40,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:59:40,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:59:40,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:59:40,433.433 INFO    ] time= 25/08/2026 01:59:40
[2026-08-25 01:59:40,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:59:40,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:59:40,668.668 INFO    ] No existing commands found in stream
[2026-08-25 01:59:45,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:59:45,687.687 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 01:59:48,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 01:59:48,255.255 INFO    ] Checking for system updates...
[2026-08-25 01:59:48,290.290 INFO    ] 200
[2026-08-25 01:59:48,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:48,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:59:48,348.348 INFO    ] No update needed
[2026-08-25 01:59:48,350.350 INFO    ] Checking for camera pi updates...
[2026-08-25 01:59:48,383.383 INFO    ] 200
[2026-08-25 01:59:48,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 01:59:48,430.430 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 01:59:48,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 01:59:48,478.478 INFO    ] No camera update needed
[2026-08-25 01:59:48,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-25 01:59:48,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 01:59:48,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 01:59:48,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 01:59:50,533.533 INFO    ] ================================================
[2026-08-25 01:59:50,548.548 INFO    ] Launching Daemon at Tue Aug 25 01:59:50 IST 2026
[2026-08-25 01:59:50,559.559 INFO    ] ================================================
[2026-08-25 01:59:51,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 01:59:51
[2026-08-25 01:59:51,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 01:59:51,977.977 INFO    ] Initializing speech engine...
[2026-08-25 01:59:51,987.987 INFO    ] 2026-08-25 01:59:51
[2026-08-25 01:59:52,232.232 INFO    ] 2026-08-25 01:59:52
[2026-08-25 01:59:52,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 01:59:52,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 01:59:52,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 01:59:52,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 01:59:52,609.609 INFO    ] time= 25/08/2026 01:59:52
[2026-08-25 01:59:52,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 01:59:52,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 01:59:52,800.800 INFO    ] No existing commands found in stream
[2026-08-25 01:59:57,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 01:59:57,818.818 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 02:00:02,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:00:02,127.127 INFO    ] Checking for system updates...
[2026-08-25 02:00:02,308.308 INFO    ] 200
[2026-08-25 02:00:02,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:02,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:02,549.549 INFO    ] No update needed
[2026-08-25 02:00:02,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 02:00:02,806.806 INFO    ] 200
[2026-08-25 02:00:02,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:03,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:00:03,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:03,394.394 INFO    ] No camera update needed
[2026-08-25 02:00:03,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:00:03,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:00:03,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:00:03,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:00:05,592.592 INFO    ] ================================================
[2026-08-25 02:00:05,664.664 INFO    ] Launching Daemon at Tue Aug 25 02:00:05 IST 2026
[2026-08-25 02:00:05,698.698 INFO    ] ================================================
[2026-08-25 02:00:06,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:00:06
[2026-08-25 02:00:07,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:00:07,307.307 INFO    ] Initializing speech engine...
[2026-08-25 02:00:07,313.313 INFO    ] 2026-08-25 02:00:07
[2026-08-25 02:00:07,576.576 INFO    ] 2026-08-25 02:00:07
[2026-08-25 02:00:07,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:00:07,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:00:07,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:00:08,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:00:08,059.059 INFO    ] time= 25/08/2026 02:00:08
[2026-08-25 02:00:08,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:00:08,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:00:08,330.330 INFO    ] No existing commands found in stream
[2026-08-25 02:00:13,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:00:13,355.355 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 02:00:16,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:00:16,858.858 INFO    ] Checking for system updates...
[2026-08-25 02:00:16,894.894 INFO    ] 200
[2026-08-25 02:00:16,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:16,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:16,953.953 INFO    ] No update needed
[2026-08-25 02:00:16,956.956 INFO    ] Checking for camera pi updates...
[2026-08-25 02:00:16,993.993 INFO    ] 200
[2026-08-25 02:00:16,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:17,038.038 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:00:17,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:17,089.089 INFO    ] No camera update needed
[2026-08-25 02:00:17,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:00:17,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:00:17,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:00:17,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:00:19,145.145 INFO    ] ================================================
[2026-08-25 02:00:19,160.160 INFO    ] Launching Daemon at Tue Aug 25 02:00:19 IST 2026
[2026-08-25 02:00:19,171.171 INFO    ] ================================================
[2026-08-25 02:00:19,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:00:19
[2026-08-25 02:00:20,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:00:20,594.594 INFO    ] Initializing speech engine...
[2026-08-25 02:00:20,603.603 INFO    ] 2026-08-25 02:00:20
[2026-08-25 02:00:20,859.859 INFO    ] 2026-08-25 02:00:20
[2026-08-25 02:00:20,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:00:21,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:00:21,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:00:21,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:00:21,305.305 INFO    ] time= 25/08/2026 02:00:21
[2026-08-25 02:00:21,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:00:21,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:00:21,541.541 INFO    ] No existing commands found in stream
[2026-08-25 02:00:26,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:00:26,569.569 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 02:00:30,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:00:30,354.354 INFO    ] Checking for system updates...
[2026-08-25 02:00:30,389.389 INFO    ] 200
[2026-08-25 02:00:30,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:30,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:30,454.454 INFO    ] No update needed
[2026-08-25 02:00:30,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 02:00:30,490.490 INFO    ] 200
[2026-08-25 02:00:30,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:30,533.533 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:00:30,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:30,581.581 INFO    ] No camera update needed
[2026-08-25 02:00:30,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:00:30,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:00:30,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:00:30,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:00:32,637.637 INFO    ] ================================================
[2026-08-25 02:00:32,653.653 INFO    ] Launching Daemon at Tue Aug 25 02:00:32 IST 2026
[2026-08-25 02:00:32,665.665 INFO    ] ================================================
[2026-08-25 02:00:33,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:00:33
[2026-08-25 02:00:34,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:00:34,335.335 INFO    ] Initializing speech engine...
[2026-08-25 02:00:34,347.347 INFO    ] 2026-08-25 02:00:34
[2026-08-25 02:00:34,622.622 INFO    ] 2026-08-25 02:00:34
[2026-08-25 02:00:34,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:00:34,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:00:34,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:00:35,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:00:35,106.106 INFO    ] time= 25/08/2026 02:00:35
[2026-08-25 02:00:35,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:00:35,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:00:35,338.338 INFO    ] No existing commands found in stream
[2026-08-25 02:00:40,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:00:40,364.364 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 02:00:43,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:00:43,639.639 INFO    ] Checking for system updates...
[2026-08-25 02:00:43,675.675 INFO    ] 200
[2026-08-25 02:00:43,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:43,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:43,732.732 INFO    ] No update needed
[2026-08-25 02:00:43,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 02:00:43,771.771 INFO    ] 200
[2026-08-25 02:00:43,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:43,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:00:43,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:00:43,973.973 INFO    ] No camera update needed
[2026-08-25 02:00:43,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:00:43,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:00:43,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:00:43,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:00:46,029.029 INFO    ] ================================================
[2026-08-25 02:00:46,043.043 INFO    ] Launching Daemon at Tue Aug 25 02:00:46 IST 2026
[2026-08-25 02:00:46,054.054 INFO    ] ================================================
[2026-08-25 02:00:46,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:00:46
[2026-08-25 02:00:47,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:00:47,482.482 INFO    ] Initializing speech engine...
[2026-08-25 02:00:47,491.491 INFO    ] 2026-08-25 02:00:47
[2026-08-25 02:00:47,742.742 INFO    ] 2026-08-25 02:00:47
[2026-08-25 02:00:47,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:00:47,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:00:48,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:00:48,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:00:48,198.198 INFO    ] time= 25/08/2026 02:00:48
[2026-08-25 02:00:48,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:00:48,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:00:48,450.450 INFO    ] No existing commands found in stream
[2026-08-25 02:00:53,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:00:53,480.480 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 02:00:56,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:00:56,174.174 INFO    ] Checking for system updates...
[2026-08-25 02:00:56,214.214 INFO    ] 200
[2026-08-25 02:00:56,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:56,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:00:56,270.270 INFO    ] No update needed
[2026-08-25 02:00:56,273.273 INFO    ] Checking for camera pi updates...
[2026-08-25 02:00:56,307.307 INFO    ] 200
[2026-08-25 02:00:56,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:00:56,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:00:56,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:00:56,395.395 INFO    ] No camera update needed
[2026-08-25 02:00:56,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:00:56,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:00:56,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:00:56,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:00:58,458.458 INFO    ] ================================================
[2026-08-25 02:00:58,477.477 INFO    ] Launching Daemon at Tue Aug 25 02:00:58 IST 2026
[2026-08-25 02:00:58,489.489 INFO    ] ================================================
[2026-08-25 02:00:59,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:00:59
[2026-08-25 02:00:59,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:00:59,950.950 INFO    ] Initializing speech engine...
[2026-08-25 02:00:59,957.957 INFO    ] 2026-08-25 02:00:59
[2026-08-25 02:01:00,222.222 INFO    ] 2026-08-25 02:01:00
[2026-08-25 02:01:00,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:01:00,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:01:00,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:01:00,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:01:00,713.713 INFO    ] time= 25/08/2026 02:01:00
[2026-08-25 02:01:00,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:01:00,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:01:00,924.924 INFO    ] No existing commands found in stream
[2026-08-25 02:01:05,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:01:05,958.958 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 02:01:10,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:01:10,360.360 INFO    ] Checking for system updates...
[2026-08-25 02:01:10,399.399 INFO    ] 200
[2026-08-25 02:01:10,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:10,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:01:10,457.457 INFO    ] No update needed
[2026-08-25 02:01:10,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 02:01:10,493.493 INFO    ] 200
[2026-08-25 02:01:10,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:10,536.536 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:01:10,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:01:10,587.587 INFO    ] No camera update needed
[2026-08-25 02:01:10,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:01:10,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:01:10,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:01:10,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:01:12,642.642 INFO    ] ================================================
[2026-08-25 02:01:12,657.657 INFO    ] Launching Daemon at Tue Aug 25 02:01:12 IST 2026
[2026-08-25 02:01:12,667.667 INFO    ] ================================================
[2026-08-25 02:01:13,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:01:13
[2026-08-25 02:01:13,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:01:14,119.119 INFO    ] Initializing speech engine...
[2026-08-25 02:01:14,128.128 INFO    ] 2026-08-25 02:01:14
[2026-08-25 02:01:14,401.401 INFO    ] 2026-08-25 02:01:14
[2026-08-25 02:01:14,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:01:14,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:01:14,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:01:14,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:01:14,932.932 INFO    ] time= 25/08/2026 02:01:14
[2026-08-25 02:01:14,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:01:14,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:01:15,075.075 INFO    ] No existing commands found in stream
[2026-08-25 02:01:20,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:01:20,097.097 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 02:01:23,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:01:23,568.568 INFO    ] Checking for system updates...
[2026-08-25 02:01:23,603.603 INFO    ] 200
[2026-08-25 02:01:23,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:23,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:01:23,668.668 INFO    ] No update needed
[2026-08-25 02:01:23,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 02:01:23,708.708 INFO    ] 200
[2026-08-25 02:01:23,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:23,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:01:23,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:01:23,798.798 INFO    ] No camera update needed
[2026-08-25 02:01:23,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:01:23,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:01:23,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:01:23,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:01:25,858.858 INFO    ] ================================================
[2026-08-25 02:01:25,873.873 INFO    ] Launching Daemon at Tue Aug 25 02:01:25 IST 2026
[2026-08-25 02:01:25,883.883 INFO    ] ================================================
[2026-08-25 02:01:26,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:01:26
[2026-08-25 02:01:27,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:01:27,334.334 INFO    ] Initializing speech engine...
[2026-08-25 02:01:27,343.343 INFO    ] 2026-08-25 02:01:27
[2026-08-25 02:01:27,592.592 INFO    ] 2026-08-25 02:01:27
[2026-08-25 02:01:27,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:01:27,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:01:27,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:01:28,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:01:28,078.078 INFO    ] time= 25/08/2026 02:01:28
[2026-08-25 02:01:28,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:01:28,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:01:28,304.304 INFO    ] No existing commands found in stream
[2026-08-25 02:01:33,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:01:33,322.322 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 02:01:36,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:01:36,062.062 INFO    ] Checking for system updates...
[2026-08-25 02:01:36,100.100 INFO    ] 200
[2026-08-25 02:01:36,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:36,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:01:36,158.158 INFO    ] No update needed
[2026-08-25 02:01:36,160.160 INFO    ] Checking for camera pi updates...
[2026-08-25 02:01:36,198.198 INFO    ] 200
[2026-08-25 02:01:36,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:36,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:01:36,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:01:36,293.293 INFO    ] No camera update needed
[2026-08-25 02:01:36,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:01:36,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:01:36,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:01:36,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:01:38,350.350 INFO    ] ================================================
[2026-08-25 02:01:38,364.364 INFO    ] Launching Daemon at Tue Aug 25 02:01:38 IST 2026
[2026-08-25 02:01:38,375.375 INFO    ] ================================================
[2026-08-25 02:01:38,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:01:38
[2026-08-25 02:01:39,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:01:39,895.895 INFO    ] Initializing speech engine...
[2026-08-25 02:01:39,901.901 INFO    ] 2026-08-25 02:01:39
[2026-08-25 02:01:40,168.168 INFO    ] 2026-08-25 02:01:40
[2026-08-25 02:01:40,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:01:40,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:01:40,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:01:40,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:01:40,660.660 INFO    ] time= 25/08/2026 02:01:40
[2026-08-25 02:01:40,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:01:40,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:01:40,900.900 INFO    ] No existing commands found in stream
[2026-08-25 02:01:45,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:01:45,928.928 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 02:01:48,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:01:48,786.786 INFO    ] Checking for system updates...
[2026-08-25 02:01:48,823.823 INFO    ] 200
[2026-08-25 02:01:48,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:48,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:01:48,888.888 INFO    ] No update needed
[2026-08-25 02:01:48,891.891 INFO    ] Checking for camera pi updates...
[2026-08-25 02:01:48,926.926 INFO    ] 200
[2026-08-25 02:01:48,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:01:48,975.975 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:01:49,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:01:49,034.034 INFO    ] No camera update needed
[2026-08-25 02:01:49,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:01:49,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:01:49,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:01:49,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:01:51,093.093 INFO    ] ================================================
[2026-08-25 02:01:51,110.110 INFO    ] Launching Daemon at Tue Aug 25 02:01:51 IST 2026
[2026-08-25 02:01:51,121.121 INFO    ] ================================================
[2026-08-25 02:01:51,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:01:51
[2026-08-25 02:01:52,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:01:52,528.528 INFO    ] Initializing speech engine...
[2026-08-25 02:01:52,540.540 INFO    ] 2026-08-25 02:01:52
[2026-08-25 02:01:52,807.807 INFO    ] 2026-08-25 02:01:52
[2026-08-25 02:01:52,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:01:53,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:01:53,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:01:53,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:01:53,283.283 INFO    ] time= 25/08/2026 02:01:53
[2026-08-25 02:01:53,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:01:53,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:01:53,505.505 INFO    ] No existing commands found in stream
[2026-08-25 02:01:58,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:01:58,538.538 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 02:02:00,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:02:00,729.729 INFO    ] Checking for system updates...
[2026-08-25 02:02:00,766.766 INFO    ] 200
[2026-08-25 02:02:00,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:00,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:02:00,824.824 INFO    ] No update needed
[2026-08-25 02:02:00,827.827 INFO    ] Checking for camera pi updates...
[2026-08-25 02:02:00,866.866 INFO    ] 200
[2026-08-25 02:02:00,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:00,920.920 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:02:00,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:02:00,970.970 INFO    ] No camera update needed
[2026-08-25 02:02:00,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:02:00,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:02:00,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:02:00,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:02:03,034.034 INFO    ] ================================================
[2026-08-25 02:02:03,051.051 INFO    ] Launching Daemon at Tue Aug 25 02:02:03 IST 2026
[2026-08-25 02:02:03,063.063 INFO    ] ================================================
[2026-08-25 02:02:03,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:02:03
[2026-08-25 02:02:04,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:02:04,704.704 INFO    ] Initializing speech engine...
[2026-08-25 02:02:04,716.716 INFO    ] 2026-08-25 02:02:04
[2026-08-25 02:02:05,024.024 INFO    ] 2026-08-25 02:02:04
[2026-08-25 02:02:05,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:02:05,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:02:05,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:02:05,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:02:05,532.532 INFO    ] time= 25/08/2026 02:02:05
[2026-08-25 02:02:05,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:02:05,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:02:05,737.737 INFO    ] No existing commands found in stream
[2026-08-25 02:02:10,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:02:10,770.770 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 02:02:14,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:02:14,683.683 INFO    ] Checking for system updates...
[2026-08-25 02:02:14,718.718 INFO    ] 200
[2026-08-25 02:02:14,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:14,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:02:14,782.782 INFO    ] No update needed
[2026-08-25 02:02:14,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 02:02:14,817.817 INFO    ] 200
[2026-08-25 02:02:14,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:14,860.860 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:02:14,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:02:14,910.910 INFO    ] No camera update needed
[2026-08-25 02:02:14,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:02:14,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:02:14,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:02:14,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:02:16,964.964 INFO    ] ================================================
[2026-08-25 02:02:16,979.979 INFO    ] Launching Daemon at Tue Aug 25 02:02:16 IST 2026
[2026-08-25 02:02:16,989.989 INFO    ] ================================================
[2026-08-25 02:02:17,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:02:17
[2026-08-25 02:02:18,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:02:18,508.508 INFO    ] Initializing speech engine...
[2026-08-25 02:02:18,522.522 INFO    ] 2026-08-25 02:02:18
[2026-08-25 02:02:18,821.821 INFO    ] 2026-08-25 02:02:18
[2026-08-25 02:02:18,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:02:19,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:02:19,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:02:19,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:02:19,359.359 INFO    ] time= 25/08/2026 02:02:19
[2026-08-25 02:02:19,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:02:19,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:02:19,496.496 INFO    ] No existing commands found in stream
[2026-08-25 02:02:24,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:02:24,591.591 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 02:02:27,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:02:27,054.054 INFO    ] Checking for system updates...
[2026-08-25 02:02:27,090.090 INFO    ] 200
[2026-08-25 02:02:27,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:27,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:02:27,148.148 INFO    ] No update needed
[2026-08-25 02:02:27,150.150 INFO    ] Checking for camera pi updates...
[2026-08-25 02:02:27,183.183 INFO    ] 200
[2026-08-25 02:02:27,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:27,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:02:27,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:02:27,276.276 INFO    ] No camera update needed
[2026-08-25 02:02:27,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:02:27,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:02:27,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:02:27,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:02:29,330.330 INFO    ] ================================================
[2026-08-25 02:02:29,346.346 INFO    ] Launching Daemon at Tue Aug 25 02:02:29 IST 2026
[2026-08-25 02:02:29,357.357 INFO    ] ================================================
[2026-08-25 02:02:29,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:02:29
[2026-08-25 02:02:30,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:02:30,850.850 INFO    ] Initializing speech engine...
[2026-08-25 02:02:30,859.859 INFO    ] 2026-08-25 02:02:30
[2026-08-25 02:02:31,131.131 INFO    ] 2026-08-25 02:02:31
[2026-08-25 02:02:31,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:02:31,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:02:31,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:02:31,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:02:31,639.639 INFO    ] time= 25/08/2026 02:02:31
[2026-08-25 02:02:31,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:02:31,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:02:31,852.852 INFO    ] No existing commands found in stream
[2026-08-25 02:02:36,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:02:36,888.888 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 02:02:37,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:02:37,398.398 INFO    ] Checking for system updates...
[2026-08-25 02:02:37,441.441 INFO    ] 200
[2026-08-25 02:02:37,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:37,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:02:37,504.504 INFO    ] No update needed
[2026-08-25 02:02:37,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 02:02:37,541.541 INFO    ] 200
[2026-08-25 02:02:37,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:37,591.591 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:02:37,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:02:37,644.644 INFO    ] No camera update needed
[2026-08-25 02:02:37,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:02:37,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:02:37,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:02:37,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:02:39,702.702 INFO    ] ================================================
[2026-08-25 02:02:39,718.718 INFO    ] Launching Daemon at Tue Aug 25 02:02:39 IST 2026
[2026-08-25 02:02:39,729.729 INFO    ] ================================================
[2026-08-25 02:02:40,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:02:40
[2026-08-25 02:02:40,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:02:41,150.150 INFO    ] Initializing speech engine...
[2026-08-25 02:02:41,164.164 INFO    ] 2026-08-25 02:02:41
[2026-08-25 02:02:41,455.455 INFO    ] 2026-08-25 02:02:41
[2026-08-25 02:02:41,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:02:41,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:02:41,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:02:41,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:02:41,853.853 INFO    ] time= 25/08/2026 02:02:41
[2026-08-25 02:02:41,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:02:41,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:02:41,946.946 INFO    ] No existing commands found in stream
[2026-08-25 02:02:46,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:02:46,984.984 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 02:02:48,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:02:48,088.088 INFO    ] Checking for system updates...
[2026-08-25 02:02:48,127.127 INFO    ] 200
[2026-08-25 02:02:48,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:48,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:02:48,185.185 INFO    ] No update needed
[2026-08-25 02:02:48,187.187 INFO    ] Checking for camera pi updates...
[2026-08-25 02:02:48,221.221 INFO    ] 200
[2026-08-25 02:02:48,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:48,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:02:48,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:02:48,408.408 INFO    ] No camera update needed
[2026-08-25 02:02:48,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:02:48,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:02:48,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:02:48,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:02:50,462.462 INFO    ] ================================================
[2026-08-25 02:02:50,477.477 INFO    ] Launching Daemon at Tue Aug 25 02:02:50 IST 2026
[2026-08-25 02:02:50,488.488 INFO    ] ================================================
[2026-08-25 02:02:51,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:02:51
[2026-08-25 02:02:51,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:02:51,967.967 INFO    ] Initializing speech engine...
[2026-08-25 02:02:51,982.982 INFO    ] 2026-08-25 02:02:51
[2026-08-25 02:02:52,247.247 INFO    ] 2026-08-25 02:02:52
[2026-08-25 02:02:52,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:02:52,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:02:52,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:02:52,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:02:52,706.706 INFO    ] time= 25/08/2026 02:02:52
[2026-08-25 02:02:52,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:02:52,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:02:52,946.946 INFO    ] No existing commands found in stream
[2026-08-25 02:02:57,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:02:57,979.979 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 02:02:59,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:02:59,631.631 INFO    ] Checking for system updates...
[2026-08-25 02:02:59,668.668 INFO    ] 200
[2026-08-25 02:02:59,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:59,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:02:59,727.727 INFO    ] No update needed
[2026-08-25 02:02:59,729.729 INFO    ] Checking for camera pi updates...
[2026-08-25 02:02:59,766.766 INFO    ] 200
[2026-08-25 02:02:59,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:02:59,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:02:59,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:02:59,868.868 INFO    ] No camera update needed
[2026-08-25 02:02:59,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:02:59,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:02:59,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:02:59,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:03:01,928.928 INFO    ] ================================================
[2026-08-25 02:03:01,949.949 INFO    ] Launching Daemon at Tue Aug 25 02:03:01 IST 2026
[2026-08-25 02:03:01,967.967 INFO    ] ================================================
[2026-08-25 02:03:02,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:03:02
[2026-08-25 02:03:03,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:03:03,510.510 INFO    ] Initializing speech engine...
[2026-08-25 02:03:03,523.523 INFO    ] 2026-08-25 02:03:03
[2026-08-25 02:03:03,804.804 INFO    ] 2026-08-25 02:03:03
[2026-08-25 02:03:03,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:03:04,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:03:04,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:03:04,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:03:04,218.218 INFO    ] time= 25/08/2026 02:03:04
[2026-08-25 02:03:04,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:03:04,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:03:04,309.309 INFO    ] No existing commands found in stream
[2026-08-25 02:03:09,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:03:09,347.347 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 02:03:12,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:03:12,012.012 INFO    ] Checking for system updates...
[2026-08-25 02:03:12,050.050 INFO    ] 200
[2026-08-25 02:03:12,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:12,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:12,106.106 INFO    ] No update needed
[2026-08-25 02:03:12,108.108 INFO    ] Checking for camera pi updates...
[2026-08-25 02:03:12,142.142 INFO    ] 200
[2026-08-25 02:03:12,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:12,188.188 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:03:12,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:12,260.260 INFO    ] No camera update needed
[2026-08-25 02:03:12,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:03:12,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:03:12,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:03:12,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:03:14,314.314 INFO    ] ================================================
[2026-08-25 02:03:14,333.333 INFO    ] Launching Daemon at Tue Aug 25 02:03:14 IST 2026
[2026-08-25 02:03:14,344.344 INFO    ] ================================================
[2026-08-25 02:03:14,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:03:14
[2026-08-25 02:03:15,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:03:15,840.840 INFO    ] Initializing speech engine...
[2026-08-25 02:03:15,849.849 INFO    ] 2026-08-25 02:03:15
[2026-08-25 02:03:16,105.105 INFO    ] 2026-08-25 02:03:16
[2026-08-25 02:03:16,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:03:16,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:03:16,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:03:16,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:03:16,579.579 INFO    ] time= 25/08/2026 02:03:16
[2026-08-25 02:03:16,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:03:16,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:03:16,734.734 INFO    ] No existing commands found in stream
[2026-08-25 02:03:21,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:03:21,767.767 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 02:03:22,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:03:22,621.621 INFO    ] Checking for system updates...
[2026-08-25 02:03:22,659.659 INFO    ] 200
[2026-08-25 02:03:22,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:22,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:22,720.720 INFO    ] No update needed
[2026-08-25 02:03:22,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 02:03:22,763.763 INFO    ] 200
[2026-08-25 02:03:22,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:22,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:03:22,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:22,854.854 INFO    ] No camera update needed
[2026-08-25 02:03:22,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:03:22,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:03:22,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:03:22,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:03:24,910.910 INFO    ] ================================================
[2026-08-25 02:03:24,926.926 INFO    ] Launching Daemon at Tue Aug 25 02:03:24 IST 2026
[2026-08-25 02:03:24,936.936 INFO    ] ================================================
[2026-08-25 02:03:25,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:03:25
[2026-08-25 02:03:26,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:03:26,389.389 INFO    ] Initializing speech engine...
[2026-08-25 02:03:26,394.394 INFO    ] 2026-08-25 02:03:26
[2026-08-25 02:03:26,654.654 INFO    ] 2026-08-25 02:03:26
[2026-08-25 02:03:26,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:03:26,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:03:26,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:03:27,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:03:27,202.202 INFO    ] time= 25/08/2026 02:03:27
[2026-08-25 02:03:27,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:03:27,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:03:27,360.360 INFO    ] No existing commands found in stream
[2026-08-25 02:03:32,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:03:32,387.387 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 02:03:35,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:03:35,795.795 INFO    ] Checking for system updates...
[2026-08-25 02:03:35,833.833 INFO    ] 200
[2026-08-25 02:03:35,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:35,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:35,890.890 INFO    ] No update needed
[2026-08-25 02:03:35,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 02:03:35,928.928 INFO    ] 200
[2026-08-25 02:03:35,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:35,974.974 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:03:36,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:36,025.025 INFO    ] No camera update needed
[2026-08-25 02:03:36,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:03:36,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:03:36,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:03:36,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:03:38,083.083 INFO    ] ================================================
[2026-08-25 02:03:38,098.098 INFO    ] Launching Daemon at Tue Aug 25 02:03:38 IST 2026
[2026-08-25 02:03:38,108.108 INFO    ] ================================================
[2026-08-25 02:03:38,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:03:38
[2026-08-25 02:03:39,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:03:39,634.634 INFO    ] Initializing speech engine...
[2026-08-25 02:03:39,644.644 INFO    ] 2026-08-25 02:03:39
[2026-08-25 02:03:39,928.928 INFO    ] 2026-08-25 02:03:39
[2026-08-25 02:03:39,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:03:40,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:03:40,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:03:40,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:03:40,306.306 INFO    ] time= 25/08/2026 02:03:40
[2026-08-25 02:03:40,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:03:40,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:03:40,502.502 INFO    ] No existing commands found in stream
[2026-08-25 02:03:45,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:03:45,520.520 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 02:03:47,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:03:47,405.405 INFO    ] Checking for system updates...
[2026-08-25 02:03:47,445.445 INFO    ] 200
[2026-08-25 02:03:47,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:47,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:03:47,509.509 INFO    ] No update needed
[2026-08-25 02:03:47,512.512 INFO    ] Checking for camera pi updates...
[2026-08-25 02:03:47,550.550 INFO    ] 200
[2026-08-25 02:03:47,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:47,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:03:47,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:03:47,653.653 INFO    ] No camera update needed
[2026-08-25 02:03:47,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:03:47,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:03:47,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:03:47,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:03:49,710.710 INFO    ] ================================================
[2026-08-25 02:03:49,725.725 INFO    ] Launching Daemon at Tue Aug 25 02:03:49 IST 2026
[2026-08-25 02:03:49,736.736 INFO    ] ================================================
[2026-08-25 02:03:50,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:03:50
[2026-08-25 02:03:50,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:03:51,184.184 INFO    ] Initializing speech engine...
[2026-08-25 02:03:51,194.194 INFO    ] 2026-08-25 02:03:51
[2026-08-25 02:03:51,441.441 INFO    ] 2026-08-25 02:03:51
[2026-08-25 02:03:51,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:03:51,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:03:51,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:03:51,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:03:51,905.905 INFO    ] time= 25/08/2026 02:03:51
[2026-08-25 02:03:51,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:03:52,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:03:52,140.140 INFO    ] No existing commands found in stream
[2026-08-25 02:03:57,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:03:57,161.161 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 02:03:59,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:03:59,241.241 INFO    ] Checking for system updates...
[2026-08-25 02:03:59,280.280 INFO    ] 200
[2026-08-25 02:03:59,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:59,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:59,341.341 INFO    ] No update needed
[2026-08-25 02:03:59,343.343 INFO    ] Checking for camera pi updates...
[2026-08-25 02:03:59,379.379 INFO    ] 200
[2026-08-25 02:03:59,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:03:59,430.430 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:03:59,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:03:59,481.481 INFO    ] No camera update needed
[2026-08-25 02:03:59,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:03:59,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:03:59,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:03:59,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:04:01,556.556 INFO    ] ================================================
[2026-08-25 02:04:01,577.577 INFO    ] Launching Daemon at Tue Aug 25 02:04:01 IST 2026
[2026-08-25 02:04:01,610.610 INFO    ] ================================================
[2026-08-25 02:04:02,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:04:02
[2026-08-25 02:04:03,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:04:03,365.365 INFO    ] Initializing speech engine...
[2026-08-25 02:04:03,374.374 INFO    ] 2026-08-25 02:04:03
[2026-08-25 02:04:03,659.659 INFO    ] 2026-08-25 02:04:03
[2026-08-25 02:04:03,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:04:03,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:04:03,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:04:04,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:04:04,149.149 INFO    ] time= 25/08/2026 02:04:04
[2026-08-25 02:04:04,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:04:04,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:04:04,338.338 INFO    ] No existing commands found in stream
[2026-08-25 02:04:09,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:04:09,367.367 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 02:04:10,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:04:10,166.166 INFO    ] Checking for system updates...
[2026-08-25 02:04:10,205.205 INFO    ] 200
[2026-08-25 02:04:10,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:10,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:04:10,269.269 INFO    ] No update needed
[2026-08-25 02:04:10,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 02:04:10,308.308 INFO    ] 200
[2026-08-25 02:04:10,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:10,357.357 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:04:10,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:04:10,415.415 INFO    ] No camera update needed
[2026-08-25 02:04:10,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:04:10,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:04:10,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:04:10,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:04:12,474.474 INFO    ] ================================================
[2026-08-25 02:04:12,489.489 INFO    ] Launching Daemon at Tue Aug 25 02:04:12 IST 2026
[2026-08-25 02:04:12,500.500 INFO    ] ================================================
[2026-08-25 02:04:13,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:04:13
[2026-08-25 02:04:13,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:04:14,010.010 INFO    ] Initializing speech engine...
[2026-08-25 02:04:14,018.018 INFO    ] 2026-08-25 02:04:14
[2026-08-25 02:04:14,287.287 INFO    ] 2026-08-25 02:04:14
[2026-08-25 02:04:14,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:04:14,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:04:14,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:04:14,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:04:14,757.757 INFO    ] time= 25/08/2026 02:04:14
[2026-08-25 02:04:14,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:04:14,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:04:14,990.990 INFO    ] No existing commands found in stream
[2026-08-25 02:04:20,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:04:20,016.016 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 02:04:22,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:04:22,135.135 INFO    ] Checking for system updates...
[2026-08-25 02:04:22,174.174 INFO    ] 200
[2026-08-25 02:04:22,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:22,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:04:22,231.231 INFO    ] No update needed
[2026-08-25 02:04:22,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 02:04:22,267.267 INFO    ] 200
[2026-08-25 02:04:22,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:22,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:04:22,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:04:22,361.361 INFO    ] No camera update needed
[2026-08-25 02:04:22,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:04:22,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:04:22,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:04:22,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:04:24,417.417 INFO    ] ================================================
[2026-08-25 02:04:24,433.433 INFO    ] Launching Daemon at Tue Aug 25 02:04:24 IST 2026
[2026-08-25 02:04:24,444.444 INFO    ] ================================================
[2026-08-25 02:04:25,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:04:25
[2026-08-25 02:04:25,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:04:25,902.902 INFO    ] Initializing speech engine...
[2026-08-25 02:04:25,916.916 INFO    ] 2026-08-25 02:04:25
[2026-08-25 02:04:26,171.171 INFO    ] 2026-08-25 02:04:26
[2026-08-25 02:04:26,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:04:26,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:04:26,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:04:26,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:04:26,710.710 INFO    ] time= 25/08/2026 02:04:26
[2026-08-25 02:04:26,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:04:26,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:04:26,849.849 INFO    ] No existing commands found in stream
[2026-08-25 02:04:31,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:04:31,875.875 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 02:04:33,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:04:33,099.099 INFO    ] Checking for system updates...
[2026-08-25 02:04:33,137.137 INFO    ] 200
[2026-08-25 02:04:33,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:33,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:04:33,194.194 INFO    ] No update needed
[2026-08-25 02:04:33,196.196 INFO    ] Checking for camera pi updates...
[2026-08-25 02:04:33,233.233 INFO    ] 200
[2026-08-25 02:04:33,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:33,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:04:33,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:04:33,342.342 INFO    ] No camera update needed
[2026-08-25 02:04:33,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:04:33,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:04:33,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:04:33,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:04:35,397.397 INFO    ] ================================================
[2026-08-25 02:04:35,413.413 INFO    ] Launching Daemon at Tue Aug 25 02:04:35 IST 2026
[2026-08-25 02:04:35,424.424 INFO    ] ================================================
[2026-08-25 02:04:36,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:04:36
[2026-08-25 02:04:36,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:04:36,874.874 INFO    ] Initializing speech engine...
[2026-08-25 02:04:36,883.883 INFO    ] 2026-08-25 02:04:36
[2026-08-25 02:04:37,131.131 INFO    ] 2026-08-25 02:04:37
[2026-08-25 02:04:37,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:04:37,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:04:37,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:04:37,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:04:37,606.606 INFO    ] time= 25/08/2026 02:04:37
[2026-08-25 02:04:37,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:04:37,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:04:37,835.835 INFO    ] No existing commands found in stream
[2026-08-25 02:04:42,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:04:42,854.854 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 02:04:47,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:04:47,251.251 INFO    ] Checking for system updates...
[2026-08-25 02:04:47,286.286 INFO    ] 200
[2026-08-25 02:04:47,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:47,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:04:47,349.349 INFO    ] No update needed
[2026-08-25 02:04:47,351.351 INFO    ] Checking for camera pi updates...
[2026-08-25 02:04:47,385.385 INFO    ] 200
[2026-08-25 02:04:47,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:47,427.427 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:04:47,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:04:47,480.480 INFO    ] No camera update needed
[2026-08-25 02:04:47,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:04:47,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:04:47,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:04:47,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:04:49,536.536 INFO    ] ================================================
[2026-08-25 02:04:49,552.552 INFO    ] Launching Daemon at Tue Aug 25 02:04:49 IST 2026
[2026-08-25 02:04:49,563.563 INFO    ] ================================================
[2026-08-25 02:04:50,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:04:50
[2026-08-25 02:04:50,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:04:50,978.978 INFO    ] Initializing speech engine...
[2026-08-25 02:04:50,985.985 INFO    ] 2026-08-25 02:04:50
[2026-08-25 02:04:51,276.276 INFO    ] 2026-08-25 02:04:51
[2026-08-25 02:04:51,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:04:51,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:04:51,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:04:51,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:04:51,626.626 INFO    ] time= 25/08/2026 02:04:51
[2026-08-25 02:04:51,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:04:51,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:04:51,778.778 INFO    ] No existing commands found in stream
[2026-08-25 02:04:56,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:04:56,792.792 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 02:04:57,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:04:57,769.769 INFO    ] Checking for system updates...
[2026-08-25 02:04:57,804.804 INFO    ] 200
[2026-08-25 02:04:57,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:57,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:04:57,873.873 INFO    ] No update needed
[2026-08-25 02:04:57,875.875 INFO    ] Checking for camera pi updates...
[2026-08-25 02:04:57,908.908 INFO    ] 200
[2026-08-25 02:04:57,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:04:57,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:04:58,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:04:58,099.099 INFO    ] No camera update needed
[2026-08-25 02:04:58,101.101 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:04:58,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:04:58,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:04:58,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:05:00,153.153 INFO    ] ================================================
[2026-08-25 02:05:00,169.169 INFO    ] Launching Daemon at Tue Aug 25 02:05:00 IST 2026
[2026-08-25 02:05:00,184.184 INFO    ] ================================================
[2026-08-25 02:05:00,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:05:00
[2026-08-25 02:05:01,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:05:02,240.240 INFO    ] Initializing speech engine...
[2026-08-25 02:05:02,243.243 INFO    ] 2026-08-25 02:05:02
[2026-08-25 02:05:02,628.628 INFO    ] 2026-08-25 02:05:02
[2026-08-25 02:05:02,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:05:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:05:02,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:05:03,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:05:03,066.066 INFO    ] time= 25/08/2026 02:05:03
[2026-08-25 02:05:03,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:05:03,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:05:03,266.266 INFO    ] No existing commands found in stream
[2026-08-25 02:05:08,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:05:08,285.285 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 02:05:09,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:05:09,407.407 INFO    ] Checking for system updates...
[2026-08-25 02:05:09,442.442 INFO    ] 200
[2026-08-25 02:05:09,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:09,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:05:09,505.505 INFO    ] No update needed
[2026-08-25 02:05:09,508.508 INFO    ] Checking for camera pi updates...
[2026-08-25 02:05:09,541.541 INFO    ] 200
[2026-08-25 02:05:09,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:09,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:05:09,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:05:09,635.635 INFO    ] No camera update needed
[2026-08-25 02:05:09,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:05:09,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:05:09,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:05:09,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:05:11,689.689 INFO    ] ================================================
[2026-08-25 02:05:11,705.705 INFO    ] Launching Daemon at Tue Aug 25 02:05:11 IST 2026
[2026-08-25 02:05:11,716.716 INFO    ] ================================================
[2026-08-25 02:05:12,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:05:12
[2026-08-25 02:05:12,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:05:13,148.148 INFO    ] Initializing speech engine...
[2026-08-25 02:05:13,155.155 INFO    ] 2026-08-25 02:05:13
[2026-08-25 02:05:13,398.398 INFO    ] 2026-08-25 02:05:13
[2026-08-25 02:05:13,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:05:13,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:05:13,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:05:13,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:05:13,835.835 INFO    ] time= 25/08/2026 02:05:13
[2026-08-25 02:05:13,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:05:13,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:05:14,094.094 INFO    ] No existing commands found in stream
[2026-08-25 02:05:19,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:05:19,118.118 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 02:05:21,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:05:21,609.609 INFO    ] Checking for system updates...
[2026-08-25 02:05:21,648.648 INFO    ] 200
[2026-08-25 02:05:21,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:21,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:05:21,712.712 INFO    ] No update needed
[2026-08-25 02:05:21,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 02:05:21,747.747 INFO    ] 200
[2026-08-25 02:05:21,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:21,794.794 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:05:21,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:05:21,852.852 INFO    ] No camera update needed
[2026-08-25 02:05:21,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:05:21,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:05:21,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:05:21,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:05:23,909.909 INFO    ] ================================================
[2026-08-25 02:05:23,925.925 INFO    ] Launching Daemon at Tue Aug 25 02:05:23 IST 2026
[2026-08-25 02:05:23,935.935 INFO    ] ================================================
[2026-08-25 02:05:24,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:05:24
[2026-08-25 02:05:25,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:05:25,353.353 INFO    ] Initializing speech engine...
[2026-08-25 02:05:25,362.362 INFO    ] 2026-08-25 02:05:25
[2026-08-25 02:05:25,625.625 INFO    ] 2026-08-25 02:05:25
[2026-08-25 02:05:25,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:05:25,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:05:25,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:05:26,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:05:26,105.105 INFO    ] time= 25/08/2026 02:05:26
[2026-08-25 02:05:26,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:05:26,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:05:26,308.308 INFO    ] No existing commands found in stream
[2026-08-25 02:05:31,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:05:31,333.333 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 02:05:35,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:05:35,569.569 INFO    ] Checking for system updates...
[2026-08-25 02:05:35,606.606 INFO    ] 200
[2026-08-25 02:05:35,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:35,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:05:35,666.666 INFO    ] No update needed
[2026-08-25 02:05:35,669.669 INFO    ] Checking for camera pi updates...
[2026-08-25 02:05:35,703.703 INFO    ] 200
[2026-08-25 02:05:35,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:35,755.755 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:05:35,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:05:35,807.807 INFO    ] No camera update needed
[2026-08-25 02:05:35,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:05:35,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:05:35,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:05:35,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:05:37,864.864 INFO    ] ================================================
[2026-08-25 02:05:37,880.880 INFO    ] Launching Daemon at Tue Aug 25 02:05:37 IST 2026
[2026-08-25 02:05:37,891.891 INFO    ] ================================================
[2026-08-25 02:05:38,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:05:38
[2026-08-25 02:05:39,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:05:39,485.485 INFO    ] Initializing speech engine...
[2026-08-25 02:05:39,498.498 INFO    ] 2026-08-25 02:05:39
[2026-08-25 02:05:39,775.775 INFO    ] 2026-08-25 02:05:39
[2026-08-25 02:05:39,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:05:40,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:05:40,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:05:40,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:05:40,277.277 INFO    ] time= 25/08/2026 02:05:40
[2026-08-25 02:05:40,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:05:40,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:05:40,463.463 INFO    ] No existing commands found in stream
[2026-08-25 02:05:45,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:05:45,484.484 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 02:05:47,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:05:47,270.270 INFO    ] Checking for system updates...
[2026-08-25 02:05:47,310.310 INFO    ] 200
[2026-08-25 02:05:47,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:47,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:05:47,369.369 INFO    ] No update needed
[2026-08-25 02:05:47,371.371 INFO    ] Checking for camera pi updates...
[2026-08-25 02:05:47,409.409 INFO    ] 200
[2026-08-25 02:05:47,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:47,456.456 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:05:47,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:05:47,513.513 INFO    ] No camera update needed
[2026-08-25 02:05:47,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:05:47,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:05:47,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:05:47,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:05:49,572.572 INFO    ] ================================================
[2026-08-25 02:05:49,587.587 INFO    ] Launching Daemon at Tue Aug 25 02:05:49 IST 2026
[2026-08-25 02:05:49,598.598 INFO    ] ================================================
[2026-08-25 02:05:50,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:05:50
[2026-08-25 02:05:50,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:05:51,003.003 INFO    ] Initializing speech engine...
[2026-08-25 02:05:51,011.011 INFO    ] 2026-08-25 02:05:51
[2026-08-25 02:05:51,303.303 INFO    ] 2026-08-25 02:05:51
[2026-08-25 02:05:51,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:05:51,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:05:51,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:05:51,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:05:51,678.678 INFO    ] time= 25/08/2026 02:05:51
[2026-08-25 02:05:51,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:05:51,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:05:51,800.800 INFO    ] No existing commands found in stream
[2026-08-25 02:05:56,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:05:56,812.812 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 02:05:58,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:05:58,299.299 INFO    ] Checking for system updates...
[2026-08-25 02:05:58,337.337 INFO    ] 200
[2026-08-25 02:05:58,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:58,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:05:58,393.393 INFO    ] No update needed
[2026-08-25 02:05:58,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 02:05:58,433.433 INFO    ] 200
[2026-08-25 02:05:58,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:05:58,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:05:58,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:05:58,534.534 INFO    ] No camera update needed
[2026-08-25 02:05:58,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:05:58,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:05:58,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:05:58,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:06:00,589.589 INFO    ] ================================================
[2026-08-25 02:06:00,604.604 INFO    ] Launching Daemon at Tue Aug 25 02:06:00 IST 2026
[2026-08-25 02:06:00,618.618 INFO    ] ================================================
[2026-08-25 02:06:01,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:06:01
[2026-08-25 02:06:01,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:06:02,473.473 INFO    ] Initializing speech engine...
[2026-08-25 02:06:02,487.487 INFO    ] 2026-08-25 02:06:02
[2026-08-25 02:06:02,868.868 INFO    ] 2026-08-25 02:06:02
[2026-08-25 02:06:02,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:06:03,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:06:03,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:06:03,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:06:03,287.287 INFO    ] time= 25/08/2026 02:06:03
[2026-08-25 02:06:03,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:06:03,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:06:03,445.445 INFO    ] No existing commands found in stream
[2026-08-25 02:06:08,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:06:08,464.464 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 02:06:09,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:06:09,038.038 INFO    ] Checking for system updates...
[2026-08-25 02:06:09,074.074 INFO    ] 200
[2026-08-25 02:06:09,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:09,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:09,131.131 INFO    ] No update needed
[2026-08-25 02:06:09,134.134 INFO    ] Checking for camera pi updates...
[2026-08-25 02:06:09,167.167 INFO    ] 200
[2026-08-25 02:06:09,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:09,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:06:09,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:09,261.261 INFO    ] No camera update needed
[2026-08-25 02:06:09,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:06:09,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:06:09,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:06:09,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:06:11,316.316 INFO    ] ================================================
[2026-08-25 02:06:11,331.331 INFO    ] Launching Daemon at Tue Aug 25 02:06:11 IST 2026
[2026-08-25 02:06:11,342.342 INFO    ] ================================================
[2026-08-25 02:06:11,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:06:11
[2026-08-25 02:06:12,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:06:12,774.774 INFO    ] Initializing speech engine...
[2026-08-25 02:06:12,781.781 INFO    ] 2026-08-25 02:06:12
[2026-08-25 02:06:13,038.038 INFO    ] 2026-08-25 02:06:13
[2026-08-25 02:06:13,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:06:13,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:06:13,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:06:13,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:06:13,487.487 INFO    ] time= 25/08/2026 02:06:13
[2026-08-25 02:06:13,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:06:13,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:06:13,728.728 INFO    ] No existing commands found in stream
[2026-08-25 02:06:18,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:06:18,744.744 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 02:06:20,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:06:20,760.760 INFO    ] Checking for system updates...
[2026-08-25 02:06:20,796.796 INFO    ] 200
[2026-08-25 02:06:20,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:20,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:20,859.859 INFO    ] No update needed
[2026-08-25 02:06:20,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 02:06:20,897.897 INFO    ] 200
[2026-08-25 02:06:20,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:20,943.943 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:06:20,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:21,001.001 INFO    ] No camera update needed
[2026-08-25 02:06:21,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:06:21,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:06:21,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:06:21,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:06:23,057.057 INFO    ] ================================================
[2026-08-25 02:06:23,072.072 INFO    ] Launching Daemon at Tue Aug 25 02:06:23 IST 2026
[2026-08-25 02:06:23,083.083 INFO    ] ================================================
[2026-08-25 02:06:23,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:06:23
[2026-08-25 02:06:24,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:06:24,682.682 INFO    ] Initializing speech engine...
[2026-08-25 02:06:24,694.694 INFO    ] 2026-08-25 02:06:24
[2026-08-25 02:06:24,971.971 INFO    ] 2026-08-25 02:06:24
[2026-08-25 02:06:25,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:06:25,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:06:25,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:06:25,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:06:25,511.511 INFO    ] time= 25/08/2026 02:06:25
[2026-08-25 02:06:25,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:06:25,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:06:25,707.707 INFO    ] No existing commands found in stream
[2026-08-25 02:06:30,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:06:30,741.741 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 02:06:32,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:06:32,503.503 INFO    ] Checking for system updates...
[2026-08-25 02:06:32,545.545 INFO    ] 200
[2026-08-25 02:06:32,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:32,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:32,613.613 INFO    ] No update needed
[2026-08-25 02:06:32,616.616 INFO    ] Checking for camera pi updates...
[2026-08-25 02:06:32,652.652 INFO    ] 200
[2026-08-25 02:06:32,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:32,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:06:32,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:32,778.778 INFO    ] No camera update needed
[2026-08-25 02:06:32,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:06:32,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:06:32,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:06:32,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:06:34,843.843 INFO    ] ================================================
[2026-08-25 02:06:34,858.858 INFO    ] Launching Daemon at Tue Aug 25 02:06:34 IST 2026
[2026-08-25 02:06:34,868.868 INFO    ] ================================================
[2026-08-25 02:06:35,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:06:35
[2026-08-25 02:06:36,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:06:36,340.340 INFO    ] Initializing speech engine...
[2026-08-25 02:06:36,352.352 INFO    ] 2026-08-25 02:06:36
[2026-08-25 02:06:36,606.606 INFO    ] 2026-08-25 02:06:36
[2026-08-25 02:06:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:06:36,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:06:36,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:06:37,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:06:37,086.086 INFO    ] time= 25/08/2026 02:06:37
[2026-08-25 02:06:37,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:06:37,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:06:37,290.290 INFO    ] No existing commands found in stream
[2026-08-25 02:06:42,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:06:42,323.323 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 02:06:44,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:06:44,688.688 INFO    ] Checking for system updates...
[2026-08-25 02:06:44,727.727 INFO    ] 200
[2026-08-25 02:06:44,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:44,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:44,785.785 INFO    ] No update needed
[2026-08-25 02:06:44,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 02:06:44,825.825 INFO    ] 200
[2026-08-25 02:06:44,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:44,869.869 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:06:44,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:06:44,919.919 INFO    ] No camera update needed
[2026-08-25 02:06:44,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:06:44,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:06:44,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:06:44,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:06:46,976.976 INFO    ] ================================================
[2026-08-25 02:06:46,992.992 INFO    ] Launching Daemon at Tue Aug 25 02:06:46 IST 2026
[2026-08-25 02:06:47,003.003 INFO    ] ================================================
[2026-08-25 02:06:47,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:06:47
[2026-08-25 02:06:48,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:06:48,598.598 INFO    ] Initializing speech engine...
[2026-08-25 02:06:48,612.612 INFO    ] 2026-08-25 02:06:48
[2026-08-25 02:06:48,926.926 INFO    ] 2026-08-25 02:06:48
[2026-08-25 02:06:49,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:06:49,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:06:49,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:06:49,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:06:49,436.436 INFO    ] time= 25/08/2026 02:06:49
[2026-08-25 02:06:49,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:06:49,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:06:49,636.636 INFO    ] No existing commands found in stream
[2026-08-25 02:06:54,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:06:54,671.671 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 02:06:58,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:06:58,455.455 INFO    ] Checking for system updates...
[2026-08-25 02:06:58,492.492 INFO    ] 200
[2026-08-25 02:06:58,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:58,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:06:58,550.550 INFO    ] No update needed
[2026-08-25 02:06:58,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 02:06:58,589.589 INFO    ] 200
[2026-08-25 02:06:58,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:06:58,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:06:58,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:06:58,692.692 INFO    ] No camera update needed
[2026-08-25 02:06:58,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:06:58,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:06:58,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:06:58,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:07:00,747.747 INFO    ] ================================================
[2026-08-25 02:07:00,762.762 INFO    ] Launching Daemon at Tue Aug 25 02:07:00 IST 2026
[2026-08-25 02:07:00,773.773 INFO    ] ================================================
[2026-08-25 02:07:01,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:07:01
[2026-08-25 02:07:02,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:07:02,418.418 INFO    ] Initializing speech engine...
[2026-08-25 02:07:02,425.425 INFO    ] 2026-08-25 02:07:02
[2026-08-25 02:07:02,731.731 INFO    ] 2026-08-25 02:07:02
[2026-08-25 02:07:02,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:07:03,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:07:03,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:07:03,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:07:03,188.188 INFO    ] time= 25/08/2026 02:07:03
[2026-08-25 02:07:03,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:07:03,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:07:03,319.319 INFO    ] No existing commands found in stream
[2026-08-25 02:07:08,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:07:08,351.351 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 02:07:10,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:07:10,892.892 INFO    ] Checking for system updates...
[2026-08-25 02:07:10,928.928 INFO    ] 200
[2026-08-25 02:07:10,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:11,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:07:11,004.004 INFO    ] No update needed
[2026-08-25 02:07:11,007.007 INFO    ] Checking for camera pi updates...
[2026-08-25 02:07:11,045.045 INFO    ] 200
[2026-08-25 02:07:11,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:11,093.093 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:07:11,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:07:11,147.147 INFO    ] No camera update needed
[2026-08-25 02:07:11,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:07:11,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:07:11,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:07:11,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:07:13,204.204 INFO    ] ================================================
[2026-08-25 02:07:13,220.220 INFO    ] Launching Daemon at Tue Aug 25 02:07:13 IST 2026
[2026-08-25 02:07:13,230.230 INFO    ] ================================================
[2026-08-25 02:07:13,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:07:13
[2026-08-25 02:07:14,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:07:14,635.635 INFO    ] Initializing speech engine...
[2026-08-25 02:07:14,641.641 INFO    ] 2026-08-25 02:07:14
[2026-08-25 02:07:14,946.946 INFO    ] 2026-08-25 02:07:14
[2026-08-25 02:07:14,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:07:15,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:07:15,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:07:15,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:07:15,331.331 INFO    ] time= 25/08/2026 02:07:15
[2026-08-25 02:07:15,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:07:15,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:07:15,461.461 INFO    ] No existing commands found in stream
[2026-08-25 02:07:20,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:07:20,474.474 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 02:07:22,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:07:22,948.948 INFO    ] Checking for system updates...
[2026-08-25 02:07:22,985.985 INFO    ] 200
[2026-08-25 02:07:22,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:23,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:07:23,050.050 INFO    ] No update needed
[2026-08-25 02:07:23,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 02:07:23,086.086 INFO    ] 200
[2026-08-25 02:07:23,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:23,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:07:23,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:07:23,180.180 INFO    ] No camera update needed
[2026-08-25 02:07:23,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:07:23,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:07:23,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:07:23,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:07:25,237.237 INFO    ] ================================================
[2026-08-25 02:07:25,252.252 INFO    ] Launching Daemon at Tue Aug 25 02:07:25 IST 2026
[2026-08-25 02:07:25,263.263 INFO    ] ================================================
[2026-08-25 02:07:25,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:07:25
[2026-08-25 02:07:26,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:07:26,853.853 INFO    ] Initializing speech engine...
[2026-08-25 02:07:26,867.867 INFO    ] 2026-08-25 02:07:26
[2026-08-25 02:07:27,143.143 INFO    ] 2026-08-25 02:07:27
[2026-08-25 02:07:27,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:07:27,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:07:27,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:07:27,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:07:27,638.638 INFO    ] time= 25/08/2026 02:07:27
[2026-08-25 02:07:27,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:07:27,717.717 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:07:27,857.857 INFO    ] No existing commands found in stream
[2026-08-25 02:07:32,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:07:32,879.879 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 02:07:37,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:07:37,357.357 INFO    ] Checking for system updates...
[2026-08-25 02:07:37,394.394 INFO    ] 200
[2026-08-25 02:07:37,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:37,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:07:37,462.462 INFO    ] No update needed
[2026-08-25 02:07:37,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 02:07:37,504.504 INFO    ] 200
[2026-08-25 02:07:37,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:37,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:07:37,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:07:37,610.610 INFO    ] No camera update needed
[2026-08-25 02:07:37,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:07:37,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:07:37,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:07:37,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:07:39,668.668 INFO    ] ================================================
[2026-08-25 02:07:39,684.684 INFO    ] Launching Daemon at Tue Aug 25 02:07:39 IST 2026
[2026-08-25 02:07:39,696.696 INFO    ] ================================================
[2026-08-25 02:07:40,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:07:40
[2026-08-25 02:07:41,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:07:41,332.332 INFO    ] Initializing speech engine...
[2026-08-25 02:07:41,345.345 INFO    ] 2026-08-25 02:07:41
[2026-08-25 02:07:41,604.604 INFO    ] 2026-08-25 02:07:41
[2026-08-25 02:07:41,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:07:41,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:07:41,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:07:42,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:07:42,099.099 INFO    ] time= 25/08/2026 02:07:42
[2026-08-25 02:07:42,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:07:42,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:07:42,287.287 INFO    ] No existing commands found in stream
[2026-08-25 02:07:47,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:07:47,320.320 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 02:07:48,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:07:48,626.626 INFO    ] Checking for system updates...
[2026-08-25 02:07:48,662.662 INFO    ] 200
[2026-08-25 02:07:48,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:48,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:07:48,719.719 INFO    ] No update needed
[2026-08-25 02:07:48,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 02:07:48,755.755 INFO    ] 200
[2026-08-25 02:07:48,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:07:48,804.804 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:07:48,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:07:48,860.860 INFO    ] No camera update needed
[2026-08-25 02:07:48,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:07:48,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:07:48,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:07:48,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:07:50,918.918 INFO    ] ================================================
[2026-08-25 02:07:50,934.934 INFO    ] Launching Daemon at Tue Aug 25 02:07:50 IST 2026
[2026-08-25 02:07:50,946.946 INFO    ] ================================================
[2026-08-25 02:07:51,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:07:51
[2026-08-25 02:07:52,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:07:52,442.442 INFO    ] Initializing speech engine...
[2026-08-25 02:07:52,449.449 INFO    ] 2026-08-25 02:07:52
[2026-08-25 02:07:52,695.695 INFO    ] 2026-08-25 02:07:52
[2026-08-25 02:07:52,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:07:52,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:07:52,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:07:53,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:07:53,186.186 INFO    ] time= 25/08/2026 02:07:53
[2026-08-25 02:07:53,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:07:53,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:07:53,379.379 INFO    ] No existing commands found in stream
[2026-08-25 02:07:58,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:07:58,407.407 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 02:08:02,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:08:02,537.537 INFO    ] Checking for system updates...
[2026-08-25 02:08:02,588.588 INFO    ] 200
[2026-08-25 02:08:02,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:02,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:08:02,666.666 INFO    ] No update needed
[2026-08-25 02:08:02,669.669 INFO    ] Checking for camera pi updates...
[2026-08-25 02:08:02,707.707 INFO    ] 200
[2026-08-25 02:08:02,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:02,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:08:02,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:08:02,841.841 INFO    ] No camera update needed
[2026-08-25 02:08:02,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:08:02,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:08:02,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:08:02,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:08:04,900.900 INFO    ] ================================================
[2026-08-25 02:08:04,916.916 INFO    ] Launching Daemon at Tue Aug 25 02:08:04 IST 2026
[2026-08-25 02:08:04,927.927 INFO    ] ================================================
[2026-08-25 02:08:05,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:08:05
[2026-08-25 02:08:06,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:08:06,552.552 INFO    ] Initializing speech engine...
[2026-08-25 02:08:06,565.565 INFO    ] 2026-08-25 02:08:06
[2026-08-25 02:08:06,861.861 INFO    ] 2026-08-25 02:08:06
[2026-08-25 02:08:06,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:08:07,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:08:07,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:08:07,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:08:07,312.312 INFO    ] time= 25/08/2026 02:08:07
[2026-08-25 02:08:07,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:08:07,421.421 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:08:07,571.571 INFO    ] No existing commands found in stream
[2026-08-25 02:08:12,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:08:12,589.589 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 02:08:13,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:08:13,106.106 INFO    ] Checking for system updates...
[2026-08-25 02:08:13,141.141 INFO    ] 200
[2026-08-25 02:08:13,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:13,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:08:13,206.206 INFO    ] No update needed
[2026-08-25 02:08:13,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 02:08:13,241.241 INFO    ] 200
[2026-08-25 02:08:13,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:13,290.290 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:08:13,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:08:13,339.339 INFO    ] No camera update needed
[2026-08-25 02:08:13,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:08:13,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:08:13,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:08:13,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:08:15,393.393 INFO    ] ================================================
[2026-08-25 02:08:15,409.409 INFO    ] Launching Daemon at Tue Aug 25 02:08:15 IST 2026
[2026-08-25 02:08:15,421.421 INFO    ] ================================================
[2026-08-25 02:08:15,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:08:15
[2026-08-25 02:08:16,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:08:16,830.830 INFO    ] Initializing speech engine...
[2026-08-25 02:08:16,843.843 INFO    ] 2026-08-25 02:08:16
[2026-08-25 02:08:17,109.109 INFO    ] 2026-08-25 02:08:17
[2026-08-25 02:08:17,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:08:17,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:08:17,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:08:17,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:08:17,533.533 INFO    ] time= 25/08/2026 02:08:17
[2026-08-25 02:08:17,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:08:17,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:08:17,690.690 INFO    ] No existing commands found in stream
[2026-08-25 02:08:22,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:08:22,705.705 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 02:08:23,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:08:23,618.618 INFO    ] Checking for system updates...
[2026-08-25 02:08:23,657.657 INFO    ] 200
[2026-08-25 02:08:23,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:23,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:08:23,722.722 INFO    ] No update needed
[2026-08-25 02:08:23,724.724 INFO    ] Checking for camera pi updates...
[2026-08-25 02:08:23,761.761 INFO    ] 200
[2026-08-25 02:08:23,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:23,803.803 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:08:23,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:08:23,854.854 INFO    ] No camera update needed
[2026-08-25 02:08:23,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:08:23,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:08:23,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:08:23,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:08:25,909.909 INFO    ] ================================================
[2026-08-25 02:08:25,924.924 INFO    ] Launching Daemon at Tue Aug 25 02:08:25 IST 2026
[2026-08-25 02:08:25,936.936 INFO    ] ================================================
[2026-08-25 02:08:26,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:08:26
[2026-08-25 02:08:27,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:08:27,444.444 INFO    ] Initializing speech engine...
[2026-08-25 02:08:27,449.449 INFO    ] 2026-08-25 02:08:27
[2026-08-25 02:08:27,698.698 INFO    ] 2026-08-25 02:08:27
[2026-08-25 02:08:27,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:08:27,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:08:27,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:08:28,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:08:28,182.182 INFO    ] time= 25/08/2026 02:08:28
[2026-08-25 02:08:28,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:08:28,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:08:28,375.375 INFO    ] No existing commands found in stream
[2026-08-25 02:08:33,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:08:33,405.405 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 02:08:34,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:08:34,625.625 INFO    ] Checking for system updates...
[2026-08-25 02:08:34,660.660 INFO    ] 200
[2026-08-25 02:08:34,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:34,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:08:34,720.720 INFO    ] No update needed
[2026-08-25 02:08:34,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 02:08:34,759.759 INFO    ] 200
[2026-08-25 02:08:34,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:34,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:08:34,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:08:34,862.862 INFO    ] No camera update needed
[2026-08-25 02:08:34,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:08:34,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:08:34,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:08:34,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:08:36,919.919 INFO    ] ================================================
[2026-08-25 02:08:36,934.934 INFO    ] Launching Daemon at Tue Aug 25 02:08:36 IST 2026
[2026-08-25 02:08:36,945.945 INFO    ] ================================================
[2026-08-25 02:08:37,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:08:37
[2026-08-25 02:08:38,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:08:38,578.578 INFO    ] Initializing speech engine...
[2026-08-25 02:08:38,584.584 INFO    ] 2026-08-25 02:08:38
[2026-08-25 02:08:38,872.872 INFO    ] 2026-08-25 02:08:38
[2026-08-25 02:08:38,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:08:39,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:08:39,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:08:39,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:08:39,338.338 INFO    ] time= 25/08/2026 02:08:39
[2026-08-25 02:08:39,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:08:39,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:08:39,584.584 INFO    ] No existing commands found in stream
[2026-08-25 02:08:44,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:08:44,623.623 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 02:08:48,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:08:48,375.375 INFO    ] Checking for system updates...
[2026-08-25 02:08:48,413.413 INFO    ] 200
[2026-08-25 02:08:48,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:48,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:08:48,470.470 INFO    ] No update needed
[2026-08-25 02:08:48,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 02:08:48,509.509 INFO    ] 200
[2026-08-25 02:08:48,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:08:48,555.555 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:08:48,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:08:48,605.605 INFO    ] No camera update needed
[2026-08-25 02:08:48,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:08:48,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:08:48,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:08:48,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:08:50,660.660 INFO    ] ================================================
[2026-08-25 02:08:50,676.676 INFO    ] Launching Daemon at Tue Aug 25 02:08:50 IST 2026
[2026-08-25 02:08:50,687.687 INFO    ] ================================================
[2026-08-25 02:08:51,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:08:51
[2026-08-25 02:08:51,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:08:52,178.178 INFO    ] Initializing speech engine...
[2026-08-25 02:08:52,186.186 INFO    ] 2026-08-25 02:08:52
[2026-08-25 02:08:52,444.444 INFO    ] 2026-08-25 02:08:52
[2026-08-25 02:08:52,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:08:52,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:08:52,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:08:52,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:08:52,907.907 INFO    ] time= 25/08/2026 02:08:52
[2026-08-25 02:08:52,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:08:52,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:08:53,137.137 INFO    ] No existing commands found in stream
[2026-08-25 02:08:58,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:08:58,155.155 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 02:09:00,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:09:00,896.896 INFO    ] Checking for system updates...
[2026-08-25 02:09:00,932.932 INFO    ] 200
[2026-08-25 02:09:00,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:00,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:09:00,996.996 INFO    ] No update needed
[2026-08-25 02:09:00,999.999 INFO    ] Checking for camera pi updates...
[2026-08-25 02:09:01,033.033 INFO    ] 200
[2026-08-25 02:09:01,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:01,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:09:01,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:09:01,134.134 INFO    ] No camera update needed
[2026-08-25 02:09:01,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:09:01,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:09:01,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:09:01,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:09:03,194.194 INFO    ] ================================================
[2026-08-25 02:09:03,223.223 INFO    ] Launching Daemon at Tue Aug 25 02:09:03 IST 2026
[2026-08-25 02:09:03,236.236 INFO    ] ================================================
[2026-08-25 02:09:03,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:09:03
[2026-08-25 02:09:04,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:09:04,712.712 INFO    ] Initializing speech engine...
[2026-08-25 02:09:04,719.719 INFO    ] 2026-08-25 02:09:04
[2026-08-25 02:09:04,978.978 INFO    ] 2026-08-25 02:09:04
[2026-08-25 02:09:05,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:09:05,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:09:05,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:09:05,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:09:05,467.467 INFO    ] time= 25/08/2026 02:09:05
[2026-08-25 02:09:05,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:09:05,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:09:05,671.671 INFO    ] No existing commands found in stream
[2026-08-25 02:09:10,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:09:10,691.691 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 02:09:13,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:09:13,435.435 INFO    ] Checking for system updates...
[2026-08-25 02:09:13,473.473 INFO    ] 200
[2026-08-25 02:09:13,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:13,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:09:13,529.529 INFO    ] No update needed
[2026-08-25 02:09:13,531.531 INFO    ] Checking for camera pi updates...
[2026-08-25 02:09:13,567.567 INFO    ] 200
[2026-08-25 02:09:13,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:13,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:09:13,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:09:13,760.760 INFO    ] No camera update needed
[2026-08-25 02:09:13,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:09:13,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:09:13,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:09:13,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:09:15,817.817 INFO    ] ================================================
[2026-08-25 02:09:15,833.833 INFO    ] Launching Daemon at Tue Aug 25 02:09:15 IST 2026
[2026-08-25 02:09:15,844.844 INFO    ] ================================================
[2026-08-25 02:09:16,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:09:16
[2026-08-25 02:09:17,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:09:17,402.402 INFO    ] Initializing speech engine...
[2026-08-25 02:09:17,415.415 INFO    ] 2026-08-25 02:09:17
[2026-08-25 02:09:17,679.679 INFO    ] 2026-08-25 02:09:17
[2026-08-25 02:09:17,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:09:17,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:09:17,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:09:18,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:09:18,158.158 INFO    ] time= 25/08/2026 02:09:18
[2026-08-25 02:09:18,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:09:18,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:09:18,380.380 INFO    ] No existing commands found in stream
[2026-08-25 02:09:23,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:09:23,413.413 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 02:09:26,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:09:26,359.359 INFO    ] Checking for system updates...
[2026-08-25 02:09:26,398.398 INFO    ] 200
[2026-08-25 02:09:26,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:26,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:09:26,458.458 INFO    ] No update needed
[2026-08-25 02:09:26,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 02:09:26,495.495 INFO    ] 200
[2026-08-25 02:09:26,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:26,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:09:26,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:09:26,599.599 INFO    ] No camera update needed
[2026-08-25 02:09:26,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:09:26,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:09:26,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:09:26,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:09:28,654.654 INFO    ] ================================================
[2026-08-25 02:09:28,669.669 INFO    ] Launching Daemon at Tue Aug 25 02:09:28 IST 2026
[2026-08-25 02:09:28,680.680 INFO    ] ================================================
[2026-08-25 02:09:29,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:09:29
[2026-08-25 02:09:29,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:09:30,095.095 INFO    ] Initializing speech engine...
[2026-08-25 02:09:30,106.106 INFO    ] 2026-08-25 02:09:30
[2026-08-25 02:09:30,350.350 INFO    ] 2026-08-25 02:09:30
[2026-08-25 02:09:30,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:09:30,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:09:30,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:09:30,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:09:30,725.725 INFO    ] time= 25/08/2026 02:09:30
[2026-08-25 02:09:30,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:09:30,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:09:30,892.892 INFO    ] No existing commands found in stream
[2026-08-25 02:09:35,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:09:35,925.925 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 02:09:38,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:09:38,447.447 INFO    ] Checking for system updates...
[2026-08-25 02:09:38,483.483 INFO    ] 200
[2026-08-25 02:09:38,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:38,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:09:38,540.540 INFO    ] No update needed
[2026-08-25 02:09:38,542.542 INFO    ] Checking for camera pi updates...
[2026-08-25 02:09:38,576.576 INFO    ] 200
[2026-08-25 02:09:38,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:38,621.621 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:09:38,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:09:38,669.669 INFO    ] No camera update needed
[2026-08-25 02:09:38,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:09:38,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:09:38,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:09:38,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:09:40,725.725 INFO    ] ================================================
[2026-08-25 02:09:40,740.740 INFO    ] Launching Daemon at Tue Aug 25 02:09:40 IST 2026
[2026-08-25 02:09:40,751.751 INFO    ] ================================================
[2026-08-25 02:09:41,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:09:41
[2026-08-25 02:09:41,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:09:42,177.177 INFO    ] Initializing speech engine...
[2026-08-25 02:09:42,185.185 INFO    ] 2026-08-25 02:09:42
[2026-08-25 02:09:42,441.441 INFO    ] 2026-08-25 02:09:42
[2026-08-25 02:09:42,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:09:42,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:09:42,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:09:42,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:09:42,915.915 INFO    ] time= 25/08/2026 02:09:42
[2026-08-25 02:09:42,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:09:43,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:09:43,076.076 INFO    ] No existing commands found in stream
[2026-08-25 02:09:48,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:09:48,116.116 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 02:09:52,034.034 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:09:52,037.037 INFO    ] Checking for system updates...
[2026-08-25 02:09:52,072.072 INFO    ] 200
[2026-08-25 02:09:52,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:52,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:09:52,138.138 INFO    ] No update needed
[2026-08-25 02:09:52,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 02:09:52,173.173 INFO    ] 200
[2026-08-25 02:09:52,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:09:52,218.218 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:09:52,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:09:52,268.268 INFO    ] No camera update needed
[2026-08-25 02:09:52,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:09:52,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:09:52,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:09:52,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:09:54,322.322 INFO    ] ================================================
[2026-08-25 02:09:54,337.337 INFO    ] Launching Daemon at Tue Aug 25 02:09:54 IST 2026
[2026-08-25 02:09:54,348.348 INFO    ] ================================================
[2026-08-25 02:09:54,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:09:54
[2026-08-25 02:09:55,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:09:55,782.782 INFO    ] Initializing speech engine...
[2026-08-25 02:09:55,790.790 INFO    ] 2026-08-25 02:09:55
[2026-08-25 02:09:56,036.036 INFO    ] 2026-08-25 02:09:56
[2026-08-25 02:09:56,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:09:56,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:09:56,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:09:56,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:09:56,508.508 INFO    ] time= 25/08/2026 02:09:56
[2026-08-25 02:09:56,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:09:56,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:09:56,728.728 INFO    ] No existing commands found in stream
[2026-08-25 02:10:01,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:10:01,762.762 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 02:10:08,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:10:08,349.349 INFO    ] Checking for system updates...
[2026-08-25 02:10:08,385.385 INFO    ] 200
[2026-08-25 02:10:08,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:08,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:10:08,447.447 INFO    ] No update needed
[2026-08-25 02:10:08,450.450 INFO    ] Checking for camera pi updates...
[2026-08-25 02:10:08,483.483 INFO    ] 200
[2026-08-25 02:10:08,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:08,533.533 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:10:08,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:10:08,589.589 INFO    ] No camera update needed
[2026-08-25 02:10:08,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:10:08,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:10:08,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:10:08,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:10:10,646.646 INFO    ] ================================================
[2026-08-25 02:10:10,661.661 INFO    ] Launching Daemon at Tue Aug 25 02:10:10 IST 2026
[2026-08-25 02:10:10,672.672 INFO    ] ================================================
[2026-08-25 02:10:11,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:10:11
[2026-08-25 02:10:11,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:10:12,116.116 INFO    ] Initializing speech engine...
[2026-08-25 02:10:12,124.124 INFO    ] 2026-08-25 02:10:12
[2026-08-25 02:10:12,390.390 INFO    ] 2026-08-25 02:10:12
[2026-08-25 02:10:12,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:10:12,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:10:12,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:10:12,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:10:12,797.797 INFO    ] time= 25/08/2026 02:10:12
[2026-08-25 02:10:12,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:10:12,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:10:12,965.965 INFO    ] No existing commands found in stream
[2026-08-25 02:10:17,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:10:17,990.990 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 02:10:18,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:10:18,979.979 INFO    ] Checking for system updates...
[2026-08-25 02:10:19,015.015 INFO    ] 200
[2026-08-25 02:10:19,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:19,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:10:19,077.077 INFO    ] No update needed
[2026-08-25 02:10:19,080.080 INFO    ] Checking for camera pi updates...
[2026-08-25 02:10:19,113.113 INFO    ] 200
[2026-08-25 02:10:19,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:19,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:10:19,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:10:19,212.212 INFO    ] No camera update needed
[2026-08-25 02:10:19,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:10:19,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:10:19,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:10:19,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:10:21,269.269 INFO    ] ================================================
[2026-08-25 02:10:21,284.284 INFO    ] Launching Daemon at Tue Aug 25 02:10:21 IST 2026
[2026-08-25 02:10:21,295.295 INFO    ] ================================================
[2026-08-25 02:10:21,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:10:21
[2026-08-25 02:10:22,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:10:22,705.705 INFO    ] Initializing speech engine...
[2026-08-25 02:10:22,723.723 INFO    ] 2026-08-25 02:10:22
[2026-08-25 02:10:22,973.973 INFO    ] 2026-08-25 02:10:22
[2026-08-25 02:10:23,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:10:23,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:10:23,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:10:23,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:10:23,455.455 INFO    ] time= 25/08/2026 02:10:23
[2026-08-25 02:10:23,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:10:23,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:10:23,686.686 INFO    ] No existing commands found in stream
[2026-08-25 02:10:28,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:10:28,711.711 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 02:10:32,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:10:32,785.785 INFO    ] Checking for system updates...
[2026-08-25 02:10:32,828.828 INFO    ] 200
[2026-08-25 02:10:32,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:32,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:10:32,904.904 INFO    ] No update needed
[2026-08-25 02:10:32,907.907 INFO    ] Checking for camera pi updates...
[2026-08-25 02:10:32,954.954 INFO    ] 200
[2026-08-25 02:10:32,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:33,004.004 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:10:33,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:10:33,066.066 INFO    ] No camera update needed
[2026-08-25 02:10:33,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:10:33,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:10:33,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:10:33,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:10:35,123.123 INFO    ] ================================================
[2026-08-25 02:10:35,138.138 INFO    ] Launching Daemon at Tue Aug 25 02:10:35 IST 2026
[2026-08-25 02:10:35,148.148 INFO    ] ================================================
[2026-08-25 02:10:35,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:10:35
[2026-08-25 02:10:36,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:10:36,702.702 INFO    ] Initializing speech engine...
[2026-08-25 02:10:36,709.709 INFO    ] 2026-08-25 02:10:36
[2026-08-25 02:10:36,978.978 INFO    ] 2026-08-25 02:10:36
[2026-08-25 02:10:37,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:10:37,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:10:37,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:10:37,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:10:37,477.477 INFO    ] time= 25/08/2026 02:10:37
[2026-08-25 02:10:37,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:10:37,556.556 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:10:37,707.707 INFO    ] No existing commands found in stream
[2026-08-25 02:10:42,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:10:42,722.722 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 02:10:45,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:10:45,023.023 INFO    ] Checking for system updates...
[2026-08-25 02:10:45,064.064 INFO    ] 200
[2026-08-25 02:10:45,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:45,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:10:45,128.128 INFO    ] No update needed
[2026-08-25 02:10:45,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 02:10:45,167.167 INFO    ] 200
[2026-08-25 02:10:45,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:45,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:10:45,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:10:45,264.264 INFO    ] No camera update needed
[2026-08-25 02:10:45,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:10:45,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:10:45,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:10:45,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:10:47,323.323 INFO    ] ================================================
[2026-08-25 02:10:47,339.339 INFO    ] Launching Daemon at Tue Aug 25 02:10:47 IST 2026
[2026-08-25 02:10:47,349.349 INFO    ] ================================================
[2026-08-25 02:10:47,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:10:47
[2026-08-25 02:10:48,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:10:48,747.747 INFO    ] Initializing speech engine...
[2026-08-25 02:10:48,769.769 INFO    ] 2026-08-25 02:10:48
[2026-08-25 02:10:49,023.023 INFO    ] 2026-08-25 02:10:49
[2026-08-25 02:10:49,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:10:49,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:10:49,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:10:49,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:10:49,509.509 INFO    ] time= 25/08/2026 02:10:49
[2026-08-25 02:10:49,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:10:49,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:10:49,738.738 INFO    ] No existing commands found in stream
[2026-08-25 02:10:54,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:10:54,762.762 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 02:10:56,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:10:56,615.615 INFO    ] Checking for system updates...
[2026-08-25 02:10:56,650.650 INFO    ] 200
[2026-08-25 02:10:56,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:56,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:10:56,706.706 INFO    ] No update needed
[2026-08-25 02:10:56,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 02:10:56,744.744 INFO    ] 200
[2026-08-25 02:10:56,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:10:56,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:10:56,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:10:56,835.835 INFO    ] No camera update needed
[2026-08-25 02:10:56,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:10:56,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:10:56,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:10:56,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:10:58,890.890 INFO    ] ================================================
[2026-08-25 02:10:58,906.906 INFO    ] Launching Daemon at Tue Aug 25 02:10:58 IST 2026
[2026-08-25 02:10:58,917.917 INFO    ] ================================================
[2026-08-25 02:10:59,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:10:59
[2026-08-25 02:11:00,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:11:00,326.326 INFO    ] Initializing speech engine...
[2026-08-25 02:11:00,338.338 INFO    ] 2026-08-25 02:11:00
[2026-08-25 02:11:00,614.614 INFO    ] 2026-08-25 02:11:00
[2026-08-25 02:11:00,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:11:00,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:11:00,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:11:00,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:11:00,995.995 INFO    ] time= 25/08/2026 02:11:00
[2026-08-25 02:11:01,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:11:01,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:11:01,101.101 INFO    ] No existing commands found in stream
[2026-08-25 02:11:06,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:11:06,129.129 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 02:11:06,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:11:06,915.915 INFO    ] Checking for system updates...
[2026-08-25 02:11:06,953.953 INFO    ] 200
[2026-08-25 02:11:06,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:07,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:07,011.011 INFO    ] No update needed
[2026-08-25 02:11:07,014.014 INFO    ] Checking for camera pi updates...
[2026-08-25 02:11:07,048.048 INFO    ] 200
[2026-08-25 02:11:07,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:07,109.109 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:11:07,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:07,159.159 INFO    ] No camera update needed
[2026-08-25 02:11:07,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:11:07,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:11:07,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:11:07,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:11:09,217.217 INFO    ] ================================================
[2026-08-25 02:11:09,233.233 INFO    ] Launching Daemon at Tue Aug 25 02:11:09 IST 2026
[2026-08-25 02:11:09,243.243 INFO    ] ================================================
[2026-08-25 02:11:09,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:11:09
[2026-08-25 02:11:10,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:11:10,790.790 INFO    ] Initializing speech engine...
[2026-08-25 02:11:10,798.798 INFO    ] 2026-08-25 02:11:10
[2026-08-25 02:11:11,064.064 INFO    ] 2026-08-25 02:11:11
[2026-08-25 02:11:11,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:11:11,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:11:11,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:11:11,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:11:11,552.552 INFO    ] time= 25/08/2026 02:11:11
[2026-08-25 02:11:11,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:11:11,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:11:11,736.736 INFO    ] No existing commands found in stream
[2026-08-25 02:11:16,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:11:16,770.770 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 02:11:20,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:11:20,350.350 INFO    ] Checking for system updates...
[2026-08-25 02:11:20,387.387 INFO    ] 200
[2026-08-25 02:11:20,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:20,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:20,446.446 INFO    ] No update needed
[2026-08-25 02:11:20,448.448 INFO    ] Checking for camera pi updates...
[2026-08-25 02:11:20,483.483 INFO    ] 200
[2026-08-25 02:11:20,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:20,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:11:20,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:20,681.681 INFO    ] No camera update needed
[2026-08-25 02:11:20,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:11:20,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:11:20,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:11:20,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:11:22,738.738 INFO    ] ================================================
[2026-08-25 02:11:22,754.754 INFO    ] Launching Daemon at Tue Aug 25 02:11:22 IST 2026
[2026-08-25 02:11:22,765.765 INFO    ] ================================================
[2026-08-25 02:11:23,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:11:23
[2026-08-25 02:11:23,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:11:24,273.273 INFO    ] Initializing speech engine...
[2026-08-25 02:11:24,284.284 INFO    ] 2026-08-25 02:11:24
[2026-08-25 02:11:24,547.547 INFO    ] 2026-08-25 02:11:24
[2026-08-25 02:11:24,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:11:24,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:11:24,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:11:24,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:11:25,012.012 INFO    ] time= 25/08/2026 02:11:24
[2026-08-25 02:11:25,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:11:25,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:11:25,248.248 INFO    ] No existing commands found in stream
[2026-08-25 02:11:30,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:11:30,269.269 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 02:11:34,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:11:34,416.416 INFO    ] Checking for system updates...
[2026-08-25 02:11:34,452.452 INFO    ] 200
[2026-08-25 02:11:34,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:34,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:34,516.516 INFO    ] No update needed
[2026-08-25 02:11:34,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 02:11:34,551.551 INFO    ] 200
[2026-08-25 02:11:34,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:34,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:11:34,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:34,653.653 INFO    ] No camera update needed
[2026-08-25 02:11:34,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:11:34,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:11:34,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:11:34,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:11:36,708.708 INFO    ] ================================================
[2026-08-25 02:11:36,723.723 INFO    ] Launching Daemon at Tue Aug 25 02:11:36 IST 2026
[2026-08-25 02:11:36,734.734 INFO    ] ================================================
[2026-08-25 02:11:37,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:11:37
[2026-08-25 02:11:37,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:11:38,215.215 INFO    ] Initializing speech engine...
[2026-08-25 02:11:38,224.224 INFO    ] 2026-08-25 02:11:38
[2026-08-25 02:11:38,476.476 INFO    ] 2026-08-25 02:11:38
[2026-08-25 02:11:38,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:11:38,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:11:38,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:11:38,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:11:38,958.958 INFO    ] time= 25/08/2026 02:11:38
[2026-08-25 02:11:39,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:11:39,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:11:39,174.174 INFO    ] No existing commands found in stream
[2026-08-25 02:11:44,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:11:44,199.199 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 02:11:47,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:11:47,464.464 INFO    ] Checking for system updates...
[2026-08-25 02:11:47,501.501 INFO    ] 200
[2026-08-25 02:11:47,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:47,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:11:47,561.561 INFO    ] No update needed
[2026-08-25 02:11:47,564.564 INFO    ] Checking for camera pi updates...
[2026-08-25 02:11:47,602.602 INFO    ] 200
[2026-08-25 02:11:47,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:47,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:11:47,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:11:47,701.701 INFO    ] No camera update needed
[2026-08-25 02:11:47,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:11:47,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:11:47,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:11:47,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:11:49,758.758 INFO    ] ================================================
[2026-08-25 02:11:49,773.773 INFO    ] Launching Daemon at Tue Aug 25 02:11:49 IST 2026
[2026-08-25 02:11:49,784.784 INFO    ] ================================================
[2026-08-25 02:11:50,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:11:50
[2026-08-25 02:11:50,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:11:51,199.199 INFO    ] Initializing speech engine...
[2026-08-25 02:11:51,211.211 INFO    ] 2026-08-25 02:11:51
[2026-08-25 02:11:51,463.463 INFO    ] 2026-08-25 02:11:51
[2026-08-25 02:11:51,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:11:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:11:51,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:11:51,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:11:51,840.840 INFO    ] time= 25/08/2026 02:11:51
[2026-08-25 02:11:51,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:11:51,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:11:52,004.004 INFO    ] No existing commands found in stream
[2026-08-25 02:11:57,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:11:57,032.032 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 02:11:58,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:11:58,346.346 INFO    ] Checking for system updates...
[2026-08-25 02:11:58,381.381 INFO    ] 200
[2026-08-25 02:11:58,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:58,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:58,441.441 INFO    ] No update needed
[2026-08-25 02:11:58,443.443 INFO    ] Checking for camera pi updates...
[2026-08-25 02:11:58,477.477 INFO    ] 200
[2026-08-25 02:11:58,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:11:58,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:11:58,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:11:58,569.569 INFO    ] No camera update needed
[2026-08-25 02:11:58,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:11:58,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:11:58,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:11:58,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:12:00,635.635 INFO    ] ================================================
[2026-08-25 02:12:00,651.651 INFO    ] Launching Daemon at Tue Aug 25 02:12:00 IST 2026
[2026-08-25 02:12:00,663.663 INFO    ] ================================================
[2026-08-25 02:12:01,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:12:01
[2026-08-25 02:12:01,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:12:02,409.409 INFO    ] Initializing speech engine...
[2026-08-25 02:12:02,413.413 INFO    ] 2026-08-25 02:12:02
[2026-08-25 02:12:02,737.737 INFO    ] 2026-08-25 02:12:02
[2026-08-25 02:12:02,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:12:03,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:12:03,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:12:03,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:12:03,281.281 INFO    ] time= 25/08/2026 02:12:03
[2026-08-25 02:12:03,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:12:03,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:12:03,451.451 INFO    ] No existing commands found in stream
[2026-08-25 02:12:08,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:12:08,479.479 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 02:12:12,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:12:12,111.111 INFO    ] Checking for system updates...
[2026-08-25 02:12:12,153.153 INFO    ] 200
[2026-08-25 02:12:12,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:12,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:12:12,212.212 INFO    ] No update needed
[2026-08-25 02:12:12,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 02:12:12,254.254 INFO    ] 200
[2026-08-25 02:12:12,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:12,298.298 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:12:12,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:12:12,348.348 INFO    ] No camera update needed
[2026-08-25 02:12:12,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:12:12,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:12:12,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:12:12,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:12:14,408.408 INFO    ] ================================================
[2026-08-25 02:12:14,425.425 INFO    ] Launching Daemon at Tue Aug 25 02:12:14 IST 2026
[2026-08-25 02:12:14,437.437 INFO    ] ================================================
[2026-08-25 02:12:15,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:12:15
[2026-08-25 02:12:15,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:12:15,858.858 INFO    ] Initializing speech engine...
[2026-08-25 02:12:15,868.868 INFO    ] 2026-08-25 02:12:15
[2026-08-25 02:12:16,112.112 INFO    ] 2026-08-25 02:12:16
[2026-08-25 02:12:16,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:12:16,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:12:16,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:12:16,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:12:16,601.601 INFO    ] time= 25/08/2026 02:12:16
[2026-08-25 02:12:16,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:12:16,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:12:16,839.839 INFO    ] No existing commands found in stream
[2026-08-25 02:12:21,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:12:21,872.872 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 02:12:25,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:12:25,675.675 INFO    ] Checking for system updates...
[2026-08-25 02:12:25,711.711 INFO    ] 200
[2026-08-25 02:12:25,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:25,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:12:25,770.770 INFO    ] No update needed
[2026-08-25 02:12:25,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 02:12:25,806.806 INFO    ] 200
[2026-08-25 02:12:25,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:25,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:12:25,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:12:25,916.916 INFO    ] No camera update needed
[2026-08-25 02:12:25,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:12:25,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:12:25,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:12:25,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:12:27,972.972 INFO    ] ================================================
[2026-08-25 02:12:27,987.987 INFO    ] Launching Daemon at Tue Aug 25 02:12:27 IST 2026
[2026-08-25 02:12:28,998.998 INFO    ] ================================================
[2026-08-25 02:12:28,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:12:28
[2026-08-25 02:12:29,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:12:29,657.657 INFO    ] Initializing speech engine...
[2026-08-25 02:12:29,666.666 INFO    ] 2026-08-25 02:12:29
[2026-08-25 02:12:29,989.989 INFO    ] 2026-08-25 02:12:29
[2026-08-25 02:12:30,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:12:30,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:12:30,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:12:30,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:12:30,489.489 INFO    ] time= 25/08/2026 02:12:30
[2026-08-25 02:12:30,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:12:30,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:12:30,642.642 INFO    ] No existing commands found in stream
[2026-08-25 02:12:35,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:12:35,657.657 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 02:12:37,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:12:37,513.513 INFO    ] Checking for system updates...
[2026-08-25 02:12:37,549.549 INFO    ] 200
[2026-08-25 02:12:37,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:37,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:12:37,609.609 INFO    ] No update needed
[2026-08-25 02:12:37,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 02:12:37,647.647 INFO    ] 200
[2026-08-25 02:12:37,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:37,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:12:37,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:12:37,744.744 INFO    ] No camera update needed
[2026-08-25 02:12:37,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:12:37,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:12:37,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:12:37,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:12:39,800.800 INFO    ] ================================================
[2026-08-25 02:12:39,815.815 INFO    ] Launching Daemon at Tue Aug 25 02:12:39 IST 2026
[2026-08-25 02:12:39,826.826 INFO    ] ================================================
[2026-08-25 02:12:40,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:12:40
[2026-08-25 02:12:41,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:12:41,286.286 INFO    ] Initializing speech engine...
[2026-08-25 02:12:41,297.297 INFO    ] 2026-08-25 02:12:41
[2026-08-25 02:12:41,557.557 INFO    ] 2026-08-25 02:12:41
[2026-08-25 02:12:41,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:12:41,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:12:41,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:12:41,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:12:42,050.050 INFO    ] time= 25/08/2026 02:12:41
[2026-08-25 02:12:42,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:12:42,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:12:42,250.250 INFO    ] No existing commands found in stream
[2026-08-25 02:12:47,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:12:47,273.273 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 02:12:51,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:12:51,361.361 INFO    ] Checking for system updates...
[2026-08-25 02:12:51,397.397 INFO    ] 200
[2026-08-25 02:12:51,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:51,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:12:51,454.454 INFO    ] No update needed
[2026-08-25 02:12:51,457.457 INFO    ] Checking for camera pi updates...
[2026-08-25 02:12:51,490.490 INFO    ] 200
[2026-08-25 02:12:51,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:12:51,533.533 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:12:51,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:12:51,582.582 INFO    ] No camera update needed
[2026-08-25 02:12:51,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:12:51,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:12:51,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:12:51,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:12:53,638.638 INFO    ] ================================================
[2026-08-25 02:12:53,653.653 INFO    ] Launching Daemon at Tue Aug 25 02:12:53 IST 2026
[2026-08-25 02:12:53,664.664 INFO    ] ================================================
[2026-08-25 02:12:54,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:12:54
[2026-08-25 02:12:54,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:12:55,132.132 INFO    ] Initializing speech engine...
[2026-08-25 02:12:55,143.143 INFO    ] 2026-08-25 02:12:55
[2026-08-25 02:12:55,402.402 INFO    ] 2026-08-25 02:12:55
[2026-08-25 02:12:55,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:12:55,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:12:55,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:12:55,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:12:55,861.861 INFO    ] time= 25/08/2026 02:12:55
[2026-08-25 02:12:55,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:12:55,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:12:56,076.076 INFO    ] No existing commands found in stream
[2026-08-25 02:13:01,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:13:01,109.109 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 02:13:02,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:13:02,235.235 INFO    ] Checking for system updates...
[2026-08-25 02:13:02,275.275 INFO    ] 200
[2026-08-25 02:13:02,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:02,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:13:02,356.356 INFO    ] No update needed
[2026-08-25 02:13:02,360.360 INFO    ] Checking for camera pi updates...
[2026-08-25 02:13:02,409.409 INFO    ] 200
[2026-08-25 02:13:02,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:02,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:13:02,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:13:02,542.542 INFO    ] No camera update needed
[2026-08-25 02:13:02,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:13:02,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:13:02,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:13:02,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:13:04,604.604 INFO    ] ================================================
[2026-08-25 02:13:04,619.619 INFO    ] Launching Daemon at Tue Aug 25 02:13:04 IST 2026
[2026-08-25 02:13:04,630.630 INFO    ] ================================================
[2026-08-25 02:13:05,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:13:05
[2026-08-25 02:13:05,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:13:06,048.048 INFO    ] Initializing speech engine...
[2026-08-25 02:13:06,053.053 INFO    ] 2026-08-25 02:13:06
[2026-08-25 02:13:06,329.329 INFO    ] 2026-08-25 02:13:06
[2026-08-25 02:13:06,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:13:06,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:13:06,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:13:06,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:13:06,783.783 INFO    ] time= 25/08/2026 02:13:06
[2026-08-25 02:13:06,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:13:06,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:13:06,979.979 INFO    ] No existing commands found in stream
[2026-08-25 02:13:11,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:13:11,997.997 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 02:13:14,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:13:14,906.906 INFO    ] Checking for system updates...
[2026-08-25 02:13:14,945.945 INFO    ] 200
[2026-08-25 02:13:14,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:15,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:13:15,002.002 INFO    ] No update needed
[2026-08-25 02:13:15,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 02:13:15,041.041 INFO    ] 200
[2026-08-25 02:13:15,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:15,084.084 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:13:15,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:13:15,136.136 INFO    ] No camera update needed
[2026-08-25 02:13:15,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:13:15,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:13:15,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:13:15,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:13:17,191.191 INFO    ] ================================================
[2026-08-25 02:13:17,206.206 INFO    ] Launching Daemon at Tue Aug 25 02:13:17 IST 2026
[2026-08-25 02:13:17,217.217 INFO    ] ================================================
[2026-08-25 02:13:17,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:13:17
[2026-08-25 02:13:18,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:13:18,673.673 INFO    ] Initializing speech engine...
[2026-08-25 02:13:18,682.682 INFO    ] 2026-08-25 02:13:18
[2026-08-25 02:13:18,942.942 INFO    ] 2026-08-25 02:13:18
[2026-08-25 02:13:18,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:13:19,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:13:19,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:13:19,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:13:19,428.428 INFO    ] time= 25/08/2026 02:13:19
[2026-08-25 02:13:19,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:13:19,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:13:19,615.615 INFO    ] No existing commands found in stream
[2026-08-25 02:13:24,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:13:24,647.647 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 02:13:25,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:13:25,322.322 INFO    ] Checking for system updates...
[2026-08-25 02:13:25,357.357 INFO    ] 200
[2026-08-25 02:13:25,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:25,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:13:25,415.415 INFO    ] No update needed
[2026-08-25 02:13:25,417.417 INFO    ] Checking for camera pi updates...
[2026-08-25 02:13:25,453.453 INFO    ] 200
[2026-08-25 02:13:25,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:25,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:13:25,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:13:25,641.641 INFO    ] No camera update needed
[2026-08-25 02:13:25,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:13:25,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:13:25,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:13:25,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:13:27,696.696 INFO    ] ================================================
[2026-08-25 02:13:27,714.714 INFO    ] Launching Daemon at Tue Aug 25 02:13:27 IST 2026
[2026-08-25 02:13:27,780.780 INFO    ] ================================================
[2026-08-25 02:13:28,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:13:28
[2026-08-25 02:13:28,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:13:29,239.239 INFO    ] Initializing speech engine...
[2026-08-25 02:13:29,245.245 INFO    ] 2026-08-25 02:13:29
[2026-08-25 02:13:29,505.505 INFO    ] 2026-08-25 02:13:29
[2026-08-25 02:13:29,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:13:29,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:13:29,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:13:29,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:13:29,964.964 INFO    ] time= 25/08/2026 02:13:29
[2026-08-25 02:13:30,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:13:30,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:13:30,201.201 INFO    ] No existing commands found in stream
[2026-08-25 02:13:35,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:13:35,218.218 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 02:13:37,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:13:37,734.734 INFO    ] Checking for system updates...
[2026-08-25 02:13:37,770.770 INFO    ] 200
[2026-08-25 02:13:37,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:37,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:13:37,885.885 INFO    ] No update needed
[2026-08-25 02:13:37,888.888 INFO    ] Checking for camera pi updates...
[2026-08-25 02:13:37,926.926 INFO    ] 200
[2026-08-25 02:13:37,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:37,968.968 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:13:38,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:13:38,018.018 INFO    ] No camera update needed
[2026-08-25 02:13:38,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:13:38,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:13:38,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:13:38,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:13:40,076.076 INFO    ] ================================================
[2026-08-25 02:13:40,091.091 INFO    ] Launching Daemon at Tue Aug 25 02:13:40 IST 2026
[2026-08-25 02:13:40,102.102 INFO    ] ================================================
[2026-08-25 02:13:40,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:13:40
[2026-08-25 02:13:41,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:13:41,499.499 INFO    ] Initializing speech engine...
[2026-08-25 02:13:41,506.506 INFO    ] 2026-08-25 02:13:41
[2026-08-25 02:13:41,807.807 INFO    ] 2026-08-25 02:13:41
[2026-08-25 02:13:41,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:13:42,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:13:42,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:13:42,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:13:42,185.185 INFO    ] time= 25/08/2026 02:13:42
[2026-08-25 02:13:42,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:13:42,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:13:42,312.312 INFO    ] No existing commands found in stream
[2026-08-25 02:13:47,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:13:47,325.325 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 02:13:48,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:13:48,660.660 INFO    ] Checking for system updates...
[2026-08-25 02:13:48,696.696 INFO    ] 200
[2026-08-25 02:13:48,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:48,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:13:48,759.759 INFO    ] No update needed
[2026-08-25 02:13:48,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 02:13:48,795.795 INFO    ] 200
[2026-08-25 02:13:48,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:13:48,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:13:48,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:13:48,893.893 INFO    ] No camera update needed
[2026-08-25 02:13:48,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:13:48,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:13:48,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:13:48,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:13:50,949.949 INFO    ] ================================================
[2026-08-25 02:13:50,964.964 INFO    ] Launching Daemon at Tue Aug 25 02:13:50 IST 2026
[2026-08-25 02:13:52,309.309 INFO    ] ================================================
[2026-08-25 02:13:52,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:13:52
[2026-08-25 02:13:53,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:13:53,710.710 INFO    ] Initializing speech engine...
[2026-08-25 02:13:53,719.719 INFO    ] 2026-08-25 02:13:53
[2026-08-25 02:13:54,012.012 INFO    ] 2026-08-25 02:13:53
[2026-08-25 02:13:54,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:13:54,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:13:54,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:13:54,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:13:54,424.424 INFO    ] time= 25/08/2026 02:13:54
[2026-08-25 02:13:54,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:13:54,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:13:54,515.515 INFO    ] No existing commands found in stream
[2026-08-25 02:13:59,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:13:59,532.532 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 02:14:00,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:14:00,755.755 INFO    ] Checking for system updates...
[2026-08-25 02:14:00,794.794 INFO    ] 200
[2026-08-25 02:14:00,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:00,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:14:00,851.851 INFO    ] No update needed
[2026-08-25 02:14:00,853.853 INFO    ] Checking for camera pi updates...
[2026-08-25 02:14:00,890.890 INFO    ] 200
[2026-08-25 02:14:00,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:00,932.932 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:14:00,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:14:00,979.979 INFO    ] No camera update needed
[2026-08-25 02:14:00,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:14:00,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:14:00,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:14:00,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:14:03,059.059 INFO    ] ================================================
[2026-08-25 02:14:03,079.079 INFO    ] Launching Daemon at Tue Aug 25 02:14:03 IST 2026
[2026-08-25 02:14:03,094.094 INFO    ] ================================================
[2026-08-25 02:14:03,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:14:03
[2026-08-25 02:14:04,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:14:04,600.600 INFO    ] Initializing speech engine...
[2026-08-25 02:14:04,613.613 INFO    ] 2026-08-25 02:14:04
[2026-08-25 02:14:04,863.863 INFO    ] 2026-08-25 02:14:04
[2026-08-25 02:14:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:14:05,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:14:05,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:14:05,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:14:05,341.341 INFO    ] time= 25/08/2026 02:14:05
[2026-08-25 02:14:05,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:14:05,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:14:05,576.576 INFO    ] No existing commands found in stream
[2026-08-25 02:14:10,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:14:10,599.599 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 02:14:13,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:14:13,194.194 INFO    ] Checking for system updates...
[2026-08-25 02:14:13,230.230 INFO    ] 200
[2026-08-25 02:14:13,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:13,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:14:13,286.286 INFO    ] No update needed
[2026-08-25 02:14:13,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 02:14:13,322.322 INFO    ] 200
[2026-08-25 02:14:13,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:13,368.368 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:14:13,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:14:13,424.424 INFO    ] No camera update needed
[2026-08-25 02:14:13,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:14:13,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:14:13,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:14:13,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:14:15,479.479 INFO    ] ================================================
[2026-08-25 02:14:15,495.495 INFO    ] Launching Daemon at Tue Aug 25 02:14:15 IST 2026
[2026-08-25 02:14:15,506.506 INFO    ] ================================================
[2026-08-25 02:14:16,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:14:16
[2026-08-25 02:14:16,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:14:16,928.928 INFO    ] Initializing speech engine...
[2026-08-25 02:14:16,937.937 INFO    ] 2026-08-25 02:14:16
[2026-08-25 02:14:17,182.182 INFO    ] 2026-08-25 02:14:17
[2026-08-25 02:14:17,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:14:17,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:14:17,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:14:17,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:14:17,557.557 INFO    ] time= 25/08/2026 02:14:17
[2026-08-25 02:14:17,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:14:17,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:14:17,711.711 INFO    ] No existing commands found in stream
[2026-08-25 02:14:22,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:14:22,744.744 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 02:14:25,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:14:25,464.464 INFO    ] Checking for system updates...
[2026-08-25 02:14:25,504.504 INFO    ] 200
[2026-08-25 02:14:25,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:25,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:14:25,570.570 INFO    ] No update needed
[2026-08-25 02:14:25,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 02:14:25,610.610 INFO    ] 200
[2026-08-25 02:14:25,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:25,654.654 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:14:25,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:14:25,706.706 INFO    ] No camera update needed
[2026-08-25 02:14:25,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:14:25,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:14:25,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:14:25,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:14:27,765.765 INFO    ] ================================================
[2026-08-25 02:14:27,780.780 INFO    ] Launching Daemon at Tue Aug 25 02:14:27 IST 2026
[2026-08-25 02:14:27,791.791 INFO    ] ================================================
[2026-08-25 02:14:28,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:14:28
[2026-08-25 02:14:28,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:14:29,194.194 INFO    ] Initializing speech engine...
[2026-08-25 02:14:29,209.209 INFO    ] 2026-08-25 02:14:29
[2026-08-25 02:14:29,474.474 INFO    ] 2026-08-25 02:14:29
[2026-08-25 02:14:29,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:14:29,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:14:29,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:14:29,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:14:29,849.849 INFO    ] time= 25/08/2026 02:14:29
[2026-08-25 02:14:29,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:14:29,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:14:29,927.927 INFO    ] No existing commands found in stream
[2026-08-25 02:14:34,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:14:34,959.959 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 02:14:39,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:14:39,312.312 INFO    ] Checking for system updates...
[2026-08-25 02:14:39,347.347 INFO    ] 200
[2026-08-25 02:14:39,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:39,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:14:39,409.409 INFO    ] No update needed
[2026-08-25 02:14:39,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 02:14:39,445.445 INFO    ] 200
[2026-08-25 02:14:39,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:39,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:14:39,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:14:39,543.543 INFO    ] No camera update needed
[2026-08-25 02:14:39,546.546 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:14:39,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:14:39,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:14:39,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:14:41,601.601 INFO    ] ================================================
[2026-08-25 02:14:41,615.615 INFO    ] Launching Daemon at Tue Aug 25 02:14:41 IST 2026
[2026-08-25 02:14:41,626.626 INFO    ] ================================================
[2026-08-25 02:14:42,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:14:42
[2026-08-25 02:14:42,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:14:43,041.041 INFO    ] Initializing speech engine...
[2026-08-25 02:14:43,050.050 INFO    ] 2026-08-25 02:14:43
[2026-08-25 02:14:43,303.303 INFO    ] 2026-08-25 02:14:43
[2026-08-25 02:14:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:14:43,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:14:43,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:14:43,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:14:43,758.758 INFO    ] time= 25/08/2026 02:14:43
[2026-08-25 02:14:43,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:14:43,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:14:43,986.986 INFO    ] No existing commands found in stream
[2026-08-25 02:14:49,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:14:49,010.010 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 02:14:49,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:14:49,957.957 INFO    ] Checking for system updates...
[2026-08-25 02:14:49,995.995 INFO    ] 200
[2026-08-25 02:14:49,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:50,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:14:50,051.051 INFO    ] No update needed
[2026-08-25 02:14:50,053.053 INFO    ] Checking for camera pi updates...
[2026-08-25 02:14:50,089.089 INFO    ] 200
[2026-08-25 02:14:50,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:14:50,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:14:50,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:14:50,181.181 INFO    ] No camera update needed
[2026-08-25 02:14:50,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:14:50,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:14:50,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:14:50,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:14:52,236.236 INFO    ] ================================================
[2026-08-25 02:14:52,250.250 INFO    ] Launching Daemon at Tue Aug 25 02:14:52 IST 2026
[2026-08-25 02:14:52,261.261 INFO    ] ================================================
[2026-08-25 02:14:52,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:14:52
[2026-08-25 02:14:53,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:14:53,862.862 INFO    ] Initializing speech engine...
[2026-08-25 02:14:53,874.874 INFO    ] 2026-08-25 02:14:53
[2026-08-25 02:14:54,183.183 INFO    ] 2026-08-25 02:14:54
[2026-08-25 02:14:54,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:14:54,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:14:54,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:14:54,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:14:54,681.681 INFO    ] time= 25/08/2026 02:14:54
[2026-08-25 02:14:54,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:14:54,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:14:54,842.842 INFO    ] No existing commands found in stream
[2026-08-25 02:14:59,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:14:59,871.871 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 02:15:01,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:15:01,933.933 INFO    ] Checking for system updates...
[2026-08-25 02:15:01,973.973 INFO    ] 200
[2026-08-25 02:15:01,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:02,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:15:02,102.102 INFO    ] No update needed
[2026-08-25 02:15:02,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 02:15:02,219.219 INFO    ] 200
[2026-08-25 02:15:02,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:02,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:15:02,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:15:02,552.552 INFO    ] No camera update needed
[2026-08-25 02:15:02,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:15:02,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:15:02,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:15:02,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:15:04,651.651 INFO    ] ================================================
[2026-08-25 02:15:04,666.666 INFO    ] Launching Daemon at Tue Aug 25 02:15:04 IST 2026
[2026-08-25 02:15:04,677.677 INFO    ] ================================================
[2026-08-25 02:15:05,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:15:05
[2026-08-25 02:15:05,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:15:06,105.105 INFO    ] Initializing speech engine...
[2026-08-25 02:15:06,113.113 INFO    ] 2026-08-25 02:15:06
[2026-08-25 02:15:06,365.365 INFO    ] 2026-08-25 02:15:06
[2026-08-25 02:15:06,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:15:06,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:15:06,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:15:06,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:15:06,744.744 INFO    ] time= 25/08/2026 02:15:06
[2026-08-25 02:15:06,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:15:06,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:15:06,941.941 INFO    ] No existing commands found in stream
[2026-08-25 02:15:11,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:15:11,959.959 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 02:15:15,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:15:15,043.043 INFO    ] Checking for system updates...
[2026-08-25 02:15:15,099.099 INFO    ] 200
[2026-08-25 02:15:15,101.101 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:15,104.104 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 02:15:15,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 02:15:15,163.163 INFO    ] 200
[2026-08-25 02:15:15,166.166 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:15,168.168 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 02:15:15,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:15:15,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:15:15,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:15:15,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:15:17,227.227 INFO    ] ================================================
[2026-08-25 02:15:17,245.245 INFO    ] Launching Daemon at Tue Aug 25 02:15:17 IST 2026
[2026-08-25 02:15:17,257.257 INFO    ] ================================================
[2026-08-25 02:15:17,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:15:17
[2026-08-25 02:15:18,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:15:18,744.744 INFO    ] Initializing speech engine...
[2026-08-25 02:15:18,751.751 INFO    ] 2026-08-25 02:15:18
[2026-08-25 02:15:19,053.053 INFO    ] 2026-08-25 02:15:19
[2026-08-25 02:15:19,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:15:19,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:15:19,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:15:19,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:15:19,443.443 INFO    ] time= 25/08/2026 02:15:19
[2026-08-25 02:15:19,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:15:19,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:15:19,570.570 INFO    ] No existing commands found in stream
[2026-08-25 02:15:24,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:15:24,585.585 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 02:15:26,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:15:26,040.040 INFO    ] Checking for system updates...
[2026-08-25 02:15:26,076.076 INFO    ] 200
[2026-08-25 02:15:26,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:26,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:15:26,144.144 INFO    ] No update needed
[2026-08-25 02:15:26,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 02:15:26,180.180 INFO    ] 200
[2026-08-25 02:15:26,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:26,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:15:26,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:15:26,271.271 INFO    ] No camera update needed
[2026-08-25 02:15:26,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:15:26,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:15:26,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:15:26,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:15:28,326.326 INFO    ] ================================================
[2026-08-25 02:15:28,344.344 INFO    ] Launching Daemon at Tue Aug 25 02:15:28 IST 2026
[2026-08-25 02:15:28,361.361 INFO    ] ================================================
[2026-08-25 02:15:28,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:15:28
[2026-08-25 02:15:29,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:15:29,941.941 INFO    ] Initializing speech engine...
[2026-08-25 02:15:29,953.953 INFO    ] 2026-08-25 02:15:29
[2026-08-25 02:15:30,266.266 INFO    ] 2026-08-25 02:15:30
[2026-08-25 02:15:30,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:15:30,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:15:30,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:15:30,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:15:30,778.778 INFO    ] time= 25/08/2026 02:15:30
[2026-08-25 02:15:30,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:15:30,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:15:30,932.932 INFO    ] No existing commands found in stream
[2026-08-25 02:15:35,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:15:35,957.957 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 02:15:39,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:15:39,636.636 INFO    ] Checking for system updates...
[2026-08-25 02:15:39,678.678 INFO    ] 200
[2026-08-25 02:15:39,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:39,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:15:39,736.736 INFO    ] No update needed
[2026-08-25 02:15:39,739.739 INFO    ] Checking for camera pi updates...
[2026-08-25 02:15:39,777.777 INFO    ] 200
[2026-08-25 02:15:39,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:39,825.825 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:15:39,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:15:39,874.874 INFO    ] No camera update needed
[2026-08-25 02:15:39,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:15:39,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:15:39,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:15:39,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:15:41,929.929 INFO    ] ================================================
[2026-08-25 02:15:41,945.945 INFO    ] Launching Daemon at Tue Aug 25 02:15:41 IST 2026
[2026-08-25 02:15:41,956.956 INFO    ] ================================================
[2026-08-25 02:15:42,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:15:42
[2026-08-25 02:15:43,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:15:43,424.424 INFO    ] Initializing speech engine...
[2026-08-25 02:15:43,433.433 INFO    ] 2026-08-25 02:15:43
[2026-08-25 02:15:43,682.682 INFO    ] 2026-08-25 02:15:43
[2026-08-25 02:15:43,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:15:43,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:15:43,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:15:44,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:15:44,054.054 INFO    ] time= 25/08/2026 02:15:44
[2026-08-25 02:15:44,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:15:44,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:15:44,246.246 INFO    ] No existing commands found in stream
[2026-08-25 02:15:49,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:15:49,262.262 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 02:15:49,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:15:49,717.717 INFO    ] Checking for system updates...
[2026-08-25 02:15:49,759.759 INFO    ] 200
[2026-08-25 02:15:49,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:49,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:15:49,815.815 INFO    ] No update needed
[2026-08-25 02:15:49,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 02:15:49,851.851 INFO    ] 200
[2026-08-25 02:15:49,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:15:49,899.899 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:15:49,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:15:49,955.955 INFO    ] No camera update needed
[2026-08-25 02:15:49,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:15:49,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:15:49,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:15:49,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:15:52,012.012 INFO    ] ================================================
[2026-08-25 02:15:52,028.028 INFO    ] Launching Daemon at Tue Aug 25 02:15:52 IST 2026
[2026-08-25 02:15:52,039.039 INFO    ] ================================================
[2026-08-25 02:15:52,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:15:52
[2026-08-25 02:15:53,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:15:53,498.498 INFO    ] Initializing speech engine...
[2026-08-25 02:15:53,509.509 INFO    ] 2026-08-25 02:15:53
[2026-08-25 02:15:53,771.771 INFO    ] 2026-08-25 02:15:53
[2026-08-25 02:15:53,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:15:54,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:15:54,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:15:54,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:15:54,256.256 INFO    ] time= 25/08/2026 02:15:54
[2026-08-25 02:15:54,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:15:54,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:15:54,469.469 INFO    ] No existing commands found in stream
[2026-08-25 02:15:59,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:15:59,487.487 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 02:16:03,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:16:03,321.321 INFO    ] Checking for system updates...
[2026-08-25 02:16:03,358.358 INFO    ] 200
[2026-08-25 02:16:03,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:03,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:03,417.417 INFO    ] No update needed
[2026-08-25 02:16:03,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 02:16:03,453.453 INFO    ] 200
[2026-08-25 02:16:03,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:03,505.505 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:16:03,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:03,563.563 INFO    ] No camera update needed
[2026-08-25 02:16:03,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:16:03,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:16:03,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:16:03,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:16:05,622.622 INFO    ] ================================================
[2026-08-25 02:16:05,637.637 INFO    ] Launching Daemon at Tue Aug 25 02:16:05 IST 2026
[2026-08-25 02:16:05,648.648 INFO    ] ================================================
[2026-08-25 02:16:06,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:16:06
[2026-08-25 02:16:06,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:16:07,154.154 INFO    ] Initializing speech engine...
[2026-08-25 02:16:07,162.162 INFO    ] 2026-08-25 02:16:07
[2026-08-25 02:16:07,410.410 INFO    ] 2026-08-25 02:16:07
[2026-08-25 02:16:07,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:16:07,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:16:07,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:16:07,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:16:07,909.909 INFO    ] time= 25/08/2026 02:16:07
[2026-08-25 02:16:07,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:16:07,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:16:08,124.124 INFO    ] No existing commands found in stream
[2026-08-25 02:16:13,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:16:13,147.147 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 02:16:16,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:16:16,693.693 INFO    ] Checking for system updates...
[2026-08-25 02:16:16,730.730 INFO    ] 200
[2026-08-25 02:16:16,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:16,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:16:16,792.792 INFO    ] No update needed
[2026-08-25 02:16:16,795.795 INFO    ] Checking for camera pi updates...
[2026-08-25 02:16:16,830.830 INFO    ] 200
[2026-08-25 02:16:16,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:16,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:16:16,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:16:16,937.937 INFO    ] No camera update needed
[2026-08-25 02:16:16,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:16:16,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:16:16,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:16:16,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:16:18,992.992 INFO    ] ================================================
[2026-08-25 02:16:19,007.007 INFO    ] Launching Daemon at Tue Aug 25 02:16:19 IST 2026
[2026-08-25 02:16:19,018.018 INFO    ] ================================================
[2026-08-25 02:16:19,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:16:19
[2026-08-25 02:16:20,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:16:20,464.464 INFO    ] Initializing speech engine...
[2026-08-25 02:16:20,473.473 INFO    ] 2026-08-25 02:16:20
[2026-08-25 02:16:20,731.731 INFO    ] 2026-08-25 02:16:20
[2026-08-25 02:16:20,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:16:21,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:16:21,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:16:21,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:16:21,209.209 INFO    ] time= 25/08/2026 02:16:21
[2026-08-25 02:16:21,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:16:21,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:16:21,417.417 INFO    ] No existing commands found in stream
[2026-08-25 02:16:26,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:16:26,440.440 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 02:16:26,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:16:26,892.892 INFO    ] Checking for system updates...
[2026-08-25 02:16:26,927.927 INFO    ] 200
[2026-08-25 02:16:26,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:26,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:26,988.988 INFO    ] No update needed
[2026-08-25 02:16:26,990.990 INFO    ] Checking for camera pi updates...
[2026-08-25 02:16:27,026.026 INFO    ] 200
[2026-08-25 02:16:27,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:27,069.069 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:16:27,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:27,120.120 INFO    ] No camera update needed
[2026-08-25 02:16:27,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:16:27,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:16:27,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:16:27,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:16:29,175.175 INFO    ] ================================================
[2026-08-25 02:16:29,190.190 INFO    ] Launching Daemon at Tue Aug 25 02:16:29 IST 2026
[2026-08-25 02:16:29,201.201 INFO    ] ================================================
[2026-08-25 02:16:29,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:16:29
[2026-08-25 02:16:30,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:16:30,612.612 INFO    ] Initializing speech engine...
[2026-08-25 02:16:30,624.624 INFO    ] 2026-08-25 02:16:30
[2026-08-25 02:16:30,872.872 INFO    ] 2026-08-25 02:16:30
[2026-08-25 02:16:30,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:16:31,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:16:31,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:16:31,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:16:31,304.304 INFO    ] time= 25/08/2026 02:16:31
[2026-08-25 02:16:31,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:16:31,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:16:31,578.578 INFO    ] No existing commands found in stream
[2026-08-25 02:16:36,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:16:36,623.623 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 02:16:39,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:16:39,660.660 INFO    ] Checking for system updates...
[2026-08-25 02:16:39,695.695 INFO    ] 200
[2026-08-25 02:16:39,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:39,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:39,757.757 INFO    ] No update needed
[2026-08-25 02:16:39,759.759 INFO    ] Checking for camera pi updates...
[2026-08-25 02:16:39,792.792 INFO    ] 200
[2026-08-25 02:16:39,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:39,838.838 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:16:39,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:39,892.892 INFO    ] No camera update needed
[2026-08-25 02:16:39,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:16:39,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:16:39,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:16:39,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:16:41,946.946 INFO    ] ================================================
[2026-08-25 02:16:41,962.962 INFO    ] Launching Daemon at Tue Aug 25 02:16:41 IST 2026
[2026-08-25 02:16:41,973.973 INFO    ] ================================================
[2026-08-25 02:16:42,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:16:42
[2026-08-25 02:16:43,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:16:43,567.567 INFO    ] Initializing speech engine...
[2026-08-25 02:16:43,581.581 INFO    ] 2026-08-25 02:16:43
[2026-08-25 02:16:43,859.859 INFO    ] 2026-08-25 02:16:43
[2026-08-25 02:16:43,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:16:44,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:16:44,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:16:44,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:16:44,329.329 INFO    ] time= 25/08/2026 02:16:44
[2026-08-25 02:16:44,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:16:44,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:16:44,544.544 INFO    ] No existing commands found in stream
[2026-08-25 02:16:49,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:16:49,562.562 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 02:16:53,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:16:53,142.142 INFO    ] Checking for system updates...
[2026-08-25 02:16:53,180.180 INFO    ] 200
[2026-08-25 02:16:53,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:53,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:53,242.242 INFO    ] No update needed
[2026-08-25 02:16:53,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 02:16:53,281.281 INFO    ] 200
[2026-08-25 02:16:53,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:16:53,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:16:53,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:16:53,377.377 INFO    ] No camera update needed
[2026-08-25 02:16:53,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:16:53,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:16:53,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:16:53,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:16:55,431.431 INFO    ] ================================================
[2026-08-25 02:16:55,446.446 INFO    ] Launching Daemon at Tue Aug 25 02:16:55 IST 2026
[2026-08-25 02:16:55,457.457 INFO    ] ================================================
[2026-08-25 02:16:56,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:16:56
[2026-08-25 02:16:56,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:16:56,925.925 INFO    ] Initializing speech engine...
[2026-08-25 02:16:56,932.932 INFO    ] 2026-08-25 02:16:56
[2026-08-25 02:16:57,193.193 INFO    ] 2026-08-25 02:16:57
[2026-08-25 02:16:57,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:16:57,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:16:57,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:16:57,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:16:57,662.662 INFO    ] time= 25/08/2026 02:16:57
[2026-08-25 02:16:57,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:16:57,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:16:57,882.882 INFO    ] No existing commands found in stream
[2026-08-25 02:17:02,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:17:02,902.902 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 02:17:05,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:17:05,360.360 INFO    ] Checking for system updates...
[2026-08-25 02:17:05,398.398 INFO    ] 200
[2026-08-25 02:17:05,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:05,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:17:05,463.463 INFO    ] No update needed
[2026-08-25 02:17:05,466.466 INFO    ] Checking for camera pi updates...
[2026-08-25 02:17:05,500.500 INFO    ] 200
[2026-08-25 02:17:05,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:05,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:17:05,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:17:05,602.602 INFO    ] No camera update needed
[2026-08-25 02:17:05,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:17:05,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:17:05,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:17:05,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:17:07,660.660 INFO    ] ================================================
[2026-08-25 02:17:07,676.676 INFO    ] Launching Daemon at Tue Aug 25 02:17:07 IST 2026
[2026-08-25 02:17:07,687.687 INFO    ] ================================================
[2026-08-25 02:17:08,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:17:08
[2026-08-25 02:17:08,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:17:09,292.292 INFO    ] Initializing speech engine...
[2026-08-25 02:17:09,301.301 INFO    ] 2026-08-25 02:17:09
[2026-08-25 02:17:09,618.618 INFO    ] 2026-08-25 02:17:09
[2026-08-25 02:17:09,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:17:09,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:17:09,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:17:10,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:17:10,120.120 INFO    ] time= 25/08/2026 02:17:10
[2026-08-25 02:17:10,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:17:10,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:17:10,278.278 INFO    ] No existing commands found in stream
[2026-08-25 02:17:15,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:17:15,300.300 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 02:17:16,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:17:16,283.283 INFO    ] Checking for system updates...
[2026-08-25 02:17:16,325.325 INFO    ] 200
[2026-08-25 02:17:16,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:16,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:17:16,398.398 INFO    ] No update needed
[2026-08-25 02:17:16,400.400 INFO    ] Checking for camera pi updates...
[2026-08-25 02:17:16,437.437 INFO    ] 200
[2026-08-25 02:17:16,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:16,480.480 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:17:16,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:17:16,538.538 INFO    ] No camera update needed
[2026-08-25 02:17:16,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:17:16,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:17:16,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:17:16,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:17:18,592.592 INFO    ] ================================================
[2026-08-25 02:17:18,608.608 INFO    ] Launching Daemon at Tue Aug 25 02:17:18 IST 2026
[2026-08-25 02:17:18,619.619 INFO    ] ================================================
[2026-08-25 02:17:19,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:17:19
[2026-08-25 02:17:19,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:17:20,208.208 INFO    ] Initializing speech engine...
[2026-08-25 02:17:20,217.217 INFO    ] 2026-08-25 02:17:20
[2026-08-25 02:17:20,501.501 INFO    ] 2026-08-25 02:17:20
[2026-08-25 02:17:20,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:17:20,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:17:20,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:17:20,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:17:20,977.977 INFO    ] time= 25/08/2026 02:17:20
[2026-08-25 02:17:21,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:17:21,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:17:21,178.178 INFO    ] No existing commands found in stream
[2026-08-25 02:17:26,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:17:26,207.207 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 02:17:29,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:17:29,615.615 INFO    ] Checking for system updates...
[2026-08-25 02:17:29,654.654 INFO    ] 200
[2026-08-25 02:17:29,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:29,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:17:29,718.718 INFO    ] No update needed
[2026-08-25 02:17:29,721.721 INFO    ] Checking for camera pi updates...
[2026-08-25 02:17:29,758.758 INFO    ] 200
[2026-08-25 02:17:29,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:29,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:17:29,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:17:29,852.852 INFO    ] No camera update needed
[2026-08-25 02:17:29,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:17:29,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:17:29,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:17:29,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:17:31,909.909 INFO    ] ================================================
[2026-08-25 02:17:31,925.925 INFO    ] Launching Daemon at Tue Aug 25 02:17:31 IST 2026
[2026-08-25 02:17:31,936.936 INFO    ] ================================================
[2026-08-25 02:17:32,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:17:32
[2026-08-25 02:17:33,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:17:33,409.409 INFO    ] Initializing speech engine...
[2026-08-25 02:17:33,421.421 INFO    ] 2026-08-25 02:17:33
[2026-08-25 02:17:33,672.672 INFO    ] 2026-08-25 02:17:33
[2026-08-25 02:17:33,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:17:33,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:17:33,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:17:34,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:17:34,051.051 INFO    ] time= 25/08/2026 02:17:34
[2026-08-25 02:17:34,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:17:34,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:17:34,218.218 INFO    ] No existing commands found in stream
[2026-08-25 02:17:39,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:17:39,241.241 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 02:17:43,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:17:43,019.019 INFO    ] Checking for system updates...
[2026-08-25 02:17:43,054.054 INFO    ] 200
[2026-08-25 02:17:43,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:43,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:17:43,122.122 INFO    ] No update needed
[2026-08-25 02:17:43,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 02:17:43,157.157 INFO    ] 200
[2026-08-25 02:17:43,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:43,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:17:43,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:17:43,344.344 INFO    ] No camera update needed
[2026-08-25 02:17:43,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:17:43,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:17:43,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:17:43,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:17:45,400.400 INFO    ] ================================================
[2026-08-25 02:17:45,416.416 INFO    ] Launching Daemon at Tue Aug 25 02:17:45 IST 2026
[2026-08-25 02:17:45,427.427 INFO    ] ================================================
[2026-08-25 02:17:46,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:17:46
[2026-08-25 02:17:46,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:17:47,004.004 INFO    ] Initializing speech engine...
[2026-08-25 02:17:47,018.018 INFO    ] 2026-08-25 02:17:47
[2026-08-25 02:17:47,329.329 INFO    ] 2026-08-25 02:17:47
[2026-08-25 02:17:47,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:17:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:17:47,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:17:47,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:17:47,835.835 INFO    ] time= 25/08/2026 02:17:47
[2026-08-25 02:17:47,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:17:47,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:17:47,993.993 INFO    ] No existing commands found in stream
[2026-08-25 02:17:53,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:17:53,018.018 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 02:17:53,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:17:53,824.824 INFO    ] Checking for system updates...
[2026-08-25 02:17:53,862.862 INFO    ] 200
[2026-08-25 02:17:53,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:53,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:17:53,922.922 INFO    ] No update needed
[2026-08-25 02:17:53,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 02:17:53,959.959 INFO    ] 200
[2026-08-25 02:17:53,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:17:54,023.023 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:17:54,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:17:54,073.073 INFO    ] No camera update needed
[2026-08-25 02:17:54,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:17:54,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:17:54,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:17:54,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:17:56,131.131 INFO    ] ================================================
[2026-08-25 02:17:56,147.147 INFO    ] Launching Daemon at Tue Aug 25 02:17:56 IST 2026
[2026-08-25 02:17:56,159.159 INFO    ] ================================================
[2026-08-25 02:17:56,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:17:56
[2026-08-25 02:17:57,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:17:57,592.592 INFO    ] Initializing speech engine...
[2026-08-25 02:17:57,599.599 INFO    ] 2026-08-25 02:17:57
[2026-08-25 02:17:57,859.859 INFO    ] 2026-08-25 02:17:57
[2026-08-25 02:17:57,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:17:58,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:17:58,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:17:58,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:17:58,323.323 INFO    ] time= 25/08/2026 02:17:58
[2026-08-25 02:17:58,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:17:58,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:17:58,537.537 INFO    ] No existing commands found in stream
[2026-08-25 02:18:03,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:18:03,566.566 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 02:18:07,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:18:07,886.886 INFO    ] Checking for system updates...
[2026-08-25 02:18:07,922.922 INFO    ] 200
[2026-08-25 02:18:07,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:07,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:18:07,982.982 INFO    ] No update needed
[2026-08-25 02:18:07,984.984 INFO    ] Checking for camera pi updates...
[2026-08-25 02:18:08,022.022 INFO    ] 200
[2026-08-25 02:18:08,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:08,070.070 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:18:08,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:18:08,123.123 INFO    ] No camera update needed
[2026-08-25 02:18:08,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:18:08,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:18:08,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:18:08,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:18:10,179.179 INFO    ] ================================================
[2026-08-25 02:18:10,195.195 INFO    ] Launching Daemon at Tue Aug 25 02:18:10 IST 2026
[2026-08-25 02:18:10,206.206 INFO    ] ================================================
[2026-08-25 02:18:10,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:18:10
[2026-08-25 02:18:11,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:18:11,666.666 INFO    ] Initializing speech engine...
[2026-08-25 02:18:11,671.671 INFO    ] 2026-08-25 02:18:11
[2026-08-25 02:18:11,923.923 INFO    ] 2026-08-25 02:18:11
[2026-08-25 02:18:11,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:18:12,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:18:12,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:18:12,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:18:12,298.298 INFO    ] time= 25/08/2026 02:18:12
[2026-08-25 02:18:12,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:18:12,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:18:12,497.497 INFO    ] No existing commands found in stream
[2026-08-25 02:18:17,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:18:17,526.526 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 02:18:18,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:18:18,139.139 INFO    ] Checking for system updates...
[2026-08-25 02:18:18,178.178 INFO    ] 200
[2026-08-25 02:18:18,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:18,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:18:18,243.243 INFO    ] No update needed
[2026-08-25 02:18:18,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 02:18:18,283.283 INFO    ] 200
[2026-08-25 02:18:18,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:18,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:18:18,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:18:18,388.388 INFO    ] No camera update needed
[2026-08-25 02:18:18,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:18:18,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:18:18,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:18:18,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:18:20,446.446 INFO    ] ================================================
[2026-08-25 02:18:20,461.461 INFO    ] Launching Daemon at Tue Aug 25 02:18:20 IST 2026
[2026-08-25 02:18:20,472.472 INFO    ] ================================================
[2026-08-25 02:18:21,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:18:21
[2026-08-25 02:18:21,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:18:21,968.968 INFO    ] Initializing speech engine...
[2026-08-25 02:18:21,979.979 INFO    ] 2026-08-25 02:18:21
[2026-08-25 02:18:22,244.244 INFO    ] 2026-08-25 02:18:22
[2026-08-25 02:18:22,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:18:22,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:18:22,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:18:22,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:18:22,774.774 INFO    ] time= 25/08/2026 02:18:22
[2026-08-25 02:18:22,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:18:22,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:18:22,926.926 INFO    ] No existing commands found in stream
[2026-08-25 02:18:27,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:18:27,941.941 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 02:18:29,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:18:29,167.167 INFO    ] Checking for system updates...
[2026-08-25 02:18:29,202.202 INFO    ] 200
[2026-08-25 02:18:29,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:29,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:18:29,278.278 INFO    ] No update needed
[2026-08-25 02:18:29,281.281 INFO    ] Checking for camera pi updates...
[2026-08-25 02:18:29,319.319 INFO    ] 200
[2026-08-25 02:18:29,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:29,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:18:29,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:18:29,411.411 INFO    ] No camera update needed
[2026-08-25 02:18:29,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:18:29,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:18:29,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:18:29,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:18:31,471.471 INFO    ] ================================================
[2026-08-25 02:18:31,487.487 INFO    ] Launching Daemon at Tue Aug 25 02:18:31 IST 2026
[2026-08-25 02:18:31,499.499 INFO    ] ================================================
[2026-08-25 02:18:32,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:18:32
[2026-08-25 02:18:32,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:18:32,954.954 INFO    ] Initializing speech engine...
[2026-08-25 02:18:32,961.961 INFO    ] 2026-08-25 02:18:32
[2026-08-25 02:18:33,257.257 INFO    ] 2026-08-25 02:18:33
[2026-08-25 02:18:33,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:18:33,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:18:33,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:18:33,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:18:33,641.641 INFO    ] time= 25/08/2026 02:18:33
[2026-08-25 02:18:33,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:18:33,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:18:33,809.809 INFO    ] No existing commands found in stream
[2026-08-25 02:18:38,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:18:38,837.837 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 02:18:40,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:18:40,692.692 INFO    ] Checking for system updates...
[2026-08-25 02:18:40,729.729 INFO    ] 200
[2026-08-25 02:18:40,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:40,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:18:40,787.787 INFO    ] No update needed
[2026-08-25 02:18:40,790.790 INFO    ] Checking for camera pi updates...
[2026-08-25 02:18:40,827.827 INFO    ] 200
[2026-08-25 02:18:40,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:40,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:18:40,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:18:40,936.936 INFO    ] No camera update needed
[2026-08-25 02:18:40,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:18:40,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:18:40,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:18:40,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:18:43,995.995 INFO    ] ================================================
[2026-08-25 02:18:43,010.010 INFO    ] Launching Daemon at Tue Aug 25 02:18:43 IST 2026
[2026-08-25 02:18:43,020.020 INFO    ] ================================================
[2026-08-25 02:18:43,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:18:43
[2026-08-25 02:18:44,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:18:44,424.424 INFO    ] Initializing speech engine...
[2026-08-25 02:18:44,436.436 INFO    ] 2026-08-25 02:18:44
[2026-08-25 02:18:44,698.698 INFO    ] 2026-08-25 02:18:44
[2026-08-25 02:18:44,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:18:44,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:18:44,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:18:45,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:18:45,065.065 INFO    ] time= 25/08/2026 02:18:45
[2026-08-25 02:18:45,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:18:45,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:18:45,260.260 INFO    ] No existing commands found in stream
[2026-08-25 02:18:50,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:18:50,274.274 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 02:18:52,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:18:52,933.933 INFO    ] Checking for system updates...
[2026-08-25 02:18:52,972.972 INFO    ] 200
[2026-08-25 02:18:52,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:53,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:18:53,029.029 INFO    ] No update needed
[2026-08-25 02:18:53,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 02:18:53,065.065 INFO    ] 200
[2026-08-25 02:18:53,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:18:53,108.108 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:18:53,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:18:53,160.160 INFO    ] No camera update needed
[2026-08-25 02:18:53,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:18:53,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:18:53,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:18:53,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:18:55,217.217 INFO    ] ================================================
[2026-08-25 02:18:55,233.233 INFO    ] Launching Daemon at Tue Aug 25 02:18:55 IST 2026
[2026-08-25 02:18:55,244.244 INFO    ] ================================================
[2026-08-25 02:18:55,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:18:55
[2026-08-25 02:18:56,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:18:56,727.727 INFO    ] Initializing speech engine...
[2026-08-25 02:18:56,736.736 INFO    ] 2026-08-25 02:18:56
[2026-08-25 02:18:56,987.987 INFO    ] 2026-08-25 02:18:56
[2026-08-25 02:18:57,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:18:57,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:18:57,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:18:57,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:18:57,364.364 INFO    ] time= 25/08/2026 02:18:57
[2026-08-25 02:18:57,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:18:57,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:18:57,548.548 INFO    ] No existing commands found in stream
[2026-08-25 02:19:02,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:19:02,577.577 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 02:19:05,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:19:05,109.109 INFO    ] Checking for system updates...
[2026-08-25 02:19:05,152.152 INFO    ] 200
[2026-08-25 02:19:05,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:05,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:19:05,234.234 INFO    ] No update needed
[2026-08-25 02:19:05,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 02:19:05,281.281 INFO    ] 200
[2026-08-25 02:19:05,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:05,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:19:05,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:19:05,386.386 INFO    ] No camera update needed
[2026-08-25 02:19:05,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:19:05,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:19:05,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:19:05,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:19:07,446.446 INFO    ] ================================================
[2026-08-25 02:19:07,465.465 INFO    ] Launching Daemon at Tue Aug 25 02:19:07 IST 2026
[2026-08-25 02:19:07,477.477 INFO    ] ================================================
[2026-08-25 02:19:08,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:19:08
[2026-08-25 02:19:08,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:19:09,104.104 INFO    ] Initializing speech engine...
[2026-08-25 02:19:09,112.112 INFO    ] 2026-08-25 02:19:09
[2026-08-25 02:19:09,388.388 INFO    ] 2026-08-25 02:19:09
[2026-08-25 02:19:09,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:19:09,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:19:09,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:19:09,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:19:09,853.853 INFO    ] time= 25/08/2026 02:19:09
[2026-08-25 02:19:09,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:19:09,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:19:10,050.050 INFO    ] No existing commands found in stream
[2026-08-25 02:19:15,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:19:15,080.080 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 02:19:16,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:19:16,882.882 INFO    ] Checking for system updates...
[2026-08-25 02:19:16,920.920 INFO    ] 200
[2026-08-25 02:19:16,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:16,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:19:16,977.977 INFO    ] No update needed
[2026-08-25 02:19:16,980.980 INFO    ] Checking for camera pi updates...
[2026-08-25 02:19:17,016.016 INFO    ] 200
[2026-08-25 02:19:17,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:17,058.058 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:19:17,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:19:17,104.104 INFO    ] No camera update needed
[2026-08-25 02:19:17,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:19:17,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:19:17,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:19:17,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:19:19,158.158 INFO    ] ================================================
[2026-08-25 02:19:19,174.174 INFO    ] Launching Daemon at Tue Aug 25 02:19:19 IST 2026
[2026-08-25 02:19:19,185.185 INFO    ] ================================================
[2026-08-25 02:19:19,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:19:19
[2026-08-25 02:19:20,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:19:20,578.578 INFO    ] Initializing speech engine...
[2026-08-25 02:19:20,583.583 INFO    ] 2026-08-25 02:19:20
[2026-08-25 02:19:20,875.875 INFO    ] 2026-08-25 02:19:20
[2026-08-25 02:19:20,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:19:21,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:19:21,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:19:21,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:19:21,269.269 INFO    ] time= 25/08/2026 02:19:21
[2026-08-25 02:19:21,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:19:21,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:19:21,372.372 INFO    ] No existing commands found in stream
[2026-08-25 02:19:26,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:19:26,388.388 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 02:19:27,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:19:27,483.483 INFO    ] Checking for system updates...
[2026-08-25 02:19:27,522.522 INFO    ] 200
[2026-08-25 02:19:27,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:27,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:19:27,579.579 INFO    ] No update needed
[2026-08-25 02:19:27,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 02:19:27,614.614 INFO    ] 200
[2026-08-25 02:19:27,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:27,656.656 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:19:27,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:19:27,710.710 INFO    ] No camera update needed
[2026-08-25 02:19:27,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:19:27,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:19:27,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:19:27,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:19:29,765.765 INFO    ] ================================================
[2026-08-25 02:19:29,780.780 INFO    ] Launching Daemon at Tue Aug 25 02:19:29 IST 2026
[2026-08-25 02:19:29,792.792 INFO    ] ================================================
[2026-08-25 02:19:30,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:19:30
[2026-08-25 02:19:30,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:19:31,209.209 INFO    ] Initializing speech engine...
[2026-08-25 02:19:31,219.219 INFO    ] 2026-08-25 02:19:31
[2026-08-25 02:19:31,506.506 INFO    ] 2026-08-25 02:19:31
[2026-08-25 02:19:31,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:19:31,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:19:31,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:19:31,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:19:31,930.930 INFO    ] time= 25/08/2026 02:19:31
[2026-08-25 02:19:31,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:19:31,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:19:32,127.127 INFO    ] No existing commands found in stream
[2026-08-25 02:19:37,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:19:37,150.150 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 02:19:40,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:19:40,151.151 INFO    ] Checking for system updates...
[2026-08-25 02:19:40,186.186 INFO    ] 200
[2026-08-25 02:19:40,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:40,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:19:40,243.243 INFO    ] No update needed
[2026-08-25 02:19:40,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 02:19:40,279.279 INFO    ] 200
[2026-08-25 02:19:40,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:40,329.329 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:19:40,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:19:40,382.382 INFO    ] No camera update needed
[2026-08-25 02:19:40,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:19:40,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:19:40,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:19:40,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:19:42,437.437 INFO    ] ================================================
[2026-08-25 02:19:42,452.452 INFO    ] Launching Daemon at Tue Aug 25 02:19:42 IST 2026
[2026-08-25 02:19:42,462.462 INFO    ] ================================================
[2026-08-25 02:19:43,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:19:43
[2026-08-25 02:19:43,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:19:44,038.038 INFO    ] Initializing speech engine...
[2026-08-25 02:19:44,044.044 INFO    ] 2026-08-25 02:19:44
[2026-08-25 02:19:44,305.305 INFO    ] 2026-08-25 02:19:44
[2026-08-25 02:19:44,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:19:44,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:19:44,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:19:44,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:19:44,850.850 INFO    ] time= 25/08/2026 02:19:44
[2026-08-25 02:19:44,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:19:44,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:19:45,003.003 INFO    ] No existing commands found in stream
[2026-08-25 02:19:50,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:19:50,020.020 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 02:19:52,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:19:52,764.764 INFO    ] Checking for system updates...
[2026-08-25 02:19:52,800.800 INFO    ] 200
[2026-08-25 02:19:52,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:52,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:19:52,863.863 INFO    ] No update needed
[2026-08-25 02:19:52,865.865 INFO    ] Checking for camera pi updates...
[2026-08-25 02:19:52,899.899 INFO    ] 200
[2026-08-25 02:19:52,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:19:52,945.945 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:19:53,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:19:53,097.097 INFO    ] No camera update needed
[2026-08-25 02:19:53,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:19:53,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:19:53,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:19:53,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:19:55,157.157 INFO    ] ================================================
[2026-08-25 02:19:55,172.172 INFO    ] Launching Daemon at Tue Aug 25 02:19:55 IST 2026
[2026-08-25 02:19:55,183.183 INFO    ] ================================================
[2026-08-25 02:19:55,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:19:55
[2026-08-25 02:19:56,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:19:56,599.599 INFO    ] Initializing speech engine...
[2026-08-25 02:19:56,605.605 INFO    ] 2026-08-25 02:19:56
[2026-08-25 02:19:56,900.900 INFO    ] 2026-08-25 02:19:56
[2026-08-25 02:19:56,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:19:57,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:19:57,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:19:57,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:19:57,314.314 INFO    ] time= 25/08/2026 02:19:57
[2026-08-25 02:19:57,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:19:57,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:19:57,405.405 INFO    ] No existing commands found in stream
[2026-08-25 02:20:02,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:20:02,441.441 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 02:20:06,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:20:06,423.423 INFO    ] Checking for system updates...
[2026-08-25 02:20:06,460.460 INFO    ] 200
[2026-08-25 02:20:06,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:06,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:06,518.518 INFO    ] No update needed
[2026-08-25 02:20:06,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 02:20:06,554.554 INFO    ] 200
[2026-08-25 02:20:06,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:06,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:20:06,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:06,645.645 INFO    ] No camera update needed
[2026-08-25 02:20:06,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:20:06,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:20:06,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:20:06,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:20:08,699.699 INFO    ] ================================================
[2026-08-25 02:20:08,714.714 INFO    ] Launching Daemon at Tue Aug 25 02:20:08 IST 2026
[2026-08-25 02:20:08,725.725 INFO    ] ================================================
[2026-08-25 02:20:09,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:20:09
[2026-08-25 02:20:09,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:20:10,145.145 INFO    ] Initializing speech engine...
[2026-08-25 02:20:10,154.154 INFO    ] 2026-08-25 02:20:10
[2026-08-25 02:20:10,405.405 INFO    ] 2026-08-25 02:20:10
[2026-08-25 02:20:10,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:20:10,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:20:10,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:20:10,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:20:10,892.892 INFO    ] time= 25/08/2026 02:20:10
[2026-08-25 02:20:10,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:20:10,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:20:11,101.101 INFO    ] No existing commands found in stream
[2026-08-25 02:20:16,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:20:16,130.130 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 02:20:19,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:20:19,343.343 INFO    ] Checking for system updates...
[2026-08-25 02:20:19,379.379 INFO    ] 200
[2026-08-25 02:20:19,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:19,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:19,441.441 INFO    ] No update needed
[2026-08-25 02:20:19,444.444 INFO    ] Checking for camera pi updates...
[2026-08-25 02:20:19,478.478 INFO    ] 200
[2026-08-25 02:20:19,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:19,524.524 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:20:19,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:19,580.580 INFO    ] No camera update needed
[2026-08-25 02:20:19,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:20:19,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:20:19,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:20:19,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:20:21,634.634 INFO    ] ================================================
[2026-08-25 02:20:21,649.649 INFO    ] Launching Daemon at Tue Aug 25 02:20:21 IST 2026
[2026-08-25 02:20:21,660.660 INFO    ] ================================================
[2026-08-25 02:20:22,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:20:22
[2026-08-25 02:20:22,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:20:23,262.262 INFO    ] Initializing speech engine...
[2026-08-25 02:20:23,274.274 INFO    ] 2026-08-25 02:20:23
[2026-08-25 02:20:23,582.582 INFO    ] 2026-08-25 02:20:23
[2026-08-25 02:20:23,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:20:23,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:20:23,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:20:24,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:20:24,087.087 INFO    ] time= 25/08/2026 02:20:24
[2026-08-25 02:20:24,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:20:24,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:20:24,244.244 INFO    ] No existing commands found in stream
[2026-08-25 02:20:29,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:20:29,267.267 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 02:20:30,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:20:30,591.591 INFO    ] Checking for system updates...
[2026-08-25 02:20:30,626.626 INFO    ] 200
[2026-08-25 02:20:30,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:30,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:30,689.689 INFO    ] No update needed
[2026-08-25 02:20:30,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 02:20:30,725.725 INFO    ] 200
[2026-08-25 02:20:30,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:30,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:20:30,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:30,820.820 INFO    ] No camera update needed
[2026-08-25 02:20:30,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:20:30,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:20:30,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:20:30,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:20:32,880.880 INFO    ] ================================================
[2026-08-25 02:20:32,895.895 INFO    ] Launching Daemon at Tue Aug 25 02:20:32 IST 2026
[2026-08-25 02:20:32,906.906 INFO    ] ================================================
[2026-08-25 02:20:33,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:20:33
[2026-08-25 02:20:34,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:20:34,357.357 INFO    ] Initializing speech engine...
[2026-08-25 02:20:34,365.365 INFO    ] 2026-08-25 02:20:34
[2026-08-25 02:20:34,626.626 INFO    ] 2026-08-25 02:20:34
[2026-08-25 02:20:34,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:20:34,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:20:34,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:20:35,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:20:35,096.096 INFO    ] time= 25/08/2026 02:20:35
[2026-08-25 02:20:35,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:20:35,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:20:35,324.324 INFO    ] No existing commands found in stream
[2026-08-25 02:20:40,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:20:40,341.341 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 02:20:41,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:20:41,666.666 INFO    ] Checking for system updates...
[2026-08-25 02:20:41,701.701 INFO    ] 200
[2026-08-25 02:20:41,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:41,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:41,758.758 INFO    ] No update needed
[2026-08-25 02:20:41,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 02:20:41,793.793 INFO    ] 200
[2026-08-25 02:20:41,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:41,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:20:41,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:20:41,887.887 INFO    ] No camera update needed
[2026-08-25 02:20:41,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:20:41,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:20:41,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:20:41,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:20:43,943.943 INFO    ] ================================================
[2026-08-25 02:20:43,958.958 INFO    ] Launching Daemon at Tue Aug 25 02:20:43 IST 2026
[2026-08-25 02:20:43,969.969 INFO    ] ================================================
[2026-08-25 02:20:44,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:20:44
[2026-08-25 02:20:45,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:20:45,578.578 INFO    ] Initializing speech engine...
[2026-08-25 02:20:45,589.589 INFO    ] 2026-08-25 02:20:45
[2026-08-25 02:20:45,896.896 INFO    ] 2026-08-25 02:20:45
[2026-08-25 02:20:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:20:46,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:20:46,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:20:46,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:20:46,334.334 INFO    ] time= 25/08/2026 02:20:46
[2026-08-25 02:20:46,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:20:46,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:20:46,549.549 INFO    ] No existing commands found in stream
[2026-08-25 02:20:51,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:20:51,570.570 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 02:20:53,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:20:53,882.882 INFO    ] Checking for system updates...
[2026-08-25 02:20:53,922.922 INFO    ] 200
[2026-08-25 02:20:53,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:53,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:20:53,982.982 INFO    ] No update needed
[2026-08-25 02:20:53,985.985 INFO    ] Checking for camera pi updates...
[2026-08-25 02:20:54,023.023 INFO    ] 200
[2026-08-25 02:20:54,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:20:54,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:20:54,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:20:54,121.121 INFO    ] No camera update needed
[2026-08-25 02:20:54,123.123 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:20:54,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:20:54,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:20:54,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:20:56,178.178 INFO    ] ================================================
[2026-08-25 02:20:56,193.193 INFO    ] Launching Daemon at Tue Aug 25 02:20:56 IST 2026
[2026-08-25 02:20:56,203.203 INFO    ] ================================================
[2026-08-25 02:20:56,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:20:56
[2026-08-25 02:20:57,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:20:57,610.610 INFO    ] Initializing speech engine...
[2026-08-25 02:20:57,618.618 INFO    ] 2026-08-25 02:20:57
[2026-08-25 02:20:57,908.908 INFO    ] 2026-08-25 02:20:57
[2026-08-25 02:20:57,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:20:58,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:20:58,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:20:58,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:20:58,257.257 INFO    ] time= 25/08/2026 02:20:58
[2026-08-25 02:20:58,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:20:58,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:20:58,405.405 INFO    ] No existing commands found in stream
[2026-08-25 02:21:03,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:21:03,415.415 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 02:21:04,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:21:04,321.321 INFO    ] Checking for system updates...
[2026-08-25 02:21:04,359.359 INFO    ] 200
[2026-08-25 02:21:04,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:04,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:21:04,421.421 INFO    ] No update needed
[2026-08-25 02:21:04,424.424 INFO    ] Checking for camera pi updates...
[2026-08-25 02:21:04,457.457 INFO    ] 200
[2026-08-25 02:21:04,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:04,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:21:04,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:21:04,550.550 INFO    ] No camera update needed
[2026-08-25 02:21:04,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:21:04,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:21:04,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:21:04,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:21:06,605.605 INFO    ] ================================================
[2026-08-25 02:21:06,620.620 INFO    ] Launching Daemon at Tue Aug 25 02:21:06 IST 2026
[2026-08-25 02:21:06,630.630 INFO    ] ================================================
[2026-08-25 02:21:07,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:21:07
[2026-08-25 02:21:07,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:21:08,076.076 INFO    ] Initializing speech engine...
[2026-08-25 02:21:08,089.089 INFO    ] 2026-08-25 02:21:08
[2026-08-25 02:21:08,371.371 INFO    ] 2026-08-25 02:21:08
[2026-08-25 02:21:08,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:21:08,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:21:08,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:21:08,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:21:08,761.761 INFO    ] time= 25/08/2026 02:21:08
[2026-08-25 02:21:08,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:21:08,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:21:08,865.865 INFO    ] No existing commands found in stream
[2026-08-25 02:21:13,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:21:13,881.881 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 02:21:17,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:21:17,851.851 INFO    ] Checking for system updates...
[2026-08-25 02:21:17,887.887 INFO    ] 200
[2026-08-25 02:21:17,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:17,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:21:17,949.949 INFO    ] No update needed
[2026-08-25 02:21:17,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 02:21:17,985.985 INFO    ] 200
[2026-08-25 02:21:17,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:18,028.028 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:21:18,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:21:18,081.081 INFO    ] No camera update needed
[2026-08-25 02:21:18,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:21:18,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:21:18,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:21:18,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:21:20,135.135 INFO    ] ================================================
[2026-08-25 02:21:20,150.150 INFO    ] Launching Daemon at Tue Aug 25 02:21:20 IST 2026
[2026-08-25 02:21:20,161.161 INFO    ] ================================================
[2026-08-25 02:21:20,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:21:20
[2026-08-25 02:21:21,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:21:21,612.612 INFO    ] Initializing speech engine...
[2026-08-25 02:21:21,618.618 INFO    ] 2026-08-25 02:21:21
[2026-08-25 02:21:21,867.867 INFO    ] 2026-08-25 02:21:21
[2026-08-25 02:21:21,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:21:22,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:21:22,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:21:22,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:21:22,376.376 INFO    ] time= 25/08/2026 02:21:22
[2026-08-25 02:21:22,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:21:22,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:21:22,568.568 INFO    ] No existing commands found in stream
[2026-08-25 02:21:27,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:21:27,599.599 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 02:21:29,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:21:29,091.091 INFO    ] Checking for system updates...
[2026-08-25 02:21:29,127.127 INFO    ] 200
[2026-08-25 02:21:29,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:29,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:21:29,187.187 INFO    ] No update needed
[2026-08-25 02:21:29,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 02:21:29,226.226 INFO    ] 200
[2026-08-25 02:21:29,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:29,273.273 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:21:29,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:21:29,321.321 INFO    ] No camera update needed
[2026-08-25 02:21:29,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:21:29,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:21:29,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:21:29,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:21:31,376.376 INFO    ] ================================================
[2026-08-25 02:21:31,394.394 INFO    ] Launching Daemon at Tue Aug 25 02:21:31 IST 2026
[2026-08-25 02:21:31,405.405 INFO    ] ================================================
[2026-08-25 02:21:32,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:21:32
[2026-08-25 02:21:32,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:21:32,927.927 INFO    ] Initializing speech engine...
[2026-08-25 02:21:32,951.951 INFO    ] 2026-08-25 02:21:32
[2026-08-25 02:21:33,211.211 INFO    ] 2026-08-25 02:21:33
[2026-08-25 02:21:33,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:21:33,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:21:33,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:21:33,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:21:33,588.588 INFO    ] time= 25/08/2026 02:21:33
[2026-08-25 02:21:33,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:21:33,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:21:33,772.772 INFO    ] No existing commands found in stream
[2026-08-25 02:21:38,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:21:38,800.800 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 02:21:42,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:21:42,094.094 INFO    ] Checking for system updates...
[2026-08-25 02:21:42,129.129 INFO    ] 200
[2026-08-25 02:21:42,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:42,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:21:42,187.187 INFO    ] No update needed
[2026-08-25 02:21:42,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 02:21:42,229.229 INFO    ] 200
[2026-08-25 02:21:42,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:42,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:21:42,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:21:42,329.329 INFO    ] No camera update needed
[2026-08-25 02:21:42,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:21:42,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:21:42,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:21:42,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:21:44,382.382 INFO    ] ================================================
[2026-08-25 02:21:44,397.397 INFO    ] Launching Daemon at Tue Aug 25 02:21:44 IST 2026
[2026-08-25 02:21:44,407.407 INFO    ] ================================================
[2026-08-25 02:21:44,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:21:44
[2026-08-25 02:21:45,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:21:45,813.813 INFO    ] Initializing speech engine...
[2026-08-25 02:21:45,829.829 INFO    ] 2026-08-25 02:21:45
[2026-08-25 02:21:46,106.106 INFO    ] 2026-08-25 02:21:46
[2026-08-25 02:21:46,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:21:46,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:21:46,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:21:46,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:21:46,516.516 INFO    ] time= 25/08/2026 02:21:46
[2026-08-25 02:21:46,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:21:46,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:21:46,602.602 INFO    ] No existing commands found in stream
[2026-08-25 02:21:51,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:21:51,620.620 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 02:21:53,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:21:53,982.982 INFO    ] Checking for system updates...
[2026-08-25 02:21:54,021.021 INFO    ] 200
[2026-08-25 02:21:54,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:54,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:21:54,080.080 INFO    ] No update needed
[2026-08-25 02:21:54,082.082 INFO    ] Checking for camera pi updates...
[2026-08-25 02:21:54,116.116 INFO    ] 200
[2026-08-25 02:21:54,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:21:54,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:21:54,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:21:54,219.219 INFO    ] No camera update needed
[2026-08-25 02:21:54,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:21:54,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:21:54,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:21:54,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:21:56,275.275 INFO    ] ================================================
[2026-08-25 02:21:56,290.290 INFO    ] Launching Daemon at Tue Aug 25 02:21:56 IST 2026
[2026-08-25 02:21:56,301.301 INFO    ] ================================================
[2026-08-25 02:21:56,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:21:56
[2026-08-25 02:21:57,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:21:57,737.737 INFO    ] Initializing speech engine...
[2026-08-25 02:21:57,751.751 INFO    ] 2026-08-25 02:21:57
[2026-08-25 02:21:58,036.036 INFO    ] 2026-08-25 02:21:58
[2026-08-25 02:21:58,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:21:58,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:21:58,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:21:58,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:21:58,521.521 INFO    ] time= 25/08/2026 02:21:58
[2026-08-25 02:21:58,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:21:58,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:21:58,740.740 INFO    ] No existing commands found in stream
[2026-08-25 02:22:03,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:22:03,778.778 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 02:22:04,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:22:04,850.850 INFO    ] Checking for system updates...
[2026-08-25 02:22:04,886.886 INFO    ] 200
[2026-08-25 02:22:04,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:04,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:22:04,948.948 INFO    ] No update needed
[2026-08-25 02:22:04,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 02:22:04,987.987 INFO    ] 200
[2026-08-25 02:22:04,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:05,029.029 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:22:05,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:22:05,079.079 INFO    ] No camera update needed
[2026-08-25 02:22:05,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:22:05,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:22:05,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:22:05,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:22:07,135.135 INFO    ] ================================================
[2026-08-25 02:22:07,150.150 INFO    ] Launching Daemon at Tue Aug 25 02:22:07 IST 2026
[2026-08-25 02:22:07,161.161 INFO    ] ================================================
[2026-08-25 02:22:07,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:22:07
[2026-08-25 02:22:08,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:22:08,751.751 INFO    ] Initializing speech engine...
[2026-08-25 02:22:08,759.759 INFO    ] 2026-08-25 02:22:08
[2026-08-25 02:22:09,031.031 INFO    ] 2026-08-25 02:22:09
[2026-08-25 02:22:09,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:22:09,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:22:09,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:22:09,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:22:09,513.513 INFO    ] time= 25/08/2026 02:22:09
[2026-08-25 02:22:09,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:22:09,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:22:09,747.747 INFO    ] No existing commands found in stream
[2026-08-25 02:22:14,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:22:14,768.768 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 02:22:18,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:22:18,670.670 INFO    ] Checking for system updates...
[2026-08-25 02:22:18,707.707 INFO    ] 200
[2026-08-25 02:22:18,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:18,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:22:18,766.766 INFO    ] No update needed
[2026-08-25 02:22:18,769.769 INFO    ] Checking for camera pi updates...
[2026-08-25 02:22:18,806.806 INFO    ] 200
[2026-08-25 02:22:18,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:18,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:22:18,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:22:18,908.908 INFO    ] No camera update needed
[2026-08-25 02:22:18,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:22:18,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:22:18,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:22:18,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:22:20,966.966 INFO    ] ================================================
[2026-08-25 02:22:20,981.981 INFO    ] Launching Daemon at Tue Aug 25 02:22:20 IST 2026
[2026-08-25 02:22:20,992.992 INFO    ] ================================================
[2026-08-25 02:22:21,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:22:21
[2026-08-25 02:22:22,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:22:22,460.460 INFO    ] Initializing speech engine...
[2026-08-25 02:22:22,467.467 INFO    ] 2026-08-25 02:22:22
[2026-08-25 02:22:22,713.713 INFO    ] 2026-08-25 02:22:22
[2026-08-25 02:22:22,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:22:22,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:22:22,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:22:23,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:22:23,045.045 INFO    ] time= 25/08/2026 02:22:23
[2026-08-25 02:22:23,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:22:23,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:22:23,173.173 INFO    ] No existing commands found in stream
[2026-08-25 02:22:28,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:22:28,211.211 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 02:22:29,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:22:29,411.411 INFO    ] Checking for system updates...
[2026-08-25 02:22:29,449.449 INFO    ] 200
[2026-08-25 02:22:29,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:29,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:22:29,505.505 INFO    ] No update needed
[2026-08-25 02:22:29,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 02:22:29,543.543 INFO    ] 200
[2026-08-25 02:22:29,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:29,585.585 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:22:29,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:22:29,633.633 INFO    ] No camera update needed
[2026-08-25 02:22:29,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:22:29,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:22:29,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:22:29,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:22:31,690.690 INFO    ] ================================================
[2026-08-25 02:22:31,706.706 INFO    ] Launching Daemon at Tue Aug 25 02:22:31 IST 2026
[2026-08-25 02:22:31,719.719 INFO    ] ================================================
[2026-08-25 02:22:32,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:22:32
[2026-08-25 02:22:32,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:22:33,206.206 INFO    ] Initializing speech engine...
[2026-08-25 02:22:33,215.215 INFO    ] 2026-08-25 02:22:33
[2026-08-25 02:22:33,467.467 INFO    ] 2026-08-25 02:22:33
[2026-08-25 02:22:33,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:22:33,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:22:33,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:22:33,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:22:33,959.959 INFO    ] time= 25/08/2026 02:22:33
[2026-08-25 02:22:34,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:22:34,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:22:34,166.166 INFO    ] No existing commands found in stream
[2026-08-25 02:22:39,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:22:39,182.182 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 02:22:43,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:22:43,510.510 INFO    ] Checking for system updates...
[2026-08-25 02:22:43,548.548 INFO    ] 200
[2026-08-25 02:22:43,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:43,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:22:43,618.618 INFO    ] No update needed
[2026-08-25 02:22:43,621.621 INFO    ] Checking for camera pi updates...
[2026-08-25 02:22:43,655.655 INFO    ] 200
[2026-08-25 02:22:43,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:43,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:22:43,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:22:43,749.749 INFO    ] No camera update needed
[2026-08-25 02:22:43,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:22:43,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:22:43,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:22:43,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:22:45,806.806 INFO    ] ================================================
[2026-08-25 02:22:45,822.822 INFO    ] Launching Daemon at Tue Aug 25 02:22:45 IST 2026
[2026-08-25 02:22:45,833.833 INFO    ] ================================================
[2026-08-25 02:22:46,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:22:46
[2026-08-25 02:22:47,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:22:47,281.281 INFO    ] Initializing speech engine...
[2026-08-25 02:22:47,291.291 INFO    ] 2026-08-25 02:22:47
[2026-08-25 02:22:47,539.539 INFO    ] 2026-08-25 02:22:47
[2026-08-25 02:22:47,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:22:47,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:22:47,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:22:47,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:22:48,017.017 INFO    ] time= 25/08/2026 02:22:47
[2026-08-25 02:22:48,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:22:48,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:22:48,241.241 INFO    ] No existing commands found in stream
[2026-08-25 02:22:53,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:22:53,260.260 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 02:22:58,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:22:58,879.879 INFO    ] Checking for system updates...
[2026-08-25 02:22:58,916.916 INFO    ] 200
[2026-08-25 02:22:58,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:58,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:22:58,973.973 INFO    ] No update needed
[2026-08-25 02:22:58,975.975 INFO    ] Checking for camera pi updates...
[2026-08-25 02:22:59,009.009 INFO    ] 200
[2026-08-25 02:22:59,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:22:59,056.056 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:22:59,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:22:59,115.115 INFO    ] No camera update needed
[2026-08-25 02:22:59,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:22:59,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:22:59,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:22:59,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:23:01,194.194 INFO    ] ================================================
[2026-08-25 02:23:01,224.224 INFO    ] Launching Daemon at Tue Aug 25 02:23:01 IST 2026
[2026-08-25 02:23:01,255.255 INFO    ] ================================================
[2026-08-25 02:23:02,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:23:02
[2026-08-25 02:23:02,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:23:03,081.081 INFO    ] Initializing speech engine...
[2026-08-25 02:23:03,087.087 INFO    ] 2026-08-25 02:23:03
[2026-08-25 02:23:03,383.383 INFO    ] 2026-08-25 02:23:03
[2026-08-25 02:23:03,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:23:03,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:23:03,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:23:03,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:23:03,795.795 INFO    ] time= 25/08/2026 02:23:03
[2026-08-25 02:23:03,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:23:03,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:23:03,886.886 INFO    ] No existing commands found in stream
[2026-08-25 02:23:08,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:23:08,903.903 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 02:23:10,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:23:10,389.389 INFO    ] Checking for system updates...
[2026-08-25 02:23:10,439.439 INFO    ] 200
[2026-08-25 02:23:10,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:10,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:10,502.502 INFO    ] No update needed
[2026-08-25 02:23:10,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 02:23:10,537.537 INFO    ] 200
[2026-08-25 02:23:10,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:10,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:23:10,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:10,633.633 INFO    ] No camera update needed
[2026-08-25 02:23:10,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:23:10,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:23:10,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:23:10,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:23:12,689.689 INFO    ] ================================================
[2026-08-25 02:23:12,705.705 INFO    ] Launching Daemon at Tue Aug 25 02:23:12 IST 2026
[2026-08-25 02:23:12,716.716 INFO    ] ================================================
[2026-08-25 02:23:13,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:23:13
[2026-08-25 02:23:13,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:23:14,176.176 INFO    ] Initializing speech engine...
[2026-08-25 02:23:14,189.189 INFO    ] 2026-08-25 02:23:14
[2026-08-25 02:23:14,460.460 INFO    ] 2026-08-25 02:23:14
[2026-08-25 02:23:14,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:23:14,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:23:14,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:23:14,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:23:14,872.872 INFO    ] time= 25/08/2026 02:23:14
[2026-08-25 02:23:14,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:23:14,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:23:15,022.022 INFO    ] No existing commands found in stream
[2026-08-25 02:23:20,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:23:20,050.050 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 02:23:23,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:23:23,530.530 INFO    ] Checking for system updates...
[2026-08-25 02:23:23,566.566 INFO    ] 200
[2026-08-25 02:23:23,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:23,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:23,624.624 INFO    ] No update needed
[2026-08-25 02:23:23,627.627 INFO    ] Checking for camera pi updates...
[2026-08-25 02:23:23,661.661 INFO    ] 200
[2026-08-25 02:23:23,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:23,706.706 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:23:23,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:23,754.754 INFO    ] No camera update needed
[2026-08-25 02:23:23,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:23:23,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:23:23,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:23:23,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:23:25,812.812 INFO    ] ================================================
[2026-08-25 02:23:25,828.828 INFO    ] Launching Daemon at Tue Aug 25 02:23:25 IST 2026
[2026-08-25 02:23:25,838.838 INFO    ] ================================================
[2026-08-25 02:23:26,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:23:26
[2026-08-25 02:23:27,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:23:27,266.266 INFO    ] Initializing speech engine...
[2026-08-25 02:23:27,290.290 INFO    ] 2026-08-25 02:23:27
[2026-08-25 02:23:27,564.564 INFO    ] 2026-08-25 02:23:27
[2026-08-25 02:23:27,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:23:27,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:23:27,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:23:27,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:23:27,934.934 INFO    ] time= 25/08/2026 02:23:27
[2026-08-25 02:23:27,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:23:27,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:23:28,057.057 INFO    ] No existing commands found in stream
[2026-08-25 02:23:33,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:23:33,073.073 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 02:23:37,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:23:37,492.492 INFO    ] Checking for system updates...
[2026-08-25 02:23:37,531.531 INFO    ] 200
[2026-08-25 02:23:37,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:37,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:37,593.593 INFO    ] No update needed
[2026-08-25 02:23:37,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 02:23:37,630.630 INFO    ] 200
[2026-08-25 02:23:37,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:37,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:23:37,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:37,727.727 INFO    ] No camera update needed
[2026-08-25 02:23:37,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:23:37,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:23:37,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:23:37,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:23:39,784.784 INFO    ] ================================================
[2026-08-25 02:23:39,800.800 INFO    ] Launching Daemon at Tue Aug 25 02:23:39 IST 2026
[2026-08-25 02:23:39,811.811 INFO    ] ================================================
[2026-08-25 02:23:40,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:23:40
[2026-08-25 02:23:41,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:23:41,282.282 INFO    ] Initializing speech engine...
[2026-08-25 02:23:41,288.288 INFO    ] 2026-08-25 02:23:41
[2026-08-25 02:23:41,538.538 INFO    ] 2026-08-25 02:23:41
[2026-08-25 02:23:41,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:23:41,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:23:41,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:23:41,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:23:42,013.013 INFO    ] time= 25/08/2026 02:23:41
[2026-08-25 02:23:42,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:23:42,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:23:42,251.251 INFO    ] No existing commands found in stream
[2026-08-25 02:23:47,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:23:47,266.266 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 02:23:49,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:23:49,740.740 INFO    ] Checking for system updates...
[2026-08-25 02:23:49,778.778 INFO    ] 200
[2026-08-25 02:23:49,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:49,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:49,843.843 INFO    ] No update needed
[2026-08-25 02:23:49,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 02:23:49,880.880 INFO    ] 200
[2026-08-25 02:23:49,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:23:49,924.924 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:23:49,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:23:49,979.979 INFO    ] No camera update needed
[2026-08-25 02:23:49,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:23:49,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:23:49,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:23:49,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:23:52,038.038 INFO    ] ================================================
[2026-08-25 02:23:52,055.055 INFO    ] Launching Daemon at Tue Aug 25 02:23:52 IST 2026
[2026-08-25 02:23:52,066.066 INFO    ] ================================================
[2026-08-25 02:23:52,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:23:52
[2026-08-25 02:23:53,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:23:53,699.699 INFO    ] Initializing speech engine...
[2026-08-25 02:23:53,705.705 INFO    ] 2026-08-25 02:23:53
[2026-08-25 02:23:53,983.983 INFO    ] 2026-08-25 02:23:53
[2026-08-25 02:23:54,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:23:54,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:23:54,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:23:54,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:23:54,469.469 INFO    ] time= 25/08/2026 02:23:54
[2026-08-25 02:23:54,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:23:54,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:23:54,687.687 INFO    ] No existing commands found in stream
[2026-08-25 02:23:59,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:23:59,710.710 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 02:24:04,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:24:04,927.927 INFO    ] Checking for system updates...
[2026-08-25 02:24:04,971.971 INFO    ] 200
[2026-08-25 02:24:04,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:05,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:24:05,030.030 INFO    ] No update needed
[2026-08-25 02:24:05,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 02:24:05,066.066 INFO    ] 200
[2026-08-25 02:24:05,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:05,108.108 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:24:05,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:24:05,260.260 INFO    ] No camera update needed
[2026-08-25 02:24:05,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:24:05,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:24:05,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:24:05,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:24:07,315.315 INFO    ] ================================================
[2026-08-25 02:24:07,330.330 INFO    ] Launching Daemon at Tue Aug 25 02:24:07 IST 2026
[2026-08-25 02:24:07,342.342 INFO    ] ================================================
[2026-08-25 02:24:07,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:24:07
[2026-08-25 02:24:08,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:24:08,977.977 INFO    ] Initializing speech engine...
[2026-08-25 02:24:08,987.987 INFO    ] 2026-08-25 02:24:08
[2026-08-25 02:24:09,269.269 INFO    ] 2026-08-25 02:24:09
[2026-08-25 02:24:09,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:24:09,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:24:09,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:24:09,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:24:09,794.794 INFO    ] time= 25/08/2026 02:24:09
[2026-08-25 02:24:09,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:24:09,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:24:09,952.952 INFO    ] No existing commands found in stream
[2026-08-25 02:24:14,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:24:14,974.974 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 02:24:15,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:24:15,998.998 INFO    ] Checking for system updates...
[2026-08-25 02:24:16,038.038 INFO    ] 200
[2026-08-25 02:24:16,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:16,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:24:16,095.095 INFO    ] No update needed
[2026-08-25 02:24:16,097.097 INFO    ] Checking for camera pi updates...
[2026-08-25 02:24:16,130.130 INFO    ] 200
[2026-08-25 02:24:16,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:16,172.172 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:24:16,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:24:16,233.233 INFO    ] No camera update needed
[2026-08-25 02:24:16,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:24:16,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:24:16,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:24:16,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:24:18,288.288 INFO    ] ================================================
[2026-08-25 02:24:18,303.303 INFO    ] Launching Daemon at Tue Aug 25 02:24:18 IST 2026
[2026-08-25 02:24:18,314.314 INFO    ] ================================================
[2026-08-25 02:24:18,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:24:18
[2026-08-25 02:24:19,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:24:19,762.762 INFO    ] Initializing speech engine...
[2026-08-25 02:24:19,780.780 INFO    ] 2026-08-25 02:24:19
[2026-08-25 02:24:20,032.032 INFO    ] 2026-08-25 02:24:20
[2026-08-25 02:24:20,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:24:20,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:24:20,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:24:20,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:24:20,407.407 INFO    ] time= 25/08/2026 02:24:20
[2026-08-25 02:24:20,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:24:20,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:24:20,571.571 INFO    ] No existing commands found in stream
[2026-08-25 02:24:25,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:24:25,599.599 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 02:24:28,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:24:28,651.651 INFO    ] Checking for system updates...
[2026-08-25 02:24:28,687.687 INFO    ] 200
[2026-08-25 02:24:28,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:28,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:24:28,744.744 INFO    ] No update needed
[2026-08-25 02:24:28,747.747 INFO    ] Checking for camera pi updates...
[2026-08-25 02:24:28,780.780 INFO    ] 200
[2026-08-25 02:24:28,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:28,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:24:28,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:24:28,871.871 INFO    ] No camera update needed
[2026-08-25 02:24:28,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:24:28,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:24:28,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:24:28,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:24:30,926.926 INFO    ] ================================================
[2026-08-25 02:24:30,941.941 INFO    ] Launching Daemon at Tue Aug 25 02:24:30 IST 2026
[2026-08-25 02:24:30,953.953 INFO    ] ================================================
[2026-08-25 02:24:31,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:24:31
[2026-08-25 02:24:32,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:24:32,493.493 INFO    ] Initializing speech engine...
[2026-08-25 02:24:32,511.511 INFO    ] 2026-08-25 02:24:32
[2026-08-25 02:24:32,766.766 INFO    ] 2026-08-25 02:24:32
[2026-08-25 02:24:32,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:24:33,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:24:33,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:24:33,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:24:33,247.247 INFO    ] time= 25/08/2026 02:24:33
[2026-08-25 02:24:33,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:24:33,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:24:33,443.443 INFO    ] No existing commands found in stream
[2026-08-25 02:24:38,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:24:38,468.468 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 02:24:39,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:24:39,841.841 INFO    ] Checking for system updates...
[2026-08-25 02:24:39,881.881 INFO    ] 200
[2026-08-25 02:24:39,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:39,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:24:39,938.938 INFO    ] No update needed
[2026-08-25 02:24:39,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 02:24:39,974.974 INFO    ] 200
[2026-08-25 02:24:39,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:40,020.020 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:24:40,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:24:40,068.068 INFO    ] No camera update needed
[2026-08-25 02:24:40,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:24:40,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:24:40,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:24:40,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:24:42,122.122 INFO    ] ================================================
[2026-08-25 02:24:42,137.137 INFO    ] Launching Daemon at Tue Aug 25 02:24:42 IST 2026
[2026-08-25 02:24:42,149.149 INFO    ] ================================================
[2026-08-25 02:24:42,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:24:42
[2026-08-25 02:24:43,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:24:43,708.708 INFO    ] Initializing speech engine...
[2026-08-25 02:24:43,718.718 INFO    ] 2026-08-25 02:24:43
[2026-08-25 02:24:43,975.975 INFO    ] 2026-08-25 02:24:43
[2026-08-25 02:24:44,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:24:44,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:24:44,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:24:44,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:24:44,458.458 INFO    ] time= 25/08/2026 02:24:44
[2026-08-25 02:24:44,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:24:44,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:24:44,672.672 INFO    ] No existing commands found in stream
[2026-08-25 02:24:49,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:24:49,695.695 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 02:24:51,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:24:51,378.378 INFO    ] Checking for system updates...
[2026-08-25 02:24:51,416.416 INFO    ] 200
[2026-08-25 02:24:51,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:51,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:24:51,473.473 INFO    ] No update needed
[2026-08-25 02:24:51,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 02:24:51,512.512 INFO    ] 200
[2026-08-25 02:24:51,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:24:51,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:24:51,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:24:51,609.609 INFO    ] No camera update needed
[2026-08-25 02:24:51,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:24:51,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:24:51,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:24:51,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:24:53,665.665 INFO    ] ================================================
[2026-08-25 02:24:53,680.680 INFO    ] Launching Daemon at Tue Aug 25 02:24:53 IST 2026
[2026-08-25 02:24:53,691.691 INFO    ] ================================================
[2026-08-25 02:24:54,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:24:54
[2026-08-25 02:24:54,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:24:55,250.250 INFO    ] Initializing speech engine...
[2026-08-25 02:24:55,257.257 INFO    ] 2026-08-25 02:24:55
[2026-08-25 02:24:55,525.525 INFO    ] 2026-08-25 02:24:55
[2026-08-25 02:24:55,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:24:55,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:24:55,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:24:55,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:24:56,001.001 INFO    ] time= 25/08/2026 02:24:55
[2026-08-25 02:24:56,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:24:56,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:24:56,207.207 INFO    ] No existing commands found in stream
[2026-08-25 02:25:01,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:25:01,237.237 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 02:25:04,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:25:04,689.689 INFO    ] Checking for system updates...
[2026-08-25 02:25:04,724.724 INFO    ] 200
[2026-08-25 02:25:04,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:04,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:04,787.787 INFO    ] No update needed
[2026-08-25 02:25:04,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 02:25:04,825.825 INFO    ] 200
[2026-08-25 02:25:04,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:04,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:25:04,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:04,926.926 INFO    ] No camera update needed
[2026-08-25 02:25:04,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:25:04,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:25:04,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:25:04,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:25:06,983.983 INFO    ] ================================================
[2026-08-25 02:25:07,001.001 INFO    ] Launching Daemon at Tue Aug 25 02:25:06 IST 2026
[2026-08-25 02:25:07,015.015 INFO    ] ================================================
[2026-08-25 02:25:07,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:25:07
[2026-08-25 02:25:08,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:25:08,604.604 INFO    ] Initializing speech engine...
[2026-08-25 02:25:08,617.617 INFO    ] 2026-08-25 02:25:08
[2026-08-25 02:25:08,893.893 INFO    ] 2026-08-25 02:25:08
[2026-08-25 02:25:08,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:25:09,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:25:09,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:25:09,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:25:09,430.430 INFO    ] time= 25/08/2026 02:25:09
[2026-08-25 02:25:09,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:25:09,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:25:09,613.613 INFO    ] No existing commands found in stream
[2026-08-25 02:25:14,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:25:14,642.642 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 02:25:15,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:25:15,212.212 INFO    ] Checking for system updates...
[2026-08-25 02:25:15,248.248 INFO    ] 200
[2026-08-25 02:25:15,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:15,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:15,312.312 INFO    ] No update needed
[2026-08-25 02:25:15,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 02:25:15,351.351 INFO    ] 200
[2026-08-25 02:25:15,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:15,396.396 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:25:15,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:15,449.449 INFO    ] No camera update needed
[2026-08-25 02:25:15,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:25:15,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:25:15,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:25:15,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:25:17,507.507 INFO    ] ================================================
[2026-08-25 02:25:17,523.523 INFO    ] Launching Daemon at Tue Aug 25 02:25:17 IST 2026
[2026-08-25 02:25:17,535.535 INFO    ] ================================================
[2026-08-25 02:25:18,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:25:18
[2026-08-25 02:25:18,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:25:18,961.961 INFO    ] Initializing speech engine...
[2026-08-25 02:25:18,981.981 INFO    ] 2026-08-25 02:25:18
[2026-08-25 02:25:19,245.245 INFO    ] 2026-08-25 02:25:19
[2026-08-25 02:25:19,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:25:19,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:25:19,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:25:19,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:25:19,619.619 INFO    ] time= 25/08/2026 02:25:19
[2026-08-25 02:25:19,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:25:19,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:25:19,744.744 INFO    ] No existing commands found in stream
[2026-08-25 02:25:24,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:25:24,765.765 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 02:25:27,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:25:27,671.671 INFO    ] Checking for system updates...
[2026-08-25 02:25:27,707.707 INFO    ] 200
[2026-08-25 02:25:27,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:27,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:27,768.768 INFO    ] No update needed
[2026-08-25 02:25:27,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 02:25:27,807.807 INFO    ] 200
[2026-08-25 02:25:27,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:27,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:25:27,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:27,908.908 INFO    ] No camera update needed
[2026-08-25 02:25:27,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:25:27,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:25:27,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:25:27,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:25:29,962.962 INFO    ] ================================================
[2026-08-25 02:25:29,977.977 INFO    ] Launching Daemon at Tue Aug 25 02:25:29 IST 2026
[2026-08-25 02:25:29,988.988 INFO    ] ================================================
[2026-08-25 02:25:30,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:25:30
[2026-08-25 02:25:31,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:25:31,439.439 INFO    ] Initializing speech engine...
[2026-08-25 02:25:31,451.451 INFO    ] 2026-08-25 02:25:31
[2026-08-25 02:25:31,717.717 INFO    ] 2026-08-25 02:25:31
[2026-08-25 02:25:31,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:25:31,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:25:31,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:25:32,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:25:32,207.207 INFO    ] time= 25/08/2026 02:25:32
[2026-08-25 02:25:32,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:25:32,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:25:32,419.419 INFO    ] No existing commands found in stream
[2026-08-25 02:25:37,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:25:37,437.437 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 02:25:39,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:25:39,688.688 INFO    ] Checking for system updates...
[2026-08-25 02:25:39,723.723 INFO    ] 200
[2026-08-25 02:25:39,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:39,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:39,780.780 INFO    ] No update needed
[2026-08-25 02:25:39,782.782 INFO    ] Checking for camera pi updates...
[2026-08-25 02:25:39,819.819 INFO    ] 200
[2026-08-25 02:25:39,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:39,865.865 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:25:39,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:39,918.918 INFO    ] No camera update needed
[2026-08-25 02:25:39,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:25:39,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:25:39,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:25:39,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:25:41,973.973 INFO    ] ================================================
[2026-08-25 02:25:41,989.989 INFO    ] Launching Daemon at Tue Aug 25 02:25:41 IST 2026
[2026-08-25 02:25:42,000.000 INFO    ] ================================================
[2026-08-25 02:25:42,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:25:42
[2026-08-25 02:25:43,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:25:43,599.599 INFO    ] Initializing speech engine...
[2026-08-25 02:25:43,610.610 INFO    ] 2026-08-25 02:25:43
[2026-08-25 02:25:43,886.886 INFO    ] 2026-08-25 02:25:43
[2026-08-25 02:25:43,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:25:44,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:25:44,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:25:44,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:25:44,344.344 INFO    ] time= 25/08/2026 02:25:44
[2026-08-25 02:25:44,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:25:44,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:25:44,575.575 INFO    ] No existing commands found in stream
[2026-08-25 02:25:49,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:25:49,605.605 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 02:25:51,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:25:51,271.271 INFO    ] Checking for system updates...
[2026-08-25 02:25:51,307.307 INFO    ] 200
[2026-08-25 02:25:51,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:51,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:51,365.365 INFO    ] No update needed
[2026-08-25 02:25:51,368.368 INFO    ] Checking for camera pi updates...
[2026-08-25 02:25:51,402.402 INFO    ] 200
[2026-08-25 02:25:51,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:25:51,446.446 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:25:51,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:25:51,503.503 INFO    ] No camera update needed
[2026-08-25 02:25:51,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:25:51,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:25:51,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:25:51,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:25:53,560.560 INFO    ] ================================================
[2026-08-25 02:25:53,576.576 INFO    ] Launching Daemon at Tue Aug 25 02:25:53 IST 2026
[2026-08-25 02:25:53,587.587 INFO    ] ================================================
[2026-08-25 02:25:54,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:25:54
[2026-08-25 02:25:54,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:25:55,012.012 INFO    ] Initializing speech engine...
[2026-08-25 02:25:55,035.035 INFO    ] 2026-08-25 02:25:55
[2026-08-25 02:25:55,289.289 INFO    ] 2026-08-25 02:25:55
[2026-08-25 02:25:55,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:25:55,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:25:55,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:25:55,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:25:55,753.753 INFO    ] time= 25/08/2026 02:25:55
[2026-08-25 02:25:55,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:25:55,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:25:55,972.972 INFO    ] No existing commands found in stream
[2026-08-25 02:26:01,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:26:01,005.005 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 02:26:04,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:26:04,710.710 INFO    ] Checking for system updates...
[2026-08-25 02:26:04,746.746 INFO    ] 200
[2026-08-25 02:26:04,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:04,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:04,809.809 INFO    ] No update needed
[2026-08-25 02:26:04,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 02:26:04,846.846 INFO    ] 200
[2026-08-25 02:26:04,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:04,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:26:04,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:04,938.938 INFO    ] No camera update needed
[2026-08-25 02:26:04,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:26:04,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:26:04,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:26:04,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:26:06,994.994 INFO    ] ================================================
[2026-08-25 02:26:07,009.009 INFO    ] Launching Daemon at Tue Aug 25 02:26:07 IST 2026
[2026-08-25 02:26:07,020.020 INFO    ] ================================================
[2026-08-25 02:26:07,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:26:07
[2026-08-25 02:26:08,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:26:08,466.466 INFO    ] Initializing speech engine...
[2026-08-25 02:26:08,474.474 INFO    ] 2026-08-25 02:26:08
[2026-08-25 02:26:08,767.767 INFO    ] 2026-08-25 02:26:08
[2026-08-25 02:26:08,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:26:08,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:26:09,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:26:09,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:26:09,143.143 INFO    ] time= 25/08/2026 02:26:09
[2026-08-25 02:26:09,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:26:09,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:26:09,267.267 INFO    ] No existing commands found in stream
[2026-08-25 02:26:14,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:26:14,283.283 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 02:26:17,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:26:17,689.689 INFO    ] Checking for system updates...
[2026-08-25 02:26:17,725.725 INFO    ] 200
[2026-08-25 02:26:17,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:17,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:17,781.781 INFO    ] No update needed
[2026-08-25 02:26:17,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 02:26:17,817.817 INFO    ] 200
[2026-08-25 02:26:17,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:17,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:26:18,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:18,006.006 INFO    ] No camera update needed
[2026-08-25 02:26:18,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:26:18,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:26:18,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:26:18,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:26:20,061.061 INFO    ] ================================================
[2026-08-25 02:26:20,077.077 INFO    ] Launching Daemon at Tue Aug 25 02:26:20 IST 2026
[2026-08-25 02:26:20,092.092 INFO    ] ================================================
[2026-08-25 02:26:20,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:26:20
[2026-08-25 02:26:21,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:26:21,533.533 INFO    ] Initializing speech engine...
[2026-08-25 02:26:21,551.551 INFO    ] 2026-08-25 02:26:21
[2026-08-25 02:26:21,800.800 INFO    ] 2026-08-25 02:26:21
[2026-08-25 02:26:21,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:26:22,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:26:22,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:26:22,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:26:22,272.272 INFO    ] time= 25/08/2026 02:26:22
[2026-08-25 02:26:22,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:26:22,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:26:22,491.491 INFO    ] No existing commands found in stream
[2026-08-25 02:26:27,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:26:27,524.524 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 02:26:31,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:26:31,412.412 INFO    ] Checking for system updates...
[2026-08-25 02:26:31,449.449 INFO    ] 200
[2026-08-25 02:26:31,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:31,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:31,510.510 INFO    ] No update needed
[2026-08-25 02:26:31,512.512 INFO    ] Checking for camera pi updates...
[2026-08-25 02:26:31,547.547 INFO    ] 200
[2026-08-25 02:26:31,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:31,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:26:31,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:31,655.655 INFO    ] No camera update needed
[2026-08-25 02:26:31,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:26:31,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:26:31,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:26:31,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:26:33,715.715 INFO    ] ================================================
[2026-08-25 02:26:33,730.730 INFO    ] Launching Daemon at Tue Aug 25 02:26:33 IST 2026
[2026-08-25 02:26:33,741.741 INFO    ] ================================================
[2026-08-25 02:26:34,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:26:34
[2026-08-25 02:26:34,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:26:35,193.193 INFO    ] Initializing speech engine...
[2026-08-25 02:26:35,202.202 INFO    ] 2026-08-25 02:26:35
[2026-08-25 02:26:35,451.451 INFO    ] 2026-08-25 02:26:35
[2026-08-25 02:26:35,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:26:35,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:26:35,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:26:35,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:26:35,926.926 INFO    ] time= 25/08/2026 02:26:35
[2026-08-25 02:26:35,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:26:36,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:26:36,140.140 INFO    ] No existing commands found in stream
[2026-08-25 02:26:41,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:26:41,169.169 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 02:26:43,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:26:43,488.488 INFO    ] Checking for system updates...
[2026-08-25 02:26:43,523.523 INFO    ] 200
[2026-08-25 02:26:43,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:43,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:43,579.579 INFO    ] No update needed
[2026-08-25 02:26:43,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 02:26:43,615.615 INFO    ] 200
[2026-08-25 02:26:43,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:43,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:26:43,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:43,713.713 INFO    ] No camera update needed
[2026-08-25 02:26:43,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:26:43,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:26:43,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:26:43,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:26:45,770.770 INFO    ] ================================================
[2026-08-25 02:26:45,785.785 INFO    ] Launching Daemon at Tue Aug 25 02:26:45 IST 2026
[2026-08-25 02:26:45,797.797 INFO    ] ================================================
[2026-08-25 02:26:46,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:26:46
[2026-08-25 02:26:46,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:26:47,235.235 INFO    ] Initializing speech engine...
[2026-08-25 02:26:47,244.244 INFO    ] 2026-08-25 02:26:47
[2026-08-25 02:26:47,498.498 INFO    ] 2026-08-25 02:26:47
[2026-08-25 02:26:47,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:26:47,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:26:47,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:26:47,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:26:47,993.993 INFO    ] time= 25/08/2026 02:26:47
[2026-08-25 02:26:48,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:26:48,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:26:48,202.202 INFO    ] No existing commands found in stream
[2026-08-25 02:26:53,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:26:53,220.220 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 02:26:57,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:26:57,210.210 INFO    ] Checking for system updates...
[2026-08-25 02:26:57,250.250 INFO    ] 200
[2026-08-25 02:26:57,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:57,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:57,306.306 INFO    ] No update needed
[2026-08-25 02:26:57,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 02:26:57,341.341 INFO    ] 200
[2026-08-25 02:26:57,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:26:57,386.386 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:26:57,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:26:57,444.444 INFO    ] No camera update needed
[2026-08-25 02:26:57,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:26:57,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:26:57,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:26:57,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:26:59,500.500 INFO    ] ================================================
[2026-08-25 02:26:59,515.515 INFO    ] Launching Daemon at Tue Aug 25 02:26:59 IST 2026
[2026-08-25 02:26:59,526.526 INFO    ] ================================================
[2026-08-25 02:27:00,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:27:00
[2026-08-25 02:27:00,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:27:01,117.117 INFO    ] Initializing speech engine...
[2026-08-25 02:27:01,124.124 INFO    ] 2026-08-25 02:27:01
[2026-08-25 02:27:01,384.384 INFO    ] 2026-08-25 02:27:01
[2026-08-25 02:27:01,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:27:01,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:27:01,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:27:01,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:27:01,778.778 INFO    ] time= 25/08/2026 02:27:01
[2026-08-25 02:27:01,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:27:01,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:27:01,945.945 INFO    ] No existing commands found in stream
[2026-08-25 02:27:06,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:27:06,975.975 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 02:27:10,606.606 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:27:10,609.609 INFO    ] Checking for system updates...
[2026-08-25 02:27:10,644.644 INFO    ] 200
[2026-08-25 02:27:10,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:10,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:27:10,701.701 INFO    ] No update needed
[2026-08-25 02:27:10,704.704 INFO    ] Checking for camera pi updates...
[2026-08-25 02:27:10,740.740 INFO    ] 200
[2026-08-25 02:27:10,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:10,782.782 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:27:10,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:27:10,845.845 INFO    ] No camera update needed
[2026-08-25 02:27:10,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:27:10,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:27:10,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:27:10,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:27:12,900.900 INFO    ] ================================================
[2026-08-25 02:27:12,915.915 INFO    ] Launching Daemon at Tue Aug 25 02:27:12 IST 2026
[2026-08-25 02:27:12,927.927 INFO    ] ================================================
[2026-08-25 02:27:13,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:27:13
[2026-08-25 02:27:14,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:27:14,353.353 INFO    ] Initializing speech engine...
[2026-08-25 02:27:14,364.364 INFO    ] 2026-08-25 02:27:14
[2026-08-25 02:27:14,616.616 INFO    ] 2026-08-25 02:27:14
[2026-08-25 02:27:14,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:27:14,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:27:14,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:27:14,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:27:14,992.992 INFO    ] time= 25/08/2026 02:27:14
[2026-08-25 02:27:14,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:27:15,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:27:15,181.181 INFO    ] No existing commands found in stream
[2026-08-25 02:27:20,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:27:20,204.204 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 02:27:21,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:27:21,259.259 INFO    ] Checking for system updates...
[2026-08-25 02:27:21,295.295 INFO    ] 200
[2026-08-25 02:27:21,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:21,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:27:21,355.355 INFO    ] No update needed
[2026-08-25 02:27:21,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 02:27:21,394.394 INFO    ] 200
[2026-08-25 02:27:21,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:21,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:27:21,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:27:21,493.493 INFO    ] No camera update needed
[2026-08-25 02:27:21,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:27:21,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:27:21,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:27:21,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:27:23,548.548 INFO    ] ================================================
[2026-08-25 02:27:23,564.564 INFO    ] Launching Daemon at Tue Aug 25 02:27:23 IST 2026
[2026-08-25 02:27:23,575.575 INFO    ] ================================================
[2026-08-25 02:27:24,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:27:24
[2026-08-25 02:27:24,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:27:25,178.178 INFO    ] Initializing speech engine...
[2026-08-25 02:27:25,187.187 INFO    ] 2026-08-25 02:27:25
[2026-08-25 02:27:25,476.476 INFO    ] 2026-08-25 02:27:25
[2026-08-25 02:27:25,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:27:25,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:27:25,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:27:25,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:27:25,942.942 INFO    ] time= 25/08/2026 02:27:25
[2026-08-25 02:27:25,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:27:26,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:27:26,129.129 INFO    ] No existing commands found in stream
[2026-08-25 02:27:31,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:27:31,155.155 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 02:27:33,837.837 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:27:33,840.840 INFO    ] Checking for system updates...
[2026-08-25 02:27:33,875.875 INFO    ] 200
[2026-08-25 02:27:33,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:33,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:27:33,932.932 INFO    ] No update needed
[2026-08-25 02:27:33,935.935 INFO    ] Checking for camera pi updates...
[2026-08-25 02:27:33,969.969 INFO    ] 200
[2026-08-25 02:27:33,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:34,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:27:34,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:27:34,063.063 INFO    ] No camera update needed
[2026-08-25 02:27:34,065.065 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:27:34,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:27:34,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:27:34,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:27:36,118.118 INFO    ] ================================================
[2026-08-25 02:27:36,134.134 INFO    ] Launching Daemon at Tue Aug 25 02:27:36 IST 2026
[2026-08-25 02:27:36,145.145 INFO    ] ================================================
[2026-08-25 02:27:36,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:27:36
[2026-08-25 02:27:37,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:27:37,612.612 INFO    ] Initializing speech engine...
[2026-08-25 02:27:37,626.626 INFO    ] 2026-08-25 02:27:37
[2026-08-25 02:27:37,892.892 INFO    ] 2026-08-25 02:27:37
[2026-08-25 02:27:37,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:27:38,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:27:38,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:27:38,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:27:38,272.272 INFO    ] time= 25/08/2026 02:27:38
[2026-08-25 02:27:38,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:27:38,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:27:38,452.452 INFO    ] No existing commands found in stream
[2026-08-25 02:27:43,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:27:43,485.485 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 02:27:46,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:27:46,050.050 INFO    ] Checking for system updates...
[2026-08-25 02:27:46,085.085 INFO    ] 200
[2026-08-25 02:27:46,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:46,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:27:46,141.141 INFO    ] No update needed
[2026-08-25 02:27:46,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 02:27:46,176.176 INFO    ] 200
[2026-08-25 02:27:46,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:46,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:27:46,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:27:46,278.278 INFO    ] No camera update needed
[2026-08-25 02:27:46,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:27:46,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:27:46,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:27:46,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:27:48,335.335 INFO    ] ================================================
[2026-08-25 02:27:48,350.350 INFO    ] Launching Daemon at Tue Aug 25 02:27:48 IST 2026
[2026-08-25 02:27:48,361.361 INFO    ] ================================================
[2026-08-25 02:27:49,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:27:49
[2026-08-25 02:27:49,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:27:49,997.997 INFO    ] Initializing speech engine...
[2026-08-25 02:27:50,003.003 INFO    ] 2026-08-25 02:27:49
[2026-08-25 02:27:50,313.313 INFO    ] 2026-08-25 02:27:50
[2026-08-25 02:27:50,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:27:50,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:27:50,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:27:50,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:27:50,819.819 INFO    ] time= 25/08/2026 02:27:50
[2026-08-25 02:27:50,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:27:50,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:27:50,994.994 INFO    ] No existing commands found in stream
[2026-08-25 02:27:56,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:27:56,033.033 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 02:27:57,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:27:57,221.221 INFO    ] Checking for system updates...
[2026-08-25 02:27:57,257.257 INFO    ] 200
[2026-08-25 02:27:57,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:57,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:27:57,316.316 INFO    ] No update needed
[2026-08-25 02:27:57,319.319 INFO    ] Checking for camera pi updates...
[2026-08-25 02:27:57,353.353 INFO    ] 200
[2026-08-25 02:27:57,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:27:57,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:27:57,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:27:57,451.451 INFO    ] No camera update needed
[2026-08-25 02:27:57,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:27:57,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:27:57,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:27:57,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:27:59,510.510 INFO    ] ================================================
[2026-08-25 02:27:59,525.525 INFO    ] Launching Daemon at Tue Aug 25 02:27:59 IST 2026
[2026-08-25 02:27:59,537.537 INFO    ] ================================================
[2026-08-25 02:28:00,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:28:00
[2026-08-25 02:28:00,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:28:01,156.156 INFO    ] Initializing speech engine...
[2026-08-25 02:28:01,163.163 INFO    ] 2026-08-25 02:28:01
[2026-08-25 02:28:01,436.436 INFO    ] 2026-08-25 02:28:01
[2026-08-25 02:28:01,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:28:01,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:28:01,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:28:01,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:28:01,929.929 INFO    ] time= 25/08/2026 02:28:01
[2026-08-25 02:28:01,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:28:02,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:28:02,140.140 INFO    ] No existing commands found in stream
[2026-08-25 02:28:07,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:28:07,153.153 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 02:28:11,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:28:11,298.298 INFO    ] Checking for system updates...
[2026-08-25 02:28:11,333.333 INFO    ] 200
[2026-08-25 02:28:11,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:11,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:11,391.391 INFO    ] No update needed
[2026-08-25 02:28:11,394.394 INFO    ] Checking for camera pi updates...
[2026-08-25 02:28:11,427.427 INFO    ] 200
[2026-08-25 02:28:11,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:11,469.469 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:28:11,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:11,521.521 INFO    ] No camera update needed
[2026-08-25 02:28:11,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:28:11,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:28:11,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:28:11,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:28:13,576.576 INFO    ] ================================================
[2026-08-25 02:28:13,591.591 INFO    ] Launching Daemon at Tue Aug 25 02:28:13 IST 2026
[2026-08-25 02:28:13,602.602 INFO    ] ================================================
[2026-08-25 02:28:14,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:28:14
[2026-08-25 02:28:14,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:28:15,070.070 INFO    ] Initializing speech engine...
[2026-08-25 02:28:15,077.077 INFO    ] 2026-08-25 02:28:15
[2026-08-25 02:28:15,339.339 INFO    ] 2026-08-25 02:28:15
[2026-08-25 02:28:15,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:28:15,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:28:15,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:28:15,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:28:15,802.802 INFO    ] time= 25/08/2026 02:28:15
[2026-08-25 02:28:15,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:28:15,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:28:15,977.977 INFO    ] No existing commands found in stream
[2026-08-25 02:28:21,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:28:21,010.010 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 02:28:24,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:28:24,170.170 INFO    ] Checking for system updates...
[2026-08-25 02:28:24,206.206 INFO    ] 200
[2026-08-25 02:28:24,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:24,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:24,264.264 INFO    ] No update needed
[2026-08-25 02:28:24,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 02:28:24,304.304 INFO    ] 200
[2026-08-25 02:28:24,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:24,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:28:24,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:24,501.501 INFO    ] No camera update needed
[2026-08-25 02:28:24,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:28:24,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:28:24,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:28:24,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:28:26,558.558 INFO    ] ================================================
[2026-08-25 02:28:26,573.573 INFO    ] Launching Daemon at Tue Aug 25 02:28:26 IST 2026
[2026-08-25 02:28:26,585.585 INFO    ] ================================================
[2026-08-25 02:28:27,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:28:27
[2026-08-25 02:28:27,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:28:28,023.023 INFO    ] Initializing speech engine...
[2026-08-25 02:28:28,038.038 INFO    ] 2026-08-25 02:28:28
[2026-08-25 02:28:28,324.324 INFO    ] 2026-08-25 02:28:28
[2026-08-25 02:28:28,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:28:28,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:28:28,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:28:28,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:28:28,747.747 INFO    ] time= 25/08/2026 02:28:28
[2026-08-25 02:28:28,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:28:28,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:28:28,839.839 INFO    ] No existing commands found in stream
[2026-08-25 02:28:33,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:28:33,877.877 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 02:28:35,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:28:35,220.220 INFO    ] Checking for system updates...
[2026-08-25 02:28:35,255.255 INFO    ] 200
[2026-08-25 02:28:35,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:35,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:35,312.312 INFO    ] No update needed
[2026-08-25 02:28:35,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 02:28:35,348.348 INFO    ] 200
[2026-08-25 02:28:35,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:35,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:28:35,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:35,453.453 INFO    ] No camera update needed
[2026-08-25 02:28:35,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:28:35,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:28:35,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:28:35,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:28:37,508.508 INFO    ] ================================================
[2026-08-25 02:28:37,523.523 INFO    ] Launching Daemon at Tue Aug 25 02:28:37 IST 2026
[2026-08-25 02:28:37,535.535 INFO    ] ================================================
[2026-08-25 02:28:38,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:28:38
[2026-08-25 02:28:38,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:28:38,964.964 INFO    ] Initializing speech engine...
[2026-08-25 02:28:38,973.973 INFO    ] 2026-08-25 02:28:38
[2026-08-25 02:28:39,224.224 INFO    ] 2026-08-25 02:28:39
[2026-08-25 02:28:39,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:28:39,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:28:39,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:28:39,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:28:39,621.621 INFO    ] time= 25/08/2026 02:28:39
[2026-08-25 02:28:39,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:28:39,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:28:39,731.731 INFO    ] No existing commands found in stream
[2026-08-25 02:28:44,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:28:44,749.749 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 02:28:45,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:28:45,748.748 INFO    ] Checking for system updates...
[2026-08-25 02:28:45,783.783 INFO    ] 200
[2026-08-25 02:28:45,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:45,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:45,841.841 INFO    ] No update needed
[2026-08-25 02:28:45,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 02:28:45,879.879 INFO    ] 200
[2026-08-25 02:28:45,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:45,922.922 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:28:45,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:28:45,986.986 INFO    ] No camera update needed
[2026-08-25 02:28:45,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:28:45,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:28:45,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:28:46,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:28:48,040.040 INFO    ] ================================================
[2026-08-25 02:28:48,056.056 INFO    ] Launching Daemon at Tue Aug 25 02:28:48 IST 2026
[2026-08-25 02:28:48,067.067 INFO    ] ================================================
[2026-08-25 02:28:48,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:28:48
[2026-08-25 02:28:49,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:28:49,696.696 INFO    ] Initializing speech engine...
[2026-08-25 02:28:49,708.708 INFO    ] 2026-08-25 02:28:49
[2026-08-25 02:28:50,022.022 INFO    ] 2026-08-25 02:28:49
[2026-08-25 02:28:50,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:28:50,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:28:50,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:28:50,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:28:50,529.529 INFO    ] time= 25/08/2026 02:28:50
[2026-08-25 02:28:50,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:28:50,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:28:50,687.687 INFO    ] No existing commands found in stream
[2026-08-25 02:28:55,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:28:55,702.702 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 02:28:57,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:28:57,414.414 INFO    ] Checking for system updates...
[2026-08-25 02:28:57,450.450 INFO    ] 200
[2026-08-25 02:28:57,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:57,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:28:57,510.510 INFO    ] No update needed
[2026-08-25 02:28:57,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 02:28:57,548.548 INFO    ] 200
[2026-08-25 02:28:57,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:28:57,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:28:57,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:28:57,659.659 INFO    ] No camera update needed
[2026-08-25 02:28:57,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:28:57,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:28:57,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:28:57,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:28:59,718.718 INFO    ] ================================================
[2026-08-25 02:28:59,735.735 INFO    ] Launching Daemon at Tue Aug 25 02:28:59 IST 2026
[2026-08-25 02:28:59,745.745 INFO    ] ================================================
[2026-08-25 02:29:00,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:29:00
[2026-08-25 02:29:00,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:29:01,174.174 INFO    ] Initializing speech engine...
[2026-08-25 02:29:01,184.184 INFO    ] 2026-08-25 02:29:01
[2026-08-25 02:29:01,433.433 INFO    ] 2026-08-25 02:29:01
[2026-08-25 02:29:01,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:29:01,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:29:01,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:29:01,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:29:01,811.811 INFO    ] time= 25/08/2026 02:29:01
[2026-08-25 02:29:01,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:29:01,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:29:01,997.997 INFO    ] No existing commands found in stream
[2026-08-25 02:29:07,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:29:07,022.022 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 02:29:10,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:29:10,411.411 INFO    ] Checking for system updates...
[2026-08-25 02:29:10,446.446 INFO    ] 200
[2026-08-25 02:29:10,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:10,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:29:10,510.510 INFO    ] No update needed
[2026-08-25 02:29:10,512.512 INFO    ] Checking for camera pi updates...
[2026-08-25 02:29:10,546.546 INFO    ] 200
[2026-08-25 02:29:10,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:10,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:29:10,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:29:10,639.639 INFO    ] No camera update needed
[2026-08-25 02:29:10,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:29:10,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:29:10,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:29:10,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:29:12,696.696 INFO    ] ================================================
[2026-08-25 02:29:12,712.712 INFO    ] Launching Daemon at Tue Aug 25 02:29:12 IST 2026
[2026-08-25 02:29:12,724.724 INFO    ] ================================================
[2026-08-25 02:29:13,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:29:13
[2026-08-25 02:29:13,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:29:14,139.139 INFO    ] Initializing speech engine...
[2026-08-25 02:29:14,152.152 INFO    ] 2026-08-25 02:29:14
[2026-08-25 02:29:14,420.420 INFO    ] 2026-08-25 02:29:14
[2026-08-25 02:29:14,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:29:14,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:29:14,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:29:14,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:29:14,794.794 INFO    ] time= 25/08/2026 02:29:14
[2026-08-25 02:29:14,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:29:14,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:29:14,889.889 INFO    ] No existing commands found in stream
[2026-08-25 02:29:19,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:29:19,927.927 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 02:29:21,329.329 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:29:21,332.332 INFO    ] Checking for system updates...
[2026-08-25 02:29:21,367.367 INFO    ] 200
[2026-08-25 02:29:21,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:21,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:29:21,425.425 INFO    ] No update needed
[2026-08-25 02:29:21,427.427 INFO    ] Checking for camera pi updates...
[2026-08-25 02:29:21,460.460 INFO    ] 200
[2026-08-25 02:29:21,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:21,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:29:21,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:29:21,552.552 INFO    ] No camera update needed
[2026-08-25 02:29:21,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:29:21,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:29:21,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:29:21,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:29:23,611.611 INFO    ] ================================================
[2026-08-25 02:29:23,627.627 INFO    ] Launching Daemon at Tue Aug 25 02:29:23 IST 2026
[2026-08-25 02:29:23,638.638 INFO    ] ================================================
[2026-08-25 02:29:24,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:29:24
[2026-08-25 02:29:25,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:29:25,323.323 INFO    ] Initializing speech engine...
[2026-08-25 02:29:25,335.335 INFO    ] 2026-08-25 02:29:25
[2026-08-25 02:29:25,649.649 INFO    ] 2026-08-25 02:29:25
[2026-08-25 02:29:25,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:29:25,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:29:25,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:29:26,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:29:26,159.159 INFO    ] time= 25/08/2026 02:29:26
[2026-08-25 02:29:26,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:29:26,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:29:26,314.314 INFO    ] No existing commands found in stream
[2026-08-25 02:29:31,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:29:31,348.348 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 02:29:32,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:29:32,391.391 INFO    ] Checking for system updates...
[2026-08-25 02:29:32,430.430 INFO    ] 200
[2026-08-25 02:29:32,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:32,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:29:32,496.496 INFO    ] No update needed
[2026-08-25 02:29:32,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 02:29:32,538.538 INFO    ] 200
[2026-08-25 02:29:32,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:32,586.586 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:29:32,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:29:32,638.638 INFO    ] No camera update needed
[2026-08-25 02:29:32,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:29:32,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:29:32,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:29:32,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:29:34,696.696 INFO    ] ================================================
[2026-08-25 02:29:34,711.711 INFO    ] Launching Daemon at Tue Aug 25 02:29:34 IST 2026
[2026-08-25 02:29:34,722.722 INFO    ] ================================================
[2026-08-25 02:29:35,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:29:35
[2026-08-25 02:29:36,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:29:36,396.396 INFO    ] Initializing speech engine...
[2026-08-25 02:29:36,404.404 INFO    ] 2026-08-25 02:29:36
[2026-08-25 02:29:36,728.728 INFO    ] 2026-08-25 02:29:36
[2026-08-25 02:29:36,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:29:36,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:29:37,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:29:37,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:29:37,242.242 INFO    ] time= 25/08/2026 02:29:37
[2026-08-25 02:29:37,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:29:37,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:29:37,403.403 INFO    ] No existing commands found in stream
[2026-08-25 02:29:42,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:29:42,430.430 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 02:29:44,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:29:44,411.411 INFO    ] Checking for system updates...
[2026-08-25 02:29:44,448.448 INFO    ] 200
[2026-08-25 02:29:44,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:44,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:29:44,507.507 INFO    ] No update needed
[2026-08-25 02:29:44,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 02:29:44,545.545 INFO    ] 200
[2026-08-25 02:29:44,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:44,591.591 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:29:44,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:29:44,657.657 INFO    ] No camera update needed
[2026-08-25 02:29:44,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:29:44,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:29:44,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:29:44,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:29:46,716.716 INFO    ] ================================================
[2026-08-25 02:29:46,732.732 INFO    ] Launching Daemon at Tue Aug 25 02:29:46 IST 2026
[2026-08-25 02:29:46,743.743 INFO    ] ================================================
[2026-08-25 02:29:47,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:29:47
[2026-08-25 02:29:47,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:29:48,190.190 INFO    ] Initializing speech engine...
[2026-08-25 02:29:48,200.200 INFO    ] 2026-08-25 02:29:48
[2026-08-25 02:29:48,502.502 INFO    ] 2026-08-25 02:29:48
[2026-08-25 02:29:48,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:29:48,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:29:48,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:29:48,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:29:48,901.901 INFO    ] time= 25/08/2026 02:29:48
[2026-08-25 02:29:48,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:29:48,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:29:49,024.024 INFO    ] No existing commands found in stream
[2026-08-25 02:29:54,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:29:54,040.040 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 02:29:57,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:29:57,481.481 INFO    ] Checking for system updates...
[2026-08-25 02:29:57,517.517 INFO    ] 200
[2026-08-25 02:29:57,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:57,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:29:57,585.585 INFO    ] No update needed
[2026-08-25 02:29:57,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 02:29:57,623.623 INFO    ] 200
[2026-08-25 02:29:57,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:29:57,674.674 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:29:57,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:29:57,737.737 INFO    ] No camera update needed
[2026-08-25 02:29:57,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:29:57,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:29:57,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:29:57,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:29:59,797.797 INFO    ] ================================================
[2026-08-25 02:29:59,813.813 INFO    ] Launching Daemon at Tue Aug 25 02:29:59 IST 2026
[2026-08-25 02:29:59,824.824 INFO    ] ================================================
[2026-08-25 02:30:00,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:30:00
[2026-08-25 02:30:00,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:30:02,178.178 INFO    ] Initializing speech engine...
[2026-08-25 02:30:02,181.181 INFO    ] 2026-08-25 02:30:02
[2026-08-25 02:30:02,579.579 INFO    ] 2026-08-25 02:30:02
[2026-08-25 02:30:02,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:30:02,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:30:02,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:30:02,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:30:02,912.912 INFO    ] time= 25/08/2026 02:30:02
[2026-08-25 02:30:02,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:30:02,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:30:02,981.981 INFO    ] No existing commands found in stream
[2026-08-25 02:30:07,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:30:07,994.994 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 02:30:12,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:30:12,215.215 INFO    ] Checking for system updates...
[2026-08-25 02:30:12,252.252 INFO    ] 200
[2026-08-25 02:30:12,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:12,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:12,309.309 INFO    ] No update needed
[2026-08-25 02:30:12,311.311 INFO    ] Checking for camera pi updates...
[2026-08-25 02:30:12,345.345 INFO    ] 200
[2026-08-25 02:30:12,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:12,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:30:12,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:12,455.455 INFO    ] No camera update needed
[2026-08-25 02:30:12,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:30:12,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:30:12,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:30:12,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:30:14,510.510 INFO    ] ================================================
[2026-08-25 02:30:14,525.525 INFO    ] Launching Daemon at Tue Aug 25 02:30:14 IST 2026
[2026-08-25 02:30:14,535.535 INFO    ] ================================================
[2026-08-25 02:30:15,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:30:15
[2026-08-25 02:30:15,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:30:15,991.991 INFO    ] Initializing speech engine...
[2026-08-25 02:30:15,998.998 INFO    ] 2026-08-25 02:30:15
[2026-08-25 02:30:16,259.259 INFO    ] 2026-08-25 02:30:16
[2026-08-25 02:30:16,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:30:16,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:30:16,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:30:16,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:30:16,747.747 INFO    ] time= 25/08/2026 02:30:16
[2026-08-25 02:30:16,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:30:16,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:30:16,933.933 INFO    ] No existing commands found in stream
[2026-08-25 02:30:21,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:30:21,963.963 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 02:30:25,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:30:25,120.120 INFO    ] Checking for system updates...
[2026-08-25 02:30:25,155.155 INFO    ] 200
[2026-08-25 02:30:25,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:25,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:25,212.212 INFO    ] No update needed
[2026-08-25 02:30:25,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 02:30:25,248.248 INFO    ] 200
[2026-08-25 02:30:25,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:25,290.290 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:30:25,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:25,341.341 INFO    ] No camera update needed
[2026-08-25 02:30:25,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:30:25,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:30:25,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:30:25,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:30:27,398.398 INFO    ] ================================================
[2026-08-25 02:30:27,413.413 INFO    ] Launching Daemon at Tue Aug 25 02:30:27 IST 2026
[2026-08-25 02:30:27,423.423 INFO    ] ================================================
[2026-08-25 02:30:28,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:30:28
[2026-08-25 02:30:28,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:30:28,889.889 INFO    ] Initializing speech engine...
[2026-08-25 02:30:28,896.896 INFO    ] 2026-08-25 02:30:28
[2026-08-25 02:30:29,157.157 INFO    ] 2026-08-25 02:30:29
[2026-08-25 02:30:29,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:30:29,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:30:29,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:30:29,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:30:29,642.642 INFO    ] time= 25/08/2026 02:30:29
[2026-08-25 02:30:29,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:30:29,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:30:29,852.852 INFO    ] No existing commands found in stream
[2026-08-25 02:30:34,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:30:34,869.869 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 02:30:36,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:30:36,028.028 INFO    ] Checking for system updates...
[2026-08-25 02:30:36,064.064 INFO    ] 200
[2026-08-25 02:30:36,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:36,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:36,124.124 INFO    ] No update needed
[2026-08-25 02:30:36,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 02:30:36,160.160 INFO    ] 200
[2026-08-25 02:30:36,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:36,203.203 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:30:36,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:36,253.253 INFO    ] No camera update needed
[2026-08-25 02:30:36,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:30:36,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:30:36,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:30:36,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:30:38,313.313 INFO    ] ================================================
[2026-08-25 02:30:38,328.328 INFO    ] Launching Daemon at Tue Aug 25 02:30:38 IST 2026
[2026-08-25 02:30:38,339.339 INFO    ] ================================================
[2026-08-25 02:30:38,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:30:38
[2026-08-25 02:30:39,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:30:39,750.750 INFO    ] Initializing speech engine...
[2026-08-25 02:30:39,769.769 INFO    ] 2026-08-25 02:30:39
[2026-08-25 02:30:40,015.015 INFO    ] 2026-08-25 02:30:40
[2026-08-25 02:30:40,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:30:40,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:30:40,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:30:40,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:30:40,490.490 INFO    ] time= 25/08/2026 02:30:40
[2026-08-25 02:30:40,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:30:40,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:30:40,706.706 INFO    ] No existing commands found in stream
[2026-08-25 02:30:45,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:30:45,733.733 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 02:30:48,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:30:48,892.892 INFO    ] Checking for system updates...
[2026-08-25 02:30:48,927.927 INFO    ] 200
[2026-08-25 02:30:48,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:48,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:48,984.984 INFO    ] No update needed
[2026-08-25 02:30:48,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 02:30:49,020.020 INFO    ] 200
[2026-08-25 02:30:49,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:30:49,066.066 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:30:49,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:30:49,116.116 INFO    ] No camera update needed
[2026-08-25 02:30:49,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:30:49,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:30:49,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:30:49,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:30:51,173.173 INFO    ] ================================================
[2026-08-25 02:30:51,188.188 INFO    ] Launching Daemon at Tue Aug 25 02:30:51 IST 2026
[2026-08-25 02:30:51,199.199 INFO    ] ================================================
[2026-08-25 02:30:51,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:30:51
[2026-08-25 02:30:52,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:30:52,627.627 INFO    ] Initializing speech engine...
[2026-08-25 02:30:52,636.636 INFO    ] 2026-08-25 02:30:52
[2026-08-25 02:30:52,888.888 INFO    ] 2026-08-25 02:30:52
[2026-08-25 02:30:52,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:30:53,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:30:53,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:30:53,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:30:53,267.267 INFO    ] time= 25/08/2026 02:30:53
[2026-08-25 02:30:53,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:30:53,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:30:53,437.437 INFO    ] No existing commands found in stream
[2026-08-25 02:30:58,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:30:58,464.464 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 02:31:01,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:31:01,266.266 INFO    ] Checking for system updates...
[2026-08-25 02:31:01,302.302 INFO    ] 200
[2026-08-25 02:31:01,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:01,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:31:01,359.359 INFO    ] No update needed
[2026-08-25 02:31:01,362.362 INFO    ] Checking for camera pi updates...
[2026-08-25 02:31:01,397.397 INFO    ] 200
[2026-08-25 02:31:01,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:01,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:31:01,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:31:01,489.489 INFO    ] No camera update needed
[2026-08-25 02:31:01,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:31:01,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:31:01,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:31:01,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:31:03,548.548 INFO    ] ================================================
[2026-08-25 02:31:03,565.565 INFO    ] Launching Daemon at Tue Aug 25 02:31:03 IST 2026
[2026-08-25 02:31:03,576.576 INFO    ] ================================================
[2026-08-25 02:31:04,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:31:04
[2026-08-25 02:31:04,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:31:05,011.011 INFO    ] Initializing speech engine...
[2026-08-25 02:31:05,024.024 INFO    ] 2026-08-25 02:31:05
[2026-08-25 02:31:05,291.291 INFO    ] 2026-08-25 02:31:05
[2026-08-25 02:31:05,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:31:05,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:31:05,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:31:05,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:31:05,668.668 INFO    ] time= 25/08/2026 02:31:05
[2026-08-25 02:31:05,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:31:05,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:31:05,845.845 INFO    ] No existing commands found in stream
[2026-08-25 02:31:10,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:31:10,873.873 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 02:31:13,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:31:13,327.327 INFO    ] Checking for system updates...
[2026-08-25 02:31:13,362.362 INFO    ] 200
[2026-08-25 02:31:13,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:13,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:31:13,420.420 INFO    ] No update needed
[2026-08-25 02:31:13,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 02:31:13,456.456 INFO    ] 200
[2026-08-25 02:31:13,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:13,502.502 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:31:13,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:31:13,561.561 INFO    ] No camera update needed
[2026-08-25 02:31:13,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:31:13,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:31:13,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:31:13,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:31:15,617.617 INFO    ] ================================================
[2026-08-25 02:31:15,631.631 INFO    ] Launching Daemon at Tue Aug 25 02:31:15 IST 2026
[2026-08-25 02:31:15,643.643 INFO    ] ================================================
[2026-08-25 02:31:16,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:31:16
[2026-08-25 02:31:16,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:31:17,100.100 INFO    ] Initializing speech engine...
[2026-08-25 02:31:17,107.107 INFO    ] 2026-08-25 02:31:17
[2026-08-25 02:31:17,368.368 INFO    ] 2026-08-25 02:31:17
[2026-08-25 02:31:17,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:31:17,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:31:17,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:31:17,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:31:17,839.839 INFO    ] time= 25/08/2026 02:31:17
[2026-08-25 02:31:17,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:31:17,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:31:18,047.047 INFO    ] No existing commands found in stream
[2026-08-25 02:31:23,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:31:23,080.080 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 02:31:23,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:31:23,664.664 INFO    ] Checking for system updates...
[2026-08-25 02:31:23,704.704 INFO    ] 200
[2026-08-25 02:31:23,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:23,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:31:23,770.770 INFO    ] No update needed
[2026-08-25 02:31:23,772.772 INFO    ] Checking for camera pi updates...
[2026-08-25 02:31:23,805.805 INFO    ] 200
[2026-08-25 02:31:23,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:23,848.848 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:31:23,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:31:23,900.900 INFO    ] No camera update needed
[2026-08-25 02:31:23,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:31:23,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:31:23,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:31:23,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:31:25,957.957 INFO    ] ================================================
[2026-08-25 02:31:25,972.972 INFO    ] Launching Daemon at Tue Aug 25 02:31:25 IST 2026
[2026-08-25 02:31:25,983.983 INFO    ] ================================================
[2026-08-25 02:31:26,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:31:26
[2026-08-25 02:31:27,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:31:27,573.573 INFO    ] Initializing speech engine...
[2026-08-25 02:31:27,586.586 INFO    ] 2026-08-25 02:31:27
[2026-08-25 02:31:27,904.904 INFO    ] 2026-08-25 02:31:27
[2026-08-25 02:31:27,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:31:28,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:31:28,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:31:28,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:31:28,428.428 INFO    ] time= 25/08/2026 02:31:28
[2026-08-25 02:31:28,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:31:28,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:31:28,586.586 INFO    ] No existing commands found in stream
[2026-08-25 02:31:33,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:31:33,604.604 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 02:31:37,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:31:37,158.158 INFO    ] Checking for system updates...
[2026-08-25 02:31:37,194.194 INFO    ] 200
[2026-08-25 02:31:37,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:37,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:31:37,252.252 INFO    ] No update needed
[2026-08-25 02:31:37,255.255 INFO    ] Checking for camera pi updates...
[2026-08-25 02:31:37,288.288 INFO    ] 200
[2026-08-25 02:31:37,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:37,336.336 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:31:37,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:31:37,386.386 INFO    ] No camera update needed
[2026-08-25 02:31:37,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:31:37,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:31:37,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:31:37,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:31:39,441.441 INFO    ] ================================================
[2026-08-25 02:31:39,457.457 INFO    ] Launching Daemon at Tue Aug 25 02:31:39 IST 2026
[2026-08-25 02:31:39,467.467 INFO    ] ================================================
[2026-08-25 02:31:40,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:31:40
[2026-08-25 02:31:40,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:31:40,942.942 INFO    ] Initializing speech engine...
[2026-08-25 02:31:40,952.952 INFO    ] 2026-08-25 02:31:40
[2026-08-25 02:31:41,216.216 INFO    ] 2026-08-25 02:31:41
[2026-08-25 02:31:41,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:31:41,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:31:41,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:31:41,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:31:41,770.770 INFO    ] time= 25/08/2026 02:31:41
[2026-08-25 02:31:41,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:31:41,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:31:41,938.938 INFO    ] No existing commands found in stream
[2026-08-25 02:31:46,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:31:46,973.973 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 02:31:50,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:31:50,920.920 INFO    ] Checking for system updates...
[2026-08-25 02:31:50,956.956 INFO    ] 200
[2026-08-25 02:31:50,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:51,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:31:51,013.013 INFO    ] No update needed
[2026-08-25 02:31:51,015.015 INFO    ] Checking for camera pi updates...
[2026-08-25 02:31:51,050.050 INFO    ] 200
[2026-08-25 02:31:51,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:31:51,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:31:51,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:31:51,148.148 INFO    ] No camera update needed
[2026-08-25 02:31:51,151.151 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:31:51,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:31:51,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:31:51,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:31:53,207.207 INFO    ] ================================================
[2026-08-25 02:31:53,221.221 INFO    ] Launching Daemon at Tue Aug 25 02:31:53 IST 2026
[2026-08-25 02:31:53,232.232 INFO    ] ================================================
[2026-08-25 02:31:53,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:31:53
[2026-08-25 02:31:54,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:31:54,640.640 INFO    ] Initializing speech engine...
[2026-08-25 02:31:54,666.666 INFO    ] 2026-08-25 02:31:54
[2026-08-25 02:31:54,941.941 INFO    ] 2026-08-25 02:31:54
[2026-08-25 02:31:54,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:31:55,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:31:55,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:31:55,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:31:55,327.327 INFO    ] time= 25/08/2026 02:31:55
[2026-08-25 02:31:55,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:31:55,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:31:55,452.452 INFO    ] No existing commands found in stream
[2026-08-25 02:32:00,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:32:00,465.465 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 02:32:01,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:32:01,921.921 INFO    ] Checking for system updates...
[2026-08-25 02:32:01,994.994 INFO    ] 200
[2026-08-25 02:32:01,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:32:02,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:32:02,091.091 INFO    ] No update needed
[2026-08-25 02:32:02,095.095 INFO    ] Checking for camera pi updates...
[2026-08-25 02:32:02,156.156 INFO    ] 200
[2026-08-25 02:32:02,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:32:02,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:32:02,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:32:02,320.320 INFO    ] No camera update needed
[2026-08-25 02:32:02,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:32:02,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:02,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:02,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:04,384.384 INFO    ] ================================================
[2026-08-25 02:32:04,399.399 INFO    ] Launching Daemon at Tue Aug 25 02:32:04 IST 2026
[2026-08-25 02:32:04,410.410 INFO    ] ================================================
[2026-08-25 02:32:04,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:04
[2026-08-25 02:32:05,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:05,805.805 INFO    ] Initializing speech engine...
[2026-08-25 02:32:05,813.813 INFO    ] 2026-08-25 02:32:05
[2026-08-25 02:32:06,086.086 INFO    ] 2026-08-25 02:32:06
[2026-08-25 02:32:06,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:06,251.251 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:06,367.367 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:06,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:06,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:06,466.466 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:06,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:08,548.548 INFO    ] ================================================
[2026-08-25 02:32:08,563.563 INFO    ] Launching Daemon at Tue Aug 25 02:32:08 IST 2026
[2026-08-25 02:32:08,573.573 INFO    ] ================================================
[2026-08-25 02:32:09,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:09
[2026-08-25 02:32:09,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:10,024.024 INFO    ] Initializing speech engine...
[2026-08-25 02:32:10,038.038 INFO    ] 2026-08-25 02:32:10
[2026-08-25 02:32:10,293.293 INFO    ] 2026-08-25 02:32:10
[2026-08-25 02:32:10,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:10,454.454 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:10,615.615 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:10,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:10,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:10,679.679 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:10,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:12,750.750 INFO    ] ================================================
[2026-08-25 02:32:12,765.765 INFO    ] Launching Daemon at Tue Aug 25 02:32:12 IST 2026
[2026-08-25 02:32:12,776.776 INFO    ] ================================================
[2026-08-25 02:32:13,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:13
[2026-08-25 02:32:13,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:14,253.253 INFO    ] Initializing speech engine...
[2026-08-25 02:32:14,267.267 INFO    ] 2026-08-25 02:32:14
[2026-08-25 02:32:14,530.530 INFO    ] 2026-08-25 02:32:14
[2026-08-25 02:32:14,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:14,689.689 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:14,794.794 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:14,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:14,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:14,894.894 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:14,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:16,977.977 INFO    ] ================================================
[2026-08-25 02:32:16,992.992 INFO    ] Launching Daemon at Tue Aug 25 02:32:16 IST 2026
[2026-08-25 02:32:17,003.003 INFO    ] ================================================
[2026-08-25 02:32:17,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:17
[2026-08-25 02:32:18,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:18,596.596 INFO    ] Initializing speech engine...
[2026-08-25 02:32:18,610.610 INFO    ] 2026-08-25 02:32:18
[2026-08-25 02:32:18,880.880 INFO    ] 2026-08-25 02:32:18
[2026-08-25 02:32:18,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:19,034.034 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:19,203.203 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:19,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:19,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:19,279.279 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:19,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:21,395.395 INFO    ] ================================================
[2026-08-25 02:32:21,410.410 INFO    ] Launching Daemon at Tue Aug 25 02:32:21 IST 2026
[2026-08-25 02:32:21,421.421 INFO    ] ================================================
[2026-08-25 02:32:22,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:22
[2026-08-25 02:32:22,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:23,101.101 INFO    ] Initializing speech engine...
[2026-08-25 02:32:23,108.108 INFO    ] 2026-08-25 02:32:23
[2026-08-25 02:32:23,417.417 INFO    ] 2026-08-25 02:32:23
[2026-08-25 02:32:23,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:23,573.573 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:23,719.719 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:23,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:23,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:23,842.842 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:23,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:26,019.019 INFO    ] ================================================
[2026-08-25 02:32:26,034.034 INFO    ] Launching Daemon at Tue Aug 25 02:32:26 IST 2026
[2026-08-25 02:32:26,046.046 INFO    ] ================================================
[2026-08-25 02:32:26,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:26
[2026-08-25 02:32:27,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:27,471.471 INFO    ] Initializing speech engine...
[2026-08-25 02:32:27,483.483 INFO    ] 2026-08-25 02:32:27
[2026-08-25 02:32:27,745.745 INFO    ] 2026-08-25 02:32:27
[2026-08-25 02:32:27,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:27,847.847 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:28,004.004 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:28,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:28,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:28,112.112 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:28,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:30,186.186 INFO    ] ================================================
[2026-08-25 02:32:30,201.201 INFO    ] Launching Daemon at Tue Aug 25 02:32:30 IST 2026
[2026-08-25 02:32:30,212.212 INFO    ] ================================================
[2026-08-25 02:32:30,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:30
[2026-08-25 02:32:31,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:31,674.674 INFO    ] Initializing speech engine...
[2026-08-25 02:32:31,680.680 INFO    ] 2026-08-25 02:32:31
[2026-08-25 02:32:31,944.944 INFO    ] 2026-08-25 02:32:31
[2026-08-25 02:32:32,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:32,108.108 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:32,267.267 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:32,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:32,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:32,342.342 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:32,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:34,450.450 INFO    ] ================================================
[2026-08-25 02:32:34,465.465 INFO    ] Launching Daemon at Tue Aug 25 02:32:34 IST 2026
[2026-08-25 02:32:34,475.475 INFO    ] ================================================
[2026-08-25 02:32:35,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:35
[2026-08-25 02:32:35,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:35,869.869 INFO    ] Initializing speech engine...
[2026-08-25 02:32:35,883.883 INFO    ] 2026-08-25 02:32:35
[2026-08-25 02:32:36,149.149 INFO    ] 2026-08-25 02:32:36
[2026-08-25 02:32:36,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:36,314.314 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:36,421.421 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:36,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:36,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:36,524.524 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:36,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:38,601.601 INFO    ] ================================================
[2026-08-25 02:32:38,617.617 INFO    ] Launching Daemon at Tue Aug 25 02:32:38 IST 2026
[2026-08-25 02:32:38,628.628 INFO    ] ================================================
[2026-08-25 02:32:39,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:39
[2026-08-25 02:32:39,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:40,053.053 INFO    ] Initializing speech engine...
[2026-08-25 02:32:40,060.060 INFO    ] 2026-08-25 02:32:40
[2026-08-25 02:32:40,330.330 INFO    ] 2026-08-25 02:32:40
[2026-08-25 02:32:40,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:40,490.490 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:40,637.637 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:40,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:40,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:40,698.698 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:40,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:42,779.779 INFO    ] ================================================
[2026-08-25 02:32:42,794.794 INFO    ] Launching Daemon at Tue Aug 25 02:32:42 IST 2026
[2026-08-25 02:32:42,806.806 INFO    ] ================================================
[2026-08-25 02:32:43,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:43
[2026-08-25 02:32:43,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:44,229.229 INFO    ] Initializing speech engine...
[2026-08-25 02:32:44,234.234 INFO    ] 2026-08-25 02:32:44
[2026-08-25 02:32:44,507.507 INFO    ] 2026-08-25 02:32:44
[2026-08-25 02:32:44,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:44,671.671 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:44,776.776 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:44,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:44,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:44,875.875 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:44,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:46,946.946 INFO    ] ================================================
[2026-08-25 02:32:46,961.961 INFO    ] Launching Daemon at Tue Aug 25 02:32:46 IST 2026
[2026-08-25 02:32:46,972.972 INFO    ] ================================================
[2026-08-25 02:32:47,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:47
[2026-08-25 02:32:48,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:48,365.365 INFO    ] Initializing speech engine...
[2026-08-25 02:32:48,372.372 INFO    ] 2026-08-25 02:32:48
[2026-08-25 02:32:48,649.649 INFO    ] 2026-08-25 02:32:48
[2026-08-25 02:32:48,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:48,811.811 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:48,919.919 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:48,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:48,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:49,022.022 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:49,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:51,105.105 INFO    ] ================================================
[2026-08-25 02:32:51,121.121 INFO    ] Launching Daemon at Tue Aug 25 02:32:51 IST 2026
[2026-08-25 02:32:51,132.132 INFO    ] ================================================
[2026-08-25 02:32:51,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:51
[2026-08-25 02:32:52,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:52,605.605 INFO    ] Initializing speech engine...
[2026-08-25 02:32:52,611.611 INFO    ] 2026-08-25 02:32:52
[2026-08-25 02:32:52,873.873 INFO    ] 2026-08-25 02:32:52
[2026-08-25 02:32:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:53,026.026 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:53,183.183 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:53,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:53,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:53,230.230 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:53,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:55,313.313 INFO    ] ================================================
[2026-08-25 02:32:55,328.328 INFO    ] Launching Daemon at Tue Aug 25 02:32:55 IST 2026
[2026-08-25 02:32:55,339.339 INFO    ] ================================================
[2026-08-25 02:32:55,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:32:55
[2026-08-25 02:32:56,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:32:56,740.740 INFO    ] Initializing speech engine...
[2026-08-25 02:32:56,752.752 INFO    ] 2026-08-25 02:32:56
[2026-08-25 02:32:57,018.018 INFO    ] 2026-08-25 02:32:57
[2026-08-25 02:32:57,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:32:57,180.180 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:32:57,285.285 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:32:57,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:32:57,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:32:57,370.370 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:32:57,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:32:59,445.445 INFO    ] ================================================
[2026-08-25 02:32:59,461.461 INFO    ] Launching Daemon at Tue Aug 25 02:32:59 IST 2026
[2026-08-25 02:32:59,472.472 INFO    ] ================================================
[2026-08-25 02:33:00,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:00
[2026-08-25 02:33:00,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:01,066.066 INFO    ] Initializing speech engine...
[2026-08-25 02:33:01,086.086 INFO    ] 2026-08-25 02:33:01
[2026-08-25 02:33:01,364.364 INFO    ] 2026-08-25 02:33:01
[2026-08-25 02:33:01,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:01,479.479 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:01,620.620 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:01,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:01,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:01,657.657 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:01,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:03,733.733 INFO    ] ================================================
[2026-08-25 02:33:03,748.748 INFO    ] Launching Daemon at Tue Aug 25 02:33:03 IST 2026
[2026-08-25 02:33:03,759.759 INFO    ] ================================================
[2026-08-25 02:33:04,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:04
[2026-08-25 02:33:04,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:05,212.212 INFO    ] Initializing speech engine...
[2026-08-25 02:33:05,226.226 INFO    ] 2026-08-25 02:33:05
[2026-08-25 02:33:05,512.512 INFO    ] 2026-08-25 02:33:05
[2026-08-25 02:33:05,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:05,659.659 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:05,829.829 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:05,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:05,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:05,909.909 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:05,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:08,026.026 INFO    ] ================================================
[2026-08-25 02:33:08,041.041 INFO    ] Launching Daemon at Tue Aug 25 02:33:08 IST 2026
[2026-08-25 02:33:08,053.053 INFO    ] ================================================
[2026-08-25 02:33:08,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:08
[2026-08-25 02:33:09,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:09,584.584 INFO    ] Initializing speech engine...
[2026-08-25 02:33:09,591.591 INFO    ] 2026-08-25 02:33:09
[2026-08-25 02:33:09,881.881 INFO    ] 2026-08-25 02:33:09
[2026-08-25 02:33:09,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:10,026.026 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:10,188.188 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:10,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:10,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:10,256.256 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:10,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:12,343.343 INFO    ] ================================================
[2026-08-25 02:33:12,359.359 INFO    ] Launching Daemon at Tue Aug 25 02:33:12 IST 2026
[2026-08-25 02:33:12,370.370 INFO    ] ================================================
[2026-08-25 02:33:13,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:13
[2026-08-25 02:33:13,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:14,008.008 INFO    ] Initializing speech engine...
[2026-08-25 02:33:14,013.013 INFO    ] 2026-08-25 02:33:14
[2026-08-25 02:33:14,294.294 INFO    ] 2026-08-25 02:33:14
[2026-08-25 02:33:14,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:14,440.440 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:14,610.610 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:14,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:14,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:14,691.691 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:14,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:16,809.809 INFO    ] ================================================
[2026-08-25 02:33:16,825.825 INFO    ] Launching Daemon at Tue Aug 25 02:33:16 IST 2026
[2026-08-25 02:33:16,835.835 INFO    ] ================================================
[2026-08-25 02:33:17,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:17
[2026-08-25 02:33:18,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:18,409.409 INFO    ] Initializing speech engine...
[2026-08-25 02:33:18,420.420 INFO    ] 2026-08-25 02:33:18
[2026-08-25 02:33:18,714.714 INFO    ] 2026-08-25 02:33:18
[2026-08-25 02:33:18,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:18,871.871 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:19,040.040 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:19,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:19,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:19,110.110 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:19,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:21,232.232 INFO    ] ================================================
[2026-08-25 02:33:21,247.247 INFO    ] Launching Daemon at Tue Aug 25 02:33:21 IST 2026
[2026-08-25 02:33:21,258.258 INFO    ] ================================================
[2026-08-25 02:33:21,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:21
[2026-08-25 02:33:22,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:22,711.711 INFO    ] Initializing speech engine...
[2026-08-25 02:33:22,721.721 INFO    ] 2026-08-25 02:33:22
[2026-08-25 02:33:22,997.997 INFO    ] 2026-08-25 02:33:22
[2026-08-25 02:33:23,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:23,162.162 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:23,273.273 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:23,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:23,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:23,383.383 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:23,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:25,469.469 INFO    ] ================================================
[2026-08-25 02:33:25,484.484 INFO    ] Launching Daemon at Tue Aug 25 02:33:25 IST 2026
[2026-08-25 02:33:25,495.495 INFO    ] ================================================
[2026-08-25 02:33:26,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:26
[2026-08-25 02:33:26,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:26,900.900 INFO    ] Initializing speech engine...
[2026-08-25 02:33:26,907.907 INFO    ] 2026-08-25 02:33:26
[2026-08-25 02:33:27,195.195 INFO    ] 2026-08-25 02:33:27
[2026-08-25 02:33:27,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:27,292.292 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:27,458.458 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:27,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:27,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:27,571.571 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:27,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:29,642.642 INFO    ] ================================================
[2026-08-25 02:33:29,657.657 INFO    ] Launching Daemon at Tue Aug 25 02:33:29 IST 2026
[2026-08-25 02:33:29,668.668 INFO    ] ================================================
[2026-08-25 02:33:30,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:30
[2026-08-25 02:33:30,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:31,084.084 INFO    ] Initializing speech engine...
[2026-08-25 02:33:31,097.097 INFO    ] 2026-08-25 02:33:31
[2026-08-25 02:33:31,346.346 INFO    ] 2026-08-25 02:33:31
[2026-08-25 02:33:31,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:31,509.509 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:31,623.623 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:31,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:31,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:31,738.738 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:31,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:33,830.830 INFO    ] ================================================
[2026-08-25 02:33:33,845.845 INFO    ] Launching Daemon at Tue Aug 25 02:33:33 IST 2026
[2026-08-25 02:33:33,856.856 INFO    ] ================================================
[2026-08-25 02:33:34,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:34
[2026-08-25 02:33:35,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:35,442.442 INFO    ] Initializing speech engine...
[2026-08-25 02:33:35,450.450 INFO    ] 2026-08-25 02:33:35
[2026-08-25 02:33:35,736.736 INFO    ] 2026-08-25 02:33:35
[2026-08-25 02:33:35,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:35,880.880 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:36,051.051 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:36,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:36,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:36,110.110 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:36,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:38,197.197 INFO    ] ================================================
[2026-08-25 02:33:38,212.212 INFO    ] Launching Daemon at Tue Aug 25 02:33:38 IST 2026
[2026-08-25 02:33:38,223.223 INFO    ] ================================================
[2026-08-25 02:33:38,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:38
[2026-08-25 02:33:39,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:39,829.829 INFO    ] Initializing speech engine...
[2026-08-25 02:33:39,842.842 INFO    ] 2026-08-25 02:33:39
[2026-08-25 02:33:40,122.122 INFO    ] 2026-08-25 02:33:40
[2026-08-25 02:33:40,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:40,269.269 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:40,439.439 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:40,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:40,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:40,519.519 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:40,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:42,637.637 INFO    ] ================================================
[2026-08-25 02:33:42,653.653 INFO    ] Launching Daemon at Tue Aug 25 02:33:42 IST 2026
[2026-08-25 02:33:42,664.664 INFO    ] ================================================
[2026-08-25 02:33:43,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:43
[2026-08-25 02:33:43,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:44,119.119 INFO    ] Initializing speech engine...
[2026-08-25 02:33:44,124.124 INFO    ] 2026-08-25 02:33:44
[2026-08-25 02:33:44,385.385 INFO    ] 2026-08-25 02:33:44
[2026-08-25 02:33:44,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:44,536.536 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:44,691.691 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:44,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:44,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:44,740.740 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:44,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:46,823.823 INFO    ] ================================================
[2026-08-25 02:33:46,838.838 INFO    ] Launching Daemon at Tue Aug 25 02:33:46 IST 2026
[2026-08-25 02:33:46,848.848 INFO    ] ================================================
[2026-08-25 02:33:47,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:47
[2026-08-25 02:33:48,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:48,303.303 INFO    ] Initializing speech engine...
[2026-08-25 02:33:48,313.313 INFO    ] 2026-08-25 02:33:48
[2026-08-25 02:33:48,591.591 INFO    ] 2026-08-25 02:33:48
[2026-08-25 02:33:48,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:48,711.711 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:48,863.863 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:48,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:48,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:48,993.993 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:49,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:51,073.073 INFO    ] ================================================
[2026-08-25 02:33:51,089.089 INFO    ] Launching Daemon at Tue Aug 25 02:33:51 IST 2026
[2026-08-25 02:33:51,100.100 INFO    ] ================================================
[2026-08-25 02:33:51,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:51
[2026-08-25 02:33:52,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:52,525.525 INFO    ] Initializing speech engine...
[2026-08-25 02:33:52,538.538 INFO    ] 2026-08-25 02:33:52
[2026-08-25 02:33:52,807.807 INFO    ] 2026-08-25 02:33:52
[2026-08-25 02:33:52,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:52,958.958 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:53,078.078 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:53,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:53,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:53,177.177 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:53,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:55,248.248 INFO    ] ================================================
[2026-08-25 02:33:55,263.263 INFO    ] Launching Daemon at Tue Aug 25 02:33:55 IST 2026
[2026-08-25 02:33:55,274.274 INFO    ] ================================================
[2026-08-25 02:33:55,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:33:55
[2026-08-25 02:33:56,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:33:56,908.908 INFO    ] Initializing speech engine...
[2026-08-25 02:33:56,920.920 INFO    ] 2026-08-25 02:33:56
[2026-08-25 02:33:57,205.205 INFO    ] 2026-08-25 02:33:57
[2026-08-25 02:33:57,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:33:57,390.390 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:33:57,535.535 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:33:57,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:33:57,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:33:57,658.658 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:33:57,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:33:59,838.838 INFO    ] ================================================
[2026-08-25 02:33:59,853.853 INFO    ] Launching Daemon at Tue Aug 25 02:33:59 IST 2026
[2026-08-25 02:33:59,864.864 INFO    ] ================================================
[2026-08-25 02:34:00,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:00
[2026-08-25 02:34:01,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:01,510.510 INFO    ] Initializing speech engine...
[2026-08-25 02:34:01,517.517 INFO    ] 2026-08-25 02:34:01
[2026-08-25 02:34:01,818.818 INFO    ] 2026-08-25 02:34:01
[2026-08-25 02:34:01,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:01,982.982 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:02,128.128 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:02,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:02,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:02,195.195 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:02,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:04,354.354 INFO    ] ================================================
[2026-08-25 02:34:04,369.369 INFO    ] Launching Daemon at Tue Aug 25 02:34:04 IST 2026
[2026-08-25 02:34:04,381.381 INFO    ] ================================================
[2026-08-25 02:34:04,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:04
[2026-08-25 02:34:05,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:05,806.806 INFO    ] Initializing speech engine...
[2026-08-25 02:34:05,825.825 INFO    ] 2026-08-25 02:34:05
[2026-08-25 02:34:06,075.075 INFO    ] 2026-08-25 02:34:06
[2026-08-25 02:34:06,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:06,182.182 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:06,330.330 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:06,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:06,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:06,429.429 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:06,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:08,502.502 INFO    ] ================================================
[2026-08-25 02:34:08,518.518 INFO    ] Launching Daemon at Tue Aug 25 02:34:08 IST 2026
[2026-08-25 02:34:08,529.529 INFO    ] ================================================
[2026-08-25 02:34:09,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:09
[2026-08-25 02:34:09,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:10,121.121 INFO    ] Initializing speech engine...
[2026-08-25 02:34:10,129.129 INFO    ] 2026-08-25 02:34:10
[2026-08-25 02:34:10,413.413 INFO    ] 2026-08-25 02:34:10
[2026-08-25 02:34:10,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:10,568.568 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:10,732.732 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:10,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:10,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:10,811.811 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:10,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:12,930.930 INFO    ] ================================================
[2026-08-25 02:34:12,946.946 INFO    ] Launching Daemon at Tue Aug 25 02:34:12 IST 2026
[2026-08-25 02:34:12,957.957 INFO    ] ================================================
[2026-08-25 02:34:13,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:13
[2026-08-25 02:34:14,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:14,404.404 INFO    ] Initializing speech engine...
[2026-08-25 02:34:14,421.421 INFO    ] 2026-08-25 02:34:14
[2026-08-25 02:34:14,696.696 INFO    ] 2026-08-25 02:34:14
[2026-08-25 02:34:14,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:14,828.828 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:14,968.968 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:14,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:15,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:15,083.083 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:15,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:17,160.160 INFO    ] ================================================
[2026-08-25 02:34:17,176.176 INFO    ] Launching Daemon at Tue Aug 25 02:34:17 IST 2026
[2026-08-25 02:34:17,188.188 INFO    ] ================================================
[2026-08-25 02:34:17,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:17
[2026-08-25 02:34:18,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:18,692.692 INFO    ] Initializing speech engine...
[2026-08-25 02:34:18,706.706 INFO    ] 2026-08-25 02:34:18
[2026-08-25 02:34:19,023.023 INFO    ] 2026-08-25 02:34:18
[2026-08-25 02:34:19,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:19,175.175 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:19,317.317 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:19,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:19,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:19,383.383 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:19,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:21,579.579 INFO    ] ================================================
[2026-08-25 02:34:21,595.595 INFO    ] Launching Daemon at Tue Aug 25 02:34:21 IST 2026
[2026-08-25 02:34:21,606.606 INFO    ] ================================================
[2026-08-25 02:34:22,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:22
[2026-08-25 02:34:22,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:23,021.021 INFO    ] Initializing speech engine...
[2026-08-25 02:34:23,029.029 INFO    ] 2026-08-25 02:34:23
[2026-08-25 02:34:23,326.326 INFO    ] 2026-08-25 02:34:23
[2026-08-25 02:34:23,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:23,436.436 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:23,621.621 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:23,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:23,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:23,736.736 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:23,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:25,813.813 INFO    ] ================================================
[2026-08-25 02:34:25,829.829 INFO    ] Launching Daemon at Tue Aug 25 02:34:25 IST 2026
[2026-08-25 02:34:25,841.841 INFO    ] ================================================
[2026-08-25 02:34:26,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:26
[2026-08-25 02:34:27,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:27,301.301 INFO    ] Initializing speech engine...
[2026-08-25 02:34:27,308.308 INFO    ] 2026-08-25 02:34:27
[2026-08-25 02:34:27,568.568 INFO    ] 2026-08-25 02:34:27
[2026-08-25 02:34:27,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:27,719.719 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:27,877.877 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:27,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:27,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:27,925.925 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:27,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:30,012.012 INFO    ] ================================================
[2026-08-25 02:34:30,028.028 INFO    ] Launching Daemon at Tue Aug 25 02:34:30 IST 2026
[2026-08-25 02:34:30,040.040 INFO    ] ================================================
[2026-08-25 02:34:30,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:30
[2026-08-25 02:34:31,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:31,569.569 INFO    ] Initializing speech engine...
[2026-08-25 02:34:31,575.575 INFO    ] 2026-08-25 02:34:31
[2026-08-25 02:34:31,851.851 INFO    ] 2026-08-25 02:34:31
[2026-08-25 02:34:31,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:32,010.010 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:32,182.182 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:32,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:32,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:32,260.260 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:32,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:34,377.377 INFO    ] ================================================
[2026-08-25 02:34:34,393.393 INFO    ] Launching Daemon at Tue Aug 25 02:34:34 IST 2026
[2026-08-25 02:34:34,404.404 INFO    ] ================================================
[2026-08-25 02:34:35,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:35
[2026-08-25 02:34:35,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:36,034.034 INFO    ] Initializing speech engine...
[2026-08-25 02:34:36,047.047 INFO    ] 2026-08-25 02:34:36
[2026-08-25 02:34:36,358.358 INFO    ] 2026-08-25 02:34:36
[2026-08-25 02:34:36,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:36,514.514 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:36,658.658 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:36,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:36,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:36,721.721 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:36,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:38,932.932 INFO    ] ================================================
[2026-08-25 02:34:38,947.947 INFO    ] Launching Daemon at Tue Aug 25 02:34:38 IST 2026
[2026-08-25 02:34:38,958.958 INFO    ] ================================================
[2026-08-25 02:34:39,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:39
[2026-08-25 02:34:40,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:40,615.615 INFO    ] Initializing speech engine...
[2026-08-25 02:34:40,629.629 INFO    ] 2026-08-25 02:34:40
[2026-08-25 02:34:40,902.902 INFO    ] 2026-08-25 02:34:40
[2026-08-25 02:34:40,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:41,058.058 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:41,227.227 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:41,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:41,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:41,306.306 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:41,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:43,426.426 INFO    ] ================================================
[2026-08-25 02:34:43,441.441 INFO    ] Launching Daemon at Tue Aug 25 02:34:43 IST 2026
[2026-08-25 02:34:43,452.452 INFO    ] ================================================
[2026-08-25 02:34:44,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:44
[2026-08-25 02:34:44,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:44,871.871 INFO    ] Initializing speech engine...
[2026-08-25 02:34:44,892.892 INFO    ] 2026-08-25 02:34:44
[2026-08-25 02:34:45,168.168 INFO    ] 2026-08-25 02:34:45
[2026-08-25 02:34:45,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:45,331.331 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:45,468.468 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:45,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:45,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:45,538.538 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:45,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:47,620.620 INFO    ] ================================================
[2026-08-25 02:34:47,636.636 INFO    ] Launching Daemon at Tue Aug 25 02:34:47 IST 2026
[2026-08-25 02:34:47,647.647 INFO    ] ================================================
[2026-08-25 02:34:48,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:48
[2026-08-25 02:34:48,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:49,286.286 INFO    ] Initializing speech engine...
[2026-08-25 02:34:49,298.298 INFO    ] 2026-08-25 02:34:49
[2026-08-25 02:34:49,570.570 INFO    ] 2026-08-25 02:34:49
[2026-08-25 02:34:49,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:49,757.757 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:49,908.908 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:49,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:49,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:49,973.973 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:50,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:52,166.166 INFO    ] ================================================
[2026-08-25 02:34:52,182.182 INFO    ] Launching Daemon at Tue Aug 25 02:34:52 IST 2026
[2026-08-25 02:34:52,193.193 INFO    ] ================================================
[2026-08-25 02:34:52,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:52
[2026-08-25 02:34:53,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:53,598.598 INFO    ] Initializing speech engine...
[2026-08-25 02:34:53,617.617 INFO    ] 2026-08-25 02:34:53
[2026-08-25 02:34:53,865.865 INFO    ] 2026-08-25 02:34:53
[2026-08-25 02:34:53,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:54,024.024 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:54,130.130 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:54,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:54,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:54,229.229 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:54,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:34:56,313.313 INFO    ] ================================================
[2026-08-25 02:34:56,329.329 INFO    ] Launching Daemon at Tue Aug 25 02:34:56 IST 2026
[2026-08-25 02:34:56,340.340 INFO    ] ================================================
[2026-08-25 02:34:57,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:34:57
[2026-08-25 02:34:57,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:34:58,026.026 INFO    ] Initializing speech engine...
[2026-08-25 02:34:58,040.040 INFO    ] 2026-08-25 02:34:58
[2026-08-25 02:34:58,313.313 INFO    ] 2026-08-25 02:34:58
[2026-08-25 02:34:58,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:34:58,475.475 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:34:58,638.638 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:34:58,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:34:58,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:34:58,718.718 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:34:58,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:00,864.864 INFO    ] ================================================
[2026-08-25 02:35:00,879.879 INFO    ] Launching Daemon at Tue Aug 25 02:35:00 IST 2026
[2026-08-25 02:35:00,891.891 INFO    ] ================================================
[2026-08-25 02:35:01,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:01
[2026-08-25 02:35:02,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:02,928.928 INFO    ] Initializing speech engine...
[2026-08-25 02:35:02,937.937 INFO    ] 2026-08-25 02:35:02
[2026-08-25 02:35:03,327.327 INFO    ] 2026-08-25 02:35:03
[2026-08-25 02:35:03,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:03,479.479 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:03,630.630 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:03,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:03,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:03,764.764 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:03,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:05,944.944 INFO    ] ================================================
[2026-08-25 02:35:05,961.961 INFO    ] Launching Daemon at Tue Aug 25 02:35:05 IST 2026
[2026-08-25 02:35:05,973.973 INFO    ] ================================================
[2026-08-25 02:35:06,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:06
[2026-08-25 02:35:07,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:07,436.436 INFO    ] Initializing speech engine...
[2026-08-25 02:35:07,445.445 INFO    ] 2026-08-25 02:35:07
[2026-08-25 02:35:07,702.702 INFO    ] 2026-08-25 02:35:07
[2026-08-25 02:35:07,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:07,853.853 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:08,009.009 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:08,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:08,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:08,058.058 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:08,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:10,141.141 INFO    ] ================================================
[2026-08-25 02:35:10,157.157 INFO    ] Launching Daemon at Tue Aug 25 02:35:10 IST 2026
[2026-08-25 02:35:10,169.169 INFO    ] ================================================
[2026-08-25 02:35:10,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:10
[2026-08-25 02:35:11,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:11,623.623 INFO    ] Initializing speech engine...
[2026-08-25 02:35:11,632.632 INFO    ] 2026-08-25 02:35:11
[2026-08-25 02:35:11,882.882 INFO    ] 2026-08-25 02:35:11
[2026-08-25 02:35:11,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:12,044.044 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:12,194.194 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:12,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:12,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:12,250.250 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:12,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:14,339.339 INFO    ] ================================================
[2026-08-25 02:35:14,356.356 INFO    ] Launching Daemon at Tue Aug 25 02:35:14 IST 2026
[2026-08-25 02:35:14,367.367 INFO    ] ================================================
[2026-08-25 02:35:14,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:14
[2026-08-25 02:35:15,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:15,924.924 INFO    ] Initializing speech engine...
[2026-08-25 02:35:15,936.936 INFO    ] 2026-08-25 02:35:15
[2026-08-25 02:35:16,248.248 INFO    ] 2026-08-25 02:35:16
[2026-08-25 02:35:16,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:16,411.411 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:16,559.559 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:16,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:16,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:16,686.686 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:16,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:18,867.867 INFO    ] ================================================
[2026-08-25 02:35:18,883.883 INFO    ] Launching Daemon at Tue Aug 25 02:35:18 IST 2026
[2026-08-25 02:35:18,894.894 INFO    ] ================================================
[2026-08-25 02:35:19,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:19
[2026-08-25 02:35:20,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:20,543.543 INFO    ] Initializing speech engine...
[2026-08-25 02:35:20,555.555 INFO    ] 2026-08-25 02:35:20
[2026-08-25 02:35:20,841.841 INFO    ] 2026-08-25 02:35:20
[2026-08-25 02:35:20,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:20,979.979 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:21,144.144 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:21,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:21,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:21,223.223 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:21,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:23,340.340 INFO    ] ================================================
[2026-08-25 02:35:23,356.356 INFO    ] Launching Daemon at Tue Aug 25 02:35:23 IST 2026
[2026-08-25 02:35:23,368.368 INFO    ] ================================================
[2026-08-25 02:35:23,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:23
[2026-08-25 02:35:24,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:24,785.785 INFO    ] Initializing speech engine...
[2026-08-25 02:35:24,804.804 INFO    ] 2026-08-25 02:35:24
[2026-08-25 02:35:25,057.057 INFO    ] 2026-08-25 02:35:25
[2026-08-25 02:35:25,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:25,219.219 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:25,323.323 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:25,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:25,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:25,427.427 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:25,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:27,498.498 INFO    ] ================================================
[2026-08-25 02:35:27,513.513 INFO    ] Launching Daemon at Tue Aug 25 02:35:27 IST 2026
[2026-08-25 02:35:27,525.525 INFO    ] ================================================
[2026-08-25 02:35:28,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:28
[2026-08-25 02:35:28,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:28,951.951 INFO    ] Initializing speech engine...
[2026-08-25 02:35:28,974.974 INFO    ] 2026-08-25 02:35:28
[2026-08-25 02:35:29,244.244 INFO    ] 2026-08-25 02:35:29
[2026-08-25 02:35:29,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:29,419.419 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:29,519.519 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:29,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:29,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:29,625.625 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:29,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:31,704.704 INFO    ] ================================================
[2026-08-25 02:35:31,720.720 INFO    ] Launching Daemon at Tue Aug 25 02:35:31 IST 2026
[2026-08-25 02:35:31,732.732 INFO    ] ================================================
[2026-08-25 02:35:32,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:32
[2026-08-25 02:35:32,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:33,248.248 INFO    ] Initializing speech engine...
[2026-08-25 02:35:33,266.266 INFO    ] 2026-08-25 02:35:33
[2026-08-25 02:35:33,570.570 INFO    ] 2026-08-25 02:35:33
[2026-08-25 02:35:33,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:33,742.742 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:33,914.914 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:33,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:33,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:33,997.997 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:34,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:36,127.127 INFO    ] ================================================
[2026-08-25 02:35:36,142.142 INFO    ] Launching Daemon at Tue Aug 25 02:35:36 IST 2026
[2026-08-25 02:35:36,153.153 INFO    ] ================================================
[2026-08-25 02:35:36,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:36
[2026-08-25 02:35:37,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:37,603.603 INFO    ] Initializing speech engine...
[2026-08-25 02:35:37,612.612 INFO    ] 2026-08-25 02:35:37
[2026-08-25 02:35:37,871.871 INFO    ] 2026-08-25 02:35:37
[2026-08-25 02:35:37,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:38,026.026 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:38,186.186 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:38,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:38,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:38,244.244 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:38,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:40,318.318 INFO    ] ================================================
[2026-08-25 02:35:40,334.334 INFO    ] Launching Daemon at Tue Aug 25 02:35:40 IST 2026
[2026-08-25 02:35:40,346.346 INFO    ] ================================================
[2026-08-25 02:35:41,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:41
[2026-08-25 02:35:41,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:42,033.033 INFO    ] Initializing speech engine...
[2026-08-25 02:35:42,045.045 INFO    ] 2026-08-25 02:35:42
[2026-08-25 02:35:42,302.302 INFO    ] 2026-08-25 02:35:42
[2026-08-25 02:35:42,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:42,451.451 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:42,556.556 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:42,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:42,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:42,666.666 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:42,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:44,755.755 INFO    ] ================================================
[2026-08-25 02:35:44,771.771 INFO    ] Launching Daemon at Tue Aug 25 02:35:44 IST 2026
[2026-08-25 02:35:44,783.783 INFO    ] ================================================
[2026-08-25 02:35:45,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:45
[2026-08-25 02:35:45,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:46,179.179 INFO    ] Initializing speech engine...
[2026-08-25 02:35:46,193.193 INFO    ] 2026-08-25 02:35:46
[2026-08-25 02:35:46,458.458 INFO    ] 2026-08-25 02:35:46
[2026-08-25 02:35:46,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:46,620.620 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:46,766.766 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:46,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:46,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:46,831.831 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:46,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:48,917.917 INFO    ] ================================================
[2026-08-25 02:35:48,935.935 INFO    ] Launching Daemon at Tue Aug 25 02:35:48 IST 2026
[2026-08-25 02:35:48,947.947 INFO    ] ================================================
[2026-08-25 02:35:49,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:49
[2026-08-25 02:35:50,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:50,639.639 INFO    ] Initializing speech engine...
[2026-08-25 02:35:50,648.648 INFO    ] 2026-08-25 02:35:50
[2026-08-25 02:35:50,959.959 INFO    ] 2026-08-25 02:35:50
[2026-08-25 02:35:51,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:51,114.114 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:51,258.258 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:51,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:51,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:51,384.384 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:51,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:53,563.563 INFO    ] ================================================
[2026-08-25 02:35:53,579.579 INFO    ] Launching Daemon at Tue Aug 25 02:35:53 IST 2026
[2026-08-25 02:35:53,591.591 INFO    ] ================================================
[2026-08-25 02:35:54,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:54
[2026-08-25 02:35:54,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:55,070.070 INFO    ] Initializing speech engine...
[2026-08-25 02:35:55,076.076 INFO    ] 2026-08-25 02:35:55
[2026-08-25 02:35:55,338.338 INFO    ] 2026-08-25 02:35:55
[2026-08-25 02:35:55,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:55,487.487 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:55,626.626 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:55,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:55,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:55,691.691 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:55,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:35:57,775.775 INFO    ] ================================================
[2026-08-25 02:35:57,790.790 INFO    ] Launching Daemon at Tue Aug 25 02:35:57 IST 2026
[2026-08-25 02:35:57,802.802 INFO    ] ================================================
[2026-08-25 02:35:58,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:35:58
[2026-08-25 02:35:58,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:35:59,264.264 INFO    ] Initializing speech engine...
[2026-08-25 02:35:59,270.270 INFO    ] 2026-08-25 02:35:59
[2026-08-25 02:35:59,533.533 INFO    ] 2026-08-25 02:35:59
[2026-08-25 02:35:59,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:35:59,684.684 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:35:59,843.843 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:35:59,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:35:59,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:35:59,908.908 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:35:59,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:01,980.980 INFO    ] ================================================
[2026-08-25 02:36:02,997.997 INFO    ] Launching Daemon at Tue Aug 25 02:36:01 IST 2026
[2026-08-25 02:36:02,008.008 INFO    ] ================================================
[2026-08-25 02:36:02,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:02
[2026-08-25 02:36:03,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:03,494.494 INFO    ] Initializing speech engine...
[2026-08-25 02:36:03,500.500 INFO    ] 2026-08-25 02:36:03
[2026-08-25 02:36:03,799.799 INFO    ] 2026-08-25 02:36:03
[2026-08-25 02:36:03,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:03,915.915 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:04,078.078 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:04,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:04,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:04,197.197 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:04,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:06,276.276 INFO    ] ================================================
[2026-08-25 02:36:06,291.291 INFO    ] Launching Daemon at Tue Aug 25 02:36:06 IST 2026
[2026-08-25 02:36:06,303.303 INFO    ] ================================================
[2026-08-25 02:36:06,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:06
[2026-08-25 02:36:07,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:07,894.894 INFO    ] Initializing speech engine...
[2026-08-25 02:36:07,908.908 INFO    ] 2026-08-25 02:36:07
[2026-08-25 02:36:08,192.192 INFO    ] 2026-08-25 02:36:08
[2026-08-25 02:36:08,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:08,372.372 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:08,515.515 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:08,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:08,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:08,575.575 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:08,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:10,700.700 INFO    ] ================================================
[2026-08-25 02:36:10,716.716 INFO    ] Launching Daemon at Tue Aug 25 02:36:10 IST 2026
[2026-08-25 02:36:10,728.728 INFO    ] ================================================
[2026-08-25 02:36:11,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:11
[2026-08-25 02:36:11,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:12,142.142 INFO    ] Initializing speech engine...
[2026-08-25 02:36:12,149.149 INFO    ] 2026-08-25 02:36:12
[2026-08-25 02:36:12,451.451 INFO    ] 2026-08-25 02:36:12
[2026-08-25 02:36:12,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:12,550.550 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:12,723.723 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:12,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:12,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:12,843.843 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:12,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:14,923.923 INFO    ] ================================================
[2026-08-25 02:36:14,938.938 INFO    ] Launching Daemon at Tue Aug 25 02:36:14 IST 2026
[2026-08-25 02:36:14,949.949 INFO    ] ================================================
[2026-08-25 02:36:15,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:15
[2026-08-25 02:36:16,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:16,593.593 INFO    ] Initializing speech engine...
[2026-08-25 02:36:16,601.601 INFO    ] 2026-08-25 02:36:16
[2026-08-25 02:36:16,889.889 INFO    ] 2026-08-25 02:36:16
[2026-08-25 02:36:16,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:17,070.070 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:17,241.241 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:17,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:17,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:17,293.293 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:17,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:19,383.383 INFO    ] ================================================
[2026-08-25 02:36:19,399.399 INFO    ] Launching Daemon at Tue Aug 25 02:36:19 IST 2026
[2026-08-25 02:36:19,410.410 INFO    ] ================================================
[2026-08-25 02:36:20,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:20
[2026-08-25 02:36:20,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:21,060.060 INFO    ] Initializing speech engine...
[2026-08-25 02:36:21,068.068 INFO    ] 2026-08-25 02:36:21
[2026-08-25 02:36:21,350.350 INFO    ] 2026-08-25 02:36:21
[2026-08-25 02:36:21,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:21,506.506 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:21,677.677 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:21,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:21,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:21,758.758 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:21,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:23,875.875 INFO    ] ================================================
[2026-08-25 02:36:23,891.891 INFO    ] Launching Daemon at Tue Aug 25 02:36:23 IST 2026
[2026-08-25 02:36:23,903.903 INFO    ] ================================================
[2026-08-25 02:36:24,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:24
[2026-08-25 02:36:25,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:25,351.351 INFO    ] Initializing speech engine...
[2026-08-25 02:36:25,370.370 INFO    ] 2026-08-25 02:36:25
[2026-08-25 02:36:25,625.625 INFO    ] 2026-08-25 02:36:25
[2026-08-25 02:36:25,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:25,781.781 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:25,936.936 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:25,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:25,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:25,992.992 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:26,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:28,077.077 INFO    ] ================================================
[2026-08-25 02:36:28,093.093 INFO    ] Launching Daemon at Tue Aug 25 02:36:28 IST 2026
[2026-08-25 02:36:28,105.105 INFO    ] ================================================
[2026-08-25 02:36:28,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:28
[2026-08-25 02:36:29,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:29,603.603 INFO    ] Initializing speech engine...
[2026-08-25 02:36:29,608.608 INFO    ] 2026-08-25 02:36:29
[2026-08-25 02:36:29,871.871 INFO    ] 2026-08-25 02:36:29
[2026-08-25 02:36:29,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:30,040.040 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:30,185.185 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:30,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:30,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:30,257.257 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:30,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:32,372.372 INFO    ] ================================================
[2026-08-25 02:36:32,388.388 INFO    ] Launching Daemon at Tue Aug 25 02:36:32 IST 2026
[2026-08-25 02:36:32,400.400 INFO    ] ================================================
[2026-08-25 02:36:32,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:32
[2026-08-25 02:36:33,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:33,827.827 INFO    ] Initializing speech engine...
[2026-08-25 02:36:33,835.835 INFO    ] 2026-08-25 02:36:33
[2026-08-25 02:36:34,140.140 INFO    ] 2026-08-25 02:36:34
[2026-08-25 02:36:34,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:34,298.298 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:34,464.464 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:34,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:34,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:34,507.507 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:34,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:36,597.597 INFO    ] ================================================
[2026-08-25 02:36:36,613.613 INFO    ] Launching Daemon at Tue Aug 25 02:36:36 IST 2026
[2026-08-25 02:36:36,624.624 INFO    ] ================================================
[2026-08-25 02:36:37,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:37
[2026-08-25 02:36:37,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:38,280.280 INFO    ] Initializing speech engine...
[2026-08-25 02:36:38,289.289 INFO    ] 2026-08-25 02:36:38
[2026-08-25 02:36:38,570.570 INFO    ] 2026-08-25 02:36:38
[2026-08-25 02:36:38,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:38,726.726 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:38,896.896 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:38,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:38,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:38,955.955 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:38,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:41,031.031 INFO    ] ================================================
[2026-08-25 02:36:41,047.047 INFO    ] Launching Daemon at Tue Aug 25 02:36:41 IST 2026
[2026-08-25 02:36:41,058.058 INFO    ] ================================================
[2026-08-25 02:36:41,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:41
[2026-08-25 02:36:42,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:42,726.726 INFO    ] Initializing speech engine...
[2026-08-25 02:36:42,737.737 INFO    ] 2026-08-25 02:36:42
[2026-08-25 02:36:43,032.032 INFO    ] 2026-08-25 02:36:43
[2026-08-25 02:36:43,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:43,174.174 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:43,345.345 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:43,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:43,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:43,422.422 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:43,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:45,536.536 INFO    ] ================================================
[2026-08-25 02:36:45,552.552 INFO    ] Launching Daemon at Tue Aug 25 02:36:45 IST 2026
[2026-08-25 02:36:45,563.563 INFO    ] ================================================
[2026-08-25 02:36:46,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:46
[2026-08-25 02:36:46,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:47,006.006 INFO    ] Initializing speech engine...
[2026-08-25 02:36:47,022.022 INFO    ] 2026-08-25 02:36:47
[2026-08-25 02:36:47,299.299 INFO    ] 2026-08-25 02:36:47
[2026-08-25 02:36:47,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:47,418.418 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:47,579.579 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:47,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:47,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:47,708.708 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:47,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:49,784.784 INFO    ] ================================================
[2026-08-25 02:36:49,799.799 INFO    ] Launching Daemon at Tue Aug 25 02:36:49 IST 2026
[2026-08-25 02:36:49,811.811 INFO    ] ================================================
[2026-08-25 02:36:50,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:50
[2026-08-25 02:36:50,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:51,276.276 INFO    ] Initializing speech engine...
[2026-08-25 02:36:51,284.284 INFO    ] 2026-08-25 02:36:51
[2026-08-25 02:36:51,545.545 INFO    ] 2026-08-25 02:36:51
[2026-08-25 02:36:51,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:51,696.696 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:51,854.854 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:51,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:51,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:51,903.903 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:51,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:53,986.986 INFO    ] ================================================
[2026-08-25 02:36:54,002.002 INFO    ] Launching Daemon at Tue Aug 25 02:36:53 IST 2026
[2026-08-25 02:36:54,014.014 INFO    ] ================================================
[2026-08-25 02:36:54,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:54
[2026-08-25 02:36:55,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:55,465.465 INFO    ] Initializing speech engine...
[2026-08-25 02:36:55,475.475 INFO    ] 2026-08-25 02:36:55
[2026-08-25 02:36:55,721.721 INFO    ] 2026-08-25 02:36:55
[2026-08-25 02:36:55,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:36:55,880.880 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:36:56,018.018 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:36:56,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:36:56,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:36:56,088.088 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:36:56,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:36:58,170.170 INFO    ] ================================================
[2026-08-25 02:36:58,186.186 INFO    ] Launching Daemon at Tue Aug 25 02:36:58 IST 2026
[2026-08-25 02:36:58,198.198 INFO    ] ================================================
[2026-08-25 02:36:58,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:36:58
[2026-08-25 02:36:59,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:36:59,596.596 INFO    ] Initializing speech engine...
[2026-08-25 02:36:59,611.611 INFO    ] 2026-08-25 02:36:59
[2026-08-25 02:36:59,877.877 INFO    ] 2026-08-25 02:36:59
[2026-08-25 02:36:59,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:00,039.039 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:00,143.143 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:00,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:00,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:00,245.245 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:00,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:02,329.329 INFO    ] ================================================
[2026-08-25 02:37:02,345.345 INFO    ] Launching Daemon at Tue Aug 25 02:37:02 IST 2026
[2026-08-25 02:37:02,357.357 INFO    ] ================================================
[2026-08-25 02:37:02,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:02
[2026-08-25 02:37:03,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:03,953.953 INFO    ] Initializing speech engine...
[2026-08-25 02:37:03,961.961 INFO    ] 2026-08-25 02:37:03
[2026-08-25 02:37:04,239.239 INFO    ] 2026-08-25 02:37:04
[2026-08-25 02:37:04,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:04,396.396 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:04,522.522 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:04,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:04,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:04,611.611 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:04,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:06,682.682 INFO    ] ================================================
[2026-08-25 02:37:06,698.698 INFO    ] Launching Daemon at Tue Aug 25 02:37:06 IST 2026
[2026-08-25 02:37:06,709.709 INFO    ] ================================================
[2026-08-25 02:37:07,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:07
[2026-08-25 02:37:07,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:08,153.153 INFO    ] Initializing speech engine...
[2026-08-25 02:37:08,160.160 INFO    ] 2026-08-25 02:37:08
[2026-08-25 02:37:08,457.457 INFO    ] 2026-08-25 02:37:08
[2026-08-25 02:37:08,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:08,581.581 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:08,734.734 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:08,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:08,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:08,841.841 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:08,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:10,914.914 INFO    ] ================================================
[2026-08-25 02:37:10,933.933 INFO    ] Launching Daemon at Tue Aug 25 02:37:10 IST 2026
[2026-08-25 02:37:10,945.945 INFO    ] ================================================
[2026-08-25 02:37:11,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:11
[2026-08-25 02:37:12,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:12,475.475 INFO    ] Initializing speech engine...
[2026-08-25 02:37:12,487.487 INFO    ] 2026-08-25 02:37:12
[2026-08-25 02:37:12,772.772 INFO    ] 2026-08-25 02:37:12
[2026-08-25 02:37:12,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:12,890.890 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:13,054.054 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:13,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:13,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:13,165.165 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:13,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:15,236.236 INFO    ] ================================================
[2026-08-25 02:37:15,252.252 INFO    ] Launching Daemon at Tue Aug 25 02:37:15 IST 2026
[2026-08-25 02:37:15,264.264 INFO    ] ================================================
[2026-08-25 02:37:15,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:15
[2026-08-25 02:37:16,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:16,690.690 INFO    ] Initializing speech engine...
[2026-08-25 02:37:16,700.700 INFO    ] 2026-08-25 02:37:16
[2026-08-25 02:37:16,964.964 INFO    ] 2026-08-25 02:37:16
[2026-08-25 02:37:17,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:17,063.063 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:17,235.235 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:17,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:17,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:17,356.356 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:17,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:19,432.432 INFO    ] ================================================
[2026-08-25 02:37:19,448.448 INFO    ] Launching Daemon at Tue Aug 25 02:37:19 IST 2026
[2026-08-25 02:37:19,460.460 INFO    ] ================================================
[2026-08-25 02:37:20,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:20
[2026-08-25 02:37:20,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:20,906.906 INFO    ] Initializing speech engine...
[2026-08-25 02:37:20,913.913 INFO    ] 2026-08-25 02:37:20
[2026-08-25 02:37:21,216.216 INFO    ] 2026-08-25 02:37:21
[2026-08-25 02:37:21,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:21,317.317 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:21,492.492 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:21,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:21,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:21,611.611 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:21,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:23,688.688 INFO    ] ================================================
[2026-08-25 02:37:23,704.704 INFO    ] Launching Daemon at Tue Aug 25 02:37:23 IST 2026
[2026-08-25 02:37:23,715.715 INFO    ] ================================================
[2026-08-25 02:37:24,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:24
[2026-08-25 02:37:24,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:25,270.270 INFO    ] Initializing speech engine...
[2026-08-25 02:37:25,277.277 INFO    ] 2026-08-25 02:37:25
[2026-08-25 02:37:25,568.568 INFO    ] 2026-08-25 02:37:25
[2026-08-25 02:37:25,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:25,753.753 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:25,902.902 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:25,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:25,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:26,029.029 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:26,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:28,207.207 INFO    ] ================================================
[2026-08-25 02:37:28,223.223 INFO    ] Launching Daemon at Tue Aug 25 02:37:28 IST 2026
[2026-08-25 02:37:28,235.235 INFO    ] ================================================
[2026-08-25 02:37:28,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:28
[2026-08-25 02:37:29,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:29,666.666 INFO    ] Initializing speech engine...
[2026-08-25 02:37:29,685.685 INFO    ] 2026-08-25 02:37:29
[2026-08-25 02:37:29,951.951 INFO    ] 2026-08-25 02:37:29
[2026-08-25 02:37:29,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:30,111.111 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:30,254.254 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:30,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:30,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:30,320.320 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:30,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:32,403.403 INFO    ] ================================================
[2026-08-25 02:37:32,421.421 INFO    ] Launching Daemon at Tue Aug 25 02:37:32 IST 2026
[2026-08-25 02:37:32,432.432 INFO    ] ================================================
[2026-08-25 02:37:33,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:33
[2026-08-25 02:37:33,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:33,956.956 INFO    ] Initializing speech engine...
[2026-08-25 02:37:33,962.962 INFO    ] 2026-08-25 02:37:33
[2026-08-25 02:37:34,225.225 INFO    ] 2026-08-25 02:37:34
[2026-08-25 02:37:34,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:34,375.375 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:34,521.521 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:34,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:34,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:34,606.606 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:34,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:36,695.695 INFO    ] ================================================
[2026-08-25 02:37:36,710.710 INFO    ] Launching Daemon at Tue Aug 25 02:37:36 IST 2026
[2026-08-25 02:37:36,722.722 INFO    ] ================================================
[2026-08-25 02:37:37,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:37
[2026-08-25 02:37:38,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:38,411.411 INFO    ] Initializing speech engine...
[2026-08-25 02:37:38,417.417 INFO    ] 2026-08-25 02:37:38
[2026-08-25 02:37:38,738.738 INFO    ] 2026-08-25 02:37:38
[2026-08-25 02:37:38,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:38,893.893 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:39,043.043 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:39,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:39,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:39,170.170 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:39,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:41,352.352 INFO    ] ================================================
[2026-08-25 02:37:41,367.367 INFO    ] Launching Daemon at Tue Aug 25 02:37:41 IST 2026
[2026-08-25 02:37:41,378.378 INFO    ] ================================================
[2026-08-25 02:37:42,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:42
[2026-08-25 02:37:42,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:43,050.050 INFO    ] Initializing speech engine...
[2026-08-25 02:37:43,062.062 INFO    ] 2026-08-25 02:37:43
[2026-08-25 02:37:43,349.349 INFO    ] 2026-08-25 02:37:43
[2026-08-25 02:37:43,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:43,524.524 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:43,647.647 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:43,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:43,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:43,722.722 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:43,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:45,832.832 INFO    ] ================================================
[2026-08-25 02:37:45,848.848 INFO    ] Launching Daemon at Tue Aug 25 02:37:45 IST 2026
[2026-08-25 02:37:45,860.860 INFO    ] ================================================
[2026-08-25 02:37:46,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:46
[2026-08-25 02:37:47,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:47,304.304 INFO    ] Initializing speech engine...
[2026-08-25 02:37:47,313.313 INFO    ] 2026-08-25 02:37:47
[2026-08-25 02:37:47,611.611 INFO    ] 2026-08-25 02:37:47
[2026-08-25 02:37:47,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:47,710.710 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:47,885.885 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:47,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:47,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:48,003.003 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:48,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:50,077.077 INFO    ] ================================================
[2026-08-25 02:37:50,093.093 INFO    ] Launching Daemon at Tue Aug 25 02:37:50 IST 2026
[2026-08-25 02:37:50,104.104 INFO    ] ================================================
[2026-08-25 02:37:50,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:50
[2026-08-25 02:37:51,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:51,552.552 INFO    ] Initializing speech engine...
[2026-08-25 02:37:51,561.561 INFO    ] 2026-08-25 02:37:51
[2026-08-25 02:37:51,862.862 INFO    ] 2026-08-25 02:37:51
[2026-08-25 02:37:51,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:51,963.963 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:52,135.135 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:52,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:52,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:52,253.253 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:52,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:54,332.332 INFO    ] ================================================
[2026-08-25 02:37:54,349.349 INFO    ] Launching Daemon at Tue Aug 25 02:37:54 IST 2026
[2026-08-25 02:37:54,360.360 INFO    ] ================================================
[2026-08-25 02:37:55,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:55
[2026-08-25 02:37:55,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:37:56,016.016 INFO    ] Initializing speech engine...
[2026-08-25 02:37:56,029.029 INFO    ] 2026-08-25 02:37:56
[2026-08-25 02:37:56,345.345 INFO    ] 2026-08-25 02:37:56
[2026-08-25 02:37:56,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:37:56,506.506 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:37:56,652.652 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:37:56,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:37:56,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:37:56,780.780 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:37:56,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:37:58,954.954 INFO    ] ================================================
[2026-08-25 02:37:58,970.970 INFO    ] Launching Daemon at Tue Aug 25 02:37:58 IST 2026
[2026-08-25 02:37:58,980.980 INFO    ] ================================================
[2026-08-25 02:37:59,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:37:59
[2026-08-25 02:38:00,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:00,424.424 INFO    ] Initializing speech engine...
[2026-08-25 02:38:00,433.433 INFO    ] 2026-08-25 02:38:00
[2026-08-25 02:38:00,694.694 INFO    ] 2026-08-25 02:38:00
[2026-08-25 02:38:00,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:00,848.848 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:00,976.976 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:00,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:00,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:01,020.020 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:01,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:03,100.100 INFO    ] ================================================
[2026-08-25 02:38:03,117.117 INFO    ] Launching Daemon at Tue Aug 25 02:38:03 IST 2026
[2026-08-25 02:38:03,128.128 INFO    ] ================================================
[2026-08-25 02:38:03,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:03
[2026-08-25 02:38:04,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:04,643.643 INFO    ] Initializing speech engine...
[2026-08-25 02:38:04,659.659 INFO    ] 2026-08-25 02:38:04
[2026-08-25 02:38:04,953.953 INFO    ] 2026-08-25 02:38:04
[2026-08-25 02:38:04,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:06,077.077 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:06,208.208 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:06,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:06,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:06,232.232 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:06,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:08,282.282 INFO    ] ================================================
[2026-08-25 02:38:08,297.297 INFO    ] Launching Daemon at Tue Aug 25 02:38:08 IST 2026
[2026-08-25 02:38:08,308.308 INFO    ] ================================================
[2026-08-25 02:38:08,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:08
[2026-08-25 02:38:09,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:09,731.731 INFO    ] Initializing speech engine...
[2026-08-25 02:38:09,754.754 INFO    ] 2026-08-25 02:38:09
[2026-08-25 02:38:10,014.014 INFO    ] 2026-08-25 02:38:10
[2026-08-25 02:38:10,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:10,174.174 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:10,317.317 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:10,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:10,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:10,382.382 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:10,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:12,464.464 INFO    ] ================================================
[2026-08-25 02:38:12,479.479 INFO    ] Launching Daemon at Tue Aug 25 02:38:12 IST 2026
[2026-08-25 02:38:12,490.490 INFO    ] ================================================
[2026-08-25 02:38:13,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:13
[2026-08-25 02:38:13,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:13,962.962 INFO    ] Initializing speech engine...
[2026-08-25 02:38:13,968.968 INFO    ] 2026-08-25 02:38:13
[2026-08-25 02:38:14,230.230 INFO    ] 2026-08-25 02:38:14
[2026-08-25 02:38:14,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:14,380.380 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:14,538.538 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:14,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:14,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:14,587.587 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:14,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:16,677.677 INFO    ] ================================================
[2026-08-25 02:38:16,692.692 INFO    ] Launching Daemon at Tue Aug 25 02:38:16 IST 2026
[2026-08-25 02:38:16,703.703 INFO    ] ================================================
[2026-08-25 02:38:17,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:17
[2026-08-25 02:38:17,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:18,122.122 INFO    ] Initializing speech engine...
[2026-08-25 02:38:18,131.131 INFO    ] 2026-08-25 02:38:18
[2026-08-25 02:38:18,428.428 INFO    ] 2026-08-25 02:38:18
[2026-08-25 02:38:18,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:18,526.526 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:18,693.693 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:18,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:18,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:18,796.796 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:18,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:20,873.873 INFO    ] ================================================
[2026-08-25 02:38:20,888.888 INFO    ] Launching Daemon at Tue Aug 25 02:38:20 IST 2026
[2026-08-25 02:38:20,899.899 INFO    ] ================================================
[2026-08-25 02:38:21,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:21
[2026-08-25 02:38:22,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:22,478.478 INFO    ] Initializing speech engine...
[2026-08-25 02:38:22,489.489 INFO    ] 2026-08-25 02:38:22
[2026-08-25 02:38:22,781.781 INFO    ] 2026-08-25 02:38:22
[2026-08-25 02:38:22,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:22,964.964 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:23,112.112 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:23,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:23,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:23,237.237 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:23,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:25,413.413 INFO    ] ================================================
[2026-08-25 02:38:25,430.430 INFO    ] Launching Daemon at Tue Aug 25 02:38:25 IST 2026
[2026-08-25 02:38:25,440.440 INFO    ] ================================================
[2026-08-25 02:38:26,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:26
[2026-08-25 02:38:26,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:27,107.107 INFO    ] Initializing speech engine...
[2026-08-25 02:38:27,119.119 INFO    ] 2026-08-25 02:38:27
[2026-08-25 02:38:27,394.394 INFO    ] 2026-08-25 02:38:27
[2026-08-25 02:38:27,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:27,551.551 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:27,723.723 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:27,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:27,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:27,799.799 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:27,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:29,902.902 INFO    ] ================================================
[2026-08-25 02:38:29,918.918 INFO    ] Launching Daemon at Tue Aug 25 02:38:29 IST 2026
[2026-08-25 02:38:29,928.928 INFO    ] ================================================
[2026-08-25 02:38:30,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:30
[2026-08-25 02:38:31,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:31,329.329 INFO    ] Initializing speech engine...
[2026-08-25 02:38:31,352.352 INFO    ] 2026-08-25 02:38:31
[2026-08-25 02:38:31,623.623 INFO    ] 2026-08-25 02:38:31
[2026-08-25 02:38:31,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:31,796.796 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:31,907.907 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:31,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:32,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:32,060.060 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:32,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:34,127.127 INFO    ] ================================================
[2026-08-25 02:38:34,143.143 INFO    ] Launching Daemon at Tue Aug 25 02:38:34 IST 2026
[2026-08-25 02:38:34,154.154 INFO    ] ================================================
[2026-08-25 02:38:34,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:34
[2026-08-25 02:38:35,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:35,601.601 INFO    ] Initializing speech engine...
[2026-08-25 02:38:35,609.609 INFO    ] 2026-08-25 02:38:35
[2026-08-25 02:38:35,918.918 INFO    ] 2026-08-25 02:38:35
[2026-08-25 02:38:35,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:36,019.019 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:36,168.168 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:36,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:36,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:36,262.262 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:36,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:38,371.371 INFO    ] ================================================
[2026-08-25 02:38:38,386.386 INFO    ] Launching Daemon at Tue Aug 25 02:38:38 IST 2026
[2026-08-25 02:38:38,397.397 INFO    ] ================================================
[2026-08-25 02:38:38,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:38
[2026-08-25 02:38:39,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:39,811.811 INFO    ] Initializing speech engine...
[2026-08-25 02:38:39,818.818 INFO    ] 2026-08-25 02:38:39
[2026-08-25 02:38:40,088.088 INFO    ] 2026-08-25 02:38:40
[2026-08-25 02:38:40,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:40,249.249 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:40,354.354 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:40,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:40,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:40,452.452 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:40,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:42,531.531 INFO    ] ================================================
[2026-08-25 02:38:42,546.546 INFO    ] Launching Daemon at Tue Aug 25 02:38:42 IST 2026
[2026-08-25 02:38:42,556.556 INFO    ] ================================================
[2026-08-25 02:38:43,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:43
[2026-08-25 02:38:43,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:44,041.041 INFO    ] Initializing speech engine...
[2026-08-25 02:38:44,050.050 INFO    ] 2026-08-25 02:38:44
[2026-08-25 02:38:44,308.308 INFO    ] 2026-08-25 02:38:44
[2026-08-25 02:38:44,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:44,464.464 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:44,620.620 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:44,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:44,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:44,687.687 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:44,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:46,761.761 INFO    ] ================================================
[2026-08-25 02:38:46,776.776 INFO    ] Launching Daemon at Tue Aug 25 02:38:46 IST 2026
[2026-08-25 02:38:46,786.786 INFO    ] ================================================
[2026-08-25 02:38:47,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:47
[2026-08-25 02:38:47,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:48,266.266 INFO    ] Initializing speech engine...
[2026-08-25 02:38:48,273.273 INFO    ] 2026-08-25 02:38:48
[2026-08-25 02:38:48,535.535 INFO    ] 2026-08-25 02:38:48
[2026-08-25 02:38:48,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:48,685.685 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:48,843.843 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:48,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:48,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:48,891.891 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:48,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:50,975.975 INFO    ] ================================================
[2026-08-25 02:38:50,990.990 INFO    ] Launching Daemon at Tue Aug 25 02:38:50 IST 2026
[2026-08-25 02:38:51,001.001 INFO    ] ================================================
[2026-08-25 02:38:51,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:51
[2026-08-25 02:38:52,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:52,691.691 INFO    ] Initializing speech engine...
[2026-08-25 02:38:52,701.701 INFO    ] 2026-08-25 02:38:52
[2026-08-25 02:38:53,009.009 INFO    ] 2026-08-25 02:38:52
[2026-08-25 02:38:53,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:53,165.165 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:53,314.314 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:53,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:53,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:53,423.423 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:53,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:55,607.607 INFO    ] ================================================
[2026-08-25 02:38:55,622.622 INFO    ] Launching Daemon at Tue Aug 25 02:38:55 IST 2026
[2026-08-25 02:38:55,633.633 INFO    ] ================================================
[2026-08-25 02:38:56,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:38:56
[2026-08-25 02:38:56,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:38:57,059.059 INFO    ] Initializing speech engine...
[2026-08-25 02:38:57,067.067 INFO    ] 2026-08-25 02:38:57
[2026-08-25 02:38:57,368.368 INFO    ] 2026-08-25 02:38:57
[2026-08-25 02:38:57,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:38:57,469.469 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:38:57,647.647 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:38:57,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:38:57,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:38:57,768.768 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:38:57,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:38:59,848.848 INFO    ] ================================================
[2026-08-25 02:38:59,863.863 INFO    ] Launching Daemon at Tue Aug 25 02:38:59 IST 2026
[2026-08-25 02:38:59,874.874 INFO    ] ================================================
[2026-08-25 02:39:00,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:00
[2026-08-25 02:39:01,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:01,311.311 INFO    ] Initializing speech engine...
[2026-08-25 02:39:01,318.318 INFO    ] 2026-08-25 02:39:01
[2026-08-25 02:39:01,567.567 INFO    ] 2026-08-25 02:39:01
[2026-08-25 02:39:01,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:01,729.729 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:01,837.837 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:01,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:01,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:01,961.961 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:01,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:04,061.061 INFO    ] ================================================
[2026-08-25 02:39:04,077.077 INFO    ] Launching Daemon at Tue Aug 25 02:39:04 IST 2026
[2026-08-25 02:39:04,088.088 INFO    ] ================================================
[2026-08-25 02:39:04,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:04
[2026-08-25 02:39:05,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:05,570.570 INFO    ] Initializing speech engine...
[2026-08-25 02:39:05,580.580 INFO    ] 2026-08-25 02:39:05
[2026-08-25 02:39:05,830.830 INFO    ] 2026-08-25 02:39:05
[2026-08-25 02:39:05,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:05,993.993 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:06,097.097 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:06,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:06,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:06,200.200 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:06,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:08,271.271 INFO    ] ================================================
[2026-08-25 02:39:08,286.286 INFO    ] Launching Daemon at Tue Aug 25 02:39:08 IST 2026
[2026-08-25 02:39:08,297.297 INFO    ] ================================================
[2026-08-25 02:39:08,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:08
[2026-08-25 02:39:09,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:09,737.737 INFO    ] Initializing speech engine...
[2026-08-25 02:39:09,747.747 INFO    ] 2026-08-25 02:39:09
[2026-08-25 02:39:10,024.024 INFO    ] 2026-08-25 02:39:09
[2026-08-25 02:39:10,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:10,127.127 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:10,283.283 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:10,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:10,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:10,407.407 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:10,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:12,472.472 INFO    ] ================================================
[2026-08-25 02:39:12,487.487 INFO    ] Launching Daemon at Tue Aug 25 02:39:12 IST 2026
[2026-08-25 02:39:12,498.498 INFO    ] ================================================
[2026-08-25 02:39:13,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:13
[2026-08-25 02:39:13,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:13,964.964 INFO    ] Initializing speech engine...
[2026-08-25 02:39:13,970.970 INFO    ] 2026-08-25 02:39:13
[2026-08-25 02:39:14,231.231 INFO    ] 2026-08-25 02:39:14
[2026-08-25 02:39:14,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:14,383.383 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:14,537.537 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:14,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:14,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:14,586.586 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:14,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:16,670.670 INFO    ] ================================================
[2026-08-25 02:39:16,686.686 INFO    ] Launching Daemon at Tue Aug 25 02:39:16 IST 2026
[2026-08-25 02:39:16,696.696 INFO    ] ================================================
[2026-08-25 02:39:17,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:17
[2026-08-25 02:39:17,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:18,241.241 INFO    ] Initializing speech engine...
[2026-08-25 02:39:18,248.248 INFO    ] 2026-08-25 02:39:18
[2026-08-25 02:39:18,545.545 INFO    ] 2026-08-25 02:39:18
[2026-08-25 02:39:18,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:18,644.644 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:18,819.819 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:18,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:18,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:18,938.938 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:18,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:21,012.012 INFO    ] ================================================
[2026-08-25 02:39:21,027.027 INFO    ] Launching Daemon at Tue Aug 25 02:39:21 IST 2026
[2026-08-25 02:39:21,038.038 INFO    ] ================================================
[2026-08-25 02:39:21,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:21
[2026-08-25 02:39:22,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:22,452.452 INFO    ] Initializing speech engine...
[2026-08-25 02:39:22,459.459 INFO    ] 2026-08-25 02:39:22
[2026-08-25 02:39:22,758.758 INFO    ] 2026-08-25 02:39:22
[2026-08-25 02:39:22,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:22,930.930 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:23,035.035 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:23,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:23,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:23,132.132 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:23,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:25,209.209 INFO    ] ================================================
[2026-08-25 02:39:25,224.224 INFO    ] Launching Daemon at Tue Aug 25 02:39:25 IST 2026
[2026-08-25 02:39:25,234.234 INFO    ] ================================================
[2026-08-25 02:39:25,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:25
[2026-08-25 02:39:26,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:26,665.665 INFO    ] Initializing speech engine...
[2026-08-25 02:39:26,674.674 INFO    ] 2026-08-25 02:39:26
[2026-08-25 02:39:26,936.936 INFO    ] 2026-08-25 02:39:26
[2026-08-25 02:39:26,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:27,083.083 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:27,189.189 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:27,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:27,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:27,286.286 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:27,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:29,364.364 INFO    ] ================================================
[2026-08-25 02:39:29,379.379 INFO    ] Launching Daemon at Tue Aug 25 02:39:29 IST 2026
[2026-08-25 02:39:29,389.389 INFO    ] ================================================
[2026-08-25 02:39:29,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:29
[2026-08-25 02:39:30,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:30,841.841 INFO    ] Initializing speech engine...
[2026-08-25 02:39:30,863.863 INFO    ] 2026-08-25 02:39:30
[2026-08-25 02:39:31,115.115 INFO    ] 2026-08-25 02:39:31
[2026-08-25 02:39:31,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:31,276.276 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:31,436.436 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:31,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:31,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:31,505.505 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:31,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:33,572.572 INFO    ] ================================================
[2026-08-25 02:39:33,588.588 INFO    ] Launching Daemon at Tue Aug 25 02:39:33 IST 2026
[2026-08-25 02:39:33,599.599 INFO    ] ================================================
[2026-08-25 02:39:34,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:34
[2026-08-25 02:39:34,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:35,041.041 INFO    ] Initializing speech engine...
[2026-08-25 02:39:35,050.050 INFO    ] 2026-08-25 02:39:35
[2026-08-25 02:39:35,306.306 INFO    ] 2026-08-25 02:39:35
[2026-08-25 02:39:35,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:35,396.396 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:35,566.566 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:35,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:35,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:35,683.683 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:35,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:37,762.762 INFO    ] ================================================
[2026-08-25 02:39:37,777.777 INFO    ] Launching Daemon at Tue Aug 25 02:39:37 IST 2026
[2026-08-25 02:39:37,788.788 INFO    ] ================================================
[2026-08-25 02:39:38,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:38
[2026-08-25 02:39:38,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:39,211.211 INFO    ] Initializing speech engine...
[2026-08-25 02:39:39,220.220 INFO    ] 2026-08-25 02:39:39
[2026-08-25 02:39:39,467.467 INFO    ] 2026-08-25 02:39:39
[2026-08-25 02:39:39,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:39,628.628 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:39,800.800 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:39,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:39,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:39,848.848 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:39,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:41,939.939 INFO    ] ================================================
[2026-08-25 02:39:41,955.955 INFO    ] Launching Daemon at Tue Aug 25 02:39:41 IST 2026
[2026-08-25 02:39:41,967.967 INFO    ] ================================================
[2026-08-25 02:39:42,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:42
[2026-08-25 02:39:43,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:43,416.416 INFO    ] Initializing speech engine...
[2026-08-25 02:39:43,422.422 INFO    ] 2026-08-25 02:39:43
[2026-08-25 02:39:43,675.675 INFO    ] 2026-08-25 02:39:43
[2026-08-25 02:39:43,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:43,835.835 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:43,990.990 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:44,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:44,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:44,038.038 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:44,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:46,124.124 INFO    ] ================================================
[2026-08-25 02:39:46,140.140 INFO    ] Launching Daemon at Tue Aug 25 02:39:46 IST 2026
[2026-08-25 02:39:46,152.152 INFO    ] ================================================
[2026-08-25 02:39:46,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:46
[2026-08-25 02:39:47,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:47,605.605 INFO    ] Initializing speech engine...
[2026-08-25 02:39:47,614.614 INFO    ] 2026-08-25 02:39:47
[2026-08-25 02:39:47,870.870 INFO    ] 2026-08-25 02:39:47
[2026-08-25 02:39:47,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:48,029.029 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:48,189.189 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:48,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:48,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:48,248.248 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:48,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:50,320.320 INFO    ] ================================================
[2026-08-25 02:39:50,336.336 INFO    ] Launching Daemon at Tue Aug 25 02:39:50 IST 2026
[2026-08-25 02:39:50,347.347 INFO    ] ================================================
[2026-08-25 02:39:50,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:50
[2026-08-25 02:39:51,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:51,783.783 INFO    ] Initializing speech engine...
[2026-08-25 02:39:51,789.789 INFO    ] 2026-08-25 02:39:51
[2026-08-25 02:39:52,032.032 INFO    ] 2026-08-25 02:39:52
[2026-08-25 02:39:52,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:52,191.191 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:52,292.292 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:52,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:52,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:52,396.396 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:52,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:54,477.477 INFO    ] ================================================
[2026-08-25 02:39:54,492.492 INFO    ] Launching Daemon at Tue Aug 25 02:39:54 IST 2026
[2026-08-25 02:39:54,504.504 INFO    ] ================================================
[2026-08-25 02:39:55,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:55
[2026-08-25 02:39:55,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:39:55,994.994 INFO    ] Initializing speech engine...
[2026-08-25 02:39:56,017.017 INFO    ] 2026-08-25 02:39:56
[2026-08-25 02:39:56,267.267 INFO    ] 2026-08-25 02:39:56
[2026-08-25 02:39:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:39:56,427.427 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:39:56,567.567 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:39:56,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:39:56,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:39:56,631.631 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:39:56,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:39:58,714.714 INFO    ] ================================================
[2026-08-25 02:39:58,730.730 INFO    ] Launching Daemon at Tue Aug 25 02:39:58 IST 2026
[2026-08-25 02:39:58,742.742 INFO    ] ================================================
[2026-08-25 02:39:59,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:39:59
[2026-08-25 02:39:59,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:00,198.198 INFO    ] Initializing speech engine...
[2026-08-25 02:40:00,208.208 INFO    ] 2026-08-25 02:40:00
[2026-08-25 02:40:00,461.461 INFO    ] 2026-08-25 02:40:00
[2026-08-25 02:40:00,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:00,617.617 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:00,775.775 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:00,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:00,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:00,824.824 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:00,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:02,916.916 INFO    ] ================================================
[2026-08-25 02:40:02,947.947 INFO    ] Launching Daemon at Tue Aug 25 02:40:02 IST 2026
[2026-08-25 02:40:02,960.960 INFO    ] ================================================
[2026-08-25 02:40:03,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:03
[2026-08-25 02:40:04,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:04,414.414 INFO    ] Initializing speech engine...
[2026-08-25 02:40:04,423.423 INFO    ] 2026-08-25 02:40:04
[2026-08-25 02:40:04,672.672 INFO    ] 2026-08-25 02:40:04
[2026-08-25 02:40:04,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:04,835.835 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:04,980.980 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:05,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:05,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:05,074.074 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:05,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:07,182.182 INFO    ] ================================================
[2026-08-25 02:40:07,198.198 INFO    ] Launching Daemon at Tue Aug 25 02:40:07 IST 2026
[2026-08-25 02:40:07,209.209 INFO    ] ================================================
[2026-08-25 02:40:07,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:07
[2026-08-25 02:40:08,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:08,666.666 INFO    ] Initializing speech engine...
[2026-08-25 02:40:08,675.675 INFO    ] 2026-08-25 02:40:08
[2026-08-25 02:40:08,933.933 INFO    ] 2026-08-25 02:40:08
[2026-08-25 02:40:08,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:09,083.083 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:09,247.247 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:09,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:09,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:09,288.288 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:09,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:11,370.370 INFO    ] ================================================
[2026-08-25 02:40:11,386.386 INFO    ] Launching Daemon at Tue Aug 25 02:40:11 IST 2026
[2026-08-25 02:40:11,397.397 INFO    ] ================================================
[2026-08-25 02:40:11,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:11
[2026-08-25 02:40:12,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:12,796.796 INFO    ] Initializing speech engine...
[2026-08-25 02:40:12,808.808 INFO    ] 2026-08-25 02:40:12
[2026-08-25 02:40:13,075.075 INFO    ] 2026-08-25 02:40:13
[2026-08-25 02:40:13,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:13,181.181 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:13,325.325 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:13,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:13,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:13,439.439 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:13,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:15,522.522 INFO    ] ================================================
[2026-08-25 02:40:15,538.538 INFO    ] Launching Daemon at Tue Aug 25 02:40:15 IST 2026
[2026-08-25 02:40:15,549.549 INFO    ] ================================================
[2026-08-25 02:40:16,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:16
[2026-08-25 02:40:16,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:17,043.043 INFO    ] Initializing speech engine...
[2026-08-25 02:40:17,051.051 INFO    ] 2026-08-25 02:40:17
[2026-08-25 02:40:17,322.322 INFO    ] 2026-08-25 02:40:17
[2026-08-25 02:40:17,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:17,460.460 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:17,613.613 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:17,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:17,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:17,662.662 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:17,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:19,744.744 INFO    ] ================================================
[2026-08-25 02:40:19,759.759 INFO    ] Launching Daemon at Tue Aug 25 02:40:19 IST 2026
[2026-08-25 02:40:19,770.770 INFO    ] ================================================
[2026-08-25 02:40:20,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:20
[2026-08-25 02:40:20,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:21,193.193 INFO    ] Initializing speech engine...
[2026-08-25 02:40:21,206.206 INFO    ] 2026-08-25 02:40:21
[2026-08-25 02:40:21,451.451 INFO    ] 2026-08-25 02:40:21
[2026-08-25 02:40:21,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:21,609.609 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:21,734.734 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:21,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:21,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:21,813.813 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:21,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:23,894.894 INFO    ] ================================================
[2026-08-25 02:40:23,909.909 INFO    ] Launching Daemon at Tue Aug 25 02:40:23 IST 2026
[2026-08-25 02:40:23,920.920 INFO    ] ================================================
[2026-08-25 02:40:24,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:24
[2026-08-25 02:40:25,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:25,378.378 INFO    ] Initializing speech engine...
[2026-08-25 02:40:25,385.385 INFO    ] 2026-08-25 02:40:25
[2026-08-25 02:40:25,645.645 INFO    ] 2026-08-25 02:40:25
[2026-08-25 02:40:25,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:25,799.799 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:25,953.953 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:25,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:25,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:26,022.022 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:26,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:28,087.087 INFO    ] ================================================
[2026-08-25 02:40:28,102.102 INFO    ] Launching Daemon at Tue Aug 25 02:40:28 IST 2026
[2026-08-25 02:40:28,113.113 INFO    ] ================================================
[2026-08-25 02:40:28,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:28
[2026-08-25 02:40:29,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:29,537.537 INFO    ] Initializing speech engine...
[2026-08-25 02:40:29,548.548 INFO    ] 2026-08-25 02:40:29
[2026-08-25 02:40:29,796.796 INFO    ] 2026-08-25 02:40:29
[2026-08-25 02:40:29,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:29,896.896 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:30,048.048 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:30,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:30,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:30,147.147 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:30,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:32,223.223 INFO    ] ================================================
[2026-08-25 02:40:32,239.239 INFO    ] Launching Daemon at Tue Aug 25 02:40:32 IST 2026
[2026-08-25 02:40:32,250.250 INFO    ] ================================================
[2026-08-25 02:40:32,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:32
[2026-08-25 02:40:33,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:33,712.712 INFO    ] Initializing speech engine...
[2026-08-25 02:40:33,719.719 INFO    ] 2026-08-25 02:40:33
[2026-08-25 02:40:33,978.978 INFO    ] 2026-08-25 02:40:33
[2026-08-25 02:40:34,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:34,125.125 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:34,231.231 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:34,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:34,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:34,331.331 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:34,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:36,414.414 INFO    ] ================================================
[2026-08-25 02:40:36,429.429 INFO    ] Launching Daemon at Tue Aug 25 02:40:36 IST 2026
[2026-08-25 02:40:36,441.441 INFO    ] ================================================
[2026-08-25 02:40:37,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:37
[2026-08-25 02:40:37,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:37,844.844 INFO    ] Initializing speech engine...
[2026-08-25 02:40:37,859.859 INFO    ] 2026-08-25 02:40:37
[2026-08-25 02:40:38,121.121 INFO    ] 2026-08-25 02:40:38
[2026-08-25 02:40:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:38,280.280 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:38,416.416 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:38,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:38,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:38,484.484 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:38,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:40,567.567 INFO    ] ================================================
[2026-08-25 02:40:40,582.582 INFO    ] Launching Daemon at Tue Aug 25 02:40:40 IST 2026
[2026-08-25 02:40:40,594.594 INFO    ] ================================================
[2026-08-25 02:40:41,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:41
[2026-08-25 02:40:41,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:42,206.206 INFO    ] Initializing speech engine...
[2026-08-25 02:40:42,216.216 INFO    ] 2026-08-25 02:40:42
[2026-08-25 02:40:42,479.479 INFO    ] 2026-08-25 02:40:42
[2026-08-25 02:40:42,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:42,614.614 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:42,758.758 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:42,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:42,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:42,823.823 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:42,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:44,915.915 INFO    ] ================================================
[2026-08-25 02:40:44,931.931 INFO    ] Launching Daemon at Tue Aug 25 02:40:44 IST 2026
[2026-08-25 02:40:44,942.942 INFO    ] ================================================
[2026-08-25 02:40:45,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:45
[2026-08-25 02:40:46,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:46,371.371 INFO    ] Initializing speech engine...
[2026-08-25 02:40:46,380.380 INFO    ] 2026-08-25 02:40:46
[2026-08-25 02:40:46,660.660 INFO    ] 2026-08-25 02:40:46
[2026-08-25 02:40:46,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:46,755.755 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:46,924.924 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:46,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:46,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:46,971.971 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:47,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:49,086.086 INFO    ] ================================================
[2026-08-25 02:40:49,101.101 INFO    ] Launching Daemon at Tue Aug 25 02:40:49 IST 2026
[2026-08-25 02:40:49,113.113 INFO    ] ================================================
[2026-08-25 02:40:49,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:49
[2026-08-25 02:40:50,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:50,729.729 INFO    ] Initializing speech engine...
[2026-08-25 02:40:50,736.736 INFO    ] 2026-08-25 02:40:50
[2026-08-25 02:40:50,995.995 INFO    ] 2026-08-25 02:40:50
[2026-08-25 02:40:51,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:51,142.142 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:51,246.246 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:51,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:51,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:51,346.346 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:51,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:53,430.430 INFO    ] ================================================
[2026-08-25 02:40:53,446.446 INFO    ] Launching Daemon at Tue Aug 25 02:40:53 IST 2026
[2026-08-25 02:40:53,457.457 INFO    ] ================================================
[2026-08-25 02:40:54,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:54
[2026-08-25 02:40:54,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:54,990.990 INFO    ] Initializing speech engine...
[2026-08-25 02:40:54,999.999 INFO    ] 2026-08-25 02:40:54
[2026-08-25 02:40:55,247.247 INFO    ] 2026-08-25 02:40:55
[2026-08-25 02:40:55,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:55,407.407 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:55,567.567 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:55,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:55,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:55,631.631 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:55,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:40:57,700.700 INFO    ] ================================================
[2026-08-25 02:40:57,716.716 INFO    ] Launching Daemon at Tue Aug 25 02:40:57 IST 2026
[2026-08-25 02:40:57,727.727 INFO    ] ================================================
[2026-08-25 02:40:58,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:40:58
[2026-08-25 02:40:58,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:40:59,150.150 INFO    ] Initializing speech engine...
[2026-08-25 02:40:59,159.159 INFO    ] 2026-08-25 02:40:59
[2026-08-25 02:40:59,411.411 INFO    ] 2026-08-25 02:40:59
[2026-08-25 02:40:59,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:40:59,568.568 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:40:59,720.720 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:40:59,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:40:59,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:40:59,784.784 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:40:59,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:01,858.858 INFO    ] ================================================
[2026-08-25 02:41:01,875.875 INFO    ] Launching Daemon at Tue Aug 25 02:41:01 IST 2026
[2026-08-25 02:41:01,886.886 INFO    ] ================================================
[2026-08-25 02:41:02,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:02
[2026-08-25 02:41:03,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:03,420.420 INFO    ] Initializing speech engine...
[2026-08-25 02:41:03,430.430 INFO    ] 2026-08-25 02:41:03
[2026-08-25 02:41:03,680.680 INFO    ] 2026-08-25 02:41:03
[2026-08-25 02:41:03,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:03,836.836 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:03,932.932 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:03,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:04,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:04,031.031 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:04,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:06,104.104 INFO    ] ================================================
[2026-08-25 02:41:06,119.119 INFO    ] Launching Daemon at Tue Aug 25 02:41:06 IST 2026
[2026-08-25 02:41:06,131.131 INFO    ] ================================================
[2026-08-25 02:41:06,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:06
[2026-08-25 02:41:07,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:07,560.560 INFO    ] Initializing speech engine...
[2026-08-25 02:41:07,573.573 INFO    ] 2026-08-25 02:41:07
[2026-08-25 02:41:07,837.837 INFO    ] 2026-08-25 02:41:07
[2026-08-25 02:41:07,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:07,951.951 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:08,091.091 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:08,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:08,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:08,190.190 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:08,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:10,263.263 INFO    ] ================================================
[2026-08-25 02:41:10,278.278 INFO    ] Launching Daemon at Tue Aug 25 02:41:10 IST 2026
[2026-08-25 02:41:10,289.289 INFO    ] ================================================
[2026-08-25 02:41:10,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:10
[2026-08-25 02:41:11,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:11,780.780 INFO    ] Initializing speech engine...
[2026-08-25 02:41:11,803.803 INFO    ] 2026-08-25 02:41:11
[2026-08-25 02:41:12,057.057 INFO    ] 2026-08-25 02:41:12
[2026-08-25 02:41:12,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:12,164.164 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:12,310.310 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:12,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:12,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:12,427.427 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:12,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:14,523.523 INFO    ] ================================================
[2026-08-25 02:41:14,539.539 INFO    ] Launching Daemon at Tue Aug 25 02:41:14 IST 2026
[2026-08-25 02:41:14,550.550 INFO    ] ================================================
[2026-08-25 02:41:15,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:15
[2026-08-25 02:41:15,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:16,006.006 INFO    ] Initializing speech engine...
[2026-08-25 02:41:16,013.013 INFO    ] 2026-08-25 02:41:16
[2026-08-25 02:41:16,271.271 INFO    ] 2026-08-25 02:41:16
[2026-08-25 02:41:16,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:16,421.421 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:16,568.568 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:16,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:16,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:16,626.626 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:16,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:18,711.711 INFO    ] ================================================
[2026-08-25 02:41:18,727.727 INFO    ] Launching Daemon at Tue Aug 25 02:41:18 IST 2026
[2026-08-25 02:41:18,738.738 INFO    ] ================================================
[2026-08-25 02:41:19,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:19
[2026-08-25 02:41:19,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:20,150.150 INFO    ] Initializing speech engine...
[2026-08-25 02:41:20,159.159 INFO    ] 2026-08-25 02:41:20
[2026-08-25 02:41:20,403.403 INFO    ] 2026-08-25 02:41:20
[2026-08-25 02:41:20,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:20,565.565 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:20,709.709 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:20,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:20,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:20,768.768 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:20,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:22,851.851 INFO    ] ================================================
[2026-08-25 02:41:22,867.867 INFO    ] Launching Daemon at Tue Aug 25 02:41:22 IST 2026
[2026-08-25 02:41:22,878.878 INFO    ] ================================================
[2026-08-25 02:41:23,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:23
[2026-08-25 02:41:24,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:24,337.337 INFO    ] Initializing speech engine...
[2026-08-25 02:41:24,359.359 INFO    ] 2026-08-25 02:41:24
[2026-08-25 02:41:24,641.641 INFO    ] 2026-08-25 02:41:24
[2026-08-25 02:41:24,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:24,741.741 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:24,907.907 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:24,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:24,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:25,021.021 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:25,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:27,097.097 INFO    ] ================================================
[2026-08-25 02:41:27,113.113 INFO    ] Launching Daemon at Tue Aug 25 02:41:27 IST 2026
[2026-08-25 02:41:27,123.123 INFO    ] ================================================
[2026-08-25 02:41:27,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:27
[2026-08-25 02:41:28,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:28,717.717 INFO    ] Initializing speech engine...
[2026-08-25 02:41:28,733.733 INFO    ] 2026-08-25 02:41:28
[2026-08-25 02:41:28,984.984 INFO    ] 2026-08-25 02:41:28
[2026-08-25 02:41:29,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:29,144.144 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:29,250.250 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:29,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:29,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:29,351.351 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:29,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:31,434.434 INFO    ] ================================================
[2026-08-25 02:41:31,450.450 INFO    ] Launching Daemon at Tue Aug 25 02:41:31 IST 2026
[2026-08-25 02:41:31,462.462 INFO    ] ================================================
[2026-08-25 02:41:32,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:32
[2026-08-25 02:41:32,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:32,921.921 INFO    ] Initializing speech engine...
[2026-08-25 02:41:32,927.927 INFO    ] 2026-08-25 02:41:32
[2026-08-25 02:41:33,225.225 INFO    ] 2026-08-25 02:41:33
[2026-08-25 02:41:33,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:33,322.322 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:33,493.493 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:33,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:33,596.596 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:33,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:35,669.669 INFO    ] ================================================
[2026-08-25 02:41:35,685.685 INFO    ] Launching Daemon at Tue Aug 25 02:41:35 IST 2026
[2026-08-25 02:41:35,696.696 INFO    ] ================================================
[2026-08-25 02:41:36,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:36
[2026-08-25 02:41:36,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:37,167.167 INFO    ] Initializing speech engine...
[2026-08-25 02:41:37,177.177 INFO    ] 2026-08-25 02:41:37
[2026-08-25 02:41:37,427.427 INFO    ] 2026-08-25 02:41:37
[2026-08-25 02:41:37,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:37,590.590 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:37,698.698 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:37,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:37,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:37,801.801 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:37,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:39,887.887 INFO    ] ================================================
[2026-08-25 02:41:39,909.909 INFO    ] Launching Daemon at Tue Aug 25 02:41:39 IST 2026
[2026-08-25 02:41:39,920.920 INFO    ] ================================================
[2026-08-25 02:41:40,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:40
[2026-08-25 02:41:41,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:41,380.380 INFO    ] Initializing speech engine...
[2026-08-25 02:41:41,388.388 INFO    ] 2026-08-25 02:41:41
[2026-08-25 02:41:41,651.651 INFO    ] 2026-08-25 02:41:41
[2026-08-25 02:41:41,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:41,800.800 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:41,955.955 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:41,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:41,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:42,002.002 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:42,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:44,085.085 INFO    ] ================================================
[2026-08-25 02:41:44,101.101 INFO    ] Launching Daemon at Tue Aug 25 02:41:44 IST 2026
[2026-08-25 02:41:44,112.112 INFO    ] ================================================
[2026-08-25 02:41:44,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:44
[2026-08-25 02:41:45,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:45,535.535 INFO    ] Initializing speech engine...
[2026-08-25 02:41:45,544.544 INFO    ] 2026-08-25 02:41:45
[2026-08-25 02:41:45,796.796 INFO    ] 2026-08-25 02:41:45
[2026-08-25 02:41:45,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:45,904.904 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:46,050.050 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:46,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:46,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:46,149.149 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:46,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:48,222.222 INFO    ] ================================================
[2026-08-25 02:41:48,238.238 INFO    ] Launching Daemon at Tue Aug 25 02:41:48 IST 2026
[2026-08-25 02:41:48,248.248 INFO    ] ================================================
[2026-08-25 02:41:48,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:48
[2026-08-25 02:41:49,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:49,664.664 INFO    ] Initializing speech engine...
[2026-08-25 02:41:49,674.674 INFO    ] 2026-08-25 02:41:49
[2026-08-25 02:41:49,924.924 INFO    ] 2026-08-25 02:41:49
[2026-08-25 02:41:49,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:50,086.086 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:50,189.189 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:50,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:50,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:50,291.291 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:50,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:52,363.363 INFO    ] ================================================
[2026-08-25 02:41:52,379.379 INFO    ] Launching Daemon at Tue Aug 25 02:41:52 IST 2026
[2026-08-25 02:41:52,390.390 INFO    ] ================================================
[2026-08-25 02:41:52,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:52
[2026-08-25 02:41:53,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:53,811.811 INFO    ] Initializing speech engine...
[2026-08-25 02:41:53,821.821 INFO    ] 2026-08-25 02:41:53
[2026-08-25 02:41:54,069.069 INFO    ] 2026-08-25 02:41:54
[2026-08-25 02:41:54,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:54,160.160 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:54,322.322 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:54,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:54,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:54,419.419 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:54,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:41:56,492.492 INFO    ] ================================================
[2026-08-25 02:41:56,507.507 INFO    ] Launching Daemon at Tue Aug 25 02:41:56 IST 2026
[2026-08-25 02:41:56,518.518 INFO    ] ================================================
[2026-08-25 02:41:57,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:41:57
[2026-08-25 02:41:57,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:41:57,995.995 INFO    ] Initializing speech engine...
[2026-08-25 02:41:58,003.003 INFO    ] 2026-08-25 02:41:57
[2026-08-25 02:41:58,295.295 INFO    ] 2026-08-25 02:41:58
[2026-08-25 02:41:58,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:41:58,473.473 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:41:58,616.616 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:41:58,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:41:58,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:41:58,680.680 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:41:58,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:00,836.836 INFO    ] ================================================
[2026-08-25 02:42:00,851.851 INFO    ] Launching Daemon at Tue Aug 25 02:42:00 IST 2026
[2026-08-25 02:42:00,861.861 INFO    ] ================================================
[2026-08-25 02:42:01,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:01
[2026-08-25 02:42:02,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:02,604.604 INFO    ] Initializing speech engine...
[2026-08-25 02:42:02,610.610 INFO    ] 2026-08-25 02:42:02
[2026-08-25 02:42:02,935.935 INFO    ] 2026-08-25 02:42:02
[2026-08-25 02:42:03,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:03,090.090 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:03,235.235 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:03,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:03,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:03,364.364 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:03,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:05,542.542 INFO    ] ================================================
[2026-08-25 02:42:05,557.557 INFO    ] Launching Daemon at Tue Aug 25 02:42:05 IST 2026
[2026-08-25 02:42:05,568.568 INFO    ] ================================================
[2026-08-25 02:42:06,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:06
[2026-08-25 02:42:06,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:07,084.084 INFO    ] Initializing speech engine...
[2026-08-25 02:42:07,092.092 INFO    ] 2026-08-25 02:42:07
[2026-08-25 02:42:07,352.352 INFO    ] 2026-08-25 02:42:07
[2026-08-25 02:42:07,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:07,522.522 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:07,635.635 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:07,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:07,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:07,729.729 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:07,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:09,806.806 INFO    ] ================================================
[2026-08-25 02:42:09,820.820 INFO    ] Launching Daemon at Tue Aug 25 02:42:09 IST 2026
[2026-08-25 02:42:09,831.831 INFO    ] ================================================
[2026-08-25 02:42:10,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:10
[2026-08-25 02:42:11,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:11,288.288 INFO    ] Initializing speech engine...
[2026-08-25 02:42:11,299.299 INFO    ] 2026-08-25 02:42:11
[2026-08-25 02:42:11,557.557 INFO    ] 2026-08-25 02:42:11
[2026-08-25 02:42:11,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:11,707.707 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:11,865.865 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:11,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:11,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:11,913.913 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:11,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:14,996.996 INFO    ] ================================================
[2026-08-25 02:42:14,011.011 INFO    ] Launching Daemon at Tue Aug 25 02:42:14 IST 2026
[2026-08-25 02:42:14,021.021 INFO    ] ================================================
[2026-08-25 02:42:14,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:14
[2026-08-25 02:42:15,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:15,473.473 INFO    ] Initializing speech engine...
[2026-08-25 02:42:15,479.479 INFO    ] 2026-08-25 02:42:15
[2026-08-25 02:42:15,740.740 INFO    ] 2026-08-25 02:42:15
[2026-08-25 02:42:15,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:15,914.914 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:16,052.052 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:16,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:16,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:16,129.129 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:16,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:18,236.236 INFO    ] ================================================
[2026-08-25 02:42:18,251.251 INFO    ] Launching Daemon at Tue Aug 25 02:42:18 IST 2026
[2026-08-25 02:42:18,262.262 INFO    ] ================================================
[2026-08-25 02:42:18,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:18
[2026-08-25 02:42:19,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:19,731.731 INFO    ] Initializing speech engine...
[2026-08-25 02:42:19,736.736 INFO    ] 2026-08-25 02:42:19
[2026-08-25 02:42:19,996.996 INFO    ] 2026-08-25 02:42:19
[2026-08-25 02:42:20,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:20,148.148 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:20,304.304 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:20,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:20,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:20,368.368 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:20,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:22,440.440 INFO    ] ================================================
[2026-08-25 02:42:22,456.456 INFO    ] Launching Daemon at Tue Aug 25 02:42:22 IST 2026
[2026-08-25 02:42:22,467.467 INFO    ] ================================================
[2026-08-25 02:42:23,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:23
[2026-08-25 02:42:23,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:23,896.896 INFO    ] Initializing speech engine...
[2026-08-25 02:42:23,908.908 INFO    ] 2026-08-25 02:42:23
[2026-08-25 02:42:24,198.198 INFO    ] 2026-08-25 02:42:24
[2026-08-25 02:42:24,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:24,318.318 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:24,481.481 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:24,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:24,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:24,590.590 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:24,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:26,666.666 INFO    ] ================================================
[2026-08-25 02:42:26,682.682 INFO    ] Launching Daemon at Tue Aug 25 02:42:26 IST 2026
[2026-08-25 02:42:26,693.693 INFO    ] ================================================
[2026-08-25 02:42:27,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:27
[2026-08-25 02:42:27,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:28,147.147 INFO    ] Initializing speech engine...
[2026-08-25 02:42:28,157.157 INFO    ] 2026-08-25 02:42:28
[2026-08-25 02:42:28,406.406 INFO    ] 2026-08-25 02:42:28
[2026-08-25 02:42:28,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:28,575.575 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:28,718.718 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:28,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:28,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:28,784.784 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:28,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:30,870.870 INFO    ] ================================================
[2026-08-25 02:42:30,888.888 INFO    ] Launching Daemon at Tue Aug 25 02:42:30 IST 2026
[2026-08-25 02:42:30,900.900 INFO    ] ================================================
[2026-08-25 02:42:31,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:31
[2026-08-25 02:42:32,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:32,408.408 INFO    ] Initializing speech engine...
[2026-08-25 02:42:32,417.417 INFO    ] 2026-08-25 02:42:32
[2026-08-25 02:42:32,683.683 INFO    ] 2026-08-25 02:42:32
[2026-08-25 02:42:32,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:32,831.831 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:32,950.950 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:32,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:33,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:33,050.050 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:33,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:35,126.126 INFO    ] ================================================
[2026-08-25 02:42:35,141.141 INFO    ] Launching Daemon at Tue Aug 25 02:42:35 IST 2026
[2026-08-25 02:42:35,152.152 INFO    ] ================================================
[2026-08-25 02:42:35,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:35
[2026-08-25 02:42:36,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:36,656.656 INFO    ] Initializing speech engine...
[2026-08-25 02:42:36,668.668 INFO    ] 2026-08-25 02:42:36
[2026-08-25 02:42:36,934.934 INFO    ] 2026-08-25 02:42:36
[2026-08-25 02:42:36,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:37,026.026 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:37,189.189 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:37,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:37,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:37,300.300 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:37,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:39,390.390 INFO    ] ================================================
[2026-08-25 02:42:39,405.405 INFO    ] Launching Daemon at Tue Aug 25 02:42:39 IST 2026
[2026-08-25 02:42:39,416.416 INFO    ] ================================================
[2026-08-25 02:42:39,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:39
[2026-08-25 02:42:40,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:40,841.841 INFO    ] Initializing speech engine...
[2026-08-25 02:42:40,858.858 INFO    ] 2026-08-25 02:42:40
[2026-08-25 02:42:41,112.112 INFO    ] 2026-08-25 02:42:41
[2026-08-25 02:42:41,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:41,276.276 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:41,383.383 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:41,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:41,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:41,483.483 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:41,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:43,571.571 INFO    ] ================================================
[2026-08-25 02:42:43,586.586 INFO    ] Launching Daemon at Tue Aug 25 02:42:43 IST 2026
[2026-08-25 02:42:43,597.597 INFO    ] ================================================
[2026-08-25 02:42:44,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:44
[2026-08-25 02:42:44,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:45,035.035 INFO    ] Initializing speech engine...
[2026-08-25 02:42:45,043.043 INFO    ] 2026-08-25 02:42:45
[2026-08-25 02:42:45,318.318 INFO    ] 2026-08-25 02:42:45
[2026-08-25 02:42:45,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:45,426.426 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:45,572.572 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:45,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:45,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:45,671.671 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:45,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:47,745.745 INFO    ] ================================================
[2026-08-25 02:42:47,761.761 INFO    ] Launching Daemon at Tue Aug 25 02:42:47 IST 2026
[2026-08-25 02:42:47,772.772 INFO    ] ================================================
[2026-08-25 02:42:48,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:48
[2026-08-25 02:42:48,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:49,184.184 INFO    ] Initializing speech engine...
[2026-08-25 02:42:49,200.200 INFO    ] 2026-08-25 02:42:49
[2026-08-25 02:42:49,490.490 INFO    ] 2026-08-25 02:42:49
[2026-08-25 02:42:49,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:49,609.609 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:49,763.763 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:49,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:49,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:49,882.882 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:49,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:51,958.958 INFO    ] ================================================
[2026-08-25 02:42:51,973.973 INFO    ] Launching Daemon at Tue Aug 25 02:42:51 IST 2026
[2026-08-25 02:42:51,984.984 INFO    ] ================================================
[2026-08-25 02:42:52,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:52
[2026-08-25 02:42:53,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:53,451.451 INFO    ] Initializing speech engine...
[2026-08-25 02:42:53,457.457 INFO    ] 2026-08-25 02:42:53
[2026-08-25 02:42:53,706.706 INFO    ] 2026-08-25 02:42:53
[2026-08-25 02:42:53,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:53,867.867 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:54,013.013 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:54,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:54,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:54,072.072 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:54,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:42:56,154.154 INFO    ] ================================================
[2026-08-25 02:42:56,170.170 INFO    ] Launching Daemon at Tue Aug 25 02:42:56 IST 2026
[2026-08-25 02:42:56,181.181 INFO    ] ================================================
[2026-08-25 02:42:56,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:42:56
[2026-08-25 02:42:57,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:42:57,591.591 INFO    ] Initializing speech engine...
[2026-08-25 02:42:57,599.599 INFO    ] 2026-08-25 02:42:57
[2026-08-25 02:42:57,904.904 INFO    ] 2026-08-25 02:42:57
[2026-08-25 02:42:57,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:42:58,002.002 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:42:58,178.178 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:42:58,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:42:58,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:42:58,284.284 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:42:58,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:00,351.351 INFO    ] ================================================
[2026-08-25 02:43:00,367.367 INFO    ] Launching Daemon at Tue Aug 25 02:43:00 IST 2026
[2026-08-25 02:43:00,378.378 INFO    ] ================================================
[2026-08-25 02:43:00,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:00
[2026-08-25 02:43:01,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:01,782.782 INFO    ] Initializing speech engine...
[2026-08-25 02:43:01,788.788 INFO    ] 2026-08-25 02:43:01
[2026-08-25 02:43:02,108.108 INFO    ] 2026-08-25 02:43:02
[2026-08-25 02:43:02,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:05,328.328 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:05,354.354 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:05,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:05,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:05,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:07,409.409 INFO    ] ================================================
[2026-08-25 02:43:07,435.435 INFO    ] Launching Daemon at Tue Aug 25 02:43:07 IST 2026
[2026-08-25 02:43:07,447.447 INFO    ] ================================================
[2026-08-25 02:43:08,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:08
[2026-08-25 02:43:08,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:08,901.901 INFO    ] Initializing speech engine...
[2026-08-25 02:43:08,911.911 INFO    ] 2026-08-25 02:43:08
[2026-08-25 02:43:09,203.203 INFO    ] 2026-08-25 02:43:09
[2026-08-25 02:43:09,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:09,360.360 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:09,531.531 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:09,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:09,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:09,612.612 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:43:09,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:11,727.727 INFO    ] ================================================
[2026-08-25 02:43:11,742.742 INFO    ] Launching Daemon at Tue Aug 25 02:43:11 IST 2026
[2026-08-25 02:43:11,753.753 INFO    ] ================================================
[2026-08-25 02:43:12,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:12
[2026-08-25 02:43:12,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:13,192.192 INFO    ] Initializing speech engine...
[2026-08-25 02:43:13,201.201 INFO    ] 2026-08-25 02:43:13
[2026-08-25 02:43:13,512.512 INFO    ] 2026-08-25 02:43:13
[2026-08-25 02:43:13,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:16,690.690 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:16,771.771 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:16,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:16,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:16,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:18,823.823 INFO    ] ================================================
[2026-08-25 02:43:18,838.838 INFO    ] Launching Daemon at Tue Aug 25 02:43:18 IST 2026
[2026-08-25 02:43:18,849.849 INFO    ] ================================================
[2026-08-25 02:43:19,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:19
[2026-08-25 02:43:20,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:20,532.532 INFO    ] Initializing speech engine...
[2026-08-25 02:43:20,544.544 INFO    ] 2026-08-25 02:43:20
[2026-08-25 02:43:20,859.859 INFO    ] 2026-08-25 02:43:20
[2026-08-25 02:43:20,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:21,016.016 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:21,157.157 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:21,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:21,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:21,216.216 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:43:21,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:23,330.330 INFO    ] ================================================
[2026-08-25 02:43:23,345.345 INFO    ] Launching Daemon at Tue Aug 25 02:43:23 IST 2026
[2026-08-25 02:43:23,356.356 INFO    ] ================================================
[2026-08-25 02:43:23,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:23
[2026-08-25 02:43:24,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:24,833.833 INFO    ] Initializing speech engine...
[2026-08-25 02:43:24,845.845 INFO    ] 2026-08-25 02:43:24
[2026-08-25 02:43:25,137.137 INFO    ] 2026-08-25 02:43:25
[2026-08-25 02:43:25,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:25,299.299 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:25,447.447 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:25,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:25,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:25,506.506 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:43:25,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:27,589.589 INFO    ] ================================================
[2026-08-25 02:43:27,604.604 INFO    ] Launching Daemon at Tue Aug 25 02:43:27 IST 2026
[2026-08-25 02:43:27,615.615 INFO    ] ================================================
[2026-08-25 02:43:28,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:28
[2026-08-25 02:43:28,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:29,088.088 INFO    ] Initializing speech engine...
[2026-08-25 02:43:29,103.103 INFO    ] 2026-08-25 02:43:29
[2026-08-25 02:43:29,384.384 INFO    ] 2026-08-25 02:43:29
[2026-08-25 02:43:29,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:34,500.500 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:34,528.528 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:34,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:34,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:34,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:36,579.579 INFO    ] ================================================
[2026-08-25 02:43:36,595.595 INFO    ] Launching Daemon at Tue Aug 25 02:43:36 IST 2026
[2026-08-25 02:43:36,606.606 INFO    ] ================================================
[2026-08-25 02:43:37,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:37
[2026-08-25 02:43:37,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:38,071.071 INFO    ] Initializing speech engine...
[2026-08-25 02:43:38,077.077 INFO    ] 2026-08-25 02:43:38
[2026-08-25 02:43:38,380.380 INFO    ] 2026-08-25 02:43:38
[2026-08-25 02:43:38,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:39,530.530 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:39,604.604 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:39,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:39,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:39,749.749 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:43:39,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:41,847.847 INFO    ] ================================================
[2026-08-25 02:43:41,862.862 INFO    ] Launching Daemon at Tue Aug 25 02:43:41 IST 2026
[2026-08-25 02:43:41,873.873 INFO    ] ================================================
[2026-08-25 02:43:42,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:42
[2026-08-25 02:43:43,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:43,317.317 INFO    ] Initializing speech engine...
[2026-08-25 02:43:43,327.327 INFO    ] 2026-08-25 02:43:43
[2026-08-25 02:43:43,577.577 INFO    ] 2026-08-25 02:43:43
[2026-08-25 02:43:43,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:46,768.768 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:46,794.794 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:46,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:46,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:46,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:48,847.847 INFO    ] ================================================
[2026-08-25 02:43:48,863.863 INFO    ] Launching Daemon at Tue Aug 25 02:43:48 IST 2026
[2026-08-25 02:43:48,875.875 INFO    ] ================================================
[2026-08-25 02:43:49,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:49
[2026-08-25 02:43:50,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:50,656.656 INFO    ] Initializing speech engine...
[2026-08-25 02:43:50,667.667 INFO    ] 2026-08-25 02:43:50
[2026-08-25 02:43:50,971.971 INFO    ] 2026-08-25 02:43:50
[2026-08-25 02:43:51,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:51,112.112 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:51,285.285 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:51,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:51,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:51,368.368 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:43:51,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:53,496.496 INFO    ] ================================================
[2026-08-25 02:43:53,513.513 INFO    ] Launching Daemon at Tue Aug 25 02:43:53 IST 2026
[2026-08-25 02:43:53,525.525 INFO    ] ================================================
[2026-08-25 02:43:54,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:54
[2026-08-25 02:43:54,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:54,991.991 INFO    ] Initializing speech engine...
[2026-08-25 02:43:54,996.996 INFO    ] 2026-08-25 02:43:54
[2026-08-25 02:43:55,251.251 INFO    ] 2026-08-25 02:43:55
[2026-08-25 02:43:55,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:43:55,412.412 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:43:55,519.519 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:43:55,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:43:55,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:43:55,621.621 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:43:55,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:43:57,705.705 INFO    ] ================================================
[2026-08-25 02:43:57,720.720 INFO    ] Launching Daemon at Tue Aug 25 02:43:57 IST 2026
[2026-08-25 02:43:57,732.732 INFO    ] ================================================
[2026-08-25 02:43:58,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:43:58
[2026-08-25 02:43:59,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:43:59,460.460 INFO    ] Initializing speech engine...
[2026-08-25 02:43:59,475.475 INFO    ] 2026-08-25 02:43:59
[2026-08-25 02:43:59,770.770 INFO    ] 2026-08-25 02:43:59
[2026-08-25 02:43:59,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:03,008.008 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:03,040.040 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:03,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:03,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:03,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:05,099.099 INFO    ] ================================================
[2026-08-25 02:44:05,116.116 INFO    ] Launching Daemon at Tue Aug 25 02:44:05 IST 2026
[2026-08-25 02:44:05,128.128 INFO    ] ================================================
[2026-08-25 02:44:05,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:05
[2026-08-25 02:44:06,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:06,785.785 INFO    ] Initializing speech engine...
[2026-08-25 02:44:06,791.791 INFO    ] 2026-08-25 02:44:06
[2026-08-25 02:44:07,051.051 INFO    ] 2026-08-25 02:44:07
[2026-08-25 02:44:07,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:07,218.218 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:07,326.326 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:07,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:07,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:07,429.429 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:44:07,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:09,519.519 INFO    ] ================================================
[2026-08-25 02:44:09,536.536 INFO    ] Launching Daemon at Tue Aug 25 02:44:09 IST 2026
[2026-08-25 02:44:09,547.547 INFO    ] ================================================
[2026-08-25 02:44:10,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:10
[2026-08-25 02:44:10,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:11,271.271 INFO    ] Initializing speech engine...
[2026-08-25 02:44:11,286.286 INFO    ] 2026-08-25 02:44:11
[2026-08-25 02:44:11,614.614 INFO    ] 2026-08-25 02:44:11
[2026-08-25 02:44:11,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:16,768.768 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:16,799.799 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:16,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:16,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:16,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:18,855.855 INFO    ] ================================================
[2026-08-25 02:44:18,871.871 INFO    ] Launching Daemon at Tue Aug 25 02:44:18 IST 2026
[2026-08-25 02:44:18,882.882 INFO    ] ================================================
[2026-08-25 02:44:19,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:19
[2026-08-25 02:44:20,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:20,356.356 INFO    ] Initializing speech engine...
[2026-08-25 02:44:20,370.370 INFO    ] 2026-08-25 02:44:20
[2026-08-25 02:44:20,671.671 INFO    ] 2026-08-25 02:44:20
[2026-08-25 02:44:20,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:23,968.968 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:23,999.999 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:24,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:24,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:24,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:26,055.055 INFO    ] ================================================
[2026-08-25 02:44:26,071.071 INFO    ] Launching Daemon at Tue Aug 25 02:44:26 IST 2026
[2026-08-25 02:44:26,083.083 INFO    ] ================================================
[2026-08-25 02:44:26,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:26
[2026-08-25 02:44:27,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:27,556.556 INFO    ] Initializing speech engine...
[2026-08-25 02:44:27,565.565 INFO    ] 2026-08-25 02:44:27
[2026-08-25 02:44:27,893.893 INFO    ] 2026-08-25 02:44:27
[2026-08-25 02:44:27,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:27,996.996 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:28,173.173 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:28,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:28,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:28,294.294 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:44:28,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:30,366.366 INFO    ] ================================================
[2026-08-25 02:44:30,382.382 INFO    ] Launching Daemon at Tue Aug 25 02:44:30 IST 2026
[2026-08-25 02:44:30,393.393 INFO    ] ================================================
[2026-08-25 02:44:31,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:31
[2026-08-25 02:44:31,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:32,106.106 INFO    ] Initializing speech engine...
[2026-08-25 02:44:32,129.129 INFO    ] 2026-08-25 02:44:32
[2026-08-25 02:44:32,463.463 INFO    ] 2026-08-25 02:44:32
[2026-08-25 02:44:32,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:32,667.667 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:32,840.840 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:32,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:32,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:32,904.904 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:44:32,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:35,036.036 INFO    ] ================================================
[2026-08-25 02:44:35,052.052 INFO    ] Launching Daemon at Tue Aug 25 02:44:35 IST 2026
[2026-08-25 02:44:35,064.064 INFO    ] ================================================
[2026-08-25 02:44:35,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:35
[2026-08-25 02:44:36,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:36,557.557 INFO    ] Initializing speech engine...
[2026-08-25 02:44:36,571.571 INFO    ] 2026-08-25 02:44:36
[2026-08-25 02:44:36,839.839 INFO    ] 2026-08-25 02:44:36
[2026-08-25 02:44:36,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:37,002.002 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:37,160.160 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:37,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:37,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:37,223.223 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:44:37,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:39,313.313 INFO    ] ================================================
[2026-08-25 02:44:39,330.330 INFO    ] Launching Daemon at Tue Aug 25 02:44:39 IST 2026
[2026-08-25 02:44:39,342.342 INFO    ] ================================================
[2026-08-25 02:44:39,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:39
[2026-08-25 02:44:40,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:40,825.825 INFO    ] Initializing speech engine...
[2026-08-25 02:44:40,832.832 INFO    ] 2026-08-25 02:44:40
[2026-08-25 02:44:41,138.138 INFO    ] 2026-08-25 02:44:41
[2026-08-25 02:44:41,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:42,273.273 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:42,481.481 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:42,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:42,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:42,595.595 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:44:42,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:44,667.667 INFO    ] ================================================
[2026-08-25 02:44:44,683.683 INFO    ] Launching Daemon at Tue Aug 25 02:44:44 IST 2026
[2026-08-25 02:44:44,695.695 INFO    ] ================================================
[2026-08-25 02:44:45,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:45
[2026-08-25 02:44:46,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:46,401.401 INFO    ] Initializing speech engine...
[2026-08-25 02:44:46,414.414 INFO    ] 2026-08-25 02:44:46
[2026-08-25 02:44:46,739.739 INFO    ] 2026-08-25 02:44:46
[2026-08-25 02:44:46,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:49,969.969 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:50,001.001 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:50,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:50,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:50,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:52,056.056 INFO    ] ================================================
[2026-08-25 02:44:52,073.073 INFO    ] Launching Daemon at Tue Aug 25 02:44:52 IST 2026
[2026-08-25 02:44:52,084.084 INFO    ] ================================================
[2026-08-25 02:44:52,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:52
[2026-08-25 02:44:53,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:53,751.751 INFO    ] Initializing speech engine...
[2026-08-25 02:44:53,763.763 INFO    ] 2026-08-25 02:44:53
[2026-08-25 02:44:54,022.022 INFO    ] 2026-08-25 02:44:54
[2026-08-25 02:44:54,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:54,169.169 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:54,314.314 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:54,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:54,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:54,380.380 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:44:54,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:44:56,468.468 INFO    ] ================================================
[2026-08-25 02:44:56,485.485 INFO    ] Launching Daemon at Tue Aug 25 02:44:56 IST 2026
[2026-08-25 02:44:56,497.497 INFO    ] ================================================
[2026-08-25 02:44:57,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:44:57
[2026-08-25 02:44:57,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:44:58,182.182 INFO    ] Initializing speech engine...
[2026-08-25 02:44:58,197.197 INFO    ] 2026-08-25 02:44:58
[2026-08-25 02:44:58,514.514 INFO    ] 2026-08-25 02:44:58
[2026-08-25 02:44:58,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:44:58,672.672 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:44:58,820.820 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:44:58,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:44:58,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:44:58,925.925 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:44:59,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:01,119.119 INFO    ] ================================================
[2026-08-25 02:45:01,136.136 INFO    ] Launching Daemon at Tue Aug 25 02:45:01 IST 2026
[2026-08-25 02:45:01,147.147 INFO    ] ================================================
[2026-08-25 02:45:01,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:01
[2026-08-25 02:45:03,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:03,482.482 INFO    ] Initializing speech engine...
[2026-08-25 02:45:03,491.491 INFO    ] 2026-08-25 02:45:03
[2026-08-25 02:45:03,773.773 INFO    ] 2026-08-25 02:45:03
[2026-08-25 02:45:03,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:07,008.008 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:07,035.035 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:07,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:07,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:07,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:09,088.088 INFO    ] ================================================
[2026-08-25 02:45:09,105.105 INFO    ] Launching Daemon at Tue Aug 25 02:45:09 IST 2026
[2026-08-25 02:45:09,117.117 INFO    ] ================================================
[2026-08-25 02:45:09,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:09
[2026-08-25 02:45:10,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:10,601.601 INFO    ] Initializing speech engine...
[2026-08-25 02:45:10,610.610 INFO    ] 2026-08-25 02:45:10
[2026-08-25 02:45:10,869.869 INFO    ] 2026-08-25 02:45:10
[2026-08-25 02:45:10,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:10,969.969 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:11,142.142 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:11,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:11,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:11,255.255 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:45:11,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:13,341.341 INFO    ] ================================================
[2026-08-25 02:45:13,358.358 INFO    ] Launching Daemon at Tue Aug 25 02:45:13 IST 2026
[2026-08-25 02:45:13,370.370 INFO    ] ================================================
[2026-08-25 02:45:13,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:13
[2026-08-25 02:45:14,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:14,837.837 INFO    ] Initializing speech engine...
[2026-08-25 02:45:14,845.845 INFO    ] 2026-08-25 02:45:14
[2026-08-25 02:45:15,096.096 INFO    ] 2026-08-25 02:45:15
[2026-08-25 02:45:15,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:15,238.238 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:15,352.352 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:15,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:15,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:15,470.470 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:45:15,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:17,544.544 INFO    ] ================================================
[2026-08-25 02:45:17,560.560 INFO    ] Launching Daemon at Tue Aug 25 02:45:17 IST 2026
[2026-08-25 02:45:17,571.571 INFO    ] ================================================
[2026-08-25 02:45:18,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:18
[2026-08-25 02:45:18,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:19,169.169 INFO    ] Initializing speech engine...
[2026-08-25 02:45:19,184.184 INFO    ] 2026-08-25 02:45:19
[2026-08-25 02:45:19,504.504 INFO    ] 2026-08-25 02:45:19
[2026-08-25 02:45:19,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:24,647.647 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:24,677.677 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:24,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:24,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:24,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:26,733.733 INFO    ] ================================================
[2026-08-25 02:45:26,763.763 INFO    ] Launching Daemon at Tue Aug 25 02:45:26 IST 2026
[2026-08-25 02:45:26,774.774 INFO    ] ================================================
[2026-08-25 02:45:27,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:27
[2026-08-25 02:45:28,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:28,432.432 INFO    ] Initializing speech engine...
[2026-08-25 02:45:28,441.441 INFO    ] 2026-08-25 02:45:28
[2026-08-25 02:45:28,717.717 INFO    ] 2026-08-25 02:45:28
[2026-08-25 02:45:28,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:28,882.882 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:29,052.052 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:29,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:29,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:29,137.137 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:45:29,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:31,268.268 INFO    ] ================================================
[2026-08-25 02:45:31,292.292 INFO    ] Launching Daemon at Tue Aug 25 02:45:31 IST 2026
[2026-08-25 02:45:31,303.303 INFO    ] ================================================
[2026-08-25 02:45:31,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:31
[2026-08-25 02:45:32,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:32,931.931 INFO    ] Initializing speech engine...
[2026-08-25 02:45:32,947.947 INFO    ] 2026-08-25 02:45:32
[2026-08-25 02:45:33,252.252 INFO    ] 2026-08-25 02:45:33
[2026-08-25 02:45:33,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:38,418.418 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:38,451.451 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:38,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:38,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:38,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:40,511.511 INFO    ] ================================================
[2026-08-25 02:45:40,528.528 INFO    ] Launching Daemon at Tue Aug 25 02:45:40 IST 2026
[2026-08-25 02:45:40,539.539 INFO    ] ================================================
[2026-08-25 02:45:41,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:41
[2026-08-25 02:45:41,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:42,019.019 INFO    ] Initializing speech engine...
[2026-08-25 02:45:42,029.029 INFO    ] 2026-08-25 02:45:42
[2026-08-25 02:45:42,337.337 INFO    ] 2026-08-25 02:45:42
[2026-08-25 02:45:42,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:42,438.438 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:42,614.614 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:42,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:42,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:42,731.731 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:45:42,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:44,792.792 INFO    ] ================================================
[2026-08-25 02:45:44,809.809 INFO    ] Launching Daemon at Tue Aug 25 02:45:44 IST 2026
[2026-08-25 02:45:44,821.821 INFO    ] ================================================
[2026-08-25 02:45:45,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:45
[2026-08-25 02:45:46,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:46,515.515 INFO    ] Initializing speech engine...
[2026-08-25 02:45:46,528.528 INFO    ] 2026-08-25 02:45:46
[2026-08-25 02:45:46,806.806 INFO    ] 2026-08-25 02:45:46
[2026-08-25 02:45:46,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:46,976.976 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:47,149.149 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:47,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:47,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:47,232.232 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:45:47,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:49,379.379 INFO    ] ================================================
[2026-08-25 02:45:49,397.397 INFO    ] Launching Daemon at Tue Aug 25 02:45:49 IST 2026
[2026-08-25 02:45:49,408.408 INFO    ] ================================================
[2026-08-25 02:45:49,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:49
[2026-08-25 02:45:50,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:50,969.969 INFO    ] Initializing speech engine...
[2026-08-25 02:45:50,980.980 INFO    ] 2026-08-25 02:45:50
[2026-08-25 02:45:51,256.256 INFO    ] 2026-08-25 02:45:51
[2026-08-25 02:45:51,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:51,420.420 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:51,585.585 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:51,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:51,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:51,653.653 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:45:51,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:53,774.774 INFO    ] ================================================
[2026-08-25 02:45:53,791.791 INFO    ] Launching Daemon at Tue Aug 25 02:45:53 IST 2026
[2026-08-25 02:45:53,803.803 INFO    ] ================================================
[2026-08-25 02:45:54,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:54
[2026-08-25 02:45:55,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:45:55,487.487 INFO    ] Initializing speech engine...
[2026-08-25 02:45:55,500.500 INFO    ] 2026-08-25 02:45:55
[2026-08-25 02:45:55,774.774 INFO    ] 2026-08-25 02:45:55
[2026-08-25 02:45:55,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:45:55,930.930 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:45:56,098.098 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:45:56,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:45:56,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:45:56,187.187 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:45:56,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:45:58,409.409 INFO    ] ================================================
[2026-08-25 02:45:58,425.425 INFO    ] Launching Daemon at Tue Aug 25 02:45:58 IST 2026
[2026-08-25 02:45:58,437.437 INFO    ] ================================================
[2026-08-25 02:45:59,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:45:59
[2026-08-25 02:45:59,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:00,063.063 INFO    ] Initializing speech engine...
[2026-08-25 02:46:00,072.072 INFO    ] 2026-08-25 02:46:00
[2026-08-25 02:46:00,351.351 INFO    ] 2026-08-25 02:46:00
[2026-08-25 02:46:00,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:05,504.504 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:05,534.534 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:05,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:05,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:05,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:07,590.590 INFO    ] ================================================
[2026-08-25 02:46:07,607.607 INFO    ] Launching Daemon at Tue Aug 25 02:46:07 IST 2026
[2026-08-25 02:46:07,619.619 INFO    ] ================================================
[2026-08-25 02:46:08,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:08
[2026-08-25 02:46:08,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:09,164.164 INFO    ] Initializing speech engine...
[2026-08-25 02:46:09,173.173 INFO    ] 2026-08-25 02:46:09
[2026-08-25 02:46:09,425.425 INFO    ] 2026-08-25 02:46:09
[2026-08-25 02:46:09,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:14,543.543 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:14,570.570 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:14,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:14,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:14,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:16,630.630 INFO    ] ================================================
[2026-08-25 02:46:16,646.646 INFO    ] Launching Daemon at Tue Aug 25 02:46:16 IST 2026
[2026-08-25 02:46:16,658.658 INFO    ] ================================================
[2026-08-25 02:46:17,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:17
[2026-08-25 02:46:17,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:18,151.151 INFO    ] Initializing speech engine...
[2026-08-25 02:46:18,158.158 INFO    ] 2026-08-25 02:46:18
[2026-08-25 02:46:18,423.423 INFO    ] 2026-08-25 02:46:18
[2026-08-25 02:46:18,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:18,580.580 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:18,738.738 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:18,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:18,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:18,806.806 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:18,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:20,879.879 INFO    ] ================================================
[2026-08-25 02:46:20,895.895 INFO    ] Launching Daemon at Tue Aug 25 02:46:20 IST 2026
[2026-08-25 02:46:20,907.907 INFO    ] ================================================
[2026-08-25 02:46:21,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:21
[2026-08-25 02:46:22,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:22,383.383 INFO    ] Initializing speech engine...
[2026-08-25 02:46:22,397.397 INFO    ] 2026-08-25 02:46:22
[2026-08-25 02:46:22,652.652 INFO    ] 2026-08-25 02:46:22
[2026-08-25 02:46:22,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:22,817.817 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:22,944.944 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:22,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:23,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:23,030.030 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:23,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:25,118.118 INFO    ] ================================================
[2026-08-25 02:46:25,133.133 INFO    ] Launching Daemon at Tue Aug 25 02:46:25 IST 2026
[2026-08-25 02:46:25,145.145 INFO    ] ================================================
[2026-08-25 02:46:25,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:25
[2026-08-25 02:46:26,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:26,789.789 INFO    ] Initializing speech engine...
[2026-08-25 02:46:26,799.799 INFO    ] 2026-08-25 02:46:26
[2026-08-25 02:46:27,076.076 INFO    ] 2026-08-25 02:46:27
[2026-08-25 02:46:27,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:32,247.247 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:32,279.279 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:32,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:32,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:32,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:34,340.340 INFO    ] ================================================
[2026-08-25 02:46:34,355.355 INFO    ] Launching Daemon at Tue Aug 25 02:46:34 IST 2026
[2026-08-25 02:46:34,367.367 INFO    ] ================================================
[2026-08-25 02:46:35,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:35
[2026-08-25 02:46:35,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:36,011.011 INFO    ] Initializing speech engine...
[2026-08-25 02:46:36,019.019 INFO    ] 2026-08-25 02:46:36
[2026-08-25 02:46:36,306.306 INFO    ] 2026-08-25 02:46:36
[2026-08-25 02:46:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:36,469.469 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:36,629.629 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:36,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:36,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:36,709.709 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:36,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:38,826.826 INFO    ] ================================================
[2026-08-25 02:46:38,842.842 INFO    ] Launching Daemon at Tue Aug 25 02:46:38 IST 2026
[2026-08-25 02:46:38,853.853 INFO    ] ================================================
[2026-08-25 02:46:39,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:39
[2026-08-25 02:46:40,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:40,351.351 INFO    ] Initializing speech engine...
[2026-08-25 02:46:40,366.366 INFO    ] 2026-08-25 02:46:40
[2026-08-25 02:46:40,664.664 INFO    ] 2026-08-25 02:46:40
[2026-08-25 02:46:40,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:41,808.808 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:41,991.991 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:42,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:42,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:42,131.131 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:42,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:44,187.187 INFO    ] ================================================
[2026-08-25 02:46:44,203.203 INFO    ] Launching Daemon at Tue Aug 25 02:46:44 IST 2026
[2026-08-25 02:46:44,214.214 INFO    ] ================================================
[2026-08-25 02:46:44,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:44
[2026-08-25 02:46:45,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:45,661.661 INFO    ] Initializing speech engine...
[2026-08-25 02:46:45,668.668 INFO    ] 2026-08-25 02:46:45
[2026-08-25 02:46:45,974.974 INFO    ] 2026-08-25 02:46:45
[2026-08-25 02:46:46,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:46,083.083 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:46,251.251 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:46,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:46,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:46,369.369 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:46,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:48,448.448 INFO    ] ================================================
[2026-08-25 02:46:48,463.463 INFO    ] Launching Daemon at Tue Aug 25 02:46:48 IST 2026
[2026-08-25 02:46:48,475.475 INFO    ] ================================================
[2026-08-25 02:46:49,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:49
[2026-08-25 02:46:49,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:50,102.102 INFO    ] Initializing speech engine...
[2026-08-25 02:46:50,112.112 INFO    ] 2026-08-25 02:46:50
[2026-08-25 02:46:50,433.433 INFO    ] 2026-08-25 02:46:50
[2026-08-25 02:46:50,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:50,592.592 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:50,737.737 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:50,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:50,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:50,806.806 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:50,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:53,003.003 INFO    ] ================================================
[2026-08-25 02:46:53,019.019 INFO    ] Launching Daemon at Tue Aug 25 02:46:53 IST 2026
[2026-08-25 02:46:53,030.030 INFO    ] ================================================
[2026-08-25 02:46:53,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:53
[2026-08-25 02:46:54,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:54,671.671 INFO    ] Initializing speech engine...
[2026-08-25 02:46:54,679.679 INFO    ] 2026-08-25 02:46:54
[2026-08-25 02:46:54,969.969 INFO    ] 2026-08-25 02:46:54
[2026-08-25 02:46:55,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:55,111.111 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:55,290.290 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:55,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:55,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:55,348.348 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:55,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:46:57,421.421 INFO    ] ================================================
[2026-08-25 02:46:57,437.437 INFO    ] Launching Daemon at Tue Aug 25 02:46:57 IST 2026
[2026-08-25 02:46:57,449.449 INFO    ] ================================================
[2026-08-25 02:46:58,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:46:58
[2026-08-25 02:46:58,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:46:58,902.902 INFO    ] Initializing speech engine...
[2026-08-25 02:46:58,918.918 INFO    ] 2026-08-25 02:46:58
[2026-08-25 02:46:59,211.211 INFO    ] 2026-08-25 02:46:59
[2026-08-25 02:46:59,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:46:59,326.326 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:46:59,487.487 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:46:59,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:46:59,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:46:59,601.601 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:46:59,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:01,697.697 INFO    ] ================================================
[2026-08-25 02:47:01,774.774 INFO    ] Launching Daemon at Tue Aug 25 02:47:01 IST 2026
[2026-08-25 02:47:01,806.806 INFO    ] ================================================
[2026-08-25 02:47:02,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:02
[2026-08-25 02:47:03,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:03,660.660 INFO    ] Initializing speech engine...
[2026-08-25 02:47:03,686.686 INFO    ] 2026-08-25 02:47:03
[2026-08-25 02:47:03,969.969 INFO    ] 2026-08-25 02:47:03
[2026-08-25 02:47:04,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:04,072.072 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:04,248.248 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:04,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:04,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:04,370.370 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:04,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:06,447.447 INFO    ] ================================================
[2026-08-25 02:47:06,463.463 INFO    ] Launching Daemon at Tue Aug 25 02:47:06 IST 2026
[2026-08-25 02:47:06,474.474 INFO    ] ================================================
[2026-08-25 02:47:07,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:07
[2026-08-25 02:47:07,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:08,180.180 INFO    ] Initializing speech engine...
[2026-08-25 02:47:08,187.187 INFO    ] 2026-08-25 02:47:08
[2026-08-25 02:47:08,481.481 INFO    ] 2026-08-25 02:47:08
[2026-08-25 02:47:08,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:08,663.663 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:08,812.812 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:08,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:08,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:08,931.931 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:08,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:11,108.108 INFO    ] ================================================
[2026-08-25 02:47:11,125.125 INFO    ] Launching Daemon at Tue Aug 25 02:47:11 IST 2026
[2026-08-25 02:47:11,136.136 INFO    ] ================================================
[2026-08-25 02:47:11,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:11
[2026-08-25 02:47:12,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:12,583.583 INFO    ] Initializing speech engine...
[2026-08-25 02:47:12,591.591 INFO    ] 2026-08-25 02:47:12
[2026-08-25 02:47:12,901.901 INFO    ] 2026-08-25 02:47:12
[2026-08-25 02:47:12,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:13,032.032 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:13,173.173 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:13,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:13,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:13,290.290 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:13,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:15,382.382 INFO    ] ================================================
[2026-08-25 02:47:15,397.397 INFO    ] Launching Daemon at Tue Aug 25 02:47:15 IST 2026
[2026-08-25 02:47:15,408.408 INFO    ] ================================================
[2026-08-25 02:47:15,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:15
[2026-08-25 02:47:16,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:16,894.894 INFO    ] Initializing speech engine...
[2026-08-25 02:47:16,899.899 INFO    ] 2026-08-25 02:47:16
[2026-08-25 02:47:17,166.166 INFO    ] 2026-08-25 02:47:17
[2026-08-25 02:47:17,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:17,329.329 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:17,436.436 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:17,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:17,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:17,473.473 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:17,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:19,575.575 INFO    ] ================================================
[2026-08-25 02:47:19,590.590 INFO    ] Launching Daemon at Tue Aug 25 02:47:19 IST 2026
[2026-08-25 02:47:19,601.601 INFO    ] ================================================
[2026-08-25 02:47:20,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:20
[2026-08-25 02:47:20,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:21,098.098 INFO    ] Initializing speech engine...
[2026-08-25 02:47:21,115.115 INFO    ] 2026-08-25 02:47:21
[2026-08-25 02:47:21,378.378 INFO    ] 2026-08-25 02:47:21
[2026-08-25 02:47:21,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:24,608.608 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:24,635.635 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:24,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:24,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:24,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:26,687.687 INFO    ] ================================================
[2026-08-25 02:47:26,703.703 INFO    ] Launching Daemon at Tue Aug 25 02:47:26 IST 2026
[2026-08-25 02:47:26,714.714 INFO    ] ================================================
[2026-08-25 02:47:27,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:27
[2026-08-25 02:47:27,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:28,217.217 INFO    ] Initializing speech engine...
[2026-08-25 02:47:28,232.232 INFO    ] 2026-08-25 02:47:28
[2026-08-25 02:47:28,507.507 INFO    ] 2026-08-25 02:47:28
[2026-08-25 02:47:28,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:28,671.671 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:28,782.782 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:28,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:28,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:28,890.890 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:28,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:30,983.983 INFO    ] ================================================
[2026-08-25 02:47:31,999.999 INFO    ] Launching Daemon at Tue Aug 25 02:47:30 IST 2026
[2026-08-25 02:47:31,011.011 INFO    ] ================================================
[2026-08-25 02:47:31,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:31
[2026-08-25 02:47:32,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:32,634.634 INFO    ] Initializing speech engine...
[2026-08-25 02:47:32,652.652 INFO    ] 2026-08-25 02:47:32
[2026-08-25 02:47:32,943.943 INFO    ] 2026-08-25 02:47:32
[2026-08-25 02:47:33,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:33,113.113 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:33,283.283 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:33,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:33,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:33,364.364 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:33,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:35,471.471 INFO    ] ================================================
[2026-08-25 02:47:35,487.487 INFO    ] Launching Daemon at Tue Aug 25 02:47:35 IST 2026
[2026-08-25 02:47:35,499.499 INFO    ] ================================================
[2026-08-25 02:47:36,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:36
[2026-08-25 02:47:36,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:37,017.017 INFO    ] Initializing speech engine...
[2026-08-25 02:47:37,026.026 INFO    ] 2026-08-25 02:47:37
[2026-08-25 02:47:37,282.282 INFO    ] 2026-08-25 02:47:37
[2026-08-25 02:47:37,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:37,447.447 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:37,553.553 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:37,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:37,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:37,660.660 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:37,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:39,746.746 INFO    ] ================================================
[2026-08-25 02:47:39,762.762 INFO    ] Launching Daemon at Tue Aug 25 02:47:39 IST 2026
[2026-08-25 02:47:39,775.775 INFO    ] ================================================
[2026-08-25 02:47:40,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:40
[2026-08-25 02:47:41,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:41,289.289 INFO    ] Initializing speech engine...
[2026-08-25 02:47:41,296.296 INFO    ] 2026-08-25 02:47:41
[2026-08-25 02:47:41,598.598 INFO    ] 2026-08-25 02:47:41
[2026-08-25 02:47:41,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:41,701.701 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:41,873.873 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:41,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:41,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:41,995.995 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:42,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:44,084.084 INFO    ] ================================================
[2026-08-25 02:47:44,101.101 INFO    ] Launching Daemon at Tue Aug 25 02:47:44 IST 2026
[2026-08-25 02:47:44,112.112 INFO    ] ================================================
[2026-08-25 02:47:44,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:44
[2026-08-25 02:47:45,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:45,739.739 INFO    ] Initializing speech engine...
[2026-08-25 02:47:45,754.754 INFO    ] 2026-08-25 02:47:45
[2026-08-25 02:47:46,024.024 INFO    ] 2026-08-25 02:47:46
[2026-08-25 02:47:46,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:46,184.184 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:46,352.352 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:46,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:46,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:46,429.429 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:46,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:48,548.548 INFO    ] ================================================
[2026-08-25 02:47:48,563.563 INFO    ] Launching Daemon at Tue Aug 25 02:47:48 IST 2026
[2026-08-25 02:47:48,575.575 INFO    ] ================================================
[2026-08-25 02:47:49,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:49
[2026-08-25 02:47:49,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:50,006.006 INFO    ] Initializing speech engine...
[2026-08-25 02:47:50,014.014 INFO    ] 2026-08-25 02:47:50
[2026-08-25 02:47:50,312.312 INFO    ] 2026-08-25 02:47:50
[2026-08-25 02:47:50,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:50,411.411 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:50,584.584 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:50,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:50,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:50,696.696 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:50,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:52,776.776 INFO    ] ================================================
[2026-08-25 02:47:52,793.793 INFO    ] Launching Daemon at Tue Aug 25 02:47:52 IST 2026
[2026-08-25 02:47:52,804.804 INFO    ] ================================================
[2026-08-25 02:47:53,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:53
[2026-08-25 02:47:54,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:54,465.465 INFO    ] Initializing speech engine...
[2026-08-25 02:47:54,478.478 INFO    ] 2026-08-25 02:47:54
[2026-08-25 02:47:54,788.788 INFO    ] 2026-08-25 02:47:54
[2026-08-25 02:47:54,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:54,949.949 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:55,095.095 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:55,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:55,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:55,161.161 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:55,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:47:57,352.352 INFO    ] ================================================
[2026-08-25 02:47:57,368.368 INFO    ] Launching Daemon at Tue Aug 25 02:47:57 IST 2026
[2026-08-25 02:47:57,380.380 INFO    ] ================================================
[2026-08-25 02:47:57,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:47:57
[2026-08-25 02:47:58,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:47:58,823.823 INFO    ] Initializing speech engine...
[2026-08-25 02:47:58,842.842 INFO    ] 2026-08-25 02:47:58
[2026-08-25 02:47:59,133.133 INFO    ] 2026-08-25 02:47:59
[2026-08-25 02:47:59,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:47:59,231.231 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:47:59,409.409 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:47:59,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:47:59,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:47:59,526.526 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:47:59,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:48:01,603.603 INFO    ] ================================================
[2026-08-25 02:48:01,647.647 INFO    ] Launching Daemon at Tue Aug 25 02:48:01 IST 2026
[2026-08-25 02:48:01,678.678 INFO    ] ================================================
[2026-08-25 02:48:02,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:48:02
[2026-08-25 02:48:03,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:48:03,383.383 INFO    ] Initializing speech engine...
[2026-08-25 02:48:03,390.390 INFO    ] 2026-08-25 02:48:03
[2026-08-25 02:48:03,660.660 INFO    ] 2026-08-25 02:48:03
[2026-08-25 02:48:03,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:48:03,814.814 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:48:03,931.931 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:48:03,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:48:03,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:48:04,025.025 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:48:04,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:48:06,110.110 INFO    ] ================================================
[2026-08-25 02:48:06,127.127 INFO    ] Launching Daemon at Tue Aug 25 02:48:06 IST 2026
[2026-08-25 02:48:06,138.138 INFO    ] ================================================
[2026-08-25 02:48:06,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:48:06
[2026-08-25 02:48:07,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:48:07,636.636 INFO    ] Initializing speech engine...
[2026-08-25 02:48:07,646.646 INFO    ] 2026-08-25 02:48:07
[2026-08-25 02:48:07,918.918 INFO    ] 2026-08-25 02:48:07
[2026-08-25 02:48:07,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:48:08,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:48:08,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:48:08,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:48:08,463.463 INFO    ] time= 25/08/2026 02:48:08
[2026-08-25 02:48:08,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:48:08,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:48:08,678.678 INFO    ] No existing commands found in stream
[2026-08-25 02:48:13,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:48:13,690.690 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 02:48:15,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:48:15,659.659 INFO    ] Checking for system updates...
[2026-08-25 02:48:15,700.700 INFO    ] 200
[2026-08-25 02:48:15,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:15,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:48:15,771.771 INFO    ] No update needed
[2026-08-25 02:48:15,774.774 INFO    ] Checking for camera pi updates...
[2026-08-25 02:48:15,809.809 INFO    ] 200
[2026-08-25 02:48:15,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:15,859.859 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:48:15,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:48:15,920.920 INFO    ] No camera update needed
[2026-08-25 02:48:15,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:48:15,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:48:15,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:48:15,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:48:17,977.977 INFO    ] ================================================
[2026-08-25 02:48:17,993.993 INFO    ] Launching Daemon at Tue Aug 25 02:48:17 IST 2026
[2026-08-25 02:48:18,006.006 INFO    ] ================================================
[2026-08-25 02:48:18,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:48:18
[2026-08-25 02:48:19,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:48:19,470.470 INFO    ] Initializing speech engine...
[2026-08-25 02:48:19,479.479 INFO    ] 2026-08-25 02:48:19
[2026-08-25 02:48:19,743.743 INFO    ] 2026-08-25 02:48:19
[2026-08-25 02:48:19,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:48:20,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:48:20,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:48:20,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:48:20,225.225 INFO    ] time= 25/08/2026 02:48:20
[2026-08-25 02:48:20,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:48:20,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:48:20,460.460 INFO    ] No existing commands found in stream
[2026-08-25 02:48:25,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:48:25,478.478 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 02:48:29,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:48:29,717.717 INFO    ] Checking for system updates...
[2026-08-25 02:48:29,759.759 INFO    ] 200
[2026-08-25 02:48:29,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:29,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:48:29,819.819 INFO    ] No update needed
[2026-08-25 02:48:29,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 02:48:29,861.861 INFO    ] 200
[2026-08-25 02:48:29,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:29,906.906 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:48:29,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:48:29,956.956 INFO    ] No camera update needed
[2026-08-25 02:48:29,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:48:29,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:48:29,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:48:29,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:48:32,020.020 INFO    ] ================================================
[2026-08-25 02:48:32,043.043 INFO    ] Launching Daemon at Tue Aug 25 02:48:32 IST 2026
[2026-08-25 02:48:32,061.061 INFO    ] ================================================
[2026-08-25 02:48:32,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:48:32
[2026-08-25 02:48:33,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:48:33,613.613 INFO    ] Initializing speech engine...
[2026-08-25 02:48:33,621.621 INFO    ] 2026-08-25 02:48:33
[2026-08-25 02:48:33,955.955 INFO    ] 2026-08-25 02:48:33
[2026-08-25 02:48:34,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:48:34,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:48:34,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:48:34,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:48:34,392.392 INFO    ] time= 25/08/2026 02:48:34
[2026-08-25 02:48:34,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:48:34,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:48:34,479.479 INFO    ] No existing commands found in stream
[2026-08-25 02:48:39,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:48:39,494.494 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 02:48:41,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:48:41,763.763 INFO    ] Checking for system updates...
[2026-08-25 02:48:41,800.800 INFO    ] 200
[2026-08-25 02:48:41,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:41,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:48:41,872.872 INFO    ] No update needed
[2026-08-25 02:48:41,875.875 INFO    ] Checking for camera pi updates...
[2026-08-25 02:48:41,911.911 INFO    ] 200
[2026-08-25 02:48:41,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:41,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:48:42,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:48:42,016.016 INFO    ] No camera update needed
[2026-08-25 02:48:42,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:48:42,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:48:42,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:48:42,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:48:44,076.076 INFO    ] ================================================
[2026-08-25 02:48:44,091.091 INFO    ] Launching Daemon at Tue Aug 25 02:48:44 IST 2026
[2026-08-25 02:48:44,102.102 INFO    ] ================================================
[2026-08-25 02:48:44,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:48:44
[2026-08-25 02:48:45,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:48:45,610.610 INFO    ] Initializing speech engine...
[2026-08-25 02:48:45,621.621 INFO    ] 2026-08-25 02:48:45
[2026-08-25 02:48:45,901.901 INFO    ] 2026-08-25 02:48:45
[2026-08-25 02:48:45,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:48:46,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:48:46,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:48:46,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:48:46,386.386 INFO    ] time= 25/08/2026 02:48:46
[2026-08-25 02:48:46,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:48:46,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:48:46,579.579 INFO    ] No existing commands found in stream
[2026-08-25 02:48:51,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:48:51,608.608 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 02:48:55,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:48:55,476.476 INFO    ] Checking for system updates...
[2026-08-25 02:48:55,517.517 INFO    ] 200
[2026-08-25 02:48:55,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:55,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:48:55,577.577 INFO    ] No update needed
[2026-08-25 02:48:55,579.579 INFO    ] Checking for camera pi updates...
[2026-08-25 02:48:55,620.620 INFO    ] 200
[2026-08-25 02:48:55,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:48:55,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:48:55,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:48:55,712.712 INFO    ] No camera update needed
[2026-08-25 02:48:55,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:48:55,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:48:55,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:48:55,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:48:57,769.769 INFO    ] ================================================
[2026-08-25 02:48:57,789.789 INFO    ] Launching Daemon at Tue Aug 25 02:48:57 IST 2026
[2026-08-25 02:48:57,800.800 INFO    ] ================================================
[2026-08-25 02:48:58,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:48:58
[2026-08-25 02:48:59,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:48:59,437.437 INFO    ] Initializing speech engine...
[2026-08-25 02:48:59,444.444 INFO    ] 2026-08-25 02:48:59
[2026-08-25 02:48:59,736.736 INFO    ] 2026-08-25 02:48:59
[2026-08-25 02:48:59,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:00,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:49:00,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:49:00,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:49:00,278.278 INFO    ] time= 25/08/2026 02:49:00
[2026-08-25 02:49:00,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:49:00,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:49:00,452.452 INFO    ] No existing commands found in stream
[2026-08-25 02:49:05,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:49:05,481.481 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 02:49:06,625.625 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-25 02:49:06,662.662 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d105d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-08-25 02:49:06,672.672 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d105d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-08-25 02:49:06,682.682 INFO    ] None
[2026-08-25 02:49:06,685.685 INFO    ] Checking for system updates...
[2026-08-25 02:49:06,727.727 INFO    ] 200
[2026-08-25 02:49:06,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:49:06,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:49:06,791.791 INFO    ] No update needed
[2026-08-25 02:49:06,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 02:49:06,827.827 INFO    ] 200
[2026-08-25 02:49:06,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:49:06,869.869 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:49:07,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:49:07,015.015 INFO    ] No camera update needed
[2026-08-25 02:49:07,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:49:07,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:07,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:07,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:09,069.069 INFO    ] ================================================
[2026-08-25 02:49:09,085.085 INFO    ] Launching Daemon at Tue Aug 25 02:49:09 IST 2026
[2026-08-25 02:49:09,095.095 INFO    ] ================================================
[2026-08-25 02:49:09,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:09
[2026-08-25 02:49:10,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:10,543.543 INFO    ] Initializing speech engine...
[2026-08-25 02:49:10,565.565 INFO    ] 2026-08-25 02:49:10
[2026-08-25 02:49:10,821.821 INFO    ] 2026-08-25 02:49:10
[2026-08-25 02:49:10,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:10,983.983 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:49:11,120.120 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:11,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:11,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:11,190.190 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:11,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:13,275.275 INFO    ] ================================================
[2026-08-25 02:49:13,290.290 INFO    ] Launching Daemon at Tue Aug 25 02:49:13 IST 2026
[2026-08-25 02:49:13,300.300 INFO    ] ================================================
[2026-08-25 02:49:13,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:13
[2026-08-25 02:49:14,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:14,726.726 INFO    ] Initializing speech engine...
[2026-08-25 02:49:14,745.745 INFO    ] 2026-08-25 02:49:14
[2026-08-25 02:49:15,015.015 INFO    ] 2026-08-25 02:49:14
[2026-08-25 02:49:15,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:15,118.118 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:49:15,293.293 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:15,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:15,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:15,409.409 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:15,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:17,509.509 INFO    ] ================================================
[2026-08-25 02:49:17,524.524 INFO    ] Launching Daemon at Tue Aug 25 02:49:17 IST 2026
[2026-08-25 02:49:17,535.535 INFO    ] ================================================
[2026-08-25 02:49:18,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:18
[2026-08-25 02:49:18,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:19,125.125 INFO    ] Initializing speech engine...
[2026-08-25 02:49:19,134.134 INFO    ] 2026-08-25 02:49:19
[2026-08-25 02:49:19,405.405 INFO    ] 2026-08-25 02:49:19
[2026-08-25 02:49:19,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:22,619.619 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:49:22,646.646 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:22,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:22,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:22,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:24,698.698 INFO    ] ================================================
[2026-08-25 02:49:24,716.716 INFO    ] Launching Daemon at Tue Aug 25 02:49:24 IST 2026
[2026-08-25 02:49:24,732.732 INFO    ] ================================================
[2026-08-25 02:49:25,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:25
[2026-08-25 02:49:25,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:26,206.206 INFO    ] Initializing speech engine...
[2026-08-25 02:49:26,212.212 INFO    ] 2026-08-25 02:49:26
[2026-08-25 02:49:26,512.512 INFO    ] 2026-08-25 02:49:26
[2026-08-25 02:49:26,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:26,672.672 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 02:49:26,799.799 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:26,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:26,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:26,912.912 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:26,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:28,991.991 INFO    ] ================================================
[2026-08-25 02:49:29,007.007 INFO    ] Launching Daemon at Tue Aug 25 02:49:29 IST 2026
[2026-08-25 02:49:29,018.018 INFO    ] ================================================
[2026-08-25 02:49:29,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:29
[2026-08-25 02:49:30,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:30,535.535 INFO    ] Initializing speech engine...
[2026-08-25 02:49:30,542.542 INFO    ] 2026-08-25 02:49:30
[2026-08-25 02:49:30,811.811 INFO    ] 2026-08-25 02:49:30
[2026-08-25 02:49:30,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:30,974.974 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 02:49:31,177.177 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:31,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:31,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:31,258.258 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:31,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:33,347.347 INFO    ] ================================================
[2026-08-25 02:49:33,363.363 INFO    ] Launching Daemon at Tue Aug 25 02:49:33 IST 2026
[2026-08-25 02:49:33,373.373 INFO    ] ================================================
[2026-08-25 02:49:33,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:33
[2026-08-25 02:49:34,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:34,829.829 INFO    ] Initializing speech engine...
[2026-08-25 02:49:34,835.835 INFO    ] 2026-08-25 02:49:34
[2026-08-25 02:49:35,135.135 INFO    ] 2026-08-25 02:49:35
[2026-08-25 02:49:35,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:35,231.231 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 02:49:35,407.407 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:35,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:35,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:35,538.538 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:35,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:37,610.610 INFO    ] ================================================
[2026-08-25 02:49:37,626.626 INFO    ] Launching Daemon at Tue Aug 25 02:49:37 IST 2026
[2026-08-25 02:49:37,637.637 INFO    ] ================================================
[2026-08-25 02:49:38,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:38
[2026-08-25 02:49:38,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:39,154.154 INFO    ] Initializing speech engine...
[2026-08-25 02:49:39,167.167 INFO    ] 2026-08-25 02:49:39
[2026-08-25 02:49:39,443.443 INFO    ] 2026-08-25 02:49:39
[2026-08-25 02:49:39,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:39,594.594 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 02:49:39,760.760 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:39,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:39,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:39,838.838 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:39,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:41,928.928 INFO    ] ================================================
[2026-08-25 02:49:41,943.943 INFO    ] Launching Daemon at Tue Aug 25 02:49:41 IST 2026
[2026-08-25 02:49:41,954.954 INFO    ] ================================================
[2026-08-25 02:49:42,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:42
[2026-08-25 02:49:43,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:43,565.565 INFO    ] Initializing speech engine...
[2026-08-25 02:49:43,578.578 INFO    ] 2026-08-25 02:49:43
[2026-08-25 02:49:43,857.857 INFO    ] 2026-08-25 02:49:43
[2026-08-25 02:49:43,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:44,023.023 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 02:49:44,167.167 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:44,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:44,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:44,246.246 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:44,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:46,372.372 INFO    ] ================================================
[2026-08-25 02:49:46,387.387 INFO    ] Launching Daemon at Tue Aug 25 02:49:46 IST 2026
[2026-08-25 02:49:46,398.398 INFO    ] ================================================
[2026-08-25 02:49:46,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:46
[2026-08-25 02:49:47,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:47,845.845 INFO    ] Initializing speech engine...
[2026-08-25 02:49:47,858.858 INFO    ] 2026-08-25 02:49:47
[2026-08-25 02:49:48,142.142 INFO    ] 2026-08-25 02:49:48
[2026-08-25 02:49:48,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:48,319.319 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 02:49:48,419.419 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:48,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:48,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:48,557.557 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 02:49:48,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:50,628.628 INFO    ] ================================================
[2026-08-25 02:49:50,643.643 INFO    ] Launching Daemon at Tue Aug 25 02:49:50 IST 2026
[2026-08-25 02:49:50,654.654 INFO    ] ================================================
[2026-08-25 02:49:51,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:49:51
[2026-08-25 02:49:51,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:49:52,105.105 INFO    ] Initializing speech engine...
[2026-08-25 02:49:52,111.111 INFO    ] 2026-08-25 02:49:52
[2026-08-25 02:49:52,409.409 INFO    ] 2026-08-25 02:49:52
[2026-08-25 02:49:52,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:49:57,512.512 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:49:57,538.538 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:49:57,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:49:57,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:49:57,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:49:59,588.588 INFO    ] ================================================
[2026-08-25 02:49:59,603.603 INFO    ] Launching Daemon at Tue Aug 25 02:49:59 IST 2026
[2026-08-25 02:49:59,614.614 INFO    ] ================================================
[2026-08-25 02:50:00,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:50:00
[2026-08-25 02:50:00,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:50:01,032.032 INFO    ] Initializing speech engine...
[2026-08-25 02:50:01,043.043 INFO    ] 2026-08-25 02:50:01
[2026-08-25 02:50:01,316.316 INFO    ] 2026-08-25 02:50:01
[2026-08-25 02:50:01,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:50:04,624.624 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 02:50:04,821.821 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 02:50:04,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:50:04,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:50:04,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:50:06,878.878 INFO    ] ================================================
[2026-08-25 02:50:06,893.893 INFO    ] Launching Daemon at Tue Aug 25 02:50:06 IST 2026
[2026-08-25 02:50:06,904.904 INFO    ] ================================================
[2026-08-25 02:50:07,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:50:07
[2026-08-25 02:50:08,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:50:08,374.374 INFO    ] Initializing speech engine...
[2026-08-25 02:50:08,393.393 INFO    ] 2026-08-25 02:50:08
[2026-08-25 02:50:08,641.641 INFO    ] 2026-08-25 02:50:08
[2026-08-25 02:50:08,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:50:08,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:50:08,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:50:09,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:50:09,040.040 INFO    ] time= 25/08/2026 02:50:09
[2026-08-25 02:50:09,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:50:09,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:50:09,228.228 INFO    ] No existing commands found in stream
[2026-08-25 02:50:14,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:50:14,263.263 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 02:50:15,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:50:15,651.651 INFO    ] Checking for system updates...
[2026-08-25 02:50:15,691.691 INFO    ] 200
[2026-08-25 02:50:15,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:15,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:50:15,750.750 INFO    ] No update needed
[2026-08-25 02:50:15,753.753 INFO    ] Checking for camera pi updates...
[2026-08-25 02:50:15,789.789 INFO    ] 200
[2026-08-25 02:50:15,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:15,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:50:15,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:50:15,881.881 INFO    ] No camera update needed
[2026-08-25 02:50:15,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:50:15,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:50:15,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:50:15,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:50:17,939.939 INFO    ] ================================================
[2026-08-25 02:50:17,954.954 INFO    ] Launching Daemon at Tue Aug 25 02:50:17 IST 2026
[2026-08-25 02:50:17,964.964 INFO    ] ================================================
[2026-08-25 02:50:18,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:50:18
[2026-08-25 02:50:19,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:50:19,382.382 INFO    ] Initializing speech engine...
[2026-08-25 02:50:19,388.388 INFO    ] 2026-08-25 02:50:19
[2026-08-25 02:50:19,678.678 INFO    ] 2026-08-25 02:50:19
[2026-08-25 02:50:19,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:50:19,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:50:19,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:50:20,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:50:20,050.050 INFO    ] time= 25/08/2026 02:50:20
[2026-08-25 02:50:20,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:50:20,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:50:20,184.184 INFO    ] No existing commands found in stream
[2026-08-25 02:50:25,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:50:25,200.200 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 02:50:28,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:50:28,713.713 INFO    ] Checking for system updates...
[2026-08-25 02:50:28,749.749 INFO    ] 200
[2026-08-25 02:50:28,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:28,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:50:28,807.807 INFO    ] No update needed
[2026-08-25 02:50:28,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 02:50:28,843.843 INFO    ] 200
[2026-08-25 02:50:28,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:28,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:50:28,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:50:28,926.926 INFO    ] No camera update needed
[2026-08-25 02:50:28,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:50:28,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:50:28,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:50:28,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:50:30,982.982 INFO    ] ================================================
[2026-08-25 02:50:31,997.997 INFO    ] Launching Daemon at Tue Aug 25 02:50:30 IST 2026
[2026-08-25 02:50:31,007.007 INFO    ] ================================================
[2026-08-25 02:50:31,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:50:31
[2026-08-25 02:50:32,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:50:32,715.715 INFO    ] Initializing speech engine...
[2026-08-25 02:50:32,725.725 INFO    ] 2026-08-25 02:50:32
[2026-08-25 02:50:33,041.041 INFO    ] 2026-08-25 02:50:33
[2026-08-25 02:50:33,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:50:33,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:50:33,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:50:33,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:50:33,487.487 INFO    ] time= 25/08/2026 02:50:33
[2026-08-25 02:50:33,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:50:33,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:50:33,716.716 INFO    ] No existing commands found in stream
[2026-08-25 02:50:38,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:50:38,740.740 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 02:50:40,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:50:40,896.896 INFO    ] Checking for system updates...
[2026-08-25 02:50:40,935.935 INFO    ] 200
[2026-08-25 02:50:40,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:40,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:50:40,993.993 INFO    ] No update needed
[2026-08-25 02:50:40,995.995 INFO    ] Checking for camera pi updates...
[2026-08-25 02:50:41,029.029 INFO    ] 200
[2026-08-25 02:50:41,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:41,072.072 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:50:41,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:50:41,126.126 INFO    ] No camera update needed
[2026-08-25 02:50:41,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:50:41,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:50:41,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:50:41,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:50:43,180.180 INFO    ] ================================================
[2026-08-25 02:50:43,195.195 INFO    ] Launching Daemon at Tue Aug 25 02:50:43 IST 2026
[2026-08-25 02:50:43,206.206 INFO    ] ================================================
[2026-08-25 02:50:43,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:50:43
[2026-08-25 02:50:44,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:50:44,657.657 INFO    ] Initializing speech engine...
[2026-08-25 02:50:44,667.667 INFO    ] 2026-08-25 02:50:44
[2026-08-25 02:50:44,917.917 INFO    ] 2026-08-25 02:50:44
[2026-08-25 02:50:44,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:50:45,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:50:45,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:50:45,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:50:45,290.290 INFO    ] time= 25/08/2026 02:50:45
[2026-08-25 02:50:45,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:50:45,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:50:45,478.478 INFO    ] No existing commands found in stream
[2026-08-25 02:50:50,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:50:50,505.505 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 02:50:52,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:50:52,037.037 INFO    ] Checking for system updates...
[2026-08-25 02:50:52,074.074 INFO    ] 200
[2026-08-25 02:50:52,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:52,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:50:52,131.131 INFO    ] No update needed
[2026-08-25 02:50:52,133.133 INFO    ] Checking for camera pi updates...
[2026-08-25 02:50:52,167.167 INFO    ] 200
[2026-08-25 02:50:52,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:50:52,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:50:52,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:50:52,254.254 INFO    ] No camera update needed
[2026-08-25 02:50:52,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:50:52,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:50:52,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:50:52,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:50:54,309.309 INFO    ] ================================================
[2026-08-25 02:50:54,324.324 INFO    ] Launching Daemon at Tue Aug 25 02:50:54 IST 2026
[2026-08-25 02:50:54,335.335 INFO    ] ================================================
[2026-08-25 02:50:54,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:50:54
[2026-08-25 02:50:55,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:50:55,773.773 INFO    ] Initializing speech engine...
[2026-08-25 02:50:55,782.782 INFO    ] 2026-08-25 02:50:55
[2026-08-25 02:50:56,077.077 INFO    ] 2026-08-25 02:50:56
[2026-08-25 02:50:56,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:50:56,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:50:56,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:50:56,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:50:56,493.493 INFO    ] time= 25/08/2026 02:50:56
[2026-08-25 02:50:56,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:50:56,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:50:56,633.633 INFO    ] No existing commands found in stream
[2026-08-25 02:51:01,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:51:01,660.660 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 02:51:04,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:51:04,339.339 INFO    ] Checking for system updates...
[2026-08-25 02:51:04,374.374 INFO    ] 200
[2026-08-25 02:51:04,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:04,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:04,437.437 INFO    ] No update needed
[2026-08-25 02:51:04,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 02:51:04,477.477 INFO    ] 200
[2026-08-25 02:51:04,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:04,526.526 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:51:04,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:04,600.600 INFO    ] No camera update needed
[2026-08-25 02:51:04,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:51:04,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:51:04,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:51:04,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:51:06,656.656 INFO    ] ================================================
[2026-08-25 02:51:06,671.671 INFO    ] Launching Daemon at Tue Aug 25 02:51:06 IST 2026
[2026-08-25 02:51:06,682.682 INFO    ] ================================================
[2026-08-25 02:51:07,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:51:07
[2026-08-25 02:51:07,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:51:08,151.151 INFO    ] Initializing speech engine...
[2026-08-25 02:51:08,168.168 INFO    ] 2026-08-25 02:51:08
[2026-08-25 02:51:08,424.424 INFO    ] 2026-08-25 02:51:08
[2026-08-25 02:51:08,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:51:08,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:51:08,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:51:08,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:51:08,800.800 INFO    ] time= 25/08/2026 02:51:08
[2026-08-25 02:51:08,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:51:08,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:51:08,879.879 INFO    ] No existing commands found in stream
[2026-08-25 02:51:13,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:51:13,912.912 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 02:51:15,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:51:15,993.993 INFO    ] Checking for system updates...
[2026-08-25 02:51:16,029.029 INFO    ] 200
[2026-08-25 02:51:16,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:16,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:16,086.086 INFO    ] No update needed
[2026-08-25 02:51:16,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 02:51:16,128.128 INFO    ] 200
[2026-08-25 02:51:16,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:16,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:51:16,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:16,215.215 INFO    ] No camera update needed
[2026-08-25 02:51:16,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:51:16,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:51:16,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:51:16,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:51:18,273.273 INFO    ] ================================================
[2026-08-25 02:51:18,289.289 INFO    ] Launching Daemon at Tue Aug 25 02:51:18 IST 2026
[2026-08-25 02:51:18,300.300 INFO    ] ================================================
[2026-08-25 02:51:18,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:51:18
[2026-08-25 02:51:19,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:51:19,749.749 INFO    ] Initializing speech engine...
[2026-08-25 02:51:19,756.756 INFO    ] 2026-08-25 02:51:19
[2026-08-25 02:51:20,062.062 INFO    ] 2026-08-25 02:51:20
[2026-08-25 02:51:20,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:51:20,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:51:20,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:51:20,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:51:20,440.440 INFO    ] time= 25/08/2026 02:51:20
[2026-08-25 02:51:20,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:51:20,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:51:20,592.592 INFO    ] No existing commands found in stream
[2026-08-25 02:51:25,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:51:25,609.609 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 02:51:27,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:51:27,665.665 INFO    ] Checking for system updates...
[2026-08-25 02:51:27,705.705 INFO    ] 200
[2026-08-25 02:51:27,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:27,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:27,762.762 INFO    ] No update needed
[2026-08-25 02:51:27,765.765 INFO    ] Checking for camera pi updates...
[2026-08-25 02:51:27,798.798 INFO    ] 200
[2026-08-25 02:51:27,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:27,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:51:27,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:27,891.891 INFO    ] No camera update needed
[2026-08-25 02:51:27,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:51:27,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:51:27,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:51:27,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:51:29,950.950 INFO    ] ================================================
[2026-08-25 02:51:29,965.965 INFO    ] Launching Daemon at Tue Aug 25 02:51:29 IST 2026
[2026-08-25 02:51:29,975.975 INFO    ] ================================================
[2026-08-25 02:51:30,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:51:30
[2026-08-25 02:51:31,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:51:31,391.391 INFO    ] Initializing speech engine...
[2026-08-25 02:51:31,411.411 INFO    ] 2026-08-25 02:51:31
[2026-08-25 02:51:31,663.663 INFO    ] 2026-08-25 02:51:31
[2026-08-25 02:51:31,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:51:31,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:51:31,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:51:32,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:51:32,183.183 INFO    ] time= 25/08/2026 02:51:32
[2026-08-25 02:51:32,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:51:32,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:51:32,403.403 INFO    ] No existing commands found in stream
[2026-08-25 02:51:37,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:51:37,428.428 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 02:51:41,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:51:41,187.187 INFO    ] Checking for system updates...
[2026-08-25 02:51:41,222.222 INFO    ] 200
[2026-08-25 02:51:41,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:41,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:41,282.282 INFO    ] No update needed
[2026-08-25 02:51:41,285.285 INFO    ] Checking for camera pi updates...
[2026-08-25 02:51:41,320.320 INFO    ] 200
[2026-08-25 02:51:41,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:41,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:51:41,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:51:41,420.420 INFO    ] No camera update needed
[2026-08-25 02:51:41,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:51:41,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:51:41,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:51:41,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:51:43,481.481 INFO    ] ================================================
[2026-08-25 02:51:43,497.497 INFO    ] Launching Daemon at Tue Aug 25 02:51:43 IST 2026
[2026-08-25 02:51:43,507.507 INFO    ] ================================================
[2026-08-25 02:51:44,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:51:44
[2026-08-25 02:51:44,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:51:45,210.210 INFO    ] Initializing speech engine...
[2026-08-25 02:51:45,223.223 INFO    ] 2026-08-25 02:51:45
[2026-08-25 02:51:45,502.502 INFO    ] 2026-08-25 02:51:45
[2026-08-25 02:51:45,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:51:45,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:51:45,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:51:46,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:51:46,063.063 INFO    ] time= 25/08/2026 02:51:46
[2026-08-25 02:51:46,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:51:46,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:51:46,218.218 INFO    ] No existing commands found in stream
[2026-08-25 02:51:51,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:51:51,243.243 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 02:51:55,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:51:55,550.550 INFO    ] Checking for system updates...
[2026-08-25 02:51:55,589.589 INFO    ] 200
[2026-08-25 02:51:55,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:55,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:51:55,646.646 INFO    ] No update needed
[2026-08-25 02:51:55,648.648 INFO    ] Checking for camera pi updates...
[2026-08-25 02:51:55,681.681 INFO    ] 200
[2026-08-25 02:51:55,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:51:55,723.723 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:51:55,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:51:55,766.766 INFO    ] No camera update needed
[2026-08-25 02:51:55,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:51:55,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:51:55,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:51:55,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:51:57,822.822 INFO    ] ================================================
[2026-08-25 02:51:57,837.837 INFO    ] Launching Daemon at Tue Aug 25 02:51:57 IST 2026
[2026-08-25 02:51:57,847.847 INFO    ] ================================================
[2026-08-25 02:51:58,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:51:58
[2026-08-25 02:51:59,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:51:59,292.292 INFO    ] Initializing speech engine...
[2026-08-25 02:51:59,298.298 INFO    ] 2026-08-25 02:51:59
[2026-08-25 02:51:59,557.557 INFO    ] 2026-08-25 02:51:59
[2026-08-25 02:51:59,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:51:59,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:51:59,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:51:59,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:52:00,008.008 INFO    ] time= 25/08/2026 02:51:59
[2026-08-25 02:52:00,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:52:00,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:52:00,233.233 INFO    ] No existing commands found in stream
[2026-08-25 02:52:05,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:52:05,261.261 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 02:52:06,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:52:06,340.340 INFO    ] Checking for system updates...
[2026-08-25 02:52:06,378.378 INFO    ] 200
[2026-08-25 02:52:06,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:06,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:06,436.436 INFO    ] No update needed
[2026-08-25 02:52:06,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 02:52:06,474.474 INFO    ] 200
[2026-08-25 02:52:06,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:06,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:52:06,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:06,572.572 INFO    ] No camera update needed
[2026-08-25 02:52:06,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:52:06,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:52:06,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:52:06,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:52:08,631.631 INFO    ] ================================================
[2026-08-25 02:52:08,647.647 INFO    ] Launching Daemon at Tue Aug 25 02:52:08 IST 2026
[2026-08-25 02:52:08,658.658 INFO    ] ================================================
[2026-08-25 02:52:09,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:52:09
[2026-08-25 02:52:09,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:52:10,089.089 INFO    ] Initializing speech engine...
[2026-08-25 02:52:10,109.109 INFO    ] 2026-08-25 02:52:10
[2026-08-25 02:52:10,386.386 INFO    ] 2026-08-25 02:52:10
[2026-08-25 02:52:10,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:52:10,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:52:10,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:52:10,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:52:10,742.742 INFO    ] time= 25/08/2026 02:52:10
[2026-08-25 02:52:10,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:52:10,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:52:10,883.883 INFO    ] No existing commands found in stream
[2026-08-25 02:52:15,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:52:15,909.909 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 02:52:20,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:52:20,031.031 INFO    ] Checking for system updates...
[2026-08-25 02:52:20,066.066 INFO    ] 200
[2026-08-25 02:52:20,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:20,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:20,123.123 INFO    ] No update needed
[2026-08-25 02:52:20,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 02:52:20,163.163 INFO    ] 200
[2026-08-25 02:52:20,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:20,206.206 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:52:20,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:20,363.363 INFO    ] No camera update needed
[2026-08-25 02:52:20,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:52:20,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:52:20,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:52:20,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:52:22,417.417 INFO    ] ================================================
[2026-08-25 02:52:22,432.432 INFO    ] Launching Daemon at Tue Aug 25 02:52:22 IST 2026
[2026-08-25 02:52:22,443.443 INFO    ] ================================================
[2026-08-25 02:52:23,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:52:23
[2026-08-25 02:52:23,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:52:23,878.878 INFO    ] Initializing speech engine...
[2026-08-25 02:52:23,889.889 INFO    ] 2026-08-25 02:52:23
[2026-08-25 02:52:24,143.143 INFO    ] 2026-08-25 02:52:24
[2026-08-25 02:52:24,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:52:24,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:52:24,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:52:24,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:52:24,589.589 INFO    ] time= 25/08/2026 02:52:24
[2026-08-25 02:52:24,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:52:24,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:52:24,828.828 INFO    ] No existing commands found in stream
[2026-08-25 02:52:29,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:52:29,853.853 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 02:52:33,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:52:33,752.752 INFO    ] Checking for system updates...
[2026-08-25 02:52:33,788.788 INFO    ] 200
[2026-08-25 02:52:33,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:33,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:33,847.847 INFO    ] No update needed
[2026-08-25 02:52:33,850.850 INFO    ] Checking for camera pi updates...
[2026-08-25 02:52:33,883.883 INFO    ] 200
[2026-08-25 02:52:33,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:33,926.926 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:52:33,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:33,969.969 INFO    ] No camera update needed
[2026-08-25 02:52:33,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:52:33,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:52:33,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:52:33,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:52:36,031.031 INFO    ] ================================================
[2026-08-25 02:52:36,047.047 INFO    ] Launching Daemon at Tue Aug 25 02:52:36 IST 2026
[2026-08-25 02:52:36,058.058 INFO    ] ================================================
[2026-08-25 02:52:36,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:52:36
[2026-08-25 02:52:37,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:52:37,509.509 INFO    ] Initializing speech engine...
[2026-08-25 02:52:37,516.516 INFO    ] 2026-08-25 02:52:37
[2026-08-25 02:52:37,768.768 INFO    ] 2026-08-25 02:52:37
[2026-08-25 02:52:37,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:52:38,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:52:38,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:52:38,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:52:38,250.250 INFO    ] time= 25/08/2026 02:52:38
[2026-08-25 02:52:38,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:52:38,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:52:38,412.412 INFO    ] No existing commands found in stream
[2026-08-25 02:52:43,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:52:43,428.428 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 02:52:45,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:52:45,607.607 INFO    ] Checking for system updates...
[2026-08-25 02:52:45,642.642 INFO    ] 200
[2026-08-25 02:52:45,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:45,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:45,701.701 INFO    ] No update needed
[2026-08-25 02:52:45,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 02:52:45,736.736 INFO    ] 200
[2026-08-25 02:52:45,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:45,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:52:45,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:52:45,829.829 INFO    ] No camera update needed
[2026-08-25 02:52:45,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:52:45,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:52:45,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:52:45,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:52:47,888.888 INFO    ] ================================================
[2026-08-25 02:52:47,903.903 INFO    ] Launching Daemon at Tue Aug 25 02:52:47 IST 2026
[2026-08-25 02:52:47,913.913 INFO    ] ================================================
[2026-08-25 02:52:48,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:52:48
[2026-08-25 02:52:49,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:52:49,364.364 INFO    ] Initializing speech engine...
[2026-08-25 02:52:49,374.374 INFO    ] 2026-08-25 02:52:49
[2026-08-25 02:52:49,645.645 INFO    ] 2026-08-25 02:52:49
[2026-08-25 02:52:49,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:52:49,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:52:49,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:52:50,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:52:50,044.044 INFO    ] time= 25/08/2026 02:52:50
[2026-08-25 02:52:50,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:52:50,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:52:50,199.199 INFO    ] No existing commands found in stream
[2026-08-25 02:52:55,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:52:55,227.227 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 02:52:59,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:52:59,278.278 INFO    ] Checking for system updates...
[2026-08-25 02:52:59,313.313 INFO    ] 200
[2026-08-25 02:52:59,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:59,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:52:59,380.380 INFO    ] No update needed
[2026-08-25 02:52:59,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 02:52:59,416.416 INFO    ] 200
[2026-08-25 02:52:59,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:52:59,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:52:59,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:52:59,511.511 INFO    ] No camera update needed
[2026-08-25 02:52:59,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:52:59,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:52:59,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:52:59,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:53:01,565.565 INFO    ] ================================================
[2026-08-25 02:53:01,580.580 INFO    ] Launching Daemon at Tue Aug 25 02:53:01 IST 2026
[2026-08-25 02:53:01,590.590 INFO    ] ================================================
[2026-08-25 02:53:02,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:53:02
[2026-08-25 02:53:02,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:53:03,200.200 INFO    ] Initializing speech engine...
[2026-08-25 02:53:03,219.219 INFO    ] 2026-08-25 02:53:03
[2026-08-25 02:53:03,512.512 INFO    ] 2026-08-25 02:53:03
[2026-08-25 02:53:03,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:53:03,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:53:03,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:53:03,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:53:03,885.885 INFO    ] time= 25/08/2026 02:53:03
[2026-08-25 02:53:03,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:53:03,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:53:04,021.021 INFO    ] No existing commands found in stream
[2026-08-25 02:53:09,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:53:09,037.037 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 02:53:12,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:53:12,395.395 INFO    ] Checking for system updates...
[2026-08-25 02:53:12,438.438 INFO    ] 200
[2026-08-25 02:53:12,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:12,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:53:12,497.497 INFO    ] No update needed
[2026-08-25 02:53:12,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 02:53:12,538.538 INFO    ] 200
[2026-08-25 02:53:12,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:12,582.582 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:53:12,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:53:12,625.625 INFO    ] No camera update needed
[2026-08-25 02:53:12,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:53:12,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:53:12,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:53:12,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:53:14,679.679 INFO    ] ================================================
[2026-08-25 02:53:14,694.694 INFO    ] Launching Daemon at Tue Aug 25 02:53:14 IST 2026
[2026-08-25 02:53:14,704.704 INFO    ] ================================================
[2026-08-25 02:53:15,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:53:15
[2026-08-25 02:53:15,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:53:16,124.124 INFO    ] Initializing speech engine...
[2026-08-25 02:53:16,135.135 INFO    ] 2026-08-25 02:53:16
[2026-08-25 02:53:16,393.393 INFO    ] 2026-08-25 02:53:16
[2026-08-25 02:53:16,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:53:16,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:53:16,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:53:16,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:53:16,871.871 INFO    ] time= 25/08/2026 02:53:16
[2026-08-25 02:53:16,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:53:16,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:53:17,099.099 INFO    ] No existing commands found in stream
[2026-08-25 02:53:22,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:53:22,130.130 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 02:53:23,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:53:23,700.700 INFO    ] Checking for system updates...
[2026-08-25 02:53:23,742.742 INFO    ] 200
[2026-08-25 02:53:23,744.744 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:23,747.747 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 02:53:23,750.750 INFO    ] Checking for camera pi updates...
[2026-08-25 02:53:23,795.795 INFO    ] 200
[2026-08-25 02:53:23,797.797 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:23,800.800 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 02:53:23,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:53:23,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:53:23,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:53:23,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:53:25,860.860 INFO    ] ================================================
[2026-08-25 02:53:25,875.875 INFO    ] Launching Daemon at Tue Aug 25 02:53:25 IST 2026
[2026-08-25 02:53:25,886.886 INFO    ] ================================================
[2026-08-25 02:53:26,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:53:26
[2026-08-25 02:53:27,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:53:27,315.315 INFO    ] Initializing speech engine...
[2026-08-25 02:53:27,326.326 INFO    ] 2026-08-25 02:53:27
[2026-08-25 02:53:27,584.584 INFO    ] 2026-08-25 02:53:27
[2026-08-25 02:53:27,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:53:27,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:53:27,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:53:28,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:53:28,064.064 INFO    ] time= 25/08/2026 02:53:28
[2026-08-25 02:53:28,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:53:28,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:53:28,282.282 INFO    ] No existing commands found in stream
[2026-08-25 02:53:33,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:53:33,297.297 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 02:53:34,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:53:34,667.667 INFO    ] Checking for system updates...
[2026-08-25 02:53:34,706.706 INFO    ] 200
[2026-08-25 02:53:34,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:34,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:53:34,765.765 INFO    ] No update needed
[2026-08-25 02:53:34,767.767 INFO    ] Checking for camera pi updates...
[2026-08-25 02:53:34,805.805 INFO    ] 200
[2026-08-25 02:53:34,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:34,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:53:34,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:53:34,893.893 INFO    ] No camera update needed
[2026-08-25 02:53:34,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:53:34,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:53:34,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:53:34,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:53:36,951.951 INFO    ] ================================================
[2026-08-25 02:53:36,966.966 INFO    ] Launching Daemon at Tue Aug 25 02:53:36 IST 2026
[2026-08-25 02:53:36,976.976 INFO    ] ================================================
[2026-08-25 02:53:37,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:53:37
[2026-08-25 02:53:38,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:53:38,397.397 INFO    ] Initializing speech engine...
[2026-08-25 02:53:38,410.410 INFO    ] 2026-08-25 02:53:38
[2026-08-25 02:53:38,698.698 INFO    ] 2026-08-25 02:53:38
[2026-08-25 02:53:38,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:53:38,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:53:38,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:53:39,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:53:39,082.082 INFO    ] time= 25/08/2026 02:53:39
[2026-08-25 02:53:39,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:53:39,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:53:39,207.207 INFO    ] No existing commands found in stream
[2026-08-25 02:53:44,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:53:44,222.222 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 02:53:45,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:53:45,155.155 INFO    ] Checking for system updates...
[2026-08-25 02:53:45,190.190 INFO    ] 200
[2026-08-25 02:53:45,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:45,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:53:45,258.258 INFO    ] No update needed
[2026-08-25 02:53:45,260.260 INFO    ] Checking for camera pi updates...
[2026-08-25 02:53:45,301.301 INFO    ] 200
[2026-08-25 02:53:45,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:45,344.344 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:53:45,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:53:45,389.389 INFO    ] No camera update needed
[2026-08-25 02:53:45,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:53:45,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:53:45,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:53:45,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:53:47,444.444 INFO    ] ================================================
[2026-08-25 02:53:47,460.460 INFO    ] Launching Daemon at Tue Aug 25 02:53:47 IST 2026
[2026-08-25 02:53:47,470.470 INFO    ] ================================================
[2026-08-25 02:53:48,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:53:48
[2026-08-25 02:53:48,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:53:48,898.898 INFO    ] Initializing speech engine...
[2026-08-25 02:53:48,922.922 INFO    ] 2026-08-25 02:53:48
[2026-08-25 02:53:49,198.198 INFO    ] 2026-08-25 02:53:49
[2026-08-25 02:53:49,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:53:49,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:53:49,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:53:49,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:53:49,591.591 INFO    ] time= 25/08/2026 02:53:49
[2026-08-25 02:53:49,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:53:49,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:53:49,779.779 INFO    ] No existing commands found in stream
[2026-08-25 02:53:54,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:53:54,803.803 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 02:53:55,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:53:55,368.368 INFO    ] Checking for system updates...
[2026-08-25 02:53:55,406.406 INFO    ] 200
[2026-08-25 02:53:55,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:55,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:53:55,471.471 INFO    ] No update needed
[2026-08-25 02:53:55,474.474 INFO    ] Checking for camera pi updates...
[2026-08-25 02:53:55,509.509 INFO    ] 200
[2026-08-25 02:53:55,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:53:55,554.554 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:53:55,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:53:55,608.608 INFO    ] No camera update needed
[2026-08-25 02:53:55,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:53:55,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:53:55,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:53:55,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:53:57,665.665 INFO    ] ================================================
[2026-08-25 02:53:57,680.680 INFO    ] Launching Daemon at Tue Aug 25 02:53:57 IST 2026
[2026-08-25 02:53:57,691.691 INFO    ] ================================================
[2026-08-25 02:53:58,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:53:58
[2026-08-25 02:53:59,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:53:59,377.377 INFO    ] Initializing speech engine...
[2026-08-25 02:53:59,390.390 INFO    ] 2026-08-25 02:53:59
[2026-08-25 02:53:59,670.670 INFO    ] 2026-08-25 02:53:59
[2026-08-25 02:53:59,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:53:59,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:53:59,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:54:00,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:54:00,128.128 INFO    ] time= 25/08/2026 02:54:00
[2026-08-25 02:54:00,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:54:00,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:54:00,365.365 INFO    ] No existing commands found in stream
[2026-08-25 02:54:05,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:54:05,382.382 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 02:54:05,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:54:05,948.948 INFO    ] Checking for system updates...
[2026-08-25 02:54:05,983.983 INFO    ] 200
[2026-08-25 02:54:05,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:06,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:54:06,049.049 INFO    ] No update needed
[2026-08-25 02:54:06,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 02:54:06,084.084 INFO    ] 200
[2026-08-25 02:54:06,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:06,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:54:06,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:54:06,175.175 INFO    ] No camera update needed
[2026-08-25 02:54:06,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:54:06,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:54:06,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:54:06,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:54:08,230.230 INFO    ] ================================================
[2026-08-25 02:54:08,246.246 INFO    ] Launching Daemon at Tue Aug 25 02:54:08 IST 2026
[2026-08-25 02:54:08,256.256 INFO    ] ================================================
[2026-08-25 02:54:08,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:54:08
[2026-08-25 02:54:09,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:54:09,946.946 INFO    ] Initializing speech engine...
[2026-08-25 02:54:09,960.960 INFO    ] 2026-08-25 02:54:09
[2026-08-25 02:54:10,279.279 INFO    ] 2026-08-25 02:54:10
[2026-08-25 02:54:10,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:54:10,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:54:10,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:54:10,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:54:10,728.728 INFO    ] time= 25/08/2026 02:54:10
[2026-08-25 02:54:10,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:54:10,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:54:10,924.924 INFO    ] No existing commands found in stream
[2026-08-25 02:54:15,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:54:15,949.949 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 02:54:17,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:54:17,174.174 INFO    ] Checking for system updates...
[2026-08-25 02:54:17,217.217 INFO    ] 200
[2026-08-25 02:54:17,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:17,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:54:17,285.285 INFO    ] No update needed
[2026-08-25 02:54:17,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 02:54:17,324.324 INFO    ] 200
[2026-08-25 02:54:17,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:17,369.369 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:54:17,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:54:17,413.413 INFO    ] No camera update needed
[2026-08-25 02:54:17,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:54:17,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:54:17,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:54:17,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:54:19,472.472 INFO    ] ================================================
[2026-08-25 02:54:19,488.488 INFO    ] Launching Daemon at Tue Aug 25 02:54:19 IST 2026
[2026-08-25 02:54:19,498.498 INFO    ] ================================================
[2026-08-25 02:54:20,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:54:20
[2026-08-25 02:54:20,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:54:20,938.938 INFO    ] Initializing speech engine...
[2026-08-25 02:54:20,948.948 INFO    ] 2026-08-25 02:54:20
[2026-08-25 02:54:21,201.201 INFO    ] 2026-08-25 02:54:21
[2026-08-25 02:54:21,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:54:21,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:54:21,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:54:21,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:54:21,682.682 INFO    ] time= 25/08/2026 02:54:21
[2026-08-25 02:54:21,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:54:21,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:54:21,875.875 INFO    ] No existing commands found in stream
[2026-08-25 02:54:26,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:54:26,913.913 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 02:54:28,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:54:28,278.278 INFO    ] Checking for system updates...
[2026-08-25 02:54:28,314.314 INFO    ] 200
[2026-08-25 02:54:28,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:28,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:54:28,379.379 INFO    ] No update needed
[2026-08-25 02:54:28,381.381 INFO    ] Checking for camera pi updates...
[2026-08-25 02:54:28,415.415 INFO    ] 200
[2026-08-25 02:54:28,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:28,463.463 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:54:28,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:54:28,608.608 INFO    ] No camera update needed
[2026-08-25 02:54:28,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:54:28,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:54:28,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:54:28,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:54:30,661.661 INFO    ] ================================================
[2026-08-25 02:54:30,676.676 INFO    ] Launching Daemon at Tue Aug 25 02:54:30 IST 2026
[2026-08-25 02:54:30,687.687 INFO    ] ================================================
[2026-08-25 02:54:31,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:54:31
[2026-08-25 02:54:32,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:54:32,370.370 INFO    ] Initializing speech engine...
[2026-08-25 02:54:32,385.385 INFO    ] 2026-08-25 02:54:32
[2026-08-25 02:54:32,664.664 INFO    ] 2026-08-25 02:54:32
[2026-08-25 02:54:32,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:54:32,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:54:32,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:54:33,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:54:33,094.094 INFO    ] time= 25/08/2026 02:54:33
[2026-08-25 02:54:33,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:54:33,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:54:33,232.232 INFO    ] No existing commands found in stream
[2026-08-25 02:54:38,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:54:38,250.250 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 02:54:40,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:54:40,617.617 INFO    ] Checking for system updates...
[2026-08-25 02:54:40,657.657 INFO    ] 200
[2026-08-25 02:54:40,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:40,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:54:40,721.721 INFO    ] No update needed
[2026-08-25 02:54:40,723.723 INFO    ] Checking for camera pi updates...
[2026-08-25 02:54:40,757.757 INFO    ] 200
[2026-08-25 02:54:40,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:40,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:54:40,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:54:40,847.847 INFO    ] No camera update needed
[2026-08-25 02:54:40,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:54:40,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:54:40,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:54:40,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:54:42,903.903 INFO    ] ================================================
[2026-08-25 02:54:42,918.918 INFO    ] Launching Daemon at Tue Aug 25 02:54:42 IST 2026
[2026-08-25 02:54:42,930.930 INFO    ] ================================================
[2026-08-25 02:54:43,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:54:43
[2026-08-25 02:54:44,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:54:44,646.646 INFO    ] Initializing speech engine...
[2026-08-25 02:54:44,653.653 INFO    ] 2026-08-25 02:54:44
[2026-08-25 02:54:44,910.910 INFO    ] 2026-08-25 02:54:44
[2026-08-25 02:54:45,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:54:45,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:54:45,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:54:45,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:54:45,339.339 INFO    ] time= 25/08/2026 02:54:45
[2026-08-25 02:54:45,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:54:45,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:54:45,496.496 INFO    ] No existing commands found in stream
[2026-08-25 02:54:50,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:54:50,510.510 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 02:54:51,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:54:51,500.500 INFO    ] Checking for system updates...
[2026-08-25 02:54:51,536.536 INFO    ] 200
[2026-08-25 02:54:51,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:51,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:54:51,594.594 INFO    ] No update needed
[2026-08-25 02:54:51,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 02:54:51,629.629 INFO    ] 200
[2026-08-25 02:54:51,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:54:51,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:54:51,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:54:51,725.725 INFO    ] No camera update needed
[2026-08-25 02:54:51,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:54:51,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:54:51,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:54:51,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:54:53,779.779 INFO    ] ================================================
[2026-08-25 02:54:53,795.795 INFO    ] Launching Daemon at Tue Aug 25 02:54:53 IST 2026
[2026-08-25 02:54:53,806.806 INFO    ] ================================================
[2026-08-25 02:54:54,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:54:54
[2026-08-25 02:54:54,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:54:55,254.254 INFO    ] Initializing speech engine...
[2026-08-25 02:54:55,279.279 INFO    ] 2026-08-25 02:54:55
[2026-08-25 02:54:55,560.560 INFO    ] 2026-08-25 02:54:55
[2026-08-25 02:54:55,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:54:55,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:54:55,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:54:55,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:54:55,934.934 INFO    ] time= 25/08/2026 02:54:55
[2026-08-25 02:54:55,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:54:55,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:54:56,017.017 INFO    ] No existing commands found in stream
[2026-08-25 02:55:01,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:55:01,030.030 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 02:55:01,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:55:01,953.953 INFO    ] Checking for system updates...
[2026-08-25 02:55:02,037.037 INFO    ] 200
[2026-08-25 02:55:02,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:02,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:02,247.247 INFO    ] No update needed
[2026-08-25 02:55:02,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 02:55:02,346.346 INFO    ] 200
[2026-08-25 02:55:02,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:02,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:55:02,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:02,537.537 INFO    ] No camera update needed
[2026-08-25 02:55:02,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:55:02,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:55:02,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:55:02,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:55:04,608.608 INFO    ] ================================================
[2026-08-25 02:55:04,624.624 INFO    ] Launching Daemon at Tue Aug 25 02:55:04 IST 2026
[2026-08-25 02:55:04,635.635 INFO    ] ================================================
[2026-08-25 02:55:05,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:55:05
[2026-08-25 02:55:06,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:55:06,337.337 INFO    ] Initializing speech engine...
[2026-08-25 02:55:06,348.348 INFO    ] 2026-08-25 02:55:06
[2026-08-25 02:55:06,682.682 INFO    ] 2026-08-25 02:55:06
[2026-08-25 02:55:06,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:55:06,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:55:06,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:55:07,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:55:07,089.089 INFO    ] time= 25/08/2026 02:55:07
[2026-08-25 02:55:07,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:55:07,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:55:07,244.244 INFO    ] No existing commands found in stream
[2026-08-25 02:55:12,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:55:12,269.269 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 02:55:13,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:55:13,818.818 INFO    ] Checking for system updates...
[2026-08-25 02:55:13,860.860 INFO    ] 200
[2026-08-25 02:55:13,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:13,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:13,921.921 INFO    ] No update needed
[2026-08-25 02:55:13,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 02:55:13,959.959 INFO    ] 200
[2026-08-25 02:55:13,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:14,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:55:14,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:14,047.047 INFO    ] No camera update needed
[2026-08-25 02:55:14,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:55:14,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:55:14,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:55:14,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:55:16,101.101 INFO    ] ================================================
[2026-08-25 02:55:16,118.118 INFO    ] Launching Daemon at Tue Aug 25 02:55:16 IST 2026
[2026-08-25 02:55:16,130.130 INFO    ] ================================================
[2026-08-25 02:55:16,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:55:16
[2026-08-25 02:55:17,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:55:17,581.581 INFO    ] Initializing speech engine...
[2026-08-25 02:55:17,590.590 INFO    ] 2026-08-25 02:55:17
[2026-08-25 02:55:17,848.848 INFO    ] 2026-08-25 02:55:17
[2026-08-25 02:55:17,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:55:18,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:55:18,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:55:18,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:55:18,346.346 INFO    ] time= 25/08/2026 02:55:18
[2026-08-25 02:55:18,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:55:18,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:55:18,508.508 INFO    ] No existing commands found in stream
[2026-08-25 02:55:23,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:55:23,544.544 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 02:55:27,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:55:27,868.868 INFO    ] Checking for system updates...
[2026-08-25 02:55:27,905.905 INFO    ] 200
[2026-08-25 02:55:27,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:27,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:27,965.965 INFO    ] No update needed
[2026-08-25 02:55:27,967.967 INFO    ] Checking for camera pi updates...
[2026-08-25 02:55:28,002.002 INFO    ] 200
[2026-08-25 02:55:28,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:28,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:55:28,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:28,095.095 INFO    ] No camera update needed
[2026-08-25 02:55:28,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:55:28,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:55:28,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:55:28,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:55:30,153.153 INFO    ] ================================================
[2026-08-25 02:55:30,169.169 INFO    ] Launching Daemon at Tue Aug 25 02:55:30 IST 2026
[2026-08-25 02:55:30,180.180 INFO    ] ================================================
[2026-08-25 02:55:30,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:55:30
[2026-08-25 02:55:31,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:55:31,616.616 INFO    ] Initializing speech engine...
[2026-08-25 02:55:31,629.629 INFO    ] 2026-08-25 02:55:31
[2026-08-25 02:55:31,894.894 INFO    ] 2026-08-25 02:55:31
[2026-08-25 02:55:31,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:55:32,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:55:32,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:55:32,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:55:32,291.291 INFO    ] time= 25/08/2026 02:55:32
[2026-08-25 02:55:32,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:55:32,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:55:32,474.474 INFO    ] No existing commands found in stream
[2026-08-25 02:55:37,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:55:37,502.502 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 02:55:38,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:55:38,836.836 INFO    ] Checking for system updates...
[2026-08-25 02:55:38,871.871 INFO    ] 200
[2026-08-25 02:55:38,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:38,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:38,928.928 INFO    ] No update needed
[2026-08-25 02:55:38,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 02:55:38,963.963 INFO    ] 200
[2026-08-25 02:55:38,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:39,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:55:39,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:55:39,055.055 INFO    ] No camera update needed
[2026-08-25 02:55:39,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:55:39,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:55:39,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:55:39,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:55:41,114.114 INFO    ] ================================================
[2026-08-25 02:55:41,130.130 INFO    ] Launching Daemon at Tue Aug 25 02:55:41 IST 2026
[2026-08-25 02:55:41,142.142 INFO    ] ================================================
[2026-08-25 02:55:41,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:55:41
[2026-08-25 02:55:42,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:55:42,641.641 INFO    ] Initializing speech engine...
[2026-08-25 02:55:42,648.648 INFO    ] 2026-08-25 02:55:42
[2026-08-25 02:55:42,905.905 INFO    ] 2026-08-25 02:55:42
[2026-08-25 02:55:42,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:55:43,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:55:43,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:55:43,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:55:43,376.376 INFO    ] time= 25/08/2026 02:55:43
[2026-08-25 02:55:43,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:55:43,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:55:43,575.575 INFO    ] No existing commands found in stream
[2026-08-25 02:55:48,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:55:48,613.613 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 02:55:50,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:55:50,297.297 INFO    ] Checking for system updates...
[2026-08-25 02:55:50,334.334 INFO    ] 200
[2026-08-25 02:55:50,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:50,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:55:50,396.396 INFO    ] No update needed
[2026-08-25 02:55:50,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 02:55:50,437.437 INFO    ] 200
[2026-08-25 02:55:50,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:55:50,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:55:50,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:55:50,542.542 INFO    ] No camera update needed
[2026-08-25 02:55:50,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:55:50,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:55:50,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:55:50,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:55:52,604.604 INFO    ] ================================================
[2026-08-25 02:55:52,621.621 INFO    ] Launching Daemon at Tue Aug 25 02:55:52 IST 2026
[2026-08-25 02:55:52,633.633 INFO    ] ================================================
[2026-08-25 02:55:53,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:55:53
[2026-08-25 02:55:54,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:55:54,313.313 INFO    ] Initializing speech engine...
[2026-08-25 02:55:54,324.324 INFO    ] 2026-08-25 02:55:54
[2026-08-25 02:55:54,624.624 INFO    ] 2026-08-25 02:55:54
[2026-08-25 02:55:54,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:55:54,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:55:54,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:55:55,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:55:55,121.121 INFO    ] time= 25/08/2026 02:55:55
[2026-08-25 02:55:55,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:55:55,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:55:55,272.272 INFO    ] No existing commands found in stream
[2026-08-25 02:56:00,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:56:00,290.290 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 02:56:03,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:56:03,108.108 INFO    ] Checking for system updates...
[2026-08-25 02:56:03,143.143 INFO    ] 200
[2026-08-25 02:56:03,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:03,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:56:03,205.205 INFO    ] No update needed
[2026-08-25 02:56:03,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 02:56:03,240.240 INFO    ] 200
[2026-08-25 02:56:03,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:03,286.286 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:56:03,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:56:03,342.342 INFO    ] No camera update needed
[2026-08-25 02:56:03,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:56:03,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:56:03,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:56:03,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:56:05,397.397 INFO    ] ================================================
[2026-08-25 02:56:05,413.413 INFO    ] Launching Daemon at Tue Aug 25 02:56:05 IST 2026
[2026-08-25 02:56:05,423.423 INFO    ] ================================================
[2026-08-25 02:56:06,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:56:05
[2026-08-25 02:56:06,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:56:06,895.895 INFO    ] Initializing speech engine...
[2026-08-25 02:56:06,904.904 INFO    ] 2026-08-25 02:56:06
[2026-08-25 02:56:07,152.152 INFO    ] 2026-08-25 02:56:07
[2026-08-25 02:56:07,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:56:07,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:56:07,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:56:07,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:56:07,616.616 INFO    ] time= 25/08/2026 02:56:07
[2026-08-25 02:56:07,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:56:07,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:56:07,841.841 INFO    ] No existing commands found in stream
[2026-08-25 02:56:12,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:56:12,871.871 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 02:56:14,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:56:14,350.350 INFO    ] Checking for system updates...
[2026-08-25 02:56:14,388.388 INFO    ] 200
[2026-08-25 02:56:14,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:14,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:56:14,451.451 INFO    ] No update needed
[2026-08-25 02:56:14,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 02:56:14,488.488 INFO    ] 200
[2026-08-25 02:56:14,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:14,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:56:14,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:56:14,574.574 INFO    ] No camera update needed
[2026-08-25 02:56:14,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:56:14,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:56:14,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:56:14,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:56:16,631.631 INFO    ] ================================================
[2026-08-25 02:56:16,646.646 INFO    ] Launching Daemon at Tue Aug 25 02:56:16 IST 2026
[2026-08-25 02:56:16,656.656 INFO    ] ================================================
[2026-08-25 02:56:17,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:56:17
[2026-08-25 02:56:17,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:56:18,077.077 INFO    ] Initializing speech engine...
[2026-08-25 02:56:18,083.083 INFO    ] 2026-08-25 02:56:18
[2026-08-25 02:56:18,327.327 INFO    ] 2026-08-25 02:56:18
[2026-08-25 02:56:18,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:56:18,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:56:18,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:56:18,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:56:18,827.827 INFO    ] time= 25/08/2026 02:56:18
[2026-08-25 02:56:18,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:56:18,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:56:19,007.007 INFO    ] No existing commands found in stream
[2026-08-25 02:56:24,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:56:24,037.037 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 02:56:26,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:56:26,417.417 INFO    ] Checking for system updates...
[2026-08-25 02:56:26,452.452 INFO    ] 200
[2026-08-25 02:56:26,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:26,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:56:26,511.511 INFO    ] No update needed
[2026-08-25 02:56:26,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 02:56:26,546.546 INFO    ] 200
[2026-08-25 02:56:26,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:26,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:56:26,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:56:26,644.644 INFO    ] No camera update needed
[2026-08-25 02:56:26,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:56:26,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:56:26,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:56:26,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:56:28,698.698 INFO    ] ================================================
[2026-08-25 02:56:28,713.713 INFO    ] Launching Daemon at Tue Aug 25 02:56:28 IST 2026
[2026-08-25 02:56:28,723.723 INFO    ] ================================================
[2026-08-25 02:56:29,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:56:29
[2026-08-25 02:56:29,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:56:30,153.153 INFO    ] Initializing speech engine...
[2026-08-25 02:56:30,158.158 INFO    ] 2026-08-25 02:56:30
[2026-08-25 02:56:30,417.417 INFO    ] 2026-08-25 02:56:30
[2026-08-25 02:56:30,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:56:30,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:56:30,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:56:30,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:56:30,876.876 INFO    ] time= 25/08/2026 02:56:30
[2026-08-25 02:56:30,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:56:30,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:56:31,095.095 INFO    ] No existing commands found in stream
[2026-08-25 02:56:36,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:56:36,123.123 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 02:56:39,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:56:39,519.519 INFO    ] Checking for system updates...
[2026-08-25 02:56:39,557.557 INFO    ] 200
[2026-08-25 02:56:39,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:39,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:56:39,620.620 INFO    ] No update needed
[2026-08-25 02:56:39,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 02:56:39,656.656 INFO    ] 200
[2026-08-25 02:56:39,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:39,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:56:39,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:56:39,746.746 INFO    ] No camera update needed
[2026-08-25 02:56:39,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:56:39,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:56:39,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:56:39,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:56:41,804.804 INFO    ] ================================================
[2026-08-25 02:56:41,819.819 INFO    ] Launching Daemon at Tue Aug 25 02:56:41 IST 2026
[2026-08-25 02:56:41,830.830 INFO    ] ================================================
[2026-08-25 02:56:42,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:56:42
[2026-08-25 02:56:43,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:56:43,284.284 INFO    ] Initializing speech engine...
[2026-08-25 02:56:43,291.291 INFO    ] 2026-08-25 02:56:43
[2026-08-25 02:56:43,551.551 INFO    ] 2026-08-25 02:56:43
[2026-08-25 02:56:43,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:56:43,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:56:43,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:56:43,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:56:44,040.040 INFO    ] time= 25/08/2026 02:56:43
[2026-08-25 02:56:44,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:56:44,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:56:44,222.222 INFO    ] No existing commands found in stream
[2026-08-25 02:56:49,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:56:49,255.255 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 02:56:50,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:56:50,010.010 INFO    ] Checking for system updates...
[2026-08-25 02:56:50,062.062 INFO    ] 200
[2026-08-25 02:56:50,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:50,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:56:50,131.131 INFO    ] No update needed
[2026-08-25 02:56:50,134.134 INFO    ] Checking for camera pi updates...
[2026-08-25 02:56:50,171.171 INFO    ] 200
[2026-08-25 02:56:50,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:56:50,232.232 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:56:50,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:56:50,280.280 INFO    ] No camera update needed
[2026-08-25 02:56:50,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:56:50,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:56:50,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:56:50,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:56:52,336.336 INFO    ] ================================================
[2026-08-25 02:56:52,351.351 INFO    ] Launching Daemon at Tue Aug 25 02:56:52 IST 2026
[2026-08-25 02:56:52,362.362 INFO    ] ================================================
[2026-08-25 02:56:52,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:56:52
[2026-08-25 02:56:53,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:56:53,862.862 INFO    ] Initializing speech engine...
[2026-08-25 02:56:53,868.868 INFO    ] 2026-08-25 02:56:53
[2026-08-25 02:56:54,143.143 INFO    ] 2026-08-25 02:56:54
[2026-08-25 02:56:54,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:56:54,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:56:54,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:56:54,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:56:54,638.638 INFO    ] time= 25/08/2026 02:56:54
[2026-08-25 02:56:54,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:56:54,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:56:54,838.838 INFO    ] No existing commands found in stream
[2026-08-25 02:56:59,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:56:59,867.867 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 02:57:03,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:57:03,061.061 INFO    ] Checking for system updates...
[2026-08-25 02:57:03,098.098 INFO    ] 200
[2026-08-25 02:57:03,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:03,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:57:03,157.157 INFO    ] No update needed
[2026-08-25 02:57:03,160.160 INFO    ] Checking for camera pi updates...
[2026-08-25 02:57:03,196.196 INFO    ] 200
[2026-08-25 02:57:03,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:03,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:57:03,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:57:03,285.285 INFO    ] No camera update needed
[2026-08-25 02:57:03,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:57:03,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:57:03,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:57:03,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:57:05,343.343 INFO    ] ================================================
[2026-08-25 02:57:05,358.358 INFO    ] Launching Daemon at Tue Aug 25 02:57:05 IST 2026
[2026-08-25 02:57:05,370.370 INFO    ] ================================================
[2026-08-25 02:57:05,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:57:05
[2026-08-25 02:57:06,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:57:06,822.822 INFO    ] Initializing speech engine...
[2026-08-25 02:57:06,846.846 INFO    ] 2026-08-25 02:57:06
[2026-08-25 02:57:07,119.119 INFO    ] 2026-08-25 02:57:07
[2026-08-25 02:57:07,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:57:07,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:57:07,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:57:07,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:57:07,517.517 INFO    ] time= 25/08/2026 02:57:07
[2026-08-25 02:57:07,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:57:07,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:57:07,684.684 INFO    ] No existing commands found in stream
[2026-08-25 02:57:12,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:57:12,718.718 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 02:57:13,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:57:13,478.478 INFO    ] Checking for system updates...
[2026-08-25 02:57:13,515.515 INFO    ] 200
[2026-08-25 02:57:13,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:13,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:13,572.572 INFO    ] No update needed
[2026-08-25 02:57:13,574.574 INFO    ] Checking for camera pi updates...
[2026-08-25 02:57:13,607.607 INFO    ] 200
[2026-08-25 02:57:13,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:13,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:57:13,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:13,701.701 INFO    ] No camera update needed
[2026-08-25 02:57:13,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:57:13,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:57:13,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:57:13,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:57:15,757.757 INFO    ] ================================================
[2026-08-25 02:57:15,773.773 INFO    ] Launching Daemon at Tue Aug 25 02:57:15 IST 2026
[2026-08-25 02:57:15,784.784 INFO    ] ================================================
[2026-08-25 02:57:16,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:57:16
[2026-08-25 02:57:16,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:57:17,210.210 INFO    ] Initializing speech engine...
[2026-08-25 02:57:17,219.219 INFO    ] 2026-08-25 02:57:17
[2026-08-25 02:57:17,466.466 INFO    ] 2026-08-25 02:57:17
[2026-08-25 02:57:17,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:57:17,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:57:17,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:57:17,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:57:17,935.935 INFO    ] time= 25/08/2026 02:57:17
[2026-08-25 02:57:17,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:57:18,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:57:18,121.121 INFO    ] No existing commands found in stream
[2026-08-25 02:57:23,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:57:23,153.153 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 02:57:25,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:57:25,988.988 INFO    ] Checking for system updates...
[2026-08-25 02:57:26,027.027 INFO    ] 200
[2026-08-25 02:57:26,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:26,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:26,086.086 INFO    ] No update needed
[2026-08-25 02:57:26,088.088 INFO    ] Checking for camera pi updates...
[2026-08-25 02:57:26,131.131 INFO    ] 200
[2026-08-25 02:57:26,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:26,180.180 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:57:26,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:26,228.228 INFO    ] No camera update needed
[2026-08-25 02:57:26,230.230 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:57:26,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:57:26,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:57:26,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:57:28,283.283 INFO    ] ================================================
[2026-08-25 02:57:28,298.298 INFO    ] Launching Daemon at Tue Aug 25 02:57:28 IST 2026
[2026-08-25 02:57:28,309.309 INFO    ] ================================================
[2026-08-25 02:57:28,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:57:28
[2026-08-25 02:57:29,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:57:29,944.944 INFO    ] Initializing speech engine...
[2026-08-25 02:57:29,955.955 INFO    ] 2026-08-25 02:57:29
[2026-08-25 02:57:30,269.269 INFO    ] 2026-08-25 02:57:30
[2026-08-25 02:57:30,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:57:30,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:57:30,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:57:30,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:57:30,725.725 INFO    ] time= 25/08/2026 02:57:30
[2026-08-25 02:57:30,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:57:30,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:57:30,917.917 INFO    ] No existing commands found in stream
[2026-08-25 02:57:35,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:57:35,940.940 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 02:57:38,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:57:38,239.239 INFO    ] Checking for system updates...
[2026-08-25 02:57:38,276.276 INFO    ] 200
[2026-08-25 02:57:38,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:38,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:38,335.335 INFO    ] No update needed
[2026-08-25 02:57:38,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 02:57:38,372.372 INFO    ] 200
[2026-08-25 02:57:38,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:38,420.420 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:57:38,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:38,466.466 INFO    ] No camera update needed
[2026-08-25 02:57:38,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:57:38,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:57:38,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:57:38,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:57:40,527.527 INFO    ] ================================================
[2026-08-25 02:57:40,543.543 INFO    ] Launching Daemon at Tue Aug 25 02:57:40 IST 2026
[2026-08-25 02:57:40,554.554 INFO    ] ================================================
[2026-08-25 02:57:41,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:57:41
[2026-08-25 02:57:41,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:57:41,979.979 INFO    ] Initializing speech engine...
[2026-08-25 02:57:41,988.988 INFO    ] 2026-08-25 02:57:41
[2026-08-25 02:57:42,242.242 INFO    ] 2026-08-25 02:57:42
[2026-08-25 02:57:42,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:57:42,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:57:42,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:57:42,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:57:42,621.621 INFO    ] time= 25/08/2026 02:57:42
[2026-08-25 02:57:42,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:57:42,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:57:42,813.813 INFO    ] No existing commands found in stream
[2026-08-25 02:57:47,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:57:47,837.837 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 02:57:48,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:57:48,481.481 INFO    ] Checking for system updates...
[2026-08-25 02:57:48,517.517 INFO    ] 200
[2026-08-25 02:57:48,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:48,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:57:48,574.574 INFO    ] No update needed
[2026-08-25 02:57:48,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 02:57:48,614.614 INFO    ] 200
[2026-08-25 02:57:48,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:48,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:57:48,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:57:48,701.701 INFO    ] No camera update needed
[2026-08-25 02:57:48,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:57:48,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:57:48,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:57:48,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:57:50,760.760 INFO    ] ================================================
[2026-08-25 02:57:50,776.776 INFO    ] Launching Daemon at Tue Aug 25 02:57:50 IST 2026
[2026-08-25 02:57:50,787.787 INFO    ] ================================================
[2026-08-25 02:57:51,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:57:51
[2026-08-25 02:57:52,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:57:52,439.439 INFO    ] Initializing speech engine...
[2026-08-25 02:57:52,450.450 INFO    ] 2026-08-25 02:57:52
[2026-08-25 02:57:52,730.730 INFO    ] 2026-08-25 02:57:52
[2026-08-25 02:57:52,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:57:53,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:57:53,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:57:53,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:57:53,243.243 INFO    ] time= 25/08/2026 02:57:53
[2026-08-25 02:57:53,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:57:53,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:57:53,431.431 INFO    ] No existing commands found in stream
[2026-08-25 02:57:58,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:57:58,466.466 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 02:57:59,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:57:59,041.041 INFO    ] Checking for system updates...
[2026-08-25 02:57:59,084.084 INFO    ] 200
[2026-08-25 02:57:59,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:59,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:59,141.141 INFO    ] No update needed
[2026-08-25 02:57:59,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 02:57:59,177.177 INFO    ] 200
[2026-08-25 02:57:59,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:57:59,221.221 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:57:59,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:57:59,265.265 INFO    ] No camera update needed
[2026-08-25 02:57:59,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:57:59,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:57:59,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:57:59,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:58:01,341.341 INFO    ] ================================================
[2026-08-25 02:58:01,373.373 INFO    ] Launching Daemon at Tue Aug 25 02:58:01 IST 2026
[2026-08-25 02:58:01,390.390 INFO    ] ================================================
[2026-08-25 02:58:02,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:58:02
[2026-08-25 02:58:02,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:58:03,016.016 INFO    ] Initializing speech engine...
[2026-08-25 02:58:03,024.024 INFO    ] 2026-08-25 02:58:03
[2026-08-25 02:58:03,325.325 INFO    ] 2026-08-25 02:58:03
[2026-08-25 02:58:03,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:58:03,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:58:03,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:58:03,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:58:03,693.693 INFO    ] time= 25/08/2026 02:58:03
[2026-08-25 02:58:03,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:58:03,704.704 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:58:03,777.777 INFO    ] No existing commands found in stream
[2026-08-25 02:58:08,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:58:08,791.791 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 02:58:10,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 02:58:10,329.329 INFO    ] Checking for system updates...
[2026-08-25 02:58:10,365.365 INFO    ] 200
[2026-08-25 02:58:10,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:10,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:58:10,423.423 INFO    ] No update needed
[2026-08-25 02:58:10,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 02:58:10,460.460 INFO    ] 200
[2026-08-25 02:58:10,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:10,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:58:10,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:58:10,547.547 INFO    ] No camera update needed
[2026-08-25 02:58:10,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:58:10,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:58:10,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:58:10,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:58:12,602.602 INFO    ] ================================================
[2026-08-25 02:58:12,618.618 INFO    ] Launching Daemon at Tue Aug 25 02:58:12 IST 2026
[2026-08-25 02:58:12,629.629 INFO    ] ================================================
[2026-08-25 02:58:13,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:58:13
[2026-08-25 02:58:13,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:58:14,090.090 INFO    ] Initializing speech engine...
[2026-08-25 02:58:14,100.100 INFO    ] 2026-08-25 02:58:14
[2026-08-25 02:58:14,363.363 INFO    ] 2026-08-25 02:58:14
[2026-08-25 02:58:14,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:58:14,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:58:14,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:58:14,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:58:14,837.837 INFO    ] time= 25/08/2026 02:58:14
[2026-08-25 02:58:14,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:58:14,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:58:15,028.028 INFO    ] No existing commands found in stream
[2026-08-25 02:58:20,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:58:20,052.052 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 02:58:22,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 02:58:22,998.998 INFO    ] Checking for system updates...
[2026-08-25 02:58:23,034.034 INFO    ] 200
[2026-08-25 02:58:23,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:23,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:58:23,093.093 INFO    ] No update needed
[2026-08-25 02:58:23,096.096 INFO    ] Checking for camera pi updates...
[2026-08-25 02:58:23,135.135 INFO    ] 200
[2026-08-25 02:58:23,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:23,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:58:23,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:58:23,227.227 INFO    ] No camera update needed
[2026-08-25 02:58:23,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:58:23,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:58:23,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:58:23,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:58:25,284.284 INFO    ] ================================================
[2026-08-25 02:58:25,300.300 INFO    ] Launching Daemon at Tue Aug 25 02:58:25 IST 2026
[2026-08-25 02:58:25,312.312 INFO    ] ================================================
[2026-08-25 02:58:25,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:58:25
[2026-08-25 02:58:26,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:58:26,996.996 INFO    ] Initializing speech engine...
[2026-08-25 02:58:27,008.008 INFO    ] 2026-08-25 02:58:26
[2026-08-25 02:58:27,302.302 INFO    ] 2026-08-25 02:58:27
[2026-08-25 02:58:27,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:58:27,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:58:27,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:58:27,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:58:27,773.773 INFO    ] time= 25/08/2026 02:58:27
[2026-08-25 02:58:27,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:58:27,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:58:27,956.956 INFO    ] No existing commands found in stream
[2026-08-25 02:58:32,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:58:32,992.992 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 02:58:33,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:58:33,670.670 INFO    ] Checking for system updates...
[2026-08-25 02:58:33,714.714 INFO    ] 200
[2026-08-25 02:58:33,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:33,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:58:33,777.777 INFO    ] No update needed
[2026-08-25 02:58:33,779.779 INFO    ] Checking for camera pi updates...
[2026-08-25 02:58:33,813.813 INFO    ] 200
[2026-08-25 02:58:33,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:33,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:58:33,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:58:33,905.905 INFO    ] No camera update needed
[2026-08-25 02:58:33,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:58:33,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:58:33,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:58:33,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:58:35,959.959 INFO    ] ================================================
[2026-08-25 02:58:35,975.975 INFO    ] Launching Daemon at Tue Aug 25 02:58:35 IST 2026
[2026-08-25 02:58:35,985.985 INFO    ] ================================================
[2026-08-25 02:58:36,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:58:36
[2026-08-25 02:58:37,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:58:37,673.673 INFO    ] Initializing speech engine...
[2026-08-25 02:58:37,681.681 INFO    ] 2026-08-25 02:58:37
[2026-08-25 02:58:37,964.964 INFO    ] 2026-08-25 02:58:37
[2026-08-25 02:58:38,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:58:38,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:58:38,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:58:38,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:58:38,437.437 INFO    ] time= 25/08/2026 02:58:38
[2026-08-25 02:58:38,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:58:38,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:58:38,653.653 INFO    ] No existing commands found in stream
[2026-08-25 02:58:43,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:58:43,684.684 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 02:58:45,198.198 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:58:45,201.201 INFO    ] Checking for system updates...
[2026-08-25 02:58:45,245.245 INFO    ] 200
[2026-08-25 02:58:45,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:45,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:58:45,315.315 INFO    ] No update needed
[2026-08-25 02:58:45,318.318 INFO    ] Checking for camera pi updates...
[2026-08-25 02:58:45,353.353 INFO    ] 200
[2026-08-25 02:58:45,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:45,396.396 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:58:45,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:58:45,550.550 INFO    ] No camera update needed
[2026-08-25 02:58:45,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:58:45,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:58:45,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:58:45,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:58:47,610.610 INFO    ] ================================================
[2026-08-25 02:58:47,627.627 INFO    ] Launching Daemon at Tue Aug 25 02:58:47 IST 2026
[2026-08-25 02:58:47,637.637 INFO    ] ================================================
[2026-08-25 02:58:48,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:58:48
[2026-08-25 02:58:48,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:58:49,102.102 INFO    ] Initializing speech engine...
[2026-08-25 02:58:49,109.109 INFO    ] 2026-08-25 02:58:49
[2026-08-25 02:58:49,371.371 INFO    ] 2026-08-25 02:58:49
[2026-08-25 02:58:49,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:58:49,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:58:49,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:58:49,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:58:49,836.836 INFO    ] time= 25/08/2026 02:58:49
[2026-08-25 02:58:49,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:58:49,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:58:50,052.052 INFO    ] No existing commands found in stream
[2026-08-25 02:58:55,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:58:55,082.082 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 02:58:57,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 02:58:57,838.838 INFO    ] Checking for system updates...
[2026-08-25 02:58:57,873.873 INFO    ] 200
[2026-08-25 02:58:57,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:57,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:58:57,941.941 INFO    ] No update needed
[2026-08-25 02:58:57,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 02:58:57,981.981 INFO    ] 200
[2026-08-25 02:58:57,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:58:58,024.024 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:58:58,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:58:58,070.070 INFO    ] No camera update needed
[2026-08-25 02:58:58,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:58:58,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:58:58,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:58:58,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:59:00,127.127 INFO    ] ================================================
[2026-08-25 02:59:00,142.142 INFO    ] Launching Daemon at Tue Aug 25 02:59:00 IST 2026
[2026-08-25 02:59:00,153.153 INFO    ] ================================================
[2026-08-25 02:59:00,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:59:00
[2026-08-25 02:59:01,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:59:01,776.776 INFO    ] Initializing speech engine...
[2026-08-25 02:59:01,785.785 INFO    ] 2026-08-25 02:59:01
[2026-08-25 02:59:02,091.091 INFO    ] 2026-08-25 02:59:02
[2026-08-25 02:59:02,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:59:02,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:59:02,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:59:02,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:59:02,536.536 INFO    ] time= 25/08/2026 02:59:02
[2026-08-25 02:59:02,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:59:02,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:59:02,680.680 INFO    ] No existing commands found in stream
[2026-08-25 02:59:07,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:59:07,714.714 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 02:59:10,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:59:10,899.899 INFO    ] Checking for system updates...
[2026-08-25 02:59:10,937.937 INFO    ] 200
[2026-08-25 02:59:10,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:11,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:59:11,016.016 INFO    ] No update needed
[2026-08-25 02:59:11,018.018 INFO    ] Checking for camera pi updates...
[2026-08-25 02:59:11,061.061 INFO    ] 200
[2026-08-25 02:59:11,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:11,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:59:11,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:59:11,153.153 INFO    ] No camera update needed
[2026-08-25 02:59:11,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:59:11,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:59:11,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:59:11,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:59:13,211.211 INFO    ] ================================================
[2026-08-25 02:59:13,227.227 INFO    ] Launching Daemon at Tue Aug 25 02:59:13 IST 2026
[2026-08-25 02:59:13,237.237 INFO    ] ================================================
[2026-08-25 02:59:13,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:59:13
[2026-08-25 02:59:14,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:59:14,691.691 INFO    ] Initializing speech engine...
[2026-08-25 02:59:14,700.700 INFO    ] 2026-08-25 02:59:14
[2026-08-25 02:59:14,960.960 INFO    ] 2026-08-25 02:59:14
[2026-08-25 02:59:15,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:59:15,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:59:15,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:59:15,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:59:15,444.444 INFO    ] time= 25/08/2026 02:59:15
[2026-08-25 02:59:15,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:59:15,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:59:15,655.655 INFO    ] No existing commands found in stream
[2026-08-25 02:59:20,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:59:20,673.673 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 02:59:23,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:59:23,522.522 INFO    ] Checking for system updates...
[2026-08-25 02:59:23,558.558 INFO    ] 200
[2026-08-25 02:59:23,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:23,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:59:23,621.621 INFO    ] No update needed
[2026-08-25 02:59:23,623.623 INFO    ] Checking for camera pi updates...
[2026-08-25 02:59:23,656.656 INFO    ] 200
[2026-08-25 02:59:23,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:23,704.704 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:59:23,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:59:23,748.748 INFO    ] No camera update needed
[2026-08-25 02:59:23,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:59:23,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:59:23,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:59:23,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:59:25,803.803 INFO    ] ================================================
[2026-08-25 02:59:25,818.818 INFO    ] Launching Daemon at Tue Aug 25 02:59:25 IST 2026
[2026-08-25 02:59:25,828.828 INFO    ] ================================================
[2026-08-25 02:59:26,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:59:26
[2026-08-25 02:59:26,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:59:27,256.256 INFO    ] Initializing speech engine...
[2026-08-25 02:59:27,265.265 INFO    ] 2026-08-25 02:59:27
[2026-08-25 02:59:27,556.556 INFO    ] 2026-08-25 02:59:27
[2026-08-25 02:59:27,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:59:27,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:59:27,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:59:28,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:59:28,090.090 INFO    ] time= 25/08/2026 02:59:28
[2026-08-25 02:59:28,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:59:28,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:59:28,244.244 INFO    ] No existing commands found in stream
[2026-08-25 02:59:33,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:59:33,262.262 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 02:59:34,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 02:59:34,018.018 INFO    ] Checking for system updates...
[2026-08-25 02:59:34,058.058 INFO    ] 200
[2026-08-25 02:59:34,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:34,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:59:34,123.123 INFO    ] No update needed
[2026-08-25 02:59:34,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 02:59:34,160.160 INFO    ] 200
[2026-08-25 02:59:34,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:34,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:59:34,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 02:59:34,255.255 INFO    ] No camera update needed
[2026-08-25 02:59:34,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:59:34,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:59:34,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:59:34,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:59:36,310.310 INFO    ] ================================================
[2026-08-25 02:59:36,325.325 INFO    ] Launching Daemon at Tue Aug 25 02:59:36 IST 2026
[2026-08-25 02:59:36,336.336 INFO    ] ================================================
[2026-08-25 02:59:36,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:59:36
[2026-08-25 02:59:37,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:59:37,924.924 INFO    ] Initializing speech engine...
[2026-08-25 02:59:37,936.936 INFO    ] 2026-08-25 02:59:37
[2026-08-25 02:59:38,212.212 INFO    ] 2026-08-25 02:59:38
[2026-08-25 02:59:38,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:59:38,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:59:38,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:59:38,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:59:38,697.697 INFO    ] time= 25/08/2026 02:59:38
[2026-08-25 02:59:38,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:59:38,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:59:38,910.910 INFO    ] No existing commands found in stream
[2026-08-25 02:59:43,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:59:43,931.931 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 02:59:47,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 02:59:47,733.733 INFO    ] Checking for system updates...
[2026-08-25 02:59:47,770.770 INFO    ] 200
[2026-08-25 02:59:47,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:47,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:59:47,828.828 INFO    ] No update needed
[2026-08-25 02:59:47,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 02:59:47,867.867 INFO    ] 200
[2026-08-25 02:59:47,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:47,910.910 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:59:47,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:59:47,952.952 INFO    ] No camera update needed
[2026-08-25 02:59:47,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:59:47,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:59:47,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:59:47,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 02:59:50,007.007 INFO    ] ================================================
[2026-08-25 02:59:50,022.022 INFO    ] Launching Daemon at Tue Aug 25 02:59:50 IST 2026
[2026-08-25 02:59:50,033.033 INFO    ] ================================================
[2026-08-25 02:59:50,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 02:59:50
[2026-08-25 02:59:51,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 02:59:51,469.469 INFO    ] Initializing speech engine...
[2026-08-25 02:59:51,492.492 INFO    ] 2026-08-25 02:59:51
[2026-08-25 02:59:51,747.747 INFO    ] 2026-08-25 02:59:51
[2026-08-25 02:59:51,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 02:59:51,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 02:59:52,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 02:59:52,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 02:59:52,189.189 INFO    ] time= 25/08/2026 02:59:52
[2026-08-25 02:59:52,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 02:59:52,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 02:59:52,432.432 INFO    ] No existing commands found in stream
[2026-08-25 02:59:57,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 02:59:57,462.462 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 02:59:59,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 02:59:59,078.078 INFO    ] Checking for system updates...
[2026-08-25 02:59:59,113.113 INFO    ] 200
[2026-08-25 02:59:59,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:59,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:59:59,170.170 INFO    ] No update needed
[2026-08-25 02:59:59,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 02:59:59,208.208 INFO    ] 200
[2026-08-25 02:59:59,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 02:59:59,251.251 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 02:59:59,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 02:59:59,298.298 INFO    ] No camera update needed
[2026-08-25 02:59:59,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 02:59:59,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 02:59:59,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 02:59:59,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:00:01,480.480 INFO    ] ================================================
[2026-08-25 03:00:01,594.594 INFO    ] Launching Daemon at Tue Aug 25 03:00:01 IST 2026
[2026-08-25 03:00:01,680.680 INFO    ] ================================================
[2026-08-25 03:00:03,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:00:03
[2026-08-25 03:00:05,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:00:06,065.065 INFO    ] Initializing speech engine...
[2026-08-25 03:00:06,073.073 INFO    ] 2026-08-25 03:00:06
[2026-08-25 03:00:06,356.356 INFO    ] 2026-08-25 03:00:06
[2026-08-25 03:00:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:00:06,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:00:06,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:00:06,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:00:06,771.771 INFO    ] time= 25/08/2026 03:00:06
[2026-08-25 03:00:06,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:00:06,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:00:06,961.961 INFO    ] No existing commands found in stream
[2026-08-25 03:00:11,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:00:11,996.996 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 03:00:16,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:00:16,027.027 INFO    ] Checking for system updates...
[2026-08-25 03:00:16,066.066 INFO    ] 200
[2026-08-25 03:00:16,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:00:16,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:00:16,123.123 INFO    ] No update needed
[2026-08-25 03:00:16,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 03:00:16,159.159 INFO    ] 200
[2026-08-25 03:00:16,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:00:16,206.206 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:00:16,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:00:16,246.246 INFO    ] No camera update needed
[2026-08-25 03:00:16,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:00:16,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:00:16,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:00:16,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:00:18,300.300 INFO    ] ================================================
[2026-08-25 03:00:18,316.316 INFO    ] Launching Daemon at Tue Aug 25 03:00:18 IST 2026
[2026-08-25 03:00:18,326.326 INFO    ] ================================================
[2026-08-25 03:00:18,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:00:18
[2026-08-25 03:00:19,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:00:19,895.895 INFO    ] Initializing speech engine...
[2026-08-25 03:00:19,904.904 INFO    ] 2026-08-25 03:00:19
[2026-08-25 03:00:20,167.167 INFO    ] 2026-08-25 03:00:20
[2026-08-25 03:00:20,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:00:20,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:00:20,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:00:20,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:00:20,578.578 INFO    ] time= 25/08/2026 03:00:20
[2026-08-25 03:00:20,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:00:20,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:00:20,731.731 INFO    ] No existing commands found in stream
[2026-08-25 03:00:25,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:00:25,743.743 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 03:00:27,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:00:27,480.480 INFO    ] Checking for system updates...
[2026-08-25 03:00:27,515.515 INFO    ] 200
[2026-08-25 03:00:27,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:00:27,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:00:27,572.572 INFO    ] No update needed
[2026-08-25 03:00:27,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 03:00:27,611.611 INFO    ] 200
[2026-08-25 03:00:27,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:00:27,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:00:27,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:00:27,702.702 INFO    ] No camera update needed
[2026-08-25 03:00:27,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:00:27,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:00:27,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:00:27,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:00:29,758.758 INFO    ] ================================================
[2026-08-25 03:00:29,774.774 INFO    ] Launching Daemon at Tue Aug 25 03:00:29 IST 2026
[2026-08-25 03:00:29,785.785 INFO    ] ================================================
[2026-08-25 03:00:30,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:00:30
[2026-08-25 03:00:31,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:00:31,406.406 INFO    ] Initializing speech engine...
[2026-08-25 03:00:31,415.415 INFO    ] 2026-08-25 03:00:31
[2026-08-25 03:00:31,717.717 INFO    ] 2026-08-25 03:00:31
[2026-08-25 03:00:31,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:00:31,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:00:32,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:00:32,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:00:32,176.176 INFO    ] time= 25/08/2026 03:00:32
[2026-08-25 03:00:32,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:00:32,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:00:32,434.434 INFO    ] No existing commands found in stream
[2026-08-25 03:00:37,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:00:37,467.467 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 03:00:40,063.063 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-25 03:00:40,087.087 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d525d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-08-25 03:00:40,095.095 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d525d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-08-25 03:00:40,103.103 INFO    ] None
[2026-08-25 03:00:40,106.106 INFO    ] Checking for system updates...
[2026-08-25 03:00:40,146.146 INFO    ] 200
[2026-08-25 03:00:40,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:00:40,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:00:40,203.203 INFO    ] No update needed
[2026-08-25 03:00:40,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 03:00:40,238.238 INFO    ] 200
[2026-08-25 03:00:40,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:00:40,281.281 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:00:40,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:00:40,328.328 INFO    ] No camera update needed
[2026-08-25 03:00:40,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:00:40,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:00:40,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:00:40,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:00:42,381.381 INFO    ] ================================================
[2026-08-25 03:00:42,396.396 INFO    ] Launching Daemon at Tue Aug 25 03:00:42 IST 2026
[2026-08-25 03:00:42,406.406 INFO    ] ================================================
[2026-08-25 03:00:42,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:00:42
[2026-08-25 03:00:43,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:00:43,810.810 INFO    ] Initializing speech engine...
[2026-08-25 03:00:43,838.838 INFO    ] 2026-08-25 03:00:43
[2026-08-25 03:00:44,108.108 INFO    ] 2026-08-25 03:00:44
[2026-08-25 03:00:44,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:00:44,233.233 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 03:00:44,379.379 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:00:44,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:00:44,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:00:44,485.485 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:00:44,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:00:46,555.555 INFO    ] ================================================
[2026-08-25 03:00:46,570.570 INFO    ] Launching Daemon at Tue Aug 25 03:00:46 IST 2026
[2026-08-25 03:00:46,580.580 INFO    ] ================================================
[2026-08-25 03:00:47,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:00:47
[2026-08-25 03:00:47,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:00:48,031.031 INFO    ] Initializing speech engine...
[2026-08-25 03:00:48,052.052 INFO    ] 2026-08-25 03:00:48
[2026-08-25 03:00:48,318.318 INFO    ] 2026-08-25 03:00:48
[2026-08-25 03:00:48,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:00:48,481.481 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 03:00:48,605.605 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:00:48,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:00:48,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:00:48,716.716 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:00:48,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:00:50,788.788 INFO    ] ================================================
[2026-08-25 03:00:50,803.803 INFO    ] Launching Daemon at Tue Aug 25 03:00:50 IST 2026
[2026-08-25 03:00:50,813.813 INFO    ] ================================================
[2026-08-25 03:00:51,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:00:51
[2026-08-25 03:00:51,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:00:52,273.273 INFO    ] Initializing speech engine...
[2026-08-25 03:00:52,286.286 INFO    ] 2026-08-25 03:00:52
[2026-08-25 03:00:52,536.536 INFO    ] 2026-08-25 03:00:52
[2026-08-25 03:00:52,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:00:55,283.283 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 03:00:55,476.476 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:00:55,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:00:55,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:00:55,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:00:57,538.538 INFO    ] ================================================
[2026-08-25 03:00:57,553.553 INFO    ] Launching Daemon at Tue Aug 25 03:00:57 IST 2026
[2026-08-25 03:00:57,564.564 INFO    ] ================================================
[2026-08-25 03:00:58,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:00:58
[2026-08-25 03:00:58,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:00:58,976.976 INFO    ] Initializing speech engine...
[2026-08-25 03:00:58,994.994 INFO    ] 2026-08-25 03:00:58
[2026-08-25 03:00:59,260.260 INFO    ] 2026-08-25 03:00:59
[2026-08-25 03:00:59,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:00:59,355.355 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 03:00:59,531.531 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:00:59,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:00:59,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:00:59,634.634 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:00:59,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:01,707.707 INFO    ] ================================================
[2026-08-25 03:01:01,724.724 INFO    ] Launching Daemon at Tue Aug 25 03:01:01 IST 2026
[2026-08-25 03:01:01,739.739 INFO    ] ================================================
[2026-08-25 03:01:02,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:02
[2026-08-25 03:01:03,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:03,321.321 INFO    ] Initializing speech engine...
[2026-08-25 03:01:03,330.330 INFO    ] 2026-08-25 03:01:03
[2026-08-25 03:01:03,620.620 INFO    ] 2026-08-25 03:01:03
[2026-08-25 03:01:03,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:03,799.799 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 03:01:03,896.896 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:01:03,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:03,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:04,003.003 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:01:04,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:06,073.073 INFO    ] ================================================
[2026-08-25 03:01:06,088.088 INFO    ] Launching Daemon at Tue Aug 25 03:01:06 IST 2026
[2026-08-25 03:01:06,099.099 INFO    ] ================================================
[2026-08-25 03:01:06,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:06
[2026-08-25 03:01:07,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:07,596.596 INFO    ] Initializing speech engine...
[2026-08-25 03:01:07,602.602 INFO    ] 2026-08-25 03:01:07
[2026-08-25 03:01:07,856.856 INFO    ] 2026-08-25 03:01:07
[2026-08-25 03:01:07,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:08,008.008 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 03:01:08,121.121 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:01:08,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:08,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:08,207.207 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:01:08,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:10,279.279 INFO    ] ================================================
[2026-08-25 03:01:10,294.294 INFO    ] Launching Daemon at Tue Aug 25 03:01:10 IST 2026
[2026-08-25 03:01:10,304.304 INFO    ] ================================================
[2026-08-25 03:01:10,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:10
[2026-08-25 03:01:11,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:11,703.703 INFO    ] Initializing speech engine...
[2026-08-25 03:01:11,712.712 INFO    ] 2026-08-25 03:01:11
[2026-08-25 03:01:11,986.986 INFO    ] 2026-08-25 03:01:11
[2026-08-25 03:01:12,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:12,143.143 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 03:01:12,239.239 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:01:12,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:12,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:12,339.339 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:01:12,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:14,412.412 INFO    ] ================================================
[2026-08-25 03:01:14,427.427 INFO    ] Launching Daemon at Tue Aug 25 03:01:14 IST 2026
[2026-08-25 03:01:14,439.439 INFO    ] ================================================
[2026-08-25 03:01:15,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:15
[2026-08-25 03:01:15,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:16,027.027 INFO    ] Initializing speech engine...
[2026-08-25 03:01:16,041.041 INFO    ] 2026-08-25 03:01:16
[2026-08-25 03:01:16,305.305 INFO    ] 2026-08-25 03:01:16
[2026-08-25 03:01:16,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:16,455.455 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 03:01:16,617.617 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:01:16,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:16,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:16,667.667 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:01:16,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:18,772.772 INFO    ] ================================================
[2026-08-25 03:01:18,788.788 INFO    ] Launching Daemon at Tue Aug 25 03:01:18 IST 2026
[2026-08-25 03:01:18,799.799 INFO    ] ================================================
[2026-08-25 03:01:19,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:19
[2026-08-25 03:01:19,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:20,228.228 INFO    ] Initializing speech engine...
[2026-08-25 03:01:20,249.249 INFO    ] 2026-08-25 03:01:20
[2026-08-25 03:01:20,515.515 INFO    ] 2026-08-25 03:01:20
[2026-08-25 03:01:20,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:20,610.610 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-08-25 03:01:20,779.779 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:01:20,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:20,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:20,898.898 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:01:20,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:22,977.977 INFO    ] ================================================
[2026-08-25 03:01:22,993.993 INFO    ] Launching Daemon at Tue Aug 25 03:01:22 IST 2026
[2026-08-25 03:01:23,005.005 INFO    ] ================================================
[2026-08-25 03:01:23,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:23
[2026-08-25 03:01:24,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:24,483.483 INFO    ] Initializing speech engine...
[2026-08-25 03:01:24,490.490 INFO    ] 2026-08-25 03:01:24
[2026-08-25 03:01:24,753.753 INFO    ] 2026-08-25 03:01:24
[2026-08-25 03:01:24,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:29,900.900 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 99 connecting to live.vendingbuddy.in:23294. Cannot assign requested address.
[2026-08-25 03:01:29,927.927 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-08-25 03:01:29,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:29,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:29,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:31,981.981 INFO    ] ================================================
[2026-08-25 03:01:32,998.998 INFO    ] Launching Daemon at Tue Aug 25 03:01:31 IST 2026
[2026-08-25 03:01:32,009.009 INFO    ] ================================================
[2026-08-25 03:01:32,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:32
[2026-08-25 03:01:33,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:33,591.591 INFO    ] Initializing speech engine...
[2026-08-25 03:01:33,598.598 INFO    ] 2026-08-25 03:01:33
[2026-08-25 03:01:33,899.899 INFO    ] 2026-08-25 03:01:33
[2026-08-25 03:01:33,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:34,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:01:34,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:01:34,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:01:34,429.429 INFO    ] time= 25/08/2026 03:01:34
[2026-08-25 03:01:34,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:01:34,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:01:34,620.620 INFO    ] No existing commands found in stream
[2026-08-25 03:01:39,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:01:39,638.638 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 03:01:40,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:01:40,114.114 INFO    ] Checking for system updates...
[2026-08-25 03:01:40,151.151 INFO    ] 200
[2026-08-25 03:01:40,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:01:40,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:01:40,210.210 INFO    ] No update needed
[2026-08-25 03:01:40,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 03:01:40,248.248 INFO    ] 200
[2026-08-25 03:01:40,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:01:40,291.291 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:01:40,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:01:40,345.345 INFO    ] No camera update needed
[2026-08-25 03:01:40,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:01:40,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:40,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:40,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:42,404.404 INFO    ] ================================================
[2026-08-25 03:01:42,420.420 INFO    ] Launching Daemon at Tue Aug 25 03:01:42 IST 2026
[2026-08-25 03:01:42,431.431 INFO    ] ================================================
[2026-08-25 03:01:43,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:43
[2026-08-25 03:01:43,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:44,063.063 INFO    ] Initializing speech engine...
[2026-08-25 03:01:44,075.075 INFO    ] 2026-08-25 03:01:44
[2026-08-25 03:01:44,382.382 INFO    ] 2026-08-25 03:01:44
[2026-08-25 03:01:44,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:44,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:01:44,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:01:44,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:01:44,887.887 INFO    ] time= 25/08/2026 03:01:44
[2026-08-25 03:01:44,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:01:44,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:01:45,053.053 INFO    ] No existing commands found in stream
[2026-08-25 03:01:50,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:01:50,084.084 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 03:01:50,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:01:50,591.591 INFO    ] Checking for system updates...
[2026-08-25 03:01:50,630.630 INFO    ] 200
[2026-08-25 03:01:50,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:01:50,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:01:50,687.687 INFO    ] No update needed
[2026-08-25 03:01:50,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 03:01:50,723.723 INFO    ] 200
[2026-08-25 03:01:50,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:01:50,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:01:50,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:01:50,813.813 INFO    ] No camera update needed
[2026-08-25 03:01:50,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:01:50,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:01:50,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:01:50,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:01:52,869.869 INFO    ] ================================================
[2026-08-25 03:01:52,885.885 INFO    ] Launching Daemon at Tue Aug 25 03:01:52 IST 2026
[2026-08-25 03:01:52,896.896 INFO    ] ================================================
[2026-08-25 03:01:53,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:01:53
[2026-08-25 03:01:54,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:01:54,523.523 INFO    ] Initializing speech engine...
[2026-08-25 03:01:54,538.538 INFO    ] 2026-08-25 03:01:54
[2026-08-25 03:01:54,851.851 INFO    ] 2026-08-25 03:01:54
[2026-08-25 03:01:54,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:01:55,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:01:55,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:01:55,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:01:55,368.368 INFO    ] time= 25/08/2026 03:01:55
[2026-08-25 03:01:55,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:01:55,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:01:55,516.516 INFO    ] No existing commands found in stream
[2026-08-25 03:02:00,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:02:00,542.542 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 03:02:03,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:02:03,438.438 INFO    ] Checking for system updates...
[2026-08-25 03:02:03,482.482 INFO    ] 200
[2026-08-25 03:02:03,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:03,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:02:03,543.543 INFO    ] No update needed
[2026-08-25 03:02:03,546.546 INFO    ] Checking for camera pi updates...
[2026-08-25 03:02:03,581.581 INFO    ] 200
[2026-08-25 03:02:03,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:03,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:02:03,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:02:03,671.671 INFO    ] No camera update needed
[2026-08-25 03:02:03,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:02:03,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:02:03,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:02:03,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:02:05,732.732 INFO    ] ================================================
[2026-08-25 03:02:05,748.748 INFO    ] Launching Daemon at Tue Aug 25 03:02:05 IST 2026
[2026-08-25 03:02:05,759.759 INFO    ] ================================================
[2026-08-25 03:02:06,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:02:06
[2026-08-25 03:02:06,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:02:07,222.222 INFO    ] Initializing speech engine...
[2026-08-25 03:02:07,247.247 INFO    ] 2026-08-25 03:02:07
[2026-08-25 03:02:07,518.518 INFO    ] 2026-08-25 03:02:07
[2026-08-25 03:02:07,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:02:07,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:02:07,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:02:07,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:02:07,936.936 INFO    ] time= 25/08/2026 03:02:07
[2026-08-25 03:02:07,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:02:07,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:02:08,021.021 INFO    ] No existing commands found in stream
[2026-08-25 03:02:13,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:02:13,036.036 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 03:02:16,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:02:16,305.305 INFO    ] Checking for system updates...
[2026-08-25 03:02:16,340.340 INFO    ] 200
[2026-08-25 03:02:16,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:16,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:02:16,397.397 INFO    ] No update needed
[2026-08-25 03:02:16,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 03:02:16,436.436 INFO    ] 200
[2026-08-25 03:02:16,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:16,478.478 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:02:16,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:02:16,527.527 INFO    ] No camera update needed
[2026-08-25 03:02:16,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:02:16,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:02:16,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:02:16,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:02:18,583.583 INFO    ] ================================================
[2026-08-25 03:02:18,598.598 INFO    ] Launching Daemon at Tue Aug 25 03:02:18 IST 2026
[2026-08-25 03:02:18,610.610 INFO    ] ================================================
[2026-08-25 03:02:19,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:02:19
[2026-08-25 03:02:19,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:02:20,049.049 INFO    ] Initializing speech engine...
[2026-08-25 03:02:20,056.056 INFO    ] 2026-08-25 03:02:20
[2026-08-25 03:02:20,348.348 INFO    ] 2026-08-25 03:02:20
[2026-08-25 03:02:20,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:02:20,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:02:20,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:02:20,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:02:20,757.757 INFO    ] time= 25/08/2026 03:02:20
[2026-08-25 03:02:20,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:02:20,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:02:20,863.863 INFO    ] No existing commands found in stream
[2026-08-25 03:02:25,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:02:25,879.879 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 03:02:30,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:02:30,289.289 INFO    ] Checking for system updates...
[2026-08-25 03:02:30,323.323 INFO    ] 200
[2026-08-25 03:02:30,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:30,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:02:30,380.380 INFO    ] No update needed
[2026-08-25 03:02:30,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 03:02:30,418.418 INFO    ] 200
[2026-08-25 03:02:30,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:30,460.460 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:02:30,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:02:30,506.506 INFO    ] No camera update needed
[2026-08-25 03:02:30,508.508 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:02:30,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:02:30,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:02:30,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:02:32,563.563 INFO    ] ================================================
[2026-08-25 03:02:32,578.578 INFO    ] Launching Daemon at Tue Aug 25 03:02:32 IST 2026
[2026-08-25 03:02:32,590.590 INFO    ] ================================================
[2026-08-25 03:02:33,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:02:33
[2026-08-25 03:02:33,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:02:34,127.127 INFO    ] Initializing speech engine...
[2026-08-25 03:02:34,138.138 INFO    ] 2026-08-25 03:02:34
[2026-08-25 03:02:34,442.442 INFO    ] 2026-08-25 03:02:34
[2026-08-25 03:02:34,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:02:34,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:02:34,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:02:34,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:02:34,955.955 INFO    ] time= 25/08/2026 03:02:34
[2026-08-25 03:02:34,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:02:34,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:02:35,106.106 INFO    ] No existing commands found in stream
[2026-08-25 03:02:40,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:02:40,127.127 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 03:02:41,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:02:41,912.912 INFO    ] Checking for system updates...
[2026-08-25 03:02:41,948.948 INFO    ] 200
[2026-08-25 03:02:41,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:42,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:02:42,022.022 INFO    ] No update needed
[2026-08-25 03:02:42,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 03:02:42,067.067 INFO    ] 200
[2026-08-25 03:02:42,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:42,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:02:42,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:02:42,159.159 INFO    ] No camera update needed
[2026-08-25 03:02:42,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:02:42,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:02:42,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:02:42,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:02:44,217.217 INFO    ] ================================================
[2026-08-25 03:02:44,232.232 INFO    ] Launching Daemon at Tue Aug 25 03:02:44 IST 2026
[2026-08-25 03:02:44,243.243 INFO    ] ================================================
[2026-08-25 03:02:44,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:02:44
[2026-08-25 03:02:45,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:02:45,672.672 INFO    ] Initializing speech engine...
[2026-08-25 03:02:45,693.693 INFO    ] 2026-08-25 03:02:45
[2026-08-25 03:02:45,971.971 INFO    ] 2026-08-25 03:02:45
[2026-08-25 03:02:46,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:02:46,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:02:46,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:02:46,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:02:46,352.352 INFO    ] time= 25/08/2026 03:02:46
[2026-08-25 03:02:46,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:02:46,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:02:46,479.479 INFO    ] No existing commands found in stream
[2026-08-25 03:02:51,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:02:51,495.495 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 03:02:55,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:02:55,442.442 INFO    ] Checking for system updates...
[2026-08-25 03:02:55,478.478 INFO    ] 200
[2026-08-25 03:02:55,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:55,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:02:55,545.545 INFO    ] No update needed
[2026-08-25 03:02:55,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 03:02:55,581.581 INFO    ] 200
[2026-08-25 03:02:55,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:02:55,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:02:55,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:02:55,672.672 INFO    ] No camera update needed
[2026-08-25 03:02:55,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:02:55,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:02:55,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:02:55,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:02:57,727.727 INFO    ] ================================================
[2026-08-25 03:02:57,743.743 INFO    ] Launching Daemon at Tue Aug 25 03:02:57 IST 2026
[2026-08-25 03:02:57,753.753 INFO    ] ================================================
[2026-08-25 03:02:58,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:02:58
[2026-08-25 03:02:58,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:02:59,213.213 INFO    ] Initializing speech engine...
[2026-08-25 03:02:59,223.223 INFO    ] 2026-08-25 03:02:59
[2026-08-25 03:02:59,484.484 INFO    ] 2026-08-25 03:02:59
[2026-08-25 03:02:59,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:02:59,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:02:59,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:02:59,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:02:59,906.906 INFO    ] time= 25/08/2026 03:02:59
[2026-08-25 03:02:59,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:02:59,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:03:00,088.088 INFO    ] No existing commands found in stream
[2026-08-25 03:03:05,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:03:05,103.103 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 03:03:09,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:03:09,042.042 INFO    ] Checking for system updates...
[2026-08-25 03:03:09,077.077 INFO    ] 200
[2026-08-25 03:03:09,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:09,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:03:09,136.136 INFO    ] No update needed
[2026-08-25 03:03:09,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 03:03:09,171.171 INFO    ] 200
[2026-08-25 03:03:09,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:09,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:03:09,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:03:09,269.269 INFO    ] No camera update needed
[2026-08-25 03:03:09,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:03:09,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:03:09,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:03:09,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:03:11,327.327 INFO    ] ================================================
[2026-08-25 03:03:11,342.342 INFO    ] Launching Daemon at Tue Aug 25 03:03:11 IST 2026
[2026-08-25 03:03:11,353.353 INFO    ] ================================================
[2026-08-25 03:03:11,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:03:11
[2026-08-25 03:03:12,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:03:12,790.790 INFO    ] Initializing speech engine...
[2026-08-25 03:03:12,816.816 INFO    ] 2026-08-25 03:03:12
[2026-08-25 03:03:13,087.087 INFO    ] 2026-08-25 03:03:13
[2026-08-25 03:03:13,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:03:13,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:03:13,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:03:13,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:03:13,468.468 INFO    ] time= 25/08/2026 03:03:13
[2026-08-25 03:03:13,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:03:13,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:03:13,592.592 INFO    ] No existing commands found in stream
[2026-08-25 03:03:18,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:03:18,607.607 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 03:03:21,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:03:21,101.101 INFO    ] Checking for system updates...
[2026-08-25 03:03:21,138.138 INFO    ] 200
[2026-08-25 03:03:21,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:21,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:21,195.195 INFO    ] No update needed
[2026-08-25 03:03:21,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 03:03:21,230.230 INFO    ] 200
[2026-08-25 03:03:21,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:21,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:03:21,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:21,320.320 INFO    ] No camera update needed
[2026-08-25 03:03:21,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:03:21,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:03:21,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:03:21,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:03:23,376.376 INFO    ] ================================================
[2026-08-25 03:03:23,392.392 INFO    ] Launching Daemon at Tue Aug 25 03:03:23 IST 2026
[2026-08-25 03:03:23,403.403 INFO    ] ================================================
[2026-08-25 03:03:23,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:03:23
[2026-08-25 03:03:24,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:03:24,837.837 INFO    ] Initializing speech engine...
[2026-08-25 03:03:24,846.846 INFO    ] 2026-08-25 03:03:24
[2026-08-25 03:03:25,097.097 INFO    ] 2026-08-25 03:03:25
[2026-08-25 03:03:25,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:03:25,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:03:25,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:03:25,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:03:25,587.587 INFO    ] time= 25/08/2026 03:03:25
[2026-08-25 03:03:25,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:03:25,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:03:25,815.815 INFO    ] No existing commands found in stream
[2026-08-25 03:03:30,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:03:30,837.837 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 03:03:34,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:03:34,461.461 INFO    ] Checking for system updates...
[2026-08-25 03:03:34,497.497 INFO    ] 200
[2026-08-25 03:03:34,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:34,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:34,553.553 INFO    ] No update needed
[2026-08-25 03:03:34,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 03:03:34,589.589 INFO    ] 200
[2026-08-25 03:03:34,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:34,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:03:34,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:34,681.681 INFO    ] No camera update needed
[2026-08-25 03:03:34,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:03:34,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:03:34,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:03:34,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:03:36,737.737 INFO    ] ================================================
[2026-08-25 03:03:36,753.753 INFO    ] Launching Daemon at Tue Aug 25 03:03:36 IST 2026
[2026-08-25 03:03:36,764.764 INFO    ] ================================================
[2026-08-25 03:03:37,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:03:37
[2026-08-25 03:03:38,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:03:38,443.443 INFO    ] Initializing speech engine...
[2026-08-25 03:03:38,457.457 INFO    ] 2026-08-25 03:03:38
[2026-08-25 03:03:38,733.733 INFO    ] 2026-08-25 03:03:38
[2026-08-25 03:03:38,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:03:39,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:03:39,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:03:39,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:03:39,239.239 INFO    ] time= 25/08/2026 03:03:39
[2026-08-25 03:03:39,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:03:39,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:03:39,377.377 INFO    ] No existing commands found in stream
[2026-08-25 03:03:44,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:03:44,411.411 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 03:03:46,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:03:46,106.106 INFO    ] Checking for system updates...
[2026-08-25 03:03:46,150.150 INFO    ] 200
[2026-08-25 03:03:46,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:46,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:46,218.218 INFO    ] No update needed
[2026-08-25 03:03:46,221.221 INFO    ] Checking for camera pi updates...
[2026-08-25 03:03:46,261.261 INFO    ] 200
[2026-08-25 03:03:46,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:46,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:03:46,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:46,471.471 INFO    ] No camera update needed
[2026-08-25 03:03:46,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:03:46,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:03:46,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:03:46,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:03:48,526.526 INFO    ] ================================================
[2026-08-25 03:03:48,541.541 INFO    ] Launching Daemon at Tue Aug 25 03:03:48 IST 2026
[2026-08-25 03:03:48,551.551 INFO    ] ================================================
[2026-08-25 03:03:49,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:03:49
[2026-08-25 03:03:49,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:03:50,010.010 INFO    ] Initializing speech engine...
[2026-08-25 03:03:50,019.019 INFO    ] 2026-08-25 03:03:50
[2026-08-25 03:03:50,279.279 INFO    ] 2026-08-25 03:03:50
[2026-08-25 03:03:50,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:03:50,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:03:50,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:03:50,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:03:50,737.737 INFO    ] time= 25/08/2026 03:03:50
[2026-08-25 03:03:50,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:03:50,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:03:50,976.976 INFO    ] No existing commands found in stream
[2026-08-25 03:03:55,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:03:55,993.993 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 03:03:59,416.416 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:03:59,418.418 INFO    ] Checking for system updates...
[2026-08-25 03:03:59,453.453 INFO    ] 200
[2026-08-25 03:03:59,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:59,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:59,511.511 INFO    ] No update needed
[2026-08-25 03:03:59,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 03:03:59,550.550 INFO    ] 200
[2026-08-25 03:03:59,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:03:59,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:03:59,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:03:59,633.633 INFO    ] No camera update needed
[2026-08-25 03:03:59,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:03:59,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:03:59,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:03:59,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:04:01,704.704 INFO    ] ================================================
[2026-08-25 03:04:01,738.738 INFO    ] Launching Daemon at Tue Aug 25 03:04:01 IST 2026
[2026-08-25 03:04:01,762.762 INFO    ] ================================================
[2026-08-25 03:04:02,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:04:02
[2026-08-25 03:04:03,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:04:03,525.525 INFO    ] Initializing speech engine...
[2026-08-25 03:04:03,543.543 INFO    ] 2026-08-25 03:04:03
[2026-08-25 03:04:03,811.811 INFO    ] 2026-08-25 03:04:03
[2026-08-25 03:04:03,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:04:04,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:04:04,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:04:04,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:04:04,312.312 INFO    ] time= 25/08/2026 03:04:04
[2026-08-25 03:04:04,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:04:04,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:04:04,495.495 INFO    ] No existing commands found in stream
[2026-08-25 03:04:09,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:04:09,521.521 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 03:04:11,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:04:11,841.841 INFO    ] Checking for system updates...
[2026-08-25 03:04:11,878.878 INFO    ] 200
[2026-08-25 03:04:11,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:11,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:04:11,935.935 INFO    ] No update needed
[2026-08-25 03:04:11,938.938 INFO    ] Checking for camera pi updates...
[2026-08-25 03:04:11,979.979 INFO    ] 200
[2026-08-25 03:04:11,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:12,021.021 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:04:12,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:04:12,064.064 INFO    ] No camera update needed
[2026-08-25 03:04:12,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:04:12,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:04:12,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:04:12,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:04:14,118.118 INFO    ] ================================================
[2026-08-25 03:04:14,133.133 INFO    ] Launching Daemon at Tue Aug 25 03:04:14 IST 2026
[2026-08-25 03:04:14,143.143 INFO    ] ================================================
[2026-08-25 03:04:15,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:04:14
[2026-08-25 03:04:15,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:04:16,168.168 INFO    ] Initializing speech engine...
[2026-08-25 03:04:16,175.175 INFO    ] 2026-08-25 03:04:16
[2026-08-25 03:04:16,421.421 INFO    ] 2026-08-25 03:04:16
[2026-08-25 03:04:16,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:04:16,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:04:16,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:04:16,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:04:16,899.899 INFO    ] time= 25/08/2026 03:04:16
[2026-08-25 03:04:16,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:04:16,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:04:17,106.106 INFO    ] No existing commands found in stream
[2026-08-25 03:04:22,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:04:22,131.131 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 03:04:23,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:04:23,850.850 INFO    ] Checking for system updates...
[2026-08-25 03:04:23,887.887 INFO    ] 200
[2026-08-25 03:04:23,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:23,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:04:23,943.943 INFO    ] No update needed
[2026-08-25 03:04:23,946.946 INFO    ] Checking for camera pi updates...
[2026-08-25 03:04:23,983.983 INFO    ] 200
[2026-08-25 03:04:23,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:24,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:04:24,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:04:24,082.082 INFO    ] No camera update needed
[2026-08-25 03:04:24,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:04:24,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:04:24,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:04:24,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:04:26,137.137 INFO    ] ================================================
[2026-08-25 03:04:26,152.152 INFO    ] Launching Daemon at Tue Aug 25 03:04:26 IST 2026
[2026-08-25 03:04:26,163.163 INFO    ] ================================================
[2026-08-25 03:04:26,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:04:26
[2026-08-25 03:04:27,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:04:27,638.638 INFO    ] Initializing speech engine...
[2026-08-25 03:04:27,647.647 INFO    ] 2026-08-25 03:04:27
[2026-08-25 03:04:27,910.910 INFO    ] 2026-08-25 03:04:27
[2026-08-25 03:04:27,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:04:28,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:04:28,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:04:28,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:04:28,455.455 INFO    ] time= 25/08/2026 03:04:28
[2026-08-25 03:04:28,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:04:28,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:04:28,605.605 INFO    ] No existing commands found in stream
[2026-08-25 03:04:33,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:04:33,620.620 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 03:04:37,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:04:37,424.424 INFO    ] Checking for system updates...
[2026-08-25 03:04:37,459.459 INFO    ] 200
[2026-08-25 03:04:37,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:37,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:04:37,516.516 INFO    ] No update needed
[2026-08-25 03:04:37,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 03:04:37,552.552 INFO    ] 200
[2026-08-25 03:04:37,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:37,598.598 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:04:37,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:04:37,643.643 INFO    ] No camera update needed
[2026-08-25 03:04:37,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:04:37,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:04:37,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:04:37,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:04:39,702.702 INFO    ] ================================================
[2026-08-25 03:04:39,717.717 INFO    ] Launching Daemon at Tue Aug 25 03:04:39 IST 2026
[2026-08-25 03:04:39,728.728 INFO    ] ================================================
[2026-08-25 03:04:40,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:04:40
[2026-08-25 03:04:40,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:04:41,145.145 INFO    ] Initializing speech engine...
[2026-08-25 03:04:41,154.154 INFO    ] 2026-08-25 03:04:41
[2026-08-25 03:04:41,404.404 INFO    ] 2026-08-25 03:04:41
[2026-08-25 03:04:41,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:04:41,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:04:41,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:04:41,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:04:41,882.882 INFO    ] time= 25/08/2026 03:04:41
[2026-08-25 03:04:41,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:04:41,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:04:42,113.113 INFO    ] No existing commands found in stream
[2026-08-25 03:04:47,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:04:47,139.139 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 03:04:47,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:04:47,805.805 INFO    ] Checking for system updates...
[2026-08-25 03:04:47,841.841 INFO    ] 200
[2026-08-25 03:04:47,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:47,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:04:47,906.906 INFO    ] No update needed
[2026-08-25 03:04:47,908.908 INFO    ] Checking for camera pi updates...
[2026-08-25 03:04:47,941.941 INFO    ] 200
[2026-08-25 03:04:47,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:04:47,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:04:48,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:04:48,029.029 INFO    ] No camera update needed
[2026-08-25 03:04:48,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:04:48,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:04:48,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:04:48,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:04:50,084.084 INFO    ] ================================================
[2026-08-25 03:04:50,099.099 INFO    ] Launching Daemon at Tue Aug 25 03:04:50 IST 2026
[2026-08-25 03:04:50,109.109 INFO    ] ================================================
[2026-08-25 03:04:50,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:04:50
[2026-08-25 03:04:51,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:04:51,527.527 INFO    ] Initializing speech engine...
[2026-08-25 03:04:51,535.535 INFO    ] 2026-08-25 03:04:51
[2026-08-25 03:04:51,786.786 INFO    ] 2026-08-25 03:04:51
[2026-08-25 03:04:51,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:04:52,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:04:52,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:04:52,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:04:52,252.252 INFO    ] time= 25/08/2026 03:04:52
[2026-08-25 03:04:52,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:04:52,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:04:52,503.503 INFO    ] No existing commands found in stream
[2026-08-25 03:04:57,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:04:57,521.521 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 03:05:00,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:05:00,750.750 INFO    ] Checking for system updates...
[2026-08-25 03:05:00,786.786 INFO    ] 200
[2026-08-25 03:05:00,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:00,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:05:00,847.847 INFO    ] No update needed
[2026-08-25 03:05:00,850.850 INFO    ] Checking for camera pi updates...
[2026-08-25 03:05:00,884.884 INFO    ] 200
[2026-08-25 03:05:00,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:00,931.931 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:05:00,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:05:00,970.970 INFO    ] No camera update needed
[2026-08-25 03:05:00,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:05:00,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:05:00,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:05:00,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:05:03,046.046 INFO    ] ================================================
[2026-08-25 03:05:03,068.068 INFO    ] Launching Daemon at Tue Aug 25 03:05:03 IST 2026
[2026-08-25 03:05:03,085.085 INFO    ] ================================================
[2026-08-25 03:05:03,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:05:03
[2026-08-25 03:05:04,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:05:04,753.753 INFO    ] Initializing speech engine...
[2026-08-25 03:05:04,759.759 INFO    ] 2026-08-25 03:05:04
[2026-08-25 03:05:05,029.029 INFO    ] 2026-08-25 03:05:05
[2026-08-25 03:05:05,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:05:05,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:05:05,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:05:05,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:05:05,448.448 INFO    ] time= 25/08/2026 03:05:05
[2026-08-25 03:05:05,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:05:05,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:05:05,530.530 INFO    ] No existing commands found in stream
[2026-08-25 03:05:10,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:05:10,546.546 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 03:05:14,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:05:14,552.552 INFO    ] Checking for system updates...
[2026-08-25 03:05:14,588.588 INFO    ] 200
[2026-08-25 03:05:14,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:14,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:05:14,652.652 INFO    ] No update needed
[2026-08-25 03:05:14,654.654 INFO    ] Checking for camera pi updates...
[2026-08-25 03:05:14,688.688 INFO    ] 200
[2026-08-25 03:05:14,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:14,732.732 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:05:14,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:05:14,785.785 INFO    ] No camera update needed
[2026-08-25 03:05:14,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:05:14,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:05:14,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:05:14,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:05:16,844.844 INFO    ] ================================================
[2026-08-25 03:05:16,860.860 INFO    ] Launching Daemon at Tue Aug 25 03:05:16 IST 2026
[2026-08-25 03:05:16,870.870 INFO    ] ================================================
[2026-08-25 03:05:17,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:05:17
[2026-08-25 03:05:18,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:05:18,302.302 INFO    ] Initializing speech engine...
[2026-08-25 03:05:18,319.319 INFO    ] 2026-08-25 03:05:18
[2026-08-25 03:05:18,611.611 INFO    ] 2026-08-25 03:05:18
[2026-08-25 03:05:18,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:05:18,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:05:18,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:05:18,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:05:18,964.964 INFO    ] time= 25/08/2026 03:05:18
[2026-08-25 03:05:18,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:05:18,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:05:19,089.089 INFO    ] No existing commands found in stream
[2026-08-25 03:05:24,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:05:24,105.105 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 03:05:25,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:05:25,041.041 INFO    ] Checking for system updates...
[2026-08-25 03:05:25,078.078 INFO    ] 200
[2026-08-25 03:05:25,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:25,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:05:25,156.156 INFO    ] No update needed
[2026-08-25 03:05:25,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 03:05:25,193.193 INFO    ] 200
[2026-08-25 03:05:25,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:25,238.238 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:05:25,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:05:25,286.286 INFO    ] No camera update needed
[2026-08-25 03:05:25,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:05:25,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:05:25,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:05:25,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:05:27,345.345 INFO    ] ================================================
[2026-08-25 03:05:27,360.360 INFO    ] Launching Daemon at Tue Aug 25 03:05:27 IST 2026
[2026-08-25 03:05:27,372.372 INFO    ] ================================================
[2026-08-25 03:05:27,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:05:27
[2026-08-25 03:05:28,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:05:28,836.836 INFO    ] Initializing speech engine...
[2026-08-25 03:05:28,840.840 INFO    ] 2026-08-25 03:05:28
[2026-08-25 03:05:29,103.103 INFO    ] 2026-08-25 03:05:29
[2026-08-25 03:05:29,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:05:29,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:05:29,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:05:29,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:05:29,581.581 INFO    ] time= 25/08/2026 03:05:29
[2026-08-25 03:05:29,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:05:29,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:05:29,772.772 INFO    ] No existing commands found in stream
[2026-08-25 03:05:34,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:05:34,802.802 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 03:05:37,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:05:37,208.208 INFO    ] Checking for system updates...
[2026-08-25 03:05:37,249.249 INFO    ] 200
[2026-08-25 03:05:37,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:37,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:05:37,309.309 INFO    ] No update needed
[2026-08-25 03:05:37,311.311 INFO    ] Checking for camera pi updates...
[2026-08-25 03:05:37,346.346 INFO    ] 200
[2026-08-25 03:05:37,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:37,390.390 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:05:37,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:05:37,435.435 INFO    ] No camera update needed
[2026-08-25 03:05:37,437.437 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:05:37,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:05:37,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:05:37,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:05:39,493.493 INFO    ] ================================================
[2026-08-25 03:05:39,508.508 INFO    ] Launching Daemon at Tue Aug 25 03:05:39 IST 2026
[2026-08-25 03:05:39,518.518 INFO    ] ================================================
[2026-08-25 03:05:40,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:05:40
[2026-08-25 03:05:40,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:05:40,970.970 INFO    ] Initializing speech engine...
[2026-08-25 03:05:40,980.980 INFO    ] 2026-08-25 03:05:40
[2026-08-25 03:05:41,227.227 INFO    ] 2026-08-25 03:05:41
[2026-08-25 03:05:41,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:05:41,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:05:41,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:05:41,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:05:41,716.716 INFO    ] time= 25/08/2026 03:05:41
[2026-08-25 03:05:41,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:05:41,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:05:41,933.933 INFO    ] No existing commands found in stream
[2026-08-25 03:05:46,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:05:46,971.971 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 03:05:49,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:05:49,606.606 INFO    ] Checking for system updates...
[2026-08-25 03:05:49,641.641 INFO    ] 200
[2026-08-25 03:05:49,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:49,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:05:49,699.699 INFO    ] No update needed
[2026-08-25 03:05:49,701.701 INFO    ] Checking for camera pi updates...
[2026-08-25 03:05:49,738.738 INFO    ] 200
[2026-08-25 03:05:49,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:05:49,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:05:49,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:05:49,928.928 INFO    ] No camera update needed
[2026-08-25 03:05:49,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:05:49,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:05:49,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:05:49,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:05:51,983.983 INFO    ] ================================================
[2026-08-25 03:05:52,998.998 INFO    ] Launching Daemon at Tue Aug 25 03:05:51 IST 2026
[2026-08-25 03:05:52,008.008 INFO    ] ================================================
[2026-08-25 03:05:52,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:05:52
[2026-08-25 03:05:53,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:05:53,473.473 INFO    ] Initializing speech engine...
[2026-08-25 03:05:53,481.481 INFO    ] 2026-08-25 03:05:53
[2026-08-25 03:05:53,725.725 INFO    ] 2026-08-25 03:05:53
[2026-08-25 03:05:53,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:05:54,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:05:54,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:05:54,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:05:54,448.448 INFO    ] time= 25/08/2026 03:05:54
[2026-08-25 03:05:54,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:05:54,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:05:54,684.684 INFO    ] No existing commands found in stream
[2026-08-25 03:05:59,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:05:59,695.695 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 03:06:01,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:06:01,362.362 INFO    ] Checking for system updates...
[2026-08-25 03:06:01,399.399 INFO    ] 200
[2026-08-25 03:06:01,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:01,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:06:01,465.465 INFO    ] No update needed
[2026-08-25 03:06:01,468.468 INFO    ] Checking for camera pi updates...
[2026-08-25 03:06:01,510.510 INFO    ] 200
[2026-08-25 03:06:01,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:01,554.554 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:06:01,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:06:01,607.607 INFO    ] No camera update needed
[2026-08-25 03:06:01,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:06:01,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:06:01,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:06:01,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:06:03,667.667 INFO    ] ================================================
[2026-08-25 03:06:03,687.687 INFO    ] Launching Daemon at Tue Aug 25 03:06:03 IST 2026
[2026-08-25 03:06:03,699.699 INFO    ] ================================================
[2026-08-25 03:06:04,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:06:04
[2026-08-25 03:06:04,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:06:05,184.184 INFO    ] Initializing speech engine...
[2026-08-25 03:06:05,207.207 INFO    ] 2026-08-25 03:06:05
[2026-08-25 03:06:05,478.478 INFO    ] 2026-08-25 03:06:05
[2026-08-25 03:06:05,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:06:05,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:06:05,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:06:05,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:06:05,947.947 INFO    ] time= 25/08/2026 03:06:05
[2026-08-25 03:06:06,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:06:06,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:06:06,163.163 INFO    ] No existing commands found in stream
[2026-08-25 03:06:11,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:06:11,190.190 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 03:06:14,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:06:14,346.346 INFO    ] Checking for system updates...
[2026-08-25 03:06:14,383.383 INFO    ] 200
[2026-08-25 03:06:14,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:14,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:06:14,442.442 INFO    ] No update needed
[2026-08-25 03:06:14,444.444 INFO    ] Checking for camera pi updates...
[2026-08-25 03:06:14,479.479 INFO    ] 200
[2026-08-25 03:06:14,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:14,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:06:14,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:06:14,577.577 INFO    ] No camera update needed
[2026-08-25 03:06:14,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:06:14,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:06:14,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:06:14,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:06:16,638.638 INFO    ] ================================================
[2026-08-25 03:06:16,654.654 INFO    ] Launching Daemon at Tue Aug 25 03:06:16 IST 2026
[2026-08-25 03:06:16,667.667 INFO    ] ================================================
[2026-08-25 03:06:17,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:06:17
[2026-08-25 03:06:17,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:06:18,306.306 INFO    ] Initializing speech engine...
[2026-08-25 03:06:18,315.315 INFO    ] 2026-08-25 03:06:18
[2026-08-25 03:06:18,605.605 INFO    ] 2026-08-25 03:06:18
[2026-08-25 03:06:18,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:06:18,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:06:18,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:06:19,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:06:19,156.156 INFO    ] time= 25/08/2026 03:06:19
[2026-08-25 03:06:19,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:06:19,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:06:19,313.313 INFO    ] No existing commands found in stream
[2026-08-25 03:06:24,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:06:24,333.333 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 03:06:26,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:06:26,649.649 INFO    ] Checking for system updates...
[2026-08-25 03:06:26,691.691 INFO    ] 200
[2026-08-25 03:06:26,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:26,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:06:26,762.762 INFO    ] No update needed
[2026-08-25 03:06:26,765.765 INFO    ] Checking for camera pi updates...
[2026-08-25 03:06:26,799.799 INFO    ] 200
[2026-08-25 03:06:26,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:26,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:06:26,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:06:26,891.891 INFO    ] No camera update needed
[2026-08-25 03:06:26,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:06:26,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:06:26,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:06:26,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:06:28,952.952 INFO    ] ================================================
[2026-08-25 03:06:28,967.967 INFO    ] Launching Daemon at Tue Aug 25 03:06:28 IST 2026
[2026-08-25 03:06:28,978.978 INFO    ] ================================================
[2026-08-25 03:06:29,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:06:29
[2026-08-25 03:06:30,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:06:30,575.575 INFO    ] Initializing speech engine...
[2026-08-25 03:06:30,582.582 INFO    ] 2026-08-25 03:06:30
[2026-08-25 03:06:30,898.898 INFO    ] 2026-08-25 03:06:30
[2026-08-25 03:06:30,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:06:31,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:06:31,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:06:31,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:06:31,406.406 INFO    ] time= 25/08/2026 03:06:31
[2026-08-25 03:06:31,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:06:31,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:06:31,562.562 INFO    ] No existing commands found in stream
[2026-08-25 03:06:36,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:06:36,585.585 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 03:06:37,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:06:37,344.344 INFO    ] Checking for system updates...
[2026-08-25 03:06:37,381.381 INFO    ] 200
[2026-08-25 03:06:37,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:37,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:06:37,447.447 INFO    ] No update needed
[2026-08-25 03:06:37,450.450 INFO    ] Checking for camera pi updates...
[2026-08-25 03:06:37,484.484 INFO    ] 200
[2026-08-25 03:06:37,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:37,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:06:37,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:06:37,579.579 INFO    ] No camera update needed
[2026-08-25 03:06:37,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:06:37,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:06:37,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:06:37,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:06:39,636.636 INFO    ] ================================================
[2026-08-25 03:06:39,652.652 INFO    ] Launching Daemon at Tue Aug 25 03:06:39 IST 2026
[2026-08-25 03:06:39,663.663 INFO    ] ================================================
[2026-08-25 03:06:40,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:06:40
[2026-08-25 03:06:40,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:06:41,113.113 INFO    ] Initializing speech engine...
[2026-08-25 03:06:41,125.125 INFO    ] 2026-08-25 03:06:41
[2026-08-25 03:06:41,381.381 INFO    ] 2026-08-25 03:06:41
[2026-08-25 03:06:41,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:06:41,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:06:41,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:06:41,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:06:41,860.860 INFO    ] time= 25/08/2026 03:06:41
[2026-08-25 03:06:41,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:06:41,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:06:42,062.062 INFO    ] No existing commands found in stream
[2026-08-25 03:06:47,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:06:47,092.092 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 03:06:49,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:06:49,646.646 INFO    ] Checking for system updates...
[2026-08-25 03:06:49,682.682 INFO    ] 200
[2026-08-25 03:06:49,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:49,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:06:49,745.745 INFO    ] No update needed
[2026-08-25 03:06:49,748.748 INFO    ] Checking for camera pi updates...
[2026-08-25 03:06:49,781.781 INFO    ] 200
[2026-08-25 03:06:49,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:06:49,825.825 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:06:49,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:06:49,877.877 INFO    ] No camera update needed
[2026-08-25 03:06:49,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:06:49,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:06:49,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:06:49,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:06:51,934.934 INFO    ] ================================================
[2026-08-25 03:06:51,950.950 INFO    ] Launching Daemon at Tue Aug 25 03:06:51 IST 2026
[2026-08-25 03:06:51,962.962 INFO    ] ================================================
[2026-08-25 03:06:52,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:06:52
[2026-08-25 03:06:53,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:06:53,377.377 INFO    ] Initializing speech engine...
[2026-08-25 03:06:53,397.397 INFO    ] 2026-08-25 03:06:53
[2026-08-25 03:06:53,678.678 INFO    ] 2026-08-25 03:06:53
[2026-08-25 03:06:53,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:06:53,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:06:53,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:06:54,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:06:54,096.096 INFO    ] time= 25/08/2026 03:06:54
[2026-08-25 03:06:54,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:06:54,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:06:54,181.181 INFO    ] No existing commands found in stream
[2026-08-25 03:06:59,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:06:59,196.196 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 03:07:00,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:07:00,697.697 INFO    ] Checking for system updates...
[2026-08-25 03:07:00,736.736 INFO    ] 200
[2026-08-25 03:07:00,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:00,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:07:00,800.800 INFO    ] No update needed
[2026-08-25 03:07:00,803.803 INFO    ] Checking for camera pi updates...
[2026-08-25 03:07:00,836.836 INFO    ] 200
[2026-08-25 03:07:00,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:00,878.878 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:07:00,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:07:00,922.922 INFO    ] No camera update needed
[2026-08-25 03:07:00,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:07:00,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:07:00,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:07:00,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:07:03,997.997 INFO    ] ================================================
[2026-08-25 03:07:03,018.018 INFO    ] Launching Daemon at Tue Aug 25 03:07:03 IST 2026
[2026-08-25 03:07:03,039.039 INFO    ] ================================================
[2026-08-25 03:07:03,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:07:03
[2026-08-25 03:07:04,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:07:04,551.551 INFO    ] Initializing speech engine...
[2026-08-25 03:07:04,564.564 INFO    ] 2026-08-25 03:07:04
[2026-08-25 03:07:04,850.850 INFO    ] 2026-08-25 03:07:04
[2026-08-25 03:07:04,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:07:05,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:07:05,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:07:05,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:07:05,207.207 INFO    ] time= 25/08/2026 03:07:05
[2026-08-25 03:07:05,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:07:05,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:07:05,296.296 INFO    ] No existing commands found in stream
[2026-08-25 03:07:10,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:07:10,326.326 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 03:07:13,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:07:13,837.837 INFO    ] Checking for system updates...
[2026-08-25 03:07:13,872.872 INFO    ] 200
[2026-08-25 03:07:13,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:13,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:07:13,931.931 INFO    ] No update needed
[2026-08-25 03:07:13,933.933 INFO    ] Checking for camera pi updates...
[2026-08-25 03:07:13,967.967 INFO    ] 200
[2026-08-25 03:07:13,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:14,019.019 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:07:14,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:07:14,074.074 INFO    ] No camera update needed
[2026-08-25 03:07:14,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:07:14,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:07:14,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:07:14,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:07:16,130.130 INFO    ] ================================================
[2026-08-25 03:07:16,145.145 INFO    ] Launching Daemon at Tue Aug 25 03:07:16 IST 2026
[2026-08-25 03:07:16,157.157 INFO    ] ================================================
[2026-08-25 03:07:16,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:07:16
[2026-08-25 03:07:17,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:07:17,593.593 INFO    ] Initializing speech engine...
[2026-08-25 03:07:17,603.603 INFO    ] 2026-08-25 03:07:17
[2026-08-25 03:07:17,868.868 INFO    ] 2026-08-25 03:07:17
[2026-08-25 03:07:17,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:07:18,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:07:18,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:07:18,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:07:18,225.225 INFO    ] time= 25/08/2026 03:07:18
[2026-08-25 03:07:18,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:07:18,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:07:18,377.377 INFO    ] No existing commands found in stream
[2026-08-25 03:07:23,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:07:23,390.390 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 03:07:26,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:07:26,760.760 INFO    ] Checking for system updates...
[2026-08-25 03:07:26,795.795 INFO    ] 200
[2026-08-25 03:07:26,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:26,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:07:26,854.854 INFO    ] No update needed
[2026-08-25 03:07:26,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 03:07:26,891.891 INFO    ] 200
[2026-08-25 03:07:26,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:26,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:07:26,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:07:26,998.998 INFO    ] No camera update needed
[2026-08-25 03:07:27,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:07:27,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:07:27,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:07:27,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:07:29,058.058 INFO    ] ================================================
[2026-08-25 03:07:29,074.074 INFO    ] Launching Daemon at Tue Aug 25 03:07:29 IST 2026
[2026-08-25 03:07:29,085.085 INFO    ] ================================================
[2026-08-25 03:07:29,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:07:29
[2026-08-25 03:07:30,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:07:30,510.510 INFO    ] Initializing speech engine...
[2026-08-25 03:07:30,519.519 INFO    ] 2026-08-25 03:07:30
[2026-08-25 03:07:30,821.821 INFO    ] 2026-08-25 03:07:30
[2026-08-25 03:07:30,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:07:31,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:07:31,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:07:31,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:07:31,342.342 INFO    ] time= 25/08/2026 03:07:31
[2026-08-25 03:07:31,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:07:31,396.396 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:07:31,541.541 INFO    ] No existing commands found in stream
[2026-08-25 03:07:36,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:07:36,561.561 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 03:07:39,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:07:39,732.732 INFO    ] Checking for system updates...
[2026-08-25 03:07:39,773.773 INFO    ] 200
[2026-08-25 03:07:39,777.777 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:39,780.780 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 03:07:39,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 03:07:39,829.829 INFO    ] 200
[2026-08-25 03:07:39,832.832 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:39,835.835 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 03:07:39,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:07:39,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:07:39,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:07:39,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:07:41,898.898 INFO    ] ================================================
[2026-08-25 03:07:41,914.914 INFO    ] Launching Daemon at Tue Aug 25 03:07:41 IST 2026
[2026-08-25 03:07:41,925.925 INFO    ] ================================================
[2026-08-25 03:07:42,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:07:42
[2026-08-25 03:07:43,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:07:43,387.387 INFO    ] Initializing speech engine...
[2026-08-25 03:07:43,392.392 INFO    ] 2026-08-25 03:07:43
[2026-08-25 03:07:43,653.653 INFO    ] 2026-08-25 03:07:43
[2026-08-25 03:07:43,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:07:43,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:07:43,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:07:44,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:07:44,165.165 INFO    ] time= 25/08/2026 03:07:44
[2026-08-25 03:07:44,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:07:44,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:07:44,374.374 INFO    ] No existing commands found in stream
[2026-08-25 03:07:49,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:07:49,388.388 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 03:07:51,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:07:51,890.890 INFO    ] Checking for system updates...
[2026-08-25 03:07:51,928.928 INFO    ] 200
[2026-08-25 03:07:51,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:51,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:07:51,988.988 INFO    ] No update needed
[2026-08-25 03:07:51,990.990 INFO    ] Checking for camera pi updates...
[2026-08-25 03:07:52,025.025 INFO    ] 200
[2026-08-25 03:07:52,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:07:52,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:07:52,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:07:52,135.135 INFO    ] No camera update needed
[2026-08-25 03:07:52,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:07:52,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:07:52,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:07:52,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:07:54,194.194 INFO    ] ================================================
[2026-08-25 03:07:54,211.211 INFO    ] Launching Daemon at Tue Aug 25 03:07:54 IST 2026
[2026-08-25 03:07:54,222.222 INFO    ] ================================================
[2026-08-25 03:07:54,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:07:54
[2026-08-25 03:07:55,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:07:55,635.635 INFO    ] Initializing speech engine...
[2026-08-25 03:07:55,644.644 INFO    ] 2026-08-25 03:07:55
[2026-08-25 03:07:55,895.895 INFO    ] 2026-08-25 03:07:55
[2026-08-25 03:07:55,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:07:56,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:07:56,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:07:56,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:07:56,270.270 INFO    ] time= 25/08/2026 03:07:56
[2026-08-25 03:07:56,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:07:56,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:07:56,461.461 INFO    ] No existing commands found in stream
[2026-08-25 03:08:01,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:08:01,484.484 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 03:08:03,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:08:03,391.391 INFO    ] Checking for system updates...
[2026-08-25 03:08:03,454.454 INFO    ] 200
[2026-08-25 03:08:03,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:03,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:08:03,522.522 INFO    ] No update needed
[2026-08-25 03:08:03,526.526 INFO    ] Checking for camera pi updates...
[2026-08-25 03:08:03,566.566 INFO    ] 200
[2026-08-25 03:08:03,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:03,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:08:03,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:08:03,653.653 INFO    ] No camera update needed
[2026-08-25 03:08:03,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:08:03,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:08:03,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:08:03,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:08:05,716.716 INFO    ] ================================================
[2026-08-25 03:08:05,731.731 INFO    ] Launching Daemon at Tue Aug 25 03:08:05 IST 2026
[2026-08-25 03:08:05,742.742 INFO    ] ================================================
[2026-08-25 03:08:06,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:08:06
[2026-08-25 03:08:06,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:08:07,166.166 INFO    ] Initializing speech engine...
[2026-08-25 03:08:07,180.180 INFO    ] 2026-08-25 03:08:07
[2026-08-25 03:08:07,445.445 INFO    ] 2026-08-25 03:08:07
[2026-08-25 03:08:07,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:08:07,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:08:07,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:08:07,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:08:07,824.824 INFO    ] time= 25/08/2026 03:08:07
[2026-08-25 03:08:07,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:08:07,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:08:08,003.003 INFO    ] No existing commands found in stream
[2026-08-25 03:08:13,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:08:13,030.030 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 03:08:16,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:08:16,881.881 INFO    ] Checking for system updates...
[2026-08-25 03:08:16,917.917 INFO    ] 200
[2026-08-25 03:08:16,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:16,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:08:16,974.974 INFO    ] No update needed
[2026-08-25 03:08:16,976.976 INFO    ] Checking for camera pi updates...
[2026-08-25 03:08:17,010.010 INFO    ] 200
[2026-08-25 03:08:17,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:17,058.058 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:08:17,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:08:17,101.101 INFO    ] No camera update needed
[2026-08-25 03:08:17,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:08:17,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:08:17,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:08:17,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:08:19,158.158 INFO    ] ================================================
[2026-08-25 03:08:19,173.173 INFO    ] Launching Daemon at Tue Aug 25 03:08:19 IST 2026
[2026-08-25 03:08:19,184.184 INFO    ] ================================================
[2026-08-25 03:08:19,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:08:19
[2026-08-25 03:08:20,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:08:20,852.852 INFO    ] Initializing speech engine...
[2026-08-25 03:08:20,860.860 INFO    ] 2026-08-25 03:08:20
[2026-08-25 03:08:21,181.181 INFO    ] 2026-08-25 03:08:21
[2026-08-25 03:08:21,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:08:21,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:08:21,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:08:21,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:08:21,702.702 INFO    ] time= 25/08/2026 03:08:21
[2026-08-25 03:08:21,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:08:21,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:08:21,873.873 INFO    ] No existing commands found in stream
[2026-08-25 03:08:26,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:08:26,903.903 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 03:08:30,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:08:30,321.321 INFO    ] Checking for system updates...
[2026-08-25 03:08:30,358.358 INFO    ] 200
[2026-08-25 03:08:30,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:30,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:08:30,415.415 INFO    ] No update needed
[2026-08-25 03:08:30,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 03:08:30,451.451 INFO    ] 200
[2026-08-25 03:08:30,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:30,500.500 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:08:30,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:08:30,552.552 INFO    ] No camera update needed
[2026-08-25 03:08:30,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:08:30,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:08:30,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:08:30,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:08:32,608.608 INFO    ] ================================================
[2026-08-25 03:08:32,625.625 INFO    ] Launching Daemon at Tue Aug 25 03:08:32 IST 2026
[2026-08-25 03:08:32,637.637 INFO    ] ================================================
[2026-08-25 03:08:33,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:08:33
[2026-08-25 03:08:33,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:08:34,300.300 INFO    ] Initializing speech engine...
[2026-08-25 03:08:34,302.302 INFO    ] 2026-08-25 03:08:34
[2026-08-25 03:08:34,552.552 INFO    ] 2026-08-25 03:08:34
[2026-08-25 03:08:34,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:08:34,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:08:34,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:08:34,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:08:34,924.924 INFO    ] time= 25/08/2026 03:08:34
[2026-08-25 03:08:34,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:08:34,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:08:35,051.051 INFO    ] No existing commands found in stream
[2026-08-25 03:08:40,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:08:40,066.066 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 03:08:43,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:08:43,120.120 INFO    ] Checking for system updates...
[2026-08-25 03:08:43,156.156 INFO    ] 200
[2026-08-25 03:08:43,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:43,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:08:43,213.213 INFO    ] No update needed
[2026-08-25 03:08:43,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 03:08:43,248.248 INFO    ] 200
[2026-08-25 03:08:43,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:43,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:08:43,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:08:43,341.341 INFO    ] No camera update needed
[2026-08-25 03:08:43,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:08:43,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:08:43,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:08:43,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:08:45,396.396 INFO    ] ================================================
[2026-08-25 03:08:45,415.415 INFO    ] Launching Daemon at Tue Aug 25 03:08:45 IST 2026
[2026-08-25 03:08:45,427.427 INFO    ] ================================================
[2026-08-25 03:08:46,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:08:46
[2026-08-25 03:08:46,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:08:46,906.906 INFO    ] Initializing speech engine...
[2026-08-25 03:08:46,911.911 INFO    ] 2026-08-25 03:08:46
[2026-08-25 03:08:47,160.160 INFO    ] 2026-08-25 03:08:47
[2026-08-25 03:08:47,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:08:47,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:08:47,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:08:47,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:08:47,631.631 INFO    ] time= 25/08/2026 03:08:47
[2026-08-25 03:08:47,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:08:47,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:08:47,852.852 INFO    ] No existing commands found in stream
[2026-08-25 03:08:52,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:08:52,885.885 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 03:08:56,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:08:56,603.603 INFO    ] Checking for system updates...
[2026-08-25 03:08:56,640.640 INFO    ] 200
[2026-08-25 03:08:56,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:56,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:08:56,716.716 INFO    ] No update needed
[2026-08-25 03:08:56,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 03:08:56,754.754 INFO    ] 200
[2026-08-25 03:08:56,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:08:56,798.798 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:08:56,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:08:56,852.852 INFO    ] No camera update needed
[2026-08-25 03:08:56,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:08:56,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:08:56,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:08:56,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:08:58,910.910 INFO    ] ================================================
[2026-08-25 03:08:58,925.925 INFO    ] Launching Daemon at Tue Aug 25 03:08:58 IST 2026
[2026-08-25 03:08:58,936.936 INFO    ] ================================================
[2026-08-25 03:08:59,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:08:59
[2026-08-25 03:09:00,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:09:00,333.333 INFO    ] Initializing speech engine...
[2026-08-25 03:09:00,346.346 INFO    ] 2026-08-25 03:09:00
[2026-08-25 03:09:00,611.611 INFO    ] 2026-08-25 03:09:00
[2026-08-25 03:09:00,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:09:00,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:09:00,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:09:00,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:09:00,987.987 INFO    ] time= 25/08/2026 03:09:00
[2026-08-25 03:09:00,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:09:01,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:09:01,137.137 INFO    ] No existing commands found in stream
[2026-08-25 03:09:06,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:09:06,159.159 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 03:09:08,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:09:08,399.399 INFO    ] Checking for system updates...
[2026-08-25 03:09:08,442.442 INFO    ] 200
[2026-08-25 03:09:08,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:08,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:09:08,510.510 INFO    ] No update needed
[2026-08-25 03:09:08,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 03:09:08,557.557 INFO    ] 200
[2026-08-25 03:09:08,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:08,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:09:08,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:09:08,656.656 INFO    ] No camera update needed
[2026-08-25 03:09:08,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:09:08,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:09:08,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:09:08,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:09:10,714.714 INFO    ] ================================================
[2026-08-25 03:09:10,730.730 INFO    ] Launching Daemon at Tue Aug 25 03:09:10 IST 2026
[2026-08-25 03:09:10,741.741 INFO    ] ================================================
[2026-08-25 03:09:11,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:09:11
[2026-08-25 03:09:12,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:09:12,394.394 INFO    ] Initializing speech engine...
[2026-08-25 03:09:12,407.407 INFO    ] 2026-08-25 03:09:12
[2026-08-25 03:09:12,696.696 INFO    ] 2026-08-25 03:09:12
[2026-08-25 03:09:12,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:09:12,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:09:12,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:09:13,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:09:13,157.157 INFO    ] time= 25/08/2026 03:09:13
[2026-08-25 03:09:13,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:09:13,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:09:13,384.384 INFO    ] No existing commands found in stream
[2026-08-25 03:09:18,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:09:18,403.403 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 03:09:19,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:09:19,658.658 INFO    ] Checking for system updates...
[2026-08-25 03:09:19,696.696 INFO    ] 200
[2026-08-25 03:09:19,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:19,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:09:19,756.756 INFO    ] No update needed
[2026-08-25 03:09:19,759.759 INFO    ] Checking for camera pi updates...
[2026-08-25 03:09:19,798.798 INFO    ] 200
[2026-08-25 03:09:19,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:19,845.845 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:09:19,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:09:19,887.887 INFO    ] No camera update needed
[2026-08-25 03:09:19,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:09:19,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:09:19,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:09:19,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:09:21,944.944 INFO    ] ================================================
[2026-08-25 03:09:21,959.959 INFO    ] Launching Daemon at Tue Aug 25 03:09:21 IST 2026
[2026-08-25 03:09:21,970.970 INFO    ] ================================================
[2026-08-25 03:09:22,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:09:22
[2026-08-25 03:09:23,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:09:23,384.384 INFO    ] Initializing speech engine...
[2026-08-25 03:09:23,393.393 INFO    ] 2026-08-25 03:09:23
[2026-08-25 03:09:23,646.646 INFO    ] 2026-08-25 03:09:23
[2026-08-25 03:09:23,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:09:23,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:09:23,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:09:24,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:09:24,027.027 INFO    ] time= 25/08/2026 03:09:24
[2026-08-25 03:09:24,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:09:24,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:09:24,113.113 INFO    ] No existing commands found in stream
[2026-08-25 03:09:29,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:09:29,132.132 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 03:09:33,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:09:33,570.570 INFO    ] Checking for system updates...
[2026-08-25 03:09:33,606.606 INFO    ] 200
[2026-08-25 03:09:33,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:33,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:09:33,663.663 INFO    ] No update needed
[2026-08-25 03:09:33,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 03:09:33,698.698 INFO    ] 200
[2026-08-25 03:09:33,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:33,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:09:33,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:09:33,791.791 INFO    ] No camera update needed
[2026-08-25 03:09:33,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:09:33,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:09:33,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:09:33,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:09:35,847.847 INFO    ] ================================================
[2026-08-25 03:09:35,862.862 INFO    ] Launching Daemon at Tue Aug 25 03:09:35 IST 2026
[2026-08-25 03:09:35,873.873 INFO    ] ================================================
[2026-08-25 03:09:36,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:09:36
[2026-08-25 03:09:37,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:09:37,286.286 INFO    ] Initializing speech engine...
[2026-08-25 03:09:37,309.309 INFO    ] 2026-08-25 03:09:37
[2026-08-25 03:09:37,564.564 INFO    ] 2026-08-25 03:09:37
[2026-08-25 03:09:37,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:09:37,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:09:37,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:09:37,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:09:37,943.943 INFO    ] time= 25/08/2026 03:09:37
[2026-08-25 03:09:37,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:09:38,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:09:38,132.132 INFO    ] No existing commands found in stream
[2026-08-25 03:09:43,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:09:43,158.158 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 03:09:45,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:09:45,910.910 INFO    ] Checking for system updates...
[2026-08-25 03:09:45,946.946 INFO    ] 200
[2026-08-25 03:09:45,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:46,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:09:46,002.002 INFO    ] No update needed
[2026-08-25 03:09:46,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 03:09:46,038.038 INFO    ] 200
[2026-08-25 03:09:46,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:46,080.080 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:09:46,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:09:46,139.139 INFO    ] No camera update needed
[2026-08-25 03:09:46,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:09:46,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:09:46,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:09:46,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:09:48,195.195 INFO    ] ================================================
[2026-08-25 03:09:48,210.210 INFO    ] Launching Daemon at Tue Aug 25 03:09:48 IST 2026
[2026-08-25 03:09:48,220.220 INFO    ] ================================================
[2026-08-25 03:09:48,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:09:48
[2026-08-25 03:09:49,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:09:49,660.660 INFO    ] Initializing speech engine...
[2026-08-25 03:09:49,683.683 INFO    ] 2026-08-25 03:09:49
[2026-08-25 03:09:49,944.944 INFO    ] 2026-08-25 03:09:49
[2026-08-25 03:09:49,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:09:50,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:09:50,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:09:50,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:09:50,321.321 INFO    ] time= 25/08/2026 03:09:50
[2026-08-25 03:09:50,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:09:50,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:09:50,494.494 INFO    ] No existing commands found in stream
[2026-08-25 03:09:55,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:09:55,527.527 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 03:09:59,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:09:59,277.277 INFO    ] Checking for system updates...
[2026-08-25 03:09:59,312.312 INFO    ] 200
[2026-08-25 03:09:59,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:59,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:09:59,376.376 INFO    ] No update needed
[2026-08-25 03:09:59,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 03:09:59,411.411 INFO    ] 200
[2026-08-25 03:09:59,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:09:59,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:09:59,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:09:59,506.506 INFO    ] No camera update needed
[2026-08-25 03:09:59,508.508 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:09:59,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:09:59,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:09:59,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:10:01,586.586 INFO    ] ================================================
[2026-08-25 03:10:01,626.626 INFO    ] Launching Daemon at Tue Aug 25 03:10:01 IST 2026
[2026-08-25 03:10:01,650.650 INFO    ] ================================================
[2026-08-25 03:10:02,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:10:02
[2026-08-25 03:10:03,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:10:03,468.468 INFO    ] Initializing speech engine...
[2026-08-25 03:10:03,474.474 INFO    ] 2026-08-25 03:10:03
[2026-08-25 03:10:03,731.731 INFO    ] 2026-08-25 03:10:03
[2026-08-25 03:10:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:10:04,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:10:04,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:10:04,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:10:04,187.187 INFO    ] time= 25/08/2026 03:10:04
[2026-08-25 03:10:04,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:10:04,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:10:04,409.409 INFO    ] No existing commands found in stream
[2026-08-25 03:10:09,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:10:09,420.420 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 03:10:13,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:10:13,100.100 INFO    ] Checking for system updates...
[2026-08-25 03:10:13,135.135 INFO    ] 200
[2026-08-25 03:10:13,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:13,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:10:13,191.191 INFO    ] No update needed
[2026-08-25 03:10:13,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 03:10:13,233.233 INFO    ] 200
[2026-08-25 03:10:13,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:13,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:10:13,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:10:13,425.425 INFO    ] No camera update needed
[2026-08-25 03:10:13,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:10:13,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:10:13,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:10:13,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:10:15,479.479 INFO    ] ================================================
[2026-08-25 03:10:15,494.494 INFO    ] Launching Daemon at Tue Aug 25 03:10:15 IST 2026
[2026-08-25 03:10:15,505.505 INFO    ] ================================================
[2026-08-25 03:10:16,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:10:16
[2026-08-25 03:10:16,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:10:16,962.962 INFO    ] Initializing speech engine...
[2026-08-25 03:10:16,971.971 INFO    ] 2026-08-25 03:10:16
[2026-08-25 03:10:17,231.231 INFO    ] 2026-08-25 03:10:17
[2026-08-25 03:10:17,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:10:17,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:10:17,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:10:17,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:10:17,711.711 INFO    ] time= 25/08/2026 03:10:17
[2026-08-25 03:10:17,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:10:17,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:10:17,898.898 INFO    ] No existing commands found in stream
[2026-08-25 03:10:22,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:10:22,928.928 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 03:10:24,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:10:24,190.190 INFO    ] Checking for system updates...
[2026-08-25 03:10:24,225.225 INFO    ] 200
[2026-08-25 03:10:24,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:24,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:10:24,282.282 INFO    ] No update needed
[2026-08-25 03:10:24,284.284 INFO    ] Checking for camera pi updates...
[2026-08-25 03:10:24,318.318 INFO    ] 200
[2026-08-25 03:10:24,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:24,365.365 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:10:24,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:10:24,405.405 INFO    ] No camera update needed
[2026-08-25 03:10:24,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:10:24,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:10:24,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:10:24,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:10:26,462.462 INFO    ] ================================================
[2026-08-25 03:10:26,477.477 INFO    ] Launching Daemon at Tue Aug 25 03:10:26 IST 2026
[2026-08-25 03:10:26,487.487 INFO    ] ================================================
[2026-08-25 03:10:27,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:10:27
[2026-08-25 03:10:27,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:10:27,923.923 INFO    ] Initializing speech engine...
[2026-08-25 03:10:27,930.930 INFO    ] 2026-08-25 03:10:27
[2026-08-25 03:10:28,226.226 INFO    ] 2026-08-25 03:10:28
[2026-08-25 03:10:28,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:10:28,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:10:28,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:10:28,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:10:28,618.618 INFO    ] time= 25/08/2026 03:10:28
[2026-08-25 03:10:28,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:10:28,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:10:28,726.726 INFO    ] No existing commands found in stream
[2026-08-25 03:10:33,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:10:33,745.745 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 03:10:36,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:10:36,040.040 INFO    ] Checking for system updates...
[2026-08-25 03:10:36,082.082 INFO    ] 200
[2026-08-25 03:10:36,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:36,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:10:36,140.140 INFO    ] No update needed
[2026-08-25 03:10:36,142.142 INFO    ] Checking for camera pi updates...
[2026-08-25 03:10:36,176.176 INFO    ] 200
[2026-08-25 03:10:36,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:36,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:10:36,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:10:36,266.266 INFO    ] No camera update needed
[2026-08-25 03:10:36,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:10:36,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:10:36,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:10:36,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:10:38,320.320 INFO    ] ================================================
[2026-08-25 03:10:38,335.335 INFO    ] Launching Daemon at Tue Aug 25 03:10:38 IST 2026
[2026-08-25 03:10:38,346.346 INFO    ] ================================================
[2026-08-25 03:10:38,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:10:38
[2026-08-25 03:10:39,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:10:39,796.796 INFO    ] Initializing speech engine...
[2026-08-25 03:10:39,810.810 INFO    ] 2026-08-25 03:10:39
[2026-08-25 03:10:40,097.097 INFO    ] 2026-08-25 03:10:40
[2026-08-25 03:10:40,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:10:40,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:10:40,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:10:40,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:10:40,483.483 INFO    ] time= 25/08/2026 03:10:40
[2026-08-25 03:10:40,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:10:40,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:10:40,611.611 INFO    ] No existing commands found in stream
[2026-08-25 03:10:45,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:10:45,629.629 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 03:10:47,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:10:47,439.439 INFO    ] Checking for system updates...
[2026-08-25 03:10:47,475.475 INFO    ] 200
[2026-08-25 03:10:47,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:47,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:10:47,532.532 INFO    ] No update needed
[2026-08-25 03:10:47,534.534 INFO    ] Checking for camera pi updates...
[2026-08-25 03:10:47,568.568 INFO    ] 200
[2026-08-25 03:10:47,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:10:47,611.611 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:10:47,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:10:47,655.655 INFO    ] No camera update needed
[2026-08-25 03:10:47,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:10:47,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:10:47,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:10:47,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:10:49,710.710 INFO    ] ================================================
[2026-08-25 03:10:49,725.725 INFO    ] Launching Daemon at Tue Aug 25 03:10:49 IST 2026
[2026-08-25 03:10:49,736.736 INFO    ] ================================================
[2026-08-25 03:10:50,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:10:50
[2026-08-25 03:10:50,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:10:51,200.200 INFO    ] Initializing speech engine...
[2026-08-25 03:10:51,209.209 INFO    ] 2026-08-25 03:10:51
[2026-08-25 03:10:51,459.459 INFO    ] 2026-08-25 03:10:51
[2026-08-25 03:10:51,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:10:51,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:10:51,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:10:51,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:10:51,938.938 INFO    ] time= 25/08/2026 03:10:51
[2026-08-25 03:10:51,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:10:52,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:10:52,169.169 INFO    ] No existing commands found in stream
[2026-08-25 03:10:57,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:10:57,189.189 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 03:10:59,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:10:59,979.979 INFO    ] Checking for system updates...
[2026-08-25 03:11:00,015.015 INFO    ] 200
[2026-08-25 03:11:00,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:00,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:00,072.072 INFO    ] No update needed
[2026-08-25 03:11:00,075.075 INFO    ] Checking for camera pi updates...
[2026-08-25 03:11:00,108.108 INFO    ] 200
[2026-08-25 03:11:00,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:00,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:11:00,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:00,210.210 INFO    ] No camera update needed
[2026-08-25 03:11:00,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:11:00,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:11:00,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:11:00,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:11:02,274.274 INFO    ] ================================================
[2026-08-25 03:11:02,293.293 INFO    ] Launching Daemon at Tue Aug 25 03:11:02 IST 2026
[2026-08-25 03:11:02,307.307 INFO    ] ================================================
[2026-08-25 03:11:03,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:11:03
[2026-08-25 03:11:03,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:11:03,874.874 INFO    ] Initializing speech engine...
[2026-08-25 03:11:03,900.900 INFO    ] 2026-08-25 03:11:03
[2026-08-25 03:11:04,169.169 INFO    ] 2026-08-25 03:11:04
[2026-08-25 03:11:04,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:11:04,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:11:04,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:11:04,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:11:04,581.581 INFO    ] time= 25/08/2026 03:11:04
[2026-08-25 03:11:04,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:11:04,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:11:04,768.768 INFO    ] No existing commands found in stream
[2026-08-25 03:11:09,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:11:09,797.797 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 03:11:12,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:11:12,976.976 INFO    ] Checking for system updates...
[2026-08-25 03:11:13,012.012 INFO    ] 200
[2026-08-25 03:11:13,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:13,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:13,073.073 INFO    ] No update needed
[2026-08-25 03:11:13,075.075 INFO    ] Checking for camera pi updates...
[2026-08-25 03:11:13,109.109 INFO    ] 200
[2026-08-25 03:11:13,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:13,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:11:13,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:13,210.210 INFO    ] No camera update needed
[2026-08-25 03:11:13,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:11:13,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:11:13,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:11:13,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:11:15,265.265 INFO    ] ================================================
[2026-08-25 03:11:15,281.281 INFO    ] Launching Daemon at Tue Aug 25 03:11:15 IST 2026
[2026-08-25 03:11:15,291.291 INFO    ] ================================================
[2026-08-25 03:11:15,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:11:15
[2026-08-25 03:11:16,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:11:16,761.761 INFO    ] Initializing speech engine...
[2026-08-25 03:11:16,769.769 INFO    ] 2026-08-25 03:11:16
[2026-08-25 03:11:17,031.031 INFO    ] 2026-08-25 03:11:17
[2026-08-25 03:11:17,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:11:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:11:17,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:11:17,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:11:17,403.403 INFO    ] time= 25/08/2026 03:11:17
[2026-08-25 03:11:17,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:11:17,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:11:17,600.600 INFO    ] No existing commands found in stream
[2026-08-25 03:11:22,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:11:22,614.614 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 03:11:26,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:11:26,949.949 INFO    ] Checking for system updates...
[2026-08-25 03:11:26,986.986 INFO    ] 200
[2026-08-25 03:11:26,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:27,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:27,044.044 INFO    ] No update needed
[2026-08-25 03:11:27,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 03:11:27,080.080 INFO    ] 200
[2026-08-25 03:11:27,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:27,126.126 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:11:27,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:27,172.172 INFO    ] No camera update needed
[2026-08-25 03:11:27,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:11:27,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:11:27,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:11:27,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:11:29,231.231 INFO    ] ================================================
[2026-08-25 03:11:29,246.246 INFO    ] Launching Daemon at Tue Aug 25 03:11:29 IST 2026
[2026-08-25 03:11:29,257.257 INFO    ] ================================================
[2026-08-25 03:11:29,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:11:29
[2026-08-25 03:11:30,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:11:30,719.719 INFO    ] Initializing speech engine...
[2026-08-25 03:11:30,729.729 INFO    ] 2026-08-25 03:11:30
[2026-08-25 03:11:30,991.991 INFO    ] 2026-08-25 03:11:30
[2026-08-25 03:11:31,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:11:31,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:11:31,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:11:31,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:11:31,454.454 INFO    ] time= 25/08/2026 03:11:31
[2026-08-25 03:11:31,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:11:31,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:11:31,692.692 INFO    ] No existing commands found in stream
[2026-08-25 03:11:36,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:11:36,723.723 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 03:11:40,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:11:40,058.058 INFO    ] Checking for system updates...
[2026-08-25 03:11:40,094.094 INFO    ] 200
[2026-08-25 03:11:40,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:40,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:40,151.151 INFO    ] No update needed
[2026-08-25 03:11:40,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 03:11:40,192.192 INFO    ] 200
[2026-08-25 03:11:40,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:40,240.240 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:11:40,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:11:40,282.282 INFO    ] No camera update needed
[2026-08-25 03:11:40,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:11:40,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:11:40,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:11:40,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:11:42,337.337 INFO    ] ================================================
[2026-08-25 03:11:42,352.352 INFO    ] Launching Daemon at Tue Aug 25 03:11:42 IST 2026
[2026-08-25 03:11:42,363.363 INFO    ] ================================================
[2026-08-25 03:11:43,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:11:43
[2026-08-25 03:11:43,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:11:43,996.996 INFO    ] Initializing speech engine...
[2026-08-25 03:11:44,008.008 INFO    ] 2026-08-25 03:11:43
[2026-08-25 03:11:44,317.317 INFO    ] 2026-08-25 03:11:44
[2026-08-25 03:11:44,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:11:44,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:11:44,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:11:44,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:11:44,752.752 INFO    ] time= 25/08/2026 03:11:44
[2026-08-25 03:11:44,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:11:44,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:11:44,947.947 INFO    ] No existing commands found in stream
[2026-08-25 03:11:49,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:11:49,982.982 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 03:11:52,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:11:52,703.703 INFO    ] Checking for system updates...
[2026-08-25 03:11:52,744.744 INFO    ] 200
[2026-08-25 03:11:52,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:52,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:11:52,804.804 INFO    ] No update needed
[2026-08-25 03:11:52,807.807 INFO    ] Checking for camera pi updates...
[2026-08-25 03:11:52,842.842 INFO    ] 200
[2026-08-25 03:11:52,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:11:52,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:11:52,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:11:52,928.928 INFO    ] No camera update needed
[2026-08-25 03:11:52,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:11:52,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:11:52,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:11:52,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:11:54,989.989 INFO    ] ================================================
[2026-08-25 03:11:55,004.004 INFO    ] Launching Daemon at Tue Aug 25 03:11:54 IST 2026
[2026-08-25 03:11:55,015.015 INFO    ] ================================================
[2026-08-25 03:11:55,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:11:55
[2026-08-25 03:11:56,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:11:56,472.472 INFO    ] Initializing speech engine...
[2026-08-25 03:11:56,489.489 INFO    ] 2026-08-25 03:11:56
[2026-08-25 03:11:56,766.766 INFO    ] 2026-08-25 03:11:56
[2026-08-25 03:11:56,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:11:57,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:11:57,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:11:57,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:11:57,171.171 INFO    ] time= 25/08/2026 03:11:57
[2026-08-25 03:11:57,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:11:57,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:11:57,280.280 INFO    ] No existing commands found in stream
[2026-08-25 03:12:02,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:12:02,297.297 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 03:12:04,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:12:04,338.338 INFO    ] Checking for system updates...
[2026-08-25 03:12:04,373.373 INFO    ] 200
[2026-08-25 03:12:04,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:04,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:12:04,430.430 INFO    ] No update needed
[2026-08-25 03:12:04,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 03:12:04,466.466 INFO    ] 200
[2026-08-25 03:12:04,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:04,509.509 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:12:04,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:12:04,552.552 INFO    ] No camera update needed
[2026-08-25 03:12:04,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:12:04,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:12:04,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:12:04,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:12:06,608.608 INFO    ] ================================================
[2026-08-25 03:12:06,623.623 INFO    ] Launching Daemon at Tue Aug 25 03:12:06 IST 2026
[2026-08-25 03:12:06,633.633 INFO    ] ================================================
[2026-08-25 03:12:07,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:12:07
[2026-08-25 03:12:07,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:12:08,058.058 INFO    ] Initializing speech engine...
[2026-08-25 03:12:08,067.067 INFO    ] 2026-08-25 03:12:08
[2026-08-25 03:12:08,315.315 INFO    ] 2026-08-25 03:12:08
[2026-08-25 03:12:08,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:12:08,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:12:08,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:12:08,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:12:08,690.690 INFO    ] time= 25/08/2026 03:12:08
[2026-08-25 03:12:08,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:12:08,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:12:08,862.862 INFO    ] No existing commands found in stream
[2026-08-25 03:12:13,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:12:13,890.890 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 03:12:15,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:12:15,296.296 INFO    ] Checking for system updates...
[2026-08-25 03:12:15,331.331 INFO    ] 200
[2026-08-25 03:12:15,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:15,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:12:15,389.389 INFO    ] No update needed
[2026-08-25 03:12:15,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 03:12:15,428.428 INFO    ] 200
[2026-08-25 03:12:15,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:15,470.470 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:12:15,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:12:15,518.518 INFO    ] No camera update needed
[2026-08-25 03:12:15,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:12:15,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:12:15,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:12:15,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:12:17,576.576 INFO    ] ================================================
[2026-08-25 03:12:17,592.592 INFO    ] Launching Daemon at Tue Aug 25 03:12:17 IST 2026
[2026-08-25 03:12:17,602.602 INFO    ] ================================================
[2026-08-25 03:12:18,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:12:18
[2026-08-25 03:12:18,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:12:19,060.060 INFO    ] Initializing speech engine...
[2026-08-25 03:12:19,067.067 INFO    ] 2026-08-25 03:12:19
[2026-08-25 03:12:19,332.332 INFO    ] 2026-08-25 03:12:19
[2026-08-25 03:12:19,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:12:19,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:12:19,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:12:19,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:12:19,873.873 INFO    ] time= 25/08/2026 03:12:19
[2026-08-25 03:12:19,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:12:19,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:12:20,023.023 INFO    ] No existing commands found in stream
[2026-08-25 03:12:25,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:12:25,040.040 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 03:12:28,528.528 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:12:28,530.530 INFO    ] Checking for system updates...
[2026-08-25 03:12:28,565.565 INFO    ] 200
[2026-08-25 03:12:28,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:28,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:12:28,625.625 INFO    ] No update needed
[2026-08-25 03:12:28,627.627 INFO    ] Checking for camera pi updates...
[2026-08-25 03:12:28,664.664 INFO    ] 200
[2026-08-25 03:12:28,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:28,712.712 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:12:28,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:12:28,861.861 INFO    ] No camera update needed
[2026-08-25 03:12:28,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:12:28,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:12:28,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:12:28,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:12:30,918.918 INFO    ] ================================================
[2026-08-25 03:12:30,933.933 INFO    ] Launching Daemon at Tue Aug 25 03:12:30 IST 2026
[2026-08-25 03:12:30,944.944 INFO    ] ================================================
[2026-08-25 03:12:31,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:12:31
[2026-08-25 03:12:32,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:12:32,503.503 INFO    ] Initializing speech engine...
[2026-08-25 03:12:32,509.509 INFO    ] 2026-08-25 03:12:32
[2026-08-25 03:12:32,851.851 INFO    ] 2026-08-25 03:12:32
[2026-08-25 03:12:32,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:12:33,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:12:33,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:12:33,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:12:33,325.325 INFO    ] time= 25/08/2026 03:12:33
[2026-08-25 03:12:33,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:12:33,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:12:33,543.543 INFO    ] No existing commands found in stream
[2026-08-25 03:12:38,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:12:38,577.577 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 03:12:41,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:12:41,315.315 INFO    ] Checking for system updates...
[2026-08-25 03:12:41,351.351 INFO    ] 200
[2026-08-25 03:12:41,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:41,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:12:41,408.408 INFO    ] No update needed
[2026-08-25 03:12:41,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 03:12:41,444.444 INFO    ] 200
[2026-08-25 03:12:41,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:41,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:12:41,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:12:41,548.548 INFO    ] No camera update needed
[2026-08-25 03:12:41,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:12:41,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:12:41,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:12:41,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:12:43,603.603 INFO    ] ================================================
[2026-08-25 03:12:43,619.619 INFO    ] Launching Daemon at Tue Aug 25 03:12:43 IST 2026
[2026-08-25 03:12:43,630.630 INFO    ] ================================================
[2026-08-25 03:12:44,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:12:44
[2026-08-25 03:12:44,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:12:45,087.087 INFO    ] Initializing speech engine...
[2026-08-25 03:12:45,096.096 INFO    ] 2026-08-25 03:12:45
[2026-08-25 03:12:45,358.358 INFO    ] 2026-08-25 03:12:45
[2026-08-25 03:12:45,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:12:45,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:12:45,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:12:45,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:12:45,857.857 INFO    ] time= 25/08/2026 03:12:45
[2026-08-25 03:12:45,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:12:45,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:12:46,058.058 INFO    ] No existing commands found in stream
[2026-08-25 03:12:51,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:12:51,076.076 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 03:12:54,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:12:54,729.729 INFO    ] Checking for system updates...
[2026-08-25 03:12:54,765.765 INFO    ] 200
[2026-08-25 03:12:54,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:54,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:12:54,824.824 INFO    ] No update needed
[2026-08-25 03:12:54,826.826 INFO    ] Checking for camera pi updates...
[2026-08-25 03:12:54,861.861 INFO    ] 200
[2026-08-25 03:12:54,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:12:54,909.909 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:12:54,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:12:54,954.954 INFO    ] No camera update needed
[2026-08-25 03:12:54,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:12:54,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:12:54,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:12:54,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:12:57,010.010 INFO    ] ================================================
[2026-08-25 03:12:57,026.026 INFO    ] Launching Daemon at Tue Aug 25 03:12:57 IST 2026
[2026-08-25 03:12:57,037.037 INFO    ] ================================================
[2026-08-25 03:12:57,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:12:57
[2026-08-25 03:12:58,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:12:58,441.441 INFO    ] Initializing speech engine...
[2026-08-25 03:12:58,447.447 INFO    ] 2026-08-25 03:12:58
[2026-08-25 03:12:58,744.744 INFO    ] 2026-08-25 03:12:58
[2026-08-25 03:12:58,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:12:58,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:12:58,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:12:59,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:12:59,161.161 INFO    ] time= 25/08/2026 03:12:59
[2026-08-25 03:12:59,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:12:59,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:12:59,262.262 INFO    ] No existing commands found in stream
[2026-08-25 03:13:04,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:13:04,284.284 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 03:13:05,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:13:05,543.543 INFO    ] Checking for system updates...
[2026-08-25 03:13:05,580.580 INFO    ] 200
[2026-08-25 03:13:05,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:05,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:13:05,638.638 INFO    ] No update needed
[2026-08-25 03:13:05,640.640 INFO    ] Checking for camera pi updates...
[2026-08-25 03:13:05,678.678 INFO    ] 200
[2026-08-25 03:13:05,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:05,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:13:05,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:13:05,770.770 INFO    ] No camera update needed
[2026-08-25 03:13:05,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:13:05,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:13:05,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:13:05,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:13:07,828.828 INFO    ] ================================================
[2026-08-25 03:13:07,844.844 INFO    ] Launching Daemon at Tue Aug 25 03:13:07 IST 2026
[2026-08-25 03:13:07,854.854 INFO    ] ================================================
[2026-08-25 03:13:08,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:13:08
[2026-08-25 03:13:09,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:13:09,333.333 INFO    ] Initializing speech engine...
[2026-08-25 03:13:09,352.352 INFO    ] 2026-08-25 03:13:09
[2026-08-25 03:13:09,603.603 INFO    ] 2026-08-25 03:13:09
[2026-08-25 03:13:09,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:13:09,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:13:09,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:13:09,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:13:09,981.981 INFO    ] time= 25/08/2026 03:13:09
[2026-08-25 03:13:09,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:13:10,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:13:10,167.167 INFO    ] No existing commands found in stream
[2026-08-25 03:13:15,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:13:15,197.197 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 03:13:17,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:13:17,043.043 INFO    ] Checking for system updates...
[2026-08-25 03:13:17,078.078 INFO    ] 200
[2026-08-25 03:13:17,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:17,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:13:17,135.135 INFO    ] No update needed
[2026-08-25 03:13:17,137.137 INFO    ] Checking for camera pi updates...
[2026-08-25 03:13:17,174.174 INFO    ] 200
[2026-08-25 03:13:17,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:17,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:13:17,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:13:17,261.261 INFO    ] No camera update needed
[2026-08-25 03:13:17,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:13:17,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:13:17,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:13:17,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:13:19,316.316 INFO    ] ================================================
[2026-08-25 03:13:19,332.332 INFO    ] Launching Daemon at Tue Aug 25 03:13:19 IST 2026
[2026-08-25 03:13:19,343.343 INFO    ] ================================================
[2026-08-25 03:13:19,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:13:19
[2026-08-25 03:13:20,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:13:20,757.757 INFO    ] Initializing speech engine...
[2026-08-25 03:13:20,765.765 INFO    ] 2026-08-25 03:13:20
[2026-08-25 03:13:21,014.014 INFO    ] 2026-08-25 03:13:21
[2026-08-25 03:13:21,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:13:21,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:13:21,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:13:21,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:13:21,488.488 INFO    ] time= 25/08/2026 03:13:21
[2026-08-25 03:13:21,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:13:21,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:13:21,729.729 INFO    ] No existing commands found in stream
[2026-08-25 03:13:26,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:13:26,753.753 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 03:13:28,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:13:28,743.743 INFO    ] Checking for system updates...
[2026-08-25 03:13:28,782.782 INFO    ] 200
[2026-08-25 03:13:28,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:28,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:13:28,844.844 INFO    ] No update needed
[2026-08-25 03:13:28,847.847 INFO    ] Checking for camera pi updates...
[2026-08-25 03:13:28,883.883 INFO    ] 200
[2026-08-25 03:13:28,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:28,927.927 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:13:28,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:13:28,972.972 INFO    ] No camera update needed
[2026-08-25 03:13:28,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:13:28,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:13:28,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:13:28,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:13:31,026.026 INFO    ] ================================================
[2026-08-25 03:13:31,042.042 INFO    ] Launching Daemon at Tue Aug 25 03:13:31 IST 2026
[2026-08-25 03:13:31,053.053 INFO    ] ================================================
[2026-08-25 03:13:31,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:13:31
[2026-08-25 03:13:32,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:13:32,733.733 INFO    ] Initializing speech engine...
[2026-08-25 03:13:32,747.747 INFO    ] 2026-08-25 03:13:32
[2026-08-25 03:13:33,003.003 INFO    ] 2026-08-25 03:13:32
[2026-08-25 03:13:33,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:13:33,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:13:33,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:13:33,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:13:33,455.455 INFO    ] time= 25/08/2026 03:13:33
[2026-08-25 03:13:33,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:13:33,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:13:33,623.623 INFO    ] No existing commands found in stream
[2026-08-25 03:13:38,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:13:38,658.658 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 03:13:43,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:13:43,046.046 INFO    ] Checking for system updates...
[2026-08-25 03:13:43,081.081 INFO    ] 200
[2026-08-25 03:13:43,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:43,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:13:43,140.140 INFO    ] No update needed
[2026-08-25 03:13:43,142.142 INFO    ] Checking for camera pi updates...
[2026-08-25 03:13:43,175.175 INFO    ] 200
[2026-08-25 03:13:43,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:43,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:13:43,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:13:43,259.259 INFO    ] No camera update needed
[2026-08-25 03:13:43,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:13:43,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:13:43,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:13:43,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:13:45,313.313 INFO    ] ================================================
[2026-08-25 03:13:45,328.328 INFO    ] Launching Daemon at Tue Aug 25 03:13:45 IST 2026
[2026-08-25 03:13:45,339.339 INFO    ] ================================================
[2026-08-25 03:13:45,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:13:45
[2026-08-25 03:13:46,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:13:46,787.787 INFO    ] Initializing speech engine...
[2026-08-25 03:13:46,796.796 INFO    ] 2026-08-25 03:13:46
[2026-08-25 03:13:47,070.070 INFO    ] 2026-08-25 03:13:47
[2026-08-25 03:13:47,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:13:47,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:13:47,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:13:47,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:13:47,539.539 INFO    ] time= 25/08/2026 03:13:47
[2026-08-25 03:13:47,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:13:47,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:13:47,761.761 INFO    ] No existing commands found in stream
[2026-08-25 03:13:52,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:13:52,788.788 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 03:13:56,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:13:56,138.138 INFO    ] Checking for system updates...
[2026-08-25 03:13:56,174.174 INFO    ] 200
[2026-08-25 03:13:56,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:56,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:13:56,238.238 INFO    ] No update needed
[2026-08-25 03:13:56,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 03:13:56,278.278 INFO    ] 200
[2026-08-25 03:13:56,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:13:56,325.325 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:13:56,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:13:56,365.365 INFO    ] No camera update needed
[2026-08-25 03:13:56,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:13:56,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:13:56,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:13:56,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:13:58,419.419 INFO    ] ================================================
[2026-08-25 03:13:58,435.435 INFO    ] Launching Daemon at Tue Aug 25 03:13:58 IST 2026
[2026-08-25 03:13:58,446.446 INFO    ] ================================================
[2026-08-25 03:13:59,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:13:59
[2026-08-25 03:13:59,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:13:59,958.958 INFO    ] Initializing speech engine...
[2026-08-25 03:13:59,967.967 INFO    ] 2026-08-25 03:13:59
[2026-08-25 03:14:00,220.220 INFO    ] 2026-08-25 03:14:00
[2026-08-25 03:14:00,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:14:00,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:14:00,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:14:00,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:14:00,604.604 INFO    ] time= 25/08/2026 03:14:00
[2026-08-25 03:14:00,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:14:00,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:14:00,729.729 INFO    ] No existing commands found in stream
[2026-08-25 03:14:05,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:14:05,745.745 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 03:14:08,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:14:08,377.377 INFO    ] Checking for system updates...
[2026-08-25 03:14:08,416.416 INFO    ] 200
[2026-08-25 03:14:08,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:08,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:08,483.483 INFO    ] No update needed
[2026-08-25 03:14:08,486.486 INFO    ] Checking for camera pi updates...
[2026-08-25 03:14:08,525.525 INFO    ] 200
[2026-08-25 03:14:08,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:08,568.568 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:14:08,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:08,614.614 INFO    ] No camera update needed
[2026-08-25 03:14:08,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:14:08,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:14:08,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:14:08,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:14:10,669.669 INFO    ] ================================================
[2026-08-25 03:14:10,684.684 INFO    ] Launching Daemon at Tue Aug 25 03:14:10 IST 2026
[2026-08-25 03:14:10,695.695 INFO    ] ================================================
[2026-08-25 03:14:11,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:14:11
[2026-08-25 03:14:11,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:14:12,094.094 INFO    ] Initializing speech engine...
[2026-08-25 03:14:12,103.103 INFO    ] 2026-08-25 03:14:12
[2026-08-25 03:14:12,394.394 INFO    ] 2026-08-25 03:14:12
[2026-08-25 03:14:12,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:14:12,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:14:12,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:14:12,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:14:12,750.750 INFO    ] time= 25/08/2026 03:14:12
[2026-08-25 03:14:12,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:14:12,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:14:12,878.878 INFO    ] No existing commands found in stream
[2026-08-25 03:14:17,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:14:17,911.911 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 03:14:20,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:14:20,930.930 INFO    ] Checking for system updates...
[2026-08-25 03:14:20,966.966 INFO    ] 200
[2026-08-25 03:14:20,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:21,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:21,024.024 INFO    ] No update needed
[2026-08-25 03:14:21,026.026 INFO    ] Checking for camera pi updates...
[2026-08-25 03:14:21,064.064 INFO    ] 200
[2026-08-25 03:14:21,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:21,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:14:21,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:21,155.155 INFO    ] No camera update needed
[2026-08-25 03:14:21,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:14:21,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:14:21,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:14:21,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:14:23,210.210 INFO    ] ================================================
[2026-08-25 03:14:23,225.225 INFO    ] Launching Daemon at Tue Aug 25 03:14:23 IST 2026
[2026-08-25 03:14:23,236.236 INFO    ] ================================================
[2026-08-25 03:14:23,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:14:23
[2026-08-25 03:14:24,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:14:24,872.872 INFO    ] Initializing speech engine...
[2026-08-25 03:14:24,884.884 INFO    ] 2026-08-25 03:14:24
[2026-08-25 03:14:25,169.169 INFO    ] 2026-08-25 03:14:25
[2026-08-25 03:14:25,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:14:25,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:14:25,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:14:25,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:14:25,630.630 INFO    ] time= 25/08/2026 03:14:25
[2026-08-25 03:14:25,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:14:25,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:14:25,802.802 INFO    ] No existing commands found in stream
[2026-08-25 03:14:30,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:14:30,845.845 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 03:14:32,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:14:32,309.309 INFO    ] Checking for system updates...
[2026-08-25 03:14:32,351.351 INFO    ] 200
[2026-08-25 03:14:32,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:32,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:32,427.427 INFO    ] No update needed
[2026-08-25 03:14:32,430.430 INFO    ] Checking for camera pi updates...
[2026-08-25 03:14:32,479.479 INFO    ] 200
[2026-08-25 03:14:32,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:32,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:14:32,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:32,591.591 INFO    ] No camera update needed
[2026-08-25 03:14:32,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:14:32,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:14:32,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:14:32,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:14:34,646.646 INFO    ] ================================================
[2026-08-25 03:14:34,662.662 INFO    ] Launching Daemon at Tue Aug 25 03:14:34 IST 2026
[2026-08-25 03:14:34,673.673 INFO    ] ================================================
[2026-08-25 03:14:35,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:14:35
[2026-08-25 03:14:35,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:14:36,131.131 INFO    ] Initializing speech engine...
[2026-08-25 03:14:36,139.139 INFO    ] 2026-08-25 03:14:36
[2026-08-25 03:14:36,401.401 INFO    ] 2026-08-25 03:14:36
[2026-08-25 03:14:36,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:14:36,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:14:36,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:14:36,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:14:36,862.862 INFO    ] time= 25/08/2026 03:14:36
[2026-08-25 03:14:36,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:14:36,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:14:37,095.095 INFO    ] No existing commands found in stream
[2026-08-25 03:14:42,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:14:42,115.115 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 03:14:45,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:14:45,717.717 INFO    ] Checking for system updates...
[2026-08-25 03:14:45,752.752 INFO    ] 200
[2026-08-25 03:14:45,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:45,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:45,814.814 INFO    ] No update needed
[2026-08-25 03:14:45,816.816 INFO    ] Checking for camera pi updates...
[2026-08-25 03:14:45,849.849 INFO    ] 200
[2026-08-25 03:14:45,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:45,897.897 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:14:45,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:45,942.942 INFO    ] No camera update needed
[2026-08-25 03:14:45,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:14:45,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:14:45,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:14:45,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:14:48,998.998 INFO    ] ================================================
[2026-08-25 03:14:48,013.013 INFO    ] Launching Daemon at Tue Aug 25 03:14:48 IST 2026
[2026-08-25 03:14:48,023.023 INFO    ] ================================================
[2026-08-25 03:14:48,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:14:48
[2026-08-25 03:14:49,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:14:49,416.416 INFO    ] Initializing speech engine...
[2026-08-25 03:14:49,435.435 INFO    ] 2026-08-25 03:14:49
[2026-08-25 03:14:49,693.693 INFO    ] 2026-08-25 03:14:49
[2026-08-25 03:14:49,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:14:49,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:14:49,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:14:50,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:14:50,068.068 INFO    ] time= 25/08/2026 03:14:50
[2026-08-25 03:14:50,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:14:50,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:14:50,230.230 INFO    ] No existing commands found in stream
[2026-08-25 03:14:55,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:14:55,258.258 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 03:14:59,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:14:59,006.006 INFO    ] Checking for system updates...
[2026-08-25 03:14:59,045.045 INFO    ] 200
[2026-08-25 03:14:59,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:59,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:59,103.103 INFO    ] No update needed
[2026-08-25 03:14:59,106.106 INFO    ] Checking for camera pi updates...
[2026-08-25 03:14:59,142.142 INFO    ] 200
[2026-08-25 03:14:59,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:14:59,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:14:59,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:14:59,230.230 INFO    ] No camera update needed
[2026-08-25 03:14:59,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:14:59,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:14:59,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:14:59,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:15:01,413.413 INFO    ] ================================================
[2026-08-25 03:15:01,671.671 INFO    ] Launching Daemon at Tue Aug 25 03:15:01 IST 2026
[2026-08-25 03:15:01,766.766 INFO    ] ================================================
[2026-08-25 03:15:02,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:15:02
[2026-08-25 03:15:03,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:15:03,553.553 INFO    ] Initializing speech engine...
[2026-08-25 03:15:03,558.558 INFO    ] 2026-08-25 03:15:03
[2026-08-25 03:15:03,836.836 INFO    ] 2026-08-25 03:15:03
[2026-08-25 03:15:03,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:15:04,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:15:04,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:15:04,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:15:04,220.220 INFO    ] time= 25/08/2026 03:15:04
[2026-08-25 03:15:04,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:15:04,254.254 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:15:04,332.332 INFO    ] No existing commands found in stream
[2026-08-25 03:15:09,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:15:09,348.348 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 03:15:10,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:15:10,716.716 INFO    ] Checking for system updates...
[2026-08-25 03:15:10,752.752 INFO    ] 200
[2026-08-25 03:15:10,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:10,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:10,817.817 INFO    ] No update needed
[2026-08-25 03:15:10,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 03:15:10,854.854 INFO    ] 200
[2026-08-25 03:15:10,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:10,899.899 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:15:10,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:10,942.942 INFO    ] No camera update needed
[2026-08-25 03:15:10,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:15:10,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:15:10,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:15:10,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:15:13,999.999 INFO    ] ================================================
[2026-08-25 03:15:13,014.014 INFO    ] Launching Daemon at Tue Aug 25 03:15:13 IST 2026
[2026-08-25 03:15:13,025.025 INFO    ] ================================================
[2026-08-25 03:15:13,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:15:13
[2026-08-25 03:15:14,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:15:14,444.444 INFO    ] Initializing speech engine...
[2026-08-25 03:15:14,451.451 INFO    ] 2026-08-25 03:15:14
[2026-08-25 03:15:14,701.701 INFO    ] 2026-08-25 03:15:14
[2026-08-25 03:15:14,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:15:15,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:15:15,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:15:15,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:15:15,271.271 INFO    ] time= 25/08/2026 03:15:15
[2026-08-25 03:15:15,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:15:15,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:15:15,402.402 INFO    ] No existing commands found in stream
[2026-08-25 03:15:20,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:15:20,430.430 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 03:15:21,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:15:21,969.969 INFO    ] Checking for system updates...
[2026-08-25 03:15:22,008.008 INFO    ] 200
[2026-08-25 03:15:22,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:22,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:22,067.067 INFO    ] No update needed
[2026-08-25 03:15:22,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 03:15:22,106.106 INFO    ] 200
[2026-08-25 03:15:22,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:22,148.148 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:15:22,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:22,191.191 INFO    ] No camera update needed
[2026-08-25 03:15:22,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:15:22,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:15:22,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:15:22,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:15:24,247.247 INFO    ] ================================================
[2026-08-25 03:15:24,262.262 INFO    ] Launching Daemon at Tue Aug 25 03:15:24 IST 2026
[2026-08-25 03:15:24,273.273 INFO    ] ================================================
[2026-08-25 03:15:24,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:15:24
[2026-08-25 03:15:25,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:15:25,701.701 INFO    ] Initializing speech engine...
[2026-08-25 03:15:25,710.710 INFO    ] 2026-08-25 03:15:25
[2026-08-25 03:15:25,959.959 INFO    ] 2026-08-25 03:15:25
[2026-08-25 03:15:25,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:15:26,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:15:26,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:15:26,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:15:26,336.336 INFO    ] time= 25/08/2026 03:15:26
[2026-08-25 03:15:26,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:15:26,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:15:26,417.417 INFO    ] No existing commands found in stream
[2026-08-25 03:15:31,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:15:31,450.450 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 03:15:32,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:15:32,617.617 INFO    ] Checking for system updates...
[2026-08-25 03:15:32,659.659 INFO    ] 200
[2026-08-25 03:15:32,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:32,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:32,721.721 INFO    ] No update needed
[2026-08-25 03:15:32,723.723 INFO    ] Checking for camera pi updates...
[2026-08-25 03:15:32,756.756 INFO    ] 200
[2026-08-25 03:15:32,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:32,804.804 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:15:32,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:32,880.880 INFO    ] No camera update needed
[2026-08-25 03:15:32,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:15:32,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:15:32,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:15:32,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:15:34,936.936 INFO    ] ================================================
[2026-08-25 03:15:34,951.951 INFO    ] Launching Daemon at Tue Aug 25 03:15:34 IST 2026
[2026-08-25 03:15:34,962.962 INFO    ] ================================================
[2026-08-25 03:15:35,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:15:35
[2026-08-25 03:15:36,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:15:36,534.534 INFO    ] Initializing speech engine...
[2026-08-25 03:15:36,543.543 INFO    ] 2026-08-25 03:15:36
[2026-08-25 03:15:36,800.800 INFO    ] 2026-08-25 03:15:36
[2026-08-25 03:15:36,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:15:37,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:15:37,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:15:37,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:15:37,182.182 INFO    ] time= 25/08/2026 03:15:37
[2026-08-25 03:15:37,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:15:37,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:15:37,286.286 INFO    ] No existing commands found in stream
[2026-08-25 03:15:42,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:15:42,301.301 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 03:15:44,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:15:44,896.896 INFO    ] Checking for system updates...
[2026-08-25 03:15:44,933.933 INFO    ] 200
[2026-08-25 03:15:44,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:44,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:44,990.990 INFO    ] No update needed
[2026-08-25 03:15:44,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 03:15:45,026.026 INFO    ] 200
[2026-08-25 03:15:45,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:45,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:15:45,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:15:45,121.121 INFO    ] No camera update needed
[2026-08-25 03:15:45,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:15:45,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:15:45,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:15:45,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:15:47,177.177 INFO    ] ================================================
[2026-08-25 03:15:47,192.192 INFO    ] Launching Daemon at Tue Aug 25 03:15:47 IST 2026
[2026-08-25 03:15:47,202.202 INFO    ] ================================================
[2026-08-25 03:15:47,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:15:47
[2026-08-25 03:15:48,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:15:48,606.606 INFO    ] Initializing speech engine...
[2026-08-25 03:15:48,619.619 INFO    ] 2026-08-25 03:15:48
[2026-08-25 03:15:48,901.901 INFO    ] 2026-08-25 03:15:48
[2026-08-25 03:15:48,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:15:49,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:15:49,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:15:49,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:15:49,308.308 INFO    ] time= 25/08/2026 03:15:49
[2026-08-25 03:15:49,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:15:49,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:15:49,461.461 INFO    ] No existing commands found in stream
[2026-08-25 03:15:54,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:15:54,489.489 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 03:15:55,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:15:55,856.856 INFO    ] Checking for system updates...
[2026-08-25 03:15:55,891.891 INFO    ] 200
[2026-08-25 03:15:55,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:55,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:15:55,953.953 INFO    ] No update needed
[2026-08-25 03:15:55,955.955 INFO    ] Checking for camera pi updates...
[2026-08-25 03:15:55,989.989 INFO    ] 200
[2026-08-25 03:15:55,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:15:56,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:15:56,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:15:56,079.079 INFO    ] No camera update needed
[2026-08-25 03:15:56,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:15:56,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:15:56,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:15:56,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:15:58,135.135 INFO    ] ================================================
[2026-08-25 03:15:58,150.150 INFO    ] Launching Daemon at Tue Aug 25 03:15:58 IST 2026
[2026-08-25 03:15:58,161.161 INFO    ] ================================================
[2026-08-25 03:15:58,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:15:58
[2026-08-25 03:15:59,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:15:59,743.743 INFO    ] Initializing speech engine...
[2026-08-25 03:15:59,753.753 INFO    ] 2026-08-25 03:15:59
[2026-08-25 03:16:00,018.018 INFO    ] 2026-08-25 03:16:00
[2026-08-25 03:16:00,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:16:00,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:16:00,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:16:00,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:16:00,565.565 INFO    ] time= 25/08/2026 03:16:00
[2026-08-25 03:16:00,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:16:00,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:16:00,712.712 INFO    ] No existing commands found in stream
[2026-08-25 03:16:05,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:16:05,737.737 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 03:16:06,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:16:06,539.539 INFO    ] Checking for system updates...
[2026-08-25 03:16:06,578.578 INFO    ] 200
[2026-08-25 03:16:06,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:06,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:06,640.640 INFO    ] No update needed
[2026-08-25 03:16:06,643.643 INFO    ] Checking for camera pi updates...
[2026-08-25 03:16:06,680.680 INFO    ] 200
[2026-08-25 03:16:06,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:06,724.724 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:16:06,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:06,770.770 INFO    ] No camera update needed
[2026-08-25 03:16:06,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:16:06,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:16:06,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:16:06,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:16:08,828.828 INFO    ] ================================================
[2026-08-25 03:16:08,843.843 INFO    ] Launching Daemon at Tue Aug 25 03:16:08 IST 2026
[2026-08-25 03:16:08,854.854 INFO    ] ================================================
[2026-08-25 03:16:09,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:16:09
[2026-08-25 03:16:10,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:16:10,286.286 INFO    ] Initializing speech engine...
[2026-08-25 03:16:10,309.309 INFO    ] 2026-08-25 03:16:10
[2026-08-25 03:16:10,574.574 INFO    ] 2026-08-25 03:16:10
[2026-08-25 03:16:10,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:16:10,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:16:10,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:16:10,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:16:10,984.984 INFO    ] time= 25/08/2026 03:16:10
[2026-08-25 03:16:10,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:16:10,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:16:11,070.070 INFO    ] No existing commands found in stream
[2026-08-25 03:16:16,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:16:16,103.103 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 03:16:18,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:16:18,596.596 INFO    ] Checking for system updates...
[2026-08-25 03:16:18,631.631 INFO    ] 200
[2026-08-25 03:16:18,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:18,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:18,693.693 INFO    ] No update needed
[2026-08-25 03:16:18,695.695 INFO    ] Checking for camera pi updates...
[2026-08-25 03:16:18,732.732 INFO    ] 200
[2026-08-25 03:16:18,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:18,774.774 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:16:18,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:18,816.816 INFO    ] No camera update needed
[2026-08-25 03:16:18,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:16:18,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:16:18,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:16:18,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:16:20,873.873 INFO    ] ================================================
[2026-08-25 03:16:20,888.888 INFO    ] Launching Daemon at Tue Aug 25 03:16:20 IST 2026
[2026-08-25 03:16:20,900.900 INFO    ] ================================================
[2026-08-25 03:16:21,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:16:21
[2026-08-25 03:16:22,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:16:22,432.432 INFO    ] Initializing speech engine...
[2026-08-25 03:16:22,440.440 INFO    ] 2026-08-25 03:16:22
[2026-08-25 03:16:22,730.730 INFO    ] 2026-08-25 03:16:22
[2026-08-25 03:16:22,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:16:23,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:16:23,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:16:23,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:16:23,272.272 INFO    ] time= 25/08/2026 03:16:23
[2026-08-25 03:16:23,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:16:23,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:16:23,434.434 INFO    ] No existing commands found in stream
[2026-08-25 03:16:28,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:16:28,453.453 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 03:16:29,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:16:29,688.688 INFO    ] Checking for system updates...
[2026-08-25 03:16:29,730.730 INFO    ] 200
[2026-08-25 03:16:29,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:29,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:29,790.790 INFO    ] No update needed
[2026-08-25 03:16:29,792.792 INFO    ] Checking for camera pi updates...
[2026-08-25 03:16:29,830.830 INFO    ] 200
[2026-08-25 03:16:29,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:29,880.880 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:16:29,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:29,926.926 INFO    ] No camera update needed
[2026-08-25 03:16:29,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:16:29,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:16:29,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:16:29,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:16:31,984.984 INFO    ] ================================================
[2026-08-25 03:16:32,001.001 INFO    ] Launching Daemon at Tue Aug 25 03:16:31 IST 2026
[2026-08-25 03:16:32,013.013 INFO    ] ================================================
[2026-08-25 03:16:32,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:16:32
[2026-08-25 03:16:33,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:16:33,530.530 INFO    ] Initializing speech engine...
[2026-08-25 03:16:33,546.546 INFO    ] 2026-08-25 03:16:33
[2026-08-25 03:16:33,828.828 INFO    ] 2026-08-25 03:16:33
[2026-08-25 03:16:33,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:16:34,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:16:34,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:16:34,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:16:34,215.215 INFO    ] time= 25/08/2026 03:16:34
[2026-08-25 03:16:34,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:16:34,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:16:34,321.321 INFO    ] No existing commands found in stream
[2026-08-25 03:16:39,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:16:39,338.338 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 03:16:41,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:16:41,506.506 INFO    ] Checking for system updates...
[2026-08-25 03:16:41,546.546 INFO    ] 200
[2026-08-25 03:16:41,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:41,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:16:41,608.608 INFO    ] No update needed
[2026-08-25 03:16:41,611.611 INFO    ] Checking for camera pi updates...
[2026-08-25 03:16:41,644.644 INFO    ] 200
[2026-08-25 03:16:41,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:41,687.687 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:16:41,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:16:41,833.833 INFO    ] No camera update needed
[2026-08-25 03:16:41,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:16:41,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:16:41,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:16:41,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:16:43,888.888 INFO    ] ================================================
[2026-08-25 03:16:43,903.903 INFO    ] Launching Daemon at Tue Aug 25 03:16:43 IST 2026
[2026-08-25 03:16:43,914.914 INFO    ] ================================================
[2026-08-25 03:16:44,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:16:44
[2026-08-25 03:16:45,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:16:45,339.339 INFO    ] Initializing speech engine...
[2026-08-25 03:16:45,363.363 INFO    ] 2026-08-25 03:16:45
[2026-08-25 03:16:45,638.638 INFO    ] 2026-08-25 03:16:45
[2026-08-25 03:16:45,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:16:45,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:16:45,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:16:46,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:16:46,136.136 INFO    ] time= 25/08/2026 03:16:46
[2026-08-25 03:16:46,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:16:46,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:16:46,330.330 INFO    ] No existing commands found in stream
[2026-08-25 03:16:51,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:16:51,356.356 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 03:16:52,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:16:52,416.416 INFO    ] Checking for system updates...
[2026-08-25 03:16:52,451.451 INFO    ] 200
[2026-08-25 03:16:52,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:52,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:52,510.510 INFO    ] No update needed
[2026-08-25 03:16:52,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 03:16:52,546.546 INFO    ] 200
[2026-08-25 03:16:52,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:16:52,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:16:52,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:16:52,645.645 INFO    ] No camera update needed
[2026-08-25 03:16:52,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:16:52,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:16:52,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:16:52,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:16:54,698.698 INFO    ] ================================================
[2026-08-25 03:16:54,713.713 INFO    ] Launching Daemon at Tue Aug 25 03:16:54 IST 2026
[2026-08-25 03:16:54,724.724 INFO    ] ================================================
[2026-08-25 03:16:55,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:16:55
[2026-08-25 03:16:55,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:16:56,259.259 INFO    ] Initializing speech engine...
[2026-08-25 03:16:56,285.285 INFO    ] 2026-08-25 03:16:56
[2026-08-25 03:16:56,546.546 INFO    ] 2026-08-25 03:16:56
[2026-08-25 03:16:56,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:16:56,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:16:56,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:16:56,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:16:57,031.031 INFO    ] time= 25/08/2026 03:16:56
[2026-08-25 03:16:57,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:16:57,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:16:57,251.251 INFO    ] No existing commands found in stream
[2026-08-25 03:17:02,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:17:02,273.273 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 03:17:05,356.356 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:17:05,359.359 INFO    ] Checking for system updates...
[2026-08-25 03:17:05,396.396 INFO    ] 200
[2026-08-25 03:17:05,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:05,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:17:05,462.462 INFO    ] No update needed
[2026-08-25 03:17:05,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 03:17:05,499.499 INFO    ] 200
[2026-08-25 03:17:05,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:05,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:17:05,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:17:05,593.593 INFO    ] No camera update needed
[2026-08-25 03:17:05,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:17:05,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:17:05,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:17:05,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:17:07,648.648 INFO    ] ================================================
[2026-08-25 03:17:07,663.663 INFO    ] Launching Daemon at Tue Aug 25 03:17:07 IST 2026
[2026-08-25 03:17:07,674.674 INFO    ] ================================================
[2026-08-25 03:17:08,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:17:08
[2026-08-25 03:17:08,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:17:09,134.134 INFO    ] Initializing speech engine...
[2026-08-25 03:17:09,149.149 INFO    ] 2026-08-25 03:17:09
[2026-08-25 03:17:09,417.417 INFO    ] 2026-08-25 03:17:09
[2026-08-25 03:17:09,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:17:09,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:17:09,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:17:09,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:17:09,808.808 INFO    ] time= 25/08/2026 03:17:09
[2026-08-25 03:17:09,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:17:09,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:17:09,914.914 INFO    ] No existing commands found in stream
[2026-08-25 03:17:14,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:17:14,930.930 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 03:17:18,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:17:18,028.028 INFO    ] Checking for system updates...
[2026-08-25 03:17:18,068.068 INFO    ] 200
[2026-08-25 03:17:18,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:18,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:17:18,125.125 INFO    ] No update needed
[2026-08-25 03:17:18,128.128 INFO    ] Checking for camera pi updates...
[2026-08-25 03:17:18,161.161 INFO    ] 200
[2026-08-25 03:17:18,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:18,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:17:18,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:17:18,255.255 INFO    ] No camera update needed
[2026-08-25 03:17:18,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:17:18,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:17:18,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:17:18,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:17:20,310.310 INFO    ] ================================================
[2026-08-25 03:17:20,325.325 INFO    ] Launching Daemon at Tue Aug 25 03:17:20 IST 2026
[2026-08-25 03:17:20,336.336 INFO    ] ================================================
[2026-08-25 03:17:20,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:17:20
[2026-08-25 03:17:21,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:17:21,959.959 INFO    ] Initializing speech engine...
[2026-08-25 03:17:21,969.969 INFO    ] 2026-08-25 03:17:21
[2026-08-25 03:17:22,305.305 INFO    ] 2026-08-25 03:17:22
[2026-08-25 03:17:22,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:17:22,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:17:22,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:17:22,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:17:22,815.815 INFO    ] time= 25/08/2026 03:17:22
[2026-08-25 03:17:22,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:17:22,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:17:22,969.969 INFO    ] No existing commands found in stream
[2026-08-25 03:17:27,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:17:27,993.993 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 03:17:29,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:17:29,947.947 INFO    ] Checking for system updates...
[2026-08-25 03:17:29,985.985 INFO    ] 200
[2026-08-25 03:17:29,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:30,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:17:30,043.043 INFO    ] No update needed
[2026-08-25 03:17:30,045.045 INFO    ] Checking for camera pi updates...
[2026-08-25 03:17:30,083.083 INFO    ] 200
[2026-08-25 03:17:30,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:30,126.126 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:17:30,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:17:30,168.168 INFO    ] No camera update needed
[2026-08-25 03:17:30,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:17:30,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:17:30,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:17:30,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:17:32,224.224 INFO    ] ================================================
[2026-08-25 03:17:32,240.240 INFO    ] Launching Daemon at Tue Aug 25 03:17:32 IST 2026
[2026-08-25 03:17:32,252.252 INFO    ] ================================================
[2026-08-25 03:17:32,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:17:32
[2026-08-25 03:17:33,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:17:33,792.792 INFO    ] Initializing speech engine...
[2026-08-25 03:17:33,802.802 INFO    ] 2026-08-25 03:17:33
[2026-08-25 03:17:34,072.072 INFO    ] 2026-08-25 03:17:34
[2026-08-25 03:17:34,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:17:34,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:17:34,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:17:34,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:17:34,636.636 INFO    ] time= 25/08/2026 03:17:34
[2026-08-25 03:17:34,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:17:34,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:17:34,793.793 INFO    ] No existing commands found in stream
[2026-08-25 03:17:39,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:17:39,809.809 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 03:17:43,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:17:43,568.568 INFO    ] Checking for system updates...
[2026-08-25 03:17:43,605.605 INFO    ] 200
[2026-08-25 03:17:43,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:43,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:17:43,665.665 INFO    ] No update needed
[2026-08-25 03:17:43,668.668 INFO    ] Checking for camera pi updates...
[2026-08-25 03:17:43,701.701 INFO    ] 200
[2026-08-25 03:17:43,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:43,744.744 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:17:43,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:17:43,796.796 INFO    ] No camera update needed
[2026-08-25 03:17:43,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:17:43,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:17:43,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:17:43,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:17:45,855.855 INFO    ] ================================================
[2026-08-25 03:17:45,871.871 INFO    ] Launching Daemon at Tue Aug 25 03:17:45 IST 2026
[2026-08-25 03:17:45,882.882 INFO    ] ================================================
[2026-08-25 03:17:46,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:17:46
[2026-08-25 03:17:47,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:17:47,418.418 INFO    ] Initializing speech engine...
[2026-08-25 03:17:47,428.428 INFO    ] 2026-08-25 03:17:47
[2026-08-25 03:17:47,678.678 INFO    ] 2026-08-25 03:17:47
[2026-08-25 03:17:47,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:17:47,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:17:47,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:17:48,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:17:48,155.155 INFO    ] time= 25/08/2026 03:17:48
[2026-08-25 03:17:48,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:17:48,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:17:48,375.375 INFO    ] No existing commands found in stream
[2026-08-25 03:17:53,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:17:53,392.392 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 03:17:57,534.534 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:17:57,537.537 INFO    ] Checking for system updates...
[2026-08-25 03:17:57,577.577 INFO    ] 200
[2026-08-25 03:17:57,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:57,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:17:57,641.641 INFO    ] No update needed
[2026-08-25 03:17:57,644.644 INFO    ] Checking for camera pi updates...
[2026-08-25 03:17:57,677.677 INFO    ] 200
[2026-08-25 03:17:57,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:17:57,723.723 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:17:57,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:17:57,777.777 INFO    ] No camera update needed
[2026-08-25 03:17:57,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:17:57,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:17:57,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:17:57,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:17:59,836.836 INFO    ] ================================================
[2026-08-25 03:17:59,852.852 INFO    ] Launching Daemon at Tue Aug 25 03:17:59 IST 2026
[2026-08-25 03:17:59,863.863 INFO    ] ================================================
[2026-08-25 03:18:00,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:18:00
[2026-08-25 03:18:01,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:18:01,274.274 INFO    ] Initializing speech engine...
[2026-08-25 03:18:01,282.282 INFO    ] 2026-08-25 03:18:01
[2026-08-25 03:18:01,578.578 INFO    ] 2026-08-25 03:18:01
[2026-08-25 03:18:01,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:18:01,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:18:01,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:18:01,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:18:01,962.962 INFO    ] time= 25/08/2026 03:18:01
[2026-08-25 03:18:02,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:18:02,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:18:02,103.103 INFO    ] No existing commands found in stream
[2026-08-25 03:18:07,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:18:07,117.117 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 03:18:11,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:18:11,155.155 INFO    ] Checking for system updates...
[2026-08-25 03:18:11,192.192 INFO    ] 200
[2026-08-25 03:18:11,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:11,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:18:11,257.257 INFO    ] No update needed
[2026-08-25 03:18:11,260.260 INFO    ] Checking for camera pi updates...
[2026-08-25 03:18:11,294.294 INFO    ] 200
[2026-08-25 03:18:11,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:11,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:18:11,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:18:11,387.387 INFO    ] No camera update needed
[2026-08-25 03:18:11,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:18:11,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:18:11,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:18:11,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:18:13,444.444 INFO    ] ================================================
[2026-08-25 03:18:13,459.459 INFO    ] Launching Daemon at Tue Aug 25 03:18:13 IST 2026
[2026-08-25 03:18:13,470.470 INFO    ] ================================================
[2026-08-25 03:18:14,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:18:14
[2026-08-25 03:18:14,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:18:15,061.061 INFO    ] Initializing speech engine...
[2026-08-25 03:18:15,069.069 INFO    ] 2026-08-25 03:18:15
[2026-08-25 03:18:15,347.347 INFO    ] 2026-08-25 03:18:15
[2026-08-25 03:18:15,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:18:15,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:18:15,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:18:15,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:18:15,851.851 INFO    ] time= 25/08/2026 03:18:15
[2026-08-25 03:18:15,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:18:15,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:18:16,051.051 INFO    ] No existing commands found in stream
[2026-08-25 03:18:21,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:18:21,075.075 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 03:18:25,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:18:25,358.358 INFO    ] Checking for system updates...
[2026-08-25 03:18:25,411.411 INFO    ] 200
[2026-08-25 03:18:25,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:25,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:18:25,470.470 INFO    ] No update needed
[2026-08-25 03:18:25,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 03:18:25,510.510 INFO    ] 200
[2026-08-25 03:18:25,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:25,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:18:25,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:18:25,609.609 INFO    ] No camera update needed
[2026-08-25 03:18:25,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:18:25,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:18:25,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:18:25,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:18:27,669.669 INFO    ] ================================================
[2026-08-25 03:18:27,685.685 INFO    ] Launching Daemon at Tue Aug 25 03:18:27 IST 2026
[2026-08-25 03:18:27,696.696 INFO    ] ================================================
[2026-08-25 03:18:28,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:18:28
[2026-08-25 03:18:29,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:18:29,271.271 INFO    ] Initializing speech engine...
[2026-08-25 03:18:29,285.285 INFO    ] 2026-08-25 03:18:29
[2026-08-25 03:18:29,545.545 INFO    ] 2026-08-25 03:18:29
[2026-08-25 03:18:29,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:18:29,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:18:29,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:18:29,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:18:29,934.934 INFO    ] time= 25/08/2026 03:18:29
[2026-08-25 03:18:29,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:18:29,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:18:30,125.125 INFO    ] No existing commands found in stream
[2026-08-25 03:18:35,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:18:35,150.150 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 03:18:37,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:18:37,829.829 INFO    ] Checking for system updates...
[2026-08-25 03:18:37,864.864 INFO    ] 200
[2026-08-25 03:18:37,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:37,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:18:37,921.921 INFO    ] No update needed
[2026-08-25 03:18:37,923.923 INFO    ] Checking for camera pi updates...
[2026-08-25 03:18:37,956.956 INFO    ] 200
[2026-08-25 03:18:37,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:37,998.998 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:18:38,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:18:38,052.052 INFO    ] No camera update needed
[2026-08-25 03:18:38,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:18:38,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:18:38,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:18:38,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:18:40,107.107 INFO    ] ================================================
[2026-08-25 03:18:40,123.123 INFO    ] Launching Daemon at Tue Aug 25 03:18:40 IST 2026
[2026-08-25 03:18:40,134.134 INFO    ] ================================================
[2026-08-25 03:18:40,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:18:40
[2026-08-25 03:18:41,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:18:41,720.720 INFO    ] Initializing speech engine...
[2026-08-25 03:18:41,732.732 INFO    ] 2026-08-25 03:18:41
[2026-08-25 03:18:41,997.997 INFO    ] 2026-08-25 03:18:41
[2026-08-25 03:18:42,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:18:42,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:18:42,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:18:42,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:18:42,484.484 INFO    ] time= 25/08/2026 03:18:42
[2026-08-25 03:18:42,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:18:42,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:18:42,669.669 INFO    ] No existing commands found in stream
[2026-08-25 03:18:47,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:18:47,698.698 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 03:18:50,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:18:50,718.718 INFO    ] Checking for system updates...
[2026-08-25 03:18:50,759.759 INFO    ] 200
[2026-08-25 03:18:50,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:50,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:18:50,817.817 INFO    ] No update needed
[2026-08-25 03:18:50,819.819 INFO    ] Checking for camera pi updates...
[2026-08-25 03:18:50,858.858 INFO    ] 200
[2026-08-25 03:18:50,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:18:50,912.912 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:18:51,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:18:51,063.063 INFO    ] No camera update needed
[2026-08-25 03:18:51,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:18:51,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:18:51,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:18:51,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:18:53,128.128 INFO    ] ================================================
[2026-08-25 03:18:53,143.143 INFO    ] Launching Daemon at Tue Aug 25 03:18:53 IST 2026
[2026-08-25 03:18:53,155.155 INFO    ] ================================================
[2026-08-25 03:18:53,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:18:53
[2026-08-25 03:18:54,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:18:54,607.607 INFO    ] Initializing speech engine...
[2026-08-25 03:18:54,624.624 INFO    ] 2026-08-25 03:18:54
[2026-08-25 03:18:54,915.915 INFO    ] 2026-08-25 03:18:54
[2026-08-25 03:18:54,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:18:55,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:18:55,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:18:55,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:18:55,281.281 INFO    ] time= 25/08/2026 03:18:55
[2026-08-25 03:18:55,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:18:55,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:18:55,364.364 INFO    ] No existing commands found in stream
[2026-08-25 03:19:00,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:19:00,378.378 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 03:19:03,094.094 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:19:03,099.099 INFO    ] Checking for system updates...
[2026-08-25 03:19:03,155.155 INFO    ] 200
[2026-08-25 03:19:03,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:03,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:19:03,237.237 INFO    ] No update needed
[2026-08-25 03:19:03,242.242 INFO    ] Checking for camera pi updates...
[2026-08-25 03:19:03,285.285 INFO    ] 200
[2026-08-25 03:19:03,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:03,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:19:03,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:19:03,397.397 INFO    ] No camera update needed
[2026-08-25 03:19:03,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:19:03,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:19:03,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:19:03,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:19:05,457.457 INFO    ] ================================================
[2026-08-25 03:19:05,473.473 INFO    ] Launching Daemon at Tue Aug 25 03:19:05 IST 2026
[2026-08-25 03:19:05,484.484 INFO    ] ================================================
[2026-08-25 03:19:06,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:19:06
[2026-08-25 03:19:06,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:19:06,956.956 INFO    ] Initializing speech engine...
[2026-08-25 03:19:06,963.963 INFO    ] 2026-08-25 03:19:06
[2026-08-25 03:19:07,263.263 INFO    ] 2026-08-25 03:19:07
[2026-08-25 03:19:07,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:19:07,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:19:07,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:19:07,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:19:07,648.648 INFO    ] time= 25/08/2026 03:19:07
[2026-08-25 03:19:07,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:19:07,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:19:07,779.779 INFO    ] No existing commands found in stream
[2026-08-25 03:19:12,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:19:12,795.795 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 03:19:14,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:19:14,832.832 INFO    ] Checking for system updates...
[2026-08-25 03:19:14,869.869 INFO    ] 200
[2026-08-25 03:19:14,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:14,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:19:14,932.932 INFO    ] No update needed
[2026-08-25 03:19:14,935.935 INFO    ] Checking for camera pi updates...
[2026-08-25 03:19:14,972.972 INFO    ] 200
[2026-08-25 03:19:14,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:15,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:19:15,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:19:15,072.072 INFO    ] No camera update needed
[2026-08-25 03:19:15,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:19:15,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:19:15,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:19:15,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:19:17,132.132 INFO    ] ================================================
[2026-08-25 03:19:17,150.150 INFO    ] Launching Daemon at Tue Aug 25 03:19:17 IST 2026
[2026-08-25 03:19:17,162.162 INFO    ] ================================================
[2026-08-25 03:19:17,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:19:17
[2026-08-25 03:19:18,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:19:18,588.588 INFO    ] Initializing speech engine...
[2026-08-25 03:19:18,595.595 INFO    ] 2026-08-25 03:19:18
[2026-08-25 03:19:18,891.891 INFO    ] 2026-08-25 03:19:18
[2026-08-25 03:19:18,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:19:19,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:19:19,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:19:19,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:19:19,317.317 INFO    ] time= 25/08/2026 03:19:19
[2026-08-25 03:19:19,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:19:19,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:19:19,409.409 INFO    ] No existing commands found in stream
[2026-08-25 03:19:24,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:19:24,427.427 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 03:19:25,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:19:25,333.333 INFO    ] Checking for system updates...
[2026-08-25 03:19:25,370.370 INFO    ] 200
[2026-08-25 03:19:25,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:25,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:19:25,429.429 INFO    ] No update needed
[2026-08-25 03:19:25,431.431 INFO    ] Checking for camera pi updates...
[2026-08-25 03:19:25,468.468 INFO    ] 200
[2026-08-25 03:19:25,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:25,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:19:25,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:19:25,555.555 INFO    ] No camera update needed
[2026-08-25 03:19:25,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:19:25,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:19:25,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:19:25,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:19:27,611.611 INFO    ] ================================================
[2026-08-25 03:19:27,627.627 INFO    ] Launching Daemon at Tue Aug 25 03:19:27 IST 2026
[2026-08-25 03:19:27,638.638 INFO    ] ================================================
[2026-08-25 03:19:28,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:19:28
[2026-08-25 03:19:28,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:19:29,115.115 INFO    ] Initializing speech engine...
[2026-08-25 03:19:29,130.130 INFO    ] 2026-08-25 03:19:29
[2026-08-25 03:19:29,385.385 INFO    ] 2026-08-25 03:19:29
[2026-08-25 03:19:29,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:19:29,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:19:29,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:19:29,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:19:29,863.863 INFO    ] time= 25/08/2026 03:19:29
[2026-08-25 03:19:29,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:19:29,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:19:30,073.073 INFO    ] No existing commands found in stream
[2026-08-25 03:19:35,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:19:35,101.101 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 03:19:39,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:19:39,858.858 INFO    ] Checking for system updates...
[2026-08-25 03:19:39,897.897 INFO    ] 200
[2026-08-25 03:19:39,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:39,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:19:39,965.965 INFO    ] No update needed
[2026-08-25 03:19:39,969.969 INFO    ] Checking for camera pi updates...
[2026-08-25 03:19:40,004.004 INFO    ] 200
[2026-08-25 03:19:40,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:40,049.049 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:19:40,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:19:40,106.106 INFO    ] No camera update needed
[2026-08-25 03:19:40,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:19:40,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:19:40,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:19:40,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:19:42,164.164 INFO    ] ================================================
[2026-08-25 03:19:42,180.180 INFO    ] Launching Daemon at Tue Aug 25 03:19:42 IST 2026
[2026-08-25 03:19:42,196.196 INFO    ] ================================================
[2026-08-25 03:19:42,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:19:42
[2026-08-25 03:19:43,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:19:43,591.591 INFO    ] Initializing speech engine...
[2026-08-25 03:19:43,605.605 INFO    ] 2026-08-25 03:19:43
[2026-08-25 03:19:43,867.867 INFO    ] 2026-08-25 03:19:43
[2026-08-25 03:19:43,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:19:44,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:19:44,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:19:44,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:19:44,336.336 INFO    ] time= 25/08/2026 03:19:44
[2026-08-25 03:19:44,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:19:44,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:19:44,530.530 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 03:19:44,576.576 INFO    ] Checking historical command: ID=1787608178386-0
[2026-08-25 03:19:44,612.612 INFO    ] process_and_cleanup_command: msg_id=1787608178386-0
[2026-08-25 03:19:44,666.666 INFO    ] is_command_expired: timestamp=2026-08-24T21:49:37.669Z, expiry=30s
[2026-08-25 03:19:44,858.858 INFO    ] Command removed from stream: 1787608178386-0. returning for processing...
[2026-08-25 03:19:44,891.891 INFO    ] ***** get_valid_command
[2026-08-25 03:19:44,915.915 INFO    ] {'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1787608177669-lrz3tg2h7","orderId":"TM03202401260825031847017","is_vending":false}', 'timestamp': '2026-08-24T21:49:37.669Z', 'timeout': '10'}
[2026-08-25 03:19:44,924.924 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825031847017', 'is_vending': False, 'request_id': 'start-order-1787608177669-lrz3tg2h7'}
[2026-08-25 03:19:44,931.931 INFO    ] Handling start order...
[2026-08-25 03:19:44,933.933 INFO    ] handle_start_order_command
[2026-08-25 03:19:45,002.002 INFO    ] _send_start_order_success: request_id=start-order-1787608177669-lrz3tg2h7, order_id=TM03202401260825031847017
[2026-08-25 03:19:45,046.046 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 03:19:45,168.168 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787608185079-0
[2026-08-25 03:19:45,174.174 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 03:19:45,178.178 INFO    ] Checking for system updates...
[2026-08-25 03:19:45,222.222 INFO    ] 200
[2026-08-25 03:19:45,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:45,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:19:45,350.350 INFO    ] No update needed
[2026-08-25 03:19:45,356.356 INFO    ] Checking for camera pi updates...
[2026-08-25 03:19:45,401.401 INFO    ] 200
[2026-08-25 03:19:45,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:45,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:19:45,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:19:45,507.507 INFO    ] No camera update needed
[2026-08-25 03:19:45,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:19:45,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:19:45,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:19:45,538.538 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:19:45,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:19:47,596.596 INFO    ] ================================================
[2026-08-25 03:19:47,611.611 INFO    ] Launching Daemon at Tue Aug 25 03:19:47 IST 2026
[2026-08-25 03:19:47,623.623 INFO    ] ================================================
[2026-08-25 03:19:48,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:19:48
[2026-08-25 03:19:48,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:19:49,177.177 INFO    ] Initializing speech engine...
[2026-08-25 03:19:49,183.183 INFO    ] 2026-08-25 03:19:49
[2026-08-25 03:19:49,432.432 INFO    ] 2026-08-25 03:19:49
[2026-08-25 03:19:49,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:19:49,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:19:49,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:19:49,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:19:49,871.871 INFO    ] time= 25/08/2026 03:19:49
[2026-08-25 03:19:49,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:19:49,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:19:50,015.015 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 03:19:50,034.034 INFO    ] Checking historical command: ID=1787608185079-0
[2026-08-25 03:19:50,063.063 INFO    ] process_and_cleanup_command: msg_id=1787608185079-0
[2026-08-25 03:19:50,070.070 INFO    ] is_command_expired: timestamp=2026-08-24T21:49:45.008526Z, expiry=30s
[2026-08-25 03:19:50,202.202 INFO    ] Command removed from stream: 1787608185079-0. returning for processing...
[2026-08-25 03:19:50,245.245 INFO    ] ***** get_valid_command
[2026-08-25 03:19:50,309.309 INFO    ] {'timestamp': '2026-08-24T21:49:45.008526Z', 'metadata_request_id': 'start-order-1787608177669-lrz3tg2h7', 'status': 'success', 'imei': 'TM03202401', 'message_type': 'command_response', 'message': 'start-order success', 'metadata_order_id': 'TM03202401260825031847017'}
[2026-08-25 03:19:50,323.323 INFO    ] Checking historical command: ID=1787608187138-0
[2026-08-25 03:19:50,382.382 INFO    ] process_and_cleanup_command: msg_id=1787608187138-0
[2026-08-25 03:19:50,437.437 INFO    ] is_command_expired: timestamp=2026-08-24T21:49:46.430Z, expiry=30s
[2026-08-25 03:19:50,514.514 INFO    ] Command removed from stream: 1787608187138-0. returning for processing...
[2026-08-25 03:19:50,528.528 INFO    ] ***** get_valid_command
[2026-08-25 03:19:50,531.531 INFO    ] {'timestamp': '2026-08-24T21:49:46.430Z', 'source': 'webapp', 'data': '{"request_id":"process-order-1787608186430-8fvsnh4ta","orderId":"TM03202401260825031847017","is_vending":false,"accessCode":"36848821"}', 'command': 'process-order', 'timeout': '60'}
[2026-08-25 03:19:50,534.534 INFO    ] ***** Parsed command data: {'accessCode': '36848821', 'is_vending': False, 'orderId': 'TM03202401260825031847017', 'request_id': 'process-order-1787608186430-8fvsnh4ta'}
[2026-08-25 03:19:50,537.537 INFO    ] Handling process order...
[2026-08-25 03:19:50,560.560 INFO    ] Processing process-order command...
[2026-08-25 03:19:50,633.633 INFO    ] 🔍 Lock file Order ID: TM03202401260825031847017, TS: 2026-08-25 03:19:44
[2026-08-25 03:19:50,682.682 INFO    ] ✅ Order lock valid for TM03202401260825031847017
[2026-08-25 03:19:50,689.689 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 03:19:50,722.722 INFO    ] processing access code 36848821 for order TM03202401260825031847017
[2026-08-25 03:19:50,744.744 INFO    ] 🔍 Lock file Order ID: TM03202401260825031847017, TS: 2026-08-25 03:19:44
[2026-08-25 03:19:50,748.748 INFO    ] ✅ Order lock valid for TM03202401260825031847017
[2026-08-25 03:19:50,792.792 INFO    ] 2026-08-25 03:19:50
[2026-08-25 03:19:50,849.849 INFO    ] 200
[2026-08-25 03:19:50,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:19:50,855.855 INFO    ] 36848821
[2026-08-25 03:19:50,874.874 INFO    ] 2026-08-25 03:19:50
[2026-08-25 03:19:50,928.928 INFO    ] session id :496660244
[2026-08-25 03:19:50,977.977 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=36848821&imei=TM03202401&session_id=496660244
[2026-08-25 03:19:52,244.244 INFO    ] 200
[2026-08-25 03:19:52,250.250 INFO    ] {"data": {"access_code": "36848821", "order_id": "TM03202401260825031847017", "bill_amount": "20", "invoice_bill": "20", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "185993", "offer_id": "", "door_id": "2", "unit_price": 20, "image_url": "https://images.tinymart.in/product/185993-3509.webp", "tray_id": "35", "mrp": "20", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "sku_total": 20}], "mobile": "9040387688"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 03:19:52,258.258 INFO    ] 20
[2026-08-25 03:19:52,268.268 INFO    ] TM03202401260825031847017
[2026-08-25 03:19:52,277.277 INFO    ] 9040387688
[2026-08-25 03:19:52,286.286 INFO    ] 2026-08-25 03:19:52
[2026-08-25 03:19:52,292.292 INFO    ] Door Opening for user mobile ending with  seven six eight eight 
[2026-08-25 03:19:52,327.327 INFO    ] Door Opening for user mobile ending with  seven six eight eight 
[2026-08-25 03:19:52,338.338 INFO    ] 9e7803fcada46c5d0490ae3c6d5d83d7
[2026-08-25 03:19:52,365.365 INFO    ] 2026-08-25 03:19:52
[2026-08-25 03:19:52,381.381 INFO    ] playing audio file
[2026-08-25 03:19:52,402.402 INFO    ] 2026-08-25 03:19:52
[2026-08-25 03:19:52,411.411 INFO    ] 2026-08-25 03:19:52
[2026-08-25 03:19:52,421.421 INFO    ] publish_status: order_id=TM03202401260825031847017
[2026-08-25 03:19:52,442.442 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825031847017
[2026-08-25 03:19:52,557.557 INFO    ] [publish_status] Message added to stream with ID: 1787608192469-0
[2026-08-25 03:19:52,596.596 INFO    ] Published to order:TM03202401260825031847017: {'server_status': 'order-started', 'timestamp': '2026-08-24T21:49:52.414724Z', 'order_id': 'TM03202401260825031847017', 'server_response': '{"msg": "Order Data", "rstatus": true, "data": {"order_id": "TM03202401260825031847017", "proposed_sku_json": [{"sku_total": 20, "mrp": "20", "skuid": "185993", "offer_id": "", "offer_desc": "", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "door_id": "2", "unit_price": 20, "qty": 1, "tray_id": "35", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}], "mobile": "9040387688", "access_code": "36848821", "bill_amount": "20", "invoice_bill": "20"}, "status": true}'} (ID: 1787608192469-0)
[2026-08-25 03:19:53,159.159 INFO    ] {'server_status': 'order-started', 'order_id': 'TM03202401260825031847017', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'order_id': 'TM03202401260825031847017', 'proposed_sku_json': [{'sku_total': 20, 'mrp': '20', 'skuid': '185993', 'offer_id': '', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'unit_price': 20, 'qty': 1, 'tray_id': '35', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}], 'mobile': '9040387688', 'access_code': '36848821', 'bill_amount': '20', 'invoice_bill': '20'}, 'status': True}}
[2026-08-25 03:19:53,162.162 INFO    ] 200
[2026-08-25 03:19:53,164.164 INFO    ] {"data":{"server_status":"order-started","order_id":"TM03202401260825031847017","server_response":{"msg":"Order Data","rstatus":true,"data":{"order_id":"TM03202401260825031847017","proposed_sku_json":[{"sku_total":20,"mrp":"20","skuid":"185993","offer_id":"","offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","door_id":"2","unit_price":20,"qty":1,"tray_id":"35","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}],"mobile":"9040387688","access_code":"36848821","bill_amount":"20","invoice_bill":"20"},"status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:19:53,167.167 INFO    ] {'data': {'server_status': 'order-started', 'server_response': {'data': {'order_id': 'TM03202401260825031847017', 'proposed_sku_json': [{'mrp': '20', 'skuid': '185993', 'offer_id': '', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'door_id': '2', 'unit_price': 20, 'sku_total': 20, 'tray_id': '35', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}], 'mobile': '9040387688', 'access_code': '36848821', 'bill_amount': '20', 'invoice_bill': '20'}, 'rstatus': True, 'msg': 'Order Data', 'status': True}, 'order_id': 'TM03202401260825031847017'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 03:19:53,170.170 INFO    ] 2026-08-25 03:19:53
[2026-08-25 03:19:53,212.212 INFO    ] 200
[2026-08-25 03:19:53,215.215 INFO    ] True
[2026-08-25 03:19:53,387.387 INFO    ] 200
[2026-08-25 03:19:53,389.389 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 03:19:53,393.393 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': False, 'voiceNote': 'Please Wait', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-25 03:19:53,395.395 INFO    ] *** process_order ***
[2026-08-25 03:19:54,610.610 INFO    ] 200
[2026-08-25 03:19:54,612.612 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 03:19:54,615.615 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0}
[2026-08-25 03:19:54,617.617 INFO    ] *** process_order ***
[2026-08-25 03:19:54,620.620 INFO    ] publish_status: order_id=TM03202401260825031847017
[2026-08-25 03:19:54,622.622 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825031847017
[2026-08-25 03:19:54,732.732 INFO    ] [publish_status] Message added to stream with ID: 1787608194690-0
[2026-08-25 03:19:54,735.735 INFO    ] Published to order:TM03202401260825031847017: {'server_status': 'doorOpened', 'order_id': 'TM03202401260825031847017', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "rstatus": true, "status": "True", "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0}'} (ID: 1787608194690-0)
[2026-08-25 03:19:55,793.793 INFO    ] 2026-08-25 03:19:55
[2026-08-25 03:19:55,796.796 INFO    ] publish_status: order_id=TM03202401260825031847017
[2026-08-25 03:19:55,799.799 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825031847017
[2026-08-25 03:19:55,881.881 INFO    ] [publish_status] Message added to stream with ID: 1787608195839-0
[2026-08-25 03:19:55,884.884 INFO    ] Published to order:TM03202401260825031847017: {'server_status': 'processOrder', 'timestamp': '2026-08-24T21:49:55.794885Z', 'order_id': 'TM03202401260825031847017', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "rstatus": true, "status": "True", "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0}'} (ID: 1787608195839-0)
[2026-08-25 03:19:56,006.006 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM03202401260825031847017', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'status': 'True', 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0}}
[2026-08-25 03:19:56,009.009 INFO    ] 200
[2026-08-25 03:19:56,011.011 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM03202401260825031847017","server_response":{"SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"rstatus":true,"status":"true","voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:19:56,015.015 INFO    ] {'data': {'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'rstatus': True, 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0}, 'order_id': 'TM03202401260825031847017'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 03:19:56,018.018 INFO    ] 2026-08-25 03:19:56
[2026-08-25 03:19:56,020.020 INFO    ] None
[2026-08-25 03:19:56,023.023 INFO    ] Opening Door now
[2026-08-25 03:19:56,025.025 INFO    ] Opening Door now
[2026-08-25 03:19:56,028.028 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 03:19:56,031.031 INFO    ] 2026-08-25 03:19:56
[2026-08-25 03:19:56,034.034 INFO    ] playing audio file
[2026-08-25 03:19:56,052.052 INFO    ] 2026-08-25 03:19:56
[2026-08-25 03:19:56,056.056 INFO    ] 2026-08-25 03:19:56
[2026-08-25 03:19:59,132.132 INFO    ] 200
[2026-08-25 03:19:59,135.135 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "voiceNote": "Door 2 is open now"}
[2026-08-25 03:19:59,138.138 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'}, 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}}
[2026-08-25 03:20:02,735.735 INFO    ] 200
[2026-08-25 03:20:02,738.738 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "voiceNote": "Please close door 2"}
[2026-08-25 03:20:02,747.747 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'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}}
[2026-08-25 03:20:05,813.813 INFO    ] 200
[2026-08-25 03:20:05,816.816 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g"}]}, "voiceNote": "Please close door 2"}
[2026-08-25 03:20:05,819.819 INFO    ] Please close door 2
[2026-08-25 03:20:05,822.822 INFO    ] Please close door 2
[2026-08-25 03:20:05,826.826 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-25 03:20:05,830.830 INFO    ] 2026-08-25 03:20:05
[2026-08-25 03:20:05,833.833 INFO    ] playing audio file
[2026-08-25 03:20:05,852.852 INFO    ] 2026-08-25 03:20:05
[2026-08-25 03:20:05,856.856 INFO    ] publish_status: order_id=TM03202401260825031847017
[2026-08-25 03:20:05,860.860 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825031847017
[2026-08-25 03:20:05,922.922 INFO    ] [publish_status] Message added to stream with ID: 1787608205879-0
[2026-08-25 03:20:05,925.925 INFO    ] Published to order:TM03202401260825031847017: {'server_status': 'OrderStatus', 'timestamp': '2026-08-24T21:50:05.854467Z', 'order_id': 'TM03202401260825031847017', '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"}, "rstatus": false, "voiceNote": "Please close door 2", "status": "False", "error": {"umessage": "In Progress", "tmessage": "In Progress", "data": {}, "code": 20001}, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g", "qty": 1}]}}'} (ID: 1787608205879-0)
[2026-08-25 03:20:08,355.355 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825031847017', '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'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}}}
[2026-08-25 03:20:08,358.358 INFO    ] 200
[2026-08-25 03:20:08,361.361 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM03202401260825031847017","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"},"rstatus":false,"voiceNote":"Please close door 2","status":"false","error":{"umessage":"In Progress","tmessage":"In Progress","data":[],"code":20001},"SectionMain":{"Header":"Door Open"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g","qty":1}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:20:08,364.364 INFO    ] {'data': {'server_status': 'OrderStatus', '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'}, 'rstatus': False, 'status': 'false', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': [], 'code': 20001}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g'}]}}, 'order_id': 'TM03202401260825031847017'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 03:20:08,367.367 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'}, 'rstatus': False, 'voiceNote': 'Please close door 2', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g', 'qty': 1}]}}
[2026-08-25 03:20:11,436.436 INFO    ] 200
[2026-08-25 03:20:11,439.439 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 03:20:11,443.443 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'rstatus': True, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100}
[2026-08-25 03:20:11,447.447 INFO    ] 2026-08-25 03:20:11
[2026-08-25 03:20:11,450.450 INFO    ] Order Completed 
[2026-08-25 03:20:11,453.453 INFO    ] Order Completed 
[2026-08-25 03:20:11,456.456 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 03:20:11,459.459 INFO    ] 2026-08-25 03:20:11
[2026-08-25 03:20:11,462.462 INFO    ] playing audio file
[2026-08-25 03:20:11,481.481 INFO    ] 2026-08-25 03:20:11
[2026-08-25 03:20:11,485.485 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': ''}, 'rstatus': True, 'status': 'True', 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100}
[2026-08-25 03:20:11,488.488 INFO    ] 2026-08-25 03:20:11
[2026-08-25 03:20:12,026.026 INFO    ] 200
[2026-08-25 03:20:12,030.030 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825031847017", "skus": [{"image_url": "https://images.tinymart.in/product/185993-3509.webp", "skuid": "185993", "door_id": "", "unit_price": "20", "qty": 3, "tray_id": "35", "mrp": "20", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice", "sku_total": 60.0}], "res": "True", "total_amount": 60.0, "logic": "WBL"}
[2026-08-25 03:20:12,033.033 INFO    ] {'rstatus': True, 'res': 'True', 'orderId': 'TM03202401260825031847017', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 60.0, 'skus': [{'sku_total': 60.0, 'mrp': '20', 'skuid': '185993', 'qty': 3, 'door_id': '', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '35', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}
[2026-08-25 03:20:12,037.037 INFO    ] {'rstatus': True, 'res': 'True', 'orderId': 'TM03202401260825031847017', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 60.0, 'skus': [{'sku_total': 60.0, 'mrp': '20', 'skuid': '185993', 'qty': 3, 'door_id': '', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '35', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}
[2026-08-25 03:20:12,041.041 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:12,044.044 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:12,047.047 INFO    ] 20
[2026-08-25 03:20:12,050.050 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:12,054.054 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:12,057.057 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 60
[2026-08-25 03:20:12,060.060 INFO    ]  You had Picked Excess of 40 Your Bill Amount is 60
[2026-08-25 03:20:12,064.064 INFO    ] ec0a7b145cbfcccfb6a1bd96e20ede09
[2026-08-25 03:20:12,068.068 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:12,071.071 INFO    ] playing audio file
[2026-08-25 03:20:12,089.089 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:12,092.092 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:12,097.097 INFO    ] publish_status: order_id=TM03202401260825031847017
[2026-08-25 03:20:12,101.101 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825031847017
[2026-08-25 03:20:12,184.184 INFO    ] [publish_status] Message added to stream with ID: 1787608212139-0
[2026-08-25 03:20:12,187.187 INFO    ] Published to order:TM03202401260825031847017: {'server_status': 'invoiceOrder', 'timestamp': '2026-08-24T21:50:12.094387Z', 'order_id': 'TM03202401260825031847017', 'server_response': '{"rstatus": true, "res": "True", "orderId": "TM03202401260825031847017", "logic": "WBL", "anomaly": 0, "total_amount": 60.0, "skus": [{"sku_total": 60.0, "mrp": "20", "skuid": "185993", "qty": 3, "door_id": "", "unit_price": "20", "image_url": "https://images.tinymart.in/product/185993-3509.webp", "tray_id": "35", "name": "NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}]}'} (ID: 1787608212139-0)
[2026-08-25 03:20:12,516.516 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825031847017', 'server_response': {'rstatus': True, 'res': 'True', 'orderId': 'TM03202401260825031847017', 'logic': 'WBL', 'anomaly': 0, 'total_amount': 60.0, 'skus': [{'sku_total': 60.0, 'mrp': '20', 'skuid': '185993', 'qty': 3, 'door_id': '', 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'tray_id': '35', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}}
[2026-08-25 03:20:12,519.519 INFO    ] 200
[2026-08-25 03:20:12,522.522 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM03202401260825031847017","server_response":{"rstatus":true,"res":"true","orderId":"TM03202401260825031847017","logic":"WBL","anomaly":0,"total_amount":60,"skus":[{"sku_total":60,"mrp":"20","skuid":"185993","qty":3,"door_id":"","unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/185993-3509.webp","tray_id":"35","name":"NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice"}]}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:20:12,526.526 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'true', 'orderId': 'TM03202401260825031847017', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 60, 'skus': [{'mrp': '20', 'skuid': '185993', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 3, 'door_id': '', 'unit_price': '20', 'sku_total': 60, 'tray_id': '35', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}, 'order_id': 'TM03202401260825031847017'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 03:20:12,528.528 INFO    ] {'data': {'server_status': 'invoiceOrder', 'server_response': {'rstatus': True, 'res': 'true', 'orderId': 'TM03202401260825031847017', 'anomaly': 0, 'logic': 'WBL', 'total_amount': 60, 'skus': [{'mrp': '20', 'skuid': '185993', 'image_url': 'https://images.tinymart.in/product/185993-3509.webp', 'qty': 3, 'door_id': '', 'unit_price': '20', 'sku_total': 60, 'tray_id': '35', 'name': 'NESTLE MUNCH Max Choco Coated Crunchy Wafer 40g per peice'}]}, 'order_id': 'TM03202401260825031847017'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 03:20:12,531.531 INFO    ] 2026-08-25 03:20:12
[2026-08-25 03:20:17,904.904 INFO    ] 200
[2026-08-25 03:20:17,907.907 INFO    ] {"orders_synced": ["TM08202201230220183652764", "TM08202201230227153633830", "TM06202304230615192111045", "TM06202304230623120159705", "TM06202304230623120333811", "TM06202304230623133658760", "TM06202304250610165735127", "TM06202304250624103203715", "TM03202401260819174013487"], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017", "TM03202401260825031847017"], "status": true}
[2026-08-25 03:20:17,910.910 INFO    ] 2026-08-25 03:20:17
[2026-08-25 03:20:18,008.008 INFO    ] 200
[2026-08-25 03:20:18,011.011 INFO    ] True
[2026-08-25 03:20:18,014.014 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825031847017
[2026-08-25 03:20:18,017.017 INFO    ] start order file deleted
[2026-08-25 03:20:18,020.020 INFO    ] Checking for system updates...
[2026-08-25 03:20:18,053.053 INFO    ] 200
[2026-08-25 03:20:18,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:18,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:20:18,133.133 INFO    ] No update needed
[2026-08-25 03:20:18,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 03:20:18,173.173 INFO    ] 200
[2026-08-25 03:20:18,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:18,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:20:18,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:20:18,258.258 INFO    ] No camera update needed
[2026-08-25 03:20:18,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:20:18,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:20:18,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:20:18,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:20:20,321.321 INFO    ] ================================================
[2026-08-25 03:20:20,337.337 INFO    ] Launching Daemon at Tue Aug 25 03:20:20 IST 2026
[2026-08-25 03:20:20,347.347 INFO    ] ================================================
[2026-08-25 03:20:20,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:20:20
[2026-08-25 03:20:21,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:20:21,760.760 INFO    ] Initializing speech engine...
[2026-08-25 03:20:21,766.766 INFO    ] 2026-08-25 03:20:21
[2026-08-25 03:20:22,061.061 INFO    ] 2026-08-25 03:20:22
[2026-08-25 03:20:22,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:20:22,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:20:22,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:20:22,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:20:22,436.436 INFO    ] time= 25/08/2026 03:20:22
[2026-08-25 03:20:22,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:20:22,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:20:22,552.552 INFO    ] No existing commands found in stream
[2026-08-25 03:20:27,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:20:27,578.578 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 03:20:31,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:20:31,078.078 INFO    ] Checking for system updates...
[2026-08-25 03:20:31,115.115 INFO    ] 200
[2026-08-25 03:20:31,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:31,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:20:31,178.178 INFO    ] No update needed
[2026-08-25 03:20:31,180.180 INFO    ] Checking for camera pi updates...
[2026-08-25 03:20:31,214.214 INFO    ] 200
[2026-08-25 03:20:31,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:31,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:20:31,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:20:31,301.301 INFO    ] No camera update needed
[2026-08-25 03:20:31,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:20:31,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:20:31,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:20:31,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:20:33,357.357 INFO    ] ================================================
[2026-08-25 03:20:33,373.373 INFO    ] Launching Daemon at Tue Aug 25 03:20:33 IST 2026
[2026-08-25 03:20:33,385.385 INFO    ] ================================================
[2026-08-25 03:20:33,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:20:33
[2026-08-25 03:20:34,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:20:34,865.865 INFO    ] Initializing speech engine...
[2026-08-25 03:20:34,870.870 INFO    ] 2026-08-25 03:20:34
[2026-08-25 03:20:35,141.141 INFO    ] 2026-08-25 03:20:35
[2026-08-25 03:20:35,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:20:35,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:20:35,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:20:35,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:20:35,530.530 INFO    ] time= 25/08/2026 03:20:35
[2026-08-25 03:20:35,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:20:35,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:20:35,658.658 INFO    ] No existing commands found in stream
[2026-08-25 03:20:40,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:20:40,673.673 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 03:20:44,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:20:44,917.917 INFO    ] Checking for system updates...
[2026-08-25 03:20:44,952.952 INFO    ] 200
[2026-08-25 03:20:44,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:45,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:20:45,008.008 INFO    ] No update needed
[2026-08-25 03:20:45,011.011 INFO    ] Checking for camera pi updates...
[2026-08-25 03:20:45,044.044 INFO    ] 200
[2026-08-25 03:20:45,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:45,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:20:45,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:20:45,129.129 INFO    ] No camera update needed
[2026-08-25 03:20:45,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:20:45,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:20:45,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:20:45,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:20:47,183.183 INFO    ] ================================================
[2026-08-25 03:20:47,199.199 INFO    ] Launching Daemon at Tue Aug 25 03:20:47 IST 2026
[2026-08-25 03:20:47,211.211 INFO    ] ================================================
[2026-08-25 03:20:47,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:20:47
[2026-08-25 03:20:48,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:20:48,880.880 INFO    ] Initializing speech engine...
[2026-08-25 03:20:48,891.891 INFO    ] 2026-08-25 03:20:48
[2026-08-25 03:20:49,205.205 INFO    ] 2026-08-25 03:20:49
[2026-08-25 03:20:49,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:20:49,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:20:49,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:20:49,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:20:49,731.731 INFO    ] time= 25/08/2026 03:20:49
[2026-08-25 03:20:49,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:20:49,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:20:49,889.889 INFO    ] No existing commands found in stream
[2026-08-25 03:20:54,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:20:54,910.910 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 03:20:57,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:20:57,893.893 INFO    ] Checking for system updates...
[2026-08-25 03:20:57,931.931 INFO    ] 200
[2026-08-25 03:20:57,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:58,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:20:58,004.004 INFO    ] No update needed
[2026-08-25 03:20:58,006.006 INFO    ] Checking for camera pi updates...
[2026-08-25 03:20:58,041.041 INFO    ] 200
[2026-08-25 03:20:58,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:20:58,092.092 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:20:58,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:20:58,240.240 INFO    ] No camera update needed
[2026-08-25 03:20:58,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:20:58,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:20:58,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:20:58,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:21:00,299.299 INFO    ] ================================================
[2026-08-25 03:21:00,315.315 INFO    ] Launching Daemon at Tue Aug 25 03:21:00 IST 2026
[2026-08-25 03:21:00,326.326 INFO    ] ================================================
[2026-08-25 03:21:00,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:21:00
[2026-08-25 03:21:01,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:21:02,197.197 INFO    ] Initializing speech engine...
[2026-08-25 03:21:02,208.208 INFO    ] 2026-08-25 03:21:02
[2026-08-25 03:21:02,542.542 INFO    ] 2026-08-25 03:21:02
[2026-08-25 03:21:02,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:21:02,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:21:02,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:21:02,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:21:02,996.996 INFO    ] time= 25/08/2026 03:21:02
[2026-08-25 03:21:03,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:21:03,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:21:03,188.188 INFO    ] No existing commands found in stream
[2026-08-25 03:21:08,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:21:08,203.203 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 03:21:10,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:21:10,077.077 INFO    ] Checking for system updates...
[2026-08-25 03:21:10,113.113 INFO    ] 200
[2026-08-25 03:21:10,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:10,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:21:10,173.173 INFO    ] No update needed
[2026-08-25 03:21:10,176.176 INFO    ] Checking for camera pi updates...
[2026-08-25 03:21:10,211.211 INFO    ] 200
[2026-08-25 03:21:10,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:10,255.255 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:21:10,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:21:10,310.310 INFO    ] No camera update needed
[2026-08-25 03:21:10,313.313 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:21:10,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:21:10,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:21:10,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:21:12,369.369 INFO    ] ================================================
[2026-08-25 03:21:12,384.384 INFO    ] Launching Daemon at Tue Aug 25 03:21:12 IST 2026
[2026-08-25 03:21:12,411.411 INFO    ] ================================================
[2026-08-25 03:21:12,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:21:12
[2026-08-25 03:21:13,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:21:13,862.862 INFO    ] Initializing speech engine...
[2026-08-25 03:21:13,871.871 INFO    ] 2026-08-25 03:21:13
[2026-08-25 03:21:14,171.171 INFO    ] 2026-08-25 03:21:14
[2026-08-25 03:21:14,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:21:14,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:21:14,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:21:14,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:21:14,560.560 INFO    ] time= 25/08/2026 03:21:14
[2026-08-25 03:21:14,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:21:14,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:21:14,687.687 INFO    ] No existing commands found in stream
[2026-08-25 03:21:19,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:21:19,702.702 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 03:21:22,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:21:22,695.695 INFO    ] Checking for system updates...
[2026-08-25 03:21:22,731.731 INFO    ] 200
[2026-08-25 03:21:22,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:22,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:21:22,791.791 INFO    ] No update needed
[2026-08-25 03:21:22,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 03:21:22,833.833 INFO    ] 200
[2026-08-25 03:21:22,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:22,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:21:22,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:21:22,922.922 INFO    ] No camera update needed
[2026-08-25 03:21:22,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:21:22,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:21:22,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:21:22,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:21:24,979.979 INFO    ] ================================================
[2026-08-25 03:21:25,995.995 INFO    ] Launching Daemon at Tue Aug 25 03:21:24 IST 2026
[2026-08-25 03:21:25,006.006 INFO    ] ================================================
[2026-08-25 03:21:25,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:21:25
[2026-08-25 03:21:26,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:21:26,412.412 INFO    ] Initializing speech engine...
[2026-08-25 03:21:26,421.421 INFO    ] 2026-08-25 03:21:26
[2026-08-25 03:21:26,696.696 INFO    ] 2026-08-25 03:21:26
[2026-08-25 03:21:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:21:26,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:21:26,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:21:27,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:21:27,074.074 INFO    ] time= 25/08/2026 03:21:27
[2026-08-25 03:21:27,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:21:27,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:21:27,258.258 INFO    ] No existing commands found in stream
[2026-08-25 03:21:32,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:21:32,280.280 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 03:21:35,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:21:35,559.559 INFO    ] Checking for system updates...
[2026-08-25 03:21:35,601.601 INFO    ] 200
[2026-08-25 03:21:35,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:35,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:21:35,661.661 INFO    ] No update needed
[2026-08-25 03:21:35,664.664 INFO    ] Checking for camera pi updates...
[2026-08-25 03:21:35,698.698 INFO    ] 200
[2026-08-25 03:21:35,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:35,742.742 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:21:35,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:21:35,790.790 INFO    ] No camera update needed
[2026-08-25 03:21:35,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:21:35,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:21:35,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:21:35,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:21:37,845.845 INFO    ] ================================================
[2026-08-25 03:21:37,860.860 INFO    ] Launching Daemon at Tue Aug 25 03:21:37 IST 2026
[2026-08-25 03:21:37,872.872 INFO    ] ================================================
[2026-08-25 03:21:38,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:21:38
[2026-08-25 03:21:39,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:21:39,446.446 INFO    ] Initializing speech engine...
[2026-08-25 03:21:39,458.458 INFO    ] 2026-08-25 03:21:39
[2026-08-25 03:21:39,773.773 INFO    ] 2026-08-25 03:21:39
[2026-08-25 03:21:39,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:21:40,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:21:40,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:21:40,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:21:40,279.279 INFO    ] time= 25/08/2026 03:21:40
[2026-08-25 03:21:40,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:21:40,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:21:40,434.434 INFO    ] No existing commands found in stream
[2026-08-25 03:21:45,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:21:45,472.472 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 03:21:49,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:21:49,888.888 INFO    ] Checking for system updates...
[2026-08-25 03:21:49,925.925 INFO    ] 200
[2026-08-25 03:21:49,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:49,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:21:49,982.982 INFO    ] No update needed
[2026-08-25 03:21:49,985.985 INFO    ] Checking for camera pi updates...
[2026-08-25 03:21:50,020.020 INFO    ] 200
[2026-08-25 03:21:50,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:21:50,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:21:50,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:21:50,114.114 INFO    ] No camera update needed
[2026-08-25 03:21:50,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:21:50,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:21:50,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:21:50,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:21:52,170.170 INFO    ] ================================================
[2026-08-25 03:21:52,185.185 INFO    ] Launching Daemon at Tue Aug 25 03:21:52 IST 2026
[2026-08-25 03:21:52,196.196 INFO    ] ================================================
[2026-08-25 03:21:52,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:21:52
[2026-08-25 03:21:53,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:21:53,660.660 INFO    ] Initializing speech engine...
[2026-08-25 03:21:53,669.669 INFO    ] 2026-08-25 03:21:53
[2026-08-25 03:21:53,915.915 INFO    ] 2026-08-25 03:21:53
[2026-08-25 03:21:53,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:21:54,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:21:54,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:21:54,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:21:54,399.399 INFO    ] time= 25/08/2026 03:21:54
[2026-08-25 03:21:54,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:21:54,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:21:54,618.618 INFO    ] No existing commands found in stream
[2026-08-25 03:21:59,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:21:59,637.637 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 03:22:03,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:22:03,352.352 INFO    ] Checking for system updates...
[2026-08-25 03:22:03,387.387 INFO    ] 200
[2026-08-25 03:22:03,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:03,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:22:03,444.444 INFO    ] No update needed
[2026-08-25 03:22:03,447.447 INFO    ] Checking for camera pi updates...
[2026-08-25 03:22:03,480.480 INFO    ] 200
[2026-08-25 03:22:03,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:03,522.522 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:22:03,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:22:03,565.565 INFO    ] No camera update needed
[2026-08-25 03:22:03,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:22:03,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:22:03,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:22:03,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:22:05,621.621 INFO    ] ================================================
[2026-08-25 03:22:05,637.637 INFO    ] Launching Daemon at Tue Aug 25 03:22:05 IST 2026
[2026-08-25 03:22:05,648.648 INFO    ] ================================================
[2026-08-25 03:22:06,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:22:06
[2026-08-25 03:22:06,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:22:07,129.129 INFO    ] Initializing speech engine...
[2026-08-25 03:22:07,134.134 INFO    ] 2026-08-25 03:22:07
[2026-08-25 03:22:07,431.431 INFO    ] 2026-08-25 03:22:07
[2026-08-25 03:22:07,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:22:07,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:22:07,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:22:07,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:22:07,792.792 INFO    ] time= 25/08/2026 03:22:07
[2026-08-25 03:22:07,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:22:07,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:22:07,945.945 INFO    ] No existing commands found in stream
[2026-08-25 03:22:12,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:22:12,958.958 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 03:22:15,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:22:15,407.407 INFO    ] Checking for system updates...
[2026-08-25 03:22:15,442.442 INFO    ] 200
[2026-08-25 03:22:15,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:15,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:22:15,502.502 INFO    ] No update needed
[2026-08-25 03:22:15,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 03:22:15,538.538 INFO    ] 200
[2026-08-25 03:22:15,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:15,581.581 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:22:15,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:22:15,626.626 INFO    ] No camera update needed
[2026-08-25 03:22:15,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:22:15,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:22:15,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:22:15,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:22:17,681.681 INFO    ] ================================================
[2026-08-25 03:22:17,696.696 INFO    ] Launching Daemon at Tue Aug 25 03:22:17 IST 2026
[2026-08-25 03:22:17,707.707 INFO    ] ================================================
[2026-08-25 03:22:18,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:22:18
[2026-08-25 03:22:19,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:22:19,283.283 INFO    ] Initializing speech engine...
[2026-08-25 03:22:19,292.292 INFO    ] 2026-08-25 03:22:19
[2026-08-25 03:22:19,550.550 INFO    ] 2026-08-25 03:22:19
[2026-08-25 03:22:19,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:22:19,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:22:19,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:22:19,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:22:20,010.010 INFO    ] time= 25/08/2026 03:22:19
[2026-08-25 03:22:20,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:22:20,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:22:20,238.238 INFO    ] No existing commands found in stream
[2026-08-25 03:22:25,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:22:25,261.261 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 03:22:26,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:22:26,899.899 INFO    ] Checking for system updates...
[2026-08-25 03:22:26,935.935 INFO    ] 200
[2026-08-25 03:22:26,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:26,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:22:26,994.994 INFO    ] No update needed
[2026-08-25 03:22:26,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 03:22:27,034.034 INFO    ] 200
[2026-08-25 03:22:27,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:27,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:22:27,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:22:27,130.130 INFO    ] No camera update needed
[2026-08-25 03:22:27,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:22:27,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:22:27,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:22:27,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:22:29,188.188 INFO    ] ================================================
[2026-08-25 03:22:29,203.203 INFO    ] Launching Daemon at Tue Aug 25 03:22:29 IST 2026
[2026-08-25 03:22:29,214.214 INFO    ] ================================================
[2026-08-25 03:22:29,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:22:29
[2026-08-25 03:22:30,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:22:30,868.868 INFO    ] Initializing speech engine...
[2026-08-25 03:22:30,880.880 INFO    ] 2026-08-25 03:22:30
[2026-08-25 03:22:31,189.189 INFO    ] 2026-08-25 03:22:31
[2026-08-25 03:22:31,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:22:31,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:22:31,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:22:31,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:22:31,729.729 INFO    ] time= 25/08/2026 03:22:31
[2026-08-25 03:22:31,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:22:31,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:22:31,902.902 INFO    ] No existing commands found in stream
[2026-08-25 03:22:36,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:22:36,938.938 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 03:22:38,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:22:38,299.299 INFO    ] Checking for system updates...
[2026-08-25 03:22:38,335.335 INFO    ] 200
[2026-08-25 03:22:38,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:38,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:22:38,394.394 INFO    ] No update needed
[2026-08-25 03:22:38,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 03:22:38,430.430 INFO    ] 200
[2026-08-25 03:22:38,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:38,473.473 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:22:38,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:22:38,525.525 INFO    ] No camera update needed
[2026-08-25 03:22:38,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:22:38,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:22:38,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:22:38,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:22:40,580.580 INFO    ] ================================================
[2026-08-25 03:22:40,596.596 INFO    ] Launching Daemon at Tue Aug 25 03:22:40 IST 2026
[2026-08-25 03:22:40,608.608 INFO    ] ================================================
[2026-08-25 03:22:41,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:22:41
[2026-08-25 03:22:41,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:22:42,067.067 INFO    ] Initializing speech engine...
[2026-08-25 03:22:42,076.076 INFO    ] 2026-08-25 03:22:42
[2026-08-25 03:22:42,334.334 INFO    ] 2026-08-25 03:22:42
[2026-08-25 03:22:42,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:22:42,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:22:42,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:22:42,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:22:42,792.792 INFO    ] time= 25/08/2026 03:22:42
[2026-08-25 03:22:42,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:22:42,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:22:43,016.016 INFO    ] No existing commands found in stream
[2026-08-25 03:22:48,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:22:48,042.042 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 03:22:48,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:22:48,485.485 INFO    ] Checking for system updates...
[2026-08-25 03:22:48,522.522 INFO    ] 200
[2026-08-25 03:22:48,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:48,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:22:48,581.581 INFO    ] No update needed
[2026-08-25 03:22:48,583.583 INFO    ] Checking for camera pi updates...
[2026-08-25 03:22:48,617.617 INFO    ] 200
[2026-08-25 03:22:48,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:22:48,667.667 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:22:48,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:22:48,710.710 INFO    ] No camera update needed
[2026-08-25 03:22:48,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:22:48,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:22:48,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:22:48,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:22:50,767.767 INFO    ] ================================================
[2026-08-25 03:22:50,783.783 INFO    ] Launching Daemon at Tue Aug 25 03:22:50 IST 2026
[2026-08-25 03:22:50,793.793 INFO    ] ================================================
[2026-08-25 03:22:51,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:22:51
[2026-08-25 03:22:52,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:22:52,275.275 INFO    ] Initializing speech engine...
[2026-08-25 03:22:52,284.284 INFO    ] 2026-08-25 03:22:52
[2026-08-25 03:22:52,535.535 INFO    ] 2026-08-25 03:22:52
[2026-08-25 03:22:52,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:22:52,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:22:52,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:22:52,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:22:52,985.985 INFO    ] time= 25/08/2026 03:22:52
[2026-08-25 03:22:53,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:22:53,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:22:53,241.241 INFO    ] No existing commands found in stream
[2026-08-25 03:22:58,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:22:58,270.270 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 03:23:01,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:23:01,861.861 INFO    ] Checking for system updates...
[2026-08-25 03:23:01,905.905 INFO    ] 200
[2026-08-25 03:23:01,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:01,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:23:01,980.980 INFO    ] No update needed
[2026-08-25 03:23:01,983.983 INFO    ] Checking for camera pi updates...
[2026-08-25 03:23:02,030.030 INFO    ] 200
[2026-08-25 03:23:02,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:02,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:23:02,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:23:02,251.251 INFO    ] No camera update needed
[2026-08-25 03:23:02,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:23:02,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:23:02,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:23:02,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:23:04,312.312 INFO    ] ================================================
[2026-08-25 03:23:04,327.327 INFO    ] Launching Daemon at Tue Aug 25 03:23:04 IST 2026
[2026-08-25 03:23:04,338.338 INFO    ] ================================================
[2026-08-25 03:23:04,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:23:04
[2026-08-25 03:23:05,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:23:05,764.764 INFO    ] Initializing speech engine...
[2026-08-25 03:23:05,774.774 INFO    ] 2026-08-25 03:23:05
[2026-08-25 03:23:06,028.028 INFO    ] 2026-08-25 03:23:06
[2026-08-25 03:23:06,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:23:06,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:23:06,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:23:06,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:23:06,417.417 INFO    ] time= 25/08/2026 03:23:06
[2026-08-25 03:23:06,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:23:06,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:23:06,530.530 INFO    ] No existing commands found in stream
[2026-08-25 03:23:11,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:23:11,545.545 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 03:23:13,816.816 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:23:13,818.818 INFO    ] Checking for system updates...
[2026-08-25 03:23:13,854.854 INFO    ] 200
[2026-08-25 03:23:13,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:13,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:23:13,913.913 INFO    ] No update needed
[2026-08-25 03:23:13,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 03:23:13,949.949 INFO    ] 200
[2026-08-25 03:23:13,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:13,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:23:14,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:23:14,039.039 INFO    ] No camera update needed
[2026-08-25 03:23:14,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:23:14,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:23:14,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:23:14,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:23:16,094.094 INFO    ] ================================================
[2026-08-25 03:23:16,109.109 INFO    ] Launching Daemon at Tue Aug 25 03:23:16 IST 2026
[2026-08-25 03:23:16,119.119 INFO    ] ================================================
[2026-08-25 03:23:16,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:23:16
[2026-08-25 03:23:17,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:23:17,514.514 INFO    ] Initializing speech engine...
[2026-08-25 03:23:17,520.520 INFO    ] 2026-08-25 03:23:17
[2026-08-25 03:23:17,806.806 INFO    ] 2026-08-25 03:23:17
[2026-08-25 03:23:17,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:23:18,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:23:18,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:23:18,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:23:18,245.245 INFO    ] time= 25/08/2026 03:23:18
[2026-08-25 03:23:18,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:23:18,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:23:18,403.403 INFO    ] No existing commands found in stream
[2026-08-25 03:23:23,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:23:23,418.418 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 03:23:27,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:23:27,307.307 INFO    ] Checking for system updates...
[2026-08-25 03:23:27,342.342 INFO    ] 200
[2026-08-25 03:23:27,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:27,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:23:27,406.406 INFO    ] No update needed
[2026-08-25 03:23:27,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 03:23:27,446.446 INFO    ] 200
[2026-08-25 03:23:27,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:27,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:23:27,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:23:27,533.533 INFO    ] No camera update needed
[2026-08-25 03:23:27,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:23:27,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:23:27,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:23:27,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:23:29,589.589 INFO    ] ================================================
[2026-08-25 03:23:29,606.606 INFO    ] Launching Daemon at Tue Aug 25 03:23:29 IST 2026
[2026-08-25 03:23:29,618.618 INFO    ] ================================================
[2026-08-25 03:23:30,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:23:30
[2026-08-25 03:23:30,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:23:31,052.052 INFO    ] Initializing speech engine...
[2026-08-25 03:23:31,061.061 INFO    ] 2026-08-25 03:23:31
[2026-08-25 03:23:31,340.340 INFO    ] 2026-08-25 03:23:31
[2026-08-25 03:23:31,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:23:31,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:23:31,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:23:31,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:23:31,715.715 INFO    ] time= 25/08/2026 03:23:31
[2026-08-25 03:23:31,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:23:31,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:23:31,809.809 INFO    ] No existing commands found in stream
[2026-08-25 03:23:36,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:23:36,823.823 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 03:23:40,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:23:40,037.037 INFO    ] Checking for system updates...
[2026-08-25 03:23:40,075.075 INFO    ] 200
[2026-08-25 03:23:40,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:40,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:23:40,141.141 INFO    ] No update needed
[2026-08-25 03:23:40,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 03:23:40,177.177 INFO    ] 200
[2026-08-25 03:23:40,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:40,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:23:40,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:23:40,276.276 INFO    ] No camera update needed
[2026-08-25 03:23:40,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:23:40,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:23:40,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:23:40,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:23:42,331.331 INFO    ] ================================================
[2026-08-25 03:23:42,346.346 INFO    ] Launching Daemon at Tue Aug 25 03:23:42 IST 2026
[2026-08-25 03:23:42,357.357 INFO    ] ================================================
[2026-08-25 03:23:43,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:23:43
[2026-08-25 03:23:43,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:23:43,998.998 INFO    ] Initializing speech engine...
[2026-08-25 03:23:44,010.010 INFO    ] 2026-08-25 03:23:44
[2026-08-25 03:23:44,291.291 INFO    ] 2026-08-25 03:23:44
[2026-08-25 03:23:44,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:23:44,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:23:44,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:23:44,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:23:44,743.743 INFO    ] time= 25/08/2026 03:23:44
[2026-08-25 03:23:44,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:23:44,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:23:44,983.983 INFO    ] No existing commands found in stream
[2026-08-25 03:23:49,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:23:50,001.001 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 03:23:51,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:23:51,417.417 INFO    ] Checking for system updates...
[2026-08-25 03:23:51,454.454 INFO    ] 200
[2026-08-25 03:23:51,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:51,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:23:51,512.512 INFO    ] No update needed
[2026-08-25 03:23:51,515.515 INFO    ] Checking for camera pi updates...
[2026-08-25 03:23:51,549.549 INFO    ] 200
[2026-08-25 03:23:51,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:23:51,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:23:51,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:23:51,648.648 INFO    ] No camera update needed
[2026-08-25 03:23:51,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:23:51,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:23:51,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:23:51,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:23:53,703.703 INFO    ] ================================================
[2026-08-25 03:23:53,718.718 INFO    ] Launching Daemon at Tue Aug 25 03:23:53 IST 2026
[2026-08-25 03:23:53,728.728 INFO    ] ================================================
[2026-08-25 03:23:54,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:23:54
[2026-08-25 03:23:54,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:23:55,135.135 INFO    ] Initializing speech engine...
[2026-08-25 03:23:55,155.155 INFO    ] 2026-08-25 03:23:55
[2026-08-25 03:23:55,405.405 INFO    ] 2026-08-25 03:23:55
[2026-08-25 03:23:55,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:23:55,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:23:55,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:23:55,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:23:55,890.890 INFO    ] time= 25/08/2026 03:23:55
[2026-08-25 03:23:55,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:23:55,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:23:56,110.110 INFO    ] No existing commands found in stream
[2026-08-25 03:24:01,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:24:01,144.144 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 03:24:05,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:24:05,329.329 INFO    ] Checking for system updates...
[2026-08-25 03:24:05,364.364 INFO    ] 200
[2026-08-25 03:24:05,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:05,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:24:05,422.422 INFO    ] No update needed
[2026-08-25 03:24:05,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 03:24:05,458.458 INFO    ] 200
[2026-08-25 03:24:05,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:05,502.502 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:24:05,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:24:05,549.549 INFO    ] No camera update needed
[2026-08-25 03:24:05,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:24:05,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:24:05,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:24:05,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:24:07,603.603 INFO    ] ================================================
[2026-08-25 03:24:07,619.619 INFO    ] Launching Daemon at Tue Aug 25 03:24:07 IST 2026
[2026-08-25 03:24:07,633.633 INFO    ] ================================================
[2026-08-25 03:24:08,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:24:08
[2026-08-25 03:24:08,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:24:09,028.028 INFO    ] Initializing speech engine...
[2026-08-25 03:24:09,043.043 INFO    ] 2026-08-25 03:24:09
[2026-08-25 03:24:09,321.321 INFO    ] 2026-08-25 03:24:09
[2026-08-25 03:24:09,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:24:09,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:24:09,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:24:09,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:24:09,732.732 INFO    ] time= 25/08/2026 03:24:09
[2026-08-25 03:24:09,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:24:09,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:24:09,934.934 INFO    ] No existing commands found in stream
[2026-08-25 03:24:14,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:24:14,962.962 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 03:24:17,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:24:17,457.457 INFO    ] Checking for system updates...
[2026-08-25 03:24:17,492.492 INFO    ] 200
[2026-08-25 03:24:17,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:17,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:24:17,556.556 INFO    ] No update needed
[2026-08-25 03:24:17,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 03:24:17,595.595 INFO    ] 200
[2026-08-25 03:24:17,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:17,641.641 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:24:17,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:24:17,685.685 INFO    ] No camera update needed
[2026-08-25 03:24:17,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:24:17,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:24:17,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:24:17,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:24:19,738.738 INFO    ] ================================================
[2026-08-25 03:24:19,754.754 INFO    ] Launching Daemon at Tue Aug 25 03:24:19 IST 2026
[2026-08-25 03:24:19,764.764 INFO    ] ================================================
[2026-08-25 03:24:20,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:24:20
[2026-08-25 03:24:20,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:24:21,228.228 INFO    ] Initializing speech engine...
[2026-08-25 03:24:21,237.237 INFO    ] 2026-08-25 03:24:21
[2026-08-25 03:24:21,482.482 INFO    ] 2026-08-25 03:24:21
[2026-08-25 03:24:21,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:24:21,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:24:21,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:24:21,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:24:21,953.953 INFO    ] time= 25/08/2026 03:24:21
[2026-08-25 03:24:22,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:24:22,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:24:22,187.187 INFO    ] No existing commands found in stream
[2026-08-25 03:24:27,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:24:27,204.204 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 03:24:28,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:24:28,092.092 INFO    ] Checking for system updates...
[2026-08-25 03:24:28,132.132 INFO    ] 200
[2026-08-25 03:24:28,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:28,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:24:28,196.196 INFO    ] No update needed
[2026-08-25 03:24:28,199.199 INFO    ] Checking for camera pi updates...
[2026-08-25 03:24:28,236.236 INFO    ] 200
[2026-08-25 03:24:28,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:28,283.283 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:24:28,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:24:28,336.336 INFO    ] No camera update needed
[2026-08-25 03:24:28,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:24:28,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:24:28,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:24:28,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:24:30,392.392 INFO    ] ================================================
[2026-08-25 03:24:30,408.408 INFO    ] Launching Daemon at Tue Aug 25 03:24:30 IST 2026
[2026-08-25 03:24:30,419.419 INFO    ] ================================================
[2026-08-25 03:24:30,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:24:30
[2026-08-25 03:24:31,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:24:31,876.876 INFO    ] Initializing speech engine...
[2026-08-25 03:24:31,896.896 INFO    ] 2026-08-25 03:24:31
[2026-08-25 03:24:32,163.163 INFO    ] 2026-08-25 03:24:32
[2026-08-25 03:24:32,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:24:32,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:24:32,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:24:32,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:24:32,552.552 INFO    ] time= 25/08/2026 03:24:32
[2026-08-25 03:24:32,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:24:32,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:24:32,736.736 INFO    ] No existing commands found in stream
[2026-08-25 03:24:37,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:24:37,760.760 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 03:24:39,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:24:39,341.341 INFO    ] Checking for system updates...
[2026-08-25 03:24:39,377.377 INFO    ] 200
[2026-08-25 03:24:39,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:39,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:24:39,434.434 INFO    ] No update needed
[2026-08-25 03:24:39,437.437 INFO    ] Checking for camera pi updates...
[2026-08-25 03:24:39,470.470 INFO    ] 200
[2026-08-25 03:24:39,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:39,515.515 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:24:39,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:24:39,566.566 INFO    ] No camera update needed
[2026-08-25 03:24:39,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:24:39,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:24:39,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:24:39,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:24:41,621.621 INFO    ] ================================================
[2026-08-25 03:24:41,637.637 INFO    ] Launching Daemon at Tue Aug 25 03:24:41 IST 2026
[2026-08-25 03:24:41,648.648 INFO    ] ================================================
[2026-08-25 03:24:42,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:24:42
[2026-08-25 03:24:42,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:24:43,070.070 INFO    ] Initializing speech engine...
[2026-08-25 03:24:43,080.080 INFO    ] 2026-08-25 03:24:43
[2026-08-25 03:24:43,327.327 INFO    ] 2026-08-25 03:24:43
[2026-08-25 03:24:43,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:24:43,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:24:43,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:24:43,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:24:43,815.815 INFO    ] time= 25/08/2026 03:24:43
[2026-08-25 03:24:43,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:24:43,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:24:44,036.036 INFO    ] No existing commands found in stream
[2026-08-25 03:24:49,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:24:49,060.060 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 03:24:50,777.777 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:24:50,779.779 INFO    ] Checking for system updates...
[2026-08-25 03:24:50,815.815 INFO    ] 200
[2026-08-25 03:24:50,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:50,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:24:50,877.877 INFO    ] No update needed
[2026-08-25 03:24:50,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 03:24:50,917.917 INFO    ] 200
[2026-08-25 03:24:50,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:24:50,970.970 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:24:51,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:24:51,024.024 INFO    ] No camera update needed
[2026-08-25 03:24:51,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:24:51,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:24:51,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:24:51,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:24:53,078.078 INFO    ] ================================================
[2026-08-25 03:24:53,094.094 INFO    ] Launching Daemon at Tue Aug 25 03:24:53 IST 2026
[2026-08-25 03:24:53,104.104 INFO    ] ================================================
[2026-08-25 03:24:53,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:24:53
[2026-08-25 03:24:54,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:24:54,543.543 INFO    ] Initializing speech engine...
[2026-08-25 03:24:54,553.553 INFO    ] 2026-08-25 03:24:54
[2026-08-25 03:24:54,797.797 INFO    ] 2026-08-25 03:24:54
[2026-08-25 03:24:54,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:24:55,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:24:55,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:24:55,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:24:55,269.269 INFO    ] time= 25/08/2026 03:24:55
[2026-08-25 03:24:55,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:24:55,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:24:55,485.485 INFO    ] No existing commands found in stream
[2026-08-25 03:25:00,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:25:00,513.513 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 03:25:02,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:25:02,951.951 INFO    ] Checking for system updates...
[2026-08-25 03:25:02,998.998 INFO    ] 200
[2026-08-25 03:25:03,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:03,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:25:03,054.054 INFO    ] No update needed
[2026-08-25 03:25:03,057.057 INFO    ] Checking for camera pi updates...
[2026-08-25 03:25:03,091.091 INFO    ] 200
[2026-08-25 03:25:03,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:03,133.133 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:25:03,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:25:03,242.242 INFO    ] No camera update needed
[2026-08-25 03:25:03,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:25:03,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:25:03,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:25:03,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:25:05,296.296 INFO    ] ================================================
[2026-08-25 03:25:05,312.312 INFO    ] Launching Daemon at Tue Aug 25 03:25:05 IST 2026
[2026-08-25 03:25:05,323.323 INFO    ] ================================================
[2026-08-25 03:25:05,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:25:05
[2026-08-25 03:25:06,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:25:06,825.825 INFO    ] Initializing speech engine...
[2026-08-25 03:25:06,834.834 INFO    ] 2026-08-25 03:25:06
[2026-08-25 03:25:07,096.096 INFO    ] 2026-08-25 03:25:07
[2026-08-25 03:25:07,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:25:07,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:25:07,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:25:07,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:25:07,569.569 INFO    ] time= 25/08/2026 03:25:07
[2026-08-25 03:25:07,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:25:07,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:25:07,784.784 INFO    ] No existing commands found in stream
[2026-08-25 03:25:12,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:25:12,808.808 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 03:25:13,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:25:13,471.471 INFO    ] Checking for system updates...
[2026-08-25 03:25:13,509.509 INFO    ] 200
[2026-08-25 03:25:13,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:13,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:25:13,571.571 INFO    ] No update needed
[2026-08-25 03:25:13,574.574 INFO    ] Checking for camera pi updates...
[2026-08-25 03:25:13,607.607 INFO    ] 200
[2026-08-25 03:25:13,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:13,649.649 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:25:13,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:25:13,795.795 INFO    ] No camera update needed
[2026-08-25 03:25:13,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:25:13,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:25:13,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:25:13,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:25:15,851.851 INFO    ] ================================================
[2026-08-25 03:25:15,866.866 INFO    ] Launching Daemon at Tue Aug 25 03:25:15 IST 2026
[2026-08-25 03:25:15,877.877 INFO    ] ================================================
[2026-08-25 03:25:16,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:25:16
[2026-08-25 03:25:17,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:25:17,307.307 INFO    ] Initializing speech engine...
[2026-08-25 03:25:17,314.314 INFO    ] 2026-08-25 03:25:17
[2026-08-25 03:25:17,564.564 INFO    ] 2026-08-25 03:25:17
[2026-08-25 03:25:17,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:25:17,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:25:17,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:25:17,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:25:18,025.025 INFO    ] time= 25/08/2026 03:25:17
[2026-08-25 03:25:18,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:25:18,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:25:18,184.184 INFO    ] No existing commands found in stream
[2026-08-25 03:25:23,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:25:23,199.199 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 03:25:25,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:25:25,707.707 INFO    ] Checking for system updates...
[2026-08-25 03:25:25,743.743 INFO    ] 200
[2026-08-25 03:25:25,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:25,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:25:25,803.803 INFO    ] No update needed
[2026-08-25 03:25:25,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 03:25:25,842.842 INFO    ] 200
[2026-08-25 03:25:25,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:25,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:25:25,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:25:25,942.942 INFO    ] No camera update needed
[2026-08-25 03:25:25,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:25:25,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:25:25,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:25:25,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:25:28,000.000 INFO    ] ================================================
[2026-08-25 03:25:28,015.015 INFO    ] Launching Daemon at Tue Aug 25 03:25:28 IST 2026
[2026-08-25 03:25:28,027.027 INFO    ] ================================================
[2026-08-25 03:25:28,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:25:28
[2026-08-25 03:25:29,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:25:29,438.438 INFO    ] Initializing speech engine...
[2026-08-25 03:25:29,459.459 INFO    ] 2026-08-25 03:25:29
[2026-08-25 03:25:29,722.722 INFO    ] 2026-08-25 03:25:29
[2026-08-25 03:25:29,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:25:29,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:25:29,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:25:30,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:25:30,101.101 INFO    ] time= 25/08/2026 03:25:30
[2026-08-25 03:25:30,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:25:30,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:25:30,210.210 INFO    ] No existing commands found in stream
[2026-08-25 03:25:35,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:25:35,226.226 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 03:25:38,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:25:38,970.970 INFO    ] Checking for system updates...
[2026-08-25 03:25:39,005.005 INFO    ] 200
[2026-08-25 03:25:39,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:39,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:25:39,064.064 INFO    ] No update needed
[2026-08-25 03:25:39,066.066 INFO    ] Checking for camera pi updates...
[2026-08-25 03:25:39,100.100 INFO    ] 200
[2026-08-25 03:25:39,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:39,146.146 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:25:39,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:25:39,204.204 INFO    ] No camera update needed
[2026-08-25 03:25:39,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:25:39,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:25:39,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:25:39,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:25:41,259.259 INFO    ] ================================================
[2026-08-25 03:25:41,275.275 INFO    ] Launching Daemon at Tue Aug 25 03:25:41 IST 2026
[2026-08-25 03:25:41,286.286 INFO    ] ================================================
[2026-08-25 03:25:41,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:25:41
[2026-08-25 03:25:42,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:25:42,898.898 INFO    ] Initializing speech engine...
[2026-08-25 03:25:42,912.912 INFO    ] 2026-08-25 03:25:42
[2026-08-25 03:25:43,220.220 INFO    ] 2026-08-25 03:25:43
[2026-08-25 03:25:43,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:25:43,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:25:43,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:25:43,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:25:43,675.675 INFO    ] time= 25/08/2026 03:25:43
[2026-08-25 03:25:43,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:25:43,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:25:43,881.881 INFO    ] No existing commands found in stream
[2026-08-25 03:25:48,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:25:48,909.909 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 03:25:52,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:25:52,610.610 INFO    ] Checking for system updates...
[2026-08-25 03:25:52,650.650 INFO    ] 200
[2026-08-25 03:25:52,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:52,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:25:52,718.718 INFO    ] No update needed
[2026-08-25 03:25:52,721.721 INFO    ] Checking for camera pi updates...
[2026-08-25 03:25:52,756.756 INFO    ] 200
[2026-08-25 03:25:52,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:25:52,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:25:52,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:25:52,849.849 INFO    ] No camera update needed
[2026-08-25 03:25:52,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:25:52,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:25:52,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:25:52,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:25:54,907.907 INFO    ] ================================================
[2026-08-25 03:25:54,923.923 INFO    ] Launching Daemon at Tue Aug 25 03:25:54 IST 2026
[2026-08-25 03:25:54,934.934 INFO    ] ================================================
[2026-08-25 03:25:55,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:25:55
[2026-08-25 03:25:56,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:25:56,340.340 INFO    ] Initializing speech engine...
[2026-08-25 03:25:56,354.354 INFO    ] 2026-08-25 03:25:56
[2026-08-25 03:25:56,635.635 INFO    ] 2026-08-25 03:25:56
[2026-08-25 03:25:56,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:25:56,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:25:56,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:25:57,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:25:57,028.028 INFO    ] time= 25/08/2026 03:25:57
[2026-08-25 03:25:57,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:25:57,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:25:57,139.139 INFO    ] No existing commands found in stream
[2026-08-25 03:26:02,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:26:02,158.158 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 03:26:06,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:26:06,567.567 INFO    ] Checking for system updates...
[2026-08-25 03:26:06,603.603 INFO    ] 200
[2026-08-25 03:26:06,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:06,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:06,668.668 INFO    ] No update needed
[2026-08-25 03:26:06,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 03:26:06,712.712 INFO    ] 200
[2026-08-25 03:26:06,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:06,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:26:06,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:06,798.798 INFO    ] No camera update needed
[2026-08-25 03:26:06,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:26:06,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:26:06,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:26:06,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:26:08,854.854 INFO    ] ================================================
[2026-08-25 03:26:08,870.870 INFO    ] Launching Daemon at Tue Aug 25 03:26:08 IST 2026
[2026-08-25 03:26:08,882.882 INFO    ] ================================================
[2026-08-25 03:26:09,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:26:09
[2026-08-25 03:26:10,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:26:10,367.367 INFO    ] Initializing speech engine...
[2026-08-25 03:26:10,376.376 INFO    ] 2026-08-25 03:26:10
[2026-08-25 03:26:10,639.639 INFO    ] 2026-08-25 03:26:10
[2026-08-25 03:26:10,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:26:10,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:26:10,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:26:11,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:26:11,129.129 INFO    ] time= 25/08/2026 03:26:11
[2026-08-25 03:26:11,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:26:11,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:26:11,336.336 INFO    ] No existing commands found in stream
[2026-08-25 03:26:16,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:26:16,356.356 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 03:26:17,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:26:17,960.960 INFO    ] Checking for system updates...
[2026-08-25 03:26:17,996.996 INFO    ] 200
[2026-08-25 03:26:17,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:18,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:18,055.055 INFO    ] No update needed
[2026-08-25 03:26:18,058.058 INFO    ] Checking for camera pi updates...
[2026-08-25 03:26:18,094.094 INFO    ] 200
[2026-08-25 03:26:18,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:18,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:26:18,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:18,190.190 INFO    ] No camera update needed
[2026-08-25 03:26:18,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:26:18,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:26:18,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:26:18,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:26:20,246.246 INFO    ] ================================================
[2026-08-25 03:26:20,263.263 INFO    ] Launching Daemon at Tue Aug 25 03:26:20 IST 2026
[2026-08-25 03:26:20,276.276 INFO    ] ================================================
[2026-08-25 03:26:20,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:26:20
[2026-08-25 03:26:21,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:26:21,728.728 INFO    ] Initializing speech engine...
[2026-08-25 03:26:21,745.745 INFO    ] 2026-08-25 03:26:21
[2026-08-25 03:26:22,014.014 INFO    ] 2026-08-25 03:26:21
[2026-08-25 03:26:22,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:26:22,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:26:22,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:26:22,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:26:22,387.387 INFO    ] time= 25/08/2026 03:26:22
[2026-08-25 03:26:22,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:26:22,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:26:22,514.514 INFO    ] No existing commands found in stream
[2026-08-25 03:26:27,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:26:27,531.531 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 03:26:28,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:26:28,291.291 INFO    ] Checking for system updates...
[2026-08-25 03:26:28,327.327 INFO    ] 200
[2026-08-25 03:26:28,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:28,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:26:28,387.387 INFO    ] No update needed
[2026-08-25 03:26:28,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 03:26:28,424.424 INFO    ] 200
[2026-08-25 03:26:28,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:28,467.467 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:26:28,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:26:28,522.522 INFO    ] No camera update needed
[2026-08-25 03:26:28,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:26:28,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:26:28,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:26:28,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:26:30,580.580 INFO    ] ================================================
[2026-08-25 03:26:30,596.596 INFO    ] Launching Daemon at Tue Aug 25 03:26:30 IST 2026
[2026-08-25 03:26:30,607.607 INFO    ] ================================================
[2026-08-25 03:26:31,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:26:31
[2026-08-25 03:26:31,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:26:32,099.099 INFO    ] Initializing speech engine...
[2026-08-25 03:26:32,113.113 INFO    ] 2026-08-25 03:26:32
[2026-08-25 03:26:32,407.407 INFO    ] 2026-08-25 03:26:32
[2026-08-25 03:26:32,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:26:32,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:26:32,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:26:32,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:26:32,760.760 INFO    ] time= 25/08/2026 03:26:32
[2026-08-25 03:26:32,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:26:32,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:26:32,894.894 INFO    ] No existing commands found in stream
[2026-08-25 03:26:37,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:26:37,909.909 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 03:26:40,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:26:40,741.741 INFO    ] Checking for system updates...
[2026-08-25 03:26:40,777.777 INFO    ] 200
[2026-08-25 03:26:40,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:40,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:40,837.837 INFO    ] No update needed
[2026-08-25 03:26:40,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 03:26:40,872.872 INFO    ] 200
[2026-08-25 03:26:40,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:40,920.920 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:26:40,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:40,968.968 INFO    ] No camera update needed
[2026-08-25 03:26:40,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:26:40,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:26:40,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:26:40,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:26:43,030.030 INFO    ] ================================================
[2026-08-25 03:26:43,047.047 INFO    ] Launching Daemon at Tue Aug 25 03:26:43 IST 2026
[2026-08-25 03:26:43,058.058 INFO    ] ================================================
[2026-08-25 03:26:43,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:26:43
[2026-08-25 03:26:44,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:26:44,501.501 INFO    ] Initializing speech engine...
[2026-08-25 03:26:44,511.511 INFO    ] 2026-08-25 03:26:44
[2026-08-25 03:26:44,772.772 INFO    ] 2026-08-25 03:26:44
[2026-08-25 03:26:44,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:26:45,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:26:45,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:26:45,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:26:45,228.228 INFO    ] time= 25/08/2026 03:26:45
[2026-08-25 03:26:45,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:26:45,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:26:45,398.398 INFO    ] No existing commands found in stream
[2026-08-25 03:26:50,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:26:50,438.438 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 03:26:54,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:26:54,918.918 INFO    ] Checking for system updates...
[2026-08-25 03:26:54,954.954 INFO    ] 200
[2026-08-25 03:26:54,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:55,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:55,012.012 INFO    ] No update needed
[2026-08-25 03:26:55,015.015 INFO    ] Checking for camera pi updates...
[2026-08-25 03:26:55,053.053 INFO    ] 200
[2026-08-25 03:26:55,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:26:55,108.108 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:26:55,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:26:55,158.158 INFO    ] No camera update needed
[2026-08-25 03:26:55,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:26:55,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:26:55,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:26:55,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:26:57,215.215 INFO    ] ================================================
[2026-08-25 03:26:57,231.231 INFO    ] Launching Daemon at Tue Aug 25 03:26:57 IST 2026
[2026-08-25 03:26:57,242.242 INFO    ] ================================================
[2026-08-25 03:26:57,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:26:57
[2026-08-25 03:26:58,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:26:58,657.657 INFO    ] Initializing speech engine...
[2026-08-25 03:26:58,666.666 INFO    ] 2026-08-25 03:26:58
[2026-08-25 03:26:58,912.912 INFO    ] 2026-08-25 03:26:58
[2026-08-25 03:26:58,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:26:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:26:59,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:26:59,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:26:59,273.273 INFO    ] time= 25/08/2026 03:26:59
[2026-08-25 03:26:59,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:26:59,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:26:59,363.363 INFO    ] No existing commands found in stream
[2026-08-25 03:27:04,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:27:04,396.396 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 03:27:06,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:27:06,570.570 INFO    ] Checking for system updates...
[2026-08-25 03:27:06,607.607 INFO    ] 200
[2026-08-25 03:27:06,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:06,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:27:06,672.672 INFO    ] No update needed
[2026-08-25 03:27:06,675.675 INFO    ] Checking for camera pi updates...
[2026-08-25 03:27:06,710.710 INFO    ] 200
[2026-08-25 03:27:06,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:06,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:27:06,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:27:06,804.804 INFO    ] No camera update needed
[2026-08-25 03:27:06,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:27:06,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:27:06,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:27:06,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:27:08,864.864 INFO    ] ================================================
[2026-08-25 03:27:08,879.879 INFO    ] Launching Daemon at Tue Aug 25 03:27:08 IST 2026
[2026-08-25 03:27:08,890.890 INFO    ] ================================================
[2026-08-25 03:27:09,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:27:09
[2026-08-25 03:27:10,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:27:10,510.510 INFO    ] Initializing speech engine...
[2026-08-25 03:27:10,524.524 INFO    ] 2026-08-25 03:27:10
[2026-08-25 03:27:10,836.836 INFO    ] 2026-08-25 03:27:10
[2026-08-25 03:27:10,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:27:11,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:27:11,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:27:11,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:27:11,294.294 INFO    ] time= 25/08/2026 03:27:11
[2026-08-25 03:27:11,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:27:11,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:27:11,495.495 INFO    ] No existing commands found in stream
[2026-08-25 03:27:16,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:27:16,527.527 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 03:27:20,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:27:20,513.513 INFO    ] Checking for system updates...
[2026-08-25 03:27:20,550.550 INFO    ] 200
[2026-08-25 03:27:20,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:20,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:27:20,610.610 INFO    ] No update needed
[2026-08-25 03:27:20,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 03:27:20,651.651 INFO    ] 200
[2026-08-25 03:27:20,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:20,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:27:20,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:27:20,755.755 INFO    ] No camera update needed
[2026-08-25 03:27:20,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:27:20,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:27:20,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:27:20,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:27:22,815.815 INFO    ] ================================================
[2026-08-25 03:27:22,831.831 INFO    ] Launching Daemon at Tue Aug 25 03:27:22 IST 2026
[2026-08-25 03:27:22,841.841 INFO    ] ================================================
[2026-08-25 03:27:23,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:27:23
[2026-08-25 03:27:24,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:27:24,277.277 INFO    ] Initializing speech engine...
[2026-08-25 03:27:24,283.283 INFO    ] 2026-08-25 03:27:24
[2026-08-25 03:27:24,583.583 INFO    ] 2026-08-25 03:27:24
[2026-08-25 03:27:24,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:27:24,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:27:24,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:27:24,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:27:24,967.967 INFO    ] time= 25/08/2026 03:27:24
[2026-08-25 03:27:24,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:27:24,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:27:25,097.097 INFO    ] No existing commands found in stream
[2026-08-25 03:27:30,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:27:30,117.117 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 03:27:31,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:27:31,871.871 INFO    ] Checking for system updates...
[2026-08-25 03:27:31,910.910 INFO    ] 200
[2026-08-25 03:27:31,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:31,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:27:31,968.968 INFO    ] No update needed
[2026-08-25 03:27:31,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 03:27:32,009.009 INFO    ] 200
[2026-08-25 03:27:32,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:32,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:27:32,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:27:32,205.205 INFO    ] No camera update needed
[2026-08-25 03:27:32,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:27:32,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:27:32,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:27:32,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:27:34,265.265 INFO    ] ================================================
[2026-08-25 03:27:34,281.281 INFO    ] Launching Daemon at Tue Aug 25 03:27:34 IST 2026
[2026-08-25 03:27:34,292.292 INFO    ] ================================================
[2026-08-25 03:27:34,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:27:34
[2026-08-25 03:27:35,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:27:35,696.696 INFO    ] Initializing speech engine...
[2026-08-25 03:27:35,705.705 INFO    ] 2026-08-25 03:27:35
[2026-08-25 03:27:36,002.002 INFO    ] 2026-08-25 03:27:35
[2026-08-25 03:27:36,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:27:36,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:27:36,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:27:36,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:27:36,408.408 INFO    ] time= 25/08/2026 03:27:36
[2026-08-25 03:27:36,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:27:36,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:27:36,596.596 INFO    ] No existing commands found in stream
[2026-08-25 03:27:41,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:27:41,618.618 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 03:27:46,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:27:46,048.048 INFO    ] Checking for system updates...
[2026-08-25 03:27:46,083.083 INFO    ] 200
[2026-08-25 03:27:46,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:46,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:27:46,140.140 INFO    ] No update needed
[2026-08-25 03:27:46,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 03:27:46,176.176 INFO    ] 200
[2026-08-25 03:27:46,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:46,218.218 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:27:46,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:27:46,267.267 INFO    ] No camera update needed
[2026-08-25 03:27:46,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:27:46,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:27:46,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:27:46,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:27:48,325.325 INFO    ] ================================================
[2026-08-25 03:27:48,340.340 INFO    ] Launching Daemon at Tue Aug 25 03:27:48 IST 2026
[2026-08-25 03:27:48,351.351 INFO    ] ================================================
[2026-08-25 03:27:48,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:27:48
[2026-08-25 03:27:49,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:27:49,781.781 INFO    ] Initializing speech engine...
[2026-08-25 03:27:49,787.787 INFO    ] 2026-08-25 03:27:49
[2026-08-25 03:27:50,046.046 INFO    ] 2026-08-25 03:27:50
[2026-08-25 03:27:50,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:27:50,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:27:50,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:27:50,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:27:50,589.589 INFO    ] time= 25/08/2026 03:27:50
[2026-08-25 03:27:50,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:27:50,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:27:50,826.826 INFO    ] No existing commands found in stream
[2026-08-25 03:27:55,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:27:55,854.854 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 03:27:56,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:27:56,984.984 INFO    ] Checking for system updates...
[2026-08-25 03:27:57,026.026 INFO    ] 200
[2026-08-25 03:27:57,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:57,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:27:57,082.082 INFO    ] No update needed
[2026-08-25 03:27:57,085.085 INFO    ] Checking for camera pi updates...
[2026-08-25 03:27:57,119.119 INFO    ] 200
[2026-08-25 03:27:57,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:27:57,161.161 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:27:57,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:27:57,226.226 INFO    ] No camera update needed
[2026-08-25 03:27:57,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:27:57,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:27:57,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:27:57,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:27:59,281.281 INFO    ] ================================================
[2026-08-25 03:27:59,297.297 INFO    ] Launching Daemon at Tue Aug 25 03:27:59 IST 2026
[2026-08-25 03:27:59,308.308 INFO    ] ================================================
[2026-08-25 03:27:59,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:27:59
[2026-08-25 03:28:00,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:28:00,736.736 INFO    ] Initializing speech engine...
[2026-08-25 03:28:00,742.742 INFO    ] 2026-08-25 03:28:00
[2026-08-25 03:28:01,044.044 INFO    ] 2026-08-25 03:28:01
[2026-08-25 03:28:01,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:28:01,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:28:01,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:28:01,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:28:01,462.462 INFO    ] time= 25/08/2026 03:28:01
[2026-08-25 03:28:01,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:28:01,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:28:01,642.642 INFO    ] No existing commands found in stream
[2026-08-25 03:28:06,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:28:06,670.670 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 03:28:09,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:28:09,188.188 INFO    ] Checking for system updates...
[2026-08-25 03:28:09,223.223 INFO    ] 200
[2026-08-25 03:28:09,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:09,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:09,288.288 INFO    ] No update needed
[2026-08-25 03:28:09,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 03:28:09,323.323 INFO    ] 200
[2026-08-25 03:28:09,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:09,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:28:09,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:09,428.428 INFO    ] No camera update needed
[2026-08-25 03:28:09,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:28:09,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:28:09,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:28:09,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:28:11,485.485 INFO    ] ================================================
[2026-08-25 03:28:11,500.500 INFO    ] Launching Daemon at Tue Aug 25 03:28:11 IST 2026
[2026-08-25 03:28:11,511.511 INFO    ] ================================================
[2026-08-25 03:28:12,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:28:12
[2026-08-25 03:28:12,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:28:12,939.939 INFO    ] Initializing speech engine...
[2026-08-25 03:28:12,949.949 INFO    ] 2026-08-25 03:28:12
[2026-08-25 03:28:13,193.193 INFO    ] 2026-08-25 03:28:13
[2026-08-25 03:28:13,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:28:13,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:28:13,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:28:13,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:28:13,561.561 INFO    ] time= 25/08/2026 03:28:13
[2026-08-25 03:28:13,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:28:13,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:28:13,742.742 INFO    ] No existing commands found in stream
[2026-08-25 03:28:18,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:28:18,769.769 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 03:28:19,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:28:19,845.845 INFO    ] Checking for system updates...
[2026-08-25 03:28:19,881.881 INFO    ] 200
[2026-08-25 03:28:19,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:19,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:19,937.937 INFO    ] No update needed
[2026-08-25 03:28:19,939.939 INFO    ] Checking for camera pi updates...
[2026-08-25 03:28:19,973.973 INFO    ] 200
[2026-08-25 03:28:19,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:20,015.015 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:28:20,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:20,070.070 INFO    ] No camera update needed
[2026-08-25 03:28:20,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:28:20,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:28:20,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:28:20,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:28:22,126.126 INFO    ] ================================================
[2026-08-25 03:28:22,142.142 INFO    ] Launching Daemon at Tue Aug 25 03:28:22 IST 2026
[2026-08-25 03:28:22,153.153 INFO    ] ================================================
[2026-08-25 03:28:22,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:28:22
[2026-08-25 03:28:23,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:28:23,599.599 INFO    ] Initializing speech engine...
[2026-08-25 03:28:23,613.613 INFO    ] 2026-08-25 03:28:23
[2026-08-25 03:28:23,885.885 INFO    ] 2026-08-25 03:28:23
[2026-08-25 03:28:23,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:28:24,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:28:24,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:28:24,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:28:24,305.305 INFO    ] time= 25/08/2026 03:28:24
[2026-08-25 03:28:24,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:28:24,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:28:24,383.383 INFO    ] No existing commands found in stream
[2026-08-25 03:28:29,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:28:29,416.416 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 03:28:29,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:28:29,859.859 INFO    ] Checking for system updates...
[2026-08-25 03:28:29,894.894 INFO    ] 200
[2026-08-25 03:28:29,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:29,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:29,952.952 INFO    ] No update needed
[2026-08-25 03:28:29,955.955 INFO    ] Checking for camera pi updates...
[2026-08-25 03:28:29,988.988 INFO    ] 200
[2026-08-25 03:28:29,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:30,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:28:30,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:30,080.080 INFO    ] No camera update needed
[2026-08-25 03:28:30,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:28:30,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:28:30,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:28:30,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:28:32,139.139 INFO    ] ================================================
[2026-08-25 03:28:32,157.157 INFO    ] Launching Daemon at Tue Aug 25 03:28:32 IST 2026
[2026-08-25 03:28:32,169.169 INFO    ] ================================================
[2026-08-25 03:28:32,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:28:32
[2026-08-25 03:28:33,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:28:33,644.644 INFO    ] Initializing speech engine...
[2026-08-25 03:28:33,651.651 INFO    ] 2026-08-25 03:28:33
[2026-08-25 03:28:33,930.930 INFO    ] 2026-08-25 03:28:33
[2026-08-25 03:28:33,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:28:34,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:28:34,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:28:34,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:28:34,309.309 INFO    ] time= 25/08/2026 03:28:34
[2026-08-25 03:28:34,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:28:34,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:28:34,424.424 INFO    ] No existing commands found in stream
[2026-08-25 03:28:39,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:28:39,462.462 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 03:28:43,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:28:43,517.517 INFO    ] Checking for system updates...
[2026-08-25 03:28:43,556.556 INFO    ] 200
[2026-08-25 03:28:43,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:43,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:28:43,612.612 INFO    ] No update needed
[2026-08-25 03:28:43,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 03:28:43,651.651 INFO    ] 200
[2026-08-25 03:28:43,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:43,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:28:43,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:28:43,746.746 INFO    ] No camera update needed
[2026-08-25 03:28:43,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:28:43,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:28:43,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:28:43,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:28:45,801.801 INFO    ] ================================================
[2026-08-25 03:28:45,816.816 INFO    ] Launching Daemon at Tue Aug 25 03:28:45 IST 2026
[2026-08-25 03:28:45,827.827 INFO    ] ================================================
[2026-08-25 03:28:46,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:28:46
[2026-08-25 03:28:47,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:28:47,269.269 INFO    ] Initializing speech engine...
[2026-08-25 03:28:47,282.282 INFO    ] 2026-08-25 03:28:47
[2026-08-25 03:28:47,566.566 INFO    ] 2026-08-25 03:28:47
[2026-08-25 03:28:47,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:28:47,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:28:47,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:28:47,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:28:47,946.946 INFO    ] time= 25/08/2026 03:28:47
[2026-08-25 03:28:47,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:28:47,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:28:48,070.070 INFO    ] No existing commands found in stream
[2026-08-25 03:28:53,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:28:53,086.086 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 03:28:55,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:28:55,694.694 INFO    ] Checking for system updates...
[2026-08-25 03:28:55,729.729 INFO    ] 200
[2026-08-25 03:28:55,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:55,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:55,786.786 INFO    ] No update needed
[2026-08-25 03:28:55,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 03:28:55,822.822 INFO    ] 200
[2026-08-25 03:28:55,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:28:55,864.864 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:28:55,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:28:55,913.913 INFO    ] No camera update needed
[2026-08-25 03:28:55,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:28:55,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:28:55,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:28:55,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:28:57,969.969 INFO    ] ================================================
[2026-08-25 03:28:57,983.983 INFO    ] Launching Daemon at Tue Aug 25 03:28:57 IST 2026
[2026-08-25 03:28:57,994.994 INFO    ] ================================================
[2026-08-25 03:28:58,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:28:58
[2026-08-25 03:28:59,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:28:59,398.398 INFO    ] Initializing speech engine...
[2026-08-25 03:28:59,417.417 INFO    ] 2026-08-25 03:28:59
[2026-08-25 03:28:59,662.662 INFO    ] 2026-08-25 03:28:59
[2026-08-25 03:28:59,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:28:59,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:28:59,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:29:00,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:29:00,126.126 INFO    ] time= 25/08/2026 03:29:00
[2026-08-25 03:29:00,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:29:00,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:29:00,350.350 INFO    ] No existing commands found in stream
[2026-08-25 03:29:05,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:29:05,378.378 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 03:29:06,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:29:06,857.857 INFO    ] Checking for system updates...
[2026-08-25 03:29:06,896.896 INFO    ] 200
[2026-08-25 03:29:06,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:06,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:29:06,952.952 INFO    ] No update needed
[2026-08-25 03:29:06,954.954 INFO    ] Checking for camera pi updates...
[2026-08-25 03:29:06,991.991 INFO    ] 200
[2026-08-25 03:29:06,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:07,038.038 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:29:07,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:29:07,095.095 INFO    ] No camera update needed
[2026-08-25 03:29:07,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:29:07,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:29:07,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:29:07,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:29:09,150.150 INFO    ] ================================================
[2026-08-25 03:29:09,165.165 INFO    ] Launching Daemon at Tue Aug 25 03:29:09 IST 2026
[2026-08-25 03:29:09,176.176 INFO    ] ================================================
[2026-08-25 03:29:09,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:29:09
[2026-08-25 03:29:10,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:29:10,563.563 INFO    ] Initializing speech engine...
[2026-08-25 03:29:10,569.569 INFO    ] 2026-08-25 03:29:10
[2026-08-25 03:29:10,839.839 INFO    ] 2026-08-25 03:29:10
[2026-08-25 03:29:10,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:29:11,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:29:11,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:29:11,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:29:11,204.204 INFO    ] time= 25/08/2026 03:29:11
[2026-08-25 03:29:11,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:29:11,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:29:11,385.385 INFO    ] No existing commands found in stream
[2026-08-25 03:29:16,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:29:16,412.412 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 03:29:20,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:29:20,020.020 INFO    ] Checking for system updates...
[2026-08-25 03:29:20,056.056 INFO    ] 200
[2026-08-25 03:29:20,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:20,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:29:20,114.114 INFO    ] No update needed
[2026-08-25 03:29:20,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 03:29:20,150.150 INFO    ] 200
[2026-08-25 03:29:20,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:20,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:29:20,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:29:20,245.245 INFO    ] No camera update needed
[2026-08-25 03:29:20,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:29:20,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:29:20,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:29:20,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:29:22,300.300 INFO    ] ================================================
[2026-08-25 03:29:22,315.315 INFO    ] Launching Daemon at Tue Aug 25 03:29:22 IST 2026
[2026-08-25 03:29:22,325.325 INFO    ] ================================================
[2026-08-25 03:29:22,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:29:22
[2026-08-25 03:29:23,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:29:23,791.791 INFO    ] Initializing speech engine...
[2026-08-25 03:29:23,800.800 INFO    ] 2026-08-25 03:29:23
[2026-08-25 03:29:24,072.072 INFO    ] 2026-08-25 03:29:24
[2026-08-25 03:29:24,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:29:24,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:29:24,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:29:24,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:29:24,553.553 INFO    ] time= 25/08/2026 03:29:24
[2026-08-25 03:29:24,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:29:24,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:29:24,759.759 INFO    ] No existing commands found in stream
[2026-08-25 03:29:29,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:29:29,784.784 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 03:29:32,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:29:32,609.609 INFO    ] Checking for system updates...
[2026-08-25 03:29:32,648.648 INFO    ] 200
[2026-08-25 03:29:32,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:32,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:29:32,705.705 INFO    ] No update needed
[2026-08-25 03:29:32,708.708 INFO    ] Checking for camera pi updates...
[2026-08-25 03:29:32,745.745 INFO    ] 200
[2026-08-25 03:29:32,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:32,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:29:32,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:29:32,838.838 INFO    ] No camera update needed
[2026-08-25 03:29:32,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:29:32,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:29:32,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:29:32,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:29:34,895.895 INFO    ] ================================================
[2026-08-25 03:29:34,910.910 INFO    ] Launching Daemon at Tue Aug 25 03:29:34 IST 2026
[2026-08-25 03:29:34,921.921 INFO    ] ================================================
[2026-08-25 03:29:35,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:29:35
[2026-08-25 03:29:36,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:29:36,336.336 INFO    ] Initializing speech engine...
[2026-08-25 03:29:36,343.343 INFO    ] 2026-08-25 03:29:36
[2026-08-25 03:29:36,635.635 INFO    ] 2026-08-25 03:29:36
[2026-08-25 03:29:36,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:29:36,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:29:36,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:29:37,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:29:37,017.017 INFO    ] time= 25/08/2026 03:29:37
[2026-08-25 03:29:37,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:29:37,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:29:37,175.175 INFO    ] No existing commands found in stream
[2026-08-25 03:29:42,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:29:42,198.198 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 03:29:46,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:29:46,082.082 INFO    ] Checking for system updates...
[2026-08-25 03:29:46,117.117 INFO    ] 200
[2026-08-25 03:29:46,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:46,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:29:46,183.183 INFO    ] No update needed
[2026-08-25 03:29:46,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 03:29:46,219.219 INFO    ] 200
[2026-08-25 03:29:46,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:46,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:29:46,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:29:46,416.416 INFO    ] No camera update needed
[2026-08-25 03:29:46,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:29:46,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:29:46,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:29:46,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:29:48,473.473 INFO    ] ================================================
[2026-08-25 03:29:48,488.488 INFO    ] Launching Daemon at Tue Aug 25 03:29:48 IST 2026
[2026-08-25 03:29:48,499.499 INFO    ] ================================================
[2026-08-25 03:29:49,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:29:49
[2026-08-25 03:29:49,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:29:49,926.926 INFO    ] Initializing speech engine...
[2026-08-25 03:29:49,930.930 INFO    ] 2026-08-25 03:29:49
[2026-08-25 03:29:50,175.175 INFO    ] 2026-08-25 03:29:50
[2026-08-25 03:29:50,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:29:50,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:29:50,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:29:50,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:29:50,675.675 INFO    ] time= 25/08/2026 03:29:50
[2026-08-25 03:29:50,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:29:50,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:29:50,881.881 INFO    ] No existing commands found in stream
[2026-08-25 03:29:55,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:29:55,909.909 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 03:29:56,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:29:56,731.731 INFO    ] Checking for system updates...
[2026-08-25 03:29:56,767.767 INFO    ] 200
[2026-08-25 03:29:56,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:56,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:29:56,824.824 INFO    ] No update needed
[2026-08-25 03:29:56,826.826 INFO    ] Checking for camera pi updates...
[2026-08-25 03:29:56,859.859 INFO    ] 200
[2026-08-25 03:29:56,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:29:56,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:29:56,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:29:56,980.980 INFO    ] No camera update needed
[2026-08-25 03:29:56,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:29:56,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:29:56,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:29:56,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:29:59,040.040 INFO    ] ================================================
[2026-08-25 03:29:59,055.055 INFO    ] Launching Daemon at Tue Aug 25 03:29:59 IST 2026
[2026-08-25 03:29:59,066.066 INFO    ] ================================================
[2026-08-25 03:29:59,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:29:59
[2026-08-25 03:30:00,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:30:00,490.490 INFO    ] Initializing speech engine...
[2026-08-25 03:30:00,506.506 INFO    ] 2026-08-25 03:30:00
[2026-08-25 03:30:00,762.762 INFO    ] 2026-08-25 03:30:00
[2026-08-25 03:30:00,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:30:01,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:30:01,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:30:01,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:30:01,244.244 INFO    ] time= 25/08/2026 03:30:01
[2026-08-25 03:30:01,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:30:01,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:30:01,466.466 INFO    ] No existing commands found in stream
[2026-08-25 03:30:06,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:30:06,479.479 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 03:30:08,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:30:08,537.537 INFO    ] Checking for system updates...
[2026-08-25 03:30:08,572.572 INFO    ] 200
[2026-08-25 03:30:08,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:08,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:30:08,629.629 INFO    ] No update needed
[2026-08-25 03:30:08,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 03:30:08,668.668 INFO    ] 200
[2026-08-25 03:30:08,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:08,713.713 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:30:08,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:30:08,769.769 INFO    ] No camera update needed
[2026-08-25 03:30:08,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:30:08,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:30:08,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:30:08,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:30:10,824.824 INFO    ] ================================================
[2026-08-25 03:30:10,839.839 INFO    ] Launching Daemon at Tue Aug 25 03:30:10 IST 2026
[2026-08-25 03:30:10,850.850 INFO    ] ================================================
[2026-08-25 03:30:11,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:30:11
[2026-08-25 03:30:12,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:30:12,310.310 INFO    ] Initializing speech engine...
[2026-08-25 03:30:12,323.323 INFO    ] 2026-08-25 03:30:12
[2026-08-25 03:30:12,591.591 INFO    ] 2026-08-25 03:30:12
[2026-08-25 03:30:12,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:30:12,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:30:12,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:30:12,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:30:12,960.960 INFO    ] time= 25/08/2026 03:30:12
[2026-08-25 03:30:12,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:30:13,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:30:13,136.136 INFO    ] No existing commands found in stream
[2026-08-25 03:30:18,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:30:18,164.164 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 03:30:20,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:30:20,150.150 INFO    ] Checking for system updates...
[2026-08-25 03:30:20,188.188 INFO    ] 200
[2026-08-25 03:30:20,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:20,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:30:20,245.245 INFO    ] No update needed
[2026-08-25 03:30:20,247.247 INFO    ] Checking for camera pi updates...
[2026-08-25 03:30:20,285.285 INFO    ] 200
[2026-08-25 03:30:20,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:20,328.328 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:30:20,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:30:20,377.377 INFO    ] No camera update needed
[2026-08-25 03:30:20,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:30:20,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:30:20,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:30:20,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:30:22,432.432 INFO    ] ================================================
[2026-08-25 03:30:22,447.447 INFO    ] Launching Daemon at Tue Aug 25 03:30:22 IST 2026
[2026-08-25 03:30:22,459.459 INFO    ] ================================================
[2026-08-25 03:30:23,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:30:23
[2026-08-25 03:30:23,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:30:24,013.013 INFO    ] Initializing speech engine...
[2026-08-25 03:30:24,024.024 INFO    ] 2026-08-25 03:30:24
[2026-08-25 03:30:24,289.289 INFO    ] 2026-08-25 03:30:24
[2026-08-25 03:30:24,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:30:24,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:30:24,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:30:24,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:30:24,664.664 INFO    ] time= 25/08/2026 03:30:24
[2026-08-25 03:30:24,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:30:24,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:30:24,788.788 INFO    ] No existing commands found in stream
[2026-08-25 03:30:29,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:30:29,804.804 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 03:30:31,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:30:31,255.255 INFO    ] Checking for system updates...
[2026-08-25 03:30:31,290.290 INFO    ] 200
[2026-08-25 03:30:31,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:31,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:30:31,350.350 INFO    ] No update needed
[2026-08-25 03:30:31,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 03:30:31,388.388 INFO    ] 200
[2026-08-25 03:30:31,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:31,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:30:31,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:30:31,483.483 INFO    ] No camera update needed
[2026-08-25 03:30:31,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:30:31,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:30:31,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:30:31,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:30:33,539.539 INFO    ] ================================================
[2026-08-25 03:30:33,554.554 INFO    ] Launching Daemon at Tue Aug 25 03:30:33 IST 2026
[2026-08-25 03:30:33,565.565 INFO    ] ================================================
[2026-08-25 03:30:34,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:30:34
[2026-08-25 03:30:34,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:30:35,016.016 INFO    ] Initializing speech engine...
[2026-08-25 03:30:35,026.026 INFO    ] 2026-08-25 03:30:35
[2026-08-25 03:30:35,273.273 INFO    ] 2026-08-25 03:30:35
[2026-08-25 03:30:35,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:30:35,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:30:35,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:30:35,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:30:35,742.742 INFO    ] time= 25/08/2026 03:30:35
[2026-08-25 03:30:35,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:30:35,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:30:35,962.962 INFO    ] No existing commands found in stream
[2026-08-25 03:30:40,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:30:40,990.990 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 03:30:45,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:30:45,012.012 INFO    ] Checking for system updates...
[2026-08-25 03:30:45,050.050 INFO    ] 200
[2026-08-25 03:30:45,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:45,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:30:45,112.112 INFO    ] No update needed
[2026-08-25 03:30:45,114.114 INFO    ] Checking for camera pi updates...
[2026-08-25 03:30:45,159.159 INFO    ] 200
[2026-08-25 03:30:45,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:45,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:30:45,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:30:45,263.263 INFO    ] No camera update needed
[2026-08-25 03:30:45,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:30:45,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:30:45,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:30:45,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:30:47,319.319 INFO    ] ================================================
[2026-08-25 03:30:47,335.335 INFO    ] Launching Daemon at Tue Aug 25 03:30:47 IST 2026
[2026-08-25 03:30:47,345.345 INFO    ] ================================================
[2026-08-25 03:30:47,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:30:47
[2026-08-25 03:30:48,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:30:48,922.922 INFO    ] Initializing speech engine...
[2026-08-25 03:30:48,936.936 INFO    ] 2026-08-25 03:30:48
[2026-08-25 03:30:49,212.212 INFO    ] 2026-08-25 03:30:49
[2026-08-25 03:30:49,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:30:49,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:30:49,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:30:49,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:30:49,650.650 INFO    ] time= 25/08/2026 03:30:49
[2026-08-25 03:30:49,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:30:49,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:30:49,892.892 INFO    ] No existing commands found in stream
[2026-08-25 03:30:54,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:30:54,916.916 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 03:30:58,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:30:58,155.155 INFO    ] Checking for system updates...
[2026-08-25 03:30:58,192.192 INFO    ] 200
[2026-08-25 03:30:58,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:58,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:30:58,259.259 INFO    ] No update needed
[2026-08-25 03:30:58,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 03:30:58,296.296 INFO    ] 200
[2026-08-25 03:30:58,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:30:58,341.341 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:30:58,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:30:58,391.391 INFO    ] No camera update needed
[2026-08-25 03:30:58,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:30:58,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:30:58,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:30:58,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:31:00,447.447 INFO    ] ================================================
[2026-08-25 03:31:00,462.462 INFO    ] Launching Daemon at Tue Aug 25 03:31:00 IST 2026
[2026-08-25 03:31:00,473.473 INFO    ] ================================================
[2026-08-25 03:31:01,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:31:01
[2026-08-25 03:31:01,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:31:02,222.222 INFO    ] Initializing speech engine...
[2026-08-25 03:31:02,231.231 INFO    ] 2026-08-25 03:31:02
[2026-08-25 03:31:02,555.555 INFO    ] 2026-08-25 03:31:02
[2026-08-25 03:31:02,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:31:02,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:31:02,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:31:02,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:31:03,007.007 INFO    ] time= 25/08/2026 03:31:02
[2026-08-25 03:31:03,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:31:03,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:31:03,156.156 INFO    ] No existing commands found in stream
[2026-08-25 03:31:08,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:31:08,172.172 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 03:31:11,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:31:11,581.581 INFO    ] Checking for system updates...
[2026-08-25 03:31:11,617.617 INFO    ] 200
[2026-08-25 03:31:11,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:11,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:31:11,676.676 INFO    ] No update needed
[2026-08-25 03:31:11,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 03:31:11,716.716 INFO    ] 200
[2026-08-25 03:31:11,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:11,764.764 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:31:11,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:31:11,820.820 INFO    ] No camera update needed
[2026-08-25 03:31:11,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:31:11,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:31:11,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:31:11,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:31:13,877.877 INFO    ] ================================================
[2026-08-25 03:31:13,892.892 INFO    ] Launching Daemon at Tue Aug 25 03:31:13 IST 2026
[2026-08-25 03:31:13,902.902 INFO    ] ================================================
[2026-08-25 03:31:14,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:31:14
[2026-08-25 03:31:15,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:31:15,358.358 INFO    ] Initializing speech engine...
[2026-08-25 03:31:15,366.366 INFO    ] 2026-08-25 03:31:15
[2026-08-25 03:31:15,627.627 INFO    ] 2026-08-25 03:31:15
[2026-08-25 03:31:15,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:31:15,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:31:15,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:31:16,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:31:16,094.094 INFO    ] time= 25/08/2026 03:31:16
[2026-08-25 03:31:16,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:31:16,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:31:16,309.309 INFO    ] No existing commands found in stream
[2026-08-25 03:31:21,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:31:21,339.339 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 03:31:23,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:31:23,472.472 INFO    ] Checking for system updates...
[2026-08-25 03:31:23,511.511 INFO    ] 200
[2026-08-25 03:31:23,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:23,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:31:23,574.574 INFO    ] No update needed
[2026-08-25 03:31:23,576.576 INFO    ] Checking for camera pi updates...
[2026-08-25 03:31:23,610.610 INFO    ] 200
[2026-08-25 03:31:23,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:23,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:31:23,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:31:23,711.711 INFO    ] No camera update needed
[2026-08-25 03:31:23,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:31:23,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:31:23,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:31:23,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:31:25,767.767 INFO    ] ================================================
[2026-08-25 03:31:25,782.782 INFO    ] Launching Daemon at Tue Aug 25 03:31:25 IST 2026
[2026-08-25 03:31:25,792.792 INFO    ] ================================================
[2026-08-25 03:31:26,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:31:26
[2026-08-25 03:31:26,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:31:27,250.250 INFO    ] Initializing speech engine...
[2026-08-25 03:31:27,276.276 INFO    ] 2026-08-25 03:31:27
[2026-08-25 03:31:27,552.552 INFO    ] 2026-08-25 03:31:27
[2026-08-25 03:31:27,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:31:27,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:31:27,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:31:27,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:31:27,932.932 INFO    ] time= 25/08/2026 03:31:27
[2026-08-25 03:31:27,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:31:27,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:31:28,061.061 INFO    ] No existing commands found in stream
[2026-08-25 03:31:33,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:31:33,076.076 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 03:31:33,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:31:34,002.002 INFO    ] Checking for system updates...
[2026-08-25 03:31:34,048.048 INFO    ] 200
[2026-08-25 03:31:34,050.050 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:34,053.053 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 03:31:34,056.056 INFO    ] Checking for camera pi updates...
[2026-08-25 03:31:34,100.100 INFO    ] 200
[2026-08-25 03:31:34,103.103 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:34,106.106 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 03:31:34,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:31:34,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:31:34,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:31:34,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:31:36,163.163 INFO    ] ================================================
[2026-08-25 03:31:36,181.181 INFO    ] Launching Daemon at Tue Aug 25 03:31:36 IST 2026
[2026-08-25 03:31:36,194.194 INFO    ] ================================================
[2026-08-25 03:31:36,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:31:36
[2026-08-25 03:31:37,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:31:37,850.850 INFO    ] Initializing speech engine...
[2026-08-25 03:31:37,862.862 INFO    ] 2026-08-25 03:31:37
[2026-08-25 03:31:38,154.154 INFO    ] 2026-08-25 03:31:38
[2026-08-25 03:31:38,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:31:38,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:31:38,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:31:38,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:31:38,689.689 INFO    ] time= 25/08/2026 03:31:38
[2026-08-25 03:31:38,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:31:38,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:31:38,841.841 INFO    ] No existing commands found in stream
[2026-08-25 03:31:43,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:31:43,869.869 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 03:31:45,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:31:45,411.411 INFO    ] Checking for system updates...
[2026-08-25 03:31:45,446.446 INFO    ] 200
[2026-08-25 03:31:45,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:45,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:31:45,503.503 INFO    ] No update needed
[2026-08-25 03:31:45,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 03:31:45,539.539 INFO    ] 200
[2026-08-25 03:31:45,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:45,581.581 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:31:45,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:31:45,633.633 INFO    ] No camera update needed
[2026-08-25 03:31:45,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:31:45,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:31:45,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:31:45,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:31:47,688.688 INFO    ] ================================================
[2026-08-25 03:31:47,703.703 INFO    ] Launching Daemon at Tue Aug 25 03:31:47 IST 2026
[2026-08-25 03:31:47,715.715 INFO    ] ================================================
[2026-08-25 03:31:48,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:31:48
[2026-08-25 03:31:49,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:31:49,344.344 INFO    ] Initializing speech engine...
[2026-08-25 03:31:49,353.353 INFO    ] 2026-08-25 03:31:49
[2026-08-25 03:31:49,599.599 INFO    ] 2026-08-25 03:31:49
[2026-08-25 03:31:49,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:31:50,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:31:50,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:31:50,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:31:50,193.193 INFO    ] time= 25/08/2026 03:31:50
[2026-08-25 03:31:50,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:31:50,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:31:50,326.326 INFO    ] No existing commands found in stream
[2026-08-25 03:31:55,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:31:55,348.348 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 03:31:59,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:31:59,144.144 INFO    ] Checking for system updates...
[2026-08-25 03:31:59,186.186 INFO    ] 200
[2026-08-25 03:31:59,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:59,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:31:59,250.250 INFO    ] No update needed
[2026-08-25 03:31:59,253.253 INFO    ] Checking for camera pi updates...
[2026-08-25 03:31:59,290.290 INFO    ] 200
[2026-08-25 03:31:59,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:31:59,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:31:59,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:31:59,483.483 INFO    ] No camera update needed
[2026-08-25 03:31:59,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:31:59,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:31:59,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:31:59,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:32:01,542.542 INFO    ] ================================================
[2026-08-25 03:32:01,565.565 INFO    ] Launching Daemon at Tue Aug 25 03:32:01 IST 2026
[2026-08-25 03:32:01,583.583 INFO    ] ================================================
[2026-08-25 03:32:02,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:32:02
[2026-08-25 03:32:02,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:32:03,177.177 INFO    ] Initializing speech engine...
[2026-08-25 03:32:03,186.186 INFO    ] 2026-08-25 03:32:03
[2026-08-25 03:32:03,478.478 INFO    ] 2026-08-25 03:32:03
[2026-08-25 03:32:03,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:32:03,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:32:03,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:32:03,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:32:03,870.870 INFO    ] time= 25/08/2026 03:32:03
[2026-08-25 03:32:03,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:32:03,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:32:03,977.977 INFO    ] No existing commands found in stream
[2026-08-25 03:32:08,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:32:08,993.993 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 03:32:10,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:32:10,293.293 INFO    ] Checking for system updates...
[2026-08-25 03:32:10,330.330 INFO    ] 200
[2026-08-25 03:32:10,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:10,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:32:10,400.400 INFO    ] No update needed
[2026-08-25 03:32:10,402.402 INFO    ] Checking for camera pi updates...
[2026-08-25 03:32:10,440.440 INFO    ] 200
[2026-08-25 03:32:10,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:10,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:32:10,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:32:10,550.550 INFO    ] No camera update needed
[2026-08-25 03:32:10,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:32:10,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:32:10,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:32:10,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:32:12,607.607 INFO    ] ================================================
[2026-08-25 03:32:12,623.623 INFO    ] Launching Daemon at Tue Aug 25 03:32:12 IST 2026
[2026-08-25 03:32:12,634.634 INFO    ] ================================================
[2026-08-25 03:32:13,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:32:13
[2026-08-25 03:32:13,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:32:14,040.040 INFO    ] Initializing speech engine...
[2026-08-25 03:32:14,049.049 INFO    ] 2026-08-25 03:32:14
[2026-08-25 03:32:14,342.342 INFO    ] 2026-08-25 03:32:14
[2026-08-25 03:32:14,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:32:14,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:32:14,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:32:14,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:32:14,715.715 INFO    ] time= 25/08/2026 03:32:14
[2026-08-25 03:32:14,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:32:14,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:32:14,846.846 INFO    ] No existing commands found in stream
[2026-08-25 03:32:19,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:32:19,879.879 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 03:32:22,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:32:22,177.177 INFO    ] Checking for system updates...
[2026-08-25 03:32:22,216.216 INFO    ] 200
[2026-08-25 03:32:22,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:22,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:32:22,273.273 INFO    ] No update needed
[2026-08-25 03:32:22,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 03:32:22,312.312 INFO    ] 200
[2026-08-25 03:32:22,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:22,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:32:22,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:32:22,417.417 INFO    ] No camera update needed
[2026-08-25 03:32:22,420.420 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:32:22,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:32:22,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:32:22,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:32:24,474.474 INFO    ] ================================================
[2026-08-25 03:32:24,490.490 INFO    ] Launching Daemon at Tue Aug 25 03:32:24 IST 2026
[2026-08-25 03:32:24,502.502 INFO    ] ================================================
[2026-08-25 03:32:25,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:32:25
[2026-08-25 03:32:25,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:32:25,954.954 INFO    ] Initializing speech engine...
[2026-08-25 03:32:25,964.964 INFO    ] 2026-08-25 03:32:25
[2026-08-25 03:32:26,225.225 INFO    ] 2026-08-25 03:32:26
[2026-08-25 03:32:26,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:32:26,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:32:26,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:32:26,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:32:26,694.694 INFO    ] time= 25/08/2026 03:32:26
[2026-08-25 03:32:26,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:32:26,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:32:26,923.923 INFO    ] No existing commands found in stream
[2026-08-25 03:32:31,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:32:31,946.946 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 03:32:33,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:32:33,499.499 INFO    ] Checking for system updates...
[2026-08-25 03:32:33,535.535 INFO    ] 200
[2026-08-25 03:32:33,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:33,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:32:33,593.593 INFO    ] No update needed
[2026-08-25 03:32:33,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 03:32:33,630.630 INFO    ] 200
[2026-08-25 03:32:33,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:33,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:32:33,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:32:33,739.739 INFO    ] No camera update needed
[2026-08-25 03:32:33,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:32:33,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:32:33,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:32:33,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:32:35,798.798 INFO    ] ================================================
[2026-08-25 03:32:35,814.814 INFO    ] Launching Daemon at Tue Aug 25 03:32:35 IST 2026
[2026-08-25 03:32:35,825.825 INFO    ] ================================================
[2026-08-25 03:32:36,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:32:36
[2026-08-25 03:32:37,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:32:37,478.478 INFO    ] Initializing speech engine...
[2026-08-25 03:32:37,489.489 INFO    ] 2026-08-25 03:32:37
[2026-08-25 03:32:37,805.805 INFO    ] 2026-08-25 03:32:37
[2026-08-25 03:32:37,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:32:38,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:32:38,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:32:38,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:32:38,308.308 INFO    ] time= 25/08/2026 03:32:38
[2026-08-25 03:32:38,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:32:38,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:32:38,463.463 INFO    ] No existing commands found in stream
[2026-08-25 03:32:43,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:32:43,487.487 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 03:32:48,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:32:48,215.215 INFO    ] Checking for system updates...
[2026-08-25 03:32:48,252.252 INFO    ] 200
[2026-08-25 03:32:48,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:48,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:32:48,320.320 INFO    ] No update needed
[2026-08-25 03:32:48,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 03:32:48,358.358 INFO    ] 200
[2026-08-25 03:32:48,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:32:48,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:32:48,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:32:48,462.462 INFO    ] No camera update needed
[2026-08-25 03:32:48,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:32:48,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:32:48,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:32:48,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:32:50,523.523 INFO    ] ================================================
[2026-08-25 03:32:50,539.539 INFO    ] Launching Daemon at Tue Aug 25 03:32:50 IST 2026
[2026-08-25 03:32:50,552.552 INFO    ] ================================================
[2026-08-25 03:32:51,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:32:51
[2026-08-25 03:32:51,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:32:52,007.007 INFO    ] Initializing speech engine...
[2026-08-25 03:32:52,016.016 INFO    ] 2026-08-25 03:32:52
[2026-08-25 03:32:52,268.268 INFO    ] 2026-08-25 03:32:52
[2026-08-25 03:32:52,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:32:52,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:32:52,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:32:52,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:32:52,665.665 INFO    ] time= 25/08/2026 03:32:52
[2026-08-25 03:32:52,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:32:52,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:32:52,848.848 INFO    ] No existing commands found in stream
[2026-08-25 03:32:57,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:32:57,862.862 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 03:33:01,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:33:01,023.023 INFO    ] Checking for system updates...
[2026-08-25 03:33:01,070.070 INFO    ] 200
[2026-08-25 03:33:01,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:01,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:33:01,173.173 INFO    ] No update needed
[2026-08-25 03:33:01,177.177 INFO    ] Checking for camera pi updates...
[2026-08-25 03:33:01,247.247 INFO    ] 200
[2026-08-25 03:33:01,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:01,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:33:01,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:33:01,403.403 INFO    ] No camera update needed
[2026-08-25 03:33:01,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:33:01,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:33:01,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:33:01,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:33:03,469.469 INFO    ] ================================================
[2026-08-25 03:33:03,485.485 INFO    ] Launching Daemon at Tue Aug 25 03:33:03 IST 2026
[2026-08-25 03:33:03,496.496 INFO    ] ================================================
[2026-08-25 03:33:04,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:33:04
[2026-08-25 03:33:04,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:33:04,969.969 INFO    ] Initializing speech engine...
[2026-08-25 03:33:04,981.981 INFO    ] 2026-08-25 03:33:04
[2026-08-25 03:33:05,231.231 INFO    ] 2026-08-25 03:33:05
[2026-08-25 03:33:05,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:33:05,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:33:05,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:33:05,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:33:05,606.606 INFO    ] time= 25/08/2026 03:33:05
[2026-08-25 03:33:05,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:33:05,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:33:05,792.792 INFO    ] No existing commands found in stream
[2026-08-25 03:33:10,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:33:10,819.819 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 03:33:13,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:33:13,642.642 INFO    ] Checking for system updates...
[2026-08-25 03:33:13,677.677 INFO    ] 200
[2026-08-25 03:33:13,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:13,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:33:13,734.734 INFO    ] No update needed
[2026-08-25 03:33:13,737.737 INFO    ] Checking for camera pi updates...
[2026-08-25 03:33:13,772.772 INFO    ] 200
[2026-08-25 03:33:13,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:13,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:33:13,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:33:13,887.887 INFO    ] No camera update needed
[2026-08-25 03:33:13,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:33:13,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:33:13,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:33:13,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:33:15,941.941 INFO    ] ================================================
[2026-08-25 03:33:15,957.957 INFO    ] Launching Daemon at Tue Aug 25 03:33:15 IST 2026
[2026-08-25 03:33:15,968.968 INFO    ] ================================================
[2026-08-25 03:33:16,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:33:16
[2026-08-25 03:33:17,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:33:17,400.400 INFO    ] Initializing speech engine...
[2026-08-25 03:33:17,407.407 INFO    ] 2026-08-25 03:33:17
[2026-08-25 03:33:17,709.709 INFO    ] 2026-08-25 03:33:17
[2026-08-25 03:33:17,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:33:17,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:33:17,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:33:18,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:33:18,110.110 INFO    ] time= 25/08/2026 03:33:18
[2026-08-25 03:33:18,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:33:18,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:33:18,221.221 INFO    ] No existing commands found in stream
[2026-08-25 03:33:23,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:33:23,239.239 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 03:33:27,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:33:27,210.210 INFO    ] Checking for system updates...
[2026-08-25 03:33:27,246.246 INFO    ] 200
[2026-08-25 03:33:27,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:27,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:33:27,304.304 INFO    ] No update needed
[2026-08-25 03:33:27,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 03:33:27,340.340 INFO    ] 200
[2026-08-25 03:33:27,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:27,382.382 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:33:27,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:33:27,435.435 INFO    ] No camera update needed
[2026-08-25 03:33:27,437.437 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:33:27,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:33:27,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:33:27,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:33:29,490.490 INFO    ] ================================================
[2026-08-25 03:33:29,505.505 INFO    ] Launching Daemon at Tue Aug 25 03:33:29 IST 2026
[2026-08-25 03:33:29,516.516 INFO    ] ================================================
[2026-08-25 03:33:30,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:33:30
[2026-08-25 03:33:30,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:33:31,116.116 INFO    ] Initializing speech engine...
[2026-08-25 03:33:31,123.123 INFO    ] 2026-08-25 03:33:31
[2026-08-25 03:33:31,418.418 INFO    ] 2026-08-25 03:33:31
[2026-08-25 03:33:31,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:33:31,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:33:31,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:33:31,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:33:31,996.996 INFO    ] time= 25/08/2026 03:33:31
[2026-08-25 03:33:32,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:33:32,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:33:32,174.174 INFO    ] No existing commands found in stream
[2026-08-25 03:33:37,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:33:37,220.220 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 03:33:39,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:33:39,538.538 INFO    ] Checking for system updates...
[2026-08-25 03:33:39,574.574 INFO    ] 200
[2026-08-25 03:33:39,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:39,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:33:39,633.633 INFO    ] No update needed
[2026-08-25 03:33:39,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 03:33:39,671.671 INFO    ] 200
[2026-08-25 03:33:39,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:39,715.715 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:33:39,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:33:39,765.765 INFO    ] No camera update needed
[2026-08-25 03:33:39,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:33:39,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:33:39,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:33:39,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:33:41,822.822 INFO    ] ================================================
[2026-08-25 03:33:41,837.837 INFO    ] Launching Daemon at Tue Aug 25 03:33:41 IST 2026
[2026-08-25 03:33:41,848.848 INFO    ] ================================================
[2026-08-25 03:33:42,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:33:42
[2026-08-25 03:33:42,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:33:43,247.247 INFO    ] Initializing speech engine...
[2026-08-25 03:33:43,270.270 INFO    ] 2026-08-25 03:33:43
[2026-08-25 03:33:43,523.523 INFO    ] 2026-08-25 03:33:43
[2026-08-25 03:33:43,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:33:43,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:33:43,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:33:43,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:33:43,992.992 INFO    ] time= 25/08/2026 03:33:43
[2026-08-25 03:33:44,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:33:44,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:33:44,207.207 INFO    ] No existing commands found in stream
[2026-08-25 03:33:49,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:33:49,240.240 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 03:33:50,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:33:50,351.351 INFO    ] Checking for system updates...
[2026-08-25 03:33:50,386.386 INFO    ] 200
[2026-08-25 03:33:50,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:50,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:33:50,443.443 INFO    ] No update needed
[2026-08-25 03:33:50,446.446 INFO    ] Checking for camera pi updates...
[2026-08-25 03:33:50,479.479 INFO    ] 200
[2026-08-25 03:33:50,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:33:50,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:33:50,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:33:50,578.578 INFO    ] No camera update needed
[2026-08-25 03:33:50,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:33:50,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:33:50,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:33:50,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:33:52,633.633 INFO    ] ================================================
[2026-08-25 03:33:52,649.649 INFO    ] Launching Daemon at Tue Aug 25 03:33:52 IST 2026
[2026-08-25 03:33:52,661.661 INFO    ] ================================================
[2026-08-25 03:33:53,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:33:53
[2026-08-25 03:33:53,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:33:54,075.075 INFO    ] Initializing speech engine...
[2026-08-25 03:33:54,082.082 INFO    ] 2026-08-25 03:33:54
[2026-08-25 03:33:54,350.350 INFO    ] 2026-08-25 03:33:54
[2026-08-25 03:33:54,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:33:54,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:33:54,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:33:54,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:33:54,819.819 INFO    ] time= 25/08/2026 03:33:54
[2026-08-25 03:33:54,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:33:54,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:33:55,037.037 INFO    ] No existing commands found in stream
[2026-08-25 03:34:00,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:34:00,066.066 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 03:34:02,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:34:02,048.048 INFO    ] Checking for system updates...
[2026-08-25 03:34:02,092.092 INFO    ] 200
[2026-08-25 03:34:02,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:02,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:34:02,159.159 INFO    ] No update needed
[2026-08-25 03:34:02,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 03:34:02,201.201 INFO    ] 200
[2026-08-25 03:34:02,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:02,253.253 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:34:02,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:34:02,429.429 INFO    ] No camera update needed
[2026-08-25 03:34:02,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:34:02,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:34:02,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:34:02,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:34:04,495.495 INFO    ] ================================================
[2026-08-25 03:34:04,510.510 INFO    ] Launching Daemon at Tue Aug 25 03:34:04 IST 2026
[2026-08-25 03:34:04,522.522 INFO    ] ================================================
[2026-08-25 03:34:05,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:34:05
[2026-08-25 03:34:05,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:34:06,096.096 INFO    ] Initializing speech engine...
[2026-08-25 03:34:06,106.106 INFO    ] 2026-08-25 03:34:06
[2026-08-25 03:34:06,361.361 INFO    ] 2026-08-25 03:34:06
[2026-08-25 03:34:06,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:34:06,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:34:06,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:34:06,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:34:06,841.841 INFO    ] time= 25/08/2026 03:34:06
[2026-08-25 03:34:06,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:34:06,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:34:07,081.081 INFO    ] No existing commands found in stream
[2026-08-25 03:34:12,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:34:12,099.099 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 03:34:15,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:34:15,738.738 INFO    ] Checking for system updates...
[2026-08-25 03:34:15,780.780 INFO    ] 200
[2026-08-25 03:34:15,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:15,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:34:15,848.848 INFO    ] No update needed
[2026-08-25 03:34:15,851.851 INFO    ] Checking for camera pi updates...
[2026-08-25 03:34:15,889.889 INFO    ] 200
[2026-08-25 03:34:15,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:15,935.935 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:34:15,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:34:15,987.987 INFO    ] No camera update needed
[2026-08-25 03:34:15,989.989 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:34:15,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:34:15,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:34:16,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:34:18,046.046 INFO    ] ================================================
[2026-08-25 03:34:18,064.064 INFO    ] Launching Daemon at Tue Aug 25 03:34:18 IST 2026
[2026-08-25 03:34:18,075.075 INFO    ] ================================================
[2026-08-25 03:34:18,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:34:18
[2026-08-25 03:34:19,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:34:19,487.487 INFO    ] Initializing speech engine...
[2026-08-25 03:34:19,498.498 INFO    ] 2026-08-25 03:34:19
[2026-08-25 03:34:19,748.748 INFO    ] 2026-08-25 03:34:19
[2026-08-25 03:34:19,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:34:20,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:34:20,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:34:20,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:34:20,247.247 INFO    ] time= 25/08/2026 03:34:20
[2026-08-25 03:34:20,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:34:20,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:34:20,452.452 INFO    ] No existing commands found in stream
[2026-08-25 03:34:25,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:34:25,484.484 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 03:34:29,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:34:29,168.168 INFO    ] Checking for system updates...
[2026-08-25 03:34:29,207.207 INFO    ] 200
[2026-08-25 03:34:29,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:29,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:34:29,264.264 INFO    ] No update needed
[2026-08-25 03:34:29,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 03:34:29,304.304 INFO    ] 200
[2026-08-25 03:34:29,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:29,346.346 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:34:29,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:34:29,407.407 INFO    ] No camera update needed
[2026-08-25 03:34:29,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:34:29,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:34:29,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:34:29,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:34:31,462.462 INFO    ] ================================================
[2026-08-25 03:34:31,480.480 INFO    ] Launching Daemon at Tue Aug 25 03:34:31 IST 2026
[2026-08-25 03:34:31,491.491 INFO    ] ================================================
[2026-08-25 03:34:32,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:34:32
[2026-08-25 03:34:32,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:34:33,013.013 INFO    ] Initializing speech engine...
[2026-08-25 03:34:33,019.019 INFO    ] 2026-08-25 03:34:33
[2026-08-25 03:34:33,286.286 INFO    ] 2026-08-25 03:34:33
[2026-08-25 03:34:33,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:34:33,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:34:33,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:34:33,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:34:33,815.815 INFO    ] time= 25/08/2026 03:34:33
[2026-08-25 03:34:33,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:34:33,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:34:34,033.033 INFO    ] No existing commands found in stream
[2026-08-25 03:34:39,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:34:39,059.059 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 03:34:42,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:34:42,119.119 INFO    ] Checking for system updates...
[2026-08-25 03:34:42,155.155 INFO    ] 200
[2026-08-25 03:34:42,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:42,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:34:42,212.212 INFO    ] No update needed
[2026-08-25 03:34:42,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 03:34:42,248.248 INFO    ] 200
[2026-08-25 03:34:42,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:42,296.296 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:34:42,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:34:42,355.355 INFO    ] No camera update needed
[2026-08-25 03:34:42,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:34:42,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:34:42,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:34:42,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:34:44,410.410 INFO    ] ================================================
[2026-08-25 03:34:44,426.426 INFO    ] Launching Daemon at Tue Aug 25 03:34:44 IST 2026
[2026-08-25 03:34:44,437.437 INFO    ] ================================================
[2026-08-25 03:34:45,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:34:45
[2026-08-25 03:34:45,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:34:45,874.874 INFO    ] Initializing speech engine...
[2026-08-25 03:34:45,885.885 INFO    ] 2026-08-25 03:34:45
[2026-08-25 03:34:46,135.135 INFO    ] 2026-08-25 03:34:46
[2026-08-25 03:34:46,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:34:46,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:34:46,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:34:46,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:34:46,641.641 INFO    ] time= 25/08/2026 03:34:46
[2026-08-25 03:34:46,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:34:46,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:34:46,875.875 INFO    ] No existing commands found in stream
[2026-08-25 03:34:51,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:34:51,893.893 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 03:34:56,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:34:56,273.273 INFO    ] Checking for system updates...
[2026-08-25 03:34:56,309.309 INFO    ] 200
[2026-08-25 03:34:56,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:56,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:34:56,373.373 INFO    ] No update needed
[2026-08-25 03:34:56,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 03:34:56,412.412 INFO    ] 200
[2026-08-25 03:34:56,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:34:56,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:34:56,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:34:56,514.514 INFO    ] No camera update needed
[2026-08-25 03:34:56,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:34:56,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:34:56,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:34:56,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:34:58,570.570 INFO    ] ================================================
[2026-08-25 03:34:58,585.585 INFO    ] Launching Daemon at Tue Aug 25 03:34:58 IST 2026
[2026-08-25 03:34:58,596.596 INFO    ] ================================================
[2026-08-25 03:34:59,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:34:59
[2026-08-25 03:34:59,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:35:00,183.183 INFO    ] Initializing speech engine...
[2026-08-25 03:35:00,193.193 INFO    ] 2026-08-25 03:35:00
[2026-08-25 03:35:00,462.462 INFO    ] 2026-08-25 03:35:00
[2026-08-25 03:35:00,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:35:00,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:35:00,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:35:00,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:35:00,944.944 INFO    ] time= 25/08/2026 03:35:00
[2026-08-25 03:35:01,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:35:01,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:35:01,163.163 INFO    ] No existing commands found in stream
[2026-08-25 03:35:06,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:35:06,180.180 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 03:35:08,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:35:08,153.153 INFO    ] Checking for system updates...
[2026-08-25 03:35:08,190.190 INFO    ] 200
[2026-08-25 03:35:08,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:08,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:35:08,248.248 INFO    ] No update needed
[2026-08-25 03:35:08,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 03:35:08,284.284 INFO    ] 200
[2026-08-25 03:35:08,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:08,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:35:08,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:35:08,409.409 INFO    ] No camera update needed
[2026-08-25 03:35:08,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:35:08,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:35:08,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:35:08,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:35:10,468.468 INFO    ] ================================================
[2026-08-25 03:35:10,484.484 INFO    ] Launching Daemon at Tue Aug 25 03:35:10 IST 2026
[2026-08-25 03:35:10,496.496 INFO    ] ================================================
[2026-08-25 03:35:11,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:35:11
[2026-08-25 03:35:11,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:35:12,018.018 INFO    ] Initializing speech engine...
[2026-08-25 03:35:12,029.029 INFO    ] 2026-08-25 03:35:12
[2026-08-25 03:35:12,301.301 INFO    ] 2026-08-25 03:35:12
[2026-08-25 03:35:12,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:35:12,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:35:12,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:35:12,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:35:12,789.789 INFO    ] time= 25/08/2026 03:35:12
[2026-08-25 03:35:12,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:35:12,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:35:13,015.015 INFO    ] No existing commands found in stream
[2026-08-25 03:35:18,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:35:18,041.041 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 03:35:21,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:35:21,191.191 INFO    ] Checking for system updates...
[2026-08-25 03:35:21,227.227 INFO    ] 200
[2026-08-25 03:35:21,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:21,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:35:21,300.300 INFO    ] No update needed
[2026-08-25 03:35:21,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 03:35:21,338.338 INFO    ] 200
[2026-08-25 03:35:21,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:21,385.385 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:35:21,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:35:21,431.431 INFO    ] No camera update needed
[2026-08-25 03:35:21,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:35:21,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:35:21,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:35:21,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:35:23,486.486 INFO    ] ================================================
[2026-08-25 03:35:23,501.501 INFO    ] Launching Daemon at Tue Aug 25 03:35:23 IST 2026
[2026-08-25 03:35:23,512.512 INFO    ] ================================================
[2026-08-25 03:35:24,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:35:24
[2026-08-25 03:35:24,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:35:24,958.958 INFO    ] Initializing speech engine...
[2026-08-25 03:35:24,969.969 INFO    ] 2026-08-25 03:35:24
[2026-08-25 03:35:25,231.231 INFO    ] 2026-08-25 03:35:25
[2026-08-25 03:35:25,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:35:25,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:35:25,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:35:25,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:35:25,691.691 INFO    ] time= 25/08/2026 03:35:25
[2026-08-25 03:35:25,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:35:25,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:35:25,892.892 INFO    ] No existing commands found in stream
[2026-08-25 03:35:30,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:35:30,917.917 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 03:35:33,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:35:33,919.919 INFO    ] Checking for system updates...
[2026-08-25 03:35:33,959.959 INFO    ] 200
[2026-08-25 03:35:33,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:34,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:35:34,022.022 INFO    ] No update needed
[2026-08-25 03:35:34,024.024 INFO    ] Checking for camera pi updates...
[2026-08-25 03:35:34,062.062 INFO    ] 200
[2026-08-25 03:35:34,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:34,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:35:34,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:35:34,158.158 INFO    ] No camera update needed
[2026-08-25 03:35:34,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:35:34,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:35:34,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:35:34,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:35:36,214.214 INFO    ] ================================================
[2026-08-25 03:35:36,230.230 INFO    ] Launching Daemon at Tue Aug 25 03:35:36 IST 2026
[2026-08-25 03:35:36,241.241 INFO    ] ================================================
[2026-08-25 03:35:36,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:35:36
[2026-08-25 03:35:37,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:35:37,709.709 INFO    ] Initializing speech engine...
[2026-08-25 03:35:37,716.716 INFO    ] 2026-08-25 03:35:37
[2026-08-25 03:35:37,977.977 INFO    ] 2026-08-25 03:35:37
[2026-08-25 03:35:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:35:38,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:35:38,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:35:38,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:35:38,456.456 INFO    ] time= 25/08/2026 03:35:38
[2026-08-25 03:35:38,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:35:38,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:35:38,680.680 INFO    ] No existing commands found in stream
[2026-08-25 03:35:43,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:35:43,698.698 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 03:35:45,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:35:45,420.420 INFO    ] Checking for system updates...
[2026-08-25 03:35:45,455.455 INFO    ] 200
[2026-08-25 03:35:45,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:45,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:35:45,512.512 INFO    ] No update needed
[2026-08-25 03:35:45,514.514 INFO    ] Checking for camera pi updates...
[2026-08-25 03:35:45,548.548 INFO    ] 200
[2026-08-25 03:35:45,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:45,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:35:45,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:35:45,648.648 INFO    ] No camera update needed
[2026-08-25 03:35:45,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:35:45,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:35:45,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:35:45,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:35:47,704.704 INFO    ] ================================================
[2026-08-25 03:35:47,721.721 INFO    ] Launching Daemon at Tue Aug 25 03:35:47 IST 2026
[2026-08-25 03:35:47,732.732 INFO    ] ================================================
[2026-08-25 03:35:48,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:35:48
[2026-08-25 03:35:48,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:35:49,190.190 INFO    ] Initializing speech engine...
[2026-08-25 03:35:49,211.211 INFO    ] 2026-08-25 03:35:49
[2026-08-25 03:35:49,481.481 INFO    ] 2026-08-25 03:35:49
[2026-08-25 03:35:49,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:35:49,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:35:49,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:35:49,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:35:49,866.866 INFO    ] time= 25/08/2026 03:35:49
[2026-08-25 03:35:49,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:35:49,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:35:49,991.991 INFO    ] No existing commands found in stream
[2026-08-25 03:35:55,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:35:55,007.007 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 03:35:57,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:35:57,917.917 INFO    ] Checking for system updates...
[2026-08-25 03:35:57,954.954 INFO    ] 200
[2026-08-25 03:35:57,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:58,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:35:58,013.013 INFO    ] No update needed
[2026-08-25 03:35:58,016.016 INFO    ] Checking for camera pi updates...
[2026-08-25 03:35:58,051.051 INFO    ] 200
[2026-08-25 03:35:58,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:35:58,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:35:58,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:35:58,162.162 INFO    ] No camera update needed
[2026-08-25 03:35:58,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:35:58,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:35:58,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:35:58,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:36:00,220.220 INFO    ] ================================================
[2026-08-25 03:36:00,236.236 INFO    ] Launching Daemon at Tue Aug 25 03:36:00 IST 2026
[2026-08-25 03:36:00,247.247 INFO    ] ================================================
[2026-08-25 03:36:00,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:36:00
[2026-08-25 03:36:01,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:36:01,901.901 INFO    ] Initializing speech engine...
[2026-08-25 03:36:01,911.911 INFO    ] 2026-08-25 03:36:01
[2026-08-25 03:36:02,248.248 INFO    ] 2026-08-25 03:36:02
[2026-08-25 03:36:02,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:36:02,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:36:02,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:36:02,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:36:02,785.785 INFO    ] time= 25/08/2026 03:36:02
[2026-08-25 03:36:02,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:36:02,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:36:02,923.923 INFO    ] No existing commands found in stream
[2026-08-25 03:36:07,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:36:07,941.941 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 03:36:10,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:36:10,202.202 INFO    ] Checking for system updates...
[2026-08-25 03:36:10,237.237 INFO    ] 200
[2026-08-25 03:36:10,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:10,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:36:10,295.295 INFO    ] No update needed
[2026-08-25 03:36:10,297.297 INFO    ] Checking for camera pi updates...
[2026-08-25 03:36:10,330.330 INFO    ] 200
[2026-08-25 03:36:10,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:10,372.372 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:36:10,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:36:10,519.519 INFO    ] No camera update needed
[2026-08-25 03:36:10,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:36:10,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:36:10,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:36:10,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:36:12,574.574 INFO    ] ================================================
[2026-08-25 03:36:12,590.590 INFO    ] Launching Daemon at Tue Aug 25 03:36:12 IST 2026
[2026-08-25 03:36:12,600.600 INFO    ] ================================================
[2026-08-25 03:36:13,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:36:13
[2026-08-25 03:36:13,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:36:13,992.992 INFO    ] Initializing speech engine...
[2026-08-25 03:36:14,001.001 INFO    ] 2026-08-25 03:36:13
[2026-08-25 03:36:14,290.290 INFO    ] 2026-08-25 03:36:14
[2026-08-25 03:36:14,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:36:14,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:36:14,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:36:14,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:36:14,647.647 INFO    ] time= 25/08/2026 03:36:14
[2026-08-25 03:36:14,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:36:14,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:36:14,727.727 INFO    ] No existing commands found in stream
[2026-08-25 03:36:19,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:36:19,741.741 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 03:36:21,509.509 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:36:21,512.512 INFO    ] Checking for system updates...
[2026-08-25 03:36:21,547.547 INFO    ] 200
[2026-08-25 03:36:21,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:21,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:36:21,605.605 INFO    ] No update needed
[2026-08-25 03:36:21,607.607 INFO    ] Checking for camera pi updates...
[2026-08-25 03:36:21,641.641 INFO    ] 200
[2026-08-25 03:36:21,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:21,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:36:21,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:36:21,731.731 INFO    ] No camera update needed
[2026-08-25 03:36:21,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:36:21,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:36:21,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:36:21,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:36:23,785.785 INFO    ] ================================================
[2026-08-25 03:36:23,800.800 INFO    ] Launching Daemon at Tue Aug 25 03:36:23 IST 2026
[2026-08-25 03:36:23,810.810 INFO    ] ================================================
[2026-08-25 03:36:24,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:36:24
[2026-08-25 03:36:24,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:36:25,228.228 INFO    ] Initializing speech engine...
[2026-08-25 03:36:25,237.237 INFO    ] 2026-08-25 03:36:25
[2026-08-25 03:36:25,484.484 INFO    ] 2026-08-25 03:36:25
[2026-08-25 03:36:25,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:36:25,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:36:25,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:36:25,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:36:25,855.855 INFO    ] time= 25/08/2026 03:36:25
[2026-08-25 03:36:25,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:36:25,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:36:26,041.041 INFO    ] No existing commands found in stream
[2026-08-25 03:36:31,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:36:31,068.068 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 03:36:34,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:36:34,381.381 INFO    ] Checking for system updates...
[2026-08-25 03:36:34,421.421 INFO    ] 200
[2026-08-25 03:36:34,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:34,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:36:34,478.478 INFO    ] No update needed
[2026-08-25 03:36:34,480.480 INFO    ] Checking for camera pi updates...
[2026-08-25 03:36:34,517.517 INFO    ] 200
[2026-08-25 03:36:34,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:34,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:36:34,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:36:34,616.616 INFO    ] No camera update needed
[2026-08-25 03:36:34,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:36:34,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:36:34,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:36:34,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:36:36,672.672 INFO    ] ================================================
[2026-08-25 03:36:36,687.687 INFO    ] Launching Daemon at Tue Aug 25 03:36:36 IST 2026
[2026-08-25 03:36:36,698.698 INFO    ] ================================================
[2026-08-25 03:36:37,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:36:37
[2026-08-25 03:36:37,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:36:38,112.112 INFO    ] Initializing speech engine...
[2026-08-25 03:36:38,121.121 INFO    ] 2026-08-25 03:36:38
[2026-08-25 03:36:38,370.370 INFO    ] 2026-08-25 03:36:38
[2026-08-25 03:36:38,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:36:38,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:36:38,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:36:38,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:36:38,745.745 INFO    ] time= 25/08/2026 03:36:38
[2026-08-25 03:36:38,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:36:38,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:36:38,911.911 INFO    ] No existing commands found in stream
[2026-08-25 03:36:43,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:36:43,944.944 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 03:36:46,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:36:46,240.240 INFO    ] Checking for system updates...
[2026-08-25 03:36:46,276.276 INFO    ] 200
[2026-08-25 03:36:46,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:46,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:36:46,333.333 INFO    ] No update needed
[2026-08-25 03:36:46,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 03:36:46,368.368 INFO    ] 200
[2026-08-25 03:36:46,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:46,410.410 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:36:46,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:36:46,457.457 INFO    ] No camera update needed
[2026-08-25 03:36:46,459.459 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:36:46,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:36:46,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:36:46,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:36:48,510.510 INFO    ] ================================================
[2026-08-25 03:36:48,526.526 INFO    ] Launching Daemon at Tue Aug 25 03:36:48 IST 2026
[2026-08-25 03:36:48,537.537 INFO    ] ================================================
[2026-08-25 03:36:49,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:36:49
[2026-08-25 03:36:49,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:36:49,996.996 INFO    ] Initializing speech engine...
[2026-08-25 03:36:50,015.015 INFO    ] 2026-08-25 03:36:50
[2026-08-25 03:36:50,261.261 INFO    ] 2026-08-25 03:36:50
[2026-08-25 03:36:50,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:36:50,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:36:50,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:36:50,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:36:50,703.703 INFO    ] time= 25/08/2026 03:36:50
[2026-08-25 03:36:50,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:36:50,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:36:50,898.898 INFO    ] No existing commands found in stream
[2026-08-25 03:36:55,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:36:55,920.920 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 03:36:59,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:36:59,617.617 INFO    ] Checking for system updates...
[2026-08-25 03:36:59,653.653 INFO    ] 200
[2026-08-25 03:36:59,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:59,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:36:59,710.710 INFO    ] No update needed
[2026-08-25 03:36:59,713.713 INFO    ] Checking for camera pi updates...
[2026-08-25 03:36:59,746.746 INFO    ] 200
[2026-08-25 03:36:59,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:36:59,788.788 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:36:59,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:36:59,837.837 INFO    ] No camera update needed
[2026-08-25 03:36:59,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:36:59,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:36:59,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:36:59,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:37:01,897.897 INFO    ] ================================================
[2026-08-25 03:37:01,917.917 INFO    ] Launching Daemon at Tue Aug 25 03:37:01 IST 2026
[2026-08-25 03:37:01,935.935 INFO    ] ================================================
[2026-08-25 03:37:02,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:37:02
[2026-08-25 03:37:03,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:37:03,613.613 INFO    ] Initializing speech engine...
[2026-08-25 03:37:03,619.619 INFO    ] 2026-08-25 03:37:03
[2026-08-25 03:37:03,926.926 INFO    ] 2026-08-25 03:37:03
[2026-08-25 03:37:03,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:37:04,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:37:04,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:37:04,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:37:04,302.302 INFO    ] time= 25/08/2026 03:37:04
[2026-08-25 03:37:04,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:37:04,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:37:04,497.497 INFO    ] No existing commands found in stream
[2026-08-25 03:37:09,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:37:09,515.515 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 03:37:11,822.822 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:37:11,824.824 INFO    ] Checking for system updates...
[2026-08-25 03:37:11,860.860 INFO    ] 200
[2026-08-25 03:37:11,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:11,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:37:11,925.925 INFO    ] No update needed
[2026-08-25 03:37:11,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 03:37:11,965.965 INFO    ] 200
[2026-08-25 03:37:11,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:12,007.007 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:37:12,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:37:12,062.062 INFO    ] No camera update needed
[2026-08-25 03:37:12,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:37:12,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:37:12,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:37:12,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:37:14,116.116 INFO    ] ================================================
[2026-08-25 03:37:14,132.132 INFO    ] Launching Daemon at Tue Aug 25 03:37:14 IST 2026
[2026-08-25 03:37:14,143.143 INFO    ] ================================================
[2026-08-25 03:37:14,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:37:14
[2026-08-25 03:37:15,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:37:15,628.628 INFO    ] Initializing speech engine...
[2026-08-25 03:37:15,640.640 INFO    ] 2026-08-25 03:37:15
[2026-08-25 03:37:15,906.906 INFO    ] 2026-08-25 03:37:15
[2026-08-25 03:37:15,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:37:16,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:37:16,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:37:16,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:37:16,284.284 INFO    ] time= 25/08/2026 03:37:16
[2026-08-25 03:37:16,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:37:16,341.341 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:37:16,444.444 INFO    ] No existing commands found in stream
[2026-08-25 03:37:21,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:37:21,477.477 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 03:37:22,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:37:22,639.639 INFO    ] Checking for system updates...
[2026-08-25 03:37:22,675.675 INFO    ] 200
[2026-08-25 03:37:22,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:22,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:37:22,739.739 INFO    ] No update needed
[2026-08-25 03:37:22,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 03:37:22,782.782 INFO    ] 200
[2026-08-25 03:37:22,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:22,825.825 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:37:22,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:37:22,881.881 INFO    ] No camera update needed
[2026-08-25 03:37:22,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:37:22,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:37:22,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:37:22,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:37:24,938.938 INFO    ] ================================================
[2026-08-25 03:37:24,954.954 INFO    ] Launching Daemon at Tue Aug 25 03:37:24 IST 2026
[2026-08-25 03:37:24,964.964 INFO    ] ================================================
[2026-08-25 03:37:25,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:37:25
[2026-08-25 03:37:26,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:37:26,454.454 INFO    ] Initializing speech engine...
[2026-08-25 03:37:26,463.463 INFO    ] 2026-08-25 03:37:26
[2026-08-25 03:37:26,770.770 INFO    ] 2026-08-25 03:37:26
[2026-08-25 03:37:26,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:37:26,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:37:26,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:37:27,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:37:27,164.164 INFO    ] time= 25/08/2026 03:37:27
[2026-08-25 03:37:27,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:37:27,214.214 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:37:27,339.339 INFO    ] No existing commands found in stream
[2026-08-25 03:37:32,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:37:32,377.377 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 03:37:35,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:37:35,370.370 INFO    ] Checking for system updates...
[2026-08-25 03:37:35,406.406 INFO    ] 200
[2026-08-25 03:37:35,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:35,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:37:35,463.463 INFO    ] No update needed
[2026-08-25 03:37:35,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 03:37:35,499.499 INFO    ] 200
[2026-08-25 03:37:35,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:35,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:37:35,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:37:35,590.590 INFO    ] No camera update needed
[2026-08-25 03:37:35,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:37:35,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:37:35,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:37:35,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:37:37,645.645 INFO    ] ================================================
[2026-08-25 03:37:37,661.661 INFO    ] Launching Daemon at Tue Aug 25 03:37:37 IST 2026
[2026-08-25 03:37:37,672.672 INFO    ] ================================================
[2026-08-25 03:37:38,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:37:38
[2026-08-25 03:37:39,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:37:39,341.341 INFO    ] Initializing speech engine...
[2026-08-25 03:37:39,350.350 INFO    ] 2026-08-25 03:37:39
[2026-08-25 03:37:39,635.635 INFO    ] 2026-08-25 03:37:39
[2026-08-25 03:37:39,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:37:39,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:37:39,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:37:40,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:37:40,102.102 INFO    ] time= 25/08/2026 03:37:40
[2026-08-25 03:37:40,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:37:40,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:37:40,325.325 INFO    ] No existing commands found in stream
[2026-08-25 03:37:45,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:37:45,352.352 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 03:37:49,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:37:49,443.443 INFO    ] Checking for system updates...
[2026-08-25 03:37:49,480.480 INFO    ] 200
[2026-08-25 03:37:49,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:49,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:37:49,549.549 INFO    ] No update needed
[2026-08-25 03:37:49,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 03:37:49,591.591 INFO    ] 200
[2026-08-25 03:37:49,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:37:49,643.643 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:37:49,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:37:49,690.690 INFO    ] No camera update needed
[2026-08-25 03:37:49,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:37:49,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:37:49,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:37:49,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:37:51,748.748 INFO    ] ================================================
[2026-08-25 03:37:51,764.764 INFO    ] Launching Daemon at Tue Aug 25 03:37:51 IST 2026
[2026-08-25 03:37:51,775.775 INFO    ] ================================================
[2026-08-25 03:37:52,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:37:52
[2026-08-25 03:37:53,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:37:53,428.428 INFO    ] Initializing speech engine...
[2026-08-25 03:37:53,441.441 INFO    ] 2026-08-25 03:37:53
[2026-08-25 03:37:53,717.717 INFO    ] 2026-08-25 03:37:53
[2026-08-25 03:37:53,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:37:54,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:37:54,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:37:54,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:37:54,212.212 INFO    ] time= 25/08/2026 03:37:54
[2026-08-25 03:37:54,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:37:54,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:37:54,404.404 INFO    ] No existing commands found in stream
[2026-08-25 03:37:59,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:37:59,430.430 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 03:38:03,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:38:03,892.892 INFO    ] Checking for system updates...
[2026-08-25 03:38:03,933.933 INFO    ] 200
[2026-08-25 03:38:03,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:03,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:38:03,998.998 INFO    ] No update needed
[2026-08-25 03:38:04,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 03:38:04,037.037 INFO    ] 200
[2026-08-25 03:38:04,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:04,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:38:04,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:38:04,135.135 INFO    ] No camera update needed
[2026-08-25 03:38:04,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:38:04,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:38:04,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:38:04,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:38:06,195.195 INFO    ] ================================================
[2026-08-25 03:38:06,212.212 INFO    ] Launching Daemon at Tue Aug 25 03:38:06 IST 2026
[2026-08-25 03:38:06,225.225 INFO    ] ================================================
[2026-08-25 03:38:06,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:38:06
[2026-08-25 03:38:07,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:38:07,867.867 INFO    ] Initializing speech engine...
[2026-08-25 03:38:07,878.878 INFO    ] 2026-08-25 03:38:07
[2026-08-25 03:38:08,190.190 INFO    ] 2026-08-25 03:38:08
[2026-08-25 03:38:08,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:38:08,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:38:08,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:38:08,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:38:08,695.695 INFO    ] time= 25/08/2026 03:38:08
[2026-08-25 03:38:08,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:38:08,721.721 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:38:08,851.851 INFO    ] No existing commands found in stream
[2026-08-25 03:38:13,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:38:13,881.881 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 03:38:17,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:38:17,629.629 INFO    ] Checking for system updates...
[2026-08-25 03:38:17,666.666 INFO    ] 200
[2026-08-25 03:38:17,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:17,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:38:17,725.725 INFO    ] No update needed
[2026-08-25 03:38:17,728.728 INFO    ] Checking for camera pi updates...
[2026-08-25 03:38:17,761.761 INFO    ] 200
[2026-08-25 03:38:17,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:17,803.803 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:38:17,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:38:17,949.949 INFO    ] No camera update needed
[2026-08-25 03:38:17,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:38:17,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:38:17,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:38:17,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:38:20,004.004 INFO    ] ================================================
[2026-08-25 03:38:20,019.019 INFO    ] Launching Daemon at Tue Aug 25 03:38:20 IST 2026
[2026-08-25 03:38:20,030.030 INFO    ] ================================================
[2026-08-25 03:38:20,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:38:20
[2026-08-25 03:38:21,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:38:21,505.505 INFO    ] Initializing speech engine...
[2026-08-25 03:38:21,519.519 INFO    ] 2026-08-25 03:38:21
[2026-08-25 03:38:21,771.771 INFO    ] 2026-08-25 03:38:21
[2026-08-25 03:38:21,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:38:22,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:38:22,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:38:22,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:38:22,142.142 INFO    ] time= 25/08/2026 03:38:22
[2026-08-25 03:38:22,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:38:22,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:38:22,326.326 INFO    ] No existing commands found in stream
[2026-08-25 03:38:27,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:38:27,352.352 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 03:38:31,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:38:31,425.425 INFO    ] Checking for system updates...
[2026-08-25 03:38:31,464.464 INFO    ] 200
[2026-08-25 03:38:31,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:31,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:38:31,535.535 INFO    ] No update needed
[2026-08-25 03:38:31,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 03:38:31,575.575 INFO    ] 200
[2026-08-25 03:38:31,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:31,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:38:31,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:38:31,698.698 INFO    ] No camera update needed
[2026-08-25 03:38:31,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:38:31,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:38:31,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:38:31,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:38:33,756.756 INFO    ] ================================================
[2026-08-25 03:38:33,772.772 INFO    ] Launching Daemon at Tue Aug 25 03:38:33 IST 2026
[2026-08-25 03:38:33,783.783 INFO    ] ================================================
[2026-08-25 03:38:34,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:38:34
[2026-08-25 03:38:34,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:38:35,276.276 INFO    ] Initializing speech engine...
[2026-08-25 03:38:35,280.280 INFO    ] 2026-08-25 03:38:35
[2026-08-25 03:38:35,548.548 INFO    ] 2026-08-25 03:38:35
[2026-08-25 03:38:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:38:35,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:38:35,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:38:35,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:38:35,930.930 INFO    ] time= 25/08/2026 03:38:35
[2026-08-25 03:38:35,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:38:35,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:38:36,057.057 INFO    ] No existing commands found in stream
[2026-08-25 03:38:41,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:38:41,072.072 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 03:38:44,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:38:44,280.280 INFO    ] Checking for system updates...
[2026-08-25 03:38:44,319.319 INFO    ] 200
[2026-08-25 03:38:44,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:44,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:38:44,378.378 INFO    ] No update needed
[2026-08-25 03:38:44,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 03:38:44,413.413 INFO    ] 200
[2026-08-25 03:38:44,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:44,456.456 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:38:44,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:38:44,512.512 INFO    ] No camera update needed
[2026-08-25 03:38:44,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:38:44,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:38:44,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:38:44,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:38:46,567.567 INFO    ] ================================================
[2026-08-25 03:38:46,582.582 INFO    ] Launching Daemon at Tue Aug 25 03:38:46 IST 2026
[2026-08-25 03:38:46,593.593 INFO    ] ================================================
[2026-08-25 03:38:47,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:38:47
[2026-08-25 03:38:47,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:38:48,249.249 INFO    ] Initializing speech engine...
[2026-08-25 03:38:48,253.253 INFO    ] 2026-08-25 03:38:48
[2026-08-25 03:38:48,515.515 INFO    ] 2026-08-25 03:38:48
[2026-08-25 03:38:48,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:38:48,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:38:48,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:38:48,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:38:48,980.980 INFO    ] time= 25/08/2026 03:38:48
[2026-08-25 03:38:49,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:38:49,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:38:49,180.180 INFO    ] No existing commands found in stream
[2026-08-25 03:38:54,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:38:54,215.215 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 03:38:55,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:38:55,333.333 INFO    ] Checking for system updates...
[2026-08-25 03:38:55,369.369 INFO    ] 200
[2026-08-25 03:38:55,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:55,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:38:55,438.438 INFO    ] No update needed
[2026-08-25 03:38:55,441.441 INFO    ] Checking for camera pi updates...
[2026-08-25 03:38:55,474.474 INFO    ] 200
[2026-08-25 03:38:55,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:38:55,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:38:55,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:38:55,575.575 INFO    ] No camera update needed
[2026-08-25 03:38:55,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:38:55,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:38:55,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:38:55,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:38:57,632.632 INFO    ] ================================================
[2026-08-25 03:38:57,648.648 INFO    ] Launching Daemon at Tue Aug 25 03:38:57 IST 2026
[2026-08-25 03:38:57,659.659 INFO    ] ================================================
[2026-08-25 03:38:58,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:38:58
[2026-08-25 03:38:58,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:38:59,119.119 INFO    ] Initializing speech engine...
[2026-08-25 03:38:59,130.130 INFO    ] 2026-08-25 03:38:59
[2026-08-25 03:38:59,400.400 INFO    ] 2026-08-25 03:38:59
[2026-08-25 03:38:59,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:38:59,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:38:59,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:38:59,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:38:59,819.819 INFO    ] time= 25/08/2026 03:38:59
[2026-08-25 03:38:59,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:38:59,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:38:59,912.912 INFO    ] No existing commands found in stream
[2026-08-25 03:39:04,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:39:04,933.933 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 03:39:05,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:39:05,817.817 INFO    ] Checking for system updates...
[2026-08-25 03:39:05,856.856 INFO    ] 200
[2026-08-25 03:39:05,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:05,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:39:05,913.913 INFO    ] No update needed
[2026-08-25 03:39:05,916.916 INFO    ] Checking for camera pi updates...
[2026-08-25 03:39:05,955.955 INFO    ] 200
[2026-08-25 03:39:05,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:06,002.002 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:39:06,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:39:06,052.052 INFO    ] No camera update needed
[2026-08-25 03:39:06,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:39:06,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:39:06,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:39:06,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:39:08,109.109 INFO    ] ================================================
[2026-08-25 03:39:08,124.124 INFO    ] Launching Daemon at Tue Aug 25 03:39:08 IST 2026
[2026-08-25 03:39:08,135.135 INFO    ] ================================================
[2026-08-25 03:39:08,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:39:08
[2026-08-25 03:39:09,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:39:09,631.631 INFO    ] Initializing speech engine...
[2026-08-25 03:39:09,638.638 INFO    ] 2026-08-25 03:39:09
[2026-08-25 03:39:09,903.903 INFO    ] 2026-08-25 03:39:09
[2026-08-25 03:39:09,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:39:10,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:39:10,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:39:10,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:39:10,305.305 INFO    ] time= 25/08/2026 03:39:10
[2026-08-25 03:39:10,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:39:10,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:39:10,483.483 INFO    ] No existing commands found in stream
[2026-08-25 03:39:15,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:39:15,515.515 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 03:39:19,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:39:19,739.739 INFO    ] Checking for system updates...
[2026-08-25 03:39:19,781.781 INFO    ] 200
[2026-08-25 03:39:19,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:19,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:39:19,845.845 INFO    ] No update needed
[2026-08-25 03:39:19,847.847 INFO    ] Checking for camera pi updates...
[2026-08-25 03:39:19,881.881 INFO    ] 200
[2026-08-25 03:39:19,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:19,935.935 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:39:19,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:39:19,984.984 INFO    ] No camera update needed
[2026-08-25 03:39:19,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:39:19,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:39:19,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:39:19,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:39:22,038.038 INFO    ] ================================================
[2026-08-25 03:39:22,054.054 INFO    ] Launching Daemon at Tue Aug 25 03:39:22 IST 2026
[2026-08-25 03:39:22,065.065 INFO    ] ================================================
[2026-08-25 03:39:22,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:39:22
[2026-08-25 03:39:23,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:39:23,644.644 INFO    ] Initializing speech engine...
[2026-08-25 03:39:23,656.656 INFO    ] 2026-08-25 03:39:23
[2026-08-25 03:39:23,962.962 INFO    ] 2026-08-25 03:39:23
[2026-08-25 03:39:24,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:39:24,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:39:24,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:39:24,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:39:24,410.410 INFO    ] time= 25/08/2026 03:39:24
[2026-08-25 03:39:24,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:39:24,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:39:24,605.605 INFO    ] No existing commands found in stream
[2026-08-25 03:39:29,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:39:29,631.631 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 03:39:33,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:39:33,971.971 INFO    ] Checking for system updates...
[2026-08-25 03:39:34,011.011 INFO    ] 200
[2026-08-25 03:39:34,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:34,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:39:34,071.071 INFO    ] No update needed
[2026-08-25 03:39:34,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 03:39:34,112.112 INFO    ] 200
[2026-08-25 03:39:34,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:34,163.163 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:39:34,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:39:34,222.222 INFO    ] No camera update needed
[2026-08-25 03:39:34,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:39:34,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:39:34,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:39:34,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:39:36,279.279 INFO    ] ================================================
[2026-08-25 03:39:36,297.297 INFO    ] Launching Daemon at Tue Aug 25 03:39:36 IST 2026
[2026-08-25 03:39:36,308.308 INFO    ] ================================================
[2026-08-25 03:39:36,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:39:36
[2026-08-25 03:39:37,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:39:37,780.780 INFO    ] Initializing speech engine...
[2026-08-25 03:39:37,789.789 INFO    ] 2026-08-25 03:39:37
[2026-08-25 03:39:38,040.040 INFO    ] 2026-08-25 03:39:38
[2026-08-25 03:39:38,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:39:38,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:39:38,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:39:38,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:39:38,519.519 INFO    ] time= 25/08/2026 03:39:38
[2026-08-25 03:39:38,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:39:38,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:39:38,702.702 INFO    ] No existing commands found in stream
[2026-08-25 03:39:43,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:39:43,737.737 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 03:39:48,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:39:48,095.095 INFO    ] Checking for system updates...
[2026-08-25 03:39:48,131.131 INFO    ] 200
[2026-08-25 03:39:48,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:48,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:39:48,195.195 INFO    ] No update needed
[2026-08-25 03:39:48,199.199 INFO    ] Checking for camera pi updates...
[2026-08-25 03:39:48,236.236 INFO    ] 200
[2026-08-25 03:39:48,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:48,280.280 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:39:48,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:39:48,328.328 INFO    ] No camera update needed
[2026-08-25 03:39:48,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:39:48,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:39:48,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:39:48,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:39:50,386.386 INFO    ] ================================================
[2026-08-25 03:39:50,400.400 INFO    ] Launching Daemon at Tue Aug 25 03:39:50 IST 2026
[2026-08-25 03:39:50,411.411 INFO    ] ================================================
[2026-08-25 03:39:50,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:39:50
[2026-08-25 03:39:51,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:39:51,824.824 INFO    ] Initializing speech engine...
[2026-08-25 03:39:51,833.833 INFO    ] 2026-08-25 03:39:51
[2026-08-25 03:39:52,086.086 INFO    ] 2026-08-25 03:39:52
[2026-08-25 03:39:52,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:39:52,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:39:52,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:39:52,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:39:52,521.521 INFO    ] time= 25/08/2026 03:39:52
[2026-08-25 03:39:52,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:39:52,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:39:52,789.789 INFO    ] No existing commands found in stream
[2026-08-25 03:39:57,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:39:57,811.811 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 03:39:59,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:39:59,706.706 INFO    ] Checking for system updates...
[2026-08-25 03:39:59,745.745 INFO    ] 200
[2026-08-25 03:39:59,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:59,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:39:59,802.802 INFO    ] No update needed
[2026-08-25 03:39:59,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 03:39:59,841.841 INFO    ] 200
[2026-08-25 03:39:59,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:39:59,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:39:59,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:39:59,934.934 INFO    ] No camera update needed
[2026-08-25 03:39:59,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:39:59,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:39:59,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:39:59,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:40:02,002.002 INFO    ] ================================================
[2026-08-25 03:40:02,042.042 INFO    ] Launching Daemon at Tue Aug 25 03:40:02 IST 2026
[2026-08-25 03:40:02,058.058 INFO    ] ================================================
[2026-08-25 03:40:02,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:40:02
[2026-08-25 03:40:03,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:40:03,668.668 INFO    ] Initializing speech engine...
[2026-08-25 03:40:03,677.677 INFO    ] 2026-08-25 03:40:03
[2026-08-25 03:40:03,922.922 INFO    ] 2026-08-25 03:40:03
[2026-08-25 03:40:03,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:40:04,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:40:04,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:40:04,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:40:04,371.371 INFO    ] time= 25/08/2026 03:40:04
[2026-08-25 03:40:04,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:40:04,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:40:04,568.568 INFO    ] No existing commands found in stream
[2026-08-25 03:40:09,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:40:09,620.620 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 03:40:11,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:40:11,471.471 INFO    ] Checking for system updates...
[2026-08-25 03:40:11,510.510 INFO    ] 200
[2026-08-25 03:40:11,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:11,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:40:11,576.576 INFO    ] No update needed
[2026-08-25 03:40:11,579.579 INFO    ] Checking for camera pi updates...
[2026-08-25 03:40:11,613.613 INFO    ] 200
[2026-08-25 03:40:11,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:11,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:40:11,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:40:11,713.713 INFO    ] No camera update needed
[2026-08-25 03:40:11,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:40:11,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:40:11,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:40:11,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:40:13,768.768 INFO    ] ================================================
[2026-08-25 03:40:13,784.784 INFO    ] Launching Daemon at Tue Aug 25 03:40:13 IST 2026
[2026-08-25 03:40:13,795.795 INFO    ] ================================================
[2026-08-25 03:40:14,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:40:14
[2026-08-25 03:40:14,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:40:15,214.214 INFO    ] Initializing speech engine...
[2026-08-25 03:40:15,222.222 INFO    ] 2026-08-25 03:40:15
[2026-08-25 03:40:15,477.477 INFO    ] 2026-08-25 03:40:15
[2026-08-25 03:40:15,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:40:15,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:40:15,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:40:15,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:40:15,948.948 INFO    ] time= 25/08/2026 03:40:15
[2026-08-25 03:40:16,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:40:16,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:40:16,159.159 INFO    ] No existing commands found in stream
[2026-08-25 03:40:21,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:40:21,189.189 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 03:40:25,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:40:25,488.488 INFO    ] Checking for system updates...
[2026-08-25 03:40:25,523.523 INFO    ] 200
[2026-08-25 03:40:25,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:25,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:40:25,580.580 INFO    ] No update needed
[2026-08-25 03:40:25,583.583 INFO    ] Checking for camera pi updates...
[2026-08-25 03:40:25,620.620 INFO    ] 200
[2026-08-25 03:40:25,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:25,663.663 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:40:25,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:40:25,812.812 INFO    ] No camera update needed
[2026-08-25 03:40:25,814.814 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:40:25,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:40:25,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:40:25,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:40:27,868.868 INFO    ] ================================================
[2026-08-25 03:40:27,883.883 INFO    ] Launching Daemon at Tue Aug 25 03:40:27 IST 2026
[2026-08-25 03:40:27,894.894 INFO    ] ================================================
[2026-08-25 03:40:28,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:40:28
[2026-08-25 03:40:29,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:40:29,487.487 INFO    ] Initializing speech engine...
[2026-08-25 03:40:29,494.494 INFO    ] 2026-08-25 03:40:29
[2026-08-25 03:40:29,780.780 INFO    ] 2026-08-25 03:40:29
[2026-08-25 03:40:29,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:40:30,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:40:30,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:40:30,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:40:30,245.245 INFO    ] time= 25/08/2026 03:40:30
[2026-08-25 03:40:30,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:40:30,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:40:30,435.435 INFO    ] No existing commands found in stream
[2026-08-25 03:40:35,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:40:35,466.466 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 03:40:39,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:40:39,427.427 INFO    ] Checking for system updates...
[2026-08-25 03:40:39,467.467 INFO    ] 200
[2026-08-25 03:40:39,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:39,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:40:39,526.526 INFO    ] No update needed
[2026-08-25 03:40:39,529.529 INFO    ] Checking for camera pi updates...
[2026-08-25 03:40:39,563.563 INFO    ] 200
[2026-08-25 03:40:39,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:39,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:40:39,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:40:39,656.656 INFO    ] No camera update needed
[2026-08-25 03:40:39,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:40:39,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:40:39,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:40:39,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:40:41,713.713 INFO    ] ================================================
[2026-08-25 03:40:41,727.727 INFO    ] Launching Daemon at Tue Aug 25 03:40:41 IST 2026
[2026-08-25 03:40:41,738.738 INFO    ] ================================================
[2026-08-25 03:40:42,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:40:42
[2026-08-25 03:40:42,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:40:43,178.178 INFO    ] Initializing speech engine...
[2026-08-25 03:40:43,188.188 INFO    ] 2026-08-25 03:40:43
[2026-08-25 03:40:43,442.442 INFO    ] 2026-08-25 03:40:43
[2026-08-25 03:40:43,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:40:43,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:40:43,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:40:43,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:40:43,817.817 INFO    ] time= 25/08/2026 03:40:43
[2026-08-25 03:40:43,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:40:43,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:40:43,979.979 INFO    ] No existing commands found in stream
[2026-08-25 03:40:49,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:40:49,007.007 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 03:40:52,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:40:52,225.225 INFO    ] Checking for system updates...
[2026-08-25 03:40:52,261.261 INFO    ] 200
[2026-08-25 03:40:52,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:52,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:40:52,325.325 INFO    ] No update needed
[2026-08-25 03:40:52,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 03:40:52,364.364 INFO    ] 200
[2026-08-25 03:40:52,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:40:52,407.407 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:40:52,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:40:52,464.464 INFO    ] No camera update needed
[2026-08-25 03:40:52,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:40:52,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:40:52,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:40:52,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:40:54,519.519 INFO    ] ================================================
[2026-08-25 03:40:54,534.534 INFO    ] Launching Daemon at Tue Aug 25 03:40:54 IST 2026
[2026-08-25 03:40:54,545.545 INFO    ] ================================================
[2026-08-25 03:40:55,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:40:55
[2026-08-25 03:40:55,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:40:55,998.998 INFO    ] Initializing speech engine...
[2026-08-25 03:40:56,004.004 INFO    ] 2026-08-25 03:40:56
[2026-08-25 03:40:56,270.270 INFO    ] 2026-08-25 03:40:56
[2026-08-25 03:40:56,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:40:56,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:40:56,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:40:56,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:40:56,747.747 INFO    ] time= 25/08/2026 03:40:56
[2026-08-25 03:40:56,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:40:56,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:40:56,935.935 INFO    ] No existing commands found in stream
[2026-08-25 03:41:01,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:41:01,960.960 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 03:41:03,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:41:03,270.270 INFO    ] Checking for system updates...
[2026-08-25 03:41:03,306.306 INFO    ] 200
[2026-08-25 03:41:03,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:03,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:41:03,367.367 INFO    ] No update needed
[2026-08-25 03:41:03,370.370 INFO    ] Checking for camera pi updates...
[2026-08-25 03:41:03,403.403 INFO    ] 200
[2026-08-25 03:41:03,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:03,448.448 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:41:03,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:41:03,496.496 INFO    ] No camera update needed
[2026-08-25 03:41:03,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:41:03,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:41:03,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:41:03,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:41:05,550.550 INFO    ] ================================================
[2026-08-25 03:41:05,566.566 INFO    ] Launching Daemon at Tue Aug 25 03:41:05 IST 2026
[2026-08-25 03:41:05,577.577 INFO    ] ================================================
[2026-08-25 03:41:06,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:41:06
[2026-08-25 03:41:06,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:41:07,028.028 INFO    ] Initializing speech engine...
[2026-08-25 03:41:07,034.034 INFO    ] 2026-08-25 03:41:07
[2026-08-25 03:41:07,307.307 INFO    ] 2026-08-25 03:41:07
[2026-08-25 03:41:07,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:41:07,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:41:07,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:41:07,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:41:07,680.680 INFO    ] time= 25/08/2026 03:41:07
[2026-08-25 03:41:07,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:41:07,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:41:07,875.875 INFO    ] No existing commands found in stream
[2026-08-25 03:41:12,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:41:12,899.899 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 03:41:16,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:41:16,313.313 INFO    ] Checking for system updates...
[2026-08-25 03:41:16,349.349 INFO    ] 200
[2026-08-25 03:41:16,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:16,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:16,406.406 INFO    ] No update needed
[2026-08-25 03:41:16,408.408 INFO    ] Checking for camera pi updates...
[2026-08-25 03:41:16,442.442 INFO    ] 200
[2026-08-25 03:41:16,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:16,484.484 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:41:16,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:16,537.537 INFO    ] No camera update needed
[2026-08-25 03:41:16,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:41:16,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:41:16,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:41:16,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:41:18,592.592 INFO    ] ================================================
[2026-08-25 03:41:18,607.607 INFO    ] Launching Daemon at Tue Aug 25 03:41:18 IST 2026
[2026-08-25 03:41:18,618.618 INFO    ] ================================================
[2026-08-25 03:41:19,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:41:19
[2026-08-25 03:41:19,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:41:20,180.180 INFO    ] Initializing speech engine...
[2026-08-25 03:41:20,194.194 INFO    ] 2026-08-25 03:41:20
[2026-08-25 03:41:20,461.461 INFO    ] 2026-08-25 03:41:20
[2026-08-25 03:41:20,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:41:20,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:41:20,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:41:20,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:41:20,938.938 INFO    ] time= 25/08/2026 03:41:20
[2026-08-25 03:41:20,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:41:21,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:41:21,159.159 INFO    ] No existing commands found in stream
[2026-08-25 03:41:26,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:41:26,186.186 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 03:41:29,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:41:29,859.859 INFO    ] Checking for system updates...
[2026-08-25 03:41:29,898.898 INFO    ] 200
[2026-08-25 03:41:29,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:29,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:29,978.978 INFO    ] No update needed
[2026-08-25 03:41:29,981.981 INFO    ] Checking for camera pi updates...
[2026-08-25 03:41:30,015.015 INFO    ] 200
[2026-08-25 03:41:30,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:30,059.059 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:41:30,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:30,113.113 INFO    ] No camera update needed
[2026-08-25 03:41:30,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:41:30,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:41:30,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:41:30,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:41:32,175.175 INFO    ] ================================================
[2026-08-25 03:41:32,192.192 INFO    ] Launching Daemon at Tue Aug 25 03:41:32 IST 2026
[2026-08-25 03:41:32,203.203 INFO    ] ================================================
[2026-08-25 03:41:32,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:41:32
[2026-08-25 03:41:33,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:41:33,672.672 INFO    ] Initializing speech engine...
[2026-08-25 03:41:33,691.691 INFO    ] 2026-08-25 03:41:33
[2026-08-25 03:41:33,954.954 INFO    ] 2026-08-25 03:41:33
[2026-08-25 03:41:33,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:41:34,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:41:34,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:41:34,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:41:34,361.361 INFO    ] time= 25/08/2026 03:41:34
[2026-08-25 03:41:34,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:41:34,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:41:34,446.446 INFO    ] No existing commands found in stream
[2026-08-25 03:41:39,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:41:39,485.485 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 03:41:41,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:41:41,408.408 INFO    ] Checking for system updates...
[2026-08-25 03:41:41,443.443 INFO    ] 200
[2026-08-25 03:41:41,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:41,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:41,501.501 INFO    ] No update needed
[2026-08-25 03:41:41,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 03:41:41,540.540 INFO    ] 200
[2026-08-25 03:41:41,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:41,582.582 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:41:41,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:41,633.633 INFO    ] No camera update needed
[2026-08-25 03:41:41,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:41:41,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:41:41,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:41:41,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:41:43,687.687 INFO    ] ================================================
[2026-08-25 03:41:43,703.703 INFO    ] Launching Daemon at Tue Aug 25 03:41:43 IST 2026
[2026-08-25 03:41:43,714.714 INFO    ] ================================================
[2026-08-25 03:41:44,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:41:44
[2026-08-25 03:41:44,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:41:45,130.130 INFO    ] Initializing speech engine...
[2026-08-25 03:41:45,136.136 INFO    ] 2026-08-25 03:41:45
[2026-08-25 03:41:45,426.426 INFO    ] 2026-08-25 03:41:45
[2026-08-25 03:41:45,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:41:45,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:41:45,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:41:45,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:41:45,834.834 INFO    ] time= 25/08/2026 03:41:45
[2026-08-25 03:41:45,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:41:45,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:41:45,924.924 INFO    ] No existing commands found in stream
[2026-08-25 03:41:50,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:41:50,957.957 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 03:41:54,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:41:54,558.558 INFO    ] Checking for system updates...
[2026-08-25 03:41:54,593.593 INFO    ] 200
[2026-08-25 03:41:54,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:54,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:54,652.652 INFO    ] No update needed
[2026-08-25 03:41:54,654.654 INFO    ] Checking for camera pi updates...
[2026-08-25 03:41:54,688.688 INFO    ] 200
[2026-08-25 03:41:54,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:41:54,731.731 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:41:54,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:41:54,782.782 INFO    ] No camera update needed
[2026-08-25 03:41:54,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:41:54,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:41:54,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:41:54,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:41:56,838.838 INFO    ] ================================================
[2026-08-25 03:41:56,854.854 INFO    ] Launching Daemon at Tue Aug 25 03:41:56 IST 2026
[2026-08-25 03:41:56,865.865 INFO    ] ================================================
[2026-08-25 03:41:57,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:41:57
[2026-08-25 03:41:58,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:41:58,289.289 INFO    ] Initializing speech engine...
[2026-08-25 03:41:58,298.298 INFO    ] 2026-08-25 03:41:58
[2026-08-25 03:41:58,549.549 INFO    ] 2026-08-25 03:41:58
[2026-08-25 03:41:58,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:41:58,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:41:58,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:41:58,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:41:58,924.924 INFO    ] time= 25/08/2026 03:41:58
[2026-08-25 03:41:58,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:41:58,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:41:59,092.092 INFO    ] No existing commands found in stream
[2026-08-25 03:42:04,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:42:04,119.119 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 03:42:06,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:42:06,903.903 INFO    ] Checking for system updates...
[2026-08-25 03:42:06,938.938 INFO    ] 200
[2026-08-25 03:42:06,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:06,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:06,995.995 INFO    ] No update needed
[2026-08-25 03:42:06,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 03:42:07,031.031 INFO    ] 200
[2026-08-25 03:42:07,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:07,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:42:07,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:07,137.137 INFO    ] No camera update needed
[2026-08-25 03:42:07,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:42:07,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:42:07,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:42:07,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:42:09,193.193 INFO    ] ================================================
[2026-08-25 03:42:09,209.209 INFO    ] Launching Daemon at Tue Aug 25 03:42:09 IST 2026
[2026-08-25 03:42:09,220.220 INFO    ] ================================================
[2026-08-25 03:42:09,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:42:09
[2026-08-25 03:42:10,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:42:10,787.787 INFO    ] Initializing speech engine...
[2026-08-25 03:42:10,796.796 INFO    ] 2026-08-25 03:42:10
[2026-08-25 03:42:11,110.110 INFO    ] 2026-08-25 03:42:11
[2026-08-25 03:42:11,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:42:11,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:42:11,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:42:11,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:42:11,615.615 INFO    ] time= 25/08/2026 03:42:11
[2026-08-25 03:42:11,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:42:11,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:42:11,766.766 INFO    ] No existing commands found in stream
[2026-08-25 03:42:16,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:42:16,786.786 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 03:42:20,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:42:20,331.331 INFO    ] Checking for system updates...
[2026-08-25 03:42:20,367.367 INFO    ] 200
[2026-08-25 03:42:20,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:20,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:20,431.431 INFO    ] No update needed
[2026-08-25 03:42:20,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 03:42:20,469.469 INFO    ] 200
[2026-08-25 03:42:20,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:20,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:42:20,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:20,568.568 INFO    ] No camera update needed
[2026-08-25 03:42:20,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:42:20,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:42:20,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:42:20,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:42:22,626.626 INFO    ] ================================================
[2026-08-25 03:42:22,641.641 INFO    ] Launching Daemon at Tue Aug 25 03:42:22 IST 2026
[2026-08-25 03:42:22,651.651 INFO    ] ================================================
[2026-08-25 03:42:23,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:42:23
[2026-08-25 03:42:23,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:42:24,268.268 INFO    ] Initializing speech engine...
[2026-08-25 03:42:24,279.279 INFO    ] 2026-08-25 03:42:24
[2026-08-25 03:42:24,592.592 INFO    ] 2026-08-25 03:42:24
[2026-08-25 03:42:24,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:42:24,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:42:24,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:42:25,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:42:25,080.080 INFO    ] time= 25/08/2026 03:42:25
[2026-08-25 03:42:25,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:42:25,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:42:25,267.267 INFO    ] No existing commands found in stream
[2026-08-25 03:42:30,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:42:30,297.297 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 03:42:32,083.083 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:42:32,086.086 INFO    ] Checking for system updates...
[2026-08-25 03:42:32,125.125 INFO    ] 200
[2026-08-25 03:42:32,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:32,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:42:32,190.190 INFO    ] No update needed
[2026-08-25 03:42:32,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 03:42:32,231.231 INFO    ] 200
[2026-08-25 03:42:32,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:32,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:42:32,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:42:32,467.467 INFO    ] No camera update needed
[2026-08-25 03:42:32,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:42:32,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:42:32,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:42:32,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:42:34,530.530 INFO    ] ================================================
[2026-08-25 03:42:34,546.546 INFO    ] Launching Daemon at Tue Aug 25 03:42:34 IST 2026
[2026-08-25 03:42:34,556.556 INFO    ] ================================================
[2026-08-25 03:42:35,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:42:35
[2026-08-25 03:42:35,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:42:36,181.181 INFO    ] Initializing speech engine...
[2026-08-25 03:42:36,195.195 INFO    ] 2026-08-25 03:42:36
[2026-08-25 03:42:36,483.483 INFO    ] 2026-08-25 03:42:36
[2026-08-25 03:42:36,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:42:36,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:42:36,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:42:36,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:42:36,936.936 INFO    ] time= 25/08/2026 03:42:36
[2026-08-25 03:42:36,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:42:37,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:42:37,116.116 INFO    ] No existing commands found in stream
[2026-08-25 03:42:42,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:42:42,156.156 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 03:42:42,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:42:42,601.601 INFO    ] Checking for system updates...
[2026-08-25 03:42:42,639.639 INFO    ] 200
[2026-08-25 03:42:42,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:42,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:42,696.696 INFO    ] No update needed
[2026-08-25 03:42:42,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 03:42:42,731.731 INFO    ] 200
[2026-08-25 03:42:42,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:42,775.775 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:42:42,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:42,831.831 INFO    ] No camera update needed
[2026-08-25 03:42:42,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:42:42,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:42:42,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:42:42,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:42:44,885.885 INFO    ] ================================================
[2026-08-25 03:42:44,900.900 INFO    ] Launching Daemon at Tue Aug 25 03:42:44 IST 2026
[2026-08-25 03:42:44,911.911 INFO    ] ================================================
[2026-08-25 03:42:45,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:42:45
[2026-08-25 03:42:46,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:42:46,516.516 INFO    ] Initializing speech engine...
[2026-08-25 03:42:46,524.524 INFO    ] 2026-08-25 03:42:46
[2026-08-25 03:42:46,793.793 INFO    ] 2026-08-25 03:42:46
[2026-08-25 03:42:46,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:42:47,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:42:47,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:42:47,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:42:47,289.289 INFO    ] time= 25/08/2026 03:42:47
[2026-08-25 03:42:47,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:42:47,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:42:47,504.504 INFO    ] No existing commands found in stream
[2026-08-25 03:42:52,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:42:52,536.536 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 03:42:54,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:42:54,123.123 INFO    ] Checking for system updates...
[2026-08-25 03:42:54,159.159 INFO    ] 200
[2026-08-25 03:42:54,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:54,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:54,216.216 INFO    ] No update needed
[2026-08-25 03:42:54,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 03:42:54,252.252 INFO    ] 200
[2026-08-25 03:42:54,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:42:54,295.295 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:42:54,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:42:54,343.343 INFO    ] No camera update needed
[2026-08-25 03:42:54,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:42:54,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:42:54,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:42:54,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:42:56,396.396 INFO    ] ================================================
[2026-08-25 03:42:56,411.411 INFO    ] Launching Daemon at Tue Aug 25 03:42:56 IST 2026
[2026-08-25 03:42:56,422.422 INFO    ] ================================================
[2026-08-25 03:42:56,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:42:56
[2026-08-25 03:42:57,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:42:57,839.839 INFO    ] Initializing speech engine...
[2026-08-25 03:42:57,848.848 INFO    ] 2026-08-25 03:42:57
[2026-08-25 03:42:58,096.096 INFO    ] 2026-08-25 03:42:58
[2026-08-25 03:42:58,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:42:58,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:42:58,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:42:58,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:42:58,575.575 INFO    ] time= 25/08/2026 03:42:58
[2026-08-25 03:42:58,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:42:58,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:42:58,823.823 INFO    ] No existing commands found in stream
[2026-08-25 03:43:03,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:43:03,844.844 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 03:43:05,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:43:05,008.008 INFO    ] Checking for system updates...
[2026-08-25 03:43:05,043.043 INFO    ] 200
[2026-08-25 03:43:05,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:05,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:43:05,101.101 INFO    ] No update needed
[2026-08-25 03:43:05,103.103 INFO    ] Checking for camera pi updates...
[2026-08-25 03:43:05,136.136 INFO    ] 200
[2026-08-25 03:43:05,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:05,179.179 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:43:05,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:43:05,238.238 INFO    ] No camera update needed
[2026-08-25 03:43:05,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:43:05,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:43:05,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:43:05,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:43:07,295.295 INFO    ] ================================================
[2026-08-25 03:43:07,310.310 INFO    ] Launching Daemon at Tue Aug 25 03:43:07 IST 2026
[2026-08-25 03:43:07,320.320 INFO    ] ================================================
[2026-08-25 03:43:07,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:43:07
[2026-08-25 03:43:08,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:43:08,895.895 INFO    ] Initializing speech engine...
[2026-08-25 03:43:08,900.900 INFO    ] 2026-08-25 03:43:08
[2026-08-25 03:43:09,172.172 INFO    ] 2026-08-25 03:43:09
[2026-08-25 03:43:09,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:43:09,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:43:09,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:43:09,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:43:09,653.653 INFO    ] time= 25/08/2026 03:43:09
[2026-08-25 03:43:09,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:43:09,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:43:09,870.870 INFO    ] No existing commands found in stream
[2026-08-25 03:43:14,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:43:14,889.889 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 03:43:18,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:43:18,344.344 INFO    ] Checking for system updates...
[2026-08-25 03:43:18,380.380 INFO    ] 200
[2026-08-25 03:43:18,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:18,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:43:18,441.441 INFO    ] No update needed
[2026-08-25 03:43:18,443.443 INFO    ] Checking for camera pi updates...
[2026-08-25 03:43:18,477.477 INFO    ] 200
[2026-08-25 03:43:18,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:18,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:43:18,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:43:18,575.575 INFO    ] No camera update needed
[2026-08-25 03:43:18,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:43:18,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:43:18,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:43:18,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:43:20,629.629 INFO    ] ================================================
[2026-08-25 03:43:20,644.644 INFO    ] Launching Daemon at Tue Aug 25 03:43:20 IST 2026
[2026-08-25 03:43:20,655.655 INFO    ] ================================================
[2026-08-25 03:43:21,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:43:21
[2026-08-25 03:43:21,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:43:22,102.102 INFO    ] Initializing speech engine...
[2026-08-25 03:43:22,111.111 INFO    ] 2026-08-25 03:43:22
[2026-08-25 03:43:22,359.359 INFO    ] 2026-08-25 03:43:22
[2026-08-25 03:43:22,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:43:22,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:43:22,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:43:22,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:43:22,844.844 INFO    ] time= 25/08/2026 03:43:22
[2026-08-25 03:43:22,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:43:22,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:43:22,982.982 INFO    ] No existing commands found in stream
[2026-08-25 03:43:27,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:43:27,997.997 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 03:43:29,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:43:29,329.329 INFO    ] Checking for system updates...
[2026-08-25 03:43:29,365.365 INFO    ] 200
[2026-08-25 03:43:29,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:29,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:43:29,422.422 INFO    ] No update needed
[2026-08-25 03:43:29,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 03:43:29,459.459 INFO    ] 200
[2026-08-25 03:43:29,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:29,505.505 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:43:29,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:43:29,564.564 INFO    ] No camera update needed
[2026-08-25 03:43:29,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:43:29,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:43:29,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:43:29,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:43:31,620.620 INFO    ] ================================================
[2026-08-25 03:43:31,636.636 INFO    ] Launching Daemon at Tue Aug 25 03:43:31 IST 2026
[2026-08-25 03:43:31,647.647 INFO    ] ================================================
[2026-08-25 03:43:32,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:43:32
[2026-08-25 03:43:32,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:43:33,180.180 INFO    ] Initializing speech engine...
[2026-08-25 03:43:33,188.188 INFO    ] 2026-08-25 03:43:33
[2026-08-25 03:43:33,458.458 INFO    ] 2026-08-25 03:43:33
[2026-08-25 03:43:33,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:43:33,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:43:33,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:43:33,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:43:33,935.935 INFO    ] time= 25/08/2026 03:43:33
[2026-08-25 03:43:33,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:43:34,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:43:34,137.137 INFO    ] No existing commands found in stream
[2026-08-25 03:43:39,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:43:39,161.161 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 03:43:43,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:43:43,427.427 INFO    ] Checking for system updates...
[2026-08-25 03:43:43,463.463 INFO    ] 200
[2026-08-25 03:43:43,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:43,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:43:43,522.522 INFO    ] No update needed
[2026-08-25 03:43:43,525.525 INFO    ] Checking for camera pi updates...
[2026-08-25 03:43:43,559.559 INFO    ] 200
[2026-08-25 03:43:43,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:43,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:43:43,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:43:43,654.654 INFO    ] No camera update needed
[2026-08-25 03:43:43,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:43:43,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:43:43,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:43:43,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:43:45,711.711 INFO    ] ================================================
[2026-08-25 03:43:45,727.727 INFO    ] Launching Daemon at Tue Aug 25 03:43:45 IST 2026
[2026-08-25 03:43:45,737.737 INFO    ] ================================================
[2026-08-25 03:43:46,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:43:46
[2026-08-25 03:43:46,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:43:47,209.209 INFO    ] Initializing speech engine...
[2026-08-25 03:43:47,214.214 INFO    ] 2026-08-25 03:43:47
[2026-08-25 03:43:47,476.476 INFO    ] 2026-08-25 03:43:47
[2026-08-25 03:43:47,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:43:47,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:43:47,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:43:47,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:43:47,934.934 INFO    ] time= 25/08/2026 03:43:47
[2026-08-25 03:43:47,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:43:48,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:43:48,157.157 INFO    ] No existing commands found in stream
[2026-08-25 03:43:53,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:43:53,179.179 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 03:43:56,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:43:56,748.748 INFO    ] Checking for system updates...
[2026-08-25 03:43:56,787.787 INFO    ] 200
[2026-08-25 03:43:56,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:56,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:43:56,843.843 INFO    ] No update needed
[2026-08-25 03:43:56,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 03:43:56,895.895 INFO    ] 200
[2026-08-25 03:43:56,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:43:56,942.942 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:43:57,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:43:57,003.003 INFO    ] No camera update needed
[2026-08-25 03:43:57,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:43:57,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:43:57,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:43:57,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:43:59,059.059 INFO    ] ================================================
[2026-08-25 03:43:59,074.074 INFO    ] Launching Daemon at Tue Aug 25 03:43:59 IST 2026
[2026-08-25 03:43:59,085.085 INFO    ] ================================================
[2026-08-25 03:43:59,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:43:59
[2026-08-25 03:44:00,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:44:00,541.541 INFO    ] Initializing speech engine...
[2026-08-25 03:44:00,550.550 INFO    ] 2026-08-25 03:44:00
[2026-08-25 03:44:00,813.813 INFO    ] 2026-08-25 03:44:00
[2026-08-25 03:44:00,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:44:01,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:44:01,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:44:01,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:44:01,253.253 INFO    ] time= 25/08/2026 03:44:01
[2026-08-25 03:44:01,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:44:01,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:44:01,330.330 INFO    ] No existing commands found in stream
[2026-08-25 03:44:06,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:44:06,340.340 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 03:44:08,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:44:08,251.251 INFO    ] Checking for system updates...
[2026-08-25 03:44:08,293.293 INFO    ] 200
[2026-08-25 03:44:08,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:08,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:44:08,358.358 INFO    ] No update needed
[2026-08-25 03:44:08,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 03:44:08,400.400 INFO    ] 200
[2026-08-25 03:44:08,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:08,444.444 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:44:08,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:44:08,514.514 INFO    ] No camera update needed
[2026-08-25 03:44:08,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:44:08,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:44:08,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:44:08,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:44:10,572.572 INFO    ] ================================================
[2026-08-25 03:44:10,587.587 INFO    ] Launching Daemon at Tue Aug 25 03:44:10 IST 2026
[2026-08-25 03:44:10,598.598 INFO    ] ================================================
[2026-08-25 03:44:11,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:44:11
[2026-08-25 03:44:11,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:44:12,027.027 INFO    ] Initializing speech engine...
[2026-08-25 03:44:12,036.036 INFO    ] 2026-08-25 03:44:12
[2026-08-25 03:44:12,325.325 INFO    ] 2026-08-25 03:44:12
[2026-08-25 03:44:12,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:44:12,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:44:12,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:44:12,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:44:12,727.727 INFO    ] time= 25/08/2026 03:44:12
[2026-08-25 03:44:12,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:44:12,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:44:12,812.812 INFO    ] No existing commands found in stream
[2026-08-25 03:44:17,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:44:17,828.828 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 03:44:18,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:44:18,748.748 INFO    ] Checking for system updates...
[2026-08-25 03:44:18,782.782 INFO    ] 200
[2026-08-25 03:44:18,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:18,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:44:18,841.841 INFO    ] No update needed
[2026-08-25 03:44:18,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 03:44:18,879.879 INFO    ] 200
[2026-08-25 03:44:18,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:18,921.921 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:44:18,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:44:18,969.969 INFO    ] No camera update needed
[2026-08-25 03:44:18,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:44:18,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:44:18,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:44:18,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:44:21,027.027 INFO    ] ================================================
[2026-08-25 03:44:21,043.043 INFO    ] Launching Daemon at Tue Aug 25 03:44:21 IST 2026
[2026-08-25 03:44:21,053.053 INFO    ] ================================================
[2026-08-25 03:44:21,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:44:21
[2026-08-25 03:44:22,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:44:22,661.661 INFO    ] Initializing speech engine...
[2026-08-25 03:44:22,671.671 INFO    ] 2026-08-25 03:44:22
[2026-08-25 03:44:22,955.955 INFO    ] 2026-08-25 03:44:22
[2026-08-25 03:44:23,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:44:23,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:44:23,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:44:23,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:44:23,486.486 INFO    ] time= 25/08/2026 03:44:23
[2026-08-25 03:44:23,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:44:23,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:44:23,640.640 INFO    ] No existing commands found in stream
[2026-08-25 03:44:28,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:44:28,665.665 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 03:44:30,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:44:30,766.766 INFO    ] Checking for system updates...
[2026-08-25 03:44:30,807.807 INFO    ] 200
[2026-08-25 03:44:30,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:30,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:44:30,872.872 INFO    ] No update needed
[2026-08-25 03:44:30,875.875 INFO    ] Checking for camera pi updates...
[2026-08-25 03:44:30,909.909 INFO    ] 200
[2026-08-25 03:44:30,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:30,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:44:31,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:44:31,011.011 INFO    ] No camera update needed
[2026-08-25 03:44:31,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:44:31,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:44:31,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:44:31,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:44:33,075.075 INFO    ] ================================================
[2026-08-25 03:44:33,090.090 INFO    ] Launching Daemon at Tue Aug 25 03:44:33 IST 2026
[2026-08-25 03:44:33,100.100 INFO    ] ================================================
[2026-08-25 03:44:33,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:44:33
[2026-08-25 03:44:34,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:44:34,516.516 INFO    ] Initializing speech engine...
[2026-08-25 03:44:34,525.525 INFO    ] 2026-08-25 03:44:34
[2026-08-25 03:44:34,773.773 INFO    ] 2026-08-25 03:44:34
[2026-08-25 03:44:34,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:44:34,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:44:35,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:44:35,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:44:35,148.148 INFO    ] time= 25/08/2026 03:44:35
[2026-08-25 03:44:35,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:44:35,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:44:35,330.330 INFO    ] No existing commands found in stream
[2026-08-25 03:44:40,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:44:40,363.363 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 03:44:41,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:44:41,597.597 INFO    ] Checking for system updates...
[2026-08-25 03:44:41,633.633 INFO    ] 200
[2026-08-25 03:44:41,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:41,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:44:41,698.698 INFO    ] No update needed
[2026-08-25 03:44:41,701.701 INFO    ] Checking for camera pi updates...
[2026-08-25 03:44:41,735.735 INFO    ] 200
[2026-08-25 03:44:41,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:41,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:44:41,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:44:41,927.927 INFO    ] No camera update needed
[2026-08-25 03:44:41,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:44:41,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:44:41,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:44:41,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:44:43,986.986 INFO    ] ================================================
[2026-08-25 03:44:44,001.001 INFO    ] Launching Daemon at Tue Aug 25 03:44:43 IST 2026
[2026-08-25 03:44:44,012.012 INFO    ] ================================================
[2026-08-25 03:44:44,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:44:44
[2026-08-25 03:44:45,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:44:45,596.596 INFO    ] Initializing speech engine...
[2026-08-25 03:44:45,605.605 INFO    ] 2026-08-25 03:44:45
[2026-08-25 03:44:45,850.850 INFO    ] 2026-08-25 03:44:45
[2026-08-25 03:44:45,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:44:46,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:44:46,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:44:46,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:44:46,325.325 INFO    ] time= 25/08/2026 03:44:46
[2026-08-25 03:44:46,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:44:46,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:44:46,542.542 INFO    ] No existing commands found in stream
[2026-08-25 03:44:51,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:44:51,569.569 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 03:44:54,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:44:54,549.549 INFO    ] Checking for system updates...
[2026-08-25 03:44:54,586.586 INFO    ] 200
[2026-08-25 03:44:54,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:54,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:44:54,644.644 INFO    ] No update needed
[2026-08-25 03:44:54,647.647 INFO    ] Checking for camera pi updates...
[2026-08-25 03:44:54,682.682 INFO    ] 200
[2026-08-25 03:44:54,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:44:54,730.730 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:44:54,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:44:54,788.788 INFO    ] No camera update needed
[2026-08-25 03:44:54,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:44:54,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:44:54,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:44:54,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:44:56,842.842 INFO    ] ================================================
[2026-08-25 03:44:56,857.857 INFO    ] Launching Daemon at Tue Aug 25 03:44:56 IST 2026
[2026-08-25 03:44:56,868.868 INFO    ] ================================================
[2026-08-25 03:44:57,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:44:57
[2026-08-25 03:44:58,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:44:58,315.315 INFO    ] Initializing speech engine...
[2026-08-25 03:44:58,322.322 INFO    ] 2026-08-25 03:44:58
[2026-08-25 03:44:58,572.572 INFO    ] 2026-08-25 03:44:58
[2026-08-25 03:44:58,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:44:58,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:44:58,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:44:58,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:44:59,042.042 INFO    ] time= 25/08/2026 03:44:59
[2026-08-25 03:44:59,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:44:59,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:44:59,271.271 INFO    ] No existing commands found in stream
[2026-08-25 03:45:04,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:45:04,294.294 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 03:45:08,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:45:08,095.095 INFO    ] Checking for system updates...
[2026-08-25 03:45:08,141.141 INFO    ] 200
[2026-08-25 03:45:08,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:08,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:45:08,223.223 INFO    ] No update needed
[2026-08-25 03:45:08,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 03:45:08,259.259 INFO    ] 200
[2026-08-25 03:45:08,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:08,308.308 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:45:08,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:45:08,359.359 INFO    ] No camera update needed
[2026-08-25 03:45:08,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:45:08,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:45:08,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:45:08,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:45:10,415.415 INFO    ] ================================================
[2026-08-25 03:45:10,430.430 INFO    ] Launching Daemon at Tue Aug 25 03:45:10 IST 2026
[2026-08-25 03:45:10,441.441 INFO    ] ================================================
[2026-08-25 03:45:11,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:45:11
[2026-08-25 03:45:11,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:45:12,061.061 INFO    ] Initializing speech engine...
[2026-08-25 03:45:12,069.069 INFO    ] 2026-08-25 03:45:12
[2026-08-25 03:45:12,360.360 INFO    ] 2026-08-25 03:45:12
[2026-08-25 03:45:12,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:45:12,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:45:12,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:45:12,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:45:12,910.910 INFO    ] time= 25/08/2026 03:45:12
[2026-08-25 03:45:12,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:45:12,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:45:13,082.082 INFO    ] No existing commands found in stream
[2026-08-25 03:45:18,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:45:18,111.111 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 03:45:22,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:45:22,169.169 INFO    ] Checking for system updates...
[2026-08-25 03:45:22,207.207 INFO    ] 200
[2026-08-25 03:45:22,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:22,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:45:22,273.273 INFO    ] No update needed
[2026-08-25 03:45:22,276.276 INFO    ] Checking for camera pi updates...
[2026-08-25 03:45:22,310.310 INFO    ] 200
[2026-08-25 03:45:22,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:22,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:45:22,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:45:22,418.418 INFO    ] No camera update needed
[2026-08-25 03:45:22,420.420 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:45:22,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:45:22,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:45:22,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:45:24,477.477 INFO    ] ================================================
[2026-08-25 03:45:24,492.492 INFO    ] Launching Daemon at Tue Aug 25 03:45:24 IST 2026
[2026-08-25 03:45:24,503.503 INFO    ] ================================================
[2026-08-25 03:45:25,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:45:25
[2026-08-25 03:45:25,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:45:25,919.919 INFO    ] Initializing speech engine...
[2026-08-25 03:45:25,942.942 INFO    ] 2026-08-25 03:45:25
[2026-08-25 03:45:26,200.200 INFO    ] 2026-08-25 03:45:26
[2026-08-25 03:45:26,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:45:26,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:45:26,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:45:26,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:45:26,586.586 INFO    ] time= 25/08/2026 03:45:26
[2026-08-25 03:45:26,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:45:26,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:45:26,676.676 INFO    ] No existing commands found in stream
[2026-08-25 03:45:31,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:45:31,690.690 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 03:45:35,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:45:35,421.421 INFO    ] Checking for system updates...
[2026-08-25 03:45:35,456.456 INFO    ] 200
[2026-08-25 03:45:35,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:35,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:45:35,515.515 INFO    ] No update needed
[2026-08-25 03:45:35,517.517 INFO    ] Checking for camera pi updates...
[2026-08-25 03:45:35,551.551 INFO    ] 200
[2026-08-25 03:45:35,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:35,601.601 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:45:35,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:45:35,649.649 INFO    ] No camera update needed
[2026-08-25 03:45:35,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:45:35,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:45:35,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:45:35,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:45:37,705.705 INFO    ] ================================================
[2026-08-25 03:45:37,722.722 INFO    ] Launching Daemon at Tue Aug 25 03:45:37 IST 2026
[2026-08-25 03:45:37,734.734 INFO    ] ================================================
[2026-08-25 03:45:38,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:45:38
[2026-08-25 03:45:38,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:45:39,175.175 INFO    ] Initializing speech engine...
[2026-08-25 03:45:39,184.184 INFO    ] 2026-08-25 03:45:39
[2026-08-25 03:45:39,452.452 INFO    ] 2026-08-25 03:45:39
[2026-08-25 03:45:39,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:45:39,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:45:39,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:45:39,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:45:39,833.833 INFO    ] time= 25/08/2026 03:45:39
[2026-08-25 03:45:39,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:45:39,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:45:40,024.024 INFO    ] No existing commands found in stream
[2026-08-25 03:45:45,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:45:45,051.051 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 03:45:46,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:45:46,656.656 INFO    ] Checking for system updates...
[2026-08-25 03:45:46,697.697 INFO    ] 200
[2026-08-25 03:45:46,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:46,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:45:46,754.754 INFO    ] No update needed
[2026-08-25 03:45:46,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 03:45:46,794.794 INFO    ] 200
[2026-08-25 03:45:46,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:46,837.837 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:45:46,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:45:46,884.884 INFO    ] No camera update needed
[2026-08-25 03:45:46,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:45:46,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:45:46,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:45:46,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:45:48,942.942 INFO    ] ================================================
[2026-08-25 03:45:48,958.958 INFO    ] Launching Daemon at Tue Aug 25 03:45:48 IST 2026
[2026-08-25 03:45:48,969.969 INFO    ] ================================================
[2026-08-25 03:45:49,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:45:49
[2026-08-25 03:45:50,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:45:50,639.639 INFO    ] Initializing speech engine...
[2026-08-25 03:45:50,647.647 INFO    ] 2026-08-25 03:45:50
[2026-08-25 03:45:50,945.945 INFO    ] 2026-08-25 03:45:50
[2026-08-25 03:45:51,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:45:51,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:45:51,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:45:51,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:45:51,420.420 INFO    ] time= 25/08/2026 03:45:51
[2026-08-25 03:45:51,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:45:51,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:45:51,597.597 INFO    ] No existing commands found in stream
[2026-08-25 03:45:56,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:45:56,613.613 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 03:45:59,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:45:59,127.127 INFO    ] Checking for system updates...
[2026-08-25 03:45:59,162.162 INFO    ] 200
[2026-08-25 03:45:59,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:59,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:45:59,223.223 INFO    ] No update needed
[2026-08-25 03:45:59,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 03:45:59,259.259 INFO    ] 200
[2026-08-25 03:45:59,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:45:59,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:45:59,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:45:59,362.362 INFO    ] No camera update needed
[2026-08-25 03:45:59,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:45:59,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:45:59,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:45:59,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:46:01,419.419 INFO    ] ================================================
[2026-08-25 03:46:01,435.435 INFO    ] Launching Daemon at Tue Aug 25 03:46:01 IST 2026
[2026-08-25 03:46:01,446.446 INFO    ] ================================================
[2026-08-25 03:46:02,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:46:02
[2026-08-25 03:46:02,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:46:03,187.187 INFO    ] Initializing speech engine...
[2026-08-25 03:46:03,197.197 INFO    ] 2026-08-25 03:46:03
[2026-08-25 03:46:03,506.506 INFO    ] 2026-08-25 03:46:03
[2026-08-25 03:46:03,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:46:03,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:46:03,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:46:03,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:46:04,038.038 INFO    ] time= 25/08/2026 03:46:03
[2026-08-25 03:46:04,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:46:04,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:46:04,228.228 INFO    ] No existing commands found in stream
[2026-08-25 03:46:09,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:46:09,256.256 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 03:46:11,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:46:11,678.678 INFO    ] Checking for system updates...
[2026-08-25 03:46:11,713.713 INFO    ] 200
[2026-08-25 03:46:11,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:11,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:46:11,771.771 INFO    ] No update needed
[2026-08-25 03:46:11,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 03:46:11,810.810 INFO    ] 200
[2026-08-25 03:46:11,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:11,853.853 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:46:11,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:46:11,902.902 INFO    ] No camera update needed
[2026-08-25 03:46:11,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:46:11,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:46:11,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:46:11,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:46:13,961.961 INFO    ] ================================================
[2026-08-25 03:46:13,977.977 INFO    ] Launching Daemon at Tue Aug 25 03:46:13 IST 2026
[2026-08-25 03:46:13,988.988 INFO    ] ================================================
[2026-08-25 03:46:14,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:46:14
[2026-08-25 03:46:15,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:46:15,585.585 INFO    ] Initializing speech engine...
[2026-08-25 03:46:15,596.596 INFO    ] 2026-08-25 03:46:15
[2026-08-25 03:46:15,868.868 INFO    ] 2026-08-25 03:46:15
[2026-08-25 03:46:15,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:46:16,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:46:16,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:46:16,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:46:16,370.370 INFO    ] time= 25/08/2026 03:46:16
[2026-08-25 03:46:16,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:46:16,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:46:16,582.582 INFO    ] No existing commands found in stream
[2026-08-25 03:46:21,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:46:21,601.601 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 03:46:22,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:46:22,148.148 INFO    ] Checking for system updates...
[2026-08-25 03:46:22,184.184 INFO    ] 200
[2026-08-25 03:46:22,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:22,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:46:22,248.248 INFO    ] No update needed
[2026-08-25 03:46:22,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 03:46:22,284.284 INFO    ] 200
[2026-08-25 03:46:22,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:22,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:46:22,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:46:22,383.383 INFO    ] No camera update needed
[2026-08-25 03:46:22,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:46:22,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:46:22,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:46:22,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:46:24,437.437 INFO    ] ================================================
[2026-08-25 03:46:24,453.453 INFO    ] Launching Daemon at Tue Aug 25 03:46:24 IST 2026
[2026-08-25 03:46:24,465.465 INFO    ] ================================================
[2026-08-25 03:46:25,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:46:25
[2026-08-25 03:46:25,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:46:26,171.171 INFO    ] Initializing speech engine...
[2026-08-25 03:46:26,180.180 INFO    ] 2026-08-25 03:46:26
[2026-08-25 03:46:26,454.454 INFO    ] 2026-08-25 03:46:26
[2026-08-25 03:46:26,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:46:26,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:46:26,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:46:26,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:46:26,962.962 INFO    ] time= 25/08/2026 03:46:26
[2026-08-25 03:46:27,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:46:27,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:46:27,187.187 INFO    ] No existing commands found in stream
[2026-08-25 03:46:32,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:46:32,220.220 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 03:46:34,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:46:34,971.971 INFO    ] Checking for system updates...
[2026-08-25 03:46:35,008.008 INFO    ] 200
[2026-08-25 03:46:35,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:35,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:46:35,069.069 INFO    ] No update needed
[2026-08-25 03:46:35,075.075 INFO    ] Checking for camera pi updates...
[2026-08-25 03:46:35,108.108 INFO    ] 200
[2026-08-25 03:46:35,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:35,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:46:35,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:46:35,218.218 INFO    ] No camera update needed
[2026-08-25 03:46:35,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:46:35,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:46:35,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:46:35,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:46:37,273.273 INFO    ] ================================================
[2026-08-25 03:46:37,289.289 INFO    ] Launching Daemon at Tue Aug 25 03:46:37 IST 2026
[2026-08-25 03:46:37,301.301 INFO    ] ================================================
[2026-08-25 03:46:37,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:46:37
[2026-08-25 03:46:38,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:46:38,951.951 INFO    ] Initializing speech engine...
[2026-08-25 03:46:38,966.966 INFO    ] 2026-08-25 03:46:38
[2026-08-25 03:46:39,237.237 INFO    ] 2026-08-25 03:46:39
[2026-08-25 03:46:39,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:46:39,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:46:39,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:46:39,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:46:39,747.747 INFO    ] time= 25/08/2026 03:46:39
[2026-08-25 03:46:39,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:46:39,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:46:39,955.955 INFO    ] No existing commands found in stream
[2026-08-25 03:46:44,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:46:44,978.978 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 03:46:47,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:46:47,916.916 INFO    ] Checking for system updates...
[2026-08-25 03:46:47,956.956 INFO    ] 200
[2026-08-25 03:46:47,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:48,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:46:48,029.029 INFO    ] No update needed
[2026-08-25 03:46:48,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 03:46:48,067.067 INFO    ] 200
[2026-08-25 03:46:48,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:48,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:46:48,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:46:48,262.262 INFO    ] No camera update needed
[2026-08-25 03:46:48,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:46:48,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:46:48,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:46:48,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:46:50,317.317 INFO    ] ================================================
[2026-08-25 03:46:50,332.332 INFO    ] Launching Daemon at Tue Aug 25 03:46:50 IST 2026
[2026-08-25 03:46:50,342.342 INFO    ] ================================================
[2026-08-25 03:46:50,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:46:50
[2026-08-25 03:46:51,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:46:51,783.783 INFO    ] Initializing speech engine...
[2026-08-25 03:46:51,791.791 INFO    ] 2026-08-25 03:46:51
[2026-08-25 03:46:52,038.038 INFO    ] 2026-08-25 03:46:52
[2026-08-25 03:46:52,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:46:52,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:46:52,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:46:52,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:46:52,417.417 INFO    ] time= 25/08/2026 03:46:52
[2026-08-25 03:46:52,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:46:52,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:46:52,593.593 INFO    ] No existing commands found in stream
[2026-08-25 03:46:57,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:46:57,626.626 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 03:46:58,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:46:58,953.953 INFO    ] Checking for system updates...
[2026-08-25 03:46:58,992.992 INFO    ] 200
[2026-08-25 03:46:58,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:59,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:46:59,054.054 INFO    ] No update needed
[2026-08-25 03:46:59,057.057 INFO    ] Checking for camera pi updates...
[2026-08-25 03:46:59,093.093 INFO    ] 200
[2026-08-25 03:46:59,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:46:59,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:46:59,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:46:59,186.186 INFO    ] No camera update needed
[2026-08-25 03:46:59,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:46:59,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:46:59,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:46:59,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:47:01,241.241 INFO    ] ================================================
[2026-08-25 03:47:01,257.257 INFO    ] Launching Daemon at Tue Aug 25 03:47:01 IST 2026
[2026-08-25 03:47:01,268.268 INFO    ] ================================================
[2026-08-25 03:47:01,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:47:01
[2026-08-25 03:47:02,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:47:03,012.012 INFO    ] Initializing speech engine...
[2026-08-25 03:47:03,038.038 INFO    ] 2026-08-25 03:47:03
[2026-08-25 03:47:03,350.350 INFO    ] 2026-08-25 03:47:03
[2026-08-25 03:47:03,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:47:03,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:47:03,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:47:03,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:47:03,764.764 INFO    ] time= 25/08/2026 03:47:03
[2026-08-25 03:47:03,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:47:03,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:47:03,919.919 INFO    ] No existing commands found in stream
[2026-08-25 03:47:08,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:47:08,932.932 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 03:47:12,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:47:12,290.290 INFO    ] Checking for system updates...
[2026-08-25 03:47:12,325.325 INFO    ] 200
[2026-08-25 03:47:12,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:12,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:12,382.382 INFO    ] No update needed
[2026-08-25 03:47:12,385.385 INFO    ] Checking for camera pi updates...
[2026-08-25 03:47:12,419.419 INFO    ] 200
[2026-08-25 03:47:12,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:12,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:47:12,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:12,529.529 INFO    ] No camera update needed
[2026-08-25 03:47:12,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:47:12,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:47:12,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:47:12,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:47:14,586.586 INFO    ] ================================================
[2026-08-25 03:47:14,602.602 INFO    ] Launching Daemon at Tue Aug 25 03:47:14 IST 2026
[2026-08-25 03:47:14,613.613 INFO    ] ================================================
[2026-08-25 03:47:15,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:47:15
[2026-08-25 03:47:15,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:47:16,029.029 INFO    ] Initializing speech engine...
[2026-08-25 03:47:16,035.035 INFO    ] 2026-08-25 03:47:16
[2026-08-25 03:47:16,297.297 INFO    ] 2026-08-25 03:47:16
[2026-08-25 03:47:16,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:47:16,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:47:16,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:47:16,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:47:16,694.694 INFO    ] time= 25/08/2026 03:47:16
[2026-08-25 03:47:16,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:47:16,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:47:16,884.884 INFO    ] No existing commands found in stream
[2026-08-25 03:47:21,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:47:21,902.902 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 03:47:22,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:47:22,872.872 INFO    ] Checking for system updates...
[2026-08-25 03:47:22,913.913 INFO    ] 200
[2026-08-25 03:47:22,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:22,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:22,974.974 INFO    ] No update needed
[2026-08-25 03:47:22,977.977 INFO    ] Checking for camera pi updates...
[2026-08-25 03:47:23,016.016 INFO    ] 200
[2026-08-25 03:47:23,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:23,059.059 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:47:23,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:23,110.110 INFO    ] No camera update needed
[2026-08-25 03:47:23,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:47:23,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:47:23,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:47:23,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:47:25,168.168 INFO    ] ================================================
[2026-08-25 03:47:25,183.183 INFO    ] Launching Daemon at Tue Aug 25 03:47:25 IST 2026
[2026-08-25 03:47:25,195.195 INFO    ] ================================================
[2026-08-25 03:47:25,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:47:25
[2026-08-25 03:47:26,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:47:26,794.794 INFO    ] Initializing speech engine...
[2026-08-25 03:47:26,813.813 INFO    ] 2026-08-25 03:47:26
[2026-08-25 03:47:27,064.064 INFO    ] 2026-08-25 03:47:27
[2026-08-25 03:47:27,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:47:27,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:47:27,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:47:27,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:47:27,440.440 INFO    ] time= 25/08/2026 03:47:27
[2026-08-25 03:47:27,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:47:27,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:47:27,621.621 INFO    ] No existing commands found in stream
[2026-08-25 03:47:32,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:47:32,649.649 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 03:47:33,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:47:33,492.492 INFO    ] Checking for system updates...
[2026-08-25 03:47:33,528.528 INFO    ] 200
[2026-08-25 03:47:33,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:33,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:33,594.594 INFO    ] No update needed
[2026-08-25 03:47:33,598.598 INFO    ] Checking for camera pi updates...
[2026-08-25 03:47:33,640.640 INFO    ] 200
[2026-08-25 03:47:33,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:33,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:47:33,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:33,733.733 INFO    ] No camera update needed
[2026-08-25 03:47:33,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:47:33,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:47:33,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:47:33,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:47:35,792.792 INFO    ] ================================================
[2026-08-25 03:47:35,808.808 INFO    ] Launching Daemon at Tue Aug 25 03:47:35 IST 2026
[2026-08-25 03:47:35,819.819 INFO    ] ================================================
[2026-08-25 03:47:36,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:47:36
[2026-08-25 03:47:36,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:47:37,237.237 INFO    ] Initializing speech engine...
[2026-08-25 03:47:37,247.247 INFO    ] 2026-08-25 03:47:37
[2026-08-25 03:47:37,491.491 INFO    ] 2026-08-25 03:47:37
[2026-08-25 03:47:37,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:47:37,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:47:37,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:47:37,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:47:37,961.961 INFO    ] time= 25/08/2026 03:47:37
[2026-08-25 03:47:38,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:47:38,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:47:38,200.200 INFO    ] No existing commands found in stream
[2026-08-25 03:47:43,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:47:43,217.217 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 03:47:45,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:47:45,401.401 INFO    ] Checking for system updates...
[2026-08-25 03:47:45,436.436 INFO    ] 200
[2026-08-25 03:47:45,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:45,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:45,505.505 INFO    ] No update needed
[2026-08-25 03:47:45,508.508 INFO    ] Checking for camera pi updates...
[2026-08-25 03:47:45,544.544 INFO    ] 200
[2026-08-25 03:47:45,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:45,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:47:45,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:45,639.639 INFO    ] No camera update needed
[2026-08-25 03:47:45,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:47:45,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:47:45,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:47:45,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:47:47,696.696 INFO    ] ================================================
[2026-08-25 03:47:47,711.711 INFO    ] Launching Daemon at Tue Aug 25 03:47:47 IST 2026
[2026-08-25 03:47:47,722.722 INFO    ] ================================================
[2026-08-25 03:47:48,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:47:48
[2026-08-25 03:47:48,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:47:49,181.181 INFO    ] Initializing speech engine...
[2026-08-25 03:47:49,190.190 INFO    ] 2026-08-25 03:47:49
[2026-08-25 03:47:49,445.445 INFO    ] 2026-08-25 03:47:49
[2026-08-25 03:47:49,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:47:49,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:47:49,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:47:49,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:47:49,914.914 INFO    ] time= 25/08/2026 03:47:49
[2026-08-25 03:47:49,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:47:50,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:47:50,119.119 INFO    ] No existing commands found in stream
[2026-08-25 03:47:55,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:47:55,158.158 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 03:47:59,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:47:59,509.509 INFO    ] Checking for system updates...
[2026-08-25 03:47:59,546.546 INFO    ] 200
[2026-08-25 03:47:59,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:59,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:59,611.611 INFO    ] No update needed
[2026-08-25 03:47:59,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 03:47:59,647.647 INFO    ] 200
[2026-08-25 03:47:59,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:47:59,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:47:59,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:47:59,745.745 INFO    ] No camera update needed
[2026-08-25 03:47:59,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:47:59,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:47:59,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:47:59,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:48:01,799.799 INFO    ] ================================================
[2026-08-25 03:48:01,814.814 INFO    ] Launching Daemon at Tue Aug 25 03:48:01 IST 2026
[2026-08-25 03:48:01,837.837 INFO    ] ================================================
[2026-08-25 03:48:02,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:48:02
[2026-08-25 03:48:03,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:48:03,644.644 INFO    ] Initializing speech engine...
[2026-08-25 03:48:03,653.653 INFO    ] 2026-08-25 03:48:03
[2026-08-25 03:48:03,903.903 INFO    ] 2026-08-25 03:48:03
[2026-08-25 03:48:03,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:48:04,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:48:04,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:48:04,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:48:04,379.379 INFO    ] time= 25/08/2026 03:48:04
[2026-08-25 03:48:04,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:48:04,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:48:04,567.567 INFO    ] No existing commands found in stream
[2026-08-25 03:48:09,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:48:09,602.602 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 03:48:13,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:48:13,017.017 INFO    ] Checking for system updates...
[2026-08-25 03:48:13,059.059 INFO    ] 200
[2026-08-25 03:48:13,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:13,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:48:13,123.123 INFO    ] No update needed
[2026-08-25 03:48:13,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 03:48:13,159.159 INFO    ] 200
[2026-08-25 03:48:13,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:13,203.203 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:48:13,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:48:13,256.256 INFO    ] No camera update needed
[2026-08-25 03:48:13,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:48:13,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:48:13,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:48:13,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:48:15,312.312 INFO    ] ================================================
[2026-08-25 03:48:15,328.328 INFO    ] Launching Daemon at Tue Aug 25 03:48:15 IST 2026
[2026-08-25 03:48:15,339.339 INFO    ] ================================================
[2026-08-25 03:48:15,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:48:15
[2026-08-25 03:48:16,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:48:16,920.920 INFO    ] Initializing speech engine...
[2026-08-25 03:48:16,926.926 INFO    ] 2026-08-25 03:48:16
[2026-08-25 03:48:17,187.187 INFO    ] 2026-08-25 03:48:17
[2026-08-25 03:48:17,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:48:17,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:48:17,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:48:17,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:48:17,649.649 INFO    ] time= 25/08/2026 03:48:17
[2026-08-25 03:48:17,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:48:17,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:48:17,872.872 INFO    ] No existing commands found in stream
[2026-08-25 03:48:22,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:48:22,893.893 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 03:48:24,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:48:24,163.163 INFO    ] Checking for system updates...
[2026-08-25 03:48:24,202.202 INFO    ] 200
[2026-08-25 03:48:24,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:24,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:48:24,266.266 INFO    ] No update needed
[2026-08-25 03:48:24,269.269 INFO    ] Checking for camera pi updates...
[2026-08-25 03:48:24,302.302 INFO    ] 200
[2026-08-25 03:48:24,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:24,350.350 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:48:24,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:48:24,399.399 INFO    ] No camera update needed
[2026-08-25 03:48:24,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:48:24,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:48:24,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:48:24,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:48:26,454.454 INFO    ] ================================================
[2026-08-25 03:48:26,470.470 INFO    ] Launching Daemon at Tue Aug 25 03:48:26 IST 2026
[2026-08-25 03:48:26,481.481 INFO    ] ================================================
[2026-08-25 03:48:27,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:48:27
[2026-08-25 03:48:27,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:48:27,970.970 INFO    ] Initializing speech engine...
[2026-08-25 03:48:27,973.973 INFO    ] 2026-08-25 03:48:27
[2026-08-25 03:48:28,229.229 INFO    ] 2026-08-25 03:48:28
[2026-08-25 03:48:28,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:48:28,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:48:28,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:48:28,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:48:28,606.606 INFO    ] time= 25/08/2026 03:48:28
[2026-08-25 03:48:28,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:48:28,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:48:28,793.793 INFO    ] No existing commands found in stream
[2026-08-25 03:48:33,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:48:33,818.818 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 03:48:35,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:48:35,687.687 INFO    ] Checking for system updates...
[2026-08-25 03:48:35,722.722 INFO    ] 200
[2026-08-25 03:48:35,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:35,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:48:35,779.779 INFO    ] No update needed
[2026-08-25 03:48:35,782.782 INFO    ] Checking for camera pi updates...
[2026-08-25 03:48:35,820.820 INFO    ] 200
[2026-08-25 03:48:35,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:35,867.867 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:48:35,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:48:35,918.918 INFO    ] No camera update needed
[2026-08-25 03:48:35,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:48:35,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:48:35,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:48:35,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:48:37,972.972 INFO    ] ================================================
[2026-08-25 03:48:37,988.988 INFO    ] Launching Daemon at Tue Aug 25 03:48:37 IST 2026
[2026-08-25 03:48:38,000.000 INFO    ] ================================================
[2026-08-25 03:48:38,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:48:38
[2026-08-25 03:48:39,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:48:39,642.642 INFO    ] Initializing speech engine...
[2026-08-25 03:48:39,651.651 INFO    ] 2026-08-25 03:48:39
[2026-08-25 03:48:39,968.968 INFO    ] 2026-08-25 03:48:39
[2026-08-25 03:48:40,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:48:40,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:48:40,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:48:40,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:48:40,479.479 INFO    ] time= 25/08/2026 03:48:40
[2026-08-25 03:48:40,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:48:40,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:48:40,674.674 INFO    ] No existing commands found in stream
[2026-08-25 03:48:45,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:48:45,708.708 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 03:48:48,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:48:48,264.264 INFO    ] Checking for system updates...
[2026-08-25 03:48:48,301.301 INFO    ] 200
[2026-08-25 03:48:48,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:48,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:48:48,362.362 INFO    ] No update needed
[2026-08-25 03:48:48,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 03:48:48,404.404 INFO    ] 200
[2026-08-25 03:48:48,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:48:48,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:48:48,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:48:48,501.501 INFO    ] No camera update needed
[2026-08-25 03:48:48,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:48:48,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:48:48,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:48:48,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:48:50,556.556 INFO    ] ================================================
[2026-08-25 03:48:50,571.571 INFO    ] Launching Daemon at Tue Aug 25 03:48:50 IST 2026
[2026-08-25 03:48:50,582.582 INFO    ] ================================================
[2026-08-25 03:48:51,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:48:51
[2026-08-25 03:48:51,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:48:52,045.045 INFO    ] Initializing speech engine...
[2026-08-25 03:48:52,061.061 INFO    ] 2026-08-25 03:48:52
[2026-08-25 03:48:52,337.337 INFO    ] 2026-08-25 03:48:52
[2026-08-25 03:48:52,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:48:52,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:48:52,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:48:52,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:48:52,721.721 INFO    ] time= 25/08/2026 03:48:52
[2026-08-25 03:48:52,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:48:52,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:48:52,846.846 INFO    ] No existing commands found in stream
[2026-08-25 03:48:57,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:48:57,861.861 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 03:49:00,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:49:00,446.446 INFO    ] Checking for system updates...
[2026-08-25 03:49:00,483.483 INFO    ] 200
[2026-08-25 03:49:00,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:00,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:49:00,543.543 INFO    ] No update needed
[2026-08-25 03:49:00,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 03:49:00,580.580 INFO    ] 200
[2026-08-25 03:49:00,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:00,629.629 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:49:00,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:49:00,790.790 INFO    ] No camera update needed
[2026-08-25 03:49:00,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:49:00,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:49:00,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:49:00,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:49:02,848.848 INFO    ] ================================================
[2026-08-25 03:49:02,870.870 INFO    ] Launching Daemon at Tue Aug 25 03:49:02 IST 2026
[2026-08-25 03:49:02,882.882 INFO    ] ================================================
[2026-08-25 03:49:03,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:49:03
[2026-08-25 03:49:04,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:49:04,386.386 INFO    ] Initializing speech engine...
[2026-08-25 03:49:04,396.396 INFO    ] 2026-08-25 03:49:04
[2026-08-25 03:49:04,694.694 INFO    ] 2026-08-25 03:49:04
[2026-08-25 03:49:04,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:49:04,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:49:04,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:49:05,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:49:05,081.081 INFO    ] time= 25/08/2026 03:49:05
[2026-08-25 03:49:05,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:49:05,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:49:05,206.206 INFO    ] No existing commands found in stream
[2026-08-25 03:49:10,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:49:10,221.221 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 03:49:11,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:49:11,125.125 INFO    ] Checking for system updates...
[2026-08-25 03:49:11,165.165 INFO    ] 200
[2026-08-25 03:49:11,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:11,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:49:11,222.222 INFO    ] No update needed
[2026-08-25 03:49:11,224.224 INFO    ] Checking for camera pi updates...
[2026-08-25 03:49:11,257.257 INFO    ] 200
[2026-08-25 03:49:11,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:11,303.303 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:49:11,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:49:11,351.351 INFO    ] No camera update needed
[2026-08-25 03:49:11,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:49:11,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:49:11,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:49:11,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:49:13,405.405 INFO    ] ================================================
[2026-08-25 03:49:13,421.421 INFO    ] Launching Daemon at Tue Aug 25 03:49:13 IST 2026
[2026-08-25 03:49:13,431.431 INFO    ] ================================================
[2026-08-25 03:49:13,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:49:13
[2026-08-25 03:49:14,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:49:14,883.883 INFO    ] Initializing speech engine...
[2026-08-25 03:49:14,898.898 INFO    ] 2026-08-25 03:49:14
[2026-08-25 03:49:15,172.172 INFO    ] 2026-08-25 03:49:15
[2026-08-25 03:49:15,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:49:15,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:49:15,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:49:15,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:49:15,662.662 INFO    ] time= 25/08/2026 03:49:15
[2026-08-25 03:49:15,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:49:15,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:49:15,863.863 INFO    ] No existing commands found in stream
[2026-08-25 03:49:20,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:49:20,898.898 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 03:49:24,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:49:24,384.384 INFO    ] Checking for system updates...
[2026-08-25 03:49:24,420.420 INFO    ] 200
[2026-08-25 03:49:24,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:24,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:49:24,479.479 INFO    ] No update needed
[2026-08-25 03:49:24,482.482 INFO    ] Checking for camera pi updates...
[2026-08-25 03:49:24,516.516 INFO    ] 200
[2026-08-25 03:49:24,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:24,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:49:24,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:49:24,610.610 INFO    ] No camera update needed
[2026-08-25 03:49:24,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:49:24,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:49:24,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:49:24,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:49:26,665.665 INFO    ] ================================================
[2026-08-25 03:49:26,680.680 INFO    ] Launching Daemon at Tue Aug 25 03:49:26 IST 2026
[2026-08-25 03:49:26,690.690 INFO    ] ================================================
[2026-08-25 03:49:27,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:49:27
[2026-08-25 03:49:27,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:49:28,172.172 INFO    ] Initializing speech engine...
[2026-08-25 03:49:28,178.178 INFO    ] 2026-08-25 03:49:28
[2026-08-25 03:49:28,432.432 INFO    ] 2026-08-25 03:49:28
[2026-08-25 03:49:28,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:49:28,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:49:28,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:49:28,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:49:28,927.927 INFO    ] time= 25/08/2026 03:49:28
[2026-08-25 03:49:28,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:49:29,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:49:29,143.143 INFO    ] No existing commands found in stream
[2026-08-25 03:49:34,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:49:34,170.170 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 03:49:37,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:49:37,153.153 INFO    ] Checking for system updates...
[2026-08-25 03:49:37,193.193 INFO    ] 200
[2026-08-25 03:49:37,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:37,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:49:37,256.256 INFO    ] No update needed
[2026-08-25 03:49:37,259.259 INFO    ] Checking for camera pi updates...
[2026-08-25 03:49:37,296.296 INFO    ] 200
[2026-08-25 03:49:37,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:37,344.344 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:49:37,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:49:37,394.394 INFO    ] No camera update needed
[2026-08-25 03:49:37,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:49:37,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:49:37,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:49:37,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:49:39,453.453 INFO    ] ================================================
[2026-08-25 03:49:39,468.468 INFO    ] Launching Daemon at Tue Aug 25 03:49:39 IST 2026
[2026-08-25 03:49:39,479.479 INFO    ] ================================================
[2026-08-25 03:49:40,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:49:40
[2026-08-25 03:49:40,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:49:41,108.108 INFO    ] Initializing speech engine...
[2026-08-25 03:49:41,121.121 INFO    ] 2026-08-25 03:49:41
[2026-08-25 03:49:41,398.398 INFO    ] 2026-08-25 03:49:41
[2026-08-25 03:49:41,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:49:41,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:49:41,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:49:41,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:49:41,858.858 INFO    ] time= 25/08/2026 03:49:41
[2026-08-25 03:49:41,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:49:41,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:49:42,073.073 INFO    ] No existing commands found in stream
[2026-08-25 03:49:47,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:49:47,101.101 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 03:49:51,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:49:51,300.300 INFO    ] Checking for system updates...
[2026-08-25 03:49:51,338.338 INFO    ] 200
[2026-08-25 03:49:51,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:51,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:49:51,402.402 INFO    ] No update needed
[2026-08-25 03:49:51,404.404 INFO    ] Checking for camera pi updates...
[2026-08-25 03:49:51,438.438 INFO    ] 200
[2026-08-25 03:49:51,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:49:51,480.480 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:49:51,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:49:51,533.533 INFO    ] No camera update needed
[2026-08-25 03:49:51,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:49:51,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:49:51,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:49:51,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:49:53,592.592 INFO    ] ================================================
[2026-08-25 03:49:53,607.607 INFO    ] Launching Daemon at Tue Aug 25 03:49:53 IST 2026
[2026-08-25 03:49:53,618.618 INFO    ] ================================================
[2026-08-25 03:49:54,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:49:54
[2026-08-25 03:49:54,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:49:55,194.194 INFO    ] Initializing speech engine...
[2026-08-25 03:49:55,207.207 INFO    ] 2026-08-25 03:49:55
[2026-08-25 03:49:55,489.489 INFO    ] 2026-08-25 03:49:55
[2026-08-25 03:49:55,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:49:55,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:49:55,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:49:55,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:49:56,018.018 INFO    ] time= 25/08/2026 03:49:55
[2026-08-25 03:49:56,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:49:56,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:49:56,157.157 INFO    ] No existing commands found in stream
[2026-08-25 03:50:01,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:50:01,185.185 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 03:50:07,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:50:07,960.960 INFO    ] Checking for system updates...
[2026-08-25 03:50:07,996.996 INFO    ] 200
[2026-08-25 03:50:07,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:08,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:50:08,056.056 INFO    ] No update needed
[2026-08-25 03:50:08,059.059 INFO    ] Checking for camera pi updates...
[2026-08-25 03:50:08,092.092 INFO    ] 200
[2026-08-25 03:50:08,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:08,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:50:08,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:50:08,199.199 INFO    ] No camera update needed
[2026-08-25 03:50:08,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:50:08,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:50:08,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:50:08,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:50:10,257.257 INFO    ] ================================================
[2026-08-25 03:50:10,272.272 INFO    ] Launching Daemon at Tue Aug 25 03:50:10 IST 2026
[2026-08-25 03:50:10,283.283 INFO    ] ================================================
[2026-08-25 03:50:10,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:50:10
[2026-08-25 03:50:11,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:50:11,745.745 INFO    ] Initializing speech engine...
[2026-08-25 03:50:11,753.753 INFO    ] 2026-08-25 03:50:11
[2026-08-25 03:50:12,032.032 INFO    ] 2026-08-25 03:50:12
[2026-08-25 03:50:12,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:50:12,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:50:12,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:50:12,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:50:12,566.566 INFO    ] time= 25/08/2026 03:50:12
[2026-08-25 03:50:12,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:50:12,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:50:12,721.721 INFO    ] No existing commands found in stream
[2026-08-25 03:50:17,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:50:17,743.743 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 03:50:18,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:50:18,931.931 INFO    ] Checking for system updates...
[2026-08-25 03:50:18,967.967 INFO    ] 200
[2026-08-25 03:50:18,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:19,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:50:19,024.024 INFO    ] No update needed
[2026-08-25 03:50:19,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 03:50:19,067.067 INFO    ] 200
[2026-08-25 03:50:19,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:19,110.110 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:50:19,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:50:19,169.169 INFO    ] No camera update needed
[2026-08-25 03:50:19,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:50:19,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:50:19,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:50:19,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:50:21,226.226 INFO    ] ================================================
[2026-08-25 03:50:21,240.240 INFO    ] Launching Daemon at Tue Aug 25 03:50:21 IST 2026
[2026-08-25 03:50:21,251.251 INFO    ] ================================================
[2026-08-25 03:50:21,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:50:21
[2026-08-25 03:50:22,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:50:22,806.806 INFO    ] Initializing speech engine...
[2026-08-25 03:50:22,814.814 INFO    ] 2026-08-25 03:50:22
[2026-08-25 03:50:23,093.093 INFO    ] 2026-08-25 03:50:23
[2026-08-25 03:50:23,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:50:23,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:50:23,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:50:23,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:50:23,625.625 INFO    ] time= 25/08/2026 03:50:23
[2026-08-25 03:50:23,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:50:23,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:50:23,765.765 INFO    ] No existing commands found in stream
[2026-08-25 03:50:28,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:50:28,792.792 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 03:50:30,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:50:30,774.774 INFO    ] Checking for system updates...
[2026-08-25 03:50:30,810.810 INFO    ] 200
[2026-08-25 03:50:30,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:30,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:50:30,869.869 INFO    ] No update needed
[2026-08-25 03:50:30,872.872 INFO    ] Checking for camera pi updates...
[2026-08-25 03:50:30,906.906 INFO    ] 200
[2026-08-25 03:50:30,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:30,949.949 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:50:31,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:50:31,011.011 INFO    ] No camera update needed
[2026-08-25 03:50:31,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:50:31,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:50:31,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:50:31,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:50:33,073.073 INFO    ] ================================================
[2026-08-25 03:50:33,098.098 INFO    ] Launching Daemon at Tue Aug 25 03:50:33 IST 2026
[2026-08-25 03:50:33,111.111 INFO    ] ================================================
[2026-08-25 03:50:33,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:50:33
[2026-08-25 03:50:34,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:50:34,546.546 INFO    ] Initializing speech engine...
[2026-08-25 03:50:34,565.565 INFO    ] 2026-08-25 03:50:34
[2026-08-25 03:50:34,826.826 INFO    ] 2026-08-25 03:50:34
[2026-08-25 03:50:34,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:50:35,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:50:35,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:50:35,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:50:35,222.222 INFO    ] time= 25/08/2026 03:50:35
[2026-08-25 03:50:35,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:50:35,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:50:35,376.376 INFO    ] No existing commands found in stream
[2026-08-25 03:50:40,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:50:40,408.408 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 03:50:41,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:50:41,317.317 INFO    ] Checking for system updates...
[2026-08-25 03:50:41,354.354 INFO    ] 200
[2026-08-25 03:50:41,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:41,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:50:41,411.411 INFO    ] No update needed
[2026-08-25 03:50:41,413.413 INFO    ] Checking for camera pi updates...
[2026-08-25 03:50:41,447.447 INFO    ] 200
[2026-08-25 03:50:41,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:41,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:50:41,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:50:41,538.538 INFO    ] No camera update needed
[2026-08-25 03:50:41,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:50:41,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:50:41,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:50:41,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:50:43,595.595 INFO    ] ================================================
[2026-08-25 03:50:43,611.611 INFO    ] Launching Daemon at Tue Aug 25 03:50:43 IST 2026
[2026-08-25 03:50:43,622.622 INFO    ] ================================================
[2026-08-25 03:50:44,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:50:44
[2026-08-25 03:50:44,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:50:45,074.074 INFO    ] Initializing speech engine...
[2026-08-25 03:50:45,083.083 INFO    ] 2026-08-25 03:50:45
[2026-08-25 03:50:45,345.345 INFO    ] 2026-08-25 03:50:45
[2026-08-25 03:50:45,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:50:45,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:50:45,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:50:45,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:50:45,811.811 INFO    ] time= 25/08/2026 03:50:45
[2026-08-25 03:50:45,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:50:45,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:50:46,045.045 INFO    ] No existing commands found in stream
[2026-08-25 03:50:51,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:50:51,063.063 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 03:50:53,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:50:53,841.841 INFO    ] Checking for system updates...
[2026-08-25 03:50:53,877.877 INFO    ] 200
[2026-08-25 03:50:53,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:53,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:50:53,939.939 INFO    ] No update needed
[2026-08-25 03:50:53,941.941 INFO    ] Checking for camera pi updates...
[2026-08-25 03:50:53,974.974 INFO    ] 200
[2026-08-25 03:50:53,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:50:54,016.016 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:50:54,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:50:54,090.090 INFO    ] No camera update needed
[2026-08-25 03:50:54,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:50:54,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:50:54,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:50:54,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:50:56,145.145 INFO    ] ================================================
[2026-08-25 03:50:56,161.161 INFO    ] Launching Daemon at Tue Aug 25 03:50:56 IST 2026
[2026-08-25 03:50:56,172.172 INFO    ] ================================================
[2026-08-25 03:50:56,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:50:56
[2026-08-25 03:50:57,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:50:57,722.722 INFO    ] Initializing speech engine...
[2026-08-25 03:50:57,729.729 INFO    ] 2026-08-25 03:50:57
[2026-08-25 03:50:58,001.001 INFO    ] 2026-08-25 03:50:57
[2026-08-25 03:50:58,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:50:58,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:50:58,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:50:58,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:50:58,533.533 INFO    ] time= 25/08/2026 03:50:58
[2026-08-25 03:50:58,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:50:58,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:50:58,681.681 INFO    ] No existing commands found in stream
[2026-08-25 03:51:03,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:51:03,698.698 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 03:51:07,112.112 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:51:07,114.114 INFO    ] Checking for system updates...
[2026-08-25 03:51:07,150.150 INFO    ] 200
[2026-08-25 03:51:07,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:07,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:51:07,210.210 INFO    ] No update needed
[2026-08-25 03:51:07,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 03:51:07,245.245 INFO    ] 200
[2026-08-25 03:51:07,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:07,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:51:07,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:51:07,432.432 INFO    ] No camera update needed
[2026-08-25 03:51:07,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:51:07,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:51:07,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:51:07,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:51:09,488.488 INFO    ] ================================================
[2026-08-25 03:51:09,503.503 INFO    ] Launching Daemon at Tue Aug 25 03:51:09 IST 2026
[2026-08-25 03:51:09,515.515 INFO    ] ================================================
[2026-08-25 03:51:10,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:51:10
[2026-08-25 03:51:10,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:51:10,967.967 INFO    ] Initializing speech engine...
[2026-08-25 03:51:10,977.977 INFO    ] 2026-08-25 03:51:10
[2026-08-25 03:51:11,236.236 INFO    ] 2026-08-25 03:51:11
[2026-08-25 03:51:11,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:51:11,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:51:11,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:51:11,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:51:11,724.724 INFO    ] time= 25/08/2026 03:51:11
[2026-08-25 03:51:11,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:51:11,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:51:11,908.908 INFO    ] No existing commands found in stream
[2026-08-25 03:51:16,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:51:16,922.922 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 03:51:17,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:51:17,708.708 INFO    ] Checking for system updates...
[2026-08-25 03:51:17,745.745 INFO    ] 200
[2026-08-25 03:51:17,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:17,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:51:17,811.811 INFO    ] No update needed
[2026-08-25 03:51:17,813.813 INFO    ] Checking for camera pi updates...
[2026-08-25 03:51:17,849.849 INFO    ] 200
[2026-08-25 03:51:17,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:17,892.892 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:51:17,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:51:17,942.942 INFO    ] No camera update needed
[2026-08-25 03:51:17,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:51:17,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:51:17,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:51:17,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:51:20,998.998 INFO    ] ================================================
[2026-08-25 03:51:20,014.014 INFO    ] Launching Daemon at Tue Aug 25 03:51:20 IST 2026
[2026-08-25 03:51:20,025.025 INFO    ] ================================================
[2026-08-25 03:51:20,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:51:20
[2026-08-25 03:51:21,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:51:21,478.478 INFO    ] Initializing speech engine...
[2026-08-25 03:51:21,486.486 INFO    ] 2026-08-25 03:51:21
[2026-08-25 03:51:21,748.748 INFO    ] 2026-08-25 03:51:21
[2026-08-25 03:51:21,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:51:21,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:51:21,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:51:22,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:51:22,147.147 INFO    ] time= 25/08/2026 03:51:22
[2026-08-25 03:51:22,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:51:22,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:51:22,320.320 INFO    ] No existing commands found in stream
[2026-08-25 03:51:27,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:51:27,348.348 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 03:51:28,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:51:28,945.945 INFO    ] Checking for system updates...
[2026-08-25 03:51:28,981.981 INFO    ] 200
[2026-08-25 03:51:28,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:29,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:51:29,040.040 INFO    ] No update needed
[2026-08-25 03:51:29,042.042 INFO    ] Checking for camera pi updates...
[2026-08-25 03:51:29,075.075 INFO    ] 200
[2026-08-25 03:51:29,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:29,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:51:29,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:51:29,173.173 INFO    ] No camera update needed
[2026-08-25 03:51:29,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:51:29,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:51:29,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:51:29,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:51:31,231.231 INFO    ] ================================================
[2026-08-25 03:51:31,247.247 INFO    ] Launching Daemon at Tue Aug 25 03:51:31 IST 2026
[2026-08-25 03:51:31,260.260 INFO    ] ================================================
[2026-08-25 03:51:31,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:51:31
[2026-08-25 03:51:32,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:51:32,810.810 INFO    ] Initializing speech engine...
[2026-08-25 03:51:32,819.819 INFO    ] 2026-08-25 03:51:32
[2026-08-25 03:51:33,126.126 INFO    ] 2026-08-25 03:51:33
[2026-08-25 03:51:33,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:51:33,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:51:33,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:51:33,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:51:33,543.543 INFO    ] time= 25/08/2026 03:51:33
[2026-08-25 03:51:33,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:51:33,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:51:33,758.758 INFO    ] No existing commands found in stream
[2026-08-25 03:51:38,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:51:38,781.781 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 03:51:41,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:51:41,918.918 INFO    ] Checking for system updates...
[2026-08-25 03:51:41,953.953 INFO    ] 200
[2026-08-25 03:51:41,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:42,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:51:42,014.014 INFO    ] No update needed
[2026-08-25 03:51:42,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 03:51:42,050.050 INFO    ] 200
[2026-08-25 03:51:42,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:42,092.092 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:51:42,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:51:42,142.142 INFO    ] No camera update needed
[2026-08-25 03:51:42,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:51:42,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:51:42,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:51:42,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:51:44,198.198 INFO    ] ================================================
[2026-08-25 03:51:44,213.213 INFO    ] Launching Daemon at Tue Aug 25 03:51:44 IST 2026
[2026-08-25 03:51:44,224.224 INFO    ] ================================================
[2026-08-25 03:51:44,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:51:44
[2026-08-25 03:51:45,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:51:45,637.637 INFO    ] Initializing speech engine...
[2026-08-25 03:51:45,646.646 INFO    ] 2026-08-25 03:51:45
[2026-08-25 03:51:45,938.938 INFO    ] 2026-08-25 03:51:45
[2026-08-25 03:51:45,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:51:46,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:51:46,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:51:46,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:51:46,353.353 INFO    ] time= 25/08/2026 03:51:46
[2026-08-25 03:51:46,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:51:46,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:51:46,539.539 INFO    ] No existing commands found in stream
[2026-08-25 03:51:51,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:51:51,567.567 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 03:51:54,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:51:54,294.294 INFO    ] Checking for system updates...
[2026-08-25 03:51:54,332.332 INFO    ] 200
[2026-08-25 03:51:54,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:54,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:51:54,389.389 INFO    ] No update needed
[2026-08-25 03:51:54,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 03:51:54,424.424 INFO    ] 200
[2026-08-25 03:51:54,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:51:54,467.467 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:51:54,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:51:54,530.530 INFO    ] No camera update needed
[2026-08-25 03:51:54,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:51:54,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:51:54,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:51:54,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:51:56,584.584 INFO    ] ================================================
[2026-08-25 03:51:56,599.599 INFO    ] Launching Daemon at Tue Aug 25 03:51:56 IST 2026
[2026-08-25 03:51:56,610.610 INFO    ] ================================================
[2026-08-25 03:51:57,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:51:57
[2026-08-25 03:51:57,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:51:58,053.053 INFO    ] Initializing speech engine...
[2026-08-25 03:51:58,057.057 INFO    ] 2026-08-25 03:51:58
[2026-08-25 03:51:58,352.352 INFO    ] 2026-08-25 03:51:58
[2026-08-25 03:51:58,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:51:58,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:51:58,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:51:58,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:51:58,855.855 INFO    ] time= 25/08/2026 03:51:58
[2026-08-25 03:51:58,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:51:58,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:51:59,061.061 INFO    ] No existing commands found in stream
[2026-08-25 03:52:04,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:52:04,097.097 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 03:52:05,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:52:05,822.822 INFO    ] Checking for system updates...
[2026-08-25 03:52:05,862.862 INFO    ] 200
[2026-08-25 03:52:05,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:05,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:05,943.943 INFO    ] No update needed
[2026-08-25 03:52:05,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 03:52:05,982.982 INFO    ] 200
[2026-08-25 03:52:05,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:06,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:52:06,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:06,089.089 INFO    ] No camera update needed
[2026-08-25 03:52:06,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:52:06,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:52:06,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:52:06,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:52:08,148.148 INFO    ] ================================================
[2026-08-25 03:52:08,163.163 INFO    ] Launching Daemon at Tue Aug 25 03:52:08 IST 2026
[2026-08-25 03:52:08,175.175 INFO    ] ================================================
[2026-08-25 03:52:08,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:52:08
[2026-08-25 03:52:09,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:52:09,607.607 INFO    ] Initializing speech engine...
[2026-08-25 03:52:09,615.615 INFO    ] 2026-08-25 03:52:09
[2026-08-25 03:52:09,882.882 INFO    ] 2026-08-25 03:52:09
[2026-08-25 03:52:09,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:52:10,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:52:10,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:52:10,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:52:10,345.345 INFO    ] time= 25/08/2026 03:52:10
[2026-08-25 03:52:10,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:52:10,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:52:10,560.560 INFO    ] No existing commands found in stream
[2026-08-25 03:52:15,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:52:15,592.592 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 03:52:16,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:52:16,283.283 INFO    ] Checking for system updates...
[2026-08-25 03:52:16,317.317 INFO    ] 200
[2026-08-25 03:52:16,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:16,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:16,374.374 INFO    ] No update needed
[2026-08-25 03:52:16,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 03:52:16,410.410 INFO    ] 200
[2026-08-25 03:52:16,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:16,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:52:16,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:16,503.503 INFO    ] No camera update needed
[2026-08-25 03:52:16,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:52:16,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:52:16,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:52:16,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:52:18,558.558 INFO    ] ================================================
[2026-08-25 03:52:18,573.573 INFO    ] Launching Daemon at Tue Aug 25 03:52:18 IST 2026
[2026-08-25 03:52:18,584.584 INFO    ] ================================================
[2026-08-25 03:52:19,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:52:19
[2026-08-25 03:52:19,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:52:20,050.050 INFO    ] Initializing speech engine...
[2026-08-25 03:52:20,069.069 INFO    ] 2026-08-25 03:52:20
[2026-08-25 03:52:20,315.315 INFO    ] 2026-08-25 03:52:20
[2026-08-25 03:52:20,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:52:20,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:52:20,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:52:20,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:52:20,788.788 INFO    ] time= 25/08/2026 03:52:20
[2026-08-25 03:52:20,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:52:20,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:52:21,021.021 INFO    ] No existing commands found in stream
[2026-08-25 03:52:26,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:52:26,047.047 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 03:52:27,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:52:27,350.350 INFO    ] Checking for system updates...
[2026-08-25 03:52:27,390.390 INFO    ] 200
[2026-08-25 03:52:27,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:27,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:27,449.449 INFO    ] No update needed
[2026-08-25 03:52:27,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 03:52:27,486.486 INFO    ] 200
[2026-08-25 03:52:27,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:27,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:52:27,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:27,595.595 INFO    ] No camera update needed
[2026-08-25 03:52:27,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:52:27,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:52:27,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:52:27,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:52:29,655.655 INFO    ] ================================================
[2026-08-25 03:52:29,670.670 INFO    ] Launching Daemon at Tue Aug 25 03:52:29 IST 2026
[2026-08-25 03:52:29,681.681 INFO    ] ================================================
[2026-08-25 03:52:30,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:52:30
[2026-08-25 03:52:30,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:52:31,143.143 INFO    ] Initializing speech engine...
[2026-08-25 03:52:31,155.155 INFO    ] 2026-08-25 03:52:31
[2026-08-25 03:52:31,430.430 INFO    ] 2026-08-25 03:52:31
[2026-08-25 03:52:31,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:52:31,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:52:31,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:52:31,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:52:31,764.764 INFO    ] time= 25/08/2026 03:52:31
[2026-08-25 03:52:31,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:52:31,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:52:31,855.855 INFO    ] No existing commands found in stream
[2026-08-25 03:52:36,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:52:36,870.870 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 03:52:39,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:52:39,856.856 INFO    ] Checking for system updates...
[2026-08-25 03:52:39,891.891 INFO    ] 200
[2026-08-25 03:52:39,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:39,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:52:39,948.948 INFO    ] No update needed
[2026-08-25 03:52:39,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 03:52:39,983.983 INFO    ] 200
[2026-08-25 03:52:39,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:40,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:52:40,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:52:40,079.079 INFO    ] No camera update needed
[2026-08-25 03:52:40,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:52:40,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:52:40,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:52:40,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:52:42,136.136 INFO    ] ================================================
[2026-08-25 03:52:42,152.152 INFO    ] Launching Daemon at Tue Aug 25 03:52:42 IST 2026
[2026-08-25 03:52:42,163.163 INFO    ] ================================================
[2026-08-25 03:52:42,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:52:42
[2026-08-25 03:52:43,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:52:43,629.629 INFO    ] Initializing speech engine...
[2026-08-25 03:52:43,643.643 INFO    ] 2026-08-25 03:52:43
[2026-08-25 03:52:43,920.920 INFO    ] 2026-08-25 03:52:43
[2026-08-25 03:52:43,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:52:44,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:52:44,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:52:44,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:52:44,297.297 INFO    ] time= 25/08/2026 03:52:44
[2026-08-25 03:52:44,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:52:44,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:52:44,377.377 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 03:52:44,437.437 INFO    ] Checking historical command: ID=1787610163347-0
[2026-08-25 03:52:44,491.491 INFO    ] process_and_cleanup_command: msg_id=1787610163347-0
[2026-08-25 03:52:44,511.511 INFO    ] is_command_expired: timestamp=2026-08-24T22:22:43.078Z, expiry=30s
[2026-08-25 03:52:44,682.682 INFO    ] Command removed from stream: 1787610163347-0. returning for processing...
[2026-08-25 03:52:44,718.718 INFO    ] ***** get_valid_command
[2026-08-25 03:52:44,773.773 INFO    ] {'timeout': '10', 'command': 'start-order', 'timestamp': '2026-08-24T22:22:43.078Z', 'source': 'webapp', 'data': '{"request_id":"start-order-1787610163077-5t0xxesl6","orderId":"TM03202401260825035151939","is_vending":false}'}
[2026-08-25 03:52:44,803.803 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787610163077-5t0xxesl6', 'orderId': 'TM03202401260825035151939', 'is_vending': False}
[2026-08-25 03:52:44,842.842 INFO    ] Handling start order...
[2026-08-25 03:52:44,901.901 INFO    ] handle_start_order_command
[2026-08-25 03:52:44,974.974 INFO    ] _send_start_order_success: request_id=start-order-1787610163077-5t0xxesl6, order_id=TM03202401260825035151939
[2026-08-25 03:52:45,010.010 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 03:52:45,077.077 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787610165025-0
[2026-08-25 03:52:45,080.080 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 03:52:45,082.082 INFO    ] Checking for system updates...
[2026-08-25 03:52:45,187.187 INFO    ] 200
[2026-08-25 03:52:45,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:45,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:45,306.306 INFO    ] No update needed
[2026-08-25 03:52:45,310.310 INFO    ] Checking for camera pi updates...
[2026-08-25 03:52:45,416.416 INFO    ] 200
[2026-08-25 03:52:45,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:45,527.527 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:52:45,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:52:45,580.580 INFO    ] No camera update needed
[2026-08-25 03:52:45,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:52:45,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:52:45,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:52:45,615.615 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 03:52:45,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:52:47,673.673 INFO    ] ================================================
[2026-08-25 03:52:47,688.688 INFO    ] Launching Daemon at Tue Aug 25 03:52:47 IST 2026
[2026-08-25 03:52:47,699.699 INFO    ] ================================================
[2026-08-25 03:52:48,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:52:48
[2026-08-25 03:52:48,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:52:49,215.215 INFO    ] Initializing speech engine...
[2026-08-25 03:52:49,223.223 INFO    ] 2026-08-25 03:52:49
[2026-08-25 03:52:49,493.493 INFO    ] 2026-08-25 03:52:49
[2026-08-25 03:52:49,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:52:49,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:52:49,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:52:49,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:52:49,949.949 INFO    ] time= 25/08/2026 03:52:49
[2026-08-25 03:52:49,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:52:49,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:52:50,089.089 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 03:52:50,097.097 INFO    ] Checking historical command: ID=1787610165025-0
[2026-08-25 03:52:50,114.114 INFO    ] process_and_cleanup_command: msg_id=1787610165025-0
[2026-08-25 03:52:50,129.129 INFO    ] is_command_expired: timestamp=2026-08-24T22:22:44.981083Z, expiry=30s
[2026-08-25 03:52:50,274.274 INFO    ] Command removed from stream: 1787610165025-0. returning for processing...
[2026-08-25 03:52:50,312.312 INFO    ] ***** get_valid_command
[2026-08-25 03:52:50,371.371 INFO    ] {'metadata_request_id': 'start-order-1787610163077-5t0xxesl6', 'timestamp': '2026-08-24T22:22:44.981083Z', 'metadata_order_id': 'TM03202401260825035151939', 'imei': 'TM03202401', 'message_type': 'command_response', 'status': 'success', 'message': 'start-order success'}
[2026-08-25 03:52:50,404.404 INFO    ] Checking historical command: ID=1787610166865-0
[2026-08-25 03:52:50,460.460 INFO    ] process_and_cleanup_command: msg_id=1787610166865-0
[2026-08-25 03:52:50,521.521 INFO    ] is_command_expired: timestamp=2026-08-24T22:22:46.668Z, expiry=30s
[2026-08-25 03:52:50,606.606 INFO    ] Command removed from stream: 1787610166865-0. returning for processing...
[2026-08-25 03:52:50,629.629 INFO    ] ***** get_valid_command
[2026-08-25 03:52:50,632.632 INFO    ] {'source': 'webapp', 'data': '{"request_id":"process-order-1787610166668-ppjekrbuu","orderId":"TM03202401260825035151939","is_vending":false,"accessCode":"88292987"}', 'command': 'process-order', 'timestamp': '2026-08-24T22:22:46.668Z', 'timeout': '60'}
[2026-08-25 03:52:50,636.636 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1787610166668-ppjekrbuu', 'accessCode': '88292987', 'orderId': 'TM03202401260825035151939', 'is_vending': False}
[2026-08-25 03:52:50,640.640 INFO    ] Handling process order...
[2026-08-25 03:52:50,686.686 INFO    ] Processing process-order command...
[2026-08-25 03:52:50,773.773 INFO    ] 🔍 Lock file Order ID: TM03202401260825035151939, TS: 2026-08-25 03:52:44
[2026-08-25 03:52:50,790.790 INFO    ] ✅ Order lock valid for TM03202401260825035151939
[2026-08-25 03:52:50,829.829 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 03:52:50,843.843 INFO    ] processing access code 88292987 for order TM03202401260825035151939
[2026-08-25 03:52:50,847.847 INFO    ] 🔍 Lock file Order ID: TM03202401260825035151939, TS: 2026-08-25 03:52:44
[2026-08-25 03:52:50,855.855 INFO    ] ✅ Order lock valid for TM03202401260825035151939
[2026-08-25 03:52:50,901.901 INFO    ] 2026-08-25 03:52:50
[2026-08-25 03:52:50,947.947 INFO    ] 200
[2026-08-25 03:52:50,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:52:50,955.955 INFO    ] 88292987
[2026-08-25 03:52:50,958.958 INFO    ] 2026-08-25 03:52:50
[2026-08-25 03:52:50,961.961 INFO    ] session id :942077132
[2026-08-25 03:52:50,964.964 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=88292987&imei=TM03202401&session_id=942077132
[2026-08-25 03:52:52,048.048 INFO    ] 200
[2026-08-25 03:52:52,102.102 INFO    ] {"data": {"access_code": "88292987", "order_id": "TM03202401260825035151939", "bill_amount": "10", "invoice_bill": "10", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500725", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "tray_id": "14", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm", "sku_total": 10}], "mobile": "6383974519"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 03:52:52,107.107 INFO    ] 10
[2026-08-25 03:52:52,118.118 INFO    ] TM03202401260825035151939
[2026-08-25 03:52:52,123.123 INFO    ] 6383974519
[2026-08-25 03:52:52,135.135 INFO    ] 2026-08-25 03:52:52
[2026-08-25 03:52:52,163.163 INFO    ] Door Opening for user mobile ending with  four five one nine 
[2026-08-25 03:52:52,173.173 INFO    ] Door Opening for user mobile ending with  four five one nine 
[2026-08-25 03:52:52,192.192 INFO    ] ee6f7eb33c5f873be93b98c60d985394
[2026-08-25 03:52:52,200.200 INFO    ] 2026-08-25 03:52:52
[2026-08-25 03:52:52,206.206 INFO    ] playing audio file
[2026-08-25 03:52:52,247.247 INFO    ] 2026-08-25 03:52:52
[2026-08-25 03:52:52,269.269 INFO    ] 2026-08-25 03:52:52
[2026-08-25 03:52:52,284.284 INFO    ] publish_status: order_id=TM03202401260825035151939
[2026-08-25 03:52:52,298.298 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825035151939
[2026-08-25 03:52:52,400.400 INFO    ] [publish_status] Message added to stream with ID: 1787610172351-0
[2026-08-25 03:52:52,409.409 INFO    ] Published to order:TM03202401260825035151939: {'server_response': '{"rstatus": true, "data": {"access_code": "88292987", "invoice_bill": "10", "bill_amount": "10", "order_id": "TM03202401260825035151939", "proposed_sku_json": [{"qty": 1, "mrp": "10", "name": "Maxvita Coconut Cookies 40gm", "offer_desc": "", "unit_price": 10, "offer_id": "", "tray_id": "14", "skuid": "4500725", "image_url": "https://images.tinymart.in/product/4500725-5961.png", "door_id": "1", "sku_total": 10}], "mobile": "6383974519"}, "status": true, "msg": "Order Data"}', 'server_status': 'order-started', 'timestamp': '2026-08-24T22:22:52.276550Z', 'order_id': 'TM03202401260825035151939'} (ID: 1787610172351-0)
[2026-08-25 03:52:52,942.942 INFO    ] {'server_response': {'rstatus': True, 'data': {'access_code': '88292987', 'invoice_bill': '10', 'bill_amount': '10', 'order_id': 'TM03202401260825035151939', 'proposed_sku_json': [{'qty': 1, 'mrp': '10', 'name': 'Maxvita Coconut Cookies 40gm', 'offer_desc': '', 'unit_price': 10, 'offer_id': '', 'tray_id': '14', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '1', 'sku_total': 10}], 'mobile': '6383974519'}, 'status': True, 'msg': 'Order Data'}, 'server_status': 'order-started', 'order_id': 'TM03202401260825035151939'}
[2026-08-25 03:52:52,945.945 INFO    ] 200
[2026-08-25 03:52:52,947.947 INFO    ] {"data":{"server_response":{"rstatus":true,"data":{"access_code":"88292987","invoice_bill":"10","bill_amount":"10","order_id":"TM03202401260825035151939","proposed_sku_json":[{"qty":1,"mrp":"10","name":"Maxvita Coconut Cookies 40gm","offer_desc":"","unit_price":10,"offer_id":"","tray_id":"14","skuid":"4500725","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","door_id":"1","sku_total":10}],"mobile":"6383974519"},"status":true,"msg":"Order Data"},"server_status":"order-started","order_id":"TM03202401260825035151939"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:52:52,950.950 INFO    ] {'data': {'server_response': {'rstatus': True, 'data': {'access_code': '88292987', 'invoice_bill': '10', 'bill_amount': '10', 'order_id': 'TM03202401260825035151939', 'proposed_sku_json': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm', 'sku_total': 10, 'offer_desc': '', 'unit_price': 10, 'tray_id': '14', 'offer_id': '', 'mrp': '10', 'door_id': '1', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png'}], 'mobile': '6383974519'}, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM03202401260825035151939', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 03:52:52,953.953 INFO    ] 2026-08-25 03:52:52
[2026-08-25 03:52:52,996.996 INFO    ] 200
[2026-08-25 03:52:52,999.999 INFO    ] True
[2026-08-25 03:52:53,154.154 INFO    ] 200
[2026-08-25 03:52:53,157.157 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 03:52:53,160.160 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False'}
[2026-08-25 03:52:53,163.163 INFO    ] *** process_order ***
[2026-08-25 03:52:54,349.349 INFO    ] 200
[2026-08-25 03:52:54,352.352 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 03:52:54,354.354 INFO    ] {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-08-25 03:52:54,357.357 INFO    ] *** process_order ***
[2026-08-25 03:52:54,359.359 INFO    ] publish_status: order_id=TM03202401260825035151939
[2026-08-25 03:52:54,361.361 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825035151939
[2026-08-25 03:52:54,439.439 INFO    ] [publish_status] Message added to stream with ID: 1787610174390-0
[2026-08-25 03:52:54,442.442 INFO    ] Published to order:TM03202401260825035151939: {'server_response': '{"delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "voiceNote": "Door is open...", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'server_status': 'doorOpened', 'order_id': 'TM03202401260825035151939'} (ID: 1787610174390-0)
[2026-08-25 03:52:55,492.492 INFO    ] 2026-08-25 03:52:55
[2026-08-25 03:52:55,494.494 INFO    ] publish_status: order_id=TM03202401260825035151939
[2026-08-25 03:52:55,497.497 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825035151939
[2026-08-25 03:52:55,580.580 INFO    ] [publish_status] Message added to stream with ID: 1787610175532-0
[2026-08-25 03:52:55,583.583 INFO    ] Published to order:TM03202401260825035151939: {'server_response': '{"delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'server_status': 'processOrder', 'timestamp': '2026-08-24T22:22:55.493219Z', 'order_id': 'TM03202401260825035151939'} (ID: 1787610175532-0)
[2026-08-25 03:52:55,708.708 INFO    ] {'server_response': {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825035151939'}
[2026-08-25 03:52:55,711.711 INFO    ] 200
[2026-08-25 03:52:55,714.714 INFO    ] {"data":{"server_response":{"delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""},"voiceNote":"Please Wait","rstatus":true,"SectionMain":{"Header":"Processing Order"},"status":"true"},"server_status":"processOrder","order_id":"TM03202401260825035151939"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:52:55,717.717 INFO    ] {'data': {'server_response': {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true'}, 'order_id': 'TM03202401260825035151939', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 03:52:55,719.719 INFO    ] 2026-08-25 03:52:55
[2026-08-25 03:52:55,722.722 INFO    ] None
[2026-08-25 03:52:55,724.724 INFO    ] Opening Door now
[2026-08-25 03:52:55,727.727 INFO    ] Opening Door now
[2026-08-25 03:52:55,730.730 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 03:52:55,733.733 INFO    ] 2026-08-25 03:52:55
[2026-08-25 03:52:55,736.736 INFO    ] playing audio file
[2026-08-25 03:52:55,755.755 INFO    ] 2026-08-25 03:52:55
[2026-08-25 03:52:55,758.758 INFO    ] 2026-08-25 03:52:55
[2026-08-25 03:52:58,853.853 INFO    ] 200
[2026-08-25 03:52:58,856.856 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 03:52:58,859.859 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Door 1 is open now', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-08-25 03:53:02,102.102 INFO    ] 200
[2026-08-25 03:53:02,111.111 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 03:53:02,115.115 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-08-25 03:53:05,180.180 INFO    ] 200
[2026-08-25 03:53:05,182.182 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 03:53:05,185.185 INFO    ] Please close door 1
[2026-08-25 03:53:05,188.188 INFO    ] Please close door 1
[2026-08-25 03:53:05,190.190 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 03:53:05,193.193 INFO    ] 2026-08-25 03:53:05
[2026-08-25 03:53:05,196.196 INFO    ] playing audio file
[2026-08-25 03:53:05,213.213 INFO    ] 2026-08-25 03:53:05
[2026-08-25 03:53:05,217.217 INFO    ] publish_status: order_id=TM03202401260825035151939
[2026-08-25 03:53:05,219.219 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825035151939
[2026-08-25 03:53:05,283.283 INFO    ] [publish_status] Message added to stream with ID: 1787610185231-0
[2026-08-25 03:53:05,286.286 INFO    ] Published to order:TM03202401260825035151939: {'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 1", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'server_status': 'OrderStatus', 'timestamp': '2026-08-24T22:23:05.215234Z', 'order_id': 'TM03202401260825035151939'} (ID: 1787610185231-0)
[2026-08-25 03:53:05,817.817 INFO    ] {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825035151939'}
[2026-08-25 03:53:05,823.823 INFO    ] 200
[2026-08-25 03:53:05,826.826 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"Maxvita Coconut Cookies 40gm"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 1","error":{"umessage":"In Progress","data":[],"code":20001,"tmessage":"In Progress"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false"},"server_status":"OrderStatus","order_id":"TM03202401260825035151939"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:53:05,831.831 INFO    ] {'data': {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, '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'}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'order_id': 'TM03202401260825035151939', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 03:53:05,834.834 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-08-25 03:53:09,135.135 INFO    ] 200
[2026-08-25 03:53:09,138.138 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 03:53:09,141.141 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-08-25 03:53:12,250.250 INFO    ] 200
[2026-08-25 03:53:12,252.252 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 03:53:12,255.255 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-08-25 03:53:15,347.347 INFO    ] 200
[2026-08-25 03:53:15,349.349 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 03:53:15,352.352 INFO    ] Please close door 1
[2026-08-25 03:53:15,355.355 INFO    ] Please close door 1
[2026-08-25 03:53:15,357.357 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 03:53:15,360.360 INFO    ] 2026-08-25 03:53:15
[2026-08-25 03:53:15,362.362 INFO    ] playing audio file
[2026-08-25 03:53:15,380.380 INFO    ] 2026-08-25 03:53:15
[2026-08-25 03:53:15,384.384 INFO    ] publish_status: order_id=TM03202401260825035151939
[2026-08-25 03:53:15,387.387 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825035151939
[2026-08-25 03:53:15,454.454 INFO    ] [publish_status] Message added to stream with ID: 1787610195401-0
[2026-08-25 03:53:15,457.457 INFO    ] Published to order:TM03202401260825035151939: {'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 1", "error": {"umessage": "In Progress", "data": {}, "code": 20001, "tmessage": "In Progress"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "status": "False"}', 'server_status': 'OrderStatus', 'timestamp': '2026-08-24T22:23:15.382575Z', 'order_id': 'TM03202401260825035151939'} (ID: 1787610195401-0)
[2026-08-25 03:53:15,951.951 INFO    ] {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825035151939'}
[2026-08-25 03:53:15,953.953 INFO    ] 200
[2026-08-25 03:53:15,956.956 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"Maxvita Coconut Cookies 40gm"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 1","error":{"umessage":"In Progress","data":[],"code":20001,"tmessage":"In Progress"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"status":"false"},"server_status":"OrderStatus","order_id":"TM03202401260825035151939"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:53:15,958.958 INFO    ] {'data': {'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, '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'}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'error': {'umessage': 'In Progress', 'data': [], 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'order_id': 'TM03202401260825035151939', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 03:53:15,961.961 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'error': {'umessage': 'In Progress', 'data': {}, 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False'}
[2026-08-25 03:53:19,018.018 INFO    ] 200
[2026-08-25 03:53:19,021.021 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 03:53:19,024.024 INFO    ] {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-08-25 03:53:19,027.027 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,029.029 INFO    ] Order Completed 
[2026-08-25 03:53:19,032.032 INFO    ] Order Completed 
[2026-08-25 03:53:19,034.034 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 03:53:19,037.037 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,040.040 INFO    ] playing audio file
[2026-08-25 03:53:19,058.058 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,061.061 INFO    ] {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-08-25 03:53:19,064.064 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,512.512 INFO    ] 200
[2026-08-25 03:53:19,514.514 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825035151939", "skus": [{"image_url": "https://images.tinymart.in/product/4500725-5961.png", "skuid": "4500725", "door_id": "", "unit_price": "10", "qty": 1, "tray_id": "26", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm per peice", "sku_total": 10.0}], "res": "True", "total_amount": 10.0, "logic": "WBL"}
[2026-08-25 03:53:19,517.517 INFO    ] {'anomaly': 0, 'res': 'True', 'skus': [{'qty': 1, 'mrp': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26', 'unit_price': '10', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '', 'sku_total': 10.0}], 'orderId': 'TM03202401260825035151939', 'logic': 'WBL', 'rstatus': True, 'total_amount': 10.0}
[2026-08-25 03:53:19,520.520 INFO    ] {'anomaly': 0, 'res': 'True', 'skus': [{'qty': 1, 'mrp': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26', 'unit_price': '10', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '', 'sku_total': 10.0}], 'orderId': 'TM03202401260825035151939', 'logic': 'WBL', 'rstatus': True, 'total_amount': 10.0}
[2026-08-25 03:53:19,523.523 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,526.526 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,529.529 INFO    ] 10
[2026-08-25 03:53:19,531.531 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,534.534 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,536.536 INFO    ]  Your Bill Amount is 10
[2026-08-25 03:53:19,539.539 INFO    ]  Your Bill Amount is 10
[2026-08-25 03:53:19,541.541 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-08-25 03:53:19,544.544 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,546.546 INFO    ] playing audio file
[2026-08-25 03:53:19,562.562 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,566.566 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:19,569.569 INFO    ] publish_status: order_id=TM03202401260825035151939
[2026-08-25 03:53:19,572.572 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825035151939
[2026-08-25 03:53:19,623.623 INFO    ] [publish_status] Message added to stream with ID: 1787610199570-0
[2026-08-25 03:53:19,626.626 INFO    ] Published to order:TM03202401260825035151939: {'server_response': '{"anomaly": 0, "res": "True", "skus": [{"qty": 1, "mrp": "10", "name": "Maxvita Coconut Cookies 40gm per peice", "tray_id": "26", "unit_price": "10", "skuid": "4500725", "image_url": "https://images.tinymart.in/product/4500725-5961.png", "door_id": "", "sku_total": 10.0}], "orderId": "TM03202401260825035151939", "logic": "WBL", "rstatus": true, "total_amount": 10.0}', 'server_status': 'invoiceOrder', 'timestamp': '2026-08-24T22:23:19.567614Z', 'order_id': 'TM03202401260825035151939'} (ID: 1787610199570-0)
[2026-08-25 03:53:19,932.932 INFO    ] {'server_response': {'anomaly': 0, 'res': 'True', 'skus': [{'qty': 1, 'mrp': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26', 'unit_price': '10', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '', 'sku_total': 10.0}], 'orderId': 'TM03202401260825035151939', 'logic': 'WBL', 'rstatus': True, 'total_amount': 10.0}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825035151939'}
[2026-08-25 03:53:19,934.934 INFO    ] 200
[2026-08-25 03:53:19,937.937 INFO    ] {"data":{"server_response":{"anomaly":0,"res":"true","skus":[{"qty":1,"mrp":"10","name":"Maxvita Coconut Cookies 40gm per peice","tray_id":"26","unit_price":"10","skuid":"4500725","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","door_id":"","sku_total":10}],"orderId":"TM03202401260825035151939","logic":"WBL","rstatus":true,"total_amount":10},"server_status":"invoiceOrder","order_id":"TM03202401260825035151939"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 03:53:19,939.939 INFO    ] {'data': {'server_response': {'anomaly': 0, 'res': 'true', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26', 'unit_price': '10', 'skuid': '4500725', 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'sku_total': 10}], 'orderId': 'TM03202401260825035151939', 'rstatus': True, 'logic': 'WBL', 'total_amount': 10}, 'order_id': 'TM03202401260825035151939', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 03:53:19,942.942 INFO    ] {'data': {'server_response': {'anomaly': 0, 'res': 'true', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm per peice', 'tray_id': '26', 'unit_price': '10', 'skuid': '4500725', 'mrp': '10', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'sku_total': 10}], 'orderId': 'TM03202401260825035151939', 'rstatus': True, 'logic': 'WBL', 'total_amount': 10}, 'order_id': 'TM03202401260825035151939', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 03:53:19,944.944 INFO    ] 2026-08-25 03:53:19
[2026-08-25 03:53:21,869.869 INFO    ] 200
[2026-08-25 03:53:21,872.872 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939", "TM03202401260825035151939"], "status": true}
[2026-08-25 03:53:21,875.875 INFO    ] 2026-08-25 03:53:21
[2026-08-25 03:53:22,018.018 INFO    ] 200
[2026-08-25 03:53:22,020.020 INFO    ] True
[2026-08-25 03:53:22,023.023 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825035151939
[2026-08-25 03:53:22,027.027 INFO    ] start order file deleted
[2026-08-25 03:53:22,030.030 INFO    ] Checking for system updates...
[2026-08-25 03:53:22,071.071 INFO    ] 200
[2026-08-25 03:53:22,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:22,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:53:22,138.138 INFO    ] No update needed
[2026-08-25 03:53:22,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 03:53:22,181.181 INFO    ] 200
[2026-08-25 03:53:22,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:22,233.233 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:53:22,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:53:22,315.315 INFO    ] No camera update needed
[2026-08-25 03:53:22,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:53:22,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:53:22,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:53:22,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:53:24,373.373 INFO    ] ================================================
[2026-08-25 03:53:24,389.389 INFO    ] Launching Daemon at Tue Aug 25 03:53:24 IST 2026
[2026-08-25 03:53:24,400.400 INFO    ] ================================================
[2026-08-25 03:53:24,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:53:24
[2026-08-25 03:53:25,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:53:25,792.792 INFO    ] Initializing speech engine...
[2026-08-25 03:53:25,801.801 INFO    ] 2026-08-25 03:53:25
[2026-08-25 03:53:26,076.076 INFO    ] 2026-08-25 03:53:26
[2026-08-25 03:53:26,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:53:26,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:53:26,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:53:26,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:53:26,455.455 INFO    ] time= 25/08/2026 03:53:26
[2026-08-25 03:53:26,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:53:26,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:53:26,650.650 INFO    ] No existing commands found in stream
[2026-08-25 03:53:31,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:53:31,670.670 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 03:53:33,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:53:33,098.098 INFO    ] Checking for system updates...
[2026-08-25 03:53:33,137.137 INFO    ] 200
[2026-08-25 03:53:33,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:33,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:53:33,212.212 INFO    ] No update needed
[2026-08-25 03:53:33,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 03:53:33,254.254 INFO    ] 200
[2026-08-25 03:53:33,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:33,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:53:33,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:53:33,368.368 INFO    ] No camera update needed
[2026-08-25 03:53:33,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:53:33,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:53:33,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:53:33,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:53:35,425.425 INFO    ] ================================================
[2026-08-25 03:53:35,440.440 INFO    ] Launching Daemon at Tue Aug 25 03:53:35 IST 2026
[2026-08-25 03:53:35,451.451 INFO    ] ================================================
[2026-08-25 03:53:36,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:53:36
[2026-08-25 03:53:36,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:53:36,860.860 INFO    ] Initializing speech engine...
[2026-08-25 03:53:36,875.875 INFO    ] 2026-08-25 03:53:36
[2026-08-25 03:53:37,162.162 INFO    ] 2026-08-25 03:53:37
[2026-08-25 03:53:37,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:53:37,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:53:37,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:53:37,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:53:37,519.519 INFO    ] time= 25/08/2026 03:53:37
[2026-08-25 03:53:37,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:53:37,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:53:37,674.674 INFO    ] No existing commands found in stream
[2026-08-25 03:53:42,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:53:42,688.688 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 03:53:46,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:53:46,551.551 INFO    ] Checking for system updates...
[2026-08-25 03:53:46,587.587 INFO    ] 200
[2026-08-25 03:53:46,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:46,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:53:46,652.652 INFO    ] No update needed
[2026-08-25 03:53:46,655.655 INFO    ] Checking for camera pi updates...
[2026-08-25 03:53:46,690.690 INFO    ] 200
[2026-08-25 03:53:46,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:46,741.741 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:53:46,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:53:46,815.815 INFO    ] No camera update needed
[2026-08-25 03:53:46,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:53:46,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:53:46,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:53:46,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:53:48,874.874 INFO    ] ================================================
[2026-08-25 03:53:48,889.889 INFO    ] Launching Daemon at Tue Aug 25 03:53:48 IST 2026
[2026-08-25 03:53:48,900.900 INFO    ] ================================================
[2026-08-25 03:53:49,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:53:49
[2026-08-25 03:53:50,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:53:50,542.542 INFO    ] Initializing speech engine...
[2026-08-25 03:53:50,554.554 INFO    ] 2026-08-25 03:53:50
[2026-08-25 03:53:50,839.839 INFO    ] 2026-08-25 03:53:50
[2026-08-25 03:53:50,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:53:51,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:53:51,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:53:51,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:53:51,367.367 INFO    ] time= 25/08/2026 03:53:51
[2026-08-25 03:53:51,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:53:51,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:53:51,502.502 INFO    ] No existing commands found in stream
[2026-08-25 03:53:56,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:53:56,533.533 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 03:53:58,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:53:58,338.338 INFO    ] Checking for system updates...
[2026-08-25 03:53:58,379.379 INFO    ] 200
[2026-08-25 03:53:58,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:58,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:53:58,444.444 INFO    ] No update needed
[2026-08-25 03:53:58,447.447 INFO    ] Checking for camera pi updates...
[2026-08-25 03:53:58,482.482 INFO    ] 200
[2026-08-25 03:53:58,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:53:58,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:53:58,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:53:58,580.580 INFO    ] No camera update needed
[2026-08-25 03:53:58,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:53:58,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:53:58,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:53:58,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:54:00,638.638 INFO    ] ================================================
[2026-08-25 03:54:00,654.654 INFO    ] Launching Daemon at Tue Aug 25 03:54:00 IST 2026
[2026-08-25 03:54:00,665.665 INFO    ] ================================================
[2026-08-25 03:54:01,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:54:01
[2026-08-25 03:54:02,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:54:02,311.311 INFO    ] Initializing speech engine...
[2026-08-25 03:54:02,337.337 INFO    ] 2026-08-25 03:54:02
[2026-08-25 03:54:02,658.658 INFO    ] 2026-08-25 03:54:02
[2026-08-25 03:54:02,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:54:02,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:54:02,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:54:03,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:54:03,156.156 INFO    ] time= 25/08/2026 03:54:03
[2026-08-25 03:54:03,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:54:03,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:54:03,386.386 INFO    ] No existing commands found in stream
[2026-08-25 03:54:08,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:54:08,413.413 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 03:54:12,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:54:12,176.176 INFO    ] Checking for system updates...
[2026-08-25 03:54:12,212.212 INFO    ] 200
[2026-08-25 03:54:12,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:12,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:54:12,276.276 INFO    ] No update needed
[2026-08-25 03:54:12,279.279 INFO    ] Checking for camera pi updates...
[2026-08-25 03:54:12,316.316 INFO    ] 200
[2026-08-25 03:54:12,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:12,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:54:12,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:54:12,412.412 INFO    ] No camera update needed
[2026-08-25 03:54:12,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:54:12,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:54:12,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:54:12,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:54:14,467.467 INFO    ] ================================================
[2026-08-25 03:54:14,482.482 INFO    ] Launching Daemon at Tue Aug 25 03:54:14 IST 2026
[2026-08-25 03:54:14,493.493 INFO    ] ================================================
[2026-08-25 03:54:15,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:54:15
[2026-08-25 03:54:15,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:54:15,909.909 INFO    ] Initializing speech engine...
[2026-08-25 03:54:15,918.918 INFO    ] 2026-08-25 03:54:15
[2026-08-25 03:54:16,163.163 INFO    ] 2026-08-25 03:54:16
[2026-08-25 03:54:16,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:54:16,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:54:16,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:54:16,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:54:16,637.637 INFO    ] time= 25/08/2026 03:54:16
[2026-08-25 03:54:16,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:54:16,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:54:16,822.822 INFO    ] No existing commands found in stream
[2026-08-25 03:54:21,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:54:21,840.840 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 03:54:23,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:54:23,094.094 INFO    ] Checking for system updates...
[2026-08-25 03:54:23,130.130 INFO    ] 200
[2026-08-25 03:54:23,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:23,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:54:23,186.186 INFO    ] No update needed
[2026-08-25 03:54:23,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 03:54:23,222.222 INFO    ] 200
[2026-08-25 03:54:23,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:23,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:54:23,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:54:23,325.325 INFO    ] No camera update needed
[2026-08-25 03:54:23,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:54:23,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:54:23,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:54:23,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:54:25,378.378 INFO    ] ================================================
[2026-08-25 03:54:25,394.394 INFO    ] Launching Daemon at Tue Aug 25 03:54:25 IST 2026
[2026-08-25 03:54:25,405.405 INFO    ] ================================================
[2026-08-25 03:54:26,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:54:26
[2026-08-25 03:54:26,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:54:26,852.852 INFO    ] Initializing speech engine...
[2026-08-25 03:54:26,862.862 INFO    ] 2026-08-25 03:54:26
[2026-08-25 03:54:27,113.113 INFO    ] 2026-08-25 03:54:27
[2026-08-25 03:54:27,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:54:27,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:54:27,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:54:27,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:54:27,557.557 INFO    ] time= 25/08/2026 03:54:27
[2026-08-25 03:54:27,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:54:27,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:54:27,786.786 INFO    ] No existing commands found in stream
[2026-08-25 03:54:32,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:54:32,814.814 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 03:54:35,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:54:35,850.850 INFO    ] Checking for system updates...
[2026-08-25 03:54:36,118.118 INFO    ] 200
[2026-08-25 03:54:36,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:36,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:54:36,179.179 INFO    ] No update needed
[2026-08-25 03:54:36,182.182 INFO    ] Checking for camera pi updates...
[2026-08-25 03:54:36,215.215 INFO    ] 200
[2026-08-25 03:54:36,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:36,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:54:36,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:54:36,320.320 INFO    ] No camera update needed
[2026-08-25 03:54:36,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:54:36,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:54:36,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:54:36,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:54:38,376.376 INFO    ] ================================================
[2026-08-25 03:54:38,392.392 INFO    ] Launching Daemon at Tue Aug 25 03:54:38 IST 2026
[2026-08-25 03:54:38,403.403 INFO    ] ================================================
[2026-08-25 03:54:38,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:54:38
[2026-08-25 03:54:39,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:54:39,861.861 INFO    ] Initializing speech engine...
[2026-08-25 03:54:40,263.263 INFO    ] 2026-08-25 03:54:40
[2026-08-25 03:54:40,609.609 INFO    ] 2026-08-25 03:54:40
[2026-08-25 03:54:40,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:54:40,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:54:40,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:54:41,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:54:41,120.120 INFO    ] time= 25/08/2026 03:54:41
[2026-08-25 03:54:41,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:54:41,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:54:41,255.255 INFO    ] No existing commands found in stream
[2026-08-25 03:54:46,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:54:46,277.277 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 03:54:47,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:54:47,448.448 INFO    ] Checking for system updates...
[2026-08-25 03:54:47,484.484 INFO    ] 200
[2026-08-25 03:54:47,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:47,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:54:47,546.546 INFO    ] No update needed
[2026-08-25 03:54:47,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 03:54:47,584.584 INFO    ] 200
[2026-08-25 03:54:47,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:54:47,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:54:47,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:54:47,684.684 INFO    ] No camera update needed
[2026-08-25 03:54:47,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:54:47,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:54:47,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:54:47,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:54:49,740.740 INFO    ] ================================================
[2026-08-25 03:54:49,755.755 INFO    ] Launching Daemon at Tue Aug 25 03:54:49 IST 2026
[2026-08-25 03:54:49,766.766 INFO    ] ================================================
[2026-08-25 03:54:50,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:54:50
[2026-08-25 03:54:51,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:54:51,371.371 INFO    ] Initializing speech engine...
[2026-08-25 03:54:51,381.381 INFO    ] 2026-08-25 03:54:51
[2026-08-25 03:54:51,783.783 INFO    ] 2026-08-25 03:54:51
[2026-08-25 03:54:51,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:54:52,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:54:52,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:54:52,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:54:52,223.223 INFO    ] time= 25/08/2026 03:54:52
[2026-08-25 03:54:52,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:54:52,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:54:52,362.362 INFO    ] No existing commands found in stream
[2026-08-25 03:54:57,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:54:57,471.471 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 03:55:01,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:55:01,781.781 INFO    ] Checking for system updates...
[2026-08-25 03:55:01,830.830 INFO    ] 200
[2026-08-25 03:55:01,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:01,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:01,896.896 INFO    ] No update needed
[2026-08-25 03:55:01,899.899 INFO    ] Checking for camera pi updates...
[2026-08-25 03:55:01,938.938 INFO    ] 200
[2026-08-25 03:55:01,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:02,004.004 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:55:02,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:02,105.105 INFO    ] No camera update needed
[2026-08-25 03:55:02,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:55:02,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:55:02,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:55:02,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:55:04,172.172 INFO    ] ================================================
[2026-08-25 03:55:04,189.189 INFO    ] Launching Daemon at Tue Aug 25 03:55:04 IST 2026
[2026-08-25 03:55:04,200.200 INFO    ] ================================================
[2026-08-25 03:55:04,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:55:04
[2026-08-25 03:55:05,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:55:05,695.695 INFO    ] Initializing speech engine...
[2026-08-25 03:55:05,703.703 INFO    ] 2026-08-25 03:55:05
[2026-08-25 03:55:05,951.951 INFO    ] 2026-08-25 03:55:05
[2026-08-25 03:55:06,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:55:06,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:55:06,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:55:06,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:55:06,439.439 INFO    ] time= 25/08/2026 03:55:06
[2026-08-25 03:55:06,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:55:06,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:55:06,694.694 INFO    ] No existing commands found in stream
[2026-08-25 03:55:11,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:55:11,710.710 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 03:55:15,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:55:15,870.870 INFO    ] Checking for system updates...
[2026-08-25 03:55:15,917.917 INFO    ] 200
[2026-08-25 03:55:15,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:15,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:15,989.989 INFO    ] No update needed
[2026-08-25 03:55:15,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 03:55:16,036.036 INFO    ] 200
[2026-08-25 03:55:16,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:16,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:55:16,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:16,158.158 INFO    ] No camera update needed
[2026-08-25 03:55:16,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:55:16,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:55:16,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:55:16,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:55:18,215.215 INFO    ] ================================================
[2026-08-25 03:55:18,230.230 INFO    ] Launching Daemon at Tue Aug 25 03:55:18 IST 2026
[2026-08-25 03:55:18,243.243 INFO    ] ================================================
[2026-08-25 03:55:18,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:55:18
[2026-08-25 03:55:19,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:55:19,719.719 INFO    ] Initializing speech engine...
[2026-08-25 03:55:19,740.740 INFO    ] 2026-08-25 03:55:19
[2026-08-25 03:55:20,046.046 INFO    ] 2026-08-25 03:55:20
[2026-08-25 03:55:20,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:55:20,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:55:20,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:55:20,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:55:20,426.426 INFO    ] time= 25/08/2026 03:55:20
[2026-08-25 03:55:20,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:55:20,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:55:20,557.557 INFO    ] No existing commands found in stream
[2026-08-25 03:55:25,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:55:25,573.573 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 03:55:26,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 03:55:26,307.307 INFO    ] Checking for system updates...
[2026-08-25 03:55:26,343.343 INFO    ] 200
[2026-08-25 03:55:26,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:26,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:26,412.412 INFO    ] No update needed
[2026-08-25 03:55:26,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 03:55:26,470.470 INFO    ] 200
[2026-08-25 03:55:26,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:26,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:55:26,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:26,659.659 INFO    ] No camera update needed
[2026-08-25 03:55:26,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:55:26,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:55:26,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:55:26,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:55:28,719.719 INFO    ] ================================================
[2026-08-25 03:55:28,733.733 INFO    ] Launching Daemon at Tue Aug 25 03:55:28 IST 2026
[2026-08-25 03:55:28,744.744 INFO    ] ================================================
[2026-08-25 03:55:29,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:55:29
[2026-08-25 03:55:29,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:55:30,184.184 INFO    ] Initializing speech engine...
[2026-08-25 03:55:30,193.193 INFO    ] 2026-08-25 03:55:30
[2026-08-25 03:55:30,441.441 INFO    ] 2026-08-25 03:55:30
[2026-08-25 03:55:30,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:55:30,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:55:30,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:55:30,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:55:30,905.905 INFO    ] time= 25/08/2026 03:55:30
[2026-08-25 03:55:30,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:55:31,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:55:31,117.117 INFO    ] No existing commands found in stream
[2026-08-25 03:55:36,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:55:36,142.142 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 03:55:37,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:55:37,184.184 INFO    ] Checking for system updates...
[2026-08-25 03:55:37,219.219 INFO    ] 200
[2026-08-25 03:55:37,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:37,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:55:37,278.278 INFO    ] No update needed
[2026-08-25 03:55:37,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 03:55:37,317.317 INFO    ] 200
[2026-08-25 03:55:37,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:37,360.360 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:55:37,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:55:37,408.408 INFO    ] No camera update needed
[2026-08-25 03:55:37,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:55:37,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:55:37,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:55:37,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:55:39,466.466 INFO    ] ================================================
[2026-08-25 03:55:39,481.481 INFO    ] Launching Daemon at Tue Aug 25 03:55:39 IST 2026
[2026-08-25 03:55:39,492.492 INFO    ] ================================================
[2026-08-25 03:55:40,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:55:40
[2026-08-25 03:55:40,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:55:41,170.170 INFO    ] Initializing speech engine...
[2026-08-25 03:55:41,179.179 INFO    ] 2026-08-25 03:55:41
[2026-08-25 03:55:41,487.487 INFO    ] 2026-08-25 03:55:41
[2026-08-25 03:55:41,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:55:41,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:55:41,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:55:41,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:55:41,991.991 INFO    ] time= 25/08/2026 03:55:41
[2026-08-25 03:55:41,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:55:42,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:55:42,137.137 INFO    ] No existing commands found in stream
[2026-08-25 03:55:47,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:55:47,162.162 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 03:55:47,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:55:47,779.779 INFO    ] Checking for system updates...
[2026-08-25 03:55:47,821.821 INFO    ] 200
[2026-08-25 03:55:47,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:47,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:47,893.893 INFO    ] No update needed
[2026-08-25 03:55:47,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 03:55:47,936.936 INFO    ] 200
[2026-08-25 03:55:47,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:55:47,982.982 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:55:48,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:55:48,030.030 INFO    ] No camera update needed
[2026-08-25 03:55:48,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:55:48,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:55:48,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:55:48,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:55:50,088.088 INFO    ] ================================================
[2026-08-25 03:55:50,103.103 INFO    ] Launching Daemon at Tue Aug 25 03:55:50 IST 2026
[2026-08-25 03:55:50,115.115 INFO    ] ================================================
[2026-08-25 03:55:50,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:55:50
[2026-08-25 03:55:51,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:55:51,542.542 INFO    ] Initializing speech engine...
[2026-08-25 03:55:51,551.551 INFO    ] 2026-08-25 03:55:51
[2026-08-25 03:55:51,797.797 INFO    ] 2026-08-25 03:55:51
[2026-08-25 03:55:51,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:55:52,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:55:52,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:55:52,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:55:52,296.296 INFO    ] time= 25/08/2026 03:55:52
[2026-08-25 03:55:52,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:55:52,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:55:52,488.488 INFO    ] No existing commands found in stream
[2026-08-25 03:55:57,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:55:57,513.513 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 03:56:01,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:56:01,286.286 INFO    ] Checking for system updates...
[2026-08-25 03:56:01,322.322 INFO    ] 200
[2026-08-25 03:56:01,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:01,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:56:01,389.389 INFO    ] No update needed
[2026-08-25 03:56:01,393.393 INFO    ] Checking for camera pi updates...
[2026-08-25 03:56:01,455.455 INFO    ] 200
[2026-08-25 03:56:01,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:01,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:56:01,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:56:01,611.611 INFO    ] No camera update needed
[2026-08-25 03:56:01,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:56:01,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:56:01,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:56:01,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:56:03,686.686 INFO    ] ================================================
[2026-08-25 03:56:03,701.701 INFO    ] Launching Daemon at Tue Aug 25 03:56:03 IST 2026
[2026-08-25 03:56:03,712.712 INFO    ] ================================================
[2026-08-25 03:56:04,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:56:04
[2026-08-25 03:56:04,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:56:05,135.135 INFO    ] Initializing speech engine...
[2026-08-25 03:56:05,144.144 INFO    ] 2026-08-25 03:56:05
[2026-08-25 03:56:05,392.392 INFO    ] 2026-08-25 03:56:05
[2026-08-25 03:56:05,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:56:05,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:56:05,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:56:05,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:56:05,757.757 INFO    ] time= 25/08/2026 03:56:05
[2026-08-25 03:56:05,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:56:05,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:56:05,857.857 INFO    ] No existing commands found in stream
[2026-08-25 03:56:10,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:56:10,889.889 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 03:56:13,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:56:13,086.086 INFO    ] Checking for system updates...
[2026-08-25 03:56:13,122.122 INFO    ] 200
[2026-08-25 03:56:13,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:13,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:56:13,185.185 INFO    ] No update needed
[2026-08-25 03:56:13,187.187 INFO    ] Checking for camera pi updates...
[2026-08-25 03:56:13,225.225 INFO    ] 200
[2026-08-25 03:56:13,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:13,268.268 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:56:13,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:56:13,317.317 INFO    ] No camera update needed
[2026-08-25 03:56:13,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:56:13,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:56:13,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:56:13,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:56:15,371.371 INFO    ] ================================================
[2026-08-25 03:56:15,386.386 INFO    ] Launching Daemon at Tue Aug 25 03:56:15 IST 2026
[2026-08-25 03:56:15,398.398 INFO    ] ================================================
[2026-08-25 03:56:15,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:56:15
[2026-08-25 03:56:16,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:56:16,965.965 INFO    ] Initializing speech engine...
[2026-08-25 03:56:16,976.976 INFO    ] 2026-08-25 03:56:16
[2026-08-25 03:56:17,285.285 INFO    ] 2026-08-25 03:56:17
[2026-08-25 03:56:17,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:56:17,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:56:17,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:56:17,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:56:17,794.794 INFO    ] time= 25/08/2026 03:56:17
[2026-08-25 03:56:17,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:56:17,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:56:17,953.953 INFO    ] No existing commands found in stream
[2026-08-25 03:56:22,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:56:22,988.988 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 03:56:27,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:56:27,276.276 INFO    ] Checking for system updates...
[2026-08-25 03:56:27,312.312 INFO    ] 200
[2026-08-25 03:56:27,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:27,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:56:27,375.375 INFO    ] No update needed
[2026-08-25 03:56:27,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 03:56:27,414.414 INFO    ] 200
[2026-08-25 03:56:27,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:27,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:56:27,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:56:27,519.519 INFO    ] No camera update needed
[2026-08-25 03:56:27,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:56:27,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:56:27,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:56:27,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:56:29,573.573 INFO    ] ================================================
[2026-08-25 03:56:29,589.589 INFO    ] Launching Daemon at Tue Aug 25 03:56:29 IST 2026
[2026-08-25 03:56:29,599.599 INFO    ] ================================================
[2026-08-25 03:56:30,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:56:30
[2026-08-25 03:56:30,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:56:31,192.192 INFO    ] Initializing speech engine...
[2026-08-25 03:56:31,203.203 INFO    ] 2026-08-25 03:56:31
[2026-08-25 03:56:31,522.522 INFO    ] 2026-08-25 03:56:31
[2026-08-25 03:56:31,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:56:31,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:56:31,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:56:31,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:56:31,959.959 INFO    ] time= 25/08/2026 03:56:31
[2026-08-25 03:56:31,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:56:32,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:56:32,115.115 INFO    ] No existing commands found in stream
[2026-08-25 03:56:37,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:56:37,130.130 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 03:56:38,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:56:38,440.440 INFO    ] Checking for system updates...
[2026-08-25 03:56:38,477.477 INFO    ] 200
[2026-08-25 03:56:38,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:38,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:56:38,534.534 INFO    ] No update needed
[2026-08-25 03:56:38,537.537 INFO    ] Checking for camera pi updates...
[2026-08-25 03:56:38,570.570 INFO    ] 200
[2026-08-25 03:56:38,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:38,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:56:38,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:56:38,664.664 INFO    ] No camera update needed
[2026-08-25 03:56:38,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:56:38,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:56:38,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:56:38,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:56:40,722.722 INFO    ] ================================================
[2026-08-25 03:56:40,738.738 INFO    ] Launching Daemon at Tue Aug 25 03:56:40 IST 2026
[2026-08-25 03:56:40,749.749 INFO    ] ================================================
[2026-08-25 03:56:41,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:56:41
[2026-08-25 03:56:41,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:56:42,170.170 INFO    ] Initializing speech engine...
[2026-08-25 03:56:42,179.179 INFO    ] 2026-08-25 03:56:42
[2026-08-25 03:56:42,425.425 INFO    ] 2026-08-25 03:56:42
[2026-08-25 03:56:42,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:56:42,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:56:42,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:56:42,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:56:42,866.866 INFO    ] time= 25/08/2026 03:56:42
[2026-08-25 03:56:42,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:56:42,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:56:43,134.134 INFO    ] No existing commands found in stream
[2026-08-25 03:56:48,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:56:48,152.152 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 03:56:51,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:56:51,123.123 INFO    ] Checking for system updates...
[2026-08-25 03:56:51,162.162 INFO    ] 200
[2026-08-25 03:56:51,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:51,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:56:51,221.221 INFO    ] No update needed
[2026-08-25 03:56:51,224.224 INFO    ] Checking for camera pi updates...
[2026-08-25 03:56:51,261.261 INFO    ] 200
[2026-08-25 03:56:51,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:56:51,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:56:51,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:56:51,356.356 INFO    ] No camera update needed
[2026-08-25 03:56:51,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:56:51,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:56:51,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:56:51,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:56:53,411.411 INFO    ] ================================================
[2026-08-25 03:56:53,427.427 INFO    ] Launching Daemon at Tue Aug 25 03:56:53 IST 2026
[2026-08-25 03:56:53,439.439 INFO    ] ================================================
[2026-08-25 03:56:54,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:56:54
[2026-08-25 03:56:54,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:56:54,867.867 INFO    ] Initializing speech engine...
[2026-08-25 03:56:54,873.873 INFO    ] 2026-08-25 03:56:54
[2026-08-25 03:56:55,131.131 INFO    ] 2026-08-25 03:56:55
[2026-08-25 03:56:55,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:56:55,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:56:55,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:56:55,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:56:55,558.558 INFO    ] time= 25/08/2026 03:56:55
[2026-08-25 03:56:55,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:56:55,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:56:55,765.765 INFO    ] No existing commands found in stream
[2026-08-25 03:57:00,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:57:00,803.803 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 03:57:02,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:57:02,568.568 INFO    ] Checking for system updates...
[2026-08-25 03:57:02,614.614 INFO    ] 200
[2026-08-25 03:57:02,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:02,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:02,681.681 INFO    ] No update needed
[2026-08-25 03:57:02,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 03:57:02,725.725 INFO    ] 200
[2026-08-25 03:57:02,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:02,779.779 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:57:02,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:02,833.833 INFO    ] No camera update needed
[2026-08-25 03:57:02,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:57:02,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:57:02,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:57:02,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:57:04,896.896 INFO    ] ================================================
[2026-08-25 03:57:04,912.912 INFO    ] Launching Daemon at Tue Aug 25 03:57:04 IST 2026
[2026-08-25 03:57:04,923.923 INFO    ] ================================================
[2026-08-25 03:57:05,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:57:05
[2026-08-25 03:57:06,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:57:06,399.399 INFO    ] Initializing speech engine...
[2026-08-25 03:57:06,411.411 INFO    ] 2026-08-25 03:57:06
[2026-08-25 03:57:06,693.693 INFO    ] 2026-08-25 03:57:06
[2026-08-25 03:57:06,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:57:06,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:57:06,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:57:07,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:57:07,182.182 INFO    ] time= 25/08/2026 03:57:07
[2026-08-25 03:57:07,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:57:07,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:57:07,361.361 INFO    ] No existing commands found in stream
[2026-08-25 03:57:12,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:57:12,391.391 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 03:57:13,103.103 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:57:13,106.106 INFO    ] Checking for system updates...
[2026-08-25 03:57:13,146.146 INFO    ] 200
[2026-08-25 03:57:13,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:13,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:57:13,204.204 INFO    ] No update needed
[2026-08-25 03:57:13,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 03:57:13,241.241 INFO    ] 200
[2026-08-25 03:57:13,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:13,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:57:13,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:57:13,349.349 INFO    ] No camera update needed
[2026-08-25 03:57:13,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:57:13,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:57:13,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:57:13,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:57:15,406.406 INFO    ] ================================================
[2026-08-25 03:57:15,421.421 INFO    ] Launching Daemon at Tue Aug 25 03:57:15 IST 2026
[2026-08-25 03:57:15,433.433 INFO    ] ================================================
[2026-08-25 03:57:16,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:57:16
[2026-08-25 03:57:16,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:57:17,033.033 INFO    ] Initializing speech engine...
[2026-08-25 03:57:17,046.046 INFO    ] 2026-08-25 03:57:17
[2026-08-25 03:57:17,323.323 INFO    ] 2026-08-25 03:57:17
[2026-08-25 03:57:17,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:57:17,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:57:17,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:57:17,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:57:17,798.798 INFO    ] time= 25/08/2026 03:57:17
[2026-08-25 03:57:17,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:57:17,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:57:17,997.997 INFO    ] No existing commands found in stream
[2026-08-25 03:57:23,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:57:23,020.020 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 03:57:24,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:57:24,631.631 INFO    ] Checking for system updates...
[2026-08-25 03:57:24,668.668 INFO    ] 200
[2026-08-25 03:57:24,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:24,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:24,732.732 INFO    ] No update needed
[2026-08-25 03:57:24,735.735 INFO    ] Checking for camera pi updates...
[2026-08-25 03:57:24,770.770 INFO    ] 200
[2026-08-25 03:57:24,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:24,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:57:24,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:24,862.862 INFO    ] No camera update needed
[2026-08-25 03:57:24,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:57:24,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:57:24,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:57:24,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:57:26,923.923 INFO    ] ================================================
[2026-08-25 03:57:26,938.938 INFO    ] Launching Daemon at Tue Aug 25 03:57:26 IST 2026
[2026-08-25 03:57:26,950.950 INFO    ] ================================================
[2026-08-25 03:57:27,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:57:27
[2026-08-25 03:57:28,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:57:28,544.544 INFO    ] Initializing speech engine...
[2026-08-25 03:57:28,557.557 INFO    ] 2026-08-25 03:57:28
[2026-08-25 03:57:28,839.839 INFO    ] 2026-08-25 03:57:28
[2026-08-25 03:57:28,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:57:29,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:57:29,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:57:29,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:57:29,368.368 INFO    ] time= 25/08/2026 03:57:29
[2026-08-25 03:57:29,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:57:29,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:57:29,523.523 INFO    ] No existing commands found in stream
[2026-08-25 03:57:34,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:57:34,546.546 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 03:57:35,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:57:35,286.286 INFO    ] Checking for system updates...
[2026-08-25 03:57:35,326.326 INFO    ] 200
[2026-08-25 03:57:35,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:35,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:35,392.392 INFO    ] No update needed
[2026-08-25 03:57:35,395.395 INFO    ] Checking for camera pi updates...
[2026-08-25 03:57:35,444.444 INFO    ] 200
[2026-08-25 03:57:35,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:35,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:57:35,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:35,540.540 INFO    ] No camera update needed
[2026-08-25 03:57:35,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:57:35,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:57:35,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:57:35,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:57:37,597.597 INFO    ] ================================================
[2026-08-25 03:57:37,612.612 INFO    ] Launching Daemon at Tue Aug 25 03:57:37 IST 2026
[2026-08-25 03:57:37,624.624 INFO    ] ================================================
[2026-08-25 03:57:38,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:57:38
[2026-08-25 03:57:38,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:57:39,039.039 INFO    ] Initializing speech engine...
[2026-08-25 03:57:39,048.048 INFO    ] 2026-08-25 03:57:39
[2026-08-25 03:57:39,293.293 INFO    ] 2026-08-25 03:57:39
[2026-08-25 03:57:39,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:57:39,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:57:39,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:57:39,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:57:39,786.786 INFO    ] time= 25/08/2026 03:57:39
[2026-08-25 03:57:39,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:57:39,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:57:39,994.994 INFO    ] No existing commands found in stream
[2026-08-25 03:57:45,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:57:45,011.011 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 03:57:46,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:57:46,792.792 INFO    ] Checking for system updates...
[2026-08-25 03:57:46,827.827 INFO    ] 200
[2026-08-25 03:57:46,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:46,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:57:46,884.884 INFO    ] No update needed
[2026-08-25 03:57:46,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 03:57:46,921.921 INFO    ] 200
[2026-08-25 03:57:46,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:46,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:57:47,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:57:47,009.009 INFO    ] No camera update needed
[2026-08-25 03:57:47,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:57:47,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:57:47,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:57:47,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:57:49,064.064 INFO    ] ================================================
[2026-08-25 03:57:49,080.080 INFO    ] Launching Daemon at Tue Aug 25 03:57:49 IST 2026
[2026-08-25 03:57:49,092.092 INFO    ] ================================================
[2026-08-25 03:57:49,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:57:49
[2026-08-25 03:57:50,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:57:50,721.721 INFO    ] Initializing speech engine...
[2026-08-25 03:57:50,734.734 INFO    ] 2026-08-25 03:57:50
[2026-08-25 03:57:51,046.046 INFO    ] 2026-08-25 03:57:51
[2026-08-25 03:57:51,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:57:51,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:57:51,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:57:51,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:57:51,573.573 INFO    ] time= 25/08/2026 03:57:51
[2026-08-25 03:57:51,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:57:51,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:57:51,710.710 INFO    ] No existing commands found in stream
[2026-08-25 03:57:56,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:57:56,735.735 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 03:57:58,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:57:58,205.205 INFO    ] Checking for system updates...
[2026-08-25 03:57:58,246.246 INFO    ] 200
[2026-08-25 03:57:58,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:58,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:58,309.309 INFO    ] No update needed
[2026-08-25 03:57:58,312.312 INFO    ] Checking for camera pi updates...
[2026-08-25 03:57:58,346.346 INFO    ] 200
[2026-08-25 03:57:58,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:57:58,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:57:58,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:57:58,440.440 INFO    ] No camera update needed
[2026-08-25 03:57:58,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:57:58,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:57:58,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:57:58,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:58:00,498.498 INFO    ] ================================================
[2026-08-25 03:58:00,513.513 INFO    ] Launching Daemon at Tue Aug 25 03:58:00 IST 2026
[2026-08-25 03:58:00,525.525 INFO    ] ================================================
[2026-08-25 03:58:01,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:58:01
[2026-08-25 03:58:01,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:58:02,154.154 INFO    ] Initializing speech engine...
[2026-08-25 03:58:02,180.180 INFO    ] 2026-08-25 03:58:02
[2026-08-25 03:58:02,517.517 INFO    ] 2026-08-25 03:58:02
[2026-08-25 03:58:02,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:58:02,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:58:02,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:58:03,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:58:03,113.113 INFO    ] time= 25/08/2026 03:58:03
[2026-08-25 03:58:03,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:58:03,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:58:03,261.261 INFO    ] No existing commands found in stream
[2026-08-25 03:58:08,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:58:08,285.285 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 03:58:10,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:58:10,505.505 INFO    ] Checking for system updates...
[2026-08-25 03:58:10,542.542 INFO    ] 200
[2026-08-25 03:58:10,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:10,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:10,602.602 INFO    ] No update needed
[2026-08-25 03:58:10,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 03:58:10,638.638 INFO    ] 200
[2026-08-25 03:58:10,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:10,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:58:10,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:10,730.730 INFO    ] No camera update needed
[2026-08-25 03:58:10,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:58:10,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:58:10,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:58:10,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:58:12,785.785 INFO    ] ================================================
[2026-08-25 03:58:12,800.800 INFO    ] Launching Daemon at Tue Aug 25 03:58:12 IST 2026
[2026-08-25 03:58:12,811.811 INFO    ] ================================================
[2026-08-25 03:58:13,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:58:13
[2026-08-25 03:58:13,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:58:14,260.260 INFO    ] Initializing speech engine...
[2026-08-25 03:58:14,270.270 INFO    ] 2026-08-25 03:58:14
[2026-08-25 03:58:14,530.530 INFO    ] 2026-08-25 03:58:14
[2026-08-25 03:58:14,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:58:14,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:58:14,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:58:15,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:58:15,072.072 INFO    ] time= 25/08/2026 03:58:15
[2026-08-25 03:58:15,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:58:15,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:58:15,225.225 INFO    ] No existing commands found in stream
[2026-08-25 03:58:20,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:58:20,240.240 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 03:58:21,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:58:21,420.420 INFO    ] Checking for system updates...
[2026-08-25 03:58:21,456.456 INFO    ] 200
[2026-08-25 03:58:21,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:21,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:21,513.513 INFO    ] No update needed
[2026-08-25 03:58:21,515.515 INFO    ] Checking for camera pi updates...
[2026-08-25 03:58:21,552.552 INFO    ] 200
[2026-08-25 03:58:21,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:21,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:58:21,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:21,645.645 INFO    ] No camera update needed
[2026-08-25 03:58:21,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:58:21,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:58:21,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:58:21,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:58:23,700.700 INFO    ] ================================================
[2026-08-25 03:58:23,715.715 INFO    ] Launching Daemon at Tue Aug 25 03:58:23 IST 2026
[2026-08-25 03:58:23,726.726 INFO    ] ================================================
[2026-08-25 03:58:24,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:58:24
[2026-08-25 03:58:24,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:58:25,150.150 INFO    ] Initializing speech engine...
[2026-08-25 03:58:25,159.159 INFO    ] 2026-08-25 03:58:25
[2026-08-25 03:58:25,408.408 INFO    ] 2026-08-25 03:58:25
[2026-08-25 03:58:25,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:58:25,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:58:25,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:58:25,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:58:25,791.791 INFO    ] time= 25/08/2026 03:58:25
[2026-08-25 03:58:25,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:58:25,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:58:25,959.959 INFO    ] No existing commands found in stream
[2026-08-25 03:58:30,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:58:30,987.987 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 03:58:34,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 03:58:34,509.509 INFO    ] Checking for system updates...
[2026-08-25 03:58:34,546.546 INFO    ] 200
[2026-08-25 03:58:34,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:34,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:34,611.611 INFO    ] No update needed
[2026-08-25 03:58:34,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 03:58:34,649.649 INFO    ] 200
[2026-08-25 03:58:34,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:34,697.697 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:58:34,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:34,758.758 INFO    ] No camera update needed
[2026-08-25 03:58:34,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:58:34,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:58:34,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:58:34,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:58:36,817.817 INFO    ] ================================================
[2026-08-25 03:58:36,832.832 INFO    ] Launching Daemon at Tue Aug 25 03:58:36 IST 2026
[2026-08-25 03:58:36,843.843 INFO    ] ================================================
[2026-08-25 03:58:37,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:58:37
[2026-08-25 03:58:38,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:58:38,458.458 INFO    ] Initializing speech engine...
[2026-08-25 03:58:38,466.466 INFO    ] 2026-08-25 03:58:38
[2026-08-25 03:58:38,757.757 INFO    ] 2026-08-25 03:58:38
[2026-08-25 03:58:38,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:58:39,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:58:39,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:58:39,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:58:39,287.287 INFO    ] time= 25/08/2026 03:58:39
[2026-08-25 03:58:39,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:58:39,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:58:39,442.442 INFO    ] No existing commands found in stream
[2026-08-25 03:58:44,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:58:44,460.460 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 03:58:45,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 03:58:45,887.887 INFO    ] Checking for system updates...
[2026-08-25 03:58:45,927.927 INFO    ] 200
[2026-08-25 03:58:45,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:45,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:45,985.985 INFO    ] No update needed
[2026-08-25 03:58:45,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 03:58:46,021.021 INFO    ] 200
[2026-08-25 03:58:46,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:46,065.065 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:58:46,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:58:46,115.115 INFO    ] No camera update needed
[2026-08-25 03:58:46,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:58:46,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:58:46,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:58:46,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:58:48,171.171 INFO    ] ================================================
[2026-08-25 03:58:48,186.186 INFO    ] Launching Daemon at Tue Aug 25 03:58:48 IST 2026
[2026-08-25 03:58:48,196.196 INFO    ] ================================================
[2026-08-25 03:58:48,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:58:48
[2026-08-25 03:58:49,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:58:49,611.611 INFO    ] Initializing speech engine...
[2026-08-25 03:58:49,620.620 INFO    ] 2026-08-25 03:58:49
[2026-08-25 03:58:49,865.865 INFO    ] 2026-08-25 03:58:49
[2026-08-25 03:58:49,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:58:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:58:50,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:58:50,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:58:50,307.307 INFO    ] time= 25/08/2026 03:58:50
[2026-08-25 03:58:50,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:58:50,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:58:50,555.555 INFO    ] No existing commands found in stream
[2026-08-25 03:58:55,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:58:55,580.580 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 03:58:59,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:58:59,214.214 INFO    ] Checking for system updates...
[2026-08-25 03:58:59,249.249 INFO    ] 200
[2026-08-25 03:58:59,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:59,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:58:59,316.316 INFO    ] No update needed
[2026-08-25 03:58:59,318.318 INFO    ] Checking for camera pi updates...
[2026-08-25 03:58:59,352.352 INFO    ] 200
[2026-08-25 03:58:59,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:58:59,394.394 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:58:59,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:58:59,444.444 INFO    ] No camera update needed
[2026-08-25 03:58:59,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:58:59,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:58:59,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:58:59,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:59:01,503.503 INFO    ] ================================================
[2026-08-25 03:59:01,533.533 INFO    ] Launching Daemon at Tue Aug 25 03:59:01 IST 2026
[2026-08-25 03:59:01,557.557 INFO    ] ================================================
[2026-08-25 03:59:02,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:59:02
[2026-08-25 03:59:02,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:59:03,238.238 INFO    ] Initializing speech engine...
[2026-08-25 03:59:03,244.244 INFO    ] 2026-08-25 03:59:03
[2026-08-25 03:59:03,537.537 INFO    ] 2026-08-25 03:59:03
[2026-08-25 03:59:03,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:59:03,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:59:03,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:59:03,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:59:04,017.017 INFO    ] time= 25/08/2026 03:59:03
[2026-08-25 03:59:04,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:59:04,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:59:04,238.238 INFO    ] No existing commands found in stream
[2026-08-25 03:59:09,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:59:09,257.257 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 03:59:13,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 03:59:13,045.045 INFO    ] Checking for system updates...
[2026-08-25 03:59:13,081.081 INFO    ] 200
[2026-08-25 03:59:13,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:13,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:59:13,140.140 INFO    ] No update needed
[2026-08-25 03:59:13,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 03:59:13,177.177 INFO    ] 200
[2026-08-25 03:59:13,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:13,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:59:13,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:59:13,276.276 INFO    ] No camera update needed
[2026-08-25 03:59:13,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:59:13,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:59:13,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:59:13,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:59:15,329.329 INFO    ] ================================================
[2026-08-25 03:59:15,344.344 INFO    ] Launching Daemon at Tue Aug 25 03:59:15 IST 2026
[2026-08-25 03:59:15,355.355 INFO    ] ================================================
[2026-08-25 03:59:15,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:59:15
[2026-08-25 03:59:16,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:59:16,791.791 INFO    ] Initializing speech engine...
[2026-08-25 03:59:16,800.800 INFO    ] 2026-08-25 03:59:16
[2026-08-25 03:59:17,045.045 INFO    ] 2026-08-25 03:59:17
[2026-08-25 03:59:17,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:59:17,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:59:17,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:59:17,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:59:17,493.493 INFO    ] time= 25/08/2026 03:59:17
[2026-08-25 03:59:17,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:59:17,602.602 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:59:17,728.728 INFO    ] No existing commands found in stream
[2026-08-25 03:59:22,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:59:22,761.761 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 03:59:24,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:59:24,194.194 INFO    ] Checking for system updates...
[2026-08-25 03:59:24,230.230 INFO    ] 200
[2026-08-25 03:59:24,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:24,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:59:24,285.285 INFO    ] No update needed
[2026-08-25 03:59:24,288.288 INFO    ] Checking for camera pi updates...
[2026-08-25 03:59:24,321.321 INFO    ] 200
[2026-08-25 03:59:24,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:24,364.364 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:59:24,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:59:24,412.412 INFO    ] No camera update needed
[2026-08-25 03:59:24,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:59:24,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:59:24,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:59:24,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:59:26,467.467 INFO    ] ================================================
[2026-08-25 03:59:26,482.482 INFO    ] Launching Daemon at Tue Aug 25 03:59:26 IST 2026
[2026-08-25 03:59:26,492.492 INFO    ] ================================================
[2026-08-25 03:59:27,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:59:27
[2026-08-25 03:59:27,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:59:28,022.022 INFO    ] Initializing speech engine...
[2026-08-25 03:59:28,036.036 INFO    ] 2026-08-25 03:59:28
[2026-08-25 03:59:28,312.312 INFO    ] 2026-08-25 03:59:28
[2026-08-25 03:59:28,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:59:28,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:59:28,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:59:28,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:59:28,783.783 INFO    ] time= 25/08/2026 03:59:28
[2026-08-25 03:59:28,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:59:28,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:59:28,989.989 INFO    ] No existing commands found in stream
[2026-08-25 03:59:34,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:59:34,018.018 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 03:59:35,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 03:59:35,831.831 INFO    ] Checking for system updates...
[2026-08-25 03:59:35,870.870 INFO    ] 200
[2026-08-25 03:59:35,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:35,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:59:35,928.928 INFO    ] No update needed
[2026-08-25 03:59:35,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 03:59:35,969.969 INFO    ] 200
[2026-08-25 03:59:35,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:36,019.019 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:59:36,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:59:36,170.170 INFO    ] No camera update needed
[2026-08-25 03:59:36,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:59:36,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:59:36,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:59:36,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:59:38,228.228 INFO    ] ================================================
[2026-08-25 03:59:38,243.243 INFO    ] Launching Daemon at Tue Aug 25 03:59:38 IST 2026
[2026-08-25 03:59:38,253.253 INFO    ] ================================================
[2026-08-25 03:59:38,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:59:38
[2026-08-25 03:59:39,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:59:39,664.664 INFO    ] Initializing speech engine...
[2026-08-25 03:59:39,673.673 INFO    ] 2026-08-25 03:59:39
[2026-08-25 03:59:39,960.960 INFO    ] 2026-08-25 03:59:39
[2026-08-25 03:59:39,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:59:40,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:59:40,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:59:40,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:59:40,327.327 INFO    ] time= 25/08/2026 03:59:40
[2026-08-25 03:59:40,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:59:40,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:59:40,451.451 INFO    ] No existing commands found in stream
[2026-08-25 03:59:45,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:59:45,469.469 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 03:59:46,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:59:46,618.618 INFO    ] Checking for system updates...
[2026-08-25 03:59:46,656.656 INFO    ] 200
[2026-08-25 03:59:46,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:46,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:59:46,720.720 INFO    ] No update needed
[2026-08-25 03:59:46,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 03:59:46,755.755 INFO    ] 200
[2026-08-25 03:59:46,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:46,798.798 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:59:46,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 03:59:46,846.846 INFO    ] No camera update needed
[2026-08-25 03:59:46,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:59:46,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:59:46,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:59:46,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 03:59:48,899.899 INFO    ] ================================================
[2026-08-25 03:59:48,914.914 INFO    ] Launching Daemon at Tue Aug 25 03:59:48 IST 2026
[2026-08-25 03:59:48,935.935 INFO    ] ================================================
[2026-08-25 03:59:49,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 03:59:49
[2026-08-25 03:59:50,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 03:59:50,365.365 INFO    ] Initializing speech engine...
[2026-08-25 03:59:50,378.378 INFO    ] 2026-08-25 03:59:50
[2026-08-25 03:59:50,642.642 INFO    ] 2026-08-25 03:59:50
[2026-08-25 03:59:50,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 03:59:50,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 03:59:50,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 03:59:51,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 03:59:51,011.011 INFO    ] time= 25/08/2026 03:59:51
[2026-08-25 03:59:51,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 03:59:51,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-25 03:59:51,188.188 INFO    ] No existing commands found in stream
[2026-08-25 03:59:56,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 03:59:56,212.212 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 03:59:59,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 03:59:59,691.691 INFO    ] Checking for system updates...
[2026-08-25 03:59:59,729.729 INFO    ] 200
[2026-08-25 03:59:59,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:59,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:59:59,786.786 INFO    ] No update needed
[2026-08-25 03:59:59,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 03:59:59,822.822 INFO    ] 200
[2026-08-25 03:59:59,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 03:59:59,866.866 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 03:59:59,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 03:59:59,928.928 INFO    ] No camera update needed
[2026-08-25 03:59:59,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-25 03:59:59,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 03:59:59,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 03:59:59,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:00:02,042.042 INFO    ] ================================================
[2026-08-25 04:00:02,128.128 INFO    ] Launching Daemon at Tue Aug 25 04:00:02 IST 2026
[2026-08-25 04:00:02,256.256 INFO    ] ================================================
[2026-08-25 04:00:04,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:00:04
[2026-08-25 04:00:05,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:00:06,288.288 INFO    ] Initializing speech engine...
[2026-08-25 04:00:06,299.299 INFO    ] 2026-08-25 04:00:06
[2026-08-25 04:00:06,620.620 INFO    ] 2026-08-25 04:00:06
[2026-08-25 04:00:06,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:00:06,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:00:06,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:00:07,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:00:07,037.037 INFO    ] time= 25/08/2026 04:00:07
[2026-08-25 04:00:07,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:00:07,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:00:07,273.273 INFO    ] No existing commands found in stream
[2026-08-25 04:00:12,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:00:12,310.310 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 04:00:15,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:00:15,710.710 INFO    ] Checking for system updates...
[2026-08-25 04:00:15,746.746 INFO    ] 200
[2026-08-25 04:00:15,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:15,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:00:15,805.805 INFO    ] No update needed
[2026-08-25 04:00:15,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 04:00:15,841.841 INFO    ] 200
[2026-08-25 04:00:15,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:15,885.885 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:00:15,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:00:15,936.936 INFO    ] No camera update needed
[2026-08-25 04:00:15,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:00:15,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:00:15,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:00:15,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:00:17,991.991 INFO    ] ================================================
[2026-08-25 04:00:18,006.006 INFO    ] Launching Daemon at Tue Aug 25 04:00:18 IST 2026
[2026-08-25 04:00:18,016.016 INFO    ] ================================================
[2026-08-25 04:00:18,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:00:18
[2026-08-25 04:00:19,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:00:19,632.632 INFO    ] Initializing speech engine...
[2026-08-25 04:00:19,640.640 INFO    ] 2026-08-25 04:00:19
[2026-08-25 04:00:19,943.943 INFO    ] 2026-08-25 04:00:19
[2026-08-25 04:00:20,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:00:20,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:00:20,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:00:20,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:00:20,451.451 INFO    ] time= 25/08/2026 04:00:20
[2026-08-25 04:00:20,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:00:20,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:00:20,621.621 INFO    ] No existing commands found in stream
[2026-08-25 04:00:25,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:00:25,665.665 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 04:00:26,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:00:26,832.832 INFO    ] Checking for system updates...
[2026-08-25 04:00:26,880.880 INFO    ] 200
[2026-08-25 04:00:26,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:26,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:00:26,944.944 INFO    ] No update needed
[2026-08-25 04:00:26,946.946 INFO    ] Checking for camera pi updates...
[2026-08-25 04:00:26,981.981 INFO    ] 200
[2026-08-25 04:00:26,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:27,024.024 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:00:27,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:00:27,080.080 INFO    ] No camera update needed
[2026-08-25 04:00:27,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:00:27,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:00:27,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:00:27,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:00:29,138.138 INFO    ] ================================================
[2026-08-25 04:00:29,154.154 INFO    ] Launching Daemon at Tue Aug 25 04:00:29 IST 2026
[2026-08-25 04:00:29,165.165 INFO    ] ================================================
[2026-08-25 04:00:29,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:00:29
[2026-08-25 04:00:30,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:00:30,696.696 INFO    ] Initializing speech engine...
[2026-08-25 04:00:30,703.703 INFO    ] 2026-08-25 04:00:30
[2026-08-25 04:00:30,977.977 INFO    ] 2026-08-25 04:00:30
[2026-08-25 04:00:31,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:00:31,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:00:31,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:00:31,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:00:31,530.530 INFO    ] time= 25/08/2026 04:00:31
[2026-08-25 04:00:31,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:00:31,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:00:31,683.683 INFO    ] No existing commands found in stream
[2026-08-25 04:00:36,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:00:36,702.702 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 04:00:39,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:00:39,390.390 INFO    ] Checking for system updates...
[2026-08-25 04:00:39,431.431 INFO    ] 200
[2026-08-25 04:00:39,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:39,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:00:39,496.496 INFO    ] No update needed
[2026-08-25 04:00:39,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 04:00:39,536.536 INFO    ] 200
[2026-08-25 04:00:39,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:39,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:00:39,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:00:39,632.632 INFO    ] No camera update needed
[2026-08-25 04:00:39,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:00:39,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:00:39,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:00:39,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:00:41,688.688 INFO    ] ================================================
[2026-08-25 04:00:41,704.704 INFO    ] Launching Daemon at Tue Aug 25 04:00:41 IST 2026
[2026-08-25 04:00:41,714.714 INFO    ] ================================================
[2026-08-25 04:00:42,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:00:42
[2026-08-25 04:00:42,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:00:43,155.155 INFO    ] Initializing speech engine...
[2026-08-25 04:00:43,164.164 INFO    ] 2026-08-25 04:00:43
[2026-08-25 04:00:43,410.410 INFO    ] 2026-08-25 04:00:43
[2026-08-25 04:00:43,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:00:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:00:43,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:00:43,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:00:43,781.781 INFO    ] time= 25/08/2026 04:00:43
[2026-08-25 04:00:43,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:00:43,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:00:43,973.973 INFO    ] No existing commands found in stream
[2026-08-25 04:00:48,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:00:48,987.987 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 04:00:51,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:00:51,566.566 INFO    ] Checking for system updates...
[2026-08-25 04:00:51,609.609 INFO    ] 200
[2026-08-25 04:00:51,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:51,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:00:51,673.673 INFO    ] No update needed
[2026-08-25 04:00:51,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 04:00:51,711.711 INFO    ] 200
[2026-08-25 04:00:51,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:00:51,760.760 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:00:51,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:00:51,813.813 INFO    ] No camera update needed
[2026-08-25 04:00:51,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:00:51,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:00:51,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:00:51,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:00:53,872.872 INFO    ] ================================================
[2026-08-25 04:00:53,890.890 INFO    ] Launching Daemon at Tue Aug 25 04:00:53 IST 2026
[2026-08-25 04:00:53,901.901 INFO    ] ================================================
[2026-08-25 04:00:54,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:00:54
[2026-08-25 04:00:55,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:00:55,443.443 INFO    ] Initializing speech engine...
[2026-08-25 04:00:55,456.456 INFO    ] 2026-08-25 04:00:55
[2026-08-25 04:00:55,766.766 INFO    ] 2026-08-25 04:00:55
[2026-08-25 04:00:55,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:00:56,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:00:56,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:00:56,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:00:56,272.272 INFO    ] time= 25/08/2026 04:00:56
[2026-08-25 04:00:56,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:00:56,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:00:56,425.425 INFO    ] No existing commands found in stream
[2026-08-25 04:01:01,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:01:01,452.452 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 04:01:03,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:01:03,920.920 INFO    ] Checking for system updates...
[2026-08-25 04:01:03,957.957 INFO    ] 200
[2026-08-25 04:01:03,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:04,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:01:04,016.016 INFO    ] No update needed
[2026-08-25 04:01:04,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 04:01:04,057.057 INFO    ] 200
[2026-08-25 04:01:04,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:04,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:01:04,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:01:04,153.153 INFO    ] No camera update needed
[2026-08-25 04:01:04,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:01:04,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:01:04,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:01:04,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:01:06,207.207 INFO    ] ================================================
[2026-08-25 04:01:06,227.227 INFO    ] Launching Daemon at Tue Aug 25 04:01:06 IST 2026
[2026-08-25 04:01:06,239.239 INFO    ] ================================================
[2026-08-25 04:01:06,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:01:06
[2026-08-25 04:01:07,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:01:07,898.898 INFO    ] Initializing speech engine...
[2026-08-25 04:01:07,912.912 INFO    ] 2026-08-25 04:01:07
[2026-08-25 04:01:08,199.199 INFO    ] 2026-08-25 04:01:08
[2026-08-25 04:01:08,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:01:08,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:01:08,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:01:08,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:01:08,743.743 INFO    ] time= 25/08/2026 04:01:08
[2026-08-25 04:01:08,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:01:08,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:01:08,906.906 INFO    ] No existing commands found in stream
[2026-08-25 04:01:13,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:01:13,950.950 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 04:01:17,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:01:17,130.130 INFO    ] Checking for system updates...
[2026-08-25 04:01:17,165.165 INFO    ] 200
[2026-08-25 04:01:17,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:17,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:01:17,223.223 INFO    ] No update needed
[2026-08-25 04:01:17,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 04:01:17,263.263 INFO    ] 200
[2026-08-25 04:01:17,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:17,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:01:17,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:01:17,363.363 INFO    ] No camera update needed
[2026-08-25 04:01:17,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:01:17,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:01:17,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:01:17,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:01:19,418.418 INFO    ] ================================================
[2026-08-25 04:01:19,433.433 INFO    ] Launching Daemon at Tue Aug 25 04:01:19 IST 2026
[2026-08-25 04:01:19,445.445 INFO    ] ================================================
[2026-08-25 04:01:20,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:01:20
[2026-08-25 04:01:20,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:01:20,898.898 INFO    ] Initializing speech engine...
[2026-08-25 04:01:20,909.909 INFO    ] 2026-08-25 04:01:20
[2026-08-25 04:01:21,160.160 INFO    ] 2026-08-25 04:01:21
[2026-08-25 04:01:21,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:01:21,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:01:21,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:01:21,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:01:21,631.631 INFO    ] time= 25/08/2026 04:01:21
[2026-08-25 04:01:21,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:01:21,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:01:21,845.845 INFO    ] No existing commands found in stream
[2026-08-25 04:01:26,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:01:26,875.875 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 04:01:28,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:01:28,340.340 INFO    ] Checking for system updates...
[2026-08-25 04:01:28,376.376 INFO    ] 200
[2026-08-25 04:01:28,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:28,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:01:28,440.440 INFO    ] No update needed
[2026-08-25 04:01:28,442.442 INFO    ] Checking for camera pi updates...
[2026-08-25 04:01:28,475.475 INFO    ] 200
[2026-08-25 04:01:28,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:28,519.519 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:01:28,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:01:28,564.564 INFO    ] No camera update needed
[2026-08-25 04:01:28,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:01:28,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:01:28,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:01:28,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:01:30,618.618 INFO    ] ================================================
[2026-08-25 04:01:30,634.634 INFO    ] Launching Daemon at Tue Aug 25 04:01:30 IST 2026
[2026-08-25 04:01:30,645.645 INFO    ] ================================================
[2026-08-25 04:01:31,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:01:31
[2026-08-25 04:01:31,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:01:32,142.142 INFO    ] Initializing speech engine...
[2026-08-25 04:01:32,145.145 INFO    ] 2026-08-25 04:01:32
[2026-08-25 04:01:32,437.437 INFO    ] 2026-08-25 04:01:32
[2026-08-25 04:01:32,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:01:32,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:01:32,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:01:32,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:01:32,843.843 INFO    ] time= 25/08/2026 04:01:32
[2026-08-25 04:01:32,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:01:32,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:01:33,024.024 INFO    ] No existing commands found in stream
[2026-08-25 04:01:38,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:01:38,052.052 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 04:01:39,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:01:39,874.874 INFO    ] Checking for system updates...
[2026-08-25 04:01:39,910.910 INFO    ] 200
[2026-08-25 04:01:39,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:39,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:01:39,975.975 INFO    ] No update needed
[2026-08-25 04:01:39,978.978 INFO    ] Checking for camera pi updates...
[2026-08-25 04:01:40,015.015 INFO    ] 200
[2026-08-25 04:01:40,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:40,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:01:40,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:01:40,212.212 INFO    ] No camera update needed
[2026-08-25 04:01:40,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:01:40,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:01:40,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:01:40,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:01:42,268.268 INFO    ] ================================================
[2026-08-25 04:01:42,284.284 INFO    ] Launching Daemon at Tue Aug 25 04:01:42 IST 2026
[2026-08-25 04:01:42,296.296 INFO    ] ================================================
[2026-08-25 04:01:42,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:01:42
[2026-08-25 04:01:43,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:01:43,867.867 INFO    ] Initializing speech engine...
[2026-08-25 04:01:43,874.874 INFO    ] 2026-08-25 04:01:43
[2026-08-25 04:01:44,127.127 INFO    ] 2026-08-25 04:01:44
[2026-08-25 04:01:44,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:01:44,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:01:44,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:01:44,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:01:44,618.618 INFO    ] time= 25/08/2026 04:01:44
[2026-08-25 04:01:44,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:01:44,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:01:44,811.811 INFO    ] No existing commands found in stream
[2026-08-25 04:01:49,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:01:49,839.839 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 04:01:50,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:01:50,276.276 INFO    ] Checking for system updates...
[2026-08-25 04:01:50,312.312 INFO    ] 200
[2026-08-25 04:01:50,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:50,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:01:50,374.374 INFO    ] No update needed
[2026-08-25 04:01:50,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 04:01:50,410.410 INFO    ] 200
[2026-08-25 04:01:50,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:01:50,453.453 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:01:50,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:01:50,503.503 INFO    ] No camera update needed
[2026-08-25 04:01:50,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:01:50,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:01:50,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:01:50,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:01:52,562.562 INFO    ] ================================================
[2026-08-25 04:01:52,578.578 INFO    ] Launching Daemon at Tue Aug 25 04:01:52 IST 2026
[2026-08-25 04:01:52,589.589 INFO    ] ================================================
[2026-08-25 04:01:53,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:01:53
[2026-08-25 04:01:53,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:01:54,015.015 INFO    ] Initializing speech engine...
[2026-08-25 04:01:54,024.024 INFO    ] 2026-08-25 04:01:54
[2026-08-25 04:01:54,290.290 INFO    ] 2026-08-25 04:01:54
[2026-08-25 04:01:54,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:01:54,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:01:54,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:01:54,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:01:54,783.783 INFO    ] time= 25/08/2026 04:01:54
[2026-08-25 04:01:54,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:01:54,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:01:54,976.976 INFO    ] No existing commands found in stream
[2026-08-25 04:01:59,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:02:00,002.002 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 04:02:02,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:02:02,844.844 INFO    ] Checking for system updates...
[2026-08-25 04:02:02,886.886 INFO    ] 200
[2026-08-25 04:02:02,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:02,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:02:02,948.948 INFO    ] No update needed
[2026-08-25 04:02:02,950.950 INFO    ] Checking for camera pi updates...
[2026-08-25 04:02:02,985.985 INFO    ] 200
[2026-08-25 04:02:02,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:03,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:02:03,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:02:03,079.079 INFO    ] No camera update needed
[2026-08-25 04:02:03,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:02:03,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:02:03,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:02:03,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:02:05,135.135 INFO    ] ================================================
[2026-08-25 04:02:05,149.149 INFO    ] Launching Daemon at Tue Aug 25 04:02:05 IST 2026
[2026-08-25 04:02:05,160.160 INFO    ] ================================================
[2026-08-25 04:02:05,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:02:05
[2026-08-25 04:02:06,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:02:06,640.640 INFO    ] Initializing speech engine...
[2026-08-25 04:02:06,646.646 INFO    ] 2026-08-25 04:02:06
[2026-08-25 04:02:06,890.890 INFO    ] 2026-08-25 04:02:06
[2026-08-25 04:02:06,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:02:07,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:02:07,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:02:07,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:02:07,259.259 INFO    ] time= 25/08/2026 04:02:07
[2026-08-25 04:02:07,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:02:07,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:02:07,355.355 INFO    ] No existing commands found in stream
[2026-08-25 04:02:12,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:02:12,382.382 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 04:02:15,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:02:15,286.286 INFO    ] Checking for system updates...
[2026-08-25 04:02:15,325.325 INFO    ] 200
[2026-08-25 04:02:15,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:15,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:02:15,388.388 INFO    ] No update needed
[2026-08-25 04:02:15,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 04:02:15,427.427 INFO    ] 200
[2026-08-25 04:02:15,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:15,474.474 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:02:15,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:02:15,520.520 INFO    ] No camera update needed
[2026-08-25 04:02:15,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:02:15,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:02:15,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:02:15,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:02:17,577.577 INFO    ] ================================================
[2026-08-25 04:02:17,593.593 INFO    ] Launching Daemon at Tue Aug 25 04:02:17 IST 2026
[2026-08-25 04:02:17,605.605 INFO    ] ================================================
[2026-08-25 04:02:18,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:02:18
[2026-08-25 04:02:18,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:02:19,232.232 INFO    ] Initializing speech engine...
[2026-08-25 04:02:19,244.244 INFO    ] 2026-08-25 04:02:19
[2026-08-25 04:02:19,511.511 INFO    ] 2026-08-25 04:02:19
[2026-08-25 04:02:19,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:02:19,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:02:19,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:02:19,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:02:20,002.002 INFO    ] time= 25/08/2026 04:02:19
[2026-08-25 04:02:20,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:02:20,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:02:20,198.198 INFO    ] No existing commands found in stream
[2026-08-25 04:02:25,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:02:25,220.220 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 04:02:26,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:02:26,619.619 INFO    ] Checking for system updates...
[2026-08-25 04:02:26,655.655 INFO    ] 200
[2026-08-25 04:02:26,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:26,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:02:26,716.716 INFO    ] No update needed
[2026-08-25 04:02:26,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 04:02:26,752.752 INFO    ] 200
[2026-08-25 04:02:26,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:26,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:02:26,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:02:26,847.847 INFO    ] No camera update needed
[2026-08-25 04:02:26,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:02:26,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:02:26,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:02:26,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:02:28,905.905 INFO    ] ================================================
[2026-08-25 04:02:28,922.922 INFO    ] Launching Daemon at Tue Aug 25 04:02:28 IST 2026
[2026-08-25 04:02:28,934.934 INFO    ] ================================================
[2026-08-25 04:02:29,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:02:29
[2026-08-25 04:02:30,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:02:30,575.575 INFO    ] Initializing speech engine...
[2026-08-25 04:02:30,583.583 INFO    ] 2026-08-25 04:02:30
[2026-08-25 04:02:30,850.850 INFO    ] 2026-08-25 04:02:30
[2026-08-25 04:02:30,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:02:31,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:02:31,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:02:31,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:02:31,375.375 INFO    ] time= 25/08/2026 04:02:31
[2026-08-25 04:02:31,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:02:31,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:02:31,589.589 INFO    ] No existing commands found in stream
[2026-08-25 04:02:36,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:02:36,621.621 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 04:02:40,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:02:40,222.222 INFO    ] Checking for system updates...
[2026-08-25 04:02:40,263.263 INFO    ] 200
[2026-08-25 04:02:40,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:40,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:02:40,329.329 INFO    ] No update needed
[2026-08-25 04:02:40,331.331 INFO    ] Checking for camera pi updates...
[2026-08-25 04:02:40,369.369 INFO    ] 200
[2026-08-25 04:02:40,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:40,413.413 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:02:40,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:02:40,472.472 INFO    ] No camera update needed
[2026-08-25 04:02:40,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:02:40,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:02:40,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:02:40,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:02:42,526.526 INFO    ] ================================================
[2026-08-25 04:02:42,540.540 INFO    ] Launching Daemon at Tue Aug 25 04:02:42 IST 2026
[2026-08-25 04:02:42,551.551 INFO    ] ================================================
[2026-08-25 04:02:43,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:02:43
[2026-08-25 04:02:43,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:02:43,998.998 INFO    ] Initializing speech engine...
[2026-08-25 04:02:44,008.008 INFO    ] 2026-08-25 04:02:44
[2026-08-25 04:02:44,262.262 INFO    ] 2026-08-25 04:02:44
[2026-08-25 04:02:44,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:02:44,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:02:44,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:02:44,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:02:44,729.729 INFO    ] time= 25/08/2026 04:02:44
[2026-08-25 04:02:44,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:02:44,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:02:44,911.911 INFO    ] No existing commands found in stream
[2026-08-25 04:02:49,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:02:49,943.943 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 04:02:52,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:02:52,168.168 INFO    ] Checking for system updates...
[2026-08-25 04:02:52,206.206 INFO    ] 200
[2026-08-25 04:02:52,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:52,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:02:52,270.270 INFO    ] No update needed
[2026-08-25 04:02:52,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 04:02:52,309.309 INFO    ] 200
[2026-08-25 04:02:52,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:02:52,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:02:52,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:02:52,414.414 INFO    ] No camera update needed
[2026-08-25 04:02:52,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:02:52,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:02:52,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:02:52,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:02:54,470.470 INFO    ] ================================================
[2026-08-25 04:02:54,485.485 INFO    ] Launching Daemon at Tue Aug 25 04:02:54 IST 2026
[2026-08-25 04:02:54,497.497 INFO    ] ================================================
[2026-08-25 04:02:55,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:02:55
[2026-08-25 04:02:55,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:02:55,904.904 INFO    ] Initializing speech engine...
[2026-08-25 04:02:55,927.927 INFO    ] 2026-08-25 04:02:55
[2026-08-25 04:02:56,179.179 INFO    ] 2026-08-25 04:02:56
[2026-08-25 04:02:56,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:02:56,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:02:56,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:02:56,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:02:56,549.549 INFO    ] time= 25/08/2026 04:02:56
[2026-08-25 04:02:56,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:02:56,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:02:56,742.742 INFO    ] No existing commands found in stream
[2026-08-25 04:03:01,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:03:01,763.763 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 04:03:03,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:03:03,331.331 INFO    ] Checking for system updates...
[2026-08-25 04:03:03,367.367 INFO    ] 200
[2026-08-25 04:03:03,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:03,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:03:03,433.433 INFO    ] No update needed
[2026-08-25 04:03:03,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 04:03:03,469.469 INFO    ] 200
[2026-08-25 04:03:03,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:03,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:03:03,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:03:03,564.564 INFO    ] No camera update needed
[2026-08-25 04:03:03,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:03:03,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:03:03,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:03:03,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:03:05,618.618 INFO    ] ================================================
[2026-08-25 04:03:05,634.634 INFO    ] Launching Daemon at Tue Aug 25 04:03:05 IST 2026
[2026-08-25 04:03:05,644.644 INFO    ] ================================================
[2026-08-25 04:03:06,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:03:06
[2026-08-25 04:03:06,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:03:07,205.205 INFO    ] Initializing speech engine...
[2026-08-25 04:03:07,212.212 INFO    ] 2026-08-25 04:03:07
[2026-08-25 04:03:07,484.484 INFO    ] 2026-08-25 04:03:07
[2026-08-25 04:03:07,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:03:07,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:03:07,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:03:07,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:03:07,973.973 INFO    ] time= 25/08/2026 04:03:07
[2026-08-25 04:03:08,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:03:08,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:03:08,178.178 INFO    ] No existing commands found in stream
[2026-08-25 04:03:13,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:03:13,203.203 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 04:03:16,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:03:16,466.466 INFO    ] Checking for system updates...
[2026-08-25 04:03:16,510.510 INFO    ] 200
[2026-08-25 04:03:16,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:16,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:03:16,577.577 INFO    ] No update needed
[2026-08-25 04:03:16,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 04:03:16,618.618 INFO    ] 200
[2026-08-25 04:03:16,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:16,668.668 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:03:16,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:03:16,720.720 INFO    ] No camera update needed
[2026-08-25 04:03:16,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:03:16,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:03:16,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:03:16,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:03:18,778.778 INFO    ] ================================================
[2026-08-25 04:03:18,794.794 INFO    ] Launching Daemon at Tue Aug 25 04:03:18 IST 2026
[2026-08-25 04:03:18,805.805 INFO    ] ================================================
[2026-08-25 04:03:19,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:03:19
[2026-08-25 04:03:19,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:03:20,226.226 INFO    ] Initializing speech engine...
[2026-08-25 04:03:20,234.234 INFO    ] 2026-08-25 04:03:20
[2026-08-25 04:03:20,520.520 INFO    ] 2026-08-25 04:03:20
[2026-08-25 04:03:20,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:03:20,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:03:20,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:03:20,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:03:20,929.929 INFO    ] time= 25/08/2026 04:03:20
[2026-08-25 04:03:20,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:03:20,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:03:21,099.099 INFO    ] No existing commands found in stream
[2026-08-25 04:03:26,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:03:26,127.127 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 04:03:30,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:03:30,334.334 INFO    ] Checking for system updates...
[2026-08-25 04:03:30,373.373 INFO    ] 200
[2026-08-25 04:03:30,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:30,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:03:30,429.429 INFO    ] No update needed
[2026-08-25 04:03:30,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 04:03:30,466.466 INFO    ] 200
[2026-08-25 04:03:30,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:30,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:03:30,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:03:30,569.569 INFO    ] No camera update needed
[2026-08-25 04:03:30,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:03:30,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:03:30,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:03:30,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:03:32,627.627 INFO    ] ================================================
[2026-08-25 04:03:32,643.643 INFO    ] Launching Daemon at Tue Aug 25 04:03:32 IST 2026
[2026-08-25 04:03:32,655.655 INFO    ] ================================================
[2026-08-25 04:03:33,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:03:33
[2026-08-25 04:03:33,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:03:34,082.082 INFO    ] Initializing speech engine...
[2026-08-25 04:03:34,091.091 INFO    ] 2026-08-25 04:03:34
[2026-08-25 04:03:34,355.355 INFO    ] 2026-08-25 04:03:34
[2026-08-25 04:03:34,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:03:34,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:03:34,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:03:34,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:03:34,722.722 INFO    ] time= 25/08/2026 04:03:34
[2026-08-25 04:03:34,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:03:34,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:03:34,842.842 INFO    ] No existing commands found in stream
[2026-08-25 04:03:39,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:03:39,858.858 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 04:03:41,875.875 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:03:41,877.877 INFO    ] Checking for system updates...
[2026-08-25 04:03:41,915.915 INFO    ] 200
[2026-08-25 04:03:41,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:41,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:03:41,977.977 INFO    ] No update needed
[2026-08-25 04:03:41,979.979 INFO    ] Checking for camera pi updates...
[2026-08-25 04:03:42,013.013 INFO    ] 200
[2026-08-25 04:03:42,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:42,057.057 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:03:42,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:03:42,202.202 INFO    ] No camera update needed
[2026-08-25 04:03:42,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:03:42,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:03:42,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:03:42,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:03:44,258.258 INFO    ] ================================================
[2026-08-25 04:03:44,274.274 INFO    ] Launching Daemon at Tue Aug 25 04:03:44 IST 2026
[2026-08-25 04:03:44,285.285 INFO    ] ================================================
[2026-08-25 04:03:44,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:03:44
[2026-08-25 04:03:45,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:03:45,699.699 INFO    ] Initializing speech engine...
[2026-08-25 04:03:45,719.719 INFO    ] 2026-08-25 04:03:45
[2026-08-25 04:03:45,980.980 INFO    ] 2026-08-25 04:03:45
[2026-08-25 04:03:46,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:03:46,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:03:46,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:03:46,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:03:46,348.348 INFO    ] time= 25/08/2026 04:03:46
[2026-08-25 04:03:46,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:03:46,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:03:46,468.468 INFO    ] No existing commands found in stream
[2026-08-25 04:03:51,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:03:51,483.483 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 04:03:55,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:03:55,910.910 INFO    ] Checking for system updates...
[2026-08-25 04:03:55,944.944 INFO    ] 200
[2026-08-25 04:03:55,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:56,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:03:56,007.007 INFO    ] No update needed
[2026-08-25 04:03:56,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 04:03:56,045.045 INFO    ] 200
[2026-08-25 04:03:56,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:03:56,091.091 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:03:56,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:03:56,139.139 INFO    ] No camera update needed
[2026-08-25 04:03:56,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:03:56,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:03:56,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:03:56,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:03:58,192.192 INFO    ] ================================================
[2026-08-25 04:03:58,207.207 INFO    ] Launching Daemon at Tue Aug 25 04:03:58 IST 2026
[2026-08-25 04:03:58,218.218 INFO    ] ================================================
[2026-08-25 04:03:58,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:03:58
[2026-08-25 04:03:59,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:03:59,627.627 INFO    ] Initializing speech engine...
[2026-08-25 04:03:59,641.641 INFO    ] 2026-08-25 04:03:59
[2026-08-25 04:03:59,912.912 INFO    ] 2026-08-25 04:03:59
[2026-08-25 04:03:59,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:04:00,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:04:00,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:04:00,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:04:00,336.336 INFO    ] time= 25/08/2026 04:04:00
[2026-08-25 04:04:00,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:04:00,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:04:00,422.422 INFO    ] No existing commands found in stream
[2026-08-25 04:04:05,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:04:05,450.450 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 04:04:05,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:04:05,973.973 INFO    ] Checking for system updates...
[2026-08-25 04:04:06,009.009 INFO    ] 200
[2026-08-25 04:04:06,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:06,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:06,067.067 INFO    ] No update needed
[2026-08-25 04:04:06,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 04:04:06,102.102 INFO    ] 200
[2026-08-25 04:04:06,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:06,148.148 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:04:06,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:06,196.196 INFO    ] No camera update needed
[2026-08-25 04:04:06,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:04:06,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:04:06,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:04:06,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:04:08,252.252 INFO    ] ================================================
[2026-08-25 04:04:08,267.267 INFO    ] Launching Daemon at Tue Aug 25 04:04:08 IST 2026
[2026-08-25 04:04:08,278.278 INFO    ] ================================================
[2026-08-25 04:04:08,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:04:08
[2026-08-25 04:04:09,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:04:09,854.854 INFO    ] Initializing speech engine...
[2026-08-25 04:04:09,867.867 INFO    ] 2026-08-25 04:04:09
[2026-08-25 04:04:10,144.144 INFO    ] 2026-08-25 04:04:10
[2026-08-25 04:04:10,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:04:10,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:04:10,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:04:10,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:04:10,680.680 INFO    ] time= 25/08/2026 04:04:10
[2026-08-25 04:04:10,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:04:10,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:04:10,841.841 INFO    ] No existing commands found in stream
[2026-08-25 04:04:15,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:04:15,870.870 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 04:04:17,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:04:17,687.687 INFO    ] Checking for system updates...
[2026-08-25 04:04:17,727.727 INFO    ] 200
[2026-08-25 04:04:17,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:17,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:17,791.791 INFO    ] No update needed
[2026-08-25 04:04:17,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 04:04:17,827.827 INFO    ] 200
[2026-08-25 04:04:17,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:17,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:04:17,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:17,933.933 INFO    ] No camera update needed
[2026-08-25 04:04:17,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:04:17,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:04:17,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:04:17,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:04:19,989.989 INFO    ] ================================================
[2026-08-25 04:04:20,004.004 INFO    ] Launching Daemon at Tue Aug 25 04:04:19 IST 2026
[2026-08-25 04:04:20,016.016 INFO    ] ================================================
[2026-08-25 04:04:20,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:04:20
[2026-08-25 04:04:21,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:04:21,591.591 INFO    ] Initializing speech engine...
[2026-08-25 04:04:21,599.599 INFO    ] 2026-08-25 04:04:21
[2026-08-25 04:04:21,869.869 INFO    ] 2026-08-25 04:04:21
[2026-08-25 04:04:21,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:04:22,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:04:22,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:04:22,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:04:22,330.330 INFO    ] time= 25/08/2026 04:04:22
[2026-08-25 04:04:22,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:04:22,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:04:22,538.538 INFO    ] No existing commands found in stream
[2026-08-25 04:04:27,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:04:27,573.573 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 04:04:30,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:04:30,549.549 INFO    ] Checking for system updates...
[2026-08-25 04:04:30,591.591 INFO    ] 200
[2026-08-25 04:04:30,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:30,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:30,655.655 INFO    ] No update needed
[2026-08-25 04:04:30,658.658 INFO    ] Checking for camera pi updates...
[2026-08-25 04:04:30,696.696 INFO    ] 200
[2026-08-25 04:04:30,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:30,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:04:30,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:30,799.799 INFO    ] No camera update needed
[2026-08-25 04:04:30,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:04:30,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:04:30,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:04:30,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:04:32,857.857 INFO    ] ================================================
[2026-08-25 04:04:32,874.874 INFO    ] Launching Daemon at Tue Aug 25 04:04:32 IST 2026
[2026-08-25 04:04:32,886.886 INFO    ] ================================================
[2026-08-25 04:04:33,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:04:33
[2026-08-25 04:04:34,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:04:34,370.370 INFO    ] Initializing speech engine...
[2026-08-25 04:04:34,395.395 INFO    ] 2026-08-25 04:04:34
[2026-08-25 04:04:34,651.651 INFO    ] 2026-08-25 04:04:34
[2026-08-25 04:04:34,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:04:34,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:04:34,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:04:35,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:04:35,030.030 INFO    ] time= 25/08/2026 04:04:35
[2026-08-25 04:04:35,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:04:35,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:04:35,213.213 INFO    ] No existing commands found in stream
[2026-08-25 04:04:40,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:04:40,246.246 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 04:04:43,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:04:43,199.199 INFO    ] Checking for system updates...
[2026-08-25 04:04:43,235.235 INFO    ] 200
[2026-08-25 04:04:43,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:43,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:43,291.291 INFO    ] No update needed
[2026-08-25 04:04:43,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 04:04:43,327.327 INFO    ] 200
[2026-08-25 04:04:43,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:43,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:04:43,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:43,438.438 INFO    ] No camera update needed
[2026-08-25 04:04:43,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:04:43,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:04:43,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:04:43,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:04:45,492.492 INFO    ] ================================================
[2026-08-25 04:04:45,508.508 INFO    ] Launching Daemon at Tue Aug 25 04:04:45 IST 2026
[2026-08-25 04:04:45,519.519 INFO    ] ================================================
[2026-08-25 04:04:46,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:04:46
[2026-08-25 04:04:46,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:04:46,956.956 INFO    ] Initializing speech engine...
[2026-08-25 04:04:46,965.965 INFO    ] 2026-08-25 04:04:46
[2026-08-25 04:04:47,210.210 INFO    ] 2026-08-25 04:04:47
[2026-08-25 04:04:47,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:04:47,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:04:47,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:04:47,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:04:47,584.584 INFO    ] time= 25/08/2026 04:04:47
[2026-08-25 04:04:47,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:04:47,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:04:47,775.775 INFO    ] No existing commands found in stream
[2026-08-25 04:04:52,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:04:52,789.789 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 04:04:55,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:04:55,960.960 INFO    ] Checking for system updates...
[2026-08-25 04:04:56,003.003 INFO    ] 200
[2026-08-25 04:04:56,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:56,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:56,059.059 INFO    ] No update needed
[2026-08-25 04:04:56,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 04:04:56,094.094 INFO    ] 200
[2026-08-25 04:04:56,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:04:56,138.138 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:04:56,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:04:56,198.198 INFO    ] No camera update needed
[2026-08-25 04:04:56,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:04:56,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:04:56,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:04:56,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:04:58,255.255 INFO    ] ================================================
[2026-08-25 04:04:58,271.271 INFO    ] Launching Daemon at Tue Aug 25 04:04:58 IST 2026
[2026-08-25 04:04:58,282.282 INFO    ] ================================================
[2026-08-25 04:04:58,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:04:58
[2026-08-25 04:04:59,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:04:59,703.703 INFO    ] Initializing speech engine...
[2026-08-25 04:04:59,712.712 INFO    ] 2026-08-25 04:04:59
[2026-08-25 04:04:59,969.969 INFO    ] 2026-08-25 04:04:59
[2026-08-25 04:05:00,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:05:00,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:05:00,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:05:00,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:05:00,408.408 INFO    ] time= 25/08/2026 04:05:00
[2026-08-25 04:05:00,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:05:00,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:05:00,655.655 INFO    ] No existing commands found in stream
[2026-08-25 04:05:05,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:05:05,681.681 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 04:05:07,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:05:07,545.545 INFO    ] Checking for system updates...
[2026-08-25 04:05:07,580.580 INFO    ] 200
[2026-08-25 04:05:07,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:07,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:05:07,646.646 INFO    ] No update needed
[2026-08-25 04:05:07,649.649 INFO    ] Checking for camera pi updates...
[2026-08-25 04:05:07,683.683 INFO    ] 200
[2026-08-25 04:05:07,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:07,726.726 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:05:07,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:05:07,779.779 INFO    ] No camera update needed
[2026-08-25 04:05:07,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:05:07,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:05:07,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:05:07,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:05:09,833.833 INFO    ] ================================================
[2026-08-25 04:05:09,849.849 INFO    ] Launching Daemon at Tue Aug 25 04:05:09 IST 2026
[2026-08-25 04:05:09,859.859 INFO    ] ================================================
[2026-08-25 04:05:10,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:05:10
[2026-08-25 04:05:11,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:05:11,291.291 INFO    ] Initializing speech engine...
[2026-08-25 04:05:11,301.301 INFO    ] 2026-08-25 04:05:11
[2026-08-25 04:05:11,547.547 INFO    ] 2026-08-25 04:05:11
[2026-08-25 04:05:11,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:05:11,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:05:11,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:05:11,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:05:12,022.022 INFO    ] time= 25/08/2026 04:05:11
[2026-08-25 04:05:12,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:05:12,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:05:12,247.247 INFO    ] No existing commands found in stream
[2026-08-25 04:05:17,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:05:17,273.273 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 04:05:20,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:05:20,725.725 INFO    ] Checking for system updates...
[2026-08-25 04:05:20,765.765 INFO    ] 200
[2026-08-25 04:05:20,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:20,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:05:20,828.828 INFO    ] No update needed
[2026-08-25 04:05:20,830.830 INFO    ] Checking for camera pi updates...
[2026-08-25 04:05:20,871.871 INFO    ] 200
[2026-08-25 04:05:20,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:20,913.913 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:05:20,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:05:20,965.965 INFO    ] No camera update needed
[2026-08-25 04:05:20,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:05:20,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:05:20,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:05:20,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:05:23,021.021 INFO    ] ================================================
[2026-08-25 04:05:23,037.037 INFO    ] Launching Daemon at Tue Aug 25 04:05:23 IST 2026
[2026-08-25 04:05:23,047.047 INFO    ] ================================================
[2026-08-25 04:05:23,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:05:23
[2026-08-25 04:05:24,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:05:24,464.464 INFO    ] Initializing speech engine...
[2026-08-25 04:05:24,480.480 INFO    ] 2026-08-25 04:05:24
[2026-08-25 04:05:24,749.749 INFO    ] 2026-08-25 04:05:24
[2026-08-25 04:05:24,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:05:24,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:05:24,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:05:25,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:05:25,126.126 INFO    ] time= 25/08/2026 04:05:25
[2026-08-25 04:05:25,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:05:25,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:05:25,252.252 INFO    ] No existing commands found in stream
[2026-08-25 04:05:30,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:05:30,274.274 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 04:05:34,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:05:34,321.321 INFO    ] Checking for system updates...
[2026-08-25 04:05:34,356.356 INFO    ] 200
[2026-08-25 04:05:34,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:34,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:05:34,419.419 INFO    ] No update needed
[2026-08-25 04:05:34,421.421 INFO    ] Checking for camera pi updates...
[2026-08-25 04:05:34,455.455 INFO    ] 200
[2026-08-25 04:05:34,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:34,502.502 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:05:34,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:05:34,549.549 INFO    ] No camera update needed
[2026-08-25 04:05:34,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:05:34,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:05:34,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:05:34,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:05:36,603.603 INFO    ] ================================================
[2026-08-25 04:05:36,618.618 INFO    ] Launching Daemon at Tue Aug 25 04:05:36 IST 2026
[2026-08-25 04:05:36,628.628 INFO    ] ================================================
[2026-08-25 04:05:37,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:05:37
[2026-08-25 04:05:37,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:05:38,031.031 INFO    ] Initializing speech engine...
[2026-08-25 04:05:38,037.037 INFO    ] 2026-08-25 04:05:38
[2026-08-25 04:05:38,335.335 INFO    ] 2026-08-25 04:05:38
[2026-08-25 04:05:38,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:05:38,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:05:38,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:05:38,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:05:38,750.750 INFO    ] time= 25/08/2026 04:05:38
[2026-08-25 04:05:38,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:05:38,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:05:38,832.832 INFO    ] No existing commands found in stream
[2026-08-25 04:05:43,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:05:43,849.849 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 04:05:45,944.944 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:05:45,947.947 INFO    ] Checking for system updates...
[2026-08-25 04:05:45,982.982 INFO    ] 200
[2026-08-25 04:05:45,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:46,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:05:46,039.039 INFO    ] No update needed
[2026-08-25 04:05:46,041.041 INFO    ] Checking for camera pi updates...
[2026-08-25 04:05:46,074.074 INFO    ] 200
[2026-08-25 04:05:46,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:46,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:05:46,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:05:46,263.263 INFO    ] No camera update needed
[2026-08-25 04:05:46,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:05:46,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:05:46,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:05:46,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:05:48,317.317 INFO    ] ================================================
[2026-08-25 04:05:48,332.332 INFO    ] Launching Daemon at Tue Aug 25 04:05:48 IST 2026
[2026-08-25 04:05:48,342.342 INFO    ] ================================================
[2026-08-25 04:05:48,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:05:48
[2026-08-25 04:05:49,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:05:49,800.800 INFO    ] Initializing speech engine...
[2026-08-25 04:05:49,807.807 INFO    ] 2026-08-25 04:05:49
[2026-08-25 04:05:50,067.067 INFO    ] 2026-08-25 04:05:50
[2026-08-25 04:05:50,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:05:50,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:05:50,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:05:50,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:05:50,531.531 INFO    ] time= 25/08/2026 04:05:50
[2026-08-25 04:05:50,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:05:50,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:05:50,759.759 INFO    ] No existing commands found in stream
[2026-08-25 04:05:55,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:05:55,778.778 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 04:05:59,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:05:59,830.830 INFO    ] Checking for system updates...
[2026-08-25 04:05:59,869.869 INFO    ] 200
[2026-08-25 04:05:59,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:05:59,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:05:59,933.933 INFO    ] No update needed
[2026-08-25 04:05:59,936.936 INFO    ] Checking for camera pi updates...
[2026-08-25 04:05:59,969.969 INFO    ] 200
[2026-08-25 04:05:59,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:00,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:06:00,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:00,068.068 INFO    ] No camera update needed
[2026-08-25 04:06:00,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:06:00,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:06:00,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:06:00,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:06:02,126.126 INFO    ] ================================================
[2026-08-25 04:06:02,146.146 INFO    ] Launching Daemon at Tue Aug 25 04:06:02 IST 2026
[2026-08-25 04:06:02,160.160 INFO    ] ================================================
[2026-08-25 04:06:02,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:06:02
[2026-08-25 04:06:03,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:06:03,666.666 INFO    ] Initializing speech engine...
[2026-08-25 04:06:03,679.679 INFO    ] 2026-08-25 04:06:03
[2026-08-25 04:06:03,943.943 INFO    ] 2026-08-25 04:06:03
[2026-08-25 04:06:03,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:06:04,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:06:04,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:06:04,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:06:04,317.317 INFO    ] time= 25/08/2026 04:06:04
[2026-08-25 04:06:04,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:06:04,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:06:04,487.487 INFO    ] No existing commands found in stream
[2026-08-25 04:06:09,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:06:09,520.520 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 04:06:11,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:06:11,834.834 INFO    ] Checking for system updates...
[2026-08-25 04:06:11,873.873 INFO    ] 200
[2026-08-25 04:06:11,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:11,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:11,931.931 INFO    ] No update needed
[2026-08-25 04:06:11,933.933 INFO    ] Checking for camera pi updates...
[2026-08-25 04:06:11,970.970 INFO    ] 200
[2026-08-25 04:06:11,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:12,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:06:12,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:12,070.070 INFO    ] No camera update needed
[2026-08-25 04:06:12,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:06:12,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:06:12,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:06:12,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:06:14,125.125 INFO    ] ================================================
[2026-08-25 04:06:14,140.140 INFO    ] Launching Daemon at Tue Aug 25 04:06:14 IST 2026
[2026-08-25 04:06:14,151.151 INFO    ] ================================================
[2026-08-25 04:06:14,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:06:14
[2026-08-25 04:06:15,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:06:15,550.550 INFO    ] Initializing speech engine...
[2026-08-25 04:06:15,573.573 INFO    ] 2026-08-25 04:06:15
[2026-08-25 04:06:15,829.829 INFO    ] 2026-08-25 04:06:15
[2026-08-25 04:06:15,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:06:16,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:06:16,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:06:16,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:06:16,308.308 INFO    ] time= 25/08/2026 04:06:16
[2026-08-25 04:06:16,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:06:16,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:06:16,523.523 INFO    ] No existing commands found in stream
[2026-08-25 04:06:21,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:06:21,551.551 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 04:06:23,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:06:23,632.632 INFO    ] Checking for system updates...
[2026-08-25 04:06:23,668.668 INFO    ] 200
[2026-08-25 04:06:23,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:23,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:23,725.725 INFO    ] No update needed
[2026-08-25 04:06:23,728.728 INFO    ] Checking for camera pi updates...
[2026-08-25 04:06:23,761.761 INFO    ] 200
[2026-08-25 04:06:23,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:23,805.805 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:06:23,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:23,860.860 INFO    ] No camera update needed
[2026-08-25 04:06:23,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:06:23,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:06:23,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:06:23,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:06:25,917.917 INFO    ] ================================================
[2026-08-25 04:06:25,932.932 INFO    ] Launching Daemon at Tue Aug 25 04:06:25 IST 2026
[2026-08-25 04:06:25,943.943 INFO    ] ================================================
[2026-08-25 04:06:26,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:06:26
[2026-08-25 04:06:27,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:06:27,405.405 INFO    ] Initializing speech engine...
[2026-08-25 04:06:27,419.419 INFO    ] 2026-08-25 04:06:27
[2026-08-25 04:06:27,703.703 INFO    ] 2026-08-25 04:06:27
[2026-08-25 04:06:27,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:06:27,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:06:27,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:06:28,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:06:28,069.069 INFO    ] time= 25/08/2026 04:06:28
[2026-08-25 04:06:28,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:06:28,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:06:28,199.199 INFO    ] No existing commands found in stream
[2026-08-25 04:06:33,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:06:33,213.213 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 04:06:33,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:06:33,870.870 INFO    ] Checking for system updates...
[2026-08-25 04:06:33,906.906 INFO    ] 200
[2026-08-25 04:06:33,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:33,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:33,969.969 INFO    ] No update needed
[2026-08-25 04:06:33,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 04:06:34,005.005 INFO    ] 200
[2026-08-25 04:06:34,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:34,047.047 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:06:34,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:34,106.106 INFO    ] No camera update needed
[2026-08-25 04:06:34,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:06:34,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:06:34,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:06:34,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:06:36,159.159 INFO    ] ================================================
[2026-08-25 04:06:36,174.174 INFO    ] Launching Daemon at Tue Aug 25 04:06:36 IST 2026
[2026-08-25 04:06:36,184.184 INFO    ] ================================================
[2026-08-25 04:06:36,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:06:36
[2026-08-25 04:06:37,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:06:37,643.643 INFO    ] Initializing speech engine...
[2026-08-25 04:06:37,653.653 INFO    ] 2026-08-25 04:06:37
[2026-08-25 04:06:37,918.918 INFO    ] 2026-08-25 04:06:37
[2026-08-25 04:06:37,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:06:38,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:06:38,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:06:38,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:06:38,313.313 INFO    ] time= 25/08/2026 04:06:38
[2026-08-25 04:06:38,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:06:38,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:06:38,466.466 INFO    ] No existing commands found in stream
[2026-08-25 04:06:43,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:06:43,486.486 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 04:06:45,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:06:45,769.769 INFO    ] Checking for system updates...
[2026-08-25 04:06:45,805.805 INFO    ] 200
[2026-08-25 04:06:45,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:45,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:45,866.866 INFO    ] No update needed
[2026-08-25 04:06:45,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 04:06:45,904.904 INFO    ] 200
[2026-08-25 04:06:45,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:45,949.949 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:06:45,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:45,997.997 INFO    ] No camera update needed
[2026-08-25 04:06:45,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:06:46,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:06:46,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:06:46,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:06:48,052.052 INFO    ] ================================================
[2026-08-25 04:06:48,067.067 INFO    ] Launching Daemon at Tue Aug 25 04:06:48 IST 2026
[2026-08-25 04:06:48,077.077 INFO    ] ================================================
[2026-08-25 04:06:48,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:06:48
[2026-08-25 04:06:49,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:06:49,528.528 INFO    ] Initializing speech engine...
[2026-08-25 04:06:49,534.534 INFO    ] 2026-08-25 04:06:49
[2026-08-25 04:06:49,781.781 INFO    ] 2026-08-25 04:06:49
[2026-08-25 04:06:49,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:06:49,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:06:50,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:06:50,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:06:50,149.149 INFO    ] time= 25/08/2026 04:06:50
[2026-08-25 04:06:50,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:06:50,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:06:50,316.316 INFO    ] No existing commands found in stream
[2026-08-25 04:06:55,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:06:55,355.355 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 04:06:58,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:06:58,319.319 INFO    ] Checking for system updates...
[2026-08-25 04:06:58,355.355 INFO    ] 200
[2026-08-25 04:06:58,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:58,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:58,417.417 INFO    ] No update needed
[2026-08-25 04:06:58,420.420 INFO    ] Checking for camera pi updates...
[2026-08-25 04:06:58,453.453 INFO    ] 200
[2026-08-25 04:06:58,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:06:58,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:06:58,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:06:58,556.556 INFO    ] No camera update needed
[2026-08-25 04:06:58,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:06:58,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:06:58,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:06:58,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:07:00,613.613 INFO    ] ================================================
[2026-08-25 04:07:00,632.632 INFO    ] Launching Daemon at Tue Aug 25 04:07:00 IST 2026
[2026-08-25 04:07:00,643.643 INFO    ] ================================================
[2026-08-25 04:07:01,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:07:01
[2026-08-25 04:07:02,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:07:02,376.376 INFO    ] Initializing speech engine...
[2026-08-25 04:07:02,406.406 INFO    ] 2026-08-25 04:07:02
[2026-08-25 04:07:02,827.827 INFO    ] 2026-08-25 04:07:02
[2026-08-25 04:07:02,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:07:03,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:07:03,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:07:03,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:07:03,277.277 INFO    ] time= 25/08/2026 04:07:03
[2026-08-25 04:07:03,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:07:03,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:07:03,466.466 INFO    ] No existing commands found in stream
[2026-08-25 04:07:08,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:07:08,528.528 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 04:07:10,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:07:10,659.659 INFO    ] Checking for system updates...
[2026-08-25 04:07:10,694.694 INFO    ] 200
[2026-08-25 04:07:10,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:10,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:07:10,760.760 INFO    ] No update needed
[2026-08-25 04:07:10,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 04:07:10,798.798 INFO    ] 200
[2026-08-25 04:07:10,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:10,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:07:10,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:07:10,892.892 INFO    ] No camera update needed
[2026-08-25 04:07:10,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:07:10,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:07:10,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:07:10,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:07:12,948.948 INFO    ] ================================================
[2026-08-25 04:07:12,963.963 INFO    ] Launching Daemon at Tue Aug 25 04:07:12 IST 2026
[2026-08-25 04:07:12,973.973 INFO    ] ================================================
[2026-08-25 04:07:13,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:07:13
[2026-08-25 04:07:14,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:07:14,433.433 INFO    ] Initializing speech engine...
[2026-08-25 04:07:14,455.455 INFO    ] 2026-08-25 04:07:14
[2026-08-25 04:07:14,708.708 INFO    ] 2026-08-25 04:07:14
[2026-08-25 04:07:14,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:07:14,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:07:14,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:07:15,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:07:15,076.076 INFO    ] time= 25/08/2026 04:07:15
[2026-08-25 04:07:15,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:07:15,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:07:15,254.254 INFO    ] No existing commands found in stream
[2026-08-25 04:07:20,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:07:20,282.282 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 04:07:22,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:07:22,568.568 INFO    ] Checking for system updates...
[2026-08-25 04:07:22,607.607 INFO    ] 200
[2026-08-25 04:07:22,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:22,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:07:22,665.665 INFO    ] No update needed
[2026-08-25 04:07:22,668.668 INFO    ] Checking for camera pi updates...
[2026-08-25 04:07:22,702.702 INFO    ] 200
[2026-08-25 04:07:22,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:22,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:07:22,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:07:22,808.808 INFO    ] No camera update needed
[2026-08-25 04:07:22,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:07:22,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:07:22,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:07:22,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:07:24,863.863 INFO    ] ================================================
[2026-08-25 04:07:24,878.878 INFO    ] Launching Daemon at Tue Aug 25 04:07:24 IST 2026
[2026-08-25 04:07:24,889.889 INFO    ] ================================================
[2026-08-25 04:07:25,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:07:25
[2026-08-25 04:07:26,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:07:26,424.424 INFO    ] Initializing speech engine...
[2026-08-25 04:07:26,433.433 INFO    ] 2026-08-25 04:07:26
[2026-08-25 04:07:26,708.708 INFO    ] 2026-08-25 04:07:26
[2026-08-25 04:07:26,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:07:27,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:07:27,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:07:27,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:07:27,226.226 INFO    ] time= 25/08/2026 04:07:27
[2026-08-25 04:07:27,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:07:27,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:07:27,452.452 INFO    ] No existing commands found in stream
[2026-08-25 04:07:32,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:07:32,480.480 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 04:07:34,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:07:34,518.518 INFO    ] Checking for system updates...
[2026-08-25 04:07:34,554.554 INFO    ] 200
[2026-08-25 04:07:34,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:34,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:07:34,619.619 INFO    ] No update needed
[2026-08-25 04:07:34,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 04:07:34,659.659 INFO    ] 200
[2026-08-25 04:07:34,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:34,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:07:34,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:07:34,766.766 INFO    ] No camera update needed
[2026-08-25 04:07:34,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:07:34,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:07:34,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:07:34,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:07:36,825.825 INFO    ] ================================================
[2026-08-25 04:07:36,840.840 INFO    ] Launching Daemon at Tue Aug 25 04:07:36 IST 2026
[2026-08-25 04:07:36,850.850 INFO    ] ================================================
[2026-08-25 04:07:37,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:07:37
[2026-08-25 04:07:38,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:07:38,283.283 INFO    ] Initializing speech engine...
[2026-08-25 04:07:38,308.308 INFO    ] 2026-08-25 04:07:38
[2026-08-25 04:07:38,583.583 INFO    ] 2026-08-25 04:07:38
[2026-08-25 04:07:38,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:07:38,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:07:38,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:07:38,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:07:38,958.958 INFO    ] time= 25/08/2026 04:07:38
[2026-08-25 04:07:38,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:07:38,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:07:39,083.083 INFO    ] No existing commands found in stream
[2026-08-25 04:07:44,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:07:44,104.104 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 04:07:47,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:07:47,179.179 INFO    ] Checking for system updates...
[2026-08-25 04:07:47,220.220 INFO    ] 200
[2026-08-25 04:07:47,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:47,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:07:47,288.288 INFO    ] No update needed
[2026-08-25 04:07:47,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 04:07:47,331.331 INFO    ] 200
[2026-08-25 04:07:47,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:07:47,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:07:47,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:07:47,529.529 INFO    ] No camera update needed
[2026-08-25 04:07:47,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:07:47,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:07:47,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:07:47,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:07:49,586.586 INFO    ] ================================================
[2026-08-25 04:07:49,601.601 INFO    ] Launching Daemon at Tue Aug 25 04:07:49 IST 2026
[2026-08-25 04:07:49,612.612 INFO    ] ================================================
[2026-08-25 04:07:50,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:07:50
[2026-08-25 04:07:50,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:07:51,073.073 INFO    ] Initializing speech engine...
[2026-08-25 04:07:51,082.082 INFO    ] 2026-08-25 04:07:51
[2026-08-25 04:07:51,372.372 INFO    ] 2026-08-25 04:07:51
[2026-08-25 04:07:51,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:07:51,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:07:51,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:07:51,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:07:51,753.753 INFO    ] time= 25/08/2026 04:07:51
[2026-08-25 04:07:51,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:07:51,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:07:51,912.912 INFO    ] No existing commands found in stream
[2026-08-25 04:07:56,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:07:56,940.940 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 04:08:00,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:08:00,852.852 INFO    ] Checking for system updates...
[2026-08-25 04:08:00,891.891 INFO    ] 200
[2026-08-25 04:08:00,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:00,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:00,950.950 INFO    ] No update needed
[2026-08-25 04:08:00,952.952 INFO    ] Checking for camera pi updates...
[2026-08-25 04:08:00,985.985 INFO    ] 200
[2026-08-25 04:08:00,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:01,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:08:01,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:01,090.090 INFO    ] No camera update needed
[2026-08-25 04:08:01,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:08:01,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:08:01,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:08:01,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:08:03,147.147 INFO    ] ================================================
[2026-08-25 04:08:03,162.162 INFO    ] Launching Daemon at Tue Aug 25 04:08:03 IST 2026
[2026-08-25 04:08:03,176.176 INFO    ] ================================================
[2026-08-25 04:08:03,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:08:03
[2026-08-25 04:08:04,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:08:04,778.778 INFO    ] Initializing speech engine...
[2026-08-25 04:08:04,787.787 INFO    ] 2026-08-25 04:08:04
[2026-08-25 04:08:05,037.037 INFO    ] 2026-08-25 04:08:05
[2026-08-25 04:08:05,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:08:05,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:08:05,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:08:05,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:08:05,523.523 INFO    ] time= 25/08/2026 04:08:05
[2026-08-25 04:08:05,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:08:05,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:08:05,721.721 INFO    ] No existing commands found in stream
[2026-08-25 04:08:10,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:08:10,755.755 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 04:08:12,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:08:12,700.700 INFO    ] Checking for system updates...
[2026-08-25 04:08:12,736.736 INFO    ] 200
[2026-08-25 04:08:12,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:12,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:12,801.801 INFO    ] No update needed
[2026-08-25 04:08:12,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 04:08:12,841.841 INFO    ] 200
[2026-08-25 04:08:12,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:12,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:08:12,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:12,936.936 INFO    ] No camera update needed
[2026-08-25 04:08:12,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:08:12,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:08:12,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:08:12,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:08:14,991.991 INFO    ] ================================================
[2026-08-25 04:08:15,006.006 INFO    ] Launching Daemon at Tue Aug 25 04:08:15 IST 2026
[2026-08-25 04:08:15,017.017 INFO    ] ================================================
[2026-08-25 04:08:15,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:08:15
[2026-08-25 04:08:16,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:08:16,672.672 INFO    ] Initializing speech engine...
[2026-08-25 04:08:16,683.683 INFO    ] 2026-08-25 04:08:16
[2026-08-25 04:08:16,992.992 INFO    ] 2026-08-25 04:08:16
[2026-08-25 04:08:17,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:08:17,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:08:17,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:08:17,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:08:17,418.418 INFO    ] time= 25/08/2026 04:08:17
[2026-08-25 04:08:17,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:08:17,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:08:17,639.639 INFO    ] No existing commands found in stream
[2026-08-25 04:08:22,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:08:22,670.670 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 04:08:27,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:08:27,080.080 INFO    ] Checking for system updates...
[2026-08-25 04:08:27,121.121 INFO    ] 200
[2026-08-25 04:08:27,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:27,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:08:27,181.181 INFO    ] No update needed
[2026-08-25 04:08:27,184.184 INFO    ] Checking for camera pi updates...
[2026-08-25 04:08:27,222.222 INFO    ] 200
[2026-08-25 04:08:27,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:27,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:08:27,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:08:27,313.313 INFO    ] No camera update needed
[2026-08-25 04:08:27,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:08:27,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:08:27,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:08:27,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:08:29,368.368 INFO    ] ================================================
[2026-08-25 04:08:29,383.383 INFO    ] Launching Daemon at Tue Aug 25 04:08:29 IST 2026
[2026-08-25 04:08:29,393.393 INFO    ] ================================================
[2026-08-25 04:08:29,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:08:29
[2026-08-25 04:08:30,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:08:30,850.850 INFO    ] Initializing speech engine...
[2026-08-25 04:08:30,855.855 INFO    ] 2026-08-25 04:08:30
[2026-08-25 04:08:31,118.118 INFO    ] 2026-08-25 04:08:31
[2026-08-25 04:08:31,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:08:31,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:08:31,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:08:31,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:08:31,615.615 INFO    ] time= 25/08/2026 04:08:31
[2026-08-25 04:08:31,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:08:31,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:08:31,823.823 INFO    ] No existing commands found in stream
[2026-08-25 04:08:36,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:08:36,850.850 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 04:08:39,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:08:39,449.449 INFO    ] Checking for system updates...
[2026-08-25 04:08:39,489.489 INFO    ] 200
[2026-08-25 04:08:39,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:39,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:39,546.546 INFO    ] No update needed
[2026-08-25 04:08:39,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 04:08:39,582.582 INFO    ] 200
[2026-08-25 04:08:39,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:39,625.625 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:08:39,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:39,675.675 INFO    ] No camera update needed
[2026-08-25 04:08:39,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:08:39,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:08:39,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:08:39,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:08:41,735.735 INFO    ] ================================================
[2026-08-25 04:08:41,753.753 INFO    ] Launching Daemon at Tue Aug 25 04:08:41 IST 2026
[2026-08-25 04:08:41,764.764 INFO    ] ================================================
[2026-08-25 04:08:42,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:08:42
[2026-08-25 04:08:42,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:08:43,178.178 INFO    ] Initializing speech engine...
[2026-08-25 04:08:43,191.191 INFO    ] 2026-08-25 04:08:43
[2026-08-25 04:08:43,442.442 INFO    ] 2026-08-25 04:08:43
[2026-08-25 04:08:43,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:08:43,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:08:43,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:08:43,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:08:43,817.817 INFO    ] time= 25/08/2026 04:08:43
[2026-08-25 04:08:43,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:08:43,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:08:44,016.016 INFO    ] No existing commands found in stream
[2026-08-25 04:08:49,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:08:49,030.030 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 04:08:53,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:08:53,325.325 INFO    ] Checking for system updates...
[2026-08-25 04:08:53,361.361 INFO    ] 200
[2026-08-25 04:08:53,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:53,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:53,430.430 INFO    ] No update needed
[2026-08-25 04:08:53,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 04:08:53,472.472 INFO    ] 200
[2026-08-25 04:08:53,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:08:53,522.522 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:08:53,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:08:53,581.581 INFO    ] No camera update needed
[2026-08-25 04:08:53,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:08:53,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:08:53,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:08:53,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:08:55,641.641 INFO    ] ================================================
[2026-08-25 04:08:55,656.656 INFO    ] Launching Daemon at Tue Aug 25 04:08:55 IST 2026
[2026-08-25 04:08:55,667.667 INFO    ] ================================================
[2026-08-25 04:08:56,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:08:56
[2026-08-25 04:08:57,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:08:57,300.300 INFO    ] Initializing speech engine...
[2026-08-25 04:08:57,310.310 INFO    ] 2026-08-25 04:08:57
[2026-08-25 04:08:57,569.569 INFO    ] 2026-08-25 04:08:57
[2026-08-25 04:08:57,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:08:57,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:08:57,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:08:57,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:08:58,038.038 INFO    ] time= 25/08/2026 04:08:57
[2026-08-25 04:08:58,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:08:58,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:08:58,247.247 INFO    ] No existing commands found in stream
[2026-08-25 04:09:03,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:09:03,280.280 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 04:09:04,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:09:04,231.231 INFO    ] Checking for system updates...
[2026-08-25 04:09:04,269.269 INFO    ] 200
[2026-08-25 04:09:04,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:04,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:04,333.333 INFO    ] No update needed
[2026-08-25 04:09:04,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 04:09:04,372.372 INFO    ] 200
[2026-08-25 04:09:04,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:04,415.415 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:09:04,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:04,467.467 INFO    ] No camera update needed
[2026-08-25 04:09:04,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:09:04,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:09:04,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:09:04,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:09:06,523.523 INFO    ] ================================================
[2026-08-25 04:09:06,537.537 INFO    ] Launching Daemon at Tue Aug 25 04:09:06 IST 2026
[2026-08-25 04:09:06,548.548 INFO    ] ================================================
[2026-08-25 04:09:07,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:09:07
[2026-08-25 04:09:07,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:09:08,032.032 INFO    ] Initializing speech engine...
[2026-08-25 04:09:08,038.038 INFO    ] 2026-08-25 04:09:08
[2026-08-25 04:09:08,318.318 INFO    ] 2026-08-25 04:09:08
[2026-08-25 04:09:08,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:09:08,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:09:08,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:09:08,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:09:08,689.689 INFO    ] time= 25/08/2026 04:09:08
[2026-08-25 04:09:08,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:09:08,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:09:08,792.792 INFO    ] No existing commands found in stream
[2026-08-25 04:09:13,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:09:13,805.805 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 04:09:15,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:09:15,567.567 INFO    ] Checking for system updates...
[2026-08-25 04:09:15,602.602 INFO    ] 200
[2026-08-25 04:09:15,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:15,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:15,659.659 INFO    ] No update needed
[2026-08-25 04:09:15,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 04:09:15,695.695 INFO    ] 200
[2026-08-25 04:09:15,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:15,743.743 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:09:15,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:15,798.798 INFO    ] No camera update needed
[2026-08-25 04:09:15,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:09:15,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:09:15,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:09:15,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:09:17,853.853 INFO    ] ================================================
[2026-08-25 04:09:17,868.868 INFO    ] Launching Daemon at Tue Aug 25 04:09:17 IST 2026
[2026-08-25 04:09:17,879.879 INFO    ] ================================================
[2026-08-25 04:09:18,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:09:18
[2026-08-25 04:09:19,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:09:19,368.368 INFO    ] Initializing speech engine...
[2026-08-25 04:09:19,375.375 INFO    ] 2026-08-25 04:09:19
[2026-08-25 04:09:19,647.647 INFO    ] 2026-08-25 04:09:19
[2026-08-25 04:09:19,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:09:19,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:09:19,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:09:20,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:09:20,117.117 INFO    ] time= 25/08/2026 04:09:20
[2026-08-25 04:09:20,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:09:20,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:09:20,319.319 INFO    ] No existing commands found in stream
[2026-08-25 04:09:25,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:09:25,349.349 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 04:09:28,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:09:28,171.171 INFO    ] Checking for system updates...
[2026-08-25 04:09:28,207.207 INFO    ] 200
[2026-08-25 04:09:28,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:28,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:28,274.274 INFO    ] No update needed
[2026-08-25 04:09:28,276.276 INFO    ] Checking for camera pi updates...
[2026-08-25 04:09:28,313.313 INFO    ] 200
[2026-08-25 04:09:28,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:28,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:09:28,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:28,413.413 INFO    ] No camera update needed
[2026-08-25 04:09:28,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:09:28,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:09:28,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:09:28,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:09:30,468.468 INFO    ] ================================================
[2026-08-25 04:09:30,484.484 INFO    ] Launching Daemon at Tue Aug 25 04:09:30 IST 2026
[2026-08-25 04:09:30,496.496 INFO    ] ================================================
[2026-08-25 04:09:31,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:09:31
[2026-08-25 04:09:31,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:09:32,005.005 INFO    ] Initializing speech engine...
[2026-08-25 04:09:32,017.017 INFO    ] 2026-08-25 04:09:32
[2026-08-25 04:09:32,284.284 INFO    ] 2026-08-25 04:09:32
[2026-08-25 04:09:32,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:09:32,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:09:32,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:09:32,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:09:32,680.680 INFO    ] time= 25/08/2026 04:09:32
[2026-08-25 04:09:32,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:09:32,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:09:32,802.802 INFO    ] No existing commands found in stream
[2026-08-25 04:09:37,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:09:37,817.817 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 04:09:39,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:09:39,005.005 INFO    ] Checking for system updates...
[2026-08-25 04:09:39,050.050 INFO    ] 200
[2026-08-25 04:09:39,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:39,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:39,117.117 INFO    ] No update needed
[2026-08-25 04:09:39,119.119 INFO    ] Checking for camera pi updates...
[2026-08-25 04:09:39,156.156 INFO    ] 200
[2026-08-25 04:09:39,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:39,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:09:39,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:39,269.269 INFO    ] No camera update needed
[2026-08-25 04:09:39,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:09:39,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:09:39,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:09:39,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:09:41,323.323 INFO    ] ================================================
[2026-08-25 04:09:41,337.337 INFO    ] Launching Daemon at Tue Aug 25 04:09:41 IST 2026
[2026-08-25 04:09:41,348.348 INFO    ] ================================================
[2026-08-25 04:09:41,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:09:41
[2026-08-25 04:09:42,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:09:42,848.848 INFO    ] Initializing speech engine...
[2026-08-25 04:09:42,856.856 INFO    ] 2026-08-25 04:09:42
[2026-08-25 04:09:43,120.120 INFO    ] 2026-08-25 04:09:43
[2026-08-25 04:09:43,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:09:43,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:09:43,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:09:43,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:09:43,590.590 INFO    ] time= 25/08/2026 04:09:43
[2026-08-25 04:09:43,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:09:43,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:09:43,806.806 INFO    ] No existing commands found in stream
[2026-08-25 04:09:48,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:09:48,838.838 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 04:09:53,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:09:53,139.139 INFO    ] Checking for system updates...
[2026-08-25 04:09:53,175.175 INFO    ] 200
[2026-08-25 04:09:53,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:53,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:53,232.232 INFO    ] No update needed
[2026-08-25 04:09:53,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 04:09:53,268.268 INFO    ] 200
[2026-08-25 04:09:53,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:09:53,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:09:53,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:09:53,461.461 INFO    ] No camera update needed
[2026-08-25 04:09:53,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:09:53,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:09:53,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:09:53,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:09:55,519.519 INFO    ] ================================================
[2026-08-25 04:09:55,535.535 INFO    ] Launching Daemon at Tue Aug 25 04:09:55 IST 2026
[2026-08-25 04:09:55,545.545 INFO    ] ================================================
[2026-08-25 04:09:56,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:09:56
[2026-08-25 04:09:56,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:09:56,963.963 INFO    ] Initializing speech engine...
[2026-08-25 04:09:56,971.971 INFO    ] 2026-08-25 04:09:56
[2026-08-25 04:09:57,221.221 INFO    ] 2026-08-25 04:09:57
[2026-08-25 04:09:57,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:09:57,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:09:57,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:09:57,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:09:57,696.696 INFO    ] time= 25/08/2026 04:09:57
[2026-08-25 04:09:57,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:09:57,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:09:57,948.948 INFO    ] No existing commands found in stream
[2026-08-25 04:10:02,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:10:02,961.961 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 04:10:07,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:10:07,991.991 INFO    ] Checking for system updates...
[2026-08-25 04:10:08,035.035 INFO    ] 200
[2026-08-25 04:10:08,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:08,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:10:08,097.097 INFO    ] No update needed
[2026-08-25 04:10:08,100.100 INFO    ] Checking for camera pi updates...
[2026-08-25 04:10:08,138.138 INFO    ] 200
[2026-08-25 04:10:08,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:08,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:10:08,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:10:08,235.235 INFO    ] No camera update needed
[2026-08-25 04:10:08,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:10:08,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:10:08,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:10:08,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:10:10,297.297 INFO    ] ================================================
[2026-08-25 04:10:10,312.312 INFO    ] Launching Daemon at Tue Aug 25 04:10:10 IST 2026
[2026-08-25 04:10:10,323.323 INFO    ] ================================================
[2026-08-25 04:10:10,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:10:10
[2026-08-25 04:10:11,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:10:11,876.876 INFO    ] Initializing speech engine...
[2026-08-25 04:10:11,884.884 INFO    ] 2026-08-25 04:10:11
[2026-08-25 04:10:12,157.157 INFO    ] 2026-08-25 04:10:12
[2026-08-25 04:10:12,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:10:12,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:10:12,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:10:12,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:10:12,722.722 INFO    ] time= 25/08/2026 04:10:12
[2026-08-25 04:10:12,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:10:12,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:10:12,801.801 INFO    ] No existing commands found in stream
[2026-08-25 04:10:17,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:10:17,813.813 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 04:10:18,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:10:18,918.918 INFO    ] Checking for system updates...
[2026-08-25 04:10:18,957.957 INFO    ] 200
[2026-08-25 04:10:18,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:19,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:10:19,017.017 INFO    ] No update needed
[2026-08-25 04:10:19,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 04:10:19,058.058 INFO    ] 200
[2026-08-25 04:10:19,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:19,102.102 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:10:19,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:10:19,150.150 INFO    ] No camera update needed
[2026-08-25 04:10:19,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:10:19,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:10:19,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:10:19,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:10:21,208.208 INFO    ] ================================================
[2026-08-25 04:10:21,223.223 INFO    ] Launching Daemon at Tue Aug 25 04:10:21 IST 2026
[2026-08-25 04:10:21,234.234 INFO    ] ================================================
[2026-08-25 04:10:21,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:10:21
[2026-08-25 04:10:22,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:10:22,686.686 INFO    ] Initializing speech engine...
[2026-08-25 04:10:22,695.695 INFO    ] 2026-08-25 04:10:22
[2026-08-25 04:10:22,955.955 INFO    ] 2026-08-25 04:10:22
[2026-08-25 04:10:23,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:10:23,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:10:23,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:10:23,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:10:23,405.405 INFO    ] time= 25/08/2026 04:10:23
[2026-08-25 04:10:23,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:10:23,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:10:23,685.685 INFO    ] No existing commands found in stream
[2026-08-25 04:10:28,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:10:28,713.713 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 04:10:31,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:10:31,504.504 INFO    ] Checking for system updates...
[2026-08-25 04:10:31,551.551 INFO    ] 200
[2026-08-25 04:10:31,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:31,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:10:31,617.617 INFO    ] No update needed
[2026-08-25 04:10:31,620.620 INFO    ] Checking for camera pi updates...
[2026-08-25 04:10:31,658.658 INFO    ] 200
[2026-08-25 04:10:31,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:31,710.710 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:10:31,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:10:31,787.787 INFO    ] No camera update needed
[2026-08-25 04:10:31,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:10:31,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:10:31,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:10:31,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:10:33,845.845 INFO    ] ================================================
[2026-08-25 04:10:33,866.866 INFO    ] Launching Daemon at Tue Aug 25 04:10:33 IST 2026
[2026-08-25 04:10:33,876.876 INFO    ] ================================================
[2026-08-25 04:10:34,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:10:34
[2026-08-25 04:10:35,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:10:35,454.454 INFO    ] Initializing speech engine...
[2026-08-25 04:10:35,461.461 INFO    ] 2026-08-25 04:10:35
[2026-08-25 04:10:35,742.742 INFO    ] 2026-08-25 04:10:35
[2026-08-25 04:10:35,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:10:36,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:10:36,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:10:36,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:10:36,276.276 INFO    ] time= 25/08/2026 04:10:36
[2026-08-25 04:10:36,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:10:36,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:10:36,414.414 INFO    ] No existing commands found in stream
[2026-08-25 04:10:41,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:10:41,444.444 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 04:10:45,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:10:45,897.897 INFO    ] Checking for system updates...
[2026-08-25 04:10:45,933.933 INFO    ] 200
[2026-08-25 04:10:45,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:45,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:10:45,997.997 INFO    ] No update needed
[2026-08-25 04:10:46,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 04:10:46,038.038 INFO    ] 200
[2026-08-25 04:10:46,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:10:46,085.085 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:10:46,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:10:46,134.134 INFO    ] No camera update needed
[2026-08-25 04:10:46,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:10:46,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:10:46,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:10:46,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:10:48,187.187 INFO    ] ================================================
[2026-08-25 04:10:48,202.202 INFO    ] Launching Daemon at Tue Aug 25 04:10:48 IST 2026
[2026-08-25 04:10:48,213.213 INFO    ] ================================================
[2026-08-25 04:10:48,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:10:48
[2026-08-25 04:10:49,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:10:49,767.767 INFO    ] Initializing speech engine...
[2026-08-25 04:10:49,774.774 INFO    ] 2026-08-25 04:10:49
[2026-08-25 04:10:50,059.059 INFO    ] 2026-08-25 04:10:50
[2026-08-25 04:10:50,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:10:50,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:10:50,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:10:50,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:10:50,591.591 INFO    ] time= 25/08/2026 04:10:50
[2026-08-25 04:10:50,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:10:50,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:10:50,730.730 INFO    ] No existing commands found in stream
[2026-08-25 04:10:55,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:10:55,756.756 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 04:10:59,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:10:59,908.908 INFO    ] Checking for system updates...
[2026-08-25 04:10:59,944.944 INFO    ] 200
[2026-08-25 04:10:59,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:00,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:00,002.002 INFO    ] No update needed
[2026-08-25 04:11:00,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 04:11:00,039.039 INFO    ] 200
[2026-08-25 04:11:00,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:00,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:11:00,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:00,139.139 INFO    ] No camera update needed
[2026-08-25 04:11:00,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:11:00,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:11:00,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:11:00,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:11:02,200.200 INFO    ] ================================================
[2026-08-25 04:11:02,225.225 INFO    ] Launching Daemon at Tue Aug 25 04:11:02 IST 2026
[2026-08-25 04:11:02,239.239 INFO    ] ================================================
[2026-08-25 04:11:02,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:11:02
[2026-08-25 04:11:03,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:11:03,818.818 INFO    ] Initializing speech engine...
[2026-08-25 04:11:03,827.827 INFO    ] 2026-08-25 04:11:03
[2026-08-25 04:11:04,073.073 INFO    ] 2026-08-25 04:11:04
[2026-08-25 04:11:04,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:11:04,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:11:04,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:11:04,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:11:04,541.541 INFO    ] time= 25/08/2026 04:11:04
[2026-08-25 04:11:04,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:11:04,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:11:04,722.722 INFO    ] No existing commands found in stream
[2026-08-25 04:11:09,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:11:09,738.738 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 04:11:14,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:11:14,137.137 INFO    ] Checking for system updates...
[2026-08-25 04:11:14,172.172 INFO    ] 200
[2026-08-25 04:11:14,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:14,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:14,229.229 INFO    ] No update needed
[2026-08-25 04:11:14,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 04:11:14,268.268 INFO    ] 200
[2026-08-25 04:11:14,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:14,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:11:14,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:14,360.360 INFO    ] No camera update needed
[2026-08-25 04:11:14,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:11:14,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:11:14,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:11:14,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:11:16,414.414 INFO    ] ================================================
[2026-08-25 04:11:16,429.429 INFO    ] Launching Daemon at Tue Aug 25 04:11:16 IST 2026
[2026-08-25 04:11:16,439.439 INFO    ] ================================================
[2026-08-25 04:11:17,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:11:17
[2026-08-25 04:11:17,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:11:17,897.897 INFO    ] Initializing speech engine...
[2026-08-25 04:11:17,906.906 INFO    ] 2026-08-25 04:11:17
[2026-08-25 04:11:18,208.208 INFO    ] 2026-08-25 04:11:18
[2026-08-25 04:11:18,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:11:18,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:11:18,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:11:18,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:11:18,583.583 INFO    ] time= 25/08/2026 04:11:18
[2026-08-25 04:11:18,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:11:18,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:11:18,696.696 INFO    ] No existing commands found in stream
[2026-08-25 04:11:23,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:11:23,729.729 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 04:11:24,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:11:24,218.218 INFO    ] Checking for system updates...
[2026-08-25 04:11:24,253.253 INFO    ] 200
[2026-08-25 04:11:24,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:24,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:24,311.311 INFO    ] No update needed
[2026-08-25 04:11:24,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 04:11:24,351.351 INFO    ] 200
[2026-08-25 04:11:24,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:24,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:11:24,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:24,451.451 INFO    ] No camera update needed
[2026-08-25 04:11:24,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:11:24,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:11:24,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:11:24,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:11:26,505.505 INFO    ] ================================================
[2026-08-25 04:11:26,520.520 INFO    ] Launching Daemon at Tue Aug 25 04:11:26 IST 2026
[2026-08-25 04:11:26,531.531 INFO    ] ================================================
[2026-08-25 04:11:27,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:11:27
[2026-08-25 04:11:27,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:11:27,999.999 INFO    ] Initializing speech engine...
[2026-08-25 04:11:28,003.003 INFO    ] 2026-08-25 04:11:28
[2026-08-25 04:11:28,275.275 INFO    ] 2026-08-25 04:11:28
[2026-08-25 04:11:28,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:11:28,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:11:28,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:11:28,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:11:28,776.776 INFO    ] time= 25/08/2026 04:11:28
[2026-08-25 04:11:28,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:11:28,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:11:28,971.971 INFO    ] No existing commands found in stream
[2026-08-25 04:11:33,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:11:33,986.986 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 04:11:36,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:11:36,495.495 INFO    ] Checking for system updates...
[2026-08-25 04:11:36,530.530 INFO    ] 200
[2026-08-25 04:11:36,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:36,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:36,589.589 INFO    ] No update needed
[2026-08-25 04:11:36,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 04:11:36,624.624 INFO    ] 200
[2026-08-25 04:11:36,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:36,667.667 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:11:36,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:36,716.716 INFO    ] No camera update needed
[2026-08-25 04:11:36,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:11:36,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:11:36,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:11:36,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:11:38,769.769 INFO    ] ================================================
[2026-08-25 04:11:38,785.785 INFO    ] Launching Daemon at Tue Aug 25 04:11:38 IST 2026
[2026-08-25 04:11:38,795.795 INFO    ] ================================================
[2026-08-25 04:11:39,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:11:39
[2026-08-25 04:11:40,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:11:40,492.492 INFO    ] Initializing speech engine...
[2026-08-25 04:11:40,499.499 INFO    ] 2026-08-25 04:11:40
[2026-08-25 04:11:40,805.805 INFO    ] 2026-08-25 04:11:40
[2026-08-25 04:11:40,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:11:41,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:11:41,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:11:41,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:11:41,316.316 INFO    ] time= 25/08/2026 04:11:41
[2026-08-25 04:11:41,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:11:41,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:11:41,501.501 INFO    ] No existing commands found in stream
[2026-08-25 04:11:46,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:11:46,535.535 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 04:11:48,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:11:48,843.843 INFO    ] Checking for system updates...
[2026-08-25 04:11:48,883.883 INFO    ] 200
[2026-08-25 04:11:48,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:48,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:48,946.946 INFO    ] No update needed
[2026-08-25 04:11:48,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 04:11:48,981.981 INFO    ] 200
[2026-08-25 04:11:48,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:11:49,028.028 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:11:49,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:11:49,077.077 INFO    ] No camera update needed
[2026-08-25 04:11:49,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:11:49,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:11:49,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:11:49,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:11:51,132.132 INFO    ] ================================================
[2026-08-25 04:11:51,147.147 INFO    ] Launching Daemon at Tue Aug 25 04:11:51 IST 2026
[2026-08-25 04:11:51,158.158 INFO    ] ================================================
[2026-08-25 04:11:51,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:11:51
[2026-08-25 04:11:52,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:11:52,584.584 INFO    ] Initializing speech engine...
[2026-08-25 04:11:52,596.596 INFO    ] 2026-08-25 04:11:52
[2026-08-25 04:11:52,847.847 INFO    ] 2026-08-25 04:11:52
[2026-08-25 04:11:52,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:11:53,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:11:53,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:11:53,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:11:53,345.345 INFO    ] time= 25/08/2026 04:11:53
[2026-08-25 04:11:53,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:11:53,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:11:53,544.544 INFO    ] No existing commands found in stream
[2026-08-25 04:11:58,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:11:58,569.569 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 04:12:01,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:12:01,777.777 INFO    ] Checking for system updates...
[2026-08-25 04:12:01,846.846 INFO    ] 200
[2026-08-25 04:12:01,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:01,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:12:01,919.919 INFO    ] No update needed
[2026-08-25 04:12:01,922.922 INFO    ] Checking for camera pi updates...
[2026-08-25 04:12:01,964.964 INFO    ] 200
[2026-08-25 04:12:01,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:02,015.015 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:12:02,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:12:02,285.285 INFO    ] No camera update needed
[2026-08-25 04:12:02,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:12:02,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:12:02,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:12:02,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:12:04,349.349 INFO    ] ================================================
[2026-08-25 04:12:04,364.364 INFO    ] Launching Daemon at Tue Aug 25 04:12:04 IST 2026
[2026-08-25 04:12:04,375.375 INFO    ] ================================================
[2026-08-25 04:12:04,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:12:04
[2026-08-25 04:12:05,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:12:05,879.879 INFO    ] Initializing speech engine...
[2026-08-25 04:12:05,894.894 INFO    ] 2026-08-25 04:12:05
[2026-08-25 04:12:06,209.209 INFO    ] 2026-08-25 04:12:06
[2026-08-25 04:12:06,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:12:06,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:12:06,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:12:06,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:12:06,729.729 INFO    ] time= 25/08/2026 04:12:06
[2026-08-25 04:12:06,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:12:06,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:12:06,885.885 INFO    ] No existing commands found in stream
[2026-08-25 04:12:11,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:12:11,901.901 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 04:12:14,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:12:14,761.761 INFO    ] Checking for system updates...
[2026-08-25 04:12:14,797.797 INFO    ] 200
[2026-08-25 04:12:14,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:14,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:12:14,884.884 INFO    ] No update needed
[2026-08-25 04:12:14,887.887 INFO    ] Checking for camera pi updates...
[2026-08-25 04:12:14,921.921 INFO    ] 200
[2026-08-25 04:12:14,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:14,969.969 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:12:15,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:12:15,018.018 INFO    ] No camera update needed
[2026-08-25 04:12:15,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:12:15,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:12:15,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:12:15,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:12:17,073.073 INFO    ] ================================================
[2026-08-25 04:12:17,088.088 INFO    ] Launching Daemon at Tue Aug 25 04:12:17 IST 2026
[2026-08-25 04:12:17,099.099 INFO    ] ================================================
[2026-08-25 04:12:17,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:12:17
[2026-08-25 04:12:18,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:12:18,519.519 INFO    ] Initializing speech engine...
[2026-08-25 04:12:18,529.529 INFO    ] 2026-08-25 04:12:18
[2026-08-25 04:12:18,773.773 INFO    ] 2026-08-25 04:12:18
[2026-08-25 04:12:18,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:12:19,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:12:19,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:12:19,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:12:19,222.222 INFO    ] time= 25/08/2026 04:12:19
[2026-08-25 04:12:19,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:12:19,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:12:19,463.463 INFO    ] No existing commands found in stream
[2026-08-25 04:12:24,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:12:24,491.491 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 04:12:25,327.327 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:12:25,330.330 INFO    ] Checking for system updates...
[2026-08-25 04:12:25,369.369 INFO    ] 200
[2026-08-25 04:12:25,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:25,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:12:25,426.426 INFO    ] No update needed
[2026-08-25 04:12:25,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 04:12:25,467.467 INFO    ] 200
[2026-08-25 04:12:25,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:25,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:12:25,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:12:25,569.569 INFO    ] No camera update needed
[2026-08-25 04:12:25,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:12:25,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:12:25,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:12:25,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:12:27,626.626 INFO    ] ================================================
[2026-08-25 04:12:27,642.642 INFO    ] Launching Daemon at Tue Aug 25 04:12:27 IST 2026
[2026-08-25 04:12:27,654.654 INFO    ] ================================================
[2026-08-25 04:12:28,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:12:28
[2026-08-25 04:12:28,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:12:29,183.183 INFO    ] Initializing speech engine...
[2026-08-25 04:12:29,192.192 INFO    ] 2026-08-25 04:12:29
[2026-08-25 04:12:29,446.446 INFO    ] 2026-08-25 04:12:29
[2026-08-25 04:12:29,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:12:29,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:12:29,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:12:29,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:12:29,875.875 INFO    ] time= 25/08/2026 04:12:29
[2026-08-25 04:12:29,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:12:29,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:12:30,107.107 INFO    ] No existing commands found in stream
[2026-08-25 04:12:35,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:12:35,122.122 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 04:12:36,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:12:36,957.957 INFO    ] Checking for system updates...
[2026-08-25 04:12:36,997.997 INFO    ] 200
[2026-08-25 04:12:37,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:37,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:12:37,056.056 INFO    ] No update needed
[2026-08-25 04:12:37,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 04:12:37,099.099 INFO    ] 200
[2026-08-25 04:12:37,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:37,153.153 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:12:37,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:12:37,205.205 INFO    ] No camera update needed
[2026-08-25 04:12:37,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:12:37,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:12:37,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:12:37,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:12:39,270.270 INFO    ] ================================================
[2026-08-25 04:12:39,288.288 INFO    ] Launching Daemon at Tue Aug 25 04:12:39 IST 2026
[2026-08-25 04:12:39,299.299 INFO    ] ================================================
[2026-08-25 04:12:39,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:12:39
[2026-08-25 04:12:40,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:12:40,886.886 INFO    ] Initializing speech engine...
[2026-08-25 04:12:40,894.894 INFO    ] 2026-08-25 04:12:40
[2026-08-25 04:12:41,213.213 INFO    ] 2026-08-25 04:12:41
[2026-08-25 04:12:41,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:12:41,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:12:41,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:12:41,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:12:41,676.676 INFO    ] time= 25/08/2026 04:12:41
[2026-08-25 04:12:41,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:12:41,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:12:41,861.861 INFO    ] No existing commands found in stream
[2026-08-25 04:12:46,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:12:46,876.876 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 04:12:49,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:12:49,347.347 INFO    ] Checking for system updates...
[2026-08-25 04:12:49,387.387 INFO    ] 200
[2026-08-25 04:12:49,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:49,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:12:49,451.451 INFO    ] No update needed
[2026-08-25 04:12:49,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 04:12:49,487.487 INFO    ] 200
[2026-08-25 04:12:49,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:12:49,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:12:49,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:12:49,582.582 INFO    ] No camera update needed
[2026-08-25 04:12:49,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:12:49,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:12:49,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:12:49,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:12:51,638.638 INFO    ] ================================================
[2026-08-25 04:12:51,653.653 INFO    ] Launching Daemon at Tue Aug 25 04:12:51 IST 2026
[2026-08-25 04:12:51,664.664 INFO    ] ================================================
[2026-08-25 04:12:52,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:12:52
[2026-08-25 04:12:52,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:12:53,079.079 INFO    ] Initializing speech engine...
[2026-08-25 04:12:53,087.087 INFO    ] 2026-08-25 04:12:53
[2026-08-25 04:12:53,389.389 INFO    ] 2026-08-25 04:12:53
[2026-08-25 04:12:53,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:12:53,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:12:53,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:12:53,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:12:53,768.768 INFO    ] time= 25/08/2026 04:12:53
[2026-08-25 04:12:53,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:12:53,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:12:53,900.900 INFO    ] No existing commands found in stream
[2026-08-25 04:12:58,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:12:58,913.913 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 04:13:03,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:13:03,121.121 INFO    ] Checking for system updates...
[2026-08-25 04:13:03,158.158 INFO    ] 200
[2026-08-25 04:13:03,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:03,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:13:03,226.226 INFO    ] No update needed
[2026-08-25 04:13:03,229.229 INFO    ] Checking for camera pi updates...
[2026-08-25 04:13:03,267.267 INFO    ] 200
[2026-08-25 04:13:03,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:03,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:13:03,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:13:03,361.361 INFO    ] No camera update needed
[2026-08-25 04:13:03,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:13:03,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:13:03,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:13:03,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:13:05,420.420 INFO    ] ================================================
[2026-08-25 04:13:05,436.436 INFO    ] Launching Daemon at Tue Aug 25 04:13:05 IST 2026
[2026-08-25 04:13:05,447.447 INFO    ] ================================================
[2026-08-25 04:13:06,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:13:06
[2026-08-25 04:13:06,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:13:06,894.894 INFO    ] Initializing speech engine...
[2026-08-25 04:13:06,910.910 INFO    ] 2026-08-25 04:13:06
[2026-08-25 04:13:07,193.193 INFO    ] 2026-08-25 04:13:07
[2026-08-25 04:13:07,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:13:07,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:13:07,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:13:07,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:13:07,548.548 INFO    ] time= 25/08/2026 04:13:07
[2026-08-25 04:13:07,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:13:07,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:13:07,698.698 INFO    ] No existing commands found in stream
[2026-08-25 04:13:12,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:13:12,711.711 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 04:13:16,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:13:16,148.148 INFO    ] Checking for system updates...
[2026-08-25 04:13:16,184.184 INFO    ] 200
[2026-08-25 04:13:16,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:16,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:13:16,251.251 INFO    ] No update needed
[2026-08-25 04:13:16,253.253 INFO    ] Checking for camera pi updates...
[2026-08-25 04:13:16,287.287 INFO    ] 200
[2026-08-25 04:13:16,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:16,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:13:16,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:13:16,383.383 INFO    ] No camera update needed
[2026-08-25 04:13:16,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:13:16,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:13:16,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:13:16,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:13:18,445.445 INFO    ] ================================================
[2026-08-25 04:13:18,461.461 INFO    ] Launching Daemon at Tue Aug 25 04:13:18 IST 2026
[2026-08-25 04:13:18,472.472 INFO    ] ================================================
[2026-08-25 04:13:19,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:13:19
[2026-08-25 04:13:19,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:13:19,889.889 INFO    ] Initializing speech engine...
[2026-08-25 04:13:19,907.907 INFO    ] 2026-08-25 04:13:19
[2026-08-25 04:13:20,196.196 INFO    ] 2026-08-25 04:13:20
[2026-08-25 04:13:20,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:13:20,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:13:20,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:13:20,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:13:20,615.615 INFO    ] time= 25/08/2026 04:13:20
[2026-08-25 04:13:20,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:13:20,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:13:20,702.702 INFO    ] No existing commands found in stream
[2026-08-25 04:13:25,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:13:25,720.720 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 04:13:26,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:13:26,896.896 INFO    ] Checking for system updates...
[2026-08-25 04:13:26,935.935 INFO    ] 200
[2026-08-25 04:13:26,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:26,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:13:26,992.992 INFO    ] No update needed
[2026-08-25 04:13:26,995.995 INFO    ] Checking for camera pi updates...
[2026-08-25 04:13:27,032.032 INFO    ] 200
[2026-08-25 04:13:27,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:27,075.075 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:13:27,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:13:27,129.129 INFO    ] No camera update needed
[2026-08-25 04:13:27,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:13:27,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:13:27,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:13:27,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:13:29,185.185 INFO    ] ================================================
[2026-08-25 04:13:29,201.201 INFO    ] Launching Daemon at Tue Aug 25 04:13:29 IST 2026
[2026-08-25 04:13:29,212.212 INFO    ] ================================================
[2026-08-25 04:13:29,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:13:29
[2026-08-25 04:13:30,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:13:30,811.811 INFO    ] Initializing speech engine...
[2026-08-25 04:13:30,825.825 INFO    ] 2026-08-25 04:13:30
[2026-08-25 04:13:31,105.105 INFO    ] 2026-08-25 04:13:31
[2026-08-25 04:13:31,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:13:31,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:13:31,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:13:31,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:13:31,655.655 INFO    ] time= 25/08/2026 04:13:31
[2026-08-25 04:13:31,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:13:31,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:13:31,881.881 INFO    ] No existing commands found in stream
[2026-08-25 04:13:36,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:13:36,916.916 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 04:13:40,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:13:40,070.070 INFO    ] Checking for system updates...
[2026-08-25 04:13:40,106.106 INFO    ] 200
[2026-08-25 04:13:40,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:40,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:13:40,164.164 INFO    ] No update needed
[2026-08-25 04:13:40,167.167 INFO    ] Checking for camera pi updates...
[2026-08-25 04:13:40,201.201 INFO    ] 200
[2026-08-25 04:13:40,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:40,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:13:40,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:13:40,314.314 INFO    ] No camera update needed
[2026-08-25 04:13:40,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:13:40,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:13:40,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:13:40,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:13:42,372.372 INFO    ] ================================================
[2026-08-25 04:13:42,388.388 INFO    ] Launching Daemon at Tue Aug 25 04:13:42 IST 2026
[2026-08-25 04:13:42,399.399 INFO    ] ================================================
[2026-08-25 04:13:43,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:13:43
[2026-08-25 04:13:43,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:13:43,994.994 INFO    ] Initializing speech engine...
[2026-08-25 04:13:44,008.008 INFO    ] 2026-08-25 04:13:43
[2026-08-25 04:13:44,274.274 INFO    ] 2026-08-25 04:13:44
[2026-08-25 04:13:44,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:13:44,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:13:44,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:13:44,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:13:44,738.738 INFO    ] time= 25/08/2026 04:13:44
[2026-08-25 04:13:44,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:13:44,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:13:44,958.958 INFO    ] No existing commands found in stream
[2026-08-25 04:13:49,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:13:49,983.983 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 04:13:54,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:13:54,059.059 INFO    ] Checking for system updates...
[2026-08-25 04:13:54,099.099 INFO    ] 200
[2026-08-25 04:13:54,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:54,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:13:54,169.169 INFO    ] No update needed
[2026-08-25 04:13:54,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 04:13:54,210.210 INFO    ] 200
[2026-08-25 04:13:54,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:13:54,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:13:54,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:13:54,317.317 INFO    ] No camera update needed
[2026-08-25 04:13:54,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:13:54,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:13:54,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:13:54,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:13:56,375.375 INFO    ] ================================================
[2026-08-25 04:13:56,389.389 INFO    ] Launching Daemon at Tue Aug 25 04:13:56 IST 2026
[2026-08-25 04:13:56,401.401 INFO    ] ================================================
[2026-08-25 04:13:56,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:13:56
[2026-08-25 04:13:57,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:13:57,853.853 INFO    ] Initializing speech engine...
[2026-08-25 04:13:57,862.862 INFO    ] 2026-08-25 04:13:57
[2026-08-25 04:13:58,139.139 INFO    ] 2026-08-25 04:13:58
[2026-08-25 04:13:58,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:13:58,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:13:58,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:13:58,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:13:58,559.559 INFO    ] time= 25/08/2026 04:13:58
[2026-08-25 04:13:58,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:13:58,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:13:58,645.645 INFO    ] No existing commands found in stream
[2026-08-25 04:14:03,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:14:03,673.673 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 04:14:06,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:14:06,383.383 INFO    ] Checking for system updates...
[2026-08-25 04:14:06,418.418 INFO    ] 200
[2026-08-25 04:14:06,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:06,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:14:06,474.474 INFO    ] No update needed
[2026-08-25 04:14:06,477.477 INFO    ] Checking for camera pi updates...
[2026-08-25 04:14:06,512.512 INFO    ] 200
[2026-08-25 04:14:06,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:06,554.554 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:14:06,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:14:06,606.606 INFO    ] No camera update needed
[2026-08-25 04:14:06,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:14:06,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:14:06,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:14:06,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:14:08,660.660 INFO    ] ================================================
[2026-08-25 04:14:08,675.675 INFO    ] Launching Daemon at Tue Aug 25 04:14:08 IST 2026
[2026-08-25 04:14:08,687.687 INFO    ] ================================================
[2026-08-25 04:14:09,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:14:09
[2026-08-25 04:14:10,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:14:10,369.369 INFO    ] Initializing speech engine...
[2026-08-25 04:14:10,384.384 INFO    ] 2026-08-25 04:14:10
[2026-08-25 04:14:10,701.701 INFO    ] 2026-08-25 04:14:10
[2026-08-25 04:14:10,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:14:10,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:14:11,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:14:11,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:14:11,217.217 INFO    ] time= 25/08/2026 04:14:11
[2026-08-25 04:14:11,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:14:11,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:14:11,384.384 INFO    ] No existing commands found in stream
[2026-08-25 04:14:16,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:14:16,402.402 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 04:14:18,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:14:18,238.238 INFO    ] Checking for system updates...
[2026-08-25 04:14:18,273.273 INFO    ] 200
[2026-08-25 04:14:18,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:18,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:14:18,330.330 INFO    ] No update needed
[2026-08-25 04:14:18,332.332 INFO    ] Checking for camera pi updates...
[2026-08-25 04:14:18,365.365 INFO    ] 200
[2026-08-25 04:14:18,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:18,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:14:18,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:14:18,458.458 INFO    ] No camera update needed
[2026-08-25 04:14:18,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:14:18,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:14:18,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:14:18,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:14:20,512.512 INFO    ] ================================================
[2026-08-25 04:14:20,527.527 INFO    ] Launching Daemon at Tue Aug 25 04:14:20 IST 2026
[2026-08-25 04:14:20,538.538 INFO    ] ================================================
[2026-08-25 04:14:21,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:14:21
[2026-08-25 04:14:21,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:14:21,972.972 INFO    ] Initializing speech engine...
[2026-08-25 04:14:21,990.990 INFO    ] 2026-08-25 04:14:21
[2026-08-25 04:14:22,252.252 INFO    ] 2026-08-25 04:14:22
[2026-08-25 04:14:22,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:14:22,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:14:22,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:14:22,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:14:22,676.676 INFO    ] time= 25/08/2026 04:14:22
[2026-08-25 04:14:22,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:14:22,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:14:22,833.833 INFO    ] No existing commands found in stream
[2026-08-25 04:14:27,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:14:27,856.856 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 04:14:29,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:14:29,988.988 INFO    ] Checking for system updates...
[2026-08-25 04:14:30,024.024 INFO    ] 200
[2026-08-25 04:14:30,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:30,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:14:30,089.089 INFO    ] No update needed
[2026-08-25 04:14:30,091.091 INFO    ] Checking for camera pi updates...
[2026-08-25 04:14:30,124.124 INFO    ] 200
[2026-08-25 04:14:30,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:30,172.172 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:14:30,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:14:30,236.236 INFO    ] No camera update needed
[2026-08-25 04:14:30,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:14:30,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:14:30,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:14:30,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:14:32,292.292 INFO    ] ================================================
[2026-08-25 04:14:32,308.308 INFO    ] Launching Daemon at Tue Aug 25 04:14:32 IST 2026
[2026-08-25 04:14:32,324.324 INFO    ] ================================================
[2026-08-25 04:14:32,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:14:32
[2026-08-25 04:14:33,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:14:33,779.779 INFO    ] Initializing speech engine...
[2026-08-25 04:14:33,788.788 INFO    ] 2026-08-25 04:14:33
[2026-08-25 04:14:34,046.046 INFO    ] 2026-08-25 04:14:34
[2026-08-25 04:14:34,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:14:34,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:14:34,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:14:34,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:14:34,509.509 INFO    ] time= 25/08/2026 04:14:34
[2026-08-25 04:14:34,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:14:34,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:14:34,744.744 INFO    ] No existing commands found in stream
[2026-08-25 04:14:39,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:14:39,774.774 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 04:14:43,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:14:43,108.108 INFO    ] Checking for system updates...
[2026-08-25 04:14:43,147.147 INFO    ] 200
[2026-08-25 04:14:43,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:43,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:14:43,212.212 INFO    ] No update needed
[2026-08-25 04:14:43,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 04:14:43,265.265 INFO    ] 200
[2026-08-25 04:14:43,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:43,314.314 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:14:43,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:14:43,373.373 INFO    ] No camera update needed
[2026-08-25 04:14:43,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:14:43,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:14:43,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:14:43,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:14:45,435.435 INFO    ] ================================================
[2026-08-25 04:14:45,455.455 INFO    ] Launching Daemon at Tue Aug 25 04:14:45 IST 2026
[2026-08-25 04:14:45,466.466 INFO    ] ================================================
[2026-08-25 04:14:46,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:14:46
[2026-08-25 04:14:46,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:14:47,108.108 INFO    ] Initializing speech engine...
[2026-08-25 04:14:47,114.114 INFO    ] 2026-08-25 04:14:47
[2026-08-25 04:14:47,399.399 INFO    ] 2026-08-25 04:14:47
[2026-08-25 04:14:47,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:14:47,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:14:47,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:14:47,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:14:47,930.930 INFO    ] time= 25/08/2026 04:14:47
[2026-08-25 04:14:47,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:14:47,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:14:48,094.094 INFO    ] No existing commands found in stream
[2026-08-25 04:14:53,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:14:53,119.119 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 04:14:55,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:14:55,492.492 INFO    ] Checking for system updates...
[2026-08-25 04:14:55,533.533 INFO    ] 200
[2026-08-25 04:14:55,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:55,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:14:55,601.601 INFO    ] No update needed
[2026-08-25 04:14:55,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 04:14:55,638.638 INFO    ] 200
[2026-08-25 04:14:55,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:14:55,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:14:55,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:14:55,734.734 INFO    ] No camera update needed
[2026-08-25 04:14:55,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:14:55,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:14:55,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:14:55,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:14:57,793.793 INFO    ] ================================================
[2026-08-25 04:14:57,809.809 INFO    ] Launching Daemon at Tue Aug 25 04:14:57 IST 2026
[2026-08-25 04:14:57,819.819 INFO    ] ================================================
[2026-08-25 04:14:58,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:14:58
[2026-08-25 04:14:58,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:14:59,227.227 INFO    ] Initializing speech engine...
[2026-08-25 04:14:59,252.252 INFO    ] 2026-08-25 04:14:59
[2026-08-25 04:14:59,521.521 INFO    ] 2026-08-25 04:14:59
[2026-08-25 04:14:59,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:14:59,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:14:59,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:14:59,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:14:59,899.899 INFO    ] time= 25/08/2026 04:14:59
[2026-08-25 04:14:59,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:14:59,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:15:00,023.023 INFO    ] No existing commands found in stream
[2026-08-25 04:15:05,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:15:05,037.037 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 04:15:06,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:15:06,030.030 INFO    ] Checking for system updates...
[2026-08-25 04:15:06,076.076 INFO    ] 200
[2026-08-25 04:15:06,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:06,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:15:06,169.169 INFO    ] No update needed
[2026-08-25 04:15:06,175.175 INFO    ] Checking for camera pi updates...
[2026-08-25 04:15:06,226.226 INFO    ] 200
[2026-08-25 04:15:06,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:06,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:15:06,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:15:06,326.326 INFO    ] No camera update needed
[2026-08-25 04:15:06,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:15:06,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:15:06,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:15:06,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:15:08,386.386 INFO    ] ================================================
[2026-08-25 04:15:08,401.401 INFO    ] Launching Daemon at Tue Aug 25 04:15:08 IST 2026
[2026-08-25 04:15:08,412.412 INFO    ] ================================================
[2026-08-25 04:15:08,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:15:08
[2026-08-25 04:15:09,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:15:09,826.826 INFO    ] Initializing speech engine...
[2026-08-25 04:15:09,838.838 INFO    ] 2026-08-25 04:15:09
[2026-08-25 04:15:10,085.085 INFO    ] 2026-08-25 04:15:10
[2026-08-25 04:15:10,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:15:10,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:15:10,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:15:10,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:15:10,567.567 INFO    ] time= 25/08/2026 04:15:10
[2026-08-25 04:15:10,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:15:10,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:15:10,769.769 INFO    ] No existing commands found in stream
[2026-08-25 04:15:15,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:15:15,798.798 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 04:15:16,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:15:16,580.580 INFO    ] Checking for system updates...
[2026-08-25 04:15:16,616.616 INFO    ] 200
[2026-08-25 04:15:16,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:16,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:15:16,679.679 INFO    ] No update needed
[2026-08-25 04:15:16,682.682 INFO    ] Checking for camera pi updates...
[2026-08-25 04:15:16,722.722 INFO    ] 200
[2026-08-25 04:15:16,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:16,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:15:16,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:15:16,817.817 INFO    ] No camera update needed
[2026-08-25 04:15:16,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:15:16,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:15:16,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:15:16,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:15:18,873.873 INFO    ] ================================================
[2026-08-25 04:15:18,887.887 INFO    ] Launching Daemon at Tue Aug 25 04:15:18 IST 2026
[2026-08-25 04:15:18,898.898 INFO    ] ================================================
[2026-08-25 04:15:19,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:15:19
[2026-08-25 04:15:20,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:15:20,311.311 INFO    ] Initializing speech engine...
[2026-08-25 04:15:20,328.328 INFO    ] 2026-08-25 04:15:20
[2026-08-25 04:15:20,612.612 INFO    ] 2026-08-25 04:15:20
[2026-08-25 04:15:20,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:15:20,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:15:20,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:15:21,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:15:21,112.112 INFO    ] time= 25/08/2026 04:15:21
[2026-08-25 04:15:21,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:15:21,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:15:21,340.340 INFO    ] No existing commands found in stream
[2026-08-25 04:15:26,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:15:26,372.372 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 04:15:29,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:15:29,528.528 INFO    ] Checking for system updates...
[2026-08-25 04:15:29,565.565 INFO    ] 200
[2026-08-25 04:15:29,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:29,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:15:29,625.625 INFO    ] No update needed
[2026-08-25 04:15:29,628.628 INFO    ] Checking for camera pi updates...
[2026-08-25 04:15:29,666.666 INFO    ] 200
[2026-08-25 04:15:29,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:29,710.710 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:15:29,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:15:29,773.773 INFO    ] No camera update needed
[2026-08-25 04:15:29,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:15:29,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:15:29,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:15:29,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:15:31,832.832 INFO    ] ================================================
[2026-08-25 04:15:31,848.848 INFO    ] Launching Daemon at Tue Aug 25 04:15:31 IST 2026
[2026-08-25 04:15:31,859.859 INFO    ] ================================================
[2026-08-25 04:15:32,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:15:32
[2026-08-25 04:15:33,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:15:33,328.328 INFO    ] Initializing speech engine...
[2026-08-25 04:15:33,343.343 INFO    ] 2026-08-25 04:15:33
[2026-08-25 04:15:33,627.627 INFO    ] 2026-08-25 04:15:33
[2026-08-25 04:15:33,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:15:33,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:15:33,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:15:34,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:15:34,021.021 INFO    ] time= 25/08/2026 04:15:34
[2026-08-25 04:15:34,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:15:34,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:15:34,128.128 INFO    ] No existing commands found in stream
[2026-08-25 04:15:39,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:15:39,143.143 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 04:15:40,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:15:40,752.752 INFO    ] Checking for system updates...
[2026-08-25 04:15:40,806.806 INFO    ] 200
[2026-08-25 04:15:40,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:40,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:15:40,866.866 INFO    ] No update needed
[2026-08-25 04:15:40,869.869 INFO    ] Checking for camera pi updates...
[2026-08-25 04:15:40,902.902 INFO    ] 200
[2026-08-25 04:15:40,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:40,947.947 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:15:41,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:15:41,015.015 INFO    ] No camera update needed
[2026-08-25 04:15:41,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:15:41,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:15:41,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:15:41,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:15:43,070.070 INFO    ] ================================================
[2026-08-25 04:15:43,085.085 INFO    ] Launching Daemon at Tue Aug 25 04:15:43 IST 2026
[2026-08-25 04:15:43,095.095 INFO    ] ================================================
[2026-08-25 04:15:43,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:15:43
[2026-08-25 04:15:44,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:15:44,513.513 INFO    ] Initializing speech engine...
[2026-08-25 04:15:44,522.522 INFO    ] 2026-08-25 04:15:44
[2026-08-25 04:15:44,767.767 INFO    ] 2026-08-25 04:15:44
[2026-08-25 04:15:44,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:15:44,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:15:44,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:15:45,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:15:45,134.134 INFO    ] time= 25/08/2026 04:15:45
[2026-08-25 04:15:45,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:15:45,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:15:45,317.317 INFO    ] No existing commands found in stream
[2026-08-25 04:15:50,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:15:50,343.343 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 04:15:53,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:15:53,920.920 INFO    ] Checking for system updates...
[2026-08-25 04:15:53,962.962 INFO    ] 200
[2026-08-25 04:15:53,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:54,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:15:54,047.047 INFO    ] No update needed
[2026-08-25 04:15:54,050.050 INFO    ] Checking for camera pi updates...
[2026-08-25 04:15:54,087.087 INFO    ] 200
[2026-08-25 04:15:54,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:15:54,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:15:54,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:15:54,180.180 INFO    ] No camera update needed
[2026-08-25 04:15:54,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:15:54,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:15:54,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:15:54,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:15:56,236.236 INFO    ] ================================================
[2026-08-25 04:15:56,251.251 INFO    ] Launching Daemon at Tue Aug 25 04:15:56 IST 2026
[2026-08-25 04:15:56,262.262 INFO    ] ================================================
[2026-08-25 04:15:56,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:15:56
[2026-08-25 04:15:57,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:15:57,681.681 INFO    ] Initializing speech engine...
[2026-08-25 04:15:57,693.693 INFO    ] 2026-08-25 04:15:57
[2026-08-25 04:15:57,962.962 INFO    ] 2026-08-25 04:15:57
[2026-08-25 04:15:57,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:15:58,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:15:58,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:15:58,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:15:58,450.450 INFO    ] time= 25/08/2026 04:15:58
[2026-08-25 04:15:58,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:15:58,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:15:58,663.663 INFO    ] No existing commands found in stream
[2026-08-25 04:16:03,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:16:03,696.696 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 04:16:08,068.068 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:16:08,070.070 INFO    ] Checking for system updates...
[2026-08-25 04:16:08,107.107 INFO    ] 200
[2026-08-25 04:16:08,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:08,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:16:08,165.165 INFO    ] No update needed
[2026-08-25 04:16:08,168.168 INFO    ] Checking for camera pi updates...
[2026-08-25 04:16:08,207.207 INFO    ] 200
[2026-08-25 04:16:08,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:08,257.257 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:16:08,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:16:08,404.404 INFO    ] No camera update needed
[2026-08-25 04:16:08,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:16:08,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:16:08,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:16:08,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:16:10,465.465 INFO    ] ================================================
[2026-08-25 04:16:10,480.480 INFO    ] Launching Daemon at Tue Aug 25 04:16:10 IST 2026
[2026-08-25 04:16:10,491.491 INFO    ] ================================================
[2026-08-25 04:16:11,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:16:11
[2026-08-25 04:16:11,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:16:11,931.931 INFO    ] Initializing speech engine...
[2026-08-25 04:16:11,946.946 INFO    ] 2026-08-25 04:16:11
[2026-08-25 04:16:12,234.234 INFO    ] 2026-08-25 04:16:12
[2026-08-25 04:16:12,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:16:12,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:16:12,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:16:12,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:16:12,620.620 INFO    ] time= 25/08/2026 04:16:12
[2026-08-25 04:16:12,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:16:12,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:16:12,745.745 INFO    ] No existing commands found in stream
[2026-08-25 04:16:17,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:16:17,760.760 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 04:16:19,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:16:19,761.761 INFO    ] Checking for system updates...
[2026-08-25 04:16:19,798.798 INFO    ] 200
[2026-08-25 04:16:19,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:19,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:16:19,855.855 INFO    ] No update needed
[2026-08-25 04:16:19,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 04:16:19,891.891 INFO    ] 200
[2026-08-25 04:16:19,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:19,935.935 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:16:19,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:16:19,985.985 INFO    ] No camera update needed
[2026-08-25 04:16:19,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:16:19,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:16:19,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:16:20,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:16:22,040.040 INFO    ] ================================================
[2026-08-25 04:16:22,055.055 INFO    ] Launching Daemon at Tue Aug 25 04:16:22 IST 2026
[2026-08-25 04:16:22,066.066 INFO    ] ================================================
[2026-08-25 04:16:22,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:16:22
[2026-08-25 04:16:23,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:16:23,472.472 INFO    ] Initializing speech engine...
[2026-08-25 04:16:23,491.491 INFO    ] 2026-08-25 04:16:23
[2026-08-25 04:16:23,752.752 INFO    ] 2026-08-25 04:16:23
[2026-08-25 04:16:23,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:16:24,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:16:24,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:16:24,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:16:24,253.253 INFO    ] time= 25/08/2026 04:16:24
[2026-08-25 04:16:24,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:16:24,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:16:24,467.467 INFO    ] No existing commands found in stream
[2026-08-25 04:16:29,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:16:29,492.492 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 04:16:31,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:16:31,361.361 INFO    ] Checking for system updates...
[2026-08-25 04:16:31,396.396 INFO    ] 200
[2026-08-25 04:16:31,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:31,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:16:31,453.453 INFO    ] No update needed
[2026-08-25 04:16:31,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 04:16:31,489.489 INFO    ] 200
[2026-08-25 04:16:31,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:31,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:16:31,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:16:31,579.579 INFO    ] No camera update needed
[2026-08-25 04:16:31,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:16:31,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:16:31,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:16:31,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:16:33,638.638 INFO    ] ================================================
[2026-08-25 04:16:33,653.653 INFO    ] Launching Daemon at Tue Aug 25 04:16:33 IST 2026
[2026-08-25 04:16:33,664.664 INFO    ] ================================================
[2026-08-25 04:16:34,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:16:34
[2026-08-25 04:16:34,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:16:35,096.096 INFO    ] Initializing speech engine...
[2026-08-25 04:16:35,121.121 INFO    ] 2026-08-25 04:16:35
[2026-08-25 04:16:35,396.396 INFO    ] 2026-08-25 04:16:35
[2026-08-25 04:16:35,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:16:35,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:16:35,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:16:35,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:16:35,795.795 INFO    ] time= 25/08/2026 04:16:35
[2026-08-25 04:16:35,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:16:35,827.827 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:16:35,903.903 INFO    ] No existing commands found in stream
[2026-08-25 04:16:40,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:16:40,924.924 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 04:16:45,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:16:45,131.131 INFO    ] Checking for system updates...
[2026-08-25 04:16:45,170.170 INFO    ] 200
[2026-08-25 04:16:45,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:45,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:16:45,227.227 INFO    ] No update needed
[2026-08-25 04:16:45,229.229 INFO    ] Checking for camera pi updates...
[2026-08-25 04:16:45,263.263 INFO    ] 200
[2026-08-25 04:16:45,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:45,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:16:45,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:16:45,361.361 INFO    ] No camera update needed
[2026-08-25 04:16:45,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:16:45,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:16:45,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:16:45,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:16:47,416.416 INFO    ] ================================================
[2026-08-25 04:16:47,431.431 INFO    ] Launching Daemon at Tue Aug 25 04:16:47 IST 2026
[2026-08-25 04:16:47,441.441 INFO    ] ================================================
[2026-08-25 04:16:48,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:16:48
[2026-08-25 04:16:48,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:16:49,045.045 INFO    ] Initializing speech engine...
[2026-08-25 04:16:49,056.056 INFO    ] 2026-08-25 04:16:49
[2026-08-25 04:16:49,316.316 INFO    ] 2026-08-25 04:16:49
[2026-08-25 04:16:49,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:16:49,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:16:49,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:16:49,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:16:49,790.790 INFO    ] time= 25/08/2026 04:16:49
[2026-08-25 04:16:49,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:16:49,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:16:49,993.993 INFO    ] No existing commands found in stream
[2026-08-25 04:16:55,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:16:55,018.018 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 04:16:58,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:16:58,221.221 INFO    ] Checking for system updates...
[2026-08-25 04:16:58,256.256 INFO    ] 200
[2026-08-25 04:16:58,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:58,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:16:58,313.313 INFO    ] No update needed
[2026-08-25 04:16:58,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 04:16:58,348.348 INFO    ] 200
[2026-08-25 04:16:58,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:16:58,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:16:58,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:16:58,438.438 INFO    ] No camera update needed
[2026-08-25 04:16:58,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:16:58,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:16:58,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:16:58,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:17:00,492.492 INFO    ] ================================================
[2026-08-25 04:17:00,507.507 INFO    ] Launching Daemon at Tue Aug 25 04:17:00 IST 2026
[2026-08-25 04:17:00,518.518 INFO    ] ================================================
[2026-08-25 04:17:01,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:17:01
[2026-08-25 04:17:01,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:17:02,202.202 INFO    ] Initializing speech engine...
[2026-08-25 04:17:02,209.209 INFO    ] 2026-08-25 04:17:02
[2026-08-25 04:17:02,505.505 INFO    ] 2026-08-25 04:17:02
[2026-08-25 04:17:02,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:17:02,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:17:02,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:17:02,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:17:03,007.007 INFO    ] time= 25/08/2026 04:17:02
[2026-08-25 04:17:03,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:17:03,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:17:03,193.193 INFO    ] No existing commands found in stream
[2026-08-25 04:17:08,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:17:08,212.212 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 04:17:09,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:17:09,351.351 INFO    ] Checking for system updates...
[2026-08-25 04:17:09,389.389 INFO    ] 200
[2026-08-25 04:17:09,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:09,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:17:09,446.446 INFO    ] No update needed
[2026-08-25 04:17:09,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 04:17:09,482.482 INFO    ] 200
[2026-08-25 04:17:09,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:09,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:17:09,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:17:09,581.581 INFO    ] No camera update needed
[2026-08-25 04:17:09,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:17:09,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:17:09,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:17:09,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:17:11,640.640 INFO    ] ================================================
[2026-08-25 04:17:11,657.657 INFO    ] Launching Daemon at Tue Aug 25 04:17:11 IST 2026
[2026-08-25 04:17:11,668.668 INFO    ] ================================================
[2026-08-25 04:17:12,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:17:12
[2026-08-25 04:17:12,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:17:13,124.124 INFO    ] Initializing speech engine...
[2026-08-25 04:17:13,134.134 INFO    ] 2026-08-25 04:17:13
[2026-08-25 04:17:13,397.397 INFO    ] 2026-08-25 04:17:13
[2026-08-25 04:17:13,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:17:13,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:17:13,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:17:13,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:17:13,765.765 INFO    ] time= 25/08/2026 04:17:13
[2026-08-25 04:17:13,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:17:13,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:17:13,886.886 INFO    ] No existing commands found in stream
[2026-08-25 04:17:18,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:17:18,901.901 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 04:17:21,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:17:21,195.195 INFO    ] Checking for system updates...
[2026-08-25 04:17:21,230.230 INFO    ] 200
[2026-08-25 04:17:21,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:21,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:17:21,287.287 INFO    ] No update needed
[2026-08-25 04:17:21,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 04:17:21,326.326 INFO    ] 200
[2026-08-25 04:17:21,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:21,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:17:21,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:17:21,429.429 INFO    ] No camera update needed
[2026-08-25 04:17:21,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:17:21,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:17:21,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:17:21,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:17:23,487.487 INFO    ] ================================================
[2026-08-25 04:17:23,503.503 INFO    ] Launching Daemon at Tue Aug 25 04:17:23 IST 2026
[2026-08-25 04:17:23,514.514 INFO    ] ================================================
[2026-08-25 04:17:24,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:17:24
[2026-08-25 04:17:24,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:17:24,962.962 INFO    ] Initializing speech engine...
[2026-08-25 04:17:24,973.973 INFO    ] 2026-08-25 04:17:24
[2026-08-25 04:17:25,238.238 INFO    ] 2026-08-25 04:17:25
[2026-08-25 04:17:25,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:17:25,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:17:25,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:17:25,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:17:25,711.711 INFO    ] time= 25/08/2026 04:17:25
[2026-08-25 04:17:25,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:17:25,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:17:25,935.935 INFO    ] No existing commands found in stream
[2026-08-25 04:17:30,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:17:30,961.961 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 04:17:35,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:17:35,247.247 INFO    ] Checking for system updates...
[2026-08-25 04:17:35,283.283 INFO    ] 200
[2026-08-25 04:17:35,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:35,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:17:35,345.345 INFO    ] No update needed
[2026-08-25 04:17:35,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 04:17:35,384.384 INFO    ] 200
[2026-08-25 04:17:35,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:35,426.426 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:17:35,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:17:35,482.482 INFO    ] No camera update needed
[2026-08-25 04:17:35,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:17:35,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:17:35,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:17:35,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:17:37,537.537 INFO    ] ================================================
[2026-08-25 04:17:37,552.552 INFO    ] Launching Daemon at Tue Aug 25 04:17:37 IST 2026
[2026-08-25 04:17:37,563.563 INFO    ] ================================================
[2026-08-25 04:17:38,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:17:38
[2026-08-25 04:17:38,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:17:39,140.140 INFO    ] Initializing speech engine...
[2026-08-25 04:17:39,154.154 INFO    ] 2026-08-25 04:17:39
[2026-08-25 04:17:39,419.419 INFO    ] 2026-08-25 04:17:39
[2026-08-25 04:17:39,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:17:39,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:17:39,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:17:39,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:17:39,966.966 INFO    ] time= 25/08/2026 04:17:39
[2026-08-25 04:17:39,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:17:39,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:17:40,106.106 INFO    ] No existing commands found in stream
[2026-08-25 04:17:45,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:17:45,135.135 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 04:17:47,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:17:47,484.484 INFO    ] Checking for system updates...
[2026-08-25 04:17:47,521.521 INFO    ] 200
[2026-08-25 04:17:47,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:47,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:17:47,579.579 INFO    ] No update needed
[2026-08-25 04:17:47,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 04:17:47,615.615 INFO    ] 200
[2026-08-25 04:17:47,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:47,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:17:47,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:17:47,715.715 INFO    ] No camera update needed
[2026-08-25 04:17:47,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:17:47,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:17:47,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:17:47,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:17:49,773.773 INFO    ] ================================================
[2026-08-25 04:17:49,791.791 INFO    ] Launching Daemon at Tue Aug 25 04:17:49 IST 2026
[2026-08-25 04:17:49,804.804 INFO    ] ================================================
[2026-08-25 04:17:50,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:17:50
[2026-08-25 04:17:51,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:17:51,338.338 INFO    ] Initializing speech engine...
[2026-08-25 04:17:51,345.345 INFO    ] 2026-08-25 04:17:51
[2026-08-25 04:17:51,657.657 INFO    ] 2026-08-25 04:17:51
[2026-08-25 04:17:51,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:17:51,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:17:51,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:17:52,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:17:52,054.054 INFO    ] time= 25/08/2026 04:17:52
[2026-08-25 04:17:52,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:17:52,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:17:52,186.186 INFO    ] No existing commands found in stream
[2026-08-25 04:17:57,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:17:57,204.204 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 04:17:59,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:17:59,763.763 INFO    ] Checking for system updates...
[2026-08-25 04:17:59,799.799 INFO    ] 200
[2026-08-25 04:17:59,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:59,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:17:59,863.863 INFO    ] No update needed
[2026-08-25 04:17:59,865.865 INFO    ] Checking for camera pi updates...
[2026-08-25 04:17:59,906.906 INFO    ] 200
[2026-08-25 04:17:59,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:17:59,953.953 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:18:00,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:18:00,013.013 INFO    ] No camera update needed
[2026-08-25 04:18:00,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:18:00,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:18:00,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:18:00,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:18:02,084.084 INFO    ] ================================================
[2026-08-25 04:18:02,110.110 INFO    ] Launching Daemon at Tue Aug 25 04:18:02 IST 2026
[2026-08-25 04:18:02,123.123 INFO    ] ================================================
[2026-08-25 04:18:02,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:18:02
[2026-08-25 04:18:03,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:18:03,792.792 INFO    ] Initializing speech engine...
[2026-08-25 04:18:03,800.800 INFO    ] 2026-08-25 04:18:03
[2026-08-25 04:18:04,086.086 INFO    ] 2026-08-25 04:18:04
[2026-08-25 04:18:04,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:18:04,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:18:04,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:18:04,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:18:04,549.549 INFO    ] time= 25/08/2026 04:18:04
[2026-08-25 04:18:04,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:18:04,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:18:04,754.754 INFO    ] No existing commands found in stream
[2026-08-25 04:18:09,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:18:09,785.785 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 04:18:14,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:18:14,116.116 INFO    ] Checking for system updates...
[2026-08-25 04:18:14,153.153 INFO    ] 200
[2026-08-25 04:18:14,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:14,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:18:14,219.219 INFO    ] No update needed
[2026-08-25 04:18:14,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 04:18:14,256.256 INFO    ] 200
[2026-08-25 04:18:14,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:14,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:18:14,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:18:14,448.448 INFO    ] No camera update needed
[2026-08-25 04:18:14,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:18:14,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:18:14,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:18:14,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:18:16,504.504 INFO    ] ================================================
[2026-08-25 04:18:16,519.519 INFO    ] Launching Daemon at Tue Aug 25 04:18:16 IST 2026
[2026-08-25 04:18:16,530.530 INFO    ] ================================================
[2026-08-25 04:18:17,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:18:17
[2026-08-25 04:18:17,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:18:17,975.975 INFO    ] Initializing speech engine...
[2026-08-25 04:18:17,995.995 INFO    ] 2026-08-25 04:18:17
[2026-08-25 04:18:18,268.268 INFO    ] 2026-08-25 04:18:18
[2026-08-25 04:18:18,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:18:18,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:18:18,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:18:18,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:18:18,682.682 INFO    ] time= 25/08/2026 04:18:18
[2026-08-25 04:18:18,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:18:18,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:18:18,768.768 INFO    ] No existing commands found in stream
[2026-08-25 04:18:23,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:18:23,786.786 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 04:18:25,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:18:25,956.956 INFO    ] Checking for system updates...
[2026-08-25 04:18:25,992.992 INFO    ] 200
[2026-08-25 04:18:25,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:26,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:18:26,049.049 INFO    ] No update needed
[2026-08-25 04:18:26,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 04:18:26,084.084 INFO    ] 200
[2026-08-25 04:18:26,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:26,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:18:26,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:18:26,184.184 INFO    ] No camera update needed
[2026-08-25 04:18:26,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:18:26,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:18:26,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:18:26,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:18:28,239.239 INFO    ] ================================================
[2026-08-25 04:18:28,254.254 INFO    ] Launching Daemon at Tue Aug 25 04:18:28 IST 2026
[2026-08-25 04:18:28,264.264 INFO    ] ================================================
[2026-08-25 04:18:28,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:18:28
[2026-08-25 04:18:29,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:18:29,871.871 INFO    ] Initializing speech engine...
[2026-08-25 04:18:29,885.885 INFO    ] 2026-08-25 04:18:29
[2026-08-25 04:18:30,190.190 INFO    ] 2026-08-25 04:18:30
[2026-08-25 04:18:30,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:18:30,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:18:30,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:18:30,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:18:30,697.697 INFO    ] time= 25/08/2026 04:18:30
[2026-08-25 04:18:30,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:18:30,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:18:30,822.822 INFO    ] No existing commands found in stream
[2026-08-25 04:18:35,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:18:35,851.851 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 04:18:39,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:18:39,467.467 INFO    ] Checking for system updates...
[2026-08-25 04:18:39,506.506 INFO    ] 200
[2026-08-25 04:18:39,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:39,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:18:39,567.567 INFO    ] No update needed
[2026-08-25 04:18:39,569.569 INFO    ] Checking for camera pi updates...
[2026-08-25 04:18:39,606.606 INFO    ] 200
[2026-08-25 04:18:39,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:39,649.649 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:18:39,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:18:39,710.710 INFO    ] No camera update needed
[2026-08-25 04:18:39,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:18:39,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:18:39,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:18:39,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:18:41,765.765 INFO    ] ================================================
[2026-08-25 04:18:41,781.781 INFO    ] Launching Daemon at Tue Aug 25 04:18:41 IST 2026
[2026-08-25 04:18:41,792.792 INFO    ] ================================================
[2026-08-25 04:18:42,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:18:42
[2026-08-25 04:18:42,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:18:43,272.272 INFO    ] Initializing speech engine...
[2026-08-25 04:18:43,281.281 INFO    ] 2026-08-25 04:18:43
[2026-08-25 04:18:43,544.544 INFO    ] 2026-08-25 04:18:43
[2026-08-25 04:18:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:18:43,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:18:43,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:18:43,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:18:44,043.043 INFO    ] time= 25/08/2026 04:18:43
[2026-08-25 04:18:44,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:18:44,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:18:44,232.232 INFO    ] No existing commands found in stream
[2026-08-25 04:18:49,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:18:49,260.260 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 04:18:52,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:18:52,025.025 INFO    ] Checking for system updates...
[2026-08-25 04:18:52,060.060 INFO    ] 200
[2026-08-25 04:18:52,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:52,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:18:52,118.118 INFO    ] No update needed
[2026-08-25 04:18:52,120.120 INFO    ] Checking for camera pi updates...
[2026-08-25 04:18:52,157.157 INFO    ] 200
[2026-08-25 04:18:52,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:18:52,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:18:52,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:18:52,245.245 INFO    ] No camera update needed
[2026-08-25 04:18:52,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:18:52,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:18:52,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:18:52,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:18:54,299.299 INFO    ] ================================================
[2026-08-25 04:18:54,314.314 INFO    ] Launching Daemon at Tue Aug 25 04:18:54 IST 2026
[2026-08-25 04:18:54,325.325 INFO    ] ================================================
[2026-08-25 04:18:54,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:18:54
[2026-08-25 04:18:55,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:18:55,815.815 INFO    ] Initializing speech engine...
[2026-08-25 04:18:55,827.827 INFO    ] 2026-08-25 04:18:55
[2026-08-25 04:18:56,077.077 INFO    ] 2026-08-25 04:18:56
[2026-08-25 04:18:56,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:18:56,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:18:56,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:18:56,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:18:56,579.579 INFO    ] time= 25/08/2026 04:18:56
[2026-08-25 04:18:56,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:18:56,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:18:56,782.782 INFO    ] No existing commands found in stream
[2026-08-25 04:19:01,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:19:01,800.800 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 04:19:03,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:19:03,292.292 INFO    ] Checking for system updates...
[2026-08-25 04:19:03,335.335 INFO    ] 200
[2026-08-25 04:19:03,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:03,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:03,399.399 INFO    ] No update needed
[2026-08-25 04:19:03,402.402 INFO    ] Checking for camera pi updates...
[2026-08-25 04:19:03,443.443 INFO    ] 200
[2026-08-25 04:19:03,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:03,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:19:03,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:03,555.555 INFO    ] No camera update needed
[2026-08-25 04:19:03,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:19:03,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:19:03,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:19:03,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:19:05,620.620 INFO    ] ================================================
[2026-08-25 04:19:05,636.636 INFO    ] Launching Daemon at Tue Aug 25 04:19:05 IST 2026
[2026-08-25 04:19:05,647.647 INFO    ] ================================================
[2026-08-25 04:19:06,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:19:06
[2026-08-25 04:19:06,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:19:07,134.134 INFO    ] Initializing speech engine...
[2026-08-25 04:19:07,143.143 INFO    ] 2026-08-25 04:19:07
[2026-08-25 04:19:07,396.396 INFO    ] 2026-08-25 04:19:07
[2026-08-25 04:19:07,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:19:07,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:19:07,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:19:07,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:19:07,771.771 INFO    ] time= 25/08/2026 04:19:07
[2026-08-25 04:19:07,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:19:07,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:19:07,972.972 INFO    ] No existing commands found in stream
[2026-08-25 04:19:12,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:19:12,985.985 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 04:19:14,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:19:14,823.823 INFO    ] Checking for system updates...
[2026-08-25 04:19:14,859.859 INFO    ] 200
[2026-08-25 04:19:14,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:14,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:14,916.916 INFO    ] No update needed
[2026-08-25 04:19:14,919.919 INFO    ] Checking for camera pi updates...
[2026-08-25 04:19:14,953.953 INFO    ] 200
[2026-08-25 04:19:14,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:14,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:19:15,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:15,048.048 INFO    ] No camera update needed
[2026-08-25 04:19:15,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:19:15,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:19:15,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:19:15,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:19:17,113.113 INFO    ] ================================================
[2026-08-25 04:19:17,127.127 INFO    ] Launching Daemon at Tue Aug 25 04:19:17 IST 2026
[2026-08-25 04:19:17,138.138 INFO    ] ================================================
[2026-08-25 04:19:17,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:19:17
[2026-08-25 04:19:18,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:19:18,688.688 INFO    ] Initializing speech engine...
[2026-08-25 04:19:18,713.713 INFO    ] 2026-08-25 04:19:18
[2026-08-25 04:19:18,983.983 INFO    ] 2026-08-25 04:19:18
[2026-08-25 04:19:19,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:19:19,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:19:19,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:19:19,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:19:19,400.400 INFO    ] time= 25/08/2026 04:19:19
[2026-08-25 04:19:19,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:19:19,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:19:19,550.550 INFO    ] No existing commands found in stream
[2026-08-25 04:19:24,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:19:24,578.578 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 04:19:25,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:19:25,956.956 INFO    ] Checking for system updates...
[2026-08-25 04:19:25,992.992 INFO    ] 200
[2026-08-25 04:19:25,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:26,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:19:26,049.049 INFO    ] No update needed
[2026-08-25 04:19:26,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 04:19:26,089.089 INFO    ] 200
[2026-08-25 04:19:26,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:26,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:19:26,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:19:26,189.189 INFO    ] No camera update needed
[2026-08-25 04:19:26,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:19:26,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:19:26,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:19:26,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:19:28,242.242 INFO    ] ================================================
[2026-08-25 04:19:28,258.258 INFO    ] Launching Daemon at Tue Aug 25 04:19:28 IST 2026
[2026-08-25 04:19:28,268.268 INFO    ] ================================================
[2026-08-25 04:19:28,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:19:28
[2026-08-25 04:19:29,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:19:29,932.932 INFO    ] Initializing speech engine...
[2026-08-25 04:19:29,945.945 INFO    ] 2026-08-25 04:19:29
[2026-08-25 04:19:30,237.237 INFO    ] 2026-08-25 04:19:30
[2026-08-25 04:19:30,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:19:30,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:19:30,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:19:30,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:19:30,730.730 INFO    ] time= 25/08/2026 04:19:30
[2026-08-25 04:19:30,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:19:30,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:19:30,919.919 INFO    ] No existing commands found in stream
[2026-08-25 04:19:35,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:19:35,948.948 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 04:19:37,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:19:37,168.168 INFO    ] Checking for system updates...
[2026-08-25 04:19:37,205.205 INFO    ] 200
[2026-08-25 04:19:37,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:37,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:37,271.271 INFO    ] No update needed
[2026-08-25 04:19:37,273.273 INFO    ] Checking for camera pi updates...
[2026-08-25 04:19:37,311.311 INFO    ] 200
[2026-08-25 04:19:37,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:37,362.362 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:19:37,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:37,415.415 INFO    ] No camera update needed
[2026-08-25 04:19:37,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:19:37,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:19:37,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:19:37,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:19:39,475.475 INFO    ] ================================================
[2026-08-25 04:19:39,490.490 INFO    ] Launching Daemon at Tue Aug 25 04:19:39 IST 2026
[2026-08-25 04:19:39,501.501 INFO    ] ================================================
[2026-08-25 04:19:40,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:19:40
[2026-08-25 04:19:40,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:19:40,966.966 INFO    ] Initializing speech engine...
[2026-08-25 04:19:40,978.978 INFO    ] 2026-08-25 04:19:40
[2026-08-25 04:19:41,228.228 INFO    ] 2026-08-25 04:19:41
[2026-08-25 04:19:41,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:19:41,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:19:41,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:19:41,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:19:41,572.572 INFO    ] time= 25/08/2026 04:19:41
[2026-08-25 04:19:41,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:19:41,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:19:41,702.702 INFO    ] No existing commands found in stream
[2026-08-25 04:19:46,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:19:46,740.740 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 04:19:49,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:19:49,879.879 INFO    ] Checking for system updates...
[2026-08-25 04:19:49,914.914 INFO    ] 200
[2026-08-25 04:19:49,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:49,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:49,971.971 INFO    ] No update needed
[2026-08-25 04:19:49,974.974 INFO    ] Checking for camera pi updates...
[2026-08-25 04:19:50,010.010 INFO    ] 200
[2026-08-25 04:19:50,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:19:50,053.053 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:19:50,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:19:50,099.099 INFO    ] No camera update needed
[2026-08-25 04:19:50,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:19:50,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:19:50,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:19:50,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:19:52,158.158 INFO    ] ================================================
[2026-08-25 04:19:52,175.175 INFO    ] Launching Daemon at Tue Aug 25 04:19:52 IST 2026
[2026-08-25 04:19:52,186.186 INFO    ] ================================================
[2026-08-25 04:19:52,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:19:52
[2026-08-25 04:19:53,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:19:53,614.614 INFO    ] Initializing speech engine...
[2026-08-25 04:19:53,619.619 INFO    ] 2026-08-25 04:19:53
[2026-08-25 04:19:53,864.864 INFO    ] 2026-08-25 04:19:53
[2026-08-25 04:19:53,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:19:54,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:19:54,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:19:54,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:19:54,341.341 INFO    ] time= 25/08/2026 04:19:54
[2026-08-25 04:19:54,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:19:54,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:19:54,555.555 INFO    ] No existing commands found in stream
[2026-08-25 04:19:59,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:19:59,585.585 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 04:20:07,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:20:07,702.702 INFO    ] Checking for system updates...
[2026-08-25 04:20:07,742.742 INFO    ] 200
[2026-08-25 04:20:07,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:07,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:20:07,804.804 INFO    ] No update needed
[2026-08-25 04:20:07,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 04:20:07,845.845 INFO    ] 200
[2026-08-25 04:20:07,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:07,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:20:07,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:20:07,939.939 INFO    ] No camera update needed
[2026-08-25 04:20:07,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:20:07,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:20:07,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:20:07,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:20:10,995.995 INFO    ] ================================================
[2026-08-25 04:20:10,009.009 INFO    ] Launching Daemon at Tue Aug 25 04:20:10 IST 2026
[2026-08-25 04:20:10,020.020 INFO    ] ================================================
[2026-08-25 04:20:10,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:20:10
[2026-08-25 04:20:11,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:20:11,458.458 INFO    ] Initializing speech engine...
[2026-08-25 04:20:11,472.472 INFO    ] 2026-08-25 04:20:11
[2026-08-25 04:20:11,758.758 INFO    ] 2026-08-25 04:20:11
[2026-08-25 04:20:11,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:20:11,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:20:12,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:20:12,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:20:12,168.168 INFO    ] time= 25/08/2026 04:20:12
[2026-08-25 04:20:12,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:20:12,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:20:12,256.256 INFO    ] No existing commands found in stream
[2026-08-25 04:20:17,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:20:17,289.289 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 04:20:21,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:20:21,707.707 INFO    ] Checking for system updates...
[2026-08-25 04:20:21,743.743 INFO    ] 200
[2026-08-25 04:20:21,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:21,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:20:21,800.800 INFO    ] No update needed
[2026-08-25 04:20:21,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 04:20:21,840.840 INFO    ] 200
[2026-08-25 04:20:21,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:21,897.897 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:20:22,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:20:22,053.053 INFO    ] No camera update needed
[2026-08-25 04:20:22,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:20:22,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:20:22,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:20:22,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:20:24,109.109 INFO    ] ================================================
[2026-08-25 04:20:24,125.125 INFO    ] Launching Daemon at Tue Aug 25 04:20:24 IST 2026
[2026-08-25 04:20:24,135.135 INFO    ] ================================================
[2026-08-25 04:20:24,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:20:24
[2026-08-25 04:20:25,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:20:25,748.748 INFO    ] Initializing speech engine...
[2026-08-25 04:20:25,756.756 INFO    ] 2026-08-25 04:20:25
[2026-08-25 04:20:26,075.075 INFO    ] 2026-08-25 04:20:26
[2026-08-25 04:20:26,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:20:26,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:20:26,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:20:26,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:20:26,593.593 INFO    ] time= 25/08/2026 04:20:26
[2026-08-25 04:20:26,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:20:26,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:20:26,752.752 INFO    ] No existing commands found in stream
[2026-08-25 04:20:31,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:20:31,780.780 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 04:20:33,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:20:33,951.951 INFO    ] Checking for system updates...
[2026-08-25 04:20:33,988.988 INFO    ] 200
[2026-08-25 04:20:33,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:34,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:20:34,046.046 INFO    ] No update needed
[2026-08-25 04:20:34,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 04:20:34,083.083 INFO    ] 200
[2026-08-25 04:20:34,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:34,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:20:34,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:20:34,174.174 INFO    ] No camera update needed
[2026-08-25 04:20:34,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:20:34,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:20:34,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:20:34,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:20:36,230.230 INFO    ] ================================================
[2026-08-25 04:20:36,245.245 INFO    ] Launching Daemon at Tue Aug 25 04:20:36 IST 2026
[2026-08-25 04:20:36,256.256 INFO    ] ================================================
[2026-08-25 04:20:36,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:20:36
[2026-08-25 04:20:37,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:20:37,673.673 INFO    ] Initializing speech engine...
[2026-08-25 04:20:37,698.698 INFO    ] 2026-08-25 04:20:37
[2026-08-25 04:20:37,970.970 INFO    ] 2026-08-25 04:20:37
[2026-08-25 04:20:38,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:20:38,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:20:38,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:20:38,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:20:38,358.358 INFO    ] time= 25/08/2026 04:20:38
[2026-08-25 04:20:38,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:20:38,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:20:38,463.463 INFO    ] No existing commands found in stream
[2026-08-25 04:20:43,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:20:43,479.479 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 04:20:46,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:20:46,649.649 INFO    ] Checking for system updates...
[2026-08-25 04:20:46,684.684 INFO    ] 200
[2026-08-25 04:20:46,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:46,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:20:46,741.741 INFO    ] No update needed
[2026-08-25 04:20:46,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 04:20:46,777.777 INFO    ] 200
[2026-08-25 04:20:46,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:20:46,819.819 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:20:46,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:20:46,872.872 INFO    ] No camera update needed
[2026-08-25 04:20:46,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:20:46,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:20:46,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:20:46,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:20:48,926.926 INFO    ] ================================================
[2026-08-25 04:20:48,942.942 INFO    ] Launching Daemon at Tue Aug 25 04:20:48 IST 2026
[2026-08-25 04:20:48,952.952 INFO    ] ================================================
[2026-08-25 04:20:49,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:20:49
[2026-08-25 04:20:50,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:20:50,407.407 INFO    ] Initializing speech engine...
[2026-08-25 04:20:50,416.416 INFO    ] 2026-08-25 04:20:50
[2026-08-25 04:20:50,685.685 INFO    ] 2026-08-25 04:20:50
[2026-08-25 04:20:50,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:20:50,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:20:50,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:20:51,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:20:51,159.159 INFO    ] time= 25/08/2026 04:20:51
[2026-08-25 04:20:51,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:20:51,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:20:51,364.364 INFO    ] No existing commands found in stream
[2026-08-25 04:20:56,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:20:56,380.380 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 04:21:00,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:21:00,248.248 INFO    ] Checking for system updates...
[2026-08-25 04:21:00,289.289 INFO    ] 200
[2026-08-25 04:21:00,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:00,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:21:00,355.355 INFO    ] No update needed
[2026-08-25 04:21:00,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 04:21:00,396.396 INFO    ] 200
[2026-08-25 04:21:00,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:00,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:21:00,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:21:00,498.498 INFO    ] No camera update needed
[2026-08-25 04:21:00,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:21:00,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:21:00,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:21:00,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:21:02,573.573 INFO    ] ================================================
[2026-08-25 04:21:02,594.594 INFO    ] Launching Daemon at Tue Aug 25 04:21:02 IST 2026
[2026-08-25 04:21:02,609.609 INFO    ] ================================================
[2026-08-25 04:21:03,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:21:03
[2026-08-25 04:21:03,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:21:04,205.205 INFO    ] Initializing speech engine...
[2026-08-25 04:21:04,215.215 INFO    ] 2026-08-25 04:21:04
[2026-08-25 04:21:04,484.484 INFO    ] 2026-08-25 04:21:04
[2026-08-25 04:21:04,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:21:04,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:21:04,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:21:05,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:21:05,043.043 INFO    ] time= 25/08/2026 04:21:05
[2026-08-25 04:21:05,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:21:05,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:21:05,175.175 INFO    ] No existing commands found in stream
[2026-08-25 04:21:10,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:21:10,209.209 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 04:21:12,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:21:12,051.051 INFO    ] Checking for system updates...
[2026-08-25 04:21:12,086.086 INFO    ] 200
[2026-08-25 04:21:12,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:12,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:21:12,143.143 INFO    ] No update needed
[2026-08-25 04:21:12,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 04:21:12,181.181 INFO    ] 200
[2026-08-25 04:21:12,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:12,233.233 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:21:12,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:21:12,280.280 INFO    ] No camera update needed
[2026-08-25 04:21:12,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:21:12,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:21:12,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:21:12,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:21:14,335.335 INFO    ] ================================================
[2026-08-25 04:21:14,350.350 INFO    ] Launching Daemon at Tue Aug 25 04:21:14 IST 2026
[2026-08-25 04:21:14,360.360 INFO    ] ================================================
[2026-08-25 04:21:15,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:21:15
[2026-08-25 04:21:15,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:21:15,982.982 INFO    ] Initializing speech engine...
[2026-08-25 04:21:15,993.993 INFO    ] 2026-08-25 04:21:15
[2026-08-25 04:21:16,268.268 INFO    ] 2026-08-25 04:21:16
[2026-08-25 04:21:16,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:21:16,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:21:16,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:21:16,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:21:16,667.667 INFO    ] time= 25/08/2026 04:21:16
[2026-08-25 04:21:16,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:21:16,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:21:16,853.853 INFO    ] No existing commands found in stream
[2026-08-25 04:21:21,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:21:21,885.885 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 04:21:25,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:21:25,743.743 INFO    ] Checking for system updates...
[2026-08-25 04:21:25,778.778 INFO    ] 200
[2026-08-25 04:21:25,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:25,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:21:25,835.835 INFO    ] No update needed
[2026-08-25 04:21:25,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 04:21:25,872.872 INFO    ] 200
[2026-08-25 04:21:25,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:25,914.914 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:21:25,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:21:25,971.971 INFO    ] No camera update needed
[2026-08-25 04:21:25,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:21:25,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:21:25,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:21:25,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:21:28,025.025 INFO    ] ================================================
[2026-08-25 04:21:28,040.040 INFO    ] Launching Daemon at Tue Aug 25 04:21:28 IST 2026
[2026-08-25 04:21:28,054.054 INFO    ] ================================================
[2026-08-25 04:21:28,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:21:28
[2026-08-25 04:21:29,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:21:29,480.480 INFO    ] Initializing speech engine...
[2026-08-25 04:21:29,486.486 INFO    ] 2026-08-25 04:21:29
[2026-08-25 04:21:29,782.782 INFO    ] 2026-08-25 04:21:29
[2026-08-25 04:21:29,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:21:29,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:21:29,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:21:30,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:21:30,133.133 INFO    ] time= 25/08/2026 04:21:30
[2026-08-25 04:21:30,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:21:30,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:21:30,285.285 INFO    ] No existing commands found in stream
[2026-08-25 04:21:35,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:21:35,299.299 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 04:21:37,007.007 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:21:37,009.009 INFO    ] Checking for system updates...
[2026-08-25 04:21:37,046.046 INFO    ] 200
[2026-08-25 04:21:37,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:37,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:21:37,110.110 INFO    ] No update needed
[2026-08-25 04:21:37,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 04:21:37,146.146 INFO    ] 200
[2026-08-25 04:21:37,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:37,188.188 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:21:37,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:21:37,236.236 INFO    ] No camera update needed
[2026-08-25 04:21:37,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:21:37,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:21:37,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:21:37,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:21:39,293.293 INFO    ] ================================================
[2026-08-25 04:21:39,308.308 INFO    ] Launching Daemon at Tue Aug 25 04:21:39 IST 2026
[2026-08-25 04:21:39,319.319 INFO    ] ================================================
[2026-08-25 04:21:39,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:21:39
[2026-08-25 04:21:40,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:21:40,802.802 INFO    ] Initializing speech engine...
[2026-08-25 04:21:40,809.809 INFO    ] 2026-08-25 04:21:40
[2026-08-25 04:21:41,069.069 INFO    ] 2026-08-25 04:21:41
[2026-08-25 04:21:41,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:21:41,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:21:41,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:21:41,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:21:41,564.564 INFO    ] time= 25/08/2026 04:21:41
[2026-08-25 04:21:41,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:21:41,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:21:41,757.757 INFO    ] No existing commands found in stream
[2026-08-25 04:21:46,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:21:46,781.781 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 04:21:51,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:21:51,044.044 INFO    ] Checking for system updates...
[2026-08-25 04:21:51,084.084 INFO    ] 200
[2026-08-25 04:21:51,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:51,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:21:51,148.148 INFO    ] No update needed
[2026-08-25 04:21:51,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 04:21:51,189.189 INFO    ] 200
[2026-08-25 04:21:51,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:21:51,282.282 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:21:51,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:21:51,341.341 INFO    ] No camera update needed
[2026-08-25 04:21:51,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:21:51,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:21:51,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:21:51,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:21:53,406.406 INFO    ] ================================================
[2026-08-25 04:21:53,422.422 INFO    ] Launching Daemon at Tue Aug 25 04:21:53 IST 2026
[2026-08-25 04:21:53,433.433 INFO    ] ================================================
[2026-08-25 04:21:53,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:21:53
[2026-08-25 04:21:54,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:21:54,852.852 INFO    ] Initializing speech engine...
[2026-08-25 04:21:54,860.860 INFO    ] 2026-08-25 04:21:54
[2026-08-25 04:21:55,105.105 INFO    ] 2026-08-25 04:21:55
[2026-08-25 04:21:55,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:21:55,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:21:55,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:21:55,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:21:55,575.575 INFO    ] time= 25/08/2026 04:21:55
[2026-08-25 04:21:55,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:21:55,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:21:55,795.795 INFO    ] No existing commands found in stream
[2026-08-25 04:22:00,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:22:00,825.825 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 04:22:02,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:22:02,033.033 INFO    ] Checking for system updates...
[2026-08-25 04:22:02,087.087 INFO    ] 200
[2026-08-25 04:22:02,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:02,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:22:02,168.168 INFO    ] No update needed
[2026-08-25 04:22:02,171.171 INFO    ] Checking for camera pi updates...
[2026-08-25 04:22:02,209.209 INFO    ] 200
[2026-08-25 04:22:02,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:02,265.265 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:22:02,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:22:02,339.339 INFO    ] No camera update needed
[2026-08-25 04:22:02,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:22:02,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:22:02,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:22:02,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:22:04,407.407 INFO    ] ================================================
[2026-08-25 04:22:04,423.423 INFO    ] Launching Daemon at Tue Aug 25 04:22:04 IST 2026
[2026-08-25 04:22:04,433.433 INFO    ] ================================================
[2026-08-25 04:22:05,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:22:05
[2026-08-25 04:22:05,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:22:06,005.005 INFO    ] Initializing speech engine...
[2026-08-25 04:22:06,014.014 INFO    ] 2026-08-25 04:22:06
[2026-08-25 04:22:06,292.292 INFO    ] 2026-08-25 04:22:06
[2026-08-25 04:22:06,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:22:06,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:22:06,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:22:06,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:22:06,791.791 INFO    ] time= 25/08/2026 04:22:06
[2026-08-25 04:22:06,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:22:06,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:22:06,997.997 INFO    ] No existing commands found in stream
[2026-08-25 04:22:12,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:22:12,017.017 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 04:22:13,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:22:13,482.482 INFO    ] Checking for system updates...
[2026-08-25 04:22:13,520.520 INFO    ] 200
[2026-08-25 04:22:13,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:13,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:22:13,589.589 INFO    ] No update needed
[2026-08-25 04:22:13,592.592 INFO    ] Checking for camera pi updates...
[2026-08-25 04:22:13,628.628 INFO    ] 200
[2026-08-25 04:22:13,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:13,683.683 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:22:13,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:22:13,737.737 INFO    ] No camera update needed
[2026-08-25 04:22:13,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:22:13,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:22:13,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:22:13,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:22:15,799.799 INFO    ] ================================================
[2026-08-25 04:22:15,814.814 INFO    ] Launching Daemon at Tue Aug 25 04:22:15 IST 2026
[2026-08-25 04:22:15,825.825 INFO    ] ================================================
[2026-08-25 04:22:16,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:22:16
[2026-08-25 04:22:17,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:22:17,487.487 INFO    ] Initializing speech engine...
[2026-08-25 04:22:17,500.500 INFO    ] 2026-08-25 04:22:17
[2026-08-25 04:22:17,784.784 INFO    ] 2026-08-25 04:22:17
[2026-08-25 04:22:17,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:22:18,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:22:18,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:22:18,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:22:18,323.323 INFO    ] time= 25/08/2026 04:22:18
[2026-08-25 04:22:18,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:22:18,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:22:18,478.478 INFO    ] No existing commands found in stream
[2026-08-25 04:22:23,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:22:23,497.497 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 04:22:26,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:22:26,090.090 INFO    ] Checking for system updates...
[2026-08-25 04:22:26,126.126 INFO    ] 200
[2026-08-25 04:22:26,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:26,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:22:26,194.194 INFO    ] No update needed
[2026-08-25 04:22:26,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 04:22:26,231.231 INFO    ] 200
[2026-08-25 04:22:26,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:26,279.279 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:22:26,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:22:26,422.422 INFO    ] No camera update needed
[2026-08-25 04:22:26,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:22:26,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:22:26,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:22:26,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:22:28,477.477 INFO    ] ================================================
[2026-08-25 04:22:28,492.492 INFO    ] Launching Daemon at Tue Aug 25 04:22:28 IST 2026
[2026-08-25 04:22:28,503.503 INFO    ] ================================================
[2026-08-25 04:22:29,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:22:29
[2026-08-25 04:22:29,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:22:30,141.141 INFO    ] Initializing speech engine...
[2026-08-25 04:22:30,154.154 INFO    ] 2026-08-25 04:22:30
[2026-08-25 04:22:30,424.424 INFO    ] 2026-08-25 04:22:30
[2026-08-25 04:22:30,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:22:30,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:22:30,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:22:30,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:22:30,900.900 INFO    ] time= 25/08/2026 04:22:30
[2026-08-25 04:22:30,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:22:30,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:22:31,127.127 INFO    ] No existing commands found in stream
[2026-08-25 04:22:36,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:22:36,141.141 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 04:22:39,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:22:39,025.025 INFO    ] Checking for system updates...
[2026-08-25 04:22:39,062.062 INFO    ] 200
[2026-08-25 04:22:39,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:39,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:22:39,121.121 INFO    ] No update needed
[2026-08-25 04:22:39,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 04:22:39,158.158 INFO    ] 200
[2026-08-25 04:22:39,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:39,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:22:39,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:22:39,251.251 INFO    ] No camera update needed
[2026-08-25 04:22:39,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:22:39,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:22:39,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:22:39,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:22:41,306.306 INFO    ] ================================================
[2026-08-25 04:22:41,321.321 INFO    ] Launching Daemon at Tue Aug 25 04:22:41 IST 2026
[2026-08-25 04:22:41,332.332 INFO    ] ================================================
[2026-08-25 04:22:41,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:22:41
[2026-08-25 04:22:42,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:22:42,759.759 INFO    ] Initializing speech engine...
[2026-08-25 04:22:42,769.769 INFO    ] 2026-08-25 04:22:42
[2026-08-25 04:22:43,013.013 INFO    ] 2026-08-25 04:22:43
[2026-08-25 04:22:43,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:22:43,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:22:43,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:22:43,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:22:43,486.486 INFO    ] time= 25/08/2026 04:22:43
[2026-08-25 04:22:43,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:22:43,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:22:43,699.699 INFO    ] No existing commands found in stream
[2026-08-25 04:22:48,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:22:48,731.731 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 04:22:50,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:22:50,076.076 INFO    ] Checking for system updates...
[2026-08-25 04:22:50,112.112 INFO    ] 200
[2026-08-25 04:22:50,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:50,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:22:50,169.169 INFO    ] No update needed
[2026-08-25 04:22:50,171.171 INFO    ] Checking for camera pi updates...
[2026-08-25 04:22:50,207.207 INFO    ] 200
[2026-08-25 04:22:50,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:22:50,255.255 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:22:50,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:22:50,321.321 INFO    ] No camera update needed
[2026-08-25 04:22:50,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:22:50,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:22:50,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:22:50,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:22:52,377.377 INFO    ] ================================================
[2026-08-25 04:22:52,392.392 INFO    ] Launching Daemon at Tue Aug 25 04:22:52 IST 2026
[2026-08-25 04:22:52,402.402 INFO    ] ================================================
[2026-08-25 04:22:52,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:22:52
[2026-08-25 04:22:53,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:22:53,819.819 INFO    ] Initializing speech engine...
[2026-08-25 04:22:53,828.828 INFO    ] 2026-08-25 04:22:53
[2026-08-25 04:22:54,073.073 INFO    ] 2026-08-25 04:22:54
[2026-08-25 04:22:54,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:22:54,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:22:54,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:22:54,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:22:54,540.540 INFO    ] time= 25/08/2026 04:22:54
[2026-08-25 04:22:54,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:22:54,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:22:54,748.748 INFO    ] No existing commands found in stream
[2026-08-25 04:22:59,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:22:59,772.772 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 04:23:01,127.127 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:23:01,130.130 INFO    ] Checking for system updates...
[2026-08-25 04:23:01,177.177 INFO    ] 200
[2026-08-25 04:23:01,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:01,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:23:01,311.311 INFO    ] No update needed
[2026-08-25 04:23:01,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 04:23:01,384.384 INFO    ] 200
[2026-08-25 04:23:01,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:01,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:23:01,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:23:01,516.516 INFO    ] No camera update needed
[2026-08-25 04:23:01,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:23:01,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:23:01,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:23:01,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:23:03,609.609 INFO    ] ================================================
[2026-08-25 04:23:03,624.624 INFO    ] Launching Daemon at Tue Aug 25 04:23:03 IST 2026
[2026-08-25 04:23:03,635.635 INFO    ] ================================================
[2026-08-25 04:23:04,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:23:04
[2026-08-25 04:23:04,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:23:05,068.068 INFO    ] Initializing speech engine...
[2026-08-25 04:23:05,075.075 INFO    ] 2026-08-25 04:23:05
[2026-08-25 04:23:05,368.368 INFO    ] 2026-08-25 04:23:05
[2026-08-25 04:23:05,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:23:05,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:23:05,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:23:05,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:23:05,785.785 INFO    ] time= 25/08/2026 04:23:05
[2026-08-25 04:23:05,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:23:05,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:23:05,955.955 INFO    ] No existing commands found in stream
[2026-08-25 04:23:10,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:23:10,980.980 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 04:23:14,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:23:14,778.778 INFO    ] Checking for system updates...
[2026-08-25 04:23:14,814.814 INFO    ] 200
[2026-08-25 04:23:14,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:14,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:23:14,877.877 INFO    ] No update needed
[2026-08-25 04:23:14,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 04:23:14,918.918 INFO    ] 200
[2026-08-25 04:23:14,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:14,983.983 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:23:15,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:23:15,036.036 INFO    ] No camera update needed
[2026-08-25 04:23:15,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:23:15,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:23:15,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:23:15,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:23:17,093.093 INFO    ] ================================================
[2026-08-25 04:23:17,108.108 INFO    ] Launching Daemon at Tue Aug 25 04:23:17 IST 2026
[2026-08-25 04:23:17,119.119 INFO    ] ================================================
[2026-08-25 04:23:17,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:23:17
[2026-08-25 04:23:18,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:23:18,534.534 INFO    ] Initializing speech engine...
[2026-08-25 04:23:18,543.543 INFO    ] 2026-08-25 04:23:18
[2026-08-25 04:23:18,795.795 INFO    ] 2026-08-25 04:23:18
[2026-08-25 04:23:18,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:23:19,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:23:19,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:23:19,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:23:19,235.235 INFO    ] time= 25/08/2026 04:23:19
[2026-08-25 04:23:19,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:23:19,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:23:19,453.453 INFO    ] No existing commands found in stream
[2026-08-25 04:23:24,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:23:24,487.487 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 04:23:28,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:23:28,372.372 INFO    ] Checking for system updates...
[2026-08-25 04:23:28,407.407 INFO    ] 200
[2026-08-25 04:23:28,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:28,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:23:28,469.469 INFO    ] No update needed
[2026-08-25 04:23:28,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 04:23:28,508.508 INFO    ] 200
[2026-08-25 04:23:28,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:28,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:23:28,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:23:28,600.600 INFO    ] No camera update needed
[2026-08-25 04:23:28,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:23:28,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:23:28,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:23:28,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:23:30,658.658 INFO    ] ================================================
[2026-08-25 04:23:30,673.673 INFO    ] Launching Daemon at Tue Aug 25 04:23:30 IST 2026
[2026-08-25 04:23:30,683.683 INFO    ] ================================================
[2026-08-25 04:23:31,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:23:31
[2026-08-25 04:23:32,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:23:32,383.383 INFO    ] Initializing speech engine...
[2026-08-25 04:23:32,393.393 INFO    ] 2026-08-25 04:23:32
[2026-08-25 04:23:32,677.677 INFO    ] 2026-08-25 04:23:32
[2026-08-25 04:23:32,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:23:32,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:23:32,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:23:33,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:23:33,129.129 INFO    ] time= 25/08/2026 04:23:33
[2026-08-25 04:23:33,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:23:33,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:23:33,389.389 INFO    ] No existing commands found in stream
[2026-08-25 04:23:38,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:23:38,418.418 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 04:23:42,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:23:42,050.050 INFO    ] Checking for system updates...
[2026-08-25 04:23:42,086.086 INFO    ] 200
[2026-08-25 04:23:42,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:42,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:23:42,150.150 INFO    ] No update needed
[2026-08-25 04:23:42,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 04:23:42,191.191 INFO    ] 200
[2026-08-25 04:23:42,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:42,234.234 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:23:42,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:23:42,293.293 INFO    ] No camera update needed
[2026-08-25 04:23:42,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:23:42,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:23:42,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:23:42,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:23:44,350.350 INFO    ] ================================================
[2026-08-25 04:23:44,365.365 INFO    ] Launching Daemon at Tue Aug 25 04:23:44 IST 2026
[2026-08-25 04:23:44,376.376 INFO    ] ================================================
[2026-08-25 04:23:44,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:23:44
[2026-08-25 04:23:45,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:23:45,899.899 INFO    ] Initializing speech engine...
[2026-08-25 04:23:45,905.905 INFO    ] 2026-08-25 04:23:45
[2026-08-25 04:23:46,189.189 INFO    ] 2026-08-25 04:23:46
[2026-08-25 04:23:46,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:23:46,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:23:46,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:23:46,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:23:46,662.662 INFO    ] time= 25/08/2026 04:23:46
[2026-08-25 04:23:46,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:23:46,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:23:46,868.868 INFO    ] No existing commands found in stream
[2026-08-25 04:23:51,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:23:51,897.897 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 04:23:55,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:23:55,129.129 INFO    ] Checking for system updates...
[2026-08-25 04:23:55,169.169 INFO    ] 200
[2026-08-25 04:23:55,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:55,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:23:55,232.232 INFO    ] No update needed
[2026-08-25 04:23:55,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 04:23:55,269.269 INFO    ] 200
[2026-08-25 04:23:55,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:23:55,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:23:55,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:23:55,366.366 INFO    ] No camera update needed
[2026-08-25 04:23:55,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:23:55,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:23:55,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:23:55,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:23:57,424.424 INFO    ] ================================================
[2026-08-25 04:23:57,439.439 INFO    ] Launching Daemon at Tue Aug 25 04:23:57 IST 2026
[2026-08-25 04:23:57,449.449 INFO    ] ================================================
[2026-08-25 04:23:58,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:23:58
[2026-08-25 04:23:58,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:23:58,907.907 INFO    ] Initializing speech engine...
[2026-08-25 04:23:58,917.917 INFO    ] 2026-08-25 04:23:58
[2026-08-25 04:23:59,184.184 INFO    ] 2026-08-25 04:23:59
[2026-08-25 04:23:59,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:23:59,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:23:59,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:23:59,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:23:59,554.554 INFO    ] time= 25/08/2026 04:23:59
[2026-08-25 04:23:59,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:23:59,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:23:59,677.677 INFO    ] No existing commands found in stream
[2026-08-25 04:24:04,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:24:04,692.692 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 04:24:05,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:24:05,227.227 INFO    ] Checking for system updates...
[2026-08-25 04:24:05,266.266 INFO    ] 200
[2026-08-25 04:24:05,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:05,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:24:05,328.328 INFO    ] No update needed
[2026-08-25 04:24:05,331.331 INFO    ] Checking for camera pi updates...
[2026-08-25 04:24:05,365.365 INFO    ] 200
[2026-08-25 04:24:05,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:05,412.412 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:24:05,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:24:05,471.471 INFO    ] No camera update needed
[2026-08-25 04:24:05,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:24:05,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:24:05,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:24:05,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:24:07,526.526 INFO    ] ================================================
[2026-08-25 04:24:07,542.542 INFO    ] Launching Daemon at Tue Aug 25 04:24:07 IST 2026
[2026-08-25 04:24:07,552.552 INFO    ] ================================================
[2026-08-25 04:24:08,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:24:08
[2026-08-25 04:24:08,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:24:09,014.014 INFO    ] Initializing speech engine...
[2026-08-25 04:24:09,023.023 INFO    ] 2026-08-25 04:24:09
[2026-08-25 04:24:09,282.282 INFO    ] 2026-08-25 04:24:09
[2026-08-25 04:24:09,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:24:09,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:24:09,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:24:09,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:24:09,737.737 INFO    ] time= 25/08/2026 04:24:09
[2026-08-25 04:24:09,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:24:09,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:24:09,988.988 INFO    ] No existing commands found in stream
[2026-08-25 04:24:15,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:24:15,016.016 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 04:24:16,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:24:16,759.759 INFO    ] Checking for system updates...
[2026-08-25 04:24:16,794.794 INFO    ] 200
[2026-08-25 04:24:16,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:16,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:24:16,857.857 INFO    ] No update needed
[2026-08-25 04:24:16,860.860 INFO    ] Checking for camera pi updates...
[2026-08-25 04:24:16,893.893 INFO    ] 200
[2026-08-25 04:24:16,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:16,936.936 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:24:16,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:24:16,985.985 INFO    ] No camera update needed
[2026-08-25 04:24:16,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:24:16,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:24:16,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:24:17,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:24:19,040.040 INFO    ] ================================================
[2026-08-25 04:24:19,056.056 INFO    ] Launching Daemon at Tue Aug 25 04:24:19 IST 2026
[2026-08-25 04:24:19,066.066 INFO    ] ================================================
[2026-08-25 04:24:19,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:24:19
[2026-08-25 04:24:20,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:24:20,522.522 INFO    ] Initializing speech engine...
[2026-08-25 04:24:20,541.541 INFO    ] 2026-08-25 04:24:20
[2026-08-25 04:24:20,808.808 INFO    ] 2026-08-25 04:24:20
[2026-08-25 04:24:20,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:24:21,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:24:21,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:24:21,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:24:21,182.182 INFO    ] time= 25/08/2026 04:24:21
[2026-08-25 04:24:21,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:24:21,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:24:21,305.305 INFO    ] No existing commands found in stream
[2026-08-25 04:24:26,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:24:26,321.321 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 04:24:29,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:24:29,839.839 INFO    ] Checking for system updates...
[2026-08-25 04:24:29,874.874 INFO    ] 200
[2026-08-25 04:24:29,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:29,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:24:29,931.931 INFO    ] No update needed
[2026-08-25 04:24:29,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 04:24:29,967.967 INFO    ] 200
[2026-08-25 04:24:29,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:30,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:24:30,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:24:30,157.157 INFO    ] No camera update needed
[2026-08-25 04:24:30,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:24:30,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:24:30,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:24:30,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:24:32,212.212 INFO    ] ================================================
[2026-08-25 04:24:32,228.228 INFO    ] Launching Daemon at Tue Aug 25 04:24:32 IST 2026
[2026-08-25 04:24:32,239.239 INFO    ] ================================================
[2026-08-25 04:24:32,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:24:32
[2026-08-25 04:24:33,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:24:33,681.681 INFO    ] Initializing speech engine...
[2026-08-25 04:24:33,702.702 INFO    ] 2026-08-25 04:24:33
[2026-08-25 04:24:33,976.976 INFO    ] 2026-08-25 04:24:33
[2026-08-25 04:24:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:24:34,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:24:34,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:24:34,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:24:34,365.365 INFO    ] time= 25/08/2026 04:24:34
[2026-08-25 04:24:34,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:24:34,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:24:34,472.472 INFO    ] No existing commands found in stream
[2026-08-25 04:24:39,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:24:39,487.487 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 04:24:42,106.106 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:24:42,109.109 INFO    ] Checking for system updates...
[2026-08-25 04:24:42,148.148 INFO    ] 200
[2026-08-25 04:24:42,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:42,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:24:42,214.214 INFO    ] No update needed
[2026-08-25 04:24:42,217.217 INFO    ] Checking for camera pi updates...
[2026-08-25 04:24:42,260.260 INFO    ] 200
[2026-08-25 04:24:42,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:42,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:24:42,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:24:42,376.376 INFO    ] No camera update needed
[2026-08-25 04:24:42,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:24:42,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:24:42,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:24:42,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:24:44,433.433 INFO    ] ================================================
[2026-08-25 04:24:44,448.448 INFO    ] Launching Daemon at Tue Aug 25 04:24:44 IST 2026
[2026-08-25 04:24:44,459.459 INFO    ] ================================================
[2026-08-25 04:24:45,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:24:45
[2026-08-25 04:24:45,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:24:45,967.967 INFO    ] Initializing speech engine...
[2026-08-25 04:24:45,974.974 INFO    ] 2026-08-25 04:24:45
[2026-08-25 04:24:46,263.263 INFO    ] 2026-08-25 04:24:46
[2026-08-25 04:24:46,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:24:46,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:24:46,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:24:46,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:24:46,717.717 INFO    ] time= 25/08/2026 04:24:46
[2026-08-25 04:24:46,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:24:46,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:24:46,948.948 INFO    ] No existing commands found in stream
[2026-08-25 04:24:51,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:24:51,974.974 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 04:24:56,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:24:56,190.190 INFO    ] Checking for system updates...
[2026-08-25 04:24:56,227.227 INFO    ] 200
[2026-08-25 04:24:56,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:56,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:24:56,291.291 INFO    ] No update needed
[2026-08-25 04:24:56,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 04:24:56,331.331 INFO    ] 200
[2026-08-25 04:24:56,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:24:56,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:24:56,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:24:56,426.426 INFO    ] No camera update needed
[2026-08-25 04:24:56,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:24:56,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:24:56,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:24:56,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:24:58,484.484 INFO    ] ================================================
[2026-08-25 04:24:58,499.499 INFO    ] Launching Daemon at Tue Aug 25 04:24:58 IST 2026
[2026-08-25 04:24:58,511.511 INFO    ] ================================================
[2026-08-25 04:24:59,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:24:59
[2026-08-25 04:24:59,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:24:59,940.940 INFO    ] Initializing speech engine...
[2026-08-25 04:24:59,962.962 INFO    ] 2026-08-25 04:24:59
[2026-08-25 04:25:00,216.216 INFO    ] 2026-08-25 04:25:00
[2026-08-25 04:25:00,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:25:00,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:25:00,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:25:00,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:25:00,691.691 INFO    ] time= 25/08/2026 04:25:00
[2026-08-25 04:25:00,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:25:00,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:25:00,847.847 INFO    ] No existing commands found in stream
[2026-08-25 04:25:05,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:25:05,886.886 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 04:25:07,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:25:07,698.698 INFO    ] Checking for system updates...
[2026-08-25 04:25:07,733.733 INFO    ] 200
[2026-08-25 04:25:07,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:07,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:25:07,791.791 INFO    ] No update needed
[2026-08-25 04:25:07,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 04:25:07,827.827 INFO    ] 200
[2026-08-25 04:25:07,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:07,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:25:07,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:25:07,921.921 INFO    ] No camera update needed
[2026-08-25 04:25:07,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:25:07,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:25:07,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:25:07,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:25:09,977.977 INFO    ] ================================================
[2026-08-25 04:25:09,992.992 INFO    ] Launching Daemon at Tue Aug 25 04:25:09 IST 2026
[2026-08-25 04:25:10,002.002 INFO    ] ================================================
[2026-08-25 04:25:10,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:25:10
[2026-08-25 04:25:11,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:25:11,458.458 INFO    ] Initializing speech engine...
[2026-08-25 04:25:11,463.463 INFO    ] 2026-08-25 04:25:11
[2026-08-25 04:25:11,712.712 INFO    ] 2026-08-25 04:25:11
[2026-08-25 04:25:11,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:25:11,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:25:11,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:25:12,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:25:12,085.085 INFO    ] time= 25/08/2026 04:25:12
[2026-08-25 04:25:12,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:25:12,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:25:12,265.265 INFO    ] No existing commands found in stream
[2026-08-25 04:25:17,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:25:17,300.300 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 04:25:18,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:25:18,098.098 INFO    ] Checking for system updates...
[2026-08-25 04:25:18,133.133 INFO    ] 200
[2026-08-25 04:25:18,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:18,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:25:18,193.193 INFO    ] No update needed
[2026-08-25 04:25:18,196.196 INFO    ] Checking for camera pi updates...
[2026-08-25 04:25:18,229.229 INFO    ] 200
[2026-08-25 04:25:18,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:18,272.272 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:25:18,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:25:18,332.332 INFO    ] No camera update needed
[2026-08-25 04:25:18,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:25:18,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:25:18,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:25:18,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:25:20,387.387 INFO    ] ================================================
[2026-08-25 04:25:20,402.402 INFO    ] Launching Daemon at Tue Aug 25 04:25:20 IST 2026
[2026-08-25 04:25:20,412.412 INFO    ] ================================================
[2026-08-25 04:25:21,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:25:20
[2026-08-25 04:25:21,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:25:21,838.838 INFO    ] Initializing speech engine...
[2026-08-25 04:25:21,859.859 INFO    ] 2026-08-25 04:25:21
[2026-08-25 04:25:22,118.118 INFO    ] 2026-08-25 04:25:22
[2026-08-25 04:25:22,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:25:22,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:25:22,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:25:22,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:25:22,492.492 INFO    ] time= 25/08/2026 04:25:22
[2026-08-25 04:25:22,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:25:22,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:25:22,677.677 INFO    ] No existing commands found in stream
[2026-08-25 04:25:27,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:25:27,705.705 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 04:25:31,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:25:31,216.216 INFO    ] Checking for system updates...
[2026-08-25 04:25:31,256.256 INFO    ] 200
[2026-08-25 04:25:31,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:31,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:25:31,335.335 INFO    ] No update needed
[2026-08-25 04:25:31,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 04:25:31,375.375 INFO    ] 200
[2026-08-25 04:25:31,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:31,424.424 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:25:31,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:25:31,483.483 INFO    ] No camera update needed
[2026-08-25 04:25:31,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:25:31,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:25:31,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:25:31,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:25:33,545.545 INFO    ] ================================================
[2026-08-25 04:25:33,560.560 INFO    ] Launching Daemon at Tue Aug 25 04:25:33 IST 2026
[2026-08-25 04:25:33,570.570 INFO    ] ================================================
[2026-08-25 04:25:34,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:25:34
[2026-08-25 04:25:34,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:25:34,979.979 INFO    ] Initializing speech engine...
[2026-08-25 04:25:34,992.992 INFO    ] 2026-08-25 04:25:34
[2026-08-25 04:25:35,272.272 INFO    ] 2026-08-25 04:25:35
[2026-08-25 04:25:35,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:25:35,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:25:35,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:25:35,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:25:35,617.617 INFO    ] time= 25/08/2026 04:25:35
[2026-08-25 04:25:35,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:25:35,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:25:35,695.695 INFO    ] No existing commands found in stream
[2026-08-25 04:25:40,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:25:40,710.710 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 04:25:44,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:25:44,477.477 INFO    ] Checking for system updates...
[2026-08-25 04:25:44,512.512 INFO    ] 200
[2026-08-25 04:25:44,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:44,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:25:44,569.569 INFO    ] No update needed
[2026-08-25 04:25:44,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 04:25:44,605.605 INFO    ] 200
[2026-08-25 04:25:44,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:44,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:25:44,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:25:44,700.700 INFO    ] No camera update needed
[2026-08-25 04:25:44,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:25:44,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:25:44,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:25:44,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:25:46,754.754 INFO    ] ================================================
[2026-08-25 04:25:46,769.769 INFO    ] Launching Daemon at Tue Aug 25 04:25:46 IST 2026
[2026-08-25 04:25:46,780.780 INFO    ] ================================================
[2026-08-25 04:25:47,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:25:47
[2026-08-25 04:25:47,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:25:48,181.181 INFO    ] Initializing speech engine...
[2026-08-25 04:25:48,194.194 INFO    ] 2026-08-25 04:25:48
[2026-08-25 04:25:48,480.480 INFO    ] 2026-08-25 04:25:48
[2026-08-25 04:25:48,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:25:48,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:25:48,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:25:48,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:25:48,865.865 INFO    ] time= 25/08/2026 04:25:48
[2026-08-25 04:25:48,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:25:48,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:25:48,992.992 INFO    ] No existing commands found in stream
[2026-08-25 04:25:54,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:25:54,008.008 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 04:25:56,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:25:56,161.161 INFO    ] Checking for system updates...
[2026-08-25 04:25:56,196.196 INFO    ] 200
[2026-08-25 04:25:56,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:56,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:25:56,260.260 INFO    ] No update needed
[2026-08-25 04:25:56,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 04:25:56,296.296 INFO    ] 200
[2026-08-25 04:25:56,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:25:56,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:25:56,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:25:56,389.389 INFO    ] No camera update needed
[2026-08-25 04:25:56,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:25:56,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:25:56,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:25:56,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:25:58,443.443 INFO    ] ================================================
[2026-08-25 04:25:58,458.458 INFO    ] Launching Daemon at Tue Aug 25 04:25:58 IST 2026
[2026-08-25 04:25:58,469.469 INFO    ] ================================================
[2026-08-25 04:25:59,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:25:59
[2026-08-25 04:25:59,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:26:00,131.131 INFO    ] Initializing speech engine...
[2026-08-25 04:26:00,139.139 INFO    ] 2026-08-25 04:26:00
[2026-08-25 04:26:00,431.431 INFO    ] 2026-08-25 04:26:00
[2026-08-25 04:26:00,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:26:00,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:26:00,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:26:00,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:26:00,978.978 INFO    ] time= 25/08/2026 04:26:00
[2026-08-25 04:26:00,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:26:01,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:26:01,133.133 INFO    ] No existing commands found in stream
[2026-08-25 04:26:06,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:26:06,153.153 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 04:26:06,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:26:06,991.991 INFO    ] Checking for system updates...
[2026-08-25 04:26:07,029.029 INFO    ] 200
[2026-08-25 04:26:07,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:07,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:07,089.089 INFO    ] No update needed
[2026-08-25 04:26:07,092.092 INFO    ] Checking for camera pi updates...
[2026-08-25 04:26:07,127.127 INFO    ] 200
[2026-08-25 04:26:07,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:07,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:26:07,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:07,219.219 INFO    ] No camera update needed
[2026-08-25 04:26:07,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:26:07,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:26:07,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:26:07,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:26:09,277.277 INFO    ] ================================================
[2026-08-25 04:26:09,292.292 INFO    ] Launching Daemon at Tue Aug 25 04:26:09 IST 2026
[2026-08-25 04:26:09,303.303 INFO    ] ================================================
[2026-08-25 04:26:09,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:26:09
[2026-08-25 04:26:10,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:26:10,755.755 INFO    ] Initializing speech engine...
[2026-08-25 04:26:10,761.761 INFO    ] 2026-08-25 04:26:10
[2026-08-25 04:26:11,034.034 INFO    ] 2026-08-25 04:26:11
[2026-08-25 04:26:11,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:26:11,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:26:11,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:26:11,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:26:11,404.404 INFO    ] time= 25/08/2026 04:26:11
[2026-08-25 04:26:11,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:26:11,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:26:11,571.571 INFO    ] No existing commands found in stream
[2026-08-25 04:26:16,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:26:16,595.595 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 04:26:19,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:26:19,980.980 INFO    ] Checking for system updates...
[2026-08-25 04:26:20,015.015 INFO    ] 200
[2026-08-25 04:26:20,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:20,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:26:20,072.072 INFO    ] No update needed
[2026-08-25 04:26:20,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 04:26:20,107.107 INFO    ] 200
[2026-08-25 04:26:20,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:20,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:26:20,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:26:20,199.199 INFO    ] No camera update needed
[2026-08-25 04:26:20,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:26:20,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:26:20,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:26:20,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:26:22,252.252 INFO    ] ================================================
[2026-08-25 04:26:22,268.268 INFO    ] Launching Daemon at Tue Aug 25 04:26:22 IST 2026
[2026-08-25 04:26:22,279.279 INFO    ] ================================================
[2026-08-25 04:26:22,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:26:22
[2026-08-25 04:26:23,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:26:23,859.859 INFO    ] Initializing speech engine...
[2026-08-25 04:26:23,865.865 INFO    ] 2026-08-25 04:26:23
[2026-08-25 04:26:24,149.149 INFO    ] 2026-08-25 04:26:24
[2026-08-25 04:26:24,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:26:24,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:26:24,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:26:24,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:26:24,676.676 INFO    ] time= 25/08/2026 04:26:24
[2026-08-25 04:26:24,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:26:24,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:26:24,860.860 INFO    ] No existing commands found in stream
[2026-08-25 04:26:29,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:26:29,889.889 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 04:26:30,744.744 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:26:30,747.747 INFO    ] Checking for system updates...
[2026-08-25 04:26:30,784.784 INFO    ] 200
[2026-08-25 04:26:30,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:30,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:30,843.843 INFO    ] No update needed
[2026-08-25 04:26:30,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 04:26:30,881.881 INFO    ] 200
[2026-08-25 04:26:30,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:30,926.926 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:26:30,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:30,975.975 INFO    ] No camera update needed
[2026-08-25 04:26:30,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:26:30,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:26:30,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:26:30,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:26:33,036.036 INFO    ] ================================================
[2026-08-25 04:26:33,051.051 INFO    ] Launching Daemon at Tue Aug 25 04:26:33 IST 2026
[2026-08-25 04:26:33,062.062 INFO    ] ================================================
[2026-08-25 04:26:33,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:26:33
[2026-08-25 04:26:34,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:26:34,505.505 INFO    ] Initializing speech engine...
[2026-08-25 04:26:34,514.514 INFO    ] 2026-08-25 04:26:34
[2026-08-25 04:26:34,761.761 INFO    ] 2026-08-25 04:26:34
[2026-08-25 04:26:34,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:26:34,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:26:35,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:26:35,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:26:35,212.212 INFO    ] time= 25/08/2026 04:26:35
[2026-08-25 04:26:35,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:26:35,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:26:35,555.555 INFO    ] No existing commands found in stream
[2026-08-25 04:26:40,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:26:40,583.583 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 04:26:42,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:26:42,183.183 INFO    ] Checking for system updates...
[2026-08-25 04:26:42,218.218 INFO    ] 200
[2026-08-25 04:26:42,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:42,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:42,275.275 INFO    ] No update needed
[2026-08-25 04:26:42,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 04:26:42,311.311 INFO    ] 200
[2026-08-25 04:26:42,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:42,354.354 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:26:42,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:42,414.414 INFO    ] No camera update needed
[2026-08-25 04:26:42,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:26:42,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:26:42,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:26:42,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:26:44,469.469 INFO    ] ================================================
[2026-08-25 04:26:44,485.485 INFO    ] Launching Daemon at Tue Aug 25 04:26:44 IST 2026
[2026-08-25 04:26:44,495.495 INFO    ] ================================================
[2026-08-25 04:26:45,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:26:45
[2026-08-25 04:26:45,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:26:46,155.155 INFO    ] Initializing speech engine...
[2026-08-25 04:26:46,160.160 INFO    ] 2026-08-25 04:26:46
[2026-08-25 04:26:46,471.471 INFO    ] 2026-08-25 04:26:46
[2026-08-25 04:26:46,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:26:46,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:26:46,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:26:46,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:26:46,918.918 INFO    ] time= 25/08/2026 04:26:46
[2026-08-25 04:26:46,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:26:46,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:26:47,123.123 INFO    ] No existing commands found in stream
[2026-08-25 04:26:52,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:26:52,148.148 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 04:26:54,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:26:54,642.642 INFO    ] Checking for system updates...
[2026-08-25 04:26:54,679.679 INFO    ] 200
[2026-08-25 04:26:54,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:54,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:54,744.744 INFO    ] No update needed
[2026-08-25 04:26:54,746.746 INFO    ] Checking for camera pi updates...
[2026-08-25 04:26:54,780.780 INFO    ] 200
[2026-08-25 04:26:54,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:26:54,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:26:54,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:26:54,884.884 INFO    ] No camera update needed
[2026-08-25 04:26:54,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:26:54,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:26:54,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:26:54,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:26:56,940.940 INFO    ] ================================================
[2026-08-25 04:26:56,956.956 INFO    ] Launching Daemon at Tue Aug 25 04:26:56 IST 2026
[2026-08-25 04:26:56,967.967 INFO    ] ================================================
[2026-08-25 04:26:57,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:26:57
[2026-08-25 04:26:58,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:26:58,634.634 INFO    ] Initializing speech engine...
[2026-08-25 04:26:58,646.646 INFO    ] 2026-08-25 04:26:58
[2026-08-25 04:26:58,928.928 INFO    ] 2026-08-25 04:26:58
[2026-08-25 04:26:58,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:26:59,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:26:59,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:26:59,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:26:59,417.417 INFO    ] time= 25/08/2026 04:26:59
[2026-08-25 04:26:59,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:26:59,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:26:59,654.654 INFO    ] No existing commands found in stream
[2026-08-25 04:27:04,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:27:04,690.690 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 04:27:07,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:27:07,423.423 INFO    ] Checking for system updates...
[2026-08-25 04:27:07,460.460 INFO    ] 200
[2026-08-25 04:27:07,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:07,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:27:07,527.527 INFO    ] No update needed
[2026-08-25 04:27:07,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 04:27:07,566.566 INFO    ] 200
[2026-08-25 04:27:07,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:07,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:27:07,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:27:07,675.675 INFO    ] No camera update needed
[2026-08-25 04:27:07,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:27:07,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:27:07,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:27:07,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:27:09,732.732 INFO    ] ================================================
[2026-08-25 04:27:09,748.748 INFO    ] Launching Daemon at Tue Aug 25 04:27:09 IST 2026
[2026-08-25 04:27:09,759.759 INFO    ] ================================================
[2026-08-25 04:27:10,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:27:10
[2026-08-25 04:27:10,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:27:11,181.181 INFO    ] Initializing speech engine...
[2026-08-25 04:27:11,190.190 INFO    ] 2026-08-25 04:27:11
[2026-08-25 04:27:11,437.437 INFO    ] 2026-08-25 04:27:11
[2026-08-25 04:27:11,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:27:11,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:27:11,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:27:11,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:27:11,909.909 INFO    ] time= 25/08/2026 04:27:11
[2026-08-25 04:27:11,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:27:12,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:27:12,146.146 INFO    ] No existing commands found in stream
[2026-08-25 04:27:17,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:27:17,173.173 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 04:27:18,248.248 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:27:18,251.251 INFO    ] Checking for system updates...
[2026-08-25 04:27:18,287.287 INFO    ] 200
[2026-08-25 04:27:18,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:18,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:27:18,344.344 INFO    ] No update needed
[2026-08-25 04:27:18,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 04:27:18,380.380 INFO    ] 200
[2026-08-25 04:27:18,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:18,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:27:18,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:27:18,474.474 INFO    ] No camera update needed
[2026-08-25 04:27:18,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:27:18,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:27:18,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:27:18,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:27:20,531.531 INFO    ] ================================================
[2026-08-25 04:27:20,547.547 INFO    ] Launching Daemon at Tue Aug 25 04:27:20 IST 2026
[2026-08-25 04:27:20,558.558 INFO    ] ================================================
[2026-08-25 04:27:21,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:27:21
[2026-08-25 04:27:21,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:27:21,983.983 INFO    ] Initializing speech engine...
[2026-08-25 04:27:21,992.992 INFO    ] 2026-08-25 04:27:21
[2026-08-25 04:27:22,236.236 INFO    ] 2026-08-25 04:27:22
[2026-08-25 04:27:22,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:27:22,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:27:22,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:27:22,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:27:22,649.649 INFO    ] time= 25/08/2026 04:27:22
[2026-08-25 04:27:22,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:27:22,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:27:22,802.802 INFO    ] No existing commands found in stream
[2026-08-25 04:27:27,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:27:27,826.826 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 04:27:29,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:27:29,233.233 INFO    ] Checking for system updates...
[2026-08-25 04:27:29,273.273 INFO    ] 200
[2026-08-25 04:27:29,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:29,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:27:29,338.338 INFO    ] No update needed
[2026-08-25 04:27:29,341.341 INFO    ] Checking for camera pi updates...
[2026-08-25 04:27:29,378.378 INFO    ] 200
[2026-08-25 04:27:29,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:29,426.426 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:27:29,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:27:29,473.473 INFO    ] No camera update needed
[2026-08-25 04:27:29,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:27:29,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:27:29,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:27:29,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:27:31,532.532 INFO    ] ================================================
[2026-08-25 04:27:31,547.547 INFO    ] Launching Daemon at Tue Aug 25 04:27:31 IST 2026
[2026-08-25 04:27:31,557.557 INFO    ] ================================================
[2026-08-25 04:27:32,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:27:32
[2026-08-25 04:27:32,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:27:33,074.074 INFO    ] Initializing speech engine...
[2026-08-25 04:27:33,090.090 INFO    ] 2026-08-25 04:27:33
[2026-08-25 04:27:33,380.380 INFO    ] 2026-08-25 04:27:33
[2026-08-25 04:27:33,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:27:33,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:27:33,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:27:33,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:27:33,808.808 INFO    ] time= 25/08/2026 04:27:33
[2026-08-25 04:27:33,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:27:33,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:27:33,990.990 INFO    ] No existing commands found in stream
[2026-08-25 04:27:39,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:27:39,007.007 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 04:27:41,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:27:41,075.075 INFO    ] Checking for system updates...
[2026-08-25 04:27:41,113.113 INFO    ] 200
[2026-08-25 04:27:41,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:41,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:27:41,171.171 INFO    ] No update needed
[2026-08-25 04:27:41,173.173 INFO    ] Checking for camera pi updates...
[2026-08-25 04:27:41,206.206 INFO    ] 200
[2026-08-25 04:27:41,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:41,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:27:41,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:27:41,315.315 INFO    ] No camera update needed
[2026-08-25 04:27:41,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:27:41,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:27:41,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:27:41,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:27:43,369.369 INFO    ] ================================================
[2026-08-25 04:27:43,384.384 INFO    ] Launching Daemon at Tue Aug 25 04:27:43 IST 2026
[2026-08-25 04:27:43,394.394 INFO    ] ================================================
[2026-08-25 04:27:43,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:27:43
[2026-08-25 04:27:44,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:27:44,850.850 INFO    ] Initializing speech engine...
[2026-08-25 04:27:44,858.858 INFO    ] 2026-08-25 04:27:44
[2026-08-25 04:27:45,116.116 INFO    ] 2026-08-25 04:27:45
[2026-08-25 04:27:45,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:27:45,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:27:45,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:27:45,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:27:45,574.574 INFO    ] time= 25/08/2026 04:27:45
[2026-08-25 04:27:45,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:27:45,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:27:45,809.809 INFO    ] No existing commands found in stream
[2026-08-25 04:27:50,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:27:50,826.826 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 04:27:54,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:27:54,570.570 INFO    ] Checking for system updates...
[2026-08-25 04:27:54,610.610 INFO    ] 200
[2026-08-25 04:27:54,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:54,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:27:54,674.674 INFO    ] No update needed
[2026-08-25 04:27:54,677.677 INFO    ] Checking for camera pi updates...
[2026-08-25 04:27:54,710.710 INFO    ] 200
[2026-08-25 04:27:54,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:27:54,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:27:54,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:27:54,803.803 INFO    ] No camera update needed
[2026-08-25 04:27:54,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:27:54,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:27:54,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:27:54,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:27:56,860.860 INFO    ] ================================================
[2026-08-25 04:27:56,874.874 INFO    ] Launching Daemon at Tue Aug 25 04:27:56 IST 2026
[2026-08-25 04:27:56,885.885 INFO    ] ================================================
[2026-08-25 04:27:57,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:27:57
[2026-08-25 04:27:58,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:27:58,577.577 INFO    ] Initializing speech engine...
[2026-08-25 04:27:58,582.582 INFO    ] 2026-08-25 04:27:58
[2026-08-25 04:27:58,909.909 INFO    ] 2026-08-25 04:27:58
[2026-08-25 04:27:58,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:27:59,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:27:59,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:27:59,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:27:59,350.350 INFO    ] time= 25/08/2026 04:27:59
[2026-08-25 04:27:59,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:27:59,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:27:59,653.653 INFO    ] No existing commands found in stream
[2026-08-25 04:28:04,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:28:04,682.682 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 04:28:07,200.200 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:28:07,203.203 INFO    ] Checking for system updates...
[2026-08-25 04:28:07,245.245 INFO    ] 200
[2026-08-25 04:28:07,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:07,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:28:07,311.311 INFO    ] No update needed
[2026-08-25 04:28:07,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 04:28:07,351.351 INFO    ] 200
[2026-08-25 04:28:07,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:07,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:28:07,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:28:07,448.448 INFO    ] No camera update needed
[2026-08-25 04:28:07,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:28:07,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:28:07,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:28:07,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:28:09,506.506 INFO    ] ================================================
[2026-08-25 04:28:09,524.524 INFO    ] Launching Daemon at Tue Aug 25 04:28:09 IST 2026
[2026-08-25 04:28:09,536.536 INFO    ] ================================================
[2026-08-25 04:28:10,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:28:10
[2026-08-25 04:28:10,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:28:11,032.032 INFO    ] Initializing speech engine...
[2026-08-25 04:28:11,043.043 INFO    ] 2026-08-25 04:28:11
[2026-08-25 04:28:11,289.289 INFO    ] 2026-08-25 04:28:11
[2026-08-25 04:28:11,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:28:11,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:28:11,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:28:11,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:28:11,764.764 INFO    ] time= 25/08/2026 04:28:11
[2026-08-25 04:28:11,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:28:11,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:28:11,982.982 INFO    ] No existing commands found in stream
[2026-08-25 04:28:17,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:28:17,009.009 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 04:28:20,902.902 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:28:20,905.905 INFO    ] Checking for system updates...
[2026-08-25 04:28:20,940.940 INFO    ] 200
[2026-08-25 04:28:20,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:21,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:28:21,007.007 INFO    ] No update needed
[2026-08-25 04:28:21,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 04:28:21,059.059 INFO    ] 200
[2026-08-25 04:28:21,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:21,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:28:21,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:28:21,158.158 INFO    ] No camera update needed
[2026-08-25 04:28:21,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:28:21,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:28:21,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:28:21,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:28:23,223.223 INFO    ] ================================================
[2026-08-25 04:28:23,239.239 INFO    ] Launching Daemon at Tue Aug 25 04:28:23 IST 2026
[2026-08-25 04:28:23,250.250 INFO    ] ================================================
[2026-08-25 04:28:23,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:28:23
[2026-08-25 04:28:24,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:28:24,673.673 INFO    ] Initializing speech engine...
[2026-08-25 04:28:24,684.684 INFO    ] 2026-08-25 04:28:24
[2026-08-25 04:28:24,927.927 INFO    ] 2026-08-25 04:28:24
[2026-08-25 04:28:24,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:28:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:28:25,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:28:25,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:28:25,294.294 INFO    ] time= 25/08/2026 04:28:25
[2026-08-25 04:28:25,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:28:25,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:28:25,473.473 INFO    ] No existing commands found in stream
[2026-08-25 04:28:30,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:28:30,506.506 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 04:28:32,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:28:32,162.162 INFO    ] Checking for system updates...
[2026-08-25 04:28:32,206.206 INFO    ] 200
[2026-08-25 04:28:32,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:32,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:28:32,269.269 INFO    ] No update needed
[2026-08-25 04:28:32,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 04:28:32,307.307 INFO    ] 200
[2026-08-25 04:28:32,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:32,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:28:32,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:28:32,432.432 INFO    ] No camera update needed
[2026-08-25 04:28:32,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:28:32,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:28:32,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:28:32,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:28:34,499.499 INFO    ] ================================================
[2026-08-25 04:28:34,515.515 INFO    ] Launching Daemon at Tue Aug 25 04:28:34 IST 2026
[2026-08-25 04:28:34,526.526 INFO    ] ================================================
[2026-08-25 04:28:35,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:28:35
[2026-08-25 04:28:35,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:28:35,940.940 INFO    ] Initializing speech engine...
[2026-08-25 04:28:35,953.953 INFO    ] 2026-08-25 04:28:35
[2026-08-25 04:28:36,219.219 INFO    ] 2026-08-25 04:28:36
[2026-08-25 04:28:36,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:28:36,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:28:36,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:28:36,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:28:36,685.685 INFO    ] time= 25/08/2026 04:28:36
[2026-08-25 04:28:36,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:28:36,794.794 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:28:36,914.914 INFO    ] No existing commands found in stream
[2026-08-25 04:28:41,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:28:41,944.944 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 04:28:43,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:28:43,082.082 INFO    ] Checking for system updates...
[2026-08-25 04:28:43,122.122 INFO    ] 200
[2026-08-25 04:28:43,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:43,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:28:43,189.189 INFO    ] No update needed
[2026-08-25 04:28:43,192.192 INFO    ] Checking for camera pi updates...
[2026-08-25 04:28:43,232.232 INFO    ] 200
[2026-08-25 04:28:43,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:43,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:28:43,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:28:43,439.439 INFO    ] No camera update needed
[2026-08-25 04:28:43,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:28:43,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:28:43,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:28:43,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:28:45,496.496 INFO    ] ================================================
[2026-08-25 04:28:45,511.511 INFO    ] Launching Daemon at Tue Aug 25 04:28:45 IST 2026
[2026-08-25 04:28:45,522.522 INFO    ] ================================================
[2026-08-25 04:28:46,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:28:46
[2026-08-25 04:28:46,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:28:47,204.204 INFO    ] Initializing speech engine...
[2026-08-25 04:28:47,212.212 INFO    ] 2026-08-25 04:28:47
[2026-08-25 04:28:47,539.539 INFO    ] 2026-08-25 04:28:47
[2026-08-25 04:28:47,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:28:47,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:28:47,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:28:48,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:28:48,059.059 INFO    ] time= 25/08/2026 04:28:48
[2026-08-25 04:28:48,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:28:48,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:28:48,239.239 INFO    ] No existing commands found in stream
[2026-08-25 04:28:53,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:28:53,281.281 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 04:28:55,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:28:55,914.914 INFO    ] Checking for system updates...
[2026-08-25 04:28:55,957.957 INFO    ] 200
[2026-08-25 04:28:55,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:56,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:28:56,023.023 INFO    ] No update needed
[2026-08-25 04:28:56,026.026 INFO    ] Checking for camera pi updates...
[2026-08-25 04:28:56,062.062 INFO    ] 200
[2026-08-25 04:28:56,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:28:56,110.110 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:28:56,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:28:56,163.163 INFO    ] No camera update needed
[2026-08-25 04:28:56,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:28:56,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:28:56,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:28:56,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:28:58,218.218 INFO    ] ================================================
[2026-08-25 04:28:58,234.234 INFO    ] Launching Daemon at Tue Aug 25 04:28:58 IST 2026
[2026-08-25 04:28:58,244.244 INFO    ] ================================================
[2026-08-25 04:28:58,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:28:58
[2026-08-25 04:28:59,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:28:59,656.656 INFO    ] Initializing speech engine...
[2026-08-25 04:28:59,664.664 INFO    ] 2026-08-25 04:28:59
[2026-08-25 04:28:59,967.967 INFO    ] 2026-08-25 04:28:59
[2026-08-25 04:28:59,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:29:00,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:29:00,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:29:00,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:29:00,357.357 INFO    ] time= 25/08/2026 04:29:00
[2026-08-25 04:29:00,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:29:00,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:29:00,489.489 INFO    ] No existing commands found in stream
[2026-08-25 04:29:05,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:29:05,504.504 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 04:29:09,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:29:09,917.917 INFO    ] Checking for system updates...
[2026-08-25 04:29:09,958.958 INFO    ] 200
[2026-08-25 04:29:09,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:10,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:29:10,015.015 INFO    ] No update needed
[2026-08-25 04:29:10,018.018 INFO    ] Checking for camera pi updates...
[2026-08-25 04:29:10,056.056 INFO    ] 200
[2026-08-25 04:29:10,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:10,104.104 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:29:10,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:29:10,153.153 INFO    ] No camera update needed
[2026-08-25 04:29:10,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:29:10,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:29:10,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:29:10,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:29:12,208.208 INFO    ] ================================================
[2026-08-25 04:29:12,224.224 INFO    ] Launching Daemon at Tue Aug 25 04:29:12 IST 2026
[2026-08-25 04:29:12,235.235 INFO    ] ================================================
[2026-08-25 04:29:12,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:29:12
[2026-08-25 04:29:13,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:29:13,651.651 INFO    ] Initializing speech engine...
[2026-08-25 04:29:13,660.660 INFO    ] 2026-08-25 04:29:13
[2026-08-25 04:29:13,922.922 INFO    ] 2026-08-25 04:29:13
[2026-08-25 04:29:13,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:29:14,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:29:14,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:29:14,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:29:14,410.410 INFO    ] time= 25/08/2026 04:29:14
[2026-08-25 04:29:14,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:29:14,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:29:14,619.619 INFO    ] No existing commands found in stream
[2026-08-25 04:29:19,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:29:19,637.637 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 04:29:20,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:29:20,168.168 INFO    ] Checking for system updates...
[2026-08-25 04:29:20,203.203 INFO    ] 200
[2026-08-25 04:29:20,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:20,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:29:20,268.268 INFO    ] No update needed
[2026-08-25 04:29:20,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 04:29:20,311.311 INFO    ] 200
[2026-08-25 04:29:20,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:20,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:29:20,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:29:20,415.415 INFO    ] No camera update needed
[2026-08-25 04:29:20,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:29:20,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:29:20,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:29:20,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:29:22,469.469 INFO    ] ================================================
[2026-08-25 04:29:22,484.484 INFO    ] Launching Daemon at Tue Aug 25 04:29:22 IST 2026
[2026-08-25 04:29:22,494.494 INFO    ] ================================================
[2026-08-25 04:29:23,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:29:23
[2026-08-25 04:29:23,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:29:23,907.907 INFO    ] Initializing speech engine...
[2026-08-25 04:29:23,915.915 INFO    ] 2026-08-25 04:29:23
[2026-08-25 04:29:24,215.215 INFO    ] 2026-08-25 04:29:24
[2026-08-25 04:29:24,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:29:24,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:29:24,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:29:24,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:29:24,597.597 INFO    ] time= 25/08/2026 04:29:24
[2026-08-25 04:29:24,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:29:24,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:29:24,709.709 INFO    ] No existing commands found in stream
[2026-08-25 04:29:29,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:29:29,748.748 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 04:29:30,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:29:30,832.832 INFO    ] Checking for system updates...
[2026-08-25 04:29:30,872.872 INFO    ] 200
[2026-08-25 04:29:30,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:30,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:29:30,936.936 INFO    ] No update needed
[2026-08-25 04:29:30,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 04:29:30,978.978 INFO    ] 200
[2026-08-25 04:29:30,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:31,020.020 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:29:31,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:29:31,074.074 INFO    ] No camera update needed
[2026-08-25 04:29:31,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:29:31,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:29:31,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:29:31,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:29:33,134.134 INFO    ] ================================================
[2026-08-25 04:29:33,149.149 INFO    ] Launching Daemon at Tue Aug 25 04:29:33 IST 2026
[2026-08-25 04:29:33,159.159 INFO    ] ================================================
[2026-08-25 04:29:33,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:29:33
[2026-08-25 04:29:34,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:29:34,623.623 INFO    ] Initializing speech engine...
[2026-08-25 04:29:34,629.629 INFO    ] 2026-08-25 04:29:34
[2026-08-25 04:29:34,890.890 INFO    ] 2026-08-25 04:29:34
[2026-08-25 04:29:34,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:29:35,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:29:35,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:29:35,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:29:35,371.371 INFO    ] time= 25/08/2026 04:29:35
[2026-08-25 04:29:35,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:29:35,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:29:35,589.589 INFO    ] No existing commands found in stream
[2026-08-25 04:29:40,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:29:40,607.607 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 04:29:42,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:29:42,260.260 INFO    ] Checking for system updates...
[2026-08-25 04:29:42,305.305 INFO    ] 200
[2026-08-25 04:29:42,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:42,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:29:42,379.379 INFO    ] No update needed
[2026-08-25 04:29:42,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 04:29:42,425.425 INFO    ] 200
[2026-08-25 04:29:42,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:42,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:29:42,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:29:42,529.529 INFO    ] No camera update needed
[2026-08-25 04:29:42,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:29:42,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:29:42,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:29:42,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:29:44,587.587 INFO    ] ================================================
[2026-08-25 04:29:44,602.602 INFO    ] Launching Daemon at Tue Aug 25 04:29:44 IST 2026
[2026-08-25 04:29:44,613.613 INFO    ] ================================================
[2026-08-25 04:29:45,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:29:45
[2026-08-25 04:29:45,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:29:46,068.068 INFO    ] Initializing speech engine...
[2026-08-25 04:29:46,078.078 INFO    ] 2026-08-25 04:29:46
[2026-08-25 04:29:46,339.339 INFO    ] 2026-08-25 04:29:46
[2026-08-25 04:29:46,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:29:46,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:29:46,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:29:46,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:29:46,800.800 INFO    ] time= 25/08/2026 04:29:46
[2026-08-25 04:29:46,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:29:46,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:29:47,032.032 INFO    ] No existing commands found in stream
[2026-08-25 04:29:52,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:29:52,049.049 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 04:29:53,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:29:53,607.607 INFO    ] Checking for system updates...
[2026-08-25 04:29:53,656.656 INFO    ] 200
[2026-08-25 04:29:53,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:53,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:29:53,728.728 INFO    ] No update needed
[2026-08-25 04:29:53,731.731 INFO    ] Checking for camera pi updates...
[2026-08-25 04:29:53,770.770 INFO    ] 200
[2026-08-25 04:29:53,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:29:53,819.819 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:29:53,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:29:53,867.867 INFO    ] No camera update needed
[2026-08-25 04:29:53,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:29:53,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:29:53,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:29:53,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:29:55,921.921 INFO    ] ================================================
[2026-08-25 04:29:55,936.936 INFO    ] Launching Daemon at Tue Aug 25 04:29:55 IST 2026
[2026-08-25 04:29:55,947.947 INFO    ] ================================================
[2026-08-25 04:29:56,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:29:56
[2026-08-25 04:29:57,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:29:57,584.584 INFO    ] Initializing speech engine...
[2026-08-25 04:29:57,591.591 INFO    ] 2026-08-25 04:29:57
[2026-08-25 04:29:57,871.871 INFO    ] 2026-08-25 04:29:57
[2026-08-25 04:29:57,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:29:58,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:29:58,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:29:58,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:29:58,431.431 INFO    ] time= 25/08/2026 04:29:58
[2026-08-25 04:29:58,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:29:58,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:29:58,580.580 INFO    ] No existing commands found in stream
[2026-08-25 04:30:03,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:30:03,601.601 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 04:30:08,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:30:08,813.813 INFO    ] Checking for system updates...
[2026-08-25 04:30:08,861.861 INFO    ] 200
[2026-08-25 04:30:08,864.864 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:08,877.877 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 04:30:08,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 04:30:08,914.914 INFO    ] 200
[2026-08-25 04:30:08,917.917 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:08,920.920 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 04:30:08,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:30:08,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:30:08,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:30:08,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:30:10,976.976 INFO    ] ================================================
[2026-08-25 04:30:10,991.991 INFO    ] Launching Daemon at Tue Aug 25 04:30:10 IST 2026
[2026-08-25 04:30:11,002.002 INFO    ] ================================================
[2026-08-25 04:30:11,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:30:11
[2026-08-25 04:30:12,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:30:12,459.459 INFO    ] Initializing speech engine...
[2026-08-25 04:30:12,467.467 INFO    ] 2026-08-25 04:30:12
[2026-08-25 04:30:12,726.726 INFO    ] 2026-08-25 04:30:12
[2026-08-25 04:30:12,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:30:13,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:30:13,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:30:13,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:30:13,222.222 INFO    ] time= 25/08/2026 04:30:13
[2026-08-25 04:30:13,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:30:13,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:30:13,418.418 INFO    ] No existing commands found in stream
[2026-08-25 04:30:18,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:30:18,440.440 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 04:30:20,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:30:20,274.274 INFO    ] Checking for system updates...
[2026-08-25 04:30:20,316.316 INFO    ] 200
[2026-08-25 04:30:20,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:20,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:30:20,392.392 INFO    ] No update needed
[2026-08-25 04:30:20,395.395 INFO    ] Checking for camera pi updates...
[2026-08-25 04:30:20,436.436 INFO    ] 200
[2026-08-25 04:30:20,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:20,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:30:20,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:30:20,540.540 INFO    ] No camera update needed
[2026-08-25 04:30:20,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:30:20,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:30:20,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:30:20,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:30:22,598.598 INFO    ] ================================================
[2026-08-25 04:30:22,614.614 INFO    ] Launching Daemon at Tue Aug 25 04:30:22 IST 2026
[2026-08-25 04:30:22,625.625 INFO    ] ================================================
[2026-08-25 04:30:23,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:30:23
[2026-08-25 04:30:23,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:30:24,105.105 INFO    ] Initializing speech engine...
[2026-08-25 04:30:24,123.123 INFO    ] 2026-08-25 04:30:24
[2026-08-25 04:30:24,373.373 INFO    ] 2026-08-25 04:30:24
[2026-08-25 04:30:24,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:30:24,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:30:24,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:30:24,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:30:24,749.749 INFO    ] time= 25/08/2026 04:30:24
[2026-08-25 04:30:24,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:30:24,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:30:24,918.918 INFO    ] No existing commands found in stream
[2026-08-25 04:30:29,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:30:29,951.951 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 04:30:33,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:30:33,300.300 INFO    ] Checking for system updates...
[2026-08-25 04:30:33,338.338 INFO    ] 200
[2026-08-25 04:30:33,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:33,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:30:33,396.396 INFO    ] No update needed
[2026-08-25 04:30:33,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 04:30:33,432.432 INFO    ] 200
[2026-08-25 04:30:33,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:33,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:30:33,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:30:33,541.541 INFO    ] No camera update needed
[2026-08-25 04:30:33,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:30:33,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:30:33,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:30:33,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:30:35,595.595 INFO    ] ================================================
[2026-08-25 04:30:35,610.610 INFO    ] Launching Daemon at Tue Aug 25 04:30:35 IST 2026
[2026-08-25 04:30:35,621.621 INFO    ] ================================================
[2026-08-25 04:30:36,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:30:36
[2026-08-25 04:30:36,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:30:37,285.285 INFO    ] Initializing speech engine...
[2026-08-25 04:30:37,292.292 INFO    ] 2026-08-25 04:30:37
[2026-08-25 04:30:37,583.583 INFO    ] 2026-08-25 04:30:37
[2026-08-25 04:30:37,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:30:37,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:30:37,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:30:38,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:30:38,125.125 INFO    ] time= 25/08/2026 04:30:38
[2026-08-25 04:30:38,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:30:38,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:30:38,287.287 INFO    ] No existing commands found in stream
[2026-08-25 04:30:43,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:30:43,311.311 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 04:30:46,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:30:46,423.423 INFO    ] Checking for system updates...
[2026-08-25 04:30:46,466.466 INFO    ] 200
[2026-08-25 04:30:46,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:46,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:30:46,533.533 INFO    ] No update needed
[2026-08-25 04:30:46,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 04:30:46,571.571 INFO    ] 200
[2026-08-25 04:30:46,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:46,619.619 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:30:46,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:30:46,766.766 INFO    ] No camera update needed
[2026-08-25 04:30:46,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:30:46,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:30:46,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:30:46,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:30:48,820.820 INFO    ] ================================================
[2026-08-25 04:30:48,835.835 INFO    ] Launching Daemon at Tue Aug 25 04:30:48 IST 2026
[2026-08-25 04:30:48,846.846 INFO    ] ================================================
[2026-08-25 04:30:49,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:30:49
[2026-08-25 04:30:50,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:30:50,285.285 INFO    ] Initializing speech engine...
[2026-08-25 04:30:50,293.293 INFO    ] 2026-08-25 04:30:50
[2026-08-25 04:30:50,544.544 INFO    ] 2026-08-25 04:30:50
[2026-08-25 04:30:50,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:30:50,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:30:50,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:30:50,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:30:51,030.030 INFO    ] time= 25/08/2026 04:30:50
[2026-08-25 04:30:51,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:30:51,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:30:51,249.249 INFO    ] No existing commands found in stream
[2026-08-25 04:30:56,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:30:56,280.280 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 04:30:59,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:30:59,840.840 INFO    ] Checking for system updates...
[2026-08-25 04:30:59,876.876 INFO    ] 200
[2026-08-25 04:30:59,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:30:59,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:30:59,933.933 INFO    ] No update needed
[2026-08-25 04:30:59,936.936 INFO    ] Checking for camera pi updates...
[2026-08-25 04:30:59,971.971 INFO    ] 200
[2026-08-25 04:30:59,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:00,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:31:00,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:31:00,089.089 INFO    ] No camera update needed
[2026-08-25 04:31:00,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:31:00,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:31:00,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:31:00,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:31:02,155.155 INFO    ] ================================================
[2026-08-25 04:31:02,178.178 INFO    ] Launching Daemon at Tue Aug 25 04:31:02 IST 2026
[2026-08-25 04:31:02,194.194 INFO    ] ================================================
[2026-08-25 04:31:02,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:31:02
[2026-08-25 04:31:03,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:31:03,920.920 INFO    ] Initializing speech engine...
[2026-08-25 04:31:03,928.928 INFO    ] 2026-08-25 04:31:03
[2026-08-25 04:31:04,203.203 INFO    ] 2026-08-25 04:31:04
[2026-08-25 04:31:04,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:31:04,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:31:04,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:31:04,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:31:04,754.754 INFO    ] time= 25/08/2026 04:31:04
[2026-08-25 04:31:04,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:31:04,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:31:04,935.935 INFO    ] No existing commands found in stream
[2026-08-25 04:31:09,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:31:09,964.964 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 04:31:11,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:31:11,640.640 INFO    ] Checking for system updates...
[2026-08-25 04:31:11,679.679 INFO    ] 200
[2026-08-25 04:31:11,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:11,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:31:11,740.740 INFO    ] No update needed
[2026-08-25 04:31:11,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 04:31:11,784.784 INFO    ] 200
[2026-08-25 04:31:11,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:11,838.838 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:31:11,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:31:11,892.892 INFO    ] No camera update needed
[2026-08-25 04:31:11,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:31:11,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:31:11,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:31:11,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:31:13,956.956 INFO    ] ================================================
[2026-08-25 04:31:13,972.972 INFO    ] Launching Daemon at Tue Aug 25 04:31:13 IST 2026
[2026-08-25 04:31:13,983.983 INFO    ] ================================================
[2026-08-25 04:31:14,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:31:14
[2026-08-25 04:31:15,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:31:15,552.552 INFO    ] Initializing speech engine...
[2026-08-25 04:31:15,560.560 INFO    ] 2026-08-25 04:31:15
[2026-08-25 04:31:15,853.853 INFO    ] 2026-08-25 04:31:15
[2026-08-25 04:31:15,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:31:16,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:31:16,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:31:16,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:31:16,242.242 INFO    ] time= 25/08/2026 04:31:16
[2026-08-25 04:31:16,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:31:16,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:31:16,373.373 INFO    ] No existing commands found in stream
[2026-08-25 04:31:21,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:31:21,388.388 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 04:31:22,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:31:22,401.401 INFO    ] Checking for system updates...
[2026-08-25 04:31:22,440.440 INFO    ] 200
[2026-08-25 04:31:22,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:22,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:31:22,497.497 INFO    ] No update needed
[2026-08-25 04:31:22,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 04:31:22,534.534 INFO    ] 200
[2026-08-25 04:31:22,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:22,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:31:22,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:31:22,631.631 INFO    ] No camera update needed
[2026-08-25 04:31:22,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:31:22,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:31:22,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:31:22,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:31:24,687.687 INFO    ] ================================================
[2026-08-25 04:31:24,702.702 INFO    ] Launching Daemon at Tue Aug 25 04:31:24 IST 2026
[2026-08-25 04:31:24,713.713 INFO    ] ================================================
[2026-08-25 04:31:25,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:31:25
[2026-08-25 04:31:25,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:31:26,286.286 INFO    ] Initializing speech engine...
[2026-08-25 04:31:26,295.295 INFO    ] 2026-08-25 04:31:26
[2026-08-25 04:31:26,586.586 INFO    ] 2026-08-25 04:31:26
[2026-08-25 04:31:26,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:31:26,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:31:26,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:31:27,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:31:27,125.125 INFO    ] time= 25/08/2026 04:31:27
[2026-08-25 04:31:27,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:31:27,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:31:27,298.298 INFO    ] No existing commands found in stream
[2026-08-25 04:31:32,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:31:32,333.333 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 04:31:34,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:31:34,605.605 INFO    ] Checking for system updates...
[2026-08-25 04:31:34,646.646 INFO    ] 200
[2026-08-25 04:31:34,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:34,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:31:34,708.708 INFO    ] No update needed
[2026-08-25 04:31:34,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 04:31:34,746.746 INFO    ] 200
[2026-08-25 04:31:34,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:34,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:31:34,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:31:34,845.845 INFO    ] No camera update needed
[2026-08-25 04:31:34,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:31:34,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:31:34,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:31:34,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:31:36,906.906 INFO    ] ================================================
[2026-08-25 04:31:36,921.921 INFO    ] Launching Daemon at Tue Aug 25 04:31:36 IST 2026
[2026-08-25 04:31:36,932.932 INFO    ] ================================================
[2026-08-25 04:31:37,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:31:37
[2026-08-25 04:31:38,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:31:38,367.367 INFO    ] Initializing speech engine...
[2026-08-25 04:31:38,377.377 INFO    ] 2026-08-25 04:31:38
[2026-08-25 04:31:38,630.630 INFO    ] 2026-08-25 04:31:38
[2026-08-25 04:31:38,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:31:38,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:31:38,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:31:39,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:31:39,099.099 INFO    ] time= 25/08/2026 04:31:39
[2026-08-25 04:31:39,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:31:39,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:31:39,308.308 INFO    ] No existing commands found in stream
[2026-08-25 04:31:44,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:31:44,327.327 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 04:31:46,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:31:46,720.720 INFO    ] Checking for system updates...
[2026-08-25 04:31:46,755.755 INFO    ] 200
[2026-08-25 04:31:46,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:46,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:31:46,812.812 INFO    ] No update needed
[2026-08-25 04:31:46,814.814 INFO    ] Checking for camera pi updates...
[2026-08-25 04:31:46,847.847 INFO    ] 200
[2026-08-25 04:31:46,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:31:46,889.889 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:31:46,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:31:46,944.944 INFO    ] No camera update needed
[2026-08-25 04:31:46,947.947 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:31:46,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:31:46,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:31:46,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:31:49,001.001 INFO    ] ================================================
[2026-08-25 04:31:49,017.017 INFO    ] Launching Daemon at Tue Aug 25 04:31:49 IST 2026
[2026-08-25 04:31:49,028.028 INFO    ] ================================================
[2026-08-25 04:31:49,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:31:49
[2026-08-25 04:31:50,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:31:50,573.573 INFO    ] Initializing speech engine...
[2026-08-25 04:31:50,584.584 INFO    ] 2026-08-25 04:31:50
[2026-08-25 04:31:50,876.876 INFO    ] 2026-08-25 04:31:50
[2026-08-25 04:31:50,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:31:51,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:31:51,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:31:51,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:31:51,610.610 INFO    ] time= 25/08/2026 04:31:51
[2026-08-25 04:31:51,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:31:51,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:31:51,700.700 INFO    ] No existing commands found in stream
[2026-08-25 04:31:56,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:31:56,712.712 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 04:31:59,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:31:59,982.982 INFO    ] Checking for system updates...
[2026-08-25 04:32:00,018.018 INFO    ] 200
[2026-08-25 04:32:00,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:00,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:32:00,076.076 INFO    ] No update needed
[2026-08-25 04:32:00,079.079 INFO    ] Checking for camera pi updates...
[2026-08-25 04:32:00,112.112 INFO    ] 200
[2026-08-25 04:32:00,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:00,155.155 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:32:00,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:32:00,206.206 INFO    ] No camera update needed
[2026-08-25 04:32:00,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:32:00,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:32:00,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:32:00,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:32:02,270.270 INFO    ] ================================================
[2026-08-25 04:32:02,291.291 INFO    ] Launching Daemon at Tue Aug 25 04:32:02 IST 2026
[2026-08-25 04:32:02,311.311 INFO    ] ================================================
[2026-08-25 04:32:03,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:32:03
[2026-08-25 04:32:03,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:32:04,081.081 INFO    ] Initializing speech engine...
[2026-08-25 04:32:04,084.084 INFO    ] 2026-08-25 04:32:04
[2026-08-25 04:32:04,359.359 INFO    ] 2026-08-25 04:32:04
[2026-08-25 04:32:04,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:32:04,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:32:04,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:32:04,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:32:04,726.726 INFO    ] time= 25/08/2026 04:32:04
[2026-08-25 04:32:04,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:32:04,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:32:04,907.907 INFO    ] No existing commands found in stream
[2026-08-25 04:32:09,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:32:09,935.935 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 04:32:10,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:32:10,962.962 INFO    ] Checking for system updates...
[2026-08-25 04:32:10,997.997 INFO    ] 200
[2026-08-25 04:32:10,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:11,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:11,053.053 INFO    ] No update needed
[2026-08-25 04:32:11,056.056 INFO    ] Checking for camera pi updates...
[2026-08-25 04:32:11,093.093 INFO    ] 200
[2026-08-25 04:32:11,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:11,140.140 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:32:11,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:11,203.203 INFO    ] No camera update needed
[2026-08-25 04:32:11,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:32:11,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:32:11,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:32:11,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:32:13,260.260 INFO    ] ================================================
[2026-08-25 04:32:13,275.275 INFO    ] Launching Daemon at Tue Aug 25 04:32:13 IST 2026
[2026-08-25 04:32:13,285.285 INFO    ] ================================================
[2026-08-25 04:32:13,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:32:13
[2026-08-25 04:32:14,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:32:14,735.735 INFO    ] Initializing speech engine...
[2026-08-25 04:32:14,743.743 INFO    ] 2026-08-25 04:32:14
[2026-08-25 04:32:15,045.045 INFO    ] 2026-08-25 04:32:15
[2026-08-25 04:32:15,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:32:15,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:32:15,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:32:15,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:32:15,424.424 INFO    ] time= 25/08/2026 04:32:15
[2026-08-25 04:32:15,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:32:15,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:32:15,587.587 INFO    ] No existing commands found in stream
[2026-08-25 04:32:20,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:32:20,620.620 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 04:32:21,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:32:21,079.079 INFO    ] Checking for system updates...
[2026-08-25 04:32:21,115.115 INFO    ] 200
[2026-08-25 04:32:21,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:21,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:21,173.173 INFO    ] No update needed
[2026-08-25 04:32:21,175.175 INFO    ] Checking for camera pi updates...
[2026-08-25 04:32:21,210.210 INFO    ] 200
[2026-08-25 04:32:21,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:21,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:32:21,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:21,304.304 INFO    ] No camera update needed
[2026-08-25 04:32:21,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:32:21,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:32:21,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:32:21,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:32:23,358.358 INFO    ] ================================================
[2026-08-25 04:32:23,373.373 INFO    ] Launching Daemon at Tue Aug 25 04:32:23 IST 2026
[2026-08-25 04:32:23,384.384 INFO    ] ================================================
[2026-08-25 04:32:23,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:32:23
[2026-08-25 04:32:24,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:32:24,812.812 INFO    ] Initializing speech engine...
[2026-08-25 04:32:24,821.821 INFO    ] 2026-08-25 04:32:24
[2026-08-25 04:32:25,070.070 INFO    ] 2026-08-25 04:32:25
[2026-08-25 04:32:25,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:32:25,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:32:25,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:32:25,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:32:25,526.526 INFO    ] time= 25/08/2026 04:32:25
[2026-08-25 04:32:25,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:32:25,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:32:25,700.700 INFO    ] No existing commands found in stream
[2026-08-25 04:32:30,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:32:30,723.723 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 04:32:33,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:32:33,178.178 INFO    ] Checking for system updates...
[2026-08-25 04:32:33,222.222 INFO    ] 200
[2026-08-25 04:32:33,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:33,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:33,298.298 INFO    ] No update needed
[2026-08-25 04:32:33,301.301 INFO    ] Checking for camera pi updates...
[2026-08-25 04:32:33,335.335 INFO    ] 200
[2026-08-25 04:32:33,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:33,378.378 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:32:33,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:33,434.434 INFO    ] No camera update needed
[2026-08-25 04:32:33,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:32:33,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:32:33,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:32:33,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:32:35,490.490 INFO    ] ================================================
[2026-08-25 04:32:35,505.505 INFO    ] Launching Daemon at Tue Aug 25 04:32:35 IST 2026
[2026-08-25 04:32:35,515.515 INFO    ] ================================================
[2026-08-25 04:32:36,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:32:36
[2026-08-25 04:32:36,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:32:36,983.983 INFO    ] Initializing speech engine...
[2026-08-25 04:32:36,992.992 INFO    ] 2026-08-25 04:32:36
[2026-08-25 04:32:37,244.244 INFO    ] 2026-08-25 04:32:37
[2026-08-25 04:32:37,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:32:37,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:32:37,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:32:37,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:32:37,629.629 INFO    ] time= 25/08/2026 04:32:37
[2026-08-25 04:32:37,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:32:37,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:32:37,807.807 INFO    ] No existing commands found in stream
[2026-08-25 04:32:42,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:32:42,840.840 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 04:32:43,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:32:43,520.520 INFO    ] Checking for system updates...
[2026-08-25 04:32:43,559.559 INFO    ] 200
[2026-08-25 04:32:43,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:43,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:32:43,622.622 INFO    ] No update needed
[2026-08-25 04:32:43,625.625 INFO    ] Checking for camera pi updates...
[2026-08-25 04:32:43,663.663 INFO    ] 200
[2026-08-25 04:32:43,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:43,712.712 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:32:43,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:32:43,771.771 INFO    ] No camera update needed
[2026-08-25 04:32:43,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:32:43,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:32:43,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:32:43,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:32:45,829.829 INFO    ] ================================================
[2026-08-25 04:32:45,844.844 INFO    ] Launching Daemon at Tue Aug 25 04:32:45 IST 2026
[2026-08-25 04:32:45,855.855 INFO    ] ================================================
[2026-08-25 04:32:46,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:32:46
[2026-08-25 04:32:47,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:32:47,309.309 INFO    ] Initializing speech engine...
[2026-08-25 04:32:47,318.318 INFO    ] 2026-08-25 04:32:47
[2026-08-25 04:32:47,578.578 INFO    ] 2026-08-25 04:32:47
[2026-08-25 04:32:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:32:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:32:47,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:32:47,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:32:48,040.040 INFO    ] time= 25/08/2026 04:32:47
[2026-08-25 04:32:48,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:32:48,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:32:48,258.258 INFO    ] No existing commands found in stream
[2026-08-25 04:32:53,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:32:53,283.283 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 04:32:58,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:32:58,022.022 INFO    ] Checking for system updates...
[2026-08-25 04:32:58,060.060 INFO    ] 200
[2026-08-25 04:32:58,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:58,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:58,118.118 INFO    ] No update needed
[2026-08-25 04:32:58,121.121 INFO    ] Checking for camera pi updates...
[2026-08-25 04:32:58,156.156 INFO    ] 200
[2026-08-25 04:32:58,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:32:58,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:32:58,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:32:58,360.360 INFO    ] No camera update needed
[2026-08-25 04:32:58,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:32:58,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:32:58,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:32:58,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:33:00,418.418 INFO    ] ================================================
[2026-08-25 04:33:00,434.434 INFO    ] Launching Daemon at Tue Aug 25 04:33:00 IST 2026
[2026-08-25 04:33:00,445.445 INFO    ] ================================================
[2026-08-25 04:33:01,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:33:01
[2026-08-25 04:33:01,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:33:02,092.092 INFO    ] Initializing speech engine...
[2026-08-25 04:33:02,097.097 INFO    ] 2026-08-25 04:33:02
[2026-08-25 04:33:02,435.435 INFO    ] 2026-08-25 04:33:02
[2026-08-25 04:33:02,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:33:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:33:02,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:33:02,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:33:03,030.030 INFO    ] time= 25/08/2026 04:33:02
[2026-08-25 04:33:03,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:33:03,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:33:03,190.190 INFO    ] No existing commands found in stream
[2026-08-25 04:33:08,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:33:08,205.205 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 04:33:11,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:33:11,623.623 INFO    ] Checking for system updates...
[2026-08-25 04:33:11,658.658 INFO    ] 200
[2026-08-25 04:33:11,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:11,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:33:11,718.718 INFO    ] No update needed
[2026-08-25 04:33:11,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 04:33:11,767.767 INFO    ] 200
[2026-08-25 04:33:11,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:11,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:33:11,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:33:11,859.859 INFO    ] No camera update needed
[2026-08-25 04:33:11,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:33:11,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:33:11,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:33:11,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:33:13,915.915 INFO    ] ================================================
[2026-08-25 04:33:13,930.930 INFO    ] Launching Daemon at Tue Aug 25 04:33:13 IST 2026
[2026-08-25 04:33:13,941.941 INFO    ] ================================================
[2026-08-25 04:33:14,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:33:14
[2026-08-25 04:33:15,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:33:15,378.378 INFO    ] Initializing speech engine...
[2026-08-25 04:33:15,387.387 INFO    ] 2026-08-25 04:33:15
[2026-08-25 04:33:15,632.632 INFO    ] 2026-08-25 04:33:15
[2026-08-25 04:33:15,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:33:15,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:33:15,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:33:16,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:33:16,069.069 INFO    ] time= 25/08/2026 04:33:16
[2026-08-25 04:33:16,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:33:16,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:33:16,223.223 INFO    ] No existing commands found in stream
[2026-08-25 04:33:21,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:33:21,236.236 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 04:33:25,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:33:25,443.443 INFO    ] Checking for system updates...
[2026-08-25 04:33:25,479.479 INFO    ] 200
[2026-08-25 04:33:25,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:25,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:33:25,543.543 INFO    ] No update needed
[2026-08-25 04:33:25,546.546 INFO    ] Checking for camera pi updates...
[2026-08-25 04:33:25,580.580 INFO    ] 200
[2026-08-25 04:33:25,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:25,621.621 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:33:25,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:33:25,681.681 INFO    ] No camera update needed
[2026-08-25 04:33:25,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:33:25,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:33:25,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:33:25,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:33:27,738.738 INFO    ] ================================================
[2026-08-25 04:33:27,753.753 INFO    ] Launching Daemon at Tue Aug 25 04:33:27 IST 2026
[2026-08-25 04:33:27,767.767 INFO    ] ================================================
[2026-08-25 04:33:28,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:33:28
[2026-08-25 04:33:28,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:33:29,263.263 INFO    ] Initializing speech engine...
[2026-08-25 04:33:29,277.277 INFO    ] 2026-08-25 04:33:29
[2026-08-25 04:33:29,559.559 INFO    ] 2026-08-25 04:33:29
[2026-08-25 04:33:29,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:33:29,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:33:29,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:33:30,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:33:30,096.096 INFO    ] time= 25/08/2026 04:33:30
[2026-08-25 04:33:30,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:33:30,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:33:30,242.242 INFO    ] No existing commands found in stream
[2026-08-25 04:33:35,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:33:35,267.267 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 04:33:36,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:33:36,928.928 INFO    ] Checking for system updates...
[2026-08-25 04:33:36,966.966 INFO    ] 200
[2026-08-25 04:33:36,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:37,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:33:37,040.040 INFO    ] No update needed
[2026-08-25 04:33:37,042.042 INFO    ] Checking for camera pi updates...
[2026-08-25 04:33:37,075.075 INFO    ] 200
[2026-08-25 04:33:37,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:37,119.119 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:33:37,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:33:37,173.173 INFO    ] No camera update needed
[2026-08-25 04:33:37,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:33:37,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:33:37,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:33:37,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:33:39,227.227 INFO    ] ================================================
[2026-08-25 04:33:39,242.242 INFO    ] Launching Daemon at Tue Aug 25 04:33:39 IST 2026
[2026-08-25 04:33:39,253.253 INFO    ] ================================================
[2026-08-25 04:33:39,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:33:39
[2026-08-25 04:33:40,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:33:40,684.684 INFO    ] Initializing speech engine...
[2026-08-25 04:33:40,689.689 INFO    ] 2026-08-25 04:33:40
[2026-08-25 04:33:40,946.946 INFO    ] 2026-08-25 04:33:40
[2026-08-25 04:33:40,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:33:41,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:33:41,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:33:41,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:33:41,425.425 INFO    ] time= 25/08/2026 04:33:41
[2026-08-25 04:33:41,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:33:41,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:33:41,648.648 INFO    ] No existing commands found in stream
[2026-08-25 04:33:46,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:33:46,664.664 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 04:33:50,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:33:50,411.411 INFO    ] Checking for system updates...
[2026-08-25 04:33:50,446.446 INFO    ] 200
[2026-08-25 04:33:50,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:50,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:33:50,503.503 INFO    ] No update needed
[2026-08-25 04:33:50,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 04:33:50,539.539 INFO    ] 200
[2026-08-25 04:33:50,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:33:50,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:33:50,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:33:50,636.636 INFO    ] No camera update needed
[2026-08-25 04:33:50,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:33:50,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:33:50,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:33:50,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:33:52,692.692 INFO    ] ================================================
[2026-08-25 04:33:52,708.708 INFO    ] Launching Daemon at Tue Aug 25 04:33:52 IST 2026
[2026-08-25 04:33:52,720.720 INFO    ] ================================================
[2026-08-25 04:33:53,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:33:53
[2026-08-25 04:33:53,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:33:54,263.263 INFO    ] Initializing speech engine...
[2026-08-25 04:33:54,269.269 INFO    ] 2026-08-25 04:33:54
[2026-08-25 04:33:54,545.545 INFO    ] 2026-08-25 04:33:54
[2026-08-25 04:33:54,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:33:54,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:33:54,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:33:54,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:33:55,037.037 INFO    ] time= 25/08/2026 04:33:54
[2026-08-25 04:33:55,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:33:55,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:33:55,239.239 INFO    ] No existing commands found in stream
[2026-08-25 04:34:00,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:34:00,265.265 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 04:34:04,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:34:04,212.212 INFO    ] Checking for system updates...
[2026-08-25 04:34:04,249.249 INFO    ] 200
[2026-08-25 04:34:04,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:04,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:34:04,309.309 INFO    ] No update needed
[2026-08-25 04:34:04,311.311 INFO    ] Checking for camera pi updates...
[2026-08-25 04:34:04,346.346 INFO    ] 200
[2026-08-25 04:34:04,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:04,394.394 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:34:04,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:34:04,451.451 INFO    ] No camera update needed
[2026-08-25 04:34:04,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:34:04,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:34:04,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:34:04,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:34:06,506.506 INFO    ] ================================================
[2026-08-25 04:34:06,521.521 INFO    ] Launching Daemon at Tue Aug 25 04:34:06 IST 2026
[2026-08-25 04:34:06,532.532 INFO    ] ================================================
[2026-08-25 04:34:07,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:34:07
[2026-08-25 04:34:07,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:34:07,946.946 INFO    ] Initializing speech engine...
[2026-08-25 04:34:07,969.969 INFO    ] 2026-08-25 04:34:07
[2026-08-25 04:34:08,243.243 INFO    ] 2026-08-25 04:34:08
[2026-08-25 04:34:08,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:34:08,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:34:08,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:34:08,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:34:08,659.659 INFO    ] time= 25/08/2026 04:34:08
[2026-08-25 04:34:08,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:34:08,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:34:08,799.799 INFO    ] No existing commands found in stream
[2026-08-25 04:34:13,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:34:13,827.827 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 04:34:17,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:34:17,068.068 INFO    ] Checking for system updates...
[2026-08-25 04:34:17,106.106 INFO    ] 200
[2026-08-25 04:34:17,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:17,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:34:17,163.163 INFO    ] No update needed
[2026-08-25 04:34:17,166.166 INFO    ] Checking for camera pi updates...
[2026-08-25 04:34:17,200.200 INFO    ] 200
[2026-08-25 04:34:17,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:17,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:34:17,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:34:17,303.303 INFO    ] No camera update needed
[2026-08-25 04:34:17,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:34:17,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:34:17,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:34:17,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:34:19,357.357 INFO    ] ================================================
[2026-08-25 04:34:19,372.372 INFO    ] Launching Daemon at Tue Aug 25 04:34:19 IST 2026
[2026-08-25 04:34:19,382.382 INFO    ] ================================================
[2026-08-25 04:34:20,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:34:20
[2026-08-25 04:34:20,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:34:21,022.022 INFO    ] Initializing speech engine...
[2026-08-25 04:34:21,035.035 INFO    ] 2026-08-25 04:34:21
[2026-08-25 04:34:21,319.319 INFO    ] 2026-08-25 04:34:21
[2026-08-25 04:34:21,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:34:21,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:34:21,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:34:21,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:34:21,852.852 INFO    ] time= 25/08/2026 04:34:21
[2026-08-25 04:34:21,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:34:21,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:34:22,020.020 INFO    ] No existing commands found in stream
[2026-08-25 04:34:27,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:34:27,055.055 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 04:34:27,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:34:27,761.761 INFO    ] Checking for system updates...
[2026-08-25 04:34:27,801.801 INFO    ] 200
[2026-08-25 04:34:27,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:27,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:34:27,861.861 INFO    ] No update needed
[2026-08-25 04:34:27,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 04:34:27,897.897 INFO    ] 200
[2026-08-25 04:34:27,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:27,947.947 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:34:27,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:34:27,995.995 INFO    ] No camera update needed
[2026-08-25 04:34:27,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:34:28,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:34:28,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:34:28,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:34:30,053.053 INFO    ] ================================================
[2026-08-25 04:34:30,068.068 INFO    ] Launching Daemon at Tue Aug 25 04:34:30 IST 2026
[2026-08-25 04:34:30,078.078 INFO    ] ================================================
[2026-08-25 04:34:30,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:34:30
[2026-08-25 04:34:31,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:34:31,712.712 INFO    ] Initializing speech engine...
[2026-08-25 04:34:31,724.724 INFO    ] 2026-08-25 04:34:31
[2026-08-25 04:34:31,987.987 INFO    ] 2026-08-25 04:34:31
[2026-08-25 04:34:32,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:34:32,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:34:32,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:34:32,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:34:32,462.462 INFO    ] time= 25/08/2026 04:34:32
[2026-08-25 04:34:32,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:34:32,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:34:32,604.604 INFO    ] No existing commands found in stream
[2026-08-25 04:34:37,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:34:37,617.617 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 04:34:40,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:34:41,001.001 INFO    ] Checking for system updates...
[2026-08-25 04:34:41,037.037 INFO    ] 200
[2026-08-25 04:34:41,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:41,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:34:41,093.093 INFO    ] No update needed
[2026-08-25 04:34:41,096.096 INFO    ] Checking for camera pi updates...
[2026-08-25 04:34:41,130.130 INFO    ] 200
[2026-08-25 04:34:41,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:41,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:34:41,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:34:41,229.229 INFO    ] No camera update needed
[2026-08-25 04:34:41,231.231 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:34:41,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:34:41,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:34:41,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:34:43,283.283 INFO    ] ================================================
[2026-08-25 04:34:43,298.298 INFO    ] Launching Daemon at Tue Aug 25 04:34:43 IST 2026
[2026-08-25 04:34:43,309.309 INFO    ] ================================================
[2026-08-25 04:34:43,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:34:43
[2026-08-25 04:34:44,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:34:44,758.758 INFO    ] Initializing speech engine...
[2026-08-25 04:34:44,769.769 INFO    ] 2026-08-25 04:34:44
[2026-08-25 04:34:45,012.012 INFO    ] 2026-08-25 04:34:45
[2026-08-25 04:34:45,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:34:45,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:34:45,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:34:45,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:34:45,496.496 INFO    ] time= 25/08/2026 04:34:45
[2026-08-25 04:34:45,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:34:45,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:34:45,691.691 INFO    ] No existing commands found in stream
[2026-08-25 04:34:50,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:34:50,716.716 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 04:34:51,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:34:51,883.883 INFO    ] Checking for system updates...
[2026-08-25 04:34:51,922.922 INFO    ] 200
[2026-08-25 04:34:51,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:51,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:34:51,987.987 INFO    ] No update needed
[2026-08-25 04:34:51,990.990 INFO    ] Checking for camera pi updates...
[2026-08-25 04:34:52,023.023 INFO    ] 200
[2026-08-25 04:34:52,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:34:52,066.066 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:34:52,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:34:52,117.117 INFO    ] No camera update needed
[2026-08-25 04:34:52,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:34:52,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:34:52,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:34:52,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:34:54,173.173 INFO    ] ================================================
[2026-08-25 04:34:54,189.189 INFO    ] Launching Daemon at Tue Aug 25 04:34:54 IST 2026
[2026-08-25 04:34:54,200.200 INFO    ] ================================================
[2026-08-25 04:34:54,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:34:54
[2026-08-25 04:34:55,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:34:55,877.877 INFO    ] Initializing speech engine...
[2026-08-25 04:34:55,890.890 INFO    ] 2026-08-25 04:34:55
[2026-08-25 04:34:56,175.175 INFO    ] 2026-08-25 04:34:56
[2026-08-25 04:34:56,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:34:56,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:34:56,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:34:56,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:34:56,646.646 INFO    ] time= 25/08/2026 04:34:56
[2026-08-25 04:34:56,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:34:56,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:34:56,835.835 INFO    ] No existing commands found in stream
[2026-08-25 04:35:01,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:35:01,871.871 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 04:35:02,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:35:02,951.951 INFO    ] Checking for system updates...
[2026-08-25 04:35:02,993.993 INFO    ] 200
[2026-08-25 04:35:02,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:03,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:03,052.052 INFO    ] No update needed
[2026-08-25 04:35:03,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 04:35:03,093.093 INFO    ] 200
[2026-08-25 04:35:03,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:03,153.153 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:35:03,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:03,251.251 INFO    ] No camera update needed
[2026-08-25 04:35:03,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:35:03,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:35:03,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:35:03,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:35:05,306.306 INFO    ] ================================================
[2026-08-25 04:35:05,322.322 INFO    ] Launching Daemon at Tue Aug 25 04:35:05 IST 2026
[2026-08-25 04:35:05,333.333 INFO    ] ================================================
[2026-08-25 04:35:05,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:35:05
[2026-08-25 04:35:06,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:35:06,776.776 INFO    ] Initializing speech engine...
[2026-08-25 04:35:06,781.781 INFO    ] 2026-08-25 04:35:06
[2026-08-25 04:35:07,086.086 INFO    ] 2026-08-25 04:35:07
[2026-08-25 04:35:07,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:35:07,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:35:07,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:35:07,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:35:07,433.433 INFO    ] time= 25/08/2026 04:35:07
[2026-08-25 04:35:07,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:35:07,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:35:07,585.585 INFO    ] No existing commands found in stream
[2026-08-25 04:35:12,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:35:12,598.598 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 04:35:15,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:35:15,494.494 INFO    ] Checking for system updates...
[2026-08-25 04:35:15,529.529 INFO    ] 200
[2026-08-25 04:35:15,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:15,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:35:15,592.592 INFO    ] No update needed
[2026-08-25 04:35:15,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 04:35:15,635.635 INFO    ] 200
[2026-08-25 04:35:15,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:15,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:35:15,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:35:15,724.724 INFO    ] No camera update needed
[2026-08-25 04:35:15,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:35:15,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:35:15,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:35:15,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:35:17,779.779 INFO    ] ================================================
[2026-08-25 04:35:17,794.794 INFO    ] Launching Daemon at Tue Aug 25 04:35:17 IST 2026
[2026-08-25 04:35:17,805.805 INFO    ] ================================================
[2026-08-25 04:35:18,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:35:18
[2026-08-25 04:35:18,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:35:19,296.296 INFO    ] Initializing speech engine...
[2026-08-25 04:35:19,306.306 INFO    ] 2026-08-25 04:35:19
[2026-08-25 04:35:19,616.616 INFO    ] 2026-08-25 04:35:19
[2026-08-25 04:35:19,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:35:19,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:35:19,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:35:20,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:35:20,120.120 INFO    ] time= 25/08/2026 04:35:20
[2026-08-25 04:35:20,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:35:20,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:35:20,273.273 INFO    ] No existing commands found in stream
[2026-08-25 04:35:25,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:35:25,292.292 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 04:35:26,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:35:26,304.304 INFO    ] Checking for system updates...
[2026-08-25 04:35:26,347.347 INFO    ] 200
[2026-08-25 04:35:26,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:26,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:26,409.409 INFO    ] No update needed
[2026-08-25 04:35:26,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 04:35:26,449.449 INFO    ] 200
[2026-08-25 04:35:26,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:26,502.502 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:35:26,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:26,563.563 INFO    ] No camera update needed
[2026-08-25 04:35:26,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:35:26,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:35:26,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:35:26,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:35:28,626.626 INFO    ] ================================================
[2026-08-25 04:35:28,642.642 INFO    ] Launching Daemon at Tue Aug 25 04:35:28 IST 2026
[2026-08-25 04:35:28,654.654 INFO    ] ================================================
[2026-08-25 04:35:29,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:35:29
[2026-08-25 04:35:29,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:35:30,093.093 INFO    ] Initializing speech engine...
[2026-08-25 04:35:30,101.101 INFO    ] 2026-08-25 04:35:30
[2026-08-25 04:35:30,347.347 INFO    ] 2026-08-25 04:35:30
[2026-08-25 04:35:30,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:35:30,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:35:30,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:35:30,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:35:30,831.831 INFO    ] time= 25/08/2026 04:35:30
[2026-08-25 04:35:30,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:35:30,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:35:31,038.038 INFO    ] No existing commands found in stream
[2026-08-25 04:35:36,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:35:36,058.058 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 04:35:40,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:35:40,203.203 INFO    ] Checking for system updates...
[2026-08-25 04:35:40,240.240 INFO    ] 200
[2026-08-25 04:35:40,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:40,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:40,307.307 INFO    ] No update needed
[2026-08-25 04:35:40,310.310 INFO    ] Checking for camera pi updates...
[2026-08-25 04:35:40,344.344 INFO    ] 200
[2026-08-25 04:35:40,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:40,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:35:40,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:40,433.433 INFO    ] No camera update needed
[2026-08-25 04:35:40,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:35:40,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:35:40,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:35:40,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:35:42,489.489 INFO    ] ================================================
[2026-08-25 04:35:42,508.508 INFO    ] Launching Daemon at Tue Aug 25 04:35:42 IST 2026
[2026-08-25 04:35:42,518.518 INFO    ] ================================================
[2026-08-25 04:35:43,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:35:43
[2026-08-25 04:35:43,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:35:43,963.963 INFO    ] Initializing speech engine...
[2026-08-25 04:35:43,979.979 INFO    ] 2026-08-25 04:35:43
[2026-08-25 04:35:44,266.266 INFO    ] 2026-08-25 04:35:44
[2026-08-25 04:35:44,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:35:44,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:35:44,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:35:44,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:35:44,639.639 INFO    ] time= 25/08/2026 04:35:44
[2026-08-25 04:35:44,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:35:44,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:35:44,766.766 INFO    ] No existing commands found in stream
[2026-08-25 04:35:49,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:35:49,785.785 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 04:35:51,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:35:51,227.227 INFO    ] Checking for system updates...
[2026-08-25 04:35:51,262.262 INFO    ] 200
[2026-08-25 04:35:51,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:51,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:51,321.321 INFO    ] No update needed
[2026-08-25 04:35:51,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 04:35:51,359.359 INFO    ] 200
[2026-08-25 04:35:51,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:35:51,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:35:51,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:35:51,456.456 INFO    ] No camera update needed
[2026-08-25 04:35:51,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:35:51,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:35:51,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:35:51,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:35:53,514.514 INFO    ] ================================================
[2026-08-25 04:35:53,529.529 INFO    ] Launching Daemon at Tue Aug 25 04:35:53 IST 2026
[2026-08-25 04:35:53,540.540 INFO    ] ================================================
[2026-08-25 04:35:54,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:35:54
[2026-08-25 04:35:54,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:35:55,146.146 INFO    ] Initializing speech engine...
[2026-08-25 04:35:55,158.158 INFO    ] 2026-08-25 04:35:55
[2026-08-25 04:35:55,441.441 INFO    ] 2026-08-25 04:35:55
[2026-08-25 04:35:55,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:35:55,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:35:55,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:35:55,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:35:55,931.931 INFO    ] time= 25/08/2026 04:35:55
[2026-08-25 04:35:55,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:35:55,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:35:56,137.137 INFO    ] No existing commands found in stream
[2026-08-25 04:36:01,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:36:01,162.162 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 04:36:03,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:36:03,012.012 INFO    ] Checking for system updates...
[2026-08-25 04:36:03,048.048 INFO    ] 200
[2026-08-25 04:36:03,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:03,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:03,105.105 INFO    ] No update needed
[2026-08-25 04:36:03,108.108 INFO    ] Checking for camera pi updates...
[2026-08-25 04:36:03,142.142 INFO    ] 200
[2026-08-25 04:36:03,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:03,191.191 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:36:03,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:03,246.246 INFO    ] No camera update needed
[2026-08-25 04:36:03,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:36:03,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:36:03,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:36:03,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:36:05,300.300 INFO    ] ================================================
[2026-08-25 04:36:05,315.315 INFO    ] Launching Daemon at Tue Aug 25 04:36:05 IST 2026
[2026-08-25 04:36:05,326.326 INFO    ] ================================================
[2026-08-25 04:36:05,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:36:05
[2026-08-25 04:36:06,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:36:06,768.768 INFO    ] Initializing speech engine...
[2026-08-25 04:36:06,777.777 INFO    ] 2026-08-25 04:36:06
[2026-08-25 04:36:07,056.056 INFO    ] 2026-08-25 04:36:07
[2026-08-25 04:36:07,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:36:07,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:36:07,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:36:07,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:36:07,541.541 INFO    ] time= 25/08/2026 04:36:07
[2026-08-25 04:36:07,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:36:07,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:36:07,777.777 INFO    ] No existing commands found in stream
[2026-08-25 04:36:12,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:36:12,800.800 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 04:36:14,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:36:14,539.539 INFO    ] Checking for system updates...
[2026-08-25 04:36:14,576.576 INFO    ] 200
[2026-08-25 04:36:14,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:14,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:14,647.647 INFO    ] No update needed
[2026-08-25 04:36:14,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 04:36:14,688.688 INFO    ] 200
[2026-08-25 04:36:14,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:14,735.735 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:36:14,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:14,784.784 INFO    ] No camera update needed
[2026-08-25 04:36:14,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:36:14,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:36:14,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:36:14,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:36:16,840.840 INFO    ] ================================================
[2026-08-25 04:36:16,855.855 INFO    ] Launching Daemon at Tue Aug 25 04:36:16 IST 2026
[2026-08-25 04:36:16,866.866 INFO    ] ================================================
[2026-08-25 04:36:17,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:36:17
[2026-08-25 04:36:18,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:36:18,334.334 INFO    ] Initializing speech engine...
[2026-08-25 04:36:18,342.342 INFO    ] 2026-08-25 04:36:18
[2026-08-25 04:36:18,600.600 INFO    ] 2026-08-25 04:36:18
[2026-08-25 04:36:18,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:36:18,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:36:18,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:36:19,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:36:19,089.089 INFO    ] time= 25/08/2026 04:36:19
[2026-08-25 04:36:19,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:36:19,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:36:19,287.287 INFO    ] No existing commands found in stream
[2026-08-25 04:36:24,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:36:24,311.311 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 04:36:27,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:36:27,688.688 INFO    ] Checking for system updates...
[2026-08-25 04:36:27,723.723 INFO    ] 200
[2026-08-25 04:36:27,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:27,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:27,782.782 INFO    ] No update needed
[2026-08-25 04:36:27,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 04:36:27,822.822 INFO    ] 200
[2026-08-25 04:36:27,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:27,864.864 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:36:27,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:27,922.922 INFO    ] No camera update needed
[2026-08-25 04:36:27,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:36:27,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:36:27,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:36:27,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:36:29,977.977 INFO    ] ================================================
[2026-08-25 04:36:29,993.993 INFO    ] Launching Daemon at Tue Aug 25 04:36:29 IST 2026
[2026-08-25 04:36:30,004.004 INFO    ] ================================================
[2026-08-25 04:36:30,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:36:30
[2026-08-25 04:36:31,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:36:31,567.567 INFO    ] Initializing speech engine...
[2026-08-25 04:36:31,584.584 INFO    ] 2026-08-25 04:36:31
[2026-08-25 04:36:31,881.881 INFO    ] 2026-08-25 04:36:31
[2026-08-25 04:36:31,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:36:32,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:36:32,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:36:32,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:36:32,386.386 INFO    ] time= 25/08/2026 04:36:32
[2026-08-25 04:36:32,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:36:32,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:36:32,610.610 INFO    ] No existing commands found in stream
[2026-08-25 04:36:37,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:36:37,642.642 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 04:36:39,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:36:39,206.206 INFO    ] Checking for system updates...
[2026-08-25 04:36:39,242.242 INFO    ] 200
[2026-08-25 04:36:39,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:39,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:39,302.302 INFO    ] No update needed
[2026-08-25 04:36:39,305.305 INFO    ] Checking for camera pi updates...
[2026-08-25 04:36:39,339.339 INFO    ] 200
[2026-08-25 04:36:39,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:39,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:36:39,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:36:39,435.435 INFO    ] No camera update needed
[2026-08-25 04:36:39,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:36:39,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:36:39,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:36:39,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:36:41,491.491 INFO    ] ================================================
[2026-08-25 04:36:41,506.506 INFO    ] Launching Daemon at Tue Aug 25 04:36:41 IST 2026
[2026-08-25 04:36:41,516.516 INFO    ] ================================================
[2026-08-25 04:36:42,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:36:42
[2026-08-25 04:36:42,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:36:42,932.932 INFO    ] Initializing speech engine...
[2026-08-25 04:36:42,941.941 INFO    ] 2026-08-25 04:36:42
[2026-08-25 04:36:43,237.237 INFO    ] 2026-08-25 04:36:43
[2026-08-25 04:36:43,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:36:43,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:36:43,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:36:43,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:36:43,625.625 INFO    ] time= 25/08/2026 04:36:43
[2026-08-25 04:36:43,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:36:43,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:36:43,751.751 INFO    ] No existing commands found in stream
[2026-08-25 04:36:48,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:36:48,767.767 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 04:36:49,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:36:49,957.957 INFO    ] Checking for system updates...
[2026-08-25 04:36:49,992.992 INFO    ] 200
[2026-08-25 04:36:49,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:50,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:36:50,063.063 INFO    ] No update needed
[2026-08-25 04:36:50,066.066 INFO    ] Checking for camera pi updates...
[2026-08-25 04:36:50,121.121 INFO    ] 200
[2026-08-25 04:36:50,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:36:50,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:36:50,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:36:50,216.216 INFO    ] No camera update needed
[2026-08-25 04:36:50,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:36:50,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:36:50,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:36:50,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:36:52,270.270 INFO    ] ================================================
[2026-08-25 04:36:52,286.286 INFO    ] Launching Daemon at Tue Aug 25 04:36:52 IST 2026
[2026-08-25 04:36:52,296.296 INFO    ] ================================================
[2026-08-25 04:36:52,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:36:52
[2026-08-25 04:36:53,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:36:53,930.930 INFO    ] Initializing speech engine...
[2026-08-25 04:36:53,942.942 INFO    ] 2026-08-25 04:36:53
[2026-08-25 04:36:54,249.249 INFO    ] 2026-08-25 04:36:54
[2026-08-25 04:36:54,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:36:54,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:36:54,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:36:54,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:36:54,751.751 INFO    ] time= 25/08/2026 04:36:54
[2026-08-25 04:36:54,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:36:54,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:36:54,903.903 INFO    ] No existing commands found in stream
[2026-08-25 04:36:59,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:36:59,924.924 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 04:37:03,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:37:03,674.674 INFO    ] Checking for system updates...
[2026-08-25 04:37:03,711.711 INFO    ] 200
[2026-08-25 04:37:03,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:03,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:37:03,770.770 INFO    ] No update needed
[2026-08-25 04:37:03,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 04:37:03,807.807 INFO    ] 200
[2026-08-25 04:37:03,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:03,850.850 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:37:03,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:37:03,899.899 INFO    ] No camera update needed
[2026-08-25 04:37:03,901.901 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:37:03,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:37:03,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:37:03,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:37:05,957.957 INFO    ] ================================================
[2026-08-25 04:37:05,973.973 INFO    ] Launching Daemon at Tue Aug 25 04:37:05 IST 2026
[2026-08-25 04:37:05,983.983 INFO    ] ================================================
[2026-08-25 04:37:06,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:37:06
[2026-08-25 04:37:07,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:37:07,459.459 INFO    ] Initializing speech engine...
[2026-08-25 04:37:07,467.467 INFO    ] 2026-08-25 04:37:07
[2026-08-25 04:37:07,739.739 INFO    ] 2026-08-25 04:37:07
[2026-08-25 04:37:07,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:37:08,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:37:08,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:37:08,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:37:08,250.250 INFO    ] time= 25/08/2026 04:37:08
[2026-08-25 04:37:08,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:37:08,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:37:08,463.463 INFO    ] No existing commands found in stream
[2026-08-25 04:37:13,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:37:13,481.481 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 04:37:16,465.465 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:37:16,468.468 INFO    ] Checking for system updates...
[2026-08-25 04:37:16,504.504 INFO    ] 200
[2026-08-25 04:37:16,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:16,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:37:16,564.564 INFO    ] No update needed
[2026-08-25 04:37:16,567.567 INFO    ] Checking for camera pi updates...
[2026-08-25 04:37:16,605.605 INFO    ] 200
[2026-08-25 04:37:16,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:16,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:37:16,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:37:16,810.810 INFO    ] No camera update needed
[2026-08-25 04:37:16,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:37:16,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:37:16,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:37:16,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:37:18,867.867 INFO    ] ================================================
[2026-08-25 04:37:18,882.882 INFO    ] Launching Daemon at Tue Aug 25 04:37:18 IST 2026
[2026-08-25 04:37:18,892.892 INFO    ] ================================================
[2026-08-25 04:37:19,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:37:19
[2026-08-25 04:37:20,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:37:20,304.304 INFO    ] Initializing speech engine...
[2026-08-25 04:37:20,313.313 INFO    ] 2026-08-25 04:37:20
[2026-08-25 04:37:20,558.558 INFO    ] 2026-08-25 04:37:20
[2026-08-25 04:37:20,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:37:20,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:37:20,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:37:20,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:37:21,031.031 INFO    ] time= 25/08/2026 04:37:20
[2026-08-25 04:37:21,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:37:21,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:37:21,238.238 INFO    ] No existing commands found in stream
[2026-08-25 04:37:26,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:37:26,271.271 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 04:37:30,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:37:30,568.568 INFO    ] Checking for system updates...
[2026-08-25 04:37:30,604.604 INFO    ] 200
[2026-08-25 04:37:30,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:30,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:37:30,669.669 INFO    ] No update needed
[2026-08-25 04:37:30,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 04:37:30,710.710 INFO    ] 200
[2026-08-25 04:37:30,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:30,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:37:30,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:37:30,808.808 INFO    ] No camera update needed
[2026-08-25 04:37:30,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:37:30,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:37:30,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:37:30,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:37:32,863.863 INFO    ] ================================================
[2026-08-25 04:37:32,878.878 INFO    ] Launching Daemon at Tue Aug 25 04:37:32 IST 2026
[2026-08-25 04:37:32,889.889 INFO    ] ================================================
[2026-08-25 04:37:33,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:37:33
[2026-08-25 04:37:34,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:37:34,333.333 INFO    ] Initializing speech engine...
[2026-08-25 04:37:34,344.344 INFO    ] 2026-08-25 04:37:34
[2026-08-25 04:37:34,643.643 INFO    ] 2026-08-25 04:37:34
[2026-08-25 04:37:34,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:37:34,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:37:34,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:37:35,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:37:35,011.011 INFO    ] time= 25/08/2026 04:37:35
[2026-08-25 04:37:35,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:37:35,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:37:35,136.136 INFO    ] No existing commands found in stream
[2026-08-25 04:37:40,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:37:40,152.152 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 04:37:44,245.245 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:37:44,248.248 INFO    ] Checking for system updates...
[2026-08-25 04:37:44,283.283 INFO    ] 200
[2026-08-25 04:37:44,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:44,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:37:44,342.342 INFO    ] No update needed
[2026-08-25 04:37:44,345.345 INFO    ] Checking for camera pi updates...
[2026-08-25 04:37:44,378.378 INFO    ] 200
[2026-08-25 04:37:44,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:44,420.420 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:37:44,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:37:44,473.473 INFO    ] No camera update needed
[2026-08-25 04:37:44,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:37:44,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:37:44,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:37:44,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:37:46,527.527 INFO    ] ================================================
[2026-08-25 04:37:46,542.542 INFO    ] Launching Daemon at Tue Aug 25 04:37:46 IST 2026
[2026-08-25 04:37:46,554.554 INFO    ] ================================================
[2026-08-25 04:37:47,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:37:47
[2026-08-25 04:37:47,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:37:48,167.167 INFO    ] Initializing speech engine...
[2026-08-25 04:37:48,179.179 INFO    ] 2026-08-25 04:37:48
[2026-08-25 04:37:48,456.456 INFO    ] 2026-08-25 04:37:48
[2026-08-25 04:37:48,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:37:48,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:37:48,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:37:48,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:37:48,911.911 INFO    ] time= 25/08/2026 04:37:48
[2026-08-25 04:37:48,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:37:48,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:37:49,146.146 INFO    ] No existing commands found in stream
[2026-08-25 04:37:54,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:37:54,163.163 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 04:37:55,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:37:55,941.941 INFO    ] Checking for system updates...
[2026-08-25 04:37:55,978.978 INFO    ] 200
[2026-08-25 04:37:55,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:56,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:37:56,037.037 INFO    ] No update needed
[2026-08-25 04:37:56,040.040 INFO    ] Checking for camera pi updates...
[2026-08-25 04:37:56,074.074 INFO    ] 200
[2026-08-25 04:37:56,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:37:56,122.122 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:37:56,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:37:56,181.181 INFO    ] No camera update needed
[2026-08-25 04:37:56,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:37:56,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:37:56,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:37:56,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:37:58,235.235 INFO    ] ================================================
[2026-08-25 04:37:58,251.251 INFO    ] Launching Daemon at Tue Aug 25 04:37:58 IST 2026
[2026-08-25 04:37:58,262.262 INFO    ] ================================================
[2026-08-25 04:37:58,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:37:58
[2026-08-25 04:37:59,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:37:59,678.678 INFO    ] Initializing speech engine...
[2026-08-25 04:37:59,694.694 INFO    ] 2026-08-25 04:37:59
[2026-08-25 04:37:59,963.963 INFO    ] 2026-08-25 04:37:59
[2026-08-25 04:38:00,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:38:00,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:38:00,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:38:00,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:38:00,373.373 INFO    ] time= 25/08/2026 04:38:00
[2026-08-25 04:38:00,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:38:00,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:38:00,566.566 INFO    ] No existing commands found in stream
[2026-08-25 04:38:05,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:38:05,599.599 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 04:38:08,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:38:08,839.839 INFO    ] Checking for system updates...
[2026-08-25 04:38:08,877.877 INFO    ] 200
[2026-08-25 04:38:08,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:08,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:38:08,940.940 INFO    ] No update needed
[2026-08-25 04:38:08,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 04:38:08,979.979 INFO    ] 200
[2026-08-25 04:38:08,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:09,023.023 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:38:09,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:38:09,083.083 INFO    ] No camera update needed
[2026-08-25 04:38:09,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:38:09,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:38:09,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:38:09,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:38:11,140.140 INFO    ] ================================================
[2026-08-25 04:38:11,156.156 INFO    ] Launching Daemon at Tue Aug 25 04:38:11 IST 2026
[2026-08-25 04:38:11,167.167 INFO    ] ================================================
[2026-08-25 04:38:11,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:38:11
[2026-08-25 04:38:12,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:38:12,596.596 INFO    ] Initializing speech engine...
[2026-08-25 04:38:12,603.603 INFO    ] 2026-08-25 04:38:12
[2026-08-25 04:38:12,848.848 INFO    ] 2026-08-25 04:38:12
[2026-08-25 04:38:12,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:38:13,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:38:13,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:38:13,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:38:13,221.221 INFO    ] time= 25/08/2026 04:38:13
[2026-08-25 04:38:13,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:38:13,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:38:13,414.414 INFO    ] No existing commands found in stream
[2026-08-25 04:38:18,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:38:18,433.433 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 04:38:21,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:38:21,403.403 INFO    ] Checking for system updates...
[2026-08-25 04:38:21,440.440 INFO    ] 200
[2026-08-25 04:38:21,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:21,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:38:21,497.497 INFO    ] No update needed
[2026-08-25 04:38:21,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 04:38:21,533.533 INFO    ] 200
[2026-08-25 04:38:21,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:21,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:38:21,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:38:21,632.632 INFO    ] No camera update needed
[2026-08-25 04:38:21,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:38:21,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:38:21,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:38:21,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:38:23,690.690 INFO    ] ================================================
[2026-08-25 04:38:23,705.705 INFO    ] Launching Daemon at Tue Aug 25 04:38:23 IST 2026
[2026-08-25 04:38:23,716.716 INFO    ] ================================================
[2026-08-25 04:38:24,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:38:24
[2026-08-25 04:38:24,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:38:25,149.149 INFO    ] Initializing speech engine...
[2026-08-25 04:38:25,158.158 INFO    ] 2026-08-25 04:38:25
[2026-08-25 04:38:25,416.416 INFO    ] 2026-08-25 04:38:25
[2026-08-25 04:38:25,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:38:25,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:38:25,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:38:25,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:38:25,785.785 INFO    ] time= 25/08/2026 04:38:25
[2026-08-25 04:38:25,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:38:25,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:38:25,904.904 INFO    ] No existing commands found in stream
[2026-08-25 04:38:30,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:38:30,920.920 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 04:38:32,643.643 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:38:32,647.647 INFO    ] Checking for system updates...
[2026-08-25 04:38:32,690.690 INFO    ] 200
[2026-08-25 04:38:32,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:32,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:38:32,756.756 INFO    ] No update needed
[2026-08-25 04:38:32,758.758 INFO    ] Checking for camera pi updates...
[2026-08-25 04:38:32,798.798 INFO    ] 200
[2026-08-25 04:38:32,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:32,848.848 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:38:32,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:38:32,912.912 INFO    ] No camera update needed
[2026-08-25 04:38:32,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:38:32,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:38:32,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:38:32,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:38:34,970.970 INFO    ] ================================================
[2026-08-25 04:38:34,985.985 INFO    ] Launching Daemon at Tue Aug 25 04:38:34 IST 2026
[2026-08-25 04:38:35,995.995 INFO    ] ================================================
[2026-08-25 04:38:35,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:38:35
[2026-08-25 04:38:36,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:38:36,571.571 INFO    ] Initializing speech engine...
[2026-08-25 04:38:36,579.579 INFO    ] 2026-08-25 04:38:36
[2026-08-25 04:38:36,865.865 INFO    ] 2026-08-25 04:38:36
[2026-08-25 04:38:36,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:38:37,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:38:37,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:38:37,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:38:37,389.389 INFO    ] time= 25/08/2026 04:38:37
[2026-08-25 04:38:37,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:38:37,421.421 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:38:37,534.534 INFO    ] No existing commands found in stream
[2026-08-25 04:38:42,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:38:42,560.560 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 04:38:43,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:38:43,509.509 INFO    ] Checking for system updates...
[2026-08-25 04:38:43,554.554 INFO    ] 200
[2026-08-25 04:38:43,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:43,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:38:43,628.628 INFO    ] No update needed
[2026-08-25 04:38:43,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 04:38:43,670.670 INFO    ] 200
[2026-08-25 04:38:43,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:43,720.720 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:38:43,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:38:43,774.774 INFO    ] No camera update needed
[2026-08-25 04:38:43,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:38:43,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:38:43,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:38:43,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:38:45,833.833 INFO    ] ================================================
[2026-08-25 04:38:45,848.848 INFO    ] Launching Daemon at Tue Aug 25 04:38:45 IST 2026
[2026-08-25 04:38:45,859.859 INFO    ] ================================================
[2026-08-25 04:38:46,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:38:46
[2026-08-25 04:38:47,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:38:47,350.350 INFO    ] Initializing speech engine...
[2026-08-25 04:38:47,359.359 INFO    ] 2026-08-25 04:38:47
[2026-08-25 04:38:47,656.656 INFO    ] 2026-08-25 04:38:47
[2026-08-25 04:38:47,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:38:47,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:38:47,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:38:48,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:38:48,148.148 INFO    ] time= 25/08/2026 04:38:48
[2026-08-25 04:38:48,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:38:48,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:38:48,361.361 INFO    ] No existing commands found in stream
[2026-08-25 04:38:53,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:38:53,390.390 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 04:38:55,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:38:55,188.188 INFO    ] Checking for system updates...
[2026-08-25 04:38:55,223.223 INFO    ] 200
[2026-08-25 04:38:55,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:55,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:38:55,279.279 INFO    ] No update needed
[2026-08-25 04:38:55,285.285 INFO    ] Checking for camera pi updates...
[2026-08-25 04:38:55,319.319 INFO    ] 200
[2026-08-25 04:38:55,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:38:55,360.360 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:38:55,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:38:55,412.412 INFO    ] No camera update needed
[2026-08-25 04:38:55,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:38:55,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:38:55,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:38:55,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:38:57,466.466 INFO    ] ================================================
[2026-08-25 04:38:57,481.481 INFO    ] Launching Daemon at Tue Aug 25 04:38:57 IST 2026
[2026-08-25 04:38:57,491.491 INFO    ] ================================================
[2026-08-25 04:38:58,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:38:58
[2026-08-25 04:38:58,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:38:58,923.923 INFO    ] Initializing speech engine...
[2026-08-25 04:38:58,932.932 INFO    ] 2026-08-25 04:38:58
[2026-08-25 04:38:59,222.222 INFO    ] 2026-08-25 04:38:59
[2026-08-25 04:38:59,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:38:59,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:38:59,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:38:59,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:38:59,636.636 INFO    ] time= 25/08/2026 04:38:59
[2026-08-25 04:38:59,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:38:59,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:38:59,813.813 INFO    ] No existing commands found in stream
[2026-08-25 04:39:04,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:39:04,841.841 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 04:39:09,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:39:09,259.259 INFO    ] Checking for system updates...
[2026-08-25 04:39:09,294.294 INFO    ] 200
[2026-08-25 04:39:09,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:09,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:39:09,360.360 INFO    ] No update needed
[2026-08-25 04:39:09,362.362 INFO    ] Checking for camera pi updates...
[2026-08-25 04:39:09,399.399 INFO    ] 200
[2026-08-25 04:39:09,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:09,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:39:09,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:39:09,500.500 INFO    ] No camera update needed
[2026-08-25 04:39:09,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:39:09,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:39:09,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:39:09,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:39:11,554.554 INFO    ] ================================================
[2026-08-25 04:39:11,569.569 INFO    ] Launching Daemon at Tue Aug 25 04:39:11 IST 2026
[2026-08-25 04:39:11,579.579 INFO    ] ================================================
[2026-08-25 04:39:12,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:39:12
[2026-08-25 04:39:12,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:39:13,030.030 INFO    ] Initializing speech engine...
[2026-08-25 04:39:13,048.048 INFO    ] 2026-08-25 04:39:13
[2026-08-25 04:39:13,317.317 INFO    ] 2026-08-25 04:39:13
[2026-08-25 04:39:13,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:39:13,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:39:13,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:39:13,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:39:13,728.728 INFO    ] time= 25/08/2026 04:39:13
[2026-08-25 04:39:13,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:39:13,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:39:13,814.814 INFO    ] No existing commands found in stream
[2026-08-25 04:39:18,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:39:18,847.847 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 04:39:20,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:39:20,007.007 INFO    ] Checking for system updates...
[2026-08-25 04:39:20,043.043 INFO    ] 200
[2026-08-25 04:39:20,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:20,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:39:20,105.105 INFO    ] No update needed
[2026-08-25 04:39:20,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 04:39:20,141.141 INFO    ] 200
[2026-08-25 04:39:20,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:20,188.188 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:39:20,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:39:20,337.337 INFO    ] No camera update needed
[2026-08-25 04:39:20,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:39:20,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:39:20,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:39:20,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:39:22,392.392 INFO    ] ================================================
[2026-08-25 04:39:22,407.407 INFO    ] Launching Daemon at Tue Aug 25 04:39:22 IST 2026
[2026-08-25 04:39:22,417.417 INFO    ] ================================================
[2026-08-25 04:39:22,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:39:22
[2026-08-25 04:39:23,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:39:23,860.860 INFO    ] Initializing speech engine...
[2026-08-25 04:39:23,876.876 INFO    ] 2026-08-25 04:39:23
[2026-08-25 04:39:24,159.159 INFO    ] 2026-08-25 04:39:24
[2026-08-25 04:39:24,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:39:24,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:39:24,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:39:24,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:39:24,534.534 INFO    ] time= 25/08/2026 04:39:24
[2026-08-25 04:39:24,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:39:24,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:39:24,658.658 INFO    ] No existing commands found in stream
[2026-08-25 04:39:29,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:39:29,673.673 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 04:39:33,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:39:33,087.087 INFO    ] Checking for system updates...
[2026-08-25 04:39:33,130.130 INFO    ] 200
[2026-08-25 04:39:33,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:33,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:39:33,192.192 INFO    ] No update needed
[2026-08-25 04:39:33,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 04:39:33,233.233 INFO    ] 200
[2026-08-25 04:39:33,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:33,290.290 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:39:33,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:39:33,353.353 INFO    ] No camera update needed
[2026-08-25 04:39:33,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:39:33,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:39:33,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:39:33,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:39:35,408.408 INFO    ] ================================================
[2026-08-25 04:39:35,423.423 INFO    ] Launching Daemon at Tue Aug 25 04:39:35 IST 2026
[2026-08-25 04:39:35,434.434 INFO    ] ================================================
[2026-08-25 04:39:36,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:39:35
[2026-08-25 04:39:36,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:39:36,839.839 INFO    ] Initializing speech engine...
[2026-08-25 04:39:36,855.855 INFO    ] 2026-08-25 04:39:36
[2026-08-25 04:39:37,136.136 INFO    ] 2026-08-25 04:39:37
[2026-08-25 04:39:37,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:39:37,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:39:37,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:39:37,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:39:37,549.549 INFO    ] time= 25/08/2026 04:39:37
[2026-08-25 04:39:37,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:39:37,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:39:37,724.724 INFO    ] No existing commands found in stream
[2026-08-25 04:39:42,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:39:42,746.746 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 04:39:46,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:39:46,357.357 INFO    ] Checking for system updates...
[2026-08-25 04:39:46,393.393 INFO    ] 200
[2026-08-25 04:39:46,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:46,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:39:46,450.450 INFO    ] No update needed
[2026-08-25 04:39:46,453.453 INFO    ] Checking for camera pi updates...
[2026-08-25 04:39:46,486.486 INFO    ] 200
[2026-08-25 04:39:46,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:46,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:39:46,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:39:46,585.585 INFO    ] No camera update needed
[2026-08-25 04:39:46,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:39:46,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:39:46,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:39:46,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:39:48,643.643 INFO    ] ================================================
[2026-08-25 04:39:48,658.658 INFO    ] Launching Daemon at Tue Aug 25 04:39:48 IST 2026
[2026-08-25 04:39:48,669.669 INFO    ] ================================================
[2026-08-25 04:39:49,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:39:49
[2026-08-25 04:39:49,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:39:50,220.220 INFO    ] Initializing speech engine...
[2026-08-25 04:39:50,227.227 INFO    ] 2026-08-25 04:39:50
[2026-08-25 04:39:50,538.538 INFO    ] 2026-08-25 04:39:50
[2026-08-25 04:39:50,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:39:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:39:50,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:39:50,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:39:50,989.989 INFO    ] time= 25/08/2026 04:39:50
[2026-08-25 04:39:51,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:39:51,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:39:51,185.185 INFO    ] No existing commands found in stream
[2026-08-25 04:39:56,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:39:56,211.211 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 04:39:57,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:39:57,458.458 INFO    ] Checking for system updates...
[2026-08-25 04:39:57,497.497 INFO    ] 200
[2026-08-25 04:39:57,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:57,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:39:57,560.560 INFO    ] No update needed
[2026-08-25 04:39:57,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 04:39:57,596.596 INFO    ] 200
[2026-08-25 04:39:57,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:39:57,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:39:57,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:39:57,697.697 INFO    ] No camera update needed
[2026-08-25 04:39:57,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:39:57,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:39:57,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:39:57,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:39:59,752.752 INFO    ] ================================================
[2026-08-25 04:39:59,767.767 INFO    ] Launching Daemon at Tue Aug 25 04:39:59 IST 2026
[2026-08-25 04:39:59,778.778 INFO    ] ================================================
[2026-08-25 04:40:00,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:40:00
[2026-08-25 04:40:00,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:40:01,768.768 INFO    ] Initializing speech engine...
[2026-08-25 04:40:01,783.783 INFO    ] 2026-08-25 04:40:01
[2026-08-25 04:40:02,222.222 INFO    ] 2026-08-25 04:40:02
[2026-08-25 04:40:02,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:40:02,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:40:02,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:40:02,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:40:02,542.542 INFO    ] time= 25/08/2026 04:40:02
[2026-08-25 04:40:02,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:40:02,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:40:02,609.609 INFO    ] No existing commands found in stream
[2026-08-25 04:40:07,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:40:07,621.621 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 04:40:08,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:40:08,455.455 INFO    ] Checking for system updates...
[2026-08-25 04:40:08,490.490 INFO    ] 200
[2026-08-25 04:40:08,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:08,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:40:08,552.552 INFO    ] No update needed
[2026-08-25 04:40:08,554.554 INFO    ] Checking for camera pi updates...
[2026-08-25 04:40:08,587.587 INFO    ] 200
[2026-08-25 04:40:08,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:08,629.629 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:40:08,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:40:08,681.681 INFO    ] No camera update needed
[2026-08-25 04:40:08,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:40:08,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:40:08,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:40:08,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:40:10,736.736 INFO    ] ================================================
[2026-08-25 04:40:10,756.756 INFO    ] Launching Daemon at Tue Aug 25 04:40:10 IST 2026
[2026-08-25 04:40:10,766.766 INFO    ] ================================================
[2026-08-25 04:40:11,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:40:11
[2026-08-25 04:40:11,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:40:12,194.194 INFO    ] Initializing speech engine...
[2026-08-25 04:40:12,204.204 INFO    ] 2026-08-25 04:40:12
[2026-08-25 04:40:12,454.454 INFO    ] 2026-08-25 04:40:12
[2026-08-25 04:40:12,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:40:12,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:40:12,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:40:12,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:40:12,831.831 INFO    ] time= 25/08/2026 04:40:12
[2026-08-25 04:40:12,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:40:12,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:40:13,024.024 INFO    ] No existing commands found in stream
[2026-08-25 04:40:18,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:40:18,046.046 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 04:40:19,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:40:19,429.429 INFO    ] Checking for system updates...
[2026-08-25 04:40:19,464.464 INFO    ] 200
[2026-08-25 04:40:19,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:19,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:40:19,520.520 INFO    ] No update needed
[2026-08-25 04:40:19,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 04:40:19,556.556 INFO    ] 200
[2026-08-25 04:40:19,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:19,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:40:19,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:40:19,657.657 INFO    ] No camera update needed
[2026-08-25 04:40:19,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:40:19,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:40:19,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:40:19,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:40:21,712.712 INFO    ] ================================================
[2026-08-25 04:40:21,727.727 INFO    ] Launching Daemon at Tue Aug 25 04:40:21 IST 2026
[2026-08-25 04:40:21,737.737 INFO    ] ================================================
[2026-08-25 04:40:22,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:40:22
[2026-08-25 04:40:22,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:40:23,210.210 INFO    ] Initializing speech engine...
[2026-08-25 04:40:23,220.220 INFO    ] 2026-08-25 04:40:23
[2026-08-25 04:40:23,469.469 INFO    ] 2026-08-25 04:40:23
[2026-08-25 04:40:23,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:40:23,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:40:23,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:40:23,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:40:23,913.913 INFO    ] time= 25/08/2026 04:40:23
[2026-08-25 04:40:23,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:40:24,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:40:24,175.175 INFO    ] No existing commands found in stream
[2026-08-25 04:40:29,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:40:29,206.206 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 04:40:32,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:40:32,551.551 INFO    ] Checking for system updates...
[2026-08-25 04:40:32,589.589 INFO    ] 200
[2026-08-25 04:40:32,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:32,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:40:32,646.646 INFO    ] No update needed
[2026-08-25 04:40:32,648.648 INFO    ] Checking for camera pi updates...
[2026-08-25 04:40:32,681.681 INFO    ] 200
[2026-08-25 04:40:32,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:32,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:40:32,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:40:32,774.774 INFO    ] No camera update needed
[2026-08-25 04:40:32,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:40:32,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:40:32,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:40:32,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:40:34,831.831 INFO    ] ================================================
[2026-08-25 04:40:34,846.846 INFO    ] Launching Daemon at Tue Aug 25 04:40:34 IST 2026
[2026-08-25 04:40:34,856.856 INFO    ] ================================================
[2026-08-25 04:40:35,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:40:35
[2026-08-25 04:40:36,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:40:36,324.324 INFO    ] Initializing speech engine...
[2026-08-25 04:40:36,330.330 INFO    ] 2026-08-25 04:40:36
[2026-08-25 04:40:36,592.592 INFO    ] 2026-08-25 04:40:36
[2026-08-25 04:40:36,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:40:36,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:40:36,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:40:37,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:40:37,065.065 INFO    ] time= 25/08/2026 04:40:37
[2026-08-25 04:40:37,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:40:37,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:40:37,254.254 INFO    ] No existing commands found in stream
[2026-08-25 04:40:42,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:40:42,295.295 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 04:40:43,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:40:43,161.161 INFO    ] Checking for system updates...
[2026-08-25 04:40:43,198.198 INFO    ] 200
[2026-08-25 04:40:43,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:43,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:40:43,257.257 INFO    ] No update needed
[2026-08-25 04:40:43,260.260 INFO    ] Checking for camera pi updates...
[2026-08-25 04:40:43,294.294 INFO    ] 200
[2026-08-25 04:40:43,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:43,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:40:43,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:40:43,404.404 INFO    ] No camera update needed
[2026-08-25 04:40:43,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:40:43,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:40:43,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:40:43,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:40:45,462.462 INFO    ] ================================================
[2026-08-25 04:40:45,477.477 INFO    ] Launching Daemon at Tue Aug 25 04:40:45 IST 2026
[2026-08-25 04:40:45,488.488 INFO    ] ================================================
[2026-08-25 04:40:46,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:40:46
[2026-08-25 04:40:46,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:40:47,085.085 INFO    ] Initializing speech engine...
[2026-08-25 04:40:47,098.098 INFO    ] 2026-08-25 04:40:47
[2026-08-25 04:40:47,366.366 INFO    ] 2026-08-25 04:40:47
[2026-08-25 04:40:47,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:40:47,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:40:47,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:40:47,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:40:47,838.838 INFO    ] time= 25/08/2026 04:40:47
[2026-08-25 04:40:47,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:40:47,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:40:48,026.026 INFO    ] No existing commands found in stream
[2026-08-25 04:40:53,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:40:53,052.052 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 04:40:55,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:40:55,631.631 INFO    ] Checking for system updates...
[2026-08-25 04:40:55,667.667 INFO    ] 200
[2026-08-25 04:40:55,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:55,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:40:55,725.725 INFO    ] No update needed
[2026-08-25 04:40:55,727.727 INFO    ] Checking for camera pi updates...
[2026-08-25 04:40:55,761.761 INFO    ] 200
[2026-08-25 04:40:55,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:40:55,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:40:55,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:40:55,859.859 INFO    ] No camera update needed
[2026-08-25 04:40:55,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:40:55,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:40:55,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:40:55,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:40:57,915.915 INFO    ] ================================================
[2026-08-25 04:40:57,931.931 INFO    ] Launching Daemon at Tue Aug 25 04:40:57 IST 2026
[2026-08-25 04:40:57,942.942 INFO    ] ================================================
[2026-08-25 04:40:58,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:40:58
[2026-08-25 04:40:59,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:40:59,414.414 INFO    ] Initializing speech engine...
[2026-08-25 04:40:59,421.421 INFO    ] 2026-08-25 04:40:59
[2026-08-25 04:40:59,679.679 INFO    ] 2026-08-25 04:40:59
[2026-08-25 04:40:59,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:40:59,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:40:59,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:41:00,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:41:00,084.084 INFO    ] time= 25/08/2026 04:41:00
[2026-08-25 04:41:00,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:41:00,113.113 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:41:00,252.252 INFO    ] No existing commands found in stream
[2026-08-25 04:41:05,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:41:05,281.281 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 04:41:07,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:41:07,269.269 INFO    ] Checking for system updates...
[2026-08-25 04:41:07,306.306 INFO    ] 200
[2026-08-25 04:41:07,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:07,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:41:07,362.362 INFO    ] No update needed
[2026-08-25 04:41:07,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 04:41:07,398.398 INFO    ] 200
[2026-08-25 04:41:07,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:07,444.444 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:41:07,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:41:07,493.493 INFO    ] No camera update needed
[2026-08-25 04:41:07,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:41:07,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:41:07,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:41:07,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:41:09,546.546 INFO    ] ================================================
[2026-08-25 04:41:09,561.561 INFO    ] Launching Daemon at Tue Aug 25 04:41:09 IST 2026
[2026-08-25 04:41:09,571.571 INFO    ] ================================================
[2026-08-25 04:41:10,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:41:10
[2026-08-25 04:41:10,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:41:11,184.184 INFO    ] Initializing speech engine...
[2026-08-25 04:41:11,195.195 INFO    ] 2026-08-25 04:41:11
[2026-08-25 04:41:11,510.510 INFO    ] 2026-08-25 04:41:11
[2026-08-25 04:41:11,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:41:11,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:41:11,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:41:11,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:41:11,938.938 INFO    ] time= 25/08/2026 04:41:11
[2026-08-25 04:41:11,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:41:12,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:41:12,088.088 INFO    ] No existing commands found in stream
[2026-08-25 04:41:17,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:41:17,100.100 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 04:41:18,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:41:18,748.748 INFO    ] Checking for system updates...
[2026-08-25 04:41:18,783.783 INFO    ] 200
[2026-08-25 04:41:18,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:18,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:41:18,840.840 INFO    ] No update needed
[2026-08-25 04:41:18,842.842 INFO    ] Checking for camera pi updates...
[2026-08-25 04:41:18,876.876 INFO    ] 200
[2026-08-25 04:41:18,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:18,924.924 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:41:18,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:41:18,981.981 INFO    ] No camera update needed
[2026-08-25 04:41:18,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:41:18,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:41:18,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:41:18,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:41:21,036.036 INFO    ] ================================================
[2026-08-25 04:41:21,050.050 INFO    ] Launching Daemon at Tue Aug 25 04:41:21 IST 2026
[2026-08-25 04:41:21,061.061 INFO    ] ================================================
[2026-08-25 04:41:21,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:41:21
[2026-08-25 04:41:22,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:41:22,520.520 INFO    ] Initializing speech engine...
[2026-08-25 04:41:22,530.530 INFO    ] 2026-08-25 04:41:22
[2026-08-25 04:41:22,799.799 INFO    ] 2026-08-25 04:41:22
[2026-08-25 04:41:22,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:41:23,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:41:23,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:41:23,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:41:23,279.279 INFO    ] time= 25/08/2026 04:41:23
[2026-08-25 04:41:23,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:41:23,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:41:23,488.488 INFO    ] No existing commands found in stream
[2026-08-25 04:41:28,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:41:28,516.516 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 04:41:31,072.072 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:41:31,074.074 INFO    ] Checking for system updates...
[2026-08-25 04:41:31,110.110 INFO    ] 200
[2026-08-25 04:41:31,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:31,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:41:31,167.167 INFO    ] No update needed
[2026-08-25 04:41:31,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 04:41:31,204.204 INFO    ] 200
[2026-08-25 04:41:31,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:31,254.254 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:41:31,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:41:31,399.399 INFO    ] No camera update needed
[2026-08-25 04:41:31,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:41:31,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:41:31,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:41:31,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:41:33,455.455 INFO    ] ================================================
[2026-08-25 04:41:33,470.470 INFO    ] Launching Daemon at Tue Aug 25 04:41:33 IST 2026
[2026-08-25 04:41:33,480.480 INFO    ] ================================================
[2026-08-25 04:41:34,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:41:34
[2026-08-25 04:41:34,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:41:34,910.910 INFO    ] Initializing speech engine...
[2026-08-25 04:41:34,924.924 INFO    ] 2026-08-25 04:41:34
[2026-08-25 04:41:35,196.196 INFO    ] 2026-08-25 04:41:35
[2026-08-25 04:41:35,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:41:35,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:41:35,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:41:35,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:41:35,559.559 INFO    ] time= 25/08/2026 04:41:35
[2026-08-25 04:41:35,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:41:35,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:41:35,655.655 INFO    ] No existing commands found in stream
[2026-08-25 04:41:40,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:41:40,688.688 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 04:41:41,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:41:41,731.731 INFO    ] Checking for system updates...
[2026-08-25 04:41:41,768.768 INFO    ] 200
[2026-08-25 04:41:41,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:41,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:41:41,830.830 INFO    ] No update needed
[2026-08-25 04:41:41,833.833 INFO    ] Checking for camera pi updates...
[2026-08-25 04:41:41,866.866 INFO    ] 200
[2026-08-25 04:41:41,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:41,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:41:41,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:41:41,971.971 INFO    ] No camera update needed
[2026-08-25 04:41:41,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:41:41,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:41:41,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:41:41,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:41:44,025.025 INFO    ] ================================================
[2026-08-25 04:41:44,040.040 INFO    ] Launching Daemon at Tue Aug 25 04:41:44 IST 2026
[2026-08-25 04:41:44,050.050 INFO    ] ================================================
[2026-08-25 04:41:44,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:41:44
[2026-08-25 04:41:45,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:41:45,514.514 INFO    ] Initializing speech engine...
[2026-08-25 04:41:45,521.521 INFO    ] 2026-08-25 04:41:45
[2026-08-25 04:41:45,772.772 INFO    ] 2026-08-25 04:41:45
[2026-08-25 04:41:45,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:41:45,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:41:46,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:41:46,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:41:46,151.151 INFO    ] time= 25/08/2026 04:41:46
[2026-08-25 04:41:46,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:41:46,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:41:46,275.275 INFO    ] No existing commands found in stream
[2026-08-25 04:41:51,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:41:51,303.303 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 04:41:55,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:41:55,282.282 INFO    ] Checking for system updates...
[2026-08-25 04:41:55,324.324 INFO    ] 200
[2026-08-25 04:41:55,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:55,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:41:55,389.389 INFO    ] No update needed
[2026-08-25 04:41:55,392.392 INFO    ] Checking for camera pi updates...
[2026-08-25 04:41:55,426.426 INFO    ] 200
[2026-08-25 04:41:55,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:41:55,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:41:55,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:41:55,531.531 INFO    ] No camera update needed
[2026-08-25 04:41:55,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:41:55,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:41:55,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:41:55,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:41:57,586.586 INFO    ] ================================================
[2026-08-25 04:41:57,601.601 INFO    ] Launching Daemon at Tue Aug 25 04:41:57 IST 2026
[2026-08-25 04:41:57,611.611 INFO    ] ================================================
[2026-08-25 04:41:58,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:41:58
[2026-08-25 04:41:58,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:41:59,114.114 INFO    ] Initializing speech engine...
[2026-08-25 04:41:59,124.124 INFO    ] 2026-08-25 04:41:59
[2026-08-25 04:41:59,369.369 INFO    ] 2026-08-25 04:41:59
[2026-08-25 04:41:59,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:41:59,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:41:59,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:41:59,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:41:59,848.848 INFO    ] time= 25/08/2026 04:41:59
[2026-08-25 04:41:59,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:41:59,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:42:00,072.072 INFO    ] No existing commands found in stream
[2026-08-25 04:42:05,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:42:05,090.090 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 04:42:05,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:42:05,941.941 INFO    ] Checking for system updates...
[2026-08-25 04:42:05,977.977 INFO    ] 200
[2026-08-25 04:42:05,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:06,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:42:06,033.033 INFO    ] No update needed
[2026-08-25 04:42:06,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 04:42:06,074.074 INFO    ] 200
[2026-08-25 04:42:06,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:06,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:42:06,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:42:06,169.169 INFO    ] No camera update needed
[2026-08-25 04:42:06,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:42:06,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:42:06,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:42:06,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:42:08,227.227 INFO    ] ================================================
[2026-08-25 04:42:08,244.244 INFO    ] Launching Daemon at Tue Aug 25 04:42:08 IST 2026
[2026-08-25 04:42:08,256.256 INFO    ] ================================================
[2026-08-25 04:42:08,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:42:08
[2026-08-25 04:42:09,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:42:09,704.704 INFO    ] Initializing speech engine...
[2026-08-25 04:42:09,718.718 INFO    ] 2026-08-25 04:42:09
[2026-08-25 04:42:10,009.009 INFO    ] 2026-08-25 04:42:09
[2026-08-25 04:42:10,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:42:10,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:42:10,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:42:10,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:42:10,405.405 INFO    ] time= 25/08/2026 04:42:10
[2026-08-25 04:42:10,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:42:10,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:42:10,524.524 INFO    ] No existing commands found in stream
[2026-08-25 04:42:15,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:42:15,557.557 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 04:42:18,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:42:18,792.792 INFO    ] Checking for system updates...
[2026-08-25 04:42:18,831.831 INFO    ] 200
[2026-08-25 04:42:18,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:18,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:42:18,888.888 INFO    ] No update needed
[2026-08-25 04:42:18,895.895 INFO    ] Checking for camera pi updates...
[2026-08-25 04:42:18,928.928 INFO    ] 200
[2026-08-25 04:42:18,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:18,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:42:19,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:42:19,028.028 INFO    ] No camera update needed
[2026-08-25 04:42:19,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:42:19,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:42:19,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:42:19,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:42:21,085.085 INFO    ] ================================================
[2026-08-25 04:42:21,100.100 INFO    ] Launching Daemon at Tue Aug 25 04:42:21 IST 2026
[2026-08-25 04:42:21,110.110 INFO    ] ================================================
[2026-08-25 04:42:21,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:42:21
[2026-08-25 04:42:22,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:42:22,524.524 INFO    ] Initializing speech engine...
[2026-08-25 04:42:22,533.533 INFO    ] 2026-08-25 04:42:22
[2026-08-25 04:42:22,778.778 INFO    ] 2026-08-25 04:42:22
[2026-08-25 04:42:22,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:42:23,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:42:23,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:42:23,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:42:23,275.275 INFO    ] time= 25/08/2026 04:42:23
[2026-08-25 04:42:23,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:42:23,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:42:23,469.469 INFO    ] No existing commands found in stream
[2026-08-25 04:42:28,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:42:28,499.499 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 04:42:31,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:42:31,439.439 INFO    ] Checking for system updates...
[2026-08-25 04:42:31,477.477 INFO    ] 200
[2026-08-25 04:42:31,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:31,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:42:31,540.540 INFO    ] No update needed
[2026-08-25 04:42:31,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 04:42:31,576.576 INFO    ] 200
[2026-08-25 04:42:31,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:31,622.622 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:42:31,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:42:31,676.676 INFO    ] No camera update needed
[2026-08-25 04:42:31,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:42:31,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:42:31,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:42:31,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:42:33,733.733 INFO    ] ================================================
[2026-08-25 04:42:33,748.748 INFO    ] Launching Daemon at Tue Aug 25 04:42:33 IST 2026
[2026-08-25 04:42:33,758.758 INFO    ] ================================================
[2026-08-25 04:42:34,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:42:34
[2026-08-25 04:42:34,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:42:35,183.183 INFO    ] Initializing speech engine...
[2026-08-25 04:42:35,188.188 INFO    ] 2026-08-25 04:42:35
[2026-08-25 04:42:35,449.449 INFO    ] 2026-08-25 04:42:35
[2026-08-25 04:42:35,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:42:35,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:42:35,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:42:35,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:42:35,930.930 INFO    ] time= 25/08/2026 04:42:35
[2026-08-25 04:42:35,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:42:35,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:42:36,143.143 INFO    ] No existing commands found in stream
[2026-08-25 04:42:41,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:42:41,159.159 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 04:42:41,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:42:41,875.875 INFO    ] Checking for system updates...
[2026-08-25 04:42:41,910.910 INFO    ] 200
[2026-08-25 04:42:41,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:41,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:42:41,967.967 INFO    ] No update needed
[2026-08-25 04:42:41,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 04:42:42,003.003 INFO    ] 200
[2026-08-25 04:42:42,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:42,051.051 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:42:42,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:42:42,111.111 INFO    ] No camera update needed
[2026-08-25 04:42:42,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:42:42,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:42:42,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:42:42,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:42:44,166.166 INFO    ] ================================================
[2026-08-25 04:42:44,180.180 INFO    ] Launching Daemon at Tue Aug 25 04:42:44 IST 2026
[2026-08-25 04:42:44,191.191 INFO    ] ================================================
[2026-08-25 04:42:44,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:42:44
[2026-08-25 04:42:45,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:42:45,618.618 INFO    ] Initializing speech engine...
[2026-08-25 04:42:45,630.630 INFO    ] 2026-08-25 04:42:45
[2026-08-25 04:42:45,894.894 INFO    ] 2026-08-25 04:42:45
[2026-08-25 04:42:45,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:42:46,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:42:46,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:42:46,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:42:46,374.374 INFO    ] time= 25/08/2026 04:42:46
[2026-08-25 04:42:46,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:42:46,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:42:46,619.619 INFO    ] No existing commands found in stream
[2026-08-25 04:42:51,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:42:51,637.637 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 04:42:53,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:42:53,194.194 INFO    ] Checking for system updates...
[2026-08-25 04:42:53,234.234 INFO    ] 200
[2026-08-25 04:42:53,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:53,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:42:53,298.298 INFO    ] No update needed
[2026-08-25 04:42:53,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 04:42:53,333.333 INFO    ] 200
[2026-08-25 04:42:53,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:42:53,375.375 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:42:53,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:42:53,426.426 INFO    ] No camera update needed
[2026-08-25 04:42:53,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:42:53,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:42:53,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:42:53,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:42:55,481.481 INFO    ] ================================================
[2026-08-25 04:42:55,496.496 INFO    ] Launching Daemon at Tue Aug 25 04:42:55 IST 2026
[2026-08-25 04:42:55,509.509 INFO    ] ================================================
[2026-08-25 04:42:56,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:42:56
[2026-08-25 04:42:56,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:42:56,943.943 INFO    ] Initializing speech engine...
[2026-08-25 04:42:56,953.953 INFO    ] 2026-08-25 04:42:56
[2026-08-25 04:42:57,201.201 INFO    ] 2026-08-25 04:42:57
[2026-08-25 04:42:57,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:42:57,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:42:57,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:42:57,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:42:57,692.692 INFO    ] time= 25/08/2026 04:42:57
[2026-08-25 04:42:57,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:42:57,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:42:57,913.913 INFO    ] No existing commands found in stream
[2026-08-25 04:43:02,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:43:02,930.930 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 04:43:04,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:43:04,626.626 INFO    ] Checking for system updates...
[2026-08-25 04:43:04,662.662 INFO    ] 200
[2026-08-25 04:43:04,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:04,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:43:04,720.720 INFO    ] No update needed
[2026-08-25 04:43:04,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 04:43:04,756.756 INFO    ] 200
[2026-08-25 04:43:04,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:04,804.804 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:43:04,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:43:04,867.867 INFO    ] No camera update needed
[2026-08-25 04:43:04,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:43:04,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:43:04,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:43:04,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:43:06,921.921 INFO    ] ================================================
[2026-08-25 04:43:06,936.936 INFO    ] Launching Daemon at Tue Aug 25 04:43:06 IST 2026
[2026-08-25 04:43:06,947.947 INFO    ] ================================================
[2026-08-25 04:43:07,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:43:07
[2026-08-25 04:43:08,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:43:08,392.392 INFO    ] Initializing speech engine...
[2026-08-25 04:43:08,402.402 INFO    ] 2026-08-25 04:43:08
[2026-08-25 04:43:08,651.651 INFO    ] 2026-08-25 04:43:08
[2026-08-25 04:43:08,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:43:08,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:43:08,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:43:09,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:43:09,019.019 INFO    ] time= 25/08/2026 04:43:09
[2026-08-25 04:43:09,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:43:09,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:43:09,143.143 INFO    ] No existing commands found in stream
[2026-08-25 04:43:14,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:43:14,159.159 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 04:43:17,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:43:17,830.830 INFO    ] Checking for system updates...
[2026-08-25 04:43:17,869.869 INFO    ] 200
[2026-08-25 04:43:17,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:17,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:43:17,927.927 INFO    ] No update needed
[2026-08-25 04:43:17,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 04:43:17,967.967 INFO    ] 200
[2026-08-25 04:43:17,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:18,017.017 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:43:18,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:43:18,076.076 INFO    ] No camera update needed
[2026-08-25 04:43:18,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:43:18,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:43:18,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:43:18,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:43:20,135.135 INFO    ] ================================================
[2026-08-25 04:43:20,149.149 INFO    ] Launching Daemon at Tue Aug 25 04:43:20 IST 2026
[2026-08-25 04:43:20,160.160 INFO    ] ================================================
[2026-08-25 04:43:20,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:43:20
[2026-08-25 04:43:21,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:43:21,619.619 INFO    ] Initializing speech engine...
[2026-08-25 04:43:21,628.628 INFO    ] 2026-08-25 04:43:21
[2026-08-25 04:43:21,887.887 INFO    ] 2026-08-25 04:43:21
[2026-08-25 04:43:21,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:43:22,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:43:22,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:43:22,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:43:22,341.341 INFO    ] time= 25/08/2026 04:43:22
[2026-08-25 04:43:22,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:43:22,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:43:22,577.577 INFO    ] No existing commands found in stream
[2026-08-25 04:43:27,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:43:27,600.600 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 04:43:29,421.421 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:43:29,424.424 INFO    ] Checking for system updates...
[2026-08-25 04:43:29,462.462 INFO    ] 200
[2026-08-25 04:43:29,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:29,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:43:29,521.521 INFO    ] No update needed
[2026-08-25 04:43:29,524.524 INFO    ] Checking for camera pi updates...
[2026-08-25 04:43:29,558.558 INFO    ] 200
[2026-08-25 04:43:29,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:29,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:43:29,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:43:29,648.648 INFO    ] No camera update needed
[2026-08-25 04:43:29,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:43:29,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:43:29,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:43:29,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:43:31,704.704 INFO    ] ================================================
[2026-08-25 04:43:31,719.719 INFO    ] Launching Daemon at Tue Aug 25 04:43:31 IST 2026
[2026-08-25 04:43:31,730.730 INFO    ] ================================================
[2026-08-25 04:43:32,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:43:32
[2026-08-25 04:43:33,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:43:33,303.303 INFO    ] Initializing speech engine...
[2026-08-25 04:43:33,313.313 INFO    ] 2026-08-25 04:43:33
[2026-08-25 04:43:33,562.562 INFO    ] 2026-08-25 04:43:33
[2026-08-25 04:43:33,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:43:33,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:43:33,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:43:33,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:43:33,940.940 INFO    ] time= 25/08/2026 04:43:33
[2026-08-25 04:43:33,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:43:33,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:43:34,125.125 INFO    ] No existing commands found in stream
[2026-08-25 04:43:39,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:43:39,153.153 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 04:43:41,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:43:41,148.148 INFO    ] Checking for system updates...
[2026-08-25 04:43:41,183.183 INFO    ] 200
[2026-08-25 04:43:41,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:41,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:43:41,241.241 INFO    ] No update needed
[2026-08-25 04:43:41,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 04:43:41,277.277 INFO    ] 200
[2026-08-25 04:43:41,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:41,319.319 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:43:41,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:43:41,467.467 INFO    ] No camera update needed
[2026-08-25 04:43:41,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:43:41,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:43:41,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:43:41,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:43:43,525.525 INFO    ] ================================================
[2026-08-25 04:43:43,541.541 INFO    ] Launching Daemon at Tue Aug 25 04:43:43 IST 2026
[2026-08-25 04:43:43,552.552 INFO    ] ================================================
[2026-08-25 04:43:44,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:43:44
[2026-08-25 04:43:44,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:43:44,993.993 INFO    ] Initializing speech engine...
[2026-08-25 04:43:45,002.002 INFO    ] 2026-08-25 04:43:44
[2026-08-25 04:43:45,248.248 INFO    ] 2026-08-25 04:43:45
[2026-08-25 04:43:45,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:43:45,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:43:45,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:43:45,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:43:45,717.717 INFO    ] time= 25/08/2026 04:43:45
[2026-08-25 04:43:45,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:43:45,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:43:45,935.935 INFO    ] No existing commands found in stream
[2026-08-25 04:43:50,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:43:50,965.965 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 04:43:55,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:43:55,042.042 INFO    ] Checking for system updates...
[2026-08-25 04:43:55,078.078 INFO    ] 200
[2026-08-25 04:43:55,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:55,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:43:55,142.142 INFO    ] No update needed
[2026-08-25 04:43:55,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 04:43:55,178.178 INFO    ] 200
[2026-08-25 04:43:55,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:43:55,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:43:55,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:43:55,275.275 INFO    ] No camera update needed
[2026-08-25 04:43:55,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:43:55,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:43:55,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:43:55,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:43:57,335.335 INFO    ] ================================================
[2026-08-25 04:43:57,350.350 INFO    ] Launching Daemon at Tue Aug 25 04:43:57 IST 2026
[2026-08-25 04:43:57,361.361 INFO    ] ================================================
[2026-08-25 04:43:57,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:43:57
[2026-08-25 04:43:58,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:43:58,800.800 INFO    ] Initializing speech engine...
[2026-08-25 04:43:58,805.805 INFO    ] 2026-08-25 04:43:58
[2026-08-25 04:43:59,052.052 INFO    ] 2026-08-25 04:43:59
[2026-08-25 04:43:59,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:43:59,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:43:59,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:43:59,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:43:59,519.519 INFO    ] time= 25/08/2026 04:43:59
[2026-08-25 04:43:59,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:43:59,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:43:59,749.749 INFO    ] No existing commands found in stream
[2026-08-25 04:44:04,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:44:04,776.776 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 04:44:08,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:44:08,128.128 INFO    ] Checking for system updates...
[2026-08-25 04:44:08,167.167 INFO    ] 200
[2026-08-25 04:44:08,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:08,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:44:08,231.231 INFO    ] No update needed
[2026-08-25 04:44:08,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 04:44:08,267.267 INFO    ] 200
[2026-08-25 04:44:08,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:08,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:44:08,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:44:08,357.357 INFO    ] No camera update needed
[2026-08-25 04:44:08,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:44:08,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:44:08,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:44:08,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:44:10,412.412 INFO    ] ================================================
[2026-08-25 04:44:10,427.427 INFO    ] Launching Daemon at Tue Aug 25 04:44:10 IST 2026
[2026-08-25 04:44:10,438.438 INFO    ] ================================================
[2026-08-25 04:44:11,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:44:11
[2026-08-25 04:44:11,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:44:11,895.895 INFO    ] Initializing speech engine...
[2026-08-25 04:44:11,905.905 INFO    ] 2026-08-25 04:44:11
[2026-08-25 04:44:12,167.167 INFO    ] 2026-08-25 04:44:12
[2026-08-25 04:44:12,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:44:12,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:44:12,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:44:12,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:44:12,636.636 INFO    ] time= 25/08/2026 04:44:12
[2026-08-25 04:44:12,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:44:12,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:44:12,840.840 INFO    ] No existing commands found in stream
[2026-08-25 04:44:17,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:44:17,874.874 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 04:44:19,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:44:19,827.827 INFO    ] Checking for system updates...
[2026-08-25 04:44:19,863.863 INFO    ] 200
[2026-08-25 04:44:19,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:19,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:44:19,923.923 INFO    ] No update needed
[2026-08-25 04:44:19,926.926 INFO    ] Checking for camera pi updates...
[2026-08-25 04:44:19,963.963 INFO    ] 200
[2026-08-25 04:44:19,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:20,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:44:20,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:44:20,062.062 INFO    ] No camera update needed
[2026-08-25 04:44:20,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:44:20,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:44:20,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:44:20,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:44:22,115.115 INFO    ] ================================================
[2026-08-25 04:44:22,130.130 INFO    ] Launching Daemon at Tue Aug 25 04:44:22 IST 2026
[2026-08-25 04:44:22,141.141 INFO    ] ================================================
[2026-08-25 04:44:22,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:44:22
[2026-08-25 04:44:23,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:44:23,566.566 INFO    ] Initializing speech engine...
[2026-08-25 04:44:23,575.575 INFO    ] 2026-08-25 04:44:23
[2026-08-25 04:44:23,823.823 INFO    ] 2026-08-25 04:44:23
[2026-08-25 04:44:23,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:44:24,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:44:24,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:44:24,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:44:24,295.295 INFO    ] time= 25/08/2026 04:44:24
[2026-08-25 04:44:24,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:44:24,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:44:24,504.504 INFO    ] No existing commands found in stream
[2026-08-25 04:44:29,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:44:29,529.529 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 04:44:32,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:44:32,422.422 INFO    ] Checking for system updates...
[2026-08-25 04:44:32,465.465 INFO    ] 200
[2026-08-25 04:44:32,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:32,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:44:32,527.527 INFO    ] No update needed
[2026-08-25 04:44:32,529.529 INFO    ] Checking for camera pi updates...
[2026-08-25 04:44:32,570.570 INFO    ] 200
[2026-08-25 04:44:32,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:32,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:44:32,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:44:32,685.685 INFO    ] No camera update needed
[2026-08-25 04:44:32,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:44:32,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:44:32,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:44:32,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:44:34,744.744 INFO    ] ================================================
[2026-08-25 04:44:34,759.759 INFO    ] Launching Daemon at Tue Aug 25 04:44:34 IST 2026
[2026-08-25 04:44:34,769.769 INFO    ] ================================================
[2026-08-25 04:44:35,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:44:35
[2026-08-25 04:44:35,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:44:36,267.267 INFO    ] Initializing speech engine...
[2026-08-25 04:44:36,288.288 INFO    ] 2026-08-25 04:44:36
[2026-08-25 04:44:36,554.554 INFO    ] 2026-08-25 04:44:36
[2026-08-25 04:44:36,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:44:36,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:44:36,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:44:36,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:44:36,932.932 INFO    ] time= 25/08/2026 04:44:36
[2026-08-25 04:44:36,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:44:36,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:44:37,056.056 INFO    ] No existing commands found in stream
[2026-08-25 04:44:42,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:44:42,070.070 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 04:44:46,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:44:46,041.041 INFO    ] Checking for system updates...
[2026-08-25 04:44:46,080.080 INFO    ] 200
[2026-08-25 04:44:46,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:46,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:44:46,143.143 INFO    ] No update needed
[2026-08-25 04:44:46,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 04:44:46,181.181 INFO    ] 200
[2026-08-25 04:44:46,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:46,237.237 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:44:46,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:44:46,292.292 INFO    ] No camera update needed
[2026-08-25 04:44:46,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:44:46,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:44:46,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:44:46,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:44:48,349.349 INFO    ] ================================================
[2026-08-25 04:44:48,364.364 INFO    ] Launching Daemon at Tue Aug 25 04:44:48 IST 2026
[2026-08-25 04:44:48,375.375 INFO    ] ================================================
[2026-08-25 04:44:49,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:44:49
[2026-08-25 04:44:49,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:44:50,011.011 INFO    ] Initializing speech engine...
[2026-08-25 04:44:50,016.016 INFO    ] 2026-08-25 04:44:50
[2026-08-25 04:44:50,293.293 INFO    ] 2026-08-25 04:44:50
[2026-08-25 04:44:50,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:44:50,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:44:50,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:44:50,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:44:50,824.824 INFO    ] time= 25/08/2026 04:44:50
[2026-08-25 04:44:50,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:44:50,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:44:50,975.975 INFO    ] No existing commands found in stream
[2026-08-25 04:44:55,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:44:55,994.994 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 04:44:59,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:44:59,068.068 INFO    ] Checking for system updates...
[2026-08-25 04:44:59,108.108 INFO    ] 200
[2026-08-25 04:44:59,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:59,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:44:59,170.170 INFO    ] No update needed
[2026-08-25 04:44:59,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 04:44:59,209.209 INFO    ] 200
[2026-08-25 04:44:59,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:44:59,255.255 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:44:59,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:44:59,302.302 INFO    ] No camera update needed
[2026-08-25 04:44:59,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:44:59,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:44:59,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:44:59,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:45:01,356.356 INFO    ] ================================================
[2026-08-25 04:45:01,371.371 INFO    ] Launching Daemon at Tue Aug 25 04:45:01 IST 2026
[2026-08-25 04:45:01,382.382 INFO    ] ================================================
[2026-08-25 04:45:02,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:45:02
[2026-08-25 04:45:03,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:45:03,472.472 INFO    ] Initializing speech engine...
[2026-08-25 04:45:03,481.481 INFO    ] 2026-08-25 04:45:03
[2026-08-25 04:45:03,774.774 INFO    ] 2026-08-25 04:45:03
[2026-08-25 04:45:03,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:45:04,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:45:04,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:45:04,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:45:04,195.195 INFO    ] time= 25/08/2026 04:45:04
[2026-08-25 04:45:04,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:45:04,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:45:04,379.379 INFO    ] No existing commands found in stream
[2026-08-25 04:45:09,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:45:09,403.403 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 04:45:12,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:45:12,266.266 INFO    ] Checking for system updates...
[2026-08-25 04:45:12,302.302 INFO    ] 200
[2026-08-25 04:45:12,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:12,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:45:12,359.359 INFO    ] No update needed
[2026-08-25 04:45:12,362.362 INFO    ] Checking for camera pi updates...
[2026-08-25 04:45:12,397.397 INFO    ] 200
[2026-08-25 04:45:12,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:12,443.443 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:45:12,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:45:12,494.494 INFO    ] No camera update needed
[2026-08-25 04:45:12,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:45:12,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:45:12,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:45:12,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:45:14,547.547 INFO    ] ================================================
[2026-08-25 04:45:14,562.562 INFO    ] Launching Daemon at Tue Aug 25 04:45:14 IST 2026
[2026-08-25 04:45:14,573.573 INFO    ] ================================================
[2026-08-25 04:45:15,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:45:15
[2026-08-25 04:45:15,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:45:16,007.007 INFO    ] Initializing speech engine...
[2026-08-25 04:45:16,016.016 INFO    ] 2026-08-25 04:45:16
[2026-08-25 04:45:16,272.272 INFO    ] 2026-08-25 04:45:16
[2026-08-25 04:45:16,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:45:16,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:45:16,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:45:16,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:45:16,729.729 INFO    ] time= 25/08/2026 04:45:16
[2026-08-25 04:45:16,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:45:16,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:45:16,954.954 INFO    ] No existing commands found in stream
[2026-08-25 04:45:21,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:45:21,981.981 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 04:45:25,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:45:25,356.356 INFO    ] Checking for system updates...
[2026-08-25 04:45:25,392.392 INFO    ] 200
[2026-08-25 04:45:25,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:25,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:45:25,454.454 INFO    ] No update needed
[2026-08-25 04:45:25,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 04:45:25,492.492 INFO    ] 200
[2026-08-25 04:45:25,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:25,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:45:25,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:45:25,595.595 INFO    ] No camera update needed
[2026-08-25 04:45:25,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:45:25,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:45:25,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:45:25,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:45:27,649.649 INFO    ] ================================================
[2026-08-25 04:45:27,664.664 INFO    ] Launching Daemon at Tue Aug 25 04:45:27 IST 2026
[2026-08-25 04:45:27,675.675 INFO    ] ================================================
[2026-08-25 04:45:28,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:45:28
[2026-08-25 04:45:28,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:45:29,095.095 INFO    ] Initializing speech engine...
[2026-08-25 04:45:29,105.105 INFO    ] 2026-08-25 04:45:29
[2026-08-25 04:45:29,357.357 INFO    ] 2026-08-25 04:45:29
[2026-08-25 04:45:29,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:45:29,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:45:29,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:45:29,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:45:29,838.838 INFO    ] time= 25/08/2026 04:45:29
[2026-08-25 04:45:29,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:45:29,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:45:30,070.070 INFO    ] No existing commands found in stream
[2026-08-25 04:45:35,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:45:35,088.088 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 04:45:37,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:45:37,367.367 INFO    ] Checking for system updates...
[2026-08-25 04:45:37,403.403 INFO    ] 200
[2026-08-25 04:45:37,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:37,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:45:37,466.466 INFO    ] No update needed
[2026-08-25 04:45:37,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 04:45:37,502.502 INFO    ] 200
[2026-08-25 04:45:37,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:37,549.549 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:45:37,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:45:37,599.599 INFO    ] No camera update needed
[2026-08-25 04:45:37,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:45:37,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:45:37,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:45:37,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:45:39,653.653 INFO    ] ================================================
[2026-08-25 04:45:39,668.668 INFO    ] Launching Daemon at Tue Aug 25 04:45:39 IST 2026
[2026-08-25 04:45:39,678.678 INFO    ] ================================================
[2026-08-25 04:45:40,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:45:40
[2026-08-25 04:45:40,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:45:41,241.241 INFO    ] Initializing speech engine...
[2026-08-25 04:45:41,252.252 INFO    ] 2026-08-25 04:45:41
[2026-08-25 04:45:41,524.524 INFO    ] 2026-08-25 04:45:41
[2026-08-25 04:45:41,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:45:41,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:45:41,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:45:41,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:45:42,007.007 INFO    ] time= 25/08/2026 04:45:41
[2026-08-25 04:45:42,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:45:42,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:45:42,222.222 INFO    ] No existing commands found in stream
[2026-08-25 04:45:47,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:45:47,238.238 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 04:45:47,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:45:47,811.811 INFO    ] Checking for system updates...
[2026-08-25 04:45:47,852.852 INFO    ] 200
[2026-08-25 04:45:47,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:47,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:45:47,919.919 INFO    ] No update needed
[2026-08-25 04:45:47,922.922 INFO    ] Checking for camera pi updates...
[2026-08-25 04:45:47,960.960 INFO    ] 200
[2026-08-25 04:45:47,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:45:48,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:45:48,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:45:48,158.158 INFO    ] No camera update needed
[2026-08-25 04:45:48,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:45:48,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:45:48,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:45:48,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:45:50,211.211 INFO    ] ================================================
[2026-08-25 04:45:50,226.226 INFO    ] Launching Daemon at Tue Aug 25 04:45:50 IST 2026
[2026-08-25 04:45:50,237.237 INFO    ] ================================================
[2026-08-25 04:45:50,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:45:50
[2026-08-25 04:45:51,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:45:51,838.838 INFO    ] Initializing speech engine...
[2026-08-25 04:45:51,852.852 INFO    ] 2026-08-25 04:45:51
[2026-08-25 04:45:52,124.124 INFO    ] 2026-08-25 04:45:52
[2026-08-25 04:45:52,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:45:52,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:45:52,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:45:52,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:45:52,574.574 INFO    ] time= 25/08/2026 04:45:52
[2026-08-25 04:45:52,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:45:52,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:45:52,819.819 INFO    ] No existing commands found in stream
[2026-08-25 04:45:57,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:45:57,851.851 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 04:46:01,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:46:01,209.209 INFO    ] Checking for system updates...
[2026-08-25 04:46:01,250.250 INFO    ] 200
[2026-08-25 04:46:01,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:01,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:46:01,321.321 INFO    ] No update needed
[2026-08-25 04:46:01,324.324 INFO    ] Checking for camera pi updates...
[2026-08-25 04:46:01,382.382 INFO    ] 200
[2026-08-25 04:46:01,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:01,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:46:01,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:46:01,544.544 INFO    ] No camera update needed
[2026-08-25 04:46:01,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:46:01,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:46:01,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:46:01,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:46:03,618.618 INFO    ] ================================================
[2026-08-25 04:46:03,633.633 INFO    ] Launching Daemon at Tue Aug 25 04:46:03 IST 2026
[2026-08-25 04:46:03,644.644 INFO    ] ================================================
[2026-08-25 04:46:04,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:46:04
[2026-08-25 04:46:04,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:46:05,058.058 INFO    ] Initializing speech engine...
[2026-08-25 04:46:05,067.067 INFO    ] 2026-08-25 04:46:05
[2026-08-25 04:46:05,314.314 INFO    ] 2026-08-25 04:46:05
[2026-08-25 04:46:05,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:46:05,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:46:05,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:46:05,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:46:05,788.788 INFO    ] time= 25/08/2026 04:46:05
[2026-08-25 04:46:05,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:46:05,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:46:06,019.019 INFO    ] No existing commands found in stream
[2026-08-25 04:46:11,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:46:11,037.037 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 04:46:13,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:46:13,074.074 INFO    ] Checking for system updates...
[2026-08-25 04:46:13,113.113 INFO    ] 200
[2026-08-25 04:46:13,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:13,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:46:13,177.177 INFO    ] No update needed
[2026-08-25 04:46:13,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 04:46:13,216.216 INFO    ] 200
[2026-08-25 04:46:13,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:13,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:46:13,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:46:13,310.310 INFO    ] No camera update needed
[2026-08-25 04:46:13,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:46:13,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:46:13,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:46:13,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:46:15,365.365 INFO    ] ================================================
[2026-08-25 04:46:15,381.381 INFO    ] Launching Daemon at Tue Aug 25 04:46:15 IST 2026
[2026-08-25 04:46:15,391.391 INFO    ] ================================================
[2026-08-25 04:46:15,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:46:15
[2026-08-25 04:46:16,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:46:16,823.823 INFO    ] Initializing speech engine...
[2026-08-25 04:46:16,838.838 INFO    ] 2026-08-25 04:46:16
[2026-08-25 04:46:17,127.127 INFO    ] 2026-08-25 04:46:17
[2026-08-25 04:46:17,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:46:17,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:46:17,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:46:17,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:46:17,491.491 INFO    ] time= 25/08/2026 04:46:17
[2026-08-25 04:46:17,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:46:17,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:46:17,650.650 INFO    ] No existing commands found in stream
[2026-08-25 04:46:22,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:46:22,662.662 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 04:46:25,955.955 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:46:25,958.958 INFO    ] Checking for system updates...
[2026-08-25 04:46:25,998.998 INFO    ] 200
[2026-08-25 04:46:26,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:26,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:46:26,057.057 INFO    ] No update needed
[2026-08-25 04:46:26,060.060 INFO    ] Checking for camera pi updates...
[2026-08-25 04:46:26,094.094 INFO    ] 200
[2026-08-25 04:46:26,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:26,145.145 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:46:26,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:46:26,200.200 INFO    ] No camera update needed
[2026-08-25 04:46:26,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:46:26,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:46:26,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:46:26,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:46:28,259.259 INFO    ] ================================================
[2026-08-25 04:46:28,273.273 INFO    ] Launching Daemon at Tue Aug 25 04:46:28 IST 2026
[2026-08-25 04:46:28,284.284 INFO    ] ================================================
[2026-08-25 04:46:28,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:46:28
[2026-08-25 04:46:29,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:46:29,707.707 INFO    ] Initializing speech engine...
[2026-08-25 04:46:29,720.720 INFO    ] 2026-08-25 04:46:29
[2026-08-25 04:46:29,985.985 INFO    ] 2026-08-25 04:46:29
[2026-08-25 04:46:30,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:46:30,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:46:30,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:46:30,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:46:30,359.359 INFO    ] time= 25/08/2026 04:46:30
[2026-08-25 04:46:30,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:46:30,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:46:30,489.489 INFO    ] No existing commands found in stream
[2026-08-25 04:46:35,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:46:35,501.501 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 04:46:36,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:46:36,788.788 INFO    ] Checking for system updates...
[2026-08-25 04:46:36,824.824 INFO    ] 200
[2026-08-25 04:46:36,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:36,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:46:36,890.890 INFO    ] No update needed
[2026-08-25 04:46:36,893.893 INFO    ] Checking for camera pi updates...
[2026-08-25 04:46:36,930.930 INFO    ] 200
[2026-08-25 04:46:36,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:36,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:46:37,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:46:37,026.026 INFO    ] No camera update needed
[2026-08-25 04:46:37,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:46:37,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:46:37,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:46:37,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:46:39,082.082 INFO    ] ================================================
[2026-08-25 04:46:39,098.098 INFO    ] Launching Daemon at Tue Aug 25 04:46:39 IST 2026
[2026-08-25 04:46:39,109.109 INFO    ] ================================================
[2026-08-25 04:46:39,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:46:39
[2026-08-25 04:46:40,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:46:40,641.641 INFO    ] Initializing speech engine...
[2026-08-25 04:46:40,650.650 INFO    ] 2026-08-25 04:46:40
[2026-08-25 04:46:40,905.905 INFO    ] 2026-08-25 04:46:40
[2026-08-25 04:46:40,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:46:41,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:46:41,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:46:41,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:46:41,440.440 INFO    ] time= 25/08/2026 04:46:41
[2026-08-25 04:46:41,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:46:41,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:46:41,611.611 INFO    ] No existing commands found in stream
[2026-08-25 04:46:46,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:46:46,636.636 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 04:46:47,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:46:47,882.882 INFO    ] Checking for system updates...
[2026-08-25 04:46:47,922.922 INFO    ] 200
[2026-08-25 04:46:47,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:47,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:46:47,988.988 INFO    ] No update needed
[2026-08-25 04:46:47,991.991 INFO    ] Checking for camera pi updates...
[2026-08-25 04:46:48,029.029 INFO    ] 200
[2026-08-25 04:46:48,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:46:48,073.073 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:46:48,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:46:48,127.127 INFO    ] No camera update needed
[2026-08-25 04:46:48,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:46:48,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:46:48,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:46:48,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:46:50,182.182 INFO    ] ================================================
[2026-08-25 04:46:50,197.197 INFO    ] Launching Daemon at Tue Aug 25 04:46:50 IST 2026
[2026-08-25 04:46:50,208.208 INFO    ] ================================================
[2026-08-25 04:46:50,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:46:50
[2026-08-25 04:46:51,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:46:51,736.736 INFO    ] Initializing speech engine...
[2026-08-25 04:46:51,745.745 INFO    ] 2026-08-25 04:46:51
[2026-08-25 04:46:51,991.991 INFO    ] 2026-08-25 04:46:51
[2026-08-25 04:46:52,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:46:52,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:46:52,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:46:52,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:46:52,465.465 INFO    ] time= 25/08/2026 04:46:52
[2026-08-25 04:46:52,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:46:52,556.556 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:46:52,657.657 INFO    ] No existing commands found in stream
[2026-08-25 04:46:57,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:46:57,691.691 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 04:47:00,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:47:00,360.360 INFO    ] Checking for system updates...
[2026-08-25 04:47:00,397.397 INFO    ] 200
[2026-08-25 04:47:00,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:00,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:00,464.464 INFO    ] No update needed
[2026-08-25 04:47:00,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 04:47:00,503.503 INFO    ] 200
[2026-08-25 04:47:00,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:00,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:47:00,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:00,598.598 INFO    ] No camera update needed
[2026-08-25 04:47:00,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:47:00,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:47:00,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:47:00,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:47:02,664.664 INFO    ] ================================================
[2026-08-25 04:47:02,686.686 INFO    ] Launching Daemon at Tue Aug 25 04:47:02 IST 2026
[2026-08-25 04:47:02,700.700 INFO    ] ================================================
[2026-08-25 04:47:03,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:47:03
[2026-08-25 04:47:03,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:47:04,186.186 INFO    ] Initializing speech engine...
[2026-08-25 04:47:04,201.201 INFO    ] 2026-08-25 04:47:04
[2026-08-25 04:47:04,495.495 INFO    ] 2026-08-25 04:47:04
[2026-08-25 04:47:04,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:47:04,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:47:04,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:47:04,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:47:04,860.860 INFO    ] time= 25/08/2026 04:47:04
[2026-08-25 04:47:04,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:47:04,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:47:04,941.941 INFO    ] No existing commands found in stream
[2026-08-25 04:47:09,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:47:09,956.956 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 04:47:13,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:47:13,033.033 INFO    ] Checking for system updates...
[2026-08-25 04:47:13,073.073 INFO    ] 200
[2026-08-25 04:47:13,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:13,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:13,140.140 INFO    ] No update needed
[2026-08-25 04:47:13,142.142 INFO    ] Checking for camera pi updates...
[2026-08-25 04:47:13,176.176 INFO    ] 200
[2026-08-25 04:47:13,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:13,224.224 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:47:13,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:13,272.272 INFO    ] No camera update needed
[2026-08-25 04:47:13,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:47:13,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:47:13,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:47:13,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:47:15,327.327 INFO    ] ================================================
[2026-08-25 04:47:15,342.342 INFO    ] Launching Daemon at Tue Aug 25 04:47:15 IST 2026
[2026-08-25 04:47:15,353.353 INFO    ] ================================================
[2026-08-25 04:47:15,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:47:15
[2026-08-25 04:47:16,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:47:16,831.831 INFO    ] Initializing speech engine...
[2026-08-25 04:47:16,840.840 INFO    ] 2026-08-25 04:47:16
[2026-08-25 04:47:17,117.117 INFO    ] 2026-08-25 04:47:17
[2026-08-25 04:47:17,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:47:17,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:47:17,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:47:17,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:47:17,506.506 INFO    ] time= 25/08/2026 04:47:17
[2026-08-25 04:47:17,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:47:17,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:47:17,634.634 INFO    ] No existing commands found in stream
[2026-08-25 04:47:22,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:47:22,653.653 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 04:47:25,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:47:25,387.387 INFO    ] Checking for system updates...
[2026-08-25 04:47:25,423.423 INFO    ] 200
[2026-08-25 04:47:25,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:25,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:25,491.491 INFO    ] No update needed
[2026-08-25 04:47:25,494.494 INFO    ] Checking for camera pi updates...
[2026-08-25 04:47:25,533.533 INFO    ] 200
[2026-08-25 04:47:25,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:25,578.578 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:47:25,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:25,630.630 INFO    ] No camera update needed
[2026-08-25 04:47:25,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:47:25,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:47:25,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:47:25,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:47:27,689.689 INFO    ] ================================================
[2026-08-25 04:47:27,705.705 INFO    ] Launching Daemon at Tue Aug 25 04:47:27 IST 2026
[2026-08-25 04:47:27,717.717 INFO    ] ================================================
[2026-08-25 04:47:28,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:47:28
[2026-08-25 04:47:29,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:47:29,388.388 INFO    ] Initializing speech engine...
[2026-08-25 04:47:29,402.402 INFO    ] 2026-08-25 04:47:29
[2026-08-25 04:47:29,718.718 INFO    ] 2026-08-25 04:47:29
[2026-08-25 04:47:29,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:47:30,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:47:30,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:47:30,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:47:30,223.223 INFO    ] time= 25/08/2026 04:47:30
[2026-08-25 04:47:30,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:47:30,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:47:30,377.377 INFO    ] No existing commands found in stream
[2026-08-25 04:47:35,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:47:35,399.399 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 04:47:39,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:47:39,216.216 INFO    ] Checking for system updates...
[2026-08-25 04:47:39,253.253 INFO    ] 200
[2026-08-25 04:47:39,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:39,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:39,313.313 INFO    ] No update needed
[2026-08-25 04:47:39,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 04:47:39,351.351 INFO    ] 200
[2026-08-25 04:47:39,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:39,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:47:39,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:39,447.447 INFO    ] No camera update needed
[2026-08-25 04:47:39,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:47:39,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:47:39,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:47:39,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:47:41,506.506 INFO    ] ================================================
[2026-08-25 04:47:41,521.521 INFO    ] Launching Daemon at Tue Aug 25 04:47:41 IST 2026
[2026-08-25 04:47:41,533.533 INFO    ] ================================================
[2026-08-25 04:47:42,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:47:42
[2026-08-25 04:47:42,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:47:43,060.060 INFO    ] Initializing speech engine...
[2026-08-25 04:47:43,070.070 INFO    ] 2026-08-25 04:47:43
[2026-08-25 04:47:43,349.349 INFO    ] 2026-08-25 04:47:43
[2026-08-25 04:47:43,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:47:43,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:47:43,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:47:43,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:47:43,852.852 INFO    ] time= 25/08/2026 04:47:43
[2026-08-25 04:47:43,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:47:43,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:47:44,080.080 INFO    ] No existing commands found in stream
[2026-08-25 04:47:49,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:47:49,108.108 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 04:47:52,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:47:52,783.783 INFO    ] Checking for system updates...
[2026-08-25 04:47:52,822.822 INFO    ] 200
[2026-08-25 04:47:52,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:52,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:52,883.883 INFO    ] No update needed
[2026-08-25 04:47:52,885.885 INFO    ] Checking for camera pi updates...
[2026-08-25 04:47:52,918.918 INFO    ] 200
[2026-08-25 04:47:52,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:47:52,965.965 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:47:53,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:47:53,111.111 INFO    ] No camera update needed
[2026-08-25 04:47:53,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:47:53,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:47:53,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:47:53,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:47:55,166.166 INFO    ] ================================================
[2026-08-25 04:47:55,182.182 INFO    ] Launching Daemon at Tue Aug 25 04:47:55 IST 2026
[2026-08-25 04:47:55,194.194 INFO    ] ================================================
[2026-08-25 04:47:55,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:47:55
[2026-08-25 04:47:56,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:47:56,597.597 INFO    ] Initializing speech engine...
[2026-08-25 04:47:56,621.621 INFO    ] 2026-08-25 04:47:56
[2026-08-25 04:47:56,886.886 INFO    ] 2026-08-25 04:47:56
[2026-08-25 04:47:56,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:47:57,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:47:57,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:47:57,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:47:57,269.269 INFO    ] time= 25/08/2026 04:47:57
[2026-08-25 04:47:57,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:47:57,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:47:57,373.373 INFO    ] No existing commands found in stream
[2026-08-25 04:48:02,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:48:02,390.390 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 04:48:05,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:48:05,359.359 INFO    ] Checking for system updates...
[2026-08-25 04:48:05,397.397 INFO    ] 200
[2026-08-25 04:48:05,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:05,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:48:05,454.454 INFO    ] No update needed
[2026-08-25 04:48:05,457.457 INFO    ] Checking for camera pi updates...
[2026-08-25 04:48:05,492.492 INFO    ] 200
[2026-08-25 04:48:05,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:05,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:48:05,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:48:05,586.586 INFO    ] No camera update needed
[2026-08-25 04:48:05,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:48:05,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:48:05,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:48:05,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:48:07,641.641 INFO    ] ================================================
[2026-08-25 04:48:07,657.657 INFO    ] Launching Daemon at Tue Aug 25 04:48:07 IST 2026
[2026-08-25 04:48:07,668.668 INFO    ] ================================================
[2026-08-25 04:48:08,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:48:08
[2026-08-25 04:48:08,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:48:09,072.072 INFO    ] Initializing speech engine...
[2026-08-25 04:48:09,096.096 INFO    ] 2026-08-25 04:48:09
[2026-08-25 04:48:09,361.361 INFO    ] 2026-08-25 04:48:09
[2026-08-25 04:48:09,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:48:09,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:48:09,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:48:09,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:48:09,719.719 INFO    ] time= 25/08/2026 04:48:09
[2026-08-25 04:48:09,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:48:09,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:48:09,851.851 INFO    ] No existing commands found in stream
[2026-08-25 04:48:14,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:48:14,890.890 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 04:48:16,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:48:16,148.148 INFO    ] Checking for system updates...
[2026-08-25 04:48:16,183.183 INFO    ] 200
[2026-08-25 04:48:16,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:16,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:48:16,244.244 INFO    ] No update needed
[2026-08-25 04:48:16,246.246 INFO    ] Checking for camera pi updates...
[2026-08-25 04:48:16,282.282 INFO    ] 200
[2026-08-25 04:48:16,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:16,325.325 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:48:16,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:48:16,375.375 INFO    ] No camera update needed
[2026-08-25 04:48:16,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:48:16,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:48:16,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:48:16,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:48:18,429.429 INFO    ] ================================================
[2026-08-25 04:48:18,445.445 INFO    ] Launching Daemon at Tue Aug 25 04:48:18 IST 2026
[2026-08-25 04:48:18,456.456 INFO    ] ================================================
[2026-08-25 04:48:19,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:48:19
[2026-08-25 04:48:19,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:48:19,962.962 INFO    ] Initializing speech engine...
[2026-08-25 04:48:19,976.976 INFO    ] 2026-08-25 04:48:19
[2026-08-25 04:48:20,251.251 INFO    ] 2026-08-25 04:48:20
[2026-08-25 04:48:20,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:48:20,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:48:20,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:48:20,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:48:20,749.749 INFO    ] time= 25/08/2026 04:48:20
[2026-08-25 04:48:20,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:48:20,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:48:20,943.943 INFO    ] No existing commands found in stream
[2026-08-25 04:48:25,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:48:25,961.961 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 04:48:28,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:48:28,056.056 INFO    ] Checking for system updates...
[2026-08-25 04:48:28,094.094 INFO    ] 200
[2026-08-25 04:48:28,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:28,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:48:28,157.157 INFO    ] No update needed
[2026-08-25 04:48:28,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 04:48:28,193.193 INFO    ] 200
[2026-08-25 04:48:28,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:28,236.236 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:48:28,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:48:28,283.283 INFO    ] No camera update needed
[2026-08-25 04:48:28,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:48:28,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:48:28,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:48:28,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:48:30,337.337 INFO    ] ================================================
[2026-08-25 04:48:30,353.353 INFO    ] Launching Daemon at Tue Aug 25 04:48:30 IST 2026
[2026-08-25 04:48:30,364.364 INFO    ] ================================================
[2026-08-25 04:48:30,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:48:30
[2026-08-25 04:48:31,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:48:31,893.893 INFO    ] Initializing speech engine...
[2026-08-25 04:48:31,904.904 INFO    ] 2026-08-25 04:48:31
[2026-08-25 04:48:32,200.200 INFO    ] 2026-08-25 04:48:32
[2026-08-25 04:48:32,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:48:32,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:48:32,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:48:32,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:48:32,697.697 INFO    ] time= 25/08/2026 04:48:32
[2026-08-25 04:48:32,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:48:32,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:48:32,899.899 INFO    ] No existing commands found in stream
[2026-08-25 04:48:37,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:48:37,914.914 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 04:48:42,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:48:42,044.044 INFO    ] Checking for system updates...
[2026-08-25 04:48:43,588.588 INFO    ] 200
[2026-08-25 04:48:43,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:43,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:48:43,645.645 INFO    ] No update needed
[2026-08-25 04:48:43,648.648 INFO    ] Checking for camera pi updates...
[2026-08-25 04:48:43,681.681 INFO    ] 200
[2026-08-25 04:48:43,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:43,725.725 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:48:43,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:48:43,771.771 INFO    ] No camera update needed
[2026-08-25 04:48:43,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:48:43,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:48:43,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:48:43,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:48:45,826.826 INFO    ] ================================================
[2026-08-25 04:48:45,842.842 INFO    ] Launching Daemon at Tue Aug 25 04:48:45 IST 2026
[2026-08-25 04:48:45,853.853 INFO    ] ================================================
[2026-08-25 04:48:46,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:48:46
[2026-08-25 04:48:47,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:48:47,355.355 INFO    ] Initializing speech engine...
[2026-08-25 04:48:47,367.367 INFO    ] 2026-08-25 04:48:47
[2026-08-25 04:48:47,643.643 INFO    ] 2026-08-25 04:48:47
[2026-08-25 04:48:47,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:48:47,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:48:47,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:48:48,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:48:48,178.178 INFO    ] time= 25/08/2026 04:48:48
[2026-08-25 04:48:48,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:48:48,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:48:48,316.316 INFO    ] No existing commands found in stream
[2026-08-25 04:48:53,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:48:53,342.342 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 04:48:55,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:48:55,064.064 INFO    ] Checking for system updates...
[2026-08-25 04:48:55,100.100 INFO    ] 200
[2026-08-25 04:48:55,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:55,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:48:55,162.162 INFO    ] No update needed
[2026-08-25 04:48:55,164.164 INFO    ] Checking for camera pi updates...
[2026-08-25 04:48:55,200.200 INFO    ] 200
[2026-08-25 04:48:55,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:48:55,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:48:55,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:48:55,292.292 INFO    ] No camera update needed
[2026-08-25 04:48:55,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:48:55,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:48:55,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:48:55,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:48:57,346.346 INFO    ] ================================================
[2026-08-25 04:48:57,362.362 INFO    ] Launching Daemon at Tue Aug 25 04:48:57 IST 2026
[2026-08-25 04:48:57,373.373 INFO    ] ================================================
[2026-08-25 04:48:57,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:48:57
[2026-08-25 04:48:58,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:48:58,834.834 INFO    ] Initializing speech engine...
[2026-08-25 04:48:58,841.841 INFO    ] 2026-08-25 04:48:58
[2026-08-25 04:48:59,102.102 INFO    ] 2026-08-25 04:48:59
[2026-08-25 04:48:59,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:48:59,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:48:59,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:48:59,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:48:59,506.506 INFO    ] time= 25/08/2026 04:48:59
[2026-08-25 04:48:59,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:48:59,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:48:59,667.667 INFO    ] No existing commands found in stream
[2026-08-25 04:49:04,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:49:04,700.700 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 04:49:05,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:49:05,943.943 INFO    ] Checking for system updates...
[2026-08-25 04:49:05,979.979 INFO    ] 200
[2026-08-25 04:49:05,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:06,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:49:06,038.038 INFO    ] No update needed
[2026-08-25 04:49:06,040.040 INFO    ] Checking for camera pi updates...
[2026-08-25 04:49:06,075.075 INFO    ] 200
[2026-08-25 04:49:06,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:06,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:49:06,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:49:06,163.163 INFO    ] No camera update needed
[2026-08-25 04:49:06,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:49:06,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:49:06,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:49:06,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:49:08,218.218 INFO    ] ================================================
[2026-08-25 04:49:08,234.234 INFO    ] Launching Daemon at Tue Aug 25 04:49:08 IST 2026
[2026-08-25 04:49:08,245.245 INFO    ] ================================================
[2026-08-25 04:49:08,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:49:08
[2026-08-25 04:49:09,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:49:09,690.690 INFO    ] Initializing speech engine...
[2026-08-25 04:49:09,709.709 INFO    ] 2026-08-25 04:49:09
[2026-08-25 04:49:09,960.960 INFO    ] 2026-08-25 04:49:09
[2026-08-25 04:49:09,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:49:10,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:49:10,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:49:10,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:49:10,330.330 INFO    ] time= 25/08/2026 04:49:10
[2026-08-25 04:49:10,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:49:10,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:49:10,517.517 INFO    ] No existing commands found in stream
[2026-08-25 04:49:15,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:49:15,540.540 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 04:49:20,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:49:20,022.022 INFO    ] Checking for system updates...
[2026-08-25 04:49:20,058.058 INFO    ] 200
[2026-08-25 04:49:20,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:20,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:49:20,123.123 INFO    ] No update needed
[2026-08-25 04:49:20,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 04:49:20,164.164 INFO    ] 200
[2026-08-25 04:49:20,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:20,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:49:20,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:49:20,265.265 INFO    ] No camera update needed
[2026-08-25 04:49:20,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:49:20,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:49:20,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:49:20,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:49:22,321.321 INFO    ] ================================================
[2026-08-25 04:49:22,338.338 INFO    ] Launching Daemon at Tue Aug 25 04:49:22 IST 2026
[2026-08-25 04:49:22,348.348 INFO    ] ================================================
[2026-08-25 04:49:22,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:49:22
[2026-08-25 04:49:23,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:49:23,774.774 INFO    ] Initializing speech engine...
[2026-08-25 04:49:23,787.787 INFO    ] 2026-08-25 04:49:23
[2026-08-25 04:49:24,037.037 INFO    ] 2026-08-25 04:49:24
[2026-08-25 04:49:24,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:49:24,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:49:24,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:49:24,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:49:24,488.488 INFO    ] time= 25/08/2026 04:49:24
[2026-08-25 04:49:24,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:49:24,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:49:24,746.746 INFO    ] No existing commands found in stream
[2026-08-25 04:49:29,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:49:29,762.762 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 04:49:32,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:49:32,851.851 INFO    ] Checking for system updates...
[2026-08-25 04:49:32,889.889 INFO    ] 200
[2026-08-25 04:49:32,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:32,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:49:32,951.951 INFO    ] No update needed
[2026-08-25 04:49:32,954.954 INFO    ] Checking for camera pi updates...
[2026-08-25 04:49:32,990.990 INFO    ] 200
[2026-08-25 04:49:32,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:33,034.034 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:49:33,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:49:33,090.090 INFO    ] No camera update needed
[2026-08-25 04:49:33,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:49:33,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:49:33,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:49:33,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:49:35,146.146 INFO    ] ================================================
[2026-08-25 04:49:35,162.162 INFO    ] Launching Daemon at Tue Aug 25 04:49:35 IST 2026
[2026-08-25 04:49:35,173.173 INFO    ] ================================================
[2026-08-25 04:49:35,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:49:35
[2026-08-25 04:49:36,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:49:36,578.578 INFO    ] Initializing speech engine...
[2026-08-25 04:49:36,584.584 INFO    ] 2026-08-25 04:49:36
[2026-08-25 04:49:36,875.875 INFO    ] 2026-08-25 04:49:36
[2026-08-25 04:49:36,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:49:37,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:49:37,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:49:37,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:49:37,250.250 INFO    ] time= 25/08/2026 04:49:37
[2026-08-25 04:49:37,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:49:37,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:49:37,377.377 INFO    ] No existing commands found in stream
[2026-08-25 04:49:42,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:49:42,393.393 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 04:49:46,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:49:46,575.575 INFO    ] Checking for system updates...
[2026-08-25 04:49:46,610.610 INFO    ] 200
[2026-08-25 04:49:46,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:46,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:49:46,669.669 INFO    ] No update needed
[2026-08-25 04:49:46,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 04:49:46,706.706 INFO    ] 200
[2026-08-25 04:49:46,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:46,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:49:46,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:49:46,810.810 INFO    ] No camera update needed
[2026-08-25 04:49:46,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:49:46,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:49:46,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:49:46,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:49:48,865.865 INFO    ] ================================================
[2026-08-25 04:49:48,880.880 INFO    ] Launching Daemon at Tue Aug 25 04:49:48 IST 2026
[2026-08-25 04:49:48,891.891 INFO    ] ================================================
[2026-08-25 04:49:49,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:49:49
[2026-08-25 04:49:50,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:49:50,291.291 INFO    ] Initializing speech engine...
[2026-08-25 04:49:50,298.298 INFO    ] 2026-08-25 04:49:50
[2026-08-25 04:49:50,577.577 INFO    ] 2026-08-25 04:49:50
[2026-08-25 04:49:50,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:49:50,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:49:50,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:49:50,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:49:50,967.967 INFO    ] time= 25/08/2026 04:49:50
[2026-08-25 04:49:50,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:49:51,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:49:51,174.174 INFO    ] No existing commands found in stream
[2026-08-25 04:49:56,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:49:56,188.188 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 04:49:59,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:49:59,361.361 INFO    ] Checking for system updates...
[2026-08-25 04:49:59,397.397 INFO    ] 200
[2026-08-25 04:49:59,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:59,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:49:59,457.457 INFO    ] No update needed
[2026-08-25 04:49:59,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 04:49:59,498.498 INFO    ] 200
[2026-08-25 04:49:59,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:49:59,550.550 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:49:59,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:49:59,694.694 INFO    ] No camera update needed
[2026-08-25 04:49:59,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:49:59,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:49:59,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:49:59,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:50:01,778.778 INFO    ] ================================================
[2026-08-25 04:50:01,836.836 INFO    ] Launching Daemon at Tue Aug 25 04:50:01 IST 2026
[2026-08-25 04:50:01,859.859 INFO    ] ================================================
[2026-08-25 04:50:02,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:50:02
[2026-08-25 04:50:03,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:50:03,726.726 INFO    ] Initializing speech engine...
[2026-08-25 04:50:03,731.731 INFO    ] 2026-08-25 04:50:03
[2026-08-25 04:50:04,013.013 INFO    ] 2026-08-25 04:50:03
[2026-08-25 04:50:04,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:50:04,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:50:04,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:50:04,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:50:04,498.498 INFO    ] time= 25/08/2026 04:50:04
[2026-08-25 04:50:04,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:50:04,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:50:04,726.726 INFO    ] No existing commands found in stream
[2026-08-25 04:50:09,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:50:09,754.754 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 04:50:11,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:50:11,927.927 INFO    ] Checking for system updates...
[2026-08-25 04:50:11,962.962 INFO    ] 200
[2026-08-25 04:50:11,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:12,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:50:12,025.025 INFO    ] No update needed
[2026-08-25 04:50:12,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 04:50:12,065.065 INFO    ] 200
[2026-08-25 04:50:12,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:12,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:50:12,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:50:12,162.162 INFO    ] No camera update needed
[2026-08-25 04:50:12,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:50:12,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:50:12,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:50:12,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:50:14,216.216 INFO    ] ================================================
[2026-08-25 04:50:14,235.235 INFO    ] Launching Daemon at Tue Aug 25 04:50:14 IST 2026
[2026-08-25 04:50:14,246.246 INFO    ] ================================================
[2026-08-25 04:50:14,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:50:14
[2026-08-25 04:50:15,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:50:15,854.854 INFO    ] Initializing speech engine...
[2026-08-25 04:50:15,861.861 INFO    ] 2026-08-25 04:50:15
[2026-08-25 04:50:16,131.131 INFO    ] 2026-08-25 04:50:16
[2026-08-25 04:50:16,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:50:16,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:50:16,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:50:16,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:50:16,636.636 INFO    ] time= 25/08/2026 04:50:16
[2026-08-25 04:50:16,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:50:16,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:50:16,829.829 INFO    ] No existing commands found in stream
[2026-08-25 04:50:21,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:50:21,848.848 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 04:50:25,363.363 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:50:25,366.366 INFO    ] Checking for system updates...
[2026-08-25 04:50:25,402.402 INFO    ] 200
[2026-08-25 04:50:25,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:25,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:50:25,468.468 INFO    ] No update needed
[2026-08-25 04:50:25,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 04:50:25,505.505 INFO    ] 200
[2026-08-25 04:50:25,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:25,549.549 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:50:25,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:50:25,598.598 INFO    ] No camera update needed
[2026-08-25 04:50:25,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:50:25,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:50:25,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:50:25,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:50:27,655.655 INFO    ] ================================================
[2026-08-25 04:50:27,671.671 INFO    ] Launching Daemon at Tue Aug 25 04:50:27 IST 2026
[2026-08-25 04:50:27,682.682 INFO    ] ================================================
[2026-08-25 04:50:28,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:50:28
[2026-08-25 04:50:28,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:50:29,108.108 INFO    ] Initializing speech engine...
[2026-08-25 04:50:29,117.117 INFO    ] 2026-08-25 04:50:29
[2026-08-25 04:50:29,380.380 INFO    ] 2026-08-25 04:50:29
[2026-08-25 04:50:29,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:50:29,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:50:29,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:50:29,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:50:29,782.782 INFO    ] time= 25/08/2026 04:50:29
[2026-08-25 04:50:29,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:50:29,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:50:29,882.882 INFO    ] No existing commands found in stream
[2026-08-25 04:50:34,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:50:34,915.915 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 04:50:36,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:50:36,535.535 INFO    ] Checking for system updates...
[2026-08-25 04:50:36,570.570 INFO    ] 200
[2026-08-25 04:50:36,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:36,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:50:36,627.627 INFO    ] No update needed
[2026-08-25 04:50:36,629.629 INFO    ] Checking for camera pi updates...
[2026-08-25 04:50:36,662.662 INFO    ] 200
[2026-08-25 04:50:36,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:36,705.705 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:50:36,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:50:36,756.756 INFO    ] No camera update needed
[2026-08-25 04:50:36,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:50:36,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:50:36,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:50:36,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:50:38,810.810 INFO    ] ================================================
[2026-08-25 04:50:38,825.825 INFO    ] Launching Daemon at Tue Aug 25 04:50:38 IST 2026
[2026-08-25 04:50:38,836.836 INFO    ] ================================================
[2026-08-25 04:50:39,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:50:39
[2026-08-25 04:50:40,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:50:40,421.421 INFO    ] Initializing speech engine...
[2026-08-25 04:50:40,430.430 INFO    ] 2026-08-25 04:50:40
[2026-08-25 04:50:40,716.716 INFO    ] 2026-08-25 04:50:40
[2026-08-25 04:50:40,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:50:41,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:50:41,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:50:41,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:50:41,253.253 INFO    ] time= 25/08/2026 04:50:41
[2026-08-25 04:50:41,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:50:41,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:50:41,403.403 INFO    ] No existing commands found in stream
[2026-08-25 04:50:46,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:50:46,422.422 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 04:50:50,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:50:50,879.879 INFO    ] Checking for system updates...
[2026-08-25 04:50:50,928.928 INFO    ] 200
[2026-08-25 04:50:50,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:50,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:50:50,990.990 INFO    ] No update needed
[2026-08-25 04:50:50,993.993 INFO    ] Checking for camera pi updates...
[2026-08-25 04:50:51,028.028 INFO    ] 200
[2026-08-25 04:50:51,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:50:51,070.070 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:50:51,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:50:51,120.120 INFO    ] No camera update needed
[2026-08-25 04:50:51,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:50:51,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:50:51,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:50:51,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:50:53,174.174 INFO    ] ================================================
[2026-08-25 04:50:53,189.189 INFO    ] Launching Daemon at Tue Aug 25 04:50:53 IST 2026
[2026-08-25 04:50:53,200.200 INFO    ] ================================================
[2026-08-25 04:50:53,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:50:53
[2026-08-25 04:50:54,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:50:54,787.787 INFO    ] Initializing speech engine...
[2026-08-25 04:50:54,796.796 INFO    ] 2026-08-25 04:50:54
[2026-08-25 04:50:55,066.066 INFO    ] 2026-08-25 04:50:55
[2026-08-25 04:50:55,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:50:55,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:50:55,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:50:55,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:50:55,561.561 INFO    ] time= 25/08/2026 04:50:55
[2026-08-25 04:50:55,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:50:55,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:50:55,766.766 INFO    ] No existing commands found in stream
[2026-08-25 04:51:00,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:51:00,784.784 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 04:51:04,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:51:04,407.407 INFO    ] Checking for system updates...
[2026-08-25 04:51:04,444.444 INFO    ] 200
[2026-08-25 04:51:04,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:04,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:51:04,507.507 INFO    ] No update needed
[2026-08-25 04:51:04,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 04:51:04,544.544 INFO    ] 200
[2026-08-25 04:51:04,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:04,591.591 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:51:04,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:51:04,647.647 INFO    ] No camera update needed
[2026-08-25 04:51:04,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:51:04,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:51:04,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:51:04,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:51:06,702.702 INFO    ] ================================================
[2026-08-25 04:51:06,718.718 INFO    ] Launching Daemon at Tue Aug 25 04:51:06 IST 2026
[2026-08-25 04:51:06,730.730 INFO    ] ================================================
[2026-08-25 04:51:07,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:51:07
[2026-08-25 04:51:07,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:51:08,293.293 INFO    ] Initializing speech engine...
[2026-08-25 04:51:08,299.299 INFO    ] 2026-08-25 04:51:08
[2026-08-25 04:51:08,560.560 INFO    ] 2026-08-25 04:51:08
[2026-08-25 04:51:08,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:51:08,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:51:08,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:51:09,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:51:09,071.071 INFO    ] time= 25/08/2026 04:51:09
[2026-08-25 04:51:09,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:51:09,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:51:09,270.270 INFO    ] No existing commands found in stream
[2026-08-25 04:51:14,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:51:14,296.296 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 04:51:17,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:51:17,338.338 INFO    ] Checking for system updates...
[2026-08-25 04:51:17,375.375 INFO    ] 200
[2026-08-25 04:51:17,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:17,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:17,433.433 INFO    ] No update needed
[2026-08-25 04:51:17,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 04:51:17,471.471 INFO    ] 200
[2026-08-25 04:51:17,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:17,514.514 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:51:17,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:17,570.570 INFO    ] No camera update needed
[2026-08-25 04:51:17,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:51:17,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:51:17,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:51:17,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:51:19,624.624 INFO    ] ================================================
[2026-08-25 04:51:19,639.639 INFO    ] Launching Daemon at Tue Aug 25 04:51:19 IST 2026
[2026-08-25 04:51:19,650.650 INFO    ] ================================================
[2026-08-25 04:51:20,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:51:20
[2026-08-25 04:51:20,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:51:21,071.071 INFO    ] Initializing speech engine...
[2026-08-25 04:51:21,080.080 INFO    ] 2026-08-25 04:51:21
[2026-08-25 04:51:21,340.340 INFO    ] 2026-08-25 04:51:21
[2026-08-25 04:51:21,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:51:21,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:51:21,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:51:21,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:51:21,808.808 INFO    ] time= 25/08/2026 04:51:21
[2026-08-25 04:51:21,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:51:21,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:51:22,029.029 INFO    ] No existing commands found in stream
[2026-08-25 04:51:27,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:51:27,050.050 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 04:51:30,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:51:30,949.949 INFO    ] Checking for system updates...
[2026-08-25 04:51:31,006.006 INFO    ] 200
[2026-08-25 04:51:31,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:31,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:31,073.073 INFO    ] No update needed
[2026-08-25 04:51:31,079.079 INFO    ] Checking for camera pi updates...
[2026-08-25 04:51:31,158.158 INFO    ] 200
[2026-08-25 04:51:31,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:31,205.205 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:51:31,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:31,257.257 INFO    ] No camera update needed
[2026-08-25 04:51:31,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:51:31,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:51:31,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:51:31,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:51:33,316.316 INFO    ] ================================================
[2026-08-25 04:51:33,330.330 INFO    ] Launching Daemon at Tue Aug 25 04:51:33 IST 2026
[2026-08-25 04:51:33,341.341 INFO    ] ================================================
[2026-08-25 04:51:33,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:51:33
[2026-08-25 04:51:34,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:51:34,822.822 INFO    ] Initializing speech engine...
[2026-08-25 04:51:34,835.835 INFO    ] 2026-08-25 04:51:34
[2026-08-25 04:51:35,104.104 INFO    ] 2026-08-25 04:51:35
[2026-08-25 04:51:35,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:51:35,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:51:35,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:51:35,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:51:35,584.584 INFO    ] time= 25/08/2026 04:51:35
[2026-08-25 04:51:35,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:51:35,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:51:35,787.787 INFO    ] No existing commands found in stream
[2026-08-25 04:51:40,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:51:40,821.821 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 04:51:43,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:51:43,577.577 INFO    ] Checking for system updates...
[2026-08-25 04:51:43,616.616 INFO    ] 200
[2026-08-25 04:51:43,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:43,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:43,681.681 INFO    ] No update needed
[2026-08-25 04:51:43,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 04:51:43,716.716 INFO    ] 200
[2026-08-25 04:51:43,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:43,759.759 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:51:43,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:43,809.809 INFO    ] No camera update needed
[2026-08-25 04:51:43,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:51:43,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:51:43,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:51:43,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:51:45,865.865 INFO    ] ================================================
[2026-08-25 04:51:45,880.880 INFO    ] Launching Daemon at Tue Aug 25 04:51:45 IST 2026
[2026-08-25 04:51:45,890.890 INFO    ] ================================================
[2026-08-25 04:51:46,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:51:46
[2026-08-25 04:51:47,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:51:47,401.401 INFO    ] Initializing speech engine...
[2026-08-25 04:51:47,416.416 INFO    ] 2026-08-25 04:51:47
[2026-08-25 04:51:47,725.725 INFO    ] 2026-08-25 04:51:47
[2026-08-25 04:51:47,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:51:48,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:51:48,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:51:48,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:51:48,231.231 INFO    ] time= 25/08/2026 04:51:48
[2026-08-25 04:51:48,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:51:48,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:51:48,377.377 INFO    ] No existing commands found in stream
[2026-08-25 04:51:53,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:51:53,401.401 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 04:51:55,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:51:55,428.428 INFO    ] Checking for system updates...
[2026-08-25 04:51:55,467.467 INFO    ] 200
[2026-08-25 04:51:55,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:55,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:55,529.529 INFO    ] No update needed
[2026-08-25 04:51:55,531.531 INFO    ] Checking for camera pi updates...
[2026-08-25 04:51:55,568.568 INFO    ] 200
[2026-08-25 04:51:55,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:51:55,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:51:55,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:51:55,660.660 INFO    ] No camera update needed
[2026-08-25 04:51:55,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:51:55,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:51:55,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:51:55,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:51:57,717.717 INFO    ] ================================================
[2026-08-25 04:51:57,732.732 INFO    ] Launching Daemon at Tue Aug 25 04:51:57 IST 2026
[2026-08-25 04:51:57,743.743 INFO    ] ================================================
[2026-08-25 04:51:58,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:51:58
[2026-08-25 04:51:58,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:51:59,172.172 INFO    ] Initializing speech engine...
[2026-08-25 04:51:59,180.180 INFO    ] 2026-08-25 04:51:59
[2026-08-25 04:51:59,435.435 INFO    ] 2026-08-25 04:51:59
[2026-08-25 04:51:59,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:51:59,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:51:59,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:51:59,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:51:59,901.901 INFO    ] time= 25/08/2026 04:51:59
[2026-08-25 04:51:59,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:51:59,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:52:00,114.114 INFO    ] No existing commands found in stream
[2026-08-25 04:52:05,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:52:05,144.144 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 04:52:08,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:52:08,465.465 INFO    ] Checking for system updates...
[2026-08-25 04:52:08,501.501 INFO    ] 200
[2026-08-25 04:52:08,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:08,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:52:08,569.569 INFO    ] No update needed
[2026-08-25 04:52:08,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 04:52:08,606.606 INFO    ] 200
[2026-08-25 04:52:08,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:08,650.650 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:52:08,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:52:08,712.712 INFO    ] No camera update needed
[2026-08-25 04:52:08,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:52:08,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:52:08,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:52:08,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:52:10,771.771 INFO    ] ================================================
[2026-08-25 04:52:10,787.787 INFO    ] Launching Daemon at Tue Aug 25 04:52:10 IST 2026
[2026-08-25 04:52:10,798.798 INFO    ] ================================================
[2026-08-25 04:52:11,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:52:11
[2026-08-25 04:52:12,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:52:12,447.447 INFO    ] Initializing speech engine...
[2026-08-25 04:52:12,454.454 INFO    ] 2026-08-25 04:52:12
[2026-08-25 04:52:12,746.746 INFO    ] 2026-08-25 04:52:12
[2026-08-25 04:52:12,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:52:13,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:52:13,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:52:13,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:52:13,277.277 INFO    ] time= 25/08/2026 04:52:13
[2026-08-25 04:52:13,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:52:13,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:52:13,475.475 INFO    ] No existing commands found in stream
[2026-08-25 04:52:18,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:52:18,504.504 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 04:52:22,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:52:22,911.911 INFO    ] Checking for system updates...
[2026-08-25 04:52:22,948.948 INFO    ] 200
[2026-08-25 04:52:22,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:23,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:52:23,007.007 INFO    ] No update needed
[2026-08-25 04:52:23,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 04:52:23,045.045 INFO    ] 200
[2026-08-25 04:52:23,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:23,090.090 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:52:23,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:52:23,147.147 INFO    ] No camera update needed
[2026-08-25 04:52:23,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:52:23,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:52:23,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:52:23,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:52:25,211.211 INFO    ] ================================================
[2026-08-25 04:52:25,227.227 INFO    ] Launching Daemon at Tue Aug 25 04:52:25 IST 2026
[2026-08-25 04:52:25,238.238 INFO    ] ================================================
[2026-08-25 04:52:25,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:52:25
[2026-08-25 04:52:26,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:52:26,648.648 INFO    ] Initializing speech engine...
[2026-08-25 04:52:26,660.660 INFO    ] 2026-08-25 04:52:26
[2026-08-25 04:52:26,923.923 INFO    ] 2026-08-25 04:52:26
[2026-08-25 04:52:26,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:52:27,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:52:27,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:52:27,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:52:27,398.398 INFO    ] time= 25/08/2026 04:52:27
[2026-08-25 04:52:27,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:52:27,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:52:27,634.634 INFO    ] No existing commands found in stream
[2026-08-25 04:52:32,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:52:32,649.649 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 04:52:35,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:52:35,193.193 INFO    ] Checking for system updates...
[2026-08-25 04:52:35,230.230 INFO    ] 200
[2026-08-25 04:52:35,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:35,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:52:35,297.297 INFO    ] No update needed
[2026-08-25 04:52:35,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 04:52:35,338.338 INFO    ] 200
[2026-08-25 04:52:35,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:35,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:52:35,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:52:35,436.436 INFO    ] No camera update needed
[2026-08-25 04:52:35,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:52:35,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:52:35,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:52:35,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:52:37,495.495 INFO    ] ================================================
[2026-08-25 04:52:37,511.511 INFO    ] Launching Daemon at Tue Aug 25 04:52:37 IST 2026
[2026-08-25 04:52:37,522.522 INFO    ] ================================================
[2026-08-25 04:52:38,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:52:38
[2026-08-25 04:52:38,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:52:38,934.934 INFO    ] Initializing speech engine...
[2026-08-25 04:52:38,943.943 INFO    ] 2026-08-25 04:52:38
[2026-08-25 04:52:39,188.188 INFO    ] 2026-08-25 04:52:39
[2026-08-25 04:52:39,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:52:39,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:52:39,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:52:39,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:52:39,554.554 INFO    ] time= 25/08/2026 04:52:39
[2026-08-25 04:52:39,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:52:39,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:52:39,736.736 INFO    ] No existing commands found in stream
[2026-08-25 04:52:44,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:52:44,761.761 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 04:52:47,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:52:47,069.069 INFO    ] Checking for system updates...
[2026-08-25 04:52:47,105.105 INFO    ] 200
[2026-08-25 04:52:47,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:47,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:52:47,161.161 INFO    ] No update needed
[2026-08-25 04:52:47,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 04:52:47,196.196 INFO    ] 200
[2026-08-25 04:52:47,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:47,247.247 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:52:47,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:52:47,304.304 INFO    ] No camera update needed
[2026-08-25 04:52:47,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:52:47,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:52:47,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:52:47,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:52:49,359.359 INFO    ] ================================================
[2026-08-25 04:52:49,375.375 INFO    ] Launching Daemon at Tue Aug 25 04:52:49 IST 2026
[2026-08-25 04:52:49,386.386 INFO    ] ================================================
[2026-08-25 04:52:49,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:52:49
[2026-08-25 04:52:50,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:52:50,799.799 INFO    ] Initializing speech engine...
[2026-08-25 04:52:50,806.806 INFO    ] 2026-08-25 04:52:50
[2026-08-25 04:52:51,103.103 INFO    ] 2026-08-25 04:52:51
[2026-08-25 04:52:51,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:52:51,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:52:51,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:52:51,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:52:51,484.484 INFO    ] time= 25/08/2026 04:52:51
[2026-08-25 04:52:51,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:52:51,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:52:51,611.611 INFO    ] No existing commands found in stream
[2026-08-25 04:52:56,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:52:56,626.626 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 04:52:59,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:52:59,468.468 INFO    ] Checking for system updates...
[2026-08-25 04:52:59,504.504 INFO    ] 200
[2026-08-25 04:52:59,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:59,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:52:59,570.570 INFO    ] No update needed
[2026-08-25 04:52:59,573.573 INFO    ] Checking for camera pi updates...
[2026-08-25 04:52:59,607.607 INFO    ] 200
[2026-08-25 04:52:59,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:52:59,651.651 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:52:59,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:52:59,702.702 INFO    ] No camera update needed
[2026-08-25 04:52:59,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:52:59,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:52:59,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:52:59,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:53:01,768.768 INFO    ] ================================================
[2026-08-25 04:53:01,804.804 INFO    ] Launching Daemon at Tue Aug 25 04:53:01 IST 2026
[2026-08-25 04:53:01,851.851 INFO    ] ================================================
[2026-08-25 04:53:02,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:53:02
[2026-08-25 04:53:03,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:53:03,496.496 INFO    ] Initializing speech engine...
[2026-08-25 04:53:03,504.504 INFO    ] 2026-08-25 04:53:03
[2026-08-25 04:53:03,781.781 INFO    ] 2026-08-25 04:53:03
[2026-08-25 04:53:03,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:53:04,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:53:04,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:53:04,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:53:04,157.157 INFO    ] time= 25/08/2026 04:53:04
[2026-08-25 04:53:04,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:53:04,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:53:04,281.281 INFO    ] No existing commands found in stream
[2026-08-25 04:53:09,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:53:09,297.297 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 04:53:12,895.895 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:53:12,897.897 INFO    ] Checking for system updates...
[2026-08-25 04:53:12,933.933 INFO    ] 200
[2026-08-25 04:53:12,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:12,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:53:12,990.990 INFO    ] No update needed
[2026-08-25 04:53:12,993.993 INFO    ] Checking for camera pi updates...
[2026-08-25 04:53:13,027.027 INFO    ] 200
[2026-08-25 04:53:13,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:13,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:53:13,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:53:13,119.119 INFO    ] No camera update needed
[2026-08-25 04:53:13,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:53:13,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:53:13,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:53:13,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:53:15,173.173 INFO    ] ================================================
[2026-08-25 04:53:15,188.188 INFO    ] Launching Daemon at Tue Aug 25 04:53:15 IST 2026
[2026-08-25 04:53:15,199.199 INFO    ] ================================================
[2026-08-25 04:53:15,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:53:15
[2026-08-25 04:53:16,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:53:16,838.838 INFO    ] Initializing speech engine...
[2026-08-25 04:53:16,846.846 INFO    ] 2026-08-25 04:53:16
[2026-08-25 04:53:17,148.148 INFO    ] 2026-08-25 04:53:17
[2026-08-25 04:53:17,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:53:17,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:53:17,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:53:17,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:53:17,657.657 INFO    ] time= 25/08/2026 04:53:17
[2026-08-25 04:53:17,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:53:17,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:53:17,810.810 INFO    ] No existing commands found in stream
[2026-08-25 04:53:22,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:53:22,830.830 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 04:53:23,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:53:23,962.962 INFO    ] Checking for system updates...
[2026-08-25 04:53:24,001.001 INFO    ] 200
[2026-08-25 04:53:24,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:24,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:53:24,073.073 INFO    ] No update needed
[2026-08-25 04:53:24,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 04:53:24,114.114 INFO    ] 200
[2026-08-25 04:53:24,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:24,163.163 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:53:24,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:53:24,215.215 INFO    ] No camera update needed
[2026-08-25 04:53:24,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:53:24,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:53:24,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:53:24,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:53:26,277.277 INFO    ] ================================================
[2026-08-25 04:53:26,292.292 INFO    ] Launching Daemon at Tue Aug 25 04:53:26 IST 2026
[2026-08-25 04:53:26,303.303 INFO    ] ================================================
[2026-08-25 04:53:26,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:53:26
[2026-08-25 04:53:27,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:53:27,727.727 INFO    ] Initializing speech engine...
[2026-08-25 04:53:27,742.742 INFO    ] 2026-08-25 04:53:27
[2026-08-25 04:53:27,999.999 INFO    ] 2026-08-25 04:53:27
[2026-08-25 04:53:28,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:53:28,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:53:28,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:53:28,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:53:28,481.481 INFO    ] time= 25/08/2026 04:53:28
[2026-08-25 04:53:28,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:53:28,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:53:28,673.673 INFO    ] No existing commands found in stream
[2026-08-25 04:53:33,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:53:33,703.703 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 04:53:37,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:53:37,581.581 INFO    ] Checking for system updates...
[2026-08-25 04:53:37,616.616 INFO    ] 200
[2026-08-25 04:53:37,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:37,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:53:37,673.673 INFO    ] No update needed
[2026-08-25 04:53:37,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 04:53:37,709.709 INFO    ] 200
[2026-08-25 04:53:37,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:37,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:53:37,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:53:37,802.802 INFO    ] No camera update needed
[2026-08-25 04:53:37,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:53:37,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:53:37,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:53:37,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:53:39,857.857 INFO    ] ================================================
[2026-08-25 04:53:39,872.872 INFO    ] Launching Daemon at Tue Aug 25 04:53:39 IST 2026
[2026-08-25 04:53:39,882.882 INFO    ] ================================================
[2026-08-25 04:53:40,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:53:40
[2026-08-25 04:53:41,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:53:41,297.297 INFO    ] Initializing speech engine...
[2026-08-25 04:53:41,315.315 INFO    ] 2026-08-25 04:53:41
[2026-08-25 04:53:41,562.562 INFO    ] 2026-08-25 04:53:41
[2026-08-25 04:53:41,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:53:41,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:53:41,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:53:42,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:53:42,023.023 INFO    ] time= 25/08/2026 04:53:42
[2026-08-25 04:53:42,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:53:42,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:53:42,196.196 INFO    ] No existing commands found in stream
[2026-08-25 04:53:47,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:53:47,215.215 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 04:53:47,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:53:47,740.740 INFO    ] Checking for system updates...
[2026-08-25 04:53:47,777.777 INFO    ] 200
[2026-08-25 04:53:47,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:47,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:53:47,835.835 INFO    ] No update needed
[2026-08-25 04:53:47,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 04:53:47,876.876 INFO    ] 200
[2026-08-25 04:53:47,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:47,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:53:47,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:53:47,990.990 INFO    ] No camera update needed
[2026-08-25 04:53:47,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:53:47,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:53:48,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:53:48,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:53:50,049.049 INFO    ] ================================================
[2026-08-25 04:53:50,065.065 INFO    ] Launching Daemon at Tue Aug 25 04:53:50 IST 2026
[2026-08-25 04:53:50,076.076 INFO    ] ================================================
[2026-08-25 04:53:50,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:53:50
[2026-08-25 04:53:51,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:53:51,491.491 INFO    ] Initializing speech engine...
[2026-08-25 04:53:51,500.500 INFO    ] 2026-08-25 04:53:51
[2026-08-25 04:53:51,746.746 INFO    ] 2026-08-25 04:53:51
[2026-08-25 04:53:51,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:53:51,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:53:51,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:53:52,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:53:52,120.120 INFO    ] time= 25/08/2026 04:53:52
[2026-08-25 04:53:52,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:53:52,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:53:52,297.297 INFO    ] No existing commands found in stream
[2026-08-25 04:53:57,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:53:57,328.328 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 04:53:57,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:53:57,893.893 INFO    ] Checking for system updates...
[2026-08-25 04:53:57,929.929 INFO    ] 200
[2026-08-25 04:53:57,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:57,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:53:57,988.988 INFO    ] No update needed
[2026-08-25 04:53:57,990.990 INFO    ] Checking for camera pi updates...
[2026-08-25 04:53:58,025.025 INFO    ] 200
[2026-08-25 04:53:58,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:53:58,069.069 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:53:58,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:53:58,121.121 INFO    ] No camera update needed
[2026-08-25 04:53:58,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:53:58,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:53:58,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:53:58,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:54:00,179.179 INFO    ] ================================================
[2026-08-25 04:54:00,193.193 INFO    ] Launching Daemon at Tue Aug 25 04:54:00 IST 2026
[2026-08-25 04:54:00,204.204 INFO    ] ================================================
[2026-08-25 04:54:00,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:54:00
[2026-08-25 04:54:01,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:54:01,938.938 INFO    ] Initializing speech engine...
[2026-08-25 04:54:01,942.942 INFO    ] 2026-08-25 04:54:01
[2026-08-25 04:54:02,415.415 INFO    ] 2026-08-25 04:54:02
[2026-08-25 04:54:02,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:54:02,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:54:02,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:54:02,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:54:02,886.886 INFO    ] time= 25/08/2026 04:54:02
[2026-08-25 04:54:02,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:54:02,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:54:03,085.085 INFO    ] No existing commands found in stream
[2026-08-25 04:54:08,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:54:08,125.125 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 04:54:10,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:54:10,899.899 INFO    ] Checking for system updates...
[2026-08-25 04:54:10,934.934 INFO    ] 200
[2026-08-25 04:54:10,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:10,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:54:10,992.992 INFO    ] No update needed
[2026-08-25 04:54:10,994.994 INFO    ] Checking for camera pi updates...
[2026-08-25 04:54:11,027.027 INFO    ] 200
[2026-08-25 04:54:11,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:11,070.070 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:54:11,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:54:11,221.221 INFO    ] No camera update needed
[2026-08-25 04:54:11,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:54:11,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:54:11,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:54:11,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:54:13,274.274 INFO    ] ================================================
[2026-08-25 04:54:13,289.289 INFO    ] Launching Daemon at Tue Aug 25 04:54:13 IST 2026
[2026-08-25 04:54:13,300.300 INFO    ] ================================================
[2026-08-25 04:54:13,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:54:13
[2026-08-25 04:54:14,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:54:14,751.751 INFO    ] Initializing speech engine...
[2026-08-25 04:54:14,760.760 INFO    ] 2026-08-25 04:54:14
[2026-08-25 04:54:15,021.021 INFO    ] 2026-08-25 04:54:15
[2026-08-25 04:54:15,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:54:15,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:54:15,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:54:15,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:54:15,563.563 INFO    ] time= 25/08/2026 04:54:15
[2026-08-25 04:54:15,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:54:15,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:54:15,712.712 INFO    ] No existing commands found in stream
[2026-08-25 04:54:20,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:54:20,730.730 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 04:54:24,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:54:24,953.953 INFO    ] Checking for system updates...
[2026-08-25 04:54:24,988.988 INFO    ] 200
[2026-08-25 04:54:24,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:25,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:54:25,052.052 INFO    ] No update needed
[2026-08-25 04:54:25,054.054 INFO    ] Checking for camera pi updates...
[2026-08-25 04:54:25,087.087 INFO    ] 200
[2026-08-25 04:54:25,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:25,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:54:25,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:54:25,176.176 INFO    ] No camera update needed
[2026-08-25 04:54:25,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:54:25,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:54:25,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:54:25,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:54:27,233.233 INFO    ] ================================================
[2026-08-25 04:54:27,248.248 INFO    ] Launching Daemon at Tue Aug 25 04:54:27 IST 2026
[2026-08-25 04:54:27,260.260 INFO    ] ================================================
[2026-08-25 04:54:27,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:54:27
[2026-08-25 04:54:28,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:54:28,681.681 INFO    ] Initializing speech engine...
[2026-08-25 04:54:28,689.689 INFO    ] 2026-08-25 04:54:28
[2026-08-25 04:54:28,939.939 INFO    ] 2026-08-25 04:54:28
[2026-08-25 04:54:28,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:54:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:54:29,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:54:29,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:54:29,388.388 INFO    ] time= 25/08/2026 04:54:29
[2026-08-25 04:54:29,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:54:29,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:54:29,627.627 INFO    ] No existing commands found in stream
[2026-08-25 04:54:34,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:54:34,652.652 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 04:54:36,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:54:36,462.462 INFO    ] Checking for system updates...
[2026-08-25 04:54:36,498.498 INFO    ] 200
[2026-08-25 04:54:36,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:36,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:54:36,557.557 INFO    ] No update needed
[2026-08-25 04:54:36,559.559 INFO    ] Checking for camera pi updates...
[2026-08-25 04:54:36,592.592 INFO    ] 200
[2026-08-25 04:54:36,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:36,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:54:36,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:54:36,685.685 INFO    ] No camera update needed
[2026-08-25 04:54:36,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:54:36,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:54:36,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:54:36,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:54:38,741.741 INFO    ] ================================================
[2026-08-25 04:54:38,757.757 INFO    ] Launching Daemon at Tue Aug 25 04:54:38 IST 2026
[2026-08-25 04:54:38,768.768 INFO    ] ================================================
[2026-08-25 04:54:39,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:54:39
[2026-08-25 04:54:40,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:54:40,415.415 INFO    ] Initializing speech engine...
[2026-08-25 04:54:40,429.429 INFO    ] 2026-08-25 04:54:40
[2026-08-25 04:54:40,699.699 INFO    ] 2026-08-25 04:54:40
[2026-08-25 04:54:40,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:54:40,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:54:40,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:54:41,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:54:41,197.197 INFO    ] time= 25/08/2026 04:54:41
[2026-08-25 04:54:41,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:54:41,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:54:41,396.396 INFO    ] No existing commands found in stream
[2026-08-25 04:54:46,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:54:46,422.422 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 04:54:47,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:54:47,471.471 INFO    ] Checking for system updates...
[2026-08-25 04:54:47,507.507 INFO    ] 200
[2026-08-25 04:54:47,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:47,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:54:47,564.564 INFO    ] No update needed
[2026-08-25 04:54:47,567.567 INFO    ] Checking for camera pi updates...
[2026-08-25 04:54:47,605.605 INFO    ] 200
[2026-08-25 04:54:47,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:47,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:54:47,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:54:47,703.703 INFO    ] No camera update needed
[2026-08-25 04:54:47,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:54:47,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:54:47,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:54:47,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:54:49,758.758 INFO    ] ================================================
[2026-08-25 04:54:49,774.774 INFO    ] Launching Daemon at Tue Aug 25 04:54:49 IST 2026
[2026-08-25 04:54:49,785.785 INFO    ] ================================================
[2026-08-25 04:54:50,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:54:50
[2026-08-25 04:54:50,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:54:51,214.214 INFO    ] Initializing speech engine...
[2026-08-25 04:54:51,223.223 INFO    ] 2026-08-25 04:54:51
[2026-08-25 04:54:51,471.471 INFO    ] 2026-08-25 04:54:51
[2026-08-25 04:54:51,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:54:51,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:54:51,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:54:51,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:54:51,940.940 INFO    ] time= 25/08/2026 04:54:51
[2026-08-25 04:54:51,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:54:52,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:54:52,155.155 INFO    ] No existing commands found in stream
[2026-08-25 04:54:57,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:54:57,189.189 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 04:54:59,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:54:59,738.738 INFO    ] Checking for system updates...
[2026-08-25 04:54:59,785.785 INFO    ] 200
[2026-08-25 04:54:59,787.787 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:59,790.790 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 04:54:59,792.792 INFO    ] Checking for camera pi updates...
[2026-08-25 04:54:59,846.846 INFO    ] 200
[2026-08-25 04:54:59,849.849 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 04:54:59,851.851 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 04:54:59,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:54:59,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:54:59,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:54:59,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:55:02,974.974 INFO    ] ================================================
[2026-08-25 04:55:02,030.030 INFO    ] Launching Daemon at Tue Aug 25 04:55:02 IST 2026
[2026-08-25 04:55:02,070.070 INFO    ] ================================================
[2026-08-25 04:55:02,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:55:02
[2026-08-25 04:55:03,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:55:03,844.844 INFO    ] Initializing speech engine...
[2026-08-25 04:55:03,865.865 INFO    ] 2026-08-25 04:55:03
[2026-08-25 04:55:04,143.143 INFO    ] 2026-08-25 04:55:04
[2026-08-25 04:55:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:55:04,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:55:04,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:55:04,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:55:04,616.616 INFO    ] time= 25/08/2026 04:55:04
[2026-08-25 04:55:04,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:55:04,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:55:04,841.841 INFO    ] No existing commands found in stream
[2026-08-25 04:55:09,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:55:09,866.866 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 04:55:10,751.751 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:55:10,753.753 INFO    ] Checking for system updates...
[2026-08-25 04:55:10,789.789 INFO    ] 200
[2026-08-25 04:55:10,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:10,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:55:10,846.846 INFO    ] No update needed
[2026-08-25 04:55:10,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 04:55:10,883.883 INFO    ] 200
[2026-08-25 04:55:10,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:10,926.926 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:55:10,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:55:10,969.969 INFO    ] No camera update needed
[2026-08-25 04:55:10,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:55:10,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:55:10,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:55:10,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:55:13,026.026 INFO    ] ================================================
[2026-08-25 04:55:13,042.042 INFO    ] Launching Daemon at Tue Aug 25 04:55:13 IST 2026
[2026-08-25 04:55:13,054.054 INFO    ] ================================================
[2026-08-25 04:55:13,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:55:13
[2026-08-25 04:55:14,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:55:14,521.521 INFO    ] Initializing speech engine...
[2026-08-25 04:55:14,530.530 INFO    ] 2026-08-25 04:55:14
[2026-08-25 04:55:14,779.779 INFO    ] 2026-08-25 04:55:14
[2026-08-25 04:55:14,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:55:15,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:55:15,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:55:15,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:55:15,275.275 INFO    ] time= 25/08/2026 04:55:15
[2026-08-25 04:55:15,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:55:15,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:55:15,479.479 INFO    ] No existing commands found in stream
[2026-08-25 04:55:20,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:55:20,503.503 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 04:55:21,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:55:21,452.452 INFO    ] Checking for system updates...
[2026-08-25 04:55:21,488.488 INFO    ] 200
[2026-08-25 04:55:21,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:21,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:55:21,544.544 INFO    ] No update needed
[2026-08-25 04:55:21,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 04:55:21,581.581 INFO    ] 200
[2026-08-25 04:55:21,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:21,629.629 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:55:21,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:55:21,679.679 INFO    ] No camera update needed
[2026-08-25 04:55:21,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:55:21,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:55:21,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:55:21,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:55:23,735.735 INFO    ] ================================================
[2026-08-25 04:55:23,751.751 INFO    ] Launching Daemon at Tue Aug 25 04:55:23 IST 2026
[2026-08-25 04:55:23,763.763 INFO    ] ================================================
[2026-08-25 04:55:24,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:55:24
[2026-08-25 04:55:24,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:55:25,219.219 INFO    ] Initializing speech engine...
[2026-08-25 04:55:25,226.226 INFO    ] 2026-08-25 04:55:25
[2026-08-25 04:55:25,488.488 INFO    ] 2026-08-25 04:55:25
[2026-08-25 04:55:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:55:25,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:55:25,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:55:25,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:55:25,970.970 INFO    ] time= 25/08/2026 04:55:25
[2026-08-25 04:55:26,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:55:26,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:55:26,192.192 INFO    ] No existing commands found in stream
[2026-08-25 04:55:31,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:55:31,210.210 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 04:55:35,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:55:35,014.014 INFO    ] Checking for system updates...
[2026-08-25 04:55:35,049.049 INFO    ] 200
[2026-08-25 04:55:35,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:35,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:55:35,116.116 INFO    ] No update needed
[2026-08-25 04:55:35,119.119 INFO    ] Checking for camera pi updates...
[2026-08-25 04:55:35,154.154 INFO    ] 200
[2026-08-25 04:55:35,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:35,203.203 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:55:35,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:55:35,256.256 INFO    ] No camera update needed
[2026-08-25 04:55:35,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:55:35,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:55:35,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:55:35,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:55:37,311.311 INFO    ] ================================================
[2026-08-25 04:55:37,326.326 INFO    ] Launching Daemon at Tue Aug 25 04:55:37 IST 2026
[2026-08-25 04:55:37,338.338 INFO    ] ================================================
[2026-08-25 04:55:37,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:55:37
[2026-08-25 04:55:38,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:55:38,809.809 INFO    ] Initializing speech engine...
[2026-08-25 04:55:38,818.818 INFO    ] 2026-08-25 04:55:38
[2026-08-25 04:55:39,076.076 INFO    ] 2026-08-25 04:55:39
[2026-08-25 04:55:39,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:55:39,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:55:39,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:55:39,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:55:39,546.546 INFO    ] time= 25/08/2026 04:55:39
[2026-08-25 04:55:39,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:55:39,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:55:39,772.772 INFO    ] No existing commands found in stream
[2026-08-25 04:55:44,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:55:44,789.789 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 04:55:48,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:55:48,777.777 INFO    ] Checking for system updates...
[2026-08-25 04:55:48,812.812 INFO    ] 200
[2026-08-25 04:55:48,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:48,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:55:48,870.870 INFO    ] No update needed
[2026-08-25 04:55:48,872.872 INFO    ] Checking for camera pi updates...
[2026-08-25 04:55:48,905.905 INFO    ] 200
[2026-08-25 04:55:48,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:48,954.954 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:55:48,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:55:49,001.001 INFO    ] No camera update needed
[2026-08-25 04:55:49,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:55:49,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:55:49,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:55:49,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:55:51,057.057 INFO    ] ================================================
[2026-08-25 04:55:51,072.072 INFO    ] Launching Daemon at Tue Aug 25 04:55:51 IST 2026
[2026-08-25 04:55:51,083.083 INFO    ] ================================================
[2026-08-25 04:55:51,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:55:51
[2026-08-25 04:55:52,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:55:52,492.492 INFO    ] Initializing speech engine...
[2026-08-25 04:55:52,505.505 INFO    ] 2026-08-25 04:55:52
[2026-08-25 04:55:52,777.777 INFO    ] 2026-08-25 04:55:52
[2026-08-25 04:55:52,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:55:52,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:55:53,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:55:53,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:55:53,155.155 INFO    ] time= 25/08/2026 04:55:53
[2026-08-25 04:55:53,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:55:53,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:55:53,352.352 INFO    ] No existing commands found in stream
[2026-08-25 04:55:58,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:55:58,365.365 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 04:55:58,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:55:58,986.986 INFO    ] Checking for system updates...
[2026-08-25 04:55:59,022.022 INFO    ] 200
[2026-08-25 04:55:59,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:59,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:55:59,088.088 INFO    ] No update needed
[2026-08-25 04:55:59,090.090 INFO    ] Checking for camera pi updates...
[2026-08-25 04:55:59,123.123 INFO    ] 200
[2026-08-25 04:55:59,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:55:59,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:55:59,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:55:59,218.218 INFO    ] No camera update needed
[2026-08-25 04:55:59,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:55:59,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:55:59,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:55:59,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:56:01,292.292 INFO    ] ================================================
[2026-08-25 04:56:01,318.318 INFO    ] Launching Daemon at Tue Aug 25 04:56:01 IST 2026
[2026-08-25 04:56:01,332.332 INFO    ] ================================================
[2026-08-25 04:56:02,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:56:02
[2026-08-25 04:56:02,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:56:03,019.019 INFO    ] Initializing speech engine...
[2026-08-25 04:56:03,027.027 INFO    ] 2026-08-25 04:56:03
[2026-08-25 04:56:03,305.305 INFO    ] 2026-08-25 04:56:03
[2026-08-25 04:56:03,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:56:03,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:56:03,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:56:03,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:56:03,786.786 INFO    ] time= 25/08/2026 04:56:03
[2026-08-25 04:56:03,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:56:03,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:56:04,030.030 INFO    ] No existing commands found in stream
[2026-08-25 04:56:09,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:56:09,057.057 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 04:56:10,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:56:10,974.974 INFO    ] Checking for system updates...
[2026-08-25 04:56:11,011.011 INFO    ] 200
[2026-08-25 04:56:11,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:11,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:56:11,070.070 INFO    ] No update needed
[2026-08-25 04:56:11,072.072 INFO    ] Checking for camera pi updates...
[2026-08-25 04:56:11,110.110 INFO    ] 200
[2026-08-25 04:56:11,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:11,163.163 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:56:11,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:56:11,217.217 INFO    ] No camera update needed
[2026-08-25 04:56:11,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:56:11,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:56:11,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:56:11,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:56:13,275.275 INFO    ] ================================================
[2026-08-25 04:56:13,289.289 INFO    ] Launching Daemon at Tue Aug 25 04:56:13 IST 2026
[2026-08-25 04:56:13,300.300 INFO    ] ================================================
[2026-08-25 04:56:13,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:56:13
[2026-08-25 04:56:14,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:56:14,899.899 INFO    ] Initializing speech engine...
[2026-08-25 04:56:14,906.906 INFO    ] 2026-08-25 04:56:14
[2026-08-25 04:56:15,174.174 INFO    ] 2026-08-25 04:56:15
[2026-08-25 04:56:15,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:56:15,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:56:15,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:56:15,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:56:15,667.667 INFO    ] time= 25/08/2026 04:56:15
[2026-08-25 04:56:15,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:56:15,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:56:15,882.882 INFO    ] No existing commands found in stream
[2026-08-25 04:56:20,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:56:20,901.901 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 04:56:23,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:56:23,749.749 INFO    ] Checking for system updates...
[2026-08-25 04:56:23,785.785 INFO    ] 200
[2026-08-25 04:56:23,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:23,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:56:23,844.844 INFO    ] No update needed
[2026-08-25 04:56:23,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 04:56:23,884.884 INFO    ] 200
[2026-08-25 04:56:23,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:23,929.929 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:56:24,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:56:24,081.081 INFO    ] No camera update needed
[2026-08-25 04:56:24,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:56:24,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:56:24,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:56:24,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:56:26,139.139 INFO    ] ================================================
[2026-08-25 04:56:26,155.155 INFO    ] Launching Daemon at Tue Aug 25 04:56:26 IST 2026
[2026-08-25 04:56:26,165.165 INFO    ] ================================================
[2026-08-25 04:56:26,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:56:26
[2026-08-25 04:56:27,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:56:27,578.578 INFO    ] Initializing speech engine...
[2026-08-25 04:56:27,588.588 INFO    ] 2026-08-25 04:56:27
[2026-08-25 04:56:27,835.835 INFO    ] 2026-08-25 04:56:27
[2026-08-25 04:56:27,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:56:28,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:56:28,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:56:28,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:56:28,202.202 INFO    ] time= 25/08/2026 04:56:28
[2026-08-25 04:56:28,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:56:28,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:56:28,387.387 INFO    ] No existing commands found in stream
[2026-08-25 04:56:33,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:56:33,409.409 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 04:56:36,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:56:36,324.324 INFO    ] Checking for system updates...
[2026-08-25 04:56:36,363.363 INFO    ] 200
[2026-08-25 04:56:36,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:36,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:56:36,426.426 INFO    ] No update needed
[2026-08-25 04:56:36,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 04:56:36,462.462 INFO    ] 200
[2026-08-25 04:56:36,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:36,509.509 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:56:36,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:56:36,559.559 INFO    ] No camera update needed
[2026-08-25 04:56:36,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:56:36,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:56:36,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:56:36,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:56:38,615.615 INFO    ] ================================================
[2026-08-25 04:56:38,630.630 INFO    ] Launching Daemon at Tue Aug 25 04:56:38 IST 2026
[2026-08-25 04:56:38,640.640 INFO    ] ================================================
[2026-08-25 04:56:39,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:56:39
[2026-08-25 04:56:39,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:56:40,244.244 INFO    ] Initializing speech engine...
[2026-08-25 04:56:40,258.258 INFO    ] 2026-08-25 04:56:40
[2026-08-25 04:56:40,539.539 INFO    ] 2026-08-25 04:56:40
[2026-08-25 04:56:40,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:56:40,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:56:40,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:56:40,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:56:41,009.009 INFO    ] time= 25/08/2026 04:56:40
[2026-08-25 04:56:41,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:56:41,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:56:41,214.214 INFO    ] No existing commands found in stream
[2026-08-25 04:56:46,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:56:46,242.242 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 04:56:50,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:56:50,521.521 INFO    ] Checking for system updates...
[2026-08-25 04:56:50,557.557 INFO    ] 200
[2026-08-25 04:56:50,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:50,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:56:50,617.617 INFO    ] No update needed
[2026-08-25 04:56:50,620.620 INFO    ] Checking for camera pi updates...
[2026-08-25 04:56:50,653.653 INFO    ] 200
[2026-08-25 04:56:50,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:56:50,703.703 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:56:50,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:56:50,746.746 INFO    ] No camera update needed
[2026-08-25 04:56:50,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:56:50,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:56:50,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:56:50,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:56:52,804.804 INFO    ] ================================================
[2026-08-25 04:56:52,819.819 INFO    ] Launching Daemon at Tue Aug 25 04:56:52 IST 2026
[2026-08-25 04:56:52,830.830 INFO    ] ================================================
[2026-08-25 04:56:53,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:56:53
[2026-08-25 04:56:54,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:56:54,282.282 INFO    ] Initializing speech engine...
[2026-08-25 04:56:54,289.289 INFO    ] 2026-08-25 04:56:54
[2026-08-25 04:56:54,548.548 INFO    ] 2026-08-25 04:56:54
[2026-08-25 04:56:54,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:56:54,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:56:54,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:56:54,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:56:55,007.007 INFO    ] time= 25/08/2026 04:56:54
[2026-08-25 04:56:55,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:56:55,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:56:55,241.241 INFO    ] No existing commands found in stream
[2026-08-25 04:57:00,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:57:00,260.260 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 04:57:02,470.470 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:57:02,474.474 INFO    ] Checking for system updates...
[2026-08-25 04:57:02,516.516 INFO    ] 200
[2026-08-25 04:57:02,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:02,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:57:02,585.585 INFO    ] No update needed
[2026-08-25 04:57:02,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 04:57:02,623.623 INFO    ] 200
[2026-08-25 04:57:02,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:02,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:57:02,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:57:02,736.736 INFO    ] No camera update needed
[2026-08-25 04:57:02,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:57:02,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:57:02,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:57:02,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:57:04,797.797 INFO    ] ================================================
[2026-08-25 04:57:04,812.812 INFO    ] Launching Daemon at Tue Aug 25 04:57:04 IST 2026
[2026-08-25 04:57:04,823.823 INFO    ] ================================================
[2026-08-25 04:57:05,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:57:05
[2026-08-25 04:57:06,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:57:06,283.283 INFO    ] Initializing speech engine...
[2026-08-25 04:57:06,290.290 INFO    ] 2026-08-25 04:57:06
[2026-08-25 04:57:06,551.551 INFO    ] 2026-08-25 04:57:06
[2026-08-25 04:57:06,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:57:06,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:57:06,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:57:06,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:57:07,060.060 INFO    ] time= 25/08/2026 04:57:07
[2026-08-25 04:57:07,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:57:07,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:57:07,222.222 INFO    ] No existing commands found in stream
[2026-08-25 04:57:12,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:57:12,258.258 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 04:57:13,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:57:13,649.649 INFO    ] Checking for system updates...
[2026-08-25 04:57:13,688.688 INFO    ] 200
[2026-08-25 04:57:13,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:13,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:57:13,746.746 INFO    ] No update needed
[2026-08-25 04:57:13,749.749 INFO    ] Checking for camera pi updates...
[2026-08-25 04:57:13,790.790 INFO    ] 200
[2026-08-25 04:57:13,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:13,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:57:13,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:57:13,883.883 INFO    ] No camera update needed
[2026-08-25 04:57:13,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:57:13,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:57:13,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:57:13,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:57:15,938.938 INFO    ] ================================================
[2026-08-25 04:57:15,953.953 INFO    ] Launching Daemon at Tue Aug 25 04:57:15 IST 2026
[2026-08-25 04:57:15,964.964 INFO    ] ================================================
[2026-08-25 04:57:16,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:57:16
[2026-08-25 04:57:17,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:57:17,420.420 INFO    ] Initializing speech engine...
[2026-08-25 04:57:17,431.431 INFO    ] 2026-08-25 04:57:17
[2026-08-25 04:57:17,692.692 INFO    ] 2026-08-25 04:57:17
[2026-08-25 04:57:17,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:57:17,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:57:17,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:57:18,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:57:18,149.149 INFO    ] time= 25/08/2026 04:57:18
[2026-08-25 04:57:18,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:57:18,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:57:18,374.374 INFO    ] No existing commands found in stream
[2026-08-25 04:57:23,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:57:23,401.401 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 04:57:26,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:57:26,279.279 INFO    ] Checking for system updates...
[2026-08-25 04:57:26,315.315 INFO    ] 200
[2026-08-25 04:57:26,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:26,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:57:26,372.372 INFO    ] No update needed
[2026-08-25 04:57:26,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 04:57:26,408.408 INFO    ] 200
[2026-08-25 04:57:26,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:26,450.450 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:57:26,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:57:26,506.506 INFO    ] No camera update needed
[2026-08-25 04:57:26,508.508 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:57:26,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:57:26,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:57:26,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:57:28,561.561 INFO    ] ================================================
[2026-08-25 04:57:28,576.576 INFO    ] Launching Daemon at Tue Aug 25 04:57:28 IST 2026
[2026-08-25 04:57:28,587.587 INFO    ] ================================================
[2026-08-25 04:57:29,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:57:29
[2026-08-25 04:57:29,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:57:30,050.050 INFO    ] Initializing speech engine...
[2026-08-25 04:57:30,057.057 INFO    ] 2026-08-25 04:57:30
[2026-08-25 04:57:30,301.301 INFO    ] 2026-08-25 04:57:30
[2026-08-25 04:57:30,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:57:30,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:57:30,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:57:30,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:57:30,765.765 INFO    ] time= 25/08/2026 04:57:30
[2026-08-25 04:57:30,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:57:30,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:57:30,995.995 INFO    ] No existing commands found in stream
[2026-08-25 04:57:36,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:57:36,022.022 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 04:57:39,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 04:57:39,228.228 INFO    ] Checking for system updates...
[2026-08-25 04:57:39,263.263 INFO    ] 200
[2026-08-25 04:57:39,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:39,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:57:39,321.321 INFO    ] No update needed
[2026-08-25 04:57:39,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 04:57:39,357.357 INFO    ] 200
[2026-08-25 04:57:39,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:39,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:57:39,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:57:39,452.452 INFO    ] No camera update needed
[2026-08-25 04:57:39,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:57:39,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:57:39,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:57:39,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:57:41,507.507 INFO    ] ================================================
[2026-08-25 04:57:41,523.523 INFO    ] Launching Daemon at Tue Aug 25 04:57:41 IST 2026
[2026-08-25 04:57:41,534.534 INFO    ] ================================================
[2026-08-25 04:57:42,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:57:42
[2026-08-25 04:57:42,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:57:42,964.964 INFO    ] Initializing speech engine...
[2026-08-25 04:57:42,969.969 INFO    ] 2026-08-25 04:57:42
[2026-08-25 04:57:43,227.227 INFO    ] 2026-08-25 04:57:43
[2026-08-25 04:57:43,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:57:43,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:57:43,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:57:43,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:57:43,683.683 INFO    ] time= 25/08/2026 04:57:43
[2026-08-25 04:57:43,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:57:43,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:57:43,906.906 INFO    ] No existing commands found in stream
[2026-08-25 04:57:48,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:57:48,933.933 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 04:57:49,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 04:57:49,787.787 INFO    ] Checking for system updates...
[2026-08-25 04:57:49,827.827 INFO    ] 200
[2026-08-25 04:57:49,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:49,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:57:49,891.891 INFO    ] No update needed
[2026-08-25 04:57:49,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 04:57:49,928.928 INFO    ] 200
[2026-08-25 04:57:49,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:57:49,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:57:50,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:57:50,027.027 INFO    ] No camera update needed
[2026-08-25 04:57:50,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:57:50,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:57:50,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:57:50,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:57:52,086.086 INFO    ] ================================================
[2026-08-25 04:57:52,102.102 INFO    ] Launching Daemon at Tue Aug 25 04:57:52 IST 2026
[2026-08-25 04:57:52,113.113 INFO    ] ================================================
[2026-08-25 04:57:52,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:57:52
[2026-08-25 04:57:53,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:57:53,540.540 INFO    ] Initializing speech engine...
[2026-08-25 04:57:53,549.549 INFO    ] 2026-08-25 04:57:53
[2026-08-25 04:57:53,804.804 INFO    ] 2026-08-25 04:57:53
[2026-08-25 04:57:53,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:57:54,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:57:54,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:57:54,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:57:54,182.182 INFO    ] time= 25/08/2026 04:57:54
[2026-08-25 04:57:54,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:57:54,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:57:54,372.372 INFO    ] No existing commands found in stream
[2026-08-25 04:57:59,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:57:59,396.396 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 04:58:01,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:58:01,881.881 INFO    ] Checking for system updates...
[2026-08-25 04:58:01,916.916 INFO    ] 200
[2026-08-25 04:58:01,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:01,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:01,989.989 INFO    ] No update needed
[2026-08-25 04:58:01,993.993 INFO    ] Checking for camera pi updates...
[2026-08-25 04:58:02,092.092 INFO    ] 200
[2026-08-25 04:58:02,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:02,174.174 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:58:02,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:02,254.254 INFO    ] No camera update needed
[2026-08-25 04:58:02,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:58:02,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:58:02,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:58:02,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:58:04,318.318 INFO    ] ================================================
[2026-08-25 04:58:04,334.334 INFO    ] Launching Daemon at Tue Aug 25 04:58:04 IST 2026
[2026-08-25 04:58:04,345.345 INFO    ] ================================================
[2026-08-25 04:58:05,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:58:05
[2026-08-25 04:58:05,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:58:05,937.937 INFO    ] Initializing speech engine...
[2026-08-25 04:58:05,943.943 INFO    ] 2026-08-25 04:58:05
[2026-08-25 04:58:06,233.233 INFO    ] 2026-08-25 04:58:06
[2026-08-25 04:58:06,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:58:06,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:58:06,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:58:06,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:58:06,606.606 INFO    ] time= 25/08/2026 04:58:06
[2026-08-25 04:58:06,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:58:06,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:58:06,751.751 INFO    ] No existing commands found in stream
[2026-08-25 04:58:11,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:58:11,789.789 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 04:58:13,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:58:13,335.335 INFO    ] Checking for system updates...
[2026-08-25 04:58:13,371.371 INFO    ] 200
[2026-08-25 04:58:13,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:13,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:13,429.429 INFO    ] No update needed
[2026-08-25 04:58:13,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 04:58:13,469.469 INFO    ] 200
[2026-08-25 04:58:13,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:13,517.517 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:58:13,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:13,576.576 INFO    ] No camera update needed
[2026-08-25 04:58:13,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:58:13,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:58:13,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:58:13,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:58:15,631.631 INFO    ] ================================================
[2026-08-25 04:58:15,647.647 INFO    ] Launching Daemon at Tue Aug 25 04:58:15 IST 2026
[2026-08-25 04:58:15,659.659 INFO    ] ================================================
[2026-08-25 04:58:16,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:58:16
[2026-08-25 04:58:16,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:58:17,080.080 INFO    ] Initializing speech engine...
[2026-08-25 04:58:17,093.093 INFO    ] 2026-08-25 04:58:17
[2026-08-25 04:58:17,378.378 INFO    ] 2026-08-25 04:58:17
[2026-08-25 04:58:17,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:58:17,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:58:17,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:58:17,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:58:17,798.798 INFO    ] time= 25/08/2026 04:58:17
[2026-08-25 04:58:17,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:58:17,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:58:17,882.882 INFO    ] No existing commands found in stream
[2026-08-25 04:58:22,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:58:22,898.898 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 04:58:26,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:58:26,284.284 INFO    ] Checking for system updates...
[2026-08-25 04:58:26,319.319 INFO    ] 200
[2026-08-25 04:58:26,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:26,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:26,376.376 INFO    ] No update needed
[2026-08-25 04:58:26,378.378 INFO    ] Checking for camera pi updates...
[2026-08-25 04:58:26,411.411 INFO    ] 200
[2026-08-25 04:58:26,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:26,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:58:26,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:26,607.607 INFO    ] No camera update needed
[2026-08-25 04:58:26,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:58:26,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:58:26,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:58:26,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:58:28,662.662 INFO    ] ================================================
[2026-08-25 04:58:28,678.678 INFO    ] Launching Daemon at Tue Aug 25 04:58:28 IST 2026
[2026-08-25 04:58:28,690.690 INFO    ] ================================================
[2026-08-25 04:58:29,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:58:29
[2026-08-25 04:58:29,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:58:30,117.117 INFO    ] Initializing speech engine...
[2026-08-25 04:58:30,124.124 INFO    ] 2026-08-25 04:58:30
[2026-08-25 04:58:30,371.371 INFO    ] 2026-08-25 04:58:30
[2026-08-25 04:58:30,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:58:30,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:58:30,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:58:30,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:58:30,844.844 INFO    ] time= 25/08/2026 04:58:30
[2026-08-25 04:58:30,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:58:30,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:58:31,083.083 INFO    ] No existing commands found in stream
[2026-08-25 04:58:36,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:58:36,100.100 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 04:58:39,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:58:39,395.395 INFO    ] Checking for system updates...
[2026-08-25 04:58:39,432.432 INFO    ] 200
[2026-08-25 04:58:39,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:39,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:58:39,492.492 INFO    ] No update needed
[2026-08-25 04:58:39,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 04:58:39,530.530 INFO    ] 200
[2026-08-25 04:58:39,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:39,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:58:39,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:58:39,629.629 INFO    ] No camera update needed
[2026-08-25 04:58:39,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:58:39,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:58:39,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:58:39,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:58:41,688.688 INFO    ] ================================================
[2026-08-25 04:58:41,703.703 INFO    ] Launching Daemon at Tue Aug 25 04:58:41 IST 2026
[2026-08-25 04:58:41,715.715 INFO    ] ================================================
[2026-08-25 04:58:42,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:58:42
[2026-08-25 04:58:43,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:58:43,359.359 INFO    ] Initializing speech engine...
[2026-08-25 04:58:43,369.369 INFO    ] 2026-08-25 04:58:43
[2026-08-25 04:58:43,627.627 INFO    ] 2026-08-25 04:58:43
[2026-08-25 04:58:43,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:58:43,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:58:43,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:58:44,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:58:44,108.108 INFO    ] time= 25/08/2026 04:58:44
[2026-08-25 04:58:44,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:58:44,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:58:44,301.301 INFO    ] No existing commands found in stream
[2026-08-25 04:58:49,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:58:49,326.326 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 04:58:52,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 04:58:52,392.392 INFO    ] Checking for system updates...
[2026-08-25 04:58:52,431.431 INFO    ] 200
[2026-08-25 04:58:52,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:52,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:52,487.487 INFO    ] No update needed
[2026-08-25 04:58:52,490.490 INFO    ] Checking for camera pi updates...
[2026-08-25 04:58:52,522.522 INFO    ] 200
[2026-08-25 04:58:52,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:58:52,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:58:52,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:58:52,631.631 INFO    ] No camera update needed
[2026-08-25 04:58:52,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:58:52,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:58:52,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:58:52,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:58:54,686.686 INFO    ] ================================================
[2026-08-25 04:58:54,702.702 INFO    ] Launching Daemon at Tue Aug 25 04:58:54 IST 2026
[2026-08-25 04:58:54,713.713 INFO    ] ================================================
[2026-08-25 04:58:55,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:58:55
[2026-08-25 04:58:55,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:58:56,105.105 INFO    ] Initializing speech engine...
[2026-08-25 04:58:56,124.124 INFO    ] 2026-08-25 04:58:56
[2026-08-25 04:58:56,379.379 INFO    ] 2026-08-25 04:58:56
[2026-08-25 04:58:56,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:58:56,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:58:56,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:58:56,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:58:56,854.854 INFO    ] time= 25/08/2026 04:58:56
[2026-08-25 04:58:56,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:58:56,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:58:57,066.066 INFO    ] No existing commands found in stream
[2026-08-25 04:59:02,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:59:02,091.091 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 04:59:03,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:59:03,572.572 INFO    ] Checking for system updates...
[2026-08-25 04:59:03,615.615 INFO    ] 200
[2026-08-25 04:59:03,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:03,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:03,673.673 INFO    ] No update needed
[2026-08-25 04:59:03,675.675 INFO    ] Checking for camera pi updates...
[2026-08-25 04:59:03,708.708 INFO    ] 200
[2026-08-25 04:59:03,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:03,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:59:03,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:03,800.800 INFO    ] No camera update needed
[2026-08-25 04:59:03,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:59:03,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:59:03,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:59:03,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:59:05,855.855 INFO    ] ================================================
[2026-08-25 04:59:05,871.871 INFO    ] Launching Daemon at Tue Aug 25 04:59:05 IST 2026
[2026-08-25 04:59:05,882.882 INFO    ] ================================================
[2026-08-25 04:59:06,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:59:06
[2026-08-25 04:59:07,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:59:07,350.350 INFO    ] Initializing speech engine...
[2026-08-25 04:59:07,360.360 INFO    ] 2026-08-25 04:59:07
[2026-08-25 04:59:07,606.606 INFO    ] 2026-08-25 04:59:07
[2026-08-25 04:59:07,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:59:07,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:59:07,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:59:08,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:59:08,073.073 INFO    ] time= 25/08/2026 04:59:08
[2026-08-25 04:59:08,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:59:08,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:59:08,285.285 INFO    ] No existing commands found in stream
[2026-08-25 04:59:13,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:59:13,331.331 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 04:59:17,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 04:59:17,620.620 INFO    ] Checking for system updates...
[2026-08-25 04:59:17,655.655 INFO    ] 200
[2026-08-25 04:59:17,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:17,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:59:17,711.711 INFO    ] No update needed
[2026-08-25 04:59:17,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 04:59:17,748.748 INFO    ] 200
[2026-08-25 04:59:17,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:17,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:59:17,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 04:59:17,838.838 INFO    ] No camera update needed
[2026-08-25 04:59:17,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:59:17,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:59:17,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:59:17,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:59:19,893.893 INFO    ] ================================================
[2026-08-25 04:59:19,910.910 INFO    ] Launching Daemon at Tue Aug 25 04:59:19 IST 2026
[2026-08-25 04:59:19,921.921 INFO    ] ================================================
[2026-08-25 04:59:20,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:59:20
[2026-08-25 04:59:21,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:59:21,332.332 INFO    ] Initializing speech engine...
[2026-08-25 04:59:21,351.351 INFO    ] 2026-08-25 04:59:21
[2026-08-25 04:59:21,597.597 INFO    ] 2026-08-25 04:59:21
[2026-08-25 04:59:21,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:59:21,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:59:21,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:59:22,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:59:22,030.030 INFO    ] time= 25/08/2026 04:59:22
[2026-08-25 04:59:22,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:59:22,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:59:22,244.244 INFO    ] No existing commands found in stream
[2026-08-25 04:59:27,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:59:27,283.283 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 04:59:28,171.171 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 04:59:28,173.173 INFO    ] Checking for system updates...
[2026-08-25 04:59:28,209.209 INFO    ] 200
[2026-08-25 04:59:28,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:28,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:28,265.265 INFO    ] No update needed
[2026-08-25 04:59:28,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 04:59:28,305.305 INFO    ] 200
[2026-08-25 04:59:28,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:28,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:59:28,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:28,395.395 INFO    ] No camera update needed
[2026-08-25 04:59:28,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:59:28,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:59:28,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:59:28,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:59:30,455.455 INFO    ] ================================================
[2026-08-25 04:59:30,471.471 INFO    ] Launching Daemon at Tue Aug 25 04:59:30 IST 2026
[2026-08-25 04:59:30,482.482 INFO    ] ================================================
[2026-08-25 04:59:31,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:59:31
[2026-08-25 04:59:31,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:59:31,889.889 INFO    ] Initializing speech engine...
[2026-08-25 04:59:31,913.913 INFO    ] 2026-08-25 04:59:31
[2026-08-25 04:59:32,193.193 INFO    ] 2026-08-25 04:59:32
[2026-08-25 04:59:32,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:59:32,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:59:32,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:59:32,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:59:32,584.584 INFO    ] time= 25/08/2026 04:59:32
[2026-08-25 04:59:32,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:59:32,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:59:32,780.780 INFO    ] No existing commands found in stream
[2026-08-25 04:59:37,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:59:37,806.806 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 04:59:38,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:59:38,261.261 INFO    ] Checking for system updates...
[2026-08-25 04:59:38,297.297 INFO    ] 200
[2026-08-25 04:59:38,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:38,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:38,354.354 INFO    ] No update needed
[2026-08-25 04:59:38,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 04:59:38,391.391 INFO    ] 200
[2026-08-25 04:59:38,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:38,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:59:38,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:38,495.495 INFO    ] No camera update needed
[2026-08-25 04:59:38,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:59:38,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:59:38,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:59:38,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:59:40,549.549 INFO    ] ================================================
[2026-08-25 04:59:40,565.565 INFO    ] Launching Daemon at Tue Aug 25 04:59:40 IST 2026
[2026-08-25 04:59:40,576.576 INFO    ] ================================================
[2026-08-25 04:59:41,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:59:41
[2026-08-25 04:59:41,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:59:42,007.007 INFO    ] Initializing speech engine...
[2026-08-25 04:59:42,016.016 INFO    ] 2026-08-25 04:59:42
[2026-08-25 04:59:42,262.262 INFO    ] 2026-08-25 04:59:42
[2026-08-25 04:59:42,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:59:42,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:59:42,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:59:42,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:59:42,726.726 INFO    ] time= 25/08/2026 04:59:42
[2026-08-25 04:59:42,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:59:42,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:59:42,959.959 INFO    ] No existing commands found in stream
[2026-08-25 04:59:47,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:59:47,981.981 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 04:59:49,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 04:59:49,189.189 INFO    ] Checking for system updates...
[2026-08-25 04:59:49,224.224 INFO    ] 200
[2026-08-25 04:59:49,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:49,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:49,281.281 INFO    ] No update needed
[2026-08-25 04:59:49,284.284 INFO    ] Checking for camera pi updates...
[2026-08-25 04:59:49,321.321 INFO    ] 200
[2026-08-25 04:59:49,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 04:59:49,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 04:59:49,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 04:59:49,410.410 INFO    ] No camera update needed
[2026-08-25 04:59:49,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 04:59:49,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 04:59:49,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 04:59:49,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 04:59:51,467.467 INFO    ] ================================================
[2026-08-25 04:59:51,482.482 INFO    ] Launching Daemon at Tue Aug 25 04:59:51 IST 2026
[2026-08-25 04:59:51,493.493 INFO    ] ================================================
[2026-08-25 04:59:52,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 04:59:52
[2026-08-25 04:59:52,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 04:59:52,894.894 INFO    ] Initializing speech engine...
[2026-08-25 04:59:52,902.902 INFO    ] 2026-08-25 04:59:52
[2026-08-25 04:59:53,196.196 INFO    ] 2026-08-25 04:59:53
[2026-08-25 04:59:53,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 04:59:53,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 04:59:53,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 04:59:53,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 04:59:53,570.570 INFO    ] time= 25/08/2026 04:59:53
[2026-08-25 04:59:53,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 04:59:53,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 04:59:53,693.693 INFO    ] No existing commands found in stream
[2026-08-25 04:59:58,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 04:59:58,711.711 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 05:00:01,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:00:01,311.311 INFO    ] Checking for system updates...
[2026-08-25 05:00:01,349.349 INFO    ] 200
[2026-08-25 05:00:01,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:01,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:00:01,406.406 INFO    ] No update needed
[2026-08-25 05:00:01,408.408 INFO    ] Checking for camera pi updates...
[2026-08-25 05:00:01,441.441 INFO    ] 200
[2026-08-25 05:00:01,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:01,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:00:01,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:00:01,538.538 INFO    ] No camera update needed
[2026-08-25 05:00:01,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:00:01,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:00:01,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:00:01,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:00:03,631.631 INFO    ] ================================================
[2026-08-25 05:00:03,751.751 INFO    ] Launching Daemon at Tue Aug 25 05:00:03 IST 2026
[2026-08-25 05:00:03,814.814 INFO    ] ================================================
[2026-08-25 05:00:05,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:00:05
[2026-08-25 05:00:06,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:00:06,843.843 INFO    ] Initializing speech engine...
[2026-08-25 05:00:06,857.857 INFO    ] 2026-08-25 05:00:06
[2026-08-25 05:00:07,118.118 INFO    ] 2026-08-25 05:00:07
[2026-08-25 05:00:07,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:00:07,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:00:07,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:00:07,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:00:07,591.591 INFO    ] time= 25/08/2026 05:00:07
[2026-08-25 05:00:07,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:00:07,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:00:07,823.823 INFO    ] No existing commands found in stream
[2026-08-25 05:00:12,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:00:12,841.841 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 05:00:14,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:00:14,096.096 INFO    ] Checking for system updates...
[2026-08-25 05:00:14,137.137 INFO    ] 200
[2026-08-25 05:00:14,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:14,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:00:14,203.203 INFO    ] No update needed
[2026-08-25 05:00:14,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 05:00:14,240.240 INFO    ] 200
[2026-08-25 05:00:14,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:14,283.283 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:00:14,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:00:14,342.342 INFO    ] No camera update needed
[2026-08-25 05:00:14,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:00:14,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:00:14,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:00:14,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:00:16,400.400 INFO    ] ================================================
[2026-08-25 05:00:16,416.416 INFO    ] Launching Daemon at Tue Aug 25 05:00:16 IST 2026
[2026-08-25 05:00:16,427.427 INFO    ] ================================================
[2026-08-25 05:00:16,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:00:16
[2026-08-25 05:00:17,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:00:17,822.822 INFO    ] Initializing speech engine...
[2026-08-25 05:00:17,837.837 INFO    ] 2026-08-25 05:00:17
[2026-08-25 05:00:18,101.101 INFO    ] 2026-08-25 05:00:18
[2026-08-25 05:00:18,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:00:18,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:00:18,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:00:18,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:00:18,470.470 INFO    ] time= 25/08/2026 05:00:18
[2026-08-25 05:00:18,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:00:18,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:00:18,645.645 INFO    ] No existing commands found in stream
[2026-08-25 05:00:23,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:00:23,673.673 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 05:00:26,631.631 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:00:26,634.634 INFO    ] Checking for system updates...
[2026-08-25 05:00:26,674.674 INFO    ] 200
[2026-08-25 05:00:26,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:26,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:00:26,733.733 INFO    ] No update needed
[2026-08-25 05:00:26,736.736 INFO    ] Checking for camera pi updates...
[2026-08-25 05:00:26,773.773 INFO    ] 200
[2026-08-25 05:00:26,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:26,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:00:26,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:00:26,878.878 INFO    ] No camera update needed
[2026-08-25 05:00:26,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:00:26,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:00:26,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:00:26,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:00:28,936.936 INFO    ] ================================================
[2026-08-25 05:00:28,954.954 INFO    ] Launching Daemon at Tue Aug 25 05:00:28 IST 2026
[2026-08-25 05:00:28,966.966 INFO    ] ================================================
[2026-08-25 05:00:29,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:00:29
[2026-08-25 05:00:30,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:00:30,603.603 INFO    ] Initializing speech engine...
[2026-08-25 05:00:30,616.616 INFO    ] 2026-08-25 05:00:30
[2026-08-25 05:00:30,932.932 INFO    ] 2026-08-25 05:00:30
[2026-08-25 05:00:31,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:00:31,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:00:31,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:00:31,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:00:31,440.440 INFO    ] time= 25/08/2026 05:00:31
[2026-08-25 05:00:31,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:00:31,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:00:31,625.625 INFO    ] No existing commands found in stream
[2026-08-25 05:00:36,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:00:36,659.659 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 05:00:39,416.416 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:00:39,419.419 INFO    ] Checking for system updates...
[2026-08-25 05:00:39,461.461 INFO    ] 200
[2026-08-25 05:00:39,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:39,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:00:39,521.521 INFO    ] No update needed
[2026-08-25 05:00:39,524.524 INFO    ] Checking for camera pi updates...
[2026-08-25 05:00:39,563.563 INFO    ] 200
[2026-08-25 05:00:39,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:39,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:00:39,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:00:39,707.707 INFO    ] No camera update needed
[2026-08-25 05:00:39,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:00:39,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:00:39,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:00:39,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:00:41,767.767 INFO    ] ================================================
[2026-08-25 05:00:41,783.783 INFO    ] Launching Daemon at Tue Aug 25 05:00:41 IST 2026
[2026-08-25 05:00:41,794.794 INFO    ] ================================================
[2026-08-25 05:00:42,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:00:42
[2026-08-25 05:00:43,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:00:43,445.445 INFO    ] Initializing speech engine...
[2026-08-25 05:00:43,459.459 INFO    ] 2026-08-25 05:00:43
[2026-08-25 05:00:43,782.782 INFO    ] 2026-08-25 05:00:43
[2026-08-25 05:00:43,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:00:44,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:00:44,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:00:44,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:00:44,286.286 INFO    ] time= 25/08/2026 05:00:44
[2026-08-25 05:00:44,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:00:44,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:00:44,441.441 INFO    ] No existing commands found in stream
[2026-08-25 05:00:49,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:00:49,474.474 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 05:00:52,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:00:52,380.380 INFO    ] Checking for system updates...
[2026-08-25 05:00:52,421.421 INFO    ] 200
[2026-08-25 05:00:52,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:52,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:00:52,482.482 INFO    ] No update needed
[2026-08-25 05:00:52,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 05:00:52,518.518 INFO    ] 200
[2026-08-25 05:00:52,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:00:52,561.561 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:00:52,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:00:52,612.612 INFO    ] No camera update needed
[2026-08-25 05:00:52,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:00:52,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:00:52,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:00:52,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:00:54,667.667 INFO    ] ================================================
[2026-08-25 05:00:54,683.683 INFO    ] Launching Daemon at Tue Aug 25 05:00:54 IST 2026
[2026-08-25 05:00:54,694.694 INFO    ] ================================================
[2026-08-25 05:00:55,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:00:55
[2026-08-25 05:00:56,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:00:56,340.340 INFO    ] Initializing speech engine...
[2026-08-25 05:00:56,350.350 INFO    ] 2026-08-25 05:00:56
[2026-08-25 05:00:56,655.655 INFO    ] 2026-08-25 05:00:56
[2026-08-25 05:00:56,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:00:56,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:00:56,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:00:57,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:00:57,160.160 INFO    ] time= 25/08/2026 05:00:57
[2026-08-25 05:00:57,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:00:57,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:00:57,343.343 INFO    ] No existing commands found in stream
[2026-08-25 05:01:02,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:01:02,373.373 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 05:01:06,034.034 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:01:06,037.037 INFO    ] Checking for system updates...
[2026-08-25 05:01:06,073.073 INFO    ] 200
[2026-08-25 05:01:06,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:06,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:06,135.135 INFO    ] No update needed
[2026-08-25 05:01:06,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 05:01:06,173.173 INFO    ] 200
[2026-08-25 05:01:06,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:06,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:01:06,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:06,265.265 INFO    ] No camera update needed
[2026-08-25 05:01:06,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:01:06,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:01:06,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:01:06,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:01:08,321.321 INFO    ] ================================================
[2026-08-25 05:01:08,336.336 INFO    ] Launching Daemon at Tue Aug 25 05:01:08 IST 2026
[2026-08-25 05:01:08,347.347 INFO    ] ================================================
[2026-08-25 05:01:08,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:01:08
[2026-08-25 05:01:09,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:01:09,901.901 INFO    ] Initializing speech engine...
[2026-08-25 05:01:09,909.909 INFO    ] 2026-08-25 05:01:09
[2026-08-25 05:01:10,188.188 INFO    ] 2026-08-25 05:01:10
[2026-08-25 05:01:10,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:01:10,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:01:10,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:01:10,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:01:10,642.642 INFO    ] time= 25/08/2026 05:01:10
[2026-08-25 05:01:10,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:01:10,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:01:10,873.873 INFO    ] No existing commands found in stream
[2026-08-25 05:01:15,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:01:15,892.892 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 05:01:17,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:01:17,749.749 INFO    ] Checking for system updates...
[2026-08-25 05:01:17,785.785 INFO    ] 200
[2026-08-25 05:01:17,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:17,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:17,843.843 INFO    ] No update needed
[2026-08-25 05:01:17,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 05:01:17,882.882 INFO    ] 200
[2026-08-25 05:01:17,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:17,931.931 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:01:17,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:17,992.992 INFO    ] No camera update needed
[2026-08-25 05:01:17,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:01:17,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:01:18,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:01:18,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:01:20,049.049 INFO    ] ================================================
[2026-08-25 05:01:20,065.065 INFO    ] Launching Daemon at Tue Aug 25 05:01:20 IST 2026
[2026-08-25 05:01:20,076.076 INFO    ] ================================================
[2026-08-25 05:01:20,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:01:20
[2026-08-25 05:01:21,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:01:21,676.676 INFO    ] Initializing speech engine...
[2026-08-25 05:01:21,689.689 INFO    ] 2026-08-25 05:01:21
[2026-08-25 05:01:21,999.999 INFO    ] 2026-08-25 05:01:21
[2026-08-25 05:01:22,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:01:22,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:01:22,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:01:22,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:01:22,510.510 INFO    ] time= 25/08/2026 05:01:22
[2026-08-25 05:01:22,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:01:22,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:01:22,683.683 INFO    ] No existing commands found in stream
[2026-08-25 05:01:27,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:01:27,712.712 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 05:01:29,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:01:29,483.483 INFO    ] Checking for system updates...
[2026-08-25 05:01:29,519.519 INFO    ] 200
[2026-08-25 05:01:29,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:29,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:29,584.584 INFO    ] No update needed
[2026-08-25 05:01:29,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 05:01:29,621.621 INFO    ] 200
[2026-08-25 05:01:29,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:29,664.664 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:01:29,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:29,728.728 INFO    ] No camera update needed
[2026-08-25 05:01:29,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:01:29,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:01:29,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:01:29,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:01:31,790.790 INFO    ] ================================================
[2026-08-25 05:01:31,806.806 INFO    ] Launching Daemon at Tue Aug 25 05:01:31 IST 2026
[2026-08-25 05:01:31,819.819 INFO    ] ================================================
[2026-08-25 05:01:32,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:01:32
[2026-08-25 05:01:33,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:01:33,327.327 INFO    ] Initializing speech engine...
[2026-08-25 05:01:33,336.336 INFO    ] 2026-08-25 05:01:33
[2026-08-25 05:01:33,598.598 INFO    ] 2026-08-25 05:01:33
[2026-08-25 05:01:33,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:01:33,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:01:33,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:01:33,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:01:33,972.972 INFO    ] time= 25/08/2026 05:01:33
[2026-08-25 05:01:33,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:01:33,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:01:34,096.096 INFO    ] No existing commands found in stream
[2026-08-25 05:01:39,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:01:39,110.110 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 05:01:42,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:01:42,508.508 INFO    ] Checking for system updates...
[2026-08-25 05:01:42,544.544 INFO    ] 200
[2026-08-25 05:01:42,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:42,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:01:42,601.601 INFO    ] No update needed
[2026-08-25 05:01:42,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 05:01:42,637.637 INFO    ] 200
[2026-08-25 05:01:42,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:42,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:01:42,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:01:42,730.730 INFO    ] No camera update needed
[2026-08-25 05:01:42,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:01:42,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:01:42,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:01:42,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:01:44,788.788 INFO    ] ================================================
[2026-08-25 05:01:44,803.803 INFO    ] Launching Daemon at Tue Aug 25 05:01:44 IST 2026
[2026-08-25 05:01:44,814.814 INFO    ] ================================================
[2026-08-25 05:01:45,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:01:45
[2026-08-25 05:01:46,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:01:46,422.422 INFO    ] Initializing speech engine...
[2026-08-25 05:01:46,430.430 INFO    ] 2026-08-25 05:01:46
[2026-08-25 05:01:46,733.733 INFO    ] 2026-08-25 05:01:46
[2026-08-25 05:01:46,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:01:46,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:01:46,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:01:47,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:01:47,232.232 INFO    ] time= 25/08/2026 05:01:47
[2026-08-25 05:01:47,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:01:47,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:01:47,397.397 INFO    ] No existing commands found in stream
[2026-08-25 05:01:52,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:01:52,432.432 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 05:01:55,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:01:55,697.697 INFO    ] Checking for system updates...
[2026-08-25 05:01:55,733.733 INFO    ] 200
[2026-08-25 05:01:55,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:55,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:55,791.791 INFO    ] No update needed
[2026-08-25 05:01:55,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 05:01:55,828.828 INFO    ] 200
[2026-08-25 05:01:55,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:01:55,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:01:55,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:01:55,934.934 INFO    ] No camera update needed
[2026-08-25 05:01:55,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:01:55,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:01:55,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:01:55,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:01:58,994.994 INFO    ] ================================================
[2026-08-25 05:01:58,010.010 INFO    ] Launching Daemon at Tue Aug 25 05:01:58 IST 2026
[2026-08-25 05:01:58,022.022 INFO    ] ================================================
[2026-08-25 05:01:58,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:01:58
[2026-08-25 05:01:59,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:01:59,440.440 INFO    ] Initializing speech engine...
[2026-08-25 05:01:59,449.449 INFO    ] 2026-08-25 05:01:59
[2026-08-25 05:01:59,695.695 INFO    ] 2026-08-25 05:01:59
[2026-08-25 05:01:59,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:01:59,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:01:59,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:02:00,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:02:00,164.164 INFO    ] time= 25/08/2026 05:02:00
[2026-08-25 05:02:00,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:02:00,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:02:00,400.400 INFO    ] No existing commands found in stream
[2026-08-25 05:02:05,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:02:05,418.418 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 05:02:07,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:02:07,393.393 INFO    ] Checking for system updates...
[2026-08-25 05:02:07,428.428 INFO    ] 200
[2026-08-25 05:02:07,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:07,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:02:07,485.485 INFO    ] No update needed
[2026-08-25 05:02:07,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 05:02:07,521.521 INFO    ] 200
[2026-08-25 05:02:07,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:07,563.563 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:02:07,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:02:07,615.615 INFO    ] No camera update needed
[2026-08-25 05:02:07,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:02:07,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:02:07,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:02:07,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:02:09,670.670 INFO    ] ================================================
[2026-08-25 05:02:09,685.685 INFO    ] Launching Daemon at Tue Aug 25 05:02:09 IST 2026
[2026-08-25 05:02:09,696.696 INFO    ] ================================================
[2026-08-25 05:02:10,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:02:10
[2026-08-25 05:02:10,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:02:11,160.160 INFO    ] Initializing speech engine...
[2026-08-25 05:02:11,169.169 INFO    ] 2026-08-25 05:02:11
[2026-08-25 05:02:11,432.432 INFO    ] 2026-08-25 05:02:11
[2026-08-25 05:02:11,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:02:11,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:02:11,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:02:11,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:02:11,916.916 INFO    ] time= 25/08/2026 05:02:11
[2026-08-25 05:02:11,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:02:11,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:02:12,115.115 INFO    ] No existing commands found in stream
[2026-08-25 05:02:17,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:02:17,141.141 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 05:02:20,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:02:20,185.185 INFO    ] Checking for system updates...
[2026-08-25 05:02:20,221.221 INFO    ] 200
[2026-08-25 05:02:20,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:20,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:02:20,281.281 INFO    ] No update needed
[2026-08-25 05:02:20,284.284 INFO    ] Checking for camera pi updates...
[2026-08-25 05:02:20,317.317 INFO    ] 200
[2026-08-25 05:02:20,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:20,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:02:20,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:02:20,414.414 INFO    ] No camera update needed
[2026-08-25 05:02:20,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:02:20,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:02:20,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:02:20,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:02:22,469.469 INFO    ] ================================================
[2026-08-25 05:02:22,485.485 INFO    ] Launching Daemon at Tue Aug 25 05:02:22 IST 2026
[2026-08-25 05:02:22,496.496 INFO    ] ================================================
[2026-08-25 05:02:23,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:02:23
[2026-08-25 05:02:23,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:02:23,950.950 INFO    ] Initializing speech engine...
[2026-08-25 05:02:23,960.960 INFO    ] 2026-08-25 05:02:23
[2026-08-25 05:02:24,222.222 INFO    ] 2026-08-25 05:02:24
[2026-08-25 05:02:24,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:02:24,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:02:24,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:02:24,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:02:24,587.587 INFO    ] time= 25/08/2026 05:02:24
[2026-08-25 05:02:24,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:02:24,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:02:24,780.780 INFO    ] No existing commands found in stream
[2026-08-25 05:02:29,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:02:29,795.795 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 05:02:31,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:02:31,409.409 INFO    ] Checking for system updates...
[2026-08-25 05:02:31,445.445 INFO    ] 200
[2026-08-25 05:02:31,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:31,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:02:31,502.502 INFO    ] No update needed
[2026-08-25 05:02:31,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 05:02:31,537.537 INFO    ] 200
[2026-08-25 05:02:31,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:31,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:02:31,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:02:31,652.652 INFO    ] No camera update needed
[2026-08-25 05:02:31,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:02:31,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:02:31,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:02:31,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:02:33,716.716 INFO    ] ================================================
[2026-08-25 05:02:33,733.733 INFO    ] Launching Daemon at Tue Aug 25 05:02:33 IST 2026
[2026-08-25 05:02:33,745.745 INFO    ] ================================================
[2026-08-25 05:02:34,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:02:34
[2026-08-25 05:02:34,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:02:35,200.200 INFO    ] Initializing speech engine...
[2026-08-25 05:02:35,203.203 INFO    ] 2026-08-25 05:02:35
[2026-08-25 05:02:35,483.483 INFO    ] 2026-08-25 05:02:35
[2026-08-25 05:02:35,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:02:35,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:02:35,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:02:35,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:02:35,874.874 INFO    ] time= 25/08/2026 05:02:35
[2026-08-25 05:02:35,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:02:35,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:02:35,975.975 INFO    ] No existing commands found in stream
[2026-08-25 05:02:40,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:02:40,993.993 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 05:02:43,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:02:43,975.975 INFO    ] Checking for system updates...
[2026-08-25 05:02:44,011.011 INFO    ] 200
[2026-08-25 05:02:44,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:44,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:02:44,076.076 INFO    ] No update needed
[2026-08-25 05:02:44,079.079 INFO    ] Checking for camera pi updates...
[2026-08-25 05:02:44,117.117 INFO    ] 200
[2026-08-25 05:02:44,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:44,162.162 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:02:44,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:02:44,314.314 INFO    ] No camera update needed
[2026-08-25 05:02:44,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:02:44,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:02:44,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:02:44,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:02:46,374.374 INFO    ] ================================================
[2026-08-25 05:02:46,390.390 INFO    ] Launching Daemon at Tue Aug 25 05:02:46 IST 2026
[2026-08-25 05:02:46,401.401 INFO    ] ================================================
[2026-08-25 05:02:47,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:02:47
[2026-08-25 05:02:47,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:02:47,919.919 INFO    ] Initializing speech engine...
[2026-08-25 05:02:47,928.928 INFO    ] 2026-08-25 05:02:47
[2026-08-25 05:02:48,184.184 INFO    ] 2026-08-25 05:02:48
[2026-08-25 05:02:48,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:02:48,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:02:48,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:02:48,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:02:48,636.636 INFO    ] time= 25/08/2026 05:02:48
[2026-08-25 05:02:48,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:02:48,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:02:48,858.858 INFO    ] No existing commands found in stream
[2026-08-25 05:02:53,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:02:53,887.887 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 05:02:56,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:02:56,881.881 INFO    ] Checking for system updates...
[2026-08-25 05:02:56,922.922 INFO    ] 200
[2026-08-25 05:02:56,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:56,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:02:56,980.980 INFO    ] No update needed
[2026-08-25 05:02:56,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 05:02:57,016.016 INFO    ] 200
[2026-08-25 05:02:57,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:02:57,057.057 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:02:57,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:02:57,118.118 INFO    ] No camera update needed
[2026-08-25 05:02:57,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:02:57,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:02:57,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:02:57,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:02:59,173.173 INFO    ] ================================================
[2026-08-25 05:02:59,189.189 INFO    ] Launching Daemon at Tue Aug 25 05:02:59 IST 2026
[2026-08-25 05:02:59,200.200 INFO    ] ================================================
[2026-08-25 05:02:59,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:02:59
[2026-08-25 05:03:00,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:03:00,826.826 INFO    ] Initializing speech engine...
[2026-08-25 05:03:00,837.837 INFO    ] 2026-08-25 05:03:00
[2026-08-25 05:03:01,107.107 INFO    ] 2026-08-25 05:03:01
[2026-08-25 05:03:01,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:03:01,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:03:01,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:03:01,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:03:01,568.568 INFO    ] time= 25/08/2026 05:03:01
[2026-08-25 05:03:01,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:03:01,613.613 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:03:01,682.682 INFO    ] No existing commands found in stream
[2026-08-25 05:03:06,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:03:06,711.711 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 05:03:08,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:03:08,852.852 INFO    ] Checking for system updates...
[2026-08-25 05:03:08,888.888 INFO    ] 200
[2026-08-25 05:03:08,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:08,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:03:08,955.955 INFO    ] No update needed
[2026-08-25 05:03:08,958.958 INFO    ] Checking for camera pi updates...
[2026-08-25 05:03:08,995.995 INFO    ] 200
[2026-08-25 05:03:08,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:09,045.045 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:03:09,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:03:09,103.103 INFO    ] No camera update needed
[2026-08-25 05:03:09,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:03:09,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:03:09,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:03:09,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:03:11,163.163 INFO    ] ================================================
[2026-08-25 05:03:11,179.179 INFO    ] Launching Daemon at Tue Aug 25 05:03:11 IST 2026
[2026-08-25 05:03:11,189.189 INFO    ] ================================================
[2026-08-25 05:03:11,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:03:11
[2026-08-25 05:03:12,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:03:12,785.785 INFO    ] Initializing speech engine...
[2026-08-25 05:03:12,792.792 INFO    ] 2026-08-25 05:03:12
[2026-08-25 05:03:13,073.073 INFO    ] 2026-08-25 05:03:13
[2026-08-25 05:03:13,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:03:13,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:03:13,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:03:13,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:03:13,632.632 INFO    ] time= 25/08/2026 05:03:13
[2026-08-25 05:03:13,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:03:13,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:03:13,779.779 INFO    ] No existing commands found in stream
[2026-08-25 05:03:18,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:03:18,813.813 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 05:03:19,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:03:19,434.434 INFO    ] Checking for system updates...
[2026-08-25 05:03:19,470.470 INFO    ] 200
[2026-08-25 05:03:19,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:19,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:03:19,534.534 INFO    ] No update needed
[2026-08-25 05:03:19,537.537 INFO    ] Checking for camera pi updates...
[2026-08-25 05:03:19,571.571 INFO    ] 200
[2026-08-25 05:03:19,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:19,615.615 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:03:19,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:03:19,675.675 INFO    ] No camera update needed
[2026-08-25 05:03:19,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:03:19,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:03:19,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:03:19,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:03:21,732.732 INFO    ] ================================================
[2026-08-25 05:03:21,747.747 INFO    ] Launching Daemon at Tue Aug 25 05:03:21 IST 2026
[2026-08-25 05:03:21,759.759 INFO    ] ================================================
[2026-08-25 05:03:22,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:03:22
[2026-08-25 05:03:23,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:03:23,366.366 INFO    ] Initializing speech engine...
[2026-08-25 05:03:23,381.381 INFO    ] 2026-08-25 05:03:23
[2026-08-25 05:03:23,708.708 INFO    ] 2026-08-25 05:03:23
[2026-08-25 05:03:23,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:03:23,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:03:24,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:03:24,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:03:24,238.238 INFO    ] time= 25/08/2026 05:03:24
[2026-08-25 05:03:24,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:03:24,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:03:24,412.412 INFO    ] No existing commands found in stream
[2026-08-25 05:03:29,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:03:29,446.446 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 05:03:32,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:03:32,796.796 INFO    ] Checking for system updates...
[2026-08-25 05:03:32,835.835 INFO    ] 200
[2026-08-25 05:03:32,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:32,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:03:32,910.910 INFO    ] No update needed
[2026-08-25 05:03:32,913.913 INFO    ] Checking for camera pi updates...
[2026-08-25 05:03:32,952.952 INFO    ] 200
[2026-08-25 05:03:32,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:32,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:03:33,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:03:33,054.054 INFO    ] No camera update needed
[2026-08-25 05:03:33,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:03:33,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:03:33,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:03:33,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:03:35,108.108 INFO    ] ================================================
[2026-08-25 05:03:35,123.123 INFO    ] Launching Daemon at Tue Aug 25 05:03:35 IST 2026
[2026-08-25 05:03:35,134.134 INFO    ] ================================================
[2026-08-25 05:03:35,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:03:35
[2026-08-25 05:03:36,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:03:36,549.549 INFO    ] Initializing speech engine...
[2026-08-25 05:03:36,558.558 INFO    ] 2026-08-25 05:03:36
[2026-08-25 05:03:36,803.803 INFO    ] 2026-08-25 05:03:36
[2026-08-25 05:03:36,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:03:37,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:03:37,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:03:37,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:03:37,175.175 INFO    ] time= 25/08/2026 05:03:37
[2026-08-25 05:03:37,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:03:37,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:03:37,368.368 INFO    ] No existing commands found in stream
[2026-08-25 05:03:42,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:03:42,383.383 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 05:03:44,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:03:44,741.741 INFO    ] Checking for system updates...
[2026-08-25 05:03:44,777.777 INFO    ] 200
[2026-08-25 05:03:44,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:44,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:03:44,835.835 INFO    ] No update needed
[2026-08-25 05:03:44,837.837 INFO    ] Checking for camera pi updates...
[2026-08-25 05:03:44,870.870 INFO    ] 200
[2026-08-25 05:03:44,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:44,912.912 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:03:44,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:03:44,961.961 INFO    ] No camera update needed
[2026-08-25 05:03:44,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:03:44,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:03:44,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:03:44,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:03:47,016.016 INFO    ] ================================================
[2026-08-25 05:03:47,032.032 INFO    ] Launching Daemon at Tue Aug 25 05:03:47 IST 2026
[2026-08-25 05:03:47,044.044 INFO    ] ================================================
[2026-08-25 05:03:47,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:03:47
[2026-08-25 05:03:48,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:03:48,467.467 INFO    ] Initializing speech engine...
[2026-08-25 05:03:48,477.477 INFO    ] 2026-08-25 05:03:48
[2026-08-25 05:03:48,724.724 INFO    ] 2026-08-25 05:03:48
[2026-08-25 05:03:48,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:03:49,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:03:49,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:03:49,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:03:49,196.196 INFO    ] time= 25/08/2026 05:03:49
[2026-08-25 05:03:49,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:03:49,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:03:49,427.427 INFO    ] No existing commands found in stream
[2026-08-25 05:03:54,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:03:54,450.450 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 05:03:56,289.289 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:03:56,292.292 INFO    ] Checking for system updates...
[2026-08-25 05:03:56,328.328 INFO    ] 200
[2026-08-25 05:03:56,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:56,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:03:56,385.385 INFO    ] No update needed
[2026-08-25 05:03:56,387.387 INFO    ] Checking for camera pi updates...
[2026-08-25 05:03:56,420.420 INFO    ] 200
[2026-08-25 05:03:56,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:03:56,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:03:56,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:03:56,523.523 INFO    ] No camera update needed
[2026-08-25 05:03:56,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:03:56,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:03:56,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:03:56,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:03:58,578.578 INFO    ] ================================================
[2026-08-25 05:03:58,595.595 INFO    ] Launching Daemon at Tue Aug 25 05:03:58 IST 2026
[2026-08-25 05:03:58,605.605 INFO    ] ================================================
[2026-08-25 05:03:59,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:03:59
[2026-08-25 05:03:59,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:04:00,132.132 INFO    ] Initializing speech engine...
[2026-08-25 05:04:00,141.141 INFO    ] 2026-08-25 05:04:00
[2026-08-25 05:04:00,386.386 INFO    ] 2026-08-25 05:04:00
[2026-08-25 05:04:00,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:04:00,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:04:00,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:04:00,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:04:00,844.844 INFO    ] time= 25/08/2026 05:04:00
[2026-08-25 05:04:00,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:04:00,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:04:01,058.058 INFO    ] No existing commands found in stream
[2026-08-25 05:04:06,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:04:06,088.088 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 05:04:09,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:04:09,436.436 INFO    ] Checking for system updates...
[2026-08-25 05:04:09,472.472 INFO    ] 200
[2026-08-25 05:04:09,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:09,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:04:09,535.535 INFO    ] No update needed
[2026-08-25 05:04:09,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 05:04:09,571.571 INFO    ] 200
[2026-08-25 05:04:09,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:09,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:04:09,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:04:09,676.676 INFO    ] No camera update needed
[2026-08-25 05:04:09,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:04:09,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:04:09,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:04:09,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:04:11,730.730 INFO    ] ================================================
[2026-08-25 05:04:11,746.746 INFO    ] Launching Daemon at Tue Aug 25 05:04:11 IST 2026
[2026-08-25 05:04:11,757.757 INFO    ] ================================================
[2026-08-25 05:04:12,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:04:12
[2026-08-25 05:04:13,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:04:13,393.393 INFO    ] Initializing speech engine...
[2026-08-25 05:04:13,404.404 INFO    ] 2026-08-25 05:04:13
[2026-08-25 05:04:13,689.689 INFO    ] 2026-08-25 05:04:13
[2026-08-25 05:04:13,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:04:14,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:04:14,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:04:14,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:04:14,220.220 INFO    ] time= 25/08/2026 05:04:14
[2026-08-25 05:04:14,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:04:14,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:04:14,405.405 INFO    ] No existing commands found in stream
[2026-08-25 05:04:19,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:04:19,439.439 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 05:04:20,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:04:20,482.482 INFO    ] Checking for system updates...
[2026-08-25 05:04:20,517.517 INFO    ] 200
[2026-08-25 05:04:20,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:20,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:04:20,572.572 INFO    ] No update needed
[2026-08-25 05:04:20,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 05:04:20,608.608 INFO    ] 200
[2026-08-25 05:04:20,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:20,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:04:20,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:04:20,706.706 INFO    ] No camera update needed
[2026-08-25 05:04:20,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:04:20,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:04:20,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:04:20,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:04:22,761.761 INFO    ] ================================================
[2026-08-25 05:04:22,777.777 INFO    ] Launching Daemon at Tue Aug 25 05:04:22 IST 2026
[2026-08-25 05:04:22,789.789 INFO    ] ================================================
[2026-08-25 05:04:23,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:04:23
[2026-08-25 05:04:24,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:04:24,447.447 INFO    ] Initializing speech engine...
[2026-08-25 05:04:24,461.461 INFO    ] 2026-08-25 05:04:24
[2026-08-25 05:04:24,754.754 INFO    ] 2026-08-25 05:04:24
[2026-08-25 05:04:24,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:04:25,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:04:25,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:04:25,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:04:25,283.283 INFO    ] time= 25/08/2026 05:04:25
[2026-08-25 05:04:25,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:04:25,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:04:25,439.439 INFO    ] No existing commands found in stream
[2026-08-25 05:04:30,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:04:30,461.461 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 05:04:34,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:04:34,691.691 INFO    ] Checking for system updates...
[2026-08-25 05:04:34,760.760 INFO    ] 200
[2026-08-25 05:04:34,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:34,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:04:34,825.825 INFO    ] No update needed
[2026-08-25 05:04:34,828.828 INFO    ] Checking for camera pi updates...
[2026-08-25 05:04:34,866.866 INFO    ] 200
[2026-08-25 05:04:34,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:34,918.918 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:04:34,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:04:34,978.978 INFO    ] No camera update needed
[2026-08-25 05:04:34,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:04:34,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:04:34,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:04:34,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:04:37,036.036 INFO    ] ================================================
[2026-08-25 05:04:37,051.051 INFO    ] Launching Daemon at Tue Aug 25 05:04:37 IST 2026
[2026-08-25 05:04:37,062.062 INFO    ] ================================================
[2026-08-25 05:04:37,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:04:37
[2026-08-25 05:04:38,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:04:38,659.659 INFO    ] Initializing speech engine...
[2026-08-25 05:04:38,664.664 INFO    ] 2026-08-25 05:04:38
[2026-08-25 05:04:38,935.935 INFO    ] 2026-08-25 05:04:38
[2026-08-25 05:04:38,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:04:39,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:04:39,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:04:39,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:04:39,456.456 INFO    ] time= 25/08/2026 05:04:39
[2026-08-25 05:04:39,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:04:39,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:04:39,646.646 INFO    ] No existing commands found in stream
[2026-08-25 05:04:44,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:04:44,665.665 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 05:04:48,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:04:48,700.700 INFO    ] Checking for system updates...
[2026-08-25 05:04:48,735.735 INFO    ] 200
[2026-08-25 05:04:48,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:48,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:04:48,793.793 INFO    ] No update needed
[2026-08-25 05:04:48,796.796 INFO    ] Checking for camera pi updates...
[2026-08-25 05:04:48,830.830 INFO    ] 200
[2026-08-25 05:04:48,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:04:48,872.872 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:04:49,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:04:49,023.023 INFO    ] No camera update needed
[2026-08-25 05:04:49,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:04:49,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:04:49,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:04:49,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:04:51,078.078 INFO    ] ================================================
[2026-08-25 05:04:51,093.093 INFO    ] Launching Daemon at Tue Aug 25 05:04:51 IST 2026
[2026-08-25 05:04:51,104.104 INFO    ] ================================================
[2026-08-25 05:04:51,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:04:51
[2026-08-25 05:04:52,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:04:52,745.745 INFO    ] Initializing speech engine...
[2026-08-25 05:04:52,750.750 INFO    ] 2026-08-25 05:04:52
[2026-08-25 05:04:53,063.063 INFO    ] 2026-08-25 05:04:53
[2026-08-25 05:04:53,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:04:53,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:04:53,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:04:53,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:04:53,564.564 INFO    ] time= 25/08/2026 05:04:53
[2026-08-25 05:04:53,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:04:53,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:04:53,741.741 INFO    ] No existing commands found in stream
[2026-08-25 05:04:58,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:04:58,770.770 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 05:05:01,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:05:01,326.326 INFO    ] Checking for system updates...
[2026-08-25 05:05:01,362.362 INFO    ] 200
[2026-08-25 05:05:01,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:01,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:05:01,419.419 INFO    ] No update needed
[2026-08-25 05:05:01,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 05:05:01,455.455 INFO    ] 200
[2026-08-25 05:05:01,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:01,517.517 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:05:01,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:05:01,584.584 INFO    ] No camera update needed
[2026-08-25 05:05:01,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:05:01,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:05:01,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:05:01,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:05:03,670.670 INFO    ] ================================================
[2026-08-25 05:05:03,686.686 INFO    ] Launching Daemon at Tue Aug 25 05:05:03 IST 2026
[2026-08-25 05:05:03,697.697 INFO    ] ================================================
[2026-08-25 05:05:04,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:05:04
[2026-08-25 05:05:04,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:05:05,256.256 INFO    ] Initializing speech engine...
[2026-08-25 05:05:05,265.265 INFO    ] 2026-08-25 05:05:05
[2026-08-25 05:05:05,512.512 INFO    ] 2026-08-25 05:05:05
[2026-08-25 05:05:05,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:05:05,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:05:05,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:05:05,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:05:05,980.980 INFO    ] time= 25/08/2026 05:05:05
[2026-08-25 05:05:06,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:05:06,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:05:06,195.195 INFO    ] No existing commands found in stream
[2026-08-25 05:05:11,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:05:11,222.222 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 05:05:12,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:05:12,398.398 INFO    ] Checking for system updates...
[2026-08-25 05:05:12,437.437 INFO    ] 200
[2026-08-25 05:05:12,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:12,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:12,495.495 INFO    ] No update needed
[2026-08-25 05:05:12,497.497 INFO    ] Checking for camera pi updates...
[2026-08-25 05:05:12,531.531 INFO    ] 200
[2026-08-25 05:05:12,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:12,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:05:12,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:12,626.626 INFO    ] No camera update needed
[2026-08-25 05:05:12,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:05:12,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:05:12,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:05:12,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:05:14,682.682 INFO    ] ================================================
[2026-08-25 05:05:14,698.698 INFO    ] Launching Daemon at Tue Aug 25 05:05:14 IST 2026
[2026-08-25 05:05:14,709.709 INFO    ] ================================================
[2026-08-25 05:05:15,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:05:15
[2026-08-25 05:05:15,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:05:16,112.112 INFO    ] Initializing speech engine...
[2026-08-25 05:05:16,119.119 INFO    ] 2026-08-25 05:05:16
[2026-08-25 05:05:16,409.409 INFO    ] 2026-08-25 05:05:16
[2026-08-25 05:05:16,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:05:16,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:05:16,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:05:16,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:05:16,799.799 INFO    ] time= 25/08/2026 05:05:16
[2026-08-25 05:05:16,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:05:16,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:05:16,906.906 INFO    ] No existing commands found in stream
[2026-08-25 05:05:21,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:05:21,920.920 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 05:05:25,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:05:25,190.190 INFO    ] Checking for system updates...
[2026-08-25 05:05:25,225.225 INFO    ] 200
[2026-08-25 05:05:25,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:25,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:25,284.284 INFO    ] No update needed
[2026-08-25 05:05:25,286.286 INFO    ] Checking for camera pi updates...
[2026-08-25 05:05:25,319.319 INFO    ] 200
[2026-08-25 05:05:25,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:25,362.362 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:05:25,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:25,408.408 INFO    ] No camera update needed
[2026-08-25 05:05:25,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:05:25,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:05:25,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:05:25,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:05:27,462.462 INFO    ] ================================================
[2026-08-25 05:05:27,477.477 INFO    ] Launching Daemon at Tue Aug 25 05:05:27 IST 2026
[2026-08-25 05:05:27,488.488 INFO    ] ================================================
[2026-08-25 05:05:28,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:05:28
[2026-08-25 05:05:28,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:05:29,082.082 INFO    ] Initializing speech engine...
[2026-08-25 05:05:29,090.090 INFO    ] 2026-08-25 05:05:29
[2026-08-25 05:05:29,360.360 INFO    ] 2026-08-25 05:05:29
[2026-08-25 05:05:29,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:05:29,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:05:29,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:05:29,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:05:29,849.849 INFO    ] time= 25/08/2026 05:05:29
[2026-08-25 05:05:29,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:05:29,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:05:30,069.069 INFO    ] No existing commands found in stream
[2026-08-25 05:05:35,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:05:35,090.090 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 05:05:36,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:05:36,781.781 INFO    ] Checking for system updates...
[2026-08-25 05:05:36,816.816 INFO    ] 200
[2026-08-25 05:05:36,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:36,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:36,879.879 INFO    ] No update needed
[2026-08-25 05:05:36,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 05:05:36,918.918 INFO    ] 200
[2026-08-25 05:05:36,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:36,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:05:37,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:37,014.014 INFO    ] No camera update needed
[2026-08-25 05:05:37,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:05:37,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:05:37,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:05:37,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:05:39,068.068 INFO    ] ================================================
[2026-08-25 05:05:39,083.083 INFO    ] Launching Daemon at Tue Aug 25 05:05:39 IST 2026
[2026-08-25 05:05:39,094.094 INFO    ] ================================================
[2026-08-25 05:05:39,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:05:39
[2026-08-25 05:05:40,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:05:40,648.648 INFO    ] Initializing speech engine...
[2026-08-25 05:05:40,661.661 INFO    ] 2026-08-25 05:05:40
[2026-08-25 05:05:40,918.918 INFO    ] 2026-08-25 05:05:40
[2026-08-25 05:05:40,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:05:41,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:05:41,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:05:41,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:05:41,364.364 INFO    ] time= 25/08/2026 05:05:41
[2026-08-25 05:05:41,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:05:41,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:05:41,621.621 INFO    ] No existing commands found in stream
[2026-08-25 05:05:46,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:05:46,646.646 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-25 05:05:49,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:05:49,549.549 INFO    ] Checking for system updates...
[2026-08-25 05:05:49,584.584 INFO    ] 200
[2026-08-25 05:05:49,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:49,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:49,640.640 INFO    ] No update needed
[2026-08-25 05:05:49,643.643 INFO    ] Checking for camera pi updates...
[2026-08-25 05:05:49,676.676 INFO    ] 200
[2026-08-25 05:05:49,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:05:49,718.718 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:05:49,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:05:49,765.765 INFO    ] No camera update needed
[2026-08-25 05:05:49,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:05:49,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:05:49,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:05:49,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:05:51,820.820 INFO    ] ================================================
[2026-08-25 05:05:51,836.836 INFO    ] Launching Daemon at Tue Aug 25 05:05:51 IST 2026
[2026-08-25 05:05:51,847.847 INFO    ] ================================================
[2026-08-25 05:05:52,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:05:52
[2026-08-25 05:05:53,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:05:53,439.439 INFO    ] Initializing speech engine...
[2026-08-25 05:05:53,452.452 INFO    ] 2026-08-25 05:05:53
[2026-08-25 05:05:53,735.735 INFO    ] 2026-08-25 05:05:53
[2026-08-25 05:05:53,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:05:53,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:05:54,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:05:54,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:05:54,202.202 INFO    ] time= 25/08/2026 05:05:54
[2026-08-25 05:05:54,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:05:54,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:05:54,418.418 INFO    ] No existing commands found in stream
[2026-08-25 05:05:59,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:05:59,440.440 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 05:06:01,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:06:01,906.906 INFO    ] Checking for system updates...
[2026-08-25 05:06:01,961.961 INFO    ] 200
[2026-08-25 05:06:01,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:02,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:06:02,089.089 INFO    ] No update needed
[2026-08-25 05:06:02,093.093 INFO    ] Checking for camera pi updates...
[2026-08-25 05:06:02,152.152 INFO    ] 200
[2026-08-25 05:06:02,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:02,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:06:02,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:06:02,272.272 INFO    ] No camera update needed
[2026-08-25 05:06:02,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:06:02,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:06:02,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:06:02,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:06:04,330.330 INFO    ] ================================================
[2026-08-25 05:06:04,346.346 INFO    ] Launching Daemon at Tue Aug 25 05:06:04 IST 2026
[2026-08-25 05:06:04,357.357 INFO    ] ================================================
[2026-08-25 05:06:04,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:06:04
[2026-08-25 05:06:05,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:06:05,778.778 INFO    ] Initializing speech engine...
[2026-08-25 05:06:05,787.787 INFO    ] 2026-08-25 05:06:05
[2026-08-25 05:06:06,040.040 INFO    ] 2026-08-25 05:06:06
[2026-08-25 05:06:06,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:06:06,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:06:06,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:06:06,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:06:06,502.502 INFO    ] time= 25/08/2026 05:06:06
[2026-08-25 05:06:06,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:06:06,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:06:06,709.709 INFO    ] No existing commands found in stream
[2026-08-25 05:06:11,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:06:11,743.743 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 05:06:14,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:06:14,880.880 INFO    ] Checking for system updates...
[2026-08-25 05:06:14,915.915 INFO    ] 200
[2026-08-25 05:06:14,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:14,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:14,971.971 INFO    ] No update needed
[2026-08-25 05:06:14,974.974 INFO    ] Checking for camera pi updates...
[2026-08-25 05:06:15,007.007 INFO    ] 200
[2026-08-25 05:06:15,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:15,049.049 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:06:15,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:15,108.108 INFO    ] No camera update needed
[2026-08-25 05:06:15,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:06:15,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:06:15,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:06:15,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:06:17,163.163 INFO    ] ================================================
[2026-08-25 05:06:17,178.178 INFO    ] Launching Daemon at Tue Aug 25 05:06:17 IST 2026
[2026-08-25 05:06:17,189.189 INFO    ] ================================================
[2026-08-25 05:06:17,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:06:17
[2026-08-25 05:06:18,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:06:18,590.590 INFO    ] Initializing speech engine...
[2026-08-25 05:06:18,599.599 INFO    ] 2026-08-25 05:06:18
[2026-08-25 05:06:18,885.885 INFO    ] 2026-08-25 05:06:18
[2026-08-25 05:06:18,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:06:19,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:06:19,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:06:19,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:06:19,254.254 INFO    ] time= 25/08/2026 05:06:19
[2026-08-25 05:06:19,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:06:19,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:06:19,374.374 INFO    ] No existing commands found in stream
[2026-08-25 05:06:24,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:06:24,389.389 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 05:06:26,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:06:26,409.409 INFO    ] Checking for system updates...
[2026-08-25 05:06:26,448.448 INFO    ] 200
[2026-08-25 05:06:26,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:26,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:26,511.511 INFO    ] No update needed
[2026-08-25 05:06:26,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 05:06:26,548.548 INFO    ] 200
[2026-08-25 05:06:26,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:26,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:06:26,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:26,643.643 INFO    ] No camera update needed
[2026-08-25 05:06:26,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:06:26,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:06:26,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:06:26,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:06:28,702.702 INFO    ] ================================================
[2026-08-25 05:06:28,719.719 INFO    ] Launching Daemon at Tue Aug 25 05:06:28 IST 2026
[2026-08-25 05:06:28,732.732 INFO    ] ================================================
[2026-08-25 05:06:29,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:06:29
[2026-08-25 05:06:29,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:06:30,208.208 INFO    ] Initializing speech engine...
[2026-08-25 05:06:30,218.218 INFO    ] 2026-08-25 05:06:30
[2026-08-25 05:06:30,476.476 INFO    ] 2026-08-25 05:06:30
[2026-08-25 05:06:30,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:06:30,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:06:30,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:06:30,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:06:30,874.874 INFO    ] time= 25/08/2026 05:06:30
[2026-08-25 05:06:30,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:06:30,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:06:31,049.049 INFO    ] No existing commands found in stream
[2026-08-25 05:06:36,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:06:36,082.082 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 05:06:36,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:06:36,772.772 INFO    ] Checking for system updates...
[2026-08-25 05:06:36,807.807 INFO    ] 200
[2026-08-25 05:06:36,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:36,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:36,864.864 INFO    ] No update needed
[2026-08-25 05:06:36,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 05:06:36,900.900 INFO    ] 200
[2026-08-25 05:06:36,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:36,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:06:36,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:36,992.992 INFO    ] No camera update needed
[2026-08-25 05:06:36,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:06:36,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:06:37,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:06:37,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:06:39,046.046 INFO    ] ================================================
[2026-08-25 05:06:39,061.061 INFO    ] Launching Daemon at Tue Aug 25 05:06:39 IST 2026
[2026-08-25 05:06:39,072.072 INFO    ] ================================================
[2026-08-25 05:06:39,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:06:39
[2026-08-25 05:06:40,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:06:40,624.624 INFO    ] Initializing speech engine...
[2026-08-25 05:06:40,636.636 INFO    ] 2026-08-25 05:06:40
[2026-08-25 05:06:40,939.939 INFO    ] 2026-08-25 05:06:40
[2026-08-25 05:06:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:06:41,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:06:41,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:06:41,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:06:41,380.380 INFO    ] time= 25/08/2026 05:06:41
[2026-08-25 05:06:41,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:06:41,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:06:41,594.594 INFO    ] No existing commands found in stream
[2026-08-25 05:06:46,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:06:46,612.612 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 05:06:47,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:06:47,646.646 INFO    ] Checking for system updates...
[2026-08-25 05:06:47,682.682 INFO    ] 200
[2026-08-25 05:06:47,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:47,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:47,741.741 INFO    ] No update needed
[2026-08-25 05:06:47,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 05:06:47,778.778 INFO    ] 200
[2026-08-25 05:06:47,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:47,821.821 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:06:47,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:06:47,869.869 INFO    ] No camera update needed
[2026-08-25 05:06:47,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:06:47,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:06:47,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:06:47,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:06:49,925.925 INFO    ] ================================================
[2026-08-25 05:06:49,940.940 INFO    ] Launching Daemon at Tue Aug 25 05:06:49 IST 2026
[2026-08-25 05:06:49,951.951 INFO    ] ================================================
[2026-08-25 05:06:50,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:06:50
[2026-08-25 05:06:51,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:06:51,507.507 INFO    ] Initializing speech engine...
[2026-08-25 05:06:51,520.520 INFO    ] 2026-08-25 05:06:51
[2026-08-25 05:06:51,824.824 INFO    ] 2026-08-25 05:06:51
[2026-08-25 05:06:51,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:06:52,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:06:52,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:06:52,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:06:52,329.329 INFO    ] time= 25/08/2026 05:06:52
[2026-08-25 05:06:52,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:06:52,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:06:52,502.502 INFO    ] No existing commands found in stream
[2026-08-25 05:06:57,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:06:57,531.531 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 05:06:59,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:06:59,286.286 INFO    ] Checking for system updates...
[2026-08-25 05:06:59,322.322 INFO    ] 200
[2026-08-25 05:06:59,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:59,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:06:59,381.381 INFO    ] No update needed
[2026-08-25 05:06:59,384.384 INFO    ] Checking for camera pi updates...
[2026-08-25 05:06:59,418.418 INFO    ] 200
[2026-08-25 05:06:59,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:06:59,461.461 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:06:59,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:06:59,608.608 INFO    ] No camera update needed
[2026-08-25 05:06:59,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:06:59,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:06:59,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:06:59,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:07:01,665.665 INFO    ] ================================================
[2026-08-25 05:07:01,680.680 INFO    ] Launching Daemon at Tue Aug 25 05:07:01 IST 2026
[2026-08-25 05:07:01,691.691 INFO    ] ================================================
[2026-08-25 05:07:02,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:07:02
[2026-08-25 05:07:03,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:07:03,529.529 INFO    ] Initializing speech engine...
[2026-08-25 05:07:03,534.534 INFO    ] 2026-08-25 05:07:03
[2026-08-25 05:07:03,825.825 INFO    ] 2026-08-25 05:07:03
[2026-08-25 05:07:03,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:07:04,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:07:04,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:07:04,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:07:04,319.319 INFO    ] time= 25/08/2026 05:07:04
[2026-08-25 05:07:04,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:07:04,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:07:04,525.525 INFO    ] No existing commands found in stream
[2026-08-25 05:07:09,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:07:09,559.559 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 05:07:10,055.055 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:07:10,058.058 INFO    ] Checking for system updates...
[2026-08-25 05:07:10,097.097 INFO    ] 200
[2026-08-25 05:07:10,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:10,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:07:10,155.155 INFO    ] No update needed
[2026-08-25 05:07:10,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 05:07:10,191.191 INFO    ] 200
[2026-08-25 05:07:10,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:10,236.236 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:07:10,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:07:10,296.296 INFO    ] No camera update needed
[2026-08-25 05:07:10,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:07:10,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:07:10,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:07:10,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:07:12,352.352 INFO    ] ================================================
[2026-08-25 05:07:12,367.367 INFO    ] Launching Daemon at Tue Aug 25 05:07:12 IST 2026
[2026-08-25 05:07:12,377.377 INFO    ] ================================================
[2026-08-25 05:07:12,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:07:12
[2026-08-25 05:07:13,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:07:13,800.800 INFO    ] Initializing speech engine...
[2026-08-25 05:07:13,816.816 INFO    ] 2026-08-25 05:07:13
[2026-08-25 05:07:14,081.081 INFO    ] 2026-08-25 05:07:14
[2026-08-25 05:07:14,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:07:14,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:07:14,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:07:14,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:07:14,478.478 INFO    ] time= 25/08/2026 05:07:14
[2026-08-25 05:07:14,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:07:14,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:07:14,568.568 INFO    ] No existing commands found in stream
[2026-08-25 05:07:19,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:07:19,606.606 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 05:07:20,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:07:20,363.363 INFO    ] Checking for system updates...
[2026-08-25 05:07:20,398.398 INFO    ] 200
[2026-08-25 05:07:20,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:20,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:07:20,456.456 INFO    ] No update needed
[2026-08-25 05:07:20,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 05:07:20,491.491 INFO    ] 200
[2026-08-25 05:07:20,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:20,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:07:20,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:07:20,591.591 INFO    ] No camera update needed
[2026-08-25 05:07:20,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:07:20,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:07:20,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:07:20,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:07:22,645.645 INFO    ] ================================================
[2026-08-25 05:07:22,660.660 INFO    ] Launching Daemon at Tue Aug 25 05:07:22 IST 2026
[2026-08-25 05:07:22,671.671 INFO    ] ================================================
[2026-08-25 05:07:23,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:07:23
[2026-08-25 05:07:23,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:07:24,091.091 INFO    ] Initializing speech engine...
[2026-08-25 05:07:24,100.100 INFO    ] 2026-08-25 05:07:24
[2026-08-25 05:07:24,358.358 INFO    ] 2026-08-25 05:07:24
[2026-08-25 05:07:24,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:07:24,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:07:24,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:07:24,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:07:24,756.756 INFO    ] time= 25/08/2026 05:07:24
[2026-08-25 05:07:24,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:07:24,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:07:24,918.918 INFO    ] No existing commands found in stream
[2026-08-25 05:07:29,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:07:29,941.941 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 05:07:30,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:07:30,786.786 INFO    ] Checking for system updates...
[2026-08-25 05:07:30,822.822 INFO    ] 200
[2026-08-25 05:07:30,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:30,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:07:30,881.881 INFO    ] No update needed
[2026-08-25 05:07:30,883.883 INFO    ] Checking for camera pi updates...
[2026-08-25 05:07:30,917.917 INFO    ] 200
[2026-08-25 05:07:30,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:30,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:07:31,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:07:31,016.016 INFO    ] No camera update needed
[2026-08-25 05:07:31,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:07:31,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:07:31,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:07:31,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:07:33,073.073 INFO    ] ================================================
[2026-08-25 05:07:33,092.092 INFO    ] Launching Daemon at Tue Aug 25 05:07:33 IST 2026
[2026-08-25 05:07:33,105.105 INFO    ] ================================================
[2026-08-25 05:07:33,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:07:33
[2026-08-25 05:07:34,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:07:34,544.544 INFO    ] Initializing speech engine...
[2026-08-25 05:07:34,557.557 INFO    ] 2026-08-25 05:07:34
[2026-08-25 05:07:34,826.826 INFO    ] 2026-08-25 05:07:34
[2026-08-25 05:07:34,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:07:35,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:07:35,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:07:35,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:07:35,227.227 INFO    ] time= 25/08/2026 05:07:35
[2026-08-25 05:07:35,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:07:35,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:07:35,375.375 INFO    ] No existing commands found in stream
[2026-08-25 05:07:40,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:07:40,402.402 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 05:07:44,344.344 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:07:44,347.347 INFO    ] Checking for system updates...
[2026-08-25 05:07:44,382.382 INFO    ] 200
[2026-08-25 05:07:44,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:44,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:07:44,440.440 INFO    ] No update needed
[2026-08-25 05:07:44,442.442 INFO    ] Checking for camera pi updates...
[2026-08-25 05:07:44,475.475 INFO    ] 200
[2026-08-25 05:07:44,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:44,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:07:44,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:07:44,566.566 INFO    ] No camera update needed
[2026-08-25 05:07:44,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:07:44,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:07:44,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:07:44,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:07:46,620.620 INFO    ] ================================================
[2026-08-25 05:07:46,635.635 INFO    ] Launching Daemon at Tue Aug 25 05:07:46 IST 2026
[2026-08-25 05:07:46,645.645 INFO    ] ================================================
[2026-08-25 05:07:47,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:07:47
[2026-08-25 05:07:47,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:07:48,170.170 INFO    ] Initializing speech engine...
[2026-08-25 05:07:48,178.178 INFO    ] 2026-08-25 05:07:48
[2026-08-25 05:07:48,458.458 INFO    ] 2026-08-25 05:07:48
[2026-08-25 05:07:48,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:07:48,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:07:48,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:07:48,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:07:48,909.909 INFO    ] time= 25/08/2026 05:07:48
[2026-08-25 05:07:48,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:07:48,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:07:49,143.143 INFO    ] No existing commands found in stream
[2026-08-25 05:07:54,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:07:54,166.166 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 05:07:56,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:07:56,465.465 INFO    ] Checking for system updates...
[2026-08-25 05:07:56,502.502 INFO    ] 200
[2026-08-25 05:07:56,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:56,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:07:56,563.563 INFO    ] No update needed
[2026-08-25 05:07:56,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 05:07:56,600.600 INFO    ] 200
[2026-08-25 05:07:56,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:07:56,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:07:56,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:07:56,694.694 INFO    ] No camera update needed
[2026-08-25 05:07:56,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:07:56,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:07:56,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:07:56,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:07:58,749.749 INFO    ] ================================================
[2026-08-25 05:07:58,764.764 INFO    ] Launching Daemon at Tue Aug 25 05:07:58 IST 2026
[2026-08-25 05:07:58,775.775 INFO    ] ================================================
[2026-08-25 05:07:59,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:07:59
[2026-08-25 05:07:59,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:08:00,247.247 INFO    ] Initializing speech engine...
[2026-08-25 05:08:00,259.259 INFO    ] 2026-08-25 05:08:00
[2026-08-25 05:08:00,523.523 INFO    ] 2026-08-25 05:08:00
[2026-08-25 05:08:00,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:08:00,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:08:00,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:08:00,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:08:00,955.955 INFO    ] time= 25/08/2026 05:08:00
[2026-08-25 05:08:01,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:08:01,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:08:01,206.206 INFO    ] No existing commands found in stream
[2026-08-25 05:08:06,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:08:06,248.248 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 05:08:09,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:08:09,977.977 INFO    ] Checking for system updates...
[2026-08-25 05:08:10,012.012 INFO    ] 200
[2026-08-25 05:08:10,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:10,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:08:10,074.074 INFO    ] No update needed
[2026-08-25 05:08:10,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 05:08:10,110.110 INFO    ] 200
[2026-08-25 05:08:10,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:10,154.154 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:08:10,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:08:10,202.202 INFO    ] No camera update needed
[2026-08-25 05:08:10,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:08:10,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:08:10,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:08:10,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:08:12,258.258 INFO    ] ================================================
[2026-08-25 05:08:12,273.273 INFO    ] Launching Daemon at Tue Aug 25 05:08:12 IST 2026
[2026-08-25 05:08:12,283.283 INFO    ] ================================================
[2026-08-25 05:08:12,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:08:12
[2026-08-25 05:08:13,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:08:13,698.698 INFO    ] Initializing speech engine...
[2026-08-25 05:08:13,707.707 INFO    ] 2026-08-25 05:08:13
[2026-08-25 05:08:13,992.992 INFO    ] 2026-08-25 05:08:13
[2026-08-25 05:08:14,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:08:14,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:08:14,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:08:14,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:08:14,375.375 INFO    ] time= 25/08/2026 05:08:14
[2026-08-25 05:08:14,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:08:14,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:08:14,482.482 INFO    ] No existing commands found in stream
[2026-08-25 05:08:19,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:08:19,500.500 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 05:08:21,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:08:21,596.596 INFO    ] Checking for system updates...
[2026-08-25 05:08:21,632.632 INFO    ] 200
[2026-08-25 05:08:21,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:21,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:08:21,691.691 INFO    ] No update needed
[2026-08-25 05:08:21,693.693 INFO    ] Checking for camera pi updates...
[2026-08-25 05:08:21,727.727 INFO    ] 200
[2026-08-25 05:08:21,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:21,772.772 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:08:21,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:08:21,826.826 INFO    ] No camera update needed
[2026-08-25 05:08:21,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:08:21,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:08:21,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:08:21,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:08:23,880.880 INFO    ] ================================================
[2026-08-25 05:08:23,895.895 INFO    ] Launching Daemon at Tue Aug 25 05:08:23 IST 2026
[2026-08-25 05:08:23,905.905 INFO    ] ================================================
[2026-08-25 05:08:24,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:08:24
[2026-08-25 05:08:25,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:08:25,335.335 INFO    ] Initializing speech engine...
[2026-08-25 05:08:25,350.350 INFO    ] 2026-08-25 05:08:25
[2026-08-25 05:08:25,617.617 INFO    ] 2026-08-25 05:08:25
[2026-08-25 05:08:25,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:08:25,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:08:25,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:08:26,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:08:26,025.025 INFO    ] time= 25/08/2026 05:08:26
[2026-08-25 05:08:26,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:08:26,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:08:26,178.178 INFO    ] No existing commands found in stream
[2026-08-25 05:08:31,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:08:31,200.200 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 05:08:35,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:08:35,584.584 INFO    ] Checking for system updates...
[2026-08-25 05:08:35,620.620 INFO    ] 200
[2026-08-25 05:08:35,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:35,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:08:35,676.676 INFO    ] No update needed
[2026-08-25 05:08:35,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 05:08:35,712.712 INFO    ] 200
[2026-08-25 05:08:35,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:35,755.755 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:08:35,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:08:35,806.806 INFO    ] No camera update needed
[2026-08-25 05:08:35,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:08:35,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:08:35,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:08:35,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:08:37,860.860 INFO    ] ================================================
[2026-08-25 05:08:37,875.875 INFO    ] Launching Daemon at Tue Aug 25 05:08:37 IST 2026
[2026-08-25 05:08:37,886.886 INFO    ] ================================================
[2026-08-25 05:08:38,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:08:38
[2026-08-25 05:08:39,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:08:39,305.305 INFO    ] Initializing speech engine...
[2026-08-25 05:08:39,314.314 INFO    ] 2026-08-25 05:08:39
[2026-08-25 05:08:39,559.559 INFO    ] 2026-08-25 05:08:39
[2026-08-25 05:08:39,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:08:39,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:08:39,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:08:39,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:08:39,924.924 INFO    ] time= 25/08/2026 05:08:39
[2026-08-25 05:08:39,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:08:39,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:08:40,102.102 INFO    ] No existing commands found in stream
[2026-08-25 05:08:45,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:08:45,130.130 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 05:08:47,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:08:47,836.836 INFO    ] Checking for system updates...
[2026-08-25 05:08:47,871.871 INFO    ] 200
[2026-08-25 05:08:47,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:47,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:08:47,929.929 INFO    ] No update needed
[2026-08-25 05:08:47,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 05:08:47,965.965 INFO    ] 200
[2026-08-25 05:08:47,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:08:48,007.007 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:08:48,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:08:48,052.052 INFO    ] No camera update needed
[2026-08-25 05:08:48,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:08:48,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:08:48,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:08:48,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:08:50,107.107 INFO    ] ================================================
[2026-08-25 05:08:50,122.122 INFO    ] Launching Daemon at Tue Aug 25 05:08:50 IST 2026
[2026-08-25 05:08:50,132.132 INFO    ] ================================================
[2026-08-25 05:08:50,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:08:50
[2026-08-25 05:08:51,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:08:51,540.540 INFO    ] Initializing speech engine...
[2026-08-25 05:08:51,565.565 INFO    ] 2026-08-25 05:08:51
[2026-08-25 05:08:51,833.833 INFO    ] 2026-08-25 05:08:51
[2026-08-25 05:08:51,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:08:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:08:52,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:08:52,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:08:52,206.206 INFO    ] time= 25/08/2026 05:08:52
[2026-08-25 05:08:52,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:08:52,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:08:52,328.328 INFO    ] No existing commands found in stream
[2026-08-25 05:08:57,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:08:57,343.343 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 05:08:59,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:08:59,995.995 INFO    ] Checking for system updates...
[2026-08-25 05:09:00,030.030 INFO    ] 200
[2026-08-25 05:09:00,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:00,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:09:00,086.086 INFO    ] No update needed
[2026-08-25 05:09:00,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 05:09:00,122.122 INFO    ] 200
[2026-08-25 05:09:00,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:00,165.165 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:09:00,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:09:00,222.222 INFO    ] No camera update needed
[2026-08-25 05:09:00,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:09:00,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:09:00,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:09:00,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:09:02,279.279 INFO    ] ================================================
[2026-08-25 05:09:02,299.299 INFO    ] Launching Daemon at Tue Aug 25 05:09:02 IST 2026
[2026-08-25 05:09:02,314.314 INFO    ] ================================================
[2026-08-25 05:09:02,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:09:02
[2026-08-25 05:09:03,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:09:03,910.910 INFO    ] Initializing speech engine...
[2026-08-25 05:09:03,916.916 INFO    ] 2026-08-25 05:09:03
[2026-08-25 05:09:04,217.217 INFO    ] 2026-08-25 05:09:04
[2026-08-25 05:09:04,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:09:04,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:09:04,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:09:04,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:09:04,576.576 INFO    ] time= 25/08/2026 05:09:04
[2026-08-25 05:09:04,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:09:04,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:09:04,665.665 INFO    ] No existing commands found in stream
[2026-08-25 05:09:09,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:09:09,710.710 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 05:09:13,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:09:13,709.709 INFO    ] Checking for system updates...
[2026-08-25 05:09:13,746.746 INFO    ] 200
[2026-08-25 05:09:13,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:13,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:09:13,807.807 INFO    ] No update needed
[2026-08-25 05:09:13,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 05:09:13,845.845 INFO    ] 200
[2026-08-25 05:09:13,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:13,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:09:13,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:09:13,943.943 INFO    ] No camera update needed
[2026-08-25 05:09:13,946.946 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:09:13,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:09:13,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:09:13,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:09:16,001.001 INFO    ] ================================================
[2026-08-25 05:09:16,018.018 INFO    ] Launching Daemon at Tue Aug 25 05:09:16 IST 2026
[2026-08-25 05:09:16,029.029 INFO    ] ================================================
[2026-08-25 05:09:16,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:09:16
[2026-08-25 05:09:17,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:09:17,430.430 INFO    ] Initializing speech engine...
[2026-08-25 05:09:17,436.436 INFO    ] 2026-08-25 05:09:17
[2026-08-25 05:09:17,735.735 INFO    ] 2026-08-25 05:09:17
[2026-08-25 05:09:17,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:09:17,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:09:17,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:09:18,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:09:18,137.137 INFO    ] time= 25/08/2026 05:09:18
[2026-08-25 05:09:18,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:09:18,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:09:18,248.248 INFO    ] No existing commands found in stream
[2026-08-25 05:09:23,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:09:23,261.261 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 05:09:25,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:09:25,364.364 INFO    ] Checking for system updates...
[2026-08-25 05:09:25,400.400 INFO    ] 200
[2026-08-25 05:09:25,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:25,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:09:25,460.460 INFO    ] No update needed
[2026-08-25 05:09:25,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 05:09:25,496.496 INFO    ] 200
[2026-08-25 05:09:25,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:25,539.539 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:09:25,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:09:25,597.597 INFO    ] No camera update needed
[2026-08-25 05:09:25,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:09:25,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:09:25,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:09:25,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:09:27,652.652 INFO    ] ================================================
[2026-08-25 05:09:27,667.667 INFO    ] Launching Daemon at Tue Aug 25 05:09:27 IST 2026
[2026-08-25 05:09:27,677.677 INFO    ] ================================================
[2026-08-25 05:09:28,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:09:28
[2026-08-25 05:09:29,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:09:29,324.324 INFO    ] Initializing speech engine...
[2026-08-25 05:09:29,338.338 INFO    ] 2026-08-25 05:09:29
[2026-08-25 05:09:29,654.654 INFO    ] 2026-08-25 05:09:29
[2026-08-25 05:09:29,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:09:29,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:09:29,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:09:30,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:09:30,174.174 INFO    ] time= 25/08/2026 05:09:30
[2026-08-25 05:09:30,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:09:30,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:09:30,297.297 INFO    ] No existing commands found in stream
[2026-08-25 05:09:35,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:09:35,329.329 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 05:09:36,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:09:36,950.950 INFO    ] Checking for system updates...
[2026-08-25 05:09:36,987.987 INFO    ] 200
[2026-08-25 05:09:36,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:37,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:09:37,055.055 INFO    ] No update needed
[2026-08-25 05:09:37,058.058 INFO    ] Checking for camera pi updates...
[2026-08-25 05:09:37,093.093 INFO    ] 200
[2026-08-25 05:09:37,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:37,139.139 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:09:37,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:09:37,187.187 INFO    ] No camera update needed
[2026-08-25 05:09:37,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:09:37,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:09:37,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:09:37,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:09:39,244.244 INFO    ] ================================================
[2026-08-25 05:09:39,259.259 INFO    ] Launching Daemon at Tue Aug 25 05:09:39 IST 2026
[2026-08-25 05:09:39,270.270 INFO    ] ================================================
[2026-08-25 05:09:39,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:09:39
[2026-08-25 05:09:40,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:09:40,682.682 INFO    ] Initializing speech engine...
[2026-08-25 05:09:40,699.699 INFO    ] 2026-08-25 05:09:40
[2026-08-25 05:09:40,990.990 INFO    ] 2026-08-25 05:09:40
[2026-08-25 05:09:41,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:09:41,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:09:41,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:09:41,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:09:41,425.425 INFO    ] time= 25/08/2026 05:09:41
[2026-08-25 05:09:41,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:09:41,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:09:41,580.580 INFO    ] No existing commands found in stream
[2026-08-25 05:09:46,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:09:46,607.607 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 05:09:47,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:09:47,332.332 INFO    ] Checking for system updates...
[2026-08-25 05:09:47,368.368 INFO    ] 200
[2026-08-25 05:09:47,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:47,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:09:47,426.426 INFO    ] No update needed
[2026-08-25 05:09:47,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 05:09:47,465.465 INFO    ] 200
[2026-08-25 05:09:47,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:09:47,515.515 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:09:47,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:09:47,564.564 INFO    ] No camera update needed
[2026-08-25 05:09:47,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:09:47,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:09:47,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:09:47,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:09:49,620.620 INFO    ] ================================================
[2026-08-25 05:09:49,635.635 INFO    ] Launching Daemon at Tue Aug 25 05:09:49 IST 2026
[2026-08-25 05:09:49,645.645 INFO    ] ================================================
[2026-08-25 05:09:50,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:09:50
[2026-08-25 05:09:51,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:09:51,331.331 INFO    ] Initializing speech engine...
[2026-08-25 05:09:51,340.340 INFO    ] 2026-08-25 05:09:51
[2026-08-25 05:09:51,628.628 INFO    ] 2026-08-25 05:09:51
[2026-08-25 05:09:51,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:09:51,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:09:51,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:09:52,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:09:52,160.160 INFO    ] time= 25/08/2026 05:09:52
[2026-08-25 05:09:52,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:09:52,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:09:52,379.379 INFO    ] No existing commands found in stream
[2026-08-25 05:09:57,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:09:57,408.408 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 05:10:01,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:10:01,744.744 INFO    ] Checking for system updates...
[2026-08-25 05:10:01,791.791 INFO    ] 200
[2026-08-25 05:10:01,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:01,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:10:01,909.909 INFO    ] No update needed
[2026-08-25 05:10:01,913.913 INFO    ] Checking for camera pi updates...
[2026-08-25 05:10:02,060.060 INFO    ] 200
[2026-08-25 05:10:02,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:02,158.158 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:10:02,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:10:02,324.324 INFO    ] No camera update needed
[2026-08-25 05:10:02,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:10:02,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:10:02,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:10:02,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:10:04,389.389 INFO    ] ================================================
[2026-08-25 05:10:04,404.404 INFO    ] Launching Daemon at Tue Aug 25 05:10:04 IST 2026
[2026-08-25 05:10:04,415.415 INFO    ] ================================================
[2026-08-25 05:10:04,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:10:04
[2026-08-25 05:10:05,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:10:05,866.866 INFO    ] Initializing speech engine...
[2026-08-25 05:10:05,875.875 INFO    ] 2026-08-25 05:10:05
[2026-08-25 05:10:06,120.120 INFO    ] 2026-08-25 05:10:06
[2026-08-25 05:10:06,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:10:06,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:10:06,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:10:06,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:10:06,600.600 INFO    ] time= 25/08/2026 05:10:06
[2026-08-25 05:10:06,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:10:06,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:10:06,847.847 INFO    ] No existing commands found in stream
[2026-08-25 05:10:11,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:10:11,860.860 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 05:10:16,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:10:16,228.228 INFO    ] Checking for system updates...
[2026-08-25 05:10:16,264.264 INFO    ] 200
[2026-08-25 05:10:16,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:16,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:10:16,325.325 INFO    ] No update needed
[2026-08-25 05:10:16,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 05:10:16,372.372 INFO    ] 200
[2026-08-25 05:10:16,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:16,420.420 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:10:16,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:10:16,465.465 INFO    ] No camera update needed
[2026-08-25 05:10:16,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:10:16,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:10:16,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:10:16,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:10:18,519.519 INFO    ] ================================================
[2026-08-25 05:10:18,534.534 INFO    ] Launching Daemon at Tue Aug 25 05:10:18 IST 2026
[2026-08-25 05:10:18,545.545 INFO    ] ================================================
[2026-08-25 05:10:19,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:10:19
[2026-08-25 05:10:19,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:10:20,021.021 INFO    ] Initializing speech engine...
[2026-08-25 05:10:20,029.029 INFO    ] 2026-08-25 05:10:20
[2026-08-25 05:10:20,349.349 INFO    ] 2026-08-25 05:10:20
[2026-08-25 05:10:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:10:20,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:10:20,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:10:20,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:10:20,860.860 INFO    ] time= 25/08/2026 05:10:20
[2026-08-25 05:10:20,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:10:20,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:10:21,054.054 INFO    ] No existing commands found in stream
[2026-08-25 05:10:26,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:10:26,083.083 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 05:10:27,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:10:27,659.659 INFO    ] Checking for system updates...
[2026-08-25 05:10:27,695.695 INFO    ] 200
[2026-08-25 05:10:27,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:27,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:10:27,752.752 INFO    ] No update needed
[2026-08-25 05:10:27,754.754 INFO    ] Checking for camera pi updates...
[2026-08-25 05:10:27,787.787 INFO    ] 200
[2026-08-25 05:10:27,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:27,830.830 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:10:27,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:10:27,883.883 INFO    ] No camera update needed
[2026-08-25 05:10:27,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:10:27,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:10:27,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:10:27,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:10:29,937.937 INFO    ] ================================================
[2026-08-25 05:10:29,953.953 INFO    ] Launching Daemon at Tue Aug 25 05:10:29 IST 2026
[2026-08-25 05:10:29,963.963 INFO    ] ================================================
[2026-08-25 05:10:30,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:10:30
[2026-08-25 05:10:31,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:10:31,386.386 INFO    ] Initializing speech engine...
[2026-08-25 05:10:31,398.398 INFO    ] 2026-08-25 05:10:31
[2026-08-25 05:10:31,645.645 INFO    ] 2026-08-25 05:10:31
[2026-08-25 05:10:31,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:10:31,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:10:31,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:10:32,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:10:32,016.016 INFO    ] time= 25/08/2026 05:10:32
[2026-08-25 05:10:32,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:10:32,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:10:32,203.203 INFO    ] No existing commands found in stream
[2026-08-25 05:10:37,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:10:37,236.236 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 05:10:40,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:10:40,706.706 INFO    ] Checking for system updates...
[2026-08-25 05:10:40,746.746 INFO    ] 200
[2026-08-25 05:10:40,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:40,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:10:40,803.803 INFO    ] No update needed
[2026-08-25 05:10:40,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 05:10:40,840.840 INFO    ] 200
[2026-08-25 05:10:40,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:40,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:10:40,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:10:40,930.930 INFO    ] No camera update needed
[2026-08-25 05:10:40,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:10:40,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:10:40,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:10:40,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:10:42,984.984 INFO    ] ================================================
[2026-08-25 05:10:43,999.999 INFO    ] Launching Daemon at Tue Aug 25 05:10:42 IST 2026
[2026-08-25 05:10:43,009.009 INFO    ] ================================================
[2026-08-25 05:10:43,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:10:43
[2026-08-25 05:10:44,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:10:44,427.427 INFO    ] Initializing speech engine...
[2026-08-25 05:10:44,436.436 INFO    ] 2026-08-25 05:10:44
[2026-08-25 05:10:44,683.683 INFO    ] 2026-08-25 05:10:44
[2026-08-25 05:10:44,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:10:44,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:10:44,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:10:45,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:10:45,152.152 INFO    ] time= 25/08/2026 05:10:45
[2026-08-25 05:10:45,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:10:45,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:10:45,388.388 INFO    ] No existing commands found in stream
[2026-08-25 05:10:50,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:10:50,405.405 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 05:10:51,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:10:51,383.383 INFO    ] Checking for system updates...
[2026-08-25 05:10:51,427.427 INFO    ] 200
[2026-08-25 05:10:51,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:51,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:10:51,504.504 INFO    ] No update needed
[2026-08-25 05:10:51,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 05:10:51,544.544 INFO    ] 200
[2026-08-25 05:10:51,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:10:51,613.613 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:10:51,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:10:51,682.682 INFO    ] No camera update needed
[2026-08-25 05:10:51,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:10:51,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:10:51,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:10:51,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:10:53,741.741 INFO    ] ================================================
[2026-08-25 05:10:53,757.757 INFO    ] Launching Daemon at Tue Aug 25 05:10:53 IST 2026
[2026-08-25 05:10:53,768.768 INFO    ] ================================================
[2026-08-25 05:10:54,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:10:54
[2026-08-25 05:10:54,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:10:55,226.226 INFO    ] Initializing speech engine...
[2026-08-25 05:10:55,232.232 INFO    ] 2026-08-25 05:10:55
[2026-08-25 05:10:55,550.550 INFO    ] 2026-08-25 05:10:55
[2026-08-25 05:10:55,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:10:55,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:10:55,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:10:55,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:10:55,957.957 INFO    ] time= 25/08/2026 05:10:55
[2026-08-25 05:10:55,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:10:55,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:10:56,089.089 INFO    ] No existing commands found in stream
[2026-08-25 05:11:01,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:11:01,106.106 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 05:11:03,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:11:03,771.771 INFO    ] Checking for system updates...
[2026-08-25 05:11:03,811.811 INFO    ] 200
[2026-08-25 05:11:03,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:03,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:11:03,876.876 INFO    ] No update needed
[2026-08-25 05:11:03,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 05:11:03,936.936 INFO    ] 200
[2026-08-25 05:11:03,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:04,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:11:04,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:11:04,379.379 INFO    ] No camera update needed
[2026-08-25 05:11:04,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:11:04,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:11:04,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:11:04,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:11:06,434.434 INFO    ] ================================================
[2026-08-25 05:11:06,449.449 INFO    ] Launching Daemon at Tue Aug 25 05:11:06 IST 2026
[2026-08-25 05:11:06,460.460 INFO    ] ================================================
[2026-08-25 05:11:07,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:11:07
[2026-08-25 05:11:07,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:11:07,865.865 INFO    ] Initializing speech engine...
[2026-08-25 05:11:07,874.874 INFO    ] 2026-08-25 05:11:07
[2026-08-25 05:11:08,163.163 INFO    ] 2026-08-25 05:11:08
[2026-08-25 05:11:08,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:11:08,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:11:08,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:11:08,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:11:08,555.555 INFO    ] time= 25/08/2026 05:11:08
[2026-08-25 05:11:08,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:11:08,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:11:08,660.660 INFO    ] No existing commands found in stream
[2026-08-25 05:11:13,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:11:13,675.675 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 05:11:15,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:11:15,947.947 INFO    ] Checking for system updates...
[2026-08-25 05:11:15,983.983 INFO    ] 200
[2026-08-25 05:11:15,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:16,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:11:16,041.041 INFO    ] No update needed
[2026-08-25 05:11:16,044.044 INFO    ] Checking for camera pi updates...
[2026-08-25 05:11:16,080.080 INFO    ] 200
[2026-08-25 05:11:16,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:16,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:11:16,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:11:16,174.174 INFO    ] No camera update needed
[2026-08-25 05:11:16,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:11:16,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:11:16,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:11:16,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:11:18,228.228 INFO    ] ================================================
[2026-08-25 05:11:18,243.243 INFO    ] Launching Daemon at Tue Aug 25 05:11:18 IST 2026
[2026-08-25 05:11:18,254.254 INFO    ] ================================================
[2026-08-25 05:11:18,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:11:18
[2026-08-25 05:11:19,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:11:19,672.672 INFO    ] Initializing speech engine...
[2026-08-25 05:11:19,697.697 INFO    ] 2026-08-25 05:11:19
[2026-08-25 05:11:19,966.966 INFO    ] 2026-08-25 05:11:19
[2026-08-25 05:11:20,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:11:20,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:11:20,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:11:20,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:11:20,335.335 INFO    ] time= 25/08/2026 05:11:20
[2026-08-25 05:11:20,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:11:20,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:11:20,456.456 INFO    ] No existing commands found in stream
[2026-08-25 05:11:25,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:11:25,472.472 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 05:11:28,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:11:28,195.195 INFO    ] Checking for system updates...
[2026-08-25 05:11:28,230.230 INFO    ] 200
[2026-08-25 05:11:28,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:28,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:11:28,287.287 INFO    ] No update needed
[2026-08-25 05:11:28,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 05:11:28,326.326 INFO    ] 200
[2026-08-25 05:11:28,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:28,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:11:28,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:11:28,420.420 INFO    ] No camera update needed
[2026-08-25 05:11:28,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:11:28,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:11:28,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:11:28,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:11:30,474.474 INFO    ] ================================================
[2026-08-25 05:11:30,490.490 INFO    ] Launching Daemon at Tue Aug 25 05:11:30 IST 2026
[2026-08-25 05:11:30,501.501 INFO    ] ================================================
[2026-08-25 05:11:31,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:11:31
[2026-08-25 05:11:31,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:11:32,183.183 INFO    ] Initializing speech engine...
[2026-08-25 05:11:32,193.193 INFO    ] 2026-08-25 05:11:32
[2026-08-25 05:11:32,473.473 INFO    ] 2026-08-25 05:11:32
[2026-08-25 05:11:32,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:11:32,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:11:32,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:11:32,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:11:32,985.985 INFO    ] time= 25/08/2026 05:11:32
[2026-08-25 05:11:33,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:11:33,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:11:33,199.199 INFO    ] No existing commands found in stream
[2026-08-25 05:11:38,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:11:38,220.220 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 05:11:38,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:11:38,746.746 INFO    ] Checking for system updates...
[2026-08-25 05:11:38,786.786 INFO    ] 200
[2026-08-25 05:11:38,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:38,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:11:38,851.851 INFO    ] No update needed
[2026-08-25 05:11:38,854.854 INFO    ] Checking for camera pi updates...
[2026-08-25 05:11:38,890.890 INFO    ] 200
[2026-08-25 05:11:38,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:38,938.938 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:11:38,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:11:38,993.993 INFO    ] No camera update needed
[2026-08-25 05:11:38,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:11:38,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:11:39,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:11:39,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:11:41,051.051 INFO    ] ================================================
[2026-08-25 05:11:41,066.066 INFO    ] Launching Daemon at Tue Aug 25 05:11:41 IST 2026
[2026-08-25 05:11:41,077.077 INFO    ] ================================================
[2026-08-25 05:11:41,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:11:41
[2026-08-25 05:11:42,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:11:42,489.489 INFO    ] Initializing speech engine...
[2026-08-25 05:11:42,498.498 INFO    ] 2026-08-25 05:11:42
[2026-08-25 05:11:42,787.787 INFO    ] 2026-08-25 05:11:42
[2026-08-25 05:11:42,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:11:43,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:11:43,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:11:43,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:11:43,160.160 INFO    ] time= 25/08/2026 05:11:43
[2026-08-25 05:11:43,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:11:43,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:11:43,281.281 INFO    ] No existing commands found in stream
[2026-08-25 05:11:48,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:11:48,297.297 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 05:11:49,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:11:49,754.754 INFO    ] Checking for system updates...
[2026-08-25 05:11:49,796.796 INFO    ] 200
[2026-08-25 05:11:49,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:49,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:11:49,854.854 INFO    ] No update needed
[2026-08-25 05:11:49,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 05:11:49,890.890 INFO    ] 200
[2026-08-25 05:11:49,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:11:49,936.936 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:11:49,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:11:49,982.982 INFO    ] No camera update needed
[2026-08-25 05:11:49,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:11:49,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:11:49,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:11:49,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:11:52,037.037 INFO    ] ================================================
[2026-08-25 05:11:52,053.053 INFO    ] Launching Daemon at Tue Aug 25 05:11:52 IST 2026
[2026-08-25 05:11:52,064.064 INFO    ] ================================================
[2026-08-25 05:11:52,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:11:52
[2026-08-25 05:11:53,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:11:53,660.660 INFO    ] Initializing speech engine...
[2026-08-25 05:11:53,668.668 INFO    ] 2026-08-25 05:11:53
[2026-08-25 05:11:53,952.952 INFO    ] 2026-08-25 05:11:53
[2026-08-25 05:11:53,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:11:54,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:11:54,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:11:54,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:11:54,414.414 INFO    ] time= 25/08/2026 05:11:54
[2026-08-25 05:11:54,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:11:54,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:11:54,648.648 INFO    ] No existing commands found in stream
[2026-08-25 05:11:59,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:11:59,675.675 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 05:12:02,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:12:02,956.956 INFO    ] Checking for system updates...
[2026-08-25 05:12:02,992.992 INFO    ] 200
[2026-08-25 05:12:02,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:03,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:03,058.058 INFO    ] No update needed
[2026-08-25 05:12:03,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 05:12:03,095.095 INFO    ] 200
[2026-08-25 05:12:03,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:03,139.139 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:12:03,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:03,193.193 INFO    ] No camera update needed
[2026-08-25 05:12:03,196.196 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:12:03,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:12:03,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:12:03,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:12:05,250.250 INFO    ] ================================================
[2026-08-25 05:12:05,266.266 INFO    ] Launching Daemon at Tue Aug 25 05:12:05 IST 2026
[2026-08-25 05:12:05,278.278 INFO    ] ================================================
[2026-08-25 05:12:05,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:12:05
[2026-08-25 05:12:06,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:12:06,705.705 INFO    ] Initializing speech engine...
[2026-08-25 05:12:06,711.711 INFO    ] 2026-08-25 05:12:06
[2026-08-25 05:12:07,005.005 INFO    ] 2026-08-25 05:12:06
[2026-08-25 05:12:07,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:12:07,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:12:07,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:12:07,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:12:07,390.390 INFO    ] time= 25/08/2026 05:12:07
[2026-08-25 05:12:07,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:12:07,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:12:07,501.501 INFO    ] No existing commands found in stream
[2026-08-25 05:12:12,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:12:12,521.521 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 05:12:15,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:12:15,259.259 INFO    ] Checking for system updates...
[2026-08-25 05:12:15,297.297 INFO    ] 200
[2026-08-25 05:12:15,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:15,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:15,354.354 INFO    ] No update needed
[2026-08-25 05:12:15,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 05:12:15,391.391 INFO    ] 200
[2026-08-25 05:12:15,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:15,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:12:15,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:15,484.484 INFO    ] No camera update needed
[2026-08-25 05:12:15,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:12:15,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:12:15,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:12:15,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:12:17,538.538 INFO    ] ================================================
[2026-08-25 05:12:17,553.553 INFO    ] Launching Daemon at Tue Aug 25 05:12:17 IST 2026
[2026-08-25 05:12:17,564.564 INFO    ] ================================================
[2026-08-25 05:12:18,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:12:18
[2026-08-25 05:12:18,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:12:18,977.977 INFO    ] Initializing speech engine...
[2026-08-25 05:12:18,993.993 INFO    ] 2026-08-25 05:12:18
[2026-08-25 05:12:19,274.274 INFO    ] 2026-08-25 05:12:19
[2026-08-25 05:12:19,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:12:19,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:12:19,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:12:19,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:12:19,663.663 INFO    ] time= 25/08/2026 05:12:19
[2026-08-25 05:12:19,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:12:19,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:12:19,769.769 INFO    ] No existing commands found in stream
[2026-08-25 05:12:24,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:12:24,785.785 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 05:12:28,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:12:28,111.111 INFO    ] Checking for system updates...
[2026-08-25 05:12:28,147.147 INFO    ] 200
[2026-08-25 05:12:28,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:28,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:28,209.209 INFO    ] No update needed
[2026-08-25 05:12:28,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 05:12:28,248.248 INFO    ] 200
[2026-08-25 05:12:28,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:28,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:12:28,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:28,353.353 INFO    ] No camera update needed
[2026-08-25 05:12:28,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:12:28,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:12:28,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:12:28,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:12:30,408.408 INFO    ] ================================================
[2026-08-25 05:12:30,423.423 INFO    ] Launching Daemon at Tue Aug 25 05:12:30 IST 2026
[2026-08-25 05:12:30,434.434 INFO    ] ================================================
[2026-08-25 05:12:31,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:12:31
[2026-08-25 05:12:31,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:12:31,900.900 INFO    ] Initializing speech engine...
[2026-08-25 05:12:31,908.908 INFO    ] 2026-08-25 05:12:31
[2026-08-25 05:12:32,217.217 INFO    ] 2026-08-25 05:12:32
[2026-08-25 05:12:32,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:12:32,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:12:32,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:12:32,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:12:32,637.637 INFO    ] time= 25/08/2026 05:12:32
[2026-08-25 05:12:32,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:12:32,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:12:32,818.818 INFO    ] No existing commands found in stream
[2026-08-25 05:12:37,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:12:37,850.850 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 05:12:39,782.782 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:12:39,785.785 INFO    ] Checking for system updates...
[2026-08-25 05:12:39,820.820 INFO    ] 200
[2026-08-25 05:12:39,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:39,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:12:39,880.880 INFO    ] No update needed
[2026-08-25 05:12:39,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 05:12:39,916.916 INFO    ] 200
[2026-08-25 05:12:39,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:39,958.958 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:12:40,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:12:40,014.014 INFO    ] No camera update needed
[2026-08-25 05:12:40,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:12:40,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:12:40,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:12:40,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:12:42,069.069 INFO    ] ================================================
[2026-08-25 05:12:42,083.083 INFO    ] Launching Daemon at Tue Aug 25 05:12:42 IST 2026
[2026-08-25 05:12:42,094.094 INFO    ] ================================================
[2026-08-25 05:12:42,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:12:42
[2026-08-25 05:12:43,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:12:43,520.520 INFO    ] Initializing speech engine...
[2026-08-25 05:12:43,539.539 INFO    ] 2026-08-25 05:12:43
[2026-08-25 05:12:43,803.803 INFO    ] 2026-08-25 05:12:43
[2026-08-25 05:12:43,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:12:44,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:12:44,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:12:44,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:12:44,195.195 INFO    ] time= 25/08/2026 05:12:44
[2026-08-25 05:12:44,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:12:44,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:12:44,300.300 INFO    ] No existing commands found in stream
[2026-08-25 05:12:49,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:12:49,316.316 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 05:12:52,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:12:52,465.465 INFO    ] Checking for system updates...
[2026-08-25 05:12:52,500.500 INFO    ] 200
[2026-08-25 05:12:52,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:52,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:52,562.562 INFO    ] No update needed
[2026-08-25 05:12:52,565.565 INFO    ] Checking for camera pi updates...
[2026-08-25 05:12:52,598.598 INFO    ] 200
[2026-08-25 05:12:52,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:12:52,644.644 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:12:52,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:12:52,701.701 INFO    ] No camera update needed
[2026-08-25 05:12:52,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:12:52,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:12:52,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:12:52,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:12:54,756.756 INFO    ] ================================================
[2026-08-25 05:12:54,771.771 INFO    ] Launching Daemon at Tue Aug 25 05:12:54 IST 2026
[2026-08-25 05:12:54,782.782 INFO    ] ================================================
[2026-08-25 05:12:55,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:12:55
[2026-08-25 05:12:55,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:12:56,174.174 INFO    ] Initializing speech engine...
[2026-08-25 05:12:56,195.195 INFO    ] 2026-08-25 05:12:56
[2026-08-25 05:12:56,449.449 INFO    ] 2026-08-25 05:12:56
[2026-08-25 05:12:56,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:12:56,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:12:56,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:12:56,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:12:56,920.920 INFO    ] time= 25/08/2026 05:12:56
[2026-08-25 05:12:56,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:12:57,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:12:57,161.161 INFO    ] No existing commands found in stream
[2026-08-25 05:13:02,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:13:02,184.184 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 05:13:05,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:13:05,063.063 INFO    ] Checking for system updates...
[2026-08-25 05:13:05,099.099 INFO    ] 200
[2026-08-25 05:13:05,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:05,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:13:05,167.167 INFO    ] No update needed
[2026-08-25 05:13:05,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 05:13:05,202.202 INFO    ] 200
[2026-08-25 05:13:05,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:05,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:13:05,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:13:05,300.300 INFO    ] No camera update needed
[2026-08-25 05:13:05,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:13:05,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:13:05,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:13:05,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:13:07,356.356 INFO    ] ================================================
[2026-08-25 05:13:07,373.373 INFO    ] Launching Daemon at Tue Aug 25 05:13:07 IST 2026
[2026-08-25 05:13:07,383.383 INFO    ] ================================================
[2026-08-25 05:13:07,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:13:07
[2026-08-25 05:13:08,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:13:08,808.808 INFO    ] Initializing speech engine...
[2026-08-25 05:13:08,815.815 INFO    ] 2026-08-25 05:13:08
[2026-08-25 05:13:09,115.115 INFO    ] 2026-08-25 05:13:09
[2026-08-25 05:13:09,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:13:09,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:13:09,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:13:09,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:13:09,501.501 INFO    ] time= 25/08/2026 05:13:09
[2026-08-25 05:13:09,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:13:09,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:13:09,628.628 INFO    ] No existing commands found in stream
[2026-08-25 05:13:14,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:13:14,642.642 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 05:13:17,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:13:17,489.489 INFO    ] Checking for system updates...
[2026-08-25 05:13:17,526.526 INFO    ] 200
[2026-08-25 05:13:17,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:17,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:13:17,584.584 INFO    ] No update needed
[2026-08-25 05:13:17,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 05:13:17,623.623 INFO    ] 200
[2026-08-25 05:13:17,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:17,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:13:17,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:13:17,816.816 INFO    ] No camera update needed
[2026-08-25 05:13:17,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:13:17,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:13:17,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:13:17,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:13:19,870.870 INFO    ] ================================================
[2026-08-25 05:13:19,885.885 INFO    ] Launching Daemon at Tue Aug 25 05:13:19 IST 2026
[2026-08-25 05:13:19,896.896 INFO    ] ================================================
[2026-08-25 05:13:20,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:13:20
[2026-08-25 05:13:21,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:13:21,316.316 INFO    ] Initializing speech engine...
[2026-08-25 05:13:21,326.326 INFO    ] 2026-08-25 05:13:21
[2026-08-25 05:13:21,575.575 INFO    ] 2026-08-25 05:13:21
[2026-08-25 05:13:21,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:13:21,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:13:21,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:13:21,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:13:21,942.942 INFO    ] time= 25/08/2026 05:13:21
[2026-08-25 05:13:21,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:13:21,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:13:22,117.117 INFO    ] No existing commands found in stream
[2026-08-25 05:13:27,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:13:27,150.150 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 05:13:28,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:13:28,705.705 INFO    ] Checking for system updates...
[2026-08-25 05:13:28,746.746 INFO    ] 200
[2026-08-25 05:13:28,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:28,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:13:28,809.809 INFO    ] No update needed
[2026-08-25 05:13:28,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 05:13:28,847.847 INFO    ] 200
[2026-08-25 05:13:28,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:28,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:13:28,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:13:28,943.943 INFO    ] No camera update needed
[2026-08-25 05:13:28,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:13:28,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:13:28,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:13:28,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:13:31,999.999 INFO    ] ================================================
[2026-08-25 05:13:31,013.013 INFO    ] Launching Daemon at Tue Aug 25 05:13:31 IST 2026
[2026-08-25 05:13:31,024.024 INFO    ] ================================================
[2026-08-25 05:13:31,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:13:31
[2026-08-25 05:13:32,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:13:32,752.752 INFO    ] Initializing speech engine...
[2026-08-25 05:13:32,767.767 INFO    ] 2026-08-25 05:13:32
[2026-08-25 05:13:33,078.078 INFO    ] 2026-08-25 05:13:33
[2026-08-25 05:13:33,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:13:33,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:13:33,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:13:33,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:13:33,587.587 INFO    ] time= 25/08/2026 05:13:33
[2026-08-25 05:13:33,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:13:33,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:13:33,757.757 INFO    ] No existing commands found in stream
[2026-08-25 05:13:38,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:13:38,791.791 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 05:13:41,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:13:41,771.771 INFO    ] Checking for system updates...
[2026-08-25 05:13:41,807.807 INFO    ] 200
[2026-08-25 05:13:41,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:41,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:13:41,865.865 INFO    ] No update needed
[2026-08-25 05:13:41,867.867 INFO    ] Checking for camera pi updates...
[2026-08-25 05:13:41,906.906 INFO    ] 200
[2026-08-25 05:13:41,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:41,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:13:42,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:13:42,007.007 INFO    ] No camera update needed
[2026-08-25 05:13:42,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:13:42,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:13:42,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:13:42,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:13:44,065.065 INFO    ] ================================================
[2026-08-25 05:13:44,081.081 INFO    ] Launching Daemon at Tue Aug 25 05:13:44 IST 2026
[2026-08-25 05:13:44,092.092 INFO    ] ================================================
[2026-08-25 05:13:44,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:13:44
[2026-08-25 05:13:45,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:13:45,510.510 INFO    ] Initializing speech engine...
[2026-08-25 05:13:45,519.519 INFO    ] 2026-08-25 05:13:45
[2026-08-25 05:13:45,762.762 INFO    ] 2026-08-25 05:13:45
[2026-08-25 05:13:45,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:13:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:13:45,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:13:46,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:13:46,133.133 INFO    ] time= 25/08/2026 05:13:46
[2026-08-25 05:13:46,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:13:46,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:13:46,302.302 INFO    ] No existing commands found in stream
[2026-08-25 05:13:51,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:13:51,336.336 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 05:13:52,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:13:52,322.322 INFO    ] Checking for system updates...
[2026-08-25 05:13:52,357.357 INFO    ] 200
[2026-08-25 05:13:52,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:52,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:13:52,413.413 INFO    ] No update needed
[2026-08-25 05:13:52,416.416 INFO    ] Checking for camera pi updates...
[2026-08-25 05:13:52,449.449 INFO    ] 200
[2026-08-25 05:13:52,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:13:52,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:13:52,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:13:52,550.550 INFO    ] No camera update needed
[2026-08-25 05:13:52,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:13:52,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:13:52,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:13:52,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:13:54,608.608 INFO    ] ================================================
[2026-08-25 05:13:54,623.623 INFO    ] Launching Daemon at Tue Aug 25 05:13:54 IST 2026
[2026-08-25 05:13:54,634.634 INFO    ] ================================================
[2026-08-25 05:13:55,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:13:55
[2026-08-25 05:13:56,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:13:56,317.317 INFO    ] Initializing speech engine...
[2026-08-25 05:13:56,329.329 INFO    ] 2026-08-25 05:13:56
[2026-08-25 05:13:56,642.642 INFO    ] 2026-08-25 05:13:56
[2026-08-25 05:13:56,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:13:56,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:13:56,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:13:57,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:13:57,148.148 INFO    ] time= 25/08/2026 05:13:57
[2026-08-25 05:13:57,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:13:57,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:13:57,305.305 INFO    ] No existing commands found in stream
[2026-08-25 05:14:02,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:14:02,353.353 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 05:14:03,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:14:03,184.184 INFO    ] Checking for system updates...
[2026-08-25 05:14:03,220.220 INFO    ] 200
[2026-08-25 05:14:03,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:03,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:03,287.287 INFO    ] No update needed
[2026-08-25 05:14:03,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 05:14:03,332.332 INFO    ] 200
[2026-08-25 05:14:03,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:03,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:14:03,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:03,439.439 INFO    ] No camera update needed
[2026-08-25 05:14:03,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:14:03,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:14:03,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:14:03,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:14:05,497.497 INFO    ] ================================================
[2026-08-25 05:14:05,513.513 INFO    ] Launching Daemon at Tue Aug 25 05:14:05 IST 2026
[2026-08-25 05:14:05,524.524 INFO    ] ================================================
[2026-08-25 05:14:06,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:14:06
[2026-08-25 05:14:06,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:14:06,994.994 INFO    ] Initializing speech engine...
[2026-08-25 05:14:07,005.005 INFO    ] 2026-08-25 05:14:06
[2026-08-25 05:14:07,254.254 INFO    ] 2026-08-25 05:14:07
[2026-08-25 05:14:07,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:14:07,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:14:07,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:14:07,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:14:07,631.631 INFO    ] time= 25/08/2026 05:14:07
[2026-08-25 05:14:07,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:14:07,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:14:07,824.824 INFO    ] No existing commands found in stream
[2026-08-25 05:14:12,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:14:12,840.840 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 05:14:13,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:14:13,646.646 INFO    ] Checking for system updates...
[2026-08-25 05:14:13,681.681 INFO    ] 200
[2026-08-25 05:14:13,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:13,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:13,745.745 INFO    ] No update needed
[2026-08-25 05:14:13,748.748 INFO    ] Checking for camera pi updates...
[2026-08-25 05:14:13,781.781 INFO    ] 200
[2026-08-25 05:14:13,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:13,831.831 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:14:13,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:13,893.893 INFO    ] No camera update needed
[2026-08-25 05:14:13,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:14:13,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:14:13,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:14:13,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:14:15,953.953 INFO    ] ================================================
[2026-08-25 05:14:15,968.968 INFO    ] Launching Daemon at Tue Aug 25 05:14:15 IST 2026
[2026-08-25 05:14:15,980.980 INFO    ] ================================================
[2026-08-25 05:14:16,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:14:16
[2026-08-25 05:14:17,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:14:17,668.668 INFO    ] Initializing speech engine...
[2026-08-25 05:14:17,680.680 INFO    ] 2026-08-25 05:14:17
[2026-08-25 05:14:17,948.948 INFO    ] 2026-08-25 05:14:17
[2026-08-25 05:14:17,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:14:18,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:14:18,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:14:18,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:14:18,336.336 INFO    ] time= 25/08/2026 05:14:18
[2026-08-25 05:14:18,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:14:18,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:14:18,464.464 INFO    ] No existing commands found in stream
[2026-08-25 05:14:23,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:14:23,479.479 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 05:14:24,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:14:24,086.086 INFO    ] Checking for system updates...
[2026-08-25 05:14:24,121.121 INFO    ] 200
[2026-08-25 05:14:24,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:24,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:24,179.179 INFO    ] No update needed
[2026-08-25 05:14:24,181.181 INFO    ] Checking for camera pi updates...
[2026-08-25 05:14:24,219.219 INFO    ] 200
[2026-08-25 05:14:24,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:24,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:14:24,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:24,318.318 INFO    ] No camera update needed
[2026-08-25 05:14:24,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:14:24,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:14:24,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:14:24,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:14:26,373.373 INFO    ] ================================================
[2026-08-25 05:14:26,389.389 INFO    ] Launching Daemon at Tue Aug 25 05:14:26 IST 2026
[2026-08-25 05:14:26,400.400 INFO    ] ================================================
[2026-08-25 05:14:27,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:14:27
[2026-08-25 05:14:27,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:14:28,073.073 INFO    ] Initializing speech engine...
[2026-08-25 05:14:28,085.085 INFO    ] 2026-08-25 05:14:28
[2026-08-25 05:14:28,399.399 INFO    ] 2026-08-25 05:14:28
[2026-08-25 05:14:28,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:14:28,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:14:28,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:14:28,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:14:28,906.906 INFO    ] time= 25/08/2026 05:14:28
[2026-08-25 05:14:28,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:14:28,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:14:29,057.057 INFO    ] No existing commands found in stream
[2026-08-25 05:14:34,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:14:34,081.081 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 05:14:38,144.144 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:14:38,147.147 INFO    ] Checking for system updates...
[2026-08-25 05:14:38,189.189 INFO    ] 200
[2026-08-25 05:14:38,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:38,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:14:38,249.249 INFO    ] No update needed
[2026-08-25 05:14:38,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 05:14:38,288.288 INFO    ] 200
[2026-08-25 05:14:38,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:38,333.333 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:14:38,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:14:38,389.389 INFO    ] No camera update needed
[2026-08-25 05:14:38,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:14:38,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:14:38,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:14:38,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:14:40,448.448 INFO    ] ================================================
[2026-08-25 05:14:40,464.464 INFO    ] Launching Daemon at Tue Aug 25 05:14:40 IST 2026
[2026-08-25 05:14:40,475.475 INFO    ] ================================================
[2026-08-25 05:14:41,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:14:41
[2026-08-25 05:14:41,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:14:42,152.152 INFO    ] Initializing speech engine...
[2026-08-25 05:14:42,164.164 INFO    ] 2026-08-25 05:14:42
[2026-08-25 05:14:42,479.479 INFO    ] 2026-08-25 05:14:42
[2026-08-25 05:14:42,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:14:42,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:14:42,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:14:42,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:14:43,000.000 INFO    ] time= 25/08/2026 05:14:42
[2026-08-25 05:14:43,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:14:43,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:14:43,143.143 INFO    ] No existing commands found in stream
[2026-08-25 05:14:48,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:14:48,161.161 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 05:14:51,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:14:51,591.591 INFO    ] Checking for system updates...
[2026-08-25 05:14:51,632.632 INFO    ] 200
[2026-08-25 05:14:51,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:51,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:51,704.704 INFO    ] No update needed
[2026-08-25 05:14:51,707.707 INFO    ] Checking for camera pi updates...
[2026-08-25 05:14:51,745.745 INFO    ] 200
[2026-08-25 05:14:51,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:14:51,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:14:51,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:14:51,835.835 INFO    ] No camera update needed
[2026-08-25 05:14:51,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:14:51,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:14:51,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:14:51,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:14:53,890.890 INFO    ] ================================================
[2026-08-25 05:14:53,906.906 INFO    ] Launching Daemon at Tue Aug 25 05:14:53 IST 2026
[2026-08-25 05:14:53,917.917 INFO    ] ================================================
[2026-08-25 05:14:54,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:14:54
[2026-08-25 05:14:55,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:14:55,600.600 INFO    ] Initializing speech engine...
[2026-08-25 05:14:55,612.612 INFO    ] 2026-08-25 05:14:55
[2026-08-25 05:14:55,929.929 INFO    ] 2026-08-25 05:14:55
[2026-08-25 05:14:56,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:14:56,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:14:56,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:14:56,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:14:56,435.435 INFO    ] time= 25/08/2026 05:14:56
[2026-08-25 05:14:56,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:14:56,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:14:56,590.590 INFO    ] No existing commands found in stream
[2026-08-25 05:15:01,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:15:01,624.624 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 05:15:03,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:15:03,835.835 INFO    ] Checking for system updates...
[2026-08-25 05:15:03,876.876 INFO    ] 200
[2026-08-25 05:15:03,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:03,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:15:03,932.932 INFO    ] No update needed
[2026-08-25 05:15:03,935.935 INFO    ] Checking for camera pi updates...
[2026-08-25 05:15:03,969.969 INFO    ] 200
[2026-08-25 05:15:03,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:04,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:15:04,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:15:04,083.083 INFO    ] No camera update needed
[2026-08-25 05:15:04,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:15:04,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:15:04,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:15:04,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:15:06,138.138 INFO    ] ================================================
[2026-08-25 05:15:06,153.153 INFO    ] Launching Daemon at Tue Aug 25 05:15:06 IST 2026
[2026-08-25 05:15:06,164.164 INFO    ] ================================================
[2026-08-25 05:15:06,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:15:06
[2026-08-25 05:15:07,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:15:07,832.832 INFO    ] Initializing speech engine...
[2026-08-25 05:15:07,846.846 INFO    ] 2026-08-25 05:15:07
[2026-08-25 05:15:08,155.155 INFO    ] 2026-08-25 05:15:08
[2026-08-25 05:15:08,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:15:08,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:15:08,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:15:08,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:15:08,598.598 INFO    ] time= 25/08/2026 05:15:08
[2026-08-25 05:15:08,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:15:08,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:15:08,822.822 INFO    ] No existing commands found in stream
[2026-08-25 05:15:13,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:15:13,839.839 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 05:15:15,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:15:15,675.675 INFO    ] Checking for system updates...
[2026-08-25 05:15:15,713.713 INFO    ] 200
[2026-08-25 05:15:15,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:15,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:15:15,777.777 INFO    ] No update needed
[2026-08-25 05:15:15,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 05:15:15,817.817 INFO    ] 200
[2026-08-25 05:15:15,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:15,865.865 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:15:15,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:15:15,917.917 INFO    ] No camera update needed
[2026-08-25 05:15:15,919.919 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:15:15,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:15:15,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:15:15,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:15:17,972.972 INFO    ] ================================================
[2026-08-25 05:15:17,988.988 INFO    ] Launching Daemon at Tue Aug 25 05:15:17 IST 2026
[2026-08-25 05:15:18,998.998 INFO    ] ================================================
[2026-08-25 05:15:18,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:15:18
[2026-08-25 05:15:19,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:15:19,427.427 INFO    ] Initializing speech engine...
[2026-08-25 05:15:19,433.433 INFO    ] 2026-08-25 05:15:19
[2026-08-25 05:15:19,693.693 INFO    ] 2026-08-25 05:15:19
[2026-08-25 05:15:19,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:15:19,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:15:19,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:15:20,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:15:20,152.152 INFO    ] time= 25/08/2026 05:15:20
[2026-08-25 05:15:20,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:15:20,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:15:20,350.350 INFO    ] No existing commands found in stream
[2026-08-25 05:15:25,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:15:25,380.380 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 05:15:27,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:15:27,586.586 INFO    ] Checking for system updates...
[2026-08-25 05:15:27,621.621 INFO    ] 200
[2026-08-25 05:15:27,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:27,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:15:27,685.685 INFO    ] No update needed
[2026-08-25 05:15:27,688.688 INFO    ] Checking for camera pi updates...
[2026-08-25 05:15:27,723.723 INFO    ] 200
[2026-08-25 05:15:27,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:27,784.784 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:15:27,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:15:27,931.931 INFO    ] No camera update needed
[2026-08-25 05:15:27,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:15:27,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:15:27,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:15:27,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:15:29,987.987 INFO    ] ================================================
[2026-08-25 05:15:30,003.003 INFO    ] Launching Daemon at Tue Aug 25 05:15:29 IST 2026
[2026-08-25 05:15:30,013.013 INFO    ] ================================================
[2026-08-25 05:15:30,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:15:30
[2026-08-25 05:15:31,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:15:31,565.565 INFO    ] Initializing speech engine...
[2026-08-25 05:15:31,579.579 INFO    ] 2026-08-25 05:15:31
[2026-08-25 05:15:31,872.872 INFO    ] 2026-08-25 05:15:31
[2026-08-25 05:15:31,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:15:32,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:15:32,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:15:32,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:15:32,322.322 INFO    ] time= 25/08/2026 05:15:32
[2026-08-25 05:15:32,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:15:32,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:15:32,480.480 INFO    ] No existing commands found in stream
[2026-08-25 05:15:37,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:15:37,506.506 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 05:15:40,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:15:40,446.446 INFO    ] Checking for system updates...
[2026-08-25 05:15:40,485.485 INFO    ] 200
[2026-08-25 05:15:40,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:40,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:15:40,543.543 INFO    ] No update needed
[2026-08-25 05:15:40,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 05:15:40,583.583 INFO    ] 200
[2026-08-25 05:15:40,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:40,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:15:40,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:15:40,692.692 INFO    ] No camera update needed
[2026-08-25 05:15:40,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:15:40,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:15:40,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:15:40,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:15:42,747.747 INFO    ] ================================================
[2026-08-25 05:15:42,762.762 INFO    ] Launching Daemon at Tue Aug 25 05:15:42 IST 2026
[2026-08-25 05:15:42,773.773 INFO    ] ================================================
[2026-08-25 05:15:43,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:15:43
[2026-08-25 05:15:44,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:15:44,431.431 INFO    ] Initializing speech engine...
[2026-08-25 05:15:44,442.442 INFO    ] 2026-08-25 05:15:44
[2026-08-25 05:15:44,730.730 INFO    ] 2026-08-25 05:15:44
[2026-08-25 05:15:44,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:15:45,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:15:45,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:15:45,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:15:45,262.262 INFO    ] time= 25/08/2026 05:15:45
[2026-08-25 05:15:45,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:15:45,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:15:45,415.415 INFO    ] No existing commands found in stream
[2026-08-25 05:15:50,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:15:50,439.439 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 05:15:51,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:15:51,749.749 INFO    ] Checking for system updates...
[2026-08-25 05:15:51,790.790 INFO    ] 200
[2026-08-25 05:15:51,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:51,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:15:51,860.860 INFO    ] No update needed
[2026-08-25 05:15:51,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 05:15:51,901.901 INFO    ] 200
[2026-08-25 05:15:51,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:15:51,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:15:52,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:15:52,005.005 INFO    ] No camera update needed
[2026-08-25 05:15:52,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:15:52,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:15:52,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:15:52,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:15:54,065.065 INFO    ] ================================================
[2026-08-25 05:15:54,081.081 INFO    ] Launching Daemon at Tue Aug 25 05:15:54 IST 2026
[2026-08-25 05:15:54,092.092 INFO    ] ================================================
[2026-08-25 05:15:54,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:15:54
[2026-08-25 05:15:55,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:15:55,749.749 INFO    ] Initializing speech engine...
[2026-08-25 05:15:55,761.761 INFO    ] 2026-08-25 05:15:55
[2026-08-25 05:15:56,046.046 INFO    ] 2026-08-25 05:15:56
[2026-08-25 05:15:56,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:15:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:15:56,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:15:56,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:15:56,577.577 INFO    ] time= 25/08/2026 05:15:56
[2026-08-25 05:15:56,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:15:56,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:15:56,737.737 INFO    ] No existing commands found in stream
[2026-08-25 05:16:01,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:16:01,776.776 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 05:16:04,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:16:04,816.816 INFO    ] Checking for system updates...
[2026-08-25 05:16:04,856.856 INFO    ] 200
[2026-08-25 05:16:04,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:04,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:04,913.913 INFO    ] No update needed
[2026-08-25 05:16:04,916.916 INFO    ] Checking for camera pi updates...
[2026-08-25 05:16:04,953.953 INFO    ] 200
[2026-08-25 05:16:04,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:04,996.996 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:16:05,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:05,048.048 INFO    ] No camera update needed
[2026-08-25 05:16:05,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:16:05,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:16:05,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:16:05,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:16:07,102.102 INFO    ] ================================================
[2026-08-25 05:16:07,117.117 INFO    ] Launching Daemon at Tue Aug 25 05:16:07 IST 2026
[2026-08-25 05:16:07,129.129 INFO    ] ================================================
[2026-08-25 05:16:07,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:16:07
[2026-08-25 05:16:08,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:16:08,759.759 INFO    ] Initializing speech engine...
[2026-08-25 05:16:08,765.765 INFO    ] 2026-08-25 05:16:08
[2026-08-25 05:16:09,029.029 INFO    ] 2026-08-25 05:16:09
[2026-08-25 05:16:09,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:16:09,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:16:09,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:16:09,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:16:09,495.495 INFO    ] time= 25/08/2026 05:16:09
[2026-08-25 05:16:09,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:16:09,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:16:09,723.723 INFO    ] No existing commands found in stream
[2026-08-25 05:16:14,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:16:14,739.739 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 05:16:18,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:16:18,089.089 INFO    ] Checking for system updates...
[2026-08-25 05:16:18,126.126 INFO    ] 200
[2026-08-25 05:16:18,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:18,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:18,185.185 INFO    ] No update needed
[2026-08-25 05:16:18,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 05:16:18,222.222 INFO    ] 200
[2026-08-25 05:16:18,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:18,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:16:18,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:18,313.313 INFO    ] No camera update needed
[2026-08-25 05:16:18,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:16:18,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:16:18,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:16:18,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:16:20,372.372 INFO    ] ================================================
[2026-08-25 05:16:20,388.388 INFO    ] Launching Daemon at Tue Aug 25 05:16:20 IST 2026
[2026-08-25 05:16:20,400.400 INFO    ] ================================================
[2026-08-25 05:16:20,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:16:20
[2026-08-25 05:16:21,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:16:21,823.823 INFO    ] Initializing speech engine...
[2026-08-25 05:16:21,833.833 INFO    ] 2026-08-25 05:16:21
[2026-08-25 05:16:22,078.078 INFO    ] 2026-08-25 05:16:22
[2026-08-25 05:16:22,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:16:22,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:16:22,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:16:22,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:16:22,572.572 INFO    ] time= 25/08/2026 05:16:22
[2026-08-25 05:16:22,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:16:22,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:16:22,766.766 INFO    ] No existing commands found in stream
[2026-08-25 05:16:27,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:16:27,798.798 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 05:16:31,084.084 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:16:31,087.087 INFO    ] Checking for system updates...
[2026-08-25 05:16:31,123.123 INFO    ] 200
[2026-08-25 05:16:31,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:31,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:31,180.180 INFO    ] No update needed
[2026-08-25 05:16:31,182.182 INFO    ] Checking for camera pi updates...
[2026-08-25 05:16:31,215.215 INFO    ] 200
[2026-08-25 05:16:31,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:31,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:16:31,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:31,312.312 INFO    ] No camera update needed
[2026-08-25 05:16:31,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:16:31,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:16:31,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:16:31,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:16:33,369.369 INFO    ] ================================================
[2026-08-25 05:16:33,385.385 INFO    ] Launching Daemon at Tue Aug 25 05:16:33 IST 2026
[2026-08-25 05:16:33,396.396 INFO    ] ================================================
[2026-08-25 05:16:33,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:16:33
[2026-08-25 05:16:34,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:16:34,805.805 INFO    ] Initializing speech engine...
[2026-08-25 05:16:34,820.820 INFO    ] 2026-08-25 05:16:34
[2026-08-25 05:16:35,104.104 INFO    ] 2026-08-25 05:16:35
[2026-08-25 05:16:35,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:16:35,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:16:35,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:16:35,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:16:35,508.508 INFO    ] time= 25/08/2026 05:16:35
[2026-08-25 05:16:35,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:16:35,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:16:35,616.616 INFO    ] No existing commands found in stream
[2026-08-25 05:16:40,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:16:40,631.631 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 05:16:43,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:16:43,637.637 INFO    ] Checking for system updates...
[2026-08-25 05:16:43,673.673 INFO    ] 200
[2026-08-25 05:16:43,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:43,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:43,740.740 INFO    ] No update needed
[2026-08-25 05:16:43,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 05:16:43,778.778 INFO    ] 200
[2026-08-25 05:16:43,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:43,827.827 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:16:43,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:16:43,879.879 INFO    ] No camera update needed
[2026-08-25 05:16:43,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:16:43,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:16:43,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:16:43,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:16:45,936.936 INFO    ] ================================================
[2026-08-25 05:16:45,952.952 INFO    ] Launching Daemon at Tue Aug 25 05:16:45 IST 2026
[2026-08-25 05:16:45,964.964 INFO    ] ================================================
[2026-08-25 05:16:46,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:16:46
[2026-08-25 05:16:47,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:16:47,613.613 INFO    ] Initializing speech engine...
[2026-08-25 05:16:47,627.627 INFO    ] 2026-08-25 05:16:47
[2026-08-25 05:16:47,911.911 INFO    ] 2026-08-25 05:16:47
[2026-08-25 05:16:47,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:16:48,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:16:48,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:16:48,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:16:48,445.445 INFO    ] time= 25/08/2026 05:16:48
[2026-08-25 05:16:48,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:16:48,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:16:48,602.602 INFO    ] No existing commands found in stream
[2026-08-25 05:16:53,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:16:53,621.621 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 05:16:55,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:16:55,490.490 INFO    ] Checking for system updates...
[2026-08-25 05:16:55,532.532 INFO    ] 200
[2026-08-25 05:16:55,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:55,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:16:55,598.598 INFO    ] No update needed
[2026-08-25 05:16:55,601.601 INFO    ] Checking for camera pi updates...
[2026-08-25 05:16:55,635.635 INFO    ] 200
[2026-08-25 05:16:55,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:16:55,683.683 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:16:55,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:16:55,774.774 INFO    ] No camera update needed
[2026-08-25 05:16:55,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:16:55,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:16:55,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:16:55,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:16:57,828.828 INFO    ] ================================================
[2026-08-25 05:16:57,844.844 INFO    ] Launching Daemon at Tue Aug 25 05:16:57 IST 2026
[2026-08-25 05:16:57,855.855 INFO    ] ================================================
[2026-08-25 05:16:58,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:16:58
[2026-08-25 05:16:59,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:16:59,282.282 INFO    ] Initializing speech engine...
[2026-08-25 05:16:59,295.295 INFO    ] 2026-08-25 05:16:59
[2026-08-25 05:16:59,547.547 INFO    ] 2026-08-25 05:16:59
[2026-08-25 05:16:59,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:16:59,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:16:59,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:16:59,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:17:00,008.008 INFO    ] time= 25/08/2026 05:16:59
[2026-08-25 05:17:00,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:17:00,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:17:00,237.237 INFO    ] No existing commands found in stream
[2026-08-25 05:17:05,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:17:05,258.258 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 05:17:06,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:17:06,147.147 INFO    ] Checking for system updates...
[2026-08-25 05:17:06,182.182 INFO    ] 200
[2026-08-25 05:17:06,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:06,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:17:06,241.241 INFO    ] No update needed
[2026-08-25 05:17:06,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 05:17:06,283.283 INFO    ] 200
[2026-08-25 05:17:06,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:06,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:17:06,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:17:06,392.392 INFO    ] No camera update needed
[2026-08-25 05:17:06,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:17:06,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:17:06,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:17:06,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:17:08,447.447 INFO    ] ================================================
[2026-08-25 05:17:08,462.462 INFO    ] Launching Daemon at Tue Aug 25 05:17:08 IST 2026
[2026-08-25 05:17:08,473.473 INFO    ] ================================================
[2026-08-25 05:17:09,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:17:09
[2026-08-25 05:17:09,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:17:10,107.107 INFO    ] Initializing speech engine...
[2026-08-25 05:17:10,121.121 INFO    ] 2026-08-25 05:17:10
[2026-08-25 05:17:10,403.403 INFO    ] 2026-08-25 05:17:10
[2026-08-25 05:17:10,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:17:10,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:17:10,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:17:10,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:17:10,877.877 INFO    ] time= 25/08/2026 05:17:10
[2026-08-25 05:17:10,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:17:10,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:17:11,068.068 INFO    ] No existing commands found in stream
[2026-08-25 05:17:16,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:17:16,098.098 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 05:17:17,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:17:17,979.979 INFO    ] Checking for system updates...
[2026-08-25 05:17:18,016.016 INFO    ] 200
[2026-08-25 05:17:18,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:18,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:17:18,076.076 INFO    ] No update needed
[2026-08-25 05:17:18,079.079 INFO    ] Checking for camera pi updates...
[2026-08-25 05:17:18,113.113 INFO    ] 200
[2026-08-25 05:17:18,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:18,161.161 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:17:18,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:17:18,230.230 INFO    ] No camera update needed
[2026-08-25 05:17:18,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:17:18,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:17:18,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:17:18,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:17:20,288.288 INFO    ] ================================================
[2026-08-25 05:17:20,303.303 INFO    ] Launching Daemon at Tue Aug 25 05:17:20 IST 2026
[2026-08-25 05:17:20,313.313 INFO    ] ================================================
[2026-08-25 05:17:20,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:17:20
[2026-08-25 05:17:21,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:17:21,734.734 INFO    ] Initializing speech engine...
[2026-08-25 05:17:21,743.743 INFO    ] 2026-08-25 05:17:21
[2026-08-25 05:17:21,989.989 INFO    ] 2026-08-25 05:17:21
[2026-08-25 05:17:22,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:17:22,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:17:22,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:17:22,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:17:22,420.420 INFO    ] time= 25/08/2026 05:17:22
[2026-08-25 05:17:22,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:17:22,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:17:22,600.600 INFO    ] No existing commands found in stream
[2026-08-25 05:17:27,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:17:27,615.615 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 05:17:31,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:17:31,307.307 INFO    ] Checking for system updates...
[2026-08-25 05:17:31,343.343 INFO    ] 200
[2026-08-25 05:17:31,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:31,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:17:31,406.406 INFO    ] No update needed
[2026-08-25 05:17:31,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 05:17:31,449.449 INFO    ] 200
[2026-08-25 05:17:31,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:31,497.497 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:17:31,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:17:31,645.645 INFO    ] No camera update needed
[2026-08-25 05:17:31,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:17:31,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:17:31,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:17:31,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:17:33,710.710 INFO    ] ================================================
[2026-08-25 05:17:33,725.725 INFO    ] Launching Daemon at Tue Aug 25 05:17:33 IST 2026
[2026-08-25 05:17:33,736.736 INFO    ] ================================================
[2026-08-25 05:17:34,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:17:34
[2026-08-25 05:17:34,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:17:35,143.143 INFO    ] Initializing speech engine...
[2026-08-25 05:17:35,151.151 INFO    ] 2026-08-25 05:17:35
[2026-08-25 05:17:35,448.448 INFO    ] 2026-08-25 05:17:35
[2026-08-25 05:17:35,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:17:35,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:17:35,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:17:35,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:17:35,841.841 INFO    ] time= 25/08/2026 05:17:35
[2026-08-25 05:17:35,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:17:35,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:17:35,954.954 INFO    ] No existing commands found in stream
[2026-08-25 05:17:40,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:17:40,970.970 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 05:17:43,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:17:43,026.026 INFO    ] Checking for system updates...
[2026-08-25 05:17:43,062.062 INFO    ] 200
[2026-08-25 05:17:43,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:43,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:17:43,127.127 INFO    ] No update needed
[2026-08-25 05:17:43,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 05:17:43,167.167 INFO    ] 200
[2026-08-25 05:17:43,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:43,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:17:43,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:17:43,276.276 INFO    ] No camera update needed
[2026-08-25 05:17:43,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:17:43,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:17:43,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:17:43,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:17:45,335.335 INFO    ] ================================================
[2026-08-25 05:17:45,350.350 INFO    ] Launching Daemon at Tue Aug 25 05:17:45 IST 2026
[2026-08-25 05:17:45,360.360 INFO    ] ================================================
[2026-08-25 05:17:45,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:17:45
[2026-08-25 05:17:46,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:17:46,785.785 INFO    ] Initializing speech engine...
[2026-08-25 05:17:46,810.810 INFO    ] 2026-08-25 05:17:46
[2026-08-25 05:17:47,085.085 INFO    ] 2026-08-25 05:17:47
[2026-08-25 05:17:47,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:17:47,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:17:47,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:17:47,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:17:47,500.500 INFO    ] time= 25/08/2026 05:17:47
[2026-08-25 05:17:47,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:17:47,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:17:47,592.592 INFO    ] No existing commands found in stream
[2026-08-25 05:17:52,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:17:52,620.620 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 05:17:54,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:17:54,408.408 INFO    ] Checking for system updates...
[2026-08-25 05:17:54,444.444 INFO    ] 200
[2026-08-25 05:17:54,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:54,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:17:54,502.502 INFO    ] No update needed
[2026-08-25 05:17:54,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 05:17:54,542.542 INFO    ] 200
[2026-08-25 05:17:54,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:17:54,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:17:54,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:17:54,640.640 INFO    ] No camera update needed
[2026-08-25 05:17:54,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:17:54,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:17:54,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:17:54,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:17:56,695.695 INFO    ] ================================================
[2026-08-25 05:17:56,710.710 INFO    ] Launching Daemon at Tue Aug 25 05:17:56 IST 2026
[2026-08-25 05:17:56,721.721 INFO    ] ================================================
[2026-08-25 05:17:57,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:17:57
[2026-08-25 05:17:58,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:17:58,339.339 INFO    ] Initializing speech engine...
[2026-08-25 05:17:58,354.354 INFO    ] 2026-08-25 05:17:58
[2026-08-25 05:17:58,653.653 INFO    ] 2026-08-25 05:17:58
[2026-08-25 05:17:58,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:17:58,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:17:58,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:17:59,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:17:59,138.138 INFO    ] time= 25/08/2026 05:17:59
[2026-08-25 05:17:59,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:17:59,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:17:59,336.336 INFO    ] No existing commands found in stream
[2026-08-25 05:18:04,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:18:04,370.370 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 05:18:08,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:18:08,378.378 INFO    ] Checking for system updates...
[2026-08-25 05:18:08,417.417 INFO    ] 200
[2026-08-25 05:18:08,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:08,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:18:08,475.475 INFO    ] No update needed
[2026-08-25 05:18:08,478.478 INFO    ] Checking for camera pi updates...
[2026-08-25 05:18:08,512.512 INFO    ] 200
[2026-08-25 05:18:08,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:08,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:18:08,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:18:08,630.630 INFO    ] No camera update needed
[2026-08-25 05:18:08,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:18:08,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:18:08,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:18:08,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:18:10,687.687 INFO    ] ================================================
[2026-08-25 05:18:10,702.702 INFO    ] Launching Daemon at Tue Aug 25 05:18:10 IST 2026
[2026-08-25 05:18:10,713.713 INFO    ] ================================================
[2026-08-25 05:18:11,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:18:11
[2026-08-25 05:18:11,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:18:12,184.184 INFO    ] Initializing speech engine...
[2026-08-25 05:18:12,191.191 INFO    ] 2026-08-25 05:18:12
[2026-08-25 05:18:12,463.463 INFO    ] 2026-08-25 05:18:12
[2026-08-25 05:18:12,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:18:12,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:18:12,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:18:12,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:18:12,926.926 INFO    ] time= 25/08/2026 05:18:12
[2026-08-25 05:18:12,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:18:13,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:18:13,166.166 INFO    ] No existing commands found in stream
[2026-08-25 05:18:18,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:18:18,184.184 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 05:18:22,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:18:22,360.360 INFO    ] Checking for system updates...
[2026-08-25 05:18:22,400.400 INFO    ] 200
[2026-08-25 05:18:22,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:22,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:18:22,460.460 INFO    ] No update needed
[2026-08-25 05:18:22,463.463 INFO    ] Checking for camera pi updates...
[2026-08-25 05:18:22,497.497 INFO    ] 200
[2026-08-25 05:18:22,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:22,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:18:22,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:18:22,592.592 INFO    ] No camera update needed
[2026-08-25 05:18:22,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:18:22,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:18:22,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:18:22,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:18:24,650.650 INFO    ] ================================================
[2026-08-25 05:18:24,664.664 INFO    ] Launching Daemon at Tue Aug 25 05:18:24 IST 2026
[2026-08-25 05:18:24,675.675 INFO    ] ================================================
[2026-08-25 05:18:25,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:18:25
[2026-08-25 05:18:25,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:18:26,078.078 INFO    ] Initializing speech engine...
[2026-08-25 05:18:26,084.084 INFO    ] 2026-08-25 05:18:26
[2026-08-25 05:18:26,378.378 INFO    ] 2026-08-25 05:18:26
[2026-08-25 05:18:26,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:18:26,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:18:26,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:18:26,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:18:26,797.797 INFO    ] time= 25/08/2026 05:18:26
[2026-08-25 05:18:26,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:18:26,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:18:26,882.882 INFO    ] No existing commands found in stream
[2026-08-25 05:18:31,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:18:31,900.900 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 05:18:36,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:18:36,027.027 INFO    ] Checking for system updates...
[2026-08-25 05:18:36,065.065 INFO    ] 200
[2026-08-25 05:18:36,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:36,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:18:36,122.122 INFO    ] No update needed
[2026-08-25 05:18:36,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 05:18:36,157.157 INFO    ] 200
[2026-08-25 05:18:36,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:36,200.200 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:18:36,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:18:36,268.268 INFO    ] No camera update needed
[2026-08-25 05:18:36,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:18:36,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:18:36,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:18:36,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:18:38,321.321 INFO    ] ================================================
[2026-08-25 05:18:38,336.336 INFO    ] Launching Daemon at Tue Aug 25 05:18:38 IST 2026
[2026-08-25 05:18:38,347.347 INFO    ] ================================================
[2026-08-25 05:18:38,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:18:38
[2026-08-25 05:18:39,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:18:39,766.766 INFO    ] Initializing speech engine...
[2026-08-25 05:18:39,775.775 INFO    ] 2026-08-25 05:18:39
[2026-08-25 05:18:40,021.021 INFO    ] 2026-08-25 05:18:40
[2026-08-25 05:18:40,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:18:40,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:18:40,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:18:40,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:18:40,495.495 INFO    ] time= 25/08/2026 05:18:40
[2026-08-25 05:18:40,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:18:40,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:18:40,703.703 INFO    ] No existing commands found in stream
[2026-08-25 05:18:45,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:18:45,736.736 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 05:18:47,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:18:47,887.887 INFO    ] Checking for system updates...
[2026-08-25 05:18:47,926.926 INFO    ] 200
[2026-08-25 05:18:47,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:47,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:18:47,982.982 INFO    ] No update needed
[2026-08-25 05:18:47,984.984 INFO    ] Checking for camera pi updates...
[2026-08-25 05:18:48,017.017 INFO    ] 200
[2026-08-25 05:18:48,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:48,060.060 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:18:48,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:18:48,110.110 INFO    ] No camera update needed
[2026-08-25 05:18:48,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:18:48,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:18:48,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:18:48,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:18:50,165.165 INFO    ] ================================================
[2026-08-25 05:18:50,180.180 INFO    ] Launching Daemon at Tue Aug 25 05:18:50 IST 2026
[2026-08-25 05:18:50,190.190 INFO    ] ================================================
[2026-08-25 05:18:50,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:18:50
[2026-08-25 05:18:51,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:18:51,698.698 INFO    ] Initializing speech engine...
[2026-08-25 05:18:51,708.708 INFO    ] 2026-08-25 05:18:51
[2026-08-25 05:18:51,974.974 INFO    ] 2026-08-25 05:18:51
[2026-08-25 05:18:52,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:18:52,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:18:52,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:18:52,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:18:52,520.520 INFO    ] time= 25/08/2026 05:18:52
[2026-08-25 05:18:52,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:18:52,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:18:52,673.673 INFO    ] No existing commands found in stream
[2026-08-25 05:18:57,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:18:57,691.691 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 05:18:58,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:18:58,280.280 INFO    ] Checking for system updates...
[2026-08-25 05:18:58,317.317 INFO    ] 200
[2026-08-25 05:18:58,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:58,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:18:58,376.376 INFO    ] No update needed
[2026-08-25 05:18:58,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 05:18:58,413.413 INFO    ] 200
[2026-08-25 05:18:58,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:18:58,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:18:58,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:18:58,512.512 INFO    ] No camera update needed
[2026-08-25 05:18:58,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:18:58,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:18:58,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:18:58,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:19:00,570.570 INFO    ] ================================================
[2026-08-25 05:19:00,585.585 INFO    ] Launching Daemon at Tue Aug 25 05:19:00 IST 2026
[2026-08-25 05:19:00,596.596 INFO    ] ================================================
[2026-08-25 05:19:01,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:19:01
[2026-08-25 05:19:01,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:19:02,187.187 INFO    ] Initializing speech engine...
[2026-08-25 05:19:02,203.203 INFO    ] 2026-08-25 05:19:02
[2026-08-25 05:19:02,529.529 INFO    ] 2026-08-25 05:19:02
[2026-08-25 05:19:02,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:19:02,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:19:02,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:19:02,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:19:02,936.936 INFO    ] time= 25/08/2026 05:19:02
[2026-08-25 05:19:02,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:19:02,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:19:03,071.071 INFO    ] No existing commands found in stream
[2026-08-25 05:19:08,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:19:08,116.116 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 05:19:08,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:19:08,568.568 INFO    ] Checking for system updates...
[2026-08-25 05:19:08,603.603 INFO    ] 200
[2026-08-25 05:19:08,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:08,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:19:08,661.661 INFO    ] No update needed
[2026-08-25 05:19:08,663.663 INFO    ] Checking for camera pi updates...
[2026-08-25 05:19:08,696.696 INFO    ] 200
[2026-08-25 05:19:08,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:08,738.738 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:19:08,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:19:08,797.797 INFO    ] No camera update needed
[2026-08-25 05:19:08,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:19:08,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:19:08,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:19:08,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:19:10,856.856 INFO    ] ================================================
[2026-08-25 05:19:10,872.872 INFO    ] Launching Daemon at Tue Aug 25 05:19:10 IST 2026
[2026-08-25 05:19:10,882.882 INFO    ] ================================================
[2026-08-25 05:19:11,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:19:11
[2026-08-25 05:19:12,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:19:12,365.365 INFO    ] Initializing speech engine...
[2026-08-25 05:19:12,371.371 INFO    ] 2026-08-25 05:19:12
[2026-08-25 05:19:12,677.677 INFO    ] 2026-08-25 05:19:12
[2026-08-25 05:19:12,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:19:12,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:19:12,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:19:13,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:19:13,054.054 INFO    ] time= 25/08/2026 05:19:13
[2026-08-25 05:19:13,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:19:13,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:19:13,151.151 INFO    ] No existing commands found in stream
[2026-08-25 05:19:18,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:19:18,189.189 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 05:19:22,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:19:22,067.067 INFO    ] Checking for system updates...
[2026-08-25 05:19:22,105.105 INFO    ] 200
[2026-08-25 05:19:22,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:22,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:19:22,170.170 INFO    ] No update needed
[2026-08-25 05:19:22,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 05:19:22,206.206 INFO    ] 200
[2026-08-25 05:19:22,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:22,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:19:22,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:19:22,314.314 INFO    ] No camera update needed
[2026-08-25 05:19:22,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:19:22,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:19:22,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:19:22,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:19:24,367.367 INFO    ] ================================================
[2026-08-25 05:19:24,383.383 INFO    ] Launching Daemon at Tue Aug 25 05:19:24 IST 2026
[2026-08-25 05:19:24,393.393 INFO    ] ================================================
[2026-08-25 05:19:24,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:19:24
[2026-08-25 05:19:25,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:19:25,849.849 INFO    ] Initializing speech engine...
[2026-08-25 05:19:25,855.855 INFO    ] 2026-08-25 05:19:25
[2026-08-25 05:19:26,117.117 INFO    ] 2026-08-25 05:19:26
[2026-08-25 05:19:26,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:19:26,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:19:26,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:19:26,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:19:26,576.576 INFO    ] time= 25/08/2026 05:19:26
[2026-08-25 05:19:26,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:19:26,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:19:26,805.805 INFO    ] No existing commands found in stream
[2026-08-25 05:19:31,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:19:31,829.829 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 05:19:32,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:19:32,680.680 INFO    ] Checking for system updates...
[2026-08-25 05:19:32,718.718 INFO    ] 200
[2026-08-25 05:19:32,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:32,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:19:32,779.779 INFO    ] No update needed
[2026-08-25 05:19:32,782.782 INFO    ] Checking for camera pi updates...
[2026-08-25 05:19:32,818.818 INFO    ] 200
[2026-08-25 05:19:32,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:32,864.864 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:19:32,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:19:32,913.913 INFO    ] No camera update needed
[2026-08-25 05:19:32,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:19:32,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:19:32,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:19:32,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:19:34,975.975 INFO    ] ================================================
[2026-08-25 05:19:34,989.989 INFO    ] Launching Daemon at Tue Aug 25 05:19:34 IST 2026
[2026-08-25 05:19:35,000.000 INFO    ] ================================================
[2026-08-25 05:19:35,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:19:35
[2026-08-25 05:19:36,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:19:36,422.422 INFO    ] Initializing speech engine...
[2026-08-25 05:19:36,430.430 INFO    ] 2026-08-25 05:19:36
[2026-08-25 05:19:36,679.679 INFO    ] 2026-08-25 05:19:36
[2026-08-25 05:19:36,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:19:36,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:19:36,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:19:37,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:19:37,153.153 INFO    ] time= 25/08/2026 05:19:37
[2026-08-25 05:19:37,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:19:37,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:19:37,395.395 INFO    ] No existing commands found in stream
[2026-08-25 05:19:42,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:19:42,417.417 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 05:19:43,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:19:43,148.148 INFO    ] Checking for system updates...
[2026-08-25 05:19:43,189.189 INFO    ] 200
[2026-08-25 05:19:43,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:43,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:19:43,248.248 INFO    ] No update needed
[2026-08-25 05:19:43,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 05:19:43,284.284 INFO    ] 200
[2026-08-25 05:19:43,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:43,326.326 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:19:43,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:19:43,489.489 INFO    ] No camera update needed
[2026-08-25 05:19:43,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:19:43,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:19:43,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:19:43,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:19:45,545.545 INFO    ] ================================================
[2026-08-25 05:19:45,561.561 INFO    ] Launching Daemon at Tue Aug 25 05:19:45 IST 2026
[2026-08-25 05:19:45,572.572 INFO    ] ================================================
[2026-08-25 05:19:46,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:19:46
[2026-08-25 05:19:46,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:19:46,988.988 INFO    ] Initializing speech engine...
[2026-08-25 05:19:47,010.010 INFO    ] 2026-08-25 05:19:46
[2026-08-25 05:19:47,260.260 INFO    ] 2026-08-25 05:19:47
[2026-08-25 05:19:47,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:19:47,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:19:47,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:19:47,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:19:47,726.726 INFO    ] time= 25/08/2026 05:19:47
[2026-08-25 05:19:47,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:19:47,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:19:47,947.947 INFO    ] No existing commands found in stream
[2026-08-25 05:19:52,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:19:52,980.980 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 05:19:54,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:19:54,337.337 INFO    ] Checking for system updates...
[2026-08-25 05:19:54,374.374 INFO    ] 200
[2026-08-25 05:19:54,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:54,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:19:54,432.432 INFO    ] No update needed
[2026-08-25 05:19:54,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 05:19:54,473.473 INFO    ] 200
[2026-08-25 05:19:54,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:19:54,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:19:54,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:19:54,578.578 INFO    ] No camera update needed
[2026-08-25 05:19:54,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:19:54,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:19:54,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:19:54,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:19:56,632.632 INFO    ] ================================================
[2026-08-25 05:19:56,647.647 INFO    ] Launching Daemon at Tue Aug 25 05:19:56 IST 2026
[2026-08-25 05:19:56,658.658 INFO    ] ================================================
[2026-08-25 05:19:57,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:19:57
[2026-08-25 05:19:58,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:19:58,334.334 INFO    ] Initializing speech engine...
[2026-08-25 05:19:58,348.348 INFO    ] 2026-08-25 05:19:58
[2026-08-25 05:19:58,662.662 INFO    ] 2026-08-25 05:19:58
[2026-08-25 05:19:58,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:19:58,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:19:58,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:19:59,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:19:59,173.173 INFO    ] time= 25/08/2026 05:19:59
[2026-08-25 05:19:59,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:19:59,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:19:59,325.325 INFO    ] No existing commands found in stream
[2026-08-25 05:20:04,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:20:04,343.343 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 05:20:08,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:20:08,173.173 INFO    ] Checking for system updates...
[2026-08-25 05:20:08,211.211 INFO    ] 200
[2026-08-25 05:20:08,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:08,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:08,272.272 INFO    ] No update needed
[2026-08-25 05:20:08,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 05:20:08,314.314 INFO    ] 200
[2026-08-25 05:20:08,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:08,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:20:08,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:08,411.411 INFO    ] No camera update needed
[2026-08-25 05:20:08,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:20:08,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:20:08,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:20:08,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:20:10,472.472 INFO    ] ================================================
[2026-08-25 05:20:10,487.487 INFO    ] Launching Daemon at Tue Aug 25 05:20:10 IST 2026
[2026-08-25 05:20:10,497.497 INFO    ] ================================================
[2026-08-25 05:20:11,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:20:11
[2026-08-25 05:20:11,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:20:11,920.920 INFO    ] Initializing speech engine...
[2026-08-25 05:20:11,930.930 INFO    ] 2026-08-25 05:20:11
[2026-08-25 05:20:12,175.175 INFO    ] 2026-08-25 05:20:12
[2026-08-25 05:20:12,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:20:12,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:20:12,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:20:12,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:20:12,670.670 INFO    ] time= 25/08/2026 05:20:12
[2026-08-25 05:20:12,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:20:12,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:20:12,885.885 INFO    ] No existing commands found in stream
[2026-08-25 05:20:17,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:20:17,900.900 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 05:20:20,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:20:20,215.215 INFO    ] Checking for system updates...
[2026-08-25 05:20:20,261.261 INFO    ] 200
[2026-08-25 05:20:20,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:20,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:20,319.319 INFO    ] No update needed
[2026-08-25 05:20:20,322.322 INFO    ] Checking for camera pi updates...
[2026-08-25 05:20:20,359.359 INFO    ] 200
[2026-08-25 05:20:20,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:20,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:20:20,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:20,457.457 INFO    ] No camera update needed
[2026-08-25 05:20:20,459.459 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:20:20,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:20:20,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:20:20,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:20:22,512.512 INFO    ] ================================================
[2026-08-25 05:20:22,528.528 INFO    ] Launching Daemon at Tue Aug 25 05:20:22 IST 2026
[2026-08-25 05:20:22,540.540 INFO    ] ================================================
[2026-08-25 05:20:23,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:20:23
[2026-08-25 05:20:23,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:20:24,210.210 INFO    ] Initializing speech engine...
[2026-08-25 05:20:24,224.224 INFO    ] 2026-08-25 05:20:24
[2026-08-25 05:20:24,536.536 INFO    ] 2026-08-25 05:20:24
[2026-08-25 05:20:24,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:20:24,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:20:24,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:20:25,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:20:25,046.046 INFO    ] time= 25/08/2026 05:20:25
[2026-08-25 05:20:25,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:20:25,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:20:25,210.210 INFO    ] No existing commands found in stream
[2026-08-25 05:20:30,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:20:30,240.240 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 05:20:31,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:20:31,142.142 INFO    ] Checking for system updates...
[2026-08-25 05:20:31,180.180 INFO    ] 200
[2026-08-25 05:20:31,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:31,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:31,238.238 INFO    ] No update needed
[2026-08-25 05:20:31,241.241 INFO    ] Checking for camera pi updates...
[2026-08-25 05:20:31,281.281 INFO    ] 200
[2026-08-25 05:20:31,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:31,325.325 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:20:31,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:31,384.384 INFO    ] No camera update needed
[2026-08-25 05:20:31,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:20:31,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:20:31,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:20:31,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:20:33,445.445 INFO    ] ================================================
[2026-08-25 05:20:33,461.461 INFO    ] Launching Daemon at Tue Aug 25 05:20:33 IST 2026
[2026-08-25 05:20:33,473.473 INFO    ] ================================================
[2026-08-25 05:20:34,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:20:34
[2026-08-25 05:20:34,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:20:35,132.132 INFO    ] Initializing speech engine...
[2026-08-25 05:20:35,139.139 INFO    ] 2026-08-25 05:20:35
[2026-08-25 05:20:35,444.444 INFO    ] 2026-08-25 05:20:35
[2026-08-25 05:20:35,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:20:35,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:20:35,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:20:35,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:20:35,951.951 INFO    ] time= 25/08/2026 05:20:35
[2026-08-25 05:20:35,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:20:35,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:20:36,117.117 INFO    ] No existing commands found in stream
[2026-08-25 05:20:41,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:20:41,148.148 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 05:20:43,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:20:43,972.972 INFO    ] Checking for system updates...
[2026-08-25 05:20:44,010.010 INFO    ] 200
[2026-08-25 05:20:44,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:44,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:44,068.068 INFO    ] No update needed
[2026-08-25 05:20:44,071.071 INFO    ] Checking for camera pi updates...
[2026-08-25 05:20:44,106.106 INFO    ] 200
[2026-08-25 05:20:44,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:44,149.149 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:20:44,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:20:44,206.206 INFO    ] No camera update needed
[2026-08-25 05:20:44,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:20:44,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:20:44,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:20:44,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:20:46,261.261 INFO    ] ================================================
[2026-08-25 05:20:46,277.277 INFO    ] Launching Daemon at Tue Aug 25 05:20:46 IST 2026
[2026-08-25 05:20:46,289.289 INFO    ] ================================================
[2026-08-25 05:20:46,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:20:46
[2026-08-25 05:20:47,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:20:47,749.749 INFO    ] Initializing speech engine...
[2026-08-25 05:20:47,759.759 INFO    ] 2026-08-25 05:20:47
[2026-08-25 05:20:48,021.021 INFO    ] 2026-08-25 05:20:48
[2026-08-25 05:20:48,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:20:48,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:20:48,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:20:48,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:20:48,483.483 INFO    ] time= 25/08/2026 05:20:48
[2026-08-25 05:20:48,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:20:48,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:20:48,687.687 INFO    ] No existing commands found in stream
[2026-08-25 05:20:53,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:20:53,720.720 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 05:20:57,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:20:57,348.348 INFO    ] Checking for system updates...
[2026-08-25 05:20:57,384.384 INFO    ] 200
[2026-08-25 05:20:57,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:57,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:20:57,449.449 INFO    ] No update needed
[2026-08-25 05:20:57,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 05:20:57,485.485 INFO    ] 200
[2026-08-25 05:20:57,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:20:57,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:20:57,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:20:57,578.578 INFO    ] No camera update needed
[2026-08-25 05:20:57,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:20:57,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:20:57,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:20:57,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:20:59,635.635 INFO    ] ================================================
[2026-08-25 05:20:59,650.650 INFO    ] Launching Daemon at Tue Aug 25 05:20:59 IST 2026
[2026-08-25 05:20:59,662.662 INFO    ] ================================================
[2026-08-25 05:21:00,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:21:00
[2026-08-25 05:21:00,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:21:01,082.082 INFO    ] Initializing speech engine...
[2026-08-25 05:21:01,090.090 INFO    ] 2026-08-25 05:21:01
[2026-08-25 05:21:01,341.341 INFO    ] 2026-08-25 05:21:01
[2026-08-25 05:21:01,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:21:01,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:21:01,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:21:01,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:21:01,836.836 INFO    ] time= 25/08/2026 05:21:01
[2026-08-25 05:21:01,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:21:01,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:21:02,048.048 INFO    ] No existing commands found in stream
[2026-08-25 05:21:07,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:21:07,078.078 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 05:21:10,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:21:10,170.170 INFO    ] Checking for system updates...
[2026-08-25 05:21:10,205.205 INFO    ] 200
[2026-08-25 05:21:10,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:10,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:21:10,262.262 INFO    ] No update needed
[2026-08-25 05:21:10,264.264 INFO    ] Checking for camera pi updates...
[2026-08-25 05:21:10,298.298 INFO    ] 200
[2026-08-25 05:21:10,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:10,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:21:10,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:21:10,400.400 INFO    ] No camera update needed
[2026-08-25 05:21:10,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:21:10,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:21:10,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:21:10,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:21:12,456.456 INFO    ] ================================================
[2026-08-25 05:21:12,471.471 INFO    ] Launching Daemon at Tue Aug 25 05:21:12 IST 2026
[2026-08-25 05:21:12,482.482 INFO    ] ================================================
[2026-08-25 05:21:13,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:21:13
[2026-08-25 05:21:13,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:21:13,934.934 INFO    ] Initializing speech engine...
[2026-08-25 05:21:13,940.940 INFO    ] 2026-08-25 05:21:13
[2026-08-25 05:21:14,202.202 INFO    ] 2026-08-25 05:21:14
[2026-08-25 05:21:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:21:14,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:21:14,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:21:14,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:21:14,635.635 INFO    ] time= 25/08/2026 05:21:14
[2026-08-25 05:21:14,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:21:14,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:21:14,898.898 INFO    ] No existing commands found in stream
[2026-08-25 05:21:19,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:21:19,914.914 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 05:21:20,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:21:20,597.597 INFO    ] Checking for system updates...
[2026-08-25 05:21:20,722.722 INFO    ] 200
[2026-08-25 05:21:20,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:20,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:21:20,787.787 INFO    ] No update needed
[2026-08-25 05:21:20,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 05:21:20,823.823 INFO    ] 200
[2026-08-25 05:21:20,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:20,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:21:20,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:21:20,929.929 INFO    ] No camera update needed
[2026-08-25 05:21:20,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:21:20,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:21:20,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:21:20,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:21:22,986.986 INFO    ] ================================================
[2026-08-25 05:21:23,001.001 INFO    ] Launching Daemon at Tue Aug 25 05:21:22 IST 2026
[2026-08-25 05:21:23,012.012 INFO    ] ================================================
[2026-08-25 05:21:23,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:21:23
[2026-08-25 05:21:24,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:21:24,578.578 INFO    ] Initializing speech engine...
[2026-08-25 05:21:24,592.592 INFO    ] 2026-08-25 05:21:24
[2026-08-25 05:21:24,847.847 INFO    ] 2026-08-25 05:21:24
[2026-08-25 05:21:24,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:21:25,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:21:25,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:21:25,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:21:25,345.345 INFO    ] time= 25/08/2026 05:21:25
[2026-08-25 05:21:25,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:21:25,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:21:25,564.564 INFO    ] No existing commands found in stream
[2026-08-25 05:21:30,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:21:30,595.595 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 05:21:31,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:21:31,821.821 INFO    ] Checking for system updates...
[2026-08-25 05:21:31,861.861 INFO    ] 200
[2026-08-25 05:21:31,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:31,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:21:31,920.920 INFO    ] No update needed
[2026-08-25 05:21:31,923.923 INFO    ] Checking for camera pi updates...
[2026-08-25 05:21:31,957.957 INFO    ] 200
[2026-08-25 05:21:31,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:32,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:21:32,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:21:32,057.057 INFO    ] No camera update needed
[2026-08-25 05:21:32,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:21:32,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:21:32,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:21:32,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:21:34,117.117 INFO    ] ================================================
[2026-08-25 05:21:34,133.133 INFO    ] Launching Daemon at Tue Aug 25 05:21:34 IST 2026
[2026-08-25 05:21:34,143.143 INFO    ] ================================================
[2026-08-25 05:21:34,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:21:34
[2026-08-25 05:21:35,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:21:35,566.566 INFO    ] Initializing speech engine...
[2026-08-25 05:21:35,575.575 INFO    ] 2026-08-25 05:21:35
[2026-08-25 05:21:35,821.821 INFO    ] 2026-08-25 05:21:35
[2026-08-25 05:21:35,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:21:36,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:21:36,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:21:36,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:21:36,298.298 INFO    ] time= 25/08/2026 05:21:36
[2026-08-25 05:21:36,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:21:36,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:21:36,524.524 INFO    ] No existing commands found in stream
[2026-08-25 05:21:41,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:21:41,548.548 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 05:21:43,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:21:43,588.588 INFO    ] Checking for system updates...
[2026-08-25 05:21:43,623.623 INFO    ] 200
[2026-08-25 05:21:43,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:43,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:21:43,681.681 INFO    ] No update needed
[2026-08-25 05:21:43,684.684 INFO    ] Checking for camera pi updates...
[2026-08-25 05:21:43,716.716 INFO    ] 200
[2026-08-25 05:21:43,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:43,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:21:43,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:21:43,815.815 INFO    ] No camera update needed
[2026-08-25 05:21:43,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:21:43,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:21:43,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:21:43,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:21:45,870.870 INFO    ] ================================================
[2026-08-25 05:21:45,885.885 INFO    ] Launching Daemon at Tue Aug 25 05:21:45 IST 2026
[2026-08-25 05:21:45,896.896 INFO    ] ================================================
[2026-08-25 05:21:46,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:21:46
[2026-08-25 05:21:47,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:21:47,531.531 INFO    ] Initializing speech engine...
[2026-08-25 05:21:47,543.543 INFO    ] 2026-08-25 05:21:47
[2026-08-25 05:21:47,828.828 INFO    ] 2026-08-25 05:21:47
[2026-08-25 05:21:47,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:21:48,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:21:48,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:21:48,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:21:48,363.363 INFO    ] time= 25/08/2026 05:21:48
[2026-08-25 05:21:48,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:21:48,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:21:48,518.518 INFO    ] No existing commands found in stream
[2026-08-25 05:21:53,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:21:53,547.547 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 05:21:55,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:21:55,375.375 INFO    ] Checking for system updates...
[2026-08-25 05:21:55,418.418 INFO    ] 200
[2026-08-25 05:21:55,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:55,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:21:55,484.484 INFO    ] No update needed
[2026-08-25 05:21:55,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 05:21:55,522.522 INFO    ] 200
[2026-08-25 05:21:55,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:21:55,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:21:55,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:21:55,730.730 INFO    ] No camera update needed
[2026-08-25 05:21:55,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:21:55,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:21:55,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:21:55,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:21:57,787.787 INFO    ] ================================================
[2026-08-25 05:21:57,802.802 INFO    ] Launching Daemon at Tue Aug 25 05:21:57 IST 2026
[2026-08-25 05:21:57,813.813 INFO    ] ================================================
[2026-08-25 05:21:58,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:21:58
[2026-08-25 05:21:58,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:21:59,221.221 INFO    ] Initializing speech engine...
[2026-08-25 05:21:59,228.228 INFO    ] 2026-08-25 05:21:59
[2026-08-25 05:21:59,523.523 INFO    ] 2026-08-25 05:21:59
[2026-08-25 05:21:59,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:21:59,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:21:59,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:21:59,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:21:59,953.953 INFO    ] time= 25/08/2026 05:21:59
[2026-08-25 05:21:59,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:22:00,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:22:00,133.133 INFO    ] No existing commands found in stream
[2026-08-25 05:22:05,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:22:05,171.171 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 05:22:06,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:22:06,675.675 INFO    ] Checking for system updates...
[2026-08-25 05:22:06,710.710 INFO    ] 200
[2026-08-25 05:22:06,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:06,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:22:06,766.766 INFO    ] No update needed
[2026-08-25 05:22:06,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 05:22:06,801.801 INFO    ] 200
[2026-08-25 05:22:06,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:06,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:22:06,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:22:06,910.910 INFO    ] No camera update needed
[2026-08-25 05:22:06,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:22:06,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:22:06,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:22:06,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:22:08,974.974 INFO    ] ================================================
[2026-08-25 05:22:08,990.990 INFO    ] Launching Daemon at Tue Aug 25 05:22:08 IST 2026
[2026-08-25 05:22:09,000.000 INFO    ] ================================================
[2026-08-25 05:22:09,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:22:09
[2026-08-25 05:22:10,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:22:10,410.410 INFO    ] Initializing speech engine...
[2026-08-25 05:22:10,433.433 INFO    ] 2026-08-25 05:22:10
[2026-08-25 05:22:10,689.689 INFO    ] 2026-08-25 05:22:10
[2026-08-25 05:22:10,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:22:10,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:22:10,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:22:11,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:22:11,063.063 INFO    ] time= 25/08/2026 05:22:11
[2026-08-25 05:22:11,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:22:11,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:22:11,249.249 INFO    ] No existing commands found in stream
[2026-08-25 05:22:16,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:22:16,268.268 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 05:22:20,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:22:20,693.693 INFO    ] Checking for system updates...
[2026-08-25 05:22:20,734.734 INFO    ] 200
[2026-08-25 05:22:20,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:20,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:22:20,799.799 INFO    ] No update needed
[2026-08-25 05:22:20,801.801 INFO    ] Checking for camera pi updates...
[2026-08-25 05:22:20,834.834 INFO    ] 200
[2026-08-25 05:22:20,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:20,877.877 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:22:20,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:22:20,925.925 INFO    ] No camera update needed
[2026-08-25 05:22:20,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:22:20,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:22:20,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:22:20,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:22:22,982.982 INFO    ] ================================================
[2026-08-25 05:22:23,997.997 INFO    ] Launching Daemon at Tue Aug 25 05:22:22 IST 2026
[2026-08-25 05:22:23,008.008 INFO    ] ================================================
[2026-08-25 05:22:23,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:22:23
[2026-08-25 05:22:24,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:22:24,438.438 INFO    ] Initializing speech engine...
[2026-08-25 05:22:24,447.447 INFO    ] 2026-08-25 05:22:24
[2026-08-25 05:22:24,704.704 INFO    ] 2026-08-25 05:22:24
[2026-08-25 05:22:24,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:22:24,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:22:24,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:22:25,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:22:25,169.169 INFO    ] time= 25/08/2026 05:22:25
[2026-08-25 05:22:25,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:22:25,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:22:25,388.388 INFO    ] No existing commands found in stream
[2026-08-25 05:22:30,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:22:30,413.413 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 05:22:34,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:22:34,746.746 INFO    ] Checking for system updates...
[2026-08-25 05:22:34,785.785 INFO    ] 200
[2026-08-25 05:22:34,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:34,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:22:34,845.845 INFO    ] No update needed
[2026-08-25 05:22:34,847.847 INFO    ] Checking for camera pi updates...
[2026-08-25 05:22:34,881.881 INFO    ] 200
[2026-08-25 05:22:34,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:34,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:22:34,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:22:34,982.982 INFO    ] No camera update needed
[2026-08-25 05:22:34,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:22:34,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:22:34,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:22:34,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:22:37,039.039 INFO    ] ================================================
[2026-08-25 05:22:37,054.054 INFO    ] Launching Daemon at Tue Aug 25 05:22:37 IST 2026
[2026-08-25 05:22:37,065.065 INFO    ] ================================================
[2026-08-25 05:22:37,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:22:37
[2026-08-25 05:22:38,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:22:38,577.577 INFO    ] Initializing speech engine...
[2026-08-25 05:22:38,589.589 INFO    ] 2026-08-25 05:22:38
[2026-08-25 05:22:38,887.887 INFO    ] 2026-08-25 05:22:38
[2026-08-25 05:22:38,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:22:39,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:22:39,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:22:39,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:22:39,433.433 INFO    ] time= 25/08/2026 05:22:39
[2026-08-25 05:22:39,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:22:39,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:22:39,610.610 INFO    ] No existing commands found in stream
[2026-08-25 05:22:44,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:22:44,645.645 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 05:22:47,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:22:47,956.956 INFO    ] Checking for system updates...
[2026-08-25 05:22:47,993.993 INFO    ] 200
[2026-08-25 05:22:47,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:48,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:22:48,060.060 INFO    ] No update needed
[2026-08-25 05:22:48,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 05:22:48,101.101 INFO    ] 200
[2026-08-25 05:22:48,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:22:48,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:22:48,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:22:48,200.200 INFO    ] No camera update needed
[2026-08-25 05:22:48,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:22:48,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:22:48,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:22:48,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:22:50,254.254 INFO    ] ================================================
[2026-08-25 05:22:50,270.270 INFO    ] Launching Daemon at Tue Aug 25 05:22:50 IST 2026
[2026-08-25 05:22:50,280.280 INFO    ] ================================================
[2026-08-25 05:22:50,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:22:50
[2026-08-25 05:22:51,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:22:51,693.693 INFO    ] Initializing speech engine...
[2026-08-25 05:22:51,707.707 INFO    ] 2026-08-25 05:22:51
[2026-08-25 05:22:51,997.997 INFO    ] 2026-08-25 05:22:51
[2026-08-25 05:22:52,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:22:52,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:22:52,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:22:52,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:22:52,390.390 INFO    ] time= 25/08/2026 05:22:52
[2026-08-25 05:22:52,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:22:52,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:22:52,518.518 INFO    ] No existing commands found in stream
[2026-08-25 05:22:57,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:22:57,533.533 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 05:23:01,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:23:01,651.651 INFO    ] Checking for system updates...
[2026-08-25 05:23:01,692.692 INFO    ] 200
[2026-08-25 05:23:01,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:01,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:23:01,749.749 INFO    ] No update needed
[2026-08-25 05:23:01,751.751 INFO    ] Checking for camera pi updates...
[2026-08-25 05:23:01,785.785 INFO    ] 200
[2026-08-25 05:23:01,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:01,828.828 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:23:01,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:23:01,889.889 INFO    ] No camera update needed
[2026-08-25 05:23:01,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:23:01,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:23:01,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:23:01,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:23:03,944.944 INFO    ] ================================================
[2026-08-25 05:23:03,959.959 INFO    ] Launching Daemon at Tue Aug 25 05:23:03 IST 2026
[2026-08-25 05:23:03,970.970 INFO    ] ================================================
[2026-08-25 05:23:04,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:23:04
[2026-08-25 05:23:05,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:23:05,464.464 INFO    ] Initializing speech engine...
[2026-08-25 05:23:05,473.473 INFO    ] 2026-08-25 05:23:05
[2026-08-25 05:23:05,770.770 INFO    ] 2026-08-25 05:23:05
[2026-08-25 05:23:05,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:23:06,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:23:06,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:23:06,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:23:06,158.158 INFO    ] time= 25/08/2026 05:23:06
[2026-08-25 05:23:06,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:23:06,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:23:06,286.286 INFO    ] No existing commands found in stream
[2026-08-25 05:23:11,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:23:11,301.301 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 05:23:15,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:23:15,040.040 INFO    ] Checking for system updates...
[2026-08-25 05:23:15,076.076 INFO    ] 200
[2026-08-25 05:23:15,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:15,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:23:15,140.140 INFO    ] No update needed
[2026-08-25 05:23:15,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 05:23:15,175.175 INFO    ] 200
[2026-08-25 05:23:15,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:15,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:23:15,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:23:15,301.301 INFO    ] No camera update needed
[2026-08-25 05:23:15,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:23:15,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:23:15,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:23:15,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:23:17,355.355 INFO    ] ================================================
[2026-08-25 05:23:17,370.370 INFO    ] Launching Daemon at Tue Aug 25 05:23:17 IST 2026
[2026-08-25 05:23:17,381.381 INFO    ] ================================================
[2026-08-25 05:23:17,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:23:17
[2026-08-25 05:23:18,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:23:18,834.834 INFO    ] Initializing speech engine...
[2026-08-25 05:23:18,843.843 INFO    ] 2026-08-25 05:23:18
[2026-08-25 05:23:19,141.141 INFO    ] 2026-08-25 05:23:19
[2026-08-25 05:23:19,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:23:19,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:23:19,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:23:19,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:23:19,527.527 INFO    ] time= 25/08/2026 05:23:19
[2026-08-25 05:23:19,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:23:19,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:23:19,654.654 INFO    ] No existing commands found in stream
[2026-08-25 05:23:24,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:23:24,669.669 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 05:23:26,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:23:26,271.271 INFO    ] Checking for system updates...
[2026-08-25 05:23:26,307.307 INFO    ] 200
[2026-08-25 05:23:26,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:26,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:23:26,371.371 INFO    ] No update needed
[2026-08-25 05:23:26,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 05:23:26,411.411 INFO    ] 200
[2026-08-25 05:23:26,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:26,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:23:26,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:23:26,509.509 INFO    ] No camera update needed
[2026-08-25 05:23:26,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:23:26,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:23:26,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:23:26,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:23:28,563.563 INFO    ] ================================================
[2026-08-25 05:23:28,578.578 INFO    ] Launching Daemon at Tue Aug 25 05:23:28 IST 2026
[2026-08-25 05:23:28,589.589 INFO    ] ================================================
[2026-08-25 05:23:29,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:23:29
[2026-08-25 05:23:29,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:23:30,251.251 INFO    ] Initializing speech engine...
[2026-08-25 05:23:30,259.259 INFO    ] 2026-08-25 05:23:30
[2026-08-25 05:23:30,536.536 INFO    ] 2026-08-25 05:23:30
[2026-08-25 05:23:30,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:23:30,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:23:30,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:23:30,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:23:30,995.995 INFO    ] time= 25/08/2026 05:23:30
[2026-08-25 05:23:31,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:23:31,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:23:31,244.244 INFO    ] No existing commands found in stream
[2026-08-25 05:23:36,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:23:36,277.277 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 05:23:39,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:23:39,767.767 INFO    ] Checking for system updates...
[2026-08-25 05:23:39,808.808 INFO    ] 200
[2026-08-25 05:23:39,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:39,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:23:39,873.873 INFO    ] No update needed
[2026-08-25 05:23:39,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 05:23:39,916.916 INFO    ] 200
[2026-08-25 05:23:39,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:39,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:23:40,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:23:40,020.020 INFO    ] No camera update needed
[2026-08-25 05:23:40,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:23:40,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:23:40,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:23:40,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:23:42,079.079 INFO    ] ================================================
[2026-08-25 05:23:42,094.094 INFO    ] Launching Daemon at Tue Aug 25 05:23:42 IST 2026
[2026-08-25 05:23:42,105.105 INFO    ] ================================================
[2026-08-25 05:23:42,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:23:42
[2026-08-25 05:23:43,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:23:43,566.566 INFO    ] Initializing speech engine...
[2026-08-25 05:23:43,571.571 INFO    ] 2026-08-25 05:23:43
[2026-08-25 05:23:43,831.831 INFO    ] 2026-08-25 05:23:43
[2026-08-25 05:23:43,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:23:44,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:23:44,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:23:44,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:23:44,299.299 INFO    ] time= 25/08/2026 05:23:44
[2026-08-25 05:23:44,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:23:44,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:23:44,520.520 INFO    ] No existing commands found in stream
[2026-08-25 05:23:49,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:23:49,540.540 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 05:23:51,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:23:51,123.123 INFO    ] Checking for system updates...
[2026-08-25 05:23:51,163.163 INFO    ] 200
[2026-08-25 05:23:51,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:51,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:23:51,220.220 INFO    ] No update needed
[2026-08-25 05:23:51,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 05:23:51,259.259 INFO    ] 200
[2026-08-25 05:23:51,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:23:51,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:23:51,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:23:51,352.352 INFO    ] No camera update needed
[2026-08-25 05:23:51,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:23:51,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:23:51,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:23:51,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:23:53,410.410 INFO    ] ================================================
[2026-08-25 05:23:53,425.425 INFO    ] Launching Daemon at Tue Aug 25 05:23:53 IST 2026
[2026-08-25 05:23:53,435.435 INFO    ] ================================================
[2026-08-25 05:23:54,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:23:54
[2026-08-25 05:23:54,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:23:55,004.004 INFO    ] Initializing speech engine...
[2026-08-25 05:23:55,014.014 INFO    ] 2026-08-25 05:23:55
[2026-08-25 05:23:55,354.354 INFO    ] 2026-08-25 05:23:55
[2026-08-25 05:23:55,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:23:55,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:23:55,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:23:55,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:23:55,865.865 INFO    ] time= 25/08/2026 05:23:55
[2026-08-25 05:23:55,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:23:55,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:23:56,014.014 INFO    ] No existing commands found in stream
[2026-08-25 05:24:01,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:24:01,039.039 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 05:24:04,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:24:04,774.774 INFO    ] Checking for system updates...
[2026-08-25 05:24:04,816.816 INFO    ] 200
[2026-08-25 05:24:04,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:04,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:24:04,877.877 INFO    ] No update needed
[2026-08-25 05:24:04,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 05:24:04,913.913 INFO    ] 200
[2026-08-25 05:24:04,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:04,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:24:05,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:24:05,005.005 INFO    ] No camera update needed
[2026-08-25 05:24:05,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:24:05,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:24:05,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:24:05,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:24:07,058.058 INFO    ] ================================================
[2026-08-25 05:24:07,073.073 INFO    ] Launching Daemon at Tue Aug 25 05:24:07 IST 2026
[2026-08-25 05:24:07,084.084 INFO    ] ================================================
[2026-08-25 05:24:07,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:24:07
[2026-08-25 05:24:08,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:24:08,542.542 INFO    ] Initializing speech engine...
[2026-08-25 05:24:08,549.549 INFO    ] 2026-08-25 05:24:08
[2026-08-25 05:24:08,811.811 INFO    ] 2026-08-25 05:24:08
[2026-08-25 05:24:08,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:24:09,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:24:09,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:24:09,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:24:09,279.279 INFO    ] time= 25/08/2026 05:24:09
[2026-08-25 05:24:09,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:24:09,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:24:09,489.489 INFO    ] No existing commands found in stream
[2026-08-25 05:24:14,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:24:14,519.519 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 05:24:17,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:24:17,881.881 INFO    ] Checking for system updates...
[2026-08-25 05:24:17,920.920 INFO    ] 200
[2026-08-25 05:24:17,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:17,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:24:17,985.985 INFO    ] No update needed
[2026-08-25 05:24:17,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 05:24:18,026.026 INFO    ] 200
[2026-08-25 05:24:18,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:18,069.069 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:24:18,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:24:18,125.125 INFO    ] No camera update needed
[2026-08-25 05:24:18,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:24:18,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:24:18,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:24:18,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:24:20,183.183 INFO    ] ================================================
[2026-08-25 05:24:20,204.204 INFO    ] Launching Daemon at Tue Aug 25 05:24:20 IST 2026
[2026-08-25 05:24:20,215.215 INFO    ] ================================================
[2026-08-25 05:24:20,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:24:20
[2026-08-25 05:24:21,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:24:21,700.700 INFO    ] Initializing speech engine...
[2026-08-25 05:24:21,709.709 INFO    ] 2026-08-25 05:24:21
[2026-08-25 05:24:22,025.025 INFO    ] 2026-08-25 05:24:21
[2026-08-25 05:24:22,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:24:22,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:24:22,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:24:22,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:24:22,531.531 INFO    ] time= 25/08/2026 05:24:22
[2026-08-25 05:24:22,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:24:22,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:24:22,684.684 INFO    ] No existing commands found in stream
[2026-08-25 05:24:27,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:24:27,708.708 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 05:24:30,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:24:30,644.644 INFO    ] Checking for system updates...
[2026-08-25 05:24:30,686.686 INFO    ] 200
[2026-08-25 05:24:30,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:30,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:24:30,745.745 INFO    ] No update needed
[2026-08-25 05:24:30,748.748 INFO    ] Checking for camera pi updates...
[2026-08-25 05:24:30,787.787 INFO    ] 200
[2026-08-25 05:24:30,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:30,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:24:30,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:24:30,896.896 INFO    ] No camera update needed
[2026-08-25 05:24:30,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:24:30,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:24:30,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:24:30,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:24:32,953.953 INFO    ] ================================================
[2026-08-25 05:24:32,969.969 INFO    ] Launching Daemon at Tue Aug 25 05:24:32 IST 2026
[2026-08-25 05:24:32,980.980 INFO    ] ================================================
[2026-08-25 05:24:33,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:24:33
[2026-08-25 05:24:34,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:24:34,423.423 INFO    ] Initializing speech engine...
[2026-08-25 05:24:34,432.432 INFO    ] 2026-08-25 05:24:34
[2026-08-25 05:24:34,726.726 INFO    ] 2026-08-25 05:24:34
[2026-08-25 05:24:34,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:24:34,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:24:34,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:24:35,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:24:35,149.149 INFO    ] time= 25/08/2026 05:24:35
[2026-08-25 05:24:35,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:24:35,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:24:35,310.310 INFO    ] No existing commands found in stream
[2026-08-25 05:24:40,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:24:40,338.338 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 05:24:43,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:24:43,540.540 INFO    ] Checking for system updates...
[2026-08-25 05:24:43,579.579 INFO    ] 200
[2026-08-25 05:24:43,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:43,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:24:43,635.635 INFO    ] No update needed
[2026-08-25 05:24:43,638.638 INFO    ] Checking for camera pi updates...
[2026-08-25 05:24:43,673.673 INFO    ] 200
[2026-08-25 05:24:43,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:43,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:24:43,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:24:43,781.781 INFO    ] No camera update needed
[2026-08-25 05:24:43,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:24:43,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:24:43,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:24:43,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:24:45,835.835 INFO    ] ================================================
[2026-08-25 05:24:45,849.849 INFO    ] Launching Daemon at Tue Aug 25 05:24:45 IST 2026
[2026-08-25 05:24:45,860.860 INFO    ] ================================================
[2026-08-25 05:24:46,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:24:46
[2026-08-25 05:24:47,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:24:47,351.351 INFO    ] Initializing speech engine...
[2026-08-25 05:24:47,358.358 INFO    ] 2026-08-25 05:24:47
[2026-08-25 05:24:47,676.676 INFO    ] 2026-08-25 05:24:47
[2026-08-25 05:24:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:24:47,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:24:47,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:24:48,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:24:48,182.182 INFO    ] time= 25/08/2026 05:24:48
[2026-08-25 05:24:48,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:24:48,229.229 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:24:48,335.335 INFO    ] No existing commands found in stream
[2026-08-25 05:24:53,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:24:53,364.364 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 05:24:54,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:24:54,651.651 INFO    ] Checking for system updates...
[2026-08-25 05:24:54,690.690 INFO    ] 200
[2026-08-25 05:24:54,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:54,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:24:54,753.753 INFO    ] No update needed
[2026-08-25 05:24:54,756.756 INFO    ] Checking for camera pi updates...
[2026-08-25 05:24:54,793.793 INFO    ] 200
[2026-08-25 05:24:54,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:24:54,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:24:54,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:24:54,894.894 INFO    ] No camera update needed
[2026-08-25 05:24:54,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:24:54,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:24:54,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:24:54,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:24:56,949.949 INFO    ] ================================================
[2026-08-25 05:24:56,964.964 INFO    ] Launching Daemon at Tue Aug 25 05:24:56 IST 2026
[2026-08-25 05:24:56,975.975 INFO    ] ================================================
[2026-08-25 05:24:57,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:24:57
[2026-08-25 05:24:58,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:24:58,416.416 INFO    ] Initializing speech engine...
[2026-08-25 05:24:58,425.425 INFO    ] 2026-08-25 05:24:58
[2026-08-25 05:24:58,671.671 INFO    ] 2026-08-25 05:24:58
[2026-08-25 05:24:58,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:24:58,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:24:58,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:24:59,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:24:59,144.144 INFO    ] time= 25/08/2026 05:24:59
[2026-08-25 05:24:59,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:24:59,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:24:59,305.305 INFO    ] No existing commands found in stream
[2026-08-25 05:25:04,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:25:04,345.345 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 05:25:06,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:25:06,538.538 INFO    ] Checking for system updates...
[2026-08-25 05:25:06,573.573 INFO    ] 200
[2026-08-25 05:25:06,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:06,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:25:06,636.636 INFO    ] No update needed
[2026-08-25 05:25:06,639.639 INFO    ] Checking for camera pi updates...
[2026-08-25 05:25:06,675.675 INFO    ] 200
[2026-08-25 05:25:06,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:06,717.717 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:25:06,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:25:06,769.769 INFO    ] No camera update needed
[2026-08-25 05:25:06,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:25:06,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:25:06,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:25:06,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:25:08,828.828 INFO    ] ================================================
[2026-08-25 05:25:08,843.843 INFO    ] Launching Daemon at Tue Aug 25 05:25:08 IST 2026
[2026-08-25 05:25:08,854.854 INFO    ] ================================================
[2026-08-25 05:25:09,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:25:09
[2026-08-25 05:25:10,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:25:10,367.367 INFO    ] Initializing speech engine...
[2026-08-25 05:25:10,375.375 INFO    ] 2026-08-25 05:25:10
[2026-08-25 05:25:10,655.655 INFO    ] 2026-08-25 05:25:10
[2026-08-25 05:25:10,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:25:10,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:25:10,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:25:11,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:25:11,024.024 INFO    ] time= 25/08/2026 05:25:11
[2026-08-25 05:25:11,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:25:11,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:25:11,184.184 INFO    ] No existing commands found in stream
[2026-08-25 05:25:16,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:25:16,217.217 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 05:25:18,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:25:18,860.860 INFO    ] Checking for system updates...
[2026-08-25 05:25:18,899.899 INFO    ] 200
[2026-08-25 05:25:18,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:18,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:25:18,955.955 INFO    ] No update needed
[2026-08-25 05:25:18,957.957 INFO    ] Checking for camera pi updates...
[2026-08-25 05:25:18,994.994 INFO    ] 200
[2026-08-25 05:25:18,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:19,041.041 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:25:19,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:25:19,095.095 INFO    ] No camera update needed
[2026-08-25 05:25:19,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:25:19,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:25:19,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:25:19,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:25:21,148.148 INFO    ] ================================================
[2026-08-25 05:25:21,164.164 INFO    ] Launching Daemon at Tue Aug 25 05:25:21 IST 2026
[2026-08-25 05:25:21,175.175 INFO    ] ================================================
[2026-08-25 05:25:21,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:25:21
[2026-08-25 05:25:22,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:25:22,790.790 INFO    ] Initializing speech engine...
[2026-08-25 05:25:22,803.803 INFO    ] 2026-08-25 05:25:22
[2026-08-25 05:25:23,115.115 INFO    ] 2026-08-25 05:25:23
[2026-08-25 05:25:23,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:25:23,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:25:23,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:25:23,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:25:23,616.616 INFO    ] time= 25/08/2026 05:25:23
[2026-08-25 05:25:23,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:25:23,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:25:23,770.770 INFO    ] No existing commands found in stream
[2026-08-25 05:25:28,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:25:28,789.789 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 05:25:32,370.370 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:25:32,372.372 INFO    ] Checking for system updates...
[2026-08-25 05:25:32,414.414 INFO    ] 200
[2026-08-25 05:25:32,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:32,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:25:32,482.482 INFO    ] No update needed
[2026-08-25 05:25:32,485.485 INFO    ] Checking for camera pi updates...
[2026-08-25 05:25:32,528.528 INFO    ] 200
[2026-08-25 05:25:32,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:32,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:25:32,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:25:32,643.643 INFO    ] No camera update needed
[2026-08-25 05:25:32,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:25:32,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:25:32,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:25:32,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:25:34,701.701 INFO    ] ================================================
[2026-08-25 05:25:34,717.717 INFO    ] Launching Daemon at Tue Aug 25 05:25:34 IST 2026
[2026-08-25 05:25:34,728.728 INFO    ] ================================================
[2026-08-25 05:25:35,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:25:35
[2026-08-25 05:25:35,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:25:36,236.236 INFO    ] Initializing speech engine...
[2026-08-25 05:25:36,242.242 INFO    ] 2026-08-25 05:25:36
[2026-08-25 05:25:36,503.503 INFO    ] 2026-08-25 05:25:36
[2026-08-25 05:25:36,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:25:36,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:25:36,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:25:36,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:25:36,939.939 INFO    ] time= 25/08/2026 05:25:36
[2026-08-25 05:25:36,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:25:37,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:25:37,166.166 INFO    ] No existing commands found in stream
[2026-08-25 05:25:42,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:25:42,196.196 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 05:25:44,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:25:44,575.575 INFO    ] Checking for system updates...
[2026-08-25 05:25:44,615.615 INFO    ] 200
[2026-08-25 05:25:44,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:44,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:25:44,679.679 INFO    ] No update needed
[2026-08-25 05:25:44,682.682 INFO    ] Checking for camera pi updates...
[2026-08-25 05:25:44,719.719 INFO    ] 200
[2026-08-25 05:25:44,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:44,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:25:44,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:25:44,816.816 INFO    ] No camera update needed
[2026-08-25 05:25:44,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:25:44,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:25:44,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:25:44,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:25:46,870.870 INFO    ] ================================================
[2026-08-25 05:25:46,885.885 INFO    ] Launching Daemon at Tue Aug 25 05:25:46 IST 2026
[2026-08-25 05:25:46,896.896 INFO    ] ================================================
[2026-08-25 05:25:47,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:25:47
[2026-08-25 05:25:48,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:25:48,330.330 INFO    ] Initializing speech engine...
[2026-08-25 05:25:48,344.344 INFO    ] 2026-08-25 05:25:48
[2026-08-25 05:25:48,597.597 INFO    ] 2026-08-25 05:25:48
[2026-08-25 05:25:48,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:25:48,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:25:48,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:25:48,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:25:48,967.967 INFO    ] time= 25/08/2026 05:25:48
[2026-08-25 05:25:48,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:25:49,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:25:49,146.146 INFO    ] No existing commands found in stream
[2026-08-25 05:25:54,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:25:54,175.175 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 05:25:57,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:25:57,632.632 INFO    ] Checking for system updates...
[2026-08-25 05:25:57,668.668 INFO    ] 200
[2026-08-25 05:25:57,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:57,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:25:57,735.735 INFO    ] No update needed
[2026-08-25 05:25:57,738.738 INFO    ] Checking for camera pi updates...
[2026-08-25 05:25:57,771.771 INFO    ] 200
[2026-08-25 05:25:57,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:25:57,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:25:57,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:25:57,878.878 INFO    ] No camera update needed
[2026-08-25 05:25:57,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:25:57,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:25:57,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:25:57,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:25:59,935.935 INFO    ] ================================================
[2026-08-25 05:25:59,950.950 INFO    ] Launching Daemon at Tue Aug 25 05:25:59 IST 2026
[2026-08-25 05:25:59,960.960 INFO    ] ================================================
[2026-08-25 05:26:00,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:26:00
[2026-08-25 05:26:01,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:26:01,380.380 INFO    ] Initializing speech engine...
[2026-08-25 05:26:01,390.390 INFO    ] 2026-08-25 05:26:01
[2026-08-25 05:26:01,636.636 INFO    ] 2026-08-25 05:26:01
[2026-08-25 05:26:01,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:26:01,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:26:01,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:26:02,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:26:02,119.119 INFO    ] time= 25/08/2026 05:26:02
[2026-08-25 05:26:02,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:26:02,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:26:02,212.212 INFO    ] No existing commands found in stream
[2026-08-25 05:26:07,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:26:07,225.225 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 05:26:11,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:26:11,132.132 INFO    ] Checking for system updates...
[2026-08-25 05:26:11,171.171 INFO    ] 200
[2026-08-25 05:26:11,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:11,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:26:11,234.234 INFO    ] No update needed
[2026-08-25 05:26:11,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 05:26:11,271.271 INFO    ] 200
[2026-08-25 05:26:11,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:11,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:26:11,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:26:11,370.370 INFO    ] No camera update needed
[2026-08-25 05:26:11,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:26:11,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:26:11,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:26:11,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:26:13,427.427 INFO    ] ================================================
[2026-08-25 05:26:13,441.441 INFO    ] Launching Daemon at Tue Aug 25 05:26:13 IST 2026
[2026-08-25 05:26:13,452.452 INFO    ] ================================================
[2026-08-25 05:26:14,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:26:14
[2026-08-25 05:26:14,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:26:14,870.870 INFO    ] Initializing speech engine...
[2026-08-25 05:26:14,879.879 INFO    ] 2026-08-25 05:26:14
[2026-08-25 05:26:15,138.138 INFO    ] 2026-08-25 05:26:15
[2026-08-25 05:26:15,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:26:15,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:26:15,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:26:15,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:26:15,595.595 INFO    ] time= 25/08/2026 05:26:15
[2026-08-25 05:26:15,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:26:15,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:26:15,792.792 INFO    ] No existing commands found in stream
[2026-08-25 05:26:20,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:26:20,819.819 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 05:26:23,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:26:23,242.242 INFO    ] Checking for system updates...
[2026-08-25 05:26:23,277.277 INFO    ] 200
[2026-08-25 05:26:23,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:23,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:26:23,335.335 INFO    ] No update needed
[2026-08-25 05:26:23,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 05:26:23,375.375 INFO    ] 200
[2026-08-25 05:26:23,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:23,417.417 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:26:23,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:26:23,469.469 INFO    ] No camera update needed
[2026-08-25 05:26:23,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:26:23,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:26:23,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:26:23,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:26:25,526.526 INFO    ] ================================================
[2026-08-25 05:26:25,541.541 INFO    ] Launching Daemon at Tue Aug 25 05:26:25 IST 2026
[2026-08-25 05:26:25,552.552 INFO    ] ================================================
[2026-08-25 05:26:26,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:26:26
[2026-08-25 05:26:26,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:26:26,967.967 INFO    ] Initializing speech engine...
[2026-08-25 05:26:26,976.976 INFO    ] 2026-08-25 05:26:26
[2026-08-25 05:26:27,222.222 INFO    ] 2026-08-25 05:26:27
[2026-08-25 05:26:27,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:26:27,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:26:27,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:26:27,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:26:27,689.689 INFO    ] time= 25/08/2026 05:26:27
[2026-08-25 05:26:27,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:26:27,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:26:27,908.908 INFO    ] No existing commands found in stream
[2026-08-25 05:26:32,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:26:32,938.938 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 05:26:36,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:26:36,804.804 INFO    ] Checking for system updates...
[2026-08-25 05:26:36,843.843 INFO    ] 200
[2026-08-25 05:26:36,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:36,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:26:36,900.900 INFO    ] No update needed
[2026-08-25 05:26:36,903.903 INFO    ] Checking for camera pi updates...
[2026-08-25 05:26:36,936.936 INFO    ] 200
[2026-08-25 05:26:36,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:36,984.984 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:26:37,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:26:37,036.036 INFO    ] No camera update needed
[2026-08-25 05:26:37,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:26:37,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:26:37,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:26:37,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:26:39,094.094 INFO    ] ================================================
[2026-08-25 05:26:39,109.109 INFO    ] Launching Daemon at Tue Aug 25 05:26:39 IST 2026
[2026-08-25 05:26:39,120.120 INFO    ] ================================================
[2026-08-25 05:26:39,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:26:39
[2026-08-25 05:26:40,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:26:40,538.538 INFO    ] Initializing speech engine...
[2026-08-25 05:26:40,548.548 INFO    ] 2026-08-25 05:26:40
[2026-08-25 05:26:40,796.796 INFO    ] 2026-08-25 05:26:40
[2026-08-25 05:26:40,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:26:41,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:26:41,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:26:41,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:26:41,172.172 INFO    ] time= 25/08/2026 05:26:41
[2026-08-25 05:26:41,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:26:41,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:26:41,345.345 INFO    ] No existing commands found in stream
[2026-08-25 05:26:46,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:26:46,379.379 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 05:26:48,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:26:48,225.225 INFO    ] Checking for system updates...
[2026-08-25 05:26:48,265.265 INFO    ] 200
[2026-08-25 05:26:48,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:48,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:26:48,323.323 INFO    ] No update needed
[2026-08-25 05:26:48,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 05:26:48,358.358 INFO    ] 200
[2026-08-25 05:26:48,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:48,410.410 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:26:48,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:26:48,471.471 INFO    ] No camera update needed
[2026-08-25 05:26:48,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:26:48,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:26:48,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:26:48,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:26:50,526.526 INFO    ] ================================================
[2026-08-25 05:26:50,541.541 INFO    ] Launching Daemon at Tue Aug 25 05:26:50 IST 2026
[2026-08-25 05:26:50,551.551 INFO    ] ================================================
[2026-08-25 05:26:51,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:26:51
[2026-08-25 05:26:51,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:26:51,967.967 INFO    ] Initializing speech engine...
[2026-08-25 05:26:51,979.979 INFO    ] 2026-08-25 05:26:51
[2026-08-25 05:26:52,222.222 INFO    ] 2026-08-25 05:26:52
[2026-08-25 05:26:52,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:26:52,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:26:52,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:26:52,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:26:52,704.704 INFO    ] time= 25/08/2026 05:26:52
[2026-08-25 05:26:52,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:26:52,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:26:52,914.914 INFO    ] No existing commands found in stream
[2026-08-25 05:26:57,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:26:57,942.942 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 05:26:58,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:26:58,653.653 INFO    ] Checking for system updates...
[2026-08-25 05:26:58,689.689 INFO    ] 200
[2026-08-25 05:26:58,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:58,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:26:58,752.752 INFO    ] No update needed
[2026-08-25 05:26:58,754.754 INFO    ] Checking for camera pi updates...
[2026-08-25 05:26:58,791.791 INFO    ] 200
[2026-08-25 05:26:58,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:26:58,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:26:58,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:26:58,888.888 INFO    ] No camera update needed
[2026-08-25 05:26:58,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:26:58,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:26:58,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:26:58,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:27:00,941.941 INFO    ] ================================================
[2026-08-25 05:27:00,956.956 INFO    ] Launching Daemon at Tue Aug 25 05:27:00 IST 2026
[2026-08-25 05:27:00,972.972 INFO    ] ================================================
[2026-08-25 05:27:01,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:27:01
[2026-08-25 05:27:02,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:27:02,613.613 INFO    ] Initializing speech engine...
[2026-08-25 05:27:02,629.629 INFO    ] 2026-08-25 05:27:02
[2026-08-25 05:27:02,958.958 INFO    ] 2026-08-25 05:27:02
[2026-08-25 05:27:03,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:27:03,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:27:03,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:27:03,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:27:03,436.436 INFO    ] time= 25/08/2026 05:27:03
[2026-08-25 05:27:03,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:27:03,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:27:03,599.599 INFO    ] No existing commands found in stream
[2026-08-25 05:27:08,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:27:08,614.614 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 05:27:09,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:27:09,322.322 INFO    ] Checking for system updates...
[2026-08-25 05:27:09,360.360 INFO    ] 200
[2026-08-25 05:27:09,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:09,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:27:09,422.422 INFO    ] No update needed
[2026-08-25 05:27:09,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 05:27:09,458.458 INFO    ] 200
[2026-08-25 05:27:09,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:09,505.505 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:27:09,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:27:09,552.552 INFO    ] No camera update needed
[2026-08-25 05:27:09,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:27:09,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:27:09,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:27:09,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:27:11,607.607 INFO    ] ================================================
[2026-08-25 05:27:11,621.621 INFO    ] Launching Daemon at Tue Aug 25 05:27:11 IST 2026
[2026-08-25 05:27:11,633.633 INFO    ] ================================================
[2026-08-25 05:27:12,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:27:12
[2026-08-25 05:27:12,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:27:13,077.077 INFO    ] Initializing speech engine...
[2026-08-25 05:27:13,090.090 INFO    ] 2026-08-25 05:27:13
[2026-08-25 05:27:13,343.343 INFO    ] 2026-08-25 05:27:13
[2026-08-25 05:27:13,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:27:13,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:27:13,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:27:13,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:27:13,825.825 INFO    ] time= 25/08/2026 05:27:13
[2026-08-25 05:27:13,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:27:13,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:27:14,053.053 INFO    ] No existing commands found in stream
[2026-08-25 05:27:19,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:27:19,071.071 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 05:27:19,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:27:19,591.591 INFO    ] Checking for system updates...
[2026-08-25 05:27:19,627.627 INFO    ] 200
[2026-08-25 05:27:19,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:19,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:27:19,690.690 INFO    ] No update needed
[2026-08-25 05:27:19,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 05:27:19,729.729 INFO    ] 200
[2026-08-25 05:27:19,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:19,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:27:19,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:27:19,824.824 INFO    ] No camera update needed
[2026-08-25 05:27:19,826.826 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:27:19,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:27:19,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:27:19,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:27:21,882.882 INFO    ] ================================================
[2026-08-25 05:27:21,897.897 INFO    ] Launching Daemon at Tue Aug 25 05:27:21 IST 2026
[2026-08-25 05:27:21,908.908 INFO    ] ================================================
[2026-08-25 05:27:22,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:27:22
[2026-08-25 05:27:23,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:27:23,333.333 INFO    ] Initializing speech engine...
[2026-08-25 05:27:23,343.343 INFO    ] 2026-08-25 05:27:23
[2026-08-25 05:27:23,600.600 INFO    ] 2026-08-25 05:27:23
[2026-08-25 05:27:23,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:27:23,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:27:23,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:27:24,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:27:24,069.069 INFO    ] time= 25/08/2026 05:27:24
[2026-08-25 05:27:24,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:27:24,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:27:24,278.278 INFO    ] No existing commands found in stream
[2026-08-25 05:27:29,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:27:29,303.303 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 05:27:30,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:27:30,193.193 INFO    ] Checking for system updates...
[2026-08-25 05:27:30,232.232 INFO    ] 200
[2026-08-25 05:27:30,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:30,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:27:30,295.295 INFO    ] No update needed
[2026-08-25 05:27:30,297.297 INFO    ] Checking for camera pi updates...
[2026-08-25 05:27:30,334.334 INFO    ] 200
[2026-08-25 05:27:30,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:30,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:27:30,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:27:30,438.438 INFO    ] No camera update needed
[2026-08-25 05:27:30,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:27:30,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:27:30,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:27:30,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:27:32,493.493 INFO    ] ================================================
[2026-08-25 05:27:32,509.509 INFO    ] Launching Daemon at Tue Aug 25 05:27:32 IST 2026
[2026-08-25 05:27:32,520.520 INFO    ] ================================================
[2026-08-25 05:27:33,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:27:33
[2026-08-25 05:27:33,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:27:34,212.212 INFO    ] Initializing speech engine...
[2026-08-25 05:27:34,223.223 INFO    ] 2026-08-25 05:27:34
[2026-08-25 05:27:34,530.530 INFO    ] 2026-08-25 05:27:34
[2026-08-25 05:27:34,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:27:34,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:27:34,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:27:34,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:27:34,980.980 INFO    ] time= 25/08/2026 05:27:34
[2026-08-25 05:27:35,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:27:35,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:27:35,164.164 INFO    ] No existing commands found in stream
[2026-08-25 05:27:40,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:27:40,199.199 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 05:27:41,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:27:41,596.596 INFO    ] Checking for system updates...
[2026-08-25 05:27:41,635.635 INFO    ] 200
[2026-08-25 05:27:41,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:41,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:27:41,697.697 INFO    ] No update needed
[2026-08-25 05:27:41,700.700 INFO    ] Checking for camera pi updates...
[2026-08-25 05:27:41,738.738 INFO    ] 200
[2026-08-25 05:27:41,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:41,779.779 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:27:41,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:27:41,830.830 INFO    ] No camera update needed
[2026-08-25 05:27:41,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:27:41,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:27:41,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:27:41,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:27:43,887.887 INFO    ] ================================================
[2026-08-25 05:27:43,904.904 INFO    ] Launching Daemon at Tue Aug 25 05:27:43 IST 2026
[2026-08-25 05:27:43,914.914 INFO    ] ================================================
[2026-08-25 05:27:44,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:27:44
[2026-08-25 05:27:45,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:27:45,325.325 INFO    ] Initializing speech engine...
[2026-08-25 05:27:45,338.338 INFO    ] 2026-08-25 05:27:45
[2026-08-25 05:27:45,622.622 INFO    ] 2026-08-25 05:27:45
[2026-08-25 05:27:45,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:27:45,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:27:45,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:27:45,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:27:45,974.974 INFO    ] time= 25/08/2026 05:27:45
[2026-08-25 05:27:45,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:27:46,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:27:46,126.126 INFO    ] No existing commands found in stream
[2026-08-25 05:27:51,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:27:51,139.139 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 05:27:55,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:27:55,085.085 INFO    ] Checking for system updates...
[2026-08-25 05:27:55,124.124 INFO    ] 200
[2026-08-25 05:27:55,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:55,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:27:55,182.182 INFO    ] No update needed
[2026-08-25 05:27:55,185.185 INFO    ] Checking for camera pi updates...
[2026-08-25 05:27:55,218.218 INFO    ] 200
[2026-08-25 05:27:55,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:27:55,265.265 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:27:55,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:27:55,317.317 INFO    ] No camera update needed
[2026-08-25 05:27:55,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:27:55,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:27:55,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:27:55,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:27:57,372.372 INFO    ] ================================================
[2026-08-25 05:27:57,388.388 INFO    ] Launching Daemon at Tue Aug 25 05:27:57 IST 2026
[2026-08-25 05:27:57,399.399 INFO    ] ================================================
[2026-08-25 05:27:57,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:27:57
[2026-08-25 05:27:58,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:27:58,817.817 INFO    ] Initializing speech engine...
[2026-08-25 05:27:58,833.833 INFO    ] 2026-08-25 05:27:58
[2026-08-25 05:27:59,105.105 INFO    ] 2026-08-25 05:27:59
[2026-08-25 05:27:59,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:27:59,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:27:59,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:27:59,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:27:59,518.518 INFO    ] time= 25/08/2026 05:27:59
[2026-08-25 05:27:59,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:27:59,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:27:59,606.606 INFO    ] No existing commands found in stream
[2026-08-25 05:28:04,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:28:04,622.622 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 05:28:05,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:28:05,722.722 INFO    ] Checking for system updates...
[2026-08-25 05:28:05,758.758 INFO    ] 200
[2026-08-25 05:28:05,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:05,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:28:05,823.823 INFO    ] No update needed
[2026-08-25 05:28:05,826.826 INFO    ] Checking for camera pi updates...
[2026-08-25 05:28:05,864.864 INFO    ] 200
[2026-08-25 05:28:05,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:05,907.907 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:28:05,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:28:05,958.958 INFO    ] No camera update needed
[2026-08-25 05:28:05,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:28:05,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:28:05,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:28:05,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:28:08,015.015 INFO    ] ================================================
[2026-08-25 05:28:08,030.030 INFO    ] Launching Daemon at Tue Aug 25 05:28:08 IST 2026
[2026-08-25 05:28:08,041.041 INFO    ] ================================================
[2026-08-25 05:28:08,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:28:08
[2026-08-25 05:28:09,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:28:09,472.472 INFO    ] Initializing speech engine...
[2026-08-25 05:28:09,478.478 INFO    ] 2026-08-25 05:28:09
[2026-08-25 05:28:09,721.721 INFO    ] 2026-08-25 05:28:09
[2026-08-25 05:28:09,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:28:10,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:28:10,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:28:10,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:28:10,189.189 INFO    ] time= 25/08/2026 05:28:10
[2026-08-25 05:28:10,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:28:10,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:28:10,422.422 INFO    ] No existing commands found in stream
[2026-08-25 05:28:15,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:28:15,440.440 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 05:28:17,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:28:17,066.066 INFO    ] Checking for system updates...
[2026-08-25 05:28:17,105.105 INFO    ] 200
[2026-08-25 05:28:17,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:17,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:17,167.167 INFO    ] No update needed
[2026-08-25 05:28:17,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 05:28:17,202.202 INFO    ] 200
[2026-08-25 05:28:17,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:17,248.248 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:28:17,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:17,393.393 INFO    ] No camera update needed
[2026-08-25 05:28:17,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:28:17,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:28:17,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:28:17,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:28:19,449.449 INFO    ] ================================================
[2026-08-25 05:28:19,464.464 INFO    ] Launching Daemon at Tue Aug 25 05:28:19 IST 2026
[2026-08-25 05:28:19,475.475 INFO    ] ================================================
[2026-08-25 05:28:20,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:28:20
[2026-08-25 05:28:20,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:28:20,950.950 INFO    ] Initializing speech engine...
[2026-08-25 05:28:20,957.957 INFO    ] 2026-08-25 05:28:20
[2026-08-25 05:28:21,229.229 INFO    ] 2026-08-25 05:28:21
[2026-08-25 05:28:21,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:28:21,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:28:21,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:28:21,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:28:21,677.677 INFO    ] time= 25/08/2026 05:28:21
[2026-08-25 05:28:21,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:28:21,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:28:21,843.843 INFO    ] No existing commands found in stream
[2026-08-25 05:28:26,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:28:26,861.861 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 05:28:29,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:28:29,859.859 INFO    ] Checking for system updates...
[2026-08-25 05:28:29,895.895 INFO    ] 200
[2026-08-25 05:28:29,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:29,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:29,956.956 INFO    ] No update needed
[2026-08-25 05:28:29,958.958 INFO    ] Checking for camera pi updates...
[2026-08-25 05:28:29,994.994 INFO    ] 200
[2026-08-25 05:28:29,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:30,037.037 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:28:30,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:30,087.087 INFO    ] No camera update needed
[2026-08-25 05:28:30,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:28:30,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:28:30,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:28:30,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:28:32,145.145 INFO    ] ================================================
[2026-08-25 05:28:32,161.161 INFO    ] Launching Daemon at Tue Aug 25 05:28:32 IST 2026
[2026-08-25 05:28:32,175.175 INFO    ] ================================================
[2026-08-25 05:28:32,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:28:32
[2026-08-25 05:28:33,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:28:33,642.642 INFO    ] Initializing speech engine...
[2026-08-25 05:28:33,648.648 INFO    ] 2026-08-25 05:28:33
[2026-08-25 05:28:33,924.924 INFO    ] 2026-08-25 05:28:33
[2026-08-25 05:28:33,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:28:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:28:34,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:28:34,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:28:34,400.400 INFO    ] time= 25/08/2026 05:28:34
[2026-08-25 05:28:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:28:34,491.491 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:28:34,613.613 INFO    ] No existing commands found in stream
[2026-08-25 05:28:39,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:28:39,641.641 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 05:28:41,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:28:41,314.314 INFO    ] Checking for system updates...
[2026-08-25 05:28:41,353.353 INFO    ] 200
[2026-08-25 05:28:41,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:41,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:41,409.409 INFO    ] No update needed
[2026-08-25 05:28:41,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 05:28:41,469.469 INFO    ] 200
[2026-08-25 05:28:41,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:41,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:28:41,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:41,571.571 INFO    ] No camera update needed
[2026-08-25 05:28:41,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:28:41,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:28:41,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:28:41,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:28:43,632.632 INFO    ] ================================================
[2026-08-25 05:28:43,647.647 INFO    ] Launching Daemon at Tue Aug 25 05:28:43 IST 2026
[2026-08-25 05:28:43,659.659 INFO    ] ================================================
[2026-08-25 05:28:44,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:28:44
[2026-08-25 05:28:44,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:28:45,066.066 INFO    ] Initializing speech engine...
[2026-08-25 05:28:45,091.091 INFO    ] 2026-08-25 05:28:45
[2026-08-25 05:28:45,359.359 INFO    ] 2026-08-25 05:28:45
[2026-08-25 05:28:45,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:28:45,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:28:45,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:28:45,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:28:45,773.773 INFO    ] time= 25/08/2026 05:28:45
[2026-08-25 05:28:45,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:28:45,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:28:45,855.855 INFO    ] No existing commands found in stream
[2026-08-25 05:28:50,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:28:50,870.870 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 05:28:55,113.113 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:28:55,115.115 INFO    ] Checking for system updates...
[2026-08-25 05:28:55,154.154 INFO    ] 200
[2026-08-25 05:28:55,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:55,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:55,218.218 INFO    ] No update needed
[2026-08-25 05:28:55,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 05:28:55,257.257 INFO    ] 200
[2026-08-25 05:28:55,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:28:55,300.300 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:28:55,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:28:55,360.360 INFO    ] No camera update needed
[2026-08-25 05:28:55,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:28:55,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:28:55,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:28:55,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:28:57,414.414 INFO    ] ================================================
[2026-08-25 05:28:57,429.429 INFO    ] Launching Daemon at Tue Aug 25 05:28:57 IST 2026
[2026-08-25 05:28:57,440.440 INFO    ] ================================================
[2026-08-25 05:28:58,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:28:58
[2026-08-25 05:28:58,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:28:59,036.036 INFO    ] Initializing speech engine...
[2026-08-25 05:28:59,046.046 INFO    ] 2026-08-25 05:28:59
[2026-08-25 05:28:59,299.299 INFO    ] 2026-08-25 05:28:59
[2026-08-25 05:28:59,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:28:59,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:28:59,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:28:59,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:28:59,767.767 INFO    ] time= 25/08/2026 05:28:59
[2026-08-25 05:28:59,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:28:59,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:28:59,964.964 INFO    ] No existing commands found in stream
[2026-08-25 05:29:04,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:29:04,999.999 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 05:29:07,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:29:07,407.407 INFO    ] Checking for system updates...
[2026-08-25 05:29:07,446.446 INFO    ] 200
[2026-08-25 05:29:07,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:07,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:29:07,512.512 INFO    ] No update needed
[2026-08-25 05:29:07,515.515 INFO    ] Checking for camera pi updates...
[2026-08-25 05:29:07,550.550 INFO    ] 200
[2026-08-25 05:29:07,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:07,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:29:07,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:29:07,656.656 INFO    ] No camera update needed
[2026-08-25 05:29:07,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:29:07,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:29:07,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:29:07,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:29:09,714.714 INFO    ] ================================================
[2026-08-25 05:29:09,730.730 INFO    ] Launching Daemon at Tue Aug 25 05:29:09 IST 2026
[2026-08-25 05:29:09,741.741 INFO    ] ================================================
[2026-08-25 05:29:10,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:29:10
[2026-08-25 05:29:10,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:29:11,160.160 INFO    ] Initializing speech engine...
[2026-08-25 05:29:11,166.166 INFO    ] 2026-08-25 05:29:11
[2026-08-25 05:29:11,415.415 INFO    ] 2026-08-25 05:29:11
[2026-08-25 05:29:11,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:29:11,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:29:11,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:29:11,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:29:11,791.791 INFO    ] time= 25/08/2026 05:29:11
[2026-08-25 05:29:11,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:29:11,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:29:11,874.874 INFO    ] No existing commands found in stream
[2026-08-25 05:29:16,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:29:16,912.912 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 05:29:17,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:29:17,464.464 INFO    ] Checking for system updates...
[2026-08-25 05:29:17,504.504 INFO    ] 200
[2026-08-25 05:29:17,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:17,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:29:17,561.561 INFO    ] No update needed
[2026-08-25 05:29:17,564.564 INFO    ] Checking for camera pi updates...
[2026-08-25 05:29:17,596.596 INFO    ] 200
[2026-08-25 05:29:17,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:17,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:29:17,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:29:17,688.688 INFO    ] No camera update needed
[2026-08-25 05:29:17,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:29:17,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:29:17,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:29:17,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:29:19,745.745 INFO    ] ================================================
[2026-08-25 05:29:19,761.761 INFO    ] Launching Daemon at Tue Aug 25 05:29:19 IST 2026
[2026-08-25 05:29:19,772.772 INFO    ] ================================================
[2026-08-25 05:29:20,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:29:20
[2026-08-25 05:29:21,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:29:21,320.320 INFO    ] Initializing speech engine...
[2026-08-25 05:29:21,332.332 INFO    ] 2026-08-25 05:29:21
[2026-08-25 05:29:21,614.614 INFO    ] 2026-08-25 05:29:21
[2026-08-25 05:29:21,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:29:21,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:29:21,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:29:22,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:29:22,118.118 INFO    ] time= 25/08/2026 05:29:22
[2026-08-25 05:29:22,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:29:22,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:29:22,327.327 INFO    ] No existing commands found in stream
[2026-08-25 05:29:27,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:29:27,362.362 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 05:29:30,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:29:30,088.088 INFO    ] Checking for system updates...
[2026-08-25 05:29:30,128.128 INFO    ] 200
[2026-08-25 05:29:30,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:30,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:29:30,194.194 INFO    ] No update needed
[2026-08-25 05:29:30,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 05:29:30,232.232 INFO    ] 200
[2026-08-25 05:29:30,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:30,281.281 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:29:30,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:29:30,329.329 INFO    ] No camera update needed
[2026-08-25 05:29:30,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:29:30,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:29:30,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:29:30,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:29:32,389.389 INFO    ] ================================================
[2026-08-25 05:29:32,407.407 INFO    ] Launching Daemon at Tue Aug 25 05:29:32 IST 2026
[2026-08-25 05:29:32,419.419 INFO    ] ================================================
[2026-08-25 05:29:33,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:29:33
[2026-08-25 05:29:33,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:29:33,928.928 INFO    ] Initializing speech engine...
[2026-08-25 05:29:33,939.939 INFO    ] 2026-08-25 05:29:33
[2026-08-25 05:29:34,198.198 INFO    ] 2026-08-25 05:29:34
[2026-08-25 05:29:34,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:29:34,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:29:34,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:29:34,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:29:34,681.681 INFO    ] time= 25/08/2026 05:29:34
[2026-08-25 05:29:34,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:29:34,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:29:34,874.874 INFO    ] No existing commands found in stream
[2026-08-25 05:29:39,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:29:39,902.902 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 05:29:41,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:29:41,648.648 INFO    ] Checking for system updates...
[2026-08-25 05:29:41,683.683 INFO    ] 200
[2026-08-25 05:29:41,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:41,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:29:41,740.740 INFO    ] No update needed
[2026-08-25 05:29:41,742.742 INFO    ] Checking for camera pi updates...
[2026-08-25 05:29:41,792.792 INFO    ] 200
[2026-08-25 05:29:41,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:41,834.834 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:29:41,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:29:41,885.885 INFO    ] No camera update needed
[2026-08-25 05:29:41,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:29:41,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:29:41,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:29:41,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:29:43,939.939 INFO    ] ================================================
[2026-08-25 05:29:43,955.955 INFO    ] Launching Daemon at Tue Aug 25 05:29:43 IST 2026
[2026-08-25 05:29:43,965.965 INFO    ] ================================================
[2026-08-25 05:29:44,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:29:44
[2026-08-25 05:29:45,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:29:45,595.595 INFO    ] Initializing speech engine...
[2026-08-25 05:29:45,603.603 INFO    ] 2026-08-25 05:29:45
[2026-08-25 05:29:45,887.887 INFO    ] 2026-08-25 05:29:45
[2026-08-25 05:29:45,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:29:46,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:29:46,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:29:46,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:29:46,423.423 INFO    ] time= 25/08/2026 05:29:46
[2026-08-25 05:29:46,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:29:46,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:29:46,578.578 INFO    ] No existing commands found in stream
[2026-08-25 05:29:51,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:29:51,601.601 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 05:29:54,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:29:54,951.951 INFO    ] Checking for system updates...
[2026-08-25 05:29:54,993.993 INFO    ] 200
[2026-08-25 05:29:54,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:55,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:29:55,060.060 INFO    ] No update needed
[2026-08-25 05:29:55,066.066 INFO    ] Checking for camera pi updates...
[2026-08-25 05:29:55,099.099 INFO    ] 200
[2026-08-25 05:29:55,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:29:55,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:29:55,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:29:55,204.204 INFO    ] No camera update needed
[2026-08-25 05:29:55,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:29:55,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:29:55,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:29:55,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:29:57,259.259 INFO    ] ================================================
[2026-08-25 05:29:57,275.275 INFO    ] Launching Daemon at Tue Aug 25 05:29:57 IST 2026
[2026-08-25 05:29:57,285.285 INFO    ] ================================================
[2026-08-25 05:29:57,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:29:57
[2026-08-25 05:29:58,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:29:58,765.765 INFO    ] Initializing speech engine...
[2026-08-25 05:29:58,774.774 INFO    ] 2026-08-25 05:29:58
[2026-08-25 05:29:59,020.020 INFO    ] 2026-08-25 05:29:59
[2026-08-25 05:29:59,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:29:59,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:29:59,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:29:59,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:29:59,497.497 INFO    ] time= 25/08/2026 05:29:59
[2026-08-25 05:29:59,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:29:59,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:29:59,725.725 INFO    ] No existing commands found in stream
[2026-08-25 05:30:04,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:30:04,740.740 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 05:30:08,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:30:08,988.988 INFO    ] Checking for system updates...
[2026-08-25 05:30:09,025.025 INFO    ] 200
[2026-08-25 05:30:09,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:09,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:30:09,083.083 INFO    ] No update needed
[2026-08-25 05:30:09,085.085 INFO    ] Checking for camera pi updates...
[2026-08-25 05:30:09,119.119 INFO    ] 200
[2026-08-25 05:30:09,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:09,161.161 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:30:09,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:30:09,218.218 INFO    ] No camera update needed
[2026-08-25 05:30:09,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:30:09,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:30:09,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:30:09,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:30:11,276.276 INFO    ] ================================================
[2026-08-25 05:30:11,291.291 INFO    ] Launching Daemon at Tue Aug 25 05:30:11 IST 2026
[2026-08-25 05:30:11,302.302 INFO    ] ================================================
[2026-08-25 05:30:11,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:30:11
[2026-08-25 05:30:12,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:30:12,724.724 INFO    ] Initializing speech engine...
[2026-08-25 05:30:12,733.733 INFO    ] 2026-08-25 05:30:12
[2026-08-25 05:30:12,979.979 INFO    ] 2026-08-25 05:30:12
[2026-08-25 05:30:13,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:30:13,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:30:13,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:30:13,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:30:13,453.453 INFO    ] time= 25/08/2026 05:30:13
[2026-08-25 05:30:13,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:30:13,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:30:13,650.650 INFO    ] No existing commands found in stream
[2026-08-25 05:30:18,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:30:18,674.674 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 05:30:20,958.958 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:30:20,960.960 INFO    ] Checking for system updates...
[2026-08-25 05:30:20,996.996 INFO    ] 200
[2026-08-25 05:30:20,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:21,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:30:21,053.053 INFO    ] No update needed
[2026-08-25 05:30:21,056.056 INFO    ] Checking for camera pi updates...
[2026-08-25 05:30:21,089.089 INFO    ] 200
[2026-08-25 05:30:21,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:21,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:30:21,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:30:21,284.284 INFO    ] No camera update needed
[2026-08-25 05:30:21,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:30:21,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:30:21,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:30:21,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:30:23,339.339 INFO    ] ================================================
[2026-08-25 05:30:23,354.354 INFO    ] Launching Daemon at Tue Aug 25 05:30:23 IST 2026
[2026-08-25 05:30:23,365.365 INFO    ] ================================================
[2026-08-25 05:30:24,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:30:24
[2026-08-25 05:30:24,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:30:24,906.906 INFO    ] Initializing speech engine...
[2026-08-25 05:30:24,922.922 INFO    ] 2026-08-25 05:30:24
[2026-08-25 05:30:25,208.208 INFO    ] 2026-08-25 05:30:25
[2026-08-25 05:30:25,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:30:25,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:30:25,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:30:25,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:30:25,609.609 INFO    ] time= 25/08/2026 05:30:25
[2026-08-25 05:30:25,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:30:25,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:30:25,717.717 INFO    ] No existing commands found in stream
[2026-08-25 05:30:30,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:30:30,732.732 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 05:30:31,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:30:31,997.997 INFO    ] Checking for system updates...
[2026-08-25 05:30:32,037.037 INFO    ] 200
[2026-08-25 05:30:32,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:32,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:30:32,094.094 INFO    ] No update needed
[2026-08-25 05:30:32,097.097 INFO    ] Checking for camera pi updates...
[2026-08-25 05:30:32,135.135 INFO    ] 200
[2026-08-25 05:30:32,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:32,179.179 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:30:32,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:30:32,238.238 INFO    ] No camera update needed
[2026-08-25 05:30:32,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:30:32,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:30:32,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:30:32,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:30:34,300.300 INFO    ] ================================================
[2026-08-25 05:30:34,316.316 INFO    ] Launching Daemon at Tue Aug 25 05:30:34 IST 2026
[2026-08-25 05:30:34,327.327 INFO    ] ================================================
[2026-08-25 05:30:34,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:30:34
[2026-08-25 05:30:35,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:30:35,965.965 INFO    ] Initializing speech engine...
[2026-08-25 05:30:35,977.977 INFO    ] 2026-08-25 05:30:35
[2026-08-25 05:30:36,232.232 INFO    ] 2026-08-25 05:30:36
[2026-08-25 05:30:36,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:30:36,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:30:36,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:30:36,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:30:36,649.649 INFO    ] time= 25/08/2026 05:30:36
[2026-08-25 05:30:36,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:30:36,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:30:36,802.802 INFO    ] No existing commands found in stream
[2026-08-25 05:30:41,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:30:41,830.830 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 05:30:45,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:30:45,303.303 INFO    ] Checking for system updates...
[2026-08-25 05:30:45,339.339 INFO    ] 200
[2026-08-25 05:30:45,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:45,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:30:45,401.401 INFO    ] No update needed
[2026-08-25 05:30:45,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 05:30:45,440.440 INFO    ] 200
[2026-08-25 05:30:45,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:45,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:30:45,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:30:45,535.535 INFO    ] No camera update needed
[2026-08-25 05:30:45,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:30:45,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:30:45,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:30:45,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:30:47,592.592 INFO    ] ================================================
[2026-08-25 05:30:47,608.608 INFO    ] Launching Daemon at Tue Aug 25 05:30:47 IST 2026
[2026-08-25 05:30:47,619.619 INFO    ] ================================================
[2026-08-25 05:30:48,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:30:48
[2026-08-25 05:30:48,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:30:49,226.226 INFO    ] Initializing speech engine...
[2026-08-25 05:30:49,238.238 INFO    ] 2026-08-25 05:30:49
[2026-08-25 05:30:49,520.520 INFO    ] 2026-08-25 05:30:49
[2026-08-25 05:30:49,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:30:49,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:30:49,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:30:50,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:30:50,059.059 INFO    ] time= 25/08/2026 05:30:50
[2026-08-25 05:30:50,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:30:50,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:30:50,227.227 INFO    ] No existing commands found in stream
[2026-08-25 05:30:55,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:30:55,262.262 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 05:30:59,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:30:59,481.481 INFO    ] Checking for system updates...
[2026-08-25 05:30:59,517.517 INFO    ] 200
[2026-08-25 05:30:59,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:59,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:30:59,574.574 INFO    ] No update needed
[2026-08-25 05:30:59,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 05:30:59,617.617 INFO    ] 200
[2026-08-25 05:30:59,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:30:59,670.670 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:30:59,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:30:59,725.725 INFO    ] No camera update needed
[2026-08-25 05:30:59,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:30:59,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:30:59,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:30:59,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:31:01,783.783 INFO    ] ================================================
[2026-08-25 05:31:01,805.805 INFO    ] Launching Daemon at Tue Aug 25 05:31:01 IST 2026
[2026-08-25 05:31:01,821.821 INFO    ] ================================================
[2026-08-25 05:31:02,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:31:02
[2026-08-25 05:31:03,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:31:03,374.374 INFO    ] Initializing speech engine...
[2026-08-25 05:31:03,380.380 INFO    ] 2026-08-25 05:31:03
[2026-08-25 05:31:03,676.676 INFO    ] 2026-08-25 05:31:03
[2026-08-25 05:31:03,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:31:03,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:31:03,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:31:04,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:31:04,035.035 INFO    ] time= 25/08/2026 05:31:04
[2026-08-25 05:31:04,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:31:04,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:31:04,183.183 INFO    ] No existing commands found in stream
[2026-08-25 05:31:09,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:31:09,199.199 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 05:31:11,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:31:11,359.359 INFO    ] Checking for system updates...
[2026-08-25 05:31:11,395.395 INFO    ] 200
[2026-08-25 05:31:11,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:11,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:31:11,452.452 INFO    ] No update needed
[2026-08-25 05:31:11,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 05:31:11,487.487 INFO    ] 200
[2026-08-25 05:31:11,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:11,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:31:11,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:31:11,595.595 INFO    ] No camera update needed
[2026-08-25 05:31:11,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:31:11,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:31:11,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:31:11,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:31:13,650.650 INFO    ] ================================================
[2026-08-25 05:31:13,666.666 INFO    ] Launching Daemon at Tue Aug 25 05:31:13 IST 2026
[2026-08-25 05:31:13,677.677 INFO    ] ================================================
[2026-08-25 05:31:14,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:31:14
[2026-08-25 05:31:14,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:31:15,137.137 INFO    ] Initializing speech engine...
[2026-08-25 05:31:15,144.144 INFO    ] 2026-08-25 05:31:15
[2026-08-25 05:31:15,405.405 INFO    ] 2026-08-25 05:31:15
[2026-08-25 05:31:15,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:31:15,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:31:15,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:31:15,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:31:15,899.899 INFO    ] time= 25/08/2026 05:31:15
[2026-08-25 05:31:15,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:31:15,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:31:16,102.102 INFO    ] No existing commands found in stream
[2026-08-25 05:31:21,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:31:21,119.119 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 05:31:24,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:31:24,875.875 INFO    ] Checking for system updates...
[2026-08-25 05:31:24,912.912 INFO    ] 200
[2026-08-25 05:31:24,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:24,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:31:24,978.978 INFO    ] No update needed
[2026-08-25 05:31:24,980.980 INFO    ] Checking for camera pi updates...
[2026-08-25 05:31:25,018.018 INFO    ] 200
[2026-08-25 05:31:25,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:25,070.070 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:31:25,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:31:25,129.129 INFO    ] No camera update needed
[2026-08-25 05:31:25,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:31:25,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:31:25,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:31:25,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:31:27,187.187 INFO    ] ================================================
[2026-08-25 05:31:27,203.203 INFO    ] Launching Daemon at Tue Aug 25 05:31:27 IST 2026
[2026-08-25 05:31:27,219.219 INFO    ] ================================================
[2026-08-25 05:31:27,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:31:27
[2026-08-25 05:31:28,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:31:28,641.641 INFO    ] Initializing speech engine...
[2026-08-25 05:31:28,650.650 INFO    ] 2026-08-25 05:31:28
[2026-08-25 05:31:28,902.902 INFO    ] 2026-08-25 05:31:28
[2026-08-25 05:31:28,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:31:29,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:31:29,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:31:29,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:31:29,398.398 INFO    ] time= 25/08/2026 05:31:29
[2026-08-25 05:31:29,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:31:29,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:31:29,621.621 INFO    ] No existing commands found in stream
[2026-08-25 05:31:34,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:31:34,643.643 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 05:31:38,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:31:38,120.120 INFO    ] Checking for system updates...
[2026-08-25 05:31:38,157.157 INFO    ] 200
[2026-08-25 05:31:38,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:38,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:31:38,222.222 INFO    ] No update needed
[2026-08-25 05:31:38,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 05:31:38,263.263 INFO    ] 200
[2026-08-25 05:31:38,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:38,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:31:38,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:31:38,370.370 INFO    ] No camera update needed
[2026-08-25 05:31:38,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:31:38,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:31:38,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:31:38,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:31:40,428.428 INFO    ] ================================================
[2026-08-25 05:31:40,443.443 INFO    ] Launching Daemon at Tue Aug 25 05:31:40 IST 2026
[2026-08-25 05:31:40,454.454 INFO    ] ================================================
[2026-08-25 05:31:41,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:31:41
[2026-08-25 05:31:41,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:31:41,858.858 INFO    ] Initializing speech engine...
[2026-08-25 05:31:41,866.866 INFO    ] 2026-08-25 05:31:41
[2026-08-25 05:31:42,162.162 INFO    ] 2026-08-25 05:31:42
[2026-08-25 05:31:42,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:31:42,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:31:42,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:31:42,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:31:42,500.500 INFO    ] time= 25/08/2026 05:31:42
[2026-08-25 05:31:42,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:31:42,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:31:42,631.631 INFO    ] No existing commands found in stream
[2026-08-25 05:31:47,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:31:47,647.647 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 05:31:49,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:31:49,757.757 INFO    ] Checking for system updates...
[2026-08-25 05:31:49,792.792 INFO    ] 200
[2026-08-25 05:31:49,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:49,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:31:49,850.850 INFO    ] No update needed
[2026-08-25 05:31:49,852.852 INFO    ] Checking for camera pi updates...
[2026-08-25 05:31:49,885.885 INFO    ] 200
[2026-08-25 05:31:49,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:31:49,927.927 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:31:49,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:31:49,978.978 INFO    ] No camera update needed
[2026-08-25 05:31:49,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:31:49,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:31:49,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:31:49,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:31:52,032.032 INFO    ] ================================================
[2026-08-25 05:31:52,047.047 INFO    ] Launching Daemon at Tue Aug 25 05:31:52 IST 2026
[2026-08-25 05:31:52,058.058 INFO    ] ================================================
[2026-08-25 05:31:52,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:31:52
[2026-08-25 05:31:53,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:31:53,483.483 INFO    ] Initializing speech engine...
[2026-08-25 05:31:53,491.491 INFO    ] 2026-08-25 05:31:53
[2026-08-25 05:31:53,740.740 INFO    ] 2026-08-25 05:31:53
[2026-08-25 05:31:53,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:31:54,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:31:54,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:31:54,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:31:54,454.454 INFO    ] time= 25/08/2026 05:31:54
[2026-08-25 05:31:54,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:31:54,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:31:54,663.663 INFO    ] No existing commands found in stream
[2026-08-25 05:31:59,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:31:59,696.696 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 05:32:04,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:32:04,113.113 INFO    ] Checking for system updates...
[2026-08-25 05:32:04,148.148 INFO    ] 200
[2026-08-25 05:32:04,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:04,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:32:04,206.206 INFO    ] No update needed
[2026-08-25 05:32:04,208.208 INFO    ] Checking for camera pi updates...
[2026-08-25 05:32:04,241.241 INFO    ] 200
[2026-08-25 05:32:04,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:04,285.285 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:32:04,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:32:04,332.332 INFO    ] No camera update needed
[2026-08-25 05:32:04,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:32:04,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:32:04,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:32:04,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:32:06,387.387 INFO    ] ================================================
[2026-08-25 05:32:06,403.403 INFO    ] Launching Daemon at Tue Aug 25 05:32:06 IST 2026
[2026-08-25 05:32:06,414.414 INFO    ] ================================================
[2026-08-25 05:32:06,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:32:06
[2026-08-25 05:32:07,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:32:07,850.850 INFO    ] Initializing speech engine...
[2026-08-25 05:32:07,859.859 INFO    ] 2026-08-25 05:32:07
[2026-08-25 05:32:08,104.104 INFO    ] 2026-08-25 05:32:08
[2026-08-25 05:32:08,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:32:08,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:32:08,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:32:08,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:32:08,472.472 INFO    ] time= 25/08/2026 05:32:08
[2026-08-25 05:32:08,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:32:08,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:32:08,654.654 INFO    ] No existing commands found in stream
[2026-08-25 05:32:13,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:32:13,680.680 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 05:32:15,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:32:15,711.711 INFO    ] Checking for system updates...
[2026-08-25 05:32:15,747.747 INFO    ] 200
[2026-08-25 05:32:15,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:15,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:32:15,809.809 INFO    ] No update needed
[2026-08-25 05:32:15,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 05:32:15,845.845 INFO    ] 200
[2026-08-25 05:32:15,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:15,893.893 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:32:15,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:32:15,942.942 INFO    ] No camera update needed
[2026-08-25 05:32:15,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:32:15,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:32:15,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:32:15,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:32:18,999.999 INFO    ] ================================================
[2026-08-25 05:32:18,014.014 INFO    ] Launching Daemon at Tue Aug 25 05:32:18 IST 2026
[2026-08-25 05:32:18,025.025 INFO    ] ================================================
[2026-08-25 05:32:18,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:32:18
[2026-08-25 05:32:19,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:32:19,476.476 INFO    ] Initializing speech engine...
[2026-08-25 05:32:19,485.485 INFO    ] 2026-08-25 05:32:19
[2026-08-25 05:32:19,733.733 INFO    ] 2026-08-25 05:32:19
[2026-08-25 05:32:19,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:32:20,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:32:20,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:32:20,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:32:20,235.235 INFO    ] time= 25/08/2026 05:32:20
[2026-08-25 05:32:20,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:32:20,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:32:20,442.442 INFO    ] No existing commands found in stream
[2026-08-25 05:32:25,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:32:25,460.460 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 05:32:29,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:32:29,399.399 INFO    ] Checking for system updates...
[2026-08-25 05:32:29,437.437 INFO    ] 200
[2026-08-25 05:32:29,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:29,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:32:29,503.503 INFO    ] No update needed
[2026-08-25 05:32:29,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 05:32:29,539.539 INFO    ] 200
[2026-08-25 05:32:29,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:29,583.583 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:32:29,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:32:29,741.741 INFO    ] No camera update needed
[2026-08-25 05:32:29,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:32:29,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:32:29,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:32:29,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:32:31,804.804 INFO    ] ================================================
[2026-08-25 05:32:31,820.820 INFO    ] Launching Daemon at Tue Aug 25 05:32:31 IST 2026
[2026-08-25 05:32:31,832.832 INFO    ] ================================================
[2026-08-25 05:32:32,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:32:32
[2026-08-25 05:32:33,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:32:33,422.422 INFO    ] Initializing speech engine...
[2026-08-25 05:32:33,429.429 INFO    ] 2026-08-25 05:32:33
[2026-08-25 05:32:33,721.721 INFO    ] 2026-08-25 05:32:33
[2026-08-25 05:32:33,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:32:33,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:32:33,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:32:34,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:32:34,100.100 INFO    ] time= 25/08/2026 05:32:34
[2026-08-25 05:32:34,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:32:34,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:32:34,225.225 INFO    ] No existing commands found in stream
[2026-08-25 05:32:39,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:32:39,253.253 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 05:32:39,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:32:39,805.805 INFO    ] Checking for system updates...
[2026-08-25 05:32:39,841.841 INFO    ] 200
[2026-08-25 05:32:39,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:39,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:32:39,903.903 INFO    ] No update needed
[2026-08-25 05:32:39,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 05:32:39,939.939 INFO    ] 200
[2026-08-25 05:32:39,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:39,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:32:40,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:32:40,032.032 INFO    ] No camera update needed
[2026-08-25 05:32:40,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:32:40,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:32:40,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:32:40,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:32:42,087.087 INFO    ] ================================================
[2026-08-25 05:32:42,102.102 INFO    ] Launching Daemon at Tue Aug 25 05:32:42 IST 2026
[2026-08-25 05:32:42,114.114 INFO    ] ================================================
[2026-08-25 05:32:42,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:32:42
[2026-08-25 05:32:43,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:32:43,521.521 INFO    ] Initializing speech engine...
[2026-08-25 05:32:43,545.545 INFO    ] 2026-08-25 05:32:43
[2026-08-25 05:32:43,815.815 INFO    ] 2026-08-25 05:32:43
[2026-08-25 05:32:43,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:32:44,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:32:44,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:32:44,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:32:44,229.229 INFO    ] time= 25/08/2026 05:32:44
[2026-08-25 05:32:44,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:32:44,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:32:44,315.315 INFO    ] No existing commands found in stream
[2026-08-25 05:32:49,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:32:49,338.338 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 05:32:51,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:32:51,709.709 INFO    ] Checking for system updates...
[2026-08-25 05:32:51,744.744 INFO    ] 200
[2026-08-25 05:32:51,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:51,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:32:51,803.803 INFO    ] No update needed
[2026-08-25 05:32:51,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 05:32:51,838.838 INFO    ] 200
[2026-08-25 05:32:51,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:32:51,882.882 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:32:51,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:32:51,937.937 INFO    ] No camera update needed
[2026-08-25 05:32:51,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:32:51,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:32:51,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:32:51,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:32:53,992.992 INFO    ] ================================================
[2026-08-25 05:32:54,008.008 INFO    ] Launching Daemon at Tue Aug 25 05:32:54 IST 2026
[2026-08-25 05:32:54,019.019 INFO    ] ================================================
[2026-08-25 05:32:54,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:32:54
[2026-08-25 05:32:55,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:32:55,419.419 INFO    ] Initializing speech engine...
[2026-08-25 05:32:55,425.425 INFO    ] 2026-08-25 05:32:55
[2026-08-25 05:32:55,717.717 INFO    ] 2026-08-25 05:32:55
[2026-08-25 05:32:55,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:32:55,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:32:55,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:32:56,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:32:56,130.130 INFO    ] time= 25/08/2026 05:32:56
[2026-08-25 05:32:56,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:32:56,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:32:56,215.215 INFO    ] No existing commands found in stream
[2026-08-25 05:33:01,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:33:01,240.240 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 05:33:04,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:33:04,351.351 INFO    ] Checking for system updates...
[2026-08-25 05:33:04,386.386 INFO    ] 200
[2026-08-25 05:33:04,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:04,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:33:04,444.444 INFO    ] No update needed
[2026-08-25 05:33:04,446.446 INFO    ] Checking for camera pi updates...
[2026-08-25 05:33:04,480.480 INFO    ] 200
[2026-08-25 05:33:04,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:04,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:33:04,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:33:04,578.578 INFO    ] No camera update needed
[2026-08-25 05:33:04,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:33:04,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:33:04,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:33:04,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:33:06,635.635 INFO    ] ================================================
[2026-08-25 05:33:06,650.650 INFO    ] Launching Daemon at Tue Aug 25 05:33:06 IST 2026
[2026-08-25 05:33:06,661.661 INFO    ] ================================================
[2026-08-25 05:33:07,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:33:07
[2026-08-25 05:33:07,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:33:08,082.082 INFO    ] Initializing speech engine...
[2026-08-25 05:33:08,088.088 INFO    ] 2026-08-25 05:33:08
[2026-08-25 05:33:08,332.332 INFO    ] 2026-08-25 05:33:08
[2026-08-25 05:33:08,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:33:08,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:33:08,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:33:08,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:33:08,811.811 INFO    ] time= 25/08/2026 05:33:08
[2026-08-25 05:33:08,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:33:08,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:33:09,042.042 INFO    ] No existing commands found in stream
[2026-08-25 05:33:14,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:33:14,065.065 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 05:33:15,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:33:15,489.489 INFO    ] Checking for system updates...
[2026-08-25 05:33:15,527.527 INFO    ] 200
[2026-08-25 05:33:15,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:15,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:33:15,583.583 INFO    ] No update needed
[2026-08-25 05:33:15,586.586 INFO    ] Checking for camera pi updates...
[2026-08-25 05:33:15,618.618 INFO    ] 200
[2026-08-25 05:33:15,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:15,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:33:15,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:33:15,709.709 INFO    ] No camera update needed
[2026-08-25 05:33:15,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:33:15,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:33:15,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:33:15,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:33:17,770.770 INFO    ] ================================================
[2026-08-25 05:33:17,786.786 INFO    ] Launching Daemon at Tue Aug 25 05:33:17 IST 2026
[2026-08-25 05:33:17,797.797 INFO    ] ================================================
[2026-08-25 05:33:18,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:33:18
[2026-08-25 05:33:18,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:33:19,214.214 INFO    ] Initializing speech engine...
[2026-08-25 05:33:19,224.224 INFO    ] 2026-08-25 05:33:19
[2026-08-25 05:33:19,469.469 INFO    ] 2026-08-25 05:33:19
[2026-08-25 05:33:19,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:33:19,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:33:19,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:33:19,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:33:19,947.947 INFO    ] time= 25/08/2026 05:33:19
[2026-08-25 05:33:19,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:33:20,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:33:20,146.146 INFO    ] No existing commands found in stream
[2026-08-25 05:33:25,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:33:25,174.174 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 05:33:29,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:33:29,388.388 INFO    ] Checking for system updates...
[2026-08-25 05:33:29,424.424 INFO    ] 200
[2026-08-25 05:33:29,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:29,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:33:29,486.486 INFO    ] No update needed
[2026-08-25 05:33:29,489.489 INFO    ] Checking for camera pi updates...
[2026-08-25 05:33:29,525.525 INFO    ] 200
[2026-08-25 05:33:29,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:29,568.568 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:33:29,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:33:29,619.619 INFO    ] No camera update needed
[2026-08-25 05:33:29,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:33:29,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:33:29,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:33:29,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:33:31,676.676 INFO    ] ================================================
[2026-08-25 05:33:31,693.693 INFO    ] Launching Daemon at Tue Aug 25 05:33:31 IST 2026
[2026-08-25 05:33:31,706.706 INFO    ] ================================================
[2026-08-25 05:33:32,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:33:32
[2026-08-25 05:33:32,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:33:33,215.215 INFO    ] Initializing speech engine...
[2026-08-25 05:33:33,224.224 INFO    ] 2026-08-25 05:33:33
[2026-08-25 05:33:33,471.471 INFO    ] 2026-08-25 05:33:33
[2026-08-25 05:33:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:33:33,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:33:33,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:33:33,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:33:33,962.962 INFO    ] time= 25/08/2026 05:33:33
[2026-08-25 05:33:34,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:33:34,037.037 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:33:34,162.162 INFO    ] No existing commands found in stream
[2026-08-25 05:33:39,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:33:39,193.193 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 05:33:39,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:33:39,807.807 INFO    ] Checking for system updates...
[2026-08-25 05:33:39,842.842 INFO    ] 200
[2026-08-25 05:33:39,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:39,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:33:39,900.900 INFO    ] No update needed
[2026-08-25 05:33:39,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 05:33:39,935.935 INFO    ] 200
[2026-08-25 05:33:39,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:39,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:33:40,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:33:40,030.030 INFO    ] No camera update needed
[2026-08-25 05:33:40,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:33:40,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:33:40,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:33:40,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:33:42,089.089 INFO    ] ================================================
[2026-08-25 05:33:42,106.106 INFO    ] Launching Daemon at Tue Aug 25 05:33:42 IST 2026
[2026-08-25 05:33:42,119.119 INFO    ] ================================================
[2026-08-25 05:33:42,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:33:42
[2026-08-25 05:33:43,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:33:43,564.564 INFO    ] Initializing speech engine...
[2026-08-25 05:33:43,569.569 INFO    ] 2026-08-25 05:33:43
[2026-08-25 05:33:43,856.856 INFO    ] 2026-08-25 05:33:43
[2026-08-25 05:33:43,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:33:44,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:33:44,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:33:44,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:33:44,255.255 INFO    ] time= 25/08/2026 05:33:44
[2026-08-25 05:33:44,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:33:44,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:33:44,417.417 INFO    ] No existing commands found in stream
[2026-08-25 05:33:49,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:33:49,445.445 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 05:33:52,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:33:53,039.039 INFO    ] Checking for system updates...
[2026-08-25 05:33:53,078.078 INFO    ] 200
[2026-08-25 05:33:53,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:53,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:33:53,140.140 INFO    ] No update needed
[2026-08-25 05:33:53,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 05:33:53,176.176 INFO    ] 200
[2026-08-25 05:33:53,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:33:53,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:33:53,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:33:53,285.285 INFO    ] No camera update needed
[2026-08-25 05:33:53,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:33:53,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:33:53,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:33:53,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:33:55,339.339 INFO    ] ================================================
[2026-08-25 05:33:55,354.354 INFO    ] Launching Daemon at Tue Aug 25 05:33:55 IST 2026
[2026-08-25 05:33:55,365.365 INFO    ] ================================================
[2026-08-25 05:33:55,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:33:55
[2026-08-25 05:33:56,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:33:56,918.918 INFO    ] Initializing speech engine...
[2026-08-25 05:33:56,928.928 INFO    ] 2026-08-25 05:33:56
[2026-08-25 05:33:57,216.216 INFO    ] 2026-08-25 05:33:57
[2026-08-25 05:33:57,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:33:57,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:33:57,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:33:57,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:33:57,661.661 INFO    ] time= 25/08/2026 05:33:57
[2026-08-25 05:33:57,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:33:57,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:33:57,880.880 INFO    ] No existing commands found in stream
[2026-08-25 05:34:02,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:34:02,906.906 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 05:34:04,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:34:04,098.098 INFO    ] Checking for system updates...
[2026-08-25 05:34:04,135.135 INFO    ] 200
[2026-08-25 05:34:04,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:04,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:34:04,192.192 INFO    ] No update needed
[2026-08-25 05:34:04,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 05:34:04,233.233 INFO    ] 200
[2026-08-25 05:34:04,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:04,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:34:04,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:34:04,326.326 INFO    ] No camera update needed
[2026-08-25 05:34:04,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:34:04,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:34:04,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:34:04,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:34:06,384.384 INFO    ] ================================================
[2026-08-25 05:34:06,399.399 INFO    ] Launching Daemon at Tue Aug 25 05:34:06 IST 2026
[2026-08-25 05:34:06,410.410 INFO    ] ================================================
[2026-08-25 05:34:06,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:34:06
[2026-08-25 05:34:07,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:34:07,824.824 INFO    ] Initializing speech engine...
[2026-08-25 05:34:07,833.833 INFO    ] 2026-08-25 05:34:07
[2026-08-25 05:34:08,079.079 INFO    ] 2026-08-25 05:34:08
[2026-08-25 05:34:08,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:34:08,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:34:08,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:34:08,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:34:08,548.548 INFO    ] time= 25/08/2026 05:34:08
[2026-08-25 05:34:08,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:34:08,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:34:08,755.755 INFO    ] No existing commands found in stream
[2026-08-25 05:34:13,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:34:13,780.780 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 05:34:16,973.973 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:34:16,976.976 INFO    ] Checking for system updates...
[2026-08-25 05:34:17,011.011 INFO    ] 200
[2026-08-25 05:34:17,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:17,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:34:17,076.076 INFO    ] No update needed
[2026-08-25 05:34:17,078.078 INFO    ] Checking for camera pi updates...
[2026-08-25 05:34:17,112.112 INFO    ] 200
[2026-08-25 05:34:17,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:17,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:34:17,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:34:17,211.211 INFO    ] No camera update needed
[2026-08-25 05:34:17,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:34:17,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:34:17,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:34:17,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:34:19,267.267 INFO    ] ================================================
[2026-08-25 05:34:19,282.282 INFO    ] Launching Daemon at Tue Aug 25 05:34:19 IST 2026
[2026-08-25 05:34:19,292.292 INFO    ] ================================================
[2026-08-25 05:34:19,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:34:19
[2026-08-25 05:34:20,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:34:20,907.907 INFO    ] Initializing speech engine...
[2026-08-25 05:34:20,917.917 INFO    ] 2026-08-25 05:34:20
[2026-08-25 05:34:21,179.179 INFO    ] 2026-08-25 05:34:21
[2026-08-25 05:34:21,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:34:21,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:34:21,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:34:21,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:34:21,569.569 INFO    ] time= 25/08/2026 05:34:21
[2026-08-25 05:34:21,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:34:21,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:34:21,756.756 INFO    ] No existing commands found in stream
[2026-08-25 05:34:26,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:34:26,786.786 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 05:34:30,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:34:30,455.455 INFO    ] Checking for system updates...
[2026-08-25 05:34:30,492.492 INFO    ] 200
[2026-08-25 05:34:30,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:30,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:34:30,550.550 INFO    ] No update needed
[2026-08-25 05:34:30,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 05:34:30,588.588 INFO    ] 200
[2026-08-25 05:34:30,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:30,632.632 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:34:30,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:34:30,682.682 INFO    ] No camera update needed
[2026-08-25 05:34:30,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:34:30,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:34:30,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:34:30,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:34:32,742.742 INFO    ] ================================================
[2026-08-25 05:34:32,757.757 INFO    ] Launching Daemon at Tue Aug 25 05:34:32 IST 2026
[2026-08-25 05:34:32,768.768 INFO    ] ================================================
[2026-08-25 05:34:33,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:34:33
[2026-08-25 05:34:33,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:34:34,174.174 INFO    ] Initializing speech engine...
[2026-08-25 05:34:34,182.182 INFO    ] 2026-08-25 05:34:34
[2026-08-25 05:34:34,477.477 INFO    ] 2026-08-25 05:34:34
[2026-08-25 05:34:34,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:34:34,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:34:34,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:34:34,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:34:34,852.852 INFO    ] time= 25/08/2026 05:34:34
[2026-08-25 05:34:34,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:34:34,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:34:34,980.980 INFO    ] No existing commands found in stream
[2026-08-25 05:34:39,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:34:39,995.995 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 05:34:43,380.380 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:34:43,383.383 INFO    ] Checking for system updates...
[2026-08-25 05:34:43,421.421 INFO    ] 200
[2026-08-25 05:34:43,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:43,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:34:43,478.478 INFO    ] No update needed
[2026-08-25 05:34:43,480.480 INFO    ] Checking for camera pi updates...
[2026-08-25 05:34:43,513.513 INFO    ] 200
[2026-08-25 05:34:43,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:43,561.561 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:34:43,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:34:43,613.613 INFO    ] No camera update needed
[2026-08-25 05:34:43,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:34:43,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:34:43,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:34:43,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:34:45,667.667 INFO    ] ================================================
[2026-08-25 05:34:45,683.683 INFO    ] Launching Daemon at Tue Aug 25 05:34:45 IST 2026
[2026-08-25 05:34:45,695.695 INFO    ] ================================================
[2026-08-25 05:34:46,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:34:46
[2026-08-25 05:34:46,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:34:47,109.109 INFO    ] Initializing speech engine...
[2026-08-25 05:34:47,119.119 INFO    ] 2026-08-25 05:34:47
[2026-08-25 05:34:47,363.363 INFO    ] 2026-08-25 05:34:47
[2026-08-25 05:34:47,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:34:47,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:34:47,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:34:47,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:34:47,825.825 INFO    ] time= 25/08/2026 05:34:47
[2026-08-25 05:34:47,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:34:47,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:34:48,027.027 INFO    ] No existing commands found in stream
[2026-08-25 05:34:53,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:34:53,062.062 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 05:34:56,920.920 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:34:56,922.922 INFO    ] Checking for system updates...
[2026-08-25 05:34:56,965.965 INFO    ] 200
[2026-08-25 05:34:56,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:57,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:34:57,027.027 INFO    ] No update needed
[2026-08-25 05:34:57,029.029 INFO    ] Checking for camera pi updates...
[2026-08-25 05:34:57,069.069 INFO    ] 200
[2026-08-25 05:34:57,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:34:57,114.114 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:34:57,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:34:57,182.182 INFO    ] No camera update needed
[2026-08-25 05:34:57,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:34:57,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:34:57,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:34:57,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:34:59,241.241 INFO    ] ================================================
[2026-08-25 05:34:59,258.258 INFO    ] Launching Daemon at Tue Aug 25 05:34:59 IST 2026
[2026-08-25 05:34:59,269.269 INFO    ] ================================================
[2026-08-25 05:34:59,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:34:59
[2026-08-25 05:35:00,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:35:00,745.745 INFO    ] Initializing speech engine...
[2026-08-25 05:35:00,755.755 INFO    ] 2026-08-25 05:35:00
[2026-08-25 05:35:01,035.035 INFO    ] 2026-08-25 05:35:01
[2026-08-25 05:35:01,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:35:01,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:35:01,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:35:01,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:35:01,502.502 INFO    ] time= 25/08/2026 05:35:01
[2026-08-25 05:35:01,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:35:01,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:35:01,711.711 INFO    ] No existing commands found in stream
[2026-08-25 05:35:06,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:35:06,746.746 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 05:35:09,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:35:09,158.158 INFO    ] Checking for system updates...
[2026-08-25 05:35:09,196.196 INFO    ] 200
[2026-08-25 05:35:09,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:09,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:35:09,261.261 INFO    ] No update needed
[2026-08-25 05:35:09,264.264 INFO    ] Checking for camera pi updates...
[2026-08-25 05:35:09,301.301 INFO    ] 200
[2026-08-25 05:35:09,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:09,344.344 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:35:09,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:35:09,399.399 INFO    ] No camera update needed
[2026-08-25 05:35:09,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:35:09,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:35:09,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:35:09,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:35:11,455.455 INFO    ] ================================================
[2026-08-25 05:35:11,471.471 INFO    ] Launching Daemon at Tue Aug 25 05:35:11 IST 2026
[2026-08-25 05:35:11,483.483 INFO    ] ================================================
[2026-08-25 05:35:12,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:35:12
[2026-08-25 05:35:12,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:35:13,223.223 INFO    ] Initializing speech engine...
[2026-08-25 05:35:13,234.234 INFO    ] 2026-08-25 05:35:13
[2026-08-25 05:35:13,506.506 INFO    ] 2026-08-25 05:35:13
[2026-08-25 05:35:13,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:35:16,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:35:16,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:35:16,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:35:16,444.444 INFO    ] time= 25/08/2026 05:35:16
[2026-08-25 05:35:16,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:35:16,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:35:16,510.510 INFO    ] No existing commands found in stream
[2026-08-25 05:35:21,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:35:21,520.520 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 05:35:24,411.411 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:35:24,414.414 INFO    ] Checking for system updates...
[2026-08-25 05:35:24,454.454 INFO    ] 200
[2026-08-25 05:35:24,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:24,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:35:24,511.511 INFO    ] No update needed
[2026-08-25 05:35:24,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 05:35:24,550.550 INFO    ] 200
[2026-08-25 05:35:24,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:24,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:35:24,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:35:24,650.650 INFO    ] No camera update needed
[2026-08-25 05:35:24,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:35:24,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:35:24,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:35:24,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:35:26,705.705 INFO    ] ================================================
[2026-08-25 05:35:26,721.721 INFO    ] Launching Daemon at Tue Aug 25 05:35:26 IST 2026
[2026-08-25 05:35:26,732.732 INFO    ] ================================================
[2026-08-25 05:35:27,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:35:27
[2026-08-25 05:35:27,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:35:28,143.143 INFO    ] Initializing speech engine...
[2026-08-25 05:35:28,152.152 INFO    ] 2026-08-25 05:35:28
[2026-08-25 05:35:28,447.447 INFO    ] 2026-08-25 05:35:28
[2026-08-25 05:35:28,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:35:28,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:35:28,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:35:28,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:35:28,834.834 INFO    ] time= 25/08/2026 05:35:28
[2026-08-25 05:35:28,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:35:28,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:35:28,962.962 INFO    ] No existing commands found in stream
[2026-08-25 05:35:33,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:35:33,978.978 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 05:35:37,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:35:37,924.924 INFO    ] Checking for system updates...
[2026-08-25 05:35:37,961.961 INFO    ] 200
[2026-08-25 05:35:37,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:38,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:35:38,021.021 INFO    ] No update needed
[2026-08-25 05:35:38,024.024 INFO    ] Checking for camera pi updates...
[2026-08-25 05:35:38,057.057 INFO    ] 200
[2026-08-25 05:35:38,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:38,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:35:38,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:35:38,156.156 INFO    ] No camera update needed
[2026-08-25 05:35:38,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:35:38,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:35:38,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:35:38,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:35:40,214.214 INFO    ] ================================================
[2026-08-25 05:35:40,231.231 INFO    ] Launching Daemon at Tue Aug 25 05:35:40 IST 2026
[2026-08-25 05:35:40,242.242 INFO    ] ================================================
[2026-08-25 05:35:40,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:35:40
[2026-08-25 05:35:41,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:35:41,919.919 INFO    ] Initializing speech engine...
[2026-08-25 05:35:41,930.930 INFO    ] 2026-08-25 05:35:41
[2026-08-25 05:35:42,195.195 INFO    ] 2026-08-25 05:35:42
[2026-08-25 05:35:42,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:35:42,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:35:42,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:35:42,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:35:42,676.676 INFO    ] time= 25/08/2026 05:35:42
[2026-08-25 05:35:42,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:35:42,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:35:42,895.895 INFO    ] No existing commands found in stream
[2026-08-25 05:35:47,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:35:47,912.912 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 05:35:52,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:35:52,125.125 INFO    ] Checking for system updates...
[2026-08-25 05:35:52,165.165 INFO    ] 200
[2026-08-25 05:35:52,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:52,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:35:52,231.231 INFO    ] No update needed
[2026-08-25 05:35:52,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 05:35:52,272.272 INFO    ] 200
[2026-08-25 05:35:52,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:35:52,315.315 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:35:52,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:35:52,362.362 INFO    ] No camera update needed
[2026-08-25 05:35:52,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:35:52,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:35:52,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:35:52,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:35:54,417.417 INFO    ] ================================================
[2026-08-25 05:35:54,433.433 INFO    ] Launching Daemon at Tue Aug 25 05:35:54 IST 2026
[2026-08-25 05:35:54,444.444 INFO    ] ================================================
[2026-08-25 05:35:55,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:35:55
[2026-08-25 05:35:55,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:35:55,859.859 INFO    ] Initializing speech engine...
[2026-08-25 05:35:55,874.874 INFO    ] 2026-08-25 05:35:55
[2026-08-25 05:35:56,142.142 INFO    ] 2026-08-25 05:35:56
[2026-08-25 05:35:56,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:35:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:35:56,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:35:56,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:35:56,592.592 INFO    ] time= 25/08/2026 05:35:56
[2026-08-25 05:35:56,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:35:56,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:35:56,838.838 INFO    ] No existing commands found in stream
[2026-08-25 05:36:01,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:36:01,875.875 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 05:36:05,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:36:05,073.073 INFO    ] Checking for system updates...
[2026-08-25 05:36:05,109.109 INFO    ] 200
[2026-08-25 05:36:05,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:05,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:36:05,166.166 INFO    ] No update needed
[2026-08-25 05:36:05,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 05:36:05,202.202 INFO    ] 200
[2026-08-25 05:36:05,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:05,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:36:05,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:36:05,296.296 INFO    ] No camera update needed
[2026-08-25 05:36:05,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:36:05,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:36:05,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:36:05,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:36:07,352.352 INFO    ] ================================================
[2026-08-25 05:36:07,368.368 INFO    ] Launching Daemon at Tue Aug 25 05:36:07 IST 2026
[2026-08-25 05:36:07,379.379 INFO    ] ================================================
[2026-08-25 05:36:07,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:36:07
[2026-08-25 05:36:08,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:36:08,806.806 INFO    ] Initializing speech engine...
[2026-08-25 05:36:08,815.815 INFO    ] 2026-08-25 05:36:08
[2026-08-25 05:36:09,060.060 INFO    ] 2026-08-25 05:36:09
[2026-08-25 05:36:09,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:36:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:36:09,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:36:09,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:36:09,537.537 INFO    ] time= 25/08/2026 05:36:09
[2026-08-25 05:36:09,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:36:09,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:36:09,758.758 INFO    ] No existing commands found in stream
[2026-08-25 05:36:14,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:36:14,785.785 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 05:36:18,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:36:18,833.833 INFO    ] Checking for system updates...
[2026-08-25 05:36:18,868.868 INFO    ] 200
[2026-08-25 05:36:18,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:18,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:36:18,925.925 INFO    ] No update needed
[2026-08-25 05:36:18,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 05:36:18,961.961 INFO    ] 200
[2026-08-25 05:36:18,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:19,004.004 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:36:19,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:36:19,050.050 INFO    ] No camera update needed
[2026-08-25 05:36:19,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:36:19,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:36:19,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:36:19,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:36:21,106.106 INFO    ] ================================================
[2026-08-25 05:36:21,122.122 INFO    ] Launching Daemon at Tue Aug 25 05:36:21 IST 2026
[2026-08-25 05:36:21,134.134 INFO    ] ================================================
[2026-08-25 05:36:21,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:36:21
[2026-08-25 05:36:22,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:36:22,662.662 INFO    ] Initializing speech engine...
[2026-08-25 05:36:22,671.671 INFO    ] 2026-08-25 05:36:22
[2026-08-25 05:36:22,934.934 INFO    ] 2026-08-25 05:36:22
[2026-08-25 05:36:22,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:36:23,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:36:23,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:36:23,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:36:23,307.307 INFO    ] time= 25/08/2026 05:36:23
[2026-08-25 05:36:23,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:36:23,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:36:23,432.432 INFO    ] No existing commands found in stream
[2026-08-25 05:36:28,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:36:28,460.460 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 05:36:29,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:36:29,221.221 INFO    ] Checking for system updates...
[2026-08-25 05:36:29,259.259 INFO    ] 200
[2026-08-25 05:36:29,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:29,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:36:29,323.323 INFO    ] No update needed
[2026-08-25 05:36:29,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 05:36:29,359.359 INFO    ] 200
[2026-08-25 05:36:29,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:29,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:36:29,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:36:29,460.460 INFO    ] No camera update needed
[2026-08-25 05:36:29,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:36:29,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:36:29,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:36:29,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:36:31,519.519 INFO    ] ================================================
[2026-08-25 05:36:31,535.535 INFO    ] Launching Daemon at Tue Aug 25 05:36:31 IST 2026
[2026-08-25 05:36:31,546.546 INFO    ] ================================================
[2026-08-25 05:36:32,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:36:32
[2026-08-25 05:36:32,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:36:33,081.081 INFO    ] Initializing speech engine...
[2026-08-25 05:36:33,090.090 INFO    ] 2026-08-25 05:36:33
[2026-08-25 05:36:33,366.366 INFO    ] 2026-08-25 05:36:33
[2026-08-25 05:36:33,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:36:33,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:36:33,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:36:33,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:36:33,827.827 INFO    ] time= 25/08/2026 05:36:33
[2026-08-25 05:36:33,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:36:33,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:36:34,036.036 INFO    ] No existing commands found in stream
[2026-08-25 05:36:39,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:36:39,066.066 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 05:36:41,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:36:41,008.008 INFO    ] Checking for system updates...
[2026-08-25 05:36:41,047.047 INFO    ] 200
[2026-08-25 05:36:41,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:41,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:36:41,112.112 INFO    ] No update needed
[2026-08-25 05:36:41,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 05:36:41,152.152 INFO    ] 200
[2026-08-25 05:36:41,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:41,196.196 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:36:41,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:36:41,352.352 INFO    ] No camera update needed
[2026-08-25 05:36:41,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:36:41,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:36:41,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:36:41,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:36:43,409.409 INFO    ] ================================================
[2026-08-25 05:36:43,424.424 INFO    ] Launching Daemon at Tue Aug 25 05:36:43 IST 2026
[2026-08-25 05:36:43,435.435 INFO    ] ================================================
[2026-08-25 05:36:44,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:36:44
[2026-08-25 05:36:44,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:36:45,035.035 INFO    ] Initializing speech engine...
[2026-08-25 05:36:45,048.048 INFO    ] 2026-08-25 05:36:45
[2026-08-25 05:36:45,356.356 INFO    ] 2026-08-25 05:36:45
[2026-08-25 05:36:45,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:36:45,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:36:45,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:36:45,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:36:45,860.860 INFO    ] time= 25/08/2026 05:36:45
[2026-08-25 05:36:45,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:36:45,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:36:46,014.014 INFO    ] No existing commands found in stream
[2026-08-25 05:36:51,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:36:51,030.030 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 05:36:52,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:36:52,917.917 INFO    ] Checking for system updates...
[2026-08-25 05:36:52,953.953 INFO    ] 200
[2026-08-25 05:36:52,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:53,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:36:53,013.013 INFO    ] No update needed
[2026-08-25 05:36:53,016.016 INFO    ] Checking for camera pi updates...
[2026-08-25 05:36:53,050.050 INFO    ] 200
[2026-08-25 05:36:53,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:36:53,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:36:53,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:36:53,162.162 INFO    ] No camera update needed
[2026-08-25 05:36:53,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:36:53,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:36:53,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:36:53,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:36:55,219.219 INFO    ] ================================================
[2026-08-25 05:36:55,235.235 INFO    ] Launching Daemon at Tue Aug 25 05:36:55 IST 2026
[2026-08-25 05:36:55,247.247 INFO    ] ================================================
[2026-08-25 05:36:55,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:36:55
[2026-08-25 05:36:56,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:36:56,849.849 INFO    ] Initializing speech engine...
[2026-08-25 05:36:56,862.862 INFO    ] 2026-08-25 05:36:56
[2026-08-25 05:36:57,145.145 INFO    ] 2026-08-25 05:36:57
[2026-08-25 05:36:57,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:36:58,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:36:58,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:36:58,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:36:58,726.726 INFO    ] time= 25/08/2026 05:36:58
[2026-08-25 05:36:58,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:36:58,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:36:58,812.812 INFO    ] No existing commands found in stream
[2026-08-25 05:37:03,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:37:03,826.826 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 05:37:06,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:37:06,501.501 INFO    ] Checking for system updates...
[2026-08-25 05:37:06,536.536 INFO    ] 200
[2026-08-25 05:37:06,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:06,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:37:06,592.592 INFO    ] No update needed
[2026-08-25 05:37:06,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 05:37:06,628.628 INFO    ] 200
[2026-08-25 05:37:06,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:06,670.670 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:37:06,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:37:06,726.726 INFO    ] No camera update needed
[2026-08-25 05:37:06,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:37:06,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:37:06,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:37:06,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:37:08,780.780 INFO    ] ================================================
[2026-08-25 05:37:08,795.795 INFO    ] Launching Daemon at Tue Aug 25 05:37:08 IST 2026
[2026-08-25 05:37:08,806.806 INFO    ] ================================================
[2026-08-25 05:37:09,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:37:09
[2026-08-25 05:37:10,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:37:10,464.464 INFO    ] Initializing speech engine...
[2026-08-25 05:37:10,472.472 INFO    ] 2026-08-25 05:37:10
[2026-08-25 05:37:10,779.779 INFO    ] 2026-08-25 05:37:10
[2026-08-25 05:37:10,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:37:11,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:37:11,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:37:11,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:37:11,287.287 INFO    ] time= 25/08/2026 05:37:11
[2026-08-25 05:37:11,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:37:11,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:37:11,451.451 INFO    ] No existing commands found in stream
[2026-08-25 05:37:16,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:37:16,490.490 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 05:37:19,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:37:19,183.183 INFO    ] Checking for system updates...
[2026-08-25 05:37:19,221.221 INFO    ] 200
[2026-08-25 05:37:19,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:19,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:37:19,280.280 INFO    ] No update needed
[2026-08-25 05:37:19,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 05:37:19,317.317 INFO    ] 200
[2026-08-25 05:37:19,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:19,362.362 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:37:19,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:37:19,420.420 INFO    ] No camera update needed
[2026-08-25 05:37:19,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:37:19,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:37:19,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:37:19,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:37:21,479.479 INFO    ] ================================================
[2026-08-25 05:37:21,494.494 INFO    ] Launching Daemon at Tue Aug 25 05:37:21 IST 2026
[2026-08-25 05:37:21,506.506 INFO    ] ================================================
[2026-08-25 05:37:22,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:37:22
[2026-08-25 05:37:22,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:37:23,033.033 INFO    ] Initializing speech engine...
[2026-08-25 05:37:23,045.045 INFO    ] 2026-08-25 05:37:23
[2026-08-25 05:37:23,356.356 INFO    ] 2026-08-25 05:37:23
[2026-08-25 05:37:23,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:37:23,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:37:23,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:37:23,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:37:23,860.860 INFO    ] time= 25/08/2026 05:37:23
[2026-08-25 05:37:23,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:37:23,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:37:23,995.995 INFO    ] No existing commands found in stream
[2026-08-25 05:37:29,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:37:29,027.027 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 05:37:30,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:37:30,927.927 INFO    ] Checking for system updates...
[2026-08-25 05:37:30,965.965 INFO    ] 200
[2026-08-25 05:37:30,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:31,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:37:31,024.024 INFO    ] No update needed
[2026-08-25 05:37:31,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 05:37:31,061.061 INFO    ] 200
[2026-08-25 05:37:31,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:31,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:37:31,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:37:31,165.165 INFO    ] No camera update needed
[2026-08-25 05:37:31,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:37:31,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:37:31,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:37:31,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:37:33,228.228 INFO    ] ================================================
[2026-08-25 05:37:33,244.244 INFO    ] Launching Daemon at Tue Aug 25 05:37:33 IST 2026
[2026-08-25 05:37:33,255.255 INFO    ] ================================================
[2026-08-25 05:37:33,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:37:33
[2026-08-25 05:37:34,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:37:34,693.693 INFO    ] Initializing speech engine...
[2026-08-25 05:37:34,699.699 INFO    ] 2026-08-25 05:37:34
[2026-08-25 05:37:34,959.959 INFO    ] 2026-08-25 05:37:34
[2026-08-25 05:37:35,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:37:35,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:37:35,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:37:35,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:37:35,422.422 INFO    ] time= 25/08/2026 05:37:35
[2026-08-25 05:37:35,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:37:35,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:37:35,637.637 INFO    ] No existing commands found in stream
[2026-08-25 05:37:40,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:37:40,669.669 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 05:37:43,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:37:43,479.479 INFO    ] Checking for system updates...
[2026-08-25 05:37:43,514.514 INFO    ] 200
[2026-08-25 05:37:43,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:43,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:37:43,571.571 INFO    ] No update needed
[2026-08-25 05:37:43,574.574 INFO    ] Checking for camera pi updates...
[2026-08-25 05:37:43,613.613 INFO    ] 200
[2026-08-25 05:37:43,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:43,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:37:43,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:37:43,711.711 INFO    ] No camera update needed
[2026-08-25 05:37:43,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:37:43,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:37:43,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:37:43,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:37:45,767.767 INFO    ] ================================================
[2026-08-25 05:37:45,783.783 INFO    ] Launching Daemon at Tue Aug 25 05:37:45 IST 2026
[2026-08-25 05:37:45,793.793 INFO    ] ================================================
[2026-08-25 05:37:46,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:37:46
[2026-08-25 05:37:46,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:37:47,286.286 INFO    ] Initializing speech engine...
[2026-08-25 05:37:47,296.296 INFO    ] 2026-08-25 05:37:47
[2026-08-25 05:37:47,570.570 INFO    ] 2026-08-25 05:37:47
[2026-08-25 05:37:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:37:47,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:37:47,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:37:48,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:37:48,126.126 INFO    ] time= 25/08/2026 05:37:48
[2026-08-25 05:37:48,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:37:48,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:37:48,284.284 INFO    ] No existing commands found in stream
[2026-08-25 05:37:53,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:37:53,317.317 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 05:37:57,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:37:57,704.704 INFO    ] Checking for system updates...
[2026-08-25 05:37:57,741.741 INFO    ] 200
[2026-08-25 05:37:57,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:57,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:37:57,800.800 INFO    ] No update needed
[2026-08-25 05:37:57,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 05:37:57,838.838 INFO    ] 200
[2026-08-25 05:37:57,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:37:57,882.882 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:37:57,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:37:57,930.930 INFO    ] No camera update needed
[2026-08-25 05:37:57,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:37:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:37:57,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:37:57,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:37:59,984.984 INFO    ] ================================================
[2026-08-25 05:38:00,000.000 INFO    ] Launching Daemon at Tue Aug 25 05:37:59 IST 2026
[2026-08-25 05:38:00,014.014 INFO    ] ================================================
[2026-08-25 05:38:00,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:38:00
[2026-08-25 05:38:01,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:38:01,563.563 INFO    ] Initializing speech engine...
[2026-08-25 05:38:01,574.574 INFO    ] 2026-08-25 05:38:01
[2026-08-25 05:38:01,862.862 INFO    ] 2026-08-25 05:38:01
[2026-08-25 05:38:01,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:38:02,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:38:02,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:38:02,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:38:02,382.382 INFO    ] time= 25/08/2026 05:38:02
[2026-08-25 05:38:02,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:38:02,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:38:02,481.481 INFO    ] No existing commands found in stream
[2026-08-25 05:38:07,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:38:07,493.493 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 05:38:08,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:38:08,132.132 INFO    ] Checking for system updates...
[2026-08-25 05:38:08,167.167 INFO    ] 200
[2026-08-25 05:38:08,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:08,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:38:08,223.223 INFO    ] No update needed
[2026-08-25 05:38:08,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 05:38:08,265.265 INFO    ] 200
[2026-08-25 05:38:08,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:08,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:38:08,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:38:08,365.365 INFO    ] No camera update needed
[2026-08-25 05:38:08,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:38:08,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:38:08,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:38:08,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:38:10,419.419 INFO    ] ================================================
[2026-08-25 05:38:10,434.434 INFO    ] Launching Daemon at Tue Aug 25 05:38:10 IST 2026
[2026-08-25 05:38:10,447.447 INFO    ] ================================================
[2026-08-25 05:38:11,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:38:11
[2026-08-25 05:38:11,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:38:12,056.056 INFO    ] Initializing speech engine...
[2026-08-25 05:38:12,064.064 INFO    ] 2026-08-25 05:38:12
[2026-08-25 05:38:12,353.353 INFO    ] 2026-08-25 05:38:12
[2026-08-25 05:38:12,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:38:12,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:38:12,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:38:12,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:38:12,888.888 INFO    ] time= 25/08/2026 05:38:12
[2026-08-25 05:38:12,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:38:12,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:38:13,041.041 INFO    ] No existing commands found in stream
[2026-08-25 05:38:18,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:38:18,066.066 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 05:38:21,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:38:21,973.973 INFO    ] Checking for system updates...
[2026-08-25 05:38:22,013.013 INFO    ] 200
[2026-08-25 05:38:22,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:22,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:38:22,072.072 INFO    ] No update needed
[2026-08-25 05:38:22,075.075 INFO    ] Checking for camera pi updates...
[2026-08-25 05:38:22,109.109 INFO    ] 200
[2026-08-25 05:38:22,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:22,153.153 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:38:22,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:38:22,205.205 INFO    ] No camera update needed
[2026-08-25 05:38:22,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:38:22,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:38:22,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:38:22,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:38:24,263.263 INFO    ] ================================================
[2026-08-25 05:38:24,278.278 INFO    ] Launching Daemon at Tue Aug 25 05:38:24 IST 2026
[2026-08-25 05:38:24,289.289 INFO    ] ================================================
[2026-08-25 05:38:24,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:38:24
[2026-08-25 05:38:25,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:38:25,778.778 INFO    ] Initializing speech engine...
[2026-08-25 05:38:25,786.786 INFO    ] 2026-08-25 05:38:25
[2026-08-25 05:38:26,063.063 INFO    ] 2026-08-25 05:38:26
[2026-08-25 05:38:26,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:38:26,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:38:26,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:38:26,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:38:26,553.553 INFO    ] time= 25/08/2026 05:38:26
[2026-08-25 05:38:26,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:38:26,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:38:26,759.759 INFO    ] No existing commands found in stream
[2026-08-25 05:38:31,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:38:31,786.786 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 05:38:34,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:38:34,361.361 INFO    ] Checking for system updates...
[2026-08-25 05:38:34,401.401 INFO    ] 200
[2026-08-25 05:38:34,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:34,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:38:34,462.462 INFO    ] No update needed
[2026-08-25 05:38:34,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 05:38:34,499.499 INFO    ] 200
[2026-08-25 05:38:34,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:34,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:38:34,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:38:34,598.598 INFO    ] No camera update needed
[2026-08-25 05:38:34,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:38:34,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:38:34,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:38:34,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:38:36,656.656 INFO    ] ================================================
[2026-08-25 05:38:36,670.670 INFO    ] Launching Daemon at Tue Aug 25 05:38:36 IST 2026
[2026-08-25 05:38:36,681.681 INFO    ] ================================================
[2026-08-25 05:38:37,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:38:37
[2026-08-25 05:38:37,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:38:38,172.172 INFO    ] Initializing speech engine...
[2026-08-25 05:38:38,178.178 INFO    ] 2026-08-25 05:38:38
[2026-08-25 05:38:38,440.440 INFO    ] 2026-08-25 05:38:38
[2026-08-25 05:38:38,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:38:38,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:38:38,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:38:38,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:38:38,927.927 INFO    ] time= 25/08/2026 05:38:38
[2026-08-25 05:38:38,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:38:38,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:38:39,117.117 INFO    ] No existing commands found in stream
[2026-08-25 05:38:44,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:38:44,145.145 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 05:38:47,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:38:47,452.452 INFO    ] Checking for system updates...
[2026-08-25 05:38:47,487.487 INFO    ] 200
[2026-08-25 05:38:47,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:47,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:38:47,544.544 INFO    ] No update needed
[2026-08-25 05:38:47,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 05:38:47,580.580 INFO    ] 200
[2026-08-25 05:38:47,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:38:47,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:38:47,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:38:47,785.785 INFO    ] No camera update needed
[2026-08-25 05:38:47,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:38:47,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:38:47,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:38:47,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:38:49,841.841 INFO    ] ================================================
[2026-08-25 05:38:49,856.856 INFO    ] Launching Daemon at Tue Aug 25 05:38:49 IST 2026
[2026-08-25 05:38:49,867.867 INFO    ] ================================================
[2026-08-25 05:38:50,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:38:50
[2026-08-25 05:38:51,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:38:51,322.322 INFO    ] Initializing speech engine...
[2026-08-25 05:38:51,332.332 INFO    ] 2026-08-25 05:38:51
[2026-08-25 05:38:51,607.607 INFO    ] 2026-08-25 05:38:51
[2026-08-25 05:38:51,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:38:51,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:38:51,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:38:52,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:38:52,092.092 INFO    ] time= 25/08/2026 05:38:52
[2026-08-25 05:38:52,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:38:52,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:38:52,313.313 INFO    ] No existing commands found in stream
[2026-08-25 05:38:57,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:38:57,329.329 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 05:39:01,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:39:01,062.062 INFO    ] Checking for system updates...
[2026-08-25 05:39:01,144.144 INFO    ] 200
[2026-08-25 05:39:01,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:01,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:39:01,250.250 INFO    ] No update needed
[2026-08-25 05:39:01,255.255 INFO    ] Checking for camera pi updates...
[2026-08-25 05:39:01,307.307 INFO    ] 200
[2026-08-25 05:39:01,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:01,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:39:01,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:39:01,415.415 INFO    ] No camera update needed
[2026-08-25 05:39:01,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:39:01,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:39:01,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:39:01,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:39:03,480.480 INFO    ] ================================================
[2026-08-25 05:39:03,495.495 INFO    ] Launching Daemon at Tue Aug 25 05:39:03 IST 2026
[2026-08-25 05:39:03,506.506 INFO    ] ================================================
[2026-08-25 05:39:04,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:39:04
[2026-08-25 05:39:04,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:39:05,030.030 INFO    ] Initializing speech engine...
[2026-08-25 05:39:05,040.040 INFO    ] 2026-08-25 05:39:05
[2026-08-25 05:39:05,318.318 INFO    ] 2026-08-25 05:39:05
[2026-08-25 05:39:05,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:39:05,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:39:05,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:39:05,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:39:05,863.863 INFO    ] time= 25/08/2026 05:39:05
[2026-08-25 05:39:05,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:39:05,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:39:05,991.991 INFO    ] No existing commands found in stream
[2026-08-25 05:39:11,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:39:11,003.003 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 05:39:12,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:39:12,315.315 INFO    ] Checking for system updates...
[2026-08-25 05:39:12,352.352 INFO    ] 200
[2026-08-25 05:39:12,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:12,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:12,412.412 INFO    ] No update needed
[2026-08-25 05:39:12,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 05:39:12,449.449 INFO    ] 200
[2026-08-25 05:39:12,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:12,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:39:12,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:12,557.557 INFO    ] No camera update needed
[2026-08-25 05:39:12,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:39:12,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:39:12,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:39:12,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:39:14,615.615 INFO    ] ================================================
[2026-08-25 05:39:14,630.630 INFO    ] Launching Daemon at Tue Aug 25 05:39:14 IST 2026
[2026-08-25 05:39:14,640.640 INFO    ] ================================================
[2026-08-25 05:39:15,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:39:15
[2026-08-25 05:39:15,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:39:16,059.059 INFO    ] Initializing speech engine...
[2026-08-25 05:39:16,072.072 INFO    ] 2026-08-25 05:39:16
[2026-08-25 05:39:16,329.329 INFO    ] 2026-08-25 05:39:16
[2026-08-25 05:39:16,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:39:16,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:39:16,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:39:16,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:39:16,786.786 INFO    ] time= 25/08/2026 05:39:16
[2026-08-25 05:39:16,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:39:16,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:39:16,974.974 INFO    ] No existing commands found in stream
[2026-08-25 05:39:22,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:39:22,009.009 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 05:39:25,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:39:25,122.122 INFO    ] Checking for system updates...
[2026-08-25 05:39:25,160.160 INFO    ] 200
[2026-08-25 05:39:25,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:25,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:25,218.218 INFO    ] No update needed
[2026-08-25 05:39:25,221.221 INFO    ] Checking for camera pi updates...
[2026-08-25 05:39:25,254.254 INFO    ] 200
[2026-08-25 05:39:25,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:25,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:39:25,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:25,354.354 INFO    ] No camera update needed
[2026-08-25 05:39:25,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:39:25,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:39:25,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:39:25,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:39:27,409.409 INFO    ] ================================================
[2026-08-25 05:39:27,424.424 INFO    ] Launching Daemon at Tue Aug 25 05:39:27 IST 2026
[2026-08-25 05:39:27,439.439 INFO    ] ================================================
[2026-08-25 05:39:28,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:39:28
[2026-08-25 05:39:28,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:39:29,040.040 INFO    ] Initializing speech engine...
[2026-08-25 05:39:29,048.048 INFO    ] 2026-08-25 05:39:29
[2026-08-25 05:39:29,330.330 INFO    ] 2026-08-25 05:39:29
[2026-08-25 05:39:29,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:39:29,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:39:29,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:39:29,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:39:29,863.863 INFO    ] time= 25/08/2026 05:39:29
[2026-08-25 05:39:29,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:39:29,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:39:30,021.021 INFO    ] No existing commands found in stream
[2026-08-25 05:39:35,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:39:35,053.053 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 05:39:35,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:39:35,791.791 INFO    ] Checking for system updates...
[2026-08-25 05:39:35,828.828 INFO    ] 200
[2026-08-25 05:39:35,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:35,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:39:35,897.897 INFO    ] No update needed
[2026-08-25 05:39:35,900.900 INFO    ] Checking for camera pi updates...
[2026-08-25 05:39:35,933.933 INFO    ] 200
[2026-08-25 05:39:35,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:35,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:39:36,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:39:36,023.023 INFO    ] No camera update needed
[2026-08-25 05:39:36,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:39:36,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:39:36,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:39:36,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:39:38,077.077 INFO    ] ================================================
[2026-08-25 05:39:38,091.091 INFO    ] Launching Daemon at Tue Aug 25 05:39:38 IST 2026
[2026-08-25 05:39:38,102.102 INFO    ] ================================================
[2026-08-25 05:39:38,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:39:38
[2026-08-25 05:39:39,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:39:39,503.503 INFO    ] Initializing speech engine...
[2026-08-25 05:39:39,512.512 INFO    ] 2026-08-25 05:39:39
[2026-08-25 05:39:39,805.805 INFO    ] 2026-08-25 05:39:39
[2026-08-25 05:39:39,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:39:39,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:39:39,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:39:40,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:39:40,151.151 INFO    ] time= 25/08/2026 05:39:40
[2026-08-25 05:39:40,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:39:40,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:39:40,231.231 INFO    ] No existing commands found in stream
[2026-08-25 05:39:45,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:39:45,244.244 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 05:39:46,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:39:46,491.491 INFO    ] Checking for system updates...
[2026-08-25 05:39:46,530.530 INFO    ] 200
[2026-08-25 05:39:46,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:46,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:46,588.588 INFO    ] No update needed
[2026-08-25 05:39:46,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 05:39:46,624.624 INFO    ] 200
[2026-08-25 05:39:46,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:46,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:39:46,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:46,714.714 INFO    ] No camera update needed
[2026-08-25 05:39:46,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:39:46,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:39:46,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:39:46,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:39:48,768.768 INFO    ] ================================================
[2026-08-25 05:39:48,783.783 INFO    ] Launching Daemon at Tue Aug 25 05:39:48 IST 2026
[2026-08-25 05:39:48,793.793 INFO    ] ================================================
[2026-08-25 05:39:49,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:39:49
[2026-08-25 05:39:50,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:39:50,286.286 INFO    ] Initializing speech engine...
[2026-08-25 05:39:50,295.295 INFO    ] 2026-08-25 05:39:50
[2026-08-25 05:39:50,560.560 INFO    ] 2026-08-25 05:39:50
[2026-08-25 05:39:50,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:39:50,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:39:50,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:39:50,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:39:50,977.977 INFO    ] time= 25/08/2026 05:39:50
[2026-08-25 05:39:50,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:39:50,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:39:51,063.063 INFO    ] No existing commands found in stream
[2026-08-25 05:39:56,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:39:56,096.096 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 05:39:59,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:39:59,052.052 INFO    ] Checking for system updates...
[2026-08-25 05:39:59,091.091 INFO    ] 200
[2026-08-25 05:39:59,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:59,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:59,155.155 INFO    ] No update needed
[2026-08-25 05:39:59,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 05:39:59,192.192 INFO    ] 200
[2026-08-25 05:39:59,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:39:59,236.236 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:39:59,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:39:59,282.282 INFO    ] No camera update needed
[2026-08-25 05:39:59,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:39:59,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:39:59,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:39:59,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:40:01,342.342 INFO    ] ================================================
[2026-08-25 05:40:01,357.357 INFO    ] Launching Daemon at Tue Aug 25 05:40:01 IST 2026
[2026-08-25 05:40:01,368.368 INFO    ] ================================================
[2026-08-25 05:40:01,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:40:01
[2026-08-25 05:40:02,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:40:03,428.428 INFO    ] Initializing speech engine...
[2026-08-25 05:40:03,450.450 INFO    ] 2026-08-25 05:40:03
[2026-08-25 05:40:03,867.867 INFO    ] 2026-08-25 05:40:03
[2026-08-25 05:40:03,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:40:04,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:40:04,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:40:04,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:40:04,295.295 INFO    ] time= 25/08/2026 05:40:04
[2026-08-25 05:40:04,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:40:04,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:40:04,440.440 INFO    ] No existing commands found in stream
[2026-08-25 05:40:09,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:40:09,456.456 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 05:40:13,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:40:13,794.794 INFO    ] Checking for system updates...
[2026-08-25 05:40:13,835.835 INFO    ] 200
[2026-08-25 05:40:13,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:13,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:40:13,895.895 INFO    ] No update needed
[2026-08-25 05:40:13,897.897 INFO    ] Checking for camera pi updates...
[2026-08-25 05:40:13,932.932 INFO    ] 200
[2026-08-25 05:40:13,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:13,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:40:14,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:40:14,024.024 INFO    ] No camera update needed
[2026-08-25 05:40:14,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:40:14,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:40:14,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:40:14,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:40:16,080.080 INFO    ] ================================================
[2026-08-25 05:40:16,095.095 INFO    ] Launching Daemon at Tue Aug 25 05:40:16 IST 2026
[2026-08-25 05:40:16,106.106 INFO    ] ================================================
[2026-08-25 05:40:16,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:40:16
[2026-08-25 05:40:17,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:40:17,560.560 INFO    ] Initializing speech engine...
[2026-08-25 05:40:17,581.581 INFO    ] 2026-08-25 05:40:17
[2026-08-25 05:40:17,849.849 INFO    ] 2026-08-25 05:40:17
[2026-08-25 05:40:17,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:40:18,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:40:18,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:40:18,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:40:18,245.245 INFO    ] time= 25/08/2026 05:40:18
[2026-08-25 05:40:18,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:40:18,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:40:18,363.363 INFO    ] No existing commands found in stream
[2026-08-25 05:40:23,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:40:23,380.380 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 05:40:24,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:40:24,580.580 INFO    ] Checking for system updates...
[2026-08-25 05:40:24,615.615 INFO    ] 200
[2026-08-25 05:40:24,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:24,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:40:24,674.674 INFO    ] No update needed
[2026-08-25 05:40:24,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 05:40:24,713.713 INFO    ] 200
[2026-08-25 05:40:24,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:24,760.760 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:40:24,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:40:24,818.818 INFO    ] No camera update needed
[2026-08-25 05:40:24,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:40:24,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:40:24,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:40:24,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:40:26,874.874 INFO    ] ================================================
[2026-08-25 05:40:26,889.889 INFO    ] Launching Daemon at Tue Aug 25 05:40:26 IST 2026
[2026-08-25 05:40:26,900.900 INFO    ] ================================================
[2026-08-25 05:40:27,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:40:27
[2026-08-25 05:40:28,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:40:28,529.529 INFO    ] Initializing speech engine...
[2026-08-25 05:40:28,536.536 INFO    ] 2026-08-25 05:40:28
[2026-08-25 05:40:28,852.852 INFO    ] 2026-08-25 05:40:28
[2026-08-25 05:40:28,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:40:29,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:40:29,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:40:29,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:40:29,292.292 INFO    ] time= 25/08/2026 05:40:29
[2026-08-25 05:40:29,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:40:29,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:40:29,519.519 INFO    ] No existing commands found in stream
[2026-08-25 05:40:34,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:40:34,548.548 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 05:40:37,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:40:37,252.252 INFO    ] Checking for system updates...
[2026-08-25 05:40:37,293.293 INFO    ] 200
[2026-08-25 05:40:37,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:37,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:40:37,359.359 INFO    ] No update needed
[2026-08-25 05:40:37,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 05:40:37,396.396 INFO    ] 200
[2026-08-25 05:40:37,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:37,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:40:37,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:40:37,493.493 INFO    ] No camera update needed
[2026-08-25 05:40:37,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:40:37,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:40:37,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:40:37,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:40:39,551.551 INFO    ] ================================================
[2026-08-25 05:40:39,567.567 INFO    ] Launching Daemon at Tue Aug 25 05:40:39 IST 2026
[2026-08-25 05:40:39,579.579 INFO    ] ================================================
[2026-08-25 05:40:40,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:40:40
[2026-08-25 05:40:40,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:40:41,067.067 INFO    ] Initializing speech engine...
[2026-08-25 05:40:41,079.079 INFO    ] 2026-08-25 05:40:41
[2026-08-25 05:40:41,358.358 INFO    ] 2026-08-25 05:40:41
[2026-08-25 05:40:41,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:40:41,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:40:41,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:40:41,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:40:41,859.859 INFO    ] time= 25/08/2026 05:40:41
[2026-08-25 05:40:41,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:40:41,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:40:42,053.053 INFO    ] No existing commands found in stream
[2026-08-25 05:40:47,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:40:47,080.080 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 05:40:49,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:40:49,498.498 INFO    ] Checking for system updates...
[2026-08-25 05:40:49,533.533 INFO    ] 200
[2026-08-25 05:40:49,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:49,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:40:49,590.590 INFO    ] No update needed
[2026-08-25 05:40:49,592.592 INFO    ] Checking for camera pi updates...
[2026-08-25 05:40:49,626.626 INFO    ] 200
[2026-08-25 05:40:49,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:40:49,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:40:49,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:40:49,820.820 INFO    ] No camera update needed
[2026-08-25 05:40:49,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:40:49,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:40:49,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:40:49,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:40:51,876.876 INFO    ] ================================================
[2026-08-25 05:40:51,892.892 INFO    ] Launching Daemon at Tue Aug 25 05:40:51 IST 2026
[2026-08-25 05:40:51,902.902 INFO    ] ================================================
[2026-08-25 05:40:52,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:40:52
[2026-08-25 05:40:53,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:40:53,313.313 INFO    ] Initializing speech engine...
[2026-08-25 05:40:53,320.320 INFO    ] 2026-08-25 05:40:53
[2026-08-25 05:40:53,620.620 INFO    ] 2026-08-25 05:40:53
[2026-08-25 05:40:53,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:40:53,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:40:53,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:40:53,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:40:54,002.002 INFO    ] time= 25/08/2026 05:40:53
[2026-08-25 05:40:54,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:40:54,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:40:54,117.117 INFO    ] No existing commands found in stream
[2026-08-25 05:40:59,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:40:59,145.145 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 05:41:00,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:41:00,540.540 INFO    ] Checking for system updates...
[2026-08-25 05:41:00,580.580 INFO    ] 200
[2026-08-25 05:41:00,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:00,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:41:00,644.644 INFO    ] No update needed
[2026-08-25 05:41:00,647.647 INFO    ] Checking for camera pi updates...
[2026-08-25 05:41:00,680.680 INFO    ] 200
[2026-08-25 05:41:00,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:00,722.722 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:41:00,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:41:00,780.780 INFO    ] No camera update needed
[2026-08-25 05:41:00,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:41:00,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:41:00,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:41:00,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:41:02,841.841 INFO    ] ================================================
[2026-08-25 05:41:02,861.861 INFO    ] Launching Daemon at Tue Aug 25 05:41:02 IST 2026
[2026-08-25 05:41:02,872.872 INFO    ] ================================================
[2026-08-25 05:41:03,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:41:03
[2026-08-25 05:41:04,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:41:04,337.337 INFO    ] Initializing speech engine...
[2026-08-25 05:41:04,345.345 INFO    ] 2026-08-25 05:41:04
[2026-08-25 05:41:04,595.595 INFO    ] 2026-08-25 05:41:04
[2026-08-25 05:41:04,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:41:04,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:41:04,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:41:04,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:41:04,972.972 INFO    ] time= 25/08/2026 05:41:04
[2026-08-25 05:41:04,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:41:05,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:41:05,162.162 INFO    ] No existing commands found in stream
[2026-08-25 05:41:10,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:41:10,186.186 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 05:41:13,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:41:13,457.457 INFO    ] Checking for system updates...
[2026-08-25 05:41:13,493.493 INFO    ] 200
[2026-08-25 05:41:13,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:13,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:41:13,560.560 INFO    ] No update needed
[2026-08-25 05:41:13,562.562 INFO    ] Checking for camera pi updates...
[2026-08-25 05:41:13,597.597 INFO    ] 200
[2026-08-25 05:41:13,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:13,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:41:13,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:41:13,692.692 INFO    ] No camera update needed
[2026-08-25 05:41:13,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:41:13,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:41:13,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:41:13,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:41:15,748.748 INFO    ] ================================================
[2026-08-25 05:41:15,763.763 INFO    ] Launching Daemon at Tue Aug 25 05:41:15 IST 2026
[2026-08-25 05:41:15,774.774 INFO    ] ================================================
[2026-08-25 05:41:16,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:41:16
[2026-08-25 05:41:16,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:41:17,233.233 INFO    ] Initializing speech engine...
[2026-08-25 05:41:17,240.240 INFO    ] 2026-08-25 05:41:17
[2026-08-25 05:41:17,501.501 INFO    ] 2026-08-25 05:41:17
[2026-08-25 05:41:17,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:41:17,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:41:17,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:41:17,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:41:17,954.954 INFO    ] time= 25/08/2026 05:41:17
[2026-08-25 05:41:18,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:41:18,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:41:18,194.194 INFO    ] No existing commands found in stream
[2026-08-25 05:41:23,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:41:23,211.211 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 05:41:24,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:41:24,517.517 INFO    ] Checking for system updates...
[2026-08-25 05:41:24,553.553 INFO    ] 200
[2026-08-25 05:41:24,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:24,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:41:24,612.612 INFO    ] No update needed
[2026-08-25 05:41:24,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 05:41:24,650.650 INFO    ] 200
[2026-08-25 05:41:24,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:24,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:41:24,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:41:24,765.765 INFO    ] No camera update needed
[2026-08-25 05:41:24,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:41:24,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:41:24,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:41:24,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:41:26,823.823 INFO    ] ================================================
[2026-08-25 05:41:26,838.838 INFO    ] Launching Daemon at Tue Aug 25 05:41:26 IST 2026
[2026-08-25 05:41:26,849.849 INFO    ] ================================================
[2026-08-25 05:41:27,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:41:27
[2026-08-25 05:41:27,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:41:28,245.245 INFO    ] Initializing speech engine...
[2026-08-25 05:41:28,259.259 INFO    ] 2026-08-25 05:41:28
[2026-08-25 05:41:28,522.522 INFO    ] 2026-08-25 05:41:28
[2026-08-25 05:41:28,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:41:28,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:41:28,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:41:28,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:41:28,984.984 INFO    ] time= 25/08/2026 05:41:28
[2026-08-25 05:41:29,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:41:29,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:41:29,229.229 INFO    ] No existing commands found in stream
[2026-08-25 05:41:34,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:41:34,251.251 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 05:41:37,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:41:37,741.741 INFO    ] Checking for system updates...
[2026-08-25 05:41:37,777.777 INFO    ] 200
[2026-08-25 05:41:37,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:37,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:41:37,844.844 INFO    ] No update needed
[2026-08-25 05:41:37,847.847 INFO    ] Checking for camera pi updates...
[2026-08-25 05:41:37,890.890 INFO    ] 200
[2026-08-25 05:41:37,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:37,934.934 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:41:37,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:41:37,990.990 INFO    ] No camera update needed
[2026-08-25 05:41:37,992.992 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:41:37,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:41:38,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:41:38,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:41:40,049.049 INFO    ] ================================================
[2026-08-25 05:41:40,064.064 INFO    ] Launching Daemon at Tue Aug 25 05:41:40 IST 2026
[2026-08-25 05:41:40,075.075 INFO    ] ================================================
[2026-08-25 05:41:40,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:41:40
[2026-08-25 05:41:41,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:41:41,546.546 INFO    ] Initializing speech engine...
[2026-08-25 05:41:41,556.556 INFO    ] 2026-08-25 05:41:41
[2026-08-25 05:41:41,819.819 INFO    ] 2026-08-25 05:41:41
[2026-08-25 05:41:41,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:41:42,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:41:42,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:41:42,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:41:42,325.325 INFO    ] time= 25/08/2026 05:41:42
[2026-08-25 05:41:42,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:41:42,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:41:42,503.503 INFO    ] No existing commands found in stream
[2026-08-25 05:41:47,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:41:47,530.530 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 05:41:48,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:41:48,945.945 INFO    ] Checking for system updates...
[2026-08-25 05:41:48,982.982 INFO    ] 200
[2026-08-25 05:41:48,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:49,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:41:49,042.042 INFO    ] No update needed
[2026-08-25 05:41:49,045.045 INFO    ] Checking for camera pi updates...
[2026-08-25 05:41:49,079.079 INFO    ] 200
[2026-08-25 05:41:49,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:41:49,125.125 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:41:49,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:41:49,186.186 INFO    ] No camera update needed
[2026-08-25 05:41:49,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:41:49,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:41:49,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:41:49,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:41:51,244.244 INFO    ] ================================================
[2026-08-25 05:41:51,259.259 INFO    ] Launching Daemon at Tue Aug 25 05:41:51 IST 2026
[2026-08-25 05:41:51,270.270 INFO    ] ================================================
[2026-08-25 05:41:51,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:41:51
[2026-08-25 05:41:52,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:41:52,682.682 INFO    ] Initializing speech engine...
[2026-08-25 05:41:52,688.688 INFO    ] 2026-08-25 05:41:52
[2026-08-25 05:41:52,989.989 INFO    ] 2026-08-25 05:41:52
[2026-08-25 05:41:53,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:41:53,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:41:53,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:41:53,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:41:53,374.374 INFO    ] time= 25/08/2026 05:41:53
[2026-08-25 05:41:53,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:41:53,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:41:53,501.501 INFO    ] No existing commands found in stream
[2026-08-25 05:41:58,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:41:58,516.516 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 05:42:00,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:42:00,108.108 INFO    ] Checking for system updates...
[2026-08-25 05:42:00,143.143 INFO    ] 200
[2026-08-25 05:42:00,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:00,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:00,203.203 INFO    ] No update needed
[2026-08-25 05:42:00,206.206 INFO    ] Checking for camera pi updates...
[2026-08-25 05:42:00,239.239 INFO    ] 200
[2026-08-25 05:42:00,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:00,283.283 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:42:00,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:00,333.333 INFO    ] No camera update needed
[2026-08-25 05:42:00,336.336 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:42:00,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:42:00,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:42:00,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:42:02,390.390 INFO    ] ================================================
[2026-08-25 05:42:02,407.407 INFO    ] Launching Daemon at Tue Aug 25 05:42:02 IST 2026
[2026-08-25 05:42:02,423.423 INFO    ] ================================================
[2026-08-25 05:42:03,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:42:03
[2026-08-25 05:42:03,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:42:03,970.970 INFO    ] Initializing speech engine...
[2026-08-25 05:42:03,979.979 INFO    ] 2026-08-25 05:42:03
[2026-08-25 05:42:04,272.272 INFO    ] 2026-08-25 05:42:04
[2026-08-25 05:42:04,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:42:04,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:42:04,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:42:04,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:42:04,622.622 INFO    ] time= 25/08/2026 05:42:04
[2026-08-25 05:42:04,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:42:04,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:42:04,771.771 INFO    ] No existing commands found in stream
[2026-08-25 05:42:09,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:42:09,787.787 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 05:42:11,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:42:11,507.507 INFO    ] Checking for system updates...
[2026-08-25 05:42:11,544.544 INFO    ] 200
[2026-08-25 05:42:11,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:11,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:42:11,609.609 INFO    ] No update needed
[2026-08-25 05:42:11,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 05:42:11,646.646 INFO    ] 200
[2026-08-25 05:42:11,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:11,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:42:11,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:42:11,765.765 INFO    ] No camera update needed
[2026-08-25 05:42:11,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:42:11,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:42:11,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:42:11,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:42:13,822.822 INFO    ] ================================================
[2026-08-25 05:42:13,841.841 INFO    ] Launching Daemon at Tue Aug 25 05:42:13 IST 2026
[2026-08-25 05:42:13,852.852 INFO    ] ================================================
[2026-08-25 05:42:14,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:42:14
[2026-08-25 05:42:14,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:42:15,267.267 INFO    ] Initializing speech engine...
[2026-08-25 05:42:15,277.277 INFO    ] 2026-08-25 05:42:15
[2026-08-25 05:42:15,522.522 INFO    ] 2026-08-25 05:42:15
[2026-08-25 05:42:15,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:42:15,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:42:15,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:42:15,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:42:16,009.009 INFO    ] time= 25/08/2026 05:42:15
[2026-08-25 05:42:16,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:42:16,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:42:16,195.195 INFO    ] No existing commands found in stream
[2026-08-25 05:42:21,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:42:21,219.219 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 05:42:24,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:42:24,877.877 INFO    ] Checking for system updates...
[2026-08-25 05:42:24,913.913 INFO    ] 200
[2026-08-25 05:42:24,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:24,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:24,970.970 INFO    ] No update needed
[2026-08-25 05:42:24,973.973 INFO    ] Checking for camera pi updates...
[2026-08-25 05:42:25,007.007 INFO    ] 200
[2026-08-25 05:42:25,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:25,054.054 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:42:25,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:25,102.102 INFO    ] No camera update needed
[2026-08-25 05:42:25,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:42:25,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:42:25,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:42:25,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:42:27,158.158 INFO    ] ================================================
[2026-08-25 05:42:27,173.173 INFO    ] Launching Daemon at Tue Aug 25 05:42:27 IST 2026
[2026-08-25 05:42:27,184.184 INFO    ] ================================================
[2026-08-25 05:42:27,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:42:27
[2026-08-25 05:42:28,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:42:28,786.786 INFO    ] Initializing speech engine...
[2026-08-25 05:42:28,794.794 INFO    ] 2026-08-25 05:42:28
[2026-08-25 05:42:29,041.041 INFO    ] 2026-08-25 05:42:29
[2026-08-25 05:42:29,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:42:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:42:29,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:42:29,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:42:29,510.510 INFO    ] time= 25/08/2026 05:42:29
[2026-08-25 05:42:29,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:42:29,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:42:29,724.724 INFO    ] No existing commands found in stream
[2026-08-25 05:42:34,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:42:34,752.752 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 05:42:38,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:42:38,492.492 INFO    ] Checking for system updates...
[2026-08-25 05:42:38,528.528 INFO    ] 200
[2026-08-25 05:42:38,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:38,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:38,585.585 INFO    ] No update needed
[2026-08-25 05:42:38,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 05:42:38,621.621 INFO    ] 200
[2026-08-25 05:42:38,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:38,664.664 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:42:38,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:38,721.721 INFO    ] No camera update needed
[2026-08-25 05:42:38,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:42:38,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:42:38,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:42:38,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:42:40,781.781 INFO    ] ================================================
[2026-08-25 05:42:40,796.796 INFO    ] Launching Daemon at Tue Aug 25 05:42:40 IST 2026
[2026-08-25 05:42:40,806.806 INFO    ] ================================================
[2026-08-25 05:42:41,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:42:41
[2026-08-25 05:42:41,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:42:42,267.267 INFO    ] Initializing speech engine...
[2026-08-25 05:42:42,275.275 INFO    ] 2026-08-25 05:42:42
[2026-08-25 05:42:42,527.527 INFO    ] 2026-08-25 05:42:42
[2026-08-25 05:42:42,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:42:42,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:42:42,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:42:42,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:42:42,905.905 INFO    ] time= 25/08/2026 05:42:42
[2026-08-25 05:42:42,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:42:42,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:42:43,080.080 INFO    ] No existing commands found in stream
[2026-08-25 05:42:48,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:42:48,112.112 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 05:42:50,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:42:50,410.410 INFO    ] Checking for system updates...
[2026-08-25 05:42:50,446.446 INFO    ] 200
[2026-08-25 05:42:50,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:50,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:50,503.503 INFO    ] No update needed
[2026-08-25 05:42:50,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 05:42:50,539.539 INFO    ] 200
[2026-08-25 05:42:50,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:42:50,582.582 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:42:50,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:42:50,638.638 INFO    ] No camera update needed
[2026-08-25 05:42:50,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:42:50,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:42:50,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:42:50,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:42:52,693.693 INFO    ] ================================================
[2026-08-25 05:42:52,708.708 INFO    ] Launching Daemon at Tue Aug 25 05:42:52 IST 2026
[2026-08-25 05:42:52,718.718 INFO    ] ================================================
[2026-08-25 05:42:53,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:42:53
[2026-08-25 05:42:53,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:42:54,113.113 INFO    ] Initializing speech engine...
[2026-08-25 05:42:54,133.133 INFO    ] 2026-08-25 05:42:54
[2026-08-25 05:42:54,390.390 INFO    ] 2026-08-25 05:42:54
[2026-08-25 05:42:54,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:42:54,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:42:54,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:42:54,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:42:54,866.866 INFO    ] time= 25/08/2026 05:42:54
[2026-08-25 05:42:54,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:42:54,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:42:55,081.081 INFO    ] No existing commands found in stream
[2026-08-25 05:43:00,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:43:00,111.111 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 05:43:04,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:43:04,248.248 INFO    ] Checking for system updates...
[2026-08-25 05:43:04,283.283 INFO    ] 200
[2026-08-25 05:43:04,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:04,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:04,342.342 INFO    ] No update needed
[2026-08-25 05:43:04,345.345 INFO    ] Checking for camera pi updates...
[2026-08-25 05:43:04,380.380 INFO    ] 200
[2026-08-25 05:43:04,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:04,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:43:04,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:04,491.491 INFO    ] No camera update needed
[2026-08-25 05:43:04,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:43:04,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:43:04,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:43:04,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:43:06,547.547 INFO    ] ================================================
[2026-08-25 05:43:06,562.562 INFO    ] Launching Daemon at Tue Aug 25 05:43:06 IST 2026
[2026-08-25 05:43:06,572.572 INFO    ] ================================================
[2026-08-25 05:43:07,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:43:07
[2026-08-25 05:43:07,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:43:08,145.145 INFO    ] Initializing speech engine...
[2026-08-25 05:43:08,153.153 INFO    ] 2026-08-25 05:43:08
[2026-08-25 05:43:08,422.422 INFO    ] 2026-08-25 05:43:08
[2026-08-25 05:43:08,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:43:08,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:43:08,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:43:08,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:43:08,907.907 INFO    ] time= 25/08/2026 05:43:08
[2026-08-25 05:43:08,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:43:08,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:43:09,119.119 INFO    ] No existing commands found in stream
[2026-08-25 05:43:14,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:43:14,141.141 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 05:43:17,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:43:17,191.191 INFO    ] Checking for system updates...
[2026-08-25 05:43:17,230.230 INFO    ] 200
[2026-08-25 05:43:17,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:17,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:17,292.292 INFO    ] No update needed
[2026-08-25 05:43:17,295.295 INFO    ] Checking for camera pi updates...
[2026-08-25 05:43:17,329.329 INFO    ] 200
[2026-08-25 05:43:17,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:17,372.372 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:43:17,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:17,427.427 INFO    ] No camera update needed
[2026-08-25 05:43:17,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:43:17,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:43:17,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:43:17,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:43:19,483.483 INFO    ] ================================================
[2026-08-25 05:43:19,498.498 INFO    ] Launching Daemon at Tue Aug 25 05:43:19 IST 2026
[2026-08-25 05:43:19,508.508 INFO    ] ================================================
[2026-08-25 05:43:20,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:43:20
[2026-08-25 05:43:20,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:43:20,921.921 INFO    ] Initializing speech engine...
[2026-08-25 05:43:20,940.940 INFO    ] 2026-08-25 05:43:20
[2026-08-25 05:43:21,188.188 INFO    ] 2026-08-25 05:43:21
[2026-08-25 05:43:21,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:43:21,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:43:21,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:43:21,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:43:21,662.662 INFO    ] time= 25/08/2026 05:43:21
[2026-08-25 05:43:21,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:43:21,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:43:21,880.880 INFO    ] No existing commands found in stream
[2026-08-25 05:43:26,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:43:26,904.904 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 05:43:29,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:43:29,989.989 INFO    ] Checking for system updates...
[2026-08-25 05:43:30,024.024 INFO    ] 200
[2026-08-25 05:43:30,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:30,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:30,082.082 INFO    ] No update needed
[2026-08-25 05:43:30,084.084 INFO    ] Checking for camera pi updates...
[2026-08-25 05:43:30,118.118 INFO    ] 200
[2026-08-25 05:43:30,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:30,161.161 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:43:30,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:30,216.216 INFO    ] No camera update needed
[2026-08-25 05:43:30,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:43:30,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:43:30,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:43:30,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:43:32,273.273 INFO    ] ================================================
[2026-08-25 05:43:32,289.289 INFO    ] Launching Daemon at Tue Aug 25 05:43:32 IST 2026
[2026-08-25 05:43:32,301.301 INFO    ] ================================================
[2026-08-25 05:43:32,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:43:32
[2026-08-25 05:43:33,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:43:33,748.748 INFO    ] Initializing speech engine...
[2026-08-25 05:43:33,755.755 INFO    ] 2026-08-25 05:43:33
[2026-08-25 05:43:34,002.002 INFO    ] 2026-08-25 05:43:33
[2026-08-25 05:43:34,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:43:34,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:43:34,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:43:34,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:43:34,414.414 INFO    ] time= 25/08/2026 05:43:34
[2026-08-25 05:43:34,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:43:34,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:43:34,576.576 INFO    ] No existing commands found in stream
[2026-08-25 05:43:39,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:43:39,599.599 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 05:43:43,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:43:43,425.425 INFO    ] Checking for system updates...
[2026-08-25 05:43:43,462.462 INFO    ] 200
[2026-08-25 05:43:43,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:43,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:43,521.521 INFO    ] No update needed
[2026-08-25 05:43:43,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 05:43:43,557.557 INFO    ] 200
[2026-08-25 05:43:43,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:43,599.599 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:43:43,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:43:43,660.660 INFO    ] No camera update needed
[2026-08-25 05:43:43,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:43:43,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:43:43,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:43:43,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:43:45,715.715 INFO    ] ================================================
[2026-08-25 05:43:45,730.730 INFO    ] Launching Daemon at Tue Aug 25 05:43:45 IST 2026
[2026-08-25 05:43:45,741.741 INFO    ] ================================================
[2026-08-25 05:43:46,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:43:46
[2026-08-25 05:43:46,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:43:47,148.148 INFO    ] Initializing speech engine...
[2026-08-25 05:43:47,172.172 INFO    ] 2026-08-25 05:43:47
[2026-08-25 05:43:47,443.443 INFO    ] 2026-08-25 05:43:47
[2026-08-25 05:43:47,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:43:47,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:43:47,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:43:47,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:43:47,814.814 INFO    ] time= 25/08/2026 05:43:47
[2026-08-25 05:43:47,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:43:47,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:43:47,936.936 INFO    ] No existing commands found in stream
[2026-08-25 05:43:52,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:43:52,951.951 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 05:43:55,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:43:55,218.218 INFO    ] Checking for system updates...
[2026-08-25 05:43:55,254.254 INFO    ] 200
[2026-08-25 05:43:55,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:55,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:43:55,312.312 INFO    ] No update needed
[2026-08-25 05:43:55,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 05:43:55,349.349 INFO    ] 200
[2026-08-25 05:43:55,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:43:55,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:43:55,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:43:55,437.437 INFO    ] No camera update needed
[2026-08-25 05:43:55,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:43:55,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:43:55,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:43:55,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:43:57,491.491 INFO    ] ================================================
[2026-08-25 05:43:57,506.506 INFO    ] Launching Daemon at Tue Aug 25 05:43:57 IST 2026
[2026-08-25 05:43:57,516.516 INFO    ] ================================================
[2026-08-25 05:43:58,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:43:58
[2026-08-25 05:43:58,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:43:58,974.974 INFO    ] Initializing speech engine...
[2026-08-25 05:43:58,981.981 INFO    ] 2026-08-25 05:43:58
[2026-08-25 05:43:59,244.244 INFO    ] 2026-08-25 05:43:59
[2026-08-25 05:43:59,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:43:59,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:43:59,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:43:59,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:43:59,719.719 INFO    ] time= 25/08/2026 05:43:59
[2026-08-25 05:43:59,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:43:59,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:43:59,938.938 INFO    ] No existing commands found in stream
[2026-08-25 05:44:04,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:44:04,956.956 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 05:44:05,855.855 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:44:05,858.858 INFO    ] Checking for system updates...
[2026-08-25 05:44:05,895.895 INFO    ] 200
[2026-08-25 05:44:05,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:05,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:44:05,958.958 INFO    ] No update needed
[2026-08-25 05:44:05,960.960 INFO    ] Checking for camera pi updates...
[2026-08-25 05:44:05,994.994 INFO    ] 200
[2026-08-25 05:44:05,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:06,037.037 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:44:06,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:44:06,088.088 INFO    ] No camera update needed
[2026-08-25 05:44:06,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:44:06,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:44:06,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:44:06,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:44:08,142.142 INFO    ] ================================================
[2026-08-25 05:44:08,158.158 INFO    ] Launching Daemon at Tue Aug 25 05:44:08 IST 2026
[2026-08-25 05:44:08,168.168 INFO    ] ================================================
[2026-08-25 05:44:08,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:44:08
[2026-08-25 05:44:09,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:44:09,769.769 INFO    ] Initializing speech engine...
[2026-08-25 05:44:09,781.781 INFO    ] 2026-08-25 05:44:09
[2026-08-25 05:44:10,088.088 INFO    ] 2026-08-25 05:44:10
[2026-08-25 05:44:10,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:44:10,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:44:10,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:44:10,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:44:10,502.502 INFO    ] time= 25/08/2026 05:44:10
[2026-08-25 05:44:10,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:44:10,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:44:10,671.671 INFO    ] No existing commands found in stream
[2026-08-25 05:44:15,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:44:15,687.687 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 05:44:18,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:44:18,070.070 INFO    ] Checking for system updates...
[2026-08-25 05:44:18,106.106 INFO    ] 200
[2026-08-25 05:44:18,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:18,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:44:18,167.167 INFO    ] No update needed
[2026-08-25 05:44:18,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 05:44:18,203.203 INFO    ] 200
[2026-08-25 05:44:18,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:18,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:44:18,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:44:18,293.293 INFO    ] No camera update needed
[2026-08-25 05:44:18,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:44:18,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:44:18,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:44:18,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:44:20,347.347 INFO    ] ================================================
[2026-08-25 05:44:20,362.362 INFO    ] Launching Daemon at Tue Aug 25 05:44:20 IST 2026
[2026-08-25 05:44:20,372.372 INFO    ] ================================================
[2026-08-25 05:44:20,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:44:20
[2026-08-25 05:44:21,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:44:21,790.790 INFO    ] Initializing speech engine...
[2026-08-25 05:44:21,800.800 INFO    ] 2026-08-25 05:44:21
[2026-08-25 05:44:22,050.050 INFO    ] 2026-08-25 05:44:22
[2026-08-25 05:44:22,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:44:22,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:44:22,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:44:22,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:44:22,519.519 INFO    ] time= 25/08/2026 05:44:22
[2026-08-25 05:44:22,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:44:22,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:44:22,754.754 INFO    ] No existing commands found in stream
[2026-08-25 05:44:27,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:44:27,782.782 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 05:44:31,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:44:31,614.614 INFO    ] Checking for system updates...
[2026-08-25 05:44:31,653.653 INFO    ] 200
[2026-08-25 05:44:31,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:31,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:44:31,722.722 INFO    ] No update needed
[2026-08-25 05:44:31,725.725 INFO    ] Checking for camera pi updates...
[2026-08-25 05:44:31,761.761 INFO    ] 200
[2026-08-25 05:44:31,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:31,808.808 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:44:31,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:44:31,889.889 INFO    ] No camera update needed
[2026-08-25 05:44:31,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:44:31,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:44:31,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:44:31,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:44:33,949.949 INFO    ] ================================================
[2026-08-25 05:44:33,964.964 INFO    ] Launching Daemon at Tue Aug 25 05:44:33 IST 2026
[2026-08-25 05:44:33,974.974 INFO    ] ================================================
[2026-08-25 05:44:34,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:44:34
[2026-08-25 05:44:35,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:44:35,456.456 INFO    ] Initializing speech engine...
[2026-08-25 05:44:35,465.465 INFO    ] 2026-08-25 05:44:35
[2026-08-25 05:44:35,725.725 INFO    ] 2026-08-25 05:44:35
[2026-08-25 05:44:35,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:44:36,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:44:36,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:44:36,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:44:36,180.180 INFO    ] time= 25/08/2026 05:44:36
[2026-08-25 05:44:36,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:44:36,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:44:36,424.424 INFO    ] No existing commands found in stream
[2026-08-25 05:44:41,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:44:41,444.444 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 05:44:45,627.627 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:44:45,629.629 INFO    ] Checking for system updates...
[2026-08-25 05:44:45,664.664 INFO    ] 200
[2026-08-25 05:44:45,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:45,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:44:45,725.725 INFO    ] No update needed
[2026-08-25 05:44:45,727.727 INFO    ] Checking for camera pi updates...
[2026-08-25 05:44:45,764.764 INFO    ] 200
[2026-08-25 05:44:45,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:45,807.807 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:44:45,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:44:45,865.865 INFO    ] No camera update needed
[2026-08-25 05:44:45,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:44:45,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:44:45,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:44:45,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:44:47,918.918 INFO    ] ================================================
[2026-08-25 05:44:47,933.933 INFO    ] Launching Daemon at Tue Aug 25 05:44:47 IST 2026
[2026-08-25 05:44:47,944.944 INFO    ] ================================================
[2026-08-25 05:44:48,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:44:48
[2026-08-25 05:44:49,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:44:49,358.358 INFO    ] Initializing speech engine...
[2026-08-25 05:44:49,367.367 INFO    ] 2026-08-25 05:44:49
[2026-08-25 05:44:49,657.657 INFO    ] 2026-08-25 05:44:49
[2026-08-25 05:44:49,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:44:49,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:44:49,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:44:50,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:44:50,072.072 INFO    ] time= 25/08/2026 05:44:50
[2026-08-25 05:44:50,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:44:50,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:44:50,156.156 INFO    ] No existing commands found in stream
[2026-08-25 05:44:55,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:44:55,171.171 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 05:44:56,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:44:56,973.973 INFO    ] Checking for system updates...
[2026-08-25 05:44:57,009.009 INFO    ] 200
[2026-08-25 05:44:57,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:57,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:44:57,068.068 INFO    ] No update needed
[2026-08-25 05:44:57,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 05:44:57,107.107 INFO    ] 200
[2026-08-25 05:44:57,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:44:57,154.154 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:44:57,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:44:57,207.207 INFO    ] No camera update needed
[2026-08-25 05:44:57,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:44:57,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:44:57,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:44:57,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:44:59,261.261 INFO    ] ================================================
[2026-08-25 05:44:59,276.276 INFO    ] Launching Daemon at Tue Aug 25 05:44:59 IST 2026
[2026-08-25 05:44:59,286.286 INFO    ] ================================================
[2026-08-25 05:44:59,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:44:59
[2026-08-25 05:45:00,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:45:00,711.711 INFO    ] Initializing speech engine...
[2026-08-25 05:45:00,720.720 INFO    ] 2026-08-25 05:45:00
[2026-08-25 05:45:00,992.992 INFO    ] 2026-08-25 05:45:00
[2026-08-25 05:45:01,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:45:01,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:45:01,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:45:01,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:45:01,509.509 INFO    ] time= 25/08/2026 05:45:01
[2026-08-25 05:45:01,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:45:01,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:45:01,673.673 INFO    ] No existing commands found in stream
[2026-08-25 05:45:06,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:45:06,687.687 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 05:45:09,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:45:09,743.743 INFO    ] Checking for system updates...
[2026-08-25 05:45:09,779.779 INFO    ] 200
[2026-08-25 05:45:09,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:09,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:45:09,836.836 INFO    ] No update needed
[2026-08-25 05:45:09,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 05:45:09,874.874 INFO    ] 200
[2026-08-25 05:45:09,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:09,917.917 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:45:10,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:45:10,067.067 INFO    ] No camera update needed
[2026-08-25 05:45:10,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:45:10,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:45:10,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:45:10,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:45:12,121.121 INFO    ] ================================================
[2026-08-25 05:45:12,136.136 INFO    ] Launching Daemon at Tue Aug 25 05:45:12 IST 2026
[2026-08-25 05:45:12,147.147 INFO    ] ================================================
[2026-08-25 05:45:12,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:45:12
[2026-08-25 05:45:13,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:45:13,585.585 INFO    ] Initializing speech engine...
[2026-08-25 05:45:13,594.594 INFO    ] 2026-08-25 05:45:13
[2026-08-25 05:45:13,883.883 INFO    ] 2026-08-25 05:45:13
[2026-08-25 05:45:13,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:45:14,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:45:14,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:45:14,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:45:14,288.288 INFO    ] time= 25/08/2026 05:45:14
[2026-08-25 05:45:14,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:45:14,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:45:14,478.478 INFO    ] No existing commands found in stream
[2026-08-25 05:45:19,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:45:19,511.511 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 05:45:21,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:45:21,259.259 INFO    ] Checking for system updates...
[2026-08-25 05:45:21,296.296 INFO    ] 200
[2026-08-25 05:45:21,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:21,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:45:21,358.358 INFO    ] No update needed
[2026-08-25 05:45:21,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 05:45:21,396.396 INFO    ] 200
[2026-08-25 05:45:21,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:21,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:45:21,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:45:21,492.492 INFO    ] No camera update needed
[2026-08-25 05:45:21,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:45:21,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:45:21,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:45:21,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:45:23,546.546 INFO    ] ================================================
[2026-08-25 05:45:23,561.561 INFO    ] Launching Daemon at Tue Aug 25 05:45:23 IST 2026
[2026-08-25 05:45:23,571.571 INFO    ] ================================================
[2026-08-25 05:45:24,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:45:24
[2026-08-25 05:45:24,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:45:24,993.993 INFO    ] Initializing speech engine...
[2026-08-25 05:45:25,003.003 INFO    ] 2026-08-25 05:45:24
[2026-08-25 05:45:25,259.259 INFO    ] 2026-08-25 05:45:25
[2026-08-25 05:45:25,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:45:25,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:45:25,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:45:25,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:45:25,738.738 INFO    ] time= 25/08/2026 05:45:25
[2026-08-25 05:45:25,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:45:25,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:45:25,954.954 INFO    ] No existing commands found in stream
[2026-08-25 05:45:30,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:45:30,983.983 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 05:45:33,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:45:33,072.072 INFO    ] Checking for system updates...
[2026-08-25 05:45:33,109.109 INFO    ] 200
[2026-08-25 05:45:33,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:33,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:45:33,167.167 INFO    ] No update needed
[2026-08-25 05:45:33,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 05:45:33,206.206 INFO    ] 200
[2026-08-25 05:45:33,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:33,249.249 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:45:33,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:45:33,306.306 INFO    ] No camera update needed
[2026-08-25 05:45:33,308.308 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:45:33,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:45:33,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:45:33,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:45:35,360.360 INFO    ] ================================================
[2026-08-25 05:45:35,375.375 INFO    ] Launching Daemon at Tue Aug 25 05:45:35 IST 2026
[2026-08-25 05:45:35,386.386 INFO    ] ================================================
[2026-08-25 05:45:35,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:45:35
[2026-08-25 05:45:36,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:45:36,847.847 INFO    ] Initializing speech engine...
[2026-08-25 05:45:36,860.860 INFO    ] 2026-08-25 05:45:36
[2026-08-25 05:45:37,115.115 INFO    ] 2026-08-25 05:45:37
[2026-08-25 05:45:37,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:45:37,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:45:37,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:45:37,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:45:37,645.645 INFO    ] time= 25/08/2026 05:45:37
[2026-08-25 05:45:37,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:45:37,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:45:37,796.796 INFO    ] No existing commands found in stream
[2026-08-25 05:45:42,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:45:42,824.824 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 05:45:45,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:45:45,869.869 INFO    ] Checking for system updates...
[2026-08-25 05:45:45,908.908 INFO    ] 200
[2026-08-25 05:45:45,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:45,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:45:45,966.966 INFO    ] No update needed
[2026-08-25 05:45:45,969.969 INFO    ] Checking for camera pi updates...
[2026-08-25 05:45:46,007.007 INFO    ] 200
[2026-08-25 05:45:46,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:46,053.053 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:45:46,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:45:46,100.100 INFO    ] No camera update needed
[2026-08-25 05:45:46,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:45:46,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:45:46,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:45:46,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:45:48,155.155 INFO    ] ================================================
[2026-08-25 05:45:48,176.176 INFO    ] Launching Daemon at Tue Aug 25 05:45:48 IST 2026
[2026-08-25 05:45:48,186.186 INFO    ] ================================================
[2026-08-25 05:45:48,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:45:48
[2026-08-25 05:45:49,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:45:49,642.642 INFO    ] Initializing speech engine...
[2026-08-25 05:45:49,655.655 INFO    ] 2026-08-25 05:45:49
[2026-08-25 05:45:49,915.915 INFO    ] 2026-08-25 05:45:49
[2026-08-25 05:45:49,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:45:50,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:45:50,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:45:50,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:45:50,322.322 INFO    ] time= 25/08/2026 05:45:50
[2026-08-25 05:45:50,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:45:50,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:45:50,471.471 INFO    ] No existing commands found in stream
[2026-08-25 05:45:55,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:45:55,499.499 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 05:45:58,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:45:58,057.057 INFO    ] Checking for system updates...
[2026-08-25 05:45:58,092.092 INFO    ] 200
[2026-08-25 05:45:58,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:58,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:45:58,150.150 INFO    ] No update needed
[2026-08-25 05:45:58,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 05:45:58,191.191 INFO    ] 200
[2026-08-25 05:45:58,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:45:58,237.237 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:45:58,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:45:58,296.296 INFO    ] No camera update needed
[2026-08-25 05:45:58,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:45:58,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:45:58,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:45:58,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:46:00,351.351 INFO    ] ================================================
[2026-08-25 05:46:00,366.366 INFO    ] Launching Daemon at Tue Aug 25 05:46:00 IST 2026
[2026-08-25 05:46:00,376.376 INFO    ] ================================================
[2026-08-25 05:46:00,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:46:00
[2026-08-25 05:46:01,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:46:01,816.816 INFO    ] Initializing speech engine...
[2026-08-25 05:46:01,823.823 INFO    ] 2026-08-25 05:46:01
[2026-08-25 05:46:02,272.272 INFO    ] 2026-08-25 05:46:02
[2026-08-25 05:46:02,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:46:02,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:46:02,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:46:02,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:46:02,823.823 INFO    ] time= 25/08/2026 05:46:02
[2026-08-25 05:46:02,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:46:02,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:46:03,091.091 INFO    ] No existing commands found in stream
[2026-08-25 05:46:08,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:46:08,136.136 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 05:46:11,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:46:11,170.170 INFO    ] Checking for system updates...
[2026-08-25 05:46:11,207.207 INFO    ] 200
[2026-08-25 05:46:11,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:11,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:46:11,267.267 INFO    ] No update needed
[2026-08-25 05:46:11,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 05:46:11,308.308 INFO    ] 200
[2026-08-25 05:46:11,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:11,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:46:11,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:46:11,403.403 INFO    ] No camera update needed
[2026-08-25 05:46:11,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:46:11,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:46:11,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:46:11,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:46:13,463.463 INFO    ] ================================================
[2026-08-25 05:46:13,478.478 INFO    ] Launching Daemon at Tue Aug 25 05:46:13 IST 2026
[2026-08-25 05:46:13,489.489 INFO    ] ================================================
[2026-08-25 05:46:14,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:46:14
[2026-08-25 05:46:14,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:46:14,973.973 INFO    ] Initializing speech engine...
[2026-08-25 05:46:14,988.988 INFO    ] 2026-08-25 05:46:14
[2026-08-25 05:46:15,267.267 INFO    ] 2026-08-25 05:46:15
[2026-08-25 05:46:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:46:15,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:46:15,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:46:15,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:46:15,807.807 INFO    ] time= 25/08/2026 05:46:15
[2026-08-25 05:46:15,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:46:15,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:46:15,961.961 INFO    ] No existing commands found in stream
[2026-08-25 05:46:20,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:46:20,989.989 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 05:46:24,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:46:24,906.906 INFO    ] Checking for system updates...
[2026-08-25 05:46:24,946.946 INFO    ] 200
[2026-08-25 05:46:24,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:25,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:46:25,007.007 INFO    ] No update needed
[2026-08-25 05:46:25,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 05:46:25,044.044 INFO    ] 200
[2026-08-25 05:46:25,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:25,088.088 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:46:25,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:46:25,144.144 INFO    ] No camera update needed
[2026-08-25 05:46:25,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:46:25,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:46:25,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:46:25,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:46:27,204.204 INFO    ] ================================================
[2026-08-25 05:46:27,219.219 INFO    ] Launching Daemon at Tue Aug 25 05:46:27 IST 2026
[2026-08-25 05:46:27,236.236 INFO    ] ================================================
[2026-08-25 05:46:27,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:46:27
[2026-08-25 05:46:28,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:46:28,666.666 INFO    ] Initializing speech engine...
[2026-08-25 05:46:28,675.675 INFO    ] 2026-08-25 05:46:28
[2026-08-25 05:46:28,968.968 INFO    ] 2026-08-25 05:46:28
[2026-08-25 05:46:28,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:46:29,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:46:29,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:46:29,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:46:29,376.376 INFO    ] time= 25/08/2026 05:46:29
[2026-08-25 05:46:29,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:46:29,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:46:29,555.555 INFO    ] No existing commands found in stream
[2026-08-25 05:46:34,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:46:34,584.584 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 05:46:38,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:46:38,547.547 INFO    ] Checking for system updates...
[2026-08-25 05:46:38,582.582 INFO    ] 200
[2026-08-25 05:46:38,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:38,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:46:38,642.642 INFO    ] No update needed
[2026-08-25 05:46:38,649.649 INFO    ] Checking for camera pi updates...
[2026-08-25 05:46:38,682.682 INFO    ] 200
[2026-08-25 05:46:38,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:38,725.725 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:46:38,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:46:38,778.778 INFO    ] No camera update needed
[2026-08-25 05:46:38,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:46:38,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:46:38,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:46:38,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:46:40,832.832 INFO    ] ================================================
[2026-08-25 05:46:40,847.847 INFO    ] Launching Daemon at Tue Aug 25 05:46:40 IST 2026
[2026-08-25 05:46:40,858.858 INFO    ] ================================================
[2026-08-25 05:46:41,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:46:41
[2026-08-25 05:46:42,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:46:42,259.259 INFO    ] Initializing speech engine...
[2026-08-25 05:46:42,265.265 INFO    ] 2026-08-25 05:46:42
[2026-08-25 05:46:42,555.555 INFO    ] 2026-08-25 05:46:42
[2026-08-25 05:46:42,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:46:42,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:46:42,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:46:42,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:46:42,961.961 INFO    ] time= 25/08/2026 05:46:42
[2026-08-25 05:46:42,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:46:42,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:46:43,045.045 INFO    ] No existing commands found in stream
[2026-08-25 05:46:48,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:46:48,078.078 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 05:46:50,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:46:50,256.256 INFO    ] Checking for system updates...
[2026-08-25 05:46:50,292.292 INFO    ] 200
[2026-08-25 05:46:50,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:50,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:46:50,349.349 INFO    ] No update needed
[2026-08-25 05:46:50,352.352 INFO    ] Checking for camera pi updates...
[2026-08-25 05:46:50,385.385 INFO    ] 200
[2026-08-25 05:46:50,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:46:50,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:46:50,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:46:50,483.483 INFO    ] No camera update needed
[2026-08-25 05:46:50,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:46:50,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:46:50,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:46:50,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:46:52,537.537 INFO    ] ================================================
[2026-08-25 05:46:52,552.552 INFO    ] Launching Daemon at Tue Aug 25 05:46:52 IST 2026
[2026-08-25 05:46:52,562.562 INFO    ] ================================================
[2026-08-25 05:46:53,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:46:53
[2026-08-25 05:46:53,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:46:53,967.967 INFO    ] Initializing speech engine...
[2026-08-25 05:46:53,992.992 INFO    ] 2026-08-25 05:46:53
[2026-08-25 05:46:54,257.257 INFO    ] 2026-08-25 05:46:54
[2026-08-25 05:46:54,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:46:54,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:46:54,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:46:54,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:46:54,664.664 INFO    ] time= 25/08/2026 05:46:54
[2026-08-25 05:46:54,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:46:54,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:46:54,749.749 INFO    ] No existing commands found in stream
[2026-08-25 05:46:59,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:46:59,777.777 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 05:47:01,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:47:01,277.277 INFO    ] Checking for system updates...
[2026-08-25 05:47:01,313.313 INFO    ] 200
[2026-08-25 05:47:01,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:01,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:01,371.371 INFO    ] No update needed
[2026-08-25 05:47:01,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 05:47:01,406.406 INFO    ] 200
[2026-08-25 05:47:01,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:01,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:47:01,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:01,519.519 INFO    ] No camera update needed
[2026-08-25 05:47:01,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:47:01,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:47:01,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:47:01,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:47:03,575.575 INFO    ] ================================================
[2026-08-25 05:47:03,590.590 INFO    ] Launching Daemon at Tue Aug 25 05:47:03 IST 2026
[2026-08-25 05:47:03,601.601 INFO    ] ================================================
[2026-08-25 05:47:04,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:47:04
[2026-08-25 05:47:04,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:47:05,028.028 INFO    ] Initializing speech engine...
[2026-08-25 05:47:05,052.052 INFO    ] 2026-08-25 05:47:05
[2026-08-25 05:47:05,317.317 INFO    ] 2026-08-25 05:47:05
[2026-08-25 05:47:05,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:47:05,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:47:05,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:47:05,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:47:05,723.723 INFO    ] time= 25/08/2026 05:47:05
[2026-08-25 05:47:05,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:47:05,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:47:05,888.888 INFO    ] No existing commands found in stream
[2026-08-25 05:47:10,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:47:10,921.921 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 05:47:14,217.217 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:47:14,220.220 INFO    ] Checking for system updates...
[2026-08-25 05:47:14,255.255 INFO    ] 200
[2026-08-25 05:47:14,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:14,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:14,312.312 INFO    ] No update needed
[2026-08-25 05:47:14,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 05:47:14,348.348 INFO    ] 200
[2026-08-25 05:47:14,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:14,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:47:14,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:14,546.546 INFO    ] No camera update needed
[2026-08-25 05:47:14,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:47:14,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:47:14,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:47:14,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:47:16,600.600 INFO    ] ================================================
[2026-08-25 05:47:16,615.615 INFO    ] Launching Daemon at Tue Aug 25 05:47:16 IST 2026
[2026-08-25 05:47:16,625.625 INFO    ] ================================================
[2026-08-25 05:47:17,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:47:17
[2026-08-25 05:47:17,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:47:18,038.038 INFO    ] Initializing speech engine...
[2026-08-25 05:47:18,047.047 INFO    ] 2026-08-25 05:47:18
[2026-08-25 05:47:18,292.292 INFO    ] 2026-08-25 05:47:18
[2026-08-25 05:47:18,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:47:18,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:47:18,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:47:18,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:47:18,755.755 INFO    ] time= 25/08/2026 05:47:18
[2026-08-25 05:47:18,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:47:18,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:47:18,985.985 INFO    ] No existing commands found in stream
[2026-08-25 05:47:24,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:47:24,012.012 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 05:47:26,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:47:26,918.918 INFO    ] Checking for system updates...
[2026-08-25 05:47:26,953.953 INFO    ] 200
[2026-08-25 05:47:26,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:27,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:27,010.010 INFO    ] No update needed
[2026-08-25 05:47:27,012.012 INFO    ] Checking for camera pi updates...
[2026-08-25 05:47:27,045.045 INFO    ] 200
[2026-08-25 05:47:27,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:27,088.088 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:47:27,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:27,142.142 INFO    ] No camera update needed
[2026-08-25 05:47:27,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:47:27,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:47:27,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:47:27,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:47:29,199.199 INFO    ] ================================================
[2026-08-25 05:47:29,214.214 INFO    ] Launching Daemon at Tue Aug 25 05:47:29 IST 2026
[2026-08-25 05:47:29,224.224 INFO    ] ================================================
[2026-08-25 05:47:29,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:47:29
[2026-08-25 05:47:30,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:47:30,646.646 INFO    ] Initializing speech engine...
[2026-08-25 05:47:30,658.658 INFO    ] 2026-08-25 05:47:30
[2026-08-25 05:47:30,905.905 INFO    ] 2026-08-25 05:47:30
[2026-08-25 05:47:30,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:47:31,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:47:31,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:47:31,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:47:31,382.382 INFO    ] time= 25/08/2026 05:47:31
[2026-08-25 05:47:31,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:47:31,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:47:31,601.601 INFO    ] No existing commands found in stream
[2026-08-25 05:47:36,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:47:36,629.629 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 05:47:38,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:47:38,162.162 INFO    ] Checking for system updates...
[2026-08-25 05:47:38,203.203 INFO    ] 200
[2026-08-25 05:47:38,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:38,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:47:38,260.260 INFO    ] No update needed
[2026-08-25 05:47:38,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 05:47:38,295.295 INFO    ] 200
[2026-08-25 05:47:38,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:38,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:47:38,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:47:38,387.387 INFO    ] No camera update needed
[2026-08-25 05:47:38,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:47:38,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:47:38,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:47:38,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:47:40,441.441 INFO    ] ================================================
[2026-08-25 05:47:40,456.456 INFO    ] Launching Daemon at Tue Aug 25 05:47:40 IST 2026
[2026-08-25 05:47:40,468.468 INFO    ] ================================================
[2026-08-25 05:47:41,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:47:41
[2026-08-25 05:47:41,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:47:42,038.038 INFO    ] Initializing speech engine...
[2026-08-25 05:47:42,049.049 INFO    ] 2026-08-25 05:47:42
[2026-08-25 05:47:42,316.316 INFO    ] 2026-08-25 05:47:42
[2026-08-25 05:47:42,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:47:42,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:47:42,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:47:42,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:47:42,800.800 INFO    ] time= 25/08/2026 05:47:42
[2026-08-25 05:47:42,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:47:42,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:47:42,998.998 INFO    ] No existing commands found in stream
[2026-08-25 05:47:48,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:47:48,034.034 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 05:47:50,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:47:50,798.798 INFO    ] Checking for system updates...
[2026-08-25 05:47:50,834.834 INFO    ] 200
[2026-08-25 05:47:50,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:50,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:50,895.895 INFO    ] No update needed
[2026-08-25 05:47:50,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 05:47:50,931.931 INFO    ] 200
[2026-08-25 05:47:50,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:47:50,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:47:51,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:47:51,020.020 INFO    ] No camera update needed
[2026-08-25 05:47:51,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:47:51,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:47:51,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:47:51,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:47:53,074.074 INFO    ] ================================================
[2026-08-25 05:47:53,088.088 INFO    ] Launching Daemon at Tue Aug 25 05:47:53 IST 2026
[2026-08-25 05:47:53,099.099 INFO    ] ================================================
[2026-08-25 05:47:53,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:47:53
[2026-08-25 05:47:54,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:47:54,546.546 INFO    ] Initializing speech engine...
[2026-08-25 05:47:54,563.563 INFO    ] 2026-08-25 05:47:54
[2026-08-25 05:47:54,829.829 INFO    ] 2026-08-25 05:47:54
[2026-08-25 05:47:54,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:47:55,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:47:55,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:47:55,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:47:55,322.322 INFO    ] time= 25/08/2026 05:47:55
[2026-08-25 05:47:55,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:47:55,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:47:55,500.500 INFO    ] No existing commands found in stream
[2026-08-25 05:48:00,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:48:00,512.512 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 05:48:01,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:48:01,477.477 INFO    ] Checking for system updates...
[2026-08-25 05:48:01,513.513 INFO    ] 200
[2026-08-25 05:48:01,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:01,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:48:01,569.569 INFO    ] No update needed
[2026-08-25 05:48:01,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 05:48:01,606.606 INFO    ] 200
[2026-08-25 05:48:01,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:01,652.652 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:48:01,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:48:01,726.726 INFO    ] No camera update needed
[2026-08-25 05:48:01,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:48:01,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:48:01,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:48:01,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:48:03,781.781 INFO    ] ================================================
[2026-08-25 05:48:03,796.796 INFO    ] Launching Daemon at Tue Aug 25 05:48:03 IST 2026
[2026-08-25 05:48:03,807.807 INFO    ] ================================================
[2026-08-25 05:48:04,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:48:04
[2026-08-25 05:48:04,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:48:05,277.277 INFO    ] Initializing speech engine...
[2026-08-25 05:48:05,288.288 INFO    ] 2026-08-25 05:48:05
[2026-08-25 05:48:05,549.549 INFO    ] 2026-08-25 05:48:05
[2026-08-25 05:48:05,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:48:05,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:48:05,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:48:05,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:48:06,029.029 INFO    ] time= 25/08/2026 05:48:05
[2026-08-25 05:48:06,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:48:06,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:48:06,242.242 INFO    ] No existing commands found in stream
[2026-08-25 05:48:11,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:48:11,261.261 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 05:48:15,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:48:15,142.142 INFO    ] Checking for system updates...
[2026-08-25 05:48:15,196.196 INFO    ] 200
[2026-08-25 05:48:15,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:15,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:48:15,258.258 INFO    ] No update needed
[2026-08-25 05:48:15,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 05:48:15,294.294 INFO    ] 200
[2026-08-25 05:48:15,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:15,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:48:15,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:48:15,395.395 INFO    ] No camera update needed
[2026-08-25 05:48:15,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:48:15,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:48:15,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:48:15,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:48:17,450.450 INFO    ] ================================================
[2026-08-25 05:48:17,465.465 INFO    ] Launching Daemon at Tue Aug 25 05:48:17 IST 2026
[2026-08-25 05:48:17,476.476 INFO    ] ================================================
[2026-08-25 05:48:18,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:48:18
[2026-08-25 05:48:18,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:48:18,982.982 INFO    ] Initializing speech engine...
[2026-08-25 05:48:18,994.994 INFO    ] 2026-08-25 05:48:18
[2026-08-25 05:48:19,274.274 INFO    ] 2026-08-25 05:48:19
[2026-08-25 05:48:19,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:48:19,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:48:19,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:48:19,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:48:19,759.759 INFO    ] time= 25/08/2026 05:48:19
[2026-08-25 05:48:19,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:48:19,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:48:19,965.965 INFO    ] No existing commands found in stream
[2026-08-25 05:48:24,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:48:24,995.995 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 05:48:29,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:48:29,397.397 INFO    ] Checking for system updates...
[2026-08-25 05:48:29,438.438 INFO    ] 200
[2026-08-25 05:48:29,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:29,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:48:29,500.500 INFO    ] No update needed
[2026-08-25 05:48:29,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 05:48:29,537.537 INFO    ] 200
[2026-08-25 05:48:29,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:29,586.586 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:48:29,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:48:29,635.635 INFO    ] No camera update needed
[2026-08-25 05:48:29,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:48:29,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:48:29,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:48:29,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:48:31,689.689 INFO    ] ================================================
[2026-08-25 05:48:31,704.704 INFO    ] Launching Daemon at Tue Aug 25 05:48:31 IST 2026
[2026-08-25 05:48:31,715.715 INFO    ] ================================================
[2026-08-25 05:48:32,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:48:32
[2026-08-25 05:48:33,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:48:33,427.427 INFO    ] Initializing speech engine...
[2026-08-25 05:48:33,435.435 INFO    ] 2026-08-25 05:48:33
[2026-08-25 05:48:33,710.710 INFO    ] 2026-08-25 05:48:33
[2026-08-25 05:48:33,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:48:33,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:48:33,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:48:34,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:48:34,171.171 INFO    ] time= 25/08/2026 05:48:34
[2026-08-25 05:48:34,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:48:34,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:48:34,395.395 INFO    ] No existing commands found in stream
[2026-08-25 05:48:39,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:48:39,421.421 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 05:48:40,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:48:40,250.250 INFO    ] Checking for system updates...
[2026-08-25 05:48:40,303.303 INFO    ] 200
[2026-08-25 05:48:40,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:40,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:48:40,361.361 INFO    ] No update needed
[2026-08-25 05:48:40,364.364 INFO    ] Checking for camera pi updates...
[2026-08-25 05:48:40,398.398 INFO    ] 200
[2026-08-25 05:48:40,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:40,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:48:40,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:48:40,500.500 INFO    ] No camera update needed
[2026-08-25 05:48:40,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:48:40,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:48:40,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:48:40,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:48:42,554.554 INFO    ] ================================================
[2026-08-25 05:48:42,569.569 INFO    ] Launching Daemon at Tue Aug 25 05:48:42 IST 2026
[2026-08-25 05:48:42,580.580 INFO    ] ================================================
[2026-08-25 05:48:43,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:48:43
[2026-08-25 05:48:43,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:48:44,172.172 INFO    ] Initializing speech engine...
[2026-08-25 05:48:44,182.182 INFO    ] 2026-08-25 05:48:44
[2026-08-25 05:48:44,450.450 INFO    ] 2026-08-25 05:48:44
[2026-08-25 05:48:44,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:48:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:48:44,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:48:44,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:48:44,960.960 INFO    ] time= 25/08/2026 05:48:44
[2026-08-25 05:48:45,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:48:45,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:48:45,145.145 INFO    ] No existing commands found in stream
[2026-08-25 05:48:50,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:48:50,174.174 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 05:48:50,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:48:50,659.659 INFO    ] Checking for system updates...
[2026-08-25 05:48:50,698.698 INFO    ] 200
[2026-08-25 05:48:50,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:50,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:48:50,755.755 INFO    ] No update needed
[2026-08-25 05:48:50,758.758 INFO    ] Checking for camera pi updates...
[2026-08-25 05:48:50,798.798 INFO    ] 200
[2026-08-25 05:48:50,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:48:50,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:48:50,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:48:50,888.888 INFO    ] No camera update needed
[2026-08-25 05:48:50,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:48:50,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:48:50,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:48:50,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:48:52,945.945 INFO    ] ================================================
[2026-08-25 05:48:52,960.960 INFO    ] Launching Daemon at Tue Aug 25 05:48:52 IST 2026
[2026-08-25 05:48:52,970.970 INFO    ] ================================================
[2026-08-25 05:48:53,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:48:53
[2026-08-25 05:48:54,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:48:54,446.446 INFO    ] Initializing speech engine...
[2026-08-25 05:48:54,459.459 INFO    ] 2026-08-25 05:48:54
[2026-08-25 05:48:54,729.729 INFO    ] 2026-08-25 05:48:54
[2026-08-25 05:48:54,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:48:54,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:48:54,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:48:55,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:48:55,142.142 INFO    ] time= 25/08/2026 05:48:55
[2026-08-25 05:48:55,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:48:55,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:48:55,228.228 INFO    ] No existing commands found in stream
[2026-08-25 05:49:00,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:49:00,244.244 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 05:49:03,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:49:03,159.159 INFO    ] Checking for system updates...
[2026-08-25 05:49:03,201.201 INFO    ] 200
[2026-08-25 05:49:03,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:03,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:03,267.267 INFO    ] No update needed
[2026-08-25 05:49:03,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 05:49:03,317.317 INFO    ] 200
[2026-08-25 05:49:03,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:03,365.365 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:49:03,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:03,418.418 INFO    ] No camera update needed
[2026-08-25 05:49:03,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:49:03,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:49:03,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:49:03,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:49:05,475.475 INFO    ] ================================================
[2026-08-25 05:49:05,490.490 INFO    ] Launching Daemon at Tue Aug 25 05:49:05 IST 2026
[2026-08-25 05:49:05,501.501 INFO    ] ================================================
[2026-08-25 05:49:06,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:49:06
[2026-08-25 05:49:06,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:49:07,072.072 INFO    ] Initializing speech engine...
[2026-08-25 05:49:07,087.087 INFO    ] 2026-08-25 05:49:07
[2026-08-25 05:49:07,395.395 INFO    ] 2026-08-25 05:49:07
[2026-08-25 05:49:07,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:49:07,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:49:07,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:49:07,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:49:07,852.852 INFO    ] time= 25/08/2026 05:49:07
[2026-08-25 05:49:07,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:49:07,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:49:08,063.063 INFO    ] No existing commands found in stream
[2026-08-25 05:49:13,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:49:13,085.085 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 05:49:15,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:49:15,154.154 INFO    ] Checking for system updates...
[2026-08-25 05:49:15,190.190 INFO    ] 200
[2026-08-25 05:49:15,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:15,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:15,251.251 INFO    ] No update needed
[2026-08-25 05:49:15,253.253 INFO    ] Checking for camera pi updates...
[2026-08-25 05:49:15,286.286 INFO    ] 200
[2026-08-25 05:49:15,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:15,333.333 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:49:15,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:15,383.383 INFO    ] No camera update needed
[2026-08-25 05:49:15,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:49:15,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:49:15,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:49:15,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:49:17,438.438 INFO    ] ================================================
[2026-08-25 05:49:17,453.453 INFO    ] Launching Daemon at Tue Aug 25 05:49:17 IST 2026
[2026-08-25 05:49:17,463.463 INFO    ] ================================================
[2026-08-25 05:49:18,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:49:18
[2026-08-25 05:49:18,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:49:18,902.902 INFO    ] Initializing speech engine...
[2026-08-25 05:49:18,917.917 INFO    ] 2026-08-25 05:49:18
[2026-08-25 05:49:19,200.200 INFO    ] 2026-08-25 05:49:19
[2026-08-25 05:49:19,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:49:19,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:49:19,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:49:19,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:49:19,574.574 INFO    ] time= 25/08/2026 05:49:19
[2026-08-25 05:49:19,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:49:19,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:49:19,696.696 INFO    ] No existing commands found in stream
[2026-08-25 05:49:24,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:49:24,712.712 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 05:49:28,003.003 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:49:28,006.006 INFO    ] Checking for system updates...
[2026-08-25 05:49:28,045.045 INFO    ] 200
[2026-08-25 05:49:28,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:28,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:28,102.102 INFO    ] No update needed
[2026-08-25 05:49:28,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 05:49:28,139.139 INFO    ] 200
[2026-08-25 05:49:28,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:28,181.181 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:49:28,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:28,326.326 INFO    ] No camera update needed
[2026-08-25 05:49:28,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:49:28,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:49:28,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:49:28,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:49:30,379.379 INFO    ] ================================================
[2026-08-25 05:49:30,394.394 INFO    ] Launching Daemon at Tue Aug 25 05:49:30 IST 2026
[2026-08-25 05:49:30,405.405 INFO    ] ================================================
[2026-08-25 05:49:30,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:49:30
[2026-08-25 05:49:31,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:49:31,836.836 INFO    ] Initializing speech engine...
[2026-08-25 05:49:31,850.850 INFO    ] 2026-08-25 05:49:31
[2026-08-25 05:49:32,109.109 INFO    ] 2026-08-25 05:49:32
[2026-08-25 05:49:32,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:49:32,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:49:32,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:49:32,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:49:32,605.605 INFO    ] time= 25/08/2026 05:49:32
[2026-08-25 05:49:32,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:49:32,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:49:32,827.827 INFO    ] No existing commands found in stream
[2026-08-25 05:49:37,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:49:37,855.855 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 05:49:42,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:49:42,258.258 INFO    ] Checking for system updates...
[2026-08-25 05:49:42,294.294 INFO    ] 200
[2026-08-25 05:49:42,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:42,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:42,351.351 INFO    ] No update needed
[2026-08-25 05:49:42,354.354 INFO    ] Checking for camera pi updates...
[2026-08-25 05:49:42,387.387 INFO    ] 200
[2026-08-25 05:49:42,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:42,432.432 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:49:42,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:42,490.490 INFO    ] No camera update needed
[2026-08-25 05:49:42,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:49:42,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:49:42,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:49:42,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:49:44,545.545 INFO    ] ================================================
[2026-08-25 05:49:44,560.560 INFO    ] Launching Daemon at Tue Aug 25 05:49:44 IST 2026
[2026-08-25 05:49:44,570.570 INFO    ] ================================================
[2026-08-25 05:49:45,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:49:45
[2026-08-25 05:49:45,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:49:46,027.027 INFO    ] Initializing speech engine...
[2026-08-25 05:49:46,035.035 INFO    ] 2026-08-25 05:49:46
[2026-08-25 05:49:46,350.350 INFO    ] 2026-08-25 05:49:46
[2026-08-25 05:49:46,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:49:46,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:49:46,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:49:46,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:49:46,847.847 INFO    ] time= 25/08/2026 05:49:46
[2026-08-25 05:49:46,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:49:46,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:49:47,026.026 INFO    ] No existing commands found in stream
[2026-08-25 05:49:52,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:49:52,060.060 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 05:49:54,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:49:54,319.319 INFO    ] Checking for system updates...
[2026-08-25 05:49:54,355.355 INFO    ] 200
[2026-08-25 05:49:54,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:54,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:54,420.420 INFO    ] No update needed
[2026-08-25 05:49:54,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 05:49:54,455.455 INFO    ] 200
[2026-08-25 05:49:54,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:49:54,497.497 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:49:54,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:49:54,548.548 INFO    ] No camera update needed
[2026-08-25 05:49:54,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:49:54,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:49:54,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:49:54,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:49:56,603.603 INFO    ] ================================================
[2026-08-25 05:49:56,618.618 INFO    ] Launching Daemon at Tue Aug 25 05:49:56 IST 2026
[2026-08-25 05:49:56,629.629 INFO    ] ================================================
[2026-08-25 05:49:57,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:49:57
[2026-08-25 05:49:57,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:49:58,182.182 INFO    ] Initializing speech engine...
[2026-08-25 05:49:58,196.196 INFO    ] 2026-08-25 05:49:58
[2026-08-25 05:49:58,499.499 INFO    ] 2026-08-25 05:49:58
[2026-08-25 05:49:58,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:49:58,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:49:58,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:49:58,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:49:59,004.004 INFO    ] time= 25/08/2026 05:49:58
[2026-08-25 05:49:59,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:49:59,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:49:59,157.157 INFO    ] No existing commands found in stream
[2026-08-25 05:50:04,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:50:04,177.177 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 05:50:07,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:50:07,188.188 INFO    ] Checking for system updates...
[2026-08-25 05:50:07,227.227 INFO    ] 200
[2026-08-25 05:50:07,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:07,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:50:07,291.291 INFO    ] No update needed
[2026-08-25 05:50:07,295.295 INFO    ] Checking for camera pi updates...
[2026-08-25 05:50:07,338.338 INFO    ] 200
[2026-08-25 05:50:07,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:07,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:50:07,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:50:07,444.444 INFO    ] No camera update needed
[2026-08-25 05:50:07,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:50:07,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:50:07,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:50:07,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:50:09,505.505 INFO    ] ================================================
[2026-08-25 05:50:09,520.520 INFO    ] Launching Daemon at Tue Aug 25 05:50:09 IST 2026
[2026-08-25 05:50:09,531.531 INFO    ] ================================================
[2026-08-25 05:50:10,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:50:10
[2026-08-25 05:50:10,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:50:10,971.971 INFO    ] Initializing speech engine...
[2026-08-25 05:50:10,977.977 INFO    ] 2026-08-25 05:50:10
[2026-08-25 05:50:11,233.233 INFO    ] 2026-08-25 05:50:11
[2026-08-25 05:50:11,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:50:11,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:50:11,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:50:11,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:50:11,690.690 INFO    ] time= 25/08/2026 05:50:11
[2026-08-25 05:50:11,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:50:11,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:50:11,914.914 INFO    ] No existing commands found in stream
[2026-08-25 05:50:16,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:50:16,943.943 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 05:50:18,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:50:18,528.528 INFO    ] Checking for system updates...
[2026-08-25 05:50:18,565.565 INFO    ] 200
[2026-08-25 05:50:18,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:18,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:50:18,633.633 INFO    ] No update needed
[2026-08-25 05:50:18,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 05:50:18,670.670 INFO    ] 200
[2026-08-25 05:50:18,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:18,714.714 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:50:18,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:50:18,765.765 INFO    ] No camera update needed
[2026-08-25 05:50:18,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:50:18,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:50:18,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:50:18,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:50:20,826.826 INFO    ] ================================================
[2026-08-25 05:50:20,841.841 INFO    ] Launching Daemon at Tue Aug 25 05:50:20 IST 2026
[2026-08-25 05:50:20,852.852 INFO    ] ================================================
[2026-08-25 05:50:21,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:50:21
[2026-08-25 05:50:22,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:50:22,512.512 INFO    ] Initializing speech engine...
[2026-08-25 05:50:22,520.520 INFO    ] 2026-08-25 05:50:22
[2026-08-25 05:50:22,827.827 INFO    ] 2026-08-25 05:50:22
[2026-08-25 05:50:22,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:50:23,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:50:23,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:50:23,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:50:23,337.337 INFO    ] time= 25/08/2026 05:50:23
[2026-08-25 05:50:23,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:50:23,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:50:23,504.504 INFO    ] No existing commands found in stream
[2026-08-25 05:50:28,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:50:28,538.538 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 05:50:32,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:50:32,190.190 INFO    ] Checking for system updates...
[2026-08-25 05:50:32,237.237 INFO    ] 200
[2026-08-25 05:50:32,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:32,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:50:32,301.301 INFO    ] No update needed
[2026-08-25 05:50:32,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 05:50:32,342.342 INFO    ] 200
[2026-08-25 05:50:32,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:32,396.396 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:50:32,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:50:32,462.462 INFO    ] No camera update needed
[2026-08-25 05:50:32,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:50:32,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:50:32,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:50:32,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:50:34,523.523 INFO    ] ================================================
[2026-08-25 05:50:34,538.538 INFO    ] Launching Daemon at Tue Aug 25 05:50:34 IST 2026
[2026-08-25 05:50:34,549.549 INFO    ] ================================================
[2026-08-25 05:50:35,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:50:35
[2026-08-25 05:50:35,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:50:36,139.139 INFO    ] Initializing speech engine...
[2026-08-25 05:50:36,158.158 INFO    ] 2026-08-25 05:50:36
[2026-08-25 05:50:36,408.408 INFO    ] 2026-08-25 05:50:36
[2026-08-25 05:50:36,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:50:36,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:50:36,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:50:36,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:50:36,784.784 INFO    ] time= 25/08/2026 05:50:36
[2026-08-25 05:50:36,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:50:36,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:50:36,969.969 INFO    ] No existing commands found in stream
[2026-08-25 05:50:41,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:50:41,999.999 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 05:50:43,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:50:43,758.758 INFO    ] Checking for system updates...
[2026-08-25 05:50:43,796.796 INFO    ] 200
[2026-08-25 05:50:43,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:43,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:50:43,855.855 INFO    ] No update needed
[2026-08-25 05:50:43,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 05:50:43,892.892 INFO    ] 200
[2026-08-25 05:50:43,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:43,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:50:44,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:50:44,358.358 INFO    ] No camera update needed
[2026-08-25 05:50:44,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:50:44,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:50:44,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:50:44,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:50:46,419.419 INFO    ] ================================================
[2026-08-25 05:50:46,434.434 INFO    ] Launching Daemon at Tue Aug 25 05:50:46 IST 2026
[2026-08-25 05:50:46,445.445 INFO    ] ================================================
[2026-08-25 05:50:47,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:50:47
[2026-08-25 05:50:47,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:50:47,876.876 INFO    ] Initializing speech engine...
[2026-08-25 05:50:47,885.885 INFO    ] 2026-08-25 05:50:47
[2026-08-25 05:50:48,135.135 INFO    ] 2026-08-25 05:50:48
[2026-08-25 05:50:48,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:50:48,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:50:48,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:50:48,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:50:48,513.513 INFO    ] time= 25/08/2026 05:50:48
[2026-08-25 05:50:48,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:50:48,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:50:48,701.701 INFO    ] No existing commands found in stream
[2026-08-25 05:50:53,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:50:53,729.729 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 05:50:55,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:50:55,378.378 INFO    ] Checking for system updates...
[2026-08-25 05:50:55,413.413 INFO    ] 200
[2026-08-25 05:50:55,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:55,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:50:55,472.472 INFO    ] No update needed
[2026-08-25 05:50:55,474.474 INFO    ] Checking for camera pi updates...
[2026-08-25 05:50:55,508.508 INFO    ] 200
[2026-08-25 05:50:55,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:50:55,550.550 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:50:55,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:50:55,611.611 INFO    ] No camera update needed
[2026-08-25 05:50:55,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:50:55,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:50:55,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:50:55,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:50:57,665.665 INFO    ] ================================================
[2026-08-25 05:50:57,680.680 INFO    ] Launching Daemon at Tue Aug 25 05:50:57 IST 2026
[2026-08-25 05:50:57,692.692 INFO    ] ================================================
[2026-08-25 05:50:58,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:50:58
[2026-08-25 05:50:59,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:50:59,347.347 INFO    ] Initializing speech engine...
[2026-08-25 05:50:59,359.359 INFO    ] 2026-08-25 05:50:59
[2026-08-25 05:50:59,668.668 INFO    ] 2026-08-25 05:50:59
[2026-08-25 05:50:59,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:50:59,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:50:59,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:51:00,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:51:00,175.175 INFO    ] time= 25/08/2026 05:51:00
[2026-08-25 05:51:00,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:51:00,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:51:00,340.340 INFO    ] No existing commands found in stream
[2026-08-25 05:51:05,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:51:05,364.364 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 05:51:08,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:51:08,171.171 INFO    ] Checking for system updates...
[2026-08-25 05:51:08,207.207 INFO    ] 200
[2026-08-25 05:51:08,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:08,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:51:08,265.265 INFO    ] No update needed
[2026-08-25 05:51:08,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 05:51:08,301.301 INFO    ] 200
[2026-08-25 05:51:08,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:08,343.343 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:51:08,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:51:08,398.398 INFO    ] No camera update needed
[2026-08-25 05:51:08,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:51:08,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:51:08,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:51:08,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:51:10,452.452 INFO    ] ================================================
[2026-08-25 05:51:10,466.466 INFO    ] Launching Daemon at Tue Aug 25 05:51:10 IST 2026
[2026-08-25 05:51:10,477.477 INFO    ] ================================================
[2026-08-25 05:51:11,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:51:11
[2026-08-25 05:51:11,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:51:11,884.884 INFO    ] Initializing speech engine...
[2026-08-25 05:51:11,905.905 INFO    ] 2026-08-25 05:51:11
[2026-08-25 05:51:12,177.177 INFO    ] 2026-08-25 05:51:12
[2026-08-25 05:51:12,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:51:13,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:51:13,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:51:13,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:51:13,673.673 INFO    ] time= 25/08/2026 05:51:13
[2026-08-25 05:51:13,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:51:13,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:51:13,751.751 INFO    ] No existing commands found in stream
[2026-08-25 05:51:18,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:51:18,765.765 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 05:51:21,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:51:21,571.571 INFO    ] Checking for system updates...
[2026-08-25 05:51:21,607.607 INFO    ] 200
[2026-08-25 05:51:21,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:21,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:51:21,668.668 INFO    ] No update needed
[2026-08-25 05:51:21,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 05:51:21,703.703 INFO    ] 200
[2026-08-25 05:51:21,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:21,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:51:21,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:51:21,799.799 INFO    ] No camera update needed
[2026-08-25 05:51:21,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:51:21,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:51:21,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:51:21,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:51:23,852.852 INFO    ] ================================================
[2026-08-25 05:51:23,867.867 INFO    ] Launching Daemon at Tue Aug 25 05:51:23 IST 2026
[2026-08-25 05:51:23,877.877 INFO    ] ================================================
[2026-08-25 05:51:24,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:51:24
[2026-08-25 05:51:25,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:51:25,297.297 INFO    ] Initializing speech engine...
[2026-08-25 05:51:25,305.305 INFO    ] 2026-08-25 05:51:25
[2026-08-25 05:51:25,552.552 INFO    ] 2026-08-25 05:51:25
[2026-08-25 05:51:25,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:51:25,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:51:25,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:51:25,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:51:25,997.997 INFO    ] time= 25/08/2026 05:51:25
[2026-08-25 05:51:26,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:51:26,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:51:26,189.189 INFO    ] No existing commands found in stream
[2026-08-25 05:51:31,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:51:31,204.204 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 05:51:34,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:51:34,379.379 INFO    ] Checking for system updates...
[2026-08-25 05:51:34,415.415 INFO    ] 200
[2026-08-25 05:51:34,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:34,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:51:34,471.471 INFO    ] No update needed
[2026-08-25 05:51:34,473.473 INFO    ] Checking for camera pi updates...
[2026-08-25 05:51:34,510.510 INFO    ] 200
[2026-08-25 05:51:34,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:34,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:51:34,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:51:34,603.603 INFO    ] No camera update needed
[2026-08-25 05:51:34,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:51:34,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:51:34,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:51:34,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:51:36,659.659 INFO    ] ================================================
[2026-08-25 05:51:36,674.674 INFO    ] Launching Daemon at Tue Aug 25 05:51:36 IST 2026
[2026-08-25 05:51:36,684.684 INFO    ] ================================================
[2026-08-25 05:51:37,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:51:37
[2026-08-25 05:51:37,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:51:38,101.101 INFO    ] Initializing speech engine...
[2026-08-25 05:51:38,110.110 INFO    ] 2026-08-25 05:51:38
[2026-08-25 05:51:38,353.353 INFO    ] 2026-08-25 05:51:38
[2026-08-25 05:51:38,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:51:38,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:51:38,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:51:38,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:51:38,827.827 INFO    ] time= 25/08/2026 05:51:38
[2026-08-25 05:51:38,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:51:38,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:51:39,061.061 INFO    ] No existing commands found in stream
[2026-08-25 05:51:44,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:51:44,078.078 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 05:51:47,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:51:47,148.148 INFO    ] Checking for system updates...
[2026-08-25 05:51:47,183.183 INFO    ] 200
[2026-08-25 05:51:47,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:47,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:51:47,248.248 INFO    ] No update needed
[2026-08-25 05:51:47,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 05:51:47,284.284 INFO    ] 200
[2026-08-25 05:51:47,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:47,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:51:47,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:51:47,381.381 INFO    ] No camera update needed
[2026-08-25 05:51:47,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:51:47,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:51:47,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:51:47,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:51:49,436.436 INFO    ] ================================================
[2026-08-25 05:51:49,451.451 INFO    ] Launching Daemon at Tue Aug 25 05:51:49 IST 2026
[2026-08-25 05:51:49,462.462 INFO    ] ================================================
[2026-08-25 05:51:50,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:51:50
[2026-08-25 05:51:50,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:51:51,033.033 INFO    ] Initializing speech engine...
[2026-08-25 05:51:51,043.043 INFO    ] 2026-08-25 05:51:51
[2026-08-25 05:51:51,351.351 INFO    ] 2026-08-25 05:51:51
[2026-08-25 05:51:51,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:51:51,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:51:51,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:51:51,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:51:51,795.795 INFO    ] time= 25/08/2026 05:51:51
[2026-08-25 05:51:51,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:51:51,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:51:52,006.006 INFO    ] No existing commands found in stream
[2026-08-25 05:51:57,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:51:57,032.032 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 05:51:59,754.754 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:51:59,756.756 INFO    ] Checking for system updates...
[2026-08-25 05:51:59,791.791 INFO    ] 200
[2026-08-25 05:51:59,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:59,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:51:59,848.848 INFO    ] No update needed
[2026-08-25 05:51:59,851.851 INFO    ] Checking for camera pi updates...
[2026-08-25 05:51:59,884.884 INFO    ] 200
[2026-08-25 05:51:59,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:51:59,926.926 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:51:59,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:51:59,990.990 INFO    ] No camera update needed
[2026-08-25 05:51:59,992.992 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:51:59,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:51:59,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:52:00,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:52:02,060.060 INFO    ] ================================================
[2026-08-25 05:52:02,091.091 INFO    ] Launching Daemon at Tue Aug 25 05:52:02 IST 2026
[2026-08-25 05:52:02,110.110 INFO    ] ================================================
[2026-08-25 05:52:02,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:52:02
[2026-08-25 05:52:03,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:52:03,774.774 INFO    ] Initializing speech engine...
[2026-08-25 05:52:03,794.794 INFO    ] 2026-08-25 05:52:03
[2026-08-25 05:52:04,064.064 INFO    ] 2026-08-25 05:52:04
[2026-08-25 05:52:04,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:52:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:52:04,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:52:04,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:52:04,555.555 INFO    ] time= 25/08/2026 05:52:04
[2026-08-25 05:52:04,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:52:04,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:52:04,769.769 INFO    ] No existing commands found in stream
[2026-08-25 05:52:09,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:52:09,797.797 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 05:52:12,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:52:12,668.668 INFO    ] Checking for system updates...
[2026-08-25 05:52:12,704.704 INFO    ] 200
[2026-08-25 05:52:12,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:12,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:52:12,764.764 INFO    ] No update needed
[2026-08-25 05:52:12,767.767 INFO    ] Checking for camera pi updates...
[2026-08-25 05:52:12,800.800 INFO    ] 200
[2026-08-25 05:52:12,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:12,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:52:12,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:52:12,905.905 INFO    ] No camera update needed
[2026-08-25 05:52:12,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:52:12,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:52:12,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:52:12,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:52:14,960.960 INFO    ] ================================================
[2026-08-25 05:52:14,975.975 INFO    ] Launching Daemon at Tue Aug 25 05:52:14 IST 2026
[2026-08-25 05:52:14,986.986 INFO    ] ================================================
[2026-08-25 05:52:15,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:52:15
[2026-08-25 05:52:16,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:52:16,433.433 INFO    ] Initializing speech engine...
[2026-08-25 05:52:16,447.447 INFO    ] 2026-08-25 05:52:16
[2026-08-25 05:52:16,728.728 INFO    ] 2026-08-25 05:52:16
[2026-08-25 05:52:16,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:52:16,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:52:16,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:52:17,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:52:17,135.135 INFO    ] time= 25/08/2026 05:52:17
[2026-08-25 05:52:17,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:52:17,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:52:17,221.221 INFO    ] No existing commands found in stream
[2026-08-25 05:52:22,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:52:22,259.259 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 05:52:25,416.416 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:52:25,419.419 INFO    ] Checking for system updates...
[2026-08-25 05:52:25,455.455 INFO    ] 200
[2026-08-25 05:52:25,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:25,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:52:25,514.514 INFO    ] No update needed
[2026-08-25 05:52:25,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 05:52:25,550.550 INFO    ] 200
[2026-08-25 05:52:25,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:25,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:52:25,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:52:25,660.660 INFO    ] No camera update needed
[2026-08-25 05:52:25,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:52:25,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:52:25,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:52:25,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:52:27,716.716 INFO    ] ================================================
[2026-08-25 05:52:27,731.731 INFO    ] Launching Daemon at Tue Aug 25 05:52:27 IST 2026
[2026-08-25 05:52:27,742.742 INFO    ] ================================================
[2026-08-25 05:52:28,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:52:28
[2026-08-25 05:52:28,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:52:29,135.135 INFO    ] Initializing speech engine...
[2026-08-25 05:52:29,144.144 INFO    ] 2026-08-25 05:52:29
[2026-08-25 05:52:29,422.422 INFO    ] 2026-08-25 05:52:29
[2026-08-25 05:52:29,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:52:29,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:52:29,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:52:29,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:52:29,802.802 INFO    ] time= 25/08/2026 05:52:29
[2026-08-25 05:52:29,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:52:29,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:52:29,985.985 INFO    ] No existing commands found in stream
[2026-08-25 05:52:35,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:52:35,010.010 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 05:52:37,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:52:37,952.952 INFO    ] Checking for system updates...
[2026-08-25 05:52:37,987.987 INFO    ] 200
[2026-08-25 05:52:37,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:38,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:52:38,047.047 INFO    ] No update needed
[2026-08-25 05:52:38,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 05:52:38,082.082 INFO    ] 200
[2026-08-25 05:52:38,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:38,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:52:38,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:52:38,182.182 INFO    ] No camera update needed
[2026-08-25 05:52:38,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:52:38,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:52:38,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:52:38,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:52:40,237.237 INFO    ] ================================================
[2026-08-25 05:52:40,252.252 INFO    ] Launching Daemon at Tue Aug 25 05:52:40 IST 2026
[2026-08-25 05:52:40,263.263 INFO    ] ================================================
[2026-08-25 05:52:40,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:52:40
[2026-08-25 05:52:41,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:52:41,694.694 INFO    ] Initializing speech engine...
[2026-08-25 05:52:41,713.713 INFO    ] 2026-08-25 05:52:41
[2026-08-25 05:52:41,979.979 INFO    ] 2026-08-25 05:52:41
[2026-08-25 05:52:42,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:52:42,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:52:42,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:52:42,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:52:42,385.385 INFO    ] time= 25/08/2026 05:52:42
[2026-08-25 05:52:42,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:52:42,396.396 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:52:42,467.467 INFO    ] No existing commands found in stream
[2026-08-25 05:52:47,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:52:47,482.482 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 05:52:51,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:52:51,629.629 INFO    ] Checking for system updates...
[2026-08-25 05:52:51,669.669 INFO    ] 200
[2026-08-25 05:52:51,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:51,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:52:51,731.731 INFO    ] No update needed
[2026-08-25 05:52:51,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 05:52:51,768.768 INFO    ] 200
[2026-08-25 05:52:51,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:52:51,812.812 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:52:51,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:52:51,863.863 INFO    ] No camera update needed
[2026-08-25 05:52:51,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:52:51,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:52:51,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:52:51,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:52:53,917.917 INFO    ] ================================================
[2026-08-25 05:52:53,932.932 INFO    ] Launching Daemon at Tue Aug 25 05:52:53 IST 2026
[2026-08-25 05:52:53,943.943 INFO    ] ================================================
[2026-08-25 05:52:54,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:52:54
[2026-08-25 05:52:55,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:52:55,362.362 INFO    ] Initializing speech engine...
[2026-08-25 05:52:55,368.368 INFO    ] 2026-08-25 05:52:55
[2026-08-25 05:52:55,626.626 INFO    ] 2026-08-25 05:52:55
[2026-08-25 05:52:55,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:52:55,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:52:55,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:52:56,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:52:56,079.079 INFO    ] time= 25/08/2026 05:52:56
[2026-08-25 05:52:56,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:52:56,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:52:56,308.308 INFO    ] No existing commands found in stream
[2026-08-25 05:53:01,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:53:01,336.336 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 05:53:05,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:53:05,607.607 INFO    ] Checking for system updates...
[2026-08-25 05:53:05,642.642 INFO    ] 200
[2026-08-25 05:53:05,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:05,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:53:05,699.699 INFO    ] No update needed
[2026-08-25 05:53:05,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 05:53:05,738.738 INFO    ] 200
[2026-08-25 05:53:05,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:05,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:53:05,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:53:05,839.839 INFO    ] No camera update needed
[2026-08-25 05:53:05,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:53:05,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:53:05,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:53:05,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:53:07,893.893 INFO    ] ================================================
[2026-08-25 05:53:07,909.909 INFO    ] Launching Daemon at Tue Aug 25 05:53:07 IST 2026
[2026-08-25 05:53:07,920.920 INFO    ] ================================================
[2026-08-25 05:53:08,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:53:08
[2026-08-25 05:53:09,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:53:09,337.337 INFO    ] Initializing speech engine...
[2026-08-25 05:53:09,355.355 INFO    ] 2026-08-25 05:53:09
[2026-08-25 05:53:09,600.600 INFO    ] 2026-08-25 05:53:09
[2026-08-25 05:53:09,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:53:09,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:53:09,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:53:10,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:53:10,075.075 INFO    ] time= 25/08/2026 05:53:10
[2026-08-25 05:53:10,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:53:10,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:53:10,285.285 INFO    ] No existing commands found in stream
[2026-08-25 05:53:15,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:53:15,313.313 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 05:53:18,842.842 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:53:18,845.845 INFO    ] Checking for system updates...
[2026-08-25 05:53:18,883.883 INFO    ] 200
[2026-08-25 05:53:18,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:18,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:53:18,946.946 INFO    ] No update needed
[2026-08-25 05:53:18,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 05:53:18,985.985 INFO    ] 200
[2026-08-25 05:53:18,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:19,033.033 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:53:19,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:53:19,080.080 INFO    ] No camera update needed
[2026-08-25 05:53:19,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:53:19,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:53:19,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:53:19,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:53:21,135.135 INFO    ] ================================================
[2026-08-25 05:53:21,151.151 INFO    ] Launching Daemon at Tue Aug 25 05:53:21 IST 2026
[2026-08-25 05:53:21,162.162 INFO    ] ================================================
[2026-08-25 05:53:21,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:53:21
[2026-08-25 05:53:22,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:53:22,582.582 INFO    ] Initializing speech engine...
[2026-08-25 05:53:22,588.588 INFO    ] 2026-08-25 05:53:22
[2026-08-25 05:53:22,835.835 INFO    ] 2026-08-25 05:53:22
[2026-08-25 05:53:22,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:53:23,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:53:23,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:53:23,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:53:23,310.310 INFO    ] time= 25/08/2026 05:53:23
[2026-08-25 05:53:23,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:53:23,396.396 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:53:23,540.540 INFO    ] No existing commands found in stream
[2026-08-25 05:53:28,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:53:28,557.557 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 05:53:30,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:53:30,293.293 INFO    ] Checking for system updates...
[2026-08-25 05:53:30,328.328 INFO    ] 200
[2026-08-25 05:53:30,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:30,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:53:30,391.391 INFO    ] No update needed
[2026-08-25 05:53:30,394.394 INFO    ] Checking for camera pi updates...
[2026-08-25 05:53:30,430.430 INFO    ] 200
[2026-08-25 05:53:30,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:30,472.472 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:53:30,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:53:30,519.519 INFO    ] No camera update needed
[2026-08-25 05:53:30,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:53:30,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:53:30,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:53:30,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:53:32,576.576 INFO    ] ================================================
[2026-08-25 05:53:32,593.593 INFO    ] Launching Daemon at Tue Aug 25 05:53:32 IST 2026
[2026-08-25 05:53:32,605.605 INFO    ] ================================================
[2026-08-25 05:53:33,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:53:33
[2026-08-25 05:53:33,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:53:34,063.063 INFO    ] Initializing speech engine...
[2026-08-25 05:53:34,087.087 INFO    ] 2026-08-25 05:53:34
[2026-08-25 05:53:34,360.360 INFO    ] 2026-08-25 05:53:34
[2026-08-25 05:53:34,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:53:34,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:53:34,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:53:34,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:53:34,732.732 INFO    ] time= 25/08/2026 05:53:34
[2026-08-25 05:53:34,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:53:34,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:53:34,858.858 INFO    ] No existing commands found in stream
[2026-08-25 05:53:39,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:53:39,891.891 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 05:53:44,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:53:44,020.020 INFO    ] Checking for system updates...
[2026-08-25 05:53:44,055.055 INFO    ] 200
[2026-08-25 05:53:44,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:44,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:53:44,112.112 INFO    ] No update needed
[2026-08-25 05:53:44,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 05:53:44,151.151 INFO    ] 200
[2026-08-25 05:53:44,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:44,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:53:44,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:53:44,348.348 INFO    ] No camera update needed
[2026-08-25 05:53:44,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:53:44,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:53:44,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:53:44,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:53:46,402.402 INFO    ] ================================================
[2026-08-25 05:53:46,418.418 INFO    ] Launching Daemon at Tue Aug 25 05:53:46 IST 2026
[2026-08-25 05:53:46,429.429 INFO    ] ================================================
[2026-08-25 05:53:46,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:53:46
[2026-08-25 05:53:47,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:53:47,851.851 INFO    ] Initializing speech engine...
[2026-08-25 05:53:47,860.860 INFO    ] 2026-08-25 05:53:47
[2026-08-25 05:53:48,115.115 INFO    ] 2026-08-25 05:53:48
[2026-08-25 05:53:48,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:53:48,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:53:48,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:53:48,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:53:48,603.603 INFO    ] time= 25/08/2026 05:53:48
[2026-08-25 05:53:48,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:53:48,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:53:48,816.816 INFO    ] No existing commands found in stream
[2026-08-25 05:53:53,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:53:53,846.846 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 05:53:54,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:53:54,498.498 INFO    ] Checking for system updates...
[2026-08-25 05:53:54,536.536 INFO    ] 200
[2026-08-25 05:53:54,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:54,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:53:54,592.592 INFO    ] No update needed
[2026-08-25 05:53:54,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 05:53:54,628.628 INFO    ] 200
[2026-08-25 05:53:54,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:53:54,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:53:54,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:53:54,729.729 INFO    ] No camera update needed
[2026-08-25 05:53:54,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:53:54,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:53:54,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:53:54,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:53:56,784.784 INFO    ] ================================================
[2026-08-25 05:53:56,799.799 INFO    ] Launching Daemon at Tue Aug 25 05:53:56 IST 2026
[2026-08-25 05:53:56,810.810 INFO    ] ================================================
[2026-08-25 05:53:57,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:53:57
[2026-08-25 05:53:58,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:53:58,402.402 INFO    ] Initializing speech engine...
[2026-08-25 05:53:58,411.411 INFO    ] 2026-08-25 05:53:58
[2026-08-25 05:53:58,683.683 INFO    ] 2026-08-25 05:53:58
[2026-08-25 05:53:58,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:53:58,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:53:58,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:53:59,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:53:59,198.198 INFO    ] time= 25/08/2026 05:53:59
[2026-08-25 05:53:59,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:53:59,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:53:59,395.395 INFO    ] No existing commands found in stream
[2026-08-25 05:54:04,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:54:04,420.420 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 05:54:06,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:54:06,933.933 INFO    ] Checking for system updates...
[2026-08-25 05:54:06,969.969 INFO    ] 200
[2026-08-25 05:54:06,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:07,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:54:07,031.031 INFO    ] No update needed
[2026-08-25 05:54:07,034.034 INFO    ] Checking for camera pi updates...
[2026-08-25 05:54:07,067.067 INFO    ] 200
[2026-08-25 05:54:07,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:07,113.113 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:54:07,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:54:07,173.173 INFO    ] No camera update needed
[2026-08-25 05:54:07,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:54:07,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:54:07,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:54:07,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:54:09,227.227 INFO    ] ================================================
[2026-08-25 05:54:09,242.242 INFO    ] Launching Daemon at Tue Aug 25 05:54:09 IST 2026
[2026-08-25 05:54:09,253.253 INFO    ] ================================================
[2026-08-25 05:54:09,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:54:09
[2026-08-25 05:54:10,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:54:10,852.852 INFO    ] Initializing speech engine...
[2026-08-25 05:54:10,866.866 INFO    ] 2026-08-25 05:54:10
[2026-08-25 05:54:11,173.173 INFO    ] 2026-08-25 05:54:11
[2026-08-25 05:54:11,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:54:11,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:54:11,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:54:11,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:54:11,637.637 INFO    ] time= 25/08/2026 05:54:11
[2026-08-25 05:54:11,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:54:11,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:54:11,829.829 INFO    ] No existing commands found in stream
[2026-08-25 05:54:16,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:54:16,859.859 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 05:54:18,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:54:18,932.932 INFO    ] Checking for system updates...
[2026-08-25 05:54:18,969.969 INFO    ] 200
[2026-08-25 05:54:18,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:19,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:54:19,033.033 INFO    ] No update needed
[2026-08-25 05:54:19,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 05:54:19,072.072 INFO    ] 200
[2026-08-25 05:54:19,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:19,119.119 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:54:19,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:54:19,173.173 INFO    ] No camera update needed
[2026-08-25 05:54:19,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:54:19,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:54:19,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:54:19,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:54:21,232.232 INFO    ] ================================================
[2026-08-25 05:54:21,247.247 INFO    ] Launching Daemon at Tue Aug 25 05:54:21 IST 2026
[2026-08-25 05:54:21,259.259 INFO    ] ================================================
[2026-08-25 05:54:21,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:54:21
[2026-08-25 05:54:22,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:54:22,820.820 INFO    ] Initializing speech engine...
[2026-08-25 05:54:22,827.827 INFO    ] 2026-08-25 05:54:22
[2026-08-25 05:54:23,132.132 INFO    ] 2026-08-25 05:54:23
[2026-08-25 05:54:23,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:54:23,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:54:23,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:54:23,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:54:23,639.639 INFO    ] time= 25/08/2026 05:54:23
[2026-08-25 05:54:23,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:54:23,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:54:23,828.828 INFO    ] No existing commands found in stream
[2026-08-25 05:54:28,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:54:28,857.857 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 05:54:29,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:54:29,451.451 INFO    ] Checking for system updates...
[2026-08-25 05:54:29,487.487 INFO    ] 200
[2026-08-25 05:54:29,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:29,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:54:29,545.545 INFO    ] No update needed
[2026-08-25 05:54:29,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 05:54:29,583.583 INFO    ] 200
[2026-08-25 05:54:29,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:29,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:54:29,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:54:29,674.674 INFO    ] No camera update needed
[2026-08-25 05:54:29,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:54:29,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:54:29,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:54:29,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:54:31,731.731 INFO    ] ================================================
[2026-08-25 05:54:31,746.746 INFO    ] Launching Daemon at Tue Aug 25 05:54:31 IST 2026
[2026-08-25 05:54:31,761.761 INFO    ] ================================================
[2026-08-25 05:54:32,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:54:32
[2026-08-25 05:54:33,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:54:33,465.465 INFO    ] Initializing speech engine...
[2026-08-25 05:54:33,479.479 INFO    ] 2026-08-25 05:54:33
[2026-08-25 05:54:33,786.786 INFO    ] 2026-08-25 05:54:33
[2026-08-25 05:54:33,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:54:34,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:54:34,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:54:34,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:54:34,289.289 INFO    ] time= 25/08/2026 05:54:34
[2026-08-25 05:54:34,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:54:34,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:54:34,435.435 INFO    ] No existing commands found in stream
[2026-08-25 05:54:39,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:54:39,465.465 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 05:54:43,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 05:54:43,233.233 INFO    ] Checking for system updates...
[2026-08-25 05:54:43,272.272 INFO    ] 200
[2026-08-25 05:54:43,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:43,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:54:43,331.331 INFO    ] No update needed
[2026-08-25 05:54:43,333.333 INFO    ] Checking for camera pi updates...
[2026-08-25 05:54:43,368.368 INFO    ] 200
[2026-08-25 05:54:43,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:43,415.415 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:54:43,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:54:43,470.470 INFO    ] No camera update needed
[2026-08-25 05:54:43,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:54:43,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:54:43,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:54:43,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:54:45,526.526 INFO    ] ================================================
[2026-08-25 05:54:45,541.541 INFO    ] Launching Daemon at Tue Aug 25 05:54:45 IST 2026
[2026-08-25 05:54:45,552.552 INFO    ] ================================================
[2026-08-25 05:54:46,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:54:46
[2026-08-25 05:54:46,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:54:46,957.957 INFO    ] Initializing speech engine...
[2026-08-25 05:54:46,975.975 INFO    ] 2026-08-25 05:54:46
[2026-08-25 05:54:47,221.221 INFO    ] 2026-08-25 05:54:47
[2026-08-25 05:54:47,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:54:47,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:54:47,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:54:47,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:54:47,715.715 INFO    ] time= 25/08/2026 05:54:47
[2026-08-25 05:54:47,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:54:47,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:54:47,908.908 INFO    ] No existing commands found in stream
[2026-08-25 05:54:52,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:54:52,944.944 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 05:54:56,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:54:56,378.378 INFO    ] Checking for system updates...
[2026-08-25 05:54:56,415.415 INFO    ] 200
[2026-08-25 05:54:56,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:56,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:54:56,473.473 INFO    ] No update needed
[2026-08-25 05:54:56,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 05:54:56,516.516 INFO    ] 200
[2026-08-25 05:54:56,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:54:56,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:54:56,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:54:56,615.615 INFO    ] No camera update needed
[2026-08-25 05:54:56,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:54:56,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:54:56,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:54:56,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:54:58,670.670 INFO    ] ================================================
[2026-08-25 05:54:58,685.685 INFO    ] Launching Daemon at Tue Aug 25 05:54:58 IST 2026
[2026-08-25 05:54:58,696.696 INFO    ] ================================================
[2026-08-25 05:54:59,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:54:59
[2026-08-25 05:54:59,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:55:00,131.131 INFO    ] Initializing speech engine...
[2026-08-25 05:55:00,140.140 INFO    ] 2026-08-25 05:55:00
[2026-08-25 05:55:00,385.385 INFO    ] 2026-08-25 05:55:00
[2026-08-25 05:55:00,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:55:00,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:55:00,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:55:00,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:55:00,851.851 INFO    ] time= 25/08/2026 05:55:00
[2026-08-25 05:55:00,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:55:00,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:55:01,074.074 INFO    ] No existing commands found in stream
[2026-08-25 05:55:06,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:55:06,104.104 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 05:55:06,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:55:06,941.941 INFO    ] Checking for system updates...
[2026-08-25 05:55:06,976.976 INFO    ] 200
[2026-08-25 05:55:06,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:07,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:07,043.043 INFO    ] No update needed
[2026-08-25 05:55:07,045.045 INFO    ] Checking for camera pi updates...
[2026-08-25 05:55:07,079.079 INFO    ] 200
[2026-08-25 05:55:07,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:07,121.121 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:55:07,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:07,171.171 INFO    ] No camera update needed
[2026-08-25 05:55:07,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:55:07,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:55:07,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:55:07,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:55:09,227.227 INFO    ] ================================================
[2026-08-25 05:55:09,242.242 INFO    ] Launching Daemon at Tue Aug 25 05:55:09 IST 2026
[2026-08-25 05:55:09,253.253 INFO    ] ================================================
[2026-08-25 05:55:09,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:55:09
[2026-08-25 05:55:10,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:55:10,825.825 INFO    ] Initializing speech engine...
[2026-08-25 05:55:10,837.837 INFO    ] 2026-08-25 05:55:10
[2026-08-25 05:55:11,105.105 INFO    ] 2026-08-25 05:55:11
[2026-08-25 05:55:11,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:55:11,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:55:11,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:55:11,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:55:11,583.583 INFO    ] time= 25/08/2026 05:55:11
[2026-08-25 05:55:11,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:55:11,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:55:11,793.793 INFO    ] No existing commands found in stream
[2026-08-25 05:55:16,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:55:16,827.827 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 05:55:17,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:55:17,302.302 INFO    ] Checking for system updates...
[2026-08-25 05:55:17,340.340 INFO    ] 200
[2026-08-25 05:55:17,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:17,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:17,402.402 INFO    ] No update needed
[2026-08-25 05:55:17,404.404 INFO    ] Checking for camera pi updates...
[2026-08-25 05:55:17,437.437 INFO    ] 200
[2026-08-25 05:55:17,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:17,479.479 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:55:17,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:17,535.535 INFO    ] No camera update needed
[2026-08-25 05:55:17,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:55:17,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:55:17,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:55:17,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:55:19,589.589 INFO    ] ================================================
[2026-08-25 05:55:19,604.604 INFO    ] Launching Daemon at Tue Aug 25 05:55:19 IST 2026
[2026-08-25 05:55:19,615.615 INFO    ] ================================================
[2026-08-25 05:55:20,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:55:20
[2026-08-25 05:55:20,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:55:21,034.034 INFO    ] Initializing speech engine...
[2026-08-25 05:55:21,041.041 INFO    ] 2026-08-25 05:55:21
[2026-08-25 05:55:21,329.329 INFO    ] 2026-08-25 05:55:21
[2026-08-25 05:55:21,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:55:21,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:55:21,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:55:21,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:55:21,731.731 INFO    ] time= 25/08/2026 05:55:21
[2026-08-25 05:55:21,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:55:21,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:55:21,892.892 INFO    ] No existing commands found in stream
[2026-08-25 05:55:26,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:55:26,915.915 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 05:55:27,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:55:27,984.984 INFO    ] Checking for system updates...
[2026-08-25 05:55:28,022.022 INFO    ] 200
[2026-08-25 05:55:28,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:28,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:28,078.078 INFO    ] No update needed
[2026-08-25 05:55:28,081.081 INFO    ] Checking for camera pi updates...
[2026-08-25 05:55:28,115.115 INFO    ] 200
[2026-08-25 05:55:28,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:28,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:55:28,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:28,210.210 INFO    ] No camera update needed
[2026-08-25 05:55:28,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:55:28,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:55:28,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:55:28,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:55:30,264.264 INFO    ] ================================================
[2026-08-25 05:55:30,278.278 INFO    ] Launching Daemon at Tue Aug 25 05:55:30 IST 2026
[2026-08-25 05:55:30,289.289 INFO    ] ================================================
[2026-08-25 05:55:30,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:55:30
[2026-08-25 05:55:31,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:55:31,852.852 INFO    ] Initializing speech engine...
[2026-08-25 05:55:31,860.860 INFO    ] 2026-08-25 05:55:31
[2026-08-25 05:55:32,204.204 INFO    ] 2026-08-25 05:55:32
[2026-08-25 05:55:32,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:55:32,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:55:32,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:55:32,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:55:32,745.745 INFO    ] time= 25/08/2026 05:55:32
[2026-08-25 05:55:32,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:55:32,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:55:32,910.910 INFO    ] No existing commands found in stream
[2026-08-25 05:55:37,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:55:37,923.923 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 05:55:41,384.384 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:55:41,388.388 INFO    ] Checking for system updates...
[2026-08-25 05:55:41,427.427 INFO    ] 200
[2026-08-25 05:55:41,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:41,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:41,520.520 INFO    ] No update needed
[2026-08-25 05:55:41,522.522 INFO    ] Checking for camera pi updates...
[2026-08-25 05:55:41,559.559 INFO    ] 200
[2026-08-25 05:55:41,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:41,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:55:41,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:55:41,659.659 INFO    ] No camera update needed
[2026-08-25 05:55:41,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:55:41,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:55:41,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:55:41,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:55:43,713.713 INFO    ] ================================================
[2026-08-25 05:55:43,729.729 INFO    ] Launching Daemon at Tue Aug 25 05:55:43 IST 2026
[2026-08-25 05:55:43,741.741 INFO    ] ================================================
[2026-08-25 05:55:44,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:55:44
[2026-08-25 05:55:44,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:55:45,226.226 INFO    ] Initializing speech engine...
[2026-08-25 05:55:45,235.235 INFO    ] 2026-08-25 05:55:45
[2026-08-25 05:55:45,499.499 INFO    ] 2026-08-25 05:55:45
[2026-08-25 05:55:45,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:55:45,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:55:45,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:55:45,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:55:45,880.880 INFO    ] time= 25/08/2026 05:55:45
[2026-08-25 05:55:45,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:55:45,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:55:46,076.076 INFO    ] No existing commands found in stream
[2026-08-25 05:55:51,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:55:51,135.135 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 05:55:54,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:55:54,928.928 INFO    ] Checking for system updates...
[2026-08-25 05:55:54,964.964 INFO    ] 200
[2026-08-25 05:55:54,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:55,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:55:55,024.024 INFO    ] No update needed
[2026-08-25 05:55:55,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 05:55:55,066.066 INFO    ] 200
[2026-08-25 05:55:55,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:55:55,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:55:55,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:55:55,263.263 INFO    ] No camera update needed
[2026-08-25 05:55:55,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:55:55,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:55:55,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:55:55,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:55:57,319.319 INFO    ] ================================================
[2026-08-25 05:55:57,333.333 INFO    ] Launching Daemon at Tue Aug 25 05:55:57 IST 2026
[2026-08-25 05:55:57,344.344 INFO    ] ================================================
[2026-08-25 05:55:57,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:55:57
[2026-08-25 05:55:58,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:55:58,926.926 INFO    ] Initializing speech engine...
[2026-08-25 05:55:58,932.932 INFO    ] 2026-08-25 05:55:58
[2026-08-25 05:55:59,202.202 INFO    ] 2026-08-25 05:55:59
[2026-08-25 05:55:59,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:55:59,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:55:59,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:55:59,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:55:59,685.685 INFO    ] time= 25/08/2026 05:55:59
[2026-08-25 05:55:59,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:55:59,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:55:59,926.926 INFO    ] No existing commands found in stream
[2026-08-25 05:56:04,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:56:04,942.942 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 05:56:05,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:56:05,740.740 INFO    ] Checking for system updates...
[2026-08-25 05:56:05,776.776 INFO    ] 200
[2026-08-25 05:56:05,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:05,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:56:05,840.840 INFO    ] No update needed
[2026-08-25 05:56:05,842.842 INFO    ] Checking for camera pi updates...
[2026-08-25 05:56:05,879.879 INFO    ] 200
[2026-08-25 05:56:05,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:05,921.921 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:56:05,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:56:05,972.972 INFO    ] No camera update needed
[2026-08-25 05:56:05,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:56:05,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:56:05,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:56:05,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:56:08,027.027 INFO    ] ================================================
[2026-08-25 05:56:08,041.041 INFO    ] Launching Daemon at Tue Aug 25 05:56:08 IST 2026
[2026-08-25 05:56:08,053.053 INFO    ] ================================================
[2026-08-25 05:56:08,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:56:08
[2026-08-25 05:56:09,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:56:09,470.470 INFO    ] Initializing speech engine...
[2026-08-25 05:56:09,480.480 INFO    ] 2026-08-25 05:56:09
[2026-08-25 05:56:09,728.728 INFO    ] 2026-08-25 05:56:09
[2026-08-25 05:56:09,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:56:09,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:56:09,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:56:10,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:56:10,104.104 INFO    ] time= 25/08/2026 05:56:10
[2026-08-25 05:56:10,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:56:10,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:56:10,281.281 INFO    ] No existing commands found in stream
[2026-08-25 05:56:15,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:56:15,314.314 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 05:56:16,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:56:16,562.562 INFO    ] Checking for system updates...
[2026-08-25 05:56:16,598.598 INFO    ] 200
[2026-08-25 05:56:16,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:16,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:56:16,663.663 INFO    ] No update needed
[2026-08-25 05:56:16,666.666 INFO    ] Checking for camera pi updates...
[2026-08-25 05:56:16,701.701 INFO    ] 200
[2026-08-25 05:56:16,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:16,744.744 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:56:16,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:56:16,793.793 INFO    ] No camera update needed
[2026-08-25 05:56:16,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:56:16,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:56:16,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:56:16,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:56:18,852.852 INFO    ] ================================================
[2026-08-25 05:56:18,867.867 INFO    ] Launching Daemon at Tue Aug 25 05:56:18 IST 2026
[2026-08-25 05:56:18,878.878 INFO    ] ================================================
[2026-08-25 05:56:19,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:56:19
[2026-08-25 05:56:20,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:56:20,280.280 INFO    ] Initializing speech engine...
[2026-08-25 05:56:20,302.302 INFO    ] 2026-08-25 05:56:20
[2026-08-25 05:56:20,556.556 INFO    ] 2026-08-25 05:56:20
[2026-08-25 05:56:20,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:56:20,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:56:20,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:56:20,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:56:20,933.933 INFO    ] time= 25/08/2026 05:56:20
[2026-08-25 05:56:20,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:56:20,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:56:21,110.110 INFO    ] No existing commands found in stream
[2026-08-25 05:56:26,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:56:26,143.143 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 05:56:29,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:56:29,897.897 INFO    ] Checking for system updates...
[2026-08-25 05:56:29,932.932 INFO    ] 200
[2026-08-25 05:56:29,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:29,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:56:29,989.989 INFO    ] No update needed
[2026-08-25 05:56:29,991.991 INFO    ] Checking for camera pi updates...
[2026-08-25 05:56:30,024.024 INFO    ] 200
[2026-08-25 05:56:30,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:30,067.067 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:56:30,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:56:30,120.120 INFO    ] No camera update needed
[2026-08-25 05:56:30,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:56:30,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:56:30,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:56:30,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:56:32,177.177 INFO    ] ================================================
[2026-08-25 05:56:32,193.193 INFO    ] Launching Daemon at Tue Aug 25 05:56:32 IST 2026
[2026-08-25 05:56:32,205.205 INFO    ] ================================================
[2026-08-25 05:56:32,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:56:32
[2026-08-25 05:56:33,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:56:33,668.668 INFO    ] Initializing speech engine...
[2026-08-25 05:56:33,692.692 INFO    ] 2026-08-25 05:56:33
[2026-08-25 05:56:33,960.960 INFO    ] 2026-08-25 05:56:33
[2026-08-25 05:56:33,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:56:34,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:56:34,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:56:34,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:56:34,367.367 INFO    ] time= 25/08/2026 05:56:34
[2026-08-25 05:56:34,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:56:34,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:56:34,523.523 INFO    ] No existing commands found in stream
[2026-08-25 05:56:39,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:56:39,556.556 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 05:56:42,117.117 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:56:42,120.120 INFO    ] Checking for system updates...
[2026-08-25 05:56:42,158.158 INFO    ] 200
[2026-08-25 05:56:42,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:42,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:56:42,215.215 INFO    ] No update needed
[2026-08-25 05:56:42,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 05:56:42,251.251 INFO    ] 200
[2026-08-25 05:56:42,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:42,295.295 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:56:42,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:56:42,373.373 INFO    ] No camera update needed
[2026-08-25 05:56:42,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:56:42,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:56:42,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:56:42,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:56:44,427.427 INFO    ] ================================================
[2026-08-25 05:56:44,443.443 INFO    ] Launching Daemon at Tue Aug 25 05:56:44 IST 2026
[2026-08-25 05:56:44,454.454 INFO    ] ================================================
[2026-08-25 05:56:45,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:56:45
[2026-08-25 05:56:45,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:56:46,037.037 INFO    ] Initializing speech engine...
[2026-08-25 05:56:46,051.051 INFO    ] 2026-08-25 05:56:46
[2026-08-25 05:56:46,314.314 INFO    ] 2026-08-25 05:56:46
[2026-08-25 05:56:46,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:56:46,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:56:46,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:56:46,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:56:46,809.809 INFO    ] time= 25/08/2026 05:56:46
[2026-08-25 05:56:46,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:56:46,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:56:46,994.994 INFO    ] No existing commands found in stream
[2026-08-25 05:56:52,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:56:52,020.020 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 05:56:54,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:56:54,923.923 INFO    ] Checking for system updates...
[2026-08-25 05:56:54,962.962 INFO    ] 200
[2026-08-25 05:56:54,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:55,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:56:55,020.020 INFO    ] No update needed
[2026-08-25 05:56:55,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 05:56:55,057.057 INFO    ] 200
[2026-08-25 05:56:55,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:56:55,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:56:55,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:56:55,155.155 INFO    ] No camera update needed
[2026-08-25 05:56:55,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:56:55,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:56:55,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:56:55,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:56:57,212.212 INFO    ] ================================================
[2026-08-25 05:56:57,228.228 INFO    ] Launching Daemon at Tue Aug 25 05:56:57 IST 2026
[2026-08-25 05:56:57,239.239 INFO    ] ================================================
[2026-08-25 05:56:57,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:56:57
[2026-08-25 05:56:58,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:56:58,662.662 INFO    ] Initializing speech engine...
[2026-08-25 05:56:58,672.672 INFO    ] 2026-08-25 05:56:58
[2026-08-25 05:56:58,923.923 INFO    ] 2026-08-25 05:56:58
[2026-08-25 05:56:58,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:56:59,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:56:59,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:56:59,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:56:59,399.399 INFO    ] time= 25/08/2026 05:56:59
[2026-08-25 05:56:59,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:56:59,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:56:59,619.619 INFO    ] No existing commands found in stream
[2026-08-25 05:57:04,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:57:04,651.651 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 05:57:06,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:57:06,320.320 INFO    ] Checking for system updates...
[2026-08-25 05:57:06,362.362 INFO    ] 200
[2026-08-25 05:57:06,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:06,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:57:06,419.419 INFO    ] No update needed
[2026-08-25 05:57:06,421.421 INFO    ] Checking for camera pi updates...
[2026-08-25 05:57:06,454.454 INFO    ] 200
[2026-08-25 05:57:06,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:06,501.501 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:57:06,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:57:06,561.561 INFO    ] No camera update needed
[2026-08-25 05:57:06,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:57:06,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:57:06,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:57:06,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:57:08,624.624 INFO    ] ================================================
[2026-08-25 05:57:08,640.640 INFO    ] Launching Daemon at Tue Aug 25 05:57:08 IST 2026
[2026-08-25 05:57:08,651.651 INFO    ] ================================================
[2026-08-25 05:57:09,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:57:09
[2026-08-25 05:57:09,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:57:10,065.065 INFO    ] Initializing speech engine...
[2026-08-25 05:57:10,078.078 INFO    ] 2026-08-25 05:57:10
[2026-08-25 05:57:10,331.331 INFO    ] 2026-08-25 05:57:10
[2026-08-25 05:57:10,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:57:10,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:57:10,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:57:10,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:57:10,779.779 INFO    ] time= 25/08/2026 05:57:10
[2026-08-25 05:57:10,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:57:10,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:57:11,003.003 INFO    ] No existing commands found in stream
[2026-08-25 05:57:16,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:57:16,035.035 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 05:57:18,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:57:18,580.580 INFO    ] Checking for system updates...
[2026-08-25 05:57:18,616.616 INFO    ] 200
[2026-08-25 05:57:18,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:18,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:57:18,676.676 INFO    ] No update needed
[2026-08-25 05:57:18,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 05:57:18,711.711 INFO    ] 200
[2026-08-25 05:57:18,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:18,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:57:18,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:57:18,801.801 INFO    ] No camera update needed
[2026-08-25 05:57:18,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:57:18,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:57:18,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:57:18,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:57:20,856.856 INFO    ] ================================================
[2026-08-25 05:57:20,871.871 INFO    ] Launching Daemon at Tue Aug 25 05:57:20 IST 2026
[2026-08-25 05:57:20,883.883 INFO    ] ================================================
[2026-08-25 05:57:21,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:57:21
[2026-08-25 05:57:22,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:57:22,307.307 INFO    ] Initializing speech engine...
[2026-08-25 05:57:22,314.314 INFO    ] 2026-08-25 05:57:22
[2026-08-25 05:57:22,570.570 INFO    ] 2026-08-25 05:57:22
[2026-08-25 05:57:22,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:57:22,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:57:22,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:57:22,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:57:23,027.027 INFO    ] time= 25/08/2026 05:57:22
[2026-08-25 05:57:23,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:57:23,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:57:23,235.235 INFO    ] No existing commands found in stream
[2026-08-25 05:57:28,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:57:28,265.265 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 05:57:32,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:57:32,132.132 INFO    ] Checking for system updates...
[2026-08-25 05:57:32,170.170 INFO    ] 200
[2026-08-25 05:57:32,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:32,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:57:32,232.232 INFO    ] No update needed
[2026-08-25 05:57:32,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 05:57:32,272.272 INFO    ] 200
[2026-08-25 05:57:32,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:32,316.316 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:57:32,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:57:32,407.407 INFO    ] No camera update needed
[2026-08-25 05:57:32,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:57:32,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:57:32,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:57:32,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:57:34,465.465 INFO    ] ================================================
[2026-08-25 05:57:34,481.481 INFO    ] Launching Daemon at Tue Aug 25 05:57:34 IST 2026
[2026-08-25 05:57:34,492.492 INFO    ] ================================================
[2026-08-25 05:57:35,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:57:35
[2026-08-25 05:57:35,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:57:35,907.907 INFO    ] Initializing speech engine...
[2026-08-25 05:57:35,916.916 INFO    ] 2026-08-25 05:57:35
[2026-08-25 05:57:36,165.165 INFO    ] 2026-08-25 05:57:36
[2026-08-25 05:57:36,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:57:36,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:57:36,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:57:36,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:57:36,601.601 INFO    ] time= 25/08/2026 05:57:36
[2026-08-25 05:57:36,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:57:36,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:57:36,749.749 INFO    ] No existing commands found in stream
[2026-08-25 05:57:41,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:57:41,764.764 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 05:57:44,877.877 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:57:44,879.879 INFO    ] Checking for system updates...
[2026-08-25 05:57:44,914.914 INFO    ] 200
[2026-08-25 05:57:44,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:44,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:57:44,973.973 INFO    ] No update needed
[2026-08-25 05:57:44,975.975 INFO    ] Checking for camera pi updates...
[2026-08-25 05:57:45,012.012 INFO    ] 200
[2026-08-25 05:57:45,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:45,056.056 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:57:45,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:57:45,106.106 INFO    ] No camera update needed
[2026-08-25 05:57:45,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:57:45,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:57:45,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:57:45,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:57:47,161.161 INFO    ] ================================================
[2026-08-25 05:57:47,177.177 INFO    ] Launching Daemon at Tue Aug 25 05:57:47 IST 2026
[2026-08-25 05:57:47,187.187 INFO    ] ================================================
[2026-08-25 05:57:47,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:57:47
[2026-08-25 05:57:48,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:57:48,598.598 INFO    ] Initializing speech engine...
[2026-08-25 05:57:48,610.610 INFO    ] 2026-08-25 05:57:48
[2026-08-25 05:57:48,877.877 INFO    ] 2026-08-25 05:57:48
[2026-08-25 05:57:48,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:57:49,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:57:49,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:57:49,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:57:49,260.260 INFO    ] time= 25/08/2026 05:57:49
[2026-08-25 05:57:49,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:57:49,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:57:49,454.454 INFO    ] No existing commands found in stream
[2026-08-25 05:57:54,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:57:54,464.464 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 05:57:58,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:57:58,510.510 INFO    ] Checking for system updates...
[2026-08-25 05:57:58,549.549 INFO    ] 200
[2026-08-25 05:57:58,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:58,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:57:58,605.605 INFO    ] No update needed
[2026-08-25 05:57:58,608.608 INFO    ] Checking for camera pi updates...
[2026-08-25 05:57:58,644.644 INFO    ] 200
[2026-08-25 05:57:58,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:57:58,686.686 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:57:58,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:57:58,841.841 INFO    ] No camera update needed
[2026-08-25 05:57:58,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:57:58,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:57:58,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:57:58,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:58:00,895.895 INFO    ] ================================================
[2026-08-25 05:58:00,910.910 INFO    ] Launching Daemon at Tue Aug 25 05:58:00 IST 2026
[2026-08-25 05:58:00,920.920 INFO    ] ================================================
[2026-08-25 05:58:01,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:58:01
[2026-08-25 05:58:02,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:58:02,508.508 INFO    ] Initializing speech engine...
[2026-08-25 05:58:02,511.511 INFO    ] 2026-08-25 05:58:02
[2026-08-25 05:58:02,775.775 INFO    ] 2026-08-25 05:58:02
[2026-08-25 05:58:02,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:58:03,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:58:03,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:58:03,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:58:03,244.244 INFO    ] time= 25/08/2026 05:58:03
[2026-08-25 05:58:03,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:58:03,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:58:03,387.387 INFO    ] No existing commands found in stream
[2026-08-25 05:58:08,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:58:08,400.400 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 05:58:09,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 05:58:09,582.582 INFO    ] Checking for system updates...
[2026-08-25 05:58:09,617.617 INFO    ] 200
[2026-08-25 05:58:09,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:09,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:58:09,679.679 INFO    ] No update needed
[2026-08-25 05:58:09,681.681 INFO    ] Checking for camera pi updates...
[2026-08-25 05:58:09,716.716 INFO    ] 200
[2026-08-25 05:58:09,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:09,759.759 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:58:09,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:58:09,814.814 INFO    ] No camera update needed
[2026-08-25 05:58:09,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:58:09,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:58:09,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:58:09,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:58:11,868.868 INFO    ] ================================================
[2026-08-25 05:58:11,882.882 INFO    ] Launching Daemon at Tue Aug 25 05:58:11 IST 2026
[2026-08-25 05:58:11,893.893 INFO    ] ================================================
[2026-08-25 05:58:12,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:58:12
[2026-08-25 05:58:13,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:58:13,534.534 INFO    ] Initializing speech engine...
[2026-08-25 05:58:13,538.538 INFO    ] 2026-08-25 05:58:13
[2026-08-25 05:58:13,822.822 INFO    ] 2026-08-25 05:58:13
[2026-08-25 05:58:13,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:58:14,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:58:14,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:58:14,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:58:14,352.352 INFO    ] time= 25/08/2026 05:58:14
[2026-08-25 05:58:14,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:58:14,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:58:14,506.506 INFO    ] No existing commands found in stream
[2026-08-25 05:58:19,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:58:19,521.521 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 05:58:20,075.075 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:58:20,078.078 INFO    ] Checking for system updates...
[2026-08-25 05:58:20,114.114 INFO    ] 200
[2026-08-25 05:58:20,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:20,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:20,178.178 INFO    ] No update needed
[2026-08-25 05:58:20,180.180 INFO    ] Checking for camera pi updates...
[2026-08-25 05:58:20,214.214 INFO    ] 200
[2026-08-25 05:58:20,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:20,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:58:20,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:20,303.303 INFO    ] No camera update needed
[2026-08-25 05:58:20,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:58:20,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:58:20,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:58:20,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:58:22,357.357 INFO    ] ================================================
[2026-08-25 05:58:22,373.373 INFO    ] Launching Daemon at Tue Aug 25 05:58:22 IST 2026
[2026-08-25 05:58:22,383.383 INFO    ] ================================================
[2026-08-25 05:58:22,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:58:22
[2026-08-25 05:58:23,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:58:23,837.837 INFO    ] Initializing speech engine...
[2026-08-25 05:58:23,846.846 INFO    ] 2026-08-25 05:58:23
[2026-08-25 05:58:24,090.090 INFO    ] 2026-08-25 05:58:24
[2026-08-25 05:58:24,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:58:24,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:58:24,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:58:24,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:58:24,567.567 INFO    ] time= 25/08/2026 05:58:24
[2026-08-25 05:58:24,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:58:24,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:58:24,799.799 INFO    ] No existing commands found in stream
[2026-08-25 05:58:29,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:58:29,817.817 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 05:58:33,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:58:33,801.801 INFO    ] Checking for system updates...
[2026-08-25 05:58:33,837.837 INFO    ] 200
[2026-08-25 05:58:33,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:33,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:33,897.897 INFO    ] No update needed
[2026-08-25 05:58:33,900.900 INFO    ] Checking for camera pi updates...
[2026-08-25 05:58:33,934.934 INFO    ] 200
[2026-08-25 05:58:33,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:33,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:58:34,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:34,034.034 INFO    ] No camera update needed
[2026-08-25 05:58:34,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:58:34,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:58:34,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:58:34,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:58:36,094.094 INFO    ] ================================================
[2026-08-25 05:58:36,109.109 INFO    ] Launching Daemon at Tue Aug 25 05:58:36 IST 2026
[2026-08-25 05:58:36,120.120 INFO    ] ================================================
[2026-08-25 05:58:36,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:58:36
[2026-08-25 05:58:37,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:58:37,738.738 INFO    ] Initializing speech engine...
[2026-08-25 05:58:37,746.746 INFO    ] 2026-08-25 05:58:37
[2026-08-25 05:58:38,065.065 INFO    ] 2026-08-25 05:58:38
[2026-08-25 05:58:38,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:58:38,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:58:38,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:58:38,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:58:38,509.509 INFO    ] time= 25/08/2026 05:58:38
[2026-08-25 05:58:38,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:58:38,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:58:38,724.724 INFO    ] No existing commands found in stream
[2026-08-25 05:58:43,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:58:43,752.752 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 05:58:44,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:58:44,700.700 INFO    ] Checking for system updates...
[2026-08-25 05:58:44,736.736 INFO    ] 200
[2026-08-25 05:58:44,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:44,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:44,798.798 INFO    ] No update needed
[2026-08-25 05:58:44,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 05:58:44,839.839 INFO    ] 200
[2026-08-25 05:58:44,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:44,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:58:44,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:44,933.933 INFO    ] No camera update needed
[2026-08-25 05:58:44,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:58:44,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:58:44,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:58:44,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:58:46,988.988 INFO    ] ================================================
[2026-08-25 05:58:47,009.009 INFO    ] Launching Daemon at Tue Aug 25 05:58:47 IST 2026
[2026-08-25 05:58:47,020.020 INFO    ] ================================================
[2026-08-25 05:58:47,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:58:47
[2026-08-25 05:58:48,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:58:48,535.535 INFO    ] Initializing speech engine...
[2026-08-25 05:58:48,543.543 INFO    ] 2026-08-25 05:58:48
[2026-08-25 05:58:48,861.861 INFO    ] 2026-08-25 05:58:48
[2026-08-25 05:58:48,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:58:49,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:58:49,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:58:49,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:58:49,371.371 INFO    ] time= 25/08/2026 05:58:49
[2026-08-25 05:58:49,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:58:49,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:58:49,527.527 INFO    ] No existing commands found in stream
[2026-08-25 05:58:54,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:58:54,551.551 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 05:58:59,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 05:58:59,014.014 INFO    ] Checking for system updates...
[2026-08-25 05:58:59,056.056 INFO    ] 200
[2026-08-25 05:58:59,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:59,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:59,115.115 INFO    ] No update needed
[2026-08-25 05:58:59,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 05:58:59,152.152 INFO    ] 200
[2026-08-25 05:58:59,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:58:59,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:58:59,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:58:59,259.259 INFO    ] No camera update needed
[2026-08-25 05:58:59,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:58:59,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:58:59,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:58:59,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:59:01,316.316 INFO    ] ================================================
[2026-08-25 05:59:01,331.331 INFO    ] Launching Daemon at Tue Aug 25 05:59:01 IST 2026
[2026-08-25 05:59:01,342.342 INFO    ] ================================================
[2026-08-25 05:59:02,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:59:02
[2026-08-25 05:59:02,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:59:03,052.052 INFO    ] Initializing speech engine...
[2026-08-25 05:59:03,061.061 INFO    ] 2026-08-25 05:59:03
[2026-08-25 05:59:03,389.389 INFO    ] 2026-08-25 05:59:03
[2026-08-25 05:59:03,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:59:03,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:59:03,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:59:03,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:59:03,787.787 INFO    ] time= 25/08/2026 05:59:03
[2026-08-25 05:59:03,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:59:03,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:59:03,972.972 INFO    ] No existing commands found in stream
[2026-08-25 05:59:08,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:59:08,996.996 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 05:59:13,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 05:59:13,410.410 INFO    ] Checking for system updates...
[2026-08-25 05:59:13,448.448 INFO    ] 200
[2026-08-25 05:59:13,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:13,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:59:13,509.509 INFO    ] No update needed
[2026-08-25 05:59:13,512.512 INFO    ] Checking for camera pi updates...
[2026-08-25 05:59:13,546.546 INFO    ] 200
[2026-08-25 05:59:13,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:13,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:59:13,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 05:59:13,646.646 INFO    ] No camera update needed
[2026-08-25 05:59:13,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:59:13,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:59:13,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:59:13,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:59:15,701.701 INFO    ] ================================================
[2026-08-25 05:59:15,716.716 INFO    ] Launching Daemon at Tue Aug 25 05:59:15 IST 2026
[2026-08-25 05:59:15,727.727 INFO    ] ================================================
[2026-08-25 05:59:16,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:59:16
[2026-08-25 05:59:16,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:59:17,163.163 INFO    ] Initializing speech engine...
[2026-08-25 05:59:17,181.181 INFO    ] 2026-08-25 05:59:17
[2026-08-25 05:59:17,436.436 INFO    ] 2026-08-25 05:59:17
[2026-08-25 05:59:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:59:17,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:59:17,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:59:17,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:59:17,923.923 INFO    ] time= 25/08/2026 05:59:17
[2026-08-25 05:59:17,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:59:17,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:59:18,131.131 INFO    ] No existing commands found in stream
[2026-08-25 05:59:23,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:59:23,154.154 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 05:59:26,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:59:26,385.385 INFO    ] Checking for system updates...
[2026-08-25 05:59:26,423.423 INFO    ] 200
[2026-08-25 05:59:26,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:26,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:59:26,482.482 INFO    ] No update needed
[2026-08-25 05:59:26,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 05:59:26,519.519 INFO    ] 200
[2026-08-25 05:59:26,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:26,563.563 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:59:26,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:59:26,623.623 INFO    ] No camera update needed
[2026-08-25 05:59:26,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:59:26,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:59:26,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:59:26,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:59:28,681.681 INFO    ] ================================================
[2026-08-25 05:59:28,696.696 INFO    ] Launching Daemon at Tue Aug 25 05:59:28 IST 2026
[2026-08-25 05:59:28,706.706 INFO    ] ================================================
[2026-08-25 05:59:29,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:59:29
[2026-08-25 05:59:29,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:59:30,175.175 INFO    ] Initializing speech engine...
[2026-08-25 05:59:30,184.184 INFO    ] 2026-08-25 05:59:30
[2026-08-25 05:59:30,435.435 INFO    ] 2026-08-25 05:59:30
[2026-08-25 05:59:30,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:59:30,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:59:30,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:59:30,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:59:30,918.918 INFO    ] time= 25/08/2026 05:59:30
[2026-08-25 05:59:30,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:59:30,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:59:31,121.121 INFO    ] No existing commands found in stream
[2026-08-25 05:59:36,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:59:36,147.147 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 05:59:38,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 05:59:38,364.364 INFO    ] Checking for system updates...
[2026-08-25 05:59:38,400.400 INFO    ] 200
[2026-08-25 05:59:38,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:38,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:59:38,458.458 INFO    ] No update needed
[2026-08-25 05:59:38,461.461 INFO    ] Checking for camera pi updates...
[2026-08-25 05:59:38,496.496 INFO    ] 200
[2026-08-25 05:59:38,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:38,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:59:38,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:59:38,603.603 INFO    ] No camera update needed
[2026-08-25 05:59:38,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:59:38,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:59:38,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:59:38,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:59:40,656.656 INFO    ] ================================================
[2026-08-25 05:59:40,672.672 INFO    ] Launching Daemon at Tue Aug 25 05:59:40 IST 2026
[2026-08-25 05:59:40,682.682 INFO    ] ================================================
[2026-08-25 05:59:41,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:59:41
[2026-08-25 05:59:41,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:59:42,090.090 INFO    ] Initializing speech engine...
[2026-08-25 05:59:42,109.109 INFO    ] 2026-08-25 05:59:42
[2026-08-25 05:59:42,360.360 INFO    ] 2026-08-25 05:59:42
[2026-08-25 05:59:42,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:59:42,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:59:42,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:59:42,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:59:42,805.805 INFO    ] time= 25/08/2026 05:59:42
[2026-08-25 05:59:42,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:59:42,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:59:43,055.055 INFO    ] No existing commands found in stream
[2026-08-25 05:59:48,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 05:59:48,083.083 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 05:59:52,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 05:59:52,047.047 INFO    ] Checking for system updates...
[2026-08-25 05:59:52,082.082 INFO    ] 200
[2026-08-25 05:59:52,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:52,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:59:52,140.140 INFO    ] No update needed
[2026-08-25 05:59:52,142.142 INFO    ] Checking for camera pi updates...
[2026-08-25 05:59:52,175.175 INFO    ] 200
[2026-08-25 05:59:52,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 05:59:52,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 05:59:52,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 05:59:52,266.266 INFO    ] No camera update needed
[2026-08-25 05:59:52,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-25 05:59:52,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 05:59:52,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 05:59:52,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 05:59:54,320.320 INFO    ] ================================================
[2026-08-25 05:59:54,335.335 INFO    ] Launching Daemon at Tue Aug 25 05:59:54 IST 2026
[2026-08-25 05:59:54,345.345 INFO    ] ================================================
[2026-08-25 05:59:54,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 05:59:54
[2026-08-25 05:59:55,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 05:59:55,828.828 INFO    ] Initializing speech engine...
[2026-08-25 05:59:55,838.838 INFO    ] 2026-08-25 05:59:55
[2026-08-25 05:59:56,082.082 INFO    ] 2026-08-25 05:59:56
[2026-08-25 05:59:56,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 05:59:56,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 05:59:56,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 05:59:56,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 05:59:56,451.451 INFO    ] time= 25/08/2026 05:59:56
[2026-08-25 05:59:56,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 05:59:56,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-25 05:59:56,620.620 INFO    ] No existing commands found in stream
[2026-08-25 06:00:01,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:00:01,654.654 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 06:00:04,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:00:04,245.245 INFO    ] Checking for system updates...
[2026-08-25 06:00:04,338.338 INFO    ] 200
[2026-08-25 06:00:04,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:04,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:00:04,549.549 INFO    ] No update needed
[2026-08-25 06:00:04,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 06:00:04,674.674 INFO    ] 200
[2026-08-25 06:00:04,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:04,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:00:05,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:00:05,194.194 INFO    ] No camera update needed
[2026-08-25 06:00:05,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:00:05,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:00:05,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:00:05,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:00:07,307.307 INFO    ] ================================================
[2026-08-25 06:00:07,322.322 INFO    ] Launching Daemon at Tue Aug 25 06:00:07 IST 2026
[2026-08-25 06:00:07,333.333 INFO    ] ================================================
[2026-08-25 06:00:07,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:00:07
[2026-08-25 06:00:08,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:00:08,761.761 INFO    ] Initializing speech engine...
[2026-08-25 06:00:08,775.775 INFO    ] 2026-08-25 06:00:08
[2026-08-25 06:00:09,041.041 INFO    ] 2026-08-25 06:00:09
[2026-08-25 06:00:09,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:00:09,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:00:09,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:00:09,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:00:09,455.455 INFO    ] time= 25/08/2026 06:00:09
[2026-08-25 06:00:09,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:00:09,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:00:09,654.654 INFO    ] No existing commands found in stream
[2026-08-25 06:00:14,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:00:14,667.667 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 06:00:15,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:00:15,966.966 INFO    ] Checking for system updates...
[2026-08-25 06:00:16,002.002 INFO    ] 200
[2026-08-25 06:00:16,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:16,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:00:16,061.061 INFO    ] No update needed
[2026-08-25 06:00:16,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 06:00:16,099.099 INFO    ] 200
[2026-08-25 06:00:16,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:16,142.142 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:00:16,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:00:16,199.199 INFO    ] No camera update needed
[2026-08-25 06:00:16,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:00:16,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:00:16,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:00:16,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:00:18,255.255 INFO    ] ================================================
[2026-08-25 06:00:18,270.270 INFO    ] Launching Daemon at Tue Aug 25 06:00:18 IST 2026
[2026-08-25 06:00:18,280.280 INFO    ] ================================================
[2026-08-25 06:00:18,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:00:18
[2026-08-25 06:00:19,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:00:19,695.695 INFO    ] Initializing speech engine...
[2026-08-25 06:00:19,710.710 INFO    ] 2026-08-25 06:00:19
[2026-08-25 06:00:19,966.966 INFO    ] 2026-08-25 06:00:19
[2026-08-25 06:00:20,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:00:20,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:00:20,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:00:20,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:00:20,450.450 INFO    ] time= 25/08/2026 06:00:20
[2026-08-25 06:00:20,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:00:20,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:00:20,673.673 INFO    ] No existing commands found in stream
[2026-08-25 06:00:25,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:00:25,706.706 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 06:00:29,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:00:29,087.087 INFO    ] Checking for system updates...
[2026-08-25 06:00:29,123.123 INFO    ] 200
[2026-08-25 06:00:29,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:29,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:00:29,181.181 INFO    ] No update needed
[2026-08-25 06:00:29,183.183 INFO    ] Checking for camera pi updates...
[2026-08-25 06:00:29,216.216 INFO    ] 200
[2026-08-25 06:00:29,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:29,264.264 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:00:29,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:00:29,314.314 INFO    ] No camera update needed
[2026-08-25 06:00:29,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:00:29,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:00:29,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:00:29,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:00:31,368.368 INFO    ] ================================================
[2026-08-25 06:00:31,383.383 INFO    ] Launching Daemon at Tue Aug 25 06:00:31 IST 2026
[2026-08-25 06:00:31,393.393 INFO    ] ================================================
[2026-08-25 06:00:32,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:00:32
[2026-08-25 06:00:32,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:00:32,945.945 INFO    ] Initializing speech engine...
[2026-08-25 06:00:32,958.958 INFO    ] 2026-08-25 06:00:32
[2026-08-25 06:00:33,227.227 INFO    ] 2026-08-25 06:00:33
[2026-08-25 06:00:33,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:00:33,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:00:33,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:00:33,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:00:33,711.711 INFO    ] time= 25/08/2026 06:00:33
[2026-08-25 06:00:33,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:00:33,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:00:33,955.955 INFO    ] No existing commands found in stream
[2026-08-25 06:00:38,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:00:38,975.975 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 06:00:39,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:00:39,579.579 INFO    ] Checking for system updates...
[2026-08-25 06:00:39,618.618 INFO    ] 200
[2026-08-25 06:00:39,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:39,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:00:39,675.675 INFO    ] No update needed
[2026-08-25 06:00:39,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 06:00:39,710.710 INFO    ] 200
[2026-08-25 06:00:39,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:39,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:00:39,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:00:39,826.826 INFO    ] No camera update needed
[2026-08-25 06:00:39,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:00:39,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:00:39,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:00:39,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:00:41,882.882 INFO    ] ================================================
[2026-08-25 06:00:41,897.897 INFO    ] Launching Daemon at Tue Aug 25 06:00:41 IST 2026
[2026-08-25 06:00:41,907.907 INFO    ] ================================================
[2026-08-25 06:00:42,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:00:42
[2026-08-25 06:00:43,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:00:43,358.358 INFO    ] Initializing speech engine...
[2026-08-25 06:00:43,368.368 INFO    ] 2026-08-25 06:00:43
[2026-08-25 06:00:43,627.627 INFO    ] 2026-08-25 06:00:43
[2026-08-25 06:00:43,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:00:43,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:00:43,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:00:44,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:00:44,080.080 INFO    ] time= 25/08/2026 06:00:44
[2026-08-25 06:00:44,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:00:44,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:00:44,299.299 INFO    ] No existing commands found in stream
[2026-08-25 06:00:49,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:00:49,332.332 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 06:00:51,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:00:51,582.582 INFO    ] Checking for system updates...
[2026-08-25 06:00:51,619.619 INFO    ] 200
[2026-08-25 06:00:51,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:51,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:00:51,686.686 INFO    ] No update needed
[2026-08-25 06:00:51,689.689 INFO    ] Checking for camera pi updates...
[2026-08-25 06:00:51,724.724 INFO    ] 200
[2026-08-25 06:00:51,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:00:51,768.768 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:00:51,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:00:51,822.822 INFO    ] No camera update needed
[2026-08-25 06:00:51,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:00:51,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:00:51,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:00:51,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:00:53,879.879 INFO    ] ================================================
[2026-08-25 06:00:53,894.894 INFO    ] Launching Daemon at Tue Aug 25 06:00:53 IST 2026
[2026-08-25 06:00:53,904.904 INFO    ] ================================================
[2026-08-25 06:00:54,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:00:54
[2026-08-25 06:00:55,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:00:55,380.380 INFO    ] Initializing speech engine...
[2026-08-25 06:00:55,387.387 INFO    ] 2026-08-25 06:00:55
[2026-08-25 06:00:55,634.634 INFO    ] 2026-08-25 06:00:55
[2026-08-25 06:00:55,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:00:55,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:00:55,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:00:56,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:00:56,134.134 INFO    ] time= 25/08/2026 06:00:56
[2026-08-25 06:00:56,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:00:56,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:00:56,344.344 INFO    ] No existing commands found in stream
[2026-08-25 06:01:01,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:01:01,363.363 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 06:01:05,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:01:05,576.576 INFO    ] Checking for system updates...
[2026-08-25 06:01:05,613.613 INFO    ] 200
[2026-08-25 06:01:05,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:05,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:01:05,676.676 INFO    ] No update needed
[2026-08-25 06:01:05,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 06:01:05,713.713 INFO    ] 200
[2026-08-25 06:01:05,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:05,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:01:05,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:01:05,809.809 INFO    ] No camera update needed
[2026-08-25 06:01:05,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:01:05,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:01:05,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:01:05,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:01:07,867.867 INFO    ] ================================================
[2026-08-25 06:01:07,883.883 INFO    ] Launching Daemon at Tue Aug 25 06:01:07 IST 2026
[2026-08-25 06:01:07,894.894 INFO    ] ================================================
[2026-08-25 06:01:08,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:01:08
[2026-08-25 06:01:09,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:01:09,323.323 INFO    ] Initializing speech engine...
[2026-08-25 06:01:09,330.330 INFO    ] 2026-08-25 06:01:09
[2026-08-25 06:01:09,587.587 INFO    ] 2026-08-25 06:01:09
[2026-08-25 06:01:09,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:01:09,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:01:09,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:01:10,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:01:10,043.043 INFO    ] time= 25/08/2026 06:01:10
[2026-08-25 06:01:10,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:01:10,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:01:10,266.266 INFO    ] No existing commands found in stream
[2026-08-25 06:01:15,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:01:15,291.291 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 06:01:19,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:01:19,566.566 INFO    ] Checking for system updates...
[2026-08-25 06:01:19,601.601 INFO    ] 200
[2026-08-25 06:01:19,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:19,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:01:19,662.662 INFO    ] No update needed
[2026-08-25 06:01:19,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 06:01:19,701.701 INFO    ] 200
[2026-08-25 06:01:19,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:19,744.744 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:01:19,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:01:19,790.790 INFO    ] No camera update needed
[2026-08-25 06:01:19,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:01:19,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:01:19,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:01:19,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:01:21,845.845 INFO    ] ================================================
[2026-08-25 06:01:21,860.860 INFO    ] Launching Daemon at Tue Aug 25 06:01:21 IST 2026
[2026-08-25 06:01:21,871.871 INFO    ] ================================================
[2026-08-25 06:01:22,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:01:22
[2026-08-25 06:01:23,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:01:23,285.285 INFO    ] Initializing speech engine...
[2026-08-25 06:01:23,303.303 INFO    ] 2026-08-25 06:01:23
[2026-08-25 06:01:23,575.575 INFO    ] 2026-08-25 06:01:23
[2026-08-25 06:01:23,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:01:23,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:01:23,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:01:23,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:01:23,976.976 INFO    ] time= 25/08/2026 06:01:23
[2026-08-25 06:01:23,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:01:24,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:01:24,143.143 INFO    ] No existing commands found in stream
[2026-08-25 06:01:29,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:01:29,171.171 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 06:01:30,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:01:30,181.181 INFO    ] Checking for system updates...
[2026-08-25 06:01:30,220.220 INFO    ] 200
[2026-08-25 06:01:30,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:30,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:01:30,278.278 INFO    ] No update needed
[2026-08-25 06:01:30,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 06:01:30,313.313 INFO    ] 200
[2026-08-25 06:01:30,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:30,360.360 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:01:30,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:01:30,407.407 INFO    ] No camera update needed
[2026-08-25 06:01:30,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:01:30,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:01:30,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:01:30,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:01:32,466.466 INFO    ] ================================================
[2026-08-25 06:01:32,483.483 INFO    ] Launching Daemon at Tue Aug 25 06:01:32 IST 2026
[2026-08-25 06:01:32,496.496 INFO    ] ================================================
[2026-08-25 06:01:33,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:01:33
[2026-08-25 06:01:33,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:01:34,013.013 INFO    ] Initializing speech engine...
[2026-08-25 06:01:34,020.020 INFO    ] 2026-08-25 06:01:34
[2026-08-25 06:01:34,265.265 INFO    ] 2026-08-25 06:01:34
[2026-08-25 06:01:34,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:01:34,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:01:34,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:01:34,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:01:34,710.710 INFO    ] time= 25/08/2026 06:01:34
[2026-08-25 06:01:34,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:01:34,827.827 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:01:34,956.956 INFO    ] No existing commands found in stream
[2026-08-25 06:01:39,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:01:39,987.987 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 06:01:42,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:01:42,583.583 INFO    ] Checking for system updates...
[2026-08-25 06:01:42,620.620 INFO    ] 200
[2026-08-25 06:01:42,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:42,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:01:42,677.677 INFO    ] No update needed
[2026-08-25 06:01:42,680.680 INFO    ] Checking for camera pi updates...
[2026-08-25 06:01:42,713.713 INFO    ] 200
[2026-08-25 06:01:42,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:42,757.757 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:01:42,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:01:42,803.803 INFO    ] No camera update needed
[2026-08-25 06:01:42,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:01:42,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:01:42,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:01:42,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:01:44,857.857 INFO    ] ================================================
[2026-08-25 06:01:44,872.872 INFO    ] Launching Daemon at Tue Aug 25 06:01:44 IST 2026
[2026-08-25 06:01:44,883.883 INFO    ] ================================================
[2026-08-25 06:01:45,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:01:45
[2026-08-25 06:01:46,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:01:46,302.302 INFO    ] Initializing speech engine...
[2026-08-25 06:01:46,311.311 INFO    ] 2026-08-25 06:01:46
[2026-08-25 06:01:46,560.560 INFO    ] 2026-08-25 06:01:46
[2026-08-25 06:01:46,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:01:46,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:01:46,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:01:46,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:01:46,935.935 INFO    ] time= 25/08/2026 06:01:46
[2026-08-25 06:01:46,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:01:46,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:01:47,106.106 INFO    ] No existing commands found in stream
[2026-08-25 06:01:52,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:01:52,139.139 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 06:01:56,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:01:56,273.273 INFO    ] Checking for system updates...
[2026-08-25 06:01:56,309.309 INFO    ] 200
[2026-08-25 06:01:56,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:56,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:01:56,369.369 INFO    ] No update needed
[2026-08-25 06:01:56,372.372 INFO    ] Checking for camera pi updates...
[2026-08-25 06:01:56,407.407 INFO    ] 200
[2026-08-25 06:01:56,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:01:56,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:01:56,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:01:56,515.515 INFO    ] No camera update needed
[2026-08-25 06:01:56,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:01:56,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:01:56,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:01:56,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:01:58,573.573 INFO    ] ================================================
[2026-08-25 06:01:58,588.588 INFO    ] Launching Daemon at Tue Aug 25 06:01:58 IST 2026
[2026-08-25 06:01:58,599.599 INFO    ] ================================================
[2026-08-25 06:01:59,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:01:59
[2026-08-25 06:01:59,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:02:00,155.155 INFO    ] Initializing speech engine...
[2026-08-25 06:02:00,164.164 INFO    ] 2026-08-25 06:02:00
[2026-08-25 06:02:00,415.415 INFO    ] 2026-08-25 06:02:00
[2026-08-25 06:02:00,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:02:00,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:02:00,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:02:00,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:02:00,781.781 INFO    ] time= 25/08/2026 06:02:00
[2026-08-25 06:02:00,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:02:00,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:02:00,897.897 INFO    ] No existing commands found in stream
[2026-08-25 06:02:05,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:02:05,935.935 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 06:02:06,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:02:06,961.961 INFO    ] Checking for system updates...
[2026-08-25 06:02:06,997.997 INFO    ] 200
[2026-08-25 06:02:07,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:07,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:07,055.055 INFO    ] No update needed
[2026-08-25 06:02:07,057.057 INFO    ] Checking for camera pi updates...
[2026-08-25 06:02:07,095.095 INFO    ] 200
[2026-08-25 06:02:07,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:07,139.139 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:02:07,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:07,285.285 INFO    ] No camera update needed
[2026-08-25 06:02:07,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:02:07,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:02:07,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:02:07,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:02:09,340.340 INFO    ] ================================================
[2026-08-25 06:02:09,355.355 INFO    ] Launching Daemon at Tue Aug 25 06:02:09 IST 2026
[2026-08-25 06:02:09,366.366 INFO    ] ================================================
[2026-08-25 06:02:09,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:02:09
[2026-08-25 06:02:10,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:02:10,780.780 INFO    ] Initializing speech engine...
[2026-08-25 06:02:10,786.786 INFO    ] 2026-08-25 06:02:10
[2026-08-25 06:02:11,061.061 INFO    ] 2026-08-25 06:02:11
[2026-08-25 06:02:11,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:02:11,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:02:11,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:02:11,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:02:11,553.553 INFO    ] time= 25/08/2026 06:02:11
[2026-08-25 06:02:11,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:02:11,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:02:11,770.770 INFO    ] No existing commands found in stream
[2026-08-25 06:02:16,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:02:16,793.793 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 06:02:20,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:02:20,443.443 INFO    ] Checking for system updates...
[2026-08-25 06:02:20,479.479 INFO    ] 200
[2026-08-25 06:02:20,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:20,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:02:20,537.537 INFO    ] No update needed
[2026-08-25 06:02:20,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 06:02:20,573.573 INFO    ] 200
[2026-08-25 06:02:20,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:20,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:02:20,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:02:20,667.667 INFO    ] No camera update needed
[2026-08-25 06:02:20,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:02:20,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:02:20,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:02:20,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:02:22,723.723 INFO    ] ================================================
[2026-08-25 06:02:22,739.739 INFO    ] Launching Daemon at Tue Aug 25 06:02:22 IST 2026
[2026-08-25 06:02:22,749.749 INFO    ] ================================================
[2026-08-25 06:02:23,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:02:23
[2026-08-25 06:02:23,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:02:24,146.146 INFO    ] Initializing speech engine...
[2026-08-25 06:02:24,153.153 INFO    ] 2026-08-25 06:02:24
[2026-08-25 06:02:24,463.463 INFO    ] 2026-08-25 06:02:24
[2026-08-25 06:02:24,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:02:24,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:02:24,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:02:24,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:02:24,918.918 INFO    ] time= 25/08/2026 06:02:24
[2026-08-25 06:02:24,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:02:25,008.008 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:02:25,154.154 INFO    ] No existing commands found in stream
[2026-08-25 06:02:30,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:02:30,174.174 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 06:02:34,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:02:34,409.409 INFO    ] Checking for system updates...
[2026-08-25 06:02:34,446.446 INFO    ] 200
[2026-08-25 06:02:34,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:34,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:34,506.506 INFO    ] No update needed
[2026-08-25 06:02:34,509.509 INFO    ] Checking for camera pi updates...
[2026-08-25 06:02:34,547.547 INFO    ] 200
[2026-08-25 06:02:34,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:34,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:02:34,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:34,639.639 INFO    ] No camera update needed
[2026-08-25 06:02:34,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:02:34,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:02:34,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:02:34,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:02:36,697.697 INFO    ] ================================================
[2026-08-25 06:02:36,713.713 INFO    ] Launching Daemon at Tue Aug 25 06:02:36 IST 2026
[2026-08-25 06:02:36,724.724 INFO    ] ================================================
[2026-08-25 06:02:37,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:02:37
[2026-08-25 06:02:37,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:02:38,172.172 INFO    ] Initializing speech engine...
[2026-08-25 06:02:38,179.179 INFO    ] 2026-08-25 06:02:38
[2026-08-25 06:02:38,438.438 INFO    ] 2026-08-25 06:02:38
[2026-08-25 06:02:38,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:02:38,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:02:38,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:02:38,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:02:38,843.843 INFO    ] time= 25/08/2026 06:02:38
[2026-08-25 06:02:38,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:02:38,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:02:38,930.930 INFO    ] No existing commands found in stream
[2026-08-25 06:02:43,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:02:43,946.946 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 06:02:46,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:02:46,493.493 INFO    ] Checking for system updates...
[2026-08-25 06:02:46,532.532 INFO    ] 200
[2026-08-25 06:02:46,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:46,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:46,590.590 INFO    ] No update needed
[2026-08-25 06:02:46,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 06:02:46,627.627 INFO    ] 200
[2026-08-25 06:02:46,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:46,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:02:46,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:46,724.724 INFO    ] No camera update needed
[2026-08-25 06:02:46,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:02:46,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:02:46,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:02:46,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:02:48,778.778 INFO    ] ================================================
[2026-08-25 06:02:48,793.793 INFO    ] Launching Daemon at Tue Aug 25 06:02:48 IST 2026
[2026-08-25 06:02:48,806.806 INFO    ] ================================================
[2026-08-25 06:02:49,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:02:49
[2026-08-25 06:02:49,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:02:50,223.223 INFO    ] Initializing speech engine...
[2026-08-25 06:02:50,246.246 INFO    ] 2026-08-25 06:02:50
[2026-08-25 06:02:50,496.496 INFO    ] 2026-08-25 06:02:50
[2026-08-25 06:02:50,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:02:50,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:02:50,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:02:50,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:02:50,960.960 INFO    ] time= 25/08/2026 06:02:50
[2026-08-25 06:02:51,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:02:51,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:02:51,172.172 INFO    ] No existing commands found in stream
[2026-08-25 06:02:56,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:02:56,202.202 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 06:02:58,811.811 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:02:58,813.813 INFO    ] Checking for system updates...
[2026-08-25 06:02:58,850.850 INFO    ] 200
[2026-08-25 06:02:58,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:58,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:58,908.908 INFO    ] No update needed
[2026-08-25 06:02:58,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 06:02:58,945.945 INFO    ] 200
[2026-08-25 06:02:58,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:02:58,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:02:59,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:02:59,038.038 INFO    ] No camera update needed
[2026-08-25 06:02:59,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:02:59,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:02:59,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:02:59,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:03:01,094.094 INFO    ] ================================================
[2026-08-25 06:03:01,109.109 INFO    ] Launching Daemon at Tue Aug 25 06:03:01 IST 2026
[2026-08-25 06:03:01,120.120 INFO    ] ================================================
[2026-08-25 06:03:01,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:03:01
[2026-08-25 06:03:02,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:03:03,012.012 INFO    ] Initializing speech engine...
[2026-08-25 06:03:03,018.018 INFO    ] 2026-08-25 06:03:03
[2026-08-25 06:03:03,293.293 INFO    ] 2026-08-25 06:03:03
[2026-08-25 06:03:03,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:03:03,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:03:03,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:03:03,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:03:03,704.704 INFO    ] time= 25/08/2026 06:03:03
[2026-08-25 06:03:03,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:03:03,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:03:03,864.864 INFO    ] No existing commands found in stream
[2026-08-25 06:03:08,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:03:08,888.888 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 06:03:10,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:03:10,182.182 INFO    ] Checking for system updates...
[2026-08-25 06:03:10,218.218 INFO    ] 200
[2026-08-25 06:03:10,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:10,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:03:10,275.275 INFO    ] No update needed
[2026-08-25 06:03:10,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 06:03:10,311.311 INFO    ] 200
[2026-08-25 06:03:10,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:10,354.354 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:03:10,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:03:10,401.401 INFO    ] No camera update needed
[2026-08-25 06:03:10,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:03:10,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:03:10,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:03:10,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:03:12,456.456 INFO    ] ================================================
[2026-08-25 06:03:12,471.471 INFO    ] Launching Daemon at Tue Aug 25 06:03:12 IST 2026
[2026-08-25 06:03:12,481.481 INFO    ] ================================================
[2026-08-25 06:03:13,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:03:13
[2026-08-25 06:03:13,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:03:13,930.930 INFO    ] Initializing speech engine...
[2026-08-25 06:03:13,939.939 INFO    ] 2026-08-25 06:03:13
[2026-08-25 06:03:14,188.188 INFO    ] 2026-08-25 06:03:14
[2026-08-25 06:03:14,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:03:14,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:03:14,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:03:14,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:03:14,653.653 INFO    ] time= 25/08/2026 06:03:14
[2026-08-25 06:03:14,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:03:14,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:03:14,896.896 INFO    ] No existing commands found in stream
[2026-08-25 06:03:19,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:03:19,913.913 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 06:03:22,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:03:22,571.571 INFO    ] Checking for system updates...
[2026-08-25 06:03:22,608.608 INFO    ] 200
[2026-08-25 06:03:22,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:22,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:03:22,668.668 INFO    ] No update needed
[2026-08-25 06:03:22,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 06:03:22,709.709 INFO    ] 200
[2026-08-25 06:03:22,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:22,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:03:22,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:03:22,802.802 INFO    ] No camera update needed
[2026-08-25 06:03:22,804.804 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:03:22,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:03:22,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:03:22,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:03:24,861.861 INFO    ] ================================================
[2026-08-25 06:03:24,876.876 INFO    ] Launching Daemon at Tue Aug 25 06:03:24 IST 2026
[2026-08-25 06:03:24,888.888 INFO    ] ================================================
[2026-08-25 06:03:25,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:03:25
[2026-08-25 06:03:26,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:03:26,286.286 INFO    ] Initializing speech engine...
[2026-08-25 06:03:26,299.299 INFO    ] 2026-08-25 06:03:26
[2026-08-25 06:03:26,566.566 INFO    ] 2026-08-25 06:03:26
[2026-08-25 06:03:26,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:03:26,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:03:26,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:03:27,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:03:27,029.029 INFO    ] time= 25/08/2026 06:03:27
[2026-08-25 06:03:27,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:03:27,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:03:27,274.274 INFO    ] No existing commands found in stream
[2026-08-25 06:03:32,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:03:32,300.300 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 06:03:34,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:03:34,742.742 INFO    ] Checking for system updates...
[2026-08-25 06:03:34,781.781 INFO    ] 200
[2026-08-25 06:03:34,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:34,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:03:34,838.838 INFO    ] No update needed
[2026-08-25 06:03:34,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 06:03:34,874.874 INFO    ] 200
[2026-08-25 06:03:34,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:34,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:03:34,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:03:34,968.968 INFO    ] No camera update needed
[2026-08-25 06:03:34,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:03:34,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:03:34,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:03:34,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:03:37,022.022 INFO    ] ================================================
[2026-08-25 06:03:37,038.038 INFO    ] Launching Daemon at Tue Aug 25 06:03:37 IST 2026
[2026-08-25 06:03:37,050.050 INFO    ] ================================================
[2026-08-25 06:03:37,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:03:37
[2026-08-25 06:03:38,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:03:38,492.492 INFO    ] Initializing speech engine...
[2026-08-25 06:03:38,499.499 INFO    ] 2026-08-25 06:03:38
[2026-08-25 06:03:38,795.795 INFO    ] 2026-08-25 06:03:38
[2026-08-25 06:03:38,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:03:39,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:03:39,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:03:39,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:03:39,176.176 INFO    ] time= 25/08/2026 06:03:39
[2026-08-25 06:03:39,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:03:39,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:03:39,301.301 INFO    ] No existing commands found in stream
[2026-08-25 06:03:44,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:03:44,317.317 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 06:03:44,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:03:44,816.816 INFO    ] Checking for system updates...
[2026-08-25 06:03:44,852.852 INFO    ] 200
[2026-08-25 06:03:44,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:44,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:03:44,913.913 INFO    ] No update needed
[2026-08-25 06:03:44,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 06:03:44,950.950 INFO    ] 200
[2026-08-25 06:03:44,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:44,994.994 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:03:45,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:03:45,045.045 INFO    ] No camera update needed
[2026-08-25 06:03:45,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:03:45,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:03:45,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:03:45,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:03:47,102.102 INFO    ] ================================================
[2026-08-25 06:03:47,117.117 INFO    ] Launching Daemon at Tue Aug 25 06:03:47 IST 2026
[2026-08-25 06:03:47,129.129 INFO    ] ================================================
[2026-08-25 06:03:47,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:03:47
[2026-08-25 06:03:48,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:03:48,753.753 INFO    ] Initializing speech engine...
[2026-08-25 06:03:48,761.761 INFO    ] 2026-08-25 06:03:48
[2026-08-25 06:03:49,036.036 INFO    ] 2026-08-25 06:03:49
[2026-08-25 06:03:49,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:03:49,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:03:49,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:03:49,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:03:49,561.561 INFO    ] time= 25/08/2026 06:03:49
[2026-08-25 06:03:49,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:03:49,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:03:49,731.731 INFO    ] No existing commands found in stream
[2026-08-25 06:03:54,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:03:54,759.759 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 06:03:57,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:03:57,043.043 INFO    ] Checking for system updates...
[2026-08-25 06:03:57,079.079 INFO    ] 200
[2026-08-25 06:03:57,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:57,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:03:57,137.137 INFO    ] No update needed
[2026-08-25 06:03:57,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 06:03:57,177.177 INFO    ] 200
[2026-08-25 06:03:57,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:03:57,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:03:57,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:03:57,276.276 INFO    ] No camera update needed
[2026-08-25 06:03:57,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:03:57,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:03:57,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:03:57,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:03:59,331.331 INFO    ] ================================================
[2026-08-25 06:03:59,347.347 INFO    ] Launching Daemon at Tue Aug 25 06:03:59 IST 2026
[2026-08-25 06:03:59,357.357 INFO    ] ================================================
[2026-08-25 06:03:59,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:03:59
[2026-08-25 06:04:00,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:04:00,881.881 INFO    ] Initializing speech engine...
[2026-08-25 06:04:00,902.902 INFO    ] 2026-08-25 06:04:00
[2026-08-25 06:04:01,162.162 INFO    ] 2026-08-25 06:04:01
[2026-08-25 06:04:01,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:04:01,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:04:01,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:04:01,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:04:01,585.585 INFO    ] time= 25/08/2026 06:04:01
[2026-08-25 06:04:01,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:04:01,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:04:01,718.718 INFO    ] No existing commands found in stream
[2026-08-25 06:04:06,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:04:06,753.753 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 06:04:08,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:04:08,191.191 INFO    ] Checking for system updates...
[2026-08-25 06:04:08,228.228 INFO    ] 200
[2026-08-25 06:04:08,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:08,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:04:08,288.288 INFO    ] No update needed
[2026-08-25 06:04:08,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 06:04:08,326.326 INFO    ] 200
[2026-08-25 06:04:08,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:08,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:04:08,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:04:08,684.684 INFO    ] No camera update needed
[2026-08-25 06:04:08,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:04:08,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:04:08,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:04:08,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:04:10,744.744 INFO    ] ================================================
[2026-08-25 06:04:10,759.759 INFO    ] Launching Daemon at Tue Aug 25 06:04:10 IST 2026
[2026-08-25 06:04:10,770.770 INFO    ] ================================================
[2026-08-25 06:04:11,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:04:11
[2026-08-25 06:04:12,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:04:12,445.445 INFO    ] Initializing speech engine...
[2026-08-25 06:04:12,455.455 INFO    ] 2026-08-25 06:04:12
[2026-08-25 06:04:12,739.739 INFO    ] 2026-08-25 06:04:12
[2026-08-25 06:04:12,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:04:13,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:04:13,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:04:13,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:04:13,271.271 INFO    ] time= 25/08/2026 06:04:13
[2026-08-25 06:04:13,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:04:13,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:04:13,491.491 INFO    ] No existing commands found in stream
[2026-08-25 06:04:18,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:04:18,527.527 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 06:04:22,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:04:22,565.565 INFO    ] Checking for system updates...
[2026-08-25 06:04:22,602.602 INFO    ] 200
[2026-08-25 06:04:22,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:22,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:04:22,671.671 INFO    ] No update needed
[2026-08-25 06:04:22,673.673 INFO    ] Checking for camera pi updates...
[2026-08-25 06:04:22,709.709 INFO    ] 200
[2026-08-25 06:04:22,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:22,759.759 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:04:22,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:04:22,911.911 INFO    ] No camera update needed
[2026-08-25 06:04:22,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:04:22,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:04:22,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:04:22,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:04:24,966.966 INFO    ] ================================================
[2026-08-25 06:04:24,981.981 INFO    ] Launching Daemon at Tue Aug 25 06:04:24 IST 2026
[2026-08-25 06:04:24,992.992 INFO    ] ================================================
[2026-08-25 06:04:25,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:04:25
[2026-08-25 06:04:26,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:04:26,405.405 INFO    ] Initializing speech engine...
[2026-08-25 06:04:26,414.414 INFO    ] 2026-08-25 06:04:26
[2026-08-25 06:04:26,715.715 INFO    ] 2026-08-25 06:04:26
[2026-08-25 06:04:26,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:04:26,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:04:26,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:04:27,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:04:27,104.104 INFO    ] time= 25/08/2026 06:04:27
[2026-08-25 06:04:27,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:04:27,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:04:27,235.235 INFO    ] No existing commands found in stream
[2026-08-25 06:04:32,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:04:32,248.248 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 06:04:36,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:04:36,083.083 INFO    ] Checking for system updates...
[2026-08-25 06:04:36,119.119 INFO    ] 200
[2026-08-25 06:04:36,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:36,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:04:36,176.176 INFO    ] No update needed
[2026-08-25 06:04:36,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 06:04:36,212.212 INFO    ] 200
[2026-08-25 06:04:36,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:36,255.255 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:04:36,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:04:36,397.397 INFO    ] No camera update needed
[2026-08-25 06:04:36,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:04:36,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:04:36,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:04:36,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:04:38,452.452 INFO    ] ================================================
[2026-08-25 06:04:38,467.467 INFO    ] Launching Daemon at Tue Aug 25 06:04:38 IST 2026
[2026-08-25 06:04:38,477.477 INFO    ] ================================================
[2026-08-25 06:04:39,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:04:39
[2026-08-25 06:04:39,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:04:39,949.949 INFO    ] Initializing speech engine...
[2026-08-25 06:04:39,958.958 INFO    ] 2026-08-25 06:04:39
[2026-08-25 06:04:40,270.270 INFO    ] 2026-08-25 06:04:40
[2026-08-25 06:04:40,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:04:40,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:04:40,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:04:40,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:04:40,635.635 INFO    ] time= 25/08/2026 06:04:40
[2026-08-25 06:04:40,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:04:40,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:04:40,720.720 INFO    ] No existing commands found in stream
[2026-08-25 06:04:45,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:04:45,735.735 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 06:04:49,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:04:49,846.846 INFO    ] Checking for system updates...
[2026-08-25 06:04:49,881.881 INFO    ] 200
[2026-08-25 06:04:49,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:49,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:04:49,940.940 INFO    ] No update needed
[2026-08-25 06:04:49,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 06:04:49,976.976 INFO    ] 200
[2026-08-25 06:04:49,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:04:50,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:04:50,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:04:50,068.068 INFO    ] No camera update needed
[2026-08-25 06:04:50,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:04:50,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:04:50,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:04:50,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:04:52,122.122 INFO    ] ================================================
[2026-08-25 06:04:52,137.137 INFO    ] Launching Daemon at Tue Aug 25 06:04:52 IST 2026
[2026-08-25 06:04:52,148.148 INFO    ] ================================================
[2026-08-25 06:04:52,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:04:52
[2026-08-25 06:04:53,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:04:53,561.561 INFO    ] Initializing speech engine...
[2026-08-25 06:04:53,583.583 INFO    ] 2026-08-25 06:04:53
[2026-08-25 06:04:53,833.833 INFO    ] 2026-08-25 06:04:53
[2026-08-25 06:04:53,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:04:54,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:04:54,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:04:54,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:04:54,314.314 INFO    ] time= 25/08/2026 06:04:54
[2026-08-25 06:04:54,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:04:54,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:04:54,531.531 INFO    ] No existing commands found in stream
[2026-08-25 06:04:59,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:04:59,564.564 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 06:05:00,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:05:00,135.135 INFO    ] Checking for system updates...
[2026-08-25 06:05:00,172.172 INFO    ] 200
[2026-08-25 06:05:00,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:00,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:05:00,230.230 INFO    ] No update needed
[2026-08-25 06:05:00,232.232 INFO    ] Checking for camera pi updates...
[2026-08-25 06:05:00,266.266 INFO    ] 200
[2026-08-25 06:05:00,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:00,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:05:00,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:05:00,359.359 INFO    ] No camera update needed
[2026-08-25 06:05:00,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:05:00,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:05:00,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:05:00,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:05:02,421.421 INFO    ] ================================================
[2026-08-25 06:05:02,445.445 INFO    ] Launching Daemon at Tue Aug 25 06:05:02 IST 2026
[2026-08-25 06:05:02,461.461 INFO    ] ================================================
[2026-08-25 06:05:03,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:05:03
[2026-08-25 06:05:03,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:05:04,038.038 INFO    ] Initializing speech engine...
[2026-08-25 06:05:04,045.045 INFO    ] 2026-08-25 06:05:04
[2026-08-25 06:05:04,307.307 INFO    ] 2026-08-25 06:05:04
[2026-08-25 06:05:04,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:05:04,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:05:04,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:05:04,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:05:04,759.759 INFO    ] time= 25/08/2026 06:05:04
[2026-08-25 06:05:04,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:05:04,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:05:04,993.993 INFO    ] No existing commands found in stream
[2026-08-25 06:05:10,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:05:10,023.023 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 06:05:11,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:05:11,974.974 INFO    ] Checking for system updates...
[2026-08-25 06:05:12,010.010 INFO    ] 200
[2026-08-25 06:05:12,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:12,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:05:12,068.068 INFO    ] No update needed
[2026-08-25 06:05:12,071.071 INFO    ] Checking for camera pi updates...
[2026-08-25 06:05:12,109.109 INFO    ] 200
[2026-08-25 06:05:12,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:12,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:05:12,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:05:12,199.199 INFO    ] No camera update needed
[2026-08-25 06:05:12,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:05:12,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:05:12,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:05:12,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:05:14,255.255 INFO    ] ================================================
[2026-08-25 06:05:14,269.269 INFO    ] Launching Daemon at Tue Aug 25 06:05:14 IST 2026
[2026-08-25 06:05:14,280.280 INFO    ] ================================================
[2026-08-25 06:05:14,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:05:14
[2026-08-25 06:05:15,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:05:15,693.693 INFO    ] Initializing speech engine...
[2026-08-25 06:05:15,708.708 INFO    ] 2026-08-25 06:05:15
[2026-08-25 06:05:15,994.994 INFO    ] 2026-08-25 06:05:15
[2026-08-25 06:05:16,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:05:16,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:05:16,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:05:16,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:05:16,376.376 INFO    ] time= 25/08/2026 06:05:16
[2026-08-25 06:05:16,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:05:16,421.421 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:05:16,502.502 INFO    ] No existing commands found in stream
[2026-08-25 06:05:21,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:05:21,523.523 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 06:05:23,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:05:23,566.566 INFO    ] Checking for system updates...
[2026-08-25 06:05:23,603.603 INFO    ] 200
[2026-08-25 06:05:23,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:23,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:05:23,664.664 INFO    ] No update needed
[2026-08-25 06:05:23,667.667 INFO    ] Checking for camera pi updates...
[2026-08-25 06:05:23,704.704 INFO    ] 200
[2026-08-25 06:05:23,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:23,748.748 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:05:23,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:05:23,795.795 INFO    ] No camera update needed
[2026-08-25 06:05:23,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:05:23,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:05:23,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:05:23,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:05:25,850.850 INFO    ] ================================================
[2026-08-25 06:05:25,865.865 INFO    ] Launching Daemon at Tue Aug 25 06:05:25 IST 2026
[2026-08-25 06:05:25,876.876 INFO    ] ================================================
[2026-08-25 06:05:26,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:05:26
[2026-08-25 06:05:27,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:05:27,296.296 INFO    ] Initializing speech engine...
[2026-08-25 06:05:27,318.318 INFO    ] 2026-08-25 06:05:27
[2026-08-25 06:05:27,568.568 INFO    ] 2026-08-25 06:05:27
[2026-08-25 06:05:27,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:05:27,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:05:27,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:05:27,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:05:28,067.067 INFO    ] time= 25/08/2026 06:05:28
[2026-08-25 06:05:28,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:05:28,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:05:28,244.244 INFO    ] No existing commands found in stream
[2026-08-25 06:05:33,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:05:33,277.277 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 06:05:36,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:05:36,844.844 INFO    ] Checking for system updates...
[2026-08-25 06:05:36,885.885 INFO    ] 200
[2026-08-25 06:05:36,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:36,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:05:36,946.946 INFO    ] No update needed
[2026-08-25 06:05:36,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 06:05:36,987.987 INFO    ] 200
[2026-08-25 06:05:36,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:37,031.031 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:05:37,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:05:37,094.094 INFO    ] No camera update needed
[2026-08-25 06:05:37,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:05:37,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:05:37,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:05:37,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:05:39,153.153 INFO    ] ================================================
[2026-08-25 06:05:39,168.168 INFO    ] Launching Daemon at Tue Aug 25 06:05:39 IST 2026
[2026-08-25 06:05:39,180.180 INFO    ] ================================================
[2026-08-25 06:05:39,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:05:39
[2026-08-25 06:05:40,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:05:40,652.652 INFO    ] Initializing speech engine...
[2026-08-25 06:05:40,659.659 INFO    ] 2026-08-25 06:05:40
[2026-08-25 06:05:40,925.925 INFO    ] 2026-08-25 06:05:40
[2026-08-25 06:05:40,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:05:41,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:05:41,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:05:41,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:05:41,310.310 INFO    ] time= 25/08/2026 06:05:41
[2026-08-25 06:05:41,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:05:41,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:05:41,437.437 INFO    ] No existing commands found in stream
[2026-08-25 06:05:46,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:05:46,453.453 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 06:05:48,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:05:48,853.853 INFO    ] Checking for system updates...
[2026-08-25 06:05:48,889.889 INFO    ] 200
[2026-08-25 06:05:48,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:48,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:05:48,953.953 INFO    ] No update needed
[2026-08-25 06:05:48,955.955 INFO    ] Checking for camera pi updates...
[2026-08-25 06:05:48,989.989 INFO    ] 200
[2026-08-25 06:05:48,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:05:49,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:05:49,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:05:49,082.082 INFO    ] No camera update needed
[2026-08-25 06:05:49,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:05:49,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:05:49,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:05:49,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:05:51,141.141 INFO    ] ================================================
[2026-08-25 06:05:51,157.157 INFO    ] Launching Daemon at Tue Aug 25 06:05:51 IST 2026
[2026-08-25 06:05:51,168.168 INFO    ] ================================================
[2026-08-25 06:05:51,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:05:51
[2026-08-25 06:05:52,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:05:52,612.612 INFO    ] Initializing speech engine...
[2026-08-25 06:05:52,620.620 INFO    ] 2026-08-25 06:05:52
[2026-08-25 06:05:52,906.906 INFO    ] 2026-08-25 06:05:52
[2026-08-25 06:05:52,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:05:53,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:05:53,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:05:53,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:05:53,379.379 INFO    ] time= 25/08/2026 06:05:53
[2026-08-25 06:05:53,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:05:53,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:05:53,605.605 INFO    ] No existing commands found in stream
[2026-08-25 06:05:58,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:05:58,634.634 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 06:06:00,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:06:00,868.868 INFO    ] Checking for system updates...
[2026-08-25 06:06:00,909.909 INFO    ] 200
[2026-08-25 06:06:00,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:00,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:00,977.977 INFO    ] No update needed
[2026-08-25 06:06:00,980.980 INFO    ] Checking for camera pi updates...
[2026-08-25 06:06:01,014.014 INFO    ] 200
[2026-08-25 06:06:01,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:01,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:06:01,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:01,126.126 INFO    ] No camera update needed
[2026-08-25 06:06:01,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:06:01,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:06:01,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:06:01,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:06:03,185.185 INFO    ] ================================================
[2026-08-25 06:06:03,200.200 INFO    ] Launching Daemon at Tue Aug 25 06:06:03 IST 2026
[2026-08-25 06:06:03,214.214 INFO    ] ================================================
[2026-08-25 06:06:03,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:06:03
[2026-08-25 06:06:04,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:06:04,849.849 INFO    ] Initializing speech engine...
[2026-08-25 06:06:04,855.855 INFO    ] 2026-08-25 06:06:04
[2026-08-25 06:06:05,157.157 INFO    ] 2026-08-25 06:06:05
[2026-08-25 06:06:05,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:06:05,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:06:05,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:06:05,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:06:05,646.646 INFO    ] time= 25/08/2026 06:06:05
[2026-08-25 06:06:05,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:06:05,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:06:05,872.872 INFO    ] No existing commands found in stream
[2026-08-25 06:06:10,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:06:10,899.899 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 06:06:12,353.353 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:06:12,356.356 INFO    ] Checking for system updates...
[2026-08-25 06:06:12,393.393 INFO    ] 200
[2026-08-25 06:06:12,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:12,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:06:12,452.452 INFO    ] No update needed
[2026-08-25 06:06:12,455.455 INFO    ] Checking for camera pi updates...
[2026-08-25 06:06:12,492.492 INFO    ] 200
[2026-08-25 06:06:12,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:12,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:06:12,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:06:12,592.592 INFO    ] No camera update needed
[2026-08-25 06:06:12,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:06:12,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:06:12,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:06:12,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:06:14,651.651 INFO    ] ================================================
[2026-08-25 06:06:14,667.667 INFO    ] Launching Daemon at Tue Aug 25 06:06:14 IST 2026
[2026-08-25 06:06:14,678.678 INFO    ] ================================================
[2026-08-25 06:06:15,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:06:15
[2026-08-25 06:06:16,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:06:16,339.339 INFO    ] Initializing speech engine...
[2026-08-25 06:06:16,351.351 INFO    ] 2026-08-25 06:06:16
[2026-08-25 06:06:16,623.623 INFO    ] 2026-08-25 06:06:16
[2026-08-25 06:06:16,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:06:16,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:06:16,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:06:17,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:06:17,112.112 INFO    ] time= 25/08/2026 06:06:17
[2026-08-25 06:06:17,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:06:17,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:06:17,339.339 INFO    ] No existing commands found in stream
[2026-08-25 06:06:22,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:06:22,361.361 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 06:06:25,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:06:25,674.674 INFO    ] Checking for system updates...
[2026-08-25 06:06:25,710.710 INFO    ] 200
[2026-08-25 06:06:25,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:25,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:25,769.769 INFO    ] No update needed
[2026-08-25 06:06:25,772.772 INFO    ] Checking for camera pi updates...
[2026-08-25 06:06:25,805.805 INFO    ] 200
[2026-08-25 06:06:25,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:25,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:06:25,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:25,992.992 INFO    ] No camera update needed
[2026-08-25 06:06:25,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:06:25,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:06:26,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:06:26,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:06:28,046.046 INFO    ] ================================================
[2026-08-25 06:06:28,062.062 INFO    ] Launching Daemon at Tue Aug 25 06:06:28 IST 2026
[2026-08-25 06:06:28,073.073 INFO    ] ================================================
[2026-08-25 06:06:28,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:06:28
[2026-08-25 06:06:29,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:06:29,532.532 INFO    ] Initializing speech engine...
[2026-08-25 06:06:29,540.540 INFO    ] 2026-08-25 06:06:29
[2026-08-25 06:06:29,798.798 INFO    ] 2026-08-25 06:06:29
[2026-08-25 06:06:29,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:06:30,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:06:30,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:06:30,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:06:30,268.268 INFO    ] time= 25/08/2026 06:06:30
[2026-08-25 06:06:30,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:06:30,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:06:30,499.499 INFO    ] No existing commands found in stream
[2026-08-25 06:06:35,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:06:35,520.520 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 06:06:36,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:06:36,999.999 INFO    ] Checking for system updates...
[2026-08-25 06:06:37,039.039 INFO    ] 200
[2026-08-25 06:06:37,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:37,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:37,096.096 INFO    ] No update needed
[2026-08-25 06:06:37,099.099 INFO    ] Checking for camera pi updates...
[2026-08-25 06:06:37,136.136 INFO    ] 200
[2026-08-25 06:06:37,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:37,179.179 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:06:37,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:37,228.228 INFO    ] No camera update needed
[2026-08-25 06:06:37,230.230 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:06:37,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:06:37,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:06:37,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:06:39,284.284 INFO    ] ================================================
[2026-08-25 06:06:39,300.300 INFO    ] Launching Daemon at Tue Aug 25 06:06:39 IST 2026
[2026-08-25 06:06:39,311.311 INFO    ] ================================================
[2026-08-25 06:06:39,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:06:39
[2026-08-25 06:06:40,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:06:40,766.766 INFO    ] Initializing speech engine...
[2026-08-25 06:06:40,777.777 INFO    ] 2026-08-25 06:06:40
[2026-08-25 06:06:41,031.031 INFO    ] 2026-08-25 06:06:41
[2026-08-25 06:06:41,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:06:41,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:06:41,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:06:41,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:06:41,495.495 INFO    ] time= 25/08/2026 06:06:41
[2026-08-25 06:06:41,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:06:41,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:06:41,720.720 INFO    ] No existing commands found in stream
[2026-08-25 06:06:46,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:06:46,747.747 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 06:06:47,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:06:47,946.946 INFO    ] Checking for system updates...
[2026-08-25 06:06:47,982.982 INFO    ] 200
[2026-08-25 06:06:47,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:48,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:48,039.039 INFO    ] No update needed
[2026-08-25 06:06:48,042.042 INFO    ] Checking for camera pi updates...
[2026-08-25 06:06:48,075.075 INFO    ] 200
[2026-08-25 06:06:48,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:48,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:06:48,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:06:48,169.169 INFO    ] No camera update needed
[2026-08-25 06:06:48,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:06:48,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:06:48,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:06:48,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:06:50,226.226 INFO    ] ================================================
[2026-08-25 06:06:50,241.241 INFO    ] Launching Daemon at Tue Aug 25 06:06:50 IST 2026
[2026-08-25 06:06:50,253.253 INFO    ] ================================================
[2026-08-25 06:06:50,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:06:50
[2026-08-25 06:06:51,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:06:51,714.714 INFO    ] Initializing speech engine...
[2026-08-25 06:06:51,724.724 INFO    ] 2026-08-25 06:06:51
[2026-08-25 06:06:51,983.983 INFO    ] 2026-08-25 06:06:51
[2026-08-25 06:06:52,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:06:52,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:06:52,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:06:52,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:06:52,451.451 INFO    ] time= 25/08/2026 06:06:52
[2026-08-25 06:06:52,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:06:52,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:06:52,650.650 INFO    ] No existing commands found in stream
[2026-08-25 06:06:57,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:06:57,678.678 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 06:06:59,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:06:59,315.315 INFO    ] Checking for system updates...
[2026-08-25 06:06:59,351.351 INFO    ] 200
[2026-08-25 06:06:59,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:59,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:06:59,411.411 INFO    ] No update needed
[2026-08-25 06:06:59,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 06:06:59,447.447 INFO    ] 200
[2026-08-25 06:06:59,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:06:59,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:06:59,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:06:59,549.549 INFO    ] No camera update needed
[2026-08-25 06:06:59,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:06:59,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:06:59,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:06:59,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:07:01,607.607 INFO    ] ================================================
[2026-08-25 06:07:01,622.622 INFO    ] Launching Daemon at Tue Aug 25 06:07:01 IST 2026
[2026-08-25 06:07:01,633.633 INFO    ] ================================================
[2026-08-25 06:07:02,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:07:02
[2026-08-25 06:07:03,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:07:03,365.365 INFO    ] Initializing speech engine...
[2026-08-25 06:07:03,377.377 INFO    ] 2026-08-25 06:07:03
[2026-08-25 06:07:03,668.668 INFO    ] 2026-08-25 06:07:03
[2026-08-25 06:07:03,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:07:03,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:07:03,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:07:04,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:07:04,112.112 INFO    ] time= 25/08/2026 06:07:04
[2026-08-25 06:07:04,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:07:04,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:07:04,204.204 INFO    ] No existing commands found in stream
[2026-08-25 06:07:09,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:07:09,224.224 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 06:07:10,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:07:10,441.441 INFO    ] Checking for system updates...
[2026-08-25 06:07:10,476.476 INFO    ] 200
[2026-08-25 06:07:10,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:10,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:07:10,543.543 INFO    ] No update needed
[2026-08-25 06:07:10,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 06:07:10,584.584 INFO    ] 200
[2026-08-25 06:07:10,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:10,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:07:10,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:07:10,683.683 INFO    ] No camera update needed
[2026-08-25 06:07:10,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:07:10,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:07:10,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:07:10,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:07:12,737.737 INFO    ] ================================================
[2026-08-25 06:07:12,753.753 INFO    ] Launching Daemon at Tue Aug 25 06:07:12 IST 2026
[2026-08-25 06:07:12,765.765 INFO    ] ================================================
[2026-08-25 06:07:13,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:07:13
[2026-08-25 06:07:13,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:07:14,186.186 INFO    ] Initializing speech engine...
[2026-08-25 06:07:14,195.195 INFO    ] 2026-08-25 06:07:14
[2026-08-25 06:07:14,440.440 INFO    ] 2026-08-25 06:07:14
[2026-08-25 06:07:14,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:07:14,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:07:14,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:07:14,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:07:14,915.915 INFO    ] time= 25/08/2026 06:07:14
[2026-08-25 06:07:14,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:07:15,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:07:15,147.147 INFO    ] No existing commands found in stream
[2026-08-25 06:07:20,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:07:20,163.163 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 06:07:23,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:07:23,043.043 INFO    ] Checking for system updates...
[2026-08-25 06:07:23,080.080 INFO    ] 200
[2026-08-25 06:07:23,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:23,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:07:23,138.138 INFO    ] No update needed
[2026-08-25 06:07:23,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 06:07:23,173.173 INFO    ] 200
[2026-08-25 06:07:23,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:23,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:07:23,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:07:23,272.272 INFO    ] No camera update needed
[2026-08-25 06:07:23,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:07:23,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:07:23,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:07:23,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:07:25,328.328 INFO    ] ================================================
[2026-08-25 06:07:25,343.343 INFO    ] Launching Daemon at Tue Aug 25 06:07:25 IST 2026
[2026-08-25 06:07:25,354.354 INFO    ] ================================================
[2026-08-25 06:07:25,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:07:25
[2026-08-25 06:07:26,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:07:26,751.751 INFO    ] Initializing speech engine...
[2026-08-25 06:07:26,757.757 INFO    ] 2026-08-25 06:07:26
[2026-08-25 06:07:27,032.032 INFO    ] 2026-08-25 06:07:27
[2026-08-25 06:07:27,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:07:27,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:07:27,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:07:27,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:07:27,409.409 INFO    ] time= 25/08/2026 06:07:27
[2026-08-25 06:07:27,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:07:27,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:07:27,571.571 INFO    ] No existing commands found in stream
[2026-08-25 06:07:32,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:07:32,599.599 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 06:07:35,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:07:35,875.875 INFO    ] Checking for system updates...
[2026-08-25 06:07:35,910.910 INFO    ] 200
[2026-08-25 06:07:35,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:35,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:07:35,967.967 INFO    ] No update needed
[2026-08-25 06:07:35,969.969 INFO    ] Checking for camera pi updates...
[2026-08-25 06:07:36,002.002 INFO    ] 200
[2026-08-25 06:07:36,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:36,051.051 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:07:36,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:07:36,104.104 INFO    ] No camera update needed
[2026-08-25 06:07:36,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:07:36,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:07:36,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:07:36,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:07:38,160.160 INFO    ] ================================================
[2026-08-25 06:07:38,176.176 INFO    ] Launching Daemon at Tue Aug 25 06:07:38 IST 2026
[2026-08-25 06:07:38,187.187 INFO    ] ================================================
[2026-08-25 06:07:38,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:07:38
[2026-08-25 06:07:39,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:07:39,676.676 INFO    ] Initializing speech engine...
[2026-08-25 06:07:39,685.685 INFO    ] 2026-08-25 06:07:39
[2026-08-25 06:07:39,941.941 INFO    ] 2026-08-25 06:07:39
[2026-08-25 06:07:39,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:07:40,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:07:40,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:07:40,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:07:40,324.324 INFO    ] time= 25/08/2026 06:07:40
[2026-08-25 06:07:40,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:07:40,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:07:40,443.443 INFO    ] No existing commands found in stream
[2026-08-25 06:07:45,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:07:45,476.476 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 06:07:46,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:07:46,119.119 INFO    ] Checking for system updates...
[2026-08-25 06:07:46,156.156 INFO    ] 200
[2026-08-25 06:07:46,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:46,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:07:46,220.220 INFO    ] No update needed
[2026-08-25 06:07:46,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 06:07:46,257.257 INFO    ] 200
[2026-08-25 06:07:46,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:46,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:07:46,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:07:46,358.358 INFO    ] No camera update needed
[2026-08-25 06:07:46,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:07:46,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:07:46,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:07:46,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:07:48,416.416 INFO    ] ================================================
[2026-08-25 06:07:48,431.431 INFO    ] Launching Daemon at Tue Aug 25 06:07:48 IST 2026
[2026-08-25 06:07:48,443.443 INFO    ] ================================================
[2026-08-25 06:07:49,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:07:49
[2026-08-25 06:07:49,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:07:49,862.862 INFO    ] Initializing speech engine...
[2026-08-25 06:07:49,869.869 INFO    ] 2026-08-25 06:07:49
[2026-08-25 06:07:50,119.119 INFO    ] 2026-08-25 06:07:50
[2026-08-25 06:07:50,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:07:50,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:07:50,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:07:50,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:07:50,597.597 INFO    ] time= 25/08/2026 06:07:50
[2026-08-25 06:07:50,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:07:50,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:07:50,827.827 INFO    ] No existing commands found in stream
[2026-08-25 06:07:55,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:07:55,855.855 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 06:07:58,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:07:58,855.855 INFO    ] Checking for system updates...
[2026-08-25 06:07:58,892.892 INFO    ] 200
[2026-08-25 06:07:58,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:58,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:07:58,950.950 INFO    ] No update needed
[2026-08-25 06:07:58,953.953 INFO    ] Checking for camera pi updates...
[2026-08-25 06:07:58,991.991 INFO    ] 200
[2026-08-25 06:07:58,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:07:59,041.041 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:07:59,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:07:59,093.093 INFO    ] No camera update needed
[2026-08-25 06:07:59,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:07:59,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:07:59,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:07:59,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:08:01,148.148 INFO    ] ================================================
[2026-08-25 06:08:01,164.164 INFO    ] Launching Daemon at Tue Aug 25 06:08:01 IST 2026
[2026-08-25 06:08:01,176.176 INFO    ] ================================================
[2026-08-25 06:08:01,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:08:01
[2026-08-25 06:08:02,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:08:02,880.880 INFO    ] Initializing speech engine...
[2026-08-25 06:08:02,892.892 INFO    ] 2026-08-25 06:08:02
[2026-08-25 06:08:03,172.172 INFO    ] 2026-08-25 06:08:03
[2026-08-25 06:08:03,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:08:03,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:08:03,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:08:03,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:08:03,623.623 INFO    ] time= 25/08/2026 06:08:03
[2026-08-25 06:08:03,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:08:03,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:08:03,756.756 INFO    ] No existing commands found in stream
[2026-08-25 06:08:08,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:08:08,796.796 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 06:08:12,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:08:12,355.355 INFO    ] Checking for system updates...
[2026-08-25 06:08:12,392.392 INFO    ] 200
[2026-08-25 06:08:12,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:12,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:08:12,454.454 INFO    ] No update needed
[2026-08-25 06:08:12,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 06:08:12,490.490 INFO    ] 200
[2026-08-25 06:08:12,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:12,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:08:12,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:08:12,597.597 INFO    ] No camera update needed
[2026-08-25 06:08:12,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:08:12,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:08:12,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:08:12,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:08:14,651.651 INFO    ] ================================================
[2026-08-25 06:08:14,666.666 INFO    ] Launching Daemon at Tue Aug 25 06:08:14 IST 2026
[2026-08-25 06:08:14,676.676 INFO    ] ================================================
[2026-08-25 06:08:15,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:08:15
[2026-08-25 06:08:15,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:08:16,101.101 INFO    ] Initializing speech engine...
[2026-08-25 06:08:16,106.106 INFO    ] 2026-08-25 06:08:16
[2026-08-25 06:08:16,365.365 INFO    ] 2026-08-25 06:08:16
[2026-08-25 06:08:16,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:08:16,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:08:16,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:08:16,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:08:16,822.822 INFO    ] time= 25/08/2026 06:08:16
[2026-08-25 06:08:16,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:08:16,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:08:17,059.059 INFO    ] No existing commands found in stream
[2026-08-25 06:08:22,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:08:22,075.075 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 06:08:24,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:08:24,043.043 INFO    ] Checking for system updates...
[2026-08-25 06:08:24,082.082 INFO    ] 200
[2026-08-25 06:08:24,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:24,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:08:24,139.139 INFO    ] No update needed
[2026-08-25 06:08:24,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 06:08:24,175.175 INFO    ] 200
[2026-08-25 06:08:24,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:24,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:08:24,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:08:24,268.268 INFO    ] No camera update needed
[2026-08-25 06:08:24,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:08:24,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:08:24,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:08:24,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:08:26,321.321 INFO    ] ================================================
[2026-08-25 06:08:26,336.336 INFO    ] Launching Daemon at Tue Aug 25 06:08:26 IST 2026
[2026-08-25 06:08:26,347.347 INFO    ] ================================================
[2026-08-25 06:08:26,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:08:26
[2026-08-25 06:08:27,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:08:27,755.755 INFO    ] Initializing speech engine...
[2026-08-25 06:08:27,774.774 INFO    ] 2026-08-25 06:08:27
[2026-08-25 06:08:28,021.021 INFO    ] 2026-08-25 06:08:28
[2026-08-25 06:08:28,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:08:28,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:08:28,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:08:28,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:08:28,490.490 INFO    ] time= 25/08/2026 06:08:28
[2026-08-25 06:08:28,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:08:28,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:08:28,697.697 INFO    ] No existing commands found in stream
[2026-08-25 06:08:33,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:08:33,727.727 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 06:08:34,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:08:34,663.663 INFO    ] Checking for system updates...
[2026-08-25 06:08:34,698.698 INFO    ] 200
[2026-08-25 06:08:34,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:34,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:08:34,759.759 INFO    ] No update needed
[2026-08-25 06:08:34,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 06:08:34,798.798 INFO    ] 200
[2026-08-25 06:08:34,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:34,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:08:34,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:08:34,891.891 INFO    ] No camera update needed
[2026-08-25 06:08:34,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:08:34,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:08:34,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:08:34,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:08:36,944.944 INFO    ] ================================================
[2026-08-25 06:08:36,959.959 INFO    ] Launching Daemon at Tue Aug 25 06:08:36 IST 2026
[2026-08-25 06:08:36,970.970 INFO    ] ================================================
[2026-08-25 06:08:37,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:08:37
[2026-08-25 06:08:38,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:08:38,415.415 INFO    ] Initializing speech engine...
[2026-08-25 06:08:38,426.426 INFO    ] 2026-08-25 06:08:38
[2026-08-25 06:08:38,684.684 INFO    ] 2026-08-25 06:08:38
[2026-08-25 06:08:38,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:08:38,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:08:38,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:08:39,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:08:39,147.147 INFO    ] time= 25/08/2026 06:08:39
[2026-08-25 06:08:39,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:08:39,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:08:39,361.361 INFO    ] No existing commands found in stream
[2026-08-25 06:08:44,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:08:44,389.389 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 06:08:48,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:08:48,337.337 INFO    ] Checking for system updates...
[2026-08-25 06:08:48,373.373 INFO    ] 200
[2026-08-25 06:08:48,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:48,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:08:48,430.430 INFO    ] No update needed
[2026-08-25 06:08:48,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 06:08:48,473.473 INFO    ] 200
[2026-08-25 06:08:48,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:48,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:08:48,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:08:48,571.571 INFO    ] No camera update needed
[2026-08-25 06:08:48,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:08:48,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:08:48,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:08:48,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:08:50,625.625 INFO    ] ================================================
[2026-08-25 06:08:50,645.645 INFO    ] Launching Daemon at Tue Aug 25 06:08:50 IST 2026
[2026-08-25 06:08:50,657.657 INFO    ] ================================================
[2026-08-25 06:08:51,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:08:51
[2026-08-25 06:08:51,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:08:52,137.137 INFO    ] Initializing speech engine...
[2026-08-25 06:08:52,144.144 INFO    ] 2026-08-25 06:08:52
[2026-08-25 06:08:52,434.434 INFO    ] 2026-08-25 06:08:52
[2026-08-25 06:08:52,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:08:52,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:08:52,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:08:52,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:08:52,844.844 INFO    ] time= 25/08/2026 06:08:52
[2026-08-25 06:08:52,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:08:52,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:08:53,028.028 INFO    ] No existing commands found in stream
[2026-08-25 06:08:58,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:08:58,061.061 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 06:08:58,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:08:58,575.575 INFO    ] Checking for system updates...
[2026-08-25 06:08:58,610.610 INFO    ] 200
[2026-08-25 06:08:58,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:58,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:08:58,668.668 INFO    ] No update needed
[2026-08-25 06:08:58,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 06:08:58,703.703 INFO    ] 200
[2026-08-25 06:08:58,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:08:58,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:08:58,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:08:58,815.815 INFO    ] No camera update needed
[2026-08-25 06:08:58,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:08:58,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:08:58,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:08:58,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:09:00,869.869 INFO    ] ================================================
[2026-08-25 06:09:00,885.885 INFO    ] Launching Daemon at Tue Aug 25 06:09:00 IST 2026
[2026-08-25 06:09:00,897.897 INFO    ] ================================================
[2026-08-25 06:09:01,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:09:01
[2026-08-25 06:09:02,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:09:02,663.663 INFO    ] Initializing speech engine...
[2026-08-25 06:09:02,674.674 INFO    ] 2026-08-25 06:09:02
[2026-08-25 06:09:02,964.964 INFO    ] 2026-08-25 06:09:02
[2026-08-25 06:09:03,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:09:03,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:09:03,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:09:03,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:09:03,466.466 INFO    ] time= 25/08/2026 06:09:03
[2026-08-25 06:09:03,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:09:03,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:09:03,653.653 INFO    ] No existing commands found in stream
[2026-08-25 06:09:08,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:09:08,692.692 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 06:09:10,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:09:10,875.875 INFO    ] Checking for system updates...
[2026-08-25 06:09:10,910.910 INFO    ] 200
[2026-08-25 06:09:10,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:10,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:09:10,970.970 INFO    ] No update needed
[2026-08-25 06:09:10,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 06:09:11,009.009 INFO    ] 200
[2026-08-25 06:09:11,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:11,056.056 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:09:11,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:09:11,112.112 INFO    ] No camera update needed
[2026-08-25 06:09:11,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:09:11,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:09:11,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:09:11,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:09:13,165.165 INFO    ] ================================================
[2026-08-25 06:09:13,181.181 INFO    ] Launching Daemon at Tue Aug 25 06:09:13 IST 2026
[2026-08-25 06:09:13,192.192 INFO    ] ================================================
[2026-08-25 06:09:13,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:09:13
[2026-08-25 06:09:14,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:09:14,593.593 INFO    ] Initializing speech engine...
[2026-08-25 06:09:14,609.609 INFO    ] 2026-08-25 06:09:14
[2026-08-25 06:09:14,859.859 INFO    ] 2026-08-25 06:09:14
[2026-08-25 06:09:14,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:09:15,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:09:15,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:09:15,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:09:15,226.226 INFO    ] time= 25/08/2026 06:09:15
[2026-08-25 06:09:15,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:09:15,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:09:15,409.409 INFO    ] No existing commands found in stream
[2026-08-25 06:09:20,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:09:20,435.435 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 06:09:24,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:09:24,646.646 INFO    ] Checking for system updates...
[2026-08-25 06:09:24,682.682 INFO    ] 200
[2026-08-25 06:09:24,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:24,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:09:24,740.740 INFO    ] No update needed
[2026-08-25 06:09:24,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 06:09:24,777.777 INFO    ] 200
[2026-08-25 06:09:24,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:24,827.827 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:09:24,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:09:24,877.877 INFO    ] No camera update needed
[2026-08-25 06:09:24,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:09:24,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:09:24,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:09:24,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:09:26,933.933 INFO    ] ================================================
[2026-08-25 06:09:26,948.948 INFO    ] Launching Daemon at Tue Aug 25 06:09:26 IST 2026
[2026-08-25 06:09:26,958.958 INFO    ] ================================================
[2026-08-25 06:09:27,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:09:27
[2026-08-25 06:09:28,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:09:28,388.388 INFO    ] Initializing speech engine...
[2026-08-25 06:09:28,398.398 INFO    ] 2026-08-25 06:09:28
[2026-08-25 06:09:28,660.660 INFO    ] 2026-08-25 06:09:28
[2026-08-25 06:09:28,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:09:28,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:09:28,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:09:29,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:09:29,066.066 INFO    ] time= 25/08/2026 06:09:29
[2026-08-25 06:09:29,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:09:29,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:09:29,209.209 INFO    ] No existing commands found in stream
[2026-08-25 06:09:34,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:09:34,242.242 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 06:09:37,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:09:37,016.016 INFO    ] Checking for system updates...
[2026-08-25 06:09:37,050.050 INFO    ] 200
[2026-08-25 06:09:37,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:37,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:09:37,112.112 INFO    ] No update needed
[2026-08-25 06:09:37,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 06:09:37,148.148 INFO    ] 200
[2026-08-25 06:09:37,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:37,197.197 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:09:37,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:09:37,249.249 INFO    ] No camera update needed
[2026-08-25 06:09:37,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:09:37,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:09:37,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:09:37,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:09:39,303.303 INFO    ] ================================================
[2026-08-25 06:09:39,318.318 INFO    ] Launching Daemon at Tue Aug 25 06:09:39 IST 2026
[2026-08-25 06:09:39,329.329 INFO    ] ================================================
[2026-08-25 06:09:39,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:09:39
[2026-08-25 06:09:40,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:09:41,023.023 INFO    ] Initializing speech engine...
[2026-08-25 06:09:41,031.031 INFO    ] 2026-08-25 06:09:41
[2026-08-25 06:09:41,348.348 INFO    ] 2026-08-25 06:09:41
[2026-08-25 06:09:41,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:09:41,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:09:41,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:09:41,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:09:41,794.794 INFO    ] time= 25/08/2026 06:09:41
[2026-08-25 06:09:41,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:09:41,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:09:42,002.002 INFO    ] No existing commands found in stream
[2026-08-25 06:09:47,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:09:47,027.027 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 06:09:50,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:09:50,486.486 INFO    ] Checking for system updates...
[2026-08-25 06:09:50,522.522 INFO    ] 200
[2026-08-25 06:09:50,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:50,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:09:50,580.580 INFO    ] No update needed
[2026-08-25 06:09:50,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 06:09:50,619.619 INFO    ] 200
[2026-08-25 06:09:50,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:09:50,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:09:50,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:09:50,716.716 INFO    ] No camera update needed
[2026-08-25 06:09:50,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:09:50,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:09:50,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:09:50,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:09:52,771.771 INFO    ] ================================================
[2026-08-25 06:09:52,787.787 INFO    ] Launching Daemon at Tue Aug 25 06:09:52 IST 2026
[2026-08-25 06:09:52,797.797 INFO    ] ================================================
[2026-08-25 06:09:53,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:09:53
[2026-08-25 06:09:53,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:09:54,252.252 INFO    ] Initializing speech engine...
[2026-08-25 06:09:54,267.267 INFO    ] 2026-08-25 06:09:54
[2026-08-25 06:09:54,534.534 INFO    ] 2026-08-25 06:09:54
[2026-08-25 06:09:54,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:09:54,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:09:54,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:09:54,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:09:54,943.943 INFO    ] time= 25/08/2026 06:09:54
[2026-08-25 06:09:54,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:09:54,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:09:55,126.126 INFO    ] No existing commands found in stream
[2026-08-25 06:10:00,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:10:00,159.159 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 06:10:01,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:10:01,320.320 INFO    ] Checking for system updates...
[2026-08-25 06:10:01,358.358 INFO    ] 200
[2026-08-25 06:10:01,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:01,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:10:01,415.415 INFO    ] No update needed
[2026-08-25 06:10:01,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 06:10:01,451.451 INFO    ] 200
[2026-08-25 06:10:01,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:01,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:10:01,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:10:01,547.547 INFO    ] No camera update needed
[2026-08-25 06:10:01,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:10:01,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:10:01,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:10:01,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:10:03,617.617 INFO    ] ================================================
[2026-08-25 06:10:03,632.632 INFO    ] Launching Daemon at Tue Aug 25 06:10:03 IST 2026
[2026-08-25 06:10:03,645.645 INFO    ] ================================================
[2026-08-25 06:10:04,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:10:04
[2026-08-25 06:10:04,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:10:05,096.096 INFO    ] Initializing speech engine...
[2026-08-25 06:10:05,120.120 INFO    ] 2026-08-25 06:10:05
[2026-08-25 06:10:05,388.388 INFO    ] 2026-08-25 06:10:05
[2026-08-25 06:10:05,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:10:05,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:10:05,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:10:05,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:10:05,766.766 INFO    ] time= 25/08/2026 06:10:05
[2026-08-25 06:10:05,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:10:05,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:10:05,899.899 INFO    ] No existing commands found in stream
[2026-08-25 06:10:10,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:10:10,911.911 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 06:10:15,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:10:15,226.226 INFO    ] Checking for system updates...
[2026-08-25 06:10:15,263.263 INFO    ] 200
[2026-08-25 06:10:15,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:15,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:10:15,324.324 INFO    ] No update needed
[2026-08-25 06:10:15,327.327 INFO    ] Checking for camera pi updates...
[2026-08-25 06:10:15,361.361 INFO    ] 200
[2026-08-25 06:10:15,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:15,404.404 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:10:15,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:10:15,460.460 INFO    ] No camera update needed
[2026-08-25 06:10:15,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:10:15,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:10:15,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:10:15,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:10:17,517.517 INFO    ] ================================================
[2026-08-25 06:10:17,533.533 INFO    ] Launching Daemon at Tue Aug 25 06:10:17 IST 2026
[2026-08-25 06:10:17,544.544 INFO    ] ================================================
[2026-08-25 06:10:18,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:10:18
[2026-08-25 06:10:18,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:10:18,966.966 INFO    ] Initializing speech engine...
[2026-08-25 06:10:18,972.972 INFO    ] 2026-08-25 06:10:18
[2026-08-25 06:10:19,218.218 INFO    ] 2026-08-25 06:10:19
[2026-08-25 06:10:19,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:10:19,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:10:19,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:10:19,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:10:19,691.691 INFO    ] time= 25/08/2026 06:10:19
[2026-08-25 06:10:19,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:10:19,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:10:19,909.909 INFO    ] No existing commands found in stream
[2026-08-25 06:10:24,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:10:24,936.936 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 06:10:28,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:10:28,239.239 INFO    ] Checking for system updates...
[2026-08-25 06:10:28,276.276 INFO    ] 200
[2026-08-25 06:10:28,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:28,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:10:28,337.337 INFO    ] No update needed
[2026-08-25 06:10:28,340.340 INFO    ] Checking for camera pi updates...
[2026-08-25 06:10:28,377.377 INFO    ] 200
[2026-08-25 06:10:28,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:28,425.425 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:10:28,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:10:28,484.484 INFO    ] No camera update needed
[2026-08-25 06:10:28,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:10:28,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:10:28,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:10:28,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:10:30,542.542 INFO    ] ================================================
[2026-08-25 06:10:30,558.558 INFO    ] Launching Daemon at Tue Aug 25 06:10:30 IST 2026
[2026-08-25 06:10:30,569.569 INFO    ] ================================================
[2026-08-25 06:10:31,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:10:31
[2026-08-25 06:10:31,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:10:32,005.005 INFO    ] Initializing speech engine...
[2026-08-25 06:10:32,016.016 INFO    ] 2026-08-25 06:10:32
[2026-08-25 06:10:32,297.297 INFO    ] 2026-08-25 06:10:32
[2026-08-25 06:10:32,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:10:32,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:10:32,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:10:32,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:10:32,690.690 INFO    ] time= 25/08/2026 06:10:32
[2026-08-25 06:10:32,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:10:32,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:10:32,864.864 INFO    ] No existing commands found in stream
[2026-08-25 06:10:37,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:10:37,892.892 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 06:10:42,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:10:42,156.156 INFO    ] Checking for system updates...
[2026-08-25 06:10:42,191.191 INFO    ] 200
[2026-08-25 06:10:42,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:42,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:10:42,249.249 INFO    ] No update needed
[2026-08-25 06:10:42,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 06:10:42,287.287 INFO    ] 200
[2026-08-25 06:10:42,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:42,333.333 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:10:42,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:10:42,490.490 INFO    ] No camera update needed
[2026-08-25 06:10:42,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:10:42,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:10:42,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:10:42,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:10:44,544.544 INFO    ] ================================================
[2026-08-25 06:10:44,559.559 INFO    ] Launching Daemon at Tue Aug 25 06:10:44 IST 2026
[2026-08-25 06:10:44,570.570 INFO    ] ================================================
[2026-08-25 06:10:45,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:10:45
[2026-08-25 06:10:45,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:10:45,983.983 INFO    ] Initializing speech engine...
[2026-08-25 06:10:45,993.993 INFO    ] 2026-08-25 06:10:45
[2026-08-25 06:10:46,254.254 INFO    ] 2026-08-25 06:10:46
[2026-08-25 06:10:46,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:10:46,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:10:46,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:10:46,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:10:46,659.659 INFO    ] time= 25/08/2026 06:10:46
[2026-08-25 06:10:46,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:10:46,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:10:46,838.838 INFO    ] No existing commands found in stream
[2026-08-25 06:10:51,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:10:51,867.867 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 06:10:55,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:10:55,545.545 INFO    ] Checking for system updates...
[2026-08-25 06:10:55,580.580 INFO    ] 200
[2026-08-25 06:10:55,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:55,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:10:55,642.642 INFO    ] No update needed
[2026-08-25 06:10:55,644.644 INFO    ] Checking for camera pi updates...
[2026-08-25 06:10:55,681.681 INFO    ] 200
[2026-08-25 06:10:55,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:10:55,724.724 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:10:55,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:10:55,774.774 INFO    ] No camera update needed
[2026-08-25 06:10:55,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:10:55,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:10:55,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:10:55,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:10:57,828.828 INFO    ] ================================================
[2026-08-25 06:10:57,843.843 INFO    ] Launching Daemon at Tue Aug 25 06:10:57 IST 2026
[2026-08-25 06:10:57,855.855 INFO    ] ================================================
[2026-08-25 06:10:58,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:10:58
[2026-08-25 06:10:59,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:10:59,300.300 INFO    ] Initializing speech engine...
[2026-08-25 06:10:59,325.325 INFO    ] 2026-08-25 06:10:59
[2026-08-25 06:10:59,592.592 INFO    ] 2026-08-25 06:10:59
[2026-08-25 06:10:59,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:10:59,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:10:59,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:10:59,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:10:59,999.999 INFO    ] time= 25/08/2026 06:10:59
[2026-08-25 06:11:00,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:11:00,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:11:00,086.086 INFO    ] No existing commands found in stream
[2026-08-25 06:11:05,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:11:05,097.097 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 06:11:08,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:11:08,882.882 INFO    ] Checking for system updates...
[2026-08-25 06:11:08,918.918 INFO    ] 200
[2026-08-25 06:11:08,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:08,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:11:08,982.982 INFO    ] No update needed
[2026-08-25 06:11:08,985.985 INFO    ] Checking for camera pi updates...
[2026-08-25 06:11:09,018.018 INFO    ] 200
[2026-08-25 06:11:09,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:09,062.062 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:11:09,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:11:09,113.113 INFO    ] No camera update needed
[2026-08-25 06:11:09,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:11:09,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:11:09,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:11:09,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:11:11,167.167 INFO    ] ================================================
[2026-08-25 06:11:11,183.183 INFO    ] Launching Daemon at Tue Aug 25 06:11:11 IST 2026
[2026-08-25 06:11:11,194.194 INFO    ] ================================================
[2026-08-25 06:11:11,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:11:11
[2026-08-25 06:11:12,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:11:12,825.825 INFO    ] Initializing speech engine...
[2026-08-25 06:11:12,831.831 INFO    ] 2026-08-25 06:11:12
[2026-08-25 06:11:13,106.106 INFO    ] 2026-08-25 06:11:13
[2026-08-25 06:11:13,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:11:13,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:11:13,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:11:13,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:11:13,656.656 INFO    ] time= 25/08/2026 06:11:13
[2026-08-25 06:11:13,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:11:13,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:11:13,811.811 INFO    ] No existing commands found in stream
[2026-08-25 06:11:18,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:11:18,829.829 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 06:11:19,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:11:19,518.518 INFO    ] Checking for system updates...
[2026-08-25 06:11:19,555.555 INFO    ] 200
[2026-08-25 06:11:19,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:19,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:11:19,619.619 INFO    ] No update needed
[2026-08-25 06:11:19,621.621 INFO    ] Checking for camera pi updates...
[2026-08-25 06:11:19,655.655 INFO    ] 200
[2026-08-25 06:11:19,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:19,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:11:19,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:11:19,748.748 INFO    ] No camera update needed
[2026-08-25 06:11:19,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:11:19,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:11:19,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:11:19,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:11:21,805.805 INFO    ] ================================================
[2026-08-25 06:11:21,820.820 INFO    ] Launching Daemon at Tue Aug 25 06:11:21 IST 2026
[2026-08-25 06:11:21,831.831 INFO    ] ================================================
[2026-08-25 06:11:22,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:11:22
[2026-08-25 06:11:22,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:11:23,259.259 INFO    ] Initializing speech engine...
[2026-08-25 06:11:23,268.268 INFO    ] 2026-08-25 06:11:23
[2026-08-25 06:11:23,512.512 INFO    ] 2026-08-25 06:11:23
[2026-08-25 06:11:23,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:11:23,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:11:23,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:11:23,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:11:23,979.979 INFO    ] time= 25/08/2026 06:11:23
[2026-08-25 06:11:24,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:11:24,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:11:24,215.215 INFO    ] No existing commands found in stream
[2026-08-25 06:11:29,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:11:29,238.238 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 06:11:32,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:11:32,987.987 INFO    ] Checking for system updates...
[2026-08-25 06:11:33,026.026 INFO    ] 200
[2026-08-25 06:11:33,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:33,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:11:33,090.090 INFO    ] No update needed
[2026-08-25 06:11:33,092.092 INFO    ] Checking for camera pi updates...
[2026-08-25 06:11:33,126.126 INFO    ] 200
[2026-08-25 06:11:33,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:33,173.173 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:11:33,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:11:33,227.227 INFO    ] No camera update needed
[2026-08-25 06:11:33,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:11:33,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:11:33,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:11:33,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:11:35,281.281 INFO    ] ================================================
[2026-08-25 06:11:35,297.297 INFO    ] Launching Daemon at Tue Aug 25 06:11:35 IST 2026
[2026-08-25 06:11:35,308.308 INFO    ] ================================================
[2026-08-25 06:11:35,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:11:35
[2026-08-25 06:11:36,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:11:36,718.718 INFO    ] Initializing speech engine...
[2026-08-25 06:11:36,732.732 INFO    ] 2026-08-25 06:11:36
[2026-08-25 06:11:37,011.011 INFO    ] 2026-08-25 06:11:36
[2026-08-25 06:11:37,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:11:37,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:11:37,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:11:37,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:11:37,423.423 INFO    ] time= 25/08/2026 06:11:37
[2026-08-25 06:11:37,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:11:37,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:11:37,530.530 INFO    ] No existing commands found in stream
[2026-08-25 06:11:42,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:11:42,568.568 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 06:11:44,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:11:44,840.840 INFO    ] Checking for system updates...
[2026-08-25 06:11:44,879.879 INFO    ] 200
[2026-08-25 06:11:44,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:44,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:11:44,935.935 INFO    ] No update needed
[2026-08-25 06:11:44,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 06:11:44,974.974 INFO    ] 200
[2026-08-25 06:11:44,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:45,020.020 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:11:45,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:11:45,079.079 INFO    ] No camera update needed
[2026-08-25 06:11:45,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:11:45,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:11:45,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:11:45,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:11:47,134.134 INFO    ] ================================================
[2026-08-25 06:11:47,149.149 INFO    ] Launching Daemon at Tue Aug 25 06:11:47 IST 2026
[2026-08-25 06:11:47,160.160 INFO    ] ================================================
[2026-08-25 06:11:47,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:11:47
[2026-08-25 06:11:48,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:11:48,588.588 INFO    ] Initializing speech engine...
[2026-08-25 06:11:48,596.596 INFO    ] 2026-08-25 06:11:48
[2026-08-25 06:11:48,850.850 INFO    ] 2026-08-25 06:11:48
[2026-08-25 06:11:48,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:11:49,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:11:49,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:11:49,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:11:49,312.312 INFO    ] time= 25/08/2026 06:11:49
[2026-08-25 06:11:49,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:11:49,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:11:49,532.532 INFO    ] No existing commands found in stream
[2026-08-25 06:11:54,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:11:54,558.558 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 06:11:55,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:11:55,161.161 INFO    ] Checking for system updates...
[2026-08-25 06:11:55,197.197 INFO    ] 200
[2026-08-25 06:11:55,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:55,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:11:55,254.254 INFO    ] No update needed
[2026-08-25 06:11:55,257.257 INFO    ] Checking for camera pi updates...
[2026-08-25 06:11:55,293.293 INFO    ] 200
[2026-08-25 06:11:55,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:11:55,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:11:55,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:11:55,391.391 INFO    ] No camera update needed
[2026-08-25 06:11:55,393.393 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:11:55,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:11:55,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:11:55,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:11:57,448.448 INFO    ] ================================================
[2026-08-25 06:11:57,463.463 INFO    ] Launching Daemon at Tue Aug 25 06:11:57 IST 2026
[2026-08-25 06:11:57,473.473 INFO    ] ================================================
[2026-08-25 06:11:58,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:11:58
[2026-08-25 06:11:58,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:11:59,067.067 INFO    ] Initializing speech engine...
[2026-08-25 06:11:59,077.077 INFO    ] 2026-08-25 06:11:59
[2026-08-25 06:11:59,349.349 INFO    ] 2026-08-25 06:11:59
[2026-08-25 06:11:59,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:11:59,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:11:59,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:11:59,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:11:59,896.896 INFO    ] time= 25/08/2026 06:11:59
[2026-08-25 06:11:59,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:11:59,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:12:00,076.076 INFO    ] No existing commands found in stream
[2026-08-25 06:12:05,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:12:05,112.112 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 06:12:05,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:12:05,610.610 INFO    ] Checking for system updates...
[2026-08-25 06:12:05,650.650 INFO    ] 200
[2026-08-25 06:12:05,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:05,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:05,707.707 INFO    ] No update needed
[2026-08-25 06:12:05,710.710 INFO    ] Checking for camera pi updates...
[2026-08-25 06:12:05,747.747 INFO    ] 200
[2026-08-25 06:12:05,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:05,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:12:05,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:05,837.837 INFO    ] No camera update needed
[2026-08-25 06:12:05,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:12:05,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:12:05,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:12:05,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:12:07,893.893 INFO    ] ================================================
[2026-08-25 06:12:07,909.909 INFO    ] Launching Daemon at Tue Aug 25 06:12:07 IST 2026
[2026-08-25 06:12:07,920.920 INFO    ] ================================================
[2026-08-25 06:12:08,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:12:08
[2026-08-25 06:12:09,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:12:09,514.514 INFO    ] Initializing speech engine...
[2026-08-25 06:12:09,523.523 INFO    ] 2026-08-25 06:12:09
[2026-08-25 06:12:09,796.796 INFO    ] 2026-08-25 06:12:09
[2026-08-25 06:12:09,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:12:10,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:12:10,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:12:10,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:12:10,322.322 INFO    ] time= 25/08/2026 06:12:10
[2026-08-25 06:12:10,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:12:10,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:12:10,498.498 INFO    ] No existing commands found in stream
[2026-08-25 06:12:15,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:12:15,520.520 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 06:12:17,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:12:17,909.909 INFO    ] Checking for system updates...
[2026-08-25 06:12:17,946.946 INFO    ] 200
[2026-08-25 06:12:17,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:18,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:18,011.011 INFO    ] No update needed
[2026-08-25 06:12:18,013.013 INFO    ] Checking for camera pi updates...
[2026-08-25 06:12:18,051.051 INFO    ] 200
[2026-08-25 06:12:18,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:18,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:12:18,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:18,152.152 INFO    ] No camera update needed
[2026-08-25 06:12:18,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:12:18,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:12:18,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:12:18,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:12:20,209.209 INFO    ] ================================================
[2026-08-25 06:12:20,224.224 INFO    ] Launching Daemon at Tue Aug 25 06:12:20 IST 2026
[2026-08-25 06:12:20,235.235 INFO    ] ================================================
[2026-08-25 06:12:20,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:12:20
[2026-08-25 06:12:21,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:12:21,796.796 INFO    ] Initializing speech engine...
[2026-08-25 06:12:21,812.812 INFO    ] 2026-08-25 06:12:21
[2026-08-25 06:12:22,061.061 INFO    ] 2026-08-25 06:12:22
[2026-08-25 06:12:22,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:12:22,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:12:22,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:12:22,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:12:22,436.436 INFO    ] time= 25/08/2026 06:12:22
[2026-08-25 06:12:22,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:12:22,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:12:22,615.615 INFO    ] No existing commands found in stream
[2026-08-25 06:12:27,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:12:27,643.643 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 06:12:31,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:12:31,699.699 INFO    ] Checking for system updates...
[2026-08-25 06:12:31,736.736 INFO    ] 200
[2026-08-25 06:12:31,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:31,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:31,800.800 INFO    ] No update needed
[2026-08-25 06:12:31,803.803 INFO    ] Checking for camera pi updates...
[2026-08-25 06:12:31,837.837 INFO    ] 200
[2026-08-25 06:12:31,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:31,880.880 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:12:31,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:31,935.935 INFO    ] No camera update needed
[2026-08-25 06:12:31,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:12:31,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:12:31,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:12:31,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:12:33,993.993 INFO    ] ================================================
[2026-08-25 06:12:34,008.008 INFO    ] Launching Daemon at Tue Aug 25 06:12:34 IST 2026
[2026-08-25 06:12:34,019.019 INFO    ] ================================================
[2026-08-25 06:12:34,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:12:34
[2026-08-25 06:12:35,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:12:35,606.606 INFO    ] Initializing speech engine...
[2026-08-25 06:12:35,619.619 INFO    ] 2026-08-25 06:12:35
[2026-08-25 06:12:35,892.892 INFO    ] 2026-08-25 06:12:35
[2026-08-25 06:12:35,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:12:36,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:12:36,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:12:36,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:12:36,389.389 INFO    ] time= 25/08/2026 06:12:36
[2026-08-25 06:12:36,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:12:36,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:12:36,630.630 INFO    ] No existing commands found in stream
[2026-08-25 06:12:41,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:12:41,640.640 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 06:12:45,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:12:45,336.336 INFO    ] Checking for system updates...
[2026-08-25 06:12:45,379.379 INFO    ] 200
[2026-08-25 06:12:45,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:45,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:12:45,459.459 INFO    ] No update needed
[2026-08-25 06:12:45,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 06:12:45,499.499 INFO    ] 200
[2026-08-25 06:12:45,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:45,549.549 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:12:45,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:12:45,700.700 INFO    ] No camera update needed
[2026-08-25 06:12:45,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:12:45,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:12:45,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:12:45,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:12:47,758.758 INFO    ] ================================================
[2026-08-25 06:12:47,774.774 INFO    ] Launching Daemon at Tue Aug 25 06:12:47 IST 2026
[2026-08-25 06:12:47,784.784 INFO    ] ================================================
[2026-08-25 06:12:48,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:12:48
[2026-08-25 06:12:48,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:12:49,216.216 INFO    ] Initializing speech engine...
[2026-08-25 06:12:49,225.225 INFO    ] 2026-08-25 06:12:49
[2026-08-25 06:12:49,471.471 INFO    ] 2026-08-25 06:12:49
[2026-08-25 06:12:49,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:12:49,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:12:49,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:12:49,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:12:49,945.945 INFO    ] time= 25/08/2026 06:12:49
[2026-08-25 06:12:49,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:12:50,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:12:50,169.169 INFO    ] No existing commands found in stream
[2026-08-25 06:12:55,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:12:55,197.197 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 06:12:59,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:12:59,228.228 INFO    ] Checking for system updates...
[2026-08-25 06:12:59,267.267 INFO    ] 200
[2026-08-25 06:12:59,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:59,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:59,323.323 INFO    ] No update needed
[2026-08-25 06:12:59,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 06:12:59,359.359 INFO    ] 200
[2026-08-25 06:12:59,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:12:59,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:12:59,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:12:59,454.454 INFO    ] No camera update needed
[2026-08-25 06:12:59,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:12:59,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:12:59,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:12:59,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:13:01,508.508 INFO    ] ================================================
[2026-08-25 06:13:01,524.524 INFO    ] Launching Daemon at Tue Aug 25 06:13:01 IST 2026
[2026-08-25 06:13:01,535.535 INFO    ] ================================================
[2026-08-25 06:13:02,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:13:02
[2026-08-25 06:13:02,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:13:03,153.153 INFO    ] Initializing speech engine...
[2026-08-25 06:13:03,160.160 INFO    ] 2026-08-25 06:13:03
[2026-08-25 06:13:03,487.487 INFO    ] 2026-08-25 06:13:03
[2026-08-25 06:13:03,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:13:03,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:13:03,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:13:03,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:13:03,891.891 INFO    ] time= 25/08/2026 06:13:03
[2026-08-25 06:13:03,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:13:03,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:13:03,972.972 INFO    ] No existing commands found in stream
[2026-08-25 06:13:08,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:13:08,987.987 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 06:13:11,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:13:11,177.177 INFO    ] Checking for system updates...
[2026-08-25 06:13:11,212.212 INFO    ] 200
[2026-08-25 06:13:11,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:11,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:13:11,269.269 INFO    ] No update needed
[2026-08-25 06:13:11,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 06:13:11,305.305 INFO    ] 200
[2026-08-25 06:13:11,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:11,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:13:11,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:13:11,394.394 INFO    ] No camera update needed
[2026-08-25 06:13:11,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:13:11,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:13:11,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:13:11,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:13:13,449.449 INFO    ] ================================================
[2026-08-25 06:13:13,465.465 INFO    ] Launching Daemon at Tue Aug 25 06:13:13 IST 2026
[2026-08-25 06:13:13,475.475 INFO    ] ================================================
[2026-08-25 06:13:14,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:13:14
[2026-08-25 06:13:14,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:13:15,090.090 INFO    ] Initializing speech engine...
[2026-08-25 06:13:15,102.102 INFO    ] 2026-08-25 06:13:15
[2026-08-25 06:13:15,408.408 INFO    ] 2026-08-25 06:13:15
[2026-08-25 06:13:15,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:13:15,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:13:15,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:13:15,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:13:15,912.912 INFO    ] time= 25/08/2026 06:13:15
[2026-08-25 06:13:15,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:13:15,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:13:16,064.064 INFO    ] No existing commands found in stream
[2026-08-25 06:13:21,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:13:21,083.083 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 06:13:22,470.470 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:13:22,472.472 INFO    ] Checking for system updates...
[2026-08-25 06:13:22,509.509 INFO    ] 200
[2026-08-25 06:13:22,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:22,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:13:22,569.569 INFO    ] No update needed
[2026-08-25 06:13:22,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 06:13:22,607.607 INFO    ] 200
[2026-08-25 06:13:22,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:22,651.651 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:13:22,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:13:22,710.710 INFO    ] No camera update needed
[2026-08-25 06:13:22,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:13:22,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:13:22,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:13:22,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:13:24,769.769 INFO    ] ================================================
[2026-08-25 06:13:24,784.784 INFO    ] Launching Daemon at Tue Aug 25 06:13:24 IST 2026
[2026-08-25 06:13:24,794.794 INFO    ] ================================================
[2026-08-25 06:13:25,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:13:25
[2026-08-25 06:13:25,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:13:26,203.203 INFO    ] Initializing speech engine...
[2026-08-25 06:13:26,214.214 INFO    ] 2026-08-25 06:13:26
[2026-08-25 06:13:26,457.457 INFO    ] 2026-08-25 06:13:26
[2026-08-25 06:13:26,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:13:26,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:13:26,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:13:26,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:13:26,918.918 INFO    ] time= 25/08/2026 06:13:26
[2026-08-25 06:13:26,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:13:27,014.014 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:13:27,142.142 INFO    ] No existing commands found in stream
[2026-08-25 06:13:32,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:13:32,171.171 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 06:13:35,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:13:35,830.830 INFO    ] Checking for system updates...
[2026-08-25 06:13:35,866.866 INFO    ] 200
[2026-08-25 06:13:35,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:35,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:13:35,927.927 INFO    ] No update needed
[2026-08-25 06:13:35,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 06:13:35,966.966 INFO    ] 200
[2026-08-25 06:13:35,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:36,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:13:36,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:13:36,057.057 INFO    ] No camera update needed
[2026-08-25 06:13:36,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:13:36,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:13:36,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:13:36,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:13:38,112.112 INFO    ] ================================================
[2026-08-25 06:13:38,128.128 INFO    ] Launching Daemon at Tue Aug 25 06:13:38 IST 2026
[2026-08-25 06:13:38,139.139 INFO    ] ================================================
[2026-08-25 06:13:38,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:13:38
[2026-08-25 06:13:39,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:13:39,544.544 INFO    ] Initializing speech engine...
[2026-08-25 06:13:39,559.559 INFO    ] 2026-08-25 06:13:39
[2026-08-25 06:13:39,828.828 INFO    ] 2026-08-25 06:13:39
[2026-08-25 06:13:39,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:13:40,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:13:40,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:13:40,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:13:40,200.200 INFO    ] time= 25/08/2026 06:13:40
[2026-08-25 06:13:40,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:13:40,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:13:40,394.394 INFO    ] No existing commands found in stream
[2026-08-25 06:13:45,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:13:45,407.407 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 06:13:45,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:13:45,878.878 INFO    ] Checking for system updates...
[2026-08-25 06:13:45,913.913 INFO    ] 200
[2026-08-25 06:13:45,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:45,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:13:45,970.970 INFO    ] No update needed
[2026-08-25 06:13:45,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 06:13:46,010.010 INFO    ] 200
[2026-08-25 06:13:46,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:46,053.053 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:13:46,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:13:46,105.105 INFO    ] No camera update needed
[2026-08-25 06:13:46,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:13:46,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:13:46,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:13:46,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:13:48,164.164 INFO    ] ================================================
[2026-08-25 06:13:48,179.179 INFO    ] Launching Daemon at Tue Aug 25 06:13:48 IST 2026
[2026-08-25 06:13:48,190.190 INFO    ] ================================================
[2026-08-25 06:13:48,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:13:48
[2026-08-25 06:13:49,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:13:49,603.603 INFO    ] Initializing speech engine...
[2026-08-25 06:13:49,613.613 INFO    ] 2026-08-25 06:13:49
[2026-08-25 06:13:49,859.859 INFO    ] 2026-08-25 06:13:49
[2026-08-25 06:13:49,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:13:50,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:13:50,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:13:50,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:13:50,319.319 INFO    ] time= 25/08/2026 06:13:50
[2026-08-25 06:13:50,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:13:50,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:13:50,531.531 INFO    ] No existing commands found in stream
[2026-08-25 06:13:55,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:13:55,556.556 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 06:13:57,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:13:57,182.182 INFO    ] Checking for system updates...
[2026-08-25 06:13:57,221.221 INFO    ] 200
[2026-08-25 06:13:57,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:57,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:13:57,278.278 INFO    ] No update needed
[2026-08-25 06:13:57,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 06:13:57,314.314 INFO    ] 200
[2026-08-25 06:13:57,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:13:57,357.357 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:13:57,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:13:57,404.404 INFO    ] No camera update needed
[2026-08-25 06:13:57,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:13:57,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:13:57,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:13:57,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:13:59,460.460 INFO    ] ================================================
[2026-08-25 06:13:59,476.476 INFO    ] Launching Daemon at Tue Aug 25 06:13:59 IST 2026
[2026-08-25 06:13:59,487.487 INFO    ] ================================================
[2026-08-25 06:14:00,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:14:00
[2026-08-25 06:14:00,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:14:01,098.098 INFO    ] Initializing speech engine...
[2026-08-25 06:14:01,107.107 INFO    ] 2026-08-25 06:14:01
[2026-08-25 06:14:01,386.386 INFO    ] 2026-08-25 06:14:01
[2026-08-25 06:14:01,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:14:01,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:14:01,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:14:01,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:14:01,888.888 INFO    ] time= 25/08/2026 06:14:01
[2026-08-25 06:14:01,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:14:01,969.969 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:14:02,060.060 INFO    ] No existing commands found in stream
[2026-08-25 06:14:07,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:14:07,090.090 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 06:14:10,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:14:10,677.677 INFO    ] Checking for system updates...
[2026-08-25 06:14:10,717.717 INFO    ] 200
[2026-08-25 06:14:10,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:10,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:14:10,782.782 INFO    ] No update needed
[2026-08-25 06:14:10,785.785 INFO    ] Checking for camera pi updates...
[2026-08-25 06:14:10,819.819 INFO    ] 200
[2026-08-25 06:14:10,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:10,864.864 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:14:10,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:14:10,914.914 INFO    ] No camera update needed
[2026-08-25 06:14:10,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:14:10,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:14:10,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:14:10,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:14:12,972.972 INFO    ] ================================================
[2026-08-25 06:14:12,988.988 INFO    ] Launching Daemon at Tue Aug 25 06:14:12 IST 2026
[2026-08-25 06:14:13,999.999 INFO    ] ================================================
[2026-08-25 06:14:13,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:14:13
[2026-08-25 06:14:14,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:14:14,553.553 INFO    ] Initializing speech engine...
[2026-08-25 06:14:14,570.570 INFO    ] 2026-08-25 06:14:14
[2026-08-25 06:14:14,844.844 INFO    ] 2026-08-25 06:14:14
[2026-08-25 06:14:14,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:14:15,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:14:15,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:14:15,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:14:15,227.227 INFO    ] time= 25/08/2026 06:14:15
[2026-08-25 06:14:15,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:14:15,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:14:15,353.353 INFO    ] No existing commands found in stream
[2026-08-25 06:14:20,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:14:20,369.369 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 06:14:24,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:14:24,705.705 INFO    ] Checking for system updates...
[2026-08-25 06:14:24,742.742 INFO    ] 200
[2026-08-25 06:14:24,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:24,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:14:24,800.800 INFO    ] No update needed
[2026-08-25 06:14:24,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 06:14:24,835.835 INFO    ] 200
[2026-08-25 06:14:24,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:24,878.878 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:14:24,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:14:24,933.933 INFO    ] No camera update needed
[2026-08-25 06:14:24,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:14:24,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:14:24,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:14:24,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:14:26,988.988 INFO    ] ================================================
[2026-08-25 06:14:27,003.003 INFO    ] Launching Daemon at Tue Aug 25 06:14:26 IST 2026
[2026-08-25 06:14:27,015.015 INFO    ] ================================================
[2026-08-25 06:14:27,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:14:27
[2026-08-25 06:14:28,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:14:28,481.481 INFO    ] Initializing speech engine...
[2026-08-25 06:14:28,487.487 INFO    ] 2026-08-25 06:14:28
[2026-08-25 06:14:28,760.760 INFO    ] 2026-08-25 06:14:28
[2026-08-25 06:14:28,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:14:29,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:14:29,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:14:29,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:14:29,226.226 INFO    ] time= 25/08/2026 06:14:29
[2026-08-25 06:14:29,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:14:29,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:14:29,444.444 INFO    ] No existing commands found in stream
[2026-08-25 06:14:34,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:14:34,459.459 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 06:14:38,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:14:38,270.270 INFO    ] Checking for system updates...
[2026-08-25 06:14:38,305.305 INFO    ] 200
[2026-08-25 06:14:38,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:38,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:14:38,363.363 INFO    ] No update needed
[2026-08-25 06:14:38,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 06:14:38,399.399 INFO    ] 200
[2026-08-25 06:14:38,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:38,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:14:38,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:14:38,489.489 INFO    ] No camera update needed
[2026-08-25 06:14:38,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:14:38,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:14:38,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:14:38,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:14:40,545.545 INFO    ] ================================================
[2026-08-25 06:14:40,561.561 INFO    ] Launching Daemon at Tue Aug 25 06:14:40 IST 2026
[2026-08-25 06:14:40,573.573 INFO    ] ================================================
[2026-08-25 06:14:41,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:14:41
[2026-08-25 06:14:41,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:14:42,111.111 INFO    ] Initializing speech engine...
[2026-08-25 06:14:42,120.120 INFO    ] 2026-08-25 06:14:42
[2026-08-25 06:14:42,383.383 INFO    ] 2026-08-25 06:14:42
[2026-08-25 06:14:42,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:14:42,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:14:42,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:14:42,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:14:42,869.869 INFO    ] time= 25/08/2026 06:14:42
[2026-08-25 06:14:42,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:14:42,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:14:43,074.074 INFO    ] No existing commands found in stream
[2026-08-25 06:14:48,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:14:48,090.090 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 06:14:49,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:14:49,381.381 INFO    ] Checking for system updates...
[2026-08-25 06:14:49,417.417 INFO    ] 200
[2026-08-25 06:14:49,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:49,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:14:49,481.481 INFO    ] No update needed
[2026-08-25 06:14:49,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 06:14:49,517.517 INFO    ] 200
[2026-08-25 06:14:49,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:14:49,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:14:49,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:14:49,712.712 INFO    ] No camera update needed
[2026-08-25 06:14:49,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:14:49,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:14:49,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:14:49,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:14:51,768.768 INFO    ] ================================================
[2026-08-25 06:14:51,783.783 INFO    ] Launching Daemon at Tue Aug 25 06:14:51 IST 2026
[2026-08-25 06:14:51,794.794 INFO    ] ================================================
[2026-08-25 06:14:52,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:14:52
[2026-08-25 06:14:53,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:14:53,371.371 INFO    ] Initializing speech engine...
[2026-08-25 06:14:53,378.378 INFO    ] 2026-08-25 06:14:53
[2026-08-25 06:14:53,695.695 INFO    ] 2026-08-25 06:14:53
[2026-08-25 06:14:53,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:14:53,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:14:53,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:14:54,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:14:54,210.210 INFO    ] time= 25/08/2026 06:14:54
[2026-08-25 06:14:54,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:14:54,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:14:54,386.386 INFO    ] No existing commands found in stream
[2026-08-25 06:14:59,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:14:59,417.417 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 06:15:00,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:15:00,732.732 INFO    ] Checking for system updates...
[2026-08-25 06:15:00,773.773 INFO    ] 200
[2026-08-25 06:15:00,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:00,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:15:00,847.847 INFO    ] No update needed
[2026-08-25 06:15:00,850.850 INFO    ] Checking for camera pi updates...
[2026-08-25 06:15:00,897.897 INFO    ] 200
[2026-08-25 06:15:00,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:00,953.953 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:15:01,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:15:01,010.010 INFO    ] No camera update needed
[2026-08-25 06:15:01,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:15:01,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:15:01,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:15:01,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:15:03,080.080 INFO    ] ================================================
[2026-08-25 06:15:03,097.097 INFO    ] Launching Daemon at Tue Aug 25 06:15:03 IST 2026
[2026-08-25 06:15:03,113.113 INFO    ] ================================================
[2026-08-25 06:15:03,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:15:03
[2026-08-25 06:15:04,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:15:04,850.850 INFO    ] Initializing speech engine...
[2026-08-25 06:15:04,856.856 INFO    ] 2026-08-25 06:15:04
[2026-08-25 06:15:05,138.138 INFO    ] 2026-08-25 06:15:05
[2026-08-25 06:15:05,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:15:05,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:15:05,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:15:05,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:15:05,646.646 INFO    ] time= 25/08/2026 06:15:05
[2026-08-25 06:15:05,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:15:05,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:15:05,842.842 INFO    ] No existing commands found in stream
[2026-08-25 06:15:10,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:15:10,871.871 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 06:15:14,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:15:14,466.466 INFO    ] Checking for system updates...
[2026-08-25 06:15:14,502.502 INFO    ] 200
[2026-08-25 06:15:14,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:14,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:15:14,560.560 INFO    ] No update needed
[2026-08-25 06:15:14,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 06:15:14,599.599 INFO    ] 200
[2026-08-25 06:15:14,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:14,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:15:14,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:15:14,694.694 INFO    ] No camera update needed
[2026-08-25 06:15:14,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:15:14,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:15:14,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:15:14,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:15:16,749.749 INFO    ] ================================================
[2026-08-25 06:15:16,765.765 INFO    ] Launching Daemon at Tue Aug 25 06:15:16 IST 2026
[2026-08-25 06:15:16,776.776 INFO    ] ================================================
[2026-08-25 06:15:17,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:15:17
[2026-08-25 06:15:18,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:15:18,318.318 INFO    ] Initializing speech engine...
[2026-08-25 06:15:18,324.324 INFO    ] 2026-08-25 06:15:18
[2026-08-25 06:15:18,584.584 INFO    ] 2026-08-25 06:15:18
[2026-08-25 06:15:18,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:15:18,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:15:18,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:15:19,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:15:19,048.048 INFO    ] time= 25/08/2026 06:15:19
[2026-08-25 06:15:19,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:15:19,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:15:19,283.283 INFO    ] No existing commands found in stream
[2026-08-25 06:15:24,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:15:24,298.298 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 06:15:25,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:15:25,698.698 INFO    ] Checking for system updates...
[2026-08-25 06:15:25,733.733 INFO    ] 200
[2026-08-25 06:15:25,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:25,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:15:25,791.791 INFO    ] No update needed
[2026-08-25 06:15:25,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 06:15:25,827.827 INFO    ] 200
[2026-08-25 06:15:25,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:25,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:15:25,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:15:25,921.921 INFO    ] No camera update needed
[2026-08-25 06:15:25,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:15:25,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:15:25,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:15:25,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:15:27,975.975 INFO    ] ================================================
[2026-08-25 06:15:27,990.990 INFO    ] Launching Daemon at Tue Aug 25 06:15:27 IST 2026
[2026-08-25 06:15:28,001.001 INFO    ] ================================================
[2026-08-25 06:15:28,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:15:28
[2026-08-25 06:15:29,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:15:29,447.447 INFO    ] Initializing speech engine...
[2026-08-25 06:15:29,456.456 INFO    ] 2026-08-25 06:15:29
[2026-08-25 06:15:29,709.709 INFO    ] 2026-08-25 06:15:29
[2026-08-25 06:15:29,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:15:29,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:15:29,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:15:30,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:15:30,165.165 INFO    ] time= 25/08/2026 06:15:30
[2026-08-25 06:15:30,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:15:30,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:15:30,408.408 INFO    ] No existing commands found in stream
[2026-08-25 06:15:35,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:15:35,426.426 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 06:15:36,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:15:36,689.689 INFO    ] Checking for system updates...
[2026-08-25 06:15:36,726.726 INFO    ] 200
[2026-08-25 06:15:36,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:36,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:15:36,785.785 INFO    ] No update needed
[2026-08-25 06:15:36,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 06:15:36,822.822 INFO    ] 200
[2026-08-25 06:15:36,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:36,870.870 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:15:36,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:15:36,921.921 INFO    ] No camera update needed
[2026-08-25 06:15:36,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:15:36,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:15:36,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:15:36,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:15:38,975.975 INFO    ] ================================================
[2026-08-25 06:15:39,997.997 INFO    ] Launching Daemon at Tue Aug 25 06:15:38 IST 2026
[2026-08-25 06:15:39,007.007 INFO    ] ================================================
[2026-08-25 06:15:39,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:15:39
[2026-08-25 06:15:40,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:15:40,412.412 INFO    ] Initializing speech engine...
[2026-08-25 06:15:40,433.433 INFO    ] 2026-08-25 06:15:40
[2026-08-25 06:15:40,691.691 INFO    ] 2026-08-25 06:15:40
[2026-08-25 06:15:40,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:15:40,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:15:40,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:15:41,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:15:41,069.069 INFO    ] time= 25/08/2026 06:15:41
[2026-08-25 06:15:41,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:15:41,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:15:41,234.234 INFO    ] No existing commands found in stream
[2026-08-25 06:15:46,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:15:46,262.262 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 06:15:47,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:15:47,958.958 INFO    ] Checking for system updates...
[2026-08-25 06:15:47,994.994 INFO    ] 200
[2026-08-25 06:15:47,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:48,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:15:48,060.060 INFO    ] No update needed
[2026-08-25 06:15:48,062.062 INFO    ] Checking for camera pi updates...
[2026-08-25 06:15:48,095.095 INFO    ] 200
[2026-08-25 06:15:48,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:15:48,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:15:48,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:15:48,185.185 INFO    ] No camera update needed
[2026-08-25 06:15:48,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:15:48,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:15:48,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:15:48,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:15:50,238.238 INFO    ] ================================================
[2026-08-25 06:15:50,253.253 INFO    ] Launching Daemon at Tue Aug 25 06:15:50 IST 2026
[2026-08-25 06:15:50,263.263 INFO    ] ================================================
[2026-08-25 06:15:50,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:15:50
[2026-08-25 06:15:51,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:15:51,845.845 INFO    ] Initializing speech engine...
[2026-08-25 06:15:51,857.857 INFO    ] 2026-08-25 06:15:51
[2026-08-25 06:15:52,132.132 INFO    ] 2026-08-25 06:15:52
[2026-08-25 06:15:52,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:15:52,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:15:52,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:15:52,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:15:52,692.692 INFO    ] time= 25/08/2026 06:15:52
[2026-08-25 06:15:52,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:15:52,721.721 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:15:52,854.854 INFO    ] No existing commands found in stream
[2026-08-25 06:15:57,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:15:57,888.888 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 06:16:00,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:16:00,469.469 INFO    ] Checking for system updates...
[2026-08-25 06:16:00,505.505 INFO    ] 200
[2026-08-25 06:16:00,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:00,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:16:00,566.566 INFO    ] No update needed
[2026-08-25 06:16:00,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 06:16:00,603.603 INFO    ] 200
[2026-08-25 06:16:00,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:00,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:16:00,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:16:00,698.698 INFO    ] No camera update needed
[2026-08-25 06:16:00,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:16:00,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:16:00,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:16:00,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:16:02,759.759 INFO    ] ================================================
[2026-08-25 06:16:02,780.780 INFO    ] Launching Daemon at Tue Aug 25 06:16:02 IST 2026
[2026-08-25 06:16:02,793.793 INFO    ] ================================================
[2026-08-25 06:16:03,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:16:03
[2026-08-25 06:16:04,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:16:04,306.306 INFO    ] Initializing speech engine...
[2026-08-25 06:16:04,315.315 INFO    ] 2026-08-25 06:16:04
[2026-08-25 06:16:04,607.607 INFO    ] 2026-08-25 06:16:04
[2026-08-25 06:16:04,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:16:04,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:16:04,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:16:04,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:16:04,981.981 INFO    ] time= 25/08/2026 06:16:04
[2026-08-25 06:16:05,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:16:05,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:16:05,103.103 INFO    ] No existing commands found in stream
[2026-08-25 06:16:10,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:16:10,118.118 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 06:16:12,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:16:12,738.738 INFO    ] Checking for system updates...
[2026-08-25 06:16:12,775.775 INFO    ] 200
[2026-08-25 06:16:12,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:12,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:16:12,831.831 INFO    ] No update needed
[2026-08-25 06:16:12,834.834 INFO    ] Checking for camera pi updates...
[2026-08-25 06:16:12,870.870 INFO    ] 200
[2026-08-25 06:16:12,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:12,916.916 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:16:12,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:16:12,974.974 INFO    ] No camera update needed
[2026-08-25 06:16:12,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:16:12,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:16:12,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:16:12,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:16:15,028.028 INFO    ] ================================================
[2026-08-25 06:16:15,043.043 INFO    ] Launching Daemon at Tue Aug 25 06:16:15 IST 2026
[2026-08-25 06:16:15,053.053 INFO    ] ================================================
[2026-08-25 06:16:15,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:16:15
[2026-08-25 06:16:16,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:16:16,513.513 INFO    ] Initializing speech engine...
[2026-08-25 06:16:16,529.529 INFO    ] 2026-08-25 06:16:16
[2026-08-25 06:16:16,799.799 INFO    ] 2026-08-25 06:16:16
[2026-08-25 06:16:16,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:16:17,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:16:17,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:16:17,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:16:17,206.206 INFO    ] time= 25/08/2026 06:16:17
[2026-08-25 06:16:17,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:16:17,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:16:17,296.296 INFO    ] No existing commands found in stream
[2026-08-25 06:16:22,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:16:22,313.313 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 06:16:25,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:16:25,479.479 INFO    ] Checking for system updates...
[2026-08-25 06:16:25,517.517 INFO    ] 200
[2026-08-25 06:16:25,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:25,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:16:25,573.573 INFO    ] No update needed
[2026-08-25 06:16:25,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 06:16:25,613.613 INFO    ] 200
[2026-08-25 06:16:25,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:25,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:16:25,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:16:25,714.714 INFO    ] No camera update needed
[2026-08-25 06:16:25,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:16:25,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:16:25,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:16:25,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:16:27,770.770 INFO    ] ================================================
[2026-08-25 06:16:27,786.786 INFO    ] Launching Daemon at Tue Aug 25 06:16:27 IST 2026
[2026-08-25 06:16:27,797.797 INFO    ] ================================================
[2026-08-25 06:16:28,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:16:28
[2026-08-25 06:16:29,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:16:29,290.290 INFO    ] Initializing speech engine...
[2026-08-25 06:16:29,303.303 INFO    ] 2026-08-25 06:16:29
[2026-08-25 06:16:29,587.587 INFO    ] 2026-08-25 06:16:29
[2026-08-25 06:16:29,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:16:29,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:16:29,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:16:29,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:16:30,000.000 INFO    ] time= 25/08/2026 06:16:29
[2026-08-25 06:16:30,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:16:30,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:16:30,163.163 INFO    ] No existing commands found in stream
[2026-08-25 06:16:35,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:16:35,191.191 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 06:16:39,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:16:39,449.449 INFO    ] Checking for system updates...
[2026-08-25 06:16:39,485.485 INFO    ] 200
[2026-08-25 06:16:39,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:39,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:16:39,542.542 INFO    ] No update needed
[2026-08-25 06:16:39,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 06:16:39,581.581 INFO    ] 200
[2026-08-25 06:16:39,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:39,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:16:39,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:16:39,669.669 INFO    ] No camera update needed
[2026-08-25 06:16:39,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:16:39,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:16:39,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:16:39,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:16:41,723.723 INFO    ] ================================================
[2026-08-25 06:16:41,738.738 INFO    ] Launching Daemon at Tue Aug 25 06:16:41 IST 2026
[2026-08-25 06:16:41,749.749 INFO    ] ================================================
[2026-08-25 06:16:42,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:16:42
[2026-08-25 06:16:43,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:16:43,351.351 INFO    ] Initializing speech engine...
[2026-08-25 06:16:43,363.363 INFO    ] 2026-08-25 06:16:43
[2026-08-25 06:16:43,629.629 INFO    ] 2026-08-25 06:16:43
[2026-08-25 06:16:43,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:16:43,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:16:43,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:16:44,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:16:44,103.103 INFO    ] time= 25/08/2026 06:16:44
[2026-08-25 06:16:44,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:16:44,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:16:44,315.315 INFO    ] No existing commands found in stream
[2026-08-25 06:16:49,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:16:49,344.344 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 06:16:50,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:16:50,131.131 INFO    ] Checking for system updates...
[2026-08-25 06:16:50,167.167 INFO    ] 200
[2026-08-25 06:16:50,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:50,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:16:50,229.229 INFO    ] No update needed
[2026-08-25 06:16:50,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 06:16:50,264.264 INFO    ] 200
[2026-08-25 06:16:50,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:16:50,307.307 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:16:50,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:16:50,361.361 INFO    ] No camera update needed
[2026-08-25 06:16:50,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:16:50,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:16:50,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:16:50,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:16:52,415.415 INFO    ] ================================================
[2026-08-25 06:16:52,430.430 INFO    ] Launching Daemon at Tue Aug 25 06:16:52 IST 2026
[2026-08-25 06:16:52,441.441 INFO    ] ================================================
[2026-08-25 06:16:53,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:16:53
[2026-08-25 06:16:53,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:16:53,883.883 INFO    ] Initializing speech engine...
[2026-08-25 06:16:53,892.892 INFO    ] 2026-08-25 06:16:53
[2026-08-25 06:16:54,159.159 INFO    ] 2026-08-25 06:16:54
[2026-08-25 06:16:54,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:16:54,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:16:54,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:16:54,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:16:54,534.534 INFO    ] time= 25/08/2026 06:16:54
[2026-08-25 06:16:54,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:16:54,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:16:54,657.657 INFO    ] No existing commands found in stream
[2026-08-25 06:16:59,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:16:59,673.673 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 06:17:02,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:17:02,972.972 INFO    ] Checking for system updates...
[2026-08-25 06:17:03,009.009 INFO    ] 200
[2026-08-25 06:17:03,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:03,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:17:03,077.077 INFO    ] No update needed
[2026-08-25 06:17:03,080.080 INFO    ] Checking for camera pi updates...
[2026-08-25 06:17:03,118.118 INFO    ] 200
[2026-08-25 06:17:03,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:03,170.170 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:17:03,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:17:03,327.327 INFO    ] No camera update needed
[2026-08-25 06:17:03,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:17:03,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:17:03,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:17:03,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:17:05,381.381 INFO    ] ================================================
[2026-08-25 06:17:05,396.396 INFO    ] Launching Daemon at Tue Aug 25 06:17:05 IST 2026
[2026-08-25 06:17:05,406.406 INFO    ] ================================================
[2026-08-25 06:17:05,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:17:05
[2026-08-25 06:17:06,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:17:06,896.896 INFO    ] Initializing speech engine...
[2026-08-25 06:17:06,919.919 INFO    ] 2026-08-25 06:17:06
[2026-08-25 06:17:07,185.185 INFO    ] 2026-08-25 06:17:07
[2026-08-25 06:17:07,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:17:07,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:17:07,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:17:07,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:17:07,566.566 INFO    ] time= 25/08/2026 06:17:07
[2026-08-25 06:17:07,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:17:07,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:17:07,746.746 INFO    ] No existing commands found in stream
[2026-08-25 06:17:12,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:17:12,780.780 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 06:17:14,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:17:14,684.684 INFO    ] Checking for system updates...
[2026-08-25 06:17:14,720.720 INFO    ] 200
[2026-08-25 06:17:14,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:14,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:17:14,780.780 INFO    ] No update needed
[2026-08-25 06:17:14,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 06:17:14,816.816 INFO    ] 200
[2026-08-25 06:17:14,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:14,862.862 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:17:14,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:17:14,912.912 INFO    ] No camera update needed
[2026-08-25 06:17:14,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:17:14,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:17:14,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:17:14,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:17:16,966.966 INFO    ] ================================================
[2026-08-25 06:17:16,981.981 INFO    ] Launching Daemon at Tue Aug 25 06:17:16 IST 2026
[2026-08-25 06:17:16,991.991 INFO    ] ================================================
[2026-08-25 06:17:17,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:17:17
[2026-08-25 06:17:18,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:17:18,439.439 INFO    ] Initializing speech engine...
[2026-08-25 06:17:18,448.448 INFO    ] 2026-08-25 06:17:18
[2026-08-25 06:17:18,710.710 INFO    ] 2026-08-25 06:17:18
[2026-08-25 06:17:18,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:17:18,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:17:18,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:17:19,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:17:19,169.169 INFO    ] time= 25/08/2026 06:17:19
[2026-08-25 06:17:19,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:17:19,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:17:19,392.392 INFO    ] No existing commands found in stream
[2026-08-25 06:17:24,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:17:24,419.419 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 06:17:27,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:17:27,833.833 INFO    ] Checking for system updates...
[2026-08-25 06:17:27,870.870 INFO    ] 200
[2026-08-25 06:17:27,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:27,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:17:27,930.930 INFO    ] No update needed
[2026-08-25 06:17:27,932.932 INFO    ] Checking for camera pi updates...
[2026-08-25 06:17:27,967.967 INFO    ] 200
[2026-08-25 06:17:27,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:28,017.017 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:17:28,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:17:28,066.066 INFO    ] No camera update needed
[2026-08-25 06:17:28,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:17:28,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:17:28,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:17:28,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:17:30,120.120 INFO    ] ================================================
[2026-08-25 06:17:30,135.135 INFO    ] Launching Daemon at Tue Aug 25 06:17:30 IST 2026
[2026-08-25 06:17:30,145.145 INFO    ] ================================================
[2026-08-25 06:17:30,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:17:30
[2026-08-25 06:17:31,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:17:31,627.627 INFO    ] Initializing speech engine...
[2026-08-25 06:17:31,635.635 INFO    ] 2026-08-25 06:17:31
[2026-08-25 06:17:31,914.914 INFO    ] 2026-08-25 06:17:31
[2026-08-25 06:17:31,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:17:32,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:17:32,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:17:32,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:17:32,331.331 INFO    ] time= 25/08/2026 06:17:32
[2026-08-25 06:17:32,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:17:32,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:17:32,444.444 INFO    ] No existing commands found in stream
[2026-08-25 06:17:37,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:17:37,473.473 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 06:17:41,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:17:41,210.210 INFO    ] Checking for system updates...
[2026-08-25 06:17:41,249.249 INFO    ] 200
[2026-08-25 06:17:41,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:41,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:17:41,307.307 INFO    ] No update needed
[2026-08-25 06:17:41,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 06:17:41,343.343 INFO    ] 200
[2026-08-25 06:17:41,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:41,390.390 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:17:41,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:17:41,439.439 INFO    ] No camera update needed
[2026-08-25 06:17:41,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:17:41,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:17:41,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:17:41,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:17:43,494.494 INFO    ] ================================================
[2026-08-25 06:17:43,509.509 INFO    ] Launching Daemon at Tue Aug 25 06:17:43 IST 2026
[2026-08-25 06:17:43,519.519 INFO    ] ================================================
[2026-08-25 06:17:44,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:17:44
[2026-08-25 06:17:44,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:17:44,938.938 INFO    ] Initializing speech engine...
[2026-08-25 06:17:44,952.952 INFO    ] 2026-08-25 06:17:44
[2026-08-25 06:17:45,215.215 INFO    ] 2026-08-25 06:17:45
[2026-08-25 06:17:45,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:17:45,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:17:45,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:17:45,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:17:45,621.621 INFO    ] time= 25/08/2026 06:17:45
[2026-08-25 06:17:45,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:17:45,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:17:45,706.706 INFO    ] No existing commands found in stream
[2026-08-25 06:17:50,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:17:50,723.723 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 06:17:53,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:17:53,492.492 INFO    ] Checking for system updates...
[2026-08-25 06:17:53,529.529 INFO    ] 200
[2026-08-25 06:17:53,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:53,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:17:53,591.591 INFO    ] No update needed
[2026-08-25 06:17:53,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 06:17:53,629.629 INFO    ] 200
[2026-08-25 06:17:53,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:17:53,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:17:53,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:17:53,726.726 INFO    ] No camera update needed
[2026-08-25 06:17:53,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:17:53,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:17:53,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:17:53,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:17:55,780.780 INFO    ] ================================================
[2026-08-25 06:17:55,795.795 INFO    ] Launching Daemon at Tue Aug 25 06:17:55 IST 2026
[2026-08-25 06:17:55,806.806 INFO    ] ================================================
[2026-08-25 06:17:56,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:17:56
[2026-08-25 06:17:56,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:17:57,263.263 INFO    ] Initializing speech engine...
[2026-08-25 06:17:57,270.270 INFO    ] 2026-08-25 06:17:57
[2026-08-25 06:17:57,545.545 INFO    ] 2026-08-25 06:17:57
[2026-08-25 06:17:57,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:17:57,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:17:57,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:17:57,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:17:57,990.990 INFO    ] time= 25/08/2026 06:17:57
[2026-08-25 06:17:58,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:17:58,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:17:58,205.205 INFO    ] No existing commands found in stream
[2026-08-25 06:18:03,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:18:03,228.228 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 06:18:05,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:18:05,832.832 INFO    ] Checking for system updates...
[2026-08-25 06:18:05,868.868 INFO    ] 200
[2026-08-25 06:18:05,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:05,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:18:05,927.927 INFO    ] No update needed
[2026-08-25 06:18:05,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 06:18:05,966.966 INFO    ] 200
[2026-08-25 06:18:05,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:06,010.010 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:18:06,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:18:06,062.062 INFO    ] No camera update needed
[2026-08-25 06:18:06,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:18:06,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:18:06,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:18:06,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:18:08,117.117 INFO    ] ================================================
[2026-08-25 06:18:08,132.132 INFO    ] Launching Daemon at Tue Aug 25 06:18:08 IST 2026
[2026-08-25 06:18:08,143.143 INFO    ] ================================================
[2026-08-25 06:18:08,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:18:08
[2026-08-25 06:18:09,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:18:09,553.553 INFO    ] Initializing speech engine...
[2026-08-25 06:18:09,571.571 INFO    ] 2026-08-25 06:18:09
[2026-08-25 06:18:09,820.820 INFO    ] 2026-08-25 06:18:09
[2026-08-25 06:18:09,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:18:10,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:18:10,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:18:10,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:18:10,195.195 INFO    ] time= 25/08/2026 06:18:10
[2026-08-25 06:18:10,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:18:10,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:18:10,383.383 INFO    ] No existing commands found in stream
[2026-08-25 06:18:15,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:18:15,408.408 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 06:18:18,178.178 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:18:18,180.180 INFO    ] Checking for system updates...
[2026-08-25 06:18:18,216.216 INFO    ] 200
[2026-08-25 06:18:18,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:18,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:18:18,272.272 INFO    ] No update needed
[2026-08-25 06:18:18,274.274 INFO    ] Checking for camera pi updates...
[2026-08-25 06:18:18,308.308 INFO    ] 200
[2026-08-25 06:18:18,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:18,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:18:18,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:18:18,407.407 INFO    ] No camera update needed
[2026-08-25 06:18:18,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:18:18,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:18:18,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:18:18,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:18:20,460.460 INFO    ] ================================================
[2026-08-25 06:18:20,476.476 INFO    ] Launching Daemon at Tue Aug 25 06:18:20 IST 2026
[2026-08-25 06:18:20,486.486 INFO    ] ================================================
[2026-08-25 06:18:21,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:18:21
[2026-08-25 06:18:21,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:18:21,960.960 INFO    ] Initializing speech engine...
[2026-08-25 06:18:21,982.982 INFO    ] 2026-08-25 06:18:21
[2026-08-25 06:18:22,237.237 INFO    ] 2026-08-25 06:18:22
[2026-08-25 06:18:22,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:18:22,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:18:22,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:18:22,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:18:22,735.735 INFO    ] time= 25/08/2026 06:18:22
[2026-08-25 06:18:22,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:18:22,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:18:22,926.926 INFO    ] No existing commands found in stream
[2026-08-25 06:18:27,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:18:27,951.951 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 06:18:32,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:18:32,169.169 INFO    ] Checking for system updates...
[2026-08-25 06:18:32,207.207 INFO    ] 200
[2026-08-25 06:18:32,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:32,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:18:32,278.278 INFO    ] No update needed
[2026-08-25 06:18:32,281.281 INFO    ] Checking for camera pi updates...
[2026-08-25 06:18:32,318.318 INFO    ] 200
[2026-08-25 06:18:32,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:32,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:18:32,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:18:32,413.413 INFO    ] No camera update needed
[2026-08-25 06:18:32,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:18:32,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:18:32,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:18:32,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:18:34,470.470 INFO    ] ================================================
[2026-08-25 06:18:34,486.486 INFO    ] Launching Daemon at Tue Aug 25 06:18:34 IST 2026
[2026-08-25 06:18:34,497.497 INFO    ] ================================================
[2026-08-25 06:18:35,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:18:35
[2026-08-25 06:18:35,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:18:36,118.118 INFO    ] Initializing speech engine...
[2026-08-25 06:18:36,125.125 INFO    ] 2026-08-25 06:18:36
[2026-08-25 06:18:36,410.410 INFO    ] 2026-08-25 06:18:36
[2026-08-25 06:18:36,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:18:36,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:18:36,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:18:36,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:18:36,895.895 INFO    ] time= 25/08/2026 06:18:36
[2026-08-25 06:18:36,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:18:36,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:18:37,074.074 INFO    ] No existing commands found in stream
[2026-08-25 06:18:42,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:18:42,110.110 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 06:18:44,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:18:44,891.891 INFO    ] Checking for system updates...
[2026-08-25 06:18:44,928.928 INFO    ] 200
[2026-08-25 06:18:44,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:44,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:18:44,993.993 INFO    ] No update needed
[2026-08-25 06:18:44,995.995 INFO    ] Checking for camera pi updates...
[2026-08-25 06:18:45,029.029 INFO    ] 200
[2026-08-25 06:18:45,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:45,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:18:45,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:18:45,125.125 INFO    ] No camera update needed
[2026-08-25 06:18:45,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:18:45,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:18:45,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:18:45,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:18:47,181.181 INFO    ] ================================================
[2026-08-25 06:18:47,196.196 INFO    ] Launching Daemon at Tue Aug 25 06:18:47 IST 2026
[2026-08-25 06:18:47,207.207 INFO    ] ================================================
[2026-08-25 06:18:47,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:18:47
[2026-08-25 06:18:48,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:18:48,755.755 INFO    ] Initializing speech engine...
[2026-08-25 06:18:48,761.761 INFO    ] 2026-08-25 06:18:48
[2026-08-25 06:18:49,022.022 INFO    ] 2026-08-25 06:18:49
[2026-08-25 06:18:49,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:18:49,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:18:49,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:18:49,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:18:49,481.481 INFO    ] time= 25/08/2026 06:18:49
[2026-08-25 06:18:49,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:18:49,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:18:49,694.694 INFO    ] No existing commands found in stream
[2026-08-25 06:18:54,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:18:54,728.728 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 06:18:56,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:18:56,254.254 INFO    ] Checking for system updates...
[2026-08-25 06:18:56,291.291 INFO    ] 200
[2026-08-25 06:18:56,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:56,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:18:56,349.349 INFO    ] No update needed
[2026-08-25 06:18:56,352.352 INFO    ] Checking for camera pi updates...
[2026-08-25 06:18:56,390.390 INFO    ] 200
[2026-08-25 06:18:56,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:18:56,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:18:56,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:18:56,492.492 INFO    ] No camera update needed
[2026-08-25 06:18:56,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:18:56,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:18:56,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:18:56,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:18:58,549.549 INFO    ] ================================================
[2026-08-25 06:18:58,565.565 INFO    ] Launching Daemon at Tue Aug 25 06:18:58 IST 2026
[2026-08-25 06:18:58,576.576 INFO    ] ================================================
[2026-08-25 06:18:59,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:18:59
[2026-08-25 06:18:59,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:19:00,018.018 INFO    ] Initializing speech engine...
[2026-08-25 06:19:00,026.026 INFO    ] 2026-08-25 06:19:00
[2026-08-25 06:19:00,271.271 INFO    ] 2026-08-25 06:19:00
[2026-08-25 06:19:00,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:19:00,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:19:00,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:19:00,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:19:00,727.727 INFO    ] time= 25/08/2026 06:19:00
[2026-08-25 06:19:00,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:19:00,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:19:00,944.944 INFO    ] No existing commands found in stream
[2026-08-25 06:19:05,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:19:05,970.970 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 06:19:08,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:19:08,653.653 INFO    ] Checking for system updates...
[2026-08-25 06:19:08,688.688 INFO    ] 200
[2026-08-25 06:19:08,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:08,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:19:08,748.748 INFO    ] No update needed
[2026-08-25 06:19:08,751.751 INFO    ] Checking for camera pi updates...
[2026-08-25 06:19:08,784.784 INFO    ] 200
[2026-08-25 06:19:08,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:08,830.830 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:19:08,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:19:08,976.976 INFO    ] No camera update needed
[2026-08-25 06:19:08,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:19:08,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:19:08,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:19:08,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:19:11,030.030 INFO    ] ================================================
[2026-08-25 06:19:11,045.045 INFO    ] Launching Daemon at Tue Aug 25 06:19:11 IST 2026
[2026-08-25 06:19:11,056.056 INFO    ] ================================================
[2026-08-25 06:19:11,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:19:11
[2026-08-25 06:19:12,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:19:12,535.535 INFO    ] Initializing speech engine...
[2026-08-25 06:19:12,550.550 INFO    ] 2026-08-25 06:19:12
[2026-08-25 06:19:12,828.828 INFO    ] 2026-08-25 06:19:12
[2026-08-25 06:19:12,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:19:13,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:19:13,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:19:13,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:19:13,318.318 INFO    ] time= 25/08/2026 06:19:13
[2026-08-25 06:19:13,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:19:13,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:19:13,504.504 INFO    ] No existing commands found in stream
[2026-08-25 06:19:18,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:19:18,539.539 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 06:19:19,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:19:19,750.750 INFO    ] Checking for system updates...
[2026-08-25 06:19:19,788.788 INFO    ] 200
[2026-08-25 06:19:19,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:19,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:19:19,852.852 INFO    ] No update needed
[2026-08-25 06:19:19,854.854 INFO    ] Checking for camera pi updates...
[2026-08-25 06:19:19,888.888 INFO    ] 200
[2026-08-25 06:19:19,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:19,930.930 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:19:19,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:19:19,986.986 INFO    ] No camera update needed
[2026-08-25 06:19:19,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:19:19,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:19:19,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:19:20,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:19:22,040.040 INFO    ] ================================================
[2026-08-25 06:19:22,055.055 INFO    ] Launching Daemon at Tue Aug 25 06:19:22 IST 2026
[2026-08-25 06:19:22,066.066 INFO    ] ================================================
[2026-08-25 06:19:22,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:19:22
[2026-08-25 06:19:23,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:19:23,486.486 INFO    ] Initializing speech engine...
[2026-08-25 06:19:23,491.491 INFO    ] 2026-08-25 06:19:23
[2026-08-25 06:19:23,749.749 INFO    ] 2026-08-25 06:19:23
[2026-08-25 06:19:23,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:19:24,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:19:24,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:19:24,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:19:24,239.239 INFO    ] time= 25/08/2026 06:19:24
[2026-08-25 06:19:24,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:19:24,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:19:24,448.448 INFO    ] No existing commands found in stream
[2026-08-25 06:19:29,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:19:29,473.473 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 06:19:32,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:19:32,669.669 INFO    ] Checking for system updates...
[2026-08-25 06:19:32,705.705 INFO    ] 200
[2026-08-25 06:19:32,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:32,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:19:32,766.766 INFO    ] No update needed
[2026-08-25 06:19:32,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 06:19:32,803.803 INFO    ] 200
[2026-08-25 06:19:32,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:32,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:19:32,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:19:32,911.911 INFO    ] No camera update needed
[2026-08-25 06:19:32,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:19:32,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:19:32,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:19:32,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:19:34,966.966 INFO    ] ================================================
[2026-08-25 06:19:34,980.980 INFO    ] Launching Daemon at Tue Aug 25 06:19:34 IST 2026
[2026-08-25 06:19:34,991.991 INFO    ] ================================================
[2026-08-25 06:19:35,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:19:35
[2026-08-25 06:19:36,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:19:36,389.389 INFO    ] Initializing speech engine...
[2026-08-25 06:19:36,401.401 INFO    ] 2026-08-25 06:19:36
[2026-08-25 06:19:36,668.668 INFO    ] 2026-08-25 06:19:36
[2026-08-25 06:19:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:19:36,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:19:36,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:19:37,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:19:37,043.043 INFO    ] time= 25/08/2026 06:19:37
[2026-08-25 06:19:37,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:19:37,095.095 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:19:37,218.218 INFO    ] No existing commands found in stream
[2026-08-25 06:19:42,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:19:42,246.246 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 06:19:46,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:19:46,670.670 INFO    ] Checking for system updates...
[2026-08-25 06:19:46,705.705 INFO    ] 200
[2026-08-25 06:19:46,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:46,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:19:46,762.762 INFO    ] No update needed
[2026-08-25 06:19:46,767.767 INFO    ] Checking for camera pi updates...
[2026-08-25 06:19:46,802.802 INFO    ] 200
[2026-08-25 06:19:46,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:19:46,845.845 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:19:46,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:19:46,896.896 INFO    ] No camera update needed
[2026-08-25 06:19:46,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:19:46,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:19:46,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:19:46,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:19:48,954.954 INFO    ] ================================================
[2026-08-25 06:19:48,969.969 INFO    ] Launching Daemon at Tue Aug 25 06:19:48 IST 2026
[2026-08-25 06:19:48,979.979 INFO    ] ================================================
[2026-08-25 06:19:49,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:19:49
[2026-08-25 06:19:50,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:19:50,506.506 INFO    ] Initializing speech engine...
[2026-08-25 06:19:50,519.519 INFO    ] 2026-08-25 06:19:50
[2026-08-25 06:19:50,823.823 INFO    ] 2026-08-25 06:19:50
[2026-08-25 06:19:50,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:19:51,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:19:51,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:19:51,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:19:51,330.330 INFO    ] time= 25/08/2026 06:19:51
[2026-08-25 06:19:51,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:19:51,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:19:51,485.485 INFO    ] No existing commands found in stream
[2026-08-25 06:19:56,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:19:56,500.500 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 06:20:00,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:20:00,255.255 INFO    ] Checking for system updates...
[2026-08-25 06:20:00,291.291 INFO    ] 200
[2026-08-25 06:20:00,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:00,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:20:00,355.355 INFO    ] No update needed
[2026-08-25 06:20:00,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 06:20:00,391.391 INFO    ] 200
[2026-08-25 06:20:00,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:00,433.433 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:20:00,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:20:00,485.485 INFO    ] No camera update needed
[2026-08-25 06:20:00,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:20:00,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:20:00,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:20:00,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:20:02,561.561 INFO    ] ================================================
[2026-08-25 06:20:02,587.587 INFO    ] Launching Daemon at Tue Aug 25 06:20:02 IST 2026
[2026-08-25 06:20:02,603.603 INFO    ] ================================================
[2026-08-25 06:20:03,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:20:03
[2026-08-25 06:20:03,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:20:04,141.141 INFO    ] Initializing speech engine...
[2026-08-25 06:20:04,148.148 INFO    ] 2026-08-25 06:20:04
[2026-08-25 06:20:04,437.437 INFO    ] 2026-08-25 06:20:04
[2026-08-25 06:20:04,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:20:04,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:20:04,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:20:04,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:20:04,807.807 INFO    ] time= 25/08/2026 06:20:04
[2026-08-25 06:20:04,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:20:04,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:20:04,930.930 INFO    ] No existing commands found in stream
[2026-08-25 06:20:09,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:20:09,946.946 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 06:20:12,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:20:12,597.597 INFO    ] Checking for system updates...
[2026-08-25 06:20:12,636.636 INFO    ] 200
[2026-08-25 06:20:12,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:12,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:20:12,693.693 INFO    ] No update needed
[2026-08-25 06:20:12,695.695 INFO    ] Checking for camera pi updates...
[2026-08-25 06:20:12,728.728 INFO    ] 200
[2026-08-25 06:20:12,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:12,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:20:12,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:20:12,821.821 INFO    ] No camera update needed
[2026-08-25 06:20:12,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:20:12,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:20:12,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:20:12,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:20:14,876.876 INFO    ] ================================================
[2026-08-25 06:20:14,891.891 INFO    ] Launching Daemon at Tue Aug 25 06:20:14 IST 2026
[2026-08-25 06:20:14,901.901 INFO    ] ================================================
[2026-08-25 06:20:15,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:20:15
[2026-08-25 06:20:16,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:20:16,359.359 INFO    ] Initializing speech engine...
[2026-08-25 06:20:16,365.365 INFO    ] 2026-08-25 06:20:16
[2026-08-25 06:20:16,627.627 INFO    ] 2026-08-25 06:20:16
[2026-08-25 06:20:16,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:20:16,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:20:16,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:20:17,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:20:17,098.098 INFO    ] time= 25/08/2026 06:20:17
[2026-08-25 06:20:17,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:20:17,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:20:17,325.325 INFO    ] No existing commands found in stream
[2026-08-25 06:20:22,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:20:22,344.344 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 06:20:24,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:20:24,741.741 INFO    ] Checking for system updates...
[2026-08-25 06:20:24,776.776 INFO    ] 200
[2026-08-25 06:20:24,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:24,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:20:24,839.839 INFO    ] No update needed
[2026-08-25 06:20:24,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 06:20:24,877.877 INFO    ] 200
[2026-08-25 06:20:24,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:24,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:20:24,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:20:24,977.977 INFO    ] No camera update needed
[2026-08-25 06:20:24,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:20:24,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:20:24,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:20:24,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:20:27,034.034 INFO    ] ================================================
[2026-08-25 06:20:27,048.048 INFO    ] Launching Daemon at Tue Aug 25 06:20:27 IST 2026
[2026-08-25 06:20:27,059.059 INFO    ] ================================================
[2026-08-25 06:20:27,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:20:27
[2026-08-25 06:20:28,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:20:28,535.535 INFO    ] Initializing speech engine...
[2026-08-25 06:20:28,555.555 INFO    ] 2026-08-25 06:20:28
[2026-08-25 06:20:28,808.808 INFO    ] 2026-08-25 06:20:28
[2026-08-25 06:20:28,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:20:29,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:20:29,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:20:29,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:20:29,281.281 INFO    ] time= 25/08/2026 06:20:29
[2026-08-25 06:20:29,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:20:29,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:20:29,492.492 INFO    ] No existing commands found in stream
[2026-08-25 06:20:34,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:20:34,522.522 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 06:20:37,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:20:37,881.881 INFO    ] Checking for system updates...
[2026-08-25 06:20:37,917.917 INFO    ] 200
[2026-08-25 06:20:37,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:37,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:20:37,980.980 INFO    ] No update needed
[2026-08-25 06:20:37,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 06:20:38,018.018 INFO    ] 200
[2026-08-25 06:20:38,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:38,066.066 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:20:38,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:20:38,123.123 INFO    ] No camera update needed
[2026-08-25 06:20:38,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:20:38,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:20:38,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:20:38,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:20:40,178.178 INFO    ] ================================================
[2026-08-25 06:20:40,193.193 INFO    ] Launching Daemon at Tue Aug 25 06:20:40 IST 2026
[2026-08-25 06:20:40,204.204 INFO    ] ================================================
[2026-08-25 06:20:40,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:20:40
[2026-08-25 06:20:41,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:20:41,651.651 INFO    ] Initializing speech engine...
[2026-08-25 06:20:41,661.661 INFO    ] 2026-08-25 06:20:41
[2026-08-25 06:20:41,923.923 INFO    ] 2026-08-25 06:20:41
[2026-08-25 06:20:41,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:20:42,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:20:42,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:20:42,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:20:42,290.290 INFO    ] time= 25/08/2026 06:20:42
[2026-08-25 06:20:42,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:20:42,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:20:42,476.476 INFO    ] No existing commands found in stream
[2026-08-25 06:20:47,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:20:47,500.500 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 06:20:50,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:20:50,127.127 INFO    ] Checking for system updates...
[2026-08-25 06:20:50,162.162 INFO    ] 200
[2026-08-25 06:20:50,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:50,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:20:50,219.219 INFO    ] No update needed
[2026-08-25 06:20:50,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 06:20:50,261.261 INFO    ] 200
[2026-08-25 06:20:50,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:20:50,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:20:50,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:20:50,356.356 INFO    ] No camera update needed
[2026-08-25 06:20:50,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:20:50,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:20:50,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:20:50,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:20:52,411.411 INFO    ] ================================================
[2026-08-25 06:20:52,426.426 INFO    ] Launching Daemon at Tue Aug 25 06:20:52 IST 2026
[2026-08-25 06:20:52,436.436 INFO    ] ================================================
[2026-08-25 06:20:53,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:20:53
[2026-08-25 06:20:53,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:20:53,921.921 INFO    ] Initializing speech engine...
[2026-08-25 06:20:53,933.933 INFO    ] 2026-08-25 06:20:53
[2026-08-25 06:20:54,204.204 INFO    ] 2026-08-25 06:20:54
[2026-08-25 06:20:54,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:20:54,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:20:54,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:20:54,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:20:54,696.696 INFO    ] time= 25/08/2026 06:20:54
[2026-08-25 06:20:54,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:20:54,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:20:54,906.906 INFO    ] No existing commands found in stream
[2026-08-25 06:20:59,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:20:59,935.935 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 06:21:04,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:21:04,217.217 INFO    ] Checking for system updates...
[2026-08-25 06:21:04,257.257 INFO    ] 200
[2026-08-25 06:21:04,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:04,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:21:04,317.317 INFO    ] No update needed
[2026-08-25 06:21:04,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 06:21:04,355.355 INFO    ] 200
[2026-08-25 06:21:04,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:04,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:21:04,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:21:04,452.452 INFO    ] No camera update needed
[2026-08-25 06:21:04,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:21:04,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:21:04,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:21:04,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:21:06,506.506 INFO    ] ================================================
[2026-08-25 06:21:06,521.521 INFO    ] Launching Daemon at Tue Aug 25 06:21:06 IST 2026
[2026-08-25 06:21:06,532.532 INFO    ] ================================================
[2026-08-25 06:21:07,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:21:07
[2026-08-25 06:21:07,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:21:08,137.137 INFO    ] Initializing speech engine...
[2026-08-25 06:21:08,150.150 INFO    ] 2026-08-25 06:21:08
[2026-08-25 06:21:08,430.430 INFO    ] 2026-08-25 06:21:08
[2026-08-25 06:21:08,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:21:08,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:21:08,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:21:08,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:21:08,910.910 INFO    ] time= 25/08/2026 06:21:08
[2026-08-25 06:21:08,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:21:08,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:21:09,135.135 INFO    ] No existing commands found in stream
[2026-08-25 06:21:14,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:21:14,152.152 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 06:21:18,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:21:18,163.163 INFO    ] Checking for system updates...
[2026-08-25 06:21:18,203.203 INFO    ] 200
[2026-08-25 06:21:18,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:18,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:21:18,269.269 INFO    ] No update needed
[2026-08-25 06:21:18,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 06:21:18,306.306 INFO    ] 200
[2026-08-25 06:21:18,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:18,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:21:18,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:21:18,498.498 INFO    ] No camera update needed
[2026-08-25 06:21:18,500.500 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:21:18,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:21:18,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:21:18,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:21:20,555.555 INFO    ] ================================================
[2026-08-25 06:21:20,570.570 INFO    ] Launching Daemon at Tue Aug 25 06:21:20 IST 2026
[2026-08-25 06:21:20,581.581 INFO    ] ================================================
[2026-08-25 06:21:21,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:21:21
[2026-08-25 06:21:21,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:21:22,172.172 INFO    ] Initializing speech engine...
[2026-08-25 06:21:22,180.180 INFO    ] 2026-08-25 06:21:22
[2026-08-25 06:21:22,456.456 INFO    ] 2026-08-25 06:21:22
[2026-08-25 06:21:22,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:21:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:21:22,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:21:22,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:21:22,953.953 INFO    ] time= 25/08/2026 06:21:22
[2026-08-25 06:21:23,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:21:23,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:21:23,164.164 INFO    ] No existing commands found in stream
[2026-08-25 06:21:28,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:21:28,189.189 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 06:21:29,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:21:29,974.974 INFO    ] Checking for system updates...
[2026-08-25 06:21:30,011.011 INFO    ] 200
[2026-08-25 06:21:30,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:30,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:21:30,070.070 INFO    ] No update needed
[2026-08-25 06:21:30,073.073 INFO    ] Checking for camera pi updates...
[2026-08-25 06:21:30,110.110 INFO    ] 200
[2026-08-25 06:21:30,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:30,154.154 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:21:30,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:21:30,208.208 INFO    ] No camera update needed
[2026-08-25 06:21:30,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:21:30,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:21:30,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:21:30,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:21:32,267.267 INFO    ] ================================================
[2026-08-25 06:21:32,284.284 INFO    ] Launching Daemon at Tue Aug 25 06:21:32 IST 2026
[2026-08-25 06:21:32,296.296 INFO    ] ================================================
[2026-08-25 06:21:32,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:21:32
[2026-08-25 06:21:33,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:21:33,791.791 INFO    ] Initializing speech engine...
[2026-08-25 06:21:33,801.801 INFO    ] 2026-08-25 06:21:33
[2026-08-25 06:21:34,063.063 INFO    ] 2026-08-25 06:21:34
[2026-08-25 06:21:34,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:21:34,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:21:34,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:21:34,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:21:34,544.544 INFO    ] time= 25/08/2026 06:21:34
[2026-08-25 06:21:34,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:21:34,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:21:34,759.759 INFO    ] No existing commands found in stream
[2026-08-25 06:21:39,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:21:39,779.779 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 06:21:44,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:21:44,128.128 INFO    ] Checking for system updates...
[2026-08-25 06:21:44,163.163 INFO    ] 200
[2026-08-25 06:21:44,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:44,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:21:44,221.221 INFO    ] No update needed
[2026-08-25 06:21:44,223.223 INFO    ] Checking for camera pi updates...
[2026-08-25 06:21:44,258.258 INFO    ] 200
[2026-08-25 06:21:44,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:44,301.301 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:21:44,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:21:44,354.354 INFO    ] No camera update needed
[2026-08-25 06:21:44,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:21:44,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:21:44,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:21:44,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:21:46,411.411 INFO    ] ================================================
[2026-08-25 06:21:46,426.426 INFO    ] Launching Daemon at Tue Aug 25 06:21:46 IST 2026
[2026-08-25 06:21:46,437.437 INFO    ] ================================================
[2026-08-25 06:21:47,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:21:47
[2026-08-25 06:21:47,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:21:47,994.994 INFO    ] Initializing speech engine...
[2026-08-25 06:21:48,008.008 INFO    ] 2026-08-25 06:21:47
[2026-08-25 06:21:48,274.274 INFO    ] 2026-08-25 06:21:48
[2026-08-25 06:21:48,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:21:48,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:21:48,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:21:48,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:21:48,774.774 INFO    ] time= 25/08/2026 06:21:48
[2026-08-25 06:21:48,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:21:48,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:21:48,990.990 INFO    ] No existing commands found in stream
[2026-08-25 06:21:54,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:21:54,013.013 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 06:21:55,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:21:55,481.481 INFO    ] Checking for system updates...
[2026-08-25 06:21:55,519.519 INFO    ] 200
[2026-08-25 06:21:55,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:55,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:21:55,582.582 INFO    ] No update needed
[2026-08-25 06:21:55,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 06:21:55,619.619 INFO    ] 200
[2026-08-25 06:21:55,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:21:55,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:21:55,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:21:55,720.720 INFO    ] No camera update needed
[2026-08-25 06:21:55,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:21:55,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:21:55,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:21:55,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:21:57,775.775 INFO    ] ================================================
[2026-08-25 06:21:57,790.790 INFO    ] Launching Daemon at Tue Aug 25 06:21:57 IST 2026
[2026-08-25 06:21:57,801.801 INFO    ] ================================================
[2026-08-25 06:21:58,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:21:58
[2026-08-25 06:21:58,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:21:59,243.243 INFO    ] Initializing speech engine...
[2026-08-25 06:21:59,257.257 INFO    ] 2026-08-25 06:21:59
[2026-08-25 06:21:59,531.531 INFO    ] 2026-08-25 06:21:59
[2026-08-25 06:21:59,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:21:59,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:21:59,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:21:59,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:22:00,027.027 INFO    ] time= 25/08/2026 06:21:59
[2026-08-25 06:22:00,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:22:00,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:22:00,206.206 INFO    ] No existing commands found in stream
[2026-08-25 06:22:05,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:22:05,231.231 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 06:22:09,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:22:09,478.478 INFO    ] Checking for system updates...
[2026-08-25 06:22:09,517.517 INFO    ] 200
[2026-08-25 06:22:09,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:09,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:09,575.575 INFO    ] No update needed
[2026-08-25 06:22:09,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 06:22:09,615.615 INFO    ] 200
[2026-08-25 06:22:09,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:09,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:22:09,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:09,717.717 INFO    ] No camera update needed
[2026-08-25 06:22:09,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:22:09,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:22:09,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:22:09,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:22:11,771.771 INFO    ] ================================================
[2026-08-25 06:22:11,786.786 INFO    ] Launching Daemon at Tue Aug 25 06:22:11 IST 2026
[2026-08-25 06:22:11,797.797 INFO    ] ================================================
[2026-08-25 06:22:12,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:22:12
[2026-08-25 06:22:13,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:22:13,338.338 INFO    ] Initializing speech engine...
[2026-08-25 06:22:13,357.357 INFO    ] 2026-08-25 06:22:13
[2026-08-25 06:22:13,604.604 INFO    ] 2026-08-25 06:22:13
[2026-08-25 06:22:13,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:22:13,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:22:13,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:22:14,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:22:14,038.038 INFO    ] time= 25/08/2026 06:22:14
[2026-08-25 06:22:14,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:22:14,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:22:14,224.224 INFO    ] No existing commands found in stream
[2026-08-25 06:22:19,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:22:19,239.239 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 06:22:20,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:22:20,121.121 INFO    ] Checking for system updates...
[2026-08-25 06:22:20,157.157 INFO    ] 200
[2026-08-25 06:22:20,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:20,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:22:20,213.213 INFO    ] No update needed
[2026-08-25 06:22:20,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 06:22:20,249.249 INFO    ] 200
[2026-08-25 06:22:20,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:20,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:22:20,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:22:20,347.347 INFO    ] No camera update needed
[2026-08-25 06:22:20,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:22:20,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:22:20,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:22:20,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:22:22,401.401 INFO    ] ================================================
[2026-08-25 06:22:22,416.416 INFO    ] Launching Daemon at Tue Aug 25 06:22:22 IST 2026
[2026-08-25 06:22:22,426.426 INFO    ] ================================================
[2026-08-25 06:22:23,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:22:23
[2026-08-25 06:22:23,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:22:23,880.880 INFO    ] Initializing speech engine...
[2026-08-25 06:22:23,906.906 INFO    ] 2026-08-25 06:22:23
[2026-08-25 06:22:24,180.180 INFO    ] 2026-08-25 06:22:24
[2026-08-25 06:22:24,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:22:24,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:22:24,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:22:24,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:22:24,553.553 INFO    ] time= 25/08/2026 06:22:24
[2026-08-25 06:22:24,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:22:24,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:22:24,675.675 INFO    ] No existing commands found in stream
[2026-08-25 06:22:29,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:22:29,691.691 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 06:22:32,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:22:32,973.973 INFO    ] Checking for system updates...
[2026-08-25 06:22:33,012.012 INFO    ] 200
[2026-08-25 06:22:33,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:33,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:33,080.080 INFO    ] No update needed
[2026-08-25 06:22:33,082.082 INFO    ] Checking for camera pi updates...
[2026-08-25 06:22:33,116.116 INFO    ] 200
[2026-08-25 06:22:33,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:33,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:22:33,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:33,214.214 INFO    ] No camera update needed
[2026-08-25 06:22:33,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:22:33,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:22:33,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:22:33,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:22:35,271.271 INFO    ] ================================================
[2026-08-25 06:22:35,286.286 INFO    ] Launching Daemon at Tue Aug 25 06:22:35 IST 2026
[2026-08-25 06:22:35,303.303 INFO    ] ================================================
[2026-08-25 06:22:35,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:22:35
[2026-08-25 06:22:36,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:22:36,757.757 INFO    ] Initializing speech engine...
[2026-08-25 06:22:36,767.767 INFO    ] 2026-08-25 06:22:36
[2026-08-25 06:22:37,011.011 INFO    ] 2026-08-25 06:22:37
[2026-08-25 06:22:37,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:22:37,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:22:37,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:22:37,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:22:37,377.377 INFO    ] time= 25/08/2026 06:22:37
[2026-08-25 06:22:37,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:22:37,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:22:37,563.563 INFO    ] No existing commands found in stream
[2026-08-25 06:22:42,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:22:42,585.585 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 06:22:43,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:22:43,729.729 INFO    ] Checking for system updates...
[2026-08-25 06:22:43,764.764 INFO    ] 200
[2026-08-25 06:22:43,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:43,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:43,828.828 INFO    ] No update needed
[2026-08-25 06:22:43,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 06:22:43,867.867 INFO    ] 200
[2026-08-25 06:22:43,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:43,915.915 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:22:43,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:43,967.967 INFO    ] No camera update needed
[2026-08-25 06:22:43,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:22:43,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:22:43,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:22:43,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:22:46,028.028 INFO    ] ================================================
[2026-08-25 06:22:46,048.048 INFO    ] Launching Daemon at Tue Aug 25 06:22:46 IST 2026
[2026-08-25 06:22:46,059.059 INFO    ] ================================================
[2026-08-25 06:22:46,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:22:46
[2026-08-25 06:22:47,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:22:47,648.648 INFO    ] Initializing speech engine...
[2026-08-25 06:22:47,662.662 INFO    ] 2026-08-25 06:22:47
[2026-08-25 06:22:47,930.930 INFO    ] 2026-08-25 06:22:47
[2026-08-25 06:22:47,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:22:48,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:22:48,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:22:48,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:22:48,426.426 INFO    ] time= 25/08/2026 06:22:48
[2026-08-25 06:22:48,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:22:48,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:22:48,633.633 INFO    ] No existing commands found in stream
[2026-08-25 06:22:53,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:22:53,659.659 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 06:22:55,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:22:55,018.018 INFO    ] Checking for system updates...
[2026-08-25 06:22:55,054.054 INFO    ] 200
[2026-08-25 06:22:55,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:55,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:55,112.112 INFO    ] No update needed
[2026-08-25 06:22:55,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 06:22:55,149.149 INFO    ] 200
[2026-08-25 06:22:55,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:22:55,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:22:55,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:22:55,248.248 INFO    ] No camera update needed
[2026-08-25 06:22:55,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:22:55,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:22:55,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:22:55,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:22:57,306.306 INFO    ] ================================================
[2026-08-25 06:22:57,321.321 INFO    ] Launching Daemon at Tue Aug 25 06:22:57 IST 2026
[2026-08-25 06:22:57,332.332 INFO    ] ================================================
[2026-08-25 06:22:57,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:22:57
[2026-08-25 06:22:58,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:22:58,946.946 INFO    ] Initializing speech engine...
[2026-08-25 06:22:58,960.960 INFO    ] 2026-08-25 06:22:58
[2026-08-25 06:22:59,241.241 INFO    ] 2026-08-25 06:22:59
[2026-08-25 06:22:59,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:22:59,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:22:59,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:22:59,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:22:59,732.732 INFO    ] time= 25/08/2026 06:22:59
[2026-08-25 06:22:59,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:22:59,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:22:59,927.927 INFO    ] No existing commands found in stream
[2026-08-25 06:23:04,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:23:04,958.958 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 06:23:08,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:23:08,186.186 INFO    ] Checking for system updates...
[2026-08-25 06:23:08,222.222 INFO    ] 200
[2026-08-25 06:23:08,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:08,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:23:08,282.282 INFO    ] No update needed
[2026-08-25 06:23:08,285.285 INFO    ] Checking for camera pi updates...
[2026-08-25 06:23:08,319.319 INFO    ] 200
[2026-08-25 06:23:08,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:08,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:23:08,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:23:08,422.422 INFO    ] No camera update needed
[2026-08-25 06:23:08,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:23:08,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:23:08,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:23:08,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:23:10,478.478 INFO    ] ================================================
[2026-08-25 06:23:10,493.493 INFO    ] Launching Daemon at Tue Aug 25 06:23:10 IST 2026
[2026-08-25 06:23:10,504.504 INFO    ] ================================================
[2026-08-25 06:23:11,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:23:11
[2026-08-25 06:23:11,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:23:11,943.943 INFO    ] Initializing speech engine...
[2026-08-25 06:23:11,963.963 INFO    ] 2026-08-25 06:23:11
[2026-08-25 06:23:12,226.226 INFO    ] 2026-08-25 06:23:12
[2026-08-25 06:23:12,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:23:12,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:23:12,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:23:12,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:23:12,639.639 INFO    ] time= 25/08/2026 06:23:12
[2026-08-25 06:23:12,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:23:12,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:23:12,724.724 INFO    ] No existing commands found in stream
[2026-08-25 06:23:17,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:23:17,747.747 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 06:23:20,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:23:20,155.155 INFO    ] Checking for system updates...
[2026-08-25 06:23:20,190.190 INFO    ] 200
[2026-08-25 06:23:20,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:20,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:23:20,253.253 INFO    ] No update needed
[2026-08-25 06:23:20,255.255 INFO    ] Checking for camera pi updates...
[2026-08-25 06:23:20,291.291 INFO    ] 200
[2026-08-25 06:23:20,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:20,334.334 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:23:20,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:23:20,383.383 INFO    ] No camera update needed
[2026-08-25 06:23:20,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:23:20,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:23:20,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:23:20,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:23:22,438.438 INFO    ] ================================================
[2026-08-25 06:23:22,452.452 INFO    ] Launching Daemon at Tue Aug 25 06:23:22 IST 2026
[2026-08-25 06:23:22,463.463 INFO    ] ================================================
[2026-08-25 06:23:23,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:23:23
[2026-08-25 06:23:23,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:23:23,897.897 INFO    ] Initializing speech engine...
[2026-08-25 06:23:23,917.917 INFO    ] 2026-08-25 06:23:23
[2026-08-25 06:23:24,183.183 INFO    ] 2026-08-25 06:23:24
[2026-08-25 06:23:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:23:24,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:23:24,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:23:24,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:23:24,556.556 INFO    ] time= 25/08/2026 06:23:24
[2026-08-25 06:23:24,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:23:24,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:23:24,680.680 INFO    ] No existing commands found in stream
[2026-08-25 06:23:29,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:23:29,695.695 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 06:23:30,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:23:30,485.485 INFO    ] Checking for system updates...
[2026-08-25 06:23:30,521.521 INFO    ] 200
[2026-08-25 06:23:30,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:30,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:23:30,579.579 INFO    ] No update needed
[2026-08-25 06:23:30,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 06:23:30,616.616 INFO    ] 200
[2026-08-25 06:23:30,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:30,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:23:30,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:23:30,813.813 INFO    ] No camera update needed
[2026-08-25 06:23:30,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:23:30,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:23:30,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:23:30,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:23:32,870.870 INFO    ] ================================================
[2026-08-25 06:23:32,885.885 INFO    ] Launching Daemon at Tue Aug 25 06:23:32 IST 2026
[2026-08-25 06:23:32,895.895 INFO    ] ================================================
[2026-08-25 06:23:33,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:23:33
[2026-08-25 06:23:34,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:23:34,314.314 INFO    ] Initializing speech engine...
[2026-08-25 06:23:34,320.320 INFO    ] 2026-08-25 06:23:34
[2026-08-25 06:23:34,612.612 INFO    ] 2026-08-25 06:23:34
[2026-08-25 06:23:34,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:23:34,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:23:34,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:23:35,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:23:35,025.025 INFO    ] time= 25/08/2026 06:23:35
[2026-08-25 06:23:35,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:23:35,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:23:35,149.149 INFO    ] No existing commands found in stream
[2026-08-25 06:23:40,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:23:40,177.177 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 06:23:44,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:23:44,222.222 INFO    ] Checking for system updates...
[2026-08-25 06:23:44,258.258 INFO    ] 200
[2026-08-25 06:23:44,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:44,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:23:44,314.314 INFO    ] No update needed
[2026-08-25 06:23:44,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 06:23:44,350.350 INFO    ] 200
[2026-08-25 06:23:44,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:44,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:23:44,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:23:44,445.445 INFO    ] No camera update needed
[2026-08-25 06:23:44,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:23:44,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:23:44,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:23:44,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:23:46,498.498 INFO    ] ================================================
[2026-08-25 06:23:46,513.513 INFO    ] Launching Daemon at Tue Aug 25 06:23:46 IST 2026
[2026-08-25 06:23:46,523.523 INFO    ] ================================================
[2026-08-25 06:23:47,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:23:47
[2026-08-25 06:23:47,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:23:47,953.953 INFO    ] Initializing speech engine...
[2026-08-25 06:23:47,963.963 INFO    ] 2026-08-25 06:23:47
[2026-08-25 06:23:48,208.208 INFO    ] 2026-08-25 06:23:48
[2026-08-25 06:23:48,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:23:48,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:23:48,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:23:48,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:23:48,666.666 INFO    ] time= 25/08/2026 06:23:48
[2026-08-25 06:23:48,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:23:48,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:23:48,912.912 INFO    ] No existing commands found in stream
[2026-08-25 06:23:53,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:23:53,930.930 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 06:23:56,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:23:56,623.623 INFO    ] Checking for system updates...
[2026-08-25 06:23:56,661.661 INFO    ] 200
[2026-08-25 06:23:56,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:56,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:23:56,725.725 INFO    ] No update needed
[2026-08-25 06:23:56,728.728 INFO    ] Checking for camera pi updates...
[2026-08-25 06:23:56,761.761 INFO    ] 200
[2026-08-25 06:23:56,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:23:56,803.803 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:23:56,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:23:56,852.852 INFO    ] No camera update needed
[2026-08-25 06:23:56,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:23:56,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:23:56,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:23:56,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:23:58,906.906 INFO    ] ================================================
[2026-08-25 06:23:58,921.921 INFO    ] Launching Daemon at Tue Aug 25 06:23:58 IST 2026
[2026-08-25 06:23:58,932.932 INFO    ] ================================================
[2026-08-25 06:23:59,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:23:59
[2026-08-25 06:24:00,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:24:00,537.537 INFO    ] Initializing speech engine...
[2026-08-25 06:24:00,547.547 INFO    ] 2026-08-25 06:24:00
[2026-08-25 06:24:00,817.817 INFO    ] 2026-08-25 06:24:00
[2026-08-25 06:24:00,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:24:01,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:24:01,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:24:01,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:24:01,307.307 INFO    ] time= 25/08/2026 06:24:01
[2026-08-25 06:24:01,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:24:01,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:24:01,489.489 INFO    ] No existing commands found in stream
[2026-08-25 06:24:06,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:24:06,501.501 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 06:24:08,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:24:08,241.241 INFO    ] Checking for system updates...
[2026-08-25 06:24:08,276.276 INFO    ] 200
[2026-08-25 06:24:08,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:08,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:24:08,333.333 INFO    ] No update needed
[2026-08-25 06:24:08,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 06:24:08,369.369 INFO    ] 200
[2026-08-25 06:24:08,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:08,411.411 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:24:08,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:24:08,466.466 INFO    ] No camera update needed
[2026-08-25 06:24:08,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:24:08,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:24:08,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:24:08,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:24:10,520.520 INFO    ] ================================================
[2026-08-25 06:24:10,535.535 INFO    ] Launching Daemon at Tue Aug 25 06:24:10 IST 2026
[2026-08-25 06:24:10,545.545 INFO    ] ================================================
[2026-08-25 06:24:11,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:24:11
[2026-08-25 06:24:11,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:24:11,993.993 INFO    ] Initializing speech engine...
[2026-08-25 06:24:12,000.000 INFO    ] 2026-08-25 06:24:11
[2026-08-25 06:24:12,259.259 INFO    ] 2026-08-25 06:24:12
[2026-08-25 06:24:12,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:24:12,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:24:12,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:24:12,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:24:12,723.723 INFO    ] time= 25/08/2026 06:24:12
[2026-08-25 06:24:12,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:24:12,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:24:12,956.956 INFO    ] No existing commands found in stream
[2026-08-25 06:24:17,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:24:17,974.974 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 06:24:20,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:24:20,610.610 INFO    ] Checking for system updates...
[2026-08-25 06:24:20,664.664 INFO    ] 200
[2026-08-25 06:24:20,667.667 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:20,669.669 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 06:24:20,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 06:24:20,715.715 INFO    ] 200
[2026-08-25 06:24:20,718.718 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:20,720.720 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 06:24:20,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:24:20,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:24:20,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:24:20,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:24:22,777.777 INFO    ] ================================================
[2026-08-25 06:24:22,794.794 INFO    ] Launching Daemon at Tue Aug 25 06:24:22 IST 2026
[2026-08-25 06:24:22,806.806 INFO    ] ================================================
[2026-08-25 06:24:23,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:24:23
[2026-08-25 06:24:23,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:24:24,220.220 INFO    ] Initializing speech engine...
[2026-08-25 06:24:24,229.229 INFO    ] 2026-08-25 06:24:24
[2026-08-25 06:24:24,487.487 INFO    ] 2026-08-25 06:24:24
[2026-08-25 06:24:24,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:24:24,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:24:24,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:24:24,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:24:24,862.862 INFO    ] time= 25/08/2026 06:24:24
[2026-08-25 06:24:24,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:24:24,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:24:25,036.036 INFO    ] No existing commands found in stream
[2026-08-25 06:24:30,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:24:30,070.070 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 06:24:30,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:24:30,849.849 INFO    ] Checking for system updates...
[2026-08-25 06:24:30,885.885 INFO    ] 200
[2026-08-25 06:24:30,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:30,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:24:30,941.941 INFO    ] No update needed
[2026-08-25 06:24:30,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 06:24:30,976.976 INFO    ] 200
[2026-08-25 06:24:30,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:31,020.020 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:24:31,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:24:31,082.082 INFO    ] No camera update needed
[2026-08-25 06:24:31,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:24:31,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:24:31,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:24:31,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:24:33,138.138 INFO    ] ================================================
[2026-08-25 06:24:33,153.153 INFO    ] Launching Daemon at Tue Aug 25 06:24:33 IST 2026
[2026-08-25 06:24:33,163.163 INFO    ] ================================================
[2026-08-25 06:24:33,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:24:33
[2026-08-25 06:24:34,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:24:34,623.623 INFO    ] Initializing speech engine...
[2026-08-25 06:24:34,629.629 INFO    ] 2026-08-25 06:24:34
[2026-08-25 06:24:34,890.890 INFO    ] 2026-08-25 06:24:34
[2026-08-25 06:24:34,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:24:35,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:24:35,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:24:35,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:24:35,358.358 INFO    ] time= 25/08/2026 06:24:35
[2026-08-25 06:24:35,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:24:35,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:24:35,570.570 INFO    ] No existing commands found in stream
[2026-08-25 06:24:40,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:24:40,601.601 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 06:24:41,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:24:41,565.565 INFO    ] Checking for system updates...
[2026-08-25 06:24:41,602.602 INFO    ] 200
[2026-08-25 06:24:41,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:41,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:24:41,670.670 INFO    ] No update needed
[2026-08-25 06:24:41,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 06:24:41,707.707 INFO    ] 200
[2026-08-25 06:24:41,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:41,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:24:41,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:24:41,813.813 INFO    ] No camera update needed
[2026-08-25 06:24:41,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:24:41,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:24:41,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:24:41,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:24:43,872.872 INFO    ] ================================================
[2026-08-25 06:24:43,888.888 INFO    ] Launching Daemon at Tue Aug 25 06:24:43 IST 2026
[2026-08-25 06:24:43,899.899 INFO    ] ================================================
[2026-08-25 06:24:44,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:24:44
[2026-08-25 06:24:45,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:24:45,318.318 INFO    ] Initializing speech engine...
[2026-08-25 06:24:45,337.337 INFO    ] 2026-08-25 06:24:45
[2026-08-25 06:24:45,588.588 INFO    ] 2026-08-25 06:24:45
[2026-08-25 06:24:45,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:24:45,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:24:45,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:24:46,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:24:46,052.052 INFO    ] time= 25/08/2026 06:24:46
[2026-08-25 06:24:46,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:24:46,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:24:46,276.276 INFO    ] No existing commands found in stream
[2026-08-25 06:24:51,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:24:51,300.300 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 06:24:52,027.027 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:24:52,029.029 INFO    ] Checking for system updates...
[2026-08-25 06:24:52,066.066 INFO    ] 200
[2026-08-25 06:24:52,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:52,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:24:52,123.123 INFO    ] No update needed
[2026-08-25 06:24:52,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 06:24:52,163.163 INFO    ] 200
[2026-08-25 06:24:52,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:24:52,211.211 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:24:52,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:24:52,276.276 INFO    ] No camera update needed
[2026-08-25 06:24:52,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:24:52,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:24:52,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:24:52,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:24:54,331.331 INFO    ] ================================================
[2026-08-25 06:24:54,346.346 INFO    ] Launching Daemon at Tue Aug 25 06:24:54 IST 2026
[2026-08-25 06:24:54,357.357 INFO    ] ================================================
[2026-08-25 06:24:54,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:24:54
[2026-08-25 06:24:55,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:24:55,787.787 INFO    ] Initializing speech engine...
[2026-08-25 06:24:55,801.801 INFO    ] 2026-08-25 06:24:55
[2026-08-25 06:24:56,083.083 INFO    ] 2026-08-25 06:24:56
[2026-08-25 06:24:56,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:24:56,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:24:56,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:24:56,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:24:56,462.462 INFO    ] time= 25/08/2026 06:24:56
[2026-08-25 06:24:56,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:24:56,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:24:56,634.634 INFO    ] No existing commands found in stream
[2026-08-25 06:25:01,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:25:01,667.667 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 06:25:05,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:25:05,368.368 INFO    ] Checking for system updates...
[2026-08-25 06:25:05,404.404 INFO    ] 200
[2026-08-25 06:25:05,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:05,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:25:05,477.477 INFO    ] No update needed
[2026-08-25 06:25:05,479.479 INFO    ] Checking for camera pi updates...
[2026-08-25 06:25:05,512.512 INFO    ] 200
[2026-08-25 06:25:05,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:05,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:25:05,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:25:05,612.612 INFO    ] No camera update needed
[2026-08-25 06:25:05,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:25:05,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:25:05,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:25:05,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:25:07,667.667 INFO    ] ================================================
[2026-08-25 06:25:07,685.685 INFO    ] Launching Daemon at Tue Aug 25 06:25:07 IST 2026
[2026-08-25 06:25:07,696.696 INFO    ] ================================================
[2026-08-25 06:25:08,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:25:08
[2026-08-25 06:25:08,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:25:09,236.236 INFO    ] Initializing speech engine...
[2026-08-25 06:25:09,245.245 INFO    ] 2026-08-25 06:25:09
[2026-08-25 06:25:09,527.527 INFO    ] 2026-08-25 06:25:09
[2026-08-25 06:25:09,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:25:09,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:25:09,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:25:09,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:25:09,982.982 INFO    ] time= 25/08/2026 06:25:09
[2026-08-25 06:25:10,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:25:10,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:25:10,203.203 INFO    ] No existing commands found in stream
[2026-08-25 06:25:15,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:25:15,231.231 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 06:25:18,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:25:18,388.388 INFO    ] Checking for system updates...
[2026-08-25 06:25:18,429.429 INFO    ] 200
[2026-08-25 06:25:18,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:18,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:25:18,491.491 INFO    ] No update needed
[2026-08-25 06:25:18,494.494 INFO    ] Checking for camera pi updates...
[2026-08-25 06:25:18,528.528 INFO    ] 200
[2026-08-25 06:25:18,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:18,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:25:18,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:25:18,623.623 INFO    ] No camera update needed
[2026-08-25 06:25:18,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:25:18,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:25:18,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:25:18,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:25:20,677.677 INFO    ] ================================================
[2026-08-25 06:25:20,692.692 INFO    ] Launching Daemon at Tue Aug 25 06:25:20 IST 2026
[2026-08-25 06:25:20,702.702 INFO    ] ================================================
[2026-08-25 06:25:21,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:25:21
[2026-08-25 06:25:21,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:25:22,155.155 INFO    ] Initializing speech engine...
[2026-08-25 06:25:22,161.161 INFO    ] 2026-08-25 06:25:22
[2026-08-25 06:25:22,408.408 INFO    ] 2026-08-25 06:25:22
[2026-08-25 06:25:22,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:25:22,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:25:22,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:25:22,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:25:22,882.882 INFO    ] time= 25/08/2026 06:25:22
[2026-08-25 06:25:22,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:25:22,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:25:23,099.099 INFO    ] No existing commands found in stream
[2026-08-25 06:25:28,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:25:28,125.125 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 06:25:31,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:25:31,010.010 INFO    ] Checking for system updates...
[2026-08-25 06:25:31,049.049 INFO    ] 200
[2026-08-25 06:25:31,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:31,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:25:31,112.112 INFO    ] No update needed
[2026-08-25 06:25:31,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 06:25:31,152.152 INFO    ] 200
[2026-08-25 06:25:31,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:31,194.194 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:25:31,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:25:31,246.246 INFO    ] No camera update needed
[2026-08-25 06:25:31,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:25:31,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:25:31,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:25:31,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:25:33,301.301 INFO    ] ================================================
[2026-08-25 06:25:33,316.316 INFO    ] Launching Daemon at Tue Aug 25 06:25:33 IST 2026
[2026-08-25 06:25:33,326.326 INFO    ] ================================================
[2026-08-25 06:25:33,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:25:33
[2026-08-25 06:25:34,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:25:34,820.820 INFO    ] Initializing speech engine...
[2026-08-25 06:25:34,832.832 INFO    ] 2026-08-25 06:25:34
[2026-08-25 06:25:35,113.113 INFO    ] 2026-08-25 06:25:35
[2026-08-25 06:25:35,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:25:35,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:25:35,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:25:35,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:25:35,596.596 INFO    ] time= 25/08/2026 06:25:35
[2026-08-25 06:25:35,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:25:35,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:25:35,788.788 INFO    ] No existing commands found in stream
[2026-08-25 06:25:40,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:25:40,817.817 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 06:25:42,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:25:42,852.852 INFO    ] Checking for system updates...
[2026-08-25 06:25:42,889.889 INFO    ] 200
[2026-08-25 06:25:42,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:42,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:25:42,948.948 INFO    ] No update needed
[2026-08-25 06:25:42,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 06:25:42,990.990 INFO    ] 200
[2026-08-25 06:25:42,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:43,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:25:43,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:25:43,083.083 INFO    ] No camera update needed
[2026-08-25 06:25:43,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:25:43,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:25:43,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:25:43,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:25:45,138.138 INFO    ] ================================================
[2026-08-25 06:25:45,152.152 INFO    ] Launching Daemon at Tue Aug 25 06:25:45 IST 2026
[2026-08-25 06:25:45,163.163 INFO    ] ================================================
[2026-08-25 06:25:45,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:25:45
[2026-08-25 06:25:46,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:25:46,581.581 INFO    ] Initializing speech engine...
[2026-08-25 06:25:46,590.590 INFO    ] 2026-08-25 06:25:46
[2026-08-25 06:25:46,836.836 INFO    ] 2026-08-25 06:25:46
[2026-08-25 06:25:46,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:25:47,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:25:47,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:25:47,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:25:47,305.305 INFO    ] time= 25/08/2026 06:25:47
[2026-08-25 06:25:47,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:25:47,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:25:47,546.546 INFO    ] No existing commands found in stream
[2026-08-25 06:25:52,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:25:52,568.568 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 06:25:56,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:25:56,826.826 INFO    ] Checking for system updates...
[2026-08-25 06:25:56,862.862 INFO    ] 200
[2026-08-25 06:25:56,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:56,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:25:56,922.922 INFO    ] No update needed
[2026-08-25 06:25:56,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 06:25:56,961.961 INFO    ] 200
[2026-08-25 06:25:56,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:25:57,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:25:57,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:25:57,073.073 INFO    ] No camera update needed
[2026-08-25 06:25:57,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:25:57,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:25:57,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:25:57,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:25:59,132.132 INFO    ] ================================================
[2026-08-25 06:25:59,147.147 INFO    ] Launching Daemon at Tue Aug 25 06:25:59 IST 2026
[2026-08-25 06:25:59,158.158 INFO    ] ================================================
[2026-08-25 06:25:59,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:25:59
[2026-08-25 06:26:00,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:26:00,796.796 INFO    ] Initializing speech engine...
[2026-08-25 06:26:00,809.809 INFO    ] 2026-08-25 06:26:00
[2026-08-25 06:26:01,087.087 INFO    ] 2026-08-25 06:26:01
[2026-08-25 06:26:01,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:26:01,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:26:01,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:26:01,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:26:01,621.621 INFO    ] time= 25/08/2026 06:26:01
[2026-08-25 06:26:01,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:26:01,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:26:01,696.696 INFO    ] No existing commands found in stream
[2026-08-25 06:26:06,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:26:06,709.709 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 06:26:09,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:26:09,612.612 INFO    ] Checking for system updates...
[2026-08-25 06:26:09,652.652 INFO    ] 200
[2026-08-25 06:26:09,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:09,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:26:09,716.716 INFO    ] No update needed
[2026-08-25 06:26:09,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 06:26:09,752.752 INFO    ] 200
[2026-08-25 06:26:09,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:09,794.794 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:26:09,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:26:09,842.842 INFO    ] No camera update needed
[2026-08-25 06:26:09,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:26:09,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:26:09,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:26:09,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:26:11,897.897 INFO    ] ================================================
[2026-08-25 06:26:11,917.917 INFO    ] Launching Daemon at Tue Aug 25 06:26:11 IST 2026
[2026-08-25 06:26:11,928.928 INFO    ] ================================================
[2026-08-25 06:26:12,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:26:12
[2026-08-25 06:26:13,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:26:13,561.561 INFO    ] Initializing speech engine...
[2026-08-25 06:26:13,575.575 INFO    ] 2026-08-25 06:26:13
[2026-08-25 06:26:13,892.892 INFO    ] 2026-08-25 06:26:13
[2026-08-25 06:26:13,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:26:14,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:26:14,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:26:14,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:26:14,391.391 INFO    ] time= 25/08/2026 06:26:14
[2026-08-25 06:26:14,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:26:14,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:26:14,549.549 INFO    ] No existing commands found in stream
[2026-08-25 06:26:19,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:26:19,582.582 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 06:26:23,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:26:23,214.214 INFO    ] Checking for system updates...
[2026-08-25 06:26:23,249.249 INFO    ] 200
[2026-08-25 06:26:23,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:23,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:26:23,306.306 INFO    ] No update needed
[2026-08-25 06:26:23,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 06:26:23,341.341 INFO    ] 200
[2026-08-25 06:26:23,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:23,384.384 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:26:23,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:26:23,430.430 INFO    ] No camera update needed
[2026-08-25 06:26:23,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:26:23,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:26:23,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:26:23,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:26:25,485.485 INFO    ] ================================================
[2026-08-25 06:26:25,505.505 INFO    ] Launching Daemon at Tue Aug 25 06:26:25 IST 2026
[2026-08-25 06:26:25,517.517 INFO    ] ================================================
[2026-08-25 06:26:26,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:26:26
[2026-08-25 06:26:26,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:26:26,943.943 INFO    ] Initializing speech engine...
[2026-08-25 06:26:26,952.952 INFO    ] 2026-08-25 06:26:26
[2026-08-25 06:26:27,202.202 INFO    ] 2026-08-25 06:26:27
[2026-08-25 06:26:27,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:26:27,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:26:27,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:26:27,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:26:27,596.596 INFO    ] time= 25/08/2026 06:26:27
[2026-08-25 06:26:27,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:26:27,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:26:27,758.758 INFO    ] No existing commands found in stream
[2026-08-25 06:26:32,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:26:32,792.792 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 06:26:33,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:26:33,504.504 INFO    ] Checking for system updates...
[2026-08-25 06:26:33,543.543 INFO    ] 200
[2026-08-25 06:26:33,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:33,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:26:33,611.611 INFO    ] No update needed
[2026-08-25 06:26:33,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 06:26:33,650.650 INFO    ] 200
[2026-08-25 06:26:33,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:33,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:26:33,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:26:33,754.754 INFO    ] No camera update needed
[2026-08-25 06:26:33,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:26:33,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:26:33,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:26:33,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:26:35,821.821 INFO    ] ================================================
[2026-08-25 06:26:35,838.838 INFO    ] Launching Daemon at Tue Aug 25 06:26:35 IST 2026
[2026-08-25 06:26:35,849.849 INFO    ] ================================================
[2026-08-25 06:26:36,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:26:36
[2026-08-25 06:26:36,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:26:37,246.246 INFO    ] Initializing speech engine...
[2026-08-25 06:26:37,269.269 INFO    ] 2026-08-25 06:26:37
[2026-08-25 06:26:37,519.519 INFO    ] 2026-08-25 06:26:37
[2026-08-25 06:26:37,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:26:37,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:26:37,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:26:37,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:26:37,989.989 INFO    ] time= 25/08/2026 06:26:37
[2026-08-25 06:26:38,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:26:38,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:26:38,209.209 INFO    ] No existing commands found in stream
[2026-08-25 06:26:43,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:26:43,239.239 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 06:26:47,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:26:47,603.603 INFO    ] Checking for system updates...
[2026-08-25 06:26:47,642.642 INFO    ] 200
[2026-08-25 06:26:47,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:47,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:26:47,707.707 INFO    ] No update needed
[2026-08-25 06:26:47,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 06:26:47,746.746 INFO    ] 200
[2026-08-25 06:26:47,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:47,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:26:47,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:26:47,840.840 INFO    ] No camera update needed
[2026-08-25 06:26:47,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:26:47,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:26:47,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:26:47,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:26:49,894.894 INFO    ] ================================================
[2026-08-25 06:26:49,909.909 INFO    ] Launching Daemon at Tue Aug 25 06:26:49 IST 2026
[2026-08-25 06:26:49,920.920 INFO    ] ================================================
[2026-08-25 06:26:50,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:26:50
[2026-08-25 06:26:51,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:26:51,319.319 INFO    ] Initializing speech engine...
[2026-08-25 06:26:51,342.342 INFO    ] 2026-08-25 06:26:51
[2026-08-25 06:26:51,592.592 INFO    ] 2026-08-25 06:26:51
[2026-08-25 06:26:51,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:26:51,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:26:51,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:26:52,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:26:52,066.066 INFO    ] time= 25/08/2026 06:26:52
[2026-08-25 06:26:52,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:26:52,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:26:52,259.259 INFO    ] No existing commands found in stream
[2026-08-25 06:26:57,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:26:57,283.283 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 06:26:59,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:26:59,555.555 INFO    ] Checking for system updates...
[2026-08-25 06:26:59,590.590 INFO    ] 200
[2026-08-25 06:26:59,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:59,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:26:59,655.655 INFO    ] No update needed
[2026-08-25 06:26:59,657.657 INFO    ] Checking for camera pi updates...
[2026-08-25 06:26:59,691.691 INFO    ] 200
[2026-08-25 06:26:59,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:26:59,733.733 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:26:59,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:26:59,790.790 INFO    ] No camera update needed
[2026-08-25 06:26:59,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:26:59,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:26:59,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:26:59,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:27:01,849.849 INFO    ] ================================================
[2026-08-25 06:27:01,878.878 INFO    ] Launching Daemon at Tue Aug 25 06:27:01 IST 2026
[2026-08-25 06:27:01,900.900 INFO    ] ================================================
[2026-08-25 06:27:02,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:27:02
[2026-08-25 06:27:03,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:27:03,476.476 INFO    ] Initializing speech engine...
[2026-08-25 06:27:03,485.485 INFO    ] 2026-08-25 06:27:03
[2026-08-25 06:27:03,737.737 INFO    ] 2026-08-25 06:27:03
[2026-08-25 06:27:03,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:27:03,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:27:03,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:27:04,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:27:04,179.179 INFO    ] time= 25/08/2026 06:27:04
[2026-08-25 06:27:04,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:27:04,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:27:04,359.359 INFO    ] No existing commands found in stream
[2026-08-25 06:27:09,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:27:09,371.371 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 06:27:12,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:27:12,025.025 INFO    ] Checking for system updates...
[2026-08-25 06:27:12,064.064 INFO    ] 200
[2026-08-25 06:27:12,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:12,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:27:12,122.122 INFO    ] No update needed
[2026-08-25 06:27:12,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 06:27:12,160.160 INFO    ] 200
[2026-08-25 06:27:12,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:12,202.202 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:27:12,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:27:12,263.263 INFO    ] No camera update needed
[2026-08-25 06:27:12,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:27:12,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:27:12,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:27:12,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:27:14,317.317 INFO    ] ================================================
[2026-08-25 06:27:14,332.332 INFO    ] Launching Daemon at Tue Aug 25 06:27:14 IST 2026
[2026-08-25 06:27:14,342.342 INFO    ] ================================================
[2026-08-25 06:27:14,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:27:14
[2026-08-25 06:27:15,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:27:15,785.785 INFO    ] Initializing speech engine...
[2026-08-25 06:27:15,794.794 INFO    ] 2026-08-25 06:27:15
[2026-08-25 06:27:16,041.041 INFO    ] 2026-08-25 06:27:16
[2026-08-25 06:27:16,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:27:16,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:27:16,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:27:16,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:27:16,510.510 INFO    ] time= 25/08/2026 06:27:16
[2026-08-25 06:27:16,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:27:16,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:27:16,739.739 INFO    ] No existing commands found in stream
[2026-08-25 06:27:21,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:27:21,761.761 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 06:27:26,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:27:26,142.142 INFO    ] Checking for system updates...
[2026-08-25 06:27:26,180.180 INFO    ] 200
[2026-08-25 06:27:26,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:26,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:27:26,242.242 INFO    ] No update needed
[2026-08-25 06:27:26,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 06:27:26,277.277 INFO    ] 200
[2026-08-25 06:27:26,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:26,319.319 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:27:26,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:27:26,372.372 INFO    ] No camera update needed
[2026-08-25 06:27:26,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:27:26,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:27:26,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:27:26,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:27:28,428.428 INFO    ] ================================================
[2026-08-25 06:27:28,443.443 INFO    ] Launching Daemon at Tue Aug 25 06:27:28 IST 2026
[2026-08-25 06:27:28,454.454 INFO    ] ================================================
[2026-08-25 06:27:29,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:27:29
[2026-08-25 06:27:29,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:27:29,913.913 INFO    ] Initializing speech engine...
[2026-08-25 06:27:29,923.923 INFO    ] 2026-08-25 06:27:29
[2026-08-25 06:27:30,190.190 INFO    ] 2026-08-25 06:27:30
[2026-08-25 06:27:30,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:27:30,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:27:30,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:27:30,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:27:30,738.738 INFO    ] time= 25/08/2026 06:27:30
[2026-08-25 06:27:30,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:27:30,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:27:30,885.885 INFO    ] No existing commands found in stream
[2026-08-25 06:27:35,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:27:35,908.908 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 06:27:39,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:27:39,762.762 INFO    ] Checking for system updates...
[2026-08-25 06:27:39,799.799 INFO    ] 200
[2026-08-25 06:27:39,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:39,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:27:39,863.863 INFO    ] No update needed
[2026-08-25 06:27:39,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 06:27:39,905.905 INFO    ] 200
[2026-08-25 06:27:39,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:39,954.954 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:27:40,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:27:40,100.100 INFO    ] No camera update needed
[2026-08-25 06:27:40,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:27:40,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:27:40,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:27:40,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:27:42,159.159 INFO    ] ================================================
[2026-08-25 06:27:42,174.174 INFO    ] Launching Daemon at Tue Aug 25 06:27:42 IST 2026
[2026-08-25 06:27:42,184.184 INFO    ] ================================================
[2026-08-25 06:27:42,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:27:42
[2026-08-25 06:27:43,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:27:43,592.592 INFO    ] Initializing speech engine...
[2026-08-25 06:27:43,613.613 INFO    ] 2026-08-25 06:27:43
[2026-08-25 06:27:43,888.888 INFO    ] 2026-08-25 06:27:43
[2026-08-25 06:27:43,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:27:44,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:27:44,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:27:44,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:27:44,267.267 INFO    ] time= 25/08/2026 06:27:44
[2026-08-25 06:27:44,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:27:44,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:27:44,391.391 INFO    ] No existing commands found in stream
[2026-08-25 06:27:49,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:27:49,407.407 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 06:27:52,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:27:52,062.062 INFO    ] Checking for system updates...
[2026-08-25 06:27:52,098.098 INFO    ] 200
[2026-08-25 06:27:52,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:52,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:27:52,161.161 INFO    ] No update needed
[2026-08-25 06:27:52,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 06:27:52,197.197 INFO    ] 200
[2026-08-25 06:27:52,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:27:52,244.244 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:27:52,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:27:52,291.291 INFO    ] No camera update needed
[2026-08-25 06:27:52,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:27:52,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:27:52,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:27:52,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:27:54,346.346 INFO    ] ================================================
[2026-08-25 06:27:54,362.362 INFO    ] Launching Daemon at Tue Aug 25 06:27:54 IST 2026
[2026-08-25 06:27:54,372.372 INFO    ] ================================================
[2026-08-25 06:27:54,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:27:54
[2026-08-25 06:27:55,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:27:55,805.805 INFO    ] Initializing speech engine...
[2026-08-25 06:27:55,814.814 INFO    ] 2026-08-25 06:27:55
[2026-08-25 06:27:56,066.066 INFO    ] 2026-08-25 06:27:56
[2026-08-25 06:27:56,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:27:56,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:27:56,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:27:56,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:27:56,580.580 INFO    ] time= 25/08/2026 06:27:56
[2026-08-25 06:27:56,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:27:56,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:27:56,746.746 INFO    ] No existing commands found in stream
[2026-08-25 06:28:01,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:28:01,775.775 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 06:28:04,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:28:04,643.643 INFO    ] Checking for system updates...
[2026-08-25 06:28:04,682.682 INFO    ] 200
[2026-08-25 06:28:04,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:04,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:28:04,739.739 INFO    ] No update needed
[2026-08-25 06:28:04,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 06:28:04,775.775 INFO    ] 200
[2026-08-25 06:28:04,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:04,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:28:04,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:28:04,865.865 INFO    ] No camera update needed
[2026-08-25 06:28:04,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:28:04,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:28:04,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:28:04,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:28:06,923.923 INFO    ] ================================================
[2026-08-25 06:28:06,938.938 INFO    ] Launching Daemon at Tue Aug 25 06:28:06 IST 2026
[2026-08-25 06:28:06,949.949 INFO    ] ================================================
[2026-08-25 06:28:07,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:28:07
[2026-08-25 06:28:08,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:28:08,343.343 INFO    ] Initializing speech engine...
[2026-08-25 06:28:08,356.356 INFO    ] 2026-08-25 06:28:08
[2026-08-25 06:28:08,618.618 INFO    ] 2026-08-25 06:28:08
[2026-08-25 06:28:08,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:28:09,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:28:09,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:28:10,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:28:10,058.058 INFO    ] time= 25/08/2026 06:28:10
[2026-08-25 06:28:10,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:28:10,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:28:10,141.141 INFO    ] No existing commands found in stream
[2026-08-25 06:28:15,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:28:15,156.156 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 06:28:16,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:28:16,194.194 INFO    ] Checking for system updates...
[2026-08-25 06:28:16,242.242 INFO    ] 200
[2026-08-25 06:28:16,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:16,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:28:16,306.306 INFO    ] No update needed
[2026-08-25 06:28:16,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 06:28:16,342.342 INFO    ] 200
[2026-08-25 06:28:16,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:16,390.390 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:28:16,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:28:16,449.449 INFO    ] No camera update needed
[2026-08-25 06:28:16,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:28:16,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:28:16,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:28:16,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:28:18,505.505 INFO    ] ================================================
[2026-08-25 06:28:18,520.520 INFO    ] Launching Daemon at Tue Aug 25 06:28:18 IST 2026
[2026-08-25 06:28:18,531.531 INFO    ] ================================================
[2026-08-25 06:28:19,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:28:19
[2026-08-25 06:28:19,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:28:20,136.136 INFO    ] Initializing speech engine...
[2026-08-25 06:28:20,150.150 INFO    ] 2026-08-25 06:28:20
[2026-08-25 06:28:20,459.459 INFO    ] 2026-08-25 06:28:20
[2026-08-25 06:28:20,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:28:20,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:28:20,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:28:20,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:28:20,950.950 INFO    ] time= 25/08/2026 06:28:20
[2026-08-25 06:28:20,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:28:20,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:28:21,106.106 INFO    ] No existing commands found in stream
[2026-08-25 06:28:26,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:28:26,137.137 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 06:28:30,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:28:30,305.305 INFO    ] Checking for system updates...
[2026-08-25 06:28:30,342.342 INFO    ] 200
[2026-08-25 06:28:30,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:30,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:28:30,409.409 INFO    ] No update needed
[2026-08-25 06:28:30,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 06:28:30,447.447 INFO    ] 200
[2026-08-25 06:28:30,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:30,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:28:30,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:28:30,541.541 INFO    ] No camera update needed
[2026-08-25 06:28:30,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:28:30,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:28:30,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:28:30,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:28:32,600.600 INFO    ] ================================================
[2026-08-25 06:28:32,616.616 INFO    ] Launching Daemon at Tue Aug 25 06:28:32 IST 2026
[2026-08-25 06:28:32,627.627 INFO    ] ================================================
[2026-08-25 06:28:33,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:28:33
[2026-08-25 06:28:33,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:28:34,061.061 INFO    ] Initializing speech engine...
[2026-08-25 06:28:34,070.070 INFO    ] 2026-08-25 06:28:34
[2026-08-25 06:28:34,365.365 INFO    ] 2026-08-25 06:28:34
[2026-08-25 06:28:34,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:28:34,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:28:34,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:28:34,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:28:34,726.726 INFO    ] time= 25/08/2026 06:28:34
[2026-08-25 06:28:34,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:28:34,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:28:34,878.878 INFO    ] No existing commands found in stream
[2026-08-25 06:28:39,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:28:39,891.891 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 06:28:41,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:28:41,233.233 INFO    ] Checking for system updates...
[2026-08-25 06:28:41,269.269 INFO    ] 200
[2026-08-25 06:28:41,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:41,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:28:41,331.331 INFO    ] No update needed
[2026-08-25 06:28:41,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 06:28:41,372.372 INFO    ] 200
[2026-08-25 06:28:41,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:41,414.414 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:28:41,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:28:41,463.463 INFO    ] No camera update needed
[2026-08-25 06:28:41,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:28:41,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:28:41,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:28:41,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:28:43,518.518 INFO    ] ================================================
[2026-08-25 06:28:43,533.533 INFO    ] Launching Daemon at Tue Aug 25 06:28:43 IST 2026
[2026-08-25 06:28:43,544.544 INFO    ] ================================================
[2026-08-25 06:28:44,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:28:44
[2026-08-25 06:28:44,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:28:44,966.966 INFO    ] Initializing speech engine...
[2026-08-25 06:28:44,977.977 INFO    ] 2026-08-25 06:28:44
[2026-08-25 06:28:45,225.225 INFO    ] 2026-08-25 06:28:45
[2026-08-25 06:28:45,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:28:45,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:28:45,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:28:45,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:28:45,603.603 INFO    ] time= 25/08/2026 06:28:45
[2026-08-25 06:28:45,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:28:45,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:28:45,779.779 INFO    ] No existing commands found in stream
[2026-08-25 06:28:50,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:28:50,811.811 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 06:28:54,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:28:54,154.154 INFO    ] Checking for system updates...
[2026-08-25 06:28:54,194.194 INFO    ] 200
[2026-08-25 06:28:54,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:54,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:28:54,253.253 INFO    ] No update needed
[2026-08-25 06:28:54,256.256 INFO    ] Checking for camera pi updates...
[2026-08-25 06:28:54,293.293 INFO    ] 200
[2026-08-25 06:28:54,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:28:54,336.336 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:28:54,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:28:54,385.385 INFO    ] No camera update needed
[2026-08-25 06:28:54,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:28:54,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:28:54,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:28:54,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:28:56,440.440 INFO    ] ================================================
[2026-08-25 06:28:56,455.455 INFO    ] Launching Daemon at Tue Aug 25 06:28:56 IST 2026
[2026-08-25 06:28:56,466.466 INFO    ] ================================================
[2026-08-25 06:28:57,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:28:57
[2026-08-25 06:28:57,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:28:57,921.921 INFO    ] Initializing speech engine...
[2026-08-25 06:28:57,947.947 INFO    ] 2026-08-25 06:28:57
[2026-08-25 06:28:58,224.224 INFO    ] 2026-08-25 06:28:58
[2026-08-25 06:28:58,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:28:58,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:28:58,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:28:58,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:28:58,650.650 INFO    ] time= 25/08/2026 06:28:58
[2026-08-25 06:28:58,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:28:58,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:28:58,739.739 INFO    ] No existing commands found in stream
[2026-08-25 06:29:03,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:29:03,772.772 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 06:29:05,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:29:05,936.936 INFO    ] Checking for system updates...
[2026-08-25 06:29:05,971.971 INFO    ] 200
[2026-08-25 06:29:05,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:06,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:29:06,030.030 INFO    ] No update needed
[2026-08-25 06:29:06,033.033 INFO    ] Checking for camera pi updates...
[2026-08-25 06:29:06,066.066 INFO    ] 200
[2026-08-25 06:29:06,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:06,114.114 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:29:06,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:29:06,162.162 INFO    ] No camera update needed
[2026-08-25 06:29:06,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:29:06,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:29:06,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:29:06,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:29:08,219.219 INFO    ] ================================================
[2026-08-25 06:29:08,234.234 INFO    ] Launching Daemon at Tue Aug 25 06:29:08 IST 2026
[2026-08-25 06:29:08,244.244 INFO    ] ================================================
[2026-08-25 06:29:08,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:29:08
[2026-08-25 06:29:09,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:29:09,763.763 INFO    ] Initializing speech engine...
[2026-08-25 06:29:09,771.771 INFO    ] 2026-08-25 06:29:09
[2026-08-25 06:29:10,077.077 INFO    ] 2026-08-25 06:29:10
[2026-08-25 06:29:10,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:29:10,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:29:10,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:29:10,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:29:10,586.586 INFO    ] time= 25/08/2026 06:29:10
[2026-08-25 06:29:10,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:29:10,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:29:10,772.772 INFO    ] No existing commands found in stream
[2026-08-25 06:29:15,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:29:15,806.806 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 06:29:17,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:29:17,376.376 INFO    ] Checking for system updates...
[2026-08-25 06:29:17,413.413 INFO    ] 200
[2026-08-25 06:29:17,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:17,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:29:17,473.473 INFO    ] No update needed
[2026-08-25 06:29:17,476.476 INFO    ] Checking for camera pi updates...
[2026-08-25 06:29:17,514.514 INFO    ] 200
[2026-08-25 06:29:17,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:17,558.558 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:29:17,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:29:17,609.609 INFO    ] No camera update needed
[2026-08-25 06:29:17,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:29:17,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:29:17,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:29:17,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:29:19,664.664 INFO    ] ================================================
[2026-08-25 06:29:19,679.679 INFO    ] Launching Daemon at Tue Aug 25 06:29:19 IST 2026
[2026-08-25 06:29:19,690.690 INFO    ] ================================================
[2026-08-25 06:29:20,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:29:20
[2026-08-25 06:29:20,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:29:21,115.115 INFO    ] Initializing speech engine...
[2026-08-25 06:29:21,121.121 INFO    ] 2026-08-25 06:29:21
[2026-08-25 06:29:21,379.379 INFO    ] 2026-08-25 06:29:21
[2026-08-25 06:29:21,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:29:21,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:29:21,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:29:21,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:29:21,781.781 INFO    ] time= 25/08/2026 06:29:21
[2026-08-25 06:29:21,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:29:21,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:29:21,945.945 INFO    ] No existing commands found in stream
[2026-08-25 06:29:26,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:29:26,972.972 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 06:29:29,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:29:29,713.713 INFO    ] Checking for system updates...
[2026-08-25 06:29:29,750.750 INFO    ] 200
[2026-08-25 06:29:29,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:29,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:29:29,813.813 INFO    ] No update needed
[2026-08-25 06:29:29,816.816 INFO    ] Checking for camera pi updates...
[2026-08-25 06:29:29,850.850 INFO    ] 200
[2026-08-25 06:29:29,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:29,893.893 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:29:29,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:29:29,943.943 INFO    ] No camera update needed
[2026-08-25 06:29:29,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:29:29,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:29:29,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:29:29,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:29:32,998.998 INFO    ] ================================================
[2026-08-25 06:29:32,015.015 INFO    ] Launching Daemon at Tue Aug 25 06:29:32 IST 2026
[2026-08-25 06:29:32,027.027 INFO    ] ================================================
[2026-08-25 06:29:32,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:29:32
[2026-08-25 06:29:33,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:29:33,493.493 INFO    ] Initializing speech engine...
[2026-08-25 06:29:33,503.503 INFO    ] 2026-08-25 06:29:33
[2026-08-25 06:29:33,754.754 INFO    ] 2026-08-25 06:29:33
[2026-08-25 06:29:33,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:29:34,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:29:34,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:29:34,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:29:34,252.252 INFO    ] time= 25/08/2026 06:29:34
[2026-08-25 06:29:34,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:29:34,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:29:34,445.445 INFO    ] No existing commands found in stream
[2026-08-25 06:29:39,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:29:39,469.469 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 06:29:43,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:29:43,172.172 INFO    ] Checking for system updates...
[2026-08-25 06:29:43,207.207 INFO    ] 200
[2026-08-25 06:29:43,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:43,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:29:43,263.263 INFO    ] No update needed
[2026-08-25 06:29:43,265.265 INFO    ] Checking for camera pi updates...
[2026-08-25 06:29:43,298.298 INFO    ] 200
[2026-08-25 06:29:43,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:43,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:29:43,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:29:43,488.488 INFO    ] No camera update needed
[2026-08-25 06:29:43,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:29:43,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:29:43,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:29:43,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:29:45,543.543 INFO    ] ================================================
[2026-08-25 06:29:45,559.559 INFO    ] Launching Daemon at Tue Aug 25 06:29:45 IST 2026
[2026-08-25 06:29:45,569.569 INFO    ] ================================================
[2026-08-25 06:29:46,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:29:46
[2026-08-25 06:29:46,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:29:47,215.215 INFO    ] Initializing speech engine...
[2026-08-25 06:29:47,221.221 INFO    ] 2026-08-25 06:29:47
[2026-08-25 06:29:47,496.496 INFO    ] 2026-08-25 06:29:47
[2026-08-25 06:29:47,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:29:47,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:29:47,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:29:47,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:29:48,046.046 INFO    ] time= 25/08/2026 06:29:48
[2026-08-25 06:29:48,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:29:48,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:29:48,182.182 INFO    ] No existing commands found in stream
[2026-08-25 06:29:53,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:29:53,216.216 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 06:29:56,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:29:56,517.517 INFO    ] Checking for system updates...
[2026-08-25 06:29:56,554.554 INFO    ] 200
[2026-08-25 06:29:56,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:56,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:29:56,613.613 INFO    ] No update needed
[2026-08-25 06:29:56,616.616 INFO    ] Checking for camera pi updates...
[2026-08-25 06:29:56,653.653 INFO    ] 200
[2026-08-25 06:29:56,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:29:56,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:29:56,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:29:56,763.763 INFO    ] No camera update needed
[2026-08-25 06:29:56,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:29:56,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:29:56,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:29:56,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:29:58,823.823 INFO    ] ================================================
[2026-08-25 06:29:58,838.838 INFO    ] Launching Daemon at Tue Aug 25 06:29:58 IST 2026
[2026-08-25 06:29:58,849.849 INFO    ] ================================================
[2026-08-25 06:29:59,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:29:59
[2026-08-25 06:29:59,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:30:00,253.253 INFO    ] Initializing speech engine...
[2026-08-25 06:30:00,261.261 INFO    ] 2026-08-25 06:30:00
[2026-08-25 06:30:00,557.557 INFO    ] 2026-08-25 06:30:00
[2026-08-25 06:30:00,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:30:00,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:30:00,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:30:00,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:30:00,978.978 INFO    ] time= 25/08/2026 06:30:00
[2026-08-25 06:30:00,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:30:00,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:30:01,072.072 INFO    ] No existing commands found in stream
[2026-08-25 06:30:06,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:30:06,109.109 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 06:30:09,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:30:09,137.137 INFO    ] Checking for system updates...
[2026-08-25 06:30:09,172.172 INFO    ] 200
[2026-08-25 06:30:09,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:09,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:30:09,229.229 INFO    ] No update needed
[2026-08-25 06:30:09,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 06:30:09,264.264 INFO    ] 200
[2026-08-25 06:30:09,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:09,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:30:09,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:30:09,361.361 INFO    ] No camera update needed
[2026-08-25 06:30:09,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:30:09,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:30:09,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:30:09,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:30:11,415.415 INFO    ] ================================================
[2026-08-25 06:30:11,430.430 INFO    ] Launching Daemon at Tue Aug 25 06:30:11 IST 2026
[2026-08-25 06:30:11,441.441 INFO    ] ================================================
[2026-08-25 06:30:12,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:30:12
[2026-08-25 06:30:12,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:30:13,049.049 INFO    ] Initializing speech engine...
[2026-08-25 06:30:13,056.056 INFO    ] 2026-08-25 06:30:13
[2026-08-25 06:30:13,336.336 INFO    ] 2026-08-25 06:30:13
[2026-08-25 06:30:13,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:30:13,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:30:13,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:30:13,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:30:13,829.829 INFO    ] time= 25/08/2026 06:30:13
[2026-08-25 06:30:13,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:30:13,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:30:14,051.051 INFO    ] No existing commands found in stream
[2026-08-25 06:30:19,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:30:19,072.072 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 06:30:22,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:30:22,337.337 INFO    ] Checking for system updates...
[2026-08-25 06:30:22,372.372 INFO    ] 200
[2026-08-25 06:30:22,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:22,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:30:22,431.431 INFO    ] No update needed
[2026-08-25 06:30:22,433.433 INFO    ] Checking for camera pi updates...
[2026-08-25 06:30:22,469.469 INFO    ] 200
[2026-08-25 06:30:22,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:22,513.513 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:30:22,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:30:22,573.573 INFO    ] No camera update needed
[2026-08-25 06:30:22,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:30:22,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:30:22,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:30:22,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:30:24,630.630 INFO    ] ================================================
[2026-08-25 06:30:24,645.645 INFO    ] Launching Daemon at Tue Aug 25 06:30:24 IST 2026
[2026-08-25 06:30:24,655.655 INFO    ] ================================================
[2026-08-25 06:30:25,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:30:25
[2026-08-25 06:30:25,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:30:26,117.117 INFO    ] Initializing speech engine...
[2026-08-25 06:30:26,124.124 INFO    ] 2026-08-25 06:30:26
[2026-08-25 06:30:26,370.370 INFO    ] 2026-08-25 06:30:26
[2026-08-25 06:30:26,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:30:26,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:30:26,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:30:26,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:30:26,872.872 INFO    ] time= 25/08/2026 06:30:26
[2026-08-25 06:30:26,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:30:26,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:30:27,083.083 INFO    ] No existing commands found in stream
[2026-08-25 06:30:32,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:30:32,101.101 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 06:30:35,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:30:35,973.973 INFO    ] Checking for system updates...
[2026-08-25 06:30:36,010.010 INFO    ] 200
[2026-08-25 06:30:36,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:36,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:30:36,074.074 INFO    ] No update needed
[2026-08-25 06:30:36,078.078 INFO    ] Checking for camera pi updates...
[2026-08-25 06:30:36,115.115 INFO    ] 200
[2026-08-25 06:30:36,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:36,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:30:36,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:30:36,210.210 INFO    ] No camera update needed
[2026-08-25 06:30:36,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:30:36,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:30:36,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:30:36,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:30:38,266.266 INFO    ] ================================================
[2026-08-25 06:30:38,281.281 INFO    ] Launching Daemon at Tue Aug 25 06:30:38 IST 2026
[2026-08-25 06:30:38,292.292 INFO    ] ================================================
[2026-08-25 06:30:38,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:30:38
[2026-08-25 06:30:39,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:30:39,721.721 INFO    ] Initializing speech engine...
[2026-08-25 06:30:39,728.728 INFO    ] 2026-08-25 06:30:39
[2026-08-25 06:30:39,987.987 INFO    ] 2026-08-25 06:30:39
[2026-08-25 06:30:40,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:30:40,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:30:40,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:30:40,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:30:40,476.476 INFO    ] time= 25/08/2026 06:30:40
[2026-08-25 06:30:40,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:30:40,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:30:40,687.687 INFO    ] No existing commands found in stream
[2026-08-25 06:30:45,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:30:45,704.704 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 06:30:49,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:30:49,092.092 INFO    ] Checking for system updates...
[2026-08-25 06:30:49,129.129 INFO    ] 200
[2026-08-25 06:30:49,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:49,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:30:49,185.185 INFO    ] No update needed
[2026-08-25 06:30:49,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 06:30:49,225.225 INFO    ] 200
[2026-08-25 06:30:49,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:30:49,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:30:49,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:30:49,329.329 INFO    ] No camera update needed
[2026-08-25 06:30:49,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:30:49,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:30:49,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:30:49,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:30:51,384.384 INFO    ] ================================================
[2026-08-25 06:30:51,399.399 INFO    ] Launching Daemon at Tue Aug 25 06:30:51 IST 2026
[2026-08-25 06:30:51,409.409 INFO    ] ================================================
[2026-08-25 06:30:51,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:30:51
[2026-08-25 06:30:52,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:30:52,827.827 INFO    ] Initializing speech engine...
[2026-08-25 06:30:52,838.838 INFO    ] 2026-08-25 06:30:52
[2026-08-25 06:30:53,110.110 INFO    ] 2026-08-25 06:30:53
[2026-08-25 06:30:53,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:30:53,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:30:53,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:30:53,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:30:53,522.522 INFO    ] time= 25/08/2026 06:30:53
[2026-08-25 06:30:53,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:30:53,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:30:53,741.741 INFO    ] No existing commands found in stream
[2026-08-25 06:30:58,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:30:58,755.755 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 06:31:02,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:31:02,718.718 INFO    ] Checking for system updates...
[2026-08-25 06:31:02,755.755 INFO    ] 200
[2026-08-25 06:31:02,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:02,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:31:02,824.824 INFO    ] No update needed
[2026-08-25 06:31:02,827.827 INFO    ] Checking for camera pi updates...
[2026-08-25 06:31:02,864.864 INFO    ] 200
[2026-08-25 06:31:02,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:02,907.907 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:31:02,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:31:02,961.961 INFO    ] No camera update needed
[2026-08-25 06:31:02,964.964 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:31:02,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:31:02,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:31:02,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:31:05,017.017 INFO    ] ================================================
[2026-08-25 06:31:05,032.032 INFO    ] Launching Daemon at Tue Aug 25 06:31:05 IST 2026
[2026-08-25 06:31:05,043.043 INFO    ] ================================================
[2026-08-25 06:31:05,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:31:05
[2026-08-25 06:31:06,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:31:06,476.476 INFO    ] Initializing speech engine...
[2026-08-25 06:31:06,485.485 INFO    ] 2026-08-25 06:31:06
[2026-08-25 06:31:06,745.745 INFO    ] 2026-08-25 06:31:06
[2026-08-25 06:31:06,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:31:07,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:31:07,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:31:07,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:31:07,198.198 INFO    ] time= 25/08/2026 06:31:07
[2026-08-25 06:31:07,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:31:07,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:31:07,432.432 INFO    ] No existing commands found in stream
[2026-08-25 06:31:12,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:31:12,456.456 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 06:31:16,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:31:16,610.610 INFO    ] Checking for system updates...
[2026-08-25 06:31:16,646.646 INFO    ] 200
[2026-08-25 06:31:16,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:16,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:31:16,703.703 INFO    ] No update needed
[2026-08-25 06:31:16,706.706 INFO    ] Checking for camera pi updates...
[2026-08-25 06:31:16,739.739 INFO    ] 200
[2026-08-25 06:31:16,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:16,781.781 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:31:16,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:31:16,832.832 INFO    ] No camera update needed
[2026-08-25 06:31:16,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:31:16,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:31:16,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:31:16,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:31:18,888.888 INFO    ] ================================================
[2026-08-25 06:31:18,903.903 INFO    ] Launching Daemon at Tue Aug 25 06:31:18 IST 2026
[2026-08-25 06:31:18,913.913 INFO    ] ================================================
[2026-08-25 06:31:19,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:31:19
[2026-08-25 06:31:20,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:31:20,496.496 INFO    ] Initializing speech engine...
[2026-08-25 06:31:20,504.504 INFO    ] 2026-08-25 06:31:20
[2026-08-25 06:31:20,772.772 INFO    ] 2026-08-25 06:31:20
[2026-08-25 06:31:20,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:31:21,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:31:21,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:31:21,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:31:21,251.251 INFO    ] time= 25/08/2026 06:31:21
[2026-08-25 06:31:21,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:31:21,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:31:21,438.438 INFO    ] No existing commands found in stream
[2026-08-25 06:31:26,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:31:26,453.453 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 06:31:27,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:31:27,746.746 INFO    ] Checking for system updates...
[2026-08-25 06:31:27,781.781 INFO    ] 200
[2026-08-25 06:31:27,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:27,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:31:27,842.842 INFO    ] No update needed
[2026-08-25 06:31:27,844.844 INFO    ] Checking for camera pi updates...
[2026-08-25 06:31:27,877.877 INFO    ] 200
[2026-08-25 06:31:27,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:27,920.920 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:31:27,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:31:27,969.969 INFO    ] No camera update needed
[2026-08-25 06:31:27,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:31:27,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:31:27,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:31:27,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:31:30,024.024 INFO    ] ================================================
[2026-08-25 06:31:30,039.039 INFO    ] Launching Daemon at Tue Aug 25 06:31:30 IST 2026
[2026-08-25 06:31:30,050.050 INFO    ] ================================================
[2026-08-25 06:31:30,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:31:30
[2026-08-25 06:31:31,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:31:31,480.480 INFO    ] Initializing speech engine...
[2026-08-25 06:31:31,495.495 INFO    ] 2026-08-25 06:31:31
[2026-08-25 06:31:31,778.778 INFO    ] 2026-08-25 06:31:31
[2026-08-25 06:31:31,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:31:32,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:31:32,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:31:32,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:31:32,170.170 INFO    ] time= 25/08/2026 06:31:32
[2026-08-25 06:31:32,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:31:32,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:31:32,354.354 INFO    ] No existing commands found in stream
[2026-08-25 06:31:37,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:31:37,372.372 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 06:31:41,228.228 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:31:41,230.230 INFO    ] Checking for system updates...
[2026-08-25 06:31:41,265.265 INFO    ] 200
[2026-08-25 06:31:41,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:41,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:31:41,322.322 INFO    ] No update needed
[2026-08-25 06:31:41,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 06:31:41,359.359 INFO    ] 200
[2026-08-25 06:31:41,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:41,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:31:41,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:31:41,460.460 INFO    ] No camera update needed
[2026-08-25 06:31:41,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:31:41,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:31:41,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:31:41,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:31:43,517.517 INFO    ] ================================================
[2026-08-25 06:31:43,533.533 INFO    ] Launching Daemon at Tue Aug 25 06:31:43 IST 2026
[2026-08-25 06:31:43,545.545 INFO    ] ================================================
[2026-08-25 06:31:44,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:31:44
[2026-08-25 06:31:44,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:31:45,198.198 INFO    ] Initializing speech engine...
[2026-08-25 06:31:45,212.212 INFO    ] 2026-08-25 06:31:45
[2026-08-25 06:31:45,526.526 INFO    ] 2026-08-25 06:31:45
[2026-08-25 06:31:45,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:31:45,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:31:45,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:31:46,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:31:46,041.041 INFO    ] time= 25/08/2026 06:31:46
[2026-08-25 06:31:46,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:31:46,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:31:46,205.205 INFO    ] No existing commands found in stream
[2026-08-25 06:31:51,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:31:51,230.230 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 06:31:55,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:31:55,573.573 INFO    ] Checking for system updates...
[2026-08-25 06:31:55,609.609 INFO    ] 200
[2026-08-25 06:31:55,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:55,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:31:55,667.667 INFO    ] No update needed
[2026-08-25 06:31:55,669.669 INFO    ] Checking for camera pi updates...
[2026-08-25 06:31:55,702.702 INFO    ] 200
[2026-08-25 06:31:55,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:31:55,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:31:55,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:31:55,891.891 INFO    ] No camera update needed
[2026-08-25 06:31:55,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:31:55,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:31:55,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:31:55,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:31:57,946.946 INFO    ] ================================================
[2026-08-25 06:31:57,961.961 INFO    ] Launching Daemon at Tue Aug 25 06:31:57 IST 2026
[2026-08-25 06:31:57,972.972 INFO    ] ================================================
[2026-08-25 06:31:58,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:31:58
[2026-08-25 06:31:59,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:31:59,413.413 INFO    ] Initializing speech engine...
[2026-08-25 06:31:59,422.422 INFO    ] 2026-08-25 06:31:59
[2026-08-25 06:31:59,671.671 INFO    ] 2026-08-25 06:31:59
[2026-08-25 06:31:59,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:32:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:32:00,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:32:00,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:32:00,653.653 INFO    ] time= 25/08/2026 06:32:00
[2026-08-25 06:32:00,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:32:00,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:32:00,783.783 INFO    ] No existing commands found in stream
[2026-08-25 06:32:05,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:32:05,809.809 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 06:32:08,267.267 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:32:08,270.270 INFO    ] Checking for system updates...
[2026-08-25 06:32:08,309.309 INFO    ] 200
[2026-08-25 06:32:08,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:08,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:32:08,371.371 INFO    ] No update needed
[2026-08-25 06:32:08,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 06:32:08,407.407 INFO    ] 200
[2026-08-25 06:32:08,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:08,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:32:08,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:32:08,515.515 INFO    ] No camera update needed
[2026-08-25 06:32:08,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:32:08,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:32:08,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:32:08,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:32:10,570.570 INFO    ] ================================================
[2026-08-25 06:32:10,586.586 INFO    ] Launching Daemon at Tue Aug 25 06:32:10 IST 2026
[2026-08-25 06:32:10,597.597 INFO    ] ================================================
[2026-08-25 06:32:11,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:32:11
[2026-08-25 06:32:11,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:32:12,010.010 INFO    ] Initializing speech engine...
[2026-08-25 06:32:12,020.020 INFO    ] 2026-08-25 06:32:12
[2026-08-25 06:32:12,265.265 INFO    ] 2026-08-25 06:32:12
[2026-08-25 06:32:12,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:32:12,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:32:12,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:32:12,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:32:12,632.632 INFO    ] time= 25/08/2026 06:32:12
[2026-08-25 06:32:12,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:32:12,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:32:12,814.814 INFO    ] No existing commands found in stream
[2026-08-25 06:32:17,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:32:17,840.840 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 06:32:20,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:32:20,099.099 INFO    ] Checking for system updates...
[2026-08-25 06:32:20,135.135 INFO    ] 200
[2026-08-25 06:32:20,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:20,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:32:20,191.191 INFO    ] No update needed
[2026-08-25 06:32:20,193.193 INFO    ] Checking for camera pi updates...
[2026-08-25 06:32:20,226.226 INFO    ] 200
[2026-08-25 06:32:20,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:20,269.269 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:32:20,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:32:20,317.317 INFO    ] No camera update needed
[2026-08-25 06:32:20,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:32:20,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:32:20,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:32:20,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:32:22,373.373 INFO    ] ================================================
[2026-08-25 06:32:22,388.388 INFO    ] Launching Daemon at Tue Aug 25 06:32:22 IST 2026
[2026-08-25 06:32:22,400.400 INFO    ] ================================================
[2026-08-25 06:32:22,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:32:22
[2026-08-25 06:32:23,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:32:23,815.815 INFO    ] Initializing speech engine...
[2026-08-25 06:32:23,829.829 INFO    ] 2026-08-25 06:32:23
[2026-08-25 06:32:24,092.092 INFO    ] 2026-08-25 06:32:24
[2026-08-25 06:32:24,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:32:24,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:32:24,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:32:24,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:32:24,562.562 INFO    ] time= 25/08/2026 06:32:24
[2026-08-25 06:32:24,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:32:24,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:32:24,797.797 INFO    ] No existing commands found in stream
[2026-08-25 06:32:29,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:32:29,810.810 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 06:32:32,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:32:32,316.316 INFO    ] Checking for system updates...
[2026-08-25 06:32:32,372.372 INFO    ] 200
[2026-08-25 06:32:32,375.375 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:32,378.378 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 06:32:32,384.384 INFO    ] Checking for camera pi updates...
[2026-08-25 06:32:32,449.449 INFO    ] 200
[2026-08-25 06:32:32,452.452 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:32,455.455 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 06:32:32,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:32:32,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:32:32,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:32:32,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:32:34,516.516 INFO    ] ================================================
[2026-08-25 06:32:34,538.538 INFO    ] Launching Daemon at Tue Aug 25 06:32:34 IST 2026
[2026-08-25 06:32:34,549.549 INFO    ] ================================================
[2026-08-25 06:32:35,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:32:35
[2026-08-25 06:32:35,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:32:36,245.245 INFO    ] Initializing speech engine...
[2026-08-25 06:32:36,256.256 INFO    ] 2026-08-25 06:32:36
[2026-08-25 06:32:36,546.546 INFO    ] 2026-08-25 06:32:36
[2026-08-25 06:32:36,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:32:36,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:32:36,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:32:37,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:32:37,081.081 INFO    ] time= 25/08/2026 06:32:37
[2026-08-25 06:32:37,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:32:37,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:32:37,226.226 INFO    ] No existing commands found in stream
[2026-08-25 06:32:42,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:32:42,249.249 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 06:32:45,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:32:45,678.678 INFO    ] Checking for system updates...
[2026-08-25 06:32:45,719.719 INFO    ] 200
[2026-08-25 06:32:45,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:45,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:32:45,786.786 INFO    ] No update needed
[2026-08-25 06:32:45,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 06:32:45,827.827 INFO    ] 200
[2026-08-25 06:32:45,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:45,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:32:45,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:32:45,926.926 INFO    ] No camera update needed
[2026-08-25 06:32:45,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:32:45,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:32:45,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:32:45,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:32:47,985.985 INFO    ] ================================================
[2026-08-25 06:32:48,001.001 INFO    ] Launching Daemon at Tue Aug 25 06:32:47 IST 2026
[2026-08-25 06:32:48,012.012 INFO    ] ================================================
[2026-08-25 06:32:48,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:32:48
[2026-08-25 06:32:49,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:32:49,432.432 INFO    ] Initializing speech engine...
[2026-08-25 06:32:49,438.438 INFO    ] 2026-08-25 06:32:49
[2026-08-25 06:32:49,697.697 INFO    ] 2026-08-25 06:32:49
[2026-08-25 06:32:49,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:32:49,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:32:49,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:32:50,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:32:50,169.169 INFO    ] time= 25/08/2026 06:32:50
[2026-08-25 06:32:50,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:32:50,254.254 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:32:50,375.375 INFO    ] No existing commands found in stream
[2026-08-25 06:32:55,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:32:55,408.408 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 06:32:59,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:32:59,039.039 INFO    ] Checking for system updates...
[2026-08-25 06:32:59,074.074 INFO    ] 200
[2026-08-25 06:32:59,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:59,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:32:59,132.132 INFO    ] No update needed
[2026-08-25 06:32:59,134.134 INFO    ] Checking for camera pi updates...
[2026-08-25 06:32:59,167.167 INFO    ] 200
[2026-08-25 06:32:59,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:32:59,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:32:59,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:32:59,259.259 INFO    ] No camera update needed
[2026-08-25 06:32:59,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:32:59,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:32:59,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:32:59,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:33:01,315.315 INFO    ] ================================================
[2026-08-25 06:33:01,331.331 INFO    ] Launching Daemon at Tue Aug 25 06:33:01 IST 2026
[2026-08-25 06:33:01,342.342 INFO    ] ================================================
[2026-08-25 06:33:01,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:33:01
[2026-08-25 06:33:02,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:33:02,962.962 INFO    ] Initializing speech engine...
[2026-08-25 06:33:02,979.979 INFO    ] 2026-08-25 06:33:02
[2026-08-25 06:33:03,265.265 INFO    ] 2026-08-25 06:33:03
[2026-08-25 06:33:03,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:33:03,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:33:03,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:33:03,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:33:03,830.830 INFO    ] time= 25/08/2026 06:33:03
[2026-08-25 06:33:03,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:33:03,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:33:04,045.045 INFO    ] No existing commands found in stream
[2026-08-25 06:33:09,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:33:09,074.074 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 06:33:11,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:33:11,086.086 INFO    ] Checking for system updates...
[2026-08-25 06:33:11,122.122 INFO    ] 200
[2026-08-25 06:33:11,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:11,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:33:11,181.181 INFO    ] No update needed
[2026-08-25 06:33:11,184.184 INFO    ] Checking for camera pi updates...
[2026-08-25 06:33:11,218.218 INFO    ] 200
[2026-08-25 06:33:11,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:11,262.262 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:33:11,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:33:11,310.310 INFO    ] No camera update needed
[2026-08-25 06:33:11,313.313 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:33:11,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:33:11,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:33:11,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:33:13,364.364 INFO    ] ================================================
[2026-08-25 06:33:13,380.380 INFO    ] Launching Daemon at Tue Aug 25 06:33:13 IST 2026
[2026-08-25 06:33:13,391.391 INFO    ] ================================================
[2026-08-25 06:33:13,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:33:13
[2026-08-25 06:33:14,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:33:14,819.819 INFO    ] Initializing speech engine...
[2026-08-25 06:33:14,841.841 INFO    ] 2026-08-25 06:33:14
[2026-08-25 06:33:15,100.100 INFO    ] 2026-08-25 06:33:15
[2026-08-25 06:33:15,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:33:15,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:33:15,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:33:15,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:33:15,459.459 INFO    ] time= 25/08/2026 06:33:15
[2026-08-25 06:33:15,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:33:15,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:33:15,582.582 INFO    ] No existing commands found in stream
[2026-08-25 06:33:20,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:33:20,602.602 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 06:33:24,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:33:24,885.885 INFO    ] Checking for system updates...
[2026-08-25 06:33:24,920.920 INFO    ] 200
[2026-08-25 06:33:24,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:24,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:33:24,983.983 INFO    ] No update needed
[2026-08-25 06:33:24,986.986 INFO    ] Checking for camera pi updates...
[2026-08-25 06:33:25,019.019 INFO    ] 200
[2026-08-25 06:33:25,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:25,062.062 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:33:25,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:33:25,108.108 INFO    ] No camera update needed
[2026-08-25 06:33:25,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:33:25,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:33:25,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:33:25,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:33:27,165.165 INFO    ] ================================================
[2026-08-25 06:33:27,180.180 INFO    ] Launching Daemon at Tue Aug 25 06:33:27 IST 2026
[2026-08-25 06:33:27,192.192 INFO    ] ================================================
[2026-08-25 06:33:27,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:33:27
[2026-08-25 06:33:28,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:33:28,793.793 INFO    ] Initializing speech engine...
[2026-08-25 06:33:28,806.806 INFO    ] 2026-08-25 06:33:28
[2026-08-25 06:33:29,073.073 INFO    ] 2026-08-25 06:33:29
[2026-08-25 06:33:29,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:33:29,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:33:29,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:33:29,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:33:29,546.546 INFO    ] time= 25/08/2026 06:33:29
[2026-08-25 06:33:29,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:33:29,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:33:29,777.777 INFO    ] No existing commands found in stream
[2026-08-25 06:33:34,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:33:34,800.800 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 06:33:39,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:33:39,150.150 INFO    ] Checking for system updates...
[2026-08-25 06:33:39,199.199 INFO    ] 200
[2026-08-25 06:33:39,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:39,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:33:39,264.264 INFO    ] No update needed
[2026-08-25 06:33:39,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 06:33:39,302.302 INFO    ] 200
[2026-08-25 06:33:39,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:39,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:33:39,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:33:39,397.397 INFO    ] No camera update needed
[2026-08-25 06:33:39,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:33:39,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:33:39,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:33:39,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:33:41,456.456 INFO    ] ================================================
[2026-08-25 06:33:41,472.472 INFO    ] Launching Daemon at Tue Aug 25 06:33:41 IST 2026
[2026-08-25 06:33:41,483.483 INFO    ] ================================================
[2026-08-25 06:33:42,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:33:42
[2026-08-25 06:33:42,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:33:42,895.895 INFO    ] Initializing speech engine...
[2026-08-25 06:33:42,910.910 INFO    ] 2026-08-25 06:33:42
[2026-08-25 06:33:43,178.178 INFO    ] 2026-08-25 06:33:43
[2026-08-25 06:33:43,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:33:43,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:33:43,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:33:43,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:33:43,678.678 INFO    ] time= 25/08/2026 06:33:43
[2026-08-25 06:33:43,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:33:43,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:33:43,876.876 INFO    ] No existing commands found in stream
[2026-08-25 06:33:48,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:33:48,902.902 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 06:33:49,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:33:49,871.871 INFO    ] Checking for system updates...
[2026-08-25 06:33:49,908.908 INFO    ] 200
[2026-08-25 06:33:49,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:49,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:33:49,974.974 INFO    ] No update needed
[2026-08-25 06:33:49,978.978 INFO    ] Checking for camera pi updates...
[2026-08-25 06:33:50,012.012 INFO    ] 200
[2026-08-25 06:33:50,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:33:50,062.062 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:33:50,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:33:50,112.112 INFO    ] No camera update needed
[2026-08-25 06:33:50,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:33:50,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:33:50,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:33:50,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:33:52,173.173 INFO    ] ================================================
[2026-08-25 06:33:52,189.189 INFO    ] Launching Daemon at Tue Aug 25 06:33:52 IST 2026
[2026-08-25 06:33:52,200.200 INFO    ] ================================================
[2026-08-25 06:33:52,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:33:52
[2026-08-25 06:33:53,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:33:53,858.858 INFO    ] Initializing speech engine...
[2026-08-25 06:33:53,871.871 INFO    ] 2026-08-25 06:33:53
[2026-08-25 06:33:54,152.152 INFO    ] 2026-08-25 06:33:54
[2026-08-25 06:33:54,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:33:54,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:33:54,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:33:54,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:33:54,619.619 INFO    ] time= 25/08/2026 06:33:54
[2026-08-25 06:33:54,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:33:54,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:33:54,844.844 INFO    ] No existing commands found in stream
[2026-08-25 06:33:59,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:33:59,864.864 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 06:34:02,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:34:02,664.664 INFO    ] Checking for system updates...
[2026-08-25 06:34:02,709.709 INFO    ] 200
[2026-08-25 06:34:02,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:02,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:34:02,792.792 INFO    ] No update needed
[2026-08-25 06:34:02,795.795 INFO    ] Checking for camera pi updates...
[2026-08-25 06:34:02,836.836 INFO    ] 200
[2026-08-25 06:34:02,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:02,906.906 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:34:02,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:34:02,956.956 INFO    ] No camera update needed
[2026-08-25 06:34:02,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:34:02,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:34:02,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:34:02,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:34:05,026.026 INFO    ] ================================================
[2026-08-25 06:34:05,042.042 INFO    ] Launching Daemon at Tue Aug 25 06:34:05 IST 2026
[2026-08-25 06:34:05,053.053 INFO    ] ================================================
[2026-08-25 06:34:05,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:34:05
[2026-08-25 06:34:06,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:34:06,607.607 INFO    ] Initializing speech engine...
[2026-08-25 06:34:06,619.619 INFO    ] 2026-08-25 06:34:06
[2026-08-25 06:34:06,931.931 INFO    ] 2026-08-25 06:34:06
[2026-08-25 06:34:07,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:34:07,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:34:07,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:34:07,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:34:07,447.447 INFO    ] time= 25/08/2026 06:34:07
[2026-08-25 06:34:07,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:34:07,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:34:07,592.592 INFO    ] No existing commands found in stream
[2026-08-25 06:34:12,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:34:12,618.618 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 06:34:13,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:34:13,242.242 INFO    ] Checking for system updates...
[2026-08-25 06:34:13,295.295 INFO    ] 200
[2026-08-25 06:34:13,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:13,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:34:13,374.374 INFO    ] No update needed
[2026-08-25 06:34:13,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 06:34:13,417.417 INFO    ] 200
[2026-08-25 06:34:13,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:13,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:34:13,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:34:13,539.539 INFO    ] No camera update needed
[2026-08-25 06:34:13,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:34:13,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:34:13,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:34:13,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:34:15,597.597 INFO    ] ================================================
[2026-08-25 06:34:15,612.612 INFO    ] Launching Daemon at Tue Aug 25 06:34:15 IST 2026
[2026-08-25 06:34:15,623.623 INFO    ] ================================================
[2026-08-25 06:34:16,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:34:16
[2026-08-25 06:34:16,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:34:17,099.099 INFO    ] Initializing speech engine...
[2026-08-25 06:34:17,112.112 INFO    ] 2026-08-25 06:34:17
[2026-08-25 06:34:17,378.378 INFO    ] 2026-08-25 06:34:17
[2026-08-25 06:34:17,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:34:17,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:34:17,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:34:17,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:34:17,826.826 INFO    ] time= 25/08/2026 06:34:17
[2026-08-25 06:34:17,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:34:17,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:34:18,049.049 INFO    ] No existing commands found in stream
[2026-08-25 06:34:23,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:34:23,076.076 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 06:34:23,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:34:23,799.799 INFO    ] Checking for system updates...
[2026-08-25 06:34:23,836.836 INFO    ] 200
[2026-08-25 06:34:23,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:23,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:34:23,897.897 INFO    ] No update needed
[2026-08-25 06:34:23,900.900 INFO    ] Checking for camera pi updates...
[2026-08-25 06:34:23,934.934 INFO    ] 200
[2026-08-25 06:34:23,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:23,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:34:24,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:34:24,030.030 INFO    ] No camera update needed
[2026-08-25 06:34:24,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:34:24,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:34:24,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:34:24,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:34:26,085.085 INFO    ] ================================================
[2026-08-25 06:34:26,100.100 INFO    ] Launching Daemon at Tue Aug 25 06:34:26 IST 2026
[2026-08-25 06:34:26,111.111 INFO    ] ================================================
[2026-08-25 06:34:26,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:34:26
[2026-08-25 06:34:27,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:34:27,577.577 INFO    ] Initializing speech engine...
[2026-08-25 06:34:27,587.587 INFO    ] 2026-08-25 06:34:27
[2026-08-25 06:34:27,845.845 INFO    ] 2026-08-25 06:34:27
[2026-08-25 06:34:27,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:34:28,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:34:28,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:34:28,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:34:28,308.308 INFO    ] time= 25/08/2026 06:34:28
[2026-08-25 06:34:28,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:34:28,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:34:28,538.538 INFO    ] No existing commands found in stream
[2026-08-25 06:34:33,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:34:33,557.557 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 06:34:36,167.167 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:34:36,170.170 INFO    ] Checking for system updates...
[2026-08-25 06:34:36,205.205 INFO    ] 200
[2026-08-25 06:34:36,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:36,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:34:36,263.263 INFO    ] No update needed
[2026-08-25 06:34:36,266.266 INFO    ] Checking for camera pi updates...
[2026-08-25 06:34:36,300.300 INFO    ] 200
[2026-08-25 06:34:36,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:36,343.343 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:34:36,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:34:36,394.394 INFO    ] No camera update needed
[2026-08-25 06:34:36,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:34:36,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:34:36,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:34:36,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:34:38,449.449 INFO    ] ================================================
[2026-08-25 06:34:38,465.465 INFO    ] Launching Daemon at Tue Aug 25 06:34:38 IST 2026
[2026-08-25 06:34:38,475.475 INFO    ] ================================================
[2026-08-25 06:34:39,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:34:39
[2026-08-25 06:34:39,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:34:40,023.023 INFO    ] Initializing speech engine...
[2026-08-25 06:34:40,037.037 INFO    ] 2026-08-25 06:34:40
[2026-08-25 06:34:40,309.309 INFO    ] 2026-08-25 06:34:40
[2026-08-25 06:34:40,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:34:40,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:34:40,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:34:40,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:34:40,787.787 INFO    ] time= 25/08/2026 06:34:40
[2026-08-25 06:34:40,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:34:40,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:34:40,975.975 INFO    ] No existing commands found in stream
[2026-08-25 06:34:46,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:34:46,006.006 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 06:34:48,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:34:48,619.619 INFO    ] Checking for system updates...
[2026-08-25 06:34:48,654.654 INFO    ] 200
[2026-08-25 06:34:48,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:48,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:34:48,712.712 INFO    ] No update needed
[2026-08-25 06:34:48,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 06:34:48,747.747 INFO    ] 200
[2026-08-25 06:34:48,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:34:48,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:34:48,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:34:48,845.845 INFO    ] No camera update needed
[2026-08-25 06:34:48,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:34:48,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:34:48,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:34:48,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:34:50,899.899 INFO    ] ================================================
[2026-08-25 06:34:50,914.914 INFO    ] Launching Daemon at Tue Aug 25 06:34:50 IST 2026
[2026-08-25 06:34:50,925.925 INFO    ] ================================================
[2026-08-25 06:34:51,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:34:51
[2026-08-25 06:34:52,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:34:52,479.479 INFO    ] Initializing speech engine...
[2026-08-25 06:34:52,487.487 INFO    ] 2026-08-25 06:34:52
[2026-08-25 06:34:52,755.755 INFO    ] 2026-08-25 06:34:52
[2026-08-25 06:34:52,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:34:53,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:34:53,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:34:53,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:34:53,301.301 INFO    ] time= 25/08/2026 06:34:53
[2026-08-25 06:34:53,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:34:53,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:34:53,488.488 INFO    ] No existing commands found in stream
[2026-08-25 06:34:58,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:34:58,517.517 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 06:35:02,778.778 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:35:02,781.781 INFO    ] Checking for system updates...
[2026-08-25 06:35:02,826.826 INFO    ] 200
[2026-08-25 06:35:02,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:02,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:35:02,897.897 INFO    ] No update needed
[2026-08-25 06:35:02,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 06:35:02,937.937 INFO    ] 200
[2026-08-25 06:35:02,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:02,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:35:03,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:35:03,066.066 INFO    ] No camera update needed
[2026-08-25 06:35:03,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:35:03,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:35:03,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:35:03,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:35:05,122.122 INFO    ] ================================================
[2026-08-25 06:35:05,136.136 INFO    ] Launching Daemon at Tue Aug 25 06:35:05 IST 2026
[2026-08-25 06:35:05,147.147 INFO    ] ================================================
[2026-08-25 06:35:05,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:35:05
[2026-08-25 06:35:06,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:35:06,687.687 INFO    ] Initializing speech engine...
[2026-08-25 06:35:06,696.696 INFO    ] 2026-08-25 06:35:06
[2026-08-25 06:35:06,960.960 INFO    ] 2026-08-25 06:35:06
[2026-08-25 06:35:07,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:35:07,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:35:07,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:35:07,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:35:07,427.427 INFO    ] time= 25/08/2026 06:35:07
[2026-08-25 06:35:07,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:35:07,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:35:07,666.666 INFO    ] No existing commands found in stream
[2026-08-25 06:35:12,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:35:12,683.683 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 06:35:14,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:35:14,772.772 INFO    ] Checking for system updates...
[2026-08-25 06:35:14,809.809 INFO    ] 200
[2026-08-25 06:35:14,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:14,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:35:14,867.867 INFO    ] No update needed
[2026-08-25 06:35:14,869.869 INFO    ] Checking for camera pi updates...
[2026-08-25 06:35:14,903.903 INFO    ] 200
[2026-08-25 06:35:14,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:14,945.945 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:35:14,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:35:14,996.996 INFO    ] No camera update needed
[2026-08-25 06:35:14,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:35:15,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:35:15,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:35:15,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:35:17,050.050 INFO    ] ================================================
[2026-08-25 06:35:17,066.066 INFO    ] Launching Daemon at Tue Aug 25 06:35:17 IST 2026
[2026-08-25 06:35:17,076.076 INFO    ] ================================================
[2026-08-25 06:35:17,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:35:17
[2026-08-25 06:35:18,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:35:18,660.660 INFO    ] Initializing speech engine...
[2026-08-25 06:35:18,667.667 INFO    ] 2026-08-25 06:35:18
[2026-08-25 06:35:18,929.929 INFO    ] 2026-08-25 06:35:18
[2026-08-25 06:35:18,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:35:19,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:35:19,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:35:19,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:35:19,389.389 INFO    ] time= 25/08/2026 06:35:19
[2026-08-25 06:35:19,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:35:19,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:35:19,620.620 INFO    ] No existing commands found in stream
[2026-08-25 06:35:24,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:35:24,639.639 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 06:35:27,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:35:27,946.946 INFO    ] Checking for system updates...
[2026-08-25 06:35:27,982.982 INFO    ] 200
[2026-08-25 06:35:27,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:28,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:35:28,039.039 INFO    ] No update needed
[2026-08-25 06:35:28,042.042 INFO    ] Checking for camera pi updates...
[2026-08-25 06:35:28,079.079 INFO    ] 200
[2026-08-25 06:35:28,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:28,121.121 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:35:28,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:35:28,169.169 INFO    ] No camera update needed
[2026-08-25 06:35:28,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:35:28,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:35:28,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:35:28,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:35:30,225.225 INFO    ] ================================================
[2026-08-25 06:35:30,240.240 INFO    ] Launching Daemon at Tue Aug 25 06:35:30 IST 2026
[2026-08-25 06:35:30,251.251 INFO    ] ================================================
[2026-08-25 06:35:30,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:35:30
[2026-08-25 06:35:31,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:35:31,831.831 INFO    ] Initializing speech engine...
[2026-08-25 06:35:31,847.847 INFO    ] 2026-08-25 06:35:31
[2026-08-25 06:35:32,126.126 INFO    ] 2026-08-25 06:35:32
[2026-08-25 06:35:32,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:35:32,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:35:32,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:35:32,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:35:32,707.707 INFO    ] time= 25/08/2026 06:35:32
[2026-08-25 06:35:32,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:35:32,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:35:32,846.846 INFO    ] No existing commands found in stream
[2026-08-25 06:35:37,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:35:37,871.871 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 06:35:41,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:35:41,062.062 INFO    ] Checking for system updates...
[2026-08-25 06:35:41,099.099 INFO    ] 200
[2026-08-25 06:35:41,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:41,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:35:41,157.157 INFO    ] No update needed
[2026-08-25 06:35:41,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 06:35:41,193.193 INFO    ] 200
[2026-08-25 06:35:41,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:41,237.237 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:35:41,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:35:41,288.288 INFO    ] No camera update needed
[2026-08-25 06:35:41,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:35:41,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:35:41,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:35:41,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:35:43,344.344 INFO    ] ================================================
[2026-08-25 06:35:43,359.359 INFO    ] Launching Daemon at Tue Aug 25 06:35:43 IST 2026
[2026-08-25 06:35:43,371.371 INFO    ] ================================================
[2026-08-25 06:35:43,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:35:43
[2026-08-25 06:35:44,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:35:44,822.822 INFO    ] Initializing speech engine...
[2026-08-25 06:35:44,829.829 INFO    ] 2026-08-25 06:35:44
[2026-08-25 06:35:45,088.088 INFO    ] 2026-08-25 06:35:45
[2026-08-25 06:35:45,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:35:45,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:35:45,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:35:45,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:35:45,573.573 INFO    ] time= 25/08/2026 06:35:45
[2026-08-25 06:35:45,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:35:45,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:35:45,787.787 INFO    ] No existing commands found in stream
[2026-08-25 06:35:50,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:35:50,802.802 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 06:35:52,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:35:52,491.491 INFO    ] Checking for system updates...
[2026-08-25 06:35:52,528.528 INFO    ] 200
[2026-08-25 06:35:52,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:52,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:35:52,591.591 INFO    ] No update needed
[2026-08-25 06:35:52,594.594 INFO    ] Checking for camera pi updates...
[2026-08-25 06:35:52,627.627 INFO    ] 200
[2026-08-25 06:35:52,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:35:52,670.670 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:35:52,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:35:52,733.733 INFO    ] No camera update needed
[2026-08-25 06:35:52,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:35:52,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:35:52,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:35:52,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:35:54,790.790 INFO    ] ================================================
[2026-08-25 06:35:54,805.805 INFO    ] Launching Daemon at Tue Aug 25 06:35:54 IST 2026
[2026-08-25 06:35:54,817.817 INFO    ] ================================================
[2026-08-25 06:35:55,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:35:55
[2026-08-25 06:35:56,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:35:56,275.275 INFO    ] Initializing speech engine...
[2026-08-25 06:35:56,284.284 INFO    ] 2026-08-25 06:35:56
[2026-08-25 06:35:56,536.536 INFO    ] 2026-08-25 06:35:56
[2026-08-25 06:35:56,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:35:56,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:35:56,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:35:56,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:35:57,016.016 INFO    ] time= 25/08/2026 06:35:56
[2026-08-25 06:35:57,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:35:57,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:35:57,228.228 INFO    ] No existing commands found in stream
[2026-08-25 06:36:02,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:36:02,247.247 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 06:36:06,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:36:06,308.308 INFO    ] Checking for system updates...
[2026-08-25 06:36:06,343.343 INFO    ] 200
[2026-08-25 06:36:06,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:06,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:36:06,401.401 INFO    ] No update needed
[2026-08-25 06:36:06,404.404 INFO    ] Checking for camera pi updates...
[2026-08-25 06:36:06,439.439 INFO    ] 200
[2026-08-25 06:36:06,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:06,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:36:06,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:36:06,639.639 INFO    ] No camera update needed
[2026-08-25 06:36:06,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:36:06,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:36:06,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:36:06,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:36:08,696.696 INFO    ] ================================================
[2026-08-25 06:36:08,711.711 INFO    ] Launching Daemon at Tue Aug 25 06:36:08 IST 2026
[2026-08-25 06:36:08,722.722 INFO    ] ================================================
[2026-08-25 06:36:09,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:36:09
[2026-08-25 06:36:09,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:36:10,208.208 INFO    ] Initializing speech engine...
[2026-08-25 06:36:10,228.228 INFO    ] 2026-08-25 06:36:10
[2026-08-25 06:36:10,482.482 INFO    ] 2026-08-25 06:36:10
[2026-08-25 06:36:10,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:36:10,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:36:10,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:36:10,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:36:10,862.862 INFO    ] time= 25/08/2026 06:36:10
[2026-08-25 06:36:10,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:36:10,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:36:11,040.040 INFO    ] No existing commands found in stream
[2026-08-25 06:36:16,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:36:16,070.070 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 06:36:19,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:36:19,536.536 INFO    ] Checking for system updates...
[2026-08-25 06:36:19,572.572 INFO    ] 200
[2026-08-25 06:36:19,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:19,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:36:19,633.633 INFO    ] No update needed
[2026-08-25 06:36:19,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 06:36:19,670.670 INFO    ] 200
[2026-08-25 06:36:19,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:19,717.717 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:36:19,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:36:19,772.772 INFO    ] No camera update needed
[2026-08-25 06:36:19,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:36:19,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:36:19,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:36:19,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:36:21,830.830 INFO    ] ================================================
[2026-08-25 06:36:21,845.845 INFO    ] Launching Daemon at Tue Aug 25 06:36:21 IST 2026
[2026-08-25 06:36:21,857.857 INFO    ] ================================================
[2026-08-25 06:36:22,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:36:22
[2026-08-25 06:36:23,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:36:23,467.467 INFO    ] Initializing speech engine...
[2026-08-25 06:36:23,475.475 INFO    ] 2026-08-25 06:36:23
[2026-08-25 06:36:23,732.732 INFO    ] 2026-08-25 06:36:23
[2026-08-25 06:36:23,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:36:24,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:36:24,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:36:24,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:36:24,277.277 INFO    ] time= 25/08/2026 06:36:24
[2026-08-25 06:36:24,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:36:24,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:36:24,426.426 INFO    ] No existing commands found in stream
[2026-08-25 06:36:29,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:36:29,445.445 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 06:36:29,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:36:29,969.969 INFO    ] Checking for system updates...
[2026-08-25 06:36:30,004.004 INFO    ] 200
[2026-08-25 06:36:30,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:30,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:36:30,062.062 INFO    ] No update needed
[2026-08-25 06:36:30,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 06:36:30,098.098 INFO    ] 200
[2026-08-25 06:36:30,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:30,149.149 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:36:30,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:36:30,206.206 INFO    ] No camera update needed
[2026-08-25 06:36:30,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:36:30,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:36:30,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:36:30,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:36:32,262.262 INFO    ] ================================================
[2026-08-25 06:36:32,279.279 INFO    ] Launching Daemon at Tue Aug 25 06:36:32 IST 2026
[2026-08-25 06:36:32,291.291 INFO    ] ================================================
[2026-08-25 06:36:32,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:36:32
[2026-08-25 06:36:33,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:36:33,946.946 INFO    ] Initializing speech engine...
[2026-08-25 06:36:33,959.959 INFO    ] 2026-08-25 06:36:33
[2026-08-25 06:36:34,244.244 INFO    ] 2026-08-25 06:36:34
[2026-08-25 06:36:34,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:36:34,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:36:34,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:36:34,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:36:34,776.776 INFO    ] time= 25/08/2026 06:36:34
[2026-08-25 06:36:34,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:36:34,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:36:34,930.930 INFO    ] No existing commands found in stream
[2026-08-25 06:36:39,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:36:39,962.962 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 06:36:42,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:36:42,883.883 INFO    ] Checking for system updates...
[2026-08-25 06:36:42,925.925 INFO    ] 200
[2026-08-25 06:36:42,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:43,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:36:43,030.030 INFO    ] No update needed
[2026-08-25 06:36:43,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 06:36:43,067.067 INFO    ] 200
[2026-08-25 06:36:43,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:43,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:36:43,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:36:43,160.160 INFO    ] No camera update needed
[2026-08-25 06:36:43,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:36:43,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:36:43,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:36:43,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:36:45,218.218 INFO    ] ================================================
[2026-08-25 06:36:45,233.233 INFO    ] Launching Daemon at Tue Aug 25 06:36:45 IST 2026
[2026-08-25 06:36:45,244.244 INFO    ] ================================================
[2026-08-25 06:36:45,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:36:45
[2026-08-25 06:36:46,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:36:46,654.654 INFO    ] Initializing speech engine...
[2026-08-25 06:36:46,660.660 INFO    ] 2026-08-25 06:36:46
[2026-08-25 06:36:46,956.956 INFO    ] 2026-08-25 06:36:46
[2026-08-25 06:36:46,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:36:47,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:36:47,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:36:47,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:36:47,455.455 INFO    ] time= 25/08/2026 06:36:47
[2026-08-25 06:36:47,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:36:47,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:36:47,658.658 INFO    ] No existing commands found in stream
[2026-08-25 06:36:52,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:36:52,673.673 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 06:36:56,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:36:56,147.147 INFO    ] Checking for system updates...
[2026-08-25 06:36:56,184.184 INFO    ] 200
[2026-08-25 06:36:56,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:56,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:36:56,253.253 INFO    ] No update needed
[2026-08-25 06:36:56,256.256 INFO    ] Checking for camera pi updates...
[2026-08-25 06:36:56,291.291 INFO    ] 200
[2026-08-25 06:36:56,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:36:56,336.336 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:36:56,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:36:56,386.386 INFO    ] No camera update needed
[2026-08-25 06:36:56,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:36:56,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:36:56,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:36:56,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:36:58,443.443 INFO    ] ================================================
[2026-08-25 06:36:58,458.458 INFO    ] Launching Daemon at Tue Aug 25 06:36:58 IST 2026
[2026-08-25 06:36:58,468.468 INFO    ] ================================================
[2026-08-25 06:36:59,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:36:59
[2026-08-25 06:36:59,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:36:59,919.919 INFO    ] Initializing speech engine...
[2026-08-25 06:36:59,929.929 INFO    ] 2026-08-25 06:36:59
[2026-08-25 06:37:00,202.202 INFO    ] 2026-08-25 06:37:00
[2026-08-25 06:37:00,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:37:00,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:37:00,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:37:00,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:37:00,621.621 INFO    ] time= 25/08/2026 06:37:00
[2026-08-25 06:37:00,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:37:00,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:37:00,801.801 INFO    ] No existing commands found in stream
[2026-08-25 06:37:05,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:37:05,824.824 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 06:37:09,189.189 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:37:09,192.192 INFO    ] Checking for system updates...
[2026-08-25 06:37:09,227.227 INFO    ] 200
[2026-08-25 06:37:09,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:09,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:37:09,285.285 INFO    ] No update needed
[2026-08-25 06:37:09,287.287 INFO    ] Checking for camera pi updates...
[2026-08-25 06:37:09,320.320 INFO    ] 200
[2026-08-25 06:37:09,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:09,362.362 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:37:09,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:37:09,421.421 INFO    ] No camera update needed
[2026-08-25 06:37:09,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:37:09,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:37:09,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:37:09,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:37:11,478.478 INFO    ] ================================================
[2026-08-25 06:37:11,493.493 INFO    ] Launching Daemon at Tue Aug 25 06:37:11 IST 2026
[2026-08-25 06:37:11,505.505 INFO    ] ================================================
[2026-08-25 06:37:12,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:37:12
[2026-08-25 06:37:12,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:37:13,036.036 INFO    ] Initializing speech engine...
[2026-08-25 06:37:13,046.046 INFO    ] 2026-08-25 06:37:13
[2026-08-25 06:37:13,291.291 INFO    ] 2026-08-25 06:37:13
[2026-08-25 06:37:13,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:37:13,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:37:13,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:37:13,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:37:13,766.766 INFO    ] time= 25/08/2026 06:37:13
[2026-08-25 06:37:13,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:37:13,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:37:13,968.968 INFO    ] No existing commands found in stream
[2026-08-25 06:37:18,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:37:18,992.992 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 06:37:22,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:37:22,046.046 INFO    ] Checking for system updates...
[2026-08-25 06:37:22,082.082 INFO    ] 200
[2026-08-25 06:37:22,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:22,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:37:22,139.139 INFO    ] No update needed
[2026-08-25 06:37:22,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 06:37:22,174.174 INFO    ] 200
[2026-08-25 06:37:22,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:22,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:37:22,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:37:22,268.268 INFO    ] No camera update needed
[2026-08-25 06:37:22,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:37:22,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:37:22,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:37:22,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:37:24,325.325 INFO    ] ================================================
[2026-08-25 06:37:24,342.342 INFO    ] Launching Daemon at Tue Aug 25 06:37:24 IST 2026
[2026-08-25 06:37:24,358.358 INFO    ] ================================================
[2026-08-25 06:37:24,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:37:24
[2026-08-25 06:37:25,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:37:25,775.775 INFO    ] Initializing speech engine...
[2026-08-25 06:37:25,783.783 INFO    ] 2026-08-25 06:37:25
[2026-08-25 06:37:26,028.028 INFO    ] 2026-08-25 06:37:26
[2026-08-25 06:37:26,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:37:26,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:37:26,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:37:26,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:37:26,522.522 INFO    ] time= 25/08/2026 06:37:26
[2026-08-25 06:37:26,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:37:26,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:37:26,715.715 INFO    ] No existing commands found in stream
[2026-08-25 06:37:31,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:37:31,746.746 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 06:37:36,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:37:36,238.238 INFO    ] Checking for system updates...
[2026-08-25 06:37:36,273.273 INFO    ] 200
[2026-08-25 06:37:36,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:36,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:37:36,333.333 INFO    ] No update needed
[2026-08-25 06:37:36,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 06:37:36,369.369 INFO    ] 200
[2026-08-25 06:37:36,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:36,412.412 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:37:36,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:37:36,482.482 INFO    ] No camera update needed
[2026-08-25 06:37:36,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:37:36,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:37:36,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:37:36,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:37:38,538.538 INFO    ] ================================================
[2026-08-25 06:37:38,553.553 INFO    ] Launching Daemon at Tue Aug 25 06:37:38 IST 2026
[2026-08-25 06:37:38,563.563 INFO    ] ================================================
[2026-08-25 06:37:39,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:37:39
[2026-08-25 06:37:39,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:37:40,029.029 INFO    ] Initializing speech engine...
[2026-08-25 06:37:40,054.054 INFO    ] 2026-08-25 06:37:40
[2026-08-25 06:37:40,329.329 INFO    ] 2026-08-25 06:37:40
[2026-08-25 06:37:40,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:37:40,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:37:40,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:37:40,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:37:40,714.714 INFO    ] time= 25/08/2026 06:37:40
[2026-08-25 06:37:40,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:37:40,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:37:40,843.843 INFO    ] No existing commands found in stream
[2026-08-25 06:37:45,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:37:45,871.871 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 06:37:47,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:37:47,786.786 INFO    ] Checking for system updates...
[2026-08-25 06:37:47,822.822 INFO    ] 200
[2026-08-25 06:37:47,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:47,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:37:47,879.879 INFO    ] No update needed
[2026-08-25 06:37:47,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 06:37:47,916.916 INFO    ] 200
[2026-08-25 06:37:47,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:37:47,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:37:48,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:37:48,029.029 INFO    ] No camera update needed
[2026-08-25 06:37:48,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:37:48,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:37:48,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:37:48,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:37:50,084.084 INFO    ] ================================================
[2026-08-25 06:37:50,099.099 INFO    ] Launching Daemon at Tue Aug 25 06:37:50 IST 2026
[2026-08-25 06:37:50,110.110 INFO    ] ================================================
[2026-08-25 06:37:50,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:37:50
[2026-08-25 06:37:51,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:37:51,531.531 INFO    ] Initializing speech engine...
[2026-08-25 06:37:51,542.542 INFO    ] 2026-08-25 06:37:51
[2026-08-25 06:37:51,792.792 INFO    ] 2026-08-25 06:37:51
[2026-08-25 06:37:51,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:37:52,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:37:52,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:37:52,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:37:52,170.170 INFO    ] time= 25/08/2026 06:37:52
[2026-08-25 06:37:52,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:37:52,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:37:52,337.337 INFO    ] No existing commands found in stream
[2026-08-25 06:37:57,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:37:57,365.365 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 06:38:00,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:38:00,575.575 INFO    ] Checking for system updates...
[2026-08-25 06:38:00,610.610 INFO    ] 200
[2026-08-25 06:38:00,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:00,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:00,667.667 INFO    ] No update needed
[2026-08-25 06:38:00,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 06:38:00,707.707 INFO    ] 200
[2026-08-25 06:38:00,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:00,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:38:00,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:00,801.801 INFO    ] No camera update needed
[2026-08-25 06:38:00,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:38:00,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:38:00,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:38:00,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:38:02,861.861 INFO    ] ================================================
[2026-08-25 06:38:02,877.877 INFO    ] Launching Daemon at Tue Aug 25 06:38:02 IST 2026
[2026-08-25 06:38:02,888.888 INFO    ] ================================================
[2026-08-25 06:38:03,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:38:03
[2026-08-25 06:38:04,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:38:04,363.363 INFO    ] Initializing speech engine...
[2026-08-25 06:38:04,372.372 INFO    ] 2026-08-25 06:38:04
[2026-08-25 06:38:04,620.620 INFO    ] 2026-08-25 06:38:04
[2026-08-25 06:38:04,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:38:04,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:38:04,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:38:05,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:38:05,111.111 INFO    ] time= 25/08/2026 06:38:05
[2026-08-25 06:38:05,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:38:05,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:38:05,321.321 INFO    ] No existing commands found in stream
[2026-08-25 06:38:10,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:38:10,343.343 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 06:38:12,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:38:12,589.589 INFO    ] Checking for system updates...
[2026-08-25 06:38:12,624.624 INFO    ] 200
[2026-08-25 06:38:12,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:12,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:38:12,682.682 INFO    ] No update needed
[2026-08-25 06:38:12,684.684 INFO    ] Checking for camera pi updates...
[2026-08-25 06:38:12,718.718 INFO    ] 200
[2026-08-25 06:38:12,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:12,760.760 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:38:12,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:38:12,906.906 INFO    ] No camera update needed
[2026-08-25 06:38:12,908.908 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:38:12,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:38:12,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:38:12,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:38:14,959.959 INFO    ] ================================================
[2026-08-25 06:38:14,974.974 INFO    ] Launching Daemon at Tue Aug 25 06:38:14 IST 2026
[2026-08-25 06:38:14,985.985 INFO    ] ================================================
[2026-08-25 06:38:15,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:38:15
[2026-08-25 06:38:16,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:38:16,381.381 INFO    ] Initializing speech engine...
[2026-08-25 06:38:16,399.399 INFO    ] 2026-08-25 06:38:16
[2026-08-25 06:38:16,658.658 INFO    ] 2026-08-25 06:38:16
[2026-08-25 06:38:16,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:38:16,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:38:16,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:38:17,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:38:17,136.136 INFO    ] time= 25/08/2026 06:38:17
[2026-08-25 06:38:17,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:38:17,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:38:17,344.344 INFO    ] No existing commands found in stream
[2026-08-25 06:38:22,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:38:22,364.364 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 06:38:26,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:38:26,241.241 INFO    ] Checking for system updates...
[2026-08-25 06:38:26,276.276 INFO    ] 200
[2026-08-25 06:38:26,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:26,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:26,333.333 INFO    ] No update needed
[2026-08-25 06:38:26,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 06:38:26,368.368 INFO    ] 200
[2026-08-25 06:38:26,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:26,410.410 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:38:26,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:26,458.458 INFO    ] No camera update needed
[2026-08-25 06:38:26,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:38:26,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:38:26,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:38:26,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:38:28,513.513 INFO    ] ================================================
[2026-08-25 06:38:28,529.529 INFO    ] Launching Daemon at Tue Aug 25 06:38:28 IST 2026
[2026-08-25 06:38:28,539.539 INFO    ] ================================================
[2026-08-25 06:38:29,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:38:29
[2026-08-25 06:38:29,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:38:29,994.994 INFO    ] Initializing speech engine...
[2026-08-25 06:38:30,003.003 INFO    ] 2026-08-25 06:38:29
[2026-08-25 06:38:30,247.247 INFO    ] 2026-08-25 06:38:30
[2026-08-25 06:38:30,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:38:30,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:38:30,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:38:30,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:38:30,717.717 INFO    ] time= 25/08/2026 06:38:30
[2026-08-25 06:38:30,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:38:30,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:38:30,869.869 INFO    ] No existing commands found in stream
[2026-08-25 06:38:35,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:38:35,895.895 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 06:38:36,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:38:36,921.921 INFO    ] Checking for system updates...
[2026-08-25 06:38:36,958.958 INFO    ] 200
[2026-08-25 06:38:36,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:37,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:37,022.022 INFO    ] No update needed
[2026-08-25 06:38:37,026.026 INFO    ] Checking for camera pi updates...
[2026-08-25 06:38:37,064.064 INFO    ] 200
[2026-08-25 06:38:37,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:37,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:38:37,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:37,165.165 INFO    ] No camera update needed
[2026-08-25 06:38:37,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:38:37,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:38:37,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:38:37,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:38:39,222.222 INFO    ] ================================================
[2026-08-25 06:38:39,238.238 INFO    ] Launching Daemon at Tue Aug 25 06:38:39 IST 2026
[2026-08-25 06:38:39,249.249 INFO    ] ================================================
[2026-08-25 06:38:39,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:38:39
[2026-08-25 06:38:40,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:38:40,691.691 INFO    ] Initializing speech engine...
[2026-08-25 06:38:40,701.701 INFO    ] 2026-08-25 06:38:40
[2026-08-25 06:38:40,945.945 INFO    ] 2026-08-25 06:38:40
[2026-08-25 06:38:40,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:38:41,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:38:41,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:38:41,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:38:41,484.484 INFO    ] time= 25/08/2026 06:38:41
[2026-08-25 06:38:41,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:38:41,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:38:41,653.653 INFO    ] No existing commands found in stream
[2026-08-25 06:38:46,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:38:46,668.668 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 06:38:47,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:38:47,138.138 INFO    ] Checking for system updates...
[2026-08-25 06:38:47,173.173 INFO    ] 200
[2026-08-25 06:38:47,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:47,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:47,231.231 INFO    ] No update needed
[2026-08-25 06:38:47,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 06:38:47,271.271 INFO    ] 200
[2026-08-25 06:38:47,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:47,314.314 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:38:47,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:38:47,361.361 INFO    ] No camera update needed
[2026-08-25 06:38:47,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:38:47,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:38:47,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:38:47,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:38:49,416.416 INFO    ] ================================================
[2026-08-25 06:38:49,432.432 INFO    ] Launching Daemon at Tue Aug 25 06:38:49 IST 2026
[2026-08-25 06:38:49,443.443 INFO    ] ================================================
[2026-08-25 06:38:50,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:38:50
[2026-08-25 06:38:50,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:38:50,860.860 INFO    ] Initializing speech engine...
[2026-08-25 06:38:50,867.867 INFO    ] 2026-08-25 06:38:50
[2026-08-25 06:38:51,109.109 INFO    ] 2026-08-25 06:38:51
[2026-08-25 06:38:51,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:38:51,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:38:51,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:38:51,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:38:51,575.575 INFO    ] time= 25/08/2026 06:38:51
[2026-08-25 06:38:51,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:38:51,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:38:51,800.800 INFO    ] No existing commands found in stream
[2026-08-25 06:38:56,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:38:56,831.831 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 06:38:58,640.640 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:38:58,643.643 INFO    ] Checking for system updates...
[2026-08-25 06:38:58,680.680 INFO    ] 200
[2026-08-25 06:38:58,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:58,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:38:58,738.738 INFO    ] No update needed
[2026-08-25 06:38:58,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 06:38:58,775.775 INFO    ] 200
[2026-08-25 06:38:58,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:38:58,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:38:58,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:38:58,868.868 INFO    ] No camera update needed
[2026-08-25 06:38:58,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:38:58,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:38:58,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:38:58,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:39:00,927.927 INFO    ] ================================================
[2026-08-25 06:39:00,942.942 INFO    ] Launching Daemon at Tue Aug 25 06:39:00 IST 2026
[2026-08-25 06:39:00,953.953 INFO    ] ================================================
[2026-08-25 06:39:01,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:39:01
[2026-08-25 06:39:02,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:39:02,618.618 INFO    ] Initializing speech engine...
[2026-08-25 06:39:02,628.628 INFO    ] 2026-08-25 06:39:02
[2026-08-25 06:39:02,921.921 INFO    ] 2026-08-25 06:39:02
[2026-08-25 06:39:02,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:39:03,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:39:03,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:39:03,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:39:03,428.428 INFO    ] time= 25/08/2026 06:39:03
[2026-08-25 06:39:03,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:39:03,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:39:03,594.594 INFO    ] No existing commands found in stream
[2026-08-25 06:39:08,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:39:08,628.628 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 06:39:11,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:39:11,265.265 INFO    ] Checking for system updates...
[2026-08-25 06:39:11,301.301 INFO    ] 200
[2026-08-25 06:39:11,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:11,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:39:11,368.368 INFO    ] No update needed
[2026-08-25 06:39:11,370.370 INFO    ] Checking for camera pi updates...
[2026-08-25 06:39:11,403.403 INFO    ] 200
[2026-08-25 06:39:11,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:11,451.451 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:39:11,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:39:11,501.501 INFO    ] No camera update needed
[2026-08-25 06:39:11,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:39:11,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:39:11,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:39:11,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:39:13,555.555 INFO    ] ================================================
[2026-08-25 06:39:13,570.570 INFO    ] Launching Daemon at Tue Aug 25 06:39:13 IST 2026
[2026-08-25 06:39:13,581.581 INFO    ] ================================================
[2026-08-25 06:39:14,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:39:14
[2026-08-25 06:39:14,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:39:14,981.981 INFO    ] Initializing speech engine...
[2026-08-25 06:39:14,989.989 INFO    ] 2026-08-25 06:39:14
[2026-08-25 06:39:15,280.280 INFO    ] 2026-08-25 06:39:15
[2026-08-25 06:39:15,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:39:15,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:39:15,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:39:15,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:39:15,686.686 INFO    ] time= 25/08/2026 06:39:15
[2026-08-25 06:39:15,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:39:15,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:39:15,843.843 INFO    ] No existing commands found in stream
[2026-08-25 06:39:20,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:39:20,871.871 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 06:39:24,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:39:24,947.947 INFO    ] Checking for system updates...
[2026-08-25 06:39:24,983.983 INFO    ] 200
[2026-08-25 06:39:24,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:25,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:39:25,046.046 INFO    ] No update needed
[2026-08-25 06:39:25,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 06:39:25,082.082 INFO    ] 200
[2026-08-25 06:39:25,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:25,125.125 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:39:25,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:39:25,183.183 INFO    ] No camera update needed
[2026-08-25 06:39:25,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:39:25,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:39:25,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:39:25,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:39:27,237.237 INFO    ] ================================================
[2026-08-25 06:39:27,252.252 INFO    ] Launching Daemon at Tue Aug 25 06:39:27 IST 2026
[2026-08-25 06:39:27,263.263 INFO    ] ================================================
[2026-08-25 06:39:27,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:39:27
[2026-08-25 06:39:28,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:39:28,861.861 INFO    ] Initializing speech engine...
[2026-08-25 06:39:28,874.874 INFO    ] 2026-08-25 06:39:28
[2026-08-25 06:39:29,184.184 INFO    ] 2026-08-25 06:39:29
[2026-08-25 06:39:29,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:39:29,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:39:29,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:39:29,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:39:29,683.683 INFO    ] time= 25/08/2026 06:39:29
[2026-08-25 06:39:29,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:39:29,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:39:29,839.839 INFO    ] No existing commands found in stream
[2026-08-25 06:39:34,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:39:34,856.856 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 06:39:38,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:39:38,395.395 INFO    ] Checking for system updates...
[2026-08-25 06:39:38,431.431 INFO    ] 200
[2026-08-25 06:39:38,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:38,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:39:38,489.489 INFO    ] No update needed
[2026-08-25 06:39:38,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 06:39:38,526.526 INFO    ] 200
[2026-08-25 06:39:38,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:38,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:39:38,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:39:38,627.627 INFO    ] No camera update needed
[2026-08-25 06:39:38,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:39:38,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:39:38,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:39:38,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:39:40,685.685 INFO    ] ================================================
[2026-08-25 06:39:40,700.700 INFO    ] Launching Daemon at Tue Aug 25 06:39:40 IST 2026
[2026-08-25 06:39:40,711.711 INFO    ] ================================================
[2026-08-25 06:39:41,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:39:41
[2026-08-25 06:39:41,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:39:42,271.271 INFO    ] Initializing speech engine...
[2026-08-25 06:39:42,280.280 INFO    ] 2026-08-25 06:39:42
[2026-08-25 06:39:42,552.552 INFO    ] 2026-08-25 06:39:42
[2026-08-25 06:39:42,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:39:42,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:39:42,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:39:42,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:39:43,035.035 INFO    ] time= 25/08/2026 06:39:42
[2026-08-25 06:39:43,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:39:43,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:39:43,229.229 INFO    ] No existing commands found in stream
[2026-08-25 06:39:48,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:39:48,262.262 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 06:39:48,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:39:48,985.985 INFO    ] Checking for system updates...
[2026-08-25 06:39:49,022.022 INFO    ] 200
[2026-08-25 06:39:49,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:49,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:39:49,081.081 INFO    ] No update needed
[2026-08-25 06:39:49,084.084 INFO    ] Checking for camera pi updates...
[2026-08-25 06:39:49,121.121 INFO    ] 200
[2026-08-25 06:39:49,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:39:49,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:39:49,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:39:49,218.218 INFO    ] No camera update needed
[2026-08-25 06:39:49,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:39:49,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:39:49,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:39:49,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:39:51,276.276 INFO    ] ================================================
[2026-08-25 06:39:51,291.291 INFO    ] Launching Daemon at Tue Aug 25 06:39:51 IST 2026
[2026-08-25 06:39:51,301.301 INFO    ] ================================================
[2026-08-25 06:39:51,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:39:51
[2026-08-25 06:39:52,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:39:52,767.767 INFO    ] Initializing speech engine...
[2026-08-25 06:39:52,776.776 INFO    ] 2026-08-25 06:39:52
[2026-08-25 06:39:53,025.025 INFO    ] 2026-08-25 06:39:53
[2026-08-25 06:39:53,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:39:53,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:39:53,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:39:53,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:39:53,400.400 INFO    ] time= 25/08/2026 06:39:53
[2026-08-25 06:39:53,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:39:53,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:39:53,595.595 INFO    ] No existing commands found in stream
[2026-08-25 06:39:58,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:39:58,614.614 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 06:40:01,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:40:01,158.158 INFO    ] Checking for system updates...
[2026-08-25 06:40:01,195.195 INFO    ] 200
[2026-08-25 06:40:01,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:01,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:40:01,256.256 INFO    ] No update needed
[2026-08-25 06:40:01,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 06:40:01,348.348 INFO    ] 200
[2026-08-25 06:40:01,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:01,528.528 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:40:01,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:40:01,600.600 INFO    ] No camera update needed
[2026-08-25 06:40:01,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:40:01,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:40:01,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:40:01,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:40:03,721.721 INFO    ] ================================================
[2026-08-25 06:40:03,736.736 INFO    ] Launching Daemon at Tue Aug 25 06:40:03 IST 2026
[2026-08-25 06:40:03,747.747 INFO    ] ================================================
[2026-08-25 06:40:04,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:40:04
[2026-08-25 06:40:05,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:40:05,372.372 INFO    ] Initializing speech engine...
[2026-08-25 06:40:05,386.386 INFO    ] 2026-08-25 06:40:05
[2026-08-25 06:40:05,667.667 INFO    ] 2026-08-25 06:40:05
[2026-08-25 06:40:05,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:40:05,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:40:05,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:40:06,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:40:06,202.202 INFO    ] time= 25/08/2026 06:40:06
[2026-08-25 06:40:06,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:40:06,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:40:06,355.355 INFO    ] No existing commands found in stream
[2026-08-25 06:40:11,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:40:11,379.379 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 06:40:12,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:40:12,008.008 INFO    ] Checking for system updates...
[2026-08-25 06:40:12,045.045 INFO    ] 200
[2026-08-25 06:40:12,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:12,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:40:12,111.111 INFO    ] No update needed
[2026-08-25 06:40:12,114.114 INFO    ] Checking for camera pi updates...
[2026-08-25 06:40:12,148.148 INFO    ] 200
[2026-08-25 06:40:12,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:12,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:40:12,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:40:12,243.243 INFO    ] No camera update needed
[2026-08-25 06:40:12,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:40:12,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:40:12,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:40:12,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:40:14,301.301 INFO    ] ================================================
[2026-08-25 06:40:14,316.316 INFO    ] Launching Daemon at Tue Aug 25 06:40:14 IST 2026
[2026-08-25 06:40:14,327.327 INFO    ] ================================================
[2026-08-25 06:40:14,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:40:14
[2026-08-25 06:40:15,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:40:15,970.970 INFO    ] Initializing speech engine...
[2026-08-25 06:40:15,983.983 INFO    ] 2026-08-25 06:40:15
[2026-08-25 06:40:16,269.269 INFO    ] 2026-08-25 06:40:16
[2026-08-25 06:40:16,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:40:16,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:40:16,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:40:16,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:40:16,800.800 INFO    ] time= 25/08/2026 06:40:16
[2026-08-25 06:40:16,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:40:16,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:40:17,018.018 INFO    ] No existing commands found in stream
[2026-08-25 06:40:22,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:40:22,051.051 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 06:40:25,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:40:25,687.687 INFO    ] Checking for system updates...
[2026-08-25 06:40:25,725.725 INFO    ] 200
[2026-08-25 06:40:25,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:25,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:40:25,791.791 INFO    ] No update needed
[2026-08-25 06:40:25,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 06:40:25,829.829 INFO    ] 200
[2026-08-25 06:40:25,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:25,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:40:26,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:40:26,026.026 INFO    ] No camera update needed
[2026-08-25 06:40:26,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:40:26,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:40:26,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:40:26,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:40:28,085.085 INFO    ] ================================================
[2026-08-25 06:40:28,101.101 INFO    ] Launching Daemon at Tue Aug 25 06:40:28 IST 2026
[2026-08-25 06:40:28,112.112 INFO    ] ================================================
[2026-08-25 06:40:28,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:40:28
[2026-08-25 06:40:29,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:40:29,533.533 INFO    ] Initializing speech engine...
[2026-08-25 06:40:29,542.542 INFO    ] 2026-08-25 06:40:29
[2026-08-25 06:40:29,793.793 INFO    ] 2026-08-25 06:40:29
[2026-08-25 06:40:29,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:40:30,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:40:30,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:40:30,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:40:30,269.269 INFO    ] time= 25/08/2026 06:40:30
[2026-08-25 06:40:30,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:40:30,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:40:30,473.473 INFO    ] No existing commands found in stream
[2026-08-25 06:40:35,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:40:35,502.502 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 06:40:37,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:40:37,132.132 INFO    ] Checking for system updates...
[2026-08-25 06:40:37,167.167 INFO    ] 200
[2026-08-25 06:40:37,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:37,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:40:37,225.225 INFO    ] No update needed
[2026-08-25 06:40:37,227.227 INFO    ] Checking for camera pi updates...
[2026-08-25 06:40:37,260.260 INFO    ] 200
[2026-08-25 06:40:37,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:37,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:40:37,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:40:37,354.354 INFO    ] No camera update needed
[2026-08-25 06:40:37,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:40:37,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:40:37,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:40:37,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:40:39,408.408 INFO    ] ================================================
[2026-08-25 06:40:39,424.424 INFO    ] Launching Daemon at Tue Aug 25 06:40:39 IST 2026
[2026-08-25 06:40:39,435.435 INFO    ] ================================================
[2026-08-25 06:40:40,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:40:40
[2026-08-25 06:40:40,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:40:40,889.889 INFO    ] Initializing speech engine...
[2026-08-25 06:40:40,897.897 INFO    ] 2026-08-25 06:40:40
[2026-08-25 06:40:41,190.190 INFO    ] 2026-08-25 06:40:41
[2026-08-25 06:40:41,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:40:41,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:40:41,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:40:41,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:40:41,608.608 INFO    ] time= 25/08/2026 06:40:41
[2026-08-25 06:40:41,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:40:41,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:40:41,784.784 INFO    ] No existing commands found in stream
[2026-08-25 06:40:46,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:40:46,817.817 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 06:40:50,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:40:50,456.456 INFO    ] Checking for system updates...
[2026-08-25 06:40:50,491.491 INFO    ] 200
[2026-08-25 06:40:50,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:50,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:40:50,549.549 INFO    ] No update needed
[2026-08-25 06:40:50,551.551 INFO    ] Checking for camera pi updates...
[2026-08-25 06:40:50,584.584 INFO    ] 200
[2026-08-25 06:40:50,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:40:50,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:40:50,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:40:50,686.686 INFO    ] No camera update needed
[2026-08-25 06:40:50,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:40:50,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:40:50,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:40:50,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:40:52,738.738 INFO    ] ================================================
[2026-08-25 06:40:52,754.754 INFO    ] Launching Daemon at Tue Aug 25 06:40:52 IST 2026
[2026-08-25 06:40:52,765.765 INFO    ] ================================================
[2026-08-25 06:40:53,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:40:53
[2026-08-25 06:40:53,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:40:54,219.219 INFO    ] Initializing speech engine...
[2026-08-25 06:40:54,225.225 INFO    ] 2026-08-25 06:40:54
[2026-08-25 06:40:54,517.517 INFO    ] 2026-08-25 06:40:54
[2026-08-25 06:40:54,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:40:54,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:40:54,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:40:54,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:40:54,915.915 INFO    ] time= 25/08/2026 06:40:54
[2026-08-25 06:40:54,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:40:54,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:40:55,106.106 INFO    ] No existing commands found in stream
[2026-08-25 06:41:00,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:41:00,124.124 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 06:41:01,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:41:01,295.295 INFO    ] Checking for system updates...
[2026-08-25 06:41:01,330.330 INFO    ] 200
[2026-08-25 06:41:01,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:01,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:41:01,392.392 INFO    ] No update needed
[2026-08-25 06:41:01,395.395 INFO    ] Checking for camera pi updates...
[2026-08-25 06:41:01,428.428 INFO    ] 200
[2026-08-25 06:41:01,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:01,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:41:01,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:41:01,525.525 INFO    ] No camera update needed
[2026-08-25 06:41:01,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:41:01,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:41:01,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:41:01,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:41:03,581.581 INFO    ] ================================================
[2026-08-25 06:41:03,596.596 INFO    ] Launching Daemon at Tue Aug 25 06:41:03 IST 2026
[2026-08-25 06:41:03,607.607 INFO    ] ================================================
[2026-08-25 06:41:04,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:41:04
[2026-08-25 06:41:04,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:41:05,054.054 INFO    ] Initializing speech engine...
[2026-08-25 06:41:05,063.063 INFO    ] 2026-08-25 06:41:05
[2026-08-25 06:41:05,382.382 INFO    ] 2026-08-25 06:41:05
[2026-08-25 06:41:05,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:41:05,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:41:05,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:41:05,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:41:05,887.887 INFO    ] time= 25/08/2026 06:41:05
[2026-08-25 06:41:05,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:41:05,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:41:06,042.042 INFO    ] No existing commands found in stream
[2026-08-25 06:41:11,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:41:11,068.068 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 06:41:14,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:41:14,725.725 INFO    ] Checking for system updates...
[2026-08-25 06:41:14,761.761 INFO    ] 200
[2026-08-25 06:41:14,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:14,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:41:14,821.821 INFO    ] No update needed
[2026-08-25 06:41:14,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 06:41:14,862.862 INFO    ] 200
[2026-08-25 06:41:14,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:14,904.904 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:41:14,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:41:14,959.959 INFO    ] No camera update needed
[2026-08-25 06:41:14,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:41:14,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:41:14,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:41:14,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:41:17,014.014 INFO    ] ================================================
[2026-08-25 06:41:17,029.029 INFO    ] Launching Daemon at Tue Aug 25 06:41:17 IST 2026
[2026-08-25 06:41:17,040.040 INFO    ] ================================================
[2026-08-25 06:41:17,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:41:17
[2026-08-25 06:41:18,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:41:18,462.462 INFO    ] Initializing speech engine...
[2026-08-25 06:41:18,470.470 INFO    ] 2026-08-25 06:41:18
[2026-08-25 06:41:18,719.719 INFO    ] 2026-08-25 06:41:18
[2026-08-25 06:41:18,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:41:18,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:41:19,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:41:19,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:41:19,194.194 INFO    ] time= 25/08/2026 06:41:19
[2026-08-25 06:41:19,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:41:19,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:41:19,352.352 INFO    ] No existing commands found in stream
[2026-08-25 06:41:24,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:41:24,367.367 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 06:41:25,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:41:25,580.580 INFO    ] Checking for system updates...
[2026-08-25 06:41:25,617.617 INFO    ] 200
[2026-08-25 06:41:25,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:25,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:41:25,682.682 INFO    ] No update needed
[2026-08-25 06:41:25,685.685 INFO    ] Checking for camera pi updates...
[2026-08-25 06:41:25,719.719 INFO    ] 200
[2026-08-25 06:41:25,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:25,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:41:25,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:41:25,811.811 INFO    ] No camera update needed
[2026-08-25 06:41:25,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:41:25,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:41:25,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:41:25,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:41:27,865.865 INFO    ] ================================================
[2026-08-25 06:41:27,881.881 INFO    ] Launching Daemon at Tue Aug 25 06:41:27 IST 2026
[2026-08-25 06:41:27,892.892 INFO    ] ================================================
[2026-08-25 06:41:28,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:41:28
[2026-08-25 06:41:29,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:41:29,315.315 INFO    ] Initializing speech engine...
[2026-08-25 06:41:29,324.324 INFO    ] 2026-08-25 06:41:29
[2026-08-25 06:41:29,572.572 INFO    ] 2026-08-25 06:41:29
[2026-08-25 06:41:29,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:41:29,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:41:29,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:41:29,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:41:30,022.022 INFO    ] time= 25/08/2026 06:41:29
[2026-08-25 06:41:30,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:41:30,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:41:30,216.216 INFO    ] No existing commands found in stream
[2026-08-25 06:41:35,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:41:35,248.248 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 06:41:39,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:41:39,420.420 INFO    ] Checking for system updates...
[2026-08-25 06:41:39,455.455 INFO    ] 200
[2026-08-25 06:41:39,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:39,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:41:39,513.513 INFO    ] No update needed
[2026-08-25 06:41:39,515.515 INFO    ] Checking for camera pi updates...
[2026-08-25 06:41:39,549.549 INFO    ] 200
[2026-08-25 06:41:39,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:39,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:41:39,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:41:39,644.644 INFO    ] No camera update needed
[2026-08-25 06:41:39,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:41:39,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:41:39,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:41:39,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:41:41,698.698 INFO    ] ================================================
[2026-08-25 06:41:41,714.714 INFO    ] Launching Daemon at Tue Aug 25 06:41:41 IST 2026
[2026-08-25 06:41:41,725.725 INFO    ] ================================================
[2026-08-25 06:41:42,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:41:42
[2026-08-25 06:41:43,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:41:43,357.357 INFO    ] Initializing speech engine...
[2026-08-25 06:41:43,372.372 INFO    ] 2026-08-25 06:41:43
[2026-08-25 06:41:43,655.655 INFO    ] 2026-08-25 06:41:43
[2026-08-25 06:41:43,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:41:43,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:41:43,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:41:44,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:41:44,127.127 INFO    ] time= 25/08/2026 06:41:44
[2026-08-25 06:41:44,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:41:44,214.214 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:41:44,340.340 INFO    ] No existing commands found in stream
[2026-08-25 06:41:49,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:41:49,374.374 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 06:41:50,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:41:50,565.565 INFO    ] Checking for system updates...
[2026-08-25 06:41:50,602.602 INFO    ] 200
[2026-08-25 06:41:50,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:50,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:41:50,668.668 INFO    ] No update needed
[2026-08-25 06:41:50,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 06:41:50,705.705 INFO    ] 200
[2026-08-25 06:41:50,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:41:50,755.755 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:41:50,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:41:50,806.806 INFO    ] No camera update needed
[2026-08-25 06:41:50,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:41:50,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:41:50,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:41:50,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:41:52,862.862 INFO    ] ================================================
[2026-08-25 06:41:52,878.878 INFO    ] Launching Daemon at Tue Aug 25 06:41:52 IST 2026
[2026-08-25 06:41:52,889.889 INFO    ] ================================================
[2026-08-25 06:41:53,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:41:53
[2026-08-25 06:41:54,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:41:54,339.339 INFO    ] Initializing speech engine...
[2026-08-25 06:41:54,348.348 INFO    ] 2026-08-25 06:41:54
[2026-08-25 06:41:54,598.598 INFO    ] 2026-08-25 06:41:54
[2026-08-25 06:41:54,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:41:54,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:41:54,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:41:55,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:41:55,094.094 INFO    ] time= 25/08/2026 06:41:55
[2026-08-25 06:41:55,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:41:55,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:41:55,309.309 INFO    ] No existing commands found in stream
[2026-08-25 06:42:00,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:42:00,353.353 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 06:42:02,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:42:02,964.964 INFO    ] Checking for system updates...
[2026-08-25 06:42:03,013.013 INFO    ] 200
[2026-08-25 06:42:03,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:03,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:03,079.079 INFO    ] No update needed
[2026-08-25 06:42:03,083.083 INFO    ] Checking for camera pi updates...
[2026-08-25 06:42:03,123.123 INFO    ] 200
[2026-08-25 06:42:03,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:03,178.178 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:42:03,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:03,236.236 INFO    ] No camera update needed
[2026-08-25 06:42:03,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:42:03,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:42:03,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:42:03,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:42:05,291.291 INFO    ] ================================================
[2026-08-25 06:42:05,307.307 INFO    ] Launching Daemon at Tue Aug 25 06:42:05 IST 2026
[2026-08-25 06:42:05,318.318 INFO    ] ================================================
[2026-08-25 06:42:05,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:42:05
[2026-08-25 06:42:06,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:42:06,905.905 INFO    ] Initializing speech engine...
[2026-08-25 06:42:06,914.914 INFO    ] 2026-08-25 06:42:06
[2026-08-25 06:42:07,160.160 INFO    ] 2026-08-25 06:42:07
[2026-08-25 06:42:07,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:42:07,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:42:07,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:42:07,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:42:07,632.632 INFO    ] time= 25/08/2026 06:42:07
[2026-08-25 06:42:07,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:42:07,717.717 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:42:07,824.824 INFO    ] No existing commands found in stream
[2026-08-25 06:42:12,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:42:12,854.854 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 06:42:13,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:42:13,571.571 INFO    ] Checking for system updates...
[2026-08-25 06:42:13,607.607 INFO    ] 200
[2026-08-25 06:42:13,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:13,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:13,668.668 INFO    ] No update needed
[2026-08-25 06:42:13,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 06:42:13,712.712 INFO    ] 200
[2026-08-25 06:42:13,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:13,759.759 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:42:13,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:13,811.811 INFO    ] No camera update needed
[2026-08-25 06:42:13,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:42:13,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:42:13,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:42:13,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:42:15,867.867 INFO    ] ================================================
[2026-08-25 06:42:15,882.882 INFO    ] Launching Daemon at Tue Aug 25 06:42:15 IST 2026
[2026-08-25 06:42:15,893.893 INFO    ] ================================================
[2026-08-25 06:42:16,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:42:16
[2026-08-25 06:42:17,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:42:17,289.289 INFO    ] Initializing speech engine...
[2026-08-25 06:42:17,311.311 INFO    ] 2026-08-25 06:42:17
[2026-08-25 06:42:17,567.567 INFO    ] 2026-08-25 06:42:17
[2026-08-25 06:42:17,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:42:17,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:42:17,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:42:17,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:42:17,946.946 INFO    ] time= 25/08/2026 06:42:17
[2026-08-25 06:42:17,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:42:17,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:42:18,126.126 INFO    ] No existing commands found in stream
[2026-08-25 06:42:23,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:42:23,154.154 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 06:42:24,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:42:24,308.308 INFO    ] Checking for system updates...
[2026-08-25 06:42:24,344.344 INFO    ] 200
[2026-08-25 06:42:24,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:24,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:24,401.401 INFO    ] No update needed
[2026-08-25 06:42:24,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 06:42:24,436.436 INFO    ] 200
[2026-08-25 06:42:24,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:24,479.479 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:42:24,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:24,536.536 INFO    ] No camera update needed
[2026-08-25 06:42:24,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:42:24,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:42:24,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:42:24,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:42:26,591.591 INFO    ] ================================================
[2026-08-25 06:42:26,607.607 INFO    ] Launching Daemon at Tue Aug 25 06:42:26 IST 2026
[2026-08-25 06:42:26,618.618 INFO    ] ================================================
[2026-08-25 06:42:27,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:42:27
[2026-08-25 06:42:27,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:42:28,136.136 INFO    ] Initializing speech engine...
[2026-08-25 06:42:28,159.159 INFO    ] 2026-08-25 06:42:28
[2026-08-25 06:42:28,414.414 INFO    ] 2026-08-25 06:42:28
[2026-08-25 06:42:28,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:42:28,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:42:28,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:42:28,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:42:28,789.789 INFO    ] time= 25/08/2026 06:42:28
[2026-08-25 06:42:28,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:42:28,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:42:28,974.974 INFO    ] No existing commands found in stream
[2026-08-25 06:42:33,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:42:34,000.000 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 06:42:37,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:42:37,864.864 INFO    ] Checking for system updates...
[2026-08-25 06:42:37,899.899 INFO    ] 200
[2026-08-25 06:42:37,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:37,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:37,957.957 INFO    ] No update needed
[2026-08-25 06:42:37,960.960 INFO    ] Checking for camera pi updates...
[2026-08-25 06:42:37,993.993 INFO    ] 200
[2026-08-25 06:42:37,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:38,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:42:38,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:38,082.082 INFO    ] No camera update needed
[2026-08-25 06:42:38,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:42:38,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:42:38,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:42:38,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:42:40,139.139 INFO    ] ================================================
[2026-08-25 06:42:40,154.154 INFO    ] Launching Daemon at Tue Aug 25 06:42:40 IST 2026
[2026-08-25 06:42:40,164.164 INFO    ] ================================================
[2026-08-25 06:42:40,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:42:40
[2026-08-25 06:42:41,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:42:41,577.577 INFO    ] Initializing speech engine...
[2026-08-25 06:42:41,583.583 INFO    ] 2026-08-25 06:42:41
[2026-08-25 06:42:41,854.854 INFO    ] 2026-08-25 06:42:41
[2026-08-25 06:42:41,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:42:42,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:42:42,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:42:42,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:42:42,318.318 INFO    ] time= 25/08/2026 06:42:42
[2026-08-25 06:42:42,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:42:42,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:42:42,551.551 INFO    ] No existing commands found in stream
[2026-08-25 06:42:47,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:42:47,574.574 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 06:42:48,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:42:48,951.951 INFO    ] Checking for system updates...
[2026-08-25 06:42:48,986.986 INFO    ] 200
[2026-08-25 06:42:48,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:49,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:49,057.057 INFO    ] No update needed
[2026-08-25 06:42:49,059.059 INFO    ] Checking for camera pi updates...
[2026-08-25 06:42:49,093.093 INFO    ] 200
[2026-08-25 06:42:49,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:42:49,140.140 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:42:49,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:42:49,204.204 INFO    ] No camera update needed
[2026-08-25 06:42:49,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:42:49,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:42:49,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:42:49,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:42:51,262.262 INFO    ] ================================================
[2026-08-25 06:42:51,277.277 INFO    ] Launching Daemon at Tue Aug 25 06:42:51 IST 2026
[2026-08-25 06:42:51,288.288 INFO    ] ================================================
[2026-08-25 06:42:51,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:42:51
[2026-08-25 06:42:52,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:42:52,712.712 INFO    ] Initializing speech engine...
[2026-08-25 06:42:52,721.721 INFO    ] 2026-08-25 06:42:52
[2026-08-25 06:42:52,973.973 INFO    ] 2026-08-25 06:42:52
[2026-08-25 06:42:53,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:42:53,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:42:53,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:42:53,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:42:53,441.441 INFO    ] time= 25/08/2026 06:42:53
[2026-08-25 06:42:53,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:42:53,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:42:53,660.660 INFO    ] No existing commands found in stream
[2026-08-25 06:42:58,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:42:58,687.687 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 06:43:01,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:43:01,067.067 INFO    ] Checking for system updates...
[2026-08-25 06:43:01,103.103 INFO    ] 200
[2026-08-25 06:43:01,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:01,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:43:01,159.159 INFO    ] No update needed
[2026-08-25 06:43:01,161.161 INFO    ] Checking for camera pi updates...
[2026-08-25 06:43:01,199.199 INFO    ] 200
[2026-08-25 06:43:01,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:01,243.243 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:43:01,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:43:01,299.299 INFO    ] No camera update needed
[2026-08-25 06:43:01,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:43:01,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:43:01,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:43:01,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:43:03,361.361 INFO    ] ================================================
[2026-08-25 06:43:03,376.376 INFO    ] Launching Daemon at Tue Aug 25 06:43:03 IST 2026
[2026-08-25 06:43:03,387.387 INFO    ] ================================================
[2026-08-25 06:43:04,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:43:04
[2026-08-25 06:43:04,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:43:05,030.030 INFO    ] Initializing speech engine...
[2026-08-25 06:43:05,042.042 INFO    ] 2026-08-25 06:43:05
[2026-08-25 06:43:05,352.352 INFO    ] 2026-08-25 06:43:05
[2026-08-25 06:43:05,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:43:05,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:43:05,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:43:05,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:43:05,795.795 INFO    ] time= 25/08/2026 06:43:05
[2026-08-25 06:43:05,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:43:05,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:43:06,000.000 INFO    ] No existing commands found in stream
[2026-08-25 06:43:11,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:43:11,029.029 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 06:43:13,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:43:13,925.925 INFO    ] Checking for system updates...
[2026-08-25 06:43:13,967.967 INFO    ] 200
[2026-08-25 06:43:13,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:14,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:43:14,028.028 INFO    ] No update needed
[2026-08-25 06:43:14,030.030 INFO    ] Checking for camera pi updates...
[2026-08-25 06:43:14,064.064 INFO    ] 200
[2026-08-25 06:43:14,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:14,107.107 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:43:14,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:43:14,164.164 INFO    ] No camera update needed
[2026-08-25 06:43:14,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:43:14,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:43:14,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:43:14,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:43:16,220.220 INFO    ] ================================================
[2026-08-25 06:43:16,237.237 INFO    ] Launching Daemon at Tue Aug 25 06:43:16 IST 2026
[2026-08-25 06:43:16,248.248 INFO    ] ================================================
[2026-08-25 06:43:16,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:43:16
[2026-08-25 06:43:17,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:43:17,907.907 INFO    ] Initializing speech engine...
[2026-08-25 06:43:17,921.921 INFO    ] 2026-08-25 06:43:17
[2026-08-25 06:43:18,234.234 INFO    ] 2026-08-25 06:43:18
[2026-08-25 06:43:18,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:43:18,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:43:18,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:43:18,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:43:18,740.740 INFO    ] time= 25/08/2026 06:43:18
[2026-08-25 06:43:18,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:43:18,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:43:18,894.894 INFO    ] No existing commands found in stream
[2026-08-25 06:43:23,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:43:23,934.934 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 06:43:28,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:43:28,046.046 INFO    ] Checking for system updates...
[2026-08-25 06:43:28,086.086 INFO    ] 200
[2026-08-25 06:43:28,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:28,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:43:28,144.144 INFO    ] No update needed
[2026-08-25 06:43:28,147.147 INFO    ] Checking for camera pi updates...
[2026-08-25 06:43:28,185.185 INFO    ] 200
[2026-08-25 06:43:28,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:28,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:43:28,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:43:28,282.282 INFO    ] No camera update needed
[2026-08-25 06:43:28,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:43:28,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:43:28,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:43:28,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:43:30,336.336 INFO    ] ================================================
[2026-08-25 06:43:30,352.352 INFO    ] Launching Daemon at Tue Aug 25 06:43:30 IST 2026
[2026-08-25 06:43:30,363.363 INFO    ] ================================================
[2026-08-25 06:43:30,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:43:30
[2026-08-25 06:43:31,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:43:31,867.867 INFO    ] Initializing speech engine...
[2026-08-25 06:43:31,879.879 INFO    ] 2026-08-25 06:43:31
[2026-08-25 06:43:32,164.164 INFO    ] 2026-08-25 06:43:32
[2026-08-25 06:43:32,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:43:32,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:43:32,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:43:32,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:43:32,665.665 INFO    ] time= 25/08/2026 06:43:32
[2026-08-25 06:43:32,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:43:32,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:43:32,898.898 INFO    ] No existing commands found in stream
[2026-08-25 06:43:37,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:43:37,930.930 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 06:43:40,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:43:40,014.014 INFO    ] Checking for system updates...
[2026-08-25 06:43:40,050.050 INFO    ] 200
[2026-08-25 06:43:40,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:40,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:43:40,108.108 INFO    ] No update needed
[2026-08-25 06:43:40,111.111 INFO    ] Checking for camera pi updates...
[2026-08-25 06:43:40,145.145 INFO    ] 200
[2026-08-25 06:43:40,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:40,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:43:40,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:43:40,236.236 INFO    ] No camera update needed
[2026-08-25 06:43:40,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:43:40,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:43:40,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:43:40,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:43:42,293.293 INFO    ] ================================================
[2026-08-25 06:43:42,308.308 INFO    ] Launching Daemon at Tue Aug 25 06:43:42 IST 2026
[2026-08-25 06:43:42,319.319 INFO    ] ================================================
[2026-08-25 06:43:42,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:43:42
[2026-08-25 06:43:43,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:43:43,878.878 INFO    ] Initializing speech engine...
[2026-08-25 06:43:43,889.889 INFO    ] 2026-08-25 06:43:43
[2026-08-25 06:43:44,168.168 INFO    ] 2026-08-25 06:43:44
[2026-08-25 06:43:44,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:43:44,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:43:44,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:43:44,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:43:44,663.663 INFO    ] time= 25/08/2026 06:43:44
[2026-08-25 06:43:44,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:43:44,733.733 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:43:44,874.874 INFO    ] No existing commands found in stream
[2026-08-25 06:43:49,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:43:49,893.893 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 06:43:53,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:43:53,650.650 INFO    ] Checking for system updates...
[2026-08-25 06:43:53,687.687 INFO    ] 200
[2026-08-25 06:43:53,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:53,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:43:53,747.747 INFO    ] No update needed
[2026-08-25 06:43:53,749.749 INFO    ] Checking for camera pi updates...
[2026-08-25 06:43:53,790.790 INFO    ] 200
[2026-08-25 06:43:53,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:43:53,834.834 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:43:53,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:43:53,900.900 INFO    ] No camera update needed
[2026-08-25 06:43:53,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:43:53,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:43:53,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:43:53,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:43:55,956.956 INFO    ] ================================================
[2026-08-25 06:43:55,971.971 INFO    ] Launching Daemon at Tue Aug 25 06:43:55 IST 2026
[2026-08-25 06:43:55,982.982 INFO    ] ================================================
[2026-08-25 06:43:56,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:43:56
[2026-08-25 06:43:57,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:43:57,570.570 INFO    ] Initializing speech engine...
[2026-08-25 06:43:57,583.583 INFO    ] 2026-08-25 06:43:57
[2026-08-25 06:43:57,872.872 INFO    ] 2026-08-25 06:43:57
[2026-08-25 06:43:57,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:43:58,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:43:58,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:43:58,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:43:58,319.319 INFO    ] time= 25/08/2026 06:43:58
[2026-08-25 06:43:58,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:43:58,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:43:58,530.530 INFO    ] No existing commands found in stream
[2026-08-25 06:44:03,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:44:03,566.566 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 06:44:04,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:44:04,435.435 INFO    ] Checking for system updates...
[2026-08-25 06:44:04,476.476 INFO    ] 200
[2026-08-25 06:44:04,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:04,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:44:04,533.533 INFO    ] No update needed
[2026-08-25 06:44:04,535.535 INFO    ] Checking for camera pi updates...
[2026-08-25 06:44:04,569.569 INFO    ] 200
[2026-08-25 06:44:04,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:04,612.612 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:44:04,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:44:04,668.668 INFO    ] No camera update needed
[2026-08-25 06:44:04,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:44:04,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:44:04,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:44:04,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:44:06,723.723 INFO    ] ================================================
[2026-08-25 06:44:06,739.739 INFO    ] Launching Daemon at Tue Aug 25 06:44:06 IST 2026
[2026-08-25 06:44:06,750.750 INFO    ] ================================================
[2026-08-25 06:44:07,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:44:07
[2026-08-25 06:44:07,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:44:08,166.166 INFO    ] Initializing speech engine...
[2026-08-25 06:44:08,189.189 INFO    ] 2026-08-25 06:44:08
[2026-08-25 06:44:08,441.441 INFO    ] 2026-08-25 06:44:08
[2026-08-25 06:44:08,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:44:08,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:44:08,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:44:08,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:44:08,821.821 INFO    ] time= 25/08/2026 06:44:08
[2026-08-25 06:44:08,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:44:08,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:44:08,995.995 INFO    ] No existing commands found in stream
[2026-08-25 06:44:14,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:44:14,028.028 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 06:44:17,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:44:17,041.041 INFO    ] Checking for system updates...
[2026-08-25 06:44:17,076.076 INFO    ] 200
[2026-08-25 06:44:17,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:17,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:44:17,135.135 INFO    ] No update needed
[2026-08-25 06:44:17,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 06:44:17,171.171 INFO    ] 200
[2026-08-25 06:44:17,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:17,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:44:17,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:44:17,267.267 INFO    ] No camera update needed
[2026-08-25 06:44:17,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:44:17,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:44:17,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:44:17,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:44:19,322.322 INFO    ] ================================================
[2026-08-25 06:44:19,338.338 INFO    ] Launching Daemon at Tue Aug 25 06:44:19 IST 2026
[2026-08-25 06:44:19,350.350 INFO    ] ================================================
[2026-08-25 06:44:20,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:44:20
[2026-08-25 06:44:20,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:44:20,973.973 INFO    ] Initializing speech engine...
[2026-08-25 06:44:20,989.989 INFO    ] 2026-08-25 06:44:20
[2026-08-25 06:44:21,244.244 INFO    ] 2026-08-25 06:44:21
[2026-08-25 06:44:21,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:44:21,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:44:21,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:44:21,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:44:21,957.957 INFO    ] time= 25/08/2026 06:44:21
[2026-08-25 06:44:21,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:44:22,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:44:22,181.181 INFO    ] No existing commands found in stream
[2026-08-25 06:44:27,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:44:27,209.209 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 06:44:29,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:44:29,890.890 INFO    ] Checking for system updates...
[2026-08-25 06:44:29,928.928 INFO    ] 200
[2026-08-25 06:44:29,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:29,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:44:29,992.992 INFO    ] No update needed
[2026-08-25 06:44:29,995.995 INFO    ] Checking for camera pi updates...
[2026-08-25 06:44:30,028.028 INFO    ] 200
[2026-08-25 06:44:30,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:30,072.072 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:44:30,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:44:30,127.127 INFO    ] No camera update needed
[2026-08-25 06:44:30,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:44:30,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:44:30,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:44:30,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:44:32,183.183 INFO    ] ================================================
[2026-08-25 06:44:32,200.200 INFO    ] Launching Daemon at Tue Aug 25 06:44:32 IST 2026
[2026-08-25 06:44:32,212.212 INFO    ] ================================================
[2026-08-25 06:44:32,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:44:32
[2026-08-25 06:44:33,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:44:33,646.646 INFO    ] Initializing speech engine...
[2026-08-25 06:44:33,662.662 INFO    ] 2026-08-25 06:44:33
[2026-08-25 06:44:33,949.949 INFO    ] 2026-08-25 06:44:33
[2026-08-25 06:44:33,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:44:34,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:44:34,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:44:34,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:44:34,325.325 INFO    ] time= 25/08/2026 06:44:34
[2026-08-25 06:44:34,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:44:34,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:44:34,452.452 INFO    ] No existing commands found in stream
[2026-08-25 06:44:39,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:44:39,473.473 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 06:44:40,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:44:40,327.327 INFO    ] Checking for system updates...
[2026-08-25 06:44:40,367.367 INFO    ] 200
[2026-08-25 06:44:40,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:40,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:44:40,432.432 INFO    ] No update needed
[2026-08-25 06:44:40,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 06:44:40,467.467 INFO    ] 200
[2026-08-25 06:44:40,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:40,509.509 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:44:40,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:44:40,664.664 INFO    ] No camera update needed
[2026-08-25 06:44:40,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:44:40,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:44:40,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:44:40,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:44:42,718.718 INFO    ] ================================================
[2026-08-25 06:44:42,734.734 INFO    ] Launching Daemon at Tue Aug 25 06:44:42 IST 2026
[2026-08-25 06:44:42,745.745 INFO    ] ================================================
[2026-08-25 06:44:43,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:44:43
[2026-08-25 06:44:43,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:44:44,306.306 INFO    ] Initializing speech engine...
[2026-08-25 06:44:44,318.318 INFO    ] 2026-08-25 06:44:44
[2026-08-25 06:44:44,601.601 INFO    ] 2026-08-25 06:44:44
[2026-08-25 06:44:44,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:44:44,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:44:44,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:44:45,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:44:45,140.140 INFO    ] time= 25/08/2026 06:44:45
[2026-08-25 06:44:45,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:44:45,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:44:45,292.292 INFO    ] No existing commands found in stream
[2026-08-25 06:44:50,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:44:50,313.313 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 06:44:51,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:44:51,273.273 INFO    ] Checking for system updates...
[2026-08-25 06:44:51,309.309 INFO    ] 200
[2026-08-25 06:44:51,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:51,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:44:51,368.368 INFO    ] No update needed
[2026-08-25 06:44:51,370.370 INFO    ] Checking for camera pi updates...
[2026-08-25 06:44:51,403.403 INFO    ] 200
[2026-08-25 06:44:51,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:44:51,446.446 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:44:51,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:44:51,495.495 INFO    ] No camera update needed
[2026-08-25 06:44:51,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:44:51,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:44:51,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:44:51,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:44:53,550.550 INFO    ] ================================================
[2026-08-25 06:44:53,565.565 INFO    ] Launching Daemon at Tue Aug 25 06:44:53 IST 2026
[2026-08-25 06:44:53,576.576 INFO    ] ================================================
[2026-08-25 06:44:54,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:44:54
[2026-08-25 06:44:54,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:44:55,076.076 INFO    ] Initializing speech engine...
[2026-08-25 06:44:55,085.085 INFO    ] 2026-08-25 06:44:55
[2026-08-25 06:44:55,331.331 INFO    ] 2026-08-25 06:44:55
[2026-08-25 06:44:55,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:44:55,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:44:55,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:44:55,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:44:55,799.799 INFO    ] time= 25/08/2026 06:44:55
[2026-08-25 06:44:55,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:44:55,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:44:56,013.013 INFO    ] No existing commands found in stream
[2026-08-25 06:45:01,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:45:01,041.041 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 06:45:04,067.067 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:45:04,069.069 INFO    ] Checking for system updates...
[2026-08-25 06:45:04,108.108 INFO    ] 200
[2026-08-25 06:45:04,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:04,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:45:04,164.164 INFO    ] No update needed
[2026-08-25 06:45:04,167.167 INFO    ] Checking for camera pi updates...
[2026-08-25 06:45:04,205.205 INFO    ] 200
[2026-08-25 06:45:04,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:04,253.253 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:45:04,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:45:04,317.317 INFO    ] No camera update needed
[2026-08-25 06:45:04,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:45:04,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:45:04,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:45:04,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:45:06,375.375 INFO    ] ================================================
[2026-08-25 06:45:06,391.391 INFO    ] Launching Daemon at Tue Aug 25 06:45:06 IST 2026
[2026-08-25 06:45:06,402.402 INFO    ] ================================================
[2026-08-25 06:45:07,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:45:07
[2026-08-25 06:45:07,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:45:08,055.055 INFO    ] Initializing speech engine...
[2026-08-25 06:45:08,064.064 INFO    ] 2026-08-25 06:45:08
[2026-08-25 06:45:08,336.336 INFO    ] 2026-08-25 06:45:08
[2026-08-25 06:45:08,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:45:08,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:45:08,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:45:08,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:45:08,786.786 INFO    ] time= 25/08/2026 06:45:08
[2026-08-25 06:45:08,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:45:08,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:45:08,985.985 INFO    ] No existing commands found in stream
[2026-08-25 06:45:13,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:45:14,000.000 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 06:45:16,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:45:16,980.980 INFO    ] Checking for system updates...
[2026-08-25 06:45:17,016.016 INFO    ] 200
[2026-08-25 06:45:17,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:17,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:45:17,079.079 INFO    ] No update needed
[2026-08-25 06:45:17,081.081 INFO    ] Checking for camera pi updates...
[2026-08-25 06:45:17,115.115 INFO    ] 200
[2026-08-25 06:45:17,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:17,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:45:17,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:45:17,218.218 INFO    ] No camera update needed
[2026-08-25 06:45:17,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:45:17,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:45:17,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:45:17,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:45:19,273.273 INFO    ] ================================================
[2026-08-25 06:45:19,289.289 INFO    ] Launching Daemon at Tue Aug 25 06:45:19 IST 2026
[2026-08-25 06:45:19,299.299 INFO    ] ================================================
[2026-08-25 06:45:19,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:45:19
[2026-08-25 06:45:20,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:45:20,723.723 INFO    ] Initializing speech engine...
[2026-08-25 06:45:20,736.736 INFO    ] 2026-08-25 06:45:20
[2026-08-25 06:45:21,020.020 INFO    ] 2026-08-25 06:45:20
[2026-08-25 06:45:21,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:45:21,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:45:21,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:45:21,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:45:21,367.367 INFO    ] time= 25/08/2026 06:45:21
[2026-08-25 06:45:21,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:45:21,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:45:21,499.499 INFO    ] No existing commands found in stream
[2026-08-25 06:45:26,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:45:26,519.519 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 06:45:29,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:45:29,007.007 INFO    ] Checking for system updates...
[2026-08-25 06:45:29,051.051 INFO    ] 200
[2026-08-25 06:45:29,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:29,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:45:29,108.108 INFO    ] No update needed
[2026-08-25 06:45:29,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 06:45:29,148.148 INFO    ] 200
[2026-08-25 06:45:29,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:29,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:45:29,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:45:29,250.250 INFO    ] No camera update needed
[2026-08-25 06:45:29,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:45:29,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:45:29,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:45:29,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:45:31,308.308 INFO    ] ================================================
[2026-08-25 06:45:31,325.325 INFO    ] Launching Daemon at Tue Aug 25 06:45:31 IST 2026
[2026-08-25 06:45:31,336.336 INFO    ] ================================================
[2026-08-25 06:45:31,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:45:31
[2026-08-25 06:45:32,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:45:32,826.826 INFO    ] Initializing speech engine...
[2026-08-25 06:45:32,836.836 INFO    ] 2026-08-25 06:45:32
[2026-08-25 06:45:33,141.141 INFO    ] 2026-08-25 06:45:33
[2026-08-25 06:45:33,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:45:33,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:45:33,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:45:33,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:45:33,619.619 INFO    ] time= 25/08/2026 06:45:33
[2026-08-25 06:45:33,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:45:33,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:45:33,839.839 INFO    ] No existing commands found in stream
[2026-08-25 06:45:38,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:45:38,867.867 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 06:45:42,976.976 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:45:42,979.979 INFO    ] Checking for system updates...
[2026-08-25 06:45:43,014.014 INFO    ] 200
[2026-08-25 06:45:43,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:43,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:45:43,071.071 INFO    ] No update needed
[2026-08-25 06:45:43,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 06:45:43,115.115 INFO    ] 200
[2026-08-25 06:45:43,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:43,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:45:43,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:45:43,208.208 INFO    ] No camera update needed
[2026-08-25 06:45:43,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:45:43,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:45:43,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:45:43,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:45:45,265.265 INFO    ] ================================================
[2026-08-25 06:45:45,280.280 INFO    ] Launching Daemon at Tue Aug 25 06:45:45 IST 2026
[2026-08-25 06:45:45,291.291 INFO    ] ================================================
[2026-08-25 06:45:45,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:45:45
[2026-08-25 06:45:46,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:45:46,731.731 INFO    ] Initializing speech engine...
[2026-08-25 06:45:46,740.740 INFO    ] 2026-08-25 06:45:46
[2026-08-25 06:45:46,986.986 INFO    ] 2026-08-25 06:45:46
[2026-08-25 06:45:47,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:45:47,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:45:47,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:45:47,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:45:47,451.451 INFO    ] time= 25/08/2026 06:45:47
[2026-08-25 06:45:47,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:45:47,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:45:47,675.675 INFO    ] No existing commands found in stream
[2026-08-25 06:45:52,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:45:52,709.709 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 06:45:55,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:45:55,833.833 INFO    ] Checking for system updates...
[2026-08-25 06:45:55,896.896 INFO    ] 200
[2026-08-25 06:45:55,899.899 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:55,903.903 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 06:45:55,906.906 INFO    ] Checking for camera pi updates...
[2026-08-25 06:45:55,950.950 INFO    ] 200
[2026-08-25 06:45:55,952.952 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 06:45:55,956.956 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 06:45:55,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:45:55,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:45:55,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:45:55,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:45:58,018.018 INFO    ] ================================================
[2026-08-25 06:45:58,033.033 INFO    ] Launching Daemon at Tue Aug 25 06:45:58 IST 2026
[2026-08-25 06:45:58,043.043 INFO    ] ================================================
[2026-08-25 06:45:58,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:45:58
[2026-08-25 06:45:59,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:45:59,664.664 INFO    ] Initializing speech engine...
[2026-08-25 06:45:59,675.675 INFO    ] 2026-08-25 06:45:59
[2026-08-25 06:45:59,943.943 INFO    ] 2026-08-25 06:45:59
[2026-08-25 06:45:59,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:46:00,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:46:00,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:46:00,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:46:00,412.412 INFO    ] time= 25/08/2026 06:46:00
[2026-08-25 06:46:00,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:46:00,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:46:00,627.627 INFO    ] No existing commands found in stream
[2026-08-25 06:46:05,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:46:05,650.650 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 06:46:07,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:46:07,821.821 INFO    ] Checking for system updates...
[2026-08-25 06:46:07,857.857 INFO    ] 200
[2026-08-25 06:46:07,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:07,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:46:07,921.921 INFO    ] No update needed
[2026-08-25 06:46:07,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 06:46:07,959.959 INFO    ] 200
[2026-08-25 06:46:07,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:08,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:46:08,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:46:08,076.076 INFO    ] No camera update needed
[2026-08-25 06:46:08,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:46:08,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:46:08,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:46:08,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:46:10,133.133 INFO    ] ================================================
[2026-08-25 06:46:10,149.149 INFO    ] Launching Daemon at Tue Aug 25 06:46:10 IST 2026
[2026-08-25 06:46:10,159.159 INFO    ] ================================================
[2026-08-25 06:46:10,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:46:10
[2026-08-25 06:46:11,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:46:11,565.565 INFO    ] Initializing speech engine...
[2026-08-25 06:46:11,573.573 INFO    ] 2026-08-25 06:46:11
[2026-08-25 06:46:11,864.864 INFO    ] 2026-08-25 06:46:11
[2026-08-25 06:46:11,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:46:12,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:46:12,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:46:12,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:46:12,275.275 INFO    ] time= 25/08/2026 06:46:12
[2026-08-25 06:46:12,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:46:12,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:46:12,362.362 INFO    ] No existing commands found in stream
[2026-08-25 06:46:17,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:46:17,378.378 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 06:46:21,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:46:21,370.370 INFO    ] Checking for system updates...
[2026-08-25 06:46:21,406.406 INFO    ] 200
[2026-08-25 06:46:21,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:21,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:46:21,462.462 INFO    ] No update needed
[2026-08-25 06:46:21,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 06:46:21,498.498 INFO    ] 200
[2026-08-25 06:46:21,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:21,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:46:21,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:46:21,599.599 INFO    ] No camera update needed
[2026-08-25 06:46:21,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:46:21,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:46:21,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:46:21,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:46:23,654.654 INFO    ] ================================================
[2026-08-25 06:46:23,669.669 INFO    ] Launching Daemon at Tue Aug 25 06:46:23 IST 2026
[2026-08-25 06:46:23,679.679 INFO    ] ================================================
[2026-08-25 06:46:24,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:46:24
[2026-08-25 06:46:24,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:46:25,088.088 INFO    ] Initializing speech engine...
[2026-08-25 06:46:25,094.094 INFO    ] 2026-08-25 06:46:25
[2026-08-25 06:46:25,381.381 INFO    ] 2026-08-25 06:46:25
[2026-08-25 06:46:25,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:46:25,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:46:25,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:46:25,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:46:25,750.750 INFO    ] time= 25/08/2026 06:46:25
[2026-08-25 06:46:25,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:46:25,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:46:25,871.871 INFO    ] No existing commands found in stream
[2026-08-25 06:46:30,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:46:30,888.888 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 06:46:31,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:46:31,497.497 INFO    ] Checking for system updates...
[2026-08-25 06:46:31,532.532 INFO    ] 200
[2026-08-25 06:46:31,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:31,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:46:31,593.593 INFO    ] No update needed
[2026-08-25 06:46:31,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 06:46:31,644.644 INFO    ] 200
[2026-08-25 06:46:31,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:31,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:46:31,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:46:31,743.743 INFO    ] No camera update needed
[2026-08-25 06:46:31,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:46:31,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:46:31,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:46:31,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:46:33,799.799 INFO    ] ================================================
[2026-08-25 06:46:33,814.814 INFO    ] Launching Daemon at Tue Aug 25 06:46:33 IST 2026
[2026-08-25 06:46:33,826.826 INFO    ] ================================================
[2026-08-25 06:46:34,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:46:34
[2026-08-25 06:46:34,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:46:35,259.259 INFO    ] Initializing speech engine...
[2026-08-25 06:46:35,269.269 INFO    ] 2026-08-25 06:46:35
[2026-08-25 06:46:35,514.514 INFO    ] 2026-08-25 06:46:35
[2026-08-25 06:46:35,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:46:35,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:46:35,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:46:35,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:46:35,988.988 INFO    ] time= 25/08/2026 06:46:35
[2026-08-25 06:46:36,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:46:36,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:46:36,222.222 INFO    ] No existing commands found in stream
[2026-08-25 06:46:41,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:46:41,238.238 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 06:46:45,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:46:45,047.047 INFO    ] Checking for system updates...
[2026-08-25 06:46:45,082.082 INFO    ] 200
[2026-08-25 06:46:45,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:45,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:46:45,145.145 INFO    ] No update needed
[2026-08-25 06:46:45,147.147 INFO    ] Checking for camera pi updates...
[2026-08-25 06:46:45,181.181 INFO    ] 200
[2026-08-25 06:46:45,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:45,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:46:45,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:46:45,379.379 INFO    ] No camera update needed
[2026-08-25 06:46:45,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:46:45,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:46:45,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:46:45,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:46:47,435.435 INFO    ] ================================================
[2026-08-25 06:46:47,450.450 INFO    ] Launching Daemon at Tue Aug 25 06:46:47 IST 2026
[2026-08-25 06:46:47,461.461 INFO    ] ================================================
[2026-08-25 06:46:48,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:46:48
[2026-08-25 06:46:48,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:46:48,864.864 INFO    ] Initializing speech engine...
[2026-08-25 06:46:48,883.883 INFO    ] 2026-08-25 06:46:48
[2026-08-25 06:46:49,136.136 INFO    ] 2026-08-25 06:46:49
[2026-08-25 06:46:49,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:46:49,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:46:49,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:46:49,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:46:49,635.635 INFO    ] time= 25/08/2026 06:46:49
[2026-08-25 06:46:49,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:46:49,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:46:49,828.828 INFO    ] No existing commands found in stream
[2026-08-25 06:46:54,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:46:54,849.849 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 06:46:59,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:46:59,067.067 INFO    ] Checking for system updates...
[2026-08-25 06:46:59,103.103 INFO    ] 200
[2026-08-25 06:46:59,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:59,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:46:59,160.160 INFO    ] No update needed
[2026-08-25 06:46:59,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 06:46:59,196.196 INFO    ] 200
[2026-08-25 06:46:59,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:46:59,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:46:59,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:46:59,302.302 INFO    ] No camera update needed
[2026-08-25 06:46:59,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:46:59,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:46:59,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:46:59,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:47:01,358.358 INFO    ] ================================================
[2026-08-25 06:47:01,373.373 INFO    ] Launching Daemon at Tue Aug 25 06:47:01 IST 2026
[2026-08-25 06:47:01,383.383 INFO    ] ================================================
[2026-08-25 06:47:02,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:47:02
[2026-08-25 06:47:02,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:47:03,287.287 INFO    ] Initializing speech engine...
[2026-08-25 06:47:03,296.296 INFO    ] 2026-08-25 06:47:03
[2026-08-25 06:47:03,605.605 INFO    ] 2026-08-25 06:47:03
[2026-08-25 06:47:03,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:47:03,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:47:03,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:47:04,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:47:04,107.107 INFO    ] time= 25/08/2026 06:47:04
[2026-08-25 06:47:04,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:47:04,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:47:04,300.300 INFO    ] No existing commands found in stream
[2026-08-25 06:47:09,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:47:09,331.331 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 06:47:13,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:47:13,041.041 INFO    ] Checking for system updates...
[2026-08-25 06:47:13,081.081 INFO    ] 200
[2026-08-25 06:47:13,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:13,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:47:13,144.144 INFO    ] No update needed
[2026-08-25 06:47:13,147.147 INFO    ] Checking for camera pi updates...
[2026-08-25 06:47:13,183.183 INFO    ] 200
[2026-08-25 06:47:13,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:13,232.232 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:47:13,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:47:13,283.283 INFO    ] No camera update needed
[2026-08-25 06:47:13,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:47:13,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:47:13,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:47:13,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:47:15,346.346 INFO    ] ================================================
[2026-08-25 06:47:15,361.361 INFO    ] Launching Daemon at Tue Aug 25 06:47:15 IST 2026
[2026-08-25 06:47:15,372.372 INFO    ] ================================================
[2026-08-25 06:47:15,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:47:15
[2026-08-25 06:47:16,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:47:16,794.794 INFO    ] Initializing speech engine...
[2026-08-25 06:47:16,803.803 INFO    ] 2026-08-25 06:47:16
[2026-08-25 06:47:17,060.060 INFO    ] 2026-08-25 06:47:17
[2026-08-25 06:47:17,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:47:17,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:47:17,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:47:17,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:47:17,518.518 INFO    ] time= 25/08/2026 06:47:17
[2026-08-25 06:47:17,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:47:17,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:47:17,756.756 INFO    ] No existing commands found in stream
[2026-08-25 06:47:22,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:47:22,772.772 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 06:47:23,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:47:23,733.733 INFO    ] Checking for system updates...
[2026-08-25 06:47:23,770.770 INFO    ] 200
[2026-08-25 06:47:23,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:23,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:47:23,827.827 INFO    ] No update needed
[2026-08-25 06:47:23,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 06:47:23,867.867 INFO    ] 200
[2026-08-25 06:47:23,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:23,909.909 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:47:23,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:47:23,957.957 INFO    ] No camera update needed
[2026-08-25 06:47:23,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:47:23,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:47:23,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:47:23,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:47:26,015.015 INFO    ] ================================================
[2026-08-25 06:47:26,030.030 INFO    ] Launching Daemon at Tue Aug 25 06:47:26 IST 2026
[2026-08-25 06:47:26,041.041 INFO    ] ================================================
[2026-08-25 06:47:26,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:47:26
[2026-08-25 06:47:27,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:47:27,491.491 INFO    ] Initializing speech engine...
[2026-08-25 06:47:27,506.506 INFO    ] 2026-08-25 06:47:27
[2026-08-25 06:47:27,778.778 INFO    ] 2026-08-25 06:47:27
[2026-08-25 06:47:27,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:47:28,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:47:28,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:47:28,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:47:28,258.258 INFO    ] time= 25/08/2026 06:47:28
[2026-08-25 06:47:28,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:47:28,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:47:28,494.494 INFO    ] No existing commands found in stream
[2026-08-25 06:47:33,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:47:33,511.511 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 06:47:37,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:47:37,512.512 INFO    ] Checking for system updates...
[2026-08-25 06:47:37,550.550 INFO    ] 200
[2026-08-25 06:47:37,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:37,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:47:37,612.612 INFO    ] No update needed
[2026-08-25 06:47:37,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 06:47:37,650.650 INFO    ] 200
[2026-08-25 06:47:37,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:37,693.693 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:47:37,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:47:37,749.749 INFO    ] No camera update needed
[2026-08-25 06:47:37,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:47:37,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:47:37,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:47:37,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:47:39,810.810 INFO    ] ================================================
[2026-08-25 06:47:39,826.826 INFO    ] Launching Daemon at Tue Aug 25 06:47:39 IST 2026
[2026-08-25 06:47:39,837.837 INFO    ] ================================================
[2026-08-25 06:47:40,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:47:40
[2026-08-25 06:47:40,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:47:41,252.252 INFO    ] Initializing speech engine...
[2026-08-25 06:47:41,261.261 INFO    ] 2026-08-25 06:47:41
[2026-08-25 06:47:41,513.513 INFO    ] 2026-08-25 06:47:41
[2026-08-25 06:47:41,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:47:41,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:47:41,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:47:41,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:47:41,985.985 INFO    ] time= 25/08/2026 06:47:41
[2026-08-25 06:47:42,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:47:42,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:47:42,200.200 INFO    ] No existing commands found in stream
[2026-08-25 06:47:47,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:47:47,226.226 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 06:47:50,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:47:50,454.454 INFO    ] Checking for system updates...
[2026-08-25 06:47:50,491.491 INFO    ] 200
[2026-08-25 06:47:50,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:50,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:47:50,556.556 INFO    ] No update needed
[2026-08-25 06:47:50,559.559 INFO    ] Checking for camera pi updates...
[2026-08-25 06:47:50,595.595 INFO    ] 200
[2026-08-25 06:47:50,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:47:50,641.641 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:47:50,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:47:50,693.693 INFO    ] No camera update needed
[2026-08-25 06:47:50,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:47:50,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:47:50,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:47:50,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:47:52,752.752 INFO    ] ================================================
[2026-08-25 06:47:52,768.768 INFO    ] Launching Daemon at Tue Aug 25 06:47:52 IST 2026
[2026-08-25 06:47:52,779.779 INFO    ] ================================================
[2026-08-25 06:47:53,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:47:53
[2026-08-25 06:47:53,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:47:54,201.201 INFO    ] Initializing speech engine...
[2026-08-25 06:47:54,209.209 INFO    ] 2026-08-25 06:47:54
[2026-08-25 06:47:54,471.471 INFO    ] 2026-08-25 06:47:54
[2026-08-25 06:47:54,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:47:54,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:47:54,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:47:54,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:47:54,854.854 INFO    ] time= 25/08/2026 06:47:54
[2026-08-25 06:47:54,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:47:54,884.884 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:47:54,959.959 INFO    ] No existing commands found in stream
[2026-08-25 06:47:59,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:47:59,974.974 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 06:48:02,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:48:02,838.838 INFO    ] Checking for system updates...
[2026-08-25 06:48:02,877.877 INFO    ] 200
[2026-08-25 06:48:02,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:02,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:48:02,944.944 INFO    ] No update needed
[2026-08-25 06:48:02,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 06:48:02,985.985 INFO    ] 200
[2026-08-25 06:48:02,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:03,051.051 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:48:03,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:48:03,116.116 INFO    ] No camera update needed
[2026-08-25 06:48:03,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:48:03,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:48:03,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:48:03,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:48:05,178.178 INFO    ] ================================================
[2026-08-25 06:48:05,194.194 INFO    ] Launching Daemon at Tue Aug 25 06:48:05 IST 2026
[2026-08-25 06:48:05,204.204 INFO    ] ================================================
[2026-08-25 06:48:05,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:48:05
[2026-08-25 06:48:06,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:48:06,828.828 INFO    ] Initializing speech engine...
[2026-08-25 06:48:06,836.836 INFO    ] 2026-08-25 06:48:06
[2026-08-25 06:48:07,130.130 INFO    ] 2026-08-25 06:48:07
[2026-08-25 06:48:07,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:48:07,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:48:07,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:48:07,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:48:07,609.609 INFO    ] time= 25/08/2026 06:48:07
[2026-08-25 06:48:07,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:48:07,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:48:07,806.806 INFO    ] No existing commands found in stream
[2026-08-25 06:48:12,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:48:12,840.840 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 06:48:16,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:48:16,267.267 INFO    ] Checking for system updates...
[2026-08-25 06:48:16,306.306 INFO    ] 200
[2026-08-25 06:48:16,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:16,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:48:16,369.369 INFO    ] No update needed
[2026-08-25 06:48:16,372.372 INFO    ] Checking for camera pi updates...
[2026-08-25 06:48:16,406.406 INFO    ] 200
[2026-08-25 06:48:16,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:16,450.450 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:48:16,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:48:16,508.508 INFO    ] No camera update needed
[2026-08-25 06:48:16,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:48:16,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:48:16,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:48:16,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:48:18,564.564 INFO    ] ================================================
[2026-08-25 06:48:18,579.579 INFO    ] Launching Daemon at Tue Aug 25 06:48:18 IST 2026
[2026-08-25 06:48:18,590.590 INFO    ] ================================================
[2026-08-25 06:48:19,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:48:19
[2026-08-25 06:48:19,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:48:20,008.008 INFO    ] Initializing speech engine...
[2026-08-25 06:48:20,017.017 INFO    ] 2026-08-25 06:48:20
[2026-08-25 06:48:20,264.264 INFO    ] 2026-08-25 06:48:20
[2026-08-25 06:48:20,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:48:20,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:48:20,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:48:20,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:48:20,759.759 INFO    ] time= 25/08/2026 06:48:20
[2026-08-25 06:48:20,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:48:20,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:48:20,973.973 INFO    ] No existing commands found in stream
[2026-08-25 06:48:25,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:48:26,001.001 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 06:48:28,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:48:28,895.895 INFO    ] Checking for system updates...
[2026-08-25 06:48:28,930.930 INFO    ] 200
[2026-08-25 06:48:28,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:28,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:48:28,987.987 INFO    ] No update needed
[2026-08-25 06:48:28,989.989 INFO    ] Checking for camera pi updates...
[2026-08-25 06:48:29,029.029 INFO    ] 200
[2026-08-25 06:48:29,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:29,075.075 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:48:29,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:48:29,132.132 INFO    ] No camera update needed
[2026-08-25 06:48:29,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:48:29,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:48:29,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:48:29,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:48:31,187.187 INFO    ] ================================================
[2026-08-25 06:48:31,202.202 INFO    ] Launching Daemon at Tue Aug 25 06:48:31 IST 2026
[2026-08-25 06:48:31,213.213 INFO    ] ================================================
[2026-08-25 06:48:31,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:48:31
[2026-08-25 06:48:32,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:48:32,715.715 INFO    ] Initializing speech engine...
[2026-08-25 06:48:32,728.728 INFO    ] 2026-08-25 06:48:32
[2026-08-25 06:48:33,008.008 INFO    ] 2026-08-25 06:48:32
[2026-08-25 06:48:33,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:48:33,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:48:33,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:48:33,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:48:33,530.530 INFO    ] time= 25/08/2026 06:48:33
[2026-08-25 06:48:33,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:48:33,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:48:33,711.711 INFO    ] No existing commands found in stream
[2026-08-25 06:48:38,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:48:38,730.730 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 06:48:39,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:48:39,548.548 INFO    ] Checking for system updates...
[2026-08-25 06:48:39,583.583 INFO    ] 200
[2026-08-25 06:48:39,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:39,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:48:39,641.641 INFO    ] No update needed
[2026-08-25 06:48:39,644.644 INFO    ] Checking for camera pi updates...
[2026-08-25 06:48:39,678.678 INFO    ] 200
[2026-08-25 06:48:39,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:39,722.722 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:48:39,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:48:39,772.772 INFO    ] No camera update needed
[2026-08-25 06:48:39,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:48:39,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:48:39,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:48:39,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:48:41,830.830 INFO    ] ================================================
[2026-08-25 06:48:41,845.845 INFO    ] Launching Daemon at Tue Aug 25 06:48:41 IST 2026
[2026-08-25 06:48:41,856.856 INFO    ] ================================================
[2026-08-25 06:48:42,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:48:42
[2026-08-25 06:48:43,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:48:43,439.439 INFO    ] Initializing speech engine...
[2026-08-25 06:48:43,449.449 INFO    ] 2026-08-25 06:48:43
[2026-08-25 06:48:43,715.715 INFO    ] 2026-08-25 06:48:43
[2026-08-25 06:48:43,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:48:43,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:48:43,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:48:44,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:48:44,088.088 INFO    ] time= 25/08/2026 06:48:44
[2026-08-25 06:48:44,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:48:44,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:48:44,212.212 INFO    ] No existing commands found in stream
[2026-08-25 06:48:49,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:48:49,250.250 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 06:48:49,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:48:49,757.757 INFO    ] Checking for system updates...
[2026-08-25 06:48:49,795.795 INFO    ] 200
[2026-08-25 06:48:49,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:49,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:48:49,854.854 INFO    ] No update needed
[2026-08-25 06:48:49,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 06:48:49,890.890 INFO    ] 200
[2026-08-25 06:48:49,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:48:49,932.932 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:48:50,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:48:50,083.083 INFO    ] No camera update needed
[2026-08-25 06:48:50,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:48:50,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:48:50,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:48:50,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:48:52,138.138 INFO    ] ================================================
[2026-08-25 06:48:52,153.153 INFO    ] Launching Daemon at Tue Aug 25 06:48:52 IST 2026
[2026-08-25 06:48:52,163.163 INFO    ] ================================================
[2026-08-25 06:48:52,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:48:52
[2026-08-25 06:48:53,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:48:53,583.583 INFO    ] Initializing speech engine...
[2026-08-25 06:48:53,592.592 INFO    ] 2026-08-25 06:48:53
[2026-08-25 06:48:53,844.844 INFO    ] 2026-08-25 06:48:53
[2026-08-25 06:48:53,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:48:54,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:48:54,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:48:54,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:48:54,308.308 INFO    ] time= 25/08/2026 06:48:54
[2026-08-25 06:48:54,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:48:54,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:48:54,531.531 INFO    ] No existing commands found in stream
[2026-08-25 06:48:59,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:48:59,553.553 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 06:49:02,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:49:02,491.491 INFO    ] Checking for system updates...
[2026-08-25 06:49:02,533.533 INFO    ] 200
[2026-08-25 06:49:02,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:02,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:02,606.606 INFO    ] No update needed
[2026-08-25 06:49:02,609.609 INFO    ] Checking for camera pi updates...
[2026-08-25 06:49:02,648.648 INFO    ] 200
[2026-08-25 06:49:02,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:02,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:49:02,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:02,767.767 INFO    ] No camera update needed
[2026-08-25 06:49:02,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:49:02,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:49:02,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:49:02,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:49:04,826.826 INFO    ] ================================================
[2026-08-25 06:49:04,841.841 INFO    ] Launching Daemon at Tue Aug 25 06:49:04 IST 2026
[2026-08-25 06:49:04,852.852 INFO    ] ================================================
[2026-08-25 06:49:05,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:49:05
[2026-08-25 06:49:06,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:49:06,420.420 INFO    ] Initializing speech engine...
[2026-08-25 06:49:06,426.426 INFO    ] 2026-08-25 06:49:06
[2026-08-25 06:49:06,701.701 INFO    ] 2026-08-25 06:49:06
[2026-08-25 06:49:06,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:49:06,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:49:06,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:49:07,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:49:07,085.085 INFO    ] time= 25/08/2026 06:49:07
[2026-08-25 06:49:07,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:49:07,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:49:07,253.253 INFO    ] No existing commands found in stream
[2026-08-25 06:49:12,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:49:12,287.287 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 06:49:14,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:49:14,614.614 INFO    ] Checking for system updates...
[2026-08-25 06:49:14,649.649 INFO    ] 200
[2026-08-25 06:49:14,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:14,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:14,707.707 INFO    ] No update needed
[2026-08-25 06:49:14,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 06:49:14,742.742 INFO    ] 200
[2026-08-25 06:49:14,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:14,792.792 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:49:14,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:14,842.842 INFO    ] No camera update needed
[2026-08-25 06:49:14,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:49:14,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:49:14,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:49:14,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:49:16,896.896 INFO    ] ================================================
[2026-08-25 06:49:16,911.911 INFO    ] Launching Daemon at Tue Aug 25 06:49:16 IST 2026
[2026-08-25 06:49:16,922.922 INFO    ] ================================================
[2026-08-25 06:49:17,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:49:17
[2026-08-25 06:49:18,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:49:18,499.499 INFO    ] Initializing speech engine...
[2026-08-25 06:49:18,507.507 INFO    ] 2026-08-25 06:49:18
[2026-08-25 06:49:18,774.774 INFO    ] 2026-08-25 06:49:18
[2026-08-25 06:49:18,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:49:19,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:49:19,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:49:19,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:49:19,232.232 INFO    ] time= 25/08/2026 06:49:19
[2026-08-25 06:49:19,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:49:19,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:49:19,437.437 INFO    ] No existing commands found in stream
[2026-08-25 06:49:24,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:49:24,452.452 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 06:49:26,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:49:26,945.945 INFO    ] Checking for system updates...
[2026-08-25 06:49:26,980.980 INFO    ] 200
[2026-08-25 06:49:26,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:27,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:27,039.039 INFO    ] No update needed
[2026-08-25 06:49:27,041.041 INFO    ] Checking for camera pi updates...
[2026-08-25 06:49:27,075.075 INFO    ] 200
[2026-08-25 06:49:27,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:27,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:49:27,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:27,177.177 INFO    ] No camera update needed
[2026-08-25 06:49:27,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:49:27,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:49:27,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:49:27,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:49:29,233.233 INFO    ] ================================================
[2026-08-25 06:49:29,248.248 INFO    ] Launching Daemon at Tue Aug 25 06:49:29 IST 2026
[2026-08-25 06:49:29,259.259 INFO    ] ================================================
[2026-08-25 06:49:29,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:49:29
[2026-08-25 06:49:30,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:49:30,837.837 INFO    ] Initializing speech engine...
[2026-08-25 06:49:30,845.845 INFO    ] 2026-08-25 06:49:30
[2026-08-25 06:49:31,118.118 INFO    ] 2026-08-25 06:49:31
[2026-08-25 06:49:31,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:49:31,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:49:31,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:49:31,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:49:31,598.598 INFO    ] time= 25/08/2026 06:49:31
[2026-08-25 06:49:31,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:49:31,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:49:31,772.772 INFO    ] No existing commands found in stream
[2026-08-25 06:49:36,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:49:36,797.797 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 06:49:40,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:49:40,138.138 INFO    ] Checking for system updates...
[2026-08-25 06:49:40,173.173 INFO    ] 200
[2026-08-25 06:49:40,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:40,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:40,229.229 INFO    ] No update needed
[2026-08-25 06:49:40,232.232 INFO    ] Checking for camera pi updates...
[2026-08-25 06:49:40,268.268 INFO    ] 200
[2026-08-25 06:49:40,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:40,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:49:40,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:49:40,362.362 INFO    ] No camera update needed
[2026-08-25 06:49:40,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:49:40,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:49:40,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:49:40,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:49:42,416.416 INFO    ] ================================================
[2026-08-25 06:49:42,430.430 INFO    ] Launching Daemon at Tue Aug 25 06:49:42 IST 2026
[2026-08-25 06:49:42,441.441 INFO    ] ================================================
[2026-08-25 06:49:43,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:49:43
[2026-08-25 06:49:43,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:49:43,861.861 INFO    ] Initializing speech engine...
[2026-08-25 06:49:43,885.885 INFO    ] 2026-08-25 06:49:43
[2026-08-25 06:49:44,149.149 INFO    ] 2026-08-25 06:49:44
[2026-08-25 06:49:44,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:49:44,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:49:44,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:49:44,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:49:44,550.550 INFO    ] time= 25/08/2026 06:49:44
[2026-08-25 06:49:44,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:49:44,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:49:44,726.726 INFO    ] No existing commands found in stream
[2026-08-25 06:49:49,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:49:49,750.750 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 06:49:52,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:49:52,303.303 INFO    ] Checking for system updates...
[2026-08-25 06:49:52,338.338 INFO    ] 200
[2026-08-25 06:49:52,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:52,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:49:52,397.397 INFO    ] No update needed
[2026-08-25 06:49:52,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 06:49:52,435.435 INFO    ] 200
[2026-08-25 06:49:52,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:49:52,481.481 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:49:52,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:49:52,529.529 INFO    ] No camera update needed
[2026-08-25 06:49:52,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:49:52,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:49:52,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:49:52,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:49:54,584.584 INFO    ] ================================================
[2026-08-25 06:49:54,599.599 INFO    ] Launching Daemon at Tue Aug 25 06:49:54 IST 2026
[2026-08-25 06:49:54,609.609 INFO    ] ================================================
[2026-08-25 06:49:55,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:49:55
[2026-08-25 06:49:55,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:49:56,165.165 INFO    ] Initializing speech engine...
[2026-08-25 06:49:56,171.171 INFO    ] 2026-08-25 06:49:56
[2026-08-25 06:49:56,438.438 INFO    ] 2026-08-25 06:49:56
[2026-08-25 06:49:56,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:49:56,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:49:56,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:49:56,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:49:56,896.896 INFO    ] time= 25/08/2026 06:49:56
[2026-08-25 06:49:56,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:49:56,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:49:57,120.120 INFO    ] No existing commands found in stream
[2026-08-25 06:50:02,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:50:02,160.160 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 06:50:08,497.497 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:50:08,500.500 INFO    ] Checking for system updates...
[2026-08-25 06:50:08,536.536 INFO    ] 200
[2026-08-25 06:50:08,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:08,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:08,593.593 INFO    ] No update needed
[2026-08-25 06:50:08,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 06:50:08,631.631 INFO    ] 200
[2026-08-25 06:50:08,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:08,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:50:08,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:08,730.730 INFO    ] No camera update needed
[2026-08-25 06:50:08,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:50:08,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:50:08,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:50:08,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:50:10,784.784 INFO    ] ================================================
[2026-08-25 06:50:10,799.799 INFO    ] Launching Daemon at Tue Aug 25 06:50:10 IST 2026
[2026-08-25 06:50:10,810.810 INFO    ] ================================================
[2026-08-25 06:50:11,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:50:11
[2026-08-25 06:50:11,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:50:12,230.230 INFO    ] Initializing speech engine...
[2026-08-25 06:50:12,245.245 INFO    ] 2026-08-25 06:50:12
[2026-08-25 06:50:12,511.511 INFO    ] 2026-08-25 06:50:12
[2026-08-25 06:50:12,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:50:12,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:50:12,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:50:12,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:50:13,011.011 INFO    ] time= 25/08/2026 06:50:12
[2026-08-25 06:50:13,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:50:13,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:50:13,236.236 INFO    ] No existing commands found in stream
[2026-08-25 06:50:18,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:50:18,261.261 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 06:50:21,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:50:21,536.536 INFO    ] Checking for system updates...
[2026-08-25 06:50:21,572.572 INFO    ] 200
[2026-08-25 06:50:21,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:21,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:21,630.630 INFO    ] No update needed
[2026-08-25 06:50:21,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 06:50:21,665.665 INFO    ] 200
[2026-08-25 06:50:21,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:21,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:50:21,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:21,756.756 INFO    ] No camera update needed
[2026-08-25 06:50:21,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:50:21,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:50:21,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:50:21,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:50:23,812.812 INFO    ] ================================================
[2026-08-25 06:50:23,827.827 INFO    ] Launching Daemon at Tue Aug 25 06:50:23 IST 2026
[2026-08-25 06:50:23,837.837 INFO    ] ================================================
[2026-08-25 06:50:24,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:50:24
[2026-08-25 06:50:24,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:50:25,227.227 INFO    ] Initializing speech engine...
[2026-08-25 06:50:25,235.235 INFO    ] 2026-08-25 06:50:25
[2026-08-25 06:50:25,518.518 INFO    ] 2026-08-25 06:50:25
[2026-08-25 06:50:25,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:50:25,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:50:25,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:50:25,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:50:25,919.919 INFO    ] time= 25/08/2026 06:50:25
[2026-08-25 06:50:25,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:50:25,930.930 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:50:26,002.002 INFO    ] No existing commands found in stream
[2026-08-25 06:50:31,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:50:31,036.036 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 06:50:34,777.777 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:50:34,779.779 INFO    ] Checking for system updates...
[2026-08-25 06:50:34,815.815 INFO    ] 200
[2026-08-25 06:50:34,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:34,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:34,874.874 INFO    ] No update needed
[2026-08-25 06:50:34,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 06:50:34,911.911 INFO    ] 200
[2026-08-25 06:50:34,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:34,955.955 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:50:35,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:35,004.004 INFO    ] No camera update needed
[2026-08-25 06:50:35,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:50:35,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:50:35,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:50:35,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:50:37,062.062 INFO    ] ================================================
[2026-08-25 06:50:37,077.077 INFO    ] Launching Daemon at Tue Aug 25 06:50:37 IST 2026
[2026-08-25 06:50:37,087.087 INFO    ] ================================================
[2026-08-25 06:50:37,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:50:37
[2026-08-25 06:50:38,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:50:38,487.487 INFO    ] Initializing speech engine...
[2026-08-25 06:50:38,500.500 INFO    ] 2026-08-25 06:50:38
[2026-08-25 06:50:38,768.768 INFO    ] 2026-08-25 06:50:38
[2026-08-25 06:50:38,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:50:39,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:50:39,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:50:39,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:50:39,146.146 INFO    ] time= 25/08/2026 06:50:39
[2026-08-25 06:50:39,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:50:39,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:50:39,333.333 INFO    ] No existing commands found in stream
[2026-08-25 06:50:44,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:50:44,355.355 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 06:50:46,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:50:46,260.260 INFO    ] Checking for system updates...
[2026-08-25 06:50:46,299.299 INFO    ] 200
[2026-08-25 06:50:46,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:46,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:46,357.357 INFO    ] No update needed
[2026-08-25 06:50:46,360.360 INFO    ] Checking for camera pi updates...
[2026-08-25 06:50:46,394.394 INFO    ] 200
[2026-08-25 06:50:46,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:46,441.441 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:50:46,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:50:46,489.489 INFO    ] No camera update needed
[2026-08-25 06:50:46,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:50:46,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:50:46,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:50:46,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:50:48,547.547 INFO    ] ================================================
[2026-08-25 06:50:48,562.562 INFO    ] Launching Daemon at Tue Aug 25 06:50:48 IST 2026
[2026-08-25 06:50:48,573.573 INFO    ] ================================================
[2026-08-25 06:50:49,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:50:49
[2026-08-25 06:50:49,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:50:49,973.973 INFO    ] Initializing speech engine...
[2026-08-25 06:50:49,988.988 INFO    ] 2026-08-25 06:50:49
[2026-08-25 06:50:50,259.259 INFO    ] 2026-08-25 06:50:50
[2026-08-25 06:50:50,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:50:50,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:50:50,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:50:50,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:50:50,638.638 INFO    ] time= 25/08/2026 06:50:50
[2026-08-25 06:50:50,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:50:50,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:50:50,819.819 INFO    ] No existing commands found in stream
[2026-08-25 06:50:55,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:50:55,847.847 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 06:50:58,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:50:58,806.806 INFO    ] Checking for system updates...
[2026-08-25 06:50:58,844.844 INFO    ] 200
[2026-08-25 06:50:58,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:58,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:50:58,905.905 INFO    ] No update needed
[2026-08-25 06:50:58,907.907 INFO    ] Checking for camera pi updates...
[2026-08-25 06:50:58,940.940 INFO    ] 200
[2026-08-25 06:50:58,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:50:58,983.983 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:50:59,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:50:59,138.138 INFO    ] No camera update needed
[2026-08-25 06:50:59,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:50:59,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:50:59,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:50:59,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:51:01,194.194 INFO    ] ================================================
[2026-08-25 06:51:01,209.209 INFO    ] Launching Daemon at Tue Aug 25 06:51:01 IST 2026
[2026-08-25 06:51:01,220.220 INFO    ] ================================================
[2026-08-25 06:51:01,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:51:01
[2026-08-25 06:51:02,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:51:02,825.825 INFO    ] Initializing speech engine...
[2026-08-25 06:51:02,833.833 INFO    ] 2026-08-25 06:51:02
[2026-08-25 06:51:03,208.208 INFO    ] 2026-08-25 06:51:03
[2026-08-25 06:51:03,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:51:03,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:51:03,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:51:03,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:51:03,567.567 INFO    ] time= 25/08/2026 06:51:03
[2026-08-25 06:51:03,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:51:03,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:51:03,704.704 INFO    ] No existing commands found in stream
[2026-08-25 06:51:08,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:51:08,730.730 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 06:51:11,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:51:11,665.665 INFO    ] Checking for system updates...
[2026-08-25 06:51:11,704.704 INFO    ] 200
[2026-08-25 06:51:11,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:11,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:51:11,768.768 INFO    ] No update needed
[2026-08-25 06:51:11,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 06:51:11,837.837 INFO    ] 200
[2026-08-25 06:51:11,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:11,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:51:11,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:51:11,936.936 INFO    ] No camera update needed
[2026-08-25 06:51:11,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:51:11,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:51:11,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:51:11,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:51:14,995.995 INFO    ] ================================================
[2026-08-25 06:51:14,010.010 INFO    ] Launching Daemon at Tue Aug 25 06:51:14 IST 2026
[2026-08-25 06:51:14,020.020 INFO    ] ================================================
[2026-08-25 06:51:14,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:51:14
[2026-08-25 06:51:15,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:51:15,484.484 INFO    ] Initializing speech engine...
[2026-08-25 06:51:15,502.502 INFO    ] 2026-08-25 06:51:15
[2026-08-25 06:51:15,782.782 INFO    ] 2026-08-25 06:51:15
[2026-08-25 06:51:15,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:51:16,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:51:16,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:51:16,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:51:16,262.262 INFO    ] time= 25/08/2026 06:51:16
[2026-08-25 06:51:16,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:51:16,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:51:16,451.451 INFO    ] No existing commands found in stream
[2026-08-25 06:51:21,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:51:21,499.499 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 06:51:24,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:51:24,685.685 INFO    ] Checking for system updates...
[2026-08-25 06:51:24,776.776 INFO    ] 200
[2026-08-25 06:51:24,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:24,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:51:24,835.835 INFO    ] No update needed
[2026-08-25 06:51:24,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 06:51:24,875.875 INFO    ] 200
[2026-08-25 06:51:24,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:24,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:51:24,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:51:24,978.978 INFO    ] No camera update needed
[2026-08-25 06:51:24,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:51:24,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:51:24,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:51:24,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:51:27,037.037 INFO    ] ================================================
[2026-08-25 06:51:27,053.053 INFO    ] Launching Daemon at Tue Aug 25 06:51:27 IST 2026
[2026-08-25 06:51:27,063.063 INFO    ] ================================================
[2026-08-25 06:51:27,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:51:27
[2026-08-25 06:51:28,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:51:28,612.612 INFO    ] Initializing speech engine...
[2026-08-25 06:51:28,620.620 INFO    ] 2026-08-25 06:51:28
[2026-08-25 06:51:28,902.902 INFO    ] 2026-08-25 06:51:28
[2026-08-25 06:51:28,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:51:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:51:29,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:51:29,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:51:29,375.375 INFO    ] time= 25/08/2026 06:51:29
[2026-08-25 06:51:29,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:51:29,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:51:29,586.586 INFO    ] No existing commands found in stream
[2026-08-25 06:51:34,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:51:34,605.605 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 06:51:35,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:51:35,983.983 INFO    ] Checking for system updates...
[2026-08-25 06:51:36,020.020 INFO    ] 200
[2026-08-25 06:51:36,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:36,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:51:36,078.078 INFO    ] No update needed
[2026-08-25 06:51:36,081.081 INFO    ] Checking for camera pi updates...
[2026-08-25 06:51:36,118.118 INFO    ] 200
[2026-08-25 06:51:36,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:36,162.162 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:51:36,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:51:36,215.215 INFO    ] No camera update needed
[2026-08-25 06:51:36,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:51:36,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:51:36,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:51:36,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:51:38,271.271 INFO    ] ================================================
[2026-08-25 06:51:38,286.286 INFO    ] Launching Daemon at Tue Aug 25 06:51:38 IST 2026
[2026-08-25 06:51:38,297.297 INFO    ] ================================================
[2026-08-25 06:51:38,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:51:38
[2026-08-25 06:51:39,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:51:39,849.849 INFO    ] Initializing speech engine...
[2026-08-25 06:51:39,862.862 INFO    ] 2026-08-25 06:51:39
[2026-08-25 06:51:40,166.166 INFO    ] 2026-08-25 06:51:40
[2026-08-25 06:51:40,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:51:40,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:51:40,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:51:40,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:51:40,670.670 INFO    ] time= 25/08/2026 06:51:40
[2026-08-25 06:51:40,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:51:40,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:51:40,847.847 INFO    ] No existing commands found in stream
[2026-08-25 06:51:45,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:51:45,881.881 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 06:51:47,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:51:47,686.686 INFO    ] Checking for system updates...
[2026-08-25 06:51:47,722.722 INFO    ] 200
[2026-08-25 06:51:47,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:47,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:51:47,780.780 INFO    ] No update needed
[2026-08-25 06:51:47,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 06:51:47,817.817 INFO    ] 200
[2026-08-25 06:51:47,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:51:47,865.865 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:51:47,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:51:47,919.919 INFO    ] No camera update needed
[2026-08-25 06:51:47,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:51:47,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:51:47,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:51:47,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:51:49,975.975 INFO    ] ================================================
[2026-08-25 06:51:49,990.990 INFO    ] Launching Daemon at Tue Aug 25 06:51:49 IST 2026
[2026-08-25 06:51:50,000.000 INFO    ] ================================================
[2026-08-25 06:51:50,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:51:50
[2026-08-25 06:51:51,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:51:51,400.400 INFO    ] Initializing speech engine...
[2026-08-25 06:51:51,424.424 INFO    ] 2026-08-25 06:51:51
[2026-08-25 06:51:51,693.693 INFO    ] 2026-08-25 06:51:51
[2026-08-25 06:51:51,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:51:51,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:51:51,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:51:52,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:51:52,091.091 INFO    ] time= 25/08/2026 06:51:52
[2026-08-25 06:51:52,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:51:52,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:51:52,173.173 INFO    ] No existing commands found in stream
[2026-08-25 06:51:57,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:51:57,211.211 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 06:52:00,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:52:00,953.953 INFO    ] Checking for system updates...
[2026-08-25 06:52:00,989.989 INFO    ] 200
[2026-08-25 06:52:00,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:01,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:52:01,046.046 INFO    ] No update needed
[2026-08-25 06:52:01,048.048 INFO    ] Checking for camera pi updates...
[2026-08-25 06:52:01,081.081 INFO    ] 200
[2026-08-25 06:52:01,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:01,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:52:01,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:52:01,178.178 INFO    ] No camera update needed
[2026-08-25 06:52:01,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:52:01,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:52:01,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:52:01,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:52:03,250.250 INFO    ] ================================================
[2026-08-25 06:52:03,266.266 INFO    ] Launching Daemon at Tue Aug 25 06:52:03 IST 2026
[2026-08-25 06:52:03,276.276 INFO    ] ================================================
[2026-08-25 06:52:03,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:52:03
[2026-08-25 06:52:04,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:52:04,692.692 INFO    ] Initializing speech engine...
[2026-08-25 06:52:04,701.701 INFO    ] 2026-08-25 06:52:04
[2026-08-25 06:52:04,961.961 INFO    ] 2026-08-25 06:52:04
[2026-08-25 06:52:05,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:52:05,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:52:05,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:52:05,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:52:05,439.439 INFO    ] time= 25/08/2026 06:52:05
[2026-08-25 06:52:05,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:52:05,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:52:05,655.655 INFO    ] No existing commands found in stream
[2026-08-25 06:52:10,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:52:10,672.672 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 06:52:13,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:52:13,336.336 INFO    ] Checking for system updates...
[2026-08-25 06:52:13,373.373 INFO    ] 200
[2026-08-25 06:52:13,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:13,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:52:13,431.431 INFO    ] No update needed
[2026-08-25 06:52:13,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 06:52:13,470.470 INFO    ] 200
[2026-08-25 06:52:13,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:13,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:52:13,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:52:13,578.578 INFO    ] No camera update needed
[2026-08-25 06:52:13,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:52:13,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:52:13,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:52:13,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:52:15,634.634 INFO    ] ================================================
[2026-08-25 06:52:15,650.650 INFO    ] Launching Daemon at Tue Aug 25 06:52:15 IST 2026
[2026-08-25 06:52:15,660.660 INFO    ] ================================================
[2026-08-25 06:52:16,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:52:16
[2026-08-25 06:52:16,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:52:17,066.066 INFO    ] Initializing speech engine...
[2026-08-25 06:52:17,082.082 INFO    ] 2026-08-25 06:52:17
[2026-08-25 06:52:17,359.359 INFO    ] 2026-08-25 06:52:17
[2026-08-25 06:52:17,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:52:17,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:52:17,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:52:17,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:52:17,769.769 INFO    ] time= 25/08/2026 06:52:17
[2026-08-25 06:52:17,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:52:17,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:52:17,851.851 INFO    ] No existing commands found in stream
[2026-08-25 06:52:22,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:52:22,867.867 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 06:52:26,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:52:26,135.135 INFO    ] Checking for system updates...
[2026-08-25 06:52:26,170.170 INFO    ] 200
[2026-08-25 06:52:26,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:26,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:52:26,231.231 INFO    ] No update needed
[2026-08-25 06:52:26,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 06:52:26,269.269 INFO    ] 200
[2026-08-25 06:52:26,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:26,315.315 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:52:26,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:52:26,374.374 INFO    ] No camera update needed
[2026-08-25 06:52:26,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:52:26,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:52:26,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:52:26,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:52:28,429.429 INFO    ] ================================================
[2026-08-25 06:52:28,444.444 INFO    ] Launching Daemon at Tue Aug 25 06:52:28 IST 2026
[2026-08-25 06:52:28,455.455 INFO    ] ================================================
[2026-08-25 06:52:29,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:52:29
[2026-08-25 06:52:29,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:52:29,913.913 INFO    ] Initializing speech engine...
[2026-08-25 06:52:29,923.923 INFO    ] 2026-08-25 06:52:29
[2026-08-25 06:52:30,187.187 INFO    ] 2026-08-25 06:52:30
[2026-08-25 06:52:30,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:52:30,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:52:30,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:52:30,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:52:30,655.655 INFO    ] time= 25/08/2026 06:52:30
[2026-08-25 06:52:30,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:52:30,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:52:30,880.880 INFO    ] No existing commands found in stream
[2026-08-25 06:52:35,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:52:35,900.900 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 06:52:38,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:52:38,442.442 INFO    ] Checking for system updates...
[2026-08-25 06:52:38,479.479 INFO    ] 200
[2026-08-25 06:52:38,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:38,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:52:38,537.537 INFO    ] No update needed
[2026-08-25 06:52:38,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 06:52:38,572.572 INFO    ] 200
[2026-08-25 06:52:38,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:38,615.615 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:52:38,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:52:38,665.665 INFO    ] No camera update needed
[2026-08-25 06:52:38,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:52:38,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:52:38,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:52:38,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:52:40,719.719 INFO    ] ================================================
[2026-08-25 06:52:40,734.734 INFO    ] Launching Daemon at Tue Aug 25 06:52:40 IST 2026
[2026-08-25 06:52:40,744.744 INFO    ] ================================================
[2026-08-25 06:52:41,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:52:41
[2026-08-25 06:52:42,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:52:42,305.305 INFO    ] Initializing speech engine...
[2026-08-25 06:52:42,315.315 INFO    ] 2026-08-25 06:52:42
[2026-08-25 06:52:42,563.563 INFO    ] 2026-08-25 06:52:42
[2026-08-25 06:52:42,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:52:42,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:52:42,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:52:42,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:52:43,048.048 INFO    ] time= 25/08/2026 06:52:42
[2026-08-25 06:52:43,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:52:43,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:52:43,279.279 INFO    ] No existing commands found in stream
[2026-08-25 06:52:48,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:52:48,297.297 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 06:52:51,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:52:51,459.459 INFO    ] Checking for system updates...
[2026-08-25 06:52:51,496.496 INFO    ] 200
[2026-08-25 06:52:51,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:51,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:52:51,554.554 INFO    ] No update needed
[2026-08-25 06:52:51,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 06:52:51,593.593 INFO    ] 200
[2026-08-25 06:52:51,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:52:51,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:52:51,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:52:51,687.687 INFO    ] No camera update needed
[2026-08-25 06:52:51,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:52:51,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:52:51,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:52:51,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:52:53,744.744 INFO    ] ================================================
[2026-08-25 06:52:53,759.759 INFO    ] Launching Daemon at Tue Aug 25 06:52:53 IST 2026
[2026-08-25 06:52:53,770.770 INFO    ] ================================================
[2026-08-25 06:52:54,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:52:54
[2026-08-25 06:52:55,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:52:55,389.389 INFO    ] Initializing speech engine...
[2026-08-25 06:52:55,398.398 INFO    ] 2026-08-25 06:52:55
[2026-08-25 06:52:55,687.687 INFO    ] 2026-08-25 06:52:55
[2026-08-25 06:52:55,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:52:55,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:52:55,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:52:56,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:52:56,233.233 INFO    ] time= 25/08/2026 06:52:56
[2026-08-25 06:52:56,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:52:56,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:52:56,404.404 INFO    ] No existing commands found in stream
[2026-08-25 06:53:01,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:53:01,441.441 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 06:53:05,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:53:05,900.900 INFO    ] Checking for system updates...
[2026-08-25 06:53:05,938.938 INFO    ] 200
[2026-08-25 06:53:05,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:05,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:53:05,998.998 INFO    ] No update needed
[2026-08-25 06:53:06,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 06:53:06,035.035 INFO    ] 200
[2026-08-25 06:53:06,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:06,080.080 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:53:06,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:53:06,131.131 INFO    ] No camera update needed
[2026-08-25 06:53:06,133.133 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:53:06,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:53:06,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:53:06,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:53:08,189.189 INFO    ] ================================================
[2026-08-25 06:53:08,204.204 INFO    ] Launching Daemon at Tue Aug 25 06:53:08 IST 2026
[2026-08-25 06:53:08,215.215 INFO    ] ================================================
[2026-08-25 06:53:08,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:53:08
[2026-08-25 06:53:09,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:53:09,649.649 INFO    ] Initializing speech engine...
[2026-08-25 06:53:09,655.655 INFO    ] 2026-08-25 06:53:09
[2026-08-25 06:53:09,904.904 INFO    ] 2026-08-25 06:53:09
[2026-08-25 06:53:09,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:53:10,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:53:10,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:53:10,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:53:10,279.279 INFO    ] time= 25/08/2026 06:53:10
[2026-08-25 06:53:10,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:53:10,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:53:10,457.457 INFO    ] No existing commands found in stream
[2026-08-25 06:53:15,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:53:15,490.490 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 06:53:16,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:53:16,070.070 INFO    ] Checking for system updates...
[2026-08-25 06:53:16,106.106 INFO    ] 200
[2026-08-25 06:53:16,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:16,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:53:16,164.164 INFO    ] No update needed
[2026-08-25 06:53:16,166.166 INFO    ] Checking for camera pi updates...
[2026-08-25 06:53:16,204.204 INFO    ] 200
[2026-08-25 06:53:16,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:16,247.247 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:53:16,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:53:16,305.305 INFO    ] No camera update needed
[2026-08-25 06:53:16,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:53:16,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:53:16,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:53:16,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:53:18,362.362 INFO    ] ================================================
[2026-08-25 06:53:18,378.378 INFO    ] Launching Daemon at Tue Aug 25 06:53:18 IST 2026
[2026-08-25 06:53:18,389.389 INFO    ] ================================================
[2026-08-25 06:53:18,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:53:18
[2026-08-25 06:53:19,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:53:19,832.832 INFO    ] Initializing speech engine...
[2026-08-25 06:53:19,841.841 INFO    ] 2026-08-25 06:53:19
[2026-08-25 06:53:20,139.139 INFO    ] 2026-08-25 06:53:20
[2026-08-25 06:53:20,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:53:20,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:53:20,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:53:20,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:53:20,499.499 INFO    ] time= 25/08/2026 06:53:20
[2026-08-25 06:53:20,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:53:20,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:53:20,651.651 INFO    ] No existing commands found in stream
[2026-08-25 06:53:25,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:53:25,665.665 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 06:53:30,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:53:30,011.011 INFO    ] Checking for system updates...
[2026-08-25 06:53:30,048.048 INFO    ] 200
[2026-08-25 06:53:30,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:30,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:53:30,113.113 INFO    ] No update needed
[2026-08-25 06:53:30,116.116 INFO    ] Checking for camera pi updates...
[2026-08-25 06:53:30,151.151 INFO    ] 200
[2026-08-25 06:53:30,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:30,195.195 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:53:30,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:53:30,262.262 INFO    ] No camera update needed
[2026-08-25 06:53:30,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:53:30,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:53:30,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:53:30,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:53:32,321.321 INFO    ] ================================================
[2026-08-25 06:53:32,338.338 INFO    ] Launching Daemon at Tue Aug 25 06:53:32 IST 2026
[2026-08-25 06:53:32,349.349 INFO    ] ================================================
[2026-08-25 06:53:32,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:53:32
[2026-08-25 06:53:33,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:53:33,807.807 INFO    ] Initializing speech engine...
[2026-08-25 06:53:33,814.814 INFO    ] 2026-08-25 06:53:33
[2026-08-25 06:53:34,111.111 INFO    ] 2026-08-25 06:53:34
[2026-08-25 06:53:34,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:53:34,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:53:34,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:53:34,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:53:34,494.494 INFO    ] time= 25/08/2026 06:53:34
[2026-08-25 06:53:34,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:53:34,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:53:34,622.622 INFO    ] No existing commands found in stream
[2026-08-25 06:53:39,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:53:39,639.639 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 06:53:41,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:53:41,280.280 INFO    ] Checking for system updates...
[2026-08-25 06:53:41,316.316 INFO    ] 200
[2026-08-25 06:53:41,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:41,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:53:41,373.373 INFO    ] No update needed
[2026-08-25 06:53:41,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 06:53:41,409.409 INFO    ] 200
[2026-08-25 06:53:41,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:41,458.458 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:53:41,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:53:41,517.517 INFO    ] No camera update needed
[2026-08-25 06:53:41,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:53:41,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:53:41,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:53:41,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:53:43,572.572 INFO    ] ================================================
[2026-08-25 06:53:43,587.587 INFO    ] Launching Daemon at Tue Aug 25 06:53:43 IST 2026
[2026-08-25 06:53:43,598.598 INFO    ] ================================================
[2026-08-25 06:53:44,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:53:44
[2026-08-25 06:53:44,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:53:45,062.062 INFO    ] Initializing speech engine...
[2026-08-25 06:53:45,068.068 INFO    ] 2026-08-25 06:53:45
[2026-08-25 06:53:45,331.331 INFO    ] 2026-08-25 06:53:45
[2026-08-25 06:53:45,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:53:45,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:53:45,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:53:45,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:53:45,765.765 INFO    ] time= 25/08/2026 06:53:45
[2026-08-25 06:53:45,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:53:45,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:53:46,017.017 INFO    ] No existing commands found in stream
[2026-08-25 06:53:51,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:53:51,040.040 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 06:53:55,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:53:55,408.408 INFO    ] Checking for system updates...
[2026-08-25 06:53:55,444.444 INFO    ] 200
[2026-08-25 06:53:55,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:55,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:53:55,511.511 INFO    ] No update needed
[2026-08-25 06:53:55,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 06:53:55,547.547 INFO    ] 200
[2026-08-25 06:53:55,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:53:55,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:53:55,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:53:55,651.651 INFO    ] No camera update needed
[2026-08-25 06:53:55,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:53:55,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:53:55,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:53:55,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:53:57,710.710 INFO    ] ================================================
[2026-08-25 06:53:57,726.726 INFO    ] Launching Daemon at Tue Aug 25 06:53:57 IST 2026
[2026-08-25 06:53:57,737.737 INFO    ] ================================================
[2026-08-25 06:53:58,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:53:58
[2026-08-25 06:53:59,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:53:59,425.425 INFO    ] Initializing speech engine...
[2026-08-25 06:53:59,432.432 INFO    ] 2026-08-25 06:53:59
[2026-08-25 06:53:59,714.714 INFO    ] 2026-08-25 06:53:59
[2026-08-25 06:53:59,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:54:00,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:54:00,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:54:00,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:54:00,267.267 INFO    ] time= 25/08/2026 06:54:00
[2026-08-25 06:54:00,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:54:00,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:54:00,442.442 INFO    ] No existing commands found in stream
[2026-08-25 06:54:05,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:54:05,461.461 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 06:54:08,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:54:08,180.180 INFO    ] Checking for system updates...
[2026-08-25 06:54:08,217.217 INFO    ] 200
[2026-08-25 06:54:08,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:08,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:54:08,278.278 INFO    ] No update needed
[2026-08-25 06:54:08,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 06:54:08,316.316 INFO    ] 200
[2026-08-25 06:54:08,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:08,365.365 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:54:08,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:54:08,420.420 INFO    ] No camera update needed
[2026-08-25 06:54:08,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:54:08,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:54:08,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:54:08,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:54:10,476.476 INFO    ] ================================================
[2026-08-25 06:54:10,492.492 INFO    ] Launching Daemon at Tue Aug 25 06:54:10 IST 2026
[2026-08-25 06:54:10,503.503 INFO    ] ================================================
[2026-08-25 06:54:11,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:54:11
[2026-08-25 06:54:11,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:54:11,935.935 INFO    ] Initializing speech engine...
[2026-08-25 06:54:11,941.941 INFO    ] 2026-08-25 06:54:11
[2026-08-25 06:54:12,233.233 INFO    ] 2026-08-25 06:54:12
[2026-08-25 06:54:12,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:54:12,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:54:12,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:54:12,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:54:12,613.613 INFO    ] time= 25/08/2026 06:54:12
[2026-08-25 06:54:12,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:54:12,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:54:12,738.738 INFO    ] No existing commands found in stream
[2026-08-25 06:54:17,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:54:17,754.754 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 06:54:18,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:54:18,957.957 INFO    ] Checking for system updates...
[2026-08-25 06:54:18,994.994 INFO    ] 200
[2026-08-25 06:54:18,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:19,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:54:19,052.052 INFO    ] No update needed
[2026-08-25 06:54:19,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 06:54:19,093.093 INFO    ] 200
[2026-08-25 06:54:19,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:19,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:54:19,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:54:19,193.193 INFO    ] No camera update needed
[2026-08-25 06:54:19,196.196 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:54:19,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:54:19,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:54:19,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:54:21,252.252 INFO    ] ================================================
[2026-08-25 06:54:21,268.268 INFO    ] Launching Daemon at Tue Aug 25 06:54:21 IST 2026
[2026-08-25 06:54:21,279.279 INFO    ] ================================================
[2026-08-25 06:54:21,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:54:21
[2026-08-25 06:54:22,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:54:22,816.816 INFO    ] Initializing speech engine...
[2026-08-25 06:54:22,826.826 INFO    ] 2026-08-25 06:54:22
[2026-08-25 06:54:23,117.117 INFO    ] 2026-08-25 06:54:23
[2026-08-25 06:54:23,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:54:23,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:54:23,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:54:23,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:54:23,594.594 INFO    ] time= 25/08/2026 06:54:23
[2026-08-25 06:54:23,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:54:23,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:54:23,811.811 INFO    ] No existing commands found in stream
[2026-08-25 06:54:28,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:54:28,830.830 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 06:54:30,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:54:30,826.826 INFO    ] Checking for system updates...
[2026-08-25 06:54:30,867.867 INFO    ] 200
[2026-08-25 06:54:30,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:30,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:54:30,928.928 INFO    ] No update needed
[2026-08-25 06:54:30,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 06:54:30,969.969 INFO    ] 200
[2026-08-25 06:54:30,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:31,019.019 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:54:31,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:54:31,073.073 INFO    ] No camera update needed
[2026-08-25 06:54:31,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:54:31,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:54:31,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:54:31,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:54:33,139.139 INFO    ] ================================================
[2026-08-25 06:54:33,158.158 INFO    ] Launching Daemon at Tue Aug 25 06:54:33 IST 2026
[2026-08-25 06:54:33,170.170 INFO    ] ================================================
[2026-08-25 06:54:33,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:54:33
[2026-08-25 06:54:34,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:54:34,657.657 INFO    ] Initializing speech engine...
[2026-08-25 06:54:34,665.665 INFO    ] 2026-08-25 06:54:34
[2026-08-25 06:54:34,953.953 INFO    ] 2026-08-25 06:54:34
[2026-08-25 06:54:34,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:54:35,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:54:35,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:54:35,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:54:35,469.469 INFO    ] time= 25/08/2026 06:54:35
[2026-08-25 06:54:35,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:54:35,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:54:35,677.677 INFO    ] No existing commands found in stream
[2026-08-25 06:54:40,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:54:40,702.702 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 06:54:44,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:54:44,593.593 INFO    ] Checking for system updates...
[2026-08-25 06:54:44,629.629 INFO    ] 200
[2026-08-25 06:54:44,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:44,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:54:44,686.686 INFO    ] No update needed
[2026-08-25 06:54:44,689.689 INFO    ] Checking for camera pi updates...
[2026-08-25 06:54:44,726.726 INFO    ] 200
[2026-08-25 06:54:44,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:44,773.773 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:54:44,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:54:44,831.831 INFO    ] No camera update needed
[2026-08-25 06:54:44,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:54:44,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:54:44,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:54:44,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:54:46,886.886 INFO    ] ================================================
[2026-08-25 06:54:46,901.901 INFO    ] Launching Daemon at Tue Aug 25 06:54:46 IST 2026
[2026-08-25 06:54:46,912.912 INFO    ] ================================================
[2026-08-25 06:54:47,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:54:47
[2026-08-25 06:54:48,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:54:48,322.322 INFO    ] Initializing speech engine...
[2026-08-25 06:54:48,332.332 INFO    ] 2026-08-25 06:54:48
[2026-08-25 06:54:48,622.622 INFO    ] 2026-08-25 06:54:48
[2026-08-25 06:54:48,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:54:48,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:54:48,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:54:49,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:54:49,036.036 INFO    ] time= 25/08/2026 06:54:49
[2026-08-25 06:54:49,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:54:49,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:54:49,122.122 INFO    ] No existing commands found in stream
[2026-08-25 06:54:54,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:54:54,160.160 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 06:54:56,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:54:56,813.813 INFO    ] Checking for system updates...
[2026-08-25 06:54:56,848.848 INFO    ] 200
[2026-08-25 06:54:56,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:56,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:54:56,904.904 INFO    ] No update needed
[2026-08-25 06:54:56,907.907 INFO    ] Checking for camera pi updates...
[2026-08-25 06:54:56,941.941 INFO    ] 200
[2026-08-25 06:54:56,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:54:56,986.986 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:54:57,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:54:57,041.041 INFO    ] No camera update needed
[2026-08-25 06:54:57,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:54:57,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:54:57,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:54:57,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:54:59,095.095 INFO    ] ================================================
[2026-08-25 06:54:59,111.111 INFO    ] Launching Daemon at Tue Aug 25 06:54:59 IST 2026
[2026-08-25 06:54:59,122.122 INFO    ] ================================================
[2026-08-25 06:54:59,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:54:59
[2026-08-25 06:55:00,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:55:00,588.588 INFO    ] Initializing speech engine...
[2026-08-25 06:55:00,601.601 INFO    ] 2026-08-25 06:55:00
[2026-08-25 06:55:00,870.870 INFO    ] 2026-08-25 06:55:00
[2026-08-25 06:55:00,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:55:01,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:55:01,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:55:01,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:55:01,242.242 INFO    ] time= 25/08/2026 06:55:01
[2026-08-25 06:55:01,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:55:01,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:55:01,367.367 INFO    ] No existing commands found in stream
[2026-08-25 06:55:06,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:55:06,385.385 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 06:55:08,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:55:08,799.799 INFO    ] Checking for system updates...
[2026-08-25 06:55:08,835.835 INFO    ] 200
[2026-08-25 06:55:08,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:08,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:08,892.892 INFO    ] No update needed
[2026-08-25 06:55:08,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 06:55:08,931.931 INFO    ] 200
[2026-08-25 06:55:08,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:08,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:55:09,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:09,132.132 INFO    ] No camera update needed
[2026-08-25 06:55:09,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:55:09,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:55:09,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:55:09,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:55:11,187.187 INFO    ] ================================================
[2026-08-25 06:55:11,202.202 INFO    ] Launching Daemon at Tue Aug 25 06:55:11 IST 2026
[2026-08-25 06:55:11,213.213 INFO    ] ================================================
[2026-08-25 06:55:11,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:55:11
[2026-08-25 06:55:12,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:55:12,626.626 INFO    ] Initializing speech engine...
[2026-08-25 06:55:12,652.652 INFO    ] 2026-08-25 06:55:12
[2026-08-25 06:55:12,926.926 INFO    ] 2026-08-25 06:55:12
[2026-08-25 06:55:12,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:55:13,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:55:13,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:55:13,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:55:13,307.307 INFO    ] time= 25/08/2026 06:55:13
[2026-08-25 06:55:13,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:55:13,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:55:13,432.432 INFO    ] No existing commands found in stream
[2026-08-25 06:55:18,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:55:18,453.453 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 06:55:20,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:55:20,673.673 INFO    ] Checking for system updates...
[2026-08-25 06:55:20,708.708 INFO    ] 200
[2026-08-25 06:55:20,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:20,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:20,766.766 INFO    ] No update needed
[2026-08-25 06:55:20,769.769 INFO    ] Checking for camera pi updates...
[2026-08-25 06:55:20,802.802 INFO    ] 200
[2026-08-25 06:55:20,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:20,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:55:20,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:20,900.900 INFO    ] No camera update needed
[2026-08-25 06:55:20,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:55:20,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:55:20,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:55:20,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:55:22,955.955 INFO    ] ================================================
[2026-08-25 06:55:22,971.971 INFO    ] Launching Daemon at Tue Aug 25 06:55:22 IST 2026
[2026-08-25 06:55:22,982.982 INFO    ] ================================================
[2026-08-25 06:55:23,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:55:23
[2026-08-25 06:55:24,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:55:24,415.415 INFO    ] Initializing speech engine...
[2026-08-25 06:55:24,423.423 INFO    ] 2026-08-25 06:55:24
[2026-08-25 06:55:24,718.718 INFO    ] 2026-08-25 06:55:24
[2026-08-25 06:55:24,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:55:24,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:55:24,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:55:25,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:55:25,139.139 INFO    ] time= 25/08/2026 06:55:25
[2026-08-25 06:55:25,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:55:25,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:55:25,226.226 INFO    ] No existing commands found in stream
[2026-08-25 06:55:30,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:55:30,264.264 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 06:55:33,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:55:33,005.005 INFO    ] Checking for system updates...
[2026-08-25 06:55:33,044.044 INFO    ] 200
[2026-08-25 06:55:33,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:33,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:55:33,115.115 INFO    ] No update needed
[2026-08-25 06:55:33,119.119 INFO    ] Checking for camera pi updates...
[2026-08-25 06:55:33,159.159 INFO    ] 200
[2026-08-25 06:55:33,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:33,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:55:33,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:55:33,264.264 INFO    ] No camera update needed
[2026-08-25 06:55:33,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:55:33,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:55:33,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:55:33,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:55:35,322.322 INFO    ] ================================================
[2026-08-25 06:55:35,337.337 INFO    ] Launching Daemon at Tue Aug 25 06:55:35 IST 2026
[2026-08-25 06:55:35,348.348 INFO    ] ================================================
[2026-08-25 06:55:35,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:55:35
[2026-08-25 06:55:36,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:55:36,762.762 INFO    ] Initializing speech engine...
[2026-08-25 06:55:36,771.771 INFO    ] 2026-08-25 06:55:36
[2026-08-25 06:55:37,016.016 INFO    ] 2026-08-25 06:55:37
[2026-08-25 06:55:37,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:55:37,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:55:37,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:55:37,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:55:37,486.486 INFO    ] time= 25/08/2026 06:55:37
[2026-08-25 06:55:37,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:55:37,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:55:37,696.696 INFO    ] No existing commands found in stream
[2026-08-25 06:55:42,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:55:42,735.735 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 06:55:44,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:55:44,354.354 INFO    ] Checking for system updates...
[2026-08-25 06:55:44,389.389 INFO    ] 200
[2026-08-25 06:55:44,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:44,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:44,447.447 INFO    ] No update needed
[2026-08-25 06:55:44,450.450 INFO    ] Checking for camera pi updates...
[2026-08-25 06:55:44,491.491 INFO    ] 200
[2026-08-25 06:55:44,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:44,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:55:44,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:44,598.598 INFO    ] No camera update needed
[2026-08-25 06:55:44,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:55:44,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:55:44,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:55:44,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:55:46,656.656 INFO    ] ================================================
[2026-08-25 06:55:46,670.670 INFO    ] Launching Daemon at Tue Aug 25 06:55:46 IST 2026
[2026-08-25 06:55:46,681.681 INFO    ] ================================================
[2026-08-25 06:55:47,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:55:47
[2026-08-25 06:55:47,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:55:48,122.122 INFO    ] Initializing speech engine...
[2026-08-25 06:55:48,135.135 INFO    ] 2026-08-25 06:55:48
[2026-08-25 06:55:48,402.402 INFO    ] 2026-08-25 06:55:48
[2026-08-25 06:55:48,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:55:48,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:55:48,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:55:48,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:55:48,781.781 INFO    ] time= 25/08/2026 06:55:48
[2026-08-25 06:55:48,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:55:48,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:55:48,905.905 INFO    ] No existing commands found in stream
[2026-08-25 06:55:53,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:55:53,921.921 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 06:55:54,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:55:54,628.628 INFO    ] Checking for system updates...
[2026-08-25 06:55:54,664.664 INFO    ] 200
[2026-08-25 06:55:54,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:54,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:54,731.731 INFO    ] No update needed
[2026-08-25 06:55:54,733.733 INFO    ] Checking for camera pi updates...
[2026-08-25 06:55:54,767.767 INFO    ] 200
[2026-08-25 06:55:54,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:55:54,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:55:54,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:55:54,872.872 INFO    ] No camera update needed
[2026-08-25 06:55:54,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:55:54,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:55:54,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:55:54,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:55:56,927.927 INFO    ] ================================================
[2026-08-25 06:55:56,942.942 INFO    ] Launching Daemon at Tue Aug 25 06:55:56 IST 2026
[2026-08-25 06:55:56,953.953 INFO    ] ================================================
[2026-08-25 06:55:57,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:55:57
[2026-08-25 06:55:58,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:55:58,380.380 INFO    ] Initializing speech engine...
[2026-08-25 06:55:58,390.390 INFO    ] 2026-08-25 06:55:58
[2026-08-25 06:55:58,642.642 INFO    ] 2026-08-25 06:55:58
[2026-08-25 06:55:58,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:55:58,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:55:58,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:55:59,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:55:59,142.142 INFO    ] time= 25/08/2026 06:55:59
[2026-08-25 06:55:59,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:55:59,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:55:59,345.345 INFO    ] No existing commands found in stream
[2026-08-25 06:56:04,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:56:04,362.362 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 06:56:04,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:56:04,992.992 INFO    ] Checking for system updates...
[2026-08-25 06:56:05,028.028 INFO    ] 200
[2026-08-25 06:56:05,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:05,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:05,089.089 INFO    ] No update needed
[2026-08-25 06:56:05,091.091 INFO    ] Checking for camera pi updates...
[2026-08-25 06:56:05,128.128 INFO    ] 200
[2026-08-25 06:56:05,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:05,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:56:05,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:05,226.226 INFO    ] No camera update needed
[2026-08-25 06:56:05,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:56:05,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:56:05,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:56:05,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:56:07,282.282 INFO    ] ================================================
[2026-08-25 06:56:07,298.298 INFO    ] Launching Daemon at Tue Aug 25 06:56:07 IST 2026
[2026-08-25 06:56:07,309.309 INFO    ] ================================================
[2026-08-25 06:56:07,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:56:07
[2026-08-25 06:56:08,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:56:08,907.907 INFO    ] Initializing speech engine...
[2026-08-25 06:56:08,921.921 INFO    ] 2026-08-25 06:56:08
[2026-08-25 06:56:09,232.232 INFO    ] 2026-08-25 06:56:09
[2026-08-25 06:56:09,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:56:09,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:56:09,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:56:09,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:56:09,733.733 INFO    ] time= 25/08/2026 06:56:09
[2026-08-25 06:56:09,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:56:09,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:56:09,909.909 INFO    ] No existing commands found in stream
[2026-08-25 06:56:14,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:56:14,943.943 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 06:56:16,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:56:16,445.445 INFO    ] Checking for system updates...
[2026-08-25 06:56:16,482.482 INFO    ] 200
[2026-08-25 06:56:16,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:16,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:16,548.548 INFO    ] No update needed
[2026-08-25 06:56:16,551.551 INFO    ] Checking for camera pi updates...
[2026-08-25 06:56:16,590.590 INFO    ] 200
[2026-08-25 06:56:16,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:16,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:56:16,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:16,698.698 INFO    ] No camera update needed
[2026-08-25 06:56:16,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:56:16,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:56:16,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:56:16,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:56:18,752.752 INFO    ] ================================================
[2026-08-25 06:56:18,768.768 INFO    ] Launching Daemon at Tue Aug 25 06:56:18 IST 2026
[2026-08-25 06:56:18,779.779 INFO    ] ================================================
[2026-08-25 06:56:19,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:56:19
[2026-08-25 06:56:19,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:56:20,207.207 INFO    ] Initializing speech engine...
[2026-08-25 06:56:20,213.213 INFO    ] 2026-08-25 06:56:20
[2026-08-25 06:56:20,457.457 INFO    ] 2026-08-25 06:56:20
[2026-08-25 06:56:20,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:56:20,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:56:20,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:56:20,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:56:20,930.930 INFO    ] time= 25/08/2026 06:56:20
[2026-08-25 06:56:20,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:56:21,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:56:21,113.113 INFO    ] No existing commands found in stream
[2026-08-25 06:56:26,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:56:26,137.137 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 06:56:27,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:56:27,781.781 INFO    ] Checking for system updates...
[2026-08-25 06:56:27,820.820 INFO    ] 200
[2026-08-25 06:56:27,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:27,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:27,879.879 INFO    ] No update needed
[2026-08-25 06:56:27,881.881 INFO    ] Checking for camera pi updates...
[2026-08-25 06:56:27,919.919 INFO    ] 200
[2026-08-25 06:56:27,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:27,965.965 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:56:28,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:28,021.021 INFO    ] No camera update needed
[2026-08-25 06:56:28,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:56:28,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:56:28,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:56:28,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:56:30,077.077 INFO    ] ================================================
[2026-08-25 06:56:30,092.092 INFO    ] Launching Daemon at Tue Aug 25 06:56:30 IST 2026
[2026-08-25 06:56:30,103.103 INFO    ] ================================================
[2026-08-25 06:56:30,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:56:30
[2026-08-25 06:56:31,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:56:31,560.560 INFO    ] Initializing speech engine...
[2026-08-25 06:56:31,568.568 INFO    ] 2026-08-25 06:56:31
[2026-08-25 06:56:31,895.895 INFO    ] 2026-08-25 06:56:31
[2026-08-25 06:56:31,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:56:32,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:56:32,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:56:32,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:56:32,301.301 INFO    ] time= 25/08/2026 06:56:32
[2026-08-25 06:56:32,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:56:32,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:56:32,436.436 INFO    ] No existing commands found in stream
[2026-08-25 06:56:37,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:56:37,450.450 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 06:56:40,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:56:40,493.493 INFO    ] Checking for system updates...
[2026-08-25 06:56:40,528.528 INFO    ] 200
[2026-08-25 06:56:40,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:40,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:40,586.586 INFO    ] No update needed
[2026-08-25 06:56:40,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 06:56:40,621.621 INFO    ] 200
[2026-08-25 06:56:40,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:40,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:56:40,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:56:40,730.730 INFO    ] No camera update needed
[2026-08-25 06:56:40,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:56:40,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:56:40,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:56:40,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:56:42,785.785 INFO    ] ================================================
[2026-08-25 06:56:42,800.800 INFO    ] Launching Daemon at Tue Aug 25 06:56:42 IST 2026
[2026-08-25 06:56:42,811.811 INFO    ] ================================================
[2026-08-25 06:56:43,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:56:43
[2026-08-25 06:56:43,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:56:44,212.212 INFO    ] Initializing speech engine...
[2026-08-25 06:56:44,219.219 INFO    ] 2026-08-25 06:56:44
[2026-08-25 06:56:44,519.519 INFO    ] 2026-08-25 06:56:44
[2026-08-25 06:56:44,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:56:44,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:56:44,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:56:44,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:56:44,903.903 INFO    ] time= 25/08/2026 06:56:44
[2026-08-25 06:56:44,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:56:44,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:56:45,031.031 INFO    ] No existing commands found in stream
[2026-08-25 06:56:50,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:56:50,049.049 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 06:56:51,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:56:51,643.643 INFO    ] Checking for system updates...
[2026-08-25 06:56:51,683.683 INFO    ] 200
[2026-08-25 06:56:51,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:51,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:56:51,741.741 INFO    ] No update needed
[2026-08-25 06:56:51,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 06:56:51,777.777 INFO    ] 200
[2026-08-25 06:56:51,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:56:51,819.819 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:56:51,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:56:51,874.874 INFO    ] No camera update needed
[2026-08-25 06:56:51,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:56:51,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:56:51,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:56:51,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:56:53,935.935 INFO    ] ================================================
[2026-08-25 06:56:53,951.951 INFO    ] Launching Daemon at Tue Aug 25 06:56:53 IST 2026
[2026-08-25 06:56:53,963.963 INFO    ] ================================================
[2026-08-25 06:56:54,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:56:54
[2026-08-25 06:56:55,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:56:55,602.602 INFO    ] Initializing speech engine...
[2026-08-25 06:56:55,615.615 INFO    ] 2026-08-25 06:56:55
[2026-08-25 06:56:55,929.929 INFO    ] 2026-08-25 06:56:55
[2026-08-25 06:56:56,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:56:56,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:56:56,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:56:56,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:56:56,373.373 INFO    ] time= 25/08/2026 06:56:56
[2026-08-25 06:56:56,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:56:56,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:56:56,589.589 INFO    ] No existing commands found in stream
[2026-08-25 06:57:01,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:57:01,611.611 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 06:57:03,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:57:03,087.087 INFO    ] Checking for system updates...
[2026-08-25 06:57:03,127.127 INFO    ] 200
[2026-08-25 06:57:03,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:03,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:57:03,192.192 INFO    ] No update needed
[2026-08-25 06:57:03,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 06:57:03,228.228 INFO    ] 200
[2026-08-25 06:57:03,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:03,273.273 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:57:03,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:57:03,331.331 INFO    ] No camera update needed
[2026-08-25 06:57:03,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:57:03,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:57:03,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:57:03,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:57:05,389.389 INFO    ] ================================================
[2026-08-25 06:57:05,405.405 INFO    ] Launching Daemon at Tue Aug 25 06:57:05 IST 2026
[2026-08-25 06:57:05,417.417 INFO    ] ================================================
[2026-08-25 06:57:06,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:57:06
[2026-08-25 06:57:06,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:57:06,883.883 INFO    ] Initializing speech engine...
[2026-08-25 06:57:06,897.897 INFO    ] 2026-08-25 06:57:06
[2026-08-25 06:57:07,181.181 INFO    ] 2026-08-25 06:57:07
[2026-08-25 06:57:07,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:57:07,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:57:07,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:57:07,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:57:07,598.598 INFO    ] time= 25/08/2026 06:57:07
[2026-08-25 06:57:07,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:57:07,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:57:07,687.687 INFO    ] No existing commands found in stream
[2026-08-25 06:57:12,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:57:12,702.702 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 06:57:17,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:57:17,153.153 INFO    ] Checking for system updates...
[2026-08-25 06:57:17,189.189 INFO    ] 200
[2026-08-25 06:57:17,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:17,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:57:17,246.246 INFO    ] No update needed
[2026-08-25 06:57:17,248.248 INFO    ] Checking for camera pi updates...
[2026-08-25 06:57:17,285.285 INFO    ] 200
[2026-08-25 06:57:17,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:17,329.329 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:57:17,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:57:17,486.486 INFO    ] No camera update needed
[2026-08-25 06:57:17,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:57:17,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:57:17,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:57:17,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:57:19,542.542 INFO    ] ================================================
[2026-08-25 06:57:19,558.558 INFO    ] Launching Daemon at Tue Aug 25 06:57:19 IST 2026
[2026-08-25 06:57:19,570.570 INFO    ] ================================================
[2026-08-25 06:57:20,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:57:20
[2026-08-25 06:57:20,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:57:21,012.012 INFO    ] Initializing speech engine...
[2026-08-25 06:57:21,018.018 INFO    ] 2026-08-25 06:57:21
[2026-08-25 06:57:21,323.323 INFO    ] 2026-08-25 06:57:21
[2026-08-25 06:57:21,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:57:21,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:57:21,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:57:21,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:57:21,720.720 INFO    ] time= 25/08/2026 06:57:21
[2026-08-25 06:57:21,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:57:21,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:57:21,827.827 INFO    ] No existing commands found in stream
[2026-08-25 06:57:26,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:57:26,841.841 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 06:57:30,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:57:30,154.154 INFO    ] Checking for system updates...
[2026-08-25 06:57:30,191.191 INFO    ] 200
[2026-08-25 06:57:30,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:30,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:57:30,249.249 INFO    ] No update needed
[2026-08-25 06:57:30,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 06:57:30,286.286 INFO    ] 200
[2026-08-25 06:57:30,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:30,334.334 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:57:30,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:57:30,393.393 INFO    ] No camera update needed
[2026-08-25 06:57:30,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:57:30,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:57:30,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:57:30,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:57:32,451.451 INFO    ] ================================================
[2026-08-25 06:57:32,467.467 INFO    ] Launching Daemon at Tue Aug 25 06:57:32 IST 2026
[2026-08-25 06:57:32,478.478 INFO    ] ================================================
[2026-08-25 06:57:33,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:57:33
[2026-08-25 06:57:33,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:57:34,065.065 INFO    ] Initializing speech engine...
[2026-08-25 06:57:34,077.077 INFO    ] 2026-08-25 06:57:34
[2026-08-25 06:57:34,388.388 INFO    ] 2026-08-25 06:57:34
[2026-08-25 06:57:34,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:57:34,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:57:34,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:57:34,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:57:34,896.896 INFO    ] time= 25/08/2026 06:57:34
[2026-08-25 06:57:34,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:57:34,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:57:35,066.066 INFO    ] No existing commands found in stream
[2026-08-25 06:57:40,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:57:40,108.108 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 06:57:42,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 06:57:42,081.081 INFO    ] Checking for system updates...
[2026-08-25 06:57:42,117.117 INFO    ] 200
[2026-08-25 06:57:42,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:42,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:57:42,184.184 INFO    ] No update needed
[2026-08-25 06:57:42,187.187 INFO    ] Checking for camera pi updates...
[2026-08-25 06:57:42,222.222 INFO    ] 200
[2026-08-25 06:57:42,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:42,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:57:42,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:57:42,332.332 INFO    ] No camera update needed
[2026-08-25 06:57:42,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:57:42,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:57:42,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:57:42,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:57:44,390.390 INFO    ] ================================================
[2026-08-25 06:57:44,406.406 INFO    ] Launching Daemon at Tue Aug 25 06:57:44 IST 2026
[2026-08-25 06:57:44,417.417 INFO    ] ================================================
[2026-08-25 06:57:44,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:57:44
[2026-08-25 06:57:45,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:57:45,830.830 INFO    ] Initializing speech engine...
[2026-08-25 06:57:45,850.850 INFO    ] 2026-08-25 06:57:45
[2026-08-25 06:57:46,102.102 INFO    ] 2026-08-25 06:57:46
[2026-08-25 06:57:46,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:57:46,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:57:46,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:57:46,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:57:46,472.472 INFO    ] time= 25/08/2026 06:57:46
[2026-08-25 06:57:46,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:57:46,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:57:46,654.654 INFO    ] No existing commands found in stream
[2026-08-25 06:57:51,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:57:51,680.680 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 06:57:55,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:57:55,416.416 INFO    ] Checking for system updates...
[2026-08-25 06:57:55,452.452 INFO    ] 200
[2026-08-25 06:57:55,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:55,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:57:55,509.509 INFO    ] No update needed
[2026-08-25 06:57:55,511.511 INFO    ] Checking for camera pi updates...
[2026-08-25 06:57:55,548.548 INFO    ] 200
[2026-08-25 06:57:55,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:57:55,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:57:55,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:57:55,648.648 INFO    ] No camera update needed
[2026-08-25 06:57:55,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:57:55,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:57:55,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:57:55,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:57:57,704.704 INFO    ] ================================================
[2026-08-25 06:57:57,719.719 INFO    ] Launching Daemon at Tue Aug 25 06:57:57 IST 2026
[2026-08-25 06:57:57,731.731 INFO    ] ================================================
[2026-08-25 06:57:58,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:57:58
[2026-08-25 06:57:58,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:57:59,168.168 INFO    ] Initializing speech engine...
[2026-08-25 06:57:59,172.172 INFO    ] 2026-08-25 06:57:59
[2026-08-25 06:57:59,433.433 INFO    ] 2026-08-25 06:57:59
[2026-08-25 06:57:59,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:57:59,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:57:59,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:57:59,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:57:59,887.887 INFO    ] time= 25/08/2026 06:57:59
[2026-08-25 06:57:59,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:57:59,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:58:00,107.107 INFO    ] No existing commands found in stream
[2026-08-25 06:58:05,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:58:05,140.140 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 06:58:09,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:58:09,532.532 INFO    ] Checking for system updates...
[2026-08-25 06:58:09,567.567 INFO    ] 200
[2026-08-25 06:58:09,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:09,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:58:09,624.624 INFO    ] No update needed
[2026-08-25 06:58:09,627.627 INFO    ] Checking for camera pi updates...
[2026-08-25 06:58:09,660.660 INFO    ] 200
[2026-08-25 06:58:09,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:09,703.703 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:58:09,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:58:09,761.761 INFO    ] No camera update needed
[2026-08-25 06:58:09,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:58:09,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:58:09,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:58:09,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:58:11,822.822 INFO    ] ================================================
[2026-08-25 06:58:11,837.837 INFO    ] Launching Daemon at Tue Aug 25 06:58:11 IST 2026
[2026-08-25 06:58:11,848.848 INFO    ] ================================================
[2026-08-25 06:58:12,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:58:12
[2026-08-25 06:58:13,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:58:13,313.313 INFO    ] Initializing speech engine...
[2026-08-25 06:58:13,323.323 INFO    ] 2026-08-25 06:58:13
[2026-08-25 06:58:13,584.584 INFO    ] 2026-08-25 06:58:13
[2026-08-25 06:58:13,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:58:13,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:58:13,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:58:14,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:58:14,126.126 INFO    ] time= 25/08/2026 06:58:14
[2026-08-25 06:58:14,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:58:14,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:58:14,282.282 INFO    ] No existing commands found in stream
[2026-08-25 06:58:19,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:58:19,308.308 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 06:58:20,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:58:20,571.571 INFO    ] Checking for system updates...
[2026-08-25 06:58:20,606.606 INFO    ] 200
[2026-08-25 06:58:20,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:20,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:58:20,663.663 INFO    ] No update needed
[2026-08-25 06:58:20,666.666 INFO    ] Checking for camera pi updates...
[2026-08-25 06:58:20,699.699 INFO    ] 200
[2026-08-25 06:58:20,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:20,741.741 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:58:20,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:58:20,799.799 INFO    ] No camera update needed
[2026-08-25 06:58:20,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:58:20,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:58:20,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:58:20,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:58:22,852.852 INFO    ] ================================================
[2026-08-25 06:58:22,868.868 INFO    ] Launching Daemon at Tue Aug 25 06:58:22 IST 2026
[2026-08-25 06:58:22,879.879 INFO    ] ================================================
[2026-08-25 06:58:23,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:58:23
[2026-08-25 06:58:24,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:58:24,272.272 INFO    ] Initializing speech engine...
[2026-08-25 06:58:24,286.286 INFO    ] 2026-08-25 06:58:24
[2026-08-25 06:58:24,546.546 INFO    ] 2026-08-25 06:58:24
[2026-08-25 06:58:24,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:58:24,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:58:24,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:58:24,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:58:25,015.015 INFO    ] time= 25/08/2026 06:58:24
[2026-08-25 06:58:25,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:58:25,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:58:25,244.244 INFO    ] No existing commands found in stream
[2026-08-25 06:58:30,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:58:30,267.267 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 06:58:33,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:58:33,481.481 INFO    ] Checking for system updates...
[2026-08-25 06:58:33,516.516 INFO    ] 200
[2026-08-25 06:58:33,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:33,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:58:33,580.580 INFO    ] No update needed
[2026-08-25 06:58:33,583.583 INFO    ] Checking for camera pi updates...
[2026-08-25 06:58:33,620.620 INFO    ] 200
[2026-08-25 06:58:33,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:33,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:58:33,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:58:33,721.721 INFO    ] No camera update needed
[2026-08-25 06:58:33,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:58:33,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:58:33,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:58:33,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:58:35,777.777 INFO    ] ================================================
[2026-08-25 06:58:35,793.793 INFO    ] Launching Daemon at Tue Aug 25 06:58:35 IST 2026
[2026-08-25 06:58:35,805.805 INFO    ] ================================================
[2026-08-25 06:58:36,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:58:36
[2026-08-25 06:58:36,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:58:37,238.238 INFO    ] Initializing speech engine...
[2026-08-25 06:58:37,247.247 INFO    ] 2026-08-25 06:58:37
[2026-08-25 06:58:37,492.492 INFO    ] 2026-08-25 06:58:37
[2026-08-25 06:58:37,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:58:37,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:58:37,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:58:37,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:58:37,967.967 INFO    ] time= 25/08/2026 06:58:37
[2026-08-25 06:58:38,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:58:38,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:58:38,155.155 INFO    ] No existing commands found in stream
[2026-08-25 06:58:43,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:58:43,184.184 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 06:58:46,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 06:58:46,252.252 INFO    ] Checking for system updates...
[2026-08-25 06:58:46,287.287 INFO    ] 200
[2026-08-25 06:58:46,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:46,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:58:46,351.351 INFO    ] No update needed
[2026-08-25 06:58:46,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 06:58:46,390.390 INFO    ] 200
[2026-08-25 06:58:46,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:46,432.432 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:58:46,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:58:46,480.480 INFO    ] No camera update needed
[2026-08-25 06:58:46,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:58:46,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:58:46,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:58:46,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:58:48,536.536 INFO    ] ================================================
[2026-08-25 06:58:48,552.552 INFO    ] Launching Daemon at Tue Aug 25 06:58:48 IST 2026
[2026-08-25 06:58:48,564.564 INFO    ] ================================================
[2026-08-25 06:58:49,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:58:49
[2026-08-25 06:58:49,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:58:50,001.001 INFO    ] Initializing speech engine...
[2026-08-25 06:58:50,011.011 INFO    ] 2026-08-25 06:58:50
[2026-08-25 06:58:50,258.258 INFO    ] 2026-08-25 06:58:50
[2026-08-25 06:58:50,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:58:50,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:58:50,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:58:50,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:58:50,657.657 INFO    ] time= 25/08/2026 06:58:50
[2026-08-25 06:58:50,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:58:50,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:58:50,783.783 INFO    ] No existing commands found in stream
[2026-08-25 06:58:55,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:58:55,799.799 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 06:58:57,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 06:58:57,052.052 INFO    ] Checking for system updates...
[2026-08-25 06:58:57,087.087 INFO    ] 200
[2026-08-25 06:58:57,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:57,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:58:57,145.145 INFO    ] No update needed
[2026-08-25 06:58:57,147.147 INFO    ] Checking for camera pi updates...
[2026-08-25 06:58:57,185.185 INFO    ] 200
[2026-08-25 06:58:57,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:58:57,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:58:57,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:58:57,275.275 INFO    ] No camera update needed
[2026-08-25 06:58:57,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:58:57,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:58:57,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:58:57,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:58:59,332.332 INFO    ] ================================================
[2026-08-25 06:58:59,348.348 INFO    ] Launching Daemon at Tue Aug 25 06:58:59 IST 2026
[2026-08-25 06:58:59,359.359 INFO    ] ================================================
[2026-08-25 06:58:59,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:58:59
[2026-08-25 06:59:00,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:59:00,775.775 INFO    ] Initializing speech engine...
[2026-08-25 06:59:00,790.790 INFO    ] 2026-08-25 06:59:00
[2026-08-25 06:59:01,077.077 INFO    ] 2026-08-25 06:59:01
[2026-08-25 06:59:01,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:59:01,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:59:01,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:59:01,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:59:01,467.467 INFO    ] time= 25/08/2026 06:59:01
[2026-08-25 06:59:01,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:59:01,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:59:01,595.595 INFO    ] No existing commands found in stream
[2026-08-25 06:59:06,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:59:06,611.611 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 06:59:09,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:59:09,420.420 INFO    ] Checking for system updates...
[2026-08-25 06:59:09,460.460 INFO    ] 200
[2026-08-25 06:59:09,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:09,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:59:09,526.526 INFO    ] No update needed
[2026-08-25 06:59:09,528.528 INFO    ] Checking for camera pi updates...
[2026-08-25 06:59:09,561.561 INFO    ] 200
[2026-08-25 06:59:09,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:09,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:59:09,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 06:59:09,649.649 INFO    ] No camera update needed
[2026-08-25 06:59:09,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:59:09,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:59:09,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:59:09,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:59:11,705.705 INFO    ] ================================================
[2026-08-25 06:59:11,721.721 INFO    ] Launching Daemon at Tue Aug 25 06:59:11 IST 2026
[2026-08-25 06:59:11,733.733 INFO    ] ================================================
[2026-08-25 06:59:12,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:59:12
[2026-08-25 06:59:12,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:59:13,169.169 INFO    ] Initializing speech engine...
[2026-08-25 06:59:13,174.174 INFO    ] 2026-08-25 06:59:13
[2026-08-25 06:59:13,450.450 INFO    ] 2026-08-25 06:59:13
[2026-08-25 06:59:13,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:59:13,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:59:13,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:59:13,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:59:13,837.837 INFO    ] time= 25/08/2026 06:59:13
[2026-08-25 06:59:13,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:59:13,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:59:14,018.018 INFO    ] No existing commands found in stream
[2026-08-25 06:59:19,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:59:19,047.047 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 06:59:23,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 06:59:23,331.331 INFO    ] Checking for system updates...
[2026-08-25 06:59:23,366.366 INFO    ] 200
[2026-08-25 06:59:23,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:23,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:59:23,423.423 INFO    ] No update needed
[2026-08-25 06:59:23,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 06:59:23,464.464 INFO    ] 200
[2026-08-25 06:59:23,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:23,506.506 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:59:23,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:59:23,654.654 INFO    ] No camera update needed
[2026-08-25 06:59:23,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:59:23,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:59:23,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:59:23,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:59:25,710.710 INFO    ] ================================================
[2026-08-25 06:59:25,726.726 INFO    ] Launching Daemon at Tue Aug 25 06:59:25 IST 2026
[2026-08-25 06:59:25,737.737 INFO    ] ================================================
[2026-08-25 06:59:26,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:59:26
[2026-08-25 06:59:26,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:59:27,156.156 INFO    ] Initializing speech engine...
[2026-08-25 06:59:27,170.170 INFO    ] 2026-08-25 06:59:27
[2026-08-25 06:59:27,460.460 INFO    ] 2026-08-25 06:59:27
[2026-08-25 06:59:27,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:59:27,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:59:27,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:59:27,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:59:27,850.850 INFO    ] time= 25/08/2026 06:59:27
[2026-08-25 06:59:27,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:59:27,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:59:27,964.964 INFO    ] No existing commands found in stream
[2026-08-25 06:59:32,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:59:32,983.983 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 06:59:36,018.018 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 06:59:36,021.021 INFO    ] Checking for system updates...
[2026-08-25 06:59:36,056.056 INFO    ] 200
[2026-08-25 06:59:36,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:36,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:59:36,122.122 INFO    ] No update needed
[2026-08-25 06:59:36,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 06:59:36,158.158 INFO    ] 200
[2026-08-25 06:59:36,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:36,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:59:36,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:59:36,260.260 INFO    ] No camera update needed
[2026-08-25 06:59:36,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:59:36,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:59:36,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:59:36,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:59:38,315.315 INFO    ] ================================================
[2026-08-25 06:59:38,330.330 INFO    ] Launching Daemon at Tue Aug 25 06:59:38 IST 2026
[2026-08-25 06:59:38,342.342 INFO    ] ================================================
[2026-08-25 06:59:39,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:59:39
[2026-08-25 06:59:39,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:59:40,021.021 INFO    ] Initializing speech engine...
[2026-08-25 06:59:40,035.035 INFO    ] 2026-08-25 06:59:40
[2026-08-25 06:59:40,319.319 INFO    ] 2026-08-25 06:59:40
[2026-08-25 06:59:40,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:59:40,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:59:40,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:59:40,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:59:40,852.852 INFO    ] time= 25/08/2026 06:59:40
[2026-08-25 06:59:40,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:59:40,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:59:41,009.009 INFO    ] No existing commands found in stream
[2026-08-25 06:59:46,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 06:59:46,047.047 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 06:59:50,340.340 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 06:59:50,343.343 INFO    ] Checking for system updates...
[2026-08-25 06:59:50,386.386 INFO    ] 200
[2026-08-25 06:59:50,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:50,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:59:50,446.446 INFO    ] No update needed
[2026-08-25 06:59:50,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 06:59:50,489.489 INFO    ] 200
[2026-08-25 06:59:50,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 06:59:50,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 06:59:50,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 06:59:50,589.589 INFO    ] No camera update needed
[2026-08-25 06:59:50,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 06:59:50,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 06:59:50,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 06:59:50,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 06:59:52,648.648 INFO    ] ================================================
[2026-08-25 06:59:52,663.663 INFO    ] Launching Daemon at Tue Aug 25 06:59:52 IST 2026
[2026-08-25 06:59:52,673.673 INFO    ] ================================================
[2026-08-25 06:59:53,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 06:59:53
[2026-08-25 06:59:53,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 06:59:54,096.096 INFO    ] Initializing speech engine...
[2026-08-25 06:59:54,105.105 INFO    ] 2026-08-25 06:59:54
[2026-08-25 06:59:54,352.352 INFO    ] 2026-08-25 06:59:54
[2026-08-25 06:59:54,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 06:59:54,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 06:59:54,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 06:59:54,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 06:59:54,848.848 INFO    ] time= 25/08/2026 06:59:54
[2026-08-25 06:59:54,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 06:59:54,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-25 06:59:55,064.064 INFO    ] No existing commands found in stream
[2026-08-25 07:00:00,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:00:00,089.089 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 07:00:03,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:00:03,876.876 INFO    ] Checking for system updates...
[2026-08-25 07:00:03,988.988 INFO    ] 200
[2026-08-25 07:00:03,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:04,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:04,318.318 INFO    ] No update needed
[2026-08-25 07:00:04,321.321 INFO    ] Checking for camera pi updates...
[2026-08-25 07:00:04,472.472 INFO    ] 200
[2026-08-25 07:00:04,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:04,675.675 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:00:04,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:04,945.945 INFO    ] No camera update needed
[2026-08-25 07:00:04,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:00:04,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:00:04,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:00:05,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:00:07,060.060 INFO    ] ================================================
[2026-08-25 07:00:07,075.075 INFO    ] Launching Daemon at Tue Aug 25 07:00:07 IST 2026
[2026-08-25 07:00:07,086.086 INFO    ] ================================================
[2026-08-25 07:00:07,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:00:07
[2026-08-25 07:00:08,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:00:08,551.551 INFO    ] Initializing speech engine...
[2026-08-25 07:00:08,565.565 INFO    ] 2026-08-25 07:00:08
[2026-08-25 07:00:08,833.833 INFO    ] 2026-08-25 07:00:08
[2026-08-25 07:00:08,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:00:09,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:00:09,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:00:09,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:00:09,381.381 INFO    ] time= 25/08/2026 07:00:09
[2026-08-25 07:00:09,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:00:09,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:00:09,552.552 INFO    ] No existing commands found in stream
[2026-08-25 07:00:14,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:00:14,586.586 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 07:00:17,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:00:17,135.135 INFO    ] Checking for system updates...
[2026-08-25 07:00:17,172.172 INFO    ] 200
[2026-08-25 07:00:17,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:17,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:17,237.237 INFO    ] No update needed
[2026-08-25 07:00:17,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 07:00:17,274.274 INFO    ] 200
[2026-08-25 07:00:17,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:17,318.318 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:00:17,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:17,370.370 INFO    ] No camera update needed
[2026-08-25 07:00:17,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:00:17,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:00:17,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:00:17,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:00:19,429.429 INFO    ] ================================================
[2026-08-25 07:00:19,444.444 INFO    ] Launching Daemon at Tue Aug 25 07:00:19 IST 2026
[2026-08-25 07:00:19,454.454 INFO    ] ================================================
[2026-08-25 07:00:20,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:00:20
[2026-08-25 07:00:20,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:00:21,018.018 INFO    ] Initializing speech engine...
[2026-08-25 07:00:21,025.025 INFO    ] 2026-08-25 07:00:21
[2026-08-25 07:00:21,299.299 INFO    ] 2026-08-25 07:00:21
[2026-08-25 07:00:21,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:00:21,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:00:21,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:00:21,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:00:21,849.849 INFO    ] time= 25/08/2026 07:00:21
[2026-08-25 07:00:21,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:00:21,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:00:22,003.003 INFO    ] No existing commands found in stream
[2026-08-25 07:00:27,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:00:27,021.021 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 07:00:29,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:00:29,374.374 INFO    ] Checking for system updates...
[2026-08-25 07:00:29,411.411 INFO    ] 200
[2026-08-25 07:00:29,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:29,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:29,470.470 INFO    ] No update needed
[2026-08-25 07:00:29,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 07:00:29,511.511 INFO    ] 200
[2026-08-25 07:00:29,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:29,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:00:29,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:29,619.619 INFO    ] No camera update needed
[2026-08-25 07:00:29,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:00:29,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:00:29,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:00:29,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:00:31,678.678 INFO    ] ================================================
[2026-08-25 07:00:31,693.693 INFO    ] Launching Daemon at Tue Aug 25 07:00:31 IST 2026
[2026-08-25 07:00:31,704.704 INFO    ] ================================================
[2026-08-25 07:00:32,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:00:32
[2026-08-25 07:00:32,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:00:33,194.194 INFO    ] Initializing speech engine...
[2026-08-25 07:00:33,205.205 INFO    ] 2026-08-25 07:00:33
[2026-08-25 07:00:33,486.486 INFO    ] 2026-08-25 07:00:33
[2026-08-25 07:00:33,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:00:33,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:00:33,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:00:33,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:00:33,898.898 INFO    ] time= 25/08/2026 07:00:33
[2026-08-25 07:00:33,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:00:33,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:00:34,094.094 INFO    ] No existing commands found in stream
[2026-08-25 07:00:39,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:00:39,107.107 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 07:00:42,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:00:42,790.790 INFO    ] Checking for system updates...
[2026-08-25 07:00:42,829.829 INFO    ] 200
[2026-08-25 07:00:42,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:42,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:00:42,888.888 INFO    ] No update needed
[2026-08-25 07:00:42,890.890 INFO    ] Checking for camera pi updates...
[2026-08-25 07:00:42,927.927 INFO    ] 200
[2026-08-25 07:00:42,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:42,969.969 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:00:43,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:00:43,017.017 INFO    ] No camera update needed
[2026-08-25 07:00:43,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:00:43,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:00:43,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:00:43,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:00:45,074.074 INFO    ] ================================================
[2026-08-25 07:00:45,089.089 INFO    ] Launching Daemon at Tue Aug 25 07:00:45 IST 2026
[2026-08-25 07:00:45,099.099 INFO    ] ================================================
[2026-08-25 07:00:45,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:00:45
[2026-08-25 07:00:46,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:00:46,510.510 INFO    ] Initializing speech engine...
[2026-08-25 07:00:46,517.517 INFO    ] 2026-08-25 07:00:46
[2026-08-25 07:00:46,783.783 INFO    ] 2026-08-25 07:00:46
[2026-08-25 07:00:46,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:00:47,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:00:47,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:00:47,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:00:47,176.176 INFO    ] time= 25/08/2026 07:00:47
[2026-08-25 07:00:47,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:00:47,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:00:47,300.300 INFO    ] No existing commands found in stream
[2026-08-25 07:00:52,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:00:52,315.315 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 07:00:53,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:00:53,911.911 INFO    ] Checking for system updates...
[2026-08-25 07:00:53,946.946 INFO    ] 200
[2026-08-25 07:00:53,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:54,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:54,004.004 INFO    ] No update needed
[2026-08-25 07:00:54,007.007 INFO    ] Checking for camera pi updates...
[2026-08-25 07:00:54,040.040 INFO    ] 200
[2026-08-25 07:00:54,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:00:54,083.083 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:00:54,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:00:54,142.142 INFO    ] No camera update needed
[2026-08-25 07:00:54,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:00:54,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:00:54,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:00:54,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:00:56,198.198 INFO    ] ================================================
[2026-08-25 07:00:56,213.213 INFO    ] Launching Daemon at Tue Aug 25 07:00:56 IST 2026
[2026-08-25 07:00:56,224.224 INFO    ] ================================================
[2026-08-25 07:00:56,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:00:56
[2026-08-25 07:00:57,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:00:57,631.631 INFO    ] Initializing speech engine...
[2026-08-25 07:00:57,650.650 INFO    ] 2026-08-25 07:00:57
[2026-08-25 07:00:57,897.897 INFO    ] 2026-08-25 07:00:57
[2026-08-25 07:00:57,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:00:58,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:00:58,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:00:58,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:00:58,355.355 INFO    ] time= 25/08/2026 07:00:58
[2026-08-25 07:00:58,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:00:58,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:00:58,594.594 INFO    ] No existing commands found in stream
[2026-08-25 07:01:03,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:01:03,618.618 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 07:01:06,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:01:06,828.828 INFO    ] Checking for system updates...
[2026-08-25 07:01:06,872.872 INFO    ] 200
[2026-08-25 07:01:06,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:06,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:01:06,948.948 INFO    ] No update needed
[2026-08-25 07:01:06,950.950 INFO    ] Checking for camera pi updates...
[2026-08-25 07:01:06,987.987 INFO    ] 200
[2026-08-25 07:01:06,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:07,031.031 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:01:07,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:01:07,080.080 INFO    ] No camera update needed
[2026-08-25 07:01:07,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:01:07,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:01:07,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:01:07,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:01:09,141.141 INFO    ] ================================================
[2026-08-25 07:01:09,156.156 INFO    ] Launching Daemon at Tue Aug 25 07:01:09 IST 2026
[2026-08-25 07:01:09,167.167 INFO    ] ================================================
[2026-08-25 07:01:09,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:01:09
[2026-08-25 07:01:10,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:01:10,614.614 INFO    ] Initializing speech engine...
[2026-08-25 07:01:10,623.623 INFO    ] 2026-08-25 07:01:10
[2026-08-25 07:01:10,874.874 INFO    ] 2026-08-25 07:01:10
[2026-08-25 07:01:10,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:01:11,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:01:11,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:01:11,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:01:11,334.334 INFO    ] time= 25/08/2026 07:01:11
[2026-08-25 07:01:11,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:01:11,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:01:11,594.594 INFO    ] No existing commands found in stream
[2026-08-25 07:01:16,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:01:16,615.615 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 07:01:20,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:01:20,470.470 INFO    ] Checking for system updates...
[2026-08-25 07:01:20,505.505 INFO    ] 200
[2026-08-25 07:01:20,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:20,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:01:20,567.567 INFO    ] No update needed
[2026-08-25 07:01:20,569.569 INFO    ] Checking for camera pi updates...
[2026-08-25 07:01:20,603.603 INFO    ] 200
[2026-08-25 07:01:20,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:20,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:01:20,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:01:20,693.693 INFO    ] No camera update needed
[2026-08-25 07:01:20,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:01:20,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:01:20,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:01:20,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:01:22,749.749 INFO    ] ================================================
[2026-08-25 07:01:22,764.764 INFO    ] Launching Daemon at Tue Aug 25 07:01:22 IST 2026
[2026-08-25 07:01:22,775.775 INFO    ] ================================================
[2026-08-25 07:01:23,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:01:23
[2026-08-25 07:01:23,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:01:24,222.222 INFO    ] Initializing speech engine...
[2026-08-25 07:01:24,233.233 INFO    ] 2026-08-25 07:01:24
[2026-08-25 07:01:24,478.478 INFO    ] 2026-08-25 07:01:24
[2026-08-25 07:01:24,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:01:24,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:01:24,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:01:24,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:01:24,978.978 INFO    ] time= 25/08/2026 07:01:24
[2026-08-25 07:01:25,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:01:25,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:01:25,180.180 INFO    ] No existing commands found in stream
[2026-08-25 07:01:30,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:01:30,199.199 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 07:01:33,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:01:33,755.755 INFO    ] Checking for system updates...
[2026-08-25 07:01:33,798.798 INFO    ] 200
[2026-08-25 07:01:33,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:33,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:01:33,857.857 INFO    ] No update needed
[2026-08-25 07:01:33,860.860 INFO    ] Checking for camera pi updates...
[2026-08-25 07:01:33,893.893 INFO    ] 200
[2026-08-25 07:01:33,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:33,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:01:33,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:01:33,988.988 INFO    ] No camera update needed
[2026-08-25 07:01:33,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:01:33,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:01:33,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:01:34,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:01:36,044.044 INFO    ] ================================================
[2026-08-25 07:01:36,059.059 INFO    ] Launching Daemon at Tue Aug 25 07:01:36 IST 2026
[2026-08-25 07:01:36,070.070 INFO    ] ================================================
[2026-08-25 07:01:36,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:01:36
[2026-08-25 07:01:37,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:01:37,663.663 INFO    ] Initializing speech engine...
[2026-08-25 07:01:37,680.680 INFO    ] 2026-08-25 07:01:37
[2026-08-25 07:01:37,951.951 INFO    ] 2026-08-25 07:01:37
[2026-08-25 07:01:38,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:01:38,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:01:38,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:01:38,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:01:38,447.447 INFO    ] time= 25/08/2026 07:01:38
[2026-08-25 07:01:38,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:01:38,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:01:38,648.648 INFO    ] No existing commands found in stream
[2026-08-25 07:01:43,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:01:43,676.676 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 07:01:46,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:01:46,842.842 INFO    ] Checking for system updates...
[2026-08-25 07:01:46,884.884 INFO    ] 200
[2026-08-25 07:01:46,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:46,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:01:46,950.950 INFO    ] No update needed
[2026-08-25 07:01:46,957.957 INFO    ] Checking for camera pi updates...
[2026-08-25 07:01:46,990.990 INFO    ] 200
[2026-08-25 07:01:46,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:47,041.041 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:01:47,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:01:47,100.100 INFO    ] No camera update needed
[2026-08-25 07:01:47,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:01:47,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:01:47,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:01:47,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:01:49,153.153 INFO    ] ================================================
[2026-08-25 07:01:49,169.169 INFO    ] Launching Daemon at Tue Aug 25 07:01:49 IST 2026
[2026-08-25 07:01:49,179.179 INFO    ] ================================================
[2026-08-25 07:01:49,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:01:49
[2026-08-25 07:01:50,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:01:50,595.595 INFO    ] Initializing speech engine...
[2026-08-25 07:01:50,603.603 INFO    ] 2026-08-25 07:01:50
[2026-08-25 07:01:50,856.856 INFO    ] 2026-08-25 07:01:50
[2026-08-25 07:01:50,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:01:51,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:01:51,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:01:51,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:01:51,322.322 INFO    ] time= 25/08/2026 07:01:51
[2026-08-25 07:01:51,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:01:51,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:01:51,519.519 INFO    ] No existing commands found in stream
[2026-08-25 07:01:56,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:01:56,549.549 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 07:01:57,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:01:57,899.899 INFO    ] Checking for system updates...
[2026-08-25 07:01:57,938.938 INFO    ] 200
[2026-08-25 07:01:57,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:57,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:01:57,995.995 INFO    ] No update needed
[2026-08-25 07:01:57,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 07:01:58,030.030 INFO    ] 200
[2026-08-25 07:01:58,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:01:58,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:01:58,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:01:58,126.126 INFO    ] No camera update needed
[2026-08-25 07:01:58,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:01:58,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:01:58,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:01:58,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:02:00,180.180 INFO    ] ================================================
[2026-08-25 07:02:00,195.195 INFO    ] Launching Daemon at Tue Aug 25 07:02:00 IST 2026
[2026-08-25 07:02:00,206.206 INFO    ] ================================================
[2026-08-25 07:02:00,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:02:00
[2026-08-25 07:02:01,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:02:01,624.624 INFO    ] Initializing speech engine...
[2026-08-25 07:02:01,632.632 INFO    ] 2026-08-25 07:02:01
[2026-08-25 07:02:02,005.005 INFO    ] 2026-08-25 07:02:02
[2026-08-25 07:02:02,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:02:02,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:02:02,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:02:02,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:02:02,432.432 INFO    ] time= 25/08/2026 07:02:02
[2026-08-25 07:02:02,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:02:02,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:02:02,584.584 INFO    ] No existing commands found in stream
[2026-08-25 07:02:07,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:02:07,610.610 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 07:02:09,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:02:09,359.359 INFO    ] Checking for system updates...
[2026-08-25 07:02:09,394.394 INFO    ] 200
[2026-08-25 07:02:09,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:09,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:09,457.457 INFO    ] No update needed
[2026-08-25 07:02:09,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 07:02:09,494.494 INFO    ] 200
[2026-08-25 07:02:09,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:09,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:02:09,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:09,588.588 INFO    ] No camera update needed
[2026-08-25 07:02:09,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:02:09,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:02:09,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:02:09,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:02:11,643.643 INFO    ] ================================================
[2026-08-25 07:02:11,658.658 INFO    ] Launching Daemon at Tue Aug 25 07:02:11 IST 2026
[2026-08-25 07:02:11,669.669 INFO    ] ================================================
[2026-08-25 07:02:12,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:02:12
[2026-08-25 07:02:12,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:02:13,173.173 INFO    ] Initializing speech engine...
[2026-08-25 07:02:13,183.183 INFO    ] 2026-08-25 07:02:13
[2026-08-25 07:02:13,442.442 INFO    ] 2026-08-25 07:02:13
[2026-08-25 07:02:13,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:02:13,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:02:13,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:02:13,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:02:13,926.926 INFO    ] time= 25/08/2026 07:02:13
[2026-08-25 07:02:13,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:02:13,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:02:14,125.125 INFO    ] No existing commands found in stream
[2026-08-25 07:02:19,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:02:19,151.151 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 07:02:22,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:02:22,967.967 INFO    ] Checking for system updates...
[2026-08-25 07:02:23,006.006 INFO    ] 200
[2026-08-25 07:02:23,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:23,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:23,063.063 INFO    ] No update needed
[2026-08-25 07:02:23,065.065 INFO    ] Checking for camera pi updates...
[2026-08-25 07:02:23,106.106 INFO    ] 200
[2026-08-25 07:02:23,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:23,149.149 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:02:23,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:23,199.199 INFO    ] No camera update needed
[2026-08-25 07:02:23,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:02:23,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:02:23,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:02:23,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:02:25,254.254 INFO    ] ================================================
[2026-08-25 07:02:25,270.270 INFO    ] Launching Daemon at Tue Aug 25 07:02:25 IST 2026
[2026-08-25 07:02:25,280.280 INFO    ] ================================================
[2026-08-25 07:02:25,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:02:25
[2026-08-25 07:02:26,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:02:26,817.817 INFO    ] Initializing speech engine...
[2026-08-25 07:02:26,836.836 INFO    ] 2026-08-25 07:02:26
[2026-08-25 07:02:27,103.103 INFO    ] 2026-08-25 07:02:27
[2026-08-25 07:02:27,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:02:27,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:02:27,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:02:27,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:02:27,602.602 INFO    ] time= 25/08/2026 07:02:27
[2026-08-25 07:02:27,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:02:27,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:02:27,841.841 INFO    ] No existing commands found in stream
[2026-08-25 07:02:32,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:02:32,866.866 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 07:02:34,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:02:34,195.195 INFO    ] Checking for system updates...
[2026-08-25 07:02:34,234.234 INFO    ] 200
[2026-08-25 07:02:34,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:34,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:34,292.292 INFO    ] No update needed
[2026-08-25 07:02:34,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 07:02:34,327.327 INFO    ] 200
[2026-08-25 07:02:34,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:34,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:02:34,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:34,421.421 INFO    ] No camera update needed
[2026-08-25 07:02:34,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:02:34,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:02:34,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:02:34,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:02:36,477.477 INFO    ] ================================================
[2026-08-25 07:02:36,492.492 INFO    ] Launching Daemon at Tue Aug 25 07:02:36 IST 2026
[2026-08-25 07:02:36,502.502 INFO    ] ================================================
[2026-08-25 07:02:37,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:02:37
[2026-08-25 07:02:37,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:02:38,065.065 INFO    ] Initializing speech engine...
[2026-08-25 07:02:38,075.075 INFO    ] 2026-08-25 07:02:38
[2026-08-25 07:02:38,338.338 INFO    ] 2026-08-25 07:02:38
[2026-08-25 07:02:38,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:02:38,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:02:38,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:02:38,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:02:38,802.802 INFO    ] time= 25/08/2026 07:02:38
[2026-08-25 07:02:38,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:02:38,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:02:39,034.034 INFO    ] No existing commands found in stream
[2026-08-25 07:02:44,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:02:44,051.051 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 07:02:46,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:02:46,428.428 INFO    ] Checking for system updates...
[2026-08-25 07:02:46,463.463 INFO    ] 200
[2026-08-25 07:02:46,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:46,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:46,521.521 INFO    ] No update needed
[2026-08-25 07:02:46,524.524 INFO    ] Checking for camera pi updates...
[2026-08-25 07:02:46,561.561 INFO    ] 200
[2026-08-25 07:02:46,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:46,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:02:46,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:46,656.656 INFO    ] No camera update needed
[2026-08-25 07:02:46,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:02:46,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:02:46,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:02:46,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:02:48,711.711 INFO    ] ================================================
[2026-08-25 07:02:48,727.727 INFO    ] Launching Daemon at Tue Aug 25 07:02:48 IST 2026
[2026-08-25 07:02:48,738.738 INFO    ] ================================================
[2026-08-25 07:02:49,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:02:49
[2026-08-25 07:02:49,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:02:50,241.241 INFO    ] Initializing speech engine...
[2026-08-25 07:02:50,263.263 INFO    ] 2026-08-25 07:02:50
[2026-08-25 07:02:50,536.536 INFO    ] 2026-08-25 07:02:50
[2026-08-25 07:02:50,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:02:50,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:02:50,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:02:50,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:02:51,022.022 INFO    ] time= 25/08/2026 07:02:50
[2026-08-25 07:02:51,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:02:51,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:02:51,242.242 INFO    ] No existing commands found in stream
[2026-08-25 07:02:56,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:02:56,273.273 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 07:02:59,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:02:59,472.472 INFO    ] Checking for system updates...
[2026-08-25 07:02:59,509.509 INFO    ] 200
[2026-08-25 07:02:59,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:59,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:59,566.566 INFO    ] No update needed
[2026-08-25 07:02:59,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 07:02:59,602.602 INFO    ] 200
[2026-08-25 07:02:59,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:02:59,649.649 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:02:59,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:02:59,696.696 INFO    ] No camera update needed
[2026-08-25 07:02:59,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:02:59,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:02:59,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:02:59,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:03:01,779.779 INFO    ] ================================================
[2026-08-25 07:03:01,826.826 INFO    ] Launching Daemon at Tue Aug 25 07:03:01 IST 2026
[2026-08-25 07:03:01,868.868 INFO    ] ================================================
[2026-08-25 07:03:02,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:03:02
[2026-08-25 07:03:03,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:03:03,603.603 INFO    ] Initializing speech engine...
[2026-08-25 07:03:03,611.611 INFO    ] 2026-08-25 07:03:03
[2026-08-25 07:03:03,855.855 INFO    ] 2026-08-25 07:03:03
[2026-08-25 07:03:03,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:03:04,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:03:04,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:03:04,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:03:04,232.232 INFO    ] time= 25/08/2026 07:03:04
[2026-08-25 07:03:04,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:03:04,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:03:04,425.425 INFO    ] No existing commands found in stream
[2026-08-25 07:03:09,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:03:09,445.445 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 07:03:10,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:03:10,131.131 INFO    ] Checking for system updates...
[2026-08-25 07:03:10,169.169 INFO    ] 200
[2026-08-25 07:03:10,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:10,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:03:10,225.225 INFO    ] No update needed
[2026-08-25 07:03:10,228.228 INFO    ] Checking for camera pi updates...
[2026-08-25 07:03:10,260.260 INFO    ] 200
[2026-08-25 07:03:10,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:10,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:03:10,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:03:10,356.356 INFO    ] No camera update needed
[2026-08-25 07:03:10,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:03:10,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:03:10,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:03:10,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:03:12,410.410 INFO    ] ================================================
[2026-08-25 07:03:12,425.425 INFO    ] Launching Daemon at Tue Aug 25 07:03:12 IST 2026
[2026-08-25 07:03:12,442.442 INFO    ] ================================================
[2026-08-25 07:03:13,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:03:13
[2026-08-25 07:03:13,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:03:13,897.897 INFO    ] Initializing speech engine...
[2026-08-25 07:03:13,905.905 INFO    ] 2026-08-25 07:03:13
[2026-08-25 07:03:14,163.163 INFO    ] 2026-08-25 07:03:14
[2026-08-25 07:03:14,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:03:14,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:03:14,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:03:14,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:03:14,623.623 INFO    ] time= 25/08/2026 07:03:14
[2026-08-25 07:03:14,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:03:14,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:03:14,849.849 INFO    ] No existing commands found in stream
[2026-08-25 07:03:19,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:03:19,874.874 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 07:03:24,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:03:24,100.100 INFO    ] Checking for system updates...
[2026-08-25 07:03:24,135.135 INFO    ] 200
[2026-08-25 07:03:24,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:24,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:03:24,198.198 INFO    ] No update needed
[2026-08-25 07:03:24,200.200 INFO    ] Checking for camera pi updates...
[2026-08-25 07:03:24,234.234 INFO    ] 200
[2026-08-25 07:03:24,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:24,280.280 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:03:24,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:03:24,331.331 INFO    ] No camera update needed
[2026-08-25 07:03:24,333.333 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:03:24,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:03:24,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:03:24,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:03:26,386.386 INFO    ] ================================================
[2026-08-25 07:03:26,402.402 INFO    ] Launching Daemon at Tue Aug 25 07:03:26 IST 2026
[2026-08-25 07:03:26,413.413 INFO    ] ================================================
[2026-08-25 07:03:27,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:03:27
[2026-08-25 07:03:27,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:03:27,962.962 INFO    ] Initializing speech engine...
[2026-08-25 07:03:27,972.972 INFO    ] 2026-08-25 07:03:27
[2026-08-25 07:03:28,218.218 INFO    ] 2026-08-25 07:03:28
[2026-08-25 07:03:28,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:03:28,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:03:28,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:03:28,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:03:28,592.592 INFO    ] time= 25/08/2026 07:03:28
[2026-08-25 07:03:28,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:03:28,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:03:28,777.777 INFO    ] No existing commands found in stream
[2026-08-25 07:03:33,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:03:33,800.800 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 07:03:35,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:03:35,450.450 INFO    ] Checking for system updates...
[2026-08-25 07:03:35,485.485 INFO    ] 200
[2026-08-25 07:03:35,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:35,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:03:35,544.544 INFO    ] No update needed
[2026-08-25 07:03:35,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 07:03:35,582.582 INFO    ] 200
[2026-08-25 07:03:35,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:35,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:03:35,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:03:35,773.773 INFO    ] No camera update needed
[2026-08-25 07:03:35,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:03:35,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:03:35,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:03:35,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:03:37,828.828 INFO    ] ================================================
[2026-08-25 07:03:37,843.843 INFO    ] Launching Daemon at Tue Aug 25 07:03:37 IST 2026
[2026-08-25 07:03:37,854.854 INFO    ] ================================================
[2026-08-25 07:03:38,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:03:38
[2026-08-25 07:03:39,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:03:39,262.262 INFO    ] Initializing speech engine...
[2026-08-25 07:03:39,281.281 INFO    ] 2026-08-25 07:03:39
[2026-08-25 07:03:39,528.528 INFO    ] 2026-08-25 07:03:39
[2026-08-25 07:03:39,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:03:39,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:03:39,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:03:39,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:03:39,902.902 INFO    ] time= 25/08/2026 07:03:39
[2026-08-25 07:03:39,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:03:39,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:03:39,980.980 INFO    ] No existing commands found in stream
[2026-08-25 07:03:45,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:03:45,018.018 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 07:03:45,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:03:45,897.897 INFO    ] Checking for system updates...
[2026-08-25 07:03:45,932.932 INFO    ] 200
[2026-08-25 07:03:45,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:45,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:03:45,997.997 INFO    ] No update needed
[2026-08-25 07:03:45,999.999 INFO    ] Checking for camera pi updates...
[2026-08-25 07:03:46,032.032 INFO    ] 200
[2026-08-25 07:03:46,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:46,076.076 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:03:46,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:03:46,123.123 INFO    ] No camera update needed
[2026-08-25 07:03:46,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:03:46,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:03:46,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:03:46,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:03:48,178.178 INFO    ] ================================================
[2026-08-25 07:03:48,194.194 INFO    ] Launching Daemon at Tue Aug 25 07:03:48 IST 2026
[2026-08-25 07:03:48,205.205 INFO    ] ================================================
[2026-08-25 07:03:48,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:03:48
[2026-08-25 07:03:49,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:03:49,655.655 INFO    ] Initializing speech engine...
[2026-08-25 07:03:49,665.665 INFO    ] 2026-08-25 07:03:49
[2026-08-25 07:03:49,922.922 INFO    ] 2026-08-25 07:03:49
[2026-08-25 07:03:49,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:03:50,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:03:50,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:03:50,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:03:50,411.411 INFO    ] time= 25/08/2026 07:03:50
[2026-08-25 07:03:50,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:03:50,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:03:50,610.610 INFO    ] No existing commands found in stream
[2026-08-25 07:03:55,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:03:55,632.632 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 07:03:58,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:03:58,038.038 INFO    ] Checking for system updates...
[2026-08-25 07:03:58,076.076 INFO    ] 200
[2026-08-25 07:03:58,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:58,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:03:58,134.134 INFO    ] No update needed
[2026-08-25 07:03:58,137.137 INFO    ] Checking for camera pi updates...
[2026-08-25 07:03:58,172.172 INFO    ] 200
[2026-08-25 07:03:58,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:03:58,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:03:58,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:03:58,262.262 INFO    ] No camera update needed
[2026-08-25 07:03:58,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:03:58,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:03:58,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:03:58,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:04:00,319.319 INFO    ] ================================================
[2026-08-25 07:04:00,335.335 INFO    ] Launching Daemon at Tue Aug 25 07:04:00 IST 2026
[2026-08-25 07:04:00,346.346 INFO    ] ================================================
[2026-08-25 07:04:00,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:04:00
[2026-08-25 07:04:01,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:04:02,148.148 INFO    ] Initializing speech engine...
[2026-08-25 07:04:02,152.152 INFO    ] 2026-08-25 07:04:02
[2026-08-25 07:04:02,540.540 INFO    ] 2026-08-25 07:04:02
[2026-08-25 07:04:02,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:04:02,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:04:02,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:04:02,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:04:02,942.942 INFO    ] time= 25/08/2026 07:04:02
[2026-08-25 07:04:02,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:04:02,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:04:03,109.109 INFO    ] No existing commands found in stream
[2026-08-25 07:04:08,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:04:08,155.155 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 07:04:10,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:04:10,081.081 INFO    ] Checking for system updates...
[2026-08-25 07:04:10,121.121 INFO    ] 200
[2026-08-25 07:04:10,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:10,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:04:10,186.186 INFO    ] No update needed
[2026-08-25 07:04:10,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 07:04:10,223.223 INFO    ] 200
[2026-08-25 07:04:10,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:10,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:04:10,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:04:10,320.320 INFO    ] No camera update needed
[2026-08-25 07:04:10,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:04:10,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:04:10,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:04:10,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:04:12,377.377 INFO    ] ================================================
[2026-08-25 07:04:12,393.393 INFO    ] Launching Daemon at Tue Aug 25 07:04:12 IST 2026
[2026-08-25 07:04:12,404.404 INFO    ] ================================================
[2026-08-25 07:04:13,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:04:12
[2026-08-25 07:04:13,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:04:13,978.978 INFO    ] Initializing speech engine...
[2026-08-25 07:04:13,985.985 INFO    ] 2026-08-25 07:04:13
[2026-08-25 07:04:14,258.258 INFO    ] 2026-08-25 07:04:14
[2026-08-25 07:04:14,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:04:14,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:04:14,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:04:14,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:04:14,808.808 INFO    ] time= 25/08/2026 07:04:14
[2026-08-25 07:04:14,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:04:14,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:04:14,965.965 INFO    ] No existing commands found in stream
[2026-08-25 07:04:19,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:04:19,988.988 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 07:04:22,379.379 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:04:22,382.382 INFO    ] Checking for system updates...
[2026-08-25 07:04:22,420.420 INFO    ] 200
[2026-08-25 07:04:22,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:22,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:04:22,477.477 INFO    ] No update needed
[2026-08-25 07:04:22,480.480 INFO    ] Checking for camera pi updates...
[2026-08-25 07:04:22,514.514 INFO    ] 200
[2026-08-25 07:04:22,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:22,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:04:22,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:04:22,607.607 INFO    ] No camera update needed
[2026-08-25 07:04:22,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:04:22,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:04:22,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:04:22,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:04:24,661.661 INFO    ] ================================================
[2026-08-25 07:04:24,677.677 INFO    ] Launching Daemon at Tue Aug 25 07:04:24 IST 2026
[2026-08-25 07:04:24,687.687 INFO    ] ================================================
[2026-08-25 07:04:25,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:04:25
[2026-08-25 07:04:25,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:04:26,110.110 INFO    ] Initializing speech engine...
[2026-08-25 07:04:26,116.116 INFO    ] 2026-08-25 07:04:26
[2026-08-25 07:04:26,365.365 INFO    ] 2026-08-25 07:04:26
[2026-08-25 07:04:26,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:04:26,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:04:26,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:04:26,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:04:26,836.836 INFO    ] time= 25/08/2026 07:04:26
[2026-08-25 07:04:26,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:04:26,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:04:27,029.029 INFO    ] No existing commands found in stream
[2026-08-25 07:04:32,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:04:32,059.059 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 07:04:36,349.349 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:04:36,351.351 INFO    ] Checking for system updates...
[2026-08-25 07:04:36,391.391 INFO    ] 200
[2026-08-25 07:04:36,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:36,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:04:36,456.456 INFO    ] No update needed
[2026-08-25 07:04:36,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 07:04:36,493.493 INFO    ] 200
[2026-08-25 07:04:36,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:36,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:04:36,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:04:36,589.589 INFO    ] No camera update needed
[2026-08-25 07:04:36,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:04:36,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:04:36,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:04:36,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:04:38,647.647 INFO    ] ================================================
[2026-08-25 07:04:38,663.663 INFO    ] Launching Daemon at Tue Aug 25 07:04:38 IST 2026
[2026-08-25 07:04:38,674.674 INFO    ] ================================================
[2026-08-25 07:04:39,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:04:39
[2026-08-25 07:04:39,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:04:40,302.302 INFO    ] Initializing speech engine...
[2026-08-25 07:04:40,315.315 INFO    ] 2026-08-25 07:04:40
[2026-08-25 07:04:40,584.584 INFO    ] 2026-08-25 07:04:40
[2026-08-25 07:04:40,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:04:40,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:04:40,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:04:41,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:04:41,131.131 INFO    ] time= 25/08/2026 07:04:41
[2026-08-25 07:04:41,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:04:41,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:04:41,288.288 INFO    ] No existing commands found in stream
[2026-08-25 07:04:46,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:04:46,322.322 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 07:04:48,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:04:48,761.761 INFO    ] Checking for system updates...
[2026-08-25 07:04:48,797.797 INFO    ] 200
[2026-08-25 07:04:48,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:48,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:04:48,855.855 INFO    ] No update needed
[2026-08-25 07:04:48,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 07:04:48,892.892 INFO    ] 200
[2026-08-25 07:04:48,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:48,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:04:48,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:04:48,993.993 INFO    ] No camera update needed
[2026-08-25 07:04:48,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:04:48,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:04:49,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:04:49,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:04:51,047.047 INFO    ] ================================================
[2026-08-25 07:04:51,062.062 INFO    ] Launching Daemon at Tue Aug 25 07:04:51 IST 2026
[2026-08-25 07:04:51,077.077 INFO    ] ================================================
[2026-08-25 07:04:51,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:04:51
[2026-08-25 07:04:52,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:04:52,497.497 INFO    ] Initializing speech engine...
[2026-08-25 07:04:52,506.506 INFO    ] 2026-08-25 07:04:52
[2026-08-25 07:04:52,752.752 INFO    ] 2026-08-25 07:04:52
[2026-08-25 07:04:52,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:04:53,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:04:53,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:04:53,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:04:53,222.222 INFO    ] time= 25/08/2026 07:04:53
[2026-08-25 07:04:53,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:04:53,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:04:53,431.431 INFO    ] No existing commands found in stream
[2026-08-25 07:04:58,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:04:58,464.464 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 07:04:59,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:04:59,818.818 INFO    ] Checking for system updates...
[2026-08-25 07:04:59,854.854 INFO    ] 200
[2026-08-25 07:04:59,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:59,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:04:59,913.913 INFO    ] No update needed
[2026-08-25 07:04:59,916.916 INFO    ] Checking for camera pi updates...
[2026-08-25 07:04:59,953.953 INFO    ] 200
[2026-08-25 07:04:59,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:04:59,997.997 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:05:00,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:05:00,047.047 INFO    ] No camera update needed
[2026-08-25 07:05:00,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:05:00,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:05:00,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:05:00,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:05:02,143.143 INFO    ] ================================================
[2026-08-25 07:05:02,166.166 INFO    ] Launching Daemon at Tue Aug 25 07:05:02 IST 2026
[2026-08-25 07:05:02,187.187 INFO    ] ================================================
[2026-08-25 07:05:02,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:05:02
[2026-08-25 07:05:03,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:05:03,943.943 INFO    ] Initializing speech engine...
[2026-08-25 07:05:03,954.954 INFO    ] 2026-08-25 07:05:03
[2026-08-25 07:05:04,217.217 INFO    ] 2026-08-25 07:05:04
[2026-08-25 07:05:04,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:05:04,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:05:04,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:05:04,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:05:04,693.693 INFO    ] time= 25/08/2026 07:05:04
[2026-08-25 07:05:04,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:05:04,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:05:04,887.887 INFO    ] No existing commands found in stream
[2026-08-25 07:05:09,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:05:09,917.917 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 07:05:13,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:05:13,461.461 INFO    ] Checking for system updates...
[2026-08-25 07:05:13,503.503 INFO    ] 200
[2026-08-25 07:05:13,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:13,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:05:13,576.576 INFO    ] No update needed
[2026-08-25 07:05:13,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 07:05:13,616.616 INFO    ] 200
[2026-08-25 07:05:13,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:13,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:05:13,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:05:13,709.709 INFO    ] No camera update needed
[2026-08-25 07:05:13,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:05:13,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:05:13,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:05:13,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:05:15,766.766 INFO    ] ================================================
[2026-08-25 07:05:15,781.781 INFO    ] Launching Daemon at Tue Aug 25 07:05:15 IST 2026
[2026-08-25 07:05:15,792.792 INFO    ] ================================================
[2026-08-25 07:05:16,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:05:16
[2026-08-25 07:05:16,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:05:17,212.212 INFO    ] Initializing speech engine...
[2026-08-25 07:05:17,220.220 INFO    ] 2026-08-25 07:05:17
[2026-08-25 07:05:17,471.471 INFO    ] 2026-08-25 07:05:17
[2026-08-25 07:05:17,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:05:17,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:05:17,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:05:17,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:05:17,849.849 INFO    ] time= 25/08/2026 07:05:17
[2026-08-25 07:05:17,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:05:17,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:05:18,033.033 INFO    ] No existing commands found in stream
[2026-08-25 07:05:23,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:05:23,065.065 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 07:05:25,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:05:25,391.391 INFO    ] Checking for system updates...
[2026-08-25 07:05:25,432.432 INFO    ] 200
[2026-08-25 07:05:25,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:25,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:05:25,498.498 INFO    ] No update needed
[2026-08-25 07:05:25,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 07:05:25,545.545 INFO    ] 200
[2026-08-25 07:05:25,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:25,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:05:25,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:05:25,641.641 INFO    ] No camera update needed
[2026-08-25 07:05:25,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:05:25,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:05:25,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:05:25,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:05:27,703.703 INFO    ] ================================================
[2026-08-25 07:05:27,718.718 INFO    ] Launching Daemon at Tue Aug 25 07:05:27 IST 2026
[2026-08-25 07:05:27,730.730 INFO    ] ================================================
[2026-08-25 07:05:28,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:05:28
[2026-08-25 07:05:28,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:05:29,202.202 INFO    ] Initializing speech engine...
[2026-08-25 07:05:29,212.212 INFO    ] 2026-08-25 07:05:29
[2026-08-25 07:05:29,472.472 INFO    ] 2026-08-25 07:05:29
[2026-08-25 07:05:29,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:05:29,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:05:29,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:05:29,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:05:29,973.973 INFO    ] time= 25/08/2026 07:05:29
[2026-08-25 07:05:30,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:05:30,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:05:30,166.166 INFO    ] No existing commands found in stream
[2026-08-25 07:05:35,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:05:35,185.185 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 07:05:39,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:05:39,038.038 INFO    ] Checking for system updates...
[2026-08-25 07:05:39,079.079 INFO    ] 200
[2026-08-25 07:05:39,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:39,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:05:39,144.144 INFO    ] No update needed
[2026-08-25 07:05:39,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 07:05:39,185.185 INFO    ] 200
[2026-08-25 07:05:39,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:39,233.233 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:05:39,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:05:39,382.382 INFO    ] No camera update needed
[2026-08-25 07:05:39,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:05:39,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:05:39,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:05:39,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:05:41,438.438 INFO    ] ================================================
[2026-08-25 07:05:41,453.453 INFO    ] Launching Daemon at Tue Aug 25 07:05:41 IST 2026
[2026-08-25 07:05:41,464.464 INFO    ] ================================================
[2026-08-25 07:05:42,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:05:42
[2026-08-25 07:05:42,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:05:42,930.930 INFO    ] Initializing speech engine...
[2026-08-25 07:05:42,941.941 INFO    ] 2026-08-25 07:05:42
[2026-08-25 07:05:43,198.198 INFO    ] 2026-08-25 07:05:43
[2026-08-25 07:05:43,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:05:43,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:05:43,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:05:43,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:05:43,743.743 INFO    ] time= 25/08/2026 07:05:43
[2026-08-25 07:05:43,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:05:43,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:05:43,898.898 INFO    ] No existing commands found in stream
[2026-08-25 07:05:48,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:05:48,920.920 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 07:05:53,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:05:53,012.012 INFO    ] Checking for system updates...
[2026-08-25 07:05:53,052.052 INFO    ] 200
[2026-08-25 07:05:53,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:53,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:05:53,111.111 INFO    ] No update needed
[2026-08-25 07:05:53,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 07:05:53,151.151 INFO    ] 200
[2026-08-25 07:05:53,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:05:53,200.200 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:05:53,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:05:53,249.249 INFO    ] No camera update needed
[2026-08-25 07:05:53,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:05:53,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:05:53,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:05:53,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:05:55,315.315 INFO    ] ================================================
[2026-08-25 07:05:55,330.330 INFO    ] Launching Daemon at Tue Aug 25 07:05:55 IST 2026
[2026-08-25 07:05:55,341.341 INFO    ] ================================================
[2026-08-25 07:05:56,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:05:56
[2026-08-25 07:05:56,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:05:56,984.984 INFO    ] Initializing speech engine...
[2026-08-25 07:05:56,993.993 INFO    ] 2026-08-25 07:05:56
[2026-08-25 07:05:57,270.270 INFO    ] 2026-08-25 07:05:57
[2026-08-25 07:05:57,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:05:57,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:05:57,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:05:57,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:05:57,767.767 INFO    ] time= 25/08/2026 07:05:57
[2026-08-25 07:05:57,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:05:57,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:05:58,000.000 INFO    ] No existing commands found in stream
[2026-08-25 07:06:03,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:06:03,022.022 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 07:06:06,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:06:06,543.543 INFO    ] Checking for system updates...
[2026-08-25 07:06:06,581.581 INFO    ] 200
[2026-08-25 07:06:06,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:06,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:06:06,662.662 INFO    ] No update needed
[2026-08-25 07:06:06,666.666 INFO    ] Checking for camera pi updates...
[2026-08-25 07:06:06,712.712 INFO    ] 200
[2026-08-25 07:06:06,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:06,762.762 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:06:06,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:06:06,818.818 INFO    ] No camera update needed
[2026-08-25 07:06:06,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:06:06,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:06:06,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:06:06,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:06:08,876.876 INFO    ] ================================================
[2026-08-25 07:06:08,892.892 INFO    ] Launching Daemon at Tue Aug 25 07:06:08 IST 2026
[2026-08-25 07:06:08,902.902 INFO    ] ================================================
[2026-08-25 07:06:09,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:06:09
[2026-08-25 07:06:10,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:06:10,304.304 INFO    ] Initializing speech engine...
[2026-08-25 07:06:10,313.313 INFO    ] 2026-08-25 07:06:10
[2026-08-25 07:06:10,611.611 INFO    ] 2026-08-25 07:06:10
[2026-08-25 07:06:10,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:06:10,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:06:10,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:06:11,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:06:11,036.036 INFO    ] time= 25/08/2026 07:06:11
[2026-08-25 07:06:11,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:06:11,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:06:11,123.123 INFO    ] No existing commands found in stream
[2026-08-25 07:06:16,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:06:16,138.138 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 07:06:19,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:06:19,949.949 INFO    ] Checking for system updates...
[2026-08-25 07:06:19,989.989 INFO    ] 200
[2026-08-25 07:06:19,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:20,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:06:20,055.055 INFO    ] No update needed
[2026-08-25 07:06:20,057.057 INFO    ] Checking for camera pi updates...
[2026-08-25 07:06:20,096.096 INFO    ] 200
[2026-08-25 07:06:20,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:20,146.146 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:06:20,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:06:20,194.194 INFO    ] No camera update needed
[2026-08-25 07:06:20,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:06:20,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:06:20,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:06:20,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:06:22,249.249 INFO    ] ================================================
[2026-08-25 07:06:22,264.264 INFO    ] Launching Daemon at Tue Aug 25 07:06:22 IST 2026
[2026-08-25 07:06:22,275.275 INFO    ] ================================================
[2026-08-25 07:06:22,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:06:22
[2026-08-25 07:06:23,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:06:23,734.734 INFO    ] Initializing speech engine...
[2026-08-25 07:06:23,744.744 INFO    ] 2026-08-25 07:06:23
[2026-08-25 07:06:24,018.018 INFO    ] 2026-08-25 07:06:24
[2026-08-25 07:06:24,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:06:24,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:06:24,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:06:24,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:06:24,490.490 INFO    ] time= 25/08/2026 07:06:24
[2026-08-25 07:06:24,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:06:24,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:06:24,615.615 INFO    ] No existing commands found in stream
[2026-08-25 07:06:29,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:06:29,630.630 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 07:06:33,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:06:33,351.351 INFO    ] Checking for system updates...
[2026-08-25 07:06:33,387.387 INFO    ] 200
[2026-08-25 07:06:33,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:33,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:06:33,468.468 INFO    ] No update needed
[2026-08-25 07:06:33,471.471 INFO    ] Checking for camera pi updates...
[2026-08-25 07:06:33,511.511 INFO    ] 200
[2026-08-25 07:06:33,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:33,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:06:33,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:06:33,639.639 INFO    ] No camera update needed
[2026-08-25 07:06:33,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:06:33,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:06:33,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:06:33,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:06:35,693.693 INFO    ] ================================================
[2026-08-25 07:06:35,708.708 INFO    ] Launching Daemon at Tue Aug 25 07:06:35 IST 2026
[2026-08-25 07:06:35,719.719 INFO    ] ================================================
[2026-08-25 07:06:36,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:06:36
[2026-08-25 07:06:36,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:06:37,170.170 INFO    ] Initializing speech engine...
[2026-08-25 07:06:37,184.184 INFO    ] 2026-08-25 07:06:37
[2026-08-25 07:06:37,438.438 INFO    ] 2026-08-25 07:06:37
[2026-08-25 07:06:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:06:37,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:06:37,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:06:37,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:06:37,811.811 INFO    ] time= 25/08/2026 07:06:37
[2026-08-25 07:06:37,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:06:37,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:06:38,006.006 INFO    ] No existing commands found in stream
[2026-08-25 07:06:43,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:06:43,019.019 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 07:06:46,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:06:46,227.227 INFO    ] Checking for system updates...
[2026-08-25 07:06:46,268.268 INFO    ] 200
[2026-08-25 07:06:46,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:46,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:06:46,327.327 INFO    ] No update needed
[2026-08-25 07:06:46,329.329 INFO    ] Checking for camera pi updates...
[2026-08-25 07:06:46,363.363 INFO    ] 200
[2026-08-25 07:06:46,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:46,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:06:46,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:06:46,457.457 INFO    ] No camera update needed
[2026-08-25 07:06:46,459.459 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:06:46,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:06:46,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:06:46,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:06:48,513.513 INFO    ] ================================================
[2026-08-25 07:06:48,529.529 INFO    ] Launching Daemon at Tue Aug 25 07:06:48 IST 2026
[2026-08-25 07:06:48,539.539 INFO    ] ================================================
[2026-08-25 07:06:49,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:06:49
[2026-08-25 07:06:49,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:06:49,964.964 INFO    ] Initializing speech engine...
[2026-08-25 07:06:49,974.974 INFO    ] 2026-08-25 07:06:49
[2026-08-25 07:06:50,222.222 INFO    ] 2026-08-25 07:06:50
[2026-08-25 07:06:50,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:06:50,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:06:50,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:06:50,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:06:50,596.596 INFO    ] time= 25/08/2026 07:06:50
[2026-08-25 07:06:50,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:06:50,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:06:50,784.784 INFO    ] No existing commands found in stream
[2026-08-25 07:06:55,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:06:55,808.808 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 07:06:56,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:06:56,510.510 INFO    ] Checking for system updates...
[2026-08-25 07:06:56,549.549 INFO    ] 200
[2026-08-25 07:06:56,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:56,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:06:56,615.615 INFO    ] No update needed
[2026-08-25 07:06:56,618.618 INFO    ] Checking for camera pi updates...
[2026-08-25 07:06:56,658.658 INFO    ] 200
[2026-08-25 07:06:56,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:06:56,712.712 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:06:56,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:06:56,774.774 INFO    ] No camera update needed
[2026-08-25 07:06:56,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:06:56,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:06:56,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:06:56,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:06:58,830.830 INFO    ] ================================================
[2026-08-25 07:06:58,845.845 INFO    ] Launching Daemon at Tue Aug 25 07:06:58 IST 2026
[2026-08-25 07:06:58,856.856 INFO    ] ================================================
[2026-08-25 07:06:59,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:06:59
[2026-08-25 07:07:00,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:07:00,345.345 INFO    ] Initializing speech engine...
[2026-08-25 07:07:00,353.353 INFO    ] 2026-08-25 07:07:00
[2026-08-25 07:07:00,614.614 INFO    ] 2026-08-25 07:07:00
[2026-08-25 07:07:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:07:00,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:07:00,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:07:01,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:07:01,050.050 INFO    ] time= 25/08/2026 07:07:01
[2026-08-25 07:07:01,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:07:01,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:07:01,200.200 INFO    ] No existing commands found in stream
[2026-08-25 07:07:06,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:07:06,214.214 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 07:07:10,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:07:10,620.620 INFO    ] Checking for system updates...
[2026-08-25 07:07:10,659.659 INFO    ] 200
[2026-08-25 07:07:10,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:10,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:07:10,717.717 INFO    ] No update needed
[2026-08-25 07:07:10,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 07:07:10,753.753 INFO    ] 200
[2026-08-25 07:07:10,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:10,796.796 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:07:10,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:07:10,846.846 INFO    ] No camera update needed
[2026-08-25 07:07:10,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:07:10,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:07:10,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:07:10,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:07:12,902.902 INFO    ] ================================================
[2026-08-25 07:07:12,917.917 INFO    ] Launching Daemon at Tue Aug 25 07:07:12 IST 2026
[2026-08-25 07:07:12,929.929 INFO    ] ================================================
[2026-08-25 07:07:13,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:07:13
[2026-08-25 07:07:14,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:07:14,356.356 INFO    ] Initializing speech engine...
[2026-08-25 07:07:14,370.370 INFO    ] 2026-08-25 07:07:14
[2026-08-25 07:07:14,659.659 INFO    ] 2026-08-25 07:07:14
[2026-08-25 07:07:14,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:07:14,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:07:14,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:07:15,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:07:15,048.048 INFO    ] time= 25/08/2026 07:07:15
[2026-08-25 07:07:15,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:07:15,091.091 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:07:15,177.177 INFO    ] No existing commands found in stream
[2026-08-25 07:07:20,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:07:20,192.192 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 07:07:22,396.396 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:07:22,399.399 INFO    ] Checking for system updates...
[2026-08-25 07:07:22,435.435 INFO    ] 200
[2026-08-25 07:07:22,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:22,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:07:22,502.502 INFO    ] No update needed
[2026-08-25 07:07:22,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 07:07:22,541.541 INFO    ] 200
[2026-08-25 07:07:22,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:22,591.591 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:07:22,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:07:22,651.651 INFO    ] No camera update needed
[2026-08-25 07:07:22,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:07:22,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:07:22,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:07:22,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:07:24,710.710 INFO    ] ================================================
[2026-08-25 07:07:24,726.726 INFO    ] Launching Daemon at Tue Aug 25 07:07:24 IST 2026
[2026-08-25 07:07:24,738.738 INFO    ] ================================================
[2026-08-25 07:07:25,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:07:25
[2026-08-25 07:07:25,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:07:26,169.169 INFO    ] Initializing speech engine...
[2026-08-25 07:07:26,178.178 INFO    ] 2026-08-25 07:07:26
[2026-08-25 07:07:26,437.437 INFO    ] 2026-08-25 07:07:26
[2026-08-25 07:07:26,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:07:26,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:07:26,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:07:26,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:07:26,901.901 INFO    ] time= 25/08/2026 07:07:26
[2026-08-25 07:07:26,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:07:26,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:07:27,056.056 INFO    ] No existing commands found in stream
[2026-08-25 07:07:32,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:07:32,096.096 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 07:07:35,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:07:35,229.229 INFO    ] Checking for system updates...
[2026-08-25 07:07:35,270.270 INFO    ] 200
[2026-08-25 07:07:35,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:35,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:07:35,331.331 INFO    ] No update needed
[2026-08-25 07:07:35,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 07:07:35,373.373 INFO    ] 200
[2026-08-25 07:07:35,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:35,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:07:35,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:07:35,479.479 INFO    ] No camera update needed
[2026-08-25 07:07:35,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:07:35,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:07:35,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:07:35,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:07:37,539.539 INFO    ] ================================================
[2026-08-25 07:07:37,555.555 INFO    ] Launching Daemon at Tue Aug 25 07:07:37 IST 2026
[2026-08-25 07:07:37,567.567 INFO    ] ================================================
[2026-08-25 07:07:38,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:07:38
[2026-08-25 07:07:38,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:07:38,994.994 INFO    ] Initializing speech engine...
[2026-08-25 07:07:39,002.002 INFO    ] 2026-08-25 07:07:38
[2026-08-25 07:07:39,271.271 INFO    ] 2026-08-25 07:07:39
[2026-08-25 07:07:39,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:07:39,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:07:39,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:07:39,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:07:39,715.715 INFO    ] time= 25/08/2026 07:07:39
[2026-08-25 07:07:39,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:07:39,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:07:39,918.918 INFO    ] No existing commands found in stream
[2026-08-25 07:07:44,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:07:44,948.948 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 07:07:46,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:07:46,708.708 INFO    ] Checking for system updates...
[2026-08-25 07:07:46,743.743 INFO    ] 200
[2026-08-25 07:07:46,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:46,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:07:46,801.801 INFO    ] No update needed
[2026-08-25 07:07:46,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 07:07:46,837.837 INFO    ] 200
[2026-08-25 07:07:46,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:46,879.879 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:07:47,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:07:47,039.039 INFO    ] No camera update needed
[2026-08-25 07:07:47,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:07:47,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:07:47,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:07:47,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:07:49,093.093 INFO    ] ================================================
[2026-08-25 07:07:49,108.108 INFO    ] Launching Daemon at Tue Aug 25 07:07:49 IST 2026
[2026-08-25 07:07:49,119.119 INFO    ] ================================================
[2026-08-25 07:07:49,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:07:49
[2026-08-25 07:07:50,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:07:50,539.539 INFO    ] Initializing speech engine...
[2026-08-25 07:07:50,547.547 INFO    ] 2026-08-25 07:07:50
[2026-08-25 07:07:50,790.790 INFO    ] 2026-08-25 07:07:50
[2026-08-25 07:07:50,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:07:51,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:07:51,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:07:51,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:07:51,158.158 INFO    ] time= 25/08/2026 07:07:51
[2026-08-25 07:07:51,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:07:51,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:07:51,344.344 INFO    ] No existing commands found in stream
[2026-08-25 07:07:56,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:07:56,367.367 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 07:07:59,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:07:59,769.769 INFO    ] Checking for system updates...
[2026-08-25 07:07:59,804.804 INFO    ] 200
[2026-08-25 07:07:59,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:59,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:07:59,861.861 INFO    ] No update needed
[2026-08-25 07:07:59,864.864 INFO    ] Checking for camera pi updates...
[2026-08-25 07:07:59,900.900 INFO    ] 200
[2026-08-25 07:07:59,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:07:59,945.945 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:07:59,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:07:59,997.997 INFO    ] No camera update needed
[2026-08-25 07:07:59,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:08:00,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:08:00,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:08:00,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:08:02,062.062 INFO    ] ================================================
[2026-08-25 07:08:02,110.110 INFO    ] Launching Daemon at Tue Aug 25 07:08:02 IST 2026
[2026-08-25 07:08:02,128.128 INFO    ] ================================================
[2026-08-25 07:08:02,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:08:02
[2026-08-25 07:08:03,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:08:03,674.674 INFO    ] Initializing speech engine...
[2026-08-25 07:08:03,687.687 INFO    ] 2026-08-25 07:08:03
[2026-08-25 07:08:03,955.955 INFO    ] 2026-08-25 07:08:03
[2026-08-25 07:08:03,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:08:04,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:08:04,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:08:04,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:08:04,335.335 INFO    ] time= 25/08/2026 07:08:04
[2026-08-25 07:08:04,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:08:04,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:08:04,527.527 INFO    ] No existing commands found in stream
[2026-08-25 07:08:09,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:08:09,551.551 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 07:08:11,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:08:11,480.480 INFO    ] Checking for system updates...
[2026-08-25 07:08:11,516.516 INFO    ] 200
[2026-08-25 07:08:11,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:11,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:08:11,574.574 INFO    ] No update needed
[2026-08-25 07:08:11,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 07:08:11,611.611 INFO    ] 200
[2026-08-25 07:08:11,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:11,654.654 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:08:11,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:08:11,713.713 INFO    ] No camera update needed
[2026-08-25 07:08:11,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:08:11,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:08:11,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:08:11,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:08:13,777.777 INFO    ] ================================================
[2026-08-25 07:08:13,792.792 INFO    ] Launching Daemon at Tue Aug 25 07:08:13 IST 2026
[2026-08-25 07:08:13,803.803 INFO    ] ================================================
[2026-08-25 07:08:14,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:08:14
[2026-08-25 07:08:15,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:08:15,298.298 INFO    ] Initializing speech engine...
[2026-08-25 07:08:15,307.307 INFO    ] 2026-08-25 07:08:15
[2026-08-25 07:08:15,567.567 INFO    ] 2026-08-25 07:08:15
[2026-08-25 07:08:15,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:08:15,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:08:15,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:08:15,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:08:16,023.023 INFO    ] time= 25/08/2026 07:08:15
[2026-08-25 07:08:16,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:08:16,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:08:16,238.238 INFO    ] No existing commands found in stream
[2026-08-25 07:08:21,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:08:21,257.257 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 07:08:23,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:08:23,455.455 INFO    ] Checking for system updates...
[2026-08-25 07:08:23,490.490 INFO    ] 200
[2026-08-25 07:08:23,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:23,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:08:23,556.556 INFO    ] No update needed
[2026-08-25 07:08:23,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 07:08:23,597.597 INFO    ] 200
[2026-08-25 07:08:23,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:23,645.645 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:08:23,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:08:23,698.698 INFO    ] No camera update needed
[2026-08-25 07:08:23,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:08:23,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:08:23,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:08:23,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:08:25,754.754 INFO    ] ================================================
[2026-08-25 07:08:25,769.769 INFO    ] Launching Daemon at Tue Aug 25 07:08:25 IST 2026
[2026-08-25 07:08:25,780.780 INFO    ] ================================================
[2026-08-25 07:08:26,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:08:26
[2026-08-25 07:08:26,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:08:27,236.236 INFO    ] Initializing speech engine...
[2026-08-25 07:08:27,244.244 INFO    ] 2026-08-25 07:08:27
[2026-08-25 07:08:27,501.501 INFO    ] 2026-08-25 07:08:27
[2026-08-25 07:08:27,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:08:27,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:08:27,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:08:27,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:08:27,993.993 INFO    ] time= 25/08/2026 07:08:27
[2026-08-25 07:08:28,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:08:28,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:08:28,198.198 INFO    ] No existing commands found in stream
[2026-08-25 07:08:33,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:08:33,217.217 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 07:08:34,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:08:34,336.336 INFO    ] Checking for system updates...
[2026-08-25 07:08:34,371.371 INFO    ] 200
[2026-08-25 07:08:34,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:34,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:08:34,429.429 INFO    ] No update needed
[2026-08-25 07:08:34,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 07:08:34,469.469 INFO    ] 200
[2026-08-25 07:08:34,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:34,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:08:34,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:08:34,561.561 INFO    ] No camera update needed
[2026-08-25 07:08:34,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:08:34,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:08:34,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:08:34,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:08:36,616.616 INFO    ] ================================================
[2026-08-25 07:08:36,631.631 INFO    ] Launching Daemon at Tue Aug 25 07:08:36 IST 2026
[2026-08-25 07:08:36,641.641 INFO    ] ================================================
[2026-08-25 07:08:37,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:08:37
[2026-08-25 07:08:37,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:08:38,064.064 INFO    ] Initializing speech engine...
[2026-08-25 07:08:38,070.070 INFO    ] 2026-08-25 07:08:38
[2026-08-25 07:08:38,369.369 INFO    ] 2026-08-25 07:08:38
[2026-08-25 07:08:38,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:08:38,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:08:38,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:08:38,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:08:38,755.755 INFO    ] time= 25/08/2026 07:08:38
[2026-08-25 07:08:38,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:08:38,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:08:38,950.950 INFO    ] No existing commands found in stream
[2026-08-25 07:08:43,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:08:43,969.969 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 07:08:44,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:08:44,792.792 INFO    ] Checking for system updates...
[2026-08-25 07:08:44,829.829 INFO    ] 200
[2026-08-25 07:08:44,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:44,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:08:44,887.887 INFO    ] No update needed
[2026-08-25 07:08:44,890.890 INFO    ] Checking for camera pi updates...
[2026-08-25 07:08:44,925.925 INFO    ] 200
[2026-08-25 07:08:44,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:44,975.975 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:08:45,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:08:45,029.029 INFO    ] No camera update needed
[2026-08-25 07:08:45,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:08:45,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:08:45,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:08:45,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:08:47,084.084 INFO    ] ================================================
[2026-08-25 07:08:47,099.099 INFO    ] Launching Daemon at Tue Aug 25 07:08:47 IST 2026
[2026-08-25 07:08:47,110.110 INFO    ] ================================================
[2026-08-25 07:08:47,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:08:47
[2026-08-25 07:08:48,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:08:48,765.765 INFO    ] Initializing speech engine...
[2026-08-25 07:08:48,779.779 INFO    ] 2026-08-25 07:08:48
[2026-08-25 07:08:49,058.058 INFO    ] 2026-08-25 07:08:49
[2026-08-25 07:08:49,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:08:49,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:08:49,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:08:49,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:08:49,556.556 INFO    ] time= 25/08/2026 07:08:49
[2026-08-25 07:08:49,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:08:49,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:08:49,785.785 INFO    ] No existing commands found in stream
[2026-08-25 07:08:54,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:08:54,823.823 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 07:08:58,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:08:58,657.657 INFO    ] Checking for system updates...
[2026-08-25 07:08:58,698.698 INFO    ] 200
[2026-08-25 07:08:58,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:58,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:08:58,757.757 INFO    ] No update needed
[2026-08-25 07:08:58,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 07:08:58,799.799 INFO    ] 200
[2026-08-25 07:08:58,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:08:58,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:08:58,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:08:58,900.900 INFO    ] No camera update needed
[2026-08-25 07:08:58,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:08:58,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:08:58,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:08:58,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:09:00,960.960 INFO    ] ================================================
[2026-08-25 07:09:00,976.976 INFO    ] Launching Daemon at Tue Aug 25 07:09:00 IST 2026
[2026-08-25 07:09:00,986.986 INFO    ] ================================================
[2026-08-25 07:09:01,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:09:01
[2026-08-25 07:09:02,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:09:02,687.687 INFO    ] Initializing speech engine...
[2026-08-25 07:09:02,711.711 INFO    ] 2026-08-25 07:09:02
[2026-08-25 07:09:02,994.994 INFO    ] 2026-08-25 07:09:02
[2026-08-25 07:09:03,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:09:03,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:09:03,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:09:03,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:09:03,421.421 INFO    ] time= 25/08/2026 07:09:03
[2026-08-25 07:09:03,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:09:03,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:09:03,609.609 INFO    ] No existing commands found in stream
[2026-08-25 07:09:08,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:09:08,642.642 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 07:09:11,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:09:11,125.125 INFO    ] Checking for system updates...
[2026-08-25 07:09:11,160.160 INFO    ] 200
[2026-08-25 07:09:11,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:11,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:11,217.217 INFO    ] No update needed
[2026-08-25 07:09:11,219.219 INFO    ] Checking for camera pi updates...
[2026-08-25 07:09:11,252.252 INFO    ] 200
[2026-08-25 07:09:11,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:11,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:09:11,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:11,341.341 INFO    ] No camera update needed
[2026-08-25 07:09:11,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:09:11,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:09:11,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:09:11,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:09:13,397.397 INFO    ] ================================================
[2026-08-25 07:09:13,412.412 INFO    ] Launching Daemon at Tue Aug 25 07:09:13 IST 2026
[2026-08-25 07:09:13,422.422 INFO    ] ================================================
[2026-08-25 07:09:13,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:09:13
[2026-08-25 07:09:14,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:09:14,859.859 INFO    ] Initializing speech engine...
[2026-08-25 07:09:14,869.869 INFO    ] 2026-08-25 07:09:14
[2026-08-25 07:09:15,132.132 INFO    ] 2026-08-25 07:09:15
[2026-08-25 07:09:15,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:09:15,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:09:15,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:09:15,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:09:15,543.543 INFO    ] time= 25/08/2026 07:09:15
[2026-08-25 07:09:15,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:09:15,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:09:15,633.633 INFO    ] No existing commands found in stream
[2026-08-25 07:09:20,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:09:20,649.649 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 07:09:21,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:09:21,431.431 INFO    ] Checking for system updates...
[2026-08-25 07:09:21,471.471 INFO    ] 200
[2026-08-25 07:09:21,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:21,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:21,528.528 INFO    ] No update needed
[2026-08-25 07:09:21,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 07:09:21,567.567 INFO    ] 200
[2026-08-25 07:09:21,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:21,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:09:21,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:21,658.658 INFO    ] No camera update needed
[2026-08-25 07:09:21,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:09:21,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:09:21,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:09:21,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:09:23,712.712 INFO    ] ================================================
[2026-08-25 07:09:23,728.728 INFO    ] Launching Daemon at Tue Aug 25 07:09:23 IST 2026
[2026-08-25 07:09:23,738.738 INFO    ] ================================================
[2026-08-25 07:09:24,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:09:24
[2026-08-25 07:09:24,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:09:25,161.161 INFO    ] Initializing speech engine...
[2026-08-25 07:09:25,168.168 INFO    ] 2026-08-25 07:09:25
[2026-08-25 07:09:25,421.421 INFO    ] 2026-08-25 07:09:25
[2026-08-25 07:09:25,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:09:25,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:09:25,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:09:25,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:09:25,796.796 INFO    ] time= 25/08/2026 07:09:25
[2026-08-25 07:09:25,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:09:25,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:09:25,978.978 INFO    ] No existing commands found in stream
[2026-08-25 07:09:31,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:09:31,007.007 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 07:09:31,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:09:31,665.665 INFO    ] Checking for system updates...
[2026-08-25 07:09:31,700.700 INFO    ] 200
[2026-08-25 07:09:31,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:31,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:09:31,778.778 INFO    ] No update needed
[2026-08-25 07:09:31,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 07:09:31,826.826 INFO    ] 200
[2026-08-25 07:09:31,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:31,875.875 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:09:31,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:09:31,949.949 INFO    ] No camera update needed
[2026-08-25 07:09:31,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:09:31,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:09:31,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:09:31,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:09:34,008.008 INFO    ] ================================================
[2026-08-25 07:09:34,023.023 INFO    ] Launching Daemon at Tue Aug 25 07:09:34 IST 2026
[2026-08-25 07:09:34,033.033 INFO    ] ================================================
[2026-08-25 07:09:34,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:09:34
[2026-08-25 07:09:35,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:09:35,483.483 INFO    ] Initializing speech engine...
[2026-08-25 07:09:35,492.492 INFO    ] 2026-08-25 07:09:35
[2026-08-25 07:09:35,754.754 INFO    ] 2026-08-25 07:09:35
[2026-08-25 07:09:35,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:09:36,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:09:36,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:09:36,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:09:36,236.236 INFO    ] time= 25/08/2026 07:09:36
[2026-08-25 07:09:36,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:09:36,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:09:36,450.450 INFO    ] No existing commands found in stream
[2026-08-25 07:09:41,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:09:41,475.475 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 07:09:44,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:09:44,927.927 INFO    ] Checking for system updates...
[2026-08-25 07:09:44,963.963 INFO    ] 200
[2026-08-25 07:09:44,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:45,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:45,027.027 INFO    ] No update needed
[2026-08-25 07:09:45,029.029 INFO    ] Checking for camera pi updates...
[2026-08-25 07:09:45,062.062 INFO    ] 200
[2026-08-25 07:09:45,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:45,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:09:45,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:45,153.153 INFO    ] No camera update needed
[2026-08-25 07:09:45,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:09:45,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:09:45,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:09:45,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:09:47,206.206 INFO    ] ================================================
[2026-08-25 07:09:47,221.221 INFO    ] Launching Daemon at Tue Aug 25 07:09:47 IST 2026
[2026-08-25 07:09:47,232.232 INFO    ] ================================================
[2026-08-25 07:09:47,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:09:47
[2026-08-25 07:09:48,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:09:48,651.651 INFO    ] Initializing speech engine...
[2026-08-25 07:09:48,664.664 INFO    ] 2026-08-25 07:09:48
[2026-08-25 07:09:48,915.915 INFO    ] 2026-08-25 07:09:48
[2026-08-25 07:09:48,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:09:49,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:09:49,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:09:49,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:09:49,323.323 INFO    ] time= 25/08/2026 07:09:49
[2026-08-25 07:09:49,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:09:49,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:09:49,498.498 INFO    ] No existing commands found in stream
[2026-08-25 07:09:54,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:09:54,522.522 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 07:09:57,828.828 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:09:57,830.830 INFO    ] Checking for system updates...
[2026-08-25 07:09:57,866.866 INFO    ] 200
[2026-08-25 07:09:57,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:57,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:57,929.929 INFO    ] No update needed
[2026-08-25 07:09:57,932.932 INFO    ] Checking for camera pi updates...
[2026-08-25 07:09:57,969.969 INFO    ] 200
[2026-08-25 07:09:57,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:09:58,015.015 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:09:58,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:09:58,161.161 INFO    ] No camera update needed
[2026-08-25 07:09:58,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:09:58,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:09:58,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:09:58,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:10:00,216.216 INFO    ] ================================================
[2026-08-25 07:10:00,233.233 INFO    ] Launching Daemon at Tue Aug 25 07:10:00 IST 2026
[2026-08-25 07:10:00,244.244 INFO    ] ================================================
[2026-08-25 07:10:00,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:10:00
[2026-08-25 07:10:01,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:10:01,978.978 INFO    ] Initializing speech engine...
[2026-08-25 07:10:01,982.982 INFO    ] 2026-08-25 07:10:01
[2026-08-25 07:10:02,567.567 INFO    ] 2026-08-25 07:10:02
[2026-08-25 07:10:02,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:10:02,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:10:02,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:10:02,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:10:02,901.901 INFO    ] time= 25/08/2026 07:10:02
[2026-08-25 07:10:02,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:10:02,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:10:02,966.966 INFO    ] No existing commands found in stream
[2026-08-25 07:10:07,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:10:07,979.979 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 07:10:10,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:10:10,397.397 INFO    ] Checking for system updates...
[2026-08-25 07:10:10,432.432 INFO    ] 200
[2026-08-25 07:10:10,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:10,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:10:10,490.490 INFO    ] No update needed
[2026-08-25 07:10:10,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 07:10:10,528.528 INFO    ] 200
[2026-08-25 07:10:10,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:10,575.575 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:10:10,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:10:10,625.625 INFO    ] No camera update needed
[2026-08-25 07:10:10,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:10:10,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:10:10,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:10:10,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:10:12,680.680 INFO    ] ================================================
[2026-08-25 07:10:12,696.696 INFO    ] Launching Daemon at Tue Aug 25 07:10:12 IST 2026
[2026-08-25 07:10:12,706.706 INFO    ] ================================================
[2026-08-25 07:10:13,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:10:13
[2026-08-25 07:10:13,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:10:14,162.162 INFO    ] Initializing speech engine...
[2026-08-25 07:10:14,171.171 INFO    ] 2026-08-25 07:10:14
[2026-08-25 07:10:14,429.429 INFO    ] 2026-08-25 07:10:14
[2026-08-25 07:10:14,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:10:14,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:10:14,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:10:14,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:10:14,886.886 INFO    ] time= 25/08/2026 07:10:14
[2026-08-25 07:10:14,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:10:14,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:10:15,099.099 INFO    ] No existing commands found in stream
[2026-08-25 07:10:20,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:10:20,127.127 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 07:10:24,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:10:24,494.494 INFO    ] Checking for system updates...
[2026-08-25 07:10:24,529.529 INFO    ] 200
[2026-08-25 07:10:24,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:24,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:10:24,591.591 INFO    ] No update needed
[2026-08-25 07:10:24,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 07:10:24,627.627 INFO    ] 200
[2026-08-25 07:10:24,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:24,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:10:24,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:10:24,736.736 INFO    ] No camera update needed
[2026-08-25 07:10:24,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:10:24,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:10:24,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:10:24,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:10:26,791.791 INFO    ] ================================================
[2026-08-25 07:10:26,806.806 INFO    ] Launching Daemon at Tue Aug 25 07:10:26 IST 2026
[2026-08-25 07:10:26,816.816 INFO    ] ================================================
[2026-08-25 07:10:27,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:10:27
[2026-08-25 07:10:27,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:10:28,263.263 INFO    ] Initializing speech engine...
[2026-08-25 07:10:28,272.272 INFO    ] 2026-08-25 07:10:28
[2026-08-25 07:10:28,546.546 INFO    ] 2026-08-25 07:10:28
[2026-08-25 07:10:28,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:10:28,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:10:28,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:10:28,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:10:28,990.990 INFO    ] time= 25/08/2026 07:10:28
[2026-08-25 07:10:29,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:10:29,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:10:29,150.150 INFO    ] No existing commands found in stream
[2026-08-25 07:10:34,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:10:34,189.189 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 07:10:36,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:10:36,800.800 INFO    ] Checking for system updates...
[2026-08-25 07:10:36,838.838 INFO    ] 200
[2026-08-25 07:10:36,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:36,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:10:36,895.895 INFO    ] No update needed
[2026-08-25 07:10:36,897.897 INFO    ] Checking for camera pi updates...
[2026-08-25 07:10:36,934.934 INFO    ] 200
[2026-08-25 07:10:36,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:36,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:10:37,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:10:37,031.031 INFO    ] No camera update needed
[2026-08-25 07:10:37,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:10:37,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:10:37,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:10:37,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:10:39,085.085 INFO    ] ================================================
[2026-08-25 07:10:39,100.100 INFO    ] Launching Daemon at Tue Aug 25 07:10:39 IST 2026
[2026-08-25 07:10:39,110.110 INFO    ] ================================================
[2026-08-25 07:10:39,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:10:39
[2026-08-25 07:10:40,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:10:40,506.506 INFO    ] Initializing speech engine...
[2026-08-25 07:10:40,519.519 INFO    ] 2026-08-25 07:10:40
[2026-08-25 07:10:40,785.785 INFO    ] 2026-08-25 07:10:40
[2026-08-25 07:10:40,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:10:41,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:10:41,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:10:41,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:10:41,258.258 INFO    ] time= 25/08/2026 07:10:41
[2026-08-25 07:10:41,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:10:41,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:10:41,438.438 INFO    ] No existing commands found in stream
[2026-08-25 07:10:46,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:10:46,478.478 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 07:10:49,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:10:49,948.948 INFO    ] Checking for system updates...
[2026-08-25 07:10:49,983.983 INFO    ] 200
[2026-08-25 07:10:49,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:50,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:10:50,044.044 INFO    ] No update needed
[2026-08-25 07:10:50,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 07:10:50,080.080 INFO    ] 200
[2026-08-25 07:10:50,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:10:50,126.126 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:10:50,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:10:50,173.173 INFO    ] No camera update needed
[2026-08-25 07:10:50,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:10:50,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:10:50,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:10:50,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:10:52,228.228 INFO    ] ================================================
[2026-08-25 07:10:52,243.243 INFO    ] Launching Daemon at Tue Aug 25 07:10:52 IST 2026
[2026-08-25 07:10:52,253.253 INFO    ] ================================================
[2026-08-25 07:10:52,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:10:52
[2026-08-25 07:10:53,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:10:53,674.674 INFO    ] Initializing speech engine...
[2026-08-25 07:10:53,693.693 INFO    ] 2026-08-25 07:10:53
[2026-08-25 07:10:53,954.954 INFO    ] 2026-08-25 07:10:53
[2026-08-25 07:10:53,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:10:54,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:10:54,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:10:54,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:10:54,362.362 INFO    ] time= 25/08/2026 07:10:54
[2026-08-25 07:10:54,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:10:54,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:10:54,523.523 INFO    ] No existing commands found in stream
[2026-08-25 07:10:59,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:10:59,551.551 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 07:11:02,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:11:02,180.180 INFO    ] Checking for system updates...
[2026-08-25 07:11:02,226.226 INFO    ] 200
[2026-08-25 07:11:02,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:02,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:11:02,295.295 INFO    ] No update needed
[2026-08-25 07:11:02,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 07:11:02,343.343 INFO    ] 200
[2026-08-25 07:11:02,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:02,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:11:02,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:11:02,462.462 INFO    ] No camera update needed
[2026-08-25 07:11:02,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:11:02,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:11:02,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:11:02,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:11:04,533.533 INFO    ] ================================================
[2026-08-25 07:11:04,549.549 INFO    ] Launching Daemon at Tue Aug 25 07:11:04 IST 2026
[2026-08-25 07:11:04,559.559 INFO    ] ================================================
[2026-08-25 07:11:05,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:11:05
[2026-08-25 07:11:05,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:11:06,074.074 INFO    ] Initializing speech engine...
[2026-08-25 07:11:06,088.088 INFO    ] 2026-08-25 07:11:06
[2026-08-25 07:11:06,408.408 INFO    ] 2026-08-25 07:11:06
[2026-08-25 07:11:06,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:11:06,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:11:06,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:11:06,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:11:06,927.927 INFO    ] time= 25/08/2026 07:11:06
[2026-08-25 07:11:06,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:11:06,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:11:07,086.086 INFO    ] No existing commands found in stream
[2026-08-25 07:11:12,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:11:12,111.111 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 07:11:15,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:11:15,122.122 INFO    ] Checking for system updates...
[2026-08-25 07:11:15,158.158 INFO    ] 200
[2026-08-25 07:11:15,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:15,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:11:15,222.222 INFO    ] No update needed
[2026-08-25 07:11:15,224.224 INFO    ] Checking for camera pi updates...
[2026-08-25 07:11:15,257.257 INFO    ] 200
[2026-08-25 07:11:15,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:15,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:11:15,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:11:15,411.411 INFO    ] No camera update needed
[2026-08-25 07:11:15,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:11:15,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:11:15,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:11:15,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:11:17,465.465 INFO    ] ================================================
[2026-08-25 07:11:17,480.480 INFO    ] Launching Daemon at Tue Aug 25 07:11:17 IST 2026
[2026-08-25 07:11:17,491.491 INFO    ] ================================================
[2026-08-25 07:11:18,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:11:18
[2026-08-25 07:11:18,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:11:18,910.910 INFO    ] Initializing speech engine...
[2026-08-25 07:11:18,917.917 INFO    ] 2026-08-25 07:11:18
[2026-08-25 07:11:19,175.175 INFO    ] 2026-08-25 07:11:19
[2026-08-25 07:11:19,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:11:19,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:11:19,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:11:19,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:11:19,645.645 INFO    ] time= 25/08/2026 07:11:19
[2026-08-25 07:11:19,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:11:19,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:11:19,872.872 INFO    ] No existing commands found in stream
[2026-08-25 07:11:24,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:11:24,890.890 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 07:11:29,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:11:29,048.048 INFO    ] Checking for system updates...
[2026-08-25 07:11:29,083.083 INFO    ] 200
[2026-08-25 07:11:29,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:29,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:11:29,141.141 INFO    ] No update needed
[2026-08-25 07:11:29,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 07:11:29,181.181 INFO    ] 200
[2026-08-25 07:11:29,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:29,237.237 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:11:29,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:11:29,286.286 INFO    ] No camera update needed
[2026-08-25 07:11:29,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:11:29,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:11:29,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:11:29,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:11:31,343.343 INFO    ] ================================================
[2026-08-25 07:11:31,359.359 INFO    ] Launching Daemon at Tue Aug 25 07:11:31 IST 2026
[2026-08-25 07:11:31,370.370 INFO    ] ================================================
[2026-08-25 07:11:32,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:11:32
[2026-08-25 07:11:32,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:11:32,893.893 INFO    ] Initializing speech engine...
[2026-08-25 07:11:32,906.906 INFO    ] 2026-08-25 07:11:32
[2026-08-25 07:11:33,172.172 INFO    ] 2026-08-25 07:11:33
[2026-08-25 07:11:33,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:11:33,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:11:33,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:11:33,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:11:33,545.545 INFO    ] time= 25/08/2026 07:11:33
[2026-08-25 07:11:33,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:11:33,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:11:33,622.622 INFO    ] No existing commands found in stream
[2026-08-25 07:11:38,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:11:38,650.650 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 07:11:42,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:11:42,989.989 INFO    ] Checking for system updates...
[2026-08-25 07:11:43,028.028 INFO    ] 200
[2026-08-25 07:11:43,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:43,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:11:43,093.093 INFO    ] No update needed
[2026-08-25 07:11:43,095.095 INFO    ] Checking for camera pi updates...
[2026-08-25 07:11:43,128.128 INFO    ] 200
[2026-08-25 07:11:43,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:43,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:11:43,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:11:43,222.222 INFO    ] No camera update needed
[2026-08-25 07:11:43,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:11:43,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:11:43,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:11:43,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:11:45,280.280 INFO    ] ================================================
[2026-08-25 07:11:45,295.295 INFO    ] Launching Daemon at Tue Aug 25 07:11:45 IST 2026
[2026-08-25 07:11:45,305.305 INFO    ] ================================================
[2026-08-25 07:11:45,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:11:45
[2026-08-25 07:11:46,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:11:46,737.737 INFO    ] Initializing speech engine...
[2026-08-25 07:11:46,746.746 INFO    ] 2026-08-25 07:11:46
[2026-08-25 07:11:46,998.998 INFO    ] 2026-08-25 07:11:46
[2026-08-25 07:11:47,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:11:47,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:11:47,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:11:47,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:11:47,376.376 INFO    ] time= 25/08/2026 07:11:47
[2026-08-25 07:11:47,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:11:47,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:11:47,527.527 INFO    ] No existing commands found in stream
[2026-08-25 07:11:52,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:11:52,550.550 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 07:11:53,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:11:53,469.469 INFO    ] Checking for system updates...
[2026-08-25 07:11:53,508.508 INFO    ] 200
[2026-08-25 07:11:53,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:53,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:11:53,565.565 INFO    ] No update needed
[2026-08-25 07:11:53,567.567 INFO    ] Checking for camera pi updates...
[2026-08-25 07:11:53,605.605 INFO    ] 200
[2026-08-25 07:11:53,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:11:53,647.647 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:11:53,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:11:53,704.704 INFO    ] No camera update needed
[2026-08-25 07:11:53,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:11:53,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:11:53,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:11:53,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:11:55,758.758 INFO    ] ================================================
[2026-08-25 07:11:55,773.773 INFO    ] Launching Daemon at Tue Aug 25 07:11:55 IST 2026
[2026-08-25 07:11:55,783.783 INFO    ] ================================================
[2026-08-25 07:11:56,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:11:56
[2026-08-25 07:11:56,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:11:57,264.264 INFO    ] Initializing speech engine...
[2026-08-25 07:11:57,269.269 INFO    ] 2026-08-25 07:11:57
[2026-08-25 07:11:57,518.518 INFO    ] 2026-08-25 07:11:57
[2026-08-25 07:11:57,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:11:57,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:11:57,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:11:57,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:11:57,894.894 INFO    ] time= 25/08/2026 07:11:57
[2026-08-25 07:11:57,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:11:57,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:11:58,058.058 INFO    ] No existing commands found in stream
[2026-08-25 07:12:03,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:12:03,080.080 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 07:12:04,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:12:04,300.300 INFO    ] Checking for system updates...
[2026-08-25 07:12:04,336.336 INFO    ] 200
[2026-08-25 07:12:04,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:04,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:12:04,401.401 INFO    ] No update needed
[2026-08-25 07:12:04,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 07:12:04,441.441 INFO    ] 200
[2026-08-25 07:12:04,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:04,483.483 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:12:04,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:12:04,532.532 INFO    ] No camera update needed
[2026-08-25 07:12:04,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:12:04,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:12:04,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:12:04,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:12:06,588.588 INFO    ] ================================================
[2026-08-25 07:12:06,603.603 INFO    ] Launching Daemon at Tue Aug 25 07:12:06 IST 2026
[2026-08-25 07:12:06,614.614 INFO    ] ================================================
[2026-08-25 07:12:07,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:12:07
[2026-08-25 07:12:07,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:12:08,047.047 INFO    ] Initializing speech engine...
[2026-08-25 07:12:08,055.055 INFO    ] 2026-08-25 07:12:08
[2026-08-25 07:12:08,306.306 INFO    ] 2026-08-25 07:12:08
[2026-08-25 07:12:08,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:12:08,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:12:08,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:12:08,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:12:08,875.875 INFO    ] time= 25/08/2026 07:12:08
[2026-08-25 07:12:08,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:12:08,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:12:09,037.037 INFO    ] No existing commands found in stream
[2026-08-25 07:12:14,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:12:14,070.070 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 07:12:14,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:12:14,552.552 INFO    ] Checking for system updates...
[2026-08-25 07:12:14,591.591 INFO    ] 200
[2026-08-25 07:12:14,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:14,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:14,648.648 INFO    ] No update needed
[2026-08-25 07:12:14,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 07:12:14,683.683 INFO    ] 200
[2026-08-25 07:12:14,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:14,725.725 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:12:14,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:14,781.781 INFO    ] No camera update needed
[2026-08-25 07:12:14,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:12:14,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:12:14,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:12:14,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:12:16,835.835 INFO    ] ================================================
[2026-08-25 07:12:16,851.851 INFO    ] Launching Daemon at Tue Aug 25 07:12:16 IST 2026
[2026-08-25 07:12:16,863.863 INFO    ] ================================================
[2026-08-25 07:12:17,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:12:17
[2026-08-25 07:12:18,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:12:18,318.318 INFO    ] Initializing speech engine...
[2026-08-25 07:12:18,325.325 INFO    ] 2026-08-25 07:12:18
[2026-08-25 07:12:18,586.586 INFO    ] 2026-08-25 07:12:18
[2026-08-25 07:12:18,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:12:18,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:12:18,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:12:19,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:12:19,018.018 INFO    ] time= 25/08/2026 07:12:19
[2026-08-25 07:12:19,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:12:19,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:12:19,253.253 INFO    ] No existing commands found in stream
[2026-08-25 07:12:24,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:12:24,291.291 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 07:12:24,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:12:24,991.991 INFO    ] Checking for system updates...
[2026-08-25 07:12:25,032.032 INFO    ] 200
[2026-08-25 07:12:25,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:25,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:25,105.105 INFO    ] No update needed
[2026-08-25 07:12:25,108.108 INFO    ] Checking for camera pi updates...
[2026-08-25 07:12:25,141.141 INFO    ] 200
[2026-08-25 07:12:25,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:25,193.193 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:12:25,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:25,252.252 INFO    ] No camera update needed
[2026-08-25 07:12:25,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:12:25,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:12:25,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:12:25,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:12:27,305.305 INFO    ] ================================================
[2026-08-25 07:12:27,321.321 INFO    ] Launching Daemon at Tue Aug 25 07:12:27 IST 2026
[2026-08-25 07:12:27,332.332 INFO    ] ================================================
[2026-08-25 07:12:27,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:12:27
[2026-08-25 07:12:28,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:12:28,758.758 INFO    ] Initializing speech engine...
[2026-08-25 07:12:28,777.777 INFO    ] 2026-08-25 07:12:28
[2026-08-25 07:12:29,024.024 INFO    ] 2026-08-25 07:12:29
[2026-08-25 07:12:29,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:12:29,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:12:29,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:12:29,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:12:29,527.527 INFO    ] time= 25/08/2026 07:12:29
[2026-08-25 07:12:29,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:12:29,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:12:29,711.711 INFO    ] No existing commands found in stream
[2026-08-25 07:12:34,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:12:34,745.745 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 07:12:36,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:12:36,709.709 INFO    ] Checking for system updates...
[2026-08-25 07:12:36,745.745 INFO    ] 200
[2026-08-25 07:12:36,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:36,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:36,806.806 INFO    ] No update needed
[2026-08-25 07:12:36,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 07:12:36,846.846 INFO    ] 200
[2026-08-25 07:12:36,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:36,895.895 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:12:36,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:36,948.948 INFO    ] No camera update needed
[2026-08-25 07:12:36,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:12:36,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:12:36,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:12:36,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:12:39,002.002 INFO    ] ================================================
[2026-08-25 07:12:39,018.018 INFO    ] Launching Daemon at Tue Aug 25 07:12:39 IST 2026
[2026-08-25 07:12:39,029.029 INFO    ] ================================================
[2026-08-25 07:12:39,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:12:39
[2026-08-25 07:12:40,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:12:40,450.450 INFO    ] Initializing speech engine...
[2026-08-25 07:12:40,456.456 INFO    ] 2026-08-25 07:12:40
[2026-08-25 07:12:40,699.699 INFO    ] 2026-08-25 07:12:40
[2026-08-25 07:12:40,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:12:40,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:12:40,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:12:41,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:12:41,064.064 INFO    ] time= 25/08/2026 07:12:41
[2026-08-25 07:12:41,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:12:41,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:12:41,258.258 INFO    ] No existing commands found in stream
[2026-08-25 07:12:46,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:12:46,270.270 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 07:12:46,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:12:46,748.748 INFO    ] Checking for system updates...
[2026-08-25 07:12:46,783.783 INFO    ] 200
[2026-08-25 07:12:46,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:46,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:46,846.846 INFO    ] No update needed
[2026-08-25 07:12:46,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 07:12:46,882.882 INFO    ] 200
[2026-08-25 07:12:46,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:46,929.929 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:12:46,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:12:46,977.977 INFO    ] No camera update needed
[2026-08-25 07:12:46,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:12:46,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:12:46,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:12:46,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:12:49,032.032 INFO    ] ================================================
[2026-08-25 07:12:49,047.047 INFO    ] Launching Daemon at Tue Aug 25 07:12:49 IST 2026
[2026-08-25 07:12:49,058.058 INFO    ] ================================================
[2026-08-25 07:12:49,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:12:49
[2026-08-25 07:12:50,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:12:50,479.479 INFO    ] Initializing speech engine...
[2026-08-25 07:12:50,488.488 INFO    ] 2026-08-25 07:12:50
[2026-08-25 07:12:50,740.740 INFO    ] 2026-08-25 07:12:50
[2026-08-25 07:12:50,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:12:50,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:12:50,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:12:51,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:12:51,101.101 INFO    ] time= 25/08/2026 07:12:51
[2026-08-25 07:12:51,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:12:51,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:12:51,282.282 INFO    ] No existing commands found in stream
[2026-08-25 07:12:56,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:12:56,310.310 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 07:12:59,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:12:59,111.111 INFO    ] Checking for system updates...
[2026-08-25 07:12:59,150.150 INFO    ] 200
[2026-08-25 07:12:59,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:59,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:12:59,207.207 INFO    ] No update needed
[2026-08-25 07:12:59,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 07:12:59,246.246 INFO    ] 200
[2026-08-25 07:12:59,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:12:59,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:12:59,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:12:59,339.339 INFO    ] No camera update needed
[2026-08-25 07:12:59,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:12:59,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:12:59,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:12:59,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:13:01,396.396 INFO    ] ================================================
[2026-08-25 07:13:01,411.411 INFO    ] Launching Daemon at Tue Aug 25 07:13:01 IST 2026
[2026-08-25 07:13:01,423.423 INFO    ] ================================================
[2026-08-25 07:13:02,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:13:02
[2026-08-25 07:13:02,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:13:03,061.061 INFO    ] Initializing speech engine...
[2026-08-25 07:13:03,074.074 INFO    ] 2026-08-25 07:13:03
[2026-08-25 07:13:03,368.368 INFO    ] 2026-08-25 07:13:03
[2026-08-25 07:13:03,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:13:03,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:13:03,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:13:03,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:13:03,931.931 INFO    ] time= 25/08/2026 07:13:03
[2026-08-25 07:13:03,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:13:04,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:13:04,101.101 INFO    ] No existing commands found in stream
[2026-08-25 07:13:09,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:13:09,115.115 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 07:13:10,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:13:10,309.309 INFO    ] Checking for system updates...
[2026-08-25 07:13:10,344.344 INFO    ] 200
[2026-08-25 07:13:10,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:10,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:13:10,407.407 INFO    ] No update needed
[2026-08-25 07:13:10,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 07:13:10,443.443 INFO    ] 200
[2026-08-25 07:13:10,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:10,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:13:10,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:13:10,547.547 INFO    ] No camera update needed
[2026-08-25 07:13:10,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:13:10,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:13:10,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:13:10,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:13:12,602.602 INFO    ] ================================================
[2026-08-25 07:13:12,617.617 INFO    ] Launching Daemon at Tue Aug 25 07:13:12 IST 2026
[2026-08-25 07:13:12,628.628 INFO    ] ================================================
[2026-08-25 07:13:13,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:13:13
[2026-08-25 07:13:13,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:13:14,056.056 INFO    ] Initializing speech engine...
[2026-08-25 07:13:14,065.065 INFO    ] 2026-08-25 07:13:14
[2026-08-25 07:13:14,310.310 INFO    ] 2026-08-25 07:13:14
[2026-08-25 07:13:14,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:13:14,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:13:14,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:13:14,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:13:14,779.779 INFO    ] time= 25/08/2026 07:13:14
[2026-08-25 07:13:14,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:13:14,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:13:15,019.019 INFO    ] No existing commands found in stream
[2026-08-25 07:13:20,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:13:20,034.034 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 07:13:20,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:13:20,909.909 INFO    ] Checking for system updates...
[2026-08-25 07:13:20,946.946 INFO    ] 200
[2026-08-25 07:13:20,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:21,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:13:21,010.010 INFO    ] No update needed
[2026-08-25 07:13:21,013.013 INFO    ] Checking for camera pi updates...
[2026-08-25 07:13:21,051.051 INFO    ] 200
[2026-08-25 07:13:21,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:21,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:13:21,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:13:21,154.154 INFO    ] No camera update needed
[2026-08-25 07:13:21,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:13:21,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:13:21,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:13:21,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:13:23,212.212 INFO    ] ================================================
[2026-08-25 07:13:23,228.228 INFO    ] Launching Daemon at Tue Aug 25 07:13:23 IST 2026
[2026-08-25 07:13:23,238.238 INFO    ] ================================================
[2026-08-25 07:13:23,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:13:23
[2026-08-25 07:13:24,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:13:24,653.653 INFO    ] Initializing speech engine...
[2026-08-25 07:13:24,660.660 INFO    ] 2026-08-25 07:13:24
[2026-08-25 07:13:24,903.903 INFO    ] 2026-08-25 07:13:24
[2026-08-25 07:13:24,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:13:25,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:13:25,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:13:25,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:13:25,398.398 INFO    ] time= 25/08/2026 07:13:25
[2026-08-25 07:13:25,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:13:25,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:13:25,580.580 INFO    ] No existing commands found in stream
[2026-08-25 07:13:30,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:13:30,604.604 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 07:13:33,255.255 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:13:33,258.258 INFO    ] Checking for system updates...
[2026-08-25 07:13:33,294.294 INFO    ] 200
[2026-08-25 07:13:33,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:33,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:13:33,358.358 INFO    ] No update needed
[2026-08-25 07:13:33,360.360 INFO    ] Checking for camera pi updates...
[2026-08-25 07:13:33,394.394 INFO    ] 200
[2026-08-25 07:13:33,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:33,443.443 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:13:33,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:13:33,502.502 INFO    ] No camera update needed
[2026-08-25 07:13:33,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:13:33,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:13:33,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:13:33,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:13:35,559.559 INFO    ] ================================================
[2026-08-25 07:13:35,574.574 INFO    ] Launching Daemon at Tue Aug 25 07:13:35 IST 2026
[2026-08-25 07:13:35,584.584 INFO    ] ================================================
[2026-08-25 07:13:36,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:13:36
[2026-08-25 07:13:36,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:13:37,159.159 INFO    ] Initializing speech engine...
[2026-08-25 07:13:37,182.182 INFO    ] 2026-08-25 07:13:37
[2026-08-25 07:13:37,435.435 INFO    ] 2026-08-25 07:13:37
[2026-08-25 07:13:37,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:13:37,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:13:37,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:13:37,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:13:37,806.806 INFO    ] time= 25/08/2026 07:13:37
[2026-08-25 07:13:37,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:13:37,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:13:37,994.994 INFO    ] No existing commands found in stream
[2026-08-25 07:13:43,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:13:43,016.016 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 07:13:47,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:13:47,342.342 INFO    ] Checking for system updates...
[2026-08-25 07:13:47,377.377 INFO    ] 200
[2026-08-25 07:13:47,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:47,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:13:47,442.442 INFO    ] No update needed
[2026-08-25 07:13:47,444.444 INFO    ] Checking for camera pi updates...
[2026-08-25 07:13:47,481.481 INFO    ] 200
[2026-08-25 07:13:47,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:47,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:13:47,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:13:47,578.578 INFO    ] No camera update needed
[2026-08-25 07:13:47,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:13:47,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:13:47,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:13:47,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:13:49,633.633 INFO    ] ================================================
[2026-08-25 07:13:49,649.649 INFO    ] Launching Daemon at Tue Aug 25 07:13:49 IST 2026
[2026-08-25 07:13:49,660.660 INFO    ] ================================================
[2026-08-25 07:13:50,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:13:50
[2026-08-25 07:13:50,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:13:51,079.079 INFO    ] Initializing speech engine...
[2026-08-25 07:13:51,088.088 INFO    ] 2026-08-25 07:13:51
[2026-08-25 07:13:51,334.334 INFO    ] 2026-08-25 07:13:51
[2026-08-25 07:13:51,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:13:51,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:13:51,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:13:51,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:13:51,803.803 INFO    ] time= 25/08/2026 07:13:51
[2026-08-25 07:13:51,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:13:51,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:13:52,040.040 INFO    ] No existing commands found in stream
[2026-08-25 07:13:57,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:13:57,058.058 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 07:13:59,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:13:59,212.212 INFO    ] Checking for system updates...
[2026-08-25 07:13:59,248.248 INFO    ] 200
[2026-08-25 07:13:59,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:59,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:13:59,306.306 INFO    ] No update needed
[2026-08-25 07:13:59,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 07:13:59,342.342 INFO    ] 200
[2026-08-25 07:13:59,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:13:59,390.390 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:13:59,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:13:59,441.441 INFO    ] No camera update needed
[2026-08-25 07:13:59,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:13:59,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:13:59,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:13:59,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:14:01,497.497 INFO    ] ================================================
[2026-08-25 07:14:01,512.512 INFO    ] Launching Daemon at Tue Aug 25 07:14:01 IST 2026
[2026-08-25 07:14:01,523.523 INFO    ] ================================================
[2026-08-25 07:14:02,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:14:02
[2026-08-25 07:14:02,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:14:03,314.314 INFO    ] Initializing speech engine...
[2026-08-25 07:14:03,329.329 INFO    ] 2026-08-25 07:14:03
[2026-08-25 07:14:03,670.670 INFO    ] 2026-08-25 07:14:03
[2026-08-25 07:14:03,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:14:03,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:14:03,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:14:04,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:14:04,185.185 INFO    ] time= 25/08/2026 07:14:04
[2026-08-25 07:14:04,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:14:04,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:14:04,399.399 INFO    ] No existing commands found in stream
[2026-08-25 07:14:09,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:14:09,427.427 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 07:14:12,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:14:12,790.790 INFO    ] Checking for system updates...
[2026-08-25 07:14:12,831.831 INFO    ] 200
[2026-08-25 07:14:12,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:12,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:14:12,896.896 INFO    ] No update needed
[2026-08-25 07:14:12,899.899 INFO    ] Checking for camera pi updates...
[2026-08-25 07:14:12,941.941 INFO    ] 200
[2026-08-25 07:14:12,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:12,990.990 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:14:13,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:14:13,140.140 INFO    ] No camera update needed
[2026-08-25 07:14:13,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:14:13,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:14:13,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:14:13,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:14:15,198.198 INFO    ] ================================================
[2026-08-25 07:14:15,212.212 INFO    ] Launching Daemon at Tue Aug 25 07:14:15 IST 2026
[2026-08-25 07:14:15,223.223 INFO    ] ================================================
[2026-08-25 07:14:15,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:14:15
[2026-08-25 07:14:16,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:14:16,679.679 INFO    ] Initializing speech engine...
[2026-08-25 07:14:16,688.688 INFO    ] 2026-08-25 07:14:16
[2026-08-25 07:14:16,947.947 INFO    ] 2026-08-25 07:14:16
[2026-08-25 07:14:17,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:14:17,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:14:17,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:14:17,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:14:17,426.426 INFO    ] time= 25/08/2026 07:14:17
[2026-08-25 07:14:17,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:14:17,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:14:17,630.630 INFO    ] No existing commands found in stream
[2026-08-25 07:14:22,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:14:22,670.670 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 07:14:25,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:14:25,644.644 INFO    ] Checking for system updates...
[2026-08-25 07:14:25,683.683 INFO    ] 200
[2026-08-25 07:14:25,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:25,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:14:25,745.745 INFO    ] No update needed
[2026-08-25 07:14:25,747.747 INFO    ] Checking for camera pi updates...
[2026-08-25 07:14:25,784.784 INFO    ] 200
[2026-08-25 07:14:25,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:25,827.827 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:14:25,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:14:25,887.887 INFO    ] No camera update needed
[2026-08-25 07:14:25,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:14:25,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:14:25,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:14:25,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:14:27,941.941 INFO    ] ================================================
[2026-08-25 07:14:27,957.957 INFO    ] Launching Daemon at Tue Aug 25 07:14:27 IST 2026
[2026-08-25 07:14:27,967.967 INFO    ] ================================================
[2026-08-25 07:14:28,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:14:28
[2026-08-25 07:14:29,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:14:29,554.554 INFO    ] Initializing speech engine...
[2026-08-25 07:14:29,561.561 INFO    ] 2026-08-25 07:14:29
[2026-08-25 07:14:29,842.842 INFO    ] 2026-08-25 07:14:29
[2026-08-25 07:14:29,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:14:30,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:14:30,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:14:30,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:14:30,289.289 INFO    ] time= 25/08/2026 07:14:30
[2026-08-25 07:14:30,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:14:30,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:14:30,519.519 INFO    ] No existing commands found in stream
[2026-08-25 07:14:35,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:14:35,544.544 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 07:14:38,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:14:38,372.372 INFO    ] Checking for system updates...
[2026-08-25 07:14:38,409.409 INFO    ] 200
[2026-08-25 07:14:38,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:38,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:14:38,473.473 INFO    ] No update needed
[2026-08-25 07:14:38,476.476 INFO    ] Checking for camera pi updates...
[2026-08-25 07:14:38,517.517 INFO    ] 200
[2026-08-25 07:14:38,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:38,561.561 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:14:38,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:14:38,616.616 INFO    ] No camera update needed
[2026-08-25 07:14:38,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:14:38,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:14:38,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:14:38,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:14:40,672.672 INFO    ] ================================================
[2026-08-25 07:14:40,687.687 INFO    ] Launching Daemon at Tue Aug 25 07:14:40 IST 2026
[2026-08-25 07:14:40,698.698 INFO    ] ================================================
[2026-08-25 07:14:41,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:14:41
[2026-08-25 07:14:41,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:14:42,097.097 INFO    ] Initializing speech engine...
[2026-08-25 07:14:42,103.103 INFO    ] 2026-08-25 07:14:42
[2026-08-25 07:14:42,396.396 INFO    ] 2026-08-25 07:14:42
[2026-08-25 07:14:42,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:14:42,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:14:42,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:14:42,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:14:42,785.785 INFO    ] time= 25/08/2026 07:14:42
[2026-08-25 07:14:42,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:14:42,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:14:42,891.891 INFO    ] No existing commands found in stream
[2026-08-25 07:14:47,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:14:47,912.912 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 07:14:48,505.505 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:14:48,508.508 INFO    ] Checking for system updates...
[2026-08-25 07:14:48,547.547 INFO    ] 200
[2026-08-25 07:14:48,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:48,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:14:48,603.603 INFO    ] No update needed
[2026-08-25 07:14:48,606.606 INFO    ] Checking for camera pi updates...
[2026-08-25 07:14:48,639.639 INFO    ] 200
[2026-08-25 07:14:48,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:14:48,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:14:48,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:14:48,744.744 INFO    ] No camera update needed
[2026-08-25 07:14:48,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:14:48,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:14:48,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:14:48,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:14:50,797.797 INFO    ] ================================================
[2026-08-25 07:14:50,813.813 INFO    ] Launching Daemon at Tue Aug 25 07:14:50 IST 2026
[2026-08-25 07:14:50,823.823 INFO    ] ================================================
[2026-08-25 07:14:51,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:14:51
[2026-08-25 07:14:52,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:14:52,379.379 INFO    ] Initializing speech engine...
[2026-08-25 07:14:52,388.388 INFO    ] 2026-08-25 07:14:52
[2026-08-25 07:14:52,634.634 INFO    ] 2026-08-25 07:14:52
[2026-08-25 07:14:52,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:14:52,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:14:52,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:14:53,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:14:53,098.098 INFO    ] time= 25/08/2026 07:14:53
[2026-08-25 07:14:53,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:14:53,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:14:53,325.325 INFO    ] No existing commands found in stream
[2026-08-25 07:14:58,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:14:58,352.352 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 07:15:00,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:15:00,368.368 INFO    ] Checking for system updates...
[2026-08-25 07:15:00,407.407 INFO    ] 200
[2026-08-25 07:15:00,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:00,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:00,469.469 INFO    ] No update needed
[2026-08-25 07:15:00,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 07:15:00,508.508 INFO    ] 200
[2026-08-25 07:15:00,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:00,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:15:00,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:00,612.612 INFO    ] No camera update needed
[2026-08-25 07:15:00,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:15:00,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:15:00,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:15:00,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:15:02,678.678 INFO    ] ================================================
[2026-08-25 07:15:02,729.729 INFO    ] Launching Daemon at Tue Aug 25 07:15:02 IST 2026
[2026-08-25 07:15:02,747.747 INFO    ] ================================================
[2026-08-25 07:15:03,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:15:03
[2026-08-25 07:15:04,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:15:04,427.427 INFO    ] Initializing speech engine...
[2026-08-25 07:15:04,447.447 INFO    ] 2026-08-25 07:15:04
[2026-08-25 07:15:04,709.709 INFO    ] 2026-08-25 07:15:04
[2026-08-25 07:15:04,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:15:04,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:15:04,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:15:05,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:15:05,109.109 INFO    ] time= 25/08/2026 07:15:05
[2026-08-25 07:15:05,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:15:05,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:15:05,189.189 INFO    ] No existing commands found in stream
[2026-08-25 07:15:10,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:15:10,205.205 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 07:15:12,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:15:12,648.648 INFO    ] Checking for system updates...
[2026-08-25 07:15:12,685.685 INFO    ] 200
[2026-08-25 07:15:12,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:12,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:12,742.742 INFO    ] No update needed
[2026-08-25 07:15:12,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 07:15:12,781.781 INFO    ] 200
[2026-08-25 07:15:12,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:12,823.823 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:15:12,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:12,873.873 INFO    ] No camera update needed
[2026-08-25 07:15:12,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:15:12,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:15:12,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:15:12,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:15:14,927.927 INFO    ] ================================================
[2026-08-25 07:15:14,943.943 INFO    ] Launching Daemon at Tue Aug 25 07:15:14 IST 2026
[2026-08-25 07:15:14,955.955 INFO    ] ================================================
[2026-08-25 07:15:15,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:15:15
[2026-08-25 07:15:16,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:15:16,357.357 INFO    ] Initializing speech engine...
[2026-08-25 07:15:16,365.365 INFO    ] 2026-08-25 07:15:16
[2026-08-25 07:15:16,651.651 INFO    ] 2026-08-25 07:15:16
[2026-08-25 07:15:16,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:15:16,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:15:16,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:15:17,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:15:17,052.052 INFO    ] time= 25/08/2026 07:15:17
[2026-08-25 07:15:17,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:15:17,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:15:17,238.238 INFO    ] No existing commands found in stream
[2026-08-25 07:15:22,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:15:22,260.260 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 07:15:26,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:15:26,369.369 INFO    ] Checking for system updates...
[2026-08-25 07:15:26,406.406 INFO    ] 200
[2026-08-25 07:15:26,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:26,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:15:26,467.467 INFO    ] No update needed
[2026-08-25 07:15:26,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 07:15:26,504.504 INFO    ] 200
[2026-08-25 07:15:26,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:26,550.550 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:15:26,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:15:26,605.605 INFO    ] No camera update needed
[2026-08-25 07:15:26,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:15:26,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:15:26,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:15:26,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:15:28,660.660 INFO    ] ================================================
[2026-08-25 07:15:28,675.675 INFO    ] Launching Daemon at Tue Aug 25 07:15:28 IST 2026
[2026-08-25 07:15:28,687.687 INFO    ] ================================================
[2026-08-25 07:15:29,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:15:29
[2026-08-25 07:15:29,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:15:30,128.128 INFO    ] Initializing speech engine...
[2026-08-25 07:15:30,153.153 INFO    ] 2026-08-25 07:15:30
[2026-08-25 07:15:30,420.420 INFO    ] 2026-08-25 07:15:30
[2026-08-25 07:15:30,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:15:30,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:15:30,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:15:30,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:15:30,823.823 INFO    ] time= 25/08/2026 07:15:30
[2026-08-25 07:15:30,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:15:30,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:15:30,983.983 INFO    ] No existing commands found in stream
[2026-08-25 07:15:36,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:15:36,006.006 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 07:15:39,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:15:39,338.338 INFO    ] Checking for system updates...
[2026-08-25 07:15:39,374.374 INFO    ] 200
[2026-08-25 07:15:39,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:39,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:39,432.432 INFO    ] No update needed
[2026-08-25 07:15:39,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 07:15:39,468.468 INFO    ] 200
[2026-08-25 07:15:39,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:39,514.514 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:15:39,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:39,567.567 INFO    ] No camera update needed
[2026-08-25 07:15:39,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:15:39,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:15:39,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:15:39,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:15:41,626.626 INFO    ] ================================================
[2026-08-25 07:15:41,643.643 INFO    ] Launching Daemon at Tue Aug 25 07:15:41 IST 2026
[2026-08-25 07:15:41,654.654 INFO    ] ================================================
[2026-08-25 07:15:42,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:15:42
[2026-08-25 07:15:42,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:15:43,204.204 INFO    ] Initializing speech engine...
[2026-08-25 07:15:43,224.224 INFO    ] 2026-08-25 07:15:43
[2026-08-25 07:15:43,481.481 INFO    ] 2026-08-25 07:15:43
[2026-08-25 07:15:43,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:15:43,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:15:43,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:15:43,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:15:43,984.984 INFO    ] time= 25/08/2026 07:15:43
[2026-08-25 07:15:44,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:15:44,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:15:44,184.184 INFO    ] No existing commands found in stream
[2026-08-25 07:15:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:15:49,206.206 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 07:15:50,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:15:50,888.888 INFO    ] Checking for system updates...
[2026-08-25 07:15:50,931.931 INFO    ] 200
[2026-08-25 07:15:50,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:50,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:50,994.994 INFO    ] No update needed
[2026-08-25 07:15:50,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 07:15:51,030.030 INFO    ] 200
[2026-08-25 07:15:51,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:15:51,073.073 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:15:51,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:15:51,135.135 INFO    ] No camera update needed
[2026-08-25 07:15:51,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:15:51,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:15:51,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:15:51,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:15:53,193.193 INFO    ] ================================================
[2026-08-25 07:15:53,208.208 INFO    ] Launching Daemon at Tue Aug 25 07:15:53 IST 2026
[2026-08-25 07:15:53,218.218 INFO    ] ================================================
[2026-08-25 07:15:53,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:15:53
[2026-08-25 07:15:54,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:15:54,714.714 INFO    ] Initializing speech engine...
[2026-08-25 07:15:54,722.722 INFO    ] 2026-08-25 07:15:54
[2026-08-25 07:15:54,972.972 INFO    ] 2026-08-25 07:15:54
[2026-08-25 07:15:55,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:15:55,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:15:55,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:15:55,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:15:55,348.348 INFO    ] time= 25/08/2026 07:15:55
[2026-08-25 07:15:55,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:15:55,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:15:55,515.515 INFO    ] No existing commands found in stream
[2026-08-25 07:16:00,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:16:00,553.553 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 07:16:02,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:16:02,064.064 INFO    ] Checking for system updates...
[2026-08-25 07:16:02,119.119 INFO    ] 200
[2026-08-25 07:16:02,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:02,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:16:02,187.187 INFO    ] No update needed
[2026-08-25 07:16:02,190.190 INFO    ] Checking for camera pi updates...
[2026-08-25 07:16:02,233.233 INFO    ] 200
[2026-08-25 07:16:02,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:02,282.282 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:16:02,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:16:02,338.338 INFO    ] No camera update needed
[2026-08-25 07:16:02,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:16:02,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:16:02,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:16:02,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:16:04,398.398 INFO    ] ================================================
[2026-08-25 07:16:04,413.413 INFO    ] Launching Daemon at Tue Aug 25 07:16:04 IST 2026
[2026-08-25 07:16:04,424.424 INFO    ] ================================================
[2026-08-25 07:16:04,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:16:04
[2026-08-25 07:16:05,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:16:05,821.821 INFO    ] Initializing speech engine...
[2026-08-25 07:16:05,830.830 INFO    ] 2026-08-25 07:16:05
[2026-08-25 07:16:06,117.117 INFO    ] 2026-08-25 07:16:06
[2026-08-25 07:16:06,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:16:06,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:16:06,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:16:06,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:16:06,502.502 INFO    ] time= 25/08/2026 07:16:06
[2026-08-25 07:16:06,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:16:06,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:16:06,694.694 INFO    ] No existing commands found in stream
[2026-08-25 07:16:11,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:16:11,711.711 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 07:16:13,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:16:13,264.264 INFO    ] Checking for system updates...
[2026-08-25 07:16:13,303.303 INFO    ] 200
[2026-08-25 07:16:13,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:13,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:16:13,360.360 INFO    ] No update needed
[2026-08-25 07:16:13,362.362 INFO    ] Checking for camera pi updates...
[2026-08-25 07:16:13,395.395 INFO    ] 200
[2026-08-25 07:16:13,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:13,443.443 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:16:13,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:16:13,500.500 INFO    ] No camera update needed
[2026-08-25 07:16:13,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:16:13,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:16:13,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:16:13,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:16:15,559.559 INFO    ] ================================================
[2026-08-25 07:16:15,573.573 INFO    ] Launching Daemon at Tue Aug 25 07:16:15 IST 2026
[2026-08-25 07:16:15,584.584 INFO    ] ================================================
[2026-08-25 07:16:16,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:16:16
[2026-08-25 07:16:16,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:16:17,007.007 INFO    ] Initializing speech engine...
[2026-08-25 07:16:17,015.015 INFO    ] 2026-08-25 07:16:17
[2026-08-25 07:16:17,261.261 INFO    ] 2026-08-25 07:16:17
[2026-08-25 07:16:17,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:16:17,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:16:17,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:16:17,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:16:17,678.678 INFO    ] time= 25/08/2026 07:16:17
[2026-08-25 07:16:17,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:16:17,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:16:17,866.866 INFO    ] No existing commands found in stream
[2026-08-25 07:16:22,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:16:22,881.881 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 07:16:25,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:16:25,230.230 INFO    ] Checking for system updates...
[2026-08-25 07:16:25,265.265 INFO    ] 200
[2026-08-25 07:16:25,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:25,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:16:25,322.322 INFO    ] No update needed
[2026-08-25 07:16:25,324.324 INFO    ] Checking for camera pi updates...
[2026-08-25 07:16:25,361.361 INFO    ] 200
[2026-08-25 07:16:25,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:25,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:16:25,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:16:25,550.550 INFO    ] No camera update needed
[2026-08-25 07:16:25,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:16:25,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:16:25,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:16:25,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:16:27,605.605 INFO    ] ================================================
[2026-08-25 07:16:27,620.620 INFO    ] Launching Daemon at Tue Aug 25 07:16:27 IST 2026
[2026-08-25 07:16:27,631.631 INFO    ] ================================================
[2026-08-25 07:16:28,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:16:28
[2026-08-25 07:16:28,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:16:29,211.211 INFO    ] Initializing speech engine...
[2026-08-25 07:16:29,219.219 INFO    ] 2026-08-25 07:16:29
[2026-08-25 07:16:29,487.487 INFO    ] 2026-08-25 07:16:29
[2026-08-25 07:16:29,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:16:29,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:16:29,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:16:29,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:16:29,966.966 INFO    ] time= 25/08/2026 07:16:29
[2026-08-25 07:16:30,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:16:30,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:16:30,208.208 INFO    ] No existing commands found in stream
[2026-08-25 07:16:35,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:16:35,229.229 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 07:16:39,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:16:39,546.546 INFO    ] Checking for system updates...
[2026-08-25 07:16:39,587.587 INFO    ] 200
[2026-08-25 07:16:39,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:39,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:16:39,650.650 INFO    ] No update needed
[2026-08-25 07:16:39,653.653 INFO    ] Checking for camera pi updates...
[2026-08-25 07:16:39,686.686 INFO    ] 200
[2026-08-25 07:16:39,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:39,732.732 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:16:39,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:16:39,779.779 INFO    ] No camera update needed
[2026-08-25 07:16:39,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:16:39,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:16:39,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:16:39,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:16:41,832.832 INFO    ] ================================================
[2026-08-25 07:16:41,847.847 INFO    ] Launching Daemon at Tue Aug 25 07:16:41 IST 2026
[2026-08-25 07:16:41,858.858 INFO    ] ================================================
[2026-08-25 07:16:42,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:16:42
[2026-08-25 07:16:43,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:16:43,274.274 INFO    ] Initializing speech engine...
[2026-08-25 07:16:43,283.283 INFO    ] 2026-08-25 07:16:43
[2026-08-25 07:16:43,530.530 INFO    ] 2026-08-25 07:16:43
[2026-08-25 07:16:43,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:16:43,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:16:43,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:16:43,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:16:43,906.906 INFO    ] time= 25/08/2026 07:16:43
[2026-08-25 07:16:43,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:16:43,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:16:44,087.087 INFO    ] No existing commands found in stream
[2026-08-25 07:16:49,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:16:49,115.115 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 07:16:50,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:16:50,668.668 INFO    ] Checking for system updates...
[2026-08-25 07:16:50,703.703 INFO    ] 200
[2026-08-25 07:16:50,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:50,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:16:50,759.759 INFO    ] No update needed
[2026-08-25 07:16:50,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 07:16:50,797.797 INFO    ] 200
[2026-08-25 07:16:50,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:16:50,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:16:50,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:16:50,886.886 INFO    ] No camera update needed
[2026-08-25 07:16:50,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:16:50,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:16:50,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:16:50,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:16:52,940.940 INFO    ] ================================================
[2026-08-25 07:16:52,956.956 INFO    ] Launching Daemon at Tue Aug 25 07:16:52 IST 2026
[2026-08-25 07:16:52,967.967 INFO    ] ================================================
[2026-08-25 07:16:53,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:16:53
[2026-08-25 07:16:54,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:16:54,408.408 INFO    ] Initializing speech engine...
[2026-08-25 07:16:54,416.416 INFO    ] 2026-08-25 07:16:54
[2026-08-25 07:16:54,675.675 INFO    ] 2026-08-25 07:16:54
[2026-08-25 07:16:54,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:16:54,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:16:54,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:16:55,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:16:55,113.113 INFO    ] time= 25/08/2026 07:16:55
[2026-08-25 07:16:55,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:16:55,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:16:55,342.342 INFO    ] No existing commands found in stream
[2026-08-25 07:17:00,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:17:00,370.370 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 07:17:03,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:17:03,707.707 INFO    ] Checking for system updates...
[2026-08-25 07:17:03,745.745 INFO    ] 200
[2026-08-25 07:17:03,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:03,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:03,803.803 INFO    ] No update needed
[2026-08-25 07:17:03,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 07:17:03,839.839 INFO    ] 200
[2026-08-25 07:17:03,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:03,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:17:03,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:03,949.949 INFO    ] No camera update needed
[2026-08-25 07:17:03,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:17:03,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:17:03,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:17:03,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:17:06,009.009 INFO    ] ================================================
[2026-08-25 07:17:06,025.025 INFO    ] Launching Daemon at Tue Aug 25 07:17:06 IST 2026
[2026-08-25 07:17:06,036.036 INFO    ] ================================================
[2026-08-25 07:17:06,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:17:06
[2026-08-25 07:17:07,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:17:07,537.537 INFO    ] Initializing speech engine...
[2026-08-25 07:17:07,546.546 INFO    ] 2026-08-25 07:17:07
[2026-08-25 07:17:07,836.836 INFO    ] 2026-08-25 07:17:07
[2026-08-25 07:17:07,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:17:08,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:17:08,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:17:08,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:17:08,244.244 INFO    ] time= 25/08/2026 07:17:08
[2026-08-25 07:17:08,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:17:08,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:17:08,406.406 INFO    ] No existing commands found in stream
[2026-08-25 07:17:13,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:17:13,433.433 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 07:17:15,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:17:15,730.730 INFO    ] Checking for system updates...
[2026-08-25 07:17:15,766.766 INFO    ] 200
[2026-08-25 07:17:15,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:15,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:15,828.828 INFO    ] No update needed
[2026-08-25 07:17:15,830.830 INFO    ] Checking for camera pi updates...
[2026-08-25 07:17:15,863.863 INFO    ] 200
[2026-08-25 07:17:15,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:15,905.905 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:17:15,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:15,953.953 INFO    ] No camera update needed
[2026-08-25 07:17:15,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:17:15,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:17:15,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:17:15,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:17:18,006.006 INFO    ] ================================================
[2026-08-25 07:17:18,021.021 INFO    ] Launching Daemon at Tue Aug 25 07:17:18 IST 2026
[2026-08-25 07:17:18,031.031 INFO    ] ================================================
[2026-08-25 07:17:18,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:17:18
[2026-08-25 07:17:19,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:17:19,460.460 INFO    ] Initializing speech engine...
[2026-08-25 07:17:19,469.469 INFO    ] 2026-08-25 07:17:19
[2026-08-25 07:17:19,729.729 INFO    ] 2026-08-25 07:17:19
[2026-08-25 07:17:19,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:17:20,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:17:20,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:17:20,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:17:20,186.186 INFO    ] time= 25/08/2026 07:17:20
[2026-08-25 07:17:20,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:17:20,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:17:20,392.392 INFO    ] No existing commands found in stream
[2026-08-25 07:17:25,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:17:25,417.417 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 07:17:29,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:17:29,188.188 INFO    ] Checking for system updates...
[2026-08-25 07:17:29,223.223 INFO    ] 200
[2026-08-25 07:17:29,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:29,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:29,280.280 INFO    ] No update needed
[2026-08-25 07:17:29,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 07:17:29,315.315 INFO    ] 200
[2026-08-25 07:17:29,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:29,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:17:29,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:29,410.410 INFO    ] No camera update needed
[2026-08-25 07:17:29,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:17:29,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:17:29,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:17:29,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:17:31,467.467 INFO    ] ================================================
[2026-08-25 07:17:31,483.483 INFO    ] Launching Daemon at Tue Aug 25 07:17:31 IST 2026
[2026-08-25 07:17:31,495.495 INFO    ] ================================================
[2026-08-25 07:17:32,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:17:32
[2026-08-25 07:17:32,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:17:33,042.042 INFO    ] Initializing speech engine...
[2026-08-25 07:17:33,051.051 INFO    ] 2026-08-25 07:17:33
[2026-08-25 07:17:33,308.308 INFO    ] 2026-08-25 07:17:33
[2026-08-25 07:17:33,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:17:33,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:17:33,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:17:33,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:17:33,714.714 INFO    ] time= 25/08/2026 07:17:33
[2026-08-25 07:17:33,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:17:33,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:17:33,874.874 INFO    ] No existing commands found in stream
[2026-08-25 07:17:38,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:17:38,907.907 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 07:17:42,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:17:42,350.350 INFO    ] Checking for system updates...
[2026-08-25 07:17:42,385.385 INFO    ] 200
[2026-08-25 07:17:42,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:42,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:42,442.442 INFO    ] No update needed
[2026-08-25 07:17:42,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 07:17:42,478.478 INFO    ] 200
[2026-08-25 07:17:42,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:42,524.524 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:17:42,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:42,581.581 INFO    ] No camera update needed
[2026-08-25 07:17:42,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:17:42,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:17:42,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:17:42,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:17:44,636.636 INFO    ] ================================================
[2026-08-25 07:17:44,652.652 INFO    ] Launching Daemon at Tue Aug 25 07:17:44 IST 2026
[2026-08-25 07:17:44,662.662 INFO    ] ================================================
[2026-08-25 07:17:45,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:17:45
[2026-08-25 07:17:45,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:17:46,240.240 INFO    ] Initializing speech engine...
[2026-08-25 07:17:46,253.253 INFO    ] 2026-08-25 07:17:46
[2026-08-25 07:17:46,540.540 INFO    ] 2026-08-25 07:17:46
[2026-08-25 07:17:46,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:17:46,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:17:46,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:17:46,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:17:47,026.026 INFO    ] time= 25/08/2026 07:17:46
[2026-08-25 07:17:47,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:17:47,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:17:47,234.234 INFO    ] No existing commands found in stream
[2026-08-25 07:17:52,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:17:52,259.259 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 07:17:54,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:17:54,687.687 INFO    ] Checking for system updates...
[2026-08-25 07:17:54,721.721 INFO    ] 200
[2026-08-25 07:17:54,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:54,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:54,778.778 INFO    ] No update needed
[2026-08-25 07:17:54,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 07:17:54,818.818 INFO    ] 200
[2026-08-25 07:17:54,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:17:54,860.860 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:17:54,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:17:54,910.910 INFO    ] No camera update needed
[2026-08-25 07:17:54,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:17:54,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:17:54,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:17:54,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:17:56,964.964 INFO    ] ================================================
[2026-08-25 07:17:56,979.979 INFO    ] Launching Daemon at Tue Aug 25 07:17:56 IST 2026
[2026-08-25 07:17:56,991.991 INFO    ] ================================================
[2026-08-25 07:17:57,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:17:57
[2026-08-25 07:17:58,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:17:58,389.389 INFO    ] Initializing speech engine...
[2026-08-25 07:17:58,403.403 INFO    ] 2026-08-25 07:17:58
[2026-08-25 07:17:58,683.683 INFO    ] 2026-08-25 07:17:58
[2026-08-25 07:17:58,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:17:58,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:17:58,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:17:59,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:17:59,062.062 INFO    ] time= 25/08/2026 07:17:59
[2026-08-25 07:17:59,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:17:59,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:17:59,172.172 INFO    ] No existing commands found in stream
[2026-08-25 07:18:04,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:18:04,188.188 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 07:18:06,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:18:06,148.148 INFO    ] Checking for system updates...
[2026-08-25 07:18:06,190.190 INFO    ] 200
[2026-08-25 07:18:06,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:06,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:18:06,247.247 INFO    ] No update needed
[2026-08-25 07:18:06,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 07:18:06,283.283 INFO    ] 200
[2026-08-25 07:18:06,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:06,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:18:06,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:18:06,409.409 INFO    ] No camera update needed
[2026-08-25 07:18:06,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:18:06,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:18:06,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:18:06,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:18:08,463.463 INFO    ] ================================================
[2026-08-25 07:18:08,479.479 INFO    ] Launching Daemon at Tue Aug 25 07:18:08 IST 2026
[2026-08-25 07:18:08,491.491 INFO    ] ================================================
[2026-08-25 07:18:09,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:18:09
[2026-08-25 07:18:09,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:18:10,068.068 INFO    ] Initializing speech engine...
[2026-08-25 07:18:10,076.076 INFO    ] 2026-08-25 07:18:10
[2026-08-25 07:18:10,344.344 INFO    ] 2026-08-25 07:18:10
[2026-08-25 07:18:10,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:18:10,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:18:10,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:18:10,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:18:10,698.698 INFO    ] time= 25/08/2026 07:18:10
[2026-08-25 07:18:10,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:18:10,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:18:10,819.819 INFO    ] No existing commands found in stream
[2026-08-25 07:18:15,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:18:15,832.832 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 07:18:19,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:18:19,369.369 INFO    ] Checking for system updates...
[2026-08-25 07:18:19,406.406 INFO    ] 200
[2026-08-25 07:18:19,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:19,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:18:19,470.470 INFO    ] No update needed
[2026-08-25 07:18:19,473.473 INFO    ] Checking for camera pi updates...
[2026-08-25 07:18:19,508.508 INFO    ] 200
[2026-08-25 07:18:19,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:19,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:18:19,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:18:19,610.610 INFO    ] No camera update needed
[2026-08-25 07:18:19,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:18:19,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:18:19,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:18:19,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:18:21,664.664 INFO    ] ================================================
[2026-08-25 07:18:21,680.680 INFO    ] Launching Daemon at Tue Aug 25 07:18:21 IST 2026
[2026-08-25 07:18:21,691.691 INFO    ] ================================================
[2026-08-25 07:18:22,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:18:22
[2026-08-25 07:18:22,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:18:23,100.100 INFO    ] Initializing speech engine...
[2026-08-25 07:18:23,124.124 INFO    ] 2026-08-25 07:18:23
[2026-08-25 07:18:23,389.389 INFO    ] 2026-08-25 07:18:23
[2026-08-25 07:18:23,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:18:23,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:18:23,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:18:23,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:18:23,787.787 INFO    ] time= 25/08/2026 07:18:23
[2026-08-25 07:18:23,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:18:23,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:18:23,974.974 INFO    ] No existing commands found in stream
[2026-08-25 07:18:29,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:18:29,007.007 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 07:18:33,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:18:33,200.200 INFO    ] Checking for system updates...
[2026-08-25 07:18:33,236.236 INFO    ] 200
[2026-08-25 07:18:33,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:33,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:18:33,297.297 INFO    ] No update needed
[2026-08-25 07:18:33,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 07:18:33,335.335 INFO    ] 200
[2026-08-25 07:18:33,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:33,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:18:33,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:18:33,423.423 INFO    ] No camera update needed
[2026-08-25 07:18:33,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:18:33,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:18:33,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:18:33,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:18:35,478.478 INFO    ] ================================================
[2026-08-25 07:18:35,493.493 INFO    ] Launching Daemon at Tue Aug 25 07:18:35 IST 2026
[2026-08-25 07:18:35,504.504 INFO    ] ================================================
[2026-08-25 07:18:36,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:18:36
[2026-08-25 07:18:36,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:18:36,899.899 INFO    ] Initializing speech engine...
[2026-08-25 07:18:36,907.907 INFO    ] 2026-08-25 07:18:36
[2026-08-25 07:18:37,184.184 INFO    ] 2026-08-25 07:18:37
[2026-08-25 07:18:37,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:18:37,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:18:37,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:18:37,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:18:37,562.562 INFO    ] time= 25/08/2026 07:18:37
[2026-08-25 07:18:37,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:18:37,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:18:37,746.746 INFO    ] No existing commands found in stream
[2026-08-25 07:18:42,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:18:42,774.774 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 07:18:45,245.245 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:18:45,247.247 INFO    ] Checking for system updates...
[2026-08-25 07:18:45,282.282 INFO    ] 200
[2026-08-25 07:18:45,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:45,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:18:45,344.344 INFO    ] No update needed
[2026-08-25 07:18:45,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 07:18:45,380.380 INFO    ] 200
[2026-08-25 07:18:45,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:45,427.427 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:18:45,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:18:45,475.475 INFO    ] No camera update needed
[2026-08-25 07:18:45,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:18:45,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:18:45,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:18:45,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:18:47,530.530 INFO    ] ================================================
[2026-08-25 07:18:47,546.546 INFO    ] Launching Daemon at Tue Aug 25 07:18:47 IST 2026
[2026-08-25 07:18:47,556.556 INFO    ] ================================================
[2026-08-25 07:18:48,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:18:48
[2026-08-25 07:18:48,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:18:48,958.958 INFO    ] Initializing speech engine...
[2026-08-25 07:18:48,967.967 INFO    ] 2026-08-25 07:18:48
[2026-08-25 07:18:49,252.252 INFO    ] 2026-08-25 07:18:49
[2026-08-25 07:18:49,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:18:49,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:18:49,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:18:49,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:18:49,618.618 INFO    ] time= 25/08/2026 07:18:49
[2026-08-25 07:18:49,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:18:49,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:18:49,739.739 INFO    ] No existing commands found in stream
[2026-08-25 07:18:54,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:18:54,753.753 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 07:18:57,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:18:57,816.816 INFO    ] Checking for system updates...
[2026-08-25 07:18:57,855.855 INFO    ] 200
[2026-08-25 07:18:57,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:57,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:18:57,917.917 INFO    ] No update needed
[2026-08-25 07:18:57,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 07:18:57,956.956 INFO    ] 200
[2026-08-25 07:18:57,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:18:58,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:18:58,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:18:58,050.050 INFO    ] No camera update needed
[2026-08-25 07:18:58,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:18:58,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:18:58,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:18:58,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:19:00,106.106 INFO    ] ================================================
[2026-08-25 07:19:00,121.121 INFO    ] Launching Daemon at Tue Aug 25 07:19:00 IST 2026
[2026-08-25 07:19:00,133.133 INFO    ] ================================================
[2026-08-25 07:19:00,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:19:00
[2026-08-25 07:19:01,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:19:01,585.585 INFO    ] Initializing speech engine...
[2026-08-25 07:19:01,595.595 INFO    ] 2026-08-25 07:19:01
[2026-08-25 07:19:01,856.856 INFO    ] 2026-08-25 07:19:01
[2026-08-25 07:19:01,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:19:02,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:19:02,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:19:02,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:19:02,194.194 INFO    ] time= 25/08/2026 07:19:02
[2026-08-25 07:19:02,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:19:02,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:19:02,269.269 INFO    ] No existing commands found in stream
[2026-08-25 07:19:07,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:19:07,282.282 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 07:19:10,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:19:10,388.388 INFO    ] Checking for system updates...
[2026-08-25 07:19:10,422.422 INFO    ] 200
[2026-08-25 07:19:10,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:10,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:19:10,485.485 INFO    ] No update needed
[2026-08-25 07:19:10,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 07:19:10,520.520 INFO    ] 200
[2026-08-25 07:19:10,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:10,563.563 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:19:10,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:19:10,618.618 INFO    ] No camera update needed
[2026-08-25 07:19:10,620.620 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:19:10,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:19:10,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:19:10,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:19:12,673.673 INFO    ] ================================================
[2026-08-25 07:19:12,689.689 INFO    ] Launching Daemon at Tue Aug 25 07:19:12 IST 2026
[2026-08-25 07:19:12,700.700 INFO    ] ================================================
[2026-08-25 07:19:13,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:19:13
[2026-08-25 07:19:13,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:19:14,121.121 INFO    ] Initializing speech engine...
[2026-08-25 07:19:14,132.132 INFO    ] 2026-08-25 07:19:14
[2026-08-25 07:19:14,385.385 INFO    ] 2026-08-25 07:19:14
[2026-08-25 07:19:14,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:19:14,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:19:14,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:19:14,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:19:14,822.822 INFO    ] time= 25/08/2026 07:19:14
[2026-08-25 07:19:14,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:19:14,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:19:14,969.969 INFO    ] No existing commands found in stream
[2026-08-25 07:19:19,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:19:19,992.992 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 07:19:20,926.926 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:19:20,928.928 INFO    ] Checking for system updates...
[2026-08-25 07:19:20,968.968 INFO    ] 200
[2026-08-25 07:19:20,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:21,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:19:21,037.037 INFO    ] No update needed
[2026-08-25 07:19:21,040.040 INFO    ] Checking for camera pi updates...
[2026-08-25 07:19:21,078.078 INFO    ] 200
[2026-08-25 07:19:21,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:21,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:19:21,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:19:21,191.191 INFO    ] No camera update needed
[2026-08-25 07:19:21,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:19:21,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:19:21,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:19:21,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:19:23,247.247 INFO    ] ================================================
[2026-08-25 07:19:23,263.263 INFO    ] Launching Daemon at Tue Aug 25 07:19:23 IST 2026
[2026-08-25 07:19:23,274.274 INFO    ] ================================================
[2026-08-25 07:19:23,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:19:23
[2026-08-25 07:19:24,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:19:24,869.869 INFO    ] Initializing speech engine...
[2026-08-25 07:19:24,882.882 INFO    ] 2026-08-25 07:19:24
[2026-08-25 07:19:25,150.150 INFO    ] 2026-08-25 07:19:25
[2026-08-25 07:19:25,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:19:25,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:19:25,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:19:25,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:19:25,628.628 INFO    ] time= 25/08/2026 07:19:25
[2026-08-25 07:19:25,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:19:25,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:19:25,866.866 INFO    ] No existing commands found in stream
[2026-08-25 07:19:30,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:19:30,886.886 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 07:19:31,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:19:31,471.471 INFO    ] Checking for system updates...
[2026-08-25 07:19:31,508.508 INFO    ] 200
[2026-08-25 07:19:31,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:31,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:19:31,565.565 INFO    ] No update needed
[2026-08-25 07:19:31,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 07:19:31,606.606 INFO    ] 200
[2026-08-25 07:19:31,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:31,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:19:31,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:19:31,709.709 INFO    ] No camera update needed
[2026-08-25 07:19:31,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:19:31,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:19:31,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:19:31,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:19:33,765.765 INFO    ] ================================================
[2026-08-25 07:19:33,780.780 INFO    ] Launching Daemon at Tue Aug 25 07:19:33 IST 2026
[2026-08-25 07:19:33,791.791 INFO    ] ================================================
[2026-08-25 07:19:34,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:19:34
[2026-08-25 07:19:34,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:19:35,229.229 INFO    ] Initializing speech engine...
[2026-08-25 07:19:35,244.244 INFO    ] 2026-08-25 07:19:35
[2026-08-25 07:19:35,541.541 INFO    ] 2026-08-25 07:19:35
[2026-08-25 07:19:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:19:35,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:19:35,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:19:35,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:19:35,930.930 INFO    ] time= 25/08/2026 07:19:35
[2026-08-25 07:19:35,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:19:36,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:19:36,133.133 INFO    ] No existing commands found in stream
[2026-08-25 07:19:41,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:19:41,147.147 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 07:19:44,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:19:44,808.808 INFO    ] Checking for system updates...
[2026-08-25 07:19:44,845.845 INFO    ] 200
[2026-08-25 07:19:44,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:44,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:19:44,908.908 INFO    ] No update needed
[2026-08-25 07:19:44,910.910 INFO    ] Checking for camera pi updates...
[2026-08-25 07:19:44,947.947 INFO    ] 200
[2026-08-25 07:19:44,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:44,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:19:45,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:19:45,051.051 INFO    ] No camera update needed
[2026-08-25 07:19:45,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:19:45,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:19:45,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:19:45,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:19:47,107.107 INFO    ] ================================================
[2026-08-25 07:19:47,122.122 INFO    ] Launching Daemon at Tue Aug 25 07:19:47 IST 2026
[2026-08-25 07:19:47,132.132 INFO    ] ================================================
[2026-08-25 07:19:47,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:19:47
[2026-08-25 07:19:48,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:19:48,537.537 INFO    ] Initializing speech engine...
[2026-08-25 07:19:48,562.562 INFO    ] 2026-08-25 07:19:48
[2026-08-25 07:19:48,833.833 INFO    ] 2026-08-25 07:19:48
[2026-08-25 07:19:48,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:19:49,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:19:49,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:19:49,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:19:49,244.244 INFO    ] time= 25/08/2026 07:19:49
[2026-08-25 07:19:49,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:19:49,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:19:49,330.330 INFO    ] No existing commands found in stream
[2026-08-25 07:19:54,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:19:54,363.363 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 07:19:58,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:19:58,497.497 INFO    ] Checking for system updates...
[2026-08-25 07:19:58,536.536 INFO    ] 200
[2026-08-25 07:19:58,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:58,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:19:58,592.592 INFO    ] No update needed
[2026-08-25 07:19:58,594.594 INFO    ] Checking for camera pi updates...
[2026-08-25 07:19:58,628.628 INFO    ] 200
[2026-08-25 07:19:58,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:19:58,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:19:58,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:19:58,717.717 INFO    ] No camera update needed
[2026-08-25 07:19:58,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:19:58,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:19:58,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:19:58,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:20:00,774.774 INFO    ] ================================================
[2026-08-25 07:20:00,790.790 INFO    ] Launching Daemon at Tue Aug 25 07:20:00 IST 2026
[2026-08-25 07:20:00,800.800 INFO    ] ================================================
[2026-08-25 07:20:01,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:20:01
[2026-08-25 07:20:02,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:20:02,889.889 INFO    ] Initializing speech engine...
[2026-08-25 07:20:02,892.892 INFO    ] 2026-08-25 07:20:02
[2026-08-25 07:20:03,261.261 INFO    ] 2026-08-25 07:20:03
[2026-08-25 07:20:03,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:20:03,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:20:03,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:20:03,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:20:03,632.632 INFO    ] time= 25/08/2026 07:20:03
[2026-08-25 07:20:03,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:20:03,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:20:03,701.701 INFO    ] No existing commands found in stream
[2026-08-25 07:20:08,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:20:08,714.714 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 07:20:11,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:20:11,817.817 INFO    ] Checking for system updates...
[2026-08-25 07:20:11,856.856 INFO    ] 200
[2026-08-25 07:20:11,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:11,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:11,920.920 INFO    ] No update needed
[2026-08-25 07:20:11,922.922 INFO    ] Checking for camera pi updates...
[2026-08-25 07:20:11,959.959 INFO    ] 200
[2026-08-25 07:20:11,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:12,007.007 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:20:12,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:12,054.054 INFO    ] No camera update needed
[2026-08-25 07:20:12,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:20:12,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:20:12,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:20:12,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:20:14,109.109 INFO    ] ================================================
[2026-08-25 07:20:14,124.124 INFO    ] Launching Daemon at Tue Aug 25 07:20:14 IST 2026
[2026-08-25 07:20:14,135.135 INFO    ] ================================================
[2026-08-25 07:20:14,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:20:14
[2026-08-25 07:20:15,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:20:15,588.588 INFO    ] Initializing speech engine...
[2026-08-25 07:20:15,595.595 INFO    ] 2026-08-25 07:20:15
[2026-08-25 07:20:15,855.855 INFO    ] 2026-08-25 07:20:15
[2026-08-25 07:20:15,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:20:16,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:20:16,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:20:16,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:20:16,292.292 INFO    ] time= 25/08/2026 07:20:16
[2026-08-25 07:20:16,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:20:16,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:20:16,536.536 INFO    ] No existing commands found in stream
[2026-08-25 07:20:21,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:20:21,563.563 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 07:20:25,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:20:25,797.797 INFO    ] Checking for system updates...
[2026-08-25 07:20:25,832.832 INFO    ] 200
[2026-08-25 07:20:25,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:25,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:25,890.890 INFO    ] No update needed
[2026-08-25 07:20:25,893.893 INFO    ] Checking for camera pi updates...
[2026-08-25 07:20:25,930.930 INFO    ] 200
[2026-08-25 07:20:25,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:25,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:20:26,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:26,020.020 INFO    ] No camera update needed
[2026-08-25 07:20:26,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:20:26,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:20:26,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:20:26,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:20:28,073.073 INFO    ] ================================================
[2026-08-25 07:20:28,088.088 INFO    ] Launching Daemon at Tue Aug 25 07:20:28 IST 2026
[2026-08-25 07:20:28,099.099 INFO    ] ================================================
[2026-08-25 07:20:28,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:20:28
[2026-08-25 07:20:29,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:20:29,522.522 INFO    ] Initializing speech engine...
[2026-08-25 07:20:29,530.530 INFO    ] 2026-08-25 07:20:29
[2026-08-25 07:20:29,779.779 INFO    ] 2026-08-25 07:20:29
[2026-08-25 07:20:29,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:20:30,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:20:30,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:20:30,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:20:30,247.247 INFO    ] time= 25/08/2026 07:20:30
[2026-08-25 07:20:30,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:20:30,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:20:30,466.466 INFO    ] No existing commands found in stream
[2026-08-25 07:20:35,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:20:35,492.492 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 07:20:36,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:20:36,141.141 INFO    ] Checking for system updates...
[2026-08-25 07:20:36,177.177 INFO    ] 200
[2026-08-25 07:20:36,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:36,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:36,234.234 INFO    ] No update needed
[2026-08-25 07:20:36,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 07:20:36,273.273 INFO    ] 200
[2026-08-25 07:20:36,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:36,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:20:36,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:36,382.382 INFO    ] No camera update needed
[2026-08-25 07:20:36,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:20:36,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:20:36,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:20:36,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:20:38,438.438 INFO    ] ================================================
[2026-08-25 07:20:38,453.453 INFO    ] Launching Daemon at Tue Aug 25 07:20:38 IST 2026
[2026-08-25 07:20:38,465.465 INFO    ] ================================================
[2026-08-25 07:20:40,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:20:40
[2026-08-25 07:20:40,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:20:41,034.034 INFO    ] Initializing speech engine...
[2026-08-25 07:20:41,049.049 INFO    ] 2026-08-25 07:20:41
[2026-08-25 07:20:41,303.303 INFO    ] 2026-08-25 07:20:41
[2026-08-25 07:20:41,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:20:41,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:20:41,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:20:41,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:20:41,776.776 INFO    ] time= 25/08/2026 07:20:41
[2026-08-25 07:20:41,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:20:41,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:20:42,013.013 INFO    ] No existing commands found in stream
[2026-08-25 07:20:47,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:20:47,040.040 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 07:20:50,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:20:50,411.411 INFO    ] Checking for system updates...
[2026-08-25 07:20:50,452.452 INFO    ] 200
[2026-08-25 07:20:50,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:50,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:50,509.509 INFO    ] No update needed
[2026-08-25 07:20:50,511.511 INFO    ] Checking for camera pi updates...
[2026-08-25 07:20:50,545.545 INFO    ] 200
[2026-08-25 07:20:50,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:20:50,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:20:50,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:20:50,747.747 INFO    ] No camera update needed
[2026-08-25 07:20:50,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:20:50,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:20:50,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:20:50,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:20:52,801.801 INFO    ] ================================================
[2026-08-25 07:20:52,816.816 INFO    ] Launching Daemon at Tue Aug 25 07:20:52 IST 2026
[2026-08-25 07:20:52,827.827 INFO    ] ================================================
[2026-08-25 07:20:53,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:20:53
[2026-08-25 07:20:54,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:20:54,278.278 INFO    ] Initializing speech engine...
[2026-08-25 07:20:54,287.287 INFO    ] 2026-08-25 07:20:54
[2026-08-25 07:20:54,532.532 INFO    ] 2026-08-25 07:20:54
[2026-08-25 07:20:54,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:20:54,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:20:54,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:20:54,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:20:54,978.978 INFO    ] time= 25/08/2026 07:20:54
[2026-08-25 07:20:55,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:20:55,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:20:55,233.233 INFO    ] No existing commands found in stream
[2026-08-25 07:21:00,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:21:00,251.251 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 07:21:04,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:21:04,558.558 INFO    ] Checking for system updates...
[2026-08-25 07:21:04,596.596 INFO    ] 200
[2026-08-25 07:21:04,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:04,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:04,658.658 INFO    ] No update needed
[2026-08-25 07:21:04,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 07:21:04,697.697 INFO    ] 200
[2026-08-25 07:21:04,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:04,740.740 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:21:04,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:04,793.793 INFO    ] No camera update needed
[2026-08-25 07:21:04,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:21:04,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:21:04,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:21:04,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:21:06,847.847 INFO    ] ================================================
[2026-08-25 07:21:06,863.863 INFO    ] Launching Daemon at Tue Aug 25 07:21:06 IST 2026
[2026-08-25 07:21:06,873.873 INFO    ] ================================================
[2026-08-25 07:21:07,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:21:07
[2026-08-25 07:21:08,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:21:08,293.293 INFO    ] Initializing speech engine...
[2026-08-25 07:21:08,300.300 INFO    ] 2026-08-25 07:21:08
[2026-08-25 07:21:08,557.557 INFO    ] 2026-08-25 07:21:08
[2026-08-25 07:21:08,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:21:08,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:21:08,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:21:08,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:21:09,009.009 INFO    ] time= 25/08/2026 07:21:08
[2026-08-25 07:21:09,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:21:09,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:21:09,238.238 INFO    ] No existing commands found in stream
[2026-08-25 07:21:14,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:21:14,260.260 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 07:21:15,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:21:15,129.129 INFO    ] Checking for system updates...
[2026-08-25 07:21:15,165.165 INFO    ] 200
[2026-08-25 07:21:15,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:15,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:15,225.225 INFO    ] No update needed
[2026-08-25 07:21:15,228.228 INFO    ] Checking for camera pi updates...
[2026-08-25 07:21:15,265.265 INFO    ] 200
[2026-08-25 07:21:15,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:15,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:21:15,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:15,363.363 INFO    ] No camera update needed
[2026-08-25 07:21:15,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:21:15,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:21:15,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:21:15,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:21:17,419.419 INFO    ] ================================================
[2026-08-25 07:21:17,435.435 INFO    ] Launching Daemon at Tue Aug 25 07:21:17 IST 2026
[2026-08-25 07:21:17,445.445 INFO    ] ================================================
[2026-08-25 07:21:18,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:21:18
[2026-08-25 07:21:18,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:21:18,914.914 INFO    ] Initializing speech engine...
[2026-08-25 07:21:18,920.920 INFO    ] 2026-08-25 07:21:18
[2026-08-25 07:21:19,182.182 INFO    ] 2026-08-25 07:21:19
[2026-08-25 07:21:19,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:21:19,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:21:19,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:21:19,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:21:19,652.652 INFO    ] time= 25/08/2026 07:21:19
[2026-08-25 07:21:19,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:21:19,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:21:19,862.862 INFO    ] No existing commands found in stream
[2026-08-25 07:21:24,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:21:24,890.890 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 07:21:28,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:21:28,390.390 INFO    ] Checking for system updates...
[2026-08-25 07:21:28,426.426 INFO    ] 200
[2026-08-25 07:21:28,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:28,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:28,483.483 INFO    ] No update needed
[2026-08-25 07:21:28,485.485 INFO    ] Checking for camera pi updates...
[2026-08-25 07:21:28,518.518 INFO    ] 200
[2026-08-25 07:21:28,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:28,561.561 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:21:28,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:28,613.613 INFO    ] No camera update needed
[2026-08-25 07:21:28,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:21:28,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:21:28,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:21:28,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:21:30,668.668 INFO    ] ================================================
[2026-08-25 07:21:30,685.685 INFO    ] Launching Daemon at Tue Aug 25 07:21:30 IST 2026
[2026-08-25 07:21:30,695.695 INFO    ] ================================================
[2026-08-25 07:21:31,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:21:31
[2026-08-25 07:21:32,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:21:32,367.367 INFO    ] Initializing speech engine...
[2026-08-25 07:21:32,381.381 INFO    ] 2026-08-25 07:21:32
[2026-08-25 07:21:32,663.663 INFO    ] 2026-08-25 07:21:32
[2026-08-25 07:21:32,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:21:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:21:32,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:21:33,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:21:33,182.182 INFO    ] time= 25/08/2026 07:21:33
[2026-08-25 07:21:33,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:21:33,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:21:33,425.425 INFO    ] No existing commands found in stream
[2026-08-25 07:21:38,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:21:38,459.459 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 07:21:39,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:21:39,128.128 INFO    ] Checking for system updates...
[2026-08-25 07:21:39,167.167 INFO    ] 200
[2026-08-25 07:21:39,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:39,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:21:39,232.232 INFO    ] No update needed
[2026-08-25 07:21:39,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 07:21:39,273.273 INFO    ] 200
[2026-08-25 07:21:39,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:39,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:21:39,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:21:39,377.377 INFO    ] No camera update needed
[2026-08-25 07:21:39,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:21:39,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:21:39,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:21:39,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:21:41,435.435 INFO    ] ================================================
[2026-08-25 07:21:41,451.451 INFO    ] Launching Daemon at Tue Aug 25 07:21:41 IST 2026
[2026-08-25 07:21:41,463.463 INFO    ] ================================================
[2026-08-25 07:21:42,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:21:42
[2026-08-25 07:21:42,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:21:43,183.183 INFO    ] Initializing speech engine...
[2026-08-25 07:21:43,192.192 INFO    ] 2026-08-25 07:21:43
[2026-08-25 07:21:43,488.488 INFO    ] 2026-08-25 07:21:43
[2026-08-25 07:21:43,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:21:43,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:21:43,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:21:43,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:21:43,982.982 INFO    ] time= 25/08/2026 07:21:43
[2026-08-25 07:21:44,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:21:44,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:21:44,194.194 INFO    ] No existing commands found in stream
[2026-08-25 07:21:49,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:21:49,226.226 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 07:21:50,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:21:50,340.340 INFO    ] Checking for system updates...
[2026-08-25 07:21:50,377.377 INFO    ] 200
[2026-08-25 07:21:50,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:50,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:50,435.435 INFO    ] No update needed
[2026-08-25 07:21:50,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 07:21:50,472.472 INFO    ] 200
[2026-08-25 07:21:50,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:21:50,520.520 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:21:50,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:21:50,586.586 INFO    ] No camera update needed
[2026-08-25 07:21:50,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:21:50,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:21:50,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:21:50,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:21:52,644.644 INFO    ] ================================================
[2026-08-25 07:21:52,659.659 INFO    ] Launching Daemon at Tue Aug 25 07:21:52 IST 2026
[2026-08-25 07:21:52,670.670 INFO    ] ================================================
[2026-08-25 07:21:53,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:21:53
[2026-08-25 07:21:53,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:21:54,119.119 INFO    ] Initializing speech engine...
[2026-08-25 07:21:54,128.128 INFO    ] 2026-08-25 07:21:54
[2026-08-25 07:21:54,389.389 INFO    ] 2026-08-25 07:21:54
[2026-08-25 07:21:54,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:21:54,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:21:54,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:21:54,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:21:54,867.867 INFO    ] time= 25/08/2026 07:21:54
[2026-08-25 07:21:54,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:21:54,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:21:55,019.019 INFO    ] No existing commands found in stream
[2026-08-25 07:22:00,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:22:00,033.033 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 07:22:01,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:22:01,583.583 INFO    ] Checking for system updates...
[2026-08-25 07:22:01,663.663 INFO    ] 200
[2026-08-25 07:22:01,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:01,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:22:01,748.748 INFO    ] No update needed
[2026-08-25 07:22:01,752.752 INFO    ] Checking for camera pi updates...
[2026-08-25 07:22:01,797.797 INFO    ] 200
[2026-08-25 07:22:01,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:01,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:22:01,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:22:01,922.922 INFO    ] No camera update needed
[2026-08-25 07:22:01,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:22:01,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:22:01,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:22:01,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:22:03,981.981 INFO    ] ================================================
[2026-08-25 07:22:04,997.997 INFO    ] Launching Daemon at Tue Aug 25 07:22:03 IST 2026
[2026-08-25 07:22:04,008.008 INFO    ] ================================================
[2026-08-25 07:22:04,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:22:04
[2026-08-25 07:22:05,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:22:05,420.420 INFO    ] Initializing speech engine...
[2026-08-25 07:22:05,434.434 INFO    ] 2026-08-25 07:22:05
[2026-08-25 07:22:05,690.690 INFO    ] 2026-08-25 07:22:05
[2026-08-25 07:22:05,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:22:05,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:22:05,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:22:06,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:22:06,159.159 INFO    ] time= 25/08/2026 07:22:06
[2026-08-25 07:22:06,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:22:06,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:22:06,430.430 INFO    ] No existing commands found in stream
[2026-08-25 07:22:11,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:22:11,449.449 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 07:22:14,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:22:14,049.049 INFO    ] Checking for system updates...
[2026-08-25 07:22:14,086.086 INFO    ] 200
[2026-08-25 07:22:14,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:14,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:22:14,143.143 INFO    ] No update needed
[2026-08-25 07:22:14,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 07:22:14,181.181 INFO    ] 200
[2026-08-25 07:22:14,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:14,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:22:14,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:22:14,281.281 INFO    ] No camera update needed
[2026-08-25 07:22:14,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:22:14,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:22:14,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:22:14,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:22:16,339.339 INFO    ] ================================================
[2026-08-25 07:22:16,355.355 INFO    ] Launching Daemon at Tue Aug 25 07:22:16 IST 2026
[2026-08-25 07:22:16,366.366 INFO    ] ================================================
[2026-08-25 07:22:16,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:22:16
[2026-08-25 07:22:17,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:22:17,877.877 INFO    ] Initializing speech engine...
[2026-08-25 07:22:17,892.892 INFO    ] 2026-08-25 07:22:17
[2026-08-25 07:22:18,147.147 INFO    ] 2026-08-25 07:22:18
[2026-08-25 07:22:18,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:22:18,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:22:18,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:22:18,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:22:18,620.620 INFO    ] time= 25/08/2026 07:22:18
[2026-08-25 07:22:18,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:22:18,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:22:18,849.849 INFO    ] No existing commands found in stream
[2026-08-25 07:22:23,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:22:23,880.880 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 07:22:28,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:22:28,116.116 INFO    ] Checking for system updates...
[2026-08-25 07:22:28,151.151 INFO    ] 200
[2026-08-25 07:22:28,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:28,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:22:28,210.210 INFO    ] No update needed
[2026-08-25 07:22:28,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 07:22:28,245.245 INFO    ] 200
[2026-08-25 07:22:28,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:28,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:22:28,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:22:28,347.347 INFO    ] No camera update needed
[2026-08-25 07:22:28,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:22:28,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:22:28,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:22:28,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:22:30,401.401 INFO    ] ================================================
[2026-08-25 07:22:30,417.417 INFO    ] Launching Daemon at Tue Aug 25 07:22:30 IST 2026
[2026-08-25 07:22:30,431.431 INFO    ] ================================================
[2026-08-25 07:22:31,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:22:31
[2026-08-25 07:22:31,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:22:31,925.925 INFO    ] Initializing speech engine...
[2026-08-25 07:22:31,935.935 INFO    ] 2026-08-25 07:22:31
[2026-08-25 07:22:32,209.209 INFO    ] 2026-08-25 07:22:32
[2026-08-25 07:22:32,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:22:32,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:22:32,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:22:32,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:22:32,611.611 INFO    ] time= 25/08/2026 07:22:32
[2026-08-25 07:22:32,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:22:32,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:22:32,747.747 INFO    ] No existing commands found in stream
[2026-08-25 07:22:37,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:22:37,768.768 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 07:22:38,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:22:38,571.571 INFO    ] Checking for system updates...
[2026-08-25 07:22:38,607.607 INFO    ] 200
[2026-08-25 07:22:38,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:38,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:22:38,664.664 INFO    ] No update needed
[2026-08-25 07:22:38,666.666 INFO    ] Checking for camera pi updates...
[2026-08-25 07:22:38,700.700 INFO    ] 200
[2026-08-25 07:22:38,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:38,742.742 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:22:38,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:22:38,790.790 INFO    ] No camera update needed
[2026-08-25 07:22:38,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:22:38,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:22:38,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:22:38,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:22:40,844.844 INFO    ] ================================================
[2026-08-25 07:22:40,859.859 INFO    ] Launching Daemon at Tue Aug 25 07:22:40 IST 2026
[2026-08-25 07:22:40,869.869 INFO    ] ================================================
[2026-08-25 07:22:41,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:22:41
[2026-08-25 07:22:42,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:22:42,280.280 INFO    ] Initializing speech engine...
[2026-08-25 07:22:42,296.296 INFO    ] 2026-08-25 07:22:42
[2026-08-25 07:22:42,570.570 INFO    ] 2026-08-25 07:22:42
[2026-08-25 07:22:42,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:22:42,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:22:42,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:22:43,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:22:43,056.056 INFO    ] time= 25/08/2026 07:22:43
[2026-08-25 07:22:43,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:22:43,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:22:43,265.265 INFO    ] No existing commands found in stream
[2026-08-25 07:22:48,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:22:48,291.291 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 07:22:50,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:22:50,141.141 INFO    ] Checking for system updates...
[2026-08-25 07:22:50,180.180 INFO    ] 200
[2026-08-25 07:22:50,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:50,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:22:50,237.237 INFO    ] No update needed
[2026-08-25 07:22:50,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 07:22:50,273.273 INFO    ] 200
[2026-08-25 07:22:50,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:22:50,316.316 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:22:50,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:22:50,387.387 INFO    ] No camera update needed
[2026-08-25 07:22:50,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:22:50,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:22:50,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:22:50,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:22:52,440.440 INFO    ] ================================================
[2026-08-25 07:22:52,455.455 INFO    ] Launching Daemon at Tue Aug 25 07:22:52 IST 2026
[2026-08-25 07:22:52,465.465 INFO    ] ================================================
[2026-08-25 07:22:53,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:22:53
[2026-08-25 07:22:53,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:22:53,917.917 INFO    ] Initializing speech engine...
[2026-08-25 07:22:53,922.922 INFO    ] 2026-08-25 07:22:53
[2026-08-25 07:22:54,184.184 INFO    ] 2026-08-25 07:22:54
[2026-08-25 07:22:54,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:22:54,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:22:54,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:22:54,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:22:54,726.726 INFO    ] time= 25/08/2026 07:22:54
[2026-08-25 07:22:54,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:22:54,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:22:54,860.860 INFO    ] No existing commands found in stream
[2026-08-25 07:22:59,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:22:59,892.892 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 07:23:01,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:23:01,331.331 INFO    ] Checking for system updates...
[2026-08-25 07:23:01,390.390 INFO    ] 200
[2026-08-25 07:23:01,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:01,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:23:01,488.488 INFO    ] No update needed
[2026-08-25 07:23:01,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 07:23:01,552.552 INFO    ] 200
[2026-08-25 07:23:01,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:01,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:23:01,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:23:01,783.783 INFO    ] No camera update needed
[2026-08-25 07:23:01,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:23:01,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:23:01,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:23:01,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:23:03,844.844 INFO    ] ================================================
[2026-08-25 07:23:03,859.859 INFO    ] Launching Daemon at Tue Aug 25 07:23:03 IST 2026
[2026-08-25 07:23:03,869.869 INFO    ] ================================================
[2026-08-25 07:23:04,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:23:04
[2026-08-25 07:23:05,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:23:05,269.269 INFO    ] Initializing speech engine...
[2026-08-25 07:23:05,277.277 INFO    ] 2026-08-25 07:23:05
[2026-08-25 07:23:05,555.555 INFO    ] 2026-08-25 07:23:05
[2026-08-25 07:23:05,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:23:05,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:23:05,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:23:05,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:23:06,024.024 INFO    ] time= 25/08/2026 07:23:05
[2026-08-25 07:23:06,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:23:06,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:23:06,279.279 INFO    ] No existing commands found in stream
[2026-08-25 07:23:11,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:23:11,303.303 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 07:23:12,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:23:12,944.944 INFO    ] Checking for system updates...
[2026-08-25 07:23:12,981.981 INFO    ] 200
[2026-08-25 07:23:12,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:13,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:23:13,040.040 INFO    ] No update needed
[2026-08-25 07:23:13,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 07:23:13,080.080 INFO    ] 200
[2026-08-25 07:23:13,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:13,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:23:13,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:23:13,181.181 INFO    ] No camera update needed
[2026-08-25 07:23:13,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:23:13,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:23:13,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:23:13,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:23:15,237.237 INFO    ] ================================================
[2026-08-25 07:23:15,252.252 INFO    ] Launching Daemon at Tue Aug 25 07:23:15 IST 2026
[2026-08-25 07:23:15,263.263 INFO    ] ================================================
[2026-08-25 07:23:15,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:23:15
[2026-08-25 07:23:16,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:23:16,680.680 INFO    ] Initializing speech engine...
[2026-08-25 07:23:16,687.687 INFO    ] 2026-08-25 07:23:16
[2026-08-25 07:23:16,944.944 INFO    ] 2026-08-25 07:23:16
[2026-08-25 07:23:16,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:23:17,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:23:17,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:23:17,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:23:17,418.418 INFO    ] time= 25/08/2026 07:23:17
[2026-08-25 07:23:17,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:23:17,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:23:17,620.620 INFO    ] No existing commands found in stream
[2026-08-25 07:23:22,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:23:22,647.647 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 07:23:26,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:23:26,491.491 INFO    ] Checking for system updates...
[2026-08-25 07:23:26,530.530 INFO    ] 200
[2026-08-25 07:23:26,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:26,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:23:26,596.596 INFO    ] No update needed
[2026-08-25 07:23:26,599.599 INFO    ] Checking for camera pi updates...
[2026-08-25 07:23:26,636.636 INFO    ] 200
[2026-08-25 07:23:26,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:26,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:23:26,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:23:26,738.738 INFO    ] No camera update needed
[2026-08-25 07:23:26,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:23:26,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:23:26,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:23:26,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:23:28,795.795 INFO    ] ================================================
[2026-08-25 07:23:28,810.810 INFO    ] Launching Daemon at Tue Aug 25 07:23:28 IST 2026
[2026-08-25 07:23:28,821.821 INFO    ] ================================================
[2026-08-25 07:23:29,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:23:29
[2026-08-25 07:23:29,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:23:30,245.245 INFO    ] Initializing speech engine...
[2026-08-25 07:23:30,251.251 INFO    ] 2026-08-25 07:23:30
[2026-08-25 07:23:30,495.495 INFO    ] 2026-08-25 07:23:30
[2026-08-25 07:23:30,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:23:30,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:23:30,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:23:30,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:23:30,958.958 INFO    ] time= 25/08/2026 07:23:30
[2026-08-25 07:23:31,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:23:31,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:23:31,188.188 INFO    ] No existing commands found in stream
[2026-08-25 07:23:36,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:23:36,215.215 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 07:23:37,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:23:37,720.720 INFO    ] Checking for system updates...
[2026-08-25 07:23:37,756.756 INFO    ] 200
[2026-08-25 07:23:37,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:37,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:23:37,815.815 INFO    ] No update needed
[2026-08-25 07:23:37,817.817 INFO    ] Checking for camera pi updates...
[2026-08-25 07:23:37,850.850 INFO    ] 200
[2026-08-25 07:23:37,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:37,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:23:37,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:23:37,945.945 INFO    ] No camera update needed
[2026-08-25 07:23:37,948.948 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:23:37,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:23:37,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:23:37,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:23:40,001.001 INFO    ] ================================================
[2026-08-25 07:23:40,016.016 INFO    ] Launching Daemon at Tue Aug 25 07:23:40 IST 2026
[2026-08-25 07:23:40,026.026 INFO    ] ================================================
[2026-08-25 07:23:40,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:23:40
[2026-08-25 07:23:41,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:23:41,479.479 INFO    ] Initializing speech engine...
[2026-08-25 07:23:41,489.489 INFO    ] 2026-08-25 07:23:41
[2026-08-25 07:23:41,749.749 INFO    ] 2026-08-25 07:23:41
[2026-08-25 07:23:41,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:23:42,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:23:42,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:23:42,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:23:42,212.212 INFO    ] time= 25/08/2026 07:23:42
[2026-08-25 07:23:42,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:23:42,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:23:42,430.430 INFO    ] No existing commands found in stream
[2026-08-25 07:23:47,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:23:47,458.458 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 07:23:49,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:23:49,379.379 INFO    ] Checking for system updates...
[2026-08-25 07:23:49,416.416 INFO    ] 200
[2026-08-25 07:23:49,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:49,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:23:49,473.473 INFO    ] No update needed
[2026-08-25 07:23:49,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 07:23:49,509.509 INFO    ] 200
[2026-08-25 07:23:49,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:23:49,552.552 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:23:49,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:23:49,601.601 INFO    ] No camera update needed
[2026-08-25 07:23:49,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:23:49,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:23:49,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:23:49,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:23:51,659.659 INFO    ] ================================================
[2026-08-25 07:23:51,673.673 INFO    ] Launching Daemon at Tue Aug 25 07:23:51 IST 2026
[2026-08-25 07:23:51,684.684 INFO    ] ================================================
[2026-08-25 07:23:52,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:23:52
[2026-08-25 07:23:52,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:23:53,142.142 INFO    ] Initializing speech engine...
[2026-08-25 07:23:53,149.149 INFO    ] 2026-08-25 07:23:53
[2026-08-25 07:23:53,411.411 INFO    ] 2026-08-25 07:23:53
[2026-08-25 07:23:53,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:23:53,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:23:53,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:23:53,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:23:53,879.879 INFO    ] time= 25/08/2026 07:23:53
[2026-08-25 07:23:53,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:23:53,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:23:54,104.104 INFO    ] No existing commands found in stream
[2026-08-25 07:23:59,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:23:59,122.122 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 07:24:01,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:24:01,911.911 INFO    ] Checking for system updates...
[2026-08-25 07:24:01,953.953 INFO    ] 200
[2026-08-25 07:24:01,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:02,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:24:02,020.020 INFO    ] No update needed
[2026-08-25 07:24:02,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 07:24:02,061.061 INFO    ] 200
[2026-08-25 07:24:02,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:02,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:24:02,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:24:02,201.201 INFO    ] No camera update needed
[2026-08-25 07:24:02,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:24:02,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:24:02,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:24:02,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:24:04,268.268 INFO    ] ================================================
[2026-08-25 07:24:04,283.283 INFO    ] Launching Daemon at Tue Aug 25 07:24:04 IST 2026
[2026-08-25 07:24:04,293.293 INFO    ] ================================================
[2026-08-25 07:24:04,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:24:04
[2026-08-25 07:24:05,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:24:05,722.722 INFO    ] Initializing speech engine...
[2026-08-25 07:24:05,731.731 INFO    ] 2026-08-25 07:24:05
[2026-08-25 07:24:06,002.002 INFO    ] 2026-08-25 07:24:05
[2026-08-25 07:24:06,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:24:06,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:24:06,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:24:06,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:24:06,533.533 INFO    ] time= 25/08/2026 07:24:06
[2026-08-25 07:24:06,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:24:06,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:24:06,732.732 INFO    ] No existing commands found in stream
[2026-08-25 07:24:11,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:24:11,770.770 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 07:24:14,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:24:14,371.371 INFO    ] Checking for system updates...
[2026-08-25 07:24:14,407.407 INFO    ] 200
[2026-08-25 07:24:14,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:14,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:24:14,471.471 INFO    ] No update needed
[2026-08-25 07:24:14,474.474 INFO    ] Checking for camera pi updates...
[2026-08-25 07:24:14,510.510 INFO    ] 200
[2026-08-25 07:24:14,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:14,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:24:14,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:24:14,607.607 INFO    ] No camera update needed
[2026-08-25 07:24:14,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:24:14,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:24:14,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:24:14,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:24:16,663.663 INFO    ] ================================================
[2026-08-25 07:24:16,678.678 INFO    ] Launching Daemon at Tue Aug 25 07:24:16 IST 2026
[2026-08-25 07:24:16,689.689 INFO    ] ================================================
[2026-08-25 07:24:17,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:24:17
[2026-08-25 07:24:17,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:24:18,108.108 INFO    ] Initializing speech engine...
[2026-08-25 07:24:18,117.117 INFO    ] 2026-08-25 07:24:18
[2026-08-25 07:24:18,377.377 INFO    ] 2026-08-25 07:24:18
[2026-08-25 07:24:18,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:24:18,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:24:18,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:24:18,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:24:18,732.732 INFO    ] time= 25/08/2026 07:24:18
[2026-08-25 07:24:18,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:24:18,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:24:18,846.846 INFO    ] No existing commands found in stream
[2026-08-25 07:24:23,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:24:23,861.861 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 07:24:27,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:24:27,606.606 INFO    ] Checking for system updates...
[2026-08-25 07:24:27,642.642 INFO    ] 200
[2026-08-25 07:24:27,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:27,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:24:27,700.700 INFO    ] No update needed
[2026-08-25 07:24:27,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 07:24:27,735.735 INFO    ] 200
[2026-08-25 07:24:27,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:27,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:24:27,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:24:27,836.836 INFO    ] No camera update needed
[2026-08-25 07:24:27,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:24:27,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:24:27,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:24:27,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:24:29,894.894 INFO    ] ================================================
[2026-08-25 07:24:29,909.909 INFO    ] Launching Daemon at Tue Aug 25 07:24:29 IST 2026
[2026-08-25 07:24:29,920.920 INFO    ] ================================================
[2026-08-25 07:24:30,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:24:30
[2026-08-25 07:24:31,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:24:31,364.364 INFO    ] Initializing speech engine...
[2026-08-25 07:24:31,372.372 INFO    ] 2026-08-25 07:24:31
[2026-08-25 07:24:31,639.639 INFO    ] 2026-08-25 07:24:31
[2026-08-25 07:24:31,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:24:31,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:24:31,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:24:32,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:24:32,148.148 INFO    ] time= 25/08/2026 07:24:32
[2026-08-25 07:24:32,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:24:32,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:24:32,221.221 INFO    ] No existing commands found in stream
[2026-08-25 07:24:37,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:24:37,233.233 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 07:24:41,072.072 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:24:41,074.074 INFO    ] Checking for system updates...
[2026-08-25 07:24:41,110.110 INFO    ] 200
[2026-08-25 07:24:41,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:41,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:24:41,167.167 INFO    ] No update needed
[2026-08-25 07:24:41,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 07:24:41,203.203 INFO    ] 200
[2026-08-25 07:24:41,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:41,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:24:41,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:24:41,307.307 INFO    ] No camera update needed
[2026-08-25 07:24:41,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:24:41,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:24:41,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:24:41,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:24:43,363.363 INFO    ] ================================================
[2026-08-25 07:24:43,378.378 INFO    ] Launching Daemon at Tue Aug 25 07:24:43 IST 2026
[2026-08-25 07:24:43,389.389 INFO    ] ================================================
[2026-08-25 07:24:43,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:24:43
[2026-08-25 07:24:44,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:24:44,840.840 INFO    ] Initializing speech engine...
[2026-08-25 07:24:44,861.861 INFO    ] 2026-08-25 07:24:44
[2026-08-25 07:24:45,137.137 INFO    ] 2026-08-25 07:24:45
[2026-08-25 07:24:45,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:24:45,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:24:45,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:24:45,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:24:45,553.553 INFO    ] time= 25/08/2026 07:24:45
[2026-08-25 07:24:45,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:24:45,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:24:45,718.718 INFO    ] No existing commands found in stream
[2026-08-25 07:24:50,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:24:50,751.751 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 07:24:51,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:24:51,808.808 INFO    ] Checking for system updates...
[2026-08-25 07:24:51,844.844 INFO    ] 200
[2026-08-25 07:24:51,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:51,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:24:51,901.901 INFO    ] No update needed
[2026-08-25 07:24:51,904.904 INFO    ] Checking for camera pi updates...
[2026-08-25 07:24:51,937.937 INFO    ] 200
[2026-08-25 07:24:51,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:24:51,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:24:52,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:24:52,032.032 INFO    ] No camera update needed
[2026-08-25 07:24:52,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:24:52,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:24:52,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:24:52,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:24:54,086.086 INFO    ] ================================================
[2026-08-25 07:24:54,101.101 INFO    ] Launching Daemon at Tue Aug 25 07:24:54 IST 2026
[2026-08-25 07:24:54,112.112 INFO    ] ================================================
[2026-08-25 07:24:54,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:24:54
[2026-08-25 07:24:55,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:24:55,712.712 INFO    ] Initializing speech engine...
[2026-08-25 07:24:55,719.719 INFO    ] 2026-08-25 07:24:55
[2026-08-25 07:24:55,988.988 INFO    ] 2026-08-25 07:24:55
[2026-08-25 07:24:56,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:24:56,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:24:56,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:24:56,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:24:56,486.486 INFO    ] time= 25/08/2026 07:24:56
[2026-08-25 07:24:56,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:24:56,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:24:56,685.685 INFO    ] No existing commands found in stream
[2026-08-25 07:25:01,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:25:01,700.700 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 07:25:05,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:25:05,821.821 INFO    ] Checking for system updates...
[2026-08-25 07:25:05,856.856 INFO    ] 200
[2026-08-25 07:25:05,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:05,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:25:05,921.921 INFO    ] No update needed
[2026-08-25 07:25:05,923.923 INFO    ] Checking for camera pi updates...
[2026-08-25 07:25:05,957.957 INFO    ] 200
[2026-08-25 07:25:05,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:06,000.000 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:25:06,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:25:06,060.060 INFO    ] No camera update needed
[2026-08-25 07:25:06,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:25:06,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:25:06,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:25:06,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:25:08,126.126 INFO    ] ================================================
[2026-08-25 07:25:08,141.141 INFO    ] Launching Daemon at Tue Aug 25 07:25:08 IST 2026
[2026-08-25 07:25:08,152.152 INFO    ] ================================================
[2026-08-25 07:25:08,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:25:08
[2026-08-25 07:25:09,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:25:09,586.586 INFO    ] Initializing speech engine...
[2026-08-25 07:25:09,592.592 INFO    ] 2026-08-25 07:25:09
[2026-08-25 07:25:09,889.889 INFO    ] 2026-08-25 07:25:09
[2026-08-25 07:25:09,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:25:10,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:25:10,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:25:10,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:25:10,303.303 INFO    ] time= 25/08/2026 07:25:10
[2026-08-25 07:25:10,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:25:10,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:25:10,394.394 INFO    ] No existing commands found in stream
[2026-08-25 07:25:15,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:25:15,407.407 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 07:25:19,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:25:19,239.239 INFO    ] Checking for system updates...
[2026-08-25 07:25:19,275.275 INFO    ] 200
[2026-08-25 07:25:19,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:19,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:19,340.340 INFO    ] No update needed
[2026-08-25 07:25:19,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 07:25:19,377.377 INFO    ] 200
[2026-08-25 07:25:19,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:19,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:25:19,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:19,479.479 INFO    ] No camera update needed
[2026-08-25 07:25:19,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:25:19,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:25:19,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:25:19,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:25:21,537.537 INFO    ] ================================================
[2026-08-25 07:25:21,552.552 INFO    ] Launching Daemon at Tue Aug 25 07:25:21 IST 2026
[2026-08-25 07:25:21,563.563 INFO    ] ================================================
[2026-08-25 07:25:22,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:25:22
[2026-08-25 07:25:22,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:25:23,189.189 INFO    ] Initializing speech engine...
[2026-08-25 07:25:23,199.199 INFO    ] 2026-08-25 07:25:23
[2026-08-25 07:25:23,477.477 INFO    ] 2026-08-25 07:25:23
[2026-08-25 07:25:23,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:25:23,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:25:23,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:25:23,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:25:23,949.949 INFO    ] time= 25/08/2026 07:25:23
[2026-08-25 07:25:24,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:25:24,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:25:24,191.191 INFO    ] No existing commands found in stream
[2026-08-25 07:25:29,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:25:29,218.218 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 07:25:32,790.790 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:25:32,792.792 INFO    ] Checking for system updates...
[2026-08-25 07:25:32,829.829 INFO    ] 200
[2026-08-25 07:25:32,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:32,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:32,889.889 INFO    ] No update needed
[2026-08-25 07:25:32,891.891 INFO    ] Checking for camera pi updates...
[2026-08-25 07:25:32,926.926 INFO    ] 200
[2026-08-25 07:25:32,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:32,971.971 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:25:33,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:33,032.032 INFO    ] No camera update needed
[2026-08-25 07:25:33,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:25:33,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:25:33,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:25:33,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:25:35,089.089 INFO    ] ================================================
[2026-08-25 07:25:35,104.104 INFO    ] Launching Daemon at Tue Aug 25 07:25:35 IST 2026
[2026-08-25 07:25:35,114.114 INFO    ] ================================================
[2026-08-25 07:25:35,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:25:35
[2026-08-25 07:25:36,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:25:36,548.548 INFO    ] Initializing speech engine...
[2026-08-25 07:25:36,568.568 INFO    ] 2026-08-25 07:25:36
[2026-08-25 07:25:36,835.835 INFO    ] 2026-08-25 07:25:36
[2026-08-25 07:25:36,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:25:37,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:25:37,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:25:37,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:25:37,231.231 INFO    ] time= 25/08/2026 07:25:37
[2026-08-25 07:25:37,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:25:37,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:25:37,340.340 INFO    ] No existing commands found in stream
[2026-08-25 07:25:42,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:25:42,355.355 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 07:25:43,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:25:43,792.792 INFO    ] Checking for system updates...
[2026-08-25 07:25:43,828.828 INFO    ] 200
[2026-08-25 07:25:43,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:43,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:43,887.887 INFO    ] No update needed
[2026-08-25 07:25:43,890.890 INFO    ] Checking for camera pi updates...
[2026-08-25 07:25:43,927.927 INFO    ] 200
[2026-08-25 07:25:43,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:43,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:25:44,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:44,024.024 INFO    ] No camera update needed
[2026-08-25 07:25:44,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:25:44,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:25:44,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:25:44,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:25:46,082.082 INFO    ] ================================================
[2026-08-25 07:25:46,097.097 INFO    ] Launching Daemon at Tue Aug 25 07:25:46 IST 2026
[2026-08-25 07:25:46,108.108 INFO    ] ================================================
[2026-08-25 07:25:46,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:25:46
[2026-08-25 07:25:47,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:25:47,521.521 INFO    ] Initializing speech engine...
[2026-08-25 07:25:47,530.530 INFO    ] 2026-08-25 07:25:47
[2026-08-25 07:25:47,825.825 INFO    ] 2026-08-25 07:25:47
[2026-08-25 07:25:47,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:25:48,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:25:48,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:25:48,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:25:48,204.204 INFO    ] time= 25/08/2026 07:25:48
[2026-08-25 07:25:48,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:25:48,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:25:48,328.328 INFO    ] No existing commands found in stream
[2026-08-25 07:25:53,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:25:53,343.343 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 07:25:54,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:25:54,327.327 INFO    ] Checking for system updates...
[2026-08-25 07:25:54,363.363 INFO    ] 200
[2026-08-25 07:25:54,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:54,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:54,421.421 INFO    ] No update needed
[2026-08-25 07:25:54,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 07:25:54,457.457 INFO    ] 200
[2026-08-25 07:25:54,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:25:54,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:25:54,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:25:54,544.544 INFO    ] No camera update needed
[2026-08-25 07:25:54,546.546 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:25:54,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:25:54,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:25:54,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:25:56,598.598 INFO    ] ================================================
[2026-08-25 07:25:56,613.613 INFO    ] Launching Daemon at Tue Aug 25 07:25:56 IST 2026
[2026-08-25 07:25:56,624.624 INFO    ] ================================================
[2026-08-25 07:25:57,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:25:57
[2026-08-25 07:25:57,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:25:58,044.044 INFO    ] Initializing speech engine...
[2026-08-25 07:25:58,053.053 INFO    ] 2026-08-25 07:25:58
[2026-08-25 07:25:58,301.301 INFO    ] 2026-08-25 07:25:58
[2026-08-25 07:25:58,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:25:58,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:25:58,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:25:58,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:25:58,680.680 INFO    ] time= 25/08/2026 07:25:58
[2026-08-25 07:25:58,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:25:58,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:25:58,858.858 INFO    ] No existing commands found in stream
[2026-08-25 07:26:03,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:26:03,891.891 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 07:26:06,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:26:06,627.627 INFO    ] Checking for system updates...
[2026-08-25 07:26:06,663.663 INFO    ] 200
[2026-08-25 07:26:06,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:06,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:06,719.719 INFO    ] No update needed
[2026-08-25 07:26:06,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 07:26:06,755.755 INFO    ] 200
[2026-08-25 07:26:06,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:06,798.798 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:26:06,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:06,858.858 INFO    ] No camera update needed
[2026-08-25 07:26:06,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:26:06,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:26:06,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:26:06,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:26:08,914.914 INFO    ] ================================================
[2026-08-25 07:26:08,934.934 INFO    ] Launching Daemon at Tue Aug 25 07:26:08 IST 2026
[2026-08-25 07:26:08,947.947 INFO    ] ================================================
[2026-08-25 07:26:09,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:26:09
[2026-08-25 07:26:10,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:26:10,401.401 INFO    ] Initializing speech engine...
[2026-08-25 07:26:10,407.407 INFO    ] 2026-08-25 07:26:10
[2026-08-25 07:26:10,669.669 INFO    ] 2026-08-25 07:26:10
[2026-08-25 07:26:10,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:26:10,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:26:10,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:26:11,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:26:11,142.142 INFO    ] time= 25/08/2026 07:26:11
[2026-08-25 07:26:11,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:26:11,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:26:11,346.346 INFO    ] No existing commands found in stream
[2026-08-25 07:26:16,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:26:16,376.376 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 07:26:18,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:26:18,388.388 INFO    ] Checking for system updates...
[2026-08-25 07:26:18,425.425 INFO    ] 200
[2026-08-25 07:26:18,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:18,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:26:18,483.483 INFO    ] No update needed
[2026-08-25 07:26:18,485.485 INFO    ] Checking for camera pi updates...
[2026-08-25 07:26:18,520.520 INFO    ] 200
[2026-08-25 07:26:18,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:18,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:26:18,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:26:18,614.614 INFO    ] No camera update needed
[2026-08-25 07:26:18,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:26:18,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:26:18,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:26:18,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:26:20,668.668 INFO    ] ================================================
[2026-08-25 07:26:20,683.683 INFO    ] Launching Daemon at Tue Aug 25 07:26:20 IST 2026
[2026-08-25 07:26:20,694.694 INFO    ] ================================================
[2026-08-25 07:26:21,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:26:21
[2026-08-25 07:26:21,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:26:22,116.116 INFO    ] Initializing speech engine...
[2026-08-25 07:26:22,125.125 INFO    ] 2026-08-25 07:26:22
[2026-08-25 07:26:22,421.421 INFO    ] 2026-08-25 07:26:22
[2026-08-25 07:26:22,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:26:22,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:26:22,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:26:22,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:26:22,810.810 INFO    ] time= 25/08/2026 07:26:22
[2026-08-25 07:26:22,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:26:22,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:26:22,939.939 INFO    ] No existing commands found in stream
[2026-08-25 07:26:27,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:26:27,954.954 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 07:26:31,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:26:31,017.017 INFO    ] Checking for system updates...
[2026-08-25 07:26:31,053.053 INFO    ] 200
[2026-08-25 07:26:31,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:31,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:31,111.111 INFO    ] No update needed
[2026-08-25 07:26:31,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 07:26:31,146.146 INFO    ] 200
[2026-08-25 07:26:31,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:31,195.195 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:26:31,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:31,249.249 INFO    ] No camera update needed
[2026-08-25 07:26:31,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:26:31,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:26:31,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:26:31,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:26:33,311.311 INFO    ] ================================================
[2026-08-25 07:26:33,326.326 INFO    ] Launching Daemon at Tue Aug 25 07:26:33 IST 2026
[2026-08-25 07:26:33,337.337 INFO    ] ================================================
[2026-08-25 07:26:33,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:26:33
[2026-08-25 07:26:34,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:26:34,739.739 INFO    ] Initializing speech engine...
[2026-08-25 07:26:34,752.752 INFO    ] 2026-08-25 07:26:34
[2026-08-25 07:26:35,019.019 INFO    ] 2026-08-25 07:26:35
[2026-08-25 07:26:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:26:35,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:26:35,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:26:35,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:26:35,396.396 INFO    ] time= 25/08/2026 07:26:35
[2026-08-25 07:26:35,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:26:35,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:26:35,562.562 INFO    ] No existing commands found in stream
[2026-08-25 07:26:40,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:26:40,589.589 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 07:26:41,403.403 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:26:41,406.406 INFO    ] Checking for system updates...
[2026-08-25 07:26:41,446.446 INFO    ] 200
[2026-08-25 07:26:41,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:41,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:41,504.504 INFO    ] No update needed
[2026-08-25 07:26:41,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 07:26:41,540.540 INFO    ] 200
[2026-08-25 07:26:41,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:41,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:26:41,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:41,638.638 INFO    ] No camera update needed
[2026-08-25 07:26:41,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:26:41,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:26:41,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:26:41,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:26:43,696.696 INFO    ] ================================================
[2026-08-25 07:26:43,711.711 INFO    ] Launching Daemon at Tue Aug 25 07:26:43 IST 2026
[2026-08-25 07:26:43,722.722 INFO    ] ================================================
[2026-08-25 07:26:44,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:26:44
[2026-08-25 07:26:44,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:26:45,141.141 INFO    ] Initializing speech engine...
[2026-08-25 07:26:45,150.150 INFO    ] 2026-08-25 07:26:45
[2026-08-25 07:26:45,398.398 INFO    ] 2026-08-25 07:26:45
[2026-08-25 07:26:45,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:26:45,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:26:45,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:26:45,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:26:45,775.775 INFO    ] time= 25/08/2026 07:26:45
[2026-08-25 07:26:45,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:26:45,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:26:45,943.943 INFO    ] No existing commands found in stream
[2026-08-25 07:26:50,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:26:50,977.977 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 07:26:54,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:26:54,739.739 INFO    ] Checking for system updates...
[2026-08-25 07:26:54,775.775 INFO    ] 200
[2026-08-25 07:26:54,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:54,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:54,832.832 INFO    ] No update needed
[2026-08-25 07:26:54,835.835 INFO    ] Checking for camera pi updates...
[2026-08-25 07:26:54,868.868 INFO    ] 200
[2026-08-25 07:26:54,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:26:54,912.912 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:26:54,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:26:54,957.957 INFO    ] No camera update needed
[2026-08-25 07:26:54,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:26:54,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:26:54,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:26:54,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:26:57,012.012 INFO    ] ================================================
[2026-08-25 07:26:57,028.028 INFO    ] Launching Daemon at Tue Aug 25 07:26:57 IST 2026
[2026-08-25 07:26:57,039.039 INFO    ] ================================================
[2026-08-25 07:26:57,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:26:57
[2026-08-25 07:26:58,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:26:58,468.468 INFO    ] Initializing speech engine...
[2026-08-25 07:26:58,478.478 INFO    ] 2026-08-25 07:26:58
[2026-08-25 07:26:58,739.739 INFO    ] 2026-08-25 07:26:58
[2026-08-25 07:26:58,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:26:59,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:26:59,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:26:59,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:26:59,202.202 INFO    ] time= 25/08/2026 07:26:59
[2026-08-25 07:26:59,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:26:59,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:26:59,433.433 INFO    ] No existing commands found in stream
[2026-08-25 07:27:04,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:27:04,450.450 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 07:27:06,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:27:06,129.129 INFO    ] Checking for system updates...
[2026-08-25 07:27:06,165.165 INFO    ] 200
[2026-08-25 07:27:06,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:06,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:27:06,229.229 INFO    ] No update needed
[2026-08-25 07:27:06,232.232 INFO    ] Checking for camera pi updates...
[2026-08-25 07:27:06,269.269 INFO    ] 200
[2026-08-25 07:27:06,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:06,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:27:06,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:27:06,472.472 INFO    ] No camera update needed
[2026-08-25 07:27:06,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:27:06,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:27:06,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:27:06,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:27:08,531.531 INFO    ] ================================================
[2026-08-25 07:27:08,546.546 INFO    ] Launching Daemon at Tue Aug 25 07:27:08 IST 2026
[2026-08-25 07:27:08,557.557 INFO    ] ================================================
[2026-08-25 07:27:09,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:27:09
[2026-08-25 07:27:09,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:27:09,997.997 INFO    ] Initializing speech engine...
[2026-08-25 07:27:10,008.008 INFO    ] 2026-08-25 07:27:10
[2026-08-25 07:27:10,252.252 INFO    ] 2026-08-25 07:27:10
[2026-08-25 07:27:10,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:27:10,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:27:10,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:27:10,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:27:10,729.729 INFO    ] time= 25/08/2026 07:27:10
[2026-08-25 07:27:10,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:27:10,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:27:10,939.939 INFO    ] No existing commands found in stream
[2026-08-25 07:27:15,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:27:15,972.972 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 07:27:18,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:27:18,276.276 INFO    ] Checking for system updates...
[2026-08-25 07:27:18,312.312 INFO    ] 200
[2026-08-25 07:27:18,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:18,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:27:18,377.377 INFO    ] No update needed
[2026-08-25 07:27:18,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 07:27:18,413.413 INFO    ] 200
[2026-08-25 07:27:18,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:18,460.460 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:27:18,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:27:18,529.529 INFO    ] No camera update needed
[2026-08-25 07:27:18,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:27:18,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:27:18,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:27:18,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:27:20,586.586 INFO    ] ================================================
[2026-08-25 07:27:20,601.601 INFO    ] Launching Daemon at Tue Aug 25 07:27:20 IST 2026
[2026-08-25 07:27:20,613.613 INFO    ] ================================================
[2026-08-25 07:27:21,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:27:21
[2026-08-25 07:27:21,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:27:22,018.018 INFO    ] Initializing speech engine...
[2026-08-25 07:27:22,026.026 INFO    ] 2026-08-25 07:27:22
[2026-08-25 07:27:22,320.320 INFO    ] 2026-08-25 07:27:22
[2026-08-25 07:27:22,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:27:22,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:27:22,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:27:22,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:27:22,743.743 INFO    ] time= 25/08/2026 07:27:22
[2026-08-25 07:27:22,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:27:22,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:27:22,909.909 INFO    ] No existing commands found in stream
[2026-08-25 07:27:27,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:27:27,937.937 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 07:27:31,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:27:31,419.419 INFO    ] Checking for system updates...
[2026-08-25 07:27:31,458.458 INFO    ] 200
[2026-08-25 07:27:31,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:31,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:27:31,521.521 INFO    ] No update needed
[2026-08-25 07:27:31,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 07:27:31,566.566 INFO    ] 200
[2026-08-25 07:27:31,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:31,613.613 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:27:31,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:27:31,678.678 INFO    ] No camera update needed
[2026-08-25 07:27:31,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:27:31,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:27:31,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:27:31,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:27:33,735.735 INFO    ] ================================================
[2026-08-25 07:27:33,751.751 INFO    ] Launching Daemon at Tue Aug 25 07:27:33 IST 2026
[2026-08-25 07:27:33,762.762 INFO    ] ================================================
[2026-08-25 07:27:34,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:27:34
[2026-08-25 07:27:34,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:27:35,182.182 INFO    ] Initializing speech engine...
[2026-08-25 07:27:35,192.192 INFO    ] 2026-08-25 07:27:35
[2026-08-25 07:27:35,440.440 INFO    ] 2026-08-25 07:27:35
[2026-08-25 07:27:35,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:27:35,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:27:35,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:27:35,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:27:35,814.814 INFO    ] time= 25/08/2026 07:27:35
[2026-08-25 07:27:35,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:27:35,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:27:35,995.995 INFO    ] No existing commands found in stream
[2026-08-25 07:27:41,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:27:41,023.023 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 07:27:43,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:27:43,569.569 INFO    ] Checking for system updates...
[2026-08-25 07:27:43,606.606 INFO    ] 200
[2026-08-25 07:27:43,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:43,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:27:43,670.670 INFO    ] No update needed
[2026-08-25 07:27:43,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 07:27:43,709.709 INFO    ] 200
[2026-08-25 07:27:43,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:43,756.756 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:27:43,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:27:43,817.817 INFO    ] No camera update needed
[2026-08-25 07:27:43,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:27:43,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:27:43,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:27:43,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:27:45,872.872 INFO    ] ================================================
[2026-08-25 07:27:45,887.887 INFO    ] Launching Daemon at Tue Aug 25 07:27:45 IST 2026
[2026-08-25 07:27:45,898.898 INFO    ] ================================================
[2026-08-25 07:27:46,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:27:46
[2026-08-25 07:27:47,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:27:47,529.529 INFO    ] Initializing speech engine...
[2026-08-25 07:27:47,537.537 INFO    ] 2026-08-25 07:27:47
[2026-08-25 07:27:47,827.827 INFO    ] 2026-08-25 07:27:47
[2026-08-25 07:27:47,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:27:48,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:27:48,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:27:48,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:27:48,298.298 INFO    ] time= 25/08/2026 07:27:48
[2026-08-25 07:27:48,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:27:48,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:27:48,494.494 INFO    ] No existing commands found in stream
[2026-08-25 07:27:53,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:27:53,520.520 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 07:27:55,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:27:55,473.473 INFO    ] Checking for system updates...
[2026-08-25 07:27:55,513.513 INFO    ] 200
[2026-08-25 07:27:55,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:55,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:27:55,580.580 INFO    ] No update needed
[2026-08-25 07:27:55,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 07:27:55,621.621 INFO    ] 200
[2026-08-25 07:27:55,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:27:55,670.670 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:27:55,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:27:55,722.722 INFO    ] No camera update needed
[2026-08-25 07:27:55,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:27:55,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:27:55,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:27:55,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:27:57,777.777 INFO    ] ================================================
[2026-08-25 07:27:57,793.793 INFO    ] Launching Daemon at Tue Aug 25 07:27:57 IST 2026
[2026-08-25 07:27:57,804.804 INFO    ] ================================================
[2026-08-25 07:27:58,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:27:58
[2026-08-25 07:27:58,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:27:59,263.263 INFO    ] Initializing speech engine...
[2026-08-25 07:27:59,270.270 INFO    ] 2026-08-25 07:27:59
[2026-08-25 07:27:59,530.530 INFO    ] 2026-08-25 07:27:59
[2026-08-25 07:27:59,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:27:59,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:27:59,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:27:59,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:27:59,994.994 INFO    ] time= 25/08/2026 07:27:59
[2026-08-25 07:28:00,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:28:00,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:28:00,226.226 INFO    ] No existing commands found in stream
[2026-08-25 07:28:05,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:28:05,243.243 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 07:28:07,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:28:07,227.227 INFO    ] Checking for system updates...
[2026-08-25 07:28:07,268.268 INFO    ] 200
[2026-08-25 07:28:07,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:07,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:28:07,327.327 INFO    ] No update needed
[2026-08-25 07:28:07,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 07:28:07,363.363 INFO    ] 200
[2026-08-25 07:28:07,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:07,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:28:07,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:28:07,473.473 INFO    ] No camera update needed
[2026-08-25 07:28:07,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:28:07,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:28:07,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:28:07,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:28:09,528.528 INFO    ] ================================================
[2026-08-25 07:28:09,544.544 INFO    ] Launching Daemon at Tue Aug 25 07:28:09 IST 2026
[2026-08-25 07:28:09,555.555 INFO    ] ================================================
[2026-08-25 07:28:10,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:28:10
[2026-08-25 07:28:10,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:28:10,999.999 INFO    ] Initializing speech engine...
[2026-08-25 07:28:11,005.005 INFO    ] 2026-08-25 07:28:11
[2026-08-25 07:28:11,301.301 INFO    ] 2026-08-25 07:28:11
[2026-08-25 07:28:11,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:28:11,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:28:11,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:28:11,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:28:11,680.680 INFO    ] time= 25/08/2026 07:28:11
[2026-08-25 07:28:11,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:28:11,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:28:11,808.808 INFO    ] No existing commands found in stream
[2026-08-25 07:28:16,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:28:16,824.824 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 07:28:17,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:28:17,638.638 INFO    ] Checking for system updates...
[2026-08-25 07:28:17,675.675 INFO    ] 200
[2026-08-25 07:28:17,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:17,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:28:17,741.741 INFO    ] No update needed
[2026-08-25 07:28:17,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 07:28:17,782.782 INFO    ] 200
[2026-08-25 07:28:17,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:17,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:28:17,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:28:17,887.887 INFO    ] No camera update needed
[2026-08-25 07:28:17,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:28:17,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:28:17,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:28:17,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:28:19,944.944 INFO    ] ================================================
[2026-08-25 07:28:19,960.960 INFO    ] Launching Daemon at Tue Aug 25 07:28:19 IST 2026
[2026-08-25 07:28:19,971.971 INFO    ] ================================================
[2026-08-25 07:28:20,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:28:20
[2026-08-25 07:28:21,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:28:21,392.392 INFO    ] Initializing speech engine...
[2026-08-25 07:28:21,399.399 INFO    ] 2026-08-25 07:28:21
[2026-08-25 07:28:21,656.656 INFO    ] 2026-08-25 07:28:21
[2026-08-25 07:28:21,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:28:21,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:28:21,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:28:22,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:28:22,082.082 INFO    ] time= 25/08/2026 07:28:22
[2026-08-25 07:28:22,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:28:22,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:28:22,336.336 INFO    ] No existing commands found in stream
[2026-08-25 07:28:27,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:28:27,363.363 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 07:28:30,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:28:30,365.365 INFO    ] Checking for system updates...
[2026-08-25 07:28:30,401.401 INFO    ] 200
[2026-08-25 07:28:30,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:30,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:28:30,460.460 INFO    ] No update needed
[2026-08-25 07:28:30,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 07:28:30,506.506 INFO    ] 200
[2026-08-25 07:28:30,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:30,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:28:30,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:28:30,609.609 INFO    ] No camera update needed
[2026-08-25 07:28:30,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:28:30,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:28:30,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:28:30,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:28:32,665.665 INFO    ] ================================================
[2026-08-25 07:28:32,681.681 INFO    ] Launching Daemon at Tue Aug 25 07:28:32 IST 2026
[2026-08-25 07:28:32,693.693 INFO    ] ================================================
[2026-08-25 07:28:33,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:28:33
[2026-08-25 07:28:33,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:28:34,189.189 INFO    ] Initializing speech engine...
[2026-08-25 07:28:34,208.208 INFO    ] 2026-08-25 07:28:34
[2026-08-25 07:28:34,475.475 INFO    ] 2026-08-25 07:28:34
[2026-08-25 07:28:34,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:28:34,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:28:34,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:28:34,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:28:34,995.995 INFO    ] time= 25/08/2026 07:28:34
[2026-08-25 07:28:35,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:28:35,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:28:35,184.184 INFO    ] No existing commands found in stream
[2026-08-25 07:28:40,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:28:40,216.216 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 07:28:41,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:28:41,232.232 INFO    ] Checking for system updates...
[2026-08-25 07:28:41,270.270 INFO    ] 200
[2026-08-25 07:28:41,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:41,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:28:41,331.331 INFO    ] No update needed
[2026-08-25 07:28:41,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 07:28:41,373.373 INFO    ] 200
[2026-08-25 07:28:41,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:41,417.417 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:28:41,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:28:41,476.476 INFO    ] No camera update needed
[2026-08-25 07:28:41,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:28:41,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:28:41,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:28:41,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:28:43,535.535 INFO    ] ================================================
[2026-08-25 07:28:43,550.550 INFO    ] Launching Daemon at Tue Aug 25 07:28:43 IST 2026
[2026-08-25 07:28:43,562.562 INFO    ] ================================================
[2026-08-25 07:28:44,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:28:44
[2026-08-25 07:28:44,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:28:45,004.004 INFO    ] Initializing speech engine...
[2026-08-25 07:28:45,013.013 INFO    ] 2026-08-25 07:28:45
[2026-08-25 07:28:45,309.309 INFO    ] 2026-08-25 07:28:45
[2026-08-25 07:28:45,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:28:45,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:28:45,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:28:45,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:28:45,707.707 INFO    ] time= 25/08/2026 07:28:45
[2026-08-25 07:28:45,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:28:45,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:28:45,816.816 INFO    ] No existing commands found in stream
[2026-08-25 07:28:50,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:28:50,832.832 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 07:28:53,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:28:53,678.678 INFO    ] Checking for system updates...
[2026-08-25 07:28:53,714.714 INFO    ] 200
[2026-08-25 07:28:53,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:53,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:28:53,773.773 INFO    ] No update needed
[2026-08-25 07:28:53,776.776 INFO    ] Checking for camera pi updates...
[2026-08-25 07:28:53,809.809 INFO    ] 200
[2026-08-25 07:28:53,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:28:53,852.852 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:28:53,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:28:53,913.913 INFO    ] No camera update needed
[2026-08-25 07:28:53,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:28:53,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:28:53,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:28:53,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:28:55,969.969 INFO    ] ================================================
[2026-08-25 07:28:55,985.985 INFO    ] Launching Daemon at Tue Aug 25 07:28:55 IST 2026
[2026-08-25 07:28:56,996.996 INFO    ] ================================================
[2026-08-25 07:28:56,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:28:56
[2026-08-25 07:28:57,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:28:57,631.631 INFO    ] Initializing speech engine...
[2026-08-25 07:28:57,645.645 INFO    ] 2026-08-25 07:28:57
[2026-08-25 07:28:57,930.930 INFO    ] 2026-08-25 07:28:57
[2026-08-25 07:28:57,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:28:58,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:28:58,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:28:58,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:28:58,480.480 INFO    ] time= 25/08/2026 07:28:58
[2026-08-25 07:28:58,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:28:58,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:28:58,664.664 INFO    ] No existing commands found in stream
[2026-08-25 07:29:03,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:29:03,690.690 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 07:29:05,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:29:05,901.901 INFO    ] Checking for system updates...
[2026-08-25 07:29:05,938.938 INFO    ] 200
[2026-08-25 07:29:05,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:05,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:29:05,997.997 INFO    ] No update needed
[2026-08-25 07:29:06,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 07:29:06,037.037 INFO    ] 200
[2026-08-25 07:29:06,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:06,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:29:06,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:29:06,135.135 INFO    ] No camera update needed
[2026-08-25 07:29:06,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:29:06,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:29:06,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:29:06,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:29:08,193.193 INFO    ] ================================================
[2026-08-25 07:29:08,210.210 INFO    ] Launching Daemon at Tue Aug 25 07:29:08 IST 2026
[2026-08-25 07:29:08,222.222 INFO    ] ================================================
[2026-08-25 07:29:08,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:29:08
[2026-08-25 07:29:09,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:29:09,787.787 INFO    ] Initializing speech engine...
[2026-08-25 07:29:09,800.800 INFO    ] 2026-08-25 07:29:09
[2026-08-25 07:29:10,102.102 INFO    ] 2026-08-25 07:29:10
[2026-08-25 07:29:10,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:29:10,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:29:10,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:29:10,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:29:10,543.543 INFO    ] time= 25/08/2026 07:29:10
[2026-08-25 07:29:10,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:29:10,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:29:10,765.765 INFO    ] No existing commands found in stream
[2026-08-25 07:29:15,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:29:15,791.791 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 07:29:19,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:29:19,560.560 INFO    ] Checking for system updates...
[2026-08-25 07:29:19,597.597 INFO    ] 200
[2026-08-25 07:29:19,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:19,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:29:19,657.657 INFO    ] No update needed
[2026-08-25 07:29:19,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 07:29:19,697.697 INFO    ] 200
[2026-08-25 07:29:19,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:19,745.745 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:29:19,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:29:19,895.895 INFO    ] No camera update needed
[2026-08-25 07:29:19,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:29:19,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:29:19,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:29:19,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:29:21,953.953 INFO    ] ================================================
[2026-08-25 07:29:21,968.968 INFO    ] Launching Daemon at Tue Aug 25 07:29:21 IST 2026
[2026-08-25 07:29:21,978.978 INFO    ] ================================================
[2026-08-25 07:29:22,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:29:22
[2026-08-25 07:29:23,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:29:23,407.407 INFO    ] Initializing speech engine...
[2026-08-25 07:29:23,422.422 INFO    ] 2026-08-25 07:29:23
[2026-08-25 07:29:23,704.704 INFO    ] 2026-08-25 07:29:23
[2026-08-25 07:29:23,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:29:23,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:29:23,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:29:24,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:29:24,113.113 INFO    ] time= 25/08/2026 07:29:24
[2026-08-25 07:29:24,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:29:24,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:29:24,203.203 INFO    ] No existing commands found in stream
[2026-08-25 07:29:29,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:29:29,236.236 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 07:29:33,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:29:33,228.228 INFO    ] Checking for system updates...
[2026-08-25 07:29:33,267.267 INFO    ] 200
[2026-08-25 07:29:33,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:33,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:29:33,323.323 INFO    ] No update needed
[2026-08-25 07:29:33,326.326 INFO    ] Checking for camera pi updates...
[2026-08-25 07:29:33,362.362 INFO    ] 200
[2026-08-25 07:29:33,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:33,404.404 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:29:33,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:29:33,469.469 INFO    ] No camera update needed
[2026-08-25 07:29:33,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:29:33,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:29:33,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:29:33,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:29:35,524.524 INFO    ] ================================================
[2026-08-25 07:29:35,539.539 INFO    ] Launching Daemon at Tue Aug 25 07:29:35 IST 2026
[2026-08-25 07:29:35,550.550 INFO    ] ================================================
[2026-08-25 07:29:36,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:29:36
[2026-08-25 07:29:36,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:29:36,981.981 INFO    ] Initializing speech engine...
[2026-08-25 07:29:36,990.990 INFO    ] 2026-08-25 07:29:36
[2026-08-25 07:29:37,243.243 INFO    ] 2026-08-25 07:29:37
[2026-08-25 07:29:37,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:29:37,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:29:37,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:29:37,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:29:37,713.713 INFO    ] time= 25/08/2026 07:29:37
[2026-08-25 07:29:37,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:29:37,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:29:37,942.942 INFO    ] No existing commands found in stream
[2026-08-25 07:29:42,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:29:42,962.962 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 07:29:45,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:29:45,718.718 INFO    ] Checking for system updates...
[2026-08-25 07:29:45,755.755 INFO    ] 200
[2026-08-25 07:29:45,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:45,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:29:45,819.819 INFO    ] No update needed
[2026-08-25 07:29:45,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 07:29:45,857.857 INFO    ] 200
[2026-08-25 07:29:45,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:45,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:29:45,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:29:45,952.952 INFO    ] No camera update needed
[2026-08-25 07:29:45,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:29:45,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:29:45,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:29:45,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:29:48,008.008 INFO    ] ================================================
[2026-08-25 07:29:48,024.024 INFO    ] Launching Daemon at Tue Aug 25 07:29:48 IST 2026
[2026-08-25 07:29:48,035.035 INFO    ] ================================================
[2026-08-25 07:29:48,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:29:48
[2026-08-25 07:29:49,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:29:49,453.453 INFO    ] Initializing speech engine...
[2026-08-25 07:29:49,461.461 INFO    ] 2026-08-25 07:29:49
[2026-08-25 07:29:49,753.753 INFO    ] 2026-08-25 07:29:49
[2026-08-25 07:29:49,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:29:49,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:29:49,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:29:50,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:29:50,131.131 INFO    ] time= 25/08/2026 07:29:50
[2026-08-25 07:29:50,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:29:50,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:29:50,253.253 INFO    ] No existing commands found in stream
[2026-08-25 07:29:55,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:29:55,269.269 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 07:29:58,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:29:58,555.555 INFO    ] Checking for system updates...
[2026-08-25 07:29:58,590.590 INFO    ] 200
[2026-08-25 07:29:58,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:58,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:29:58,648.648 INFO    ] No update needed
[2026-08-25 07:29:58,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 07:29:58,683.683 INFO    ] 200
[2026-08-25 07:29:58,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:29:58,730.730 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:29:58,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:29:58,783.783 INFO    ] No camera update needed
[2026-08-25 07:29:58,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:29:58,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:29:58,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:29:58,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:30:00,837.837 INFO    ] ================================================
[2026-08-25 07:30:00,852.852 INFO    ] Launching Daemon at Tue Aug 25 07:30:00 IST 2026
[2026-08-25 07:30:00,863.863 INFO    ] ================================================
[2026-08-25 07:30:01,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:30:01
[2026-08-25 07:30:02,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:30:03,143.143 INFO    ] Initializing speech engine...
[2026-08-25 07:30:03,147.147 INFO    ] 2026-08-25 07:30:03
[2026-08-25 07:30:03,495.495 INFO    ] 2026-08-25 07:30:03
[2026-08-25 07:30:03,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:30:03,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:30:03,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:30:03,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:30:03,833.833 INFO    ] time= 25/08/2026 07:30:03
[2026-08-25 07:30:03,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:30:03,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:30:03,974.974 INFO    ] No existing commands found in stream
[2026-08-25 07:30:09,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:30:09,007.007 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 07:30:12,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:30:12,944.944 INFO    ] Checking for system updates...
[2026-08-25 07:30:12,980.980 INFO    ] 200
[2026-08-25 07:30:12,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:13,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:30:13,036.036 INFO    ] No update needed
[2026-08-25 07:30:13,039.039 INFO    ] Checking for camera pi updates...
[2026-08-25 07:30:13,072.072 INFO    ] 200
[2026-08-25 07:30:13,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:13,115.115 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:30:13,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:30:13,174.174 INFO    ] No camera update needed
[2026-08-25 07:30:13,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:30:13,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:30:13,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:30:13,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:30:15,229.229 INFO    ] ================================================
[2026-08-25 07:30:15,245.245 INFO    ] Launching Daemon at Tue Aug 25 07:30:15 IST 2026
[2026-08-25 07:30:15,256.256 INFO    ] ================================================
[2026-08-25 07:30:15,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:30:15
[2026-08-25 07:30:16,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:30:16,859.859 INFO    ] Initializing speech engine...
[2026-08-25 07:30:16,872.872 INFO    ] 2026-08-25 07:30:16
[2026-08-25 07:30:17,140.140 INFO    ] 2026-08-25 07:30:17
[2026-08-25 07:30:17,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:30:17,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:30:17,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:30:17,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:30:17,634.634 INFO    ] time= 25/08/2026 07:30:17
[2026-08-25 07:30:17,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:30:17,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:30:17,823.823 INFO    ] No existing commands found in stream
[2026-08-25 07:30:22,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:30:22,848.848 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 07:30:25,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:30:25,085.085 INFO    ] Checking for system updates...
[2026-08-25 07:30:25,122.122 INFO    ] 200
[2026-08-25 07:30:25,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:25,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:30:25,191.191 INFO    ] No update needed
[2026-08-25 07:30:25,193.193 INFO    ] Checking for camera pi updates...
[2026-08-25 07:30:25,231.231 INFO    ] 200
[2026-08-25 07:30:25,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:25,277.277 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:30:25,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:30:25,329.329 INFO    ] No camera update needed
[2026-08-25 07:30:25,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:30:25,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:30:25,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:30:25,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:30:27,386.386 INFO    ] ================================================
[2026-08-25 07:30:27,402.402 INFO    ] Launching Daemon at Tue Aug 25 07:30:27 IST 2026
[2026-08-25 07:30:27,413.413 INFO    ] ================================================
[2026-08-25 07:30:27,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:30:27
[2026-08-25 07:30:28,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:30:28,836.836 INFO    ] Initializing speech engine...
[2026-08-25 07:30:28,845.845 INFO    ] 2026-08-25 07:30:28
[2026-08-25 07:30:29,089.089 INFO    ] 2026-08-25 07:30:29
[2026-08-25 07:30:29,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:30:29,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:30:29,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:30:29,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:30:29,535.535 INFO    ] time= 25/08/2026 07:30:29
[2026-08-25 07:30:29,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:30:29,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:30:29,791.791 INFO    ] No existing commands found in stream
[2026-08-25 07:30:34,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:30:34,810.810 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 07:30:36,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:30:36,439.439 INFO    ] Checking for system updates...
[2026-08-25 07:30:36,478.478 INFO    ] 200
[2026-08-25 07:30:36,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:36,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:30:36,535.535 INFO    ] No update needed
[2026-08-25 07:30:36,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 07:30:36,571.571 INFO    ] 200
[2026-08-25 07:30:36,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:36,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:30:36,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:30:36,665.665 INFO    ] No camera update needed
[2026-08-25 07:30:36,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:30:36,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:30:36,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:30:36,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:30:38,718.718 INFO    ] ================================================
[2026-08-25 07:30:38,734.734 INFO    ] Launching Daemon at Tue Aug 25 07:30:38 IST 2026
[2026-08-25 07:30:38,745.745 INFO    ] ================================================
[2026-08-25 07:30:39,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:30:39
[2026-08-25 07:30:40,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:30:40,370.370 INFO    ] Initializing speech engine...
[2026-08-25 07:30:40,382.382 INFO    ] 2026-08-25 07:30:40
[2026-08-25 07:30:40,653.653 INFO    ] 2026-08-25 07:30:40
[2026-08-25 07:30:40,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:30:40,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:30:40,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:30:41,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:30:41,088.088 INFO    ] time= 25/08/2026 07:30:41
[2026-08-25 07:30:41,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:30:41,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:30:41,323.323 INFO    ] No existing commands found in stream
[2026-08-25 07:30:46,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:30:46,341.341 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 07:30:49,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:30:49,006.006 INFO    ] Checking for system updates...
[2026-08-25 07:30:49,046.046 INFO    ] 200
[2026-08-25 07:30:49,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:49,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:30:49,110.110 INFO    ] No update needed
[2026-08-25 07:30:49,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 07:30:49,150.150 INFO    ] 200
[2026-08-25 07:30:49,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:30:49,194.194 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:30:49,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:30:49,247.247 INFO    ] No camera update needed
[2026-08-25 07:30:49,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:30:49,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:30:49,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:30:49,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:30:51,305.305 INFO    ] ================================================
[2026-08-25 07:30:51,320.320 INFO    ] Launching Daemon at Tue Aug 25 07:30:51 IST 2026
[2026-08-25 07:30:51,332.332 INFO    ] ================================================
[2026-08-25 07:30:51,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:30:51
[2026-08-25 07:30:52,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:30:52,750.750 INFO    ] Initializing speech engine...
[2026-08-25 07:30:52,759.759 INFO    ] 2026-08-25 07:30:52
[2026-08-25 07:30:53,012.012 INFO    ] 2026-08-25 07:30:53
[2026-08-25 07:30:53,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:30:53,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:30:53,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:30:53,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:30:53,461.461 INFO    ] time= 25/08/2026 07:30:53
[2026-08-25 07:30:53,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:30:53,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:30:53,698.698 INFO    ] No existing commands found in stream
[2026-08-25 07:30:58,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:30:58,726.726 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 07:31:02,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:31:02,450.450 INFO    ] Checking for system updates...
[2026-08-25 07:31:02,497.497 INFO    ] 200
[2026-08-25 07:31:02,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:02,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:02,565.565 INFO    ] No update needed
[2026-08-25 07:31:02,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 07:31:02,605.605 INFO    ] 200
[2026-08-25 07:31:02,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:02,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:31:02,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:02,731.731 INFO    ] No camera update needed
[2026-08-25 07:31:02,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:31:02,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:31:02,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:31:02,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:31:04,792.792 INFO    ] ================================================
[2026-08-25 07:31:04,808.808 INFO    ] Launching Daemon at Tue Aug 25 07:31:04 IST 2026
[2026-08-25 07:31:04,819.819 INFO    ] ================================================
[2026-08-25 07:31:05,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:31:05
[2026-08-25 07:31:05,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:31:06,235.235 INFO    ] Initializing speech engine...
[2026-08-25 07:31:06,244.244 INFO    ] 2026-08-25 07:31:06
[2026-08-25 07:31:06,512.512 INFO    ] 2026-08-25 07:31:06
[2026-08-25 07:31:06,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:31:06,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:31:06,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:31:06,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:31:07,002.002 INFO    ] time= 25/08/2026 07:31:06
[2026-08-25 07:31:07,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:31:07,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:31:07,205.205 INFO    ] No existing commands found in stream
[2026-08-25 07:31:12,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:31:12,230.230 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 07:31:16,624.624 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:31:16,626.626 INFO    ] Checking for system updates...
[2026-08-25 07:31:16,665.665 INFO    ] 200
[2026-08-25 07:31:16,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:16,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:16,728.728 INFO    ] No update needed
[2026-08-25 07:31:16,731.731 INFO    ] Checking for camera pi updates...
[2026-08-25 07:31:16,767.767 INFO    ] 200
[2026-08-25 07:31:16,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:16,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:31:16,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:16,856.856 INFO    ] No camera update needed
[2026-08-25 07:31:16,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:31:16,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:31:16,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:31:16,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:31:18,912.912 INFO    ] ================================================
[2026-08-25 07:31:18,927.927 INFO    ] Launching Daemon at Tue Aug 25 07:31:18 IST 2026
[2026-08-25 07:31:18,937.937 INFO    ] ================================================
[2026-08-25 07:31:19,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:31:19
[2026-08-25 07:31:20,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:31:20,339.339 INFO    ] Initializing speech engine...
[2026-08-25 07:31:20,344.344 INFO    ] 2026-08-25 07:31:20
[2026-08-25 07:31:20,637.637 INFO    ] 2026-08-25 07:31:20
[2026-08-25 07:31:20,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:31:20,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:31:20,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:31:21,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:31:21,038.038 INFO    ] time= 25/08/2026 07:31:21
[2026-08-25 07:31:21,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:31:21,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:31:21,219.219 INFO    ] No existing commands found in stream
[2026-08-25 07:31:26,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:31:26,248.248 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 07:31:28,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:31:28,816.816 INFO    ] Checking for system updates...
[2026-08-25 07:31:28,852.852 INFO    ] 200
[2026-08-25 07:31:28,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:28,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:28,911.911 INFO    ] No update needed
[2026-08-25 07:31:28,913.913 INFO    ] Checking for camera pi updates...
[2026-08-25 07:31:28,948.948 INFO    ] 200
[2026-08-25 07:31:28,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:28,991.991 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:31:29,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:29,140.140 INFO    ] No camera update needed
[2026-08-25 07:31:29,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:31:29,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:31:29,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:31:29,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:31:31,196.196 INFO    ] ================================================
[2026-08-25 07:31:31,211.211 INFO    ] Launching Daemon at Tue Aug 25 07:31:31 IST 2026
[2026-08-25 07:31:31,221.221 INFO    ] ================================================
[2026-08-25 07:31:31,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:31:31
[2026-08-25 07:31:32,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:31:32,706.706 INFO    ] Initializing speech engine...
[2026-08-25 07:31:32,716.716 INFO    ] 2026-08-25 07:31:32
[2026-08-25 07:31:33,013.013 INFO    ] 2026-08-25 07:31:33
[2026-08-25 07:31:33,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:31:33,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:31:33,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:31:33,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:31:33,420.420 INFO    ] time= 25/08/2026 07:31:33
[2026-08-25 07:31:33,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:31:33,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:31:33,593.593 INFO    ] No existing commands found in stream
[2026-08-25 07:31:38,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:31:38,620.620 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 07:31:40,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:31:40,984.984 INFO    ] Checking for system updates...
[2026-08-25 07:31:41,021.021 INFO    ] 200
[2026-08-25 07:31:41,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:41,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:41,081.081 INFO    ] No update needed
[2026-08-25 07:31:41,083.083 INFO    ] Checking for camera pi updates...
[2026-08-25 07:31:41,127.127 INFO    ] 200
[2026-08-25 07:31:41,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:41,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:31:41,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:31:41,243.243 INFO    ] No camera update needed
[2026-08-25 07:31:41,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:31:41,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:31:41,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:31:41,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:31:43,298.298 INFO    ] ================================================
[2026-08-25 07:31:43,313.313 INFO    ] Launching Daemon at Tue Aug 25 07:31:43 IST 2026
[2026-08-25 07:31:43,323.323 INFO    ] ================================================
[2026-08-25 07:31:43,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:31:43
[2026-08-25 07:31:44,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:31:44,742.742 INFO    ] Initializing speech engine...
[2026-08-25 07:31:44,749.749 INFO    ] 2026-08-25 07:31:44
[2026-08-25 07:31:45,008.008 INFO    ] 2026-08-25 07:31:45
[2026-08-25 07:31:45,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:31:45,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:31:45,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:31:45,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:31:45,488.488 INFO    ] time= 25/08/2026 07:31:45
[2026-08-25 07:31:45,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:31:45,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:31:45,701.701 INFO    ] No existing commands found in stream
[2026-08-25 07:31:50,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:31:50,718.718 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 07:31:53,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:31:53,448.448 INFO    ] Checking for system updates...
[2026-08-25 07:31:53,488.488 INFO    ] 200
[2026-08-25 07:31:53,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:53,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:31:53,555.555 INFO    ] No update needed
[2026-08-25 07:31:53,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 07:31:53,596.596 INFO    ] 200
[2026-08-25 07:31:53,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:31:53,643.643 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:31:53,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:31:53,690.690 INFO    ] No camera update needed
[2026-08-25 07:31:53,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:31:53,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:31:53,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:31:53,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:31:55,750.750 INFO    ] ================================================
[2026-08-25 07:31:55,765.765 INFO    ] Launching Daemon at Tue Aug 25 07:31:55 IST 2026
[2026-08-25 07:31:55,776.776 INFO    ] ================================================
[2026-08-25 07:31:58,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:31:56
[2026-08-25 07:31:58,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:31:59,109.109 INFO    ] Initializing speech engine...
[2026-08-25 07:31:59,123.123 INFO    ] 2026-08-25 07:31:59
[2026-08-25 07:31:59,400.400 INFO    ] 2026-08-25 07:31:59
[2026-08-25 07:31:59,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:31:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:31:59,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:31:59,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:31:59,878.878 INFO    ] time= 25/08/2026 07:31:59
[2026-08-25 07:31:59,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:31:59,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:32:00,077.077 INFO    ] No existing commands found in stream
[2026-08-25 07:32:05,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:32:05,105.105 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 07:32:06,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:32:06,917.917 INFO    ] Checking for system updates...
[2026-08-25 07:32:06,952.952 INFO    ] 200
[2026-08-25 07:32:06,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:07,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:32:07,014.014 INFO    ] No update needed
[2026-08-25 07:32:07,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 07:32:07,051.051 INFO    ] 200
[2026-08-25 07:32:07,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:07,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:32:07,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:32:07,147.147 INFO    ] No camera update needed
[2026-08-25 07:32:07,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:32:07,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:32:07,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:32:07,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:32:09,200.200 INFO    ] ================================================
[2026-08-25 07:32:09,216.216 INFO    ] Launching Daemon at Tue Aug 25 07:32:09 IST 2026
[2026-08-25 07:32:09,226.226 INFO    ] ================================================
[2026-08-25 07:32:09,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:32:09
[2026-08-25 07:32:10,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:32:10,630.630 INFO    ] Initializing speech engine...
[2026-08-25 07:32:10,646.646 INFO    ] 2026-08-25 07:32:10
[2026-08-25 07:32:10,927.927 INFO    ] 2026-08-25 07:32:10
[2026-08-25 07:32:10,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:32:11,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:32:11,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:32:11,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:32:11,532.532 INFO    ] time= 25/08/2026 07:32:11
[2026-08-25 07:32:11,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:32:11,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:32:11,685.685 INFO    ] No existing commands found in stream
[2026-08-25 07:32:16,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:32:16,713.713 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 07:32:19,360.360 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:32:19,363.363 INFO    ] Checking for system updates...
[2026-08-25 07:32:19,401.401 INFO    ] 200
[2026-08-25 07:32:19,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:19,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:32:19,459.459 INFO    ] No update needed
[2026-08-25 07:32:19,461.461 INFO    ] Checking for camera pi updates...
[2026-08-25 07:32:19,495.495 INFO    ] 200
[2026-08-25 07:32:19,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:19,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:32:19,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:32:19,587.587 INFO    ] No camera update needed
[2026-08-25 07:32:19,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:32:19,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:32:19,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:32:19,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:32:21,642.642 INFO    ] ================================================
[2026-08-25 07:32:21,657.657 INFO    ] Launching Daemon at Tue Aug 25 07:32:21 IST 2026
[2026-08-25 07:32:21,668.668 INFO    ] ================================================
[2026-08-25 07:32:22,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:32:22
[2026-08-25 07:32:22,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:32:23,086.086 INFO    ] Initializing speech engine...
[2026-08-25 07:32:23,102.102 INFO    ] 2026-08-25 07:32:23
[2026-08-25 07:32:23,374.374 INFO    ] 2026-08-25 07:32:23
[2026-08-25 07:32:23,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:32:23,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:32:23,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:32:23,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:32:23,869.869 INFO    ] time= 25/08/2026 07:32:23
[2026-08-25 07:32:23,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:32:23,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:32:24,079.079 INFO    ] No existing commands found in stream
[2026-08-25 07:32:29,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:32:29,100.100 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 07:32:32,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:32:32,134.134 INFO    ] Checking for system updates...
[2026-08-25 07:32:32,172.172 INFO    ] 200
[2026-08-25 07:32:32,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:32,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:32:32,235.235 INFO    ] No update needed
[2026-08-25 07:32:32,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 07:32:32,276.276 INFO    ] 200
[2026-08-25 07:32:32,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:32,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:32:32,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:32:32,376.376 INFO    ] No camera update needed
[2026-08-25 07:32:32,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:32:32,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:32:32,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:32:32,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:32:34,432.432 INFO    ] ================================================
[2026-08-25 07:32:34,447.447 INFO    ] Launching Daemon at Tue Aug 25 07:32:34 IST 2026
[2026-08-25 07:32:34,458.458 INFO    ] ================================================
[2026-08-25 07:32:35,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:32:35
[2026-08-25 07:32:35,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:32:35,923.923 INFO    ] Initializing speech engine...
[2026-08-25 07:32:35,938.938 INFO    ] 2026-08-25 07:32:35
[2026-08-25 07:32:36,194.194 INFO    ] 2026-08-25 07:32:36
[2026-08-25 07:32:36,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:32:36,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:32:36,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:32:36,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:32:36,569.569 INFO    ] time= 25/08/2026 07:32:36
[2026-08-25 07:32:36,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:32:36,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:32:36,758.758 INFO    ] No existing commands found in stream
[2026-08-25 07:32:41,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:32:41,783.783 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 07:32:45,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:32:45,594.594 INFO    ] Checking for system updates...
[2026-08-25 07:32:45,632.632 INFO    ] 200
[2026-08-25 07:32:45,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:45,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:32:45,692.692 INFO    ] No update needed
[2026-08-25 07:32:45,694.694 INFO    ] Checking for camera pi updates...
[2026-08-25 07:32:45,728.728 INFO    ] 200
[2026-08-25 07:32:45,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:45,775.775 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:32:45,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:32:45,829.829 INFO    ] No camera update needed
[2026-08-25 07:32:45,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:32:45,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:32:45,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:32:45,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:32:47,885.885 INFO    ] ================================================
[2026-08-25 07:32:47,900.900 INFO    ] Launching Daemon at Tue Aug 25 07:32:47 IST 2026
[2026-08-25 07:32:47,910.910 INFO    ] ================================================
[2026-08-25 07:32:48,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:32:48
[2026-08-25 07:32:49,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:32:49,463.463 INFO    ] Initializing speech engine...
[2026-08-25 07:32:49,475.475 INFO    ] 2026-08-25 07:32:49
[2026-08-25 07:32:49,779.779 INFO    ] 2026-08-25 07:32:49
[2026-08-25 07:32:49,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:32:50,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:32:50,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:32:50,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:32:50,286.286 INFO    ] time= 25/08/2026 07:32:50
[2026-08-25 07:32:50,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:32:50,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:32:50,425.425 INFO    ] No existing commands found in stream
[2026-08-25 07:32:55,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:32:55,452.452 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 07:32:57,319.319 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:32:57,328.328 INFO    ] Checking for system updates...
[2026-08-25 07:32:57,365.365 INFO    ] 200
[2026-08-25 07:32:57,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:57,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:32:57,422.422 INFO    ] No update needed
[2026-08-25 07:32:57,424.424 INFO    ] Checking for camera pi updates...
[2026-08-25 07:32:57,458.458 INFO    ] 200
[2026-08-25 07:32:57,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:32:57,500.500 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:32:57,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:32:57,558.558 INFO    ] No camera update needed
[2026-08-25 07:32:57,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:32:57,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:32:57,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:32:57,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:32:59,612.612 INFO    ] ================================================
[2026-08-25 07:32:59,628.628 INFO    ] Launching Daemon at Tue Aug 25 07:32:59 IST 2026
[2026-08-25 07:32:59,638.638 INFO    ] ================================================
[2026-08-25 07:33:00,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:33:00
[2026-08-25 07:33:00,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:33:01,248.248 INFO    ] Initializing speech engine...
[2026-08-25 07:33:01,260.260 INFO    ] 2026-08-25 07:33:01
[2026-08-25 07:33:01,610.610 INFO    ] 2026-08-25 07:33:01
[2026-08-25 07:33:01,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:33:01,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:33:01,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:33:02,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:33:02,092.092 INFO    ] time= 25/08/2026 07:33:02
[2026-08-25 07:33:02,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:33:02,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:33:02,274.274 INFO    ] No existing commands found in stream
[2026-08-25 07:33:07,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:33:07,302.302 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 07:33:09,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:33:09,008.008 INFO    ] Checking for system updates...
[2026-08-25 07:33:09,044.044 INFO    ] 200
[2026-08-25 07:33:09,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:09,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:33:09,101.101 INFO    ] No update needed
[2026-08-25 07:33:09,103.103 INFO    ] Checking for camera pi updates...
[2026-08-25 07:33:09,137.137 INFO    ] 200
[2026-08-25 07:33:09,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:09,180.180 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:33:09,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:33:09,227.227 INFO    ] No camera update needed
[2026-08-25 07:33:09,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:33:09,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:33:09,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:33:09,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:33:11,282.282 INFO    ] ================================================
[2026-08-25 07:33:11,297.297 INFO    ] Launching Daemon at Tue Aug 25 07:33:11 IST 2026
[2026-08-25 07:33:11,308.308 INFO    ] ================================================
[2026-08-25 07:33:11,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:33:11
[2026-08-25 07:33:12,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:33:12,905.905 INFO    ] Initializing speech engine...
[2026-08-25 07:33:12,912.912 INFO    ] 2026-08-25 07:33:12
[2026-08-25 07:33:13,199.199 INFO    ] 2026-08-25 07:33:13
[2026-08-25 07:33:13,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:33:13,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:33:13,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:33:13,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:33:13,731.731 INFO    ] time= 25/08/2026 07:33:13
[2026-08-25 07:33:13,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:33:13,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:33:13,888.888 INFO    ] No existing commands found in stream
[2026-08-25 07:33:18,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:33:18,924.924 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 07:33:19,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:33:19,984.984 INFO    ] Checking for system updates...
[2026-08-25 07:33:20,022.022 INFO    ] 200
[2026-08-25 07:33:20,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:20,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:33:20,082.082 INFO    ] No update needed
[2026-08-25 07:33:20,084.084 INFO    ] Checking for camera pi updates...
[2026-08-25 07:33:20,119.119 INFO    ] 200
[2026-08-25 07:33:20,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:20,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:33:20,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:33:20,225.225 INFO    ] No camera update needed
[2026-08-25 07:33:20,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:33:20,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:33:20,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:33:20,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:33:22,282.282 INFO    ] ================================================
[2026-08-25 07:33:22,298.298 INFO    ] Launching Daemon at Tue Aug 25 07:33:22 IST 2026
[2026-08-25 07:33:22,310.310 INFO    ] ================================================
[2026-08-25 07:33:22,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:33:22
[2026-08-25 07:33:23,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:33:23,803.803 INFO    ] Initializing speech engine...
[2026-08-25 07:33:23,812.812 INFO    ] 2026-08-25 07:33:23
[2026-08-25 07:33:24,100.100 INFO    ] 2026-08-25 07:33:24
[2026-08-25 07:33:24,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:33:24,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:33:24,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:33:24,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:33:24,479.479 INFO    ] time= 25/08/2026 07:33:24
[2026-08-25 07:33:24,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:33:24,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:33:24,604.604 INFO    ] No existing commands found in stream
[2026-08-25 07:33:29,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:33:29,620.620 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 07:33:30,276.276 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:33:30,278.278 INFO    ] Checking for system updates...
[2026-08-25 07:33:30,314.314 INFO    ] 200
[2026-08-25 07:33:30,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:30,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:33:30,378.378 INFO    ] No update needed
[2026-08-25 07:33:30,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 07:33:30,414.414 INFO    ] 200
[2026-08-25 07:33:30,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:30,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:33:30,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:33:30,514.514 INFO    ] No camera update needed
[2026-08-25 07:33:30,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:33:30,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:33:30,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:33:30,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:33:32,573.573 INFO    ] ================================================
[2026-08-25 07:33:32,589.589 INFO    ] Launching Daemon at Tue Aug 25 07:33:32 IST 2026
[2026-08-25 07:33:32,602.602 INFO    ] ================================================
[2026-08-25 07:33:33,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:33:33
[2026-08-25 07:33:33,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:33:34,075.075 INFO    ] Initializing speech engine...
[2026-08-25 07:33:34,094.094 INFO    ] 2026-08-25 07:33:34
[2026-08-25 07:33:34,363.363 INFO    ] 2026-08-25 07:33:34
[2026-08-25 07:33:34,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:33:34,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:33:34,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:33:34,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:33:34,784.784 INFO    ] time= 25/08/2026 07:33:34
[2026-08-25 07:33:34,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:33:34,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:33:34,869.869 INFO    ] No existing commands found in stream
[2026-08-25 07:33:39,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:33:39,885.885 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 07:33:43,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:33:43,933.933 INFO    ] Checking for system updates...
[2026-08-25 07:33:43,969.969 INFO    ] 200
[2026-08-25 07:33:43,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:44,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:33:44,028.028 INFO    ] No update needed
[2026-08-25 07:33:44,030.030 INFO    ] Checking for camera pi updates...
[2026-08-25 07:33:44,075.075 INFO    ] 200
[2026-08-25 07:33:44,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:44,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:33:44,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:33:44,182.182 INFO    ] No camera update needed
[2026-08-25 07:33:44,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:33:44,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:33:44,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:33:44,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:33:46,236.236 INFO    ] ================================================
[2026-08-25 07:33:46,252.252 INFO    ] Launching Daemon at Tue Aug 25 07:33:46 IST 2026
[2026-08-25 07:33:46,263.263 INFO    ] ================================================
[2026-08-25 07:33:46,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:33:46
[2026-08-25 07:33:47,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:33:47,729.729 INFO    ] Initializing speech engine...
[2026-08-25 07:33:47,739.739 INFO    ] 2026-08-25 07:33:47
[2026-08-25 07:33:47,989.989 INFO    ] 2026-08-25 07:33:47
[2026-08-25 07:33:48,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:33:48,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:33:48,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:33:48,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:33:48,476.476 INFO    ] time= 25/08/2026 07:33:48
[2026-08-25 07:33:48,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:33:48,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:33:48,685.685 INFO    ] No existing commands found in stream
[2026-08-25 07:33:53,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:33:53,713.713 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 07:33:54,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:33:54,856.856 INFO    ] Checking for system updates...
[2026-08-25 07:33:54,893.893 INFO    ] 200
[2026-08-25 07:33:54,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:54,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:33:54,952.952 INFO    ] No update needed
[2026-08-25 07:33:54,954.954 INFO    ] Checking for camera pi updates...
[2026-08-25 07:33:54,990.990 INFO    ] 200
[2026-08-25 07:33:54,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:33:55,041.041 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:33:55,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:33:55,100.100 INFO    ] No camera update needed
[2026-08-25 07:33:55,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:33:55,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:33:55,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:33:55,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:33:57,154.154 INFO    ] ================================================
[2026-08-25 07:33:57,170.170 INFO    ] Launching Daemon at Tue Aug 25 07:33:57 IST 2026
[2026-08-25 07:33:57,181.181 INFO    ] ================================================
[2026-08-25 07:33:57,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:33:57
[2026-08-25 07:33:58,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:33:58,607.607 INFO    ] Initializing speech engine...
[2026-08-25 07:33:58,617.617 INFO    ] 2026-08-25 07:33:58
[2026-08-25 07:33:58,865.865 INFO    ] 2026-08-25 07:33:58
[2026-08-25 07:33:58,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:33:59,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:33:59,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:33:59,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:33:59,242.242 INFO    ] time= 25/08/2026 07:33:59
[2026-08-25 07:33:59,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:33:59,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:33:59,440.440 INFO    ] No existing commands found in stream
[2026-08-25 07:34:04,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:34:04,458.458 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 07:34:07,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:34:07,776.776 INFO    ] Checking for system updates...
[2026-08-25 07:34:07,815.815 INFO    ] 200
[2026-08-25 07:34:07,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:07,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:34:07,871.871 INFO    ] No update needed
[2026-08-25 07:34:07,873.873 INFO    ] Checking for camera pi updates...
[2026-08-25 07:34:07,910.910 INFO    ] 200
[2026-08-25 07:34:07,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:07,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:34:08,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:34:08,006.006 INFO    ] No camera update needed
[2026-08-25 07:34:08,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:34:08,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:34:08,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:34:08,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:34:10,061.061 INFO    ] ================================================
[2026-08-25 07:34:10,077.077 INFO    ] Launching Daemon at Tue Aug 25 07:34:10 IST 2026
[2026-08-25 07:34:10,088.088 INFO    ] ================================================
[2026-08-25 07:34:10,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:34:10
[2026-08-25 07:34:11,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:34:11,505.505 INFO    ] Initializing speech engine...
[2026-08-25 07:34:11,514.514 INFO    ] 2026-08-25 07:34:11
[2026-08-25 07:34:11,760.760 INFO    ] 2026-08-25 07:34:11
[2026-08-25 07:34:11,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:34:11,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:34:12,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:34:12,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:34:12,224.224 INFO    ] time= 25/08/2026 07:34:12
[2026-08-25 07:34:12,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:34:12,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:34:12,449.449 INFO    ] No existing commands found in stream
[2026-08-25 07:34:17,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:34:17,479.479 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 07:34:19,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:34:19,103.103 INFO    ] Checking for system updates...
[2026-08-25 07:34:19,140.140 INFO    ] 200
[2026-08-25 07:34:19,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:19,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:34:19,196.196 INFO    ] No update needed
[2026-08-25 07:34:19,198.198 INFO    ] Checking for camera pi updates...
[2026-08-25 07:34:19,232.232 INFO    ] 200
[2026-08-25 07:34:19,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:19,275.275 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:34:19,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:34:19,337.337 INFO    ] No camera update needed
[2026-08-25 07:34:19,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:34:19,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:34:19,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:34:19,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:34:21,394.394 INFO    ] ================================================
[2026-08-25 07:34:21,409.409 INFO    ] Launching Daemon at Tue Aug 25 07:34:21 IST 2026
[2026-08-25 07:34:21,420.420 INFO    ] ================================================
[2026-08-25 07:34:22,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:34:22
[2026-08-25 07:34:22,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:34:23,043.043 INFO    ] Initializing speech engine...
[2026-08-25 07:34:23,054.054 INFO    ] 2026-08-25 07:34:23
[2026-08-25 07:34:23,364.364 INFO    ] 2026-08-25 07:34:23
[2026-08-25 07:34:23,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:34:23,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:34:23,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:34:23,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:34:23,867.867 INFO    ] time= 25/08/2026 07:34:23
[2026-08-25 07:34:23,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:34:23,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:34:24,028.028 INFO    ] No existing commands found in stream
[2026-08-25 07:34:29,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:34:29,066.066 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 07:34:31,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:34:31,217.217 INFO    ] Checking for system updates...
[2026-08-25 07:34:31,253.253 INFO    ] 200
[2026-08-25 07:34:31,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:31,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:34:31,311.311 INFO    ] No update needed
[2026-08-25 07:34:31,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 07:34:31,353.353 INFO    ] 200
[2026-08-25 07:34:31,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:31,414.414 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:34:31,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:34:31,473.473 INFO    ] No camera update needed
[2026-08-25 07:34:31,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:34:31,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:34:31,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:34:31,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:34:33,529.529 INFO    ] ================================================
[2026-08-25 07:34:33,545.545 INFO    ] Launching Daemon at Tue Aug 25 07:34:33 IST 2026
[2026-08-25 07:34:33,556.556 INFO    ] ================================================
[2026-08-25 07:34:34,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:34:34
[2026-08-25 07:34:34,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:34:34,982.982 INFO    ] Initializing speech engine...
[2026-08-25 07:34:34,991.991 INFO    ] 2026-08-25 07:34:34
[2026-08-25 07:34:35,238.238 INFO    ] 2026-08-25 07:34:35
[2026-08-25 07:34:35,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:34:35,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:34:35,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:34:35,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:34:35,731.731 INFO    ] time= 25/08/2026 07:34:35
[2026-08-25 07:34:35,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:34:35,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:34:35,942.942 INFO    ] No existing commands found in stream
[2026-08-25 07:34:40,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:34:40,960.960 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 07:34:44,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:34:44,934.934 INFO    ] Checking for system updates...
[2026-08-25 07:34:44,970.970 INFO    ] 200
[2026-08-25 07:34:44,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:45,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:34:45,037.037 INFO    ] No update needed
[2026-08-25 07:34:45,039.039 INFO    ] Checking for camera pi updates...
[2026-08-25 07:34:45,072.072 INFO    ] 200
[2026-08-25 07:34:45,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:45,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:34:45,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:34:45,172.172 INFO    ] No camera update needed
[2026-08-25 07:34:45,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:34:45,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:34:45,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:34:45,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:34:47,226.226 INFO    ] ================================================
[2026-08-25 07:34:47,241.241 INFO    ] Launching Daemon at Tue Aug 25 07:34:47 IST 2026
[2026-08-25 07:34:47,251.251 INFO    ] ================================================
[2026-08-25 07:34:47,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:34:47
[2026-08-25 07:34:48,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:34:48,739.739 INFO    ] Initializing speech engine...
[2026-08-25 07:34:48,749.749 INFO    ] 2026-08-25 07:34:48
[2026-08-25 07:34:48,994.994 INFO    ] 2026-08-25 07:34:48
[2026-08-25 07:34:49,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:34:49,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:34:49,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:34:49,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:34:49,470.470 INFO    ] time= 25/08/2026 07:34:49
[2026-08-25 07:34:49,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:34:49,556.556 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:34:49,690.690 INFO    ] No existing commands found in stream
[2026-08-25 07:34:54,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:34:54,715.715 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 07:34:58,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:34:58,545.545 INFO    ] Checking for system updates...
[2026-08-25 07:34:58,580.580 INFO    ] 200
[2026-08-25 07:34:58,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:58,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:34:58,642.642 INFO    ] No update needed
[2026-08-25 07:34:58,645.645 INFO    ] Checking for camera pi updates...
[2026-08-25 07:34:58,679.679 INFO    ] 200
[2026-08-25 07:34:58,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:34:58,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:34:58,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:34:58,767.767 INFO    ] No camera update needed
[2026-08-25 07:34:58,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:34:58,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:34:58,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:34:58,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:35:00,822.822 INFO    ] ================================================
[2026-08-25 07:35:00,837.837 INFO    ] Launching Daemon at Tue Aug 25 07:35:00 IST 2026
[2026-08-25 07:35:00,848.848 INFO    ] ================================================
[2026-08-25 07:35:01,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:35:01
[2026-08-25 07:35:02,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:35:02,779.779 INFO    ] Initializing speech engine...
[2026-08-25 07:35:02,789.789 INFO    ] 2026-08-25 07:35:02
[2026-08-25 07:35:03,093.093 INFO    ] 2026-08-25 07:35:03
[2026-08-25 07:35:03,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:35:03,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:35:03,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:35:03,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:35:03,468.468 INFO    ] time= 25/08/2026 07:35:03
[2026-08-25 07:35:03,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:35:03,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:35:03,605.605 INFO    ] No existing commands found in stream
[2026-08-25 07:35:08,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:35:08,620.620 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 07:35:11,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:35:11,904.904 INFO    ] Checking for system updates...
[2026-08-25 07:35:11,940.940 INFO    ] 200
[2026-08-25 07:35:11,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:12,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:35:12,005.005 INFO    ] No update needed
[2026-08-25 07:35:12,008.008 INFO    ] Checking for camera pi updates...
[2026-08-25 07:35:12,042.042 INFO    ] 200
[2026-08-25 07:35:12,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:12,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:35:12,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:35:12,136.136 INFO    ] No camera update needed
[2026-08-25 07:35:12,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:35:12,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:35:12,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:35:12,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:35:14,194.194 INFO    ] ================================================
[2026-08-25 07:35:14,209.209 INFO    ] Launching Daemon at Tue Aug 25 07:35:14 IST 2026
[2026-08-25 07:35:14,219.219 INFO    ] ================================================
[2026-08-25 07:35:14,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:35:14
[2026-08-25 07:35:15,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:35:15,667.667 INFO    ] Initializing speech engine...
[2026-08-25 07:35:15,688.688 INFO    ] 2026-08-25 07:35:15
[2026-08-25 07:35:15,955.955 INFO    ] 2026-08-25 07:35:15
[2026-08-25 07:35:15,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:35:16,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:35:16,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:35:16,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:35:16,370.370 INFO    ] time= 25/08/2026 07:35:16
[2026-08-25 07:35:16,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:35:16,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:35:16,565.565 INFO    ] No existing commands found in stream
[2026-08-25 07:35:21,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:35:21,599.599 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 07:35:23,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:35:23,435.435 INFO    ] Checking for system updates...
[2026-08-25 07:35:23,474.474 INFO    ] 200
[2026-08-25 07:35:23,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:23,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:35:23,537.537 INFO    ] No update needed
[2026-08-25 07:35:23,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 07:35:23,573.573 INFO    ] 200
[2026-08-25 07:35:23,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:23,615.615 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:35:23,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:35:23,664.664 INFO    ] No camera update needed
[2026-08-25 07:35:23,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:35:23,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:35:23,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:35:23,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:35:25,718.718 INFO    ] ================================================
[2026-08-25 07:35:25,733.733 INFO    ] Launching Daemon at Tue Aug 25 07:35:25 IST 2026
[2026-08-25 07:35:25,744.744 INFO    ] ================================================
[2026-08-25 07:35:26,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:35:26
[2026-08-25 07:35:26,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:35:27,153.153 INFO    ] Initializing speech engine...
[2026-08-25 07:35:27,169.169 INFO    ] 2026-08-25 07:35:27
[2026-08-25 07:35:27,451.451 INFO    ] 2026-08-25 07:35:27
[2026-08-25 07:35:27,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:35:27,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:35:27,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:35:27,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:35:27,858.858 INFO    ] time= 25/08/2026 07:35:27
[2026-08-25 07:35:27,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:35:27,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:35:27,949.949 INFO    ] No existing commands found in stream
[2026-08-25 07:35:32,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:35:32,967.967 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 07:35:33,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:35:33,516.516 INFO    ] Checking for system updates...
[2026-08-25 07:35:33,551.551 INFO    ] 200
[2026-08-25 07:35:33,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:33,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:35:33,614.614 INFO    ] No update needed
[2026-08-25 07:35:33,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 07:35:33,651.651 INFO    ] 200
[2026-08-25 07:35:33,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:33,693.693 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:35:33,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:35:33,743.743 INFO    ] No camera update needed
[2026-08-25 07:35:33,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:35:33,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:35:33,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:35:33,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:35:35,797.797 INFO    ] ================================================
[2026-08-25 07:35:35,812.812 INFO    ] Launching Daemon at Tue Aug 25 07:35:35 IST 2026
[2026-08-25 07:35:35,822.822 INFO    ] ================================================
[2026-08-25 07:35:36,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:35:36
[2026-08-25 07:35:37,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:35:37,285.285 INFO    ] Initializing speech engine...
[2026-08-25 07:35:37,291.291 INFO    ] 2026-08-25 07:35:37
[2026-08-25 07:35:37,551.551 INFO    ] 2026-08-25 07:35:37
[2026-08-25 07:35:37,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:35:37,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:35:37,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:35:37,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:35:38,013.013 INFO    ] time= 25/08/2026 07:35:37
[2026-08-25 07:35:38,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:35:38,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:35:38,216.216 INFO    ] No existing commands found in stream
[2026-08-25 07:35:43,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:35:43,246.246 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 07:35:46,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:35:46,204.204 INFO    ] Checking for system updates...
[2026-08-25 07:35:46,243.243 INFO    ] 200
[2026-08-25 07:35:46,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:46,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:35:46,299.299 INFO    ] No update needed
[2026-08-25 07:35:46,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 07:35:46,336.336 INFO    ] 200
[2026-08-25 07:35:46,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:46,378.378 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:35:46,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:35:46,524.524 INFO    ] No camera update needed
[2026-08-25 07:35:46,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:35:46,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:35:46,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:35:46,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:35:48,579.579 INFO    ] ================================================
[2026-08-25 07:35:48,595.595 INFO    ] Launching Daemon at Tue Aug 25 07:35:48 IST 2026
[2026-08-25 07:35:48,607.607 INFO    ] ================================================
[2026-08-25 07:35:49,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:35:49
[2026-08-25 07:35:49,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:35:50,109.109 INFO    ] Initializing speech engine...
[2026-08-25 07:35:50,131.131 INFO    ] 2026-08-25 07:35:50
[2026-08-25 07:35:50,396.396 INFO    ] 2026-08-25 07:35:50
[2026-08-25 07:35:50,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:35:50,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:35:50,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:35:50,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:35:50,786.786 INFO    ] time= 25/08/2026 07:35:50
[2026-08-25 07:35:50,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:35:50,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:35:50,966.966 INFO    ] No existing commands found in stream
[2026-08-25 07:35:55,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:35:55,994.994 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 07:35:59,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:35:59,406.406 INFO    ] Checking for system updates...
[2026-08-25 07:35:59,441.441 INFO    ] 200
[2026-08-25 07:35:59,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:59,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:35:59,503.503 INFO    ] No update needed
[2026-08-25 07:35:59,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 07:35:59,540.540 INFO    ] 200
[2026-08-25 07:35:59,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:35:59,583.583 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:35:59,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:35:59,629.629 INFO    ] No camera update needed
[2026-08-25 07:35:59,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:35:59,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:35:59,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:35:59,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:36:01,703.703 INFO    ] ================================================
[2026-08-25 07:36:01,744.744 INFO    ] Launching Daemon at Tue Aug 25 07:36:01 IST 2026
[2026-08-25 07:36:01,788.788 INFO    ] ================================================
[2026-08-25 07:36:02,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:36:02
[2026-08-25 07:36:03,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:36:03,399.399 INFO    ] Initializing speech engine...
[2026-08-25 07:36:03,408.408 INFO    ] 2026-08-25 07:36:03
[2026-08-25 07:36:03,703.703 INFO    ] 2026-08-25 07:36:03
[2026-08-25 07:36:03,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:36:03,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:36:03,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:36:04,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:36:04,081.081 INFO    ] time= 25/08/2026 07:36:04
[2026-08-25 07:36:04,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:36:04,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:36:04,170.170 INFO    ] No existing commands found in stream
[2026-08-25 07:36:09,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:36:09,208.208 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 07:36:13,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:36:13,256.256 INFO    ] Checking for system updates...
[2026-08-25 07:36:13,292.292 INFO    ] 200
[2026-08-25 07:36:13,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:13,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:36:13,350.350 INFO    ] No update needed
[2026-08-25 07:36:13,352.352 INFO    ] Checking for camera pi updates...
[2026-08-25 07:36:13,385.385 INFO    ] 200
[2026-08-25 07:36:13,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:13,433.433 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:36:13,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:36:13,485.485 INFO    ] No camera update needed
[2026-08-25 07:36:13,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:36:13,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:36:13,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:36:13,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:36:15,539.539 INFO    ] ================================================
[2026-08-25 07:36:15,554.554 INFO    ] Launching Daemon at Tue Aug 25 07:36:15 IST 2026
[2026-08-25 07:36:15,564.564 INFO    ] ================================================
[2026-08-25 07:36:16,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:36:16
[2026-08-25 07:36:16,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:36:16,976.976 INFO    ] Initializing speech engine...
[2026-08-25 07:36:16,985.985 INFO    ] 2026-08-25 07:36:16
[2026-08-25 07:36:17,276.276 INFO    ] 2026-08-25 07:36:17
[2026-08-25 07:36:17,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:36:17,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:36:17,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:36:17,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:36:17,690.690 INFO    ] time= 25/08/2026 07:36:17
[2026-08-25 07:36:17,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:36:17,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:36:17,775.775 INFO    ] No existing commands found in stream
[2026-08-25 07:36:22,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:36:22,813.813 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 07:36:26,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:36:26,847.847 INFO    ] Checking for system updates...
[2026-08-25 07:36:26,883.883 INFO    ] 200
[2026-08-25 07:36:26,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:26,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:36:26,943.943 INFO    ] No update needed
[2026-08-25 07:36:26,946.946 INFO    ] Checking for camera pi updates...
[2026-08-25 07:36:26,992.992 INFO    ] 200
[2026-08-25 07:36:26,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:27,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:36:27,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:36:27,095.095 INFO    ] No camera update needed
[2026-08-25 07:36:27,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:36:27,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:36:27,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:36:27,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:36:29,149.149 INFO    ] ================================================
[2026-08-25 07:36:29,164.164 INFO    ] Launching Daemon at Tue Aug 25 07:36:29 IST 2026
[2026-08-25 07:36:29,174.174 INFO    ] ================================================
[2026-08-25 07:36:29,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:36:29
[2026-08-25 07:36:30,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:36:30,597.597 INFO    ] Initializing speech engine...
[2026-08-25 07:36:30,613.613 INFO    ] 2026-08-25 07:36:30
[2026-08-25 07:36:30,867.867 INFO    ] 2026-08-25 07:36:30
[2026-08-25 07:36:30,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:36:31,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:36:31,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:36:31,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:36:31,335.335 INFO    ] time= 25/08/2026 07:36:31
[2026-08-25 07:36:31,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:36:31,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:36:31,572.572 INFO    ] No existing commands found in stream
[2026-08-25 07:36:36,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:36:36,593.593 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 07:36:38,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:36:38,185.185 INFO    ] Checking for system updates...
[2026-08-25 07:36:38,224.224 INFO    ] 200
[2026-08-25 07:36:38,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:38,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:36:38,282.282 INFO    ] No update needed
[2026-08-25 07:36:38,285.285 INFO    ] Checking for camera pi updates...
[2026-08-25 07:36:38,320.320 INFO    ] 200
[2026-08-25 07:36:38,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:38,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:36:38,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:36:38,434.434 INFO    ] No camera update needed
[2026-08-25 07:36:38,437.437 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:36:38,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:36:38,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:36:38,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:36:40,490.490 INFO    ] ================================================
[2026-08-25 07:36:40,505.505 INFO    ] Launching Daemon at Tue Aug 25 07:36:40 IST 2026
[2026-08-25 07:36:40,516.516 INFO    ] ================================================
[2026-08-25 07:36:41,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:36:41
[2026-08-25 07:36:41,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:36:42,135.135 INFO    ] Initializing speech engine...
[2026-08-25 07:36:42,145.145 INFO    ] 2026-08-25 07:36:42
[2026-08-25 07:36:42,421.421 INFO    ] 2026-08-25 07:36:42
[2026-08-25 07:36:42,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:36:42,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:36:42,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:36:42,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:36:42,970.970 INFO    ] time= 25/08/2026 07:36:42
[2026-08-25 07:36:42,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:36:42,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:36:43,121.121 INFO    ] No existing commands found in stream
[2026-08-25 07:36:48,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:36:48,141.141 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 07:36:50,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:36:50,036.036 INFO    ] Checking for system updates...
[2026-08-25 07:36:50,073.073 INFO    ] 200
[2026-08-25 07:36:50,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:50,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:36:50,133.133 INFO    ] No update needed
[2026-08-25 07:36:50,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 07:36:50,171.171 INFO    ] 200
[2026-08-25 07:36:50,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:36:50,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:36:50,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:36:50,278.278 INFO    ] No camera update needed
[2026-08-25 07:36:50,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:36:50,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:36:50,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:36:50,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:36:52,336.336 INFO    ] ================================================
[2026-08-25 07:36:52,351.351 INFO    ] Launching Daemon at Tue Aug 25 07:36:52 IST 2026
[2026-08-25 07:36:52,362.362 INFO    ] ================================================
[2026-08-25 07:36:52,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:36:52
[2026-08-25 07:36:53,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:36:53,783.783 INFO    ] Initializing speech engine...
[2026-08-25 07:36:53,792.792 INFO    ] 2026-08-25 07:36:53
[2026-08-25 07:36:54,051.051 INFO    ] 2026-08-25 07:36:54
[2026-08-25 07:36:54,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:36:54,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:36:54,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:36:54,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:36:54,507.507 INFO    ] time= 25/08/2026 07:36:54
[2026-08-25 07:36:54,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:36:54,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:36:54,726.726 INFO    ] No existing commands found in stream
[2026-08-25 07:36:59,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:36:59,753.753 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 07:37:02,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:37:02,492.492 INFO    ] Checking for system updates...
[2026-08-25 07:37:02,548.548 INFO    ] 200
[2026-08-25 07:37:02,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:02,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:37:02,615.615 INFO    ] No update needed
[2026-08-25 07:37:02,618.618 INFO    ] Checking for camera pi updates...
[2026-08-25 07:37:02,669.669 INFO    ] 200
[2026-08-25 07:37:02,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:02,722.722 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:37:02,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:37:02,831.831 INFO    ] No camera update needed
[2026-08-25 07:37:02,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:37:02,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:37:02,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:37:02,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:37:04,895.895 INFO    ] ================================================
[2026-08-25 07:37:04,911.911 INFO    ] Launching Daemon at Tue Aug 25 07:37:04 IST 2026
[2026-08-25 07:37:04,923.923 INFO    ] ================================================
[2026-08-25 07:37:05,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:37:05
[2026-08-25 07:37:06,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:37:06,387.387 INFO    ] Initializing speech engine...
[2026-08-25 07:37:06,394.394 INFO    ] 2026-08-25 07:37:06
[2026-08-25 07:37:06,672.672 INFO    ] 2026-08-25 07:37:06
[2026-08-25 07:37:06,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:37:06,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:37:06,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:37:07,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:37:07,048.048 INFO    ] time= 25/08/2026 07:37:07
[2026-08-25 07:37:07,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:37:07,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:37:07,126.126 INFO    ] No existing commands found in stream
[2026-08-25 07:37:12,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:37:12,165.165 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 07:37:15,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:37:15,334.334 INFO    ] Checking for system updates...
[2026-08-25 07:37:15,370.370 INFO    ] 200
[2026-08-25 07:37:15,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:15,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:15,428.428 INFO    ] No update needed
[2026-08-25 07:37:15,430.430 INFO    ] Checking for camera pi updates...
[2026-08-25 07:37:15,464.464 INFO    ] 200
[2026-08-25 07:37:15,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:15,513.513 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:37:15,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:15,564.564 INFO    ] No camera update needed
[2026-08-25 07:37:15,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:37:15,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:37:15,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:37:15,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:37:17,619.619 INFO    ] ================================================
[2026-08-25 07:37:17,634.634 INFO    ] Launching Daemon at Tue Aug 25 07:37:17 IST 2026
[2026-08-25 07:37:17,645.645 INFO    ] ================================================
[2026-08-25 07:37:18,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:37:18
[2026-08-25 07:37:18,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:37:19,306.306 INFO    ] Initializing speech engine...
[2026-08-25 07:37:19,317.317 INFO    ] 2026-08-25 07:37:19
[2026-08-25 07:37:19,603.603 INFO    ] 2026-08-25 07:37:19
[2026-08-25 07:37:19,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:37:19,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:37:19,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:37:20,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:37:20,141.141 INFO    ] time= 25/08/2026 07:37:20
[2026-08-25 07:37:20,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:37:20,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:37:20,309.309 INFO    ] No existing commands found in stream
[2026-08-25 07:37:25,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:37:25,347.347 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 07:37:27,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:37:27,637.637 INFO    ] Checking for system updates...
[2026-08-25 07:37:27,673.673 INFO    ] 200
[2026-08-25 07:37:27,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:27,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:27,733.733 INFO    ] No update needed
[2026-08-25 07:37:27,736.736 INFO    ] Checking for camera pi updates...
[2026-08-25 07:37:27,771.771 INFO    ] 200
[2026-08-25 07:37:27,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:27,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:37:27,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:27,881.881 INFO    ] No camera update needed
[2026-08-25 07:37:27,883.883 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:37:27,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:37:27,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:37:27,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:37:29,939.939 INFO    ] ================================================
[2026-08-25 07:37:29,954.954 INFO    ] Launching Daemon at Tue Aug 25 07:37:29 IST 2026
[2026-08-25 07:37:29,965.965 INFO    ] ================================================
[2026-08-25 07:37:30,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:37:30
[2026-08-25 07:37:31,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:37:31,612.612 INFO    ] Initializing speech engine...
[2026-08-25 07:37:31,623.623 INFO    ] 2026-08-25 07:37:31
[2026-08-25 07:37:31,921.921 INFO    ] 2026-08-25 07:37:31
[2026-08-25 07:37:31,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:37:32,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:37:32,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:37:32,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:37:32,517.517 INFO    ] time= 25/08/2026 07:37:32
[2026-08-25 07:37:32,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:37:32,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:37:32,701.701 INFO    ] No existing commands found in stream
[2026-08-25 07:37:37,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:37:37,727.727 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 07:37:39,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:37:39,926.926 INFO    ] Checking for system updates...
[2026-08-25 07:37:39,963.963 INFO    ] 200
[2026-08-25 07:37:39,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:40,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:40,031.031 INFO    ] No update needed
[2026-08-25 07:37:40,034.034 INFO    ] Checking for camera pi updates...
[2026-08-25 07:37:40,074.074 INFO    ] 200
[2026-08-25 07:37:40,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:40,122.122 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:37:40,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:40,180.180 INFO    ] No camera update needed
[2026-08-25 07:37:40,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:37:40,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:37:40,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:37:40,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:37:42,237.237 INFO    ] ================================================
[2026-08-25 07:37:42,252.252 INFO    ] Launching Daemon at Tue Aug 25 07:37:42 IST 2026
[2026-08-25 07:37:42,264.264 INFO    ] ================================================
[2026-08-25 07:37:42,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:37:42
[2026-08-25 07:37:43,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:37:43,680.680 INFO    ] Initializing speech engine...
[2026-08-25 07:37:43,686.686 INFO    ] 2026-08-25 07:37:43
[2026-08-25 07:37:43,986.986 INFO    ] 2026-08-25 07:37:43
[2026-08-25 07:37:44,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:37:44,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:37:44,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:37:44,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:37:44,376.376 INFO    ] time= 25/08/2026 07:37:44
[2026-08-25 07:37:44,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:37:44,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:37:44,502.502 INFO    ] No existing commands found in stream
[2026-08-25 07:37:49,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:37:49,518.518 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 07:37:52,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:37:52,572.572 INFO    ] Checking for system updates...
[2026-08-25 07:37:52,608.608 INFO    ] 200
[2026-08-25 07:37:52,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:52,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:52,671.671 INFO    ] No update needed
[2026-08-25 07:37:52,673.673 INFO    ] Checking for camera pi updates...
[2026-08-25 07:37:52,711.711 INFO    ] 200
[2026-08-25 07:37:52,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:37:52,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:37:52,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:37:52,902.902 INFO    ] No camera update needed
[2026-08-25 07:37:52,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:37:52,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:37:52,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:37:52,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:37:54,959.959 INFO    ] ================================================
[2026-08-25 07:37:54,975.975 INFO    ] Launching Daemon at Tue Aug 25 07:37:54 IST 2026
[2026-08-25 07:37:54,987.987 INFO    ] ================================================
[2026-08-25 07:37:55,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:37:55
[2026-08-25 07:37:56,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:37:56,599.599 INFO    ] Initializing speech engine...
[2026-08-25 07:37:56,607.607 INFO    ] 2026-08-25 07:37:56
[2026-08-25 07:37:56,889.889 INFO    ] 2026-08-25 07:37:56
[2026-08-25 07:37:56,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:37:57,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:37:57,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:37:57,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:37:57,372.372 INFO    ] time= 25/08/2026 07:37:57
[2026-08-25 07:37:57,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:37:57,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:37:57,576.576 INFO    ] No existing commands found in stream
[2026-08-25 07:38:02,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:38:02,611.611 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 07:38:05,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:38:05,659.659 INFO    ] Checking for system updates...
[2026-08-25 07:38:05,697.697 INFO    ] 200
[2026-08-25 07:38:05,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:05,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:38:05,757.757 INFO    ] No update needed
[2026-08-25 07:38:05,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 07:38:05,795.795 INFO    ] 200
[2026-08-25 07:38:05,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:05,845.845 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:38:05,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:38:05,893.893 INFO    ] No camera update needed
[2026-08-25 07:38:05,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:38:05,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:38:05,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:38:05,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:38:07,952.952 INFO    ] ================================================
[2026-08-25 07:38:07,967.967 INFO    ] Launching Daemon at Tue Aug 25 07:38:07 IST 2026
[2026-08-25 07:38:07,979.979 INFO    ] ================================================
[2026-08-25 07:38:08,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:38:08
[2026-08-25 07:38:09,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:38:09,650.650 INFO    ] Initializing speech engine...
[2026-08-25 07:38:09,662.662 INFO    ] 2026-08-25 07:38:09
[2026-08-25 07:38:09,976.976 INFO    ] 2026-08-25 07:38:09
[2026-08-25 07:38:10,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:38:10,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:38:10,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:38:10,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:38:10,484.484 INFO    ] time= 25/08/2026 07:38:10
[2026-08-25 07:38:10,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:38:10,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:38:10,644.644 INFO    ] No existing commands found in stream
[2026-08-25 07:38:15,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:38:15,681.681 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 07:38:19,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:38:19,488.488 INFO    ] Checking for system updates...
[2026-08-25 07:38:19,526.526 INFO    ] 200
[2026-08-25 07:38:19,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:19,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:19,595.595 INFO    ] No update needed
[2026-08-25 07:38:19,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 07:38:19,636.636 INFO    ] 200
[2026-08-25 07:38:19,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:19,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:38:19,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:19,739.739 INFO    ] No camera update needed
[2026-08-25 07:38:19,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:38:19,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:38:19,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:38:19,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:38:21,798.798 INFO    ] ================================================
[2026-08-25 07:38:21,813.813 INFO    ] Launching Daemon at Tue Aug 25 07:38:21 IST 2026
[2026-08-25 07:38:21,824.824 INFO    ] ================================================
[2026-08-25 07:38:22,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:38:22
[2026-08-25 07:38:23,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:38:23,505.505 INFO    ] Initializing speech engine...
[2026-08-25 07:38:23,512.512 INFO    ] 2026-08-25 07:38:23
[2026-08-25 07:38:23,804.804 INFO    ] 2026-08-25 07:38:23
[2026-08-25 07:38:23,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:38:24,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:38:24,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:38:24,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:38:24,280.280 INFO    ] time= 25/08/2026 07:38:24
[2026-08-25 07:38:24,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:38:24,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:38:24,493.493 INFO    ] No existing commands found in stream
[2026-08-25 07:38:29,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:38:29,512.512 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 07:38:33,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:38:33,177.177 INFO    ] Checking for system updates...
[2026-08-25 07:38:33,213.213 INFO    ] 200
[2026-08-25 07:38:33,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:33,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:33,282.282 INFO    ] No update needed
[2026-08-25 07:38:33,285.285 INFO    ] Checking for camera pi updates...
[2026-08-25 07:38:33,320.320 INFO    ] 200
[2026-08-25 07:38:33,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:33,365.365 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:38:33,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:33,416.416 INFO    ] No camera update needed
[2026-08-25 07:38:33,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:38:33,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:38:33,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:38:33,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:38:35,476.476 INFO    ] ================================================
[2026-08-25 07:38:35,492.492 INFO    ] Launching Daemon at Tue Aug 25 07:38:35 IST 2026
[2026-08-25 07:38:35,504.504 INFO    ] ================================================
[2026-08-25 07:38:36,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:38:36
[2026-08-25 07:38:36,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:38:37,194.194 INFO    ] Initializing speech engine...
[2026-08-25 07:38:37,204.204 INFO    ] 2026-08-25 07:38:37
[2026-08-25 07:38:37,521.521 INFO    ] 2026-08-25 07:38:37
[2026-08-25 07:38:37,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:38:37,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:38:37,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:38:38,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:38:38,072.072 INFO    ] time= 25/08/2026 07:38:38
[2026-08-25 07:38:38,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:38:38,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:38:38,229.229 INFO    ] No existing commands found in stream
[2026-08-25 07:38:43,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:38:43,268.268 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 07:38:46,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:38:46,789.789 INFO    ] Checking for system updates...
[2026-08-25 07:38:46,827.827 INFO    ] 200
[2026-08-25 07:38:46,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:46,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:46,886.886 INFO    ] No update needed
[2026-08-25 07:38:46,889.889 INFO    ] Checking for camera pi updates...
[2026-08-25 07:38:46,928.928 INFO    ] 200
[2026-08-25 07:38:46,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:46,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:38:47,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:47,025.025 INFO    ] No camera update needed
[2026-08-25 07:38:47,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:38:47,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:38:47,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:38:47,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:38:49,086.086 INFO    ] ================================================
[2026-08-25 07:38:49,107.107 INFO    ] Launching Daemon at Tue Aug 25 07:38:49 IST 2026
[2026-08-25 07:38:49,118.118 INFO    ] ================================================
[2026-08-25 07:38:49,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:38:49
[2026-08-25 07:38:50,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:38:50,524.524 INFO    ] Initializing speech engine...
[2026-08-25 07:38:50,530.530 INFO    ] 2026-08-25 07:38:50
[2026-08-25 07:38:50,836.836 INFO    ] 2026-08-25 07:38:50
[2026-08-25 07:38:50,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:38:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:38:51,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:38:51,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:38:51,225.225 INFO    ] time= 25/08/2026 07:38:51
[2026-08-25 07:38:51,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:38:51,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:38:51,354.354 INFO    ] No existing commands found in stream
[2026-08-25 07:38:56,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:38:56,369.369 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 07:38:57,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:38:57,665.665 INFO    ] Checking for system updates...
[2026-08-25 07:38:57,700.700 INFO    ] 200
[2026-08-25 07:38:57,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:57,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:57,758.758 INFO    ] No update needed
[2026-08-25 07:38:57,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 07:38:57,793.793 INFO    ] 200
[2026-08-25 07:38:57,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:38:57,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:38:57,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:38:57,893.893 INFO    ] No camera update needed
[2026-08-25 07:38:57,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:38:57,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:38:57,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:38:57,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:38:59,947.947 INFO    ] ================================================
[2026-08-25 07:38:59,962.962 INFO    ] Launching Daemon at Tue Aug 25 07:38:59 IST 2026
[2026-08-25 07:38:59,973.973 INFO    ] ================================================
[2026-08-25 07:39:00,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:39:00
[2026-08-25 07:39:01,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:39:01,436.436 INFO    ] Initializing speech engine...
[2026-08-25 07:39:01,443.443 INFO    ] 2026-08-25 07:39:01
[2026-08-25 07:39:01,884.884 INFO    ] 2026-08-25 07:39:01
[2026-08-25 07:39:01,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:39:02,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:39:02,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:39:02,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:39:02,389.389 INFO    ] time= 25/08/2026 07:39:02
[2026-08-25 07:39:02,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:39:02,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:39:02,602.602 INFO    ] No existing commands found in stream
[2026-08-25 07:39:07,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:39:07,628.628 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 07:39:10,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:39:10,745.745 INFO    ] Checking for system updates...
[2026-08-25 07:39:10,782.782 INFO    ] 200
[2026-08-25 07:39:10,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:10,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:39:10,840.840 INFO    ] No update needed
[2026-08-25 07:39:10,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 07:39:10,877.877 INFO    ] 200
[2026-08-25 07:39:10,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:10,924.924 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:39:10,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:39:10,971.971 INFO    ] No camera update needed
[2026-08-25 07:39:10,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:39:10,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:39:10,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:39:10,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:39:13,028.028 INFO    ] ================================================
[2026-08-25 07:39:13,043.043 INFO    ] Launching Daemon at Tue Aug 25 07:39:13 IST 2026
[2026-08-25 07:39:13,054.054 INFO    ] ================================================
[2026-08-25 07:39:13,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:39:13
[2026-08-25 07:39:14,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:39:14,525.525 INFO    ] Initializing speech engine...
[2026-08-25 07:39:14,542.542 INFO    ] 2026-08-25 07:39:14
[2026-08-25 07:39:14,838.838 INFO    ] 2026-08-25 07:39:14
[2026-08-25 07:39:14,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:39:15,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:39:15,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:39:15,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:39:15,224.224 INFO    ] time= 25/08/2026 07:39:15
[2026-08-25 07:39:15,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:39:15,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:39:15,427.427 INFO    ] No existing commands found in stream
[2026-08-25 07:39:20,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:39:20,449.449 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 07:39:21,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:39:21,052.052 INFO    ] Checking for system updates...
[2026-08-25 07:39:21,088.088 INFO    ] 200
[2026-08-25 07:39:21,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:21,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:21,146.146 INFO    ] No update needed
[2026-08-25 07:39:21,149.149 INFO    ] Checking for camera pi updates...
[2026-08-25 07:39:21,182.182 INFO    ] 200
[2026-08-25 07:39:21,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:21,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:39:21,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:21,277.277 INFO    ] No camera update needed
[2026-08-25 07:39:21,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:39:21,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:39:21,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:39:21,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:39:23,331.331 INFO    ] ================================================
[2026-08-25 07:39:23,346.346 INFO    ] Launching Daemon at Tue Aug 25 07:39:23 IST 2026
[2026-08-25 07:39:23,357.357 INFO    ] ================================================
[2026-08-25 07:39:23,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:39:23
[2026-08-25 07:39:24,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:39:24,789.789 INFO    ] Initializing speech engine...
[2026-08-25 07:39:24,798.798 INFO    ] 2026-08-25 07:39:24
[2026-08-25 07:39:25,051.051 INFO    ] 2026-08-25 07:39:25
[2026-08-25 07:39:25,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:39:25,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:39:25,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:39:25,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:39:25,538.538 INFO    ] time= 25/08/2026 07:39:25
[2026-08-25 07:39:25,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:39:25,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:39:25,722.722 INFO    ] No existing commands found in stream
[2026-08-25 07:39:30,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:39:30,750.750 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 07:39:31,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:39:31,735.735 INFO    ] Checking for system updates...
[2026-08-25 07:39:31,773.773 INFO    ] 200
[2026-08-25 07:39:31,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:31,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:31,837.837 INFO    ] No update needed
[2026-08-25 07:39:31,840.840 INFO    ] Checking for camera pi updates...
[2026-08-25 07:39:31,876.876 INFO    ] 200
[2026-08-25 07:39:31,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:31,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:39:31,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:31,995.995 INFO    ] No camera update needed
[2026-08-25 07:39:31,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:39:32,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:39:32,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:39:32,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:39:34,054.054 INFO    ] ================================================
[2026-08-25 07:39:34,068.068 INFO    ] Launching Daemon at Tue Aug 25 07:39:34 IST 2026
[2026-08-25 07:39:34,079.079 INFO    ] ================================================
[2026-08-25 07:39:34,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:39:34
[2026-08-25 07:39:35,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:39:35,498.498 INFO    ] Initializing speech engine...
[2026-08-25 07:39:35,505.505 INFO    ] 2026-08-25 07:39:35
[2026-08-25 07:39:35,785.785 INFO    ] 2026-08-25 07:39:35
[2026-08-25 07:39:35,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:39:35,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:39:36,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:39:36,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:39:36,163.163 INFO    ] time= 25/08/2026 07:39:36
[2026-08-25 07:39:36,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:39:36,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:39:36,351.351 INFO    ] No existing commands found in stream
[2026-08-25 07:39:41,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:39:41,378.378 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 07:39:43,390.390 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:39:43,393.393 INFO    ] Checking for system updates...
[2026-08-25 07:39:43,428.428 INFO    ] 200
[2026-08-25 07:39:43,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:43,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:43,485.485 INFO    ] No update needed
[2026-08-25 07:39:43,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 07:39:43,521.521 INFO    ] 200
[2026-08-25 07:39:43,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:43,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:39:43,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:43,610.610 INFO    ] No camera update needed
[2026-08-25 07:39:43,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:39:43,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:39:43,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:39:43,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:39:45,663.663 INFO    ] ================================================
[2026-08-25 07:39:45,678.678 INFO    ] Launching Daemon at Tue Aug 25 07:39:45 IST 2026
[2026-08-25 07:39:45,689.689 INFO    ] ================================================
[2026-08-25 07:39:46,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:39:46
[2026-08-25 07:39:46,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:39:47,108.108 INFO    ] Initializing speech engine...
[2026-08-25 07:39:47,114.114 INFO    ] 2026-08-25 07:39:47
[2026-08-25 07:39:47,359.359 INFO    ] 2026-08-25 07:39:47
[2026-08-25 07:39:47,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:39:47,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:39:47,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:39:47,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:39:47,826.826 INFO    ] time= 25/08/2026 07:39:47
[2026-08-25 07:39:47,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:39:47,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:39:48,055.055 INFO    ] No existing commands found in stream
[2026-08-25 07:39:53,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:39:53,080.080 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 07:39:53,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:39:53,591.591 INFO    ] Checking for system updates...
[2026-08-25 07:39:53,630.630 INFO    ] 200
[2026-08-25 07:39:53,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:53,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:53,687.687 INFO    ] No update needed
[2026-08-25 07:39:53,689.689 INFO    ] Checking for camera pi updates...
[2026-08-25 07:39:53,723.723 INFO    ] 200
[2026-08-25 07:39:53,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:39:53,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:39:53,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:39:53,912.912 INFO    ] No camera update needed
[2026-08-25 07:39:53,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:39:53,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:39:53,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:39:53,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:39:55,968.968 INFO    ] ================================================
[2026-08-25 07:39:55,983.983 INFO    ] Launching Daemon at Tue Aug 25 07:39:55 IST 2026
[2026-08-25 07:39:55,993.993 INFO    ] ================================================
[2026-08-25 07:39:56,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:39:56
[2026-08-25 07:39:57,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:39:57,639.639 INFO    ] Initializing speech engine...
[2026-08-25 07:39:57,652.652 INFO    ] 2026-08-25 07:39:57
[2026-08-25 07:39:57,963.963 INFO    ] 2026-08-25 07:39:57
[2026-08-25 07:39:58,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:39:58,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:39:58,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:39:58,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:39:58,469.469 INFO    ] time= 25/08/2026 07:39:58
[2026-08-25 07:39:58,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:39:58,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:39:58,675.675 INFO    ] No existing commands found in stream
[2026-08-25 07:40:03,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:40:03,709.709 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 07:40:08,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:40:08,211.211 INFO    ] Checking for system updates...
[2026-08-25 07:40:08,247.247 INFO    ] 200
[2026-08-25 07:40:08,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:08,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:40:08,305.305 INFO    ] No update needed
[2026-08-25 07:40:08,307.307 INFO    ] Checking for camera pi updates...
[2026-08-25 07:40:08,341.341 INFO    ] 200
[2026-08-25 07:40:08,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:08,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:40:08,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:40:08,448.448 INFO    ] No camera update needed
[2026-08-25 07:40:08,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:40:08,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:40:08,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:40:08,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:40:10,503.503 INFO    ] ================================================
[2026-08-25 07:40:10,518.518 INFO    ] Launching Daemon at Tue Aug 25 07:40:10 IST 2026
[2026-08-25 07:40:10,528.528 INFO    ] ================================================
[2026-08-25 07:40:11,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:40:11
[2026-08-25 07:40:11,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:40:12,170.170 INFO    ] Initializing speech engine...
[2026-08-25 07:40:12,182.182 INFO    ] 2026-08-25 07:40:12
[2026-08-25 07:40:12,498.498 INFO    ] 2026-08-25 07:40:12
[2026-08-25 07:40:12,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:40:12,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:40:12,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:40:12,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:40:13,011.011 INFO    ] time= 25/08/2026 07:40:13
[2026-08-25 07:40:13,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:40:13,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:40:13,193.193 INFO    ] No existing commands found in stream
[2026-08-25 07:40:14,769.769 INFO    ] Received new command: ID=1787623814578-0
[2026-08-25 07:40:14,781.781 INFO    ] process_and_cleanup_command: msg_id=1787623814578-0
[2026-08-25 07:40:14,787.787 INFO    ] is_command_expired: timestamp=2026-08-25T02:10:14.397Z, expiry=30s
[2026-08-25 07:40:14,927.927 INFO    ] Command removed from stream: 1787623814578-0. returning for processing...
[2026-08-25 07:40:14,950.950 INFO    ] ***** get_valid_command
[2026-08-25 07:40:14,975.975 INFO    ] {'timestamp': '2026-08-25T02:10:14.397Z', 'timeout': '10', 'source': 'webapp', 'data': '{"request_id":"start-order-1787623814396-ycc8dr0ky","orderId":"TM03202401260825073928818","is_vending":false}', 'command': 'start-order'}
[2026-08-25 07:40:15,018.018 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825073928818', 'request_id': 'start-order-1787623814396-ycc8dr0ky', 'is_vending': False}
[2026-08-25 07:40:15,060.060 INFO    ] Handling start order...
[2026-08-25 07:40:15,071.071 INFO    ] handle_start_order_command
[2026-08-25 07:40:15,092.092 INFO    ] _send_start_order_success: request_id=start-order-1787623814396-ycc8dr0ky, order_id=TM03202401260825073928818
[2026-08-25 07:40:15,099.099 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 07:40:15,288.288 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787623815252-0
[2026-08-25 07:40:15,324.324 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 07:40:15,354.354 INFO    ] Checking for system updates...
[2026-08-25 07:40:15,416.416 INFO    ] 200
[2026-08-25 07:40:15,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:15,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:40:15,496.496 INFO    ] No update needed
[2026-08-25 07:40:15,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 07:40:15,537.537 INFO    ] 200
[2026-08-25 07:40:15,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:15,581.581 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:40:15,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:40:15,630.630 INFO    ] No camera update needed
[2026-08-25 07:40:15,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:40:15,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:40:15,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:40:15,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:40:17,689.689 INFO    ] ================================================
[2026-08-25 07:40:17,705.705 INFO    ] Launching Daemon at Tue Aug 25 07:40:17 IST 2026
[2026-08-25 07:40:17,716.716 INFO    ] ================================================
[2026-08-25 07:40:18,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:40:18
[2026-08-25 07:40:18,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:40:19,166.166 INFO    ] Initializing speech engine...
[2026-08-25 07:40:19,173.173 INFO    ] 2026-08-25 07:40:19
[2026-08-25 07:40:19,434.434 INFO    ] 2026-08-25 07:40:19
[2026-08-25 07:40:19,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:40:19,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:40:19,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:40:19,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:40:19,911.911 INFO    ] time= 25/08/2026 07:40:19
[2026-08-25 07:40:19,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:40:19,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:40:20,126.126 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 07:40:20,165.165 INFO    ] Checking historical command: ID=1787623815252-0
[2026-08-25 07:40:20,218.218 INFO    ] process_and_cleanup_command: msg_id=1787623815252-0
[2026-08-25 07:40:20,253.253 INFO    ] is_command_expired: timestamp=2026-08-25T02:10:15.094902Z, expiry=30s
[2026-08-25 07:40:20,448.448 INFO    ] Command removed from stream: 1787623815252-0. returning for processing...
[2026-08-25 07:40:20,473.473 INFO    ] ***** get_valid_command
[2026-08-25 07:40:20,485.485 INFO    ] {'status': 'success', 'metadata_request_id': 'start-order-1787623814396-ycc8dr0ky', 'imei': 'TM03202401', 'message': 'start-order success', 'metadata_order_id': 'TM03202401260825073928818', 'timestamp': '2026-08-25T02:10:15.094902Z', 'message_type': 'command_response'}
[2026-08-25 07:40:20,488.488 INFO    ] Checking historical command: ID=1787623818238-0
[2026-08-25 07:40:20,491.491 INFO    ] process_and_cleanup_command: msg_id=1787623818238-0
[2026-08-25 07:40:20,494.494 INFO    ] is_command_expired: timestamp=2026-08-25T02:10:18.190Z, expiry=30s
[2026-08-25 07:40:20,618.618 INFO    ] Command removed from stream: 1787623818238-0. returning for processing...
[2026-08-25 07:40:20,627.627 INFO    ] ***** get_valid_command
[2026-08-25 07:40:20,630.630 INFO    ] {'timeout': '60', 'data': '{"request_id":"process-order-1787623818189-luxoo8agx","orderId":"TM03202401260825073928818","is_vending":false,"accessCode":"12905623"}', 'command': 'process-order', 'timestamp': '2026-08-25T02:10:18.190Z', 'source': 'webapp'}
[2026-08-25 07:40:20,680.680 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'process-order-1787623818189-luxoo8agx', 'accessCode': '12905623', 'orderId': 'TM03202401260825073928818'}
[2026-08-25 07:40:20,683.683 INFO    ] Handling process order...
[2026-08-25 07:40:20,687.687 INFO    ] Processing process-order command...
[2026-08-25 07:40:20,740.740 INFO    ] 🔍 Lock file Order ID: TM03202401260825073928818, TS: 2026-08-25 07:40:15
[2026-08-25 07:40:20,756.756 INFO    ] ✅ Order lock valid for TM03202401260825073928818
[2026-08-25 07:40:20,761.761 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 07:40:20,765.765 INFO    ] processing access code 12905623 for order TM03202401260825073928818
[2026-08-25 07:40:20,771.771 INFO    ] 🔍 Lock file Order ID: TM03202401260825073928818, TS: 2026-08-25 07:40:15
[2026-08-25 07:40:20,777.777 INFO    ] ✅ Order lock valid for TM03202401260825073928818
[2026-08-25 07:40:20,781.781 INFO    ] 2026-08-25 07:40:20
[2026-08-25 07:40:20,881.881 INFO    ] 200
[2026-08-25 07:40:20,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:20,937.937 INFO    ] 12905623
[2026-08-25 07:40:20,943.943 INFO    ] 2026-08-25 07:40:20
[2026-08-25 07:40:20,950.950 INFO    ] session id :167279484
[2026-08-25 07:40:20,957.957 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=12905623&imei=TM03202401&session_id=167279484
[2026-08-25 07:40:22,215.215 INFO    ] 200
[2026-08-25 07:40:22,223.223 INFO    ] {"data": {"access_code": "12905623", "order_id": "TM03202401260825073928818", "bill_amount": "10", "invoice_bill": "10", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500725", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "tray_id": "14", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm", "sku_total": 10}], "mobile": "9740799724"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 07:40:22,245.245 INFO    ] 10
[2026-08-25 07:40:22,251.251 INFO    ] TM03202401260825073928818
[2026-08-25 07:40:22,260.260 INFO    ] 9740799724
[2026-08-25 07:40:22,265.265 INFO    ] 2026-08-25 07:40:22
[2026-08-25 07:40:22,271.271 INFO    ] Door Opening for user mobile ending with  nine seven two four 
[2026-08-25 07:40:22,279.279 INFO    ] Door Opening for user mobile ending with  nine seven two four 
[2026-08-25 07:40:22,292.292 INFO    ] 3c47f391afa0080c997749b38a03e937
[2026-08-25 07:40:22,315.315 INFO    ] 2026-08-25 07:40:22
[2026-08-25 07:40:22,335.335 INFO    ] playing audio file
[2026-08-25 07:40:22,401.401 INFO    ] 2026-08-25 07:40:22
[2026-08-25 07:40:22,429.429 INFO    ] 2026-08-25 07:40:22
[2026-08-25 07:40:22,485.485 INFO    ] publish_status: order_id=TM03202401260825073928818
[2026-08-25 07:40:22,497.497 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825073928818
[2026-08-25 07:40:22,567.567 INFO    ] [publish_status] Message added to stream with ID: 1787623822602-0
[2026-08-25 07:40:22,569.569 INFO    ] Published to order:TM03202401260825073928818: {'server_status': 'order-started', 'order_id': 'TM03202401260825073928818', 'timestamp': '2026-08-25T02:10:22.441203Z', 'server_response': '{"status": true, "data": {"bill_amount": "10", "proposed_sku_json": [{"offer_desc": "", "mrp": "10", "tray_id": "14", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "door_id": "1", "sku_total": 10, "skuid": "4500725", "name": "Maxvita Coconut Cookies 40gm", "offer_id": "", "qty": 1}], "order_id": "TM03202401260825073928818", "mobile": "9740799724", "invoice_bill": "10", "access_code": "12905623"}, "rstatus": true, "msg": "Order Data"}'} (ID: 1787623822602-0)
[2026-08-25 07:40:23,054.054 INFO    ] {'server_status': 'order-started', 'order_id': 'TM03202401260825073928818', 'server_response': {'status': True, 'data': {'bill_amount': '10', 'proposed_sku_json': [{'offer_desc': '', 'mrp': '10', 'tray_id': '14', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '1', 'sku_total': 10, 'skuid': '4500725', 'name': 'Maxvita Coconut Cookies 40gm', 'offer_id': '', 'qty': 1}], 'order_id': 'TM03202401260825073928818', 'mobile': '9740799724', 'invoice_bill': '10', 'access_code': '12905623'}, 'rstatus': True, 'msg': 'Order Data'}}
[2026-08-25 07:40:23,061.061 INFO    ] 200
[2026-08-25 07:40:23,064.064 INFO    ] {"data":{"server_status":"order-started","order_id":"TM03202401260825073928818","server_response":{"status":true,"data":{"bill_amount":"10","proposed_sku_json":[{"offer_desc":"","mrp":"10","tray_id":"14","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","door_id":"1","sku_total":10,"skuid":"4500725","name":"Maxvita Coconut Cookies 40gm","offer_id":"","qty":1}],"order_id":"TM03202401260825073928818","mobile":"9740799724","invoice_bill":"10","access_code":"12905623"},"rstatus":true,"msg":"Order Data"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 07:40:23,067.067 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM03202401260825073928818', 'server_response': {'status': True, 'data': {'bill_amount': '10', 'proposed_sku_json': [{'offer_desc': '', 'tray_id': '14', 'mrp': '10', 'door_id': '1', 'qty': 1, 'sku_total': 10, 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm', 'offer_id': '', 'unit_price': 10}], 'order_id': 'TM03202401260825073928818', 'mobile': '9740799724', 'invoice_bill': '10', 'access_code': '12905623'}, 'rstatus': True, 'msg': 'Order Data'}}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-08-25 07:40:23,070.070 INFO    ] 2026-08-25 07:40:23
[2026-08-25 07:40:23,122.122 INFO    ] 200
[2026-08-25 07:40:23,125.125 INFO    ] True
[2026-08-25 07:40:23,288.288 INFO    ] 200
[2026-08-25 07:40:23,291.291 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 07:40:23,294.294 INFO    ] {'status': 'False', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-25 07:40:23,297.297 INFO    ] *** process_order ***
[2026-08-25 07:40:24,481.481 INFO    ] 200
[2026-08-25 07:40:24,483.483 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 07:40:24,489.489 INFO    ] {'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-25 07:40:24,492.492 INFO    ] *** process_order ***
[2026-08-25 07:40:24,495.495 INFO    ] publish_status: order_id=TM03202401260825073928818
[2026-08-25 07:40:24,498.498 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825073928818
[2026-08-25 07:40:24,596.596 INFO    ] [publish_status] Message added to stream with ID: 1787623824622-0
[2026-08-25 07:40:24,599.599 INFO    ] Published to order:TM03202401260825073928818: {'server_status': 'doorOpened', 'order_id': 'TM03202401260825073928818', 'server_response': '{"status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Door is open...", "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "delay": 0, "rstatus": true, "SectionMain": {"Header": "Processing Order"}}'} (ID: 1787623824622-0)
[2026-08-25 07:40:25,666.666 INFO    ] 2026-08-25 07:40:25
[2026-08-25 07:40:25,670.670 INFO    ] publish_status: order_id=TM03202401260825073928818
[2026-08-25 07:40:25,674.674 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825073928818
[2026-08-25 07:40:25,758.758 INFO    ] [publish_status] Message added to stream with ID: 1787623825791-0
[2026-08-25 07:40:25,761.761 INFO    ] Published to order:TM03202401260825073928818: {'server_status': 'processOrder', 'order_id': 'TM03202401260825073928818', 'timestamp': '2026-08-25T02:10:25.667733Z', 'server_response': '{"status": "True", "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"UI_Header": "", "Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "delay": 0, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}'} (ID: 1787623825791-0)
[2026-08-25 07:40:25,893.893 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM03202401260825073928818', 'server_response': {'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}
[2026-08-25 07:40:25,896.896 INFO    ] 200
[2026-08-25 07:40:25,899.899 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM03202401260825073928818","server_response":{"status":"true","SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","SectionStatus":{"UI_Header":"","Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"delay":0,"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 07:40:25,903.903 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM03202401260825073928818', 'server_response': {'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-08-25 07:40:25,907.907 INFO    ] 2026-08-25 07:40:25
[2026-08-25 07:40:25,910.910 INFO    ] None
[2026-08-25 07:40:25,913.913 INFO    ] Opening Door now
[2026-08-25 07:40:25,917.917 INFO    ] Opening Door now
[2026-08-25 07:40:25,919.919 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 07:40:25,922.922 INFO    ] 2026-08-25 07:40:25
[2026-08-25 07:40:25,925.925 INFO    ] playing audio file
[2026-08-25 07:40:25,944.944 INFO    ] 2026-08-25 07:40:25
[2026-08-25 07:40:25,947.947 INFO    ] 2026-08-25 07:40:25
[2026-08-25 07:40:29,025.025 INFO    ] 200
[2026-08-25 07:40:29,028.028 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 07:40:29,033.033 INFO    ] {'status': 'False', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}}
[2026-08-25 07:40:32,157.157 INFO    ] 200
[2026-08-25 07:40:32,161.161 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 07:40:32,165.165 INFO    ] {'status': 'False', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}}
[2026-08-25 07:40:35,299.299 INFO    ] 200
[2026-08-25 07:40:35,302.302 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 07:40:35,306.306 INFO    ] Please close door 1
[2026-08-25 07:40:35,309.309 INFO    ] Please close door 1
[2026-08-25 07:40:35,313.313 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 07:40:35,316.316 INFO    ] 2026-08-25 07:40:35
[2026-08-25 07:40:35,319.319 INFO    ] playing audio file
[2026-08-25 07:40:35,338.338 INFO    ] 2026-08-25 07:40:35
[2026-08-25 07:40:35,342.342 INFO    ] publish_status: order_id=TM03202401260825073928818
[2026-08-25 07:40:35,346.346 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825073928818
[2026-08-25 07:40:35,438.438 INFO    ] [publish_status] Message added to stream with ID: 1787623835471-0
[2026-08-25 07:40:35,441.441 INFO    ] Published to order:TM03202401260825073928818: {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825073928818', 'timestamp': '2026-08-25T02:10:35.340639Z', 'server_response': '{"status": "False", "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionStatus": {"UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door"}, "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}}'} (ID: 1787623835471-0)
[2026-08-25 07:40:36,013.013 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825073928818', 'server_response': {'status': 'False', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}}}
[2026-08-25 07:40:36,016.016 INFO    ] 200
[2026-08-25 07:40:36,018.018 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM03202401260825073928818","server_response":{"status":"false","error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionStatus":{"UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door"},"rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maxvita Coconut Cookies 40gm"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 07:40:36,021.021 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825073928818', 'server_response': {'status': 'false', 'error': {'tmessage': 'In Progress', 'code': 20001, 'umessage': 'In Progress', 'data': []}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', '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'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}}}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-08-25 07:40:36,024.024 INFO    ] {'status': 'False', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}}
[2026-08-25 07:40:39,080.080 INFO    ] 200
[2026-08-25 07:40:39,082.082 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 07:40:39,086.086 INFO    ] {'status': 'False', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionStatus': {'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}}
[2026-08-25 07:40:42,145.145 INFO    ] 200
[2026-08-25 07:40:42,148.148 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 07:40:42,151.151 INFO    ] {'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-25 07:40:42,153.153 INFO    ] 2026-08-25 07:40:42
[2026-08-25 07:40:42,159.159 INFO    ] Order Completed 
[2026-08-25 07:40:42,161.161 INFO    ] Order Completed 
[2026-08-25 07:40:42,164.164 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 07:40:42,167.167 INFO    ] 2026-08-25 07:40:42
[2026-08-25 07:40:42,170.170 INFO    ] playing audio file
[2026-08-25 07:40:42,189.189 INFO    ] 2026-08-25 07:40:42
[2026-08-25 07:40:42,192.192 INFO    ] {'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-25 07:40:42,195.195 INFO    ] 2026-08-25 07:40:42
[2026-08-25 07:40:43,196.196 INFO    ] 200
[2026-08-25 07:40:43,198.198 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825073928818", "skus": [{"image_url": "https://images.tinymart.in/product/4500725-5961.png", "skuid": "4500725", "door_id": "", "unit_price": "10", "qty": 1, "tray_id": "26", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm per peice", "sku_total": 10.0}], "res": "True", "total_amount": 10.0, "logic": "WBL"}
[2026-08-25 07:40:43,201.201 INFO    ] {'res': 'True', 'anomaly': 0, 'total_amount': 10.0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'tray_id': '26', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'unit_price': '10'}], 'orderId': 'TM03202401260825073928818'}
[2026-08-25 07:40:43,203.203 INFO    ] {'res': 'True', 'anomaly': 0, 'total_amount': 10.0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'tray_id': '26', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'unit_price': '10'}], 'orderId': 'TM03202401260825073928818'}
[2026-08-25 07:40:43,206.206 INFO    ] 2026-08-25 07:40:43
[2026-08-25 07:40:43,208.208 INFO    ] 2026-08-25 07:40:43
[2026-08-25 07:40:43,211.211 INFO    ] 10
[2026-08-25 07:40:43,214.214 INFO    ] 2026-08-25 07:40:43
[2026-08-25 07:40:43,216.216 INFO    ] 2026-08-25 07:40:43
[2026-08-25 07:40:43,219.219 INFO    ]  Your Bill Amount is 10
[2026-08-25 07:40:43,221.221 INFO    ]  Your Bill Amount is 10
[2026-08-25 07:40:43,223.223 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-08-25 07:40:43,225.225 INFO    ] 2026-08-25 07:40:43
[2026-08-25 07:40:43,228.228 INFO    ] playing audio file
[2026-08-25 07:40:43,244.244 INFO    ] 2026-08-25 07:40:43
[2026-08-25 07:40:43,248.248 INFO    ] 2026-08-25 07:40:43
[2026-08-25 07:40:43,251.251 INFO    ] publish_status: order_id=TM03202401260825073928818
[2026-08-25 07:40:43,253.253 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825073928818
[2026-08-25 07:40:43,313.313 INFO    ] [publish_status] Message added to stream with ID: 1787623843347-0
[2026-08-25 07:40:43,316.316 INFO    ] Published to order:TM03202401260825073928818: {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825073928818', 'timestamp': '2026-08-25T02:10:43.249403Z', 'server_response': '{"res": "True", "anomaly": 0, "total_amount": 10.0, "logic": "WBL", "rstatus": true, "skus": [{"tray_id": "26", "mrp": "10", "qty": 1, "sku_total": 10.0, "skuid": "4500725", "image_url": "https://images.tinymart.in/product/4500725-5961.png", "name": "Maxvita Coconut Cookies 40gm per peice", "door_id": "", "unit_price": "10"}], "orderId": "TM03202401260825073928818"}'} (ID: 1787623843347-0)
[2026-08-25 07:40:44,126.126 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825073928818', 'server_response': {'res': 'True', 'anomaly': 0, 'total_amount': 10.0, 'logic': 'WBL', 'rstatus': True, 'skus': [{'tray_id': '26', 'mrp': '10', 'qty': 1, 'sku_total': 10.0, 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'unit_price': '10'}], 'orderId': 'TM03202401260825073928818'}}
[2026-08-25 07:40:44,128.128 INFO    ] 200
[2026-08-25 07:40:44,131.131 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM03202401260825073928818","server_response":{"res":"true","anomaly":0,"total_amount":10,"logic":"WBL","rstatus":true,"skus":[{"tray_id":"26","mrp":"10","qty":1,"sku_total":10,"skuid":"4500725","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm per peice","door_id":"","unit_price":"10"}],"orderId":"TM03202401260825073928818"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 07:40:44,134.134 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825073928818', 'server_response': {'res': 'true', 'anomaly': 0, 'skus': [{'tray_id': '26', 'mrp': '10', 'qty': 1, 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'skuid': '4500725'}], 'logic': 'WBL', 'rstatus': True, 'total_amount': 10, 'orderId': 'TM03202401260825073928818'}}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-08-25 07:40:44,137.137 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825073928818', 'server_response': {'res': 'true', 'anomaly': 0, 'skus': [{'tray_id': '26', 'mrp': '10', 'qty': 1, 'sku_total': 10, 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'skuid': '4500725'}], 'logic': 'WBL', 'rstatus': True, 'total_amount': 10, 'orderId': 'TM03202401260825073928818'}}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'data': 'order updated successfully'}}
[2026-08-25 07:40:44,141.141 INFO    ] 2026-08-25 07:40:44
[2026-08-25 07:40:47,539.539 INFO    ] 200
[2026-08-25 07:40:47,542.542 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": ["TM03202401260825073928818_0"], "order_items": [], "tray_synced": ["TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818", "TM03202401260825073928818"], "status": true}
[2026-08-25 07:40:47,545.545 INFO    ] 2026-08-25 07:40:47
[2026-08-25 07:40:47,649.649 INFO    ] 200
[2026-08-25 07:40:47,652.652 INFO    ] True
[2026-08-25 07:40:47,654.654 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825073928818
[2026-08-25 07:40:47,658.658 INFO    ] start order file deleted
[2026-08-25 07:40:47,661.661 INFO    ] Checking for system updates...
[2026-08-25 07:40:47,695.695 INFO    ] 200
[2026-08-25 07:40:47,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:47,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:40:47,751.751 INFO    ] No update needed
[2026-08-25 07:40:47,754.754 INFO    ] Checking for camera pi updates...
[2026-08-25 07:40:47,790.790 INFO    ] 200
[2026-08-25 07:40:47,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:47,833.833 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:40:47,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:40:47,890.890 INFO    ] No camera update needed
[2026-08-25 07:40:47,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:40:47,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:40:47,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:40:47,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:40:49,946.946 INFO    ] ================================================
[2026-08-25 07:40:49,961.961 INFO    ] Launching Daemon at Tue Aug 25 07:40:49 IST 2026
[2026-08-25 07:40:49,972.972 INFO    ] ================================================
[2026-08-25 07:40:50,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:40:50
[2026-08-25 07:40:51,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:40:51,433.433 INFO    ] Initializing speech engine...
[2026-08-25 07:40:51,439.439 INFO    ] 2026-08-25 07:40:51
[2026-08-25 07:40:51,688.688 INFO    ] 2026-08-25 07:40:51
[2026-08-25 07:40:51,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:40:51,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:40:51,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:40:52,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:40:52,159.159 INFO    ] time= 25/08/2026 07:40:52
[2026-08-25 07:40:52,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:40:52,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:40:52,380.380 INFO    ] No existing commands found in stream
[2026-08-25 07:40:57,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:40:57,410.410 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 07:40:59,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:40:59,593.593 INFO    ] Checking for system updates...
[2026-08-25 07:40:59,628.628 INFO    ] 200
[2026-08-25 07:40:59,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:59,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:40:59,686.686 INFO    ] No update needed
[2026-08-25 07:40:59,688.688 INFO    ] Checking for camera pi updates...
[2026-08-25 07:40:59,721.721 INFO    ] 200
[2026-08-25 07:40:59,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:40:59,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:40:59,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:40:59,824.824 INFO    ] No camera update needed
[2026-08-25 07:40:59,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:40:59,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:40:59,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:40:59,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:41:01,896.896 INFO    ] ================================================
[2026-08-25 07:41:01,938.938 INFO    ] Launching Daemon at Tue Aug 25 07:41:01 IST 2026
[2026-08-25 07:41:01,954.954 INFO    ] ================================================
[2026-08-25 07:41:02,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:41:02
[2026-08-25 07:41:03,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:41:03,637.637 INFO    ] Initializing speech engine...
[2026-08-25 07:41:03,642.642 INFO    ] 2026-08-25 07:41:03
[2026-08-25 07:41:03,921.921 INFO    ] 2026-08-25 07:41:03
[2026-08-25 07:41:03,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:41:04,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:41:04,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:41:04,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:41:04,380.380 INFO    ] time= 25/08/2026 07:41:04
[2026-08-25 07:41:04,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:41:04,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:41:04,546.546 INFO    ] No existing commands found in stream
[2026-08-25 07:41:09,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:41:09,572.572 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 07:41:13,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:41:13,954.954 INFO    ] Checking for system updates...
[2026-08-25 07:41:13,989.989 INFO    ] 200
[2026-08-25 07:41:13,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:14,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:41:14,047.047 INFO    ] No update needed
[2026-08-25 07:41:14,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 07:41:14,086.086 INFO    ] 200
[2026-08-25 07:41:14,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:14,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:41:14,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:41:14,197.197 INFO    ] No camera update needed
[2026-08-25 07:41:14,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:41:14,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:41:14,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:41:14,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:41:16,252.252 INFO    ] ================================================
[2026-08-25 07:41:16,268.268 INFO    ] Launching Daemon at Tue Aug 25 07:41:16 IST 2026
[2026-08-25 07:41:16,278.278 INFO    ] ================================================
[2026-08-25 07:41:16,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:41:16
[2026-08-25 07:41:17,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:41:17,730.730 INFO    ] Initializing speech engine...
[2026-08-25 07:41:17,735.735 INFO    ] 2026-08-25 07:41:17
[2026-08-25 07:41:17,992.992 INFO    ] 2026-08-25 07:41:17
[2026-08-25 07:41:18,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:41:18,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:41:18,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:41:18,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:41:18,460.460 INFO    ] time= 25/08/2026 07:41:18
[2026-08-25 07:41:18,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:41:18,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:41:18,692.692 INFO    ] No existing commands found in stream
[2026-08-25 07:41:23,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:41:23,711.711 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 07:41:26,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:41:26,352.352 INFO    ] Checking for system updates...
[2026-08-25 07:41:26,391.391 INFO    ] 200
[2026-08-25 07:41:26,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:26,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:41:26,453.453 INFO    ] No update needed
[2026-08-25 07:41:26,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 07:41:26,490.490 INFO    ] 200
[2026-08-25 07:41:26,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:26,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:41:26,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:41:26,598.598 INFO    ] No camera update needed
[2026-08-25 07:41:26,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:41:26,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:41:26,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:41:26,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:41:28,654.654 INFO    ] ================================================
[2026-08-25 07:41:28,669.669 INFO    ] Launching Daemon at Tue Aug 25 07:41:28 IST 2026
[2026-08-25 07:41:28,680.680 INFO    ] ================================================
[2026-08-25 07:41:29,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:41:29
[2026-08-25 07:41:29,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:41:30,265.265 INFO    ] Initializing speech engine...
[2026-08-25 07:41:30,279.279 INFO    ] 2026-08-25 07:41:30
[2026-08-25 07:41:30,555.555 INFO    ] 2026-08-25 07:41:30
[2026-08-25 07:41:30,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:41:30,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:41:30,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:41:30,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:41:31,009.009 INFO    ] time= 25/08/2026 07:41:30
[2026-08-25 07:41:31,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:41:31,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:41:31,178.178 INFO    ] No existing commands found in stream
[2026-08-25 07:41:36,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:41:36,191.191 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 07:41:38,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:41:38,553.553 INFO    ] Checking for system updates...
[2026-08-25 07:41:38,590.590 INFO    ] 200
[2026-08-25 07:41:38,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:38,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:41:38,656.656 INFO    ] No update needed
[2026-08-25 07:41:38,659.659 INFO    ] Checking for camera pi updates...
[2026-08-25 07:41:38,706.706 INFO    ] 200
[2026-08-25 07:41:38,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:38,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:41:38,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:41:38,809.809 INFO    ] No camera update needed
[2026-08-25 07:41:38,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:41:38,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:41:38,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:41:38,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:41:40,867.867 INFO    ] ================================================
[2026-08-25 07:41:40,882.882 INFO    ] Launching Daemon at Tue Aug 25 07:41:40 IST 2026
[2026-08-25 07:41:40,893.893 INFO    ] ================================================
[2026-08-25 07:41:41,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:41:41
[2026-08-25 07:41:42,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:41:42,309.309 INFO    ] Initializing speech engine...
[2026-08-25 07:41:42,321.321 INFO    ] 2026-08-25 07:41:42
[2026-08-25 07:41:42,604.604 INFO    ] 2026-08-25 07:41:42
[2026-08-25 07:41:42,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:41:42,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:41:42,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:41:42,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:41:42,978.978 INFO    ] time= 25/08/2026 07:41:42
[2026-08-25 07:41:43,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:41:43,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:41:43,101.101 INFO    ] No existing commands found in stream
[2026-08-25 07:41:48,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:41:48,116.116 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 07:41:52,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:41:52,344.344 INFO    ] Checking for system updates...
[2026-08-25 07:41:52,380.380 INFO    ] 200
[2026-08-25 07:41:52,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:52,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:41:52,444.444 INFO    ] No update needed
[2026-08-25 07:41:52,447.447 INFO    ] Checking for camera pi updates...
[2026-08-25 07:41:52,483.483 INFO    ] 200
[2026-08-25 07:41:52,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:41:52,526.526 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:41:52,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:41:52,579.579 INFO    ] No camera update needed
[2026-08-25 07:41:52,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:41:52,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:41:52,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:41:52,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:41:54,633.633 INFO    ] ================================================
[2026-08-25 07:41:54,648.648 INFO    ] Launching Daemon at Tue Aug 25 07:41:54 IST 2026
[2026-08-25 07:41:54,659.659 INFO    ] ================================================
[2026-08-25 07:41:55,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:41:55
[2026-08-25 07:41:55,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:41:56,113.113 INFO    ] Initializing speech engine...
[2026-08-25 07:41:56,119.119 INFO    ] 2026-08-25 07:41:56
[2026-08-25 07:41:56,379.379 INFO    ] 2026-08-25 07:41:56
[2026-08-25 07:41:56,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:41:56,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:41:56,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:41:56,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:41:56,929.929 INFO    ] time= 25/08/2026 07:41:56
[2026-08-25 07:41:56,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:41:56,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:41:57,082.082 INFO    ] No existing commands found in stream
[2026-08-25 07:42:02,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:42:02,101.101 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 07:42:02,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:42:02,674.674 INFO    ] Checking for system updates...
[2026-08-25 07:42:02,718.718 INFO    ] 200
[2026-08-25 07:42:02,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:02,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:42:02,791.791 INFO    ] No update needed
[2026-08-25 07:42:02,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 07:42:02,834.834 INFO    ] 200
[2026-08-25 07:42:02,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:02,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:42:03,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:42:03,051.051 INFO    ] No camera update needed
[2026-08-25 07:42:03,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:42:03,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:42:03,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:42:03,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:42:05,111.111 INFO    ] ================================================
[2026-08-25 07:42:05,127.127 INFO    ] Launching Daemon at Tue Aug 25 07:42:05 IST 2026
[2026-08-25 07:42:05,138.138 INFO    ] ================================================
[2026-08-25 07:42:05,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:42:05
[2026-08-25 07:42:06,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:42:06,527.527 INFO    ] Initializing speech engine...
[2026-08-25 07:42:06,534.534 INFO    ] 2026-08-25 07:42:06
[2026-08-25 07:42:06,843.843 INFO    ] 2026-08-25 07:42:06
[2026-08-25 07:42:06,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:42:07,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:42:07,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:42:07,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:42:07,246.246 INFO    ] time= 25/08/2026 07:42:07
[2026-08-25 07:42:07,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:42:07,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:42:07,415.415 INFO    ] No existing commands found in stream
[2026-08-25 07:42:12,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:42:12,443.443 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 07:42:12,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:42:12,923.923 INFO    ] Checking for system updates...
[2026-08-25 07:42:12,960.960 INFO    ] 200
[2026-08-25 07:42:12,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:13,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:42:13,018.018 INFO    ] No update needed
[2026-08-25 07:42:13,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 07:42:13,056.056 INFO    ] 200
[2026-08-25 07:42:13,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:13,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:42:13,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:42:13,159.159 INFO    ] No camera update needed
[2026-08-25 07:42:13,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:42:13,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:42:13,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:42:13,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:42:15,213.213 INFO    ] ================================================
[2026-08-25 07:42:15,229.229 INFO    ] Launching Daemon at Tue Aug 25 07:42:15 IST 2026
[2026-08-25 07:42:15,240.240 INFO    ] ================================================
[2026-08-25 07:42:15,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:42:15
[2026-08-25 07:42:16,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:42:16,671.671 INFO    ] Initializing speech engine...
[2026-08-25 07:42:16,679.679 INFO    ] 2026-08-25 07:42:16
[2026-08-25 07:42:16,935.935 INFO    ] 2026-08-25 07:42:16
[2026-08-25 07:42:16,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:42:17,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:42:17,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:42:17,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:42:17,406.406 INFO    ] time= 25/08/2026 07:42:17
[2026-08-25 07:42:17,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:42:17,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:42:17,609.609 INFO    ] No existing commands found in stream
[2026-08-25 07:42:22,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:42:22,637.637 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 07:42:24,401.401 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:42:24,403.403 INFO    ] Checking for system updates...
[2026-08-25 07:42:24,439.439 INFO    ] 200
[2026-08-25 07:42:24,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:24,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:42:24,502.502 INFO    ] No update needed
[2026-08-25 07:42:24,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 07:42:24,541.541 INFO    ] 200
[2026-08-25 07:42:24,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:24,591.591 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:42:24,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:42:24,640.640 INFO    ] No camera update needed
[2026-08-25 07:42:24,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:42:24,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:42:24,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:42:24,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:42:26,695.695 INFO    ] ================================================
[2026-08-25 07:42:26,710.710 INFO    ] Launching Daemon at Tue Aug 25 07:42:26 IST 2026
[2026-08-25 07:42:26,721.721 INFO    ] ================================================
[2026-08-25 07:42:27,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:42:27
[2026-08-25 07:42:27,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:42:28,171.171 INFO    ] Initializing speech engine...
[2026-08-25 07:42:28,180.180 INFO    ] 2026-08-25 07:42:28
[2026-08-25 07:42:28,428.428 INFO    ] 2026-08-25 07:42:28
[2026-08-25 07:42:28,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:42:28,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:42:28,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:42:28,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:42:28,907.907 INFO    ] time= 25/08/2026 07:42:28
[2026-08-25 07:42:28,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:42:28,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:42:29,127.127 INFO    ] No existing commands found in stream
[2026-08-25 07:42:34,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:42:34,150.150 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 07:42:38,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:42:38,139.139 INFO    ] Checking for system updates...
[2026-08-25 07:42:38,175.175 INFO    ] 200
[2026-08-25 07:42:38,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:38,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:42:38,238.238 INFO    ] No update needed
[2026-08-25 07:42:38,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 07:42:38,276.276 INFO    ] 200
[2026-08-25 07:42:38,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:38,323.323 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:42:38,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:42:38,381.381 INFO    ] No camera update needed
[2026-08-25 07:42:38,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:42:38,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:42:38,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:42:38,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:42:40,436.436 INFO    ] ================================================
[2026-08-25 07:42:40,451.451 INFO    ] Launching Daemon at Tue Aug 25 07:42:40 IST 2026
[2026-08-25 07:42:40,462.462 INFO    ] ================================================
[2026-08-25 07:42:41,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:42:41
[2026-08-25 07:42:41,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:42:41,916.916 INFO    ] Initializing speech engine...
[2026-08-25 07:42:41,925.925 INFO    ] 2026-08-25 07:42:41
[2026-08-25 07:42:42,183.183 INFO    ] 2026-08-25 07:42:42
[2026-08-25 07:42:42,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:42:42,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:42:42,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:42:42,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:42:42,643.643 INFO    ] time= 25/08/2026 07:42:42
[2026-08-25 07:42:42,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:42:42,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:42:42,853.853 INFO    ] No existing commands found in stream
[2026-08-25 07:42:47,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:42:47,886.886 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 07:42:51,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:42:51,762.762 INFO    ] Checking for system updates...
[2026-08-25 07:42:51,799.799 INFO    ] 200
[2026-08-25 07:42:51,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:51,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:42:51,861.861 INFO    ] No update needed
[2026-08-25 07:42:51,864.864 INFO    ] Checking for camera pi updates...
[2026-08-25 07:42:51,900.900 INFO    ] 200
[2026-08-25 07:42:51,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:42:51,942.942 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:42:51,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:42:51,988.988 INFO    ] No camera update needed
[2026-08-25 07:42:51,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:42:51,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:42:51,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:42:52,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:42:54,046.046 INFO    ] ================================================
[2026-08-25 07:42:54,062.062 INFO    ] Launching Daemon at Tue Aug 25 07:42:54 IST 2026
[2026-08-25 07:42:54,073.073 INFO    ] ================================================
[2026-08-25 07:42:54,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:42:54
[2026-08-25 07:42:55,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:42:55,486.486 INFO    ] Initializing speech engine...
[2026-08-25 07:42:55,504.504 INFO    ] 2026-08-25 07:42:55
[2026-08-25 07:42:55,752.752 INFO    ] 2026-08-25 07:42:55
[2026-08-25 07:42:55,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:42:55,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:42:56,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:42:56,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:42:56,195.195 INFO    ] time= 25/08/2026 07:42:56
[2026-08-25 07:42:56,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:42:56,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:42:56,445.445 INFO    ] No existing commands found in stream
[2026-08-25 07:43:01,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:43:01,473.473 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 07:43:02,372.372 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:43:02,375.375 INFO    ] Checking for system updates...
[2026-08-25 07:43:02,420.420 INFO    ] 200
[2026-08-25 07:43:02,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:02,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:43:02,500.500 INFO    ] No update needed
[2026-08-25 07:43:02,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 07:43:02,551.551 INFO    ] 200
[2026-08-25 07:43:02,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:02,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:43:02,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:43:02,671.671 INFO    ] No camera update needed
[2026-08-25 07:43:02,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:43:02,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:43:02,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:43:02,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:43:04,730.730 INFO    ] ================================================
[2026-08-25 07:43:04,746.746 INFO    ] Launching Daemon at Tue Aug 25 07:43:04 IST 2026
[2026-08-25 07:43:04,758.758 INFO    ] ================================================
[2026-08-25 07:43:05,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:43:05
[2026-08-25 07:43:05,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:43:06,209.209 INFO    ] Initializing speech engine...
[2026-08-25 07:43:06,220.220 INFO    ] 2026-08-25 07:43:06
[2026-08-25 07:43:06,483.483 INFO    ] 2026-08-25 07:43:06
[2026-08-25 07:43:06,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:43:06,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:43:06,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:43:06,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:43:06,985.985 INFO    ] time= 25/08/2026 07:43:06
[2026-08-25 07:43:07,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:43:07,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:43:07,178.178 INFO    ] No existing commands found in stream
[2026-08-25 07:43:12,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:43:12,207.207 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 07:43:16,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:43:16,276.276 INFO    ] Checking for system updates...
[2026-08-25 07:43:16,314.314 INFO    ] 200
[2026-08-25 07:43:16,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:16,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:43:16,371.371 INFO    ] No update needed
[2026-08-25 07:43:16,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 07:43:16,407.407 INFO    ] 200
[2026-08-25 07:43:16,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:16,453.453 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:43:16,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:43:16,512.512 INFO    ] No camera update needed
[2026-08-25 07:43:16,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:43:16,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:43:16,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:43:16,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:43:18,568.568 INFO    ] ================================================
[2026-08-25 07:43:18,583.583 INFO    ] Launching Daemon at Tue Aug 25 07:43:18 IST 2026
[2026-08-25 07:43:18,594.594 INFO    ] ================================================
[2026-08-25 07:43:19,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:43:19
[2026-08-25 07:43:19,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:43:20,012.012 INFO    ] Initializing speech engine...
[2026-08-25 07:43:20,021.021 INFO    ] 2026-08-25 07:43:20
[2026-08-25 07:43:20,269.269 INFO    ] 2026-08-25 07:43:20
[2026-08-25 07:43:20,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:43:20,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:43:20,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:43:20,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:43:20,642.642 INFO    ] time= 25/08/2026 07:43:20
[2026-08-25 07:43:20,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:43:20,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:43:20,821.821 INFO    ] No existing commands found in stream
[2026-08-25 07:43:25,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:43:25,849.849 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 07:43:29,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:43:29,313.313 INFO    ] Checking for system updates...
[2026-08-25 07:43:29,349.349 INFO    ] 200
[2026-08-25 07:43:29,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:29,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:43:29,413.413 INFO    ] No update needed
[2026-08-25 07:43:29,416.416 INFO    ] Checking for camera pi updates...
[2026-08-25 07:43:29,450.450 INFO    ] 200
[2026-08-25 07:43:29,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:29,493.493 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:43:29,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:43:29,545.545 INFO    ] No camera update needed
[2026-08-25 07:43:29,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:43:29,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:43:29,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:43:29,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:43:31,603.603 INFO    ] ================================================
[2026-08-25 07:43:31,619.619 INFO    ] Launching Daemon at Tue Aug 25 07:43:31 IST 2026
[2026-08-25 07:43:31,630.630 INFO    ] ================================================
[2026-08-25 07:43:32,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:43:32
[2026-08-25 07:43:32,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:43:33,127.127 INFO    ] Initializing speech engine...
[2026-08-25 07:43:33,138.138 INFO    ] 2026-08-25 07:43:33
[2026-08-25 07:43:33,393.393 INFO    ] 2026-08-25 07:43:33
[2026-08-25 07:43:33,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:43:33,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:43:33,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:43:33,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:43:33,838.838 INFO    ] time= 25/08/2026 07:43:33
[2026-08-25 07:43:33,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:43:33,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:43:34,087.087 INFO    ] No existing commands found in stream
[2026-08-25 07:43:39,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:43:39,121.121 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 07:43:40,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:43:40,245.245 INFO    ] Checking for system updates...
[2026-08-25 07:43:40,281.281 INFO    ] 200
[2026-08-25 07:43:40,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:40,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:43:40,344.344 INFO    ] No update needed
[2026-08-25 07:43:40,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 07:43:40,383.383 INFO    ] 200
[2026-08-25 07:43:40,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:40,426.426 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:43:40,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:43:40,474.474 INFO    ] No camera update needed
[2026-08-25 07:43:40,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:43:40,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:43:40,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:43:40,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:43:42,530.530 INFO    ] ================================================
[2026-08-25 07:43:42,546.546 INFO    ] Launching Daemon at Tue Aug 25 07:43:42 IST 2026
[2026-08-25 07:43:42,557.557 INFO    ] ================================================
[2026-08-25 07:43:43,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:43:43
[2026-08-25 07:43:43,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:43:44,179.179 INFO    ] Initializing speech engine...
[2026-08-25 07:43:44,191.191 INFO    ] 2026-08-25 07:43:44
[2026-08-25 07:43:44,476.476 INFO    ] 2026-08-25 07:43:44
[2026-08-25 07:43:44,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:43:44,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:43:44,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:43:44,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:43:44,952.952 INFO    ] time= 25/08/2026 07:43:44
[2026-08-25 07:43:45,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:43:45,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:43:45,165.165 INFO    ] No existing commands found in stream
[2026-08-25 07:43:50,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:43:50,197.197 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 07:43:53,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:43:53,346.346 INFO    ] Checking for system updates...
[2026-08-25 07:43:53,387.387 INFO    ] 200
[2026-08-25 07:43:53,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:53,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:43:53,457.457 INFO    ] No update needed
[2026-08-25 07:43:53,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 07:43:53,495.495 INFO    ] 200
[2026-08-25 07:43:53,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:43:53,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:43:53,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:43:53,589.589 INFO    ] No camera update needed
[2026-08-25 07:43:53,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:43:53,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:43:53,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:43:53,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:43:55,646.646 INFO    ] ================================================
[2026-08-25 07:43:55,661.661 INFO    ] Launching Daemon at Tue Aug 25 07:43:55 IST 2026
[2026-08-25 07:43:55,672.672 INFO    ] ================================================
[2026-08-25 07:43:56,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:43:56
[2026-08-25 07:43:56,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:43:57,128.128 INFO    ] Initializing speech engine...
[2026-08-25 07:43:57,138.138 INFO    ] 2026-08-25 07:43:57
[2026-08-25 07:43:57,397.397 INFO    ] 2026-08-25 07:43:57
[2026-08-25 07:43:57,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:43:57,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:43:57,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:43:57,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:43:57,863.863 INFO    ] time= 25/08/2026 07:43:57
[2026-08-25 07:43:57,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:43:57,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:43:58,078.078 INFO    ] No existing commands found in stream
[2026-08-25 07:44:03,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:44:03,111.111 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 07:44:05,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:44:05,094.094 INFO    ] Checking for system updates...
[2026-08-25 07:44:05,129.129 INFO    ] 200
[2026-08-25 07:44:05,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:05,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:44:05,187.187 INFO    ] No update needed
[2026-08-25 07:44:05,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 07:44:05,222.222 INFO    ] 200
[2026-08-25 07:44:05,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:05,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:44:05,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:44:05,411.411 INFO    ] No camera update needed
[2026-08-25 07:44:05,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:44:05,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:44:05,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:44:05,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:44:07,468.468 INFO    ] ================================================
[2026-08-25 07:44:07,483.483 INFO    ] Launching Daemon at Tue Aug 25 07:44:07 IST 2026
[2026-08-25 07:44:07,493.493 INFO    ] ================================================
[2026-08-25 07:44:08,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:44:08
[2026-08-25 07:44:08,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:44:09,074.074 INFO    ] Initializing speech engine...
[2026-08-25 07:44:09,084.084 INFO    ] 2026-08-25 07:44:09
[2026-08-25 07:44:09,350.350 INFO    ] 2026-08-25 07:44:09
[2026-08-25 07:44:09,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:44:09,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:44:09,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:44:09,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:44:09,870.870 INFO    ] time= 25/08/2026 07:44:09
[2026-08-25 07:44:09,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:44:09,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:44:10,056.056 INFO    ] No existing commands found in stream
[2026-08-25 07:44:15,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:44:15,089.089 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 07:44:18,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:44:18,342.342 INFO    ] Checking for system updates...
[2026-08-25 07:44:18,382.382 INFO    ] 200
[2026-08-25 07:44:18,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:18,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:44:18,445.445 INFO    ] No update needed
[2026-08-25 07:44:18,447.447 INFO    ] Checking for camera pi updates...
[2026-08-25 07:44:18,480.480 INFO    ] 200
[2026-08-25 07:44:18,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:18,527.527 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:44:18,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:44:18,578.578 INFO    ] No camera update needed
[2026-08-25 07:44:18,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:44:18,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:44:18,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:44:18,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:44:20,633.633 INFO    ] ================================================
[2026-08-25 07:44:20,648.648 INFO    ] Launching Daemon at Tue Aug 25 07:44:20 IST 2026
[2026-08-25 07:44:20,659.659 INFO    ] ================================================
[2026-08-25 07:44:21,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:44:21
[2026-08-25 07:44:21,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:44:22,242.242 INFO    ] Initializing speech engine...
[2026-08-25 07:44:22,248.248 INFO    ] 2026-08-25 07:44:22
[2026-08-25 07:44:22,526.526 INFO    ] 2026-08-25 07:44:22
[2026-08-25 07:44:22,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:44:22,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:44:22,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:44:22,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:44:23,016.016 INFO    ] time= 25/08/2026 07:44:22
[2026-08-25 07:44:23,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:44:23,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:44:23,232.232 INFO    ] No existing commands found in stream
[2026-08-25 07:44:28,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:44:28,252.252 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 07:44:29,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:44:29,085.085 INFO    ] Checking for system updates...
[2026-08-25 07:44:29,121.121 INFO    ] 200
[2026-08-25 07:44:29,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:29,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:44:29,179.179 INFO    ] No update needed
[2026-08-25 07:44:29,182.182 INFO    ] Checking for camera pi updates...
[2026-08-25 07:44:29,223.223 INFO    ] 200
[2026-08-25 07:44:29,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:29,269.269 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:44:29,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:44:29,316.316 INFO    ] No camera update needed
[2026-08-25 07:44:29,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:44:29,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:44:29,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:44:29,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:44:31,370.370 INFO    ] ================================================
[2026-08-25 07:44:31,386.386 INFO    ] Launching Daemon at Tue Aug 25 07:44:31 IST 2026
[2026-08-25 07:44:31,396.396 INFO    ] ================================================
[2026-08-25 07:44:32,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:44:32
[2026-08-25 07:44:32,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:44:33,092.092 INFO    ] Initializing speech engine...
[2026-08-25 07:44:33,109.109 INFO    ] 2026-08-25 07:44:33
[2026-08-25 07:44:33,373.373 INFO    ] 2026-08-25 07:44:33
[2026-08-25 07:44:33,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:44:33,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:44:33,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:44:33,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:44:33,861.861 INFO    ] time= 25/08/2026 07:44:33
[2026-08-25 07:44:33,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:44:33,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:44:34,092.092 INFO    ] No existing commands found in stream
[2026-08-25 07:44:39,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:44:39,112.112 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 07:44:43,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:44:43,201.201 INFO    ] Checking for system updates...
[2026-08-25 07:44:43,238.238 INFO    ] 200
[2026-08-25 07:44:43,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:43,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:44:43,295.295 INFO    ] No update needed
[2026-08-25 07:44:43,297.297 INFO    ] Checking for camera pi updates...
[2026-08-25 07:44:43,331.331 INFO    ] 200
[2026-08-25 07:44:43,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:43,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:44:43,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:44:43,423.423 INFO    ] No camera update needed
[2026-08-25 07:44:43,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:44:43,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:44:43,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:44:43,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:44:45,477.477 INFO    ] ================================================
[2026-08-25 07:44:45,493.493 INFO    ] Launching Daemon at Tue Aug 25 07:44:45 IST 2026
[2026-08-25 07:44:45,504.504 INFO    ] ================================================
[2026-08-25 07:44:46,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:44:46
[2026-08-25 07:44:46,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:44:47,086.086 INFO    ] Initializing speech engine...
[2026-08-25 07:44:47,094.094 INFO    ] 2026-08-25 07:44:47
[2026-08-25 07:44:47,379.379 INFO    ] 2026-08-25 07:44:47
[2026-08-25 07:44:47,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:44:47,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:44:47,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:44:47,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:44:47,917.917 INFO    ] time= 25/08/2026 07:44:47
[2026-08-25 07:44:47,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:44:47,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:44:48,085.085 INFO    ] No existing commands found in stream
[2026-08-25 07:44:53,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:44:53,111.111 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 07:44:54,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:44:54,932.932 INFO    ] Checking for system updates...
[2026-08-25 07:44:54,973.973 INFO    ] 200
[2026-08-25 07:44:54,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:55,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:44:55,037.037 INFO    ] No update needed
[2026-08-25 07:44:55,040.040 INFO    ] Checking for camera pi updates...
[2026-08-25 07:44:55,077.077 INFO    ] 200
[2026-08-25 07:44:55,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:44:55,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:44:55,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:44:55,183.183 INFO    ] No camera update needed
[2026-08-25 07:44:55,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:44:55,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:44:55,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:44:55,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:44:57,238.238 INFO    ] ================================================
[2026-08-25 07:44:57,253.253 INFO    ] Launching Daemon at Tue Aug 25 07:44:57 IST 2026
[2026-08-25 07:44:57,264.264 INFO    ] ================================================
[2026-08-25 07:44:57,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:44:57
[2026-08-25 07:44:58,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:44:58,865.865 INFO    ] Initializing speech engine...
[2026-08-25 07:44:58,879.879 INFO    ] 2026-08-25 07:44:58
[2026-08-25 07:44:59,157.157 INFO    ] 2026-08-25 07:44:59
[2026-08-25 07:44:59,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:44:59,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:44:59,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:44:59,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:44:59,614.614 INFO    ] time= 25/08/2026 07:44:59
[2026-08-25 07:44:59,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:44:59,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:44:59,761.761 INFO    ] No existing commands found in stream
[2026-08-25 07:45:04,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:45:04,797.797 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 07:45:06,920.920 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:45:06,923.923 INFO    ] Checking for system updates...
[2026-08-25 07:45:06,964.964 INFO    ] 200
[2026-08-25 07:45:06,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:07,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:45:07,058.058 INFO    ] No update needed
[2026-08-25 07:45:07,062.062 INFO    ] Checking for camera pi updates...
[2026-08-25 07:45:07,101.101 INFO    ] 200
[2026-08-25 07:45:07,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:07,145.145 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:45:07,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:45:07,197.197 INFO    ] No camera update needed
[2026-08-25 07:45:07,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:45:07,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:45:07,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:45:07,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:45:09,258.258 INFO    ] ================================================
[2026-08-25 07:45:09,274.274 INFO    ] Launching Daemon at Tue Aug 25 07:45:09 IST 2026
[2026-08-25 07:45:09,284.284 INFO    ] ================================================
[2026-08-25 07:45:09,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:45:09
[2026-08-25 07:45:10,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:45:10,737.737 INFO    ] Initializing speech engine...
[2026-08-25 07:45:10,760.760 INFO    ] 2026-08-25 07:45:10
[2026-08-25 07:45:11,015.015 INFO    ] 2026-08-25 07:45:11
[2026-08-25 07:45:11,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:45:11,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:45:11,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:45:11,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:45:11,495.495 INFO    ] time= 25/08/2026 07:45:11
[2026-08-25 07:45:11,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:45:11,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:45:11,739.739 INFO    ] No existing commands found in stream
[2026-08-25 07:45:16,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:45:16,762.762 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 07:45:19,903.903 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:45:19,906.906 INFO    ] Checking for system updates...
[2026-08-25 07:45:19,946.946 INFO    ] 200
[2026-08-25 07:45:19,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:20,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:45:20,004.004 INFO    ] No update needed
[2026-08-25 07:45:20,007.007 INFO    ] Checking for camera pi updates...
[2026-08-25 07:45:20,042.042 INFO    ] 200
[2026-08-25 07:45:20,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:20,091.091 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:45:20,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:45:20,149.149 INFO    ] No camera update needed
[2026-08-25 07:45:20,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:45:20,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:45:20,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:45:20,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:45:22,208.208 INFO    ] ================================================
[2026-08-25 07:45:22,224.224 INFO    ] Launching Daemon at Tue Aug 25 07:45:22 IST 2026
[2026-08-25 07:45:22,235.235 INFO    ] ================================================
[2026-08-25 07:45:22,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:45:22
[2026-08-25 07:45:23,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:45:23,674.674 INFO    ] Initializing speech engine...
[2026-08-25 07:45:23,690.690 INFO    ] 2026-08-25 07:45:23
[2026-08-25 07:45:23,975.975 INFO    ] 2026-08-25 07:45:23
[2026-08-25 07:45:24,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:45:24,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:45:24,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:45:24,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:45:24,379.379 INFO    ] time= 25/08/2026 07:45:24
[2026-08-25 07:45:24,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:45:24,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:45:24,474.474 INFO    ] No existing commands found in stream
[2026-08-25 07:45:29,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:45:29,490.490 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 07:45:31,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:45:31,193.193 INFO    ] Checking for system updates...
[2026-08-25 07:45:31,230.230 INFO    ] 200
[2026-08-25 07:45:31,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:31,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:45:31,294.294 INFO    ] No update needed
[2026-08-25 07:45:31,296.296 INFO    ] Checking for camera pi updates...
[2026-08-25 07:45:31,330.330 INFO    ] 200
[2026-08-25 07:45:31,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:31,379.379 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:45:31,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:45:31,442.442 INFO    ] No camera update needed
[2026-08-25 07:45:31,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:45:31,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:45:31,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:45:31,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:45:33,503.503 INFO    ] ================================================
[2026-08-25 07:45:33,518.518 INFO    ] Launching Daemon at Tue Aug 25 07:45:33 IST 2026
[2026-08-25 07:45:33,528.528 INFO    ] ================================================
[2026-08-25 07:45:34,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:45:34
[2026-08-25 07:45:34,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:45:34,932.932 INFO    ] Initializing speech engine...
[2026-08-25 07:45:34,938.938 INFO    ] 2026-08-25 07:45:34
[2026-08-25 07:45:35,232.232 INFO    ] 2026-08-25 07:45:35
[2026-08-25 07:45:35,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:45:35,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:45:35,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:45:35,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:45:35,581.581 INFO    ] time= 25/08/2026 07:45:35
[2026-08-25 07:45:35,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:45:35,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:45:35,731.731 INFO    ] No existing commands found in stream
[2026-08-25 07:45:40,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:45:40,744.744 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 07:45:41,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:45:41,815.815 INFO    ] Checking for system updates...
[2026-08-25 07:45:41,850.850 INFO    ] 200
[2026-08-25 07:45:41,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:41,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:45:41,907.907 INFO    ] No update needed
[2026-08-25 07:45:41,909.909 INFO    ] Checking for camera pi updates...
[2026-08-25 07:45:41,942.942 INFO    ] 200
[2026-08-25 07:45:41,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:41,984.984 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:45:42,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:45:42,033.033 INFO    ] No camera update needed
[2026-08-25 07:45:42,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:45:42,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:45:42,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:45:42,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:45:44,090.090 INFO    ] ================================================
[2026-08-25 07:45:44,105.105 INFO    ] Launching Daemon at Tue Aug 25 07:45:44 IST 2026
[2026-08-25 07:45:44,116.116 INFO    ] ================================================
[2026-08-25 07:45:44,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:45:44
[2026-08-25 07:45:45,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:45:45,552.552 INFO    ] Initializing speech engine...
[2026-08-25 07:45:45,576.576 INFO    ] 2026-08-25 07:45:45
[2026-08-25 07:45:45,849.849 INFO    ] 2026-08-25 07:45:45
[2026-08-25 07:45:45,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:45:46,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:45:46,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:45:46,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:45:46,219.219 INFO    ] time= 25/08/2026 07:45:46
[2026-08-25 07:45:46,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:45:46,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:45:46,345.345 INFO    ] No existing commands found in stream
[2026-08-25 07:45:51,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:45:51,360.360 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 07:45:52,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:45:52,688.688 INFO    ] Checking for system updates...
[2026-08-25 07:45:52,726.726 INFO    ] 200
[2026-08-25 07:45:52,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:52,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:45:52,783.783 INFO    ] No update needed
[2026-08-25 07:45:52,785.785 INFO    ] Checking for camera pi updates...
[2026-08-25 07:45:52,818.818 INFO    ] 200
[2026-08-25 07:45:52,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:45:52,861.861 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:45:52,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:45:52,909.909 INFO    ] No camera update needed
[2026-08-25 07:45:52,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:45:52,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:45:52,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:45:52,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:45:54,963.963 INFO    ] ================================================
[2026-08-25 07:45:54,978.978 INFO    ] Launching Daemon at Tue Aug 25 07:45:54 IST 2026
[2026-08-25 07:45:54,988.988 INFO    ] ================================================
[2026-08-25 07:45:55,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:45:55
[2026-08-25 07:45:56,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:45:56,429.429 INFO    ] Initializing speech engine...
[2026-08-25 07:45:56,437.437 INFO    ] 2026-08-25 07:45:56
[2026-08-25 07:45:56,733.733 INFO    ] 2026-08-25 07:45:56
[2026-08-25 07:45:56,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:45:56,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:45:56,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:45:57,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:45:57,151.151 INFO    ] time= 25/08/2026 07:45:57
[2026-08-25 07:45:57,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:45:57,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:45:57,322.322 INFO    ] No existing commands found in stream
[2026-08-25 07:46:02,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:46:02,352.352 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 07:46:05,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:46:05,384.384 INFO    ] Checking for system updates...
[2026-08-25 07:46:05,420.420 INFO    ] 200
[2026-08-25 07:46:05,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:05,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:05,479.479 INFO    ] No update needed
[2026-08-25 07:46:05,481.481 INFO    ] Checking for camera pi updates...
[2026-08-25 07:46:05,514.514 INFO    ] 200
[2026-08-25 07:46:05,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:05,558.558 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:46:05,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:05,606.606 INFO    ] No camera update needed
[2026-08-25 07:46:05,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:46:05,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:46:05,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:46:05,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:46:07,661.661 INFO    ] ================================================
[2026-08-25 07:46:07,677.677 INFO    ] Launching Daemon at Tue Aug 25 07:46:07 IST 2026
[2026-08-25 07:46:07,687.687 INFO    ] ================================================
[2026-08-25 07:46:08,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:46:08
[2026-08-25 07:46:08,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:46:09,112.112 INFO    ] Initializing speech engine...
[2026-08-25 07:46:09,118.118 INFO    ] 2026-08-25 07:46:09
[2026-08-25 07:46:09,377.377 INFO    ] 2026-08-25 07:46:09
[2026-08-25 07:46:09,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:46:09,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:46:09,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:46:09,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:46:09,835.835 INFO    ] time= 25/08/2026 07:46:09
[2026-08-25 07:46:09,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:46:09,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:46:10,042.042 INFO    ] No existing commands found in stream
[2026-08-25 07:46:15,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:46:15,077.077 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 07:46:19,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:46:19,342.342 INFO    ] Checking for system updates...
[2026-08-25 07:46:19,378.378 INFO    ] 200
[2026-08-25 07:46:19,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:19,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:19,442.442 INFO    ] No update needed
[2026-08-25 07:46:19,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 07:46:19,483.483 INFO    ] 200
[2026-08-25 07:46:19,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:19,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:46:19,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:19,675.675 INFO    ] No camera update needed
[2026-08-25 07:46:19,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:46:19,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:46:19,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:46:19,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:46:21,731.731 INFO    ] ================================================
[2026-08-25 07:46:21,747.747 INFO    ] Launching Daemon at Tue Aug 25 07:46:21 IST 2026
[2026-08-25 07:46:21,758.758 INFO    ] ================================================
[2026-08-25 07:46:22,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:46:22
[2026-08-25 07:46:22,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:46:23,179.179 INFO    ] Initializing speech engine...
[2026-08-25 07:46:23,187.187 INFO    ] 2026-08-25 07:46:23
[2026-08-25 07:46:23,443.443 INFO    ] 2026-08-25 07:46:23
[2026-08-25 07:46:23,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:46:23,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:46:23,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:46:23,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:46:23,930.930 INFO    ] time= 25/08/2026 07:46:23
[2026-08-25 07:46:23,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:46:23,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:46:24,121.121 INFO    ] No existing commands found in stream
[2026-08-25 07:46:29,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:46:29,148.148 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 07:46:33,040.040 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:46:33,043.043 INFO    ] Checking for system updates...
[2026-08-25 07:46:33,078.078 INFO    ] 200
[2026-08-25 07:46:33,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:33,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:33,137.137 INFO    ] No update needed
[2026-08-25 07:46:33,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 07:46:33,177.177 INFO    ] 200
[2026-08-25 07:46:33,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:33,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:46:33,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:33,281.281 INFO    ] No camera update needed
[2026-08-25 07:46:33,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:46:33,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:46:33,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:46:33,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:46:35,336.336 INFO    ] ================================================
[2026-08-25 07:46:35,352.352 INFO    ] Launching Daemon at Tue Aug 25 07:46:35 IST 2026
[2026-08-25 07:46:35,363.363 INFO    ] ================================================
[2026-08-25 07:46:35,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:46:35
[2026-08-25 07:46:36,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:46:36,787.787 INFO    ] Initializing speech engine...
[2026-08-25 07:46:36,796.796 INFO    ] 2026-08-25 07:46:36
[2026-08-25 07:46:37,053.053 INFO    ] 2026-08-25 07:46:37
[2026-08-25 07:46:37,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:46:37,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:46:37,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:46:37,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:46:37,513.513 INFO    ] time= 25/08/2026 07:46:37
[2026-08-25 07:46:37,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:46:37,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:46:37,663.663 INFO    ] No existing commands found in stream
[2026-08-25 07:46:42,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:46:42,690.690 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 07:46:43,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:46:43,485.485 INFO    ] Checking for system updates...
[2026-08-25 07:46:43,524.524 INFO    ] 200
[2026-08-25 07:46:43,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:43,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:43,588.588 INFO    ] No update needed
[2026-08-25 07:46:43,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 07:46:43,623.623 INFO    ] 200
[2026-08-25 07:46:43,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:43,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:46:43,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:46:43,716.716 INFO    ] No camera update needed
[2026-08-25 07:46:43,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:46:43,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:46:43,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:46:43,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:46:45,770.770 INFO    ] ================================================
[2026-08-25 07:46:45,786.786 INFO    ] Launching Daemon at Tue Aug 25 07:46:45 IST 2026
[2026-08-25 07:46:45,798.798 INFO    ] ================================================
[2026-08-25 07:46:46,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:46:46
[2026-08-25 07:46:47,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:46:47,390.390 INFO    ] Initializing speech engine...
[2026-08-25 07:46:47,408.408 INFO    ] 2026-08-25 07:46:47
[2026-08-25 07:46:47,676.676 INFO    ] 2026-08-25 07:46:47
[2026-08-25 07:46:47,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:46:47,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:46:47,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:46:48,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:46:48,161.161 INFO    ] time= 25/08/2026 07:46:48
[2026-08-25 07:46:48,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:46:48,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:46:48,383.383 INFO    ] No existing commands found in stream
[2026-08-25 07:46:53,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:46:53,401.401 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 07:46:55,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:46:55,278.278 INFO    ] Checking for system updates...
[2026-08-25 07:46:55,314.314 INFO    ] 200
[2026-08-25 07:46:55,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:55,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:46:55,378.378 INFO    ] No update needed
[2026-08-25 07:46:55,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 07:46:55,418.418 INFO    ] 200
[2026-08-25 07:46:55,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:46:55,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:46:55,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:46:55,515.515 INFO    ] No camera update needed
[2026-08-25 07:46:55,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:46:55,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:46:55,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:46:55,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:46:57,574.574 INFO    ] ================================================
[2026-08-25 07:46:57,590.590 INFO    ] Launching Daemon at Tue Aug 25 07:46:57 IST 2026
[2026-08-25 07:46:57,601.601 INFO    ] ================================================
[2026-08-25 07:46:58,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:46:58
[2026-08-25 07:46:58,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:46:59,020.020 INFO    ] Initializing speech engine...
[2026-08-25 07:46:59,040.040 INFO    ] 2026-08-25 07:46:59
[2026-08-25 07:46:59,291.291 INFO    ] 2026-08-25 07:46:59
[2026-08-25 07:46:59,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:46:59,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:46:59,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:46:59,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:46:59,776.776 INFO    ] time= 25/08/2026 07:46:59
[2026-08-25 07:46:59,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:46:59,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:46:59,911.911 INFO    ] No existing commands found in stream
[2026-08-25 07:47:04,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:47:04,926.926 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 07:47:05,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:47:05,817.817 INFO    ] Checking for system updates...
[2026-08-25 07:47:05,853.853 INFO    ] 200
[2026-08-25 07:47:05,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:05,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:47:05,912.912 INFO    ] No update needed
[2026-08-25 07:47:05,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 07:47:05,953.953 INFO    ] 200
[2026-08-25 07:47:05,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:06,000.000 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:47:06,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:47:06,066.066 INFO    ] No camera update needed
[2026-08-25 07:47:06,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:47:06,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:47:06,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:47:06,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:47:08,122.122 INFO    ] ================================================
[2026-08-25 07:47:08,138.138 INFO    ] Launching Daemon at Tue Aug 25 07:47:08 IST 2026
[2026-08-25 07:47:08,149.149 INFO    ] ================================================
[2026-08-25 07:47:08,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:47:08
[2026-08-25 07:47:09,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:47:09,668.668 INFO    ] Initializing speech engine...
[2026-08-25 07:47:09,682.682 INFO    ] 2026-08-25 07:47:09
[2026-08-25 07:47:09,995.995 INFO    ] 2026-08-25 07:47:09
[2026-08-25 07:47:10,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:47:10,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:47:10,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:47:10,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:47:10,506.506 INFO    ] time= 25/08/2026 07:47:10
[2026-08-25 07:47:10,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:47:10,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:47:10,664.664 INFO    ] No existing commands found in stream
[2026-08-25 07:47:15,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:47:15,698.698 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 07:47:16,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:47:16,527.527 INFO    ] Checking for system updates...
[2026-08-25 07:47:16,563.563 INFO    ] 200
[2026-08-25 07:47:16,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:16,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:47:16,621.621 INFO    ] No update needed
[2026-08-25 07:47:16,623.623 INFO    ] Checking for camera pi updates...
[2026-08-25 07:47:16,657.657 INFO    ] 200
[2026-08-25 07:47:16,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:16,705.705 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:47:16,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:47:16,759.759 INFO    ] No camera update needed
[2026-08-25 07:47:16,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:47:16,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:47:16,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:47:16,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:47:18,813.813 INFO    ] ================================================
[2026-08-25 07:47:18,828.828 INFO    ] Launching Daemon at Tue Aug 25 07:47:18 IST 2026
[2026-08-25 07:47:18,839.839 INFO    ] ================================================
[2026-08-25 07:47:19,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:47:19
[2026-08-25 07:47:19,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:47:20,254.254 INFO    ] Initializing speech engine...
[2026-08-25 07:47:20,267.267 INFO    ] 2026-08-25 07:47:20
[2026-08-25 07:47:20,556.556 INFO    ] 2026-08-25 07:47:20
[2026-08-25 07:47:20,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:47:20,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:47:20,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:47:20,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:47:20,959.959 INFO    ] time= 25/08/2026 07:47:20
[2026-08-25 07:47:20,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:47:20,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:47:21,070.070 INFO    ] No existing commands found in stream
[2026-08-25 07:47:26,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:47:26,091.091 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 07:47:27,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:47:27,013.013 INFO    ] Checking for system updates...
[2026-08-25 07:47:27,050.050 INFO    ] 200
[2026-08-25 07:47:27,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:27,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:47:27,108.108 INFO    ] No update needed
[2026-08-25 07:47:27,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 07:47:27,147.147 INFO    ] 200
[2026-08-25 07:47:27,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:27,196.196 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:47:27,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:47:27,248.248 INFO    ] No camera update needed
[2026-08-25 07:47:27,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:47:27,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:47:27,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:47:27,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:47:29,302.302 INFO    ] ================================================
[2026-08-25 07:47:29,318.318 INFO    ] Launching Daemon at Tue Aug 25 07:47:29 IST 2026
[2026-08-25 07:47:29,329.329 INFO    ] ================================================
[2026-08-25 07:47:29,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:47:29
[2026-08-25 07:47:30,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:47:30,750.750 INFO    ] Initializing speech engine...
[2026-08-25 07:47:30,756.756 INFO    ] 2026-08-25 07:47:30
[2026-08-25 07:47:31,014.014 INFO    ] 2026-08-25 07:47:31
[2026-08-25 07:47:31,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:47:31,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:47:31,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:47:31,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:47:31,465.465 INFO    ] time= 25/08/2026 07:47:31
[2026-08-25 07:47:31,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:47:31,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:47:31,708.708 INFO    ] No existing commands found in stream
[2026-08-25 07:47:36,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:47:36,724.724 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 07:47:40,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:47:40,913.913 INFO    ] Checking for system updates...
[2026-08-25 07:47:40,953.953 INFO    ] 200
[2026-08-25 07:47:40,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:41,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:47:41,010.010 INFO    ] No update needed
[2026-08-25 07:47:41,012.012 INFO    ] Checking for camera pi updates...
[2026-08-25 07:47:41,045.045 INFO    ] 200
[2026-08-25 07:47:41,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:41,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:47:41,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:47:41,144.144 INFO    ] No camera update needed
[2026-08-25 07:47:41,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:47:41,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:47:41,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:47:41,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:47:43,200.200 INFO    ] ================================================
[2026-08-25 07:47:43,216.216 INFO    ] Launching Daemon at Tue Aug 25 07:47:43 IST 2026
[2026-08-25 07:47:43,228.228 INFO    ] ================================================
[2026-08-25 07:47:43,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:47:43
[2026-08-25 07:47:44,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:47:44,627.627 INFO    ] Initializing speech engine...
[2026-08-25 07:47:44,646.646 INFO    ] 2026-08-25 07:47:44
[2026-08-25 07:47:44,906.906 INFO    ] 2026-08-25 07:47:44
[2026-08-25 07:47:44,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:47:45,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:47:45,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:47:45,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:47:45,283.283 INFO    ] time= 25/08/2026 07:47:45
[2026-08-25 07:47:45,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:47:45,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:47:45,464.464 INFO    ] No existing commands found in stream
[2026-08-25 07:47:50,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:47:50,492.492 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 07:47:51,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:47:51,721.721 INFO    ] Checking for system updates...
[2026-08-25 07:47:51,756.756 INFO    ] 200
[2026-08-25 07:47:51,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:51,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:47:51,812.812 INFO    ] No update needed
[2026-08-25 07:47:51,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 07:47:51,849.849 INFO    ] 200
[2026-08-25 07:47:51,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:47:51,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:47:51,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:47:51,946.946 INFO    ] No camera update needed
[2026-08-25 07:47:51,948.948 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:47:51,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:47:51,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:47:51,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:47:54,002.002 INFO    ] ================================================
[2026-08-25 07:47:54,018.018 INFO    ] Launching Daemon at Tue Aug 25 07:47:54 IST 2026
[2026-08-25 07:47:54,028.028 INFO    ] ================================================
[2026-08-25 07:47:54,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:47:54
[2026-08-25 07:47:55,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:47:55,630.630 INFO    ] Initializing speech engine...
[2026-08-25 07:47:55,640.640 INFO    ] 2026-08-25 07:47:55
[2026-08-25 07:47:55,900.900 INFO    ] 2026-08-25 07:47:55
[2026-08-25 07:47:55,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:47:56,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:47:56,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:47:56,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:47:56,353.353 INFO    ] time= 25/08/2026 07:47:56
[2026-08-25 07:47:56,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:47:56,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:47:56,581.581 INFO    ] No existing commands found in stream
[2026-08-25 07:48:01,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:48:01,608.608 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 07:48:06,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:48:06,062.062 INFO    ] Checking for system updates...
[2026-08-25 07:48:06,101.101 INFO    ] 200
[2026-08-25 07:48:06,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:06,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:48:06,158.158 INFO    ] No update needed
[2026-08-25 07:48:06,160.160 INFO    ] Checking for camera pi updates...
[2026-08-25 07:48:06,197.197 INFO    ] 200
[2026-08-25 07:48:06,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:06,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:48:06,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:48:06,292.292 INFO    ] No camera update needed
[2026-08-25 07:48:06,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:48:06,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:48:06,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:48:06,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:48:08,348.348 INFO    ] ================================================
[2026-08-25 07:48:08,364.364 INFO    ] Launching Daemon at Tue Aug 25 07:48:08 IST 2026
[2026-08-25 07:48:08,375.375 INFO    ] ================================================
[2026-08-25 07:48:08,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:48:08
[2026-08-25 07:48:09,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:48:09,803.803 INFO    ] Initializing speech engine...
[2026-08-25 07:48:09,822.822 INFO    ] 2026-08-25 07:48:09
[2026-08-25 07:48:10,072.072 INFO    ] 2026-08-25 07:48:10
[2026-08-25 07:48:10,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:48:10,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:48:10,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:48:10,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:48:10,586.586 INFO    ] time= 25/08/2026 07:48:10
[2026-08-25 07:48:10,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:48:10,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:48:10,780.780 INFO    ] No existing commands found in stream
[2026-08-25 07:48:15,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:48:15,810.810 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 07:48:20,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:48:20,060.060 INFO    ] Checking for system updates...
[2026-08-25 07:48:20,103.103 INFO    ] 200
[2026-08-25 07:48:20,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:20,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:48:20,185.185 INFO    ] No update needed
[2026-08-25 07:48:20,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 07:48:20,229.229 INFO    ] 200
[2026-08-25 07:48:20,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:20,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:48:20,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:48:20,447.447 INFO    ] No camera update needed
[2026-08-25 07:48:20,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:48:20,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:48:20,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:48:20,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:48:22,511.511 INFO    ] ================================================
[2026-08-25 07:48:22,529.529 INFO    ] Launching Daemon at Tue Aug 25 07:48:22 IST 2026
[2026-08-25 07:48:22,540.540 INFO    ] ================================================
[2026-08-25 07:48:23,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:48:23
[2026-08-25 07:48:23,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:48:24,030.030 INFO    ] Initializing speech engine...
[2026-08-25 07:48:24,039.039 INFO    ] 2026-08-25 07:48:24
[2026-08-25 07:48:24,320.320 INFO    ] 2026-08-25 07:48:24
[2026-08-25 07:48:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:48:24,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:48:24,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:48:24,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:48:24,791.791 INFO    ] time= 25/08/2026 07:48:24
[2026-08-25 07:48:24,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:48:24,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:48:25,012.012 INFO    ] No existing commands found in stream
[2026-08-25 07:48:30,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:48:30,041.041 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 07:48:32,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:48:32,536.536 INFO    ] Checking for system updates...
[2026-08-25 07:48:32,580.580 INFO    ] 200
[2026-08-25 07:48:32,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:32,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:48:32,646.646 INFO    ] No update needed
[2026-08-25 07:48:32,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 07:48:32,687.687 INFO    ] 200
[2026-08-25 07:48:32,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:32,733.733 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:48:32,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:48:32,796.796 INFO    ] No camera update needed
[2026-08-25 07:48:32,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:48:32,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:48:32,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:48:32,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:48:34,853.853 INFO    ] ================================================
[2026-08-25 07:48:34,869.869 INFO    ] Launching Daemon at Tue Aug 25 07:48:34 IST 2026
[2026-08-25 07:48:34,880.880 INFO    ] ================================================
[2026-08-25 07:48:35,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:48:35
[2026-08-25 07:48:36,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:48:36,416.416 INFO    ] Initializing speech engine...
[2026-08-25 07:48:36,425.425 INFO    ] 2026-08-25 07:48:36
[2026-08-25 07:48:36,669.669 INFO    ] 2026-08-25 07:48:36
[2026-08-25 07:48:36,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:48:36,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:48:36,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:48:37,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:48:37,138.138 INFO    ] time= 25/08/2026 07:48:37
[2026-08-25 07:48:37,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:48:37,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:48:37,346.346 INFO    ] No existing commands found in stream
[2026-08-25 07:48:42,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:48:42,384.384 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 07:48:46,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:48:46,575.575 INFO    ] Checking for system updates...
[2026-08-25 07:48:46,610.610 INFO    ] 200
[2026-08-25 07:48:46,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:46,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:48:46,676.676 INFO    ] No update needed
[2026-08-25 07:48:46,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 07:48:46,716.716 INFO    ] 200
[2026-08-25 07:48:46,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:46,765.765 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:48:46,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:48:46,816.816 INFO    ] No camera update needed
[2026-08-25 07:48:46,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:48:46,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:48:46,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:48:46,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:48:48,872.872 INFO    ] ================================================
[2026-08-25 07:48:48,888.888 INFO    ] Launching Daemon at Tue Aug 25 07:48:48 IST 2026
[2026-08-25 07:48:48,899.899 INFO    ] ================================================
[2026-08-25 07:48:49,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:48:49
[2026-08-25 07:48:50,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:48:50,325.325 INFO    ] Initializing speech engine...
[2026-08-25 07:48:50,330.330 INFO    ] 2026-08-25 07:48:50
[2026-08-25 07:48:50,575.575 INFO    ] 2026-08-25 07:48:50
[2026-08-25 07:48:50,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:48:50,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:48:50,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:48:51,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:48:51,048.048 INFO    ] time= 25/08/2026 07:48:51
[2026-08-25 07:48:51,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:48:51,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:48:51,274.274 INFO    ] No existing commands found in stream
[2026-08-25 07:48:56,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:48:56,301.301 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 07:48:57,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:48:57,280.280 INFO    ] Checking for system updates...
[2026-08-25 07:48:57,316.316 INFO    ] 200
[2026-08-25 07:48:57,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:57,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:48:57,382.382 INFO    ] No update needed
[2026-08-25 07:48:57,385.385 INFO    ] Checking for camera pi updates...
[2026-08-25 07:48:57,422.422 INFO    ] 200
[2026-08-25 07:48:57,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:48:57,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:48:57,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:48:57,512.512 INFO    ] No camera update needed
[2026-08-25 07:48:57,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:48:57,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:48:57,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:48:57,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:48:59,567.567 INFO    ] ================================================
[2026-08-25 07:48:59,583.583 INFO    ] Launching Daemon at Tue Aug 25 07:48:59 IST 2026
[2026-08-25 07:48:59,595.595 INFO    ] ================================================
[2026-08-25 07:49:00,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:49:00
[2026-08-25 07:49:00,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:49:01,295.295 INFO    ] Initializing speech engine...
[2026-08-25 07:49:01,308.308 INFO    ] 2026-08-25 07:49:01
[2026-08-25 07:49:01,623.623 INFO    ] 2026-08-25 07:49:01
[2026-08-25 07:49:01,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:49:01,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:49:01,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:49:02,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:49:02,043.043 INFO    ] time= 25/08/2026 07:49:02
[2026-08-25 07:49:02,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:49:02,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:49:02,113.113 INFO    ] No existing commands found in stream
[2026-08-25 07:49:07,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:49:07,127.127 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 07:49:08,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:49:08,603.603 INFO    ] Checking for system updates...
[2026-08-25 07:49:08,638.638 INFO    ] 200
[2026-08-25 07:49:08,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:08,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:49:08,694.694 INFO    ] No update needed
[2026-08-25 07:49:08,697.697 INFO    ] Checking for camera pi updates...
[2026-08-25 07:49:08,730.730 INFO    ] 200
[2026-08-25 07:49:08,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:08,777.777 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:49:08,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:49:08,831.831 INFO    ] No camera update needed
[2026-08-25 07:49:08,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:49:08,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:49:08,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:49:08,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:49:10,885.885 INFO    ] ================================================
[2026-08-25 07:49:10,900.900 INFO    ] Launching Daemon at Tue Aug 25 07:49:10 IST 2026
[2026-08-25 07:49:10,910.910 INFO    ] ================================================
[2026-08-25 07:49:11,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:49:11
[2026-08-25 07:49:12,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:49:12,328.328 INFO    ] Initializing speech engine...
[2026-08-25 07:49:12,337.337 INFO    ] 2026-08-25 07:49:12
[2026-08-25 07:49:12,583.583 INFO    ] 2026-08-25 07:49:12
[2026-08-25 07:49:12,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:49:12,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:49:12,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:49:13,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:49:13,093.093 INFO    ] time= 25/08/2026 07:49:13
[2026-08-25 07:49:13,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:49:13,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:49:13,292.292 INFO    ] No existing commands found in stream
[2026-08-25 07:49:18,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:49:18,313.313 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 07:49:20,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:49:20,271.271 INFO    ] Checking for system updates...
[2026-08-25 07:49:20,312.312 INFO    ] 200
[2026-08-25 07:49:20,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:20,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:49:20,378.378 INFO    ] No update needed
[2026-08-25 07:49:20,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 07:49:20,418.418 INFO    ] 200
[2026-08-25 07:49:20,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:20,461.461 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:49:20,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:49:20,510.510 INFO    ] No camera update needed
[2026-08-25 07:49:20,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:49:20,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:49:20,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:49:20,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:49:22,565.565 INFO    ] ================================================
[2026-08-25 07:49:22,580.580 INFO    ] Launching Daemon at Tue Aug 25 07:49:22 IST 2026
[2026-08-25 07:49:22,591.591 INFO    ] ================================================
[2026-08-25 07:49:23,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:49:23
[2026-08-25 07:49:23,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:49:24,009.009 INFO    ] Initializing speech engine...
[2026-08-25 07:49:24,018.018 INFO    ] 2026-08-25 07:49:24
[2026-08-25 07:49:24,264.264 INFO    ] 2026-08-25 07:49:24
[2026-08-25 07:49:24,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:49:24,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:49:24,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:49:24,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:49:24,739.739 INFO    ] time= 25/08/2026 07:49:24
[2026-08-25 07:49:24,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:49:24,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:49:24,936.936 INFO    ] No existing commands found in stream
[2026-08-25 07:49:29,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:49:29,960.960 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 07:49:30,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:49:30,464.464 INFO    ] Checking for system updates...
[2026-08-25 07:49:30,504.504 INFO    ] 200
[2026-08-25 07:49:30,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:30,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:49:30,569.569 INFO    ] No update needed
[2026-08-25 07:49:30,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 07:49:30,604.604 INFO    ] 200
[2026-08-25 07:49:30,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:30,652.652 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:49:30,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:49:30,707.707 INFO    ] No camera update needed
[2026-08-25 07:49:30,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:49:30,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:49:30,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:49:30,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:49:32,764.764 INFO    ] ================================================
[2026-08-25 07:49:32,780.780 INFO    ] Launching Daemon at Tue Aug 25 07:49:32 IST 2026
[2026-08-25 07:49:32,791.791 INFO    ] ================================================
[2026-08-25 07:49:33,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:49:33
[2026-08-25 07:49:34,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:49:34,421.421 INFO    ] Initializing speech engine...
[2026-08-25 07:49:34,427.427 INFO    ] 2026-08-25 07:49:34
[2026-08-25 07:49:34,738.738 INFO    ] 2026-08-25 07:49:34
[2026-08-25 07:49:34,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:49:35,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:49:35,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:49:35,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:49:35,242.242 INFO    ] time= 25/08/2026 07:49:35
[2026-08-25 07:49:35,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:49:35,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:49:35,401.401 INFO    ] No existing commands found in stream
[2026-08-25 07:49:40,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:49:40,427.427 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 07:49:43,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:49:43,913.913 INFO    ] Checking for system updates...
[2026-08-25 07:49:43,955.955 INFO    ] 200
[2026-08-25 07:49:43,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:44,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:49:44,014.014 INFO    ] No update needed
[2026-08-25 07:49:44,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 07:49:44,052.052 INFO    ] 200
[2026-08-25 07:49:44,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:44,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:49:44,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:49:44,159.159 INFO    ] No camera update needed
[2026-08-25 07:49:44,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:49:44,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:49:44,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:49:44,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:49:46,217.217 INFO    ] ================================================
[2026-08-25 07:49:46,232.232 INFO    ] Launching Daemon at Tue Aug 25 07:49:46 IST 2026
[2026-08-25 07:49:46,242.242 INFO    ] ================================================
[2026-08-25 07:49:46,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:49:46
[2026-08-25 07:49:47,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:49:47,663.663 INFO    ] Initializing speech engine...
[2026-08-25 07:49:47,672.672 INFO    ] 2026-08-25 07:49:47
[2026-08-25 07:49:47,922.922 INFO    ] 2026-08-25 07:49:47
[2026-08-25 07:49:47,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:49:48,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:49:48,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:49:48,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:49:48,399.399 INFO    ] time= 25/08/2026 07:49:48
[2026-08-25 07:49:48,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:49:48,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:49:48,601.601 INFO    ] No existing commands found in stream
[2026-08-25 07:49:53,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:49:53,626.626 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 07:49:55,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 07:49:55,160.160 INFO    ] Checking for system updates...
[2026-08-25 07:49:55,201.201 INFO    ] 200
[2026-08-25 07:49:55,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:55,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:49:55,266.266 INFO    ] No update needed
[2026-08-25 07:49:55,269.269 INFO    ] Checking for camera pi updates...
[2026-08-25 07:49:55,307.307 INFO    ] 200
[2026-08-25 07:49:55,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:49:55,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:49:55,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:49:55,402.402 INFO    ] No camera update needed
[2026-08-25 07:49:55,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:49:55,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:49:55,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:49:55,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:49:57,457.457 INFO    ] ================================================
[2026-08-25 07:49:57,472.472 INFO    ] Launching Daemon at Tue Aug 25 07:49:57 IST 2026
[2026-08-25 07:49:57,483.483 INFO    ] ================================================
[2026-08-25 07:49:58,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:49:58
[2026-08-25 07:49:58,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:49:59,155.155 INFO    ] Initializing speech engine...
[2026-08-25 07:49:59,167.167 INFO    ] 2026-08-25 07:49:59
[2026-08-25 07:49:59,478.478 INFO    ] 2026-08-25 07:49:59
[2026-08-25 07:49:59,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:49:59,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:49:59,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:49:59,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:49:59,983.983 INFO    ] time= 25/08/2026 07:49:59
[2026-08-25 07:50:00,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:50:00,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:50:00,129.129 INFO    ] No existing commands found in stream
[2026-08-25 07:50:05,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:50:05,153.153 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 07:50:08,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:50:08,436.436 INFO    ] Checking for system updates...
[2026-08-25 07:50:08,477.477 INFO    ] 200
[2026-08-25 07:50:08,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:08,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:50:08,538.538 INFO    ] No update needed
[2026-08-25 07:50:08,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 07:50:08,575.575 INFO    ] 200
[2026-08-25 07:50:08,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:08,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:50:08,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:50:08,668.668 INFO    ] No camera update needed
[2026-08-25 07:50:08,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:50:08,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:50:08,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:50:08,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:50:10,722.722 INFO    ] ================================================
[2026-08-25 07:50:10,738.738 INFO    ] Launching Daemon at Tue Aug 25 07:50:10 IST 2026
[2026-08-25 07:50:10,749.749 INFO    ] ================================================
[2026-08-25 07:50:11,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:50:11
[2026-08-25 07:50:11,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:50:12,166.166 INFO    ] Initializing speech engine...
[2026-08-25 07:50:12,175.175 INFO    ] 2026-08-25 07:50:12
[2026-08-25 07:50:12,427.427 INFO    ] 2026-08-25 07:50:12
[2026-08-25 07:50:12,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:50:12,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:50:12,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:50:12,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:50:12,914.914 INFO    ] time= 25/08/2026 07:50:12
[2026-08-25 07:50:12,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:50:12,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:50:13,123.123 INFO    ] No existing commands found in stream
[2026-08-25 07:50:18,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:50:18,141.141 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 07:50:21,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:50:21,419.419 INFO    ] Checking for system updates...
[2026-08-25 07:50:21,455.455 INFO    ] 200
[2026-08-25 07:50:21,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:21,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:50:21,518.518 INFO    ] No update needed
[2026-08-25 07:50:21,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 07:50:21,557.557 INFO    ] 200
[2026-08-25 07:50:21,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:21,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:50:21,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:50:21,652.652 INFO    ] No camera update needed
[2026-08-25 07:50:21,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:50:21,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:50:21,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:50:21,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:50:23,710.710 INFO    ] ================================================
[2026-08-25 07:50:23,726.726 INFO    ] Launching Daemon at Tue Aug 25 07:50:23 IST 2026
[2026-08-25 07:50:23,737.737 INFO    ] ================================================
[2026-08-25 07:50:24,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:50:24
[2026-08-25 07:50:25,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:50:25,345.345 INFO    ] Initializing speech engine...
[2026-08-25 07:50:25,358.358 INFO    ] 2026-08-25 07:50:25
[2026-08-25 07:50:25,669.669 INFO    ] 2026-08-25 07:50:25
[2026-08-25 07:50:25,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:50:25,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:50:25,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:50:26,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:50:26,187.187 INFO    ] time= 25/08/2026 07:50:26
[2026-08-25 07:50:26,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:50:26,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:50:26,326.326 INFO    ] No existing commands found in stream
[2026-08-25 07:50:31,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:50:31,349.349 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 07:50:32,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:50:32,035.035 INFO    ] Checking for system updates...
[2026-08-25 07:50:32,083.083 INFO    ] 200
[2026-08-25 07:50:32,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:32,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:50:32,161.161 INFO    ] No update needed
[2026-08-25 07:50:32,165.165 INFO    ] Checking for camera pi updates...
[2026-08-25 07:50:32,204.204 INFO    ] 200
[2026-08-25 07:50:32,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:32,258.258 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:50:32,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:50:32,433.433 INFO    ] No camera update needed
[2026-08-25 07:50:32,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:50:32,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:50:32,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:50:32,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:50:34,492.492 INFO    ] ================================================
[2026-08-25 07:50:34,508.508 INFO    ] Launching Daemon at Tue Aug 25 07:50:34 IST 2026
[2026-08-25 07:50:34,519.519 INFO    ] ================================================
[2026-08-25 07:50:35,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:50:35
[2026-08-25 07:50:35,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:50:35,935.935 INFO    ] Initializing speech engine...
[2026-08-25 07:50:35,943.943 INFO    ] 2026-08-25 07:50:35
[2026-08-25 07:50:36,190.190 INFO    ] 2026-08-25 07:50:36
[2026-08-25 07:50:36,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:50:36,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:50:36,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:50:36,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:50:36,694.694 INFO    ] time= 25/08/2026 07:50:36
[2026-08-25 07:50:36,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:50:36,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:50:36,896.896 INFO    ] No existing commands found in stream
[2026-08-25 07:50:41,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:50:41,912.912 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 07:50:43,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:50:43,396.396 INFO    ] Checking for system updates...
[2026-08-25 07:50:43,434.434 INFO    ] 200
[2026-08-25 07:50:43,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:43,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:50:43,503.503 INFO    ] No update needed
[2026-08-25 07:50:43,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 07:50:43,541.541 INFO    ] 200
[2026-08-25 07:50:43,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:43,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:50:43,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:50:43,631.631 INFO    ] No camera update needed
[2026-08-25 07:50:43,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:50:43,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:50:43,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:50:43,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:50:45,686.686 INFO    ] ================================================
[2026-08-25 07:50:45,702.702 INFO    ] Launching Daemon at Tue Aug 25 07:50:45 IST 2026
[2026-08-25 07:50:45,713.713 INFO    ] ================================================
[2026-08-25 07:50:46,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:50:46
[2026-08-25 07:50:46,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:50:47,134.134 INFO    ] Initializing speech engine...
[2026-08-25 07:50:47,143.143 INFO    ] 2026-08-25 07:50:47
[2026-08-25 07:50:47,402.402 INFO    ] 2026-08-25 07:50:47
[2026-08-25 07:50:47,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:50:47,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:50:47,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:50:47,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:50:47,856.856 INFO    ] time= 25/08/2026 07:50:47
[2026-08-25 07:50:47,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:50:47,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:50:48,076.076 INFO    ] No existing commands found in stream
[2026-08-25 07:50:53,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:50:53,103.103 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 07:50:53,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:50:53,880.880 INFO    ] Checking for system updates...
[2026-08-25 07:50:53,920.920 INFO    ] 200
[2026-08-25 07:50:53,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:53,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:50:53,985.985 INFO    ] No update needed
[2026-08-25 07:50:53,988.988 INFO    ] Checking for camera pi updates...
[2026-08-25 07:50:54,026.026 INFO    ] 200
[2026-08-25 07:50:54,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:50:54,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:50:54,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:50:54,131.131 INFO    ] No camera update needed
[2026-08-25 07:50:54,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:50:54,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:50:54,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:50:54,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:50:56,190.190 INFO    ] ================================================
[2026-08-25 07:50:56,206.206 INFO    ] Launching Daemon at Tue Aug 25 07:50:56 IST 2026
[2026-08-25 07:50:56,218.218 INFO    ] ================================================
[2026-08-25 07:50:56,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:50:56
[2026-08-25 07:50:57,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:50:57,660.660 INFO    ] Initializing speech engine...
[2026-08-25 07:50:57,669.669 INFO    ] 2026-08-25 07:50:57
[2026-08-25 07:50:57,915.915 INFO    ] 2026-08-25 07:50:57
[2026-08-25 07:50:57,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:50:58,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:50:58,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:50:58,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:50:58,390.390 INFO    ] time= 25/08/2026 07:50:58
[2026-08-25 07:50:58,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:50:58,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:50:58,615.615 INFO    ] No existing commands found in stream
[2026-08-25 07:51:03,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:51:03,637.637 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 07:51:05,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:51:05,202.202 INFO    ] Checking for system updates...
[2026-08-25 07:51:05,238.238 INFO    ] 200
[2026-08-25 07:51:05,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:05,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:05,296.296 INFO    ] No update needed
[2026-08-25 07:51:05,298.298 INFO    ] Checking for camera pi updates...
[2026-08-25 07:51:05,331.331 INFO    ] 200
[2026-08-25 07:51:05,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:05,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:51:05,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:05,435.435 INFO    ] No camera update needed
[2026-08-25 07:51:05,437.437 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:51:05,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:51:05,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:51:05,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:51:07,489.489 INFO    ] ================================================
[2026-08-25 07:51:07,505.505 INFO    ] Launching Daemon at Tue Aug 25 07:51:07 IST 2026
[2026-08-25 07:51:07,517.517 INFO    ] ================================================
[2026-08-25 07:51:08,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:51:08
[2026-08-25 07:51:08,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:51:09,169.169 INFO    ] Initializing speech engine...
[2026-08-25 07:51:09,181.181 INFO    ] 2026-08-25 07:51:09
[2026-08-25 07:51:09,451.451 INFO    ] 2026-08-25 07:51:09
[2026-08-25 07:51:09,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:51:09,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:51:09,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:51:09,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:51:09,916.916 INFO    ] time= 25/08/2026 07:51:09
[2026-08-25 07:51:09,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:51:10,008.008 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:51:10,122.122 INFO    ] No existing commands found in stream
[2026-08-25 07:51:15,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:51:15,158.158 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 07:51:19,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:51:19,204.204 INFO    ] Checking for system updates...
[2026-08-25 07:51:19,240.240 INFO    ] 200
[2026-08-25 07:51:19,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:19,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:19,298.298 INFO    ] No update needed
[2026-08-25 07:51:19,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 07:51:19,333.333 INFO    ] 200
[2026-08-25 07:51:19,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:19,382.382 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:51:19,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:19,429.429 INFO    ] No camera update needed
[2026-08-25 07:51:19,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:51:19,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:51:19,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:51:19,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:51:21,482.482 INFO    ] ================================================
[2026-08-25 07:51:21,498.498 INFO    ] Launching Daemon at Tue Aug 25 07:51:21 IST 2026
[2026-08-25 07:51:21,508.508 INFO    ] ================================================
[2026-08-25 07:51:22,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:51:22
[2026-08-25 07:51:22,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:51:22,900.900 INFO    ] Initializing speech engine...
[2026-08-25 07:51:22,912.912 INFO    ] 2026-08-25 07:51:22
[2026-08-25 07:51:23,172.172 INFO    ] 2026-08-25 07:51:23
[2026-08-25 07:51:23,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:51:23,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:51:23,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:51:23,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:51:23,671.671 INFO    ] time= 25/08/2026 07:51:23
[2026-08-25 07:51:23,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:51:23,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:51:23,878.878 INFO    ] No existing commands found in stream
[2026-08-25 07:51:28,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:51:28,895.895 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 07:51:31,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 07:51:31,885.885 INFO    ] Checking for system updates...
[2026-08-25 07:51:31,937.937 INFO    ] 200
[2026-08-25 07:51:31,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:32,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:51:32,016.016 INFO    ] No update needed
[2026-08-25 07:51:32,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 07:51:32,063.063 INFO    ] 200
[2026-08-25 07:51:32,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:32,124.124 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:51:32,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:51:32,189.189 INFO    ] No camera update needed
[2026-08-25 07:51:32,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:51:32,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:51:32,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:51:32,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:51:34,253.253 INFO    ] ================================================
[2026-08-25 07:51:34,269.269 INFO    ] Launching Daemon at Tue Aug 25 07:51:34 IST 2026
[2026-08-25 07:51:34,280.280 INFO    ] ================================================
[2026-08-25 07:51:34,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:51:34
[2026-08-25 07:51:35,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:51:35,715.715 INFO    ] Initializing speech engine...
[2026-08-25 07:51:35,724.724 INFO    ] 2026-08-25 07:51:35
[2026-08-25 07:51:35,982.982 INFO    ] 2026-08-25 07:51:35
[2026-08-25 07:51:36,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:51:36,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:51:36,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:51:36,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:51:36,367.367 INFO    ] time= 25/08/2026 07:51:36
[2026-08-25 07:51:36,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:51:36,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:51:36,534.534 INFO    ] No existing commands found in stream
[2026-08-25 07:51:41,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:51:41,567.567 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 07:51:45,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:51:45,798.798 INFO    ] Checking for system updates...
[2026-08-25 07:51:45,838.838 INFO    ] 200
[2026-08-25 07:51:45,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:45,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:45,918.918 INFO    ] No update needed
[2026-08-25 07:51:45,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 07:51:45,962.962 INFO    ] 200
[2026-08-25 07:51:45,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:46,034.034 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:51:46,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:46,094.094 INFO    ] No camera update needed
[2026-08-25 07:51:46,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:51:46,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:51:46,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:51:46,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:51:48,149.149 INFO    ] ================================================
[2026-08-25 07:51:48,165.165 INFO    ] Launching Daemon at Tue Aug 25 07:51:48 IST 2026
[2026-08-25 07:51:48,177.177 INFO    ] ================================================
[2026-08-25 07:51:48,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:51:48
[2026-08-25 07:51:49,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:51:49,629.629 INFO    ] Initializing speech engine...
[2026-08-25 07:51:49,635.635 INFO    ] 2026-08-25 07:51:49
[2026-08-25 07:51:49,932.932 INFO    ] 2026-08-25 07:51:49
[2026-08-25 07:51:49,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:51:50,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:51:50,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:51:50,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:51:50,321.321 INFO    ] time= 25/08/2026 07:51:50
[2026-08-25 07:51:50,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:51:50,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:51:50,452.452 INFO    ] No existing commands found in stream
[2026-08-25 07:51:55,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:51:55,467.467 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 07:51:59,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 07:51:59,264.264 INFO    ] Checking for system updates...
[2026-08-25 07:51:59,301.301 INFO    ] 200
[2026-08-25 07:51:59,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:59,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:59,361.361 INFO    ] No update needed
[2026-08-25 07:51:59,364.364 INFO    ] Checking for camera pi updates...
[2026-08-25 07:51:59,403.403 INFO    ] 200
[2026-08-25 07:51:59,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:51:59,448.448 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:51:59,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:51:59,502.502 INFO    ] No camera update needed
[2026-08-25 07:51:59,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:51:59,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:51:59,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:51:59,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:52:01,570.570 INFO    ] ================================================
[2026-08-25 07:52:01,609.609 INFO    ] Launching Daemon at Tue Aug 25 07:52:01 IST 2026
[2026-08-25 07:52:01,621.621 INFO    ] ================================================
[2026-08-25 07:52:02,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:52:02
[2026-08-25 07:52:02,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:52:03,237.237 INFO    ] Initializing speech engine...
[2026-08-25 07:52:03,253.253 INFO    ] 2026-08-25 07:52:03
[2026-08-25 07:52:03,508.508 INFO    ] 2026-08-25 07:52:03
[2026-08-25 07:52:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:52:03,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:52:03,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:52:03,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:52:03,877.877 INFO    ] time= 25/08/2026 07:52:03
[2026-08-25 07:52:03,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:52:03,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:52:03,956.956 INFO    ] No existing commands found in stream
[2026-08-25 07:52:08,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:52:08,968.968 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 07:52:11,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:52:11,869.869 INFO    ] Checking for system updates...
[2026-08-25 07:52:11,904.904 INFO    ] 200
[2026-08-25 07:52:11,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:11,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:52:11,970.970 INFO    ] No update needed
[2026-08-25 07:52:11,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 07:52:12,006.006 INFO    ] 200
[2026-08-25 07:52:12,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:12,053.053 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:52:12,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:52:12,105.105 INFO    ] No camera update needed
[2026-08-25 07:52:12,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:52:12,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:52:12,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:52:12,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:52:14,159.159 INFO    ] ================================================
[2026-08-25 07:52:14,174.174 INFO    ] Launching Daemon at Tue Aug 25 07:52:14 IST 2026
[2026-08-25 07:52:14,184.184 INFO    ] ================================================
[2026-08-25 07:52:14,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:52:14
[2026-08-25 07:52:15,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:52:15,643.643 INFO    ] Initializing speech engine...
[2026-08-25 07:52:15,652.652 INFO    ] 2026-08-25 07:52:15
[2026-08-25 07:52:15,902.902 INFO    ] 2026-08-25 07:52:15
[2026-08-25 07:52:15,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:52:16,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:52:16,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:52:16,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:52:16,382.382 INFO    ] time= 25/08/2026 07:52:16
[2026-08-25 07:52:16,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:52:16,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:52:16,560.560 INFO    ] No existing commands found in stream
[2026-08-25 07:52:21,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:52:21,600.600 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 07:52:24,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:52:24,530.530 INFO    ] Checking for system updates...
[2026-08-25 07:52:24,570.570 INFO    ] 200
[2026-08-25 07:52:24,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:24,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:52:24,627.627 INFO    ] No update needed
[2026-08-25 07:52:24,629.629 INFO    ] Checking for camera pi updates...
[2026-08-25 07:52:24,667.667 INFO    ] 200
[2026-08-25 07:52:24,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:24,715.715 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:52:24,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:52:24,765.765 INFO    ] No camera update needed
[2026-08-25 07:52:24,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:52:24,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:52:24,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:52:24,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:52:26,822.822 INFO    ] ================================================
[2026-08-25 07:52:26,837.837 INFO    ] Launching Daemon at Tue Aug 25 07:52:26 IST 2026
[2026-08-25 07:52:26,848.848 INFO    ] ================================================
[2026-08-25 07:52:27,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:52:27
[2026-08-25 07:52:28,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:52:28,389.389 INFO    ] Initializing speech engine...
[2026-08-25 07:52:28,395.395 INFO    ] 2026-08-25 07:52:28
[2026-08-25 07:52:28,695.695 INFO    ] 2026-08-25 07:52:28
[2026-08-25 07:52:28,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:52:28,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:52:28,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:52:29,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:52:29,080.080 INFO    ] time= 25/08/2026 07:52:29
[2026-08-25 07:52:29,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:52:29,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:52:29,207.207 INFO    ] No existing commands found in stream
[2026-08-25 07:52:34,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:52:34,223.223 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 07:52:37,513.513 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 07:52:37,516.516 INFO    ] Checking for system updates...
[2026-08-25 07:52:37,552.552 INFO    ] 200
[2026-08-25 07:52:37,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:37,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:52:37,620.620 INFO    ] No update needed
[2026-08-25 07:52:37,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 07:52:37,655.655 INFO    ] 200
[2026-08-25 07:52:37,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:37,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:52:37,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:52:37,853.853 INFO    ] No camera update needed
[2026-08-25 07:52:37,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:52:37,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:52:37,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:52:37,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:52:39,908.908 INFO    ] ================================================
[2026-08-25 07:52:39,923.923 INFO    ] Launching Daemon at Tue Aug 25 07:52:39 IST 2026
[2026-08-25 07:52:39,935.935 INFO    ] ================================================
[2026-08-25 07:52:40,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:52:40
[2026-08-25 07:52:41,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:52:41,627.627 INFO    ] Initializing speech engine...
[2026-08-25 07:52:41,635.635 INFO    ] 2026-08-25 07:52:41
[2026-08-25 07:52:41,949.949 INFO    ] 2026-08-25 07:52:41
[2026-08-25 07:52:42,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:52:42,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:52:42,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:52:42,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:52:42,456.456 INFO    ] time= 25/08/2026 07:52:42
[2026-08-25 07:52:42,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:52:42,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:52:42,611.611 INFO    ] No existing commands found in stream
[2026-08-25 07:52:47,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:52:47,644.644 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 07:52:48,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:52:48,409.409 INFO    ] Checking for system updates...
[2026-08-25 07:52:48,445.445 INFO    ] 200
[2026-08-25 07:52:48,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:48,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:52:48,511.511 INFO    ] No update needed
[2026-08-25 07:52:48,514.514 INFO    ] Checking for camera pi updates...
[2026-08-25 07:52:48,552.552 INFO    ] 200
[2026-08-25 07:52:48,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:52:48,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:52:48,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:52:48,643.643 INFO    ] No camera update needed
[2026-08-25 07:52:48,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:52:48,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:52:48,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:52:48,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:52:50,698.698 INFO    ] ================================================
[2026-08-25 07:52:50,713.713 INFO    ] Launching Daemon at Tue Aug 25 07:52:50 IST 2026
[2026-08-25 07:52:50,724.724 INFO    ] ================================================
[2026-08-25 07:52:51,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:52:51
[2026-08-25 07:52:52,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:52:52,408.408 INFO    ] Initializing speech engine...
[2026-08-25 07:52:52,422.422 INFO    ] 2026-08-25 07:52:52
[2026-08-25 07:52:52,712.712 INFO    ] 2026-08-25 07:52:52
[2026-08-25 07:52:52,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:52:52,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:52:52,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:52:53,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:52:53,208.208 INFO    ] time= 25/08/2026 07:52:53
[2026-08-25 07:52:53,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:52:53,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:52:53,429.429 INFO    ] No existing commands found in stream
[2026-08-25 07:52:58,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:52:58,453.453 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 07:53:00,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 07:53:00,822.822 INFO    ] Checking for system updates...
[2026-08-25 07:53:00,860.860 INFO    ] 200
[2026-08-25 07:53:00,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:53:00,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:53:00,928.928 INFO    ] No update needed
[2026-08-25 07:53:00,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 07:53:00,970.970 INFO    ] 200
[2026-08-25 07:53:00,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:53:01,021.021 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:53:01,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 07:53:01,072.072 INFO    ] No camera update needed
[2026-08-25 07:53:01,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:53:01,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:53:01,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:53:01,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:53:03,142.142 INFO    ] ================================================
[2026-08-25 07:53:03,158.158 INFO    ] Launching Daemon at Tue Aug 25 07:53:03 IST 2026
[2026-08-25 07:53:03,169.169 INFO    ] ================================================
[2026-08-25 07:53:03,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:03
[2026-08-25 07:53:04,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:53:04,622.622 INFO    ] Initializing speech engine...
[2026-08-25 07:53:04,633.633 INFO    ] 2026-08-25 07:53:04
[2026-08-25 07:53:04,890.890 INFO    ] 2026-08-25 07:53:04
[2026-08-25 07:53:04,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:53:05,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:53:05,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:53:05,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:53:05,379.379 INFO    ] time= 25/08/2026 07:53:05
[2026-08-25 07:53:05,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:53:05,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:53:05,585.585 INFO    ] No existing commands found in stream
[2026-08-25 07:53:10,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:53:10,601.601 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 07:53:12,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 07:53:12,086.086 INFO    ] Checking for system updates...
[2026-08-25 07:53:12,121.121 INFO    ] 200
[2026-08-25 07:53:12,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:53:12,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:53:12,192.192 INFO    ] No update needed
[2026-08-25 07:53:12,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 07:53:12,228.228 INFO    ] 200
[2026-08-25 07:53:12,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:53:12,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 07:53:12,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 07:53:12,336.336 INFO    ] No camera update needed
[2026-08-25 07:53:12,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 07:53:12,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 07:53:12,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 07:53:12,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 07:53:14,396.396 INFO    ] ================================================
[2026-08-25 07:53:14,411.411 INFO    ] Launching Daemon at Tue Aug 25 07:53:14 IST 2026
[2026-08-25 07:53:14,422.422 INFO    ] ================================================
[2026-08-25 07:53:14,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:14
[2026-08-25 07:53:15,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 07:53:15,822.822 INFO    ] Initializing speech engine...
[2026-08-25 07:53:15,828.828 INFO    ] 2026-08-25 07:53:15
[2026-08-25 07:53:16,122.122 INFO    ] 2026-08-25 07:53:16
[2026-08-25 07:53:16,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 07:53:16,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 07:53:16,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 07:53:16,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 07:53:16,581.581 INFO    ] time= 25/08/2026 07:53:16
[2026-08-25 07:53:16,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 07:53:16,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 07:53:16,836.836 INFO    ] No existing commands found in stream
[2026-08-25 07:53:21,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 07:53:21,858.858 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 07:53:23,182.182 INFO    ] {'command_todo': 'interactive-refill', 'total_quantity': '145', 'edited_by': 'Barun', 'vm_id': '1711555283773', 'tray_json': '[{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500732-","org_sku":"4500732","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500713-6","org_sku":"4500713","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500665-6","org_sku":"4500665","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500722-6","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500624-4","org_sku":"4500624","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500723-15","org_sku":"4500723","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500730-10","org_sku":"4500730","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500731-15","org_sku":"4500731","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500644-6","org_sku":"4500644","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500722-5","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"34","door_id":"2","tray_weight":"99999","sku_json":"4500407-2","org_sku":"4500407","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"35","door_id":"2","tray_weight":"99999","sku_json":"112220-20","org_sku":"112220","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"38","door_id":"2","tray_weight":"99999","sku_json":"4500651-3","org_sku":"4500651","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"39","door_id":"2","tray_weight":"99999","sku_json":"166327-3","org_sku":"166327","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"185994-2","org_sku":"185994","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"8355-6","org_sku":"8355","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"}]', 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}, 'refill_group': None, 'modified_at': '2026-08-25 07:53:22', 'delivery_cluster': None, 'slot': 'morning-1', 'pickup_status': None, 'reject_reason': None, 'atcual_return_qty': None, 'compelete_refill': [{'sku_id': '4500732', 'quantity_on_tray': 0, 'quantity_in_db': 0, 'tray_id': '11', 'check_enabled': True, 'sku_name': 'Maxvita Tomato Potato Chips 40gm'}, {'sku_id': '4500713', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '12', 'check_enabled': True, 'sku_name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}, {'sku_id': '4500665', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '13', 'check_enabled': True, 'sku_name': 'Farmely Peri Peri Makhana 14gm'}, {'sku_id': '4500725', 'quantity_on_tray': '12', 'quantity_in_db': '12', 'tray_id': '14', 'check_enabled': True, 'sku_name': 'Maxvita Coconut Cookies 40gm'}, {'sku_id': '4500722', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '15', 'check_enabled': True, 'sku_name': 'MaxVita Rice Kodubale 30gm'}, {'sku_id': '4500624', 'quantity_on_tray': '4', 'quantity_in_db': '4', 'tray_id': '16', 'check_enabled': True, 'sku_name': 'Madmix  Aloo Sev Millet Bhujia 27gm'}, {'sku_id': '4500723', 'quantity_on_tray': '15', 'quantity_in_db': '15', 'tray_id': '18', 'check_enabled': True, 'sku_name': 'MaxVita Moong daal 25gm'}, {'sku_id': '4500726', 'quantity_on_tray': '12', 'quantity_in_db': '12', 'tray_id': '19', 'check_enabled': True, 'sku_name': 'MaxVita Crunchy Indian Mixture 30gm'}, {'sku_id': '4500730', 'quantity_on_tray': '10', 'quantity_in_db': '10', 'tray_id': '21', 'check_enabled': True, 'sku_name': 'Maxvita Khara Boondi 28gm'}, {'sku_id': '4500731', 'quantity_on_tray': '15', 'quantity_in_db': '15', 'tray_id': '23', 'check_enabled': True, 'sku_name': 'MaxVita Butter Elaichi cookies 46g'}, {'sku_id': '4500644', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '24', 'check_enabled': True, 'sku_name': 'Ongibytes Pepper Sev 35gm'}, {'sku_id': '4500722', 'quantity_on_tray': '5', 'quantity_in_db': '5', 'tray_id': '25', 'check_enabled': True, 'sku_name': 'MaxVita Rice Kodubale 30gm'}, {'sku_id': '4500725', 'quantity_on_tray': '12', 'quantity_in_db': '12', 'tray_id': '26', 'check_enabled': True, 'sku_name': 'Maxvita Coconut Cookies 40gm'}, {'sku_id': '4500407', 'quantity_on_tray': '2', 'quantity_in_db': '2', 'tray_id': '34', 'check_enabled': True, 'sku_name': 'Paper boat Alphonso Mango 160ml'}, {'sku_id': '112220', 'quantity_on_tray': '20', 'quantity_in_db': '20', 'tray_id': '35', 'check_enabled': True, 'sku_name': 'Snickers Chocolate Bar 22g'}, {'sku_id': '4500651', 'quantity_on_tray': '3', 'quantity_in_db': '3', 'tray_id': '38', 'check_enabled': True, 'sku_name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'sku_id': '166327', 'quantity_on_tray': '3', 'quantity_in_db': '3', 'tray_id': '39', 'check_enabled': True, 'sku_name': 'Epigamia Chocolate Milkshake 200g'}, {'sku_id': '185994', 'quantity_on_tray': '2', 'quantity_in_db': '2', 'tray_id': '43', 'check_enabled': True, 'sku_name': 'Nescafe Choco Mocha Cold Coffee 180ml'}, {'sku_id': '8355', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '44', 'check_enabled': True, 'sku_name': 'Coca Cola Can,  300ml'}], 'refill_started': None, 'odoo_posting_status': None, 'transport_odoo_transaction': None, 'command_for': 'server', 'status': 'active', 'vendor_id': '', 'allocation_odoo_transaction': None, 'imei': 'TM03202401', 'type_of_order': 'refill', 'user_id': '', 'cleaning_needed': None, 'acceptance': None, 'refill_odoo_transaction': None, 'retrun_odoo_allocation': None, 'last_modified_at': '2026-08-25 06:39:28', 'total_picking_qty': None, 'expected_return_qty': None, 'refilled_at': None, 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'detailed_trays_json': '{"12":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"13":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"14":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"15":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"16":{"picking_quantity":4,"refill_quantity":"4","refill_qty":"4"},"18":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"19":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"21":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"23":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"24":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"25":{"picking_quantity":5,"refill_quantity":"5","refill_qty":"5"},"26":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"35":{"picking_quantity":20,"refill_quantity":"20","refill_qty":"20"},"38":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"39":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"43":{"picking_quantity":2,"refill_quantity":"2","refill_qty":"2"},"44":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"34":{"picking_quantity":2,"refill_quantity":"2","refill_qty":"2"}}', 'server_status': 'in-progress', 'server_response': '', 'refill_id': '9690322', 'refilled_by': None, 'refill_tool_version': None, 'date_of_refill': '2026-08-25', 'last_command_response': None, 'expected_return_json': None, 'time_of_refill': None, 'actual_return_json': None, 'all_command_response': None, 'return_odoo_transaction': None, 'reason_for_refill': None, 'command_request_data': '{"user":"server","action":"get_user_mobile_no","action_name":"Get User Mobile no","request_data":""}', 'accept_reject_timestamp': None, 'reallocation_odoo_transaction': None}
[2026-08-25 07:53:23,185.185 INFO    ] processing refill code 9690322
[2026-08-25 07:53:23,221.221 INFO    ] 200
[2026-08-25 07:53:23,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 07:53:23,226.226 INFO    ] in-progress
[2026-08-25 07:53:23,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:23
[2026-08-25 07:53:23,306.306 INFO    ] 
inside get

[2026-08-25 07:53:23,309.309 INFO    ] 200
[2026-08-25 07:53:23,311.311 INFO    ] waiting for server
[2026-08-25 07:53:26,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:26
[2026-08-25 07:53:26,416.416 INFO    ] 
inside get

[2026-08-25 07:53:26,418.418 INFO    ] 200
[2026-08-25 07:53:26,421.421 INFO    ] waiting for server
[2026-08-25 07:53:29,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:29
[2026-08-25 07:53:29,523.523 INFO    ] 
inside get

[2026-08-25 07:53:29,525.525 INFO    ] 200
[2026-08-25 07:53:29,528.528 INFO    ] waiting for server
[2026-08-25 07:53:32,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:32
[2026-08-25 07:53:32,634.634 INFO    ] 
inside get

[2026-08-25 07:53:32,637.637 INFO    ] 200
[2026-08-25 07:53:32,639.639 INFO    ] waiting for server
[2026-08-25 07:53:35,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:35
[2026-08-25 07:53:35,745.745 INFO    ] 
inside get

[2026-08-25 07:53:35,748.748 INFO    ] 200
[2026-08-25 07:53:35,750.750 INFO    ] processing machine command
[2026-08-25 07:53:35,753.753 INFO    ] {"user":"machine","action":"machine_mobile_otp_request","action_name":"Waiting for Machine to send OTP","request_data":{"user_id":7019681368,"txnType":"refill"}}
[2026-08-25 07:53:35,755.755 INFO    ] 7019681368
[2026-08-25 07:53:35,944.944 INFO    ] <__main__.ResponseWrapper object at 0x76a705d0>
[2026-08-25 07:53:37,085.085 INFO    ] {"otp": "8193", "allowed": "1", "refill_id": ["9690322"], "success": "true"}
[2026-08-25 07:53:37,088.088 INFO    ] {"otp": "8193", "allowed": "1", "refill_id": ["9690322"], "success": "true"}
[2026-08-25 07:53:37,171.171 INFO    ] 
inside post

[2026-08-25 07:53:37,173.173 INFO    ] 200
[2026-08-25 07:53:37,176.176 INFO    ] {"order_id":"9690322","vm_id":"1711555283773","user_id":"7019681368","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"7019681368\",\"command_for\":\"server\"},{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"action\":\"get_mobile_otp\",\"user\":\"server\",\"request_data\":{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368},\"action_name\":\"Enter OTP\"}","command_for":"server","created_at":"2026-08-25 07:53:22","modified_at":"2026-08-25 07:53:37"}
[2026-08-25 07:53:37,179.179 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 07:53:37', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"action":"get_mobile_otp","user":"server","request_data":{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368},"action_name":"Enter OTP"}'}
[2026-08-25 07:53:37,181.181 INFO    ] in main while loops
[2026-08-25 07:53:40,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:40
[2026-08-25 07:53:40,273.273 INFO    ] 
inside get

[2026-08-25 07:53:40,276.276 INFO    ] 200
[2026-08-25 07:53:40,279.279 INFO    ] waiting for server
[2026-08-25 07:53:43,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:43
[2026-08-25 07:53:43,392.392 INFO    ] 
inside get

[2026-08-25 07:53:43,395.395 INFO    ] 200
[2026-08-25 07:53:43,397.397 INFO    ] waiting for server
[2026-08-25 07:53:46,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:46
[2026-08-25 07:53:46,503.503 INFO    ] 
inside get

[2026-08-25 07:53:46,505.505 INFO    ] 200
[2026-08-25 07:53:46,508.508 INFO    ] waiting for server
[2026-08-25 07:53:49,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:49
[2026-08-25 07:53:49,614.614 INFO    ] 
inside get

[2026-08-25 07:53:49,616.616 INFO    ] 200
[2026-08-25 07:53:49,619.619 INFO    ] processing machine command
[2026-08-25 07:53:49,621.621 INFO    ] {"user":"machine","action":"machine_auth_complete","action_name":"Waiting for Machine to Open Door","request_data":{"user_id":7019681368,"txnType":"refill"}}
[2026-08-25 07:53:49,624.624 INFO    ] 7019681368
[2026-08-25 07:53:50,009.009 INFO    ] 200
[2026-08-25 07:53:50,012.012 INFO    ] {"rstatus": true, "order_id": "TM03202401_refill_260825075349", "active_doors": ["1", "2"], "door_size": 2, "status": "True", "active_payment_gateways": "[{\"header\": \"QR Payments\", \"payments\": [{\"active\": 1, \"label\": \"PayTM\", \"name\": \"PayTM\"}, {\"active\": 1, \"label\": \"PhonePe\", \"name\": \"PhonePe\"}, {\"active\": 1, \"label\": \"Google Pay\", \"name\": \"GooglePay\"}, {\"active\": 1, \"label\": \"BHIM UPI\", \"name\": \"BHIM\"}]}, {\"header\": \"Card Payments\", \"payments\": [{\"active\": 1, \"label\": \"Sodexo Card\", \"name\": \"Sodexo\"}, {\"active\": 1, \"label\": \"Credit/Debit Card\", \"name\": \"Card\"}, {\"active\": 0, \"label\": \"QwikCilver\", \"name\": \"Qwikcilver\"}]}, {\"header\": \"Wallet Payments\", \"payments\": [{\"active\": 1, \"label\": \"LazyPay\", \"name\": \"LazyPay\"}, {\"active\": 0, \"label\": \"OLA Money\", \"name\": \"Ola\"}, {\"active\": 0, \"label\": \"Tiny Wallet\", \"name\": \"Neuu\"}]}]"}
[2026-08-25 07:53:50,014.014 INFO    ] TM03202401_refill_260825075349
[2026-08-25 07:53:50,018.018 INFO    ] {'command_todo': 'interactive-refill', 'total_quantity': '145', 'edited_by': 'Barun', 'vm_id': '1711555283773', 'tray_json': '[{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500732-","org_sku":"4500732","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500713-6","org_sku":"4500713","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500665-6","org_sku":"4500665","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500722-6","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500624-4","org_sku":"4500624","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500723-15","org_sku":"4500723","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500730-10","org_sku":"4500730","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500731-15","org_sku":"4500731","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500644-6","org_sku":"4500644","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500722-5","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"34","door_id":"2","tray_weight":"99999","sku_json":"4500407-2","org_sku":"4500407","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"35","door_id":"2","tray_weight":"99999","sku_json":"112220-20","org_sku":"112220","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"38","door_id":"2","tray_weight":"99999","sku_json":"4500651-3","org_sku":"4500651","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"39","door_id":"2","tray_weight":"99999","sku_json":"166327-3","org_sku":"166327","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"185994-2","org_sku":"185994","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"},{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"8355-6","org_sku":"8355","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28"}]', 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}, 'refill_group': None, 'modified_at': '2026-08-25 07:53:22', 'delivery_cluster': None, 'slot': 'morning-1', 'pickup_status': None, 'reject_reason': None, 'atcual_return_qty': None, 'compelete_refill': [{'sku_id': '4500732', 'quantity_on_tray': 0, 'quantity_in_db': 0, 'tray_id': '11', 'check_enabled': True, 'sku_name': 'Maxvita Tomato Potato Chips 40gm'}, {'sku_id': '4500713', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '12', 'check_enabled': True, 'sku_name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}, {'sku_id': '4500665', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '13', 'check_enabled': True, 'sku_name': 'Farmely Peri Peri Makhana 14gm'}, {'sku_id': '4500725', 'quantity_on_tray': '12', 'quantity_in_db': '12', 'tray_id': '14', 'check_enabled': True, 'sku_name': 'Maxvita Coconut Cookies 40gm'}, {'sku_id': '4500722', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '15', 'check_enabled': True, 'sku_name': 'MaxVita Rice Kodubale 30gm'}, {'sku_id': '4500624', 'quantity_on_tray': '4', 'quantity_in_db': '4', 'tray_id': '16', 'check_enabled': True, 'sku_name': 'Madmix  Aloo Sev Millet Bhujia 27gm'}, {'sku_id': '4500723', 'quantity_on_tray': '15', 'quantity_in_db': '15', 'tray_id': '18', 'check_enabled': True, 'sku_name': 'MaxVita Moong daal 25gm'}, {'sku_id': '4500726', 'quantity_on_tray': '12', 'quantity_in_db': '12', 'tray_id': '19', 'check_enabled': True, 'sku_name': 'MaxVita Crunchy Indian Mixture 30gm'}, {'sku_id': '4500730', 'quantity_on_tray': '10', 'quantity_in_db': '10', 'tray_id': '21', 'check_enabled': True, 'sku_name': 'Maxvita Khara Boondi 28gm'}, {'sku_id': '4500731', 'quantity_on_tray': '15', 'quantity_in_db': '15', 'tray_id': '23', 'check_enabled': True, 'sku_name': 'MaxVita Butter Elaichi cookies 46g'}, {'sku_id': '4500644', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '24', 'check_enabled': True, 'sku_name': 'Ongibytes Pepper Sev 35gm'}, {'sku_id': '4500722', 'quantity_on_tray': '5', 'quantity_in_db': '5', 'tray_id': '25', 'check_enabled': True, 'sku_name': 'MaxVita Rice Kodubale 30gm'}, {'sku_id': '4500725', 'quantity_on_tray': '12', 'quantity_in_db': '12', 'tray_id': '26', 'check_enabled': True, 'sku_name': 'Maxvita Coconut Cookies 40gm'}, {'sku_id': '4500407', 'quantity_on_tray': '2', 'quantity_in_db': '2', 'tray_id': '34', 'check_enabled': True, 'sku_name': 'Paper boat Alphonso Mango 160ml'}, {'sku_id': '112220', 'quantity_on_tray': '20', 'quantity_in_db': '20', 'tray_id': '35', 'check_enabled': True, 'sku_name': 'Snickers Chocolate Bar 22g'}, {'sku_id': '4500651', 'quantity_on_tray': '3', 'quantity_in_db': '3', 'tray_id': '38', 'check_enabled': True, 'sku_name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'sku_id': '166327', 'quantity_on_tray': '3', 'quantity_in_db': '3', 'tray_id': '39', 'check_enabled': True, 'sku_name': 'Epigamia Chocolate Milkshake 200g'}, {'sku_id': '185994', 'quantity_on_tray': '2', 'quantity_in_db': '2', 'tray_id': '43', 'check_enabled': True, 'sku_name': 'Nescafe Choco Mocha Cold Coffee 180ml'}, {'sku_id': '8355', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'tray_id': '44', 'check_enabled': True, 'sku_name': 'Coca Cola Can,  300ml'}], 'refill_started': None, 'odoo_posting_status': None, 'transport_odoo_transaction': None, 'command_for': 'server', 'status': 'active', 'vendor_id': '', 'allocation_odoo_transaction': None, 'imei': 'TM03202401', 'type_of_order': 'refill', 'user_id': '', 'cleaning_needed': None, 'acceptance': None, 'refill_odoo_transaction': None, 'retrun_odoo_allocation': None, 'last_modified_at': '2026-08-25 06:39:28', 'total_picking_qty': None, 'expected_return_qty': None, 'refilled_at': None, 'order_id': 'TM03202401_refill_260825075349', 'created_at': '2026-08-25 07:53:22', 'detailed_trays_json': '{"12":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"13":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"14":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"15":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"16":{"picking_quantity":4,"refill_quantity":"4","refill_qty":"4"},"18":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"19":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"21":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"23":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"24":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"25":{"picking_quantity":5,"refill_quantity":"5","refill_qty":"5"},"26":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"35":{"picking_quantity":20,"refill_quantity":"20","refill_qty":"20"},"38":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"39":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"43":{"picking_quantity":2,"refill_quantity":"2","refill_qty":"2"},"44":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"34":{"picking_quantity":2,"refill_quantity":"2","refill_qty":"2"}}', 'server_status': 'in-progress', 'server_response': '', 'refill_id': '9690322', 'refilled_by': None, 'refill_tool_version': None, 'date_of_refill': '2026-08-25', 'last_command_response': None, 'expected_return_json': None, 'time_of_refill': None, 'actual_return_json': None, 'all_command_response': None, 'return_odoo_transaction': None, 'reason_for_refill': None, 'command_request_data': '{"user":"server","action":"get_user_mobile_no","action_name":"Get User Mobile no","request_data":""}', 'accept_reject_timestamp': None, 'reallocation_odoo_transaction': None}
[2026-08-25 07:53:50,121.121 INFO    ] {"data": {}, "rstatus": true, "status": "True"}
[2026-08-25 07:53:50,123.123 INFO    ] {'status': 'True', 'rstatus': True, 'data': {}}
[2026-08-25 07:53:50,126.126 INFO    ] {'status': 'True', 'rstatus': True, 'data': {}}
[2026-08-25 07:53:50,219.219 INFO    ] 
inside post

[2026-08-25 07:53:50,221.221 INFO    ] 200
[2026-08-25 07:53:50,223.223 INFO    ] {"order_id":"9690322","vm_id":"1711555283773","user_id":"7019681368","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2,\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"7019681368\",\"command_for\":\"server\"},{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"7019681368\",\"otp\":\"8193\",\"command_for\":\"server\"},{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2,\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"action\":\"open_door_process\",\"user\":\"server\",\"request_data\":{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2},\"action_name\":\"Select Door to Open\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-08-25 07:53:22","modified_at":"2026-08-25 07:53:50"}
[2026-08-25 07:53:50,227.227 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 07:53:50', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"action":"open_door_process","user":"server","request_data":{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2},"action_name":"Select Door to Open","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"]}'}
[2026-08-25 07:53:50,230.230 INFO    ] in main while loops
[2026-08-25 07:53:53,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:53
[2026-08-25 07:53:53,340.340 INFO    ] 
inside get

[2026-08-25 07:53:53,342.342 INFO    ] 200
[2026-08-25 07:53:53,346.346 INFO    ] waiting for server
[2026-08-25 07:53:56,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:53:56
[2026-08-25 07:53:56,428.428 INFO    ] 
inside get

[2026-08-25 07:53:56,430.430 INFO    ] 200
[2026-08-25 07:53:56,433.433 INFO    ] processing machine command
[2026-08-25 07:53:56,435.435 INFO    ] {"action":"open_door_process","user":"machine","request_data":{"order_id":"TM03202401_refill_260825075349","door_id":[1],"txnType":"refill","door_open_init":true},"action_name":"Waiting for Machine to Open Door","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"sub-action":"open_door_call"}
[2026-08-25 07:53:56,438.438 INFO    ] ####### REFIL OPEN DOOR ######## 
[2026-08-25 07:53:56,440.440 INFO    ] {'order_id': 'TM03202401_refill_260825075349', 'txnType': 'refill', 'door_id': [1], 'door_open_init': True}
[2026-08-25 07:53:58,494.494 INFO    ] <__main__.ResponseWrapper object at 0x73df4950>
[2026-08-25 07:54:02,778.778 INFO    ] <__main__.ResponseWrapper object at 0x73dddb50>
[2026-08-25 07:54:06,883.883 INFO    ] <__main__.ResponseWrapper object at 0x76a7fb90>
[2026-08-25 07:54:11,003.003 INFO    ] <__main__.ResponseWrapper object at 0x73df4c10>
[2026-08-25 07:54:15,143.143 INFO    ] <__main__.ResponseWrapper object at 0x73dddb50>
[2026-08-25 07:54:19,303.303 INFO    ] <__main__.ResponseWrapper object at 0x76a7fb90>
[2026-08-25 07:54:22,825.825 INFO    ] 
inside post

[2026-08-25 07:54:22,827.827 INFO    ] 200
[2026-08-25 07:54:22,830.830 INFO    ] {"order_id":"9690322","vm_id":"1711555283773","user_id":"7019681368","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 1\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"7019681368\",\"command_for\":\"server\"},{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"7019681368\",\"otp\":\"8193\",\"command_for\":\"server\"},{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2,\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 1\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"sub-action\":\"open_door_process\",\"request_data\":[],\"action_name\":\"Select Door to Open\",\"action\":\"open_door_process\",\"user\":\"machine\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"response_data\":{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 1\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]}},\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-08-25 07:53:22","modified_at":"2026-08-25 07:54:22"}
[2026-08-25 07:54:22,833.833 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 07:54:22', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"sub-action":"open_door_process","request_data":[],"action_name":"Select Door to Open","action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]}},"active_doors":["1","2"]}'}
[2026-08-25 07:54:22,836.836 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 07:54:22', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"sub-action":"open_door_process","request_data":[],"action_name":"Select Door to Open","action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]}},"active_doors":["1","2"]}'}
[2026-08-25 07:54:22,839.839 INFO    ] in main while loops
[2026-08-25 07:54:25,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:25
[2026-08-25 07:54:25,947.947 INFO    ] 
inside get

[2026-08-25 07:54:25,950.950 INFO    ] 200
[2026-08-25 07:54:25,954.954 INFO    ] waiting for server
[2026-08-25 07:54:28,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:28
[2026-08-25 07:54:29,056.056 INFO    ] 
inside get

[2026-08-25 07:54:29,059.059 INFO    ] 200
[2026-08-25 07:54:29,062.062 INFO    ] waiting for server
[2026-08-25 07:54:32,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:32
[2026-08-25 07:54:32,147.147 INFO    ] 
inside get

[2026-08-25 07:54:32,150.150 INFO    ] 200
[2026-08-25 07:54:32,154.154 INFO    ] waiting for server
[2026-08-25 07:54:35,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:35
[2026-08-25 07:54:35,262.262 INFO    ] 
inside get

[2026-08-25 07:54:35,264.264 INFO    ] 200
[2026-08-25 07:54:35,268.268 INFO    ] waiting for server
[2026-08-25 07:54:38,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:38
[2026-08-25 07:54:38,362.362 INFO    ] 
inside get

[2026-08-25 07:54:38,365.365 INFO    ] 200
[2026-08-25 07:54:38,369.369 INFO    ] waiting for server
[2026-08-25 07:54:41,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:41
[2026-08-25 07:54:41,497.497 INFO    ] 
inside get

[2026-08-25 07:54:41,499.499 INFO    ] 200
[2026-08-25 07:54:41,503.503 INFO    ] waiting for server
[2026-08-25 07:54:44,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:44
[2026-08-25 07:54:44,595.595 INFO    ] 
inside get

[2026-08-25 07:54:44,597.597 INFO    ] 200
[2026-08-25 07:54:44,601.601 INFO    ] waiting for server
[2026-08-25 07:54:47,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:47
[2026-08-25 07:54:47,710.710 INFO    ] 
inside get

[2026-08-25 07:54:47,713.713 INFO    ] 200
[2026-08-25 07:54:47,718.718 INFO    ] waiting for server
[2026-08-25 07:54:50,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:50
[2026-08-25 07:54:50,835.835 INFO    ] 
inside get

[2026-08-25 07:54:50,837.837 INFO    ] 200
[2026-08-25 07:54:50,841.841 INFO    ] waiting for server
[2026-08-25 07:54:53,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:53
[2026-08-25 07:54:53,972.972 INFO    ] 
inside get

[2026-08-25 07:54:53,975.975 INFO    ] 200
[2026-08-25 07:54:53,979.979 INFO    ] waiting for server
[2026-08-25 07:54:56,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:54:56
[2026-08-25 07:54:57,127.127 INFO    ] 
inside get

[2026-08-25 07:54:57,131.131 INFO    ] 200
[2026-08-25 07:54:57,136.136 INFO    ] waiting for server
[2026-08-25 07:55:00,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:00
[2026-08-25 07:55:00,252.252 INFO    ] 
inside get

[2026-08-25 07:55:00,255.255 INFO    ] 200
[2026-08-25 07:55:00,259.259 INFO    ] waiting for server
[2026-08-25 07:55:03,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:03
[2026-08-25 07:55:03,354.354 INFO    ] 
inside get

[2026-08-25 07:55:03,357.357 INFO    ] 200
[2026-08-25 07:55:03,360.360 INFO    ] waiting for server
[2026-08-25 07:55:06,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:06
[2026-08-25 07:55:06,476.476 INFO    ] 
inside get

[2026-08-25 07:55:06,479.479 INFO    ] 200
[2026-08-25 07:55:06,483.483 INFO    ] waiting for server
[2026-08-25 07:55:09,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:09
[2026-08-25 07:55:09,590.590 INFO    ] 
inside get

[2026-08-25 07:55:09,593.593 INFO    ] 200
[2026-08-25 07:55:09,597.597 INFO    ] waiting for server
[2026-08-25 07:55:12,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:12
[2026-08-25 07:55:12,698.698 INFO    ] 
inside get

[2026-08-25 07:55:12,701.701 INFO    ] 200
[2026-08-25 07:55:12,705.705 INFO    ] waiting for server
[2026-08-25 07:55:15,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:15
[2026-08-25 07:55:15,817.817 INFO    ] 
inside get

[2026-08-25 07:55:15,820.820 INFO    ] 200
[2026-08-25 07:55:15,824.824 INFO    ] waiting for server
[2026-08-25 07:55:18,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:18
[2026-08-25 07:55:18,940.940 INFO    ] 
inside get

[2026-08-25 07:55:18,943.943 INFO    ] 200
[2026-08-25 07:55:18,947.947 INFO    ] waiting for server
[2026-08-25 07:55:21,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:21
[2026-08-25 07:55:22,042.042 INFO    ] 
inside get

[2026-08-25 07:55:22,045.045 INFO    ] 200
[2026-08-25 07:55:22,049.049 INFO    ] waiting for server
[2026-08-25 07:55:25,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:25
[2026-08-25 07:55:25,160.160 INFO    ] 
inside get

[2026-08-25 07:55:25,163.163 INFO    ] 200
[2026-08-25 07:55:25,167.167 INFO    ] waiting for server
[2026-08-25 07:55:28,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:28
[2026-08-25 07:55:28,275.275 INFO    ] 
inside get

[2026-08-25 07:55:28,277.277 INFO    ] 200
[2026-08-25 07:55:28,281.281 INFO    ] waiting for server
[2026-08-25 07:55:31,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:31
[2026-08-25 07:55:31,396.396 INFO    ] 
inside get

[2026-08-25 07:55:31,399.399 INFO    ] 200
[2026-08-25 07:55:31,403.403 INFO    ] waiting for server
[2026-08-25 07:55:34,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:34
[2026-08-25 07:55:34,502.502 INFO    ] 
inside get

[2026-08-25 07:55:34,505.505 INFO    ] 200
[2026-08-25 07:55:34,511.511 INFO    ] waiting for server
[2026-08-25 07:55:37,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:37
[2026-08-25 07:55:37,619.619 INFO    ] 
inside get

[2026-08-25 07:55:37,621.621 INFO    ] 200
[2026-08-25 07:55:37,625.625 INFO    ] waiting for server
[2026-08-25 07:55:40,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:40
[2026-08-25 07:55:40,746.746 INFO    ] 
inside get

[2026-08-25 07:55:40,749.749 INFO    ] 200
[2026-08-25 07:55:40,752.752 INFO    ] waiting for server
[2026-08-25 07:55:43,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:43
[2026-08-25 07:55:43,848.848 INFO    ] 
inside get

[2026-08-25 07:55:43,851.851 INFO    ] 200
[2026-08-25 07:55:43,854.854 INFO    ] waiting for server
[2026-08-25 07:55:46,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:46
[2026-08-25 07:55:46,965.965 INFO    ] 
inside get

[2026-08-25 07:55:46,967.967 INFO    ] 200
[2026-08-25 07:55:46,971.971 INFO    ] waiting for server
[2026-08-25 07:55:49,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:49
[2026-08-25 07:55:50,079.079 INFO    ] 
inside get

[2026-08-25 07:55:50,081.081 INFO    ] 200
[2026-08-25 07:55:50,085.085 INFO    ] waiting for server
[2026-08-25 07:55:53,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:53
[2026-08-25 07:55:53,196.196 INFO    ] 
inside get

[2026-08-25 07:55:53,199.199 INFO    ] 200
[2026-08-25 07:55:53,202.202 INFO    ] waiting for server
[2026-08-25 07:55:56,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:56
[2026-08-25 07:55:56,288.288 INFO    ] 
inside get

[2026-08-25 07:55:56,290.290 INFO    ] 200
[2026-08-25 07:55:56,293.293 INFO    ] waiting for server
[2026-08-25 07:55:59,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:55:59
[2026-08-25 07:55:59,409.409 INFO    ] 
inside get

[2026-08-25 07:55:59,411.411 INFO    ] 200
[2026-08-25 07:55:59,415.415 INFO    ] waiting for server
[2026-08-25 07:56:02,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:02
[2026-08-25 07:56:02,535.535 INFO    ] 
inside get

[2026-08-25 07:56:02,538.538 INFO    ] 200
[2026-08-25 07:56:02,542.542 INFO    ] waiting for server
[2026-08-25 07:56:05,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:05
[2026-08-25 07:56:05,655.655 INFO    ] 
inside get

[2026-08-25 07:56:05,657.657 INFO    ] 200
[2026-08-25 07:56:05,661.661 INFO    ] waiting for server
[2026-08-25 07:56:08,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:08
[2026-08-25 07:56:08,736.736 INFO    ] 
inside get

[2026-08-25 07:56:08,739.739 INFO    ] 200
[2026-08-25 07:56:08,743.743 INFO    ] waiting for server
[2026-08-25 07:56:11,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:11
[2026-08-25 07:56:11,848.848 INFO    ] 
inside get

[2026-08-25 07:56:11,851.851 INFO    ] 200
[2026-08-25 07:56:11,855.855 INFO    ] waiting for server
[2026-08-25 07:56:14,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:14
[2026-08-25 07:56:14,954.954 INFO    ] 
inside get

[2026-08-25 07:56:14,957.957 INFO    ] 200
[2026-08-25 07:56:14,961.961 INFO    ] waiting for server
[2026-08-25 07:56:17,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:17
[2026-08-25 07:56:18,045.045 INFO    ] 
inside get

[2026-08-25 07:56:18,048.048 INFO    ] 200
[2026-08-25 07:56:18,052.052 INFO    ] waiting for server
[2026-08-25 07:56:21,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:21
[2026-08-25 07:56:21,165.165 INFO    ] 
inside get

[2026-08-25 07:56:21,168.168 INFO    ] 200
[2026-08-25 07:56:21,172.172 INFO    ] waiting for server
[2026-08-25 07:56:24,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:24
[2026-08-25 07:56:24,292.292 INFO    ] 
inside get

[2026-08-25 07:56:24,295.295 INFO    ] 200
[2026-08-25 07:56:24,299.299 INFO    ] waiting for server
[2026-08-25 07:56:27,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:27
[2026-08-25 07:56:27,411.411 INFO    ] 
inside get

[2026-08-25 07:56:27,413.413 INFO    ] 200
[2026-08-25 07:56:27,418.418 INFO    ] waiting for server
[2026-08-25 07:56:30,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:30
[2026-08-25 07:56:30,511.511 INFO    ] 
inside get

[2026-08-25 07:56:30,515.515 INFO    ] 200
[2026-08-25 07:56:30,521.521 INFO    ] waiting for server
[2026-08-25 07:56:33,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:33
[2026-08-25 07:56:33,636.636 INFO    ] 
inside get

[2026-08-25 07:56:33,638.638 INFO    ] 200
[2026-08-25 07:56:33,642.642 INFO    ] waiting for server
[2026-08-25 07:56:36,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:36
[2026-08-25 07:56:36,751.751 INFO    ] 
inside get

[2026-08-25 07:56:36,754.754 INFO    ] 200
[2026-08-25 07:56:36,758.758 INFO    ] waiting for server
[2026-08-25 07:56:39,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:39
[2026-08-25 07:56:39,850.850 INFO    ] 
inside get

[2026-08-25 07:56:39,853.853 INFO    ] 200
[2026-08-25 07:56:39,857.857 INFO    ] waiting for server
[2026-08-25 07:56:42,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:42
[2026-08-25 07:56:42,971.971 INFO    ] 
inside get

[2026-08-25 07:56:42,974.974 INFO    ] 200
[2026-08-25 07:56:42,978.978 INFO    ] waiting for server
[2026-08-25 07:56:45,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:45
[2026-08-25 07:56:46,086.086 INFO    ] 
inside get

[2026-08-25 07:56:46,089.089 INFO    ] 200
[2026-08-25 07:56:46,094.094 INFO    ] waiting for server
[2026-08-25 07:56:49,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:49
[2026-08-25 07:56:49,206.206 INFO    ] 
inside get

[2026-08-25 07:56:49,209.209 INFO    ] 200
[2026-08-25 07:56:49,213.213 INFO    ] waiting for server
[2026-08-25 07:56:52,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:52
[2026-08-25 07:56:52,326.326 INFO    ] 
inside get

[2026-08-25 07:56:52,329.329 INFO    ] 200
[2026-08-25 07:56:52,333.333 INFO    ] waiting for server
[2026-08-25 07:56:55,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:55
[2026-08-25 07:56:55,439.439 INFO    ] 
inside get

[2026-08-25 07:56:55,443.443 INFO    ] 200
[2026-08-25 07:56:55,447.447 INFO    ] waiting for server
[2026-08-25 07:56:58,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:56:58
[2026-08-25 07:56:58,565.565 INFO    ] 
inside get

[2026-08-25 07:56:58,567.567 INFO    ] 200
[2026-08-25 07:56:58,572.572 INFO    ] waiting for server
[2026-08-25 07:57:01,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:01
[2026-08-25 07:57:01,686.686 INFO    ] 
inside get

[2026-08-25 07:57:01,689.689 INFO    ] 200
[2026-08-25 07:57:01,693.693 INFO    ] waiting for server
[2026-08-25 07:57:04,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:04
[2026-08-25 07:57:04,777.777 INFO    ] 
inside get

[2026-08-25 07:57:04,780.780 INFO    ] 200
[2026-08-25 07:57:04,783.783 INFO    ] waiting for server
[2026-08-25 07:57:07,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:07
[2026-08-25 07:57:07,889.889 INFO    ] 
inside get

[2026-08-25 07:57:07,891.891 INFO    ] 200
[2026-08-25 07:57:07,895.895 INFO    ] waiting for server
[2026-08-25 07:57:10,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:10
[2026-08-25 07:57:11,026.026 INFO    ] 
inside get

[2026-08-25 07:57:11,029.029 INFO    ] 200
[2026-08-25 07:57:11,032.032 INFO    ] waiting for server
[2026-08-25 07:57:14,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:14
[2026-08-25 07:57:14,118.118 INFO    ] 
inside get

[2026-08-25 07:57:14,121.121 INFO    ] 200
[2026-08-25 07:57:14,124.124 INFO    ] waiting for server
[2026-08-25 07:57:17,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:17
[2026-08-25 07:57:17,228.228 INFO    ] 
inside get

[2026-08-25 07:57:17,230.230 INFO    ] 200
[2026-08-25 07:57:17,233.233 INFO    ] waiting for server
[2026-08-25 07:57:20,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:20
[2026-08-25 07:57:20,317.317 INFO    ] 
inside get

[2026-08-25 07:57:20,320.320 INFO    ] 200
[2026-08-25 07:57:20,324.324 INFO    ] waiting for server
[2026-08-25 07:57:23,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:23
[2026-08-25 07:57:23,437.437 INFO    ] 
inside get

[2026-08-25 07:57:23,439.439 INFO    ] 200
[2026-08-25 07:57:23,442.442 INFO    ] waiting for server
[2026-08-25 07:57:26,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:26
[2026-08-25 07:57:26,529.529 INFO    ] 
inside get

[2026-08-25 07:57:26,532.532 INFO    ] 200
[2026-08-25 07:57:26,535.535 INFO    ] waiting for server
[2026-08-25 07:57:29,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:29
[2026-08-25 07:57:29,640.640 INFO    ] 
inside get

[2026-08-25 07:57:29,643.643 INFO    ] 200
[2026-08-25 07:57:29,646.646 INFO    ] waiting for server
[2026-08-25 07:57:32,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:32
[2026-08-25 07:57:32,729.729 INFO    ] 
inside get

[2026-08-25 07:57:32,732.732 INFO    ] 200
[2026-08-25 07:57:32,737.737 INFO    ] waiting for server
[2026-08-25 07:57:35,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:35
[2026-08-25 07:57:35,851.851 INFO    ] 
inside get

[2026-08-25 07:57:35,854.854 INFO    ] 200
[2026-08-25 07:57:35,857.857 INFO    ] waiting for server
[2026-08-25 07:57:38,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:38
[2026-08-25 07:57:38,947.947 INFO    ] 
inside get

[2026-08-25 07:57:38,949.949 INFO    ] 200
[2026-08-25 07:57:38,953.953 INFO    ] waiting for server
[2026-08-25 07:57:41,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:41
[2026-08-25 07:57:42,054.054 INFO    ] 
inside get

[2026-08-25 07:57:42,057.057 INFO    ] 200
[2026-08-25 07:57:42,060.060 INFO    ] waiting for server
[2026-08-25 07:57:45,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:45
[2026-08-25 07:57:45,388.388 INFO    ] 
inside get

[2026-08-25 07:57:45,390.390 INFO    ] 200
[2026-08-25 07:57:45,393.393 INFO    ] waiting for server
[2026-08-25 07:57:48,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:48
[2026-08-25 07:57:48,508.508 INFO    ] 
inside get

[2026-08-25 07:57:48,510.510 INFO    ] 200
[2026-08-25 07:57:48,514.514 INFO    ] waiting for server
[2026-08-25 07:57:51,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:51
[2026-08-25 07:57:51,615.615 INFO    ] 
inside get

[2026-08-25 07:57:51,617.617 INFO    ] 200
[2026-08-25 07:57:51,621.621 INFO    ] waiting for server
[2026-08-25 07:57:54,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:54
[2026-08-25 07:57:54,705.705 INFO    ] 
inside get

[2026-08-25 07:57:54,707.707 INFO    ] 200
[2026-08-25 07:57:54,710.710 INFO    ] waiting for server
[2026-08-25 07:57:57,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:57:57
[2026-08-25 07:57:57,813.813 INFO    ] 
inside get

[2026-08-25 07:57:57,816.816 INFO    ] 200
[2026-08-25 07:57:57,819.819 INFO    ] waiting for server
[2026-08-25 07:58:00,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:00
[2026-08-25 07:58:00,929.929 INFO    ] 
inside get

[2026-08-25 07:58:00,932.932 INFO    ] 200
[2026-08-25 07:58:00,935.935 INFO    ] waiting for server
[2026-08-25 07:58:03,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:03
[2026-08-25 07:58:04,029.029 INFO    ] 
inside get

[2026-08-25 07:58:04,032.032 INFO    ] 200
[2026-08-25 07:58:04,035.035 INFO    ] waiting for server
[2026-08-25 07:58:07,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:07
[2026-08-25 07:58:07,144.144 INFO    ] 
inside get

[2026-08-25 07:58:07,147.147 INFO    ] 200
[2026-08-25 07:58:07,150.150 INFO    ] waiting for server
[2026-08-25 07:58:10,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:10
[2026-08-25 07:58:10,258.258 INFO    ] 
inside get

[2026-08-25 07:58:10,261.261 INFO    ] 200
[2026-08-25 07:58:10,265.265 INFO    ] waiting for server
[2026-08-25 07:58:13,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:13
[2026-08-25 07:58:13,375.375 INFO    ] 
inside get

[2026-08-25 07:58:13,378.378 INFO    ] 200
[2026-08-25 07:58:13,381.381 INFO    ] waiting for server
[2026-08-25 07:58:16,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:16
[2026-08-25 07:58:16,472.472 INFO    ] 
inside get

[2026-08-25 07:58:16,475.475 INFO    ] 200
[2026-08-25 07:58:16,478.478 INFO    ] waiting for server
[2026-08-25 07:58:19,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:19
[2026-08-25 07:58:19,587.587 INFO    ] 
inside get

[2026-08-25 07:58:19,590.590 INFO    ] 200
[2026-08-25 07:58:19,593.593 INFO    ] waiting for server
[2026-08-25 07:58:22,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:22
[2026-08-25 07:58:22,706.706 INFO    ] 
inside get

[2026-08-25 07:58:22,708.708 INFO    ] 200
[2026-08-25 07:58:22,712.712 INFO    ] waiting for server
[2026-08-25 07:58:25,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:25
[2026-08-25 07:58:25,799.799 INFO    ] 
inside get

[2026-08-25 07:58:25,802.802 INFO    ] 200
[2026-08-25 07:58:25,807.807 INFO    ] waiting for server
[2026-08-25 07:58:28,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:28
[2026-08-25 07:58:28,909.909 INFO    ] 
inside get

[2026-08-25 07:58:28,911.911 INFO    ] 200
[2026-08-25 07:58:28,916.916 INFO    ] waiting for server
[2026-08-25 07:58:31,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:31
[2026-08-25 07:58:32,019.019 INFO    ] 
inside get

[2026-08-25 07:58:32,023.023 INFO    ] 200
[2026-08-25 07:58:32,029.029 INFO    ] waiting for server
[2026-08-25 07:58:35,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:35
[2026-08-25 07:58:35,146.146 INFO    ] 
inside get

[2026-08-25 07:58:35,149.149 INFO    ] 200
[2026-08-25 07:58:35,153.153 INFO    ] waiting for server
[2026-08-25 07:58:38,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:38
[2026-08-25 07:58:38,269.269 INFO    ] 
inside get

[2026-08-25 07:58:38,272.272 INFO    ] 200
[2026-08-25 07:58:38,276.276 INFO    ] waiting for server
[2026-08-25 07:58:41,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:41
[2026-08-25 07:58:41,393.393 INFO    ] 
inside get

[2026-08-25 07:58:41,396.396 INFO    ] 200
[2026-08-25 07:58:41,400.400 INFO    ] waiting for server
[2026-08-25 07:58:44,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:44
[2026-08-25 07:58:44,507.507 INFO    ] 
inside get

[2026-08-25 07:58:44,510.510 INFO    ] 200
[2026-08-25 07:58:44,514.514 INFO    ] waiting for server
[2026-08-25 07:58:47,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:47
[2026-08-25 07:58:47,597.597 INFO    ] 
inside get

[2026-08-25 07:58:47,600.600 INFO    ] 200
[2026-08-25 07:58:47,604.604 INFO    ] waiting for server
[2026-08-25 07:58:50,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:50
[2026-08-25 07:58:50,716.716 INFO    ] 
inside get

[2026-08-25 07:58:50,719.719 INFO    ] 200
[2026-08-25 07:58:50,723.723 INFO    ] waiting for server
[2026-08-25 07:58:53,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:53
[2026-08-25 07:58:53,838.838 INFO    ] 
inside get

[2026-08-25 07:58:53,841.841 INFO    ] 200
[2026-08-25 07:58:53,845.845 INFO    ] waiting for server
[2026-08-25 07:58:56,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:56
[2026-08-25 07:58:56,958.958 INFO    ] 
inside get

[2026-08-25 07:58:56,961.961 INFO    ] 200
[2026-08-25 07:58:56,966.966 INFO    ] waiting for server
[2026-08-25 07:58:59,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:58:59
[2026-08-25 07:59:00,096.096 INFO    ] 
inside get

[2026-08-25 07:59:00,099.099 INFO    ] 200
[2026-08-25 07:59:00,103.103 INFO    ] waiting for server
[2026-08-25 07:59:03,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:03
[2026-08-25 07:59:03,192.192 INFO    ] 
inside get

[2026-08-25 07:59:03,195.195 INFO    ] 200
[2026-08-25 07:59:03,200.200 INFO    ] waiting for server
[2026-08-25 07:59:06,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:06
[2026-08-25 07:59:06,316.316 INFO    ] 
inside get

[2026-08-25 07:59:06,319.319 INFO    ] 200
[2026-08-25 07:59:06,323.323 INFO    ] waiting for server
[2026-08-25 07:59:09,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:09
[2026-08-25 07:59:09,428.428 INFO    ] 
inside get

[2026-08-25 07:59:09,431.431 INFO    ] 200
[2026-08-25 07:59:09,435.435 INFO    ] waiting for server
[2026-08-25 07:59:12,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:12
[2026-08-25 07:59:12,541.541 INFO    ] 
inside get

[2026-08-25 07:59:12,544.544 INFO    ] 200
[2026-08-25 07:59:12,548.548 INFO    ] waiting for server
[2026-08-25 07:59:15,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:15
[2026-08-25 07:59:15,666.666 INFO    ] 
inside get

[2026-08-25 07:59:15,668.668 INFO    ] 200
[2026-08-25 07:59:15,672.672 INFO    ] waiting for server
[2026-08-25 07:59:18,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:18
[2026-08-25 07:59:18,774.774 INFO    ] 
inside get

[2026-08-25 07:59:18,776.776 INFO    ] 200
[2026-08-25 07:59:18,780.780 INFO    ] waiting for server
[2026-08-25 07:59:21,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:21
[2026-08-25 07:59:21,867.867 INFO    ] 
inside get

[2026-08-25 07:59:21,869.869 INFO    ] 200
[2026-08-25 07:59:21,873.873 INFO    ] waiting for server
[2026-08-25 07:59:24,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:24
[2026-08-25 07:59:24,985.985 INFO    ] 
inside get

[2026-08-25 07:59:24,988.988 INFO    ] 200
[2026-08-25 07:59:24,991.991 INFO    ] waiting for server
[2026-08-25 07:59:27,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:27
[2026-08-25 07:59:28,099.099 INFO    ] 
inside get

[2026-08-25 07:59:28,102.102 INFO    ] 200
[2026-08-25 07:59:28,107.107 INFO    ] waiting for server
[2026-08-25 07:59:31,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:31
[2026-08-25 07:59:31,219.219 INFO    ] 
inside get

[2026-08-25 07:59:31,222.222 INFO    ] 200
[2026-08-25 07:59:31,227.227 INFO    ] waiting for server
[2026-08-25 07:59:34,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:34
[2026-08-25 07:59:34,330.330 INFO    ] 
inside get

[2026-08-25 07:59:34,333.333 INFO    ] 200
[2026-08-25 07:59:34,337.337 INFO    ] waiting for server
[2026-08-25 07:59:37,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:37
[2026-08-25 07:59:37,826.826 INFO    ] 
inside get

[2026-08-25 07:59:37,828.828 INFO    ] 200
[2026-08-25 07:59:37,832.832 INFO    ] waiting for server
[2026-08-25 07:59:40,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:40
[2026-08-25 07:59:40,947.947 INFO    ] 
inside get

[2026-08-25 07:59:40,949.949 INFO    ] 200
[2026-08-25 07:59:40,953.953 INFO    ] waiting for server
[2026-08-25 07:59:43,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:43
[2026-08-25 07:59:44,057.057 INFO    ] 
inside get

[2026-08-25 07:59:44,060.060 INFO    ] 200
[2026-08-25 07:59:44,063.063 INFO    ] waiting for server
[2026-08-25 07:59:47,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:47
[2026-08-25 07:59:47,169.169 INFO    ] 
inside get

[2026-08-25 07:59:47,172.172 INFO    ] 200
[2026-08-25 07:59:47,176.176 INFO    ] waiting for server
[2026-08-25 07:59:50,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:50
[2026-08-25 07:59:50,286.286 INFO    ] 
inside get

[2026-08-25 07:59:50,288.288 INFO    ] 200
[2026-08-25 07:59:50,292.292 INFO    ] waiting for server
[2026-08-25 07:59:53,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:53
[2026-08-25 07:59:53,367.367 INFO    ] 
inside get

[2026-08-25 07:59:53,370.370 INFO    ] 200
[2026-08-25 07:59:53,374.374 INFO    ] waiting for server
[2026-08-25 07:59:56,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:56
[2026-08-25 07:59:56,458.458 INFO    ] 
inside get

[2026-08-25 07:59:56,461.461 INFO    ] 200
[2026-08-25 07:59:56,464.464 INFO    ] waiting for server
[2026-08-25 07:59:59,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 07:59:59
[2026-08-25 07:59:59,581.581 INFO    ] 
inside get

[2026-08-25 07:59:59,583.583 INFO    ] 200
[2026-08-25 07:59:59,587.587 INFO    ] waiting for server
[2026-08-25 08:00:02,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:02
[2026-08-25 08:00:02,707.707 INFO    ] 
inside get

[2026-08-25 08:00:02,711.711 INFO    ] 200
[2026-08-25 08:00:02,747.747 INFO    ] waiting for server
[2026-08-25 08:00:05,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:05
[2026-08-25 08:00:05,863.863 INFO    ] 
inside get

[2026-08-25 08:00:05,884.884 INFO    ] 200
[2026-08-25 08:00:05,889.889 INFO    ] waiting for server
[2026-08-25 08:00:08,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:08
[2026-08-25 08:00:08,986.986 INFO    ] 
inside get

[2026-08-25 08:00:08,988.988 INFO    ] 200
[2026-08-25 08:00:08,992.992 INFO    ] waiting for server
[2026-08-25 08:00:11,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:11
[2026-08-25 08:00:12,089.089 INFO    ] 
inside get

[2026-08-25 08:00:12,091.091 INFO    ] 200
[2026-08-25 08:00:12,095.095 INFO    ] waiting for server
[2026-08-25 08:00:15,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:15
[2026-08-25 08:00:15,197.197 INFO    ] 
inside get

[2026-08-25 08:00:15,200.200 INFO    ] 200
[2026-08-25 08:00:15,204.204 INFO    ] waiting for server
[2026-08-25 08:00:18,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:18
[2026-08-25 08:00:18,336.336 INFO    ] 
inside get

[2026-08-25 08:00:18,339.339 INFO    ] 200
[2026-08-25 08:00:18,343.343 INFO    ] waiting for server
[2026-08-25 08:00:21,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:21
[2026-08-25 08:00:21,427.427 INFO    ] 
inside get

[2026-08-25 08:00:21,429.429 INFO    ] 200
[2026-08-25 08:00:21,433.433 INFO    ] processing machine command
[2026-08-25 08:00:21,436.436 INFO    ] {"sub-action":"open_door_call","request_data":{"order_id":"TM03202401_refill_260825075349","door_id":[2],"txnType":"refill","door_open_init":true},"action_name":"Waiting for Machine to Open Door","action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]}},"active_doors":["1","2"]}
[2026-08-25 08:00:21,439.439 INFO    ] ####### REFIL OPEN DOOR ######## 
[2026-08-25 08:00:21,441.441 INFO    ] {'order_id': 'TM03202401_refill_260825075349', 'txnType': 'refill', 'door_id': [2], 'door_open_init': True}
[2026-08-25 08:00:21,844.844 INFO    ] 
inside post

[2026-08-25 08:00:21,847.847 INFO    ] 200
[2026-08-25 08:00:21,849.849 INFO    ] {"order_id":"9690322","vm_id":"1711555283773","user_id":"7019681368","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"status\":\"True\",\"SectionStatus\":{\"Note\":\"If any due amount, clear at https:\\\/\\\/go.tinymart.in\",\"SubHeader\":\"Please wait for invoice to generate\",\"UI_Header\":\"\",\"Header\":\" Order is complete \"},\"rstatus\":true,\"voiceNote\":\"\",\"delay\":100,\"SectionSKU\":{\"skus\":[],\"Header\":\"If you like us, tell others... else tell us\"},\"SectionMain\":{\"Header\":\"Door Closed\"},\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"7019681368\",\"command_for\":\"server\"},{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"7019681368\",\"otp\":\"8193\",\"command_for\":\"server\"},{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2,\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 1\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"status\":\"True\",\"SectionStatus\":{\"Note\":\"If any due amount, clear at https:\\\/\\\/go.tinymart.in\",\"SubHeader\":\"Please wait for invoice to generate\",\"UI_Header\":\"\",\"Header\":\" Order is complete \"},\"rstatus\":true,\"voiceNote\":\"\",\"delay\":100,\"SectionSKU\":{\"skus\":[],\"Header\":\"If you like us, tell others... else tell us\"},\"SectionMain\":{\"Header\":\"Door Closed\"},\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"active_doors\":[\"1\",\"2\"],\"request_data\":[],\"action_name\":\"Select Door to Open\",\"action\":\"open_door_process\",\"user\":\"machine\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"response_data\":{\"status\":\"True\",\"SectionStatus\":{\"Note\":\"If any due amount, clear at https:\\\/\\\/go.tinymart.in\",\"SubHeader\":\"Please wait for invoice to generate\",\"UI_Header\":\"\",\"Header\":\" Order is complete \"},\"rstatus\":true,\"voiceNote\":\"\",\"delay\":100,\"SectionSKU\":{\"skus\":[],\"Header\":\"If you like us, tell others... else tell us\"},\"SectionMain\":{\"Header\":\"Door Closed\"}},\"sub-action\":\"open_door_process\"}","command_for":"server","created_at":"2026-08-25 07:53:22","modified_at":"2026-08-25 08:00:21"}
[2026-08-25 08:00:21,853.853 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 08:00:21', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"active_doors":["1","2"],"request_data":[],"action_name":"Select Door to Open","action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"}},"sub-action":"open_door_process"}'}
[2026-08-25 08:00:21,857.857 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 08:00:21', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"active_doors":["1","2"],"request_data":[],"action_name":"Select Door to Open","action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"}},"sub-action":"open_door_process"}'}
[2026-08-25 08:00:21,860.860 INFO    ] in main while loops
[2026-08-25 08:00:24,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:24
[2026-08-25 08:00:24,972.972 INFO    ] 
inside get

[2026-08-25 08:00:24,975.975 INFO    ] 200
[2026-08-25 08:00:24,979.979 INFO    ] waiting for server
[2026-08-25 08:00:27,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:27
[2026-08-25 08:00:28,088.088 INFO    ] 
inside get

[2026-08-25 08:00:28,090.090 INFO    ] 200
[2026-08-25 08:00:28,094.094 INFO    ] waiting for server
[2026-08-25 08:00:31,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:00:31
[2026-08-25 08:00:31,177.177 INFO    ] 
inside get

[2026-08-25 08:00:31,180.180 INFO    ] 200
[2026-08-25 08:00:31,184.184 INFO    ] processing machine command
[2026-08-25 08:00:31,187.187 INFO    ] {"active_doors":["1","2"],"request_data":{"order_id":"TM03202401_refill_260825075349","door_id":[2],"txnType":"refill","door_open_init":true},"action_name":"Waiting for Machine to Open Door","action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\/\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"}},"sub-action":"open_door_call"}
[2026-08-25 08:00:31,189.189 INFO    ] ####### REFIL OPEN DOOR ######## 
[2026-08-25 08:00:31,192.192 INFO    ] {'order_id': 'TM03202401_refill_260825075349', 'txnType': 'refill', 'door_id': [2], 'door_open_init': True}
[2026-08-25 08:00:33,458.458 INFO    ] <__main__.ResponseWrapper object at 0x73df4b10>
[2026-08-25 08:00:37,343.343 INFO    ] <__main__.ResponseWrapper object at 0x73df46b0>
[2026-08-25 08:00:41,402.402 INFO    ] <__main__.ResponseWrapper object at 0x73ddda30>
[2026-08-25 08:00:45,398.398 INFO    ] <__main__.ResponseWrapper object at 0x73df4e10>
[2026-08-25 08:00:49,380.380 INFO    ] <__main__.ResponseWrapper object at 0x73df4cb0>
[2026-08-25 08:00:53,591.591 INFO    ] <__main__.ResponseWrapper object at 0x73ddda30>
[2026-08-25 08:00:57,089.089 INFO    ] 
inside post

[2026-08-25 08:00:57,091.091 INFO    ] 200
[2026-08-25 08:00:57,094.094 INFO    ] {"order_id":"9690322","vm_id":"1711555283773","user_id":"7019681368","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 2\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"7019681368\",\"command_for\":\"server\"},{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"7019681368\",\"otp\":\"8193\",\"command_for\":\"server\"},{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2,\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 1\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"status\":\"True\",\"SectionStatus\":{\"Note\":\"If any due amount, clear at https:\\\/\\\/go.tinymart.in\",\"SubHeader\":\"Please wait for invoice to generate\",\"UI_Header\":\"\",\"Header\":\" Order is complete \"},\"rstatus\":true,\"voiceNote\":\"\",\"delay\":100,\"SectionSKU\":{\"skus\":[],\"Header\":\"If you like us, tell others... else tell us\"},\"SectionMain\":{\"Header\":\"Door Closed\"},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 2\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"sub-action\":\"open_door_process\",\"request_data\":[],\"active_doors\":[\"1\",\"2\"],\"action\":\"open_door_process\",\"user\":\"machine\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"response_data\":{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 2\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]}},\"action_name\":\"Select Door to Open\"}","command_for":"server","created_at":"2026-08-25 07:53:22","modified_at":"2026-08-25 08:00:57"}
[2026-08-25 08:00:57,099.099 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 08:00:57', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"sub-action":"open_door_process","request_data":[],"active_doors":["1","2"],"action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]}},"action_name":"Select Door to Open"}'}
[2026-08-25 08:00:57,102.102 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 08:00:57', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"sub-action":"open_door_process","request_data":[],"active_doors":["1","2"],"action":"open_door_process","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]}},"action_name":"Select Door to Open"}'}
[2026-08-25 08:00:57,105.105 INFO    ] in main while loops
[2026-08-25 08:01:00,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:00
[2026-08-25 08:01:00,227.227 INFO    ] 
inside get

[2026-08-25 08:01:00,229.229 INFO    ] 200
[2026-08-25 08:01:00,234.234 INFO    ] waiting for server
[2026-08-25 08:01:03,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:03
[2026-08-25 08:01:03,319.319 INFO    ] 
inside get

[2026-08-25 08:01:03,322.322 INFO    ] 200
[2026-08-25 08:01:03,327.327 INFO    ] waiting for server
[2026-08-25 08:01:06,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:06
[2026-08-25 08:01:06,431.431 INFO    ] 
inside get

[2026-08-25 08:01:06,434.434 INFO    ] 200
[2026-08-25 08:01:06,442.442 INFO    ] waiting for server
[2026-08-25 08:01:09,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:09
[2026-08-25 08:01:09,529.529 INFO    ] 
inside get

[2026-08-25 08:01:09,532.532 INFO    ] 200
[2026-08-25 08:01:09,536.536 INFO    ] waiting for server
[2026-08-25 08:01:12,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:12
[2026-08-25 08:01:12,650.650 INFO    ] 
inside get

[2026-08-25 08:01:12,653.653 INFO    ] 200
[2026-08-25 08:01:12,657.657 INFO    ] waiting for server
[2026-08-25 08:01:15,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:15
[2026-08-25 08:01:15,766.766 INFO    ] 
inside get

[2026-08-25 08:01:15,769.769 INFO    ] 200
[2026-08-25 08:01:15,773.773 INFO    ] waiting for server
[2026-08-25 08:01:18,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:18
[2026-08-25 08:01:18,877.877 INFO    ] 
inside get

[2026-08-25 08:01:18,879.879 INFO    ] 200
[2026-08-25 08:01:18,883.883 INFO    ] waiting for server
[2026-08-25 08:01:21,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:21
[2026-08-25 08:01:21,988.988 INFO    ] 
inside get

[2026-08-25 08:01:21,991.991 INFO    ] 200
[2026-08-25 08:01:21,996.996 INFO    ] waiting for server
[2026-08-25 08:01:25,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:25
[2026-08-25 08:01:25,108.108 INFO    ] 
inside get

[2026-08-25 08:01:25,111.111 INFO    ] 200
[2026-08-25 08:01:25,115.115 INFO    ] waiting for server
[2026-08-25 08:01:28,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:28
[2026-08-25 08:01:28,226.226 INFO    ] 
inside get

[2026-08-25 08:01:28,229.229 INFO    ] 200
[2026-08-25 08:01:28,233.233 INFO    ] waiting for server
[2026-08-25 08:01:31,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:31
[2026-08-25 08:01:31,346.346 INFO    ] 
inside get

[2026-08-25 08:01:31,348.348 INFO    ] 200
[2026-08-25 08:01:31,352.352 INFO    ] waiting for server
[2026-08-25 08:01:34,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:34
[2026-08-25 08:01:34,467.467 INFO    ] 
inside get

[2026-08-25 08:01:34,469.469 INFO    ] 200
[2026-08-25 08:01:34,473.473 INFO    ] waiting for server
[2026-08-25 08:01:37,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:37
[2026-08-25 08:01:37,588.588 INFO    ] 
inside get

[2026-08-25 08:01:37,591.591 INFO    ] 200
[2026-08-25 08:01:37,595.595 INFO    ] waiting for server
[2026-08-25 08:01:40,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:40
[2026-08-25 08:01:40,677.677 INFO    ] 
inside get

[2026-08-25 08:01:40,680.680 INFO    ] 200
[2026-08-25 08:01:40,684.684 INFO    ] waiting for server
[2026-08-25 08:01:43,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:43
[2026-08-25 08:01:43,816.816 INFO    ] 
inside get

[2026-08-25 08:01:43,819.819 INFO    ] 200
[2026-08-25 08:01:43,823.823 INFO    ] waiting for server
[2026-08-25 08:01:46,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:46
[2026-08-25 08:01:46,945.945 INFO    ] 
inside get

[2026-08-25 08:01:46,948.948 INFO    ] 200
[2026-08-25 08:01:46,951.951 INFO    ] waiting for server
[2026-08-25 08:01:49,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:49
[2026-08-25 08:01:50,036.036 INFO    ] 
inside get

[2026-08-25 08:01:50,039.039 INFO    ] 200
[2026-08-25 08:01:50,043.043 INFO    ] waiting for server
[2026-08-25 08:01:53,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:53
[2026-08-25 08:01:53,132.132 INFO    ] 
inside get

[2026-08-25 08:01:53,134.134 INFO    ] 200
[2026-08-25 08:01:53,138.138 INFO    ] waiting for server
[2026-08-25 08:01:56,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:56
[2026-08-25 08:01:56,218.218 INFO    ] 
inside get

[2026-08-25 08:01:56,220.220 INFO    ] 200
[2026-08-25 08:01:56,224.224 INFO    ] waiting for server
[2026-08-25 08:01:59,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:01:59
[2026-08-25 08:01:59,330.330 INFO    ] 
inside get

[2026-08-25 08:01:59,333.333 INFO    ] 200
[2026-08-25 08:01:59,336.336 INFO    ] waiting for server
[2026-08-25 08:02:02,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:02
[2026-08-25 08:02:02,455.455 INFO    ] 
inside get

[2026-08-25 08:02:02,458.458 INFO    ] 200
[2026-08-25 08:02:02,462.462 INFO    ] waiting for server
[2026-08-25 08:02:05,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:05
[2026-08-25 08:02:05,553.553 INFO    ] 
inside get

[2026-08-25 08:02:05,555.555 INFO    ] 200
[2026-08-25 08:02:05,559.559 INFO    ] waiting for server
[2026-08-25 08:02:08,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:08
[2026-08-25 08:02:08,665.665 INFO    ] 
inside get

[2026-08-25 08:02:08,667.667 INFO    ] 200
[2026-08-25 08:02:08,671.671 INFO    ] waiting for server
[2026-08-25 08:02:11,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:11
[2026-08-25 08:02:11,793.793 INFO    ] 
inside get

[2026-08-25 08:02:11,796.796 INFO    ] 200
[2026-08-25 08:02:11,800.800 INFO    ] waiting for server
[2026-08-25 08:02:14,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:14
[2026-08-25 08:02:14,921.921 INFO    ] 
inside get

[2026-08-25 08:02:14,923.923 INFO    ] 200
[2026-08-25 08:02:14,927.927 INFO    ] waiting for server
[2026-08-25 08:02:17,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:17
[2026-08-25 08:02:18,090.090 INFO    ] 
inside get

[2026-08-25 08:02:18,093.093 INFO    ] 200
[2026-08-25 08:02:18,105.105 INFO    ] processing machine command
[2026-08-25 08:02:18,107.107 INFO    ] {"sub-action":"complete_refill","request_data":{"order_id":"TM03202401_refill_260825075349","door_id":[1],"txnType":"refill","door_open_init":false},"active_doors":["1","2"],"action":"complete_refill","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]}},"action_name":"Waiting for Machine to Complete Refill"}
[2026-08-25 08:02:18,110.110 INFO    ] {'order_id': 'TM03202401_refill_260825075349', 'txnType': 'refill', 'door_id': [1], 'door_open_init': False}
[2026-08-25 08:02:30,072.072 INFO    ] {"tray_mismatches": [{"sku_id": "4500732", "sku_name": "Maxvita Tomato Potato Chips 40gm", "quantity_on_tray": "4", "quantity_in_db": "0", "tray_id": "11"}, {"sku_id": "4500713", "sku_name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "quantity_on_tray": "6", "quantity_in_db": "6", "tray_id": "12"}, {"sku_id": "4500665", "sku_name": "Farmely Peri Peri Makhana 14gm", "quantity_on_tray": "6", "quantity_in_db": "6", "tray_id": "13"}, {"sku_id": "4500725", "sku_name": "Maxvita Coconut Cookies 40gm", "quantity_on_tray": "17", "quantity_in_db": "12", "tray_id": "14"}, {"sku_id": "4500722", "sku_name": "MaxVita Rice Kodubale 30gm", "quantity_on_tray": "9", "quantity_in_db": "6", "tray_id": "15"}, {"sku_id": "4500624", "sku_name": "Madmix  Aloo Sev Millet Bhujia 27gm", "quantity_on_tray": "7", "quantity_in_db": "4", "tray_id": "16"}, {"sku_id": "4500564", "sku_name": "Wholy Fudgy Cakes Red Velvet 32g", "quantity_on_tray": "8", "quantity_in_db": "0", "tray_id": "17"}, {"sku_id": "4500723", "sku_name": "MaxVita Moong daal 25gm", "quantity_on_tray": "14", "quantity_in_db": "15", "tray_id": "18"}, {"sku_id": "4500726", "sku_name": "MaxVita Crunchy Indian Mixture 30gm", "quantity_on_tray": "9", "quantity_in_db": "12", "tray_id": "19"}, {"sku_id": "4500667", "sku_name": "Farmely Classic date Bites 20gm", "quantity_on_tray": "10", "quantity_in_db": "0", "tray_id": "20"}, {"sku_id": "4500730", "sku_name": "Maxvita Khara Boondi 28gm", "quantity_on_tray": "9", "quantity_in_db": "10", "tray_id": "21"}, {"sku_id": "4500605", "sku_name": "Ongibytes Garlic Muruku ", "quantity_on_tray": "7", "quantity_in_db": "0", "tray_id": "22"}, {"sku_id": "4500731", "sku_name": "MaxVita Butter Elaichi cookies 46g", "quantity_on_tray": "15", "quantity_in_db": "15", "tray_id": "23"}, {"sku_id": "4500644", "sku_name": "Ongibytes Pepper Sev 35gm", "quantity_on_tray": "8", "quantity_in_db": "6", "tray_id": "24"}, {"sku_id": "4500722", "sku_name": "MaxVita Rice Kodubale 30gm", "quantity_on_tray": "9", "quantity_in_db": "5", "tray_id": "25"}, {"sku_id": "4500725", "sku_name": "Maxvita Coconut Cookies 40gm", "quantity_on_tray": "23", "quantity_in_db": "12", "tray_id": "26"}, {"sku_id": "4500710", "sku_name": "MaxVita Premium crunch Rusk 51gm", "quantity_on_tray": "11", "quantity_in_db": "0", "tray_id": "27"}, {"sku_id": "177747", "sku_name": "Raw Coconut Water, 200ml", "quantity_on_tray": "6", "quantity_in_db": "0", "tray_id": "31"}, {"sku_id": "186001", "sku_name": "Nestle Nescafe Chilled Latte Coffee Milk ", "quantity_on_tray": "6", "quantity_in_db": "0", "tray_id": "32"}, {"sku_id": "186078", "sku_name": "Paper boat Aam Panna 150ml", "quantity_on_tray": "4", "quantity_in_db": "0", "tray_id": "33"}, {"sku_id": "4500407", "sku_name": "Paper boat Alphonso Mango 160ml", "quantity_on_tray": "5", "quantity_in_db": "2", "tray_id": "34"}, {"sku_id": "112220", "sku_name": "Snickers Chocolate Bar 22g", "quantity_on_tray": "19", "quantity_in_db": "20", "tray_id": "35"}, {"sku_id": "4500702", "sku_name": "Raw Masala Shikanji 200ml", "quantity_on_tray": "4", "quantity_in_db": "0", "tray_id": "36"}, {"sku_id": "186001", "sku_name": "Nestle Nescafe Chilled Latte Coffee Milk ", "quantity_on_tray": "5", "quantity_in_db": "0", "tray_id": "37"}, {"sku_id": "4500651", "sku_name": "Sunfeast Breakfast protein Smoothie with Oats", "quantity_on_tray": "4", "quantity_in_db": "3", "tray_id": "38"}, {"sku_id": "166327", "sku_name": "Epigamia Chocolate Milkshake 200g", "quantity_on_tray": "5", "quantity_in_db": "3", "tray_id": "39"}, {"sku_id": "4500656", "sku_name": "BRU Cold Coffee Classic 200ml", "quantity_on_tray": "3", "quantity_in_db": "0", "tray_id": "40"}, {"sku_id": "4500499", "sku_name": "Heritage A1 Spiced Butter Milk180ml", "quantity_on_tray": "7", "quantity_in_db": "0", "tray_id": "41"}, {"sku_id": "186059", "sku_name": "Pepsi ZeroSugar  300ml", "quantity_on_tray": "5", "quantity_in_db": "0", "tray_id": "42"}, {"sku_id": "185994", "sku_name": "Nescafe Choco Mocha Cold Coffee 180ml", "quantity_on_tray": "6", "quantity_in_db": "2", "tray_id": "43"}, {"sku_id": "8355", "sku_name": "Coca Cola Can,  300ml", "quantity_on_tray": "6", "quantity_in_db": "6", "tray_id": "44"}, {"sku_id": "4500643", "sku_name": "Cavins Belgian chocolate 170ml spl pack", "quantity_on_tray": "6", "quantity_in_db": "0", "tray_id": "45"}, {"sku_id": "4500412", "sku_name": "Paper Boat Chilli Guava 150ml", "quantity_on_tray": "4", "quantity_in_db": "0", "tray_id": "46"}], "message": "Tray mismatches found.", "success": true}
[2026-08-25 08:02:30,077.077 INFO    ] {'success': True, 'message': 'Tray mismatches found.', 'tray_mismatches': [{'sku_id': '4500732', 'tray_id': '11', 'quantity_on_tray': '4', 'quantity_in_db': '0', 'sku_name': 'Maxvita Tomato Potato Chips 40gm'}, {'sku_id': '4500713', 'tray_id': '12', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'sku_name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}, {'sku_id': '4500665', 'tray_id': '13', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'sku_name': 'Farmely Peri Peri Makhana 14gm'}, {'sku_id': '4500725', 'tray_id': '14', 'quantity_on_tray': '17', 'quantity_in_db': '12', 'sku_name': 'Maxvita Coconut Cookies 40gm'}, {'sku_id': '4500722', 'tray_id': '15', 'quantity_on_tray': '9', 'quantity_in_db': '6', 'sku_name': 'MaxVita Rice Kodubale 30gm'}, {'sku_id': '4500624', 'tray_id': '16', 'quantity_on_tray': '7', 'quantity_in_db': '4', 'sku_name': 'Madmix  Aloo Sev Millet Bhujia 27gm'}, {'sku_id': '4500564', 'tray_id': '17', 'quantity_on_tray': '8', 'quantity_in_db': '0', 'sku_name': 'Wholy Fudgy Cakes Red Velvet 32g'}, {'sku_id': '4500723', 'tray_id': '18', 'quantity_on_tray': '14', 'quantity_in_db': '15', 'sku_name': 'MaxVita Moong daal 25gm'}, {'sku_id': '4500726', 'tray_id': '19', 'quantity_on_tray': '9', 'quantity_in_db': '12', 'sku_name': 'MaxVita Crunchy Indian Mixture 30gm'}, {'sku_id': '4500667', 'tray_id': '20', 'quantity_on_tray': '10', 'quantity_in_db': '0', 'sku_name': 'Farmely Classic date Bites 20gm'}, {'sku_id': '4500730', 'tray_id': '21', 'quantity_on_tray': '9', 'quantity_in_db': '10', 'sku_name': 'Maxvita Khara Boondi 28gm'}, {'sku_id': '4500605', 'tray_id': '22', 'quantity_on_tray': '7', 'quantity_in_db': '0', 'sku_name': 'Ongibytes Garlic Muruku '}, {'sku_id': '4500731', 'tray_id': '23', 'quantity_on_tray': '15', 'quantity_in_db': '15', 'sku_name': 'MaxVita Butter Elaichi cookies 46g'}, {'sku_id': '4500644', 'tray_id': '24', 'quantity_on_tray': '8', 'quantity_in_db': '6', 'sku_name': 'Ongibytes Pepper Sev 35gm'}, {'sku_id': '4500722', 'tray_id': '25', 'quantity_on_tray': '9', 'quantity_in_db': '5', 'sku_name': 'MaxVita Rice Kodubale 30gm'}, {'sku_id': '4500725', 'tray_id': '26', 'quantity_on_tray': '23', 'quantity_in_db': '12', 'sku_name': 'Maxvita Coconut Cookies 40gm'}, {'sku_id': '4500710', 'tray_id': '27', 'quantity_on_tray': '11', 'quantity_in_db': '0', 'sku_name': 'MaxVita Premium crunch Rusk 51gm'}, {'sku_id': '177747', 'tray_id': '31', 'quantity_on_tray': '6', 'quantity_in_db': '0', 'sku_name': 'Raw Coconut Water, 200ml'}, {'sku_id': '186001', 'tray_id': '32', 'quantity_on_tray': '6', 'quantity_in_db': '0', 'sku_name': 'Nestle Nescafe Chilled Latte Coffee Milk '}, {'sku_id': '186078', 'tray_id': '33', 'quantity_on_tray': '4', 'quantity_in_db': '0', 'sku_name': 'Paper boat Aam Panna 150ml'}, {'sku_id': '4500407', 'tray_id': '34', 'quantity_on_tray': '5', 'quantity_in_db': '2', 'sku_name': 'Paper boat Alphonso Mango 160ml'}, {'sku_id': '112220', 'tray_id': '35', 'quantity_on_tray': '19', 'quantity_in_db': '20', 'sku_name': 'Snickers Chocolate Bar 22g'}, {'sku_id': '4500702', 'tray_id': '36', 'quantity_on_tray': '4', 'quantity_in_db': '0', 'sku_name': 'Raw Masala Shikanji 200ml'}, {'sku_id': '186001', 'tray_id': '37', 'quantity_on_tray': '5', 'quantity_in_db': '0', 'sku_name': 'Nestle Nescafe Chilled Latte Coffee Milk '}, {'sku_id': '4500651', 'tray_id': '38', 'quantity_on_tray': '4', 'quantity_in_db': '3', 'sku_name': 'Sunfeast Breakfast protein Smoothie with Oats'}, {'sku_id': '166327', 'tray_id': '39', 'quantity_on_tray': '5', 'quantity_in_db': '3', 'sku_name': 'Epigamia Chocolate Milkshake 200g'}, {'sku_id': '4500656', 'tray_id': '40', 'quantity_on_tray': '3', 'quantity_in_db': '0', 'sku_name': 'BRU Cold Coffee Classic 200ml'}, {'sku_id': '4500499', 'tray_id': '41', 'quantity_on_tray': '7', 'quantity_in_db': '0', 'sku_name': 'Heritage A1 Spiced Butter Milk180ml'}, {'sku_id': '186059', 'tray_id': '42', 'quantity_on_tray': '5', 'quantity_in_db': '0', 'sku_name': 'Pepsi ZeroSugar  300ml'}, {'sku_id': '185994', 'tray_id': '43', 'quantity_on_tray': '6', 'quantity_in_db': '2', 'sku_name': 'Nescafe Choco Mocha Cold Coffee 180ml'}, {'sku_id': '8355', 'tray_id': '44', 'quantity_on_tray': '6', 'quantity_in_db': '6', 'sku_name': 'Coca Cola Can,  300ml'}, {'sku_id': '4500643', 'tray_id': '45', 'quantity_on_tray': '6', 'quantity_in_db': '0', 'sku_name': 'Cavins Belgian chocolate 170ml spl pack'}, {'sku_id': '4500412', 'tray_id': '46', 'quantity_on_tray': '4', 'quantity_in_db': '0', 'sku_name': 'Paper Boat Chilli Guava 150ml'}]}
[2026-08-25 08:02:35,690.690 INFO    ] 
inside post

[2026-08-25 08:02:35,692.692 INFO    ] 200
[2026-08-25 08:02:35,695.695 INFO    ] {"order_id":"9690322","vm_id":"1711555283773","user_id":"7019681368","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"success\":true,\"message\":\"Tray mismatches found.\",\"tray_mismatches\":[{\"sku_id\":\"4500732\",\"tray_id\":\"11\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Maxvita Tomato Potato Chips 40gm\"},{\"sku_id\":\"4500713\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"sku_id\":\"4500665\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Farmely Peri Peri Makhana 14gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"14\",\"quantity_on_tray\":\"17\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500624\",\"tray_id\":\"16\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"4\",\"sku_name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\"},{\"sku_id\":\"4500564\",\"tray_id\":\"17\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"0\",\"sku_name\":\"Wholy Fudgy Cakes Red Velvet 32g\"},{\"sku_id\":\"4500723\",\"tray_id\":\"18\",\"quantity_on_tray\":\"14\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Moong daal 25gm\"},{\"sku_id\":\"4500726\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"12\",\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\"},{\"sku_id\":\"4500667\",\"tray_id\":\"20\",\"quantity_on_tray\":\"10\",\"quantity_in_db\":\"0\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"sku_id\":\"4500730\",\"tray_id\":\"21\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"10\",\"sku_name\":\"Maxvita Khara Boondi 28gm\"},{\"sku_id\":\"4500605\",\"tray_id\":\"22\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"sku_id\":\"4500731\",\"tray_id\":\"23\",\"quantity_on_tray\":\"15\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Butter Elaichi cookies 46g\"},{\"sku_id\":\"4500644\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"6\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"25\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"5\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"26\",\"quantity_on_tray\":\"23\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500710\",\"tray_id\":\"27\",\"quantity_on_tray\":\"11\",\"quantity_in_db\":\"0\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"sku_id\":\"177747\",\"tray_id\":\"31\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Coconut Water, 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"32\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"186078\",\"tray_id\":\"33\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"sku_id\":\"4500407\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"2\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"sku_id\":\"112220\",\"tray_id\":\"35\",\"quantity_on_tray\":\"19\",\"quantity_in_db\":\"20\",\"sku_name\":\"Snickers Chocolate Bar 22g\"},{\"sku_id\":\"4500702\",\"tray_id\":\"36\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"4500651\",\"tray_id\":\"38\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"3\",\"sku_name\":\"Sunfeast Breakfast protein Smoothie with Oats\"},{\"sku_id\":\"166327\",\"tray_id\":\"39\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"3\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"sku_id\":\"4500656\",\"tray_id\":\"40\",\"quantity_on_tray\":\"3\",\"quantity_in_db\":\"0\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"sku_id\":\"4500499\",\"tray_id\":\"41\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"sku_id\":\"186059\",\"tray_id\":\"42\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"sku_id\":\"185994\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"2\",\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\"},{\"sku_id\":\"8355\",\"tray_id\":\"44\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Coca Cola Can,  300ml\"},{\"sku_id\":\"4500643\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\"},{\"sku_id\":\"4500412\",\"tray_id\":\"46\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper Boat Chilli Guava 150ml\"}],\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"7019681368\",\"command_for\":\"server\"},{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"7019681368\",\"otp\":\"8193\",\"command_for\":\"server\"},{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2,\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 1\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"status\":\"True\",\"SectionStatus\":{\"Note\":\"If any due amount, clear at https:\\\/\\\/go.tinymart.in\",\"SubHeader\":\"Please wait for invoice to generate\",\"UI_Header\":\"\",\"Header\":\" Order is complete \"},\"rstatus\":true,\"voiceNote\":\"\",\"delay\":100,\"SectionSKU\":{\"skus\":[],\"Header\":\"If you like us, tell others... else tell us\"},\"SectionMain\":{\"Header\":\"Door Closed\"},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 2\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"},{\"action\":\"complete_refill\",\"trays\":{\"11\":{\"tray_id\":\"11\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500732-\",\"org_sku\":\"4500732\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500732-1004.png\",\"name\":\"Maxvita Tomato Potato Chips 40gm\",\"mrp\":\"20\",\"weight\":\"45\",\"qty\":\"\",\"id\":\"11\",\"p_sku\":\"4500732\",\"p_qty\":\"\",\"p_return_sku\":\"4500712\",\"p_return_qty\":\"0\",\"return_sku\":\"4500712\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500712-3453.png\",\"l_sku\":\"4500712\",\"l_qty\":\"0\"},\"12\":{\"tray_id\":\"12\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500713-6\",\"org_sku\":\"4500713\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500713-9506.jpg\",\"name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\",\"mrp\":\"20\",\"weight\":\"47\",\"qty\":\"6\",\"id\":\"12\",\"p_sku\":\"4500713\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500713\",\"l_qty\":\"0\"},\"13\":{\"tray_id\":\"13\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500665-6\",\"org_sku\":\"4500665\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500665-172.jpg\",\"name\":\"Farmely Peri Peri Makhana 14gm\",\"mrp\":\"30\",\"weight\":\"22\",\"qty\":\"6\",\"id\":\"13\",\"p_sku\":\"4500665\",\"p_qty\":\"6\",\"p_return_sku\":\"4500689\",\"p_return_qty\":\"2\",\"return_sku\":\"4500689\",\"return_qty\":\"2\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500689-1679.jpg\",\"l_sku\":\"4500689\",\"l_qty\":\"2\"},\"14\":{\"tray_id\":\"14\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500725-12\",\"org_sku\":\"4500725\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500725-5961.png\",\"name\":\"Maxvita Coconut Cookies 40gm\",\"mrp\":\"10\",\"weight\":\"44\",\"qty\":\"12\",\"id\":\"14\",\"p_sku\":\"4500725\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500725\",\"l_qty\":\"3\"},\"15\":{\"tray_id\":\"15\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500722-6\",\"org_sku\":\"4500722\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"name\":\"MaxVita Rice Kodubale 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"6\",\"id\":\"15\",\"p_sku\":\"4500722\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500722\",\"l_qty\":\"3\"},\"16\":{\"tray_id\":\"16\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500624-4\",\"org_sku\":\"4500624\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500624-8762.webp\",\"name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\",\"mrp\":\"20\",\"weight\":\"30\",\"qty\":\"4\",\"id\":\"16\",\"p_sku\":\"4500624\",\"p_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500624\",\"l_qty\":\"3\"},\"17\":{\"id\":\"17\",\"tray_id\":\"17\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500564-6115.jpg\",\"name\":\"Wholy Fudgy Cakes Red Velvet 32g\",\"mrp\":\"35\",\"weight\":\"34\",\"qty\":0,\"org_sku\":\"4500564\",\"p_sku\":\"4500564\",\"p_qty\":0,\"l_sku\":\"4500564\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500564-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"18\":{\"tray_id\":\"18\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500723-15\",\"org_sku\":\"4500723\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500723-3888.png\",\"name\":\"MaxVita Moong daal 25gm\",\"mrp\":\"10\",\"weight\":\"28\",\"qty\":\"15\",\"id\":\"18\",\"p_sku\":\"4500723\",\"p_qty\":\"15\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500723\",\"l_qty\":\"0\"},\"19\":{\"tray_id\":\"19\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500726-12\",\"org_sku\":\"4500726\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500726-818.jpeg\",\"name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"12\",\"id\":\"19\",\"p_sku\":\"4500726\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500726\",\"l_qty\":\"0\"},\"20\":{\"id\":\"20\",\"tray_id\":\"20\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500667-4339.webp\",\"name\":\"Farmely Classic date Bites 20gm\",\"mrp\":\"40\",\"weight\":\"23\",\"qty\":0,\"org_sku\":\"4500667\",\"p_sku\":\"4500667\",\"p_qty\":0,\"l_sku\":\"4500667\",\"l_qty\":\"10\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500667-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"21\":{\"tray_id\":\"21\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500730-10\",\"org_sku\":\"4500730\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500730-5277.png\",\"name\":\"Maxvita Khara Boondi 28gm\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":\"10\",\"id\":\"21\",\"p_sku\":\"4500730\",\"p_qty\":\"10\",\"p_return_sku\":\"4500648\",\"p_return_qty\":\"3\",\"return_sku\":\"4500648\",\"return_qty\":\"3\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500648-25.webp\",\"l_sku\":\"4500648\",\"l_qty\":\"3\"},\"22\":{\"id\":\"22\",\"tray_id\":\"22\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"name\":\"Ongibytes Garlic Muruku \",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":0,\"org_sku\":\"4500605\",\"p_sku\":\"4500605\",\"p_qty\":0,\"l_sku\":\"4500605\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500605-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"23\":{\"tray_id\":\"23\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500731-15\",\"org_sku\":\"4500731\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500731-8867.png\",\"name\":\"MaxVita Butter Elaichi cookies 46g\",\"mrp\":\"10\",\"weight\":\"47\",\"qty\":\"15\",\"id\":\"23\",\"p_sku\":\"4500731\",\"p_qty\":\"15\",\"p_return_sku\":\"4500681\",\"p_return_qty\":\"0\",\"return_sku\":\"4500681\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500681-9948.webp\",\"l_sku\":\"4500681\",\"l_qty\":\"0\"},\"24\":{\"tray_id\":\"24\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500644-6\",\"org_sku\":\"4500644\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500644-3697.png\",\"name\":\"Ongibytes Pepper Sev 35gm\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"6\",\"id\":\"24\",\"p_sku\":\"4500644\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500644\",\"l_qty\":\"2\"},\"25\":{\"tray_id\":\"25\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500722-5\",\"org_sku\":\"4500722\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"name\":\"MaxVita Rice Kodubale 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"5\",\"id\":\"25\",\"p_sku\":\"4500722\",\"p_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500722\",\"l_qty\":\"4\"},\"26\":{\"tray_id\":\"26\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500725-12\",\"org_sku\":\"4500725\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500725-5961.png\",\"name\":\"Maxvita Coconut Cookies 40gm\",\"mrp\":\"10\",\"weight\":\"44\",\"qty\":\"12\",\"id\":\"26\",\"p_sku\":\"4500725\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500725\",\"l_qty\":\"14\"},\"27\":{\"id\":\"27\",\"tray_id\":\"27\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500710-1463.png\",\"name\":\"MaxVita Premium crunch Rusk 51gm\",\"mrp\":\"10\",\"weight\":\"55\",\"qty\":0,\"org_sku\":\"4500710\",\"p_sku\":\"4500710\",\"p_qty\":0,\"l_sku\":\"4500710\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500710-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"31\":{\"id\":\"31\",\"tray_id\":\"31\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/177747-2139.png\",\"name\":\"Raw Coconut Water, 200ml\",\"mrp\":\"65\",\"weight\":\"223\",\"qty\":0,\"org_sku\":\"177747\",\"p_sku\":\"177747\",\"p_qty\":0,\"l_sku\":\"177747\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"177747-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"32\":{\"id\":\"32\",\"tray_id\":\"32\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186001-2099.webp\",\"name\":\"Nestle Nescafe Chilled Latte Coffee Milk \",\"mrp\":\"50\",\"weight\":\"202\",\"qty\":0,\"org_sku\":\"186001\",\"p_sku\":\"186001\",\"p_qty\":0,\"l_sku\":\"186001\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186001-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"33\":{\"id\":\"33\",\"tray_id\":\"33\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186078-2883.png\",\"name\":\"Paper boat Aam Panna 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"186078\",\"p_sku\":\"186078\",\"p_qty\":0,\"l_sku\":\"186078\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186078-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"34\":{\"tray_id\":\"34\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500407-2\",\"org_sku\":\"4500407\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500407-2060.jpg\",\"name\":\"Paper boat Alphonso Mango 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":\"2\",\"id\":\"34\",\"p_sku\":\"4500407\",\"p_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500407\",\"l_qty\":\"3\"},\"35\":{\"tray_id\":\"35\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"112220-20\",\"org_sku\":\"112220\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/112220-2513.jpg\",\"name\":\"Snickers Chocolate Bar 22g\",\"mrp\":\"20\",\"weight\":\"24\",\"qty\":\"20\",\"id\":\"35\",\"p_sku\":\"112220\",\"p_qty\":\"20\",\"p_return_sku\":\"185993\",\"p_return_qty\":\"0\",\"return_sku\":\"185993\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185993-3509.webp\",\"l_sku\":\"185993\",\"l_qty\":\"0\"},\"36\":{\"id\":\"36\",\"tray_id\":\"36\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500702-1302.webp\",\"name\":\"Raw Masala Shikanji 200ml\",\"mrp\":\"30\",\"weight\":\"222\",\"qty\":0,\"org_sku\":\"4500702\",\"p_sku\":\"4500702\",\"p_qty\":0,\"l_sku\":\"4500702\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500702-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"37\":{\"id\":\"37\",\"tray_id\":\"37\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186001-2099.webp\",\"name\":\"Nestle Nescafe Chilled Latte Coffee Milk \",\"mrp\":\"50\",\"weight\":\"202\",\"qty\":0,\"org_sku\":\"186001\",\"p_sku\":\"186001\",\"p_qty\":0,\"l_sku\":\"186001\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186001-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"38\":{\"tray_id\":\"38\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500651-3\",\"org_sku\":\"4500651\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500651-8004.webp\",\"name\":\"Sunfeast Breakfast protein Smoothie with Oats\",\"mrp\":\"45\",\"weight\":\"188\",\"qty\":\"3\",\"id\":\"38\",\"p_sku\":\"4500651\",\"p_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500651\",\"l_qty\":\"1\"},\"39\":{\"tray_id\":\"39\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"166327-3\",\"org_sku\":\"166327\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/166327-5644.jpg\",\"name\":\"Epigamia Chocolate Milkshake 200g\",\"mrp\":\"38\",\"weight\":\"210\",\"qty\":\"3\",\"id\":\"39\",\"p_sku\":\"166327\",\"p_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"166327\",\"l_qty\":\"3\"},\"40\":{\"id\":\"40\",\"tray_id\":\"40\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500656-2520.webp\",\"name\":\"BRU Cold Coffee Classic 200ml\",\"mrp\":\"60\",\"weight\":\"225\",\"qty\":0,\"org_sku\":\"4500656\",\"p_sku\":\"4500656\",\"p_qty\":0,\"l_sku\":\"4500656\",\"l_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500656-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"41\":{\"id\":\"41\",\"tray_id\":\"41\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500499-5719.webp\",\"name\":\"Heritage A1 Spiced Butter Milk180ml\",\"mrp\":\"20\",\"weight\":\"192\",\"qty\":0,\"org_sku\":\"4500499\",\"p_sku\":\"4500499\",\"p_qty\":0,\"l_sku\":\"4500499\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500499-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"42\":{\"id\":\"42\",\"tray_id\":\"42\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186059-5330.png\",\"name\":\"Pepsi ZeroSugar  300ml\",\"mrp\":\"40\",\"weight\":\"310\",\"qty\":0,\"org_sku\":\"186059\",\"p_sku\":\"186059\",\"p_qty\":0,\"l_sku\":\"186059\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186059-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"43\":{\"tray_id\":\"43\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"185994-2\",\"org_sku\":\"185994\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185994-2558.webp\",\"name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"mrp\":\"45\",\"weight\":\"200\",\"qty\":\"2\",\"id\":\"43\",\"p_sku\":\"185994\",\"p_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"185994\",\"l_qty\":\"4\"},\"44\":{\"tray_id\":\"44\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"8355-6\",\"org_sku\":\"8355\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/8355-9565.jpeg\",\"name\":\"Coca Cola Can,  300ml\",\"mrp\":\"40\",\"weight\":\"325\",\"qty\":\"6\",\"id\":\"44\",\"p_sku\":\"8355\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"8355\",\"l_qty\":\"1\"},\"45\":{\"id\":\"45\",\"tray_id\":\"45\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500643-6170.webp\",\"name\":\"Cavins Belgian chocolate 170ml spl pack\",\"mrp\":\"40\",\"weight\":\"191\",\"qty\":0,\"org_sku\":\"4500643\",\"p_sku\":\"4500643\",\"p_qty\":0,\"l_sku\":\"4500643\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500643-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"46\":{\"id\":\"46\",\"tray_id\":\"46\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500412-3733.jpg\",\"name\":\"Paper Boat Chilli Guava 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"4500412\",\"p_sku\":\"4500412\",\"p_qty\":0,\"l_sku\":\"4500412\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500412-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"}},\"command_for\":\"server\"},{\"success\":true,\"message\":\"Tray mismatches found.\",\"tray_mismatches\":[{\"sku_id\":\"4500732\",\"tray_id\":\"11\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Maxvita Tomato Potato Chips 40gm\"},{\"sku_id\":\"4500713\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"sku_id\":\"4500665\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Farmely Peri Peri Makhana 14gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"14\",\"quantity_on_tray\":\"17\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500624\",\"tray_id\":\"16\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"4\",\"sku_name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\"},{\"sku_id\":\"4500564\",\"tray_id\":\"17\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"0\",\"sku_name\":\"Wholy Fudgy Cakes Red Velvet 32g\"},{\"sku_id\":\"4500723\",\"tray_id\":\"18\",\"quantity_on_tray\":\"14\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Moong daal 25gm\"},{\"sku_id\":\"4500726\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"12\",\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\"},{\"sku_id\":\"4500667\",\"tray_id\":\"20\",\"quantity_on_tray\":\"10\",\"quantity_in_db\":\"0\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"sku_id\":\"4500730\",\"tray_id\":\"21\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"10\",\"sku_name\":\"Maxvita Khara Boondi 28gm\"},{\"sku_id\":\"4500605\",\"tray_id\":\"22\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"sku_id\":\"4500731\",\"tray_id\":\"23\",\"quantity_on_tray\":\"15\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Butter Elaichi cookies 46g\"},{\"sku_id\":\"4500644\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"6\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"25\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"5\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"26\",\"quantity_on_tray\":\"23\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500710\",\"tray_id\":\"27\",\"quantity_on_tray\":\"11\",\"quantity_in_db\":\"0\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"sku_id\":\"177747\",\"tray_id\":\"31\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Coconut Water, 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"32\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"186078\",\"tray_id\":\"33\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"sku_id\":\"4500407\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"2\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"sku_id\":\"112220\",\"tray_id\":\"35\",\"quantity_on_tray\":\"19\",\"quantity_in_db\":\"20\",\"sku_name\":\"Snickers Chocolate Bar 22g\"},{\"sku_id\":\"4500702\",\"tray_id\":\"36\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"4500651\",\"tray_id\":\"38\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"3\",\"sku_name\":\"Sunfeast Breakfast protein Smoothie with Oats\"},{\"sku_id\":\"166327\",\"tray_id\":\"39\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"3\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"sku_id\":\"4500656\",\"tray_id\":\"40\",\"quantity_on_tray\":\"3\",\"quantity_in_db\":\"0\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"sku_id\":\"4500499\",\"tray_id\":\"41\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"sku_id\":\"186059\",\"tray_id\":\"42\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"sku_id\":\"185994\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"2\",\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\"},{\"sku_id\":\"8355\",\"tray_id\":\"44\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Coca Cola Can,  300ml\"},{\"sku_id\":\"4500643\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\"},{\"sku_id\":\"4500412\",\"tray_id\":\"46\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper Boat Chilli Guava 150ml\"}],\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"action_name\":\"verify refill Qty\",\"request_data\":{\"success\":true,\"message\":\"Tray mismatches found.\",\"tray_mismatches\":[{\"sku_id\":\"4500732\",\"tray_id\":\"11\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Maxvita Tomato Potato Chips 40gm\"},{\"sku_id\":\"4500713\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"sku_id\":\"4500665\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Farmely Peri Peri Makhana 14gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"14\",\"quantity_on_tray\":\"17\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500624\",\"tray_id\":\"16\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"4\",\"sku_name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\"},{\"sku_id\":\"4500564\",\"tray_id\":\"17\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"0\",\"sku_name\":\"Wholy Fudgy Cakes Red Velvet 32g\"},{\"sku_id\":\"4500723\",\"tray_id\":\"18\",\"quantity_on_tray\":\"14\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Moong daal 25gm\"},{\"sku_id\":\"4500726\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"12\",\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\"},{\"sku_id\":\"4500667\",\"tray_id\":\"20\",\"quantity_on_tray\":\"10\",\"quantity_in_db\":\"0\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"sku_id\":\"4500730\",\"tray_id\":\"21\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"10\",\"sku_name\":\"Maxvita Khara Boondi 28gm\"},{\"sku_id\":\"4500605\",\"tray_id\":\"22\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"sku_id\":\"4500731\",\"tray_id\":\"23\",\"quantity_on_tray\":\"15\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Butter Elaichi cookies 46g\"},{\"sku_id\":\"4500644\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"6\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"25\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"5\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"26\",\"quantity_on_tray\":\"23\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500710\",\"tray_id\":\"27\",\"quantity_on_tray\":\"11\",\"quantity_in_db\":\"0\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"sku_id\":\"177747\",\"tray_id\":\"31\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Coconut Water, 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"32\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"186078\",\"tray_id\":\"33\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"sku_id\":\"4500407\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"2\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"sku_id\":\"112220\",\"tray_id\":\"35\",\"quantity_on_tray\":\"19\",\"quantity_in_db\":\"20\",\"sku_name\":\"Snickers Chocolate Bar 22g\"},{\"sku_id\":\"4500702\",\"tray_id\":\"36\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"4500651\",\"tray_id\":\"38\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"3\",\"sku_name\":\"Sunfeast Breakfast protein Smoothie with Oats\"},{\"sku_id\":\"166327\",\"tray_id\":\"39\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"3\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"sku_id\":\"4500656\",\"tray_id\":\"40\",\"quantity_on_tray\":\"3\",\"quantity_in_db\":\"0\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"sku_id\":\"4500499\",\"tray_id\":\"41\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"sku_id\":\"186059\",\"tray_id\":\"42\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"sku_id\":\"185994\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"2\",\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\"},{\"sku_id\":\"8355\",\"tray_id\":\"44\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Coca Cola Can,  300ml\"},{\"sku_id\":\"4500643\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\"},{\"sku_id\":\"4500412\",\"tray_id\":\"46\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper Boat Chilli Guava 150ml\"}]},\"active_doors\":[\"1\",\"2\"],\"action\":\"open_door_process\",\"user\":\"server\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"response_data\":{\"success\":true,\"message\":\"Tray mismatches found.\",\"tray_mismatches\":[{\"sku_id\":\"4500732\",\"tray_id\":\"11\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Maxvita Tomato Potato Chips 40gm\"},{\"sku_id\":\"4500713\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"sku_id\":\"4500665\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Farmely Peri Peri Makhana 14gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"14\",\"quantity_on_tray\":\"17\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500624\",\"tray_id\":\"16\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"4\",\"sku_name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\"},{\"sku_id\":\"4500564\",\"tray_id\":\"17\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"0\",\"sku_name\":\"Wholy Fudgy Cakes Red Velvet 32g\"},{\"sku_id\":\"4500723\",\"tray_id\":\"18\",\"quantity_on_tray\":\"14\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Moong daal 25gm\"},{\"sku_id\":\"4500726\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"12\",\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\"},{\"sku_id\":\"4500667\",\"tray_id\":\"20\",\"quantity_on_tray\":\"10\",\"quantity_in_db\":\"0\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"sku_id\":\"4500730\",\"tray_id\":\"21\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"10\",\"sku_name\":\"Maxvita Khara Boondi 28gm\"},{\"sku_id\":\"4500605\",\"tray_id\":\"22\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"sku_id\":\"4500731\",\"tray_id\":\"23\",\"quantity_on_tray\":\"15\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Butter Elaichi cookies 46g\"},{\"sku_id\":\"4500644\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"6\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"25\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"5\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"26\",\"quantity_on_tray\":\"23\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500710\",\"tray_id\":\"27\",\"quantity_on_tray\":\"11\",\"quantity_in_db\":\"0\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"sku_id\":\"177747\",\"tray_id\":\"31\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Coconut Water, 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"32\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"186078\",\"tray_id\":\"33\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"sku_id\":\"4500407\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"2\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"sku_id\":\"112220\",\"tray_id\":\"35\",\"quantity_on_tray\":\"19\",\"quantity_in_db\":\"20\",\"sku_name\":\"Snickers Chocolate Bar 22g\"},{\"sku_id\":\"4500702\",\"tray_id\":\"36\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"4500651\",\"tray_id\":\"38\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"3\",\"sku_name\":\"Sunfeast Breakfast protein Smoothie with Oats\"},{\"sku_id\":\"166327\",\"tray_id\":\"39\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"3\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"sku_id\":\"4500656\",\"tray_id\":\"40\",\"quantity_on_tray\":\"3\",\"quantity_in_db\":\"0\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"sku_id\":\"4500499\",\"tray_id\":\"41\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"sku_id\":\"186059\",\"tray_id\":\"42\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"sku_id\":\"185994\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"2\",\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\"},{\"sku_id\":\"8355\",\"tray_id\":\"44\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Coca Cola Can,  300ml\"},{\"sku_id\":\"4500643\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\"},{\"sku_id\":\"4500412\",\"tray_id\":\"46\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper Boat Chilli Guava 150ml\"}]},\"sub-action\":\"verify-refill\"}","command_for":"server","created_at":"2026-08-25 07:53:22","modified_at":"2026-08-25 08:02:35"}
[2026-08-25 08:02:35,708.708 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}],"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"complete_refill","trays":{"11":{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500732-","org_sku":"4500732","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500732-1004.png","name":"Maxvita Tomato Potato Chips 40gm","mrp":"20","weight":"45","qty":"","id":"11","p_sku":"4500732","p_qty":"","p_return_sku":"4500712","p_return_qty":"0","return_sku":"4500712","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500712-3453.png","l_sku":"4500712","l_qty":"0"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500713-6","org_sku":"4500713","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500713-9506.jpg","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","mrp":"20","weight":"47","qty":"6","id":"12","p_sku":"4500713","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500713","l_qty":"0"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500665-6","org_sku":"4500665","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500665-172.jpg","name":"Farmely Peri Peri Makhana 14gm","mrp":"30","weight":"22","qty":"6","id":"13","p_sku":"4500665","p_qty":"6","p_return_sku":"4500689","p_return_qty":"2","return_sku":"4500689","return_qty":"2","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500689-1679.jpg","l_sku":"4500689","l_qty":"2"},"14":{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm","mrp":"10","weight":"44","qty":"12","id":"14","p_sku":"4500725","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500725","l_qty":"3"},"15":{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500722-6","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"6","id":"15","p_sku":"4500722","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500722","l_qty":"3"},"16":{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500624-4","org_sku":"4500624","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500624-8762.webp","name":"Madmix  Aloo Sev Millet Bhujia 27gm","mrp":"20","weight":"30","qty":"4","id":"16","p_sku":"4500624","p_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500624","l_qty":"3"},"17":{"id":"17","tray_id":"17","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500564-6115.jpg","name":"Wholy Fudgy Cakes Red Velvet 32g","mrp":"35","weight":"34","qty":0,"org_sku":"4500564","p_sku":"4500564","p_qty":0,"l_sku":"4500564","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500564-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"18":{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500723-15","org_sku":"4500723","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","name":"MaxVita Moong daal 25gm","mrp":"10","weight":"28","qty":"15","id":"18","p_sku":"4500723","p_qty":"15","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500723","l_qty":"0"},"19":{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","name":"MaxVita Crunchy Indian Mixture 30gm","mrp":"10","weight":"35","qty":"12","id":"19","p_sku":"4500726","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500726","l_qty":"0"},"20":{"id":"20","tray_id":"20","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":0,"org_sku":"4500667","p_sku":"4500667","p_qty":0,"l_sku":"4500667","l_qty":"10","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500667-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"21":{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500730-10","org_sku":"4500730","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500730-5277.png","name":"Maxvita Khara Boondi 28gm","mrp":"10","weight":"33","qty":"10","id":"21","p_sku":"4500730","p_qty":"10","p_return_sku":"4500648","p_return_qty":"3","return_sku":"4500648","return_qty":"3","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","l_sku":"4500648","l_qty":"3"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":0,"org_sku":"4500605","p_sku":"4500605","p_qty":0,"l_sku":"4500605","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500605-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"23":{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500731-15","org_sku":"4500731","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500731-8867.png","name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","weight":"47","qty":"15","id":"23","p_sku":"4500731","p_qty":"15","p_return_sku":"4500681","p_return_qty":"0","return_sku":"4500681","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","l_sku":"4500681","l_qty":"0"},"24":{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500644-6","org_sku":"4500644","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500644-3697.png","name":"Ongibytes Pepper Sev 35gm","mrp":"20","weight":"42","qty":"6","id":"24","p_sku":"4500644","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500644","l_qty":"2"},"25":{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500722-5","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"5","id":"25","p_sku":"4500722","p_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500722","l_qty":"4"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm","mrp":"10","weight":"44","qty":"12","id":"26","p_sku":"4500725","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500725","l_qty":"14"},"27":{"id":"27","tray_id":"27","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"31":{"id":"31","tray_id":"31","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/177747-2139.png","name":"Raw Coconut Water, 200ml","mrp":"65","weight":"223","qty":0,"org_sku":"177747","p_sku":"177747","p_qty":0,"l_sku":"177747","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"177747-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186001-2099.webp","name":"Nestle Nescafe Chilled Latte Coffee Milk ","mrp":"50","weight":"202","qty":0,"org_sku":"186001","p_sku":"186001","p_qty":0,"l_sku":"186001","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186001-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"33":{"id":"33","tray_id":"33","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"34":{"tray_id":"34","door_id":"2","tray_weight":"99999","sku_json":"4500407-2","org_sku":"4500407","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":"2","id":"34","p_sku":"4500407","p_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500407","l_qty":"3"},"35":{"tray_id":"35","door_id":"2","tray_weight":"99999","sku_json":"112220-20","org_sku":"112220","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/112220-2513.jpg","name":"Snickers Chocolate Bar 22g","mrp":"20","weight":"24","qty":"20","id":"35","p_sku":"112220","p_qty":"20","p_return_sku":"185993","p_return_qty":"0","return_sku":"185993","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/185993-3509.webp","l_sku":"185993","l_qty":"0"},"36":{"id":"36","tray_id":"36","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500702-1302.webp","name":"Raw Masala Shikanji 200ml","mrp":"30","weight":"222","qty":0,"org_sku":"4500702","p_sku":"4500702","p_qty":0,"l_sku":"4500702","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500702-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186001-2099.webp","name":"Nestle Nescafe Chilled Latte Coffee Milk ","mrp":"50","weight":"202","qty":0,"org_sku":"186001","p_sku":"186001","p_qty":0,"l_sku":"186001","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186001-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"38":{"tray_id":"38","door_id":"2","tray_weight":"99999","sku_json":"4500651-3","org_sku":"4500651","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500651-8004.webp","name":"Sunfeast Breakfast protein Smoothie with Oats","mrp":"45","weight":"188","qty":"3","id":"38","p_sku":"4500651","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500651","l_qty":"1"},"39":{"tray_id":"39","door_id":"2","tray_weight":"99999","sku_json":"166327-3","org_sku":"166327","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":"3","id":"39","p_sku":"166327","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"166327","l_qty":"3"},"40":{"id":"40","tray_id":"40","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml","mrp":"60","weight":"225","qty":0,"org_sku":"4500656","p_sku":"4500656","p_qty":0,"l_sku":"4500656","l_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500656-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"41":{"id":"41","tray_id":"41","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"42":{"id":"42","tray_id":"42","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":0,"org_sku":"186059","p_sku":"186059","p_qty":0,"l_sku":"186059","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186059-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"43":{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"185994-2","org_sku":"185994","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/185994-2558.webp","name":"Nescafe Choco Mocha Cold Coffee 180ml","mrp":"45","weight":"200","qty":"2","id":"43","p_sku":"185994","p_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"185994","l_qty":"4"},"44":{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"8355-6","org_sku":"8355","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/8355-9565.jpeg","name":"Coca Cola Can,  300ml","mrp":"40","weight":"325","qty":"6","id":"44","p_sku":"8355","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"8355","l_qty":"1"},"45":{"id":"45","tray_id":"45","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500643-6170.webp","name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","weight":"191","qty":0,"org_sku":"4500643","p_sku":"4500643","p_qty":0,"l_sku":"4500643","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500643-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"46":{"id":"46","tray_id":"46","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500412-3733.jpg","name":"Paper Boat Chilli Guava 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"4500412","p_sku":"4500412","p_qty":0,"l_sku":"4500412","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500412-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"}},"command_for":"server"},{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}],"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 08:02:35', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"action_name":"verify refill Qty","request_data":{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}]},"active_doors":["1","2"],"action":"open_door_process","user":"server","refill_order_id":"TM03202401_refill_260825075349","response_data":{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}]},"sub-action":"verify-refill"}'}
[2026-08-25 08:02:35,713.713 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}],"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"complete_refill","trays":{"11":{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500732-","org_sku":"4500732","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500732-1004.png","name":"Maxvita Tomato Potato Chips 40gm","mrp":"20","weight":"45","qty":"","id":"11","p_sku":"4500732","p_qty":"","p_return_sku":"4500712","p_return_qty":"0","return_sku":"4500712","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500712-3453.png","l_sku":"4500712","l_qty":"0"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500713-6","org_sku":"4500713","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500713-9506.jpg","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","mrp":"20","weight":"47","qty":"6","id":"12","p_sku":"4500713","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500713","l_qty":"0"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500665-6","org_sku":"4500665","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500665-172.jpg","name":"Farmely Peri Peri Makhana 14gm","mrp":"30","weight":"22","qty":"6","id":"13","p_sku":"4500665","p_qty":"6","p_return_sku":"4500689","p_return_qty":"2","return_sku":"4500689","return_qty":"2","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500689-1679.jpg","l_sku":"4500689","l_qty":"2"},"14":{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm","mrp":"10","weight":"44","qty":"12","id":"14","p_sku":"4500725","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500725","l_qty":"3"},"15":{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500722-6","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"6","id":"15","p_sku":"4500722","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500722","l_qty":"3"},"16":{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500624-4","org_sku":"4500624","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500624-8762.webp","name":"Madmix  Aloo Sev Millet Bhujia 27gm","mrp":"20","weight":"30","qty":"4","id":"16","p_sku":"4500624","p_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500624","l_qty":"3"},"17":{"id":"17","tray_id":"17","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500564-6115.jpg","name":"Wholy Fudgy Cakes Red Velvet 32g","mrp":"35","weight":"34","qty":0,"org_sku":"4500564","p_sku":"4500564","p_qty":0,"l_sku":"4500564","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500564-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"18":{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500723-15","org_sku":"4500723","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","name":"MaxVita Moong daal 25gm","mrp":"10","weight":"28","qty":"15","id":"18","p_sku":"4500723","p_qty":"15","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500723","l_qty":"0"},"19":{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","name":"MaxVita Crunchy Indian Mixture 30gm","mrp":"10","weight":"35","qty":"12","id":"19","p_sku":"4500726","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500726","l_qty":"0"},"20":{"id":"20","tray_id":"20","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":0,"org_sku":"4500667","p_sku":"4500667","p_qty":0,"l_sku":"4500667","l_qty":"10","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500667-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"21":{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500730-10","org_sku":"4500730","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500730-5277.png","name":"Maxvita Khara Boondi 28gm","mrp":"10","weight":"33","qty":"10","id":"21","p_sku":"4500730","p_qty":"10","p_return_sku":"4500648","p_return_qty":"3","return_sku":"4500648","return_qty":"3","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","l_sku":"4500648","l_qty":"3"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":0,"org_sku":"4500605","p_sku":"4500605","p_qty":0,"l_sku":"4500605","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500605-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"23":{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500731-15","org_sku":"4500731","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500731-8867.png","name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","weight":"47","qty":"15","id":"23","p_sku":"4500731","p_qty":"15","p_return_sku":"4500681","p_return_qty":"0","return_sku":"4500681","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","l_sku":"4500681","l_qty":"0"},"24":{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500644-6","org_sku":"4500644","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500644-3697.png","name":"Ongibytes Pepper Sev 35gm","mrp":"20","weight":"42","qty":"6","id":"24","p_sku":"4500644","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500644","l_qty":"2"},"25":{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500722-5","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"5","id":"25","p_sku":"4500722","p_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500722","l_qty":"4"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm","mrp":"10","weight":"44","qty":"12","id":"26","p_sku":"4500725","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500725","l_qty":"14"},"27":{"id":"27","tray_id":"27","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"31":{"id":"31","tray_id":"31","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/177747-2139.png","name":"Raw Coconut Water, 200ml","mrp":"65","weight":"223","qty":0,"org_sku":"177747","p_sku":"177747","p_qty":0,"l_sku":"177747","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"177747-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186001-2099.webp","name":"Nestle Nescafe Chilled Latte Coffee Milk ","mrp":"50","weight":"202","qty":0,"org_sku":"186001","p_sku":"186001","p_qty":0,"l_sku":"186001","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186001-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"33":{"id":"33","tray_id":"33","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"34":{"tray_id":"34","door_id":"2","tray_weight":"99999","sku_json":"4500407-2","org_sku":"4500407","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":"2","id":"34","p_sku":"4500407","p_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500407","l_qty":"3"},"35":{"tray_id":"35","door_id":"2","tray_weight":"99999","sku_json":"112220-20","org_sku":"112220","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/112220-2513.jpg","name":"Snickers Chocolate Bar 22g","mrp":"20","weight":"24","qty":"20","id":"35","p_sku":"112220","p_qty":"20","p_return_sku":"185993","p_return_qty":"0","return_sku":"185993","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/185993-3509.webp","l_sku":"185993","l_qty":"0"},"36":{"id":"36","tray_id":"36","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500702-1302.webp","name":"Raw Masala Shikanji 200ml","mrp":"30","weight":"222","qty":0,"org_sku":"4500702","p_sku":"4500702","p_qty":0,"l_sku":"4500702","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500702-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186001-2099.webp","name":"Nestle Nescafe Chilled Latte Coffee Milk ","mrp":"50","weight":"202","qty":0,"org_sku":"186001","p_sku":"186001","p_qty":0,"l_sku":"186001","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186001-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"38":{"tray_id":"38","door_id":"2","tray_weight":"99999","sku_json":"4500651-3","org_sku":"4500651","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500651-8004.webp","name":"Sunfeast Breakfast protein Smoothie with Oats","mrp":"45","weight":"188","qty":"3","id":"38","p_sku":"4500651","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500651","l_qty":"1"},"39":{"tray_id":"39","door_id":"2","tray_weight":"99999","sku_json":"166327-3","org_sku":"166327","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":"3","id":"39","p_sku":"166327","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"166327","l_qty":"3"},"40":{"id":"40","tray_id":"40","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml","mrp":"60","weight":"225","qty":0,"org_sku":"4500656","p_sku":"4500656","p_qty":0,"l_sku":"4500656","l_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500656-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"41":{"id":"41","tray_id":"41","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"42":{"id":"42","tray_id":"42","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":0,"org_sku":"186059","p_sku":"186059","p_qty":0,"l_sku":"186059","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186059-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"43":{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"185994-2","org_sku":"185994","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/185994-2558.webp","name":"Nescafe Choco Mocha Cold Coffee 180ml","mrp":"45","weight":"200","qty":"2","id":"43","p_sku":"185994","p_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"185994","l_qty":"4"},"44":{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"8355-6","org_sku":"8355","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/8355-9565.jpeg","name":"Coca Cola Can,  300ml","mrp":"40","weight":"325","qty":"6","id":"44","p_sku":"8355","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"8355","l_qty":"1"},"45":{"id":"45","tray_id":"45","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500643-6170.webp","name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","weight":"191","qty":0,"org_sku":"4500643","p_sku":"4500643","p_qty":0,"l_sku":"4500643","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500643-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"46":{"id":"46","tray_id":"46","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500412-3733.jpg","name":"Paper Boat Chilli Guava 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"4500412","p_sku":"4500412","p_qty":0,"l_sku":"4500412","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500412-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"}},"command_for":"server"},{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}],"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 08:02:35', 'server_status': 'in-progress', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"action_name":"verify refill Qty","request_data":{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}]},"active_doors":["1","2"],"action":"open_door_process","user":"server","refill_order_id":"TM03202401_refill_260825075349","response_data":{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}]},"sub-action":"verify-refill"}'}
[2026-08-25 08:02:35,717.717 INFO    ] in main while loops
[2026-08-25 08:02:38,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:38
[2026-08-25 08:02:38,888.888 INFO    ] 
inside get

[2026-08-25 08:02:38,891.891 INFO    ] 200
[2026-08-25 08:02:38,902.902 INFO    ] waiting for server
[2026-08-25 08:02:41,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:41
[2026-08-25 08:02:42,108.108 INFO    ] 
inside get

[2026-08-25 08:02:42,111.111 INFO    ] 200
[2026-08-25 08:02:42,123.123 INFO    ] waiting for server
[2026-08-25 08:02:45,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:45
[2026-08-25 08:02:45,330.330 INFO    ] 
inside get

[2026-08-25 08:02:45,333.333 INFO    ] 200
[2026-08-25 08:02:45,344.344 INFO    ] waiting for server
[2026-08-25 08:02:48,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:48
[2026-08-25 08:02:48,529.529 INFO    ] 
inside get

[2026-08-25 08:02:48,532.532 INFO    ] 200
[2026-08-25 08:02:48,543.543 INFO    ] waiting for server
[2026-08-25 08:02:51,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:51
[2026-08-25 08:02:51,709.709 INFO    ] 
inside get

[2026-08-25 08:02:51,712.712 INFO    ] 200
[2026-08-25 08:02:51,723.723 INFO    ] waiting for server
[2026-08-25 08:02:54,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:54
[2026-08-25 08:02:54,910.910 INFO    ] 
inside get

[2026-08-25 08:02:54,912.912 INFO    ] 200
[2026-08-25 08:02:54,924.924 INFO    ] waiting for server
[2026-08-25 08:02:57,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:02:57
[2026-08-25 08:02:58,107.107 INFO    ] 
inside get

[2026-08-25 08:02:58,109.109 INFO    ] 200
[2026-08-25 08:02:58,121.121 INFO    ] waiting for server
[2026-08-25 08:03:01,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:01
[2026-08-25 08:03:01,308.308 INFO    ] 
inside get

[2026-08-25 08:03:01,310.310 INFO    ] 200
[2026-08-25 08:03:01,322.322 INFO    ] waiting for server
[2026-08-25 08:03:04,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:04
[2026-08-25 08:03:04,511.511 INFO    ] 
inside get

[2026-08-25 08:03:04,514.514 INFO    ] 200
[2026-08-25 08:03:04,526.526 INFO    ] waiting for server
[2026-08-25 08:03:07,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:07
[2026-08-25 08:03:07,696.696 INFO    ] 
inside get

[2026-08-25 08:03:07,698.698 INFO    ] 200
[2026-08-25 08:03:07,710.710 INFO    ] waiting for server
[2026-08-25 08:03:10,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:10
[2026-08-25 08:03:10,903.903 INFO    ] 
inside get

[2026-08-25 08:03:10,906.906 INFO    ] 200
[2026-08-25 08:03:10,918.918 INFO    ] waiting for server
[2026-08-25 08:03:13,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:13
[2026-08-25 08:03:14,113.113 INFO    ] 
inside get

[2026-08-25 08:03:14,116.116 INFO    ] 200
[2026-08-25 08:03:14,127.127 INFO    ] waiting for server
[2026-08-25 08:03:17,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:17
[2026-08-25 08:03:17,303.303 INFO    ] 
inside get

[2026-08-25 08:03:17,306.306 INFO    ] 200
[2026-08-25 08:03:17,317.317 INFO    ] processing machine command
[2026-08-25 08:03:17,320.320 INFO    ] {"action_name":"Waiting for Machine to Complete Verify Refill","request_data":{"order_id":"TM03202401_refill_260825075349","door_id":[1],"txnType":"refill","door_open_init":true,"refill_id":"9690322","content":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm","check_enabled":true},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","check_enabled":true},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm","check_enabled":true},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm","check_enabled":true},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"10","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm","check_enabled":true},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm","check_enabled":true},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g","check_enabled":true},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm","check_enabled":true},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm","check_enabled":true},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm","check_enabled":true},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm","check_enabled":true},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku ","check_enabled":true},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g","check_enabled":true},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm","check_enabled":true},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm","check_enabled":true},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm","check_enabled":true},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm","check_enabled":true},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml","check_enabled":true},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk ","check_enabled":true},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml","check_enabled":true},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml","check_enabled":true},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g","check_enabled":true},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml","check_enabled":true},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk ","check_enabled":true},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats","check_enabled":true},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g","check_enabled":true},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml","check_enabled":true},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml","check_enabled":true},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml","check_enabled":true},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml","check_enabled":true},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml","check_enabled":true},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack","check_enabled":true},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml","check_enabled":true}]},"active_doors":["1","2"],"action":"invoice_refill","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}]},"sub-action":"invoice_refill"}
[2026-08-25 08:03:44,658.658 INFO    ] {"success": true}
[2026-08-25 08:03:44,661.661 INFO    ] {"success": true}
[2026-08-25 08:03:45,230.230 INFO    ] 
inside post

[2026-08-25 08:03:45,232.232 INFO    ] 200
[2026-08-25 08:03:45,234.234 INFO    ] {"order_id":"9690322","vm_id":"1711555283773","user_id":"7019681368","status":"active","server_status":"completed","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"success\":true,\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"7019681368\",\"command_for\":\"server\"},{\"success\":\"true\",\"otp\":\"8193\",\"refill_id\":\"9690322\",\"allowed\":\"1\",\"user_id\":7019681368,\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"7019681368\",\"otp\":\"8193\",\"command_for\":\"server\"},{\"status\":\"True\",\"order_id\":\"TM03202401_refill_260825075349\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"active_doors\":[\"1\",\"2\"],\"rstatus\":true,\"refill_id\":\"9690322\",\"active_payment_gateways\":\"[{\\\"header\\\": \\\"QR Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\"}]}, {\\\"header\\\": \\\"Card Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\"}, {\\\"active\\\": 1, \\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\"}]}, {\\\"header\\\": \\\"Wallet Payments\\\", \\\"payments\\\": [{\\\"active\\\": 1, \\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\"}, {\\\"active\\\": 0, \\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\"}]}]\",\"user_id\":7019681368,\"door_size\":2,\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 1\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"status\":\"True\",\"SectionStatus\":{\"Note\":\"If any due amount, clear at https:\\\/\\\/go.tinymart.in\",\"SubHeader\":\"Please wait for invoice to generate\",\"UI_Header\":\"\",\"Header\":\" Order is complete \"},\"rstatus\":true,\"voiceNote\":\"\",\"delay\":100,\"SectionSKU\":{\"skus\":[],\"Header\":\"If you like us, tell others... else tell us\"},\"SectionMain\":{\"Header\":\"Door Closed\"},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"status\":\"False\",\"SectionStatus\":{\"Note\":\"Please wait for door to open\",\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\"},\"rstatus\":false,\"voiceNote\":\"Opening Door 2\",\"SectionSKU\":{\"skus\":[],\"Header\":\"Pick the below items from the door\"},\"SectionMain\":{\"Header\":\"Door Open\"},\"error\":{\"code\":20001,\"tmessage\":\"In Progress\",\"umessage\":\"In Progress\",\"data\":[]},\"user\":\"machine\"},{\"action\":\"complete_refill\",\"trays\":{\"11\":{\"tray_id\":\"11\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500732-\",\"org_sku\":\"4500732\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500732-1004.png\",\"name\":\"Maxvita Tomato Potato Chips 40gm\",\"mrp\":\"20\",\"weight\":\"45\",\"qty\":\"\",\"id\":\"11\",\"p_sku\":\"4500732\",\"p_qty\":\"\",\"p_return_sku\":\"4500712\",\"p_return_qty\":\"0\",\"return_sku\":\"4500712\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500712-3453.png\",\"l_sku\":\"4500712\",\"l_qty\":\"0\"},\"12\":{\"tray_id\":\"12\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500713-6\",\"org_sku\":\"4500713\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500713-9506.jpg\",\"name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\",\"mrp\":\"20\",\"weight\":\"47\",\"qty\":\"6\",\"id\":\"12\",\"p_sku\":\"4500713\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500713\",\"l_qty\":\"0\"},\"13\":{\"tray_id\":\"13\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500665-6\",\"org_sku\":\"4500665\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500665-172.jpg\",\"name\":\"Farmely Peri Peri Makhana 14gm\",\"mrp\":\"30\",\"weight\":\"22\",\"qty\":\"6\",\"id\":\"13\",\"p_sku\":\"4500665\",\"p_qty\":\"6\",\"p_return_sku\":\"4500689\",\"p_return_qty\":\"2\",\"return_sku\":\"4500689\",\"return_qty\":\"2\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500689-1679.jpg\",\"l_sku\":\"4500689\",\"l_qty\":\"2\"},\"14\":{\"tray_id\":\"14\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500725-12\",\"org_sku\":\"4500725\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500725-5961.png\",\"name\":\"Maxvita Coconut Cookies 40gm\",\"mrp\":\"10\",\"weight\":\"44\",\"qty\":\"12\",\"id\":\"14\",\"p_sku\":\"4500725\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500725\",\"l_qty\":\"3\"},\"15\":{\"tray_id\":\"15\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500722-6\",\"org_sku\":\"4500722\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"name\":\"MaxVita Rice Kodubale 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"6\",\"id\":\"15\",\"p_sku\":\"4500722\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500722\",\"l_qty\":\"3\"},\"16\":{\"tray_id\":\"16\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500624-4\",\"org_sku\":\"4500624\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500624-8762.webp\",\"name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\",\"mrp\":\"20\",\"weight\":\"30\",\"qty\":\"4\",\"id\":\"16\",\"p_sku\":\"4500624\",\"p_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500624\",\"l_qty\":\"3\"},\"17\":{\"id\":\"17\",\"tray_id\":\"17\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500564-6115.jpg\",\"name\":\"Wholy Fudgy Cakes Red Velvet 32g\",\"mrp\":\"35\",\"weight\":\"34\",\"qty\":0,\"org_sku\":\"4500564\",\"p_sku\":\"4500564\",\"p_qty\":0,\"l_sku\":\"4500564\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500564-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"18\":{\"tray_id\":\"18\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500723-15\",\"org_sku\":\"4500723\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500723-3888.png\",\"name\":\"MaxVita Moong daal 25gm\",\"mrp\":\"10\",\"weight\":\"28\",\"qty\":\"15\",\"id\":\"18\",\"p_sku\":\"4500723\",\"p_qty\":\"15\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500723\",\"l_qty\":\"0\"},\"19\":{\"tray_id\":\"19\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500726-12\",\"org_sku\":\"4500726\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500726-818.jpeg\",\"name\":\"MaxVita Crunchy Indian Mixture 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"12\",\"id\":\"19\",\"p_sku\":\"4500726\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500726\",\"l_qty\":\"0\"},\"20\":{\"id\":\"20\",\"tray_id\":\"20\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500667-4339.webp\",\"name\":\"Farmely Classic date Bites 20gm\",\"mrp\":\"40\",\"weight\":\"23\",\"qty\":0,\"org_sku\":\"4500667\",\"p_sku\":\"4500667\",\"p_qty\":0,\"l_sku\":\"4500667\",\"l_qty\":\"10\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500667-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"21\":{\"tray_id\":\"21\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500730-10\",\"org_sku\":\"4500730\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500730-5277.png\",\"name\":\"Maxvita Khara Boondi 28gm\",\"mrp\":\"10\",\"weight\":\"33\",\"qty\":\"10\",\"id\":\"21\",\"p_sku\":\"4500730\",\"p_qty\":\"10\",\"p_return_sku\":\"4500648\",\"p_return_qty\":\"3\",\"return_sku\":\"4500648\",\"return_qty\":\"3\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500648-25.webp\",\"l_sku\":\"4500648\",\"l_qty\":\"3\"},\"22\":{\"id\":\"22\",\"tray_id\":\"22\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"name\":\"Ongibytes Garlic Muruku \",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":0,\"org_sku\":\"4500605\",\"p_sku\":\"4500605\",\"p_qty\":0,\"l_sku\":\"4500605\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500605-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"23\":{\"tray_id\":\"23\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500731-15\",\"org_sku\":\"4500731\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500731-8867.png\",\"name\":\"MaxVita Butter Elaichi cookies 46g\",\"mrp\":\"10\",\"weight\":\"47\",\"qty\":\"15\",\"id\":\"23\",\"p_sku\":\"4500731\",\"p_qty\":\"15\",\"p_return_sku\":\"4500681\",\"p_return_qty\":\"0\",\"return_sku\":\"4500681\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500681-9948.webp\",\"l_sku\":\"4500681\",\"l_qty\":\"0\"},\"24\":{\"tray_id\":\"24\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500644-6\",\"org_sku\":\"4500644\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500644-3697.png\",\"name\":\"Ongibytes Pepper Sev 35gm\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"6\",\"id\":\"24\",\"p_sku\":\"4500644\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500644\",\"l_qty\":\"2\"},\"25\":{\"tray_id\":\"25\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500722-5\",\"org_sku\":\"4500722\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500722-2079.jpeg\",\"name\":\"MaxVita Rice Kodubale 30gm\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"5\",\"id\":\"25\",\"p_sku\":\"4500722\",\"p_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500722\",\"l_qty\":\"4\"},\"26\":{\"tray_id\":\"26\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500725-12\",\"org_sku\":\"4500725\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500725-5961.png\",\"name\":\"Maxvita Coconut Cookies 40gm\",\"mrp\":\"10\",\"weight\":\"44\",\"qty\":\"12\",\"id\":\"26\",\"p_sku\":\"4500725\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500725\",\"l_qty\":\"14\"},\"27\":{\"id\":\"27\",\"tray_id\":\"27\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500710-1463.png\",\"name\":\"MaxVita Premium crunch Rusk 51gm\",\"mrp\":\"10\",\"weight\":\"55\",\"qty\":0,\"org_sku\":\"4500710\",\"p_sku\":\"4500710\",\"p_qty\":0,\"l_sku\":\"4500710\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500710-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"31\":{\"id\":\"31\",\"tray_id\":\"31\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/177747-2139.png\",\"name\":\"Raw Coconut Water, 200ml\",\"mrp\":\"65\",\"weight\":\"223\",\"qty\":0,\"org_sku\":\"177747\",\"p_sku\":\"177747\",\"p_qty\":0,\"l_sku\":\"177747\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"177747-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"32\":{\"id\":\"32\",\"tray_id\":\"32\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186001-2099.webp\",\"name\":\"Nestle Nescafe Chilled Latte Coffee Milk \",\"mrp\":\"50\",\"weight\":\"202\",\"qty\":0,\"org_sku\":\"186001\",\"p_sku\":\"186001\",\"p_qty\":0,\"l_sku\":\"186001\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186001-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"33\":{\"id\":\"33\",\"tray_id\":\"33\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186078-2883.png\",\"name\":\"Paper boat Aam Panna 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"186078\",\"p_sku\":\"186078\",\"p_qty\":0,\"l_sku\":\"186078\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186078-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"34\":{\"tray_id\":\"34\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500407-2\",\"org_sku\":\"4500407\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500407-2060.jpg\",\"name\":\"Paper boat Alphonso Mango 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":\"2\",\"id\":\"34\",\"p_sku\":\"4500407\",\"p_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500407\",\"l_qty\":\"3\"},\"35\":{\"tray_id\":\"35\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"112220-20\",\"org_sku\":\"112220\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/112220-2513.jpg\",\"name\":\"Snickers Chocolate Bar 22g\",\"mrp\":\"20\",\"weight\":\"24\",\"qty\":\"20\",\"id\":\"35\",\"p_sku\":\"112220\",\"p_qty\":\"20\",\"p_return_sku\":\"185993\",\"p_return_qty\":\"0\",\"return_sku\":\"185993\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185993-3509.webp\",\"l_sku\":\"185993\",\"l_qty\":\"0\"},\"36\":{\"id\":\"36\",\"tray_id\":\"36\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500702-1302.webp\",\"name\":\"Raw Masala Shikanji 200ml\",\"mrp\":\"30\",\"weight\":\"222\",\"qty\":0,\"org_sku\":\"4500702\",\"p_sku\":\"4500702\",\"p_qty\":0,\"l_sku\":\"4500702\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500702-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"37\":{\"id\":\"37\",\"tray_id\":\"37\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186001-2099.webp\",\"name\":\"Nestle Nescafe Chilled Latte Coffee Milk \",\"mrp\":\"50\",\"weight\":\"202\",\"qty\":0,\"org_sku\":\"186001\",\"p_sku\":\"186001\",\"p_qty\":0,\"l_sku\":\"186001\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186001-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"38\":{\"tray_id\":\"38\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500651-3\",\"org_sku\":\"4500651\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500651-8004.webp\",\"name\":\"Sunfeast Breakfast protein Smoothie with Oats\",\"mrp\":\"45\",\"weight\":\"188\",\"qty\":\"3\",\"id\":\"38\",\"p_sku\":\"4500651\",\"p_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500651\",\"l_qty\":\"1\"},\"39\":{\"tray_id\":\"39\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"166327-3\",\"org_sku\":\"166327\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/166327-5644.jpg\",\"name\":\"Epigamia Chocolate Milkshake 200g\",\"mrp\":\"38\",\"weight\":\"210\",\"qty\":\"3\",\"id\":\"39\",\"p_sku\":\"166327\",\"p_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"166327\",\"l_qty\":\"3\"},\"40\":{\"id\":\"40\",\"tray_id\":\"40\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500656-2520.webp\",\"name\":\"BRU Cold Coffee Classic 200ml\",\"mrp\":\"60\",\"weight\":\"225\",\"qty\":0,\"org_sku\":\"4500656\",\"p_sku\":\"4500656\",\"p_qty\":0,\"l_sku\":\"4500656\",\"l_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500656-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"41\":{\"id\":\"41\",\"tray_id\":\"41\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500499-5719.webp\",\"name\":\"Heritage A1 Spiced Butter Milk180ml\",\"mrp\":\"20\",\"weight\":\"192\",\"qty\":0,\"org_sku\":\"4500499\",\"p_sku\":\"4500499\",\"p_qty\":0,\"l_sku\":\"4500499\",\"l_qty\":\"7\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500499-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"42\":{\"id\":\"42\",\"tray_id\":\"42\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186059-5330.png\",\"name\":\"Pepsi ZeroSugar  300ml\",\"mrp\":\"40\",\"weight\":\"310\",\"qty\":0,\"org_sku\":\"186059\",\"p_sku\":\"186059\",\"p_qty\":0,\"l_sku\":\"186059\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186059-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"43\":{\"tray_id\":\"43\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"185994-2\",\"org_sku\":\"185994\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/185994-2558.webp\",\"name\":\"Nescafe Choco Mocha Cold Coffee 180ml\",\"mrp\":\"45\",\"weight\":\"200\",\"qty\":\"2\",\"id\":\"43\",\"p_sku\":\"185994\",\"p_qty\":\"2\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"185994\",\"l_qty\":\"4\"},\"44\":{\"tray_id\":\"44\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"8355-6\",\"org_sku\":\"8355\",\"active\":\"1\",\"created_at\":\"2026-08-25 06:39:28\",\"modified_at\":\"2026-08-25 06:39:28\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/8355-9565.jpeg\",\"name\":\"Coca Cola Can,  300ml\",\"mrp\":\"40\",\"weight\":\"325\",\"qty\":\"6\",\"id\":\"44\",\"p_sku\":\"8355\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"8355\",\"l_qty\":\"1\"},\"45\":{\"id\":\"45\",\"tray_id\":\"45\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500643-6170.webp\",\"name\":\"Cavins Belgian chocolate 170ml spl pack\",\"mrp\":\"40\",\"weight\":\"191\",\"qty\":0,\"org_sku\":\"4500643\",\"p_sku\":\"4500643\",\"p_qty\":0,\"l_sku\":\"4500643\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500643-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"},\"46\":{\"id\":\"46\",\"tray_id\":\"46\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500412-3733.jpg\",\"name\":\"Paper Boat Chilli Guava 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"4500412\",\"p_sku\":\"4500412\",\"p_qty\":0,\"l_sku\":\"4500412\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500412-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-08-25 07:53:51\",\"created_at\":\"2026-08-25 07:53:51\"}},\"command_for\":\"server\"},{\"success\":true,\"message\":\"Tray mismatches found.\",\"tray_mismatches\":[{\"sku_id\":\"4500732\",\"tray_id\":\"11\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Maxvita Tomato Potato Chips 40gm\"},{\"sku_id\":\"4500713\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"sku_id\":\"4500665\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Farmely Peri Peri Makhana 14gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"14\",\"quantity_on_tray\":\"17\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"6\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500624\",\"tray_id\":\"16\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"4\",\"sku_name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\"},{\"sku_id\":\"4500564\",\"tray_id\":\"17\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"0\",\"sku_name\":\"Wholy Fudgy Cakes Red Velvet 32g\"},{\"sku_id\":\"4500723\",\"tray_id\":\"18\",\"quantity_on_tray\":\"14\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Moong daal 25gm\"},{\"sku_id\":\"4500726\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"12\",\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\"},{\"sku_id\":\"4500667\",\"tray_id\":\"20\",\"quantity_on_tray\":\"10\",\"quantity_in_db\":\"0\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"sku_id\":\"4500730\",\"tray_id\":\"21\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"10\",\"sku_name\":\"Maxvita Khara Boondi 28gm\"},{\"sku_id\":\"4500605\",\"tray_id\":\"22\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"sku_id\":\"4500731\",\"tray_id\":\"23\",\"quantity_on_tray\":\"15\",\"quantity_in_db\":\"15\",\"sku_name\":\"MaxVita Butter Elaichi cookies 46g\"},{\"sku_id\":\"4500644\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"6\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"sku_id\":\"4500722\",\"tray_id\":\"25\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"5\",\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500725\",\"tray_id\":\"26\",\"quantity_on_tray\":\"23\",\"quantity_in_db\":\"12\",\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500710\",\"tray_id\":\"27\",\"quantity_on_tray\":\"11\",\"quantity_in_db\":\"0\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"sku_id\":\"177747\",\"tray_id\":\"31\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Coconut Water, 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"32\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"186078\",\"tray_id\":\"33\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"sku_id\":\"4500407\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"2\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"sku_id\":\"112220\",\"tray_id\":\"35\",\"quantity_on_tray\":\"19\",\"quantity_in_db\":\"20\",\"sku_name\":\"Snickers Chocolate Bar 22g\"},{\"sku_id\":\"4500702\",\"tray_id\":\"36\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"sku_id\":\"186001\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"4500651\",\"tray_id\":\"38\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"3\",\"sku_name\":\"Sunfeast Breakfast protein Smoothie with Oats\"},{\"sku_id\":\"166327\",\"tray_id\":\"39\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"3\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"sku_id\":\"4500656\",\"tray_id\":\"40\",\"quantity_on_tray\":\"3\",\"quantity_in_db\":\"0\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"sku_id\":\"4500499\",\"tray_id\":\"41\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"sku_id\":\"186059\",\"tray_id\":\"42\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"sku_id\":\"185994\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"2\",\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\"},{\"sku_id\":\"8355\",\"tray_id\":\"44\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"sku_name\":\"Coca Cola Can,  300ml\"},{\"sku_id\":\"4500643\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\"},{\"sku_id\":\"4500412\",\"tray_id\":\"46\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"sku_name\":\"Paper Boat Chilli Guava 150ml\"}],\"user\":\"machine\"},{\"action\":\"verify_refill\",\"quantity_on_tray_11\":\"7\",\"confirmed_11\":\"on\",\"quantity_on_tray_12\":\"6\",\"confirmed_12\":\"on\",\"quantity_on_tray_13\":\"6\",\"confirmed_13\":\"on\",\"quantity_on_tray_14\":\"17\",\"confirmed_14\":\"on\",\"quantity_on_tray_15\":\"10\",\"confirmed_15\":\"on\",\"quantity_on_tray_16\":\"7\",\"confirmed_16\":\"on\",\"quantity_on_tray_17\":\"8\",\"confirmed_17\":\"on\",\"quantity_on_tray_18\":\"14\",\"confirmed_18\":\"on\",\"quantity_on_tray_19\":\"9\",\"confirmed_19\":\"on\",\"quantity_on_tray_20\":\"10\",\"confirmed_20\":\"on\",\"quantity_on_tray_21\":\"9\",\"confirmed_21\":\"on\",\"quantity_on_tray_22\":\"7\",\"confirmed_22\":\"on\",\"quantity_on_tray_23\":\"15\",\"confirmed_23\":\"on\",\"quantity_on_tray_24\":\"8\",\"confirmed_24\":\"on\",\"quantity_on_tray_25\":\"9\",\"confirmed_25\":\"on\",\"quantity_on_tray_26\":\"23\",\"confirmed_26\":\"on\",\"quantity_on_tray_27\":\"11\",\"confirmed_27\":\"on\",\"quantity_on_tray_31\":\"6\",\"confirmed_31\":\"on\",\"quantity_on_tray_32\":\"6\",\"confirmed_32\":\"on\",\"quantity_on_tray_33\":\"4\",\"confirmed_33\":\"on\",\"quantity_on_tray_34\":\"5\",\"confirmed_34\":\"on\",\"quantity_on_tray_35\":\"19\",\"confirmed_35\":\"on\",\"quantity_on_tray_36\":\"4\",\"confirmed_36\":\"on\",\"quantity_on_tray_37\":\"5\",\"confirmed_37\":\"on\",\"quantity_on_tray_38\":\"4\",\"confirmed_38\":\"on\",\"quantity_on_tray_39\":\"5\",\"confirmed_39\":\"on\",\"quantity_on_tray_40\":\"4\",\"confirmed_40\":\"on\",\"quantity_on_tray_41\":\"7\",\"confirmed_41\":\"on\",\"quantity_on_tray_42\":\"5\",\"confirmed_42\":\"on\",\"quantity_on_tray_43\":\"6\",\"confirmed_43\":\"on\",\"quantity_on_tray_44\":\"8\",\"confirmed_44\":\"on\",\"quantity_on_tray_45\":\"6\",\"confirmed_45\":\"on\",\"quantity_on_tray_46\":\"4\",\"confirmed_46\":\"on\",\"command_for\":\"server\"},{\"success\":true,\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"sub-action\":\"completed\",\"request_data\":{\"order_id\":\"TM03202401_refill_260825075349\",\"txnType\":\"refill\",\"door_id\":[1],\"refill_id\":\"9690322\",\"door_open_init\":true,\"content\":[{\"sku_id\":\"4500732\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"tray_id\":\"11\",\"check_enabled\":true,\"sku_name\":\"Maxvita Tomato Potato Chips 40gm\"},{\"sku_id\":\"4500713\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"tray_id\":\"12\",\"check_enabled\":true,\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"sku_id\":\"4500665\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"6\",\"tray_id\":\"13\",\"check_enabled\":true,\"sku_name\":\"Farmely Peri Peri Makhana 14gm\"},{\"sku_id\":\"4500725\",\"quantity_on_tray\":\"17\",\"quantity_in_db\":\"12\",\"tray_id\":\"14\",\"check_enabled\":true,\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500722\",\"quantity_on_tray\":\"10\",\"quantity_in_db\":\"6\",\"tray_id\":\"15\",\"check_enabled\":true,\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500624\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"4\",\"tray_id\":\"16\",\"check_enabled\":true,\"sku_name\":\"Madmix  Aloo Sev Millet Bhujia 27gm\"},{\"sku_id\":\"4500564\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"0\",\"tray_id\":\"17\",\"check_enabled\":true,\"sku_name\":\"Wholy Fudgy Cakes Red Velvet 32g\"},{\"sku_id\":\"4500723\",\"quantity_on_tray\":\"14\",\"quantity_in_db\":\"15\",\"tray_id\":\"18\",\"check_enabled\":true,\"sku_name\":\"MaxVita Moong daal 25gm\"},{\"sku_id\":\"4500726\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"12\",\"tray_id\":\"19\",\"check_enabled\":true,\"sku_name\":\"MaxVita Crunchy Indian Mixture 30gm\"},{\"sku_id\":\"4500667\",\"quantity_on_tray\":\"10\",\"quantity_in_db\":\"0\",\"tray_id\":\"20\",\"check_enabled\":true,\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"sku_id\":\"4500730\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"10\",\"tray_id\":\"21\",\"check_enabled\":true,\"sku_name\":\"Maxvita Khara Boondi 28gm\"},{\"sku_id\":\"4500605\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"tray_id\":\"22\",\"check_enabled\":true,\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"sku_id\":\"4500731\",\"quantity_on_tray\":\"15\",\"quantity_in_db\":\"15\",\"tray_id\":\"23\",\"check_enabled\":true,\"sku_name\":\"MaxVita Butter Elaichi cookies 46g\"},{\"sku_id\":\"4500644\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"6\",\"tray_id\":\"24\",\"check_enabled\":true,\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"sku_id\":\"4500722\",\"quantity_on_tray\":\"9\",\"quantity_in_db\":\"5\",\"tray_id\":\"25\",\"check_enabled\":true,\"sku_name\":\"MaxVita Rice Kodubale 30gm\"},{\"sku_id\":\"4500725\",\"quantity_on_tray\":\"23\",\"quantity_in_db\":\"12\",\"tray_id\":\"26\",\"check_enabled\":true,\"sku_name\":\"Maxvita Coconut Cookies 40gm\"},{\"sku_id\":\"4500710\",\"quantity_on_tray\":\"11\",\"quantity_in_db\":\"0\",\"tray_id\":\"27\",\"check_enabled\":true,\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"sku_id\":\"177747\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"tray_id\":\"31\",\"check_enabled\":true,\"sku_name\":\"Raw Coconut Water, 200ml\"},{\"sku_id\":\"186001\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"tray_id\":\"32\",\"check_enabled\":true,\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"186078\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"tray_id\":\"33\",\"check_enabled\":true,\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"sku_id\":\"4500407\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"2\",\"tray_id\":\"34\",\"check_enabled\":true,\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"sku_id\":\"112220\",\"quantity_on_tray\":\"19\",\"quantity_in_db\":\"20\",\"tray_id\":\"35\",\"check_enabled\":true,\"sku_name\":\"Snickers Chocolate Bar 22g\"},{\"sku_id\":\"4500702\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"tray_id\":\"36\",\"check_enabled\":true,\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"sku_id\":\"186001\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"tray_id\":\"37\",\"check_enabled\":true,\"sku_name\":\"Nestle Nescafe Chilled Latte Coffee Milk \"},{\"sku_id\":\"4500651\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"3\",\"tray_id\":\"38\",\"check_enabled\":true,\"sku_name\":\"Sunfeast Breakfast protein Smoothie with Oats\"},{\"sku_id\":\"166327\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"3\",\"tray_id\":\"39\",\"check_enabled\":true,\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"sku_id\":\"4500656\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"tray_id\":\"40\",\"check_enabled\":true,\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"sku_id\":\"4500499\",\"quantity_on_tray\":\"7\",\"quantity_in_db\":\"0\",\"tray_id\":\"41\",\"check_enabled\":true,\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"sku_id\":\"186059\",\"quantity_on_tray\":\"5\",\"quantity_in_db\":\"0\",\"tray_id\":\"42\",\"check_enabled\":true,\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"sku_id\":\"185994\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"2\",\"tray_id\":\"43\",\"check_enabled\":true,\"sku_name\":\"Nescafe Choco Mocha Cold Coffee 180ml\"},{\"sku_id\":\"8355\",\"quantity_on_tray\":\"8\",\"quantity_in_db\":\"6\",\"tray_id\":\"44\",\"check_enabled\":true,\"sku_name\":\"Coca Cola Can,  300ml\"},{\"sku_id\":\"4500643\",\"quantity_on_tray\":\"6\",\"quantity_in_db\":\"0\",\"tray_id\":\"45\",\"check_enabled\":true,\"sku_name\":\"Cavins Belgian chocolate 170ml spl pack\"},{\"sku_id\":\"4500412\",\"quantity_on_tray\":\"4\",\"quantity_in_db\":\"0\",\"tray_id\":\"46\",\"check_enabled\":true,\"sku_name\":\"Paper Boat Chilli Guava 150ml\"}]},\"action_name\":\"completed\",\"action\":\"completed\",\"user\":\"machine\",\"refill_order_id\":\"TM03202401_refill_260825075349\",\"response_data\":{\"success\":true},\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-08-25 07:53:22","modified_at":"2026-08-25 08:03:45"}
[2026-08-25 08:03:45,246.246 INFO    ] {'command_todo': 'interactive-refill', 'type_of_order': 'refill', 'command_for': 'server', 'last_command_response': '{"success":true,"user":"machine"}', 'vm_id': '1711555283773', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"7019681368","command_for":"server"},{"success":"true","otp":"8193","refill_id":"9690322","allowed":"1","user_id":7019681368,"user":"machine"},{"action":"get_mobile_otp","mobile_no":"7019681368","otp":"8193","command_for":"server"},{"status":"True","order_id":"TM03202401_refill_260825075349","refill_order_id":"TM03202401_refill_260825075349","active_doors":["1","2"],"rstatus":true,"refill_id":"9690322","active_payment_gateways":"[{\\"header\\": \\"QR Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\"}, {\\"active\\": 1, \\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\"}, {\\"active\\": 1, \\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\"}, {\\"active\\": 1, \\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\"}]}, {\\"header\\": \\"Card Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\"}, {\\"active\\": 1, \\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\"}, {\\"active\\": 0, \\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\"}]}, {\\"header\\": \\"Wallet Payments\\", \\"payments\\": [{\\"active\\": 1, \\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\"}, {\\"active\\": 0, \\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\"}, {\\"active\\": 0, \\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\"}]}]","user_id":7019681368,"door_size":2,"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1"},"rstatus":false,"voiceNote":"Opening Door 1","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"True","SectionStatus":{"Note":"If any due amount, clear at https:\\/\\/go.tinymart.in","SubHeader":"Please wait for invoice to generate","UI_Header":"","Header":" Order is complete "},"rstatus":true,"voiceNote":"","delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"SectionMain":{"Header":"Door Closed"},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"status":"False","SectionStatus":{"Note":"Please wait for door to open","SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2"},"rstatus":false,"voiceNote":"Opening Door 2","SectionSKU":{"skus":[],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","umessage":"In Progress","data":[]},"user":"machine"},{"action":"complete_refill","trays":{"11":{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500732-","org_sku":"4500732","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500732-1004.png","name":"Maxvita Tomato Potato Chips 40gm","mrp":"20","weight":"45","qty":"","id":"11","p_sku":"4500732","p_qty":"","p_return_sku":"4500712","p_return_qty":"0","return_sku":"4500712","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500712-3453.png","l_sku":"4500712","l_qty":"0"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500713-6","org_sku":"4500713","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500713-9506.jpg","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","mrp":"20","weight":"47","qty":"6","id":"12","p_sku":"4500713","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500713","l_qty":"0"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500665-6","org_sku":"4500665","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500665-172.jpg","name":"Farmely Peri Peri Makhana 14gm","mrp":"30","weight":"22","qty":"6","id":"13","p_sku":"4500665","p_qty":"6","p_return_sku":"4500689","p_return_qty":"2","return_sku":"4500689","return_qty":"2","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500689-1679.jpg","l_sku":"4500689","l_qty":"2"},"14":{"tray_id":"14","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm","mrp":"10","weight":"44","qty":"12","id":"14","p_sku":"4500725","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500725","l_qty":"3"},"15":{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500722-6","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"6","id":"15","p_sku":"4500722","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500722","l_qty":"3"},"16":{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500624-4","org_sku":"4500624","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500624-8762.webp","name":"Madmix  Aloo Sev Millet Bhujia 27gm","mrp":"20","weight":"30","qty":"4","id":"16","p_sku":"4500624","p_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500624","l_qty":"3"},"17":{"id":"17","tray_id":"17","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500564-6115.jpg","name":"Wholy Fudgy Cakes Red Velvet 32g","mrp":"35","weight":"34","qty":0,"org_sku":"4500564","p_sku":"4500564","p_qty":0,"l_sku":"4500564","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500564-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"18":{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500723-15","org_sku":"4500723","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500723-3888.png","name":"MaxVita Moong daal 25gm","mrp":"10","weight":"28","qty":"15","id":"18","p_sku":"4500723","p_qty":"15","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500723","l_qty":"0"},"19":{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500726-12","org_sku":"4500726","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500726-818.jpeg","name":"MaxVita Crunchy Indian Mixture 30gm","mrp":"10","weight":"35","qty":"12","id":"19","p_sku":"4500726","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500726","l_qty":"0"},"20":{"id":"20","tray_id":"20","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":0,"org_sku":"4500667","p_sku":"4500667","p_qty":0,"l_sku":"4500667","l_qty":"10","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500667-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"21":{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500730-10","org_sku":"4500730","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500730-5277.png","name":"Maxvita Khara Boondi 28gm","mrp":"10","weight":"33","qty":"10","id":"21","p_sku":"4500730","p_qty":"10","p_return_sku":"4500648","p_return_qty":"3","return_sku":"4500648","return_qty":"3","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","l_sku":"4500648","l_qty":"3"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":0,"org_sku":"4500605","p_sku":"4500605","p_qty":0,"l_sku":"4500605","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500605-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"23":{"tray_id":"23","door_id":"1","tray_weight":"99999","sku_json":"4500731-15","org_sku":"4500731","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500731-8867.png","name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","weight":"47","qty":"15","id":"23","p_sku":"4500731","p_qty":"15","p_return_sku":"4500681","p_return_qty":"0","return_sku":"4500681","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","l_sku":"4500681","l_qty":"0"},"24":{"tray_id":"24","door_id":"1","tray_weight":"99999","sku_json":"4500644-6","org_sku":"4500644","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500644-3697.png","name":"Ongibytes Pepper Sev 35gm","mrp":"20","weight":"42","qty":"6","id":"24","p_sku":"4500644","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500644","l_qty":"2"},"25":{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500722-5","org_sku":"4500722","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500722-2079.jpeg","name":"MaxVita Rice Kodubale 30gm","mrp":"10","weight":"35","qty":"5","id":"25","p_sku":"4500722","p_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500722","l_qty":"4"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500725-12","org_sku":"4500725","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500725-5961.png","name":"Maxvita Coconut Cookies 40gm","mrp":"10","weight":"44","qty":"12","id":"26","p_sku":"4500725","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500725","l_qty":"14"},"27":{"id":"27","tray_id":"27","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"31":{"id":"31","tray_id":"31","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/177747-2139.png","name":"Raw Coconut Water, 200ml","mrp":"65","weight":"223","qty":0,"org_sku":"177747","p_sku":"177747","p_qty":0,"l_sku":"177747","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"177747-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186001-2099.webp","name":"Nestle Nescafe Chilled Latte Coffee Milk ","mrp":"50","weight":"202","qty":0,"org_sku":"186001","p_sku":"186001","p_qty":0,"l_sku":"186001","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186001-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"33":{"id":"33","tray_id":"33","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"34":{"tray_id":"34","door_id":"2","tray_weight":"99999","sku_json":"4500407-2","org_sku":"4500407","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":"2","id":"34","p_sku":"4500407","p_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500407","l_qty":"3"},"35":{"tray_id":"35","door_id":"2","tray_weight":"99999","sku_json":"112220-20","org_sku":"112220","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/112220-2513.jpg","name":"Snickers Chocolate Bar 22g","mrp":"20","weight":"24","qty":"20","id":"35","p_sku":"112220","p_qty":"20","p_return_sku":"185993","p_return_qty":"0","return_sku":"185993","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/185993-3509.webp","l_sku":"185993","l_qty":"0"},"36":{"id":"36","tray_id":"36","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500702-1302.webp","name":"Raw Masala Shikanji 200ml","mrp":"30","weight":"222","qty":0,"org_sku":"4500702","p_sku":"4500702","p_qty":0,"l_sku":"4500702","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500702-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186001-2099.webp","name":"Nestle Nescafe Chilled Latte Coffee Milk ","mrp":"50","weight":"202","qty":0,"org_sku":"186001","p_sku":"186001","p_qty":0,"l_sku":"186001","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186001-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"38":{"tray_id":"38","door_id":"2","tray_weight":"99999","sku_json":"4500651-3","org_sku":"4500651","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/4500651-8004.webp","name":"Sunfeast Breakfast protein Smoothie with Oats","mrp":"45","weight":"188","qty":"3","id":"38","p_sku":"4500651","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500651","l_qty":"1"},"39":{"tray_id":"39","door_id":"2","tray_weight":"99999","sku_json":"166327-3","org_sku":"166327","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":"3","id":"39","p_sku":"166327","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"166327","l_qty":"3"},"40":{"id":"40","tray_id":"40","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml","mrp":"60","weight":"225","qty":0,"org_sku":"4500656","p_sku":"4500656","p_qty":0,"l_sku":"4500656","l_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500656-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"41":{"id":"41","tray_id":"41","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"7","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"42":{"id":"42","tray_id":"42","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":0,"org_sku":"186059","p_sku":"186059","p_qty":0,"l_sku":"186059","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186059-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"43":{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"185994-2","org_sku":"185994","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/185994-2558.webp","name":"Nescafe Choco Mocha Cold Coffee 180ml","mrp":"45","weight":"200","qty":"2","id":"43","p_sku":"185994","p_qty":"2","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"185994","l_qty":"4"},"44":{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"8355-6","org_sku":"8355","active":"1","created_at":"2026-08-25 06:39:28","modified_at":"2026-08-25 06:39:28","image":"https:\\/\\/images.tinymart.in\\/product\\/8355-9565.jpeg","name":"Coca Cola Can,  300ml","mrp":"40","weight":"325","qty":"6","id":"44","p_sku":"8355","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"8355","l_qty":"1"},"45":{"id":"45","tray_id":"45","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500643-6170.webp","name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","weight":"191","qty":0,"org_sku":"4500643","p_sku":"4500643","p_qty":0,"l_sku":"4500643","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500643-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"},"46":{"id":"46","tray_id":"46","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500412-3733.jpg","name":"Paper Boat Chilli Guava 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"4500412","p_sku":"4500412","p_qty":0,"l_sku":"4500412","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500412-0","tray_weight":"99999","modified_at":"2026-08-25 07:53:51","created_at":"2026-08-25 07:53:51"}},"command_for":"server"},{"success":true,"message":"Tray mismatches found.","tray_mismatches":[{"sku_id":"4500732","tray_id":"11","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","tray_id":"12","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","tray_id":"13","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","tray_id":"14","quantity_on_tray":"17","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","tray_id":"15","quantity_on_tray":"9","quantity_in_db":"6","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","tray_id":"16","quantity_on_tray":"7","quantity_in_db":"4","sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","tray_id":"17","quantity_on_tray":"8","quantity_in_db":"0","sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","tray_id":"18","quantity_on_tray":"14","quantity_in_db":"15","sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","tray_id":"19","quantity_on_tray":"9","quantity_in_db":"12","sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","tray_id":"20","quantity_on_tray":"10","quantity_in_db":"0","sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","tray_id":"21","quantity_on_tray":"9","quantity_in_db":"10","sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","tray_id":"22","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","tray_id":"23","quantity_on_tray":"15","quantity_in_db":"15","sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","tray_id":"24","quantity_on_tray":"8","quantity_in_db":"6","sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","tray_id":"25","quantity_on_tray":"9","quantity_in_db":"5","sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","tray_id":"26","quantity_on_tray":"23","quantity_in_db":"12","sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","tray_id":"27","quantity_on_tray":"11","quantity_in_db":"0","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","tray_id":"31","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","tray_id":"32","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","tray_id":"33","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","tray_id":"34","quantity_on_tray":"5","quantity_in_db":"2","sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","tray_id":"35","quantity_on_tray":"19","quantity_in_db":"20","sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","tray_id":"36","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","tray_id":"37","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","tray_id":"38","quantity_on_tray":"4","quantity_in_db":"3","sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","tray_id":"39","quantity_on_tray":"5","quantity_in_db":"3","sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","tray_id":"40","quantity_on_tray":"3","quantity_in_db":"0","sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","tray_id":"41","quantity_on_tray":"7","quantity_in_db":"0","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","tray_id":"42","quantity_on_tray":"5","quantity_in_db":"0","sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","tray_id":"43","quantity_on_tray":"6","quantity_in_db":"2","sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","tray_id":"44","quantity_on_tray":"6","quantity_in_db":"6","sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","tray_id":"45","quantity_on_tray":"6","quantity_in_db":"0","sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","tray_id":"46","quantity_on_tray":"4","quantity_in_db":"0","sku_name":"Paper Boat Chilli Guava 150ml"}],"user":"machine"},{"action":"verify_refill","quantity_on_tray_11":"7","confirmed_11":"on","quantity_on_tray_12":"6","confirmed_12":"on","quantity_on_tray_13":"6","confirmed_13":"on","quantity_on_tray_14":"17","confirmed_14":"on","quantity_on_tray_15":"10","confirmed_15":"on","quantity_on_tray_16":"7","confirmed_16":"on","quantity_on_tray_17":"8","confirmed_17":"on","quantity_on_tray_18":"14","confirmed_18":"on","quantity_on_tray_19":"9","confirmed_19":"on","quantity_on_tray_20":"10","confirmed_20":"on","quantity_on_tray_21":"9","confirmed_21":"on","quantity_on_tray_22":"7","confirmed_22":"on","quantity_on_tray_23":"15","confirmed_23":"on","quantity_on_tray_24":"8","confirmed_24":"on","quantity_on_tray_25":"9","confirmed_25":"on","quantity_on_tray_26":"23","confirmed_26":"on","quantity_on_tray_27":"11","confirmed_27":"on","quantity_on_tray_31":"6","confirmed_31":"on","quantity_on_tray_32":"6","confirmed_32":"on","quantity_on_tray_33":"4","confirmed_33":"on","quantity_on_tray_34":"5","confirmed_34":"on","quantity_on_tray_35":"19","confirmed_35":"on","quantity_on_tray_36":"4","confirmed_36":"on","quantity_on_tray_37":"5","confirmed_37":"on","quantity_on_tray_38":"4","confirmed_38":"on","quantity_on_tray_39":"5","confirmed_39":"on","quantity_on_tray_40":"4","confirmed_40":"on","quantity_on_tray_41":"7","confirmed_41":"on","quantity_on_tray_42":"5","confirmed_42":"on","quantity_on_tray_43":"6","confirmed_43":"on","quantity_on_tray_44":"8","confirmed_44":"on","quantity_on_tray_45":"6","confirmed_45":"on","quantity_on_tray_46":"4","confirmed_46":"on","command_for":"server"},{"success":true,"user":"machine"}]', 'status': 'active', 'order_id': '9690322', 'created_at': '2026-08-25 07:53:22', 'modified_at': '2026-08-25 08:03:45', 'server_status': 'completed', 'user_id': '7019681368', 'server_response': '', 'command_request_data': '{"sub-action":"completed","request_data":{"order_id":"TM03202401_refill_260825075349","txnType":"refill","door_id":[1],"refill_id":"9690322","door_open_init":true,"content":[{"sku_id":"4500732","quantity_on_tray":"7","quantity_in_db":"0","tray_id":"11","check_enabled":true,"sku_name":"Maxvita Tomato Potato Chips 40gm"},{"sku_id":"4500713","quantity_on_tray":"6","quantity_in_db":"6","tray_id":"12","check_enabled":true,"sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"sku_id":"4500665","quantity_on_tray":"6","quantity_in_db":"6","tray_id":"13","check_enabled":true,"sku_name":"Farmely Peri Peri Makhana 14gm"},{"sku_id":"4500725","quantity_on_tray":"17","quantity_in_db":"12","tray_id":"14","check_enabled":true,"sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500722","quantity_on_tray":"10","quantity_in_db":"6","tray_id":"15","check_enabled":true,"sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500624","quantity_on_tray":"7","quantity_in_db":"4","tray_id":"16","check_enabled":true,"sku_name":"Madmix  Aloo Sev Millet Bhujia 27gm"},{"sku_id":"4500564","quantity_on_tray":"8","quantity_in_db":"0","tray_id":"17","check_enabled":true,"sku_name":"Wholy Fudgy Cakes Red Velvet 32g"},{"sku_id":"4500723","quantity_on_tray":"14","quantity_in_db":"15","tray_id":"18","check_enabled":true,"sku_name":"MaxVita Moong daal 25gm"},{"sku_id":"4500726","quantity_on_tray":"9","quantity_in_db":"12","tray_id":"19","check_enabled":true,"sku_name":"MaxVita Crunchy Indian Mixture 30gm"},{"sku_id":"4500667","quantity_on_tray":"10","quantity_in_db":"0","tray_id":"20","check_enabled":true,"sku_name":"Farmely Classic date Bites 20gm"},{"sku_id":"4500730","quantity_on_tray":"9","quantity_in_db":"10","tray_id":"21","check_enabled":true,"sku_name":"Maxvita Khara Boondi 28gm"},{"sku_id":"4500605","quantity_on_tray":"7","quantity_in_db":"0","tray_id":"22","check_enabled":true,"sku_name":"Ongibytes Garlic Muruku "},{"sku_id":"4500731","quantity_on_tray":"15","quantity_in_db":"15","tray_id":"23","check_enabled":true,"sku_name":"MaxVita Butter Elaichi cookies 46g"},{"sku_id":"4500644","quantity_on_tray":"8","quantity_in_db":"6","tray_id":"24","check_enabled":true,"sku_name":"Ongibytes Pepper Sev 35gm"},{"sku_id":"4500722","quantity_on_tray":"9","quantity_in_db":"5","tray_id":"25","check_enabled":true,"sku_name":"MaxVita Rice Kodubale 30gm"},{"sku_id":"4500725","quantity_on_tray":"23","quantity_in_db":"12","tray_id":"26","check_enabled":true,"sku_name":"Maxvita Coconut Cookies 40gm"},{"sku_id":"4500710","quantity_on_tray":"11","quantity_in_db":"0","tray_id":"27","check_enabled":true,"sku_name":"MaxVita Premium crunch Rusk 51gm"},{"sku_id":"177747","quantity_on_tray":"6","quantity_in_db":"0","tray_id":"31","check_enabled":true,"sku_name":"Raw Coconut Water, 200ml"},{"sku_id":"186001","quantity_on_tray":"6","quantity_in_db":"0","tray_id":"32","check_enabled":true,"sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"186078","quantity_on_tray":"4","quantity_in_db":"0","tray_id":"33","check_enabled":true,"sku_name":"Paper boat Aam Panna 150ml"},{"sku_id":"4500407","quantity_on_tray":"5","quantity_in_db":"2","tray_id":"34","check_enabled":true,"sku_name":"Paper boat Alphonso Mango 160ml"},{"sku_id":"112220","quantity_on_tray":"19","quantity_in_db":"20","tray_id":"35","check_enabled":true,"sku_name":"Snickers Chocolate Bar 22g"},{"sku_id":"4500702","quantity_on_tray":"4","quantity_in_db":"0","tray_id":"36","check_enabled":true,"sku_name":"Raw Masala Shikanji 200ml"},{"sku_id":"186001","quantity_on_tray":"5","quantity_in_db":"0","tray_id":"37","check_enabled":true,"sku_name":"Nestle Nescafe Chilled Latte Coffee Milk "},{"sku_id":"4500651","quantity_on_tray":"4","quantity_in_db":"3","tray_id":"38","check_enabled":true,"sku_name":"Sunfeast Breakfast protein Smoothie with Oats"},{"sku_id":"166327","quantity_on_tray":"5","quantity_in_db":"3","tray_id":"39","check_enabled":true,"sku_name":"Epigamia Chocolate Milkshake 200g"},{"sku_id":"4500656","quantity_on_tray":"4","quantity_in_db":"0","tray_id":"40","check_enabled":true,"sku_name":"BRU Cold Coffee Classic 200ml"},{"sku_id":"4500499","quantity_on_tray":"7","quantity_in_db":"0","tray_id":"41","check_enabled":true,"sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"sku_id":"186059","quantity_on_tray":"5","quantity_in_db":"0","tray_id":"42","check_enabled":true,"sku_name":"Pepsi ZeroSugar  300ml"},{"sku_id":"185994","quantity_on_tray":"6","quantity_in_db":"2","tray_id":"43","check_enabled":true,"sku_name":"Nescafe Choco Mocha Cold Coffee 180ml"},{"sku_id":"8355","quantity_on_tray":"8","quantity_in_db":"6","tray_id":"44","check_enabled":true,"sku_name":"Coca Cola Can,  300ml"},{"sku_id":"4500643","quantity_on_tray":"6","quantity_in_db":"0","tray_id":"45","check_enabled":true,"sku_name":"Cavins Belgian chocolate 170ml spl pack"},{"sku_id":"4500412","quantity_on_tray":"4","quantity_in_db":"0","tray_id":"46","check_enabled":true,"sku_name":"Paper Boat Chilli Guava 150ml"}]},"action_name":"completed","action":"completed","user":"machine","refill_order_id":"TM03202401_refill_260825075349","response_data":{"success":true},"active_doors":["1","2"]}'}
[2026-08-25 08:03:45,249.249 INFO    ] refill verification completed 
[2026-08-25 08:03:45,812.812 INFO    ] 200
[2026-08-25 08:03:45,814.814 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "status": true}
[2026-08-25 08:03:45,817.817 INFO    ] Checking for system updates...
[2026-08-25 08:03:45,851.851 INFO    ] 200
[2026-08-25 08:03:45,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:03:45,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:03:45,918.918 INFO    ] No update needed
[2026-08-25 08:03:45,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 08:03:45,955.955 INFO    ] 200
[2026-08-25 08:03:45,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:03:45,997.997 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:03:46,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:03:46,066.066 INFO    ] No camera update needed
[2026-08-25 08:03:46,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:03:46,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:03:46,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:03:46,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:03:48,120.120 INFO    ] ================================================
[2026-08-25 08:03:48,136.136 INFO    ] Launching Daemon at Tue Aug 25 08:03:48 IST 2026
[2026-08-25 08:03:48,147.147 INFO    ] ================================================
[2026-08-25 08:03:48,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:48
[2026-08-25 08:03:49,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:03:49,584.584 INFO    ] Initializing speech engine...
[2026-08-25 08:03:49,589.589 INFO    ] 2026-08-25 08:03:49
[2026-08-25 08:03:49,886.886 INFO    ] 2026-08-25 08:03:49
[2026-08-25 08:03:49,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:03:50,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:03:50,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:03:50,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:03:50,262.262 INFO    ] time= 25/08/2026 08:03:50
[2026-08-25 08:03:50,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:03:50,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:03:50,364.364 INFO    ] No existing commands found in stream
[2026-08-25 08:03:55,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:03:55,402.402 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 08:03:55,867.867 INFO    ] {'response': {'data': 'order not active', 'status': False, 'msg': 'order not active '}}
[2026-08-25 08:03:55,869.869 INFO    ] Checking for system updates...
[2026-08-25 08:03:55,904.904 INFO    ] 200
[2026-08-25 08:03:55,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:03:55,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:03:55,965.965 INFO    ] No update needed
[2026-08-25 08:03:55,968.968 INFO    ] Checking for camera pi updates...
[2026-08-25 08:03:56,002.002 INFO    ] 200
[2026-08-25 08:03:56,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:03:56,049.049 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:03:56,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:03:56,116.116 INFO    ] No camera update needed
[2026-08-25 08:03:56,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:03:56,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:03:56,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:03:56,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:03:58,169.169 INFO    ] ================================================
[2026-08-25 08:03:58,185.185 INFO    ] Launching Daemon at Tue Aug 25 08:03:58 IST 2026
[2026-08-25 08:03:58,197.197 INFO    ] ================================================
[2026-08-25 08:03:58,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:03:58
[2026-08-25 08:03:59,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:03:59,623.623 INFO    ] Initializing speech engine...
[2026-08-25 08:03:59,630.630 INFO    ] 2026-08-25 08:03:59
[2026-08-25 08:03:59,885.885 INFO    ] 2026-08-25 08:03:59
[2026-08-25 08:03:59,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:04:00,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:04:00,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:04:00,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:04:00,266.266 INFO    ] time= 25/08/2026 08:04:00
[2026-08-25 08:04:00,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:04:00,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:04:00,441.441 INFO    ] No existing commands found in stream
[2026-08-25 08:04:05,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:04:05,475.475 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 08:04:09,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:04:09,200.200 INFO    ] Checking for system updates...
[2026-08-25 08:04:09,236.236 INFO    ] 200
[2026-08-25 08:04:09,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:09,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:04:09,293.293 INFO    ] No update needed
[2026-08-25 08:04:09,295.295 INFO    ] Checking for camera pi updates...
[2026-08-25 08:04:09,328.328 INFO    ] 200
[2026-08-25 08:04:09,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:09,371.371 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:04:09,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:04:09,465.465 INFO    ] No camera update needed
[2026-08-25 08:04:09,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:04:09,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:04:09,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:04:09,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:04:11,520.520 INFO    ] ================================================
[2026-08-25 08:04:11,535.535 INFO    ] Launching Daemon at Tue Aug 25 08:04:11 IST 2026
[2026-08-25 08:04:11,547.547 INFO    ] ================================================
[2026-08-25 08:04:12,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:04:12
[2026-08-25 08:04:12,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:04:12,973.973 INFO    ] Initializing speech engine...
[2026-08-25 08:04:12,994.994 INFO    ] 2026-08-25 08:04:12
[2026-08-25 08:04:13,259.259 INFO    ] 2026-08-25 08:04:13
[2026-08-25 08:04:13,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:04:13,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:04:13,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:04:13,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:04:13,668.668 INFO    ] time= 25/08/2026 08:04:13
[2026-08-25 08:04:13,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:04:13,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:04:13,753.753 INFO    ] No existing commands found in stream
[2026-08-25 08:04:18,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:04:18,771.771 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 08:04:21,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:04:21,376.376 INFO    ] Checking for system updates...
[2026-08-25 08:04:21,411.411 INFO    ] 200
[2026-08-25 08:04:21,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:21,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:04:21,469.469 INFO    ] No update needed
[2026-08-25 08:04:21,471.471 INFO    ] Checking for camera pi updates...
[2026-08-25 08:04:21,505.505 INFO    ] 200
[2026-08-25 08:04:21,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:21,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:04:24,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:04:24,607.607 INFO    ] No camera update needed
[2026-08-25 08:04:24,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:04:24,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:04:24,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:04:24,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:04:26,664.664 INFO    ] ================================================
[2026-08-25 08:04:26,680.680 INFO    ] Launching Daemon at Tue Aug 25 08:04:26 IST 2026
[2026-08-25 08:04:26,692.692 INFO    ] ================================================
[2026-08-25 08:04:27,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:04:27
[2026-08-25 08:04:27,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:04:28,091.091 INFO    ] Initializing speech engine...
[2026-08-25 08:04:28,098.098 INFO    ] 2026-08-25 08:04:28
[2026-08-25 08:04:28,391.391 INFO    ] 2026-08-25 08:04:28
[2026-08-25 08:04:28,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:04:28,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:04:28,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:04:28,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:04:28,883.883 INFO    ] time= 25/08/2026 08:04:28
[2026-08-25 08:04:28,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:04:28,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:04:29,145.145 INFO    ] No existing commands found in stream
[2026-08-25 08:04:34,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:04:34,165.165 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 08:04:37,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:04:37,697.697 INFO    ] Checking for system updates...
[2026-08-25 08:04:37,735.735 INFO    ] 200
[2026-08-25 08:04:37,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:37,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:04:37,793.793 INFO    ] No update needed
[2026-08-25 08:04:37,795.795 INFO    ] Checking for camera pi updates...
[2026-08-25 08:04:37,829.829 INFO    ] 200
[2026-08-25 08:04:37,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:37,875.875 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:04:37,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:04:37,925.925 INFO    ] No camera update needed
[2026-08-25 08:04:37,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:04:37,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:04:37,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:04:37,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:04:39,980.980 INFO    ] ================================================
[2026-08-25 08:04:40,997.997 INFO    ] Launching Daemon at Tue Aug 25 08:04:39 IST 2026
[2026-08-25 08:04:40,008.008 INFO    ] ================================================
[2026-08-25 08:04:40,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:04:40
[2026-08-25 08:04:41,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:04:41,610.610 INFO    ] Initializing speech engine...
[2026-08-25 08:04:41,622.622 INFO    ] 2026-08-25 08:04:41
[2026-08-25 08:04:41,934.934 INFO    ] 2026-08-25 08:04:41
[2026-08-25 08:04:42,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:04:42,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:04:42,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:04:42,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:04:42,434.434 INFO    ] time= 25/08/2026 08:04:42
[2026-08-25 08:04:42,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:04:42,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:04:42,589.589 INFO    ] No existing commands found in stream
[2026-08-25 08:04:47,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:04:47,619.619 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 08:04:48,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:04:48,575.575 INFO    ] Checking for system updates...
[2026-08-25 08:04:48,616.616 INFO    ] 200
[2026-08-25 08:04:48,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:48,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:04:48,675.675 INFO    ] No update needed
[2026-08-25 08:04:48,677.677 INFO    ] Checking for camera pi updates...
[2026-08-25 08:04:48,715.715 INFO    ] 200
[2026-08-25 08:04:48,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:48,759.759 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:04:48,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:04:48,811.811 INFO    ] No camera update needed
[2026-08-25 08:04:48,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:04:48,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:04:48,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:04:48,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:04:50,868.868 INFO    ] ================================================
[2026-08-25 08:04:50,884.884 INFO    ] Launching Daemon at Tue Aug 25 08:04:50 IST 2026
[2026-08-25 08:04:50,895.895 INFO    ] ================================================
[2026-08-25 08:04:51,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:04:51
[2026-08-25 08:04:52,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:04:52,335.335 INFO    ] Initializing speech engine...
[2026-08-25 08:04:52,353.353 INFO    ] 2026-08-25 08:04:52
[2026-08-25 08:04:52,639.639 INFO    ] 2026-08-25 08:04:52
[2026-08-25 08:04:52,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:04:52,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:04:52,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:04:53,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:04:53,014.014 INFO    ] time= 25/08/2026 08:04:53
[2026-08-25 08:04:53,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:04:53,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:04:53,208.208 INFO    ] No existing commands found in stream
[2026-08-25 08:04:58,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:04:58,226.226 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 08:04:59,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:04:59,486.486 INFO    ] Checking for system updates...
[2026-08-25 08:04:59,522.522 INFO    ] 200
[2026-08-25 08:04:59,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:59,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:04:59,580.580 INFO    ] No update needed
[2026-08-25 08:04:59,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 08:04:59,616.616 INFO    ] 200
[2026-08-25 08:04:59,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:04:59,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:04:59,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:04:59,708.708 INFO    ] No camera update needed
[2026-08-25 08:04:59,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:04:59,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:04:59,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:04:59,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:05:01,765.765 INFO    ] ================================================
[2026-08-25 08:05:01,780.780 INFO    ] Launching Daemon at Tue Aug 25 08:05:01 IST 2026
[2026-08-25 08:05:01,791.791 INFO    ] ================================================
[2026-08-25 08:05:02,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:05:02
[2026-08-25 08:05:03,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:05:03,722.722 INFO    ] Initializing speech engine...
[2026-08-25 08:05:03,731.731 INFO    ] 2026-08-25 08:05:03
[2026-08-25 08:05:04,019.019 INFO    ] 2026-08-25 08:05:04
[2026-08-25 08:05:04,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:05:04,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:05:04,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:05:04,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:05:04,392.392 INFO    ] time= 25/08/2026 08:05:04
[2026-08-25 08:05:04,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:05:04,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:05:04,588.588 INFO    ] No existing commands found in stream
[2026-08-25 08:05:09,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:05:09,603.603 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 08:05:13,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:05:13,170.170 INFO    ] Checking for system updates...
[2026-08-25 08:05:13,210.210 INFO    ] 200
[2026-08-25 08:05:13,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:13,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:05:13,281.281 INFO    ] No update needed
[2026-08-25 08:05:13,283.283 INFO    ] Checking for camera pi updates...
[2026-08-25 08:05:13,316.316 INFO    ] 200
[2026-08-25 08:05:13,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:13,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:05:13,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:05:13,410.410 INFO    ] No camera update needed
[2026-08-25 08:05:13,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:05:13,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:05:13,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:05:13,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:05:15,466.466 INFO    ] ================================================
[2026-08-25 08:05:15,481.481 INFO    ] Launching Daemon at Tue Aug 25 08:05:15 IST 2026
[2026-08-25 08:05:15,493.493 INFO    ] ================================================
[2026-08-25 08:05:16,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:05:16
[2026-08-25 08:05:16,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:05:16,934.934 INFO    ] Initializing speech engine...
[2026-08-25 08:05:16,943.943 INFO    ] 2026-08-25 08:05:16
[2026-08-25 08:05:17,241.241 INFO    ] 2026-08-25 08:05:17
[2026-08-25 08:05:17,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:05:17,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:05:17,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:05:17,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:05:17,625.625 INFO    ] time= 25/08/2026 08:05:17
[2026-08-25 08:05:17,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:05:17,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:05:17,754.754 INFO    ] No existing commands found in stream
[2026-08-25 08:05:22,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:05:22,770.770 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 08:05:26,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:05:26,813.813 INFO    ] Checking for system updates...
[2026-08-25 08:05:26,849.849 INFO    ] 200
[2026-08-25 08:05:26,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:26,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:05:26,906.906 INFO    ] No update needed
[2026-08-25 08:05:26,909.909 INFO    ] Checking for camera pi updates...
[2026-08-25 08:05:26,942.942 INFO    ] 200
[2026-08-25 08:05:26,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:26,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:05:27,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:05:27,033.033 INFO    ] No camera update needed
[2026-08-25 08:05:27,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:05:27,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:05:27,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:05:27,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:05:29,088.088 INFO    ] ================================================
[2026-08-25 08:05:29,104.104 INFO    ] Launching Daemon at Tue Aug 25 08:05:29 IST 2026
[2026-08-25 08:05:29,114.114 INFO    ] ================================================
[2026-08-25 08:05:29,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:05:29
[2026-08-25 08:05:30,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:05:30,780.780 INFO    ] Initializing speech engine...
[2026-08-25 08:05:30,792.792 INFO    ] 2026-08-25 08:05:30
[2026-08-25 08:05:31,103.103 INFO    ] 2026-08-25 08:05:31
[2026-08-25 08:05:31,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:05:31,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:05:31,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:05:31,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:05:31,615.615 INFO    ] time= 25/08/2026 08:05:31
[2026-08-25 08:05:31,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:05:31,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:05:31,764.764 INFO    ] No existing commands found in stream
[2026-08-25 08:05:36,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:05:36,785.785 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 08:05:37,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:05:37,598.598 INFO    ] Checking for system updates...
[2026-08-25 08:05:37,637.637 INFO    ] 200
[2026-08-25 08:05:37,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:37,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:05:37,701.701 INFO    ] No update needed
[2026-08-25 08:05:37,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 08:05:37,741.741 INFO    ] 200
[2026-08-25 08:05:37,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:37,783.783 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:05:37,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:05:37,839.839 INFO    ] No camera update needed
[2026-08-25 08:05:37,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:05:37,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:05:37,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:05:37,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:05:39,896.896 INFO    ] ================================================
[2026-08-25 08:05:39,912.912 INFO    ] Launching Daemon at Tue Aug 25 08:05:39 IST 2026
[2026-08-25 08:05:39,923.923 INFO    ] ================================================
[2026-08-25 08:05:40,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:05:40
[2026-08-25 08:05:41,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:05:41,340.340 INFO    ] Initializing speech engine...
[2026-08-25 08:05:41,352.352 INFO    ] 2026-08-25 08:05:41
[2026-08-25 08:05:41,615.615 INFO    ] 2026-08-25 08:05:41
[2026-08-25 08:05:41,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:05:41,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:05:41,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:05:42,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:05:42,091.091 INFO    ] time= 25/08/2026 08:05:42
[2026-08-25 08:05:42,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:05:42,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:05:42,302.302 INFO    ] No existing commands found in stream
[2026-08-25 08:05:47,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:05:47,337.337 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 08:05:48,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:05:48,445.445 INFO    ] Checking for system updates...
[2026-08-25 08:05:48,480.480 INFO    ] 200
[2026-08-25 08:05:48,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:48,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:05:48,536.536 INFO    ] No update needed
[2026-08-25 08:05:48,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 08:05:48,571.571 INFO    ] 200
[2026-08-25 08:05:48,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:05:48,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:05:48,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:05:48,661.661 INFO    ] No camera update needed
[2026-08-25 08:05:48,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:05:48,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:05:48,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:05:48,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:05:50,717.717 INFO    ] ================================================
[2026-08-25 08:05:50,732.732 INFO    ] Launching Daemon at Tue Aug 25 08:05:50 IST 2026
[2026-08-25 08:05:50,744.744 INFO    ] ================================================
[2026-08-25 08:05:51,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:05:51
[2026-08-25 08:05:51,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:05:52,164.164 INFO    ] Initializing speech engine...
[2026-08-25 08:05:52,176.176 INFO    ] 2026-08-25 08:05:52
[2026-08-25 08:05:52,426.426 INFO    ] 2026-08-25 08:05:52
[2026-08-25 08:05:52,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:05:52,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:05:52,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:05:52,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:05:52,904.904 INFO    ] time= 25/08/2026 08:05:52
[2026-08-25 08:05:52,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:05:52,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:05:53,119.119 INFO    ] No existing commands found in stream
[2026-08-25 08:05:58,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:05:58,152.152 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 08:06:02,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:06:02,064.064 INFO    ] Checking for system updates...
[2026-08-25 08:06:02,108.108 INFO    ] 200
[2026-08-25 08:06:02,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:02,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:06:02,177.177 INFO    ] No update needed
[2026-08-25 08:06:02,181.181 INFO    ] Checking for camera pi updates...
[2026-08-25 08:06:02,226.226 INFO    ] 200
[2026-08-25 08:06:02,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:02,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:06:02,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:06:02,348.348 INFO    ] No camera update needed
[2026-08-25 08:06:02,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:06:02,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:06:02,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:06:02,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:06:04,407.407 INFO    ] ================================================
[2026-08-25 08:06:04,422.422 INFO    ] Launching Daemon at Tue Aug 25 08:06:04 IST 2026
[2026-08-25 08:06:04,433.433 INFO    ] ================================================
[2026-08-25 08:06:05,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:06:05
[2026-08-25 08:06:05,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:06:05,887.887 INFO    ] Initializing speech engine...
[2026-08-25 08:06:05,898.898 INFO    ] 2026-08-25 08:06:05
[2026-08-25 08:06:06,237.237 INFO    ] 2026-08-25 08:06:06
[2026-08-25 08:06:06,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:06:06,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:06:06,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:06:06,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:06:06,665.665 INFO    ] time= 25/08/2026 08:06:06
[2026-08-25 08:06:06,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:06:06,750.750 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:06:06,898.898 INFO    ] No existing commands found in stream
[2026-08-25 08:06:11,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:06:11,929.929 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 08:06:16,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:06:16,069.069 INFO    ] Checking for system updates...
[2026-08-25 08:06:16,106.106 INFO    ] 200
[2026-08-25 08:06:16,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:16,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:06:16,171.171 INFO    ] No update needed
[2026-08-25 08:06:16,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 08:06:16,208.208 INFO    ] 200
[2026-08-25 08:06:16,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:16,253.253 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:06:16,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:06:16,304.304 INFO    ] No camera update needed
[2026-08-25 08:06:16,311.311 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:06:16,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:06:16,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:06:16,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:06:18,369.369 INFO    ] ================================================
[2026-08-25 08:06:18,384.384 INFO    ] Launching Daemon at Tue Aug 25 08:06:18 IST 2026
[2026-08-25 08:06:18,395.395 INFO    ] ================================================
[2026-08-25 08:06:19,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:06:19
[2026-08-25 08:06:19,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:06:19,871.871 INFO    ] Initializing speech engine...
[2026-08-25 08:06:19,880.880 INFO    ] 2026-08-25 08:06:19
[2026-08-25 08:06:20,128.128 INFO    ] 2026-08-25 08:06:20
[2026-08-25 08:06:20,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:06:20,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:06:20,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:06:20,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:06:20,622.622 INFO    ] time= 25/08/2026 08:06:20
[2026-08-25 08:06:20,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:06:20,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:06:20,837.837 INFO    ] No existing commands found in stream
[2026-08-25 08:06:25,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:06:25,857.857 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 08:06:28,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:06:28,373.373 INFO    ] Checking for system updates...
[2026-08-25 08:06:28,410.410 INFO    ] 200
[2026-08-25 08:06:28,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:28,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:06:28,467.467 INFO    ] No update needed
[2026-08-25 08:06:28,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 08:06:28,503.503 INFO    ] 200
[2026-08-25 08:06:28,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:28,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:06:28,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:06:28,693.693 INFO    ] No camera update needed
[2026-08-25 08:06:28,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:06:28,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:06:28,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:06:28,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:06:30,749.749 INFO    ] ================================================
[2026-08-25 08:06:30,764.764 INFO    ] Launching Daemon at Tue Aug 25 08:06:30 IST 2026
[2026-08-25 08:06:30,774.774 INFO    ] ================================================
[2026-08-25 08:06:31,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:06:31
[2026-08-25 08:06:32,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:06:32,308.308 INFO    ] Initializing speech engine...
[2026-08-25 08:06:32,317.317 INFO    ] 2026-08-25 08:06:32
[2026-08-25 08:06:32,581.581 INFO    ] 2026-08-25 08:06:32
[2026-08-25 08:06:32,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:06:32,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:06:32,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:06:33,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:06:33,045.045 INFO    ] time= 25/08/2026 08:06:33
[2026-08-25 08:06:33,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:06:33,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:06:33,245.245 INFO    ] No existing commands found in stream
[2026-08-25 08:06:38,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:06:38,274.274 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 08:06:41,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:06:41,888.888 INFO    ] Checking for system updates...
[2026-08-25 08:06:41,925.925 INFO    ] 200
[2026-08-25 08:06:41,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:41,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:06:41,998.998 INFO    ] No update needed
[2026-08-25 08:06:42,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 08:06:42,037.037 INFO    ] 200
[2026-08-25 08:06:42,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:42,080.080 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:06:42,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:06:42,139.139 INFO    ] No camera update needed
[2026-08-25 08:06:42,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:06:42,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:06:42,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:06:42,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:06:44,193.193 INFO    ] ================================================
[2026-08-25 08:06:44,208.208 INFO    ] Launching Daemon at Tue Aug 25 08:06:44 IST 2026
[2026-08-25 08:06:44,218.218 INFO    ] ================================================
[2026-08-25 08:06:44,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:06:44
[2026-08-25 08:06:45,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:06:45,661.661 INFO    ] Initializing speech engine...
[2026-08-25 08:06:45,677.677 INFO    ] 2026-08-25 08:06:45
[2026-08-25 08:06:45,932.932 INFO    ] 2026-08-25 08:06:45
[2026-08-25 08:06:45,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:06:46,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:06:46,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:06:46,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:06:46,422.422 INFO    ] time= 25/08/2026 08:06:46
[2026-08-25 08:06:46,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:06:46,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:06:46,630.630 INFO    ] No existing commands found in stream
[2026-08-25 08:06:51,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:06:51,652.652 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 08:06:54,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:06:54,384.384 INFO    ] Checking for system updates...
[2026-08-25 08:06:54,419.419 INFO    ] 200
[2026-08-25 08:06:54,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:54,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:06:54,479.479 INFO    ] No update needed
[2026-08-25 08:06:54,482.482 INFO    ] Checking for camera pi updates...
[2026-08-25 08:06:54,516.516 INFO    ] 200
[2026-08-25 08:06:54,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:06:54,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:06:54,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:06:54,611.611 INFO    ] No camera update needed
[2026-08-25 08:06:54,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:06:54,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:06:54,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:06:54,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:06:56,666.666 INFO    ] ================================================
[2026-08-25 08:06:56,681.681 INFO    ] Launching Daemon at Tue Aug 25 08:06:56 IST 2026
[2026-08-25 08:06:56,692.692 INFO    ] ================================================
[2026-08-25 08:06:57,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:06:57
[2026-08-25 08:06:57,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:06:58,277.277 INFO    ] Initializing speech engine...
[2026-08-25 08:06:58,285.285 INFO    ] 2026-08-25 08:06:58
[2026-08-25 08:06:58,553.553 INFO    ] 2026-08-25 08:06:58
[2026-08-25 08:06:58,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:06:58,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:06:58,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:06:58,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:06:59,016.016 INFO    ] time= 25/08/2026 08:06:58
[2026-08-25 08:06:59,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:06:59,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:06:59,254.254 INFO    ] No existing commands found in stream
[2026-08-25 08:07:04,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:07:04,270.270 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 08:07:08,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:07:08,708.708 INFO    ] Checking for system updates...
[2026-08-25 08:07:08,759.759 INFO    ] 200
[2026-08-25 08:07:08,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:08,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:07:08,818.818 INFO    ] No update needed
[2026-08-25 08:07:08,821.821 INFO    ] Checking for camera pi updates...
[2026-08-25 08:07:08,855.855 INFO    ] 200
[2026-08-25 08:07:08,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:08,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:07:08,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:07:08,958.958 INFO    ] No camera update needed
[2026-08-25 08:07:08,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:07:08,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:07:08,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:07:08,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:07:11,012.012 INFO    ] ================================================
[2026-08-25 08:07:11,027.027 INFO    ] Launching Daemon at Tue Aug 25 08:07:11 IST 2026
[2026-08-25 08:07:11,038.038 INFO    ] ================================================
[2026-08-25 08:07:11,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:07:11
[2026-08-25 08:07:12,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:07:12,455.455 INFO    ] Initializing speech engine...
[2026-08-25 08:07:12,465.465 INFO    ] 2026-08-25 08:07:12
[2026-08-25 08:07:12,721.721 INFO    ] 2026-08-25 08:07:12
[2026-08-25 08:07:12,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:07:13,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:07:13,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:07:13,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:07:13,199.199 INFO    ] time= 25/08/2026 08:07:13
[2026-08-25 08:07:13,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:07:13,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:07:13,416.416 INFO    ] No existing commands found in stream
[2026-08-25 08:07:18,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:07:18,433.433 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 08:07:19,797.797 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:07:19,800.800 INFO    ] Checking for system updates...
[2026-08-25 08:07:19,838.838 INFO    ] 200
[2026-08-25 08:07:19,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:19,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:07:19,900.900 INFO    ] No update needed
[2026-08-25 08:07:19,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 08:07:19,936.936 INFO    ] 200
[2026-08-25 08:07:19,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:19,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:07:20,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:07:20,029.029 INFO    ] No camera update needed
[2026-08-25 08:07:20,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:07:20,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:07:20,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:07:20,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:07:22,083.083 INFO    ] ================================================
[2026-08-25 08:07:22,098.098 INFO    ] Launching Daemon at Tue Aug 25 08:07:22 IST 2026
[2026-08-25 08:07:22,109.109 INFO    ] ================================================
[2026-08-25 08:07:22,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:07:22
[2026-08-25 08:07:23,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:07:23,514.514 INFO    ] Initializing speech engine...
[2026-08-25 08:07:23,529.529 INFO    ] 2026-08-25 08:07:23
[2026-08-25 08:07:23,795.795 INFO    ] 2026-08-25 08:07:23
[2026-08-25 08:07:23,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:07:24,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:07:24,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:07:24,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:07:24,180.180 INFO    ] time= 25/08/2026 08:07:24
[2026-08-25 08:07:24,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:07:24,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:07:24,357.357 INFO    ] No existing commands found in stream
[2026-08-25 08:07:29,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:07:29,385.385 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 08:07:32,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:07:32,282.282 INFO    ] Checking for system updates...
[2026-08-25 08:07:32,322.322 INFO    ] 200
[2026-08-25 08:07:32,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:32,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:07:32,380.380 INFO    ] No update needed
[2026-08-25 08:07:32,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 08:07:32,416.416 INFO    ] 200
[2026-08-25 08:07:32,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:32,458.458 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:07:32,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:07:32,508.508 INFO    ] No camera update needed
[2026-08-25 08:07:32,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:07:32,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:07:32,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:07:32,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:07:34,563.563 INFO    ] ================================================
[2026-08-25 08:07:34,578.578 INFO    ] Launching Daemon at Tue Aug 25 08:07:34 IST 2026
[2026-08-25 08:07:34,588.588 INFO    ] ================================================
[2026-08-25 08:07:35,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:07:35
[2026-08-25 08:07:35,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:07:36,071.071 INFO    ] Initializing speech engine...
[2026-08-25 08:07:36,086.086 INFO    ] 2026-08-25 08:07:36
[2026-08-25 08:07:36,355.355 INFO    ] 2026-08-25 08:07:36
[2026-08-25 08:07:36,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:07:36,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:07:36,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:07:36,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:07:36,751.751 INFO    ] time= 25/08/2026 08:07:36
[2026-08-25 08:07:36,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:07:36,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:07:36,905.905 INFO    ] No existing commands found in stream
[2026-08-25 08:07:41,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:07:41,943.943 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 08:07:46,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:07:46,243.243 INFO    ] Checking for system updates...
[2026-08-25 08:07:46,282.282 INFO    ] 200
[2026-08-25 08:07:46,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:46,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:07:46,340.340 INFO    ] No update needed
[2026-08-25 08:07:46,343.343 INFO    ] Checking for camera pi updates...
[2026-08-25 08:07:46,380.380 INFO    ] 200
[2026-08-25 08:07:46,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:46,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:07:46,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:07:46,476.476 INFO    ] No camera update needed
[2026-08-25 08:07:46,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:07:46,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:07:46,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:07:46,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:07:48,530.530 INFO    ] ================================================
[2026-08-25 08:07:48,546.546 INFO    ] Launching Daemon at Tue Aug 25 08:07:48 IST 2026
[2026-08-25 08:07:48,558.558 INFO    ] ================================================
[2026-08-25 08:07:49,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:07:49
[2026-08-25 08:07:49,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:07:49,976.976 INFO    ] Initializing speech engine...
[2026-08-25 08:07:49,986.986 INFO    ] 2026-08-25 08:07:49
[2026-08-25 08:07:50,231.231 INFO    ] 2026-08-25 08:07:50
[2026-08-25 08:07:50,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:07:50,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:07:50,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:07:50,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:07:50,701.701 INFO    ] time= 25/08/2026 08:07:50
[2026-08-25 08:07:50,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:07:50,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:07:50,925.925 INFO    ] No existing commands found in stream
[2026-08-25 08:07:55,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:07:55,949.949 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 08:07:57,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:07:57,695.695 INFO    ] Checking for system updates...
[2026-08-25 08:07:57,730.730 INFO    ] 200
[2026-08-25 08:07:57,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:57,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:07:57,796.796 INFO    ] No update needed
[2026-08-25 08:07:57,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 08:07:57,831.831 INFO    ] 200
[2026-08-25 08:07:57,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:07:57,874.874 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:07:57,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:07:57,927.927 INFO    ] No camera update needed
[2026-08-25 08:07:57,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:07:57,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:07:57,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:07:57,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:07:59,982.982 INFO    ] ================================================
[2026-08-25 08:08:00,997.997 INFO    ] Launching Daemon at Tue Aug 25 08:07:59 IST 2026
[2026-08-25 08:08:00,008.008 INFO    ] ================================================
[2026-08-25 08:08:00,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:08:00
[2026-08-25 08:08:01,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:08:01,418.418 INFO    ] Initializing speech engine...
[2026-08-25 08:08:01,424.424 INFO    ] 2026-08-25 08:08:01
[2026-08-25 08:08:01,719.719 INFO    ] 2026-08-25 08:08:01
[2026-08-25 08:08:01,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:08:01,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:08:02,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:08:02,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:08:02,214.214 INFO    ] time= 25/08/2026 08:08:02
[2026-08-25 08:08:02,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:08:02,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:08:02,347.347 INFO    ] No existing commands found in stream
[2026-08-25 08:08:07,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:08:07,371.371 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 08:08:08,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:08:08,223.223 INFO    ] Checking for system updates...
[2026-08-25 08:08:08,264.264 INFO    ] 200
[2026-08-25 08:08:08,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:08,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:08:08,327.327 INFO    ] No update needed
[2026-08-25 08:08:08,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 08:08:08,370.370 INFO    ] 200
[2026-08-25 08:08:08,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:08,416.416 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:08:08,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:08:08,467.467 INFO    ] No camera update needed
[2026-08-25 08:08:08,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:08:08,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:08:08,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:08:08,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:08:10,524.524 INFO    ] ================================================
[2026-08-25 08:08:10,539.539 INFO    ] Launching Daemon at Tue Aug 25 08:08:10 IST 2026
[2026-08-25 08:08:10,551.551 INFO    ] ================================================
[2026-08-25 08:08:11,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:08:11
[2026-08-25 08:08:11,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:08:12,172.172 INFO    ] Initializing speech engine...
[2026-08-25 08:08:12,186.186 INFO    ] 2026-08-25 08:08:12
[2026-08-25 08:08:12,468.468 INFO    ] 2026-08-25 08:08:12
[2026-08-25 08:08:12,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:08:12,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:08:12,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:08:12,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:08:12,960.960 INFO    ] time= 25/08/2026 08:08:12
[2026-08-25 08:08:13,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:08:13,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:08:13,141.141 INFO    ] No existing commands found in stream
[2026-08-25 08:08:18,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:08:18,172.172 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 08:08:21,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:08:21,195.195 INFO    ] Checking for system updates...
[2026-08-25 08:08:21,232.232 INFO    ] 200
[2026-08-25 08:08:21,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:21,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:08:21,298.298 INFO    ] No update needed
[2026-08-25 08:08:21,301.301 INFO    ] Checking for camera pi updates...
[2026-08-25 08:08:21,340.340 INFO    ] 200
[2026-08-25 08:08:21,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:21,384.384 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:08:21,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:08:21,449.449 INFO    ] No camera update needed
[2026-08-25 08:08:21,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:08:21,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:08:21,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:08:21,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:08:23,507.507 INFO    ] ================================================
[2026-08-25 08:08:23,527.527 INFO    ] Launching Daemon at Tue Aug 25 08:08:23 IST 2026
[2026-08-25 08:08:23,538.538 INFO    ] ================================================
[2026-08-25 08:08:24,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:08:24
[2026-08-25 08:08:24,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:08:24,973.973 INFO    ] Initializing speech engine...
[2026-08-25 08:08:24,983.983 INFO    ] 2026-08-25 08:08:24
[2026-08-25 08:08:25,249.249 INFO    ] 2026-08-25 08:08:25
[2026-08-25 08:08:25,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:08:25,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:08:25,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:08:25,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:08:25,669.669 INFO    ] time= 25/08/2026 08:08:25
[2026-08-25 08:08:25,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:08:25,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:08:25,755.755 INFO    ] No existing commands found in stream
[2026-08-25 08:08:30,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:08:30,770.770 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 08:08:33,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:08:33,485.485 INFO    ] Checking for system updates...
[2026-08-25 08:08:33,520.520 INFO    ] 200
[2026-08-25 08:08:33,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:33,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:08:33,579.579 INFO    ] No update needed
[2026-08-25 08:08:33,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 08:08:33,618.618 INFO    ] 200
[2026-08-25 08:08:33,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:33,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:08:33,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:08:33,712.712 INFO    ] No camera update needed
[2026-08-25 08:08:33,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:08:33,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:08:33,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:08:33,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:08:35,766.766 INFO    ] ================================================
[2026-08-25 08:08:35,781.781 INFO    ] Launching Daemon at Tue Aug 25 08:08:35 IST 2026
[2026-08-25 08:08:35,792.792 INFO    ] ================================================
[2026-08-25 08:08:36,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:08:36
[2026-08-25 08:08:37,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:08:37,451.451 INFO    ] Initializing speech engine...
[2026-08-25 08:08:37,461.461 INFO    ] 2026-08-25 08:08:37
[2026-08-25 08:08:37,746.746 INFO    ] 2026-08-25 08:08:37
[2026-08-25 08:08:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:08:38,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:08:38,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:08:38,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:08:38,283.283 INFO    ] time= 25/08/2026 08:08:38
[2026-08-25 08:08:38,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:08:38,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:08:38,445.445 INFO    ] No existing commands found in stream
[2026-08-25 08:08:43,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:08:43,480.480 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 08:08:47,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:08:47,919.919 INFO    ] Checking for system updates...
[2026-08-25 08:08:47,956.956 INFO    ] 200
[2026-08-25 08:08:47,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:48,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:08:48,015.015 INFO    ] No update needed
[2026-08-25 08:08:48,018.018 INFO    ] Checking for camera pi updates...
[2026-08-25 08:08:48,053.053 INFO    ] 200
[2026-08-25 08:08:48,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:48,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:08:48,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:08:48,151.151 INFO    ] No camera update needed
[2026-08-25 08:08:48,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:08:48,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:08:48,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:08:48,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:08:50,209.209 INFO    ] ================================================
[2026-08-25 08:08:50,225.225 INFO    ] Launching Daemon at Tue Aug 25 08:08:50 IST 2026
[2026-08-25 08:08:50,235.235 INFO    ] ================================================
[2026-08-25 08:08:50,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:08:50
[2026-08-25 08:08:51,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:08:51,663.663 INFO    ] Initializing speech engine...
[2026-08-25 08:08:51,674.674 INFO    ] 2026-08-25 08:08:51
[2026-08-25 08:08:51,917.917 INFO    ] 2026-08-25 08:08:51
[2026-08-25 08:08:51,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:08:52,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:08:52,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:08:52,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:08:52,286.286 INFO    ] time= 25/08/2026 08:08:52
[2026-08-25 08:08:52,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:08:52,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:08:52,475.475 INFO    ] No existing commands found in stream
[2026-08-25 08:08:57,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:08:57,495.495 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 08:08:58,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:08:58,685.685 INFO    ] Checking for system updates...
[2026-08-25 08:08:58,721.721 INFO    ] 200
[2026-08-25 08:08:58,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:58,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:08:58,787.787 INFO    ] No update needed
[2026-08-25 08:08:58,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 08:08:58,822.822 INFO    ] 200
[2026-08-25 08:08:58,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:08:58,864.864 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:08:58,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:08:58,910.910 INFO    ] No camera update needed
[2026-08-25 08:08:58,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:08:58,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:08:58,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:08:58,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:09:00,966.966 INFO    ] ================================================
[2026-08-25 08:09:00,982.982 INFO    ] Launching Daemon at Tue Aug 25 08:09:00 IST 2026
[2026-08-25 08:09:00,993.993 INFO    ] ================================================
[2026-08-25 08:09:01,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:09:01
[2026-08-25 08:09:02,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:09:02,737.737 INFO    ] Initializing speech engine...
[2026-08-25 08:09:02,746.746 INFO    ] 2026-08-25 08:09:02
[2026-08-25 08:09:03,019.019 INFO    ] 2026-08-25 08:09:03
[2026-08-25 08:09:03,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:09:03,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:09:03,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:09:03,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:09:03,390.390 INFO    ] time= 25/08/2026 08:09:03
[2026-08-25 08:09:03,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:09:03,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:09:03,592.592 INFO    ] No existing commands found in stream
[2026-08-25 08:09:08,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:09:08,605.605 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 08:09:12,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:09:12,247.247 INFO    ] Checking for system updates...
[2026-08-25 08:09:12,284.284 INFO    ] 200
[2026-08-25 08:09:12,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:12,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:09:12,341.341 INFO    ] No update needed
[2026-08-25 08:09:12,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 08:09:12,377.377 INFO    ] 200
[2026-08-25 08:09:12,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:12,425.425 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:09:12,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:09:12,474.474 INFO    ] No camera update needed
[2026-08-25 08:09:12,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:09:12,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:09:12,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:09:12,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:09:14,528.528 INFO    ] ================================================
[2026-08-25 08:09:14,543.543 INFO    ] Launching Daemon at Tue Aug 25 08:09:14 IST 2026
[2026-08-25 08:09:14,554.554 INFO    ] ================================================
[2026-08-25 08:09:15,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:09:15
[2026-08-25 08:09:15,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:09:16,195.195 INFO    ] Initializing speech engine...
[2026-08-25 08:09:16,206.206 INFO    ] 2026-08-25 08:09:16
[2026-08-25 08:09:16,496.496 INFO    ] 2026-08-25 08:09:16
[2026-08-25 08:09:16,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:09:16,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:09:16,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:09:17,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:09:17,037.037 INFO    ] time= 25/08/2026 08:09:17
[2026-08-25 08:09:17,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:09:17,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:09:17,196.196 INFO    ] No existing commands found in stream
[2026-08-25 08:09:22,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:09:22,242.242 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 08:09:25,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:09:25,437.437 INFO    ] Checking for system updates...
[2026-08-25 08:09:25,475.475 INFO    ] 200
[2026-08-25 08:09:25,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:25,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:09:25,547.547 INFO    ] No update needed
[2026-08-25 08:09:25,550.550 INFO    ] Checking for camera pi updates...
[2026-08-25 08:09:25,589.589 INFO    ] 200
[2026-08-25 08:09:25,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:25,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:09:25,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:09:25,695.695 INFO    ] No camera update needed
[2026-08-25 08:09:25,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:09:25,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:09:25,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:09:25,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:09:27,752.752 INFO    ] ================================================
[2026-08-25 08:09:27,767.767 INFO    ] Launching Daemon at Tue Aug 25 08:09:27 IST 2026
[2026-08-25 08:09:27,777.777 INFO    ] ================================================
[2026-08-25 08:09:28,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:09:28
[2026-08-25 08:09:28,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:09:29,184.184 INFO    ] Initializing speech engine...
[2026-08-25 08:09:29,193.193 INFO    ] 2026-08-25 08:09:29
[2026-08-25 08:09:29,489.489 INFO    ] 2026-08-25 08:09:29
[2026-08-25 08:09:29,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:09:29,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:09:29,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:09:29,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:09:29,867.867 INFO    ] time= 25/08/2026 08:09:29
[2026-08-25 08:09:29,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:09:29,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:09:29,997.997 INFO    ] No existing commands found in stream
[2026-08-25 08:09:35,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:09:35,012.012 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 08:09:36,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:09:36,254.254 INFO    ] Checking for system updates...
[2026-08-25 08:09:36,290.290 INFO    ] 200
[2026-08-25 08:09:36,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:36,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:09:36,354.354 INFO    ] No update needed
[2026-08-25 08:09:36,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 08:09:36,390.390 INFO    ] 200
[2026-08-25 08:09:36,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:36,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:09:36,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:09:36,489.489 INFO    ] No camera update needed
[2026-08-25 08:09:36,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:09:36,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:09:36,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:09:36,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:09:38,546.546 INFO    ] ================================================
[2026-08-25 08:09:38,561.561 INFO    ] Launching Daemon at Tue Aug 25 08:09:38 IST 2026
[2026-08-25 08:09:38,572.572 INFO    ] ================================================
[2026-08-25 08:09:39,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:09:39
[2026-08-25 08:09:39,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:09:40,097.097 INFO    ] Initializing speech engine...
[2026-08-25 08:09:40,111.111 INFO    ] 2026-08-25 08:09:40
[2026-08-25 08:09:40,401.401 INFO    ] 2026-08-25 08:09:40
[2026-08-25 08:09:40,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:09:40,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:09:40,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:09:40,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:09:40,800.800 INFO    ] time= 25/08/2026 08:09:40
[2026-08-25 08:09:40,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:09:40,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:09:40,909.909 INFO    ] No existing commands found in stream
[2026-08-25 08:09:45,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:09:45,924.924 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 08:09:48,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:09:48,335.335 INFO    ] Checking for system updates...
[2026-08-25 08:09:48,371.371 INFO    ] 200
[2026-08-25 08:09:48,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:48,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:09:48,429.429 INFO    ] No update needed
[2026-08-25 08:09:48,431.431 INFO    ] Checking for camera pi updates...
[2026-08-25 08:09:48,470.470 INFO    ] 200
[2026-08-25 08:09:48,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:48,514.514 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:09:48,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:09:48,566.566 INFO    ] No camera update needed
[2026-08-25 08:09:48,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:09:48,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:09:48,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:09:48,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:09:50,624.624 INFO    ] ================================================
[2026-08-25 08:09:50,639.639 INFO    ] Launching Daemon at Tue Aug 25 08:09:50 IST 2026
[2026-08-25 08:09:50,650.650 INFO    ] ================================================
[2026-08-25 08:09:51,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:09:51
[2026-08-25 08:09:51,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:09:52,083.083 INFO    ] Initializing speech engine...
[2026-08-25 08:09:52,093.093 INFO    ] 2026-08-25 08:09:52
[2026-08-25 08:09:52,341.341 INFO    ] 2026-08-25 08:09:52
[2026-08-25 08:09:52,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:09:52,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:09:52,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:09:52,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:09:52,817.817 INFO    ] time= 25/08/2026 08:09:52
[2026-08-25 08:09:52,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:09:52,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:09:53,014.014 INFO    ] No existing commands found in stream
[2026-08-25 08:09:58,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:09:58,044.044 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 08:09:59,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:09:59,518.518 INFO    ] Checking for system updates...
[2026-08-25 08:09:59,554.554 INFO    ] 200
[2026-08-25 08:09:59,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:59,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:09:59,612.612 INFO    ] No update needed
[2026-08-25 08:09:59,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 08:09:59,648.648 INFO    ] 200
[2026-08-25 08:09:59,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:09:59,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:09:59,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:09:59,743.743 INFO    ] No camera update needed
[2026-08-25 08:09:59,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:09:59,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:09:59,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:09:59,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:10:01,811.811 INFO    ] ================================================
[2026-08-25 08:10:01,854.854 INFO    ] Launching Daemon at Tue Aug 25 08:10:01 IST 2026
[2026-08-25 08:10:01,886.886 INFO    ] ================================================
[2026-08-25 08:10:02,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:10:02
[2026-08-25 08:10:03,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:10:03,516.516 INFO    ] Initializing speech engine...
[2026-08-25 08:10:03,525.525 INFO    ] 2026-08-25 08:10:03
[2026-08-25 08:10:03,773.773 INFO    ] 2026-08-25 08:10:03
[2026-08-25 08:10:03,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:10:03,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:10:03,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:10:04,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:10:04,146.146 INFO    ] time= 25/08/2026 08:10:04
[2026-08-25 08:10:04,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:10:04,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:10:04,333.333 INFO    ] No existing commands found in stream
[2026-08-25 08:10:09,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:10:09,356.356 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 08:10:13,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:10:13,213.213 INFO    ] Checking for system updates...
[2026-08-25 08:10:13,252.252 INFO    ] 200
[2026-08-25 08:10:13,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:13,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:10:13,310.310 INFO    ] No update needed
[2026-08-25 08:10:13,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 08:10:13,346.346 INFO    ] 200
[2026-08-25 08:10:13,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:13,389.389 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:10:13,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:10:13,440.440 INFO    ] No camera update needed
[2026-08-25 08:10:13,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:10:13,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:10:13,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:10:13,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:10:15,495.495 INFO    ] ================================================
[2026-08-25 08:10:15,510.510 INFO    ] Launching Daemon at Tue Aug 25 08:10:15 IST 2026
[2026-08-25 08:10:15,521.521 INFO    ] ================================================
[2026-08-25 08:10:16,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:10:16
[2026-08-25 08:10:16,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:10:17,157.157 INFO    ] Initializing speech engine...
[2026-08-25 08:10:17,169.169 INFO    ] 2026-08-25 08:10:17
[2026-08-25 08:10:17,457.457 INFO    ] 2026-08-25 08:10:17
[2026-08-25 08:10:17,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:10:17,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:10:17,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:10:17,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:10:17,935.935 INFO    ] time= 25/08/2026 08:10:17
[2026-08-25 08:10:17,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:10:18,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:10:18,148.148 INFO    ] No existing commands found in stream
[2026-08-25 08:10:23,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:10:23,172.172 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 08:10:26,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:10:26,931.931 INFO    ] Checking for system updates...
[2026-08-25 08:10:26,967.967 INFO    ] 200
[2026-08-25 08:10:26,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:27,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:10:27,025.025 INFO    ] No update needed
[2026-08-25 08:10:27,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 08:10:27,062.062 INFO    ] 200
[2026-08-25 08:10:27,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:27,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:10:27,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:10:27,153.153 INFO    ] No camera update needed
[2026-08-25 08:10:27,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:10:27,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:10:27,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:10:27,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:10:29,206.206 INFO    ] ================================================
[2026-08-25 08:10:29,221.221 INFO    ] Launching Daemon at Tue Aug 25 08:10:29 IST 2026
[2026-08-25 08:10:29,232.232 INFO    ] ================================================
[2026-08-25 08:10:29,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:10:29
[2026-08-25 08:10:30,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:10:30,691.691 INFO    ] Initializing speech engine...
[2026-08-25 08:10:30,696.696 INFO    ] 2026-08-25 08:10:30
[2026-08-25 08:10:30,958.958 INFO    ] 2026-08-25 08:10:30
[2026-08-25 08:10:31,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:10:31,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:10:31,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:10:31,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:10:31,457.457 INFO    ] time= 25/08/2026 08:10:31
[2026-08-25 08:10:31,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:10:31,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:10:31,677.677 INFO    ] No existing commands found in stream
[2026-08-25 08:10:36,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:10:36,703.703 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 08:10:38,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:10:38,969.969 INFO    ] Checking for system updates...
[2026-08-25 08:10:39,008.008 INFO    ] 200
[2026-08-25 08:10:39,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:39,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:10:39,068.068 INFO    ] No update needed
[2026-08-25 08:10:39,071.071 INFO    ] Checking for camera pi updates...
[2026-08-25 08:10:39,105.105 INFO    ] 200
[2026-08-25 08:10:39,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:39,154.154 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:10:39,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:10:39,299.299 INFO    ] No camera update needed
[2026-08-25 08:10:39,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:10:39,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:10:39,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:10:39,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:10:41,358.358 INFO    ] ================================================
[2026-08-25 08:10:41,373.373 INFO    ] Launching Daemon at Tue Aug 25 08:10:41 IST 2026
[2026-08-25 08:10:41,384.384 INFO    ] ================================================
[2026-08-25 08:10:43,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:10:41
[2026-08-25 08:10:43,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:10:43,911.911 INFO    ] Initializing speech engine...
[2026-08-25 08:10:43,917.917 INFO    ] 2026-08-25 08:10:43
[2026-08-25 08:10:44,167.167 INFO    ] 2026-08-25 08:10:44
[2026-08-25 08:10:44,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:10:44,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:10:44,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:10:44,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:10:44,658.658 INFO    ] time= 25/08/2026 08:10:44
[2026-08-25 08:10:44,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:10:44,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:10:44,872.872 INFO    ] No existing commands found in stream
[2026-08-25 08:10:49,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:10:50,009.009 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 08:10:54,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:10:54,059.059 INFO    ] Checking for system updates...
[2026-08-25 08:10:54,096.096 INFO    ] 200
[2026-08-25 08:10:54,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:54,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:10:54,162.162 INFO    ] No update needed
[2026-08-25 08:10:54,164.164 INFO    ] Checking for camera pi updates...
[2026-08-25 08:10:54,201.201 INFO    ] 200
[2026-08-25 08:10:54,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:10:54,251.251 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:10:54,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:10:54,302.302 INFO    ] No camera update needed
[2026-08-25 08:10:54,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:10:54,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:10:54,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:10:54,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:10:56,359.359 INFO    ] ================================================
[2026-08-25 08:10:56,374.374 INFO    ] Launching Daemon at Tue Aug 25 08:10:56 IST 2026
[2026-08-25 08:10:56,385.385 INFO    ] ================================================
[2026-08-25 08:10:57,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:10:57
[2026-08-25 08:10:57,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:10:57,964.964 INFO    ] Initializing speech engine...
[2026-08-25 08:10:57,974.974 INFO    ] 2026-08-25 08:10:57
[2026-08-25 08:10:58,242.242 INFO    ] 2026-08-25 08:10:58
[2026-08-25 08:10:58,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:10:58,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:10:58,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:10:58,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:10:58,619.619 INFO    ] time= 25/08/2026 08:10:58
[2026-08-25 08:10:58,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:10:58,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:10:58,742.742 INFO    ] No existing commands found in stream
[2026-08-25 08:11:03,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:11:03,758.758 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 08:11:08,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:11:08,098.098 INFO    ] Checking for system updates...
[2026-08-25 08:11:08,137.137 INFO    ] 200
[2026-08-25 08:11:08,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:08,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:08,195.195 INFO    ] No update needed
[2026-08-25 08:11:08,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 08:11:08,230.230 INFO    ] 200
[2026-08-25 08:11:08,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:08,273.273 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:11:08,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:08,320.320 INFO    ] No camera update needed
[2026-08-25 08:11:08,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:11:08,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:11:08,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:11:08,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:11:10,375.375 INFO    ] ================================================
[2026-08-25 08:11:10,391.391 INFO    ] Launching Daemon at Tue Aug 25 08:11:10 IST 2026
[2026-08-25 08:11:10,403.403 INFO    ] ================================================
[2026-08-25 08:11:10,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:11:10
[2026-08-25 08:11:11,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:11:11,860.860 INFO    ] Initializing speech engine...
[2026-08-25 08:11:11,867.867 INFO    ] 2026-08-25 08:11:11
[2026-08-25 08:11:12,126.126 INFO    ] 2026-08-25 08:11:12
[2026-08-25 08:11:12,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:11:12,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:11:12,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:11:12,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:11:12,591.591 INFO    ] time= 25/08/2026 08:11:12
[2026-08-25 08:11:12,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:11:12,677.677 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:11:12,756.756 INFO    ] No existing commands found in stream
[2026-08-25 08:11:17,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:11:17,796.796 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 08:11:21,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:11:21,709.709 INFO    ] Checking for system updates...
[2026-08-25 08:11:21,745.745 INFO    ] 200
[2026-08-25 08:11:21,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:21,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:21,802.802 INFO    ] No update needed
[2026-08-25 08:11:21,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 08:11:21,837.837 INFO    ] 200
[2026-08-25 08:11:21,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:21,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:11:21,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:21,935.935 INFO    ] No camera update needed
[2026-08-25 08:11:21,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:11:21,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:11:21,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:11:21,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:11:23,990.990 INFO    ] ================================================
[2026-08-25 08:11:24,006.006 INFO    ] Launching Daemon at Tue Aug 25 08:11:24 IST 2026
[2026-08-25 08:11:24,017.017 INFO    ] ================================================
[2026-08-25 08:11:24,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:11:24
[2026-08-25 08:11:25,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:11:25,496.496 INFO    ] Initializing speech engine...
[2026-08-25 08:11:25,508.508 INFO    ] 2026-08-25 08:11:25
[2026-08-25 08:11:25,812.812 INFO    ] 2026-08-25 08:11:25
[2026-08-25 08:11:25,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:11:26,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:11:26,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:11:26,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:11:26,320.320 INFO    ] time= 25/08/2026 08:11:26
[2026-08-25 08:11:26,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:11:26,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:11:26,488.488 INFO    ] No existing commands found in stream
[2026-08-25 08:11:31,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:11:31,520.520 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 08:11:34,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:11:34,991.991 INFO    ] Checking for system updates...
[2026-08-25 08:11:35,027.027 INFO    ] 200
[2026-08-25 08:11:35,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:35,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:35,089.089 INFO    ] No update needed
[2026-08-25 08:11:35,091.091 INFO    ] Checking for camera pi updates...
[2026-08-25 08:11:35,126.126 INFO    ] 200
[2026-08-25 08:11:35,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:35,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:11:35,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:35,219.219 INFO    ] No camera update needed
[2026-08-25 08:11:35,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:11:35,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:11:35,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:11:35,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:11:37,274.274 INFO    ] ================================================
[2026-08-25 08:11:37,289.289 INFO    ] Launching Daemon at Tue Aug 25 08:11:37 IST 2026
[2026-08-25 08:11:37,300.300 INFO    ] ================================================
[2026-08-25 08:11:37,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:11:37
[2026-08-25 08:11:38,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:11:38,698.698 INFO    ] Initializing speech engine...
[2026-08-25 08:11:38,701.701 INFO    ] 2026-08-25 08:11:38
[2026-08-25 08:11:38,994.994 INFO    ] 2026-08-25 08:11:38
[2026-08-25 08:11:39,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:11:39,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:11:39,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:11:39,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:11:39,382.382 INFO    ] time= 25/08/2026 08:11:39
[2026-08-25 08:11:39,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:11:39,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:11:39,552.552 INFO    ] No existing commands found in stream
[2026-08-25 08:11:44,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:11:44,580.580 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 08:11:48,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:11:48,858.858 INFO    ] Checking for system updates...
[2026-08-25 08:11:48,893.893 INFO    ] 200
[2026-08-25 08:11:48,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:48,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:48,957.957 INFO    ] No update needed
[2026-08-25 08:11:48,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 08:11:48,993.993 INFO    ] 200
[2026-08-25 08:11:48,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:11:49,036.036 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:11:49,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:11:49,081.081 INFO    ] No camera update needed
[2026-08-25 08:11:49,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:11:49,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:11:49,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:11:49,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:11:51,136.136 INFO    ] ================================================
[2026-08-25 08:11:51,155.155 INFO    ] Launching Daemon at Tue Aug 25 08:11:51 IST 2026
[2026-08-25 08:11:51,166.166 INFO    ] ================================================
[2026-08-25 08:11:51,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:11:51
[2026-08-25 08:11:52,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:11:52,577.577 INFO    ] Initializing speech engine...
[2026-08-25 08:11:52,584.584 INFO    ] 2026-08-25 08:11:52
[2026-08-25 08:11:52,876.876 INFO    ] 2026-08-25 08:11:52
[2026-08-25 08:11:52,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:11:53,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:11:53,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:11:53,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:11:53,269.269 INFO    ] time= 25/08/2026 08:11:53
[2026-08-25 08:11:53,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:11:53,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:11:53,351.351 INFO    ] No existing commands found in stream
[2026-08-25 08:11:58,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:11:58,389.389 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 08:12:00,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:12:00,313.313 INFO    ] Checking for system updates...
[2026-08-25 08:12:00,365.365 INFO    ] 200
[2026-08-25 08:12:00,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:00,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:00,428.428 INFO    ] No update needed
[2026-08-25 08:12:00,430.430 INFO    ] Checking for camera pi updates...
[2026-08-25 08:12:00,463.463 INFO    ] 200
[2026-08-25 08:12:00,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:00,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:12:00,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:00,559.559 INFO    ] No camera update needed
[2026-08-25 08:12:00,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:12:00,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:12:00,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:12:00,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:12:02,622.622 INFO    ] ================================================
[2026-08-25 08:12:02,644.644 INFO    ] Launching Daemon at Tue Aug 25 08:12:02 IST 2026
[2026-08-25 08:12:02,658.658 INFO    ] ================================================
[2026-08-25 08:12:03,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:12:03
[2026-08-25 08:12:03,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:12:04,299.299 INFO    ] Initializing speech engine...
[2026-08-25 08:12:04,310.310 INFO    ] 2026-08-25 08:12:04
[2026-08-25 08:12:04,621.621 INFO    ] 2026-08-25 08:12:04
[2026-08-25 08:12:04,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:12:04,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:12:04,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:12:05,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:12:05,138.138 INFO    ] time= 25/08/2026 08:12:05
[2026-08-25 08:12:05,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:12:05,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:12:05,283.283 INFO    ] No existing commands found in stream
[2026-08-25 08:12:10,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:12:10,310.310 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 08:12:11,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:12:11,923.923 INFO    ] Checking for system updates...
[2026-08-25 08:12:11,960.960 INFO    ] 200
[2026-08-25 08:12:11,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:12,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:12,018.018 INFO    ] No update needed
[2026-08-25 08:12:12,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 08:12:12,055.055 INFO    ] 200
[2026-08-25 08:12:12,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:12,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:12:12,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:12,152.152 INFO    ] No camera update needed
[2026-08-25 08:12:12,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:12:12,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:12:12,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:12:12,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:12:14,210.210 INFO    ] ================================================
[2026-08-25 08:12:14,226.226 INFO    ] Launching Daemon at Tue Aug 25 08:12:14 IST 2026
[2026-08-25 08:12:14,236.236 INFO    ] ================================================
[2026-08-25 08:12:14,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:12:14
[2026-08-25 08:12:15,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:12:15,830.830 INFO    ] Initializing speech engine...
[2026-08-25 08:12:15,837.837 INFO    ] 2026-08-25 08:12:15
[2026-08-25 08:12:16,113.113 INFO    ] 2026-08-25 08:12:16
[2026-08-25 08:12:16,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:12:16,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:12:16,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:12:16,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:12:16,664.664 INFO    ] time= 25/08/2026 08:12:16
[2026-08-25 08:12:16,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:12:16,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:12:16,819.819 INFO    ] No existing commands found in stream
[2026-08-25 08:12:21,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:12:21,842.842 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 08:12:25,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:12:25,949.949 INFO    ] Checking for system updates...
[2026-08-25 08:12:25,988.988 INFO    ] 200
[2026-08-25 08:12:25,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:26,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:26,054.054 INFO    ] No update needed
[2026-08-25 08:12:26,057.057 INFO    ] Checking for camera pi updates...
[2026-08-25 08:12:26,095.095 INFO    ] 200
[2026-08-25 08:12:26,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:26,138.138 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:12:26,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:26,203.203 INFO    ] No camera update needed
[2026-08-25 08:12:26,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:12:26,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:12:26,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:12:26,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:12:28,261.261 INFO    ] ================================================
[2026-08-25 08:12:28,277.277 INFO    ] Launching Daemon at Tue Aug 25 08:12:28 IST 2026
[2026-08-25 08:12:28,288.288 INFO    ] ================================================
[2026-08-25 08:12:28,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:12:28
[2026-08-25 08:12:29,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:12:29,753.753 INFO    ] Initializing speech engine...
[2026-08-25 08:12:29,765.765 INFO    ] 2026-08-25 08:12:29
[2026-08-25 08:12:30,034.034 INFO    ] 2026-08-25 08:12:30
[2026-08-25 08:12:30,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:12:30,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:12:30,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:12:30,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:12:30,536.536 INFO    ] time= 25/08/2026 08:12:30
[2026-08-25 08:12:30,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:12:30,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:12:30,759.759 INFO    ] No existing commands found in stream
[2026-08-25 08:12:35,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:12:35,795.795 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 08:12:36,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:12:36,522.522 INFO    ] Checking for system updates...
[2026-08-25 08:12:36,559.559 INFO    ] 200
[2026-08-25 08:12:36,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:36,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:12:36,625.625 INFO    ] No update needed
[2026-08-25 08:12:36,628.628 INFO    ] Checking for camera pi updates...
[2026-08-25 08:12:36,663.663 INFO    ] 200
[2026-08-25 08:12:36,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:36,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:12:36,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:12:36,770.770 INFO    ] No camera update needed
[2026-08-25 08:12:36,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:12:36,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:12:36,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:12:36,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:12:38,825.825 INFO    ] ================================================
[2026-08-25 08:12:38,840.840 INFO    ] Launching Daemon at Tue Aug 25 08:12:38 IST 2026
[2026-08-25 08:12:38,851.851 INFO    ] ================================================
[2026-08-25 08:12:39,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:12:39
[2026-08-25 08:12:40,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:12:40,455.455 INFO    ] Initializing speech engine...
[2026-08-25 08:12:40,460.460 INFO    ] 2026-08-25 08:12:40
[2026-08-25 08:12:40,738.738 INFO    ] 2026-08-25 08:12:40
[2026-08-25 08:12:40,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:12:41,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:12:41,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:12:41,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:12:41,196.196 INFO    ] time= 25/08/2026 08:12:41
[2026-08-25 08:12:41,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:12:41,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:12:41,422.422 INFO    ] No existing commands found in stream
[2026-08-25 08:12:46,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:12:46,452.452 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 08:12:50,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:12:50,734.734 INFO    ] Checking for system updates...
[2026-08-25 08:12:50,769.769 INFO    ] 200
[2026-08-25 08:12:50,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:50,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:50,828.828 INFO    ] No update needed
[2026-08-25 08:12:50,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 08:12:50,863.863 INFO    ] 200
[2026-08-25 08:12:50,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:12:50,907.907 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:12:51,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:12:51,053.053 INFO    ] No camera update needed
[2026-08-25 08:12:51,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:12:51,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:12:51,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:12:51,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:12:53,107.107 INFO    ] ================================================
[2026-08-25 08:12:53,122.122 INFO    ] Launching Daemon at Tue Aug 25 08:12:53 IST 2026
[2026-08-25 08:12:53,133.133 INFO    ] ================================================
[2026-08-25 08:12:53,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:12:53
[2026-08-25 08:12:54,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:12:54,555.555 INFO    ] Initializing speech engine...
[2026-08-25 08:12:54,564.564 INFO    ] 2026-08-25 08:12:54
[2026-08-25 08:12:54,819.819 INFO    ] 2026-08-25 08:12:54
[2026-08-25 08:12:54,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:12:55,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:12:55,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:12:55,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:12:55,276.276 INFO    ] time= 25/08/2026 08:12:55
[2026-08-25 08:12:55,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:12:55,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:12:55,499.499 INFO    ] No existing commands found in stream
[2026-08-25 08:13:00,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:13:00,526.526 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 08:13:01,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:13:01,742.742 INFO    ] Checking for system updates...
[2026-08-25 08:13:01,809.809 INFO    ] 200
[2026-08-25 08:13:01,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:01,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:13:01,913.913 INFO    ] No update needed
[2026-08-25 08:13:01,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 08:13:01,970.970 INFO    ] 200
[2026-08-25 08:13:01,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:02,019.019 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:13:02,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:13:02,080.080 INFO    ] No camera update needed
[2026-08-25 08:13:02,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:13:02,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:13:02,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:13:02,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:13:04,140.140 INFO    ] ================================================
[2026-08-25 08:13:04,155.155 INFO    ] Launching Daemon at Tue Aug 25 08:13:04 IST 2026
[2026-08-25 08:13:04,165.165 INFO    ] ================================================
[2026-08-25 08:13:04,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:13:04
[2026-08-25 08:13:05,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:13:05,699.699 INFO    ] Initializing speech engine...
[2026-08-25 08:13:05,707.707 INFO    ] 2026-08-25 08:13:05
[2026-08-25 08:13:05,973.973 INFO    ] 2026-08-25 08:13:05
[2026-08-25 08:13:06,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:13:06,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:13:06,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:13:06,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:13:06,427.427 INFO    ] time= 25/08/2026 08:13:06
[2026-08-25 08:13:06,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:13:06,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:13:06,641.641 INFO    ] No existing commands found in stream
[2026-08-25 08:13:11,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:13:11,675.675 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 08:13:13,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:13:13,388.388 INFO    ] Checking for system updates...
[2026-08-25 08:13:13,425.425 INFO    ] 200
[2026-08-25 08:13:13,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:13,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:13:13,492.492 INFO    ] No update needed
[2026-08-25 08:13:13,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 08:13:13,529.529 INFO    ] 200
[2026-08-25 08:13:13,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:13,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:13:13,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:13:13,626.626 INFO    ] No camera update needed
[2026-08-25 08:13:13,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:13:13,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:13:13,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:13:13,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:13:15,686.686 INFO    ] ================================================
[2026-08-25 08:13:15,701.701 INFO    ] Launching Daemon at Tue Aug 25 08:13:15 IST 2026
[2026-08-25 08:13:15,712.712 INFO    ] ================================================
[2026-08-25 08:13:16,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:13:16
[2026-08-25 08:13:16,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:13:17,173.173 INFO    ] Initializing speech engine...
[2026-08-25 08:13:17,182.182 INFO    ] 2026-08-25 08:13:17
[2026-08-25 08:13:17,491.491 INFO    ] 2026-08-25 08:13:17
[2026-08-25 08:13:17,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:13:17,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:13:17,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:13:17,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:13:18,000.000 INFO    ] time= 25/08/2026 08:13:17
[2026-08-25 08:13:18,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:13:18,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:13:18,179.179 INFO    ] No existing commands found in stream
[2026-08-25 08:13:23,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:13:23,213.213 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 08:13:24,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:13:24,607.607 INFO    ] Checking for system updates...
[2026-08-25 08:13:24,643.643 INFO    ] 200
[2026-08-25 08:13:24,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:24,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:13:24,701.701 INFO    ] No update needed
[2026-08-25 08:13:24,704.704 INFO    ] Checking for camera pi updates...
[2026-08-25 08:13:24,738.738 INFO    ] 200
[2026-08-25 08:13:24,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:24,783.783 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:13:24,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:13:24,833.833 INFO    ] No camera update needed
[2026-08-25 08:13:24,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:13:24,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:13:24,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:13:24,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:13:26,892.892 INFO    ] ================================================
[2026-08-25 08:13:26,908.908 INFO    ] Launching Daemon at Tue Aug 25 08:13:26 IST 2026
[2026-08-25 08:13:26,919.919 INFO    ] ================================================
[2026-08-25 08:13:27,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:13:27
[2026-08-25 08:13:28,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:13:28,319.319 INFO    ] Initializing speech engine...
[2026-08-25 08:13:28,334.334 INFO    ] 2026-08-25 08:13:28
[2026-08-25 08:13:28,621.621 INFO    ] 2026-08-25 08:13:28
[2026-08-25 08:13:28,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:13:28,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:13:28,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:13:29,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:13:29,041.041 INFO    ] time= 25/08/2026 08:13:29
[2026-08-25 08:13:29,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:13:29,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:13:29,131.131 INFO    ] No existing commands found in stream
[2026-08-25 08:13:34,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:13:34,146.146 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 08:13:38,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:13:38,461.461 INFO    ] Checking for system updates...
[2026-08-25 08:13:38,496.496 INFO    ] 200
[2026-08-25 08:13:38,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:38,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:13:38,554.554 INFO    ] No update needed
[2026-08-25 08:13:38,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 08:13:38,590.590 INFO    ] 200
[2026-08-25 08:13:38,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:38,633.633 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:13:38,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:13:38,682.682 INFO    ] No camera update needed
[2026-08-25 08:13:38,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:13:38,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:13:38,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:13:38,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:13:40,736.736 INFO    ] ================================================
[2026-08-25 08:13:40,751.751 INFO    ] Launching Daemon at Tue Aug 25 08:13:40 IST 2026
[2026-08-25 08:13:40,762.762 INFO    ] ================================================
[2026-08-25 08:13:41,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:13:41
[2026-08-25 08:13:41,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:13:42,163.163 INFO    ] Initializing speech engine...
[2026-08-25 08:13:42,178.178 INFO    ] 2026-08-25 08:13:42
[2026-08-25 08:13:42,444.444 INFO    ] 2026-08-25 08:13:42
[2026-08-25 08:13:42,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:13:42,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:13:42,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:13:42,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:13:42,820.820 INFO    ] time= 25/08/2026 08:13:42
[2026-08-25 08:13:42,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:13:42,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:13:43,007.007 INFO    ] No existing commands found in stream
[2026-08-25 08:13:48,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:13:48,030.030 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 08:13:49,583.583 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:13:49,586.586 INFO    ] Checking for system updates...
[2026-08-25 08:13:49,621.621 INFO    ] 200
[2026-08-25 08:13:49,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:49,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:13:49,679.679 INFO    ] No update needed
[2026-08-25 08:13:49,681.681 INFO    ] Checking for camera pi updates...
[2026-08-25 08:13:49,714.714 INFO    ] 200
[2026-08-25 08:13:49,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:13:49,756.756 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:13:49,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:13:49,804.804 INFO    ] No camera update needed
[2026-08-25 08:13:49,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:13:49,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:13:49,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:13:49,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:13:51,861.861 INFO    ] ================================================
[2026-08-25 08:13:51,876.876 INFO    ] Launching Daemon at Tue Aug 25 08:13:51 IST 2026
[2026-08-25 08:13:51,887.887 INFO    ] ================================================
[2026-08-25 08:13:52,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:13:52
[2026-08-25 08:13:53,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:13:53,317.317 INFO    ] Initializing speech engine...
[2026-08-25 08:13:53,333.333 INFO    ] 2026-08-25 08:13:53
[2026-08-25 08:13:53,605.605 INFO    ] 2026-08-25 08:13:53
[2026-08-25 08:13:53,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:13:53,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:13:53,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:13:53,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:13:54,003.003 INFO    ] time= 25/08/2026 08:13:53
[2026-08-25 08:13:54,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:13:54,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:13:54,193.193 INFO    ] No existing commands found in stream
[2026-08-25 08:13:59,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:13:59,216.216 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 08:14:00,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:14:00,603.603 INFO    ] Checking for system updates...
[2026-08-25 08:14:00,642.642 INFO    ] 200
[2026-08-25 08:14:00,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:00,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:14:00,699.699 INFO    ] No update needed
[2026-08-25 08:14:00,701.701 INFO    ] Checking for camera pi updates...
[2026-08-25 08:14:00,734.734 INFO    ] 200
[2026-08-25 08:14:00,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:00,776.776 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:14:00,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:14:00,829.829 INFO    ] No camera update needed
[2026-08-25 08:14:00,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:14:00,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:14:00,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:14:00,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:14:02,888.888 INFO    ] ================================================
[2026-08-25 08:14:02,908.908 INFO    ] Launching Daemon at Tue Aug 25 08:14:02 IST 2026
[2026-08-25 08:14:02,922.922 INFO    ] ================================================
[2026-08-25 08:14:03,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:14:03
[2026-08-25 08:14:04,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:14:04,349.349 INFO    ] Initializing speech engine...
[2026-08-25 08:14:04,373.373 INFO    ] 2026-08-25 08:14:04
[2026-08-25 08:14:04,630.630 INFO    ] 2026-08-25 08:14:04
[2026-08-25 08:14:04,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:14:04,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:14:04,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:14:04,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:14:05,007.007 INFO    ] time= 25/08/2026 08:14:05
[2026-08-25 08:14:05,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:14:05,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:14:05,188.188 INFO    ] No existing commands found in stream
[2026-08-25 08:14:10,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:14:10,221.221 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 08:14:14,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:14:14,679.679 INFO    ] Checking for system updates...
[2026-08-25 08:14:14,715.715 INFO    ] 200
[2026-08-25 08:14:14,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:14,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:14:14,772.772 INFO    ] No update needed
[2026-08-25 08:14:14,774.774 INFO    ] Checking for camera pi updates...
[2026-08-25 08:14:14,808.808 INFO    ] 200
[2026-08-25 08:14:14,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:14,851.851 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:14:14,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:14:14,905.905 INFO    ] No camera update needed
[2026-08-25 08:14:14,908.908 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:14:14,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:14:14,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:14:14,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:14:16,960.960 INFO    ] ================================================
[2026-08-25 08:14:16,975.975 INFO    ] Launching Daemon at Tue Aug 25 08:14:16 IST 2026
[2026-08-25 08:14:16,986.986 INFO    ] ================================================
[2026-08-25 08:14:17,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:14:17
[2026-08-25 08:14:18,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:14:18,468.468 INFO    ] Initializing speech engine...
[2026-08-25 08:14:18,476.476 INFO    ] 2026-08-25 08:14:18
[2026-08-25 08:14:18,776.776 INFO    ] 2026-08-25 08:14:18
[2026-08-25 08:14:18,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:14:19,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:14:19,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:14:19,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:14:19,207.207 INFO    ] time= 25/08/2026 08:14:19
[2026-08-25 08:14:19,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:14:19,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:14:19,293.293 INFO    ] No existing commands found in stream
[2026-08-25 08:14:24,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:14:24,309.309 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 08:14:25,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:14:25,895.895 INFO    ] Checking for system updates...
[2026-08-25 08:14:25,935.935 INFO    ] 200
[2026-08-25 08:14:25,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:25,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:14:25,992.992 INFO    ] No update needed
[2026-08-25 08:14:25,994.994 INFO    ] Checking for camera pi updates...
[2026-08-25 08:14:26,029.029 INFO    ] 200
[2026-08-25 08:14:26,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:26,084.084 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:14:26,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:14:26,143.143 INFO    ] No camera update needed
[2026-08-25 08:14:26,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:14:26,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:14:26,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:14:26,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:14:28,197.197 INFO    ] ================================================
[2026-08-25 08:14:28,213.213 INFO    ] Launching Daemon at Tue Aug 25 08:14:28 IST 2026
[2026-08-25 08:14:28,223.223 INFO    ] ================================================
[2026-08-25 08:14:28,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:14:28
[2026-08-25 08:14:29,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:14:29,640.640 INFO    ] Initializing speech engine...
[2026-08-25 08:14:29,648.648 INFO    ] 2026-08-25 08:14:29
[2026-08-25 08:14:29,897.897 INFO    ] 2026-08-25 08:14:29
[2026-08-25 08:14:29,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:14:30,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:14:30,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:14:30,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:14:30,336.336 INFO    ] time= 25/08/2026 08:14:30
[2026-08-25 08:14:30,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:14:30,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:14:30,575.575 INFO    ] No existing commands found in stream
[2026-08-25 08:14:35,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:14:35,605.605 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 08:14:38,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:14:38,662.662 INFO    ] Checking for system updates...
[2026-08-25 08:14:38,698.698 INFO    ] 200
[2026-08-25 08:14:38,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:38,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:14:38,759.759 INFO    ] No update needed
[2026-08-25 08:14:38,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 08:14:38,795.795 INFO    ] 200
[2026-08-25 08:14:38,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:38,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:14:38,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:14:38,893.893 INFO    ] No camera update needed
[2026-08-25 08:14:38,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:14:38,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:14:38,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:14:38,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:14:40,948.948 INFO    ] ================================================
[2026-08-25 08:14:40,962.962 INFO    ] Launching Daemon at Tue Aug 25 08:14:40 IST 2026
[2026-08-25 08:14:40,973.973 INFO    ] ================================================
[2026-08-25 08:14:41,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:14:41
[2026-08-25 08:14:42,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:14:42,632.632 INFO    ] Initializing speech engine...
[2026-08-25 08:14:42,637.637 INFO    ] 2026-08-25 08:14:42
[2026-08-25 08:14:42,950.950 INFO    ] 2026-08-25 08:14:42
[2026-08-25 08:14:43,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:14:43,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:14:43,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:14:43,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:14:43,454.454 INFO    ] time= 25/08/2026 08:14:43
[2026-08-25 08:14:43,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:14:43,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:14:43,624.624 INFO    ] No existing commands found in stream
[2026-08-25 08:14:48,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:14:48,660.660 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 08:14:52,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:14:52,044.044 INFO    ] Checking for system updates...
[2026-08-25 08:14:52,081.081 INFO    ] 200
[2026-08-25 08:14:52,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:52,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:14:52,140.140 INFO    ] No update needed
[2026-08-25 08:14:52,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 08:14:52,178.178 INFO    ] 200
[2026-08-25 08:14:52,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:14:52,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:14:52,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:14:52,274.274 INFO    ] No camera update needed
[2026-08-25 08:14:52,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:14:52,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:14:52,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:14:52,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:14:54,335.335 INFO    ] ================================================
[2026-08-25 08:14:54,349.349 INFO    ] Launching Daemon at Tue Aug 25 08:14:54 IST 2026
[2026-08-25 08:14:54,360.360 INFO    ] ================================================
[2026-08-25 08:14:54,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:14:54
[2026-08-25 08:14:55,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:14:55,813.813 INFO    ] Initializing speech engine...
[2026-08-25 08:14:55,822.822 INFO    ] 2026-08-25 08:14:55
[2026-08-25 08:14:56,073.073 INFO    ] 2026-08-25 08:14:56
[2026-08-25 08:14:56,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:14:56,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:14:56,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:14:56,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:14:56,450.450 INFO    ] time= 25/08/2026 08:14:56
[2026-08-25 08:14:56,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:14:56,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:14:56,637.637 INFO    ] No existing commands found in stream
[2026-08-25 08:15:01,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:15:01,667.667 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 08:15:02,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:15:02,851.851 INFO    ] Checking for system updates...
[2026-08-25 08:15:02,897.897 INFO    ] 200
[2026-08-25 08:15:02,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:02,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:15:02,978.978 INFO    ] No update needed
[2026-08-25 08:15:02,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 08:15:03,022.022 INFO    ] 200
[2026-08-25 08:15:03,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:03,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:15:03,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:15:03,163.163 INFO    ] No camera update needed
[2026-08-25 08:15:03,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:15:03,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:15:03,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:15:03,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:15:05,222.222 INFO    ] ================================================
[2026-08-25 08:15:05,238.238 INFO    ] Launching Daemon at Tue Aug 25 08:15:05 IST 2026
[2026-08-25 08:15:05,249.249 INFO    ] ================================================
[2026-08-25 08:15:05,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:15:05
[2026-08-25 08:15:06,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:15:06,915.915 INFO    ] Initializing speech engine...
[2026-08-25 08:15:06,923.923 INFO    ] 2026-08-25 08:15:06
[2026-08-25 08:15:07,226.226 INFO    ] 2026-08-25 08:15:07
[2026-08-25 08:15:07,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:15:07,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:15:07,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:15:07,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:15:07,733.733 INFO    ] time= 25/08/2026 08:15:07
[2026-08-25 08:15:07,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:15:07,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:15:07,909.909 INFO    ] No existing commands found in stream
[2026-08-25 08:15:12,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:15:12,943.943 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 08:15:16,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:15:16,096.096 INFO    ] Checking for system updates...
[2026-08-25 08:15:16,133.133 INFO    ] 200
[2026-08-25 08:15:16,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:16,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:15:16,192.192 INFO    ] No update needed
[2026-08-25 08:15:16,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 08:15:16,229.229 INFO    ] 200
[2026-08-25 08:15:16,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:16,274.274 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:15:16,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:15:16,326.326 INFO    ] No camera update needed
[2026-08-25 08:15:16,329.329 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:15:16,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:15:16,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:15:16,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:15:18,385.385 INFO    ] ================================================
[2026-08-25 08:15:18,400.400 INFO    ] Launching Daemon at Tue Aug 25 08:15:18 IST 2026
[2026-08-25 08:15:18,411.411 INFO    ] ================================================
[2026-08-25 08:15:18,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:15:18
[2026-08-25 08:15:19,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:15:19,833.833 INFO    ] Initializing speech engine...
[2026-08-25 08:15:19,842.842 INFO    ] 2026-08-25 08:15:19
[2026-08-25 08:15:20,103.103 INFO    ] 2026-08-25 08:15:20
[2026-08-25 08:15:20,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:15:20,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:15:20,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:15:20,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:15:20,514.514 INFO    ] time= 25/08/2026 08:15:20
[2026-08-25 08:15:20,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:15:20,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:15:20,600.600 INFO    ] No existing commands found in stream
[2026-08-25 08:15:25,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:15:25,638.638 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 08:15:29,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:15:29,666.666 INFO    ] Checking for system updates...
[2026-08-25 08:15:29,701.701 INFO    ] 200
[2026-08-25 08:15:29,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:29,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:15:29,768.768 INFO    ] No update needed
[2026-08-25 08:15:29,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 08:15:29,807.807 INFO    ] 200
[2026-08-25 08:15:29,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:29,850.850 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:15:29,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:15:29,908.908 INFO    ] No camera update needed
[2026-08-25 08:15:29,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:15:29,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:15:29,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:15:29,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:15:31,966.966 INFO    ] ================================================
[2026-08-25 08:15:31,982.982 INFO    ] Launching Daemon at Tue Aug 25 08:15:31 IST 2026
[2026-08-25 08:15:32,994.994 INFO    ] ================================================
[2026-08-25 08:15:32,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:15:32
[2026-08-25 08:15:33,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:15:33,497.497 INFO    ] Initializing speech engine...
[2026-08-25 08:15:33,511.511 INFO    ] 2026-08-25 08:15:33
[2026-08-25 08:15:33,795.795 INFO    ] 2026-08-25 08:15:33
[2026-08-25 08:15:33,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:15:34,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:15:34,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:15:34,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:15:34,199.199 INFO    ] time= 25/08/2026 08:15:34
[2026-08-25 08:15:34,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:15:34,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:15:34,303.303 INFO    ] No existing commands found in stream
[2026-08-25 08:15:39,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:15:39,336.336 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 08:15:42,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:15:42,618.618 INFO    ] Checking for system updates...
[2026-08-25 08:15:42,654.654 INFO    ] 200
[2026-08-25 08:15:42,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:42,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:15:42,716.716 INFO    ] No update needed
[2026-08-25 08:15:42,718.718 INFO    ] Checking for camera pi updates...
[2026-08-25 08:15:42,752.752 INFO    ] 200
[2026-08-25 08:15:42,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:42,795.795 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:15:42,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:15:42,848.848 INFO    ] No camera update needed
[2026-08-25 08:15:42,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:15:42,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:15:42,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:15:42,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:15:44,902.902 INFO    ] ================================================
[2026-08-25 08:15:44,918.918 INFO    ] Launching Daemon at Tue Aug 25 08:15:44 IST 2026
[2026-08-25 08:15:44,928.928 INFO    ] ================================================
[2026-08-25 08:15:45,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:15:45
[2026-08-25 08:15:46,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:15:46,488.488 INFO    ] Initializing speech engine...
[2026-08-25 08:15:46,502.502 INFO    ] 2026-08-25 08:15:46
[2026-08-25 08:15:46,811.811 INFO    ] 2026-08-25 08:15:46
[2026-08-25 08:15:46,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:15:47,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:15:47,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:15:47,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:15:47,302.302 INFO    ] time= 25/08/2026 08:15:47
[2026-08-25 08:15:47,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:15:47,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:15:47,450.450 INFO    ] No existing commands found in stream
[2026-08-25 08:15:52,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:15:52,483.483 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 08:15:54,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:15:54,068.068 INFO    ] Checking for system updates...
[2026-08-25 08:15:54,105.105 INFO    ] 200
[2026-08-25 08:15:54,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:54,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:15:54,174.174 INFO    ] No update needed
[2026-08-25 08:15:54,177.177 INFO    ] Checking for camera pi updates...
[2026-08-25 08:15:54,210.210 INFO    ] 200
[2026-08-25 08:15:54,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:15:54,253.253 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:15:54,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:15:54,320.320 INFO    ] No camera update needed
[2026-08-25 08:15:54,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:15:54,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:15:54,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:15:54,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:15:56,375.375 INFO    ] ================================================
[2026-08-25 08:15:56,391.391 INFO    ] Launching Daemon at Tue Aug 25 08:15:56 IST 2026
[2026-08-25 08:15:56,402.402 INFO    ] ================================================
[2026-08-25 08:15:56,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:15:56
[2026-08-25 08:15:57,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:15:57,815.815 INFO    ] Initializing speech engine...
[2026-08-25 08:15:57,841.841 INFO    ] 2026-08-25 08:15:57
[2026-08-25 08:15:58,115.115 INFO    ] 2026-08-25 08:15:58
[2026-08-25 08:15:58,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:15:58,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:15:58,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:15:58,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:15:58,490.490 INFO    ] time= 25/08/2026 08:15:58
[2026-08-25 08:15:58,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:15:58,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:15:58,620.620 INFO    ] No existing commands found in stream
[2026-08-25 08:16:03,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:16:03,635.635 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 08:16:07,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:16:07,117.117 INFO    ] Checking for system updates...
[2026-08-25 08:16:07,153.153 INFO    ] 200
[2026-08-25 08:16:07,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:07,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:16:07,210.210 INFO    ] No update needed
[2026-08-25 08:16:07,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 08:16:07,246.246 INFO    ] 200
[2026-08-25 08:16:07,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:07,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:16:07,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:16:07,333.333 INFO    ] No camera update needed
[2026-08-25 08:16:07,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:16:07,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:16:07,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:16:07,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:16:09,388.388 INFO    ] ================================================
[2026-08-25 08:16:09,403.403 INFO    ] Launching Daemon at Tue Aug 25 08:16:09 IST 2026
[2026-08-25 08:16:09,414.414 INFO    ] ================================================
[2026-08-25 08:16:09,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:16:09
[2026-08-25 08:16:10,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:16:10,820.820 INFO    ] Initializing speech engine...
[2026-08-25 08:16:10,834.834 INFO    ] 2026-08-25 08:16:10
[2026-08-25 08:16:11,088.088 INFO    ] 2026-08-25 08:16:11
[2026-08-25 08:16:11,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:16:11,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:16:11,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:16:11,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:16:11,579.579 INFO    ] time= 25/08/2026 08:16:11
[2026-08-25 08:16:11,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:16:11,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:16:11,813.813 INFO    ] No existing commands found in stream
[2026-08-25 08:16:16,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:16:16,841.841 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 08:16:20,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:16:20,663.663 INFO    ] Checking for system updates...
[2026-08-25 08:16:20,701.701 INFO    ] 200
[2026-08-25 08:16:20,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:20,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:16:20,758.758 INFO    ] No update needed
[2026-08-25 08:16:20,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 08:16:20,794.794 INFO    ] 200
[2026-08-25 08:16:20,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:20,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:16:20,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:16:20,896.896 INFO    ] No camera update needed
[2026-08-25 08:16:20,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:16:20,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:16:20,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:16:20,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:16:22,950.950 INFO    ] ================================================
[2026-08-25 08:16:22,965.965 INFO    ] Launching Daemon at Tue Aug 25 08:16:22 IST 2026
[2026-08-25 08:16:22,976.976 INFO    ] ================================================
[2026-08-25 08:16:23,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:16:23
[2026-08-25 08:16:24,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:16:24,534.534 INFO    ] Initializing speech engine...
[2026-08-25 08:16:24,547.547 INFO    ] 2026-08-25 08:16:24
[2026-08-25 08:16:24,811.811 INFO    ] 2026-08-25 08:16:24
[2026-08-25 08:16:24,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:16:25,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:16:25,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:16:25,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:16:25,292.292 INFO    ] time= 25/08/2026 08:16:25
[2026-08-25 08:16:25,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:16:25,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:16:25,498.498 INFO    ] No existing commands found in stream
[2026-08-25 08:16:30,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:16:30,520.520 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 08:16:31,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:16:31,615.615 INFO    ] Checking for system updates...
[2026-08-25 08:16:31,650.650 INFO    ] 200
[2026-08-25 08:16:31,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:31,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:16:31,715.715 INFO    ] No update needed
[2026-08-25 08:16:31,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 08:16:31,750.750 INFO    ] 200
[2026-08-25 08:16:31,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:31,796.796 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:16:31,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:16:31,854.854 INFO    ] No camera update needed
[2026-08-25 08:16:31,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:16:31,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:16:31,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:16:31,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:16:33,909.909 INFO    ] ================================================
[2026-08-25 08:16:33,924.924 INFO    ] Launching Daemon at Tue Aug 25 08:16:33 IST 2026
[2026-08-25 08:16:33,935.935 INFO    ] ================================================
[2026-08-25 08:16:34,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:16:34
[2026-08-25 08:16:35,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:16:35,358.358 INFO    ] Initializing speech engine...
[2026-08-25 08:16:35,367.367 INFO    ] 2026-08-25 08:16:35
[2026-08-25 08:16:35,630.630 INFO    ] 2026-08-25 08:16:35
[2026-08-25 08:16:35,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:16:35,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:16:35,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:16:36,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:16:36,031.031 INFO    ] time= 25/08/2026 08:16:36
[2026-08-25 08:16:36,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:16:36,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:16:36,120.120 INFO    ] No existing commands found in stream
[2026-08-25 08:16:41,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:16:41,148.148 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 08:16:42,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:16:42,786.786 INFO    ] Checking for system updates...
[2026-08-25 08:16:42,830.830 INFO    ] 200
[2026-08-25 08:16:42,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:42,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:16:42,887.887 INFO    ] No update needed
[2026-08-25 08:16:42,890.890 INFO    ] Checking for camera pi updates...
[2026-08-25 08:16:42,922.922 INFO    ] 200
[2026-08-25 08:16:42,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:42,965.965 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:16:43,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:16:43,015.015 INFO    ] No camera update needed
[2026-08-25 08:16:43,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:16:43,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:16:43,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:16:43,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:16:45,069.069 INFO    ] ================================================
[2026-08-25 08:16:45,085.085 INFO    ] Launching Daemon at Tue Aug 25 08:16:45 IST 2026
[2026-08-25 08:16:45,095.095 INFO    ] ================================================
[2026-08-25 08:16:45,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:16:45
[2026-08-25 08:16:46,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:16:46,514.514 INFO    ] Initializing speech engine...
[2026-08-25 08:16:46,522.522 INFO    ] 2026-08-25 08:16:46
[2026-08-25 08:16:46,793.793 INFO    ] 2026-08-25 08:16:46
[2026-08-25 08:16:46,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:16:47,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:16:47,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:16:47,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:16:47,159.159 INFO    ] time= 25/08/2026 08:16:47
[2026-08-25 08:16:47,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:16:47,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:16:47,283.283 INFO    ] No existing commands found in stream
[2026-08-25 08:16:52,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:16:52,299.299 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 08:16:54,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:16:54,953.953 INFO    ] Checking for system updates...
[2026-08-25 08:16:54,989.989 INFO    ] 200
[2026-08-25 08:16:54,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:55,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:16:55,047.047 INFO    ] No update needed
[2026-08-25 08:16:55,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 08:16:55,087.087 INFO    ] 200
[2026-08-25 08:16:55,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:16:55,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:16:55,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:16:55,182.182 INFO    ] No camera update needed
[2026-08-25 08:16:55,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:16:55,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:16:55,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:16:55,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:16:57,238.238 INFO    ] ================================================
[2026-08-25 08:16:57,253.253 INFO    ] Launching Daemon at Tue Aug 25 08:16:57 IST 2026
[2026-08-25 08:16:57,264.264 INFO    ] ================================================
[2026-08-25 08:16:57,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:16:57
[2026-08-25 08:16:58,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:16:58,933.933 INFO    ] Initializing speech engine...
[2026-08-25 08:16:58,945.945 INFO    ] 2026-08-25 08:16:58
[2026-08-25 08:16:59,256.256 INFO    ] 2026-08-25 08:16:59
[2026-08-25 08:16:59,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:16:59,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:16:59,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:16:59,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:16:59,763.763 INFO    ] time= 25/08/2026 08:16:59
[2026-08-25 08:16:59,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:16:59,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:16:59,917.917 INFO    ] No existing commands found in stream
[2026-08-25 08:17:04,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:17:04,945.945 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 08:17:06,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:17:06,914.914 INFO    ] Checking for system updates...
[2026-08-25 08:17:06,958.958 INFO    ] 200
[2026-08-25 08:17:06,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:07,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:17:07,030.030 INFO    ] No update needed
[2026-08-25 08:17:07,034.034 INFO    ] Checking for camera pi updates...
[2026-08-25 08:17:07,073.073 INFO    ] 200
[2026-08-25 08:17:07,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:07,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:17:07,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:17:07,260.260 INFO    ] No camera update needed
[2026-08-25 08:17:07,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:17:07,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:17:07,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:17:07,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:17:09,315.315 INFO    ] ================================================
[2026-08-25 08:17:09,330.330 INFO    ] Launching Daemon at Tue Aug 25 08:17:09 IST 2026
[2026-08-25 08:17:09,341.341 INFO    ] ================================================
[2026-08-25 08:17:09,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:17:09
[2026-08-25 08:17:10,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:17:10,775.775 INFO    ] Initializing speech engine...
[2026-08-25 08:17:10,783.783 INFO    ] 2026-08-25 08:17:10
[2026-08-25 08:17:11,032.032 INFO    ] 2026-08-25 08:17:11
[2026-08-25 08:17:11,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:17:11,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:17:11,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:17:11,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:17:11,504.504 INFO    ] time= 25/08/2026 08:17:11
[2026-08-25 08:17:11,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:17:11,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:17:11,741.741 INFO    ] No existing commands found in stream
[2026-08-25 08:17:16,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:17:16,758.758 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 08:17:19,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:17:19,806.806 INFO    ] Checking for system updates...
[2026-08-25 08:17:19,841.841 INFO    ] 200
[2026-08-25 08:17:19,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:19,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:17:19,898.898 INFO    ] No update needed
[2026-08-25 08:17:19,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 08:17:19,934.934 INFO    ] 200
[2026-08-25 08:17:19,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:19,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:17:20,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:17:20,029.029 INFO    ] No camera update needed
[2026-08-25 08:17:20,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:17:20,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:17:20,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:17:20,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:17:22,085.085 INFO    ] ================================================
[2026-08-25 08:17:22,099.099 INFO    ] Launching Daemon at Tue Aug 25 08:17:22 IST 2026
[2026-08-25 08:17:22,110.110 INFO    ] ================================================
[2026-08-25 08:17:22,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:17:22
[2026-08-25 08:17:23,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:17:23,515.515 INFO    ] Initializing speech engine...
[2026-08-25 08:17:23,534.534 INFO    ] 2026-08-25 08:17:23
[2026-08-25 08:17:23,781.781 INFO    ] 2026-08-25 08:17:23
[2026-08-25 08:17:23,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:17:24,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:17:24,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:17:24,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:17:24,255.255 INFO    ] time= 25/08/2026 08:17:24
[2026-08-25 08:17:24,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:17:24,341.341 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:17:24,486.486 INFO    ] No existing commands found in stream
[2026-08-25 08:17:29,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:17:29,504.504 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 08:17:29,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:17:29,976.976 INFO    ] Checking for system updates...
[2026-08-25 08:17:30,012.012 INFO    ] 200
[2026-08-25 08:17:30,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:30,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:17:30,076.076 INFO    ] No update needed
[2026-08-25 08:17:30,078.078 INFO    ] Checking for camera pi updates...
[2026-08-25 08:17:30,112.112 INFO    ] 200
[2026-08-25 08:17:30,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:30,155.155 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:17:30,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:17:30,204.204 INFO    ] No camera update needed
[2026-08-25 08:17:30,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:17:30,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:17:30,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:17:30,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:17:32,259.259 INFO    ] ================================================
[2026-08-25 08:17:32,275.275 INFO    ] Launching Daemon at Tue Aug 25 08:17:32 IST 2026
[2026-08-25 08:17:32,286.286 INFO    ] ================================================
[2026-08-25 08:17:32,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:17:32
[2026-08-25 08:17:33,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:17:33,807.807 INFO    ] Initializing speech engine...
[2026-08-25 08:17:33,819.819 INFO    ] 2026-08-25 08:17:33
[2026-08-25 08:17:34,108.108 INFO    ] 2026-08-25 08:17:34
[2026-08-25 08:17:34,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:17:34,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:17:34,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:17:34,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:17:34,502.502 INFO    ] time= 25/08/2026 08:17:34
[2026-08-25 08:17:34,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:17:34,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:17:34,703.703 INFO    ] No existing commands found in stream
[2026-08-25 08:17:39,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:17:39,719.719 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 08:17:40,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:17:40,587.587 INFO    ] Checking for system updates...
[2026-08-25 08:17:40,622.622 INFO    ] 200
[2026-08-25 08:17:40,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:40,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:17:40,679.679 INFO    ] No update needed
[2026-08-25 08:17:40,682.682 INFO    ] Checking for camera pi updates...
[2026-08-25 08:17:40,719.719 INFO    ] 200
[2026-08-25 08:17:40,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:40,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:17:40,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:17:40,814.814 INFO    ] No camera update needed
[2026-08-25 08:17:40,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:17:40,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:17:40,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:17:40,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:17:42,869.869 INFO    ] ================================================
[2026-08-25 08:17:42,884.884 INFO    ] Launching Daemon at Tue Aug 25 08:17:42 IST 2026
[2026-08-25 08:17:42,894.894 INFO    ] ================================================
[2026-08-25 08:17:43,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:17:43
[2026-08-25 08:17:44,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:17:44,360.360 INFO    ] Initializing speech engine...
[2026-08-25 08:17:44,370.370 INFO    ] 2026-08-25 08:17:44
[2026-08-25 08:17:44,621.621 INFO    ] 2026-08-25 08:17:44
[2026-08-25 08:17:44,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:17:44,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:17:44,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:17:45,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:17:45,086.086 INFO    ] time= 25/08/2026 08:17:45
[2026-08-25 08:17:45,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:17:45,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:17:45,305.305 INFO    ] No existing commands found in stream
[2026-08-25 08:17:50,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:17:50,339.339 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 08:17:52,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:17:52,541.541 INFO    ] Checking for system updates...
[2026-08-25 08:17:52,578.578 INFO    ] 200
[2026-08-25 08:17:52,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:52,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:17:52,646.646 INFO    ] No update needed
[2026-08-25 08:17:52,648.648 INFO    ] Checking for camera pi updates...
[2026-08-25 08:17:52,684.684 INFO    ] 200
[2026-08-25 08:17:52,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:17:52,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:17:52,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:17:52,801.801 INFO    ] No camera update needed
[2026-08-25 08:17:52,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:17:52,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:17:52,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:17:52,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:17:54,858.858 INFO    ] ================================================
[2026-08-25 08:17:54,875.875 INFO    ] Launching Daemon at Tue Aug 25 08:17:54 IST 2026
[2026-08-25 08:17:54,887.887 INFO    ] ================================================
[2026-08-25 08:17:55,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:17:55
[2026-08-25 08:17:56,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:17:56,361.361 INFO    ] Initializing speech engine...
[2026-08-25 08:17:56,370.370 INFO    ] 2026-08-25 08:17:56
[2026-08-25 08:17:56,632.632 INFO    ] 2026-08-25 08:17:56
[2026-08-25 08:17:56,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:17:56,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:17:56,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:17:57,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:17:57,013.013 INFO    ] time= 25/08/2026 08:17:57
[2026-08-25 08:17:57,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:17:57,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:17:57,189.189 INFO    ] No existing commands found in stream
[2026-08-25 08:18:02,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:18:02,229.229 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 08:18:06,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:18:06,006.006 INFO    ] Checking for system updates...
[2026-08-25 08:18:06,047.047 INFO    ] 200
[2026-08-25 08:18:06,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:06,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:06,126.126 INFO    ] No update needed
[2026-08-25 08:18:06,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 08:18:06,168.168 INFO    ] 200
[2026-08-25 08:18:06,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:06,232.232 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:18:06,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:06,299.299 INFO    ] No camera update needed
[2026-08-25 08:18:06,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:18:06,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:18:06,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:18:06,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:18:08,355.355 INFO    ] ================================================
[2026-08-25 08:18:08,370.370 INFO    ] Launching Daemon at Tue Aug 25 08:18:08 IST 2026
[2026-08-25 08:18:08,381.381 INFO    ] ================================================
[2026-08-25 08:18:08,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:18:08
[2026-08-25 08:18:09,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:18:09,842.842 INFO    ] Initializing speech engine...
[2026-08-25 08:18:09,851.851 INFO    ] 2026-08-25 08:18:09
[2026-08-25 08:18:10,114.114 INFO    ] 2026-08-25 08:18:10
[2026-08-25 08:18:10,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:18:10,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:18:10,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:18:10,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:18:10,477.477 INFO    ] time= 25/08/2026 08:18:10
[2026-08-25 08:18:10,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:18:10,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:18:10,596.596 INFO    ] No existing commands found in stream
[2026-08-25 08:18:15,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:18:15,610.610 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 08:18:16,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:18:16,546.546 INFO    ] Checking for system updates...
[2026-08-25 08:18:16,581.581 INFO    ] 200
[2026-08-25 08:18:16,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:16,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:18:16,642.642 INFO    ] No update needed
[2026-08-25 08:18:16,645.645 INFO    ] Checking for camera pi updates...
[2026-08-25 08:18:16,678.678 INFO    ] 200
[2026-08-25 08:18:16,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:16,723.723 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:18:16,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:18:16,775.775 INFO    ] No camera update needed
[2026-08-25 08:18:16,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:18:16,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:18:16,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:18:16,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:18:18,829.829 INFO    ] ================================================
[2026-08-25 08:18:18,844.844 INFO    ] Launching Daemon at Tue Aug 25 08:18:18 IST 2026
[2026-08-25 08:18:18,855.855 INFO    ] ================================================
[2026-08-25 08:18:19,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:18:19
[2026-08-25 08:18:20,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:18:20,295.295 INFO    ] Initializing speech engine...
[2026-08-25 08:18:20,319.319 INFO    ] 2026-08-25 08:18:20
[2026-08-25 08:18:20,588.588 INFO    ] 2026-08-25 08:18:20
[2026-08-25 08:18:20,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:18:20,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:18:20,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:18:20,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:18:20,987.987 INFO    ] time= 25/08/2026 08:18:20
[2026-08-25 08:18:20,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:18:20,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:18:21,071.071 INFO    ] No existing commands found in stream
[2026-08-25 08:18:26,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:18:26,110.110 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 08:18:26,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:18:26,807.807 INFO    ] Checking for system updates...
[2026-08-25 08:18:26,843.843 INFO    ] 200
[2026-08-25 08:18:26,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:26,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:26,902.902 INFO    ] No update needed
[2026-08-25 08:18:26,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 08:18:26,938.938 INFO    ] 200
[2026-08-25 08:18:26,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:26,980.980 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:18:27,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:27,027.027 INFO    ] No camera update needed
[2026-08-25 08:18:27,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:18:27,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:18:27,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:18:27,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:18:29,081.081 INFO    ] ================================================
[2026-08-25 08:18:29,097.097 INFO    ] Launching Daemon at Tue Aug 25 08:18:29 IST 2026
[2026-08-25 08:18:29,107.107 INFO    ] ================================================
[2026-08-25 08:18:29,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:18:29
[2026-08-25 08:18:30,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:18:30,539.539 INFO    ] Initializing speech engine...
[2026-08-25 08:18:30,548.548 INFO    ] 2026-08-25 08:18:30
[2026-08-25 08:18:30,808.808 INFO    ] 2026-08-25 08:18:30
[2026-08-25 08:18:30,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:18:31,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:18:31,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:18:31,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:18:31,172.172 INFO    ] time= 25/08/2026 08:18:31
[2026-08-25 08:18:31,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:18:31,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:18:31,296.296 INFO    ] No existing commands found in stream
[2026-08-25 08:18:36,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:18:36,317.317 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 08:18:37,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:18:37,557.557 INFO    ] Checking for system updates...
[2026-08-25 08:18:37,592.592 INFO    ] 200
[2026-08-25 08:18:37,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:37,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:37,654.654 INFO    ] No update needed
[2026-08-25 08:18:37,657.657 INFO    ] Checking for camera pi updates...
[2026-08-25 08:18:37,691.691 INFO    ] 200
[2026-08-25 08:18:37,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:37,739.739 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:18:37,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:37,786.786 INFO    ] No camera update needed
[2026-08-25 08:18:37,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:18:37,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:18:37,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:18:37,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:18:39,841.841 INFO    ] ================================================
[2026-08-25 08:18:39,856.856 INFO    ] Launching Daemon at Tue Aug 25 08:18:39 IST 2026
[2026-08-25 08:18:39,866.866 INFO    ] ================================================
[2026-08-25 08:18:40,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:18:40
[2026-08-25 08:18:41,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:18:41,269.269 INFO    ] Initializing speech engine...
[2026-08-25 08:18:41,277.277 INFO    ] 2026-08-25 08:18:41
[2026-08-25 08:18:41,562.562 INFO    ] 2026-08-25 08:18:41
[2026-08-25 08:18:41,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:18:41,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:18:41,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:18:41,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:18:41,945.945 INFO    ] time= 25/08/2026 08:18:41
[2026-08-25 08:18:41,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:18:41,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:18:42,049.049 INFO    ] No existing commands found in stream
[2026-08-25 08:18:47,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:18:47,065.065 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 08:18:49,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:18:49,827.827 INFO    ] Checking for system updates...
[2026-08-25 08:18:49,866.866 INFO    ] 200
[2026-08-25 08:18:49,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:49,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:49,929.929 INFO    ] No update needed
[2026-08-25 08:18:49,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 08:18:49,968.968 INFO    ] 200
[2026-08-25 08:18:49,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:18:50,016.016 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:18:50,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:18:50,069.069 INFO    ] No camera update needed
[2026-08-25 08:18:50,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:18:50,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:18:50,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:18:50,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:18:52,126.126 INFO    ] ================================================
[2026-08-25 08:18:52,141.141 INFO    ] Launching Daemon at Tue Aug 25 08:18:52 IST 2026
[2026-08-25 08:18:52,152.152 INFO    ] ================================================
[2026-08-25 08:18:52,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:18:52
[2026-08-25 08:18:53,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:18:53,572.572 INFO    ] Initializing speech engine...
[2026-08-25 08:18:53,581.581 INFO    ] 2026-08-25 08:18:53
[2026-08-25 08:18:53,830.830 INFO    ] 2026-08-25 08:18:53
[2026-08-25 08:18:53,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:18:54,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:18:54,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:18:54,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:18:54,204.204 INFO    ] time= 25/08/2026 08:18:54
[2026-08-25 08:18:54,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:18:54,257.257 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:18:54,382.382 INFO    ] No existing commands found in stream
[2026-08-25 08:18:59,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:18:59,410.410 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 08:19:00,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:19:00,631.631 INFO    ] Checking for system updates...
[2026-08-25 08:19:00,670.670 INFO    ] 200
[2026-08-25 08:19:00,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:00,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:00,733.733 INFO    ] No update needed
[2026-08-25 08:19:00,736.736 INFO    ] Checking for camera pi updates...
[2026-08-25 08:19:00,771.771 INFO    ] 200
[2026-08-25 08:19:00,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:00,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:19:00,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:00,866.866 INFO    ] No camera update needed
[2026-08-25 08:19:00,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:19:00,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:19:00,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:19:00,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:19:02,927.927 INFO    ] ================================================
[2026-08-25 08:19:02,945.945 INFO    ] Launching Daemon at Tue Aug 25 08:19:02 IST 2026
[2026-08-25 08:19:02,962.962 INFO    ] ================================================
[2026-08-25 08:19:03,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:19:03
[2026-08-25 08:19:04,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:19:04,526.526 INFO    ] Initializing speech engine...
[2026-08-25 08:19:04,537.537 INFO    ] 2026-08-25 08:19:04
[2026-08-25 08:19:04,798.798 INFO    ] 2026-08-25 08:19:04
[2026-08-25 08:19:04,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:19:05,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:19:05,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:19:05,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:19:05,259.259 INFO    ] time= 25/08/2026 08:19:05
[2026-08-25 08:19:05,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:19:05,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:19:05,487.487 INFO    ] No existing commands found in stream
[2026-08-25 08:19:10,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:19:10,505.505 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 08:19:12,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:19:12,010.010 INFO    ] Checking for system updates...
[2026-08-25 08:19:12,046.046 INFO    ] 200
[2026-08-25 08:19:12,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:12,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:12,103.103 INFO    ] No update needed
[2026-08-25 08:19:12,106.106 INFO    ] Checking for camera pi updates...
[2026-08-25 08:19:12,142.142 INFO    ] 200
[2026-08-25 08:19:12,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:12,186.186 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:19:12,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:12,337.337 INFO    ] No camera update needed
[2026-08-25 08:19:12,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:19:12,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:19:12,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:19:12,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:19:14,391.391 INFO    ] ================================================
[2026-08-25 08:19:14,406.406 INFO    ] Launching Daemon at Tue Aug 25 08:19:14 IST 2026
[2026-08-25 08:19:14,416.416 INFO    ] ================================================
[2026-08-25 08:19:15,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:19:14
[2026-08-25 08:19:15,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:19:15,870.870 INFO    ] Initializing speech engine...
[2026-08-25 08:19:15,894.894 INFO    ] 2026-08-25 08:19:15
[2026-08-25 08:19:16,165.165 INFO    ] 2026-08-25 08:19:16
[2026-08-25 08:19:16,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:19:16,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:19:16,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:19:16,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:19:16,540.540 INFO    ] time= 25/08/2026 08:19:16
[2026-08-25 08:19:16,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:19:16,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:19:16,664.664 INFO    ] No existing commands found in stream
[2026-08-25 08:19:21,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:19:21,683.683 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 08:19:24,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:19:24,381.381 INFO    ] Checking for system updates...
[2026-08-25 08:19:24,417.417 INFO    ] 200
[2026-08-25 08:19:24,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:24,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:24,473.473 INFO    ] No update needed
[2026-08-25 08:19:24,476.476 INFO    ] Checking for camera pi updates...
[2026-08-25 08:19:24,510.510 INFO    ] 200
[2026-08-25 08:19:24,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:24,552.552 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:19:24,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:24,613.613 INFO    ] No camera update needed
[2026-08-25 08:19:24,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:19:24,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:19:24,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:19:24,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:19:26,669.669 INFO    ] ================================================
[2026-08-25 08:19:26,684.684 INFO    ] Launching Daemon at Tue Aug 25 08:19:26 IST 2026
[2026-08-25 08:19:26,694.694 INFO    ] ================================================
[2026-08-25 08:19:27,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:19:27
[2026-08-25 08:19:27,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:19:28,141.141 INFO    ] Initializing speech engine...
[2026-08-25 08:19:28,158.158 INFO    ] 2026-08-25 08:19:28
[2026-08-25 08:19:28,443.443 INFO    ] 2026-08-25 08:19:28
[2026-08-25 08:19:28,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:19:28,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:19:28,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:19:28,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:19:28,854.854 INFO    ] time= 25/08/2026 08:19:28
[2026-08-25 08:19:28,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:19:28,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:19:28,940.940 INFO    ] No existing commands found in stream
[2026-08-25 08:19:33,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:19:33,973.973 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 08:19:35,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:19:35,263.263 INFO    ] Checking for system updates...
[2026-08-25 08:19:35,299.299 INFO    ] 200
[2026-08-25 08:19:35,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:35,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:35,356.356 INFO    ] No update needed
[2026-08-25 08:19:35,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 08:19:35,391.391 INFO    ] 200
[2026-08-25 08:19:35,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:35,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:19:35,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:35,495.495 INFO    ] No camera update needed
[2026-08-25 08:19:35,498.498 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:19:35,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:19:35,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:19:35,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:19:37,550.550 INFO    ] ================================================
[2026-08-25 08:19:37,565.565 INFO    ] Launching Daemon at Tue Aug 25 08:19:37 IST 2026
[2026-08-25 08:19:37,575.575 INFO    ] ================================================
[2026-08-25 08:19:38,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:19:38
[2026-08-25 08:19:38,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:19:39,022.022 INFO    ] Initializing speech engine...
[2026-08-25 08:19:39,030.030 INFO    ] 2026-08-25 08:19:39
[2026-08-25 08:19:39,291.291 INFO    ] 2026-08-25 08:19:39
[2026-08-25 08:19:39,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:19:39,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:19:39,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:19:39,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:19:39,749.749 INFO    ] time= 25/08/2026 08:19:39
[2026-08-25 08:19:39,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:19:39,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:19:39,958.958 INFO    ] No existing commands found in stream
[2026-08-25 08:19:44,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:19:44,991.991 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 08:19:45,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:19:45,728.728 INFO    ] Checking for system updates...
[2026-08-25 08:19:45,763.763 INFO    ] 200
[2026-08-25 08:19:45,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:45,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:45,820.820 INFO    ] No update needed
[2026-08-25 08:19:45,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 08:19:45,856.856 INFO    ] 200
[2026-08-25 08:19:45,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:45,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:19:45,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:45,959.959 INFO    ] No camera update needed
[2026-08-25 08:19:45,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:19:45,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:19:45,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:19:45,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:19:48,015.015 INFO    ] ================================================
[2026-08-25 08:19:48,030.030 INFO    ] Launching Daemon at Tue Aug 25 08:19:48 IST 2026
[2026-08-25 08:19:48,041.041 INFO    ] ================================================
[2026-08-25 08:19:48,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:19:48
[2026-08-25 08:19:49,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:19:49,640.640 INFO    ] Initializing speech engine...
[2026-08-25 08:19:49,649.649 INFO    ] 2026-08-25 08:19:49
[2026-08-25 08:19:49,919.919 INFO    ] 2026-08-25 08:19:49
[2026-08-25 08:19:49,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:19:50,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:19:50,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:19:50,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:19:50,403.403 INFO    ] time= 25/08/2026 08:19:50
[2026-08-25 08:19:50,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:19:50,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:19:50,623.623 INFO    ] No existing commands found in stream
[2026-08-25 08:19:55,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:19:55,640.640 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 08:19:58,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:19:58,382.382 INFO    ] Checking for system updates...
[2026-08-25 08:19:58,422.422 INFO    ] 200
[2026-08-25 08:19:58,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:58,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:58,481.481 INFO    ] No update needed
[2026-08-25 08:19:58,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 08:19:58,518.518 INFO    ] 200
[2026-08-25 08:19:58,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:19:58,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:19:58,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:19:58,624.624 INFO    ] No camera update needed
[2026-08-25 08:19:58,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:19:58,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:19:58,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:19:58,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:20:00,681.681 INFO    ] ================================================
[2026-08-25 08:20:00,696.696 INFO    ] Launching Daemon at Tue Aug 25 08:20:00 IST 2026
[2026-08-25 08:20:00,707.707 INFO    ] ================================================
[2026-08-25 08:20:01,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:20:01
[2026-08-25 08:20:01,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:20:02,751.751 INFO    ] Initializing speech engine...
[2026-08-25 08:20:02,755.755 INFO    ] 2026-08-25 08:20:02
[2026-08-25 08:20:03,191.191 INFO    ] 2026-08-25 08:20:03
[2026-08-25 08:20:03,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:20:03,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:20:03,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:20:03,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:20:03,651.651 INFO    ] time= 25/08/2026 08:20:03
[2026-08-25 08:20:03,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:20:03,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:20:03,758.758 INFO    ] No existing commands found in stream
[2026-08-25 08:20:08,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:20:08,770.770 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 08:20:10,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:20:10,220.220 INFO    ] Checking for system updates...
[2026-08-25 08:20:10,260.260 INFO    ] 200
[2026-08-25 08:20:10,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:10,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:10,316.316 INFO    ] No update needed
[2026-08-25 08:20:10,319.319 INFO    ] Checking for camera pi updates...
[2026-08-25 08:20:10,352.352 INFO    ] 200
[2026-08-25 08:20:10,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:10,395.395 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:20:10,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:10,447.447 INFO    ] No camera update needed
[2026-08-25 08:20:10,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:20:10,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:20:10,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:20:10,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:20:12,504.504 INFO    ] ================================================
[2026-08-25 08:20:12,520.520 INFO    ] Launching Daemon at Tue Aug 25 08:20:12 IST 2026
[2026-08-25 08:20:12,531.531 INFO    ] ================================================
[2026-08-25 08:20:13,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:20:13
[2026-08-25 08:20:13,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:20:13,961.961 INFO    ] Initializing speech engine...
[2026-08-25 08:20:13,968.968 INFO    ] 2026-08-25 08:20:13
[2026-08-25 08:20:14,225.225 INFO    ] 2026-08-25 08:20:14
[2026-08-25 08:20:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:20:14,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:20:14,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:20:14,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:20:14,688.688 INFO    ] time= 25/08/2026 08:20:14
[2026-08-25 08:20:14,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:20:14,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:20:14,889.889 INFO    ] No existing commands found in stream
[2026-08-25 08:20:19,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:20:19,919.919 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 08:20:22,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:20:22,989.989 INFO    ] Checking for system updates...
[2026-08-25 08:20:23,024.024 INFO    ] 200
[2026-08-25 08:20:23,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:23,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:23,090.090 INFO    ] No update needed
[2026-08-25 08:20:23,093.093 INFO    ] Checking for camera pi updates...
[2026-08-25 08:20:23,126.126 INFO    ] 200
[2026-08-25 08:20:23,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:23,173.173 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:20:23,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:23,225.225 INFO    ] No camera update needed
[2026-08-25 08:20:23,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:20:23,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:20:23,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:20:23,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:20:25,280.280 INFO    ] ================================================
[2026-08-25 08:20:25,296.296 INFO    ] Launching Daemon at Tue Aug 25 08:20:25 IST 2026
[2026-08-25 08:20:25,307.307 INFO    ] ================================================
[2026-08-25 08:20:25,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:20:25
[2026-08-25 08:20:26,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:20:26,773.773 INFO    ] Initializing speech engine...
[2026-08-25 08:20:26,782.782 INFO    ] 2026-08-25 08:20:26
[2026-08-25 08:20:27,029.029 INFO    ] 2026-08-25 08:20:27
[2026-08-25 08:20:27,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:20:27,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:20:27,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:20:27,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:20:27,529.529 INFO    ] time= 25/08/2026 08:20:27
[2026-08-25 08:20:27,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:20:27,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:20:27,741.741 INFO    ] No existing commands found in stream
[2026-08-25 08:20:32,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:20:32,770.770 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 08:20:35,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:20:35,259.259 INFO    ] Checking for system updates...
[2026-08-25 08:20:35,300.300 INFO    ] 200
[2026-08-25 08:20:35,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:35,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:35,356.356 INFO    ] No update needed
[2026-08-25 08:20:35,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 08:20:35,397.397 INFO    ] 200
[2026-08-25 08:20:35,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:35,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:20:35,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:35,490.490 INFO    ] No camera update needed
[2026-08-25 08:20:35,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:20:35,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:20:35,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:20:35,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:20:37,546.546 INFO    ] ================================================
[2026-08-25 08:20:37,561.561 INFO    ] Launching Daemon at Tue Aug 25 08:20:37 IST 2026
[2026-08-25 08:20:37,573.573 INFO    ] ================================================
[2026-08-25 08:20:38,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:20:38
[2026-08-25 08:20:38,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:20:38,995.995 INFO    ] Initializing speech engine...
[2026-08-25 08:20:39,007.007 INFO    ] 2026-08-25 08:20:38
[2026-08-25 08:20:39,253.253 INFO    ] 2026-08-25 08:20:39
[2026-08-25 08:20:39,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:20:39,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:20:39,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:20:39,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:20:39,621.621 INFO    ] time= 25/08/2026 08:20:39
[2026-08-25 08:20:39,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:20:39,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:20:39,808.808 INFO    ] No existing commands found in stream
[2026-08-25 08:20:44,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:20:44,830.830 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 08:20:47,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:20:47,262.262 INFO    ] Checking for system updates...
[2026-08-25 08:20:47,299.299 INFO    ] 200
[2026-08-25 08:20:47,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:47,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:47,367.367 INFO    ] No update needed
[2026-08-25 08:20:47,371.371 INFO    ] Checking for camera pi updates...
[2026-08-25 08:20:47,406.406 INFO    ] 200
[2026-08-25 08:20:47,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:20:47,451.451 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:20:47,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:20:47,511.511 INFO    ] No camera update needed
[2026-08-25 08:20:47,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:20:47,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:20:47,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:20:47,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:20:49,570.570 INFO    ] ================================================
[2026-08-25 08:20:49,586.586 INFO    ] Launching Daemon at Tue Aug 25 08:20:49 IST 2026
[2026-08-25 08:20:49,597.597 INFO    ] ================================================
[2026-08-25 08:20:50,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:20:50
[2026-08-25 08:20:50,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:20:50,999.999 INFO    ] Initializing speech engine...
[2026-08-25 08:20:51,007.007 INFO    ] 2026-08-25 08:20:51
[2026-08-25 08:20:51,291.291 INFO    ] 2026-08-25 08:20:51
[2026-08-25 08:20:51,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:20:51,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:20:51,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:20:51,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:20:51,646.646 INFO    ] time= 25/08/2026 08:20:51
[2026-08-25 08:20:51,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:20:51,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:20:51,727.727 INFO    ] No existing commands found in stream
[2026-08-25 08:20:56,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:20:56,741.741 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 08:21:00,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:21:00,562.562 INFO    ] Checking for system updates...
[2026-08-25 08:21:00,598.598 INFO    ] 200
[2026-08-25 08:21:00,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:00,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:21:00,663.663 INFO    ] No update needed
[2026-08-25 08:21:00,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 08:21:00,702.702 INFO    ] 200
[2026-08-25 08:21:00,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:00,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:21:00,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:21:00,808.808 INFO    ] No camera update needed
[2026-08-25 08:21:00,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:21:00,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:21:00,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:21:00,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:21:02,865.865 INFO    ] ================================================
[2026-08-25 08:21:02,882.882 INFO    ] Launching Daemon at Tue Aug 25 08:21:02 IST 2026
[2026-08-25 08:21:02,893.893 INFO    ] ================================================
[2026-08-25 08:21:03,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:21:03
[2026-08-25 08:21:04,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:21:04,576.576 INFO    ] Initializing speech engine...
[2026-08-25 08:21:04,588.588 INFO    ] 2026-08-25 08:21:04
[2026-08-25 08:21:04,899.899 INFO    ] 2026-08-25 08:21:04
[2026-08-25 08:21:04,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:21:05,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:21:05,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:21:05,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:21:05,408.408 INFO    ] time= 25/08/2026 08:21:05
[2026-08-25 08:21:05,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:21:05,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:21:05,571.571 INFO    ] No existing commands found in stream
[2026-08-25 08:21:10,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:21:10,600.600 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 08:21:14,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:21:14,729.729 INFO    ] Checking for system updates...
[2026-08-25 08:21:14,764.764 INFO    ] 200
[2026-08-25 08:21:14,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:14,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:21:14,828.828 INFO    ] No update needed
[2026-08-25 08:21:14,830.830 INFO    ] Checking for camera pi updates...
[2026-08-25 08:21:14,868.868 INFO    ] 200
[2026-08-25 08:21:14,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:14,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:21:15,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:21:15,055.055 INFO    ] No camera update needed
[2026-08-25 08:21:15,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:21:15,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:21:15,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:21:15,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:21:17,111.111 INFO    ] ================================================
[2026-08-25 08:21:17,127.127 INFO    ] Launching Daemon at Tue Aug 25 08:21:17 IST 2026
[2026-08-25 08:21:17,138.138 INFO    ] ================================================
[2026-08-25 08:21:17,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:21:17
[2026-08-25 08:21:18,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:21:18,667.667 INFO    ] Initializing speech engine...
[2026-08-25 08:21:18,689.689 INFO    ] 2026-08-25 08:21:18
[2026-08-25 08:21:18,943.943 INFO    ] 2026-08-25 08:21:18
[2026-08-25 08:21:18,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:21:19,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:21:19,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:21:19,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:21:19,321.321 INFO    ] time= 25/08/2026 08:21:19
[2026-08-25 08:21:19,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:21:19,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:21:19,505.505 INFO    ] No existing commands found in stream
[2026-08-25 08:21:24,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:21:24,529.529 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 08:21:27,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:21:27,972.972 INFO    ] Checking for system updates...
[2026-08-25 08:21:28,015.015 INFO    ] 200
[2026-08-25 08:21:28,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:28,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:21:28,074.074 INFO    ] No update needed
[2026-08-25 08:21:28,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 08:21:28,109.109 INFO    ] 200
[2026-08-25 08:21:28,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:28,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:21:28,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:21:28,213.213 INFO    ] No camera update needed
[2026-08-25 08:21:28,216.216 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:21:28,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:21:28,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:21:28,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:21:30,268.268 INFO    ] ================================================
[2026-08-25 08:21:30,283.283 INFO    ] Launching Daemon at Tue Aug 25 08:21:30 IST 2026
[2026-08-25 08:21:30,295.295 INFO    ] ================================================
[2026-08-25 08:21:30,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:21:30
[2026-08-25 08:21:31,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:21:31,775.775 INFO    ] Initializing speech engine...
[2026-08-25 08:21:31,799.799 INFO    ] 2026-08-25 08:21:31
[2026-08-25 08:21:32,069.069 INFO    ] 2026-08-25 08:21:32
[2026-08-25 08:21:32,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:21:32,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:21:32,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:21:32,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:21:32,606.606 INFO    ] time= 25/08/2026 08:21:32
[2026-08-25 08:21:32,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:21:32,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:21:32,746.746 INFO    ] No existing commands found in stream
[2026-08-25 08:21:37,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:21:37,788.788 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 08:21:41,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:21:41,745.745 INFO    ] Checking for system updates...
[2026-08-25 08:21:41,790.790 INFO    ] 200
[2026-08-25 08:21:41,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:41,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:21:41,862.862 INFO    ] No update needed
[2026-08-25 08:21:41,865.865 INFO    ] Checking for camera pi updates...
[2026-08-25 08:21:41,904.904 INFO    ] 200
[2026-08-25 08:21:41,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:41,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:21:42,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:21:42,019.019 INFO    ] No camera update needed
[2026-08-25 08:21:42,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:21:42,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:21:42,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:21:42,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:21:44,080.080 INFO    ] ================================================
[2026-08-25 08:21:44,096.096 INFO    ] Launching Daemon at Tue Aug 25 08:21:44 IST 2026
[2026-08-25 08:21:44,107.107 INFO    ] ================================================
[2026-08-25 08:21:44,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:21:44
[2026-08-25 08:21:45,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:21:45,677.677 INFO    ] Initializing speech engine...
[2026-08-25 08:21:45,690.690 INFO    ] 2026-08-25 08:21:45
[2026-08-25 08:21:45,978.978 INFO    ] 2026-08-25 08:21:45
[2026-08-25 08:21:46,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:21:46,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:21:46,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:21:46,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:21:46,375.375 INFO    ] time= 25/08/2026 08:21:46
[2026-08-25 08:21:46,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:21:46,427.427 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:21:46,573.573 INFO    ] No existing commands found in stream
[2026-08-25 08:21:51,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:21:51,586.586 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 08:21:55,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:21:55,662.662 INFO    ] Checking for system updates...
[2026-08-25 08:21:55,702.702 INFO    ] 200
[2026-08-25 08:21:55,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:55,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:21:55,766.766 INFO    ] No update needed
[2026-08-25 08:21:55,769.769 INFO    ] Checking for camera pi updates...
[2026-08-25 08:21:55,809.809 INFO    ] 200
[2026-08-25 08:21:55,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:21:55,852.852 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:21:55,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:21:55,899.899 INFO    ] No camera update needed
[2026-08-25 08:21:55,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:21:55,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:21:55,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:21:55,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:21:57,954.954 INFO    ] ================================================
[2026-08-25 08:21:57,969.969 INFO    ] Launching Daemon at Tue Aug 25 08:21:57 IST 2026
[2026-08-25 08:21:57,980.980 INFO    ] ================================================
[2026-08-25 08:21:58,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:21:58
[2026-08-25 08:21:59,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:21:59,395.395 INFO    ] Initializing speech engine...
[2026-08-25 08:21:59,404.404 INFO    ] 2026-08-25 08:21:59
[2026-08-25 08:21:59,649.649 INFO    ] 2026-08-25 08:21:59
[2026-08-25 08:21:59,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:21:59,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:21:59,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:22:00,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:22:00,096.096 INFO    ] time= 25/08/2026 08:22:00
[2026-08-25 08:22:00,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:22:00,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:22:00,335.335 INFO    ] No existing commands found in stream
[2026-08-25 08:22:05,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:22:05,364.364 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 08:22:07,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:22:07,609.609 INFO    ] Checking for system updates...
[2026-08-25 08:22:07,645.645 INFO    ] 200
[2026-08-25 08:22:07,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:07,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:07,702.702 INFO    ] No update needed
[2026-08-25 08:22:07,704.704 INFO    ] Checking for camera pi updates...
[2026-08-25 08:22:07,740.740 INFO    ] 200
[2026-08-25 08:22:07,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:07,782.782 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:22:07,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:07,841.841 INFO    ] No camera update needed
[2026-08-25 08:22:07,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:22:07,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:22:07,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:22:07,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:22:09,896.896 INFO    ] ================================================
[2026-08-25 08:22:09,913.913 INFO    ] Launching Daemon at Tue Aug 25 08:22:09 IST 2026
[2026-08-25 08:22:09,924.924 INFO    ] ================================================
[2026-08-25 08:22:10,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:22:10
[2026-08-25 08:22:11,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:22:11,328.328 INFO    ] Initializing speech engine...
[2026-08-25 08:22:11,335.335 INFO    ] 2026-08-25 08:22:11
[2026-08-25 08:22:11,625.625 INFO    ] 2026-08-25 08:22:11
[2026-08-25 08:22:11,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:22:11,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:22:11,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:22:12,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:22:12,034.034 INFO    ] time= 25/08/2026 08:22:12
[2026-08-25 08:22:12,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:22:12,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:22:12,192.192 INFO    ] No existing commands found in stream
[2026-08-25 08:22:17,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:22:17,218.218 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 08:22:18,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:22:18,870.870 INFO    ] Checking for system updates...
[2026-08-25 08:22:18,906.906 INFO    ] 200
[2026-08-25 08:22:18,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:18,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:22:18,972.972 INFO    ] No update needed
[2026-08-25 08:22:18,974.974 INFO    ] Checking for camera pi updates...
[2026-08-25 08:22:19,011.011 INFO    ] 200
[2026-08-25 08:22:19,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:19,060.060 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:22:19,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:22:19,124.124 INFO    ] No camera update needed
[2026-08-25 08:22:19,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:22:19,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:22:19,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:22:19,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:22:21,183.183 INFO    ] ================================================
[2026-08-25 08:22:21,200.200 INFO    ] Launching Daemon at Tue Aug 25 08:22:21 IST 2026
[2026-08-25 08:22:21,211.211 INFO    ] ================================================
[2026-08-25 08:22:21,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:22:21
[2026-08-25 08:22:22,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:22:22,651.651 INFO    ] Initializing speech engine...
[2026-08-25 08:22:22,660.660 INFO    ] 2026-08-25 08:22:22
[2026-08-25 08:22:22,950.950 INFO    ] 2026-08-25 08:22:22
[2026-08-25 08:22:22,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:22:23,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:22:23,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:22:23,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:22:23,325.325 INFO    ] time= 25/08/2026 08:22:23
[2026-08-25 08:22:23,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:22:23,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:22:23,450.450 INFO    ] No existing commands found in stream
[2026-08-25 08:22:28,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:22:28,465.465 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 08:22:29,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:22:29,906.906 INFO    ] Checking for system updates...
[2026-08-25 08:22:29,946.946 INFO    ] 200
[2026-08-25 08:22:29,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:30,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:30,004.004 INFO    ] No update needed
[2026-08-25 08:22:30,007.007 INFO    ] Checking for camera pi updates...
[2026-08-25 08:22:30,044.044 INFO    ] 200
[2026-08-25 08:22:30,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:30,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:22:30,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:30,144.144 INFO    ] No camera update needed
[2026-08-25 08:22:30,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:22:30,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:22:30,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:22:30,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:22:32,202.202 INFO    ] ================================================
[2026-08-25 08:22:32,220.220 INFO    ] Launching Daemon at Tue Aug 25 08:22:32 IST 2026
[2026-08-25 08:22:32,232.232 INFO    ] ================================================
[2026-08-25 08:22:32,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:22:32
[2026-08-25 08:22:33,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:22:33,715.715 INFO    ] Initializing speech engine...
[2026-08-25 08:22:33,724.724 INFO    ] 2026-08-25 08:22:33
[2026-08-25 08:22:33,997.997 INFO    ] 2026-08-25 08:22:33
[2026-08-25 08:22:34,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:22:34,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:22:34,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:22:34,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:22:34,444.444 INFO    ] time= 25/08/2026 08:22:34
[2026-08-25 08:22:34,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:22:34,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:22:34,563.563 INFO    ] No existing commands found in stream
[2026-08-25 08:22:39,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:22:39,586.586 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 08:22:41,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:22:41,280.280 INFO    ] Checking for system updates...
[2026-08-25 08:22:41,316.316 INFO    ] 200
[2026-08-25 08:22:41,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:41,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:41,378.378 INFO    ] No update needed
[2026-08-25 08:22:41,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 08:22:41,414.414 INFO    ] 200
[2026-08-25 08:22:41,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:41,458.458 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:22:41,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:41,507.507 INFO    ] No camera update needed
[2026-08-25 08:22:41,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:22:41,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:22:41,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:22:41,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:22:43,562.562 INFO    ] ================================================
[2026-08-25 08:22:43,577.577 INFO    ] Launching Daemon at Tue Aug 25 08:22:43 IST 2026
[2026-08-25 08:22:43,588.588 INFO    ] ================================================
[2026-08-25 08:22:44,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:22:44
[2026-08-25 08:22:44,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:22:45,033.033 INFO    ] Initializing speech engine...
[2026-08-25 08:22:45,039.039 INFO    ] 2026-08-25 08:22:45
[2026-08-25 08:22:45,331.331 INFO    ] 2026-08-25 08:22:45
[2026-08-25 08:22:45,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:22:45,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:22:45,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:22:45,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:22:45,723.723 INFO    ] time= 25/08/2026 08:22:45
[2026-08-25 08:22:45,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:22:45,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:22:45,832.832 INFO    ] No existing commands found in stream
[2026-08-25 08:22:50,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:22:50,850.850 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 08:22:53,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:22:53,326.326 INFO    ] Checking for system updates...
[2026-08-25 08:22:53,365.365 INFO    ] 200
[2026-08-25 08:22:53,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:53,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:53,442.442 INFO    ] No update needed
[2026-08-25 08:22:53,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 08:22:53,481.481 INFO    ] 200
[2026-08-25 08:22:53,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:22:53,528.528 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:22:53,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:22:53,579.579 INFO    ] No camera update needed
[2026-08-25 08:22:53,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:22:53,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:22:53,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:22:53,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:22:55,634.634 INFO    ] ================================================
[2026-08-25 08:22:55,649.649 INFO    ] Launching Daemon at Tue Aug 25 08:22:55 IST 2026
[2026-08-25 08:22:55,661.661 INFO    ] ================================================
[2026-08-25 08:22:56,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:22:56
[2026-08-25 08:22:56,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:22:57,199.199 INFO    ] Initializing speech engine...
[2026-08-25 08:22:57,207.207 INFO    ] 2026-08-25 08:22:57
[2026-08-25 08:22:57,485.485 INFO    ] 2026-08-25 08:22:57
[2026-08-25 08:22:57,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:22:57,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:22:57,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:22:57,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:22:57,956.956 INFO    ] time= 25/08/2026 08:22:57
[2026-08-25 08:22:58,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:22:58,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:22:58,176.176 INFO    ] No existing commands found in stream
[2026-08-25 08:23:03,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:23:03,210.210 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 08:23:06,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:23:06,747.747 INFO    ] Checking for system updates...
[2026-08-25 08:23:06,787.787 INFO    ] 200
[2026-08-25 08:23:06,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:06,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:23:06,844.844 INFO    ] No update needed
[2026-08-25 08:23:06,847.847 INFO    ] Checking for camera pi updates...
[2026-08-25 08:23:06,880.880 INFO    ] 200
[2026-08-25 08:23:06,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:06,927.927 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:23:06,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:23:06,971.971 INFO    ] No camera update needed
[2026-08-25 08:23:06,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:23:06,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:23:06,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:23:06,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:23:09,027.027 INFO    ] ================================================
[2026-08-25 08:23:09,043.043 INFO    ] Launching Daemon at Tue Aug 25 08:23:09 IST 2026
[2026-08-25 08:23:09,054.054 INFO    ] ================================================
[2026-08-25 08:23:09,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:23:09
[2026-08-25 08:23:10,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:23:10,474.474 INFO    ] Initializing speech engine...
[2026-08-25 08:23:10,488.488 INFO    ] 2026-08-25 08:23:10
[2026-08-25 08:23:10,742.742 INFO    ] 2026-08-25 08:23:10
[2026-08-25 08:23:10,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:23:10,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:23:10,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:23:11,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:23:11,117.117 INFO    ] time= 25/08/2026 08:23:11
[2026-08-25 08:23:11,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:23:11,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:23:11,236.236 INFO    ] No existing commands found in stream
[2026-08-25 08:23:16,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:23:16,274.274 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 08:23:19,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:23:19,662.662 INFO    ] Checking for system updates...
[2026-08-25 08:23:19,697.697 INFO    ] 200
[2026-08-25 08:23:19,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:19,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:23:19,754.754 INFO    ] No update needed
[2026-08-25 08:23:19,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 08:23:19,794.794 INFO    ] 200
[2026-08-25 08:23:19,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:19,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:23:20,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:23:20,003.003 INFO    ] No camera update needed
[2026-08-25 08:23:20,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:23:20,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:23:20,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:23:20,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:23:22,060.060 INFO    ] ================================================
[2026-08-25 08:23:22,076.076 INFO    ] Launching Daemon at Tue Aug 25 08:23:22 IST 2026
[2026-08-25 08:23:22,087.087 INFO    ] ================================================
[2026-08-25 08:23:22,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:23:22
[2026-08-25 08:23:23,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:23:23,733.733 INFO    ] Initializing speech engine...
[2026-08-25 08:23:23,744.744 INFO    ] 2026-08-25 08:23:23
[2026-08-25 08:23:24,031.031 INFO    ] 2026-08-25 08:23:24
[2026-08-25 08:23:24,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:23:24,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:23:24,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:23:24,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:23:24,516.516 INFO    ] time= 25/08/2026 08:23:24
[2026-08-25 08:23:24,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:23:24,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:23:24,744.744 INFO    ] No existing commands found in stream
[2026-08-25 08:23:29,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:23:29,763.763 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 08:23:31,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:23:31,787.787 INFO    ] Checking for system updates...
[2026-08-25 08:23:31,830.830 INFO    ] 200
[2026-08-25 08:23:31,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:31,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:23:31,890.890 INFO    ] No update needed
[2026-08-25 08:23:31,893.893 INFO    ] Checking for camera pi updates...
[2026-08-25 08:23:31,928.928 INFO    ] 200
[2026-08-25 08:23:31,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:31,988.988 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:23:32,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:23:32,074.074 INFO    ] No camera update needed
[2026-08-25 08:23:32,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:23:32,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:23:32,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:23:32,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:23:34,131.131 INFO    ] ================================================
[2026-08-25 08:23:34,146.146 INFO    ] Launching Daemon at Tue Aug 25 08:23:34 IST 2026
[2026-08-25 08:23:34,158.158 INFO    ] ================================================
[2026-08-25 08:23:34,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:23:34
[2026-08-25 08:23:35,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:23:35,572.572 INFO    ] Initializing speech engine...
[2026-08-25 08:23:35,578.578 INFO    ] 2026-08-25 08:23:35
[2026-08-25 08:23:35,880.880 INFO    ] 2026-08-25 08:23:35
[2026-08-25 08:23:35,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:23:36,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:23:36,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:23:36,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:23:36,268.268 INFO    ] time= 25/08/2026 08:23:36
[2026-08-25 08:23:36,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:23:36,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:23:36,397.397 INFO    ] No existing commands found in stream
[2026-08-25 08:23:41,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:23:41,410.410 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 08:23:41,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:23:41,870.870 INFO    ] Checking for system updates...
[2026-08-25 08:23:41,906.906 INFO    ] 200
[2026-08-25 08:23:41,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:41,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:23:41,967.967 INFO    ] No update needed
[2026-08-25 08:23:41,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 08:23:42,007.007 INFO    ] 200
[2026-08-25 08:23:42,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:42,058.058 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:23:42,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:23:42,116.116 INFO    ] No camera update needed
[2026-08-25 08:23:42,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:23:42,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:23:42,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:23:42,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:23:44,171.171 INFO    ] ================================================
[2026-08-25 08:23:44,187.187 INFO    ] Launching Daemon at Tue Aug 25 08:23:44 IST 2026
[2026-08-25 08:23:44,198.198 INFO    ] ================================================
[2026-08-25 08:23:44,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:23:44
[2026-08-25 08:23:45,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:23:45,617.617 INFO    ] Initializing speech engine...
[2026-08-25 08:23:45,635.635 INFO    ] 2026-08-25 08:23:45
[2026-08-25 08:23:45,893.893 INFO    ] 2026-08-25 08:23:45
[2026-08-25 08:23:45,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:23:46,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:23:46,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:23:46,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:23:46,273.273 INFO    ] time= 25/08/2026 08:23:46
[2026-08-25 08:23:46,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:23:46,320.320 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:23:46,458.458 INFO    ] No existing commands found in stream
[2026-08-25 08:23:51,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:23:51,489.489 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 08:23:52,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:23:52,886.886 INFO    ] Checking for system updates...
[2026-08-25 08:23:52,922.922 INFO    ] 200
[2026-08-25 08:23:52,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:52,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:23:52,989.989 INFO    ] No update needed
[2026-08-25 08:23:52,991.991 INFO    ] Checking for camera pi updates...
[2026-08-25 08:23:53,026.026 INFO    ] 200
[2026-08-25 08:23:53,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:23:53,076.076 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:23:53,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:23:53,138.138 INFO    ] No camera update needed
[2026-08-25 08:23:53,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:23:53,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:23:53,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:23:53,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:23:55,198.198 INFO    ] ================================================
[2026-08-25 08:23:55,214.214 INFO    ] Launching Daemon at Tue Aug 25 08:23:55 IST 2026
[2026-08-25 08:23:55,226.226 INFO    ] ================================================
[2026-08-25 08:23:55,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:23:55
[2026-08-25 08:23:56,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:23:56,670.670 INFO    ] Initializing speech engine...
[2026-08-25 08:23:56,696.696 INFO    ] 2026-08-25 08:23:56
[2026-08-25 08:23:56,950.950 INFO    ] 2026-08-25 08:23:56
[2026-08-25 08:23:56,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:23:57,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:23:57,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:23:57,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:23:57,431.431 INFO    ] time= 25/08/2026 08:23:57
[2026-08-25 08:23:57,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:23:57,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:23:57,631.631 INFO    ] No existing commands found in stream
[2026-08-25 08:24:02,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:24:02,661.661 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 08:24:06,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:24:06,132.132 INFO    ] Checking for system updates...
[2026-08-25 08:24:06,190.190 INFO    ] 200
[2026-08-25 08:24:06,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:06,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:24:06,248.248 INFO    ] No update needed
[2026-08-25 08:24:06,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 08:24:06,284.284 INFO    ] 200
[2026-08-25 08:24:06,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:06,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:24:06,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:24:06,379.379 INFO    ] No camera update needed
[2026-08-25 08:24:06,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:24:06,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:24:06,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:24:06,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:24:08,435.435 INFO    ] ================================================
[2026-08-25 08:24:08,451.451 INFO    ] Launching Daemon at Tue Aug 25 08:24:08 IST 2026
[2026-08-25 08:24:08,462.462 INFO    ] ================================================
[2026-08-25 08:24:09,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:24:09
[2026-08-25 08:24:09,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:24:10,121.121 INFO    ] Initializing speech engine...
[2026-08-25 08:24:10,134.134 INFO    ] 2026-08-25 08:24:10
[2026-08-25 08:24:10,419.419 INFO    ] 2026-08-25 08:24:10
[2026-08-25 08:24:10,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:24:10,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:24:10,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:24:10,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:24:10,967.967 INFO    ] time= 25/08/2026 08:24:10
[2026-08-25 08:24:10,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:24:10,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:24:11,128.128 INFO    ] No existing commands found in stream
[2026-08-25 08:24:16,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:24:16,151.151 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 08:24:19,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:24:19,790.790 INFO    ] Checking for system updates...
[2026-08-25 08:24:19,831.831 INFO    ] 200
[2026-08-25 08:24:19,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:19,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:24:19,891.891 INFO    ] No update needed
[2026-08-25 08:24:19,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 08:24:19,929.929 INFO    ] 200
[2026-08-25 08:24:19,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:19,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:24:20,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:24:20,032.032 INFO    ] No camera update needed
[2026-08-25 08:24:20,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:24:20,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:24:20,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:24:20,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:24:22,090.090 INFO    ] ================================================
[2026-08-25 08:24:22,106.106 INFO    ] Launching Daemon at Tue Aug 25 08:24:22 IST 2026
[2026-08-25 08:24:22,116.116 INFO    ] ================================================
[2026-08-25 08:24:22,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:24:22
[2026-08-25 08:24:23,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:24:23,611.611 INFO    ] Initializing speech engine...
[2026-08-25 08:24:23,620.620 INFO    ] 2026-08-25 08:24:23
[2026-08-25 08:24:23,890.890 INFO    ] 2026-08-25 08:24:23
[2026-08-25 08:24:23,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:24:24,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:24:24,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:24:24,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:24:24,279.279 INFO    ] time= 25/08/2026 08:24:24
[2026-08-25 08:24:24,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:24:24,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:24:24,408.408 INFO    ] No existing commands found in stream
[2026-08-25 08:24:29,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:24:29,421.421 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 08:24:31,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:24:31,211.211 INFO    ] Checking for system updates...
[2026-08-25 08:24:31,254.254 INFO    ] 200
[2026-08-25 08:24:31,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:31,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:24:31,318.318 INFO    ] No update needed
[2026-08-25 08:24:31,322.322 INFO    ] Checking for camera pi updates...
[2026-08-25 08:24:31,363.363 INFO    ] 200
[2026-08-25 08:24:31,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:31,425.425 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:24:31,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:24:31,486.486 INFO    ] No camera update needed
[2026-08-25 08:24:31,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:24:31,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:24:31,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:24:31,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:24:33,549.549 INFO    ] ================================================
[2026-08-25 08:24:33,564.564 INFO    ] Launching Daemon at Tue Aug 25 08:24:33 IST 2026
[2026-08-25 08:24:33,575.575 INFO    ] ================================================
[2026-08-25 08:24:34,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:24:34
[2026-08-25 08:24:34,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:24:35,188.188 INFO    ] Initializing speech engine...
[2026-08-25 08:24:35,194.194 INFO    ] 2026-08-25 08:24:35
[2026-08-25 08:24:35,483.483 INFO    ] 2026-08-25 08:24:35
[2026-08-25 08:24:35,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:24:35,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:24:35,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:24:35,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:24:35,963.963 INFO    ] time= 25/08/2026 08:24:35
[2026-08-25 08:24:36,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:24:36,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:24:36,185.185 INFO    ] No existing commands found in stream
[2026-08-25 08:24:41,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:24:41,217.217 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 08:24:44,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:24:44,499.499 INFO    ] Checking for system updates...
[2026-08-25 08:24:44,534.534 INFO    ] 200
[2026-08-25 08:24:44,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:44,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:24:44,593.593 INFO    ] No update needed
[2026-08-25 08:24:44,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 08:24:44,634.634 INFO    ] 200
[2026-08-25 08:24:44,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:44,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:24:44,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:24:44,737.737 INFO    ] No camera update needed
[2026-08-25 08:24:44,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:24:44,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:24:44,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:24:44,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:24:46,794.794 INFO    ] ================================================
[2026-08-25 08:24:46,810.810 INFO    ] Launching Daemon at Tue Aug 25 08:24:46 IST 2026
[2026-08-25 08:24:46,821.821 INFO    ] ================================================
[2026-08-25 08:24:47,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:24:47
[2026-08-25 08:24:48,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:24:48,277.277 INFO    ] Initializing speech engine...
[2026-08-25 08:24:48,287.287 INFO    ] 2026-08-25 08:24:48
[2026-08-25 08:24:48,535.535 INFO    ] 2026-08-25 08:24:48
[2026-08-25 08:24:48,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:24:48,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:24:48,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:24:48,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:24:49,038.038 INFO    ] time= 25/08/2026 08:24:48
[2026-08-25 08:24:49,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:24:49,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:24:49,237.237 INFO    ] No existing commands found in stream
[2026-08-25 08:24:54,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:24:54,261.261 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 08:24:55,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:24:55,105.105 INFO    ] Checking for system updates...
[2026-08-25 08:24:55,140.140 INFO    ] 200
[2026-08-25 08:24:55,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:55,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:24:55,198.198 INFO    ] No update needed
[2026-08-25 08:24:55,200.200 INFO    ] Checking for camera pi updates...
[2026-08-25 08:24:55,234.234 INFO    ] 200
[2026-08-25 08:24:55,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:24:55,277.277 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:24:55,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:24:55,328.328 INFO    ] No camera update needed
[2026-08-25 08:24:55,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:24:55,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:24:55,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:24:55,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:24:57,382.382 INFO    ] ================================================
[2026-08-25 08:24:57,398.398 INFO    ] Launching Daemon at Tue Aug 25 08:24:57 IST 2026
[2026-08-25 08:24:57,409.409 INFO    ] ================================================
[2026-08-25 08:24:57,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:24:57
[2026-08-25 08:24:58,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:24:58,872.872 INFO    ] Initializing speech engine...
[2026-08-25 08:24:58,881.881 INFO    ] 2026-08-25 08:24:58
[2026-08-25 08:24:59,177.177 INFO    ] 2026-08-25 08:24:59
[2026-08-25 08:24:59,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:24:59,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:24:59,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:24:59,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:24:59,658.658 INFO    ] time= 25/08/2026 08:24:59
[2026-08-25 08:24:59,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:24:59,717.717 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:24:59,853.853 INFO    ] No existing commands found in stream
[2026-08-25 08:25:04,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:25:04,878.878 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 08:25:06,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:25:06,822.822 INFO    ] Checking for system updates...
[2026-08-25 08:25:06,863.863 INFO    ] 200
[2026-08-25 08:25:06,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:06,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:25:06,921.921 INFO    ] No update needed
[2026-08-25 08:25:06,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 08:25:06,959.959 INFO    ] 200
[2026-08-25 08:25:06,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:07,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:25:07,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:25:07,054.054 INFO    ] No camera update needed
[2026-08-25 08:25:07,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:25:07,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:25:07,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:25:07,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:25:09,112.112 INFO    ] ================================================
[2026-08-25 08:25:09,127.127 INFO    ] Launching Daemon at Tue Aug 25 08:25:09 IST 2026
[2026-08-25 08:25:09,138.138 INFO    ] ================================================
[2026-08-25 08:25:09,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:25:09
[2026-08-25 08:25:10,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:25:10,572.572 INFO    ] Initializing speech engine...
[2026-08-25 08:25:10,581.581 INFO    ] 2026-08-25 08:25:10
[2026-08-25 08:25:10,849.849 INFO    ] 2026-08-25 08:25:10
[2026-08-25 08:25:10,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:25:11,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:25:11,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:25:11,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:25:11,316.316 INFO    ] time= 25/08/2026 08:25:11
[2026-08-25 08:25:11,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:25:11,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:25:11,531.531 INFO    ] No existing commands found in stream
[2026-08-25 08:25:16,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:25:16,566.566 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 08:25:18,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:25:18,844.844 INFO    ] Checking for system updates...
[2026-08-25 08:25:18,881.881 INFO    ] 200
[2026-08-25 08:25:18,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:18,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:25:18,941.941 INFO    ] No update needed
[2026-08-25 08:25:18,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 08:25:18,978.978 INFO    ] 200
[2026-08-25 08:25:18,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:19,031.031 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:25:19,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:25:19,087.087 INFO    ] No camera update needed
[2026-08-25 08:25:19,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:25:19,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:25:19,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:25:19,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:25:21,146.146 INFO    ] ================================================
[2026-08-25 08:25:21,161.161 INFO    ] Launching Daemon at Tue Aug 25 08:25:21 IST 2026
[2026-08-25 08:25:21,171.171 INFO    ] ================================================
[2026-08-25 08:25:21,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:25:21
[2026-08-25 08:25:22,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:25:22,582.582 INFO    ] Initializing speech engine...
[2026-08-25 08:25:22,608.608 INFO    ] 2026-08-25 08:25:22
[2026-08-25 08:25:22,880.880 INFO    ] 2026-08-25 08:25:22
[2026-08-25 08:25:22,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:25:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:25:23,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:25:23,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:25:23,232.232 INFO    ] time= 25/08/2026 08:25:23
[2026-08-25 08:25:23,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:25:23,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:25:23,381.381 INFO    ] No existing commands found in stream
[2026-08-25 08:25:28,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:25:28,398.398 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 08:25:31,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:25:31,477.477 INFO    ] Checking for system updates...
[2026-08-25 08:25:31,525.525 INFO    ] 200
[2026-08-25 08:25:31,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:31,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:25:31,586.586 INFO    ] No update needed
[2026-08-25 08:25:31,589.589 INFO    ] Checking for camera pi updates...
[2026-08-25 08:25:31,625.625 INFO    ] 200
[2026-08-25 08:25:31,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:31,675.675 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:25:31,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:25:31,837.837 INFO    ] No camera update needed
[2026-08-25 08:25:31,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:25:31,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:25:31,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:25:31,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:25:33,895.895 INFO    ] ================================================
[2026-08-25 08:25:33,910.910 INFO    ] Launching Daemon at Tue Aug 25 08:25:33 IST 2026
[2026-08-25 08:25:33,922.922 INFO    ] ================================================
[2026-08-25 08:25:34,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:25:34
[2026-08-25 08:25:35,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:25:35,557.557 INFO    ] Initializing speech engine...
[2026-08-25 08:25:35,569.569 INFO    ] 2026-08-25 08:25:35
[2026-08-25 08:25:35,859.859 INFO    ] 2026-08-25 08:25:35
[2026-08-25 08:25:35,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:25:36,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:25:36,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:25:36,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:25:36,334.334 INFO    ] time= 25/08/2026 08:25:36
[2026-08-25 08:25:36,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:25:36,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:25:36,536.536 INFO    ] No existing commands found in stream
[2026-08-25 08:25:41,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:25:41,567.567 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 08:25:42,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:25:42,395.395 INFO    ] Checking for system updates...
[2026-08-25 08:25:42,431.431 INFO    ] 200
[2026-08-25 08:25:42,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:42,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:25:42,490.490 INFO    ] No update needed
[2026-08-25 08:25:42,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 08:25:42,527.527 INFO    ] 200
[2026-08-25 08:25:42,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:42,575.575 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:25:42,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:25:42,621.621 INFO    ] No camera update needed
[2026-08-25 08:25:42,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:25:42,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:25:42,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:25:42,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:25:44,676.676 INFO    ] ================================================
[2026-08-25 08:25:44,691.691 INFO    ] Launching Daemon at Tue Aug 25 08:25:44 IST 2026
[2026-08-25 08:25:44,702.702 INFO    ] ================================================
[2026-08-25 08:25:45,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:25:45
[2026-08-25 08:25:45,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:25:46,239.239 INFO    ] Initializing speech engine...
[2026-08-25 08:25:46,249.249 INFO    ] 2026-08-25 08:25:46
[2026-08-25 08:25:46,500.500 INFO    ] 2026-08-25 08:25:46
[2026-08-25 08:25:46,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:25:46,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:25:46,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:25:46,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:25:46,877.877 INFO    ] time= 25/08/2026 08:25:46
[2026-08-25 08:25:46,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:25:46,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:25:47,069.069 INFO    ] No existing commands found in stream
[2026-08-25 08:25:52,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:25:52,094.094 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 08:25:56,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:25:56,484.484 INFO    ] Checking for system updates...
[2026-08-25 08:25:56,520.520 INFO    ] 200
[2026-08-25 08:25:56,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:56,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:25:56,578.578 INFO    ] No update needed
[2026-08-25 08:25:56,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 08:25:56,617.617 INFO    ] 200
[2026-08-25 08:25:56,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:25:56,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:25:56,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:25:56,709.709 INFO    ] No camera update needed
[2026-08-25 08:25:56,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:25:56,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:25:56,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:25:56,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:25:58,763.763 INFO    ] ================================================
[2026-08-25 08:25:58,786.786 INFO    ] Launching Daemon at Tue Aug 25 08:25:58 IST 2026
[2026-08-25 08:25:58,797.797 INFO    ] ================================================
[2026-08-25 08:25:59,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:25:59
[2026-08-25 08:26:00,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:26:00,267.267 INFO    ] Initializing speech engine...
[2026-08-25 08:26:00,277.277 INFO    ] 2026-08-25 08:26:00
[2026-08-25 08:26:00,530.530 INFO    ] 2026-08-25 08:26:00
[2026-08-25 08:26:00,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:26:00,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:26:00,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:26:00,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:26:00,901.901 INFO    ] time= 25/08/2026 08:26:00
[2026-08-25 08:26:00,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:26:00,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:26:01,086.086 INFO    ] No existing commands found in stream
[2026-08-25 08:26:06,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:26:06,108.108 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 08:26:10,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:26:10,454.454 INFO    ] Checking for system updates...
[2026-08-25 08:26:10,489.489 INFO    ] 200
[2026-08-25 08:26:10,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:10,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:26:10,547.547 INFO    ] No update needed
[2026-08-25 08:26:10,550.550 INFO    ] Checking for camera pi updates...
[2026-08-25 08:26:10,583.583 INFO    ] 200
[2026-08-25 08:26:10,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:10,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:26:10,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:26:10,673.673 INFO    ] No camera update needed
[2026-08-25 08:26:10,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:26:10,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:26:10,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:26:10,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:26:12,728.728 INFO    ] ================================================
[2026-08-25 08:26:12,744.744 INFO    ] Launching Daemon at Tue Aug 25 08:26:12 IST 2026
[2026-08-25 08:26:12,755.755 INFO    ] ================================================
[2026-08-25 08:26:13,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:26:13
[2026-08-25 08:26:13,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:26:14,154.154 INFO    ] Initializing speech engine...
[2026-08-25 08:26:14,175.175 INFO    ] 2026-08-25 08:26:14
[2026-08-25 08:26:14,443.443 INFO    ] 2026-08-25 08:26:14
[2026-08-25 08:26:14,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:26:14,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:26:14,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:26:14,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:26:14,811.811 INFO    ] time= 25/08/2026 08:26:14
[2026-08-25 08:26:14,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:26:14,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:26:14,979.979 INFO    ] No existing commands found in stream
[2026-08-25 08:26:20,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:26:20,012.012 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 08:26:22,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:26:22,150.150 INFO    ] Checking for system updates...
[2026-08-25 08:26:22,186.186 INFO    ] 200
[2026-08-25 08:26:22,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:22,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:26:22,250.250 INFO    ] No update needed
[2026-08-25 08:26:22,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 08:26:22,290.290 INFO    ] 200
[2026-08-25 08:26:22,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:22,333.333 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:26:22,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:26:22,378.378 INFO    ] No camera update needed
[2026-08-25 08:26:22,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:26:22,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:26:22,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:26:22,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:26:24,431.431 INFO    ] ================================================
[2026-08-25 08:26:24,447.447 INFO    ] Launching Daemon at Tue Aug 25 08:26:24 IST 2026
[2026-08-25 08:26:24,458.458 INFO    ] ================================================
[2026-08-25 08:26:25,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:26:25
[2026-08-25 08:26:25,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:26:26,082.082 INFO    ] Initializing speech engine...
[2026-08-25 08:26:26,088.088 INFO    ] 2026-08-25 08:26:26
[2026-08-25 08:26:26,378.378 INFO    ] 2026-08-25 08:26:26
[2026-08-25 08:26:26,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:26:26,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:26:26,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:26:26,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:26:26,848.848 INFO    ] time= 25/08/2026 08:26:26
[2026-08-25 08:26:26,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:26:26,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:26:27,060.060 INFO    ] No existing commands found in stream
[2026-08-25 08:26:32,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:26:32,080.080 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 08:26:35,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:26:35,503.503 INFO    ] Checking for system updates...
[2026-08-25 08:26:35,545.545 INFO    ] 200
[2026-08-25 08:26:35,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:35,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:26:35,612.612 INFO    ] No update needed
[2026-08-25 08:26:35,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 08:26:35,649.649 INFO    ] 200
[2026-08-25 08:26:35,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:35,691.691 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:26:35,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:26:35,740.740 INFO    ] No camera update needed
[2026-08-25 08:26:35,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:26:35,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:26:35,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:26:35,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:26:37,794.794 INFO    ] ================================================
[2026-08-25 08:26:37,809.809 INFO    ] Launching Daemon at Tue Aug 25 08:26:37 IST 2026
[2026-08-25 08:26:37,819.819 INFO    ] ================================================
[2026-08-25 08:26:38,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:26:38
[2026-08-25 08:26:38,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:26:39,233.233 INFO    ] Initializing speech engine...
[2026-08-25 08:26:39,242.242 INFO    ] 2026-08-25 08:26:39
[2026-08-25 08:26:39,489.489 INFO    ] 2026-08-25 08:26:39
[2026-08-25 08:26:39,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:26:39,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:26:39,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:26:39,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:26:39,857.857 INFO    ] time= 25/08/2026 08:26:39
[2026-08-25 08:26:39,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:26:39,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:26:40,054.054 INFO    ] No existing commands found in stream
[2026-08-25 08:26:45,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:26:45,067.067 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 08:26:46,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:26:46,974.974 INFO    ] Checking for system updates...
[2026-08-25 08:26:47,010.010 INFO    ] 200
[2026-08-25 08:26:47,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:47,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:26:47,067.067 INFO    ] No update needed
[2026-08-25 08:26:47,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 08:26:47,107.107 INFO    ] 200
[2026-08-25 08:26:47,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:47,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:26:47,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:26:47,198.198 INFO    ] No camera update needed
[2026-08-25 08:26:47,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:26:47,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:26:47,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:26:47,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:26:49,252.252 INFO    ] ================================================
[2026-08-25 08:26:49,267.267 INFO    ] Launching Daemon at Tue Aug 25 08:26:49 IST 2026
[2026-08-25 08:26:49,278.278 INFO    ] ================================================
[2026-08-25 08:26:49,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:26:49
[2026-08-25 08:26:50,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:26:50,922.922 INFO    ] Initializing speech engine...
[2026-08-25 08:26:50,933.933 INFO    ] 2026-08-25 08:26:50
[2026-08-25 08:26:51,246.246 INFO    ] 2026-08-25 08:26:51
[2026-08-25 08:26:51,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:26:51,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:26:51,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:26:51,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:26:51,686.686 INFO    ] time= 25/08/2026 08:26:51
[2026-08-25 08:26:51,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:26:51,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:26:51,885.885 INFO    ] No existing commands found in stream
[2026-08-25 08:26:56,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:26:56,910.910 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 08:26:58,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:26:58,436.436 INFO    ] Checking for system updates...
[2026-08-25 08:26:58,472.472 INFO    ] 200
[2026-08-25 08:26:58,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:58,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:26:58,537.537 INFO    ] No update needed
[2026-08-25 08:26:58,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 08:26:58,577.577 INFO    ] 200
[2026-08-25 08:26:58,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:26:58,624.624 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:26:58,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:26:58,687.687 INFO    ] No camera update needed
[2026-08-25 08:26:58,689.689 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:26:58,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:26:58,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:26:58,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:27:00,743.743 INFO    ] ================================================
[2026-08-25 08:27:00,758.758 INFO    ] Launching Daemon at Tue Aug 25 08:27:00 IST 2026
[2026-08-25 08:27:00,769.769 INFO    ] ================================================
[2026-08-25 08:27:01,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:27:01
[2026-08-25 08:27:02,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:27:02,493.493 INFO    ] Initializing speech engine...
[2026-08-25 08:27:02,503.503 INFO    ] 2026-08-25 08:27:02
[2026-08-25 08:27:02,792.792 INFO    ] 2026-08-25 08:27:02
[2026-08-25 08:27:02,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:27:03,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:27:03,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:27:03,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:27:03,296.296 INFO    ] time= 25/08/2026 08:27:03
[2026-08-25 08:27:03,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:27:03,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:27:03,528.528 INFO    ] No existing commands found in stream
[2026-08-25 08:27:08,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:27:08,551.551 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 08:27:09,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:27:09,270.270 INFO    ] Checking for system updates...
[2026-08-25 08:27:09,306.306 INFO    ] 200
[2026-08-25 08:27:09,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:09,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:27:09,374.374 INFO    ] No update needed
[2026-08-25 08:27:09,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 08:27:09,410.410 INFO    ] 200
[2026-08-25 08:27:09,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:09,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:27:09,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:27:09,511.511 INFO    ] No camera update needed
[2026-08-25 08:27:09,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:27:09,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:27:09,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:27:09,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:27:11,564.564 INFO    ] ================================================
[2026-08-25 08:27:11,580.580 INFO    ] Launching Daemon at Tue Aug 25 08:27:11 IST 2026
[2026-08-25 08:27:11,590.590 INFO    ] ================================================
[2026-08-25 08:27:12,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:27:12
[2026-08-25 08:27:12,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:27:13,029.029 INFO    ] Initializing speech engine...
[2026-08-25 08:27:13,038.038 INFO    ] 2026-08-25 08:27:13
[2026-08-25 08:27:13,308.308 INFO    ] 2026-08-25 08:27:13
[2026-08-25 08:27:13,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:27:13,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:27:13,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:27:13,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:27:13,660.660 INFO    ] time= 25/08/2026 08:27:13
[2026-08-25 08:27:13,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:27:13,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:27:13,810.810 INFO    ] No existing commands found in stream
[2026-08-25 08:27:18,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:27:18,826.826 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 08:27:22,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:27:22,183.183 INFO    ] Checking for system updates...
[2026-08-25 08:27:22,220.220 INFO    ] 200
[2026-08-25 08:27:22,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:22,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:27:22,287.287 INFO    ] No update needed
[2026-08-25 08:27:22,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 08:27:22,326.326 INFO    ] 200
[2026-08-25 08:27:22,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:22,376.376 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:27:22,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:27:22,426.426 INFO    ] No camera update needed
[2026-08-25 08:27:22,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:27:22,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:27:22,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:27:22,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:27:24,480.480 INFO    ] ================================================
[2026-08-25 08:27:24,496.496 INFO    ] Launching Daemon at Tue Aug 25 08:27:24 IST 2026
[2026-08-25 08:27:24,506.506 INFO    ] ================================================
[2026-08-25 08:27:25,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:27:25
[2026-08-25 08:27:25,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:27:26,042.042 INFO    ] Initializing speech engine...
[2026-08-25 08:27:26,048.048 INFO    ] 2026-08-25 08:27:26
[2026-08-25 08:27:26,349.349 INFO    ] 2026-08-25 08:27:26
[2026-08-25 08:27:26,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:27:26,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:27:26,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:27:26,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:27:26,692.692 INFO    ] time= 25/08/2026 08:27:26
[2026-08-25 08:27:26,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:27:26,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:27:26,780.780 INFO    ] No existing commands found in stream
[2026-08-25 08:27:31,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:27:31,797.797 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 08:27:35,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:27:35,911.911 INFO    ] Checking for system updates...
[2026-08-25 08:27:35,950.950 INFO    ] 200
[2026-08-25 08:27:35,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:36,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:27:36,014.014 INFO    ] No update needed
[2026-08-25 08:27:36,016.016 INFO    ] Checking for camera pi updates...
[2026-08-25 08:27:36,053.053 INFO    ] 200
[2026-08-25 08:27:36,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:36,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:27:36,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:27:36,147.147 INFO    ] No camera update needed
[2026-08-25 08:27:36,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:27:36,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:27:36,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:27:36,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:27:38,203.203 INFO    ] ================================================
[2026-08-25 08:27:38,219.219 INFO    ] Launching Daemon at Tue Aug 25 08:27:38 IST 2026
[2026-08-25 08:27:38,231.231 INFO    ] ================================================
[2026-08-25 08:27:38,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:27:38
[2026-08-25 08:27:39,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:27:39,647.647 INFO    ] Initializing speech engine...
[2026-08-25 08:27:39,656.656 INFO    ] 2026-08-25 08:27:39
[2026-08-25 08:27:39,907.907 INFO    ] 2026-08-25 08:27:39
[2026-08-25 08:27:39,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:27:40,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:27:40,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:27:40,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:27:40,369.369 INFO    ] time= 25/08/2026 08:27:40
[2026-08-25 08:27:40,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:27:40,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:27:40,527.527 INFO    ] No existing commands found in stream
[2026-08-25 08:27:45,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:27:45,542.542 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 08:27:48,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:27:48,710.710 INFO    ] Checking for system updates...
[2026-08-25 08:27:48,745.745 INFO    ] 200
[2026-08-25 08:27:48,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:48,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:27:48,802.802 INFO    ] No update needed
[2026-08-25 08:27:48,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 08:27:48,841.841 INFO    ] 200
[2026-08-25 08:27:48,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:27:48,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:27:48,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:27:48,933.933 INFO    ] No camera update needed
[2026-08-25 08:27:48,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:27:48,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:27:48,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:27:48,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:27:50,988.988 INFO    ] ================================================
[2026-08-25 08:27:51,004.004 INFO    ] Launching Daemon at Tue Aug 25 08:27:50 IST 2026
[2026-08-25 08:27:51,015.015 INFO    ] ================================================
[2026-08-25 08:27:51,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:27:51
[2026-08-25 08:27:52,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:27:52,528.528 INFO    ] Initializing speech engine...
[2026-08-25 08:27:52,540.540 INFO    ] 2026-08-25 08:27:52
[2026-08-25 08:27:52,825.825 INFO    ] 2026-08-25 08:27:52
[2026-08-25 08:27:52,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:27:53,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:27:53,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:27:53,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:27:53,265.265 INFO    ] time= 25/08/2026 08:27:53
[2026-08-25 08:27:53,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:27:53,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:27:53,432.432 INFO    ] No existing commands found in stream
[2026-08-25 08:27:58,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:27:58,473.473 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 08:28:02,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:28:02,314.314 INFO    ] Checking for system updates...
[2026-08-25 08:28:02,354.354 INFO    ] 200
[2026-08-25 08:28:02,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:02,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:28:02,422.422 INFO    ] No update needed
[2026-08-25 08:28:02,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 08:28:02,469.469 INFO    ] 200
[2026-08-25 08:28:02,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:02,517.517 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:28:02,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:28:02,577.577 INFO    ] No camera update needed
[2026-08-25 08:28:02,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:28:02,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:28:02,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:28:02,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:28:04,635.635 INFO    ] ================================================
[2026-08-25 08:28:04,651.651 INFO    ] Launching Daemon at Tue Aug 25 08:28:04 IST 2026
[2026-08-25 08:28:04,662.662 INFO    ] ================================================
[2026-08-25 08:28:05,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:28:05
[2026-08-25 08:28:05,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:28:06,112.112 INFO    ] Initializing speech engine...
[2026-08-25 08:28:06,123.123 INFO    ] 2026-08-25 08:28:06
[2026-08-25 08:28:06,419.419 INFO    ] 2026-08-25 08:28:06
[2026-08-25 08:28:06,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:28:06,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:28:06,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:28:06,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:28:06,866.866 INFO    ] time= 25/08/2026 08:28:06
[2026-08-25 08:28:06,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:28:06,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:28:07,024.024 INFO    ] No existing commands found in stream
[2026-08-25 08:28:12,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:28:12,049.049 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 08:28:14,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:28:14,423.423 INFO    ] Checking for system updates...
[2026-08-25 08:28:14,464.464 INFO    ] 200
[2026-08-25 08:28:14,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:14,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:28:14,531.531 INFO    ] No update needed
[2026-08-25 08:28:14,534.534 INFO    ] Checking for camera pi updates...
[2026-08-25 08:28:14,568.568 INFO    ] 200
[2026-08-25 08:28:14,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:14,612.612 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:28:14,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:28:14,669.669 INFO    ] No camera update needed
[2026-08-25 08:28:14,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:28:14,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:28:14,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:28:14,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:28:16,728.728 INFO    ] ================================================
[2026-08-25 08:28:16,744.744 INFO    ] Launching Daemon at Tue Aug 25 08:28:16 IST 2026
[2026-08-25 08:28:16,754.754 INFO    ] ================================================
[2026-08-25 08:28:17,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:28:17
[2026-08-25 08:28:17,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:28:18,228.228 INFO    ] Initializing speech engine...
[2026-08-25 08:28:18,236.236 INFO    ] 2026-08-25 08:28:18
[2026-08-25 08:28:18,499.499 INFO    ] 2026-08-25 08:28:18
[2026-08-25 08:28:18,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:28:18,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:28:18,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:28:18,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:28:18,970.970 INFO    ] time= 25/08/2026 08:28:18
[2026-08-25 08:28:19,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:28:19,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:28:19,162.162 INFO    ] No existing commands found in stream
[2026-08-25 08:28:24,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:28:24,192.192 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 08:28:27,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:28:27,062.062 INFO    ] Checking for system updates...
[2026-08-25 08:28:27,099.099 INFO    ] 200
[2026-08-25 08:28:27,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:27,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:28:27,164.164 INFO    ] No update needed
[2026-08-25 08:28:27,171.171 INFO    ] Checking for camera pi updates...
[2026-08-25 08:28:27,204.204 INFO    ] 200
[2026-08-25 08:28:27,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:27,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:28:27,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:28:27,298.298 INFO    ] No camera update needed
[2026-08-25 08:28:27,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:28:27,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:28:27,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:28:27,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:28:29,354.354 INFO    ] ================================================
[2026-08-25 08:28:29,370.370 INFO    ] Launching Daemon at Tue Aug 25 08:28:29 IST 2026
[2026-08-25 08:28:29,381.381 INFO    ] ================================================
[2026-08-25 08:28:29,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:28:29
[2026-08-25 08:28:30,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:28:30,885.885 INFO    ] Initializing speech engine...
[2026-08-25 08:28:30,895.895 INFO    ] 2026-08-25 08:28:30
[2026-08-25 08:28:31,186.186 INFO    ] 2026-08-25 08:28:31
[2026-08-25 08:28:31,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:28:31,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:28:31,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:28:31,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:28:31,680.680 INFO    ] time= 25/08/2026 08:28:31
[2026-08-25 08:28:31,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:28:31,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:28:31,835.835 INFO    ] No existing commands found in stream
[2026-08-25 08:28:36,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:28:36,869.869 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 08:28:41,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:28:41,304.304 INFO    ] Checking for system updates...
[2026-08-25 08:28:41,341.341 INFO    ] 200
[2026-08-25 08:28:41,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:41,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:28:41,400.400 INFO    ] No update needed
[2026-08-25 08:28:41,402.402 INFO    ] Checking for camera pi updates...
[2026-08-25 08:28:41,437.437 INFO    ] 200
[2026-08-25 08:28:41,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:41,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:28:41,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:28:41,537.537 INFO    ] No camera update needed
[2026-08-25 08:28:41,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:28:41,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:28:41,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:28:41,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:28:43,592.592 INFO    ] ================================================
[2026-08-25 08:28:43,608.608 INFO    ] Launching Daemon at Tue Aug 25 08:28:43 IST 2026
[2026-08-25 08:28:43,619.619 INFO    ] ================================================
[2026-08-25 08:28:44,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:28:44
[2026-08-25 08:28:44,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:28:45,250.250 INFO    ] Initializing speech engine...
[2026-08-25 08:28:45,257.257 INFO    ] 2026-08-25 08:28:45
[2026-08-25 08:28:45,548.548 INFO    ] 2026-08-25 08:28:45
[2026-08-25 08:28:45,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:28:45,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:28:45,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:28:45,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:28:46,029.029 INFO    ] time= 25/08/2026 08:28:45
[2026-08-25 08:28:46,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:28:46,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:28:46,230.230 INFO    ] No existing commands found in stream
[2026-08-25 08:28:51,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:28:51,264.264 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 08:28:54,800.800 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:28:54,803.803 INFO    ] Checking for system updates...
[2026-08-25 08:28:54,840.840 INFO    ] 200
[2026-08-25 08:28:54,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:54,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:28:54,899.899 INFO    ] No update needed
[2026-08-25 08:28:54,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 08:28:54,937.937 INFO    ] 200
[2026-08-25 08:28:54,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:28:54,990.990 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:28:55,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:28:55,043.043 INFO    ] No camera update needed
[2026-08-25 08:28:55,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:28:55,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:28:55,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:28:55,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:28:57,099.099 INFO    ] ================================================
[2026-08-25 08:28:57,115.115 INFO    ] Launching Daemon at Tue Aug 25 08:28:57 IST 2026
[2026-08-25 08:28:57,126.126 INFO    ] ================================================
[2026-08-25 08:28:57,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:28:57
[2026-08-25 08:28:58,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:28:58,546.546 INFO    ] Initializing speech engine...
[2026-08-25 08:28:58,565.565 INFO    ] 2026-08-25 08:28:58
[2026-08-25 08:28:58,817.817 INFO    ] 2026-08-25 08:28:58
[2026-08-25 08:28:58,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:28:59,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:28:59,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:28:59,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:28:59,221.221 INFO    ] time= 25/08/2026 08:28:59
[2026-08-25 08:28:59,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:28:59,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:28:59,328.328 INFO    ] No existing commands found in stream
[2026-08-25 08:29:04,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:29:04,356.356 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 08:29:06,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:29:06,256.256 INFO    ] Checking for system updates...
[2026-08-25 08:29:06,294.294 INFO    ] 200
[2026-08-25 08:29:06,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:06,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:06,350.350 INFO    ] No update needed
[2026-08-25 08:29:06,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 08:29:06,392.392 INFO    ] 200
[2026-08-25 08:29:06,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:06,435.435 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:29:06,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:06,498.498 INFO    ] No camera update needed
[2026-08-25 08:29:06,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:29:06,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:29:06,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:29:06,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:29:08,553.553 INFO    ] ================================================
[2026-08-25 08:29:08,569.569 INFO    ] Launching Daemon at Tue Aug 25 08:29:08 IST 2026
[2026-08-25 08:29:08,580.580 INFO    ] ================================================
[2026-08-25 08:29:09,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:29:09
[2026-08-25 08:29:09,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:29:10,052.052 INFO    ] Initializing speech engine...
[2026-08-25 08:29:10,058.058 INFO    ] 2026-08-25 08:29:10
[2026-08-25 08:29:10,321.321 INFO    ] 2026-08-25 08:29:10
[2026-08-25 08:29:10,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:29:10,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:29:10,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:29:10,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:29:10,729.729 INFO    ] time= 25/08/2026 08:29:10
[2026-08-25 08:29:10,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:29:10,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:29:10,816.816 INFO    ] No existing commands found in stream
[2026-08-25 08:29:15,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:29:15,849.849 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 08:29:19,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:29:19,895.895 INFO    ] Checking for system updates...
[2026-08-25 08:29:19,930.930 INFO    ] 200
[2026-08-25 08:29:19,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:19,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:19,988.988 INFO    ] No update needed
[2026-08-25 08:29:19,991.991 INFO    ] Checking for camera pi updates...
[2026-08-25 08:29:20,028.028 INFO    ] 200
[2026-08-25 08:29:20,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:20,085.085 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:29:20,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:20,141.141 INFO    ] No camera update needed
[2026-08-25 08:29:20,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:29:20,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:29:20,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:29:20,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:29:22,197.197 INFO    ] ================================================
[2026-08-25 08:29:22,213.213 INFO    ] Launching Daemon at Tue Aug 25 08:29:22 IST 2026
[2026-08-25 08:29:22,224.224 INFO    ] ================================================
[2026-08-25 08:29:22,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:29:22
[2026-08-25 08:29:23,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:29:23,674.674 INFO    ] Initializing speech engine...
[2026-08-25 08:29:23,681.681 INFO    ] 2026-08-25 08:29:23
[2026-08-25 08:29:23,941.941 INFO    ] 2026-08-25 08:29:23
[2026-08-25 08:29:23,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:29:24,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:29:24,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:29:24,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:29:24,401.401 INFO    ] time= 25/08/2026 08:29:24
[2026-08-25 08:29:24,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:29:24,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:29:24,542.542 INFO    ] No existing commands found in stream
[2026-08-25 08:29:29,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:29:29,557.557 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 08:29:30,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:29:30,109.109 INFO    ] Checking for system updates...
[2026-08-25 08:29:30,146.146 INFO    ] 200
[2026-08-25 08:29:30,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:30,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:30,205.205 INFO    ] No update needed
[2026-08-25 08:29:30,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 08:29:30,240.240 INFO    ] 200
[2026-08-25 08:29:30,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:30,283.283 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:29:30,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:30,335.335 INFO    ] No camera update needed
[2026-08-25 08:29:30,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:29:30,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:29:30,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:29:30,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:29:32,391.391 INFO    ] ================================================
[2026-08-25 08:29:32,407.407 INFO    ] Launching Daemon at Tue Aug 25 08:29:32 IST 2026
[2026-08-25 08:29:32,419.419 INFO    ] ================================================
[2026-08-25 08:29:33,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:29:33
[2026-08-25 08:29:33,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:29:33,863.863 INFO    ] Initializing speech engine...
[2026-08-25 08:29:33,872.872 INFO    ] 2026-08-25 08:29:33
[2026-08-25 08:29:34,123.123 INFO    ] 2026-08-25 08:29:34
[2026-08-25 08:29:34,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:29:34,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:29:34,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:29:34,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:29:34,508.508 INFO    ] time= 25/08/2026 08:29:34
[2026-08-25 08:29:34,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:29:34,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:29:34,618.618 INFO    ] No existing commands found in stream
[2026-08-25 08:29:39,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:29:39,664.664 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 08:29:43,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:29:43,433.433 INFO    ] Checking for system updates...
[2026-08-25 08:29:43,469.469 INFO    ] 200
[2026-08-25 08:29:43,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:43,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:29:43,532.532 INFO    ] No update needed
[2026-08-25 08:29:43,534.534 INFO    ] Checking for camera pi updates...
[2026-08-25 08:29:43,567.567 INFO    ] 200
[2026-08-25 08:29:43,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:43,613.613 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:29:43,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:29:43,759.759 INFO    ] No camera update needed
[2026-08-25 08:29:43,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:29:43,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:29:43,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:29:43,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:29:45,815.815 INFO    ] ================================================
[2026-08-25 08:29:45,831.831 INFO    ] Launching Daemon at Tue Aug 25 08:29:45 IST 2026
[2026-08-25 08:29:45,842.842 INFO    ] ================================================
[2026-08-25 08:29:46,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:29:46
[2026-08-25 08:29:47,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:29:47,287.287 INFO    ] Initializing speech engine...
[2026-08-25 08:29:47,298.298 INFO    ] 2026-08-25 08:29:47
[2026-08-25 08:29:47,550.550 INFO    ] 2026-08-25 08:29:47
[2026-08-25 08:29:47,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:29:47,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:29:47,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:29:47,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:29:47,925.925 INFO    ] time= 25/08/2026 08:29:47
[2026-08-25 08:29:47,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:29:47,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:29:48,109.109 INFO    ] No existing commands found in stream
[2026-08-25 08:29:53,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:29:53,135.135 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 08:29:54,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:29:54,271.271 INFO    ] Checking for system updates...
[2026-08-25 08:29:54,306.306 INFO    ] 200
[2026-08-25 08:29:54,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:54,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:54,362.362 INFO    ] No update needed
[2026-08-25 08:29:54,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 08:29:54,400.400 INFO    ] 200
[2026-08-25 08:29:54,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:29:54,446.446 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:29:54,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:29:54,494.494 INFO    ] No camera update needed
[2026-08-25 08:29:54,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:29:54,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:29:54,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:29:54,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:29:56,548.548 INFO    ] ================================================
[2026-08-25 08:29:56,564.564 INFO    ] Launching Daemon at Tue Aug 25 08:29:56 IST 2026
[2026-08-25 08:29:56,575.575 INFO    ] ================================================
[2026-08-25 08:29:57,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:29:57
[2026-08-25 08:29:57,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:29:58,012.012 INFO    ] Initializing speech engine...
[2026-08-25 08:29:58,021.021 INFO    ] 2026-08-25 08:29:58
[2026-08-25 08:29:58,285.285 INFO    ] 2026-08-25 08:29:58
[2026-08-25 08:29:58,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:29:58,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:29:58,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:29:58,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:29:58,765.765 INFO    ] time= 25/08/2026 08:29:58
[2026-08-25 08:29:58,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:29:58,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:29:58,914.914 INFO    ] No existing commands found in stream
[2026-08-25 08:30:03,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:30:03,932.932 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 08:30:08,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:30:08,066.066 INFO    ] Checking for system updates...
[2026-08-25 08:30:08,102.102 INFO    ] 200
[2026-08-25 08:30:08,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:08,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:30:08,166.166 INFO    ] No update needed
[2026-08-25 08:30:08,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 08:30:08,207.207 INFO    ] 200
[2026-08-25 08:30:08,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:08,255.255 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:30:08,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:30:08,304.304 INFO    ] No camera update needed
[2026-08-25 08:30:08,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:30:08,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:30:08,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:30:08,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:30:10,361.361 INFO    ] ================================================
[2026-08-25 08:30:10,376.376 INFO    ] Launching Daemon at Tue Aug 25 08:30:10 IST 2026
[2026-08-25 08:30:10,388.388 INFO    ] ================================================
[2026-08-25 08:30:10,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:30:10
[2026-08-25 08:30:11,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:30:11,848.848 INFO    ] Initializing speech engine...
[2026-08-25 08:30:11,862.862 INFO    ] 2026-08-25 08:30:11
[2026-08-25 08:30:12,146.146 INFO    ] 2026-08-25 08:30:12
[2026-08-25 08:30:12,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:30:12,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:30:12,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:30:12,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:30:12,559.559 INFO    ] time= 25/08/2026 08:30:12
[2026-08-25 08:30:12,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:30:12,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:30:12,651.651 INFO    ] No existing commands found in stream
[2026-08-25 08:30:17,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:30:17,667.667 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 08:30:20,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:30:20,128.128 INFO    ] Checking for system updates...
[2026-08-25 08:30:20,176.176 INFO    ] 200
[2026-08-25 08:30:20,179.179 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:20,181.181 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 08:30:20,184.184 INFO    ] Checking for camera pi updates...
[2026-08-25 08:30:20,226.226 INFO    ] 200
[2026-08-25 08:30:20,229.229 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:20,232.232 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 08:30:20,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:30:20,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:30:20,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:30:20,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:30:22,296.296 INFO    ] ================================================
[2026-08-25 08:30:22,313.313 INFO    ] Launching Daemon at Tue Aug 25 08:30:22 IST 2026
[2026-08-25 08:30:22,325.325 INFO    ] ================================================
[2026-08-25 08:30:23,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:30:23
[2026-08-25 08:30:23,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:30:24,062.062 INFO    ] Initializing speech engine...
[2026-08-25 08:30:24,074.074 INFO    ] 2026-08-25 08:30:24
[2026-08-25 08:30:24,388.388 INFO    ] 2026-08-25 08:30:24
[2026-08-25 08:30:24,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:30:24,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:30:24,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:30:24,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:30:24,842.842 INFO    ] time= 25/08/2026 08:30:24
[2026-08-25 08:30:24,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:30:24,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:30:25,034.034 INFO    ] No existing commands found in stream
[2026-08-25 08:30:30,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:30:30,069.069 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 08:30:31,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:30:31,198.198 INFO    ] Checking for system updates...
[2026-08-25 08:30:31,236.236 INFO    ] 200
[2026-08-25 08:30:31,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:31,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:30:31,295.295 INFO    ] No update needed
[2026-08-25 08:30:31,298.298 INFO    ] Checking for camera pi updates...
[2026-08-25 08:30:31,333.333 INFO    ] 200
[2026-08-25 08:30:31,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:31,378.378 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:30:31,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:30:31,430.430 INFO    ] No camera update needed
[2026-08-25 08:30:31,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:30:31,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:30:31,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:30:31,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:30:33,493.493 INFO    ] ================================================
[2026-08-25 08:30:33,508.508 INFO    ] Launching Daemon at Tue Aug 25 08:30:33 IST 2026
[2026-08-25 08:30:33,519.519 INFO    ] ================================================
[2026-08-25 08:30:34,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:30:34
[2026-08-25 08:30:34,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:30:34,944.944 INFO    ] Initializing speech engine...
[2026-08-25 08:30:34,950.950 INFO    ] 2026-08-25 08:30:34
[2026-08-25 08:30:35,209.209 INFO    ] 2026-08-25 08:30:35
[2026-08-25 08:30:35,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:30:35,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:30:35,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:30:35,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:30:35,674.674 INFO    ] time= 25/08/2026 08:30:35
[2026-08-25 08:30:35,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:30:35,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:30:35,820.820 INFO    ] No existing commands found in stream
[2026-08-25 08:30:40,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:30:40,840.840 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 08:30:41,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:30:41,900.900 INFO    ] Checking for system updates...
[2026-08-25 08:30:41,936.936 INFO    ] 200
[2026-08-25 08:30:41,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:41,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:30:41,993.993 INFO    ] No update needed
[2026-08-25 08:30:41,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 08:30:42,033.033 INFO    ] 200
[2026-08-25 08:30:42,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:42,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:30:42,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:30:42,136.136 INFO    ] No camera update needed
[2026-08-25 08:30:42,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:30:42,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:30:42,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:30:42,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:30:44,193.193 INFO    ] ================================================
[2026-08-25 08:30:44,209.209 INFO    ] Launching Daemon at Tue Aug 25 08:30:44 IST 2026
[2026-08-25 08:30:44,219.219 INFO    ] ================================================
[2026-08-25 08:30:44,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:30:44
[2026-08-25 08:30:45,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:30:45,690.690 INFO    ] Initializing speech engine...
[2026-08-25 08:30:45,699.699 INFO    ] 2026-08-25 08:30:45
[2026-08-25 08:30:45,980.980 INFO    ] 2026-08-25 08:30:45
[2026-08-25 08:30:46,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:30:46,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:30:46,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:30:46,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:30:46,447.447 INFO    ] time= 25/08/2026 08:30:46
[2026-08-25 08:30:46,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:30:46,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:30:46,644.644 INFO    ] No existing commands found in stream
[2026-08-25 08:30:51,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:30:51,679.679 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 08:30:55,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:30:55,706.706 INFO    ] Checking for system updates...
[2026-08-25 08:30:55,742.742 INFO    ] 200
[2026-08-25 08:30:55,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:55,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:30:55,806.806 INFO    ] No update needed
[2026-08-25 08:30:55,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 08:30:55,842.842 INFO    ] 200
[2026-08-25 08:30:55,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:30:55,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:30:55,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:30:55,952.952 INFO    ] No camera update needed
[2026-08-25 08:30:55,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:30:55,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:30:55,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:30:55,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:30:58,007.007 INFO    ] ================================================
[2026-08-25 08:30:58,022.022 INFO    ] Launching Daemon at Tue Aug 25 08:30:58 IST 2026
[2026-08-25 08:30:58,033.033 INFO    ] ================================================
[2026-08-25 08:30:58,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:30:58
[2026-08-25 08:30:59,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:30:59,510.510 INFO    ] Initializing speech engine...
[2026-08-25 08:30:59,519.519 INFO    ] 2026-08-25 08:30:59
[2026-08-25 08:30:59,766.766 INFO    ] 2026-08-25 08:30:59
[2026-08-25 08:30:59,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:30:59,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:31:00,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:31:00,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:31:00,138.138 INFO    ] time= 25/08/2026 08:31:00
[2026-08-25 08:31:00,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:31:00,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:31:00,335.335 INFO    ] No existing commands found in stream
[2026-08-25 08:31:05,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:31:05,348.348 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 08:31:06,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:31:06,281.281 INFO    ] Checking for system updates...
[2026-08-25 08:31:06,317.317 INFO    ] 200
[2026-08-25 08:31:06,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:06,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:31:06,374.374 INFO    ] No update needed
[2026-08-25 08:31:06,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 08:31:06,410.410 INFO    ] 200
[2026-08-25 08:31:06,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:06,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:31:06,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:31:06,506.506 INFO    ] No camera update needed
[2026-08-25 08:31:06,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:31:06,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:31:06,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:31:06,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:31:08,561.561 INFO    ] ================================================
[2026-08-25 08:31:08,577.577 INFO    ] Launching Daemon at Tue Aug 25 08:31:08 IST 2026
[2026-08-25 08:31:08,588.588 INFO    ] ================================================
[2026-08-25 08:31:09,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:31:09
[2026-08-25 08:31:09,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:31:10,204.204 INFO    ] Initializing speech engine...
[2026-08-25 08:31:10,211.211 INFO    ] 2026-08-25 08:31:10
[2026-08-25 08:31:10,486.486 INFO    ] 2026-08-25 08:31:10
[2026-08-25 08:31:10,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:31:10,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:31:10,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:31:10,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:31:10,966.966 INFO    ] time= 25/08/2026 08:31:10
[2026-08-25 08:31:11,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:31:11,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:31:11,178.178 INFO    ] No existing commands found in stream
[2026-08-25 08:31:16,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:31:16,210.210 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 08:31:19,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:31:19,215.215 INFO    ] Checking for system updates...
[2026-08-25 08:31:19,257.257 INFO    ] 200
[2026-08-25 08:31:19,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:19,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:31:19,327.327 INFO    ] No update needed
[2026-08-25 08:31:19,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 08:31:19,366.366 INFO    ] 200
[2026-08-25 08:31:19,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:19,415.415 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:31:19,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:31:19,466.466 INFO    ] No camera update needed
[2026-08-25 08:31:19,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:31:19,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:31:19,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:31:19,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:31:21,519.519 INFO    ] ================================================
[2026-08-25 08:31:21,535.535 INFO    ] Launching Daemon at Tue Aug 25 08:31:21 IST 2026
[2026-08-25 08:31:21,545.545 INFO    ] ================================================
[2026-08-25 08:31:22,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:31:22
[2026-08-25 08:31:22,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:31:23,123.123 INFO    ] Initializing speech engine...
[2026-08-25 08:31:23,132.132 INFO    ] 2026-08-25 08:31:23
[2026-08-25 08:31:23,446.446 INFO    ] 2026-08-25 08:31:23
[2026-08-25 08:31:23,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:31:23,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:31:23,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:31:23,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:31:23,945.945 INFO    ] time= 25/08/2026 08:31:23
[2026-08-25 08:31:23,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:31:23,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:31:24,103.103 INFO    ] No existing commands found in stream
[2026-08-25 08:31:29,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:31:29,130.130 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 08:31:32,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:31:32,498.498 INFO    ] Checking for system updates...
[2026-08-25 08:31:32,548.548 INFO    ] 200
[2026-08-25 08:31:32,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:32,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:31:32,614.614 INFO    ] No update needed
[2026-08-25 08:31:32,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 08:31:32,659.659 INFO    ] 200
[2026-08-25 08:31:32,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:32,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:31:32,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:31:32,762.762 INFO    ] No camera update needed
[2026-08-25 08:31:32,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:31:32,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:31:32,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:31:32,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:31:34,824.824 INFO    ] ================================================
[2026-08-25 08:31:34,839.839 INFO    ] Launching Daemon at Tue Aug 25 08:31:34 IST 2026
[2026-08-25 08:31:34,850.850 INFO    ] ================================================
[2026-08-25 08:31:35,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:31:35
[2026-08-25 08:31:36,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:31:36,281.281 INFO    ] Initializing speech engine...
[2026-08-25 08:31:36,291.291 INFO    ] 2026-08-25 08:31:36
[2026-08-25 08:31:36,556.556 INFO    ] 2026-08-25 08:31:36
[2026-08-25 08:31:36,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:31:36,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:31:36,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:31:36,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:31:36,939.939 INFO    ] time= 25/08/2026 08:31:36
[2026-08-25 08:31:36,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:31:36,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:31:37,062.062 INFO    ] No existing commands found in stream
[2026-08-25 08:31:42,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:31:42,078.078 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 08:31:43,918.918 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:31:43,921.921 INFO    ] Checking for system updates...
[2026-08-25 08:31:43,957.957 INFO    ] 200
[2026-08-25 08:31:43,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:44,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:31:44,017.017 INFO    ] No update needed
[2026-08-25 08:31:44,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 08:31:44,056.056 INFO    ] 200
[2026-08-25 08:31:44,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:44,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:31:44,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:31:44,158.158 INFO    ] No camera update needed
[2026-08-25 08:31:44,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:31:44,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:31:44,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:31:44,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:31:46,212.212 INFO    ] ================================================
[2026-08-25 08:31:46,227.227 INFO    ] Launching Daemon at Tue Aug 25 08:31:46 IST 2026
[2026-08-25 08:31:46,238.238 INFO    ] ================================================
[2026-08-25 08:31:46,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:31:46
[2026-08-25 08:31:47,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:31:47,690.690 INFO    ] Initializing speech engine...
[2026-08-25 08:31:47,703.703 INFO    ] 2026-08-25 08:31:47
[2026-08-25 08:31:47,953.953 INFO    ] 2026-08-25 08:31:47
[2026-08-25 08:31:47,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:31:48,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:31:48,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:31:48,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:31:48,327.327 INFO    ] time= 25/08/2026 08:31:48
[2026-08-25 08:31:48,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:31:48,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:31:48,505.505 INFO    ] No existing commands found in stream
[2026-08-25 08:31:53,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:31:53,533.533 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 08:31:55,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:31:55,987.987 INFO    ] Checking for system updates...
[2026-08-25 08:31:56,023.023 INFO    ] 200
[2026-08-25 08:31:56,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:56,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:31:56,082.082 INFO    ] No update needed
[2026-08-25 08:31:56,084.084 INFO    ] Checking for camera pi updates...
[2026-08-25 08:31:56,121.121 INFO    ] 200
[2026-08-25 08:31:56,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:31:56,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:31:56,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:31:56,315.315 INFO    ] No camera update needed
[2026-08-25 08:31:56,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:31:56,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:31:56,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:31:56,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:31:58,370.370 INFO    ] ================================================
[2026-08-25 08:31:58,385.385 INFO    ] Launching Daemon at Tue Aug 25 08:31:58 IST 2026
[2026-08-25 08:31:58,396.396 INFO    ] ================================================
[2026-08-25 08:31:58,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:31:58
[2026-08-25 08:31:59,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:31:59,844.844 INFO    ] Initializing speech engine...
[2026-08-25 08:31:59,858.858 INFO    ] 2026-08-25 08:31:59
[2026-08-25 08:32:00,142.142 INFO    ] 2026-08-25 08:32:00
[2026-08-25 08:32:00,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:32:00,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:32:00,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:32:00,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:32:00,553.553 INFO    ] time= 25/08/2026 08:32:00
[2026-08-25 08:32:00,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:32:00,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:32:00,720.720 INFO    ] No existing commands found in stream
[2026-08-25 08:32:05,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:32:05,748.748 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 08:32:07,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:32:07,225.225 INFO    ] Checking for system updates...
[2026-08-25 08:32:07,261.261 INFO    ] 200
[2026-08-25 08:32:07,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:07,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:07,319.319 INFO    ] No update needed
[2026-08-25 08:32:07,322.322 INFO    ] Checking for camera pi updates...
[2026-08-25 08:32:07,359.359 INFO    ] 200
[2026-08-25 08:32:07,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:07,401.401 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:32:07,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:07,453.453 INFO    ] No camera update needed
[2026-08-25 08:32:07,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:32:07,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:32:07,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:32:07,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:32:09,507.507 INFO    ] ================================================
[2026-08-25 08:32:09,522.522 INFO    ] Launching Daemon at Tue Aug 25 08:32:09 IST 2026
[2026-08-25 08:32:09,532.532 INFO    ] ================================================
[2026-08-25 08:32:10,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:32:10
[2026-08-25 08:32:10,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:32:11,142.142 INFO    ] Initializing speech engine...
[2026-08-25 08:32:11,150.150 INFO    ] 2026-08-25 08:32:11
[2026-08-25 08:32:11,419.419 INFO    ] 2026-08-25 08:32:11
[2026-08-25 08:32:11,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:32:11,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:32:11,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:32:12,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:32:12,192.192 INFO    ] time= 25/08/2026 08:32:12
[2026-08-25 08:32:12,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:32:12,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:32:12,407.407 INFO    ] No existing commands found in stream
[2026-08-25 08:32:17,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:32:17,427.427 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 08:32:17,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:32:17,915.915 INFO    ] Checking for system updates...
[2026-08-25 08:32:17,950.950 INFO    ] 200
[2026-08-25 08:32:17,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:18,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:18,006.006 INFO    ] No update needed
[2026-08-25 08:32:18,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 08:32:18,047.047 INFO    ] 200
[2026-08-25 08:32:18,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:18,095.095 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:32:18,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:18,144.144 INFO    ] No camera update needed
[2026-08-25 08:32:18,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:32:18,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:32:18,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:32:18,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:32:20,201.201 INFO    ] ================================================
[2026-08-25 08:32:20,216.216 INFO    ] Launching Daemon at Tue Aug 25 08:32:20 IST 2026
[2026-08-25 08:32:20,227.227 INFO    ] ================================================
[2026-08-25 08:32:20,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:32:20
[2026-08-25 08:32:21,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:32:21,815.815 INFO    ] Initializing speech engine...
[2026-08-25 08:32:21,827.827 INFO    ] 2026-08-25 08:32:21
[2026-08-25 08:32:22,109.109 INFO    ] 2026-08-25 08:32:22
[2026-08-25 08:32:22,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:32:22,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:32:22,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:32:22,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:32:22,579.579 INFO    ] time= 25/08/2026 08:32:22
[2026-08-25 08:32:22,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:32:22,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:32:22,791.791 INFO    ] No existing commands found in stream
[2026-08-25 08:32:27,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:32:27,825.825 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 08:32:28,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:32:28,892.892 INFO    ] Checking for system updates...
[2026-08-25 08:32:28,934.934 INFO    ] 200
[2026-08-25 08:32:28,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:28,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:28,992.992 INFO    ] No update needed
[2026-08-25 08:32:28,994.994 INFO    ] Checking for camera pi updates...
[2026-08-25 08:32:29,028.028 INFO    ] 200
[2026-08-25 08:32:29,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:29,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:32:29,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:29,132.132 INFO    ] No camera update needed
[2026-08-25 08:32:29,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:32:29,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:32:29,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:32:29,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:32:31,187.187 INFO    ] ================================================
[2026-08-25 08:32:31,202.202 INFO    ] Launching Daemon at Tue Aug 25 08:32:31 IST 2026
[2026-08-25 08:32:31,212.212 INFO    ] ================================================
[2026-08-25 08:32:31,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:32:31
[2026-08-25 08:32:32,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:32:32,721.721 INFO    ] Initializing speech engine...
[2026-08-25 08:32:32,731.731 INFO    ] 2026-08-25 08:32:32
[2026-08-25 08:32:33,000.000 INFO    ] 2026-08-25 08:32:32
[2026-08-25 08:32:33,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:32:33,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:32:33,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:32:33,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:32:33,387.387 INFO    ] time= 25/08/2026 08:32:33
[2026-08-25 08:32:33,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:32:33,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:32:33,567.567 INFO    ] No existing commands found in stream
[2026-08-25 08:32:38,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:32:38,599.599 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 08:32:42,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:32:42,913.913 INFO    ] Checking for system updates...
[2026-08-25 08:32:42,949.949 INFO    ] 200
[2026-08-25 08:32:42,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:43,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:43,014.014 INFO    ] No update needed
[2026-08-25 08:32:43,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 08:32:43,055.055 INFO    ] 200
[2026-08-25 08:32:43,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:43,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:32:43,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:32:43,153.153 INFO    ] No camera update needed
[2026-08-25 08:32:43,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:32:43,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:32:43,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:32:43,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:32:45,209.209 INFO    ] ================================================
[2026-08-25 08:32:45,224.224 INFO    ] Launching Daemon at Tue Aug 25 08:32:45 IST 2026
[2026-08-25 08:32:45,235.235 INFO    ] ================================================
[2026-08-25 08:32:45,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:32:45
[2026-08-25 08:32:46,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:32:46,693.693 INFO    ] Initializing speech engine...
[2026-08-25 08:32:46,711.711 INFO    ] 2026-08-25 08:32:46
[2026-08-25 08:32:46,965.965 INFO    ] 2026-08-25 08:32:46
[2026-08-25 08:32:47,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:32:47,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:32:47,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:32:47,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:32:47,336.336 INFO    ] time= 25/08/2026 08:32:47
[2026-08-25 08:32:47,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:32:47,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:32:47,521.521 INFO    ] No existing commands found in stream
[2026-08-25 08:32:52,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:32:52,547.547 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 08:32:56,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:32:56,882.882 INFO    ] Checking for system updates...
[2026-08-25 08:32:56,925.925 INFO    ] 200
[2026-08-25 08:32:56,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:56,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:32:57,001.001 INFO    ] No update needed
[2026-08-25 08:32:57,007.007 INFO    ] Checking for camera pi updates...
[2026-08-25 08:32:57,047.047 INFO    ] 200
[2026-08-25 08:32:57,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:32:57,092.092 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:32:57,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:32:57,143.143 INFO    ] No camera update needed
[2026-08-25 08:32:57,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:32:57,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:32:57,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:32:57,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:32:59,202.202 INFO    ] ================================================
[2026-08-25 08:32:59,217.217 INFO    ] Launching Daemon at Tue Aug 25 08:32:59 IST 2026
[2026-08-25 08:32:59,228.228 INFO    ] ================================================
[2026-08-25 08:32:59,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:32:59
[2026-08-25 08:33:00,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:33:00,686.686 INFO    ] Initializing speech engine...
[2026-08-25 08:33:00,692.692 INFO    ] 2026-08-25 08:33:00
[2026-08-25 08:33:00,952.952 INFO    ] 2026-08-25 08:33:00
[2026-08-25 08:33:00,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:33:01,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:33:01,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:33:01,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:33:01,419.419 INFO    ] time= 25/08/2026 08:33:01
[2026-08-25 08:33:01,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:33:01,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:33:01,600.600 INFO    ] No existing commands found in stream
[2026-08-25 08:33:06,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:33:06,633.633 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 08:33:08,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:33:08,486.486 INFO    ] Checking for system updates...
[2026-08-25 08:33:08,521.521 INFO    ] 200
[2026-08-25 08:33:08,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:08,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:33:08,589.589 INFO    ] No update needed
[2026-08-25 08:33:08,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 08:33:08,632.632 INFO    ] 200
[2026-08-25 08:33:08,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:08,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:33:08,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:33:08,727.727 INFO    ] No camera update needed
[2026-08-25 08:33:08,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:33:08,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:33:08,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:33:08,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:33:10,787.787 INFO    ] ================================================
[2026-08-25 08:33:10,802.802 INFO    ] Launching Daemon at Tue Aug 25 08:33:10 IST 2026
[2026-08-25 08:33:10,813.813 INFO    ] ================================================
[2026-08-25 08:33:11,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:33:11
[2026-08-25 08:33:12,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:33:12,494.494 INFO    ] Initializing speech engine...
[2026-08-25 08:33:12,508.508 INFO    ] 2026-08-25 08:33:12
[2026-08-25 08:33:12,825.825 INFO    ] 2026-08-25 08:33:12
[2026-08-25 08:33:12,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:33:13,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:33:13,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:33:13,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:33:13,277.277 INFO    ] time= 25/08/2026 08:33:13
[2026-08-25 08:33:13,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:33:13,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:33:13,478.478 INFO    ] No existing commands found in stream
[2026-08-25 08:33:18,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:33:18,501.501 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 08:33:20,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:33:20,877.877 INFO    ] Checking for system updates...
[2026-08-25 08:33:20,915.915 INFO    ] 200
[2026-08-25 08:33:20,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:20,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:33:20,986.986 INFO    ] No update needed
[2026-08-25 08:33:20,989.989 INFO    ] Checking for camera pi updates...
[2026-08-25 08:33:21,029.029 INFO    ] 200
[2026-08-25 08:33:21,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:21,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:33:21,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:33:21,122.122 INFO    ] No camera update needed
[2026-08-25 08:33:21,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:33:21,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:33:21,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:33:21,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:33:23,186.186 INFO    ] ================================================
[2026-08-25 08:33:23,201.201 INFO    ] Launching Daemon at Tue Aug 25 08:33:23 IST 2026
[2026-08-25 08:33:23,212.212 INFO    ] ================================================
[2026-08-25 08:33:23,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:33:23
[2026-08-25 08:33:24,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:33:24,662.662 INFO    ] Initializing speech engine...
[2026-08-25 08:33:24,670.670 INFO    ] 2026-08-25 08:33:24
[2026-08-25 08:33:24,932.932 INFO    ] 2026-08-25 08:33:24
[2026-08-25 08:33:24,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:33:25,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:33:25,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:33:25,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:33:25,405.405 INFO    ] time= 25/08/2026 08:33:25
[2026-08-25 08:33:25,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:33:25,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:33:25,546.546 INFO    ] No existing commands found in stream
[2026-08-25 08:33:30,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:33:30,560.560 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 08:33:33,474.474 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:33:33,477.477 INFO    ] Checking for system updates...
[2026-08-25 08:33:33,513.513 INFO    ] 200
[2026-08-25 08:33:33,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:33,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:33:33,572.572 INFO    ] No update needed
[2026-08-25 08:33:33,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 08:33:33,613.613 INFO    ] 200
[2026-08-25 08:33:33,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:33,655.655 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:33:33,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:33:33,702.702 INFO    ] No camera update needed
[2026-08-25 08:33:33,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:33:33,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:33:33,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:33:33,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:33:35,759.759 INFO    ] ================================================
[2026-08-25 08:33:35,775.775 INFO    ] Launching Daemon at Tue Aug 25 08:33:35 IST 2026
[2026-08-25 08:33:35,786.786 INFO    ] ================================================
[2026-08-25 08:33:36,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:33:36
[2026-08-25 08:33:37,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:33:37,468.468 INFO    ] Initializing speech engine...
[2026-08-25 08:33:37,480.480 INFO    ] 2026-08-25 08:33:37
[2026-08-25 08:33:37,793.793 INFO    ] 2026-08-25 08:33:37
[2026-08-25 08:33:37,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:33:38,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:33:38,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:33:38,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:33:38,297.297 INFO    ] time= 25/08/2026 08:33:38
[2026-08-25 08:33:38,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:33:38,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:33:38,455.455 INFO    ] No existing commands found in stream
[2026-08-25 08:33:43,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:33:43,471.471 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 08:33:47,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:33:47,294.294 INFO    ] Checking for system updates...
[2026-08-25 08:33:47,331.331 INFO    ] 200
[2026-08-25 08:33:47,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:47,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:33:47,390.390 INFO    ] No update needed
[2026-08-25 08:33:47,393.393 INFO    ] Checking for camera pi updates...
[2026-08-25 08:33:47,427.427 INFO    ] 200
[2026-08-25 08:33:47,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:33:47,470.470 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:33:47,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:33:47,517.517 INFO    ] No camera update needed
[2026-08-25 08:33:47,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:33:47,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:33:47,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:33:47,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:33:49,573.573 INFO    ] ================================================
[2026-08-25 08:33:49,589.589 INFO    ] Launching Daemon at Tue Aug 25 08:33:49 IST 2026
[2026-08-25 08:33:49,600.600 INFO    ] ================================================
[2026-08-25 08:33:50,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:33:50
[2026-08-25 08:33:50,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:33:51,069.069 INFO    ] Initializing speech engine...
[2026-08-25 08:33:51,079.079 INFO    ] 2026-08-25 08:33:51
[2026-08-25 08:33:51,338.338 INFO    ] 2026-08-25 08:33:51
[2026-08-25 08:33:51,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:33:51,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:33:51,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:33:51,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:33:51,829.829 INFO    ] time= 25/08/2026 08:33:51
[2026-08-25 08:33:51,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:33:51,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:33:52,029.029 INFO    ] No existing commands found in stream
[2026-08-25 08:33:57,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:33:57,052.052 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 08:34:01,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:34:01,365.365 INFO    ] Checking for system updates...
[2026-08-25 08:34:01,400.400 INFO    ] 200
[2026-08-25 08:34:01,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:01,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:34:01,459.459 INFO    ] No update needed
[2026-08-25 08:34:01,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 08:34:01,500.500 INFO    ] 200
[2026-08-25 08:34:01,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:01,545.545 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:34:01,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:34:01,726.726 INFO    ] No camera update needed
[2026-08-25 08:34:01,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:34:01,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:34:01,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:34:01,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:34:03,784.784 INFO    ] ================================================
[2026-08-25 08:34:03,801.801 INFO    ] Launching Daemon at Tue Aug 25 08:34:03 IST 2026
[2026-08-25 08:34:03,812.812 INFO    ] ================================================
[2026-08-25 08:34:04,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:34:04
[2026-08-25 08:34:05,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:34:05,453.453 INFO    ] Initializing speech engine...
[2026-08-25 08:34:05,461.461 INFO    ] 2026-08-25 08:34:05
[2026-08-25 08:34:05,741.741 INFO    ] 2026-08-25 08:34:05
[2026-08-25 08:34:05,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:34:06,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:34:06,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:34:06,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:34:06,225.225 INFO    ] time= 25/08/2026 08:34:06
[2026-08-25 08:34:06,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:34:06,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:34:06,462.462 INFO    ] No existing commands found in stream
[2026-08-25 08:34:11,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:34:11,481.481 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 08:34:13,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:34:13,823.823 INFO    ] Checking for system updates...
[2026-08-25 08:34:13,861.861 INFO    ] 200
[2026-08-25 08:34:13,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:13,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:34:13,927.927 INFO    ] No update needed
[2026-08-25 08:34:13,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 08:34:13,965.965 INFO    ] 200
[2026-08-25 08:34:13,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:14,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:34:14,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:34:14,060.060 INFO    ] No camera update needed
[2026-08-25 08:34:14,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:34:14,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:34:14,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:34:14,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:34:16,116.116 INFO    ] ================================================
[2026-08-25 08:34:16,132.132 INFO    ] Launching Daemon at Tue Aug 25 08:34:16 IST 2026
[2026-08-25 08:34:16,143.143 INFO    ] ================================================
[2026-08-25 08:34:16,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:34:16
[2026-08-25 08:34:17,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:34:17,562.562 INFO    ] Initializing speech engine...
[2026-08-25 08:34:17,588.588 INFO    ] 2026-08-25 08:34:17
[2026-08-25 08:34:17,857.857 INFO    ] 2026-08-25 08:34:17
[2026-08-25 08:34:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:34:18,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:34:18,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:34:18,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:34:18,237.237 INFO    ] time= 25/08/2026 08:34:18
[2026-08-25 08:34:18,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:34:18,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:34:18,360.360 INFO    ] No existing commands found in stream
[2026-08-25 08:34:23,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:34:23,376.376 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 08:34:24,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:34:24,915.915 INFO    ] Checking for system updates...
[2026-08-25 08:34:24,951.951 INFO    ] 200
[2026-08-25 08:34:24,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:25,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:34:25,008.008 INFO    ] No update needed
[2026-08-25 08:34:25,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 08:34:25,043.043 INFO    ] 200
[2026-08-25 08:34:25,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:25,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:34:25,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:34:25,137.137 INFO    ] No camera update needed
[2026-08-25 08:34:25,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:34:25,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:34:25,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:34:25,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:34:27,193.193 INFO    ] ================================================
[2026-08-25 08:34:27,208.208 INFO    ] Launching Daemon at Tue Aug 25 08:34:27 IST 2026
[2026-08-25 08:34:27,220.220 INFO    ] ================================================
[2026-08-25 08:34:27,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:34:27
[2026-08-25 08:34:28,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:34:28,822.822 INFO    ] Initializing speech engine...
[2026-08-25 08:34:28,833.833 INFO    ] 2026-08-25 08:34:28
[2026-08-25 08:34:29,142.142 INFO    ] 2026-08-25 08:34:29
[2026-08-25 08:34:29,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:34:29,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:34:29,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:34:29,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:34:29,557.557 INFO    ] time= 25/08/2026 08:34:29
[2026-08-25 08:34:29,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:34:29,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:34:29,771.771 INFO    ] No existing commands found in stream
[2026-08-25 08:34:34,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:34:34,806.806 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 08:34:36,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:34:36,236.236 INFO    ] Checking for system updates...
[2026-08-25 08:34:36,276.276 INFO    ] 200
[2026-08-25 08:34:36,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:36,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:34:36,339.339 INFO    ] No update needed
[2026-08-25 08:34:36,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 08:34:36,379.379 INFO    ] 200
[2026-08-25 08:34:36,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:36,433.433 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:34:36,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:34:36,482.482 INFO    ] No camera update needed
[2026-08-25 08:34:36,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:34:36,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:34:36,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:34:36,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:34:38,545.545 INFO    ] ================================================
[2026-08-25 08:34:38,564.564 INFO    ] Launching Daemon at Tue Aug 25 08:34:38 IST 2026
[2026-08-25 08:34:38,576.576 INFO    ] ================================================
[2026-08-25 08:34:39,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:34:39
[2026-08-25 08:34:39,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:34:40,041.041 INFO    ] Initializing speech engine...
[2026-08-25 08:34:40,049.049 INFO    ] 2026-08-25 08:34:40
[2026-08-25 08:34:40,301.301 INFO    ] 2026-08-25 08:34:40
[2026-08-25 08:34:40,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:34:40,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:34:40,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:34:40,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:34:40,670.670 INFO    ] time= 25/08/2026 08:34:40
[2026-08-25 08:34:40,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:34:40,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:34:40,854.854 INFO    ] No existing commands found in stream
[2026-08-25 08:34:45,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:34:45,879.879 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 08:34:49,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:34:49,494.494 INFO    ] Checking for system updates...
[2026-08-25 08:34:49,530.530 INFO    ] 200
[2026-08-25 08:34:49,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:49,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:34:49,587.587 INFO    ] No update needed
[2026-08-25 08:34:49,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 08:34:49,626.626 INFO    ] 200
[2026-08-25 08:34:49,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:34:49,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:34:49,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:34:49,720.720 INFO    ] No camera update needed
[2026-08-25 08:34:49,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:34:49,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:34:49,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:34:49,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:34:51,775.775 INFO    ] ================================================
[2026-08-25 08:34:51,791.791 INFO    ] Launching Daemon at Tue Aug 25 08:34:51 IST 2026
[2026-08-25 08:34:51,801.801 INFO    ] ================================================
[2026-08-25 08:34:52,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:34:52
[2026-08-25 08:34:52,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:34:53,251.251 INFO    ] Initializing speech engine...
[2026-08-25 08:34:53,261.261 INFO    ] 2026-08-25 08:34:53
[2026-08-25 08:34:53,510.510 INFO    ] 2026-08-25 08:34:53
[2026-08-25 08:34:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:34:53,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:34:53,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:34:53,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:34:53,892.892 INFO    ] time= 25/08/2026 08:34:53
[2026-08-25 08:34:53,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:34:53,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:34:54,059.059 INFO    ] No existing commands found in stream
[2026-08-25 08:34:59,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:34:59,092.092 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 08:35:00,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:35:00,118.118 INFO    ] Checking for system updates...
[2026-08-25 08:35:00,153.153 INFO    ] 200
[2026-08-25 08:35:00,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:00,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:35:00,212.212 INFO    ] No update needed
[2026-08-25 08:35:00,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 08:35:00,248.248 INFO    ] 200
[2026-08-25 08:35:00,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:00,295.295 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:35:00,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:35:00,342.342 INFO    ] No camera update needed
[2026-08-25 08:35:00,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:35:00,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:35:00,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:35:00,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:35:02,404.404 INFO    ] ================================================
[2026-08-25 08:35:02,438.438 INFO    ] Launching Daemon at Tue Aug 25 08:35:02 IST 2026
[2026-08-25 08:35:02,460.460 INFO    ] ================================================
[2026-08-25 08:35:03,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:35:03
[2026-08-25 08:35:03,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:35:04,128.128 INFO    ] Initializing speech engine...
[2026-08-25 08:35:04,147.147 INFO    ] 2026-08-25 08:35:04
[2026-08-25 08:35:04,404.404 INFO    ] 2026-08-25 08:35:04
[2026-08-25 08:35:04,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:35:04,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:35:04,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:35:04,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:35:04,779.779 INFO    ] time= 25/08/2026 08:35:04
[2026-08-25 08:35:04,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:35:04,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:35:04,959.959 INFO    ] No existing commands found in stream
[2026-08-25 08:35:09,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:35:09,987.987 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 08:35:13,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:35:13,251.251 INFO    ] Checking for system updates...
[2026-08-25 08:35:13,287.287 INFO    ] 200
[2026-08-25 08:35:13,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:13,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:35:13,348.348 INFO    ] No update needed
[2026-08-25 08:35:13,350.350 INFO    ] Checking for camera pi updates...
[2026-08-25 08:35:13,389.389 INFO    ] 200
[2026-08-25 08:35:13,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:13,433.433 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:35:13,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:35:13,482.482 INFO    ] No camera update needed
[2026-08-25 08:35:13,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:35:13,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:35:13,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:35:13,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:35:15,542.542 INFO    ] ================================================
[2026-08-25 08:35:15,558.558 INFO    ] Launching Daemon at Tue Aug 25 08:35:15 IST 2026
[2026-08-25 08:35:15,568.568 INFO    ] ================================================
[2026-08-25 08:35:16,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:35:16
[2026-08-25 08:35:16,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:35:17,203.203 INFO    ] Initializing speech engine...
[2026-08-25 08:35:17,212.212 INFO    ] 2026-08-25 08:35:17
[2026-08-25 08:35:17,531.531 INFO    ] 2026-08-25 08:35:17
[2026-08-25 08:35:17,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:35:17,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:35:17,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:35:18,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:35:18,042.042 INFO    ] time= 25/08/2026 08:35:18
[2026-08-25 08:35:18,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:35:18,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:35:18,199.199 INFO    ] No existing commands found in stream
[2026-08-25 08:35:23,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:35:23,227.227 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 08:35:27,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:35:27,046.046 INFO    ] Checking for system updates...
[2026-08-25 08:35:27,087.087 INFO    ] 200
[2026-08-25 08:35:27,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:27,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:35:27,150.150 INFO    ] No update needed
[2026-08-25 08:35:27,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 08:35:27,192.192 INFO    ] 200
[2026-08-25 08:35:27,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:27,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:35:27,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:35:27,292.292 INFO    ] No camera update needed
[2026-08-25 08:35:27,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:35:27,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:35:27,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:35:27,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:35:29,351.351 INFO    ] ================================================
[2026-08-25 08:35:29,369.369 INFO    ] Launching Daemon at Tue Aug 25 08:35:29 IST 2026
[2026-08-25 08:35:29,380.380 INFO    ] ================================================
[2026-08-25 08:35:29,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:35:29
[2026-08-25 08:35:30,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:35:30,784.784 INFO    ] Initializing speech engine...
[2026-08-25 08:35:30,809.809 INFO    ] 2026-08-25 08:35:30
[2026-08-25 08:35:31,066.066 INFO    ] 2026-08-25 08:35:31
[2026-08-25 08:35:31,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:35:31,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:35:31,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:35:31,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:35:31,442.442 INFO    ] time= 25/08/2026 08:35:31
[2026-08-25 08:35:31,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:35:31,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:35:31,644.644 INFO    ] No existing commands found in stream
[2026-08-25 08:35:36,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:35:36,657.657 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 08:35:40,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:35:40,954.954 INFO    ] Checking for system updates...
[2026-08-25 08:35:41,001.001 INFO    ] 200
[2026-08-25 08:35:41,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:41,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:35:41,058.058 INFO    ] No update needed
[2026-08-25 08:35:41,060.060 INFO    ] Checking for camera pi updates...
[2026-08-25 08:35:41,093.093 INFO    ] 200
[2026-08-25 08:35:41,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:41,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:35:41,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:35:41,202.202 INFO    ] No camera update needed
[2026-08-25 08:35:41,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:35:41,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:35:41,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:35:41,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:35:43,258.258 INFO    ] ================================================
[2026-08-25 08:35:43,274.274 INFO    ] Launching Daemon at Tue Aug 25 08:35:43 IST 2026
[2026-08-25 08:35:43,285.285 INFO    ] ================================================
[2026-08-25 08:35:43,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:35:43
[2026-08-25 08:35:44,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:35:44,750.750 INFO    ] Initializing speech engine...
[2026-08-25 08:35:44,757.757 INFO    ] 2026-08-25 08:35:44
[2026-08-25 08:35:45,019.019 INFO    ] 2026-08-25 08:35:45
[2026-08-25 08:35:45,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:35:45,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:35:45,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:35:45,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:35:45,501.501 INFO    ] time= 25/08/2026 08:35:45
[2026-08-25 08:35:45,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:35:45,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:35:45,717.717 INFO    ] No existing commands found in stream
[2026-08-25 08:35:50,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:35:50,736.736 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 08:35:53,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:35:53,804.804 INFO    ] Checking for system updates...
[2026-08-25 08:35:53,841.841 INFO    ] 200
[2026-08-25 08:35:53,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:53,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:35:53,899.899 INFO    ] No update needed
[2026-08-25 08:35:53,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 08:35:53,935.935 INFO    ] 200
[2026-08-25 08:35:53,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:35:53,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:35:54,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:35:54,035.035 INFO    ] No camera update needed
[2026-08-25 08:35:54,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:35:54,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:35:54,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:35:54,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:35:56,091.091 INFO    ] ================================================
[2026-08-25 08:35:56,106.106 INFO    ] Launching Daemon at Tue Aug 25 08:35:56 IST 2026
[2026-08-25 08:35:56,117.117 INFO    ] ================================================
[2026-08-25 08:35:56,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:35:56
[2026-08-25 08:35:57,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:35:57,558.558 INFO    ] Initializing speech engine...
[2026-08-25 08:35:57,563.563 INFO    ] 2026-08-25 08:35:57
[2026-08-25 08:35:57,817.817 INFO    ] 2026-08-25 08:35:57
[2026-08-25 08:35:57,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:35:58,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:35:58,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:35:58,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:35:58,303.303 INFO    ] time= 25/08/2026 08:35:58
[2026-08-25 08:35:58,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:35:58,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:35:58,499.499 INFO    ] No existing commands found in stream
[2026-08-25 08:36:03,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:36:03,529.529 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 08:36:06,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:36:06,183.183 INFO    ] Checking for system updates...
[2026-08-25 08:36:06,219.219 INFO    ] 200
[2026-08-25 08:36:06,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:06,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:36:06,282.282 INFO    ] No update needed
[2026-08-25 08:36:06,284.284 INFO    ] Checking for camera pi updates...
[2026-08-25 08:36:06,322.322 INFO    ] 200
[2026-08-25 08:36:06,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:06,365.365 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:36:06,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:36:06,412.412 INFO    ] No camera update needed
[2026-08-25 08:36:06,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:36:06,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:36:06,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:36:06,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:36:08,473.473 INFO    ] ================================================
[2026-08-25 08:36:08,488.488 INFO    ] Launching Daemon at Tue Aug 25 08:36:08 IST 2026
[2026-08-25 08:36:08,499.499 INFO    ] ================================================
[2026-08-25 08:36:09,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:36:09
[2026-08-25 08:36:09,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:36:09,921.921 INFO    ] Initializing speech engine...
[2026-08-25 08:36:09,930.930 INFO    ] 2026-08-25 08:36:09
[2026-08-25 08:36:10,176.176 INFO    ] 2026-08-25 08:36:10
[2026-08-25 08:36:10,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:36:10,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:36:10,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:36:10,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:36:10,624.624 INFO    ] time= 25/08/2026 08:36:10
[2026-08-25 08:36:10,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:36:10,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:36:10,864.864 INFO    ] No existing commands found in stream
[2026-08-25 08:36:15,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:36:15,898.898 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 08:36:18,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:36:18,408.408 INFO    ] Checking for system updates...
[2026-08-25 08:36:18,446.446 INFO    ] 200
[2026-08-25 08:36:18,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:18,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:18,515.515 INFO    ] No update needed
[2026-08-25 08:36:18,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 08:36:18,558.558 INFO    ] 200
[2026-08-25 08:36:18,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:18,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:36:18,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:18,667.667 INFO    ] No camera update needed
[2026-08-25 08:36:18,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:36:18,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:36:18,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:36:18,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:36:20,731.731 INFO    ] ================================================
[2026-08-25 08:36:20,747.747 INFO    ] Launching Daemon at Tue Aug 25 08:36:20 IST 2026
[2026-08-25 08:36:20,758.758 INFO    ] ================================================
[2026-08-25 08:36:21,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:36:21
[2026-08-25 08:36:21,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:36:22,219.219 INFO    ] Initializing speech engine...
[2026-08-25 08:36:22,231.231 INFO    ] 2026-08-25 08:36:22
[2026-08-25 08:36:22,511.511 INFO    ] 2026-08-25 08:36:22
[2026-08-25 08:36:22,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:36:22,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:36:22,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:36:22,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:36:22,902.902 INFO    ] time= 25/08/2026 08:36:22
[2026-08-25 08:36:22,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:36:22,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:36:23,033.033 INFO    ] No existing commands found in stream
[2026-08-25 08:36:28,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:36:28,046.046 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 08:36:31,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:36:31,690.690 INFO    ] Checking for system updates...
[2026-08-25 08:36:31,730.730 INFO    ] 200
[2026-08-25 08:36:31,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:31,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:31,792.792 INFO    ] No update needed
[2026-08-25 08:36:31,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 08:36:31,834.834 INFO    ] 200
[2026-08-25 08:36:31,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:31,895.895 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:36:31,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:31,948.948 INFO    ] No camera update needed
[2026-08-25 08:36:31,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:36:31,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:36:31,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:36:31,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:36:34,011.011 INFO    ] ================================================
[2026-08-25 08:36:34,027.027 INFO    ] Launching Daemon at Tue Aug 25 08:36:34 IST 2026
[2026-08-25 08:36:34,038.038 INFO    ] ================================================
[2026-08-25 08:36:34,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:36:34
[2026-08-25 08:36:35,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:36:35,500.500 INFO    ] Initializing speech engine...
[2026-08-25 08:36:35,507.507 INFO    ] 2026-08-25 08:36:35
[2026-08-25 08:36:35,769.769 INFO    ] 2026-08-25 08:36:35
[2026-08-25 08:36:35,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:36:35,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:36:36,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:36:36,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:36:36,208.208 INFO    ] time= 25/08/2026 08:36:36
[2026-08-25 08:36:36,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:36:36,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:36:36,438.438 INFO    ] No existing commands found in stream
[2026-08-25 08:36:41,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:36:41,468.468 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 08:36:44,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:36:44,410.410 INFO    ] Checking for system updates...
[2026-08-25 08:36:44,450.450 INFO    ] 200
[2026-08-25 08:36:44,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:44,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:44,508.508 INFO    ] No update needed
[2026-08-25 08:36:44,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 08:36:44,543.543 INFO    ] 200
[2026-08-25 08:36:44,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:44,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:36:44,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:44,641.641 INFO    ] No camera update needed
[2026-08-25 08:36:44,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:36:44,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:36:44,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:36:44,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:36:46,696.696 INFO    ] ================================================
[2026-08-25 08:36:46,712.712 INFO    ] Launching Daemon at Tue Aug 25 08:36:46 IST 2026
[2026-08-25 08:36:46,723.723 INFO    ] ================================================
[2026-08-25 08:36:47,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:36:47
[2026-08-25 08:36:47,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:36:48,203.203 INFO    ] Initializing speech engine...
[2026-08-25 08:36:48,218.218 INFO    ] 2026-08-25 08:36:48
[2026-08-25 08:36:48,484.484 INFO    ] 2026-08-25 08:36:48
[2026-08-25 08:36:48,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:36:48,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:36:48,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:36:48,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:36:48,861.861 INFO    ] time= 25/08/2026 08:36:48
[2026-08-25 08:36:48,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:36:48,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:36:49,059.059 INFO    ] No existing commands found in stream
[2026-08-25 08:36:54,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:36:54,073.073 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 08:36:54,962.962 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:36:54,965.965 INFO    ] Checking for system updates...
[2026-08-25 08:36:55,000.000 INFO    ] 200
[2026-08-25 08:36:55,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:55,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:55,058.058 INFO    ] No update needed
[2026-08-25 08:36:55,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 08:36:55,094.094 INFO    ] 200
[2026-08-25 08:36:55,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:36:55,143.143 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:36:55,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:36:55,197.197 INFO    ] No camera update needed
[2026-08-25 08:36:55,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:36:55,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:36:55,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:36:55,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:36:57,252.252 INFO    ] ================================================
[2026-08-25 08:36:57,268.268 INFO    ] Launching Daemon at Tue Aug 25 08:36:57 IST 2026
[2026-08-25 08:36:57,278.278 INFO    ] ================================================
[2026-08-25 08:36:57,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:36:57
[2026-08-25 08:36:58,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:36:58,695.695 INFO    ] Initializing speech engine...
[2026-08-25 08:36:58,704.704 INFO    ] 2026-08-25 08:36:58
[2026-08-25 08:36:58,955.955 INFO    ] 2026-08-25 08:36:58
[2026-08-25 08:36:59,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:36:59,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:36:59,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:36:59,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:36:59,317.317 INFO    ] time= 25/08/2026 08:36:59
[2026-08-25 08:36:59,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:36:59,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:36:59,497.497 INFO    ] No existing commands found in stream
[2026-08-25 08:37:04,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:37:04,525.525 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 08:37:07,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:37:07,797.797 INFO    ] Checking for system updates...
[2026-08-25 08:37:07,832.832 INFO    ] 200
[2026-08-25 08:37:07,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:07,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:37:07,888.888 INFO    ] No update needed
[2026-08-25 08:37:07,891.891 INFO    ] Checking for camera pi updates...
[2026-08-25 08:37:07,923.923 INFO    ] 200
[2026-08-25 08:37:07,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:07,966.966 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:37:08,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:37:08,012.012 INFO    ] No camera update needed
[2026-08-25 08:37:08,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:37:08,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:37:08,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:37:08,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:37:10,067.067 INFO    ] ================================================
[2026-08-25 08:37:10,082.082 INFO    ] Launching Daemon at Tue Aug 25 08:37:10 IST 2026
[2026-08-25 08:37:10,093.093 INFO    ] ================================================
[2026-08-25 08:37:10,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:37:10
[2026-08-25 08:37:11,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:37:11,494.494 INFO    ] Initializing speech engine...
[2026-08-25 08:37:11,508.508 INFO    ] 2026-08-25 08:37:11
[2026-08-25 08:37:11,772.772 INFO    ] 2026-08-25 08:37:11
[2026-08-25 08:37:11,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:37:11,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:37:11,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:37:12,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:37:12,148.148 INFO    ] time= 25/08/2026 08:37:12
[2026-08-25 08:37:12,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:37:12,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:37:12,330.330 INFO    ] No existing commands found in stream
[2026-08-25 08:37:17,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:37:17,358.358 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 08:37:18,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:37:18,967.967 INFO    ] Checking for system updates...
[2026-08-25 08:37:19,002.002 INFO    ] 200
[2026-08-25 08:37:19,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:19,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:37:19,059.059 INFO    ] No update needed
[2026-08-25 08:37:19,062.062 INFO    ] Checking for camera pi updates...
[2026-08-25 08:37:19,100.100 INFO    ] 200
[2026-08-25 08:37:19,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:19,141.141 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:37:19,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:37:19,196.196 INFO    ] No camera update needed
[2026-08-25 08:37:19,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:37:19,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:37:19,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:37:19,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:37:21,250.250 INFO    ] ================================================
[2026-08-25 08:37:21,266.266 INFO    ] Launching Daemon at Tue Aug 25 08:37:21 IST 2026
[2026-08-25 08:37:21,278.278 INFO    ] ================================================
[2026-08-25 08:37:21,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:37:21
[2026-08-25 08:37:22,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:37:22,738.738 INFO    ] Initializing speech engine...
[2026-08-25 08:37:22,747.747 INFO    ] 2026-08-25 08:37:22
[2026-08-25 08:37:23,008.008 INFO    ] 2026-08-25 08:37:23
[2026-08-25 08:37:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:37:23,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:37:23,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:37:23,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:37:23,482.482 INFO    ] time= 25/08/2026 08:37:23
[2026-08-25 08:37:23,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:37:23,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:37:23,699.699 INFO    ] No existing commands found in stream
[2026-08-25 08:37:28,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:37:28,726.726 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 08:37:31,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:37:31,909.909 INFO    ] Checking for system updates...
[2026-08-25 08:37:31,953.953 INFO    ] 200
[2026-08-25 08:37:31,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:32,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:37:32,016.016 INFO    ] No update needed
[2026-08-25 08:37:32,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 08:37:32,058.058 INFO    ] 200
[2026-08-25 08:37:32,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:32,104.104 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:37:32,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:37:32,168.168 INFO    ] No camera update needed
[2026-08-25 08:37:32,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:37:32,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:37:32,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:37:32,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:37:34,227.227 INFO    ] ================================================
[2026-08-25 08:37:34,243.243 INFO    ] Launching Daemon at Tue Aug 25 08:37:34 IST 2026
[2026-08-25 08:37:34,255.255 INFO    ] ================================================
[2026-08-25 08:37:34,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:37:34
[2026-08-25 08:37:35,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:37:35,686.686 INFO    ] Initializing speech engine...
[2026-08-25 08:37:35,695.695 INFO    ] 2026-08-25 08:37:35
[2026-08-25 08:37:35,992.992 INFO    ] 2026-08-25 08:37:35
[2026-08-25 08:37:36,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:37:36,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:37:36,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:37:36,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:37:36,379.379 INFO    ] time= 25/08/2026 08:37:36
[2026-08-25 08:37:36,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:37:36,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:37:36,506.506 INFO    ] No existing commands found in stream
[2026-08-25 08:37:41,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:37:41,521.521 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 08:37:43,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:37:43,876.876 INFO    ] Checking for system updates...
[2026-08-25 08:37:43,912.912 INFO    ] 200
[2026-08-25 08:37:43,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:43,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:37:43,969.969 INFO    ] No update needed
[2026-08-25 08:37:43,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 08:37:44,009.009 INFO    ] 200
[2026-08-25 08:37:44,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:44,051.051 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:37:44,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:37:44,104.104 INFO    ] No camera update needed
[2026-08-25 08:37:44,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:37:44,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:37:44,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:37:44,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:37:46,159.159 INFO    ] ================================================
[2026-08-25 08:37:46,174.174 INFO    ] Launching Daemon at Tue Aug 25 08:37:46 IST 2026
[2026-08-25 08:37:46,185.185 INFO    ] ================================================
[2026-08-25 08:37:46,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:37:46
[2026-08-25 08:37:47,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:37:47,855.855 INFO    ] Initializing speech engine...
[2026-08-25 08:37:47,863.863 INFO    ] 2026-08-25 08:37:47
[2026-08-25 08:37:48,157.157 INFO    ] 2026-08-25 08:37:48
[2026-08-25 08:37:48,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:37:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:37:48,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:37:48,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:37:48,616.616 INFO    ] time= 25/08/2026 08:37:48
[2026-08-25 08:37:48,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:37:48,715.715 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:37:48,831.831 INFO    ] No existing commands found in stream
[2026-08-25 08:37:53,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:37:53,857.857 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 08:37:57,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:37:57,059.059 INFO    ] Checking for system updates...
[2026-08-25 08:37:57,094.094 INFO    ] 200
[2026-08-25 08:37:57,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:57,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:37:57,158.158 INFO    ] No update needed
[2026-08-25 08:37:57,161.161 INFO    ] Checking for camera pi updates...
[2026-08-25 08:37:57,195.195 INFO    ] 200
[2026-08-25 08:37:57,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:37:57,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:37:57,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:37:57,294.294 INFO    ] No camera update needed
[2026-08-25 08:37:57,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:37:57,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:37:57,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:37:57,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:37:59,351.351 INFO    ] ================================================
[2026-08-25 08:37:59,367.367 INFO    ] Launching Daemon at Tue Aug 25 08:37:59 IST 2026
[2026-08-25 08:37:59,379.379 INFO    ] ================================================
[2026-08-25 08:37:59,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:37:59
[2026-08-25 08:38:00,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:38:00,814.814 INFO    ] Initializing speech engine...
[2026-08-25 08:38:00,839.839 INFO    ] 2026-08-25 08:38:00
[2026-08-25 08:38:01,097.097 INFO    ] 2026-08-25 08:38:01
[2026-08-25 08:38:01,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:38:01,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:38:01,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:38:01,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:38:01,582.582 INFO    ] time= 25/08/2026 08:38:01
[2026-08-25 08:38:01,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:38:01,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:38:01,752.752 INFO    ] No existing commands found in stream
[2026-08-25 08:38:06,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:38:06,767.767 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 08:38:10,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:38:10,162.162 INFO    ] Checking for system updates...
[2026-08-25 08:38:10,200.200 INFO    ] 200
[2026-08-25 08:38:10,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:10,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:38:10,261.261 INFO    ] No update needed
[2026-08-25 08:38:10,264.264 INFO    ] Checking for camera pi updates...
[2026-08-25 08:38:10,300.300 INFO    ] 200
[2026-08-25 08:38:10,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:10,346.346 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:38:10,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:38:10,527.527 INFO    ] No camera update needed
[2026-08-25 08:38:10,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:38:10,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:38:10,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:38:10,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:38:12,586.586 INFO    ] ================================================
[2026-08-25 08:38:12,601.601 INFO    ] Launching Daemon at Tue Aug 25 08:38:12 IST 2026
[2026-08-25 08:38:12,612.612 INFO    ] ================================================
[2026-08-25 08:38:13,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:38:13
[2026-08-25 08:38:13,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:38:14,050.050 INFO    ] Initializing speech engine...
[2026-08-25 08:38:14,057.057 INFO    ] 2026-08-25 08:38:14
[2026-08-25 08:38:14,354.354 INFO    ] 2026-08-25 08:38:14
[2026-08-25 08:38:14,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:38:14,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:38:14,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:38:14,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:38:14,738.738 INFO    ] time= 25/08/2026 08:38:14
[2026-08-25 08:38:14,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:38:14,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:38:14,864.864 INFO    ] No existing commands found in stream
[2026-08-25 08:38:19,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:38:19,879.879 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 08:38:22,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:38:22,339.339 INFO    ] Checking for system updates...
[2026-08-25 08:38:22,377.377 INFO    ] 200
[2026-08-25 08:38:22,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:22,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:38:22,434.434 INFO    ] No update needed
[2026-08-25 08:38:22,437.437 INFO    ] Checking for camera pi updates...
[2026-08-25 08:38:22,474.474 INFO    ] 200
[2026-08-25 08:38:22,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:22,522.522 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:38:22,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:38:22,576.576 INFO    ] No camera update needed
[2026-08-25 08:38:22,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:38:22,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:38:22,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:38:22,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:38:24,631.631 INFO    ] ================================================
[2026-08-25 08:38:24,646.646 INFO    ] Launching Daemon at Tue Aug 25 08:38:24 IST 2026
[2026-08-25 08:38:24,657.657 INFO    ] ================================================
[2026-08-25 08:38:25,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:38:25
[2026-08-25 08:38:25,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:38:26,093.093 INFO    ] Initializing speech engine...
[2026-08-25 08:38:26,102.102 INFO    ] 2026-08-25 08:38:26
[2026-08-25 08:38:26,401.401 INFO    ] 2026-08-25 08:38:26
[2026-08-25 08:38:26,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:38:26,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:38:26,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:38:26,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:38:26,785.785 INFO    ] time= 25/08/2026 08:38:26
[2026-08-25 08:38:26,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:38:26,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:38:26,913.913 INFO    ] No existing commands found in stream
[2026-08-25 08:38:31,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:38:31,927.927 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 08:38:33,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:38:33,875.875 INFO    ] Checking for system updates...
[2026-08-25 08:38:33,915.915 INFO    ] 200
[2026-08-25 08:38:33,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:33,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:38:33,974.974 INFO    ] No update needed
[2026-08-25 08:38:33,977.977 INFO    ] Checking for camera pi updates...
[2026-08-25 08:38:34,011.011 INFO    ] 200
[2026-08-25 08:38:34,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:34,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:38:34,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:38:34,112.112 INFO    ] No camera update needed
[2026-08-25 08:38:34,114.114 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:38:34,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:38:34,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:38:34,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:38:36,166.166 INFO    ] ================================================
[2026-08-25 08:38:36,181.181 INFO    ] Launching Daemon at Tue Aug 25 08:38:36 IST 2026
[2026-08-25 08:38:36,191.191 INFO    ] ================================================
[2026-08-25 08:38:36,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:38:36
[2026-08-25 08:38:37,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:38:37,613.613 INFO    ] Initializing speech engine...
[2026-08-25 08:38:37,627.627 INFO    ] 2026-08-25 08:38:37
[2026-08-25 08:38:37,891.891 INFO    ] 2026-08-25 08:38:37
[2026-08-25 08:38:37,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:38:38,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:38:38,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:38:38,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:38:38,376.376 INFO    ] time= 25/08/2026 08:38:38
[2026-08-25 08:38:38,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:38:38,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:38:38,532.532 INFO    ] No existing commands found in stream
[2026-08-25 08:38:43,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:38:43,557.557 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 08:38:44,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:38:44,799.799 INFO    ] Checking for system updates...
[2026-08-25 08:38:44,834.834 INFO    ] 200
[2026-08-25 08:38:44,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:44,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:38:44,895.895 INFO    ] No update needed
[2026-08-25 08:38:44,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 08:38:44,931.931 INFO    ] 200
[2026-08-25 08:38:44,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:44,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:38:45,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:38:45,033.033 INFO    ] No camera update needed
[2026-08-25 08:38:45,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:38:45,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:38:45,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:38:45,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:38:47,088.088 INFO    ] ================================================
[2026-08-25 08:38:47,103.103 INFO    ] Launching Daemon at Tue Aug 25 08:38:47 IST 2026
[2026-08-25 08:38:47,114.114 INFO    ] ================================================
[2026-08-25 08:38:47,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:38:47
[2026-08-25 08:38:48,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:38:48,537.537 INFO    ] Initializing speech engine...
[2026-08-25 08:38:48,545.545 INFO    ] 2026-08-25 08:38:48
[2026-08-25 08:38:48,846.846 INFO    ] 2026-08-25 08:38:48
[2026-08-25 08:38:48,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:38:49,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:38:49,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:38:49,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:38:49,263.263 INFO    ] time= 25/08/2026 08:38:49
[2026-08-25 08:38:49,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:38:49,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:38:49,348.348 INFO    ] No existing commands found in stream
[2026-08-25 08:38:54,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:38:54,363.363 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 08:38:56,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:38:56,870.870 INFO    ] Checking for system updates...
[2026-08-25 08:38:56,907.907 INFO    ] 200
[2026-08-25 08:38:56,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:56,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:38:56,972.972 INFO    ] No update needed
[2026-08-25 08:38:56,975.975 INFO    ] Checking for camera pi updates...
[2026-08-25 08:38:57,013.013 INFO    ] 200
[2026-08-25 08:38:57,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:38:57,058.058 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:38:57,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:38:57,106.106 INFO    ] No camera update needed
[2026-08-25 08:38:57,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:38:57,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:38:57,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:38:57,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:38:59,165.165 INFO    ] ================================================
[2026-08-25 08:38:59,181.181 INFO    ] Launching Daemon at Tue Aug 25 08:38:59 IST 2026
[2026-08-25 08:38:59,192.192 INFO    ] ================================================
[2026-08-25 08:38:59,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:38:59
[2026-08-25 08:39:00,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:39:00,627.627 INFO    ] Initializing speech engine...
[2026-08-25 08:39:00,641.641 INFO    ] 2026-08-25 08:39:00
[2026-08-25 08:39:00,926.926 INFO    ] 2026-08-25 08:39:00
[2026-08-25 08:39:00,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:39:01,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:39:01,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:39:01,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:39:01,323.323 INFO    ] time= 25/08/2026 08:39:01
[2026-08-25 08:39:01,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:39:01,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:39:01,416.416 INFO    ] No existing commands found in stream
[2026-08-25 08:39:06,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:39:06,436.436 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 08:39:09,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:39:09,017.017 INFO    ] Checking for system updates...
[2026-08-25 08:39:09,056.056 INFO    ] 200
[2026-08-25 08:39:09,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:09,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:39:09,115.115 INFO    ] No update needed
[2026-08-25 08:39:09,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 08:39:09,150.150 INFO    ] 200
[2026-08-25 08:39:09,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:09,194.194 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:39:09,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:39:09,240.240 INFO    ] No camera update needed
[2026-08-25 08:39:09,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:39:09,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:39:09,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:39:09,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:39:11,293.293 INFO    ] ================================================
[2026-08-25 08:39:11,309.309 INFO    ] Launching Daemon at Tue Aug 25 08:39:11 IST 2026
[2026-08-25 08:39:11,321.321 INFO    ] ================================================
[2026-08-25 08:39:11,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:39:11
[2026-08-25 08:39:12,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:39:12,742.742 INFO    ] Initializing speech engine...
[2026-08-25 08:39:12,748.748 INFO    ] 2026-08-25 08:39:12
[2026-08-25 08:39:13,012.012 INFO    ] 2026-08-25 08:39:13
[2026-08-25 08:39:13,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:39:13,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:39:13,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:39:13,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:39:13,478.478 INFO    ] time= 25/08/2026 08:39:13
[2026-08-25 08:39:13,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:39:13,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:39:13,695.695 INFO    ] No existing commands found in stream
[2026-08-25 08:39:18,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:39:18,720.720 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 08:39:20,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:39:20,602.602 INFO    ] Checking for system updates...
[2026-08-25 08:39:20,637.637 INFO    ] 200
[2026-08-25 08:39:20,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:20,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:39:20,695.695 INFO    ] No update needed
[2026-08-25 08:39:20,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 08:39:20,735.735 INFO    ] 200
[2026-08-25 08:39:20,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:20,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:39:20,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:39:20,827.827 INFO    ] No camera update needed
[2026-08-25 08:39:20,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:39:20,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:39:20,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:39:20,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:39:22,883.883 INFO    ] ================================================
[2026-08-25 08:39:22,898.898 INFO    ] Launching Daemon at Tue Aug 25 08:39:22 IST 2026
[2026-08-25 08:39:22,909.909 INFO    ] ================================================
[2026-08-25 08:39:23,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:39:23
[2026-08-25 08:39:24,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:39:24,327.327 INFO    ] Initializing speech engine...
[2026-08-25 08:39:24,337.337 INFO    ] 2026-08-25 08:39:24
[2026-08-25 08:39:24,596.596 INFO    ] 2026-08-25 08:39:24
[2026-08-25 08:39:24,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:39:24,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:39:24,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:39:25,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:39:25,105.105 INFO    ] time= 25/08/2026 08:39:25
[2026-08-25 08:39:25,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:39:25,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:39:25,311.311 INFO    ] No existing commands found in stream
[2026-08-25 08:39:30,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:39:30,338.338 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 08:39:33,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:39:33,847.847 INFO    ] Checking for system updates...
[2026-08-25 08:39:33,883.883 INFO    ] 200
[2026-08-25 08:39:33,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:33,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:39:33,940.940 INFO    ] No update needed
[2026-08-25 08:39:33,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 08:39:33,976.976 INFO    ] 200
[2026-08-25 08:39:33,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:34,023.023 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:39:34,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:39:34,071.071 INFO    ] No camera update needed
[2026-08-25 08:39:34,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:39:34,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:39:34,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:39:34,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:39:36,126.126 INFO    ] ================================================
[2026-08-25 08:39:36,141.141 INFO    ] Launching Daemon at Tue Aug 25 08:39:36 IST 2026
[2026-08-25 08:39:36,153.153 INFO    ] ================================================
[2026-08-25 08:39:36,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:39:36
[2026-08-25 08:39:37,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:39:37,548.548 INFO    ] Initializing speech engine...
[2026-08-25 08:39:37,561.561 INFO    ] 2026-08-25 08:39:37
[2026-08-25 08:39:37,826.826 INFO    ] 2026-08-25 08:39:37
[2026-08-25 08:39:37,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:39:38,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:39:38,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:39:38,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:39:38,309.309 INFO    ] time= 25/08/2026 08:39:38
[2026-08-25 08:39:38,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:39:38,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:39:38,518.518 INFO    ] No existing commands found in stream
[2026-08-25 08:39:43,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:39:43,547.547 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 08:39:47,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:39:47,955.955 INFO    ] Checking for system updates...
[2026-08-25 08:39:47,991.991 INFO    ] 200
[2026-08-25 08:39:47,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:48,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:39:48,054.054 INFO    ] No update needed
[2026-08-25 08:39:48,057.057 INFO    ] Checking for camera pi updates...
[2026-08-25 08:39:48,091.091 INFO    ] 200
[2026-08-25 08:39:48,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:48,140.140 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:39:48,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:39:48,187.187 INFO    ] No camera update needed
[2026-08-25 08:39:48,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:39:48,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:39:48,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:39:48,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:39:50,242.242 INFO    ] ================================================
[2026-08-25 08:39:50,257.257 INFO    ] Launching Daemon at Tue Aug 25 08:39:50 IST 2026
[2026-08-25 08:39:50,268.268 INFO    ] ================================================
[2026-08-25 08:39:50,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:39:50
[2026-08-25 08:39:51,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:39:51,717.717 INFO    ] Initializing speech engine...
[2026-08-25 08:39:51,722.722 INFO    ] 2026-08-25 08:39:51
[2026-08-25 08:39:51,981.981 INFO    ] 2026-08-25 08:39:51
[2026-08-25 08:39:52,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:39:52,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:39:52,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:39:52,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:39:52,467.467 INFO    ] time= 25/08/2026 08:39:52
[2026-08-25 08:39:52,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:39:52,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:39:52,666.666 INFO    ] No existing commands found in stream
[2026-08-25 08:39:57,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:39:57,688.688 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 08:39:59,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:39:59,706.706 INFO    ] Checking for system updates...
[2026-08-25 08:39:59,741.741 INFO    ] 200
[2026-08-25 08:39:59,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:59,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:39:59,798.798 INFO    ] No update needed
[2026-08-25 08:39:59,800.800 INFO    ] Checking for camera pi updates...
[2026-08-25 08:39:59,837.837 INFO    ] 200
[2026-08-25 08:39:59,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:39:59,884.884 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:39:59,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:39:59,932.932 INFO    ] No camera update needed
[2026-08-25 08:39:59,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:39:59,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:39:59,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:39:59,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:40:02,002.002 INFO    ] ================================================
[2026-08-25 08:40:02,044.044 INFO    ] Launching Daemon at Tue Aug 25 08:40:02 IST 2026
[2026-08-25 08:40:02,068.068 INFO    ] ================================================
[2026-08-25 08:40:02,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:40:02
[2026-08-25 08:40:03,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:40:03,637.637 INFO    ] Initializing speech engine...
[2026-08-25 08:40:03,661.661 INFO    ] 2026-08-25 08:40:03
[2026-08-25 08:40:03,930.930 INFO    ] 2026-08-25 08:40:03
[2026-08-25 08:40:03,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:40:04,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:40:04,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:40:04,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:40:04,341.341 INFO    ] time= 25/08/2026 08:40:04
[2026-08-25 08:40:04,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:40:04,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:40:04,433.433 INFO    ] No existing commands found in stream
[2026-08-25 08:40:09,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:40:09,461.461 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 08:40:13,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:40:13,212.212 INFO    ] Checking for system updates...
[2026-08-25 08:40:13,256.256 INFO    ] 200
[2026-08-25 08:40:13,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:13,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:40:13,313.313 INFO    ] No update needed
[2026-08-25 08:40:13,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 08:40:13,349.349 INFO    ] 200
[2026-08-25 08:40:13,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:13,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:40:13,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:40:13,545.545 INFO    ] No camera update needed
[2026-08-25 08:40:13,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:40:13,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:40:13,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:40:13,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:40:15,599.599 INFO    ] ================================================
[2026-08-25 08:40:15,613.613 INFO    ] Launching Daemon at Tue Aug 25 08:40:15 IST 2026
[2026-08-25 08:40:15,624.624 INFO    ] ================================================
[2026-08-25 08:40:16,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:40:16
[2026-08-25 08:40:16,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:40:17,040.040 INFO    ] Initializing speech engine...
[2026-08-25 08:40:17,047.047 INFO    ] 2026-08-25 08:40:17
[2026-08-25 08:40:17,337.337 INFO    ] 2026-08-25 08:40:17
[2026-08-25 08:40:17,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:40:17,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:40:17,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:40:17,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:40:17,756.756 INFO    ] time= 25/08/2026 08:40:17
[2026-08-25 08:40:17,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:40:17,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:40:17,914.914 INFO    ] No existing commands found in stream
[2026-08-25 08:40:22,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:40:22,947.947 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 08:40:26,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:40:26,011.011 INFO    ] Checking for system updates...
[2026-08-25 08:40:26,047.047 INFO    ] 200
[2026-08-25 08:40:26,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:26,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:40:26,108.108 INFO    ] No update needed
[2026-08-25 08:40:26,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 08:40:26,145.145 INFO    ] 200
[2026-08-25 08:40:26,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:26,188.188 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:40:26,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:40:26,252.252 INFO    ] No camera update needed
[2026-08-25 08:40:26,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:40:26,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:40:26,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:40:26,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:40:28,310.310 INFO    ] ================================================
[2026-08-25 08:40:28,325.325 INFO    ] Launching Daemon at Tue Aug 25 08:40:28 IST 2026
[2026-08-25 08:40:28,336.336 INFO    ] ================================================
[2026-08-25 08:40:28,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:40:28
[2026-08-25 08:40:29,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:40:29,795.795 INFO    ] Initializing speech engine...
[2026-08-25 08:40:29,800.800 INFO    ] 2026-08-25 08:40:29
[2026-08-25 08:40:30,062.062 INFO    ] 2026-08-25 08:40:30
[2026-08-25 08:40:30,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:40:30,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:40:30,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:40:30,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:40:30,547.547 INFO    ] time= 25/08/2026 08:40:30
[2026-08-25 08:40:30,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:40:30,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:40:30,748.748 INFO    ] No existing commands found in stream
[2026-08-25 08:40:35,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:40:35,773.773 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 08:40:38,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:40:38,333.333 INFO    ] Checking for system updates...
[2026-08-25 08:40:38,372.372 INFO    ] 200
[2026-08-25 08:40:38,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:38,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:40:38,429.429 INFO    ] No update needed
[2026-08-25 08:40:38,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 08:40:38,466.466 INFO    ] 200
[2026-08-25 08:40:38,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:38,519.519 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:40:38,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:40:38,568.568 INFO    ] No camera update needed
[2026-08-25 08:40:38,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:40:38,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:40:38,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:40:38,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:40:40,623.623 INFO    ] ================================================
[2026-08-25 08:40:40,639.639 INFO    ] Launching Daemon at Tue Aug 25 08:40:40 IST 2026
[2026-08-25 08:40:40,650.650 INFO    ] ================================================
[2026-08-25 08:40:41,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:40:41
[2026-08-25 08:40:41,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:40:42,256.256 INFO    ] Initializing speech engine...
[2026-08-25 08:40:42,264.264 INFO    ] 2026-08-25 08:40:42
[2026-08-25 08:40:42,542.542 INFO    ] 2026-08-25 08:40:42
[2026-08-25 08:40:42,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:40:42,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:40:42,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:40:42,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:40:43,034.034 INFO    ] time= 25/08/2026 08:40:42
[2026-08-25 08:40:43,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:40:43,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:40:43,268.268 INFO    ] No existing commands found in stream
[2026-08-25 08:40:48,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:40:48,307.307 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 08:40:49,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:40:50,001.001 INFO    ] Checking for system updates...
[2026-08-25 08:40:50,037.037 INFO    ] 200
[2026-08-25 08:40:50,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:50,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:40:50,102.102 INFO    ] No update needed
[2026-08-25 08:40:50,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 08:40:50,146.146 INFO    ] 200
[2026-08-25 08:40:50,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:40:50,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:40:50,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:40:50,246.246 INFO    ] No camera update needed
[2026-08-25 08:40:50,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:40:50,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:40:50,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:40:50,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:40:52,304.304 INFO    ] ================================================
[2026-08-25 08:40:52,320.320 INFO    ] Launching Daemon at Tue Aug 25 08:40:52 IST 2026
[2026-08-25 08:40:52,331.331 INFO    ] ================================================
[2026-08-25 08:40:52,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:40:52
[2026-08-25 08:40:53,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:40:53,750.750 INFO    ] Initializing speech engine...
[2026-08-25 08:40:53,759.759 INFO    ] 2026-08-25 08:40:53
[2026-08-25 08:40:54,009.009 INFO    ] 2026-08-25 08:40:54
[2026-08-25 08:40:54,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:40:54,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:40:54,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:40:54,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:40:54,383.383 INFO    ] time= 25/08/2026 08:40:54
[2026-08-25 08:40:54,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:40:54,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:40:54,563.563 INFO    ] No existing commands found in stream
[2026-08-25 08:40:59,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:40:59,595.595 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 08:41:03,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:41:03,531.531 INFO    ] Checking for system updates...
[2026-08-25 08:41:03,567.567 INFO    ] 200
[2026-08-25 08:41:03,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:03,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:41:03,623.623 INFO    ] No update needed
[2026-08-25 08:41:03,626.626 INFO    ] Checking for camera pi updates...
[2026-08-25 08:41:03,659.659 INFO    ] 200
[2026-08-25 08:41:03,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:03,706.706 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:41:03,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:41:03,753.753 INFO    ] No camera update needed
[2026-08-25 08:41:03,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:41:03,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:41:03,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:41:03,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:41:05,809.809 INFO    ] ================================================
[2026-08-25 08:41:05,825.825 INFO    ] Launching Daemon at Tue Aug 25 08:41:05 IST 2026
[2026-08-25 08:41:05,836.836 INFO    ] ================================================
[2026-08-25 08:41:06,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:41:06
[2026-08-25 08:41:07,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:41:07,467.467 INFO    ] Initializing speech engine...
[2026-08-25 08:41:07,475.475 INFO    ] 2026-08-25 08:41:07
[2026-08-25 08:41:07,751.751 INFO    ] 2026-08-25 08:41:07
[2026-08-25 08:41:07,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:41:08,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:41:08,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:41:08,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:41:08,236.236 INFO    ] time= 25/08/2026 08:41:08
[2026-08-25 08:41:08,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:41:08,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:41:08,457.457 INFO    ] No existing commands found in stream
[2026-08-25 08:41:13,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:41:13,483.483 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 08:41:16,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:41:16,573.573 INFO    ] Checking for system updates...
[2026-08-25 08:41:16,616.616 INFO    ] 200
[2026-08-25 08:41:16,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:16,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:41:16,676.676 INFO    ] No update needed
[2026-08-25 08:41:16,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 08:41:16,721.721 INFO    ] 200
[2026-08-25 08:41:16,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:16,765.765 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:41:16,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:41:16,817.817 INFO    ] No camera update needed
[2026-08-25 08:41:16,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:41:16,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:41:16,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:41:16,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:41:18,876.876 INFO    ] ================================================
[2026-08-25 08:41:18,892.892 INFO    ] Launching Daemon at Tue Aug 25 08:41:18 IST 2026
[2026-08-25 08:41:18,903.903 INFO    ] ================================================
[2026-08-25 08:41:19,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:41:19
[2026-08-25 08:41:20,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:41:20,311.311 INFO    ] Initializing speech engine...
[2026-08-25 08:41:20,331.331 INFO    ] 2026-08-25 08:41:20
[2026-08-25 08:41:20,579.579 INFO    ] 2026-08-25 08:41:20
[2026-08-25 08:41:20,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:41:20,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:41:20,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:41:21,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:41:21,039.039 INFO    ] time= 25/08/2026 08:41:21
[2026-08-25 08:41:21,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:41:21,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:41:21,272.272 INFO    ] No existing commands found in stream
[2026-08-25 08:41:26,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:41:26,307.307 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 08:41:29,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:41:29,696.696 INFO    ] Checking for system updates...
[2026-08-25 08:41:29,732.732 INFO    ] 200
[2026-08-25 08:41:29,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:29,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:41:29,798.798 INFO    ] No update needed
[2026-08-25 08:41:29,801.801 INFO    ] Checking for camera pi updates...
[2026-08-25 08:41:29,836.836 INFO    ] 200
[2026-08-25 08:41:29,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:29,885.885 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:41:29,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:41:29,937.937 INFO    ] No camera update needed
[2026-08-25 08:41:29,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:41:29,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:41:29,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:41:29,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:41:31,993.993 INFO    ] ================================================
[2026-08-25 08:41:32,010.010 INFO    ] Launching Daemon at Tue Aug 25 08:41:32 IST 2026
[2026-08-25 08:41:32,021.021 INFO    ] ================================================
[2026-08-25 08:41:32,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:41:32
[2026-08-25 08:41:33,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:41:33,595.595 INFO    ] Initializing speech engine...
[2026-08-25 08:41:33,603.603 INFO    ] 2026-08-25 08:41:33
[2026-08-25 08:41:33,896.896 INFO    ] 2026-08-25 08:41:33
[2026-08-25 08:41:34,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:41:34,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:41:34,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:41:34,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:41:34,428.428 INFO    ] time= 25/08/2026 08:41:34
[2026-08-25 08:41:34,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:41:34,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:41:34,611.611 INFO    ] No existing commands found in stream
[2026-08-25 08:41:39,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:41:39,645.645 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 08:41:44,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:41:44,123.123 INFO    ] Checking for system updates...
[2026-08-25 08:41:44,160.160 INFO    ] 200
[2026-08-25 08:41:44,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:44,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:41:44,220.220 INFO    ] No update needed
[2026-08-25 08:41:44,223.223 INFO    ] Checking for camera pi updates...
[2026-08-25 08:41:44,257.257 INFO    ] 200
[2026-08-25 08:41:44,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:44,303.303 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:41:44,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:41:44,351.351 INFO    ] No camera update needed
[2026-08-25 08:41:44,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:41:44,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:41:44,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:41:44,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:41:46,408.408 INFO    ] ================================================
[2026-08-25 08:41:46,423.423 INFO    ] Launching Daemon at Tue Aug 25 08:41:46 IST 2026
[2026-08-25 08:41:46,433.433 INFO    ] ================================================
[2026-08-25 08:41:47,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:41:46
[2026-08-25 08:41:47,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:41:47,833.833 INFO    ] Initializing speech engine...
[2026-08-25 08:41:47,847.847 INFO    ] 2026-08-25 08:41:47
[2026-08-25 08:41:48,113.113 INFO    ] 2026-08-25 08:41:48
[2026-08-25 08:41:48,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:41:48,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:41:48,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:41:48,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:41:48,492.492 INFO    ] time= 25/08/2026 08:41:48
[2026-08-25 08:41:48,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:41:48,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:41:48,648.648 INFO    ] No existing commands found in stream
[2026-08-25 08:41:53,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:41:53,676.676 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 08:41:54,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:41:54,743.743 INFO    ] Checking for system updates...
[2026-08-25 08:41:54,779.779 INFO    ] 200
[2026-08-25 08:41:54,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:54,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:41:54,838.838 INFO    ] No update needed
[2026-08-25 08:41:54,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 08:41:54,876.876 INFO    ] 200
[2026-08-25 08:41:54,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:41:54,926.926 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:41:54,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:41:54,983.983 INFO    ] No camera update needed
[2026-08-25 08:41:54,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:41:54,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:41:54,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:41:54,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:41:57,039.039 INFO    ] ================================================
[2026-08-25 08:41:57,054.054 INFO    ] Launching Daemon at Tue Aug 25 08:41:57 IST 2026
[2026-08-25 08:41:57,065.065 INFO    ] ================================================
[2026-08-25 08:41:57,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:41:57
[2026-08-25 08:41:58,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:41:58,732.732 INFO    ] Initializing speech engine...
[2026-08-25 08:41:58,740.740 INFO    ] 2026-08-25 08:41:58
[2026-08-25 08:41:59,009.009 INFO    ] 2026-08-25 08:41:58
[2026-08-25 08:41:59,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:41:59,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:41:59,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:41:59,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:41:59,546.546 INFO    ] time= 25/08/2026 08:41:59
[2026-08-25 08:41:59,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:41:59,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:41:59,684.684 INFO    ] No existing commands found in stream
[2026-08-25 08:42:04,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:42:04,718.718 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 08:42:08,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:42:08,380.380 INFO    ] Checking for system updates...
[2026-08-25 08:42:08,416.416 INFO    ] 200
[2026-08-25 08:42:08,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:08,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:42:08,475.475 INFO    ] No update needed
[2026-08-25 08:42:08,478.478 INFO    ] Checking for camera pi updates...
[2026-08-25 08:42:08,518.518 INFO    ] 200
[2026-08-25 08:42:08,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:08,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:42:08,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:42:08,631.631 INFO    ] No camera update needed
[2026-08-25 08:42:08,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:42:08,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:42:08,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:42:08,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:42:10,688.688 INFO    ] ================================================
[2026-08-25 08:42:10,703.703 INFO    ] Launching Daemon at Tue Aug 25 08:42:10 IST 2026
[2026-08-25 08:42:10,714.714 INFO    ] ================================================
[2026-08-25 08:42:11,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:42:11
[2026-08-25 08:42:11,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:42:12,190.190 INFO    ] Initializing speech engine...
[2026-08-25 08:42:12,215.215 INFO    ] 2026-08-25 08:42:12
[2026-08-25 08:42:12,469.469 INFO    ] 2026-08-25 08:42:12
[2026-08-25 08:42:12,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:42:12,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:42:12,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:42:12,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:42:12,910.910 INFO    ] time= 25/08/2026 08:42:12
[2026-08-25 08:42:12,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:42:13,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:42:13,171.171 INFO    ] No existing commands found in stream
[2026-08-25 08:42:18,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:42:18,199.199 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 08:42:22,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:42:22,109.109 INFO    ] Checking for system updates...
[2026-08-25 08:42:22,145.145 INFO    ] 200
[2026-08-25 08:42:22,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:22,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:42:22,202.202 INFO    ] No update needed
[2026-08-25 08:42:22,204.204 INFO    ] Checking for camera pi updates...
[2026-08-25 08:42:22,238.238 INFO    ] 200
[2026-08-25 08:42:22,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:22,285.285 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:42:22,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:42:22,433.433 INFO    ] No camera update needed
[2026-08-25 08:42:22,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:42:22,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:42:22,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:42:22,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:42:24,487.487 INFO    ] ================================================
[2026-08-25 08:42:24,502.502 INFO    ] Launching Daemon at Tue Aug 25 08:42:24 IST 2026
[2026-08-25 08:42:24,513.513 INFO    ] ================================================
[2026-08-25 08:42:25,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:42:25
[2026-08-25 08:42:25,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:42:25,933.933 INFO    ] Initializing speech engine...
[2026-08-25 08:42:25,942.942 INFO    ] 2026-08-25 08:42:25
[2026-08-25 08:42:26,187.187 INFO    ] 2026-08-25 08:42:26
[2026-08-25 08:42:26,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:42:26,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:42:26,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:42:26,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:42:26,587.587 INFO    ] time= 25/08/2026 08:42:26
[2026-08-25 08:42:26,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:42:26,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:42:26,765.765 INFO    ] No existing commands found in stream
[2026-08-25 08:42:31,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:42:31,799.799 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 08:42:36,121.121 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:42:36,124.124 INFO    ] Checking for system updates...
[2026-08-25 08:42:36,159.159 INFO    ] 200
[2026-08-25 08:42:36,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:36,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:42:36,217.217 INFO    ] No update needed
[2026-08-25 08:42:36,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 08:42:36,257.257 INFO    ] 200
[2026-08-25 08:42:36,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:36,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:42:36,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:42:36,349.349 INFO    ] No camera update needed
[2026-08-25 08:42:36,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:42:36,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:42:36,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:42:36,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:42:38,404.404 INFO    ] ================================================
[2026-08-25 08:42:38,419.419 INFO    ] Launching Daemon at Tue Aug 25 08:42:38 IST 2026
[2026-08-25 08:42:38,430.430 INFO    ] ================================================
[2026-08-25 08:42:39,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:42:39
[2026-08-25 08:42:39,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:42:40,096.096 INFO    ] Initializing speech engine...
[2026-08-25 08:42:40,106.106 INFO    ] 2026-08-25 08:42:40
[2026-08-25 08:42:40,380.380 INFO    ] 2026-08-25 08:42:40
[2026-08-25 08:42:40,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:42:40,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:42:40,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:42:40,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:42:40,951.951 INFO    ] time= 25/08/2026 08:42:40
[2026-08-25 08:42:40,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:42:40,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:42:41,111.111 INFO    ] No existing commands found in stream
[2026-08-25 08:42:46,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:42:46,135.135 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 08:42:49,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:42:49,135.135 INFO    ] Checking for system updates...
[2026-08-25 08:42:49,171.171 INFO    ] 200
[2026-08-25 08:42:49,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:49,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:42:49,231.231 INFO    ] No update needed
[2026-08-25 08:42:49,234.234 INFO    ] Checking for camera pi updates...
[2026-08-25 08:42:49,269.269 INFO    ] 200
[2026-08-25 08:42:49,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:42:49,318.318 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:42:49,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:42:49,366.366 INFO    ] No camera update needed
[2026-08-25 08:42:49,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:42:49,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:42:49,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:42:49,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:42:51,420.420 INFO    ] ================================================
[2026-08-25 08:42:51,436.436 INFO    ] Launching Daemon at Tue Aug 25 08:42:51 IST 2026
[2026-08-25 08:42:51,446.446 INFO    ] ================================================
[2026-08-25 08:42:52,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:42:52
[2026-08-25 08:42:52,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:42:52,890.890 INFO    ] Initializing speech engine...
[2026-08-25 08:42:52,896.896 INFO    ] 2026-08-25 08:42:52
[2026-08-25 08:42:53,204.204 INFO    ] 2026-08-25 08:42:53
[2026-08-25 08:42:53,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:42:53,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:42:53,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:42:53,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:42:53,597.597 INFO    ] time= 25/08/2026 08:42:53
[2026-08-25 08:42:53,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:42:53,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:42:53,727.727 INFO    ] No existing commands found in stream
[2026-08-25 08:42:58,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:42:58,742.742 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 08:43:02,651.651 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:43:02,654.654 INFO    ] Checking for system updates...
[2026-08-25 08:43:02,700.700 INFO    ] 200
[2026-08-25 08:43:02,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:02,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:43:02,774.774 INFO    ] No update needed
[2026-08-25 08:43:02,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 08:43:02,835.835 INFO    ] 200
[2026-08-25 08:43:02,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:02,895.895 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:43:02,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:43:02,942.942 INFO    ] No camera update needed
[2026-08-25 08:43:02,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:43:02,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:43:02,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:43:02,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:43:05,998.998 INFO    ] ================================================
[2026-08-25 08:43:05,014.014 INFO    ] Launching Daemon at Tue Aug 25 08:43:05 IST 2026
[2026-08-25 08:43:05,025.025 INFO    ] ================================================
[2026-08-25 08:43:05,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:43:05
[2026-08-25 08:43:06,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:43:06,459.459 INFO    ] Initializing speech engine...
[2026-08-25 08:43:06,469.469 INFO    ] 2026-08-25 08:43:06
[2026-08-25 08:43:06,777.777 INFO    ] 2026-08-25 08:43:06
[2026-08-25 08:43:06,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:43:07,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:43:07,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:43:07,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:43:07,173.173 INFO    ] time= 25/08/2026 08:43:07
[2026-08-25 08:43:07,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:43:07,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:43:07,303.303 INFO    ] No existing commands found in stream
[2026-08-25 08:43:12,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:43:12,318.318 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 08:43:15,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:43:15,048.048 INFO    ] Checking for system updates...
[2026-08-25 08:43:15,086.086 INFO    ] 200
[2026-08-25 08:43:15,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:15,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:43:15,157.157 INFO    ] No update needed
[2026-08-25 08:43:15,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 08:43:15,195.195 INFO    ] 200
[2026-08-25 08:43:15,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:15,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:43:15,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:43:15,298.298 INFO    ] No camera update needed
[2026-08-25 08:43:15,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:43:15,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:43:15,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:43:15,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:43:17,356.356 INFO    ] ================================================
[2026-08-25 08:43:17,371.371 INFO    ] Launching Daemon at Tue Aug 25 08:43:17 IST 2026
[2026-08-25 08:43:17,382.382 INFO    ] ================================================
[2026-08-25 08:43:17,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:43:17
[2026-08-25 08:43:18,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:43:18,780.780 INFO    ] Initializing speech engine...
[2026-08-25 08:43:18,788.788 INFO    ] 2026-08-25 08:43:18
[2026-08-25 08:43:19,090.090 INFO    ] 2026-08-25 08:43:19
[2026-08-25 08:43:19,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:43:19,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:43:19,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:43:19,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:43:19,485.485 INFO    ] time= 25/08/2026 08:43:19
[2026-08-25 08:43:19,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:43:19,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:43:19,616.616 INFO    ] No existing commands found in stream
[2026-08-25 08:43:24,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:43:24,631.631 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 08:43:27,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:43:27,720.720 INFO    ] Checking for system updates...
[2026-08-25 08:43:27,756.756 INFO    ] 200
[2026-08-25 08:43:27,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:27,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:43:27,812.812 INFO    ] No update needed
[2026-08-25 08:43:27,814.814 INFO    ] Checking for camera pi updates...
[2026-08-25 08:43:27,852.852 INFO    ] 200
[2026-08-25 08:43:27,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:27,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:43:27,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:43:27,947.947 INFO    ] No camera update needed
[2026-08-25 08:43:27,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:43:27,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:43:27,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:43:27,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:43:30,002.002 INFO    ] ================================================
[2026-08-25 08:43:30,017.017 INFO    ] Launching Daemon at Tue Aug 25 08:43:30 IST 2026
[2026-08-25 08:43:30,028.028 INFO    ] ================================================
[2026-08-25 08:43:30,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:43:30
[2026-08-25 08:43:31,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:43:31,679.679 INFO    ] Initializing speech engine...
[2026-08-25 08:43:31,694.694 INFO    ] 2026-08-25 08:43:31
[2026-08-25 08:43:31,975.975 INFO    ] 2026-08-25 08:43:31
[2026-08-25 08:43:32,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:43:32,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:43:32,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:43:32,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:43:32,379.379 INFO    ] time= 25/08/2026 08:43:32
[2026-08-25 08:43:32,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:43:32,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:43:32,576.576 INFO    ] No existing commands found in stream
[2026-08-25 08:43:37,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:43:37,604.604 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 08:43:40,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:43:40,434.434 INFO    ] Checking for system updates...
[2026-08-25 08:43:40,472.472 INFO    ] 200
[2026-08-25 08:43:40,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:40,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:43:40,530.530 INFO    ] No update needed
[2026-08-25 08:43:40,532.532 INFO    ] Checking for camera pi updates...
[2026-08-25 08:43:40,567.567 INFO    ] 200
[2026-08-25 08:43:40,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:40,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:43:40,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:43:40,667.667 INFO    ] No camera update needed
[2026-08-25 08:43:40,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:43:40,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:43:40,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:43:40,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:43:42,722.722 INFO    ] ================================================
[2026-08-25 08:43:42,737.737 INFO    ] Launching Daemon at Tue Aug 25 08:43:42 IST 2026
[2026-08-25 08:43:42,748.748 INFO    ] ================================================
[2026-08-25 08:43:43,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:43:43
[2026-08-25 08:43:43,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:43:44,201.201 INFO    ] Initializing speech engine...
[2026-08-25 08:43:44,216.216 INFO    ] 2026-08-25 08:43:44
[2026-08-25 08:43:44,530.530 INFO    ] 2026-08-25 08:43:44
[2026-08-25 08:43:44,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:43:44,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:43:44,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:43:45,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:43:45,036.036 INFO    ] time= 25/08/2026 08:43:45
[2026-08-25 08:43:45,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:43:45,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:43:45,205.205 INFO    ] No existing commands found in stream
[2026-08-25 08:43:50,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:43:50,235.235 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-25 08:43:53,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:43:53,136.136 INFO    ] Checking for system updates...
[2026-08-25 08:43:53,172.172 INFO    ] 200
[2026-08-25 08:43:53,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:53,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:43:53,231.231 INFO    ] No update needed
[2026-08-25 08:43:53,234.234 INFO    ] Checking for camera pi updates...
[2026-08-25 08:43:53,273.273 INFO    ] 200
[2026-08-25 08:43:53,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:43:53,316.316 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:43:53,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:43:53,366.366 INFO    ] No camera update needed
[2026-08-25 08:43:53,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:43:53,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:43:53,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:43:53,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:43:55,423.423 INFO    ] ================================================
[2026-08-25 08:43:55,439.439 INFO    ] Launching Daemon at Tue Aug 25 08:43:55 IST 2026
[2026-08-25 08:43:55,449.449 INFO    ] ================================================
[2026-08-25 08:43:56,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:43:56
[2026-08-25 08:43:56,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:43:57,132.132 INFO    ] Initializing speech engine...
[2026-08-25 08:43:57,140.140 INFO    ] 2026-08-25 08:43:57
[2026-08-25 08:43:57,424.424 INFO    ] 2026-08-25 08:43:57
[2026-08-25 08:43:57,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:43:57,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:43:57,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:43:57,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:43:57,986.986 INFO    ] time= 25/08/2026 08:43:57
[2026-08-25 08:43:57,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:43:58,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:43:58,149.149 INFO    ] No existing commands found in stream
[2026-08-25 08:44:03,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:44:03,192.192 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 08:44:07,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:44:07,338.338 INFO    ] Checking for system updates...
[2026-08-25 08:44:07,376.376 INFO    ] 200
[2026-08-25 08:44:07,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:07,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:44:07,445.445 INFO    ] No update needed
[2026-08-25 08:44:07,448.448 INFO    ] Checking for camera pi updates...
[2026-08-25 08:44:07,487.487 INFO    ] 200
[2026-08-25 08:44:07,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:07,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:44:07,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:44:07,578.578 INFO    ] No camera update needed
[2026-08-25 08:44:07,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:44:07,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:44:07,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:44:07,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:44:09,638.638 INFO    ] ================================================
[2026-08-25 08:44:09,653.653 INFO    ] Launching Daemon at Tue Aug 25 08:44:09 IST 2026
[2026-08-25 08:44:09,664.664 INFO    ] ================================================
[2026-08-25 08:44:10,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:44:10
[2026-08-25 08:44:10,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:44:11,101.101 INFO    ] Initializing speech engine...
[2026-08-25 08:44:11,108.108 INFO    ] 2026-08-25 08:44:11
[2026-08-25 08:44:11,371.371 INFO    ] 2026-08-25 08:44:11
[2026-08-25 08:44:11,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:44:11,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:44:11,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:44:11,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:44:11,843.843 INFO    ] time= 25/08/2026 08:44:11
[2026-08-25 08:44:11,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:44:11,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:44:12,048.048 INFO    ] No existing commands found in stream
[2026-08-25 08:44:17,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:44:17,072.072 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 08:44:20,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:44:20,782.782 INFO    ] Checking for system updates...
[2026-08-25 08:44:20,819.819 INFO    ] 200
[2026-08-25 08:44:20,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:20,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:44:20,879.879 INFO    ] No update needed
[2026-08-25 08:44:20,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 08:44:20,917.917 INFO    ] 200
[2026-08-25 08:44:20,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:20,961.961 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:44:21,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:44:21,008.008 INFO    ] No camera update needed
[2026-08-25 08:44:21,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:44:21,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:44:21,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:44:21,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:44:23,068.068 INFO    ] ================================================
[2026-08-25 08:44:23,084.084 INFO    ] Launching Daemon at Tue Aug 25 08:44:23 IST 2026
[2026-08-25 08:44:23,094.094 INFO    ] ================================================
[2026-08-25 08:44:23,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:44:23
[2026-08-25 08:44:24,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:44:24,525.525 INFO    ] Initializing speech engine...
[2026-08-25 08:44:24,538.538 INFO    ] 2026-08-25 08:44:24
[2026-08-25 08:44:24,785.785 INFO    ] 2026-08-25 08:44:24
[2026-08-25 08:44:24,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:44:25,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:44:25,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:44:25,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:44:25,263.263 INFO    ] time= 25/08/2026 08:44:25
[2026-08-25 08:44:25,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:44:25,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:44:25,455.455 INFO    ] No existing commands found in stream
[2026-08-25 08:44:30,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:44:30,490.490 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 08:44:34,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:44:34,653.653 INFO    ] Checking for system updates...
[2026-08-25 08:44:34,688.688 INFO    ] 200
[2026-08-25 08:44:34,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:34,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:44:34,745.745 INFO    ] No update needed
[2026-08-25 08:44:34,747.747 INFO    ] Checking for camera pi updates...
[2026-08-25 08:44:34,781.781 INFO    ] 200
[2026-08-25 08:44:34,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:34,825.825 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:44:34,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:44:34,874.874 INFO    ] No camera update needed
[2026-08-25 08:44:34,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:44:34,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:44:34,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:44:34,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:44:36,930.930 INFO    ] ================================================
[2026-08-25 08:44:36,946.946 INFO    ] Launching Daemon at Tue Aug 25 08:44:36 IST 2026
[2026-08-25 08:44:36,956.956 INFO    ] ================================================
[2026-08-25 08:44:37,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:44:37
[2026-08-25 08:44:38,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:44:38,635.635 INFO    ] Initializing speech engine...
[2026-08-25 08:44:38,650.650 INFO    ] 2026-08-25 08:44:38
[2026-08-25 08:44:38,968.968 INFO    ] 2026-08-25 08:44:38
[2026-08-25 08:44:39,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:44:39,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:44:39,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:44:39,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:44:39,439.439 INFO    ] time= 25/08/2026 08:44:39
[2026-08-25 08:44:39,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:44:39,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:44:39,646.646 INFO    ] No existing commands found in stream
[2026-08-25 08:44:44,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:44:44,668.668 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 08:44:47,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:44:47,504.504 INFO    ] Checking for system updates...
[2026-08-25 08:44:47,540.540 INFO    ] 200
[2026-08-25 08:44:47,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:47,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:44:47,596.596 INFO    ] No update needed
[2026-08-25 08:44:47,598.598 INFO    ] Checking for camera pi updates...
[2026-08-25 08:44:47,631.631 INFO    ] 200
[2026-08-25 08:44:47,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:44:47,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:44:47,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:44:47,717.717 INFO    ] No camera update needed
[2026-08-25 08:44:47,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:44:47,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:44:47,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:44:47,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:44:49,771.771 INFO    ] ================================================
[2026-08-25 08:44:49,787.787 INFO    ] Launching Daemon at Tue Aug 25 08:44:49 IST 2026
[2026-08-25 08:44:49,797.797 INFO    ] ================================================
[2026-08-25 08:44:50,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:44:50
[2026-08-25 08:44:50,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:44:51,241.241 INFO    ] Initializing speech engine...
[2026-08-25 08:44:51,248.248 INFO    ] 2026-08-25 08:44:51
[2026-08-25 08:44:51,497.497 INFO    ] 2026-08-25 08:44:51
[2026-08-25 08:44:51,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:44:51,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:44:51,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:44:51,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:44:51,852.852 INFO    ] time= 25/08/2026 08:44:51
[2026-08-25 08:44:51,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:44:51,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:44:51,952.952 INFO    ] No existing commands found in stream
[2026-08-25 08:44:56,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:44:56,980.980 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 08:45:00,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:45:00,510.510 INFO    ] Checking for system updates...
[2026-08-25 08:45:00,546.546 INFO    ] 200
[2026-08-25 08:45:00,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:00,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:45:00,602.602 INFO    ] No update needed
[2026-08-25 08:45:00,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 08:45:00,638.638 INFO    ] 200
[2026-08-25 08:45:00,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:00,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:45:00,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:45:00,732.732 INFO    ] No camera update needed
[2026-08-25 08:45:00,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:45:00,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:45:00,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:45:00,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:45:02,817.817 INFO    ] ================================================
[2026-08-25 08:45:02,837.837 INFO    ] Launching Daemon at Tue Aug 25 08:45:02 IST 2026
[2026-08-25 08:45:02,854.854 INFO    ] ================================================
[2026-08-25 08:45:03,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:45:03
[2026-08-25 08:45:04,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:45:04,600.600 INFO    ] Initializing speech engine...
[2026-08-25 08:45:04,611.611 INFO    ] 2026-08-25 08:45:04
[2026-08-25 08:45:04,918.918 INFO    ] 2026-08-25 08:45:04
[2026-08-25 08:45:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:45:05,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:45:05,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:45:05,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:45:05,431.431 INFO    ] time= 25/08/2026 08:45:05
[2026-08-25 08:45:05,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:45:05,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:45:05,587.587 INFO    ] No existing commands found in stream
[2026-08-25 08:45:10,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:45:10,611.611 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 08:45:13,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:45:13,388.388 INFO    ] Checking for system updates...
[2026-08-25 08:45:13,426.426 INFO    ] 200
[2026-08-25 08:45:13,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:13,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:45:13,493.493 INFO    ] No update needed
[2026-08-25 08:45:13,496.496 INFO    ] Checking for camera pi updates...
[2026-08-25 08:45:13,536.536 INFO    ] 200
[2026-08-25 08:45:13,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:13,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:45:13,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:45:13,643.643 INFO    ] No camera update needed
[2026-08-25 08:45:13,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:45:13,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:45:13,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:45:13,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:45:15,703.703 INFO    ] ================================================
[2026-08-25 08:45:15,719.719 INFO    ] Launching Daemon at Tue Aug 25 08:45:15 IST 2026
[2026-08-25 08:45:15,730.730 INFO    ] ================================================
[2026-08-25 08:45:16,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:45:16
[2026-08-25 08:45:16,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:45:17,200.200 INFO    ] Initializing speech engine...
[2026-08-25 08:45:17,206.206 INFO    ] 2026-08-25 08:45:17
[2026-08-25 08:45:17,468.468 INFO    ] 2026-08-25 08:45:17
[2026-08-25 08:45:17,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:45:17,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:45:17,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:45:17,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:45:17,959.959 INFO    ] time= 25/08/2026 08:45:17
[2026-08-25 08:45:18,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:45:18,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:45:18,165.165 INFO    ] No existing commands found in stream
[2026-08-25 08:45:23,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:45:23,184.184 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 08:45:26,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:45:26,385.385 INFO    ] Checking for system updates...
[2026-08-25 08:45:26,435.435 INFO    ] 200
[2026-08-25 08:45:26,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:26,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:45:26,496.496 INFO    ] No update needed
[2026-08-25 08:45:26,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 08:45:26,536.536 INFO    ] 200
[2026-08-25 08:45:26,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:26,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:45:26,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:45:26,626.626 INFO    ] No camera update needed
[2026-08-25 08:45:26,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:45:26,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:45:26,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:45:26,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:45:28,692.692 INFO    ] ================================================
[2026-08-25 08:45:28,709.709 INFO    ] Launching Daemon at Tue Aug 25 08:45:28 IST 2026
[2026-08-25 08:45:28,719.719 INFO    ] ================================================
[2026-08-25 08:45:29,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:45:29
[2026-08-25 08:45:30,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:45:30,459.459 INFO    ] Initializing speech engine...
[2026-08-25 08:45:30,467.467 INFO    ] 2026-08-25 08:45:30
[2026-08-25 08:45:30,766.766 INFO    ] 2026-08-25 08:45:30
[2026-08-25 08:45:30,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:45:31,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:45:31,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:45:31,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:45:31,189.189 INFO    ] time= 25/08/2026 08:45:31
[2026-08-25 08:45:31,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:45:31,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:45:31,433.433 INFO    ] No existing commands found in stream
[2026-08-25 08:45:36,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:45:36,458.458 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 08:45:38,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:45:38,844.844 INFO    ] Checking for system updates...
[2026-08-25 08:45:38,890.890 INFO    ] 200
[2026-08-25 08:45:38,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:38,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:45:38,956.956 INFO    ] No update needed
[2026-08-25 08:45:38,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 08:45:38,999.999 INFO    ] 200
[2026-08-25 08:45:39,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:39,072.072 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:45:39,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:45:39,123.123 INFO    ] No camera update needed
[2026-08-25 08:45:39,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:45:39,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:45:39,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:45:39,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:45:41,182.182 INFO    ] ================================================
[2026-08-25 08:45:41,198.198 INFO    ] Launching Daemon at Tue Aug 25 08:45:41 IST 2026
[2026-08-25 08:45:41,210.210 INFO    ] ================================================
[2026-08-25 08:45:41,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:45:41
[2026-08-25 08:45:42,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:45:42,610.610 INFO    ] Initializing speech engine...
[2026-08-25 08:45:42,633.633 INFO    ] 2026-08-25 08:45:42
[2026-08-25 08:45:42,888.888 INFO    ] 2026-08-25 08:45:42
[2026-08-25 08:45:42,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:45:43,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:45:43,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:45:43,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:45:43,263.263 INFO    ] time= 25/08/2026 08:45:43
[2026-08-25 08:45:43,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:45:43,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:45:43,440.440 INFO    ] No existing commands found in stream
[2026-08-25 08:45:48,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:45:48,468.468 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 08:45:52,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:45:52,381.381 INFO    ] Checking for system updates...
[2026-08-25 08:45:52,416.416 INFO    ] 200
[2026-08-25 08:45:52,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:52,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:45:52,473.473 INFO    ] No update needed
[2026-08-25 08:45:52,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 08:45:52,509.509 INFO    ] 200
[2026-08-25 08:45:52,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:45:52,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:45:52,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:45:52,599.599 INFO    ] No camera update needed
[2026-08-25 08:45:52,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:45:52,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:45:52,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:45:52,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:45:54,655.655 INFO    ] ================================================
[2026-08-25 08:45:54,671.671 INFO    ] Launching Daemon at Tue Aug 25 08:45:54 IST 2026
[2026-08-25 08:45:54,682.682 INFO    ] ================================================
[2026-08-25 08:45:55,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:45:55
[2026-08-25 08:45:55,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:45:56,099.099 INFO    ] Initializing speech engine...
[2026-08-25 08:45:56,118.118 INFO    ] 2026-08-25 08:45:56
[2026-08-25 08:45:56,365.365 INFO    ] 2026-08-25 08:45:56
[2026-08-25 08:45:56,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:45:56,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:45:56,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:45:56,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:45:56,749.749 INFO    ] time= 25/08/2026 08:45:56
[2026-08-25 08:45:56,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:45:56,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:45:56,844.844 INFO    ] No existing commands found in stream
[2026-08-25 08:46:01,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:46:01,880.880 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 08:46:03,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:46:03,436.436 INFO    ] Checking for system updates...
[2026-08-25 08:46:03,481.481 INFO    ] 200
[2026-08-25 08:46:03,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:03,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:03,548.548 INFO    ] No update needed
[2026-08-25 08:46:03,551.551 INFO    ] Checking for camera pi updates...
[2026-08-25 08:46:03,599.599 INFO    ] 200
[2026-08-25 08:46:03,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:03,647.647 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:46:03,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:03,707.707 INFO    ] No camera update needed
[2026-08-25 08:46:03,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:46:03,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:46:03,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:46:03,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:46:05,764.764 INFO    ] ================================================
[2026-08-25 08:46:05,779.779 INFO    ] Launching Daemon at Tue Aug 25 08:46:05 IST 2026
[2026-08-25 08:46:05,790.790 INFO    ] ================================================
[2026-08-25 08:46:06,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:46:06
[2026-08-25 08:46:07,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:46:07,532.532 INFO    ] Initializing speech engine...
[2026-08-25 08:46:07,542.542 INFO    ] 2026-08-25 08:46:07
[2026-08-25 08:46:07,873.873 INFO    ] 2026-08-25 08:46:07
[2026-08-25 08:46:07,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:46:08,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:46:08,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:46:08,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:46:08,415.415 INFO    ] time= 25/08/2026 08:46:08
[2026-08-25 08:46:08,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:46:08,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:46:08,549.549 INFO    ] No existing commands found in stream
[2026-08-25 08:46:13,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:46:13,577.577 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 08:46:15,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:46:15,540.540 INFO    ] Checking for system updates...
[2026-08-25 08:46:15,579.579 INFO    ] 200
[2026-08-25 08:46:15,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:15,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:15,643.643 INFO    ] No update needed
[2026-08-25 08:46:15,645.645 INFO    ] Checking for camera pi updates...
[2026-08-25 08:46:15,681.681 INFO    ] 200
[2026-08-25 08:46:15,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:15,728.728 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:46:15,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:15,788.788 INFO    ] No camera update needed
[2026-08-25 08:46:15,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:46:15,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:46:15,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:46:15,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:46:17,842.842 INFO    ] ================================================
[2026-08-25 08:46:17,857.857 INFO    ] Launching Daemon at Tue Aug 25 08:46:17 IST 2026
[2026-08-25 08:46:17,867.867 INFO    ] ================================================
[2026-08-25 08:46:18,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:46:18
[2026-08-25 08:46:19,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:46:19,284.284 INFO    ] Initializing speech engine...
[2026-08-25 08:46:19,295.295 INFO    ] 2026-08-25 08:46:19
[2026-08-25 08:46:19,542.542 INFO    ] 2026-08-25 08:46:19
[2026-08-25 08:46:19,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:46:19,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:46:19,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:46:19,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:46:20,044.044 INFO    ] time= 25/08/2026 08:46:19
[2026-08-25 08:46:20,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:46:20,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:46:20,257.257 INFO    ] No existing commands found in stream
[2026-08-25 08:46:25,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:46:25,289.289 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 08:46:27,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:46:27,917.917 INFO    ] Checking for system updates...
[2026-08-25 08:46:27,953.953 INFO    ] 200
[2026-08-25 08:46:27,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:28,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:28,012.012 INFO    ] No update needed
[2026-08-25 08:46:28,015.015 INFO    ] Checking for camera pi updates...
[2026-08-25 08:46:28,049.049 INFO    ] 200
[2026-08-25 08:46:28,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:28,093.093 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:46:28,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:28,146.146 INFO    ] No camera update needed
[2026-08-25 08:46:28,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:46:28,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:46:28,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:46:28,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:46:30,206.206 INFO    ] ================================================
[2026-08-25 08:46:30,221.221 INFO    ] Launching Daemon at Tue Aug 25 08:46:30 IST 2026
[2026-08-25 08:46:30,232.232 INFO    ] ================================================
[2026-08-25 08:46:30,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:46:30
[2026-08-25 08:46:31,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:46:31,823.823 INFO    ] Initializing speech engine...
[2026-08-25 08:46:31,830.830 INFO    ] 2026-08-25 08:46:31
[2026-08-25 08:46:32,121.121 INFO    ] 2026-08-25 08:46:32
[2026-08-25 08:46:32,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:46:32,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:46:32,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:46:32,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:46:32,540.540 INFO    ] time= 25/08/2026 08:46:32
[2026-08-25 08:46:32,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:46:32,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:46:32,751.751 INFO    ] No existing commands found in stream
[2026-08-25 08:46:37,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:46:37,778.778 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 08:46:38,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:46:38,594.594 INFO    ] Checking for system updates...
[2026-08-25 08:46:38,631.631 INFO    ] 200
[2026-08-25 08:46:38,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:38,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:46:38,689.689 INFO    ] No update needed
[2026-08-25 08:46:38,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 08:46:38,729.729 INFO    ] 200
[2026-08-25 08:46:38,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:38,776.776 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:46:38,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:46:38,922.922 INFO    ] No camera update needed
[2026-08-25 08:46:38,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:46:38,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:46:38,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:46:38,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:46:40,980.980 INFO    ] ================================================
[2026-08-25 08:46:41,997.997 INFO    ] Launching Daemon at Tue Aug 25 08:46:40 IST 2026
[2026-08-25 08:46:41,008.008 INFO    ] ================================================
[2026-08-25 08:46:41,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:46:41
[2026-08-25 08:46:42,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:46:42,577.577 INFO    ] Initializing speech engine...
[2026-08-25 08:46:42,589.589 INFO    ] 2026-08-25 08:46:42
[2026-08-25 08:46:42,896.896 INFO    ] 2026-08-25 08:46:42
[2026-08-25 08:46:42,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:46:43,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:46:43,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:46:43,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:46:43,403.403 INFO    ] time= 25/08/2026 08:46:43
[2026-08-25 08:46:43,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:46:43,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:46:43,559.559 INFO    ] No existing commands found in stream
[2026-08-25 08:46:48,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:46:48,586.586 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 08:46:51,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:46:51,909.909 INFO    ] Checking for system updates...
[2026-08-25 08:46:51,948.948 INFO    ] 200
[2026-08-25 08:46:51,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:52,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:52,007.007 INFO    ] No update needed
[2026-08-25 08:46:52,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 08:46:52,044.044 INFO    ] 200
[2026-08-25 08:46:52,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:46:52,088.088 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:46:52,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:46:52,157.157 INFO    ] No camera update needed
[2026-08-25 08:46:52,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:46:52,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:46:52,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:46:52,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:46:54,215.215 INFO    ] ================================================
[2026-08-25 08:46:54,230.230 INFO    ] Launching Daemon at Tue Aug 25 08:46:54 IST 2026
[2026-08-25 08:46:54,241.241 INFO    ] ================================================
[2026-08-25 08:46:54,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:46:54
[2026-08-25 08:46:55,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:46:55,808.808 INFO    ] Initializing speech engine...
[2026-08-25 08:46:55,817.817 INFO    ] 2026-08-25 08:46:55
[2026-08-25 08:46:56,105.105 INFO    ] 2026-08-25 08:46:56
[2026-08-25 08:46:56,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:46:56,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:46:56,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:46:56,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:46:56,643.643 INFO    ] time= 25/08/2026 08:46:56
[2026-08-25 08:46:56,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:46:56,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:46:56,800.800 INFO    ] No existing commands found in stream
[2026-08-25 08:47:01,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:47:01,823.823 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 08:47:04,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:47:04,180.180 INFO    ] Checking for system updates...
[2026-08-25 08:47:04,216.216 INFO    ] 200
[2026-08-25 08:47:04,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:04,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:04,278.278 INFO    ] No update needed
[2026-08-25 08:47:04,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 08:47:04,313.313 INFO    ] 200
[2026-08-25 08:47:04,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:04,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:47:04,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:04,404.404 INFO    ] No camera update needed
[2026-08-25 08:47:04,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:47:04,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:47:04,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:47:04,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:47:06,458.458 INFO    ] ================================================
[2026-08-25 08:47:06,473.473 INFO    ] Launching Daemon at Tue Aug 25 08:47:06 IST 2026
[2026-08-25 08:47:06,484.484 INFO    ] ================================================
[2026-08-25 08:47:07,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:47:07
[2026-08-25 08:47:07,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:47:07,956.956 INFO    ] Initializing speech engine...
[2026-08-25 08:47:07,965.965 INFO    ] 2026-08-25 08:47:07
[2026-08-25 08:47:08,228.228 INFO    ] 2026-08-25 08:47:08
[2026-08-25 08:47:08,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:47:08,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:47:08,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:47:08,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:47:08,772.772 INFO    ] time= 25/08/2026 08:47:08
[2026-08-25 08:47:08,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:47:08,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:47:08,926.926 INFO    ] No existing commands found in stream
[2026-08-25 08:47:13,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:47:13,941.941 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 08:47:17,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:47:17,462.462 INFO    ] Checking for system updates...
[2026-08-25 08:47:17,500.500 INFO    ] 200
[2026-08-25 08:47:17,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:17,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:17,564.564 INFO    ] No update needed
[2026-08-25 08:47:17,567.567 INFO    ] Checking for camera pi updates...
[2026-08-25 08:47:17,601.601 INFO    ] 200
[2026-08-25 08:47:17,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:17,644.644 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:47:17,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:17,704.704 INFO    ] No camera update needed
[2026-08-25 08:47:17,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:47:17,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:47:17,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:47:17,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:47:19,761.761 INFO    ] ================================================
[2026-08-25 08:47:19,776.776 INFO    ] Launching Daemon at Tue Aug 25 08:47:19 IST 2026
[2026-08-25 08:47:19,787.787 INFO    ] ================================================
[2026-08-25 08:47:20,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:47:20
[2026-08-25 08:47:20,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:47:21,201.201 INFO    ] Initializing speech engine...
[2026-08-25 08:47:21,225.225 INFO    ] 2026-08-25 08:47:21
[2026-08-25 08:47:21,495.495 INFO    ] 2026-08-25 08:47:21
[2026-08-25 08:47:21,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:47:21,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:47:21,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:47:21,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:47:21,902.902 INFO    ] time= 25/08/2026 08:47:21
[2026-08-25 08:47:21,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:47:21,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:47:21,992.992 INFO    ] No existing commands found in stream
[2026-08-25 08:47:27,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:47:27,014.014 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 08:47:29,544.544 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:47:29,547.547 INFO    ] Checking for system updates...
[2026-08-25 08:47:29,583.583 INFO    ] 200
[2026-08-25 08:47:29,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:29,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:29,641.641 INFO    ] No update needed
[2026-08-25 08:47:29,644.644 INFO    ] Checking for camera pi updates...
[2026-08-25 08:47:29,678.678 INFO    ] 200
[2026-08-25 08:47:29,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:29,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:47:29,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:29,782.782 INFO    ] No camera update needed
[2026-08-25 08:47:29,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:47:29,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:47:29,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:47:29,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:47:31,839.839 INFO    ] ================================================
[2026-08-25 08:47:31,853.853 INFO    ] Launching Daemon at Tue Aug 25 08:47:31 IST 2026
[2026-08-25 08:47:31,864.864 INFO    ] ================================================
[2026-08-25 08:47:32,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:47:32
[2026-08-25 08:47:33,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:47:33,373.373 INFO    ] Initializing speech engine...
[2026-08-25 08:47:33,380.380 INFO    ] 2026-08-25 08:47:33
[2026-08-25 08:47:33,653.653 INFO    ] 2026-08-25 08:47:33
[2026-08-25 08:47:33,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:47:33,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:47:33,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:47:34,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:47:34,099.099 INFO    ] time= 25/08/2026 08:47:34
[2026-08-25 08:47:34,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:47:34,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:47:34,282.282 INFO    ] No existing commands found in stream
[2026-08-25 08:47:39,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:47:39,297.297 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 08:47:43,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:47:43,543.543 INFO    ] Checking for system updates...
[2026-08-25 08:47:43,582.582 INFO    ] 200
[2026-08-25 08:47:43,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:43,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:43,639.639 INFO    ] No update needed
[2026-08-25 08:47:43,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 08:47:43,678.678 INFO    ] 200
[2026-08-25 08:47:43,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:43,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:47:43,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:47:43,769.769 INFO    ] No camera update needed
[2026-08-25 08:47:43,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:47:43,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:47:43,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:47:43,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:47:45,825.825 INFO    ] ================================================
[2026-08-25 08:47:45,840.840 INFO    ] Launching Daemon at Tue Aug 25 08:47:45 IST 2026
[2026-08-25 08:47:45,851.851 INFO    ] ================================================
[2026-08-25 08:47:46,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:47:46
[2026-08-25 08:47:47,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:47:47,438.438 INFO    ] Initializing speech engine...
[2026-08-25 08:47:47,447.447 INFO    ] 2026-08-25 08:47:47
[2026-08-25 08:47:47,729.729 INFO    ] 2026-08-25 08:47:47
[2026-08-25 08:47:47,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:47:48,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:47:48,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:47:48,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:47:48,282.282 INFO    ] time= 25/08/2026 08:47:48
[2026-08-25 08:47:48,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:47:48,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:47:48,457.457 INFO    ] No existing commands found in stream
[2026-08-25 08:47:53,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:47:53,488.488 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 08:47:54,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:47:54,454.454 INFO    ] Checking for system updates...
[2026-08-25 08:47:54,490.490 INFO    ] 200
[2026-08-25 08:47:54,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:54,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:47:54,555.555 INFO    ] No update needed
[2026-08-25 08:47:54,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 08:47:54,591.591 INFO    ] 200
[2026-08-25 08:47:54,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:47:54,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:47:54,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:47:54,688.688 INFO    ] No camera update needed
[2026-08-25 08:47:54,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:47:54,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:47:54,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:47:54,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:47:56,743.743 INFO    ] ================================================
[2026-08-25 08:47:56,758.758 INFO    ] Launching Daemon at Tue Aug 25 08:47:56 IST 2026
[2026-08-25 08:47:56,769.769 INFO    ] ================================================
[2026-08-25 08:47:57,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:47:57
[2026-08-25 08:47:57,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:47:58,223.223 INFO    ] Initializing speech engine...
[2026-08-25 08:47:58,232.232 INFO    ] 2026-08-25 08:47:58
[2026-08-25 08:47:58,493.493 INFO    ] 2026-08-25 08:47:58
[2026-08-25 08:47:58,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:47:58,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:47:58,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:47:58,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:47:58,952.952 INFO    ] time= 25/08/2026 08:47:58
[2026-08-25 08:47:59,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:47:59,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:47:59,156.156 INFO    ] No existing commands found in stream
[2026-08-25 08:48:04,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:48:04,189.189 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 08:48:05,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:48:05,423.423 INFO    ] Checking for system updates...
[2026-08-25 08:48:05,459.459 INFO    ] 200
[2026-08-25 08:48:05,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:05,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:05,516.516 INFO    ] No update needed
[2026-08-25 08:48:05,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 08:48:05,552.552 INFO    ] 200
[2026-08-25 08:48:05,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:05,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:48:05,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:05,648.648 INFO    ] No camera update needed
[2026-08-25 08:48:05,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:48:05,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:48:05,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:48:05,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:48:07,706.706 INFO    ] ================================================
[2026-08-25 08:48:07,721.721 INFO    ] Launching Daemon at Tue Aug 25 08:48:07 IST 2026
[2026-08-25 08:48:07,732.732 INFO    ] ================================================
[2026-08-25 08:48:08,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:48:08
[2026-08-25 08:48:09,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:48:09,300.300 INFO    ] Initializing speech engine...
[2026-08-25 08:48:09,308.308 INFO    ] 2026-08-25 08:48:09
[2026-08-25 08:48:09,576.576 INFO    ] 2026-08-25 08:48:09
[2026-08-25 08:48:09,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:48:09,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:48:09,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:48:10,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:48:10,071.071 INFO    ] time= 25/08/2026 08:48:10
[2026-08-25 08:48:10,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:48:10,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:48:10,261.261 INFO    ] No existing commands found in stream
[2026-08-25 08:48:15,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:48:15,289.289 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 08:48:17,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:48:17,748.748 INFO    ] Checking for system updates...
[2026-08-25 08:48:17,783.783 INFO    ] 200
[2026-08-25 08:48:17,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:17,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:17,840.840 INFO    ] No update needed
[2026-08-25 08:48:17,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 08:48:17,876.876 INFO    ] 200
[2026-08-25 08:48:17,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:17,918.918 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:48:17,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:17,965.965 INFO    ] No camera update needed
[2026-08-25 08:48:17,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:48:17,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:48:17,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:48:17,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:48:20,019.019 INFO    ] ================================================
[2026-08-25 08:48:20,038.038 INFO    ] Launching Daemon at Tue Aug 25 08:48:20 IST 2026
[2026-08-25 08:48:20,049.049 INFO    ] ================================================
[2026-08-25 08:48:20,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:48:20
[2026-08-25 08:48:21,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:48:21,615.615 INFO    ] Initializing speech engine...
[2026-08-25 08:48:21,624.624 INFO    ] 2026-08-25 08:48:21
[2026-08-25 08:48:21,900.900 INFO    ] 2026-08-25 08:48:21
[2026-08-25 08:48:21,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:48:22,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:48:22,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:48:22,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:48:22,370.370 INFO    ] time= 25/08/2026 08:48:22
[2026-08-25 08:48:22,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:48:22,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:48:22,594.594 INFO    ] No existing commands found in stream
[2026-08-25 08:48:27,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:48:27,628.628 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 08:48:28,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:48:28,384.384 INFO    ] Checking for system updates...
[2026-08-25 08:48:28,420.420 INFO    ] 200
[2026-08-25 08:48:28,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:28,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:28,488.488 INFO    ] No update needed
[2026-08-25 08:48:28,490.490 INFO    ] Checking for camera pi updates...
[2026-08-25 08:48:28,527.527 INFO    ] 200
[2026-08-25 08:48:28,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:28,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:48:28,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:28,617.617 INFO    ] No camera update needed
[2026-08-25 08:48:28,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:48:28,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:48:28,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:48:28,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:48:30,671.671 INFO    ] ================================================
[2026-08-25 08:48:30,686.686 INFO    ] Launching Daemon at Tue Aug 25 08:48:30 IST 2026
[2026-08-25 08:48:30,697.697 INFO    ] ================================================
[2026-08-25 08:48:31,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:48:31
[2026-08-25 08:48:31,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:48:32,168.168 INFO    ] Initializing speech engine...
[2026-08-25 08:48:32,177.177 INFO    ] 2026-08-25 08:48:32
[2026-08-25 08:48:32,449.449 INFO    ] 2026-08-25 08:48:32
[2026-08-25 08:48:32,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:48:32,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:48:32,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:48:32,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:48:32,937.937 INFO    ] time= 25/08/2026 08:48:32
[2026-08-25 08:48:32,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:48:33,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:48:33,133.133 INFO    ] No existing commands found in stream
[2026-08-25 08:48:38,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:48:38,161.161 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 08:48:42,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:48:42,317.317 INFO    ] Checking for system updates...
[2026-08-25 08:48:42,352.352 INFO    ] 200
[2026-08-25 08:48:42,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:42,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:42,409.409 INFO    ] No update needed
[2026-08-25 08:48:42,411.411 INFO    ] Checking for camera pi updates...
[2026-08-25 08:48:42,449.449 INFO    ] 200
[2026-08-25 08:48:42,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:42,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:48:42,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:42,648.648 INFO    ] No camera update needed
[2026-08-25 08:48:42,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:48:42,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:48:42,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:48:42,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:48:44,702.702 INFO    ] ================================================
[2026-08-25 08:48:44,717.717 INFO    ] Launching Daemon at Tue Aug 25 08:48:44 IST 2026
[2026-08-25 08:48:44,728.728 INFO    ] ================================================
[2026-08-25 08:48:45,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:48:45
[2026-08-25 08:48:45,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:48:46,153.153 INFO    ] Initializing speech engine...
[2026-08-25 08:48:46,162.162 INFO    ] 2026-08-25 08:48:46
[2026-08-25 08:48:46,422.422 INFO    ] 2026-08-25 08:48:46
[2026-08-25 08:48:46,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:48:46,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:48:46,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:48:46,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:48:46,889.889 INFO    ] time= 25/08/2026 08:48:46
[2026-08-25 08:48:46,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:48:46,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:48:47,108.108 INFO    ] No existing commands found in stream
[2026-08-25 08:48:52,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:48:52,132.132 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 08:48:54,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:48:54,744.744 INFO    ] Checking for system updates...
[2026-08-25 08:48:54,784.784 INFO    ] 200
[2026-08-25 08:48:54,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:54,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:54,847.847 INFO    ] No update needed
[2026-08-25 08:48:54,850.850 INFO    ] Checking for camera pi updates...
[2026-08-25 08:48:54,884.884 INFO    ] 200
[2026-08-25 08:48:54,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:48:54,929.929 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:48:54,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:48:54,983.983 INFO    ] No camera update needed
[2026-08-25 08:48:54,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:48:54,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:48:54,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:48:55,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:48:57,040.040 INFO    ] ================================================
[2026-08-25 08:48:57,056.056 INFO    ] Launching Daemon at Tue Aug 25 08:48:57 IST 2026
[2026-08-25 08:48:57,066.066 INFO    ] ================================================
[2026-08-25 08:48:57,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:48:57
[2026-08-25 08:48:58,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:48:58,488.488 INFO    ] Initializing speech engine...
[2026-08-25 08:48:58,497.497 INFO    ] 2026-08-25 08:48:58
[2026-08-25 08:48:58,749.749 INFO    ] 2026-08-25 08:48:58
[2026-08-25 08:48:58,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:48:58,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:48:58,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:48:59,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:48:59,138.138 INFO    ] time= 25/08/2026 08:48:59
[2026-08-25 08:48:59,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:48:59,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:48:59,325.325 INFO    ] No existing commands found in stream
[2026-08-25 08:49:04,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:49:04,353.353 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 08:49:05,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:49:05,470.470 INFO    ] Checking for system updates...
[2026-08-25 08:49:05,506.506 INFO    ] 200
[2026-08-25 08:49:05,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:05,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:05,568.568 INFO    ] No update needed
[2026-08-25 08:49:05,570.570 INFO    ] Checking for camera pi updates...
[2026-08-25 08:49:05,603.603 INFO    ] 200
[2026-08-25 08:49:05,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:05,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:49:05,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:05,691.691 INFO    ] No camera update needed
[2026-08-25 08:49:05,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:49:05,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:49:05,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:49:05,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:49:07,747.747 INFO    ] ================================================
[2026-08-25 08:49:07,763.763 INFO    ] Launching Daemon at Tue Aug 25 08:49:07 IST 2026
[2026-08-25 08:49:07,774.774 INFO    ] ================================================
[2026-08-25 08:49:08,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:49:08
[2026-08-25 08:49:09,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:49:09,409.409 INFO    ] Initializing speech engine...
[2026-08-25 08:49:09,422.422 INFO    ] 2026-08-25 08:49:09
[2026-08-25 08:49:09,729.729 INFO    ] 2026-08-25 08:49:09
[2026-08-25 08:49:09,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:49:10,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:49:10,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:49:10,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:49:10,250.250 INFO    ] time= 25/08/2026 08:49:10
[2026-08-25 08:49:10,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:49:10,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:49:10,390.390 INFO    ] No existing commands found in stream
[2026-08-25 08:49:15,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:49:15,422.422 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 08:49:18,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:49:18,971.971 INFO    ] Checking for system updates...
[2026-08-25 08:49:19,012.012 INFO    ] 200
[2026-08-25 08:49:19,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:19,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:19,071.071 INFO    ] No update needed
[2026-08-25 08:49:19,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 08:49:19,108.108 INFO    ] 200
[2026-08-25 08:49:19,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:19,153.153 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:49:19,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:19,209.209 INFO    ] No camera update needed
[2026-08-25 08:49:19,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:49:19,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:49:19,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:49:19,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:49:21,267.267 INFO    ] ================================================
[2026-08-25 08:49:21,281.281 INFO    ] Launching Daemon at Tue Aug 25 08:49:21 IST 2026
[2026-08-25 08:49:21,292.292 INFO    ] ================================================
[2026-08-25 08:49:21,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:49:21
[2026-08-25 08:49:22,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:49:22,713.713 INFO    ] Initializing speech engine...
[2026-08-25 08:49:22,727.727 INFO    ] 2026-08-25 08:49:22
[2026-08-25 08:49:23,001.001 INFO    ] 2026-08-25 08:49:22
[2026-08-25 08:49:23,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:49:23,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:49:23,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:49:23,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:49:23,381.381 INFO    ] time= 25/08/2026 08:49:23
[2026-08-25 08:49:23,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:49:23,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:49:23,509.509 INFO    ] No existing commands found in stream
[2026-08-25 08:49:28,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:49:28,537.537 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 08:49:30,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:49:30,421.421 INFO    ] Checking for system updates...
[2026-08-25 08:49:30,458.458 INFO    ] 200
[2026-08-25 08:49:30,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:30,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:30,517.517 INFO    ] No update needed
[2026-08-25 08:49:30,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 08:49:30,554.554 INFO    ] 200
[2026-08-25 08:49:30,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:30,598.598 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:49:30,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:30,652.652 INFO    ] No camera update needed
[2026-08-25 08:49:30,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:49:30,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:49:30,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:49:30,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:49:32,712.712 INFO    ] ================================================
[2026-08-25 08:49:32,729.729 INFO    ] Launching Daemon at Tue Aug 25 08:49:32 IST 2026
[2026-08-25 08:49:32,741.741 INFO    ] ================================================
[2026-08-25 08:49:33,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:49:33
[2026-08-25 08:49:33,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:49:34,218.218 INFO    ] Initializing speech engine...
[2026-08-25 08:49:34,227.227 INFO    ] 2026-08-25 08:49:34
[2026-08-25 08:49:34,484.484 INFO    ] 2026-08-25 08:49:34
[2026-08-25 08:49:34,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:49:34,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:49:34,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:49:34,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:49:34,958.958 INFO    ] time= 25/08/2026 08:49:34
[2026-08-25 08:49:35,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:49:35,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:49:35,168.168 INFO    ] No existing commands found in stream
[2026-08-25 08:49:40,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:49:40,196.196 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 08:49:42,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:49:42,842.842 INFO    ] Checking for system updates...
[2026-08-25 08:49:42,883.883 INFO    ] 200
[2026-08-25 08:49:42,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:42,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:49:42,940.940 INFO    ] No update needed
[2026-08-25 08:49:42,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 08:49:42,976.976 INFO    ] 200
[2026-08-25 08:49:42,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:43,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:49:43,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:49:43,076.076 INFO    ] No camera update needed
[2026-08-25 08:49:43,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:49:43,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:49:43,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:49:43,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:49:45,132.132 INFO    ] ================================================
[2026-08-25 08:49:45,147.147 INFO    ] Launching Daemon at Tue Aug 25 08:49:45 IST 2026
[2026-08-25 08:49:45,157.157 INFO    ] ================================================
[2026-08-25 08:49:45,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:49:45
[2026-08-25 08:49:46,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:49:46,615.615 INFO    ] Initializing speech engine...
[2026-08-25 08:49:46,626.626 INFO    ] 2026-08-25 08:49:46
[2026-08-25 08:49:46,881.881 INFO    ] 2026-08-25 08:49:46
[2026-08-25 08:49:46,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:49:47,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:49:47,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:49:47,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:49:47,354.354 INFO    ] time= 25/08/2026 08:49:47
[2026-08-25 08:49:47,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:49:47,467.467 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:49:47,609.609 INFO    ] No existing commands found in stream
[2026-08-25 08:49:52,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:49:52,633.633 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 08:49:55,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:49:55,010.010 INFO    ] Checking for system updates...
[2026-08-25 08:49:55,054.054 INFO    ] 200
[2026-08-25 08:49:55,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:55,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:55,111.111 INFO    ] No update needed
[2026-08-25 08:49:55,114.114 INFO    ] Checking for camera pi updates...
[2026-08-25 08:49:55,147.147 INFO    ] 200
[2026-08-25 08:49:55,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:49:55,190.190 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:49:55,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:49:55,241.241 INFO    ] No camera update needed
[2026-08-25 08:49:55,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:49:55,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:49:55,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:49:55,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:49:57,297.297 INFO    ] ================================================
[2026-08-25 08:49:57,312.312 INFO    ] Launching Daemon at Tue Aug 25 08:49:57 IST 2026
[2026-08-25 08:49:57,323.323 INFO    ] ================================================
[2026-08-25 08:49:57,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:49:57
[2026-08-25 08:49:58,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:49:58,959.959 INFO    ] Initializing speech engine...
[2026-08-25 08:49:58,971.971 INFO    ] 2026-08-25 08:49:58
[2026-08-25 08:49:59,275.275 INFO    ] 2026-08-25 08:49:59
[2026-08-25 08:49:59,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:49:59,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:49:59,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:49:59,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:49:59,775.775 INFO    ] time= 25/08/2026 08:49:59
[2026-08-25 08:49:59,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:49:59,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:49:59,873.873 INFO    ] No existing commands found in stream
[2026-08-25 08:50:04,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:50:04,903.903 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 08:50:08,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:50:08,657.657 INFO    ] Checking for system updates...
[2026-08-25 08:50:08,701.701 INFO    ] 200
[2026-08-25 08:50:08,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:08,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:50:08,768.768 INFO    ] No update needed
[2026-08-25 08:50:08,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 08:50:08,804.804 INFO    ] 200
[2026-08-25 08:50:08,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:08,851.851 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:50:08,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:50:08,909.909 INFO    ] No camera update needed
[2026-08-25 08:50:08,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:50:08,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:50:08,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:50:08,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:50:10,965.965 INFO    ] ================================================
[2026-08-25 08:50:10,980.980 INFO    ] Launching Daemon at Tue Aug 25 08:50:10 IST 2026
[2026-08-25 08:50:10,991.991 INFO    ] ================================================
[2026-08-25 08:50:11,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:50:11
[2026-08-25 08:50:12,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:50:12,443.443 INFO    ] Initializing speech engine...
[2026-08-25 08:50:12,467.467 INFO    ] 2026-08-25 08:50:12
[2026-08-25 08:50:12,739.739 INFO    ] 2026-08-25 08:50:12
[2026-08-25 08:50:12,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:50:12,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:50:12,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:50:13,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:50:13,120.120 INFO    ] time= 25/08/2026 08:50:13
[2026-08-25 08:50:13,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:50:13,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:50:13,244.244 INFO    ] No existing commands found in stream
[2026-08-25 08:50:18,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:50:18,259.259 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 08:50:22,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:50:22,361.361 INFO    ] Checking for system updates...
[2026-08-25 08:50:22,400.400 INFO    ] 200
[2026-08-25 08:50:22,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:22,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:50:22,457.457 INFO    ] No update needed
[2026-08-25 08:50:22,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 08:50:22,493.493 INFO    ] 200
[2026-08-25 08:50:22,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:22,536.536 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:50:22,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:50:22,594.594 INFO    ] No camera update needed
[2026-08-25 08:50:22,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:50:22,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:50:22,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:50:22,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:50:24,648.648 INFO    ] ================================================
[2026-08-25 08:50:24,663.663 INFO    ] Launching Daemon at Tue Aug 25 08:50:24 IST 2026
[2026-08-25 08:50:24,673.673 INFO    ] ================================================
[2026-08-25 08:50:25,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:50:25
[2026-08-25 08:50:25,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:50:26,113.113 INFO    ] Initializing speech engine...
[2026-08-25 08:50:26,121.121 INFO    ] 2026-08-25 08:50:26
[2026-08-25 08:50:26,422.422 INFO    ] 2026-08-25 08:50:26
[2026-08-25 08:50:26,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:50:26,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:50:26,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:50:26,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:50:26,806.806 INFO    ] time= 25/08/2026 08:50:26
[2026-08-25 08:50:26,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:50:26,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:50:26,931.931 INFO    ] No existing commands found in stream
[2026-08-25 08:50:31,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:50:31,947.947 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 08:50:36,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:50:36,041.041 INFO    ] Checking for system updates...
[2026-08-25 08:50:36,076.076 INFO    ] 200
[2026-08-25 08:50:36,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:36,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:50:36,135.135 INFO    ] No update needed
[2026-08-25 08:50:36,137.137 INFO    ] Checking for camera pi updates...
[2026-08-25 08:50:36,171.171 INFO    ] 200
[2026-08-25 08:50:36,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:36,218.218 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:50:36,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:50:36,269.269 INFO    ] No camera update needed
[2026-08-25 08:50:36,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:50:36,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:50:36,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:50:36,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:50:38,324.324 INFO    ] ================================================
[2026-08-25 08:50:38,338.338 INFO    ] Launching Daemon at Tue Aug 25 08:50:38 IST 2026
[2026-08-25 08:50:38,349.349 INFO    ] ================================================
[2026-08-25 08:50:38,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:50:38
[2026-08-25 08:50:39,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:50:39,794.794 INFO    ] Initializing speech engine...
[2026-08-25 08:50:39,801.801 INFO    ] 2026-08-25 08:50:39
[2026-08-25 08:50:40,097.097 INFO    ] 2026-08-25 08:50:40
[2026-08-25 08:50:40,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:50:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:50:40,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:50:40,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:50:40,477.477 INFO    ] time= 25/08/2026 08:50:40
[2026-08-25 08:50:40,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:50:40,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:50:40,602.602 INFO    ] No existing commands found in stream
[2026-08-25 08:50:45,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:50:45,618.618 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 08:50:46,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:50:46,281.281 INFO    ] Checking for system updates...
[2026-08-25 08:50:46,316.316 INFO    ] 200
[2026-08-25 08:50:46,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:46,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:50:46,379.379 INFO    ] No update needed
[2026-08-25 08:50:46,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 08:50:46,415.415 INFO    ] 200
[2026-08-25 08:50:46,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:46,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:50:46,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:50:46,603.603 INFO    ] No camera update needed
[2026-08-25 08:50:46,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:50:46,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:50:46,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:50:46,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:50:48,659.659 INFO    ] ================================================
[2026-08-25 08:50:48,674.674 INFO    ] Launching Daemon at Tue Aug 25 08:50:48 IST 2026
[2026-08-25 08:50:48,684.684 INFO    ] ================================================
[2026-08-25 08:50:49,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:50:49
[2026-08-25 08:50:49,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:50:50,124.124 INFO    ] Initializing speech engine...
[2026-08-25 08:50:50,133.133 INFO    ] 2026-08-25 08:50:50
[2026-08-25 08:50:50,385.385 INFO    ] 2026-08-25 08:50:50
[2026-08-25 08:50:50,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:50:50,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:50:50,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:50:50,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:50:50,761.761 INFO    ] time= 25/08/2026 08:50:50
[2026-08-25 08:50:50,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:50:50,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:50:50,959.959 INFO    ] No existing commands found in stream
[2026-08-25 08:50:55,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:50:55,981.981 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 08:50:58,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:50:58,544.544 INFO    ] Checking for system updates...
[2026-08-25 08:50:58,579.579 INFO    ] 200
[2026-08-25 08:50:58,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:58,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:50:58,643.643 INFO    ] No update needed
[2026-08-25 08:50:58,645.645 INFO    ] Checking for camera pi updates...
[2026-08-25 08:50:58,679.679 INFO    ] 200
[2026-08-25 08:50:58,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:50:58,722.722 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:50:58,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:50:58,773.773 INFO    ] No camera update needed
[2026-08-25 08:50:58,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:50:58,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:50:58,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:50:58,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:51:00,829.829 INFO    ] ================================================
[2026-08-25 08:51:00,844.844 INFO    ] Launching Daemon at Tue Aug 25 08:51:00 IST 2026
[2026-08-25 08:51:00,854.854 INFO    ] ================================================
[2026-08-25 08:51:01,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:51:01
[2026-08-25 08:51:02,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:51:02,494.494 INFO    ] Initializing speech engine...
[2026-08-25 08:51:02,505.505 INFO    ] 2026-08-25 08:51:02
[2026-08-25 08:51:02,811.811 INFO    ] 2026-08-25 08:51:02
[2026-08-25 08:51:02,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:51:03,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:51:03,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:51:03,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:51:03,300.300 INFO    ] time= 25/08/2026 08:51:03
[2026-08-25 08:51:03,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:51:03,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:51:03,467.467 INFO    ] No existing commands found in stream
[2026-08-25 08:51:08,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:51:08,482.482 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 08:51:10,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:51:10,923.923 INFO    ] Checking for system updates...
[2026-08-25 08:51:10,962.962 INFO    ] 200
[2026-08-25 08:51:10,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:11,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:51:11,018.018 INFO    ] No update needed
[2026-08-25 08:51:11,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 08:51:11,055.055 INFO    ] 200
[2026-08-25 08:51:11,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:11,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:51:11,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:51:11,152.152 INFO    ] No camera update needed
[2026-08-25 08:51:11,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:51:11,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:51:11,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:51:11,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:51:13,208.208 INFO    ] ================================================
[2026-08-25 08:51:13,223.223 INFO    ] Launching Daemon at Tue Aug 25 08:51:13 IST 2026
[2026-08-25 08:51:13,235.235 INFO    ] ================================================
[2026-08-25 08:51:13,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:51:13
[2026-08-25 08:51:14,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:51:14,658.658 INFO    ] Initializing speech engine...
[2026-08-25 08:51:14,676.676 INFO    ] 2026-08-25 08:51:14
[2026-08-25 08:51:14,934.934 INFO    ] 2026-08-25 08:51:14
[2026-08-25 08:51:14,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:51:15,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:51:15,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:51:15,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:51:15,308.308 INFO    ] time= 25/08/2026 08:51:15
[2026-08-25 08:51:15,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:51:15,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:51:15,483.483 INFO    ] No existing commands found in stream
[2026-08-25 08:51:20,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:51:20,516.516 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 08:51:21,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:51:21,361.361 INFO    ] Checking for system updates...
[2026-08-25 08:51:21,397.397 INFO    ] 200
[2026-08-25 08:51:21,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:21,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:51:21,454.454 INFO    ] No update needed
[2026-08-25 08:51:21,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 08:51:21,491.491 INFO    ] 200
[2026-08-25 08:51:21,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:21,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:51:21,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:51:21,589.589 INFO    ] No camera update needed
[2026-08-25 08:51:21,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:51:21,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:51:21,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:51:21,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:51:23,646.646 INFO    ] ================================================
[2026-08-25 08:51:23,662.662 INFO    ] Launching Daemon at Tue Aug 25 08:51:23 IST 2026
[2026-08-25 08:51:23,672.672 INFO    ] ================================================
[2026-08-25 08:51:24,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:51:24
[2026-08-25 08:51:24,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:51:25,091.091 INFO    ] Initializing speech engine...
[2026-08-25 08:51:25,098.098 INFO    ] 2026-08-25 08:51:25
[2026-08-25 08:51:25,343.343 INFO    ] 2026-08-25 08:51:25
[2026-08-25 08:51:25,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:51:25,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:51:25,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:51:25,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:51:25,819.819 INFO    ] time= 25/08/2026 08:51:25
[2026-08-25 08:51:25,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:51:25,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:51:26,052.052 INFO    ] No existing commands found in stream
[2026-08-25 08:51:31,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:51:31,068.068 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 08:51:34,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:51:34,288.288 INFO    ] Checking for system updates...
[2026-08-25 08:51:34,327.327 INFO    ] 200
[2026-08-25 08:51:34,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:34,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:51:34,383.383 INFO    ] No update needed
[2026-08-25 08:51:34,386.386 INFO    ] Checking for camera pi updates...
[2026-08-25 08:51:34,420.420 INFO    ] 200
[2026-08-25 08:51:34,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:34,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:51:34,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:51:34,517.517 INFO    ] No camera update needed
[2026-08-25 08:51:34,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:51:34,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:51:34,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:51:34,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:51:36,572.572 INFO    ] ================================================
[2026-08-25 08:51:36,588.588 INFO    ] Launching Daemon at Tue Aug 25 08:51:36 IST 2026
[2026-08-25 08:51:36,599.599 INFO    ] ================================================
[2026-08-25 08:51:37,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:51:37
[2026-08-25 08:51:37,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:51:38,221.221 INFO    ] Initializing speech engine...
[2026-08-25 08:51:38,235.235 INFO    ] 2026-08-25 08:51:38
[2026-08-25 08:51:38,512.512 INFO    ] 2026-08-25 08:51:38
[2026-08-25 08:51:38,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:51:38,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:51:38,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:51:38,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:51:38,988.988 INFO    ] time= 25/08/2026 08:51:38
[2026-08-25 08:51:39,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:51:39,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:51:39,202.202 INFO    ] No existing commands found in stream
[2026-08-25 08:51:44,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:51:44,218.218 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 08:51:47,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:51:47,419.419 INFO    ] Checking for system updates...
[2026-08-25 08:51:47,454.454 INFO    ] 200
[2026-08-25 08:51:47,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:47,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:51:47,528.528 INFO    ] No update needed
[2026-08-25 08:51:47,531.531 INFO    ] Checking for camera pi updates...
[2026-08-25 08:51:47,565.565 INFO    ] 200
[2026-08-25 08:51:47,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:47,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:51:47,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:51:47,658.658 INFO    ] No camera update needed
[2026-08-25 08:51:47,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:51:47,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:51:47,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:51:47,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:51:49,713.713 INFO    ] ================================================
[2026-08-25 08:51:49,732.732 INFO    ] Launching Daemon at Tue Aug 25 08:51:49 IST 2026
[2026-08-25 08:51:49,743.743 INFO    ] ================================================
[2026-08-25 08:51:50,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:51:50
[2026-08-25 08:51:50,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:51:51,138.138 INFO    ] Initializing speech engine...
[2026-08-25 08:51:51,144.144 INFO    ] 2026-08-25 08:51:51
[2026-08-25 08:51:51,441.441 INFO    ] 2026-08-25 08:51:51
[2026-08-25 08:51:51,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:51:51,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:51:51,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:51:51,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:51:51,838.838 INFO    ] time= 25/08/2026 08:51:51
[2026-08-25 08:51:51,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:51:51,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:51:51,945.945 INFO    ] No existing commands found in stream
[2026-08-25 08:51:56,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:51:56,960.960 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 08:51:57,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:51:57,679.679 INFO    ] Checking for system updates...
[2026-08-25 08:51:57,714.714 INFO    ] 200
[2026-08-25 08:51:57,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:57,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:51:57,772.772 INFO    ] No update needed
[2026-08-25 08:51:57,774.774 INFO    ] Checking for camera pi updates...
[2026-08-25 08:51:57,810.810 INFO    ] 200
[2026-08-25 08:51:57,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:51:57,857.857 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:51:57,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:51:57,911.911 INFO    ] No camera update needed
[2026-08-25 08:51:57,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:51:57,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:51:57,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:51:57,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:51:59,966.966 INFO    ] ================================================
[2026-08-25 08:51:59,982.982 INFO    ] Launching Daemon at Tue Aug 25 08:51:59 IST 2026
[2026-08-25 08:51:59,993.993 INFO    ] ================================================
[2026-08-25 08:52:00,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:52:00
[2026-08-25 08:52:01,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:52:01,614.614 INFO    ] Initializing speech engine...
[2026-08-25 08:52:01,634.634 INFO    ] 2026-08-25 08:52:01
[2026-08-25 08:52:01,971.971 INFO    ] 2026-08-25 08:52:01
[2026-08-25 08:52:02,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:52:02,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:52:02,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:52:02,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:52:02,516.516 INFO    ] time= 25/08/2026 08:52:02
[2026-08-25 08:52:02,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:52:02,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:52:02,697.697 INFO    ] No existing commands found in stream
[2026-08-25 08:52:07,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:52:07,715.715 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 08:52:10,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:52:10,026.026 INFO    ] Checking for system updates...
[2026-08-25 08:52:10,074.074 INFO    ] 200
[2026-08-25 08:52:10,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:10,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:52:10,153.153 INFO    ] No update needed
[2026-08-25 08:52:10,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 08:52:10,192.192 INFO    ] 200
[2026-08-25 08:52:10,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:10,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:52:10,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:52:10,289.289 INFO    ] No camera update needed
[2026-08-25 08:52:10,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:52:10,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:52:10,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:52:10,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:52:12,343.343 INFO    ] ================================================
[2026-08-25 08:52:12,359.359 INFO    ] Launching Daemon at Tue Aug 25 08:52:12 IST 2026
[2026-08-25 08:52:12,371.371 INFO    ] ================================================
[2026-08-25 08:52:12,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:52:12
[2026-08-25 08:52:13,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:52:13,838.838 INFO    ] Initializing speech engine...
[2026-08-25 08:52:13,850.850 INFO    ] 2026-08-25 08:52:13
[2026-08-25 08:52:14,119.119 INFO    ] 2026-08-25 08:52:14
[2026-08-25 08:52:14,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:52:14,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:52:14,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:52:14,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:52:14,493.493 INFO    ] time= 25/08/2026 08:52:14
[2026-08-25 08:52:14,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:52:14,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:52:14,618.618 INFO    ] No existing commands found in stream
[2026-08-25 08:52:19,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:52:19,633.633 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 08:52:22,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:52:22,224.224 INFO    ] Checking for system updates...
[2026-08-25 08:52:22,259.259 INFO    ] 200
[2026-08-25 08:52:22,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:22,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:52:22,316.316 INFO    ] No update needed
[2026-08-25 08:52:22,319.319 INFO    ] Checking for camera pi updates...
[2026-08-25 08:52:22,352.352 INFO    ] 200
[2026-08-25 08:52:22,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:22,395.395 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:52:22,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:52:22,446.446 INFO    ] No camera update needed
[2026-08-25 08:52:22,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:52:22,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:52:22,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:52:22,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:52:24,502.502 INFO    ] ================================================
[2026-08-25 08:52:24,517.517 INFO    ] Launching Daemon at Tue Aug 25 08:52:24 IST 2026
[2026-08-25 08:52:24,529.529 INFO    ] ================================================
[2026-08-25 08:52:25,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:52:25
[2026-08-25 08:52:25,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:52:26,123.123 INFO    ] Initializing speech engine...
[2026-08-25 08:52:26,134.134 INFO    ] 2026-08-25 08:52:26
[2026-08-25 08:52:26,419.419 INFO    ] 2026-08-25 08:52:26
[2026-08-25 08:52:26,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:52:26,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:52:26,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:52:26,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:52:26,954.954 INFO    ] time= 25/08/2026 08:52:26
[2026-08-25 08:52:26,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:52:26,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:52:27,127.127 INFO    ] No existing commands found in stream
[2026-08-25 08:52:32,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:52:32,164.164 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 08:52:36,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:52:36,239.239 INFO    ] Checking for system updates...
[2026-08-25 08:52:36,277.277 INFO    ] 200
[2026-08-25 08:52:36,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:36,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:52:36,346.346 INFO    ] No update needed
[2026-08-25 08:52:36,349.349 INFO    ] Checking for camera pi updates...
[2026-08-25 08:52:36,386.386 INFO    ] 200
[2026-08-25 08:52:36,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:36,441.441 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:52:36,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:52:36,496.496 INFO    ] No camera update needed
[2026-08-25 08:52:36,498.498 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:52:36,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:52:36,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:52:36,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:52:38,554.554 INFO    ] ================================================
[2026-08-25 08:52:38,570.570 INFO    ] Launching Daemon at Tue Aug 25 08:52:38 IST 2026
[2026-08-25 08:52:38,581.581 INFO    ] ================================================
[2026-08-25 08:52:39,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:52:39
[2026-08-25 08:52:39,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:52:40,032.032 INFO    ] Initializing speech engine...
[2026-08-25 08:52:40,041.041 INFO    ] 2026-08-25 08:52:40
[2026-08-25 08:52:40,290.290 INFO    ] 2026-08-25 08:52:40
[2026-08-25 08:52:40,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:52:40,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:52:40,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:52:40,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:52:40,778.778 INFO    ] time= 25/08/2026 08:52:40
[2026-08-25 08:52:40,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:52:40,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:52:40,976.976 INFO    ] No existing commands found in stream
[2026-08-25 08:52:46,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:52:46,008.008 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 08:52:47,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:52:47,023.023 INFO    ] Checking for system updates...
[2026-08-25 08:52:47,064.064 INFO    ] 200
[2026-08-25 08:52:47,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:47,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:52:47,128.128 INFO    ] No update needed
[2026-08-25 08:52:47,131.131 INFO    ] Checking for camera pi updates...
[2026-08-25 08:52:47,169.169 INFO    ] 200
[2026-08-25 08:52:47,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:52:47,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:52:47,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:52:47,264.264 INFO    ] No camera update needed
[2026-08-25 08:52:47,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:52:47,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:52:47,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:52:47,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:52:49,321.321 INFO    ] ================================================
[2026-08-25 08:52:49,338.338 INFO    ] Launching Daemon at Tue Aug 25 08:52:49 IST 2026
[2026-08-25 08:52:49,349.349 INFO    ] ================================================
[2026-08-25 08:52:49,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:52:49
[2026-08-25 08:52:50,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:52:50,817.817 INFO    ] Initializing speech engine...
[2026-08-25 08:52:50,826.826 INFO    ] 2026-08-25 08:52:50
[2026-08-25 08:52:51,091.091 INFO    ] 2026-08-25 08:52:51
[2026-08-25 08:52:51,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:52:51,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:52:51,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:52:51,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:52:51,548.548 INFO    ] time= 25/08/2026 08:52:51
[2026-08-25 08:52:51,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:52:51,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:52:51,784.784 INFO    ] No existing commands found in stream
[2026-08-25 08:52:56,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:52:56,814.814 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 08:53:01,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:53:01,203.203 INFO    ] Checking for system updates...
[2026-08-25 08:53:01,239.239 INFO    ] 200
[2026-08-25 08:53:01,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:01,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:01,297.297 INFO    ] No update needed
[2026-08-25 08:53:01,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 08:53:01,332.332 INFO    ] 200
[2026-08-25 08:53:01,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:01,376.376 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:53:01,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:01,534.534 INFO    ] No camera update needed
[2026-08-25 08:53:01,546.546 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:53:01,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:53:01,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:53:01,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:53:03,624.624 INFO    ] ================================================
[2026-08-25 08:53:03,640.640 INFO    ] Launching Daemon at Tue Aug 25 08:53:03 IST 2026
[2026-08-25 08:53:03,651.651 INFO    ] ================================================
[2026-08-25 08:53:04,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:53:04
[2026-08-25 08:53:04,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:53:05,275.275 INFO    ] Initializing speech engine...
[2026-08-25 08:53:05,288.288 INFO    ] 2026-08-25 08:53:05
[2026-08-25 08:53:05,595.595 INFO    ] 2026-08-25 08:53:05
[2026-08-25 08:53:05,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:53:05,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:53:05,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:53:06,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:53:06,104.104 INFO    ] time= 25/08/2026 08:53:06
[2026-08-25 08:53:06,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:53:06,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:53:06,290.290 INFO    ] No existing commands found in stream
[2026-08-25 08:53:11,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:53:11,334.334 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 08:53:15,290.290 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:53:15,292.292 INFO    ] Checking for system updates...
[2026-08-25 08:53:15,329.329 INFO    ] 200
[2026-08-25 08:53:15,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:15,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:53:15,386.386 INFO    ] No update needed
[2026-08-25 08:53:15,388.388 INFO    ] Checking for camera pi updates...
[2026-08-25 08:53:15,427.427 INFO    ] 200
[2026-08-25 08:53:15,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:15,470.470 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:53:15,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:53:15,522.522 INFO    ] No camera update needed
[2026-08-25 08:53:15,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:53:15,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:53:15,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:53:15,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:53:17,580.580 INFO    ] ================================================
[2026-08-25 08:53:17,596.596 INFO    ] Launching Daemon at Tue Aug 25 08:53:17 IST 2026
[2026-08-25 08:53:17,608.608 INFO    ] ================================================
[2026-08-25 08:53:18,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:53:18
[2026-08-25 08:53:18,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:53:19,228.228 INFO    ] Initializing speech engine...
[2026-08-25 08:53:19,240.240 INFO    ] 2026-08-25 08:53:19
[2026-08-25 08:53:19,550.550 INFO    ] 2026-08-25 08:53:19
[2026-08-25 08:53:19,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:53:19,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:53:19,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:53:20,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:53:20,052.052 INFO    ] time= 25/08/2026 08:53:20
[2026-08-25 08:53:20,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:53:20,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:53:20,206.206 INFO    ] No existing commands found in stream
[2026-08-25 08:53:25,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:53:25,230.230 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 08:53:28,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:53:28,427.427 INFO    ] Checking for system updates...
[2026-08-25 08:53:28,468.468 INFO    ] 200
[2026-08-25 08:53:28,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:28,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:28,539.539 INFO    ] No update needed
[2026-08-25 08:53:28,542.542 INFO    ] Checking for camera pi updates...
[2026-08-25 08:53:28,581.581 INFO    ] 200
[2026-08-25 08:53:28,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:28,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:53:28,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:28,680.680 INFO    ] No camera update needed
[2026-08-25 08:53:28,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:53:28,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:53:28,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:53:28,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:53:30,738.738 INFO    ] ================================================
[2026-08-25 08:53:30,753.753 INFO    ] Launching Daemon at Tue Aug 25 08:53:30 IST 2026
[2026-08-25 08:53:30,766.766 INFO    ] ================================================
[2026-08-25 08:53:31,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:53:31
[2026-08-25 08:53:31,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:53:32,244.244 INFO    ] Initializing speech engine...
[2026-08-25 08:53:32,251.251 INFO    ] 2026-08-25 08:53:32
[2026-08-25 08:53:32,562.562 INFO    ] 2026-08-25 08:53:32
[2026-08-25 08:53:32,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:53:32,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:53:32,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:53:32,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:53:32,948.948 INFO    ] time= 25/08/2026 08:53:32
[2026-08-25 08:53:32,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:53:32,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:53:33,080.080 INFO    ] No existing commands found in stream
[2026-08-25 08:53:38,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:53:38,095.095 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 08:53:38,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:53:38,659.659 INFO    ] Checking for system updates...
[2026-08-25 08:53:38,694.694 INFO    ] 200
[2026-08-25 08:53:38,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:38,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:38,751.751 INFO    ] No update needed
[2026-08-25 08:53:38,753.753 INFO    ] Checking for camera pi updates...
[2026-08-25 08:53:38,787.787 INFO    ] 200
[2026-08-25 08:53:38,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:38,829.829 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:53:38,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:38,877.877 INFO    ] No camera update needed
[2026-08-25 08:53:38,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:53:38,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:53:38,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:53:38,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:53:40,932.932 INFO    ] ================================================
[2026-08-25 08:53:40,947.947 INFO    ] Launching Daemon at Tue Aug 25 08:53:40 IST 2026
[2026-08-25 08:53:40,957.957 INFO    ] ================================================
[2026-08-25 08:53:41,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:53:41
[2026-08-25 08:53:42,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:53:42,596.596 INFO    ] Initializing speech engine...
[2026-08-25 08:53:42,608.608 INFO    ] 2026-08-25 08:53:42
[2026-08-25 08:53:42,894.894 INFO    ] 2026-08-25 08:53:42
[2026-08-25 08:53:43,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:53:43,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:53:43,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:53:43,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:53:43,425.425 INFO    ] time= 25/08/2026 08:53:43
[2026-08-25 08:53:43,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:53:43,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:53:43,581.581 INFO    ] No existing commands found in stream
[2026-08-25 08:53:48,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:53:48,619.619 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 08:53:52,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:53:52,182.182 INFO    ] Checking for system updates...
[2026-08-25 08:53:52,219.219 INFO    ] 200
[2026-08-25 08:53:52,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:52,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:52,279.279 INFO    ] No update needed
[2026-08-25 08:53:52,281.281 INFO    ] Checking for camera pi updates...
[2026-08-25 08:53:52,320.320 INFO    ] 200
[2026-08-25 08:53:52,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:53:52,369.369 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:53:52,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:53:52,430.430 INFO    ] No camera update needed
[2026-08-25 08:53:52,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:53:52,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:53:52,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:53:52,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:53:54,489.489 INFO    ] ================================================
[2026-08-25 08:53:54,505.505 INFO    ] Launching Daemon at Tue Aug 25 08:53:54 IST 2026
[2026-08-25 08:53:54,516.516 INFO    ] ================================================
[2026-08-25 08:53:55,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:53:55
[2026-08-25 08:53:55,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:53:55,974.974 INFO    ] Initializing speech engine...
[2026-08-25 08:53:55,983.983 INFO    ] 2026-08-25 08:53:55
[2026-08-25 08:53:56,228.228 INFO    ] 2026-08-25 08:53:56
[2026-08-25 08:53:56,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:53:56,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:53:56,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:53:56,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:53:56,593.593 INFO    ] time= 25/08/2026 08:53:56
[2026-08-25 08:53:56,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:53:56,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:53:56,783.783 INFO    ] No existing commands found in stream
[2026-08-25 08:54:01,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:54:01,800.800 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 08:54:03,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:54:03,327.327 INFO    ] Checking for system updates...
[2026-08-25 08:54:03,363.363 INFO    ] 200
[2026-08-25 08:54:03,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:03,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:03,422.422 INFO    ] No update needed
[2026-08-25 08:54:03,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 08:54:03,460.460 INFO    ] 200
[2026-08-25 08:54:03,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:03,504.504 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:54:03,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:03,551.551 INFO    ] No camera update needed
[2026-08-25 08:54:03,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:54:03,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:54:03,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:54:03,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:54:05,610.610 INFO    ] ================================================
[2026-08-25 08:54:05,627.627 INFO    ] Launching Daemon at Tue Aug 25 08:54:05 IST 2026
[2026-08-25 08:54:05,638.638 INFO    ] ================================================
[2026-08-25 08:54:06,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:54:06
[2026-08-25 08:54:06,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:54:07,307.307 INFO    ] Initializing speech engine...
[2026-08-25 08:54:07,313.313 INFO    ] 2026-08-25 08:54:07
[2026-08-25 08:54:07,624.624 INFO    ] 2026-08-25 08:54:07
[2026-08-25 08:54:07,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:54:07,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:54:07,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:54:08,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:54:08,154.154 INFO    ] time= 25/08/2026 08:54:08
[2026-08-25 08:54:08,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:54:08,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:54:08,312.312 INFO    ] No existing commands found in stream
[2026-08-25 08:54:13,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:54:13,328.328 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 08:54:17,548.548 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:54:17,551.551 INFO    ] Checking for system updates...
[2026-08-25 08:54:17,588.588 INFO    ] 200
[2026-08-25 08:54:17,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:17,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:17,650.650 INFO    ] No update needed
[2026-08-25 08:54:17,653.653 INFO    ] Checking for camera pi updates...
[2026-08-25 08:54:17,688.688 INFO    ] 200
[2026-08-25 08:54:17,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:17,735.735 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:54:17,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:17,785.785 INFO    ] No camera update needed
[2026-08-25 08:54:17,787.787 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:54:17,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:54:17,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:54:17,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:54:19,840.840 INFO    ] ================================================
[2026-08-25 08:54:19,856.856 INFO    ] Launching Daemon at Tue Aug 25 08:54:19 IST 2026
[2026-08-25 08:54:19,868.868 INFO    ] ================================================
[2026-08-25 08:54:20,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:54:20
[2026-08-25 08:54:21,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:54:21,503.503 INFO    ] Initializing speech engine...
[2026-08-25 08:54:21,515.515 INFO    ] 2026-08-25 08:54:21
[2026-08-25 08:54:21,831.831 INFO    ] 2026-08-25 08:54:21
[2026-08-25 08:54:21,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:54:22,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:54:22,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:54:22,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:54:22,356.356 INFO    ] time= 25/08/2026 08:54:22
[2026-08-25 08:54:22,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:54:22,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:54:22,493.493 INFO    ] No existing commands found in stream
[2026-08-25 08:54:27,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:54:27,521.521 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 08:54:29,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:54:29,871.871 INFO    ] Checking for system updates...
[2026-08-25 08:54:29,908.908 INFO    ] 200
[2026-08-25 08:54:29,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:29,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:54:29,974.974 INFO    ] No update needed
[2026-08-25 08:54:29,977.977 INFO    ] Checking for camera pi updates...
[2026-08-25 08:54:30,014.014 INFO    ] 200
[2026-08-25 08:54:30,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:30,057.057 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:54:30,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:54:30,114.114 INFO    ] No camera update needed
[2026-08-25 08:54:30,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:54:30,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:54:30,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:54:30,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:54:32,170.170 INFO    ] ================================================
[2026-08-25 08:54:32,186.186 INFO    ] Launching Daemon at Tue Aug 25 08:54:32 IST 2026
[2026-08-25 08:54:32,198.198 INFO    ] ================================================
[2026-08-25 08:54:32,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:54:32
[2026-08-25 08:54:33,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:54:33,651.651 INFO    ] Initializing speech engine...
[2026-08-25 08:54:33,664.664 INFO    ] 2026-08-25 08:54:33
[2026-08-25 08:54:33,952.952 INFO    ] 2026-08-25 08:54:33
[2026-08-25 08:54:33,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:54:34,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:54:34,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:54:34,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:54:34,353.353 INFO    ] time= 25/08/2026 08:54:34
[2026-08-25 08:54:34,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:54:34,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:54:34,461.461 INFO    ] No existing commands found in stream
[2026-08-25 08:54:39,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:54:39,477.477 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 08:54:42,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:54:42,471.471 INFO    ] Checking for system updates...
[2026-08-25 08:54:42,507.507 INFO    ] 200
[2026-08-25 08:54:42,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:42,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:42,565.565 INFO    ] No update needed
[2026-08-25 08:54:42,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 08:54:42,601.601 INFO    ] 200
[2026-08-25 08:54:42,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:42,643.643 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:54:42,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:42,692.692 INFO    ] No camera update needed
[2026-08-25 08:54:42,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:54:42,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:54:42,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:54:42,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:54:44,747.747 INFO    ] ================================================
[2026-08-25 08:54:44,763.763 INFO    ] Launching Daemon at Tue Aug 25 08:54:44 IST 2026
[2026-08-25 08:54:44,774.774 INFO    ] ================================================
[2026-08-25 08:54:45,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:54:45
[2026-08-25 08:54:45,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:54:46,237.237 INFO    ] Initializing speech engine...
[2026-08-25 08:54:46,245.245 INFO    ] 2026-08-25 08:54:46
[2026-08-25 08:54:46,507.507 INFO    ] 2026-08-25 08:54:46
[2026-08-25 08:54:46,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:54:46,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:54:46,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:54:46,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:54:46,986.986 INFO    ] time= 25/08/2026 08:54:46
[2026-08-25 08:54:47,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:54:47,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:54:47,179.179 INFO    ] No existing commands found in stream
[2026-08-25 08:54:52,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:54:52,212.212 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 08:54:55,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:54:55,054.054 INFO    ] Checking for system updates...
[2026-08-25 08:54:55,091.091 INFO    ] 200
[2026-08-25 08:54:55,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:55,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:55,148.148 INFO    ] No update needed
[2026-08-25 08:54:55,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 08:54:55,185.185 INFO    ] 200
[2026-08-25 08:54:55,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:54:55,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:54:55,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:54:55,292.292 INFO    ] No camera update needed
[2026-08-25 08:54:55,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:54:55,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:54:55,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:54:55,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:54:57,350.350 INFO    ] ================================================
[2026-08-25 08:54:57,366.366 INFO    ] Launching Daemon at Tue Aug 25 08:54:57 IST 2026
[2026-08-25 08:54:57,378.378 INFO    ] ================================================
[2026-08-25 08:54:57,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:54:57
[2026-08-25 08:54:58,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:54:58,864.864 INFO    ] Initializing speech engine...
[2026-08-25 08:54:58,871.871 INFO    ] 2026-08-25 08:54:58
[2026-08-25 08:54:59,147.147 INFO    ] 2026-08-25 08:54:59
[2026-08-25 08:54:59,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:54:59,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:54:59,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:54:59,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:54:59,638.638 INFO    ] time= 25/08/2026 08:54:59
[2026-08-25 08:54:59,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:54:59,715.715 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:54:59,835.835 INFO    ] No existing commands found in stream
[2026-08-25 08:55:04,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:55:04,872.872 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 08:55:07,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:55:07,342.342 INFO    ] Checking for system updates...
[2026-08-25 08:55:07,380.380 INFO    ] 200
[2026-08-25 08:55:07,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:07,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:55:07,443.443 INFO    ] No update needed
[2026-08-25 08:55:07,446.446 INFO    ] Checking for camera pi updates...
[2026-08-25 08:55:07,480.480 INFO    ] 200
[2026-08-25 08:55:07,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:07,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:55:07,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:55:07,679.679 INFO    ] No camera update needed
[2026-08-25 08:55:07,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:55:07,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:55:07,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:55:07,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:55:09,735.735 INFO    ] ================================================
[2026-08-25 08:55:09,750.750 INFO    ] Launching Daemon at Tue Aug 25 08:55:09 IST 2026
[2026-08-25 08:55:09,761.761 INFO    ] ================================================
[2026-08-25 08:55:10,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:55:10
[2026-08-25 08:55:10,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:55:11,171.171 INFO    ] Initializing speech engine...
[2026-08-25 08:55:11,184.184 INFO    ] 2026-08-25 08:55:11
[2026-08-25 08:55:11,459.459 INFO    ] 2026-08-25 08:55:11
[2026-08-25 08:55:11,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:55:11,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:55:11,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:55:11,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:55:11,836.836 INFO    ] time= 25/08/2026 08:55:11
[2026-08-25 08:55:11,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:55:11,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:55:11,945.945 INFO    ] No existing commands found in stream
[2026-08-25 08:55:16,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:55:16,960.960 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 08:55:19,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:55:19,579.579 INFO    ] Checking for system updates...
[2026-08-25 08:55:19,614.614 INFO    ] 200
[2026-08-25 08:55:19,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:19,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:55:19,678.678 INFO    ] No update needed
[2026-08-25 08:55:19,681.681 INFO    ] Checking for camera pi updates...
[2026-08-25 08:55:19,715.715 INFO    ] 200
[2026-08-25 08:55:19,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:19,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:55:19,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:55:19,810.810 INFO    ] No camera update needed
[2026-08-25 08:55:19,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:55:19,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:55:19,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:55:19,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:55:21,865.865 INFO    ] ================================================
[2026-08-25 08:55:21,881.881 INFO    ] Launching Daemon at Tue Aug 25 08:55:21 IST 2026
[2026-08-25 08:55:21,892.892 INFO    ] ================================================
[2026-08-25 08:55:22,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:55:22
[2026-08-25 08:55:23,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:55:23,307.307 INFO    ] Initializing speech engine...
[2026-08-25 08:55:23,321.321 INFO    ] 2026-08-25 08:55:23
[2026-08-25 08:55:23,593.593 INFO    ] 2026-08-25 08:55:23
[2026-08-25 08:55:23,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:55:23,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:55:23,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:55:23,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:55:23,983.983 INFO    ] time= 25/08/2026 08:55:23
[2026-08-25 08:55:23,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:55:24,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:55:24,169.169 INFO    ] No existing commands found in stream
[2026-08-25 08:55:29,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:55:29,191.191 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 08:55:30,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:55:30,230.230 INFO    ] Checking for system updates...
[2026-08-25 08:55:30,269.269 INFO    ] 200
[2026-08-25 08:55:30,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:30,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:55:30,330.330 INFO    ] No update needed
[2026-08-25 08:55:30,333.333 INFO    ] Checking for camera pi updates...
[2026-08-25 08:55:30,367.367 INFO    ] 200
[2026-08-25 08:55:30,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:30,411.411 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:55:30,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:55:30,459.459 INFO    ] No camera update needed
[2026-08-25 08:55:30,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:55:30,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:55:30,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:55:30,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:55:32,517.517 INFO    ] ================================================
[2026-08-25 08:55:32,533.533 INFO    ] Launching Daemon at Tue Aug 25 08:55:32 IST 2026
[2026-08-25 08:55:32,544.544 INFO    ] ================================================
[2026-08-25 08:55:33,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:55:33
[2026-08-25 08:55:33,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:55:34,104.104 INFO    ] Initializing speech engine...
[2026-08-25 08:55:34,111.111 INFO    ] 2026-08-25 08:55:34
[2026-08-25 08:55:34,378.378 INFO    ] 2026-08-25 08:55:34
[2026-08-25 08:55:34,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:55:34,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:55:34,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:55:34,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:55:34,880.880 INFO    ] time= 25/08/2026 08:55:34
[2026-08-25 08:55:34,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:55:34,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:55:35,077.077 INFO    ] No existing commands found in stream
[2026-08-25 08:55:40,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:55:40,094.094 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 08:55:40,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:55:40,939.939 INFO    ] Checking for system updates...
[2026-08-25 08:55:40,977.977 INFO    ] 200
[2026-08-25 08:55:40,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:41,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:55:41,035.035 INFO    ] No update needed
[2026-08-25 08:55:41,038.038 INFO    ] Checking for camera pi updates...
[2026-08-25 08:55:41,072.072 INFO    ] 200
[2026-08-25 08:55:41,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:41,115.115 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:55:41,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:55:41,167.167 INFO    ] No camera update needed
[2026-08-25 08:55:41,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:55:41,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:55:41,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:55:41,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:55:43,224.224 INFO    ] ================================================
[2026-08-25 08:55:43,240.240 INFO    ] Launching Daemon at Tue Aug 25 08:55:43 IST 2026
[2026-08-25 08:55:43,251.251 INFO    ] ================================================
[2026-08-25 08:55:43,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:55:43
[2026-08-25 08:55:44,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:55:44,804.804 INFO    ] Initializing speech engine...
[2026-08-25 08:55:44,817.817 INFO    ] 2026-08-25 08:55:44
[2026-08-25 08:55:45,084.084 INFO    ] 2026-08-25 08:55:45
[2026-08-25 08:55:45,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:55:45,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:55:45,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:55:45,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:55:45,556.556 INFO    ] time= 25/08/2026 08:55:45
[2026-08-25 08:55:45,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:55:45,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:55:45,779.779 INFO    ] No existing commands found in stream
[2026-08-25 08:55:50,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:55:50,809.809 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 08:55:55,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:55:55,139.139 INFO    ] Checking for system updates...
[2026-08-25 08:55:55,175.175 INFO    ] 200
[2026-08-25 08:55:55,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:55,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:55:55,234.234 INFO    ] No update needed
[2026-08-25 08:55:55,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 08:55:55,273.273 INFO    ] 200
[2026-08-25 08:55:55,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:55:55,323.323 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:55:55,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:55:55,377.377 INFO    ] No camera update needed
[2026-08-25 08:55:55,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:55:55,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:55:55,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:55:55,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:55:57,434.434 INFO    ] ================================================
[2026-08-25 08:55:57,450.450 INFO    ] Launching Daemon at Tue Aug 25 08:55:57 IST 2026
[2026-08-25 08:55:57,461.461 INFO    ] ================================================
[2026-08-25 08:55:58,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:55:58
[2026-08-25 08:55:58,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:55:58,877.877 INFO    ] Initializing speech engine...
[2026-08-25 08:55:58,887.887 INFO    ] 2026-08-25 08:55:58
[2026-08-25 08:55:59,134.134 INFO    ] 2026-08-25 08:55:59
[2026-08-25 08:55:59,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:55:59,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:55:59,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:55:59,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:55:59,507.507 INFO    ] time= 25/08/2026 08:55:59
[2026-08-25 08:55:59,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:55:59,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:55:59,663.663 INFO    ] No existing commands found in stream
[2026-08-25 08:56:04,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:56:04,691.691 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 08:56:08,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:56:08,380.380 INFO    ] Checking for system updates...
[2026-08-25 08:56:08,416.416 INFO    ] 200
[2026-08-25 08:56:08,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:08,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:08,479.479 INFO    ] No update needed
[2026-08-25 08:56:08,481.481 INFO    ] Checking for camera pi updates...
[2026-08-25 08:56:08,514.514 INFO    ] 200
[2026-08-25 08:56:08,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:08,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:56:08,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:08,610.610 INFO    ] No camera update needed
[2026-08-25 08:56:08,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:56:08,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:56:08,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:56:08,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:56:10,672.672 INFO    ] ================================================
[2026-08-25 08:56:10,687.687 INFO    ] Launching Daemon at Tue Aug 25 08:56:10 IST 2026
[2026-08-25 08:56:10,698.698 INFO    ] ================================================
[2026-08-25 08:56:11,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:56:11
[2026-08-25 08:56:11,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:56:12,117.117 INFO    ] Initializing speech engine...
[2026-08-25 08:56:12,125.125 INFO    ] 2026-08-25 08:56:12
[2026-08-25 08:56:12,375.375 INFO    ] 2026-08-25 08:56:12
[2026-08-25 08:56:12,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:56:12,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:56:12,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:56:12,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:56:12,850.850 INFO    ] time= 25/08/2026 08:56:12
[2026-08-25 08:56:12,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:56:12,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:56:13,079.079 INFO    ] No existing commands found in stream
[2026-08-25 08:56:18,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:56:18,110.110 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 08:56:18,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:56:18,899.899 INFO    ] Checking for system updates...
[2026-08-25 08:56:18,936.936 INFO    ] 200
[2026-08-25 08:56:18,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:18,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:18,995.995 INFO    ] No update needed
[2026-08-25 08:56:18,998.998 INFO    ] Checking for camera pi updates...
[2026-08-25 08:56:19,036.036 INFO    ] 200
[2026-08-25 08:56:19,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:19,079.079 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:56:19,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:19,127.127 INFO    ] No camera update needed
[2026-08-25 08:56:19,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:56:19,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:56:19,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:56:19,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:56:21,186.186 INFO    ] ================================================
[2026-08-25 08:56:21,201.201 INFO    ] Launching Daemon at Tue Aug 25 08:56:21 IST 2026
[2026-08-25 08:56:21,211.211 INFO    ] ================================================
[2026-08-25 08:56:21,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:56:21
[2026-08-25 08:56:22,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:56:22,815.815 INFO    ] Initializing speech engine...
[2026-08-25 08:56:22,828.828 INFO    ] 2026-08-25 08:56:22
[2026-08-25 08:56:23,093.093 INFO    ] 2026-08-25 08:56:23
[2026-08-25 08:56:23,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:56:23,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:56:23,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:56:23,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:56:23,573.573 INFO    ] time= 25/08/2026 08:56:23
[2026-08-25 08:56:23,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:56:23,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:56:23,821.821 INFO    ] No existing commands found in stream
[2026-08-25 08:56:28,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:56:28,854.854 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 08:56:32,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:56:32,024.024 INFO    ] Checking for system updates...
[2026-08-25 08:56:32,061.061 INFO    ] 200
[2026-08-25 08:56:32,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:32,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:32,123.123 INFO    ] No update needed
[2026-08-25 08:56:32,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 08:56:32,162.162 INFO    ] 200
[2026-08-25 08:56:32,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:32,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:56:32,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:32,289.289 INFO    ] No camera update needed
[2026-08-25 08:56:32,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:56:32,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:56:32,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:56:32,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:56:34,350.350 INFO    ] ================================================
[2026-08-25 08:56:34,365.365 INFO    ] Launching Daemon at Tue Aug 25 08:56:34 IST 2026
[2026-08-25 08:56:34,375.375 INFO    ] ================================================
[2026-08-25 08:56:34,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:56:34
[2026-08-25 08:56:35,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:56:35,878.878 INFO    ] Initializing speech engine...
[2026-08-25 08:56:35,883.883 INFO    ] 2026-08-25 08:56:35
[2026-08-25 08:56:36,146.146 INFO    ] 2026-08-25 08:56:36
[2026-08-25 08:56:36,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:56:36,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:56:36,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:56:36,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:56:36,616.616 INFO    ] time= 25/08/2026 08:56:36
[2026-08-25 08:56:36,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:56:36,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:56:36,830.830 INFO    ] No existing commands found in stream
[2026-08-25 08:56:41,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:56:41,857.857 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 08:56:46,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:56:46,060.060 INFO    ] Checking for system updates...
[2026-08-25 08:56:46,095.095 INFO    ] 200
[2026-08-25 08:56:46,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:46,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:56:46,153.153 INFO    ] No update needed
[2026-08-25 08:56:46,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 08:56:46,188.188 INFO    ] 200
[2026-08-25 08:56:46,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:46,231.231 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:56:46,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:56:46,281.281 INFO    ] No camera update needed
[2026-08-25 08:56:46,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:56:46,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:56:46,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:56:46,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:56:48,337.337 INFO    ] ================================================
[2026-08-25 08:56:48,352.352 INFO    ] Launching Daemon at Tue Aug 25 08:56:48 IST 2026
[2026-08-25 08:56:48,362.362 INFO    ] ================================================
[2026-08-25 08:56:49,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:56:49
[2026-08-25 08:56:49,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:56:49,963.963 INFO    ] Initializing speech engine...
[2026-08-25 08:56:49,972.972 INFO    ] 2026-08-25 08:56:49
[2026-08-25 08:56:50,256.256 INFO    ] 2026-08-25 08:56:50
[2026-08-25 08:56:50,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:56:50,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:56:50,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:56:50,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:56:50,789.789 INFO    ] time= 25/08/2026 08:56:50
[2026-08-25 08:56:50,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:56:50,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:56:50,941.941 INFO    ] No existing commands found in stream
[2026-08-25 08:56:55,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:56:55,960.960 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 08:56:59,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:56:59,061.061 INFO    ] Checking for system updates...
[2026-08-25 08:56:59,097.097 INFO    ] 200
[2026-08-25 08:56:59,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:59,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:59,156.156 INFO    ] No update needed
[2026-08-25 08:56:59,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 08:56:59,193.193 INFO    ] 200
[2026-08-25 08:56:59,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:56:59,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:56:59,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:56:59,295.295 INFO    ] No camera update needed
[2026-08-25 08:56:59,298.298 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:56:59,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:56:59,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:56:59,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:57:01,353.353 INFO    ] ================================================
[2026-08-25 08:57:01,368.368 INFO    ] Launching Daemon at Tue Aug 25 08:57:01 IST 2026
[2026-08-25 08:57:01,379.379 INFO    ] ================================================
[2026-08-25 08:57:02,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:57:02
[2026-08-25 08:57:02,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:57:03,210.210 INFO    ] Initializing speech engine...
[2026-08-25 08:57:03,222.222 INFO    ] 2026-08-25 08:57:03
[2026-08-25 08:57:03,522.522 INFO    ] 2026-08-25 08:57:03
[2026-08-25 08:57:03,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:57:03,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:57:03,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:57:04,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:57:04,060.060 INFO    ] time= 25/08/2026 08:57:04
[2026-08-25 08:57:04,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:57:04,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:57:04,222.222 INFO    ] No existing commands found in stream
[2026-08-25 08:57:09,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:57:09,242.242 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 08:57:10,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:57:10,811.811 INFO    ] Checking for system updates...
[2026-08-25 08:57:10,848.848 INFO    ] 200
[2026-08-25 08:57:10,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:10,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:57:10,916.916 INFO    ] No update needed
[2026-08-25 08:57:10,919.919 INFO    ] Checking for camera pi updates...
[2026-08-25 08:57:10,953.953 INFO    ] 200
[2026-08-25 08:57:10,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:10,997.997 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:57:11,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:57:11,144.144 INFO    ] No camera update needed
[2026-08-25 08:57:11,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:57:11,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:57:11,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:57:11,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:57:13,203.203 INFO    ] ================================================
[2026-08-25 08:57:13,218.218 INFO    ] Launching Daemon at Tue Aug 25 08:57:13 IST 2026
[2026-08-25 08:57:13,229.229 INFO    ] ================================================
[2026-08-25 08:57:13,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:57:13
[2026-08-25 08:57:14,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:57:14,665.665 INFO    ] Initializing speech engine...
[2026-08-25 08:57:14,674.674 INFO    ] 2026-08-25 08:57:14
[2026-08-25 08:57:14,966.966 INFO    ] 2026-08-25 08:57:14
[2026-08-25 08:57:15,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:57:15,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:57:15,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:57:15,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:57:15,386.386 INFO    ] time= 25/08/2026 08:57:15
[2026-08-25 08:57:15,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:57:15,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:57:15,560.560 INFO    ] No existing commands found in stream
[2026-08-25 08:57:20,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:57:20,593.593 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 08:57:22,139.139 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:57:22,141.141 INFO    ] Checking for system updates...
[2026-08-25 08:57:22,178.178 INFO    ] 200
[2026-08-25 08:57:22,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:22,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:57:22,234.234 INFO    ] No update needed
[2026-08-25 08:57:22,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 08:57:22,271.271 INFO    ] 200
[2026-08-25 08:57:22,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:22,314.314 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:57:22,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:57:22,364.364 INFO    ] No camera update needed
[2026-08-25 08:57:22,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:57:22,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:57:22,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:57:22,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:57:24,422.422 INFO    ] ================================================
[2026-08-25 08:57:24,437.437 INFO    ] Launching Daemon at Tue Aug 25 08:57:24 IST 2026
[2026-08-25 08:57:24,448.448 INFO    ] ================================================
[2026-08-25 08:57:25,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:57:25
[2026-08-25 08:57:25,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:57:25,852.852 INFO    ] Initializing speech engine...
[2026-08-25 08:57:25,858.858 INFO    ] 2026-08-25 08:57:25
[2026-08-25 08:57:26,152.152 INFO    ] 2026-08-25 08:57:26
[2026-08-25 08:57:26,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:57:26,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:57:26,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:57:26,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:57:26,568.568 INFO    ] time= 25/08/2026 08:57:26
[2026-08-25 08:57:26,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:57:26,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:57:26,660.660 INFO    ] No existing commands found in stream
[2026-08-25 08:57:31,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:57:31,683.683 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 08:57:34,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:57:34,032.032 INFO    ] Checking for system updates...
[2026-08-25 08:57:34,068.068 INFO    ] 200
[2026-08-25 08:57:34,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:34,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:57:34,126.126 INFO    ] No update needed
[2026-08-25 08:57:34,128.128 INFO    ] Checking for camera pi updates...
[2026-08-25 08:57:34,163.163 INFO    ] 200
[2026-08-25 08:57:34,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:34,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:57:34,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:57:34,265.265 INFO    ] No camera update needed
[2026-08-25 08:57:34,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:57:34,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:57:34,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:57:34,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:57:36,320.320 INFO    ] ================================================
[2026-08-25 08:57:36,335.335 INFO    ] Launching Daemon at Tue Aug 25 08:57:36 IST 2026
[2026-08-25 08:57:36,347.347 INFO    ] ================================================
[2026-08-25 08:57:36,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:57:36
[2026-08-25 08:57:37,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:57:37,902.902 INFO    ] Initializing speech engine...
[2026-08-25 08:57:37,911.911 INFO    ] 2026-08-25 08:57:37
[2026-08-25 08:57:38,182.182 INFO    ] 2026-08-25 08:57:38
[2026-08-25 08:57:38,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:57:38,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:57:38,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:57:38,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:57:38,733.733 INFO    ] time= 25/08/2026 08:57:38
[2026-08-25 08:57:38,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:57:38,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:57:38,909.909 INFO    ] No existing commands found in stream
[2026-08-25 08:57:43,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:57:43,945.945 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 08:57:44,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:57:44,548.548 INFO    ] Checking for system updates...
[2026-08-25 08:57:44,586.586 INFO    ] 200
[2026-08-25 08:57:44,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:44,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:57:44,644.644 INFO    ] No update needed
[2026-08-25 08:57:44,646.646 INFO    ] Checking for camera pi updates...
[2026-08-25 08:57:44,680.680 INFO    ] 200
[2026-08-25 08:57:44,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:44,724.724 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:57:44,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:57:44,777.777 INFO    ] No camera update needed
[2026-08-25 08:57:44,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:57:44,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:57:44,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:57:44,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:57:46,832.832 INFO    ] ================================================
[2026-08-25 08:57:46,848.848 INFO    ] Launching Daemon at Tue Aug 25 08:57:46 IST 2026
[2026-08-25 08:57:46,859.859 INFO    ] ================================================
[2026-08-25 08:57:47,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:57:47
[2026-08-25 08:57:48,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:57:48,488.488 INFO    ] Initializing speech engine...
[2026-08-25 08:57:48,495.495 INFO    ] 2026-08-25 08:57:48
[2026-08-25 08:57:48,772.772 INFO    ] 2026-08-25 08:57:48
[2026-08-25 08:57:48,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:57:49,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:57:49,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:57:49,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:57:49,326.326 INFO    ] time= 25/08/2026 08:57:49
[2026-08-25 08:57:49,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:57:49,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:57:49,483.483 INFO    ] No existing commands found in stream
[2026-08-25 08:57:54,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:57:54,506.506 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 08:57:58,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 08:57:58,229.229 INFO    ] Checking for system updates...
[2026-08-25 08:57:58,266.266 INFO    ] 200
[2026-08-25 08:57:58,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:58,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:57:58,325.325 INFO    ] No update needed
[2026-08-25 08:57:58,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 08:57:58,363.363 INFO    ] 200
[2026-08-25 08:57:58,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:57:58,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:57:58,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:57:58,474.474 INFO    ] No camera update needed
[2026-08-25 08:57:58,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:57:58,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:57:58,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:57:58,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:58:00,531.531 INFO    ] ================================================
[2026-08-25 08:58:00,547.547 INFO    ] Launching Daemon at Tue Aug 25 08:58:00 IST 2026
[2026-08-25 08:58:00,558.558 INFO    ] ================================================
[2026-08-25 08:58:01,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:58:01
[2026-08-25 08:58:01,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:58:02,192.192 INFO    ] Initializing speech engine...
[2026-08-25 08:58:02,203.203 INFO    ] 2026-08-25 08:58:02
[2026-08-25 08:58:02,513.513 INFO    ] 2026-08-25 08:58:02
[2026-08-25 08:58:02,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:58:02,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:58:02,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:58:02,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:58:03,057.057 INFO    ] time= 25/08/2026 08:58:03
[2026-08-25 08:58:03,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:58:03,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:58:03,257.257 INFO    ] No existing commands found in stream
[2026-08-25 08:58:08,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:58:08,286.286 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 08:58:10,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:58:10,939.939 INFO    ] Checking for system updates...
[2026-08-25 08:58:10,974.974 INFO    ] 200
[2026-08-25 08:58:10,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:11,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:58:11,033.033 INFO    ] No update needed
[2026-08-25 08:58:11,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 08:58:11,069.069 INFO    ] 200
[2026-08-25 08:58:11,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:11,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:58:11,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:58:11,169.169 INFO    ] No camera update needed
[2026-08-25 08:58:11,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:58:11,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:58:11,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:58:11,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:58:13,224.224 INFO    ] ================================================
[2026-08-25 08:58:13,239.239 INFO    ] Launching Daemon at Tue Aug 25 08:58:13 IST 2026
[2026-08-25 08:58:13,250.250 INFO    ] ================================================
[2026-08-25 08:58:13,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:58:13
[2026-08-25 08:58:14,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:58:14,665.665 INFO    ] Initializing speech engine...
[2026-08-25 08:58:14,674.674 INFO    ] 2026-08-25 08:58:14
[2026-08-25 08:58:14,919.919 INFO    ] 2026-08-25 08:58:14
[2026-08-25 08:58:14,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:58:15,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:58:15,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:58:15,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:58:15,291.291 INFO    ] time= 25/08/2026 08:58:15
[2026-08-25 08:58:15,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:58:15,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:58:15,470.470 INFO    ] No existing commands found in stream
[2026-08-25 08:58:20,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:58:20,496.496 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 08:58:21,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:58:21,760.760 INFO    ] Checking for system updates...
[2026-08-25 08:58:21,796.796 INFO    ] 200
[2026-08-25 08:58:21,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:21,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:58:21,853.853 INFO    ] No update needed
[2026-08-25 08:58:21,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 08:58:21,890.890 INFO    ] 200
[2026-08-25 08:58:21,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:21,932.932 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:58:21,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:58:21,983.983 INFO    ] No camera update needed
[2026-08-25 08:58:21,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:58:21,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:58:21,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:58:21,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:58:24,038.038 INFO    ] ================================================
[2026-08-25 08:58:24,054.054 INFO    ] Launching Daemon at Tue Aug 25 08:58:24 IST 2026
[2026-08-25 08:58:24,065.065 INFO    ] ================================================
[2026-08-25 08:58:24,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:58:24
[2026-08-25 08:58:25,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:58:25,642.642 INFO    ] Initializing speech engine...
[2026-08-25 08:58:25,655.655 INFO    ] 2026-08-25 08:58:25
[2026-08-25 08:58:25,935.935 INFO    ] 2026-08-25 08:58:25
[2026-08-25 08:58:25,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:58:26,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:58:26,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:58:26,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:58:26,396.396 INFO    ] time= 25/08/2026 08:58:26
[2026-08-25 08:58:26,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:58:26,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:58:26,642.642 INFO    ] No existing commands found in stream
[2026-08-25 08:58:31,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:58:31,660.660 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 08:58:32,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:58:32,271.271 INFO    ] Checking for system updates...
[2026-08-25 08:58:32,311.311 INFO    ] 200
[2026-08-25 08:58:32,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:32,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:58:32,374.374 INFO    ] No update needed
[2026-08-25 08:58:32,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 08:58:32,413.413 INFO    ] 200
[2026-08-25 08:58:32,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:32,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:58:32,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:58:32,512.512 INFO    ] No camera update needed
[2026-08-25 08:58:32,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:58:32,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:58:32,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:58:32,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:58:34,569.569 INFO    ] ================================================
[2026-08-25 08:58:34,585.585 INFO    ] Launching Daemon at Tue Aug 25 08:58:34 IST 2026
[2026-08-25 08:58:34,596.596 INFO    ] ================================================
[2026-08-25 08:58:35,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:58:35
[2026-08-25 08:58:35,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:58:36,064.064 INFO    ] Initializing speech engine...
[2026-08-25 08:58:36,074.074 INFO    ] 2026-08-25 08:58:36
[2026-08-25 08:58:36,339.339 INFO    ] 2026-08-25 08:58:36
[2026-08-25 08:58:36,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:58:36,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:58:36,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:58:36,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:58:36,793.793 INFO    ] time= 25/08/2026 08:58:36
[2026-08-25 08:58:36,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:58:36,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:58:36,965.965 INFO    ] No existing commands found in stream
[2026-08-25 08:58:41,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:58:41,979.979 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 08:58:43,242.242 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:58:43,245.245 INFO    ] Checking for system updates...
[2026-08-25 08:58:43,281.281 INFO    ] 200
[2026-08-25 08:58:43,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:43,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:58:43,339.339 INFO    ] No update needed
[2026-08-25 08:58:43,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 08:58:43,378.378 INFO    ] 200
[2026-08-25 08:58:43,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:43,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:58:43,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:58:43,472.472 INFO    ] No camera update needed
[2026-08-25 08:58:43,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:58:43,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:58:43,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:58:43,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:58:45,530.530 INFO    ] ================================================
[2026-08-25 08:58:45,546.546 INFO    ] Launching Daemon at Tue Aug 25 08:58:45 IST 2026
[2026-08-25 08:58:45,557.557 INFO    ] ================================================
[2026-08-25 08:58:46,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:58:46
[2026-08-25 08:58:46,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:58:47,120.120 INFO    ] Initializing speech engine...
[2026-08-25 08:58:47,130.130 INFO    ] 2026-08-25 08:58:47
[2026-08-25 08:58:47,391.391 INFO    ] 2026-08-25 08:58:47
[2026-08-25 08:58:47,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:58:47,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:58:47,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:58:47,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:58:47,877.877 INFO    ] time= 25/08/2026 08:58:47
[2026-08-25 08:58:47,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:58:47,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:58:48,093.093 INFO    ] No existing commands found in stream
[2026-08-25 08:58:53,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:58:53,135.135 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 08:58:53,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:58:53,617.617 INFO    ] Checking for system updates...
[2026-08-25 08:58:53,654.654 INFO    ] 200
[2026-08-25 08:58:53,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:53,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:58:53,712.712 INFO    ] No update needed
[2026-08-25 08:58:53,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 08:58:53,748.748 INFO    ] 200
[2026-08-25 08:58:53,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:58:53,792.792 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:58:53,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:58:53,840.840 INFO    ] No camera update needed
[2026-08-25 08:58:53,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:58:53,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:58:53,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:58:53,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:58:55,896.896 INFO    ] ================================================
[2026-08-25 08:58:55,912.912 INFO    ] Launching Daemon at Tue Aug 25 08:58:55 IST 2026
[2026-08-25 08:58:55,922.922 INFO    ] ================================================
[2026-08-25 08:58:56,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:58:56
[2026-08-25 08:58:57,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:58:57,336.336 INFO    ] Initializing speech engine...
[2026-08-25 08:58:57,360.360 INFO    ] 2026-08-25 08:58:57
[2026-08-25 08:58:57,628.628 INFO    ] 2026-08-25 08:58:57
[2026-08-25 08:58:57,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:58:57,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:58:57,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:58:58,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:58:58,087.087 INFO    ] time= 25/08/2026 08:58:58
[2026-08-25 08:58:58,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:58:58,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:58:58,273.273 INFO    ] No existing commands found in stream
[2026-08-25 08:59:03,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:59:03,288.288 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 08:59:07,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 08:59:07,117.117 INFO    ] Checking for system updates...
[2026-08-25 08:59:07,153.153 INFO    ] 200
[2026-08-25 08:59:07,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:07,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:59:07,212.212 INFO    ] No update needed
[2026-08-25 08:59:07,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 08:59:07,248.248 INFO    ] 200
[2026-08-25 08:59:07,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:07,291.291 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:59:07,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:59:07,347.347 INFO    ] No camera update needed
[2026-08-25 08:59:07,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:59:07,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:59:07,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:59:07,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:59:09,403.403 INFO    ] ================================================
[2026-08-25 08:59:09,419.419 INFO    ] Launching Daemon at Tue Aug 25 08:59:09 IST 2026
[2026-08-25 08:59:09,430.430 INFO    ] ================================================
[2026-08-25 08:59:10,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:59:10
[2026-08-25 08:59:10,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:59:11,005.005 INFO    ] Initializing speech engine...
[2026-08-25 08:59:11,018.018 INFO    ] 2026-08-25 08:59:11
[2026-08-25 08:59:11,288.288 INFO    ] 2026-08-25 08:59:11
[2026-08-25 08:59:11,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:59:11,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:59:11,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:59:11,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:59:11,775.775 INFO    ] time= 25/08/2026 08:59:11
[2026-08-25 08:59:11,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:59:11,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:59:11,987.987 INFO    ] No existing commands found in stream
[2026-08-25 08:59:17,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:59:17,019.019 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 08:59:19,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 08:59:19,836.836 INFO    ] Checking for system updates...
[2026-08-25 08:59:19,871.871 INFO    ] 200
[2026-08-25 08:59:19,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:19,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:59:19,928.928 INFO    ] No update needed
[2026-08-25 08:59:19,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 08:59:19,963.963 INFO    ] 200
[2026-08-25 08:59:19,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:20,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:59:20,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:59:20,159.159 INFO    ] No camera update needed
[2026-08-25 08:59:20,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:59:20,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:59:20,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:59:20,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:59:22,214.214 INFO    ] ================================================
[2026-08-25 08:59:22,229.229 INFO    ] Launching Daemon at Tue Aug 25 08:59:22 IST 2026
[2026-08-25 08:59:22,240.240 INFO    ] ================================================
[2026-08-25 08:59:22,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:59:22
[2026-08-25 08:59:23,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:59:23,681.681 INFO    ] Initializing speech engine...
[2026-08-25 08:59:23,706.706 INFO    ] 2026-08-25 08:59:23
[2026-08-25 08:59:23,977.977 INFO    ] 2026-08-25 08:59:23
[2026-08-25 08:59:24,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:59:24,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:59:24,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:59:24,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:59:24,469.469 INFO    ] time= 25/08/2026 08:59:24
[2026-08-25 08:59:24,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:59:24,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:59:24,663.663 INFO    ] No existing commands found in stream
[2026-08-25 08:59:29,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:59:29,679.679 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 08:59:30,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 08:59:30,786.786 INFO    ] Checking for system updates...
[2026-08-25 08:59:30,822.822 INFO    ] 200
[2026-08-25 08:59:30,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:30,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:59:30,879.879 INFO    ] No update needed
[2026-08-25 08:59:30,881.881 INFO    ] Checking for camera pi updates...
[2026-08-25 08:59:30,914.914 INFO    ] 200
[2026-08-25 08:59:30,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:30,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:59:31,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:59:31,008.008 INFO    ] No camera update needed
[2026-08-25 08:59:31,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:59:31,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:59:31,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:59:31,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:59:33,064.064 INFO    ] ================================================
[2026-08-25 08:59:33,079.079 INFO    ] Launching Daemon at Tue Aug 25 08:59:33 IST 2026
[2026-08-25 08:59:33,090.090 INFO    ] ================================================
[2026-08-25 08:59:33,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:59:33
[2026-08-25 08:59:34,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:59:34,527.527 INFO    ] Initializing speech engine...
[2026-08-25 08:59:34,533.533 INFO    ] 2026-08-25 08:59:34
[2026-08-25 08:59:34,794.794 INFO    ] 2026-08-25 08:59:34
[2026-08-25 08:59:34,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:59:35,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:59:35,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:59:35,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:59:35,277.277 INFO    ] time= 25/08/2026 08:59:35
[2026-08-25 08:59:35,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:59:35,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:59:35,492.492 INFO    ] No existing commands found in stream
[2026-08-25 08:59:40,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:59:40,512.512 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 08:59:44,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 08:59:44,508.508 INFO    ] Checking for system updates...
[2026-08-25 08:59:44,544.544 INFO    ] 200
[2026-08-25 08:59:44,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:44,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:59:44,606.606 INFO    ] No update needed
[2026-08-25 08:59:44,609.609 INFO    ] Checking for camera pi updates...
[2026-08-25 08:59:44,642.642 INFO    ] 200
[2026-08-25 08:59:44,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:44,689.689 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:59:44,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 08:59:44,738.738 INFO    ] No camera update needed
[2026-08-25 08:59:44,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:59:44,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:59:44,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:59:44,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:59:46,794.794 INFO    ] ================================================
[2026-08-25 08:59:46,809.809 INFO    ] Launching Daemon at Tue Aug 25 08:59:46 IST 2026
[2026-08-25 08:59:46,820.820 INFO    ] ================================================
[2026-08-25 08:59:47,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:59:47
[2026-08-25 08:59:47,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 08:59:48,286.286 INFO    ] Initializing speech engine...
[2026-08-25 08:59:48,296.296 INFO    ] 2026-08-25 08:59:48
[2026-08-25 08:59:48,562.562 INFO    ] 2026-08-25 08:59:48
[2026-08-25 08:59:48,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 08:59:48,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 08:59:48,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 08:59:48,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 08:59:49,049.049 INFO    ] time= 25/08/2026 08:59:48
[2026-08-25 08:59:49,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 08:59:49,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 08:59:49,249.249 INFO    ] No existing commands found in stream
[2026-08-25 08:59:54,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 08:59:54,277.277 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 08:59:56,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 08:59:56,258.258 INFO    ] Checking for system updates...
[2026-08-25 08:59:56,295.295 INFO    ] 200
[2026-08-25 08:59:56,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:56,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:59:56,352.352 INFO    ] No update needed
[2026-08-25 08:59:56,354.354 INFO    ] Checking for camera pi updates...
[2026-08-25 08:59:56,388.388 INFO    ] 200
[2026-08-25 08:59:56,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 08:59:56,435.435 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 08:59:56,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 08:59:56,498.498 INFO    ] No camera update needed
[2026-08-25 08:59:56,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 08:59:56,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 08:59:56,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 08:59:56,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 08:59:58,554.554 INFO    ] ================================================
[2026-08-25 08:59:58,570.570 INFO    ] Launching Daemon at Tue Aug 25 08:59:58 IST 2026
[2026-08-25 08:59:58,582.582 INFO    ] ================================================
[2026-08-25 08:59:59,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 08:59:59
[2026-08-25 08:59:59,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:00:00,009.009 INFO    ] Initializing speech engine...
[2026-08-25 09:00:00,014.014 INFO    ] 2026-08-25 09:00:00
[2026-08-25 09:00:00,265.265 INFO    ] 2026-08-25 09:00:00
[2026-08-25 09:00:00,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:00:00,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:00:00,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:00:00,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:00:00,640.640 INFO    ] time= 25/08/2026 09:00:00
[2026-08-25 09:00:00,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:00:00,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:00:00,821.821 INFO    ] No existing commands found in stream
[2026-08-25 09:00:05,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:00:05,864.864 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 09:00:11,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:00:11,009.009 INFO    ] Checking for system updates...
[2026-08-25 09:00:11,048.048 INFO    ] 200
[2026-08-25 09:00:11,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:11,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:00:11,105.105 INFO    ] No update needed
[2026-08-25 09:00:11,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 09:00:11,142.142 INFO    ] 200
[2026-08-25 09:00:11,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:11,184.184 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:00:11,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:00:11,248.248 INFO    ] No camera update needed
[2026-08-25 09:00:11,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:00:11,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:00:11,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:00:11,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:00:13,306.306 INFO    ] ================================================
[2026-08-25 09:00:13,322.322 INFO    ] Launching Daemon at Tue Aug 25 09:00:13 IST 2026
[2026-08-25 09:00:13,335.335 INFO    ] ================================================
[2026-08-25 09:00:13,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:00:13
[2026-08-25 09:00:14,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:00:14,943.943 INFO    ] Initializing speech engine...
[2026-08-25 09:00:14,951.951 INFO    ] 2026-08-25 09:00:14
[2026-08-25 09:00:15,236.236 INFO    ] 2026-08-25 09:00:15
[2026-08-25 09:00:15,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:00:15,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:00:15,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:00:15,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:00:15,720.720 INFO    ] time= 25/08/2026 09:00:15
[2026-08-25 09:00:15,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:00:15,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:00:15,917.917 INFO    ] No existing commands found in stream
[2026-08-25 09:00:20,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:00:20,946.946 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 09:00:21,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:00:21,711.711 INFO    ] Checking for system updates...
[2026-08-25 09:00:21,755.755 INFO    ] 200
[2026-08-25 09:00:21,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:21,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:00:21,813.813 INFO    ] No update needed
[2026-08-25 09:00:21,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 09:00:21,848.848 INFO    ] 200
[2026-08-25 09:00:21,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:21,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:00:21,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:00:21,938.938 INFO    ] No camera update needed
[2026-08-25 09:00:21,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:00:21,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:00:21,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:00:21,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:00:23,993.993 INFO    ] ================================================
[2026-08-25 09:00:24,008.008 INFO    ] Launching Daemon at Tue Aug 25 09:00:24 IST 2026
[2026-08-25 09:00:24,019.019 INFO    ] ================================================
[2026-08-25 09:00:24,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:00:24
[2026-08-25 09:00:25,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:00:25,551.551 INFO    ] Initializing speech engine...
[2026-08-25 09:00:25,559.559 INFO    ] 2026-08-25 09:00:25
[2026-08-25 09:00:25,820.820 INFO    ] 2026-08-25 09:00:25
[2026-08-25 09:00:25,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:00:26,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:00:26,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:00:26,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:00:26,275.275 INFO    ] time= 25/08/2026 09:00:26
[2026-08-25 09:00:26,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:00:26,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:00:26,481.481 INFO    ] No existing commands found in stream
[2026-08-25 09:00:31,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:00:31,506.506 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 09:00:32,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:00:32,160.160 INFO    ] Checking for system updates...
[2026-08-25 09:00:32,200.200 INFO    ] 200
[2026-08-25 09:00:32,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:32,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:00:32,261.261 INFO    ] No update needed
[2026-08-25 09:00:32,263.263 INFO    ] Checking for camera pi updates...
[2026-08-25 09:00:32,304.304 INFO    ] 200
[2026-08-25 09:00:32,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:32,350.350 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:00:32,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:00:32,412.412 INFO    ] No camera update needed
[2026-08-25 09:00:32,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:00:32,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:00:32,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:00:32,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:00:34,470.470 INFO    ] ================================================
[2026-08-25 09:00:34,486.486 INFO    ] Launching Daemon at Tue Aug 25 09:00:34 IST 2026
[2026-08-25 09:00:34,498.498 INFO    ] ================================================
[2026-08-25 09:00:35,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:00:35
[2026-08-25 09:00:35,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:00:35,980.980 INFO    ] Initializing speech engine...
[2026-08-25 09:00:35,989.989 INFO    ] 2026-08-25 09:00:35
[2026-08-25 09:00:36,237.237 INFO    ] 2026-08-25 09:00:36
[2026-08-25 09:00:36,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:00:36,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:00:36,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:00:36,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:00:36,713.713 INFO    ] time= 25/08/2026 09:00:36
[2026-08-25 09:00:36,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:00:36,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:00:36,942.942 INFO    ] No existing commands found in stream
[2026-08-25 09:00:41,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:00:41,960.960 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 09:00:44,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:00:44,030.030 INFO    ] Checking for system updates...
[2026-08-25 09:00:44,068.068 INFO    ] 200
[2026-08-25 09:00:44,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:44,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:00:44,138.138 INFO    ] No update needed
[2026-08-25 09:00:44,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 09:00:44,176.176 INFO    ] 200
[2026-08-25 09:00:44,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:44,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:00:44,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:00:44,285.285 INFO    ] No camera update needed
[2026-08-25 09:00:44,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:00:44,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:00:44,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:00:44,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:00:46,342.342 INFO    ] ================================================
[2026-08-25 09:00:46,359.359 INFO    ] Launching Daemon at Tue Aug 25 09:00:46 IST 2026
[2026-08-25 09:00:46,371.371 INFO    ] ================================================
[2026-08-25 09:00:46,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:00:46
[2026-08-25 09:00:47,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:00:47,876.876 INFO    ] Initializing speech engine...
[2026-08-25 09:00:47,905.905 INFO    ] 2026-08-25 09:00:47
[2026-08-25 09:00:48,201.201 INFO    ] 2026-08-25 09:00:48
[2026-08-25 09:00:48,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:00:48,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:00:48,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:00:48,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:00:48,607.607 INFO    ] time= 25/08/2026 09:00:48
[2026-08-25 09:00:48,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:00:48,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:00:48,742.742 INFO    ] No existing commands found in stream
[2026-08-25 09:00:53,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:00:53,758.758 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 09:00:57,737.737 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:00:57,739.739 INFO    ] Checking for system updates...
[2026-08-25 09:00:57,780.780 INFO    ] 200
[2026-08-25 09:00:57,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:57,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:00:57,847.847 INFO    ] No update needed
[2026-08-25 09:00:57,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 09:00:57,883.883 INFO    ] 200
[2026-08-25 09:00:57,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:00:57,932.932 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:00:57,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:00:57,980.980 INFO    ] No camera update needed
[2026-08-25 09:00:57,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:00:57,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:00:57,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:00:57,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:01:00,036.036 INFO    ] ================================================
[2026-08-25 09:01:00,052.052 INFO    ] Launching Daemon at Tue Aug 25 09:01:00 IST 2026
[2026-08-25 09:01:00,063.063 INFO    ] ================================================
[2026-08-25 09:01:00,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:01:00
[2026-08-25 09:01:01,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:01:01,490.490 INFO    ] Initializing speech engine...
[2026-08-25 09:01:01,498.498 INFO    ] 2026-08-25 09:01:01
[2026-08-25 09:01:01,916.916 INFO    ] 2026-08-25 09:01:01
[2026-08-25 09:01:02,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:01:02,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:01:02,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:01:02,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:01:02,506.506 INFO    ] time= 25/08/2026 09:01:02
[2026-08-25 09:01:02,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:01:02,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:01:02,733.733 INFO    ] No existing commands found in stream
[2026-08-25 09:01:07,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:01:07,778.778 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 09:01:09,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:01:10,002.002 INFO    ] Checking for system updates...
[2026-08-25 09:01:10,038.038 INFO    ] 200
[2026-08-25 09:01:10,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:10,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:01:10,095.095 INFO    ] No update needed
[2026-08-25 09:01:10,098.098 INFO    ] Checking for camera pi updates...
[2026-08-25 09:01:10,131.131 INFO    ] 200
[2026-08-25 09:01:10,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:10,174.174 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:01:10,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:01:10,239.239 INFO    ] No camera update needed
[2026-08-25 09:01:10,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:01:10,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:01:10,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:01:10,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:01:12,297.297 INFO    ] ================================================
[2026-08-25 09:01:12,312.312 INFO    ] Launching Daemon at Tue Aug 25 09:01:12 IST 2026
[2026-08-25 09:01:12,323.323 INFO    ] ================================================
[2026-08-25 09:01:12,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:01:12
[2026-08-25 09:01:13,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:01:13,884.884 INFO    ] Initializing speech engine...
[2026-08-25 09:01:13,890.890 INFO    ] 2026-08-25 09:01:13
[2026-08-25 09:01:14,165.165 INFO    ] 2026-08-25 09:01:14
[2026-08-25 09:01:14,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:01:14,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:01:14,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:01:14,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:01:14,699.699 INFO    ] time= 25/08/2026 09:01:14
[2026-08-25 09:01:14,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:01:14,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:01:14,840.840 INFO    ] No existing commands found in stream
[2026-08-25 09:01:19,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:01:19,868.868 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 09:01:20,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:01:20,549.549 INFO    ] Checking for system updates...
[2026-08-25 09:01:20,585.585 INFO    ] 200
[2026-08-25 09:01:20,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:20,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:01:20,643.643 INFO    ] No update needed
[2026-08-25 09:01:20,645.645 INFO    ] Checking for camera pi updates...
[2026-08-25 09:01:20,683.683 INFO    ] 200
[2026-08-25 09:01:20,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:20,730.730 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:01:20,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:01:20,782.782 INFO    ] No camera update needed
[2026-08-25 09:01:20,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:01:20,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:01:20,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:01:20,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:01:22,836.836 INFO    ] ================================================
[2026-08-25 09:01:22,852.852 INFO    ] Launching Daemon at Tue Aug 25 09:01:22 IST 2026
[2026-08-25 09:01:22,863.863 INFO    ] ================================================
[2026-08-25 09:01:23,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:01:23
[2026-08-25 09:01:24,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:01:24,362.362 INFO    ] Initializing speech engine...
[2026-08-25 09:01:24,377.377 INFO    ] 2026-08-25 09:01:24
[2026-08-25 09:01:24,702.702 INFO    ] 2026-08-25 09:01:24
[2026-08-25 09:01:24,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:01:24,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:01:24,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:01:25,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:01:25,222.222 INFO    ] time= 25/08/2026 09:01:25
[2026-08-25 09:01:25,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:01:25,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:01:25,382.382 INFO    ] No existing commands found in stream
[2026-08-25 09:01:30,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:01:30,400.400 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 09:01:31,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:01:31,374.374 INFO    ] Checking for system updates...
[2026-08-25 09:01:31,417.417 INFO    ] 200
[2026-08-25 09:01:31,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:31,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:01:31,479.479 INFO    ] No update needed
[2026-08-25 09:01:31,482.482 INFO    ] Checking for camera pi updates...
[2026-08-25 09:01:31,519.519 INFO    ] 200
[2026-08-25 09:01:31,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:31,566.566 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:01:31,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:01:31,725.725 INFO    ] No camera update needed
[2026-08-25 09:01:31,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:01:31,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:01:31,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:01:31,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:01:33,792.792 INFO    ] ================================================
[2026-08-25 09:01:33,809.809 INFO    ] Launching Daemon at Tue Aug 25 09:01:33 IST 2026
[2026-08-25 09:01:33,821.821 INFO    ] ================================================
[2026-08-25 09:01:34,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:01:34
[2026-08-25 09:01:34,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:01:35,260.260 INFO    ] Initializing speech engine...
[2026-08-25 09:01:35,275.275 INFO    ] 2026-08-25 09:01:35
[2026-08-25 09:01:35,568.568 INFO    ] 2026-08-25 09:01:35
[2026-08-25 09:01:35,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:01:35,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:01:35,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:01:35,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:01:35,923.923 INFO    ] time= 25/08/2026 09:01:35
[2026-08-25 09:01:35,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:01:35,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:01:36,004.004 INFO    ] No existing commands found in stream
[2026-08-25 09:01:41,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:01:41,018.018 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 09:01:42,915.915 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:01:42,917.917 INFO    ] Checking for system updates...
[2026-08-25 09:01:42,953.953 INFO    ] 200
[2026-08-25 09:01:42,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:43,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:01:43,012.012 INFO    ] No update needed
[2026-08-25 09:01:43,015.015 INFO    ] Checking for camera pi updates...
[2026-08-25 09:01:43,052.052 INFO    ] 200
[2026-08-25 09:01:43,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:43,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:01:43,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:01:43,149.149 INFO    ] No camera update needed
[2026-08-25 09:01:43,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:01:43,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:01:43,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:01:43,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:01:45,206.206 INFO    ] ================================================
[2026-08-25 09:01:45,222.222 INFO    ] Launching Daemon at Tue Aug 25 09:01:45 IST 2026
[2026-08-25 09:01:45,234.234 INFO    ] ================================================
[2026-08-25 09:01:45,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:01:45
[2026-08-25 09:01:46,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:01:46,652.652 INFO    ] Initializing speech engine...
[2026-08-25 09:01:46,661.661 INFO    ] 2026-08-25 09:01:46
[2026-08-25 09:01:46,913.913 INFO    ] 2026-08-25 09:01:46
[2026-08-25 09:01:46,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:01:47,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:01:47,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:01:47,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:01:47,291.291 INFO    ] time= 25/08/2026 09:01:47
[2026-08-25 09:01:47,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:01:47,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:01:47,476.476 INFO    ] No existing commands found in stream
[2026-08-25 09:01:52,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:01:52,505.505 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 09:01:55,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:01:55,612.612 INFO    ] Checking for system updates...
[2026-08-25 09:01:55,647.647 INFO    ] 200
[2026-08-25 09:01:55,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:55,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:01:55,703.703 INFO    ] No update needed
[2026-08-25 09:01:55,706.706 INFO    ] Checking for camera pi updates...
[2026-08-25 09:01:55,739.739 INFO    ] 200
[2026-08-25 09:01:55,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:01:55,785.785 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:01:55,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:01:55,847.847 INFO    ] No camera update needed
[2026-08-25 09:01:55,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:01:55,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:01:55,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:01:55,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:01:57,902.902 INFO    ] ================================================
[2026-08-25 09:01:57,918.918 INFO    ] Launching Daemon at Tue Aug 25 09:01:57 IST 2026
[2026-08-25 09:01:57,930.930 INFO    ] ================================================
[2026-08-25 09:01:58,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:01:58
[2026-08-25 09:01:59,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:01:59,331.331 INFO    ] Initializing speech engine...
[2026-08-25 09:01:59,354.354 INFO    ] 2026-08-25 09:01:59
[2026-08-25 09:01:59,608.608 INFO    ] 2026-08-25 09:01:59
[2026-08-25 09:01:59,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:01:59,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:01:59,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:02:00,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:02:00,077.077 INFO    ] time= 25/08/2026 09:02:00
[2026-08-25 09:02:00,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:02:00,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:02:00,312.312 INFO    ] No existing commands found in stream
[2026-08-25 09:02:05,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:02:05,343.343 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 09:02:08,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:02:08,418.418 INFO    ] Checking for system updates...
[2026-08-25 09:02:08,454.454 INFO    ] 200
[2026-08-25 09:02:08,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:08,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:02:08,511.511 INFO    ] No update needed
[2026-08-25 09:02:08,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 09:02:08,547.547 INFO    ] 200
[2026-08-25 09:02:08,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:08,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:02:08,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:02:08,638.638 INFO    ] No camera update needed
[2026-08-25 09:02:08,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:02:08,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:02:08,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:02:08,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:02:10,694.694 INFO    ] ================================================
[2026-08-25 09:02:10,710.710 INFO    ] Launching Daemon at Tue Aug 25 09:02:10 IST 2026
[2026-08-25 09:02:10,721.721 INFO    ] ================================================
[2026-08-25 09:02:11,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:02:11
[2026-08-25 09:02:11,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:02:12,142.142 INFO    ] Initializing speech engine...
[2026-08-25 09:02:12,161.161 INFO    ] 2026-08-25 09:02:12
[2026-08-25 09:02:12,413.413 INFO    ] 2026-08-25 09:02:12
[2026-08-25 09:02:12,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:02:13,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:02:13,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:02:13,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:02:13,647.647 INFO    ] time= 25/08/2026 09:02:13
[2026-08-25 09:02:13,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:02:13,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:02:13,773.773 INFO    ] No existing commands found in stream
[2026-08-25 09:02:18,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:02:18,806.806 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 09:02:22,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:02:22,562.562 INFO    ] Checking for system updates...
[2026-08-25 09:02:22,597.597 INFO    ] 200
[2026-08-25 09:02:22,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:22,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:02:22,658.658 INFO    ] No update needed
[2026-08-25 09:02:22,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 09:02:22,694.694 INFO    ] 200
[2026-08-25 09:02:22,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:22,736.736 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:02:22,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:02:22,782.782 INFO    ] No camera update needed
[2026-08-25 09:02:22,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:02:22,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:02:22,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:02:22,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:02:24,839.839 INFO    ] ================================================
[2026-08-25 09:02:24,861.861 INFO    ] Launching Daemon at Tue Aug 25 09:02:24 IST 2026
[2026-08-25 09:02:24,871.871 INFO    ] ================================================
[2026-08-25 09:02:25,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:02:25
[2026-08-25 09:02:26,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:02:26,298.298 INFO    ] Initializing speech engine...
[2026-08-25 09:02:26,307.307 INFO    ] 2026-08-25 09:02:26
[2026-08-25 09:02:26,598.598 INFO    ] 2026-08-25 09:02:26
[2026-08-25 09:02:26,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:02:26,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:02:26,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:02:26,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:02:27,001.001 INFO    ] time= 25/08/2026 09:02:26
[2026-08-25 09:02:27,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:02:27,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:02:27,086.086 INFO    ] No existing commands found in stream
[2026-08-25 09:02:32,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:02:32,102.102 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 09:02:33,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:02:33,835.835 INFO    ] Checking for system updates...
[2026-08-25 09:02:33,870.870 INFO    ] 200
[2026-08-25 09:02:33,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:33,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:02:33,927.927 INFO    ] No update needed
[2026-08-25 09:02:33,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 09:02:33,965.965 INFO    ] 200
[2026-08-25 09:02:33,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:34,007.007 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:02:34,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:02:34,058.058 INFO    ] No camera update needed
[2026-08-25 09:02:34,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:02:34,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:02:34,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:02:34,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:02:36,119.119 INFO    ] ================================================
[2026-08-25 09:02:36,134.134 INFO    ] Launching Daemon at Tue Aug 25 09:02:36 IST 2026
[2026-08-25 09:02:36,145.145 INFO    ] ================================================
[2026-08-25 09:02:36,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:02:36
[2026-08-25 09:02:37,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:02:37,592.592 INFO    ] Initializing speech engine...
[2026-08-25 09:02:37,599.599 INFO    ] 2026-08-25 09:02:37
[2026-08-25 09:02:37,886.886 INFO    ] 2026-08-25 09:02:37
[2026-08-25 09:02:37,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:02:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:02:38,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:02:38,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:02:38,357.357 INFO    ] time= 25/08/2026 09:02:38
[2026-08-25 09:02:38,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:02:38,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:02:38,563.563 INFO    ] No existing commands found in stream
[2026-08-25 09:02:43,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:02:43,598.598 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 09:02:48,069.069 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:02:48,072.072 INFO    ] Checking for system updates...
[2026-08-25 09:02:48,107.107 INFO    ] 200
[2026-08-25 09:02:48,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:48,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:02:48,163.163 INFO    ] No update needed
[2026-08-25 09:02:48,166.166 INFO    ] Checking for camera pi updates...
[2026-08-25 09:02:48,199.199 INFO    ] 200
[2026-08-25 09:02:48,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:02:48,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:02:48,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:02:48,307.307 INFO    ] No camera update needed
[2026-08-25 09:02:48,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:02:48,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:02:48,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:02:48,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:02:50,363.363 INFO    ] ================================================
[2026-08-25 09:02:50,377.377 INFO    ] Launching Daemon at Tue Aug 25 09:02:50 IST 2026
[2026-08-25 09:02:50,388.388 INFO    ] ================================================
[2026-08-25 09:02:50,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:02:50
[2026-08-25 09:02:51,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:02:51,846.846 INFO    ] Initializing speech engine...
[2026-08-25 09:02:51,856.856 INFO    ] 2026-08-25 09:02:51
[2026-08-25 09:02:52,100.100 INFO    ] 2026-08-25 09:02:52
[2026-08-25 09:02:52,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:02:52,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:02:52,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:02:52,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:02:52,467.467 INFO    ] time= 25/08/2026 09:02:52
[2026-08-25 09:02:52,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:02:52,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:02:52,642.642 INFO    ] No existing commands found in stream
[2026-08-25 09:02:57,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:02:57,676.676 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 09:03:00,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:03:00,357.357 INFO    ] Checking for system updates...
[2026-08-25 09:03:00,394.394 INFO    ] 200
[2026-08-25 09:03:00,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:00,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:03:00,452.452 INFO    ] No update needed
[2026-08-25 09:03:00,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 09:03:00,489.489 INFO    ] 200
[2026-08-25 09:03:00,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:00,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:03:00,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:03:00,582.582 INFO    ] No camera update needed
[2026-08-25 09:03:00,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:03:00,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:03:00,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:03:00,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:03:02,643.643 INFO    ] ================================================
[2026-08-25 09:03:02,665.665 INFO    ] Launching Daemon at Tue Aug 25 09:03:02 IST 2026
[2026-08-25 09:03:02,682.682 INFO    ] ================================================
[2026-08-25 09:03:03,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:03:03
[2026-08-25 09:03:03,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:03:04,240.240 INFO    ] Initializing speech engine...
[2026-08-25 09:03:04,245.245 INFO    ] 2026-08-25 09:03:04
[2026-08-25 09:03:04,495.495 INFO    ] 2026-08-25 09:03:04
[2026-08-25 09:03:04,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:03:04,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:03:04,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:03:04,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:03:04,865.865 INFO    ] time= 25/08/2026 09:03:04
[2026-08-25 09:03:04,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:03:04,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:03:05,051.051 INFO    ] No existing commands found in stream
[2026-08-25 09:03:10,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:03:10,075.075 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 09:03:11,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:03:11,452.452 INFO    ] Checking for system updates...
[2026-08-25 09:03:11,488.488 INFO    ] 200
[2026-08-25 09:03:11,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:11,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:11,545.545 INFO    ] No update needed
[2026-08-25 09:03:11,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 09:03:11,581.581 INFO    ] 200
[2026-08-25 09:03:11,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:11,624.624 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:03:11,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:11,672.672 INFO    ] No camera update needed
[2026-08-25 09:03:11,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:03:11,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:03:11,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:03:11,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:03:13,729.729 INFO    ] ================================================
[2026-08-25 09:03:13,743.743 INFO    ] Launching Daemon at Tue Aug 25 09:03:13 IST 2026
[2026-08-25 09:03:13,754.754 INFO    ] ================================================
[2026-08-25 09:03:14,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:03:14
[2026-08-25 09:03:14,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:03:15,171.171 INFO    ] Initializing speech engine...
[2026-08-25 09:03:15,193.193 INFO    ] 2026-08-25 09:03:15
[2026-08-25 09:03:15,470.470 INFO    ] 2026-08-25 09:03:15
[2026-08-25 09:03:15,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:03:15,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:03:15,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:03:15,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:03:15,883.883 INFO    ] time= 25/08/2026 09:03:15
[2026-08-25 09:03:15,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:03:15,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:03:15,971.971 INFO    ] No existing commands found in stream
[2026-08-25 09:03:21,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:03:21,009.009 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 09:03:23,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:03:23,501.501 INFO    ] Checking for system updates...
[2026-08-25 09:03:23,536.536 INFO    ] 200
[2026-08-25 09:03:23,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:23,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:23,593.593 INFO    ] No update needed
[2026-08-25 09:03:23,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 09:03:23,632.632 INFO    ] 200
[2026-08-25 09:03:23,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:23,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:03:23,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:23,738.738 INFO    ] No camera update needed
[2026-08-25 09:03:23,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:03:23,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:03:23,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:03:23,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:03:25,796.796 INFO    ] ================================================
[2026-08-25 09:03:25,812.812 INFO    ] Launching Daemon at Tue Aug 25 09:03:25 IST 2026
[2026-08-25 09:03:25,822.822 INFO    ] ================================================
[2026-08-25 09:03:26,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:03:26
[2026-08-25 09:03:27,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:03:27,430.430 INFO    ] Initializing speech engine...
[2026-08-25 09:03:27,436.436 INFO    ] 2026-08-25 09:03:27
[2026-08-25 09:03:27,714.714 INFO    ] 2026-08-25 09:03:27
[2026-08-25 09:03:27,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:03:27,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:03:27,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:03:28,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:03:28,194.194 INFO    ] time= 25/08/2026 09:03:28
[2026-08-25 09:03:28,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:03:28,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:03:28,406.406 INFO    ] No existing commands found in stream
[2026-08-25 09:03:33,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:03:33,435.435 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 09:03:35,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:03:35,312.312 INFO    ] Checking for system updates...
[2026-08-25 09:03:35,349.349 INFO    ] 200
[2026-08-25 09:03:35,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:35,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:35,407.407 INFO    ] No update needed
[2026-08-25 09:03:35,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 09:03:35,444.444 INFO    ] 200
[2026-08-25 09:03:35,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:35,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:03:35,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:35,536.536 INFO    ] No camera update needed
[2026-08-25 09:03:35,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:03:35,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:03:35,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:03:35,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:03:37,590.590 INFO    ] ================================================
[2026-08-25 09:03:37,605.605 INFO    ] Launching Daemon at Tue Aug 25 09:03:37 IST 2026
[2026-08-25 09:03:37,615.615 INFO    ] ================================================
[2026-08-25 09:03:38,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:03:38
[2026-08-25 09:03:38,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:03:39,028.028 INFO    ] Initializing speech engine...
[2026-08-25 09:03:39,031.031 INFO    ] 2026-08-25 09:03:39
[2026-08-25 09:03:39,292.292 INFO    ] 2026-08-25 09:03:39
[2026-08-25 09:03:39,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:03:39,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:03:39,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:03:39,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:03:39,664.664 INFO    ] time= 25/08/2026 09:03:39
[2026-08-25 09:03:39,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:03:39,717.717 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:03:39,846.846 INFO    ] No existing commands found in stream
[2026-08-25 09:03:44,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:03:44,872.872 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 09:03:46,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:03:46,061.061 INFO    ] Checking for system updates...
[2026-08-25 09:03:46,097.097 INFO    ] 200
[2026-08-25 09:03:46,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:46,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:46,158.158 INFO    ] No update needed
[2026-08-25 09:03:46,161.161 INFO    ] Checking for camera pi updates...
[2026-08-25 09:03:46,194.194 INFO    ] 200
[2026-08-25 09:03:46,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:46,240.240 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:03:46,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:03:46,293.293 INFO    ] No camera update needed
[2026-08-25 09:03:46,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:03:46,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:03:46,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:03:46,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:03:48,347.347 INFO    ] ================================================
[2026-08-25 09:03:48,362.362 INFO    ] Launching Daemon at Tue Aug 25 09:03:48 IST 2026
[2026-08-25 09:03:48,373.373 INFO    ] ================================================
[2026-08-25 09:03:48,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:03:48
[2026-08-25 09:03:49,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:03:49,823.823 INFO    ] Initializing speech engine...
[2026-08-25 09:03:49,828.828 INFO    ] 2026-08-25 09:03:49
[2026-08-25 09:03:50,074.074 INFO    ] 2026-08-25 09:03:50
[2026-08-25 09:03:50,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:03:50,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:03:50,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:03:50,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:03:50,571.571 INFO    ] time= 25/08/2026 09:03:50
[2026-08-25 09:03:50,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:03:50,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:03:50,784.784 INFO    ] No existing commands found in stream
[2026-08-25 09:03:55,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:03:55,801.801 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 09:03:56,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:03:56,763.763 INFO    ] Checking for system updates...
[2026-08-25 09:03:56,798.798 INFO    ] 200
[2026-08-25 09:03:56,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:56,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:03:56,854.854 INFO    ] No update needed
[2026-08-25 09:03:56,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 09:03:56,890.890 INFO    ] 200
[2026-08-25 09:03:56,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:03:56,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:03:56,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:03:56,988.988 INFO    ] No camera update needed
[2026-08-25 09:03:56,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:03:56,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:03:56,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:03:57,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:03:59,043.043 INFO    ] ================================================
[2026-08-25 09:03:59,058.058 INFO    ] Launching Daemon at Tue Aug 25 09:03:59 IST 2026
[2026-08-25 09:03:59,069.069 INFO    ] ================================================
[2026-08-25 09:03:59,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:03:59
[2026-08-25 09:04:00,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:04:00,666.666 INFO    ] Initializing speech engine...
[2026-08-25 09:04:00,679.679 INFO    ] 2026-08-25 09:04:00
[2026-08-25 09:04:00,943.943 INFO    ] 2026-08-25 09:04:00
[2026-08-25 09:04:01,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:04:01,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:04:01,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:04:01,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:04:01,420.420 INFO    ] time= 25/08/2026 09:04:01
[2026-08-25 09:04:01,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:04:01,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:04:01,665.665 INFO    ] No existing commands found in stream
[2026-08-25 09:04:06,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:04:06,693.693 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 09:04:10,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:04:10,412.412 INFO    ] Checking for system updates...
[2026-08-25 09:04:10,447.447 INFO    ] 200
[2026-08-25 09:04:10,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:10,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:04:10,505.505 INFO    ] No update needed
[2026-08-25 09:04:10,508.508 INFO    ] Checking for camera pi updates...
[2026-08-25 09:04:10,541.541 INFO    ] 200
[2026-08-25 09:04:10,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:10,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:04:10,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:04:10,635.635 INFO    ] No camera update needed
[2026-08-25 09:04:10,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:04:10,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:04:10,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:04:10,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:04:12,691.691 INFO    ] ================================================
[2026-08-25 09:04:12,706.706 INFO    ] Launching Daemon at Tue Aug 25 09:04:12 IST 2026
[2026-08-25 09:04:12,717.717 INFO    ] ================================================
[2026-08-25 09:04:13,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:04:13
[2026-08-25 09:04:13,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:04:14,124.124 INFO    ] Initializing speech engine...
[2026-08-25 09:04:14,142.142 INFO    ] 2026-08-25 09:04:14
[2026-08-25 09:04:14,395.395 INFO    ] 2026-08-25 09:04:14
[2026-08-25 09:04:14,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:04:14,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:04:14,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:04:14,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:04:14,769.769 INFO    ] time= 25/08/2026 09:04:14
[2026-08-25 09:04:14,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:04:14,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:04:14,948.948 INFO    ] No existing commands found in stream
[2026-08-25 09:04:19,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:04:19,970.970 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 09:04:20,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:04:20,639.639 INFO    ] Checking for system updates...
[2026-08-25 09:04:20,675.675 INFO    ] 200
[2026-08-25 09:04:20,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:20,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:04:20,732.732 INFO    ] No update needed
[2026-08-25 09:04:20,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 09:04:20,767.767 INFO    ] 200
[2026-08-25 09:04:20,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:20,809.809 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:04:20,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:04:20,857.857 INFO    ] No camera update needed
[2026-08-25 09:04:20,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:04:20,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:04:20,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:04:20,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:04:22,912.912 INFO    ] ================================================
[2026-08-25 09:04:22,927.927 INFO    ] Launching Daemon at Tue Aug 25 09:04:22 IST 2026
[2026-08-25 09:04:22,938.938 INFO    ] ================================================
[2026-08-25 09:04:23,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:04:23
[2026-08-25 09:04:24,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:04:24,359.359 INFO    ] Initializing speech engine...
[2026-08-25 09:04:24,368.368 INFO    ] 2026-08-25 09:04:24
[2026-08-25 09:04:24,618.618 INFO    ] 2026-08-25 09:04:24
[2026-08-25 09:04:24,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:04:24,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:04:24,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:04:25,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:04:25,095.095 INFO    ] time= 25/08/2026 09:04:25
[2026-08-25 09:04:25,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:04:25,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:04:25,316.316 INFO    ] No existing commands found in stream
[2026-08-25 09:04:30,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:04:30,346.346 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 09:04:33,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:04:33,740.740 INFO    ] Checking for system updates...
[2026-08-25 09:04:33,779.779 INFO    ] 200
[2026-08-25 09:04:33,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:33,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:04:33,836.836 INFO    ] No update needed
[2026-08-25 09:04:33,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 09:04:33,873.873 INFO    ] 200
[2026-08-25 09:04:33,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:33,916.916 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:04:33,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:04:33,963.963 INFO    ] No camera update needed
[2026-08-25 09:04:33,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:04:33,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:04:33,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:04:33,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:04:36,019.019 INFO    ] ================================================
[2026-08-25 09:04:36,035.035 INFO    ] Launching Daemon at Tue Aug 25 09:04:36 IST 2026
[2026-08-25 09:04:36,045.045 INFO    ] ================================================
[2026-08-25 09:04:36,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:04:36
[2026-08-25 09:04:37,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:04:37,570.570 INFO    ] Initializing speech engine...
[2026-08-25 09:04:37,579.579 INFO    ] 2026-08-25 09:04:37
[2026-08-25 09:04:37,827.827 INFO    ] 2026-08-25 09:04:37
[2026-08-25 09:04:37,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:04:38,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:04:38,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:04:38,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:04:38,290.290 INFO    ] time= 25/08/2026 09:04:38
[2026-08-25 09:04:38,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:04:38,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:04:38,519.519 INFO    ] No existing commands found in stream
[2026-08-25 09:04:43,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:04:43,547.547 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 09:04:47,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:04:47,343.343 INFO    ] Checking for system updates...
[2026-08-25 09:04:47,379.379 INFO    ] 200
[2026-08-25 09:04:47,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:47,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:04:47,436.436 INFO    ] No update needed
[2026-08-25 09:04:47,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 09:04:47,475.475 INFO    ] 200
[2026-08-25 09:04:47,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:47,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:04:47,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:04:47,571.571 INFO    ] No camera update needed
[2026-08-25 09:04:47,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:04:47,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:04:47,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:04:47,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:04:49,627.627 INFO    ] ================================================
[2026-08-25 09:04:49,642.642 INFO    ] Launching Daemon at Tue Aug 25 09:04:49 IST 2026
[2026-08-25 09:04:49,652.652 INFO    ] ================================================
[2026-08-25 09:04:50,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:04:50
[2026-08-25 09:04:50,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:04:51,071.071 INFO    ] Initializing speech engine...
[2026-08-25 09:04:51,079.079 INFO    ] 2026-08-25 09:04:51
[2026-08-25 09:04:51,332.332 INFO    ] 2026-08-25 09:04:51
[2026-08-25 09:04:51,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:04:51,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:04:51,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:04:51,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:04:51,701.701 INFO    ] time= 25/08/2026 09:04:51
[2026-08-25 09:04:51,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:04:51,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:04:51,811.811 INFO    ] No existing commands found in stream
[2026-08-25 09:04:56,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:04:56,836.836 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 09:04:59,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:04:59,501.501 INFO    ] Checking for system updates...
[2026-08-25 09:04:59,537.537 INFO    ] 200
[2026-08-25 09:04:59,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:59,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:04:59,597.597 INFO    ] No update needed
[2026-08-25 09:04:59,600.600 INFO    ] Checking for camera pi updates...
[2026-08-25 09:04:59,637.637 INFO    ] 200
[2026-08-25 09:04:59,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:04:59,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:04:59,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:04:59,730.730 INFO    ] No camera update needed
[2026-08-25 09:04:59,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:04:59,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:04:59,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:04:59,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:05:01,822.822 INFO    ] ================================================
[2026-08-25 09:05:01,874.874 INFO    ] Launching Daemon at Tue Aug 25 09:05:01 IST 2026
[2026-08-25 09:05:01,905.905 INFO    ] ================================================
[2026-08-25 09:05:02,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:05:02
[2026-08-25 09:05:03,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:05:03,742.742 INFO    ] Initializing speech engine...
[2026-08-25 09:05:03,756.756 INFO    ] 2026-08-25 09:05:03
[2026-08-25 09:05:04,020.020 INFO    ] 2026-08-25 09:05:04
[2026-08-25 09:05:04,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:05:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:05:04,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:05:04,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:05:04,518.518 INFO    ] time= 25/08/2026 09:05:04
[2026-08-25 09:05:04,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:05:04,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:05:04,710.710 INFO    ] No existing commands found in stream
[2026-08-25 09:05:09,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:05:09,736.736 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 09:05:10,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:05:10,620.620 INFO    ] Checking for system updates...
[2026-08-25 09:05:10,655.655 INFO    ] 200
[2026-08-25 09:05:10,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:10,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:05:10,713.713 INFO    ] No update needed
[2026-08-25 09:05:10,715.715 INFO    ] Checking for camera pi updates...
[2026-08-25 09:05:10,748.748 INFO    ] 200
[2026-08-25 09:05:10,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:10,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:05:10,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:05:10,834.834 INFO    ] No camera update needed
[2026-08-25 09:05:10,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:05:10,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:05:10,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:05:10,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:05:12,890.890 INFO    ] ================================================
[2026-08-25 09:05:12,905.905 INFO    ] Launching Daemon at Tue Aug 25 09:05:12 IST 2026
[2026-08-25 09:05:12,915.915 INFO    ] ================================================
[2026-08-25 09:05:13,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:05:13
[2026-08-25 09:05:14,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:05:14,341.341 INFO    ] Initializing speech engine...
[2026-08-25 09:05:14,357.357 INFO    ] 2026-08-25 09:05:14
[2026-08-25 09:05:14,628.628 INFO    ] 2026-08-25 09:05:14
[2026-08-25 09:05:14,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:05:14,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:05:14,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:05:15,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:05:15,116.116 INFO    ] time= 25/08/2026 09:05:15
[2026-08-25 09:05:15,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:05:15,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:05:15,295.295 INFO    ] No existing commands found in stream
[2026-08-25 09:05:20,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:05:20,310.310 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 09:05:24,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:05:24,236.236 INFO    ] Checking for system updates...
[2026-08-25 09:05:24,274.274 INFO    ] 200
[2026-08-25 09:05:24,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:24,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:05:24,331.331 INFO    ] No update needed
[2026-08-25 09:05:24,333.333 INFO    ] Checking for camera pi updates...
[2026-08-25 09:05:24,366.366 INFO    ] 200
[2026-08-25 09:05:24,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:24,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:05:24,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:05:24,460.460 INFO    ] No camera update needed
[2026-08-25 09:05:24,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:05:24,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:05:24,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:05:24,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:05:26,515.515 INFO    ] ================================================
[2026-08-25 09:05:26,530.530 INFO    ] Launching Daemon at Tue Aug 25 09:05:26 IST 2026
[2026-08-25 09:05:26,540.540 INFO    ] ================================================
[2026-08-25 09:05:27,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:05:27
[2026-08-25 09:05:27,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:05:28,094.094 INFO    ] Initializing speech engine...
[2026-08-25 09:05:28,102.102 INFO    ] 2026-08-25 09:05:28
[2026-08-25 09:05:28,371.371 INFO    ] 2026-08-25 09:05:28
[2026-08-25 09:05:28,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:05:28,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:05:28,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:05:28,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:05:28,836.836 INFO    ] time= 25/08/2026 09:05:28
[2026-08-25 09:05:28,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:05:28,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:05:29,082.082 INFO    ] No existing commands found in stream
[2026-08-25 09:05:34,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:05:34,101.101 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 09:05:34,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:05:34,646.646 INFO    ] Checking for system updates...
[2026-08-25 09:05:34,682.682 INFO    ] 200
[2026-08-25 09:05:34,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:34,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:05:34,745.745 INFO    ] No update needed
[2026-08-25 09:05:34,747.747 INFO    ] Checking for camera pi updates...
[2026-08-25 09:05:34,781.781 INFO    ] 200
[2026-08-25 09:05:34,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:34,823.823 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:05:34,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:05:34,968.968 INFO    ] No camera update needed
[2026-08-25 09:05:34,971.971 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:05:34,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:05:34,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:05:34,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:05:37,022.022 INFO    ] ================================================
[2026-08-25 09:05:37,037.037 INFO    ] Launching Daemon at Tue Aug 25 09:05:37 IST 2026
[2026-08-25 09:05:37,048.048 INFO    ] ================================================
[2026-08-25 09:05:37,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:05:37
[2026-08-25 09:05:38,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:05:38,482.482 INFO    ] Initializing speech engine...
[2026-08-25 09:05:38,498.498 INFO    ] 2026-08-25 09:05:38
[2026-08-25 09:05:38,779.779 INFO    ] 2026-08-25 09:05:38
[2026-08-25 09:05:38,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:05:39,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:05:39,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:05:39,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:05:39,160.160 INFO    ] time= 25/08/2026 09:05:39
[2026-08-25 09:05:39,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:05:39,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:05:39,264.264 INFO    ] No existing commands found in stream
[2026-08-25 09:05:44,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:05:44,280.280 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 09:05:46,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:05:46,080.080 INFO    ] Checking for system updates...
[2026-08-25 09:05:46,118.118 INFO    ] 200
[2026-08-25 09:05:46,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:46,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:05:46,176.176 INFO    ] No update needed
[2026-08-25 09:05:46,178.178 INFO    ] Checking for camera pi updates...
[2026-08-25 09:05:46,211.211 INFO    ] 200
[2026-08-25 09:05:46,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:46,254.254 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:05:46,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:05:46,298.298 INFO    ] No camera update needed
[2026-08-25 09:05:46,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:05:46,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:05:46,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:05:46,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:05:48,352.352 INFO    ] ================================================
[2026-08-25 09:05:48,367.367 INFO    ] Launching Daemon at Tue Aug 25 09:05:48 IST 2026
[2026-08-25 09:05:48,378.378 INFO    ] ================================================
[2026-08-25 09:05:48,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:05:48
[2026-08-25 09:05:49,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:05:49,816.816 INFO    ] Initializing speech engine...
[2026-08-25 09:05:49,825.825 INFO    ] 2026-08-25 09:05:49
[2026-08-25 09:05:50,116.116 INFO    ] 2026-08-25 09:05:50
[2026-08-25 09:05:50,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:05:50,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:05:50,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:05:50,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:05:50,530.530 INFO    ] time= 25/08/2026 09:05:50
[2026-08-25 09:05:50,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:05:50,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:05:50,687.687 INFO    ] No existing commands found in stream
[2026-08-25 09:05:55,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:05:55,720.720 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 09:05:58,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:05:58,438.438 INFO    ] Checking for system updates...
[2026-08-25 09:05:58,476.476 INFO    ] 200
[2026-08-25 09:05:58,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:58,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:05:58,538.538 INFO    ] No update needed
[2026-08-25 09:05:58,541.541 INFO    ] Checking for camera pi updates...
[2026-08-25 09:05:58,575.575 INFO    ] 200
[2026-08-25 09:05:58,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:05:58,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:05:58,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:05:58,672.672 INFO    ] No camera update needed
[2026-08-25 09:05:58,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:05:58,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:05:58,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:05:58,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:06:00,727.727 INFO    ] ================================================
[2026-08-25 09:06:00,742.742 INFO    ] Launching Daemon at Tue Aug 25 09:06:00 IST 2026
[2026-08-25 09:06:00,753.753 INFO    ] ================================================
[2026-08-25 09:06:01,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:06:01
[2026-08-25 09:06:02,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:06:02,315.315 INFO    ] Initializing speech engine...
[2026-08-25 09:06:02,338.338 INFO    ] 2026-08-25 09:06:02
[2026-08-25 09:06:02,637.637 INFO    ] 2026-08-25 09:06:02
[2026-08-25 09:06:02,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:06:02,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:06:02,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:06:03,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:06:03,049.049 INFO    ] time= 25/08/2026 09:06:03
[2026-08-25 09:06:03,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:06:03,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:06:03,281.281 INFO    ] No existing commands found in stream
[2026-08-25 09:06:08,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:06:08,309.309 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 09:06:09,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:06:09,377.377 INFO    ] Checking for system updates...
[2026-08-25 09:06:09,414.414 INFO    ] 200
[2026-08-25 09:06:09,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:09,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:06:09,473.473 INFO    ] No update needed
[2026-08-25 09:06:09,476.476 INFO    ] Checking for camera pi updates...
[2026-08-25 09:06:09,510.510 INFO    ] 200
[2026-08-25 09:06:09,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:09,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:06:09,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:06:09,613.613 INFO    ] No camera update needed
[2026-08-25 09:06:09,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:06:09,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:06:09,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:06:09,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:06:11,669.669 INFO    ] ================================================
[2026-08-25 09:06:11,684.684 INFO    ] Launching Daemon at Tue Aug 25 09:06:11 IST 2026
[2026-08-25 09:06:11,694.694 INFO    ] ================================================
[2026-08-25 09:06:12,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:06:12
[2026-08-25 09:06:12,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:06:13,155.155 INFO    ] Initializing speech engine...
[2026-08-25 09:06:13,162.162 INFO    ] 2026-08-25 09:06:13
[2026-08-25 09:06:13,420.420 INFO    ] 2026-08-25 09:06:13
[2026-08-25 09:06:13,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:06:13,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:06:13,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:06:13,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:06:13,875.875 INFO    ] time= 25/08/2026 09:06:13
[2026-08-25 09:06:13,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:06:13,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:06:14,101.101 INFO    ] No existing commands found in stream
[2026-08-25 09:06:19,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:06:19,131.131 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 09:06:20,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:06:20,698.698 INFO    ] Checking for system updates...
[2026-08-25 09:06:20,733.733 INFO    ] 200
[2026-08-25 09:06:20,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:20,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:20,790.790 INFO    ] No update needed
[2026-08-25 09:06:20,792.792 INFO    ] Checking for camera pi updates...
[2026-08-25 09:06:20,826.826 INFO    ] 200
[2026-08-25 09:06:20,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:20,868.868 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:06:20,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:20,916.916 INFO    ] No camera update needed
[2026-08-25 09:06:20,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:06:20,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:06:20,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:06:20,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:06:22,973.973 INFO    ] ================================================
[2026-08-25 09:06:22,989.989 INFO    ] Launching Daemon at Tue Aug 25 09:06:22 IST 2026
[2026-08-25 09:06:23,000.000 INFO    ] ================================================
[2026-08-25 09:06:23,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:06:23
[2026-08-25 09:06:24,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:06:24,428.428 INFO    ] Initializing speech engine...
[2026-08-25 09:06:24,442.442 INFO    ] 2026-08-25 09:06:24
[2026-08-25 09:06:24,708.708 INFO    ] 2026-08-25 09:06:24
[2026-08-25 09:06:24,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:06:24,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:06:24,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:06:25,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:06:25,077.077 INFO    ] time= 25/08/2026 09:06:25
[2026-08-25 09:06:25,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:06:25,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:06:25,198.198 INFO    ] No existing commands found in stream
[2026-08-25 09:06:30,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:06:30,213.213 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 09:06:33,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:06:33,043.043 INFO    ] Checking for system updates...
[2026-08-25 09:06:33,081.081 INFO    ] 200
[2026-08-25 09:06:33,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:33,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:33,137.137 INFO    ] No update needed
[2026-08-25 09:06:33,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 09:06:33,172.172 INFO    ] 200
[2026-08-25 09:06:33,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:33,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:06:33,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:33,272.272 INFO    ] No camera update needed
[2026-08-25 09:06:33,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:06:33,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:06:33,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:06:33,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:06:35,327.327 INFO    ] ================================================
[2026-08-25 09:06:35,342.342 INFO    ] Launching Daemon at Tue Aug 25 09:06:35 IST 2026
[2026-08-25 09:06:35,353.353 INFO    ] ================================================
[2026-08-25 09:06:35,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:06:35
[2026-08-25 09:06:36,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:06:36,771.771 INFO    ] Initializing speech engine...
[2026-08-25 09:06:36,780.780 INFO    ] 2026-08-25 09:06:36
[2026-08-25 09:06:37,064.064 INFO    ] 2026-08-25 09:06:37
[2026-08-25 09:06:37,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:06:37,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:06:37,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:06:37,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:06:37,535.535 INFO    ] time= 25/08/2026 09:06:37
[2026-08-25 09:06:37,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:06:37,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:06:37,749.749 INFO    ] No existing commands found in stream
[2026-08-25 09:06:42,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:06:42,766.766 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 09:06:43,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:06:43,310.310 INFO    ] Checking for system updates...
[2026-08-25 09:06:43,349.349 INFO    ] 200
[2026-08-25 09:06:43,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:43,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:43,408.408 INFO    ] No update needed
[2026-08-25 09:06:43,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 09:06:43,445.445 INFO    ] 200
[2026-08-25 09:06:43,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:43,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:06:43,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:43,538.538 INFO    ] No camera update needed
[2026-08-25 09:06:43,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:06:43,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:06:43,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:06:43,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:06:45,595.595 INFO    ] ================================================
[2026-08-25 09:06:45,610.610 INFO    ] Launching Daemon at Tue Aug 25 09:06:45 IST 2026
[2026-08-25 09:06:45,621.621 INFO    ] ================================================
[2026-08-25 09:06:46,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:06:46
[2026-08-25 09:06:46,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:06:47,084.084 INFO    ] Initializing speech engine...
[2026-08-25 09:06:47,096.096 INFO    ] 2026-08-25 09:06:47
[2026-08-25 09:06:47,350.350 INFO    ] 2026-08-25 09:06:47
[2026-08-25 09:06:47,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:06:47,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:06:47,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:06:47,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:06:47,912.912 INFO    ] time= 25/08/2026 09:06:47
[2026-08-25 09:06:47,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:06:47,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:06:48,069.069 INFO    ] No existing commands found in stream
[2026-08-25 09:06:53,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:06:53,086.086 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 09:06:57,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:06:57,499.499 INFO    ] Checking for system updates...
[2026-08-25 09:06:57,536.536 INFO    ] 200
[2026-08-25 09:06:57,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:57,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:57,594.594 INFO    ] No update needed
[2026-08-25 09:06:57,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 09:06:57,631.631 INFO    ] 200
[2026-08-25 09:06:57,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:06:57,674.674 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:06:57,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:06:57,723.723 INFO    ] No camera update needed
[2026-08-25 09:06:57,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:06:57,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:06:57,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:06:57,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:06:59,780.780 INFO    ] ================================================
[2026-08-25 09:06:59,795.795 INFO    ] Launching Daemon at Tue Aug 25 09:06:59 IST 2026
[2026-08-25 09:06:59,806.806 INFO    ] ================================================
[2026-08-25 09:07:00,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:07:00
[2026-08-25 09:07:00,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:07:01,212.212 INFO    ] Initializing speech engine...
[2026-08-25 09:07:01,235.235 INFO    ] 2026-08-25 09:07:01
[2026-08-25 09:07:01,489.489 INFO    ] 2026-08-25 09:07:01
[2026-08-25 09:07:01,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:07:01,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:07:01,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:07:01,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:07:01,875.875 INFO    ] time= 25/08/2026 09:07:01
[2026-08-25 09:07:01,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:07:01,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:07:01,962.962 INFO    ] No existing commands found in stream
[2026-08-25 09:07:06,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:07:06,976.976 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 09:07:07,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:07:07,958.958 INFO    ] Checking for system updates...
[2026-08-25 09:07:07,993.993 INFO    ] 200
[2026-08-25 09:07:07,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:08,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:08,051.051 INFO    ] No update needed
[2026-08-25 09:07:08,053.053 INFO    ] Checking for camera pi updates...
[2026-08-25 09:07:08,086.086 INFO    ] 200
[2026-08-25 09:07:08,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:08,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:07:08,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:08,176.176 INFO    ] No camera update needed
[2026-08-25 09:07:08,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:07:08,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:07:08,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:07:08,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:07:10,230.230 INFO    ] ================================================
[2026-08-25 09:07:10,245.245 INFO    ] Launching Daemon at Tue Aug 25 09:07:10 IST 2026
[2026-08-25 09:07:10,256.256 INFO    ] ================================================
[2026-08-25 09:07:10,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:07:10
[2026-08-25 09:07:11,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:07:11,665.665 INFO    ] Initializing speech engine...
[2026-08-25 09:07:11,680.680 INFO    ] 2026-08-25 09:07:11
[2026-08-25 09:07:11,962.962 INFO    ] 2026-08-25 09:07:11
[2026-08-25 09:07:11,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:07:12,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:07:12,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:07:12,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:07:12,331.331 INFO    ] time= 25/08/2026 09:07:12
[2026-08-25 09:07:12,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:07:12,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:07:12,456.456 INFO    ] No existing commands found in stream
[2026-08-25 09:07:17,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:07:17,475.475 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 09:07:19,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:07:19,016.016 INFO    ] Checking for system updates...
[2026-08-25 09:07:19,051.051 INFO    ] 200
[2026-08-25 09:07:19,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:19,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:07:19,108.108 INFO    ] No update needed
[2026-08-25 09:07:19,111.111 INFO    ] Checking for camera pi updates...
[2026-08-25 09:07:19,146.146 INFO    ] 200
[2026-08-25 09:07:19,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:19,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:07:19,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:07:19,238.238 INFO    ] No camera update needed
[2026-08-25 09:07:19,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:07:19,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:07:19,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:07:19,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:07:21,293.293 INFO    ] ================================================
[2026-08-25 09:07:21,309.309 INFO    ] Launching Daemon at Tue Aug 25 09:07:21 IST 2026
[2026-08-25 09:07:21,320.320 INFO    ] ================================================
[2026-08-25 09:07:21,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:07:21
[2026-08-25 09:07:22,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:07:22,761.761 INFO    ] Initializing speech engine...
[2026-08-25 09:07:22,768.768 INFO    ] 2026-08-25 09:07:22
[2026-08-25 09:07:23,060.060 INFO    ] 2026-08-25 09:07:23
[2026-08-25 09:07:23,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:07:23,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:07:23,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:07:23,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:07:23,473.473 INFO    ] time= 25/08/2026 09:07:23
[2026-08-25 09:07:23,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:07:23,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:07:23,644.644 INFO    ] No existing commands found in stream
[2026-08-25 09:07:28,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:07:28,670.670 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 09:07:32,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:07:32,340.340 INFO    ] Checking for system updates...
[2026-08-25 09:07:32,377.377 INFO    ] 200
[2026-08-25 09:07:32,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:32,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:32,448.448 INFO    ] No update needed
[2026-08-25 09:07:32,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 09:07:32,489.489 INFO    ] 200
[2026-08-25 09:07:32,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:32,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:07:32,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:32,596.596 INFO    ] No camera update needed
[2026-08-25 09:07:32,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:07:32,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:07:32,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:07:32,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:07:34,655.655 INFO    ] ================================================
[2026-08-25 09:07:34,671.671 INFO    ] Launching Daemon at Tue Aug 25 09:07:34 IST 2026
[2026-08-25 09:07:34,682.682 INFO    ] ================================================
[2026-08-25 09:07:35,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:07:35
[2026-08-25 09:07:35,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:07:36,136.136 INFO    ] Initializing speech engine...
[2026-08-25 09:07:36,144.144 INFO    ] 2026-08-25 09:07:36
[2026-08-25 09:07:36,443.443 INFO    ] 2026-08-25 09:07:36
[2026-08-25 09:07:36,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:07:36,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:07:36,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:07:36,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:07:36,795.795 INFO    ] time= 25/08/2026 09:07:36
[2026-08-25 09:07:36,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:07:36,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:07:36,896.896 INFO    ] No existing commands found in stream
[2026-08-25 09:07:41,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:07:41,913.913 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 09:07:43,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:07:43,763.763 INFO    ] Checking for system updates...
[2026-08-25 09:07:43,798.798 INFO    ] 200
[2026-08-25 09:07:43,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:43,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:43,855.855 INFO    ] No update needed
[2026-08-25 09:07:43,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 09:07:43,890.890 INFO    ] 200
[2026-08-25 09:07:43,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:43,932.932 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:07:44,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:44,089.089 INFO    ] No camera update needed
[2026-08-25 09:07:44,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:07:44,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:07:44,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:07:44,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:07:46,146.146 INFO    ] ================================================
[2026-08-25 09:07:46,161.161 INFO    ] Launching Daemon at Tue Aug 25 09:07:46 IST 2026
[2026-08-25 09:07:46,172.172 INFO    ] ================================================
[2026-08-25 09:07:46,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:07:46
[2026-08-25 09:07:47,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:07:47,606.606 INFO    ] Initializing speech engine...
[2026-08-25 09:07:47,611.611 INFO    ] 2026-08-25 09:07:47
[2026-08-25 09:07:47,911.911 INFO    ] 2026-08-25 09:07:47
[2026-08-25 09:07:47,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:07:48,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:07:48,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:07:48,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:07:48,334.334 INFO    ] time= 25/08/2026 09:07:48
[2026-08-25 09:07:48,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:07:48,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:07:48,423.423 INFO    ] No existing commands found in stream
[2026-08-25 09:07:53,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:07:53,440.440 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 09:07:56,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:07:56,128.128 INFO    ] Checking for system updates...
[2026-08-25 09:07:56,163.163 INFO    ] 200
[2026-08-25 09:07:56,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:56,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:56,220.220 INFO    ] No update needed
[2026-08-25 09:07:56,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 09:07:56,256.256 INFO    ] 200
[2026-08-25 09:07:56,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:07:56,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:07:56,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:07:56,353.353 INFO    ] No camera update needed
[2026-08-25 09:07:56,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:07:56,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:07:56,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:07:56,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:07:58,408.408 INFO    ] ================================================
[2026-08-25 09:07:58,423.423 INFO    ] Launching Daemon at Tue Aug 25 09:07:58 IST 2026
[2026-08-25 09:07:58,434.434 INFO    ] ================================================
[2026-08-25 09:07:59,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:07:59
[2026-08-25 09:07:59,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:07:59,892.892 INFO    ] Initializing speech engine...
[2026-08-25 09:07:59,900.900 INFO    ] 2026-08-25 09:07:59
[2026-08-25 09:08:00,161.161 INFO    ] 2026-08-25 09:08:00
[2026-08-25 09:08:00,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:08:00,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:08:00,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:08:00,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:08:00,644.644 INFO    ] time= 25/08/2026 09:08:00
[2026-08-25 09:08:00,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:08:00,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:08:00,861.861 INFO    ] No existing commands found in stream
[2026-08-25 09:08:05,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:08:05,880.880 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 09:08:08,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:08:08,514.514 INFO    ] Checking for system updates...
[2026-08-25 09:08:08,549.549 INFO    ] 200
[2026-08-25 09:08:08,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:08,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:08:08,607.607 INFO    ] No update needed
[2026-08-25 09:08:08,609.609 INFO    ] Checking for camera pi updates...
[2026-08-25 09:08:08,642.642 INFO    ] 200
[2026-08-25 09:08:08,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:08,685.685 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:08:08,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:08:08,732.732 INFO    ] No camera update needed
[2026-08-25 09:08:08,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:08:08,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:08:08,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:08:08,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:08:10,788.788 INFO    ] ================================================
[2026-08-25 09:08:10,803.803 INFO    ] Launching Daemon at Tue Aug 25 09:08:10 IST 2026
[2026-08-25 09:08:10,814.814 INFO    ] ================================================
[2026-08-25 09:08:11,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:08:11
[2026-08-25 09:08:12,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:08:12,465.465 INFO    ] Initializing speech engine...
[2026-08-25 09:08:12,477.477 INFO    ] 2026-08-25 09:08:12
[2026-08-25 09:08:12,764.764 INFO    ] 2026-08-25 09:08:12
[2026-08-25 09:08:12,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:08:13,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:08:13,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:08:13,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:08:13,224.224 INFO    ] time= 25/08/2026 09:08:13
[2026-08-25 09:08:13,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:08:13,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:08:13,421.421 INFO    ] No existing commands found in stream
[2026-08-25 09:08:18,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:08:18,450.450 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 09:08:22,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:08:22,459.459 INFO    ] Checking for system updates...
[2026-08-25 09:08:22,499.499 INFO    ] 200
[2026-08-25 09:08:22,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:22,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:08:22,555.555 INFO    ] No update needed
[2026-08-25 09:08:22,557.557 INFO    ] Checking for camera pi updates...
[2026-08-25 09:08:22,590.590 INFO    ] 200
[2026-08-25 09:08:22,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:22,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:08:22,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:08:22,688.688 INFO    ] No camera update needed
[2026-08-25 09:08:22,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:08:22,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:08:22,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:08:22,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:08:24,743.743 INFO    ] ================================================
[2026-08-25 09:08:24,758.758 INFO    ] Launching Daemon at Tue Aug 25 09:08:24 IST 2026
[2026-08-25 09:08:24,769.769 INFO    ] ================================================
[2026-08-25 09:08:25,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:08:25
[2026-08-25 09:08:26,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:08:26,320.320 INFO    ] Initializing speech engine...
[2026-08-25 09:08:26,334.334 INFO    ] 2026-08-25 09:08:26
[2026-08-25 09:08:26,643.643 INFO    ] 2026-08-25 09:08:26
[2026-08-25 09:08:26,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:08:26,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:08:26,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:08:27,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:08:27,078.078 INFO    ] time= 25/08/2026 09:08:27
[2026-08-25 09:08:27,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:08:27,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:08:27,279.279 INFO    ] No existing commands found in stream
[2026-08-25 09:08:32,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:08:32,313.313 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 09:08:34,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:08:34,559.559 INFO    ] Checking for system updates...
[2026-08-25 09:08:34,595.595 INFO    ] 200
[2026-08-25 09:08:34,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:34,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:08:34,654.654 INFO    ] No update needed
[2026-08-25 09:08:34,657.657 INFO    ] Checking for camera pi updates...
[2026-08-25 09:08:34,691.691 INFO    ] 200
[2026-08-25 09:08:34,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:34,736.736 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:08:34,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:08:34,788.788 INFO    ] No camera update needed
[2026-08-25 09:08:34,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:08:34,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:08:34,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:08:34,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:08:36,845.845 INFO    ] ================================================
[2026-08-25 09:08:36,861.861 INFO    ] Launching Daemon at Tue Aug 25 09:08:36 IST 2026
[2026-08-25 09:08:36,873.873 INFO    ] ================================================
[2026-08-25 09:08:37,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:08:37
[2026-08-25 09:08:38,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:08:38,519.519 INFO    ] Initializing speech engine...
[2026-08-25 09:08:38,530.530 INFO    ] 2026-08-25 09:08:38
[2026-08-25 09:08:38,837.837 INFO    ] 2026-08-25 09:08:38
[2026-08-25 09:08:38,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:08:39,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:08:39,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:08:39,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:08:39,347.347 INFO    ] time= 25/08/2026 09:08:39
[2026-08-25 09:08:39,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:08:39,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:08:39,536.536 INFO    ] No existing commands found in stream
[2026-08-25 09:08:44,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:08:44,571.571 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 09:08:47,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:08:47,652.652 INFO    ] Checking for system updates...
[2026-08-25 09:08:47,688.688 INFO    ] 200
[2026-08-25 09:08:47,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:47,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:08:47,753.753 INFO    ] No update needed
[2026-08-25 09:08:47,755.755 INFO    ] Checking for camera pi updates...
[2026-08-25 09:08:47,789.789 INFO    ] 200
[2026-08-25 09:08:47,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:47,833.833 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:08:47,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:08:47,902.902 INFO    ] No camera update needed
[2026-08-25 09:08:47,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:08:47,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:08:47,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:08:47,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:08:49,957.957 INFO    ] ================================================
[2026-08-25 09:08:49,973.973 INFO    ] Launching Daemon at Tue Aug 25 09:08:49 IST 2026
[2026-08-25 09:08:49,983.983 INFO    ] ================================================
[2026-08-25 09:08:50,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:08:50
[2026-08-25 09:08:51,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:08:51,616.616 INFO    ] Initializing speech engine...
[2026-08-25 09:08:51,625.625 INFO    ] 2026-08-25 09:08:51
[2026-08-25 09:08:51,871.871 INFO    ] 2026-08-25 09:08:51
[2026-08-25 09:08:51,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:08:52,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:08:52,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:08:52,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:08:52,344.344 INFO    ] time= 25/08/2026 09:08:52
[2026-08-25 09:08:52,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:08:52,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:08:52,542.542 INFO    ] No existing commands found in stream
[2026-08-25 09:08:57,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:08:57,572.572 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 09:08:58,248.248 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:08:58,251.251 INFO    ] Checking for system updates...
[2026-08-25 09:08:58,288.288 INFO    ] 200
[2026-08-25 09:08:58,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:58,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:08:58,355.355 INFO    ] No update needed
[2026-08-25 09:08:58,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 09:08:58,392.392 INFO    ] 200
[2026-08-25 09:08:58,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:08:58,435.435 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:08:58,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:08:58,503.503 INFO    ] No camera update needed
[2026-08-25 09:08:58,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:08:58,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:08:58,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:08:58,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:09:00,561.561 INFO    ] ================================================
[2026-08-25 09:09:00,577.577 INFO    ] Launching Daemon at Tue Aug 25 09:09:00 IST 2026
[2026-08-25 09:09:00,587.587 INFO    ] ================================================
[2026-08-25 09:09:01,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:09:01
[2026-08-25 09:09:01,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:09:02,353.353 INFO    ] Initializing speech engine...
[2026-08-25 09:09:02,357.357 INFO    ] 2026-08-25 09:09:02
[2026-08-25 09:09:02,825.825 INFO    ] 2026-08-25 09:09:02
[2026-08-25 09:09:02,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:09:03,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:09:03,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:09:03,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:09:03,368.368 INFO    ] time= 25/08/2026 09:09:03
[2026-08-25 09:09:03,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:09:03,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:09:03,520.520 INFO    ] No existing commands found in stream
[2026-08-25 09:09:08,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:09:08,549.549 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 09:09:11,125.125 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:09:11,127.127 INFO    ] Checking for system updates...
[2026-08-25 09:09:11,163.163 INFO    ] 200
[2026-08-25 09:09:11,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:11,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:09:11,229.229 INFO    ] No update needed
[2026-08-25 09:09:11,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 09:09:11,264.264 INFO    ] 200
[2026-08-25 09:09:11,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:11,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:09:11,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:09:11,498.498 INFO    ] No camera update needed
[2026-08-25 09:09:11,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:09:11,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:09:11,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:09:11,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:09:13,556.556 INFO    ] ================================================
[2026-08-25 09:09:13,572.572 INFO    ] Launching Daemon at Tue Aug 25 09:09:13 IST 2026
[2026-08-25 09:09:13,583.583 INFO    ] ================================================
[2026-08-25 09:09:14,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:09:14
[2026-08-25 09:09:14,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:09:15,235.235 INFO    ] Initializing speech engine...
[2026-08-25 09:09:15,246.246 INFO    ] 2026-08-25 09:09:15
[2026-08-25 09:09:15,562.562 INFO    ] 2026-08-25 09:09:15
[2026-08-25 09:09:15,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:09:15,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:09:15,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:09:16,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:09:16,082.082 INFO    ] time= 25/08/2026 09:09:16
[2026-08-25 09:09:16,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:09:16,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:09:16,217.217 INFO    ] No existing commands found in stream
[2026-08-25 09:09:21,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:09:21,251.251 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 09:09:25,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:09:25,509.509 INFO    ] Checking for system updates...
[2026-08-25 09:09:25,546.546 INFO    ] 200
[2026-08-25 09:09:25,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:25,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:09:25,612.612 INFO    ] No update needed
[2026-08-25 09:09:25,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 09:09:25,650.650 INFO    ] 200
[2026-08-25 09:09:25,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:25,694.694 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:09:25,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:09:25,749.749 INFO    ] No camera update needed
[2026-08-25 09:09:25,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:09:25,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:09:25,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:09:25,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:09:27,806.806 INFO    ] ================================================
[2026-08-25 09:09:27,822.822 INFO    ] Launching Daemon at Tue Aug 25 09:09:27 IST 2026
[2026-08-25 09:09:27,834.834 INFO    ] ================================================
[2026-08-25 09:09:28,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:09:28
[2026-08-25 09:09:29,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:09:29,413.413 INFO    ] Initializing speech engine...
[2026-08-25 09:09:29,422.422 INFO    ] 2026-08-25 09:09:29
[2026-08-25 09:09:29,745.745 INFO    ] 2026-08-25 09:09:29
[2026-08-25 09:09:29,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:09:30,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:09:30,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:09:30,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:09:30,263.263 INFO    ] time= 25/08/2026 09:09:30
[2026-08-25 09:09:30,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:09:30,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:09:30,427.427 INFO    ] No existing commands found in stream
[2026-08-25 09:09:35,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:09:35,450.450 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 09:09:39,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:09:39,220.220 INFO    ] Checking for system updates...
[2026-08-25 09:09:39,257.257 INFO    ] 200
[2026-08-25 09:09:39,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:39,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:09:39,315.315 INFO    ] No update needed
[2026-08-25 09:09:39,318.318 INFO    ] Checking for camera pi updates...
[2026-08-25 09:09:39,352.352 INFO    ] 200
[2026-08-25 09:09:39,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:39,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:09:39,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:09:39,451.451 INFO    ] No camera update needed
[2026-08-25 09:09:39,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:09:39,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:09:39,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:09:39,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:09:41,512.512 INFO    ] ================================================
[2026-08-25 09:09:41,528.528 INFO    ] Launching Daemon at Tue Aug 25 09:09:41 IST 2026
[2026-08-25 09:09:41,539.539 INFO    ] ================================================
[2026-08-25 09:09:42,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:09:42
[2026-08-25 09:09:42,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:09:43,174.174 INFO    ] Initializing speech engine...
[2026-08-25 09:09:43,182.182 INFO    ] 2026-08-25 09:09:43
[2026-08-25 09:09:43,452.452 INFO    ] 2026-08-25 09:09:43
[2026-08-25 09:09:43,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:09:43,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:09:43,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:09:43,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:09:44,009.009 INFO    ] time= 25/08/2026 09:09:43
[2026-08-25 09:09:44,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:09:44,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:09:44,187.187 INFO    ] No existing commands found in stream
[2026-08-25 09:09:49,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:09:49,221.221 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 09:09:50,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:09:50,789.789 INFO    ] Checking for system updates...
[2026-08-25 09:09:50,830.830 INFO    ] 200
[2026-08-25 09:09:50,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:50,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:09:50,891.891 INFO    ] No update needed
[2026-08-25 09:09:50,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 09:09:50,936.936 INFO    ] 200
[2026-08-25 09:09:50,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:09:50,980.980 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:09:51,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:09:51,128.128 INFO    ] No camera update needed
[2026-08-25 09:09:51,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:09:51,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:09:51,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:09:51,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:09:53,186.186 INFO    ] ================================================
[2026-08-25 09:09:53,203.203 INFO    ] Launching Daemon at Tue Aug 25 09:09:53 IST 2026
[2026-08-25 09:09:53,214.214 INFO    ] ================================================
[2026-08-25 09:09:53,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:09:53
[2026-08-25 09:09:54,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:09:54,806.806 INFO    ] Initializing speech engine...
[2026-08-25 09:09:54,818.818 INFO    ] 2026-08-25 09:09:54
[2026-08-25 09:09:55,107.107 INFO    ] 2026-08-25 09:09:55
[2026-08-25 09:09:55,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:09:55,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:09:55,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:09:55,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:09:55,652.652 INFO    ] time= 25/08/2026 09:09:55
[2026-08-25 09:09:55,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:09:55,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:09:55,819.819 INFO    ] No existing commands found in stream
[2026-08-25 09:10:00,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:10:00,852.852 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 09:10:02,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:10:02,246.246 INFO    ] Checking for system updates...
[2026-08-25 09:10:02,362.362 INFO    ] 200
[2026-08-25 09:10:02,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:02,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:10:02,512.512 INFO    ] No update needed
[2026-08-25 09:10:02,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 09:10:02,613.613 INFO    ] 200
[2026-08-25 09:10:02,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:02,685.685 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:10:02,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:10:02,860.860 INFO    ] No camera update needed
[2026-08-25 09:10:02,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:10:02,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:10:02,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:10:02,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:10:04,925.925 INFO    ] ================================================
[2026-08-25 09:10:04,941.941 INFO    ] Launching Daemon at Tue Aug 25 09:10:04 IST 2026
[2026-08-25 09:10:04,952.952 INFO    ] ================================================
[2026-08-25 09:10:05,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:10:05
[2026-08-25 09:10:06,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:10:06,360.360 INFO    ] Initializing speech engine...
[2026-08-25 09:10:06,371.371 INFO    ] 2026-08-25 09:10:06
[2026-08-25 09:10:06,632.632 INFO    ] 2026-08-25 09:10:06
[2026-08-25 09:10:06,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:10:06,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:10:06,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:10:07,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:10:07,010.010 INFO    ] time= 25/08/2026 09:10:07
[2026-08-25 09:10:07,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:10:07,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:10:07,189.189 INFO    ] No existing commands found in stream
[2026-08-25 09:10:12,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:10:12,217.217 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 09:10:13,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:10:13,359.359 INFO    ] Checking for system updates...
[2026-08-25 09:10:13,395.395 INFO    ] 200
[2026-08-25 09:10:13,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:13,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:13,452.452 INFO    ] No update needed
[2026-08-25 09:10:13,455.455 INFO    ] Checking for camera pi updates...
[2026-08-25 09:10:13,492.492 INFO    ] 200
[2026-08-25 09:10:13,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:13,536.536 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:10:13,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:13,588.588 INFO    ] No camera update needed
[2026-08-25 09:10:13,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:10:13,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:10:13,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:10:13,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:10:15,645.645 INFO    ] ================================================
[2026-08-25 09:10:15,661.661 INFO    ] Launching Daemon at Tue Aug 25 09:10:15 IST 2026
[2026-08-25 09:10:15,672.672 INFO    ] ================================================
[2026-08-25 09:10:16,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:10:16
[2026-08-25 09:10:16,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:10:17,091.091 INFO    ] Initializing speech engine...
[2026-08-25 09:10:17,100.100 INFO    ] 2026-08-25 09:10:17
[2026-08-25 09:10:17,350.350 INFO    ] 2026-08-25 09:10:17
[2026-08-25 09:10:17,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:10:17,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:10:17,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:10:17,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:10:17,805.805 INFO    ] time= 25/08/2026 09:10:17
[2026-08-25 09:10:17,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:10:17,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:10:17,985.985 INFO    ] No existing commands found in stream
[2026-08-25 09:10:23,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:10:23,017.017 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 09:10:24,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:10:24,176.176 INFO    ] Checking for system updates...
[2026-08-25 09:10:24,211.211 INFO    ] 200
[2026-08-25 09:10:24,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:24,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:10:24,268.268 INFO    ] No update needed
[2026-08-25 09:10:24,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 09:10:24,307.307 INFO    ] 200
[2026-08-25 09:10:24,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:24,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:10:24,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:10:24,402.402 INFO    ] No camera update needed
[2026-08-25 09:10:24,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:10:24,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:10:24,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:10:24,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:10:26,461.461 INFO    ] ================================================
[2026-08-25 09:10:26,476.476 INFO    ] Launching Daemon at Tue Aug 25 09:10:26 IST 2026
[2026-08-25 09:10:26,487.487 INFO    ] ================================================
[2026-08-25 09:10:27,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:10:27
[2026-08-25 09:10:27,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:10:27,952.952 INFO    ] Initializing speech engine...
[2026-08-25 09:10:27,961.961 INFO    ] 2026-08-25 09:10:27
[2026-08-25 09:10:28,246.246 INFO    ] 2026-08-25 09:10:28
[2026-08-25 09:10:28,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:10:28,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:10:28,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:10:28,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:10:28,788.788 INFO    ] time= 25/08/2026 09:10:28
[2026-08-25 09:10:28,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:10:28,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:10:28,941.941 INFO    ] No existing commands found in stream
[2026-08-25 09:10:33,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:10:33,958.958 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 09:10:35,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:10:35,708.708 INFO    ] Checking for system updates...
[2026-08-25 09:10:35,744.744 INFO    ] 200
[2026-08-25 09:10:35,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:35,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:35,801.801 INFO    ] No update needed
[2026-08-25 09:10:35,803.803 INFO    ] Checking for camera pi updates...
[2026-08-25 09:10:35,836.836 INFO    ] 200
[2026-08-25 09:10:35,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:35,878.878 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:10:35,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:35,931.931 INFO    ] No camera update needed
[2026-08-25 09:10:35,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:10:35,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:10:35,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:10:35,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:10:37,985.985 INFO    ] ================================================
[2026-08-25 09:10:38,000.000 INFO    ] Launching Daemon at Tue Aug 25 09:10:37 IST 2026
[2026-08-25 09:10:38,010.010 INFO    ] ================================================
[2026-08-25 09:10:38,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:10:38
[2026-08-25 09:10:39,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:10:39,418.418 INFO    ] Initializing speech engine...
[2026-08-25 09:10:39,424.424 INFO    ] 2026-08-25 09:10:39
[2026-08-25 09:10:39,717.717 INFO    ] 2026-08-25 09:10:39
[2026-08-25 09:10:39,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:10:39,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:10:39,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:10:40,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:10:40,116.116 INFO    ] time= 25/08/2026 09:10:40
[2026-08-25 09:10:40,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:10:40,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:10:40,299.299 INFO    ] No existing commands found in stream
[2026-08-25 09:10:45,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:10:45,329.329 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 09:10:47,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:10:47,399.399 INFO    ] Checking for system updates...
[2026-08-25 09:10:47,434.434 INFO    ] 200
[2026-08-25 09:10:47,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:47,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:47,492.492 INFO    ] No update needed
[2026-08-25 09:10:47,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 09:10:47,528.528 INFO    ] 200
[2026-08-25 09:10:47,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:47,575.575 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:10:47,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:47,625.625 INFO    ] No camera update needed
[2026-08-25 09:10:47,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:10:47,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:10:47,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:10:47,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:10:49,680.680 INFO    ] ================================================
[2026-08-25 09:10:49,695.695 INFO    ] Launching Daemon at Tue Aug 25 09:10:49 IST 2026
[2026-08-25 09:10:49,706.706 INFO    ] ================================================
[2026-08-25 09:10:50,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:10:50
[2026-08-25 09:10:50,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:10:51,119.119 INFO    ] Initializing speech engine...
[2026-08-25 09:10:51,127.127 INFO    ] 2026-08-25 09:10:51
[2026-08-25 09:10:51,419.419 INFO    ] 2026-08-25 09:10:51
[2026-08-25 09:10:51,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:10:51,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:10:51,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:10:51,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:10:51,792.792 INFO    ] time= 25/08/2026 09:10:51
[2026-08-25 09:10:51,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:10:51,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:10:51,903.903 INFO    ] No existing commands found in stream
[2026-08-25 09:10:56,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:10:56,929.929 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 09:10:59,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:10:59,409.409 INFO    ] Checking for system updates...
[2026-08-25 09:10:59,448.448 INFO    ] 200
[2026-08-25 09:10:59,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:59,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:59,510.510 INFO    ] No update needed
[2026-08-25 09:10:59,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 09:10:59,546.546 INFO    ] 200
[2026-08-25 09:10:59,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:10:59,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:10:59,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:10:59,644.644 INFO    ] No camera update needed
[2026-08-25 09:10:59,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:10:59,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:10:59,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:10:59,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:11:01,705.705 INFO    ] ================================================
[2026-08-25 09:11:01,726.726 INFO    ] Launching Daemon at Tue Aug 25 09:11:01 IST 2026
[2026-08-25 09:11:01,738.738 INFO    ] ================================================
[2026-08-25 09:11:02,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:11:02
[2026-08-25 09:11:03,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:11:03,325.325 INFO    ] Initializing speech engine...
[2026-08-25 09:11:03,330.330 INFO    ] 2026-08-25 09:11:03
[2026-08-25 09:11:03,590.590 INFO    ] 2026-08-25 09:11:03
[2026-08-25 09:11:03,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:11:03,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:11:03,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:11:03,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:11:03,990.990 INFO    ] time= 25/08/2026 09:11:03
[2026-08-25 09:11:03,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:11:04,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:11:04,075.075 INFO    ] No existing commands found in stream
[2026-08-25 09:11:09,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:11:09,110.110 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 09:11:12,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:11:12,167.167 INFO    ] Checking for system updates...
[2026-08-25 09:11:12,205.205 INFO    ] 200
[2026-08-25 09:11:12,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:12,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:12,265.265 INFO    ] No update needed
[2026-08-25 09:11:12,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 09:11:12,303.303 INFO    ] 200
[2026-08-25 09:11:12,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:12,346.346 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:11:12,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:12,398.398 INFO    ] No camera update needed
[2026-08-25 09:11:12,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:11:12,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:11:12,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:11:12,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:11:14,455.455 INFO    ] ================================================
[2026-08-25 09:11:14,471.471 INFO    ] Launching Daemon at Tue Aug 25 09:11:14 IST 2026
[2026-08-25 09:11:14,482.482 INFO    ] ================================================
[2026-08-25 09:11:15,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:11:15
[2026-08-25 09:11:15,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:11:16,036.036 INFO    ] Initializing speech engine...
[2026-08-25 09:11:16,047.047 INFO    ] 2026-08-25 09:11:16
[2026-08-25 09:11:16,321.321 INFO    ] 2026-08-25 09:11:16
[2026-08-25 09:11:16,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:11:16,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:11:16,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:11:16,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:11:16,779.779 INFO    ] time= 25/08/2026 09:11:16
[2026-08-25 09:11:16,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:11:16,874.874 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:11:17,020.020 INFO    ] No existing commands found in stream
[2026-08-25 09:11:22,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:11:22,041.041 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 09:11:23,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:11:23,451.451 INFO    ] Checking for system updates...
[2026-08-25 09:11:23,489.489 INFO    ] 200
[2026-08-25 09:11:23,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:23,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:23,546.546 INFO    ] No update needed
[2026-08-25 09:11:23,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 09:11:23,588.588 INFO    ] 200
[2026-08-25 09:11:23,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:23,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:11:23,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:23,684.684 INFO    ] No camera update needed
[2026-08-25 09:11:23,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:11:23,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:11:23,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:11:23,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:11:25,739.739 INFO    ] ================================================
[2026-08-25 09:11:25,755.755 INFO    ] Launching Daemon at Tue Aug 25 09:11:25 IST 2026
[2026-08-25 09:11:25,766.766 INFO    ] ================================================
[2026-08-25 09:11:26,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:11:26
[2026-08-25 09:11:26,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:11:27,162.162 INFO    ] Initializing speech engine...
[2026-08-25 09:11:27,178.178 INFO    ] 2026-08-25 09:11:27
[2026-08-25 09:11:27,452.452 INFO    ] 2026-08-25 09:11:27
[2026-08-25 09:11:27,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:11:27,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:11:27,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:11:27,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:11:27,852.852 INFO    ] time= 25/08/2026 09:11:27
[2026-08-25 09:11:27,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:11:27,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:11:27,951.951 INFO    ] No existing commands found in stream
[2026-08-25 09:11:32,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:11:32,983.983 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 09:11:33,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:11:33,947.947 INFO    ] Checking for system updates...
[2026-08-25 09:11:33,983.983 INFO    ] 200
[2026-08-25 09:11:33,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:34,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:34,040.040 INFO    ] No update needed
[2026-08-25 09:11:34,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 09:11:34,079.079 INFO    ] 200
[2026-08-25 09:11:34,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:34,126.126 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:11:34,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:34,185.185 INFO    ] No camera update needed
[2026-08-25 09:11:34,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:11:34,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:11:34,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:11:34,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:11:36,241.241 INFO    ] ================================================
[2026-08-25 09:11:36,257.257 INFO    ] Launching Daemon at Tue Aug 25 09:11:36 IST 2026
[2026-08-25 09:11:36,267.267 INFO    ] ================================================
[2026-08-25 09:11:36,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:11:36
[2026-08-25 09:11:37,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:11:37,720.720 INFO    ] Initializing speech engine...
[2026-08-25 09:11:37,729.729 INFO    ] 2026-08-25 09:11:37
[2026-08-25 09:11:37,990.990 INFO    ] 2026-08-25 09:11:37
[2026-08-25 09:11:38,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:11:38,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:11:38,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:11:38,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:11:38,463.463 INFO    ] time= 25/08/2026 09:11:38
[2026-08-25 09:11:38,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:11:38,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:11:38,699.699 INFO    ] No existing commands found in stream
[2026-08-25 09:11:43,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:11:43,713.713 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 09:11:46,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:11:46,706.706 INFO    ] Checking for system updates...
[2026-08-25 09:11:46,741.741 INFO    ] 200
[2026-08-25 09:11:46,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:46,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:46,802.802 INFO    ] No update needed
[2026-08-25 09:11:46,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 09:11:46,840.840 INFO    ] 200
[2026-08-25 09:11:46,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:46,885.885 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:11:46,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:11:46,935.935 INFO    ] No camera update needed
[2026-08-25 09:11:46,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:11:46,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:11:46,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:11:46,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:11:48,990.990 INFO    ] ================================================
[2026-08-25 09:11:49,006.006 INFO    ] Launching Daemon at Tue Aug 25 09:11:49 IST 2026
[2026-08-25 09:11:49,017.017 INFO    ] ================================================
[2026-08-25 09:11:49,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:11:49
[2026-08-25 09:11:50,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:11:50,587.587 INFO    ] Initializing speech engine...
[2026-08-25 09:11:50,593.593 INFO    ] 2026-08-25 09:11:50
[2026-08-25 09:11:50,899.899 INFO    ] 2026-08-25 09:11:50
[2026-08-25 09:11:50,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:11:51,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:11:51,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:11:51,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:11:51,421.421 INFO    ] time= 25/08/2026 09:11:51
[2026-08-25 09:11:51,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:11:51,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:11:51,580.580 INFO    ] No existing commands found in stream
[2026-08-25 09:11:56,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:11:56,602.602 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 09:11:58,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:11:58,363.363 INFO    ] Checking for system updates...
[2026-08-25 09:11:58,399.399 INFO    ] 200
[2026-08-25 09:11:58,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:58,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:11:58,462.462 INFO    ] No update needed
[2026-08-25 09:11:58,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 09:11:58,504.504 INFO    ] 200
[2026-08-25 09:11:58,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:11:58,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:11:58,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:11:58,708.708 INFO    ] No camera update needed
[2026-08-25 09:11:58,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:11:58,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:11:58,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:11:58,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:12:00,765.765 INFO    ] ================================================
[2026-08-25 09:12:00,786.786 INFO    ] Launching Daemon at Tue Aug 25 09:12:00 IST 2026
[2026-08-25 09:12:00,796.796 INFO    ] ================================================
[2026-08-25 09:12:01,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:12:01
[2026-08-25 09:12:02,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:12:02,422.422 INFO    ] Initializing speech engine...
[2026-08-25 09:12:02,429.429 INFO    ] 2026-08-25 09:12:02
[2026-08-25 09:12:02,738.738 INFO    ] 2026-08-25 09:12:02
[2026-08-25 09:12:02,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:12:02,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:12:02,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:12:03,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:12:03,122.122 INFO    ] time= 25/08/2026 09:12:03
[2026-08-25 09:12:03,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:12:03,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:12:03,253.253 INFO    ] No existing commands found in stream
[2026-08-25 09:12:08,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:12:08,281.281 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 09:12:11,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:12:11,109.109 INFO    ] Checking for system updates...
[2026-08-25 09:12:11,146.146 INFO    ] 200
[2026-08-25 09:12:11,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:11,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:11,207.207 INFO    ] No update needed
[2026-08-25 09:12:11,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 09:12:11,246.246 INFO    ] 200
[2026-08-25 09:12:11,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:11,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:12:11,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:11,342.342 INFO    ] No camera update needed
[2026-08-25 09:12:11,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:12:11,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:12:11,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:12:11,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:12:13,397.397 INFO    ] ================================================
[2026-08-25 09:12:13,413.413 INFO    ] Launching Daemon at Tue Aug 25 09:12:13 IST 2026
[2026-08-25 09:12:13,423.423 INFO    ] ================================================
[2026-08-25 09:12:14,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:12:14
[2026-08-25 09:12:14,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:12:14,873.873 INFO    ] Initializing speech engine...
[2026-08-25 09:12:14,879.879 INFO    ] 2026-08-25 09:12:14
[2026-08-25 09:12:15,177.177 INFO    ] 2026-08-25 09:12:15
[2026-08-25 09:12:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:12:15,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:12:15,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:12:15,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:12:15,590.590 INFO    ] time= 25/08/2026 09:12:15
[2026-08-25 09:12:15,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:12:15,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:12:15,682.682 INFO    ] No existing commands found in stream
[2026-08-25 09:12:20,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:12:20,715.715 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 09:12:22,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:12:22,300.300 INFO    ] Checking for system updates...
[2026-08-25 09:12:22,338.338 INFO    ] 200
[2026-08-25 09:12:22,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:22,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:12:22,401.401 INFO    ] No update needed
[2026-08-25 09:12:22,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 09:12:22,440.440 INFO    ] 200
[2026-08-25 09:12:22,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:22,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:12:22,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:12:22,528.528 INFO    ] No camera update needed
[2026-08-25 09:12:22,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:12:22,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:12:22,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:12:22,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:12:24,582.582 INFO    ] ================================================
[2026-08-25 09:12:24,597.597 INFO    ] Launching Daemon at Tue Aug 25 09:12:24 IST 2026
[2026-08-25 09:12:24,608.608 INFO    ] ================================================
[2026-08-25 09:12:25,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:12:25
[2026-08-25 09:12:25,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:12:26,040.040 INFO    ] Initializing speech engine...
[2026-08-25 09:12:26,045.045 INFO    ] 2026-08-25 09:12:26
[2026-08-25 09:12:26,294.294 INFO    ] 2026-08-25 09:12:26
[2026-08-25 09:12:26,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:12:26,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:12:26,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:12:26,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:12:26,847.847 INFO    ] time= 25/08/2026 09:12:26
[2026-08-25 09:12:26,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:12:26,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:12:26,997.997 INFO    ] No existing commands found in stream
[2026-08-25 09:12:32,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:12:32,028.028 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 09:12:34,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:12:34,576.576 INFO    ] Checking for system updates...
[2026-08-25 09:12:34,611.611 INFO    ] 200
[2026-08-25 09:12:34,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:34,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:34,674.674 INFO    ] No update needed
[2026-08-25 09:12:34,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 09:12:34,710.710 INFO    ] 200
[2026-08-25 09:12:34,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:34,752.752 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:12:34,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:34,803.803 INFO    ] No camera update needed
[2026-08-25 09:12:34,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:12:34,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:12:34,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:12:34,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:12:36,858.858 INFO    ] ================================================
[2026-08-25 09:12:36,874.874 INFO    ] Launching Daemon at Tue Aug 25 09:12:36 IST 2026
[2026-08-25 09:12:36,885.885 INFO    ] ================================================
[2026-08-25 09:12:37,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:12:37
[2026-08-25 09:12:38,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:12:38,288.288 INFO    ] Initializing speech engine...
[2026-08-25 09:12:38,307.307 INFO    ] 2026-08-25 09:12:38
[2026-08-25 09:12:38,567.567 INFO    ] 2026-08-25 09:12:38
[2026-08-25 09:12:38,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:12:38,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:12:38,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:12:39,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:12:39,044.044 INFO    ] time= 25/08/2026 09:12:39
[2026-08-25 09:12:39,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:12:39,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:12:39,268.268 INFO    ] No existing commands found in stream
[2026-08-25 09:12:44,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:12:44,301.301 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 09:12:47,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:12:47,558.558 INFO    ] Checking for system updates...
[2026-08-25 09:12:47,593.593 INFO    ] 200
[2026-08-25 09:12:47,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:47,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:47,654.654 INFO    ] No update needed
[2026-08-25 09:12:47,656.656 INFO    ] Checking for camera pi updates...
[2026-08-25 09:12:47,689.689 INFO    ] 200
[2026-08-25 09:12:47,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:47,738.738 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:12:47,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:47,797.797 INFO    ] No camera update needed
[2026-08-25 09:12:47,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:12:47,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:12:47,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:12:47,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:12:49,852.852 INFO    ] ================================================
[2026-08-25 09:12:49,872.872 INFO    ] Launching Daemon at Tue Aug 25 09:12:49 IST 2026
[2026-08-25 09:12:49,883.883 INFO    ] ================================================
[2026-08-25 09:12:50,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:12:50
[2026-08-25 09:12:51,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:12:51,334.334 INFO    ] Initializing speech engine...
[2026-08-25 09:12:51,343.343 INFO    ] 2026-08-25 09:12:51
[2026-08-25 09:12:51,605.605 INFO    ] 2026-08-25 09:12:51
[2026-08-25 09:12:51,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:12:51,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:12:51,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:12:52,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:12:52,090.090 INFO    ] time= 25/08/2026 09:12:52
[2026-08-25 09:12:52,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:12:52,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:12:52,304.304 INFO    ] No existing commands found in stream
[2026-08-25 09:12:57,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:12:57,320.320 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 09:12:59,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:12:59,575.575 INFO    ] Checking for system updates...
[2026-08-25 09:12:59,612.612 INFO    ] 200
[2026-08-25 09:12:59,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:59,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:59,677.677 INFO    ] No update needed
[2026-08-25 09:12:59,680.680 INFO    ] Checking for camera pi updates...
[2026-08-25 09:12:59,718.718 INFO    ] 200
[2026-08-25 09:12:59,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:12:59,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:12:59,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:12:59,820.820 INFO    ] No camera update needed
[2026-08-25 09:12:59,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:12:59,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:12:59,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:12:59,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:13:01,884.884 INFO    ] ================================================
[2026-08-25 09:13:01,907.907 INFO    ] Launching Daemon at Tue Aug 25 09:13:01 IST 2026
[2026-08-25 09:13:01,922.922 INFO    ] ================================================
[2026-08-25 09:13:02,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:13:02
[2026-08-25 09:13:03,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:13:03,585.585 INFO    ] Initializing speech engine...
[2026-08-25 09:13:03,592.592 INFO    ] 2026-08-25 09:13:03
[2026-08-25 09:13:03,840.840 INFO    ] 2026-08-25 09:13:03
[2026-08-25 09:13:03,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:13:04,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:13:04,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:13:04,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:13:04,209.209 INFO    ] time= 25/08/2026 09:13:04
[2026-08-25 09:13:04,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:13:04,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:13:04,344.344 INFO    ] No existing commands found in stream
[2026-08-25 09:13:09,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:13:09,377.377 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 09:13:09,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:13:09,944.944 INFO    ] Checking for system updates...
[2026-08-25 09:13:09,980.980 INFO    ] 200
[2026-08-25 09:13:09,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:10,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:13:10,041.041 INFO    ] No update needed
[2026-08-25 09:13:10,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 09:13:10,076.076 INFO    ] 200
[2026-08-25 09:13:10,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:10,119.119 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:13:10,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:13:10,181.181 INFO    ] No camera update needed
[2026-08-25 09:13:10,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:13:10,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:13:10,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:13:10,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:13:12,238.238 INFO    ] ================================================
[2026-08-25 09:13:12,253.253 INFO    ] Launching Daemon at Tue Aug 25 09:13:12 IST 2026
[2026-08-25 09:13:12,264.264 INFO    ] ================================================
[2026-08-25 09:13:12,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:13:12
[2026-08-25 09:13:13,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:13:13,687.687 INFO    ] Initializing speech engine...
[2026-08-25 09:13:13,695.695 INFO    ] 2026-08-25 09:13:13
[2026-08-25 09:13:13,989.989 INFO    ] 2026-08-25 09:13:13
[2026-08-25 09:13:14,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:13:14,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:13:14,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:13:14,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:13:14,368.368 INFO    ] time= 25/08/2026 09:13:14
[2026-08-25 09:13:14,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:13:14,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:13:14,496.496 INFO    ] No existing commands found in stream
[2026-08-25 09:13:19,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:13:19,513.513 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 09:13:22,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:13:22,192.192 INFO    ] Checking for system updates...
[2026-08-25 09:13:22,230.230 INFO    ] 200
[2026-08-25 09:13:22,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:22,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:13:22,288.288 INFO    ] No update needed
[2026-08-25 09:13:22,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 09:13:22,324.324 INFO    ] 200
[2026-08-25 09:13:22,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:22,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:13:22,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:13:22,414.414 INFO    ] No camera update needed
[2026-08-25 09:13:22,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:13:22,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:13:22,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:13:22,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:13:24,470.470 INFO    ] ================================================
[2026-08-25 09:13:24,486.486 INFO    ] Launching Daemon at Tue Aug 25 09:13:24 IST 2026
[2026-08-25 09:13:24,497.497 INFO    ] ================================================
[2026-08-25 09:13:25,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:13:25
[2026-08-25 09:13:25,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:13:25,937.937 INFO    ] Initializing speech engine...
[2026-08-25 09:13:25,946.946 INFO    ] 2026-08-25 09:13:25
[2026-08-25 09:13:26,209.209 INFO    ] 2026-08-25 09:13:26
[2026-08-25 09:13:26,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:13:26,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:13:26,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:13:26,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:13:26,695.695 INFO    ] time= 25/08/2026 09:13:26
[2026-08-25 09:13:26,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:13:26,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:13:26,903.903 INFO    ] No existing commands found in stream
[2026-08-25 09:13:31,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:13:31,918.918 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 09:13:33,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:13:33,423.423 INFO    ] Checking for system updates...
[2026-08-25 09:13:33,459.459 INFO    ] 200
[2026-08-25 09:13:33,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:33,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:13:33,517.517 INFO    ] No update needed
[2026-08-25 09:13:33,520.520 INFO    ] Checking for camera pi updates...
[2026-08-25 09:13:33,553.553 INFO    ] 200
[2026-08-25 09:13:33,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:33,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:13:33,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:13:33,680.680 INFO    ] No camera update needed
[2026-08-25 09:13:33,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:13:33,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:13:33,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:13:33,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:13:35,736.736 INFO    ] ================================================
[2026-08-25 09:13:35,751.751 INFO    ] Launching Daemon at Tue Aug 25 09:13:35 IST 2026
[2026-08-25 09:13:35,762.762 INFO    ] ================================================
[2026-08-25 09:13:36,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:13:36
[2026-08-25 09:13:36,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:13:37,189.189 INFO    ] Initializing speech engine...
[2026-08-25 09:13:37,197.197 INFO    ] 2026-08-25 09:13:37
[2026-08-25 09:13:37,449.449 INFO    ] 2026-08-25 09:13:37
[2026-08-25 09:13:37,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:13:37,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:13:37,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:13:37,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:13:37,825.825 INFO    ] time= 25/08/2026 09:13:37
[2026-08-25 09:13:37,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:13:37,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:13:38,019.019 INFO    ] No existing commands found in stream
[2026-08-25 09:13:43,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:13:43,039.039 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 09:13:47,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:13:47,135.135 INFO    ] Checking for system updates...
[2026-08-25 09:13:47,174.174 INFO    ] 200
[2026-08-25 09:13:47,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:47,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:13:47,232.232 INFO    ] No update needed
[2026-08-25 09:13:47,234.234 INFO    ] Checking for camera pi updates...
[2026-08-25 09:13:47,267.267 INFO    ] 200
[2026-08-25 09:13:47,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:13:47,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:13:47,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:13:47,358.358 INFO    ] No camera update needed
[2026-08-25 09:13:47,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:13:47,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:13:47,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:13:47,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:13:49,414.414 INFO    ] ================================================
[2026-08-25 09:13:49,429.429 INFO    ] Launching Daemon at Tue Aug 25 09:13:49 IST 2026
[2026-08-25 09:13:49,439.439 INFO    ] ================================================
[2026-08-25 09:13:50,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:13:50
[2026-08-25 09:13:50,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:13:50,911.911 INFO    ] Initializing speech engine...
[2026-08-25 09:13:50,931.931 INFO    ] 2026-08-25 09:13:50
[2026-08-25 09:13:51,201.201 INFO    ] 2026-08-25 09:13:51
[2026-08-25 09:13:51,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:13:51,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:13:51,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:13:51,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:13:51,619.619 INFO    ] time= 25/08/2026 09:13:51
[2026-08-25 09:13:51,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:13:51,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:13:51,711.711 INFO    ] No existing commands found in stream
[2026-08-25 09:13:56,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:13:56,750.750 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 09:14:00,380.380 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:14:00,382.382 INFO    ] Checking for system updates...
[2026-08-25 09:14:00,418.418 INFO    ] 200
[2026-08-25 09:14:00,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:00,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:00,483.483 INFO    ] No update needed
[2026-08-25 09:14:00,485.485 INFO    ] Checking for camera pi updates...
[2026-08-25 09:14:00,519.519 INFO    ] 200
[2026-08-25 09:14:00,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:00,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:14:00,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:00,712.712 INFO    ] No camera update needed
[2026-08-25 09:14:00,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:14:00,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:14:00,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:14:00,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:14:02,777.777 INFO    ] ================================================
[2026-08-25 09:14:02,792.792 INFO    ] Launching Daemon at Tue Aug 25 09:14:02 IST 2026
[2026-08-25 09:14:02,806.806 INFO    ] ================================================
[2026-08-25 09:14:03,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:14:03
[2026-08-25 09:14:03,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:14:04,236.236 INFO    ] Initializing speech engine...
[2026-08-25 09:14:04,242.242 INFO    ] 2026-08-25 09:14:04
[2026-08-25 09:14:04,543.543 INFO    ] 2026-08-25 09:14:04
[2026-08-25 09:14:04,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:14:04,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:14:04,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:14:04,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:14:04,929.929 INFO    ] time= 25/08/2026 09:14:04
[2026-08-25 09:14:04,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:14:04,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:14:05,058.058 INFO    ] No existing commands found in stream
[2026-08-25 09:14:10,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:14:10,081.081 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 09:14:12,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:14:12,039.039 INFO    ] Checking for system updates...
[2026-08-25 09:14:12,079.079 INFO    ] 200
[2026-08-25 09:14:12,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:12,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:12,136.136 INFO    ] No update needed
[2026-08-25 09:14:12,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 09:14:12,180.180 INFO    ] 200
[2026-08-25 09:14:12,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:12,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:14:12,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:12,279.279 INFO    ] No camera update needed
[2026-08-25 09:14:12,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:14:12,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:14:12,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:14:12,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:14:14,337.337 INFO    ] ================================================
[2026-08-25 09:14:14,352.352 INFO    ] Launching Daemon at Tue Aug 25 09:14:14 IST 2026
[2026-08-25 09:14:14,363.363 INFO    ] ================================================
[2026-08-25 09:14:15,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:14:15
[2026-08-25 09:14:15,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:14:15,998.998 INFO    ] Initializing speech engine...
[2026-08-25 09:14:16,007.007 INFO    ] 2026-08-25 09:14:16
[2026-08-25 09:14:16,283.283 INFO    ] 2026-08-25 09:14:16
[2026-08-25 09:14:16,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:14:16,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:14:16,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:14:16,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:14:16,831.831 INFO    ] time= 25/08/2026 09:14:16
[2026-08-25 09:14:16,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:14:16,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:14:16,994.994 INFO    ] No existing commands found in stream
[2026-08-25 09:14:22,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:14:22,021.021 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 09:14:22,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:14:22,855.855 INFO    ] Checking for system updates...
[2026-08-25 09:14:22,890.890 INFO    ] 200
[2026-08-25 09:14:22,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:22,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:22,948.948 INFO    ] No update needed
[2026-08-25 09:14:22,950.950 INFO    ] Checking for camera pi updates...
[2026-08-25 09:14:22,984.984 INFO    ] 200
[2026-08-25 09:14:22,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:23,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:14:23,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:23,089.089 INFO    ] No camera update needed
[2026-08-25 09:14:23,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:14:23,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:14:23,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:14:23,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:14:25,143.143 INFO    ] ================================================
[2026-08-25 09:14:25,159.159 INFO    ] Launching Daemon at Tue Aug 25 09:14:25 IST 2026
[2026-08-25 09:14:25,170.170 INFO    ] ================================================
[2026-08-25 09:14:25,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:14:25
[2026-08-25 09:14:26,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:14:26,601.601 INFO    ] Initializing speech engine...
[2026-08-25 09:14:26,610.610 INFO    ] 2026-08-25 09:14:26
[2026-08-25 09:14:26,857.857 INFO    ] 2026-08-25 09:14:26
[2026-08-25 09:14:26,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:14:27,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:14:27,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:14:27,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:14:27,329.329 INFO    ] time= 25/08/2026 09:14:27
[2026-08-25 09:14:27,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:14:27,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:14:27,573.573 INFO    ] No existing commands found in stream
[2026-08-25 09:14:32,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:14:32,595.595 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 09:14:36,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:14:36,769.769 INFO    ] Checking for system updates...
[2026-08-25 09:14:36,805.805 INFO    ] 200
[2026-08-25 09:14:36,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:36,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:36,861.861 INFO    ] No update needed
[2026-08-25 09:14:36,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 09:14:36,897.897 INFO    ] 200
[2026-08-25 09:14:36,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:36,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:14:36,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:14:36,997.997 INFO    ] No camera update needed
[2026-08-25 09:14:37,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:14:37,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:14:37,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:14:37,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:14:39,055.055 INFO    ] ================================================
[2026-08-25 09:14:39,071.071 INFO    ] Launching Daemon at Tue Aug 25 09:14:39 IST 2026
[2026-08-25 09:14:39,082.082 INFO    ] ================================================
[2026-08-25 09:14:39,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:14:39
[2026-08-25 09:14:40,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:14:40,494.494 INFO    ] Initializing speech engine...
[2026-08-25 09:14:40,504.504 INFO    ] 2026-08-25 09:14:40
[2026-08-25 09:14:40,748.748 INFO    ] 2026-08-25 09:14:40
[2026-08-25 09:14:40,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:14:41,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:14:41,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:14:41,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:14:41,209.209 INFO    ] time= 25/08/2026 09:14:41
[2026-08-25 09:14:41,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:14:41,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:14:41,458.458 INFO    ] No existing commands found in stream
[2026-08-25 09:14:46,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:14:46,486.486 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 09:14:49,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:14:49,207.207 INFO    ] Checking for system updates...
[2026-08-25 09:14:49,242.242 INFO    ] 200
[2026-08-25 09:14:49,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:49,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:14:49,307.307 INFO    ] No update needed
[2026-08-25 09:14:49,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 09:14:49,342.342 INFO    ] 200
[2026-08-25 09:14:49,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:14:49,386.386 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:14:49,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:14:49,441.441 INFO    ] No camera update needed
[2026-08-25 09:14:49,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:14:49,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:14:49,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:14:49,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:14:51,497.497 INFO    ] ================================================
[2026-08-25 09:14:51,513.513 INFO    ] Launching Daemon at Tue Aug 25 09:14:51 IST 2026
[2026-08-25 09:14:51,524.524 INFO    ] ================================================
[2026-08-25 09:14:52,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:14:52
[2026-08-25 09:14:52,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:14:52,940.940 INFO    ] Initializing speech engine...
[2026-08-25 09:14:52,949.949 INFO    ] 2026-08-25 09:14:52
[2026-08-25 09:14:53,195.195 INFO    ] 2026-08-25 09:14:53
[2026-08-25 09:14:53,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:14:53,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:14:53,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:14:53,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:14:53,694.694 INFO    ] time= 25/08/2026 09:14:53
[2026-08-25 09:14:53,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:14:53,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:14:53,897.897 INFO    ] No existing commands found in stream
[2026-08-25 09:14:58,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:14:58,916.916 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 09:15:03,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:15:03,252.252 INFO    ] Checking for system updates...
[2026-08-25 09:15:03,301.301 INFO    ] 200
[2026-08-25 09:15:03,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:03,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:15:03,369.369 INFO    ] No update needed
[2026-08-25 09:15:03,372.372 INFO    ] Checking for camera pi updates...
[2026-08-25 09:15:03,411.411 INFO    ] 200
[2026-08-25 09:15:03,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:03,465.465 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:15:03,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:15:03,524.524 INFO    ] No camera update needed
[2026-08-25 09:15:03,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:15:03,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:15:03,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:15:03,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:15:05,584.584 INFO    ] ================================================
[2026-08-25 09:15:05,601.601 INFO    ] Launching Daemon at Tue Aug 25 09:15:05 IST 2026
[2026-08-25 09:15:05,612.612 INFO    ] ================================================
[2026-08-25 09:15:06,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:15:06
[2026-08-25 09:15:06,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:15:07,286.286 INFO    ] Initializing speech engine...
[2026-08-25 09:15:07,297.297 INFO    ] 2026-08-25 09:15:07
[2026-08-25 09:15:07,609.609 INFO    ] 2026-08-25 09:15:07
[2026-08-25 09:15:07,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:15:07,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:15:07,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:15:08,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:15:08,119.119 INFO    ] time= 25/08/2026 09:15:08
[2026-08-25 09:15:08,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:15:08,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:15:08,276.276 INFO    ] No existing commands found in stream
[2026-08-25 09:15:13,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:15:13,304.304 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 09:15:17,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:15:17,207.207 INFO    ] Checking for system updates...
[2026-08-25 09:15:17,245.245 INFO    ] 200
[2026-08-25 09:15:17,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:17,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:15:17,311.311 INFO    ] No update needed
[2026-08-25 09:15:17,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 09:15:17,352.352 INFO    ] 200
[2026-08-25 09:15:17,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:17,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:15:17,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:15:17,460.460 INFO    ] No camera update needed
[2026-08-25 09:15:17,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:15:17,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:15:17,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:15:17,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:15:19,518.518 INFO    ] ================================================
[2026-08-25 09:15:19,534.534 INFO    ] Launching Daemon at Tue Aug 25 09:15:19 IST 2026
[2026-08-25 09:15:19,546.546 INFO    ] ================================================
[2026-08-25 09:15:20,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:15:20
[2026-08-25 09:15:20,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:15:21,191.191 INFO    ] Initializing speech engine...
[2026-08-25 09:15:21,198.198 INFO    ] 2026-08-25 09:15:21
[2026-08-25 09:15:21,504.504 INFO    ] 2026-08-25 09:15:21
[2026-08-25 09:15:21,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:15:21,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:15:21,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:15:21,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:15:22,016.016 INFO    ] time= 25/08/2026 09:15:22
[2026-08-25 09:15:22,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:15:22,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:15:22,176.176 INFO    ] No existing commands found in stream
[2026-08-25 09:15:27,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:15:27,211.211 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 09:15:30,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:15:30,787.787 INFO    ] Checking for system updates...
[2026-08-25 09:15:30,825.825 INFO    ] 200
[2026-08-25 09:15:30,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:31,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:15:31,224.224 INFO    ] No update needed
[2026-08-25 09:15:31,227.227 INFO    ] Checking for camera pi updates...
[2026-08-25 09:15:31,261.261 INFO    ] 200
[2026-08-25 09:15:31,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:31,308.308 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:15:31,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:15:31,370.370 INFO    ] No camera update needed
[2026-08-25 09:15:31,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:15:31,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:15:31,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:15:31,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:15:33,431.431 INFO    ] ================================================
[2026-08-25 09:15:33,453.453 INFO    ] Launching Daemon at Tue Aug 25 09:15:33 IST 2026
[2026-08-25 09:15:33,466.466 INFO    ] ================================================
[2026-08-25 09:15:34,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:15:34
[2026-08-25 09:15:34,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:15:34,967.967 INFO    ] Initializing speech engine...
[2026-08-25 09:15:34,972.972 INFO    ] 2026-08-25 09:15:34
[2026-08-25 09:15:35,237.237 INFO    ] 2026-08-25 09:15:35
[2026-08-25 09:15:35,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:15:35,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:15:35,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:15:35,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:15:35,804.804 INFO    ] time= 25/08/2026 09:15:35
[2026-08-25 09:15:35,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:15:35,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:15:35,962.962 INFO    ] No existing commands found in stream
[2026-08-25 09:15:40,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:15:40,996.996 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 09:15:43,503.503 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:15:43,505.505 INFO    ] Checking for system updates...
[2026-08-25 09:15:43,540.540 INFO    ] 200
[2026-08-25 09:15:43,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:43,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:15:43,600.600 INFO    ] No update needed
[2026-08-25 09:15:43,603.603 INFO    ] Checking for camera pi updates...
[2026-08-25 09:15:43,636.636 INFO    ] 200
[2026-08-25 09:15:43,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:43,678.678 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:15:43,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:15:43,723.723 INFO    ] No camera update needed
[2026-08-25 09:15:43,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:15:43,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:15:43,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:15:43,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:15:45,778.778 INFO    ] ================================================
[2026-08-25 09:15:45,794.794 INFO    ] Launching Daemon at Tue Aug 25 09:15:45 IST 2026
[2026-08-25 09:15:45,806.806 INFO    ] ================================================
[2026-08-25 09:15:46,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:15:46
[2026-08-25 09:15:46,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:15:47,240.240 INFO    ] Initializing speech engine...
[2026-08-25 09:15:47,247.247 INFO    ] 2026-08-25 09:15:47
[2026-08-25 09:15:47,506.506 INFO    ] 2026-08-25 09:15:47
[2026-08-25 09:15:47,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:15:47,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:15:47,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:15:47,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:15:47,975.975 INFO    ] time= 25/08/2026 09:15:47
[2026-08-25 09:15:48,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:15:48,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:15:48,201.201 INFO    ] No existing commands found in stream
[2026-08-25 09:15:53,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:15:53,229.229 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 09:15:55,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:15:55,485.485 INFO    ] Checking for system updates...
[2026-08-25 09:15:55,521.521 INFO    ] 200
[2026-08-25 09:15:55,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:55,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:15:55,581.581 INFO    ] No update needed
[2026-08-25 09:15:55,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 09:15:55,622.622 INFO    ] 200
[2026-08-25 09:15:55,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:15:55,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:15:55,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:15:55,721.721 INFO    ] No camera update needed
[2026-08-25 09:15:55,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:15:55,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:15:55,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:15:55,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:15:57,777.777 INFO    ] ================================================
[2026-08-25 09:15:57,793.793 INFO    ] Launching Daemon at Tue Aug 25 09:15:57 IST 2026
[2026-08-25 09:15:57,804.804 INFO    ] ================================================
[2026-08-25 09:15:58,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:15:58
[2026-08-25 09:15:59,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:15:59,410.410 INFO    ] Initializing speech engine...
[2026-08-25 09:15:59,421.421 INFO    ] 2026-08-25 09:15:59
[2026-08-25 09:15:59,695.695 INFO    ] 2026-08-25 09:15:59
[2026-08-25 09:15:59,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:15:59,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:15:59,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:16:00,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:16:00,158.158 INFO    ] time= 25/08/2026 09:16:00
[2026-08-25 09:16:00,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:16:00,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:16:00,395.395 INFO    ] No existing commands found in stream
[2026-08-25 09:16:05,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:16:05,427.427 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 09:16:09,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:16:09,197.197 INFO    ] Checking for system updates...
[2026-08-25 09:16:09,236.236 INFO    ] 200
[2026-08-25 09:16:09,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:09,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:16:09,308.308 INFO    ] No update needed
[2026-08-25 09:16:09,311.311 INFO    ] Checking for camera pi updates...
[2026-08-25 09:16:09,346.346 INFO    ] 200
[2026-08-25 09:16:09,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:09,389.389 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:16:09,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:16:09,538.538 INFO    ] No camera update needed
[2026-08-25 09:16:09,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:16:09,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:16:09,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:16:09,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:16:11,597.597 INFO    ] ================================================
[2026-08-25 09:16:11,612.612 INFO    ] Launching Daemon at Tue Aug 25 09:16:11 IST 2026
[2026-08-25 09:16:11,624.624 INFO    ] ================================================
[2026-08-25 09:16:12,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:16:12
[2026-08-25 09:16:12,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:16:13,101.101 INFO    ] Initializing speech engine...
[2026-08-25 09:16:13,110.110 INFO    ] 2026-08-25 09:16:13
[2026-08-25 09:16:13,381.381 INFO    ] 2026-08-25 09:16:13
[2026-08-25 09:16:13,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:16:13,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:16:13,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:16:13,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:16:13,781.781 INFO    ] time= 25/08/2026 09:16:13
[2026-08-25 09:16:13,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:16:13,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:16:13,943.943 INFO    ] No existing commands found in stream
[2026-08-25 09:16:18,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:16:18,971.971 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 09:16:20,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:16:20,179.179 INFO    ] Checking for system updates...
[2026-08-25 09:16:20,215.215 INFO    ] 200
[2026-08-25 09:16:20,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:20,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:16:20,280.280 INFO    ] No update needed
[2026-08-25 09:16:20,283.283 INFO    ] Checking for camera pi updates...
[2026-08-25 09:16:20,322.322 INFO    ] 200
[2026-08-25 09:16:20,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:20,366.366 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:16:20,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:16:20,416.416 INFO    ] No camera update needed
[2026-08-25 09:16:20,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:16:20,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:16:20,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:16:20,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:16:22,475.475 INFO    ] ================================================
[2026-08-25 09:16:22,491.491 INFO    ] Launching Daemon at Tue Aug 25 09:16:22 IST 2026
[2026-08-25 09:16:22,502.502 INFO    ] ================================================
[2026-08-25 09:16:23,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:16:23
[2026-08-25 09:16:23,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:16:24,092.092 INFO    ] Initializing speech engine...
[2026-08-25 09:16:24,106.106 INFO    ] 2026-08-25 09:16:24
[2026-08-25 09:16:24,414.414 INFO    ] 2026-08-25 09:16:24
[2026-08-25 09:16:24,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:16:24,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:16:24,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:16:24,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:16:24,864.864 INFO    ] time= 25/08/2026 09:16:24
[2026-08-25 09:16:24,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:16:24,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:16:25,075.075 INFO    ] No existing commands found in stream
[2026-08-25 09:16:30,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:16:30,108.108 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 09:16:34,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:16:34,477.477 INFO    ] Checking for system updates...
[2026-08-25 09:16:34,514.514 INFO    ] 200
[2026-08-25 09:16:34,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:34,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:16:34,574.574 INFO    ] No update needed
[2026-08-25 09:16:34,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 09:16:34,615.615 INFO    ] 200
[2026-08-25 09:16:34,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:34,664.664 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:16:34,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:16:34,719.719 INFO    ] No camera update needed
[2026-08-25 09:16:34,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:16:34,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:16:34,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:16:34,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:16:36,778.778 INFO    ] ================================================
[2026-08-25 09:16:36,793.793 INFO    ] Launching Daemon at Tue Aug 25 09:16:36 IST 2026
[2026-08-25 09:16:36,804.804 INFO    ] ================================================
[2026-08-25 09:16:37,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:16:37
[2026-08-25 09:16:38,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:16:38,287.287 INFO    ] Initializing speech engine...
[2026-08-25 09:16:38,297.297 INFO    ] 2026-08-25 09:16:38
[2026-08-25 09:16:38,541.541 INFO    ] 2026-08-25 09:16:38
[2026-08-25 09:16:38,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:16:38,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:16:38,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:16:39,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:16:39,072.072 INFO    ] time= 25/08/2026 09:16:39
[2026-08-25 09:16:39,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:16:39,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:16:39,232.232 INFO    ] No existing commands found in stream
[2026-08-25 09:16:44,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:16:44,260.260 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 09:16:47,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:16:47,468.468 INFO    ] Checking for system updates...
[2026-08-25 09:16:47,503.503 INFO    ] 200
[2026-08-25 09:16:47,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:47,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:16:47,561.561 INFO    ] No update needed
[2026-08-25 09:16:47,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 09:16:47,597.597 INFO    ] 200
[2026-08-25 09:16:47,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:47,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:16:47,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:16:47,691.691 INFO    ] No camera update needed
[2026-08-25 09:16:47,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:16:47,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:16:47,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:16:47,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:16:49,746.746 INFO    ] ================================================
[2026-08-25 09:16:49,762.762 INFO    ] Launching Daemon at Tue Aug 25 09:16:49 IST 2026
[2026-08-25 09:16:49,773.773 INFO    ] ================================================
[2026-08-25 09:16:50,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:16:50
[2026-08-25 09:16:50,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:16:51,167.167 INFO    ] Initializing speech engine...
[2026-08-25 09:16:51,174.174 INFO    ] 2026-08-25 09:16:51
[2026-08-25 09:16:51,447.447 INFO    ] 2026-08-25 09:16:51
[2026-08-25 09:16:51,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:16:51,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:16:51,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:16:51,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:16:51,823.823 INFO    ] time= 25/08/2026 09:16:51
[2026-08-25 09:16:51,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:16:51,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:16:52,006.006 INFO    ] No existing commands found in stream
[2026-08-25 09:16:57,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:16:57,036.036 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 09:16:58,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:16:58,264.264 INFO    ] Checking for system updates...
[2026-08-25 09:16:58,300.300 INFO    ] 200
[2026-08-25 09:16:58,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:58,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:16:58,357.357 INFO    ] No update needed
[2026-08-25 09:16:58,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 09:16:58,400.400 INFO    ] 200
[2026-08-25 09:16:58,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:16:58,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:16:58,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:16:58,522.522 INFO    ] No camera update needed
[2026-08-25 09:16:58,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:16:58,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:16:58,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:16:58,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:17:00,578.578 INFO    ] ================================================
[2026-08-25 09:17:00,593.593 INFO    ] Launching Daemon at Tue Aug 25 09:17:00 IST 2026
[2026-08-25 09:17:00,604.604 INFO    ] ================================================
[2026-08-25 09:17:01,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:17:01
[2026-08-25 09:17:01,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:17:02,234.234 INFO    ] Initializing speech engine...
[2026-08-25 09:17:02,253.253 INFO    ] 2026-08-25 09:17:02
[2026-08-25 09:17:02,574.574 INFO    ] 2026-08-25 09:17:02
[2026-08-25 09:17:02,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:17:02,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:17:02,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:17:03,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:17:03,019.019 INFO    ] time= 25/08/2026 09:17:03
[2026-08-25 09:17:03,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:17:03,095.095 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:17:03,207.207 INFO    ] No existing commands found in stream
[2026-08-25 09:17:08,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:17:08,243.243 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 09:17:11,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:17:11,877.877 INFO    ] Checking for system updates...
[2026-08-25 09:17:11,914.914 INFO    ] 200
[2026-08-25 09:17:11,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:11,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:11,981.981 INFO    ] No update needed
[2026-08-25 09:17:11,984.984 INFO    ] Checking for camera pi updates...
[2026-08-25 09:17:12,019.019 INFO    ] 200
[2026-08-25 09:17:12,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:12,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:17:12,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:12,122.122 INFO    ] No camera update needed
[2026-08-25 09:17:12,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:17:12,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:17:12,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:17:12,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:17:14,182.182 INFO    ] ================================================
[2026-08-25 09:17:14,197.197 INFO    ] Launching Daemon at Tue Aug 25 09:17:14 IST 2026
[2026-08-25 09:17:14,208.208 INFO    ] ================================================
[2026-08-25 09:17:14,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:17:14
[2026-08-25 09:17:15,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:17:15,725.725 INFO    ] Initializing speech engine...
[2026-08-25 09:17:15,731.731 INFO    ] 2026-08-25 09:17:15
[2026-08-25 09:17:15,998.998 INFO    ] 2026-08-25 09:17:15
[2026-08-25 09:17:16,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:17:16,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:17:16,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:17:16,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:17:16,392.392 INFO    ] time= 25/08/2026 09:17:16
[2026-08-25 09:17:16,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:17:16,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:17:16,525.525 INFO    ] No existing commands found in stream
[2026-08-25 09:17:21,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:17:21,540.540 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 09:17:22,215.215 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:17:22,218.218 INFO    ] Checking for system updates...
[2026-08-25 09:17:22,272.272 INFO    ] 200
[2026-08-25 09:17:22,275.275 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:22,277.277 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 09:17:22,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 09:17:22,323.323 INFO    ] 200
[2026-08-25 09:17:22,335.335 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:22,338.338 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 09:17:22,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:17:22,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:17:22,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:17:22,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:17:24,396.396 INFO    ] ================================================
[2026-08-25 09:17:24,411.411 INFO    ] Launching Daemon at Tue Aug 25 09:17:24 IST 2026
[2026-08-25 09:17:24,422.422 INFO    ] ================================================
[2026-08-25 09:17:25,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:17:25
[2026-08-25 09:17:25,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:17:25,848.848 INFO    ] Initializing speech engine...
[2026-08-25 09:17:25,867.867 INFO    ] 2026-08-25 09:17:25
[2026-08-25 09:17:26,114.114 INFO    ] 2026-08-25 09:17:26
[2026-08-25 09:17:26,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:17:26,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:17:26,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:17:26,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:17:26,594.594 INFO    ] time= 25/08/2026 09:17:26
[2026-08-25 09:17:26,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:17:26,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:17:26,820.820 INFO    ] No existing commands found in stream
[2026-08-25 09:17:31,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:17:31,838.838 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 09:17:34,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:17:34,295.295 INFO    ] Checking for system updates...
[2026-08-25 09:17:34,331.331 INFO    ] 200
[2026-08-25 09:17:34,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:34,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:34,390.390 INFO    ] No update needed
[2026-08-25 09:17:34,392.392 INFO    ] Checking for camera pi updates...
[2026-08-25 09:17:34,425.425 INFO    ] 200
[2026-08-25 09:17:34,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:34,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:17:34,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:34,515.515 INFO    ] No camera update needed
[2026-08-25 09:17:34,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:17:34,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:17:34,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:17:34,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:17:36,570.570 INFO    ] ================================================
[2026-08-25 09:17:36,585.585 INFO    ] Launching Daemon at Tue Aug 25 09:17:36 IST 2026
[2026-08-25 09:17:36,596.596 INFO    ] ================================================
[2026-08-25 09:17:37,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:17:37
[2026-08-25 09:17:37,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:17:38,019.019 INFO    ] Initializing speech engine...
[2026-08-25 09:17:38,029.029 INFO    ] 2026-08-25 09:17:38
[2026-08-25 09:17:38,273.273 INFO    ] 2026-08-25 09:17:38
[2026-08-25 09:17:38,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:17:38,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:17:38,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:17:38,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:17:38,652.652 INFO    ] time= 25/08/2026 09:17:38
[2026-08-25 09:17:38,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:17:38,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:17:38,807.807 INFO    ] No existing commands found in stream
[2026-08-25 09:17:43,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:17:43,835.835 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 09:17:46,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:17:46,480.480 INFO    ] Checking for system updates...
[2026-08-25 09:17:46,516.516 INFO    ] 200
[2026-08-25 09:17:46,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:46,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:46,575.575 INFO    ] No update needed
[2026-08-25 09:17:46,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 09:17:46,611.611 INFO    ] 200
[2026-08-25 09:17:46,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:46,654.654 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:17:46,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:46,736.736 INFO    ] No camera update needed
[2026-08-25 09:17:46,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:17:46,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:17:46,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:17:46,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:17:48,793.793 INFO    ] ================================================
[2026-08-25 09:17:48,809.809 INFO    ] Launching Daemon at Tue Aug 25 09:17:48 IST 2026
[2026-08-25 09:17:48,820.820 INFO    ] ================================================
[2026-08-25 09:17:49,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:17:49
[2026-08-25 09:17:49,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:17:50,242.242 INFO    ] Initializing speech engine...
[2026-08-25 09:17:50,252.252 INFO    ] 2026-08-25 09:17:50
[2026-08-25 09:17:50,504.504 INFO    ] 2026-08-25 09:17:50
[2026-08-25 09:17:50,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:17:50,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:17:50,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:17:50,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:17:50,961.961 INFO    ] time= 25/08/2026 09:17:50
[2026-08-25 09:17:51,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:17:51,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:17:51,155.155 INFO    ] No existing commands found in stream
[2026-08-25 09:17:56,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:17:56,189.189 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 09:17:58,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:17:58,327.327 INFO    ] Checking for system updates...
[2026-08-25 09:17:58,363.363 INFO    ] 200
[2026-08-25 09:17:58,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:58,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:58,420.420 INFO    ] No update needed
[2026-08-25 09:17:58,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 09:17:58,456.456 INFO    ] 200
[2026-08-25 09:17:58,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:17:58,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:17:58,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:17:58,547.547 INFO    ] No camera update needed
[2026-08-25 09:17:58,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:17:58,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:17:58,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:17:58,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:18:00,601.601 INFO    ] ================================================
[2026-08-25 09:18:00,617.617 INFO    ] Launching Daemon at Tue Aug 25 09:18:00 IST 2026
[2026-08-25 09:18:00,628.628 INFO    ] ================================================
[2026-08-25 09:18:01,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:18:01
[2026-08-25 09:18:02,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:18:02,425.425 INFO    ] Initializing speech engine...
[2026-08-25 09:18:02,432.432 INFO    ] 2026-08-25 09:18:02
[2026-08-25 09:18:02,701.701 INFO    ] 2026-08-25 09:18:02
[2026-08-25 09:18:02,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:18:03,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:18:03,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:18:03,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:18:03,265.265 INFO    ] time= 25/08/2026 09:18:03
[2026-08-25 09:18:03,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:18:03,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:18:03,484.484 INFO    ] No existing commands found in stream
[2026-08-25 09:18:08,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:18:08,508.508 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 09:18:10,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:18:10,017.017 INFO    ] Checking for system updates...
[2026-08-25 09:18:10,053.053 INFO    ] 200
[2026-08-25 09:18:10,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:10,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:10,112.112 INFO    ] No update needed
[2026-08-25 09:18:10,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 09:18:10,149.149 INFO    ] 200
[2026-08-25 09:18:10,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:10,193.193 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:18:10,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:10,243.243 INFO    ] No camera update needed
[2026-08-25 09:18:10,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:18:10,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:18:10,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:18:10,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:18:12,300.300 INFO    ] ================================================
[2026-08-25 09:18:12,317.317 INFO    ] Launching Daemon at Tue Aug 25 09:18:12 IST 2026
[2026-08-25 09:18:12,328.328 INFO    ] ================================================
[2026-08-25 09:18:12,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:18:12
[2026-08-25 09:18:13,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:18:13,773.773 INFO    ] Initializing speech engine...
[2026-08-25 09:18:13,782.782 INFO    ] 2026-08-25 09:18:13
[2026-08-25 09:18:14,080.080 INFO    ] 2026-08-25 09:18:14
[2026-08-25 09:18:14,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:18:14,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:18:14,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:18:14,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:18:14,498.498 INFO    ] time= 25/08/2026 09:18:14
[2026-08-25 09:18:14,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:18:14,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:18:14,591.591 INFO    ] No existing commands found in stream
[2026-08-25 09:18:19,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:18:19,619.619 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 09:18:21,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:18:21,863.863 INFO    ] Checking for system updates...
[2026-08-25 09:18:21,902.902 INFO    ] 200
[2026-08-25 09:18:21,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:21,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:21,961.961 INFO    ] No update needed
[2026-08-25 09:18:21,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 09:18:21,997.997 INFO    ] 200
[2026-08-25 09:18:21,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:22,044.044 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:18:22,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:22,198.198 INFO    ] No camera update needed
[2026-08-25 09:18:22,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:18:22,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:18:22,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:18:22,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:18:24,252.252 INFO    ] ================================================
[2026-08-25 09:18:24,267.267 INFO    ] Launching Daemon at Tue Aug 25 09:18:24 IST 2026
[2026-08-25 09:18:24,278.278 INFO    ] ================================================
[2026-08-25 09:18:24,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:18:24
[2026-08-25 09:18:25,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:18:25,938.938 INFO    ] Initializing speech engine...
[2026-08-25 09:18:25,944.944 INFO    ] 2026-08-25 09:18:25
[2026-08-25 09:18:26,220.220 INFO    ] 2026-08-25 09:18:26
[2026-08-25 09:18:26,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:18:26,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:18:26,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:18:26,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:18:26,703.703 INFO    ] time= 25/08/2026 09:18:26
[2026-08-25 09:18:26,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:18:26,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:18:26,926.926 INFO    ] No existing commands found in stream
[2026-08-25 09:18:31,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:18:31,956.956 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 09:18:35,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:18:35,401.401 INFO    ] Checking for system updates...
[2026-08-25 09:18:35,438.438 INFO    ] 200
[2026-08-25 09:18:35,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:35,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:35,496.496 INFO    ] No update needed
[2026-08-25 09:18:35,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 09:18:35,536.536 INFO    ] 200
[2026-08-25 09:18:35,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:35,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:18:35,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:35,626.626 INFO    ] No camera update needed
[2026-08-25 09:18:35,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:18:35,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:18:35,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:18:35,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:18:37,683.683 INFO    ] ================================================
[2026-08-25 09:18:37,698.698 INFO    ] Launching Daemon at Tue Aug 25 09:18:37 IST 2026
[2026-08-25 09:18:37,709.709 INFO    ] ================================================
[2026-08-25 09:18:38,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:18:38
[2026-08-25 09:18:39,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:18:39,335.335 INFO    ] Initializing speech engine...
[2026-08-25 09:18:39,349.349 INFO    ] 2026-08-25 09:18:39
[2026-08-25 09:18:39,621.621 INFO    ] 2026-08-25 09:18:39
[2026-08-25 09:18:39,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:18:39,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:18:39,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:18:40,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:18:40,034.034 INFO    ] time= 25/08/2026 09:18:40
[2026-08-25 09:18:40,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:18:40,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:18:40,210.210 INFO    ] No existing commands found in stream
[2026-08-25 09:18:45,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:18:45,246.246 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 09:18:48,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:18:48,289.289 INFO    ] Checking for system updates...
[2026-08-25 09:18:48,325.325 INFO    ] 200
[2026-08-25 09:18:48,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:48,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:48,381.381 INFO    ] No update needed
[2026-08-25 09:18:48,383.383 INFO    ] Checking for camera pi updates...
[2026-08-25 09:18:48,417.417 INFO    ] 200
[2026-08-25 09:18:48,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:18:48,460.460 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:18:48,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:18:48,516.516 INFO    ] No camera update needed
[2026-08-25 09:18:48,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:18:48,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:18:48,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:18:48,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:18:50,571.571 INFO    ] ================================================
[2026-08-25 09:18:50,586.586 INFO    ] Launching Daemon at Tue Aug 25 09:18:50 IST 2026
[2026-08-25 09:18:50,596.596 INFO    ] ================================================
[2026-08-25 09:18:51,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:18:51
[2026-08-25 09:18:51,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:18:52,053.053 INFO    ] Initializing speech engine...
[2026-08-25 09:18:52,062.062 INFO    ] 2026-08-25 09:18:52
[2026-08-25 09:18:52,311.311 INFO    ] 2026-08-25 09:18:52
[2026-08-25 09:18:52,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:18:52,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:18:52,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:18:52,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:18:52,683.683 INFO    ] time= 25/08/2026 09:18:52
[2026-08-25 09:18:52,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:18:52,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:18:52,867.867 INFO    ] No existing commands found in stream
[2026-08-25 09:18:57,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:18:57,892.892 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 09:19:01,880.880 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:19:01,884.884 INFO    ] Checking for system updates...
[2026-08-25 09:19:01,929.929 INFO    ] 200
[2026-08-25 09:19:01,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:01,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:19:01,994.994 INFO    ] No update needed
[2026-08-25 09:19:01,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 09:19:02,046.046 INFO    ] 200
[2026-08-25 09:19:02,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:02,113.113 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:19:02,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:19:02,190.190 INFO    ] No camera update needed
[2026-08-25 09:19:02,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:19:02,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:19:02,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:19:02,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:19:04,261.261 INFO    ] ================================================
[2026-08-25 09:19:04,276.276 INFO    ] Launching Daemon at Tue Aug 25 09:19:04 IST 2026
[2026-08-25 09:19:04,287.287 INFO    ] ================================================
[2026-08-25 09:19:04,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:19:04
[2026-08-25 09:19:05,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:19:05,888.888 INFO    ] Initializing speech engine...
[2026-08-25 09:19:05,897.897 INFO    ] 2026-08-25 09:19:05
[2026-08-25 09:19:06,181.181 INFO    ] 2026-08-25 09:19:06
[2026-08-25 09:19:06,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:19:06,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:19:06,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:19:06,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:19:06,732.732 INFO    ] time= 25/08/2026 09:19:06
[2026-08-25 09:19:06,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:19:06,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:19:06,897.897 INFO    ] No existing commands found in stream
[2026-08-25 09:19:11,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:19:11,926.926 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 09:19:13,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:19:13,102.102 INFO    ] Checking for system updates...
[2026-08-25 09:19:13,139.139 INFO    ] 200
[2026-08-25 09:19:13,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:13,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:13,203.203 INFO    ] No update needed
[2026-08-25 09:19:13,206.206 INFO    ] Checking for camera pi updates...
[2026-08-25 09:19:13,240.240 INFO    ] 200
[2026-08-25 09:19:13,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:13,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:19:13,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:13,351.351 INFO    ] No camera update needed
[2026-08-25 09:19:13,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:19:13,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:19:13,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:19:13,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:19:15,408.408 INFO    ] ================================================
[2026-08-25 09:19:15,423.423 INFO    ] Launching Daemon at Tue Aug 25 09:19:15 IST 2026
[2026-08-25 09:19:15,434.434 INFO    ] ================================================
[2026-08-25 09:19:16,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:19:16
[2026-08-25 09:19:16,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:19:16,877.877 INFO    ] Initializing speech engine...
[2026-08-25 09:19:16,884.884 INFO    ] 2026-08-25 09:19:16
[2026-08-25 09:19:17,176.176 INFO    ] 2026-08-25 09:19:17
[2026-08-25 09:19:17,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:19:17,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:19:17,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:19:17,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:19:17,550.550 INFO    ] time= 25/08/2026 09:19:17
[2026-08-25 09:19:17,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:19:17,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:19:17,676.676 INFO    ] No existing commands found in stream
[2026-08-25 09:19:22,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:19:22,694.694 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 09:19:26,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:19:26,820.820 INFO    ] Checking for system updates...
[2026-08-25 09:19:26,858.858 INFO    ] 200
[2026-08-25 09:19:26,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:26,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:26,915.915 INFO    ] No update needed
[2026-08-25 09:19:26,918.918 INFO    ] Checking for camera pi updates...
[2026-08-25 09:19:26,951.951 INFO    ] 200
[2026-08-25 09:19:26,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:26,997.997 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:19:27,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:27,041.041 INFO    ] No camera update needed
[2026-08-25 09:19:27,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:19:27,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:19:27,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:19:27,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:19:29,096.096 INFO    ] ================================================
[2026-08-25 09:19:29,111.111 INFO    ] Launching Daemon at Tue Aug 25 09:19:29 IST 2026
[2026-08-25 09:19:29,122.122 INFO    ] ================================================
[2026-08-25 09:19:29,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:19:29
[2026-08-25 09:19:30,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:19:30,587.587 INFO    ] Initializing speech engine...
[2026-08-25 09:19:30,596.596 INFO    ] 2026-08-25 09:19:30
[2026-08-25 09:19:30,873.873 INFO    ] 2026-08-25 09:19:30
[2026-08-25 09:19:30,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:19:31,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:19:31,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:19:31,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:19:31,375.375 INFO    ] time= 25/08/2026 09:19:31
[2026-08-25 09:19:31,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:19:31,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:19:31,589.589 INFO    ] No existing commands found in stream
[2026-08-25 09:19:36,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:19:36,629.629 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 09:19:37,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:19:37,911.911 INFO    ] Checking for system updates...
[2026-08-25 09:19:37,947.947 INFO    ] 200
[2026-08-25 09:19:37,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:38,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:38,010.010 INFO    ] No update needed
[2026-08-25 09:19:38,013.013 INFO    ] Checking for camera pi updates...
[2026-08-25 09:19:38,047.047 INFO    ] 200
[2026-08-25 09:19:38,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:38,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:19:38,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:38,150.150 INFO    ] No camera update needed
[2026-08-25 09:19:38,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:19:38,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:19:38,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:19:38,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:19:40,207.207 INFO    ] ================================================
[2026-08-25 09:19:40,222.222 INFO    ] Launching Daemon at Tue Aug 25 09:19:40 IST 2026
[2026-08-25 09:19:40,233.233 INFO    ] ================================================
[2026-08-25 09:19:40,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:19:40
[2026-08-25 09:19:41,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:19:41,638.638 INFO    ] Initializing speech engine...
[2026-08-25 09:19:41,646.646 INFO    ] 2026-08-25 09:19:41
[2026-08-25 09:19:41,939.939 INFO    ] 2026-08-25 09:19:41
[2026-08-25 09:19:41,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:19:42,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:19:42,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:19:42,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:19:42,349.349 INFO    ] time= 25/08/2026 09:19:42
[2026-08-25 09:19:42,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:19:42,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:19:42,523.523 INFO    ] No existing commands found in stream
[2026-08-25 09:19:47,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:19:47,546.546 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 09:19:51,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:19:51,239.239 INFO    ] Checking for system updates...
[2026-08-25 09:19:51,274.274 INFO    ] 200
[2026-08-25 09:19:51,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:51,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:51,330.330 INFO    ] No update needed
[2026-08-25 09:19:51,333.333 INFO    ] Checking for camera pi updates...
[2026-08-25 09:19:51,367.367 INFO    ] 200
[2026-08-25 09:19:51,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:19:51,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:19:51,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:19:51,459.459 INFO    ] No camera update needed
[2026-08-25 09:19:51,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:19:51,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:19:51,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:19:51,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:19:53,513.513 INFO    ] ================================================
[2026-08-25 09:19:53,528.528 INFO    ] Launching Daemon at Tue Aug 25 09:19:53 IST 2026
[2026-08-25 09:19:53,539.539 INFO    ] ================================================
[2026-08-25 09:19:54,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:19:54
[2026-08-25 09:19:54,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:19:54,943.943 INFO    ] Initializing speech engine...
[2026-08-25 09:19:54,949.949 INFO    ] 2026-08-25 09:19:54
[2026-08-25 09:19:55,243.243 INFO    ] 2026-08-25 09:19:55
[2026-08-25 09:19:55,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:19:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:19:55,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:19:55,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:19:55,650.650 INFO    ] time= 25/08/2026 09:19:55
[2026-08-25 09:19:55,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:19:55,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:19:55,736.736 INFO    ] No existing commands found in stream
[2026-08-25 09:20:00,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:20:00,752.752 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 09:20:06,692.692 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:20:06,695.695 INFO    ] Checking for system updates...
[2026-08-25 09:20:06,731.731 INFO    ] 200
[2026-08-25 09:20:06,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:06,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:20:06,795.795 INFO    ] No update needed
[2026-08-25 09:20:06,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 09:20:06,831.831 INFO    ] 200
[2026-08-25 09:20:06,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:06,877.877 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:20:06,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:20:06,921.921 INFO    ] No camera update needed
[2026-08-25 09:20:06,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:20:06,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:20:06,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:20:06,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:20:08,976.976 INFO    ] ================================================
[2026-08-25 09:20:08,991.991 INFO    ] Launching Daemon at Tue Aug 25 09:20:08 IST 2026
[2026-08-25 09:20:09,002.002 INFO    ] ================================================
[2026-08-25 09:20:09,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:20:09
[2026-08-25 09:20:10,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:20:10,430.430 INFO    ] Initializing speech engine...
[2026-08-25 09:20:10,438.438 INFO    ] 2026-08-25 09:20:10
[2026-08-25 09:20:10,689.689 INFO    ] 2026-08-25 09:20:10
[2026-08-25 09:20:10,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:20:10,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:20:10,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:20:11,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:20:11,059.059 INFO    ] time= 25/08/2026 09:20:11
[2026-08-25 09:20:11,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:20:11,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:20:11,245.245 INFO    ] No existing commands found in stream
[2026-08-25 09:20:16,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:20:16,268.268 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 09:20:17,905.905 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:20:17,908.908 INFO    ] Checking for system updates...
[2026-08-25 09:20:17,943.943 INFO    ] 200
[2026-08-25 09:20:17,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:18,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:20:18,006.006 INFO    ] No update needed
[2026-08-25 09:20:18,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 09:20:18,042.042 INFO    ] 200
[2026-08-25 09:20:18,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:18,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:20:18,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:20:18,145.145 INFO    ] No camera update needed
[2026-08-25 09:20:18,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:20:18,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:20:18,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:20:18,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:20:20,201.201 INFO    ] ================================================
[2026-08-25 09:20:20,216.216 INFO    ] Launching Daemon at Tue Aug 25 09:20:20 IST 2026
[2026-08-25 09:20:20,227.227 INFO    ] ================================================
[2026-08-25 09:20:20,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:20:20
[2026-08-25 09:20:21,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:20:21,648.648 INFO    ] Initializing speech engine...
[2026-08-25 09:20:21,663.663 INFO    ] 2026-08-25 09:20:21
[2026-08-25 09:20:21,932.932 INFO    ] 2026-08-25 09:20:21
[2026-08-25 09:20:21,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:20:22,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:20:22,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:20:22,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:20:22,344.344 INFO    ] time= 25/08/2026 09:20:22
[2026-08-25 09:20:22,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:20:22,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:20:22,429.429 INFO    ] No existing commands found in stream
[2026-08-25 09:20:27,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:20:27,447.447 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 09:20:31,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:20:31,436.436 INFO    ] Checking for system updates...
[2026-08-25 09:20:31,475.475 INFO    ] 200
[2026-08-25 09:20:31,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:31,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:20:31,542.542 INFO    ] No update needed
[2026-08-25 09:20:31,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 09:20:31,587.587 INFO    ] 200
[2026-08-25 09:20:31,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:31,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:20:31,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:20:31,783.783 INFO    ] No camera update needed
[2026-08-25 09:20:31,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:20:31,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:20:31,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:20:31,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:20:33,840.840 INFO    ] ================================================
[2026-08-25 09:20:33,856.856 INFO    ] Launching Daemon at Tue Aug 25 09:20:33 IST 2026
[2026-08-25 09:20:33,866.866 INFO    ] ================================================
[2026-08-25 09:20:34,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:20:34
[2026-08-25 09:20:35,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:20:35,317.317 INFO    ] Initializing speech engine...
[2026-08-25 09:20:35,325.325 INFO    ] 2026-08-25 09:20:35
[2026-08-25 09:20:35,623.623 INFO    ] 2026-08-25 09:20:35
[2026-08-25 09:20:35,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:20:35,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:20:35,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:20:36,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:20:36,036.036 INFO    ] time= 25/08/2026 09:20:36
[2026-08-25 09:20:36,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:20:36,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:20:36,117.117 INFO    ] No existing commands found in stream
[2026-08-25 09:20:41,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:20:41,130.130 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 09:20:44,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:20:45,001.001 INFO    ] Checking for system updates...
[2026-08-25 09:20:45,039.039 INFO    ] 200
[2026-08-25 09:20:45,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:45,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:20:45,098.098 INFO    ] No update needed
[2026-08-25 09:20:45,100.100 INFO    ] Checking for camera pi updates...
[2026-08-25 09:20:45,138.138 INFO    ] 200
[2026-08-25 09:20:45,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:45,181.181 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:20:45,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:20:45,238.238 INFO    ] No camera update needed
[2026-08-25 09:20:45,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:20:45,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:20:45,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:20:45,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:20:47,295.295 INFO    ] ================================================
[2026-08-25 09:20:47,311.311 INFO    ] Launching Daemon at Tue Aug 25 09:20:47 IST 2026
[2026-08-25 09:20:47,322.322 INFO    ] ================================================
[2026-08-25 09:20:47,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:20:47
[2026-08-25 09:20:48,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:20:48,893.893 INFO    ] Initializing speech engine...
[2026-08-25 09:20:48,900.900 INFO    ] 2026-08-25 09:20:48
[2026-08-25 09:20:49,171.171 INFO    ] 2026-08-25 09:20:49
[2026-08-25 09:20:49,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:20:49,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:20:49,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:20:49,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:20:49,643.643 INFO    ] time= 25/08/2026 09:20:49
[2026-08-25 09:20:49,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:20:49,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:20:49,873.873 INFO    ] No existing commands found in stream
[2026-08-25 09:20:54,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:20:54,891.891 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 09:20:56,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:20:56,878.878 INFO    ] Checking for system updates...
[2026-08-25 09:20:56,913.913 INFO    ] 200
[2026-08-25 09:20:56,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:56,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:20:56,970.970 INFO    ] No update needed
[2026-08-25 09:20:56,973.973 INFO    ] Checking for camera pi updates...
[2026-08-25 09:20:57,006.006 INFO    ] 200
[2026-08-25 09:20:57,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:20:57,048.048 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:20:57,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:20:57,095.095 INFO    ] No camera update needed
[2026-08-25 09:20:57,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:20:57,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:20:57,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:20:57,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:20:59,149.149 INFO    ] ================================================
[2026-08-25 09:20:59,163.163 INFO    ] Launching Daemon at Tue Aug 25 09:20:59 IST 2026
[2026-08-25 09:20:59,174.174 INFO    ] ================================================
[2026-08-25 09:20:59,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:20:59
[2026-08-25 09:21:00,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:21:00,725.725 INFO    ] Initializing speech engine...
[2026-08-25 09:21:00,735.735 INFO    ] 2026-08-25 09:21:00
[2026-08-25 09:21:01,003.003 INFO    ] 2026-08-25 09:21:00
[2026-08-25 09:21:01,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:21:01,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:21:01,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:21:01,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:21:01,545.545 INFO    ] time= 25/08/2026 09:21:01
[2026-08-25 09:21:01,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:21:01,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:21:01,682.682 INFO    ] No existing commands found in stream
[2026-08-25 09:21:06,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:21:06,713.713 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 09:21:09,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:21:09,759.759 INFO    ] Checking for system updates...
[2026-08-25 09:21:09,797.797 INFO    ] 200
[2026-08-25 09:21:09,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:09,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:09,856.856 INFO    ] No update needed
[2026-08-25 09:21:09,859.859 INFO    ] Checking for camera pi updates...
[2026-08-25 09:21:09,896.896 INFO    ] 200
[2026-08-25 09:21:09,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:09,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:21:09,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:09,995.995 INFO    ] No camera update needed
[2026-08-25 09:21:09,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:21:10,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:21:10,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:21:10,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:21:12,053.053 INFO    ] ================================================
[2026-08-25 09:21:12,069.069 INFO    ] Launching Daemon at Tue Aug 25 09:21:12 IST 2026
[2026-08-25 09:21:12,079.079 INFO    ] ================================================
[2026-08-25 09:21:12,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:21:12
[2026-08-25 09:21:13,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:21:13,499.499 INFO    ] Initializing speech engine...
[2026-08-25 09:21:13,518.518 INFO    ] 2026-08-25 09:21:13
[2026-08-25 09:21:13,783.783 INFO    ] 2026-08-25 09:21:13
[2026-08-25 09:21:13,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:21:14,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:21:14,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:21:14,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:21:14,184.184 INFO    ] time= 25/08/2026 09:21:14
[2026-08-25 09:21:14,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:21:14,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:21:14,272.272 INFO    ] No existing commands found in stream
[2026-08-25 09:21:19,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:21:19,310.310 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 09:21:22,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:21:22,137.137 INFO    ] Checking for system updates...
[2026-08-25 09:21:22,173.173 INFO    ] 200
[2026-08-25 09:21:22,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:22,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:22,229.229 INFO    ] No update needed
[2026-08-25 09:21:22,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 09:21:22,265.265 INFO    ] 200
[2026-08-25 09:21:22,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:22,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:21:22,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:22,363.363 INFO    ] No camera update needed
[2026-08-25 09:21:22,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:21:22,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:21:22,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:21:22,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:21:24,418.418 INFO    ] ================================================
[2026-08-25 09:21:24,433.433 INFO    ] Launching Daemon at Tue Aug 25 09:21:24 IST 2026
[2026-08-25 09:21:24,443.443 INFO    ] ================================================
[2026-08-25 09:21:25,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:21:25
[2026-08-25 09:21:25,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:21:25,860.860 INFO    ] Initializing speech engine...
[2026-08-25 09:21:25,874.874 INFO    ] 2026-08-25 09:21:25
[2026-08-25 09:21:26,152.152 INFO    ] 2026-08-25 09:21:26
[2026-08-25 09:21:26,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:21:26,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:21:26,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:21:26,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:21:26,647.647 INFO    ] time= 25/08/2026 09:21:26
[2026-08-25 09:21:26,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:21:26,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:21:26,901.901 INFO    ] No existing commands found in stream
[2026-08-25 09:21:31,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:21:31,927.927 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 09:21:35,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:21:35,949.949 INFO    ] Checking for system updates...
[2026-08-25 09:21:35,984.984 INFO    ] 200
[2026-08-25 09:21:35,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:36,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:36,048.048 INFO    ] No update needed
[2026-08-25 09:21:36,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 09:21:36,084.084 INFO    ] 200
[2026-08-25 09:21:36,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:36,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:21:36,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:36,173.173 INFO    ] No camera update needed
[2026-08-25 09:21:36,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:21:36,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:21:36,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:21:36,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:21:38,227.227 INFO    ] ================================================
[2026-08-25 09:21:38,242.242 INFO    ] Launching Daemon at Tue Aug 25 09:21:38 IST 2026
[2026-08-25 09:21:38,253.253 INFO    ] ================================================
[2026-08-25 09:21:38,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:21:38
[2026-08-25 09:21:39,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:21:39,673.673 INFO    ] Initializing speech engine...
[2026-08-25 09:21:39,681.681 INFO    ] 2026-08-25 09:21:39
[2026-08-25 09:21:39,928.928 INFO    ] 2026-08-25 09:21:39
[2026-08-25 09:21:39,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:21:40,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:21:40,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:21:40,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:21:40,401.401 INFO    ] time= 25/08/2026 09:21:40
[2026-08-25 09:21:40,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:21:40,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:21:40,615.615 INFO    ] No existing commands found in stream
[2026-08-25 09:21:45,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:21:45,646.646 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 09:21:47,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:21:47,269.269 INFO    ] Checking for system updates...
[2026-08-25 09:21:47,305.305 INFO    ] 200
[2026-08-25 09:21:47,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:47,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:21:47,365.365 INFO    ] No update needed
[2026-08-25 09:21:47,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 09:21:47,401.401 INFO    ] 200
[2026-08-25 09:21:47,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:47,444.444 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:21:47,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:21:47,504.504 INFO    ] No camera update needed
[2026-08-25 09:21:47,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:21:47,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:21:47,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:21:47,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:21:49,560.560 INFO    ] ================================================
[2026-08-25 09:21:49,575.575 INFO    ] Launching Daemon at Tue Aug 25 09:21:49 IST 2026
[2026-08-25 09:21:49,586.586 INFO    ] ================================================
[2026-08-25 09:21:50,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:21:50
[2026-08-25 09:21:50,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:21:51,008.008 INFO    ] Initializing speech engine...
[2026-08-25 09:21:51,017.017 INFO    ] 2026-08-25 09:21:51
[2026-08-25 09:21:51,278.278 INFO    ] 2026-08-25 09:21:51
[2026-08-25 09:21:51,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:21:51,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:21:51,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:21:51,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:21:51,736.736 INFO    ] time= 25/08/2026 09:21:51
[2026-08-25 09:21:51,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:21:51,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:21:51,963.963 INFO    ] No existing commands found in stream
[2026-08-25 09:21:56,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:21:56,990.990 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 09:21:59,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:21:59,771.771 INFO    ] Checking for system updates...
[2026-08-25 09:21:59,806.806 INFO    ] 200
[2026-08-25 09:21:59,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:59,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:59,863.863 INFO    ] No update needed
[2026-08-25 09:21:59,865.865 INFO    ] Checking for camera pi updates...
[2026-08-25 09:21:59,899.899 INFO    ] 200
[2026-08-25 09:21:59,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:21:59,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:21:59,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:21:59,994.994 INFO    ] No camera update needed
[2026-08-25 09:21:59,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:21:59,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:22:00,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:22:00,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:22:02,051.051 INFO    ] ================================================
[2026-08-25 09:22:02,073.073 INFO    ] Launching Daemon at Tue Aug 25 09:22:02 IST 2026
[2026-08-25 09:22:02,092.092 INFO    ] ================================================
[2026-08-25 09:22:02,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:22:02
[2026-08-25 09:22:03,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:22:03,814.814 INFO    ] Initializing speech engine...
[2026-08-25 09:22:03,821.821 INFO    ] 2026-08-25 09:22:03
[2026-08-25 09:22:04,090.090 INFO    ] 2026-08-25 09:22:04
[2026-08-25 09:22:04,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:22:04,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:22:04,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:22:04,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:22:04,636.636 INFO    ] time= 25/08/2026 09:22:04
[2026-08-25 09:22:04,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:22:04,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:22:04,790.790 INFO    ] No existing commands found in stream
[2026-08-25 09:22:09,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:22:09,811.811 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 09:22:13,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:22:13,921.921 INFO    ] Checking for system updates...
[2026-08-25 09:22:13,959.959 INFO    ] 200
[2026-08-25 09:22:13,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:14,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:22:14,020.020 INFO    ] No update needed
[2026-08-25 09:22:14,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 09:22:14,060.060 INFO    ] 200
[2026-08-25 09:22:14,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:14,109.109 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:22:14,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:22:14,169.169 INFO    ] No camera update needed
[2026-08-25 09:22:14,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:22:14,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:22:14,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:22:14,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:22:16,225.225 INFO    ] ================================================
[2026-08-25 09:22:16,240.240 INFO    ] Launching Daemon at Tue Aug 25 09:22:16 IST 2026
[2026-08-25 09:22:16,251.251 INFO    ] ================================================
[2026-08-25 09:22:16,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:22:16
[2026-08-25 09:22:17,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:22:17,665.665 INFO    ] Initializing speech engine...
[2026-08-25 09:22:17,685.685 INFO    ] 2026-08-25 09:22:17
[2026-08-25 09:22:17,948.948 INFO    ] 2026-08-25 09:22:17
[2026-08-25 09:22:17,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:22:18,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:22:18,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:22:18,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:22:18,419.419 INFO    ] time= 25/08/2026 09:22:18
[2026-08-25 09:22:18,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:22:18,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:22:18,587.587 INFO    ] No existing commands found in stream
[2026-08-25 09:22:23,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:22:23,607.607 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 09:22:24,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:22:24,918.918 INFO    ] Checking for system updates...
[2026-08-25 09:22:24,957.957 INFO    ] 200
[2026-08-25 09:22:24,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:25,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:22:25,018.018 INFO    ] No update needed
[2026-08-25 09:22:25,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 09:22:25,053.053 INFO    ] 200
[2026-08-25 09:22:25,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:25,095.095 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:22:25,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:22:25,141.141 INFO    ] No camera update needed
[2026-08-25 09:22:25,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:22:25,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:22:25,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:22:25,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:22:27,195.195 INFO    ] ================================================
[2026-08-25 09:22:27,210.210 INFO    ] Launching Daemon at Tue Aug 25 09:22:27 IST 2026
[2026-08-25 09:22:27,221.221 INFO    ] ================================================
[2026-08-25 09:22:27,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:22:27
[2026-08-25 09:22:28,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:22:28,775.775 INFO    ] Initializing speech engine...
[2026-08-25 09:22:28,786.786 INFO    ] 2026-08-25 09:22:28
[2026-08-25 09:22:29,097.097 INFO    ] 2026-08-25 09:22:29
[2026-08-25 09:22:29,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:22:29,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:22:29,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:22:29,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:22:29,612.612 INFO    ] time= 25/08/2026 09:22:29
[2026-08-25 09:22:29,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:22:29,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:22:29,751.751 INFO    ] No existing commands found in stream
[2026-08-25 09:22:34,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:22:34,768.768 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 09:22:37,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:22:37,136.136 INFO    ] Checking for system updates...
[2026-08-25 09:22:37,175.175 INFO    ] 200
[2026-08-25 09:22:37,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:37,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:22:37,233.233 INFO    ] No update needed
[2026-08-25 09:22:37,236.236 INFO    ] Checking for camera pi updates...
[2026-08-25 09:22:37,270.270 INFO    ] 200
[2026-08-25 09:22:37,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:37,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:22:37,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:22:37,361.361 INFO    ] No camera update needed
[2026-08-25 09:22:37,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:22:37,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:22:37,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:22:37,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:22:39,419.419 INFO    ] ================================================
[2026-08-25 09:22:39,433.433 INFO    ] Launching Daemon at Tue Aug 25 09:22:39 IST 2026
[2026-08-25 09:22:39,444.444 INFO    ] ================================================
[2026-08-25 09:22:40,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:22:40
[2026-08-25 09:22:40,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:22:40,871.871 INFO    ] Initializing speech engine...
[2026-08-25 09:22:40,896.896 INFO    ] 2026-08-25 09:22:40
[2026-08-25 09:22:41,155.155 INFO    ] 2026-08-25 09:22:41
[2026-08-25 09:22:41,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:22:41,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:22:41,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:22:41,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:22:41,522.522 INFO    ] time= 25/08/2026 09:22:41
[2026-08-25 09:22:41,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:22:41,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:22:41,718.718 INFO    ] No existing commands found in stream
[2026-08-25 09:22:46,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:22:46,731.731 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 09:22:50,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:22:50,834.834 INFO    ] Checking for system updates...
[2026-08-25 09:22:50,869.869 INFO    ] 200
[2026-08-25 09:22:50,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:50,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:22:50,935.935 INFO    ] No update needed
[2026-08-25 09:22:50,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 09:22:50,971.971 INFO    ] 200
[2026-08-25 09:22:50,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:22:51,017.017 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:22:51,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:22:51,069.069 INFO    ] No camera update needed
[2026-08-25 09:22:51,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:22:51,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:22:51,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:22:51,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:22:53,127.127 INFO    ] ================================================
[2026-08-25 09:22:53,142.142 INFO    ] Launching Daemon at Tue Aug 25 09:22:53 IST 2026
[2026-08-25 09:22:53,153.153 INFO    ] ================================================
[2026-08-25 09:22:53,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:22:53
[2026-08-25 09:22:54,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:22:54,630.630 INFO    ] Initializing speech engine...
[2026-08-25 09:22:54,637.637 INFO    ] 2026-08-25 09:22:54
[2026-08-25 09:22:54,879.879 INFO    ] 2026-08-25 09:22:54
[2026-08-25 09:22:54,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:22:55,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:22:55,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:22:55,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:22:55,248.248 INFO    ] time= 25/08/2026 09:22:55
[2026-08-25 09:22:55,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:22:55,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:22:55,435.435 INFO    ] No existing commands found in stream
[2026-08-25 09:23:00,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:23:00,458.458 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 09:23:04,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:23:04,295.295 INFO    ] Checking for system updates...
[2026-08-25 09:23:04,330.330 INFO    ] 200
[2026-08-25 09:23:04,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:04,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:23:04,388.388 INFO    ] No update needed
[2026-08-25 09:23:04,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 09:23:04,424.424 INFO    ] 200
[2026-08-25 09:23:04,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:04,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:23:04,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:23:04,522.522 INFO    ] No camera update needed
[2026-08-25 09:23:04,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:23:04,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:23:04,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:23:04,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:23:06,577.577 INFO    ] ================================================
[2026-08-25 09:23:06,592.592 INFO    ] Launching Daemon at Tue Aug 25 09:23:06 IST 2026
[2026-08-25 09:23:06,602.602 INFO    ] ================================================
[2026-08-25 09:23:07,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:23:07
[2026-08-25 09:23:07,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:23:08,001.001 INFO    ] Initializing speech engine...
[2026-08-25 09:23:08,016.016 INFO    ] 2026-08-25 09:23:08
[2026-08-25 09:23:08,277.277 INFO    ] 2026-08-25 09:23:08
[2026-08-25 09:23:08,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:23:08,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:23:08,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:23:08,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:23:08,776.776 INFO    ] time= 25/08/2026 09:23:08
[2026-08-25 09:23:08,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:23:08,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:23:08,968.968 INFO    ] No existing commands found in stream
[2026-08-25 09:23:13,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:23:13,995.995 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 09:23:16,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:23:16,165.165 INFO    ] Checking for system updates...
[2026-08-25 09:23:16,214.214 INFO    ] 200
[2026-08-25 09:23:16,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:16,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:23:16,273.273 INFO    ] No update needed
[2026-08-25 09:23:16,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 09:23:16,309.309 INFO    ] 200
[2026-08-25 09:23:16,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:16,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:23:16,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:23:16,400.400 INFO    ] No camera update needed
[2026-08-25 09:23:16,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:23:16,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:23:16,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:23:16,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:23:18,453.453 INFO    ] ================================================
[2026-08-25 09:23:18,470.470 INFO    ] Launching Daemon at Tue Aug 25 09:23:18 IST 2026
[2026-08-25 09:23:18,481.481 INFO    ] ================================================
[2026-08-25 09:23:19,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:23:19
[2026-08-25 09:23:19,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:23:19,896.896 INFO    ] Initializing speech engine...
[2026-08-25 09:23:19,905.905 INFO    ] 2026-08-25 09:23:19
[2026-08-25 09:23:20,156.156 INFO    ] 2026-08-25 09:23:20
[2026-08-25 09:23:20,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:23:20,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:23:20,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:23:20,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:23:20,623.623 INFO    ] time= 25/08/2026 09:23:20
[2026-08-25 09:23:20,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:23:20,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:23:20,857.857 INFO    ] No existing commands found in stream
[2026-08-25 09:23:25,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:23:25,875.875 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 09:23:29,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:23:29,964.964 INFO    ] Checking for system updates...
[2026-08-25 09:23:30,003.003 INFO    ] 200
[2026-08-25 09:23:30,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:30,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:23:30,067.067 INFO    ] No update needed
[2026-08-25 09:23:30,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 09:23:30,103.103 INFO    ] 200
[2026-08-25 09:23:30,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:30,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:23:30,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:23:30,198.198 INFO    ] No camera update needed
[2026-08-25 09:23:30,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:23:30,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:23:30,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:23:30,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:23:32,258.258 INFO    ] ================================================
[2026-08-25 09:23:32,275.275 INFO    ] Launching Daemon at Tue Aug 25 09:23:32 IST 2026
[2026-08-25 09:23:32,287.287 INFO    ] ================================================
[2026-08-25 09:23:32,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:23:32
[2026-08-25 09:23:33,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:23:33,828.828 INFO    ] Initializing speech engine...
[2026-08-25 09:23:33,837.837 INFO    ] 2026-08-25 09:23:33
[2026-08-25 09:23:34,089.089 INFO    ] 2026-08-25 09:23:34
[2026-08-25 09:23:34,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:23:34,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:23:34,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:23:34,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:23:34,529.529 INFO    ] time= 25/08/2026 09:23:34
[2026-08-25 09:23:34,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:23:34,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:23:34,774.774 INFO    ] No existing commands found in stream
[2026-08-25 09:23:39,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:23:39,799.799 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 09:23:44,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:23:44,788.788 INFO    ] Checking for system updates...
[2026-08-25 09:23:44,834.834 INFO    ] 200
[2026-08-25 09:23:44,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:44,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:23:44,918.918 INFO    ] No update needed
[2026-08-25 09:23:44,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 09:23:44,956.956 INFO    ] 200
[2026-08-25 09:23:44,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:45,000.000 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:23:45,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:23:45,046.046 INFO    ] No camera update needed
[2026-08-25 09:23:45,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:23:45,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:23:45,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:23:45,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:23:47,102.102 INFO    ] ================================================
[2026-08-25 09:23:47,117.117 INFO    ] Launching Daemon at Tue Aug 25 09:23:47 IST 2026
[2026-08-25 09:23:47,128.128 INFO    ] ================================================
[2026-08-25 09:23:47,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:23:47
[2026-08-25 09:23:48,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:23:48,548.548 INFO    ] Initializing speech engine...
[2026-08-25 09:23:48,556.556 INFO    ] 2026-08-25 09:23:48
[2026-08-25 09:23:48,811.811 INFO    ] 2026-08-25 09:23:48
[2026-08-25 09:23:48,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:23:49,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:23:49,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:23:49,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:23:49,272.272 INFO    ] time= 25/08/2026 09:23:49
[2026-08-25 09:23:49,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:23:49,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:23:49,496.496 INFO    ] No existing commands found in stream
[2026-08-25 09:23:54,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:23:54,518.518 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 09:23:57,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:23:57,652.652 INFO    ] Checking for system updates...
[2026-08-25 09:23:57,691.691 INFO    ] 200
[2026-08-25 09:23:57,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:57,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:23:57,748.748 INFO    ] No update needed
[2026-08-25 09:23:57,750.750 INFO    ] Checking for camera pi updates...
[2026-08-25 09:23:57,787.787 INFO    ] 200
[2026-08-25 09:23:57,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:23:57,829.829 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:23:57,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:23:57,876.876 INFO    ] No camera update needed
[2026-08-25 09:23:57,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:23:57,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:23:57,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:23:57,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:23:59,934.934 INFO    ] ================================================
[2026-08-25 09:23:59,950.950 INFO    ] Launching Daemon at Tue Aug 25 09:23:59 IST 2026
[2026-08-25 09:23:59,961.961 INFO    ] ================================================
[2026-08-25 09:24:00,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:24:00
[2026-08-25 09:24:01,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:24:01,386.386 INFO    ] Initializing speech engine...
[2026-08-25 09:24:01,390.390 INFO    ] 2026-08-25 09:24:01
[2026-08-25 09:24:01,871.871 INFO    ] 2026-08-25 09:24:01
[2026-08-25 09:24:01,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:24:02,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:24:02,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:24:02,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:24:02,430.430 INFO    ] time= 25/08/2026 09:24:02
[2026-08-25 09:24:02,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:24:02,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:24:02,642.642 INFO    ] No existing commands found in stream
[2026-08-25 09:24:07,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:24:07,666.666 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 09:24:10,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:24:10,856.856 INFO    ] Checking for system updates...
[2026-08-25 09:24:10,892.892 INFO    ] 200
[2026-08-25 09:24:10,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:10,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:24:10,958.958 INFO    ] No update needed
[2026-08-25 09:24:10,961.961 INFO    ] Checking for camera pi updates...
[2026-08-25 09:24:10,996.996 INFO    ] 200
[2026-08-25 09:24:10,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:11,044.044 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:24:11,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:24:11,102.102 INFO    ] No camera update needed
[2026-08-25 09:24:11,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:24:11,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:24:11,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:24:11,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:24:13,159.159 INFO    ] ================================================
[2026-08-25 09:24:13,175.175 INFO    ] Launching Daemon at Tue Aug 25 09:24:13 IST 2026
[2026-08-25 09:24:13,186.186 INFO    ] ================================================
[2026-08-25 09:24:13,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:24:13
[2026-08-25 09:24:14,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:24:14,791.791 INFO    ] Initializing speech engine...
[2026-08-25 09:24:14,799.799 INFO    ] 2026-08-25 09:24:14
[2026-08-25 09:24:15,073.073 INFO    ] 2026-08-25 09:24:15
[2026-08-25 09:24:15,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:24:15,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:24:15,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:24:15,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:24:15,542.542 INFO    ] time= 25/08/2026 09:24:15
[2026-08-25 09:24:15,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:24:15,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:24:15,749.749 INFO    ] No existing commands found in stream
[2026-08-25 09:24:20,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:24:20,783.783 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 09:24:23,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:24:23,835.835 INFO    ] Checking for system updates...
[2026-08-25 09:24:23,872.872 INFO    ] 200
[2026-08-25 09:24:23,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:23,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:24:23,929.929 INFO    ] No update needed
[2026-08-25 09:24:23,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 09:24:23,968.968 INFO    ] 200
[2026-08-25 09:24:23,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:24,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:24:24,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:24:24,068.068 INFO    ] No camera update needed
[2026-08-25 09:24:24,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:24:24,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:24:24,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:24:24,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:24:26,122.122 INFO    ] ================================================
[2026-08-25 09:24:26,137.137 INFO    ] Launching Daemon at Tue Aug 25 09:24:26 IST 2026
[2026-08-25 09:24:26,149.149 INFO    ] ================================================
[2026-08-25 09:24:26,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:24:26
[2026-08-25 09:24:27,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:24:27,784.784 INFO    ] Initializing speech engine...
[2026-08-25 09:24:27,797.797 INFO    ] 2026-08-25 09:24:27
[2026-08-25 09:24:28,108.108 INFO    ] 2026-08-25 09:24:28
[2026-08-25 09:24:28,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:24:28,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:24:28,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:24:28,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:24:28,612.612 INFO    ] time= 25/08/2026 09:24:28
[2026-08-25 09:24:28,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:24:28,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:24:28,781.781 INFO    ] No existing commands found in stream
[2026-08-25 09:24:33,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:24:33,815.815 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 09:24:36,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:24:36,325.325 INFO    ] Checking for system updates...
[2026-08-25 09:24:36,361.361 INFO    ] 200
[2026-08-25 09:24:36,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:36,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:24:36,419.419 INFO    ] No update needed
[2026-08-25 09:24:36,421.421 INFO    ] Checking for camera pi updates...
[2026-08-25 09:24:36,455.455 INFO    ] 200
[2026-08-25 09:24:36,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:36,504.504 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:24:36,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:24:36,659.659 INFO    ] No camera update needed
[2026-08-25 09:24:36,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:24:36,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:24:36,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:24:36,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:24:38,715.715 INFO    ] ================================================
[2026-08-25 09:24:38,731.731 INFO    ] Launching Daemon at Tue Aug 25 09:24:38 IST 2026
[2026-08-25 09:24:38,743.743 INFO    ] ================================================
[2026-08-25 09:24:39,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:24:39
[2026-08-25 09:24:40,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:24:40,366.366 INFO    ] Initializing speech engine...
[2026-08-25 09:24:40,371.371 INFO    ] 2026-08-25 09:24:40
[2026-08-25 09:24:40,659.659 INFO    ] 2026-08-25 09:24:40
[2026-08-25 09:24:40,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:24:40,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:24:40,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:24:41,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:24:41,120.120 INFO    ] time= 25/08/2026 09:24:41
[2026-08-25 09:24:41,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:24:41,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:24:41,340.340 INFO    ] No existing commands found in stream
[2026-08-25 09:24:46,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:24:46,366.366 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 09:24:48,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:24:48,905.905 INFO    ] Checking for system updates...
[2026-08-25 09:24:48,941.941 INFO    ] 200
[2026-08-25 09:24:48,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:48,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:24:49,001.001 INFO    ] No update needed
[2026-08-25 09:24:49,004.004 INFO    ] Checking for camera pi updates...
[2026-08-25 09:24:49,038.038 INFO    ] 200
[2026-08-25 09:24:49,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:49,083.083 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:24:49,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:24:49,138.138 INFO    ] No camera update needed
[2026-08-25 09:24:49,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:24:49,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:24:49,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:24:49,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:24:51,194.194 INFO    ] ================================================
[2026-08-25 09:24:51,211.211 INFO    ] Launching Daemon at Tue Aug 25 09:24:51 IST 2026
[2026-08-25 09:24:51,222.222 INFO    ] ================================================
[2026-08-25 09:24:51,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:24:51
[2026-08-25 09:24:52,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:24:52,638.638 INFO    ] Initializing speech engine...
[2026-08-25 09:24:52,656.656 INFO    ] 2026-08-25 09:24:52
[2026-08-25 09:24:52,913.913 INFO    ] 2026-08-25 09:24:52
[2026-08-25 09:24:52,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:24:53,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:24:53,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:24:53,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:24:53,376.376 INFO    ] time= 25/08/2026 09:24:53
[2026-08-25 09:24:53,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:24:53,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:24:53,525.525 INFO    ] No existing commands found in stream
[2026-08-25 09:24:58,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:24:58,542.542 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 09:24:59,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:24:59,445.445 INFO    ] Checking for system updates...
[2026-08-25 09:24:59,487.487 INFO    ] 200
[2026-08-25 09:24:59,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:59,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:24:59,555.555 INFO    ] No update needed
[2026-08-25 09:24:59,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 09:24:59,596.596 INFO    ] 200
[2026-08-25 09:24:59,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:24:59,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:24:59,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:24:59,685.685 INFO    ] No camera update needed
[2026-08-25 09:24:59,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:24:59,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:24:59,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:24:59,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:25:01,767.767 INFO    ] ================================================
[2026-08-25 09:25:01,822.822 INFO    ] Launching Daemon at Tue Aug 25 09:25:01 IST 2026
[2026-08-25 09:25:01,855.855 INFO    ] ================================================
[2026-08-25 09:25:02,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:25:02
[2026-08-25 09:25:03,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:25:03,760.760 INFO    ] Initializing speech engine...
[2026-08-25 09:25:03,773.773 INFO    ] 2026-08-25 09:25:03
[2026-08-25 09:25:04,087.087 INFO    ] 2026-08-25 09:25:04
[2026-08-25 09:25:04,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:25:04,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:25:04,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:25:04,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:25:04,602.602 INFO    ] time= 25/08/2026 09:25:04
[2026-08-25 09:25:04,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:25:04,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:25:04,776.776 INFO    ] No existing commands found in stream
[2026-08-25 09:25:09,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:25:09,812.812 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 09:25:10,850.850 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:25:10,852.852 INFO    ] Checking for system updates...
[2026-08-25 09:25:10,888.888 INFO    ] 200
[2026-08-25 09:25:10,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:10,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:25:10,946.946 INFO    ] No update needed
[2026-08-25 09:25:10,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 09:25:10,983.983 INFO    ] 200
[2026-08-25 09:25:10,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:11,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:25:11,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:25:11,075.075 INFO    ] No camera update needed
[2026-08-25 09:25:11,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:25:11,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:25:11,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:25:11,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:25:13,129.129 INFO    ] ================================================
[2026-08-25 09:25:13,144.144 INFO    ] Launching Daemon at Tue Aug 25 09:25:13 IST 2026
[2026-08-25 09:25:13,155.155 INFO    ] ================================================
[2026-08-25 09:25:13,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:25:13
[2026-08-25 09:25:14,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:25:14,586.586 INFO    ] Initializing speech engine...
[2026-08-25 09:25:14,608.608 INFO    ] 2026-08-25 09:25:14
[2026-08-25 09:25:14,884.884 INFO    ] 2026-08-25 09:25:14
[2026-08-25 09:25:14,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:25:15,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:25:15,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:25:15,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:25:15,304.304 INFO    ] time= 25/08/2026 09:25:15
[2026-08-25 09:25:15,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:25:15,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:25:15,391.391 INFO    ] No existing commands found in stream
[2026-08-25 09:25:20,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:25:20,429.429 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 09:25:23,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:25:23,823.823 INFO    ] Checking for system updates...
[2026-08-25 09:25:23,859.859 INFO    ] 200
[2026-08-25 09:25:23,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:23,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:25:23,918.918 INFO    ] No update needed
[2026-08-25 09:25:23,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 09:25:23,954.954 INFO    ] 200
[2026-08-25 09:25:23,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:23,996.996 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:25:24,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:25:24,048.048 INFO    ] No camera update needed
[2026-08-25 09:25:24,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:25:24,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:25:24,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:25:24,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:25:26,102.102 INFO    ] ================================================
[2026-08-25 09:25:26,117.117 INFO    ] Launching Daemon at Tue Aug 25 09:25:26 IST 2026
[2026-08-25 09:25:26,127.127 INFO    ] ================================================
[2026-08-25 09:25:26,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:25:26
[2026-08-25 09:25:27,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:25:27,543.543 INFO    ] Initializing speech engine...
[2026-08-25 09:25:27,558.558 INFO    ] 2026-08-25 09:25:27
[2026-08-25 09:25:27,823.823 INFO    ] 2026-08-25 09:25:27
[2026-08-25 09:25:27,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:25:28,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:25:28,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:25:28,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:25:28,297.297 INFO    ] time= 25/08/2026 09:25:28
[2026-08-25 09:25:28,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:25:28,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:25:28,545.545 INFO    ] No existing commands found in stream
[2026-08-25 09:25:33,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:25:33,562.562 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 09:25:37,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:25:37,842.842 INFO    ] Checking for system updates...
[2026-08-25 09:25:37,878.878 INFO    ] 200
[2026-08-25 09:25:37,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:37,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:25:37,939.939 INFO    ] No update needed
[2026-08-25 09:25:37,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 09:25:37,978.978 INFO    ] 200
[2026-08-25 09:25:37,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:38,021.021 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:25:38,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:25:38,074.074 INFO    ] No camera update needed
[2026-08-25 09:25:38,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:25:38,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:25:38,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:25:38,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:25:40,129.129 INFO    ] ================================================
[2026-08-25 09:25:40,145.145 INFO    ] Launching Daemon at Tue Aug 25 09:25:40 IST 2026
[2026-08-25 09:25:40,155.155 INFO    ] ================================================
[2026-08-25 09:25:40,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:25:40
[2026-08-25 09:25:41,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:25:41,608.608 INFO    ] Initializing speech engine...
[2026-08-25 09:25:41,617.617 INFO    ] 2026-08-25 09:25:41
[2026-08-25 09:25:41,875.875 INFO    ] 2026-08-25 09:25:41
[2026-08-25 09:25:41,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:25:42,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:25:42,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:25:42,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:25:42,334.334 INFO    ] time= 25/08/2026 09:25:42
[2026-08-25 09:25:42,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:25:42,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:25:42,543.543 INFO    ] No existing commands found in stream
[2026-08-25 09:25:47,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:25:47,577.577 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 09:25:49,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:25:49,410.410 INFO    ] Checking for system updates...
[2026-08-25 09:25:49,446.446 INFO    ] 200
[2026-08-25 09:25:49,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:49,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:25:49,503.503 INFO    ] No update needed
[2026-08-25 09:25:49,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 09:25:49,538.538 INFO    ] 200
[2026-08-25 09:25:49,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:25:49,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:25:49,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:25:49,642.642 INFO    ] No camera update needed
[2026-08-25 09:25:49,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:25:49,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:25:49,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:25:49,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:25:51,697.697 INFO    ] ================================================
[2026-08-25 09:25:51,712.712 INFO    ] Launching Daemon at Tue Aug 25 09:25:51 IST 2026
[2026-08-25 09:25:51,723.723 INFO    ] ================================================
[2026-08-25 09:25:52,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:25:52
[2026-08-25 09:25:52,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:25:53,123.123 INFO    ] Initializing speech engine...
[2026-08-25 09:25:53,132.132 INFO    ] 2026-08-25 09:25:53
[2026-08-25 09:25:53,421.421 INFO    ] 2026-08-25 09:25:53
[2026-08-25 09:25:53,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:25:53,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:25:53,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:25:53,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:25:53,830.830 INFO    ] time= 25/08/2026 09:25:53
[2026-08-25 09:25:53,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:25:53,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:25:53,921.921 INFO    ] No existing commands found in stream
[2026-08-25 09:25:58,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:25:58,949.949 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 09:26:02,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:26:02,458.458 INFO    ] Checking for system updates...
[2026-08-25 09:26:02,500.500 INFO    ] 200
[2026-08-25 09:26:02,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:02,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:26:02,594.594 INFO    ] No update needed
[2026-08-25 09:26:02,598.598 INFO    ] Checking for camera pi updates...
[2026-08-25 09:26:02,655.655 INFO    ] 200
[2026-08-25 09:26:02,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:02,716.716 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:26:02,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:26:02,785.785 INFO    ] No camera update needed
[2026-08-25 09:26:02,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:26:02,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:26:02,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:26:02,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:26:04,845.845 INFO    ] ================================================
[2026-08-25 09:26:04,861.861 INFO    ] Launching Daemon at Tue Aug 25 09:26:04 IST 2026
[2026-08-25 09:26:04,871.871 INFO    ] ================================================
[2026-08-25 09:26:05,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:26:05
[2026-08-25 09:26:06,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:26:06,331.331 INFO    ] Initializing speech engine...
[2026-08-25 09:26:06,340.340 INFO    ] 2026-08-25 09:26:06
[2026-08-25 09:26:06,611.611 INFO    ] 2026-08-25 09:26:06
[2026-08-25 09:26:06,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:26:06,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:26:06,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:26:06,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:26:06,990.990 INFO    ] time= 25/08/2026 09:26:06
[2026-08-25 09:26:06,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:26:07,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:26:07,159.159 INFO    ] No existing commands found in stream
[2026-08-25 09:26:12,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:26:12,183.183 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 09:26:14,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:26:14,821.821 INFO    ] Checking for system updates...
[2026-08-25 09:26:14,859.859 INFO    ] 200
[2026-08-25 09:26:14,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:14,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:26:14,916.916 INFO    ] No update needed
[2026-08-25 09:26:14,918.918 INFO    ] Checking for camera pi updates...
[2026-08-25 09:26:14,951.951 INFO    ] 200
[2026-08-25 09:26:14,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:14,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:26:15,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:26:15,045.045 INFO    ] No camera update needed
[2026-08-25 09:26:15,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:26:15,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:26:15,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:26:15,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:26:17,105.105 INFO    ] ================================================
[2026-08-25 09:26:17,120.120 INFO    ] Launching Daemon at Tue Aug 25 09:26:17 IST 2026
[2026-08-25 09:26:17,132.132 INFO    ] ================================================
[2026-08-25 09:26:17,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:26:17
[2026-08-25 09:26:18,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:26:18,903.903 INFO    ] Initializing speech engine...
[2026-08-25 09:26:18,921.921 INFO    ] 2026-08-25 09:26:18
[2026-08-25 09:26:19,174.174 INFO    ] 2026-08-25 09:26:19
[2026-08-25 09:26:19,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:26:19,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:26:19,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:26:19,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:26:19,554.554 INFO    ] time= 25/08/2026 09:26:19
[2026-08-25 09:26:19,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:26:19,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:26:19,738.738 INFO    ] No existing commands found in stream
[2026-08-25 09:26:24,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:26:24,766.766 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 09:26:28,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:26:28,367.367 INFO    ] Checking for system updates...
[2026-08-25 09:26:28,402.402 INFO    ] 200
[2026-08-25 09:26:28,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:28,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:26:28,458.458 INFO    ] No update needed
[2026-08-25 09:26:28,461.461 INFO    ] Checking for camera pi updates...
[2026-08-25 09:26:28,495.495 INFO    ] 200
[2026-08-25 09:26:28,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:28,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:26:28,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:26:28,596.596 INFO    ] No camera update needed
[2026-08-25 09:26:28,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:26:28,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:26:28,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:26:28,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:26:30,652.652 INFO    ] ================================================
[2026-08-25 09:26:30,667.667 INFO    ] Launching Daemon at Tue Aug 25 09:26:30 IST 2026
[2026-08-25 09:26:30,678.678 INFO    ] ================================================
[2026-08-25 09:26:31,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:26:31
[2026-08-25 09:26:31,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:26:32,167.167 INFO    ] Initializing speech engine...
[2026-08-25 09:26:32,174.174 INFO    ] 2026-08-25 09:26:32
[2026-08-25 09:26:32,449.449 INFO    ] 2026-08-25 09:26:32
[2026-08-25 09:26:32,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:26:32,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:26:32,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:26:32,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:26:32,938.938 INFO    ] time= 25/08/2026 09:26:32
[2026-08-25 09:26:32,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:26:33,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:26:33,162.162 INFO    ] No existing commands found in stream
[2026-08-25 09:26:38,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:26:38,201.201 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 09:26:39,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:26:39,530.530 INFO    ] Checking for system updates...
[2026-08-25 09:26:39,568.568 INFO    ] 200
[2026-08-25 09:26:39,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:39,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:26:39,625.625 INFO    ] No update needed
[2026-08-25 09:26:39,628.628 INFO    ] Checking for camera pi updates...
[2026-08-25 09:26:39,661.661 INFO    ] 200
[2026-08-25 09:26:39,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:39,703.703 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:26:39,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:26:39,852.852 INFO    ] No camera update needed
[2026-08-25 09:26:39,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:26:39,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:26:39,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:26:39,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:26:41,907.907 INFO    ] ================================================
[2026-08-25 09:26:41,922.922 INFO    ] Launching Daemon at Tue Aug 25 09:26:41 IST 2026
[2026-08-25 09:26:41,933.933 INFO    ] ================================================
[2026-08-25 09:26:42,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:26:42
[2026-08-25 09:26:43,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:26:43,536.536 INFO    ] Initializing speech engine...
[2026-08-25 09:26:43,547.547 INFO    ] 2026-08-25 09:26:43
[2026-08-25 09:26:43,822.822 INFO    ] 2026-08-25 09:26:43
[2026-08-25 09:26:43,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:26:44,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:26:44,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:26:44,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:26:44,299.299 INFO    ] time= 25/08/2026 09:26:44
[2026-08-25 09:26:44,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:26:44,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:26:44,502.502 INFO    ] No existing commands found in stream
[2026-08-25 09:26:49,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:26:49,520.520 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 09:26:50,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:26:50,296.296 INFO    ] Checking for system updates...
[2026-08-25 09:26:50,331.331 INFO    ] 200
[2026-08-25 09:26:50,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:50,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:26:50,389.389 INFO    ] No update needed
[2026-08-25 09:26:50,392.392 INFO    ] Checking for camera pi updates...
[2026-08-25 09:26:50,425.425 INFO    ] 200
[2026-08-25 09:26:50,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:26:50,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:26:50,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:26:50,517.517 INFO    ] No camera update needed
[2026-08-25 09:26:50,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:26:50,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:26:50,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:26:50,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:26:52,571.571 INFO    ] ================================================
[2026-08-25 09:26:52,586.586 INFO    ] Launching Daemon at Tue Aug 25 09:26:52 IST 2026
[2026-08-25 09:26:52,597.597 INFO    ] ================================================
[2026-08-25 09:26:53,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:26:53
[2026-08-25 09:26:53,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:26:54,069.069 INFO    ] Initializing speech engine...
[2026-08-25 09:26:54,078.078 INFO    ] 2026-08-25 09:26:54
[2026-08-25 09:26:54,328.328 INFO    ] 2026-08-25 09:26:54
[2026-08-25 09:26:54,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:26:54,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:26:54,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:26:54,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:26:54,808.808 INFO    ] time= 25/08/2026 09:26:54
[2026-08-25 09:26:54,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:26:54,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:26:54,951.951 INFO    ] No existing commands found in stream
[2026-08-25 09:26:59,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:26:59,966.966 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 09:27:03,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:27:03,023.023 INFO    ] Checking for system updates...
[2026-08-25 09:27:03,068.068 INFO    ] 200
[2026-08-25 09:27:03,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:03,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:27:03,143.143 INFO    ] No update needed
[2026-08-25 09:27:03,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 09:27:03,194.194 INFO    ] 200
[2026-08-25 09:27:03,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:03,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:27:03,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:27:03,301.301 INFO    ] No camera update needed
[2026-08-25 09:27:03,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:27:03,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:27:03,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:27:03,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:27:05,355.355 INFO    ] ================================================
[2026-08-25 09:27:05,370.370 INFO    ] Launching Daemon at Tue Aug 25 09:27:05 IST 2026
[2026-08-25 09:27:05,381.381 INFO    ] ================================================
[2026-08-25 09:27:05,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:27:05
[2026-08-25 09:27:06,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:27:06,811.811 INFO    ] Initializing speech engine...
[2026-08-25 09:27:06,822.822 INFO    ] 2026-08-25 09:27:06
[2026-08-25 09:27:07,066.066 INFO    ] 2026-08-25 09:27:07
[2026-08-25 09:27:07,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:27:07,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:27:07,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:27:07,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:27:07,517.517 INFO    ] time= 25/08/2026 09:27:07
[2026-08-25 09:27:07,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:27:07,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:27:07,738.738 INFO    ] No existing commands found in stream
[2026-08-25 09:27:12,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:27:12,768.768 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 09:27:14,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:27:14,302.302 INFO    ] Checking for system updates...
[2026-08-25 09:27:14,337.337 INFO    ] 200
[2026-08-25 09:27:14,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:14,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:27:14,393.393 INFO    ] No update needed
[2026-08-25 09:27:14,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 09:27:14,429.429 INFO    ] 200
[2026-08-25 09:27:14,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:14,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:27:14,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:27:14,525.525 INFO    ] No camera update needed
[2026-08-25 09:27:14,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:27:14,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:27:14,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:27:14,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:27:16,580.580 INFO    ] ================================================
[2026-08-25 09:27:16,595.595 INFO    ] Launching Daemon at Tue Aug 25 09:27:16 IST 2026
[2026-08-25 09:27:16,605.605 INFO    ] ================================================
[2026-08-25 09:27:17,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:27:17
[2026-08-25 09:27:17,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:27:18,155.155 INFO    ] Initializing speech engine...
[2026-08-25 09:27:18,160.160 INFO    ] 2026-08-25 09:27:18
[2026-08-25 09:27:18,443.443 INFO    ] 2026-08-25 09:27:18
[2026-08-25 09:27:18,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:27:18,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:27:18,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:27:19,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:27:19,024.024 INFO    ] time= 25/08/2026 09:27:19
[2026-08-25 09:27:19,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:27:19,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:27:19,246.246 INFO    ] No existing commands found in stream
[2026-08-25 09:27:24,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:27:24,285.285 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 09:27:26,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:27:26,894.894 INFO    ] Checking for system updates...
[2026-08-25 09:27:26,931.931 INFO    ] 200
[2026-08-25 09:27:26,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:26,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:27:26,991.991 INFO    ] No update needed
[2026-08-25 09:27:26,993.993 INFO    ] Checking for camera pi updates...
[2026-08-25 09:27:27,027.027 INFO    ] 200
[2026-08-25 09:27:27,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:27,073.073 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:27:27,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:27:27,133.133 INFO    ] No camera update needed
[2026-08-25 09:27:27,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:27:27,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:27:27,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:27:27,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:27:29,187.187 INFO    ] ================================================
[2026-08-25 09:27:29,202.202 INFO    ] Launching Daemon at Tue Aug 25 09:27:29 IST 2026
[2026-08-25 09:27:29,212.212 INFO    ] ================================================
[2026-08-25 09:27:29,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:27:29
[2026-08-25 09:27:30,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:27:30,630.630 INFO    ] Initializing speech engine...
[2026-08-25 09:27:30,636.636 INFO    ] 2026-08-25 09:27:30
[2026-08-25 09:27:30,894.894 INFO    ] 2026-08-25 09:27:30
[2026-08-25 09:27:30,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:27:31,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:27:31,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:27:31,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:27:31,356.356 INFO    ] time= 25/08/2026 09:27:31
[2026-08-25 09:27:31,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:27:31,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:27:31,575.575 INFO    ] No existing commands found in stream
[2026-08-25 09:27:36,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:27:36,600.600 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 09:27:39,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:27:39,217.217 INFO    ] Checking for system updates...
[2026-08-25 09:27:39,252.252 INFO    ] 200
[2026-08-25 09:27:39,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:39,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:27:39,310.310 INFO    ] No update needed
[2026-08-25 09:27:39,312.312 INFO    ] Checking for camera pi updates...
[2026-08-25 09:27:39,349.349 INFO    ] 200
[2026-08-25 09:27:39,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:39,395.395 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:27:39,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:27:39,445.445 INFO    ] No camera update needed
[2026-08-25 09:27:39,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:27:39,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:27:39,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:27:39,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:27:41,499.499 INFO    ] ================================================
[2026-08-25 09:27:41,513.513 INFO    ] Launching Daemon at Tue Aug 25 09:27:41 IST 2026
[2026-08-25 09:27:41,524.524 INFO    ] ================================================
[2026-08-25 09:27:42,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:27:42
[2026-08-25 09:27:42,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:27:42,960.960 INFO    ] Initializing speech engine...
[2026-08-25 09:27:42,969.969 INFO    ] 2026-08-25 09:27:42
[2026-08-25 09:27:43,232.232 INFO    ] 2026-08-25 09:27:43
[2026-08-25 09:27:43,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:27:43,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:27:43,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:27:43,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:27:43,623.623 INFO    ] time= 25/08/2026 09:27:43
[2026-08-25 09:27:43,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:27:43,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:27:43,729.729 INFO    ] No existing commands found in stream
[2026-08-25 09:27:48,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:27:48,744.744 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 09:27:51,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:27:51,943.943 INFO    ] Checking for system updates...
[2026-08-25 09:27:51,979.979 INFO    ] 200
[2026-08-25 09:27:51,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:52,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:27:52,038.038 INFO    ] No update needed
[2026-08-25 09:27:52,041.041 INFO    ] Checking for camera pi updates...
[2026-08-25 09:27:52,075.075 INFO    ] 200
[2026-08-25 09:27:52,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:27:52,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:27:52,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:27:52,175.175 INFO    ] No camera update needed
[2026-08-25 09:27:52,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:27:52,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:27:52,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:27:52,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:27:54,231.231 INFO    ] ================================================
[2026-08-25 09:27:54,246.246 INFO    ] Launching Daemon at Tue Aug 25 09:27:54 IST 2026
[2026-08-25 09:27:54,258.258 INFO    ] ================================================
[2026-08-25 09:27:54,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:27:54
[2026-08-25 09:27:55,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:27:55,683.683 INFO    ] Initializing speech engine...
[2026-08-25 09:27:55,693.693 INFO    ] 2026-08-25 09:27:55
[2026-08-25 09:27:55,938.938 INFO    ] 2026-08-25 09:27:55
[2026-08-25 09:27:55,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:27:56,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:27:56,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:27:56,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:27:56,436.436 INFO    ] time= 25/08/2026 09:27:56
[2026-08-25 09:27:56,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:27:56,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:27:56,629.629 INFO    ] No existing commands found in stream
[2026-08-25 09:28:01,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:28:01,658.658 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 09:28:04,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:28:04,188.188 INFO    ] Checking for system updates...
[2026-08-25 09:28:04,229.229 INFO    ] 200
[2026-08-25 09:28:04,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:04,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:04,300.300 INFO    ] No update needed
[2026-08-25 09:28:04,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 09:28:04,335.335 INFO    ] 200
[2026-08-25 09:28:04,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:04,378.378 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:28:04,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:04,428.428 INFO    ] No camera update needed
[2026-08-25 09:28:04,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:28:04,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:28:04,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:28:04,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:28:06,482.482 INFO    ] ================================================
[2026-08-25 09:28:06,499.499 INFO    ] Launching Daemon at Tue Aug 25 09:28:06 IST 2026
[2026-08-25 09:28:06,510.510 INFO    ] ================================================
[2026-08-25 09:28:07,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:28:07
[2026-08-25 09:28:07,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:28:08,132.132 INFO    ] Initializing speech engine...
[2026-08-25 09:28:08,143.143 INFO    ] 2026-08-25 09:28:08
[2026-08-25 09:28:08,455.455 INFO    ] 2026-08-25 09:28:08
[2026-08-25 09:28:08,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:28:08,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:28:08,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:28:08,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:28:08,952.952 INFO    ] time= 25/08/2026 09:28:08
[2026-08-25 09:28:08,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:28:08,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:28:09,103.103 INFO    ] No existing commands found in stream
[2026-08-25 09:28:14,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:28:14,121.121 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 09:28:16,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:28:16,206.206 INFO    ] Checking for system updates...
[2026-08-25 09:28:16,242.242 INFO    ] 200
[2026-08-25 09:28:16,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:16,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:28:16,306.306 INFO    ] No update needed
[2026-08-25 09:28:16,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 09:28:16,345.345 INFO    ] 200
[2026-08-25 09:28:16,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:16,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:28:16,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:28:16,438.438 INFO    ] No camera update needed
[2026-08-25 09:28:16,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:28:16,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:28:16,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:28:16,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:28:18,493.493 INFO    ] ================================================
[2026-08-25 09:28:18,508.508 INFO    ] Launching Daemon at Tue Aug 25 09:28:18 IST 2026
[2026-08-25 09:28:18,519.519 INFO    ] ================================================
[2026-08-25 09:28:19,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:28:19
[2026-08-25 09:28:19,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:28:20,148.148 INFO    ] Initializing speech engine...
[2026-08-25 09:28:20,162.162 INFO    ] 2026-08-25 09:28:20
[2026-08-25 09:28:20,444.444 INFO    ] 2026-08-25 09:28:20
[2026-08-25 09:28:20,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:28:20,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:28:20,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:28:20,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:28:20,926.926 INFO    ] time= 25/08/2026 09:28:20
[2026-08-25 09:28:20,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:28:21,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:28:21,117.117 INFO    ] No existing commands found in stream
[2026-08-25 09:28:26,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:28:26,142.142 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 09:28:30,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:28:30,126.126 INFO    ] Checking for system updates...
[2026-08-25 09:28:30,163.163 INFO    ] 200
[2026-08-25 09:28:30,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:30,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:30,223.223 INFO    ] No update needed
[2026-08-25 09:28:30,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 09:28:30,260.260 INFO    ] 200
[2026-08-25 09:28:30,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:30,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:28:30,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:30,361.361 INFO    ] No camera update needed
[2026-08-25 09:28:30,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:28:30,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:28:30,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:28:30,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:28:32,418.418 INFO    ] ================================================
[2026-08-25 09:28:32,436.436 INFO    ] Launching Daemon at Tue Aug 25 09:28:32 IST 2026
[2026-08-25 09:28:32,447.447 INFO    ] ================================================
[2026-08-25 09:28:33,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:28:33
[2026-08-25 09:28:33,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:28:33,896.896 INFO    ] Initializing speech engine...
[2026-08-25 09:28:33,911.911 INFO    ] 2026-08-25 09:28:33
[2026-08-25 09:28:34,197.197 INFO    ] 2026-08-25 09:28:34
[2026-08-25 09:28:34,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:28:34,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:28:34,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:28:34,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:28:34,611.611 INFO    ] time= 25/08/2026 09:28:34
[2026-08-25 09:28:34,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:28:34,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:28:34,699.699 INFO    ] No existing commands found in stream
[2026-08-25 09:28:39,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:28:39,717.717 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 09:28:41,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:28:41,174.174 INFO    ] Checking for system updates...
[2026-08-25 09:28:41,209.209 INFO    ] 200
[2026-08-25 09:28:41,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:41,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:41,265.265 INFO    ] No update needed
[2026-08-25 09:28:41,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 09:28:41,301.301 INFO    ] 200
[2026-08-25 09:28:41,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:41,343.343 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:28:41,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:41,394.394 INFO    ] No camera update needed
[2026-08-25 09:28:41,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:28:41,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:28:41,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:28:41,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:28:43,448.448 INFO    ] ================================================
[2026-08-25 09:28:43,463.463 INFO    ] Launching Daemon at Tue Aug 25 09:28:43 IST 2026
[2026-08-25 09:28:43,473.473 INFO    ] ================================================
[2026-08-25 09:28:44,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:28:44
[2026-08-25 09:28:44,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:28:44,958.958 INFO    ] Initializing speech engine...
[2026-08-25 09:28:44,965.965 INFO    ] 2026-08-25 09:28:44
[2026-08-25 09:28:45,225.225 INFO    ] 2026-08-25 09:28:45
[2026-08-25 09:28:45,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:28:45,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:28:45,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:28:45,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:28:45,687.687 INFO    ] time= 25/08/2026 09:28:45
[2026-08-25 09:28:45,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:28:45,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:28:45,920.920 INFO    ] No existing commands found in stream
[2026-08-25 09:28:50,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:28:50,938.938 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 09:28:51,423.423 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:28:51,426.426 INFO    ] Checking for system updates...
[2026-08-25 09:28:51,461.461 INFO    ] 200
[2026-08-25 09:28:51,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:51,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:51,519.519 INFO    ] No update needed
[2026-08-25 09:28:51,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 09:28:51,558.558 INFO    ] 200
[2026-08-25 09:28:51,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:28:51,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:28:51,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:28:51,760.760 INFO    ] No camera update needed
[2026-08-25 09:28:51,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:28:51,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:28:51,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:28:51,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:28:53,815.815 INFO    ] ================================================
[2026-08-25 09:28:53,830.830 INFO    ] Launching Daemon at Tue Aug 25 09:28:53 IST 2026
[2026-08-25 09:28:53,841.841 INFO    ] ================================================
[2026-08-25 09:28:54,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:28:54
[2026-08-25 09:28:55,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:28:55,348.348 INFO    ] Initializing speech engine...
[2026-08-25 09:28:55,361.361 INFO    ] 2026-08-25 09:28:55
[2026-08-25 09:28:55,625.625 INFO    ] 2026-08-25 09:28:55
[2026-08-25 09:28:55,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:28:55,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:28:55,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:28:56,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:28:56,039.039 INFO    ] time= 25/08/2026 09:28:56
[2026-08-25 09:28:56,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:28:56,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:28:56,121.121 INFO    ] No existing commands found in stream
[2026-08-25 09:29:01,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:29:01,137.137 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 09:29:05,454.454 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:29:05,457.457 INFO    ] Checking for system updates...
[2026-08-25 09:29:05,492.492 INFO    ] 200
[2026-08-25 09:29:05,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:05,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:05,551.551 INFO    ] No update needed
[2026-08-25 09:29:05,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 09:29:05,588.588 INFO    ] 200
[2026-08-25 09:29:05,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:05,631.631 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:29:05,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:05,679.679 INFO    ] No camera update needed
[2026-08-25 09:29:05,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:29:05,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:29:05,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:29:05,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:29:07,732.732 INFO    ] ================================================
[2026-08-25 09:29:07,748.748 INFO    ] Launching Daemon at Tue Aug 25 09:29:07 IST 2026
[2026-08-25 09:29:07,759.759 INFO    ] ================================================
[2026-08-25 09:29:08,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:29:08
[2026-08-25 09:29:08,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:29:09,225.225 INFO    ] Initializing speech engine...
[2026-08-25 09:29:09,230.230 INFO    ] 2026-08-25 09:29:09
[2026-08-25 09:29:09,492.492 INFO    ] 2026-08-25 09:29:09
[2026-08-25 09:29:09,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:29:09,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:29:09,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:29:09,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:29:09,868.868 INFO    ] time= 25/08/2026 09:29:09
[2026-08-25 09:29:09,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:29:09,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:29:09,993.993 INFO    ] No existing commands found in stream
[2026-08-25 09:29:15,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:29:15,011.011 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 09:29:19,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:29:19,251.251 INFO    ] Checking for system updates...
[2026-08-25 09:29:19,286.286 INFO    ] 200
[2026-08-25 09:29:19,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:19,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:19,342.342 INFO    ] No update needed
[2026-08-25 09:29:19,345.345 INFO    ] Checking for camera pi updates...
[2026-08-25 09:29:19,378.378 INFO    ] 200
[2026-08-25 09:29:19,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:19,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:29:19,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:19,469.469 INFO    ] No camera update needed
[2026-08-25 09:29:19,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:29:19,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:29:19,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:29:19,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:29:21,522.522 INFO    ] ================================================
[2026-08-25 09:29:21,537.537 INFO    ] Launching Daemon at Tue Aug 25 09:29:21 IST 2026
[2026-08-25 09:29:21,550.550 INFO    ] ================================================
[2026-08-25 09:29:22,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:29:22
[2026-08-25 09:29:22,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:29:22,996.996 INFO    ] Initializing speech engine...
[2026-08-25 09:29:23,005.005 INFO    ] 2026-08-25 09:29:23
[2026-08-25 09:29:23,253.253 INFO    ] 2026-08-25 09:29:23
[2026-08-25 09:29:23,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:29:23,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:29:23,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:29:23,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:29:23,717.717 INFO    ] time= 25/08/2026 09:29:23
[2026-08-25 09:29:23,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:29:23,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:29:23,962.962 INFO    ] No existing commands found in stream
[2026-08-25 09:29:28,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:29:28,984.984 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 09:29:29,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:29:29,971.971 INFO    ] Checking for system updates...
[2026-08-25 09:29:30,010.010 INFO    ] 200
[2026-08-25 09:29:30,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:30,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:30,072.072 INFO    ] No update needed
[2026-08-25 09:29:30,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 09:29:30,107.107 INFO    ] 200
[2026-08-25 09:29:30,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:30,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:29:30,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:30,207.207 INFO    ] No camera update needed
[2026-08-25 09:29:30,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:29:30,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:29:30,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:29:30,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:29:32,266.266 INFO    ] ================================================
[2026-08-25 09:29:32,282.282 INFO    ] Launching Daemon at Tue Aug 25 09:29:32 IST 2026
[2026-08-25 09:29:32,293.293 INFO    ] ================================================
[2026-08-25 09:29:32,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:29:32
[2026-08-25 09:29:33,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:29:33,743.743 INFO    ] Initializing speech engine...
[2026-08-25 09:29:33,751.751 INFO    ] 2026-08-25 09:29:33
[2026-08-25 09:29:33,999.999 INFO    ] 2026-08-25 09:29:33
[2026-08-25 09:29:34,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:29:34,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:29:34,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:29:34,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:29:34,488.488 INFO    ] time= 25/08/2026 09:29:34
[2026-08-25 09:29:34,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:29:34,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:29:34,698.698 INFO    ] No existing commands found in stream
[2026-08-25 09:29:39,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:29:39,725.725 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 09:29:43,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:29:43,580.580 INFO    ] Checking for system updates...
[2026-08-25 09:29:43,615.615 INFO    ] 200
[2026-08-25 09:29:43,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:43,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:29:43,671.671 INFO    ] No update needed
[2026-08-25 09:29:43,674.674 INFO    ] Checking for camera pi updates...
[2026-08-25 09:29:43,707.707 INFO    ] 200
[2026-08-25 09:29:43,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:43,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:29:43,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:29:43,802.802 INFO    ] No camera update needed
[2026-08-25 09:29:43,804.804 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:29:43,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:29:43,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:29:43,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:29:45,859.859 INFO    ] ================================================
[2026-08-25 09:29:45,874.874 INFO    ] Launching Daemon at Tue Aug 25 09:29:45 IST 2026
[2026-08-25 09:29:45,884.884 INFO    ] ================================================
[2026-08-25 09:29:46,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:29:46
[2026-08-25 09:29:47,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:29:47,436.436 INFO    ] Initializing speech engine...
[2026-08-25 09:29:47,445.445 INFO    ] 2026-08-25 09:29:47
[2026-08-25 09:29:47,725.725 INFO    ] 2026-08-25 09:29:47
[2026-08-25 09:29:47,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:29:47,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:29:48,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:29:48,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:29:48,199.199 INFO    ] time= 25/08/2026 09:29:48
[2026-08-25 09:29:48,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:29:48,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:29:48,416.416 INFO    ] No existing commands found in stream
[2026-08-25 09:29:53,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:29:53,442.442 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 09:29:56,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:29:56,116.116 INFO    ] Checking for system updates...
[2026-08-25 09:29:56,157.157 INFO    ] 200
[2026-08-25 09:29:56,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:56,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:56,225.225 INFO    ] No update needed
[2026-08-25 09:29:56,228.228 INFO    ] Checking for camera pi updates...
[2026-08-25 09:29:56,263.263 INFO    ] 200
[2026-08-25 09:29:56,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:29:56,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:29:56,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:29:56,362.362 INFO    ] No camera update needed
[2026-08-25 09:29:56,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:29:56,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:29:56,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:29:56,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:29:58,416.416 INFO    ] ================================================
[2026-08-25 09:29:58,430.430 INFO    ] Launching Daemon at Tue Aug 25 09:29:58 IST 2026
[2026-08-25 09:29:58,442.442 INFO    ] ================================================
[2026-08-25 09:29:59,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:29:59
[2026-08-25 09:29:59,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:29:59,885.885 INFO    ] Initializing speech engine...
[2026-08-25 09:29:59,895.895 INFO    ] 2026-08-25 09:29:59
[2026-08-25 09:30:00,179.179 INFO    ] 2026-08-25 09:30:00
[2026-08-25 09:30:00,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:30:00,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:30:00,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:30:00,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:30:00,710.710 INFO    ] time= 25/08/2026 09:30:00
[2026-08-25 09:30:00,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:30:00,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:30:00,900.900 INFO    ] No existing commands found in stream
[2026-08-25 09:30:05,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:30:05,934.934 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 09:30:08,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:30:08,738.738 INFO    ] Checking for system updates...
[2026-08-25 09:30:08,775.775 INFO    ] 200
[2026-08-25 09:30:08,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:08,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:30:08,834.834 INFO    ] No update needed
[2026-08-25 09:30:08,837.837 INFO    ] Checking for camera pi updates...
[2026-08-25 09:30:08,870.870 INFO    ] 200
[2026-08-25 09:30:08,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:08,913.913 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:30:08,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:30:08,970.970 INFO    ] No camera update needed
[2026-08-25 09:30:08,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:30:08,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:30:08,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:30:08,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:30:11,024.024 INFO    ] ================================================
[2026-08-25 09:30:11,039.039 INFO    ] Launching Daemon at Tue Aug 25 09:30:11 IST 2026
[2026-08-25 09:30:11,050.050 INFO    ] ================================================
[2026-08-25 09:30:11,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:30:11
[2026-08-25 09:30:12,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:30:12,485.485 INFO    ] Initializing speech engine...
[2026-08-25 09:30:12,493.493 INFO    ] 2026-08-25 09:30:12
[2026-08-25 09:30:12,740.740 INFO    ] 2026-08-25 09:30:12
[2026-08-25 09:30:12,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:30:13,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:30:13,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:30:13,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:30:13,231.231 INFO    ] time= 25/08/2026 09:30:13
[2026-08-25 09:30:13,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:30:13,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:30:13,429.429 INFO    ] No existing commands found in stream
[2026-08-25 09:30:18,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:30:18,459.459 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 09:30:19,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:30:19,456.456 INFO    ] Checking for system updates...
[2026-08-25 09:30:19,492.492 INFO    ] 200
[2026-08-25 09:30:19,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:19,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:30:19,557.557 INFO    ] No update needed
[2026-08-25 09:30:19,559.559 INFO    ] Checking for camera pi updates...
[2026-08-25 09:30:19,592.592 INFO    ] 200
[2026-08-25 09:30:19,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:19,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:30:19,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:30:19,707.707 INFO    ] No camera update needed
[2026-08-25 09:30:19,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:30:19,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:30:19,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:30:19,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:30:21,764.764 INFO    ] ================================================
[2026-08-25 09:30:21,779.779 INFO    ] Launching Daemon at Tue Aug 25 09:30:21 IST 2026
[2026-08-25 09:30:21,790.790 INFO    ] ================================================
[2026-08-25 09:30:22,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:30:22
[2026-08-25 09:30:23,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:30:23,410.410 INFO    ] Initializing speech engine...
[2026-08-25 09:30:23,424.424 INFO    ] 2026-08-25 09:30:23
[2026-08-25 09:30:23,736.736 INFO    ] 2026-08-25 09:30:23
[2026-08-25 09:30:23,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:30:24,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:30:24,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:30:24,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:30:24,239.239 INFO    ] time= 25/08/2026 09:30:24
[2026-08-25 09:30:24,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:30:24,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:30:24,393.393 INFO    ] No existing commands found in stream
[2026-08-25 09:30:29,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:30:29,414.414 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 09:30:31,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:30:31,615.615 INFO    ] Checking for system updates...
[2026-08-25 09:30:31,664.664 INFO    ] 200
[2026-08-25 09:30:31,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:31,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:30:31,729.729 INFO    ] No update needed
[2026-08-25 09:30:31,732.732 INFO    ] Checking for camera pi updates...
[2026-08-25 09:30:31,772.772 INFO    ] 200
[2026-08-25 09:30:31,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:31,820.820 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:30:31,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:30:31,864.864 INFO    ] No camera update needed
[2026-08-25 09:30:31,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:30:31,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:30:31,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:30:31,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:30:33,925.925 INFO    ] ================================================
[2026-08-25 09:30:33,939.939 INFO    ] Launching Daemon at Tue Aug 25 09:30:33 IST 2026
[2026-08-25 09:30:33,950.950 INFO    ] ================================================
[2026-08-25 09:30:34,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:30:34
[2026-08-25 09:30:35,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:30:35,375.375 INFO    ] Initializing speech engine...
[2026-08-25 09:30:35,398.398 INFO    ] 2026-08-25 09:30:35
[2026-08-25 09:30:35,650.650 INFO    ] 2026-08-25 09:30:35
[2026-08-25 09:30:35,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:30:35,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:30:35,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:30:36,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:30:36,092.092 INFO    ] time= 25/08/2026 09:30:36
[2026-08-25 09:30:36,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:30:36,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:30:36,348.348 INFO    ] No existing commands found in stream
[2026-08-25 09:30:41,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:30:41,373.373 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 09:30:45,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:30:45,762.762 INFO    ] Checking for system updates...
[2026-08-25 09:30:45,799.799 INFO    ] 200
[2026-08-25 09:30:45,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:45,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:30:45,857.857 INFO    ] No update needed
[2026-08-25 09:30:45,859.859 INFO    ] Checking for camera pi updates...
[2026-08-25 09:30:45,894.894 INFO    ] 200
[2026-08-25 09:30:45,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:45,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:30:45,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:30:45,989.989 INFO    ] No camera update needed
[2026-08-25 09:30:45,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:30:45,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:30:45,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:30:46,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:30:48,045.045 INFO    ] ================================================
[2026-08-25 09:30:48,060.060 INFO    ] Launching Daemon at Tue Aug 25 09:30:48 IST 2026
[2026-08-25 09:30:48,070.070 INFO    ] ================================================
[2026-08-25 09:30:48,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:30:48
[2026-08-25 09:30:49,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:30:49,671.671 INFO    ] Initializing speech engine...
[2026-08-25 09:30:49,682.682 INFO    ] 2026-08-25 09:30:49
[2026-08-25 09:30:49,965.965 INFO    ] 2026-08-25 09:30:49
[2026-08-25 09:30:50,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:30:50,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:30:50,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:30:50,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:30:50,426.426 INFO    ] time= 25/08/2026 09:30:50
[2026-08-25 09:30:50,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:30:50,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:30:50,679.679 INFO    ] No existing commands found in stream
[2026-08-25 09:30:55,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:30:55,700.700 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 09:30:56,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:30:56,294.294 INFO    ] Checking for system updates...
[2026-08-25 09:30:56,331.331 INFO    ] 200
[2026-08-25 09:30:56,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:56,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:30:56,393.393 INFO    ] No update needed
[2026-08-25 09:30:56,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 09:30:56,432.432 INFO    ] 200
[2026-08-25 09:30:56,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:30:56,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:30:56,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:30:56,624.624 INFO    ] No camera update needed
[2026-08-25 09:30:56,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:30:56,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:30:56,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:30:56,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:30:58,679.679 INFO    ] ================================================
[2026-08-25 09:30:58,694.694 INFO    ] Launching Daemon at Tue Aug 25 09:30:58 IST 2026
[2026-08-25 09:30:58,705.705 INFO    ] ================================================
[2026-08-25 09:30:59,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:30:59
[2026-08-25 09:31:00,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:31:00,307.307 INFO    ] Initializing speech engine...
[2026-08-25 09:31:00,319.319 INFO    ] 2026-08-25 09:31:00
[2026-08-25 09:31:00,601.601 INFO    ] 2026-08-25 09:31:00
[2026-08-25 09:31:00,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:31:00,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:31:00,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:31:01,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:31:01,159.159 INFO    ] time= 25/08/2026 09:31:01
[2026-08-25 09:31:01,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:31:01,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:31:01,261.261 INFO    ] No existing commands found in stream
[2026-08-25 09:31:06,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:31:06,274.274 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 09:31:07,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:31:07,309.309 INFO    ] Checking for system updates...
[2026-08-25 09:31:07,345.345 INFO    ] 200
[2026-08-25 09:31:07,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:07,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:31:07,401.401 INFO    ] No update needed
[2026-08-25 09:31:07,405.405 INFO    ] Checking for camera pi updates...
[2026-08-25 09:31:07,439.439 INFO    ] 200
[2026-08-25 09:31:07,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:07,481.481 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:31:07,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:31:07,536.536 INFO    ] No camera update needed
[2026-08-25 09:31:07,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:31:07,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:31:07,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:31:07,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:31:09,590.590 INFO    ] ================================================
[2026-08-25 09:31:09,606.606 INFO    ] Launching Daemon at Tue Aug 25 09:31:09 IST 2026
[2026-08-25 09:31:09,617.617 INFO    ] ================================================
[2026-08-25 09:31:10,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:31:10
[2026-08-25 09:31:10,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:31:11,179.179 INFO    ] Initializing speech engine...
[2026-08-25 09:31:11,190.190 INFO    ] 2026-08-25 09:31:11
[2026-08-25 09:31:11,439.439 INFO    ] 2026-08-25 09:31:11
[2026-08-25 09:31:11,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:31:11,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:31:11,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:31:11,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:31:11,900.900 INFO    ] time= 25/08/2026 09:31:11
[2026-08-25 09:31:11,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:31:11,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:31:12,118.118 INFO    ] No existing commands found in stream
[2026-08-25 09:31:17,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:31:17,143.143 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 09:31:21,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:31:21,112.112 INFO    ] Checking for system updates...
[2026-08-25 09:31:21,152.152 INFO    ] 200
[2026-08-25 09:31:21,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:21,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:31:21,209.209 INFO    ] No update needed
[2026-08-25 09:31:21,211.211 INFO    ] Checking for camera pi updates...
[2026-08-25 09:31:21,246.246 INFO    ] 200
[2026-08-25 09:31:21,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:21,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:31:21,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:31:21,342.342 INFO    ] No camera update needed
[2026-08-25 09:31:21,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:31:21,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:31:21,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:31:21,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:31:23,400.400 INFO    ] ================================================
[2026-08-25 09:31:23,415.415 INFO    ] Launching Daemon at Tue Aug 25 09:31:23 IST 2026
[2026-08-25 09:31:23,426.426 INFO    ] ================================================
[2026-08-25 09:31:23,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:31:23
[2026-08-25 09:31:24,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:31:24,838.838 INFO    ] Initializing speech engine...
[2026-08-25 09:31:24,849.849 INFO    ] 2026-08-25 09:31:24
[2026-08-25 09:31:25,121.121 INFO    ] 2026-08-25 09:31:25
[2026-08-25 09:31:25,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:31:25,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:31:25,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:31:25,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:31:25,646.646 INFO    ] time= 25/08/2026 09:31:25
[2026-08-25 09:31:25,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:31:25,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:31:25,799.799 INFO    ] No existing commands found in stream
[2026-08-25 09:31:30,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:31:30,818.818 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 09:31:31,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:31:31,562.562 INFO    ] Checking for system updates...
[2026-08-25 09:31:31,599.599 INFO    ] 200
[2026-08-25 09:31:31,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:31,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:31:31,660.660 INFO    ] No update needed
[2026-08-25 09:31:31,663.663 INFO    ] Checking for camera pi updates...
[2026-08-25 09:31:31,698.698 INFO    ] 200
[2026-08-25 09:31:31,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:31,756.756 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:31:31,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:31:31,819.819 INFO    ] No camera update needed
[2026-08-25 09:31:31,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:31:31,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:31:31,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:31:31,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:31:33,881.881 INFO    ] ================================================
[2026-08-25 09:31:33,896.896 INFO    ] Launching Daemon at Tue Aug 25 09:31:33 IST 2026
[2026-08-25 09:31:33,907.907 INFO    ] ================================================
[2026-08-25 09:31:34,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:31:34
[2026-08-25 09:31:35,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:31:35,350.350 INFO    ] Initializing speech engine...
[2026-08-25 09:31:35,358.358 INFO    ] 2026-08-25 09:31:35
[2026-08-25 09:31:35,630.630 INFO    ] 2026-08-25 09:31:35
[2026-08-25 09:31:35,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:31:35,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:31:35,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:31:36,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:31:36,109.109 INFO    ] time= 25/08/2026 09:31:36
[2026-08-25 09:31:36,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:31:36,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:31:36,342.342 INFO    ] No existing commands found in stream
[2026-08-25 09:31:41,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:31:41,359.359 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 09:31:45,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:31:45,051.051 INFO    ] Checking for system updates...
[2026-08-25 09:31:45,087.087 INFO    ] 200
[2026-08-25 09:31:45,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:45,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:31:45,145.145 INFO    ] No update needed
[2026-08-25 09:31:45,147.147 INFO    ] Checking for camera pi updates...
[2026-08-25 09:31:45,199.199 INFO    ] 200
[2026-08-25 09:31:45,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:45,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:31:45,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:31:45,289.289 INFO    ] No camera update needed
[2026-08-25 09:31:45,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:31:45,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:31:45,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:31:45,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:31:47,344.344 INFO    ] ================================================
[2026-08-25 09:31:47,359.359 INFO    ] Launching Daemon at Tue Aug 25 09:31:47 IST 2026
[2026-08-25 09:31:47,371.371 INFO    ] ================================================
[2026-08-25 09:31:47,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:31:47
[2026-08-25 09:31:48,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:31:48,823.823 INFO    ] Initializing speech engine...
[2026-08-25 09:31:48,828.828 INFO    ] 2026-08-25 09:31:48
[2026-08-25 09:31:49,090.090 INFO    ] 2026-08-25 09:31:49
[2026-08-25 09:31:49,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:31:49,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:31:49,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:31:49,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:31:49,575.575 INFO    ] time= 25/08/2026 09:31:49
[2026-08-25 09:31:49,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:31:49,644.644 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:31:49,778.778 INFO    ] No existing commands found in stream
[2026-08-25 09:31:54,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:31:54,800.800 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 09:31:58,462.462 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:31:58,464.464 INFO    ] Checking for system updates...
[2026-08-25 09:31:58,500.500 INFO    ] 200
[2026-08-25 09:31:58,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:58,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:31:58,564.564 INFO    ] No update needed
[2026-08-25 09:31:58,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 09:31:58,604.604 INFO    ] 200
[2026-08-25 09:31:58,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:31:58,652.652 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:31:58,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:31:58,703.703 INFO    ] No camera update needed
[2026-08-25 09:31:58,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:31:58,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:31:58,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:31:58,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:32:00,762.762 INFO    ] ================================================
[2026-08-25 09:32:00,778.778 INFO    ] Launching Daemon at Tue Aug 25 09:32:00 IST 2026
[2026-08-25 09:32:00,789.789 INFO    ] ================================================
[2026-08-25 09:32:01,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:32:01
[2026-08-25 09:32:02,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:32:02,507.507 INFO    ] Initializing speech engine...
[2026-08-25 09:32:02,527.527 INFO    ] 2026-08-25 09:32:02
[2026-08-25 09:32:02,829.829 INFO    ] 2026-08-25 09:32:02
[2026-08-25 09:32:02,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:32:03,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:32:03,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:32:03,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:32:03,189.189 INFO    ] time= 25/08/2026 09:32:03
[2026-08-25 09:32:03,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:32:03,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:32:03,315.315 INFO    ] No existing commands found in stream
[2026-08-25 09:32:08,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:32:08,330.330 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 09:32:08,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:32:08,793.793 INFO    ] Checking for system updates...
[2026-08-25 09:32:08,829.829 INFO    ] 200
[2026-08-25 09:32:08,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:08,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:32:08,888.888 INFO    ] No update needed
[2026-08-25 09:32:08,890.890 INFO    ] Checking for camera pi updates...
[2026-08-25 09:32:08,928.928 INFO    ] 200
[2026-08-25 09:32:08,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:08,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:32:09,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:32:09,024.024 INFO    ] No camera update needed
[2026-08-25 09:32:09,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:32:09,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:32:09,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:32:09,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:32:11,083.083 INFO    ] ================================================
[2026-08-25 09:32:11,099.099 INFO    ] Launching Daemon at Tue Aug 25 09:32:11 IST 2026
[2026-08-25 09:32:11,110.110 INFO    ] ================================================
[2026-08-25 09:32:11,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:32:11
[2026-08-25 09:32:12,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:32:12,726.726 INFO    ] Initializing speech engine...
[2026-08-25 09:32:12,739.739 INFO    ] 2026-08-25 09:32:12
[2026-08-25 09:32:13,050.050 INFO    ] 2026-08-25 09:32:13
[2026-08-25 09:32:13,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:32:13,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:32:13,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:32:13,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:32:13,791.791 INFO    ] time= 25/08/2026 09:32:13
[2026-08-25 09:32:13,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:32:13,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:32:13,997.997 INFO    ] No existing commands found in stream
[2026-08-25 09:32:19,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:32:19,010.010 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 09:32:22,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:32:22,052.052 INFO    ] Checking for system updates...
[2026-08-25 09:32:22,090.090 INFO    ] 200
[2026-08-25 09:32:22,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:22,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:32:22,156.156 INFO    ] No update needed
[2026-08-25 09:32:22,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 09:32:22,195.195 INFO    ] 200
[2026-08-25 09:32:22,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:22,238.238 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:32:22,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:32:22,292.292 INFO    ] No camera update needed
[2026-08-25 09:32:22,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:32:22,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:32:22,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:32:22,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:32:24,352.352 INFO    ] ================================================
[2026-08-25 09:32:24,367.367 INFO    ] Launching Daemon at Tue Aug 25 09:32:24 IST 2026
[2026-08-25 09:32:24,378.378 INFO    ] ================================================
[2026-08-25 09:32:24,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:32:24
[2026-08-25 09:32:25,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:32:25,815.815 INFO    ] Initializing speech engine...
[2026-08-25 09:32:25,824.824 INFO    ] 2026-08-25 09:32:25
[2026-08-25 09:32:26,094.094 INFO    ] 2026-08-25 09:32:26
[2026-08-25 09:32:26,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:32:26,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:32:26,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:32:26,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:32:26,483.483 INFO    ] time= 25/08/2026 09:32:26
[2026-08-25 09:32:26,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:32:26,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:32:26,597.597 INFO    ] No existing commands found in stream
[2026-08-25 09:32:31,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:32:31,636.636 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 09:32:34,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:32:34,305.305 INFO    ] Checking for system updates...
[2026-08-25 09:32:34,345.345 INFO    ] 200
[2026-08-25 09:32:34,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:34,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:32:34,411.411 INFO    ] No update needed
[2026-08-25 09:32:34,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 09:32:34,449.449 INFO    ] 200
[2026-08-25 09:32:34,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:34,493.493 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:32:34,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:32:34,554.554 INFO    ] No camera update needed
[2026-08-25 09:32:34,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:32:34,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:32:34,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:32:34,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:32:36,613.613 INFO    ] ================================================
[2026-08-25 09:32:36,630.630 INFO    ] Launching Daemon at Tue Aug 25 09:32:36 IST 2026
[2026-08-25 09:32:36,641.641 INFO    ] ================================================
[2026-08-25 09:32:37,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:32:37
[2026-08-25 09:32:37,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:32:38,089.089 INFO    ] Initializing speech engine...
[2026-08-25 09:32:38,099.099 INFO    ] 2026-08-25 09:32:38
[2026-08-25 09:32:38,359.359 INFO    ] 2026-08-25 09:32:38
[2026-08-25 09:32:38,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:32:38,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:32:38,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:32:38,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:32:38,899.899 INFO    ] time= 25/08/2026 09:32:38
[2026-08-25 09:32:38,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:32:38,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:32:39,053.053 INFO    ] No existing commands found in stream
[2026-08-25 09:32:44,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:32:44,079.079 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 09:32:47,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:32:47,051.051 INFO    ] Checking for system updates...
[2026-08-25 09:32:47,086.086 INFO    ] 200
[2026-08-25 09:32:47,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:47,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:32:47,150.150 INFO    ] No update needed
[2026-08-25 09:32:47,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 09:32:47,186.186 INFO    ] 200
[2026-08-25 09:32:47,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:47,229.229 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:32:47,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:32:47,285.285 INFO    ] No camera update needed
[2026-08-25 09:32:47,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:32:47,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:32:47,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:32:47,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:32:49,340.340 INFO    ] ================================================
[2026-08-25 09:32:49,355.355 INFO    ] Launching Daemon at Tue Aug 25 09:32:49 IST 2026
[2026-08-25 09:32:49,366.366 INFO    ] ================================================
[2026-08-25 09:32:49,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:32:49
[2026-08-25 09:32:50,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:32:50,823.823 INFO    ] Initializing speech engine...
[2026-08-25 09:32:50,831.831 INFO    ] 2026-08-25 09:32:50
[2026-08-25 09:32:51,089.089 INFO    ] 2026-08-25 09:32:51
[2026-08-25 09:32:51,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:32:51,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:32:51,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:32:51,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:32:51,625.625 INFO    ] time= 25/08/2026 09:32:51
[2026-08-25 09:32:51,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:32:51,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:32:51,777.777 INFO    ] No existing commands found in stream
[2026-08-25 09:32:56,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:32:56,795.795 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 09:32:59,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:32:59,603.603 INFO    ] Checking for system updates...
[2026-08-25 09:32:59,643.643 INFO    ] 200
[2026-08-25 09:32:59,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:59,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:32:59,700.700 INFO    ] No update needed
[2026-08-25 09:32:59,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 09:32:59,740.740 INFO    ] 200
[2026-08-25 09:32:59,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:32:59,782.782 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:32:59,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:32:59,940.940 INFO    ] No camera update needed
[2026-08-25 09:32:59,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:32:59,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:32:59,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:32:59,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:33:02,998.998 INFO    ] ================================================
[2026-08-25 09:33:02,022.022 INFO    ] Launching Daemon at Tue Aug 25 09:33:02 IST 2026
[2026-08-25 09:33:02,040.040 INFO    ] ================================================
[2026-08-25 09:33:02,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:33:02
[2026-08-25 09:33:03,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:33:03,609.609 INFO    ] Initializing speech engine...
[2026-08-25 09:33:03,624.624 INFO    ] 2026-08-25 09:33:03
[2026-08-25 09:33:03,893.893 INFO    ] 2026-08-25 09:33:03
[2026-08-25 09:33:03,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:33:04,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:33:04,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:33:04,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:33:04,254.254 INFO    ] time= 25/08/2026 09:33:04
[2026-08-25 09:33:04,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:33:04,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:33:04,367.367 INFO    ] No existing commands found in stream
[2026-08-25 09:33:09,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:33:09,385.385 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 09:33:10,857.857 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:33:10,860.860 INFO    ] Checking for system updates...
[2026-08-25 09:33:10,895.895 INFO    ] 200
[2026-08-25 09:33:10,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:10,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:10,958.958 INFO    ] No update needed
[2026-08-25 09:33:10,960.960 INFO    ] Checking for camera pi updates...
[2026-08-25 09:33:10,993.993 INFO    ] 200
[2026-08-25 09:33:10,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:11,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:33:11,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:11,094.094 INFO    ] No camera update needed
[2026-08-25 09:33:11,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:33:11,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:33:11,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:33:11,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:33:13,148.148 INFO    ] ================================================
[2026-08-25 09:33:13,163.163 INFO    ] Launching Daemon at Tue Aug 25 09:33:13 IST 2026
[2026-08-25 09:33:13,174.174 INFO    ] ================================================
[2026-08-25 09:33:13,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:33:13
[2026-08-25 09:33:14,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:33:14,597.597 INFO    ] Initializing speech engine...
[2026-08-25 09:33:14,606.606 INFO    ] 2026-08-25 09:33:14
[2026-08-25 09:33:14,854.854 INFO    ] 2026-08-25 09:33:14
[2026-08-25 09:33:14,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:33:15,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:33:15,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:33:15,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:33:15,228.228 INFO    ] time= 25/08/2026 09:33:15
[2026-08-25 09:33:15,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:33:15,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:33:15,411.411 INFO    ] No existing commands found in stream
[2026-08-25 09:33:20,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:33:20,439.439 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 09:33:23,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:33:23,267.267 INFO    ] Checking for system updates...
[2026-08-25 09:33:23,303.303 INFO    ] 200
[2026-08-25 09:33:23,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:23,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:23,367.367 INFO    ] No update needed
[2026-08-25 09:33:23,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 09:33:23,403.403 INFO    ] 200
[2026-08-25 09:33:23,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:23,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:33:23,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:23,497.497 INFO    ] No camera update needed
[2026-08-25 09:33:23,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:33:23,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:33:23,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:33:23,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:33:25,554.554 INFO    ] ================================================
[2026-08-25 09:33:25,571.571 INFO    ] Launching Daemon at Tue Aug 25 09:33:25 IST 2026
[2026-08-25 09:33:25,583.583 INFO    ] ================================================
[2026-08-25 09:33:26,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:33:26
[2026-08-25 09:33:26,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:33:27,008.008 INFO    ] Initializing speech engine...
[2026-08-25 09:33:27,015.015 INFO    ] 2026-08-25 09:33:27
[2026-08-25 09:33:27,311.311 INFO    ] 2026-08-25 09:33:27
[2026-08-25 09:33:27,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:33:27,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:33:27,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:33:27,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:33:27,730.730 INFO    ] time= 25/08/2026 09:33:27
[2026-08-25 09:33:27,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:33:27,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:33:27,908.908 INFO    ] No existing commands found in stream
[2026-08-25 09:33:32,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:33:32,941.941 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 09:33:34,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:33:34,328.328 INFO    ] Checking for system updates...
[2026-08-25 09:33:34,363.363 INFO    ] 200
[2026-08-25 09:33:34,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:34,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:33:34,421.421 INFO    ] No update needed
[2026-08-25 09:33:34,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 09:33:34,460.460 INFO    ] 200
[2026-08-25 09:33:34,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:34,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:33:34,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:33:34,556.556 INFO    ] No camera update needed
[2026-08-25 09:33:34,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:33:34,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:33:34,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:33:34,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:33:36,610.610 INFO    ] ================================================
[2026-08-25 09:33:36,626.626 INFO    ] Launching Daemon at Tue Aug 25 09:33:36 IST 2026
[2026-08-25 09:33:36,637.637 INFO    ] ================================================
[2026-08-25 09:33:37,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:33:37
[2026-08-25 09:33:37,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:33:38,086.086 INFO    ] Initializing speech engine...
[2026-08-25 09:33:38,095.095 INFO    ] 2026-08-25 09:33:38
[2026-08-25 09:33:38,357.357 INFO    ] 2026-08-25 09:33:38
[2026-08-25 09:33:38,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:33:38,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:33:38,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:33:38,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:33:38,846.846 INFO    ] time= 25/08/2026 09:33:38
[2026-08-25 09:33:38,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:33:38,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:33:39,041.041 INFO    ] No existing commands found in stream
[2026-08-25 09:33:44,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:33:44,068.068 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 09:33:45,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:33:45,487.487 INFO    ] Checking for system updates...
[2026-08-25 09:33:45,522.522 INFO    ] 200
[2026-08-25 09:33:45,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:45,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:45,579.579 INFO    ] No update needed
[2026-08-25 09:33:45,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 09:33:45,619.619 INFO    ] 200
[2026-08-25 09:33:45,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:45,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:33:45,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:45,713.713 INFO    ] No camera update needed
[2026-08-25 09:33:45,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:33:45,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:33:45,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:33:45,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:33:47,772.772 INFO    ] ================================================
[2026-08-25 09:33:47,788.788 INFO    ] Launching Daemon at Tue Aug 25 09:33:47 IST 2026
[2026-08-25 09:33:47,799.799 INFO    ] ================================================
[2026-08-25 09:33:48,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:33:48
[2026-08-25 09:33:48,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:33:49,219.219 INFO    ] Initializing speech engine...
[2026-08-25 09:33:49,228.228 INFO    ] 2026-08-25 09:33:49
[2026-08-25 09:33:49,477.477 INFO    ] 2026-08-25 09:33:49
[2026-08-25 09:33:49,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:33:49,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:33:49,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:33:49,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:33:49,956.956 INFO    ] time= 25/08/2026 09:33:49
[2026-08-25 09:33:50,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:33:50,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:33:50,187.187 INFO    ] No existing commands found in stream
[2026-08-25 09:33:55,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:33:55,214.214 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 09:33:56,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:33:56,521.521 INFO    ] Checking for system updates...
[2026-08-25 09:33:56,556.556 INFO    ] 200
[2026-08-25 09:33:56,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:56,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:56,613.613 INFO    ] No update needed
[2026-08-25 09:33:56,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 09:33:56,649.649 INFO    ] 200
[2026-08-25 09:33:56,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:33:56,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:33:56,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:33:56,752.752 INFO    ] No camera update needed
[2026-08-25 09:33:56,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:33:56,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:33:56,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:33:56,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:33:58,807.807 INFO    ] ================================================
[2026-08-25 09:33:58,822.822 INFO    ] Launching Daemon at Tue Aug 25 09:33:58 IST 2026
[2026-08-25 09:33:58,833.833 INFO    ] ================================================
[2026-08-25 09:33:59,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:33:59
[2026-08-25 09:34:00,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:34:00,292.292 INFO    ] Initializing speech engine...
[2026-08-25 09:34:00,302.302 INFO    ] 2026-08-25 09:34:00
[2026-08-25 09:34:00,566.566 INFO    ] 2026-08-25 09:34:00
[2026-08-25 09:34:00,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:34:00,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:34:00,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:34:00,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:34:00,943.943 INFO    ] time= 25/08/2026 09:34:00
[2026-08-25 09:34:00,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:34:00,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:34:01,137.137 INFO    ] No existing commands found in stream
[2026-08-25 09:34:06,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:34:06,153.153 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 09:34:08,289.289 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:34:08,292.292 INFO    ] Checking for system updates...
[2026-08-25 09:34:08,327.327 INFO    ] 200
[2026-08-25 09:34:08,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:08,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:08,385.385 INFO    ] No update needed
[2026-08-25 09:34:08,387.387 INFO    ] Checking for camera pi updates...
[2026-08-25 09:34:08,424.424 INFO    ] 200
[2026-08-25 09:34:08,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:08,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:34:08,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:08,514.514 INFO    ] No camera update needed
[2026-08-25 09:34:08,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:34:08,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:34:08,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:34:08,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:34:10,569.569 INFO    ] ================================================
[2026-08-25 09:34:10,583.583 INFO    ] Launching Daemon at Tue Aug 25 09:34:10 IST 2026
[2026-08-25 09:34:10,594.594 INFO    ] ================================================
[2026-08-25 09:34:11,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:34:11
[2026-08-25 09:34:11,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:34:11,996.996 INFO    ] Initializing speech engine...
[2026-08-25 09:34:12,003.003 INFO    ] 2026-08-25 09:34:11
[2026-08-25 09:34:12,301.301 INFO    ] 2026-08-25 09:34:12
[2026-08-25 09:34:12,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:34:12,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:34:12,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:34:12,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:34:12,778.778 INFO    ] time= 25/08/2026 09:34:12
[2026-08-25 09:34:12,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:34:12,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:34:12,991.991 INFO    ] No existing commands found in stream
[2026-08-25 09:34:18,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:34:18,019.019 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 09:34:20,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:34:20,429.429 INFO    ] Checking for system updates...
[2026-08-25 09:34:20,465.465 INFO    ] 200
[2026-08-25 09:34:20,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:20,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:20,524.524 INFO    ] No update needed
[2026-08-25 09:34:20,526.526 INFO    ] Checking for camera pi updates...
[2026-08-25 09:34:20,560.560 INFO    ] 200
[2026-08-25 09:34:20,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:20,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:34:20,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:20,651.651 INFO    ] No camera update needed
[2026-08-25 09:34:20,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:34:20,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:34:20,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:34:20,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:34:22,710.710 INFO    ] ================================================
[2026-08-25 09:34:22,725.725 INFO    ] Launching Daemon at Tue Aug 25 09:34:22 IST 2026
[2026-08-25 09:34:22,736.736 INFO    ] ================================================
[2026-08-25 09:34:23,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:34:23
[2026-08-25 09:34:23,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:34:24,145.145 INFO    ] Initializing speech engine...
[2026-08-25 09:34:24,164.164 INFO    ] 2026-08-25 09:34:24
[2026-08-25 09:34:24,415.415 INFO    ] 2026-08-25 09:34:24
[2026-08-25 09:34:24,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:34:24,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:34:24,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:34:24,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:34:24,790.790 INFO    ] time= 25/08/2026 09:34:24
[2026-08-25 09:34:24,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:34:24,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:34:24,960.960 INFO    ] No existing commands found in stream
[2026-08-25 09:34:29,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:34:29,993.993 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 09:34:34,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:34:34,126.126 INFO    ] Checking for system updates...
[2026-08-25 09:34:34,166.166 INFO    ] 200
[2026-08-25 09:34:34,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:34,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:34:34,222.222 INFO    ] No update needed
[2026-08-25 09:34:34,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 09:34:34,257.257 INFO    ] 200
[2026-08-25 09:34:34,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:34,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:34:34,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:34:34,372.372 INFO    ] No camera update needed
[2026-08-25 09:34:34,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:34:34,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:34:34,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:34:34,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:34:36,426.426 INFO    ] ================================================
[2026-08-25 09:34:36,440.440 INFO    ] Launching Daemon at Tue Aug 25 09:34:36 IST 2026
[2026-08-25 09:34:36,451.451 INFO    ] ================================================
[2026-08-25 09:34:37,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:34:37
[2026-08-25 09:34:37,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:34:37,913.913 INFO    ] Initializing speech engine...
[2026-08-25 09:34:37,925.925 INFO    ] 2026-08-25 09:34:37
[2026-08-25 09:34:38,173.173 INFO    ] 2026-08-25 09:34:38
[2026-08-25 09:34:38,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:34:38,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:34:38,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:34:38,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:34:38,619.619 INFO    ] time= 25/08/2026 09:34:38
[2026-08-25 09:34:38,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:34:38,733.733 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:34:38,864.864 INFO    ] No existing commands found in stream
[2026-08-25 09:34:43,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:34:43,895.895 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 09:34:47,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:34:47,475.475 INFO    ] Checking for system updates...
[2026-08-25 09:34:47,512.512 INFO    ] 200
[2026-08-25 09:34:47,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:47,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:47,572.572 INFO    ] No update needed
[2026-08-25 09:34:47,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 09:34:47,609.609 INFO    ] 200
[2026-08-25 09:34:47,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:47,656.656 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:34:47,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:47,713.713 INFO    ] No camera update needed
[2026-08-25 09:34:47,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:34:47,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:34:47,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:34:47,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:34:49,770.770 INFO    ] ================================================
[2026-08-25 09:34:49,785.785 INFO    ] Launching Daemon at Tue Aug 25 09:34:49 IST 2026
[2026-08-25 09:34:49,795.795 INFO    ] ================================================
[2026-08-25 09:34:50,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:34:50
[2026-08-25 09:34:50,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:34:51,257.257 INFO    ] Initializing speech engine...
[2026-08-25 09:34:51,265.265 INFO    ] 2026-08-25 09:34:51
[2026-08-25 09:34:51,524.524 INFO    ] 2026-08-25 09:34:51
[2026-08-25 09:34:51,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:34:51,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:34:51,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:34:51,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:34:52,014.014 INFO    ] time= 25/08/2026 09:34:51
[2026-08-25 09:34:52,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:34:52,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:34:52,224.224 INFO    ] No existing commands found in stream
[2026-08-25 09:34:57,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:34:57,240.240 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 09:34:59,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:34:59,354.354 INFO    ] Checking for system updates...
[2026-08-25 09:34:59,391.391 INFO    ] 200
[2026-08-25 09:34:59,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:59,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:59,449.449 INFO    ] No update needed
[2026-08-25 09:34:59,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 09:34:59,486.486 INFO    ] 200
[2026-08-25 09:34:59,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:34:59,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:34:59,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:34:59,586.586 INFO    ] No camera update needed
[2026-08-25 09:34:59,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:34:59,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:34:59,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:34:59,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:35:01,652.652 INFO    ] ================================================
[2026-08-25 09:35:01,679.679 INFO    ] Launching Daemon at Tue Aug 25 09:35:01 IST 2026
[2026-08-25 09:35:01,691.691 INFO    ] ================================================
[2026-08-25 09:35:02,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:35:02
[2026-08-25 09:35:03,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:35:03,315.315 INFO    ] Initializing speech engine...
[2026-08-25 09:35:03,323.323 INFO    ] 2026-08-25 09:35:03
[2026-08-25 09:35:03,583.583 INFO    ] 2026-08-25 09:35:03
[2026-08-25 09:35:03,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:35:03,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:35:03,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:35:04,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:35:04,050.050 INFO    ] time= 25/08/2026 09:35:04
[2026-08-25 09:35:04,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:35:04,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:35:04,264.264 INFO    ] No existing commands found in stream
[2026-08-25 09:35:09,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:35:09,294.294 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 09:35:09,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:35:09,858.858 INFO    ] Checking for system updates...
[2026-08-25 09:35:09,898.898 INFO    ] 200
[2026-08-25 09:35:09,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:09,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:35:09,962.962 INFO    ] No update needed
[2026-08-25 09:35:09,965.965 INFO    ] Checking for camera pi updates...
[2026-08-25 09:35:10,000.000 INFO    ] 200
[2026-08-25 09:35:10,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:10,043.043 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:35:10,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:35:10,100.100 INFO    ] No camera update needed
[2026-08-25 09:35:10,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:35:10,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:35:10,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:35:10,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:35:12,154.154 INFO    ] ================================================
[2026-08-25 09:35:12,169.169 INFO    ] Launching Daemon at Tue Aug 25 09:35:12 IST 2026
[2026-08-25 09:35:12,180.180 INFO    ] ================================================
[2026-08-25 09:35:12,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:35:12
[2026-08-25 09:35:13,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:35:13,582.582 INFO    ] Initializing speech engine...
[2026-08-25 09:35:13,605.605 INFO    ] 2026-08-25 09:35:13
[2026-08-25 09:35:13,863.863 INFO    ] 2026-08-25 09:35:13
[2026-08-25 09:35:13,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:35:14,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:35:14,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:35:14,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:35:14,344.344 INFO    ] time= 25/08/2026 09:35:14
[2026-08-25 09:35:14,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:35:14,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:35:14,587.587 INFO    ] No existing commands found in stream
[2026-08-25 09:35:19,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:35:19,607.607 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 09:35:20,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:35:20,348.348 INFO    ] Checking for system updates...
[2026-08-25 09:35:20,383.383 INFO    ] 200
[2026-08-25 09:35:20,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:20,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:35:20,440.440 INFO    ] No update needed
[2026-08-25 09:35:20,442.442 INFO    ] Checking for camera pi updates...
[2026-08-25 09:35:20,476.476 INFO    ] 200
[2026-08-25 09:35:20,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:20,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:35:20,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:35:20,574.574 INFO    ] No camera update needed
[2026-08-25 09:35:20,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:35:20,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:35:20,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:35:20,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:35:22,630.630 INFO    ] ================================================
[2026-08-25 09:35:22,645.645 INFO    ] Launching Daemon at Tue Aug 25 09:35:22 IST 2026
[2026-08-25 09:35:22,656.656 INFO    ] ================================================
[2026-08-25 09:35:23,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:35:23
[2026-08-25 09:35:23,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:35:24,143.143 INFO    ] Initializing speech engine...
[2026-08-25 09:35:24,155.155 INFO    ] 2026-08-25 09:35:24
[2026-08-25 09:35:24,460.460 INFO    ] 2026-08-25 09:35:24
[2026-08-25 09:35:24,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:35:24,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:35:24,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:35:24,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:35:24,972.972 INFO    ] time= 25/08/2026 09:35:24
[2026-08-25 09:35:24,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:35:24,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:35:25,116.116 INFO    ] No existing commands found in stream
[2026-08-25 09:35:30,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:35:30,147.147 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 09:35:34,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:35:34,272.272 INFO    ] Checking for system updates...
[2026-08-25 09:35:34,309.309 INFO    ] 200
[2026-08-25 09:35:34,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:34,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:35:34,367.367 INFO    ] No update needed
[2026-08-25 09:35:34,370.370 INFO    ] Checking for camera pi updates...
[2026-08-25 09:35:34,403.403 INFO    ] 200
[2026-08-25 09:35:34,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:34,451.451 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:35:34,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:35:34,499.499 INFO    ] No camera update needed
[2026-08-25 09:35:34,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:35:34,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:35:34,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:35:34,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:35:36,556.556 INFO    ] ================================================
[2026-08-25 09:35:36,571.571 INFO    ] Launching Daemon at Tue Aug 25 09:35:36 IST 2026
[2026-08-25 09:35:36,582.582 INFO    ] ================================================
[2026-08-25 09:35:37,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:35:37
[2026-08-25 09:35:37,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:35:37,974.974 INFO    ] Initializing speech engine...
[2026-08-25 09:35:37,982.982 INFO    ] 2026-08-25 09:35:37
[2026-08-25 09:35:38,256.256 INFO    ] 2026-08-25 09:35:38
[2026-08-25 09:35:38,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:35:38,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:35:38,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:35:38,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:35:38,702.702 INFO    ] time= 25/08/2026 09:35:38
[2026-08-25 09:35:38,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:35:38,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:35:38,952.952 INFO    ] No existing commands found in stream
[2026-08-25 09:35:43,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:35:43,985.985 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 09:35:46,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:35:46,583.583 INFO    ] Checking for system updates...
[2026-08-25 09:35:46,620.620 INFO    ] 200
[2026-08-25 09:35:46,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:46,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:35:46,686.686 INFO    ] No update needed
[2026-08-25 09:35:46,689.689 INFO    ] Checking for camera pi updates...
[2026-08-25 09:35:46,724.724 INFO    ] 200
[2026-08-25 09:35:46,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:46,768.768 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:35:46,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:35:46,819.819 INFO    ] No camera update needed
[2026-08-25 09:35:46,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:35:46,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:35:46,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:35:46,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:35:48,878.878 INFO    ] ================================================
[2026-08-25 09:35:48,899.899 INFO    ] Launching Daemon at Tue Aug 25 09:35:48 IST 2026
[2026-08-25 09:35:48,910.910 INFO    ] ================================================
[2026-08-25 09:35:49,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:35:49
[2026-08-25 09:35:50,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:35:50,335.335 INFO    ] Initializing speech engine...
[2026-08-25 09:35:50,349.349 INFO    ] 2026-08-25 09:35:50
[2026-08-25 09:35:50,598.598 INFO    ] 2026-08-25 09:35:50
[2026-08-25 09:35:50,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:35:50,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:35:50,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:35:51,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:35:51,052.052 INFO    ] time= 25/08/2026 09:35:51
[2026-08-25 09:35:51,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:35:51,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:35:51,307.307 INFO    ] No existing commands found in stream
[2026-08-25 09:35:56,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:35:56,338.338 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 09:35:59,623.623 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:35:59,626.626 INFO    ] Checking for system updates...
[2026-08-25 09:35:59,664.664 INFO    ] 200
[2026-08-25 09:35:59,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:59,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:35:59,734.734 INFO    ] No update needed
[2026-08-25 09:35:59,737.737 INFO    ] Checking for camera pi updates...
[2026-08-25 09:35:59,776.776 INFO    ] 200
[2026-08-25 09:35:59,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:35:59,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:35:59,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:35:59,874.874 INFO    ] No camera update needed
[2026-08-25 09:35:59,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:35:59,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:35:59,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:35:59,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:36:01,934.934 INFO    ] ================================================
[2026-08-25 09:36:01,951.951 INFO    ] Launching Daemon at Tue Aug 25 09:36:01 IST 2026
[2026-08-25 09:36:01,963.963 INFO    ] ================================================
[2026-08-25 09:36:02,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:36:02
[2026-08-25 09:36:03,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:36:03,649.649 INFO    ] Initializing speech engine...
[2026-08-25 09:36:03,655.655 INFO    ] 2026-08-25 09:36:03
[2026-08-25 09:36:03,951.951 INFO    ] 2026-08-25 09:36:03
[2026-08-25 09:36:04,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:36:04,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:36:04,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:36:04,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:36:04,453.453 INFO    ] time= 25/08/2026 09:36:04
[2026-08-25 09:36:04,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:36:04,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:36:04,605.605 INFO    ] No existing commands found in stream
[2026-08-25 09:36:09,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:36:09,623.623 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 09:36:13,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:36:13,686.686 INFO    ] Checking for system updates...
[2026-08-25 09:36:13,725.725 INFO    ] 200
[2026-08-25 09:36:13,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:13,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:36:13,783.783 INFO    ] No update needed
[2026-08-25 09:36:13,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 09:36:13,819.819 INFO    ] 200
[2026-08-25 09:36:13,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:13,862.862 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:36:13,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:36:13,914.914 INFO    ] No camera update needed
[2026-08-25 09:36:13,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:36:13,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:36:13,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:36:13,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:36:15,970.970 INFO    ] ================================================
[2026-08-25 09:36:15,986.986 INFO    ] Launching Daemon at Tue Aug 25 09:36:15 IST 2026
[2026-08-25 09:36:16,997.997 INFO    ] ================================================
[2026-08-25 09:36:16,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:36:16
[2026-08-25 09:36:17,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:36:17,427.427 INFO    ] Initializing speech engine...
[2026-08-25 09:36:17,434.434 INFO    ] 2026-08-25 09:36:17
[2026-08-25 09:36:17,731.731 INFO    ] 2026-08-25 09:36:17
[2026-08-25 09:36:17,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:36:17,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:36:17,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:36:18,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:36:18,126.126 INFO    ] time= 25/08/2026 09:36:18
[2026-08-25 09:36:18,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:36:18,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:36:18,257.257 INFO    ] No existing commands found in stream
[2026-08-25 09:36:23,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:36:23,273.273 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 09:36:24,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:36:24,281.281 INFO    ] Checking for system updates...
[2026-08-25 09:36:24,316.316 INFO    ] 200
[2026-08-25 09:36:24,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:24,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:36:24,373.373 INFO    ] No update needed
[2026-08-25 09:36:24,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 09:36:24,409.409 INFO    ] 200
[2026-08-25 09:36:24,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:24,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:36:24,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:36:24,515.515 INFO    ] No camera update needed
[2026-08-25 09:36:24,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:36:24,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:36:24,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:36:24,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:36:26,570.570 INFO    ] ================================================
[2026-08-25 09:36:26,586.586 INFO    ] Launching Daemon at Tue Aug 25 09:36:26 IST 2026
[2026-08-25 09:36:26,597.597 INFO    ] ================================================
[2026-08-25 09:36:27,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:36:27
[2026-08-25 09:36:27,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:36:28,047.047 INFO    ] Initializing speech engine...
[2026-08-25 09:36:28,062.062 INFO    ] 2026-08-25 09:36:28
[2026-08-25 09:36:28,327.327 INFO    ] 2026-08-25 09:36:28
[2026-08-25 09:36:28,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:36:29,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:36:29,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:36:29,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:36:29,809.809 INFO    ] time= 25/08/2026 09:36:29
[2026-08-25 09:36:29,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:36:29,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:36:29,921.921 INFO    ] No existing commands found in stream
[2026-08-25 09:36:34,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:36:34,937.937 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 09:36:36,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:36:36,327.327 INFO    ] Checking for system updates...
[2026-08-25 09:36:36,364.364 INFO    ] 200
[2026-08-25 09:36:36,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:36,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:36:36,431.431 INFO    ] No update needed
[2026-08-25 09:36:36,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 09:36:36,469.469 INFO    ] 200
[2026-08-25 09:36:36,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:36,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:36:36,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:36:36,592.592 INFO    ] No camera update needed
[2026-08-25 09:36:36,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:36:36,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:36:36,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:36:36,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:36:38,652.652 INFO    ] ================================================
[2026-08-25 09:36:38,667.667 INFO    ] Launching Daemon at Tue Aug 25 09:36:38 IST 2026
[2026-08-25 09:36:38,678.678 INFO    ] ================================================
[2026-08-25 09:36:39,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:36:39
[2026-08-25 09:36:39,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:36:40,095.095 INFO    ] Initializing speech engine...
[2026-08-25 09:36:40,107.107 INFO    ] 2026-08-25 09:36:40
[2026-08-25 09:36:40,394.394 INFO    ] 2026-08-25 09:36:40
[2026-08-25 09:36:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:36:40,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:36:40,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:36:40,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:36:40,778.778 INFO    ] time= 25/08/2026 09:36:40
[2026-08-25 09:36:40,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:36:40,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:36:40,910.910 INFO    ] No existing commands found in stream
[2026-08-25 09:36:45,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:36:45,927.927 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 09:36:46,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:36:46,812.812 INFO    ] Checking for system updates...
[2026-08-25 09:36:46,848.848 INFO    ] 200
[2026-08-25 09:36:46,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:46,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:36:46,912.912 INFO    ] No update needed
[2026-08-25 09:36:46,914.914 INFO    ] Checking for camera pi updates...
[2026-08-25 09:36:46,947.947 INFO    ] 200
[2026-08-25 09:36:46,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:46,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:36:47,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:36:47,054.054 INFO    ] No camera update needed
[2026-08-25 09:36:47,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:36:47,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:36:47,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:36:47,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:36:49,109.109 INFO    ] ================================================
[2026-08-25 09:36:49,125.125 INFO    ] Launching Daemon at Tue Aug 25 09:36:49 IST 2026
[2026-08-25 09:36:49,135.135 INFO    ] ================================================
[2026-08-25 09:36:49,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:36:49
[2026-08-25 09:36:50,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:36:50,547.547 INFO    ] Initializing speech engine...
[2026-08-25 09:36:50,555.555 INFO    ] 2026-08-25 09:36:50
[2026-08-25 09:36:50,854.854 INFO    ] 2026-08-25 09:36:50
[2026-08-25 09:36:50,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:36:51,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:36:51,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:36:51,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:36:51,249.249 INFO    ] time= 25/08/2026 09:36:51
[2026-08-25 09:36:51,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:36:51,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:36:51,365.365 INFO    ] No existing commands found in stream
[2026-08-25 09:36:56,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:36:56,384.384 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 09:36:58,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:36:58,225.225 INFO    ] Checking for system updates...
[2026-08-25 09:36:58,261.261 INFO    ] 200
[2026-08-25 09:36:58,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:58,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:36:58,320.320 INFO    ] No update needed
[2026-08-25 09:36:58,322.322 INFO    ] Checking for camera pi updates...
[2026-08-25 09:36:58,356.356 INFO    ] 200
[2026-08-25 09:36:58,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:36:58,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:36:58,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:36:58,446.446 INFO    ] No camera update needed
[2026-08-25 09:36:58,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:36:58,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:36:58,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:36:58,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:37:00,503.503 INFO    ] ================================================
[2026-08-25 09:37:00,518.518 INFO    ] Launching Daemon at Tue Aug 25 09:37:00 IST 2026
[2026-08-25 09:37:00,529.529 INFO    ] ================================================
[2026-08-25 09:37:01,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:37:01
[2026-08-25 09:37:01,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:37:02,120.120 INFO    ] Initializing speech engine...
[2026-08-25 09:37:02,123.123 INFO    ] 2026-08-25 09:37:02
[2026-08-25 09:37:02,446.446 INFO    ] 2026-08-25 09:37:02
[2026-08-25 09:37:02,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:37:02,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:37:02,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:37:02,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:37:02,863.863 INFO    ] time= 25/08/2026 09:37:02
[2026-08-25 09:37:02,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:37:02,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:37:03,015.015 INFO    ] No existing commands found in stream
[2026-08-25 09:37:08,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:37:08,029.029 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 09:37:09,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:37:09,276.276 INFO    ] Checking for system updates...
[2026-08-25 09:37:09,313.313 INFO    ] 200
[2026-08-25 09:37:09,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:09,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:09,377.377 INFO    ] No update needed
[2026-08-25 09:37:09,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 09:37:09,420.420 INFO    ] 200
[2026-08-25 09:37:09,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:09,463.463 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:37:09,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:09,609.609 INFO    ] No camera update needed
[2026-08-25 09:37:09,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:37:09,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:37:09,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:37:09,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:37:11,667.667 INFO    ] ================================================
[2026-08-25 09:37:11,683.683 INFO    ] Launching Daemon at Tue Aug 25 09:37:11 IST 2026
[2026-08-25 09:37:11,694.694 INFO    ] ================================================
[2026-08-25 09:37:12,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:37:12
[2026-08-25 09:37:12,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:37:13,105.105 INFO    ] Initializing speech engine...
[2026-08-25 09:37:13,121.121 INFO    ] 2026-08-25 09:37:13
[2026-08-25 09:37:13,407.407 INFO    ] 2026-08-25 09:37:13
[2026-08-25 09:37:13,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:37:13,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:37:13,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:37:13,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:37:13,809.809 INFO    ] time= 25/08/2026 09:37:13
[2026-08-25 09:37:13,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:37:13,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:37:13,900.900 INFO    ] No existing commands found in stream
[2026-08-25 09:37:18,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:37:18,938.938 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 09:37:19,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:37:19,513.513 INFO    ] Checking for system updates...
[2026-08-25 09:37:19,549.549 INFO    ] 200
[2026-08-25 09:37:19,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:19,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:37:19,606.606 INFO    ] No update needed
[2026-08-25 09:37:19,608.608 INFO    ] Checking for camera pi updates...
[2026-08-25 09:37:19,641.641 INFO    ] 200
[2026-08-25 09:37:19,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:19,683.683 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:37:19,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:37:19,737.737 INFO    ] No camera update needed
[2026-08-25 09:37:19,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:37:19,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:37:19,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:37:19,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:37:21,793.793 INFO    ] ================================================
[2026-08-25 09:37:21,809.809 INFO    ] Launching Daemon at Tue Aug 25 09:37:21 IST 2026
[2026-08-25 09:37:21,819.819 INFO    ] ================================================
[2026-08-25 09:37:22,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:37:22
[2026-08-25 09:37:23,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:37:23,400.400 INFO    ] Initializing speech engine...
[2026-08-25 09:37:23,413.413 INFO    ] 2026-08-25 09:37:23
[2026-08-25 09:37:23,694.694 INFO    ] 2026-08-25 09:37:23
[2026-08-25 09:37:23,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:37:23,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:37:23,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:37:24,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:37:24,160.160 INFO    ] time= 25/08/2026 09:37:24
[2026-08-25 09:37:24,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:37:24,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:37:24,367.367 INFO    ] No existing commands found in stream
[2026-08-25 09:37:29,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:37:29,396.396 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 09:37:30,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:37:30,511.511 INFO    ] Checking for system updates...
[2026-08-25 09:37:30,547.547 INFO    ] 200
[2026-08-25 09:37:30,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:30,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:30,603.603 INFO    ] No update needed
[2026-08-25 09:37:30,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 09:37:30,641.641 INFO    ] 200
[2026-08-25 09:37:30,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:30,685.685 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:37:30,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:30,746.746 INFO    ] No camera update needed
[2026-08-25 09:37:30,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:37:30,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:37:30,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:37:30,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:37:32,801.801 INFO    ] ================================================
[2026-08-25 09:37:32,816.816 INFO    ] Launching Daemon at Tue Aug 25 09:37:32 IST 2026
[2026-08-25 09:37:32,827.827 INFO    ] ================================================
[2026-08-25 09:37:33,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:37:33
[2026-08-25 09:37:33,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:37:34,240.240 INFO    ] Initializing speech engine...
[2026-08-25 09:37:34,264.264 INFO    ] 2026-08-25 09:37:34
[2026-08-25 09:37:34,532.532 INFO    ] 2026-08-25 09:37:34
[2026-08-25 09:37:34,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:37:34,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:37:34,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:37:34,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:37:34,940.940 INFO    ] time= 25/08/2026 09:37:34
[2026-08-25 09:37:34,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:37:34,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:37:35,105.105 INFO    ] No existing commands found in stream
[2026-08-25 09:37:40,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:37:40,133.133 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 09:37:44,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:37:44,205.205 INFO    ] Checking for system updates...
[2026-08-25 09:37:44,240.240 INFO    ] 200
[2026-08-25 09:37:44,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:44,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:44,296.296 INFO    ] No update needed
[2026-08-25 09:37:44,298.298 INFO    ] Checking for camera pi updates...
[2026-08-25 09:37:44,331.331 INFO    ] 200
[2026-08-25 09:37:44,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:44,380.380 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:37:44,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:44,445.445 INFO    ] No camera update needed
[2026-08-25 09:37:44,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:37:44,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:37:44,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:37:44,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:37:46,499.499 INFO    ] ================================================
[2026-08-25 09:37:46,514.514 INFO    ] Launching Daemon at Tue Aug 25 09:37:46 IST 2026
[2026-08-25 09:37:46,525.525 INFO    ] ================================================
[2026-08-25 09:37:47,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:37:47
[2026-08-25 09:37:47,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:37:48,115.115 INFO    ] Initializing speech engine...
[2026-08-25 09:37:48,126.126 INFO    ] 2026-08-25 09:37:48
[2026-08-25 09:37:48,430.430 INFO    ] 2026-08-25 09:37:48
[2026-08-25 09:37:48,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:37:48,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:37:48,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:37:48,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:37:48,937.937 INFO    ] time= 25/08/2026 09:37:48
[2026-08-25 09:37:48,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:37:48,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:37:49,102.102 INFO    ] No existing commands found in stream
[2026-08-25 09:37:54,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:37:54,135.135 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 09:37:56,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:37:56,603.603 INFO    ] Checking for system updates...
[2026-08-25 09:37:56,639.639 INFO    ] 200
[2026-08-25 09:37:56,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:56,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:56,699.699 INFO    ] No update needed
[2026-08-25 09:37:56,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 09:37:56,735.735 INFO    ] 200
[2026-08-25 09:37:56,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:37:56,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:37:56,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:37:56,829.829 INFO    ] No camera update needed
[2026-08-25 09:37:56,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:37:56,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:37:56,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:37:56,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:37:58,888.888 INFO    ] ================================================
[2026-08-25 09:37:58,903.903 INFO    ] Launching Daemon at Tue Aug 25 09:37:58 IST 2026
[2026-08-25 09:37:58,914.914 INFO    ] ================================================
[2026-08-25 09:37:59,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:37:59
[2026-08-25 09:38:00,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:38:00,487.487 INFO    ] Initializing speech engine...
[2026-08-25 09:38:00,495.495 INFO    ] 2026-08-25 09:38:00
[2026-08-25 09:38:00,776.776 INFO    ] 2026-08-25 09:38:00
[2026-08-25 09:38:00,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:38:01,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:38:01,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:38:01,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:38:01,246.246 INFO    ] time= 25/08/2026 09:38:01
[2026-08-25 09:38:01,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:38:01,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:38:01,374.374 INFO    ] No existing commands found in stream
[2026-08-25 09:38:06,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:38:06,388.388 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 09:38:07,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:38:07,677.677 INFO    ] Checking for system updates...
[2026-08-25 09:38:07,716.716 INFO    ] 200
[2026-08-25 09:38:07,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:07,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:38:07,775.775 INFO    ] No update needed
[2026-08-25 09:38:07,778.778 INFO    ] Checking for camera pi updates...
[2026-08-25 09:38:07,812.812 INFO    ] 200
[2026-08-25 09:38:07,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:07,856.856 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:38:07,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:38:07,909.909 INFO    ] No camera update needed
[2026-08-25 09:38:07,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:38:07,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:38:07,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:38:07,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:38:09,965.965 INFO    ] ================================================
[2026-08-25 09:38:09,979.979 INFO    ] Launching Daemon at Tue Aug 25 09:38:09 IST 2026
[2026-08-25 09:38:09,990.990 INFO    ] ================================================
[2026-08-25 09:38:10,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:38:10
[2026-08-25 09:38:11,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:38:11,414.414 INFO    ] Initializing speech engine...
[2026-08-25 09:38:11,423.423 INFO    ] 2026-08-25 09:38:11
[2026-08-25 09:38:11,672.672 INFO    ] 2026-08-25 09:38:11
[2026-08-25 09:38:11,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:38:11,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:38:11,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:38:12,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:38:12,049.049 INFO    ] time= 25/08/2026 09:38:12
[2026-08-25 09:38:12,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:38:12,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:38:12,210.210 INFO    ] No existing commands found in stream
[2026-08-25 09:38:17,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:38:17,243.243 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 09:38:20,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:38:20,375.375 INFO    ] Checking for system updates...
[2026-08-25 09:38:20,411.411 INFO    ] 200
[2026-08-25 09:38:20,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:20,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:38:20,473.473 INFO    ] No update needed
[2026-08-25 09:38:20,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 09:38:20,513.513 INFO    ] 200
[2026-08-25 09:38:20,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:20,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:38:20,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:38:20,610.610 INFO    ] No camera update needed
[2026-08-25 09:38:20,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:38:20,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:38:20,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:38:20,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:38:22,667.667 INFO    ] ================================================
[2026-08-25 09:38:22,683.683 INFO    ] Launching Daemon at Tue Aug 25 09:38:22 IST 2026
[2026-08-25 09:38:22,694.694 INFO    ] ================================================
[2026-08-25 09:38:23,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:38:23
[2026-08-25 09:38:23,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:38:24,164.164 INFO    ] Initializing speech engine...
[2026-08-25 09:38:24,182.182 INFO    ] 2026-08-25 09:38:24
[2026-08-25 09:38:24,449.449 INFO    ] 2026-08-25 09:38:24
[2026-08-25 09:38:24,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:38:24,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:38:24,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:38:24,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:38:24,862.862 INFO    ] time= 25/08/2026 09:38:24
[2026-08-25 09:38:24,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:38:24,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:38:24,951.951 INFO    ] No existing commands found in stream
[2026-08-25 09:38:29,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:38:29,984.984 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 09:38:31,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:38:31,402.402 INFO    ] Checking for system updates...
[2026-08-25 09:38:31,440.440 INFO    ] 200
[2026-08-25 09:38:31,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:31,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:38:31,504.504 INFO    ] No update needed
[2026-08-25 09:38:31,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 09:38:31,547.547 INFO    ] 200
[2026-08-25 09:38:31,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:31,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:38:31,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:38:31,649.649 INFO    ] No camera update needed
[2026-08-25 09:38:31,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:38:31,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:38:31,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:38:31,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:38:33,706.706 INFO    ] ================================================
[2026-08-25 09:38:33,721.721 INFO    ] Launching Daemon at Tue Aug 25 09:38:33 IST 2026
[2026-08-25 09:38:33,732.732 INFO    ] ================================================
[2026-08-25 09:38:34,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:38:34
[2026-08-25 09:38:35,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:38:35,332.332 INFO    ] Initializing speech engine...
[2026-08-25 09:38:35,340.340 INFO    ] 2026-08-25 09:38:35
[2026-08-25 09:38:35,626.626 INFO    ] 2026-08-25 09:38:35
[2026-08-25 09:38:35,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:38:35,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:38:35,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:38:36,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:38:36,086.086 INFO    ] time= 25/08/2026 09:38:36
[2026-08-25 09:38:36,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:38:36,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:38:36,319.319 INFO    ] No existing commands found in stream
[2026-08-25 09:38:41,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:38:41,349.349 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 09:38:42,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:38:42,744.744 INFO    ] Checking for system updates...
[2026-08-25 09:38:42,780.780 INFO    ] 200
[2026-08-25 09:38:42,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:42,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:38:42,839.839 INFO    ] No update needed
[2026-08-25 09:38:42,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 09:38:42,876.876 INFO    ] 200
[2026-08-25 09:38:42,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:42,921.921 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:38:42,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:38:42,973.973 INFO    ] No camera update needed
[2026-08-25 09:38:42,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:38:42,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:38:42,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:38:42,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:38:45,029.029 INFO    ] ================================================
[2026-08-25 09:38:45,044.044 INFO    ] Launching Daemon at Tue Aug 25 09:38:45 IST 2026
[2026-08-25 09:38:45,055.055 INFO    ] ================================================
[2026-08-25 09:38:45,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:38:45
[2026-08-25 09:38:46,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:38:46,578.578 INFO    ] Initializing speech engine...
[2026-08-25 09:38:46,589.589 INFO    ] 2026-08-25 09:38:46
[2026-08-25 09:38:46,848.848 INFO    ] 2026-08-25 09:38:46
[2026-08-25 09:38:46,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:38:47,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:38:47,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:38:47,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:38:47,331.331 INFO    ] time= 25/08/2026 09:38:47
[2026-08-25 09:38:47,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:38:47,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:38:47,536.536 INFO    ] No existing commands found in stream
[2026-08-25 09:38:52,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:38:52,563.563 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 09:38:55,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:38:55,555.555 INFO    ] Checking for system updates...
[2026-08-25 09:38:55,592.592 INFO    ] 200
[2026-08-25 09:38:55,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:55,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:38:55,652.652 INFO    ] No update needed
[2026-08-25 09:38:55,654.654 INFO    ] Checking for camera pi updates...
[2026-08-25 09:38:55,689.689 INFO    ] 200
[2026-08-25 09:38:55,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:38:55,736.736 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:38:55,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:38:55,791.791 INFO    ] No camera update needed
[2026-08-25 09:38:55,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:38:55,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:38:55,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:38:55,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:38:57,848.848 INFO    ] ================================================
[2026-08-25 09:38:57,863.863 INFO    ] Launching Daemon at Tue Aug 25 09:38:57 IST 2026
[2026-08-25 09:38:57,873.873 INFO    ] ================================================
[2026-08-25 09:38:58,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:38:58
[2026-08-25 09:38:59,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:38:59,294.294 INFO    ] Initializing speech engine...
[2026-08-25 09:38:59,302.302 INFO    ] 2026-08-25 09:38:59
[2026-08-25 09:38:59,552.552 INFO    ] 2026-08-25 09:38:59
[2026-08-25 09:38:59,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:38:59,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:38:59,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:38:59,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:38:59,932.932 INFO    ] time= 25/08/2026 09:38:59
[2026-08-25 09:38:59,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:39:00,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:39:00,131.131 INFO    ] No existing commands found in stream
[2026-08-25 09:39:05,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:39:05,144.144 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 09:39:09,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:39:09,009.009 INFO    ] Checking for system updates...
[2026-08-25 09:39:09,044.044 INFO    ] 200
[2026-08-25 09:39:09,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:09,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:09,102.102 INFO    ] No update needed
[2026-08-25 09:39:09,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 09:39:09,138.138 INFO    ] 200
[2026-08-25 09:39:09,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:09,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:39:09,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:09,236.236 INFO    ] No camera update needed
[2026-08-25 09:39:09,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:39:09,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:39:09,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:39:09,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:39:11,292.292 INFO    ] ================================================
[2026-08-25 09:39:11,308.308 INFO    ] Launching Daemon at Tue Aug 25 09:39:11 IST 2026
[2026-08-25 09:39:11,318.318 INFO    ] ================================================
[2026-08-25 09:39:11,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:39:11
[2026-08-25 09:39:12,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:39:12,718.718 INFO    ] Initializing speech engine...
[2026-08-25 09:39:12,724.724 INFO    ] 2026-08-25 09:39:12
[2026-08-25 09:39:13,018.018 INFO    ] 2026-08-25 09:39:12
[2026-08-25 09:39:13,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:39:13,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:39:13,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:39:13,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:39:13,396.396 INFO    ] time= 25/08/2026 09:39:13
[2026-08-25 09:39:13,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:39:13,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:39:13,520.520 INFO    ] No existing commands found in stream
[2026-08-25 09:39:18,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:39:18,536.536 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 09:39:22,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:39:22,323.323 INFO    ] Checking for system updates...
[2026-08-25 09:39:22,359.359 INFO    ] 200
[2026-08-25 09:39:22,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:22,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:22,417.417 INFO    ] No update needed
[2026-08-25 09:39:22,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 09:39:22,453.453 INFO    ] 200
[2026-08-25 09:39:22,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:22,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:39:22,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:22,656.656 INFO    ] No camera update needed
[2026-08-25 09:39:22,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:39:22,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:39:22,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:39:22,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:39:24,711.711 INFO    ] ================================================
[2026-08-25 09:39:24,726.726 INFO    ] Launching Daemon at Tue Aug 25 09:39:24 IST 2026
[2026-08-25 09:39:24,737.737 INFO    ] ================================================
[2026-08-25 09:39:25,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:39:25
[2026-08-25 09:39:26,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:39:26,365.365 INFO    ] Initializing speech engine...
[2026-08-25 09:39:26,374.374 INFO    ] 2026-08-25 09:39:26
[2026-08-25 09:39:26,670.670 INFO    ] 2026-08-25 09:39:26
[2026-08-25 09:39:26,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:39:26,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:39:27,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:39:27,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:39:27,202.202 INFO    ] time= 25/08/2026 09:39:27
[2026-08-25 09:39:27,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:39:27,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:39:27,369.369 INFO    ] No existing commands found in stream
[2026-08-25 09:39:32,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:39:32,398.398 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 09:39:32,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:39:32,998.998 INFO    ] Checking for system updates...
[2026-08-25 09:39:33,034.034 INFO    ] 200
[2026-08-25 09:39:33,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:33,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:33,091.091 INFO    ] No update needed
[2026-08-25 09:39:33,094.094 INFO    ] Checking for camera pi updates...
[2026-08-25 09:39:33,127.127 INFO    ] 200
[2026-08-25 09:39:33,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:33,170.170 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:39:33,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:33,222.222 INFO    ] No camera update needed
[2026-08-25 09:39:33,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:39:33,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:39:33,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:39:33,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:39:35,277.277 INFO    ] ================================================
[2026-08-25 09:39:35,293.293 INFO    ] Launching Daemon at Tue Aug 25 09:39:35 IST 2026
[2026-08-25 09:39:35,304.304 INFO    ] ================================================
[2026-08-25 09:39:35,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:39:35
[2026-08-25 09:39:36,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:39:36,711.711 INFO    ] Initializing speech engine...
[2026-08-25 09:39:36,736.736 INFO    ] 2026-08-25 09:39:36
[2026-08-25 09:39:37,008.008 INFO    ] 2026-08-25 09:39:36
[2026-08-25 09:39:37,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:39:37,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:39:37,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:39:37,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:39:37,391.391 INFO    ] time= 25/08/2026 09:39:37
[2026-08-25 09:39:37,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:39:37,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:39:37,519.519 INFO    ] No existing commands found in stream
[2026-08-25 09:39:42,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:39:42,537.537 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 09:39:46,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:39:46,022.022 INFO    ] Checking for system updates...
[2026-08-25 09:39:46,057.057 INFO    ] 200
[2026-08-25 09:39:46,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:46,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:46,114.114 INFO    ] No update needed
[2026-08-25 09:39:46,121.121 INFO    ] Checking for camera pi updates...
[2026-08-25 09:39:46,155.155 INFO    ] 200
[2026-08-25 09:39:46,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:39:46,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:39:46,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:39:46,246.246 INFO    ] No camera update needed
[2026-08-25 09:39:46,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:39:46,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:39:46,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:39:46,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:39:48,300.300 INFO    ] ================================================
[2026-08-25 09:39:48,316.316 INFO    ] Launching Daemon at Tue Aug 25 09:39:48 IST 2026
[2026-08-25 09:39:48,327.327 INFO    ] ================================================
[2026-08-25 09:39:48,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:39:48
[2026-08-25 09:39:49,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:39:49,950.950 INFO    ] Initializing speech engine...
[2026-08-25 09:39:49,959.959 INFO    ] 2026-08-25 09:39:49
[2026-08-25 09:39:50,249.249 INFO    ] 2026-08-25 09:39:50
[2026-08-25 09:39:50,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:39:50,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:39:50,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:39:50,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:39:50,781.781 INFO    ] time= 25/08/2026 09:39:50
[2026-08-25 09:39:50,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:39:50,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:39:51,024.024 INFO    ] No existing commands found in stream
[2026-08-25 09:39:56,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:39:56,047.047 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 09:40:00,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:40:00,330.330 INFO    ] Checking for system updates...
[2026-08-25 09:40:00,370.370 INFO    ] 200
[2026-08-25 09:40:00,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:00,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:40:00,426.426 INFO    ] No update needed
[2026-08-25 09:40:00,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 09:40:00,462.462 INFO    ] 200
[2026-08-25 09:40:00,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:00,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:40:00,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:40:00,571.571 INFO    ] No camera update needed
[2026-08-25 09:40:00,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:40:00,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:40:00,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:40:00,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:40:02,658.658 INFO    ] ================================================
[2026-08-25 09:40:02,687.687 INFO    ] Launching Daemon at Tue Aug 25 09:40:02 IST 2026
[2026-08-25 09:40:02,709.709 INFO    ] ================================================
[2026-08-25 09:40:03,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:40:03
[2026-08-25 09:40:04,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:40:04,402.402 INFO    ] Initializing speech engine...
[2026-08-25 09:40:04,416.416 INFO    ] 2026-08-25 09:40:04
[2026-08-25 09:40:04,700.700 INFO    ] 2026-08-25 09:40:04
[2026-08-25 09:40:04,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:40:04,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:40:04,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:40:05,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:40:05,164.164 INFO    ] time= 25/08/2026 09:40:05
[2026-08-25 09:40:05,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:40:05,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:40:05,379.379 INFO    ] No existing commands found in stream
[2026-08-25 09:40:10,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:40:10,400.400 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 09:40:14,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:40:14,819.819 INFO    ] Checking for system updates...
[2026-08-25 09:40:14,854.854 INFO    ] 200
[2026-08-25 09:40:14,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:14,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:40:14,914.914 INFO    ] No update needed
[2026-08-25 09:40:14,917.917 INFO    ] Checking for camera pi updates...
[2026-08-25 09:40:14,951.951 INFO    ] 200
[2026-08-25 09:40:14,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:14,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:40:15,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:40:15,046.046 INFO    ] No camera update needed
[2026-08-25 09:40:15,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:40:15,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:40:15,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:40:15,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:40:17,100.100 INFO    ] ================================================
[2026-08-25 09:40:17,116.116 INFO    ] Launching Daemon at Tue Aug 25 09:40:17 IST 2026
[2026-08-25 09:40:17,129.129 INFO    ] ================================================
[2026-08-25 09:40:17,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:40:17
[2026-08-25 09:40:18,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:40:18,623.623 INFO    ] Initializing speech engine...
[2026-08-25 09:40:18,634.634 INFO    ] 2026-08-25 09:40:18
[2026-08-25 09:40:18,877.877 INFO    ] 2026-08-25 09:40:18
[2026-08-25 09:40:18,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:40:19,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:40:19,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:40:19,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:40:19,373.373 INFO    ] time= 25/08/2026 09:40:19
[2026-08-25 09:40:19,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:40:19,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:40:19,587.587 INFO    ] No existing commands found in stream
[2026-08-25 09:40:24,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:40:24,603.603 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 09:40:25,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:40:25,996.996 INFO    ] Checking for system updates...
[2026-08-25 09:40:26,032.032 INFO    ] 200
[2026-08-25 09:40:26,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:26,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:40:26,089.089 INFO    ] No update needed
[2026-08-25 09:40:26,091.091 INFO    ] Checking for camera pi updates...
[2026-08-25 09:40:26,127.127 INFO    ] 200
[2026-08-25 09:40:26,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:26,169.169 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:40:26,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:40:26,223.223 INFO    ] No camera update needed
[2026-08-25 09:40:26,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:40:26,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:40:26,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:40:26,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:40:28,280.280 INFO    ] ================================================
[2026-08-25 09:40:28,295.295 INFO    ] Launching Daemon at Tue Aug 25 09:40:28 IST 2026
[2026-08-25 09:40:28,306.306 INFO    ] ================================================
[2026-08-25 09:40:28,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:40:28
[2026-08-25 09:40:29,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:40:29,734.734 INFO    ] Initializing speech engine...
[2026-08-25 09:40:29,741.741 INFO    ] 2026-08-25 09:40:29
[2026-08-25 09:40:29,998.998 INFO    ] 2026-08-25 09:40:29
[2026-08-25 09:40:30,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:40:30,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:40:30,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:40:30,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:40:30,455.455 INFO    ] time= 25/08/2026 09:40:30
[2026-08-25 09:40:30,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:40:30,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:40:30,674.674 INFO    ] No existing commands found in stream
[2026-08-25 09:40:35,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:40:35,702.702 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 09:40:37,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:40:37,127.127 INFO    ] Checking for system updates...
[2026-08-25 09:40:37,166.166 INFO    ] 200
[2026-08-25 09:40:37,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:37,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:40:37,231.231 INFO    ] No update needed
[2026-08-25 09:40:37,234.234 INFO    ] Checking for camera pi updates...
[2026-08-25 09:40:37,271.271 INFO    ] 200
[2026-08-25 09:40:37,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:37,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:40:37,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:40:37,371.371 INFO    ] No camera update needed
[2026-08-25 09:40:37,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:40:37,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:40:37,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:40:37,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:40:39,428.428 INFO    ] ================================================
[2026-08-25 09:40:39,444.444 INFO    ] Launching Daemon at Tue Aug 25 09:40:39 IST 2026
[2026-08-25 09:40:39,455.455 INFO    ] ================================================
[2026-08-25 09:40:40,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:40:40
[2026-08-25 09:40:40,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:40:40,852.852 INFO    ] Initializing speech engine...
[2026-08-25 09:40:40,860.860 INFO    ] 2026-08-25 09:40:40
[2026-08-25 09:40:41,153.153 INFO    ] 2026-08-25 09:40:41
[2026-08-25 09:40:41,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:40:41,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:40:41,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:40:41,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:40:41,564.564 INFO    ] time= 25/08/2026 09:40:41
[2026-08-25 09:40:41,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:40:41,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:40:41,654.654 INFO    ] No existing commands found in stream
[2026-08-25 09:40:46,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:40:46,667.667 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 09:40:47,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:40:47,317.317 INFO    ] Checking for system updates...
[2026-08-25 09:40:47,353.353 INFO    ] 200
[2026-08-25 09:40:47,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:47,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:40:47,410.410 INFO    ] No update needed
[2026-08-25 09:40:47,413.413 INFO    ] Checking for camera pi updates...
[2026-08-25 09:40:47,446.446 INFO    ] 200
[2026-08-25 09:40:47,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:47,489.489 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:40:47,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:40:47,546.546 INFO    ] No camera update needed
[2026-08-25 09:40:47,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:40:47,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:40:47,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:40:47,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:40:49,600.600 INFO    ] ================================================
[2026-08-25 09:40:49,616.616 INFO    ] Launching Daemon at Tue Aug 25 09:40:49 IST 2026
[2026-08-25 09:40:49,627.627 INFO    ] ================================================
[2026-08-25 09:40:50,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:40:50
[2026-08-25 09:40:50,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:40:51,084.084 INFO    ] Initializing speech engine...
[2026-08-25 09:40:51,096.096 INFO    ] 2026-08-25 09:40:51
[2026-08-25 09:40:51,352.352 INFO    ] 2026-08-25 09:40:51
[2026-08-25 09:40:51,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:40:51,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:40:51,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:40:51,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:40:51,837.837 INFO    ] time= 25/08/2026 09:40:51
[2026-08-25 09:40:51,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:40:51,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:40:52,036.036 INFO    ] No existing commands found in stream
[2026-08-25 09:40:57,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:40:57,060.060 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 09:40:57,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:40:57,617.617 INFO    ] Checking for system updates...
[2026-08-25 09:40:57,670.670 INFO    ] 200
[2026-08-25 09:40:57,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:57,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:40:57,727.727 INFO    ] No update needed
[2026-08-25 09:40:57,730.730 INFO    ] Checking for camera pi updates...
[2026-08-25 09:40:57,763.763 INFO    ] 200
[2026-08-25 09:40:57,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:40:57,813.813 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:40:57,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:40:57,868.868 INFO    ] No camera update needed
[2026-08-25 09:40:57,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:40:57,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:40:57,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:40:57,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:40:59,923.923 INFO    ] ================================================
[2026-08-25 09:40:59,937.937 INFO    ] Launching Daemon at Tue Aug 25 09:40:59 IST 2026
[2026-08-25 09:40:59,948.948 INFO    ] ================================================
[2026-08-25 09:41:00,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:41:00
[2026-08-25 09:41:01,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:41:01,373.373 INFO    ] Initializing speech engine...
[2026-08-25 09:41:01,388.388 INFO    ] 2026-08-25 09:41:01
[2026-08-25 09:41:01,737.737 INFO    ] 2026-08-25 09:41:01
[2026-08-25 09:41:01,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:41:02,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:41:02,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:41:02,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:41:02,216.216 INFO    ] time= 25/08/2026 09:41:02
[2026-08-25 09:41:02,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:41:02,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:41:02,430.430 INFO    ] No existing commands found in stream
[2026-08-25 09:41:07,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:41:07,458.458 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 09:41:10,743.743 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:41:10,746.746 INFO    ] Checking for system updates...
[2026-08-25 09:41:10,783.783 INFO    ] 200
[2026-08-25 09:41:10,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:10,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:41:10,850.850 INFO    ] No update needed
[2026-08-25 09:41:10,853.853 INFO    ] Checking for camera pi updates...
[2026-08-25 09:41:10,890.890 INFO    ] 200
[2026-08-25 09:41:10,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:10,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:41:11,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:41:11,008.008 INFO    ] No camera update needed
[2026-08-25 09:41:11,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:41:11,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:41:11,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:41:11,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:41:13,067.067 INFO    ] ================================================
[2026-08-25 09:41:13,082.082 INFO    ] Launching Daemon at Tue Aug 25 09:41:13 IST 2026
[2026-08-25 09:41:13,093.093 INFO    ] ================================================
[2026-08-25 09:41:13,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:41:13
[2026-08-25 09:41:14,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:41:14,736.736 INFO    ] Initializing speech engine...
[2026-08-25 09:41:14,742.742 INFO    ] 2026-08-25 09:41:14
[2026-08-25 09:41:15,022.022 INFO    ] 2026-08-25 09:41:15
[2026-08-25 09:41:15,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:41:15,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:41:15,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:41:15,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:41:15,526.526 INFO    ] time= 25/08/2026 09:41:15
[2026-08-25 09:41:15,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:41:15,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:41:15,723.723 INFO    ] No existing commands found in stream
[2026-08-25 09:41:20,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:41:20,755.755 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 09:41:24,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:41:24,073.073 INFO    ] Checking for system updates...
[2026-08-25 09:41:24,115.115 INFO    ] 200
[2026-08-25 09:41:24,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:24,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:41:24,174.174 INFO    ] No update needed
[2026-08-25 09:41:24,177.177 INFO    ] Checking for camera pi updates...
[2026-08-25 09:41:24,212.212 INFO    ] 200
[2026-08-25 09:41:24,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:24,257.257 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:41:24,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:41:24,311.311 INFO    ] No camera update needed
[2026-08-25 09:41:24,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:41:24,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:41:24,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:41:24,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:41:26,370.370 INFO    ] ================================================
[2026-08-25 09:41:26,385.385 INFO    ] Launching Daemon at Tue Aug 25 09:41:26 IST 2026
[2026-08-25 09:41:26,396.396 INFO    ] ================================================
[2026-08-25 09:41:26,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:41:26
[2026-08-25 09:41:27,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:41:27,839.839 INFO    ] Initializing speech engine...
[2026-08-25 09:41:27,863.863 INFO    ] 2026-08-25 09:41:27
[2026-08-25 09:41:28,141.141 INFO    ] 2026-08-25 09:41:28
[2026-08-25 09:41:28,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:41:28,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:41:28,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:41:28,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:41:28,541.541 INFO    ] time= 25/08/2026 09:41:28
[2026-08-25 09:41:28,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:41:28,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:41:28,653.653 INFO    ] No existing commands found in stream
[2026-08-25 09:41:33,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:41:33,672.672 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 09:41:36,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:41:36,562.562 INFO    ] Checking for system updates...
[2026-08-25 09:41:36,598.598 INFO    ] 200
[2026-08-25 09:41:36,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:36,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:41:36,656.656 INFO    ] No update needed
[2026-08-25 09:41:36,658.658 INFO    ] Checking for camera pi updates...
[2026-08-25 09:41:36,696.696 INFO    ] 200
[2026-08-25 09:41:36,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:36,744.744 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:41:36,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:41:36,798.798 INFO    ] No camera update needed
[2026-08-25 09:41:36,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:41:36,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:41:36,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:41:36,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:41:38,854.854 INFO    ] ================================================
[2026-08-25 09:41:38,869.869 INFO    ] Launching Daemon at Tue Aug 25 09:41:38 IST 2026
[2026-08-25 09:41:38,880.880 INFO    ] ================================================
[2026-08-25 09:41:39,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:41:39
[2026-08-25 09:41:40,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:41:40,288.288 INFO    ] Initializing speech engine...
[2026-08-25 09:41:40,313.313 INFO    ] 2026-08-25 09:41:40
[2026-08-25 09:41:40,588.588 INFO    ] 2026-08-25 09:41:40
[2026-08-25 09:41:40,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:41:40,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:41:40,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:41:40,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:41:40,949.949 INFO    ] time= 25/08/2026 09:41:40
[2026-08-25 09:41:40,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:41:40,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:41:41,092.092 INFO    ] No existing commands found in stream
[2026-08-25 09:41:46,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:41:46,115.115 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 09:41:46,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:41:46,953.953 INFO    ] Checking for system updates...
[2026-08-25 09:41:46,993.993 INFO    ] 200
[2026-08-25 09:41:46,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:47,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:41:47,049.049 INFO    ] No update needed
[2026-08-25 09:41:47,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 09:41:47,088.088 INFO    ] 200
[2026-08-25 09:41:47,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:47,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:41:47,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:41:47,186.186 INFO    ] No camera update needed
[2026-08-25 09:41:47,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:41:47,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:41:47,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:41:47,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:41:49,240.240 INFO    ] ================================================
[2026-08-25 09:41:49,255.255 INFO    ] Launching Daemon at Tue Aug 25 09:41:49 IST 2026
[2026-08-25 09:41:49,265.265 INFO    ] ================================================
[2026-08-25 09:41:49,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:41:49
[2026-08-25 09:41:50,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:41:50,768.768 INFO    ] Initializing speech engine...
[2026-08-25 09:41:50,777.777 INFO    ] 2026-08-25 09:41:50
[2026-08-25 09:41:51,023.023 INFO    ] 2026-08-25 09:41:51
[2026-08-25 09:41:51,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:41:51,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:41:51,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:41:51,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:41:51,494.494 INFO    ] time= 25/08/2026 09:41:51
[2026-08-25 09:41:51,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:41:51,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:41:51,728.728 INFO    ] No existing commands found in stream
[2026-08-25 09:41:56,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:41:56,750.750 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 09:41:57,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:41:57,567.567 INFO    ] Checking for system updates...
[2026-08-25 09:41:57,606.606 INFO    ] 200
[2026-08-25 09:41:57,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:57,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:41:57,663.663 INFO    ] No update needed
[2026-08-25 09:41:57,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 09:41:57,698.698 INFO    ] 200
[2026-08-25 09:41:57,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:41:57,741.741 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:41:57,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:41:57,793.793 INFO    ] No camera update needed
[2026-08-25 09:41:57,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:41:57,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:41:57,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:41:57,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:41:59,850.850 INFO    ] ================================================
[2026-08-25 09:41:59,865.865 INFO    ] Launching Daemon at Tue Aug 25 09:41:59 IST 2026
[2026-08-25 09:41:59,875.875 INFO    ] ================================================
[2026-08-25 09:42:00,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:42:00
[2026-08-25 09:42:01,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:42:01,326.326 INFO    ] Initializing speech engine...
[2026-08-25 09:42:01,333.333 INFO    ] 2026-08-25 09:42:01
[2026-08-25 09:42:01,669.669 INFO    ] 2026-08-25 09:42:01
[2026-08-25 09:42:01,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:42:01,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:42:01,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:42:02,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:42:02,113.113 INFO    ] time= 25/08/2026 09:42:02
[2026-08-25 09:42:02,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:42:02,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:42:02,257.257 INFO    ] No existing commands found in stream
[2026-08-25 09:42:07,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:42:07,271.271 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 09:42:09,213.213 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:42:09,216.216 INFO    ] Checking for system updates...
[2026-08-25 09:42:09,251.251 INFO    ] 200
[2026-08-25 09:42:09,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:09,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:09,314.314 INFO    ] No update needed
[2026-08-25 09:42:09,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 09:42:09,354.354 INFO    ] 200
[2026-08-25 09:42:09,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:09,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:42:09,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:09,452.452 INFO    ] No camera update needed
[2026-08-25 09:42:09,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:42:09,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:42:09,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:42:09,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:42:11,508.508 INFO    ] ================================================
[2026-08-25 09:42:11,523.523 INFO    ] Launching Daemon at Tue Aug 25 09:42:11 IST 2026
[2026-08-25 09:42:11,534.534 INFO    ] ================================================
[2026-08-25 09:42:12,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:42:12
[2026-08-25 09:42:12,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:42:13,017.017 INFO    ] Initializing speech engine...
[2026-08-25 09:42:13,031.031 INFO    ] 2026-08-25 09:42:13
[2026-08-25 09:42:13,296.296 INFO    ] 2026-08-25 09:42:13
[2026-08-25 09:42:13,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:42:13,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:42:13,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:42:13,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:42:13,672.672 INFO    ] time= 25/08/2026 09:42:13
[2026-08-25 09:42:13,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:42:13,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:42:13,871.871 INFO    ] No existing commands found in stream
[2026-08-25 09:42:18,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:42:18,884.884 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 09:42:22,792.792 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:42:22,795.795 INFO    ] Checking for system updates...
[2026-08-25 09:42:22,834.834 INFO    ] 200
[2026-08-25 09:42:22,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:22,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:22,897.897 INFO    ] No update needed
[2026-08-25 09:42:22,899.899 INFO    ] Checking for camera pi updates...
[2026-08-25 09:42:22,936.936 INFO    ] 200
[2026-08-25 09:42:22,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:22,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:42:23,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:23,031.031 INFO    ] No camera update needed
[2026-08-25 09:42:23,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:42:23,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:42:23,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:42:23,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:42:25,086.086 INFO    ] ================================================
[2026-08-25 09:42:25,101.101 INFO    ] Launching Daemon at Tue Aug 25 09:42:25 IST 2026
[2026-08-25 09:42:25,112.112 INFO    ] ================================================
[2026-08-25 09:42:25,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:42:25
[2026-08-25 09:42:26,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:42:26,511.511 INFO    ] Initializing speech engine...
[2026-08-25 09:42:26,534.534 INFO    ] 2026-08-25 09:42:26
[2026-08-25 09:42:26,787.787 INFO    ] 2026-08-25 09:42:26
[2026-08-25 09:42:26,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:42:27,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:42:27,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:42:27,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:42:27,263.263 INFO    ] time= 25/08/2026 09:42:27
[2026-08-25 09:42:27,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:42:27,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:42:27,497.497 INFO    ] No existing commands found in stream
[2026-08-25 09:42:32,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:42:32,520.520 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 09:42:34,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:42:34,817.817 INFO    ] Checking for system updates...
[2026-08-25 09:42:34,852.852 INFO    ] 200
[2026-08-25 09:42:34,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:34,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:34,909.909 INFO    ] No update needed
[2026-08-25 09:42:34,912.912 INFO    ] Checking for camera pi updates...
[2026-08-25 09:42:34,946.946 INFO    ] 200
[2026-08-25 09:42:34,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:34,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:42:35,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:35,038.038 INFO    ] No camera update needed
[2026-08-25 09:42:35,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:42:35,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:42:35,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:42:35,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:42:37,092.092 INFO    ] ================================================
[2026-08-25 09:42:37,107.107 INFO    ] Launching Daemon at Tue Aug 25 09:42:37 IST 2026
[2026-08-25 09:42:37,118.118 INFO    ] ================================================
[2026-08-25 09:42:37,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:42:37
[2026-08-25 09:42:38,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:42:38,694.694 INFO    ] Initializing speech engine...
[2026-08-25 09:42:38,700.700 INFO    ] 2026-08-25 09:42:38
[2026-08-25 09:42:38,992.992 INFO    ] 2026-08-25 09:42:38
[2026-08-25 09:42:39,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:42:39,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:42:39,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:42:39,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:42:39,462.462 INFO    ] time= 25/08/2026 09:42:39
[2026-08-25 09:42:39,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:42:39,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:42:39,683.683 INFO    ] No existing commands found in stream
[2026-08-25 09:42:44,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:42:44,712.712 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 09:42:46,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:42:46,318.318 INFO    ] Checking for system updates...
[2026-08-25 09:42:46,357.357 INFO    ] 200
[2026-08-25 09:42:46,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:46,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:46,413.413 INFO    ] No update needed
[2026-08-25 09:42:46,416.416 INFO    ] Checking for camera pi updates...
[2026-08-25 09:42:46,452.452 INFO    ] 200
[2026-08-25 09:42:46,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:46,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:42:46,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:46,546.546 INFO    ] No camera update needed
[2026-08-25 09:42:46,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:42:46,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:42:46,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:42:46,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:42:48,599.599 INFO    ] ================================================
[2026-08-25 09:42:48,614.614 INFO    ] Launching Daemon at Tue Aug 25 09:42:48 IST 2026
[2026-08-25 09:42:48,625.625 INFO    ] ================================================
[2026-08-25 09:42:49,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:42:49
[2026-08-25 09:42:49,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:42:50,056.056 INFO    ] Initializing speech engine...
[2026-08-25 09:42:50,065.065 INFO    ] 2026-08-25 09:42:50
[2026-08-25 09:42:50,313.313 INFO    ] 2026-08-25 09:42:50
[2026-08-25 09:42:50,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:42:50,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:42:50,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:42:50,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:42:50,688.688 INFO    ] time= 25/08/2026 09:42:50
[2026-08-25 09:42:50,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:42:50,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:42:50,859.859 INFO    ] No existing commands found in stream
[2026-08-25 09:42:55,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:42:55,887.887 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 09:42:58,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:42:58,678.678 INFO    ] Checking for system updates...
[2026-08-25 09:42:58,717.717 INFO    ] 200
[2026-08-25 09:42:58,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:58,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:58,780.780 INFO    ] No update needed
[2026-08-25 09:42:58,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 09:42:58,819.819 INFO    ] 200
[2026-08-25 09:42:58,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:42:58,866.866 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:42:58,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:42:58,913.913 INFO    ] No camera update needed
[2026-08-25 09:42:58,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:42:58,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:42:58,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:42:58,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:43:00,969.969 INFO    ] ================================================
[2026-08-25 09:43:00,985.985 INFO    ] Launching Daemon at Tue Aug 25 09:43:00 IST 2026
[2026-08-25 09:43:01,995.995 INFO    ] ================================================
[2026-08-25 09:43:01,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:43:01
[2026-08-25 09:43:02,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:43:02,888.888 INFO    ] Initializing speech engine...
[2026-08-25 09:43:02,904.904 INFO    ] 2026-08-25 09:43:02
[2026-08-25 09:43:03,215.215 INFO    ] 2026-08-25 09:43:03
[2026-08-25 09:43:03,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:43:03,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:43:03,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:43:03,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:43:03,651.651 INFO    ] time= 25/08/2026 09:43:03
[2026-08-25 09:43:03,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:43:03,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:43:03,869.869 INFO    ] No existing commands found in stream
[2026-08-25 09:43:08,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:43:08,907.907 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 09:43:10,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:43:10,198.198 INFO    ] Checking for system updates...
[2026-08-25 09:43:10,233.233 INFO    ] 200
[2026-08-25 09:43:10,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:10,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:10,291.291 INFO    ] No update needed
[2026-08-25 09:43:10,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 09:43:10,327.327 INFO    ] 200
[2026-08-25 09:43:10,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:10,375.375 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:43:10,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:10,426.426 INFO    ] No camera update needed
[2026-08-25 09:43:10,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:43:10,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:43:10,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:43:10,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:43:12,479.479 INFO    ] ================================================
[2026-08-25 09:43:12,495.495 INFO    ] Launching Daemon at Tue Aug 25 09:43:12 IST 2026
[2026-08-25 09:43:12,506.506 INFO    ] ================================================
[2026-08-25 09:43:13,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:43:13
[2026-08-25 09:43:13,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:43:14,063.063 INFO    ] Initializing speech engine...
[2026-08-25 09:43:14,074.074 INFO    ] 2026-08-25 09:43:14
[2026-08-25 09:43:14,377.377 INFO    ] 2026-08-25 09:43:14
[2026-08-25 09:43:14,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:43:14,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:43:14,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:43:14,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:43:14,882.882 INFO    ] time= 25/08/2026 09:43:14
[2026-08-25 09:43:14,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:43:14,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:43:15,037.037 INFO    ] No existing commands found in stream
[2026-08-25 09:43:20,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:43:20,063.063 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 09:43:21,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:43:21,697.697 INFO    ] Checking for system updates...
[2026-08-25 09:43:21,732.732 INFO    ] 200
[2026-08-25 09:43:21,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:21,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:43:21,795.795 INFO    ] No update needed
[2026-08-25 09:43:21,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 09:43:21,833.833 INFO    ] 200
[2026-08-25 09:43:21,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:21,878.878 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:43:21,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:43:21,936.936 INFO    ] No camera update needed
[2026-08-25 09:43:21,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:43:21,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:43:21,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:43:21,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:43:23,990.990 INFO    ] ================================================
[2026-08-25 09:43:24,005.005 INFO    ] Launching Daemon at Tue Aug 25 09:43:24 IST 2026
[2026-08-25 09:43:24,016.016 INFO    ] ================================================
[2026-08-25 09:43:24,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:43:24
[2026-08-25 09:43:25,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:43:25,564.564 INFO    ] Initializing speech engine...
[2026-08-25 09:43:25,570.570 INFO    ] 2026-08-25 09:43:25
[2026-08-25 09:43:25,855.855 INFO    ] 2026-08-25 09:43:25
[2026-08-25 09:43:25,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:43:26,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:43:26,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:43:26,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:43:26,337.337 INFO    ] time= 25/08/2026 09:43:26
[2026-08-25 09:43:26,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:43:26,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:43:26,519.519 INFO    ] No existing commands found in stream
[2026-08-25 09:43:31,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:43:31,550.550 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 09:43:33,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:43:33,489.489 INFO    ] Checking for system updates...
[2026-08-25 09:43:33,528.528 INFO    ] 200
[2026-08-25 09:43:33,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:33,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:33,591.591 INFO    ] No update needed
[2026-08-25 09:43:33,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 09:43:33,630.630 INFO    ] 200
[2026-08-25 09:43:33,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:33,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:43:33,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:33,733.733 INFO    ] No camera update needed
[2026-08-25 09:43:33,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:43:33,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:43:33,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:43:33,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:43:35,790.790 INFO    ] ================================================
[2026-08-25 09:43:35,805.805 INFO    ] Launching Daemon at Tue Aug 25 09:43:35 IST 2026
[2026-08-25 09:43:35,816.816 INFO    ] ================================================
[2026-08-25 09:43:36,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:43:36
[2026-08-25 09:43:37,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:43:37,371.371 INFO    ] Initializing speech engine...
[2026-08-25 09:43:37,384.384 INFO    ] 2026-08-25 09:43:37
[2026-08-25 09:43:37,649.649 INFO    ] 2026-08-25 09:43:37
[2026-08-25 09:43:37,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:43:37,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:43:37,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:43:38,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:43:38,129.129 INFO    ] time= 25/08/2026 09:43:38
[2026-08-25 09:43:38,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:43:38,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:43:38,344.344 INFO    ] No existing commands found in stream
[2026-08-25 09:43:43,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:43:43,365.365 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 09:43:46,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:43:46,708.708 INFO    ] Checking for system updates...
[2026-08-25 09:43:46,745.745 INFO    ] 200
[2026-08-25 09:43:46,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:46,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:46,803.803 INFO    ] No update needed
[2026-08-25 09:43:46,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 09:43:46,839.839 INFO    ] 200
[2026-08-25 09:43:46,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:46,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:43:47,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:47,034.034 INFO    ] No camera update needed
[2026-08-25 09:43:47,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:43:47,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:43:47,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:43:47,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:43:49,090.090 INFO    ] ================================================
[2026-08-25 09:43:49,106.106 INFO    ] Launching Daemon at Tue Aug 25 09:43:49 IST 2026
[2026-08-25 09:43:49,117.117 INFO    ] ================================================
[2026-08-25 09:43:49,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:43:49
[2026-08-25 09:43:50,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:43:50,538.538 INFO    ] Initializing speech engine...
[2026-08-25 09:43:50,547.547 INFO    ] 2026-08-25 09:43:50
[2026-08-25 09:43:50,798.798 INFO    ] 2026-08-25 09:43:50
[2026-08-25 09:43:50,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:43:51,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:43:51,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:43:51,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:43:51,288.288 INFO    ] time= 25/08/2026 09:43:51
[2026-08-25 09:43:51,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:43:51,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:43:51,483.483 INFO    ] No existing commands found in stream
[2026-08-25 09:43:56,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:43:56,513.513 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 09:43:57,798.798 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:43:57,800.800 INFO    ] Checking for system updates...
[2026-08-25 09:43:57,836.836 INFO    ] 200
[2026-08-25 09:43:57,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:57,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:57,896.896 INFO    ] No update needed
[2026-08-25 09:43:57,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 09:43:57,936.936 INFO    ] 200
[2026-08-25 09:43:57,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:43:57,988.988 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:43:58,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:43:58,041.041 INFO    ] No camera update needed
[2026-08-25 09:43:58,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:43:58,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:43:58,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:43:58,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:44:00,099.099 INFO    ] ================================================
[2026-08-25 09:44:00,114.114 INFO    ] Launching Daemon at Tue Aug 25 09:44:00 IST 2026
[2026-08-25 09:44:00,125.125 INFO    ] ================================================
[2026-08-25 09:44:00,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:44:00
[2026-08-25 09:44:01,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:44:01,838.838 INFO    ] Initializing speech engine...
[2026-08-25 09:44:01,842.842 INFO    ] 2026-08-25 09:44:01
[2026-08-25 09:44:02,182.182 INFO    ] 2026-08-25 09:44:02
[2026-08-25 09:44:02,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:44:02,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:44:02,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:44:02,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:44:02,631.631 INFO    ] time= 25/08/2026 09:44:02
[2026-08-25 09:44:02,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:44:02,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:44:02,825.825 INFO    ] No existing commands found in stream
[2026-08-25 09:44:07,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:44:07,860.860 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 09:44:10,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:44:10,279.279 INFO    ] Checking for system updates...
[2026-08-25 09:44:10,318.318 INFO    ] 200
[2026-08-25 09:44:10,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:10,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:44:10,374.374 INFO    ] No update needed
[2026-08-25 09:44:10,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 09:44:10,410.410 INFO    ] 200
[2026-08-25 09:44:10,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:10,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:44:10,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:44:10,508.508 INFO    ] No camera update needed
[2026-08-25 09:44:10,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:44:10,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:44:10,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:44:10,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:44:12,564.564 INFO    ] ================================================
[2026-08-25 09:44:12,580.580 INFO    ] Launching Daemon at Tue Aug 25 09:44:12 IST 2026
[2026-08-25 09:44:12,591.591 INFO    ] ================================================
[2026-08-25 09:44:13,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:44:13
[2026-08-25 09:44:13,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:44:14,033.033 INFO    ] Initializing speech engine...
[2026-08-25 09:44:14,042.042 INFO    ] 2026-08-25 09:44:14
[2026-08-25 09:44:14,291.291 INFO    ] 2026-08-25 09:44:14
[2026-08-25 09:44:14,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:44:14,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:44:14,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:44:14,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:44:14,764.764 INFO    ] time= 25/08/2026 09:44:14
[2026-08-25 09:44:14,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:44:14,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:44:14,979.979 INFO    ] No existing commands found in stream
[2026-08-25 09:44:20,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:44:20,013.013 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 09:44:23,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:44:23,026.026 INFO    ] Checking for system updates...
[2026-08-25 09:44:23,062.062 INFO    ] 200
[2026-08-25 09:44:23,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:23,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:23,120.120 INFO    ] No update needed
[2026-08-25 09:44:23,123.123 INFO    ] Checking for camera pi updates...
[2026-08-25 09:44:23,157.157 INFO    ] 200
[2026-08-25 09:44:23,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:23,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:44:23,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:23,251.251 INFO    ] No camera update needed
[2026-08-25 09:44:23,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:44:23,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:44:23,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:44:23,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:44:25,307.307 INFO    ] ================================================
[2026-08-25 09:44:25,323.323 INFO    ] Launching Daemon at Tue Aug 25 09:44:25 IST 2026
[2026-08-25 09:44:25,334.334 INFO    ] ================================================
[2026-08-25 09:44:25,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:44:25
[2026-08-25 09:44:26,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:44:26,782.782 INFO    ] Initializing speech engine...
[2026-08-25 09:44:26,798.798 INFO    ] 2026-08-25 09:44:26
[2026-08-25 09:44:27,082.082 INFO    ] 2026-08-25 09:44:27
[2026-08-25 09:44:27,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:44:27,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:44:27,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:44:27,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:44:27,453.453 INFO    ] time= 25/08/2026 09:44:27
[2026-08-25 09:44:27,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:44:27,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:44:27,576.576 INFO    ] No existing commands found in stream
[2026-08-25 09:44:32,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:44:32,590.590 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 09:44:35,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:44:35,800.800 INFO    ] Checking for system updates...
[2026-08-25 09:44:35,836.836 INFO    ] 200
[2026-08-25 09:44:35,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:35,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:35,898.898 INFO    ] No update needed
[2026-08-25 09:44:35,900.900 INFO    ] Checking for camera pi updates...
[2026-08-25 09:44:35,933.933 INFO    ] 200
[2026-08-25 09:44:35,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:35,983.983 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:44:36,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:36,032.032 INFO    ] No camera update needed
[2026-08-25 09:44:36,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:44:36,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:44:36,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:44:36,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:44:38,087.087 INFO    ] ================================================
[2026-08-25 09:44:38,102.102 INFO    ] Launching Daemon at Tue Aug 25 09:44:38 IST 2026
[2026-08-25 09:44:38,113.113 INFO    ] ================================================
[2026-08-25 09:44:38,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:44:38
[2026-08-25 09:44:39,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:44:39,535.535 INFO    ] Initializing speech engine...
[2026-08-25 09:44:39,545.545 INFO    ] 2026-08-25 09:44:39
[2026-08-25 09:44:39,803.803 INFO    ] 2026-08-25 09:44:39
[2026-08-25 09:44:39,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:44:40,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:44:40,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:44:40,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:44:40,287.287 INFO    ] time= 25/08/2026 09:44:40
[2026-08-25 09:44:40,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:44:40,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:44:40,496.496 INFO    ] No existing commands found in stream
[2026-08-25 09:44:45,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:44:45,513.513 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 09:44:46,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:44:46,809.809 INFO    ] Checking for system updates...
[2026-08-25 09:44:46,848.848 INFO    ] 200
[2026-08-25 09:44:46,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:46,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:46,916.916 INFO    ] No update needed
[2026-08-25 09:44:46,919.919 INFO    ] Checking for camera pi updates...
[2026-08-25 09:44:46,953.953 INFO    ] 200
[2026-08-25 09:44:46,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:46,997.997 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:44:47,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:47,051.051 INFO    ] No camera update needed
[2026-08-25 09:44:47,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:44:47,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:44:47,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:44:47,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:44:49,108.108 INFO    ] ================================================
[2026-08-25 09:44:49,123.123 INFO    ] Launching Daemon at Tue Aug 25 09:44:49 IST 2026
[2026-08-25 09:44:49,135.135 INFO    ] ================================================
[2026-08-25 09:44:49,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:44:49
[2026-08-25 09:44:50,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:44:50,555.555 INFO    ] Initializing speech engine...
[2026-08-25 09:44:50,564.564 INFO    ] 2026-08-25 09:44:50
[2026-08-25 09:44:50,814.814 INFO    ] 2026-08-25 09:44:50
[2026-08-25 09:44:50,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:44:51,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:44:51,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:44:51,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:44:51,188.188 INFO    ] time= 25/08/2026 09:44:51
[2026-08-25 09:44:51,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:44:51,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:44:51,350.350 INFO    ] No existing commands found in stream
[2026-08-25 09:44:56,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:44:56,383.383 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 09:44:57,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:44:57,548.548 INFO    ] Checking for system updates...
[2026-08-25 09:44:57,583.583 INFO    ] 200
[2026-08-25 09:44:57,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:57,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:57,640.640 INFO    ] No update needed
[2026-08-25 09:44:57,642.642 INFO    ] Checking for camera pi updates...
[2026-08-25 09:44:57,675.675 INFO    ] 200
[2026-08-25 09:44:57,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:44:57,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:44:57,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:44:57,776.776 INFO    ] No camera update needed
[2026-08-25 09:44:57,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:44:57,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:44:57,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:44:57,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:44:59,831.831 INFO    ] ================================================
[2026-08-25 09:44:59,846.846 INFO    ] Launching Daemon at Tue Aug 25 09:44:59 IST 2026
[2026-08-25 09:44:59,857.857 INFO    ] ================================================
[2026-08-25 09:45:00,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:45:00
[2026-08-25 09:45:01,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:45:01,269.269 INFO    ] Initializing speech engine...
[2026-08-25 09:45:01,294.294 INFO    ] 2026-08-25 09:45:01
[2026-08-25 09:45:01,855.855 INFO    ] 2026-08-25 09:45:01
[2026-08-25 09:45:01,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:45:02,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:45:02,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:45:02,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:45:02,332.332 INFO    ] time= 25/08/2026 09:45:02
[2026-08-25 09:45:02,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:45:02,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:45:02,412.412 INFO    ] No existing commands found in stream
[2026-08-25 09:45:07,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:45:07,429.429 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 09:45:10,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:45:11,000.000 INFO    ] Checking for system updates...
[2026-08-25 09:45:11,038.038 INFO    ] 200
[2026-08-25 09:45:11,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:11,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:45:11,096.096 INFO    ] No update needed
[2026-08-25 09:45:11,098.098 INFO    ] Checking for camera pi updates...
[2026-08-25 09:45:11,132.132 INFO    ] 200
[2026-08-25 09:45:11,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:11,174.174 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:45:11,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:45:11,225.225 INFO    ] No camera update needed
[2026-08-25 09:45:11,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:45:11,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:45:11,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:45:11,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:45:13,280.280 INFO    ] ================================================
[2026-08-25 09:45:13,296.296 INFO    ] Launching Daemon at Tue Aug 25 09:45:13 IST 2026
[2026-08-25 09:45:13,307.307 INFO    ] ================================================
[2026-08-25 09:45:13,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:45:13
[2026-08-25 09:45:14,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:45:14,732.732 INFO    ] Initializing speech engine...
[2026-08-25 09:45:14,757.757 INFO    ] 2026-08-25 09:45:14
[2026-08-25 09:45:15,027.027 INFO    ] 2026-08-25 09:45:15
[2026-08-25 09:45:15,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:45:15,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:45:15,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:45:15,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:45:15,440.440 INFO    ] time= 25/08/2026 09:45:15
[2026-08-25 09:45:15,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:45:15,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:45:15,525.525 INFO    ] No existing commands found in stream
[2026-08-25 09:45:20,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:45:20,540.540 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 09:45:24,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:45:24,529.529 INFO    ] Checking for system updates...
[2026-08-25 09:45:24,565.565 INFO    ] 200
[2026-08-25 09:45:24,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:24,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:45:24,631.631 INFO    ] No update needed
[2026-08-25 09:45:24,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 09:45:24,671.671 INFO    ] 200
[2026-08-25 09:45:24,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:24,720.720 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:45:24,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:45:24,770.770 INFO    ] No camera update needed
[2026-08-25 09:45:24,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:45:24,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:45:24,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:45:24,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:45:26,827.827 INFO    ] ================================================
[2026-08-25 09:45:26,843.843 INFO    ] Launching Daemon at Tue Aug 25 09:45:26 IST 2026
[2026-08-25 09:45:26,854.854 INFO    ] ================================================
[2026-08-25 09:45:27,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:45:27
[2026-08-25 09:45:28,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:45:28,282.282 INFO    ] Initializing speech engine...
[2026-08-25 09:45:28,289.289 INFO    ] 2026-08-25 09:45:28
[2026-08-25 09:45:28,540.540 INFO    ] 2026-08-25 09:45:28
[2026-08-25 09:45:28,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:45:28,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:45:28,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:45:28,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:45:28,889.889 INFO    ] time= 25/08/2026 09:45:28
[2026-08-25 09:45:28,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:45:28,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:45:29,050.050 INFO    ] No existing commands found in stream
[2026-08-25 09:45:34,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:45:34,082.082 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 09:45:37,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:45:37,029.029 INFO    ] Checking for system updates...
[2026-08-25 09:45:37,064.064 INFO    ] 200
[2026-08-25 09:45:37,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:37,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:45:37,123.123 INFO    ] No update needed
[2026-08-25 09:45:37,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 09:45:37,162.162 INFO    ] 200
[2026-08-25 09:45:37,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:37,204.204 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:45:37,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:45:37,248.248 INFO    ] No camera update needed
[2026-08-25 09:45:37,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:45:37,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:45:37,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:45:37,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:45:39,304.304 INFO    ] ================================================
[2026-08-25 09:45:39,319.319 INFO    ] Launching Daemon at Tue Aug 25 09:45:39 IST 2026
[2026-08-25 09:45:39,330.330 INFO    ] ================================================
[2026-08-25 09:45:39,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:45:39
[2026-08-25 09:45:40,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:45:40,914.914 INFO    ] Initializing speech engine...
[2026-08-25 09:45:40,928.928 INFO    ] 2026-08-25 09:45:40
[2026-08-25 09:45:41,232.232 INFO    ] 2026-08-25 09:45:41
[2026-08-25 09:45:41,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:45:41,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:45:41,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:45:41,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:45:41,741.741 INFO    ] time= 25/08/2026 09:45:41
[2026-08-25 09:45:41,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:45:41,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:45:41,892.892 INFO    ] No existing commands found in stream
[2026-08-25 09:45:46,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:45:46,909.909 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 09:45:48,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:45:48,518.518 INFO    ] Checking for system updates...
[2026-08-25 09:45:48,554.554 INFO    ] 200
[2026-08-25 09:45:48,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:48,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:45:48,613.613 INFO    ] No update needed
[2026-08-25 09:45:48,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 09:45:48,649.649 INFO    ] 200
[2026-08-25 09:45:48,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:45:48,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:45:48,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:45:48,843.843 INFO    ] No camera update needed
[2026-08-25 09:45:48,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:45:48,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:45:48,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:45:48,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:45:50,908.908 INFO    ] ================================================
[2026-08-25 09:45:50,924.924 INFO    ] Launching Daemon at Tue Aug 25 09:45:50 IST 2026
[2026-08-25 09:45:50,935.935 INFO    ] ================================================
[2026-08-25 09:45:51,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:45:51
[2026-08-25 09:45:52,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:45:52,397.397 INFO    ] Initializing speech engine...
[2026-08-25 09:45:52,421.421 INFO    ] 2026-08-25 09:45:52
[2026-08-25 09:45:52,692.692 INFO    ] 2026-08-25 09:45:52
[2026-08-25 09:45:52,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:45:52,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:45:52,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:45:53,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:45:53,083.083 INFO    ] time= 25/08/2026 09:45:53
[2026-08-25 09:45:53,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:45:53,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:45:53,190.190 INFO    ] No existing commands found in stream
[2026-08-25 09:45:58,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:45:58,206.206 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 09:46:00,045.045 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:46:00,048.048 INFO    ] Checking for system updates...
[2026-08-25 09:46:00,086.086 INFO    ] 200
[2026-08-25 09:46:00,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:00,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:46:00,143.143 INFO    ] No update needed
[2026-08-25 09:46:00,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 09:46:00,183.183 INFO    ] 200
[2026-08-25 09:46:00,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:00,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:46:00,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:46:00,282.282 INFO    ] No camera update needed
[2026-08-25 09:46:00,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:46:00,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:46:00,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:46:00,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:46:02,339.339 INFO    ] ================================================
[2026-08-25 09:46:02,362.362 INFO    ] Launching Daemon at Tue Aug 25 09:46:02 IST 2026
[2026-08-25 09:46:02,374.374 INFO    ] ================================================
[2026-08-25 09:46:03,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:46:03
[2026-08-25 09:46:03,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:46:03,972.972 INFO    ] Initializing speech engine...
[2026-08-25 09:46:03,978.978 INFO    ] 2026-08-25 09:46:03
[2026-08-25 09:46:04,224.224 INFO    ] 2026-08-25 09:46:04
[2026-08-25 09:46:04,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:46:04,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:46:04,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:46:04,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:46:04,592.592 INFO    ] time= 25/08/2026 09:46:04
[2026-08-25 09:46:04,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:46:04,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:46:04,779.779 INFO    ] No existing commands found in stream
[2026-08-25 09:46:09,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:46:09,802.802 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 09:46:10,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:46:10,897.897 INFO    ] Checking for system updates...
[2026-08-25 09:46:10,932.932 INFO    ] 200
[2026-08-25 09:46:10,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:10,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:46:10,994.994 INFO    ] No update needed
[2026-08-25 09:46:10,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 09:46:11,033.033 INFO    ] 200
[2026-08-25 09:46:11,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:11,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:46:11,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:46:11,127.127 INFO    ] No camera update needed
[2026-08-25 09:46:11,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:46:11,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:46:11,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:46:11,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:46:13,182.182 INFO    ] ================================================
[2026-08-25 09:46:13,198.198 INFO    ] Launching Daemon at Tue Aug 25 09:46:13 IST 2026
[2026-08-25 09:46:13,209.209 INFO    ] ================================================
[2026-08-25 09:46:13,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:46:13
[2026-08-25 09:46:14,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:46:14,757.757 INFO    ] Initializing speech engine...
[2026-08-25 09:46:14,765.765 INFO    ] 2026-08-25 09:46:14
[2026-08-25 09:46:15,048.048 INFO    ] 2026-08-25 09:46:15
[2026-08-25 09:46:15,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:46:15,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:46:15,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:46:15,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:46:15,518.518 INFO    ] time= 25/08/2026 09:46:15
[2026-08-25 09:46:15,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:46:15,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:46:15,749.749 INFO    ] No existing commands found in stream
[2026-08-25 09:46:20,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:46:20,768.768 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 09:46:22,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:46:22,148.148 INFO    ] Checking for system updates...
[2026-08-25 09:46:22,183.183 INFO    ] 200
[2026-08-25 09:46:22,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:22,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:46:22,240.240 INFO    ] No update needed
[2026-08-25 09:46:22,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 09:46:22,276.276 INFO    ] 200
[2026-08-25 09:46:22,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:22,318.318 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:46:22,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:46:22,368.368 INFO    ] No camera update needed
[2026-08-25 09:46:22,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:46:22,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:46:22,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:46:22,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:46:24,422.422 INFO    ] ================================================
[2026-08-25 09:46:24,438.438 INFO    ] Launching Daemon at Tue Aug 25 09:46:24 IST 2026
[2026-08-25 09:46:24,449.449 INFO    ] ================================================
[2026-08-25 09:46:25,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:46:25
[2026-08-25 09:46:25,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:46:25,871.871 INFO    ] Initializing speech engine...
[2026-08-25 09:46:25,881.881 INFO    ] 2026-08-25 09:46:25
[2026-08-25 09:46:26,130.130 INFO    ] 2026-08-25 09:46:26
[2026-08-25 09:46:26,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:46:26,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:46:26,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:46:26,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:46:26,608.608 INFO    ] time= 25/08/2026 09:46:26
[2026-08-25 09:46:26,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:46:26,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:46:26,829.829 INFO    ] No existing commands found in stream
[2026-08-25 09:46:31,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:46:31,854.854 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 09:46:33,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:46:33,959.959 INFO    ] Checking for system updates...
[2026-08-25 09:46:33,995.995 INFO    ] 200
[2026-08-25 09:46:33,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:34,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:46:34,058.058 INFO    ] No update needed
[2026-08-25 09:46:34,060.060 INFO    ] Checking for camera pi updates...
[2026-08-25 09:46:34,093.093 INFO    ] 200
[2026-08-25 09:46:34,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:34,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:46:34,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:46:34,211.211 INFO    ] No camera update needed
[2026-08-25 09:46:34,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:46:34,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:46:34,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:46:34,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:46:36,266.266 INFO    ] ================================================
[2026-08-25 09:46:36,281.281 INFO    ] Launching Daemon at Tue Aug 25 09:46:36 IST 2026
[2026-08-25 09:46:36,293.293 INFO    ] ================================================
[2026-08-25 09:46:36,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:46:36
[2026-08-25 09:46:37,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:46:37,691.691 INFO    ] Initializing speech engine...
[2026-08-25 09:46:37,705.705 INFO    ] 2026-08-25 09:46:37
[2026-08-25 09:46:37,971.971 INFO    ] 2026-08-25 09:46:37
[2026-08-25 09:46:38,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:46:38,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:46:38,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:46:38,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:46:38,345.345 INFO    ] time= 25/08/2026 09:46:38
[2026-08-25 09:46:38,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:46:38,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:46:38,530.530 INFO    ] No existing commands found in stream
[2026-08-25 09:46:43,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:46:43,560.560 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 09:46:46,485.485 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:46:46,488.488 INFO    ] Checking for system updates...
[2026-08-25 09:46:46,525.525 INFO    ] 200
[2026-08-25 09:46:46,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:46,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:46:46,582.582 INFO    ] No update needed
[2026-08-25 09:46:46,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 09:46:46,617.617 INFO    ] 200
[2026-08-25 09:46:46,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:46:46,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:46:46,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:46:46,720.720 INFO    ] No camera update needed
[2026-08-25 09:46:46,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:46:46,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:46:46,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:46:46,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:46:48,776.776 INFO    ] ================================================
[2026-08-25 09:46:48,791.791 INFO    ] Launching Daemon at Tue Aug 25 09:46:48 IST 2026
[2026-08-25 09:46:48,801.801 INFO    ] ================================================
[2026-08-25 09:46:49,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:46:49
[2026-08-25 09:46:49,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:46:50,252.252 INFO    ] Initializing speech engine...
[2026-08-25 09:46:50,266.266 INFO    ] 2026-08-25 09:46:50
[2026-08-25 09:46:50,530.530 INFO    ] 2026-08-25 09:46:50
[2026-08-25 09:46:50,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:46:50,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:46:50,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:46:51,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:46:51,060.060 INFO    ] time= 25/08/2026 09:46:51
[2026-08-25 09:46:51,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:46:51,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:46:51,205.205 INFO    ] No existing commands found in stream
[2026-08-25 09:46:56,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:46:56,227.227 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 09:47:00,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:47:00,640.640 INFO    ] Checking for system updates...
[2026-08-25 09:47:00,678.678 INFO    ] 200
[2026-08-25 09:47:00,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:00,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:00,738.738 INFO    ] No update needed
[2026-08-25 09:47:00,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 09:47:00,776.776 INFO    ] 200
[2026-08-25 09:47:00,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:00,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:47:00,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:00,867.867 INFO    ] No camera update needed
[2026-08-25 09:47:00,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:47:00,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:47:00,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:47:00,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:47:02,941.941 INFO    ] ================================================
[2026-08-25 09:47:02,964.964 INFO    ] Launching Daemon at Tue Aug 25 09:47:02 IST 2026
[2026-08-25 09:47:02,976.976 INFO    ] ================================================
[2026-08-25 09:47:03,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:47:03
[2026-08-25 09:47:04,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:47:04,534.534 INFO    ] Initializing speech engine...
[2026-08-25 09:47:04,547.547 INFO    ] 2026-08-25 09:47:04
[2026-08-25 09:47:04,827.827 INFO    ] 2026-08-25 09:47:04
[2026-08-25 09:47:04,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:47:05,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:47:05,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:47:05,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:47:05,224.224 INFO    ] time= 25/08/2026 09:47:05
[2026-08-25 09:47:05,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:47:05,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:47:05,309.309 INFO    ] No existing commands found in stream
[2026-08-25 09:47:10,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:47:10,324.324 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 09:47:13,231.231 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:47:13,234.234 INFO    ] Checking for system updates...
[2026-08-25 09:47:13,271.271 INFO    ] 200
[2026-08-25 09:47:13,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:13,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:47:13,328.328 INFO    ] No update needed
[2026-08-25 09:47:13,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 09:47:13,366.366 INFO    ] 200
[2026-08-25 09:47:13,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:13,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:47:13,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:47:13,473.473 INFO    ] No camera update needed
[2026-08-25 09:47:13,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:47:13,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:47:13,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:47:13,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:47:15,528.528 INFO    ] ================================================
[2026-08-25 09:47:15,543.543 INFO    ] Launching Daemon at Tue Aug 25 09:47:15 IST 2026
[2026-08-25 09:47:15,553.553 INFO    ] ================================================
[2026-08-25 09:47:16,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:47:16
[2026-08-25 09:47:16,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:47:17,111.111 INFO    ] Initializing speech engine...
[2026-08-25 09:47:17,125.125 INFO    ] 2026-08-25 09:47:17
[2026-08-25 09:47:17,389.389 INFO    ] 2026-08-25 09:47:17
[2026-08-25 09:47:17,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:47:17,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:47:17,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:47:17,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:47:17,859.859 INFO    ] time= 25/08/2026 09:47:17
[2026-08-25 09:47:17,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:47:17,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:47:18,065.065 INFO    ] No existing commands found in stream
[2026-08-25 09:47:23,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:47:23,099.099 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 09:47:25,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:47:25,923.923 INFO    ] Checking for system updates...
[2026-08-25 09:47:25,960.960 INFO    ] 200
[2026-08-25 09:47:25,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:26,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:26,025.025 INFO    ] No update needed
[2026-08-25 09:47:26,028.028 INFO    ] Checking for camera pi updates...
[2026-08-25 09:47:26,066.066 INFO    ] 200
[2026-08-25 09:47:26,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:26,115.115 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:47:26,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:26,173.173 INFO    ] No camera update needed
[2026-08-25 09:47:26,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:47:26,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:47:26,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:47:26,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:47:28,231.231 INFO    ] ================================================
[2026-08-25 09:47:28,247.247 INFO    ] Launching Daemon at Tue Aug 25 09:47:28 IST 2026
[2026-08-25 09:47:28,258.258 INFO    ] ================================================
[2026-08-25 09:47:28,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:47:28
[2026-08-25 09:47:29,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:47:29,692.692 INFO    ] Initializing speech engine...
[2026-08-25 09:47:29,698.698 INFO    ] 2026-08-25 09:47:29
[2026-08-25 09:47:29,958.958 INFO    ] 2026-08-25 09:47:29
[2026-08-25 09:47:29,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:47:30,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:47:30,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:47:30,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:47:30,359.359 INFO    ] time= 25/08/2026 09:47:30
[2026-08-25 09:47:30,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:47:30,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:47:30,517.517 INFO    ] No existing commands found in stream
[2026-08-25 09:47:35,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:47:35,545.545 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 09:47:37,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:47:37,424.424 INFO    ] Checking for system updates...
[2026-08-25 09:47:37,460.460 INFO    ] 200
[2026-08-25 09:47:37,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:37,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:37,520.520 INFO    ] No update needed
[2026-08-25 09:47:37,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 09:47:37,556.556 INFO    ] 200
[2026-08-25 09:47:37,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:37,599.599 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:47:37,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:37,651.651 INFO    ] No camera update needed
[2026-08-25 09:47:37,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:47:37,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:47:37,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:47:37,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:47:39,705.705 INFO    ] ================================================
[2026-08-25 09:47:39,720.720 INFO    ] Launching Daemon at Tue Aug 25 09:47:39 IST 2026
[2026-08-25 09:47:39,731.731 INFO    ] ================================================
[2026-08-25 09:47:40,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:47:40
[2026-08-25 09:47:40,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:47:41,149.149 INFO    ] Initializing speech engine...
[2026-08-25 09:47:41,164.164 INFO    ] 2026-08-25 09:47:41
[2026-08-25 09:47:41,427.427 INFO    ] 2026-08-25 09:47:41
[2026-08-25 09:47:41,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:47:41,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:47:41,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:47:41,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:47:41,829.829 INFO    ] time= 25/08/2026 09:47:41
[2026-08-25 09:47:41,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:47:41,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:47:41,912.912 INFO    ] No existing commands found in stream
[2026-08-25 09:47:46,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:47:46,950.950 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 09:47:50,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:47:50,434.434 INFO    ] Checking for system updates...
[2026-08-25 09:47:50,469.469 INFO    ] 200
[2026-08-25 09:47:50,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:50,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:50,534.534 INFO    ] No update needed
[2026-08-25 09:47:50,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 09:47:50,569.569 INFO    ] 200
[2026-08-25 09:47:50,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:47:50,619.619 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:47:50,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:47:50,767.767 INFO    ] No camera update needed
[2026-08-25 09:47:50,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:47:50,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:47:50,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:47:50,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:47:52,821.821 INFO    ] ================================================
[2026-08-25 09:47:52,837.837 INFO    ] Launching Daemon at Tue Aug 25 09:47:52 IST 2026
[2026-08-25 09:47:52,848.848 INFO    ] ================================================
[2026-08-25 09:47:53,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:47:53
[2026-08-25 09:47:53,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:47:54,271.271 INFO    ] Initializing speech engine...
[2026-08-25 09:47:54,280.280 INFO    ] 2026-08-25 09:47:54
[2026-08-25 09:47:54,557.557 INFO    ] 2026-08-25 09:47:54
[2026-08-25 09:47:54,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:47:54,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:47:54,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:47:55,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:47:55,088.088 INFO    ] time= 25/08/2026 09:47:55
[2026-08-25 09:47:55,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:47:55,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:47:55,244.244 INFO    ] No existing commands found in stream
[2026-08-25 09:48:00,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:48:00,263.263 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 09:48:01,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:48:01,939.939 INFO    ] Checking for system updates...
[2026-08-25 09:48:02,063.063 INFO    ] 200
[2026-08-25 09:48:02,069.069 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:02,073.073 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 09:48:02,077.077 INFO    ] Checking for camera pi updates...
[2026-08-25 09:48:02,161.161 INFO    ] 200
[2026-08-25 09:48:02,167.167 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:02,170.170 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 09:48:02,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:48:02,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:48:02,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:48:02,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:48:04,240.240 INFO    ] ================================================
[2026-08-25 09:48:04,256.256 INFO    ] Launching Daemon at Tue Aug 25 09:48:04 IST 2026
[2026-08-25 09:48:04,267.267 INFO    ] ================================================
[2026-08-25 09:48:04,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:48:04
[2026-08-25 09:48:05,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:48:05,711.711 INFO    ] Initializing speech engine...
[2026-08-25 09:48:05,727.727 INFO    ] 2026-08-25 09:48:05
[2026-08-25 09:48:06,014.014 INFO    ] 2026-08-25 09:48:05
[2026-08-25 09:48:06,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:48:06,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:48:06,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:48:06,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:48:06,417.417 INFO    ] time= 25/08/2026 09:48:06
[2026-08-25 09:48:06,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:48:06,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:48:06,525.525 INFO    ] No existing commands found in stream
[2026-08-25 09:48:11,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:48:11,540.540 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 09:48:15,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:48:15,959.959 INFO    ] Checking for system updates...
[2026-08-25 09:48:15,996.996 INFO    ] 200
[2026-08-25 09:48:15,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:16,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:48:16,053.053 INFO    ] No update needed
[2026-08-25 09:48:16,056.056 INFO    ] Checking for camera pi updates...
[2026-08-25 09:48:16,090.090 INFO    ] 200
[2026-08-25 09:48:16,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:16,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:48:16,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:48:16,192.192 INFO    ] No camera update needed
[2026-08-25 09:48:16,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:48:16,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:48:16,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:48:16,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:48:18,247.247 INFO    ] ================================================
[2026-08-25 09:48:18,263.263 INFO    ] Launching Daemon at Tue Aug 25 09:48:18 IST 2026
[2026-08-25 09:48:18,274.274 INFO    ] ================================================
[2026-08-25 09:48:18,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:48:18
[2026-08-25 09:48:19,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:48:19,921.921 INFO    ] Initializing speech engine...
[2026-08-25 09:48:19,929.929 INFO    ] 2026-08-25 09:48:19
[2026-08-25 09:48:20,202.202 INFO    ] 2026-08-25 09:48:20
[2026-08-25 09:48:20,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:48:20,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:48:20,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:48:20,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:48:20,677.677 INFO    ] time= 25/08/2026 09:48:20
[2026-08-25 09:48:20,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:48:20,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:48:20,917.917 INFO    ] No existing commands found in stream
[2026-08-25 09:48:25,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:48:25,947.947 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 09:48:28,287.287 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:48:28,290.290 INFO    ] Checking for system updates...
[2026-08-25 09:48:28,331.331 INFO    ] 200
[2026-08-25 09:48:28,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:28,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:48:28,390.390 INFO    ] No update needed
[2026-08-25 09:48:28,393.393 INFO    ] Checking for camera pi updates...
[2026-08-25 09:48:28,432.432 INFO    ] 200
[2026-08-25 09:48:28,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:28,480.480 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:48:28,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:48:28,528.528 INFO    ] No camera update needed
[2026-08-25 09:48:28,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:48:28,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:48:28,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:48:28,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:48:30,587.587 INFO    ] ================================================
[2026-08-25 09:48:30,603.603 INFO    ] Launching Daemon at Tue Aug 25 09:48:30 IST 2026
[2026-08-25 09:48:30,613.613 INFO    ] ================================================
[2026-08-25 09:48:31,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:48:31
[2026-08-25 09:48:31,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:48:32,260.260 INFO    ] Initializing speech engine...
[2026-08-25 09:48:32,268.268 INFO    ] 2026-08-25 09:48:32
[2026-08-25 09:48:32,541.541 INFO    ] 2026-08-25 09:48:32
[2026-08-25 09:48:32,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:48:32,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:48:32,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:48:32,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:48:33,024.024 INFO    ] time= 25/08/2026 09:48:32
[2026-08-25 09:48:33,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:48:33,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:48:33,266.266 INFO    ] No existing commands found in stream
[2026-08-25 09:48:38,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:48:38,285.285 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 09:48:41,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:48:41,187.187 INFO    ] Checking for system updates...
[2026-08-25 09:48:41,227.227 INFO    ] 200
[2026-08-25 09:48:41,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:41,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:48:41,284.284 INFO    ] No update needed
[2026-08-25 09:48:41,286.286 INFO    ] Checking for camera pi updates...
[2026-08-25 09:48:41,324.324 INFO    ] 200
[2026-08-25 09:48:41,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:41,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:48:41,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:48:41,428.428 INFO    ] No camera update needed
[2026-08-25 09:48:41,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:48:41,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:48:41,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:48:41,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:48:43,485.485 INFO    ] ================================================
[2026-08-25 09:48:43,501.501 INFO    ] Launching Daemon at Tue Aug 25 09:48:43 IST 2026
[2026-08-25 09:48:43,512.512 INFO    ] ================================================
[2026-08-25 09:48:44,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:48:44
[2026-08-25 09:48:44,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:48:44,924.924 INFO    ] Initializing speech engine...
[2026-08-25 09:48:44,930.930 INFO    ] 2026-08-25 09:48:44
[2026-08-25 09:48:45,231.231 INFO    ] 2026-08-25 09:48:45
[2026-08-25 09:48:45,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:48:45,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:48:45,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:48:45,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:48:45,667.667 INFO    ] time= 25/08/2026 09:48:45
[2026-08-25 09:48:45,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:48:45,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:48:45,753.753 INFO    ] No existing commands found in stream
[2026-08-25 09:48:50,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:48:50,769.769 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 09:48:51,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:48:51,946.946 INFO    ] Checking for system updates...
[2026-08-25 09:48:51,985.985 INFO    ] 200
[2026-08-25 09:48:51,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:52,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:48:52,043.043 INFO    ] No update needed
[2026-08-25 09:48:52,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 09:48:52,079.079 INFO    ] 200
[2026-08-25 09:48:52,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:48:52,121.121 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:48:52,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:48:52,171.171 INFO    ] No camera update needed
[2026-08-25 09:48:52,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:48:52,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:48:52,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:48:52,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:48:54,226.226 INFO    ] ================================================
[2026-08-25 09:48:54,242.242 INFO    ] Launching Daemon at Tue Aug 25 09:48:54 IST 2026
[2026-08-25 09:48:54,253.253 INFO    ] ================================================
[2026-08-25 09:48:54,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:48:54
[2026-08-25 09:48:55,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:48:55,662.662 INFO    ] Initializing speech engine...
[2026-08-25 09:48:55,685.685 INFO    ] 2026-08-25 09:48:55
[2026-08-25 09:48:55,941.941 INFO    ] 2026-08-25 09:48:55
[2026-08-25 09:48:55,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:48:56,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:48:56,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:48:56,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:48:56,319.319 INFO    ] time= 25/08/2026 09:48:56
[2026-08-25 09:48:56,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:48:56,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:48:56,512.512 INFO    ] No existing commands found in stream
[2026-08-25 09:49:01,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:49:01,535.535 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 09:49:02,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:49:02,901.901 INFO    ] Checking for system updates...
[2026-08-25 09:49:02,943.943 INFO    ] 200
[2026-08-25 09:49:02,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:03,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:03,031.031 INFO    ] No update needed
[2026-08-25 09:49:03,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 09:49:03,088.088 INFO    ] 200
[2026-08-25 09:49:03,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:03,139.139 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:49:03,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:03,197.197 INFO    ] No camera update needed
[2026-08-25 09:49:03,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:49:03,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:49:03,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:49:03,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:49:05,263.263 INFO    ] ================================================
[2026-08-25 09:49:05,279.279 INFO    ] Launching Daemon at Tue Aug 25 09:49:05 IST 2026
[2026-08-25 09:49:05,290.290 INFO    ] ================================================
[2026-08-25 09:49:05,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:49:05
[2026-08-25 09:49:06,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:49:06,954.954 INFO    ] Initializing speech engine...
[2026-08-25 09:49:06,962.962 INFO    ] 2026-08-25 09:49:06
[2026-08-25 09:49:07,234.234 INFO    ] 2026-08-25 09:49:07
[2026-08-25 09:49:07,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:49:07,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:49:07,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:49:07,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:49:07,702.702 INFO    ] time= 25/08/2026 09:49:07
[2026-08-25 09:49:07,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:49:07,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:49:07,902.902 INFO    ] No existing commands found in stream
[2026-08-25 09:49:12,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:49:12,932.932 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 09:49:17,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:49:17,069.069 INFO    ] Checking for system updates...
[2026-08-25 09:49:17,106.106 INFO    ] 200
[2026-08-25 09:49:17,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:17,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:17,173.173 INFO    ] No update needed
[2026-08-25 09:49:17,176.176 INFO    ] Checking for camera pi updates...
[2026-08-25 09:49:17,211.211 INFO    ] 200
[2026-08-25 09:49:17,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:17,262.262 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:49:17,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:17,320.320 INFO    ] No camera update needed
[2026-08-25 09:49:17,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:49:17,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:49:17,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:49:17,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:49:19,380.380 INFO    ] ================================================
[2026-08-25 09:49:19,397.397 INFO    ] Launching Daemon at Tue Aug 25 09:49:19 IST 2026
[2026-08-25 09:49:19,408.408 INFO    ] ================================================
[2026-08-25 09:49:19,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:49:19
[2026-08-25 09:49:20,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:49:20,891.891 INFO    ] Initializing speech engine...
[2026-08-25 09:49:20,900.900 INFO    ] 2026-08-25 09:49:20
[2026-08-25 09:49:21,172.172 INFO    ] 2026-08-25 09:49:21
[2026-08-25 09:49:21,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:49:21,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:49:21,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:49:21,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:49:21,662.662 INFO    ] time= 25/08/2026 09:49:21
[2026-08-25 09:49:21,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:49:21,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:49:21,895.895 INFO    ] No existing commands found in stream
[2026-08-25 09:49:26,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:49:26,915.915 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 09:49:30,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:49:30,461.461 INFO    ] Checking for system updates...
[2026-08-25 09:49:30,507.507 INFO    ] 200
[2026-08-25 09:49:30,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:30,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:49:30,578.578 INFO    ] No update needed
[2026-08-25 09:49:30,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 09:49:30,619.619 INFO    ] 200
[2026-08-25 09:49:30,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:30,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:49:30,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:49:30,737.737 INFO    ] No camera update needed
[2026-08-25 09:49:30,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:49:30,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:49:30,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:49:30,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:49:32,797.797 INFO    ] ================================================
[2026-08-25 09:49:32,815.815 INFO    ] Launching Daemon at Tue Aug 25 09:49:32 IST 2026
[2026-08-25 09:49:32,827.827 INFO    ] ================================================
[2026-08-25 09:49:33,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:49:33
[2026-08-25 09:49:34,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:49:34,437.437 INFO    ] Initializing speech engine...
[2026-08-25 09:49:34,444.444 INFO    ] 2026-08-25 09:49:34
[2026-08-25 09:49:34,756.756 INFO    ] 2026-08-25 09:49:34
[2026-08-25 09:49:34,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:49:35,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:49:35,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:49:35,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:49:35,263.263 INFO    ] time= 25/08/2026 09:49:35
[2026-08-25 09:49:35,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:49:35,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:49:35,420.420 INFO    ] No existing commands found in stream
[2026-08-25 09:49:40,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:49:40,442.442 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 09:49:44,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:49:44,401.401 INFO    ] Checking for system updates...
[2026-08-25 09:49:44,438.438 INFO    ] 200
[2026-08-25 09:49:44,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:44,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:44,503.503 INFO    ] No update needed
[2026-08-25 09:49:44,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 09:49:44,543.543 INFO    ] 200
[2026-08-25 09:49:44,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:44,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:49:44,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:44,637.637 INFO    ] No camera update needed
[2026-08-25 09:49:44,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:49:44,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:49:44,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:49:44,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:49:46,696.696 INFO    ] ================================================
[2026-08-25 09:49:46,711.711 INFO    ] Launching Daemon at Tue Aug 25 09:49:46 IST 2026
[2026-08-25 09:49:46,722.722 INFO    ] ================================================
[2026-08-25 09:49:47,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:49:47
[2026-08-25 09:49:47,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:49:48,143.143 INFO    ] Initializing speech engine...
[2026-08-25 09:49:48,154.154 INFO    ] 2026-08-25 09:49:48
[2026-08-25 09:49:48,410.410 INFO    ] 2026-08-25 09:49:48
[2026-08-25 09:49:48,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:49:48,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:49:48,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:49:48,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:49:48,876.876 INFO    ] time= 25/08/2026 09:49:48
[2026-08-25 09:49:48,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:49:48,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:49:49,072.072 INFO    ] No existing commands found in stream
[2026-08-25 09:49:54,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:49:54,097.097 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 09:49:55,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:49:55,095.095 INFO    ] Checking for system updates...
[2026-08-25 09:49:55,135.135 INFO    ] 200
[2026-08-25 09:49:55,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:55,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:55,193.193 INFO    ] No update needed
[2026-08-25 09:49:55,196.196 INFO    ] Checking for camera pi updates...
[2026-08-25 09:49:55,230.230 INFO    ] 200
[2026-08-25 09:49:55,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:49:55,274.274 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:49:55,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:49:55,425.425 INFO    ] No camera update needed
[2026-08-25 09:49:55,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:49:55,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:49:55,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:49:55,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:49:57,483.483 INFO    ] ================================================
[2026-08-25 09:49:57,499.499 INFO    ] Launching Daemon at Tue Aug 25 09:49:57 IST 2026
[2026-08-25 09:49:57,510.510 INFO    ] ================================================
[2026-08-25 09:49:58,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:49:58
[2026-08-25 09:49:58,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:49:58,925.925 INFO    ] Initializing speech engine...
[2026-08-25 09:49:58,934.934 INFO    ] 2026-08-25 09:49:58
[2026-08-25 09:49:59,188.188 INFO    ] 2026-08-25 09:49:59
[2026-08-25 09:49:59,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:49:59,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:49:59,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:49:59,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:49:59,632.632 INFO    ] time= 25/08/2026 09:49:59
[2026-08-25 09:49:59,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:49:59,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:49:59,816.816 INFO    ] No existing commands found in stream
[2026-08-25 09:50:04,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:50:04,830.830 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 09:50:08,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:50:08,597.597 INFO    ] Checking for system updates...
[2026-08-25 09:50:08,632.632 INFO    ] 200
[2026-08-25 09:50:08,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:08,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:08,695.695 INFO    ] No update needed
[2026-08-25 09:50:08,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 09:50:08,731.731 INFO    ] 200
[2026-08-25 09:50:08,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:08,774.774 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:50:08,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:08,831.831 INFO    ] No camera update needed
[2026-08-25 09:50:08,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:50:08,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:50:08,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:50:08,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:50:10,887.887 INFO    ] ================================================
[2026-08-25 09:50:10,903.903 INFO    ] Launching Daemon at Tue Aug 25 09:50:10 IST 2026
[2026-08-25 09:50:10,916.916 INFO    ] ================================================
[2026-08-25 09:50:11,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:50:11
[2026-08-25 09:50:12,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:50:12,537.537 INFO    ] Initializing speech engine...
[2026-08-25 09:50:12,545.545 INFO    ] 2026-08-25 09:50:12
[2026-08-25 09:50:12,829.829 INFO    ] 2026-08-25 09:50:12
[2026-08-25 09:50:12,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:50:13,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:50:13,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:50:13,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:50:13,363.363 INFO    ] time= 25/08/2026 09:50:13
[2026-08-25 09:50:13,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:50:13,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:50:13,517.517 INFO    ] No existing commands found in stream
[2026-08-25 09:50:18,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:50:18,531.531 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 09:50:21,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:50:21,031.031 INFO    ] Checking for system updates...
[2026-08-25 09:50:21,068.068 INFO    ] 200
[2026-08-25 09:50:21,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:21,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:21,127.127 INFO    ] No update needed
[2026-08-25 09:50:21,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 09:50:21,164.164 INFO    ] 200
[2026-08-25 09:50:21,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:21,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:50:21,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:21,267.267 INFO    ] No camera update needed
[2026-08-25 09:50:21,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:50:21,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:50:21,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:50:21,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:50:23,324.324 INFO    ] ================================================
[2026-08-25 09:50:23,339.339 INFO    ] Launching Daemon at Tue Aug 25 09:50:23 IST 2026
[2026-08-25 09:50:23,350.350 INFO    ] ================================================
[2026-08-25 09:50:23,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:50:23
[2026-08-25 09:50:24,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:50:24,753.753 INFO    ] Initializing speech engine...
[2026-08-25 09:50:24,759.759 INFO    ] 2026-08-25 09:50:24
[2026-08-25 09:50:25,052.052 INFO    ] 2026-08-25 09:50:25
[2026-08-25 09:50:25,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:50:25,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:50:25,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:50:25,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:50:25,428.428 INFO    ] time= 25/08/2026 09:50:25
[2026-08-25 09:50:25,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:50:25,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:50:25,551.551 INFO    ] No existing commands found in stream
[2026-08-25 09:50:30,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:50:30,567.567 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 09:50:33,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:50:33,515.515 INFO    ] Checking for system updates...
[2026-08-25 09:50:33,550.550 INFO    ] 200
[2026-08-25 09:50:33,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:33,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:33,607.607 INFO    ] No update needed
[2026-08-25 09:50:33,609.609 INFO    ] Checking for camera pi updates...
[2026-08-25 09:50:33,642.642 INFO    ] 200
[2026-08-25 09:50:33,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:33,686.686 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:50:33,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:33,737.737 INFO    ] No camera update needed
[2026-08-25 09:50:33,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:50:33,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:50:33,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:50:33,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:50:35,791.791 INFO    ] ================================================
[2026-08-25 09:50:35,807.807 INFO    ] Launching Daemon at Tue Aug 25 09:50:35 IST 2026
[2026-08-25 09:50:35,818.818 INFO    ] ================================================
[2026-08-25 09:50:36,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:50:36
[2026-08-25 09:50:36,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:50:37,240.240 INFO    ] Initializing speech engine...
[2026-08-25 09:50:37,252.252 INFO    ] 2026-08-25 09:50:37
[2026-08-25 09:50:37,502.502 INFO    ] 2026-08-25 09:50:37
[2026-08-25 09:50:37,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:50:37,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:50:37,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:50:37,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:50:37,975.975 INFO    ] time= 25/08/2026 09:50:37
[2026-08-25 09:50:38,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:50:38,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:50:38,193.193 INFO    ] No existing commands found in stream
[2026-08-25 09:50:43,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:50:43,223.223 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 09:50:44,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:50:44,923.923 INFO    ] Checking for system updates...
[2026-08-25 09:50:44,958.958 INFO    ] 200
[2026-08-25 09:50:44,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:45,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:50:45,024.024 INFO    ] No update needed
[2026-08-25 09:50:45,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 09:50:45,064.064 INFO    ] 200
[2026-08-25 09:50:45,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:45,107.107 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:50:45,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:50:45,152.152 INFO    ] No camera update needed
[2026-08-25 09:50:45,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:50:45,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:50:45,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:50:45,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:50:47,207.207 INFO    ] ================================================
[2026-08-25 09:50:47,222.222 INFO    ] Launching Daemon at Tue Aug 25 09:50:47 IST 2026
[2026-08-25 09:50:47,234.234 INFO    ] ================================================
[2026-08-25 09:50:47,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:50:47
[2026-08-25 09:50:48,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:50:48,711.711 INFO    ] Initializing speech engine...
[2026-08-25 09:50:48,721.721 INFO    ] 2026-08-25 09:50:48
[2026-08-25 09:50:48,993.993 INFO    ] 2026-08-25 09:50:48
[2026-08-25 09:50:49,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:50:49,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:50:49,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:50:49,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:50:49,461.461 INFO    ] time= 25/08/2026 09:50:49
[2026-08-25 09:50:49,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:50:49,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:50:49,661.661 INFO    ] No existing commands found in stream
[2026-08-25 09:50:54,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:50:54,690.690 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 09:50:58,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:50:58,024.024 INFO    ] Checking for system updates...
[2026-08-25 09:50:58,061.061 INFO    ] 200
[2026-08-25 09:50:58,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:58,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:58,119.119 INFO    ] No update needed
[2026-08-25 09:50:58,121.121 INFO    ] Checking for camera pi updates...
[2026-08-25 09:50:58,155.155 INFO    ] 200
[2026-08-25 09:50:58,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:50:58,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:50:58,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:50:58,254.254 INFO    ] No camera update needed
[2026-08-25 09:50:58,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:50:58,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:50:58,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:50:58,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:51:00,309.309 INFO    ] ================================================
[2026-08-25 09:51:00,324.324 INFO    ] Launching Daemon at Tue Aug 25 09:51:00 IST 2026
[2026-08-25 09:51:00,335.335 INFO    ] ================================================
[2026-08-25 09:51:00,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:51:00
[2026-08-25 09:51:01,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:51:02,077.077 INFO    ] Initializing speech engine...
[2026-08-25 09:51:02,086.086 INFO    ] 2026-08-25 09:51:02
[2026-08-25 09:51:02,490.490 INFO    ] 2026-08-25 09:51:02
[2026-08-25 09:51:02,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:51:02,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:51:02,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:51:02,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:51:02,943.943 INFO    ] time= 25/08/2026 09:51:02
[2026-08-25 09:51:02,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:51:02,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:51:03,114.114 INFO    ] No existing commands found in stream
[2026-08-25 09:51:08,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:51:08,141.141 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 09:51:09,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:51:09,395.395 INFO    ] Checking for system updates...
[2026-08-25 09:51:09,430.430 INFO    ] 200
[2026-08-25 09:51:09,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:09,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:51:09,493.493 INFO    ] No update needed
[2026-08-25 09:51:09,496.496 INFO    ] Checking for camera pi updates...
[2026-08-25 09:51:09,528.528 INFO    ] 200
[2026-08-25 09:51:09,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:09,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:51:09,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:51:09,626.626 INFO    ] No camera update needed
[2026-08-25 09:51:09,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:51:09,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:51:09,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:51:09,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:51:11,684.684 INFO    ] ================================================
[2026-08-25 09:51:11,699.699 INFO    ] Launching Daemon at Tue Aug 25 09:51:11 IST 2026
[2026-08-25 09:51:11,710.710 INFO    ] ================================================
[2026-08-25 09:51:12,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:51:12
[2026-08-25 09:51:12,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:51:13,116.116 INFO    ] Initializing speech engine...
[2026-08-25 09:51:13,125.125 INFO    ] 2026-08-25 09:51:13
[2026-08-25 09:51:13,416.416 INFO    ] 2026-08-25 09:51:13
[2026-08-25 09:51:13,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:51:13,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:51:13,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:51:13,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:51:13,803.803 INFO    ] time= 25/08/2026 09:51:13
[2026-08-25 09:51:13,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:51:13,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:51:13,911.911 INFO    ] No existing commands found in stream
[2026-08-25 09:51:18,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:51:18,949.949 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 09:51:20,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:51:20,303.303 INFO    ] Checking for system updates...
[2026-08-25 09:51:20,339.339 INFO    ] 200
[2026-08-25 09:51:20,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:20,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:51:20,409.409 INFO    ] No update needed
[2026-08-25 09:51:20,411.411 INFO    ] Checking for camera pi updates...
[2026-08-25 09:51:20,445.445 INFO    ] 200
[2026-08-25 09:51:20,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:20,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:51:20,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:51:20,562.562 INFO    ] No camera update needed
[2026-08-25 09:51:20,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:51:20,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:51:20,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:51:20,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:51:22,618.618 INFO    ] ================================================
[2026-08-25 09:51:22,633.633 INFO    ] Launching Daemon at Tue Aug 25 09:51:22 IST 2026
[2026-08-25 09:51:22,645.645 INFO    ] ================================================
[2026-08-25 09:51:23,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:51:23
[2026-08-25 09:51:23,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:51:24,052.052 INFO    ] Initializing speech engine...
[2026-08-25 09:51:24,068.068 INFO    ] 2026-08-25 09:51:24
[2026-08-25 09:51:24,347.347 INFO    ] 2026-08-25 09:51:24
[2026-08-25 09:51:24,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:51:24,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:51:24,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:51:24,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:51:24,737.737 INFO    ] time= 25/08/2026 09:51:24
[2026-08-25 09:51:24,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:51:24,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:51:24,842.842 INFO    ] No existing commands found in stream
[2026-08-25 09:51:29,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:51:29,858.858 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 09:51:32,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:51:32,293.293 INFO    ] Checking for system updates...
[2026-08-25 09:51:32,336.336 INFO    ] 200
[2026-08-25 09:51:32,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:32,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:51:32,398.398 INFO    ] No update needed
[2026-08-25 09:51:32,400.400 INFO    ] Checking for camera pi updates...
[2026-08-25 09:51:32,435.435 INFO    ] 200
[2026-08-25 09:51:32,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:32,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:51:32,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:51:32,537.537 INFO    ] No camera update needed
[2026-08-25 09:51:32,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:51:32,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:51:32,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:51:32,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:51:34,597.597 INFO    ] ================================================
[2026-08-25 09:51:34,613.613 INFO    ] Launching Daemon at Tue Aug 25 09:51:34 IST 2026
[2026-08-25 09:51:34,624.624 INFO    ] ================================================
[2026-08-25 09:51:35,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:51:35
[2026-08-25 09:51:35,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:51:36,162.162 INFO    ] Initializing speech engine...
[2026-08-25 09:51:36,175.175 INFO    ] 2026-08-25 09:51:36
[2026-08-25 09:51:36,486.486 INFO    ] 2026-08-25 09:51:36
[2026-08-25 09:51:36,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:51:36,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:51:36,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:51:36,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:51:36,936.936 INFO    ] time= 25/08/2026 09:51:36
[2026-08-25 09:51:36,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:51:37,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:51:37,148.148 INFO    ] No existing commands found in stream
[2026-08-25 09:51:42,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:51:42,171.171 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 09:51:45,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:51:45,101.101 INFO    ] Checking for system updates...
[2026-08-25 09:51:45,141.141 INFO    ] 200
[2026-08-25 09:51:45,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:45,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:51:45,202.202 INFO    ] No update needed
[2026-08-25 09:51:45,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 09:51:45,238.238 INFO    ] 200
[2026-08-25 09:51:45,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:45,281.281 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:51:45,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:51:45,332.332 INFO    ] No camera update needed
[2026-08-25 09:51:45,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:51:45,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:51:45,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:51:45,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:51:47,387.387 INFO    ] ================================================
[2026-08-25 09:51:47,402.402 INFO    ] Launching Daemon at Tue Aug 25 09:51:47 IST 2026
[2026-08-25 09:51:47,413.413 INFO    ] ================================================
[2026-08-25 09:51:47,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:51:47
[2026-08-25 09:51:48,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:51:48,862.862 INFO    ] Initializing speech engine...
[2026-08-25 09:51:48,875.875 INFO    ] 2026-08-25 09:51:48
[2026-08-25 09:51:49,123.123 INFO    ] 2026-08-25 09:51:49
[2026-08-25 09:51:49,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:51:49,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:51:49,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:51:49,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:51:49,603.603 INFO    ] time= 25/08/2026 09:51:49
[2026-08-25 09:51:49,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:51:49,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:51:49,833.833 INFO    ] No existing commands found in stream
[2026-08-25 09:51:54,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:51:54,858.858 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 09:51:58,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:51:58,765.765 INFO    ] Checking for system updates...
[2026-08-25 09:51:58,805.805 INFO    ] 200
[2026-08-25 09:51:58,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:58,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:51:58,862.862 INFO    ] No update needed
[2026-08-25 09:51:58,864.864 INFO    ] Checking for camera pi updates...
[2026-08-25 09:51:58,897.897 INFO    ] 200
[2026-08-25 09:51:58,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:51:58,939.939 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:51:59,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:51:59,084.084 INFO    ] No camera update needed
[2026-08-25 09:51:59,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:51:59,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:51:59,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:51:59,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:52:01,142.142 INFO    ] ================================================
[2026-08-25 09:52:01,158.158 INFO    ] Launching Daemon at Tue Aug 25 09:52:01 IST 2026
[2026-08-25 09:52:01,169.169 INFO    ] ================================================
[2026-08-25 09:52:01,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:52:01
[2026-08-25 09:52:02,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:52:02,974.974 INFO    ] Initializing speech engine...
[2026-08-25 09:52:02,988.988 INFO    ] 2026-08-25 09:52:02
[2026-08-25 09:52:03,313.313 INFO    ] 2026-08-25 09:52:03
[2026-08-25 09:52:03,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:52:03,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:52:03,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:52:03,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:52:03,800.800 INFO    ] time= 25/08/2026 09:52:03
[2026-08-25 09:52:03,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:52:03,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:52:03,986.986 INFO    ] No existing commands found in stream
[2026-08-25 09:52:09,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:52:09,017.017 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 09:52:09,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:52:09,967.967 INFO    ] Checking for system updates...
[2026-08-25 09:52:10,002.002 INFO    ] 200
[2026-08-25 09:52:10,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:10,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:10,066.066 INFO    ] No update needed
[2026-08-25 09:52:10,068.068 INFO    ] Checking for camera pi updates...
[2026-08-25 09:52:10,101.101 INFO    ] 200
[2026-08-25 09:52:10,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:10,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:52:10,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:10,212.212 INFO    ] No camera update needed
[2026-08-25 09:52:10,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:52:10,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:52:10,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:52:10,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:52:12,266.266 INFO    ] ================================================
[2026-08-25 09:52:12,282.282 INFO    ] Launching Daemon at Tue Aug 25 09:52:12 IST 2026
[2026-08-25 09:52:12,293.293 INFO    ] ================================================
[2026-08-25 09:52:12,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:52:12
[2026-08-25 09:52:13,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:52:13,750.750 INFO    ] Initializing speech engine...
[2026-08-25 09:52:13,757.757 INFO    ] 2026-08-25 09:52:13
[2026-08-25 09:52:14,017.017 INFO    ] 2026-08-25 09:52:14
[2026-08-25 09:52:14,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:52:14,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:52:14,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:52:14,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:52:14,484.484 INFO    ] time= 25/08/2026 09:52:14
[2026-08-25 09:52:14,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:52:14,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:52:14,709.709 INFO    ] No existing commands found in stream
[2026-08-25 09:52:19,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:52:19,726.726 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 09:52:21,235.235 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:52:21,238.238 INFO    ] Checking for system updates...
[2026-08-25 09:52:21,278.278 INFO    ] 200
[2026-08-25 09:52:21,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:21,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:21,336.336 INFO    ] No update needed
[2026-08-25 09:52:21,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 09:52:21,371.371 INFO    ] 200
[2026-08-25 09:52:21,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:21,418.418 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:52:21,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:21,477.477 INFO    ] No camera update needed
[2026-08-25 09:52:21,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:52:21,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:52:21,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:52:21,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:52:23,532.532 INFO    ] ================================================
[2026-08-25 09:52:23,548.548 INFO    ] Launching Daemon at Tue Aug 25 09:52:23 IST 2026
[2026-08-25 09:52:23,559.559 INFO    ] ================================================
[2026-08-25 09:52:24,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:52:24
[2026-08-25 09:52:24,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:52:24,975.975 INFO    ] Initializing speech engine...
[2026-08-25 09:52:24,982.982 INFO    ] 2026-08-25 09:52:24
[2026-08-25 09:52:25,271.271 INFO    ] 2026-08-25 09:52:25
[2026-08-25 09:52:25,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:52:25,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:52:25,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:52:25,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:52:25,659.659 INFO    ] time= 25/08/2026 09:52:25
[2026-08-25 09:52:25,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:52:25,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:52:25,767.767 INFO    ] No existing commands found in stream
[2026-08-25 09:52:30,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:52:30,785.785 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 09:52:33,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:52:33,172.172 INFO    ] Checking for system updates...
[2026-08-25 09:52:33,207.207 INFO    ] 200
[2026-08-25 09:52:33,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:33,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:33,263.263 INFO    ] No update needed
[2026-08-25 09:52:33,266.266 INFO    ] Checking for camera pi updates...
[2026-08-25 09:52:33,299.299 INFO    ] 200
[2026-08-25 09:52:33,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:33,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:52:33,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:33,878.878 INFO    ] No camera update needed
[2026-08-25 09:52:33,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:52:33,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:52:33,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:52:33,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:52:35,934.934 INFO    ] ================================================
[2026-08-25 09:52:35,950.950 INFO    ] Launching Daemon at Tue Aug 25 09:52:35 IST 2026
[2026-08-25 09:52:35,961.961 INFO    ] ================================================
[2026-08-25 09:52:36,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:52:36
[2026-08-25 09:52:37,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:52:37,393.393 INFO    ] Initializing speech engine...
[2026-08-25 09:52:37,415.415 INFO    ] 2026-08-25 09:52:37
[2026-08-25 09:52:37,670.670 INFO    ] 2026-08-25 09:52:37
[2026-08-25 09:52:37,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:52:37,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:52:37,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:52:38,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:52:38,046.046 INFO    ] time= 25/08/2026 09:52:38
[2026-08-25 09:52:38,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:52:38,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:52:38,233.233 INFO    ] No existing commands found in stream
[2026-08-25 09:52:43,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:52:43,259.259 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 09:52:47,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:52:47,539.539 INFO    ] Checking for system updates...
[2026-08-25 09:52:47,574.574 INFO    ] 200
[2026-08-25 09:52:47,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:47,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:47,635.635 INFO    ] No update needed
[2026-08-25 09:52:47,637.637 INFO    ] Checking for camera pi updates...
[2026-08-25 09:52:47,671.671 INFO    ] 200
[2026-08-25 09:52:47,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:52:47,717.717 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:52:47,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:52:47,768.768 INFO    ] No camera update needed
[2026-08-25 09:52:47,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:52:47,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:52:47,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:52:47,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:52:49,824.824 INFO    ] ================================================
[2026-08-25 09:52:49,839.839 INFO    ] Launching Daemon at Tue Aug 25 09:52:49 IST 2026
[2026-08-25 09:52:49,850.850 INFO    ] ================================================
[2026-08-25 09:52:50,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:52:50
[2026-08-25 09:52:51,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:52:51,309.309 INFO    ] Initializing speech engine...
[2026-08-25 09:52:51,316.316 INFO    ] 2026-08-25 09:52:51
[2026-08-25 09:52:51,562.562 INFO    ] 2026-08-25 09:52:51
[2026-08-25 09:52:51,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:52:51,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:52:51,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:52:51,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:52:52,041.041 INFO    ] time= 25/08/2026 09:52:51
[2026-08-25 09:52:52,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:52:52,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:52:52,238.238 INFO    ] No existing commands found in stream
[2026-08-25 09:52:57,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:52:57,263.263 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 09:53:01,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:53:01,080.080 INFO    ] Checking for system updates...
[2026-08-25 09:53:01,115.115 INFO    ] 200
[2026-08-25 09:53:01,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:01,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:53:01,172.172 INFO    ] No update needed
[2026-08-25 09:53:01,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 09:53:01,210.210 INFO    ] 200
[2026-08-25 09:53:01,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:01,257.257 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:53:01,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:53:01,345.345 INFO    ] No camera update needed
[2026-08-25 09:53:01,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:53:01,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:53:01,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:53:01,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:53:03,403.403 INFO    ] ================================================
[2026-08-25 09:53:03,418.418 INFO    ] Launching Daemon at Tue Aug 25 09:53:03 IST 2026
[2026-08-25 09:53:03,428.428 INFO    ] ================================================
[2026-08-25 09:53:04,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:53:04
[2026-08-25 09:53:04,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:53:05,011.011 INFO    ] Initializing speech engine...
[2026-08-25 09:53:05,023.023 INFO    ] 2026-08-25 09:53:05
[2026-08-25 09:53:05,293.293 INFO    ] 2026-08-25 09:53:05
[2026-08-25 09:53:05,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:53:05,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:53:05,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:53:05,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:53:05,818.818 INFO    ] time= 25/08/2026 09:53:05
[2026-08-25 09:53:05,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:53:05,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:53:06,009.009 INFO    ] No existing commands found in stream
[2026-08-25 09:53:11,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:53:11,032.032 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 09:53:13,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:53:13,580.580 INFO    ] Checking for system updates...
[2026-08-25 09:53:13,618.618 INFO    ] 200
[2026-08-25 09:53:13,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:13,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:53:13,676.676 INFO    ] No update needed
[2026-08-25 09:53:13,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 09:53:13,712.712 INFO    ] 200
[2026-08-25 09:53:13,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:13,758.758 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:53:13,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:53:13,817.817 INFO    ] No camera update needed
[2026-08-25 09:53:13,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:53:13,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:53:13,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:53:13,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:53:15,871.871 INFO    ] ================================================
[2026-08-25 09:53:15,886.886 INFO    ] Launching Daemon at Tue Aug 25 09:53:15 IST 2026
[2026-08-25 09:53:15,896.896 INFO    ] ================================================
[2026-08-25 09:53:16,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:53:16
[2026-08-25 09:53:17,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:53:17,293.293 INFO    ] Initializing speech engine...
[2026-08-25 09:53:17,301.301 INFO    ] 2026-08-25 09:53:17
[2026-08-25 09:53:17,587.587 INFO    ] 2026-08-25 09:53:17
[2026-08-25 09:53:17,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:53:17,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:53:17,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:53:17,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:53:17,991.991 INFO    ] time= 25/08/2026 09:53:17
[2026-08-25 09:53:17,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:53:18,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:53:18,164.164 INFO    ] No existing commands found in stream
[2026-08-25 09:53:23,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:53:23,197.197 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 09:53:26,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:53:26,220.220 INFO    ] Checking for system updates...
[2026-08-25 09:53:26,256.256 INFO    ] 200
[2026-08-25 09:53:26,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:26,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:53:26,312.312 INFO    ] No update needed
[2026-08-25 09:53:26,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 09:53:26,349.349 INFO    ] 200
[2026-08-25 09:53:26,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:26,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:53:26,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:53:26,445.445 INFO    ] No camera update needed
[2026-08-25 09:53:26,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:53:26,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:53:26,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:53:26,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:53:28,499.499 INFO    ] ================================================
[2026-08-25 09:53:28,513.513 INFO    ] Launching Daemon at Tue Aug 25 09:53:28 IST 2026
[2026-08-25 09:53:28,524.524 INFO    ] ================================================
[2026-08-25 09:53:29,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:53:29
[2026-08-25 09:53:29,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:53:29,937.937 INFO    ] Initializing speech engine...
[2026-08-25 09:53:29,946.946 INFO    ] 2026-08-25 09:53:29
[2026-08-25 09:53:30,197.197 INFO    ] 2026-08-25 09:53:30
[2026-08-25 09:53:30,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:53:30,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:53:30,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:53:30,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:53:30,669.669 INFO    ] time= 25/08/2026 09:53:30
[2026-08-25 09:53:30,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:53:30,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:53:30,847.847 INFO    ] No existing commands found in stream
[2026-08-25 09:53:35,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:53:35,880.880 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 09:53:38,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:53:38,141.141 INFO    ] Checking for system updates...
[2026-08-25 09:53:38,176.176 INFO    ] 200
[2026-08-25 09:53:38,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:38,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:53:38,238.238 INFO    ] No update needed
[2026-08-25 09:53:38,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 09:53:38,277.277 INFO    ] 200
[2026-08-25 09:53:38,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:38,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:53:38,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:53:38,367.367 INFO    ] No camera update needed
[2026-08-25 09:53:38,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:53:38,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:53:38,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:53:38,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:53:40,422.422 INFO    ] ================================================
[2026-08-25 09:53:40,437.437 INFO    ] Launching Daemon at Tue Aug 25 09:53:40 IST 2026
[2026-08-25 09:53:40,448.448 INFO    ] ================================================
[2026-08-25 09:53:41,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:53:41
[2026-08-25 09:53:41,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:53:41,896.896 INFO    ] Initializing speech engine...
[2026-08-25 09:53:41,917.917 INFO    ] 2026-08-25 09:53:41
[2026-08-25 09:53:42,191.191 INFO    ] 2026-08-25 09:53:42
[2026-08-25 09:53:42,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:53:42,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:53:42,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:53:42,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:53:42,565.565 INFO    ] time= 25/08/2026 09:53:42
[2026-08-25 09:53:42,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:53:42,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:53:42,692.692 INFO    ] No existing commands found in stream
[2026-08-25 09:53:47,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:53:47,721.721 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 09:53:49,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:53:49,479.479 INFO    ] Checking for system updates...
[2026-08-25 09:53:49,518.518 INFO    ] 200
[2026-08-25 09:53:49,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:49,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:53:49,586.586 INFO    ] No update needed
[2026-08-25 09:53:49,589.589 INFO    ] Checking for camera pi updates...
[2026-08-25 09:53:49,626.626 INFO    ] 200
[2026-08-25 09:53:49,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:53:49,678.678 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:53:49,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:53:49,741.741 INFO    ] No camera update needed
[2026-08-25 09:53:49,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:53:49,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:53:49,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:53:49,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:53:51,804.804 INFO    ] ================================================
[2026-08-25 09:53:51,820.820 INFO    ] Launching Daemon at Tue Aug 25 09:53:51 IST 2026
[2026-08-25 09:53:51,831.831 INFO    ] ================================================
[2026-08-25 09:53:52,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:53:52
[2026-08-25 09:53:52,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:53:53,231.231 INFO    ] Initializing speech engine...
[2026-08-25 09:53:53,247.247 INFO    ] 2026-08-25 09:53:53
[2026-08-25 09:53:53,526.526 INFO    ] 2026-08-25 09:53:53
[2026-08-25 09:53:53,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:53:53,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:53:53,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:53:53,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:53:53,936.936 INFO    ] time= 25/08/2026 09:53:53
[2026-08-25 09:53:53,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:53:53,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:53:54,102.102 INFO    ] No existing commands found in stream
[2026-08-25 09:53:59,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:53:59,130.130 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 09:54:02,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:54:02,007.007 INFO    ] Checking for system updates...
[2026-08-25 09:54:02,047.047 INFO    ] 200
[2026-08-25 09:54:02,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:02,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:54:02,126.126 INFO    ] No update needed
[2026-08-25 09:54:02,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 09:54:02,170.170 INFO    ] 200
[2026-08-25 09:54:02,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:02,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:54:02,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:54:02,466.466 INFO    ] No camera update needed
[2026-08-25 09:54:02,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:54:02,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:54:02,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:54:02,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:54:04,526.526 INFO    ] ================================================
[2026-08-25 09:54:04,546.546 INFO    ] Launching Daemon at Tue Aug 25 09:54:04 IST 2026
[2026-08-25 09:54:04,557.557 INFO    ] ================================================
[2026-08-25 09:54:05,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:54:05
[2026-08-25 09:54:05,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:54:06,010.010 INFO    ] Initializing speech engine...
[2026-08-25 09:54:06,024.024 INFO    ] 2026-08-25 09:54:06
[2026-08-25 09:54:06,329.329 INFO    ] 2026-08-25 09:54:06
[2026-08-25 09:54:06,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:54:06,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:54:06,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:54:06,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:54:06,709.709 INFO    ] time= 25/08/2026 09:54:06
[2026-08-25 09:54:06,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:54:06,762.762 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:54:06,892.892 INFO    ] No existing commands found in stream
[2026-08-25 09:54:11,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:54:11,920.920 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 09:54:16,137.137 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:54:16,140.140 INFO    ] Checking for system updates...
[2026-08-25 09:54:16,176.176 INFO    ] 200
[2026-08-25 09:54:16,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:16,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:54:16,233.233 INFO    ] No update needed
[2026-08-25 09:54:16,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 09:54:16,273.273 INFO    ] 200
[2026-08-25 09:54:16,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:16,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:54:16,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:54:16,372.372 INFO    ] No camera update needed
[2026-08-25 09:54:16,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:54:16,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:54:16,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:54:16,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:54:18,427.427 INFO    ] ================================================
[2026-08-25 09:54:18,443.443 INFO    ] Launching Daemon at Tue Aug 25 09:54:18 IST 2026
[2026-08-25 09:54:18,455.455 INFO    ] ================================================
[2026-08-25 09:54:19,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:54:19
[2026-08-25 09:54:19,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:54:20,103.103 INFO    ] Initializing speech engine...
[2026-08-25 09:54:20,115.115 INFO    ] 2026-08-25 09:54:20
[2026-08-25 09:54:20,398.398 INFO    ] 2026-08-25 09:54:20
[2026-08-25 09:54:20,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:54:20,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:54:20,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:54:20,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:54:20,865.865 INFO    ] time= 25/08/2026 09:54:20
[2026-08-25 09:54:20,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:54:20,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:54:21,126.126 INFO    ] No existing commands found in stream
[2026-08-25 09:54:26,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:54:26,206.206 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 09:54:27,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:54:27,694.694 INFO    ] Checking for system updates...
[2026-08-25 09:54:27,731.731 INFO    ] 200
[2026-08-25 09:54:27,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:27,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:54:27,798.798 INFO    ] No update needed
[2026-08-25 09:54:27,801.801 INFO    ] Checking for camera pi updates...
[2026-08-25 09:54:27,839.839 INFO    ] 200
[2026-08-25 09:54:27,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:27,889.889 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:54:27,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:54:27,938.938 INFO    ] No camera update needed
[2026-08-25 09:54:27,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:54:27,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:54:27,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:54:27,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:54:30,998.998 INFO    ] ================================================
[2026-08-25 09:54:30,013.013 INFO    ] Launching Daemon at Tue Aug 25 09:54:30 IST 2026
[2026-08-25 09:54:30,025.025 INFO    ] ================================================
[2026-08-25 09:54:30,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:54:30
[2026-08-25 09:54:31,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:54:31,713.713 INFO    ] Initializing speech engine...
[2026-08-25 09:54:31,726.726 INFO    ] 2026-08-25 09:54:31
[2026-08-25 09:54:32,028.028 INFO    ] 2026-08-25 09:54:32
[2026-08-25 09:54:32,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:54:32,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:54:32,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:54:32,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:54:32,606.606 INFO    ] time= 25/08/2026 09:54:32
[2026-08-25 09:54:32,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:54:32,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:54:32,763.763 INFO    ] No existing commands found in stream
[2026-08-25 09:54:37,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:54:37,791.791 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 09:54:41,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:54:41,104.104 INFO    ] Checking for system updates...
[2026-08-25 09:54:41,141.141 INFO    ] 200
[2026-08-25 09:54:41,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:41,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:54:41,208.208 INFO    ] No update needed
[2026-08-25 09:54:41,211.211 INFO    ] Checking for camera pi updates...
[2026-08-25 09:54:41,249.249 INFO    ] 200
[2026-08-25 09:54:41,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:41,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:54:41,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:54:41,368.368 INFO    ] No camera update needed
[2026-08-25 09:54:41,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:54:41,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:54:41,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:54:41,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:54:43,426.426 INFO    ] ================================================
[2026-08-25 09:54:43,441.441 INFO    ] Launching Daemon at Tue Aug 25 09:54:43 IST 2026
[2026-08-25 09:54:43,452.452 INFO    ] ================================================
[2026-08-25 09:54:44,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:54:44
[2026-08-25 09:54:44,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:54:45,005.005 INFO    ] Initializing speech engine...
[2026-08-25 09:54:45,019.019 INFO    ] 2026-08-25 09:54:45
[2026-08-25 09:54:45,311.311 INFO    ] 2026-08-25 09:54:45
[2026-08-25 09:54:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:54:45,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:54:45,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:54:45,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:54:45,854.854 INFO    ] time= 25/08/2026 09:54:45
[2026-08-25 09:54:45,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:54:45,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:54:46,035.035 INFO    ] No existing commands found in stream
[2026-08-25 09:54:51,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:54:51,074.074 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 09:54:54,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:54:54,563.563 INFO    ] Checking for system updates...
[2026-08-25 09:54:54,605.605 INFO    ] 200
[2026-08-25 09:54:54,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:54,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:54:54,671.671 INFO    ] No update needed
[2026-08-25 09:54:54,674.674 INFO    ] Checking for camera pi updates...
[2026-08-25 09:54:54,712.712 INFO    ] 200
[2026-08-25 09:54:54,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:54:54,757.757 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:54:54,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:54:54,833.833 INFO    ] No camera update needed
[2026-08-25 09:54:54,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:54:54,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:54:54,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:54:54,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:54:56,892.892 INFO    ] ================================================
[2026-08-25 09:54:56,908.908 INFO    ] Launching Daemon at Tue Aug 25 09:54:56 IST 2026
[2026-08-25 09:54:56,919.919 INFO    ] ================================================
[2026-08-25 09:54:57,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:54:57
[2026-08-25 09:54:58,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:54:58,533.533 INFO    ] Initializing speech engine...
[2026-08-25 09:54:58,544.544 INFO    ] 2026-08-25 09:54:58
[2026-08-25 09:54:58,859.859 INFO    ] 2026-08-25 09:54:58
[2026-08-25 09:54:58,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:54:59,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:54:59,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:54:59,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:54:59,375.375 INFO    ] time= 25/08/2026 09:54:59
[2026-08-25 09:54:59,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:54:59,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:54:59,531.531 INFO    ] No existing commands found in stream
[2026-08-25 09:55:04,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:55:04,555.555 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 09:55:08,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:55:08,466.466 INFO    ] Checking for system updates...
[2026-08-25 09:55:08,503.503 INFO    ] 200
[2026-08-25 09:55:08,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:08,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:55:08,563.563 INFO    ] No update needed
[2026-08-25 09:55:08,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 09:55:08,601.601 INFO    ] 200
[2026-08-25 09:55:08,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:08,644.644 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:55:08,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:55:08,700.700 INFO    ] No camera update needed
[2026-08-25 09:55:08,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:55:08,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:55:08,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:55:08,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:55:10,755.755 INFO    ] ================================================
[2026-08-25 09:55:10,770.770 INFO    ] Launching Daemon at Tue Aug 25 09:55:10 IST 2026
[2026-08-25 09:55:10,781.781 INFO    ] ================================================
[2026-08-25 09:55:11,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:55:11
[2026-08-25 09:55:11,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:55:12,206.206 INFO    ] Initializing speech engine...
[2026-08-25 09:55:12,216.216 INFO    ] 2026-08-25 09:55:12
[2026-08-25 09:55:12,465.465 INFO    ] 2026-08-25 09:55:12
[2026-08-25 09:55:12,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:55:12,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:55:12,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:55:12,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:55:12,939.939 INFO    ] time= 25/08/2026 09:55:12
[2026-08-25 09:55:13,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:55:13,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:55:13,175.175 INFO    ] No existing commands found in stream
[2026-08-25 09:55:18,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:55:18,200.200 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 09:55:21,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:55:21,231.231 INFO    ] Checking for system updates...
[2026-08-25 09:55:21,266.266 INFO    ] 200
[2026-08-25 09:55:21,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:21,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:55:21,332.332 INFO    ] No update needed
[2026-08-25 09:55:21,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 09:55:21,367.367 INFO    ] 200
[2026-08-25 09:55:21,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:21,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:55:21,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:55:21,458.458 INFO    ] No camera update needed
[2026-08-25 09:55:21,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:55:21,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:55:21,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:55:21,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:55:23,515.515 INFO    ] ================================================
[2026-08-25 09:55:23,530.530 INFO    ] Launching Daemon at Tue Aug 25 09:55:23 IST 2026
[2026-08-25 09:55:23,541.541 INFO    ] ================================================
[2026-08-25 09:55:24,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:55:24
[2026-08-25 09:55:24,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:55:24,954.954 INFO    ] Initializing speech engine...
[2026-08-25 09:55:24,973.973 INFO    ] 2026-08-25 09:55:24
[2026-08-25 09:55:25,222.222 INFO    ] 2026-08-25 09:55:25
[2026-08-25 09:55:25,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:55:25,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:55:25,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:55:25,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:55:25,698.698 INFO    ] time= 25/08/2026 09:55:25
[2026-08-25 09:55:25,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:55:25,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:55:25,918.918 INFO    ] No existing commands found in stream
[2026-08-25 09:55:30,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:55:30,946.946 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 09:55:32,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:55:32,975.975 INFO    ] Checking for system updates...
[2026-08-25 09:55:33,011.011 INFO    ] 200
[2026-08-25 09:55:33,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:33,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:55:33,069.069 INFO    ] No update needed
[2026-08-25 09:55:33,072.072 INFO    ] Checking for camera pi updates...
[2026-08-25 09:55:33,109.109 INFO    ] 200
[2026-08-25 09:55:33,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:33,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:55:33,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:55:33,219.219 INFO    ] No camera update needed
[2026-08-25 09:55:33,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:55:33,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:55:33,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:55:33,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:55:35,273.273 INFO    ] ================================================
[2026-08-25 09:55:35,288.288 INFO    ] Launching Daemon at Tue Aug 25 09:55:35 IST 2026
[2026-08-25 09:55:35,299.299 INFO    ] ================================================
[2026-08-25 09:55:35,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:55:35
[2026-08-25 09:55:36,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:55:36,964.964 INFO    ] Initializing speech engine...
[2026-08-25 09:55:36,973.973 INFO    ] 2026-08-25 09:55:36
[2026-08-25 09:55:37,265.265 INFO    ] 2026-08-25 09:55:37
[2026-08-25 09:55:37,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:55:37,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:55:37,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:55:37,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:55:37,739.739 INFO    ] time= 25/08/2026 09:55:37
[2026-08-25 09:55:37,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:55:37,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:55:37,952.952 INFO    ] No existing commands found in stream
[2026-08-25 09:55:42,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:55:42,981.981 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 09:55:46,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:55:46,252.252 INFO    ] Checking for system updates...
[2026-08-25 09:55:46,290.290 INFO    ] 200
[2026-08-25 09:55:46,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:46,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:55:46,349.349 INFO    ] No update needed
[2026-08-25 09:55:46,351.351 INFO    ] Checking for camera pi updates...
[2026-08-25 09:55:46,394.394 INFO    ] 200
[2026-08-25 09:55:46,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:55:46,444.444 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:55:46,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:55:46,501.501 INFO    ] No camera update needed
[2026-08-25 09:55:46,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:55:46,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:55:46,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:55:46,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:55:48,559.559 INFO    ] ================================================
[2026-08-25 09:55:48,574.574 INFO    ] Launching Daemon at Tue Aug 25 09:55:48 IST 2026
[2026-08-25 09:55:48,585.585 INFO    ] ================================================
[2026-08-25 09:55:49,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:55:49
[2026-08-25 09:55:49,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:55:50,140.140 INFO    ] Initializing speech engine...
[2026-08-25 09:55:50,146.146 INFO    ] 2026-08-25 09:55:50
[2026-08-25 09:55:50,390.390 INFO    ] 2026-08-25 09:55:50
[2026-08-25 09:55:50,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:55:50,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:55:50,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:55:50,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:55:50,790.790 INFO    ] time= 25/08/2026 09:55:50
[2026-08-25 09:55:50,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:55:50,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:55:50,955.955 INFO    ] No existing commands found in stream
[2026-08-25 09:55:55,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:55:55,988.988 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 09:56:00,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:56:00,273.273 INFO    ] Checking for system updates...
[2026-08-25 09:56:00,309.309 INFO    ] 200
[2026-08-25 09:56:00,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:00,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:00,366.366 INFO    ] No update needed
[2026-08-25 09:56:00,368.368 INFO    ] Checking for camera pi updates...
[2026-08-25 09:56:00,405.405 INFO    ] 200
[2026-08-25 09:56:00,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:00,453.453 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:56:01,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:01,711.711 INFO    ] No camera update needed
[2026-08-25 09:56:01,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:56:01,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:56:01,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:56:01,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:56:03,773.773 INFO    ] ================================================
[2026-08-25 09:56:03,788.788 INFO    ] Launching Daemon at Tue Aug 25 09:56:03 IST 2026
[2026-08-25 09:56:03,799.799 INFO    ] ================================================
[2026-08-25 09:56:04,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:56:04
[2026-08-25 09:56:04,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:56:05,196.196 INFO    ] Initializing speech engine...
[2026-08-25 09:56:05,204.204 INFO    ] 2026-08-25 09:56:05
[2026-08-25 09:56:05,478.478 INFO    ] 2026-08-25 09:56:05
[2026-08-25 09:56:05,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:56:05,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:56:05,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:56:05,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:56:05,855.855 INFO    ] time= 25/08/2026 09:56:05
[2026-08-25 09:56:05,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:56:05,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:56:06,035.035 INFO    ] No existing commands found in stream
[2026-08-25 09:56:11,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:56:11,063.063 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 09:56:12,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:56:12,827.827 INFO    ] Checking for system updates...
[2026-08-25 09:56:12,864.864 INFO    ] 200
[2026-08-25 09:56:12,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:12,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:12,931.931 INFO    ] No update needed
[2026-08-25 09:56:12,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 09:56:12,973.973 INFO    ] 200
[2026-08-25 09:56:12,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:13,022.022 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:56:13,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:13,188.188 INFO    ] No camera update needed
[2026-08-25 09:56:13,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:56:13,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:56:13,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:56:13,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:56:15,246.246 INFO    ] ================================================
[2026-08-25 09:56:15,261.261 INFO    ] Launching Daemon at Tue Aug 25 09:56:15 IST 2026
[2026-08-25 09:56:15,272.272 INFO    ] ================================================
[2026-08-25 09:56:15,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:56:15
[2026-08-25 09:56:16,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:56:16,732.732 INFO    ] Initializing speech engine...
[2026-08-25 09:56:16,739.739 INFO    ] 2026-08-25 09:56:16
[2026-08-25 09:56:17,015.015 INFO    ] 2026-08-25 09:56:17
[2026-08-25 09:56:17,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:56:17,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:56:17,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:56:17,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:56:17,530.530 INFO    ] time= 25/08/2026 09:56:17
[2026-08-25 09:56:17,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:56:17,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:56:17,749.749 INFO    ] No existing commands found in stream
[2026-08-25 09:56:22,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:56:22,782.782 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 09:56:27,055.055 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:56:27,058.058 INFO    ] Checking for system updates...
[2026-08-25 09:56:27,094.094 INFO    ] 200
[2026-08-25 09:56:27,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:27,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:27,161.161 INFO    ] No update needed
[2026-08-25 09:56:27,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 09:56:27,197.197 INFO    ] 200
[2026-08-25 09:56:27,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:27,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:56:27,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:27,287.287 INFO    ] No camera update needed
[2026-08-25 09:56:27,290.290 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:56:27,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:56:27,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:56:27,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:56:29,341.341 INFO    ] ================================================
[2026-08-25 09:56:29,356.356 INFO    ] Launching Daemon at Tue Aug 25 09:56:29 IST 2026
[2026-08-25 09:56:29,367.367 INFO    ] ================================================
[2026-08-25 09:56:30,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:56:30
[2026-08-25 09:56:30,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:56:30,888.888 INFO    ] Initializing speech engine...
[2026-08-25 09:56:30,902.902 INFO    ] 2026-08-25 09:56:30
[2026-08-25 09:56:31,187.187 INFO    ] 2026-08-25 09:56:31
[2026-08-25 09:56:31,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:56:31,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:56:31,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:56:31,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:56:31,671.671 INFO    ] time= 25/08/2026 09:56:31
[2026-08-25 09:56:31,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:56:31,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:56:31,890.890 INFO    ] No existing commands found in stream
[2026-08-25 09:56:36,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:56:36,905.905 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 09:56:40,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:56:40,139.139 INFO    ] Checking for system updates...
[2026-08-25 09:56:40,175.175 INFO    ] 200
[2026-08-25 09:56:40,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:40,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:40,240.240 INFO    ] No update needed
[2026-08-25 09:56:40,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 09:56:40,280.280 INFO    ] 200
[2026-08-25 09:56:40,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:40,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:56:40,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:56:40,384.384 INFO    ] No camera update needed
[2026-08-25 09:56:40,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:56:40,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:56:40,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:56:40,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:56:42,441.441 INFO    ] ================================================
[2026-08-25 09:56:42,457.457 INFO    ] Launching Daemon at Tue Aug 25 09:56:42 IST 2026
[2026-08-25 09:56:42,467.467 INFO    ] ================================================
[2026-08-25 09:56:43,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:56:43
[2026-08-25 09:56:43,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:56:43,923.923 INFO    ] Initializing speech engine...
[2026-08-25 09:56:43,932.932 INFO    ] 2026-08-25 09:56:43
[2026-08-25 09:56:44,190.190 INFO    ] 2026-08-25 09:56:44
[2026-08-25 09:56:44,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:56:44,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:56:44,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:56:44,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:56:44,668.668 INFO    ] time= 25/08/2026 09:56:44
[2026-08-25 09:56:44,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:56:44,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:56:44,866.866 INFO    ] No existing commands found in stream
[2026-08-25 09:56:49,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:56:49,894.894 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 09:56:53,902.902 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:56:53,905.905 INFO    ] Checking for system updates...
[2026-08-25 09:56:53,940.940 INFO    ] 200
[2026-08-25 09:56:53,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:53,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:56:53,997.997 INFO    ] No update needed
[2026-08-25 09:56:54,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 09:56:54,032.032 INFO    ] 200
[2026-08-25 09:56:54,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:56:54,075.075 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:56:54,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:56:54,129.129 INFO    ] No camera update needed
[2026-08-25 09:56:54,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:56:54,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:56:54,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:56:54,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:56:56,186.186 INFO    ] ================================================
[2026-08-25 09:56:56,201.201 INFO    ] Launching Daemon at Tue Aug 25 09:56:56 IST 2026
[2026-08-25 09:56:56,213.213 INFO    ] ================================================
[2026-08-25 09:56:56,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:56:56
[2026-08-25 09:56:57,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:56:57,702.702 INFO    ] Initializing speech engine...
[2026-08-25 09:56:57,725.725 INFO    ] 2026-08-25 09:56:57
[2026-08-25 09:56:57,980.980 INFO    ] 2026-08-25 09:56:57
[2026-08-25 09:56:58,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:56:58,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:56:58,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:56:58,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:56:58,354.354 INFO    ] time= 25/08/2026 09:56:58
[2026-08-25 09:56:58,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:56:58,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:56:58,511.511 INFO    ] No existing commands found in stream
[2026-08-25 09:57:03,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:57:03,544.544 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 09:57:04,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:57:04,996.996 INFO    ] Checking for system updates...
[2026-08-25 09:57:05,032.032 INFO    ] 200
[2026-08-25 09:57:05,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:05,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:57:05,091.091 INFO    ] No update needed
[2026-08-25 09:57:05,093.093 INFO    ] Checking for camera pi updates...
[2026-08-25 09:57:05,128.128 INFO    ] 200
[2026-08-25 09:57:05,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:05,176.176 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:57:05,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:57:05,230.230 INFO    ] No camera update needed
[2026-08-25 09:57:05,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:57:05,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:57:05,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:57:05,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:57:07,285.285 INFO    ] ================================================
[2026-08-25 09:57:07,301.301 INFO    ] Launching Daemon at Tue Aug 25 09:57:07 IST 2026
[2026-08-25 09:57:07,312.312 INFO    ] ================================================
[2026-08-25 09:57:07,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:57:07
[2026-08-25 09:57:08,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:57:08,765.765 INFO    ] Initializing speech engine...
[2026-08-25 09:57:08,774.774 INFO    ] 2026-08-25 09:57:08
[2026-08-25 09:57:09,029.029 INFO    ] 2026-08-25 09:57:09
[2026-08-25 09:57:09,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:57:09,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:57:09,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:57:09,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:57:09,508.508 INFO    ] time= 25/08/2026 09:57:09
[2026-08-25 09:57:09,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:57:09,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:57:09,714.714 INFO    ] No existing commands found in stream
[2026-08-25 09:57:14,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:57:14,744.744 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 09:57:18,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:57:18,903.903 INFO    ] Checking for system updates...
[2026-08-25 09:57:18,942.942 INFO    ] 200
[2026-08-25 09:57:18,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:19,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:57:19,006.006 INFO    ] No update needed
[2026-08-25 09:57:19,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 09:57:19,042.042 INFO    ] 200
[2026-08-25 09:57:19,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:19,085.085 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:57:19,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:57:19,134.134 INFO    ] No camera update needed
[2026-08-25 09:57:19,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:57:19,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:57:19,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:57:19,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:57:21,192.192 INFO    ] ================================================
[2026-08-25 09:57:21,207.207 INFO    ] Launching Daemon at Tue Aug 25 09:57:21 IST 2026
[2026-08-25 09:57:21,218.218 INFO    ] ================================================
[2026-08-25 09:57:21,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:57:21
[2026-08-25 09:57:22,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:57:22,649.649 INFO    ] Initializing speech engine...
[2026-08-25 09:57:22,659.659 INFO    ] 2026-08-25 09:57:22
[2026-08-25 09:57:22,905.905 INFO    ] 2026-08-25 09:57:22
[2026-08-25 09:57:22,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:57:23,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:57:23,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:57:23,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:57:23,398.398 INFO    ] time= 25/08/2026 09:57:23
[2026-08-25 09:57:23,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:57:23,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:57:23,607.607 INFO    ] No existing commands found in stream
[2026-08-25 09:57:28,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:57:28,625.625 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 09:57:29,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:57:29,803.803 INFO    ] Checking for system updates...
[2026-08-25 09:57:29,839.839 INFO    ] 200
[2026-08-25 09:57:29,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:29,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:57:29,900.900 INFO    ] No update needed
[2026-08-25 09:57:29,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 09:57:29,939.939 INFO    ] 200
[2026-08-25 09:57:29,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:29,988.988 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:57:30,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:57:30,045.045 INFO    ] No camera update needed
[2026-08-25 09:57:30,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:57:30,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:57:30,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:57:30,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:57:32,102.102 INFO    ] ================================================
[2026-08-25 09:57:32,119.119 INFO    ] Launching Daemon at Tue Aug 25 09:57:32 IST 2026
[2026-08-25 09:57:32,130.130 INFO    ] ================================================
[2026-08-25 09:57:32,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:57:32
[2026-08-25 09:57:33,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:57:33,618.618 INFO    ] Initializing speech engine...
[2026-08-25 09:57:33,628.628 INFO    ] 2026-08-25 09:57:33
[2026-08-25 09:57:33,890.890 INFO    ] 2026-08-25 09:57:33
[2026-08-25 09:57:33,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:57:34,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:57:34,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:57:34,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:57:34,434.434 INFO    ] time= 25/08/2026 09:57:34
[2026-08-25 09:57:34,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:57:34,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:57:34,584.584 INFO    ] No existing commands found in stream
[2026-08-25 09:57:39,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:57:39,601.601 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 09:57:43,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:57:43,846.846 INFO    ] Checking for system updates...
[2026-08-25 09:57:43,881.881 INFO    ] 200
[2026-08-25 09:57:43,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:43,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:57:43,937.937 INFO    ] No update needed
[2026-08-25 09:57:43,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 09:57:43,973.973 INFO    ] 200
[2026-08-25 09:57:43,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:44,016.016 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:57:44,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:57:44,079.079 INFO    ] No camera update needed
[2026-08-25 09:57:44,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:57:44,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:57:44,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:57:44,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:57:46,135.135 INFO    ] ================================================
[2026-08-25 09:57:46,150.150 INFO    ] Launching Daemon at Tue Aug 25 09:57:46 IST 2026
[2026-08-25 09:57:46,161.161 INFO    ] ================================================
[2026-08-25 09:57:46,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:57:46
[2026-08-25 09:57:47,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:57:47,708.708 INFO    ] Initializing speech engine...
[2026-08-25 09:57:47,714.714 INFO    ] 2026-08-25 09:57:47
[2026-08-25 09:57:48,009.009 INFO    ] 2026-08-25 09:57:47
[2026-08-25 09:57:48,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:57:48,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:57:48,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:57:48,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:57:48,401.401 INFO    ] time= 25/08/2026 09:57:48
[2026-08-25 09:57:48,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:57:48,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:57:48,518.518 INFO    ] No existing commands found in stream
[2026-08-25 09:57:53,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:57:53,541.541 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 09:57:56,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:57:56,716.716 INFO    ] Checking for system updates...
[2026-08-25 09:57:56,751.751 INFO    ] 200
[2026-08-25 09:57:56,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:56,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:57:56,815.815 INFO    ] No update needed
[2026-08-25 09:57:56,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 09:57:56,854.854 INFO    ] 200
[2026-08-25 09:57:56,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:57:56,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:57:56,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:57:56,953.953 INFO    ] No camera update needed
[2026-08-25 09:57:56,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:57:56,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:57:56,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:57:56,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:57:59,008.008 INFO    ] ================================================
[2026-08-25 09:57:59,023.023 INFO    ] Launching Daemon at Tue Aug 25 09:57:59 IST 2026
[2026-08-25 09:57:59,033.033 INFO    ] ================================================
[2026-08-25 09:57:59,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:57:59
[2026-08-25 09:58:00,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:58:00,436.436 INFO    ] Initializing speech engine...
[2026-08-25 09:58:00,442.442 INFO    ] 2026-08-25 09:58:00
[2026-08-25 09:58:00,737.737 INFO    ] 2026-08-25 09:58:00
[2026-08-25 09:58:00,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:58:00,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:58:00,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:58:01,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:58:01,151.151 INFO    ] time= 25/08/2026 09:58:01
[2026-08-25 09:58:01,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:58:01,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:58:01,301.301 INFO    ] No existing commands found in stream
[2026-08-25 09:58:06,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:58:06,340.340 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 09:58:07,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:58:07,287.287 INFO    ] Checking for system updates...
[2026-08-25 09:58:07,324.324 INFO    ] 200
[2026-08-25 09:58:07,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:07,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:58:07,384.384 INFO    ] No update needed
[2026-08-25 09:58:07,387.387 INFO    ] Checking for camera pi updates...
[2026-08-25 09:58:07,425.425 INFO    ] 200
[2026-08-25 09:58:07,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:07,469.469 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:58:07,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:58:07,533.533 INFO    ] No camera update needed
[2026-08-25 09:58:07,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:58:07,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:58:07,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:58:07,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:58:09,592.592 INFO    ] ================================================
[2026-08-25 09:58:09,607.607 INFO    ] Launching Daemon at Tue Aug 25 09:58:09 IST 2026
[2026-08-25 09:58:09,618.618 INFO    ] ================================================
[2026-08-25 09:58:10,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:58:10
[2026-08-25 09:58:10,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:58:11,069.069 INFO    ] Initializing speech engine...
[2026-08-25 09:58:11,077.077 INFO    ] 2026-08-25 09:58:11
[2026-08-25 09:58:11,329.329 INFO    ] 2026-08-25 09:58:11
[2026-08-25 09:58:11,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:58:11,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:58:11,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:58:11,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:58:11,709.709 INFO    ] time= 25/08/2026 09:58:11
[2026-08-25 09:58:11,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:58:11,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:58:11,865.865 INFO    ] No existing commands found in stream
[2026-08-25 09:58:16,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:58:16,892.892 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 09:58:19,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:58:19,617.617 INFO    ] Checking for system updates...
[2026-08-25 09:58:19,652.652 INFO    ] 200
[2026-08-25 09:58:19,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:19,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:58:19,709.709 INFO    ] No update needed
[2026-08-25 09:58:19,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 09:58:19,745.745 INFO    ] 200
[2026-08-25 09:58:19,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:19,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:58:19,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:58:19,950.950 INFO    ] No camera update needed
[2026-08-25 09:58:19,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:58:19,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:58:19,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:58:19,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:58:22,005.005 INFO    ] ================================================
[2026-08-25 09:58:22,020.020 INFO    ] Launching Daemon at Tue Aug 25 09:58:22 IST 2026
[2026-08-25 09:58:22,031.031 INFO    ] ================================================
[2026-08-25 09:58:22,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:58:22
[2026-08-25 09:58:23,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:58:23,490.490 INFO    ] Initializing speech engine...
[2026-08-25 09:58:23,499.499 INFO    ] 2026-08-25 09:58:23
[2026-08-25 09:58:23,771.771 INFO    ] 2026-08-25 09:58:23
[2026-08-25 09:58:23,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:58:24,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:58:24,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:58:24,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:58:24,301.301 INFO    ] time= 25/08/2026 09:58:24
[2026-08-25 09:58:24,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:58:24,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:58:24,456.456 INFO    ] No existing commands found in stream
[2026-08-25 09:58:29,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:58:29,478.478 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 09:58:30,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 09:58:30,757.757 INFO    ] Checking for system updates...
[2026-08-25 09:58:30,797.797 INFO    ] 200
[2026-08-25 09:58:30,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:30,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:58:30,861.861 INFO    ] No update needed
[2026-08-25 09:58:30,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 09:58:30,897.897 INFO    ] 200
[2026-08-25 09:58:30,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:30,939.939 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:58:30,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:58:30,991.991 INFO    ] No camera update needed
[2026-08-25 09:58:30,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:58:30,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:58:31,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:58:31,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:58:33,049.049 INFO    ] ================================================
[2026-08-25 09:58:33,064.064 INFO    ] Launching Daemon at Tue Aug 25 09:58:33 IST 2026
[2026-08-25 09:58:33,076.076 INFO    ] ================================================
[2026-08-25 09:58:33,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:58:33
[2026-08-25 09:58:34,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:58:34,496.496 INFO    ] Initializing speech engine...
[2026-08-25 09:58:34,504.504 INFO    ] 2026-08-25 09:58:34
[2026-08-25 09:58:34,800.800 INFO    ] 2026-08-25 09:58:34
[2026-08-25 09:58:34,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:58:35,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:58:35,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:58:35,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:58:35,180.180 INFO    ] time= 25/08/2026 09:58:35
[2026-08-25 09:58:35,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:58:35,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:58:35,305.305 INFO    ] No existing commands found in stream
[2026-08-25 09:58:40,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:58:40,320.320 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 09:58:43,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:58:43,437.437 INFO    ] Checking for system updates...
[2026-08-25 09:58:43,473.473 INFO    ] 200
[2026-08-25 09:58:43,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:43,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:58:43,531.531 INFO    ] No update needed
[2026-08-25 09:58:43,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 09:58:43,567.567 INFO    ] 200
[2026-08-25 09:58:43,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:43,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:58:43,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:58:43,671.671 INFO    ] No camera update needed
[2026-08-25 09:58:43,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:58:43,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:58:43,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:58:43,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:58:45,726.726 INFO    ] ================================================
[2026-08-25 09:58:45,741.741 INFO    ] Launching Daemon at Tue Aug 25 09:58:45 IST 2026
[2026-08-25 09:58:45,751.751 INFO    ] ================================================
[2026-08-25 09:58:46,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:58:46
[2026-08-25 09:58:47,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:58:47,371.371 INFO    ] Initializing speech engine...
[2026-08-25 09:58:47,400.400 INFO    ] 2026-08-25 09:58:47
[2026-08-25 09:58:47,686.686 INFO    ] 2026-08-25 09:58:47
[2026-08-25 09:58:47,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:58:47,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:58:47,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:58:48,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:58:48,182.182 INFO    ] time= 25/08/2026 09:58:48
[2026-08-25 09:58:48,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:58:48,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:58:48,331.331 INFO    ] No existing commands found in stream
[2026-08-25 09:58:53,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:58:53,349.349 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 09:58:55,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:58:55,211.211 INFO    ] Checking for system updates...
[2026-08-25 09:58:55,247.247 INFO    ] 200
[2026-08-25 09:58:55,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:55,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:58:55,304.304 INFO    ] No update needed
[2026-08-25 09:58:55,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 09:58:55,344.344 INFO    ] 200
[2026-08-25 09:58:55,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:58:55,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:58:55,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:58:55,445.445 INFO    ] No camera update needed
[2026-08-25 09:58:55,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:58:55,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:58:55,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:58:55,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:58:57,499.499 INFO    ] ================================================
[2026-08-25 09:58:57,514.514 INFO    ] Launching Daemon at Tue Aug 25 09:58:57 IST 2026
[2026-08-25 09:58:57,524.524 INFO    ] ================================================
[2026-08-25 09:58:58,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:58:58
[2026-08-25 09:58:58,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:58:58,948.948 INFO    ] Initializing speech engine...
[2026-08-25 09:58:58,958.958 INFO    ] 2026-08-25 09:58:58
[2026-08-25 09:58:59,222.222 INFO    ] 2026-08-25 09:58:59
[2026-08-25 09:58:59,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:58:59,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:58:59,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:58:59,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:58:59,677.677 INFO    ] time= 25/08/2026 09:58:59
[2026-08-25 09:58:59,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:58:59,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:58:59,926.926 INFO    ] No existing commands found in stream
[2026-08-25 09:59:04,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:59:04,947.947 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 09:59:07,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 09:59:07,168.168 INFO    ] Checking for system updates...
[2026-08-25 09:59:07,210.210 INFO    ] 200
[2026-08-25 09:59:07,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:07,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:07,275.275 INFO    ] No update needed
[2026-08-25 09:59:07,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 09:59:07,316.316 INFO    ] 200
[2026-08-25 09:59:07,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:07,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:59:07,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:07,428.428 INFO    ] No camera update needed
[2026-08-25 09:59:07,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:59:07,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:59:07,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:59:07,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:59:09,493.493 INFO    ] ================================================
[2026-08-25 09:59:09,510.510 INFO    ] Launching Daemon at Tue Aug 25 09:59:09 IST 2026
[2026-08-25 09:59:09,520.520 INFO    ] ================================================
[2026-08-25 09:59:10,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:59:10
[2026-08-25 09:59:10,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:59:10,980.980 INFO    ] Initializing speech engine...
[2026-08-25 09:59:10,987.987 INFO    ] 2026-08-25 09:59:10
[2026-08-25 09:59:11,235.235 INFO    ] 2026-08-25 09:59:11
[2026-08-25 09:59:11,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:59:11,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:59:11,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:59:11,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:59:11,717.717 INFO    ] time= 25/08/2026 09:59:11
[2026-08-25 09:59:11,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:59:11,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:59:11,928.928 INFO    ] No existing commands found in stream
[2026-08-25 09:59:16,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:59:16,948.948 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 09:59:19,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 09:59:19,867.867 INFO    ] Checking for system updates...
[2026-08-25 09:59:19,903.903 INFO    ] 200
[2026-08-25 09:59:19,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:19,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:19,960.960 INFO    ] No update needed
[2026-08-25 09:59:19,962.962 INFO    ] Checking for camera pi updates...
[2026-08-25 09:59:19,999.999 INFO    ] 200
[2026-08-25 09:59:20,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:20,045.045 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:59:20,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:20,103.103 INFO    ] No camera update needed
[2026-08-25 09:59:20,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:59:20,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:59:20,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:59:20,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:59:22,158.158 INFO    ] ================================================
[2026-08-25 09:59:22,173.173 INFO    ] Launching Daemon at Tue Aug 25 09:59:22 IST 2026
[2026-08-25 09:59:22,184.184 INFO    ] ================================================
[2026-08-25 09:59:22,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:59:22
[2026-08-25 09:59:23,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:59:23,609.609 INFO    ] Initializing speech engine...
[2026-08-25 09:59:23,617.617 INFO    ] 2026-08-25 09:59:23
[2026-08-25 09:59:23,870.870 INFO    ] 2026-08-25 09:59:23
[2026-08-25 09:59:23,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:59:24,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:59:24,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:59:24,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:59:24,331.331 INFO    ] time= 25/08/2026 09:59:24
[2026-08-25 09:59:24,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:59:24,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:59:24,556.556 INFO    ] No existing commands found in stream
[2026-08-25 09:59:29,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:59:29,583.583 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 09:59:30,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 09:59:30,998.998 INFO    ] Checking for system updates...
[2026-08-25 09:59:31,034.034 INFO    ] 200
[2026-08-25 09:59:31,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:31,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:59:31,100.100 INFO    ] No update needed
[2026-08-25 09:59:31,103.103 INFO    ] Checking for camera pi updates...
[2026-08-25 09:59:31,141.141 INFO    ] 200
[2026-08-25 09:59:31,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:31,186.186 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:59:31,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 09:59:31,234.234 INFO    ] No camera update needed
[2026-08-25 09:59:31,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:59:31,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:59:31,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:59:31,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:59:33,293.293 INFO    ] ================================================
[2026-08-25 09:59:33,308.308 INFO    ] Launching Daemon at Tue Aug 25 09:59:33 IST 2026
[2026-08-25 09:59:33,319.319 INFO    ] ================================================
[2026-08-25 09:59:33,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:59:33
[2026-08-25 09:59:34,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:59:34,729.729 INFO    ] Initializing speech engine...
[2026-08-25 09:59:34,738.738 INFO    ] 2026-08-25 09:59:34
[2026-08-25 09:59:34,982.982 INFO    ] 2026-08-25 09:59:34
[2026-08-25 09:59:35,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:59:35,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:59:35,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:59:35,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:59:35,475.475 INFO    ] time= 25/08/2026 09:59:35
[2026-08-25 09:59:35,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:59:35,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:59:35,668.668 INFO    ] No existing commands found in stream
[2026-08-25 09:59:40,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:59:40,700.700 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 09:59:43,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 09:59:43,836.836 INFO    ] Checking for system updates...
[2026-08-25 09:59:43,871.871 INFO    ] 200
[2026-08-25 09:59:43,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:43,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:43,928.928 INFO    ] No update needed
[2026-08-25 09:59:43,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 09:59:43,964.964 INFO    ] 200
[2026-08-25 09:59:43,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:44,007.007 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:59:44,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:44,064.064 INFO    ] No camera update needed
[2026-08-25 09:59:44,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:59:44,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:59:44,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:59:44,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:59:46,120.120 INFO    ] ================================================
[2026-08-25 09:59:46,137.137 INFO    ] Launching Daemon at Tue Aug 25 09:59:46 IST 2026
[2026-08-25 09:59:46,148.148 INFO    ] ================================================
[2026-08-25 09:59:46,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:59:46
[2026-08-25 09:59:47,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:59:47,793.793 INFO    ] Initializing speech engine...
[2026-08-25 09:59:47,799.799 INFO    ] 2026-08-25 09:59:47
[2026-08-25 09:59:48,089.089 INFO    ] 2026-08-25 09:59:48
[2026-08-25 09:59:48,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 09:59:48,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 09:59:48,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 09:59:48,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 09:59:48,625.625 INFO    ] time= 25/08/2026 09:59:48
[2026-08-25 09:59:48,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 09:59:48,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 09:59:48,786.786 INFO    ] No existing commands found in stream
[2026-08-25 09:59:53,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 09:59:53,809.809 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 09:59:56,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 09:59:56,083.083 INFO    ] Checking for system updates...
[2026-08-25 09:59:56,119.119 INFO    ] 200
[2026-08-25 09:59:56,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:56,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:56,179.179 INFO    ] No update needed
[2026-08-25 09:59:56,182.182 INFO    ] Checking for camera pi updates...
[2026-08-25 09:59:56,216.216 INFO    ] 200
[2026-08-25 09:59:56,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 09:59:56,264.264 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 09:59:56,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 09:59:56,310.310 INFO    ] No camera update needed
[2026-08-25 09:59:56,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-25 09:59:56,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 09:59:56,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 09:59:56,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 09:59:58,364.364 INFO    ] ================================================
[2026-08-25 09:59:58,380.380 INFO    ] Launching Daemon at Tue Aug 25 09:59:58 IST 2026
[2026-08-25 09:59:58,391.391 INFO    ] ================================================
[2026-08-25 09:59:58,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 09:59:58
[2026-08-25 09:59:59,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 09:59:59,846.846 INFO    ] Initializing speech engine...
[2026-08-25 09:59:59,852.852 INFO    ] 2026-08-25 09:59:59
[2026-08-25 10:00:00,113.113 INFO    ] 2026-08-25 10:00:00
[2026-08-25 10:00:00,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:00:00,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:00:00,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:00:00,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:00:00,655.655 INFO    ] time= 25/08/2026 10:00:00
[2026-08-25 10:00:00,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:00:00,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:00:00,810.810 INFO    ] No existing commands found in stream
[2026-08-25 10:00:05,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:00:05,842.842 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 10:00:08,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:00:08,473.473 INFO    ] Checking for system updates...
[2026-08-25 10:00:08,508.508 INFO    ] 200
[2026-08-25 10:00:08,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:08,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:08,571.571 INFO    ] No update needed
[2026-08-25 10:00:08,573.573 INFO    ] Checking for camera pi updates...
[2026-08-25 10:00:08,607.607 INFO    ] 200
[2026-08-25 10:00:08,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:08,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:00:08,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:08,710.710 INFO    ] No camera update needed
[2026-08-25 10:00:08,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:00:08,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:00:08,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:00:08,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:00:10,765.765 INFO    ] ================================================
[2026-08-25 10:00:10,781.781 INFO    ] Launching Daemon at Tue Aug 25 10:00:10 IST 2026
[2026-08-25 10:00:10,792.792 INFO    ] ================================================
[2026-08-25 10:00:11,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:00:11
[2026-08-25 10:00:11,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:00:12,246.246 INFO    ] Initializing speech engine...
[2026-08-25 10:00:12,257.257 INFO    ] 2026-08-25 10:00:12
[2026-08-25 10:00:12,505.505 INFO    ] 2026-08-25 10:00:12
[2026-08-25 10:00:12,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:00:12,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:00:12,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:00:12,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:00:13,009.009 INFO    ] time= 25/08/2026 10:00:12
[2026-08-25 10:00:13,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:00:13,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:00:13,188.188 INFO    ] No existing commands found in stream
[2026-08-25 10:00:18,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:00:18,222.222 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 10:00:20,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:00:20,559.559 INFO    ] Checking for system updates...
[2026-08-25 10:00:20,595.595 INFO    ] 200
[2026-08-25 10:00:20,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:20,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:00:20,652.652 INFO    ] No update needed
[2026-08-25 10:00:20,654.654 INFO    ] Checking for camera pi updates...
[2026-08-25 10:00:20,687.687 INFO    ] 200
[2026-08-25 10:00:20,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:20,731.731 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:00:20,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:00:20,778.778 INFO    ] No camera update needed
[2026-08-25 10:00:20,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:00:20,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:00:20,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:00:20,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:00:22,833.833 INFO    ] ================================================
[2026-08-25 10:00:22,848.848 INFO    ] Launching Daemon at Tue Aug 25 10:00:22 IST 2026
[2026-08-25 10:00:22,859.859 INFO    ] ================================================
[2026-08-25 10:00:23,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:00:23
[2026-08-25 10:00:24,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:00:24,325.325 INFO    ] Initializing speech engine...
[2026-08-25 10:00:24,334.334 INFO    ] 2026-08-25 10:00:24
[2026-08-25 10:00:24,591.591 INFO    ] 2026-08-25 10:00:24
[2026-08-25 10:00:24,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:00:24,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:00:24,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:00:25,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:00:25,035.035 INFO    ] time= 25/08/2026 10:00:25
[2026-08-25 10:00:25,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:00:25,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:00:25,275.275 INFO    ] No existing commands found in stream
[2026-08-25 10:00:30,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:00:30,302.302 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 10:00:31,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:00:31,063.063 INFO    ] Checking for system updates...
[2026-08-25 10:00:31,099.099 INFO    ] 200
[2026-08-25 10:00:31,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:31,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:31,156.156 INFO    ] No update needed
[2026-08-25 10:00:31,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 10:00:31,192.192 INFO    ] 200
[2026-08-25 10:00:31,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:31,234.234 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:00:31,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:31,383.383 INFO    ] No camera update needed
[2026-08-25 10:00:31,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:00:31,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:00:31,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:00:31,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:00:33,441.441 INFO    ] ================================================
[2026-08-25 10:00:33,457.457 INFO    ] Launching Daemon at Tue Aug 25 10:00:33 IST 2026
[2026-08-25 10:00:33,468.468 INFO    ] ================================================
[2026-08-25 10:00:34,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:00:34
[2026-08-25 10:00:34,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:00:35,049.049 INFO    ] Initializing speech engine...
[2026-08-25 10:00:35,061.061 INFO    ] 2026-08-25 10:00:35
[2026-08-25 10:00:35,324.324 INFO    ] 2026-08-25 10:00:35
[2026-08-25 10:00:35,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:00:35,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:00:35,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:00:35,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:00:35,810.810 INFO    ] time= 25/08/2026 10:00:35
[2026-08-25 10:00:35,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:00:35,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:00:36,009.009 INFO    ] No existing commands found in stream
[2026-08-25 10:00:41,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:00:41,038.038 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 10:00:41,779.779 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:00:41,782.782 INFO    ] Checking for system updates...
[2026-08-25 10:00:41,822.822 INFO    ] 200
[2026-08-25 10:00:41,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:41,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:41,880.880 INFO    ] No update needed
[2026-08-25 10:00:41,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 10:00:41,918.918 INFO    ] 200
[2026-08-25 10:00:41,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:41,964.964 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:00:42,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:42,024.024 INFO    ] No camera update needed
[2026-08-25 10:00:42,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:00:42,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:00:42,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:00:42,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:00:44,079.079 INFO    ] ================================================
[2026-08-25 10:00:44,094.094 INFO    ] Launching Daemon at Tue Aug 25 10:00:44 IST 2026
[2026-08-25 10:00:44,105.105 INFO    ] ================================================
[2026-08-25 10:00:44,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:00:44
[2026-08-25 10:00:45,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:00:45,563.563 INFO    ] Initializing speech engine...
[2026-08-25 10:00:45,570.570 INFO    ] 2026-08-25 10:00:45
[2026-08-25 10:00:45,835.835 INFO    ] 2026-08-25 10:00:45
[2026-08-25 10:00:45,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:00:46,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:00:46,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:00:46,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:00:46,286.286 INFO    ] time= 25/08/2026 10:00:46
[2026-08-25 10:00:46,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:00:46,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:00:46,517.517 INFO    ] No existing commands found in stream
[2026-08-25 10:00:51,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:00:51,543.543 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 10:00:55,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:00:55,410.410 INFO    ] Checking for system updates...
[2026-08-25 10:00:55,446.446 INFO    ] 200
[2026-08-25 10:00:55,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:55,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:55,503.503 INFO    ] No update needed
[2026-08-25 10:00:55,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 10:00:55,542.542 INFO    ] 200
[2026-08-25 10:00:55,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:00:55,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:00:55,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:00:55,652.652 INFO    ] No camera update needed
[2026-08-25 10:00:55,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:00:55,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:00:55,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:00:55,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:00:57,711.711 INFO    ] ================================================
[2026-08-25 10:00:57,726.726 INFO    ] Launching Daemon at Tue Aug 25 10:00:57 IST 2026
[2026-08-25 10:00:57,737.737 INFO    ] ================================================
[2026-08-25 10:00:58,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:00:58
[2026-08-25 10:00:58,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:00:59,199.199 INFO    ] Initializing speech engine...
[2026-08-25 10:00:59,220.220 INFO    ] 2026-08-25 10:00:59
[2026-08-25 10:00:59,471.471 INFO    ] 2026-08-25 10:00:59
[2026-08-25 10:00:59,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:00:59,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:00:59,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:00:59,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:00:59,843.843 INFO    ] time= 25/08/2026 10:00:59
[2026-08-25 10:00:59,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:00:59,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:01:00,038.038 INFO    ] No existing commands found in stream
[2026-08-25 10:01:05,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:01:05,052.052 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 10:01:08,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:01:08,284.284 INFO    ] Checking for system updates...
[2026-08-25 10:01:08,322.322 INFO    ] 200
[2026-08-25 10:01:08,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:08,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:08,380.380 INFO    ] No update needed
[2026-08-25 10:01:08,383.383 INFO    ] Checking for camera pi updates...
[2026-08-25 10:01:08,420.420 INFO    ] 200
[2026-08-25 10:01:08,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:08,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:01:08,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:08,520.520 INFO    ] No camera update needed
[2026-08-25 10:01:08,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:01:08,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:01:08,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:01:08,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:01:10,579.579 INFO    ] ================================================
[2026-08-25 10:01:10,595.595 INFO    ] Launching Daemon at Tue Aug 25 10:01:10 IST 2026
[2026-08-25 10:01:10,606.606 INFO    ] ================================================
[2026-08-25 10:01:11,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:01:11
[2026-08-25 10:01:11,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:01:12,060.060 INFO    ] Initializing speech engine...
[2026-08-25 10:01:12,069.069 INFO    ] 2026-08-25 10:01:12
[2026-08-25 10:01:12,327.327 INFO    ] 2026-08-25 10:01:12
[2026-08-25 10:01:12,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:01:12,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:01:12,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:01:12,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:01:12,809.809 INFO    ] time= 25/08/2026 10:01:12
[2026-08-25 10:01:12,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:01:12,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:01:12,998.998 INFO    ] No existing commands found in stream
[2026-08-25 10:01:18,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:01:18,033.033 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 10:01:18,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:01:18,733.733 INFO    ] Checking for system updates...
[2026-08-25 10:01:18,768.768 INFO    ] 200
[2026-08-25 10:01:18,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:18,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:18,825.825 INFO    ] No update needed
[2026-08-25 10:01:18,827.827 INFO    ] Checking for camera pi updates...
[2026-08-25 10:01:18,865.865 INFO    ] 200
[2026-08-25 10:01:18,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:18,908.908 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:01:18,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:18,971.971 INFO    ] No camera update needed
[2026-08-25 10:01:18,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:01:18,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:01:18,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:01:18,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:01:21,028.028 INFO    ] ================================================
[2026-08-25 10:01:21,044.044 INFO    ] Launching Daemon at Tue Aug 25 10:01:21 IST 2026
[2026-08-25 10:01:21,054.054 INFO    ] ================================================
[2026-08-25 10:01:21,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:01:21
[2026-08-25 10:01:22,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:01:22,509.509 INFO    ] Initializing speech engine...
[2026-08-25 10:01:22,519.519 INFO    ] 2026-08-25 10:01:22
[2026-08-25 10:01:22,780.780 INFO    ] 2026-08-25 10:01:22
[2026-08-25 10:01:22,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:01:23,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:01:23,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:01:23,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:01:23,245.245 INFO    ] time= 25/08/2026 10:01:23
[2026-08-25 10:01:23,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:01:23,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:01:23,460.460 INFO    ] No existing commands found in stream
[2026-08-25 10:01:28,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:01:28,490.490 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 10:01:31,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:01:31,425.425 INFO    ] Checking for system updates...
[2026-08-25 10:01:31,460.460 INFO    ] 200
[2026-08-25 10:01:31,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:31,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:31,518.518 INFO    ] No update needed
[2026-08-25 10:01:31,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 10:01:31,555.555 INFO    ] 200
[2026-08-25 10:01:31,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:31,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:01:31,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:31,647.647 INFO    ] No camera update needed
[2026-08-25 10:01:31,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:01:31,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:01:31,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:01:31,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:01:33,709.709 INFO    ] ================================================
[2026-08-25 10:01:33,725.725 INFO    ] Launching Daemon at Tue Aug 25 10:01:33 IST 2026
[2026-08-25 10:01:33,736.736 INFO    ] ================================================
[2026-08-25 10:01:34,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:01:34
[2026-08-25 10:01:34,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:01:35,256.256 INFO    ] Initializing speech engine...
[2026-08-25 10:01:35,265.265 INFO    ] 2026-08-25 10:01:35
[2026-08-25 10:01:35,523.523 INFO    ] 2026-08-25 10:01:35
[2026-08-25 10:01:35,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:01:35,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:01:35,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:01:35,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:01:35,933.933 INFO    ] time= 25/08/2026 10:01:35
[2026-08-25 10:01:35,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:01:35,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:01:36,018.018 INFO    ] No existing commands found in stream
[2026-08-25 10:01:41,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:01:41,056.056 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 10:01:42,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:01:42,872.872 INFO    ] Checking for system updates...
[2026-08-25 10:01:42,911.911 INFO    ] 200
[2026-08-25 10:01:42,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:42,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:01:42,973.973 INFO    ] No update needed
[2026-08-25 10:01:42,976.976 INFO    ] Checking for camera pi updates...
[2026-08-25 10:01:43,010.010 INFO    ] 200
[2026-08-25 10:01:43,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:43,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:01:43,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:01:43,100.100 INFO    ] No camera update needed
[2026-08-25 10:01:43,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:01:43,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:01:43,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:01:43,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:01:45,155.155 INFO    ] ================================================
[2026-08-25 10:01:45,170.170 INFO    ] Launching Daemon at Tue Aug 25 10:01:45 IST 2026
[2026-08-25 10:01:45,181.181 INFO    ] ================================================
[2026-08-25 10:01:45,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:01:45
[2026-08-25 10:01:46,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:01:46,663.663 INFO    ] Initializing speech engine...
[2026-08-25 10:01:46,676.676 INFO    ] 2026-08-25 10:01:46
[2026-08-25 10:01:46,925.925 INFO    ] 2026-08-25 10:01:46
[2026-08-25 10:01:46,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:01:47,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:01:47,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:01:47,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:01:47,377.377 INFO    ] time= 25/08/2026 10:01:47
[2026-08-25 10:01:47,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:01:47,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:01:47,561.561 INFO    ] No existing commands found in stream
[2026-08-25 10:01:52,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:01:52,577.577 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 10:01:54,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:01:54,379.379 INFO    ] Checking for system updates...
[2026-08-25 10:01:54,414.414 INFO    ] 200
[2026-08-25 10:01:54,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:54,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:54,471.471 INFO    ] No update needed
[2026-08-25 10:01:54,474.474 INFO    ] Checking for camera pi updates...
[2026-08-25 10:01:54,507.507 INFO    ] 200
[2026-08-25 10:01:54,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:01:54,555.555 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:01:54,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:01:54,604.604 INFO    ] No camera update needed
[2026-08-25 10:01:54,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:01:54,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:01:54,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:01:54,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:01:56,661.661 INFO    ] ================================================
[2026-08-25 10:01:56,676.676 INFO    ] Launching Daemon at Tue Aug 25 10:01:56 IST 2026
[2026-08-25 10:01:56,687.687 INFO    ] ================================================
[2026-08-25 10:01:57,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:01:57
[2026-08-25 10:01:57,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:01:58,187.187 INFO    ] Initializing speech engine...
[2026-08-25 10:01:58,198.198 INFO    ] 2026-08-25 10:01:58
[2026-08-25 10:01:58,446.446 INFO    ] 2026-08-25 10:01:58
[2026-08-25 10:01:58,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:01:58,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:01:58,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:01:58,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:01:58,891.891 INFO    ] time= 25/08/2026 10:01:58
[2026-08-25 10:01:58,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:01:58,991.991 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:01:59,065.065 INFO    ] No existing commands found in stream
[2026-08-25 10:02:04,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:02:04,079.079 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 10:02:07,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:02:07,135.135 INFO    ] Checking for system updates...
[2026-08-25 10:02:07,170.170 INFO    ] 200
[2026-08-25 10:02:07,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:07,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:07,228.228 INFO    ] No update needed
[2026-08-25 10:02:07,230.230 INFO    ] Checking for camera pi updates...
[2026-08-25 10:02:07,266.266 INFO    ] 200
[2026-08-25 10:02:07,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:07,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:02:07,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:07,360.360 INFO    ] No camera update needed
[2026-08-25 10:02:07,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:02:07,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:02:07,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:02:07,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:02:09,414.414 INFO    ] ================================================
[2026-08-25 10:02:09,429.429 INFO    ] Launching Daemon at Tue Aug 25 10:02:09 IST 2026
[2026-08-25 10:02:09,440.440 INFO    ] ================================================
[2026-08-25 10:02:10,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:02:10
[2026-08-25 10:02:10,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:02:10,840.840 INFO    ] Initializing speech engine...
[2026-08-25 10:02:10,848.848 INFO    ] 2026-08-25 10:02:10
[2026-08-25 10:02:11,123.123 INFO    ] 2026-08-25 10:02:11
[2026-08-25 10:02:11,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:02:11,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:02:11,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:02:11,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:02:11,500.500 INFO    ] time= 25/08/2026 10:02:11
[2026-08-25 10:02:11,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:02:11,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:02:11,690.690 INFO    ] No existing commands found in stream
[2026-08-25 10:02:16,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:02:16,713.713 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 10:02:18,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:02:18,123.123 INFO    ] Checking for system updates...
[2026-08-25 10:02:18,158.158 INFO    ] 200
[2026-08-25 10:02:18,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:18,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:18,215.215 INFO    ] No update needed
[2026-08-25 10:02:18,217.217 INFO    ] Checking for camera pi updates...
[2026-08-25 10:02:18,251.251 INFO    ] 200
[2026-08-25 10:02:18,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:18,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:02:18,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:18,345.345 INFO    ] No camera update needed
[2026-08-25 10:02:18,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:02:18,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:02:18,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:02:18,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:02:20,418.418 INFO    ] ================================================
[2026-08-25 10:02:20,433.433 INFO    ] Launching Daemon at Tue Aug 25 10:02:20 IST 2026
[2026-08-25 10:02:20,443.443 INFO    ] ================================================
[2026-08-25 10:02:21,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:02:21
[2026-08-25 10:02:21,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:02:21,863.863 INFO    ] Initializing speech engine...
[2026-08-25 10:02:21,877.877 INFO    ] 2026-08-25 10:02:21
[2026-08-25 10:02:22,147.147 INFO    ] 2026-08-25 10:02:22
[2026-08-25 10:02:22,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:02:22,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:02:22,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:02:22,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:02:22,616.616 INFO    ] time= 25/08/2026 10:02:22
[2026-08-25 10:02:22,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:02:22,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:02:22,835.835 INFO    ] No existing commands found in stream
[2026-08-25 10:02:27,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:02:27,865.865 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 10:02:30,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:02:30,834.834 INFO    ] Checking for system updates...
[2026-08-25 10:02:30,873.873 INFO    ] 200
[2026-08-25 10:02:30,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:30,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:30,930.930 INFO    ] No update needed
[2026-08-25 10:02:30,932.932 INFO    ] Checking for camera pi updates...
[2026-08-25 10:02:30,966.966 INFO    ] 200
[2026-08-25 10:02:30,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:31,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:02:31,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:31,065.065 INFO    ] No camera update needed
[2026-08-25 10:02:31,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:02:31,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:02:31,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:02:31,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:02:33,124.124 INFO    ] ================================================
[2026-08-25 10:02:33,139.139 INFO    ] Launching Daemon at Tue Aug 25 10:02:33 IST 2026
[2026-08-25 10:02:33,150.150 INFO    ] ================================================
[2026-08-25 10:02:33,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:02:33
[2026-08-25 10:02:34,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:02:34,618.618 INFO    ] Initializing speech engine...
[2026-08-25 10:02:34,631.631 INFO    ] 2026-08-25 10:02:34
[2026-08-25 10:02:34,943.943 INFO    ] 2026-08-25 10:02:34
[2026-08-25 10:02:35,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:02:35,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:02:35,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:02:35,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:02:35,395.395 INFO    ] time= 25/08/2026 10:02:35
[2026-08-25 10:02:35,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:02:35,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:02:35,586.586 INFO    ] No existing commands found in stream
[2026-08-25 10:02:40,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:02:40,620.620 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 10:02:44,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:02:44,805.805 INFO    ] Checking for system updates...
[2026-08-25 10:02:44,842.842 INFO    ] 200
[2026-08-25 10:02:44,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:44,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:02:44,910.910 INFO    ] No update needed
[2026-08-25 10:02:44,913.913 INFO    ] Checking for camera pi updates...
[2026-08-25 10:02:44,951.951 INFO    ] 200
[2026-08-25 10:02:44,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:44,998.998 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:02:45,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:02:45,065.065 INFO    ] No camera update needed
[2026-08-25 10:02:45,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:02:45,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:02:45,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:02:45,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:02:47,120.120 INFO    ] ================================================
[2026-08-25 10:02:47,135.135 INFO    ] Launching Daemon at Tue Aug 25 10:02:47 IST 2026
[2026-08-25 10:02:47,145.145 INFO    ] ================================================
[2026-08-25 10:02:47,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:02:47
[2026-08-25 10:02:48,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:02:48,599.599 INFO    ] Initializing speech engine...
[2026-08-25 10:02:48,606.606 INFO    ] 2026-08-25 10:02:48
[2026-08-25 10:02:48,866.866 INFO    ] 2026-08-25 10:02:48
[2026-08-25 10:02:48,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:02:49,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:02:49,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:02:49,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:02:49,344.344 INFO    ] time= 25/08/2026 10:02:49
[2026-08-25 10:02:49,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:02:49,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:02:49,561.561 INFO    ] No existing commands found in stream
[2026-08-25 10:02:54,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:02:54,578.578 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 10:02:58,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:02:58,292.292 INFO    ] Checking for system updates...
[2026-08-25 10:02:58,330.330 INFO    ] 200
[2026-08-25 10:02:58,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:58,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:58,388.388 INFO    ] No update needed
[2026-08-25 10:02:58,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 10:02:58,425.425 INFO    ] 200
[2026-08-25 10:02:58,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:02:58,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:02:58,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:02:58,523.523 INFO    ] No camera update needed
[2026-08-25 10:02:58,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:02:58,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:02:58,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:02:58,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:03:00,583.583 INFO    ] ================================================
[2026-08-25 10:03:00,599.599 INFO    ] Launching Daemon at Tue Aug 25 10:03:00 IST 2026
[2026-08-25 10:03:00,609.609 INFO    ] ================================================
[2026-08-25 10:03:01,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:03:01
[2026-08-25 10:03:01,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:03:02,211.211 INFO    ] Initializing speech engine...
[2026-08-25 10:03:02,215.215 INFO    ] 2026-08-25 10:03:02
[2026-08-25 10:03:02,536.536 INFO    ] 2026-08-25 10:03:02
[2026-08-25 10:03:02,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:03:02,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:03:02,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:03:02,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:03:02,929.929 INFO    ] time= 25/08/2026 10:03:02
[2026-08-25 10:03:02,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:03:02,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:03:03,052.052 INFO    ] No existing commands found in stream
[2026-08-25 10:03:08,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:03:08,096.096 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 10:03:10,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:03:10,488.488 INFO    ] Checking for system updates...
[2026-08-25 10:03:10,524.524 INFO    ] 200
[2026-08-25 10:03:10,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:10,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:03:10,586.586 INFO    ] No update needed
[2026-08-25 10:03:10,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 10:03:10,622.622 INFO    ] 200
[2026-08-25 10:03:10,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:10,667.667 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:03:10,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:03:10,715.715 INFO    ] No camera update needed
[2026-08-25 10:03:10,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:03:10,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:03:10,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:03:10,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:03:12,770.770 INFO    ] ================================================
[2026-08-25 10:03:12,785.785 INFO    ] Launching Daemon at Tue Aug 25 10:03:12 IST 2026
[2026-08-25 10:03:12,795.795 INFO    ] ================================================
[2026-08-25 10:03:13,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:03:13
[2026-08-25 10:03:13,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:03:14,212.212 INFO    ] Initializing speech engine...
[2026-08-25 10:03:14,226.226 INFO    ] 2026-08-25 10:03:14
[2026-08-25 10:03:14,507.507 INFO    ] 2026-08-25 10:03:14
[2026-08-25 10:03:14,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:03:14,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:03:14,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:03:14,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:03:14,892.892 INFO    ] time= 25/08/2026 10:03:14
[2026-08-25 10:03:14,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:03:14,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:03:14,992.992 INFO    ] No existing commands found in stream
[2026-08-25 10:03:20,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:03:20,016.016 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 10:03:24,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:03:24,097.097 INFO    ] Checking for system updates...
[2026-08-25 10:03:24,138.138 INFO    ] 200
[2026-08-25 10:03:24,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:24,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:03:24,203.203 INFO    ] No update needed
[2026-08-25 10:03:24,206.206 INFO    ] Checking for camera pi updates...
[2026-08-25 10:03:24,243.243 INFO    ] 200
[2026-08-25 10:03:24,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:24,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:03:24,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:03:24,344.344 INFO    ] No camera update needed
[2026-08-25 10:03:24,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:03:24,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:03:24,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:03:24,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:03:26,401.401 INFO    ] ================================================
[2026-08-25 10:03:26,417.417 INFO    ] Launching Daemon at Tue Aug 25 10:03:26 IST 2026
[2026-08-25 10:03:26,427.427 INFO    ] ================================================
[2026-08-25 10:03:27,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:03:27
[2026-08-25 10:03:27,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:03:27,892.892 INFO    ] Initializing speech engine...
[2026-08-25 10:03:27,898.898 INFO    ] 2026-08-25 10:03:27
[2026-08-25 10:03:28,160.160 INFO    ] 2026-08-25 10:03:28
[2026-08-25 10:03:28,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:03:28,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:03:28,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:03:28,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:03:28,641.641 INFO    ] time= 25/08/2026 10:03:28
[2026-08-25 10:03:28,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:03:28,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:03:28,857.857 INFO    ] No existing commands found in stream
[2026-08-25 10:03:33,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:03:33,874.874 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 10:03:34,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:03:34,416.416 INFO    ] Checking for system updates...
[2026-08-25 10:03:34,451.451 INFO    ] 200
[2026-08-25 10:03:34,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:34,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:03:34,513.513 INFO    ] No update needed
[2026-08-25 10:03:34,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 10:03:34,553.553 INFO    ] 200
[2026-08-25 10:03:34,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:34,600.600 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:03:34,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:03:34,646.646 INFO    ] No camera update needed
[2026-08-25 10:03:34,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:03:34,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:03:34,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:03:34,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:03:36,702.702 INFO    ] ================================================
[2026-08-25 10:03:36,717.717 INFO    ] Launching Daemon at Tue Aug 25 10:03:36 IST 2026
[2026-08-25 10:03:36,728.728 INFO    ] ================================================
[2026-08-25 10:03:37,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:03:37
[2026-08-25 10:03:37,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:03:38,187.187 INFO    ] Initializing speech engine...
[2026-08-25 10:03:38,196.196 INFO    ] 2026-08-25 10:03:38
[2026-08-25 10:03:38,455.455 INFO    ] 2026-08-25 10:03:38
[2026-08-25 10:03:38,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:03:38,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:03:38,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:03:38,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:03:38,925.925 INFO    ] time= 25/08/2026 10:03:38
[2026-08-25 10:03:38,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:03:39,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:03:39,131.131 INFO    ] No existing commands found in stream
[2026-08-25 10:03:44,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:03:44,164.164 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 10:03:45,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:03:45,514.514 INFO    ] Checking for system updates...
[2026-08-25 10:03:45,550.550 INFO    ] 200
[2026-08-25 10:03:45,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:45,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:03:45,611.611 INFO    ] No update needed
[2026-08-25 10:03:45,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 10:03:45,653.653 INFO    ] 200
[2026-08-25 10:03:45,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:45,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:03:45,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:03:45,753.753 INFO    ] No camera update needed
[2026-08-25 10:03:45,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:03:45,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:03:45,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:03:45,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:03:47,811.811 INFO    ] ================================================
[2026-08-25 10:03:47,826.826 INFO    ] Launching Daemon at Tue Aug 25 10:03:47 IST 2026
[2026-08-25 10:03:47,836.836 INFO    ] ================================================
[2026-08-25 10:03:48,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:03:48
[2026-08-25 10:03:49,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:03:49,289.289 INFO    ] Initializing speech engine...
[2026-08-25 10:03:49,299.299 INFO    ] 2026-08-25 10:03:49
[2026-08-25 10:03:49,559.559 INFO    ] 2026-08-25 10:03:49
[2026-08-25 10:03:49,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:03:49,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:03:49,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:03:49,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:03:49,997.997 INFO    ] time= 25/08/2026 10:03:49
[2026-08-25 10:03:50,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:03:50,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:03:50,242.242 INFO    ] No existing commands found in stream
[2026-08-25 10:03:55,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:03:55,268.268 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 10:03:56,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:03:56,634.634 INFO    ] Checking for system updates...
[2026-08-25 10:03:56,674.674 INFO    ] 200
[2026-08-25 10:03:56,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:56,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:03:56,730.730 INFO    ] No update needed
[2026-08-25 10:03:56,733.733 INFO    ] Checking for camera pi updates...
[2026-08-25 10:03:56,766.766 INFO    ] 200
[2026-08-25 10:03:56,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:03:56,808.808 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:03:56,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:03:56,871.871 INFO    ] No camera update needed
[2026-08-25 10:03:56,873.873 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:03:56,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:03:56,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:03:56,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:03:58,927.927 INFO    ] ================================================
[2026-08-25 10:03:58,942.942 INFO    ] Launching Daemon at Tue Aug 25 10:03:58 IST 2026
[2026-08-25 10:03:58,953.953 INFO    ] ================================================
[2026-08-25 10:03:59,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:03:59
[2026-08-25 10:04:00,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:04:00,408.408 INFO    ] Initializing speech engine...
[2026-08-25 10:04:00,414.414 INFO    ] 2026-08-25 10:04:00
[2026-08-25 10:04:00,733.733 INFO    ] 2026-08-25 10:04:00
[2026-08-25 10:04:00,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:04:00,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:04:01,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:04:01,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:04:01,172.172 INFO    ] time= 25/08/2026 10:04:01
[2026-08-25 10:04:01,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:04:01,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:04:01,373.373 INFO    ] No existing commands found in stream
[2026-08-25 10:04:06,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:04:06,400.400 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 10:04:07,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:04:07,301.301 INFO    ] Checking for system updates...
[2026-08-25 10:04:07,338.338 INFO    ] 200
[2026-08-25 10:04:07,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:07,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:04:07,397.397 INFO    ] No update needed
[2026-08-25 10:04:07,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 10:04:07,439.439 INFO    ] 200
[2026-08-25 10:04:07,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:07,483.483 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:04:07,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:04:07,541.541 INFO    ] No camera update needed
[2026-08-25 10:04:07,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:04:07,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:04:07,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:04:07,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:04:09,598.598 INFO    ] ================================================
[2026-08-25 10:04:09,614.614 INFO    ] Launching Daemon at Tue Aug 25 10:04:09 IST 2026
[2026-08-25 10:04:09,625.625 INFO    ] ================================================
[2026-08-25 10:04:10,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:04:10
[2026-08-25 10:04:10,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:04:11,035.035 INFO    ] Initializing speech engine...
[2026-08-25 10:04:11,048.048 INFO    ] 2026-08-25 10:04:11
[2026-08-25 10:04:11,327.327 INFO    ] 2026-08-25 10:04:11
[2026-08-25 10:04:11,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:04:11,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:04:11,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:04:11,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:04:11,698.698 INFO    ] time= 25/08/2026 10:04:11
[2026-08-25 10:04:11,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:04:11,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:04:11,822.822 INFO    ] No existing commands found in stream
[2026-08-25 10:04:16,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:04:16,838.838 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 10:04:19,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:04:19,458.458 INFO    ] Checking for system updates...
[2026-08-25 10:04:19,494.494 INFO    ] 200
[2026-08-25 10:04:19,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:19,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:04:19,561.561 INFO    ] No update needed
[2026-08-25 10:04:19,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 10:04:19,599.599 INFO    ] 200
[2026-08-25 10:04:19,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:19,641.641 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:04:19,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:04:19,689.689 INFO    ] No camera update needed
[2026-08-25 10:04:19,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:04:19,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:04:19,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:04:19,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:04:21,745.745 INFO    ] ================================================
[2026-08-25 10:04:21,760.760 INFO    ] Launching Daemon at Tue Aug 25 10:04:21 IST 2026
[2026-08-25 10:04:21,771.771 INFO    ] ================================================
[2026-08-25 10:04:22,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:04:22
[2026-08-25 10:04:23,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:04:23,353.353 INFO    ] Initializing speech engine...
[2026-08-25 10:04:23,366.366 INFO    ] 2026-08-25 10:04:23
[2026-08-25 10:04:23,630.630 INFO    ] 2026-08-25 10:04:23
[2026-08-25 10:04:23,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:04:23,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:04:23,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:04:24,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:04:24,137.137 INFO    ] time= 25/08/2026 10:04:24
[2026-08-25 10:04:24,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:04:24,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:04:24,335.335 INFO    ] No existing commands found in stream
[2026-08-25 10:04:29,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:04:29,364.364 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 10:04:31,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:04:31,175.175 INFO    ] Checking for system updates...
[2026-08-25 10:04:31,212.212 INFO    ] 200
[2026-08-25 10:04:31,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:31,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:04:31,277.277 INFO    ] No update needed
[2026-08-25 10:04:31,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 10:04:31,315.315 INFO    ] 200
[2026-08-25 10:04:31,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:31,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:04:31,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:04:31,439.439 INFO    ] No camera update needed
[2026-08-25 10:04:31,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:04:31,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:04:31,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:04:31,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:04:33,501.501 INFO    ] ================================================
[2026-08-25 10:04:33,516.516 INFO    ] Launching Daemon at Tue Aug 25 10:04:33 IST 2026
[2026-08-25 10:04:33,528.528 INFO    ] ================================================
[2026-08-25 10:04:34,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:04:34
[2026-08-25 10:04:34,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:04:34,992.992 INFO    ] Initializing speech engine...
[2026-08-25 10:04:35,015.015 INFO    ] 2026-08-25 10:04:35
[2026-08-25 10:04:35,270.270 INFO    ] 2026-08-25 10:04:35
[2026-08-25 10:04:35,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:04:35,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:04:35,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:04:35,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:04:35,724.724 INFO    ] time= 25/08/2026 10:04:35
[2026-08-25 10:04:35,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:04:35,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:04:35,976.976 INFO    ] No existing commands found in stream
[2026-08-25 10:04:41,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:04:41,007.007 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 10:04:43,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:04:43,173.173 INFO    ] Checking for system updates...
[2026-08-25 10:04:43,208.208 INFO    ] 200
[2026-08-25 10:04:43,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:43,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:04:43,271.271 INFO    ] No update needed
[2026-08-25 10:04:43,274.274 INFO    ] Checking for camera pi updates...
[2026-08-25 10:04:43,308.308 INFO    ] 200
[2026-08-25 10:04:43,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:43,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:04:43,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:04:43,504.504 INFO    ] No camera update needed
[2026-08-25 10:04:43,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:04:43,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:04:43,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:04:43,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:04:45,562.562 INFO    ] ================================================
[2026-08-25 10:04:45,578.578 INFO    ] Launching Daemon at Tue Aug 25 10:04:45 IST 2026
[2026-08-25 10:04:45,589.589 INFO    ] ================================================
[2026-08-25 10:04:46,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:04:46
[2026-08-25 10:04:46,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:04:46,988.988 INFO    ] Initializing speech engine...
[2026-08-25 10:04:47,011.011 INFO    ] 2026-08-25 10:04:46
[2026-08-25 10:04:47,266.266 INFO    ] 2026-08-25 10:04:47
[2026-08-25 10:04:47,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:04:47,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:04:47,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:04:47,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:04:47,642.642 INFO    ] time= 25/08/2026 10:04:47
[2026-08-25 10:04:47,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:04:47,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:04:47,805.805 INFO    ] No existing commands found in stream
[2026-08-25 10:04:52,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:04:52,838.838 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 10:04:55,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:04:55,743.743 INFO    ] Checking for system updates...
[2026-08-25 10:04:55,779.779 INFO    ] 200
[2026-08-25 10:04:55,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:55,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:04:55,835.835 INFO    ] No update needed
[2026-08-25 10:04:55,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 10:04:55,872.872 INFO    ] 200
[2026-08-25 10:04:55,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:04:55,915.915 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:04:55,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:04:55,965.965 INFO    ] No camera update needed
[2026-08-25 10:04:55,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:04:55,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:04:55,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:04:55,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:04:58,020.020 INFO    ] ================================================
[2026-08-25 10:04:58,036.036 INFO    ] Launching Daemon at Tue Aug 25 10:04:58 IST 2026
[2026-08-25 10:04:58,047.047 INFO    ] ================================================
[2026-08-25 10:04:58,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:04:58
[2026-08-25 10:04:59,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:04:59,580.580 INFO    ] Initializing speech engine...
[2026-08-25 10:04:59,587.587 INFO    ] 2026-08-25 10:04:59
[2026-08-25 10:04:59,834.834 INFO    ] 2026-08-25 10:04:59
[2026-08-25 10:04:59,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:05:00,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:05:00,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:05:00,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:05:00,293.293 INFO    ] time= 25/08/2026 10:05:00
[2026-08-25 10:05:00,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:05:00,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:05:00,544.544 INFO    ] No existing commands found in stream
[2026-08-25 10:05:05,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:05:05,570.570 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 10:05:06,933.933 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:05:06,937.937 INFO    ] Checking for system updates...
[2026-08-25 10:05:06,986.986 INFO    ] 200
[2026-08-25 10:05:06,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:07,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:05:07,046.046 INFO    ] No update needed
[2026-08-25 10:05:07,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 10:05:07,082.082 INFO    ] 200
[2026-08-25 10:05:07,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:07,132.132 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:05:07,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:05:07,236.236 INFO    ] No camera update needed
[2026-08-25 10:05:07,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:05:07,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:05:07,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:05:07,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:05:09,290.290 INFO    ] ================================================
[2026-08-25 10:05:09,306.306 INFO    ] Launching Daemon at Tue Aug 25 10:05:09 IST 2026
[2026-08-25 10:05:09,317.317 INFO    ] ================================================
[2026-08-25 10:05:09,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:05:09
[2026-08-25 10:05:10,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:05:10,720.720 INFO    ] Initializing speech engine...
[2026-08-25 10:05:10,730.730 INFO    ] 2026-08-25 10:05:10
[2026-08-25 10:05:11,020.020 INFO    ] 2026-08-25 10:05:10
[2026-08-25 10:05:11,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:05:11,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:05:11,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:05:11,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:05:11,391.391 INFO    ] time= 25/08/2026 10:05:11
[2026-08-25 10:05:11,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:05:11,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:05:11,512.512 INFO    ] No existing commands found in stream
[2026-08-25 10:05:16,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:05:16,528.528 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 10:05:17,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:05:17,704.704 INFO    ] Checking for system updates...
[2026-08-25 10:05:17,743.743 INFO    ] 200
[2026-08-25 10:05:17,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:17,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:05:17,806.806 INFO    ] No update needed
[2026-08-25 10:05:17,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 10:05:17,843.843 INFO    ] 200
[2026-08-25 10:05:17,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:17,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:05:17,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:05:17,936.936 INFO    ] No camera update needed
[2026-08-25 10:05:17,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:05:17,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:05:17,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:05:17,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:05:19,993.993 INFO    ] ================================================
[2026-08-25 10:05:20,009.009 INFO    ] Launching Daemon at Tue Aug 25 10:05:20 IST 2026
[2026-08-25 10:05:20,021.021 INFO    ] ================================================
[2026-08-25 10:05:20,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:05:20
[2026-08-25 10:05:21,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:05:21,466.466 INFO    ] Initializing speech engine...
[2026-08-25 10:05:21,475.475 INFO    ] 2026-08-25 10:05:21
[2026-08-25 10:05:21,736.736 INFO    ] 2026-08-25 10:05:21
[2026-08-25 10:05:21,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:05:22,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:05:22,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:05:22,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:05:22,223.223 INFO    ] time= 25/08/2026 10:05:22
[2026-08-25 10:05:22,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:05:22,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:05:22,416.416 INFO    ] No existing commands found in stream
[2026-08-25 10:05:27,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:05:27,444.444 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 10:05:29,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:05:29,295.295 INFO    ] Checking for system updates...
[2026-08-25 10:05:29,331.331 INFO    ] 200
[2026-08-25 10:05:29,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:29,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:05:29,394.394 INFO    ] No update needed
[2026-08-25 10:05:29,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 10:05:29,430.430 INFO    ] 200
[2026-08-25 10:05:29,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:29,474.474 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:05:29,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:05:29,525.525 INFO    ] No camera update needed
[2026-08-25 10:05:29,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:05:29,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:05:29,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:05:29,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:05:31,583.583 INFO    ] ================================================
[2026-08-25 10:05:31,603.603 INFO    ] Launching Daemon at Tue Aug 25 10:05:31 IST 2026
[2026-08-25 10:05:31,616.616 INFO    ] ================================================
[2026-08-25 10:05:32,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:05:32
[2026-08-25 10:05:32,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:05:33,230.230 INFO    ] Initializing speech engine...
[2026-08-25 10:05:33,239.239 INFO    ] 2026-08-25 10:05:33
[2026-08-25 10:05:33,504.504 INFO    ] 2026-08-25 10:05:33
[2026-08-25 10:05:33,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:05:33,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:05:33,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:05:33,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:05:33,987.987 INFO    ] time= 25/08/2026 10:05:33
[2026-08-25 10:05:34,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:05:34,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:05:34,191.191 INFO    ] No existing commands found in stream
[2026-08-25 10:05:39,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:05:39,215.215 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 10:05:42,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:05:42,087.087 INFO    ] Checking for system updates...
[2026-08-25 10:05:42,123.123 INFO    ] 200
[2026-08-25 10:05:42,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:42,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:05:42,180.180 INFO    ] No update needed
[2026-08-25 10:05:42,182.182 INFO    ] Checking for camera pi updates...
[2026-08-25 10:05:42,215.215 INFO    ] 200
[2026-08-25 10:05:42,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:42,257.257 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:05:42,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:05:42,306.306 INFO    ] No camera update needed
[2026-08-25 10:05:42,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:05:42,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:05:42,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:05:42,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:05:44,360.360 INFO    ] ================================================
[2026-08-25 10:05:44,375.375 INFO    ] Launching Daemon at Tue Aug 25 10:05:44 IST 2026
[2026-08-25 10:05:44,387.387 INFO    ] ================================================
[2026-08-25 10:05:45,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:05:45
[2026-08-25 10:05:45,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:05:45,943.943 INFO    ] Initializing speech engine...
[2026-08-25 10:05:45,950.950 INFO    ] 2026-08-25 10:05:45
[2026-08-25 10:05:46,231.231 INFO    ] 2026-08-25 10:05:46
[2026-08-25 10:05:46,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:05:46,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:05:46,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:05:46,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:05:46,762.762 INFO    ] time= 25/08/2026 10:05:46
[2026-08-25 10:05:46,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:05:46,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:05:46,919.919 INFO    ] No existing commands found in stream
[2026-08-25 10:05:51,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:05:51,937.937 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 10:05:55,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:05:55,723.723 INFO    ] Checking for system updates...
[2026-08-25 10:05:55,758.758 INFO    ] 200
[2026-08-25 10:05:55,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:55,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:05:55,814.814 INFO    ] No update needed
[2026-08-25 10:05:55,816.816 INFO    ] Checking for camera pi updates...
[2026-08-25 10:05:55,849.849 INFO    ] 200
[2026-08-25 10:05:55,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:05:55,893.893 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:05:55,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:05:55,949.949 INFO    ] No camera update needed
[2026-08-25 10:05:55,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:05:55,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:05:55,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:05:55,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:05:58,006.006 INFO    ] ================================================
[2026-08-25 10:05:58,021.021 INFO    ] Launching Daemon at Tue Aug 25 10:05:58 IST 2026
[2026-08-25 10:05:58,033.033 INFO    ] ================================================
[2026-08-25 10:05:58,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:05:58
[2026-08-25 10:05:59,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:05:59,590.590 INFO    ] Initializing speech engine...
[2026-08-25 10:05:59,598.598 INFO    ] 2026-08-25 10:05:59
[2026-08-25 10:05:59,876.876 INFO    ] 2026-08-25 10:05:59
[2026-08-25 10:05:59,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:06:00,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:06:00,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:06:00,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:06:00,339.339 INFO    ] time= 25/08/2026 10:06:00
[2026-08-25 10:06:00,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:06:00,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:06:00,562.562 INFO    ] No existing commands found in stream
[2026-08-25 10:06:05,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:06:05,576.576 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 10:06:08,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:06:08,158.158 INFO    ] Checking for system updates...
[2026-08-25 10:06:08,195.195 INFO    ] 200
[2026-08-25 10:06:08,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:08,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:06:08,254.254 INFO    ] No update needed
[2026-08-25 10:06:08,256.256 INFO    ] Checking for camera pi updates...
[2026-08-25 10:06:08,291.291 INFO    ] 200
[2026-08-25 10:06:08,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:08,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:06:08,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:06:08,384.384 INFO    ] No camera update needed
[2026-08-25 10:06:08,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:06:08,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:06:08,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:06:08,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:06:10,439.439 INFO    ] ================================================
[2026-08-25 10:06:10,454.454 INFO    ] Launching Daemon at Tue Aug 25 10:06:10 IST 2026
[2026-08-25 10:06:10,465.465 INFO    ] ================================================
[2026-08-25 10:06:11,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:06:11
[2026-08-25 10:06:11,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:06:11,874.874 INFO    ] Initializing speech engine...
[2026-08-25 10:06:11,894.894 INFO    ] 2026-08-25 10:06:11
[2026-08-25 10:06:12,149.149 INFO    ] 2026-08-25 10:06:12
[2026-08-25 10:06:12,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:06:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:06:12,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:06:12,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:06:12,510.510 INFO    ] time= 25/08/2026 10:06:12
[2026-08-25 10:06:12,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:06:12,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:06:12,602.602 INFO    ] No existing commands found in stream
[2026-08-25 10:06:17,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:06:17,640.640 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 10:06:18,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:06:18,894.894 INFO    ] Checking for system updates...
[2026-08-25 10:06:18,937.937 INFO    ] 200
[2026-08-25 10:06:18,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:19,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:06:19,005.005 INFO    ] No update needed
[2026-08-25 10:06:19,008.008 INFO    ] Checking for camera pi updates...
[2026-08-25 10:06:19,045.045 INFO    ] 200
[2026-08-25 10:06:19,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:19,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:06:19,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:06:19,145.145 INFO    ] No camera update needed
[2026-08-25 10:06:19,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:06:19,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:06:19,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:06:19,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:06:21,202.202 INFO    ] ================================================
[2026-08-25 10:06:21,218.218 INFO    ] Launching Daemon at Tue Aug 25 10:06:21 IST 2026
[2026-08-25 10:06:21,230.230 INFO    ] ================================================
[2026-08-25 10:06:21,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:06:21
[2026-08-25 10:06:22,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:06:22,708.708 INFO    ] Initializing speech engine...
[2026-08-25 10:06:22,715.715 INFO    ] 2026-08-25 10:06:22
[2026-08-25 10:06:22,974.974 INFO    ] 2026-08-25 10:06:22
[2026-08-25 10:06:23,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:06:23,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:06:23,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:06:23,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:06:23,348.348 INFO    ] time= 25/08/2026 10:06:23
[2026-08-25 10:06:23,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:06:23,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:06:23,475.475 INFO    ] No existing commands found in stream
[2026-08-25 10:06:28,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:06:28,489.489 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 10:06:32,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:06:32,554.554 INFO    ] Checking for system updates...
[2026-08-25 10:06:32,591.591 INFO    ] 200
[2026-08-25 10:06:32,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:32,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:06:32,658.658 INFO    ] No update needed
[2026-08-25 10:06:32,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 10:06:32,702.702 INFO    ] 200
[2026-08-25 10:06:32,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:32,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:06:32,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:06:32,799.799 INFO    ] No camera update needed
[2026-08-25 10:06:32,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:06:32,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:06:32,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:06:32,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:06:34,858.858 INFO    ] ================================================
[2026-08-25 10:06:34,874.874 INFO    ] Launching Daemon at Tue Aug 25 10:06:34 IST 2026
[2026-08-25 10:06:34,886.886 INFO    ] ================================================
[2026-08-25 10:06:35,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:06:35
[2026-08-25 10:06:36,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:06:36,542.542 INFO    ] Initializing speech engine...
[2026-08-25 10:06:36,555.555 INFO    ] 2026-08-25 10:06:36
[2026-08-25 10:06:36,867.867 INFO    ] 2026-08-25 10:06:36
[2026-08-25 10:06:36,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:06:37,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:06:37,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:06:37,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:06:37,376.376 INFO    ] time= 25/08/2026 10:06:37
[2026-08-25 10:06:37,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:06:37,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:06:37,535.535 INFO    ] No existing commands found in stream
[2026-08-25 10:06:42,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:06:42,570.570 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 10:06:45,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:06:45,603.603 INFO    ] Checking for system updates...
[2026-08-25 10:06:45,638.638 INFO    ] 200
[2026-08-25 10:06:45,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:45,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:06:45,696.696 INFO    ] No update needed
[2026-08-25 10:06:45,699.699 INFO    ] Checking for camera pi updates...
[2026-08-25 10:06:45,736.736 INFO    ] 200
[2026-08-25 10:06:45,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:45,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:06:45,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:06:45,923.923 INFO    ] No camera update needed
[2026-08-25 10:06:45,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:06:45,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:06:45,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:06:45,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:06:47,978.978 INFO    ] ================================================
[2026-08-25 10:06:48,994.994 INFO    ] Launching Daemon at Tue Aug 25 10:06:47 IST 2026
[2026-08-25 10:06:48,006.006 INFO    ] ================================================
[2026-08-25 10:06:48,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:06:48
[2026-08-25 10:06:49,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:06:49,480.480 INFO    ] Initializing speech engine...
[2026-08-25 10:06:49,495.495 INFO    ] 2026-08-25 10:06:49
[2026-08-25 10:06:49,757.757 INFO    ] 2026-08-25 10:06:49
[2026-08-25 10:06:49,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:06:50,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:06:50,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:06:50,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:06:50,227.227 INFO    ] time= 25/08/2026 10:06:50
[2026-08-25 10:06:50,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:06:50,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:06:50,443.443 INFO    ] No existing commands found in stream
[2026-08-25 10:06:55,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:06:55,469.469 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 10:06:57,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:06:57,370.370 INFO    ] Checking for system updates...
[2026-08-25 10:06:57,409.409 INFO    ] 200
[2026-08-25 10:06:57,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:57,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:06:57,466.466 INFO    ] No update needed
[2026-08-25 10:06:57,468.468 INFO    ] Checking for camera pi updates...
[2026-08-25 10:06:57,506.506 INFO    ] 200
[2026-08-25 10:06:57,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:06:57,549.549 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:06:57,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:06:57,598.598 INFO    ] No camera update needed
[2026-08-25 10:06:57,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:06:57,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:06:57,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:06:57,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:06:59,653.653 INFO    ] ================================================
[2026-08-25 10:06:59,669.669 INFO    ] Launching Daemon at Tue Aug 25 10:06:59 IST 2026
[2026-08-25 10:06:59,681.681 INFO    ] ================================================
[2026-08-25 10:07:00,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:07:00
[2026-08-25 10:07:00,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:07:01,530.530 INFO    ] Initializing speech engine...
[2026-08-25 10:07:01,560.560 INFO    ] 2026-08-25 10:07:01
[2026-08-25 10:07:01,967.967 INFO    ] 2026-08-25 10:07:01
[2026-08-25 10:07:02,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:07:02,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:07:02,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:07:02,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:07:02,563.563 INFO    ] time= 25/08/2026 10:07:02
[2026-08-25 10:07:02,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:07:02,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:07:02,786.786 INFO    ] No existing commands found in stream
[2026-08-25 10:07:07,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:07:07,811.811 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 10:07:09,202.202 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:07:09,205.205 INFO    ] Checking for system updates...
[2026-08-25 10:07:09,241.241 INFO    ] 200
[2026-08-25 10:07:09,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:09,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:07:09,299.299 INFO    ] No update needed
[2026-08-25 10:07:09,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 10:07:09,339.339 INFO    ] 200
[2026-08-25 10:07:09,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:09,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:07:09,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:07:09,444.444 INFO    ] No camera update needed
[2026-08-25 10:07:09,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:07:09,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:07:09,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:07:09,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:07:11,500.500 INFO    ] ================================================
[2026-08-25 10:07:11,517.517 INFO    ] Launching Daemon at Tue Aug 25 10:07:11 IST 2026
[2026-08-25 10:07:11,527.527 INFO    ] ================================================
[2026-08-25 10:07:12,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:07:12
[2026-08-25 10:07:12,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:07:13,066.066 INFO    ] Initializing speech engine...
[2026-08-25 10:07:13,077.077 INFO    ] 2026-08-25 10:07:13
[2026-08-25 10:07:13,345.345 INFO    ] 2026-08-25 10:07:13
[2026-08-25 10:07:13,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:07:13,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:07:13,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:07:13,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:07:13,851.851 INFO    ] time= 25/08/2026 10:07:13
[2026-08-25 10:07:13,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:07:13,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:07:14,064.064 INFO    ] No existing commands found in stream
[2026-08-25 10:07:19,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:07:19,090.090 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 10:07:21,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:07:21,151.151 INFO    ] Checking for system updates...
[2026-08-25 10:07:21,191.191 INFO    ] 200
[2026-08-25 10:07:21,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:21,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:07:21,249.249 INFO    ] No update needed
[2026-08-25 10:07:21,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 10:07:21,289.289 INFO    ] 200
[2026-08-25 10:07:21,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:21,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:07:21,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:07:21,386.386 INFO    ] No camera update needed
[2026-08-25 10:07:21,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:07:21,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:07:21,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:07:21,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:07:23,440.440 INFO    ] ================================================
[2026-08-25 10:07:23,456.456 INFO    ] Launching Daemon at Tue Aug 25 10:07:23 IST 2026
[2026-08-25 10:07:23,466.466 INFO    ] ================================================
[2026-08-25 10:07:24,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:07:24
[2026-08-25 10:07:24,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:07:24,917.917 INFO    ] Initializing speech engine...
[2026-08-25 10:07:24,929.929 INFO    ] 2026-08-25 10:07:24
[2026-08-25 10:07:25,239.239 INFO    ] 2026-08-25 10:07:25
[2026-08-25 10:07:25,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:07:25,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:07:25,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:07:25,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:07:25,747.747 INFO    ] time= 25/08/2026 10:07:25
[2026-08-25 10:07:25,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:07:25,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:07:25,901.901 INFO    ] No existing commands found in stream
[2026-08-25 10:07:30,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:07:30,919.919 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 10:07:32,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:07:32,335.335 INFO    ] Checking for system updates...
[2026-08-25 10:07:32,370.370 INFO    ] 200
[2026-08-25 10:07:32,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:32,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:07:32,436.436 INFO    ] No update needed
[2026-08-25 10:07:32,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 10:07:32,476.476 INFO    ] 200
[2026-08-25 10:07:32,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:32,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:07:32,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:07:32,568.568 INFO    ] No camera update needed
[2026-08-25 10:07:32,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:07:32,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:07:32,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:07:32,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:07:34,622.622 INFO    ] ================================================
[2026-08-25 10:07:34,638.638 INFO    ] Launching Daemon at Tue Aug 25 10:07:34 IST 2026
[2026-08-25 10:07:34,649.649 INFO    ] ================================================
[2026-08-25 10:07:35,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:07:35
[2026-08-25 10:07:35,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:07:36,072.072 INFO    ] Initializing speech engine...
[2026-08-25 10:07:36,081.081 INFO    ] 2026-08-25 10:07:36
[2026-08-25 10:07:36,341.341 INFO    ] 2026-08-25 10:07:36
[2026-08-25 10:07:36,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:07:36,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:07:36,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:07:36,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:07:36,824.824 INFO    ] time= 25/08/2026 10:07:36
[2026-08-25 10:07:36,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:07:36,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:07:37,023.023 INFO    ] No existing commands found in stream
[2026-08-25 10:07:42,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:07:42,050.050 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 10:07:42,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:07:42,854.854 INFO    ] Checking for system updates...
[2026-08-25 10:07:42,890.890 INFO    ] 200
[2026-08-25 10:07:42,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:42,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:07:42,948.948 INFO    ] No update needed
[2026-08-25 10:07:42,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 10:07:42,985.985 INFO    ] 200
[2026-08-25 10:07:42,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:43,034.034 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:07:43,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:07:43,093.093 INFO    ] No camera update needed
[2026-08-25 10:07:43,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:07:43,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:07:43,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:07:43,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:07:45,149.149 INFO    ] ================================================
[2026-08-25 10:07:45,165.165 INFO    ] Launching Daemon at Tue Aug 25 10:07:45 IST 2026
[2026-08-25 10:07:45,176.176 INFO    ] ================================================
[2026-08-25 10:07:45,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:07:45
[2026-08-25 10:07:46,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:07:46,815.815 INFO    ] Initializing speech engine...
[2026-08-25 10:07:46,833.833 INFO    ] 2026-08-25 10:07:46
[2026-08-25 10:07:47,078.078 INFO    ] 2026-08-25 10:07:47
[2026-08-25 10:07:47,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:07:47,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:07:47,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:07:47,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:07:47,541.541 INFO    ] time= 25/08/2026 10:07:47
[2026-08-25 10:07:47,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:07:47,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:07:47,775.775 INFO    ] No existing commands found in stream
[2026-08-25 10:07:52,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:07:52,797.797 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 10:07:56,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:07:56,320.320 INFO    ] Checking for system updates...
[2026-08-25 10:07:56,356.356 INFO    ] 200
[2026-08-25 10:07:56,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:56,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:07:56,421.421 INFO    ] No update needed
[2026-08-25 10:07:56,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 10:07:56,457.457 INFO    ] 200
[2026-08-25 10:07:56,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:07:56,506.506 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:07:56,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:07:56,555.555 INFO    ] No camera update needed
[2026-08-25 10:07:56,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:07:56,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:07:56,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:07:56,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:07:58,611.611 INFO    ] ================================================
[2026-08-25 10:07:58,627.627 INFO    ] Launching Daemon at Tue Aug 25 10:07:58 IST 2026
[2026-08-25 10:07:58,638.638 INFO    ] ================================================
[2026-08-25 10:07:59,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:07:59
[2026-08-25 10:07:59,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:08:00,044.044 INFO    ] Initializing speech engine...
[2026-08-25 10:08:00,058.058 INFO    ] 2026-08-25 10:08:00
[2026-08-25 10:08:00,309.309 INFO    ] 2026-08-25 10:08:00
[2026-08-25 10:08:00,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:08:00,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:08:00,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:08:00,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:08:00,680.680 INFO    ] time= 25/08/2026 10:08:00
[2026-08-25 10:08:00,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:08:00,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:08:00,874.874 INFO    ] No existing commands found in stream
[2026-08-25 10:08:05,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:08:05,888.888 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 10:08:06,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:08:06,517.517 INFO    ] Checking for system updates...
[2026-08-25 10:08:06,555.555 INFO    ] 200
[2026-08-25 10:08:06,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:06,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:06,611.611 INFO    ] No update needed
[2026-08-25 10:08:06,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 10:08:06,647.647 INFO    ] 200
[2026-08-25 10:08:06,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:06,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:08:06,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:06,737.737 INFO    ] No camera update needed
[2026-08-25 10:08:06,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:08:06,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:08:06,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:08:06,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:08:08,790.790 INFO    ] ================================================
[2026-08-25 10:08:08,808.808 INFO    ] Launching Daemon at Tue Aug 25 10:08:08 IST 2026
[2026-08-25 10:08:08,819.819 INFO    ] ================================================
[2026-08-25 10:08:09,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:08:09
[2026-08-25 10:08:09,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:08:10,234.234 INFO    ] Initializing speech engine...
[2026-08-25 10:08:10,246.246 INFO    ] 2026-08-25 10:08:10
[2026-08-25 10:08:10,497.497 INFO    ] 2026-08-25 10:08:10
[2026-08-25 10:08:10,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:08:10,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:08:10,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:08:10,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:08:10,992.992 INFO    ] time= 25/08/2026 10:08:10
[2026-08-25 10:08:11,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:08:11,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:08:11,214.214 INFO    ] No existing commands found in stream
[2026-08-25 10:08:16,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:08:16,236.236 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 10:08:19,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:08:19,858.858 INFO    ] Checking for system updates...
[2026-08-25 10:08:19,897.897 INFO    ] 200
[2026-08-25 10:08:19,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:19,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:19,955.955 INFO    ] No update needed
[2026-08-25 10:08:19,958.958 INFO    ] Checking for camera pi updates...
[2026-08-25 10:08:20,011.011 INFO    ] 200
[2026-08-25 10:08:20,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:20,060.060 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:08:20,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:20,107.107 INFO    ] No camera update needed
[2026-08-25 10:08:20,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:08:20,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:08:20,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:08:20,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:08:22,161.161 INFO    ] ================================================
[2026-08-25 10:08:22,177.177 INFO    ] Launching Daemon at Tue Aug 25 10:08:22 IST 2026
[2026-08-25 10:08:22,187.187 INFO    ] ================================================
[2026-08-25 10:08:22,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:08:22
[2026-08-25 10:08:23,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:08:23,651.651 INFO    ] Initializing speech engine...
[2026-08-25 10:08:23,658.658 INFO    ] 2026-08-25 10:08:23
[2026-08-25 10:08:23,918.918 INFO    ] 2026-08-25 10:08:23
[2026-08-25 10:08:23,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:08:24,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:08:24,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:08:24,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:08:24,386.386 INFO    ] time= 25/08/2026 10:08:24
[2026-08-25 10:08:24,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:08:24,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:08:24,594.594 INFO    ] No existing commands found in stream
[2026-08-25 10:08:29,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:08:29,622.622 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 10:08:31,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:08:31,685.685 INFO    ] Checking for system updates...
[2026-08-25 10:08:31,730.730 INFO    ] 200
[2026-08-25 10:08:31,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:31,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:08:31,797.797 INFO    ] No update needed
[2026-08-25 10:08:31,800.800 INFO    ] Checking for camera pi updates...
[2026-08-25 10:08:31,842.842 INFO    ] 200
[2026-08-25 10:08:31,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:31,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:08:31,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:08:31,960.960 INFO    ] No camera update needed
[2026-08-25 10:08:31,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:08:31,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:08:31,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:08:31,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:08:34,017.017 INFO    ] ================================================
[2026-08-25 10:08:34,032.032 INFO    ] Launching Daemon at Tue Aug 25 10:08:34 IST 2026
[2026-08-25 10:08:34,043.043 INFO    ] ================================================
[2026-08-25 10:08:34,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:08:34
[2026-08-25 10:08:35,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:08:35,501.501 INFO    ] Initializing speech engine...
[2026-08-25 10:08:35,510.510 INFO    ] 2026-08-25 10:08:35
[2026-08-25 10:08:35,773.773 INFO    ] 2026-08-25 10:08:35
[2026-08-25 10:08:35,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:08:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:08:36,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:08:36,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:08:36,153.153 INFO    ] time= 25/08/2026 10:08:36
[2026-08-25 10:08:36,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:08:36,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:08:36,281.281 INFO    ] No existing commands found in stream
[2026-08-25 10:08:41,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:08:41,296.296 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 10:08:45,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:08:45,188.188 INFO    ] Checking for system updates...
[2026-08-25 10:08:45,228.228 INFO    ] 200
[2026-08-25 10:08:45,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:45,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:45,287.287 INFO    ] No update needed
[2026-08-25 10:08:45,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 10:08:45,322.322 INFO    ] 200
[2026-08-25 10:08:45,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:45,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:08:45,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:45,417.417 INFO    ] No camera update needed
[2026-08-25 10:08:45,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:08:45,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:08:45,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:08:45,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:08:47,472.472 INFO    ] ================================================
[2026-08-25 10:08:47,487.487 INFO    ] Launching Daemon at Tue Aug 25 10:08:47 IST 2026
[2026-08-25 10:08:47,499.499 INFO    ] ================================================
[2026-08-25 10:08:48,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:08:48
[2026-08-25 10:08:48,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:08:49,127.127 INFO    ] Initializing speech engine...
[2026-08-25 10:08:49,132.132 INFO    ] 2026-08-25 10:08:49
[2026-08-25 10:08:49,378.378 INFO    ] 2026-08-25 10:08:49
[2026-08-25 10:08:49,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:08:49,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:08:49,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:08:49,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:08:49,847.847 INFO    ] time= 25/08/2026 10:08:49
[2026-08-25 10:08:49,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:08:49,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:08:50,085.085 INFO    ] No existing commands found in stream
[2026-08-25 10:08:55,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:08:55,114.114 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 10:08:57,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:08:57,170.170 INFO    ] Checking for system updates...
[2026-08-25 10:08:57,206.206 INFO    ] 200
[2026-08-25 10:08:57,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:57,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:57,273.273 INFO    ] No update needed
[2026-08-25 10:08:57,276.276 INFO    ] Checking for camera pi updates...
[2026-08-25 10:08:57,312.312 INFO    ] 200
[2026-08-25 10:08:57,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:08:57,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:08:57,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:08:57,508.508 INFO    ] No camera update needed
[2026-08-25 10:08:57,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:08:57,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:08:57,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:08:57,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:08:59,566.566 INFO    ] ================================================
[2026-08-25 10:08:59,581.581 INFO    ] Launching Daemon at Tue Aug 25 10:08:59 IST 2026
[2026-08-25 10:08:59,592.592 INFO    ] ================================================
[2026-08-25 10:09:00,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:09:00
[2026-08-25 10:09:00,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:09:01,437.437 INFO    ] Initializing speech engine...
[2026-08-25 10:09:01,440.440 INFO    ] 2026-08-25 10:09:01
[2026-08-25 10:09:01,816.816 INFO    ] 2026-08-25 10:09:01
[2026-08-25 10:09:01,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:09:02,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:09:02,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:09:02,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:09:02,291.291 INFO    ] time= 25/08/2026 10:09:02
[2026-08-25 10:09:02,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:09:02,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:09:02,439.439 INFO    ] No existing commands found in stream
[2026-08-25 10:09:07,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:09:07,475.475 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 10:09:10,064.064 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:09:10,067.067 INFO    ] Checking for system updates...
[2026-08-25 10:09:10,102.102 INFO    ] 200
[2026-08-25 10:09:10,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:10,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:09:10,167.167 INFO    ] No update needed
[2026-08-25 10:09:10,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 10:09:10,204.204 INFO    ] 200
[2026-08-25 10:09:10,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:10,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:09:10,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:09:10,319.319 INFO    ] No camera update needed
[2026-08-25 10:09:10,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:09:10,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:09:10,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:09:10,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:09:12,374.374 INFO    ] ================================================
[2026-08-25 10:09:12,389.389 INFO    ] Launching Daemon at Tue Aug 25 10:09:12 IST 2026
[2026-08-25 10:09:12,399.399 INFO    ] ================================================
[2026-08-25 10:09:12,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:09:12
[2026-08-25 10:09:13,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:09:13,823.823 INFO    ] Initializing speech engine...
[2026-08-25 10:09:13,836.836 INFO    ] 2026-08-25 10:09:13
[2026-08-25 10:09:14,098.098 INFO    ] 2026-08-25 10:09:14
[2026-08-25 10:09:14,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:09:14,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:09:14,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:09:14,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:09:14,472.472 INFO    ] time= 25/08/2026 10:09:14
[2026-08-25 10:09:14,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:09:14,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:09:14,594.594 INFO    ] No existing commands found in stream
[2026-08-25 10:09:19,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:09:19,610.610 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 10:09:23,914.914 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:09:23,917.917 INFO    ] Checking for system updates...
[2026-08-25 10:09:23,956.956 INFO    ] 200
[2026-08-25 10:09:23,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:24,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:09:24,018.018 INFO    ] No update needed
[2026-08-25 10:09:24,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 10:09:24,053.053 INFO    ] 200
[2026-08-25 10:09:24,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:24,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:09:24,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:09:24,147.147 INFO    ] No camera update needed
[2026-08-25 10:09:24,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:09:24,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:09:24,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:09:24,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:09:26,201.201 INFO    ] ================================================
[2026-08-25 10:09:26,217.217 INFO    ] Launching Daemon at Tue Aug 25 10:09:26 IST 2026
[2026-08-25 10:09:26,228.228 INFO    ] ================================================
[2026-08-25 10:09:26,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:09:26
[2026-08-25 10:09:27,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:09:27,817.817 INFO    ] Initializing speech engine...
[2026-08-25 10:09:27,823.823 INFO    ] 2026-08-25 10:09:27
[2026-08-25 10:09:28,096.096 INFO    ] 2026-08-25 10:09:28
[2026-08-25 10:09:28,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:09:28,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:09:28,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:09:28,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:09:28,567.567 INFO    ] time= 25/08/2026 10:09:28
[2026-08-25 10:09:28,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:09:28,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:09:28,798.798 INFO    ] No existing commands found in stream
[2026-08-25 10:09:33,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:09:33,834.834 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 10:09:36,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:09:36,803.803 INFO    ] Checking for system updates...
[2026-08-25 10:09:36,840.840 INFO    ] 200
[2026-08-25 10:09:36,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:36,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:09:36,907.907 INFO    ] No update needed
[2026-08-25 10:09:36,909.909 INFO    ] Checking for camera pi updates...
[2026-08-25 10:09:36,942.942 INFO    ] 200
[2026-08-25 10:09:36,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:36,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:09:37,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:09:37,045.045 INFO    ] No camera update needed
[2026-08-25 10:09:37,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:09:37,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:09:37,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:09:37,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:09:39,100.100 INFO    ] ================================================
[2026-08-25 10:09:39,116.116 INFO    ] Launching Daemon at Tue Aug 25 10:09:39 IST 2026
[2026-08-25 10:09:39,126.126 INFO    ] ================================================
[2026-08-25 10:09:39,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:09:39
[2026-08-25 10:09:40,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:09:40,729.729 INFO    ] Initializing speech engine...
[2026-08-25 10:09:40,737.737 INFO    ] 2026-08-25 10:09:40
[2026-08-25 10:09:41,011.011 INFO    ] 2026-08-25 10:09:41
[2026-08-25 10:09:41,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:09:41,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:09:41,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:09:41,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:09:41,558.558 INFO    ] time= 25/08/2026 10:09:41
[2026-08-25 10:09:41,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:09:41,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:09:41,736.736 INFO    ] No existing commands found in stream
[2026-08-25 10:09:46,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:09:46,770.770 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 10:09:50,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:09:50,678.678 INFO    ] Checking for system updates...
[2026-08-25 10:09:50,715.715 INFO    ] 200
[2026-08-25 10:09:50,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:50,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:09:50,773.773 INFO    ] No update needed
[2026-08-25 10:09:50,776.776 INFO    ] Checking for camera pi updates...
[2026-08-25 10:09:50,810.810 INFO    ] 200
[2026-08-25 10:09:50,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:09:50,853.853 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:09:50,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:09:50,905.905 INFO    ] No camera update needed
[2026-08-25 10:09:50,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:09:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:09:50,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:09:50,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:09:52,963.963 INFO    ] ================================================
[2026-08-25 10:09:52,978.978 INFO    ] Launching Daemon at Tue Aug 25 10:09:52 IST 2026
[2026-08-25 10:09:52,988.988 INFO    ] ================================================
[2026-08-25 10:09:53,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:09:53
[2026-08-25 10:09:54,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:09:54,426.426 INFO    ] Initializing speech engine...
[2026-08-25 10:09:54,446.446 INFO    ] 2026-08-25 10:09:54
[2026-08-25 10:09:54,723.723 INFO    ] 2026-08-25 10:09:54
[2026-08-25 10:09:54,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:09:54,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:09:54,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:09:55,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:09:55,100.100 INFO    ] time= 25/08/2026 10:09:55
[2026-08-25 10:09:55,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:09:55,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:09:55,222.222 INFO    ] No existing commands found in stream
[2026-08-25 10:10:00,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:10:00,238.238 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 10:10:00,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:10:00,908.908 INFO    ] Checking for system updates...
[2026-08-25 10:10:00,948.948 INFO    ] 200
[2026-08-25 10:10:00,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:01,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:10:01,007.007 INFO    ] No update needed
[2026-08-25 10:10:01,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 10:10:01,045.045 INFO    ] 200
[2026-08-25 10:10:01,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:01,090.090 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:10:01,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:10:01,174.174 INFO    ] No camera update needed
[2026-08-25 10:10:01,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:10:01,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:10:01,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:10:01,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:10:03,281.281 INFO    ] ================================================
[2026-08-25 10:10:03,296.296 INFO    ] Launching Daemon at Tue Aug 25 10:10:03 IST 2026
[2026-08-25 10:10:03,306.306 INFO    ] ================================================
[2026-08-25 10:10:03,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:10:03
[2026-08-25 10:10:04,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:10:04,712.712 INFO    ] Initializing speech engine...
[2026-08-25 10:10:04,726.726 INFO    ] 2026-08-25 10:10:04
[2026-08-25 10:10:04,992.992 INFO    ] 2026-08-25 10:10:04
[2026-08-25 10:10:05,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:10:05,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:10:05,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:10:05,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:10:05,507.507 INFO    ] time= 25/08/2026 10:10:05
[2026-08-25 10:10:05,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:10:05,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:10:05,687.687 INFO    ] No existing commands found in stream
[2026-08-25 10:10:10,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:10:10,712.712 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 10:10:15,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:10:15,038.038 INFO    ] Checking for system updates...
[2026-08-25 10:10:15,078.078 INFO    ] 200
[2026-08-25 10:10:15,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:15,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:10:15,136.136 INFO    ] No update needed
[2026-08-25 10:10:15,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 10:10:15,171.171 INFO    ] 200
[2026-08-25 10:10:15,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:15,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:10:15,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:10:15,265.265 INFO    ] No camera update needed
[2026-08-25 10:10:15,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:10:15,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:10:15,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:10:15,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:10:17,322.322 INFO    ] ================================================
[2026-08-25 10:10:17,338.338 INFO    ] Launching Daemon at Tue Aug 25 10:10:17 IST 2026
[2026-08-25 10:10:17,348.348 INFO    ] ================================================
[2026-08-25 10:10:17,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:10:17
[2026-08-25 10:10:18,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:10:18,991.991 INFO    ] Initializing speech engine...
[2026-08-25 10:10:19,006.006 INFO    ] 2026-08-25 10:10:18
[2026-08-25 10:10:19,300.300 INFO    ] 2026-08-25 10:10:19
[2026-08-25 10:10:19,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:10:19,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:10:19,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:10:19,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:10:19,846.846 INFO    ] time= 25/08/2026 10:10:19
[2026-08-25 10:10:19,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:10:19,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:10:19,986.986 INFO    ] No existing commands found in stream
[2026-08-25 10:10:25,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:10:25,019.019 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 10:10:26,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:10:26,498.498 INFO    ] Checking for system updates...
[2026-08-25 10:10:26,533.533 INFO    ] 200
[2026-08-25 10:10:26,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:26,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:10:26,598.598 INFO    ] No update needed
[2026-08-25 10:10:26,600.600 INFO    ] Checking for camera pi updates...
[2026-08-25 10:10:26,634.634 INFO    ] 200
[2026-08-25 10:10:26,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:26,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:10:26,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:10:26,741.741 INFO    ] No camera update needed
[2026-08-25 10:10:26,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:10:26,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:10:26,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:10:26,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:10:28,796.796 INFO    ] ================================================
[2026-08-25 10:10:28,811.811 INFO    ] Launching Daemon at Tue Aug 25 10:10:28 IST 2026
[2026-08-25 10:10:28,822.822 INFO    ] ================================================
[2026-08-25 10:10:29,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:10:29
[2026-08-25 10:10:30,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:10:30,278.278 INFO    ] Initializing speech engine...
[2026-08-25 10:10:30,285.285 INFO    ] 2026-08-25 10:10:30
[2026-08-25 10:10:30,547.547 INFO    ] 2026-08-25 10:10:30
[2026-08-25 10:10:30,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:10:30,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:10:30,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:10:30,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:10:31,034.034 INFO    ] time= 25/08/2026 10:10:30
[2026-08-25 10:10:31,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:10:31,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:10:31,234.234 INFO    ] No existing commands found in stream
[2026-08-25 10:10:36,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:10:36,268.268 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 10:10:37,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:10:37,077.077 INFO    ] Checking for system updates...
[2026-08-25 10:10:37,113.113 INFO    ] 200
[2026-08-25 10:10:37,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:37,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:10:37,172.172 INFO    ] No update needed
[2026-08-25 10:10:37,175.175 INFO    ] Checking for camera pi updates...
[2026-08-25 10:10:37,212.212 INFO    ] 200
[2026-08-25 10:10:37,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:37,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:10:37,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:10:37,366.366 INFO    ] No camera update needed
[2026-08-25 10:10:37,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:10:37,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:10:37,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:10:37,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:10:39,423.423 INFO    ] ================================================
[2026-08-25 10:10:39,438.438 INFO    ] Launching Daemon at Tue Aug 25 10:10:39 IST 2026
[2026-08-25 10:10:39,449.449 INFO    ] ================================================
[2026-08-25 10:10:40,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:10:40
[2026-08-25 10:10:40,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:10:40,901.901 INFO    ] Initializing speech engine...
[2026-08-25 10:10:40,917.917 INFO    ] 2026-08-25 10:10:40
[2026-08-25 10:10:41,196.196 INFO    ] 2026-08-25 10:10:41
[2026-08-25 10:10:41,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:10:41,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:10:41,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:10:41,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:10:41,560.560 INFO    ] time= 25/08/2026 10:10:41
[2026-08-25 10:10:41,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:10:41,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:10:41,705.705 INFO    ] No existing commands found in stream
[2026-08-25 10:10:46,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:10:46,727.727 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 10:10:50,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:10:50,109.109 INFO    ] Checking for system updates...
[2026-08-25 10:10:50,149.149 INFO    ] 200
[2026-08-25 10:10:50,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:50,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:10:50,213.213 INFO    ] No update needed
[2026-08-25 10:10:50,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 10:10:50,252.252 INFO    ] 200
[2026-08-25 10:10:50,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:10:50,295.295 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:10:50,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:10:50,349.349 INFO    ] No camera update needed
[2026-08-25 10:10:50,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:10:50,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:10:50,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:10:50,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:10:52,405.405 INFO    ] ================================================
[2026-08-25 10:10:52,420.420 INFO    ] Launching Daemon at Tue Aug 25 10:10:52 IST 2026
[2026-08-25 10:10:52,431.431 INFO    ] ================================================
[2026-08-25 10:10:53,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:10:53
[2026-08-25 10:10:53,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:10:54,070.070 INFO    ] Initializing speech engine...
[2026-08-25 10:10:54,076.076 INFO    ] 2026-08-25 10:10:54
[2026-08-25 10:10:54,342.342 INFO    ] 2026-08-25 10:10:54
[2026-08-25 10:10:54,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:10:54,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:10:54,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:10:54,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:10:54,843.843 INFO    ] time= 25/08/2026 10:10:54
[2026-08-25 10:10:54,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:10:54,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:10:55,047.047 INFO    ] No existing commands found in stream
[2026-08-25 10:11:00,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:11:00,073.073 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 10:11:03,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:11:03,785.785 INFO    ] Checking for system updates...
[2026-08-25 10:11:03,825.825 INFO    ] 200
[2026-08-25 10:11:03,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:03,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:11:03,885.885 INFO    ] No update needed
[2026-08-25 10:11:03,888.888 INFO    ] Checking for camera pi updates...
[2026-08-25 10:11:03,922.922 INFO    ] 200
[2026-08-25 10:11:03,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:03,966.966 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:11:04,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:11:04,021.021 INFO    ] No camera update needed
[2026-08-25 10:11:04,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:11:04,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:11:04,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:11:04,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:11:06,078.078 INFO    ] ================================================
[2026-08-25 10:11:06,093.093 INFO    ] Launching Daemon at Tue Aug 25 10:11:06 IST 2026
[2026-08-25 10:11:06,104.104 INFO    ] ================================================
[2026-08-25 10:11:06,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:11:06
[2026-08-25 10:11:07,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:11:07,554.554 INFO    ] Initializing speech engine...
[2026-08-25 10:11:07,567.567 INFO    ] 2026-08-25 10:11:07
[2026-08-25 10:11:07,851.851 INFO    ] 2026-08-25 10:11:07
[2026-08-25 10:11:07,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:11:08,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:11:08,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:11:08,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:11:08,270.270 INFO    ] time= 25/08/2026 10:11:08
[2026-08-25 10:11:08,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:11:08,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:11:08,441.441 INFO    ] No existing commands found in stream
[2026-08-25 10:11:13,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:11:13,469.469 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 10:11:17,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:11:17,201.201 INFO    ] Checking for system updates...
[2026-08-25 10:11:17,236.236 INFO    ] 200
[2026-08-25 10:11:17,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:17,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:17,300.300 INFO    ] No update needed
[2026-08-25 10:11:17,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 10:11:17,336.336 INFO    ] 200
[2026-08-25 10:11:17,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:17,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:11:17,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:17,433.433 INFO    ] No camera update needed
[2026-08-25 10:11:17,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:11:17,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:11:17,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:11:17,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:11:19,489.489 INFO    ] ================================================
[2026-08-25 10:11:19,504.504 INFO    ] Launching Daemon at Tue Aug 25 10:11:19 IST 2026
[2026-08-25 10:11:19,515.515 INFO    ] ================================================
[2026-08-25 10:11:20,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:11:20
[2026-08-25 10:11:20,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:11:20,953.953 INFO    ] Initializing speech engine...
[2026-08-25 10:11:20,961.961 INFO    ] 2026-08-25 10:11:20
[2026-08-25 10:11:21,228.228 INFO    ] 2026-08-25 10:11:21
[2026-08-25 10:11:21,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:11:21,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:11:21,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:11:21,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:11:21,614.614 INFO    ] time= 25/08/2026 10:11:21
[2026-08-25 10:11:21,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:11:21,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:11:21,731.731 INFO    ] No existing commands found in stream
[2026-08-25 10:11:26,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:11:26,749.749 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 10:11:29,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:11:29,117.117 INFO    ] Checking for system updates...
[2026-08-25 10:11:29,154.154 INFO    ] 200
[2026-08-25 10:11:29,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:29,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:29,219.219 INFO    ] No update needed
[2026-08-25 10:11:29,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 10:11:29,256.256 INFO    ] 200
[2026-08-25 10:11:29,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:29,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:11:29,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:29,347.347 INFO    ] No camera update needed
[2026-08-25 10:11:29,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:11:29,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:11:29,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:11:29,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:11:31,407.407 INFO    ] ================================================
[2026-08-25 10:11:31,424.424 INFO    ] Launching Daemon at Tue Aug 25 10:11:31 IST 2026
[2026-08-25 10:11:31,436.436 INFO    ] ================================================
[2026-08-25 10:11:32,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:11:32
[2026-08-25 10:11:32,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:11:32,916.916 INFO    ] Initializing speech engine...
[2026-08-25 10:11:32,923.923 INFO    ] 2026-08-25 10:11:32
[2026-08-25 10:11:33,213.213 INFO    ] 2026-08-25 10:11:33
[2026-08-25 10:11:33,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:11:33,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:11:33,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:11:33,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:11:33,589.589 INFO    ] time= 25/08/2026 10:11:33
[2026-08-25 10:11:33,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:11:33,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:11:33,712.712 INFO    ] No existing commands found in stream
[2026-08-25 10:11:38,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:11:38,728.728 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 10:11:39,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:11:39,759.759 INFO    ] Checking for system updates...
[2026-08-25 10:11:39,795.795 INFO    ] 200
[2026-08-25 10:11:39,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:39,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:39,856.856 INFO    ] No update needed
[2026-08-25 10:11:39,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 10:11:39,891.891 INFO    ] 200
[2026-08-25 10:11:39,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:39,935.935 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:11:39,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:39,983.983 INFO    ] No camera update needed
[2026-08-25 10:11:39,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:11:39,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:11:39,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:11:39,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:11:42,038.038 INFO    ] ================================================
[2026-08-25 10:11:42,054.054 INFO    ] Launching Daemon at Tue Aug 25 10:11:42 IST 2026
[2026-08-25 10:11:42,065.065 INFO    ] ================================================
[2026-08-25 10:11:42,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:11:42
[2026-08-25 10:11:43,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:11:43,478.478 INFO    ] Initializing speech engine...
[2026-08-25 10:11:43,487.487 INFO    ] 2026-08-25 10:11:43
[2026-08-25 10:11:43,777.777 INFO    ] 2026-08-25 10:11:43
[2026-08-25 10:11:43,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:11:44,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:11:44,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:11:44,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:11:44,192.192 INFO    ] time= 25/08/2026 10:11:44
[2026-08-25 10:11:44,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:11:44,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:11:44,294.294 INFO    ] No existing commands found in stream
[2026-08-25 10:11:49,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:11:49,333.333 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 10:11:50,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:11:50,229.229 INFO    ] Checking for system updates...
[2026-08-25 10:11:50,264.264 INFO    ] 200
[2026-08-25 10:11:50,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:50,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:50,324.324 INFO    ] No update needed
[2026-08-25 10:11:50,327.327 INFO    ] Checking for camera pi updates...
[2026-08-25 10:11:50,361.361 INFO    ] 200
[2026-08-25 10:11:50,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:11:50,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:11:50,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:11:50,465.465 INFO    ] No camera update needed
[2026-08-25 10:11:50,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:11:50,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:11:50,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:11:50,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:11:52,524.524 INFO    ] ================================================
[2026-08-25 10:11:52,540.540 INFO    ] Launching Daemon at Tue Aug 25 10:11:52 IST 2026
[2026-08-25 10:11:52,551.551 INFO    ] ================================================
[2026-08-25 10:11:53,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:11:53
[2026-08-25 10:11:53,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:11:53,946.946 INFO    ] Initializing speech engine...
[2026-08-25 10:11:53,952.952 INFO    ] 2026-08-25 10:11:53
[2026-08-25 10:11:54,246.246 INFO    ] 2026-08-25 10:11:54
[2026-08-25 10:11:54,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:11:54,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:11:54,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:11:54,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:11:54,658.658 INFO    ] time= 25/08/2026 10:11:54
[2026-08-25 10:11:54,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:11:54,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:11:54,836.836 INFO    ] No existing commands found in stream
[2026-08-25 10:11:59,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:11:59,859.859 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 10:12:00,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:12:00,329.329 INFO    ] Checking for system updates...
[2026-08-25 10:12:00,367.367 INFO    ] 200
[2026-08-25 10:12:00,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:00,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:00,424.424 INFO    ] No update needed
[2026-08-25 10:12:00,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 10:12:00,460.460 INFO    ] 200
[2026-08-25 10:12:00,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:00,502.502 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:12:00,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:00,558.558 INFO    ] No camera update needed
[2026-08-25 10:12:00,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:12:00,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:12:00,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:12:00,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:12:02,625.625 INFO    ] ================================================
[2026-08-25 10:12:02,642.642 INFO    ] Launching Daemon at Tue Aug 25 10:12:02 IST 2026
[2026-08-25 10:12:02,652.652 INFO    ] ================================================
[2026-08-25 10:12:03,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:12:03
[2026-08-25 10:12:03,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:12:04,282.282 INFO    ] Initializing speech engine...
[2026-08-25 10:12:04,293.293 INFO    ] 2026-08-25 10:12:04
[2026-08-25 10:12:04,565.565 INFO    ] 2026-08-25 10:12:04
[2026-08-25 10:12:04,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:12:04,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:12:04,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:12:04,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:12:05,022.022 INFO    ] time= 25/08/2026 10:12:04
[2026-08-25 10:12:05,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:12:05,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:12:05,265.265 INFO    ] No existing commands found in stream
[2026-08-25 10:12:10,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:12:10,288.288 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 10:12:11,581.581 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:12:11,584.584 INFO    ] Checking for system updates...
[2026-08-25 10:12:11,620.620 INFO    ] 200
[2026-08-25 10:12:11,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:11,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:11,677.677 INFO    ] No update needed
[2026-08-25 10:12:11,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 10:12:11,712.712 INFO    ] 200
[2026-08-25 10:12:11,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:11,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:12:11,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:11,803.803 INFO    ] No camera update needed
[2026-08-25 10:12:11,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:12:11,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:12:11,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:12:11,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:12:13,858.858 INFO    ] ================================================
[2026-08-25 10:12:13,874.874 INFO    ] Launching Daemon at Tue Aug 25 10:12:13 IST 2026
[2026-08-25 10:12:13,885.885 INFO    ] ================================================
[2026-08-25 10:12:14,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:12:14
[2026-08-25 10:12:15,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:12:15,353.353 INFO    ] Initializing speech engine...
[2026-08-25 10:12:15,360.360 INFO    ] 2026-08-25 10:12:15
[2026-08-25 10:12:15,622.622 INFO    ] 2026-08-25 10:12:15
[2026-08-25 10:12:15,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:12:15,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:12:15,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:12:16,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:12:16,115.115 INFO    ] time= 25/08/2026 10:12:16
[2026-08-25 10:12:16,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:12:16,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:12:16,326.326 INFO    ] No existing commands found in stream
[2026-08-25 10:12:21,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:12:21,340.340 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 10:12:21,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:12:21,788.788 INFO    ] Checking for system updates...
[2026-08-25 10:12:21,823.823 INFO    ] 200
[2026-08-25 10:12:21,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:21,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:12:21,880.880 INFO    ] No update needed
[2026-08-25 10:12:21,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 10:12:21,915.915 INFO    ] 200
[2026-08-25 10:12:21,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:21,961.961 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:12:22,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:12:22,010.010 INFO    ] No camera update needed
[2026-08-25 10:12:22,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:12:22,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:12:22,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:12:22,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:12:24,068.068 INFO    ] ================================================
[2026-08-25 10:12:24,085.085 INFO    ] Launching Daemon at Tue Aug 25 10:12:24 IST 2026
[2026-08-25 10:12:24,097.097 INFO    ] ================================================
[2026-08-25 10:12:24,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:12:24
[2026-08-25 10:12:25,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:12:25,519.519 INFO    ] Initializing speech engine...
[2026-08-25 10:12:25,526.526 INFO    ] 2026-08-25 10:12:25
[2026-08-25 10:12:25,773.773 INFO    ] 2026-08-25 10:12:25
[2026-08-25 10:12:25,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:12:25,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:12:25,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:12:26,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:12:26,149.149 INFO    ] time= 25/08/2026 10:12:26
[2026-08-25 10:12:26,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:12:26,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:12:26,329.329 INFO    ] No existing commands found in stream
[2026-08-25 10:12:31,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:12:31,360.360 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 10:12:34,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:12:34,350.350 INFO    ] Checking for system updates...
[2026-08-25 10:12:34,386.386 INFO    ] 200
[2026-08-25 10:12:34,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:34,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:34,445.445 INFO    ] No update needed
[2026-08-25 10:12:34,447.447 INFO    ] Checking for camera pi updates...
[2026-08-25 10:12:34,488.488 INFO    ] 200
[2026-08-25 10:12:34,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:34,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:12:34,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:34,592.592 INFO    ] No camera update needed
[2026-08-25 10:12:34,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:12:34,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:12:34,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:12:34,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:12:36,657.657 INFO    ] ================================================
[2026-08-25 10:12:36,672.672 INFO    ] Launching Daemon at Tue Aug 25 10:12:36 IST 2026
[2026-08-25 10:12:36,683.683 INFO    ] ================================================
[2026-08-25 10:12:37,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:12:37
[2026-08-25 10:12:37,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:12:38,099.099 INFO    ] Initializing speech engine...
[2026-08-25 10:12:38,106.106 INFO    ] 2026-08-25 10:12:38
[2026-08-25 10:12:38,362.362 INFO    ] 2026-08-25 10:12:38
[2026-08-25 10:12:38,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:12:38,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:12:38,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:12:38,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:12:38,870.870 INFO    ] time= 25/08/2026 10:12:38
[2026-08-25 10:12:38,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:12:38,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:12:38,999.999 INFO    ] No existing commands found in stream
[2026-08-25 10:12:44,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:12:44,018.018 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 10:12:47,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:12:47,267.267 INFO    ] Checking for system updates...
[2026-08-25 10:12:47,304.304 INFO    ] 200
[2026-08-25 10:12:47,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:47,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:47,361.361 INFO    ] No update needed
[2026-08-25 10:12:47,364.364 INFO    ] Checking for camera pi updates...
[2026-08-25 10:12:47,397.397 INFO    ] 200
[2026-08-25 10:12:47,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:47,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:12:47,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:47,500.500 INFO    ] No camera update needed
[2026-08-25 10:12:47,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:12:47,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:12:47,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:12:47,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:12:49,554.554 INFO    ] ================================================
[2026-08-25 10:12:49,570.570 INFO    ] Launching Daemon at Tue Aug 25 10:12:49 IST 2026
[2026-08-25 10:12:49,581.581 INFO    ] ================================================
[2026-08-25 10:12:50,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:12:50
[2026-08-25 10:12:50,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:12:51,029.029 INFO    ] Initializing speech engine...
[2026-08-25 10:12:51,036.036 INFO    ] 2026-08-25 10:12:51
[2026-08-25 10:12:51,297.297 INFO    ] 2026-08-25 10:12:51
[2026-08-25 10:12:51,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:12:51,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:12:51,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:12:51,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:12:51,789.789 INFO    ] time= 25/08/2026 10:12:51
[2026-08-25 10:12:51,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:12:51,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:12:51,988.988 INFO    ] No existing commands found in stream
[2026-08-25 10:12:57,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:12:57,006.006 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 10:12:57,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:12:57,849.849 INFO    ] Checking for system updates...
[2026-08-25 10:12:57,886.886 INFO    ] 200
[2026-08-25 10:12:57,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:57,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:57,944.944 INFO    ] No update needed
[2026-08-25 10:12:57,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 10:12:57,988.988 INFO    ] 200
[2026-08-25 10:12:57,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:12:58,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:12:58,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:12:58,097.097 INFO    ] No camera update needed
[2026-08-25 10:12:58,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:12:58,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:12:58,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:12:58,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:13:00,155.155 INFO    ] ================================================
[2026-08-25 10:13:00,170.170 INFO    ] Launching Daemon at Tue Aug 25 10:13:00 IST 2026
[2026-08-25 10:13:00,181.181 INFO    ] ================================================
[2026-08-25 10:13:00,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:13:00
[2026-08-25 10:13:01,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:13:01,793.793 INFO    ] Initializing speech engine...
[2026-08-25 10:13:01,800.800 INFO    ] 2026-08-25 10:13:01
[2026-08-25 10:13:02,123.123 INFO    ] 2026-08-25 10:13:02
[2026-08-25 10:13:02,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:13:02,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:13:02,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:13:02,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:13:02,539.539 INFO    ] time= 25/08/2026 10:13:02
[2026-08-25 10:13:02,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:13:02,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:13:02,687.687 INFO    ] No existing commands found in stream
[2026-08-25 10:13:07,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:13:07,712.712 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 10:13:10,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:13:10,689.689 INFO    ] Checking for system updates...
[2026-08-25 10:13:10,726.726 INFO    ] 200
[2026-08-25 10:13:10,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:10,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:13:10,791.791 INFO    ] No update needed
[2026-08-25 10:13:10,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 10:13:10,832.832 INFO    ] 200
[2026-08-25 10:13:10,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:10,882.882 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:13:11,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:13:11,035.035 INFO    ] No camera update needed
[2026-08-25 10:13:11,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:13:11,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:13:11,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:13:11,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:13:13,094.094 INFO    ] ================================================
[2026-08-25 10:13:13,110.110 INFO    ] Launching Daemon at Tue Aug 25 10:13:13 IST 2026
[2026-08-25 10:13:13,122.122 INFO    ] ================================================
[2026-08-25 10:13:13,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:13:13
[2026-08-25 10:13:14,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:13:14,519.519 INFO    ] Initializing speech engine...
[2026-08-25 10:13:14,526.526 INFO    ] 2026-08-25 10:13:14
[2026-08-25 10:13:14,813.813 INFO    ] 2026-08-25 10:13:14
[2026-08-25 10:13:14,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:13:15,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:13:15,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:13:15,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:13:15,193.193 INFO    ] time= 25/08/2026 10:13:15
[2026-08-25 10:13:15,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:13:15,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:13:15,371.371 INFO    ] No existing commands found in stream
[2026-08-25 10:13:20,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:13:20,404.404 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 10:13:22,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:13:22,248.248 INFO    ] Checking for system updates...
[2026-08-25 10:13:22,285.285 INFO    ] 200
[2026-08-25 10:13:22,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:22,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:13:22,341.341 INFO    ] No update needed
[2026-08-25 10:13:22,343.343 INFO    ] Checking for camera pi updates...
[2026-08-25 10:13:22,377.377 INFO    ] 200
[2026-08-25 10:13:22,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:22,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:13:22,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:13:22,479.479 INFO    ] No camera update needed
[2026-08-25 10:13:22,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:13:22,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:13:22,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:13:22,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:13:24,537.537 INFO    ] ================================================
[2026-08-25 10:13:24,553.553 INFO    ] Launching Daemon at Tue Aug 25 10:13:24 IST 2026
[2026-08-25 10:13:24,564.564 INFO    ] ================================================
[2026-08-25 10:13:25,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:13:25
[2026-08-25 10:13:25,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:13:25,990.990 INFO    ] Initializing speech engine...
[2026-08-25 10:13:25,999.999 INFO    ] 2026-08-25 10:13:25
[2026-08-25 10:13:26,245.245 INFO    ] 2026-08-25 10:13:26
[2026-08-25 10:13:26,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:13:26,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:13:26,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:13:26,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:13:26,740.740 INFO    ] time= 25/08/2026 10:13:26
[2026-08-25 10:13:26,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:13:26,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:13:26,960.960 INFO    ] No existing commands found in stream
[2026-08-25 10:13:31,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:13:31,977.977 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 10:13:34,717.717 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:13:34,720.720 INFO    ] Checking for system updates...
[2026-08-25 10:13:34,755.755 INFO    ] 200
[2026-08-25 10:13:34,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:34,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:13:34,824.824 INFO    ] No update needed
[2026-08-25 10:13:34,827.827 INFO    ] Checking for camera pi updates...
[2026-08-25 10:13:34,864.864 INFO    ] 200
[2026-08-25 10:13:34,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:34,912.912 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:13:34,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:13:34,959.959 INFO    ] No camera update needed
[2026-08-25 10:13:34,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:13:34,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:13:34,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:13:34,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:13:37,016.016 INFO    ] ================================================
[2026-08-25 10:13:37,032.032 INFO    ] Launching Daemon at Tue Aug 25 10:13:37 IST 2026
[2026-08-25 10:13:37,043.043 INFO    ] ================================================
[2026-08-25 10:13:37,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:13:37
[2026-08-25 10:13:38,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:13:38,675.675 INFO    ] Initializing speech engine...
[2026-08-25 10:13:38,684.684 INFO    ] 2026-08-25 10:13:38
[2026-08-25 10:13:38,987.987 INFO    ] 2026-08-25 10:13:38
[2026-08-25 10:13:39,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:13:39,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:13:39,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:13:39,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:13:39,492.492 INFO    ] time= 25/08/2026 10:13:39
[2026-08-25 10:13:39,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:13:39,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:13:39,661.661 INFO    ] No existing commands found in stream
[2026-08-25 10:13:44,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:13:44,690.690 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 10:13:46,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:13:46,351.351 INFO    ] Checking for system updates...
[2026-08-25 10:13:46,399.399 INFO    ] 200
[2026-08-25 10:13:46,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:46,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:13:46,458.458 INFO    ] No update needed
[2026-08-25 10:13:46,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 10:13:46,498.498 INFO    ] 200
[2026-08-25 10:13:46,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:46,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:13:46,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:13:46,591.591 INFO    ] No camera update needed
[2026-08-25 10:13:46,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:13:46,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:13:46,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:13:46,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:13:48,646.646 INFO    ] ================================================
[2026-08-25 10:13:48,662.662 INFO    ] Launching Daemon at Tue Aug 25 10:13:48 IST 2026
[2026-08-25 10:13:48,673.673 INFO    ] ================================================
[2026-08-25 10:13:49,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:13:49
[2026-08-25 10:13:50,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:13:50,327.327 INFO    ] Initializing speech engine...
[2026-08-25 10:13:50,338.338 INFO    ] 2026-08-25 10:13:50
[2026-08-25 10:13:50,652.652 INFO    ] 2026-08-25 10:13:50
[2026-08-25 10:13:50,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:13:50,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:13:50,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:13:51,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:13:51,163.163 INFO    ] time= 25/08/2026 10:13:51
[2026-08-25 10:13:51,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:13:51,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:13:51,348.348 INFO    ] No existing commands found in stream
[2026-08-25 10:13:56,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:13:56,383.383 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 10:13:58,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:13:58,519.519 INFO    ] Checking for system updates...
[2026-08-25 10:13:58,555.555 INFO    ] 200
[2026-08-25 10:13:58,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:58,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:13:58,612.612 INFO    ] No update needed
[2026-08-25 10:13:58,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 10:13:58,648.648 INFO    ] 200
[2026-08-25 10:13:58,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:13:58,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:13:58,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:13:58,751.751 INFO    ] No camera update needed
[2026-08-25 10:13:58,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:13:58,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:13:58,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:13:58,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:14:00,806.806 INFO    ] ================================================
[2026-08-25 10:14:00,821.821 INFO    ] Launching Daemon at Tue Aug 25 10:14:00 IST 2026
[2026-08-25 10:14:00,832.832 INFO    ] ================================================
[2026-08-25 10:14:01,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:14:01
[2026-08-25 10:14:02,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:14:02,658.658 INFO    ] Initializing speech engine...
[2026-08-25 10:14:02,673.673 INFO    ] 2026-08-25 10:14:02
[2026-08-25 10:14:02,959.959 INFO    ] 2026-08-25 10:14:02
[2026-08-25 10:14:02,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:14:03,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:14:03,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:14:03,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:14:03,355.355 INFO    ] time= 25/08/2026 10:14:03
[2026-08-25 10:14:03,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:14:03,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:14:03,552.552 INFO    ] No existing commands found in stream
[2026-08-25 10:14:08,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:14:08,565.565 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 10:14:09,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:14:09,749.749 INFO    ] Checking for system updates...
[2026-08-25 10:14:09,789.789 INFO    ] 200
[2026-08-25 10:14:09,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:09,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:14:09,854.854 INFO    ] No update needed
[2026-08-25 10:14:09,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 10:14:09,894.894 INFO    ] 200
[2026-08-25 10:14:09,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:09,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:14:09,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:14:09,984.984 INFO    ] No camera update needed
[2026-08-25 10:14:09,987.987 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:14:09,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:14:09,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:14:10,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:14:12,043.043 INFO    ] ================================================
[2026-08-25 10:14:12,060.060 INFO    ] Launching Daemon at Tue Aug 25 10:14:12 IST 2026
[2026-08-25 10:14:12,072.072 INFO    ] ================================================
[2026-08-25 10:14:12,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:14:12
[2026-08-25 10:14:13,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:14:13,542.542 INFO    ] Initializing speech engine...
[2026-08-25 10:14:13,548.548 INFO    ] 2026-08-25 10:14:13
[2026-08-25 10:14:13,809.809 INFO    ] 2026-08-25 10:14:13
[2026-08-25 10:14:13,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:14:14,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:14:14,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:14:14,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:14:14,295.295 INFO    ] time= 25/08/2026 10:14:14
[2026-08-25 10:14:14,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:14:14,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:14:14,466.466 INFO    ] No existing commands found in stream
[2026-08-25 10:14:19,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:14:19,479.479 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 10:14:20,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:14:20,561.561 INFO    ] Checking for system updates...
[2026-08-25 10:14:20,597.597 INFO    ] 200
[2026-08-25 10:14:20,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:20,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:14:20,662.662 INFO    ] No update needed
[2026-08-25 10:14:20,664.664 INFO    ] Checking for camera pi updates...
[2026-08-25 10:14:20,697.697 INFO    ] 200
[2026-08-25 10:14:20,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:20,745.745 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:14:20,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:14:20,791.791 INFO    ] No camera update needed
[2026-08-25 10:14:20,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:14:20,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:14:20,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:14:20,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:14:22,846.846 INFO    ] ================================================
[2026-08-25 10:14:22,861.861 INFO    ] Launching Daemon at Tue Aug 25 10:14:22 IST 2026
[2026-08-25 10:14:22,873.873 INFO    ] ================================================
[2026-08-25 10:14:23,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:14:23
[2026-08-25 10:14:24,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:14:24,519.519 INFO    ] Initializing speech engine...
[2026-08-25 10:14:24,531.531 INFO    ] 2026-08-25 10:14:24
[2026-08-25 10:14:24,816.816 INFO    ] 2026-08-25 10:14:24
[2026-08-25 10:14:24,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:14:25,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:14:25,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:14:25,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:14:25,348.348 INFO    ] time= 25/08/2026 10:14:25
[2026-08-25 10:14:25,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:14:25,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:14:25,566.566 INFO    ] No existing commands found in stream
[2026-08-25 10:14:30,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:14:30,600.600 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 10:14:34,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:14:34,963.963 INFO    ] Checking for system updates...
[2026-08-25 10:14:35,000.000 INFO    ] 200
[2026-08-25 10:14:35,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:35,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:14:35,059.059 INFO    ] No update needed
[2026-08-25 10:14:35,062.062 INFO    ] Checking for camera pi updates...
[2026-08-25 10:14:35,097.097 INFO    ] 200
[2026-08-25 10:14:35,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:35,142.142 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:14:35,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:14:35,191.191 INFO    ] No camera update needed
[2026-08-25 10:14:35,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:14:35,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:14:35,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:14:35,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:14:37,249.249 INFO    ] ================================================
[2026-08-25 10:14:37,264.264 INFO    ] Launching Daemon at Tue Aug 25 10:14:37 IST 2026
[2026-08-25 10:14:37,276.276 INFO    ] ================================================
[2026-08-25 10:14:37,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:14:37
[2026-08-25 10:14:38,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:14:38,890.890 INFO    ] Initializing speech engine...
[2026-08-25 10:14:38,898.898 INFO    ] 2026-08-25 10:14:38
[2026-08-25 10:14:39,179.179 INFO    ] 2026-08-25 10:14:39
[2026-08-25 10:14:39,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:14:39,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:14:39,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:14:39,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:14:39,679.679 INFO    ] time= 25/08/2026 10:14:39
[2026-08-25 10:14:39,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:14:39,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:14:39,910.910 INFO    ] No existing commands found in stream
[2026-08-25 10:14:44,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:14:44,942.942 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 10:14:48,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:14:48,100.100 INFO    ] Checking for system updates...
[2026-08-25 10:14:48,136.136 INFO    ] 200
[2026-08-25 10:14:48,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:48,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:14:48,201.201 INFO    ] No update needed
[2026-08-25 10:14:48,204.204 INFO    ] Checking for camera pi updates...
[2026-08-25 10:14:48,241.241 INFO    ] 200
[2026-08-25 10:14:48,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:14:48,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:14:48,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:14:48,344.344 INFO    ] No camera update needed
[2026-08-25 10:14:48,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:14:48,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:14:48,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:14:48,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:14:50,400.400 INFO    ] ================================================
[2026-08-25 10:14:50,416.416 INFO    ] Launching Daemon at Tue Aug 25 10:14:50 IST 2026
[2026-08-25 10:14:50,427.427 INFO    ] ================================================
[2026-08-25 10:14:51,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:14:50
[2026-08-25 10:14:51,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:14:51,851.851 INFO    ] Initializing speech engine...
[2026-08-25 10:14:51,865.865 INFO    ] 2026-08-25 10:14:51
[2026-08-25 10:14:52,162.162 INFO    ] 2026-08-25 10:14:52
[2026-08-25 10:14:52,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:14:52,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:14:52,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:14:52,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:14:52,574.574 INFO    ] time= 25/08/2026 10:14:52
[2026-08-25 10:14:52,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:14:52,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:14:52,662.662 INFO    ] No existing commands found in stream
[2026-08-25 10:14:57,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:14:57,689.689 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 10:15:00,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:15:00,009.009 INFO    ] Checking for system updates...
[2026-08-25 10:15:00,046.046 INFO    ] 200
[2026-08-25 10:15:00,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:00,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:15:00,105.105 INFO    ] No update needed
[2026-08-25 10:15:00,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 10:15:00,146.146 INFO    ] 200
[2026-08-25 10:15:00,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:00,196.196 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:15:00,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:15:00,252.252 INFO    ] No camera update needed
[2026-08-25 10:15:00,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:15:00,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:15:00,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:15:00,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:15:02,331.331 INFO    ] ================================================
[2026-08-25 10:15:02,348.348 INFO    ] Launching Daemon at Tue Aug 25 10:15:02 IST 2026
[2026-08-25 10:15:02,361.361 INFO    ] ================================================
[2026-08-25 10:15:03,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:15:02
[2026-08-25 10:15:03,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:15:04,012.012 INFO    ] Initializing speech engine...
[2026-08-25 10:15:04,025.025 INFO    ] 2026-08-25 10:15:04
[2026-08-25 10:15:04,314.314 INFO    ] 2026-08-25 10:15:04
[2026-08-25 10:15:04,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:15:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:15:04,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:15:04,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:15:04,854.854 INFO    ] time= 25/08/2026 10:15:04
[2026-08-25 10:15:04,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:15:04,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:15:05,014.014 INFO    ] No existing commands found in stream
[2026-08-25 10:15:10,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:15:10,035.035 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 10:15:12,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:15:12,122.122 INFO    ] Checking for system updates...
[2026-08-25 10:15:12,159.159 INFO    ] 200
[2026-08-25 10:15:12,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:12,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:15:12,226.226 INFO    ] No update needed
[2026-08-25 10:15:12,229.229 INFO    ] Checking for camera pi updates...
[2026-08-25 10:15:12,263.263 INFO    ] 200
[2026-08-25 10:15:12,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:12,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:15:12,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:15:12,365.365 INFO    ] No camera update needed
[2026-08-25 10:15:12,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:15:12,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:15:12,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:15:12,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:15:14,420.420 INFO    ] ================================================
[2026-08-25 10:15:14,436.436 INFO    ] Launching Daemon at Tue Aug 25 10:15:14 IST 2026
[2026-08-25 10:15:14,447.447 INFO    ] ================================================
[2026-08-25 10:15:15,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:15:15
[2026-08-25 10:15:15,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:15:15,871.871 INFO    ] Initializing speech engine...
[2026-08-25 10:15:15,880.880 INFO    ] 2026-08-25 10:15:15
[2026-08-25 10:15:16,139.139 INFO    ] 2026-08-25 10:15:16
[2026-08-25 10:15:16,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:15:16,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:15:16,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:15:16,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:15:16,693.693 INFO    ] time= 25/08/2026 10:15:16
[2026-08-25 10:15:16,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:15:16,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:15:16,883.883 INFO    ] No existing commands found in stream
[2026-08-25 10:15:21,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:15:21,922.922 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 10:15:23,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:15:23,004.004 INFO    ] Checking for system updates...
[2026-08-25 10:15:23,044.044 INFO    ] 200
[2026-08-25 10:15:23,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:23,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:15:23,101.101 INFO    ] No update needed
[2026-08-25 10:15:23,103.103 INFO    ] Checking for camera pi updates...
[2026-08-25 10:15:23,136.136 INFO    ] 200
[2026-08-25 10:15:23,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:23,243.243 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:15:23,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:15:23,392.392 INFO    ] No camera update needed
[2026-08-25 10:15:23,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:15:23,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:15:23,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:15:23,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:15:25,448.448 INFO    ] ================================================
[2026-08-25 10:15:25,464.464 INFO    ] Launching Daemon at Tue Aug 25 10:15:25 IST 2026
[2026-08-25 10:15:25,475.475 INFO    ] ================================================
[2026-08-25 10:15:26,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:15:26
[2026-08-25 10:15:26,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:15:26,926.926 INFO    ] Initializing speech engine...
[2026-08-25 10:15:26,940.940 INFO    ] 2026-08-25 10:15:26
[2026-08-25 10:15:27,215.215 INFO    ] 2026-08-25 10:15:27
[2026-08-25 10:15:27,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:15:27,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:15:27,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:15:27,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:15:28,026.026 INFO    ] time= 25/08/2026 10:15:27
[2026-08-25 10:15:28,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:15:28,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:15:28,242.242 INFO    ] No existing commands found in stream
[2026-08-25 10:15:33,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:15:33,264.264 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 10:15:33,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:15:33,776.776 INFO    ] Checking for system updates...
[2026-08-25 10:15:33,811.811 INFO    ] 200
[2026-08-25 10:15:33,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:33,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:15:33,876.876 INFO    ] No update needed
[2026-08-25 10:15:33,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 10:15:33,913.913 INFO    ] 200
[2026-08-25 10:15:33,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:33,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:15:34,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:15:34,005.005 INFO    ] No camera update needed
[2026-08-25 10:15:34,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:15:34,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:15:34,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:15:34,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:15:36,058.058 INFO    ] ================================================
[2026-08-25 10:15:36,074.074 INFO    ] Launching Daemon at Tue Aug 25 10:15:36 IST 2026
[2026-08-25 10:15:36,085.085 INFO    ] ================================================
[2026-08-25 10:15:36,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:15:36
[2026-08-25 10:15:37,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:15:37,641.641 INFO    ] Initializing speech engine...
[2026-08-25 10:15:37,656.656 INFO    ] 2026-08-25 10:15:37
[2026-08-25 10:15:37,924.924 INFO    ] 2026-08-25 10:15:37
[2026-08-25 10:15:37,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:15:38,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:15:38,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:15:38,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:15:38,317.317 INFO    ] time= 25/08/2026 10:15:38
[2026-08-25 10:15:38,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:15:38,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:15:38,478.478 INFO    ] No existing commands found in stream
[2026-08-25 10:15:43,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:15:43,511.511 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 10:15:47,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:15:47,340.340 INFO    ] Checking for system updates...
[2026-08-25 10:15:47,375.375 INFO    ] 200
[2026-08-25 10:15:47,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:47,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:15:47,432.432 INFO    ] No update needed
[2026-08-25 10:15:47,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 10:15:47,472.472 INFO    ] 200
[2026-08-25 10:15:47,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:47,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:15:47,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:15:47,576.576 INFO    ] No camera update needed
[2026-08-25 10:15:47,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:15:47,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:15:47,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:15:47,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:15:49,630.630 INFO    ] ================================================
[2026-08-25 10:15:49,646.646 INFO    ] Launching Daemon at Tue Aug 25 10:15:49 IST 2026
[2026-08-25 10:15:49,656.656 INFO    ] ================================================
[2026-08-25 10:15:50,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:15:50
[2026-08-25 10:15:50,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:15:51,078.078 INFO    ] Initializing speech engine...
[2026-08-25 10:15:51,087.087 INFO    ] 2026-08-25 10:15:51
[2026-08-25 10:15:51,338.338 INFO    ] 2026-08-25 10:15:51
[2026-08-25 10:15:51,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:15:51,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:15:51,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:15:51,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:15:51,793.793 INFO    ] time= 25/08/2026 10:15:51
[2026-08-25 10:15:51,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:15:51,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:15:52,052.052 INFO    ] No existing commands found in stream
[2026-08-25 10:15:57,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:15:57,078.078 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 10:15:59,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:15:59,280.280 INFO    ] Checking for system updates...
[2026-08-25 10:15:59,315.315 INFO    ] 200
[2026-08-25 10:15:59,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:59,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:15:59,372.372 INFO    ] No update needed
[2026-08-25 10:15:59,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 10:15:59,411.411 INFO    ] 200
[2026-08-25 10:15:59,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:15:59,453.453 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:15:59,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:15:59,506.506 INFO    ] No camera update needed
[2026-08-25 10:15:59,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:15:59,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:15:59,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:15:59,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:16:01,566.566 INFO    ] ================================================
[2026-08-25 10:16:01,582.582 INFO    ] Launching Daemon at Tue Aug 25 10:16:01 IST 2026
[2026-08-25 10:16:01,593.593 INFO    ] ================================================
[2026-08-25 10:16:02,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:16:02
[2026-08-25 10:16:02,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:16:03,238.238 INFO    ] Initializing speech engine...
[2026-08-25 10:16:03,260.260 INFO    ] 2026-08-25 10:16:03
[2026-08-25 10:16:03,563.563 INFO    ] 2026-08-25 10:16:03
[2026-08-25 10:16:03,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:16:03,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:16:03,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:16:03,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:16:04,011.011 INFO    ] time= 25/08/2026 10:16:03
[2026-08-25 10:16:04,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:16:04,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:16:04,195.195 INFO    ] No existing commands found in stream
[2026-08-25 10:16:09,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:16:09,210.210 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 10:16:11,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:16:11,302.302 INFO    ] Checking for system updates...
[2026-08-25 10:16:11,338.338 INFO    ] 200
[2026-08-25 10:16:11,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:11,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:16:11,399.399 INFO    ] No update needed
[2026-08-25 10:16:11,401.401 INFO    ] Checking for camera pi updates...
[2026-08-25 10:16:11,435.435 INFO    ] 200
[2026-08-25 10:16:11,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:11,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:16:11,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:16:11,527.527 INFO    ] No camera update needed
[2026-08-25 10:16:11,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:16:11,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:16:11,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:16:11,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:16:13,583.583 INFO    ] ================================================
[2026-08-25 10:16:13,599.599 INFO    ] Launching Daemon at Tue Aug 25 10:16:13 IST 2026
[2026-08-25 10:16:13,610.610 INFO    ] ================================================
[2026-08-25 10:16:14,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:16:14
[2026-08-25 10:16:14,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:16:15,165.165 INFO    ] Initializing speech engine...
[2026-08-25 10:16:15,177.177 INFO    ] 2026-08-25 10:16:15
[2026-08-25 10:16:15,451.451 INFO    ] 2026-08-25 10:16:15
[2026-08-25 10:16:15,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:16:15,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:16:15,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:16:15,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:16:15,909.909 INFO    ] time= 25/08/2026 10:16:15
[2026-08-25 10:16:15,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:16:15,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:16:16,139.139 INFO    ] No existing commands found in stream
[2026-08-25 10:16:21,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:16:21,155.155 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 10:16:23,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:16:23,461.461 INFO    ] Checking for system updates...
[2026-08-25 10:16:23,520.520 INFO    ] 200
[2026-08-25 10:16:23,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:23,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:16:23,588.588 INFO    ] No update needed
[2026-08-25 10:16:23,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 10:16:23,626.626 INFO    ] 200
[2026-08-25 10:16:23,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:23,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:16:23,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:16:23,718.718 INFO    ] No camera update needed
[2026-08-25 10:16:23,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:16:23,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:16:23,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:16:23,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:16:25,773.773 INFO    ] ================================================
[2026-08-25 10:16:25,788.788 INFO    ] Launching Daemon at Tue Aug 25 10:16:25 IST 2026
[2026-08-25 10:16:25,799.799 INFO    ] ================================================
[2026-08-25 10:16:26,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:16:26
[2026-08-25 10:16:26,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:16:27,248.248 INFO    ] Initializing speech engine...
[2026-08-25 10:16:27,255.255 INFO    ] 2026-08-25 10:16:27
[2026-08-25 10:16:27,507.507 INFO    ] 2026-08-25 10:16:27
[2026-08-25 10:16:27,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:16:27,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:16:27,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:16:27,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:16:27,985.985 INFO    ] time= 25/08/2026 10:16:27
[2026-08-25 10:16:28,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:16:28,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:16:28,212.212 INFO    ] No existing commands found in stream
[2026-08-25 10:16:33,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:16:33,237.237 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 10:16:35,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:16:35,622.622 INFO    ] Checking for system updates...
[2026-08-25 10:16:35,658.658 INFO    ] 200
[2026-08-25 10:16:35,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:35,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:16:35,720.720 INFO    ] No update needed
[2026-08-25 10:16:35,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 10:16:35,759.759 INFO    ] 200
[2026-08-25 10:16:35,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:35,802.802 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:16:35,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:16:35,851.851 INFO    ] No camera update needed
[2026-08-25 10:16:35,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:16:35,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:16:35,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:16:35,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:16:37,907.907 INFO    ] ================================================
[2026-08-25 10:16:37,923.923 INFO    ] Launching Daemon at Tue Aug 25 10:16:37 IST 2026
[2026-08-25 10:16:37,935.935 INFO    ] ================================================
[2026-08-25 10:16:38,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:16:38
[2026-08-25 10:16:39,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:16:39,421.421 INFO    ] Initializing speech engine...
[2026-08-25 10:16:39,436.436 INFO    ] 2026-08-25 10:16:39
[2026-08-25 10:16:39,705.705 INFO    ] 2026-08-25 10:16:39
[2026-08-25 10:16:39,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:16:39,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:16:39,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:16:40,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:16:40,116.116 INFO    ] time= 25/08/2026 10:16:40
[2026-08-25 10:16:40,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:16:40,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:16:40,201.201 INFO    ] No existing commands found in stream
[2026-08-25 10:16:45,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:16:45,239.239 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 10:16:48,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:16:48,478.478 INFO    ] Checking for system updates...
[2026-08-25 10:16:48,517.517 INFO    ] 200
[2026-08-25 10:16:48,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:48,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:16:48,574.574 INFO    ] No update needed
[2026-08-25 10:16:48,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 10:16:48,611.611 INFO    ] 200
[2026-08-25 10:16:48,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:16:48,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:16:48,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:16:48,724.724 INFO    ] No camera update needed
[2026-08-25 10:16:48,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:16:48,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:16:48,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:16:48,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:16:50,782.782 INFO    ] ================================================
[2026-08-25 10:16:50,797.797 INFO    ] Launching Daemon at Tue Aug 25 10:16:50 IST 2026
[2026-08-25 10:16:50,808.808 INFO    ] ================================================
[2026-08-25 10:16:51,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:16:51
[2026-08-25 10:16:52,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:16:52,388.388 INFO    ] Initializing speech engine...
[2026-08-25 10:16:52,401.401 INFO    ] 2026-08-25 10:16:52
[2026-08-25 10:16:52,708.708 INFO    ] 2026-08-25 10:16:52
[2026-08-25 10:16:52,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:16:53,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:16:53,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:16:53,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:16:53,211.211 INFO    ] time= 25/08/2026 10:16:53
[2026-08-25 10:16:53,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:16:53,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:16:53,364.364 INFO    ] No existing commands found in stream
[2026-08-25 10:16:58,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:16:58,380.380 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 10:17:01,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:17:01,464.464 INFO    ] Checking for system updates...
[2026-08-25 10:17:01,500.500 INFO    ] 200
[2026-08-25 10:17:01,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:01,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:17:01,566.566 INFO    ] No update needed
[2026-08-25 10:17:01,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 10:17:01,601.601 INFO    ] 200
[2026-08-25 10:17:01,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:01,650.650 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:17:01,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:17:01,715.715 INFO    ] No camera update needed
[2026-08-25 10:17:01,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:17:01,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:17:01,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:17:01,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:17:03,771.771 INFO    ] ================================================
[2026-08-25 10:17:03,786.786 INFO    ] Launching Daemon at Tue Aug 25 10:17:03 IST 2026
[2026-08-25 10:17:03,797.797 INFO    ] ================================================
[2026-08-25 10:17:04,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:17:04
[2026-08-25 10:17:04,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:17:05,272.272 INFO    ] Initializing speech engine...
[2026-08-25 10:17:05,278.278 INFO    ] 2026-08-25 10:17:05
[2026-08-25 10:17:05,539.539 INFO    ] 2026-08-25 10:17:05
[2026-08-25 10:17:05,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:17:05,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:17:05,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:17:05,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:17:06,001.001 INFO    ] time= 25/08/2026 10:17:05
[2026-08-25 10:17:06,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:17:06,095.095 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:17:06,229.229 INFO    ] No existing commands found in stream
[2026-08-25 10:17:11,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:17:11,257.257 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 10:17:13,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:17:13,898.898 INFO    ] Checking for system updates...
[2026-08-25 10:17:13,937.937 INFO    ] 200
[2026-08-25 10:17:13,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:13,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:17:14,000.000 INFO    ] No update needed
[2026-08-25 10:17:14,003.003 INFO    ] Checking for camera pi updates...
[2026-08-25 10:17:14,040.040 INFO    ] 200
[2026-08-25 10:17:14,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:14,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:17:14,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:17:14,141.141 INFO    ] No camera update needed
[2026-08-25 10:17:14,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:17:14,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:17:14,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:17:14,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:17:16,196.196 INFO    ] ================================================
[2026-08-25 10:17:16,211.211 INFO    ] Launching Daemon at Tue Aug 25 10:17:16 IST 2026
[2026-08-25 10:17:16,221.221 INFO    ] ================================================
[2026-08-25 10:17:16,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:17:16
[2026-08-25 10:17:17,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:17:17,686.686 INFO    ] Initializing speech engine...
[2026-08-25 10:17:17,698.698 INFO    ] 2026-08-25 10:17:17
[2026-08-25 10:17:17,952.952 INFO    ] 2026-08-25 10:17:17
[2026-08-25 10:17:18,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:17:18,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:17:18,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:17:18,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:17:18,412.412 INFO    ] time= 25/08/2026 10:17:18
[2026-08-25 10:17:18,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:17:18,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:17:18,658.658 INFO    ] No existing commands found in stream
[2026-08-25 10:17:23,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:17:23,674.674 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 10:17:27,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:17:27,604.604 INFO    ] Checking for system updates...
[2026-08-25 10:17:27,640.640 INFO    ] 200
[2026-08-25 10:17:27,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:27,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:17:27,701.701 INFO    ] No update needed
[2026-08-25 10:17:27,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 10:17:27,740.740 INFO    ] 200
[2026-08-25 10:17:27,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:27,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:17:27,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:17:27,932.932 INFO    ] No camera update needed
[2026-08-25 10:17:27,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:17:27,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:17:27,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:17:27,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:17:29,991.991 INFO    ] ================================================
[2026-08-25 10:17:30,007.007 INFO    ] Launching Daemon at Tue Aug 25 10:17:30 IST 2026
[2026-08-25 10:17:30,018.018 INFO    ] ================================================
[2026-08-25 10:17:30,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:17:30
[2026-08-25 10:17:31,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:17:31,480.480 INFO    ] Initializing speech engine...
[2026-08-25 10:17:31,487.487 INFO    ] 2026-08-25 10:17:31
[2026-08-25 10:17:31,748.748 INFO    ] 2026-08-25 10:17:31
[2026-08-25 10:17:31,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:17:31,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:17:31,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:17:32,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:17:32,135.135 INFO    ] time= 25/08/2026 10:17:32
[2026-08-25 10:17:32,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:17:32,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:17:32,305.305 INFO    ] No existing commands found in stream
[2026-08-25 10:17:37,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:17:37,338.338 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 10:17:39,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:17:39,411.411 INFO    ] Checking for system updates...
[2026-08-25 10:17:39,449.449 INFO    ] 200
[2026-08-25 10:17:39,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:39,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:17:39,505.505 INFO    ] No update needed
[2026-08-25 10:17:39,508.508 INFO    ] Checking for camera pi updates...
[2026-08-25 10:17:39,544.544 INFO    ] 200
[2026-08-25 10:17:39,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:39,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:17:39,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:17:39,636.636 INFO    ] No camera update needed
[2026-08-25 10:17:39,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:17:39,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:17:39,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:17:39,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:17:41,693.693 INFO    ] ================================================
[2026-08-25 10:17:41,709.709 INFO    ] Launching Daemon at Tue Aug 25 10:17:41 IST 2026
[2026-08-25 10:17:41,720.720 INFO    ] ================================================
[2026-08-25 10:17:42,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:17:42
[2026-08-25 10:17:42,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:17:43,139.139 INFO    ] Initializing speech engine...
[2026-08-25 10:17:43,148.148 INFO    ] 2026-08-25 10:17:43
[2026-08-25 10:17:43,393.393 INFO    ] 2026-08-25 10:17:43
[2026-08-25 10:17:43,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:17:43,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:17:43,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:17:43,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:17:43,868.868 INFO    ] time= 25/08/2026 10:17:43
[2026-08-25 10:17:43,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:17:43,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:17:44,093.093 INFO    ] No existing commands found in stream
[2026-08-25 10:17:49,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:17:49,116.116 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 10:17:53,326.326 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:17:53,329.329 INFO    ] Checking for system updates...
[2026-08-25 10:17:53,370.370 INFO    ] 200
[2026-08-25 10:17:53,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:53,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:17:53,433.433 INFO    ] No update needed
[2026-08-25 10:17:53,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 10:17:53,471.471 INFO    ] 200
[2026-08-25 10:17:53,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:17:53,514.514 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:17:53,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:17:53,568.568 INFO    ] No camera update needed
[2026-08-25 10:17:53,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:17:53,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:17:53,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:17:53,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:17:55,622.622 INFO    ] ================================================
[2026-08-25 10:17:55,637.637 INFO    ] Launching Daemon at Tue Aug 25 10:17:55 IST 2026
[2026-08-25 10:17:55,648.648 INFO    ] ================================================
[2026-08-25 10:17:56,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:17:56
[2026-08-25 10:17:56,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:17:57,206.206 INFO    ] Initializing speech engine...
[2026-08-25 10:17:57,219.219 INFO    ] 2026-08-25 10:17:57
[2026-08-25 10:17:57,524.524 INFO    ] 2026-08-25 10:17:57
[2026-08-25 10:17:57,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:17:57,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:17:57,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:17:58,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:17:58,027.027 INFO    ] time= 25/08/2026 10:17:58
[2026-08-25 10:17:58,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:17:58,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:17:58,180.180 INFO    ] No existing commands found in stream
[2026-08-25 10:18:03,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:18:03,190.190 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 10:18:03,871.871 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:18:03,874.874 INFO    ] Checking for system updates...
[2026-08-25 10:18:03,911.911 INFO    ] 200
[2026-08-25 10:18:03,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:03,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:18:03,974.974 INFO    ] No update needed
[2026-08-25 10:18:03,977.977 INFO    ] Checking for camera pi updates...
[2026-08-25 10:18:04,034.034 INFO    ] 200
[2026-08-25 10:18:04,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:04,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:18:04,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:18:04,143.143 INFO    ] No camera update needed
[2026-08-25 10:18:04,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:18:04,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:18:04,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:18:04,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:18:06,201.201 INFO    ] ================================================
[2026-08-25 10:18:06,216.216 INFO    ] Launching Daemon at Tue Aug 25 10:18:06 IST 2026
[2026-08-25 10:18:06,227.227 INFO    ] ================================================
[2026-08-25 10:18:06,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:18:06
[2026-08-25 10:18:07,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:18:07,833.833 INFO    ] Initializing speech engine...
[2026-08-25 10:18:07,844.844 INFO    ] 2026-08-25 10:18:07
[2026-08-25 10:18:08,151.151 INFO    ] 2026-08-25 10:18:08
[2026-08-25 10:18:08,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:18:08,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:18:08,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:18:08,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:18:08,658.658 INFO    ] time= 25/08/2026 10:18:08
[2026-08-25 10:18:08,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:18:08,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:18:08,808.808 INFO    ] No existing commands found in stream
[2026-08-25 10:18:13,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:18:13,828.828 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 10:18:15,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:18:15,392.392 INFO    ] Checking for system updates...
[2026-08-25 10:18:15,427.427 INFO    ] 200
[2026-08-25 10:18:15,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:15,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:18:15,491.491 INFO    ] No update needed
[2026-08-25 10:18:15,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 10:18:15,529.529 INFO    ] 200
[2026-08-25 10:18:15,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:15,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:18:15,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:18:15,623.623 INFO    ] No camera update needed
[2026-08-25 10:18:15,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:18:15,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:18:15,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:18:15,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:18:17,680.680 INFO    ] ================================================
[2026-08-25 10:18:17,696.696 INFO    ] Launching Daemon at Tue Aug 25 10:18:17 IST 2026
[2026-08-25 10:18:17,707.707 INFO    ] ================================================
[2026-08-25 10:18:18,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:18:18
[2026-08-25 10:18:19,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:18:19,299.299 INFO    ] Initializing speech engine...
[2026-08-25 10:18:19,306.306 INFO    ] 2026-08-25 10:18:19
[2026-08-25 10:18:19,578.578 INFO    ] 2026-08-25 10:18:19
[2026-08-25 10:18:19,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:18:19,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:18:19,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:18:20,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:18:20,115.115 INFO    ] time= 25/08/2026 10:18:20
[2026-08-25 10:18:20,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:18:20,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:18:20,280.280 INFO    ] No existing commands found in stream
[2026-08-25 10:18:25,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:18:25,309.309 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 10:18:26,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:18:26,345.345 INFO    ] Checking for system updates...
[2026-08-25 10:18:26,382.382 INFO    ] 200
[2026-08-25 10:18:26,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:26,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:18:26,440.440 INFO    ] No update needed
[2026-08-25 10:18:26,442.442 INFO    ] Checking for camera pi updates...
[2026-08-25 10:18:26,479.479 INFO    ] 200
[2026-08-25 10:18:26,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:26,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:18:26,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:18:26,579.579 INFO    ] No camera update needed
[2026-08-25 10:18:26,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:18:26,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:18:26,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:18:26,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:18:28,638.638 INFO    ] ================================================
[2026-08-25 10:18:28,655.655 INFO    ] Launching Daemon at Tue Aug 25 10:18:28 IST 2026
[2026-08-25 10:18:28,670.670 INFO    ] ================================================
[2026-08-25 10:18:29,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:18:29
[2026-08-25 10:18:29,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:18:30,304.304 INFO    ] Initializing speech engine...
[2026-08-25 10:18:30,316.316 INFO    ] 2026-08-25 10:18:30
[2026-08-25 10:18:30,635.635 INFO    ] 2026-08-25 10:18:30
[2026-08-25 10:18:30,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:18:30,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:18:30,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:18:31,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:18:31,149.149 INFO    ] time= 25/08/2026 10:18:31
[2026-08-25 10:18:31,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:18:31,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:18:31,298.298 INFO    ] No existing commands found in stream
[2026-08-25 10:18:36,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:18:36,321.321 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 10:18:38,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:18:38,772.772 INFO    ] Checking for system updates...
[2026-08-25 10:18:38,816.816 INFO    ] 200
[2026-08-25 10:18:38,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:38,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:18:38,880.880 INFO    ] No update needed
[2026-08-25 10:18:38,883.883 INFO    ] Checking for camera pi updates...
[2026-08-25 10:18:38,931.931 INFO    ] 200
[2026-08-25 10:18:38,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:38,987.987 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:18:39,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:18:39,041.041 INFO    ] No camera update needed
[2026-08-25 10:18:39,043.043 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:18:39,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:18:39,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:18:39,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:18:41,098.098 INFO    ] ================================================
[2026-08-25 10:18:41,115.115 INFO    ] Launching Daemon at Tue Aug 25 10:18:41 IST 2026
[2026-08-25 10:18:41,127.127 INFO    ] ================================================
[2026-08-25 10:18:41,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:18:41
[2026-08-25 10:18:42,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:18:42,846.846 INFO    ] Initializing speech engine...
[2026-08-25 10:18:42,862.862 INFO    ] 2026-08-25 10:18:42
[2026-08-25 10:18:43,194.194 INFO    ] 2026-08-25 10:18:43
[2026-08-25 10:18:43,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:18:43,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:18:43,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:18:43,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:18:43,715.715 INFO    ] time= 25/08/2026 10:18:43
[2026-08-25 10:18:43,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:18:43,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:18:43,876.876 INFO    ] No existing commands found in stream
[2026-08-25 10:18:48,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:18:48,912.912 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 10:18:52,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:18:52,309.309 INFO    ] Checking for system updates...
[2026-08-25 10:18:52,350.350 INFO    ] 200
[2026-08-25 10:18:52,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:52,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:18:52,407.407 INFO    ] No update needed
[2026-08-25 10:18:52,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 10:18:52,443.443 INFO    ] 200
[2026-08-25 10:18:52,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:18:52,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:18:52,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:18:52,534.534 INFO    ] No camera update needed
[2026-08-25 10:18:52,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:18:52,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:18:52,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:18:52,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:18:54,592.592 INFO    ] ================================================
[2026-08-25 10:18:54,609.609 INFO    ] Launching Daemon at Tue Aug 25 10:18:54 IST 2026
[2026-08-25 10:18:54,622.622 INFO    ] ================================================
[2026-08-25 10:18:55,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:18:55
[2026-08-25 10:18:55,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:18:56,137.137 INFO    ] Initializing speech engine...
[2026-08-25 10:18:56,147.147 INFO    ] 2026-08-25 10:18:56
[2026-08-25 10:18:56,422.422 INFO    ] 2026-08-25 10:18:56
[2026-08-25 10:18:56,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:18:56,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:18:56,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:18:56,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:18:56,826.826 INFO    ] time= 25/08/2026 10:18:56
[2026-08-25 10:18:56,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:18:56,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:18:56,967.967 INFO    ] No existing commands found in stream
[2026-08-25 10:19:01,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:19:01,980.980 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 10:19:05,674.674 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:19:05,677.677 INFO    ] Checking for system updates...
[2026-08-25 10:19:05,714.714 INFO    ] 200
[2026-08-25 10:19:05,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:05,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:19:05,770.770 INFO    ] No update needed
[2026-08-25 10:19:05,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 10:19:05,806.806 INFO    ] 200
[2026-08-25 10:19:05,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:05,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:19:05,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:19:05,900.900 INFO    ] No camera update needed
[2026-08-25 10:19:05,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:19:05,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:19:05,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:19:05,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:19:07,956.956 INFO    ] ================================================
[2026-08-25 10:19:07,972.972 INFO    ] Launching Daemon at Tue Aug 25 10:19:07 IST 2026
[2026-08-25 10:19:07,983.983 INFO    ] ================================================
[2026-08-25 10:19:08,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:19:08
[2026-08-25 10:19:09,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:19:09,502.502 INFO    ] Initializing speech engine...
[2026-08-25 10:19:09,516.516 INFO    ] 2026-08-25 10:19:09
[2026-08-25 10:19:09,830.830 INFO    ] 2026-08-25 10:19:09
[2026-08-25 10:19:09,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:19:10,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:19:10,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:19:10,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:19:10,261.261 INFO    ] time= 25/08/2026 10:19:10
[2026-08-25 10:19:10,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:19:10,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:19:10,474.474 INFO    ] No existing commands found in stream
[2026-08-25 10:19:15,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:19:15,494.494 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 10:19:19,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:19:19,931.931 INFO    ] Checking for system updates...
[2026-08-25 10:19:19,966.966 INFO    ] 200
[2026-08-25 10:19:19,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:20,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:19:20,029.029 INFO    ] No update needed
[2026-08-25 10:19:20,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 10:19:20,068.068 INFO    ] 200
[2026-08-25 10:19:20,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:20,110.110 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:19:20,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:19:20,159.159 INFO    ] No camera update needed
[2026-08-25 10:19:20,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:19:20,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:19:20,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:19:20,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:19:22,217.217 INFO    ] ================================================
[2026-08-25 10:19:22,233.233 INFO    ] Launching Daemon at Tue Aug 25 10:19:22 IST 2026
[2026-08-25 10:19:22,244.244 INFO    ] ================================================
[2026-08-25 10:19:22,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:19:22
[2026-08-25 10:19:23,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:19:23,650.650 INFO    ] Initializing speech engine...
[2026-08-25 10:19:23,669.669 INFO    ] 2026-08-25 10:19:23
[2026-08-25 10:19:23,919.919 INFO    ] 2026-08-25 10:19:23
[2026-08-25 10:19:23,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:19:24,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:19:24,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:19:24,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:19:24,478.478 INFO    ] time= 25/08/2026 10:19:24
[2026-08-25 10:19:24,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:19:24,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:19:24,628.628 INFO    ] No existing commands found in stream
[2026-08-25 10:19:29,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:19:29,647.647 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 10:19:30,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:19:30,401.401 INFO    ] Checking for system updates...
[2026-08-25 10:19:30,437.437 INFO    ] 200
[2026-08-25 10:19:30,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:30,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:19:30,498.498 INFO    ] No update needed
[2026-08-25 10:19:30,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 10:19:30,534.534 INFO    ] 200
[2026-08-25 10:19:30,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:30,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:19:30,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:19:30,765.765 INFO    ] No camera update needed
[2026-08-25 10:19:30,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:19:30,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:19:30,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:19:30,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:19:32,821.821 INFO    ] ================================================
[2026-08-25 10:19:32,837.837 INFO    ] Launching Daemon at Tue Aug 25 10:19:32 IST 2026
[2026-08-25 10:19:32,848.848 INFO    ] ================================================
[2026-08-25 10:19:33,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:19:33
[2026-08-25 10:19:33,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:19:34,253.253 INFO    ] Initializing speech engine...
[2026-08-25 10:19:34,277.277 INFO    ] 2026-08-25 10:19:34
[2026-08-25 10:19:34,553.553 INFO    ] 2026-08-25 10:19:34
[2026-08-25 10:19:34,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:19:34,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:19:34,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:19:34,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:19:34,963.963 INFO    ] time= 25/08/2026 10:19:34
[2026-08-25 10:19:34,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:19:35,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:19:35,134.134 INFO    ] No existing commands found in stream
[2026-08-25 10:19:40,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:19:40,171.171 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 10:19:42,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:19:42,043.043 INFO    ] Checking for system updates...
[2026-08-25 10:19:42,081.081 INFO    ] 200
[2026-08-25 10:19:42,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:42,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:19:42,138.138 INFO    ] No update needed
[2026-08-25 10:19:42,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 10:19:42,174.174 INFO    ] 200
[2026-08-25 10:19:42,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:42,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:19:42,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:19:42,272.272 INFO    ] No camera update needed
[2026-08-25 10:19:42,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:19:42,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:19:42,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:19:42,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:19:44,327.327 INFO    ] ================================================
[2026-08-25 10:19:44,342.342 INFO    ] Launching Daemon at Tue Aug 25 10:19:44 IST 2026
[2026-08-25 10:19:44,353.353 INFO    ] ================================================
[2026-08-25 10:19:44,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:19:44
[2026-08-25 10:19:45,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:19:45,776.776 INFO    ] Initializing speech engine...
[2026-08-25 10:19:45,785.785 INFO    ] 2026-08-25 10:19:45
[2026-08-25 10:19:46,037.037 INFO    ] 2026-08-25 10:19:46
[2026-08-25 10:19:46,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:19:46,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:19:46,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:19:46,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:19:46,502.502 INFO    ] time= 25/08/2026 10:19:46
[2026-08-25 10:19:46,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:19:46,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:19:46,746.746 INFO    ] No existing commands found in stream
[2026-08-25 10:19:51,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:19:51,763.763 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 10:19:55,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:19:55,314.314 INFO    ] Checking for system updates...
[2026-08-25 10:19:55,349.349 INFO    ] 200
[2026-08-25 10:19:55,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:55,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:19:55,408.408 INFO    ] No update needed
[2026-08-25 10:19:55,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 10:19:55,447.447 INFO    ] 200
[2026-08-25 10:19:55,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:19:55,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:19:55,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:19:55,541.541 INFO    ] No camera update needed
[2026-08-25 10:19:55,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:19:55,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:19:55,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:19:55,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:19:57,597.597 INFO    ] ================================================
[2026-08-25 10:19:57,612.612 INFO    ] Launching Daemon at Tue Aug 25 10:19:57 IST 2026
[2026-08-25 10:19:57,623.623 INFO    ] ================================================
[2026-08-25 10:19:58,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:19:58
[2026-08-25 10:19:58,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:19:59,043.043 INFO    ] Initializing speech engine...
[2026-08-25 10:19:59,049.049 INFO    ] 2026-08-25 10:19:59
[2026-08-25 10:19:59,292.292 INFO    ] 2026-08-25 10:19:59
[2026-08-25 10:19:59,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:19:59,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:19:59,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:19:59,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:19:59,772.772 INFO    ] time= 25/08/2026 10:19:59
[2026-08-25 10:19:59,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:19:59,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:20:00,025.025 INFO    ] No existing commands found in stream
[2026-08-25 10:20:05,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:20:05,042.042 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 10:20:08,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:20:08,464.464 INFO    ] Checking for system updates...
[2026-08-25 10:20:08,500.500 INFO    ] 200
[2026-08-25 10:20:08,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:08,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:20:08,560.560 INFO    ] No update needed
[2026-08-25 10:20:08,562.562 INFO    ] Checking for camera pi updates...
[2026-08-25 10:20:08,599.599 INFO    ] 200
[2026-08-25 10:20:08,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:08,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:20:08,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:20:08,698.698 INFO    ] No camera update needed
[2026-08-25 10:20:08,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:20:08,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:20:08,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:20:08,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:20:10,755.755 INFO    ] ================================================
[2026-08-25 10:20:10,770.770 INFO    ] Launching Daemon at Tue Aug 25 10:20:10 IST 2026
[2026-08-25 10:20:10,781.781 INFO    ] ================================================
[2026-08-25 10:20:11,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:20:11
[2026-08-25 10:20:12,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:20:12,366.366 INFO    ] Initializing speech engine...
[2026-08-25 10:20:12,371.371 INFO    ] 2026-08-25 10:20:12
[2026-08-25 10:20:12,650.650 INFO    ] 2026-08-25 10:20:12
[2026-08-25 10:20:12,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:20:12,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:20:12,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:20:13,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:20:13,206.206 INFO    ] time= 25/08/2026 10:20:13
[2026-08-25 10:20:13,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:20:13,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:20:13,375.375 INFO    ] No existing commands found in stream
[2026-08-25 10:20:18,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:20:18,410.410 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 10:20:20,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:20:20,574.574 INFO    ] Checking for system updates...
[2026-08-25 10:20:20,610.610 INFO    ] 200
[2026-08-25 10:20:20,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:20,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:20:20,668.668 INFO    ] No update needed
[2026-08-25 10:20:20,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 10:20:20,703.703 INFO    ] 200
[2026-08-25 10:20:20,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:20,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:20:20,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:20:20,801.801 INFO    ] No camera update needed
[2026-08-25 10:20:20,804.804 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:20:20,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:20:20,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:20:20,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:20:22,859.859 INFO    ] ================================================
[2026-08-25 10:20:22,873.873 INFO    ] Launching Daemon at Tue Aug 25 10:20:22 IST 2026
[2026-08-25 10:20:22,884.884 INFO    ] ================================================
[2026-08-25 10:20:23,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:20:23
[2026-08-25 10:20:24,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:20:24,495.495 INFO    ] Initializing speech engine...
[2026-08-25 10:20:24,508.508 INFO    ] 2026-08-25 10:20:24
[2026-08-25 10:20:24,823.823 INFO    ] 2026-08-25 10:20:24
[2026-08-25 10:20:24,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:20:25,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:20:25,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:20:25,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:20:25,287.287 INFO    ] time= 25/08/2026 10:20:25
[2026-08-25 10:20:25,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:20:25,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:20:25,497.497 INFO    ] No existing commands found in stream
[2026-08-25 10:20:30,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:20:30,514.514 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 10:20:32,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:20:32,152.152 INFO    ] Checking for system updates...
[2026-08-25 10:20:32,191.191 INFO    ] 200
[2026-08-25 10:20:32,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:32,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:20:32,263.263 INFO    ] No update needed
[2026-08-25 10:20:32,265.265 INFO    ] Checking for camera pi updates...
[2026-08-25 10:20:32,302.302 INFO    ] 200
[2026-08-25 10:20:32,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:32,357.357 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:20:32,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:20:32,440.440 INFO    ] No camera update needed
[2026-08-25 10:20:32,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:20:32,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:20:32,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:20:32,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:20:34,500.500 INFO    ] ================================================
[2026-08-25 10:20:34,515.515 INFO    ] Launching Daemon at Tue Aug 25 10:20:34 IST 2026
[2026-08-25 10:20:34,525.525 INFO    ] ================================================
[2026-08-25 10:20:35,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:20:35
[2026-08-25 10:20:35,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:20:35,936.936 INFO    ] Initializing speech engine...
[2026-08-25 10:20:35,945.945 INFO    ] 2026-08-25 10:20:35
[2026-08-25 10:20:36,237.237 INFO    ] 2026-08-25 10:20:36
[2026-08-25 10:20:36,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:20:36,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:20:36,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:20:36,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:20:36,610.610 INFO    ] time= 25/08/2026 10:20:36
[2026-08-25 10:20:36,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:20:36,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:20:36,731.731 INFO    ] No existing commands found in stream
[2026-08-25 10:20:41,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:20:41,744.744 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 10:20:43,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:20:43,211.211 INFO    ] Checking for system updates...
[2026-08-25 10:20:43,247.247 INFO    ] 200
[2026-08-25 10:20:43,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:43,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:20:43,311.311 INFO    ] No update needed
[2026-08-25 10:20:43,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 10:20:43,346.346 INFO    ] 200
[2026-08-25 10:20:43,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:43,393.393 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:20:43,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:20:43,441.441 INFO    ] No camera update needed
[2026-08-25 10:20:43,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:20:43,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:20:43,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:20:43,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:20:45,496.496 INFO    ] ================================================
[2026-08-25 10:20:45,511.511 INFO    ] Launching Daemon at Tue Aug 25 10:20:45 IST 2026
[2026-08-25 10:20:45,522.522 INFO    ] ================================================
[2026-08-25 10:20:46,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:20:46
[2026-08-25 10:20:46,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:20:47,121.121 INFO    ] Initializing speech engine...
[2026-08-25 10:20:47,128.128 INFO    ] 2026-08-25 10:20:47
[2026-08-25 10:20:47,402.402 INFO    ] 2026-08-25 10:20:47
[2026-08-25 10:20:47,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:20:47,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:20:47,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:20:47,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:20:47,950.950 INFO    ] time= 25/08/2026 10:20:47
[2026-08-25 10:20:47,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:20:47,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:20:48,106.106 INFO    ] No existing commands found in stream
[2026-08-25 10:20:53,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:20:53,139.139 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 10:20:57,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:20:57,148.148 INFO    ] Checking for system updates...
[2026-08-25 10:20:57,183.183 INFO    ] 200
[2026-08-25 10:20:57,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:57,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:20:57,240.240 INFO    ] No update needed
[2026-08-25 10:20:57,242.242 INFO    ] Checking for camera pi updates...
[2026-08-25 10:20:57,276.276 INFO    ] 200
[2026-08-25 10:20:57,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:20:57,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:20:57,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:20:57,379.379 INFO    ] No camera update needed
[2026-08-25 10:20:57,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:20:57,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:20:57,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:20:57,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:20:59,434.434 INFO    ] ================================================
[2026-08-25 10:20:59,449.449 INFO    ] Launching Daemon at Tue Aug 25 10:20:59 IST 2026
[2026-08-25 10:20:59,460.460 INFO    ] ================================================
[2026-08-25 10:21:00,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:21:00
[2026-08-25 10:21:00,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:21:01,029.029 INFO    ] Initializing speech engine...
[2026-08-25 10:21:01,039.039 INFO    ] 2026-08-25 10:21:01
[2026-08-25 10:21:01,329.329 INFO    ] 2026-08-25 10:21:01
[2026-08-25 10:21:01,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:21:01,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:21:01,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:21:01,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:21:01,868.868 INFO    ] time= 25/08/2026 10:21:01
[2026-08-25 10:21:01,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:21:01,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:21:01,986.986 INFO    ] No existing commands found in stream
[2026-08-25 10:21:07,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:21:07,009.009 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 10:21:08,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:21:08,381.381 INFO    ] Checking for system updates...
[2026-08-25 10:21:08,416.416 INFO    ] 200
[2026-08-25 10:21:08,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:08,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:21:08,473.473 INFO    ] No update needed
[2026-08-25 10:21:08,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 10:21:08,509.509 INFO    ] 200
[2026-08-25 10:21:08,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:08,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:21:08,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:21:08,612.612 INFO    ] No camera update needed
[2026-08-25 10:21:08,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:21:08,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:21:08,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:21:08,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:21:10,669.669 INFO    ] ================================================
[2026-08-25 10:21:10,684.684 INFO    ] Launching Daemon at Tue Aug 25 10:21:10 IST 2026
[2026-08-25 10:21:10,695.695 INFO    ] ================================================
[2026-08-25 10:21:11,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:21:11
[2026-08-25 10:21:11,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:21:12,161.161 INFO    ] Initializing speech engine...
[2026-08-25 10:21:12,170.170 INFO    ] 2026-08-25 10:21:12
[2026-08-25 10:21:12,415.415 INFO    ] 2026-08-25 10:21:12
[2026-08-25 10:21:12,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:21:12,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:21:12,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:21:12,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:21:12,882.882 INFO    ] time= 25/08/2026 10:21:12
[2026-08-25 10:21:12,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:21:12,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:21:13,118.118 INFO    ] No existing commands found in stream
[2026-08-25 10:21:18,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:21:18,136.136 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 10:21:19,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:21:19,560.560 INFO    ] Checking for system updates...
[2026-08-25 10:21:19,597.597 INFO    ] 200
[2026-08-25 10:21:19,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:19,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:21:19,656.656 INFO    ] No update needed
[2026-08-25 10:21:19,659.659 INFO    ] Checking for camera pi updates...
[2026-08-25 10:21:19,697.697 INFO    ] 200
[2026-08-25 10:21:19,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:19,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:21:19,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:21:19,813.813 INFO    ] No camera update needed
[2026-08-25 10:21:19,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:21:19,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:21:19,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:21:19,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:21:21,872.872 INFO    ] ================================================
[2026-08-25 10:21:21,888.888 INFO    ] Launching Daemon at Tue Aug 25 10:21:21 IST 2026
[2026-08-25 10:21:21,899.899 INFO    ] ================================================
[2026-08-25 10:21:22,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:21:22
[2026-08-25 10:21:23,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:21:23,536.536 INFO    ] Initializing speech engine...
[2026-08-25 10:21:23,550.550 INFO    ] 2026-08-25 10:21:23
[2026-08-25 10:21:23,835.835 INFO    ] 2026-08-25 10:21:23
[2026-08-25 10:21:23,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:21:24,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:21:24,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:21:24,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:21:24,276.276 INFO    ] time= 25/08/2026 10:21:24
[2026-08-25 10:21:24,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:21:24,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:21:24,525.525 INFO    ] No existing commands found in stream
[2026-08-25 10:21:29,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:21:29,546.546 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 10:21:32,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:21:32,629.629 INFO    ] Checking for system updates...
[2026-08-25 10:21:32,666.666 INFO    ] 200
[2026-08-25 10:21:32,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:32,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:21:32,731.731 INFO    ] No update needed
[2026-08-25 10:21:32,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 10:21:32,769.769 INFO    ] 200
[2026-08-25 10:21:32,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:32,819.819 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:21:32,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:21:32,973.973 INFO    ] No camera update needed
[2026-08-25 10:21:32,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:21:32,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:21:32,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:21:32,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:21:35,031.031 INFO    ] ================================================
[2026-08-25 10:21:35,046.046 INFO    ] Launching Daemon at Tue Aug 25 10:21:35 IST 2026
[2026-08-25 10:21:35,057.057 INFO    ] ================================================
[2026-08-25 10:21:35,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:21:35
[2026-08-25 10:21:36,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:21:36,469.469 INFO    ] Initializing speech engine...
[2026-08-25 10:21:36,474.474 INFO    ] 2026-08-25 10:21:36
[2026-08-25 10:21:36,779.779 INFO    ] 2026-08-25 10:21:36
[2026-08-25 10:21:36,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:21:37,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:21:37,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:21:37,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:21:37,172.172 INFO    ] time= 25/08/2026 10:21:37
[2026-08-25 10:21:37,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:21:37,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:21:37,300.300 INFO    ] No existing commands found in stream
[2026-08-25 10:21:42,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:21:42,315.315 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 10:21:45,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:21:45,040.040 INFO    ] Checking for system updates...
[2026-08-25 10:21:45,076.076 INFO    ] 200
[2026-08-25 10:21:45,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:45,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:21:45,133.133 INFO    ] No update needed
[2026-08-25 10:21:45,135.135 INFO    ] Checking for camera pi updates...
[2026-08-25 10:21:45,169.169 INFO    ] 200
[2026-08-25 10:21:45,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:45,211.211 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:21:45,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:21:45,269.269 INFO    ] No camera update needed
[2026-08-25 10:21:45,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:21:45,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:21:45,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:21:45,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:21:47,324.324 INFO    ] ================================================
[2026-08-25 10:21:47,339.339 INFO    ] Launching Daemon at Tue Aug 25 10:21:47 IST 2026
[2026-08-25 10:21:47,349.349 INFO    ] ================================================
[2026-08-25 10:21:47,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:21:47
[2026-08-25 10:21:48,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:21:48,805.805 INFO    ] Initializing speech engine...
[2026-08-25 10:21:48,829.829 INFO    ] 2026-08-25 10:21:48
[2026-08-25 10:21:49,111.111 INFO    ] 2026-08-25 10:21:49
[2026-08-25 10:21:49,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:21:49,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:21:49,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:21:49,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:21:49,545.545 INFO    ] time= 25/08/2026 10:21:49
[2026-08-25 10:21:49,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:21:49,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:21:49,632.632 INFO    ] No existing commands found in stream
[2026-08-25 10:21:54,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:21:54,648.648 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 10:21:57,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:21:57,619.619 INFO    ] Checking for system updates...
[2026-08-25 10:21:57,661.661 INFO    ] 200
[2026-08-25 10:21:57,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:57,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:21:57,740.740 INFO    ] No update needed
[2026-08-25 10:21:57,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 10:21:57,783.783 INFO    ] 200
[2026-08-25 10:21:57,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:21:57,835.835 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:21:57,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:21:57,883.883 INFO    ] No camera update needed
[2026-08-25 10:21:57,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:21:57,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:21:57,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:21:57,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:21:59,939.939 INFO    ] ================================================
[2026-08-25 10:21:59,956.956 INFO    ] Launching Daemon at Tue Aug 25 10:21:59 IST 2026
[2026-08-25 10:21:59,966.966 INFO    ] ================================================
[2026-08-25 10:22:00,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:22:00
[2026-08-25 10:22:01,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:22:01,396.396 INFO    ] Initializing speech engine...
[2026-08-25 10:22:01,404.404 INFO    ] 2026-08-25 10:22:01
[2026-08-25 10:22:01,676.676 INFO    ] 2026-08-25 10:22:01
[2026-08-25 10:22:01,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:22:01,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:22:01,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:22:02,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:22:02,093.093 INFO    ] time= 25/08/2026 10:22:02
[2026-08-25 10:22:02,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:22:02,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:22:02,249.249 INFO    ] No existing commands found in stream
[2026-08-25 10:22:07,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:22:07,262.262 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 10:22:08,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:22:08,910.910 INFO    ] Checking for system updates...
[2026-08-25 10:22:08,946.946 INFO    ] 200
[2026-08-25 10:22:08,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:09,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:09,008.008 INFO    ] No update needed
[2026-08-25 10:22:09,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 10:22:09,045.045 INFO    ] 200
[2026-08-25 10:22:09,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:09,091.091 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:22:09,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:09,139.139 INFO    ] No camera update needed
[2026-08-25 10:22:09,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:22:09,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:22:09,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:22:09,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:22:11,195.195 INFO    ] ================================================
[2026-08-25 10:22:11,210.210 INFO    ] Launching Daemon at Tue Aug 25 10:22:11 IST 2026
[2026-08-25 10:22:11,221.221 INFO    ] ================================================
[2026-08-25 10:22:11,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:22:11
[2026-08-25 10:22:12,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:22:12,655.655 INFO    ] Initializing speech engine...
[2026-08-25 10:22:12,663.663 INFO    ] 2026-08-25 10:22:12
[2026-08-25 10:22:12,938.938 INFO    ] 2026-08-25 10:22:12
[2026-08-25 10:22:12,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:22:13,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:22:13,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:22:13,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:22:13,386.386 INFO    ] time= 25/08/2026 10:22:13
[2026-08-25 10:22:13,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:22:13,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:22:13,592.592 INFO    ] No existing commands found in stream
[2026-08-25 10:22:18,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:22:18,630.630 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 10:22:21,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:22:21,612.612 INFO    ] Checking for system updates...
[2026-08-25 10:22:21,658.658 INFO    ] 200
[2026-08-25 10:22:21,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:21,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:21,718.718 INFO    ] No update needed
[2026-08-25 10:22:21,721.721 INFO    ] Checking for camera pi updates...
[2026-08-25 10:22:21,757.757 INFO    ] 200
[2026-08-25 10:22:21,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:21,801.801 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:22:21,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:21,855.855 INFO    ] No camera update needed
[2026-08-25 10:22:21,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:22:21,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:22:21,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:22:21,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:22:23,915.915 INFO    ] ================================================
[2026-08-25 10:22:23,930.930 INFO    ] Launching Daemon at Tue Aug 25 10:22:23 IST 2026
[2026-08-25 10:22:23,942.942 INFO    ] ================================================
[2026-08-25 10:22:24,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:22:24
[2026-08-25 10:22:25,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:22:25,408.408 INFO    ] Initializing speech engine...
[2026-08-25 10:22:25,417.417 INFO    ] 2026-08-25 10:22:25
[2026-08-25 10:22:25,668.668 INFO    ] 2026-08-25 10:22:25
[2026-08-25 10:22:25,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:22:25,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:22:25,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:22:26,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:22:26,168.168 INFO    ] time= 25/08/2026 10:22:26
[2026-08-25 10:22:26,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:22:26,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:22:26,384.384 INFO    ] No existing commands found in stream
[2026-08-25 10:22:31,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:22:31,405.405 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 10:22:35,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:22:35,183.183 INFO    ] Checking for system updates...
[2026-08-25 10:22:35,220.220 INFO    ] 200
[2026-08-25 10:22:35,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:35,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:35,300.300 INFO    ] No update needed
[2026-08-25 10:22:35,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 10:22:35,345.345 INFO    ] 200
[2026-08-25 10:22:35,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:35,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:22:35,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:35,449.449 INFO    ] No camera update needed
[2026-08-25 10:22:35,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:22:35,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:22:35,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:22:35,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:22:37,509.509 INFO    ] ================================================
[2026-08-25 10:22:37,524.524 INFO    ] Launching Daemon at Tue Aug 25 10:22:37 IST 2026
[2026-08-25 10:22:37,534.534 INFO    ] ================================================
[2026-08-25 10:22:38,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:22:38
[2026-08-25 10:22:38,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:22:39,000.000 INFO    ] Initializing speech engine...
[2026-08-25 10:22:39,007.007 INFO    ] 2026-08-25 10:22:39
[2026-08-25 10:22:39,268.268 INFO    ] 2026-08-25 10:22:39
[2026-08-25 10:22:39,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:22:39,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:22:39,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:22:39,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:22:39,737.737 INFO    ] time= 25/08/2026 10:22:39
[2026-08-25 10:22:39,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:22:39,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:22:39,944.944 INFO    ] No existing commands found in stream
[2026-08-25 10:22:44,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:22:44,974.974 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 10:22:48,898.898 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:22:48,901.901 INFO    ] Checking for system updates...
[2026-08-25 10:22:48,940.940 INFO    ] 200
[2026-08-25 10:22:48,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:48,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:48,998.998 INFO    ] No update needed
[2026-08-25 10:22:49,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 10:22:49,035.035 INFO    ] 200
[2026-08-25 10:22:49,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:22:49,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:22:49,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:22:49,137.137 INFO    ] No camera update needed
[2026-08-25 10:22:49,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:22:49,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:22:49,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:22:49,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:22:51,196.196 INFO    ] ================================================
[2026-08-25 10:22:51,211.211 INFO    ] Launching Daemon at Tue Aug 25 10:22:51 IST 2026
[2026-08-25 10:22:51,222.222 INFO    ] ================================================
[2026-08-25 10:22:51,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:22:51
[2026-08-25 10:22:52,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:22:52,634.634 INFO    ] Initializing speech engine...
[2026-08-25 10:22:52,648.648 INFO    ] 2026-08-25 10:22:52
[2026-08-25 10:22:52,903.903 INFO    ] 2026-08-25 10:22:52
[2026-08-25 10:22:52,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:22:53,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:22:53,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:22:53,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:22:53,283.283 INFO    ] time= 25/08/2026 10:22:53
[2026-08-25 10:22:53,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:22:53,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:22:53,471.471 INFO    ] No existing commands found in stream
[2026-08-25 10:22:58,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:22:58,493.493 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 10:23:01,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:23:01,207.207 INFO    ] Checking for system updates...
[2026-08-25 10:23:01,243.243 INFO    ] 200
[2026-08-25 10:23:01,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:01,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:01,302.302 INFO    ] No update needed
[2026-08-25 10:23:01,305.305 INFO    ] Checking for camera pi updates...
[2026-08-25 10:23:01,340.340 INFO    ] 200
[2026-08-25 10:23:01,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:01,385.385 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:23:01,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:01,490.490 INFO    ] No camera update needed
[2026-08-25 10:23:01,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:23:01,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:23:01,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:23:01,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:23:03,553.553 INFO    ] ================================================
[2026-08-25 10:23:03,569.569 INFO    ] Launching Daemon at Tue Aug 25 10:23:03 IST 2026
[2026-08-25 10:23:03,580.580 INFO    ] ================================================
[2026-08-25 10:23:04,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:23:04
[2026-08-25 10:23:04,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:23:05,268.268 INFO    ] Initializing speech engine...
[2026-08-25 10:23:05,280.280 INFO    ] 2026-08-25 10:23:05
[2026-08-25 10:23:05,567.567 INFO    ] 2026-08-25 10:23:05
[2026-08-25 10:23:05,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:23:05,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:23:05,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:23:05,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:23:06,056.056 INFO    ] time= 25/08/2026 10:23:05
[2026-08-25 10:23:06,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:23:06,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:23:06,262.262 INFO    ] No existing commands found in stream
[2026-08-25 10:23:11,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:23:11,283.283 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 10:23:12,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:23:12,320.320 INFO    ] Checking for system updates...
[2026-08-25 10:23:12,363.363 INFO    ] 200
[2026-08-25 10:23:12,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:12,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:12,431.431 INFO    ] No update needed
[2026-08-25 10:23:12,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 10:23:12,469.469 INFO    ] 200
[2026-08-25 10:23:12,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:12,519.519 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:23:12,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:12,568.568 INFO    ] No camera update needed
[2026-08-25 10:23:12,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:23:12,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:23:12,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:23:12,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:23:14,625.625 INFO    ] ================================================
[2026-08-25 10:23:14,641.641 INFO    ] Launching Daemon at Tue Aug 25 10:23:14 IST 2026
[2026-08-25 10:23:14,651.651 INFO    ] ================================================
[2026-08-25 10:23:15,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:23:15
[2026-08-25 10:23:16,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:23:16,317.317 INFO    ] Initializing speech engine...
[2026-08-25 10:23:16,329.329 INFO    ] 2026-08-25 10:23:16
[2026-08-25 10:23:16,640.640 INFO    ] 2026-08-25 10:23:16
[2026-08-25 10:23:16,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:23:16,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:23:16,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:23:17,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:23:17,153.153 INFO    ] time= 25/08/2026 10:23:17
[2026-08-25 10:23:17,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:23:17,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:23:17,306.306 INFO    ] No existing commands found in stream
[2026-08-25 10:23:22,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:23:22,327.327 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 10:23:25,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:23:25,088.088 INFO    ] Checking for system updates...
[2026-08-25 10:23:25,125.125 INFO    ] 200
[2026-08-25 10:23:25,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:25,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:23:25,184.184 INFO    ] No update needed
[2026-08-25 10:23:25,187.187 INFO    ] Checking for camera pi updates...
[2026-08-25 10:23:25,226.226 INFO    ] 200
[2026-08-25 10:23:25,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:25,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:23:25,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:23:25,330.330 INFO    ] No camera update needed
[2026-08-25 10:23:25,333.333 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:23:25,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:23:25,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:23:25,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:23:27,389.389 INFO    ] ================================================
[2026-08-25 10:23:27,404.404 INFO    ] Launching Daemon at Tue Aug 25 10:23:27 IST 2026
[2026-08-25 10:23:27,415.415 INFO    ] ================================================
[2026-08-25 10:23:27,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:23:27
[2026-08-25 10:23:28,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:23:28,833.833 INFO    ] Initializing speech engine...
[2026-08-25 10:23:28,841.841 INFO    ] 2026-08-25 10:23:28
[2026-08-25 10:23:29,142.142 INFO    ] 2026-08-25 10:23:29
[2026-08-25 10:23:29,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:23:29,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:23:29,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:23:29,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:23:29,541.541 INFO    ] time= 25/08/2026 10:23:29
[2026-08-25 10:23:29,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:23:29,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:23:29,658.658 INFO    ] No existing commands found in stream
[2026-08-25 10:23:34,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:23:34,672.672 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 10:23:36,386.386 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:23:36,388.388 INFO    ] Checking for system updates...
[2026-08-25 10:23:36,423.423 INFO    ] 200
[2026-08-25 10:23:36,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:36,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:23:36,481.481 INFO    ] No update needed
[2026-08-25 10:23:36,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 10:23:36,517.517 INFO    ] 200
[2026-08-25 10:23:36,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:36,566.566 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:23:36,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:23:36,712.712 INFO    ] No camera update needed
[2026-08-25 10:23:36,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:23:36,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:23:36,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:23:36,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:23:38,766.766 INFO    ] ================================================
[2026-08-25 10:23:38,781.781 INFO    ] Launching Daemon at Tue Aug 25 10:23:38 IST 2026
[2026-08-25 10:23:38,792.792 INFO    ] ================================================
[2026-08-25 10:23:39,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:23:39
[2026-08-25 10:23:40,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:23:40,332.332 INFO    ] Initializing speech engine...
[2026-08-25 10:23:40,338.338 INFO    ] 2026-08-25 10:23:40
[2026-08-25 10:23:40,583.583 INFO    ] 2026-08-25 10:23:40
[2026-08-25 10:23:40,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:23:40,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:23:40,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:23:41,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:23:41,070.070 INFO    ] time= 25/08/2026 10:23:41
[2026-08-25 10:23:41,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:23:41,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:23:41,289.289 INFO    ] No existing commands found in stream
[2026-08-25 10:23:46,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:23:46,320.320 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 10:23:47,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:23:47,768.768 INFO    ] Checking for system updates...
[2026-08-25 10:23:47,803.803 INFO    ] 200
[2026-08-25 10:23:47,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:47,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:47,860.860 INFO    ] No update needed
[2026-08-25 10:23:47,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 10:23:47,897.897 INFO    ] 200
[2026-08-25 10:23:47,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:47,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:23:47,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:47,986.986 INFO    ] No camera update needed
[2026-08-25 10:23:47,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:23:47,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:23:47,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:23:48,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:23:50,042.042 INFO    ] ================================================
[2026-08-25 10:23:50,057.057 INFO    ] Launching Daemon at Tue Aug 25 10:23:50 IST 2026
[2026-08-25 10:23:50,068.068 INFO    ] ================================================
[2026-08-25 10:23:50,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:23:50
[2026-08-25 10:23:51,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:23:51,484.484 INFO    ] Initializing speech engine...
[2026-08-25 10:23:51,492.492 INFO    ] 2026-08-25 10:23:51
[2026-08-25 10:23:51,738.738 INFO    ] 2026-08-25 10:23:51
[2026-08-25 10:23:51,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:23:52,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:23:52,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:23:52,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:23:52,297.297 INFO    ] time= 25/08/2026 10:23:52
[2026-08-25 10:23:52,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:23:52,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:23:52,496.496 INFO    ] No existing commands found in stream
[2026-08-25 10:23:57,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:23:57,521.521 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 10:23:58,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:23:58,969.969 INFO    ] Checking for system updates...
[2026-08-25 10:23:59,006.006 INFO    ] 200
[2026-08-25 10:23:59,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:59,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:59,066.066 INFO    ] No update needed
[2026-08-25 10:23:59,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 10:23:59,104.104 INFO    ] 200
[2026-08-25 10:23:59,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:23:59,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:23:59,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:23:59,204.204 INFO    ] No camera update needed
[2026-08-25 10:23:59,207.207 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:23:59,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:23:59,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:23:59,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:24:01,259.259 INFO    ] ================================================
[2026-08-25 10:24:01,274.274 INFO    ] Launching Daemon at Tue Aug 25 10:24:01 IST 2026
[2026-08-25 10:24:01,284.284 INFO    ] ================================================
[2026-08-25 10:24:01,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:24:01
[2026-08-25 10:24:02,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:24:02,927.927 INFO    ] Initializing speech engine...
[2026-08-25 10:24:02,944.944 INFO    ] 2026-08-25 10:24:02
[2026-08-25 10:24:03,249.249 INFO    ] 2026-08-25 10:24:03
[2026-08-25 10:24:03,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:24:03,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:24:03,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:24:03,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:24:03,715.715 INFO    ] time= 25/08/2026 10:24:03
[2026-08-25 10:24:03,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:24:03,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:24:03,830.830 INFO    ] No existing commands found in stream
[2026-08-25 10:24:08,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:24:08,845.845 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 10:24:12,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:24:12,102.102 INFO    ] Checking for system updates...
[2026-08-25 10:24:12,140.140 INFO    ] 200
[2026-08-25 10:24:12,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:12,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:24:12,198.198 INFO    ] No update needed
[2026-08-25 10:24:12,200.200 INFO    ] Checking for camera pi updates...
[2026-08-25 10:24:12,237.237 INFO    ] 200
[2026-08-25 10:24:12,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:12,284.284 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:24:12,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:24:12,336.336 INFO    ] No camera update needed
[2026-08-25 10:24:12,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:24:12,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:24:12,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:24:12,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:24:14,391.391 INFO    ] ================================================
[2026-08-25 10:24:14,406.406 INFO    ] Launching Daemon at Tue Aug 25 10:24:14 IST 2026
[2026-08-25 10:24:14,417.417 INFO    ] ================================================
[2026-08-25 10:24:15,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:24:15
[2026-08-25 10:24:15,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:24:15,864.864 INFO    ] Initializing speech engine...
[2026-08-25 10:24:15,873.873 INFO    ] 2026-08-25 10:24:15
[2026-08-25 10:24:16,120.120 INFO    ] 2026-08-25 10:24:16
[2026-08-25 10:24:16,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:24:16,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:24:16,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:24:16,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:24:16,583.583 INFO    ] time= 25/08/2026 10:24:16
[2026-08-25 10:24:16,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:24:16,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:24:16,812.812 INFO    ] No existing commands found in stream
[2026-08-25 10:24:21,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:24:21,842.842 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 10:24:25,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:24:25,848.848 INFO    ] Checking for system updates...
[2026-08-25 10:24:25,885.885 INFO    ] 200
[2026-08-25 10:24:25,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:25,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:24:25,944.944 INFO    ] No update needed
[2026-08-25 10:24:25,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 10:24:25,981.981 INFO    ] 200
[2026-08-25 10:24:25,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:26,028.028 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:24:26,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:24:26,080.080 INFO    ] No camera update needed
[2026-08-25 10:24:26,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:24:26,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:24:26,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:24:26,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:24:28,134.134 INFO    ] ================================================
[2026-08-25 10:24:28,149.149 INFO    ] Launching Daemon at Tue Aug 25 10:24:28 IST 2026
[2026-08-25 10:24:28,160.160 INFO    ] ================================================
[2026-08-25 10:24:28,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:24:28
[2026-08-25 10:24:29,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:24:29,625.625 INFO    ] Initializing speech engine...
[2026-08-25 10:24:29,630.630 INFO    ] 2026-08-25 10:24:29
[2026-08-25 10:24:29,904.904 INFO    ] 2026-08-25 10:24:29
[2026-08-25 10:24:29,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:24:30,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:24:30,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:24:30,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:24:30,379.379 INFO    ] time= 25/08/2026 10:24:30
[2026-08-25 10:24:30,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:24:30,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:24:30,582.582 INFO    ] No existing commands found in stream
[2026-08-25 10:24:35,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:24:35,601.601 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 10:24:39,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:24:39,196.196 INFO    ] Checking for system updates...
[2026-08-25 10:24:39,234.234 INFO    ] 200
[2026-08-25 10:24:39,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:39,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:24:39,291.291 INFO    ] No update needed
[2026-08-25 10:24:39,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 10:24:39,327.327 INFO    ] 200
[2026-08-25 10:24:39,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:39,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:24:39,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:24:39,422.422 INFO    ] No camera update needed
[2026-08-25 10:24:39,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:24:39,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:24:39,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:24:39,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:24:41,478.478 INFO    ] ================================================
[2026-08-25 10:24:41,493.493 INFO    ] Launching Daemon at Tue Aug 25 10:24:41 IST 2026
[2026-08-25 10:24:41,504.504 INFO    ] ================================================
[2026-08-25 10:24:42,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:24:42
[2026-08-25 10:24:42,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:24:42,946.946 INFO    ] Initializing speech engine...
[2026-08-25 10:24:42,959.959 INFO    ] 2026-08-25 10:24:42
[2026-08-25 10:24:43,221.221 INFO    ] 2026-08-25 10:24:43
[2026-08-25 10:24:43,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:24:43,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:24:43,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:24:43,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:24:43,677.677 INFO    ] time= 25/08/2026 10:24:43
[2026-08-25 10:24:43,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:24:43,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:24:43,895.895 INFO    ] No existing commands found in stream
[2026-08-25 10:24:48,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:24:48,923.923 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 10:24:53,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:24:53,307.307 INFO    ] Checking for system updates...
[2026-08-25 10:24:53,343.343 INFO    ] 200
[2026-08-25 10:24:53,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:53,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:24:53,409.409 INFO    ] No update needed
[2026-08-25 10:24:53,411.411 INFO    ] Checking for camera pi updates...
[2026-08-25 10:24:53,447.447 INFO    ] 200
[2026-08-25 10:24:53,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:24:53,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:24:53,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:24:53,548.548 INFO    ] No camera update needed
[2026-08-25 10:24:53,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:24:53,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:24:53,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:24:53,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:24:55,603.603 INFO    ] ================================================
[2026-08-25 10:24:55,623.623 INFO    ] Launching Daemon at Tue Aug 25 10:24:55 IST 2026
[2026-08-25 10:24:55,634.634 INFO    ] ================================================
[2026-08-25 10:24:56,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:24:56
[2026-08-25 10:24:56,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:24:57,112.112 INFO    ] Initializing speech engine...
[2026-08-25 10:24:57,118.118 INFO    ] 2026-08-25 10:24:57
[2026-08-25 10:24:57,378.378 INFO    ] 2026-08-25 10:24:57
[2026-08-25 10:24:57,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:24:57,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:24:57,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:24:57,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:24:57,837.837 INFO    ] time= 25/08/2026 10:24:57
[2026-08-25 10:24:57,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:24:57,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:24:58,076.076 INFO    ] No existing commands found in stream
[2026-08-25 10:25:03,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:25:03,098.098 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 10:25:07,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:25:07,510.510 INFO    ] Checking for system updates...
[2026-08-25 10:25:07,545.545 INFO    ] 200
[2026-08-25 10:25:07,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:07,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:25:07,602.602 INFO    ] No update needed
[2026-08-25 10:25:07,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 10:25:07,644.644 INFO    ] 200
[2026-08-25 10:25:07,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:07,688.688 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:25:07,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:25:07,755.755 INFO    ] No camera update needed
[2026-08-25 10:25:07,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:25:07,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:25:07,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:25:07,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:25:09,812.812 INFO    ] ================================================
[2026-08-25 10:25:09,828.828 INFO    ] Launching Daemon at Tue Aug 25 10:25:09 IST 2026
[2026-08-25 10:25:09,839.839 INFO    ] ================================================
[2026-08-25 10:25:10,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:25:10
[2026-08-25 10:25:11,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:25:11,283.283 INFO    ] Initializing speech engine...
[2026-08-25 10:25:11,291.291 INFO    ] 2026-08-25 10:25:11
[2026-08-25 10:25:11,542.542 INFO    ] 2026-08-25 10:25:11
[2026-08-25 10:25:11,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:25:11,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:25:11,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:25:11,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:25:12,033.033 INFO    ] time= 25/08/2026 10:25:11
[2026-08-25 10:25:12,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:25:12,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:25:12,239.239 INFO    ] No existing commands found in stream
[2026-08-25 10:25:17,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:25:17,267.267 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 10:25:19,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:25:19,398.398 INFO    ] Checking for system updates...
[2026-08-25 10:25:19,436.436 INFO    ] 200
[2026-08-25 10:25:19,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:19,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:25:19,498.498 INFO    ] No update needed
[2026-08-25 10:25:19,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 10:25:19,534.534 INFO    ] 200
[2026-08-25 10:25:19,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:19,581.581 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:25:19,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:25:19,634.634 INFO    ] No camera update needed
[2026-08-25 10:25:19,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:25:19,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:25:19,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:25:19,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:25:21,690.690 INFO    ] ================================================
[2026-08-25 10:25:21,705.705 INFO    ] Launching Daemon at Tue Aug 25 10:25:21 IST 2026
[2026-08-25 10:25:21,716.716 INFO    ] ================================================
[2026-08-25 10:25:22,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:25:22
[2026-08-25 10:25:23,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:25:23,334.334 INFO    ] Initializing speech engine...
[2026-08-25 10:25:23,347.347 INFO    ] 2026-08-25 10:25:23
[2026-08-25 10:25:23,600.600 INFO    ] 2026-08-25 10:25:23
[2026-08-25 10:25:23,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:25:23,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:25:23,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:25:24,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:25:24,143.143 INFO    ] time= 25/08/2026 10:25:24
[2026-08-25 10:25:24,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:25:24,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:25:24,292.292 INFO    ] No existing commands found in stream
[2026-08-25 10:25:29,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:25:29,311.311 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 10:25:29,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:25:29,838.838 INFO    ] Checking for system updates...
[2026-08-25 10:25:29,877.877 INFO    ] 200
[2026-08-25 10:25:29,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:29,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:25:29,934.934 INFO    ] No update needed
[2026-08-25 10:25:29,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 10:25:29,973.973 INFO    ] 200
[2026-08-25 10:25:29,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:30,021.021 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:25:30,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:25:30,073.073 INFO    ] No camera update needed
[2026-08-25 10:25:30,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:25:30,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:25:30,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:25:30,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:25:32,128.128 INFO    ] ================================================
[2026-08-25 10:25:32,146.146 INFO    ] Launching Daemon at Tue Aug 25 10:25:32 IST 2026
[2026-08-25 10:25:32,157.157 INFO    ] ================================================
[2026-08-25 10:25:32,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:25:32
[2026-08-25 10:25:33,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:25:33,816.816 INFO    ] Initializing speech engine...
[2026-08-25 10:25:33,825.825 INFO    ] 2026-08-25 10:25:33
[2026-08-25 10:25:34,083.083 INFO    ] 2026-08-25 10:25:34
[2026-08-25 10:25:34,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:25:34,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:25:34,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:25:34,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:25:34,552.552 INFO    ] time= 25/08/2026 10:25:34
[2026-08-25 10:25:34,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:25:34,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:25:34,784.784 INFO    ] No existing commands found in stream
[2026-08-25 10:25:39,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:25:39,806.806 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 10:25:43,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:25:43,355.355 INFO    ] Checking for system updates...
[2026-08-25 10:25:43,392.392 INFO    ] 200
[2026-08-25 10:25:43,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:43,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:25:43,453.453 INFO    ] No update needed
[2026-08-25 10:25:43,455.455 INFO    ] Checking for camera pi updates...
[2026-08-25 10:25:43,488.488 INFO    ] 200
[2026-08-25 10:25:43,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:43,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:25:43,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:25:43,679.679 INFO    ] No camera update needed
[2026-08-25 10:25:43,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:25:43,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:25:43,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:25:43,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:25:45,734.734 INFO    ] ================================================
[2026-08-25 10:25:45,750.750 INFO    ] Launching Daemon at Tue Aug 25 10:25:45 IST 2026
[2026-08-25 10:25:45,761.761 INFO    ] ================================================
[2026-08-25 10:25:46,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:25:46
[2026-08-25 10:25:46,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:25:47,200.200 INFO    ] Initializing speech engine...
[2026-08-25 10:25:47,209.209 INFO    ] 2026-08-25 10:25:47
[2026-08-25 10:25:47,470.470 INFO    ] 2026-08-25 10:25:47
[2026-08-25 10:25:47,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:25:47,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:25:47,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:25:47,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:25:47,952.952 INFO    ] time= 25/08/2026 10:25:47
[2026-08-25 10:25:48,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:25:48,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:25:48,166.166 INFO    ] No existing commands found in stream
[2026-08-25 10:25:53,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:25:53,191.191 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 10:25:57,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:25:57,124.124 INFO    ] Checking for system updates...
[2026-08-25 10:25:57,161.161 INFO    ] 200
[2026-08-25 10:25:57,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:57,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:25:57,227.227 INFO    ] No update needed
[2026-08-25 10:25:57,230.230 INFO    ] Checking for camera pi updates...
[2026-08-25 10:25:57,267.267 INFO    ] 200
[2026-08-25 10:25:57,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:25:57,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:25:57,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:25:57,382.382 INFO    ] No camera update needed
[2026-08-25 10:25:57,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:25:57,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:25:57,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:25:57,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:25:59,441.441 INFO    ] ================================================
[2026-08-25 10:25:59,457.457 INFO    ] Launching Daemon at Tue Aug 25 10:25:59 IST 2026
[2026-08-25 10:25:59,468.468 INFO    ] ================================================
[2026-08-25 10:26:00,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:26:00
[2026-08-25 10:26:00,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:26:01,068.068 INFO    ] Initializing speech engine...
[2026-08-25 10:26:01,081.081 INFO    ] 2026-08-25 10:26:01
[2026-08-25 10:26:01,487.487 INFO    ] 2026-08-25 10:26:01
[2026-08-25 10:26:01,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:26:01,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:26:01,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:26:01,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:26:01,872.872 INFO    ] time= 25/08/2026 10:26:01
[2026-08-25 10:26:01,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:26:01,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:26:01,980.980 INFO    ] No existing commands found in stream
[2026-08-25 10:26:06,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:26:06,998.998 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 10:26:07,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:26:07,750.750 INFO    ] Checking for system updates...
[2026-08-25 10:26:07,790.790 INFO    ] 200
[2026-08-25 10:26:07,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:07,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:26:07,851.851 INFO    ] No update needed
[2026-08-25 10:26:07,853.853 INFO    ] Checking for camera pi updates...
[2026-08-25 10:26:07,889.889 INFO    ] 200
[2026-08-25 10:26:07,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:07,934.934 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:26:07,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:26:07,997.997 INFO    ] No camera update needed
[2026-08-25 10:26:07,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:26:08,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:26:08,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:26:08,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:26:10,052.052 INFO    ] ================================================
[2026-08-25 10:26:10,067.067 INFO    ] Launching Daemon at Tue Aug 25 10:26:10 IST 2026
[2026-08-25 10:26:10,078.078 INFO    ] ================================================
[2026-08-25 10:26:10,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:26:10
[2026-08-25 10:26:11,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:26:11,521.521 INFO    ] Initializing speech engine...
[2026-08-25 10:26:11,528.528 INFO    ] 2026-08-25 10:26:11
[2026-08-25 10:26:11,797.797 INFO    ] 2026-08-25 10:26:11
[2026-08-25 10:26:11,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:26:12,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:26:12,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:26:12,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:26:12,297.297 INFO    ] time= 25/08/2026 10:26:12
[2026-08-25 10:26:12,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:26:12,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:26:12,515.515 INFO    ] No existing commands found in stream
[2026-08-25 10:26:17,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:26:17,532.532 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 10:26:21,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:26:21,367.367 INFO    ] Checking for system updates...
[2026-08-25 10:26:21,403.403 INFO    ] 200
[2026-08-25 10:26:21,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:21,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:26:21,466.466 INFO    ] No update needed
[2026-08-25 10:26:21,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 10:26:21,503.503 INFO    ] 200
[2026-08-25 10:26:21,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:21,547.547 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:26:21,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:26:21,595.595 INFO    ] No camera update needed
[2026-08-25 10:26:21,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:26:21,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:26:21,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:26:21,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:26:23,653.653 INFO    ] ================================================
[2026-08-25 10:26:23,669.669 INFO    ] Launching Daemon at Tue Aug 25 10:26:23 IST 2026
[2026-08-25 10:26:23,679.679 INFO    ] ================================================
[2026-08-25 10:26:24,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:26:24
[2026-08-25 10:26:24,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:26:25,141.141 INFO    ] Initializing speech engine...
[2026-08-25 10:26:25,151.151 INFO    ] 2026-08-25 10:26:25
[2026-08-25 10:26:25,415.415 INFO    ] 2026-08-25 10:26:25
[2026-08-25 10:26:25,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:26:25,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:26:25,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:26:25,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:26:25,813.813 INFO    ] time= 25/08/2026 10:26:25
[2026-08-25 10:26:25,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:26:25,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:26:26,012.012 INFO    ] No existing commands found in stream
[2026-08-25 10:26:31,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:26:31,025.025 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 10:26:32,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:26:32,467.467 INFO    ] Checking for system updates...
[2026-08-25 10:26:32,509.509 INFO    ] 200
[2026-08-25 10:26:32,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:32,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:26:32,586.586 INFO    ] No update needed
[2026-08-25 10:26:32,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 10:26:32,624.624 INFO    ] 200
[2026-08-25 10:26:32,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:32,670.670 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:26:32,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:26:32,736.736 INFO    ] No camera update needed
[2026-08-25 10:26:32,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:26:32,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:26:32,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:26:32,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:26:34,791.791 INFO    ] ================================================
[2026-08-25 10:26:34,806.806 INFO    ] Launching Daemon at Tue Aug 25 10:26:34 IST 2026
[2026-08-25 10:26:34,817.817 INFO    ] ================================================
[2026-08-25 10:26:35,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:26:35
[2026-08-25 10:26:36,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:26:36,396.396 INFO    ] Initializing speech engine...
[2026-08-25 10:26:36,402.402 INFO    ] 2026-08-25 10:26:36
[2026-08-25 10:26:36,672.672 INFO    ] 2026-08-25 10:26:36
[2026-08-25 10:26:36,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:26:36,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:26:36,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:26:37,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:26:37,170.170 INFO    ] time= 25/08/2026 10:26:37
[2026-08-25 10:26:37,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:26:37,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:26:37,378.378 INFO    ] No existing commands found in stream
[2026-08-25 10:26:42,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:26:42,410.410 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 10:26:44,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:26:44,857.857 INFO    ] Checking for system updates...
[2026-08-25 10:26:44,896.896 INFO    ] 200
[2026-08-25 10:26:44,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:44,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:26:44,960.960 INFO    ] No update needed
[2026-08-25 10:26:44,962.962 INFO    ] Checking for camera pi updates...
[2026-08-25 10:26:45,000.000 INFO    ] 200
[2026-08-25 10:26:45,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:45,049.049 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:26:45,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:26:45,103.103 INFO    ] No camera update needed
[2026-08-25 10:26:45,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:26:45,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:26:45,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:26:45,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:26:47,160.160 INFO    ] ================================================
[2026-08-25 10:26:47,176.176 INFO    ] Launching Daemon at Tue Aug 25 10:26:47 IST 2026
[2026-08-25 10:26:47,187.187 INFO    ] ================================================
[2026-08-25 10:26:47,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:26:47
[2026-08-25 10:26:48,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:26:48,592.592 INFO    ] Initializing speech engine...
[2026-08-25 10:26:48,616.616 INFO    ] 2026-08-25 10:26:48
[2026-08-25 10:26:48,885.885 INFO    ] 2026-08-25 10:26:48
[2026-08-25 10:26:48,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:26:49,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:26:49,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:26:49,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:26:49,250.250 INFO    ] time= 25/08/2026 10:26:49
[2026-08-25 10:26:49,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:26:49,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:26:49,370.370 INFO    ] No existing commands found in stream
[2026-08-25 10:26:54,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:26:54,385.385 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 10:26:58,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:26:58,366.366 INFO    ] Checking for system updates...
[2026-08-25 10:26:58,401.401 INFO    ] 200
[2026-08-25 10:26:58,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:58,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:26:58,459.459 INFO    ] No update needed
[2026-08-25 10:26:58,461.461 INFO    ] Checking for camera pi updates...
[2026-08-25 10:26:58,495.495 INFO    ] 200
[2026-08-25 10:26:58,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:26:58,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:26:58,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:26:58,584.584 INFO    ] No camera update needed
[2026-08-25 10:26:58,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:26:58,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:26:58,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:26:58,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:27:00,638.638 INFO    ] ================================================
[2026-08-25 10:27:00,653.653 INFO    ] Launching Daemon at Tue Aug 25 10:27:00 IST 2026
[2026-08-25 10:27:00,664.664 INFO    ] ================================================
[2026-08-25 10:27:01,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:27:01
[2026-08-25 10:27:02,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:27:02,337.337 INFO    ] Initializing speech engine...
[2026-08-25 10:27:02,352.352 INFO    ] 2026-08-25 10:27:02
[2026-08-25 10:27:02,679.679 INFO    ] 2026-08-25 10:27:02
[2026-08-25 10:27:02,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:27:02,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:27:02,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:27:03,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:27:03,092.092 INFO    ] time= 25/08/2026 10:27:03
[2026-08-25 10:27:03,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:27:03,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:27:03,215.215 INFO    ] No existing commands found in stream
[2026-08-25 10:27:08,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:27:08,230.230 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 10:27:11,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:27:11,756.756 INFO    ] Checking for system updates...
[2026-08-25 10:27:11,795.795 INFO    ] 200
[2026-08-25 10:27:11,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:11,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:27:11,857.857 INFO    ] No update needed
[2026-08-25 10:27:11,859.859 INFO    ] Checking for camera pi updates...
[2026-08-25 10:27:11,895.895 INFO    ] 200
[2026-08-25 10:27:11,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:11,939.939 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:27:11,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:27:11,988.988 INFO    ] No camera update needed
[2026-08-25 10:27:11,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:27:11,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:27:11,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:27:12,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:27:14,042.042 INFO    ] ================================================
[2026-08-25 10:27:14,057.057 INFO    ] Launching Daemon at Tue Aug 25 10:27:14 IST 2026
[2026-08-25 10:27:14,069.069 INFO    ] ================================================
[2026-08-25 10:27:14,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:27:14
[2026-08-25 10:27:15,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:27:15,665.665 INFO    ] Initializing speech engine...
[2026-08-25 10:27:15,679.679 INFO    ] 2026-08-25 10:27:15
[2026-08-25 10:27:15,957.957 INFO    ] 2026-08-25 10:27:15
[2026-08-25 10:27:16,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:27:16,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:27:16,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:27:16,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:27:16,498.498 INFO    ] time= 25/08/2026 10:27:16
[2026-08-25 10:27:16,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:27:16,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:27:16,609.609 INFO    ] No existing commands found in stream
[2026-08-25 10:27:21,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:27:21,622.622 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 10:27:24,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:27:24,637.637 INFO    ] Checking for system updates...
[2026-08-25 10:27:24,673.673 INFO    ] 200
[2026-08-25 10:27:24,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:24,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:27:24,737.737 INFO    ] No update needed
[2026-08-25 10:27:24,740.740 INFO    ] Checking for camera pi updates...
[2026-08-25 10:27:24,776.776 INFO    ] 200
[2026-08-25 10:27:24,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:24,823.823 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:27:24,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:27:24,873.873 INFO    ] No camera update needed
[2026-08-25 10:27:24,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:27:24,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:27:24,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:27:24,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:27:26,931.931 INFO    ] ================================================
[2026-08-25 10:27:26,946.946 INFO    ] Launching Daemon at Tue Aug 25 10:27:26 IST 2026
[2026-08-25 10:27:26,957.957 INFO    ] ================================================
[2026-08-25 10:27:27,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:27:27
[2026-08-25 10:27:28,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:27:28,488.488 INFO    ] Initializing speech engine...
[2026-08-25 10:27:28,503.503 INFO    ] 2026-08-25 10:27:28
[2026-08-25 10:27:28,788.788 INFO    ] 2026-08-25 10:27:28
[2026-08-25 10:27:28,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:27:29,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:27:29,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:27:29,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:27:29,140.140 INFO    ] time= 25/08/2026 10:27:29
[2026-08-25 10:27:29,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:27:29,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:27:29,288.288 INFO    ] No existing commands found in stream
[2026-08-25 10:27:34,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:27:34,302.302 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 10:27:38,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:27:38,415.415 INFO    ] Checking for system updates...
[2026-08-25 10:27:38,453.453 INFO    ] 200
[2026-08-25 10:27:38,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:38,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:27:38,511.511 INFO    ] No update needed
[2026-08-25 10:27:38,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 10:27:38,547.547 INFO    ] 200
[2026-08-25 10:27:38,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:38,591.591 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:27:38,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:27:38,657.657 INFO    ] No camera update needed
[2026-08-25 10:27:38,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:27:38,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:27:38,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:27:38,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:27:40,715.715 INFO    ] ================================================
[2026-08-25 10:27:40,730.730 INFO    ] Launching Daemon at Tue Aug 25 10:27:40 IST 2026
[2026-08-25 10:27:40,741.741 INFO    ] ================================================
[2026-08-25 10:27:41,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:27:41
[2026-08-25 10:27:41,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:27:42,159.159 INFO    ] Initializing speech engine...
[2026-08-25 10:27:42,167.167 INFO    ] 2026-08-25 10:27:42
[2026-08-25 10:27:42,459.459 INFO    ] 2026-08-25 10:27:42
[2026-08-25 10:27:42,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:27:42,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:27:42,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:27:42,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:27:42,872.872 INFO    ] time= 25/08/2026 10:27:42
[2026-08-25 10:27:42,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:27:42,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:27:42,963.963 INFO    ] No existing commands found in stream
[2026-08-25 10:27:47,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:27:48,001.001 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 10:27:51,526.526 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:27:51,529.529 INFO    ] Checking for system updates...
[2026-08-25 10:27:51,565.565 INFO    ] 200
[2026-08-25 10:27:51,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:51,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:27:51,627.627 INFO    ] No update needed
[2026-08-25 10:27:51,630.630 INFO    ] Checking for camera pi updates...
[2026-08-25 10:27:51,666.666 INFO    ] 200
[2026-08-25 10:27:51,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:27:51,726.726 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:27:51,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:27:51,874.874 INFO    ] No camera update needed
[2026-08-25 10:27:51,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:27:51,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:27:51,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:27:51,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:27:53,929.929 INFO    ] ================================================
[2026-08-25 10:27:53,945.945 INFO    ] Launching Daemon at Tue Aug 25 10:27:53 IST 2026
[2026-08-25 10:27:53,956.956 INFO    ] ================================================
[2026-08-25 10:27:54,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:27:54
[2026-08-25 10:27:55,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:27:55,546.546 INFO    ] Initializing speech engine...
[2026-08-25 10:27:55,554.554 INFO    ] 2026-08-25 10:27:55
[2026-08-25 10:27:55,827.827 INFO    ] 2026-08-25 10:27:55
[2026-08-25 10:27:55,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:27:56,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:27:56,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:27:56,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:27:56,384.384 INFO    ] time= 25/08/2026 10:27:56
[2026-08-25 10:27:56,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:27:56,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:27:56,550.550 INFO    ] No existing commands found in stream
[2026-08-25 10:28:01,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:28:01,581.581 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 10:28:02,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:28:02,517.517 INFO    ] Checking for system updates...
[2026-08-25 10:28:02,560.560 INFO    ] 200
[2026-08-25 10:28:02,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:02,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:28:02,633.633 INFO    ] No update needed
[2026-08-25 10:28:02,637.637 INFO    ] Checking for camera pi updates...
[2026-08-25 10:28:02,672.672 INFO    ] 200
[2026-08-25 10:28:02,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:02,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:28:02,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:28:02,797.797 INFO    ] No camera update needed
[2026-08-25 10:28:02,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:28:02,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:28:02,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:28:02,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:28:04,857.857 INFO    ] ================================================
[2026-08-25 10:28:04,872.872 INFO    ] Launching Daemon at Tue Aug 25 10:28:04 IST 2026
[2026-08-25 10:28:04,884.884 INFO    ] ================================================
[2026-08-25 10:28:05,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:28:05
[2026-08-25 10:28:06,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:28:06,383.383 INFO    ] Initializing speech engine...
[2026-08-25 10:28:06,392.392 INFO    ] 2026-08-25 10:28:06
[2026-08-25 10:28:06,659.659 INFO    ] 2026-08-25 10:28:06
[2026-08-25 10:28:06,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:28:06,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:28:06,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:28:07,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:28:07,165.165 INFO    ] time= 25/08/2026 10:28:07
[2026-08-25 10:28:07,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:28:07,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:28:07,377.377 INFO    ] No existing commands found in stream
[2026-08-25 10:28:12,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:28:12,402.402 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 10:28:13,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:28:13,280.280 INFO    ] Checking for system updates...
[2026-08-25 10:28:13,316.316 INFO    ] 200
[2026-08-25 10:28:13,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:13,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:28:13,374.374 INFO    ] No update needed
[2026-08-25 10:28:13,377.377 INFO    ] Checking for camera pi updates...
[2026-08-25 10:28:13,410.410 INFO    ] 200
[2026-08-25 10:28:13,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:13,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:28:13,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:28:13,520.520 INFO    ] No camera update needed
[2026-08-25 10:28:13,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:28:13,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:28:13,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:28:13,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:28:15,577.577 INFO    ] ================================================
[2026-08-25 10:28:15,592.592 INFO    ] Launching Daemon at Tue Aug 25 10:28:15 IST 2026
[2026-08-25 10:28:15,602.602 INFO    ] ================================================
[2026-08-25 10:28:16,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:28:16
[2026-08-25 10:28:16,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:28:17,031.031 INFO    ] Initializing speech engine...
[2026-08-25 10:28:17,049.049 INFO    ] 2026-08-25 10:28:17
[2026-08-25 10:28:17,315.315 INFO    ] 2026-08-25 10:28:17
[2026-08-25 10:28:17,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:28:17,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:28:17,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:28:17,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:28:17,805.805 INFO    ] time= 25/08/2026 10:28:17
[2026-08-25 10:28:17,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:28:17,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:28:18,071.071 INFO    ] No existing commands found in stream
[2026-08-25 10:28:23,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:28:23,097.097 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 10:28:24,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:28:24,113.113 INFO    ] Checking for system updates...
[2026-08-25 10:28:24,152.152 INFO    ] 200
[2026-08-25 10:28:24,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:24,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:28:24,213.213 INFO    ] No update needed
[2026-08-25 10:28:24,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 10:28:24,252.252 INFO    ] 200
[2026-08-25 10:28:24,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:24,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:28:24,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:28:24,346.346 INFO    ] No camera update needed
[2026-08-25 10:28:24,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:28:24,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:28:24,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:28:24,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:28:26,400.400 INFO    ] ================================================
[2026-08-25 10:28:26,415.415 INFO    ] Launching Daemon at Tue Aug 25 10:28:26 IST 2026
[2026-08-25 10:28:26,426.426 INFO    ] ================================================
[2026-08-25 10:28:27,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:28:27
[2026-08-25 10:28:27,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:28:27,877.877 INFO    ] Initializing speech engine...
[2026-08-25 10:28:27,886.886 INFO    ] 2026-08-25 10:28:27
[2026-08-25 10:28:28,134.134 INFO    ] 2026-08-25 10:28:28
[2026-08-25 10:28:28,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:28:28,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:28:28,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:28:28,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:28:28,634.634 INFO    ] time= 25/08/2026 10:28:28
[2026-08-25 10:28:28,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:28:28,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:28:28,816.816 INFO    ] No existing commands found in stream
[2026-08-25 10:28:33,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:28:33,849.849 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 10:28:37,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:28:37,515.515 INFO    ] Checking for system updates...
[2026-08-25 10:28:37,550.550 INFO    ] 200
[2026-08-25 10:28:37,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:37,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:28:37,608.608 INFO    ] No update needed
[2026-08-25 10:28:37,610.610 INFO    ] Checking for camera pi updates...
[2026-08-25 10:28:37,644.644 INFO    ] 200
[2026-08-25 10:28:37,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:37,687.687 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:28:37,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:28:37,738.738 INFO    ] No camera update needed
[2026-08-25 10:28:37,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:28:37,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:28:37,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:28:37,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:28:39,793.793 INFO    ] ================================================
[2026-08-25 10:28:39,808.808 INFO    ] Launching Daemon at Tue Aug 25 10:28:39 IST 2026
[2026-08-25 10:28:39,818.818 INFO    ] ================================================
[2026-08-25 10:28:40,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:28:40
[2026-08-25 10:28:40,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:28:41,235.235 INFO    ] Initializing speech engine...
[2026-08-25 10:28:41,244.244 INFO    ] 2026-08-25 10:28:41
[2026-08-25 10:28:41,489.489 INFO    ] 2026-08-25 10:28:41
[2026-08-25 10:28:41,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:28:41,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:28:41,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:28:41,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:28:41,993.993 INFO    ] time= 25/08/2026 10:28:41
[2026-08-25 10:28:42,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:28:42,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:28:42,197.197 INFO    ] No existing commands found in stream
[2026-08-25 10:28:47,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:28:47,222.222 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 10:28:51,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:28:51,165.165 INFO    ] Checking for system updates...
[2026-08-25 10:28:51,202.202 INFO    ] 200
[2026-08-25 10:28:51,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:51,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:28:51,259.259 INFO    ] No update needed
[2026-08-25 10:28:51,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 10:28:51,295.295 INFO    ] 200
[2026-08-25 10:28:51,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:28:51,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:28:51,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:28:51,399.399 INFO    ] No camera update needed
[2026-08-25 10:28:51,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:28:51,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:28:51,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:28:51,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:28:53,455.455 INFO    ] ================================================
[2026-08-25 10:28:53,470.470 INFO    ] Launching Daemon at Tue Aug 25 10:28:53 IST 2026
[2026-08-25 10:28:53,480.480 INFO    ] ================================================
[2026-08-25 10:28:54,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:28:54
[2026-08-25 10:28:54,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:28:54,898.898 INFO    ] Initializing speech engine...
[2026-08-25 10:28:54,920.920 INFO    ] 2026-08-25 10:28:54
[2026-08-25 10:28:55,182.182 INFO    ] 2026-08-25 10:28:55
[2026-08-25 10:28:55,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:28:55,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:28:55,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:28:55,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:28:55,655.655 INFO    ] time= 25/08/2026 10:28:55
[2026-08-25 10:28:55,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:28:55,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:28:55,869.869 INFO    ] No existing commands found in stream
[2026-08-25 10:29:00,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:29:00,896.896 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 10:29:03,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:29:03,304.304 INFO    ] Checking for system updates...
[2026-08-25 10:29:03,342.342 INFO    ] 200
[2026-08-25 10:29:03,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:03,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:29:03,406.406 INFO    ] No update needed
[2026-08-25 10:29:03,408.408 INFO    ] Checking for camera pi updates...
[2026-08-25 10:29:03,442.442 INFO    ] 200
[2026-08-25 10:29:03,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:03,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:29:03,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:29:03,543.543 INFO    ] No camera update needed
[2026-08-25 10:29:03,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:29:03,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:29:03,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:29:03,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:29:05,599.599 INFO    ] ================================================
[2026-08-25 10:29:05,615.615 INFO    ] Launching Daemon at Tue Aug 25 10:29:05 IST 2026
[2026-08-25 10:29:05,625.625 INFO    ] ================================================
[2026-08-25 10:29:06,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:29:06
[2026-08-25 10:29:06,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:29:07,049.049 INFO    ] Initializing speech engine...
[2026-08-25 10:29:07,055.055 INFO    ] 2026-08-25 10:29:07
[2026-08-25 10:29:07,352.352 INFO    ] 2026-08-25 10:29:07
[2026-08-25 10:29:07,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:29:07,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:29:07,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:29:07,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:29:07,761.761 INFO    ] time= 25/08/2026 10:29:07
[2026-08-25 10:29:07,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:29:07,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:29:07,947.947 INFO    ] No existing commands found in stream
[2026-08-25 10:29:12,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:29:12,975.975 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 10:29:17,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:29:17,354.354 INFO    ] Checking for system updates...
[2026-08-25 10:29:17,389.389 INFO    ] 200
[2026-08-25 10:29:17,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:17,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:29:17,452.452 INFO    ] No update needed
[2026-08-25 10:29:17,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 10:29:17,487.487 INFO    ] 200
[2026-08-25 10:29:17,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:17,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:29:17,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:29:17,590.590 INFO    ] No camera update needed
[2026-08-25 10:29:17,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:29:17,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:29:17,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:29:17,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:29:19,644.644 INFO    ] ================================================
[2026-08-25 10:29:19,659.659 INFO    ] Launching Daemon at Tue Aug 25 10:29:19 IST 2026
[2026-08-25 10:29:19,670.670 INFO    ] ================================================
[2026-08-25 10:29:20,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:29:20
[2026-08-25 10:29:20,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:29:21,144.144 INFO    ] Initializing speech engine...
[2026-08-25 10:29:21,158.158 INFO    ] 2026-08-25 10:29:21
[2026-08-25 10:29:21,467.467 INFO    ] 2026-08-25 10:29:21
[2026-08-25 10:29:21,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:29:21,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:29:21,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:29:21,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:29:21,968.968 INFO    ] time= 25/08/2026 10:29:21
[2026-08-25 10:29:21,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:29:21,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:29:22,111.111 INFO    ] No existing commands found in stream
[2026-08-25 10:29:27,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:29:27,140.140 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 10:29:28,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:29:28,405.405 INFO    ] Checking for system updates...
[2026-08-25 10:29:28,441.441 INFO    ] 200
[2026-08-25 10:29:28,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:28,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:29:28,499.499 INFO    ] No update needed
[2026-08-25 10:29:28,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 10:29:28,535.535 INFO    ] 200
[2026-08-25 10:29:28,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:28,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:29:28,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:29:28,636.636 INFO    ] No camera update needed
[2026-08-25 10:29:28,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:29:28,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:29:28,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:29:28,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:29:30,691.691 INFO    ] ================================================
[2026-08-25 10:29:30,707.707 INFO    ] Launching Daemon at Tue Aug 25 10:29:30 IST 2026
[2026-08-25 10:29:30,718.718 INFO    ] ================================================
[2026-08-25 10:29:31,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:29:31
[2026-08-25 10:29:31,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:29:32,215.215 INFO    ] Initializing speech engine...
[2026-08-25 10:29:32,224.224 INFO    ] 2026-08-25 10:29:32
[2026-08-25 10:29:32,533.533 INFO    ] 2026-08-25 10:29:32
[2026-08-25 10:29:32,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:29:32,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:29:32,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:29:32,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:29:33,012.012 INFO    ] time= 25/08/2026 10:29:32
[2026-08-25 10:29:33,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:29:33,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:29:33,230.230 INFO    ] No existing commands found in stream
[2026-08-25 10:29:38,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:29:38,257.257 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 10:29:42,590.590 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:29:42,593.593 INFO    ] Checking for system updates...
[2026-08-25 10:29:42,632.632 INFO    ] 200
[2026-08-25 10:29:42,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:42,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:29:42,689.689 INFO    ] No update needed
[2026-08-25 10:29:42,691.691 INFO    ] Checking for camera pi updates...
[2026-08-25 10:29:42,725.725 INFO    ] 200
[2026-08-25 10:29:42,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:42,768.768 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:29:42,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:29:42,815.815 INFO    ] No camera update needed
[2026-08-25 10:29:42,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:29:42,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:29:42,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:29:42,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:29:44,868.868 INFO    ] ================================================
[2026-08-25 10:29:44,883.883 INFO    ] Launching Daemon at Tue Aug 25 10:29:44 IST 2026
[2026-08-25 10:29:44,895.895 INFO    ] ================================================
[2026-08-25 10:29:45,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:29:45
[2026-08-25 10:29:46,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:29:46,387.387 INFO    ] Initializing speech engine...
[2026-08-25 10:29:46,393.393 INFO    ] 2026-08-25 10:29:46
[2026-08-25 10:29:46,654.654 INFO    ] 2026-08-25 10:29:46
[2026-08-25 10:29:46,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:29:46,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:29:46,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:29:47,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:29:47,166.166 INFO    ] time= 25/08/2026 10:29:47
[2026-08-25 10:29:47,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:29:47,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:29:47,370.370 INFO    ] No existing commands found in stream
[2026-08-25 10:29:52,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:29:52,398.398 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 10:29:54,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:29:54,072.072 INFO    ] Checking for system updates...
[2026-08-25 10:29:54,112.112 INFO    ] 200
[2026-08-25 10:29:54,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:54,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:29:54,169.169 INFO    ] No update needed
[2026-08-25 10:29:54,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 10:29:54,205.205 INFO    ] 200
[2026-08-25 10:29:54,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:29:54,253.253 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:29:54,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:29:54,404.404 INFO    ] No camera update needed
[2026-08-25 10:29:54,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:29:54,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:29:54,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:29:54,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:29:56,458.458 INFO    ] ================================================
[2026-08-25 10:29:56,474.474 INFO    ] Launching Daemon at Tue Aug 25 10:29:56 IST 2026
[2026-08-25 10:29:56,485.485 INFO    ] ================================================
[2026-08-25 10:29:57,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:29:57
[2026-08-25 10:29:57,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:29:57,977.977 INFO    ] Initializing speech engine...
[2026-08-25 10:29:57,983.983 INFO    ] 2026-08-25 10:29:57
[2026-08-25 10:29:58,243.243 INFO    ] 2026-08-25 10:29:58
[2026-08-25 10:29:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:29:58,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:29:58,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:29:58,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:29:58,700.700 INFO    ] time= 25/08/2026 10:29:58
[2026-08-25 10:29:58,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:29:58,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:29:58,937.937 INFO    ] No existing commands found in stream
[2026-08-25 10:30:03,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:30:03,952.952 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 10:30:08,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:30:08,652.652 INFO    ] Checking for system updates...
[2026-08-25 10:30:08,692.692 INFO    ] 200
[2026-08-25 10:30:08,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:08,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:30:08,759.759 INFO    ] No update needed
[2026-08-25 10:30:08,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 10:30:08,801.801 INFO    ] 200
[2026-08-25 10:30:08,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:08,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:30:08,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:30:08,922.922 INFO    ] No camera update needed
[2026-08-25 10:30:08,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:30:08,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:30:08,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:30:08,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:30:10,981.981 INFO    ] ================================================
[2026-08-25 10:30:11,997.997 INFO    ] Launching Daemon at Tue Aug 25 10:30:10 IST 2026
[2026-08-25 10:30:11,008.008 INFO    ] ================================================
[2026-08-25 10:30:11,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:30:11
[2026-08-25 10:30:12,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:30:12,657.657 INFO    ] Initializing speech engine...
[2026-08-25 10:30:12,671.671 INFO    ] 2026-08-25 10:30:12
[2026-08-25 10:30:12,951.951 INFO    ] 2026-08-25 10:30:12
[2026-08-25 10:30:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:30:13,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:30:13,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:30:13,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:30:13,487.487 INFO    ] time= 25/08/2026 10:30:13
[2026-08-25 10:30:13,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:30:13,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:30:13,680.680 INFO    ] No existing commands found in stream
[2026-08-25 10:30:18,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:30:18,714.714 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 10:30:22,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:30:22,936.936 INFO    ] Checking for system updates...
[2026-08-25 10:30:22,972.972 INFO    ] 200
[2026-08-25 10:30:22,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:23,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:30:23,039.039 INFO    ] No update needed
[2026-08-25 10:30:23,042.042 INFO    ] Checking for camera pi updates...
[2026-08-25 10:30:23,080.080 INFO    ] 200
[2026-08-25 10:30:23,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:23,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:30:23,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:30:23,179.179 INFO    ] No camera update needed
[2026-08-25 10:30:23,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:30:23,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:30:23,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:30:23,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:30:25,241.241 INFO    ] ================================================
[2026-08-25 10:30:25,256.256 INFO    ] Launching Daemon at Tue Aug 25 10:30:25 IST 2026
[2026-08-25 10:30:25,267.267 INFO    ] ================================================
[2026-08-25 10:30:25,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:30:25
[2026-08-25 10:30:26,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:30:26,686.686 INFO    ] Initializing speech engine...
[2026-08-25 10:30:26,695.695 INFO    ] 2026-08-25 10:30:26
[2026-08-25 10:30:26,945.945 INFO    ] 2026-08-25 10:30:26
[2026-08-25 10:30:26,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:30:27,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:30:27,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:30:27,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:30:27,362.362 INFO    ] time= 25/08/2026 10:30:27
[2026-08-25 10:30:27,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:30:27,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:30:27,524.524 INFO    ] No existing commands found in stream
[2026-08-25 10:30:32,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:30:32,552.552 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 10:30:36,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:30:36,676.676 INFO    ] Checking for system updates...
[2026-08-25 10:30:36,715.715 INFO    ] 200
[2026-08-25 10:30:36,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:36,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:30:36,779.779 INFO    ] No update needed
[2026-08-25 10:30:36,781.781 INFO    ] Checking for camera pi updates...
[2026-08-25 10:30:36,815.815 INFO    ] 200
[2026-08-25 10:30:36,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:36,858.858 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:30:36,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:30:36,907.907 INFO    ] No camera update needed
[2026-08-25 10:30:36,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:30:36,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:30:36,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:30:36,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:30:38,964.964 INFO    ] ================================================
[2026-08-25 10:30:38,980.980 INFO    ] Launching Daemon at Tue Aug 25 10:30:38 IST 2026
[2026-08-25 10:30:38,991.991 INFO    ] ================================================
[2026-08-25 10:30:39,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:30:39
[2026-08-25 10:30:40,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:30:40,543.543 INFO    ] Initializing speech engine...
[2026-08-25 10:30:40,556.556 INFO    ] 2026-08-25 10:30:40
[2026-08-25 10:30:40,872.872 INFO    ] 2026-08-25 10:30:40
[2026-08-25 10:30:40,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:30:41,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:30:41,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:30:41,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:30:41,376.376 INFO    ] time= 25/08/2026 10:30:41
[2026-08-25 10:30:41,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:30:41,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:30:41,555.555 INFO    ] No existing commands found in stream
[2026-08-25 10:30:46,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:30:46,589.589 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 10:30:48,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:30:48,845.845 INFO    ] Checking for system updates...
[2026-08-25 10:30:48,883.883 INFO    ] 200
[2026-08-25 10:30:48,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:48,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:30:48,950.950 INFO    ] No update needed
[2026-08-25 10:30:48,953.953 INFO    ] Checking for camera pi updates...
[2026-08-25 10:30:48,987.987 INFO    ] 200
[2026-08-25 10:30:48,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:30:49,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:30:49,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:30:49,089.089 INFO    ] No camera update needed
[2026-08-25 10:30:49,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:30:49,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:30:49,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:30:49,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:30:51,148.148 INFO    ] ================================================
[2026-08-25 10:30:51,164.164 INFO    ] Launching Daemon at Tue Aug 25 10:30:51 IST 2026
[2026-08-25 10:30:51,175.175 INFO    ] ================================================
[2026-08-25 10:30:51,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:30:51
[2026-08-25 10:30:52,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:30:52,623.623 INFO    ] Initializing speech engine...
[2026-08-25 10:30:52,649.649 INFO    ] 2026-08-25 10:30:52
[2026-08-25 10:30:52,927.927 INFO    ] 2026-08-25 10:30:52
[2026-08-25 10:30:52,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:30:53,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:30:53,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:30:53,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:30:53,334.334 INFO    ] time= 25/08/2026 10:30:53
[2026-08-25 10:30:53,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:30:53,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:30:53,446.446 INFO    ] No existing commands found in stream
[2026-08-25 10:30:58,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:30:58,479.479 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 10:31:00,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:31:00,652.652 INFO    ] Checking for system updates...
[2026-08-25 10:31:00,689.689 INFO    ] 200
[2026-08-25 10:31:00,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:00,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:31:00,748.748 INFO    ] No update needed
[2026-08-25 10:31:00,750.750 INFO    ] Checking for camera pi updates...
[2026-08-25 10:31:00,786.786 INFO    ] 200
[2026-08-25 10:31:00,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:00,829.829 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:31:00,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:31:00,882.882 INFO    ] No camera update needed
[2026-08-25 10:31:00,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:31:00,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:31:00,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:31:00,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:31:02,945.945 INFO    ] ================================================
[2026-08-25 10:31:02,966.966 INFO    ] Launching Daemon at Tue Aug 25 10:31:02 IST 2026
[2026-08-25 10:31:02,979.979 INFO    ] ================================================
[2026-08-25 10:31:03,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:31:03
[2026-08-25 10:31:04,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:31:04,415.415 INFO    ] Initializing speech engine...
[2026-08-25 10:31:04,421.421 INFO    ] 2026-08-25 10:31:04
[2026-08-25 10:31:04,715.715 INFO    ] 2026-08-25 10:31:04
[2026-08-25 10:31:04,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:31:04,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:31:04,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:31:05,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:31:05,129.129 INFO    ] time= 25/08/2026 10:31:05
[2026-08-25 10:31:05,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:31:05,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:31:05,216.216 INFO    ] No existing commands found in stream
[2026-08-25 10:31:10,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:31:10,249.249 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 10:31:14,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:31:14,591.591 INFO    ] Checking for system updates...
[2026-08-25 10:31:14,626.626 INFO    ] 200
[2026-08-25 10:31:14,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:14,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:14,683.683 INFO    ] No update needed
[2026-08-25 10:31:14,686.686 INFO    ] Checking for camera pi updates...
[2026-08-25 10:31:14,720.720 INFO    ] 200
[2026-08-25 10:31:14,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:14,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:31:14,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:14,827.827 INFO    ] No camera update needed
[2026-08-25 10:31:14,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:31:14,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:31:14,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:31:14,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:31:16,883.883 INFO    ] ================================================
[2026-08-25 10:31:16,899.899 INFO    ] Launching Daemon at Tue Aug 25 10:31:16 IST 2026
[2026-08-25 10:31:16,910.910 INFO    ] ================================================
[2026-08-25 10:31:17,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:31:17
[2026-08-25 10:31:18,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:31:18,512.512 INFO    ] Initializing speech engine...
[2026-08-25 10:31:18,522.522 INFO    ] 2026-08-25 10:31:18
[2026-08-25 10:31:18,792.792 INFO    ] 2026-08-25 10:31:18
[2026-08-25 10:31:18,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:31:19,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:31:19,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:31:19,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:31:19,325.325 INFO    ] time= 25/08/2026 10:31:19
[2026-08-25 10:31:19,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:31:19,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:31:19,490.490 INFO    ] No existing commands found in stream
[2026-08-25 10:31:24,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:31:24,515.515 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 10:31:27,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:31:27,164.164 INFO    ] Checking for system updates...
[2026-08-25 10:31:27,201.201 INFO    ] 200
[2026-08-25 10:31:27,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:27,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:27,259.259 INFO    ] No update needed
[2026-08-25 10:31:27,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 10:31:27,296.296 INFO    ] 200
[2026-08-25 10:31:27,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:27,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:31:27,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:27,391.391 INFO    ] No camera update needed
[2026-08-25 10:31:27,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:31:27,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:31:27,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:31:27,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:31:29,448.448 INFO    ] ================================================
[2026-08-25 10:31:29,464.464 INFO    ] Launching Daemon at Tue Aug 25 10:31:29 IST 2026
[2026-08-25 10:31:29,475.475 INFO    ] ================================================
[2026-08-25 10:31:30,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:31:30
[2026-08-25 10:31:30,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:31:30,888.888 INFO    ] Initializing speech engine...
[2026-08-25 10:31:30,907.907 INFO    ] 2026-08-25 10:31:30
[2026-08-25 10:31:31,159.159 INFO    ] 2026-08-25 10:31:31
[2026-08-25 10:31:31,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:31:31,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:31:31,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:31:31,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:31:31,539.539 INFO    ] time= 25/08/2026 10:31:31
[2026-08-25 10:31:31,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:31:31,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:31:31,736.736 INFO    ] No existing commands found in stream
[2026-08-25 10:31:36,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:31:36,764.764 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 10:31:37,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:31:37,541.541 INFO    ] Checking for system updates...
[2026-08-25 10:31:37,576.576 INFO    ] 200
[2026-08-25 10:31:37,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:37,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:37,633.633 INFO    ] No update needed
[2026-08-25 10:31:37,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 10:31:37,669.669 INFO    ] 200
[2026-08-25 10:31:37,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:37,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:31:37,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:37,757.757 INFO    ] No camera update needed
[2026-08-25 10:31:37,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:31:37,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:31:37,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:31:37,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:31:39,813.813 INFO    ] ================================================
[2026-08-25 10:31:39,828.828 INFO    ] Launching Daemon at Tue Aug 25 10:31:39 IST 2026
[2026-08-25 10:31:39,839.839 INFO    ] ================================================
[2026-08-25 10:31:40,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:31:40
[2026-08-25 10:31:40,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:31:41,249.249 INFO    ] Initializing speech engine...
[2026-08-25 10:31:41,270.270 INFO    ] 2026-08-25 10:31:41
[2026-08-25 10:31:41,544.544 INFO    ] 2026-08-25 10:31:41
[2026-08-25 10:31:41,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:31:41,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:31:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:31:41,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:31:41,920.920 INFO    ] time= 25/08/2026 10:31:41
[2026-08-25 10:31:41,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:31:41,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:31:42,027.027 INFO    ] No existing commands found in stream
[2026-08-25 10:31:47,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:31:47,042.042 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 10:31:50,273.273 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:31:50,276.276 INFO    ] Checking for system updates...
[2026-08-25 10:31:50,312.312 INFO    ] 200
[2026-08-25 10:31:50,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:50,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:50,370.370 INFO    ] No update needed
[2026-08-25 10:31:50,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 10:31:50,406.406 INFO    ] 200
[2026-08-25 10:31:50,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:31:50,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:31:50,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:31:50,493.493 INFO    ] No camera update needed
[2026-08-25 10:31:50,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:31:50,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:31:50,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:31:50,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:31:52,547.547 INFO    ] ================================================
[2026-08-25 10:31:52,563.563 INFO    ] Launching Daemon at Tue Aug 25 10:31:52 IST 2026
[2026-08-25 10:31:52,575.575 INFO    ] ================================================
[2026-08-25 10:31:53,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:31:53
[2026-08-25 10:31:53,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:31:53,973.973 INFO    ] Initializing speech engine...
[2026-08-25 10:31:53,982.982 INFO    ] 2026-08-25 10:31:53
[2026-08-25 10:31:54,271.271 INFO    ] 2026-08-25 10:31:54
[2026-08-25 10:31:54,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:31:54,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:31:54,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:31:54,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:31:54,686.686 INFO    ] time= 25/08/2026 10:31:54
[2026-08-25 10:31:54,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:31:54,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:31:54,859.859 INFO    ] No existing commands found in stream
[2026-08-25 10:31:59,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:31:59,887.887 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 10:32:02,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:32:02,073.073 INFO    ] Checking for system updates...
[2026-08-25 10:32:02,118.118 INFO    ] 200
[2026-08-25 10:32:02,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:02,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:32:02,191.191 INFO    ] No update needed
[2026-08-25 10:32:02,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 10:32:02,234.234 INFO    ] 200
[2026-08-25 10:32:02,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:02,307.307 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:32:02,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:32:02,489.489 INFO    ] No camera update needed
[2026-08-25 10:32:02,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:32:02,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:32:02,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:32:02,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:32:04,548.548 INFO    ] ================================================
[2026-08-25 10:32:04,563.563 INFO    ] Launching Daemon at Tue Aug 25 10:32:04 IST 2026
[2026-08-25 10:32:04,575.575 INFO    ] ================================================
[2026-08-25 10:32:05,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:32:05
[2026-08-25 10:32:05,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:32:06,002.002 INFO    ] Initializing speech engine...
[2026-08-25 10:32:06,011.011 INFO    ] 2026-08-25 10:32:06
[2026-08-25 10:32:06,274.274 INFO    ] 2026-08-25 10:32:06
[2026-08-25 10:32:06,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:32:06,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:32:06,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:32:06,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:32:06,794.794 INFO    ] time= 25/08/2026 10:32:06
[2026-08-25 10:32:06,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:32:06,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:32:07,038.038 INFO    ] No existing commands found in stream
[2026-08-25 10:32:12,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:32:12,060.060 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 10:32:13,661.661 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:32:13,664.664 INFO    ] Checking for system updates...
[2026-08-25 10:32:13,703.703 INFO    ] 200
[2026-08-25 10:32:13,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:13,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:32:13,765.765 INFO    ] No update needed
[2026-08-25 10:32:13,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 10:32:13,800.800 INFO    ] 200
[2026-08-25 10:32:13,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:13,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:32:13,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:32:13,895.895 INFO    ] No camera update needed
[2026-08-25 10:32:13,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:32:13,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:32:13,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:32:13,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:32:15,949.949 INFO    ] ================================================
[2026-08-25 10:32:15,964.964 INFO    ] Launching Daemon at Tue Aug 25 10:32:15 IST 2026
[2026-08-25 10:32:15,975.975 INFO    ] ================================================
[2026-08-25 10:32:16,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:32:16
[2026-08-25 10:32:17,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:32:17,557.557 INFO    ] Initializing speech engine...
[2026-08-25 10:32:17,567.567 INFO    ] 2026-08-25 10:32:17
[2026-08-25 10:32:17,841.841 INFO    ] 2026-08-25 10:32:17
[2026-08-25 10:32:17,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:32:18,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:32:18,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:32:18,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:32:18,669.669 INFO    ] time= 25/08/2026 10:32:18
[2026-08-25 10:32:18,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:32:18,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:32:18,962.962 INFO    ] No existing commands found in stream
[2026-08-25 10:32:23,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:32:24,000.000 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 10:32:26,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:32:26,175.175 INFO    ] Checking for system updates...
[2026-08-25 10:32:26,230.230 INFO    ] 200
[2026-08-25 10:32:26,232.232 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:26,235.235 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 10:32:26,238.238 INFO    ] Checking for camera pi updates...
[2026-08-25 10:32:26,278.278 INFO    ] 200
[2026-08-25 10:32:26,281.281 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:26,284.284 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 10:32:26,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:32:26,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:32:26,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:32:26,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:32:28,342.342 INFO    ] ================================================
[2026-08-25 10:32:28,358.358 INFO    ] Launching Daemon at Tue Aug 25 10:32:28 IST 2026
[2026-08-25 10:32:28,370.370 INFO    ] ================================================
[2026-08-25 10:32:28,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:32:28
[2026-08-25 10:32:29,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:32:29,816.816 INFO    ] Initializing speech engine...
[2026-08-25 10:32:29,830.830 INFO    ] 2026-08-25 10:32:29
[2026-08-25 10:32:30,128.128 INFO    ] 2026-08-25 10:32:30
[2026-08-25 10:32:30,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:32:30,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:32:30,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:32:30,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:32:30,656.656 INFO    ] time= 25/08/2026 10:32:30
[2026-08-25 10:32:30,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:32:30,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:32:30,954.954 INFO    ] No existing commands found in stream
[2026-08-25 10:32:35,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:32:35,983.983 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 10:32:37,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:32:37,851.851 INFO    ] Checking for system updates...
[2026-08-25 10:32:37,894.894 INFO    ] 200
[2026-08-25 10:32:37,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:37,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:32:37,959.959 INFO    ] No update needed
[2026-08-25 10:32:37,961.961 INFO    ] Checking for camera pi updates...
[2026-08-25 10:32:37,999.999 INFO    ] 200
[2026-08-25 10:32:38,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:38,044.044 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:32:38,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:32:38,094.094 INFO    ] No camera update needed
[2026-08-25 10:32:38,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:32:38,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:32:38,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:32:38,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:32:40,149.149 INFO    ] ================================================
[2026-08-25 10:32:40,165.165 INFO    ] Launching Daemon at Tue Aug 25 10:32:40 IST 2026
[2026-08-25 10:32:40,176.176 INFO    ] ================================================
[2026-08-25 10:32:40,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:32:40
[2026-08-25 10:32:41,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:32:41,746.746 INFO    ] Initializing speech engine...
[2026-08-25 10:32:41,771.771 INFO    ] 2026-08-25 10:32:41
[2026-08-25 10:32:42,045.045 INFO    ] 2026-08-25 10:32:42
[2026-08-25 10:32:42,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:32:42,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:32:42,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:32:42,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:32:42,429.429 INFO    ] time= 25/08/2026 10:32:42
[2026-08-25 10:32:42,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:32:42,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:32:42,554.554 INFO    ] No existing commands found in stream
[2026-08-25 10:32:47,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:32:47,568.568 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 10:32:51,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:32:51,348.348 INFO    ] Checking for system updates...
[2026-08-25 10:32:51,389.389 INFO    ] 200
[2026-08-25 10:32:51,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:51,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:32:51,448.448 INFO    ] No update needed
[2026-08-25 10:32:51,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 10:32:51,485.485 INFO    ] 200
[2026-08-25 10:32:51,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:32:51,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:32:51,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:32:51,581.581 INFO    ] No camera update needed
[2026-08-25 10:32:51,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:32:51,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:32:51,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:32:51,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:32:53,641.641 INFO    ] ================================================
[2026-08-25 10:32:53,657.657 INFO    ] Launching Daemon at Tue Aug 25 10:32:53 IST 2026
[2026-08-25 10:32:53,668.668 INFO    ] ================================================
[2026-08-25 10:32:54,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:32:54
[2026-08-25 10:32:54,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:32:55,077.077 INFO    ] Initializing speech engine...
[2026-08-25 10:32:55,084.084 INFO    ] 2026-08-25 10:32:55
[2026-08-25 10:32:55,381.381 INFO    ] 2026-08-25 10:32:55
[2026-08-25 10:32:55,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:32:55,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:32:55,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:32:55,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:32:55,765.765 INFO    ] time= 25/08/2026 10:32:55
[2026-08-25 10:32:55,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:32:55,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:32:55,892.892 INFO    ] No existing commands found in stream
[2026-08-25 10:33:00,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:33:00,907.907 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 10:33:03,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:33:03,962.962 INFO    ] Checking for system updates...
[2026-08-25 10:33:03,998.998 INFO    ] 200
[2026-08-25 10:33:04,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:04,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:33:04,055.055 INFO    ] No update needed
[2026-08-25 10:33:04,058.058 INFO    ] Checking for camera pi updates...
[2026-08-25 10:33:04,091.091 INFO    ] 200
[2026-08-25 10:33:04,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:04,140.140 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:33:04,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:33:04,189.189 INFO    ] No camera update needed
[2026-08-25 10:33:04,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:33:04,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:33:04,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:33:04,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:33:06,244.244 INFO    ] ================================================
[2026-08-25 10:33:06,259.259 INFO    ] Launching Daemon at Tue Aug 25 10:33:06 IST 2026
[2026-08-25 10:33:06,271.271 INFO    ] ================================================
[2026-08-25 10:33:06,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:33:06
[2026-08-25 10:33:07,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:33:07,724.724 INFO    ] Initializing speech engine...
[2026-08-25 10:33:07,733.733 INFO    ] 2026-08-25 10:33:07
[2026-08-25 10:33:07,983.983 INFO    ] 2026-08-25 10:33:07
[2026-08-25 10:33:08,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:33:08,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:33:08,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:33:08,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:33:08,354.354 INFO    ] time= 25/08/2026 10:33:08
[2026-08-25 10:33:08,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:33:08,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:33:08,534.534 INFO    ] No existing commands found in stream
[2026-08-25 10:33:13,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:33:13,562.562 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 10:33:17,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:33:17,460.460 INFO    ] Checking for system updates...
[2026-08-25 10:33:17,495.495 INFO    ] 200
[2026-08-25 10:33:17,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:17,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:33:17,559.559 INFO    ] No update needed
[2026-08-25 10:33:17,561.561 INFO    ] Checking for camera pi updates...
[2026-08-25 10:33:17,594.594 INFO    ] 200
[2026-08-25 10:33:17,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:17,649.649 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:33:17,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:33:17,705.705 INFO    ] No camera update needed
[2026-08-25 10:33:17,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:33:17,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:33:17,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:33:17,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:33:19,763.763 INFO    ] ================================================
[2026-08-25 10:33:19,778.778 INFO    ] Launching Daemon at Tue Aug 25 10:33:19 IST 2026
[2026-08-25 10:33:19,790.790 INFO    ] ================================================
[2026-08-25 10:33:20,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:33:20
[2026-08-25 10:33:20,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:33:21,241.241 INFO    ] Initializing speech engine...
[2026-08-25 10:33:21,250.250 INFO    ] 2026-08-25 10:33:21
[2026-08-25 10:33:21,520.520 INFO    ] 2026-08-25 10:33:21
[2026-08-25 10:33:21,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:33:21,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:33:21,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:33:22,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:33:22,049.049 INFO    ] time= 25/08/2026 10:33:22
[2026-08-25 10:33:22,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:33:22,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:33:22,204.204 INFO    ] No existing commands found in stream
[2026-08-25 10:33:27,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:33:27,229.229 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 10:33:30,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:33:30,957.957 INFO    ] Checking for system updates...
[2026-08-25 10:33:30,993.993 INFO    ] 200
[2026-08-25 10:33:30,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:31,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:33:31,049.049 INFO    ] No update needed
[2026-08-25 10:33:31,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 10:33:31,085.085 INFO    ] 200
[2026-08-25 10:33:31,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:31,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:33:31,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:33:31,174.174 INFO    ] No camera update needed
[2026-08-25 10:33:31,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:33:31,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:33:31,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:33:31,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:33:33,233.233 INFO    ] ================================================
[2026-08-25 10:33:33,251.251 INFO    ] Launching Daemon at Tue Aug 25 10:33:33 IST 2026
[2026-08-25 10:33:33,262.262 INFO    ] ================================================
[2026-08-25 10:33:33,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:33:33
[2026-08-25 10:33:34,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:33:34,684.684 INFO    ] Initializing speech engine...
[2026-08-25 10:33:34,691.691 INFO    ] 2026-08-25 10:33:34
[2026-08-25 10:33:34,938.938 INFO    ] 2026-08-25 10:33:34
[2026-08-25 10:33:34,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:33:35,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:33:35,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:33:35,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:33:35,398.398 INFO    ] time= 25/08/2026 10:33:35
[2026-08-25 10:33:35,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:33:35,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:33:35,590.590 INFO    ] No existing commands found in stream
[2026-08-25 10:33:40,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:33:40,608.608 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 10:33:44,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:33:44,773.773 INFO    ] Checking for system updates...
[2026-08-25 10:33:44,809.809 INFO    ] 200
[2026-08-25 10:33:44,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:44,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:33:44,868.868 INFO    ] No update needed
[2026-08-25 10:33:44,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 10:33:44,904.904 INFO    ] 200
[2026-08-25 10:33:44,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:44,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:33:44,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:33:44,997.997 INFO    ] No camera update needed
[2026-08-25 10:33:45,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:33:45,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:33:45,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:33:45,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:33:47,056.056 INFO    ] ================================================
[2026-08-25 10:33:47,071.071 INFO    ] Launching Daemon at Tue Aug 25 10:33:47 IST 2026
[2026-08-25 10:33:47,082.082 INFO    ] ================================================
[2026-08-25 10:33:47,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:33:47
[2026-08-25 10:33:48,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:33:48,491.491 INFO    ] Initializing speech engine...
[2026-08-25 10:33:48,510.510 INFO    ] 2026-08-25 10:33:48
[2026-08-25 10:33:48,757.757 INFO    ] 2026-08-25 10:33:48
[2026-08-25 10:33:48,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:33:48,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:33:48,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:33:49,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:33:49,098.098 INFO    ] time= 25/08/2026 10:33:49
[2026-08-25 10:33:49,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:33:49,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:33:49,209.209 INFO    ] No existing commands found in stream
[2026-08-25 10:33:54,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:33:54,225.225 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 10:33:57,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:33:57,071.071 INFO    ] Checking for system updates...
[2026-08-25 10:33:57,112.112 INFO    ] 200
[2026-08-25 10:33:57,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:57,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:33:57,177.177 INFO    ] No update needed
[2026-08-25 10:33:57,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 10:33:57,212.212 INFO    ] 200
[2026-08-25 10:33:57,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:33:57,254.254 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:33:57,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:33:57,317.317 INFO    ] No camera update needed
[2026-08-25 10:33:57,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:33:57,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:33:57,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:33:57,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:33:59,372.372 INFO    ] ================================================
[2026-08-25 10:33:59,387.387 INFO    ] Launching Daemon at Tue Aug 25 10:33:59 IST 2026
[2026-08-25 10:33:59,399.399 INFO    ] ================================================
[2026-08-25 10:33:59,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:33:59
[2026-08-25 10:34:00,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:34:00,857.857 INFO    ] Initializing speech engine...
[2026-08-25 10:34:00,866.866 INFO    ] 2026-08-25 10:34:00
[2026-08-25 10:34:01,127.127 INFO    ] 2026-08-25 10:34:01
[2026-08-25 10:34:01,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:34:01,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:34:01,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:34:01,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:34:01,589.589 INFO    ] time= 25/08/2026 10:34:01
[2026-08-25 10:34:01,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:34:01,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:34:01,701.701 INFO    ] No existing commands found in stream
[2026-08-25 10:34:06,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:34:06,738.738 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 10:34:11,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:34:11,199.199 INFO    ] Checking for system updates...
[2026-08-25 10:34:11,236.236 INFO    ] 200
[2026-08-25 10:34:11,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:11,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:34:11,296.296 INFO    ] No update needed
[2026-08-25 10:34:11,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 10:34:11,340.340 INFO    ] 200
[2026-08-25 10:34:11,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:11,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:34:11,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:34:11,528.528 INFO    ] No camera update needed
[2026-08-25 10:34:11,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:34:11,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:34:11,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:34:11,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:34:13,585.585 INFO    ] ================================================
[2026-08-25 10:34:13,601.601 INFO    ] Launching Daemon at Tue Aug 25 10:34:13 IST 2026
[2026-08-25 10:34:13,612.612 INFO    ] ================================================
[2026-08-25 10:34:14,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:34:14
[2026-08-25 10:34:14,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:34:15,079.079 INFO    ] Initializing speech engine...
[2026-08-25 10:34:15,088.088 INFO    ] 2026-08-25 10:34:15
[2026-08-25 10:34:15,349.349 INFO    ] 2026-08-25 10:34:15
[2026-08-25 10:34:15,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:34:15,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:34:15,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:34:15,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:34:15,827.827 INFO    ] time= 25/08/2026 10:34:15
[2026-08-25 10:34:15,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:34:15,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:34:16,052.052 INFO    ] No existing commands found in stream
[2026-08-25 10:34:21,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:34:21,071.071 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 10:34:24,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:34:24,725.725 INFO    ] Checking for system updates...
[2026-08-25 10:34:24,761.761 INFO    ] 200
[2026-08-25 10:34:24,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:24,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:34:24,827.827 INFO    ] No update needed
[2026-08-25 10:34:24,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 10:34:24,862.862 INFO    ] 200
[2026-08-25 10:34:24,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:24,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:34:24,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:34:24,963.963 INFO    ] No camera update needed
[2026-08-25 10:34:24,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:34:24,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:34:24,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:34:24,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:34:27,018.018 INFO    ] ================================================
[2026-08-25 10:34:27,034.034 INFO    ] Launching Daemon at Tue Aug 25 10:34:27 IST 2026
[2026-08-25 10:34:27,046.046 INFO    ] ================================================
[2026-08-25 10:34:27,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:34:27
[2026-08-25 10:34:28,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:34:28,473.473 INFO    ] Initializing speech engine...
[2026-08-25 10:34:28,482.482 INFO    ] 2026-08-25 10:34:28
[2026-08-25 10:34:28,733.733 INFO    ] 2026-08-25 10:34:28
[2026-08-25 10:34:28,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:34:28,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:34:28,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:34:29,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:34:29,217.217 INFO    ] time= 25/08/2026 10:34:29
[2026-08-25 10:34:29,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:34:29,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:34:29,450.450 INFO    ] No existing commands found in stream
[2026-08-25 10:34:34,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:34:34,467.467 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 10:34:38,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:34:38,163.163 INFO    ] Checking for system updates...
[2026-08-25 10:34:38,204.204 INFO    ] 200
[2026-08-25 10:34:38,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:38,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:34:38,268.268 INFO    ] No update needed
[2026-08-25 10:34:38,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 10:34:38,305.305 INFO    ] 200
[2026-08-25 10:34:38,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:38,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:34:38,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:34:38,402.402 INFO    ] No camera update needed
[2026-08-25 10:34:38,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:34:38,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:34:38,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:34:38,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:34:40,461.461 INFO    ] ================================================
[2026-08-25 10:34:40,476.476 INFO    ] Launching Daemon at Tue Aug 25 10:34:40 IST 2026
[2026-08-25 10:34:40,487.487 INFO    ] ================================================
[2026-08-25 10:34:41,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:34:41
[2026-08-25 10:34:41,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:34:41,925.925 INFO    ] Initializing speech engine...
[2026-08-25 10:34:41,944.944 INFO    ] 2026-08-25 10:34:41
[2026-08-25 10:34:42,196.196 INFO    ] 2026-08-25 10:34:42
[2026-08-25 10:34:42,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:34:42,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:34:42,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:34:42,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:34:42,641.641 INFO    ] time= 25/08/2026 10:34:42
[2026-08-25 10:34:42,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:34:42,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:34:42,843.843 INFO    ] No existing commands found in stream
[2026-08-25 10:34:47,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:34:47,857.857 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 10:34:49,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:34:49,268.268 INFO    ] Checking for system updates...
[2026-08-25 10:34:49,304.304 INFO    ] 200
[2026-08-25 10:34:49,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:49,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:34:49,362.362 INFO    ] No update needed
[2026-08-25 10:34:49,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 10:34:49,400.400 INFO    ] 200
[2026-08-25 10:34:49,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:49,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:34:49,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:34:49,494.494 INFO    ] No camera update needed
[2026-08-25 10:34:49,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:34:49,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:34:49,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:34:49,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:34:51,550.550 INFO    ] ================================================
[2026-08-25 10:34:51,566.566 INFO    ] Launching Daemon at Tue Aug 25 10:34:51 IST 2026
[2026-08-25 10:34:51,577.577 INFO    ] ================================================
[2026-08-25 10:34:52,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:34:52
[2026-08-25 10:34:52,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:34:53,215.215 INFO    ] Initializing speech engine...
[2026-08-25 10:34:53,223.223 INFO    ] 2026-08-25 10:34:53
[2026-08-25 10:34:53,521.521 INFO    ] 2026-08-25 10:34:53
[2026-08-25 10:34:53,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:34:53,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:34:53,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:34:54,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:34:54,031.031 INFO    ] time= 25/08/2026 10:34:54
[2026-08-25 10:34:54,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:34:54,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:34:54,210.210 INFO    ] No existing commands found in stream
[2026-08-25 10:34:59,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:34:59,250.250 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 10:34:59,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:34:59,718.718 INFO    ] Checking for system updates...
[2026-08-25 10:34:59,759.759 INFO    ] 200
[2026-08-25 10:34:59,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:59,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:34:59,817.817 INFO    ] No update needed
[2026-08-25 10:34:59,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 10:34:59,859.859 INFO    ] 200
[2026-08-25 10:34:59,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:34:59,909.909 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:34:59,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:34:59,958.958 INFO    ] No camera update needed
[2026-08-25 10:34:59,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:34:59,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:34:59,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:34:59,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:35:02,020.020 INFO    ] ================================================
[2026-08-25 10:35:02,071.071 INFO    ] Launching Daemon at Tue Aug 25 10:35:02 IST 2026
[2026-08-25 10:35:02,102.102 INFO    ] ================================================
[2026-08-25 10:35:02,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:35:02
[2026-08-25 10:35:03,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:35:03,718.718 INFO    ] Initializing speech engine...
[2026-08-25 10:35:03,731.731 INFO    ] 2026-08-25 10:35:03
[2026-08-25 10:35:03,997.997 INFO    ] 2026-08-25 10:35:03
[2026-08-25 10:35:04,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:35:04,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:35:04,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:35:04,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:35:04,472.472 INFO    ] time= 25/08/2026 10:35:04
[2026-08-25 10:35:04,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:35:04,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:35:04,668.668 INFO    ] No existing commands found in stream
[2026-08-25 10:35:09,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:35:09,693.693 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 10:35:10,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:35:10,303.303 INFO    ] Checking for system updates...
[2026-08-25 10:35:10,337.337 INFO    ] 200
[2026-08-25 10:35:10,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:10,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:35:10,394.394 INFO    ] No update needed
[2026-08-25 10:35:10,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 10:35:10,430.430 INFO    ] 200
[2026-08-25 10:35:10,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:10,473.473 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:35:10,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:35:10,519.519 INFO    ] No camera update needed
[2026-08-25 10:35:10,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:35:10,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:35:10,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:35:10,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:35:12,575.575 INFO    ] ================================================
[2026-08-25 10:35:12,591.591 INFO    ] Launching Daemon at Tue Aug 25 10:35:12 IST 2026
[2026-08-25 10:35:12,602.602 INFO    ] ================================================
[2026-08-25 10:35:13,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:35:13
[2026-08-25 10:35:13,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:35:14,047.047 INFO    ] Initializing speech engine...
[2026-08-25 10:35:14,056.056 INFO    ] 2026-08-25 10:35:14
[2026-08-25 10:35:14,349.349 INFO    ] 2026-08-25 10:35:14
[2026-08-25 10:35:14,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:35:14,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:35:14,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:35:14,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:35:14,730.730 INFO    ] time= 25/08/2026 10:35:14
[2026-08-25 10:35:14,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:35:14,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:35:14,855.855 INFO    ] No existing commands found in stream
[2026-08-25 10:35:19,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:35:19,871.871 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 10:35:24,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:35:24,310.310 INFO    ] Checking for system updates...
[2026-08-25 10:35:24,346.346 INFO    ] 200
[2026-08-25 10:35:24,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:24,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:35:24,407.407 INFO    ] No update needed
[2026-08-25 10:35:24,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 10:35:24,444.444 INFO    ] 200
[2026-08-25 10:35:24,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:24,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:35:24,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:35:24,541.541 INFO    ] No camera update needed
[2026-08-25 10:35:24,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:35:24,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:35:24,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:35:24,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:35:26,596.596 INFO    ] ================================================
[2026-08-25 10:35:26,612.612 INFO    ] Launching Daemon at Tue Aug 25 10:35:26 IST 2026
[2026-08-25 10:35:26,623.623 INFO    ] ================================================
[2026-08-25 10:35:27,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:35:27
[2026-08-25 10:35:27,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:35:28,052.052 INFO    ] Initializing speech engine...
[2026-08-25 10:35:28,066.066 INFO    ] 2026-08-25 10:35:28
[2026-08-25 10:35:28,350.350 INFO    ] 2026-08-25 10:35:28
[2026-08-25 10:35:28,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:35:28,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:35:28,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:35:28,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:35:28,772.772 INFO    ] time= 25/08/2026 10:35:28
[2026-08-25 10:35:28,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:35:28,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:35:28,935.935 INFO    ] No existing commands found in stream
[2026-08-25 10:35:33,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:35:33,963.963 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 10:35:36,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:35:36,181.181 INFO    ] Checking for system updates...
[2026-08-25 10:35:36,217.217 INFO    ] 200
[2026-08-25 10:35:36,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:36,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:35:36,280.280 INFO    ] No update needed
[2026-08-25 10:35:36,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 10:35:36,319.319 INFO    ] 200
[2026-08-25 10:35:36,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:36,366.366 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:35:36,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:35:36,413.413 INFO    ] No camera update needed
[2026-08-25 10:35:36,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:35:36,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:35:36,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:35:36,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:35:38,468.468 INFO    ] ================================================
[2026-08-25 10:35:38,484.484 INFO    ] Launching Daemon at Tue Aug 25 10:35:38 IST 2026
[2026-08-25 10:35:38,495.495 INFO    ] ================================================
[2026-08-25 10:35:39,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:35:39
[2026-08-25 10:35:39,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:35:40,120.120 INFO    ] Initializing speech engine...
[2026-08-25 10:35:40,129.129 INFO    ] 2026-08-25 10:35:40
[2026-08-25 10:35:40,417.417 INFO    ] 2026-08-25 10:35:40
[2026-08-25 10:35:40,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:35:40,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:35:40,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:35:40,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:35:40,932.932 INFO    ] time= 25/08/2026 10:35:40
[2026-08-25 10:35:40,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:35:40,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:35:41,133.133 INFO    ] No existing commands found in stream
[2026-08-25 10:35:46,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:35:46,159.159 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 10:35:47,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:35:47,983.983 INFO    ] Checking for system updates...
[2026-08-25 10:35:48,020.020 INFO    ] 200
[2026-08-25 10:35:48,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:48,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:35:48,080.080 INFO    ] No update needed
[2026-08-25 10:35:48,083.083 INFO    ] Checking for camera pi updates...
[2026-08-25 10:35:48,117.117 INFO    ] 200
[2026-08-25 10:35:48,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:48,161.161 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:35:48,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:35:48,216.216 INFO    ] No camera update needed
[2026-08-25 10:35:48,219.219 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:35:48,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:35:48,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:35:48,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:35:50,271.271 INFO    ] ================================================
[2026-08-25 10:35:50,286.286 INFO    ] Launching Daemon at Tue Aug 25 10:35:50 IST 2026
[2026-08-25 10:35:50,297.297 INFO    ] ================================================
[2026-08-25 10:35:50,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:35:50
[2026-08-25 10:35:51,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:35:51,926.926 INFO    ] Initializing speech engine...
[2026-08-25 10:35:51,931.931 INFO    ] 2026-08-25 10:35:51
[2026-08-25 10:35:52,193.193 INFO    ] 2026-08-25 10:35:52
[2026-08-25 10:35:52,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:35:52,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:35:52,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:35:52,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:35:52,568.568 INFO    ] time= 25/08/2026 10:35:52
[2026-08-25 10:35:52,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:35:52,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:35:52,695.695 INFO    ] No existing commands found in stream
[2026-08-25 10:35:57,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:35:57,710.710 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 10:35:58,669.669 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:35:58,671.671 INFO    ] Checking for system updates...
[2026-08-25 10:35:58,706.706 INFO    ] 200
[2026-08-25 10:35:58,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:58,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:35:58,765.765 INFO    ] No update needed
[2026-08-25 10:35:58,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 10:35:58,805.805 INFO    ] 200
[2026-08-25 10:35:58,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:35:58,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:35:58,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:35:58,904.904 INFO    ] No camera update needed
[2026-08-25 10:35:58,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:35:58,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:35:58,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:35:58,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:36:00,960.960 INFO    ] ================================================
[2026-08-25 10:36:00,975.975 INFO    ] Launching Daemon at Tue Aug 25 10:36:00 IST 2026
[2026-08-25 10:36:00,986.986 INFO    ] ================================================
[2026-08-25 10:36:01,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:36:01
[2026-08-25 10:36:02,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:36:02,828.828 INFO    ] Initializing speech engine...
[2026-08-25 10:36:02,842.842 INFO    ] 2026-08-25 10:36:02
[2026-08-25 10:36:03,205.205 INFO    ] 2026-08-25 10:36:03
[2026-08-25 10:36:03,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:36:03,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:36:03,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:36:03,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:36:03,645.645 INFO    ] time= 25/08/2026 10:36:03
[2026-08-25 10:36:03,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:36:03,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:36:03,875.875 INFO    ] No existing commands found in stream
[2026-08-25 10:36:08,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:36:08,899.899 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 10:36:12,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:36:12,556.556 INFO    ] Checking for system updates...
[2026-08-25 10:36:12,596.596 INFO    ] 200
[2026-08-25 10:36:12,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:12,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:36:12,652.652 INFO    ] No update needed
[2026-08-25 10:36:12,655.655 INFO    ] Checking for camera pi updates...
[2026-08-25 10:36:12,688.688 INFO    ] 200
[2026-08-25 10:36:12,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:12,731.731 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:36:12,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:36:12,777.777 INFO    ] No camera update needed
[2026-08-25 10:36:12,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:36:12,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:36:12,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:36:12,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:36:14,831.831 INFO    ] ================================================
[2026-08-25 10:36:14,847.847 INFO    ] Launching Daemon at Tue Aug 25 10:36:14 IST 2026
[2026-08-25 10:36:14,859.859 INFO    ] ================================================
[2026-08-25 10:36:15,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:36:15
[2026-08-25 10:36:16,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:36:16,319.319 INFO    ] Initializing speech engine...
[2026-08-25 10:36:16,325.325 INFO    ] 2026-08-25 10:36:16
[2026-08-25 10:36:16,585.585 INFO    ] 2026-08-25 10:36:16
[2026-08-25 10:36:16,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:36:16,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:36:16,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:36:17,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:36:17,049.049 INFO    ] time= 25/08/2026 10:36:17
[2026-08-25 10:36:17,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:36:17,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:36:17,254.254 INFO    ] No existing commands found in stream
[2026-08-25 10:36:22,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:36:22,285.285 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 10:36:24,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:36:24,366.366 INFO    ] Checking for system updates...
[2026-08-25 10:36:24,406.406 INFO    ] 200
[2026-08-25 10:36:24,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:24,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:36:24,464.464 INFO    ] No update needed
[2026-08-25 10:36:24,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 10:36:24,501.501 INFO    ] 200
[2026-08-25 10:36:24,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:24,545.545 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:36:24,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:36:24,690.690 INFO    ] No camera update needed
[2026-08-25 10:36:24,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:36:24,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:36:24,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:36:24,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:36:26,747.747 INFO    ] ================================================
[2026-08-25 10:36:26,763.763 INFO    ] Launching Daemon at Tue Aug 25 10:36:26 IST 2026
[2026-08-25 10:36:26,774.774 INFO    ] ================================================
[2026-08-25 10:36:27,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:36:27
[2026-08-25 10:36:27,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:36:28,204.204 INFO    ] Initializing speech engine...
[2026-08-25 10:36:28,214.214 INFO    ] 2026-08-25 10:36:28
[2026-08-25 10:36:28,462.462 INFO    ] 2026-08-25 10:36:28
[2026-08-25 10:36:28,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:36:28,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:36:28,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:36:28,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:36:28,949.949 INFO    ] time= 25/08/2026 10:36:28
[2026-08-25 10:36:29,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:36:29,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:36:29,170.170 INFO    ] No existing commands found in stream
[2026-08-25 10:36:34,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:36:34,201.201 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 10:36:36,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:36:36,684.684 INFO    ] Checking for system updates...
[2026-08-25 10:36:36,720.720 INFO    ] 200
[2026-08-25 10:36:36,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:36,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:36:36,786.786 INFO    ] No update needed
[2026-08-25 10:36:36,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 10:36:36,822.822 INFO    ] 200
[2026-08-25 10:36:36,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:36,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:36:36,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:36:36,918.918 INFO    ] No camera update needed
[2026-08-25 10:36:36,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:36:36,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:36:36,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:36:36,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:36:38,976.976 INFO    ] ================================================
[2026-08-25 10:36:38,992.992 INFO    ] Launching Daemon at Tue Aug 25 10:36:38 IST 2026
[2026-08-25 10:36:39,003.003 INFO    ] ================================================
[2026-08-25 10:36:39,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:36:39
[2026-08-25 10:36:40,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:36:40,462.462 INFO    ] Initializing speech engine...
[2026-08-25 10:36:40,479.479 INFO    ] 2026-08-25 10:36:40
[2026-08-25 10:36:40,758.758 INFO    ] 2026-08-25 10:36:40
[2026-08-25 10:36:40,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:36:41,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:36:41,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:36:41,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:36:41,245.245 INFO    ] time= 25/08/2026 10:36:41
[2026-08-25 10:36:41,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:36:41,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:36:41,490.490 INFO    ] No existing commands found in stream
[2026-08-25 10:36:46,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:36:46,509.509 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 10:36:50,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:36:50,314.314 INFO    ] Checking for system updates...
[2026-08-25 10:36:50,355.355 INFO    ] 200
[2026-08-25 10:36:50,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:50,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:36:50,422.422 INFO    ] No update needed
[2026-08-25 10:36:50,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 10:36:50,459.459 INFO    ] 200
[2026-08-25 10:36:50,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:36:50,509.509 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:36:50,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:36:50,561.561 INFO    ] No camera update needed
[2026-08-25 10:36:50,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:36:50,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:36:50,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:36:50,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:36:52,620.620 INFO    ] ================================================
[2026-08-25 10:36:52,636.636 INFO    ] Launching Daemon at Tue Aug 25 10:36:52 IST 2026
[2026-08-25 10:36:52,648.648 INFO    ] ================================================
[2026-08-25 10:36:53,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:36:53
[2026-08-25 10:36:53,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:36:54,063.063 INFO    ] Initializing speech engine...
[2026-08-25 10:36:54,085.085 INFO    ] 2026-08-25 10:36:54
[2026-08-25 10:36:54,366.366 INFO    ] 2026-08-25 10:36:54
[2026-08-25 10:36:54,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:36:54,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:36:54,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:36:54,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:36:54,783.783 INFO    ] time= 25/08/2026 10:36:54
[2026-08-25 10:36:54,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:36:54,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:36:54,900.900 INFO    ] No existing commands found in stream
[2026-08-25 10:36:59,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:36:59,938.938 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 10:37:03,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:37:03,910.910 INFO    ] Checking for system updates...
[2026-08-25 10:37:03,947.947 INFO    ] 200
[2026-08-25 10:37:03,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:04,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:37:04,014.014 INFO    ] No update needed
[2026-08-25 10:37:04,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 10:37:04,052.052 INFO    ] 200
[2026-08-25 10:37:04,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:04,102.102 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:37:04,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:37:04,162.162 INFO    ] No camera update needed
[2026-08-25 10:37:04,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:37:04,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:37:04,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:37:04,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:37:06,217.217 INFO    ] ================================================
[2026-08-25 10:37:06,232.232 INFO    ] Launching Daemon at Tue Aug 25 10:37:06 IST 2026
[2026-08-25 10:37:06,243.243 INFO    ] ================================================
[2026-08-25 10:37:06,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:37:06
[2026-08-25 10:37:07,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:37:07,683.683 INFO    ] Initializing speech engine...
[2026-08-25 10:37:07,695.695 INFO    ] 2026-08-25 10:37:07
[2026-08-25 10:37:07,958.958 INFO    ] 2026-08-25 10:37:07
[2026-08-25 10:37:07,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:37:08,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:37:08,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:37:08,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:37:08,459.459 INFO    ] time= 25/08/2026 10:37:08
[2026-08-25 10:37:08,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:37:08,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:37:08,651.651 INFO    ] No existing commands found in stream
[2026-08-25 10:37:13,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:37:13,682.682 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 10:37:17,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:37:17,541.541 INFO    ] Checking for system updates...
[2026-08-25 10:37:17,581.581 INFO    ] 200
[2026-08-25 10:37:17,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:17,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:37:17,646.646 INFO    ] No update needed
[2026-08-25 10:37:17,648.648 INFO    ] Checking for camera pi updates...
[2026-08-25 10:37:17,686.686 INFO    ] 200
[2026-08-25 10:37:17,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:17,733.733 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:37:17,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:37:17,787.787 INFO    ] No camera update needed
[2026-08-25 10:37:17,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:37:17,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:37:17,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:37:17,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:37:19,841.841 INFO    ] ================================================
[2026-08-25 10:37:19,857.857 INFO    ] Launching Daemon at Tue Aug 25 10:37:19 IST 2026
[2026-08-25 10:37:19,869.869 INFO    ] ================================================
[2026-08-25 10:37:20,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:37:20
[2026-08-25 10:37:21,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:37:21,335.335 INFO    ] Initializing speech engine...
[2026-08-25 10:37:21,342.342 INFO    ] 2026-08-25 10:37:21
[2026-08-25 10:37:21,603.603 INFO    ] 2026-08-25 10:37:21
[2026-08-25 10:37:21,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:37:21,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:37:21,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:37:22,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:37:22,076.076 INFO    ] time= 25/08/2026 10:37:22
[2026-08-25 10:37:22,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:37:22,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:37:22,299.299 INFO    ] No existing commands found in stream
[2026-08-25 10:37:27,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:37:27,323.323 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 10:37:27,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:37:27,813.813 INFO    ] Checking for system updates...
[2026-08-25 10:37:27,849.849 INFO    ] 200
[2026-08-25 10:37:27,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:27,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:37:27,906.906 INFO    ] No update needed
[2026-08-25 10:37:27,908.908 INFO    ] Checking for camera pi updates...
[2026-08-25 10:37:27,942.942 INFO    ] 200
[2026-08-25 10:37:27,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:27,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:37:28,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:37:28,032.032 INFO    ] No camera update needed
[2026-08-25 10:37:28,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:37:28,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:37:28,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:37:28,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:37:30,087.087 INFO    ] ================================================
[2026-08-25 10:37:30,103.103 INFO    ] Launching Daemon at Tue Aug 25 10:37:30 IST 2026
[2026-08-25 10:37:30,114.114 INFO    ] ================================================
[2026-08-25 10:37:30,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:37:30
[2026-08-25 10:37:31,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:37:31,588.588 INFO    ] Initializing speech engine...
[2026-08-25 10:37:31,599.599 INFO    ] 2026-08-25 10:37:31
[2026-08-25 10:37:31,872.872 INFO    ] 2026-08-25 10:37:31
[2026-08-25 10:37:31,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:37:32,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:37:32,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:37:32,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:37:32,356.356 INFO    ] time= 25/08/2026 10:37:32
[2026-08-25 10:37:32,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:37:32,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:37:32,620.620 INFO    ] No existing commands found in stream
[2026-08-25 10:37:37,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:37:37,670.670 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 10:37:41,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:37:41,676.676 INFO    ] Checking for system updates...
[2026-08-25 10:37:41,711.711 INFO    ] 200
[2026-08-25 10:37:41,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:41,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:37:41,771.771 INFO    ] No update needed
[2026-08-25 10:37:41,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 10:37:41,810.810 INFO    ] 200
[2026-08-25 10:37:41,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:41,853.853 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:37:41,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:37:41,901.901 INFO    ] No camera update needed
[2026-08-25 10:37:41,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:37:41,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:37:41,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:37:41,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:37:43,956.956 INFO    ] ================================================
[2026-08-25 10:37:43,971.971 INFO    ] Launching Daemon at Tue Aug 25 10:37:43 IST 2026
[2026-08-25 10:37:43,983.983 INFO    ] ================================================
[2026-08-25 10:37:44,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:37:44
[2026-08-25 10:37:45,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:37:45,442.442 INFO    ] Initializing speech engine...
[2026-08-25 10:37:45,449.449 INFO    ] 2026-08-25 10:37:45
[2026-08-25 10:37:45,708.708 INFO    ] 2026-08-25 10:37:45
[2026-08-25 10:37:45,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:37:45,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:37:45,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:37:46,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:37:46,146.146 INFO    ] time= 25/08/2026 10:37:46
[2026-08-25 10:37:46,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:37:46,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:37:46,404.404 INFO    ] No existing commands found in stream
[2026-08-25 10:37:51,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:37:51,422.422 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 10:37:52,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:37:52,061.061 INFO    ] Checking for system updates...
[2026-08-25 10:37:52,098.098 INFO    ] 200
[2026-08-25 10:37:52,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:52,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:37:52,161.161 INFO    ] No update needed
[2026-08-25 10:37:52,164.164 INFO    ] Checking for camera pi updates...
[2026-08-25 10:37:52,200.200 INFO    ] 200
[2026-08-25 10:37:52,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:37:52,247.247 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:37:52,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:37:52,299.299 INFO    ] No camera update needed
[2026-08-25 10:37:52,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:37:52,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:37:52,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:37:52,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:37:54,355.355 INFO    ] ================================================
[2026-08-25 10:37:54,370.370 INFO    ] Launching Daemon at Tue Aug 25 10:37:54 IST 2026
[2026-08-25 10:37:54,381.381 INFO    ] ================================================
[2026-08-25 10:37:55,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:37:55
[2026-08-25 10:37:55,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:37:55,991.991 INFO    ] Initializing speech engine...
[2026-08-25 10:37:56,004.004 INFO    ] 2026-08-25 10:37:55
[2026-08-25 10:37:56,289.289 INFO    ] 2026-08-25 10:37:56
[2026-08-25 10:37:56,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:37:56,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:37:56,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:37:56,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:37:56,775.775 INFO    ] time= 25/08/2026 10:37:56
[2026-08-25 10:37:56,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:37:56,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:37:56,957.957 INFO    ] No existing commands found in stream
[2026-08-25 10:38:01,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:38:01,970.970 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 10:38:02,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:38:02,560.560 INFO    ] Checking for system updates...
[2026-08-25 10:38:02,601.601 INFO    ] 200
[2026-08-25 10:38:02,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:02,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:38:02,669.669 INFO    ] No update needed
[2026-08-25 10:38:02,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 10:38:02,710.710 INFO    ] 200
[2026-08-25 10:38:02,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:02,770.770 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:38:02,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:38:02,845.845 INFO    ] No camera update needed
[2026-08-25 10:38:02,849.849 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:38:02,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:38:02,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:38:02,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:38:04,915.915 INFO    ] ================================================
[2026-08-25 10:38:04,931.931 INFO    ] Launching Daemon at Tue Aug 25 10:38:04 IST 2026
[2026-08-25 10:38:04,943.943 INFO    ] ================================================
[2026-08-25 10:38:05,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:38:05
[2026-08-25 10:38:06,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:38:06,420.420 INFO    ] Initializing speech engine...
[2026-08-25 10:38:06,428.428 INFO    ] 2026-08-25 10:38:06
[2026-08-25 10:38:06,685.685 INFO    ] 2026-08-25 10:38:06
[2026-08-25 10:38:06,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:38:06,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:38:06,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:38:07,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:38:07,228.228 INFO    ] time= 25/08/2026 10:38:07
[2026-08-25 10:38:07,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:38:07,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:38:07,383.383 INFO    ] No existing commands found in stream
[2026-08-25 10:38:12,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:38:12,401.401 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 10:38:16,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:38:16,920.920 INFO    ] Checking for system updates...
[2026-08-25 10:38:16,956.956 INFO    ] 200
[2026-08-25 10:38:16,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:17,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:38:17,014.014 INFO    ] No update needed
[2026-08-25 10:38:17,016.016 INFO    ] Checking for camera pi updates...
[2026-08-25 10:38:17,051.051 INFO    ] 200
[2026-08-25 10:38:17,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:17,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:38:17,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:38:17,157.157 INFO    ] No camera update needed
[2026-08-25 10:38:17,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:38:17,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:38:17,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:38:17,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:38:19,213.213 INFO    ] ================================================
[2026-08-25 10:38:19,229.229 INFO    ] Launching Daemon at Tue Aug 25 10:38:19 IST 2026
[2026-08-25 10:38:19,240.240 INFO    ] ================================================
[2026-08-25 10:38:19,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:38:19
[2026-08-25 10:38:20,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:38:20,690.690 INFO    ] Initializing speech engine...
[2026-08-25 10:38:20,704.704 INFO    ] 2026-08-25 10:38:20
[2026-08-25 10:38:20,968.968 INFO    ] 2026-08-25 10:38:20
[2026-08-25 10:38:21,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:38:21,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:38:21,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:38:21,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:38:21,416.416 INFO    ] time= 25/08/2026 10:38:21
[2026-08-25 10:38:21,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:38:21,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:38:21,645.645 INFO    ] No existing commands found in stream
[2026-08-25 10:38:26,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:38:26,663.663 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 10:38:29,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:38:29,192.192 INFO    ] Checking for system updates...
[2026-08-25 10:38:29,229.229 INFO    ] 200
[2026-08-25 10:38:29,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:29,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:38:29,286.286 INFO    ] No update needed
[2026-08-25 10:38:29,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 10:38:29,325.325 INFO    ] 200
[2026-08-25 10:38:29,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:29,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:38:29,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:38:29,518.518 INFO    ] No camera update needed
[2026-08-25 10:38:29,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:38:29,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:38:29,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:38:29,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:38:31,577.577 INFO    ] ================================================
[2026-08-25 10:38:31,593.593 INFO    ] Launching Daemon at Tue Aug 25 10:38:31 IST 2026
[2026-08-25 10:38:31,606.606 INFO    ] ================================================
[2026-08-25 10:38:32,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:38:32
[2026-08-25 10:38:32,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:38:33,257.257 INFO    ] Initializing speech engine...
[2026-08-25 10:38:33,265.265 INFO    ] 2026-08-25 10:38:33
[2026-08-25 10:38:33,550.550 INFO    ] 2026-08-25 10:38:33
[2026-08-25 10:38:33,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:38:33,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:38:33,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:38:34,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:38:34,077.077 INFO    ] time= 25/08/2026 10:38:34
[2026-08-25 10:38:34,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:38:34,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:38:34,244.244 INFO    ] No existing commands found in stream
[2026-08-25 10:38:39,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:38:39,285.285 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 10:38:43,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:38:43,715.715 INFO    ] Checking for system updates...
[2026-08-25 10:38:43,751.751 INFO    ] 200
[2026-08-25 10:38:43,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:43,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:38:43,809.809 INFO    ] No update needed
[2026-08-25 10:38:43,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 10:38:43,848.848 INFO    ] 200
[2026-08-25 10:38:43,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:43,897.897 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:38:43,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:38:43,965.965 INFO    ] No camera update needed
[2026-08-25 10:38:43,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:38:43,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:38:43,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:38:43,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:38:46,022.022 INFO    ] ================================================
[2026-08-25 10:38:46,037.037 INFO    ] Launching Daemon at Tue Aug 25 10:38:46 IST 2026
[2026-08-25 10:38:46,048.048 INFO    ] ================================================
[2026-08-25 10:38:46,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:38:46
[2026-08-25 10:38:47,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:38:47,626.626 INFO    ] Initializing speech engine...
[2026-08-25 10:38:47,635.635 INFO    ] 2026-08-25 10:38:47
[2026-08-25 10:38:47,916.916 INFO    ] 2026-08-25 10:38:47
[2026-08-25 10:38:47,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:38:48,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:38:48,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:38:48,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:38:48,451.451 INFO    ] time= 25/08/2026 10:38:48
[2026-08-25 10:38:48,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:38:48,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:38:48,618.618 INFO    ] No existing commands found in stream
[2026-08-25 10:38:53,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:38:53,651.651 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 10:38:56,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:38:56,392.392 INFO    ] Checking for system updates...
[2026-08-25 10:38:56,432.432 INFO    ] 200
[2026-08-25 10:38:56,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:56,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:38:56,491.491 INFO    ] No update needed
[2026-08-25 10:38:56,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 10:38:56,530.530 INFO    ] 200
[2026-08-25 10:38:56,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:38:56,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:38:56,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:38:56,622.622 INFO    ] No camera update needed
[2026-08-25 10:38:56,625.625 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:38:56,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:38:56,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:38:56,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:38:58,679.679 INFO    ] ================================================
[2026-08-25 10:38:58,693.693 INFO    ] Launching Daemon at Tue Aug 25 10:38:58 IST 2026
[2026-08-25 10:38:58,704.704 INFO    ] ================================================
[2026-08-25 10:38:59,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:38:59
[2026-08-25 10:38:59,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:39:00,146.146 INFO    ] Initializing speech engine...
[2026-08-25 10:39:00,169.169 INFO    ] 2026-08-25 10:39:00
[2026-08-25 10:39:00,423.423 INFO    ] 2026-08-25 10:39:00
[2026-08-25 10:39:00,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:39:00,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:39:00,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:39:00,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:39:00,898.898 INFO    ] time= 25/08/2026 10:39:00
[2026-08-25 10:39:00,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:39:00,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:39:01,117.117 INFO    ] No existing commands found in stream
[2026-08-25 10:39:06,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:39:06,146.146 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 10:39:10,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:39:10,091.091 INFO    ] Checking for system updates...
[2026-08-25 10:39:10,127.127 INFO    ] 200
[2026-08-25 10:39:10,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:10,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:39:10,186.186 INFO    ] No update needed
[2026-08-25 10:39:10,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 10:39:10,221.221 INFO    ] 200
[2026-08-25 10:39:10,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:10,264.264 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:39:10,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:39:10,322.322 INFO    ] No camera update needed
[2026-08-25 10:39:10,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:39:10,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:39:10,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:39:10,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:39:12,377.377 INFO    ] ================================================
[2026-08-25 10:39:12,392.392 INFO    ] Launching Daemon at Tue Aug 25 10:39:12 IST 2026
[2026-08-25 10:39:12,403.403 INFO    ] ================================================
[2026-08-25 10:39:12,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:39:12
[2026-08-25 10:39:13,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:39:13,850.850 INFO    ] Initializing speech engine...
[2026-08-25 10:39:13,859.859 INFO    ] 2026-08-25 10:39:13
[2026-08-25 10:39:14,131.131 INFO    ] 2026-08-25 10:39:14
[2026-08-25 10:39:14,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:39:14,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:39:14,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:39:14,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:39:14,618.618 INFO    ] time= 25/08/2026 10:39:14
[2026-08-25 10:39:14,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:39:14,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:39:14,865.865 INFO    ] No existing commands found in stream
[2026-08-25 10:39:19,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:39:19,901.901 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 10:39:23,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:39:23,605.605 INFO    ] Checking for system updates...
[2026-08-25 10:39:23,641.641 INFO    ] 200
[2026-08-25 10:39:23,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:23,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:39:23,700.700 INFO    ] No update needed
[2026-08-25 10:39:23,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 10:39:23,737.737 INFO    ] 200
[2026-08-25 10:39:23,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:23,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:39:23,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:39:23,829.829 INFO    ] No camera update needed
[2026-08-25 10:39:23,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:39:23,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:39:23,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:39:23,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:39:25,886.886 INFO    ] ================================================
[2026-08-25 10:39:25,900.900 INFO    ] Launching Daemon at Tue Aug 25 10:39:25 IST 2026
[2026-08-25 10:39:25,911.911 INFO    ] ================================================
[2026-08-25 10:39:26,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:39:26
[2026-08-25 10:39:27,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:39:27,349.349 INFO    ] Initializing speech engine...
[2026-08-25 10:39:27,356.356 INFO    ] 2026-08-25 10:39:27
[2026-08-25 10:39:27,646.646 INFO    ] 2026-08-25 10:39:27
[2026-08-25 10:39:27,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:39:27,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:39:27,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:39:28,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:39:28,059.059 INFO    ] time= 25/08/2026 10:39:28
[2026-08-25 10:39:28,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:39:28,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:39:28,243.243 INFO    ] No existing commands found in stream
[2026-08-25 10:39:33,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:39:33,266.266 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 10:39:36,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:39:36,503.503 INFO    ] Checking for system updates...
[2026-08-25 10:39:36,539.539 INFO    ] 200
[2026-08-25 10:39:36,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:36,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:39:36,596.596 INFO    ] No update needed
[2026-08-25 10:39:36,598.598 INFO    ] Checking for camera pi updates...
[2026-08-25 10:39:36,631.631 INFO    ] 200
[2026-08-25 10:39:36,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:36,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:39:36,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:39:36,725.725 INFO    ] No camera update needed
[2026-08-25 10:39:36,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:39:36,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:39:36,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:39:36,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:39:38,780.780 INFO    ] ================================================
[2026-08-25 10:39:38,796.796 INFO    ] Launching Daemon at Tue Aug 25 10:39:38 IST 2026
[2026-08-25 10:39:38,807.807 INFO    ] ================================================
[2026-08-25 10:39:39,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:39:39
[2026-08-25 10:39:39,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:39:40,236.236 INFO    ] Initializing speech engine...
[2026-08-25 10:39:40,242.242 INFO    ] 2026-08-25 10:39:40
[2026-08-25 10:39:40,490.490 INFO    ] 2026-08-25 10:39:40
[2026-08-25 10:39:40,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:39:40,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:39:40,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:39:40,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:39:40,866.866 INFO    ] time= 25/08/2026 10:39:40
[2026-08-25 10:39:40,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:39:40,897.897 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:39:41,039.039 INFO    ] No existing commands found in stream
[2026-08-25 10:39:46,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:39:46,072.072 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 10:39:47,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:39:47,585.585 INFO    ] Checking for system updates...
[2026-08-25 10:39:47,620.620 INFO    ] 200
[2026-08-25 10:39:47,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:47,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:39:47,676.676 INFO    ] No update needed
[2026-08-25 10:39:47,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 10:39:47,714.714 INFO    ] 200
[2026-08-25 10:39:47,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:39:47,756.756 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:39:47,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:39:47,809.809 INFO    ] No camera update needed
[2026-08-25 10:39:47,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:39:47,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:39:47,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:39:47,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:39:49,864.864 INFO    ] ================================================
[2026-08-25 10:39:49,879.879 INFO    ] Launching Daemon at Tue Aug 25 10:39:49 IST 2026
[2026-08-25 10:39:49,889.889 INFO    ] ================================================
[2026-08-25 10:39:50,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:39:50
[2026-08-25 10:39:51,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:39:51,349.349 INFO    ] Initializing speech engine...
[2026-08-25 10:39:51,358.358 INFO    ] 2026-08-25 10:39:51
[2026-08-25 10:39:51,623.623 INFO    ] 2026-08-25 10:39:51
[2026-08-25 10:39:51,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:39:51,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:39:51,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:39:52,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:39:52,030.030 INFO    ] time= 25/08/2026 10:39:52
[2026-08-25 10:39:52,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:39:52,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:39:52,183.183 INFO    ] No existing commands found in stream
[2026-08-25 10:39:57,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:39:57,221.221 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 10:40:00,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:40:00,861.861 INFO    ] Checking for system updates...
[2026-08-25 10:40:00,896.896 INFO    ] 200
[2026-08-25 10:40:00,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:00,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:40:00,953.953 INFO    ] No update needed
[2026-08-25 10:40:00,955.955 INFO    ] Checking for camera pi updates...
[2026-08-25 10:40:00,988.988 INFO    ] 200
[2026-08-25 10:40:00,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:01,031.031 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:40:01,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:40:01,077.077 INFO    ] No camera update needed
[2026-08-25 10:40:01,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:40:01,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:40:01,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:40:01,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:40:03,155.155 INFO    ] ================================================
[2026-08-25 10:40:03,178.178 INFO    ] Launching Daemon at Tue Aug 25 10:40:03 IST 2026
[2026-08-25 10:40:03,196.196 INFO    ] ================================================
[2026-08-25 10:40:03,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:40:03
[2026-08-25 10:40:04,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:40:04,747.747 INFO    ] Initializing speech engine...
[2026-08-25 10:40:04,757.757 INFO    ] 2026-08-25 10:40:04
[2026-08-25 10:40:05,007.007 INFO    ] 2026-08-25 10:40:05
[2026-08-25 10:40:05,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:40:05,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:40:05,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:40:05,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:40:05,373.373 INFO    ] time= 25/08/2026 10:40:05
[2026-08-25 10:40:05,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:40:05,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:40:05,461.461 INFO    ] No existing commands found in stream
[2026-08-25 10:40:10,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:40:10,499.499 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 10:40:14,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:40:14,611.611 INFO    ] Checking for system updates...
[2026-08-25 10:40:14,647.647 INFO    ] 200
[2026-08-25 10:40:14,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:14,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:40:14,712.712 INFO    ] No update needed
[2026-08-25 10:40:14,715.715 INFO    ] Checking for camera pi updates...
[2026-08-25 10:40:14,748.748 INFO    ] 200
[2026-08-25 10:40:14,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:14,793.793 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:40:14,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:40:14,848.848 INFO    ] No camera update needed
[2026-08-25 10:40:14,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:40:14,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:40:14,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:40:14,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:40:16,904.904 INFO    ] ================================================
[2026-08-25 10:40:16,919.919 INFO    ] Launching Daemon at Tue Aug 25 10:40:16 IST 2026
[2026-08-25 10:40:16,931.931 INFO    ] ================================================
[2026-08-25 10:40:17,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:40:17
[2026-08-25 10:40:18,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:40:18,474.474 INFO    ] Initializing speech engine...
[2026-08-25 10:40:18,488.488 INFO    ] 2026-08-25 10:40:18
[2026-08-25 10:40:18,774.774 INFO    ] 2026-08-25 10:40:18
[2026-08-25 10:40:18,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:40:19,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:40:19,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:40:19,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:40:19,257.257 INFO    ] time= 25/08/2026 10:40:19
[2026-08-25 10:40:19,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:40:19,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:40:19,450.450 INFO    ] No existing commands found in stream
[2026-08-25 10:40:24,388.388 INFO    ] Received new command: ID=1787634624143-0
[2026-08-25 10:40:24,391.391 INFO    ] process_and_cleanup_command: msg_id=1787634624143-0
[2026-08-25 10:40:24,394.394 INFO    ] is_command_expired: timestamp=2026-08-25T05:10:23.550Z, expiry=30s
[2026-08-25 10:40:24,478.478 INFO    ] Command removed from stream: 1787634624143-0. returning for processing...
[2026-08-25 10:40:24,480.480 INFO    ] ***** get_valid_command
[2026-08-25 10:40:24,483.483 INFO    ] {'timestamp': '2026-08-25T05:10:23.550Z', 'source': 'webapp', 'data': '{"request_id":"start-order-1787634623550-o6ptdza8n","orderId":"TM03202401260825103944594","is_vending":false}', 'command': 'start-order', 'timeout': '10'}
[2026-08-25 10:40:24,486.486 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787634623550-o6ptdza8n', 'orderId': 'TM03202401260825103944594', 'is_vending': False}
[2026-08-25 10:40:24,489.489 INFO    ] Handling start order...
[2026-08-25 10:40:24,492.492 INFO    ] handle_start_order_command
[2026-08-25 10:40:24,499.499 INFO    ] _send_start_order_success: request_id=start-order-1787634623550-o6ptdza8n, order_id=TM03202401260825103944594
[2026-08-25 10:40:24,501.501 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 10:40:24,557.557 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787634624575-0
[2026-08-25 10:40:24,560.560 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 10:40:24,563.563 INFO    ] Checking for system updates...
[2026-08-25 10:40:24,607.607 INFO    ] 200
[2026-08-25 10:40:24,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:24,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:40:24,665.665 INFO    ] No update needed
[2026-08-25 10:40:24,668.668 INFO    ] Checking for camera pi updates...
[2026-08-25 10:40:24,702.702 INFO    ] 200
[2026-08-25 10:40:24,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:24,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:40:24,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:40:24,807.807 INFO    ] No camera update needed
[2026-08-25 10:40:24,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:40:24,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:40:24,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:40:24,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:40:26,861.861 INFO    ] ================================================
[2026-08-25 10:40:26,877.877 INFO    ] Launching Daemon at Tue Aug 25 10:40:26 IST 2026
[2026-08-25 10:40:26,887.887 INFO    ] ================================================
[2026-08-25 10:40:27,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:40:27
[2026-08-25 10:40:28,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:40:28,527.527 INFO    ] Initializing speech engine...
[2026-08-25 10:40:28,540.540 INFO    ] 2026-08-25 10:40:28
[2026-08-25 10:40:28,812.812 INFO    ] 2026-08-25 10:40:28
[2026-08-25 10:40:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:40:29,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:40:29,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:40:29,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:40:29,319.319 INFO    ] time= 25/08/2026 10:40:29
[2026-08-25 10:40:29,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:40:29,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:40:29,537.537 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 10:40:29,615.615 INFO    ] Checking historical command: ID=1787634624575-0
[2026-08-25 10:40:29,654.654 INFO    ] process_and_cleanup_command: msg_id=1787634624575-0
[2026-08-25 10:40:29,712.712 INFO    ] is_command_expired: timestamp=2026-08-25T05:10:24.500066Z, expiry=30s
[2026-08-25 10:40:29,969.969 INFO    ] Command removed from stream: 1787634624575-0. returning for processing...
[2026-08-25 10:40:30,008.008 INFO    ] ***** get_valid_command
[2026-08-25 10:40:30,020.020 INFO    ] {'status': 'success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1787634623550-o6ptdza8n', 'message': 'start-order success', 'metadata_order_id': 'TM03202401260825103944594', 'timestamp': '2026-08-25T05:10:24.500066Z', 'imei': 'TM03202401'}
[2026-08-25 10:40:30,024.024 INFO    ] Checking historical command: ID=1787634627786-0
[2026-08-25 10:40:30,068.068 INFO    ] process_and_cleanup_command: msg_id=1787634627786-0
[2026-08-25 10:40:30,079.079 INFO    ] is_command_expired: timestamp=2026-08-25T05:10:27.171Z, expiry=30s
[2026-08-25 10:40:30,156.156 INFO    ] Command removed from stream: 1787634627786-0. returning for processing...
[2026-08-25 10:40:30,162.162 INFO    ] ***** get_valid_command
[2026-08-25 10:40:30,168.168 INFO    ] {'source': 'webapp', 'timestamp': '2026-08-25T05:10:27.171Z', 'timeout': '60', 'command': 'process-order', 'data': '{"request_id":"process-order-1787634627171-v6m84p17f","orderId":"TM03202401260825103944594","is_vending":false,"accessCode":"65029954"}'}
[2026-08-25 10:40:30,174.174 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1787634627171-v6m84p17f', 'is_vending': False, 'accessCode': '65029954', 'orderId': 'TM03202401260825103944594'}
[2026-08-25 10:40:30,177.177 INFO    ] Handling process order...
[2026-08-25 10:40:30,181.181 INFO    ] Processing process-order command...
[2026-08-25 10:40:30,257.257 INFO    ] 🔍 Lock file Order ID: TM03202401260825103944594, TS: 2026-08-25 10:40:24
[2026-08-25 10:40:30,316.316 INFO    ] ✅ Order lock valid for TM03202401260825103944594
[2026-08-25 10:40:30,323.323 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 10:40:30,332.332 INFO    ] processing access code 65029954 for order TM03202401260825103944594
[2026-08-25 10:40:30,343.343 INFO    ] 🔍 Lock file Order ID: TM03202401260825103944594, TS: 2026-08-25 10:40:24
[2026-08-25 10:40:30,348.348 INFO    ] ✅ Order lock valid for TM03202401260825103944594
[2026-08-25 10:40:30,355.355 INFO    ] 2026-08-25 10:40:30
[2026-08-25 10:40:30,405.405 INFO    ] 200
[2026-08-25 10:40:30,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:30,420.420 INFO    ] 65029954
[2026-08-25 10:40:30,426.426 INFO    ] 2026-08-25 10:40:30
[2026-08-25 10:40:30,434.434 INFO    ] session id :647942611
[2026-08-25 10:40:30,441.441 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=65029954&imei=TM03202401&session_id=647942611
[2026-08-25 10:40:31,597.597 INFO    ] 200
[2026-08-25 10:40:31,635.635 INFO    ] {"data": {"access_code": "65029954", "order_id": "TM03202401260825103944594", "bill_amount": "10", "invoice_bill": "10", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500725", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "tray_id": "14", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm", "sku_total": 10}], "mobile": "9045056733"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 10:40:31,646.646 INFO    ] 10
[2026-08-25 10:40:31,657.657 INFO    ] TM03202401260825103944594
[2026-08-25 10:40:31,667.667 INFO    ] 9045056733
[2026-08-25 10:40:31,698.698 INFO    ] 2026-08-25 10:40:31
[2026-08-25 10:40:31,706.706 INFO    ] Door Opening for user mobile ending with  six seven three three 
[2026-08-25 10:40:31,716.716 INFO    ] Door Opening for user mobile ending with  six seven three three 
[2026-08-25 10:40:31,738.738 INFO    ] b103cc1dc9732f54cc0c38fa8ab58906
[2026-08-25 10:40:31,751.751 INFO    ] 2026-08-25 10:40:31
[2026-08-25 10:40:31,759.759 INFO    ] playing audio file
[2026-08-25 10:40:31,804.804 INFO    ] 2026-08-25 10:40:31
[2026-08-25 10:40:31,883.883 INFO    ] 2026-08-25 10:40:31
[2026-08-25 10:40:31,955.955 INFO    ] publish_status: order_id=TM03202401260825103944594
[2026-08-25 10:40:31,994.994 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825103944594
[2026-08-25 10:40:32,075.075 INFO    ] [publish_status] Message added to stream with ID: 1787634632092-0
[2026-08-25 10:40:32,078.078 INFO    ] Published to order:TM03202401260825103944594: {'order_id': 'TM03202401260825103944594', 'server_response': '{"status": true, "rstatus": true, "data": {"access_code": "65029954", "mobile": "9045056733", "invoice_bill": "10", "proposed_sku_json": [{"qty": 1, "tray_id": "14", "skuid": "4500725", "unit_price": 10, "offer_id": "", "name": "Maxvita Coconut Cookies 40gm", "mrp": "10", "door_id": "1", "offer_desc": "", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png"}], "order_id": "TM03202401260825103944594", "bill_amount": "10"}, "msg": "Order Data"}', 'server_status': 'order-started', 'timestamp': '2026-08-25T05:10:31.895450Z'} (ID: 1787634632092-0)
[2026-08-25 10:40:32,639.639 INFO    ] {'order_id': 'TM03202401260825103944594', 'server_response': {'status': True, 'rstatus': True, 'data': {'access_code': '65029954', 'mobile': '9045056733', 'invoice_bill': '10', 'proposed_sku_json': [{'qty': 1, 'tray_id': '14', 'skuid': '4500725', 'unit_price': 10, 'offer_id': '', 'name': 'Maxvita Coconut Cookies 40gm', 'mrp': '10', 'door_id': '1', 'offer_desc': '', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500725-5961.png'}], 'order_id': 'TM03202401260825103944594', 'bill_amount': '10'}, 'msg': 'Order Data'}, 'server_status': 'order-started'}
[2026-08-25 10:40:32,642.642 INFO    ] 200
[2026-08-25 10:40:32,645.645 INFO    ] {"data":{"order_id":"TM03202401260825103944594","server_response":{"status":true,"rstatus":true,"data":{"access_code":"65029954","mobile":"9045056733","invoice_bill":"10","proposed_sku_json":[{"qty":1,"tray_id":"14","skuid":"4500725","unit_price":10,"offer_id":"","name":"Maxvita Coconut Cookies 40gm","mrp":"10","door_id":"1","offer_desc":"","sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png"}],"order_id":"TM03202401260825103944594","bill_amount":"10"},"msg":"Order Data"},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 10:40:32,649.649 INFO    ] {'data': {'order_id': 'TM03202401260825103944594', 'server_response': {'status': True, 'rstatus': True, 'data': {'access_code': '65029954', 'mobile': '9045056733', 'invoice_bill': '10', 'order_id': 'TM03202401260825103944594', 'proposed_sku_json': [{'qty': 1, 'tray_id': '14', 'skuid': '4500725', 'unit_price': 10, 'offer_id': '', 'name': 'Maxvita Coconut Cookies 40gm', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'door_id': '1', 'offer_desc': '', 'sku_total': 10, 'mrp': '10'}], 'bill_amount': '10'}, 'msg': 'Order Data'}, 'server_status': 'order-started'}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-25 10:40:32,652.652 INFO    ] 2026-08-25 10:40:32
[2026-08-25 10:40:32,706.706 INFO    ] 200
[2026-08-25 10:40:32,709.709 INFO    ] True
[2026-08-25 10:40:32,861.861 INFO    ] 200
[2026-08-25 10:40:32,866.866 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 10:40:32,870.870 INFO    ] {'status': 'False', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'rstatus': False}
[2026-08-25 10:40:32,872.872 INFO    ] *** process_order ***
[2026-08-25 10:40:34,051.051 INFO    ] 200
[2026-08-25 10:40:34,054.054 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 10:40:34,057.057 INFO    ] {'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': True}
[2026-08-25 10:40:34,059.059 INFO    ] *** process_order ***
[2026-08-25 10:40:34,062.062 INFO    ] publish_status: order_id=TM03202401260825103944594
[2026-08-25 10:40:34,064.064 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825103944594
[2026-08-25 10:40:34,158.158 INFO    ] [publish_status] Message added to stream with ID: 1787634634175-0
[2026-08-25 10:40:34,160.160 INFO    ] Published to order:TM03202401260825103944594: {'order_id': 'TM03202401260825103944594', 'server_response': '{"status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "voiceNote": "Door is open...", "rstatus": true}', 'server_status': 'doorOpened'} (ID: 1787634634175-0)
[2026-08-25 10:40:35,228.228 INFO    ] 2026-08-25 10:40:35
[2026-08-25 10:40:35,231.231 INFO    ] publish_status: order_id=TM03202401260825103944594
[2026-08-25 10:40:35,234.234 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825103944594
[2026-08-25 10:40:35,318.318 INFO    ] [publish_status] Message added to stream with ID: 1787634635335-0
[2026-08-25 10:40:35,321.321 INFO    ] Published to order:TM03202401260825103944594: {'order_id': 'TM03202401260825103944594', 'server_response': '{"status": "True", "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "rstatus": true}', 'server_status': 'processOrder', 'timestamp': '2026-08-25T05:10:35.229948Z'} (ID: 1787634635335-0)
[2026-08-25 10:40:35,462.462 INFO    ] {'order_id': 'TM03202401260825103944594', 'server_response': {'status': 'True', 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'rstatus': True}, 'server_status': 'processOrder'}
[2026-08-25 10:40:35,465.465 INFO    ] 200
[2026-08-25 10:40:35,468.468 INFO    ] {"data":{"order_id":"TM03202401260825103944594","server_response":{"status":"true","SectionStatus":{"Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order","UI_Header":""},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"delay":0,"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","rstatus":true},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 10:40:35,470.470 INFO    ] {'data': {'order_id': 'TM03202401260825103944594', 'server_response': {'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True}, 'server_status': 'processOrder'}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-25 10:40:35,473.473 INFO    ] 2026-08-25 10:40:35
[2026-08-25 10:40:35,476.476 INFO    ] None
[2026-08-25 10:40:35,478.478 INFO    ] Opening Door now
[2026-08-25 10:40:35,481.481 INFO    ] Opening Door now
[2026-08-25 10:40:35,484.484 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 10:40:35,487.487 INFO    ] 2026-08-25 10:40:35
[2026-08-25 10:40:35,489.489 INFO    ] playing audio file
[2026-08-25 10:40:35,508.508 INFO    ] 2026-08-25 10:40:35
[2026-08-25 10:40:35,511.511 INFO    ] 2026-08-25 10:40:35
[2026-08-25 10:40:38,585.585 INFO    ] 200
[2026-08-25 10:40:38,588.588 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 10:40:38,591.591 INFO    ] {'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'rstatus': False}
[2026-08-25 10:40:41,670.670 INFO    ] 200
[2026-08-25 10:40:41,672.672 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 10:40:41,676.676 INFO    ] {'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'rstatus': False}
[2026-08-25 10:40:44,741.741 INFO    ] 200
[2026-08-25 10:40:44,744.744 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 10:40:44,747.747 INFO    ] Please close door 1
[2026-08-25 10:40:44,750.750 INFO    ] Please close door 1
[2026-08-25 10:40:44,752.752 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 10:40:44,755.755 INFO    ] 2026-08-25 10:40:44
[2026-08-25 10:40:44,757.757 INFO    ] playing audio file
[2026-08-25 10:40:44,773.773 INFO    ] 2026-08-25 10:40:44
[2026-08-25 10:40:44,777.777 INFO    ] publish_status: order_id=TM03202401260825103944594
[2026-08-25 10:40:44,780.780 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825103944594
[2026-08-25 10:40:44,867.867 INFO    ] [publish_status] Message added to stream with ID: 1787634644884-0
[2026-08-25 10:40:44,870.870 INFO    ] Published to order:TM03202401260825103944594: {'order_id': 'TM03202401260825103944594', 'server_response': '{"status": "False", "SectionStatus": {"Header": "Please Close Door 1", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "tmessage": "In Progress", "data": {}, "umessage": "In Progress"}, "rstatus": false}', 'server_status': 'OrderStatus', 'timestamp': '2026-08-25T05:10:44.775875Z'} (ID: 1787634644884-0)
[2026-08-25 10:40:45,418.418 INFO    ] {'order_id': 'TM03202401260825103944594', 'server_response': {'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'rstatus': False}, 'server_status': 'OrderStatus'}
[2026-08-25 10:40:45,421.421 INFO    ] 200
[2026-08-25 10:40:45,423.423 INFO    ] {"data":{"order_id":"TM03202401260825103944594","server_response":{"status":"false","SectionStatus":{"Header":"Please Close Door 1","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Maxvita Coconut Cookies 40gm"}]},"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"error":{"code":20001,"tmessage":"In Progress","data":[],"umessage":"In Progress"},"rstatus":false},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 10:40:45,426.426 INFO    ] {'data': {'order_id': 'TM03202401260825103944594', 'server_response': {'status': 'false', 'voiceNote': 'Please close door 1', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': [], 'umessage': 'In Progress'}, 'rstatus': False}, 'server_status': 'OrderStatus'}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-25 10:40:45,429.429 INFO    ] {'status': 'False', 'SectionStatus': {'Header': 'Please Close Door 1', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'rstatus': False}
[2026-08-25 10:40:48,506.506 INFO    ] 200
[2026-08-25 10:40:48,508.508 INFO    ] {"SectionMain": {"Header": "Door Close"}, "rstatus": false, "SectionStatus": {"Header": "Door 1 is closed now", "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"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "status": "False", "delay": 1000, "voiceNote": "Door 1 is closed now"}
[2026-08-25 10:40:48,512.512 INFO    ] {'status': 'False', 'SectionStatus': {'Header': 'Door 1 is closed now', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}]}, 'voiceNote': 'Door 1 is closed now', 'delay': 1000, 'SectionMain': {'Header': 'Door Close'}, 'error': {'code': 20001, 'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress'}, 'rstatus': False}
[2026-08-25 10:40:51,592.592 INFO    ] 200
[2026-08-25 10:40:51,596.596 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 10:40:51,600.600 INFO    ] {'status': 'True', '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': ''}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-08-25 10:40:51,603.603 INFO    ] 2026-08-25 10:40:51
[2026-08-25 10:40:51,607.607 INFO    ] Order Completed 
[2026-08-25 10:40:51,610.610 INFO    ] Order Completed 
[2026-08-25 10:40:51,613.613 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 10:40:51,617.617 INFO    ] 2026-08-25 10:40:51
[2026-08-25 10:40:51,619.619 INFO    ] playing audio file
[2026-08-25 10:40:51,637.637 INFO    ] 2026-08-25 10:40:51
[2026-08-25 10:40:51,641.641 INFO    ] {'status': 'True', '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': ''}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-08-25 10:40:51,644.644 INFO    ] 2026-08-25 10:40:51
[2026-08-25 10:40:52,155.155 INFO    ] 200
[2026-08-25 10:40:52,158.158 INFO    ] {"anomaly": 0, "cart_offer_desc": "", "rstatus": true, "bill_amount": 10, "orderId": "TM03202401260825103944594", "skus": [{"image_url": "https://images.tinymart.in/product/4500725-5961.png", "qty": 1, "unit_price": "10", "door_id": "", "sku_total": 10, "tray_id": "14", "mrp": "10", "skuid": "4500725", "name": "Maxvita Coconut Cookies 40gm per peice", "offer_id": ""}], "res": true, "imei": "TM03202401", "total_amount": 10, "order_status": "", "userId": "9045056733"}
[2026-08-25 10:40:52,162.162 INFO    ] {'userId': '9045056733', 'anomaly': 0, 'skus': [{'qty': 1, 'tray_id': '14', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'unit_price': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'mrp': '10', 'offer_id': '', 'sku_total': 10}], 'cart_offer_desc': '', 'orderId': 'TM03202401260825103944594', 'bill_amount': 10, 'rstatus': True, 'imei': 'TM03202401', 'total_amount': 10, 'order_status': '', 'res': True}
[2026-08-25 10:40:52,167.167 INFO    ] {'userId': '9045056733', 'anomaly': 0, 'skus': [{'qty': 1, 'tray_id': '14', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'unit_price': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'mrp': '10', 'offer_id': '', 'sku_total': 10}], 'cart_offer_desc': '', 'orderId': 'TM03202401260825103944594', 'bill_amount': 10, 'rstatus': True, 'imei': 'TM03202401', 'total_amount': 10, 'order_status': '', 'res': True}
[2026-08-25 10:40:52,170.170 INFO    ] 2026-08-25 10:40:52
[2026-08-25 10:40:52,174.174 INFO    ] 2026-08-25 10:40:52
[2026-08-25 10:40:52,177.177 INFO    ] 10
[2026-08-25 10:40:52,181.181 INFO    ] 2026-08-25 10:40:52
[2026-08-25 10:40:52,184.184 INFO    ] 2026-08-25 10:40:52
[2026-08-25 10:40:52,187.187 INFO    ]  Your Bill Amount is 10
[2026-08-25 10:40:52,191.191 INFO    ]  Your Bill Amount is 10
[2026-08-25 10:40:52,194.194 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-08-25 10:40:52,198.198 INFO    ] 2026-08-25 10:40:52
[2026-08-25 10:40:52,202.202 INFO    ] playing audio file
[2026-08-25 10:40:52,227.227 INFO    ] 2026-08-25 10:40:52
[2026-08-25 10:40:52,232.232 INFO    ] 2026-08-25 10:40:52
[2026-08-25 10:40:52,236.236 INFO    ] publish_status: order_id=TM03202401260825103944594
[2026-08-25 10:40:52,240.240 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825103944594
[2026-08-25 10:40:52,309.309 INFO    ] [publish_status] Message added to stream with ID: 1787634652326-0
[2026-08-25 10:40:52,313.313 INFO    ] Published to order:TM03202401260825103944594: {'order_id': 'TM03202401260825103944594', 'server_response': '{"userId": "9045056733", "anomaly": 0, "skus": [{"qty": 1, "tray_id": "14", "skuid": "4500725", "image_url": "https://images.tinymart.in/product/4500725-5961.png", "unit_price": "10", "name": "Maxvita Coconut Cookies 40gm per peice", "door_id": "", "mrp": "10", "offer_id": "", "sku_total": 10}], "cart_offer_desc": "", "orderId": "TM03202401260825103944594", "bill_amount": 10, "rstatus": true, "imei": "TM03202401", "total_amount": 10, "order_status": "", "res": true}', 'server_status': 'invoiceOrder', 'timestamp': '2026-08-25T05:10:52.234139Z'} (ID: 1787634652326-0)
[2026-08-25 10:40:53,192.192 INFO    ] {'order_id': 'TM03202401260825103944594', 'server_response': {'userId': '9045056733', 'anomaly': 0, 'skus': [{'qty': 1, 'tray_id': '14', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'unit_price': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'mrp': '10', 'offer_id': '', 'sku_total': 10}], 'cart_offer_desc': '', 'orderId': 'TM03202401260825103944594', 'bill_amount': 10, 'rstatus': True, 'imei': 'TM03202401', 'total_amount': 10, 'order_status': '', 'res': True}, 'server_status': 'invoiceOrder'}
[2026-08-25 10:40:53,194.194 INFO    ] 200
[2026-08-25 10:40:53,199.199 INFO    ] {"data":{"order_id":"TM03202401260825103944594","server_response":{"userId":"9045056733","anomaly":0,"skus":[{"qty":1,"tray_id":"14","skuid":"4500725","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","unit_price":"10","name":"Maxvita Coconut Cookies 40gm per peice","door_id":"","mrp":"10","offer_id":"","sku_total":10}],"cart_offer_desc":"","orderId":"TM03202401260825103944594","bill_amount":10,"rstatus":true,"imei":"TM03202401","total_amount":10,"order_status":"","res":true},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 10:40:53,202.202 INFO    ] {'data': {'order_id': 'TM03202401260825103944594', 'server_response': {'userId': '9045056733', 'anomaly': 0, 'skus': [{'qty': 1, 'tray_id': '14', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'unit_price': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'sku_total': 10, 'door_id': '', 'offer_id': '', 'mrp': '10'}], 'res': True, 'cart_offer_desc': '', 'orderId': 'TM03202401260825103944594', 'bill_amount': 10, 'rstatus': True, 'total_amount': 10, 'order_status': '', 'imei': 'TM03202401'}, 'server_status': 'invoiceOrder'}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-25 10:40:53,206.206 INFO    ] {'data': {'order_id': 'TM03202401260825103944594', 'server_response': {'userId': '9045056733', 'anomaly': 0, 'skus': [{'qty': 1, 'tray_id': '14', 'skuid': '4500725', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'unit_price': '10', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'sku_total': 10, 'door_id': '', 'offer_id': '', 'mrp': '10'}], 'res': True, 'cart_offer_desc': '', 'orderId': 'TM03202401260825103944594', 'bill_amount': 10, 'rstatus': True, 'total_amount': 10, 'order_status': '', 'imei': 'TM03202401'}, 'server_status': 'invoiceOrder'}, 'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}}
[2026-08-25 10:40:53,210.210 INFO    ] 2026-08-25 10:40:53
[2026-08-25 10:40:54,543.543 INFO    ] 200
[2026-08-25 10:40:54,546.546 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "status": true}
[2026-08-25 10:40:54,550.550 INFO    ] 2026-08-25 10:40:54
[2026-08-25 10:40:54,752.752 INFO    ] 200
[2026-08-25 10:40:54,756.756 INFO    ] True
[2026-08-25 10:40:54,759.759 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825103944594
[2026-08-25 10:40:54,764.764 INFO    ] start order file deleted
[2026-08-25 10:40:54,768.768 INFO    ] Checking for system updates...
[2026-08-25 10:40:54,808.808 INFO    ] 200
[2026-08-25 10:40:54,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:54,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:40:54,882.882 INFO    ] No update needed
[2026-08-25 10:40:54,885.885 INFO    ] Checking for camera pi updates...
[2026-08-25 10:40:54,919.919 INFO    ] 200
[2026-08-25 10:40:54,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:40:54,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:40:55,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:40:55,034.034 INFO    ] No camera update needed
[2026-08-25 10:40:55,037.037 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:40:55,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:40:55,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:40:55,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:40:57,094.094 INFO    ] ================================================
[2026-08-25 10:40:57,110.110 INFO    ] Launching Daemon at Tue Aug 25 10:40:57 IST 2026
[2026-08-25 10:40:57,120.120 INFO    ] ================================================
[2026-08-25 10:40:57,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:40:57
[2026-08-25 10:40:58,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:40:58,584.584 INFO    ] Initializing speech engine...
[2026-08-25 10:40:58,592.592 INFO    ] 2026-08-25 10:40:58
[2026-08-25 10:40:58,850.850 INFO    ] 2026-08-25 10:40:58
[2026-08-25 10:40:58,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:40:59,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:40:59,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:40:59,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:40:59,308.308 INFO    ] time= 25/08/2026 10:40:59
[2026-08-25 10:40:59,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:40:59,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:40:59,529.529 INFO    ] No existing commands found in stream
[2026-08-25 10:41:04,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:41:04,559.559 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 10:41:08,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:41:08,901.901 INFO    ] Checking for system updates...
[2026-08-25 10:41:08,937.937 INFO    ] 200
[2026-08-25 10:41:08,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:08,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:08,994.994 INFO    ] No update needed
[2026-08-25 10:41:08,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 10:41:09,030.030 INFO    ] 200
[2026-08-25 10:41:09,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:09,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:41:09,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:09,135.135 INFO    ] No camera update needed
[2026-08-25 10:41:09,137.137 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:41:09,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:41:09,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:41:09,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:41:11,191.191 INFO    ] ================================================
[2026-08-25 10:41:11,207.207 INFO    ] Launching Daemon at Tue Aug 25 10:41:11 IST 2026
[2026-08-25 10:41:11,218.218 INFO    ] ================================================
[2026-08-25 10:41:11,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:41:11
[2026-08-25 10:41:12,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:41:12,631.631 INFO    ] Initializing speech engine...
[2026-08-25 10:41:12,639.639 INFO    ] 2026-08-25 10:41:12
[2026-08-25 10:41:12,938.938 INFO    ] 2026-08-25 10:41:12
[2026-08-25 10:41:12,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:41:13,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:41:13,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:41:13,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:41:13,366.366 INFO    ] time= 25/08/2026 10:41:13
[2026-08-25 10:41:13,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:41:13,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:41:13,452.452 INFO    ] No existing commands found in stream
[2026-08-25 10:41:18,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:41:18,467.467 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 10:41:20,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:41:20,661.661 INFO    ] Checking for system updates...
[2026-08-25 10:41:20,696.696 INFO    ] 200
[2026-08-25 10:41:20,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:20,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:20,754.754 INFO    ] No update needed
[2026-08-25 10:41:20,756.756 INFO    ] Checking for camera pi updates...
[2026-08-25 10:41:20,789.789 INFO    ] 200
[2026-08-25 10:41:20,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:20,845.845 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:41:20,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:20,895.895 INFO    ] No camera update needed
[2026-08-25 10:41:20,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:41:20,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:41:20,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:41:20,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:41:22,950.950 INFO    ] ================================================
[2026-08-25 10:41:22,965.965 INFO    ] Launching Daemon at Tue Aug 25 10:41:22 IST 2026
[2026-08-25 10:41:22,976.976 INFO    ] ================================================
[2026-08-25 10:41:23,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:41:23
[2026-08-25 10:41:24,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:41:24,437.437 INFO    ] Initializing speech engine...
[2026-08-25 10:41:24,446.446 INFO    ] 2026-08-25 10:41:24
[2026-08-25 10:41:24,702.702 INFO    ] 2026-08-25 10:41:24
[2026-08-25 10:41:24,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:41:25,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:41:25,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:41:25,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:41:25,260.260 INFO    ] time= 25/08/2026 10:41:25
[2026-08-25 10:41:25,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:41:25,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:41:25,400.400 INFO    ] No existing commands found in stream
[2026-08-25 10:41:30,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:41:30,432.432 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 10:41:31,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:41:31,190.190 INFO    ] Checking for system updates...
[2026-08-25 10:41:31,230.230 INFO    ] 200
[2026-08-25 10:41:31,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:31,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:31,294.294 INFO    ] No update needed
[2026-08-25 10:41:31,296.296 INFO    ] Checking for camera pi updates...
[2026-08-25 10:41:31,329.329 INFO    ] 200
[2026-08-25 10:41:31,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:31,371.371 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:41:31,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:31,424.424 INFO    ] No camera update needed
[2026-08-25 10:41:31,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:41:31,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:41:31,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:41:31,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:41:33,480.480 INFO    ] ================================================
[2026-08-25 10:41:33,495.495 INFO    ] Launching Daemon at Tue Aug 25 10:41:33 IST 2026
[2026-08-25 10:41:33,507.507 INFO    ] ================================================
[2026-08-25 10:41:34,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:41:34
[2026-08-25 10:41:34,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:41:35,168.168 INFO    ] Initializing speech engine...
[2026-08-25 10:41:35,181.181 INFO    ] 2026-08-25 10:41:35
[2026-08-25 10:41:35,499.499 INFO    ] 2026-08-25 10:41:35
[2026-08-25 10:41:35,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:41:35,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:41:35,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:41:36,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:41:36,040.040 INFO    ] time= 25/08/2026 10:41:36
[2026-08-25 10:41:36,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:41:36,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:41:36,177.177 INFO    ] No existing commands found in stream
[2026-08-25 10:41:41,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:41:41,204.204 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 10:41:45,571.571 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:41:45,574.574 INFO    ] Checking for system updates...
[2026-08-25 10:41:45,616.616 INFO    ] 200
[2026-08-25 10:41:45,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:45,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:45,675.675 INFO    ] No update needed
[2026-08-25 10:41:45,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 10:41:45,722.722 INFO    ] 200
[2026-08-25 10:41:45,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:45,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:41:45,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:41:45,813.813 INFO    ] No camera update needed
[2026-08-25 10:41:45,817.817 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:41:45,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:41:45,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:41:45,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:41:47,874.874 INFO    ] ================================================
[2026-08-25 10:41:47,889.889 INFO    ] Launching Daemon at Tue Aug 25 10:41:47 IST 2026
[2026-08-25 10:41:47,901.901 INFO    ] ================================================
[2026-08-25 10:41:48,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:41:48
[2026-08-25 10:41:49,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:41:49,317.317 INFO    ] Initializing speech engine...
[2026-08-25 10:41:49,326.326 INFO    ] 2026-08-25 10:41:49
[2026-08-25 10:41:49,570.570 INFO    ] 2026-08-25 10:41:49
[2026-08-25 10:41:49,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:41:49,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:41:49,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:41:49,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:41:49,954.954 INFO    ] time= 25/08/2026 10:41:49
[2026-08-25 10:41:49,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:41:49,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:41:50,083.083 INFO    ] No existing commands found in stream
[2026-08-25 10:41:55,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:41:55,099.099 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 10:41:59,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:41:59,433.433 INFO    ] Checking for system updates...
[2026-08-25 10:41:59,468.468 INFO    ] 200
[2026-08-25 10:41:59,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:59,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:41:59,524.524 INFO    ] No update needed
[2026-08-25 10:41:59,526.526 INFO    ] Checking for camera pi updates...
[2026-08-25 10:41:59,564.564 INFO    ] 200
[2026-08-25 10:41:59,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:41:59,606.606 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:41:59,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:41:59,657.657 INFO    ] No camera update needed
[2026-08-25 10:41:59,659.659 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:41:59,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:41:59,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:41:59,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:42:01,711.711 INFO    ] ================================================
[2026-08-25 10:42:01,728.728 INFO    ] Launching Daemon at Tue Aug 25 10:42:01 IST 2026
[2026-08-25 10:42:01,739.739 INFO    ] ================================================
[2026-08-25 10:42:02,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:42:02
[2026-08-25 10:42:03,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:42:03,562.562 INFO    ] Initializing speech engine...
[2026-08-25 10:42:03,571.571 INFO    ] 2026-08-25 10:42:03
[2026-08-25 10:42:03,843.843 INFO    ] 2026-08-25 10:42:03
[2026-08-25 10:42:03,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:42:04,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:42:04,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:42:04,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:42:04,196.196 INFO    ] time= 25/08/2026 10:42:04
[2026-08-25 10:42:04,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:42:04,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:42:04,348.348 INFO    ] No existing commands found in stream
[2026-08-25 10:42:09,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:42:09,364.364 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 10:42:10,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:42:10,688.688 INFO    ] Checking for system updates...
[2026-08-25 10:42:10,728.728 INFO    ] 200
[2026-08-25 10:42:10,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:10,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:42:10,784.784 INFO    ] No update needed
[2026-08-25 10:42:10,787.787 INFO    ] Checking for camera pi updates...
[2026-08-25 10:42:10,819.819 INFO    ] 200
[2026-08-25 10:42:10,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:10,861.861 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:42:10,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:42:10,909.909 INFO    ] No camera update needed
[2026-08-25 10:42:10,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:42:10,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:42:10,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:42:10,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:42:12,964.964 INFO    ] ================================================
[2026-08-25 10:42:12,979.979 INFO    ] Launching Daemon at Tue Aug 25 10:42:12 IST 2026
[2026-08-25 10:42:12,990.990 INFO    ] ================================================
[2026-08-25 10:42:13,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:42:13
[2026-08-25 10:42:14,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:42:14,446.446 INFO    ] Initializing speech engine...
[2026-08-25 10:42:14,456.456 INFO    ] 2026-08-25 10:42:14
[2026-08-25 10:42:14,704.704 INFO    ] 2026-08-25 10:42:14
[2026-08-25 10:42:14,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:42:14,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:42:15,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:42:15,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:42:15,249.249 INFO    ] time= 25/08/2026 10:42:15
[2026-08-25 10:42:15,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:42:15,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:42:15,410.410 INFO    ] No existing commands found in stream
[2026-08-25 10:42:20,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:42:20,430.430 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 10:42:23,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:42:23,411.411 INFO    ] Checking for system updates...
[2026-08-25 10:42:23,447.447 INFO    ] 200
[2026-08-25 10:42:23,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:23,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:42:23,515.515 INFO    ] No update needed
[2026-08-25 10:42:23,517.517 INFO    ] Checking for camera pi updates...
[2026-08-25 10:42:23,550.550 INFO    ] 200
[2026-08-25 10:42:23,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:23,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:42:23,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:42:23,645.645 INFO    ] No camera update needed
[2026-08-25 10:42:23,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:42:23,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:42:23,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:42:23,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:42:25,703.703 INFO    ] ================================================
[2026-08-25 10:42:25,718.718 INFO    ] Launching Daemon at Tue Aug 25 10:42:25 IST 2026
[2026-08-25 10:42:25,730.730 INFO    ] ================================================
[2026-08-25 10:42:26,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:42:26
[2026-08-25 10:42:26,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:42:27,136.136 INFO    ] Initializing speech engine...
[2026-08-25 10:42:27,154.154 INFO    ] 2026-08-25 10:42:27
[2026-08-25 10:42:27,401.401 INFO    ] 2026-08-25 10:42:27
[2026-08-25 10:42:27,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:42:27,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:42:27,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:42:27,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:42:27,766.766 INFO    ] time= 25/08/2026 10:42:27
[2026-08-25 10:42:27,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:42:27,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:42:27,892.892 INFO    ] No existing commands found in stream
[2026-08-25 10:42:32,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:42:32,907.907 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 10:42:34,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:42:34,897.897 INFO    ] Checking for system updates...
[2026-08-25 10:42:34,932.932 INFO    ] 200
[2026-08-25 10:42:34,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:34,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:42:34,996.996 INFO    ] No update needed
[2026-08-25 10:42:34,999.999 INFO    ] Checking for camera pi updates...
[2026-08-25 10:42:35,032.032 INFO    ] 200
[2026-08-25 10:42:35,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:35,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:42:35,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:42:35,147.147 INFO    ] No camera update needed
[2026-08-25 10:42:35,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:42:35,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:42:35,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:42:35,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:42:37,206.206 INFO    ] ================================================
[2026-08-25 10:42:37,225.225 INFO    ] Launching Daemon at Tue Aug 25 10:42:37 IST 2026
[2026-08-25 10:42:37,240.240 INFO    ] ================================================
[2026-08-25 10:42:37,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:42:37
[2026-08-25 10:42:38,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:42:38,752.752 INFO    ] Initializing speech engine...
[2026-08-25 10:42:38,762.762 INFO    ] 2026-08-25 10:42:38
[2026-08-25 10:42:39,023.023 INFO    ] 2026-08-25 10:42:39
[2026-08-25 10:42:39,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:42:39,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:42:39,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:42:39,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:42:39,501.501 INFO    ] time= 25/08/2026 10:42:39
[2026-08-25 10:42:39,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:42:39,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:42:39,714.714 INFO    ] No existing commands found in stream
[2026-08-25 10:42:44,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:42:44,733.733 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 10:42:47,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:42:47,733.733 INFO    ] Checking for system updates...
[2026-08-25 10:42:47,775.775 INFO    ] 200
[2026-08-25 10:42:47,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:47,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:42:47,840.840 INFO    ] No update needed
[2026-08-25 10:42:47,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 10:42:47,876.876 INFO    ] 200
[2026-08-25 10:42:47,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:47,918.918 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:42:48,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:42:48,068.068 INFO    ] No camera update needed
[2026-08-25 10:42:48,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:42:48,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:42:48,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:42:48,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:42:50,124.124 INFO    ] ================================================
[2026-08-25 10:42:50,140.140 INFO    ] Launching Daemon at Tue Aug 25 10:42:50 IST 2026
[2026-08-25 10:42:50,157.157 INFO    ] ================================================
[2026-08-25 10:42:50,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:42:50
[2026-08-25 10:42:51,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:42:51,644.644 INFO    ] Initializing speech engine...
[2026-08-25 10:42:51,656.656 INFO    ] 2026-08-25 10:42:51
[2026-08-25 10:42:51,919.919 INFO    ] 2026-08-25 10:42:51
[2026-08-25 10:42:51,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:42:52,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:42:52,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:42:52,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:42:52,577.577 INFO    ] time= 25/08/2026 10:42:52
[2026-08-25 10:42:52,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:42:52,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:42:52,829.829 INFO    ] No existing commands found in stream
[2026-08-25 10:42:57,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:42:57,862.862 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 10:42:58,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:42:58,802.802 INFO    ] Checking for system updates...
[2026-08-25 10:42:58,839.839 INFO    ] 200
[2026-08-25 10:42:58,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:58,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:42:58,898.898 INFO    ] No update needed
[2026-08-25 10:42:58,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 10:42:58,939.939 INFO    ] 200
[2026-08-25 10:42:58,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:42:58,986.986 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:42:59,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:42:59,045.045 INFO    ] No camera update needed
[2026-08-25 10:42:59,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:42:59,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:42:59,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:42:59,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:43:01,102.102 INFO    ] ================================================
[2026-08-25 10:43:01,117.117 INFO    ] Launching Daemon at Tue Aug 25 10:43:01 IST 2026
[2026-08-25 10:43:01,128.128 INFO    ] ================================================
[2026-08-25 10:43:01,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:43:01
[2026-08-25 10:43:02,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:43:02,887.887 INFO    ] Initializing speech engine...
[2026-08-25 10:43:02,896.896 INFO    ] 2026-08-25 10:43:02
[2026-08-25 10:43:03,210.210 INFO    ] 2026-08-25 10:43:03
[2026-08-25 10:43:03,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:43:03,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:43:03,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:43:03,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:43:03,689.689 INFO    ] time= 25/08/2026 10:43:03
[2026-08-25 10:43:03,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:43:03,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:43:03,951.951 INFO    ] No existing commands found in stream
[2026-08-25 10:43:08,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:43:08,980.980 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 10:43:09,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:43:09,663.663 INFO    ] Checking for system updates...
[2026-08-25 10:43:09,704.704 INFO    ] 200
[2026-08-25 10:43:09,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:09,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:43:09,764.764 INFO    ] No update needed
[2026-08-25 10:43:09,767.767 INFO    ] Checking for camera pi updates...
[2026-08-25 10:43:09,801.801 INFO    ] 200
[2026-08-25 10:43:09,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:09,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:43:09,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:43:09,901.901 INFO    ] No camera update needed
[2026-08-25 10:43:09,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:43:09,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:43:09,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:43:09,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:43:11,960.960 INFO    ] ================================================
[2026-08-25 10:43:11,976.976 INFO    ] Launching Daemon at Tue Aug 25 10:43:11 IST 2026
[2026-08-25 10:43:11,987.987 INFO    ] ================================================
[2026-08-25 10:43:12,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:43:12
[2026-08-25 10:43:13,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:43:13,399.399 INFO    ] Initializing speech engine...
[2026-08-25 10:43:13,409.409 INFO    ] 2026-08-25 10:43:13
[2026-08-25 10:43:13,652.652 INFO    ] 2026-08-25 10:43:13
[2026-08-25 10:43:13,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:43:13,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:43:13,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:43:14,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:43:14,166.166 INFO    ] time= 25/08/2026 10:43:14
[2026-08-25 10:43:14,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:43:14,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:43:14,357.357 INFO    ] No existing commands found in stream
[2026-08-25 10:43:19,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:43:19,372.372 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 10:43:21,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:43:21,769.769 INFO    ] Checking for system updates...
[2026-08-25 10:43:21,808.808 INFO    ] 200
[2026-08-25 10:43:21,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:21,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:43:21,865.865 INFO    ] No update needed
[2026-08-25 10:43:21,867.867 INFO    ] Checking for camera pi updates...
[2026-08-25 10:43:21,901.901 INFO    ] 200
[2026-08-25 10:43:21,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:21,943.943 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:43:21,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:43:21,994.994 INFO    ] No camera update needed
[2026-08-25 10:43:21,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:43:21,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:43:22,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:43:22,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:43:24,050.050 INFO    ] ================================================
[2026-08-25 10:43:24,065.065 INFO    ] Launching Daemon at Tue Aug 25 10:43:24 IST 2026
[2026-08-25 10:43:24,077.077 INFO    ] ================================================
[2026-08-25 10:43:24,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:43:24
[2026-08-25 10:43:25,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:43:25,725.725 INFO    ] Initializing speech engine...
[2026-08-25 10:43:25,734.734 INFO    ] 2026-08-25 10:43:25
[2026-08-25 10:43:26,036.036 INFO    ] 2026-08-25 10:43:26
[2026-08-25 10:43:26,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:43:26,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:43:26,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:43:26,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:43:26,544.544 INFO    ] time= 25/08/2026 10:43:26
[2026-08-25 10:43:26,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:43:26,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:43:26,703.703 INFO    ] No existing commands found in stream
[2026-08-25 10:43:31,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:43:31,734.734 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 10:43:33,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:43:33,423.423 INFO    ] Checking for system updates...
[2026-08-25 10:43:33,458.458 INFO    ] 200
[2026-08-25 10:43:33,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:33,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:43:33,526.526 INFO    ] No update needed
[2026-08-25 10:43:33,529.529 INFO    ] Checking for camera pi updates...
[2026-08-25 10:43:33,567.567 INFO    ] 200
[2026-08-25 10:43:33,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:33,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:43:33,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:43:33,663.663 INFO    ] No camera update needed
[2026-08-25 10:43:33,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:43:33,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:43:33,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:43:33,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:43:35,718.718 INFO    ] ================================================
[2026-08-25 10:43:35,733.733 INFO    ] Launching Daemon at Tue Aug 25 10:43:35 IST 2026
[2026-08-25 10:43:35,745.745 INFO    ] ================================================
[2026-08-25 10:43:36,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:43:36
[2026-08-25 10:43:36,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:43:37,212.212 INFO    ] Initializing speech engine...
[2026-08-25 10:43:37,237.237 INFO    ] 2026-08-25 10:43:37
[2026-08-25 10:43:37,516.516 INFO    ] 2026-08-25 10:43:37
[2026-08-25 10:43:37,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:43:37,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:43:37,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:43:37,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:43:37,949.949 INFO    ] time= 25/08/2026 10:43:37
[2026-08-25 10:43:37,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:43:37,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:43:38,138.138 INFO    ] No existing commands found in stream
[2026-08-25 10:43:43,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:43:43,172.172 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 10:43:44,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:43:44,091.091 INFO    ] Checking for system updates...
[2026-08-25 10:43:44,126.126 INFO    ] 200
[2026-08-25 10:43:44,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:44,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:43:44,184.184 INFO    ] No update needed
[2026-08-25 10:43:44,187.187 INFO    ] Checking for camera pi updates...
[2026-08-25 10:43:44,220.220 INFO    ] 200
[2026-08-25 10:43:44,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:44,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:43:44,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:43:44,324.324 INFO    ] No camera update needed
[2026-08-25 10:43:44,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:43:44,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:43:44,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:43:44,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:43:46,378.378 INFO    ] ================================================
[2026-08-25 10:43:46,395.395 INFO    ] Launching Daemon at Tue Aug 25 10:43:46 IST 2026
[2026-08-25 10:43:46,406.406 INFO    ] ================================================
[2026-08-25 10:43:46,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:43:46
[2026-08-25 10:43:47,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:43:47,882.882 INFO    ] Initializing speech engine...
[2026-08-25 10:43:47,903.903 INFO    ] 2026-08-25 10:43:47
[2026-08-25 10:43:48,221.221 INFO    ] 2026-08-25 10:43:48
[2026-08-25 10:43:48,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:43:48,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:43:48,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:43:48,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:43:48,733.733 INFO    ] time= 25/08/2026 10:43:48
[2026-08-25 10:43:48,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:43:48,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:43:48,891.891 INFO    ] No existing commands found in stream
[2026-08-25 10:43:53,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:43:53,929.929 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 10:43:57,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:43:57,094.094 INFO    ] Checking for system updates...
[2026-08-25 10:43:57,136.136 INFO    ] 200
[2026-08-25 10:43:57,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:57,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:43:57,196.196 INFO    ] No update needed
[2026-08-25 10:43:57,199.199 INFO    ] Checking for camera pi updates...
[2026-08-25 10:43:57,232.232 INFO    ] 200
[2026-08-25 10:43:57,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:43:57,277.277 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:43:57,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:43:57,336.336 INFO    ] No camera update needed
[2026-08-25 10:43:57,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:43:57,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:43:57,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:43:57,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:43:59,389.389 INFO    ] ================================================
[2026-08-25 10:43:59,404.404 INFO    ] Launching Daemon at Tue Aug 25 10:43:59 IST 2026
[2026-08-25 10:43:59,415.415 INFO    ] ================================================
[2026-08-25 10:44:00,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:44:00
[2026-08-25 10:44:00,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:44:01,067.067 INFO    ] Initializing speech engine...
[2026-08-25 10:44:01,080.080 INFO    ] 2026-08-25 10:44:01
[2026-08-25 10:44:01,400.400 INFO    ] 2026-08-25 10:44:01
[2026-08-25 10:44:01,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:44:01,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:44:01,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:44:02,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:44:02,913.913 INFO    ] time= 25/08/2026 10:44:02
[2026-08-25 10:44:02,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:44:02,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:44:03,016.016 INFO    ] No existing commands found in stream
[2026-08-25 10:44:08,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:44:08,031.031 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 10:44:09,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:44:09,697.697 INFO    ] Checking for system updates...
[2026-08-25 10:44:09,733.733 INFO    ] 200
[2026-08-25 10:44:09,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:09,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:44:09,792.792 INFO    ] No update needed
[2026-08-25 10:44:09,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 10:44:09,828.828 INFO    ] 200
[2026-08-25 10:44:09,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:09,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:44:09,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:44:09,922.922 INFO    ] No camera update needed
[2026-08-25 10:44:09,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:44:09,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:44:09,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:44:09,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:44:11,977.977 INFO    ] ================================================
[2026-08-25 10:44:11,993.993 INFO    ] Launching Daemon at Tue Aug 25 10:44:11 IST 2026
[2026-08-25 10:44:12,004.004 INFO    ] ================================================
[2026-08-25 10:44:12,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:44:12
[2026-08-25 10:44:13,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:44:13,407.407 INFO    ] Initializing speech engine...
[2026-08-25 10:44:13,413.413 INFO    ] 2026-08-25 10:44:13
[2026-08-25 10:44:13,710.710 INFO    ] 2026-08-25 10:44:13
[2026-08-25 10:44:13,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:44:13,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:44:13,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:44:14,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:44:14,135.135 INFO    ] time= 25/08/2026 10:44:14
[2026-08-25 10:44:14,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:44:14,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:44:14,523.523 INFO    ] No existing commands found in stream
[2026-08-25 10:44:19,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:44:19,542.542 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 10:44:25,030.030 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:44:25,032.032 INFO    ] Checking for system updates...
[2026-08-25 10:44:25,067.067 INFO    ] 200
[2026-08-25 10:44:25,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:25,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:44:25,124.124 INFO    ] No update needed
[2026-08-25 10:44:25,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 10:44:25,161.161 INFO    ] 200
[2026-08-25 10:44:25,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:25,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:44:25,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:44:25,255.255 INFO    ] No camera update needed
[2026-08-25 10:44:25,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:44:25,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:44:25,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:44:25,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:44:27,309.309 INFO    ] ================================================
[2026-08-25 10:44:27,325.325 INFO    ] Launching Daemon at Tue Aug 25 10:44:27 IST 2026
[2026-08-25 10:44:27,336.336 INFO    ] ================================================
[2026-08-25 10:44:27,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:44:27
[2026-08-25 10:44:28,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:44:28,792.792 INFO    ] Initializing speech engine...
[2026-08-25 10:44:28,799.799 INFO    ] 2026-08-25 10:44:28
[2026-08-25 10:44:29,058.058 INFO    ] 2026-08-25 10:44:29
[2026-08-25 10:44:29,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:44:29,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:44:29,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:44:29,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:44:29,919.919 INFO    ] time= 25/08/2026 10:44:29
[2026-08-25 10:44:29,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:44:30,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:44:30,396.396 INFO    ] No existing commands found in stream
[2026-08-25 10:44:35,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:44:35,410.410 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 10:44:39,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:44:39,518.518 INFO    ] Checking for system updates...
[2026-08-25 10:44:39,555.555 INFO    ] 200
[2026-08-25 10:44:39,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:39,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:44:39,627.627 INFO    ] No update needed
[2026-08-25 10:44:39,630.630 INFO    ] Checking for camera pi updates...
[2026-08-25 10:44:39,665.665 INFO    ] 200
[2026-08-25 10:44:39,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:39,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:44:39,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:44:39,758.758 INFO    ] No camera update needed
[2026-08-25 10:44:39,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:44:39,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:44:39,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:44:39,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:44:41,817.817 INFO    ] ================================================
[2026-08-25 10:44:41,832.832 INFO    ] Launching Daemon at Tue Aug 25 10:44:41 IST 2026
[2026-08-25 10:44:41,843.843 INFO    ] ================================================
[2026-08-25 10:44:42,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:44:42
[2026-08-25 10:44:43,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:44:43,374.374 INFO    ] Initializing speech engine...
[2026-08-25 10:44:43,382.382 INFO    ] 2026-08-25 10:44:43
[2026-08-25 10:44:43,662.662 INFO    ] 2026-08-25 10:44:43
[2026-08-25 10:44:43,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:44:43,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:44:43,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:44:44,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:44:44,161.161 INFO    ] time= 25/08/2026 10:44:44
[2026-08-25 10:44:44,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:44:44,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:44:44,383.383 INFO    ] No existing commands found in stream
[2026-08-25 10:44:49,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:44:49,401.401 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 10:44:51,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:44:51,589.589 INFO    ] Checking for system updates...
[2026-08-25 10:44:51,630.630 INFO    ] 200
[2026-08-25 10:44:51,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:51,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:44:51,698.698 INFO    ] No update needed
[2026-08-25 10:44:51,701.701 INFO    ] Checking for camera pi updates...
[2026-08-25 10:44:51,738.738 INFO    ] 200
[2026-08-25 10:44:51,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:44:51,795.795 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:44:51,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:44:51,942.942 INFO    ] No camera update needed
[2026-08-25 10:44:51,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:44:51,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:44:51,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:44:51,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:44:54,997.997 INFO    ] ================================================
[2026-08-25 10:44:54,013.013 INFO    ] Launching Daemon at Tue Aug 25 10:44:54 IST 2026
[2026-08-25 10:44:54,024.024 INFO    ] ================================================
[2026-08-25 10:44:54,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:44:54
[2026-08-25 10:44:55,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:44:55,468.468 INFO    ] Initializing speech engine...
[2026-08-25 10:44:55,480.480 INFO    ] 2026-08-25 10:44:55
[2026-08-25 10:44:55,767.767 INFO    ] 2026-08-25 10:44:55
[2026-08-25 10:44:55,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:44:56,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:44:56,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:44:56,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:44:56,152.152 INFO    ] time= 25/08/2026 10:44:56
[2026-08-25 10:44:56,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:44:56,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:44:56,282.282 INFO    ] No existing commands found in stream
[2026-08-25 10:45:01,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:45:01,300.300 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 10:45:04,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:45:04,425.425 INFO    ] Checking for system updates...
[2026-08-25 10:45:04,467.467 INFO    ] 200
[2026-08-25 10:45:04,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:04,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:45:04,534.534 INFO    ] No update needed
[2026-08-25 10:45:04,537.537 INFO    ] Checking for camera pi updates...
[2026-08-25 10:45:04,574.574 INFO    ] 200
[2026-08-25 10:45:04,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:04,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:45:04,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:45:04,682.682 INFO    ] No camera update needed
[2026-08-25 10:45:04,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:45:04,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:45:04,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:45:04,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:45:06,746.746 INFO    ] ================================================
[2026-08-25 10:45:06,763.763 INFO    ] Launching Daemon at Tue Aug 25 10:45:06 IST 2026
[2026-08-25 10:45:06,774.774 INFO    ] ================================================
[2026-08-25 10:45:07,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:45:07
[2026-08-25 10:45:08,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:45:08,334.334 INFO    ] Initializing speech engine...
[2026-08-25 10:45:08,343.343 INFO    ] 2026-08-25 10:45:08
[2026-08-25 10:45:08,648.648 INFO    ] 2026-08-25 10:45:08
[2026-08-25 10:45:08,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:45:08,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:45:08,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:45:09,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:45:09,102.102 INFO    ] time= 25/08/2026 10:45:09
[2026-08-25 10:45:09,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:45:09,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:45:09,300.300 INFO    ] No existing commands found in stream
[2026-08-25 10:45:14,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:45:14,330.330 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 10:45:17,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:45:17,935.935 INFO    ] Checking for system updates...
[2026-08-25 10:45:17,972.972 INFO    ] 200
[2026-08-25 10:45:17,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:18,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:45:18,031.031 INFO    ] No update needed
[2026-08-25 10:45:18,034.034 INFO    ] Checking for camera pi updates...
[2026-08-25 10:45:18,070.070 INFO    ] 200
[2026-08-25 10:45:18,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:18,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:45:18,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:45:18,179.179 INFO    ] No camera update needed
[2026-08-25 10:45:18,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:45:18,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:45:18,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:45:18,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:45:20,237.237 INFO    ] ================================================
[2026-08-25 10:45:20,253.253 INFO    ] Launching Daemon at Tue Aug 25 10:45:20 IST 2026
[2026-08-25 10:45:20,264.264 INFO    ] ================================================
[2026-08-25 10:45:20,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:45:20
[2026-08-25 10:45:21,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:45:21,739.739 INFO    ] Initializing speech engine...
[2026-08-25 10:45:21,745.745 INFO    ] 2026-08-25 10:45:21
[2026-08-25 10:45:22,011.011 INFO    ] 2026-08-25 10:45:22
[2026-08-25 10:45:22,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:45:22,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:45:22,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:45:22,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:45:22,486.486 INFO    ] time= 25/08/2026 10:45:22
[2026-08-25 10:45:22,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:45:22,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:45:22,680.680 INFO    ] No existing commands found in stream
[2026-08-25 10:45:27,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:45:27,708.708 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 10:45:31,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:45:31,791.791 INFO    ] Checking for system updates...
[2026-08-25 10:45:31,826.826 INFO    ] 200
[2026-08-25 10:45:31,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:31,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:45:31,883.883 INFO    ] No update needed
[2026-08-25 10:45:31,885.885 INFO    ] Checking for camera pi updates...
[2026-08-25 10:45:31,918.918 INFO    ] 200
[2026-08-25 10:45:31,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:31,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:45:32,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:45:32,090.090 INFO    ] No camera update needed
[2026-08-25 10:45:32,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:45:32,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:45:32,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:45:32,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:45:34,149.149 INFO    ] ================================================
[2026-08-25 10:45:34,165.165 INFO    ] Launching Daemon at Tue Aug 25 10:45:34 IST 2026
[2026-08-25 10:45:34,177.177 INFO    ] ================================================
[2026-08-25 10:45:34,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:45:34
[2026-08-25 10:45:35,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:45:35,621.621 INFO    ] Initializing speech engine...
[2026-08-25 10:45:35,629.629 INFO    ] 2026-08-25 10:45:35
[2026-08-25 10:45:35,929.929 INFO    ] 2026-08-25 10:45:35
[2026-08-25 10:45:35,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:45:36,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:45:36,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:45:36,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:45:36,343.343 INFO    ] time= 25/08/2026 10:45:36
[2026-08-25 10:45:36,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:45:36,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:45:36,497.497 INFO    ] No existing commands found in stream
[2026-08-25 10:45:41,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:45:41,520.520 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 10:45:43,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:45:43,543.543 INFO    ] Checking for system updates...
[2026-08-25 10:45:43,582.582 INFO    ] 200
[2026-08-25 10:45:43,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:43,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:45:43,648.648 INFO    ] No update needed
[2026-08-25 10:45:43,651.651 INFO    ] Checking for camera pi updates...
[2026-08-25 10:45:43,688.688 INFO    ] 200
[2026-08-25 10:45:43,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:43,736.736 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:45:43,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:45:43,797.797 INFO    ] No camera update needed
[2026-08-25 10:45:43,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:45:43,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:45:43,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:45:43,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:45:45,861.861 INFO    ] ================================================
[2026-08-25 10:45:45,878.878 INFO    ] Launching Daemon at Tue Aug 25 10:45:45 IST 2026
[2026-08-25 10:45:45,889.889 INFO    ] ================================================
[2026-08-25 10:45:46,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:45:46
[2026-08-25 10:45:47,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:45:47,376.376 INFO    ] Initializing speech engine...
[2026-08-25 10:45:47,390.390 INFO    ] 2026-08-25 10:45:47
[2026-08-25 10:45:47,652.652 INFO    ] 2026-08-25 10:45:47
[2026-08-25 10:45:47,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:45:47,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:45:47,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:45:48,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:45:48,121.121 INFO    ] time= 25/08/2026 10:45:48
[2026-08-25 10:45:48,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:45:48,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:45:48,402.402 INFO    ] No existing commands found in stream
[2026-08-25 10:45:53,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:45:53,428.428 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 10:45:55,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:45:55,576.576 INFO    ] Checking for system updates...
[2026-08-25 10:45:55,613.613 INFO    ] 200
[2026-08-25 10:45:55,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:55,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:45:55,670.670 INFO    ] No update needed
[2026-08-25 10:45:55,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 10:45:55,705.705 INFO    ] 200
[2026-08-25 10:45:55,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:45:55,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:45:55,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:45:55,797.797 INFO    ] No camera update needed
[2026-08-25 10:45:55,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:45:55,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:45:55,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:45:55,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:45:57,852.852 INFO    ] ================================================
[2026-08-25 10:45:57,868.868 INFO    ] Launching Daemon at Tue Aug 25 10:45:57 IST 2026
[2026-08-25 10:45:57,878.878 INFO    ] ================================================
[2026-08-25 10:45:58,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:45:58
[2026-08-25 10:45:59,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:45:59,336.336 INFO    ] Initializing speech engine...
[2026-08-25 10:45:59,345.345 INFO    ] 2026-08-25 10:45:59
[2026-08-25 10:45:59,592.592 INFO    ] 2026-08-25 10:45:59
[2026-08-25 10:45:59,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:45:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:45:59,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:46:00,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:46:00,077.077 INFO    ] time= 25/08/2026 10:46:00
[2026-08-25 10:46:00,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:46:00,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:46:00,299.299 INFO    ] No existing commands found in stream
[2026-08-25 10:46:05,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:46:05,316.316 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 10:46:06,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:46:06,982.982 INFO    ] Checking for system updates...
[2026-08-25 10:46:07,017.017 INFO    ] 200
[2026-08-25 10:46:07,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:07,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:46:07,074.074 INFO    ] No update needed
[2026-08-25 10:46:07,077.077 INFO    ] Checking for camera pi updates...
[2026-08-25 10:46:07,111.111 INFO    ] 200
[2026-08-25 10:46:07,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:07,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:46:07,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:46:07,225.225 INFO    ] No camera update needed
[2026-08-25 10:46:07,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:46:07,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:46:07,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:46:07,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:46:09,281.281 INFO    ] ================================================
[2026-08-25 10:46:09,296.296 INFO    ] Launching Daemon at Tue Aug 25 10:46:09 IST 2026
[2026-08-25 10:46:09,307.307 INFO    ] ================================================
[2026-08-25 10:46:09,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:46:09
[2026-08-25 10:46:10,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:46:10,782.782 INFO    ] Initializing speech engine...
[2026-08-25 10:46:10,795.795 INFO    ] 2026-08-25 10:46:10
[2026-08-25 10:46:11,066.066 INFO    ] 2026-08-25 10:46:11
[2026-08-25 10:46:11,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:46:11,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:46:11,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:46:11,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:46:11,556.556 INFO    ] time= 25/08/2026 10:46:11
[2026-08-25 10:46:11,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:46:11,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:46:11,759.759 INFO    ] No existing commands found in stream
[2026-08-25 10:46:16,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:46:16,775.775 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 10:46:18,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:46:18,152.152 INFO    ] Checking for system updates...
[2026-08-25 10:46:18,187.187 INFO    ] 200
[2026-08-25 10:46:18,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:18,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:46:18,243.243 INFO    ] No update needed
[2026-08-25 10:46:18,247.247 INFO    ] Checking for camera pi updates...
[2026-08-25 10:46:18,281.281 INFO    ] 200
[2026-08-25 10:46:18,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:18,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:46:18,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:46:18,374.374 INFO    ] No camera update needed
[2026-08-25 10:46:18,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:46:18,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:46:18,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:46:18,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:46:20,429.429 INFO    ] ================================================
[2026-08-25 10:46:20,444.444 INFO    ] Launching Daemon at Tue Aug 25 10:46:20 IST 2026
[2026-08-25 10:46:20,455.455 INFO    ] ================================================
[2026-08-25 10:46:21,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:46:21
[2026-08-25 10:46:21,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:46:21,916.916 INFO    ] Initializing speech engine...
[2026-08-25 10:46:21,925.925 INFO    ] 2026-08-25 10:46:21
[2026-08-25 10:46:22,184.184 INFO    ] 2026-08-25 10:46:22
[2026-08-25 10:46:22,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:46:22,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:46:22,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:46:22,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:46:22,540.540 INFO    ] time= 25/08/2026 10:46:22
[2026-08-25 10:46:22,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:46:22,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:46:22,729.729 INFO    ] No existing commands found in stream
[2026-08-25 10:46:27,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:46:27,757.757 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 10:46:31,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:46:31,616.616 INFO    ] Checking for system updates...
[2026-08-25 10:46:31,654.654 INFO    ] 200
[2026-08-25 10:46:31,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:31,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:46:31,718.718 INFO    ] No update needed
[2026-08-25 10:46:31,720.720 INFO    ] Checking for camera pi updates...
[2026-08-25 10:46:31,757.757 INFO    ] 200
[2026-08-25 10:46:31,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:31,813.813 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:46:31,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:46:31,884.884 INFO    ] No camera update needed
[2026-08-25 10:46:31,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:46:31,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:46:31,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:46:31,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:46:33,943.943 INFO    ] ================================================
[2026-08-25 10:46:33,959.959 INFO    ] Launching Daemon at Tue Aug 25 10:46:33 IST 2026
[2026-08-25 10:46:33,971.971 INFO    ] ================================================
[2026-08-25 10:46:34,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:46:34
[2026-08-25 10:46:35,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:46:35,376.376 INFO    ] Initializing speech engine...
[2026-08-25 10:46:35,382.382 INFO    ] 2026-08-25 10:46:35
[2026-08-25 10:46:35,678.678 INFO    ] 2026-08-25 10:46:35
[2026-08-25 10:46:35,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:46:35,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:46:35,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:46:36,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:46:36,096.096 INFO    ] time= 25/08/2026 10:46:36
[2026-08-25 10:46:36,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:46:36,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:46:36,232.232 INFO    ] No existing commands found in stream
[2026-08-25 10:46:41,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:46:41,261.261 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 10:46:43,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:46:43,762.762 INFO    ] Checking for system updates...
[2026-08-25 10:46:43,798.798 INFO    ] 200
[2026-08-25 10:46:43,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:43,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:46:43,856.856 INFO    ] No update needed
[2026-08-25 10:46:43,859.859 INFO    ] Checking for camera pi updates...
[2026-08-25 10:46:43,892.892 INFO    ] 200
[2026-08-25 10:46:43,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:43,935.935 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:46:43,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:46:43,998.998 INFO    ] No camera update needed
[2026-08-25 10:46:44,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:46:44,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:46:44,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:46:44,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:46:46,053.053 INFO    ] ================================================
[2026-08-25 10:46:46,069.069 INFO    ] Launching Daemon at Tue Aug 25 10:46:46 IST 2026
[2026-08-25 10:46:46,080.080 INFO    ] ================================================
[2026-08-25 10:46:46,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:46:46
[2026-08-25 10:46:47,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:46:47,522.522 INFO    ] Initializing speech engine...
[2026-08-25 10:46:47,538.538 INFO    ] 2026-08-25 10:46:47
[2026-08-25 10:46:47,819.819 INFO    ] 2026-08-25 10:46:47
[2026-08-25 10:46:47,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:46:48,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:46:48,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:46:48,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:46:48,230.230 INFO    ] time= 25/08/2026 10:46:48
[2026-08-25 10:46:48,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:46:48,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:46:48,384.384 INFO    ] No existing commands found in stream
[2026-08-25 10:46:53,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:46:53,410.410 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 10:46:54,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:46:54,412.412 INFO    ] Checking for system updates...
[2026-08-25 10:46:54,450.450 INFO    ] 200
[2026-08-25 10:46:54,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:54,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:46:54,509.509 INFO    ] No update needed
[2026-08-25 10:46:54,511.511 INFO    ] Checking for camera pi updates...
[2026-08-25 10:46:54,545.545 INFO    ] 200
[2026-08-25 10:46:54,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:46:54,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:46:54,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:46:54,734.734 INFO    ] No camera update needed
[2026-08-25 10:46:54,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:46:54,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:46:54,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:46:54,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:46:56,789.789 INFO    ] ================================================
[2026-08-25 10:46:56,804.804 INFO    ] Launching Daemon at Tue Aug 25 10:46:56 IST 2026
[2026-08-25 10:46:56,816.816 INFO    ] ================================================
[2026-08-25 10:46:57,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:46:57
[2026-08-25 10:46:57,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:46:58,271.271 INFO    ] Initializing speech engine...
[2026-08-25 10:46:58,278.278 INFO    ] 2026-08-25 10:46:58
[2026-08-25 10:46:58,538.538 INFO    ] 2026-08-25 10:46:58
[2026-08-25 10:46:58,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:46:59,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:46:59,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:46:59,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:46:59,504.504 INFO    ] time= 25/08/2026 10:46:59
[2026-08-25 10:46:59,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:46:59,514.514 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:46:59,640.640 INFO    ] No existing commands found in stream
[2026-08-25 10:47:04,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:47:04,656.656 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 10:47:07,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:47:07,649.649 INFO    ] Checking for system updates...
[2026-08-25 10:47:07,685.685 INFO    ] 200
[2026-08-25 10:47:07,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:07,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:47:07,747.747 INFO    ] No update needed
[2026-08-25 10:47:07,749.749 INFO    ] Checking for camera pi updates...
[2026-08-25 10:47:07,782.782 INFO    ] 200
[2026-08-25 10:47:07,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:07,830.830 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:47:07,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:47:07,878.878 INFO    ] No camera update needed
[2026-08-25 10:47:07,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:47:07,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:47:07,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:47:07,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:47:09,934.934 INFO    ] ================================================
[2026-08-25 10:47:09,949.949 INFO    ] Launching Daemon at Tue Aug 25 10:47:09 IST 2026
[2026-08-25 10:47:09,961.961 INFO    ] ================================================
[2026-08-25 10:47:10,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:47:10
[2026-08-25 10:47:11,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:47:11,370.370 INFO    ] Initializing speech engine...
[2026-08-25 10:47:11,390.390 INFO    ] 2026-08-25 10:47:11
[2026-08-25 10:47:11,638.638 INFO    ] 2026-08-25 10:47:11
[2026-08-25 10:47:11,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:47:11,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:47:11,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:47:12,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:47:12,101.101 INFO    ] time= 25/08/2026 10:47:12
[2026-08-25 10:47:12,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:47:12,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:47:12,347.347 INFO    ] No existing commands found in stream
[2026-08-25 10:47:17,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:47:17,378.378 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 10:47:18,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:47:18,943.943 INFO    ] Checking for system updates...
[2026-08-25 10:47:18,980.980 INFO    ] 200
[2026-08-25 10:47:18,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:19,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:47:19,038.038 INFO    ] No update needed
[2026-08-25 10:47:19,041.041 INFO    ] Checking for camera pi updates...
[2026-08-25 10:47:19,075.075 INFO    ] 200
[2026-08-25 10:47:19,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:19,119.119 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:47:19,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:47:19,173.173 INFO    ] No camera update needed
[2026-08-25 10:47:19,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:47:19,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:47:19,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:47:19,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:47:21,231.231 INFO    ] ================================================
[2026-08-25 10:47:21,247.247 INFO    ] Launching Daemon at Tue Aug 25 10:47:21 IST 2026
[2026-08-25 10:47:21,258.258 INFO    ] ================================================
[2026-08-25 10:47:21,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:47:21
[2026-08-25 10:47:22,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:47:22,711.711 INFO    ] Initializing speech engine...
[2026-08-25 10:47:22,720.720 INFO    ] 2026-08-25 10:47:22
[2026-08-25 10:47:22,981.981 INFO    ] 2026-08-25 10:47:22
[2026-08-25 10:47:23,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:47:23,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:47:23,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:47:23,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:47:23,456.456 INFO    ] time= 25/08/2026 10:47:23
[2026-08-25 10:47:23,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:47:23,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:47:23,638.638 INFO    ] No existing commands found in stream
[2026-08-25 10:47:28,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:47:28,657.657 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 10:47:29,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:47:29,971.971 INFO    ] Checking for system updates...
[2026-08-25 10:47:30,007.007 INFO    ] 200
[2026-08-25 10:47:30,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:30,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:47:30,067.067 INFO    ] No update needed
[2026-08-25 10:47:30,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 10:47:30,103.103 INFO    ] 200
[2026-08-25 10:47:30,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:30,148.148 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:47:30,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:47:30,206.206 INFO    ] No camera update needed
[2026-08-25 10:47:30,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:47:30,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:47:30,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:47:30,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:47:32,267.267 INFO    ] ================================================
[2026-08-25 10:47:32,284.284 INFO    ] Launching Daemon at Tue Aug 25 10:47:32 IST 2026
[2026-08-25 10:47:32,296.296 INFO    ] ================================================
[2026-08-25 10:47:32,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:47:32
[2026-08-25 10:47:33,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:47:33,771.771 INFO    ] Initializing speech engine...
[2026-08-25 10:47:33,780.780 INFO    ] 2026-08-25 10:47:33
[2026-08-25 10:47:34,042.042 INFO    ] 2026-08-25 10:47:34
[2026-08-25 10:47:34,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:47:34,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:47:34,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:47:34,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:47:34,532.532 INFO    ] time= 25/08/2026 10:47:34
[2026-08-25 10:47:34,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:47:34,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:47:34,730.730 INFO    ] No existing commands found in stream
[2026-08-25 10:47:39,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:47:39,753.753 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 10:47:43,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:47:43,281.281 INFO    ] Checking for system updates...
[2026-08-25 10:47:43,316.316 INFO    ] 200
[2026-08-25 10:47:43,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:43,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:47:43,378.378 INFO    ] No update needed
[2026-08-25 10:47:43,381.381 INFO    ] Checking for camera pi updates...
[2026-08-25 10:47:43,415.415 INFO    ] 200
[2026-08-25 10:47:43,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:43,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:47:43,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:47:43,517.517 INFO    ] No camera update needed
[2026-08-25 10:47:43,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:47:43,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:47:43,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:47:43,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:47:45,575.575 INFO    ] ================================================
[2026-08-25 10:47:45,591.591 INFO    ] Launching Daemon at Tue Aug 25 10:47:45 IST 2026
[2026-08-25 10:47:45,602.602 INFO    ] ================================================
[2026-08-25 10:47:46,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:47:46
[2026-08-25 10:47:46,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:47:47,015.015 INFO    ] Initializing speech engine...
[2026-08-25 10:47:47,022.022 INFO    ] 2026-08-25 10:47:47
[2026-08-25 10:47:47,316.316 INFO    ] 2026-08-25 10:47:47
[2026-08-25 10:47:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:47:47,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:47:47,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:47:47,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:47:47,667.667 INFO    ] time= 25/08/2026 10:47:47
[2026-08-25 10:47:47,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:47:47,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:47:47,818.818 INFO    ] No existing commands found in stream
[2026-08-25 10:47:52,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:47:52,833.833 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 10:47:56,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:47:56,641.641 INFO    ] Checking for system updates...
[2026-08-25 10:47:56,677.677 INFO    ] 200
[2026-08-25 10:47:56,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:56,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:47:56,735.735 INFO    ] No update needed
[2026-08-25 10:47:56,737.737 INFO    ] Checking for camera pi updates...
[2026-08-25 10:47:56,775.775 INFO    ] 200
[2026-08-25 10:47:56,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:47:56,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:47:56,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:47:56,875.875 INFO    ] No camera update needed
[2026-08-25 10:47:56,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:47:56,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:47:56,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:47:56,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:47:58,937.937 INFO    ] ================================================
[2026-08-25 10:47:58,953.953 INFO    ] Launching Daemon at Tue Aug 25 10:47:58 IST 2026
[2026-08-25 10:47:58,964.964 INFO    ] ================================================
[2026-08-25 10:47:59,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:47:59
[2026-08-25 10:48:00,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:48:00,450.450 INFO    ] Initializing speech engine...
[2026-08-25 10:48:00,459.459 INFO    ] 2026-08-25 10:48:00
[2026-08-25 10:48:00,728.728 INFO    ] 2026-08-25 10:48:00
[2026-08-25 10:48:00,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:48:00,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:48:00,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:48:01,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:48:01,140.140 INFO    ] time= 25/08/2026 10:48:01
[2026-08-25 10:48:01,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:48:01,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:48:01,297.297 INFO    ] No existing commands found in stream
[2026-08-25 10:48:06,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:48:06,316.316 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 10:48:08,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:48:08,740.740 INFO    ] Checking for system updates...
[2026-08-25 10:48:08,776.776 INFO    ] 200
[2026-08-25 10:48:08,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:08,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:48:08,837.837 INFO    ] No update needed
[2026-08-25 10:48:08,840.840 INFO    ] Checking for camera pi updates...
[2026-08-25 10:48:08,873.873 INFO    ] 200
[2026-08-25 10:48:08,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:08,920.920 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:48:08,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:48:08,972.972 INFO    ] No camera update needed
[2026-08-25 10:48:08,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:48:08,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:48:08,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:48:08,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:48:11,030.030 INFO    ] ================================================
[2026-08-25 10:48:11,045.045 INFO    ] Launching Daemon at Tue Aug 25 10:48:11 IST 2026
[2026-08-25 10:48:11,056.056 INFO    ] ================================================
[2026-08-25 10:48:11,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:48:11
[2026-08-25 10:48:12,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:48:12,525.525 INFO    ] Initializing speech engine...
[2026-08-25 10:48:12,548.548 INFO    ] 2026-08-25 10:48:12
[2026-08-25 10:48:12,801.801 INFO    ] 2026-08-25 10:48:12
[2026-08-25 10:48:12,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:48:13,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:48:13,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:48:13,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:48:13,277.277 INFO    ] time= 25/08/2026 10:48:13
[2026-08-25 10:48:13,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:48:13,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:48:13,515.515 INFO    ] No existing commands found in stream
[2026-08-25 10:48:18,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:48:18,543.543 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 10:48:22,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:48:22,068.068 INFO    ] Checking for system updates...
[2026-08-25 10:48:22,104.104 INFO    ] 200
[2026-08-25 10:48:22,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:22,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:48:22,171.171 INFO    ] No update needed
[2026-08-25 10:48:22,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 10:48:22,207.207 INFO    ] 200
[2026-08-25 10:48:22,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:22,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:48:22,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:48:22,305.305 INFO    ] No camera update needed
[2026-08-25 10:48:22,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:48:22,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:48:22,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:48:22,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:48:24,359.359 INFO    ] ================================================
[2026-08-25 10:48:24,375.375 INFO    ] Launching Daemon at Tue Aug 25 10:48:24 IST 2026
[2026-08-25 10:48:24,386.386 INFO    ] ================================================
[2026-08-25 10:48:24,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:48:24
[2026-08-25 10:48:25,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:48:25,813.813 INFO    ] Initializing speech engine...
[2026-08-25 10:48:25,819.819 INFO    ] 2026-08-25 10:48:25
[2026-08-25 10:48:26,120.120 INFO    ] 2026-08-25 10:48:26
[2026-08-25 10:48:26,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:48:26,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:48:26,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:48:26,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:48:26,526.526 INFO    ] time= 25/08/2026 10:48:26
[2026-08-25 10:48:26,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:48:26,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:48:26,632.632 INFO    ] No existing commands found in stream
[2026-08-25 10:48:31,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:48:31,640.640 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 10:48:34,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:48:34,031.031 INFO    ] Checking for system updates...
[2026-08-25 10:48:34,066.066 INFO    ] 200
[2026-08-25 10:48:34,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:34,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:48:34,124.124 INFO    ] No update needed
[2026-08-25 10:48:34,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 10:48:34,165.165 INFO    ] 200
[2026-08-25 10:48:34,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:34,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:48:34,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:48:34,252.252 INFO    ] No camera update needed
[2026-08-25 10:48:34,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:48:34,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:48:34,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:48:34,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:48:36,308.308 INFO    ] ================================================
[2026-08-25 10:48:36,324.324 INFO    ] Launching Daemon at Tue Aug 25 10:48:36 IST 2026
[2026-08-25 10:48:36,335.335 INFO    ] ================================================
[2026-08-25 10:48:36,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:48:36
[2026-08-25 10:48:37,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:48:37,807.807 INFO    ] Initializing speech engine...
[2026-08-25 10:48:37,825.825 INFO    ] 2026-08-25 10:48:37
[2026-08-25 10:48:38,089.089 INFO    ] 2026-08-25 10:48:38
[2026-08-25 10:48:38,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:48:38,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:48:38,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:48:38,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:48:38,563.563 INFO    ] time= 25/08/2026 10:48:38
[2026-08-25 10:48:38,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:48:38,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:48:38,761.761 INFO    ] No existing commands found in stream
[2026-08-25 10:48:43,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:48:43,785.785 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 10:48:48,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:48:48,033.033 INFO    ] Checking for system updates...
[2026-08-25 10:48:48,068.068 INFO    ] 200
[2026-08-25 10:48:48,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:48,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:48:48,125.125 INFO    ] No update needed
[2026-08-25 10:48:48,128.128 INFO    ] Checking for camera pi updates...
[2026-08-25 10:48:48,161.161 INFO    ] 200
[2026-08-25 10:48:48,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:48:48,205.205 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:48:48,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:48:48,251.251 INFO    ] No camera update needed
[2026-08-25 10:48:48,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:48:48,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:48:48,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:48:48,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:48:50,306.306 INFO    ] ================================================
[2026-08-25 10:48:50,321.321 INFO    ] Launching Daemon at Tue Aug 25 10:48:50 IST 2026
[2026-08-25 10:48:50,332.332 INFO    ] ================================================
[2026-08-25 10:48:50,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:48:50
[2026-08-25 10:48:51,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:48:51,785.785 INFO    ] Initializing speech engine...
[2026-08-25 10:48:51,795.795 INFO    ] 2026-08-25 10:48:51
[2026-08-25 10:48:52,056.056 INFO    ] 2026-08-25 10:48:52
[2026-08-25 10:48:52,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:48:52,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:48:52,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:48:52,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:48:52,518.518 INFO    ] time= 25/08/2026 10:48:52
[2026-08-25 10:48:52,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:48:52,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:48:52,727.727 INFO    ] No existing commands found in stream
[2026-08-25 10:48:57,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:48:57,760.760 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 10:49:00,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:49:00,822.822 INFO    ] Checking for system updates...
[2026-08-25 10:49:00,863.863 INFO    ] 200
[2026-08-25 10:49:00,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:00,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:49:00,920.920 INFO    ] No update needed
[2026-08-25 10:49:00,923.923 INFO    ] Checking for camera pi updates...
[2026-08-25 10:49:00,956.956 INFO    ] 200
[2026-08-25 10:49:00,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:00,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:49:01,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:49:01,156.156 INFO    ] No camera update needed
[2026-08-25 10:49:01,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:49:01,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:49:01,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:49:01,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:49:03,213.213 INFO    ] ================================================
[2026-08-25 10:49:03,228.228 INFO    ] Launching Daemon at Tue Aug 25 10:49:03 IST 2026
[2026-08-25 10:49:03,239.239 INFO    ] ================================================
[2026-08-25 10:49:03,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:49:03
[2026-08-25 10:49:04,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:49:04,649.649 INFO    ] Initializing speech engine...
[2026-08-25 10:49:04,672.672 INFO    ] 2026-08-25 10:49:04
[2026-08-25 10:49:04,930.930 INFO    ] 2026-08-25 10:49:04
[2026-08-25 10:49:04,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:49:05,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:49:05,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:49:05,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:49:05,399.399 INFO    ] time= 25/08/2026 10:49:05
[2026-08-25 10:49:05,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:49:05,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:49:05,663.663 INFO    ] No existing commands found in stream
[2026-08-25 10:49:10,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:49:10,679.679 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 10:49:14,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:49:14,670.670 INFO    ] Checking for system updates...
[2026-08-25 10:49:14,707.707 INFO    ] 200
[2026-08-25 10:49:14,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:14,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:49:14,773.773 INFO    ] No update needed
[2026-08-25 10:49:14,776.776 INFO    ] Checking for camera pi updates...
[2026-08-25 10:49:14,818.818 INFO    ] 200
[2026-08-25 10:49:14,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:14,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:49:14,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:49:14,933.933 INFO    ] No camera update needed
[2026-08-25 10:49:14,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:49:14,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:49:14,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:49:14,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:49:16,992.992 INFO    ] ================================================
[2026-08-25 10:49:17,007.007 INFO    ] Launching Daemon at Tue Aug 25 10:49:17 IST 2026
[2026-08-25 10:49:17,018.018 INFO    ] ================================================
[2026-08-25 10:49:17,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:49:17
[2026-08-25 10:49:18,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:49:18,791.791 INFO    ] Initializing speech engine...
[2026-08-25 10:49:18,800.800 INFO    ] 2026-08-25 10:49:18
[2026-08-25 10:49:19,095.095 INFO    ] 2026-08-25 10:49:19
[2026-08-25 10:49:19,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:49:19,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:49:19,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:49:19,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:49:19,483.483 INFO    ] time= 25/08/2026 10:49:19
[2026-08-25 10:49:19,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:49:19,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:49:19,609.609 INFO    ] No existing commands found in stream
[2026-08-25 10:49:24,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:49:24,625.625 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 10:49:26,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:49:26,050.050 INFO    ] Checking for system updates...
[2026-08-25 10:49:26,086.086 INFO    ] 200
[2026-08-25 10:49:26,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:26,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:49:26,144.144 INFO    ] No update needed
[2026-08-25 10:49:26,147.147 INFO    ] Checking for camera pi updates...
[2026-08-25 10:49:26,184.184 INFO    ] 200
[2026-08-25 10:49:26,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:26,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:49:26,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:49:26,272.272 INFO    ] No camera update needed
[2026-08-25 10:49:26,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:49:26,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:49:26,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:49:26,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:49:28,329.329 INFO    ] ================================================
[2026-08-25 10:49:28,344.344 INFO    ] Launching Daemon at Tue Aug 25 10:49:28 IST 2026
[2026-08-25 10:49:28,355.355 INFO    ] ================================================
[2026-08-25 10:49:28,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:49:28
[2026-08-25 10:49:29,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:49:29,783.783 INFO    ] Initializing speech engine...
[2026-08-25 10:49:29,792.792 INFO    ] 2026-08-25 10:49:29
[2026-08-25 10:49:30,043.043 INFO    ] 2026-08-25 10:49:30
[2026-08-25 10:49:30,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:49:30,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:49:30,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:49:30,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:49:30,516.516 INFO    ] time= 25/08/2026 10:49:30
[2026-08-25 10:49:30,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:49:30,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:49:30,729.729 INFO    ] No existing commands found in stream
[2026-08-25 10:49:35,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:49:35,754.754 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 10:49:39,539.539 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:49:39,541.541 INFO    ] Checking for system updates...
[2026-08-25 10:49:39,576.576 INFO    ] 200
[2026-08-25 10:49:39,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:39,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:49:39,641.641 INFO    ] No update needed
[2026-08-25 10:49:39,643.643 INFO    ] Checking for camera pi updates...
[2026-08-25 10:49:39,677.677 INFO    ] 200
[2026-08-25 10:49:39,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:39,725.725 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:49:39,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:49:39,772.772 INFO    ] No camera update needed
[2026-08-25 10:49:39,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:49:39,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:49:39,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:49:39,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:49:41,827.827 INFO    ] ================================================
[2026-08-25 10:49:41,843.843 INFO    ] Launching Daemon at Tue Aug 25 10:49:41 IST 2026
[2026-08-25 10:49:41,853.853 INFO    ] ================================================
[2026-08-25 10:49:42,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:49:42
[2026-08-25 10:49:43,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:49:43,260.260 INFO    ] Initializing speech engine...
[2026-08-25 10:49:43,268.268 INFO    ] 2026-08-25 10:49:43
[2026-08-25 10:49:43,544.544 INFO    ] 2026-08-25 10:49:43
[2026-08-25 10:49:43,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:49:43,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:49:43,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:49:43,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:49:43,940.940 INFO    ] time= 25/08/2026 10:49:43
[2026-08-25 10:49:43,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:49:44,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:49:44,141.141 INFO    ] No existing commands found in stream
[2026-08-25 10:49:49,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:49:49,155.155 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 10:49:52,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:49:52,392.392 INFO    ] Checking for system updates...
[2026-08-25 10:49:52,427.427 INFO    ] 200
[2026-08-25 10:49:52,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:52,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:49:52,486.486 INFO    ] No update needed
[2026-08-25 10:49:52,488.488 INFO    ] Checking for camera pi updates...
[2026-08-25 10:49:52,521.521 INFO    ] 200
[2026-08-25 10:49:52,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:49:52,569.569 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:49:52,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:49:52,627.627 INFO    ] No camera update needed
[2026-08-25 10:49:52,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:49:52,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:49:52,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:49:52,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:49:54,681.681 INFO    ] ================================================
[2026-08-25 10:49:54,697.697 INFO    ] Launching Daemon at Tue Aug 25 10:49:54 IST 2026
[2026-08-25 10:49:54,708.708 INFO    ] ================================================
[2026-08-25 10:49:55,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:49:55
[2026-08-25 10:49:56,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:49:56,331.331 INFO    ] Initializing speech engine...
[2026-08-25 10:49:56,340.340 INFO    ] 2026-08-25 10:49:56
[2026-08-25 10:49:56,650.650 INFO    ] 2026-08-25 10:49:56
[2026-08-25 10:49:56,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:49:56,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:49:56,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:49:57,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:49:57,158.158 INFO    ] time= 25/08/2026 10:49:57
[2026-08-25 10:49:57,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:49:57,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:49:57,302.302 INFO    ] No existing commands found in stream
[2026-08-25 10:50:02,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:50:02,324.324 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 10:50:07,541.541 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:50:07,544.544 INFO    ] Checking for system updates...
[2026-08-25 10:50:07,580.580 INFO    ] 200
[2026-08-25 10:50:07,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:07,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:07,640.640 INFO    ] No update needed
[2026-08-25 10:50:07,643.643 INFO    ] Checking for camera pi updates...
[2026-08-25 10:50:07,679.679 INFO    ] 200
[2026-08-25 10:50:07,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:07,726.726 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:50:07,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:07,789.789 INFO    ] No camera update needed
[2026-08-25 10:50:07,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:50:07,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:50:07,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:50:07,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:50:09,844.844 INFO    ] ================================================
[2026-08-25 10:50:09,859.859 INFO    ] Launching Daemon at Tue Aug 25 10:50:09 IST 2026
[2026-08-25 10:50:09,870.870 INFO    ] ================================================
[2026-08-25 10:50:10,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:50:10
[2026-08-25 10:50:11,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:50:11,270.270 INFO    ] Initializing speech engine...
[2026-08-25 10:50:11,284.284 INFO    ] 2026-08-25 10:50:11
[2026-08-25 10:50:11,561.561 INFO    ] 2026-08-25 10:50:11
[2026-08-25 10:50:11,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:50:11,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:50:11,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:50:11,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:50:12,013.013 INFO    ] time= 25/08/2026 10:50:11
[2026-08-25 10:50:12,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:50:12,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:50:12,267.267 INFO    ] No existing commands found in stream
[2026-08-25 10:50:17,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:50:17,286.286 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 10:50:19,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:50:19,249.249 INFO    ] Checking for system updates...
[2026-08-25 10:50:19,287.287 INFO    ] 200
[2026-08-25 10:50:19,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:19,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:19,343.343 INFO    ] No update needed
[2026-08-25 10:50:19,346.346 INFO    ] Checking for camera pi updates...
[2026-08-25 10:50:19,382.382 INFO    ] 200
[2026-08-25 10:50:19,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:19,427.427 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:50:19,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:19,477.477 INFO    ] No camera update needed
[2026-08-25 10:50:19,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:50:19,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:50:19,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:50:19,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:50:21,532.532 INFO    ] ================================================
[2026-08-25 10:50:21,547.547 INFO    ] Launching Daemon at Tue Aug 25 10:50:21 IST 2026
[2026-08-25 10:50:21,558.558 INFO    ] ================================================
[2026-08-25 10:50:22,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:50:22
[2026-08-25 10:50:22,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:50:23,080.080 INFO    ] Initializing speech engine...
[2026-08-25 10:50:23,089.089 INFO    ] 2026-08-25 10:50:23
[2026-08-25 10:50:23,349.349 INFO    ] 2026-08-25 10:50:23
[2026-08-25 10:50:23,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:50:23,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:50:23,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:50:23,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:50:23,857.857 INFO    ] time= 25/08/2026 10:50:23
[2026-08-25 10:50:23,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:50:23,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:50:24,051.051 INFO    ] No existing commands found in stream
[2026-08-25 10:50:29,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:50:29,067.067 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 10:50:31,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:50:31,511.511 INFO    ] Checking for system updates...
[2026-08-25 10:50:31,552.552 INFO    ] 200
[2026-08-25 10:50:31,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:31,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:31,630.630 INFO    ] No update needed
[2026-08-25 10:50:31,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 10:50:31,671.671 INFO    ] 200
[2026-08-25 10:50:31,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:31,722.722 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:50:31,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:31,775.775 INFO    ] No camera update needed
[2026-08-25 10:50:31,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:50:31,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:50:31,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:50:31,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:50:33,834.834 INFO    ] ================================================
[2026-08-25 10:50:33,849.849 INFO    ] Launching Daemon at Tue Aug 25 10:50:33 IST 2026
[2026-08-25 10:50:33,860.860 INFO    ] ================================================
[2026-08-25 10:50:34,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:50:34
[2026-08-25 10:50:35,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:50:35,275.275 INFO    ] Initializing speech engine...
[2026-08-25 10:50:35,284.284 INFO    ] 2026-08-25 10:50:35
[2026-08-25 10:50:35,536.536 INFO    ] 2026-08-25 10:50:35
[2026-08-25 10:50:35,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:50:35,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:50:35,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:50:35,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:50:35,993.993 INFO    ] time= 25/08/2026 10:50:35
[2026-08-25 10:50:36,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:50:36,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:50:36,235.235 INFO    ] No existing commands found in stream
[2026-08-25 10:50:41,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:50:41,252.252 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 10:50:44,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:50:44,182.182 INFO    ] Checking for system updates...
[2026-08-25 10:50:44,217.217 INFO    ] 200
[2026-08-25 10:50:44,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:44,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:44,275.275 INFO    ] No update needed
[2026-08-25 10:50:44,277.277 INFO    ] Checking for camera pi updates...
[2026-08-25 10:50:44,314.314 INFO    ] 200
[2026-08-25 10:50:44,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:44,357.357 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:50:44,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:50:44,413.413 INFO    ] No camera update needed
[2026-08-25 10:50:44,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:50:44,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:50:44,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:50:44,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:50:46,468.468 INFO    ] ================================================
[2026-08-25 10:50:46,483.483 INFO    ] Launching Daemon at Tue Aug 25 10:50:46 IST 2026
[2026-08-25 10:50:46,494.494 INFO    ] ================================================
[2026-08-25 10:50:47,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:50:47
[2026-08-25 10:50:47,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:50:47,946.946 INFO    ] Initializing speech engine...
[2026-08-25 10:50:47,952.952 INFO    ] 2026-08-25 10:50:47
[2026-08-25 10:50:48,214.214 INFO    ] 2026-08-25 10:50:48
[2026-08-25 10:50:48,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:50:48,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:50:48,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:50:48,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:50:48,689.689 INFO    ] time= 25/08/2026 10:50:48
[2026-08-25 10:50:48,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:50:48,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:50:48,898.898 INFO    ] No existing commands found in stream
[2026-08-25 10:50:53,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:50:53,927.927 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 10:50:55,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:50:55,671.671 INFO    ] Checking for system updates...
[2026-08-25 10:50:55,706.706 INFO    ] 200
[2026-08-25 10:50:55,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:55,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:50:55,779.779 INFO    ] No update needed
[2026-08-25 10:50:55,781.781 INFO    ] Checking for camera pi updates...
[2026-08-25 10:50:55,817.817 INFO    ] 200
[2026-08-25 10:50:55,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:50:55,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:50:55,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:50:55,914.914 INFO    ] No camera update needed
[2026-08-25 10:50:55,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:50:55,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:50:55,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:50:55,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:50:57,970.970 INFO    ] ================================================
[2026-08-25 10:50:57,985.985 INFO    ] Launching Daemon at Tue Aug 25 10:50:57 IST 2026
[2026-08-25 10:50:58,996.996 INFO    ] ================================================
[2026-08-25 10:50:58,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:50:58
[2026-08-25 10:50:59,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:50:59,483.483 INFO    ] Initializing speech engine...
[2026-08-25 10:50:59,491.491 INFO    ] 2026-08-25 10:50:59
[2026-08-25 10:50:59,784.784 INFO    ] 2026-08-25 10:50:59
[2026-08-25 10:50:59,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:51:00,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:51:00,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:51:00,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:51:00,194.194 INFO    ] time= 25/08/2026 10:51:00
[2026-08-25 10:51:00,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:51:00,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:51:00,369.369 INFO    ] No existing commands found in stream
[2026-08-25 10:51:05,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:51:05,402.402 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 10:51:05,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:51:05,992.992 INFO    ] Checking for system updates...
[2026-08-25 10:51:06,029.029 INFO    ] 200
[2026-08-25 10:51:06,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:06,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:51:06,093.093 INFO    ] No update needed
[2026-08-25 10:51:06,096.096 INFO    ] Checking for camera pi updates...
[2026-08-25 10:51:06,133.133 INFO    ] 200
[2026-08-25 10:51:06,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:06,181.181 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:51:06,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:51:06,242.242 INFO    ] No camera update needed
[2026-08-25 10:51:06,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:51:06,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:51:06,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:51:06,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:51:08,300.300 INFO    ] ================================================
[2026-08-25 10:51:08,315.315 INFO    ] Launching Daemon at Tue Aug 25 10:51:08 IST 2026
[2026-08-25 10:51:08,326.326 INFO    ] ================================================
[2026-08-25 10:51:08,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:51:08
[2026-08-25 10:51:09,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:51:09,878.878 INFO    ] Initializing speech engine...
[2026-08-25 10:51:09,891.891 INFO    ] 2026-08-25 10:51:09
[2026-08-25 10:51:10,197.197 INFO    ] 2026-08-25 10:51:10
[2026-08-25 10:51:10,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:51:10,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:51:10,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:51:10,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:51:10,700.700 INFO    ] time= 25/08/2026 10:51:10
[2026-08-25 10:51:10,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:51:10,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:51:10,852.852 INFO    ] No existing commands found in stream
[2026-08-25 10:51:15,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:51:15,869.869 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 10:51:19,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:51:19,493.493 INFO    ] Checking for system updates...
[2026-08-25 10:51:19,530.530 INFO    ] 200
[2026-08-25 10:51:19,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:19,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:51:19,592.592 INFO    ] No update needed
[2026-08-25 10:51:19,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 10:51:19,630.630 INFO    ] 200
[2026-08-25 10:51:19,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:19,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:51:19,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:51:19,831.831 INFO    ] No camera update needed
[2026-08-25 10:51:19,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:51:19,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:51:19,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:51:19,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:51:21,886.886 INFO    ] ================================================
[2026-08-25 10:51:21,901.901 INFO    ] Launching Daemon at Tue Aug 25 10:51:21 IST 2026
[2026-08-25 10:51:21,912.912 INFO    ] ================================================
[2026-08-25 10:51:22,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:51:22
[2026-08-25 10:51:23,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:51:23,353.353 INFO    ] Initializing speech engine...
[2026-08-25 10:51:23,362.362 INFO    ] 2026-08-25 10:51:23
[2026-08-25 10:51:23,623.623 INFO    ] 2026-08-25 10:51:23
[2026-08-25 10:51:23,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:51:23,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:51:23,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:51:24,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:51:24,166.166 INFO    ] time= 25/08/2026 10:51:24
[2026-08-25 10:51:24,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:51:24,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:51:24,318.318 INFO    ] No existing commands found in stream
[2026-08-25 10:51:29,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:51:29,335.335 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 10:51:30,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:51:30,233.233 INFO    ] Checking for system updates...
[2026-08-25 10:51:30,271.271 INFO    ] 200
[2026-08-25 10:51:30,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:30,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:51:30,332.332 INFO    ] No update needed
[2026-08-25 10:51:30,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 10:51:30,371.371 INFO    ] 200
[2026-08-25 10:51:30,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:30,414.414 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:51:30,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:51:30,471.471 INFO    ] No camera update needed
[2026-08-25 10:51:30,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:51:30,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:51:30,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:51:30,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:51:32,528.528 INFO    ] ================================================
[2026-08-25 10:51:32,546.546 INFO    ] Launching Daemon at Tue Aug 25 10:51:32 IST 2026
[2026-08-25 10:51:32,557.557 INFO    ] ================================================
[2026-08-25 10:51:33,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:51:33
[2026-08-25 10:51:33,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:51:34,046.046 INFO    ] Initializing speech engine...
[2026-08-25 10:51:34,051.051 INFO    ] 2026-08-25 10:51:34
[2026-08-25 10:51:34,326.326 INFO    ] 2026-08-25 10:51:34
[2026-08-25 10:51:34,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:51:34,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:51:34,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:51:34,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:51:34,793.793 INFO    ] time= 25/08/2026 10:51:34
[2026-08-25 10:51:34,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:51:34,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:51:35,008.008 INFO    ] No existing commands found in stream
[2026-08-25 10:51:40,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:51:40,027.027 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 10:51:43,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:51:43,692.692 INFO    ] Checking for system updates...
[2026-08-25 10:51:43,727.727 INFO    ] 200
[2026-08-25 10:51:43,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:43,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:51:43,785.785 INFO    ] No update needed
[2026-08-25 10:51:43,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 10:51:43,821.821 INFO    ] 200
[2026-08-25 10:51:43,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:43,874.874 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:51:43,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:51:43,921.921 INFO    ] No camera update needed
[2026-08-25 10:51:43,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:51:43,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:51:43,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:51:43,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:51:45,976.976 INFO    ] ================================================
[2026-08-25 10:51:45,992.992 INFO    ] Launching Daemon at Tue Aug 25 10:51:45 IST 2026
[2026-08-25 10:51:46,003.003 INFO    ] ================================================
[2026-08-25 10:51:46,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:51:46
[2026-08-25 10:51:47,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:51:47,416.416 INFO    ] Initializing speech engine...
[2026-08-25 10:51:47,435.435 INFO    ] 2026-08-25 10:51:47
[2026-08-25 10:51:47,695.695 INFO    ] 2026-08-25 10:51:47
[2026-08-25 10:51:47,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:51:47,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:51:47,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:51:48,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:51:48,097.097 INFO    ] time= 25/08/2026 10:51:48
[2026-08-25 10:51:48,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:51:48,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:51:48,294.294 INFO    ] No existing commands found in stream
[2026-08-25 10:51:53,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:51:53,308.308 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 10:51:55,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:51:55,444.444 INFO    ] Checking for system updates...
[2026-08-25 10:51:55,481.481 INFO    ] 200
[2026-08-25 10:51:55,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:55,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:51:55,538.538 INFO    ] No update needed
[2026-08-25 10:51:55,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 10:51:55,573.573 INFO    ] 200
[2026-08-25 10:51:55,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:51:55,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:51:55,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:51:55,676.676 INFO    ] No camera update needed
[2026-08-25 10:51:55,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:51:55,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:51:55,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:51:55,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:51:57,729.729 INFO    ] ================================================
[2026-08-25 10:51:57,745.745 INFO    ] Launching Daemon at Tue Aug 25 10:51:57 IST 2026
[2026-08-25 10:51:57,756.756 INFO    ] ================================================
[2026-08-25 10:51:58,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:51:58
[2026-08-25 10:51:59,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:51:59,319.319 INFO    ] Initializing speech engine...
[2026-08-25 10:51:59,326.326 INFO    ] 2026-08-25 10:51:59
[2026-08-25 10:51:59,639.639 INFO    ] 2026-08-25 10:51:59
[2026-08-25 10:51:59,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:51:59,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:51:59,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:52:00,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:52:00,141.141 INFO    ] time= 25/08/2026 10:52:00
[2026-08-25 10:52:00,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:52:00,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:52:00,338.338 INFO    ] No existing commands found in stream
[2026-08-25 10:52:05,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:52:05,367.367 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 10:52:08,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:52:08,384.384 INFO    ] Checking for system updates...
[2026-08-25 10:52:08,427.427 INFO    ] 200
[2026-08-25 10:52:08,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:08,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:08,495.495 INFO    ] No update needed
[2026-08-25 10:52:08,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 10:52:08,533.533 INFO    ] 200
[2026-08-25 10:52:08,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:08,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:52:08,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:08,636.636 INFO    ] No camera update needed
[2026-08-25 10:52:08,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:52:08,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:52:08,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:52:08,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:52:10,691.691 INFO    ] ================================================
[2026-08-25 10:52:10,707.707 INFO    ] Launching Daemon at Tue Aug 25 10:52:10 IST 2026
[2026-08-25 10:52:10,718.718 INFO    ] ================================================
[2026-08-25 10:52:11,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:52:11
[2026-08-25 10:52:11,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:52:12,142.142 INFO    ] Initializing speech engine...
[2026-08-25 10:52:12,151.151 INFO    ] 2026-08-25 10:52:12
[2026-08-25 10:52:12,399.399 INFO    ] 2026-08-25 10:52:12
[2026-08-25 10:52:12,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:52:12,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:52:12,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:52:12,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:52:12,896.896 INFO    ] time= 25/08/2026 10:52:12
[2026-08-25 10:52:12,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:52:12,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:52:13,095.095 INFO    ] No existing commands found in stream
[2026-08-25 10:52:18,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:52:18,125.125 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 10:52:19,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:52:19,425.425 INFO    ] Checking for system updates...
[2026-08-25 10:52:19,466.466 INFO    ] 200
[2026-08-25 10:52:19,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:19,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:52:19,523.523 INFO    ] No update needed
[2026-08-25 10:52:19,526.526 INFO    ] Checking for camera pi updates...
[2026-08-25 10:52:19,560.560 INFO    ] 200
[2026-08-25 10:52:19,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:19,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:52:19,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:52:19,650.650 INFO    ] No camera update needed
[2026-08-25 10:52:19,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:52:19,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:52:19,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:52:19,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:52:21,705.705 INFO    ] ================================================
[2026-08-25 10:52:21,721.721 INFO    ] Launching Daemon at Tue Aug 25 10:52:21 IST 2026
[2026-08-25 10:52:21,733.733 INFO    ] ================================================
[2026-08-25 10:52:22,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:52:22
[2026-08-25 10:52:22,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:52:23,245.245 INFO    ] Initializing speech engine...
[2026-08-25 10:52:23,252.252 INFO    ] 2026-08-25 10:52:23
[2026-08-25 10:52:23,555.555 INFO    ] 2026-08-25 10:52:23
[2026-08-25 10:52:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:52:23,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:52:23,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:52:23,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:52:23,979.979 INFO    ] time= 25/08/2026 10:52:23
[2026-08-25 10:52:23,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:52:23,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:52:24,060.060 INFO    ] No existing commands found in stream
[2026-08-25 10:52:29,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:52:29,098.098 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 10:52:32,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:52:32,611.611 INFO    ] Checking for system updates...
[2026-08-25 10:52:32,656.656 INFO    ] 200
[2026-08-25 10:52:32,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:32,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:32,722.722 INFO    ] No update needed
[2026-08-25 10:52:32,726.726 INFO    ] Checking for camera pi updates...
[2026-08-25 10:52:32,774.774 INFO    ] 200
[2026-08-25 10:52:32,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:32,827.827 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:52:32,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:32,894.894 INFO    ] No camera update needed
[2026-08-25 10:52:32,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:52:32,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:52:32,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:52:32,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:52:34,966.966 INFO    ] ================================================
[2026-08-25 10:52:34,982.982 INFO    ] Launching Daemon at Tue Aug 25 10:52:34 IST 2026
[2026-08-25 10:52:34,993.993 INFO    ] ================================================
[2026-08-25 10:52:35,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:52:35
[2026-08-25 10:52:36,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:52:36,472.472 INFO    ] Initializing speech engine...
[2026-08-25 10:52:36,477.477 INFO    ] 2026-08-25 10:52:36
[2026-08-25 10:52:36,738.738 INFO    ] 2026-08-25 10:52:36
[2026-08-25 10:52:36,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:52:37,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:52:37,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:52:37,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:52:37,229.229 INFO    ] time= 25/08/2026 10:52:37
[2026-08-25 10:52:37,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:52:37,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:52:37,438.438 INFO    ] No existing commands found in stream
[2026-08-25 10:52:42,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:52:42,461.461 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 10:52:46,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:52:46,156.156 INFO    ] Checking for system updates...
[2026-08-25 10:52:46,193.193 INFO    ] 200
[2026-08-25 10:52:46,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:46,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:46,260.260 INFO    ] No update needed
[2026-08-25 10:52:46,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 10:52:46,301.301 INFO    ] 200
[2026-08-25 10:52:46,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:46,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:52:46,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:46,396.396 INFO    ] No camera update needed
[2026-08-25 10:52:46,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:52:46,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:52:46,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:52:46,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:52:48,456.456 INFO    ] ================================================
[2026-08-25 10:52:48,472.472 INFO    ] Launching Daemon at Tue Aug 25 10:52:48 IST 2026
[2026-08-25 10:52:48,483.483 INFO    ] ================================================
[2026-08-25 10:52:49,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:52:49
[2026-08-25 10:52:49,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:52:49,878.878 INFO    ] Initializing speech engine...
[2026-08-25 10:52:49,902.902 INFO    ] 2026-08-25 10:52:49
[2026-08-25 10:52:50,159.159 INFO    ] 2026-08-25 10:52:50
[2026-08-25 10:52:50,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:52:50,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:52:50,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:52:50,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:52:50,722.722 INFO    ] time= 25/08/2026 10:52:50
[2026-08-25 10:52:50,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:52:50,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:52:50,884.884 INFO    ] No existing commands found in stream
[2026-08-25 10:52:55,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:52:55,906.906 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 10:52:57,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:52:57,679.679 INFO    ] Checking for system updates...
[2026-08-25 10:52:57,715.715 INFO    ] 200
[2026-08-25 10:52:57,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:57,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:57,783.783 INFO    ] No update needed
[2026-08-25 10:52:57,785.785 INFO    ] Checking for camera pi updates...
[2026-08-25 10:52:57,824.824 INFO    ] 200
[2026-08-25 10:52:57,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:52:57,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:52:57,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:52:57,930.930 INFO    ] No camera update needed
[2026-08-25 10:52:57,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:52:57,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:52:57,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:52:57,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:52:59,989.989 INFO    ] ================================================
[2026-08-25 10:53:00,005.005 INFO    ] Launching Daemon at Tue Aug 25 10:52:59 IST 2026
[2026-08-25 10:53:00,016.016 INFO    ] ================================================
[2026-08-25 10:53:00,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:53:00
[2026-08-25 10:53:01,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:53:01,430.430 INFO    ] Initializing speech engine...
[2026-08-25 10:53:01,441.441 INFO    ] 2026-08-25 10:53:01
[2026-08-25 10:53:01,701.701 INFO    ] 2026-08-25 10:53:01
[2026-08-25 10:53:01,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:53:02,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:53:02,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:53:02,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:53:02,207.207 INFO    ] time= 25/08/2026 10:53:02
[2026-08-25 10:53:02,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:53:02,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:53:02,331.331 INFO    ] No existing commands found in stream
[2026-08-25 10:53:07,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:53:07,360.360 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 10:53:07,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:53:07,986.986 INFO    ] Checking for system updates...
[2026-08-25 10:53:08,021.021 INFO    ] 200
[2026-08-25 10:53:08,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:08,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:08,087.087 INFO    ] No update needed
[2026-08-25 10:53:08,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 10:53:08,123.123 INFO    ] 200
[2026-08-25 10:53:08,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:08,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:53:08,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:08,216.216 INFO    ] No camera update needed
[2026-08-25 10:53:08,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:53:08,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:53:08,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:53:08,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:53:10,272.272 INFO    ] ================================================
[2026-08-25 10:53:10,287.287 INFO    ] Launching Daemon at Tue Aug 25 10:53:10 IST 2026
[2026-08-25 10:53:10,298.298 INFO    ] ================================================
[2026-08-25 10:53:10,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:53:10
[2026-08-25 10:53:11,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:53:11,928.928 INFO    ] Initializing speech engine...
[2026-08-25 10:53:11,938.938 INFO    ] 2026-08-25 10:53:11
[2026-08-25 10:53:12,229.229 INFO    ] 2026-08-25 10:53:12
[2026-08-25 10:53:12,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:53:12,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:53:12,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:53:12,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:53:12,720.720 INFO    ] time= 25/08/2026 10:53:12
[2026-08-25 10:53:12,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:53:12,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:53:12,944.944 INFO    ] No existing commands found in stream
[2026-08-25 10:53:17,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:53:17,979.979 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 10:53:20,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:53:20,698.698 INFO    ] Checking for system updates...
[2026-08-25 10:53:20,738.738 INFO    ] 200
[2026-08-25 10:53:20,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:20,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:20,802.802 INFO    ] No update needed
[2026-08-25 10:53:20,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 10:53:20,840.840 INFO    ] 200
[2026-08-25 10:53:20,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:20,905.905 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:53:20,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:20,958.958 INFO    ] No camera update needed
[2026-08-25 10:53:20,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:53:20,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:53:20,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:53:20,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:53:23,018.018 INFO    ] ================================================
[2026-08-25 10:53:23,033.033 INFO    ] Launching Daemon at Tue Aug 25 10:53:23 IST 2026
[2026-08-25 10:53:23,044.044 INFO    ] ================================================
[2026-08-25 10:53:23,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:53:23
[2026-08-25 10:53:24,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:53:24,486.486 INFO    ] Initializing speech engine...
[2026-08-25 10:53:24,502.502 INFO    ] 2026-08-25 10:53:24
[2026-08-25 10:53:24,793.793 INFO    ] 2026-08-25 10:53:24
[2026-08-25 10:53:24,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:53:24,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:53:24,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:53:25,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:53:25,167.167 INFO    ] time= 25/08/2026 10:53:25
[2026-08-25 10:53:25,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:53:25,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:53:25,330.330 INFO    ] No existing commands found in stream
[2026-08-25 10:53:30,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:53:30,344.344 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 10:53:33,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:53:33,840.840 INFO    ] Checking for system updates...
[2026-08-25 10:53:33,879.879 INFO    ] 200
[2026-08-25 10:53:33,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:33,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:33,939.939 INFO    ] No update needed
[2026-08-25 10:53:33,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 10:53:33,978.978 INFO    ] 200
[2026-08-25 10:53:33,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:34,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:53:34,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:34,090.090 INFO    ] No camera update needed
[2026-08-25 10:53:34,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:53:34,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:53:34,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:53:34,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:53:36,151.151 INFO    ] ================================================
[2026-08-25 10:53:36,168.168 INFO    ] Launching Daemon at Tue Aug 25 10:53:36 IST 2026
[2026-08-25 10:53:36,180.180 INFO    ] ================================================
[2026-08-25 10:53:36,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:53:36
[2026-08-25 10:53:37,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:53:37,662.662 INFO    ] Initializing speech engine...
[2026-08-25 10:53:37,681.681 INFO    ] 2026-08-25 10:53:37
[2026-08-25 10:53:37,941.941 INFO    ] 2026-08-25 10:53:37
[2026-08-25 10:53:37,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:53:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:53:38,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:53:38,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:53:38,312.312 INFO    ] time= 25/08/2026 10:53:38
[2026-08-25 10:53:38,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:53:38,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:53:38,486.486 INFO    ] No existing commands found in stream
[2026-08-25 10:53:43,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:53:43,516.516 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 10:53:44,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:53:44,426.426 INFO    ] Checking for system updates...
[2026-08-25 10:53:44,466.466 INFO    ] 200
[2026-08-25 10:53:44,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:44,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:44,529.529 INFO    ] No update needed
[2026-08-25 10:53:44,532.532 INFO    ] Checking for camera pi updates...
[2026-08-25 10:53:44,566.566 INFO    ] 200
[2026-08-25 10:53:44,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:44,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:53:44,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:44,671.671 INFO    ] No camera update needed
[2026-08-25 10:53:44,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:53:44,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:53:44,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:53:44,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:53:46,728.728 INFO    ] ================================================
[2026-08-25 10:53:46,744.744 INFO    ] Launching Daemon at Tue Aug 25 10:53:46 IST 2026
[2026-08-25 10:53:46,755.755 INFO    ] ================================================
[2026-08-25 10:53:47,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:53:47
[2026-08-25 10:53:48,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:53:48,379.379 INFO    ] Initializing speech engine...
[2026-08-25 10:53:48,385.385 INFO    ] 2026-08-25 10:53:48
[2026-08-25 10:53:48,669.669 INFO    ] 2026-08-25 10:53:48
[2026-08-25 10:53:48,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:53:48,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:53:48,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:53:49,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:53:49,198.198 INFO    ] time= 25/08/2026 10:53:49
[2026-08-25 10:53:49,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:53:49,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:53:49,363.363 INFO    ] No existing commands found in stream
[2026-08-25 10:53:54,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:53:54,391.391 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 10:53:58,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:53:58,209.209 INFO    ] Checking for system updates...
[2026-08-25 10:53:58,246.246 INFO    ] 200
[2026-08-25 10:53:58,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:58,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:58,306.306 INFO    ] No update needed
[2026-08-25 10:53:58,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 10:53:58,343.343 INFO    ] 200
[2026-08-25 10:53:58,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:53:58,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:53:58,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:53:58,438.438 INFO    ] No camera update needed
[2026-08-25 10:53:58,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:53:58,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:53:58,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:53:58,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:54:00,496.496 INFO    ] ================================================
[2026-08-25 10:54:00,511.511 INFO    ] Launching Daemon at Tue Aug 25 10:54:00 IST 2026
[2026-08-25 10:54:00,522.522 INFO    ] ================================================
[2026-08-25 10:54:01,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:54:01
[2026-08-25 10:54:01,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:54:02,245.245 INFO    ] Initializing speech engine...
[2026-08-25 10:54:02,255.255 INFO    ] 2026-08-25 10:54:02
[2026-08-25 10:54:02,574.574 INFO    ] 2026-08-25 10:54:02
[2026-08-25 10:54:02,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:54:02,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:54:02,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:54:02,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:54:03,018.018 INFO    ] time= 25/08/2026 10:54:02
[2026-08-25 10:54:03,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:54:03,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:54:03,253.253 INFO    ] No existing commands found in stream
[2026-08-25 10:54:08,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:54:08,306.306 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 10:54:12,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:54:12,582.582 INFO    ] Checking for system updates...
[2026-08-25 10:54:12,618.618 INFO    ] 200
[2026-08-25 10:54:12,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:12,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:54:12,676.676 INFO    ] No update needed
[2026-08-25 10:54:12,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 10:54:12,712.712 INFO    ] 200
[2026-08-25 10:54:12,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:12,758.758 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:54:12,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:54:12,815.815 INFO    ] No camera update needed
[2026-08-25 10:54:12,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:54:12,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:54:12,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:54:12,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:54:14,872.872 INFO    ] ================================================
[2026-08-25 10:54:14,887.887 INFO    ] Launching Daemon at Tue Aug 25 10:54:14 IST 2026
[2026-08-25 10:54:14,898.898 INFO    ] ================================================
[2026-08-25 10:54:15,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:54:15
[2026-08-25 10:54:16,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:54:16,293.293 INFO    ] Initializing speech engine...
[2026-08-25 10:54:16,301.301 INFO    ] 2026-08-25 10:54:16
[2026-08-25 10:54:16,581.581 INFO    ] 2026-08-25 10:54:16
[2026-08-25 10:54:16,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:54:16,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:54:16,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:54:16,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:54:16,961.961 INFO    ] time= 25/08/2026 10:54:16
[2026-08-25 10:54:16,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:54:17,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:54:17,134.134 INFO    ] No existing commands found in stream
[2026-08-25 10:54:22,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:54:22,167.167 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 10:54:26,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:54:26,305.305 INFO    ] Checking for system updates...
[2026-08-25 10:54:26,340.340 INFO    ] 200
[2026-08-25 10:54:26,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:26,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:54:26,399.399 INFO    ] No update needed
[2026-08-25 10:54:26,401.401 INFO    ] Checking for camera pi updates...
[2026-08-25 10:54:26,435.435 INFO    ] 200
[2026-08-25 10:54:26,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:26,478.478 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:54:26,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:54:26,528.528 INFO    ] No camera update needed
[2026-08-25 10:54:26,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:54:26,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:54:26,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:54:26,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:54:28,583.583 INFO    ] ================================================
[2026-08-25 10:54:28,598.598 INFO    ] Launching Daemon at Tue Aug 25 10:54:28 IST 2026
[2026-08-25 10:54:28,609.609 INFO    ] ================================================
[2026-08-25 10:54:29,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:54:29
[2026-08-25 10:54:29,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:54:30,013.013 INFO    ] Initializing speech engine...
[2026-08-25 10:54:30,019.019 INFO    ] 2026-08-25 10:54:30
[2026-08-25 10:54:30,311.311 INFO    ] 2026-08-25 10:54:30
[2026-08-25 10:54:30,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:54:30,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:54:30,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:54:30,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:54:30,718.718 INFO    ] time= 25/08/2026 10:54:30
[2026-08-25 10:54:30,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:54:30,733.733 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:54:30,805.805 INFO    ] No existing commands found in stream
[2026-08-25 10:54:35,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:54:35,820.820 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 10:54:36,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:54:36,913.913 INFO    ] Checking for system updates...
[2026-08-25 10:54:36,950.950 INFO    ] 200
[2026-08-25 10:54:36,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:37,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:54:37,010.010 INFO    ] No update needed
[2026-08-25 10:54:37,013.013 INFO    ] Checking for camera pi updates...
[2026-08-25 10:54:37,046.046 INFO    ] 200
[2026-08-25 10:54:37,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:37,090.090 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:54:37,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:54:37,136.136 INFO    ] No camera update needed
[2026-08-25 10:54:37,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:54:37,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:54:37,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:54:37,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:54:39,191.191 INFO    ] ================================================
[2026-08-25 10:54:39,206.206 INFO    ] Launching Daemon at Tue Aug 25 10:54:39 IST 2026
[2026-08-25 10:54:39,217.217 INFO    ] ================================================
[2026-08-25 10:54:39,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:54:39
[2026-08-25 10:54:40,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:54:40,809.809 INFO    ] Initializing speech engine...
[2026-08-25 10:54:40,821.821 INFO    ] 2026-08-25 10:54:40
[2026-08-25 10:54:41,092.092 INFO    ] 2026-08-25 10:54:41
[2026-08-25 10:54:41,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:54:41,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:54:41,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:54:41,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:54:41,647.647 INFO    ] time= 25/08/2026 10:54:41
[2026-08-25 10:54:41,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:54:41,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:54:41,791.791 INFO    ] No existing commands found in stream
[2026-08-25 10:54:46,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:54:46,820.820 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 10:54:50,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:54:50,043.043 INFO    ] Checking for system updates...
[2026-08-25 10:54:50,079.079 INFO    ] 200
[2026-08-25 10:54:50,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:50,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:54:50,140.140 INFO    ] No update needed
[2026-08-25 10:54:50,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 10:54:50,176.176 INFO    ] 200
[2026-08-25 10:54:50,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:54:50,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:54:50,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:54:50,278.278 INFO    ] No camera update needed
[2026-08-25 10:54:50,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:54:50,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:54:50,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:54:50,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:54:52,336.336 INFO    ] ================================================
[2026-08-25 10:54:52,352.352 INFO    ] Launching Daemon at Tue Aug 25 10:54:52 IST 2026
[2026-08-25 10:54:52,363.363 INFO    ] ================================================
[2026-08-25 10:54:52,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:54:52
[2026-08-25 10:54:53,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:54:53,814.814 INFO    ] Initializing speech engine...
[2026-08-25 10:54:53,821.821 INFO    ] 2026-08-25 10:54:53
[2026-08-25 10:54:54,082.082 INFO    ] 2026-08-25 10:54:54
[2026-08-25 10:54:54,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:54:54,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:54:54,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:54:54,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:54:54,547.547 INFO    ] time= 25/08/2026 10:54:54
[2026-08-25 10:54:54,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:54:54,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:54:54,769.769 INFO    ] No existing commands found in stream
[2026-08-25 10:54:59,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:54:59,797.797 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 10:55:01,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:55:01,610.610 INFO    ] Checking for system updates...
[2026-08-25 10:55:01,646.646 INFO    ] 200
[2026-08-25 10:55:01,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:01,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:01,730.730 INFO    ] No update needed
[2026-08-25 10:55:01,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 10:55:01,789.789 INFO    ] 200
[2026-08-25 10:55:01,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:01,922.922 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:55:02,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:02,117.117 INFO    ] No camera update needed
[2026-08-25 10:55:02,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:55:02,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:55:02,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:55:02,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:55:04,187.187 INFO    ] ================================================
[2026-08-25 10:55:04,203.203 INFO    ] Launching Daemon at Tue Aug 25 10:55:04 IST 2026
[2026-08-25 10:55:04,214.214 INFO    ] ================================================
[2026-08-25 10:55:04,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:55:04
[2026-08-25 10:55:05,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:55:05,665.665 INFO    ] Initializing speech engine...
[2026-08-25 10:55:05,680.680 INFO    ] 2026-08-25 10:55:05
[2026-08-25 10:55:05,945.945 INFO    ] 2026-08-25 10:55:05
[2026-08-25 10:55:05,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:55:06,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:55:06,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:55:06,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:55:06,431.431 INFO    ] time= 25/08/2026 10:55:06
[2026-08-25 10:55:06,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:55:06,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:55:06,665.665 INFO    ] No existing commands found in stream
[2026-08-25 10:55:11,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:55:11,679.679 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 10:55:13,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:55:13,781.781 INFO    ] Checking for system updates...
[2026-08-25 10:55:13,817.817 INFO    ] 200
[2026-08-25 10:55:13,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:13,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:13,879.879 INFO    ] No update needed
[2026-08-25 10:55:13,881.881 INFO    ] Checking for camera pi updates...
[2026-08-25 10:55:13,917.917 INFO    ] 200
[2026-08-25 10:55:13,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:13,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:55:14,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:14,006.006 INFO    ] No camera update needed
[2026-08-25 10:55:14,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:55:14,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:55:14,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:55:14,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:55:16,061.061 INFO    ] ================================================
[2026-08-25 10:55:16,076.076 INFO    ] Launching Daemon at Tue Aug 25 10:55:16 IST 2026
[2026-08-25 10:55:16,087.087 INFO    ] ================================================
[2026-08-25 10:55:16,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:55:16
[2026-08-25 10:55:17,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:55:17,624.624 INFO    ] Initializing speech engine...
[2026-08-25 10:55:17,633.633 INFO    ] 2026-08-25 10:55:17
[2026-08-25 10:55:17,881.881 INFO    ] 2026-08-25 10:55:17
[2026-08-25 10:55:17,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:55:18,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:55:18,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:55:18,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:55:18,332.332 INFO    ] time= 25/08/2026 10:55:18
[2026-08-25 10:55:18,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:55:18,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:55:18,588.588 INFO    ] No existing commands found in stream
[2026-08-25 10:55:23,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:55:23,618.618 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 10:55:24,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:55:24,923.923 INFO    ] Checking for system updates...
[2026-08-25 10:55:24,962.962 INFO    ] 200
[2026-08-25 10:55:24,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:25,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:25,021.021 INFO    ] No update needed
[2026-08-25 10:55:25,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 10:55:25,058.058 INFO    ] 200
[2026-08-25 10:55:25,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:25,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:55:25,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:25,165.165 INFO    ] No camera update needed
[2026-08-25 10:55:25,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:55:25,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:55:25,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:55:25,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:55:27,230.230 INFO    ] ================================================
[2026-08-25 10:55:27,245.245 INFO    ] Launching Daemon at Tue Aug 25 10:55:27 IST 2026
[2026-08-25 10:55:27,256.256 INFO    ] ================================================
[2026-08-25 10:55:27,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:55:27
[2026-08-25 10:55:28,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:55:28,706.706 INFO    ] Initializing speech engine...
[2026-08-25 10:55:28,715.715 INFO    ] 2026-08-25 10:55:28
[2026-08-25 10:55:28,959.959 INFO    ] 2026-08-25 10:55:28
[2026-08-25 10:55:28,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:55:29,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:55:29,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:55:29,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:55:29,428.428 INFO    ] time= 25/08/2026 10:55:29
[2026-08-25 10:55:29,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:55:29,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:55:29,662.662 INFO    ] No existing commands found in stream
[2026-08-25 10:55:34,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:55:34,680.680 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 10:55:37,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:55:37,563.563 INFO    ] Checking for system updates...
[2026-08-25 10:55:37,599.599 INFO    ] 200
[2026-08-25 10:55:37,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:37,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:37,660.660 INFO    ] No update needed
[2026-08-25 10:55:37,662.662 INFO    ] Checking for camera pi updates...
[2026-08-25 10:55:37,696.696 INFO    ] 200
[2026-08-25 10:55:37,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:37,738.738 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:55:37,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:37,888.888 INFO    ] No camera update needed
[2026-08-25 10:55:37,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:55:37,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:55:37,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:55:37,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:55:39,945.945 INFO    ] ================================================
[2026-08-25 10:55:39,963.963 INFO    ] Launching Daemon at Tue Aug 25 10:55:39 IST 2026
[2026-08-25 10:55:39,974.974 INFO    ] ================================================
[2026-08-25 10:55:40,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:55:40
[2026-08-25 10:55:41,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:55:41,401.401 INFO    ] Initializing speech engine...
[2026-08-25 10:55:41,410.410 INFO    ] 2026-08-25 10:55:41
[2026-08-25 10:55:41,654.654 INFO    ] 2026-08-25 10:55:41
[2026-08-25 10:55:41,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:55:41,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:55:41,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:55:42,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:55:42,210.210 INFO    ] time= 25/08/2026 10:55:42
[2026-08-25 10:55:42,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:55:42,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:55:42,363.363 INFO    ] No existing commands found in stream
[2026-08-25 10:55:47,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:55:47,380.380 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 10:55:49,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:55:49,164.164 INFO    ] Checking for system updates...
[2026-08-25 10:55:49,200.200 INFO    ] 200
[2026-08-25 10:55:49,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:49,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:49,259.259 INFO    ] No update needed
[2026-08-25 10:55:49,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 10:55:49,295.295 INFO    ] 200
[2026-08-25 10:55:49,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:55:49,341.341 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:55:49,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:55:49,397.397 INFO    ] No camera update needed
[2026-08-25 10:55:49,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:55:49,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:55:49,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:55:49,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:55:51,452.452 INFO    ] ================================================
[2026-08-25 10:55:51,468.468 INFO    ] Launching Daemon at Tue Aug 25 10:55:51 IST 2026
[2026-08-25 10:55:51,479.479 INFO    ] ================================================
[2026-08-25 10:55:52,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:55:52
[2026-08-25 10:55:52,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:55:52,937.937 INFO    ] Initializing speech engine...
[2026-08-25 10:55:52,947.947 INFO    ] 2026-08-25 10:55:52
[2026-08-25 10:55:53,195.195 INFO    ] 2026-08-25 10:55:53
[2026-08-25 10:55:53,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:55:53,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:55:53,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:55:53,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:55:53,659.659 INFO    ] time= 25/08/2026 10:55:53
[2026-08-25 10:55:53,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:55:53,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:55:53,903.903 INFO    ] No existing commands found in stream
[2026-08-25 10:55:58,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:55:58,920.920 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 10:56:02,005.005 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:56:02,008.008 INFO    ] Checking for system updates...
[2026-08-25 10:56:02,074.074 INFO    ] 200
[2026-08-25 10:56:02,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:02,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:56:02,168.168 INFO    ] No update needed
[2026-08-25 10:56:02,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 10:56:02,234.234 INFO    ] 200
[2026-08-25 10:56:02,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:02,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:56:02,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:56:02,379.379 INFO    ] No camera update needed
[2026-08-25 10:56:02,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:56:02,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:56:02,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:56:02,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:56:04,440.440 INFO    ] ================================================
[2026-08-25 10:56:04,456.456 INFO    ] Launching Daemon at Tue Aug 25 10:56:04 IST 2026
[2026-08-25 10:56:04,467.467 INFO    ] ================================================
[2026-08-25 10:56:05,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:56:05
[2026-08-25 10:56:05,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:56:05,884.884 INFO    ] Initializing speech engine...
[2026-08-25 10:56:05,890.890 INFO    ] 2026-08-25 10:56:05
[2026-08-25 10:56:06,135.135 INFO    ] 2026-08-25 10:56:06
[2026-08-25 10:56:06,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:56:06,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:56:06,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:56:06,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:56:06,641.641 INFO    ] time= 25/08/2026 10:56:06
[2026-08-25 10:56:06,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:56:06,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:56:06,862.862 INFO    ] No existing commands found in stream
[2026-08-25 10:56:11,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:56:11,887.887 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 10:56:13,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:56:13,507.507 INFO    ] Checking for system updates...
[2026-08-25 10:56:13,542.542 INFO    ] 200
[2026-08-25 10:56:13,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:13,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:56:13,601.601 INFO    ] No update needed
[2026-08-25 10:56:13,603.603 INFO    ] Checking for camera pi updates...
[2026-08-25 10:56:13,637.637 INFO    ] 200
[2026-08-25 10:56:13,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:13,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:56:13,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:56:13,732.732 INFO    ] No camera update needed
[2026-08-25 10:56:13,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:56:13,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:56:13,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:56:13,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:56:15,789.789 INFO    ] ================================================
[2026-08-25 10:56:15,805.805 INFO    ] Launching Daemon at Tue Aug 25 10:56:15 IST 2026
[2026-08-25 10:56:15,816.816 INFO    ] ================================================
[2026-08-25 10:56:16,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:56:16
[2026-08-25 10:56:16,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:56:17,229.229 INFO    ] Initializing speech engine...
[2026-08-25 10:56:17,238.238 INFO    ] 2026-08-25 10:56:17
[2026-08-25 10:56:17,482.482 INFO    ] 2026-08-25 10:56:17
[2026-08-25 10:56:17,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:56:17,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:56:17,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:56:17,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:56:17,845.845 INFO    ] time= 25/08/2026 10:56:17
[2026-08-25 10:56:17,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:56:17,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:56:18,021.021 INFO    ] No existing commands found in stream
[2026-08-25 10:56:23,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:56:23,052.052 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 10:56:23,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:56:23,897.897 INFO    ] Checking for system updates...
[2026-08-25 10:56:23,933.933 INFO    ] 200
[2026-08-25 10:56:23,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:23,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:23,992.992 INFO    ] No update needed
[2026-08-25 10:56:23,994.994 INFO    ] Checking for camera pi updates...
[2026-08-25 10:56:24,030.030 INFO    ] 200
[2026-08-25 10:56:24,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:24,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:56:24,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:24,123.123 INFO    ] No camera update needed
[2026-08-25 10:56:24,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:56:24,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:56:24,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:56:24,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:56:26,187.187 INFO    ] ================================================
[2026-08-25 10:56:26,202.202 INFO    ] Launching Daemon at Tue Aug 25 10:56:26 IST 2026
[2026-08-25 10:56:26,213.213 INFO    ] ================================================
[2026-08-25 10:56:26,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:56:26
[2026-08-25 10:56:27,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:56:27,617.617 INFO    ] Initializing speech engine...
[2026-08-25 10:56:27,642.642 INFO    ] 2026-08-25 10:56:27
[2026-08-25 10:56:27,908.908 INFO    ] 2026-08-25 10:56:27
[2026-08-25 10:56:27,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:56:28,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:56:28,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:56:28,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:56:28,304.304 INFO    ] time= 25/08/2026 10:56:28
[2026-08-25 10:56:28,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:56:28,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:56:28,443.443 INFO    ] No existing commands found in stream
[2026-08-25 10:56:33,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:56:33,470.470 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 10:56:35,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:56:35,614.614 INFO    ] Checking for system updates...
[2026-08-25 10:56:35,650.650 INFO    ] 200
[2026-08-25 10:56:35,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:35,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:35,707.707 INFO    ] No update needed
[2026-08-25 10:56:35,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 10:56:35,742.742 INFO    ] 200
[2026-08-25 10:56:35,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:35,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:56:35,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:35,838.838 INFO    ] No camera update needed
[2026-08-25 10:56:35,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:56:35,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:56:35,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:56:35,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:56:37,892.892 INFO    ] ================================================
[2026-08-25 10:56:37,908.908 INFO    ] Launching Daemon at Tue Aug 25 10:56:37 IST 2026
[2026-08-25 10:56:37,920.920 INFO    ] ================================================
[2026-08-25 10:56:38,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:56:38
[2026-08-25 10:56:39,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:56:39,374.374 INFO    ] Initializing speech engine...
[2026-08-25 10:56:39,391.391 INFO    ] 2026-08-25 10:56:39
[2026-08-25 10:56:39,665.665 INFO    ] 2026-08-25 10:56:39
[2026-08-25 10:56:39,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:56:39,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:56:39,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:56:40,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:56:40,076.076 INFO    ] time= 25/08/2026 10:56:40
[2026-08-25 10:56:40,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:56:40,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:56:40,251.251 INFO    ] No existing commands found in stream
[2026-08-25 10:56:45,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:56:45,279.279 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 10:56:48,519.519 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 10:56:48,521.521 INFO    ] Checking for system updates...
[2026-08-25 10:56:48,557.557 INFO    ] 200
[2026-08-25 10:56:48,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:48,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:48,615.615 INFO    ] No update needed
[2026-08-25 10:56:48,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 10:56:48,650.650 INFO    ] 200
[2026-08-25 10:56:48,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:48,693.693 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:56:48,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:48,752.752 INFO    ] No camera update needed
[2026-08-25 10:56:48,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:56:48,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:56:48,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:56:48,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:56:50,807.807 INFO    ] ================================================
[2026-08-25 10:56:50,822.822 INFO    ] Launching Daemon at Tue Aug 25 10:56:50 IST 2026
[2026-08-25 10:56:50,833.833 INFO    ] ================================================
[2026-08-25 10:56:51,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:56:51
[2026-08-25 10:56:52,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:56:52,286.286 INFO    ] Initializing speech engine...
[2026-08-25 10:56:52,295.295 INFO    ] 2026-08-25 10:56:52
[2026-08-25 10:56:52,549.549 INFO    ] 2026-08-25 10:56:52
[2026-08-25 10:56:52,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:56:52,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:56:52,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:56:52,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:56:53,029.029 INFO    ] time= 25/08/2026 10:56:52
[2026-08-25 10:56:53,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:56:53,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:56:53,232.232 INFO    ] No existing commands found in stream
[2026-08-25 10:56:58,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:56:58,262.262 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 10:56:59,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:56:59,197.197 INFO    ] Checking for system updates...
[2026-08-25 10:56:59,233.233 INFO    ] 200
[2026-08-25 10:56:59,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:59,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:59,289.289 INFO    ] No update needed
[2026-08-25 10:56:59,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 10:56:59,325.325 INFO    ] 200
[2026-08-25 10:56:59,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:56:59,372.372 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:56:59,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:56:59,423.423 INFO    ] No camera update needed
[2026-08-25 10:56:59,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:56:59,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:56:59,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:56:59,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:57:01,480.480 INFO    ] ================================================
[2026-08-25 10:57:01,496.496 INFO    ] Launching Daemon at Tue Aug 25 10:57:01 IST 2026
[2026-08-25 10:57:01,507.507 INFO    ] ================================================
[2026-08-25 10:57:02,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:57:02
[2026-08-25 10:57:02,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:57:03,182.182 INFO    ] Initializing speech engine...
[2026-08-25 10:57:03,196.196 INFO    ] 2026-08-25 10:57:03
[2026-08-25 10:57:03,512.512 INFO    ] 2026-08-25 10:57:03
[2026-08-25 10:57:03,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:57:03,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:57:03,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:57:03,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:57:03,908.908 INFO    ] time= 25/08/2026 10:57:03
[2026-08-25 10:57:03,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:57:03,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:57:04,103.103 INFO    ] No existing commands found in stream
[2026-08-25 10:57:09,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:57:09,123.123 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 10:57:12,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:57:12,791.791 INFO    ] Checking for system updates...
[2026-08-25 10:57:12,827.827 INFO    ] 200
[2026-08-25 10:57:12,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:12,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:57:12,884.884 INFO    ] No update needed
[2026-08-25 10:57:12,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 10:57:12,920.920 INFO    ] 200
[2026-08-25 10:57:12,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:12,962.962 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:57:13,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:57:13,014.014 INFO    ] No camera update needed
[2026-08-25 10:57:13,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:57:13,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:57:13,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:57:13,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:57:15,071.071 INFO    ] ================================================
[2026-08-25 10:57:15,087.087 INFO    ] Launching Daemon at Tue Aug 25 10:57:15 IST 2026
[2026-08-25 10:57:15,098.098 INFO    ] ================================================
[2026-08-25 10:57:15,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:57:15
[2026-08-25 10:57:16,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:57:16,522.522 INFO    ] Initializing speech engine...
[2026-08-25 10:57:16,531.531 INFO    ] 2026-08-25 10:57:16
[2026-08-25 10:57:16,781.781 INFO    ] 2026-08-25 10:57:16
[2026-08-25 10:57:16,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:57:16,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:57:17,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:57:17,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:57:17,163.163 INFO    ] time= 25/08/2026 10:57:17
[2026-08-25 10:57:17,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:57:17,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:57:17,359.359 INFO    ] No existing commands found in stream
[2026-08-25 10:57:22,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:57:22,379.379 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 10:57:24,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:57:24,315.315 INFO    ] Checking for system updates...
[2026-08-25 10:57:24,350.350 INFO    ] 200
[2026-08-25 10:57:24,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:24,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:57:24,407.407 INFO    ] No update needed
[2026-08-25 10:57:24,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 10:57:24,443.443 INFO    ] 200
[2026-08-25 10:57:24,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:24,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:57:24,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:57:24,540.540 INFO    ] No camera update needed
[2026-08-25 10:57:24,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:57:24,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:57:24,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:57:24,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:57:26,594.594 INFO    ] ================================================
[2026-08-25 10:57:26,610.610 INFO    ] Launching Daemon at Tue Aug 25 10:57:26 IST 2026
[2026-08-25 10:57:26,621.621 INFO    ] ================================================
[2026-08-25 10:57:27,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:57:27
[2026-08-25 10:57:27,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:57:28,046.046 INFO    ] Initializing speech engine...
[2026-08-25 10:57:28,055.055 INFO    ] 2026-08-25 10:57:28
[2026-08-25 10:57:28,306.306 INFO    ] 2026-08-25 10:57:28
[2026-08-25 10:57:28,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:57:28,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:57:28,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:57:28,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:57:28,771.771 INFO    ] time= 25/08/2026 10:57:28
[2026-08-25 10:57:28,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:57:28,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:57:29,012.012 INFO    ] No existing commands found in stream
[2026-08-25 10:57:34,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:57:34,040.040 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 10:57:38,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:57:38,312.312 INFO    ] Checking for system updates...
[2026-08-25 10:57:38,348.348 INFO    ] 200
[2026-08-25 10:57:38,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:38,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:57:38,405.405 INFO    ] No update needed
[2026-08-25 10:57:38,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 10:57:38,445.445 INFO    ] 200
[2026-08-25 10:57:38,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:38,489.489 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:57:38,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:57:38,535.535 INFO    ] No camera update needed
[2026-08-25 10:57:38,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:57:38,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:57:38,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:57:38,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:57:40,592.592 INFO    ] ================================================
[2026-08-25 10:57:40,609.609 INFO    ] Launching Daemon at Tue Aug 25 10:57:40 IST 2026
[2026-08-25 10:57:40,620.620 INFO    ] ================================================
[2026-08-25 10:57:41,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:57:41
[2026-08-25 10:57:41,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:57:42,074.074 INFO    ] Initializing speech engine...
[2026-08-25 10:57:42,083.083 INFO    ] 2026-08-25 10:57:42
[2026-08-25 10:57:42,331.331 INFO    ] 2026-08-25 10:57:42
[2026-08-25 10:57:42,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:57:42,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:57:42,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:57:42,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:57:42,827.827 INFO    ] time= 25/08/2026 10:57:42
[2026-08-25 10:57:42,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:57:42,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:57:43,038.038 INFO    ] No existing commands found in stream
[2026-08-25 10:57:48,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:57:48,057.057 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 10:57:52,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:57:52,485.485 INFO    ] Checking for system updates...
[2026-08-25 10:57:52,521.521 INFO    ] 200
[2026-08-25 10:57:52,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:52,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:57:52,579.579 INFO    ] No update needed
[2026-08-25 10:57:52,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 10:57:52,622.622 INFO    ] 200
[2026-08-25 10:57:52,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:57:52,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:57:52,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:57:52,828.828 INFO    ] No camera update needed
[2026-08-25 10:57:52,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:57:52,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:57:52,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:57:52,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:57:54,883.883 INFO    ] ================================================
[2026-08-25 10:57:54,899.899 INFO    ] Launching Daemon at Tue Aug 25 10:57:54 IST 2026
[2026-08-25 10:57:54,911.911 INFO    ] ================================================
[2026-08-25 10:57:55,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:57:55
[2026-08-25 10:57:56,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:57:56,369.369 INFO    ] Initializing speech engine...
[2026-08-25 10:57:56,376.376 INFO    ] 2026-08-25 10:57:56
[2026-08-25 10:57:56,637.637 INFO    ] 2026-08-25 10:57:56
[2026-08-25 10:57:56,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:57:56,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:57:56,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:57:57,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:57:57,181.181 INFO    ] time= 25/08/2026 10:57:57
[2026-08-25 10:57:57,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:57:57,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:57:57,339.339 INFO    ] No existing commands found in stream
[2026-08-25 10:58:02,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:58:02,367.367 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 10:58:02,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:58:02,909.909 INFO    ] Checking for system updates...
[2026-08-25 10:58:02,949.949 INFO    ] 200
[2026-08-25 10:58:02,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:03,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:03,024.024 INFO    ] No update needed
[2026-08-25 10:58:03,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 10:58:03,065.065 INFO    ] 200
[2026-08-25 10:58:03,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:03,122.122 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:58:03,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:03,184.184 INFO    ] No camera update needed
[2026-08-25 10:58:03,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:58:03,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:58:03,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:58:03,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:58:05,250.250 INFO    ] ================================================
[2026-08-25 10:58:05,266.266 INFO    ] Launching Daemon at Tue Aug 25 10:58:05 IST 2026
[2026-08-25 10:58:05,277.277 INFO    ] ================================================
[2026-08-25 10:58:05,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:58:05
[2026-08-25 10:58:06,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:58:06,738.738 INFO    ] Initializing speech engine...
[2026-08-25 10:58:06,748.748 INFO    ] 2026-08-25 10:58:06
[2026-08-25 10:58:07,016.016 INFO    ] 2026-08-25 10:58:07
[2026-08-25 10:58:07,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:58:07,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:58:07,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:58:07,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:58:07,451.451 INFO    ] time= 25/08/2026 10:58:07
[2026-08-25 10:58:07,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:58:07,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:58:07,539.539 INFO    ] No existing commands found in stream
[2026-08-25 10:58:12,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:58:12,557.557 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 10:58:15,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:58:15,492.492 INFO    ] Checking for system updates...
[2026-08-25 10:58:15,528.528 INFO    ] 200
[2026-08-25 10:58:15,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:15,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:15,593.593 INFO    ] No update needed
[2026-08-25 10:58:15,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 10:58:15,630.630 INFO    ] 200
[2026-08-25 10:58:15,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:15,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:58:15,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:15,728.728 INFO    ] No camera update needed
[2026-08-25 10:58:15,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:58:15,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:58:15,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:58:15,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:58:17,787.787 INFO    ] ================================================
[2026-08-25 10:58:17,802.802 INFO    ] Launching Daemon at Tue Aug 25 10:58:17 IST 2026
[2026-08-25 10:58:17,814.814 INFO    ] ================================================
[2026-08-25 10:58:18,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:58:18
[2026-08-25 10:58:18,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:58:19,274.274 INFO    ] Initializing speech engine...
[2026-08-25 10:58:19,281.281 INFO    ] 2026-08-25 10:58:19
[2026-08-25 10:58:19,539.539 INFO    ] 2026-08-25 10:58:19
[2026-08-25 10:58:19,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:58:19,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:58:19,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:58:20,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:58:20,084.084 INFO    ] time= 25/08/2026 10:58:20
[2026-08-25 10:58:20,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:58:20,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:58:20,233.233 INFO    ] No existing commands found in stream
[2026-08-25 10:58:25,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:58:25,252.252 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 10:58:27,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 10:58:27,575.575 INFO    ] Checking for system updates...
[2026-08-25 10:58:27,615.615 INFO    ] 200
[2026-08-25 10:58:27,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:27,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:27,680.680 INFO    ] No update needed
[2026-08-25 10:58:27,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 10:58:27,720.720 INFO    ] 200
[2026-08-25 10:58:27,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:27,768.768 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:58:27,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:27,821.821 INFO    ] No camera update needed
[2026-08-25 10:58:27,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:58:27,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:58:27,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:58:27,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:58:29,877.877 INFO    ] ================================================
[2026-08-25 10:58:29,893.893 INFO    ] Launching Daemon at Tue Aug 25 10:58:29 IST 2026
[2026-08-25 10:58:29,905.905 INFO    ] ================================================
[2026-08-25 10:58:30,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:58:30
[2026-08-25 10:58:31,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:58:31,542.542 INFO    ] Initializing speech engine...
[2026-08-25 10:58:31,550.550 INFO    ] 2026-08-25 10:58:31
[2026-08-25 10:58:31,853.853 INFO    ] 2026-08-25 10:58:31
[2026-08-25 10:58:31,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:58:32,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:58:32,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:58:32,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:58:32,387.387 INFO    ] time= 25/08/2026 10:58:32
[2026-08-25 10:58:32,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:58:32,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:58:32,541.541 INFO    ] No existing commands found in stream
[2026-08-25 10:58:37,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:58:37,564.564 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 10:58:40,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:58:40,067.067 INFO    ] Checking for system updates...
[2026-08-25 10:58:40,102.102 INFO    ] 200
[2026-08-25 10:58:40,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:40,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:40,160.160 INFO    ] No update needed
[2026-08-25 10:58:40,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 10:58:40,203.203 INFO    ] 200
[2026-08-25 10:58:40,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:40,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:58:40,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:58:40,301.301 INFO    ] No camera update needed
[2026-08-25 10:58:40,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:58:40,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:58:40,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:58:40,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:58:42,358.358 INFO    ] ================================================
[2026-08-25 10:58:42,375.375 INFO    ] Launching Daemon at Tue Aug 25 10:58:42 IST 2026
[2026-08-25 10:58:42,387.387 INFO    ] ================================================
[2026-08-25 10:58:42,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:58:42
[2026-08-25 10:58:43,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:58:43,796.796 INFO    ] Initializing speech engine...
[2026-08-25 10:58:43,802.802 INFO    ] 2026-08-25 10:58:43
[2026-08-25 10:58:44,095.095 INFO    ] 2026-08-25 10:58:44
[2026-08-25 10:58:44,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:58:44,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:58:44,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:58:44,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:58:44,475.475 INFO    ] time= 25/08/2026 10:58:44
[2026-08-25 10:58:44,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:58:44,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:58:44,599.599 INFO    ] No existing commands found in stream
[2026-08-25 10:58:49,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:58:49,615.615 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 10:58:53,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 10:58:53,281.281 INFO    ] Checking for system updates...
[2026-08-25 10:58:53,316.316 INFO    ] 200
[2026-08-25 10:58:53,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:53,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:58:53,373.373 INFO    ] No update needed
[2026-08-25 10:58:53,375.375 INFO    ] Checking for camera pi updates...
[2026-08-25 10:58:53,412.412 INFO    ] 200
[2026-08-25 10:58:53,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:58:53,460.460 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:58:53,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:58:53,507.507 INFO    ] No camera update needed
[2026-08-25 10:58:53,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:58:53,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:58:53,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:58:53,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:58:55,562.562 INFO    ] ================================================
[2026-08-25 10:58:55,577.577 INFO    ] Launching Daemon at Tue Aug 25 10:58:55 IST 2026
[2026-08-25 10:58:55,588.588 INFO    ] ================================================
[2026-08-25 10:58:56,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:58:56
[2026-08-25 10:58:56,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:58:56,989.989 INFO    ] Initializing speech engine...
[2026-08-25 10:58:57,012.012 INFO    ] 2026-08-25 10:58:56
[2026-08-25 10:58:57,268.268 INFO    ] 2026-08-25 10:58:57
[2026-08-25 10:58:57,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:58:57,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:58:57,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:58:57,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:58:57,775.775 INFO    ] time= 25/08/2026 10:58:57
[2026-08-25 10:58:57,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:58:57,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:58:57,947.947 INFO    ] No existing commands found in stream
[2026-08-25 10:59:02,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:59:02,977.977 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 10:59:03,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:59:03,678.678 INFO    ] Checking for system updates...
[2026-08-25 10:59:03,718.718 INFO    ] 200
[2026-08-25 10:59:03,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:03,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:59:03,781.781 INFO    ] No update needed
[2026-08-25 10:59:03,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 10:59:03,819.819 INFO    ] 200
[2026-08-25 10:59:03,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:03,861.861 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:59:03,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:59:03,907.907 INFO    ] No camera update needed
[2026-08-25 10:59:03,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:59:03,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:59:03,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:59:03,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:59:05,967.967 INFO    ] ================================================
[2026-08-25 10:59:05,982.982 INFO    ] Launching Daemon at Tue Aug 25 10:59:05 IST 2026
[2026-08-25 10:59:05,994.994 INFO    ] ================================================
[2026-08-25 10:59:06,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:59:06
[2026-08-25 10:59:07,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:59:07,397.397 INFO    ] Initializing speech engine...
[2026-08-25 10:59:07,405.405 INFO    ] 2026-08-25 10:59:07
[2026-08-25 10:59:07,698.698 INFO    ] 2026-08-25 10:59:07
[2026-08-25 10:59:07,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:59:07,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:59:07,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:59:08,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:59:08,117.117 INFO    ] time= 25/08/2026 10:59:08
[2026-08-25 10:59:08,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:59:08,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:59:08,313.313 INFO    ] No existing commands found in stream
[2026-08-25 10:59:13,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:59:13,341.341 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 10:59:16,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:59:16,908.908 INFO    ] Checking for system updates...
[2026-08-25 10:59:16,943.943 INFO    ] 200
[2026-08-25 10:59:16,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:17,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:59:17,006.006 INFO    ] No update needed
[2026-08-25 10:59:17,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 10:59:17,042.042 INFO    ] 200
[2026-08-25 10:59:17,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:17,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:59:17,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:59:17,133.133 INFO    ] No camera update needed
[2026-08-25 10:59:17,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:59:17,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:59:17,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:59:17,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:59:19,189.189 INFO    ] ================================================
[2026-08-25 10:59:19,204.204 INFO    ] Launching Daemon at Tue Aug 25 10:59:19 IST 2026
[2026-08-25 10:59:19,214.214 INFO    ] ================================================
[2026-08-25 10:59:19,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:59:19
[2026-08-25 10:59:20,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:59:20,817.817 INFO    ] Initializing speech engine...
[2026-08-25 10:59:20,829.829 INFO    ] 2026-08-25 10:59:20
[2026-08-25 10:59:21,136.136 INFO    ] 2026-08-25 10:59:21
[2026-08-25 10:59:21,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:59:21,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:59:21,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:59:21,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:59:21,641.641 INFO    ] time= 25/08/2026 10:59:21
[2026-08-25 10:59:21,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:59:21,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:59:21,779.779 INFO    ] No existing commands found in stream
[2026-08-25 10:59:26,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:59:26,807.807 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 10:59:27,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 10:59:27,452.452 INFO    ] Checking for system updates...
[2026-08-25 10:59:27,488.488 INFO    ] 200
[2026-08-25 10:59:27,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:27,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:59:27,553.553 INFO    ] No update needed
[2026-08-25 10:59:27,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 10:59:27,594.594 INFO    ] 200
[2026-08-25 10:59:27,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:27,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:59:27,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 10:59:27,696.696 INFO    ] No camera update needed
[2026-08-25 10:59:27,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:59:27,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:59:27,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:59:27,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:59:29,755.755 INFO    ] ================================================
[2026-08-25 10:59:29,770.770 INFO    ] Launching Daemon at Tue Aug 25 10:59:29 IST 2026
[2026-08-25 10:59:29,783.783 INFO    ] ================================================
[2026-08-25 10:59:30,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:59:30
[2026-08-25 10:59:30,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:59:31,264.264 INFO    ] Initializing speech engine...
[2026-08-25 10:59:31,274.274 INFO    ] 2026-08-25 10:59:31
[2026-08-25 10:59:31,556.556 INFO    ] 2026-08-25 10:59:31
[2026-08-25 10:59:31,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:59:31,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:59:31,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:59:32,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:59:32,115.115 INFO    ] time= 25/08/2026 10:59:32
[2026-08-25 10:59:32,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:59:32,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:59:32,280.280 INFO    ] No existing commands found in stream
[2026-08-25 10:59:37,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:59:37,306.306 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 10:59:38,710.710 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 10:59:38,713.713 INFO    ] Checking for system updates...
[2026-08-25 10:59:38,752.752 INFO    ] 200
[2026-08-25 10:59:38,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:38,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:59:38,815.815 INFO    ] No update needed
[2026-08-25 10:59:38,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 10:59:38,854.854 INFO    ] 200
[2026-08-25 10:59:38,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:38,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:59:38,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:59:38,950.950 INFO    ] No camera update needed
[2026-08-25 10:59:38,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:59:38,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:59:38,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:59:38,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:59:41,005.005 INFO    ] ================================================
[2026-08-25 10:59:41,020.020 INFO    ] Launching Daemon at Tue Aug 25 10:59:41 IST 2026
[2026-08-25 10:59:41,030.030 INFO    ] ================================================
[2026-08-25 10:59:41,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:59:41
[2026-08-25 10:59:42,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:59:42,483.483 INFO    ] Initializing speech engine...
[2026-08-25 10:59:42,507.507 INFO    ] 2026-08-25 10:59:42
[2026-08-25 10:59:42,783.783 INFO    ] 2026-08-25 10:59:42
[2026-08-25 10:59:42,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:59:43,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:59:43,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:59:43,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:59:43,196.196 INFO    ] time= 25/08/2026 10:59:43
[2026-08-25 10:59:43,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:59:43,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:59:43,279.279 INFO    ] No existing commands found in stream
[2026-08-25 10:59:48,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 10:59:48,295.295 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 10:59:51,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 10:59:51,858.858 INFO    ] Checking for system updates...
[2026-08-25 10:59:51,895.895 INFO    ] 200
[2026-08-25 10:59:51,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:51,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:59:51,953.953 INFO    ] No update needed
[2026-08-25 10:59:51,955.955 INFO    ] Checking for camera pi updates...
[2026-08-25 10:59:51,993.993 INFO    ] 200
[2026-08-25 10:59:51,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 10:59:52,038.038 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 10:59:52,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 10:59:52,087.087 INFO    ] No camera update needed
[2026-08-25 10:59:52,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 10:59:52,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 10:59:52,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 10:59:52,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 10:59:54,145.145 INFO    ] ================================================
[2026-08-25 10:59:54,160.160 INFO    ] Launching Daemon at Tue Aug 25 10:59:54 IST 2026
[2026-08-25 10:59:54,171.171 INFO    ] ================================================
[2026-08-25 10:59:54,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 10:59:54
[2026-08-25 10:59:55,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 10:59:55,762.762 INFO    ] Initializing speech engine...
[2026-08-25 10:59:55,769.769 INFO    ] 2026-08-25 10:59:55
[2026-08-25 10:59:56,052.052 INFO    ] 2026-08-25 10:59:56
[2026-08-25 10:59:56,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 10:59:56,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 10:59:56,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 10:59:56,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 10:59:56,587.587 INFO    ] time= 25/08/2026 10:59:56
[2026-08-25 10:59:56,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 10:59:56,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 10:59:56,743.743 INFO    ] No existing commands found in stream
[2026-08-25 11:00:01,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:00:01,780.780 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 11:00:08,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:00:08,715.715 INFO    ] Checking for system updates...
[2026-08-25 11:00:08,750.750 INFO    ] 200
[2026-08-25 11:00:08,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:08,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:00:08,815.815 INFO    ] No update needed
[2026-08-25 11:00:08,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 11:00:08,853.853 INFO    ] 200
[2026-08-25 11:00:08,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:08,898.898 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:00:08,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:00:08,947.947 INFO    ] No camera update needed
[2026-08-25 11:00:08,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:00:08,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:00:08,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:00:08,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:00:11,002.002 INFO    ] ================================================
[2026-08-25 11:00:11,017.017 INFO    ] Launching Daemon at Tue Aug 25 11:00:11 IST 2026
[2026-08-25 11:00:11,028.028 INFO    ] ================================================
[2026-08-25 11:00:11,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:00:11
[2026-08-25 11:00:12,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:00:12,443.443 INFO    ] Initializing speech engine...
[2026-08-25 11:00:12,464.464 INFO    ] 2026-08-25 11:00:12
[2026-08-25 11:00:12,733.733 INFO    ] 2026-08-25 11:00:12
[2026-08-25 11:00:12,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:00:12,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:00:12,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:00:13,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:00:13,132.132 INFO    ] time= 25/08/2026 11:00:13
[2026-08-25 11:00:13,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:00:13,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:00:13,219.219 INFO    ] No existing commands found in stream
[2026-08-25 11:00:18,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:00:18,258.258 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 11:00:22,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:00:22,614.614 INFO    ] Checking for system updates...
[2026-08-25 11:00:22,660.660 INFO    ] 200
[2026-08-25 11:00:22,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:22,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:00:22,723.723 INFO    ] No update needed
[2026-08-25 11:00:22,726.726 INFO    ] Checking for camera pi updates...
[2026-08-25 11:00:22,769.769 INFO    ] 200
[2026-08-25 11:00:22,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:22,815.815 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:00:22,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:00:22,864.864 INFO    ] No camera update needed
[2026-08-25 11:00:22,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:00:22,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:00:22,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:00:22,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:00:24,931.931 INFO    ] ================================================
[2026-08-25 11:00:24,947.947 INFO    ] Launching Daemon at Tue Aug 25 11:00:24 IST 2026
[2026-08-25 11:00:24,959.959 INFO    ] ================================================
[2026-08-25 11:00:25,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:00:25
[2026-08-25 11:00:26,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:00:26,386.386 INFO    ] Initializing speech engine...
[2026-08-25 11:00:26,392.392 INFO    ] 2026-08-25 11:00:26
[2026-08-25 11:00:26,675.675 INFO    ] 2026-08-25 11:00:26
[2026-08-25 11:00:26,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:00:26,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:00:26,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:00:27,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:00:27,138.138 INFO    ] time= 25/08/2026 11:00:27
[2026-08-25 11:00:27,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:00:27,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:00:27,355.355 INFO    ] No existing commands found in stream
[2026-08-25 11:00:32,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:00:32,372.372 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 11:00:36,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:00:36,167.167 INFO    ] Checking for system updates...
[2026-08-25 11:00:36,203.203 INFO    ] 200
[2026-08-25 11:00:36,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:36,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:00:36,260.260 INFO    ] No update needed
[2026-08-25 11:00:36,263.263 INFO    ] Checking for camera pi updates...
[2026-08-25 11:00:36,296.296 INFO    ] 200
[2026-08-25 11:00:36,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:36,339.339 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:00:36,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:00:36,389.389 INFO    ] No camera update needed
[2026-08-25 11:00:36,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:00:36,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:00:36,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:00:36,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:00:38,447.447 INFO    ] ================================================
[2026-08-25 11:00:38,463.463 INFO    ] Launching Daemon at Tue Aug 25 11:00:38 IST 2026
[2026-08-25 11:00:38,475.475 INFO    ] ================================================
[2026-08-25 11:00:39,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:00:39
[2026-08-25 11:00:39,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:00:39,928.928 INFO    ] Initializing speech engine...
[2026-08-25 11:00:39,934.934 INFO    ] 2026-08-25 11:00:39
[2026-08-25 11:00:40,194.194 INFO    ] 2026-08-25 11:00:40
[2026-08-25 11:00:40,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:00:40,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:00:40,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:00:40,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:00:40,651.651 INFO    ] time= 25/08/2026 11:00:40
[2026-08-25 11:00:40,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:00:40,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:00:40,892.892 INFO    ] No existing commands found in stream
[2026-08-25 11:00:45,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:00:45,914.914 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 11:00:49,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:00:49,832.832 INFO    ] Checking for system updates...
[2026-08-25 11:00:49,871.871 INFO    ] 200
[2026-08-25 11:00:49,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:49,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:00:49,934.934 INFO    ] No update needed
[2026-08-25 11:00:49,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 11:00:49,974.974 INFO    ] 200
[2026-08-25 11:00:49,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:00:50,021.021 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:00:50,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:00:50,076.076 INFO    ] No camera update needed
[2026-08-25 11:00:50,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:00:50,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:00:50,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:00:50,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:00:52,131.131 INFO    ] ================================================
[2026-08-25 11:00:52,147.147 INFO    ] Launching Daemon at Tue Aug 25 11:00:52 IST 2026
[2026-08-25 11:00:52,158.158 INFO    ] ================================================
[2026-08-25 11:00:52,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:00:52
[2026-08-25 11:00:53,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:00:53,793.793 INFO    ] Initializing speech engine...
[2026-08-25 11:00:53,805.805 INFO    ] 2026-08-25 11:00:53
[2026-08-25 11:00:54,090.090 INFO    ] 2026-08-25 11:00:54
[2026-08-25 11:00:54,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:00:54,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:00:54,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:00:54,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:00:54,617.617 INFO    ] time= 25/08/2026 11:00:54
[2026-08-25 11:00:54,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:00:54,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:00:54,772.772 INFO    ] No existing commands found in stream
[2026-08-25 11:00:59,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:00:59,801.801 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 11:01:03,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:01:03,144.144 INFO    ] Checking for system updates...
[2026-08-25 11:01:03,193.193 INFO    ] 200
[2026-08-25 11:01:03,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:03,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:01:03,253.253 INFO    ] No update needed
[2026-08-25 11:01:03,256.256 INFO    ] Checking for camera pi updates...
[2026-08-25 11:01:03,302.302 INFO    ] 200
[2026-08-25 11:01:03,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:03,350.350 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:01:03,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:01:03,406.406 INFO    ] No camera update needed
[2026-08-25 11:01:03,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:01:03,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:01:03,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:01:03,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:01:05,463.463 INFO    ] ================================================
[2026-08-25 11:01:05,479.479 INFO    ] Launching Daemon at Tue Aug 25 11:01:05 IST 2026
[2026-08-25 11:01:05,490.490 INFO    ] ================================================
[2026-08-25 11:01:06,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:01:06
[2026-08-25 11:01:06,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:01:06,984.984 INFO    ] Initializing speech engine...
[2026-08-25 11:01:06,993.993 INFO    ] 2026-08-25 11:01:06
[2026-08-25 11:01:07,254.254 INFO    ] 2026-08-25 11:01:07
[2026-08-25 11:01:07,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:01:07,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:01:07,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:01:07,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:01:07,709.709 INFO    ] time= 25/08/2026 11:01:07
[2026-08-25 11:01:07,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:01:07,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:01:07,925.925 INFO    ] No existing commands found in stream
[2026-08-25 11:01:12,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:01:12,953.953 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 11:01:15,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:01:15,761.761 INFO    ] Checking for system updates...
[2026-08-25 11:01:15,796.796 INFO    ] 200
[2026-08-25 11:01:15,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:15,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:01:15,859.859 INFO    ] No update needed
[2026-08-25 11:01:15,862.862 INFO    ] Checking for camera pi updates...
[2026-08-25 11:01:15,896.896 INFO    ] 200
[2026-08-25 11:01:15,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:15,938.938 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:01:15,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:01:15,986.986 INFO    ] No camera update needed
[2026-08-25 11:01:15,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:01:15,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:01:15,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:01:16,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:01:18,041.041 INFO    ] ================================================
[2026-08-25 11:01:18,057.057 INFO    ] Launching Daemon at Tue Aug 25 11:01:18 IST 2026
[2026-08-25 11:01:18,069.069 INFO    ] ================================================
[2026-08-25 11:01:18,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:01:18
[2026-08-25 11:01:19,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:01:19,597.597 INFO    ] Initializing speech engine...
[2026-08-25 11:01:19,610.610 INFO    ] 2026-08-25 11:01:19
[2026-08-25 11:01:19,878.878 INFO    ] 2026-08-25 11:01:19
[2026-08-25 11:01:19,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:01:20,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:01:20,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:01:20,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:01:20,433.433 INFO    ] time= 25/08/2026 11:01:20
[2026-08-25 11:01:20,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:01:20,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:01:20,588.588 INFO    ] No existing commands found in stream
[2026-08-25 11:01:25,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:01:25,607.607 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 11:01:26,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:01:26,917.917 INFO    ] Checking for system updates...
[2026-08-25 11:01:26,957.957 INFO    ] 200
[2026-08-25 11:01:26,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:27,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:01:27,023.023 INFO    ] No update needed
[2026-08-25 11:01:27,026.026 INFO    ] Checking for camera pi updates...
[2026-08-25 11:01:27,063.063 INFO    ] 200
[2026-08-25 11:01:27,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:27,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:01:27,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:01:27,165.165 INFO    ] No camera update needed
[2026-08-25 11:01:27,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:01:27,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:01:27,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:01:27,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:01:29,220.220 INFO    ] ================================================
[2026-08-25 11:01:29,236.236 INFO    ] Launching Daemon at Tue Aug 25 11:01:29 IST 2026
[2026-08-25 11:01:29,247.247 INFO    ] ================================================
[2026-08-25 11:01:29,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:01:29
[2026-08-25 11:01:30,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:01:30,702.702 INFO    ] Initializing speech engine...
[2026-08-25 11:01:30,711.711 INFO    ] 2026-08-25 11:01:30
[2026-08-25 11:01:31,007.007 INFO    ] 2026-08-25 11:01:30
[2026-08-25 11:01:31,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:01:31,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:01:31,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:01:31,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:01:31,362.362 INFO    ] time= 25/08/2026 11:01:31
[2026-08-25 11:01:31,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:01:31,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:01:31,479.479 INFO    ] No existing commands found in stream
[2026-08-25 11:01:36,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:01:36,492.492 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 11:01:37,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:01:37,320.320 INFO    ] Checking for system updates...
[2026-08-25 11:01:37,356.356 INFO    ] 200
[2026-08-25 11:01:37,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:37,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:01:37,414.414 INFO    ] No update needed
[2026-08-25 11:01:37,417.417 INFO    ] Checking for camera pi updates...
[2026-08-25 11:01:37,450.450 INFO    ] 200
[2026-08-25 11:01:37,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:37,493.493 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:01:37,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:01:37,541.541 INFO    ] No camera update needed
[2026-08-25 11:01:37,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:01:37,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:01:37,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:01:37,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:01:39,596.596 INFO    ] ================================================
[2026-08-25 11:01:39,611.611 INFO    ] Launching Daemon at Tue Aug 25 11:01:39 IST 2026
[2026-08-25 11:01:39,623.623 INFO    ] ================================================
[2026-08-25 11:01:40,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:01:40
[2026-08-25 11:01:40,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:01:41,149.149 INFO    ] Initializing speech engine...
[2026-08-25 11:01:41,158.158 INFO    ] 2026-08-25 11:01:41
[2026-08-25 11:01:41,453.453 INFO    ] 2026-08-25 11:01:41
[2026-08-25 11:01:41,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:01:41,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:01:41,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:01:41,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:01:41,844.844 INFO    ] time= 25/08/2026 11:01:41
[2026-08-25 11:01:41,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:01:41,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:01:41,970.970 INFO    ] No existing commands found in stream
[2026-08-25 11:01:46,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:01:46,985.985 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 11:01:51,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:01:51,017.017 INFO    ] Checking for system updates...
[2026-08-25 11:01:51,053.053 INFO    ] 200
[2026-08-25 11:01:51,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:51,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:01:51,111.111 INFO    ] No update needed
[2026-08-25 11:01:51,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 11:01:51,151.151 INFO    ] 200
[2026-08-25 11:01:51,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:01:51,193.193 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:01:51,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:01:51,243.243 INFO    ] No camera update needed
[2026-08-25 11:01:51,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:01:51,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:01:51,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:01:51,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:01:53,297.297 INFO    ] ================================================
[2026-08-25 11:01:53,312.312 INFO    ] Launching Daemon at Tue Aug 25 11:01:53 IST 2026
[2026-08-25 11:01:53,323.323 INFO    ] ================================================
[2026-08-25 11:01:53,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:01:53
[2026-08-25 11:01:54,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:01:54,731.731 INFO    ] Initializing speech engine...
[2026-08-25 11:01:54,737.737 INFO    ] 2026-08-25 11:01:54
[2026-08-25 11:01:55,033.033 INFO    ] 2026-08-25 11:01:54
[2026-08-25 11:01:55,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:01:55,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:01:55,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:01:55,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:01:55,460.460 INFO    ] time= 25/08/2026 11:01:55
[2026-08-25 11:01:55,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:01:55,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:01:55,599.599 INFO    ] No existing commands found in stream
[2026-08-25 11:02:00,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:02:00,627.627 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 11:02:04,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:02:04,298.298 INFO    ] Checking for system updates...
[2026-08-25 11:02:04,333.333 INFO    ] 200
[2026-08-25 11:02:04,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:04,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:04,391.391 INFO    ] No update needed
[2026-08-25 11:02:04,394.394 INFO    ] Checking for camera pi updates...
[2026-08-25 11:02:04,435.435 INFO    ] 200
[2026-08-25 11:02:04,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:04,478.478 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:02:04,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:04,525.525 INFO    ] No camera update needed
[2026-08-25 11:02:04,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:02:04,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:02:04,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:02:04,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:02:06,581.581 INFO    ] ================================================
[2026-08-25 11:02:06,596.596 INFO    ] Launching Daemon at Tue Aug 25 11:02:06 IST 2026
[2026-08-25 11:02:06,607.607 INFO    ] ================================================
[2026-08-25 11:02:07,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:02:07
[2026-08-25 11:02:07,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:02:08,049.049 INFO    ] Initializing speech engine...
[2026-08-25 11:02:08,055.055 INFO    ] 2026-08-25 11:02:08
[2026-08-25 11:02:08,359.359 INFO    ] 2026-08-25 11:02:08
[2026-08-25 11:02:08,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:02:08,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:02:08,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:02:08,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:02:08,791.791 INFO    ] time= 25/08/2026 11:02:08
[2026-08-25 11:02:08,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:02:08,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:02:08,877.877 INFO    ] No existing commands found in stream
[2026-08-25 11:02:13,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:02:13,898.898 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 11:02:17,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:02:17,369.369 INFO    ] Checking for system updates...
[2026-08-25 11:02:17,405.405 INFO    ] 200
[2026-08-25 11:02:17,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:17,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:02:17,492.492 INFO    ] No update needed
[2026-08-25 11:02:17,494.494 INFO    ] Checking for camera pi updates...
[2026-08-25 11:02:17,532.532 INFO    ] 200
[2026-08-25 11:02:17,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:17,575.575 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:02:17,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:02:17,730.730 INFO    ] No camera update needed
[2026-08-25 11:02:17,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:02:17,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:02:17,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:02:17,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:02:19,786.786 INFO    ] ================================================
[2026-08-25 11:02:19,802.802 INFO    ] Launching Daemon at Tue Aug 25 11:02:19 IST 2026
[2026-08-25 11:02:19,813.813 INFO    ] ================================================
[2026-08-25 11:02:20,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:02:20
[2026-08-25 11:02:20,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:02:21,244.244 INFO    ] Initializing speech engine...
[2026-08-25 11:02:21,253.253 INFO    ] 2026-08-25 11:02:21
[2026-08-25 11:02:21,552.552 INFO    ] 2026-08-25 11:02:21
[2026-08-25 11:02:21,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:02:21,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:02:21,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:02:21,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:02:21,981.981 INFO    ] time= 25/08/2026 11:02:21
[2026-08-25 11:02:21,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:02:22,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:02:22,197.197 INFO    ] No existing commands found in stream
[2026-08-25 11:02:27,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:02:27,231.231 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 11:02:30,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:02:30,084.084 INFO    ] Checking for system updates...
[2026-08-25 11:02:30,120.120 INFO    ] 200
[2026-08-25 11:02:30,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:30,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:30,177.177 INFO    ] No update needed
[2026-08-25 11:02:30,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 11:02:30,218.218 INFO    ] 200
[2026-08-25 11:02:30,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:30,260.260 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:02:30,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:30,319.319 INFO    ] No camera update needed
[2026-08-25 11:02:30,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:02:30,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:02:30,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:02:30,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:02:32,378.378 INFO    ] ================================================
[2026-08-25 11:02:32,395.395 INFO    ] Launching Daemon at Tue Aug 25 11:02:32 IST 2026
[2026-08-25 11:02:32,406.406 INFO    ] ================================================
[2026-08-25 11:02:33,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:02:33
[2026-08-25 11:02:33,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:02:34,081.081 INFO    ] Initializing speech engine...
[2026-08-25 11:02:34,091.091 INFO    ] 2026-08-25 11:02:34
[2026-08-25 11:02:34,387.387 INFO    ] 2026-08-25 11:02:34
[2026-08-25 11:02:34,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:02:34,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:02:34,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:02:34,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:02:34,868.868 INFO    ] time= 25/08/2026 11:02:34
[2026-08-25 11:02:34,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:02:34,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:02:35,046.046 INFO    ] No existing commands found in stream
[2026-08-25 11:02:40,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:02:40,080.080 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 11:02:41,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:02:41,201.201 INFO    ] Checking for system updates...
[2026-08-25 11:02:41,239.239 INFO    ] 200
[2026-08-25 11:02:41,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:41,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:41,299.299 INFO    ] No update needed
[2026-08-25 11:02:41,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 11:02:41,337.337 INFO    ] 200
[2026-08-25 11:02:41,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:41,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:02:41,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:41,429.429 INFO    ] No camera update needed
[2026-08-25 11:02:41,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:02:41,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:02:41,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:02:41,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:02:43,483.483 INFO    ] ================================================
[2026-08-25 11:02:43,499.499 INFO    ] Launching Daemon at Tue Aug 25 11:02:43 IST 2026
[2026-08-25 11:02:43,511.511 INFO    ] ================================================
[2026-08-25 11:02:44,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:02:44
[2026-08-25 11:02:44,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:02:44,914.914 INFO    ] Initializing speech engine...
[2026-08-25 11:02:44,931.931 INFO    ] 2026-08-25 11:02:44
[2026-08-25 11:02:45,193.193 INFO    ] 2026-08-25 11:02:45
[2026-08-25 11:02:45,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:02:45,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:02:45,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:02:45,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:02:45,581.581 INFO    ] time= 25/08/2026 11:02:45
[2026-08-25 11:02:45,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:02:45,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:02:45,776.776 INFO    ] No existing commands found in stream
[2026-08-25 11:02:50,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:02:50,805.805 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 11:02:54,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:02:54,114.114 INFO    ] Checking for system updates...
[2026-08-25 11:02:54,150.150 INFO    ] 200
[2026-08-25 11:02:54,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:54,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:54,215.215 INFO    ] No update needed
[2026-08-25 11:02:54,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 11:02:54,251.251 INFO    ] 200
[2026-08-25 11:02:54,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:02:54,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:02:54,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:02:54,341.341 INFO    ] No camera update needed
[2026-08-25 11:02:54,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:02:54,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:02:54,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:02:54,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:02:56,398.398 INFO    ] ================================================
[2026-08-25 11:02:56,414.414 INFO    ] Launching Daemon at Tue Aug 25 11:02:56 IST 2026
[2026-08-25 11:02:56,425.425 INFO    ] ================================================
[2026-08-25 11:02:56,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:02:56
[2026-08-25 11:02:57,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:02:57,835.835 INFO    ] Initializing speech engine...
[2026-08-25 11:02:57,857.857 INFO    ] 2026-08-25 11:02:57
[2026-08-25 11:02:58,108.108 INFO    ] 2026-08-25 11:02:58
[2026-08-25 11:02:58,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:02:58,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:02:58,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:02:58,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:02:58,609.609 INFO    ] time= 25/08/2026 11:02:58
[2026-08-25 11:02:58,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:02:58,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:02:58,808.808 INFO    ] No existing commands found in stream
[2026-08-25 11:03:03,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:03:03,832.832 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 11:03:05,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:03:05,889.889 INFO    ] Checking for system updates...
[2026-08-25 11:03:05,927.927 INFO    ] 200
[2026-08-25 11:03:05,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:05,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:03:05,991.991 INFO    ] No update needed
[2026-08-25 11:03:05,994.994 INFO    ] Checking for camera pi updates...
[2026-08-25 11:03:06,028.028 INFO    ] 200
[2026-08-25 11:03:06,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:06,071.071 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:03:06,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:03:06,123.123 INFO    ] No camera update needed
[2026-08-25 11:03:06,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:03:06,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:03:06,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:03:06,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:03:08,180.180 INFO    ] ================================================
[2026-08-25 11:03:08,196.196 INFO    ] Launching Daemon at Tue Aug 25 11:03:08 IST 2026
[2026-08-25 11:03:08,208.208 INFO    ] ================================================
[2026-08-25 11:03:08,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:03:08
[2026-08-25 11:03:09,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:03:09,911.911 INFO    ] Initializing speech engine...
[2026-08-25 11:03:09,920.920 INFO    ] 2026-08-25 11:03:09
[2026-08-25 11:03:10,197.197 INFO    ] 2026-08-25 11:03:10
[2026-08-25 11:03:10,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:03:10,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:03:10,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:03:10,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:03:10,696.696 INFO    ] time= 25/08/2026 11:03:10
[2026-08-25 11:03:10,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:03:10,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:03:10,891.891 INFO    ] No existing commands found in stream
[2026-08-25 11:03:15,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:03:15,918.918 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 11:03:19,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:03:19,713.713 INFO    ] Checking for system updates...
[2026-08-25 11:03:19,750.750 INFO    ] 200
[2026-08-25 11:03:19,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:19,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:03:19,810.810 INFO    ] No update needed
[2026-08-25 11:03:19,813.813 INFO    ] Checking for camera pi updates...
[2026-08-25 11:03:19,848.848 INFO    ] 200
[2026-08-25 11:03:19,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:19,897.897 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:03:19,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:03:19,953.953 INFO    ] No camera update needed
[2026-08-25 11:03:19,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:03:19,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:03:19,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:03:19,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:03:22,010.010 INFO    ] ================================================
[2026-08-25 11:03:22,026.026 INFO    ] Launching Daemon at Tue Aug 25 11:03:22 IST 2026
[2026-08-25 11:03:22,037.037 INFO    ] ================================================
[2026-08-25 11:03:22,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:03:22
[2026-08-25 11:03:23,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:03:23,718.718 INFO    ] Initializing speech engine...
[2026-08-25 11:03:23,738.738 INFO    ] 2026-08-25 11:03:23
[2026-08-25 11:03:24,018.018 INFO    ] 2026-08-25 11:03:24
[2026-08-25 11:03:24,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:03:24,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:03:24,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:03:24,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:03:24,519.519 INFO    ] time= 25/08/2026 11:03:24
[2026-08-25 11:03:24,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:03:24,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:03:24,742.742 INFO    ] No existing commands found in stream
[2026-08-25 11:03:29,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:03:29,770.770 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 11:03:34,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:03:34,221.221 INFO    ] Checking for system updates...
[2026-08-25 11:03:34,258.258 INFO    ] 200
[2026-08-25 11:03:34,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:34,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:03:34,317.317 INFO    ] No update needed
[2026-08-25 11:03:34,319.319 INFO    ] Checking for camera pi updates...
[2026-08-25 11:03:34,356.356 INFO    ] 200
[2026-08-25 11:03:34,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:34,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:03:34,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:03:34,449.449 INFO    ] No camera update needed
[2026-08-25 11:03:34,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:03:34,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:03:34,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:03:34,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:03:36,506.506 INFO    ] ================================================
[2026-08-25 11:03:36,522.522 INFO    ] Launching Daemon at Tue Aug 25 11:03:36 IST 2026
[2026-08-25 11:03:36,533.533 INFO    ] ================================================
[2026-08-25 11:03:37,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:03:37
[2026-08-25 11:03:37,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:03:38,177.177 INFO    ] Initializing speech engine...
[2026-08-25 11:03:38,183.183 INFO    ] 2026-08-25 11:03:38
[2026-08-25 11:03:38,452.452 INFO    ] 2026-08-25 11:03:38
[2026-08-25 11:03:38,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:03:38,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:03:38,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:03:38,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:03:39,000.000 INFO    ] time= 25/08/2026 11:03:38
[2026-08-25 11:03:39,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:03:39,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:03:39,175.175 INFO    ] No existing commands found in stream
[2026-08-25 11:03:44,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:03:44,201.201 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 11:03:47,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:03:47,453.453 INFO    ] Checking for system updates...
[2026-08-25 11:03:47,499.499 INFO    ] 200
[2026-08-25 11:03:47,502.502 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:47,506.506 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 11:03:47,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 11:03:47,549.549 INFO    ] 200
[2026-08-25 11:03:47,553.553 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:47,556.556 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 11:03:47,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:03:47,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:03:47,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:03:47,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:03:49,617.617 INFO    ] ================================================
[2026-08-25 11:03:49,632.632 INFO    ] Launching Daemon at Tue Aug 25 11:03:49 IST 2026
[2026-08-25 11:03:49,643.643 INFO    ] ================================================
[2026-08-25 11:03:50,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:03:50
[2026-08-25 11:03:50,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:03:51,046.046 INFO    ] Initializing speech engine...
[2026-08-25 11:03:51,053.053 INFO    ] 2026-08-25 11:03:51
[2026-08-25 11:03:51,350.350 INFO    ] 2026-08-25 11:03:51
[2026-08-25 11:03:51,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:03:51,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:03:51,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:03:51,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:03:51,853.853 INFO    ] time= 25/08/2026 11:03:51
[2026-08-25 11:03:51,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:03:51,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:03:52,028.028 INFO    ] No existing commands found in stream
[2026-08-25 11:03:57,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:03:57,048.048 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 11:03:58,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:03:58,121.121 INFO    ] Checking for system updates...
[2026-08-25 11:03:58,161.161 INFO    ] 200
[2026-08-25 11:03:58,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:58,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:03:58,218.218 INFO    ] No update needed
[2026-08-25 11:03:58,221.221 INFO    ] Checking for camera pi updates...
[2026-08-25 11:03:58,254.254 INFO    ] 200
[2026-08-25 11:03:58,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:03:58,298.298 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:03:58,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:03:58,348.348 INFO    ] No camera update needed
[2026-08-25 11:03:58,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:03:58,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:03:58,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:03:58,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:04:00,405.405 INFO    ] ================================================
[2026-08-25 11:04:00,420.420 INFO    ] Launching Daemon at Tue Aug 25 11:04:00 IST 2026
[2026-08-25 11:04:00,436.436 INFO    ] ================================================
[2026-08-25 11:04:01,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:04:01
[2026-08-25 11:04:01,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:04:02,015.015 INFO    ] Initializing speech engine...
[2026-08-25 11:04:02,022.022 INFO    ] 2026-08-25 11:04:02
[2026-08-25 11:04:02,298.298 INFO    ] 2026-08-25 11:04:02
[2026-08-25 11:04:02,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:04:02,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:04:02,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:04:02,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:04:02,761.761 INFO    ] time= 25/08/2026 11:04:02
[2026-08-25 11:04:02,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:04:02,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:04:02,896.896 INFO    ] No existing commands found in stream
[2026-08-25 11:04:07,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:04:07,912.912 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 11:04:08,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:04:08,912.912 INFO    ] Checking for system updates...
[2026-08-25 11:04:08,948.948 INFO    ] 200
[2026-08-25 11:04:08,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:09,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:04:09,013.013 INFO    ] No update needed
[2026-08-25 11:04:09,016.016 INFO    ] Checking for camera pi updates...
[2026-08-25 11:04:09,057.057 INFO    ] 200
[2026-08-25 11:04:09,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:09,102.102 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:04:09,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:04:09,152.152 INFO    ] No camera update needed
[2026-08-25 11:04:09,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:04:09,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:04:09,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:04:09,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:04:11,210.210 INFO    ] ================================================
[2026-08-25 11:04:11,225.225 INFO    ] Launching Daemon at Tue Aug 25 11:04:11 IST 2026
[2026-08-25 11:04:11,236.236 INFO    ] ================================================
[2026-08-25 11:04:11,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:04:11
[2026-08-25 11:04:12,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:04:12,661.661 INFO    ] Initializing speech engine...
[2026-08-25 11:04:12,686.686 INFO    ] 2026-08-25 11:04:12
[2026-08-25 11:04:12,952.952 INFO    ] 2026-08-25 11:04:12
[2026-08-25 11:04:12,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:04:13,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:04:13,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:04:13,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:04:13,365.365 INFO    ] time= 25/08/2026 11:04:13
[2026-08-25 11:04:13,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:04:13,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:04:13,527.527 INFO    ] No existing commands found in stream
[2026-08-25 11:04:18,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:04:18,549.549 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 11:04:20,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:04:20,164.164 INFO    ] Checking for system updates...
[2026-08-25 11:04:20,199.199 INFO    ] 200
[2026-08-25 11:04:20,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:20,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:04:20,265.265 INFO    ] No update needed
[2026-08-25 11:04:20,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 11:04:20,300.300 INFO    ] 200
[2026-08-25 11:04:20,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:20,342.342 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:04:20,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:04:20,492.492 INFO    ] No camera update needed
[2026-08-25 11:04:20,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:04:20,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:04:20,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:04:20,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:04:22,547.547 INFO    ] ================================================
[2026-08-25 11:04:22,562.562 INFO    ] Launching Daemon at Tue Aug 25 11:04:22 IST 2026
[2026-08-25 11:04:22,574.574 INFO    ] ================================================
[2026-08-25 11:04:23,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:04:23
[2026-08-25 11:04:23,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:04:24,031.031 INFO    ] Initializing speech engine...
[2026-08-25 11:04:24,039.039 INFO    ] 2026-08-25 11:04:24
[2026-08-25 11:04:24,292.292 INFO    ] 2026-08-25 11:04:24
[2026-08-25 11:04:24,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:04:24,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:04:24,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:04:24,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:04:24,765.765 INFO    ] time= 25/08/2026 11:04:24
[2026-08-25 11:04:24,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:04:24,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:04:24,964.964 INFO    ] No existing commands found in stream
[2026-08-25 11:04:29,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:04:29,992.992 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 11:04:33,285.285 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:04:33,287.287 INFO    ] Checking for system updates...
[2026-08-25 11:04:33,322.322 INFO    ] 200
[2026-08-25 11:04:33,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:33,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:04:33,379.379 INFO    ] No update needed
[2026-08-25 11:04:33,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 11:04:33,418.418 INFO    ] 200
[2026-08-25 11:04:33,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:33,461.461 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:04:33,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:04:33,508.508 INFO    ] No camera update needed
[2026-08-25 11:04:33,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:04:33,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:04:33,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:04:33,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:04:35,563.563 INFO    ] ================================================
[2026-08-25 11:04:35,579.579 INFO    ] Launching Daemon at Tue Aug 25 11:04:35 IST 2026
[2026-08-25 11:04:35,590.590 INFO    ] ================================================
[2026-08-25 11:04:36,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:04:36
[2026-08-25 11:04:36,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:04:37,004.004 INFO    ] Initializing speech engine...
[2026-08-25 11:04:37,012.012 INFO    ] 2026-08-25 11:04:37
[2026-08-25 11:04:37,304.304 INFO    ] 2026-08-25 11:04:37
[2026-08-25 11:04:37,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:04:37,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:04:37,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:04:37,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:04:37,717.717 INFO    ] time= 25/08/2026 11:04:37
[2026-08-25 11:04:37,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:04:37,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:04:37,917.917 INFO    ] No existing commands found in stream
[2026-08-25 11:04:42,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:04:42,947.947 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 11:04:44,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:04:44,749.749 INFO    ] Checking for system updates...
[2026-08-25 11:04:44,784.784 INFO    ] 200
[2026-08-25 11:04:44,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:44,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:04:44,846.846 INFO    ] No update needed
[2026-08-25 11:04:44,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 11:04:44,882.882 INFO    ] 200
[2026-08-25 11:04:44,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:44,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:04:44,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:04:44,971.971 INFO    ] No camera update needed
[2026-08-25 11:04:44,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:04:44,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:04:44,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:04:44,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:04:47,026.026 INFO    ] ================================================
[2026-08-25 11:04:47,041.041 INFO    ] Launching Daemon at Tue Aug 25 11:04:47 IST 2026
[2026-08-25 11:04:47,052.052 INFO    ] ================================================
[2026-08-25 11:04:47,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:04:47
[2026-08-25 11:04:48,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:04:48,595.595 INFO    ] Initializing speech engine...
[2026-08-25 11:04:48,609.609 INFO    ] 2026-08-25 11:04:48
[2026-08-25 11:04:48,891.891 INFO    ] 2026-08-25 11:04:48
[2026-08-25 11:04:48,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:04:49,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:04:49,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:04:49,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:04:49,418.418 INFO    ] time= 25/08/2026 11:04:49
[2026-08-25 11:04:49,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:04:49,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:04:49,573.573 INFO    ] No existing commands found in stream
[2026-08-25 11:04:54,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:04:54,590.590 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 11:04:58,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:04:58,117.117 INFO    ] Checking for system updates...
[2026-08-25 11:04:58,153.153 INFO    ] 200
[2026-08-25 11:04:58,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:58,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:04:58,212.212 INFO    ] No update needed
[2026-08-25 11:04:58,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 11:04:58,248.248 INFO    ] 200
[2026-08-25 11:04:58,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:04:58,291.291 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:04:58,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:04:58,341.341 INFO    ] No camera update needed
[2026-08-25 11:04:58,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:04:58,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:04:58,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:04:58,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:05:00,399.399 INFO    ] ================================================
[2026-08-25 11:05:00,414.414 INFO    ] Launching Daemon at Tue Aug 25 11:05:00 IST 2026
[2026-08-25 11:05:00,426.426 INFO    ] ================================================
[2026-08-25 11:05:01,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:05:01
[2026-08-25 11:05:01,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:05:02,299.299 INFO    ] Initializing speech engine...
[2026-08-25 11:05:02,308.308 INFO    ] 2026-08-25 11:05:02
[2026-08-25 11:05:02,583.583 INFO    ] 2026-08-25 11:05:02
[2026-08-25 11:05:02,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:05:02,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:05:02,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:05:03,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:05:03,115.115 INFO    ] time= 25/08/2026 11:05:03
[2026-08-25 11:05:03,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:05:03,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:05:03,262.262 INFO    ] No existing commands found in stream
[2026-08-25 11:05:08,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:05:08,296.296 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 11:05:09,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:05:09,901.901 INFO    ] Checking for system updates...
[2026-08-25 11:05:09,937.937 INFO    ] 200
[2026-08-25 11:05:09,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:09,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:05:09,994.994 INFO    ] No update needed
[2026-08-25 11:05:09,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 11:05:10,032.032 INFO    ] 200
[2026-08-25 11:05:10,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:10,082.082 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:05:10,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:05:10,134.134 INFO    ] No camera update needed
[2026-08-25 11:05:10,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:05:10,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:05:10,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:05:10,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:05:12,188.188 INFO    ] ================================================
[2026-08-25 11:05:12,205.205 INFO    ] Launching Daemon at Tue Aug 25 11:05:12 IST 2026
[2026-08-25 11:05:12,216.216 INFO    ] ================================================
[2026-08-25 11:05:12,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:05:12
[2026-08-25 11:05:13,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:05:13,629.629 INFO    ] Initializing speech engine...
[2026-08-25 11:05:13,638.638 INFO    ] 2026-08-25 11:05:13
[2026-08-25 11:05:13,896.896 INFO    ] 2026-08-25 11:05:13
[2026-08-25 11:05:13,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:05:14,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:05:14,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:05:14,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:05:14,283.283 INFO    ] time= 25/08/2026 11:05:14
[2026-08-25 11:05:14,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:05:14,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:05:14,395.395 INFO    ] No existing commands found in stream
[2026-08-25 11:05:19,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:05:19,410.410 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 11:05:21,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:05:21,562.562 INFO    ] Checking for system updates...
[2026-08-25 11:05:21,597.597 INFO    ] 200
[2026-08-25 11:05:21,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:21,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:05:21,658.658 INFO    ] No update needed
[2026-08-25 11:05:21,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 11:05:21,693.693 INFO    ] 200
[2026-08-25 11:05:21,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:21,736.736 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:05:21,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:05:21,787.787 INFO    ] No camera update needed
[2026-08-25 11:05:21,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:05:21,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:05:21,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:05:21,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:05:23,841.841 INFO    ] ================================================
[2026-08-25 11:05:23,856.856 INFO    ] Launching Daemon at Tue Aug 25 11:05:23 IST 2026
[2026-08-25 11:05:23,868.868 INFO    ] ================================================
[2026-08-25 11:05:24,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:05:24
[2026-08-25 11:05:25,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:05:25,326.326 INFO    ] Initializing speech engine...
[2026-08-25 11:05:25,332.332 INFO    ] 2026-08-25 11:05:25
[2026-08-25 11:05:25,628.628 INFO    ] 2026-08-25 11:05:25
[2026-08-25 11:05:25,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:05:25,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:05:25,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:05:26,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:05:26,009.009 INFO    ] time= 25/08/2026 11:05:26
[2026-08-25 11:05:26,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:05:26,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:05:26,137.137 INFO    ] No existing commands found in stream
[2026-08-25 11:05:31,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:05:31,175.175 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 11:05:35,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:05:35,530.530 INFO    ] Checking for system updates...
[2026-08-25 11:05:35,566.566 INFO    ] 200
[2026-08-25 11:05:35,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:35,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:05:35,623.623 INFO    ] No update needed
[2026-08-25 11:05:35,625.625 INFO    ] Checking for camera pi updates...
[2026-08-25 11:05:35,658.658 INFO    ] 200
[2026-08-25 11:05:35,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:35,706.706 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:05:35,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:05:35,758.758 INFO    ] No camera update needed
[2026-08-25 11:05:35,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:05:35,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:05:35,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:05:35,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:05:37,813.813 INFO    ] ================================================
[2026-08-25 11:05:37,828.828 INFO    ] Launching Daemon at Tue Aug 25 11:05:37 IST 2026
[2026-08-25 11:05:37,840.840 INFO    ] ================================================
[2026-08-25 11:05:38,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:05:38
[2026-08-25 11:05:39,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:05:39,272.272 INFO    ] Initializing speech engine...
[2026-08-25 11:05:39,290.290 INFO    ] 2026-08-25 11:05:39
[2026-08-25 11:05:39,564.564 INFO    ] 2026-08-25 11:05:39
[2026-08-25 11:05:39,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:05:39,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:05:39,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:05:39,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:05:39,958.958 INFO    ] time= 25/08/2026 11:05:39
[2026-08-25 11:05:39,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:05:39,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:05:40,065.065 INFO    ] No existing commands found in stream
[2026-08-25 11:05:45,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:05:45,080.080 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 11:05:49,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:05:49,478.478 INFO    ] Checking for system updates...
[2026-08-25 11:05:49,518.518 INFO    ] 200
[2026-08-25 11:05:49,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:49,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:05:49,577.577 INFO    ] No update needed
[2026-08-25 11:05:49,579.579 INFO    ] Checking for camera pi updates...
[2026-08-25 11:05:49,616.616 INFO    ] 200
[2026-08-25 11:05:49,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:05:49,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:05:49,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:05:49,719.719 INFO    ] No camera update needed
[2026-08-25 11:05:49,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:05:49,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:05:49,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:05:49,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:05:51,776.776 INFO    ] ================================================
[2026-08-25 11:05:51,791.791 INFO    ] Launching Daemon at Tue Aug 25 11:05:51 IST 2026
[2026-08-25 11:05:51,802.802 INFO    ] ================================================
[2026-08-25 11:05:52,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:05:52
[2026-08-25 11:05:52,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:05:53,219.219 INFO    ] Initializing speech engine...
[2026-08-25 11:05:53,226.226 INFO    ] 2026-08-25 11:05:53
[2026-08-25 11:05:53,526.526 INFO    ] 2026-08-25 11:05:53
[2026-08-25 11:05:53,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:05:53,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:05:53,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:05:53,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:05:53,946.946 INFO    ] time= 25/08/2026 11:05:53
[2026-08-25 11:05:53,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:05:53,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:05:54,132.132 INFO    ] No existing commands found in stream
[2026-08-25 11:05:59,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:05:59,160.160 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 11:06:03,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:06:03,258.258 INFO    ] Checking for system updates...
[2026-08-25 11:06:03,301.301 INFO    ] 200
[2026-08-25 11:06:03,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:03,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:06:03,376.376 INFO    ] No update needed
[2026-08-25 11:06:03,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 11:06:03,415.415 INFO    ] 200
[2026-08-25 11:06:03,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:03,460.460 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:06:03,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:06:03,517.517 INFO    ] No camera update needed
[2026-08-25 11:06:03,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:06:03,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:06:03,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:06:03,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:06:05,576.576 INFO    ] ================================================
[2026-08-25 11:06:05,591.591 INFO    ] Launching Daemon at Tue Aug 25 11:06:05 IST 2026
[2026-08-25 11:06:05,602.602 INFO    ] ================================================
[2026-08-25 11:06:06,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:06:06
[2026-08-25 11:06:06,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:06:07,096.096 INFO    ] Initializing speech engine...
[2026-08-25 11:06:07,107.107 INFO    ] 2026-08-25 11:06:07
[2026-08-25 11:06:07,394.394 INFO    ] 2026-08-25 11:06:07
[2026-08-25 11:06:07,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:06:07,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:06:07,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:06:07,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:06:07,942.942 INFO    ] time= 25/08/2026 11:06:07
[2026-08-25 11:06:07,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:06:07,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:06:08,098.098 INFO    ] No existing commands found in stream
[2026-08-25 11:06:13,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:06:13,121.121 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 11:06:14,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:06:14,561.561 INFO    ] Checking for system updates...
[2026-08-25 11:06:14,598.598 INFO    ] 200
[2026-08-25 11:06:14,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:14,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:14,658.658 INFO    ] No update needed
[2026-08-25 11:06:14,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 11:06:14,700.700 INFO    ] 200
[2026-08-25 11:06:14,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:14,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:06:14,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:14,796.796 INFO    ] No camera update needed
[2026-08-25 11:06:14,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:06:14,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:06:14,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:06:14,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:06:16,851.851 INFO    ] ================================================
[2026-08-25 11:06:16,867.867 INFO    ] Launching Daemon at Tue Aug 25 11:06:16 IST 2026
[2026-08-25 11:06:16,878.878 INFO    ] ================================================
[2026-08-25 11:06:17,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:06:17
[2026-08-25 11:06:18,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:06:18,326.326 INFO    ] Initializing speech engine...
[2026-08-25 11:06:18,335.335 INFO    ] 2026-08-25 11:06:18
[2026-08-25 11:06:18,581.581 INFO    ] 2026-08-25 11:06:18
[2026-08-25 11:06:18,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:06:18,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:06:18,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:06:19,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:06:19,069.069 INFO    ] time= 25/08/2026 11:06:19
[2026-08-25 11:06:19,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:06:19,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:06:19,273.273 INFO    ] No existing commands found in stream
[2026-08-25 11:06:24,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:06:24,298.298 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 11:06:26,716.716 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:06:26,719.719 INFO    ] Checking for system updates...
[2026-08-25 11:06:26,755.755 INFO    ] 200
[2026-08-25 11:06:26,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:26,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:26,820.820 INFO    ] No update needed
[2026-08-25 11:06:26,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 11:06:26,857.857 INFO    ] 200
[2026-08-25 11:06:26,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:26,904.904 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:06:27,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:27,053.053 INFO    ] No camera update needed
[2026-08-25 11:06:27,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:06:27,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:06:27,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:06:27,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:06:29,111.111 INFO    ] ================================================
[2026-08-25 11:06:29,127.127 INFO    ] Launching Daemon at Tue Aug 25 11:06:29 IST 2026
[2026-08-25 11:06:29,138.138 INFO    ] ================================================
[2026-08-25 11:06:29,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:06:29
[2026-08-25 11:06:30,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:06:30,760.760 INFO    ] Initializing speech engine...
[2026-08-25 11:06:30,771.771 INFO    ] 2026-08-25 11:06:30
[2026-08-25 11:06:31,045.045 INFO    ] 2026-08-25 11:06:31
[2026-08-25 11:06:31,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:06:31,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:06:31,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:06:31,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:06:31,529.529 INFO    ] time= 25/08/2026 11:06:31
[2026-08-25 11:06:31,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:06:31,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:06:31,750.750 INFO    ] No existing commands found in stream
[2026-08-25 11:06:36,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:06:36,787.787 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 11:06:39,611.611 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:06:39,614.614 INFO    ] Checking for system updates...
[2026-08-25 11:06:39,650.650 INFO    ] 200
[2026-08-25 11:06:39,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:39,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:39,707.707 INFO    ] No update needed
[2026-08-25 11:06:39,710.710 INFO    ] Checking for camera pi updates...
[2026-08-25 11:06:39,747.747 INFO    ] 200
[2026-08-25 11:06:39,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:39,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:06:39,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:39,835.835 INFO    ] No camera update needed
[2026-08-25 11:06:39,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:06:39,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:06:39,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:06:39,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:06:41,889.889 INFO    ] ================================================
[2026-08-25 11:06:41,905.905 INFO    ] Launching Daemon at Tue Aug 25 11:06:41 IST 2026
[2026-08-25 11:06:41,916.916 INFO    ] ================================================
[2026-08-25 11:06:42,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:06:42
[2026-08-25 11:06:43,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:06:43,495.495 INFO    ] Initializing speech engine...
[2026-08-25 11:06:43,501.501 INFO    ] 2026-08-25 11:06:43
[2026-08-25 11:06:43,763.763 INFO    ] 2026-08-25 11:06:43
[2026-08-25 11:06:43,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:06:44,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:06:44,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:06:44,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:06:44,312.312 INFO    ] time= 25/08/2026 11:06:44
[2026-08-25 11:06:44,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:06:44,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:06:44,468.468 INFO    ] No existing commands found in stream
[2026-08-25 11:06:49,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:06:49,483.483 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 11:06:51,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:06:51,782.782 INFO    ] Checking for system updates...
[2026-08-25 11:06:51,817.817 INFO    ] 200
[2026-08-25 11:06:51,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:51,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:51,874.874 INFO    ] No update needed
[2026-08-25 11:06:51,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 11:06:51,909.909 INFO    ] 200
[2026-08-25 11:06:51,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:06:51,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:06:52,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:06:52,004.004 INFO    ] No camera update needed
[2026-08-25 11:06:52,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:06:52,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:06:52,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:06:52,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:06:54,059.059 INFO    ] ================================================
[2026-08-25 11:06:54,074.074 INFO    ] Launching Daemon at Tue Aug 25 11:06:54 IST 2026
[2026-08-25 11:06:54,085.085 INFO    ] ================================================
[2026-08-25 11:06:54,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:06:54
[2026-08-25 11:06:55,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:06:55,711.711 INFO    ] Initializing speech engine...
[2026-08-25 11:06:55,725.725 INFO    ] 2026-08-25 11:06:55
[2026-08-25 11:06:56,033.033 INFO    ] 2026-08-25 11:06:56
[2026-08-25 11:06:56,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:06:56,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:06:56,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:06:56,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:06:56,553.553 INFO    ] time= 25/08/2026 11:06:56
[2026-08-25 11:06:56,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:06:56,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:06:56,712.712 INFO    ] No existing commands found in stream
[2026-08-25 11:07:01,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:07:01,734.734 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 11:07:03,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:07:03,612.612 INFO    ] Checking for system updates...
[2026-08-25 11:07:03,652.652 INFO    ] 200
[2026-08-25 11:07:03,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:03,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:07:03,711.711 INFO    ] No update needed
[2026-08-25 11:07:03,713.713 INFO    ] Checking for camera pi updates...
[2026-08-25 11:07:03,747.747 INFO    ] 200
[2026-08-25 11:07:03,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:03,795.795 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:07:03,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:07:03,855.855 INFO    ] No camera update needed
[2026-08-25 11:07:03,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:07:03,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:07:03,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:07:03,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:07:05,912.912 INFO    ] ================================================
[2026-08-25 11:07:05,928.928 INFO    ] Launching Daemon at Tue Aug 25 11:07:05 IST 2026
[2026-08-25 11:07:05,939.939 INFO    ] ================================================
[2026-08-25 11:07:06,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:07:06
[2026-08-25 11:07:07,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:07:07,360.360 INFO    ] Initializing speech engine...
[2026-08-25 11:07:07,368.368 INFO    ] 2026-08-25 11:07:07
[2026-08-25 11:07:07,655.655 INFO    ] 2026-08-25 11:07:07
[2026-08-25 11:07:07,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:07:07,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:07:07,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:07:08,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:07:08,062.062 INFO    ] time= 25/08/2026 11:07:08
[2026-08-25 11:07:08,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:07:08,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:07:08,148.148 INFO    ] No existing commands found in stream
[2026-08-25 11:07:13,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:07:13,191.191 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 11:07:17,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:07:17,581.581 INFO    ] Checking for system updates...
[2026-08-25 11:07:17,617.617 INFO    ] 200
[2026-08-25 11:07:17,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:17,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:07:17,677.677 INFO    ] No update needed
[2026-08-25 11:07:17,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 11:07:17,716.716 INFO    ] 200
[2026-08-25 11:07:17,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:17,758.758 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:07:17,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:07:17,805.805 INFO    ] No camera update needed
[2026-08-25 11:07:17,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:07:17,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:07:17,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:07:17,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:07:19,860.860 INFO    ] ================================================
[2026-08-25 11:07:19,875.875 INFO    ] Launching Daemon at Tue Aug 25 11:07:19 IST 2026
[2026-08-25 11:07:19,887.887 INFO    ] ================================================
[2026-08-25 11:07:20,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:07:20
[2026-08-25 11:07:21,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:07:21,291.291 INFO    ] Initializing speech engine...
[2026-08-25 11:07:21,315.315 INFO    ] 2026-08-25 11:07:21
[2026-08-25 11:07:21,580.580 INFO    ] 2026-08-25 11:07:21
[2026-08-25 11:07:21,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:07:21,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:07:21,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:07:21,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:07:21,958.958 INFO    ] time= 25/08/2026 11:07:21
[2026-08-25 11:07:21,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:07:21,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:07:22,064.064 INFO    ] No existing commands found in stream
[2026-08-25 11:07:27,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:07:27,097.097 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 11:07:31,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:07:31,290.290 INFO    ] Checking for system updates...
[2026-08-25 11:07:31,325.325 INFO    ] 200
[2026-08-25 11:07:31,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:31,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:07:31,382.382 INFO    ] No update needed
[2026-08-25 11:07:31,385.385 INFO    ] Checking for camera pi updates...
[2026-08-25 11:07:31,420.420 INFO    ] 200
[2026-08-25 11:07:31,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:31,465.465 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:07:31,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:07:31,521.521 INFO    ] No camera update needed
[2026-08-25 11:07:31,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:07:31,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:07:31,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:07:31,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:07:33,579.579 INFO    ] ================================================
[2026-08-25 11:07:33,595.595 INFO    ] Launching Daemon at Tue Aug 25 11:07:33 IST 2026
[2026-08-25 11:07:33,606.606 INFO    ] ================================================
[2026-08-25 11:07:34,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:07:34
[2026-08-25 11:07:34,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:07:35,066.066 INFO    ] Initializing speech engine...
[2026-08-25 11:07:35,073.073 INFO    ] 2026-08-25 11:07:35
[2026-08-25 11:07:35,335.335 INFO    ] 2026-08-25 11:07:35
[2026-08-25 11:07:35,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:07:35,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:07:35,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:07:35,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:07:35,807.807 INFO    ] time= 25/08/2026 11:07:35
[2026-08-25 11:07:35,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:07:35,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:07:36,021.021 INFO    ] No existing commands found in stream
[2026-08-25 11:07:41,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:07:41,045.045 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 11:07:44,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:07:44,352.352 INFO    ] Checking for system updates...
[2026-08-25 11:07:44,390.390 INFO    ] 200
[2026-08-25 11:07:44,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:44,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:07:44,447.447 INFO    ] No update needed
[2026-08-25 11:07:44,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 11:07:44,483.483 INFO    ] 200
[2026-08-25 11:07:44,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:44,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:07:44,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:07:44,575.575 INFO    ] No camera update needed
[2026-08-25 11:07:44,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:07:44,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:07:44,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:07:44,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:07:46,630.630 INFO    ] ================================================
[2026-08-25 11:07:46,646.646 INFO    ] Launching Daemon at Tue Aug 25 11:07:46 IST 2026
[2026-08-25 11:07:46,657.657 INFO    ] ================================================
[2026-08-25 11:07:47,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:07:47
[2026-08-25 11:07:47,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:07:48,085.085 INFO    ] Initializing speech engine...
[2026-08-25 11:07:48,098.098 INFO    ] 2026-08-25 11:07:48
[2026-08-25 11:07:48,359.359 INFO    ] 2026-08-25 11:07:48
[2026-08-25 11:07:48,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:07:48,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:07:48,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:07:48,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:07:48,737.737 INFO    ] time= 25/08/2026 11:07:48
[2026-08-25 11:07:48,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:07:48,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:07:48,839.839 INFO    ] No existing commands found in stream
[2026-08-25 11:07:53,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:07:53,855.855 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 11:07:56,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:07:56,710.710 INFO    ] Checking for system updates...
[2026-08-25 11:07:56,745.745 INFO    ] 200
[2026-08-25 11:07:56,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:56,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:07:56,806.806 INFO    ] No update needed
[2026-08-25 11:07:56,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 11:07:56,841.841 INFO    ] 200
[2026-08-25 11:07:56,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:07:56,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:07:56,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:07:56,929.929 INFO    ] No camera update needed
[2026-08-25 11:07:56,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:07:56,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:07:56,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:07:56,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:07:58,984.984 INFO    ] ================================================
[2026-08-25 11:07:59,999.999 INFO    ] Launching Daemon at Tue Aug 25 11:07:58 IST 2026
[2026-08-25 11:07:59,011.011 INFO    ] ================================================
[2026-08-25 11:07:59,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:07:59
[2026-08-25 11:08:00,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:08:00,447.447 INFO    ] Initializing speech engine...
[2026-08-25 11:08:00,465.465 INFO    ] 2026-08-25 11:08:00
[2026-08-25 11:08:00,728.728 INFO    ] 2026-08-25 11:08:00
[2026-08-25 11:08:00,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:08:00,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:08:01,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:08:01,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:08:01,200.200 INFO    ] time= 25/08/2026 11:08:01
[2026-08-25 11:08:01,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:08:01,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:08:01,470.470 INFO    ] No existing commands found in stream
[2026-08-25 11:08:06,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:08:06,516.516 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 11:08:10,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:08:10,861.861 INFO    ] Checking for system updates...
[2026-08-25 11:08:10,898.898 INFO    ] 200
[2026-08-25 11:08:10,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:10,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:08:10,956.956 INFO    ] No update needed
[2026-08-25 11:08:10,958.958 INFO    ] Checking for camera pi updates...
[2026-08-25 11:08:10,992.992 INFO    ] 200
[2026-08-25 11:08:10,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:11,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:08:11,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:08:11,088.088 INFO    ] No camera update needed
[2026-08-25 11:08:11,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:08:11,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:08:11,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:08:11,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:08:13,143.143 INFO    ] ================================================
[2026-08-25 11:08:13,159.159 INFO    ] Launching Daemon at Tue Aug 25 11:08:13 IST 2026
[2026-08-25 11:08:13,170.170 INFO    ] ================================================
[2026-08-25 11:08:13,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:08:13
[2026-08-25 11:08:14,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:08:14,719.719 INFO    ] Initializing speech engine...
[2026-08-25 11:08:14,728.728 INFO    ] 2026-08-25 11:08:14
[2026-08-25 11:08:14,998.998 INFO    ] 2026-08-25 11:08:14
[2026-08-25 11:08:15,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:08:15,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:08:15,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:08:15,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:08:15,560.560 INFO    ] time= 25/08/2026 11:08:15
[2026-08-25 11:08:15,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:08:15,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:08:15,705.705 INFO    ] No existing commands found in stream
[2026-08-25 11:08:20,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:08:20,729.729 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 11:08:24,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:08:24,439.439 INFO    ] Checking for system updates...
[2026-08-25 11:08:24,475.475 INFO    ] 200
[2026-08-25 11:08:24,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:24,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:08:24,533.533 INFO    ] No update needed
[2026-08-25 11:08:24,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 11:08:24,570.570 INFO    ] 200
[2026-08-25 11:08:24,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:24,613.613 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:08:24,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:08:24,674.674 INFO    ] No camera update needed
[2026-08-25 11:08:24,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:08:24,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:08:24,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:08:24,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:08:26,734.734 INFO    ] ================================================
[2026-08-25 11:08:26,750.750 INFO    ] Launching Daemon at Tue Aug 25 11:08:26 IST 2026
[2026-08-25 11:08:26,762.762 INFO    ] ================================================
[2026-08-25 11:08:27,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:08:27
[2026-08-25 11:08:28,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:08:28,363.363 INFO    ] Initializing speech engine...
[2026-08-25 11:08:28,376.376 INFO    ] 2026-08-25 11:08:28
[2026-08-25 11:08:28,687.687 INFO    ] 2026-08-25 11:08:28
[2026-08-25 11:08:28,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:08:28,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:08:28,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:08:29,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:08:29,187.187 INFO    ] time= 25/08/2026 11:08:29
[2026-08-25 11:08:29,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:08:29,229.229 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:08:29,344.344 INFO    ] No existing commands found in stream
[2026-08-25 11:08:34,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:08:34,376.376 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 11:08:37,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:08:37,133.133 INFO    ] Checking for system updates...
[2026-08-25 11:08:37,169.169 INFO    ] 200
[2026-08-25 11:08:37,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:37,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:08:37,232.232 INFO    ] No update needed
[2026-08-25 11:08:37,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 11:08:37,269.269 INFO    ] 200
[2026-08-25 11:08:37,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:37,316.316 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:08:37,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:08:37,366.366 INFO    ] No camera update needed
[2026-08-25 11:08:37,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:08:37,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:08:37,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:08:37,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:08:39,424.424 INFO    ] ================================================
[2026-08-25 11:08:39,439.439 INFO    ] Launching Daemon at Tue Aug 25 11:08:39 IST 2026
[2026-08-25 11:08:39,450.450 INFO    ] ================================================
[2026-08-25 11:08:40,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:08:40
[2026-08-25 11:08:40,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:08:40,843.843 INFO    ] Initializing speech engine...
[2026-08-25 11:08:40,864.864 INFO    ] 2026-08-25 11:08:40
[2026-08-25 11:08:41,122.122 INFO    ] 2026-08-25 11:08:41
[2026-08-25 11:08:41,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:08:41,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:08:41,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:08:41,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:08:41,599.599 INFO    ] time= 25/08/2026 11:08:41
[2026-08-25 11:08:41,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:08:41,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:08:41,830.830 INFO    ] No existing commands found in stream
[2026-08-25 11:08:46,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:08:46,855.855 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 11:08:49,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:08:49,282.282 INFO    ] Checking for system updates...
[2026-08-25 11:08:49,319.319 INFO    ] 200
[2026-08-25 11:08:49,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:49,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:08:49,377.377 INFO    ] No update needed
[2026-08-25 11:08:49,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 11:08:49,413.413 INFO    ] 200
[2026-08-25 11:08:49,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:08:49,456.456 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:08:49,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:08:49,515.515 INFO    ] No camera update needed
[2026-08-25 11:08:49,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:08:49,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:08:49,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:08:49,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:08:51,571.571 INFO    ] ================================================
[2026-08-25 11:08:51,586.586 INFO    ] Launching Daemon at Tue Aug 25 11:08:51 IST 2026
[2026-08-25 11:08:51,597.597 INFO    ] ================================================
[2026-08-25 11:08:52,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:08:52
[2026-08-25 11:08:52,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:08:53,000.000 INFO    ] Initializing speech engine...
[2026-08-25 11:08:53,019.019 INFO    ] 2026-08-25 11:08:53
[2026-08-25 11:08:53,268.268 INFO    ] 2026-08-25 11:08:53
[2026-08-25 11:08:53,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:08:53,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:08:53,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:08:53,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:08:53,642.642 INFO    ] time= 25/08/2026 11:08:53
[2026-08-25 11:08:53,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:08:53,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:08:53,819.819 INFO    ] No existing commands found in stream
[2026-08-25 11:08:58,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:08:58,852.852 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 11:09:02,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:09:02,472.472 INFO    ] Checking for system updates...
[2026-08-25 11:09:02,516.516 INFO    ] 200
[2026-08-25 11:09:02,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:02,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:02,582.582 INFO    ] No update needed
[2026-08-25 11:09:02,585.585 INFO    ] Checking for camera pi updates...
[2026-08-25 11:09:02,622.622 INFO    ] 200
[2026-08-25 11:09:02,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:02,675.675 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:09:02,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:02,749.749 INFO    ] No camera update needed
[2026-08-25 11:09:02,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:09:02,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:09:02,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:09:02,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:09:04,809.809 INFO    ] ================================================
[2026-08-25 11:09:04,824.824 INFO    ] Launching Daemon at Tue Aug 25 11:09:04 IST 2026
[2026-08-25 11:09:04,834.834 INFO    ] ================================================
[2026-08-25 11:09:05,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:09:05
[2026-08-25 11:09:06,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:09:06,424.424 INFO    ] Initializing speech engine...
[2026-08-25 11:09:06,429.429 INFO    ] 2026-08-25 11:09:06
[2026-08-25 11:09:06,719.719 INFO    ] 2026-08-25 11:09:06
[2026-08-25 11:09:06,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:09:06,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:09:06,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:09:07,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:09:07,201.201 INFO    ] time= 25/08/2026 11:09:07
[2026-08-25 11:09:07,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:09:07,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:09:07,410.410 INFO    ] No existing commands found in stream
[2026-08-25 11:09:12,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:09:12,429.429 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 11:09:13,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:09:13,494.494 INFO    ] Checking for system updates...
[2026-08-25 11:09:13,531.531 INFO    ] 200
[2026-08-25 11:09:13,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:13,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:09:13,589.589 INFO    ] No update needed
[2026-08-25 11:09:13,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 11:09:13,625.625 INFO    ] 200
[2026-08-25 11:09:13,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:13,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:09:13,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:09:13,726.726 INFO    ] No camera update needed
[2026-08-25 11:09:13,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:09:13,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:09:13,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:09:13,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:09:15,784.784 INFO    ] ================================================
[2026-08-25 11:09:15,799.799 INFO    ] Launching Daemon at Tue Aug 25 11:09:15 IST 2026
[2026-08-25 11:09:15,809.809 INFO    ] ================================================
[2026-08-25 11:09:16,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:09:16
[2026-08-25 11:09:17,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:09:17,391.391 INFO    ] Initializing speech engine...
[2026-08-25 11:09:17,401.401 INFO    ] 2026-08-25 11:09:17
[2026-08-25 11:09:17,670.670 INFO    ] 2026-08-25 11:09:17
[2026-08-25 11:09:17,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:09:17,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:09:17,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:09:18,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:09:18,232.232 INFO    ] time= 25/08/2026 11:09:18
[2026-08-25 11:09:18,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:09:18,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:09:18,396.396 INFO    ] No existing commands found in stream
[2026-08-25 11:09:23,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:09:23,426.426 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 11:09:27,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:09:27,503.503 INFO    ] Checking for system updates...
[2026-08-25 11:09:27,540.540 INFO    ] 200
[2026-08-25 11:09:27,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:27,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:27,599.599 INFO    ] No update needed
[2026-08-25 11:09:27,601.601 INFO    ] Checking for camera pi updates...
[2026-08-25 11:09:27,636.636 INFO    ] 200
[2026-08-25 11:09:27,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:27,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:09:27,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:27,737.737 INFO    ] No camera update needed
[2026-08-25 11:09:27,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:09:27,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:09:27,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:09:27,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:09:29,793.793 INFO    ] ================================================
[2026-08-25 11:09:29,808.808 INFO    ] Launching Daemon at Tue Aug 25 11:09:29 IST 2026
[2026-08-25 11:09:29,820.820 INFO    ] ================================================
[2026-08-25 11:09:30,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:09:30
[2026-08-25 11:09:30,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:09:31,231.231 INFO    ] Initializing speech engine...
[2026-08-25 11:09:31,251.251 INFO    ] 2026-08-25 11:09:31
[2026-08-25 11:09:31,499.499 INFO    ] 2026-08-25 11:09:31
[2026-08-25 11:09:31,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:09:31,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:09:31,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:09:31,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:09:31,895.895 INFO    ] time= 25/08/2026 11:09:31
[2026-08-25 11:09:31,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:09:31,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:09:32,033.033 INFO    ] No existing commands found in stream
[2026-08-25 11:09:37,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:09:37,061.061 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 11:09:41,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:09:41,070.070 INFO    ] Checking for system updates...
[2026-08-25 11:09:41,105.105 INFO    ] 200
[2026-08-25 11:09:41,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:41,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:41,166.166 INFO    ] No update needed
[2026-08-25 11:09:41,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 11:09:41,203.203 INFO    ] 200
[2026-08-25 11:09:41,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:41,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:09:41,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:41,288.288 INFO    ] No camera update needed
[2026-08-25 11:09:41,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:09:41,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:09:41,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:09:41,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:09:43,344.344 INFO    ] ================================================
[2026-08-25 11:09:43,360.360 INFO    ] Launching Daemon at Tue Aug 25 11:09:43 IST 2026
[2026-08-25 11:09:43,371.371 INFO    ] ================================================
[2026-08-25 11:09:43,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:09:43
[2026-08-25 11:09:44,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:09:44,822.822 INFO    ] Initializing speech engine...
[2026-08-25 11:09:44,828.828 INFO    ] 2026-08-25 11:09:44
[2026-08-25 11:09:45,089.089 INFO    ] 2026-08-25 11:09:45
[2026-08-25 11:09:45,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:09:45,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:09:45,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:09:45,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:09:45,652.652 INFO    ] time= 25/08/2026 11:09:45
[2026-08-25 11:09:45,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:09:45,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:09:45,896.896 INFO    ] No existing commands found in stream
[2026-08-25 11:09:50,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:09:50,924.924 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 11:09:54,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:09:54,541.541 INFO    ] Checking for system updates...
[2026-08-25 11:09:54,576.576 INFO    ] 200
[2026-08-25 11:09:54,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:54,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:54,633.633 INFO    ] No update needed
[2026-08-25 11:09:54,635.635 INFO    ] Checking for camera pi updates...
[2026-08-25 11:09:54,668.668 INFO    ] 200
[2026-08-25 11:09:54,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:09:54,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:09:54,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:09:54,774.774 INFO    ] No camera update needed
[2026-08-25 11:09:54,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:09:54,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:09:54,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:09:54,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:09:56,830.830 INFO    ] ================================================
[2026-08-25 11:09:56,844.844 INFO    ] Launching Daemon at Tue Aug 25 11:09:56 IST 2026
[2026-08-25 11:09:56,855.855 INFO    ] ================================================
[2026-08-25 11:09:57,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:09:57
[2026-08-25 11:09:58,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:09:58,473.473 INFO    ] Initializing speech engine...
[2026-08-25 11:09:58,483.483 INFO    ] 2026-08-25 11:09:58
[2026-08-25 11:09:58,769.769 INFO    ] 2026-08-25 11:09:58
[2026-08-25 11:09:58,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:09:59,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:09:59,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:09:59,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:09:59,302.302 INFO    ] time= 25/08/2026 11:09:59
[2026-08-25 11:09:59,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:09:59,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:09:59,460.460 INFO    ] No existing commands found in stream
[2026-08-25 11:10:04,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:10:04,480.480 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 11:10:08,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:10:08,322.322 INFO    ] Checking for system updates...
[2026-08-25 11:10:08,358.358 INFO    ] 200
[2026-08-25 11:10:08,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:08,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:08,424.424 INFO    ] No update needed
[2026-08-25 11:10:08,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 11:10:08,461.461 INFO    ] 200
[2026-08-25 11:10:08,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:08,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:10:08,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:08,571.571 INFO    ] No camera update needed
[2026-08-25 11:10:08,574.574 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:10:08,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:10:08,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:10:08,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:10:10,630.630 INFO    ] ================================================
[2026-08-25 11:10:10,645.645 INFO    ] Launching Daemon at Tue Aug 25 11:10:10 IST 2026
[2026-08-25 11:10:10,656.656 INFO    ] ================================================
[2026-08-25 11:10:11,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:10:11
[2026-08-25 11:10:11,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:10:12,086.086 INFO    ] Initializing speech engine...
[2026-08-25 11:10:12,091.091 INFO    ] 2026-08-25 11:10:12
[2026-08-25 11:10:12,394.394 INFO    ] 2026-08-25 11:10:12
[2026-08-25 11:10:12,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:10:12,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:10:12,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:10:12,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:10:12,890.890 INFO    ] time= 25/08/2026 11:10:12
[2026-08-25 11:10:12,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:10:13,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:10:13,104.104 INFO    ] No existing commands found in stream
[2026-08-25 11:10:18,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:10:18,119.119 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 11:10:22,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:10:22,403.403 INFO    ] Checking for system updates...
[2026-08-25 11:10:22,442.442 INFO    ] 200
[2026-08-25 11:10:22,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:22,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:10:22,505.505 INFO    ] No update needed
[2026-08-25 11:10:22,508.508 INFO    ] Checking for camera pi updates...
[2026-08-25 11:10:22,542.542 INFO    ] 200
[2026-08-25 11:10:22,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:22,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:10:22,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:10:22,636.636 INFO    ] No camera update needed
[2026-08-25 11:10:22,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:10:22,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:10:22,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:10:22,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:10:24,691.691 INFO    ] ================================================
[2026-08-25 11:10:24,706.706 INFO    ] Launching Daemon at Tue Aug 25 11:10:24 IST 2026
[2026-08-25 11:10:24,716.716 INFO    ] ================================================
[2026-08-25 11:10:25,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:10:25
[2026-08-25 11:10:25,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:10:26,149.149 INFO    ] Initializing speech engine...
[2026-08-25 11:10:26,166.166 INFO    ] 2026-08-25 11:10:26
[2026-08-25 11:10:26,454.454 INFO    ] 2026-08-25 11:10:26
[2026-08-25 11:10:26,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:10:26,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:10:26,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:10:26,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:10:26,851.851 INFO    ] time= 25/08/2026 11:10:26
[2026-08-25 11:10:26,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:10:26,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:10:26,959.959 INFO    ] No existing commands found in stream
[2026-08-25 11:10:31,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:10:31,970.970 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 11:10:33,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:10:33,911.911 INFO    ] Checking for system updates...
[2026-08-25 11:10:33,946.946 INFO    ] 200
[2026-08-25 11:10:33,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:34,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:34,004.004 INFO    ] No update needed
[2026-08-25 11:10:34,007.007 INFO    ] Checking for camera pi updates...
[2026-08-25 11:10:34,040.040 INFO    ] 200
[2026-08-25 11:10:34,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:34,091.091 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:10:34,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:34,249.249 INFO    ] No camera update needed
[2026-08-25 11:10:34,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:10:34,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:10:34,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:10:34,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:10:36,304.304 INFO    ] ================================================
[2026-08-25 11:10:36,319.319 INFO    ] Launching Daemon at Tue Aug 25 11:10:36 IST 2026
[2026-08-25 11:10:36,330.330 INFO    ] ================================================
[2026-08-25 11:10:36,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:10:36
[2026-08-25 11:10:37,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:10:37,732.732 INFO    ] Initializing speech engine...
[2026-08-25 11:10:37,739.739 INFO    ] 2026-08-25 11:10:37
[2026-08-25 11:10:38,031.031 INFO    ] 2026-08-25 11:10:37
[2026-08-25 11:10:38,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:10:38,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:10:38,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:10:38,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:10:38,446.446 INFO    ] time= 25/08/2026 11:10:38
[2026-08-25 11:10:38,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:10:38,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:10:38,536.536 INFO    ] No existing commands found in stream
[2026-08-25 11:10:43,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:10:43,564.564 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 11:10:46,701.701 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:10:46,703.703 INFO    ] Checking for system updates...
[2026-08-25 11:10:46,738.738 INFO    ] 200
[2026-08-25 11:10:46,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:46,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:46,796.796 INFO    ] No update needed
[2026-08-25 11:10:46,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 11:10:46,832.832 INFO    ] 200
[2026-08-25 11:10:46,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:46,879.879 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:10:46,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:46,932.932 INFO    ] No camera update needed
[2026-08-25 11:10:46,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:10:46,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:10:46,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:10:46,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:10:48,987.987 INFO    ] ================================================
[2026-08-25 11:10:49,004.004 INFO    ] Launching Daemon at Tue Aug 25 11:10:48 IST 2026
[2026-08-25 11:10:49,015.015 INFO    ] ================================================
[2026-08-25 11:10:49,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:10:49
[2026-08-25 11:10:50,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:10:50,652.652 INFO    ] Initializing speech engine...
[2026-08-25 11:10:50,661.661 INFO    ] 2026-08-25 11:10:50
[2026-08-25 11:10:50,933.933 INFO    ] 2026-08-25 11:10:50
[2026-08-25 11:10:50,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:10:51,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:10:51,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:10:51,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:10:51,478.478 INFO    ] time= 25/08/2026 11:10:51
[2026-08-25 11:10:51,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:10:51,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:10:51,638.638 INFO    ] No existing commands found in stream
[2026-08-25 11:10:56,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:10:56,672.672 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 11:10:57,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:10:57,976.976 INFO    ] Checking for system updates...
[2026-08-25 11:10:58,013.013 INFO    ] 200
[2026-08-25 11:10:58,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:58,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:58,079.079 INFO    ] No update needed
[2026-08-25 11:10:58,082.082 INFO    ] Checking for camera pi updates...
[2026-08-25 11:10:58,120.120 INFO    ] 200
[2026-08-25 11:10:58,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:10:58,164.164 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:10:58,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:10:58,213.213 INFO    ] No camera update needed
[2026-08-25 11:10:58,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:10:58,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:10:58,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:10:58,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:11:00,269.269 INFO    ] ================================================
[2026-08-25 11:11:00,285.285 INFO    ] Launching Daemon at Tue Aug 25 11:11:00 IST 2026
[2026-08-25 11:11:00,295.295 INFO    ] ================================================
[2026-08-25 11:11:00,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:11:00
[2026-08-25 11:11:01,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:11:02,087.087 INFO    ] Initializing speech engine...
[2026-08-25 11:11:02,091.091 INFO    ] 2026-08-25 11:11:02
[2026-08-25 11:11:02,446.446 INFO    ] 2026-08-25 11:11:02
[2026-08-25 11:11:02,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:11:02,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:11:02,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:11:02,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:11:03,014.014 INFO    ] time= 25/08/2026 11:11:02
[2026-08-25 11:11:03,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:11:03,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:11:03,262.262 INFO    ] No existing commands found in stream
[2026-08-25 11:11:08,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:11:08,291.291 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 11:11:10,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:11:10,446.446 INFO    ] Checking for system updates...
[2026-08-25 11:11:10,483.483 INFO    ] 200
[2026-08-25 11:11:10,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:10,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:11:10,544.544 INFO    ] No update needed
[2026-08-25 11:11:10,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 11:11:10,581.581 INFO    ] 200
[2026-08-25 11:11:10,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:10,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:11:10,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:11:10,685.685 INFO    ] No camera update needed
[2026-08-25 11:11:10,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:11:10,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:11:10,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:11:10,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:11:12,743.743 INFO    ] ================================================
[2026-08-25 11:11:12,758.758 INFO    ] Launching Daemon at Tue Aug 25 11:11:12 IST 2026
[2026-08-25 11:11:12,770.770 INFO    ] ================================================
[2026-08-25 11:11:13,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:11:13
[2026-08-25 11:11:13,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:11:14,179.179 INFO    ] Initializing speech engine...
[2026-08-25 11:11:14,188.188 INFO    ] 2026-08-25 11:11:14
[2026-08-25 11:11:14,488.488 INFO    ] 2026-08-25 11:11:14
[2026-08-25 11:11:14,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:11:14,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:11:14,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:11:14,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:11:14,956.956 INFO    ] time= 25/08/2026 11:11:14
[2026-08-25 11:11:15,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:11:15,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:11:15,166.166 INFO    ] No existing commands found in stream
[2026-08-25 11:11:20,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:11:20,198.198 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 11:11:24,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:11:24,163.163 INFO    ] Checking for system updates...
[2026-08-25 11:11:24,199.199 INFO    ] 200
[2026-08-25 11:11:24,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:24,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:11:24,259.259 INFO    ] No update needed
[2026-08-25 11:11:24,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 11:11:24,318.318 INFO    ] 200
[2026-08-25 11:11:24,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:24,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:11:24,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:11:24,426.426 INFO    ] No camera update needed
[2026-08-25 11:11:24,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:11:24,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:11:24,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:11:24,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:11:26,484.484 INFO    ] ================================================
[2026-08-25 11:11:26,499.499 INFO    ] Launching Daemon at Tue Aug 25 11:11:26 IST 2026
[2026-08-25 11:11:26,510.510 INFO    ] ================================================
[2026-08-25 11:11:27,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:11:27
[2026-08-25 11:11:27,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:11:28,147.147 INFO    ] Initializing speech engine...
[2026-08-25 11:11:28,153.153 INFO    ] 2026-08-25 11:11:28
[2026-08-25 11:11:28,461.461 INFO    ] 2026-08-25 11:11:28
[2026-08-25 11:11:28,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:11:28,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:11:28,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:11:28,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:11:28,964.964 INFO    ] time= 25/08/2026 11:11:28
[2026-08-25 11:11:28,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:11:28,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:11:29,110.110 INFO    ] No existing commands found in stream
[2026-08-25 11:11:34,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:11:34,131.131 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 11:11:34,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:11:34,978.978 INFO    ] Checking for system updates...
[2026-08-25 11:11:35,015.015 INFO    ] 200
[2026-08-25 11:11:35,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:35,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:11:35,074.074 INFO    ] No update needed
[2026-08-25 11:11:35,077.077 INFO    ] Checking for camera pi updates...
[2026-08-25 11:11:35,112.112 INFO    ] 200
[2026-08-25 11:11:35,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:35,154.154 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:11:35,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:11:35,211.211 INFO    ] No camera update needed
[2026-08-25 11:11:35,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:11:35,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:11:35,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:11:35,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:11:37,266.266 INFO    ] ================================================
[2026-08-25 11:11:37,281.281 INFO    ] Launching Daemon at Tue Aug 25 11:11:37 IST 2026
[2026-08-25 11:11:37,292.292 INFO    ] ================================================
[2026-08-25 11:11:37,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:11:37
[2026-08-25 11:11:38,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:11:38,942.942 INFO    ] Initializing speech engine...
[2026-08-25 11:11:38,956.956 INFO    ] 2026-08-25 11:11:38
[2026-08-25 11:11:39,267.267 INFO    ] 2026-08-25 11:11:39
[2026-08-25 11:11:39,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:11:39,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:11:39,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:11:39,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:11:39,785.785 INFO    ] time= 25/08/2026 11:11:39
[2026-08-25 11:11:39,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:11:39,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:11:39,939.939 INFO    ] No existing commands found in stream
[2026-08-25 11:11:44,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:11:44,964.964 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 11:11:48,793.793 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:11:48,796.796 INFO    ] Checking for system updates...
[2026-08-25 11:11:48,832.832 INFO    ] 200
[2026-08-25 11:11:48,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:48,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:11:48,890.890 INFO    ] No update needed
[2026-08-25 11:11:48,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 11:11:48,926.926 INFO    ] 200
[2026-08-25 11:11:48,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:11:48,969.969 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:11:49,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:11:49,016.016 INFO    ] No camera update needed
[2026-08-25 11:11:49,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:11:49,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:11:49,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:11:49,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:11:51,070.070 INFO    ] ================================================
[2026-08-25 11:11:51,085.085 INFO    ] Launching Daemon at Tue Aug 25 11:11:51 IST 2026
[2026-08-25 11:11:51,096.096 INFO    ] ================================================
[2026-08-25 11:11:51,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:11:51
[2026-08-25 11:11:52,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:11:52,560.560 INFO    ] Initializing speech engine...
[2026-08-25 11:11:52,569.569 INFO    ] 2026-08-25 11:11:52
[2026-08-25 11:11:52,832.832 INFO    ] 2026-08-25 11:11:52
[2026-08-25 11:11:52,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:11:53,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:11:53,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:11:53,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:11:53,315.315 INFO    ] time= 25/08/2026 11:11:53
[2026-08-25 11:11:53,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:11:53,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:11:53,528.528 INFO    ] No existing commands found in stream
[2026-08-25 11:11:58,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:11:58,550.550 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 11:12:02,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:12:02,857.857 INFO    ] Checking for system updates...
[2026-08-25 11:12:02,901.901 INFO    ] 200
[2026-08-25 11:12:02,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:02,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:02,969.969 INFO    ] No update needed
[2026-08-25 11:12:02,974.974 INFO    ] Checking for camera pi updates...
[2026-08-25 11:12:03,013.013 INFO    ] 200
[2026-08-25 11:12:03,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:03,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:12:03,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:03,126.126 INFO    ] No camera update needed
[2026-08-25 11:12:03,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:12:03,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:12:03,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:12:03,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:12:05,191.191 INFO    ] ================================================
[2026-08-25 11:12:05,206.206 INFO    ] Launching Daemon at Tue Aug 25 11:12:05 IST 2026
[2026-08-25 11:12:05,217.217 INFO    ] ================================================
[2026-08-25 11:12:05,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:12:05
[2026-08-25 11:12:06,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:12:06,633.633 INFO    ] Initializing speech engine...
[2026-08-25 11:12:06,640.640 INFO    ] 2026-08-25 11:12:06
[2026-08-25 11:12:06,906.906 INFO    ] 2026-08-25 11:12:06
[2026-08-25 11:12:06,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:12:07,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:12:07,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:12:07,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:12:07,395.395 INFO    ] time= 25/08/2026 11:12:07
[2026-08-25 11:12:07,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:12:07,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:12:07,617.617 INFO    ] No existing commands found in stream
[2026-08-25 11:12:12,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:12:12,649.649 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 11:12:15,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:12:15,575.575 INFO    ] Checking for system updates...
[2026-08-25 11:12:15,612.612 INFO    ] 200
[2026-08-25 11:12:15,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:15,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:15,668.668 INFO    ] No update needed
[2026-08-25 11:12:15,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 11:12:15,704.704 INFO    ] 200
[2026-08-25 11:12:15,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:15,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:12:15,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:15,803.803 INFO    ] No camera update needed
[2026-08-25 11:12:15,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:12:15,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:12:15,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:12:15,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:12:17,858.858 INFO    ] ================================================
[2026-08-25 11:12:17,872.872 INFO    ] Launching Daemon at Tue Aug 25 11:12:17 IST 2026
[2026-08-25 11:12:17,883.883 INFO    ] ================================================
[2026-08-25 11:12:18,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:12:18
[2026-08-25 11:12:19,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:12:19,479.479 INFO    ] Initializing speech engine...
[2026-08-25 11:12:19,493.493 INFO    ] 2026-08-25 11:12:19
[2026-08-25 11:12:19,775.775 INFO    ] 2026-08-25 11:12:19
[2026-08-25 11:12:19,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:12:20,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:12:20,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:12:20,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:12:20,310.310 INFO    ] time= 25/08/2026 11:12:20
[2026-08-25 11:12:20,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:12:20,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:12:20,479.479 INFO    ] No existing commands found in stream
[2026-08-25 11:12:25,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:12:25,513.513 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 11:12:28,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:12:28,777.777 INFO    ] Checking for system updates...
[2026-08-25 11:12:28,814.814 INFO    ] 200
[2026-08-25 11:12:28,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:28,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:12:28,874.874 INFO    ] No update needed
[2026-08-25 11:12:28,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 11:12:28,913.913 INFO    ] 200
[2026-08-25 11:12:28,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:28,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:12:29,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:12:29,011.011 INFO    ] No camera update needed
[2026-08-25 11:12:29,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:12:29,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:12:29,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:12:29,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:12:31,069.069 INFO    ] ================================================
[2026-08-25 11:12:31,084.084 INFO    ] Launching Daemon at Tue Aug 25 11:12:31 IST 2026
[2026-08-25 11:12:31,095.095 INFO    ] ================================================
[2026-08-25 11:12:31,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:12:31
[2026-08-25 11:12:32,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:12:32,530.530 INFO    ] Initializing speech engine...
[2026-08-25 11:12:32,545.545 INFO    ] 2026-08-25 11:12:32
[2026-08-25 11:12:32,832.832 INFO    ] 2026-08-25 11:12:32
[2026-08-25 11:12:32,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:12:33,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:12:33,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:12:33,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:12:33,237.237 INFO    ] time= 25/08/2026 11:12:33
[2026-08-25 11:12:33,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:12:33,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:12:33,415.415 INFO    ] No existing commands found in stream
[2026-08-25 11:12:38,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:12:38,443.443 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 11:12:40,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:12:40,935.935 INFO    ] Checking for system updates...
[2026-08-25 11:12:40,970.970 INFO    ] 200
[2026-08-25 11:12:40,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:41,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:41,026.026 INFO    ] No update needed
[2026-08-25 11:12:41,029.029 INFO    ] Checking for camera pi updates...
[2026-08-25 11:12:41,062.062 INFO    ] 200
[2026-08-25 11:12:41,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:41,104.104 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:12:41,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:41,263.263 INFO    ] No camera update needed
[2026-08-25 11:12:41,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:12:41,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:12:41,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:12:41,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:12:43,318.318 INFO    ] ================================================
[2026-08-25 11:12:43,333.333 INFO    ] Launching Daemon at Tue Aug 25 11:12:43 IST 2026
[2026-08-25 11:12:43,344.344 INFO    ] ================================================
[2026-08-25 11:12:43,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:12:43
[2026-08-25 11:12:44,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:12:44,801.801 INFO    ] Initializing speech engine...
[2026-08-25 11:12:44,811.811 INFO    ] 2026-08-25 11:12:44
[2026-08-25 11:12:45,075.075 INFO    ] 2026-08-25 11:12:45
[2026-08-25 11:12:45,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:12:45,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:12:45,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:12:45,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:12:45,444.444 INFO    ] time= 25/08/2026 11:12:45
[2026-08-25 11:12:45,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:12:45,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:12:45,569.569 INFO    ] No existing commands found in stream
[2026-08-25 11:12:50,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:12:50,592.592 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 11:12:54,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:12:54,512.512 INFO    ] Checking for system updates...
[2026-08-25 11:12:54,547.547 INFO    ] 200
[2026-08-25 11:12:54,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:54,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:54,605.605 INFO    ] No update needed
[2026-08-25 11:12:54,608.608 INFO    ] Checking for camera pi updates...
[2026-08-25 11:12:54,641.641 INFO    ] 200
[2026-08-25 11:12:54,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:12:54,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:12:54,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:12:54,744.744 INFO    ] No camera update needed
[2026-08-25 11:12:54,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:12:54,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:12:54,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:12:54,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:12:56,799.799 INFO    ] ================================================
[2026-08-25 11:12:56,815.815 INFO    ] Launching Daemon at Tue Aug 25 11:12:56 IST 2026
[2026-08-25 11:12:56,827.827 INFO    ] ================================================
[2026-08-25 11:12:57,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:12:57
[2026-08-25 11:12:57,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:12:58,259.259 INFO    ] Initializing speech engine...
[2026-08-25 11:12:58,264.264 INFO    ] 2026-08-25 11:12:58
[2026-08-25 11:12:58,512.512 INFO    ] 2026-08-25 11:12:58
[2026-08-25 11:12:58,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:12:58,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:12:58,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:12:58,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:12:59,010.010 INFO    ] time= 25/08/2026 11:12:58
[2026-08-25 11:12:59,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:12:59,091.091 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:12:59,218.218 INFO    ] No existing commands found in stream
[2026-08-25 11:13:04,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:13:04,247.247 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 11:13:05,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:13:05,303.303 INFO    ] Checking for system updates...
[2026-08-25 11:13:05,340.340 INFO    ] 200
[2026-08-25 11:13:05,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:05,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:13:05,397.397 INFO    ] No update needed
[2026-08-25 11:13:05,400.400 INFO    ] Checking for camera pi updates...
[2026-08-25 11:13:05,432.432 INFO    ] 200
[2026-08-25 11:13:05,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:05,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:13:05,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:13:05,529.529 INFO    ] No camera update needed
[2026-08-25 11:13:05,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:13:05,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:13:05,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:13:05,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:13:07,583.583 INFO    ] ================================================
[2026-08-25 11:13:07,599.599 INFO    ] Launching Daemon at Tue Aug 25 11:13:07 IST 2026
[2026-08-25 11:13:07,610.610 INFO    ] ================================================
[2026-08-25 11:13:08,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:13:08
[2026-08-25 11:13:08,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:13:09,161.161 INFO    ] Initializing speech engine...
[2026-08-25 11:13:09,175.175 INFO    ] 2026-08-25 11:13:09
[2026-08-25 11:13:09,477.477 INFO    ] 2026-08-25 11:13:09
[2026-08-25 11:13:09,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:13:09,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:13:09,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:13:09,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:13:09,999.999 INFO    ] time= 25/08/2026 11:13:09
[2026-08-25 11:13:10,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:13:10,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:13:10,135.135 INFO    ] No existing commands found in stream
[2026-08-25 11:13:15,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:13:15,158.158 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 11:13:16,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:13:17,002.002 INFO    ] Checking for system updates...
[2026-08-25 11:13:17,041.041 INFO    ] 200
[2026-08-25 11:13:17,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:17,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:13:17,102.102 INFO    ] No update needed
[2026-08-25 11:13:17,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 11:13:17,141.141 INFO    ] 200
[2026-08-25 11:13:17,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:17,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:13:17,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:13:17,247.247 INFO    ] No camera update needed
[2026-08-25 11:13:17,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:13:17,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:13:17,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:13:17,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:13:19,304.304 INFO    ] ================================================
[2026-08-25 11:13:19,319.319 INFO    ] Launching Daemon at Tue Aug 25 11:13:19 IST 2026
[2026-08-25 11:13:19,330.330 INFO    ] ================================================
[2026-08-25 11:13:19,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:13:19
[2026-08-25 11:13:20,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:13:20,849.849 INFO    ] Initializing speech engine...
[2026-08-25 11:13:20,858.858 INFO    ] 2026-08-25 11:13:20
[2026-08-25 11:13:21,126.126 INFO    ] 2026-08-25 11:13:21
[2026-08-25 11:13:21,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:13:21,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:13:21,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:13:21,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:13:21,662.662 INFO    ] time= 25/08/2026 11:13:21
[2026-08-25 11:13:21,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:13:21,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:13:21,841.841 INFO    ] No existing commands found in stream
[2026-08-25 11:13:26,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:13:26,863.863 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 11:13:29,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:13:29,971.971 INFO    ] Checking for system updates...
[2026-08-25 11:13:30,008.008 INFO    ] 200
[2026-08-25 11:13:30,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:30,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:13:30,066.066 INFO    ] No update needed
[2026-08-25 11:13:30,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 11:13:30,105.105 INFO    ] 200
[2026-08-25 11:13:30,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:30,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:13:30,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:13:30,202.202 INFO    ] No camera update needed
[2026-08-25 11:13:30,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:13:30,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:13:30,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:13:30,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:13:32,261.261 INFO    ] ================================================
[2026-08-25 11:13:32,278.278 INFO    ] Launching Daemon at Tue Aug 25 11:13:32 IST 2026
[2026-08-25 11:13:32,290.290 INFO    ] ================================================
[2026-08-25 11:13:32,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:13:32
[2026-08-25 11:13:33,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:13:33,763.763 INFO    ] Initializing speech engine...
[2026-08-25 11:13:33,783.783 INFO    ] 2026-08-25 11:13:33
[2026-08-25 11:13:34,044.044 INFO    ] 2026-08-25 11:13:34
[2026-08-25 11:13:34,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:13:34,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:13:34,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:13:34,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:13:34,446.446 INFO    ] time= 25/08/2026 11:13:34
[2026-08-25 11:13:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:13:34,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:13:34,631.631 INFO    ] No existing commands found in stream
[2026-08-25 11:13:39,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:13:39,664.664 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 11:13:43,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:13:43,084.084 INFO    ] Checking for system updates...
[2026-08-25 11:13:43,121.121 INFO    ] 200
[2026-08-25 11:13:43,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:43,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:13:43,178.178 INFO    ] No update needed
[2026-08-25 11:13:43,181.181 INFO    ] Checking for camera pi updates...
[2026-08-25 11:13:43,215.215 INFO    ] 200
[2026-08-25 11:13:43,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:43,259.259 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:13:43,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:13:43,320.320 INFO    ] No camera update needed
[2026-08-25 11:13:43,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:13:43,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:13:43,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:13:43,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:13:45,376.376 INFO    ] ================================================
[2026-08-25 11:13:45,391.391 INFO    ] Launching Daemon at Tue Aug 25 11:13:45 IST 2026
[2026-08-25 11:13:45,402.402 INFO    ] ================================================
[2026-08-25 11:13:45,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:13:45
[2026-08-25 11:13:46,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:13:46,827.827 INFO    ] Initializing speech engine...
[2026-08-25 11:13:46,837.837 INFO    ] 2026-08-25 11:13:46
[2026-08-25 11:13:47,096.096 INFO    ] 2026-08-25 11:13:47
[2026-08-25 11:13:47,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:13:47,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:13:47,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:13:47,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:13:47,582.582 INFO    ] time= 25/08/2026 11:13:47
[2026-08-25 11:13:47,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:13:47,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:13:47,848.848 INFO    ] No existing commands found in stream
[2026-08-25 11:13:52,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:13:52,878.878 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 11:13:55,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:13:55,213.213 INFO    ] Checking for system updates...
[2026-08-25 11:13:55,249.249 INFO    ] 200
[2026-08-25 11:13:55,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:55,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:13:55,313.313 INFO    ] No update needed
[2026-08-25 11:13:55,316.316 INFO    ] Checking for camera pi updates...
[2026-08-25 11:13:55,349.349 INFO    ] 200
[2026-08-25 11:13:55,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:13:55,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:13:55,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:13:55,447.447 INFO    ] No camera update needed
[2026-08-25 11:13:55,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:13:55,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:13:55,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:13:55,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:13:57,502.502 INFO    ] ================================================
[2026-08-25 11:13:57,517.517 INFO    ] Launching Daemon at Tue Aug 25 11:13:57 IST 2026
[2026-08-25 11:13:57,527.527 INFO    ] ================================================
[2026-08-25 11:13:58,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:13:58
[2026-08-25 11:13:58,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:13:59,078.078 INFO    ] Initializing speech engine...
[2026-08-25 11:13:59,085.085 INFO    ] 2026-08-25 11:13:59
[2026-08-25 11:13:59,350.350 INFO    ] 2026-08-25 11:13:59
[2026-08-25 11:13:59,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:13:59,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:13:59,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:13:59,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:13:59,819.819 INFO    ] time= 25/08/2026 11:13:59
[2026-08-25 11:13:59,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:13:59,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:14:00,073.073 INFO    ] No existing commands found in stream
[2026-08-25 11:14:05,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:14:05,096.096 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 11:14:06,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:14:06,081.081 INFO    ] Checking for system updates...
[2026-08-25 11:14:06,118.118 INFO    ] 200
[2026-08-25 11:14:06,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:06,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:14:06,175.175 INFO    ] No update needed
[2026-08-25 11:14:06,178.178 INFO    ] Checking for camera pi updates...
[2026-08-25 11:14:06,212.212 INFO    ] 200
[2026-08-25 11:14:06,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:06,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:14:06,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:14:06,307.307 INFO    ] No camera update needed
[2026-08-25 11:14:06,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:14:06,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:14:06,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:14:06,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:14:08,364.364 INFO    ] ================================================
[2026-08-25 11:14:08,379.379 INFO    ] Launching Daemon at Tue Aug 25 11:14:08 IST 2026
[2026-08-25 11:14:08,390.390 INFO    ] ================================================
[2026-08-25 11:14:08,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:14:08
[2026-08-25 11:14:09,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:14:09,827.827 INFO    ] Initializing speech engine...
[2026-08-25 11:14:09,841.841 INFO    ] 2026-08-25 11:14:09
[2026-08-25 11:14:10,103.103 INFO    ] 2026-08-25 11:14:10
[2026-08-25 11:14:10,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:14:10,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:14:10,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:14:10,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:14:10,502.502 INFO    ] time= 25/08/2026 11:14:10
[2026-08-25 11:14:10,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:14:10,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:14:10,607.607 INFO    ] No existing commands found in stream
[2026-08-25 11:14:15,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:14:15,622.622 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 11:14:16,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:14:16,727.727 INFO    ] Checking for system updates...
[2026-08-25 11:14:16,762.762 INFO    ] 200
[2026-08-25 11:14:16,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:16,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:14:16,820.820 INFO    ] No update needed
[2026-08-25 11:14:16,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 11:14:16,855.855 INFO    ] 200
[2026-08-25 11:14:16,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:16,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:14:16,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:14:16,956.956 INFO    ] No camera update needed
[2026-08-25 11:14:16,958.958 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:14:16,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:14:16,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:14:16,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:14:19,010.010 INFO    ] ================================================
[2026-08-25 11:14:19,026.026 INFO    ] Launching Daemon at Tue Aug 25 11:14:19 IST 2026
[2026-08-25 11:14:19,036.036 INFO    ] ================================================
[2026-08-25 11:14:19,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:14:19
[2026-08-25 11:14:20,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:14:20,563.563 INFO    ] Initializing speech engine...
[2026-08-25 11:14:20,577.577 INFO    ] 2026-08-25 11:14:20
[2026-08-25 11:14:20,834.834 INFO    ] 2026-08-25 11:14:20
[2026-08-25 11:14:20,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:14:21,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:14:21,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:14:21,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:14:21,405.405 INFO    ] time= 25/08/2026 11:14:21
[2026-08-25 11:14:21,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:14:21,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:14:21,540.540 INFO    ] No existing commands found in stream
[2026-08-25 11:14:26,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:14:26,560.560 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 11:14:29,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:14:29,297.297 INFO    ] Checking for system updates...
[2026-08-25 11:14:29,336.336 INFO    ] 200
[2026-08-25 11:14:29,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:29,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:14:29,394.394 INFO    ] No update needed
[2026-08-25 11:14:29,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 11:14:29,431.431 INFO    ] 200
[2026-08-25 11:14:29,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:29,474.474 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:14:29,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:14:29,527.527 INFO    ] No camera update needed
[2026-08-25 11:14:29,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:14:29,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:14:29,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:14:29,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:14:31,585.585 INFO    ] ================================================
[2026-08-25 11:14:31,600.600 INFO    ] Launching Daemon at Tue Aug 25 11:14:31 IST 2026
[2026-08-25 11:14:31,611.611 INFO    ] ================================================
[2026-08-25 11:14:32,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:14:32
[2026-08-25 11:14:32,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:14:33,148.148 INFO    ] Initializing speech engine...
[2026-08-25 11:14:33,161.161 INFO    ] 2026-08-25 11:14:33
[2026-08-25 11:14:33,429.429 INFO    ] 2026-08-25 11:14:33
[2026-08-25 11:14:33,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:14:33,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:14:33,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:14:33,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:14:33,901.901 INFO    ] time= 25/08/2026 11:14:33
[2026-08-25 11:14:33,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:14:33,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:14:34,111.111 INFO    ] No existing commands found in stream
[2026-08-25 11:14:39,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:14:39,138.138 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 11:14:40,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:14:40,300.300 INFO    ] Checking for system updates...
[2026-08-25 11:14:40,335.335 INFO    ] 200
[2026-08-25 11:14:40,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:40,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:14:40,393.393 INFO    ] No update needed
[2026-08-25 11:14:40,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 11:14:40,429.429 INFO    ] 200
[2026-08-25 11:14:40,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:40,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:14:40,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:14:40,530.530 INFO    ] No camera update needed
[2026-08-25 11:14:40,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:14:40,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:14:40,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:14:40,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:14:42,588.588 INFO    ] ================================================
[2026-08-25 11:14:42,603.603 INFO    ] Launching Daemon at Tue Aug 25 11:14:42 IST 2026
[2026-08-25 11:14:42,613.613 INFO    ] ================================================
[2026-08-25 11:14:43,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:14:43
[2026-08-25 11:14:43,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:14:44,016.016 INFO    ] Initializing speech engine...
[2026-08-25 11:14:44,039.039 INFO    ] 2026-08-25 11:14:44
[2026-08-25 11:14:44,305.305 INFO    ] 2026-08-25 11:14:44
[2026-08-25 11:14:44,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:14:44,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:14:44,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:14:44,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:14:44,708.708 INFO    ] time= 25/08/2026 11:14:44
[2026-08-25 11:14:44,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:14:44,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:14:44,901.901 INFO    ] No existing commands found in stream
[2026-08-25 11:14:49,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:14:49,934.934 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 11:14:53,678.678 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:14:53,681.681 INFO    ] Checking for system updates...
[2026-08-25 11:14:53,717.717 INFO    ] 200
[2026-08-25 11:14:53,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:53,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:14:53,772.772 INFO    ] No update needed
[2026-08-25 11:14:53,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 11:14:53,808.808 INFO    ] 200
[2026-08-25 11:14:53,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:14:53,851.851 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:14:53,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:14:53,997.997 INFO    ] No camera update needed
[2026-08-25 11:14:53,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:14:54,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:14:54,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:14:54,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:14:56,053.053 INFO    ] ================================================
[2026-08-25 11:14:56,068.068 INFO    ] Launching Daemon at Tue Aug 25 11:14:56 IST 2026
[2026-08-25 11:14:56,078.078 INFO    ] ================================================
[2026-08-25 11:14:56,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:14:56
[2026-08-25 11:14:57,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:14:57,532.532 INFO    ] Initializing speech engine...
[2026-08-25 11:14:57,542.542 INFO    ] 2026-08-25 11:14:57
[2026-08-25 11:14:57,802.802 INFO    ] 2026-08-25 11:14:57
[2026-08-25 11:14:57,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:14:58,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:14:58,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:14:58,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:14:58,188.188 INFO    ] time= 25/08/2026 11:14:58
[2026-08-25 11:14:58,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:14:58,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:14:58,388.388 INFO    ] No existing commands found in stream
[2026-08-25 11:15:03,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:15:03,401.401 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 11:15:07,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:15:07,395.395 INFO    ] Checking for system updates...
[2026-08-25 11:15:07,432.432 INFO    ] 200
[2026-08-25 11:15:07,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:07,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:15:07,491.491 INFO    ] No update needed
[2026-08-25 11:15:07,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 11:15:07,528.528 INFO    ] 200
[2026-08-25 11:15:07,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:07,572.572 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:15:07,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:15:07,628.628 INFO    ] No camera update needed
[2026-08-25 11:15:07,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:15:07,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:15:07,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:15:07,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:15:09,685.685 INFO    ] ================================================
[2026-08-25 11:15:09,700.700 INFO    ] Launching Daemon at Tue Aug 25 11:15:09 IST 2026
[2026-08-25 11:15:09,711.711 INFO    ] ================================================
[2026-08-25 11:15:10,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:15:10
[2026-08-25 11:15:10,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:15:11,257.257 INFO    ] Initializing speech engine...
[2026-08-25 11:15:11,266.266 INFO    ] 2026-08-25 11:15:11
[2026-08-25 11:15:11,547.547 INFO    ] 2026-08-25 11:15:11
[2026-08-25 11:15:11,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:15:11,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:15:11,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:15:11,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:15:12,025.025 INFO    ] time= 25/08/2026 11:15:11
[2026-08-25 11:15:12,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:15:12,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:15:12,245.245 INFO    ] No existing commands found in stream
[2026-08-25 11:15:17,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:15:17,281.281 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 11:15:21,553.553 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:15:21,556.556 INFO    ] Checking for system updates...
[2026-08-25 11:15:21,600.600 INFO    ] 200
[2026-08-25 11:15:21,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:21,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:15:21,659.659 INFO    ] No update needed
[2026-08-25 11:15:21,662.662 INFO    ] Checking for camera pi updates...
[2026-08-25 11:15:21,701.701 INFO    ] 200
[2026-08-25 11:15:21,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:21,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:15:21,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:15:21,794.794 INFO    ] No camera update needed
[2026-08-25 11:15:21,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:15:21,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:15:21,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:15:21,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:15:23,851.851 INFO    ] ================================================
[2026-08-25 11:15:23,866.866 INFO    ] Launching Daemon at Tue Aug 25 11:15:23 IST 2026
[2026-08-25 11:15:23,877.877 INFO    ] ================================================
[2026-08-25 11:15:24,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:15:24
[2026-08-25 11:15:25,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:15:25,505.505 INFO    ] Initializing speech engine...
[2026-08-25 11:15:25,515.515 INFO    ] 2026-08-25 11:15:25
[2026-08-25 11:15:25,838.838 INFO    ] 2026-08-25 11:15:25
[2026-08-25 11:15:25,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:15:26,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:15:26,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:15:26,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:15:26,355.355 INFO    ] time= 25/08/2026 11:15:26
[2026-08-25 11:15:26,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:15:26,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:15:26,501.501 INFO    ] No existing commands found in stream
[2026-08-25 11:15:31,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:15:31,529.529 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 11:15:32,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:15:32,788.788 INFO    ] Checking for system updates...
[2026-08-25 11:15:32,831.831 INFO    ] 200
[2026-08-25 11:15:32,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:32,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:15:32,900.900 INFO    ] No update needed
[2026-08-25 11:15:32,904.904 INFO    ] Checking for camera pi updates...
[2026-08-25 11:15:32,946.946 INFO    ] 200
[2026-08-25 11:15:32,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:32,996.996 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:15:33,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:15:33,078.078 INFO    ] No camera update needed
[2026-08-25 11:15:33,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:15:33,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:15:33,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:15:33,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:15:35,141.141 INFO    ] ================================================
[2026-08-25 11:15:35,157.157 INFO    ] Launching Daemon at Tue Aug 25 11:15:35 IST 2026
[2026-08-25 11:15:35,168.168 INFO    ] ================================================
[2026-08-25 11:15:35,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:15:35
[2026-08-25 11:15:36,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:15:36,873.873 INFO    ] Initializing speech engine...
[2026-08-25 11:15:36,886.886 INFO    ] 2026-08-25 11:15:36
[2026-08-25 11:15:37,162.162 INFO    ] 2026-08-25 11:15:37
[2026-08-25 11:15:37,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:15:37,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:15:37,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:15:37,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:15:37,592.592 INFO    ] time= 25/08/2026 11:15:37
[2026-08-25 11:15:37,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:15:37,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:15:37,770.770 INFO    ] No existing commands found in stream
[2026-08-25 11:15:42,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:15:42,799.799 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 11:15:43,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:15:43,773.773 INFO    ] Checking for system updates...
[2026-08-25 11:15:43,810.810 INFO    ] 200
[2026-08-25 11:15:43,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:43,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:15:43,877.877 INFO    ] No update needed
[2026-08-25 11:15:43,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 11:15:43,914.914 INFO    ] 200
[2026-08-25 11:15:43,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:43,958.958 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:15:44,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:15:44,017.017 INFO    ] No camera update needed
[2026-08-25 11:15:44,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:15:44,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:15:44,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:15:44,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:15:46,073.073 INFO    ] ================================================
[2026-08-25 11:15:46,088.088 INFO    ] Launching Daemon at Tue Aug 25 11:15:46 IST 2026
[2026-08-25 11:15:46,099.099 INFO    ] ================================================
[2026-08-25 11:15:46,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:15:46
[2026-08-25 11:15:47,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:15:47,724.724 INFO    ] Initializing speech engine...
[2026-08-25 11:15:47,732.732 INFO    ] 2026-08-25 11:15:47
[2026-08-25 11:15:48,008.008 INFO    ] 2026-08-25 11:15:48
[2026-08-25 11:15:48,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:15:48,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:15:48,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:15:48,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:15:48,560.560 INFO    ] time= 25/08/2026 11:15:48
[2026-08-25 11:15:48,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:15:48,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:15:48,733.733 INFO    ] No existing commands found in stream
[2026-08-25 11:15:53,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:15:53,760.760 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 11:15:54,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:15:54,926.926 INFO    ] Checking for system updates...
[2026-08-25 11:15:54,962.962 INFO    ] 200
[2026-08-25 11:15:54,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:55,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:15:55,029.029 INFO    ] No update needed
[2026-08-25 11:15:55,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 11:15:55,066.066 INFO    ] 200
[2026-08-25 11:15:55,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:15:55,110.110 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:15:55,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:15:55,168.168 INFO    ] No camera update needed
[2026-08-25 11:15:55,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:15:55,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:15:55,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:15:55,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:15:57,228.228 INFO    ] ================================================
[2026-08-25 11:15:57,243.243 INFO    ] Launching Daemon at Tue Aug 25 11:15:57 IST 2026
[2026-08-25 11:15:57,255.255 INFO    ] ================================================
[2026-08-25 11:15:57,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:15:57
[2026-08-25 11:15:58,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:15:58,691.691 INFO    ] Initializing speech engine...
[2026-08-25 11:15:58,713.713 INFO    ] 2026-08-25 11:15:58
[2026-08-25 11:15:58,969.969 INFO    ] 2026-08-25 11:15:58
[2026-08-25 11:15:59,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:15:59,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:15:59,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:15:59,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:15:59,440.440 INFO    ] time= 25/08/2026 11:15:59
[2026-08-25 11:15:59,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:15:59,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:15:59,671.671 INFO    ] No existing commands found in stream
[2026-08-25 11:16:04,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:16:04,697.697 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 11:16:08,171.171 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:16:08,174.174 INFO    ] Checking for system updates...
[2026-08-25 11:16:08,209.209 INFO    ] 200
[2026-08-25 11:16:08,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:08,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:16:08,266.266 INFO    ] No update needed
[2026-08-25 11:16:08,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 11:16:08,303.303 INFO    ] 200
[2026-08-25 11:16:08,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:08,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:16:08,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:16:08,402.402 INFO    ] No camera update needed
[2026-08-25 11:16:08,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:16:08,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:16:08,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:16:08,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:16:10,459.459 INFO    ] ================================================
[2026-08-25 11:16:10,475.475 INFO    ] Launching Daemon at Tue Aug 25 11:16:10 IST 2026
[2026-08-25 11:16:10,485.485 INFO    ] ================================================
[2026-08-25 11:16:11,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:16:11
[2026-08-25 11:16:11,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:16:12,109.109 INFO    ] Initializing speech engine...
[2026-08-25 11:16:12,121.121 INFO    ] 2026-08-25 11:16:12
[2026-08-25 11:16:12,402.402 INFO    ] 2026-08-25 11:16:12
[2026-08-25 11:16:12,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:16:12,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:16:12,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:16:12,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:16:12,909.909 INFO    ] time= 25/08/2026 11:16:12
[2026-08-25 11:16:12,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:16:12,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:16:13,121.121 INFO    ] No existing commands found in stream
[2026-08-25 11:16:18,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:16:18,145.145 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 11:16:21,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:16:21,445.445 INFO    ] Checking for system updates...
[2026-08-25 11:16:21,486.486 INFO    ] 200
[2026-08-25 11:16:21,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:21,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:16:21,550.550 INFO    ] No update needed
[2026-08-25 11:16:21,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 11:16:21,589.589 INFO    ] 200
[2026-08-25 11:16:21,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:21,632.632 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:16:21,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:16:21,680.680 INFO    ] No camera update needed
[2026-08-25 11:16:21,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:16:21,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:16:21,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:16:21,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:16:23,734.734 INFO    ] ================================================
[2026-08-25 11:16:23,749.749 INFO    ] Launching Daemon at Tue Aug 25 11:16:23 IST 2026
[2026-08-25 11:16:23,760.760 INFO    ] ================================================
[2026-08-25 11:16:24,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:16:24
[2026-08-25 11:16:25,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:16:25,324.324 INFO    ] Initializing speech engine...
[2026-08-25 11:16:25,337.337 INFO    ] 2026-08-25 11:16:25
[2026-08-25 11:16:25,586.586 INFO    ] 2026-08-25 11:16:25
[2026-08-25 11:16:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:16:25,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:16:25,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:16:26,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:16:26,062.062 INFO    ] time= 25/08/2026 11:16:26
[2026-08-25 11:16:26,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:16:26,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:16:26,294.294 INFO    ] No existing commands found in stream
[2026-08-25 11:16:31,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:16:31,320.320 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 11:16:34,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:16:34,320.320 INFO    ] Checking for system updates...
[2026-08-25 11:16:34,355.355 INFO    ] 200
[2026-08-25 11:16:34,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:34,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:16:34,414.414 INFO    ] No update needed
[2026-08-25 11:16:34,416.416 INFO    ] Checking for camera pi updates...
[2026-08-25 11:16:34,453.453 INFO    ] 200
[2026-08-25 11:16:34,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:34,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:16:34,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:16:34,543.543 INFO    ] No camera update needed
[2026-08-25 11:16:34,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:16:34,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:16:34,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:16:34,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:16:36,599.599 INFO    ] ================================================
[2026-08-25 11:16:36,614.614 INFO    ] Launching Daemon at Tue Aug 25 11:16:36 IST 2026
[2026-08-25 11:16:36,626.626 INFO    ] ================================================
[2026-08-25 11:16:37,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:16:37
[2026-08-25 11:16:37,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:16:38,073.073 INFO    ] Initializing speech engine...
[2026-08-25 11:16:38,081.081 INFO    ] 2026-08-25 11:16:38
[2026-08-25 11:16:38,386.386 INFO    ] 2026-08-25 11:16:38
[2026-08-25 11:16:38,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:16:38,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:16:38,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:16:38,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:16:38,775.775 INFO    ] time= 25/08/2026 11:16:38
[2026-08-25 11:16:38,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:16:38,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:16:38,904.904 INFO    ] No existing commands found in stream
[2026-08-25 11:16:43,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:16:43,927.927 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 11:16:48,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:16:48,356.356 INFO    ] Checking for system updates...
[2026-08-25 11:16:48,392.392 INFO    ] 200
[2026-08-25 11:16:48,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:48,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:16:48,456.456 INFO    ] No update needed
[2026-08-25 11:16:48,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 11:16:48,491.491 INFO    ] 200
[2026-08-25 11:16:48,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:16:48,536.536 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:16:48,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:16:48,582.582 INFO    ] No camera update needed
[2026-08-25 11:16:48,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:16:48,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:16:48,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:16:48,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:16:50,637.637 INFO    ] ================================================
[2026-08-25 11:16:50,652.652 INFO    ] Launching Daemon at Tue Aug 25 11:16:50 IST 2026
[2026-08-25 11:16:50,663.663 INFO    ] ================================================
[2026-08-25 11:16:51,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:16:51
[2026-08-25 11:16:51,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:16:52,083.083 INFO    ] Initializing speech engine...
[2026-08-25 11:16:52,093.093 INFO    ] 2026-08-25 11:16:52
[2026-08-25 11:16:52,344.344 INFO    ] 2026-08-25 11:16:52
[2026-08-25 11:16:52,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:16:52,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:16:52,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:16:52,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:16:52,824.824 INFO    ] time= 25/08/2026 11:16:52
[2026-08-25 11:16:52,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:16:52,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:16:53,064.064 INFO    ] No existing commands found in stream
[2026-08-25 11:16:58,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:16:58,084.084 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 11:17:00,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:17:00,998.998 INFO    ] Checking for system updates...
[2026-08-25 11:17:01,040.040 INFO    ] 200
[2026-08-25 11:17:01,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:01,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:01,131.131 INFO    ] No update needed
[2026-08-25 11:17:01,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 11:17:01,237.237 INFO    ] 200
[2026-08-25 11:17:01,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:01,315.315 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:17:01,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:01,495.495 INFO    ] No camera update needed
[2026-08-25 11:17:01,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:17:01,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:17:01,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:17:01,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:17:03,575.575 INFO    ] ================================================
[2026-08-25 11:17:03,591.591 INFO    ] Launching Daemon at Tue Aug 25 11:17:03 IST 2026
[2026-08-25 11:17:03,602.602 INFO    ] ================================================
[2026-08-25 11:17:04,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:17:04
[2026-08-25 11:17:04,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:17:05,040.040 INFO    ] Initializing speech engine...
[2026-08-25 11:17:05,046.046 INFO    ] 2026-08-25 11:17:05
[2026-08-25 11:17:05,343.343 INFO    ] 2026-08-25 11:17:05
[2026-08-25 11:17:05,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:17:05,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:17:05,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:17:05,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:17:05,735.735 INFO    ] time= 25/08/2026 11:17:05
[2026-08-25 11:17:05,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:17:05,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:17:05,843.843 INFO    ] No existing commands found in stream
[2026-08-25 11:17:10,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:17:10,860.860 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 11:17:12,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:17:12,469.469 INFO    ] Checking for system updates...
[2026-08-25 11:17:12,505.505 INFO    ] 200
[2026-08-25 11:17:12,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:12,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:17:12,568.568 INFO    ] No update needed
[2026-08-25 11:17:12,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 11:17:12,604.604 INFO    ] 200
[2026-08-25 11:17:12,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:12,647.647 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:17:12,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:17:12,696.696 INFO    ] No camera update needed
[2026-08-25 11:17:12,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:17:12,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:17:12,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:17:12,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:17:14,753.753 INFO    ] ================================================
[2026-08-25 11:17:14,768.768 INFO    ] Launching Daemon at Tue Aug 25 11:17:14 IST 2026
[2026-08-25 11:17:14,779.779 INFO    ] ================================================
[2026-08-25 11:17:15,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:17:15
[2026-08-25 11:17:15,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:17:16,219.219 INFO    ] Initializing speech engine...
[2026-08-25 11:17:16,226.226 INFO    ] 2026-08-25 11:17:16
[2026-08-25 11:17:16,498.498 INFO    ] 2026-08-25 11:17:16
[2026-08-25 11:17:16,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:17:16,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:17:16,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:17:16,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:17:16,947.947 INFO    ] time= 25/08/2026 11:17:16
[2026-08-25 11:17:17,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:17:17,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:17:17,167.167 INFO    ] No existing commands found in stream
[2026-08-25 11:17:22,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:17:22,190.190 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 11:17:26,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:17:26,113.113 INFO    ] Checking for system updates...
[2026-08-25 11:17:26,151.151 INFO    ] 200
[2026-08-25 11:17:26,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:26,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:26,209.209 INFO    ] No update needed
[2026-08-25 11:17:26,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 11:17:26,247.247 INFO    ] 200
[2026-08-25 11:17:26,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:26,290.290 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:17:26,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:26,350.350 INFO    ] No camera update needed
[2026-08-25 11:17:26,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:17:26,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:17:26,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:17:26,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:17:28,408.408 INFO    ] ================================================
[2026-08-25 11:17:28,424.424 INFO    ] Launching Daemon at Tue Aug 25 11:17:28 IST 2026
[2026-08-25 11:17:28,435.435 INFO    ] ================================================
[2026-08-25 11:17:29,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:17:29
[2026-08-25 11:17:29,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:17:29,846.846 INFO    ] Initializing speech engine...
[2026-08-25 11:17:29,853.853 INFO    ] 2026-08-25 11:17:29
[2026-08-25 11:17:30,146.146 INFO    ] 2026-08-25 11:17:30
[2026-08-25 11:17:30,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:17:30,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:17:30,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:17:30,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:17:30,562.562 INFO    ] time= 25/08/2026 11:17:30
[2026-08-25 11:17:30,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:17:30,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:17:30,746.746 INFO    ] No existing commands found in stream
[2026-08-25 11:17:35,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:17:35,780.780 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 11:17:38,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:17:38,874.874 INFO    ] Checking for system updates...
[2026-08-25 11:17:38,909.909 INFO    ] 200
[2026-08-25 11:17:38,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:38,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:38,967.967 INFO    ] No update needed
[2026-08-25 11:17:38,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 11:17:39,003.003 INFO    ] 200
[2026-08-25 11:17:39,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:39,046.046 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:17:39,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:39,107.107 INFO    ] No camera update needed
[2026-08-25 11:17:39,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:17:39,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:17:39,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:17:39,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:17:41,162.162 INFO    ] ================================================
[2026-08-25 11:17:41,178.178 INFO    ] Launching Daemon at Tue Aug 25 11:17:41 IST 2026
[2026-08-25 11:17:41,189.189 INFO    ] ================================================
[2026-08-25 11:17:41,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:17:41
[2026-08-25 11:17:42,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:17:42,614.614 INFO    ] Initializing speech engine...
[2026-08-25 11:17:42,627.627 INFO    ] 2026-08-25 11:17:42
[2026-08-25 11:17:42,907.907 INFO    ] 2026-08-25 11:17:42
[2026-08-25 11:17:42,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:17:43,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:17:43,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:17:43,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:17:43,320.320 INFO    ] time= 25/08/2026 11:17:43
[2026-08-25 11:17:43,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:17:43,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:17:43,485.485 INFO    ] No existing commands found in stream
[2026-08-25 11:17:48,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:17:48,513.513 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 11:17:52,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:17:52,833.833 INFO    ] Checking for system updates...
[2026-08-25 11:17:52,868.868 INFO    ] 200
[2026-08-25 11:17:52,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:52,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:52,931.931 INFO    ] No update needed
[2026-08-25 11:17:52,933.933 INFO    ] Checking for camera pi updates...
[2026-08-25 11:17:52,969.969 INFO    ] 200
[2026-08-25 11:17:52,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:17:53,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:17:53,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:17:53,063.063 INFO    ] No camera update needed
[2026-08-25 11:17:53,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:17:53,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:17:53,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:17:53,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:17:55,119.119 INFO    ] ================================================
[2026-08-25 11:17:55,135.135 INFO    ] Launching Daemon at Tue Aug 25 11:17:55 IST 2026
[2026-08-25 11:17:55,146.146 INFO    ] ================================================
[2026-08-25 11:17:55,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:17:55
[2026-08-25 11:17:56,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:17:56,610.610 INFO    ] Initializing speech engine...
[2026-08-25 11:17:56,625.625 INFO    ] 2026-08-25 11:17:56
[2026-08-25 11:17:56,893.893 INFO    ] 2026-08-25 11:17:56
[2026-08-25 11:17:56,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:17:57,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:17:57,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:17:57,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:17:57,267.267 INFO    ] time= 25/08/2026 11:17:57
[2026-08-25 11:17:57,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:17:57,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:17:57,391.391 INFO    ] No existing commands found in stream
[2026-08-25 11:18:02,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:18:02,411.411 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 11:18:04,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:18:04,153.153 INFO    ] Checking for system updates...
[2026-08-25 11:18:04,188.188 INFO    ] 200
[2026-08-25 11:18:04,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:04,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:04,247.247 INFO    ] No update needed
[2026-08-25 11:18:04,249.249 INFO    ] Checking for camera pi updates...
[2026-08-25 11:18:04,282.282 INFO    ] 200
[2026-08-25 11:18:04,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:04,325.325 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:18:04,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:04,375.375 INFO    ] No camera update needed
[2026-08-25 11:18:04,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:18:04,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:18:04,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:18:04,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:18:06,430.430 INFO    ] ================================================
[2026-08-25 11:18:06,446.446 INFO    ] Launching Daemon at Tue Aug 25 11:18:06 IST 2026
[2026-08-25 11:18:06,457.457 INFO    ] ================================================
[2026-08-25 11:18:07,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:18:07
[2026-08-25 11:18:07,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:18:07,892.892 INFO    ] Initializing speech engine...
[2026-08-25 11:18:07,905.905 INFO    ] 2026-08-25 11:18:07
[2026-08-25 11:18:08,174.174 INFO    ] 2026-08-25 11:18:08
[2026-08-25 11:18:08,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:18:08,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:18:08,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:18:08,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:18:08,557.557 INFO    ] time= 25/08/2026 11:18:08
[2026-08-25 11:18:08,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:18:08,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:18:08,682.682 INFO    ] No existing commands found in stream
[2026-08-25 11:18:13,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:18:13,698.698 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 11:18:16,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:18:16,615.615 INFO    ] Checking for system updates...
[2026-08-25 11:18:16,651.651 INFO    ] 200
[2026-08-25 11:18:16,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:16,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:18:16,708.708 INFO    ] No update needed
[2026-08-25 11:18:16,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 11:18:16,744.744 INFO    ] 200
[2026-08-25 11:18:16,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:16,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:18:16,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:18:16,841.841 INFO    ] No camera update needed
[2026-08-25 11:18:16,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:18:16,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:18:16,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:18:16,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:18:18,902.902 INFO    ] ================================================
[2026-08-25 11:18:18,918.918 INFO    ] Launching Daemon at Tue Aug 25 11:18:18 IST 2026
[2026-08-25 11:18:18,929.929 INFO    ] ================================================
[2026-08-25 11:18:19,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:18:19
[2026-08-25 11:18:20,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:18:20,364.364 INFO    ] Initializing speech engine...
[2026-08-25 11:18:20,371.371 INFO    ] 2026-08-25 11:18:20
[2026-08-25 11:18:20,639.639 INFO    ] 2026-08-25 11:18:20
[2026-08-25 11:18:20,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:18:20,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:18:20,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:18:21,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:18:21,132.132 INFO    ] time= 25/08/2026 11:18:21
[2026-08-25 11:18:21,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:18:21,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:18:21,353.353 INFO    ] No existing commands found in stream
[2026-08-25 11:18:26,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:18:26,389.389 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 11:18:29,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:18:29,706.706 INFO    ] Checking for system updates...
[2026-08-25 11:18:29,745.745 INFO    ] 200
[2026-08-25 11:18:29,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:29,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:29,809.809 INFO    ] No update needed
[2026-08-25 11:18:29,811.811 INFO    ] Checking for camera pi updates...
[2026-08-25 11:18:29,845.845 INFO    ] 200
[2026-08-25 11:18:29,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:29,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:18:29,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:29,940.940 INFO    ] No camera update needed
[2026-08-25 11:18:29,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:18:29,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:18:29,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:18:29,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:18:32,996.996 INFO    ] ================================================
[2026-08-25 11:18:32,013.013 INFO    ] Launching Daemon at Tue Aug 25 11:18:32 IST 2026
[2026-08-25 11:18:32,025.025 INFO    ] ================================================
[2026-08-25 11:18:32,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:18:32
[2026-08-25 11:18:33,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:18:33,465.465 INFO    ] Initializing speech engine...
[2026-08-25 11:18:33,479.479 INFO    ] 2026-08-25 11:18:33
[2026-08-25 11:18:33,763.763 INFO    ] 2026-08-25 11:18:33
[2026-08-25 11:18:33,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:18:34,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:18:34,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:18:34,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:18:34,145.145 INFO    ] time= 25/08/2026 11:18:34
[2026-08-25 11:18:34,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:18:34,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:18:34,275.275 INFO    ] No existing commands found in stream
[2026-08-25 11:18:39,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:18:39,308.308 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 11:18:39,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:18:39,926.926 INFO    ] Checking for system updates...
[2026-08-25 11:18:39,961.961 INFO    ] 200
[2026-08-25 11:18:39,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:40,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:40,025.025 INFO    ] No update needed
[2026-08-25 11:18:40,028.028 INFO    ] Checking for camera pi updates...
[2026-08-25 11:18:40,061.061 INFO    ] 200
[2026-08-25 11:18:40,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:40,104.104 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:18:40,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:40,148.148 INFO    ] No camera update needed
[2026-08-25 11:18:40,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:18:40,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:18:40,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:18:40,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:18:42,203.203 INFO    ] ================================================
[2026-08-25 11:18:42,219.219 INFO    ] Launching Daemon at Tue Aug 25 11:18:42 IST 2026
[2026-08-25 11:18:42,230.230 INFO    ] ================================================
[2026-08-25 11:18:42,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:18:42
[2026-08-25 11:18:43,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:18:43,679.679 INFO    ] Initializing speech engine...
[2026-08-25 11:18:43,694.694 INFO    ] 2026-08-25 11:18:43
[2026-08-25 11:18:43,983.983 INFO    ] 2026-08-25 11:18:43
[2026-08-25 11:18:44,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:18:44,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:18:44,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:18:44,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:18:44,368.368 INFO    ] time= 25/08/2026 11:18:44
[2026-08-25 11:18:44,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:18:44,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:18:44,494.494 INFO    ] No existing commands found in stream
[2026-08-25 11:18:49,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:18:49,511.511 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 11:18:51,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:18:51,375.375 INFO    ] Checking for system updates...
[2026-08-25 11:18:51,411.411 INFO    ] 200
[2026-08-25 11:18:51,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:51,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:51,476.476 INFO    ] No update needed
[2026-08-25 11:18:51,478.478 INFO    ] Checking for camera pi updates...
[2026-08-25 11:18:51,511.511 INFO    ] 200
[2026-08-25 11:18:51,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:18:51,555.555 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:18:51,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:18:51,613.613 INFO    ] No camera update needed
[2026-08-25 11:18:51,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:18:51,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:18:51,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:18:51,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:18:53,669.669 INFO    ] ================================================
[2026-08-25 11:18:53,684.684 INFO    ] Launching Daemon at Tue Aug 25 11:18:53 IST 2026
[2026-08-25 11:18:53,695.695 INFO    ] ================================================
[2026-08-25 11:18:54,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:18:54
[2026-08-25 11:18:55,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:18:55,360.360 INFO    ] Initializing speech engine...
[2026-08-25 11:18:55,366.366 INFO    ] 2026-08-25 11:18:55
[2026-08-25 11:18:55,650.650 INFO    ] 2026-08-25 11:18:55
[2026-08-25 11:18:55,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:18:55,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:18:55,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:18:56,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:18:56,132.132 INFO    ] time= 25/08/2026 11:18:56
[2026-08-25 11:18:56,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:18:56,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:18:56,350.350 INFO    ] No existing commands found in stream
[2026-08-25 11:19:01,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:19:01,374.374 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 11:19:03,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:19:03,641.641 INFO    ] Checking for system updates...
[2026-08-25 11:19:03,681.681 INFO    ] 200
[2026-08-25 11:19:03,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:03,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:19:03,739.739 INFO    ] No update needed
[2026-08-25 11:19:03,742.742 INFO    ] Checking for camera pi updates...
[2026-08-25 11:19:03,777.777 INFO    ] 200
[2026-08-25 11:19:03,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:03,826.826 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:19:03,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:19:03,888.888 INFO    ] No camera update needed
[2026-08-25 11:19:03,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:19:03,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:19:03,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:19:03,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:19:05,943.943 INFO    ] ================================================
[2026-08-25 11:19:05,959.959 INFO    ] Launching Daemon at Tue Aug 25 11:19:05 IST 2026
[2026-08-25 11:19:05,971.971 INFO    ] ================================================
[2026-08-25 11:19:06,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:19:06
[2026-08-25 11:19:07,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:19:07,527.527 INFO    ] Initializing speech engine...
[2026-08-25 11:19:07,535.535 INFO    ] 2026-08-25 11:19:07
[2026-08-25 11:19:07,814.814 INFO    ] 2026-08-25 11:19:07
[2026-08-25 11:19:07,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:19:08,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:19:08,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:19:08,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:19:08,372.372 INFO    ] time= 25/08/2026 11:19:08
[2026-08-25 11:19:08,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:19:08,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:19:08,526.526 INFO    ] No existing commands found in stream
[2026-08-25 11:19:13,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:19:13,547.547 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 11:19:15,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:19:15,997.997 INFO    ] Checking for system updates...
[2026-08-25 11:19:16,034.034 INFO    ] 200
[2026-08-25 11:19:16,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:16,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:19:16,093.093 INFO    ] No update needed
[2026-08-25 11:19:16,096.096 INFO    ] Checking for camera pi updates...
[2026-08-25 11:19:16,133.133 INFO    ] 200
[2026-08-25 11:19:16,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:16,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:19:16,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:19:16,230.230 INFO    ] No camera update needed
[2026-08-25 11:19:16,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:19:16,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:19:16,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:19:16,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:19:18,285.285 INFO    ] ================================================
[2026-08-25 11:19:18,300.300 INFO    ] Launching Daemon at Tue Aug 25 11:19:18 IST 2026
[2026-08-25 11:19:18,311.311 INFO    ] ================================================
[2026-08-25 11:19:18,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:19:18
[2026-08-25 11:19:19,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:19:19,761.761 INFO    ] Initializing speech engine...
[2026-08-25 11:19:19,770.770 INFO    ] 2026-08-25 11:19:19
[2026-08-25 11:19:20,018.018 INFO    ] 2026-08-25 11:19:20
[2026-08-25 11:19:20,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:19:20,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:19:20,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:19:20,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:19:20,438.438 INFO    ] time= 25/08/2026 11:19:20
[2026-08-25 11:19:20,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:19:20,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:19:20,629.629 INFO    ] No existing commands found in stream
[2026-08-25 11:19:25,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:19:25,667.667 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 11:19:27,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:19:27,256.256 INFO    ] Checking for system updates...
[2026-08-25 11:19:27,296.296 INFO    ] 200
[2026-08-25 11:19:27,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:27,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:19:27,354.354 INFO    ] No update needed
[2026-08-25 11:19:27,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 11:19:27,394.394 INFO    ] 200
[2026-08-25 11:19:27,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:27,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:19:27,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:19:27,495.495 INFO    ] No camera update needed
[2026-08-25 11:19:27,498.498 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:19:27,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:19:27,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:19:27,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:19:29,553.553 INFO    ] ================================================
[2026-08-25 11:19:29,568.568 INFO    ] Launching Daemon at Tue Aug 25 11:19:29 IST 2026
[2026-08-25 11:19:29,579.579 INFO    ] ================================================
[2026-08-25 11:19:30,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:19:30
[2026-08-25 11:19:30,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:19:31,128.128 INFO    ] Initializing speech engine...
[2026-08-25 11:19:31,134.134 INFO    ] 2026-08-25 11:19:31
[2026-08-25 11:19:31,408.408 INFO    ] 2026-08-25 11:19:31
[2026-08-25 11:19:31,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:19:31,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:19:31,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:19:31,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:19:31,969.969 INFO    ] time= 25/08/2026 11:19:31
[2026-08-25 11:19:31,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:19:32,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:19:32,142.142 INFO    ] No existing commands found in stream
[2026-08-25 11:19:37,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:19:37,170.170 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 11:19:40,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:19:40,356.356 INFO    ] Checking for system updates...
[2026-08-25 11:19:40,392.392 INFO    ] 200
[2026-08-25 11:19:40,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:40,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:19:40,451.451 INFO    ] No update needed
[2026-08-25 11:19:40,453.453 INFO    ] Checking for camera pi updates...
[2026-08-25 11:19:40,491.491 INFO    ] 200
[2026-08-25 11:19:40,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:40,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:19:40,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:19:40,591.591 INFO    ] No camera update needed
[2026-08-25 11:19:40,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:19:40,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:19:40,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:19:40,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:19:42,650.650 INFO    ] ================================================
[2026-08-25 11:19:42,666.666 INFO    ] Launching Daemon at Tue Aug 25 11:19:42 IST 2026
[2026-08-25 11:19:42,676.676 INFO    ] ================================================
[2026-08-25 11:19:43,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:19:43
[2026-08-25 11:19:43,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:19:44,145.145 INFO    ] Initializing speech engine...
[2026-08-25 11:19:44,154.154 INFO    ] 2026-08-25 11:19:44
[2026-08-25 11:19:44,414.414 INFO    ] 2026-08-25 11:19:44
[2026-08-25 11:19:44,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:19:44,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:19:44,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:19:44,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:19:44,868.868 INFO    ] time= 25/08/2026 11:19:44
[2026-08-25 11:19:44,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:19:44,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:19:45,111.111 INFO    ] No existing commands found in stream
[2026-08-25 11:19:50,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:19:50,128.128 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 11:19:50,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:19:50,979.979 INFO    ] Checking for system updates...
[2026-08-25 11:19:51,022.022 INFO    ] 200
[2026-08-25 11:19:51,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:51,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:19:51,098.098 INFO    ] No update needed
[2026-08-25 11:19:51,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 11:19:51,168.168 INFO    ] 200
[2026-08-25 11:19:51,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:19:51,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:19:51,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:19:51,270.270 INFO    ] No camera update needed
[2026-08-25 11:19:51,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:19:51,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:19:51,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:19:51,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:19:53,329.329 INFO    ] ================================================
[2026-08-25 11:19:53,346.346 INFO    ] Launching Daemon at Tue Aug 25 11:19:53 IST 2026
[2026-08-25 11:19:53,358.358 INFO    ] ================================================
[2026-08-25 11:19:53,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:19:53
[2026-08-25 11:19:54,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:19:54,822.822 INFO    ] Initializing speech engine...
[2026-08-25 11:19:54,830.830 INFO    ] 2026-08-25 11:19:54
[2026-08-25 11:19:55,083.083 INFO    ] 2026-08-25 11:19:55
[2026-08-25 11:19:55,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:19:55,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:19:55,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:19:55,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:19:55,545.545 INFO    ] time= 25/08/2026 11:19:55
[2026-08-25 11:19:55,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:19:55,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:19:55,753.753 INFO    ] No existing commands found in stream
[2026-08-25 11:20:00,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:20:00,788.788 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 11:20:05,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:20:05,099.099 INFO    ] Checking for system updates...
[2026-08-25 11:20:05,144.144 INFO    ] 200
[2026-08-25 11:20:05,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:05,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:05,207.207 INFO    ] No update needed
[2026-08-25 11:20:05,210.210 INFO    ] Checking for camera pi updates...
[2026-08-25 11:20:05,244.244 INFO    ] 200
[2026-08-25 11:20:05,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:05,291.291 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:20:05,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:05,350.350 INFO    ] No camera update needed
[2026-08-25 11:20:05,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:20:05,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:20:05,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:20:05,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:20:07,406.406 INFO    ] ================================================
[2026-08-25 11:20:07,421.421 INFO    ] Launching Daemon at Tue Aug 25 11:20:07 IST 2026
[2026-08-25 11:20:07,433.433 INFO    ] ================================================
[2026-08-25 11:20:08,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:20:08
[2026-08-25 11:20:08,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:20:08,871.871 INFO    ] Initializing speech engine...
[2026-08-25 11:20:08,883.883 INFO    ] 2026-08-25 11:20:08
[2026-08-25 11:20:09,138.138 INFO    ] 2026-08-25 11:20:09
[2026-08-25 11:20:09,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:20:09,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:20:09,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:20:09,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:20:09,532.532 INFO    ] time= 25/08/2026 11:20:09
[2026-08-25 11:20:09,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:20:09,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:20:09,619.619 INFO    ] No existing commands found in stream
[2026-08-25 11:20:14,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:20:14,642.642 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 11:20:15,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:20:15,537.537 INFO    ] Checking for system updates...
[2026-08-25 11:20:15,573.573 INFO    ] 200
[2026-08-25 11:20:15,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:15,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:20:15,631.631 INFO    ] No update needed
[2026-08-25 11:20:15,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 11:20:15,669.669 INFO    ] 200
[2026-08-25 11:20:15,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:15,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:20:15,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:20:15,767.767 INFO    ] No camera update needed
[2026-08-25 11:20:15,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:20:15,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:20:15,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:20:15,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:20:17,822.822 INFO    ] ================================================
[2026-08-25 11:20:17,837.837 INFO    ] Launching Daemon at Tue Aug 25 11:20:17 IST 2026
[2026-08-25 11:20:17,848.848 INFO    ] ================================================
[2026-08-25 11:20:18,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:20:18
[2026-08-25 11:20:19,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:20:19,249.249 INFO    ] Initializing speech engine...
[2026-08-25 11:20:19,272.272 INFO    ] 2026-08-25 11:20:19
[2026-08-25 11:20:19,523.523 INFO    ] 2026-08-25 11:20:19
[2026-08-25 11:20:19,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:20:19,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:20:19,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:20:19,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:20:19,891.891 INFO    ] time= 25/08/2026 11:20:19
[2026-08-25 11:20:19,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:20:19,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:20:20,071.071 INFO    ] No existing commands found in stream
[2026-08-25 11:20:25,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:20:25,099.099 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 11:20:26,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:20:26,765.765 INFO    ] Checking for system updates...
[2026-08-25 11:20:26,802.802 INFO    ] 200
[2026-08-25 11:20:26,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:26,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:26,859.859 INFO    ] No update needed
[2026-08-25 11:20:26,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 11:20:26,894.894 INFO    ] 200
[2026-08-25 11:20:26,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:26,938.938 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:20:26,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:26,987.987 INFO    ] No camera update needed
[2026-08-25 11:20:26,989.989 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:20:26,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:20:26,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:20:27,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:20:29,044.044 INFO    ] ================================================
[2026-08-25 11:20:29,060.060 INFO    ] Launching Daemon at Tue Aug 25 11:20:29 IST 2026
[2026-08-25 11:20:29,072.072 INFO    ] ================================================
[2026-08-25 11:20:29,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:20:29
[2026-08-25 11:20:30,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:20:30,499.499 INFO    ] Initializing speech engine...
[2026-08-25 11:20:30,504.504 INFO    ] 2026-08-25 11:20:30
[2026-08-25 11:20:30,753.753 INFO    ] 2026-08-25 11:20:30
[2026-08-25 11:20:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:20:31,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:20:31,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:20:31,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:20:31,211.211 INFO    ] time= 25/08/2026 11:20:31
[2026-08-25 11:20:31,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:20:31,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:20:31,457.457 INFO    ] No existing commands found in stream
[2026-08-25 11:20:36,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:20:36,479.479 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 11:20:38,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:20:38,406.406 INFO    ] Checking for system updates...
[2026-08-25 11:20:38,447.447 INFO    ] 200
[2026-08-25 11:20:38,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:38,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:38,504.504 INFO    ] No update needed
[2026-08-25 11:20:38,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 11:20:38,542.542 INFO    ] 200
[2026-08-25 11:20:38,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:38,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:20:38,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:38,637.637 INFO    ] No camera update needed
[2026-08-25 11:20:38,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:20:38,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:20:38,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:20:38,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:20:40,693.693 INFO    ] ================================================
[2026-08-25 11:20:40,709.709 INFO    ] Launching Daemon at Tue Aug 25 11:20:40 IST 2026
[2026-08-25 11:20:40,720.720 INFO    ] ================================================
[2026-08-25 11:20:41,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:20:41
[2026-08-25 11:20:41,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:20:42,182.182 INFO    ] Initializing speech engine...
[2026-08-25 11:20:42,187.187 INFO    ] 2026-08-25 11:20:42
[2026-08-25 11:20:42,447.447 INFO    ] 2026-08-25 11:20:42
[2026-08-25 11:20:42,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:20:42,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:20:42,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:20:42,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:20:42,921.921 INFO    ] time= 25/08/2026 11:20:42
[2026-08-25 11:20:42,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:20:42,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:20:43,142.142 INFO    ] No existing commands found in stream
[2026-08-25 11:20:48,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:20:48,159.159 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 11:20:50,674.674 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:20:50,676.676 INFO    ] Checking for system updates...
[2026-08-25 11:20:50,712.712 INFO    ] 200
[2026-08-25 11:20:50,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:50,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:50,769.769 INFO    ] No update needed
[2026-08-25 11:20:50,771.771 INFO    ] Checking for camera pi updates...
[2026-08-25 11:20:50,804.804 INFO    ] 200
[2026-08-25 11:20:50,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:20:50,851.851 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:20:50,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:20:50,907.907 INFO    ] No camera update needed
[2026-08-25 11:20:50,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:20:50,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:20:50,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:20:50,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:20:52,964.964 INFO    ] ================================================
[2026-08-25 11:20:52,979.979 INFO    ] Launching Daemon at Tue Aug 25 11:20:52 IST 2026
[2026-08-25 11:20:52,990.990 INFO    ] ================================================
[2026-08-25 11:20:53,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:20:53
[2026-08-25 11:20:54,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:20:54,448.448 INFO    ] Initializing speech engine...
[2026-08-25 11:20:54,455.455 INFO    ] 2026-08-25 11:20:54
[2026-08-25 11:20:54,714.714 INFO    ] 2026-08-25 11:20:54
[2026-08-25 11:20:54,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:20:54,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:20:55,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:20:55,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:20:55,175.175 INFO    ] time= 25/08/2026 11:20:55
[2026-08-25 11:20:55,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:20:55,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:20:55,385.385 INFO    ] No existing commands found in stream
[2026-08-25 11:21:00,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:21:00,410.410 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 11:21:03,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:21:03,041.041 INFO    ] Checking for system updates...
[2026-08-25 11:21:03,080.080 INFO    ] 200
[2026-08-25 11:21:03,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:03,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:21:03,144.144 INFO    ] No update needed
[2026-08-25 11:21:03,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 11:21:03,180.180 INFO    ] 200
[2026-08-25 11:21:03,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:03,228.228 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:21:03,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:21:03,279.279 INFO    ] No camera update needed
[2026-08-25 11:21:03,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:21:03,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:21:03,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:21:03,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:21:05,337.337 INFO    ] ================================================
[2026-08-25 11:21:05,352.352 INFO    ] Launching Daemon at Tue Aug 25 11:21:05 IST 2026
[2026-08-25 11:21:05,364.364 INFO    ] ================================================
[2026-08-25 11:21:05,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:21:05
[2026-08-25 11:21:06,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:21:06,835.835 INFO    ] Initializing speech engine...
[2026-08-25 11:21:06,861.861 INFO    ] 2026-08-25 11:21:06
[2026-08-25 11:21:07,138.138 INFO    ] 2026-08-25 11:21:07
[2026-08-25 11:21:07,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:21:07,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:21:07,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:21:07,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:21:07,561.561 INFO    ] time= 25/08/2026 11:21:07
[2026-08-25 11:21:07,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:21:07,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:21:07,728.728 INFO    ] No existing commands found in stream
[2026-08-25 11:21:12,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:21:12,757.757 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 11:21:13,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:21:13,541.541 INFO    ] Checking for system updates...
[2026-08-25 11:21:13,578.578 INFO    ] 200
[2026-08-25 11:21:13,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:13,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:21:13,644.644 INFO    ] No update needed
[2026-08-25 11:21:13,647.647 INFO    ] Checking for camera pi updates...
[2026-08-25 11:21:13,682.682 INFO    ] 200
[2026-08-25 11:21:13,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:13,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:21:13,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:21:13,875.875 INFO    ] No camera update needed
[2026-08-25 11:21:13,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:21:13,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:21:13,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:21:13,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:21:15,934.934 INFO    ] ================================================
[2026-08-25 11:21:15,949.949 INFO    ] Launching Daemon at Tue Aug 25 11:21:15 IST 2026
[2026-08-25 11:21:15,961.961 INFO    ] ================================================
[2026-08-25 11:21:16,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:21:16
[2026-08-25 11:21:17,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:21:17,414.414 INFO    ] Initializing speech engine...
[2026-08-25 11:21:17,423.423 INFO    ] 2026-08-25 11:21:17
[2026-08-25 11:21:17,685.685 INFO    ] 2026-08-25 11:21:17
[2026-08-25 11:21:17,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:21:17,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:21:17,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:21:18,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:21:18,205.205 INFO    ] time= 25/08/2026 11:21:18
[2026-08-25 11:21:18,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:21:18,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:21:18,382.382 INFO    ] No existing commands found in stream
[2026-08-25 11:21:23,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:21:23,405.405 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 11:21:24,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:21:24,455.455 INFO    ] Checking for system updates...
[2026-08-25 11:21:24,490.490 INFO    ] 200
[2026-08-25 11:21:24,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:24,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:21:24,548.548 INFO    ] No update needed
[2026-08-25 11:21:24,551.551 INFO    ] Checking for camera pi updates...
[2026-08-25 11:21:24,588.588 INFO    ] 200
[2026-08-25 11:21:24,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:24,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:21:24,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:21:24,692.692 INFO    ] No camera update needed
[2026-08-25 11:21:24,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:21:24,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:21:24,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:21:24,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:21:26,748.748 INFO    ] ================================================
[2026-08-25 11:21:26,764.764 INFO    ] Launching Daemon at Tue Aug 25 11:21:26 IST 2026
[2026-08-25 11:21:26,775.775 INFO    ] ================================================
[2026-08-25 11:21:27,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:21:27
[2026-08-25 11:21:27,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:21:28,179.179 INFO    ] Initializing speech engine...
[2026-08-25 11:21:28,202.202 INFO    ] 2026-08-25 11:21:28
[2026-08-25 11:21:28,457.457 INFO    ] 2026-08-25 11:21:28
[2026-08-25 11:21:28,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:21:28,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:21:28,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:21:28,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:21:28,964.964 INFO    ] time= 25/08/2026 11:21:28
[2026-08-25 11:21:29,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:21:29,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:21:29,125.125 INFO    ] No existing commands found in stream
[2026-08-25 11:21:34,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:21:34,160.160 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 11:21:34,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:21:34,701.701 INFO    ] Checking for system updates...
[2026-08-25 11:21:34,736.736 INFO    ] 200
[2026-08-25 11:21:34,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:34,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:21:34,802.802 INFO    ] No update needed
[2026-08-25 11:21:34,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 11:21:34,841.841 INFO    ] 200
[2026-08-25 11:21:34,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:34,889.889 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:21:34,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:21:34,936.936 INFO    ] No camera update needed
[2026-08-25 11:21:34,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:21:34,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:21:34,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:21:34,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:21:37,995.995 INFO    ] ================================================
[2026-08-25 11:21:37,011.011 INFO    ] Launching Daemon at Tue Aug 25 11:21:37 IST 2026
[2026-08-25 11:21:37,022.022 INFO    ] ================================================
[2026-08-25 11:21:37,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:21:37
[2026-08-25 11:21:38,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:21:38,478.478 INFO    ] Initializing speech engine...
[2026-08-25 11:21:38,488.488 INFO    ] 2026-08-25 11:21:38
[2026-08-25 11:21:38,750.750 INFO    ] 2026-08-25 11:21:38
[2026-08-25 11:21:38,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:21:39,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:21:39,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:21:39,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:21:39,197.197 INFO    ] time= 25/08/2026 11:21:39
[2026-08-25 11:21:39,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:21:39,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:21:39,436.436 INFO    ] No existing commands found in stream
[2026-08-25 11:21:44,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:21:44,458.458 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 11:21:48,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:21:48,485.485 INFO    ] Checking for system updates...
[2026-08-25 11:21:48,522.522 INFO    ] 200
[2026-08-25 11:21:48,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:48,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:21:48,587.587 INFO    ] No update needed
[2026-08-25 11:21:48,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 11:21:48,624.624 INFO    ] 200
[2026-08-25 11:21:48,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:48,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:21:48,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:21:48,722.722 INFO    ] No camera update needed
[2026-08-25 11:21:48,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:21:48,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:21:48,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:21:48,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:21:50,778.778 INFO    ] ================================================
[2026-08-25 11:21:50,794.794 INFO    ] Launching Daemon at Tue Aug 25 11:21:50 IST 2026
[2026-08-25 11:21:50,806.806 INFO    ] ================================================
[2026-08-25 11:21:51,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:21:51
[2026-08-25 11:21:52,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:21:52,399.399 INFO    ] Initializing speech engine...
[2026-08-25 11:21:52,408.408 INFO    ] 2026-08-25 11:21:52
[2026-08-25 11:21:52,657.657 INFO    ] 2026-08-25 11:21:52
[2026-08-25 11:21:52,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:21:52,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:21:52,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:21:53,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:21:53,166.166 INFO    ] time= 25/08/2026 11:21:53
[2026-08-25 11:21:53,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:21:53,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:21:53,365.365 INFO    ] No existing commands found in stream
[2026-08-25 11:21:58,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:21:58,391.391 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 11:21:59,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:21:59,785.785 INFO    ] Checking for system updates...
[2026-08-25 11:21:59,822.822 INFO    ] 200
[2026-08-25 11:21:59,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:59,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:21:59,889.889 INFO    ] No update needed
[2026-08-25 11:21:59,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 11:21:59,926.926 INFO    ] 200
[2026-08-25 11:21:59,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:21:59,975.975 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:22:00,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:22:00,028.028 INFO    ] No camera update needed
[2026-08-25 11:22:00,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:22:00,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:22:00,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:22:00,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:22:02,107.107 INFO    ] ================================================
[2026-08-25 11:22:02,127.127 INFO    ] Launching Daemon at Tue Aug 25 11:22:02 IST 2026
[2026-08-25 11:22:02,144.144 INFO    ] ================================================
[2026-08-25 11:22:02,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:22:02
[2026-08-25 11:22:03,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:22:03,735.735 INFO    ] Initializing speech engine...
[2026-08-25 11:22:03,744.744 INFO    ] 2026-08-25 11:22:03
[2026-08-25 11:22:03,993.993 INFO    ] 2026-08-25 11:22:03
[2026-08-25 11:22:04,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:22:04,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:22:04,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:22:04,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:22:04,488.488 INFO    ] time= 25/08/2026 11:22:04
[2026-08-25 11:22:04,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:22:04,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:22:04,703.703 INFO    ] No existing commands found in stream
[2026-08-25 11:22:09,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:22:09,728.728 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 11:22:12,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:22:12,486.486 INFO    ] Checking for system updates...
[2026-08-25 11:22:12,525.525 INFO    ] 200
[2026-08-25 11:22:12,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:12,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:12,587.587 INFO    ] No update needed
[2026-08-25 11:22:12,589.589 INFO    ] Checking for camera pi updates...
[2026-08-25 11:22:12,623.623 INFO    ] 200
[2026-08-25 11:22:12,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:12,667.667 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:22:12,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:12,741.741 INFO    ] No camera update needed
[2026-08-25 11:22:12,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:22:12,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:22:12,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:22:12,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:22:14,797.797 INFO    ] ================================================
[2026-08-25 11:22:14,812.812 INFO    ] Launching Daemon at Tue Aug 25 11:22:14 IST 2026
[2026-08-25 11:22:14,823.823 INFO    ] ================================================
[2026-08-25 11:22:15,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:22:15
[2026-08-25 11:22:15,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:22:16,241.241 INFO    ] Initializing speech engine...
[2026-08-25 11:22:16,250.250 INFO    ] 2026-08-25 11:22:16
[2026-08-25 11:22:16,498.498 INFO    ] 2026-08-25 11:22:16
[2026-08-25 11:22:16,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:22:16,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:22:16,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:22:16,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:22:16,976.976 INFO    ] time= 25/08/2026 11:22:16
[2026-08-25 11:22:17,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:22:17,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:22:17,224.224 INFO    ] No existing commands found in stream
[2026-08-25 11:22:22,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:22:22,241.241 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 11:22:25,142.142 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:22:25,145.145 INFO    ] Checking for system updates...
[2026-08-25 11:22:25,182.182 INFO    ] 200
[2026-08-25 11:22:25,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:25,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:25,242.242 INFO    ] No update needed
[2026-08-25 11:22:25,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 11:22:25,279.279 INFO    ] 200
[2026-08-25 11:22:25,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:25,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:22:25,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:25,429.429 INFO    ] No camera update needed
[2026-08-25 11:22:25,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:22:25,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:22:25,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:22:25,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:22:27,488.488 INFO    ] ================================================
[2026-08-25 11:22:27,504.504 INFO    ] Launching Daemon at Tue Aug 25 11:22:27 IST 2026
[2026-08-25 11:22:27,515.515 INFO    ] ================================================
[2026-08-25 11:22:28,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:22:28
[2026-08-25 11:22:28,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:22:29,091.091 INFO    ] Initializing speech engine...
[2026-08-25 11:22:29,103.103 INFO    ] 2026-08-25 11:22:29
[2026-08-25 11:22:29,380.380 INFO    ] 2026-08-25 11:22:29
[2026-08-25 11:22:29,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:22:29,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:22:29,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:22:29,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:22:29,916.916 INFO    ] time= 25/08/2026 11:22:29
[2026-08-25 11:22:29,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:22:29,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:22:30,071.071 INFO    ] No existing commands found in stream
[2026-08-25 11:22:35,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:22:35,111.111 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 11:22:38,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:22:38,087.087 INFO    ] Checking for system updates...
[2026-08-25 11:22:38,123.123 INFO    ] 200
[2026-08-25 11:22:38,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:38,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:38,182.182 INFO    ] No update needed
[2026-08-25 11:22:38,185.185 INFO    ] Checking for camera pi updates...
[2026-08-25 11:22:38,219.219 INFO    ] 200
[2026-08-25 11:22:38,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:38,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:22:38,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:38,318.318 INFO    ] No camera update needed
[2026-08-25 11:22:38,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:22:38,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:22:38,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:22:38,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:22:40,376.376 INFO    ] ================================================
[2026-08-25 11:22:40,391.391 INFO    ] Launching Daemon at Tue Aug 25 11:22:40 IST 2026
[2026-08-25 11:22:40,402.402 INFO    ] ================================================
[2026-08-25 11:22:40,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:22:40
[2026-08-25 11:22:41,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:22:41,843.843 INFO    ] Initializing speech engine...
[2026-08-25 11:22:41,853.853 INFO    ] 2026-08-25 11:22:41
[2026-08-25 11:22:42,100.100 INFO    ] 2026-08-25 11:22:42
[2026-08-25 11:22:42,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:22:42,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:22:42,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:22:42,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:22:42,594.594 INFO    ] time= 25/08/2026 11:22:42
[2026-08-25 11:22:42,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:22:42,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:22:42,817.817 INFO    ] No existing commands found in stream
[2026-08-25 11:22:47,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:22:47,838.838 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 11:22:49,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:22:49,428.428 INFO    ] Checking for system updates...
[2026-08-25 11:22:49,467.467 INFO    ] 200
[2026-08-25 11:22:49,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:49,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:49,530.530 INFO    ] No update needed
[2026-08-25 11:22:49,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 11:22:49,569.569 INFO    ] 200
[2026-08-25 11:22:49,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:22:49,611.611 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:22:49,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:22:49,675.675 INFO    ] No camera update needed
[2026-08-25 11:22:49,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:22:49,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:22:49,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:22:49,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:22:51,730.730 INFO    ] ================================================
[2026-08-25 11:22:51,746.746 INFO    ] Launching Daemon at Tue Aug 25 11:22:51 IST 2026
[2026-08-25 11:22:51,758.758 INFO    ] ================================================
[2026-08-25 11:22:52,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:22:52
[2026-08-25 11:22:52,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:22:53,212.212 INFO    ] Initializing speech engine...
[2026-08-25 11:22:53,221.221 INFO    ] 2026-08-25 11:22:53
[2026-08-25 11:22:53,469.469 INFO    ] 2026-08-25 11:22:53
[2026-08-25 11:22:53,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:22:53,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:22:53,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:22:53,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:22:53,956.956 INFO    ] time= 25/08/2026 11:22:53
[2026-08-25 11:22:54,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:22:54,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:22:54,218.218 INFO    ] No existing commands found in stream
[2026-08-25 11:22:59,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:22:59,247.247 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 11:23:01,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:23:01,154.154 INFO    ] Checking for system updates...
[2026-08-25 11:23:01,209.209 INFO    ] 200
[2026-08-25 11:23:01,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:01,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:23:01,313.313 INFO    ] No update needed
[2026-08-25 11:23:01,316.316 INFO    ] Checking for camera pi updates...
[2026-08-25 11:23:01,365.365 INFO    ] 200
[2026-08-25 11:23:01,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:01,420.420 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:23:01,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:23:01,499.499 INFO    ] No camera update needed
[2026-08-25 11:23:01,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:23:01,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:23:01,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:23:01,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:23:03,558.558 INFO    ] ================================================
[2026-08-25 11:23:03,573.573 INFO    ] Launching Daemon at Tue Aug 25 11:23:03 IST 2026
[2026-08-25 11:23:03,584.584 INFO    ] ================================================
[2026-08-25 11:23:04,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:23:04
[2026-08-25 11:23:04,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:23:05,002.002 INFO    ] Initializing speech engine...
[2026-08-25 11:23:05,013.013 INFO    ] 2026-08-25 11:23:05
[2026-08-25 11:23:05,264.264 INFO    ] 2026-08-25 11:23:05
[2026-08-25 11:23:05,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:23:05,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:23:05,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:23:05,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:23:05,833.833 INFO    ] time= 25/08/2026 11:23:05
[2026-08-25 11:23:05,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:23:05,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:23:05,986.986 INFO    ] No existing commands found in stream
[2026-08-25 11:23:10,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:23:10,999.999 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 11:23:12,747.747 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:23:12,750.750 INFO    ] Checking for system updates...
[2026-08-25 11:23:12,789.789 INFO    ] 200
[2026-08-25 11:23:12,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:12,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:23:12,846.846 INFO    ] No update needed
[2026-08-25 11:23:12,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 11:23:12,882.882 INFO    ] 200
[2026-08-25 11:23:12,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:12,929.929 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:23:12,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:23:12,974.974 INFO    ] No camera update needed
[2026-08-25 11:23:12,976.976 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:23:12,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:23:12,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:23:12,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:23:15,028.028 INFO    ] ================================================
[2026-08-25 11:23:15,043.043 INFO    ] Launching Daemon at Tue Aug 25 11:23:15 IST 2026
[2026-08-25 11:23:15,054.054 INFO    ] ================================================
[2026-08-25 11:23:15,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:23:15
[2026-08-25 11:23:16,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:23:16,671.671 INFO    ] Initializing speech engine...
[2026-08-25 11:23:16,681.681 INFO    ] 2026-08-25 11:23:16
[2026-08-25 11:23:16,960.960 INFO    ] 2026-08-25 11:23:16
[2026-08-25 11:23:17,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:23:17,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:23:17,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:23:17,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:23:17,492.492 INFO    ] time= 25/08/2026 11:23:17
[2026-08-25 11:23:17,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:23:17,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:23:17,661.661 INFO    ] No existing commands found in stream
[2026-08-25 11:23:22,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:23:22,696.696 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 11:23:25,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:23:25,425.425 INFO    ] Checking for system updates...
[2026-08-25 11:23:25,465.465 INFO    ] 200
[2026-08-25 11:23:25,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:25,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:23:25,529.529 INFO    ] No update needed
[2026-08-25 11:23:25,532.532 INFO    ] Checking for camera pi updates...
[2026-08-25 11:23:25,567.567 INFO    ] 200
[2026-08-25 11:23:25,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:25,615.615 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:23:25,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:23:25,763.763 INFO    ] No camera update needed
[2026-08-25 11:23:25,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:23:25,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:23:25,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:23:25,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:23:27,821.821 INFO    ] ================================================
[2026-08-25 11:23:27,837.837 INFO    ] Launching Daemon at Tue Aug 25 11:23:27 IST 2026
[2026-08-25 11:23:27,848.848 INFO    ] ================================================
[2026-08-25 11:23:28,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:23:28
[2026-08-25 11:23:29,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:23:29,258.258 INFO    ] Initializing speech engine...
[2026-08-25 11:23:29,268.268 INFO    ] 2026-08-25 11:23:29
[2026-08-25 11:23:29,549.549 INFO    ] 2026-08-25 11:23:29
[2026-08-25 11:23:29,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:23:29,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:23:29,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:23:29,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:23:29,935.935 INFO    ] time= 25/08/2026 11:23:29
[2026-08-25 11:23:29,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:23:29,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:23:30,059.059 INFO    ] No existing commands found in stream
[2026-08-25 11:23:35,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:23:35,074.074 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 11:23:35,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:23:35,776.776 INFO    ] Checking for system updates...
[2026-08-25 11:23:35,811.811 INFO    ] 200
[2026-08-25 11:23:35,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:35,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:23:35,868.868 INFO    ] No update needed
[2026-08-25 11:23:35,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 11:23:35,905.905 INFO    ] 200
[2026-08-25 11:23:35,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:35,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:23:36,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:23:36,007.007 INFO    ] No camera update needed
[2026-08-25 11:23:36,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:23:36,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:23:36,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:23:36,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:23:38,062.062 INFO    ] ================================================
[2026-08-25 11:23:38,078.078 INFO    ] Launching Daemon at Tue Aug 25 11:23:38 IST 2026
[2026-08-25 11:23:38,089.089 INFO    ] ================================================
[2026-08-25 11:23:38,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:23:38
[2026-08-25 11:23:39,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:23:39,682.682 INFO    ] Initializing speech engine...
[2026-08-25 11:23:39,692.692 INFO    ] 2026-08-25 11:23:39
[2026-08-25 11:23:40,006.006 INFO    ] 2026-08-25 11:23:39
[2026-08-25 11:23:40,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:23:40,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:23:40,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:23:40,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:23:40,511.511 INFO    ] time= 25/08/2026 11:23:40
[2026-08-25 11:23:40,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:23:40,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:23:40,753.753 INFO    ] No existing commands found in stream
[2026-08-25 11:23:45,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:23:45,776.776 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 11:23:49,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:23:49,975.975 INFO    ] Checking for system updates...
[2026-08-25 11:23:50,013.013 INFO    ] 200
[2026-08-25 11:23:50,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:50,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:23:50,072.072 INFO    ] No update needed
[2026-08-25 11:23:50,075.075 INFO    ] Checking for camera pi updates...
[2026-08-25 11:23:50,108.108 INFO    ] 200
[2026-08-25 11:23:50,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:23:50,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:23:50,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:23:50,202.202 INFO    ] No camera update needed
[2026-08-25 11:23:50,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:23:50,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:23:50,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:23:50,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:23:52,256.256 INFO    ] ================================================
[2026-08-25 11:23:52,272.272 INFO    ] Launching Daemon at Tue Aug 25 11:23:52 IST 2026
[2026-08-25 11:23:52,283.283 INFO    ] ================================================
[2026-08-25 11:23:52,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:23:52
[2026-08-25 11:23:53,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:23:53,695.695 INFO    ] Initializing speech engine...
[2026-08-25 11:23:53,720.720 INFO    ] 2026-08-25 11:23:53
[2026-08-25 11:23:53,988.988 INFO    ] 2026-08-25 11:23:53
[2026-08-25 11:23:54,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:23:54,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:23:54,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:23:54,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:23:54,407.407 INFO    ] time= 25/08/2026 11:23:54
[2026-08-25 11:23:54,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:23:54,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:23:54,594.594 INFO    ] No existing commands found in stream
[2026-08-25 11:23:59,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:23:59,628.628 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 11:24:03,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:24:03,419.419 INFO    ] Checking for system updates...
[2026-08-25 11:24:03,466.466 INFO    ] 200
[2026-08-25 11:24:03,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:03,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:03,549.549 INFO    ] No update needed
[2026-08-25 11:24:03,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 11:24:03,589.589 INFO    ] 200
[2026-08-25 11:24:03,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:03,641.641 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:24:03,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:03,700.700 INFO    ] No camera update needed
[2026-08-25 11:24:03,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:24:03,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:24:03,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:24:03,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:24:05,768.768 INFO    ] ================================================
[2026-08-25 11:24:05,783.783 INFO    ] Launching Daemon at Tue Aug 25 11:24:05 IST 2026
[2026-08-25 11:24:05,795.795 INFO    ] ================================================
[2026-08-25 11:24:06,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:24:06
[2026-08-25 11:24:06,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:24:07,225.225 INFO    ] Initializing speech engine...
[2026-08-25 11:24:07,232.232 INFO    ] 2026-08-25 11:24:07
[2026-08-25 11:24:07,523.523 INFO    ] 2026-08-25 11:24:07
[2026-08-25 11:24:07,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:24:07,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:24:07,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:24:07,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:24:07,914.914 INFO    ] time= 25/08/2026 11:24:07
[2026-08-25 11:24:07,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:24:07,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:24:08,024.024 INFO    ] No existing commands found in stream
[2026-08-25 11:24:13,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:24:13,042.042 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 11:24:14,329.329 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:24:14,332.332 INFO    ] Checking for system updates...
[2026-08-25 11:24:14,370.370 INFO    ] 200
[2026-08-25 11:24:14,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:14,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:14,428.428 INFO    ] No update needed
[2026-08-25 11:24:14,430.430 INFO    ] Checking for camera pi updates...
[2026-08-25 11:24:14,464.464 INFO    ] 200
[2026-08-25 11:24:14,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:14,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:24:14,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:14,561.561 INFO    ] No camera update needed
[2026-08-25 11:24:14,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:24:14,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:24:14,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:24:14,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:24:16,616.616 INFO    ] ================================================
[2026-08-25 11:24:16,632.632 INFO    ] Launching Daemon at Tue Aug 25 11:24:16 IST 2026
[2026-08-25 11:24:16,643.643 INFO    ] ================================================
[2026-08-25 11:24:17,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:24:17
[2026-08-25 11:24:17,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:24:18,245.245 INFO    ] Initializing speech engine...
[2026-08-25 11:24:18,259.259 INFO    ] 2026-08-25 11:24:18
[2026-08-25 11:24:18,567.567 INFO    ] 2026-08-25 11:24:18
[2026-08-25 11:24:18,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:24:18,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:24:18,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:24:18,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:24:18,994.994 INFO    ] time= 25/08/2026 11:24:18
[2026-08-25 11:24:19,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:24:19,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:24:19,234.234 INFO    ] No existing commands found in stream
[2026-08-25 11:24:24,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:24:24,263.263 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 11:24:27,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:24:27,127.127 INFO    ] Checking for system updates...
[2026-08-25 11:24:27,164.164 INFO    ] 200
[2026-08-25 11:24:27,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:27,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:27,223.223 INFO    ] No update needed
[2026-08-25 11:24:27,226.226 INFO    ] Checking for camera pi updates...
[2026-08-25 11:24:27,260.260 INFO    ] 200
[2026-08-25 11:24:27,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:27,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:24:27,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:27,359.359 INFO    ] No camera update needed
[2026-08-25 11:24:27,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:24:27,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:24:27,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:24:27,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:24:29,416.416 INFO    ] ================================================
[2026-08-25 11:24:29,432.432 INFO    ] Launching Daemon at Tue Aug 25 11:24:29 IST 2026
[2026-08-25 11:24:29,442.442 INFO    ] ================================================
[2026-08-25 11:24:30,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:24:30
[2026-08-25 11:24:30,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:24:30,860.860 INFO    ] Initializing speech engine...
[2026-08-25 11:24:30,875.875 INFO    ] 2026-08-25 11:24:30
[2026-08-25 11:24:31,156.156 INFO    ] 2026-08-25 11:24:31
[2026-08-25 11:24:31,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:24:31,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:24:31,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:24:31,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:24:31,502.502 INFO    ] time= 25/08/2026 11:24:31
[2026-08-25 11:24:31,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:24:31,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:24:31,652.652 INFO    ] No existing commands found in stream
[2026-08-25 11:24:36,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:24:36,667.667 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 11:24:38,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:24:38,024.024 INFO    ] Checking for system updates...
[2026-08-25 11:24:38,059.059 INFO    ] 200
[2026-08-25 11:24:38,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:38,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:38,116.116 INFO    ] No update needed
[2026-08-25 11:24:38,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 11:24:38,151.151 INFO    ] 200
[2026-08-25 11:24:38,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:38,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:24:38,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:24:38,274.274 INFO    ] No camera update needed
[2026-08-25 11:24:38,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:24:38,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:24:38,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:24:38,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:24:40,328.328 INFO    ] ================================================
[2026-08-25 11:24:40,344.344 INFO    ] Launching Daemon at Tue Aug 25 11:24:40 IST 2026
[2026-08-25 11:24:40,354.354 INFO    ] ================================================
[2026-08-25 11:24:40,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:24:40
[2026-08-25 11:24:41,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:24:41,757.757 INFO    ] Initializing speech engine...
[2026-08-25 11:24:41,766.766 INFO    ] 2026-08-25 11:24:41
[2026-08-25 11:24:42,057.057 INFO    ] 2026-08-25 11:24:42
[2026-08-25 11:24:42,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:24:42,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:24:42,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:24:42,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:24:42,470.470 INFO    ] time= 25/08/2026 11:24:42
[2026-08-25 11:24:42,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:24:42,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:24:42,629.629 INFO    ] No existing commands found in stream
[2026-08-25 11:24:47,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:24:47,657.657 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 11:24:51,543.543 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:24:51,546.546 INFO    ] Checking for system updates...
[2026-08-25 11:24:51,584.584 INFO    ] 200
[2026-08-25 11:24:51,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:51,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:24:51,650.650 INFO    ] No update needed
[2026-08-25 11:24:51,653.653 INFO    ] Checking for camera pi updates...
[2026-08-25 11:24:51,695.695 INFO    ] 200
[2026-08-25 11:24:51,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:24:51,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:24:51,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:24:51,798.798 INFO    ] No camera update needed
[2026-08-25 11:24:51,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:24:51,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:24:51,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:24:51,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:24:53,858.858 INFO    ] ================================================
[2026-08-25 11:24:53,874.874 INFO    ] Launching Daemon at Tue Aug 25 11:24:53 IST 2026
[2026-08-25 11:24:53,885.885 INFO    ] ================================================
[2026-08-25 11:24:54,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:24:54
[2026-08-25 11:24:55,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:24:55,297.297 INFO    ] Initializing speech engine...
[2026-08-25 11:24:55,306.306 INFO    ] 2026-08-25 11:24:55
[2026-08-25 11:24:55,595.595 INFO    ] 2026-08-25 11:24:55
[2026-08-25 11:24:55,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:24:55,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:24:55,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:24:55,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:24:55,986.986 INFO    ] time= 25/08/2026 11:24:55
[2026-08-25 11:24:56,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:24:56,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:24:56,092.092 INFO    ] No existing commands found in stream
[2026-08-25 11:25:01,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:25:01,107.107 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 11:25:03,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:25:03,867.867 INFO    ] Checking for system updates...
[2026-08-25 11:25:03,903.903 INFO    ] 200
[2026-08-25 11:25:03,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:03,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:03,971.971 INFO    ] No update needed
[2026-08-25 11:25:03,974.974 INFO    ] Checking for camera pi updates...
[2026-08-25 11:25:04,008.008 INFO    ] 200
[2026-08-25 11:25:04,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:04,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:25:04,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:04,114.114 INFO    ] No camera update needed
[2026-08-25 11:25:04,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:25:04,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:25:04,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:25:04,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:25:06,172.172 INFO    ] ================================================
[2026-08-25 11:25:06,189.189 INFO    ] Launching Daemon at Tue Aug 25 11:25:06 IST 2026
[2026-08-25 11:25:06,201.201 INFO    ] ================================================
[2026-08-25 11:25:06,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:25:06
[2026-08-25 11:25:07,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:25:07,760.760 INFO    ] Initializing speech engine...
[2026-08-25 11:25:07,767.767 INFO    ] 2026-08-25 11:25:07
[2026-08-25 11:25:08,068.068 INFO    ] 2026-08-25 11:25:08
[2026-08-25 11:25:08,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:25:08,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:25:08,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:25:08,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:25:08,482.482 INFO    ] time= 25/08/2026 11:25:08
[2026-08-25 11:25:08,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:25:08,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:25:08,624.624 INFO    ] No existing commands found in stream
[2026-08-25 11:25:13,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:25:13,652.652 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 11:25:14,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:25:14,666.666 INFO    ] Checking for system updates...
[2026-08-25 11:25:14,702.702 INFO    ] 200
[2026-08-25 11:25:14,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:14,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:14,759.759 INFO    ] No update needed
[2026-08-25 11:25:14,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 11:25:14,795.795 INFO    ] 200
[2026-08-25 11:25:14,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:14,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:25:14,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:14,894.894 INFO    ] No camera update needed
[2026-08-25 11:25:14,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:25:14,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:25:14,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:25:14,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:25:16,949.949 INFO    ] ================================================
[2026-08-25 11:25:16,965.965 INFO    ] Launching Daemon at Tue Aug 25 11:25:16 IST 2026
[2026-08-25 11:25:16,976.976 INFO    ] ================================================
[2026-08-25 11:25:17,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:25:17
[2026-08-25 11:25:18,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:25:18,412.412 INFO    ] Initializing speech engine...
[2026-08-25 11:25:18,421.421 INFO    ] 2026-08-25 11:25:18
[2026-08-25 11:25:18,713.713 INFO    ] 2026-08-25 11:25:18
[2026-08-25 11:25:18,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:25:18,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:25:18,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:25:19,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:25:19,127.127 INFO    ] time= 25/08/2026 11:25:19
[2026-08-25 11:25:19,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:25:19,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:25:19,302.302 INFO    ] No existing commands found in stream
[2026-08-25 11:25:24,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:25:24,330.330 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 11:25:28,795.795 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:25:28,798.798 INFO    ] Checking for system updates...
[2026-08-25 11:25:28,833.833 INFO    ] 200
[2026-08-25 11:25:28,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:28,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:28,889.889 INFO    ] No update needed
[2026-08-25 11:25:28,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 11:25:28,928.928 INFO    ] 200
[2026-08-25 11:25:28,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:28,971.971 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:25:29,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:29,117.117 INFO    ] No camera update needed
[2026-08-25 11:25:29,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:25:29,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:25:29,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:25:29,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:25:31,173.173 INFO    ] ================================================
[2026-08-25 11:25:31,189.189 INFO    ] Launching Daemon at Tue Aug 25 11:25:31 IST 2026
[2026-08-25 11:25:31,200.200 INFO    ] ================================================
[2026-08-25 11:25:31,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:25:31
[2026-08-25 11:25:32,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:25:32,847.847 INFO    ] Initializing speech engine...
[2026-08-25 11:25:32,856.856 INFO    ] 2026-08-25 11:25:32
[2026-08-25 11:25:33,116.116 INFO    ] 2026-08-25 11:25:33
[2026-08-25 11:25:33,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:25:33,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:25:33,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:25:33,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:25:33,676.676 INFO    ] time= 25/08/2026 11:25:33
[2026-08-25 11:25:33,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:25:33,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:25:33,876.876 INFO    ] No existing commands found in stream
[2026-08-25 11:25:38,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:25:38,902.902 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 11:25:40,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:25:40,439.439 INFO    ] Checking for system updates...
[2026-08-25 11:25:40,476.476 INFO    ] 200
[2026-08-25 11:25:40,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:40,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:40,535.535 INFO    ] No update needed
[2026-08-25 11:25:40,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 11:25:40,572.572 INFO    ] 200
[2026-08-25 11:25:40,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:40,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:25:40,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:25:40,670.670 INFO    ] No camera update needed
[2026-08-25 11:25:40,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:25:40,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:25:40,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:25:40,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:25:42,729.729 INFO    ] ================================================
[2026-08-25 11:25:42,745.745 INFO    ] Launching Daemon at Tue Aug 25 11:25:42 IST 2026
[2026-08-25 11:25:42,755.755 INFO    ] ================================================
[2026-08-25 11:25:43,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:25:43
[2026-08-25 11:25:44,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:25:44,356.356 INFO    ] Initializing speech engine...
[2026-08-25 11:25:44,370.370 INFO    ] 2026-08-25 11:25:44
[2026-08-25 11:25:44,681.681 INFO    ] 2026-08-25 11:25:44
[2026-08-25 11:25:44,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:25:44,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:25:44,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:25:45,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:25:45,114.114 INFO    ] time= 25/08/2026 11:25:45
[2026-08-25 11:25:45,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:25:45,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:25:45,355.355 INFO    ] No existing commands found in stream
[2026-08-25 11:25:50,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:25:50,387.387 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 11:25:53,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:25:53,528.528 INFO    ] Checking for system updates...
[2026-08-25 11:25:53,570.570 INFO    ] 200
[2026-08-25 11:25:53,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:53,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:25:53,627.627 INFO    ] No update needed
[2026-08-25 11:25:53,629.629 INFO    ] Checking for camera pi updates...
[2026-08-25 11:25:53,662.662 INFO    ] 200
[2026-08-25 11:25:53,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:25:53,704.704 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:25:53,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:25:53,767.767 INFO    ] No camera update needed
[2026-08-25 11:25:53,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:25:53,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:25:53,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:25:53,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:25:55,821.821 INFO    ] ================================================
[2026-08-25 11:25:55,836.836 INFO    ] Launching Daemon at Tue Aug 25 11:25:55 IST 2026
[2026-08-25 11:25:55,846.846 INFO    ] ================================================
[2026-08-25 11:25:56,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:25:56
[2026-08-25 11:25:57,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:25:57,444.444 INFO    ] Initializing speech engine...
[2026-08-25 11:25:57,458.458 INFO    ] 2026-08-25 11:25:57
[2026-08-25 11:25:57,769.769 INFO    ] 2026-08-25 11:25:57
[2026-08-25 11:25:57,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:25:58,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:25:58,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:25:58,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:25:58,200.200 INFO    ] time= 25/08/2026 11:25:58
[2026-08-25 11:25:58,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:25:58,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:25:58,417.417 INFO    ] No existing commands found in stream
[2026-08-25 11:26:03,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:26:03,440.440 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 11:26:07,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:26:07,788.788 INFO    ] Checking for system updates...
[2026-08-25 11:26:07,824.824 INFO    ] 200
[2026-08-25 11:26:07,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:07,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:26:07,888.888 INFO    ] No update needed
[2026-08-25 11:26:07,891.891 INFO    ] Checking for camera pi updates...
[2026-08-25 11:26:07,925.925 INFO    ] 200
[2026-08-25 11:26:07,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:07,967.967 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:26:08,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:26:08,019.019 INFO    ] No camera update needed
[2026-08-25 11:26:08,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:26:08,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:26:08,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:26:08,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:26:10,076.076 INFO    ] ================================================
[2026-08-25 11:26:10,091.091 INFO    ] Launching Daemon at Tue Aug 25 11:26:10 IST 2026
[2026-08-25 11:26:10,102.102 INFO    ] ================================================
[2026-08-25 11:26:10,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:26:10
[2026-08-25 11:26:11,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:26:11,523.523 INFO    ] Initializing speech engine...
[2026-08-25 11:26:11,540.540 INFO    ] 2026-08-25 11:26:11
[2026-08-25 11:26:11,805.805 INFO    ] 2026-08-25 11:26:11
[2026-08-25 11:26:11,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:26:12,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:26:12,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:26:12,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:26:12,300.300 INFO    ] time= 25/08/2026 11:26:12
[2026-08-25 11:26:12,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:26:12,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:26:12,538.538 INFO    ] No existing commands found in stream
[2026-08-25 11:26:17,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:26:17,559.559 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 11:26:18,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:26:18,499.499 INFO    ] Checking for system updates...
[2026-08-25 11:26:18,536.536 INFO    ] 200
[2026-08-25 11:26:18,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:18,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:26:18,593.593 INFO    ] No update needed
[2026-08-25 11:26:18,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 11:26:18,630.630 INFO    ] 200
[2026-08-25 11:26:18,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:18,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:26:18,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:26:18,725.725 INFO    ] No camera update needed
[2026-08-25 11:26:18,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:26:18,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:26:18,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:26:18,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:26:20,782.782 INFO    ] ================================================
[2026-08-25 11:26:20,797.797 INFO    ] Launching Daemon at Tue Aug 25 11:26:20 IST 2026
[2026-08-25 11:26:20,807.807 INFO    ] ================================================
[2026-08-25 11:26:21,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:26:21
[2026-08-25 11:26:22,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:26:22,355.355 INFO    ] Initializing speech engine...
[2026-08-25 11:26:22,360.360 INFO    ] 2026-08-25 11:26:22
[2026-08-25 11:26:22,629.629 INFO    ] 2026-08-25 11:26:22
[2026-08-25 11:26:22,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:26:22,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:26:22,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:26:23,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:26:23,124.124 INFO    ] time= 25/08/2026 11:26:23
[2026-08-25 11:26:23,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:26:23,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:26:23,330.330 INFO    ] No existing commands found in stream
[2026-08-25 11:26:28,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:26:28,363.363 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 11:26:29,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:26:29,597.597 INFO    ] Checking for system updates...
[2026-08-25 11:26:29,633.633 INFO    ] 200
[2026-08-25 11:26:29,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:29,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:26:29,692.692 INFO    ] No update needed
[2026-08-25 11:26:29,694.694 INFO    ] Checking for camera pi updates...
[2026-08-25 11:26:29,728.728 INFO    ] 200
[2026-08-25 11:26:29,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:29,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:26:29,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:26:29,831.831 INFO    ] No camera update needed
[2026-08-25 11:26:29,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:26:29,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:26:29,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:26:29,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:26:31,888.888 INFO    ] ================================================
[2026-08-25 11:26:31,903.903 INFO    ] Launching Daemon at Tue Aug 25 11:26:31 IST 2026
[2026-08-25 11:26:31,914.914 INFO    ] ================================================
[2026-08-25 11:26:32,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:26:32
[2026-08-25 11:26:33,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:26:33,471.471 INFO    ] Initializing speech engine...
[2026-08-25 11:26:33,480.480 INFO    ] 2026-08-25 11:26:33
[2026-08-25 11:26:33,742.742 INFO    ] 2026-08-25 11:26:33
[2026-08-25 11:26:33,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:26:34,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:26:34,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:26:34,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:26:34,203.203 INFO    ] time= 25/08/2026 11:26:34
[2026-08-25 11:26:34,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:26:34,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:26:34,418.418 INFO    ] No existing commands found in stream
[2026-08-25 11:26:39,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:26:39,448.448 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 11:26:41,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:26:41,646.646 INFO    ] Checking for system updates...
[2026-08-25 11:26:41,684.684 INFO    ] 200
[2026-08-25 11:26:41,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:41,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:26:41,742.742 INFO    ] No update needed
[2026-08-25 11:26:41,745.745 INFO    ] Checking for camera pi updates...
[2026-08-25 11:26:41,778.778 INFO    ] 200
[2026-08-25 11:26:41,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:41,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:26:41,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:26:41,871.871 INFO    ] No camera update needed
[2026-08-25 11:26:41,874.874 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:26:41,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:26:41,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:26:41,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:26:43,927.927 INFO    ] ================================================
[2026-08-25 11:26:43,942.942 INFO    ] Launching Daemon at Tue Aug 25 11:26:43 IST 2026
[2026-08-25 11:26:43,953.953 INFO    ] ================================================
[2026-08-25 11:26:44,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:26:44
[2026-08-25 11:26:45,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:26:45,370.370 INFO    ] Initializing speech engine...
[2026-08-25 11:26:45,390.390 INFO    ] 2026-08-25 11:26:45
[2026-08-25 11:26:45,650.650 INFO    ] 2026-08-25 11:26:45
[2026-08-25 11:26:45,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:26:45,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:26:45,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:26:46,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:26:46,050.050 INFO    ] time= 25/08/2026 11:26:46
[2026-08-25 11:26:46,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:26:46,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:26:46,204.204 INFO    ] No existing commands found in stream
[2026-08-25 11:26:51,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:26:51,232.232 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 11:26:56,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:26:56,803.803 INFO    ] Checking for system updates...
[2026-08-25 11:26:56,840.840 INFO    ] 200
[2026-08-25 11:26:56,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:56,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:26:56,899.899 INFO    ] No update needed
[2026-08-25 11:26:56,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 11:26:56,935.935 INFO    ] 200
[2026-08-25 11:26:56,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:26:56,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:26:57,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:26:57,026.026 INFO    ] No camera update needed
[2026-08-25 11:26:57,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:26:57,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:26:57,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:26:57,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:26:59,084.084 INFO    ] ================================================
[2026-08-25 11:26:59,099.099 INFO    ] Launching Daemon at Tue Aug 25 11:26:59 IST 2026
[2026-08-25 11:26:59,110.110 INFO    ] ================================================
[2026-08-25 11:26:59,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:26:59
[2026-08-25 11:27:00,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:27:00,539.539 INFO    ] Initializing speech engine...
[2026-08-25 11:27:00,564.564 INFO    ] 2026-08-25 11:27:00
[2026-08-25 11:27:00,832.832 INFO    ] 2026-08-25 11:27:00
[2026-08-25 11:27:00,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:27:01,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:27:01,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:27:01,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:27:01,232.232 INFO    ] time= 25/08/2026 11:27:01
[2026-08-25 11:27:01,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:27:01,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:27:01,420.420 INFO    ] No existing commands found in stream
[2026-08-25 11:27:06,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:27:06,448.448 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 11:27:07,345.345 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:27:07,348.348 INFO    ] Checking for system updates...
[2026-08-25 11:27:07,383.383 INFO    ] 200
[2026-08-25 11:27:07,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:07,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:27:07,440.440 INFO    ] No update needed
[2026-08-25 11:27:07,443.443 INFO    ] Checking for camera pi updates...
[2026-08-25 11:27:07,476.476 INFO    ] 200
[2026-08-25 11:27:07,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:07,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:27:07,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:27:07,576.576 INFO    ] No camera update needed
[2026-08-25 11:27:07,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:27:07,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:27:07,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:27:07,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:27:09,630.630 INFO    ] ================================================
[2026-08-25 11:27:09,645.645 INFO    ] Launching Daemon at Tue Aug 25 11:27:09 IST 2026
[2026-08-25 11:27:09,656.656 INFO    ] ================================================
[2026-08-25 11:27:10,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:27:10
[2026-08-25 11:27:10,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:27:11,127.127 INFO    ] Initializing speech engine...
[2026-08-25 11:27:11,137.137 INFO    ] 2026-08-25 11:27:11
[2026-08-25 11:27:11,403.403 INFO    ] 2026-08-25 11:27:11
[2026-08-25 11:27:11,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:27:11,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:27:11,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:27:11,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:27:11,810.810 INFO    ] time= 25/08/2026 11:27:11
[2026-08-25 11:27:11,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:27:11,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:27:11,970.970 INFO    ] No existing commands found in stream
[2026-08-25 11:27:16,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:27:16,998.998 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 11:27:19,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:27:19,927.927 INFO    ] Checking for system updates...
[2026-08-25 11:27:19,962.962 INFO    ] 200
[2026-08-25 11:27:19,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:20,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:27:20,020.020 INFO    ] No update needed
[2026-08-25 11:27:20,022.022 INFO    ] Checking for camera pi updates...
[2026-08-25 11:27:20,055.055 INFO    ] 200
[2026-08-25 11:27:20,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:20,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:27:20,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:27:20,159.159 INFO    ] No camera update needed
[2026-08-25 11:27:20,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:27:20,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:27:20,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:27:20,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:27:22,213.213 INFO    ] ================================================
[2026-08-25 11:27:22,228.228 INFO    ] Launching Daemon at Tue Aug 25 11:27:22 IST 2026
[2026-08-25 11:27:22,238.238 INFO    ] ================================================
[2026-08-25 11:27:22,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:27:22
[2026-08-25 11:27:23,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:27:23,687.687 INFO    ] Initializing speech engine...
[2026-08-25 11:27:23,697.697 INFO    ] 2026-08-25 11:27:23
[2026-08-25 11:27:23,969.969 INFO    ] 2026-08-25 11:27:23
[2026-08-25 11:27:24,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:27:24,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:27:24,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:27:24,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:27:24,525.525 INFO    ] time= 25/08/2026 11:27:24
[2026-08-25 11:27:24,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:27:24,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:27:24,667.667 INFO    ] No existing commands found in stream
[2026-08-25 11:27:29,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:27:29,693.693 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 11:27:33,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:27:33,577.577 INFO    ] Checking for system updates...
[2026-08-25 11:27:33,613.613 INFO    ] 200
[2026-08-25 11:27:33,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:33,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:27:33,671.671 INFO    ] No update needed
[2026-08-25 11:27:33,673.673 INFO    ] Checking for camera pi updates...
[2026-08-25 11:27:33,707.707 INFO    ] 200
[2026-08-25 11:27:33,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:33,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:27:33,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:27:33,798.798 INFO    ] No camera update needed
[2026-08-25 11:27:33,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:27:33,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:27:33,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:27:33,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:27:35,854.854 INFO    ] ================================================
[2026-08-25 11:27:35,869.869 INFO    ] Launching Daemon at Tue Aug 25 11:27:35 IST 2026
[2026-08-25 11:27:35,880.880 INFO    ] ================================================
[2026-08-25 11:27:36,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:27:36
[2026-08-25 11:27:37,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:27:37,319.319 INFO    ] Initializing speech engine...
[2026-08-25 11:27:37,340.340 INFO    ] 2026-08-25 11:27:37
[2026-08-25 11:27:37,614.614 INFO    ] 2026-08-25 11:27:37
[2026-08-25 11:27:37,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:27:37,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:27:37,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:27:38,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:27:38,045.045 INFO    ] time= 25/08/2026 11:27:38
[2026-08-25 11:27:38,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:27:38,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:27:38,240.240 INFO    ] No existing commands found in stream
[2026-08-25 11:27:43,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:27:43,255.255 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 11:27:47,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:27:47,177.177 INFO    ] Checking for system updates...
[2026-08-25 11:27:47,213.213 INFO    ] 200
[2026-08-25 11:27:47,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:47,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:27:47,270.270 INFO    ] No update needed
[2026-08-25 11:27:47,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 11:27:47,306.306 INFO    ] 200
[2026-08-25 11:27:47,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:47,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:27:47,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:27:47,399.399 INFO    ] No camera update needed
[2026-08-25 11:27:47,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:27:47,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:27:47,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:27:47,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:27:49,454.454 INFO    ] ================================================
[2026-08-25 11:27:49,469.469 INFO    ] Launching Daemon at Tue Aug 25 11:27:49 IST 2026
[2026-08-25 11:27:49,480.480 INFO    ] ================================================
[2026-08-25 11:27:50,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:27:50
[2026-08-25 11:27:50,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:27:51,056.056 INFO    ] Initializing speech engine...
[2026-08-25 11:27:51,069.069 INFO    ] 2026-08-25 11:27:51
[2026-08-25 11:27:51,345.345 INFO    ] 2026-08-25 11:27:51
[2026-08-25 11:27:51,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:27:51,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:27:51,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:27:51,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:27:51,881.881 INFO    ] time= 25/08/2026 11:27:51
[2026-08-25 11:27:51,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:27:51,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:27:52,045.045 INFO    ] No existing commands found in stream
[2026-08-25 11:27:57,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:27:57,078.078 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 11:27:59,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:27:59,667.667 INFO    ] Checking for system updates...
[2026-08-25 11:27:59,703.703 INFO    ] 200
[2026-08-25 11:27:59,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:59,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:27:59,762.762 INFO    ] No update needed
[2026-08-25 11:27:59,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 11:27:59,802.802 INFO    ] 200
[2026-08-25 11:27:59,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:27:59,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:27:59,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:27:59,894.894 INFO    ] No camera update needed
[2026-08-25 11:27:59,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:27:59,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:27:59,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:27:59,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:28:01,949.949 INFO    ] ================================================
[2026-08-25 11:28:01,964.964 INFO    ] Launching Daemon at Tue Aug 25 11:28:01 IST 2026
[2026-08-25 11:28:01,987.987 INFO    ] ================================================
[2026-08-25 11:28:02,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:28:02
[2026-08-25 11:28:03,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:28:03,712.712 INFO    ] Initializing speech engine...
[2026-08-25 11:28:03,723.723 INFO    ] 2026-08-25 11:28:03
[2026-08-25 11:28:04,019.019 INFO    ] 2026-08-25 11:28:04
[2026-08-25 11:28:04,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:28:04,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:28:04,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:28:04,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:28:04,505.505 INFO    ] time= 25/08/2026 11:28:04
[2026-08-25 11:28:04,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:28:04,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:28:04,728.728 INFO    ] No existing commands found in stream
[2026-08-25 11:28:09,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:28:09,751.751 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 11:28:13,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:28:13,949.949 INFO    ] Checking for system updates...
[2026-08-25 11:28:13,985.985 INFO    ] 200
[2026-08-25 11:28:13,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:14,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:14,043.043 INFO    ] No update needed
[2026-08-25 11:28:14,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 11:28:14,080.080 INFO    ] 200
[2026-08-25 11:28:14,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:14,125.125 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:28:14,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:14,176.176 INFO    ] No camera update needed
[2026-08-25 11:28:14,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:28:14,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:28:14,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:28:14,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:28:16,234.234 INFO    ] ================================================
[2026-08-25 11:28:16,249.249 INFO    ] Launching Daemon at Tue Aug 25 11:28:16 IST 2026
[2026-08-25 11:28:16,260.260 INFO    ] ================================================
[2026-08-25 11:28:16,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:28:16
[2026-08-25 11:28:17,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:28:17,832.832 INFO    ] Initializing speech engine...
[2026-08-25 11:28:17,840.840 INFO    ] 2026-08-25 11:28:17
[2026-08-25 11:28:18,117.117 INFO    ] 2026-08-25 11:28:18
[2026-08-25 11:28:18,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:28:18,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:28:18,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:28:18,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:28:18,613.613 INFO    ] time= 25/08/2026 11:28:18
[2026-08-25 11:28:18,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:28:18,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:28:18,830.830 INFO    ] No existing commands found in stream
[2026-08-25 11:28:23,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:28:23,851.851 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 11:28:27,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:28:27,258.258 INFO    ] Checking for system updates...
[2026-08-25 11:28:27,293.293 INFO    ] 200
[2026-08-25 11:28:27,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:27,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:27,349.349 INFO    ] No update needed
[2026-08-25 11:28:27,352.352 INFO    ] Checking for camera pi updates...
[2026-08-25 11:28:27,385.385 INFO    ] 200
[2026-08-25 11:28:27,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:27,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:28:27,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:27,479.479 INFO    ] No camera update needed
[2026-08-25 11:28:27,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:28:27,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:28:27,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:28:27,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:28:29,533.533 INFO    ] ================================================
[2026-08-25 11:28:29,547.547 INFO    ] Launching Daemon at Tue Aug 25 11:28:29 IST 2026
[2026-08-25 11:28:29,558.558 INFO    ] ================================================
[2026-08-25 11:28:30,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:28:30
[2026-08-25 11:28:30,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:28:31,138.138 INFO    ] Initializing speech engine...
[2026-08-25 11:28:31,146.146 INFO    ] 2026-08-25 11:28:31
[2026-08-25 11:28:31,416.416 INFO    ] 2026-08-25 11:28:31
[2026-08-25 11:28:31,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:28:31,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:28:31,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:28:31,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:28:31,906.906 INFO    ] time= 25/08/2026 11:28:31
[2026-08-25 11:28:31,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:28:31,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:28:32,081.081 INFO    ] No existing commands found in stream
[2026-08-25 11:28:37,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:28:37,094.094 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 11:28:38,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:28:38,538.538 INFO    ] Checking for system updates...
[2026-08-25 11:28:38,575.575 INFO    ] 200
[2026-08-25 11:28:38,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:38,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:38,633.633 INFO    ] No update needed
[2026-08-25 11:28:38,635.635 INFO    ] Checking for camera pi updates...
[2026-08-25 11:28:38,669.669 INFO    ] 200
[2026-08-25 11:28:38,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:38,713.713 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:28:38,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:38,771.771 INFO    ] No camera update needed
[2026-08-25 11:28:38,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:28:38,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:28:38,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:28:38,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:28:40,834.834 INFO    ] ================================================
[2026-08-25 11:28:40,848.848 INFO    ] Launching Daemon at Tue Aug 25 11:28:40 IST 2026
[2026-08-25 11:28:40,859.859 INFO    ] ================================================
[2026-08-25 11:28:41,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:28:41
[2026-08-25 11:28:42,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:28:42,276.276 INFO    ] Initializing speech engine...
[2026-08-25 11:28:42,296.296 INFO    ] 2026-08-25 11:28:42
[2026-08-25 11:28:42,557.557 INFO    ] 2026-08-25 11:28:42
[2026-08-25 11:28:42,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:28:42,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:28:42,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:28:42,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:28:42,927.927 INFO    ] time= 25/08/2026 11:28:42
[2026-08-25 11:28:42,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:28:42,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:28:43,049.049 INFO    ] No existing commands found in stream
[2026-08-25 11:28:48,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:28:48,064.064 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 11:28:49,335.335 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:28:49,338.338 INFO    ] Checking for system updates...
[2026-08-25 11:28:49,375.375 INFO    ] 200
[2026-08-25 11:28:49,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:49,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:49,433.433 INFO    ] No update needed
[2026-08-25 11:28:49,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 11:28:49,470.470 INFO    ] 200
[2026-08-25 11:28:49,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:28:49,513.513 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:28:49,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:28:49,569.569 INFO    ] No camera update needed
[2026-08-25 11:28:49,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:28:49,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:28:49,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:28:49,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:28:51,627.627 INFO    ] ================================================
[2026-08-25 11:28:51,642.642 INFO    ] Launching Daemon at Tue Aug 25 11:28:51 IST 2026
[2026-08-25 11:28:51,652.652 INFO    ] ================================================
[2026-08-25 11:28:52,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:28:52
[2026-08-25 11:28:52,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:28:53,235.235 INFO    ] Initializing speech engine...
[2026-08-25 11:28:53,243.243 INFO    ] 2026-08-25 11:28:53
[2026-08-25 11:28:53,533.533 INFO    ] 2026-08-25 11:28:53
[2026-08-25 11:28:53,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:28:53,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:28:53,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:28:54,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:28:54,063.063 INFO    ] time= 25/08/2026 11:28:54
[2026-08-25 11:28:54,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:28:54,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:28:54,272.272 INFO    ] No existing commands found in stream
[2026-08-25 11:28:59,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:28:59,307.307 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 11:29:03,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:29:03,669.669 INFO    ] Checking for system updates...
[2026-08-25 11:29:03,705.705 INFO    ] 200
[2026-08-25 11:29:03,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:03,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:29:03,768.768 INFO    ] No update needed
[2026-08-25 11:29:03,771.771 INFO    ] Checking for camera pi updates...
[2026-08-25 11:29:03,806.806 INFO    ] 200
[2026-08-25 11:29:03,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:03,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:29:03,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:29:03,909.909 INFO    ] No camera update needed
[2026-08-25 11:29:03,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:29:03,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:29:03,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:29:03,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:29:05,968.968 INFO    ] ================================================
[2026-08-25 11:29:05,985.985 INFO    ] Launching Daemon at Tue Aug 25 11:29:05 IST 2026
[2026-08-25 11:29:06,996.996 INFO    ] ================================================
[2026-08-25 11:29:06,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:29:06
[2026-08-25 11:29:07,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:29:07,447.447 INFO    ] Initializing speech engine...
[2026-08-25 11:29:07,456.456 INFO    ] 2026-08-25 11:29:07
[2026-08-25 11:29:07,701.701 INFO    ] 2026-08-25 11:29:07
[2026-08-25 11:29:07,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:29:07,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:29:07,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:29:08,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:29:08,069.069 INFO    ] time= 25/08/2026 11:29:08
[2026-08-25 11:29:08,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:29:08,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:29:08,252.252 INFO    ] No existing commands found in stream
[2026-08-25 11:29:13,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:29:13,278.278 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 11:29:14,495.495 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:29:14,498.498 INFO    ] Checking for system updates...
[2026-08-25 11:29:14,533.533 INFO    ] 200
[2026-08-25 11:29:14,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:14,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:29:14,589.589 INFO    ] No update needed
[2026-08-25 11:29:14,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 11:29:14,625.625 INFO    ] 200
[2026-08-25 11:29:14,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:14,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:29:14,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:29:14,718.718 INFO    ] No camera update needed
[2026-08-25 11:29:14,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:29:14,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:29:14,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:29:14,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:29:16,773.773 INFO    ] ================================================
[2026-08-25 11:29:16,789.789 INFO    ] Launching Daemon at Tue Aug 25 11:29:16 IST 2026
[2026-08-25 11:29:16,800.800 INFO    ] ================================================
[2026-08-25 11:29:17,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:29:17
[2026-08-25 11:29:18,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:29:18,365.365 INFO    ] Initializing speech engine...
[2026-08-25 11:29:18,372.372 INFO    ] 2026-08-25 11:29:18
[2026-08-25 11:29:18,680.680 INFO    ] 2026-08-25 11:29:18
[2026-08-25 11:29:18,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:29:18,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:29:18,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:29:19,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:29:19,050.050 INFO    ] time= 25/08/2026 11:29:19
[2026-08-25 11:29:19,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:29:19,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:29:19,191.191 INFO    ] No existing commands found in stream
[2026-08-25 11:29:24,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:29:24,204.204 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 11:29:26,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:29:26,793.793 INFO    ] Checking for system updates...
[2026-08-25 11:29:26,829.829 INFO    ] 200
[2026-08-25 11:29:26,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:26,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:29:26,893.893 INFO    ] No update needed
[2026-08-25 11:29:26,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 11:29:26,930.930 INFO    ] 200
[2026-08-25 11:29:26,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:26,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:29:27,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:29:27,030.030 INFO    ] No camera update needed
[2026-08-25 11:29:27,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:29:27,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:29:27,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:29:27,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:29:29,089.089 INFO    ] ================================================
[2026-08-25 11:29:29,104.104 INFO    ] Launching Daemon at Tue Aug 25 11:29:29 IST 2026
[2026-08-25 11:29:29,116.116 INFO    ] ================================================
[2026-08-25 11:29:29,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:29:29
[2026-08-25 11:29:30,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:29:30,686.686 INFO    ] Initializing speech engine...
[2026-08-25 11:29:30,694.694 INFO    ] 2026-08-25 11:29:30
[2026-08-25 11:29:30,974.974 INFO    ] 2026-08-25 11:29:30
[2026-08-25 11:29:31,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:29:31,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:29:31,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:29:31,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:29:31,516.516 INFO    ] time= 25/08/2026 11:29:31
[2026-08-25 11:29:31,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:29:31,556.556 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:29:31,699.699 INFO    ] No existing commands found in stream
[2026-08-25 11:29:36,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:29:36,731.731 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 11:29:37,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:29:37,257.257 INFO    ] Checking for system updates...
[2026-08-25 11:29:37,293.293 INFO    ] 200
[2026-08-25 11:29:37,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:37,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:29:37,350.350 INFO    ] No update needed
[2026-08-25 11:29:37,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 11:29:37,386.386 INFO    ] 200
[2026-08-25 11:29:37,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:37,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:29:37,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:29:37,575.575 INFO    ] No camera update needed
[2026-08-25 11:29:37,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:29:37,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:29:37,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:29:37,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:29:39,632.632 INFO    ] ================================================
[2026-08-25 11:29:39,647.647 INFO    ] Launching Daemon at Tue Aug 25 11:29:39 IST 2026
[2026-08-25 11:29:39,658.658 INFO    ] ================================================
[2026-08-25 11:29:40,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:29:40
[2026-08-25 11:29:40,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:29:41,078.078 INFO    ] Initializing speech engine...
[2026-08-25 11:29:41,086.086 INFO    ] 2026-08-25 11:29:41
[2026-08-25 11:29:41,338.338 INFO    ] 2026-08-25 11:29:41
[2026-08-25 11:29:41,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:29:41,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:29:41,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:29:41,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:29:41,832.832 INFO    ] time= 25/08/2026 11:29:41
[2026-08-25 11:29:41,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:29:41,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:29:42,041.041 INFO    ] No existing commands found in stream
[2026-08-25 11:29:47,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:29:47,069.069 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 11:29:49,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:29:49,926.926 INFO    ] Checking for system updates...
[2026-08-25 11:29:49,962.962 INFO    ] 200
[2026-08-25 11:29:49,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:50,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:29:50,019.019 INFO    ] No update needed
[2026-08-25 11:29:50,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 11:29:50,054.054 INFO    ] 200
[2026-08-25 11:29:50,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:29:50,100.100 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:29:50,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:29:50,147.147 INFO    ] No camera update needed
[2026-08-25 11:29:50,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:29:50,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:29:50,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:29:50,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:29:52,204.204 INFO    ] ================================================
[2026-08-25 11:29:52,220.220 INFO    ] Launching Daemon at Tue Aug 25 11:29:52 IST 2026
[2026-08-25 11:29:52,231.231 INFO    ] ================================================
[2026-08-25 11:29:52,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:29:52
[2026-08-25 11:29:53,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:29:53,648.648 INFO    ] Initializing speech engine...
[2026-08-25 11:29:53,660.660 INFO    ] 2026-08-25 11:29:53
[2026-08-25 11:29:53,910.910 INFO    ] 2026-08-25 11:29:53
[2026-08-25 11:29:53,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:29:54,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:29:54,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:29:54,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:29:54,411.411 INFO    ] time= 25/08/2026 11:29:54
[2026-08-25 11:29:54,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:29:54,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:29:54,635.635 INFO    ] No existing commands found in stream
[2026-08-25 11:29:59,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:29:59,652.652 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 11:30:00,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:30:00,726.726 INFO    ] Checking for system updates...
[2026-08-25 11:30:00,762.762 INFO    ] 200
[2026-08-25 11:30:00,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:00,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:30:00,818.818 INFO    ] No update needed
[2026-08-25 11:30:00,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 11:30:00,853.853 INFO    ] 200
[2026-08-25 11:30:00,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:00,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:30:00,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:30:00,946.946 INFO    ] No camera update needed
[2026-08-25 11:30:00,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:30:00,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:30:00,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:30:00,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:30:03,015.015 INFO    ] ================================================
[2026-08-25 11:30:03,082.082 INFO    ] Launching Daemon at Tue Aug 25 11:30:03 IST 2026
[2026-08-25 11:30:03,099.099 INFO    ] ================================================
[2026-08-25 11:30:03,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:30:03
[2026-08-25 11:30:04,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:30:04,897.897 INFO    ] Initializing speech engine...
[2026-08-25 11:30:04,905.905 INFO    ] 2026-08-25 11:30:04
[2026-08-25 11:30:05,179.179 INFO    ] 2026-08-25 11:30:05
[2026-08-25 11:30:05,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:30:05,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:30:05,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:30:05,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:30:05,732.732 INFO    ] time= 25/08/2026 11:30:05
[2026-08-25 11:30:05,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:30:05,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:30:05,884.884 INFO    ] No existing commands found in stream
[2026-08-25 11:30:10,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:30:10,903.903 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 11:30:12,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:30:12,032.032 INFO    ] Checking for system updates...
[2026-08-25 11:30:12,069.069 INFO    ] 200
[2026-08-25 11:30:12,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:12,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:30:12,127.127 INFO    ] No update needed
[2026-08-25 11:30:12,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 11:30:12,164.164 INFO    ] 200
[2026-08-25 11:30:12,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:12,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:30:12,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:30:12,256.256 INFO    ] No camera update needed
[2026-08-25 11:30:12,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:30:12,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:30:12,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:30:12,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:30:14,313.313 INFO    ] ================================================
[2026-08-25 11:30:14,328.328 INFO    ] Launching Daemon at Tue Aug 25 11:30:14 IST 2026
[2026-08-25 11:30:14,340.340 INFO    ] ================================================
[2026-08-25 11:30:14,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:30:14
[2026-08-25 11:30:15,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:30:15,756.756 INFO    ] Initializing speech engine...
[2026-08-25 11:30:15,764.764 INFO    ] 2026-08-25 11:30:15
[2026-08-25 11:30:16,014.014 INFO    ] 2026-08-25 11:30:16
[2026-08-25 11:30:16,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:30:16,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:30:16,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:30:16,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:30:16,486.486 INFO    ] time= 25/08/2026 11:30:16
[2026-08-25 11:30:16,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:30:16,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:30:16,725.725 INFO    ] No existing commands found in stream
[2026-08-25 11:30:21,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:30:21,747.747 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 11:30:23,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:30:23,538.538 INFO    ] Checking for system updates...
[2026-08-25 11:30:23,574.574 INFO    ] 200
[2026-08-25 11:30:23,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:23,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:30:23,631.631 INFO    ] No update needed
[2026-08-25 11:30:23,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 11:30:23,666.666 INFO    ] 200
[2026-08-25 11:30:23,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:23,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:30:23,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:30:23,765.765 INFO    ] No camera update needed
[2026-08-25 11:30:23,767.767 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:30:23,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:30:23,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:30:23,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:30:25,820.820 INFO    ] ================================================
[2026-08-25 11:30:25,836.836 INFO    ] Launching Daemon at Tue Aug 25 11:30:25 IST 2026
[2026-08-25 11:30:25,847.847 INFO    ] ================================================
[2026-08-25 11:30:26,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:30:26
[2026-08-25 11:30:26,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:30:27,273.273 INFO    ] Initializing speech engine...
[2026-08-25 11:30:27,286.286 INFO    ] 2026-08-25 11:30:27
[2026-08-25 11:30:27,547.547 INFO    ] 2026-08-25 11:30:27
[2026-08-25 11:30:27,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:30:27,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:30:27,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:30:27,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:30:27,950.950 INFO    ] time= 25/08/2026 11:30:27
[2026-08-25 11:30:27,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:30:28,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:30:28,148.148 INFO    ] No existing commands found in stream
[2026-08-25 11:30:33,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:30:33,170.170 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 11:30:37,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:30:37,545.545 INFO    ] Checking for system updates...
[2026-08-25 11:30:37,581.581 INFO    ] 200
[2026-08-25 11:30:37,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:37,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:30:37,638.638 INFO    ] No update needed
[2026-08-25 11:30:37,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 11:30:37,675.675 INFO    ] 200
[2026-08-25 11:30:37,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:37,717.717 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:30:37,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:30:37,771.771 INFO    ] No camera update needed
[2026-08-25 11:30:37,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:30:37,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:30:37,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:30:37,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:30:39,826.826 INFO    ] ================================================
[2026-08-25 11:30:39,841.841 INFO    ] Launching Daemon at Tue Aug 25 11:30:39 IST 2026
[2026-08-25 11:30:39,853.853 INFO    ] ================================================
[2026-08-25 11:30:40,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:30:40
[2026-08-25 11:30:41,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:30:41,273.273 INFO    ] Initializing speech engine...
[2026-08-25 11:30:41,282.282 INFO    ] 2026-08-25 11:30:41
[2026-08-25 11:30:41,540.540 INFO    ] 2026-08-25 11:30:41
[2026-08-25 11:30:41,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:30:41,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:30:41,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:30:41,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:30:41,941.941 INFO    ] time= 25/08/2026 11:30:41
[2026-08-25 11:30:41,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:30:41,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:30:42,055.055 INFO    ] No existing commands found in stream
[2026-08-25 11:30:47,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:30:47,093.093 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 11:30:49,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:30:49,168.168 INFO    ] Checking for system updates...
[2026-08-25 11:30:49,203.203 INFO    ] 200
[2026-08-25 11:30:49,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:49,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:30:49,260.260 INFO    ] No update needed
[2026-08-25 11:30:49,263.263 INFO    ] Checking for camera pi updates...
[2026-08-25 11:30:49,299.299 INFO    ] 200
[2026-08-25 11:30:49,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:49,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:30:49,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:30:49,404.404 INFO    ] No camera update needed
[2026-08-25 11:30:49,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:30:49,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:30:49,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:30:49,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:30:51,459.459 INFO    ] ================================================
[2026-08-25 11:30:51,474.474 INFO    ] Launching Daemon at Tue Aug 25 11:30:51 IST 2026
[2026-08-25 11:30:51,485.485 INFO    ] ================================================
[2026-08-25 11:30:52,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:30:52
[2026-08-25 11:30:52,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:30:52,919.919 INFO    ] Initializing speech engine...
[2026-08-25 11:30:52,932.932 INFO    ] 2026-08-25 11:30:52
[2026-08-25 11:30:53,212.212 INFO    ] 2026-08-25 11:30:53
[2026-08-25 11:30:53,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:30:53,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:30:53,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:30:53,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:30:53,615.615 INFO    ] time= 25/08/2026 11:30:53
[2026-08-25 11:30:53,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:30:53,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:30:53,779.779 INFO    ] No existing commands found in stream
[2026-08-25 11:30:58,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:30:58,812.812 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 11:30:59,793.793 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:30:59,796.796 INFO    ] Checking for system updates...
[2026-08-25 11:30:59,831.831 INFO    ] 200
[2026-08-25 11:30:59,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:59,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:30:59,892.892 INFO    ] No update needed
[2026-08-25 11:30:59,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 11:30:59,928.928 INFO    ] 200
[2026-08-25 11:30:59,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:30:59,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:31:00,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:31:00,023.023 INFO    ] No camera update needed
[2026-08-25 11:31:00,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:31:00,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:31:00,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:31:00,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:31:02,080.080 INFO    ] ================================================
[2026-08-25 11:31:02,101.101 INFO    ] Launching Daemon at Tue Aug 25 11:31:02 IST 2026
[2026-08-25 11:31:02,118.118 INFO    ] ================================================
[2026-08-25 11:31:02,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:31:02
[2026-08-25 11:31:03,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:31:03,816.816 INFO    ] Initializing speech engine...
[2026-08-25 11:31:03,828.828 INFO    ] 2026-08-25 11:31:03
[2026-08-25 11:31:04,086.086 INFO    ] 2026-08-25 11:31:04
[2026-08-25 11:31:04,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:31:04,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:31:04,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:31:04,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:31:04,511.511 INFO    ] time= 25/08/2026 11:31:04
[2026-08-25 11:31:04,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:31:04,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:31:04,689.689 INFO    ] No existing commands found in stream
[2026-08-25 11:31:09,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:31:09,711.711 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 11:31:11,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:31:11,598.598 INFO    ] Checking for system updates...
[2026-08-25 11:31:11,633.633 INFO    ] 200
[2026-08-25 11:31:11,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:11,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:31:11,691.691 INFO    ] No update needed
[2026-08-25 11:31:11,693.693 INFO    ] Checking for camera pi updates...
[2026-08-25 11:31:11,726.726 INFO    ] 200
[2026-08-25 11:31:11,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:11,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:31:11,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:31:11,816.816 INFO    ] No camera update needed
[2026-08-25 11:31:11,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:31:11,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:31:11,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:31:11,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:31:13,873.873 INFO    ] ================================================
[2026-08-25 11:31:13,889.889 INFO    ] Launching Daemon at Tue Aug 25 11:31:13 IST 2026
[2026-08-25 11:31:13,900.900 INFO    ] ================================================
[2026-08-25 11:31:14,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:31:14
[2026-08-25 11:31:15,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:31:15,427.427 INFO    ] Initializing speech engine...
[2026-08-25 11:31:15,433.433 INFO    ] 2026-08-25 11:31:15
[2026-08-25 11:31:15,693.693 INFO    ] 2026-08-25 11:31:15
[2026-08-25 11:31:15,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:31:15,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:31:16,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:31:16,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:31:16,239.239 INFO    ] time= 25/08/2026 11:31:16
[2026-08-25 11:31:16,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:31:16,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:31:16,406.406 INFO    ] No existing commands found in stream
[2026-08-25 11:31:21,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:31:21,439.439 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 11:31:23,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:31:23,347.347 INFO    ] Checking for system updates...
[2026-08-25 11:31:23,386.386 INFO    ] 200
[2026-08-25 11:31:23,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:23,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:31:23,442.442 INFO    ] No update needed
[2026-08-25 11:31:23,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 11:31:23,478.478 INFO    ] 200
[2026-08-25 11:31:23,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:23,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:31:23,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:31:23,576.576 INFO    ] No camera update needed
[2026-08-25 11:31:23,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:31:23,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:31:23,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:31:23,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:31:25,631.631 INFO    ] ================================================
[2026-08-25 11:31:25,647.647 INFO    ] Launching Daemon at Tue Aug 25 11:31:25 IST 2026
[2026-08-25 11:31:25,658.658 INFO    ] ================================================
[2026-08-25 11:31:26,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:31:26
[2026-08-25 11:31:26,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:31:27,055.055 INFO    ] Initializing speech engine...
[2026-08-25 11:31:27,061.061 INFO    ] 2026-08-25 11:31:27
[2026-08-25 11:31:27,336.336 INFO    ] 2026-08-25 11:31:27
[2026-08-25 11:31:27,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:31:27,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:31:27,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:31:27,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:31:27,825.825 INFO    ] time= 25/08/2026 11:31:27
[2026-08-25 11:31:27,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:31:27,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:31:28,028.028 INFO    ] No existing commands found in stream
[2026-08-25 11:31:33,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:31:33,060.060 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 11:31:37,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:31:37,106.106 INFO    ] Checking for system updates...
[2026-08-25 11:31:37,142.142 INFO    ] 200
[2026-08-25 11:31:37,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:37,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:31:37,205.205 INFO    ] No update needed
[2026-08-25 11:31:37,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 11:31:37,240.240 INFO    ] 200
[2026-08-25 11:31:37,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:37,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:31:37,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:31:37,334.334 INFO    ] No camera update needed
[2026-08-25 11:31:37,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:31:37,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:31:37,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:31:37,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:31:39,390.390 INFO    ] ================================================
[2026-08-25 11:31:39,405.405 INFO    ] Launching Daemon at Tue Aug 25 11:31:39 IST 2026
[2026-08-25 11:31:39,416.416 INFO    ] ================================================
[2026-08-25 11:31:40,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:31:40
[2026-08-25 11:31:40,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:31:41,022.022 INFO    ] Initializing speech engine...
[2026-08-25 11:31:41,034.034 INFO    ] 2026-08-25 11:31:41
[2026-08-25 11:31:41,306.306 INFO    ] 2026-08-25 11:31:41
[2026-08-25 11:31:41,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:31:41,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:31:41,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:31:41,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:31:41,807.807 INFO    ] time= 25/08/2026 11:31:41
[2026-08-25 11:31:41,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:31:41,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:31:42,026.026 INFO    ] No existing commands found in stream
[2026-08-25 11:31:47,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:31:47,049.049 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 11:31:49,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:31:49,807.807 INFO    ] Checking for system updates...
[2026-08-25 11:31:49,844.844 INFO    ] 200
[2026-08-25 11:31:49,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:49,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:31:49,909.909 INFO    ] No update needed
[2026-08-25 11:31:49,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 11:31:49,945.945 INFO    ] 200
[2026-08-25 11:31:49,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:31:49,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:31:50,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:31:50,144.144 INFO    ] No camera update needed
[2026-08-25 11:31:50,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:31:50,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:31:50,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:31:50,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:31:52,201.201 INFO    ] ================================================
[2026-08-25 11:31:52,217.217 INFO    ] Launching Daemon at Tue Aug 25 11:31:52 IST 2026
[2026-08-25 11:31:52,227.227 INFO    ] ================================================
[2026-08-25 11:31:52,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:31:52
[2026-08-25 11:31:53,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:31:53,659.659 INFO    ] Initializing speech engine...
[2026-08-25 11:31:53,668.668 INFO    ] 2026-08-25 11:31:53
[2026-08-25 11:31:53,914.914 INFO    ] 2026-08-25 11:31:53
[2026-08-25 11:31:53,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:31:54,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:31:54,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:31:54,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:31:54,287.287 INFO    ] time= 25/08/2026 11:31:54
[2026-08-25 11:31:54,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:31:54,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:31:54,462.462 INFO    ] No existing commands found in stream
[2026-08-25 11:31:59,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:31:59,495.495 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 11:32:02,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:32:02,440.440 INFO    ] Checking for system updates...
[2026-08-25 11:32:02,480.480 INFO    ] 200
[2026-08-25 11:32:02,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:02,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:02,549.549 INFO    ] No update needed
[2026-08-25 11:32:02,551.551 INFO    ] Checking for camera pi updates...
[2026-08-25 11:32:02,590.590 INFO    ] 200
[2026-08-25 11:32:02,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:02,643.643 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:32:02,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:02,705.705 INFO    ] No camera update needed
[2026-08-25 11:32:02,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:32:02,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:32:02,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:32:02,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:32:04,767.767 INFO    ] ================================================
[2026-08-25 11:32:04,783.783 INFO    ] Launching Daemon at Tue Aug 25 11:32:04 IST 2026
[2026-08-25 11:32:04,795.795 INFO    ] ================================================
[2026-08-25 11:32:05,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:32:05
[2026-08-25 11:32:05,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:32:06,224.224 INFO    ] Initializing speech engine...
[2026-08-25 11:32:06,232.232 INFO    ] 2026-08-25 11:32:06
[2026-08-25 11:32:06,493.493 INFO    ] 2026-08-25 11:32:06
[2026-08-25 11:32:06,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:32:06,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:32:06,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:32:06,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:32:06,976.976 INFO    ] time= 25/08/2026 11:32:06
[2026-08-25 11:32:07,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:32:07,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:32:07,221.221 INFO    ] No existing commands found in stream
[2026-08-25 11:32:12,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:32:12,247.247 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 11:32:15,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:32:15,673.673 INFO    ] Checking for system updates...
[2026-08-25 11:32:15,709.709 INFO    ] 200
[2026-08-25 11:32:15,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:15,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:32:15,774.774 INFO    ] No update needed
[2026-08-25 11:32:15,777.777 INFO    ] Checking for camera pi updates...
[2026-08-25 11:32:15,810.810 INFO    ] 200
[2026-08-25 11:32:15,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:15,852.852 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:32:15,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:32:15,911.911 INFO    ] No camera update needed
[2026-08-25 11:32:15,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:32:15,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:32:15,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:32:15,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:32:17,968.968 INFO    ] ================================================
[2026-08-25 11:32:17,984.984 INFO    ] Launching Daemon at Tue Aug 25 11:32:17 IST 2026
[2026-08-25 11:32:18,995.995 INFO    ] ================================================
[2026-08-25 11:32:18,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:32:18
[2026-08-25 11:32:19,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:32:19,448.448 INFO    ] Initializing speech engine...
[2026-08-25 11:32:19,462.462 INFO    ] 2026-08-25 11:32:19
[2026-08-25 11:32:19,730.730 INFO    ] 2026-08-25 11:32:19
[2026-08-25 11:32:19,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:32:20,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:32:20,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:32:20,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:32:20,588.588 INFO    ] time= 25/08/2026 11:32:20
[2026-08-25 11:32:20,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:32:20,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:32:20,797.797 INFO    ] No existing commands found in stream
[2026-08-25 11:32:25,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:32:25,818.818 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 11:32:28,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:32:28,937.937 INFO    ] Checking for system updates...
[2026-08-25 11:32:28,972.972 INFO    ] 200
[2026-08-25 11:32:28,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:29,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:29,028.028 INFO    ] No update needed
[2026-08-25 11:32:29,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 11:32:29,064.064 INFO    ] 200
[2026-08-25 11:32:29,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:29,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:32:29,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:29,161.161 INFO    ] No camera update needed
[2026-08-25 11:32:29,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:32:29,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:32:29,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:32:29,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:32:31,216.216 INFO    ] ================================================
[2026-08-25 11:32:31,232.232 INFO    ] Launching Daemon at Tue Aug 25 11:32:31 IST 2026
[2026-08-25 11:32:31,243.243 INFO    ] ================================================
[2026-08-25 11:32:31,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:32:31
[2026-08-25 11:32:32,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:32:32,729.729 INFO    ] Initializing speech engine...
[2026-08-25 11:32:32,738.738 INFO    ] 2026-08-25 11:32:32
[2026-08-25 11:32:33,017.017 INFO    ] 2026-08-25 11:32:33
[2026-08-25 11:32:33,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:32:33,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:32:33,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:32:33,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:32:33,398.398 INFO    ] time= 25/08/2026 11:32:33
[2026-08-25 11:32:33,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:32:33,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:32:33,571.571 INFO    ] No existing commands found in stream
[2026-08-25 11:32:38,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:32:38,599.599 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 11:32:40,207.207 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:32:40,210.210 INFO    ] Checking for system updates...
[2026-08-25 11:32:40,250.250 INFO    ] 200
[2026-08-25 11:32:40,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:40,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:40,307.307 INFO    ] No update needed
[2026-08-25 11:32:40,310.310 INFO    ] Checking for camera pi updates...
[2026-08-25 11:32:40,343.343 INFO    ] 200
[2026-08-25 11:32:40,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:40,386.386 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:32:40,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:40,434.434 INFO    ] No camera update needed
[2026-08-25 11:32:40,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:32:40,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:32:40,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:32:40,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:32:42,488.488 INFO    ] ================================================
[2026-08-25 11:32:42,504.504 INFO    ] Launching Daemon at Tue Aug 25 11:32:42 IST 2026
[2026-08-25 11:32:42,515.515 INFO    ] ================================================
[2026-08-25 11:32:43,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:32:43
[2026-08-25 11:32:43,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:32:44,151.151 INFO    ] Initializing speech engine...
[2026-08-25 11:32:44,159.159 INFO    ] 2026-08-25 11:32:44
[2026-08-25 11:32:44,450.450 INFO    ] 2026-08-25 11:32:44
[2026-08-25 11:32:44,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:32:44,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:32:44,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:32:44,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:32:44,983.983 INFO    ] time= 25/08/2026 11:32:44
[2026-08-25 11:32:45,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:32:45,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:32:45,176.176 INFO    ] No existing commands found in stream
[2026-08-25 11:32:50,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:32:50,210.210 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 11:32:52,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:32:52,692.692 INFO    ] Checking for system updates...
[2026-08-25 11:32:52,733.733 INFO    ] 200
[2026-08-25 11:32:52,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:52,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:52,791.791 INFO    ] No update needed
[2026-08-25 11:32:52,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 11:32:52,833.833 INFO    ] 200
[2026-08-25 11:32:52,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:32:52,878.878 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:32:52,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:32:52,932.932 INFO    ] No camera update needed
[2026-08-25 11:32:52,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:32:52,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:32:52,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:32:52,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:32:54,993.993 INFO    ] ================================================
[2026-08-25 11:32:55,010.010 INFO    ] Launching Daemon at Tue Aug 25 11:32:55 IST 2026
[2026-08-25 11:32:55,022.022 INFO    ] ================================================
[2026-08-25 11:32:55,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:32:55
[2026-08-25 11:32:56,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:32:56,749.749 INFO    ] Initializing speech engine...
[2026-08-25 11:32:56,761.761 INFO    ] 2026-08-25 11:32:56
[2026-08-25 11:32:57,093.093 INFO    ] 2026-08-25 11:32:57
[2026-08-25 11:32:57,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:32:57,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:32:57,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:32:57,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:32:57,615.615 INFO    ] time= 25/08/2026 11:32:57
[2026-08-25 11:32:57,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:32:57,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:32:57,757.757 INFO    ] No existing commands found in stream
[2026-08-25 11:33:02,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:33:02,791.791 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 11:33:03,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:33:03,432.432 INFO    ] Checking for system updates...
[2026-08-25 11:33:03,469.469 INFO    ] 200
[2026-08-25 11:33:03,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:03,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:33:03,527.527 INFO    ] No update needed
[2026-08-25 11:33:03,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 11:33:03,567.567 INFO    ] 200
[2026-08-25 11:33:03,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:03,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:33:03,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:33:03,679.679 INFO    ] No camera update needed
[2026-08-25 11:33:03,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:33:03,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:33:03,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:33:03,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:33:05,738.738 INFO    ] ================================================
[2026-08-25 11:33:05,753.753 INFO    ] Launching Daemon at Tue Aug 25 11:33:05 IST 2026
[2026-08-25 11:33:05,765.765 INFO    ] ================================================
[2026-08-25 11:33:06,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:33:06
[2026-08-25 11:33:06,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:33:07,224.224 INFO    ] Initializing speech engine...
[2026-08-25 11:33:07,232.232 INFO    ] 2026-08-25 11:33:07
[2026-08-25 11:33:07,488.488 INFO    ] 2026-08-25 11:33:07
[2026-08-25 11:33:07,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:33:07,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:33:07,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:33:07,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:33:07,950.950 INFO    ] time= 25/08/2026 11:33:07
[2026-08-25 11:33:08,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:33:08,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:33:08,174.174 INFO    ] No existing commands found in stream
[2026-08-25 11:33:13,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:33:13,200.200 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 11:33:16,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:33:16,240.240 INFO    ] Checking for system updates...
[2026-08-25 11:33:16,277.277 INFO    ] 200
[2026-08-25 11:33:16,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:16,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:33:16,341.341 INFO    ] No update needed
[2026-08-25 11:33:16,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 11:33:16,379.379 INFO    ] 200
[2026-08-25 11:33:16,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:16,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:33:16,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:33:16,477.477 INFO    ] No camera update needed
[2026-08-25 11:33:16,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:33:16,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:33:16,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:33:16,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:33:18,536.536 INFO    ] ================================================
[2026-08-25 11:33:18,552.552 INFO    ] Launching Daemon at Tue Aug 25 11:33:18 IST 2026
[2026-08-25 11:33:18,563.563 INFO    ] ================================================
[2026-08-25 11:33:19,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:33:19
[2026-08-25 11:33:19,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:33:20,173.173 INFO    ] Initializing speech engine...
[2026-08-25 11:33:20,187.187 INFO    ] 2026-08-25 11:33:20
[2026-08-25 11:33:20,495.495 INFO    ] 2026-08-25 11:33:20
[2026-08-25 11:33:20,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:33:20,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:33:20,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:33:20,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:33:20,997.997 INFO    ] time= 25/08/2026 11:33:20
[2026-08-25 11:33:21,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:33:21,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:33:21,156.156 INFO    ] No existing commands found in stream
[2026-08-25 11:33:26,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:33:26,181.181 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 11:33:30,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:33:30,545.545 INFO    ] Checking for system updates...
[2026-08-25 11:33:30,582.582 INFO    ] 200
[2026-08-25 11:33:30,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:30,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:33:30,640.640 INFO    ] No update needed
[2026-08-25 11:33:30,643.643 INFO    ] Checking for camera pi updates...
[2026-08-25 11:33:30,680.680 INFO    ] 200
[2026-08-25 11:33:30,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:30,722.722 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:33:30,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:33:30,774.774 INFO    ] No camera update needed
[2026-08-25 11:33:30,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:33:30,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:33:30,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:33:30,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:33:32,830.830 INFO    ] ================================================
[2026-08-25 11:33:32,847.847 INFO    ] Launching Daemon at Tue Aug 25 11:33:32 IST 2026
[2026-08-25 11:33:32,859.859 INFO    ] ================================================
[2026-08-25 11:33:33,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:33:33
[2026-08-25 11:33:34,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:33:34,261.261 INFO    ] Initializing speech engine...
[2026-08-25 11:33:34,284.284 INFO    ] 2026-08-25 11:33:34
[2026-08-25 11:33:34,538.538 INFO    ] 2026-08-25 11:33:34
[2026-08-25 11:33:34,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:33:34,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:33:34,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:33:34,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:33:34,979.979 INFO    ] time= 25/08/2026 11:33:34
[2026-08-25 11:33:35,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:33:35,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:33:35,163.163 INFO    ] No existing commands found in stream
[2026-08-25 11:33:40,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:33:40,178.178 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 11:33:41,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:33:41,606.606 INFO    ] Checking for system updates...
[2026-08-25 11:33:41,642.642 INFO    ] 200
[2026-08-25 11:33:41,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:41,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:33:41,702.702 INFO    ] No update needed
[2026-08-25 11:33:41,705.705 INFO    ] Checking for camera pi updates...
[2026-08-25 11:33:41,739.739 INFO    ] 200
[2026-08-25 11:33:41,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:41,784.784 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:33:41,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:33:41,844.844 INFO    ] No camera update needed
[2026-08-25 11:33:41,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:33:41,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:33:41,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:33:41,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:33:43,907.907 INFO    ] ================================================
[2026-08-25 11:33:43,922.922 INFO    ] Launching Daemon at Tue Aug 25 11:33:43 IST 2026
[2026-08-25 11:33:43,933.933 INFO    ] ================================================
[2026-08-25 11:33:44,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:33:44
[2026-08-25 11:33:45,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:33:45,392.392 INFO    ] Initializing speech engine...
[2026-08-25 11:33:45,400.400 INFO    ] 2026-08-25 11:33:45
[2026-08-25 11:33:45,659.659 INFO    ] 2026-08-25 11:33:45
[2026-08-25 11:33:45,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:33:45,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:33:45,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:33:46,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:33:46,137.137 INFO    ] time= 25/08/2026 11:33:46
[2026-08-25 11:33:46,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:33:46,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:33:46,336.336 INFO    ] No existing commands found in stream
[2026-08-25 11:33:51,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:33:51,366.366 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 11:33:53,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:33:53,923.923 INFO    ] Checking for system updates...
[2026-08-25 11:33:53,958.958 INFO    ] 200
[2026-08-25 11:33:53,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:54,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:33:54,017.017 INFO    ] No update needed
[2026-08-25 11:33:54,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 11:33:54,057.057 INFO    ] 200
[2026-08-25 11:33:54,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:33:54,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:33:54,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:33:54,244.244 INFO    ] No camera update needed
[2026-08-25 11:33:54,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:33:54,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:33:54,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:33:54,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:33:56,301.301 INFO    ] ================================================
[2026-08-25 11:33:56,317.317 INFO    ] Launching Daemon at Tue Aug 25 11:33:56 IST 2026
[2026-08-25 11:33:56,328.328 INFO    ] ================================================
[2026-08-25 11:33:56,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:33:56
[2026-08-25 11:33:57,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:33:57,948.948 INFO    ] Initializing speech engine...
[2026-08-25 11:33:57,953.953 INFO    ] 2026-08-25 11:33:57
[2026-08-25 11:33:58,245.245 INFO    ] 2026-08-25 11:33:58
[2026-08-25 11:33:58,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:33:58,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:33:58,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:33:58,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:33:58,776.776 INFO    ] time= 25/08/2026 11:33:58
[2026-08-25 11:33:58,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:33:58,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:33:58,941.941 INFO    ] No existing commands found in stream
[2026-08-25 11:34:03,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:34:03,971.971 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 11:34:07,304.304 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:34:07,308.308 INFO    ] Checking for system updates...
[2026-08-25 11:34:07,352.352 INFO    ] 200
[2026-08-25 11:34:07,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:07,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:07,417.417 INFO    ] No update needed
[2026-08-25 11:34:07,420.420 INFO    ] Checking for camera pi updates...
[2026-08-25 11:34:07,454.454 INFO    ] 200
[2026-08-25 11:34:07,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:07,497.497 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:34:07,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:07,550.550 INFO    ] No camera update needed
[2026-08-25 11:34:07,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:34:07,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:34:07,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:34:07,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:34:09,604.604 INFO    ] ================================================
[2026-08-25 11:34:09,619.619 INFO    ] Launching Daemon at Tue Aug 25 11:34:09 IST 2026
[2026-08-25 11:34:09,630.630 INFO    ] ================================================
[2026-08-25 11:34:10,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:34:10
[2026-08-25 11:34:10,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:34:11,031.031 INFO    ] Initializing speech engine...
[2026-08-25 11:34:11,053.053 INFO    ] 2026-08-25 11:34:11
[2026-08-25 11:34:11,310.310 INFO    ] 2026-08-25 11:34:11
[2026-08-25 11:34:11,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:34:11,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:34:11,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:34:11,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:34:11,755.755 INFO    ] time= 25/08/2026 11:34:11
[2026-08-25 11:34:11,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:34:11,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:34:12,001.001 INFO    ] No existing commands found in stream
[2026-08-25 11:34:17,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:34:17,037.037 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 11:34:19,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:34:19,395.395 INFO    ] Checking for system updates...
[2026-08-25 11:34:19,430.430 INFO    ] 200
[2026-08-25 11:34:19,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:19,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:19,487.487 INFO    ] No update needed
[2026-08-25 11:34:19,490.490 INFO    ] Checking for camera pi updates...
[2026-08-25 11:34:19,523.523 INFO    ] 200
[2026-08-25 11:34:19,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:19,568.568 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:34:19,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:19,617.617 INFO    ] No camera update needed
[2026-08-25 11:34:19,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:34:19,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:34:19,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:34:19,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:34:21,671.671 INFO    ] ================================================
[2026-08-25 11:34:21,686.686 INFO    ] Launching Daemon at Tue Aug 25 11:34:21 IST 2026
[2026-08-25 11:34:21,698.698 INFO    ] ================================================
[2026-08-25 11:34:22,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:34:22
[2026-08-25 11:34:23,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:34:23,267.267 INFO    ] Initializing speech engine...
[2026-08-25 11:34:23,283.283 INFO    ] 2026-08-25 11:34:23
[2026-08-25 11:34:23,538.538 INFO    ] 2026-08-25 11:34:23
[2026-08-25 11:34:23,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:34:23,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:34:23,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:34:23,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:34:23,913.913 INFO    ] time= 25/08/2026 11:34:23
[2026-08-25 11:34:23,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:34:23,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:34:24,099.099 INFO    ] No existing commands found in stream
[2026-08-25 11:34:29,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:34:29,127.127 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 11:34:32,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:34:32,445.445 INFO    ] Checking for system updates...
[2026-08-25 11:34:32,484.484 INFO    ] 200
[2026-08-25 11:34:32,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:32,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:32,547.547 INFO    ] No update needed
[2026-08-25 11:34:32,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 11:34:32,585.585 INFO    ] 200
[2026-08-25 11:34:32,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:32,631.631 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:34:32,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:32,703.703 INFO    ] No camera update needed
[2026-08-25 11:34:32,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:34:32,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:34:32,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:34:32,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:34:34,762.762 INFO    ] ================================================
[2026-08-25 11:34:34,777.777 INFO    ] Launching Daemon at Tue Aug 25 11:34:34 IST 2026
[2026-08-25 11:34:34,789.789 INFO    ] ================================================
[2026-08-25 11:34:35,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:34:35
[2026-08-25 11:34:35,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:34:36,193.193 INFO    ] Initializing speech engine...
[2026-08-25 11:34:36,215.215 INFO    ] 2026-08-25 11:34:36
[2026-08-25 11:34:36,473.473 INFO    ] 2026-08-25 11:34:36
[2026-08-25 11:34:36,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:34:36,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:34:36,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:34:36,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:34:36,855.855 INFO    ] time= 25/08/2026 11:34:36
[2026-08-25 11:34:36,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:34:36,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:34:37,035.035 INFO    ] No existing commands found in stream
[2026-08-25 11:34:42,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:34:42,063.063 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 11:34:46,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:34:46,223.223 INFO    ] Checking for system updates...
[2026-08-25 11:34:46,259.259 INFO    ] 200
[2026-08-25 11:34:46,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:46,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:46,315.315 INFO    ] No update needed
[2026-08-25 11:34:46,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 11:34:46,350.350 INFO    ] 200
[2026-08-25 11:34:46,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:46,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:34:46,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:46,452.452 INFO    ] No camera update needed
[2026-08-25 11:34:46,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:34:46,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:34:46,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:34:46,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:34:48,508.508 INFO    ] ================================================
[2026-08-25 11:34:48,523.523 INFO    ] Launching Daemon at Tue Aug 25 11:34:48 IST 2026
[2026-08-25 11:34:48,534.534 INFO    ] ================================================
[2026-08-25 11:34:49,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:34:49
[2026-08-25 11:34:49,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:34:50,318.318 INFO    ] Initializing speech engine...
[2026-08-25 11:34:50,328.328 INFO    ] 2026-08-25 11:34:50
[2026-08-25 11:34:50,641.641 INFO    ] 2026-08-25 11:34:50
[2026-08-25 11:34:50,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:34:50,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:34:50,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:34:51,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:34:51,151.151 INFO    ] time= 25/08/2026 11:34:51
[2026-08-25 11:34:51,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:34:51,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:34:51,317.317 INFO    ] No existing commands found in stream
[2026-08-25 11:34:56,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:34:56,347.347 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 11:34:57,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:34:57,425.425 INFO    ] Checking for system updates...
[2026-08-25 11:34:57,467.467 INFO    ] 200
[2026-08-25 11:34:57,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:57,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:57,529.529 INFO    ] No update needed
[2026-08-25 11:34:57,531.531 INFO    ] Checking for camera pi updates...
[2026-08-25 11:34:57,566.566 INFO    ] 200
[2026-08-25 11:34:57,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:34:57,611.611 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:34:57,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:34:57,671.671 INFO    ] No camera update needed
[2026-08-25 11:34:57,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:34:57,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:34:57,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:34:57,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:34:59,729.729 INFO    ] ================================================
[2026-08-25 11:34:59,744.744 INFO    ] Launching Daemon at Tue Aug 25 11:34:59 IST 2026
[2026-08-25 11:34:59,755.755 INFO    ] ================================================
[2026-08-25 11:35:00,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:35:00
[2026-08-25 11:35:01,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:35:01,814.814 INFO    ] Initializing speech engine...
[2026-08-25 11:35:01,818.818 INFO    ] 2026-08-25 11:35:01
[2026-08-25 11:35:02,300.300 INFO    ] 2026-08-25 11:35:02
[2026-08-25 11:35:02,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:35:02,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:35:02,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:35:02,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:35:02,829.829 INFO    ] time= 25/08/2026 11:35:02
[2026-08-25 11:35:02,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:35:02,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:35:03,068.068 INFO    ] No existing commands found in stream
[2026-08-25 11:35:08,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:35:08,107.107 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 11:35:12,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:35:12,549.549 INFO    ] Checking for system updates...
[2026-08-25 11:35:12,584.584 INFO    ] 200
[2026-08-25 11:35:12,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:12,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:35:12,643.643 INFO    ] No update needed
[2026-08-25 11:35:12,645.645 INFO    ] Checking for camera pi updates...
[2026-08-25 11:35:12,678.678 INFO    ] 200
[2026-08-25 11:35:12,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:12,720.720 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:35:12,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:35:12,770.770 INFO    ] No camera update needed
[2026-08-25 11:35:12,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:35:12,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:35:12,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:35:12,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:35:14,823.823 INFO    ] ================================================
[2026-08-25 11:35:14,838.838 INFO    ] Launching Daemon at Tue Aug 25 11:35:14 IST 2026
[2026-08-25 11:35:14,849.849 INFO    ] ================================================
[2026-08-25 11:35:15,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:35:15
[2026-08-25 11:35:16,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:35:16,535.535 INFO    ] Initializing speech engine...
[2026-08-25 11:35:16,547.547 INFO    ] 2026-08-25 11:35:16
[2026-08-25 11:35:16,864.864 INFO    ] 2026-08-25 11:35:16
[2026-08-25 11:35:16,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:35:17,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:35:17,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:35:17,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:35:17,369.369 INFO    ] time= 25/08/2026 11:35:17
[2026-08-25 11:35:17,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:35:17,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:35:17,534.534 INFO    ] No existing commands found in stream
[2026-08-25 11:35:22,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:35:22,571.571 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 11:35:27,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:35:27,052.052 INFO    ] Checking for system updates...
[2026-08-25 11:35:27,089.089 INFO    ] 200
[2026-08-25 11:35:27,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:27,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:35:27,149.149 INFO    ] No update needed
[2026-08-25 11:35:27,152.152 INFO    ] Checking for camera pi updates...
[2026-08-25 11:35:27,188.188 INFO    ] 200
[2026-08-25 11:35:27,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:27,232.232 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:35:27,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:35:27,290.290 INFO    ] No camera update needed
[2026-08-25 11:35:27,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:35:27,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:35:27,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:35:27,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:35:29,351.351 INFO    ] ================================================
[2026-08-25 11:35:29,366.366 INFO    ] Launching Daemon at Tue Aug 25 11:35:29 IST 2026
[2026-08-25 11:35:29,377.377 INFO    ] ================================================
[2026-08-25 11:35:29,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:35:29
[2026-08-25 11:35:30,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:35:30,803.803 INFO    ] Initializing speech engine...
[2026-08-25 11:35:30,809.809 INFO    ] 2026-08-25 11:35:30
[2026-08-25 11:35:31,116.116 INFO    ] 2026-08-25 11:35:31
[2026-08-25 11:35:31,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:35:31,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:35:31,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:35:31,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:35:31,555.555 INFO    ] time= 25/08/2026 11:35:31
[2026-08-25 11:35:31,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:35:31,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:35:31,760.760 INFO    ] No existing commands found in stream
[2026-08-25 11:35:36,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:35:36,772.772 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 11:35:40,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:35:40,258.258 INFO    ] Checking for system updates...
[2026-08-25 11:35:40,294.294 INFO    ] 200
[2026-08-25 11:35:40,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:40,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:35:40,351.351 INFO    ] No update needed
[2026-08-25 11:35:40,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 11:35:40,389.389 INFO    ] 200
[2026-08-25 11:35:40,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:40,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:35:40,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:35:40,484.484 INFO    ] No camera update needed
[2026-08-25 11:35:40,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:35:40,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:35:40,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:35:40,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:35:42,543.543 INFO    ] ================================================
[2026-08-25 11:35:42,559.559 INFO    ] Launching Daemon at Tue Aug 25 11:35:42 IST 2026
[2026-08-25 11:35:42,570.570 INFO    ] ================================================
[2026-08-25 11:35:43,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:35:43
[2026-08-25 11:35:43,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:35:44,234.234 INFO    ] Initializing speech engine...
[2026-08-25 11:35:44,244.244 INFO    ] 2026-08-25 11:35:44
[2026-08-25 11:35:44,540.540 INFO    ] 2026-08-25 11:35:44
[2026-08-25 11:35:44,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:35:44,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:35:44,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:35:45,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:35:45,096.096 INFO    ] time= 25/08/2026 11:35:45
[2026-08-25 11:35:45,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:35:45,144.144 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:35:45,253.253 INFO    ] No existing commands found in stream
[2026-08-25 11:35:50,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:35:50,271.271 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 11:35:54,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:35:54,408.408 INFO    ] Checking for system updates...
[2026-08-25 11:35:54,443.443 INFO    ] 200
[2026-08-25 11:35:54,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:54,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:35:54,500.500 INFO    ] No update needed
[2026-08-25 11:35:54,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 11:35:54,540.540 INFO    ] 200
[2026-08-25 11:35:54,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:35:54,583.583 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:35:54,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:35:54,641.641 INFO    ] No camera update needed
[2026-08-25 11:35:54,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:35:54,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:35:54,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:35:54,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:35:56,696.696 INFO    ] ================================================
[2026-08-25 11:35:56,712.712 INFO    ] Launching Daemon at Tue Aug 25 11:35:56 IST 2026
[2026-08-25 11:35:56,723.723 INFO    ] ================================================
[2026-08-25 11:35:57,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:35:57
[2026-08-25 11:35:57,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:35:58,180.180 INFO    ] Initializing speech engine...
[2026-08-25 11:35:58,187.187 INFO    ] 2026-08-25 11:35:58
[2026-08-25 11:35:58,447.447 INFO    ] 2026-08-25 11:35:58
[2026-08-25 11:35:58,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:35:58,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:35:58,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:35:58,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:35:58,905.905 INFO    ] time= 25/08/2026 11:35:58
[2026-08-25 11:35:58,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:35:58,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:35:59,146.146 INFO    ] No existing commands found in stream
[2026-08-25 11:36:04,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:36:04,172.172 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 11:36:06,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:36:06,579.579 INFO    ] Checking for system updates...
[2026-08-25 11:36:06,619.619 INFO    ] 200
[2026-08-25 11:36:06,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:06,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:06,688.688 INFO    ] No update needed
[2026-08-25 11:36:06,691.691 INFO    ] Checking for camera pi updates...
[2026-08-25 11:36:06,726.726 INFO    ] 200
[2026-08-25 11:36:06,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:06,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:36:06,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:06,820.820 INFO    ] No camera update needed
[2026-08-25 11:36:06,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:36:06,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:36:06,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:36:06,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:36:08,879.879 INFO    ] ================================================
[2026-08-25 11:36:08,895.895 INFO    ] Launching Daemon at Tue Aug 25 11:36:08 IST 2026
[2026-08-25 11:36:08,906.906 INFO    ] ================================================
[2026-08-25 11:36:09,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:36:09
[2026-08-25 11:36:10,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:36:10,389.389 INFO    ] Initializing speech engine...
[2026-08-25 11:36:10,394.394 INFO    ] 2026-08-25 11:36:10
[2026-08-25 11:36:10,709.709 INFO    ] 2026-08-25 11:36:10
[2026-08-25 11:36:10,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:36:10,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:36:10,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:36:11,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:36:11,093.093 INFO    ] time= 25/08/2026 11:36:11
[2026-08-25 11:36:11,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:36:11,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:36:11,208.208 INFO    ] No existing commands found in stream
[2026-08-25 11:36:16,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:36:16,246.246 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 11:36:18,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:36:18,259.259 INFO    ] Checking for system updates...
[2026-08-25 11:36:18,295.295 INFO    ] 200
[2026-08-25 11:36:18,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:18,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:18,356.356 INFO    ] No update needed
[2026-08-25 11:36:18,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 11:36:18,393.393 INFO    ] 200
[2026-08-25 11:36:18,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:18,437.437 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:36:18,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:18,499.499 INFO    ] No camera update needed
[2026-08-25 11:36:18,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:36:18,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:36:18,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:36:18,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:36:20,554.554 INFO    ] ================================================
[2026-08-25 11:36:20,569.569 INFO    ] Launching Daemon at Tue Aug 25 11:36:20 IST 2026
[2026-08-25 11:36:20,581.581 INFO    ] ================================================
[2026-08-25 11:36:21,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:36:21
[2026-08-25 11:36:21,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:36:22,035.035 INFO    ] Initializing speech engine...
[2026-08-25 11:36:22,040.040 INFO    ] 2026-08-25 11:36:22
[2026-08-25 11:36:22,339.339 INFO    ] 2026-08-25 11:36:22
[2026-08-25 11:36:22,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:36:22,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:36:22,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:36:22,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:36:22,727.727 INFO    ] time= 25/08/2026 11:36:22
[2026-08-25 11:36:22,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:36:22,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:36:22,856.856 INFO    ] No existing commands found in stream
[2026-08-25 11:36:27,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:36:27,879.879 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 11:36:28,590.590 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:36:28,593.593 INFO    ] Checking for system updates...
[2026-08-25 11:36:28,630.630 INFO    ] 200
[2026-08-25 11:36:28,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:28,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:28,698.698 INFO    ] No update needed
[2026-08-25 11:36:28,701.701 INFO    ] Checking for camera pi updates...
[2026-08-25 11:36:28,740.740 INFO    ] 200
[2026-08-25 11:36:28,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:28,784.784 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:36:28,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:28,843.843 INFO    ] No camera update needed
[2026-08-25 11:36:28,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:36:28,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:36:28,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:36:28,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:36:30,903.903 INFO    ] ================================================
[2026-08-25 11:36:30,919.919 INFO    ] Launching Daemon at Tue Aug 25 11:36:30 IST 2026
[2026-08-25 11:36:30,930.930 INFO    ] ================================================
[2026-08-25 11:36:31,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:36:31
[2026-08-25 11:36:32,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:36:32,392.392 INFO    ] Initializing speech engine...
[2026-08-25 11:36:32,398.398 INFO    ] 2026-08-25 11:36:32
[2026-08-25 11:36:32,695.695 INFO    ] 2026-08-25 11:36:32
[2026-08-25 11:36:32,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:36:32,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:36:32,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:36:33,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:36:33,055.055 INFO    ] time= 25/08/2026 11:36:33
[2026-08-25 11:36:33,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:36:33,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:36:33,189.189 INFO    ] No existing commands found in stream
[2026-08-25 11:36:38,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:36:38,204.204 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 11:36:42,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:36:42,451.451 INFO    ] Checking for system updates...
[2026-08-25 11:36:42,486.486 INFO    ] 200
[2026-08-25 11:36:42,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:42,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:42,543.543 INFO    ] No update needed
[2026-08-25 11:36:42,546.546 INFO    ] Checking for camera pi updates...
[2026-08-25 11:36:42,580.580 INFO    ] 200
[2026-08-25 11:36:42,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:42,622.622 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:36:42,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:42,668.668 INFO    ] No camera update needed
[2026-08-25 11:36:42,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:36:42,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:36:42,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:36:42,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:36:44,725.725 INFO    ] ================================================
[2026-08-25 11:36:44,741.741 INFO    ] Launching Daemon at Tue Aug 25 11:36:44 IST 2026
[2026-08-25 11:36:44,752.752 INFO    ] ================================================
[2026-08-25 11:36:45,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:36:45
[2026-08-25 11:36:45,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:36:46,175.175 INFO    ] Initializing speech engine...
[2026-08-25 11:36:46,189.189 INFO    ] 2026-08-25 11:36:46
[2026-08-25 11:36:46,474.474 INFO    ] 2026-08-25 11:36:46
[2026-08-25 11:36:46,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:36:46,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:36:46,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:36:46,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:36:46,851.851 INFO    ] time= 25/08/2026 11:36:46
[2026-08-25 11:36:46,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:36:46,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:36:46,978.978 INFO    ] No existing commands found in stream
[2026-08-25 11:36:52,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:36:52,016.016 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 11:36:54,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:36:54,461.461 INFO    ] Checking for system updates...
[2026-08-25 11:36:54,497.497 INFO    ] 200
[2026-08-25 11:36:54,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:54,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:54,556.556 INFO    ] No update needed
[2026-08-25 11:36:54,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 11:36:54,592.592 INFO    ] 200
[2026-08-25 11:36:54,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:36:54,637.637 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:36:54,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:36:54,688.688 INFO    ] No camera update needed
[2026-08-25 11:36:54,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:36:54,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:36:54,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:36:54,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:36:56,744.744 INFO    ] ================================================
[2026-08-25 11:36:56,760.760 INFO    ] Launching Daemon at Tue Aug 25 11:36:56 IST 2026
[2026-08-25 11:36:56,771.771 INFO    ] ================================================
[2026-08-25 11:36:57,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:36:57
[2026-08-25 11:36:57,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:36:58,222.222 INFO    ] Initializing speech engine...
[2026-08-25 11:36:58,236.236 INFO    ] 2026-08-25 11:36:58
[2026-08-25 11:36:58,521.521 INFO    ] 2026-08-25 11:36:58
[2026-08-25 11:36:58,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:36:58,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:36:58,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:36:58,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:36:58,917.917 INFO    ] time= 25/08/2026 11:36:58
[2026-08-25 11:36:58,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:36:58,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:36:59,025.025 INFO    ] No existing commands found in stream
[2026-08-25 11:37:04,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:37:04,039.039 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 11:37:05,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:37:05,275.275 INFO    ] Checking for system updates...
[2026-08-25 11:37:05,310.310 INFO    ] 200
[2026-08-25 11:37:05,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:05,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:37:05,370.370 INFO    ] No update needed
[2026-08-25 11:37:05,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 11:37:05,407.407 INFO    ] 200
[2026-08-25 11:37:05,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:05,450.450 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:37:05,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:37:05,512.512 INFO    ] No camera update needed
[2026-08-25 11:37:05,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:37:05,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:37:05,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:37:05,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:37:07,566.566 INFO    ] ================================================
[2026-08-25 11:37:07,582.582 INFO    ] Launching Daemon at Tue Aug 25 11:37:07 IST 2026
[2026-08-25 11:37:07,593.593 INFO    ] ================================================
[2026-08-25 11:37:08,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:37:08
[2026-08-25 11:37:08,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:37:09,002.002 INFO    ] Initializing speech engine...
[2026-08-25 11:37:09,008.008 INFO    ] 2026-08-25 11:37:09
[2026-08-25 11:37:09,308.308 INFO    ] 2026-08-25 11:37:09
[2026-08-25 11:37:09,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:37:09,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:37:09,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:37:09,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:37:09,707.707 INFO    ] time= 25/08/2026 11:37:09
[2026-08-25 11:37:09,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:37:09,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:37:09,816.816 INFO    ] No existing commands found in stream
[2026-08-25 11:37:14,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:37:14,844.844 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 11:37:18,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:37:18,284.284 INFO    ] Checking for system updates...
[2026-08-25 11:37:18,319.319 INFO    ] 200
[2026-08-25 11:37:18,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:18,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:37:18,382.382 INFO    ] No update needed
[2026-08-25 11:37:18,385.385 INFO    ] Checking for camera pi updates...
[2026-08-25 11:37:18,419.419 INFO    ] 200
[2026-08-25 11:37:18,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:18,463.463 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:37:18,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:37:18,517.517 INFO    ] No camera update needed
[2026-08-25 11:37:18,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:37:18,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:37:18,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:37:18,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:37:20,572.572 INFO    ] ================================================
[2026-08-25 11:37:20,587.587 INFO    ] Launching Daemon at Tue Aug 25 11:37:20 IST 2026
[2026-08-25 11:37:20,598.598 INFO    ] ================================================
[2026-08-25 11:37:21,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:37:21
[2026-08-25 11:37:21,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:37:22,033.033 INFO    ] Initializing speech engine...
[2026-08-25 11:37:22,043.043 INFO    ] 2026-08-25 11:37:22
[2026-08-25 11:37:22,292.292 INFO    ] 2026-08-25 11:37:22
[2026-08-25 11:37:22,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:37:22,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:37:22,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:37:22,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:37:22,765.765 INFO    ] time= 25/08/2026 11:37:22
[2026-08-25 11:37:22,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:37:22,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:37:22,974.974 INFO    ] No existing commands found in stream
[2026-08-25 11:37:27,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:37:27,999.999 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 11:37:31,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:37:31,699.699 INFO    ] Checking for system updates...
[2026-08-25 11:37:31,739.739 INFO    ] 200
[2026-08-25 11:37:31,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:31,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:37:31,803.803 INFO    ] No update needed
[2026-08-25 11:37:31,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 11:37:31,843.843 INFO    ] 200
[2026-08-25 11:37:31,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:31,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:37:31,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:37:31,941.941 INFO    ] No camera update needed
[2026-08-25 11:37:31,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:37:31,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:37:31,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:37:31,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:37:34,004.004 INFO    ] ================================================
[2026-08-25 11:37:34,020.020 INFO    ] Launching Daemon at Tue Aug 25 11:37:34 IST 2026
[2026-08-25 11:37:34,032.032 INFO    ] ================================================
[2026-08-25 11:37:34,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:37:34
[2026-08-25 11:37:35,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:37:35,476.476 INFO    ] Initializing speech engine...
[2026-08-25 11:37:35,492.492 INFO    ] 2026-08-25 11:37:35
[2026-08-25 11:37:35,782.782 INFO    ] 2026-08-25 11:37:35
[2026-08-25 11:37:35,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:37:36,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:37:36,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:37:36,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:37:36,277.277 INFO    ] time= 25/08/2026 11:37:36
[2026-08-25 11:37:36,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:37:36,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:37:36,559.559 INFO    ] No existing commands found in stream
[2026-08-25 11:37:41,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:37:41,592.592 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 11:37:45,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:37:45,820.820 INFO    ] Checking for system updates...
[2026-08-25 11:37:45,855.855 INFO    ] 200
[2026-08-25 11:37:45,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:45,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:37:45,912.912 INFO    ] No update needed
[2026-08-25 11:37:45,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 11:37:45,948.948 INFO    ] 200
[2026-08-25 11:37:45,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:45,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:37:46,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:37:46,052.052 INFO    ] No camera update needed
[2026-08-25 11:37:46,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:37:46,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:37:46,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:37:46,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:37:48,108.108 INFO    ] ================================================
[2026-08-25 11:37:48,123.123 INFO    ] Launching Daemon at Tue Aug 25 11:37:48 IST 2026
[2026-08-25 11:37:48,134.134 INFO    ] ================================================
[2026-08-25 11:37:48,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:37:48
[2026-08-25 11:37:49,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:37:49,586.586 INFO    ] Initializing speech engine...
[2026-08-25 11:37:49,596.596 INFO    ] 2026-08-25 11:37:49
[2026-08-25 11:37:49,845.845 INFO    ] 2026-08-25 11:37:49
[2026-08-25 11:37:49,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:37:50,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:37:50,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:37:50,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:37:50,295.295 INFO    ] time= 25/08/2026 11:37:50
[2026-08-25 11:37:50,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:37:50,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:37:50,553.553 INFO    ] No existing commands found in stream
[2026-08-25 11:37:55,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:37:55,570.570 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 11:37:56,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:37:56,998.998 INFO    ] Checking for system updates...
[2026-08-25 11:37:57,036.036 INFO    ] 200
[2026-08-25 11:37:57,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:57,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:37:57,100.100 INFO    ] No update needed
[2026-08-25 11:37:57,102.102 INFO    ] Checking for camera pi updates...
[2026-08-25 11:37:57,142.142 INFO    ] 200
[2026-08-25 11:37:57,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:37:57,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:37:57,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:37:57,245.245 INFO    ] No camera update needed
[2026-08-25 11:37:57,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:37:57,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:37:57,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:37:57,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:37:59,305.305 INFO    ] ================================================
[2026-08-25 11:37:59,321.321 INFO    ] Launching Daemon at Tue Aug 25 11:37:59 IST 2026
[2026-08-25 11:37:59,333.333 INFO    ] ================================================
[2026-08-25 11:37:59,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:37:59
[2026-08-25 11:38:00,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:38:00,811.811 INFO    ] Initializing speech engine...
[2026-08-25 11:38:00,827.827 INFO    ] 2026-08-25 11:38:00
[2026-08-25 11:38:01,111.111 INFO    ] 2026-08-25 11:38:01
[2026-08-25 11:38:01,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:38:01,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:38:01,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:38:01,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:38:01,501.501 INFO    ] time= 25/08/2026 11:38:01
[2026-08-25 11:38:01,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:38:01,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:38:01,574.574 INFO    ] No existing commands found in stream
[2026-08-25 11:38:06,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:38:06,587.587 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 11:38:08,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:38:08,589.589 INFO    ] Checking for system updates...
[2026-08-25 11:38:08,624.624 INFO    ] 200
[2026-08-25 11:38:08,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:08,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:38:08,681.681 INFO    ] No update needed
[2026-08-25 11:38:08,684.684 INFO    ] Checking for camera pi updates...
[2026-08-25 11:38:08,717.717 INFO    ] 200
[2026-08-25 11:38:08,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:08,764.764 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:38:08,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:38:08,961.961 INFO    ] No camera update needed
[2026-08-25 11:38:08,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:38:08,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:38:08,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:38:08,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:38:11,016.016 INFO    ] ================================================
[2026-08-25 11:38:11,032.032 INFO    ] Launching Daemon at Tue Aug 25 11:38:11 IST 2026
[2026-08-25 11:38:11,044.044 INFO    ] ================================================
[2026-08-25 11:38:11,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:38:11
[2026-08-25 11:38:12,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:38:12,574.574 INFO    ] Initializing speech engine...
[2026-08-25 11:38:12,586.586 INFO    ] 2026-08-25 11:38:12
[2026-08-25 11:38:12,864.864 INFO    ] 2026-08-25 11:38:12
[2026-08-25 11:38:12,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:38:13,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:38:13,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:38:13,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:38:13,411.411 INFO    ] time= 25/08/2026 11:38:13
[2026-08-25 11:38:13,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:38:13,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:38:13,581.581 INFO    ] No existing commands found in stream
[2026-08-25 11:38:18,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:38:18,610.610 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 11:38:22,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:38:22,526.526 INFO    ] Checking for system updates...
[2026-08-25 11:38:22,566.566 INFO    ] 200
[2026-08-25 11:38:22,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:22,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:38:22,623.623 INFO    ] No update needed
[2026-08-25 11:38:22,625.625 INFO    ] Checking for camera pi updates...
[2026-08-25 11:38:22,659.659 INFO    ] 200
[2026-08-25 11:38:22,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:22,705.705 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:38:22,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:38:22,763.763 INFO    ] No camera update needed
[2026-08-25 11:38:22,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:38:22,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:38:22,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:38:22,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:38:24,817.817 INFO    ] ================================================
[2026-08-25 11:38:24,833.833 INFO    ] Launching Daemon at Tue Aug 25 11:38:24 IST 2026
[2026-08-25 11:38:24,844.844 INFO    ] ================================================
[2026-08-25 11:38:25,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:38:25
[2026-08-25 11:38:26,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:38:26,487.487 INFO    ] Initializing speech engine...
[2026-08-25 11:38:26,501.501 INFO    ] 2026-08-25 11:38:26
[2026-08-25 11:38:26,812.812 INFO    ] 2026-08-25 11:38:26
[2026-08-25 11:38:26,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:38:27,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:38:27,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:38:27,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:38:27,318.318 INFO    ] time= 25/08/2026 11:38:27
[2026-08-25 11:38:27,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:38:27,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:38:27,517.517 INFO    ] No existing commands found in stream
[2026-08-25 11:38:32,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:38:32,553.553 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 11:38:34,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:38:34,443.443 INFO    ] Checking for system updates...
[2026-08-25 11:38:34,479.479 INFO    ] 200
[2026-08-25 11:38:34,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:34,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:38:34,536.536 INFO    ] No update needed
[2026-08-25 11:38:34,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 11:38:34,571.571 INFO    ] 200
[2026-08-25 11:38:34,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:34,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:38:34,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:38:34,661.661 INFO    ] No camera update needed
[2026-08-25 11:38:34,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:38:34,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:38:34,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:38:34,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:38:36,717.717 INFO    ] ================================================
[2026-08-25 11:38:36,732.732 INFO    ] Launching Daemon at Tue Aug 25 11:38:36 IST 2026
[2026-08-25 11:38:36,743.743 INFO    ] ================================================
[2026-08-25 11:38:37,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:38:37
[2026-08-25 11:38:37,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:38:38,185.185 INFO    ] Initializing speech engine...
[2026-08-25 11:38:38,206.206 INFO    ] 2026-08-25 11:38:38
[2026-08-25 11:38:38,474.474 INFO    ] 2026-08-25 11:38:38
[2026-08-25 11:38:38,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:38:38,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:38:38,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:38:38,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:38:38,838.838 INFO    ] time= 25/08/2026 11:38:38
[2026-08-25 11:38:38,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:38:38,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:38:38,963.963 INFO    ] No existing commands found in stream
[2026-08-25 11:38:43,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:38:43,992.992 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 11:38:48,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:38:48,328.328 INFO    ] Checking for system updates...
[2026-08-25 11:38:48,363.363 INFO    ] 200
[2026-08-25 11:38:48,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:48,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:38:48,420.420 INFO    ] No update needed
[2026-08-25 11:38:48,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 11:38:48,460.460 INFO    ] 200
[2026-08-25 11:38:48,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:38:48,502.502 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:38:48,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:38:48,559.559 INFO    ] No camera update needed
[2026-08-25 11:38:48,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:38:48,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:38:48,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:38:48,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:38:50,613.613 INFO    ] ================================================
[2026-08-25 11:38:50,628.628 INFO    ] Launching Daemon at Tue Aug 25 11:38:50 IST 2026
[2026-08-25 11:38:50,640.640 INFO    ] ================================================
[2026-08-25 11:38:51,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:38:51
[2026-08-25 11:38:51,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:38:52,194.194 INFO    ] Initializing speech engine...
[2026-08-25 11:38:52,204.204 INFO    ] 2026-08-25 11:38:52
[2026-08-25 11:38:52,452.452 INFO    ] 2026-08-25 11:38:52
[2026-08-25 11:38:52,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:38:52,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:38:52,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:38:52,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:38:52,924.924 INFO    ] time= 25/08/2026 11:38:52
[2026-08-25 11:38:52,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:38:53,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:38:53,141.141 INFO    ] No existing commands found in stream
[2026-08-25 11:38:58,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:38:58,164.164 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 11:39:00,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:39:00,659.659 INFO    ] Checking for system updates...
[2026-08-25 11:39:00,695.695 INFO    ] 200
[2026-08-25 11:39:00,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:00,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:39:00,760.760 INFO    ] No update needed
[2026-08-25 11:39:00,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 11:39:00,796.796 INFO    ] 200
[2026-08-25 11:39:00,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:00,843.843 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:39:00,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:39:00,900.900 INFO    ] No camera update needed
[2026-08-25 11:39:00,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:39:00,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:39:00,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:39:00,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:39:02,959.959 INFO    ] ================================================
[2026-08-25 11:39:02,975.975 INFO    ] Launching Daemon at Tue Aug 25 11:39:02 IST 2026
[2026-08-25 11:39:02,988.988 INFO    ] ================================================
[2026-08-25 11:39:03,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:39:03
[2026-08-25 11:39:04,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:39:04,413.413 INFO    ] Initializing speech engine...
[2026-08-25 11:39:04,421.421 INFO    ] 2026-08-25 11:39:04
[2026-08-25 11:39:04,669.669 INFO    ] 2026-08-25 11:39:04
[2026-08-25 11:39:04,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:39:04,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:39:04,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:39:05,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:39:05,038.038 INFO    ] time= 25/08/2026 11:39:05
[2026-08-25 11:39:05,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:39:05,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:39:05,221.221 INFO    ] No existing commands found in stream
[2026-08-25 11:39:10,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:39:10,247.247 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 11:39:12,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:39:12,529.529 INFO    ] Checking for system updates...
[2026-08-25 11:39:12,564.564 INFO    ] 200
[2026-08-25 11:39:12,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:12,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:39:12,627.627 INFO    ] No update needed
[2026-08-25 11:39:12,630.630 INFO    ] Checking for camera pi updates...
[2026-08-25 11:39:12,667.667 INFO    ] 200
[2026-08-25 11:39:12,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:12,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:39:12,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:39:12,769.769 INFO    ] No camera update needed
[2026-08-25 11:39:12,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:39:12,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:39:12,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:39:12,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:39:14,827.827 INFO    ] ================================================
[2026-08-25 11:39:14,842.842 INFO    ] Launching Daemon at Tue Aug 25 11:39:14 IST 2026
[2026-08-25 11:39:14,853.853 INFO    ] ================================================
[2026-08-25 11:39:15,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:39:15
[2026-08-25 11:39:16,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:39:16,444.444 INFO    ] Initializing speech engine...
[2026-08-25 11:39:16,454.454 INFO    ] 2026-08-25 11:39:16
[2026-08-25 11:39:16,726.726 INFO    ] 2026-08-25 11:39:16
[2026-08-25 11:39:16,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:39:17,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:39:17,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:39:17,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:39:17,213.213 INFO    ] time= 25/08/2026 11:39:17
[2026-08-25 11:39:17,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:39:17,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:39:17,437.437 INFO    ] No existing commands found in stream
[2026-08-25 11:39:22,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:39:22,456.456 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 11:39:25,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:39:25,674.674 INFO    ] Checking for system updates...
[2026-08-25 11:39:25,710.710 INFO    ] 200
[2026-08-25 11:39:25,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:25,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:39:25,774.774 INFO    ] No update needed
[2026-08-25 11:39:25,776.776 INFO    ] Checking for camera pi updates...
[2026-08-25 11:39:25,812.812 INFO    ] 200
[2026-08-25 11:39:25,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:25,859.859 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:39:25,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:39:25,918.918 INFO    ] No camera update needed
[2026-08-25 11:39:25,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:39:25,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:39:25,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:39:25,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:39:27,975.975 INFO    ] ================================================
[2026-08-25 11:39:27,989.989 INFO    ] Launching Daemon at Tue Aug 25 11:39:27 IST 2026
[2026-08-25 11:39:28,000.000 INFO    ] ================================================
[2026-08-25 11:39:28,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:39:28
[2026-08-25 11:39:29,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:39:29,450.450 INFO    ] Initializing speech engine...
[2026-08-25 11:39:29,459.459 INFO    ] 2026-08-25 11:39:29
[2026-08-25 11:39:29,709.709 INFO    ] 2026-08-25 11:39:29
[2026-08-25 11:39:29,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:39:29,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:39:30,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:39:30,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:39:30,209.209 INFO    ] time= 25/08/2026 11:39:30
[2026-08-25 11:39:30,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:39:30,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:39:30,412.412 INFO    ] No existing commands found in stream
[2026-08-25 11:39:35,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:39:35,427.427 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 11:39:36,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:39:36,182.182 INFO    ] Checking for system updates...
[2026-08-25 11:39:36,221.221 INFO    ] 200
[2026-08-25 11:39:36,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:36,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:39:36,283.283 INFO    ] No update needed
[2026-08-25 11:39:36,286.286 INFO    ] Checking for camera pi updates...
[2026-08-25 11:39:36,323.323 INFO    ] 200
[2026-08-25 11:39:36,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:36,366.366 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:39:36,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:39:36,423.423 INFO    ] No camera update needed
[2026-08-25 11:39:36,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:39:36,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:39:36,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:39:36,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:39:38,478.478 INFO    ] ================================================
[2026-08-25 11:39:38,493.493 INFO    ] Launching Daemon at Tue Aug 25 11:39:38 IST 2026
[2026-08-25 11:39:38,504.504 INFO    ] ================================================
[2026-08-25 11:39:39,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:39:39
[2026-08-25 11:39:39,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:39:39,955.955 INFO    ] Initializing speech engine...
[2026-08-25 11:39:39,962.962 INFO    ] 2026-08-25 11:39:39
[2026-08-25 11:39:40,222.222 INFO    ] 2026-08-25 11:39:40
[2026-08-25 11:39:40,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:39:40,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:39:40,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:39:40,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:39:40,694.694 INFO    ] time= 25/08/2026 11:39:40
[2026-08-25 11:39:40,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:39:40,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:39:40,897.897 INFO    ] No existing commands found in stream
[2026-08-25 11:39:45,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:39:45,926.926 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 11:39:48,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:39:48,089.089 INFO    ] Checking for system updates...
[2026-08-25 11:39:48,125.125 INFO    ] 200
[2026-08-25 11:39:48,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:48,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:39:48,182.182 INFO    ] No update needed
[2026-08-25 11:39:48,185.185 INFO    ] Checking for camera pi updates...
[2026-08-25 11:39:48,222.222 INFO    ] 200
[2026-08-25 11:39:48,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:39:48,265.265 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:39:48,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:39:48,322.322 INFO    ] No camera update needed
[2026-08-25 11:39:48,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:39:48,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:39:48,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:39:48,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:39:50,383.383 INFO    ] ================================================
[2026-08-25 11:39:50,398.398 INFO    ] Launching Daemon at Tue Aug 25 11:39:50 IST 2026
[2026-08-25 11:39:50,410.410 INFO    ] ================================================
[2026-08-25 11:39:50,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:39:50
[2026-08-25 11:39:51,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:39:51,807.807 INFO    ] Initializing speech engine...
[2026-08-25 11:39:51,820.820 INFO    ] 2026-08-25 11:39:51
[2026-08-25 11:39:52,089.089 INFO    ] 2026-08-25 11:39:52
[2026-08-25 11:39:52,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:39:52,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:39:52,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:39:52,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:39:52,575.575 INFO    ] time= 25/08/2026 11:39:52
[2026-08-25 11:39:52,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:39:52,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:39:52,812.812 INFO    ] No existing commands found in stream
[2026-08-25 11:39:57,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:39:57,829.829 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 11:40:03,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:40:03,660.660 INFO    ] Checking for system updates...
[2026-08-25 11:40:03,698.698 INFO    ] 200
[2026-08-25 11:40:03,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:03,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:03,755.755 INFO    ] No update needed
[2026-08-25 11:40:03,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 11:40:03,794.794 INFO    ] 200
[2026-08-25 11:40:03,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:03,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:40:03,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:03,901.901 INFO    ] No camera update needed
[2026-08-25 11:40:03,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:40:03,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:40:03,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:40:03,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:40:05,956.956 INFO    ] ================================================
[2026-08-25 11:40:05,971.971 INFO    ] Launching Daemon at Tue Aug 25 11:40:05 IST 2026
[2026-08-25 11:40:05,982.982 INFO    ] ================================================
[2026-08-25 11:40:06,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:40:06
[2026-08-25 11:40:07,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:40:07,549.549 INFO    ] Initializing speech engine...
[2026-08-25 11:40:07,562.562 INFO    ] 2026-08-25 11:40:07
[2026-08-25 11:40:07,844.844 INFO    ] 2026-08-25 11:40:07
[2026-08-25 11:40:07,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:40:08,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:40:08,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:40:08,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:40:08,386.386 INFO    ] time= 25/08/2026 11:40:08
[2026-08-25 11:40:08,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:40:08,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:40:08,547.547 INFO    ] No existing commands found in stream
[2026-08-25 11:40:13,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:40:13,568.568 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 11:40:15,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:40:15,484.484 INFO    ] Checking for system updates...
[2026-08-25 11:40:15,521.521 INFO    ] 200
[2026-08-25 11:40:15,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:15,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:15,584.584 INFO    ] No update needed
[2026-08-25 11:40:15,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 11:40:15,621.621 INFO    ] 200
[2026-08-25 11:40:15,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:15,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:40:15,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:15,821.821 INFO    ] No camera update needed
[2026-08-25 11:40:15,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:40:15,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:40:15,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:40:15,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:40:17,880.880 INFO    ] ================================================
[2026-08-25 11:40:17,895.895 INFO    ] Launching Daemon at Tue Aug 25 11:40:17 IST 2026
[2026-08-25 11:40:17,905.905 INFO    ] ================================================
[2026-08-25 11:40:18,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:40:18
[2026-08-25 11:40:19,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:40:19,343.343 INFO    ] Initializing speech engine...
[2026-08-25 11:40:19,356.356 INFO    ] 2026-08-25 11:40:19
[2026-08-25 11:40:19,642.642 INFO    ] 2026-08-25 11:40:19
[2026-08-25 11:40:19,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:40:19,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:40:19,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:40:20,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:40:20,016.016 INFO    ] time= 25/08/2026 11:40:20
[2026-08-25 11:40:20,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:40:20,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:40:20,141.141 INFO    ] No existing commands found in stream
[2026-08-25 11:40:25,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:40:25,174.174 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 11:40:28,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:40:28,016.016 INFO    ] Checking for system updates...
[2026-08-25 11:40:28,053.053 INFO    ] 200
[2026-08-25 11:40:28,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:28,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:28,112.112 INFO    ] No update needed
[2026-08-25 11:40:28,114.114 INFO    ] Checking for camera pi updates...
[2026-08-25 11:40:28,149.149 INFO    ] 200
[2026-08-25 11:40:28,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:28,191.191 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:40:28,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:28,251.251 INFO    ] No camera update needed
[2026-08-25 11:40:28,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:40:28,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:40:28,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:40:28,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:40:30,306.306 INFO    ] ================================================
[2026-08-25 11:40:30,321.321 INFO    ] Launching Daemon at Tue Aug 25 11:40:30 IST 2026
[2026-08-25 11:40:30,331.331 INFO    ] ================================================
[2026-08-25 11:40:30,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:40:30
[2026-08-25 11:40:31,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:40:31,834.834 INFO    ] Initializing speech engine...
[2026-08-25 11:40:31,843.843 INFO    ] 2026-08-25 11:40:31
[2026-08-25 11:40:32,122.122 INFO    ] 2026-08-25 11:40:32
[2026-08-25 11:40:32,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:40:32,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:40:32,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:40:32,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:40:32,620.620 INFO    ] time= 25/08/2026 11:40:32
[2026-08-25 11:40:32,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:40:32,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:40:32,843.843 INFO    ] No existing commands found in stream
[2026-08-25 11:40:37,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:40:37,872.872 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 11:40:42,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:40:42,050.050 INFO    ] Checking for system updates...
[2026-08-25 11:40:42,089.089 INFO    ] 200
[2026-08-25 11:40:42,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:42,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:42,152.152 INFO    ] No update needed
[2026-08-25 11:40:42,154.154 INFO    ] Checking for camera pi updates...
[2026-08-25 11:40:42,206.206 INFO    ] 200
[2026-08-25 11:40:42,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:42,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:40:42,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:40:42,304.304 INFO    ] No camera update needed
[2026-08-25 11:40:42,307.307 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:40:42,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:40:42,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:40:42,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:40:44,358.358 INFO    ] ================================================
[2026-08-25 11:40:44,373.373 INFO    ] Launching Daemon at Tue Aug 25 11:40:44 IST 2026
[2026-08-25 11:40:44,384.384 INFO    ] ================================================
[2026-08-25 11:40:44,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:40:44
[2026-08-25 11:40:45,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:40:45,813.813 INFO    ] Initializing speech engine...
[2026-08-25 11:40:45,821.821 INFO    ] 2026-08-25 11:40:45
[2026-08-25 11:40:46,079.079 INFO    ] 2026-08-25 11:40:46
[2026-08-25 11:40:46,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:40:46,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:40:46,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:40:46,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:40:46,553.553 INFO    ] time= 25/08/2026 11:40:46
[2026-08-25 11:40:46,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:40:46,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:40:46,791.791 INFO    ] No existing commands found in stream
[2026-08-25 11:40:51,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:40:51,809.809 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 11:40:55,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:40:55,748.748 INFO    ] Checking for system updates...
[2026-08-25 11:40:55,787.787 INFO    ] 200
[2026-08-25 11:40:55,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:55,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:40:55,844.844 INFO    ] No update needed
[2026-08-25 11:40:55,847.847 INFO    ] Checking for camera pi updates...
[2026-08-25 11:40:55,880.880 INFO    ] 200
[2026-08-25 11:40:55,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:40:55,922.922 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:40:55,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:40:55,974.974 INFO    ] No camera update needed
[2026-08-25 11:40:55,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:40:55,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:40:55,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:40:55,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:40:58,029.029 INFO    ] ================================================
[2026-08-25 11:40:58,044.044 INFO    ] Launching Daemon at Tue Aug 25 11:40:58 IST 2026
[2026-08-25 11:40:58,055.055 INFO    ] ================================================
[2026-08-25 11:40:58,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:40:58
[2026-08-25 11:40:59,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:40:59,610.610 INFO    ] Initializing speech engine...
[2026-08-25 11:40:59,624.624 INFO    ] 2026-08-25 11:40:59
[2026-08-25 11:40:59,891.891 INFO    ] 2026-08-25 11:40:59
[2026-08-25 11:40:59,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:41:00,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:41:00,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:41:00,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:41:00,438.438 INFO    ] time= 25/08/2026 11:41:00
[2026-08-25 11:41:00,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:41:00,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:41:00,579.579 INFO    ] No existing commands found in stream
[2026-08-25 11:41:05,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:41:05,607.607 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 11:41:06,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:41:06,867.867 INFO    ] Checking for system updates...
[2026-08-25 11:41:06,903.903 INFO    ] 200
[2026-08-25 11:41:06,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:06,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:41:06,962.962 INFO    ] No update needed
[2026-08-25 11:41:06,965.965 INFO    ] Checking for camera pi updates...
[2026-08-25 11:41:06,999.999 INFO    ] 200
[2026-08-25 11:41:07,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:07,048.048 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:41:07,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:41:07,110.110 INFO    ] No camera update needed
[2026-08-25 11:41:07,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:41:07,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:41:07,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:41:07,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:41:09,164.164 INFO    ] ================================================
[2026-08-25 11:41:09,179.179 INFO    ] Launching Daemon at Tue Aug 25 11:41:09 IST 2026
[2026-08-25 11:41:09,189.189 INFO    ] ================================================
[2026-08-25 11:41:09,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:41:09
[2026-08-25 11:41:10,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:41:10,607.607 INFO    ] Initializing speech engine...
[2026-08-25 11:41:10,616.616 INFO    ] 2026-08-25 11:41:10
[2026-08-25 11:41:10,873.873 INFO    ] 2026-08-25 11:41:10
[2026-08-25 11:41:10,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:41:11,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:41:11,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:41:11,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:41:11,247.247 INFO    ] time= 25/08/2026 11:41:11
[2026-08-25 11:41:11,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:41:11,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:41:11,373.373 INFO    ] No existing commands found in stream
[2026-08-25 11:41:16,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:41:16,388.388 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 11:41:18,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:41:18,265.265 INFO    ] Checking for system updates...
[2026-08-25 11:41:18,310.310 INFO    ] 200
[2026-08-25 11:41:18,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:18,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:18,370.370 INFO    ] No update needed
[2026-08-25 11:41:18,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 11:41:18,418.418 INFO    ] 200
[2026-08-25 11:41:18,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:18,474.474 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:41:18,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:18,522.522 INFO    ] No camera update needed
[2026-08-25 11:41:18,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:41:18,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:41:18,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:41:18,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:41:20,591.591 INFO    ] ================================================
[2026-08-25 11:41:20,606.606 INFO    ] Launching Daemon at Tue Aug 25 11:41:20 IST 2026
[2026-08-25 11:41:20,617.617 INFO    ] ================================================
[2026-08-25 11:41:21,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:41:21
[2026-08-25 11:41:21,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:41:22,014.014 INFO    ] Initializing speech engine...
[2026-08-25 11:41:22,022.022 INFO    ] 2026-08-25 11:41:22
[2026-08-25 11:41:22,314.314 INFO    ] 2026-08-25 11:41:22
[2026-08-25 11:41:22,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:41:22,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:41:22,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:41:22,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:41:22,715.715 INFO    ] time= 25/08/2026 11:41:22
[2026-08-25 11:41:22,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:41:22,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:41:22,876.876 INFO    ] No existing commands found in stream
[2026-08-25 11:41:27,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:41:27,903.903 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 11:41:30,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:41:30,450.450 INFO    ] Checking for system updates...
[2026-08-25 11:41:30,490.490 INFO    ] 200
[2026-08-25 11:41:30,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:30,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:30,557.557 INFO    ] No update needed
[2026-08-25 11:41:30,560.560 INFO    ] Checking for camera pi updates...
[2026-08-25 11:41:30,595.595 INFO    ] 200
[2026-08-25 11:41:30,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:30,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:41:30,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:30,700.700 INFO    ] No camera update needed
[2026-08-25 11:41:30,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:41:30,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:41:30,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:41:30,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:41:32,761.761 INFO    ] ================================================
[2026-08-25 11:41:32,775.775 INFO    ] Launching Daemon at Tue Aug 25 11:41:32 IST 2026
[2026-08-25 11:41:32,786.786 INFO    ] ================================================
[2026-08-25 11:41:33,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:41:33
[2026-08-25 11:41:33,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:41:34,219.219 INFO    ] Initializing speech engine...
[2026-08-25 11:41:34,228.228 INFO    ] 2026-08-25 11:41:34
[2026-08-25 11:41:34,472.472 INFO    ] 2026-08-25 11:41:34
[2026-08-25 11:41:34,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:41:34,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:41:34,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:41:34,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:41:34,943.943 INFO    ] time= 25/08/2026 11:41:34
[2026-08-25 11:41:34,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:41:35,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:41:35,157.157 INFO    ] No existing commands found in stream
[2026-08-25 11:41:40,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:41:40,191.191 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 11:41:41,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:41:41,697.697 INFO    ] Checking for system updates...
[2026-08-25 11:41:41,735.735 INFO    ] 200
[2026-08-25 11:41:41,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:41,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:41,798.798 INFO    ] No update needed
[2026-08-25 11:41:41,800.800 INFO    ] Checking for camera pi updates...
[2026-08-25 11:41:41,837.837 INFO    ] 200
[2026-08-25 11:41:41,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:41,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:41:41,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:41,930.930 INFO    ] No camera update needed
[2026-08-25 11:41:41,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:41:41,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:41:41,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:41:41,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:41:43,988.988 INFO    ] ================================================
[2026-08-25 11:41:44,003.003 INFO    ] Launching Daemon at Tue Aug 25 11:41:43 IST 2026
[2026-08-25 11:41:44,014.014 INFO    ] ================================================
[2026-08-25 11:41:44,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:41:44
[2026-08-25 11:41:45,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:41:45,605.605 INFO    ] Initializing speech engine...
[2026-08-25 11:41:45,626.626 INFO    ] 2026-08-25 11:41:45
[2026-08-25 11:41:45,890.890 INFO    ] 2026-08-25 11:41:45
[2026-08-25 11:41:45,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:41:46,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:41:46,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:41:46,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:41:46,281.281 INFO    ] time= 25/08/2026 11:41:46
[2026-08-25 11:41:46,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:41:46,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:41:46,369.369 INFO    ] No existing commands found in stream
[2026-08-25 11:41:51,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:41:51,407.407 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 11:41:52,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:41:52,815.815 INFO    ] Checking for system updates...
[2026-08-25 11:41:52,851.851 INFO    ] 200
[2026-08-25 11:41:52,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:52,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:52,914.914 INFO    ] No update needed
[2026-08-25 11:41:52,916.916 INFO    ] Checking for camera pi updates...
[2026-08-25 11:41:52,949.949 INFO    ] 200
[2026-08-25 11:41:52,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:41:52,993.993 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:41:53,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:41:53,047.047 INFO    ] No camera update needed
[2026-08-25 11:41:53,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:41:53,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:41:53,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:41:53,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:41:55,101.101 INFO    ] ================================================
[2026-08-25 11:41:55,116.116 INFO    ] Launching Daemon at Tue Aug 25 11:41:55 IST 2026
[2026-08-25 11:41:55,127.127 INFO    ] ================================================
[2026-08-25 11:41:55,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:41:55
[2026-08-25 11:41:56,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:41:56,642.642 INFO    ] Initializing speech engine...
[2026-08-25 11:41:56,653.653 INFO    ] 2026-08-25 11:41:56
[2026-08-25 11:41:56,913.913 INFO    ] 2026-08-25 11:41:56
[2026-08-25 11:41:56,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:41:57,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:41:57,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:41:57,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:41:57,396.396 INFO    ] time= 25/08/2026 11:41:57
[2026-08-25 11:41:57,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:41:57,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:41:57,612.612 INFO    ] No existing commands found in stream
[2026-08-25 11:42:02,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:42:02,631.631 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 11:42:04,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:42:04,440.440 INFO    ] Checking for system updates...
[2026-08-25 11:42:04,476.476 INFO    ] 200
[2026-08-25 11:42:04,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:04,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:04,533.533 INFO    ] No update needed
[2026-08-25 11:42:04,535.535 INFO    ] Checking for camera pi updates...
[2026-08-25 11:42:04,568.568 INFO    ] 200
[2026-08-25 11:42:04,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:04,611.611 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:42:04,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:04,661.661 INFO    ] No camera update needed
[2026-08-25 11:42:04,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:42:04,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:42:04,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:42:04,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:42:06,716.716 INFO    ] ================================================
[2026-08-25 11:42:06,731.731 INFO    ] Launching Daemon at Tue Aug 25 11:42:06 IST 2026
[2026-08-25 11:42:06,742.742 INFO    ] ================================================
[2026-08-25 11:42:07,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:42:07
[2026-08-25 11:42:07,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:42:08,243.243 INFO    ] Initializing speech engine...
[2026-08-25 11:42:08,257.257 INFO    ] 2026-08-25 11:42:08
[2026-08-25 11:42:08,568.568 INFO    ] 2026-08-25 11:42:08
[2026-08-25 11:42:08,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:42:08,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:42:08,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:42:09,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:42:09,071.071 INFO    ] time= 25/08/2026 11:42:09
[2026-08-25 11:42:09,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:42:09,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:42:09,245.245 INFO    ] No existing commands found in stream
[2026-08-25 11:42:14,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:42:14,263.263 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 11:42:15,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:42:15,493.493 INFO    ] Checking for system updates...
[2026-08-25 11:42:15,531.531 INFO    ] 200
[2026-08-25 11:42:15,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:15,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:15,588.588 INFO    ] No update needed
[2026-08-25 11:42:15,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 11:42:15,624.624 INFO    ] 200
[2026-08-25 11:42:15,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:15,670.670 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:42:15,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:15,718.718 INFO    ] No camera update needed
[2026-08-25 11:42:15,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:42:15,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:42:15,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:42:15,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:42:17,773.773 INFO    ] ================================================
[2026-08-25 11:42:17,788.788 INFO    ] Launching Daemon at Tue Aug 25 11:42:17 IST 2026
[2026-08-25 11:42:17,798.798 INFO    ] ================================================
[2026-08-25 11:42:18,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:42:18
[2026-08-25 11:42:18,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:42:19,251.251 INFO    ] Initializing speech engine...
[2026-08-25 11:42:19,261.261 INFO    ] 2026-08-25 11:42:19
[2026-08-25 11:42:19,518.518 INFO    ] 2026-08-25 11:42:19
[2026-08-25 11:42:19,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:42:19,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:42:19,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:42:19,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:42:20,021.021 INFO    ] time= 25/08/2026 11:42:19
[2026-08-25 11:42:20,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:42:20,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:42:20,216.216 INFO    ] No existing commands found in stream
[2026-08-25 11:42:25,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:42:25,234.234 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 11:42:28,266.266 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:42:28,269.269 INFO    ] Checking for system updates...
[2026-08-25 11:42:28,308.308 INFO    ] 200
[2026-08-25 11:42:28,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:28,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:28,375.375 INFO    ] No update needed
[2026-08-25 11:42:28,378.378 INFO    ] Checking for camera pi updates...
[2026-08-25 11:42:28,412.412 INFO    ] 200
[2026-08-25 11:42:28,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:28,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:42:28,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:28,616.616 INFO    ] No camera update needed
[2026-08-25 11:42:28,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:42:28,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:42:28,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:42:28,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:42:30,673.673 INFO    ] ================================================
[2026-08-25 11:42:30,689.689 INFO    ] Launching Daemon at Tue Aug 25 11:42:30 IST 2026
[2026-08-25 11:42:30,700.700 INFO    ] ================================================
[2026-08-25 11:42:31,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:42:31
[2026-08-25 11:42:31,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:42:32,156.156 INFO    ] Initializing speech engine...
[2026-08-25 11:42:32,166.166 INFO    ] 2026-08-25 11:42:32
[2026-08-25 11:42:32,452.452 INFO    ] 2026-08-25 11:42:32
[2026-08-25 11:42:32,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:42:32,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:42:32,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:42:32,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:42:32,951.951 INFO    ] time= 25/08/2026 11:42:32
[2026-08-25 11:42:33,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:42:33,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:42:33,121.121 INFO    ] No existing commands found in stream
[2026-08-25 11:42:38,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:42:38,157.157 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 11:42:42,607.607 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:42:42,610.610 INFO    ] Checking for system updates...
[2026-08-25 11:42:42,646.646 INFO    ] 200
[2026-08-25 11:42:42,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:42,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:42:42,702.702 INFO    ] No update needed
[2026-08-25 11:42:42,704.704 INFO    ] Checking for camera pi updates...
[2026-08-25 11:42:42,744.744 INFO    ] 200
[2026-08-25 11:42:42,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:42,797.797 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:42:42,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:42:42,865.865 INFO    ] No camera update needed
[2026-08-25 11:42:42,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:42:42,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:42:42,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:42:42,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:42:44,919.919 INFO    ] ================================================
[2026-08-25 11:42:44,934.934 INFO    ] Launching Daemon at Tue Aug 25 11:42:44 IST 2026
[2026-08-25 11:42:44,945.945 INFO    ] ================================================
[2026-08-25 11:42:45,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:42:45
[2026-08-25 11:42:46,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:42:46,533.533 INFO    ] Initializing speech engine...
[2026-08-25 11:42:46,542.542 INFO    ] 2026-08-25 11:42:46
[2026-08-25 11:42:46,857.857 INFO    ] 2026-08-25 11:42:46
[2026-08-25 11:42:46,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:42:47,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:42:47,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:42:47,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:42:47,378.378 INFO    ] time= 25/08/2026 11:42:47
[2026-08-25 11:42:47,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:42:47,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:42:47,531.531 INFO    ] No existing commands found in stream
[2026-08-25 11:42:52,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:42:52,553.553 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 11:42:53,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:42:53,378.378 INFO    ] Checking for system updates...
[2026-08-25 11:42:53,413.413 INFO    ] 200
[2026-08-25 11:42:53,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:53,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:53,470.470 INFO    ] No update needed
[2026-08-25 11:42:53,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 11:42:53,508.508 INFO    ] 200
[2026-08-25 11:42:53,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:42:53,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:42:53,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:42:53,619.619 INFO    ] No camera update needed
[2026-08-25 11:42:53,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:42:53,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:42:53,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:42:53,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:42:55,673.673 INFO    ] ================================================
[2026-08-25 11:42:55,689.689 INFO    ] Launching Daemon at Tue Aug 25 11:42:55 IST 2026
[2026-08-25 11:42:55,699.699 INFO    ] ================================================
[2026-08-25 11:42:56,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:42:56
[2026-08-25 11:42:56,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:42:57,282.282 INFO    ] Initializing speech engine...
[2026-08-25 11:42:57,289.289 INFO    ] 2026-08-25 11:42:57
[2026-08-25 11:42:57,570.570 INFO    ] 2026-08-25 11:42:57
[2026-08-25 11:42:57,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:42:57,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:42:57,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:42:57,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:42:58,053.053 INFO    ] time= 25/08/2026 11:42:58
[2026-08-25 11:42:58,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:42:58,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:42:58,256.256 INFO    ] No existing commands found in stream
[2026-08-25 11:43:03,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:43:03,270.270 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 11:43:06,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:43:06,732.732 INFO    ] Checking for system updates...
[2026-08-25 11:43:06,768.768 INFO    ] 200
[2026-08-25 11:43:06,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:06,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:06,831.831 INFO    ] No update needed
[2026-08-25 11:43:06,833.833 INFO    ] Checking for camera pi updates...
[2026-08-25 11:43:06,867.867 INFO    ] 200
[2026-08-25 11:43:06,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:06,910.910 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:43:06,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:06,967.967 INFO    ] No camera update needed
[2026-08-25 11:43:06,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:43:06,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:43:06,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:43:06,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:43:09,024.024 INFO    ] ================================================
[2026-08-25 11:43:09,040.040 INFO    ] Launching Daemon at Tue Aug 25 11:43:09 IST 2026
[2026-08-25 11:43:09,051.051 INFO    ] ================================================
[2026-08-25 11:43:09,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:43:09
[2026-08-25 11:43:10,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:43:10,503.503 INFO    ] Initializing speech engine...
[2026-08-25 11:43:10,513.513 INFO    ] 2026-08-25 11:43:10
[2026-08-25 11:43:10,774.774 INFO    ] 2026-08-25 11:43:10
[2026-08-25 11:43:10,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:43:11,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:43:11,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:43:11,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:43:11,303.303 INFO    ] time= 25/08/2026 11:43:11
[2026-08-25 11:43:11,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:43:11,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:43:11,460.460 INFO    ] No existing commands found in stream
[2026-08-25 11:43:16,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:43:16,481.481 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 11:43:20,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:43:20,502.502 INFO    ] Checking for system updates...
[2026-08-25 11:43:20,541.541 INFO    ] 200
[2026-08-25 11:43:20,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:20,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:20,605.605 INFO    ] No update needed
[2026-08-25 11:43:20,607.607 INFO    ] Checking for camera pi updates...
[2026-08-25 11:43:20,640.640 INFO    ] 200
[2026-08-25 11:43:20,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:20,688.688 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:43:20,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:20,735.735 INFO    ] No camera update needed
[2026-08-25 11:43:20,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:43:20,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:43:20,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:43:20,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:43:22,789.789 INFO    ] ================================================
[2026-08-25 11:43:22,805.805 INFO    ] Launching Daemon at Tue Aug 25 11:43:22 IST 2026
[2026-08-25 11:43:22,815.815 INFO    ] ================================================
[2026-08-25 11:43:23,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:43:23
[2026-08-25 11:43:24,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:43:24,433.433 INFO    ] Initializing speech engine...
[2026-08-25 11:43:24,446.446 INFO    ] 2026-08-25 11:43:24
[2026-08-25 11:43:24,759.759 INFO    ] 2026-08-25 11:43:24
[2026-08-25 11:43:24,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:43:24,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:43:25,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:43:25,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:43:25,208.208 INFO    ] time= 25/08/2026 11:43:25
[2026-08-25 11:43:25,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:43:25,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:43:25,425.425 INFO    ] No existing commands found in stream
[2026-08-25 11:43:30,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:43:30,460.460 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 11:43:33,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:43:33,070.070 INFO    ] Checking for system updates...
[2026-08-25 11:43:33,108.108 INFO    ] 200
[2026-08-25 11:43:33,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:33,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:33,174.174 INFO    ] No update needed
[2026-08-25 11:43:33,177.177 INFO    ] Checking for camera pi updates...
[2026-08-25 11:43:33,213.213 INFO    ] 200
[2026-08-25 11:43:33,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:33,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:43:33,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:33,307.307 INFO    ] No camera update needed
[2026-08-25 11:43:33,309.309 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:43:33,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:43:33,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:43:33,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:43:35,360.360 INFO    ] ================================================
[2026-08-25 11:43:35,376.376 INFO    ] Launching Daemon at Tue Aug 25 11:43:35 IST 2026
[2026-08-25 11:43:35,386.386 INFO    ] ================================================
[2026-08-25 11:43:35,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:43:35
[2026-08-25 11:43:36,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:43:36,803.803 INFO    ] Initializing speech engine...
[2026-08-25 11:43:36,812.812 INFO    ] 2026-08-25 11:43:36
[2026-08-25 11:43:37,058.058 INFO    ] 2026-08-25 11:43:37
[2026-08-25 11:43:37,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:43:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:43:37,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:43:37,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:43:37,556.556 INFO    ] time= 25/08/2026 11:43:37
[2026-08-25 11:43:37,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:43:37,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:43:37,763.763 INFO    ] No existing commands found in stream
[2026-08-25 11:43:42,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:43:42,782.782 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 11:43:45,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:43:45,928.928 INFO    ] Checking for system updates...
[2026-08-25 11:43:45,963.963 INFO    ] 200
[2026-08-25 11:43:45,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:46,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:46,020.020 INFO    ] No update needed
[2026-08-25 11:43:46,022.022 INFO    ] Checking for camera pi updates...
[2026-08-25 11:43:46,055.055 INFO    ] 200
[2026-08-25 11:43:46,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:46,102.102 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:43:46,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:46,155.155 INFO    ] No camera update needed
[2026-08-25 11:43:46,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:43:46,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:43:46,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:43:46,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:43:48,210.210 INFO    ] ================================================
[2026-08-25 11:43:48,225.225 INFO    ] Launching Daemon at Tue Aug 25 11:43:48 IST 2026
[2026-08-25 11:43:48,236.236 INFO    ] ================================================
[2026-08-25 11:43:48,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:43:48
[2026-08-25 11:43:49,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:43:49,648.648 INFO    ] Initializing speech engine...
[2026-08-25 11:43:49,666.666 INFO    ] 2026-08-25 11:43:49
[2026-08-25 11:43:49,912.912 INFO    ] 2026-08-25 11:43:49
[2026-08-25 11:43:49,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:43:50,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:43:50,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:43:50,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:43:50,410.410 INFO    ] time= 25/08/2026 11:43:50
[2026-08-25 11:43:50,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:43:50,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:43:50,615.615 INFO    ] No existing commands found in stream
[2026-08-25 11:43:55,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:43:55,633.633 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 11:43:58,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:43:58,249.249 INFO    ] Checking for system updates...
[2026-08-25 11:43:58,284.284 INFO    ] 200
[2026-08-25 11:43:58,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:58,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:58,347.347 INFO    ] No update needed
[2026-08-25 11:43:58,350.350 INFO    ] Checking for camera pi updates...
[2026-08-25 11:43:58,387.387 INFO    ] 200
[2026-08-25 11:43:58,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:43:58,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:43:58,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:43:58,488.488 INFO    ] No camera update needed
[2026-08-25 11:43:58,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:43:58,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:43:58,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:43:58,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:44:00,542.542 INFO    ] ================================================
[2026-08-25 11:44:00,558.558 INFO    ] Launching Daemon at Tue Aug 25 11:44:00 IST 2026
[2026-08-25 11:44:00,568.568 INFO    ] ================================================
[2026-08-25 11:44:01,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:44:01
[2026-08-25 11:44:02,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:44:02,349.349 INFO    ] Initializing speech engine...
[2026-08-25 11:44:02,364.364 INFO    ] 2026-08-25 11:44:02
[2026-08-25 11:44:02,655.655 INFO    ] 2026-08-25 11:44:02
[2026-08-25 11:44:02,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:44:02,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:44:02,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:44:03,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:44:03,115.115 INFO    ] time= 25/08/2026 11:44:03
[2026-08-25 11:44:03,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:44:03,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:44:03,318.318 INFO    ] No existing commands found in stream
[2026-08-25 11:44:08,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:44:08,333.333 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 11:44:11,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:44:11,784.784 INFO    ] Checking for system updates...
[2026-08-25 11:44:11,821.821 INFO    ] 200
[2026-08-25 11:44:11,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:11,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:44:11,881.881 INFO    ] No update needed
[2026-08-25 11:44:11,884.884 INFO    ] Checking for camera pi updates...
[2026-08-25 11:44:11,923.923 INFO    ] 200
[2026-08-25 11:44:11,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:11,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:44:12,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:44:12,021.021 INFO    ] No camera update needed
[2026-08-25 11:44:12,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:44:12,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:44:12,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:44:12,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:44:14,080.080 INFO    ] ================================================
[2026-08-25 11:44:14,095.095 INFO    ] Launching Daemon at Tue Aug 25 11:44:14 IST 2026
[2026-08-25 11:44:14,106.106 INFO    ] ================================================
[2026-08-25 11:44:14,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:44:14
[2026-08-25 11:44:15,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:44:15,625.625 INFO    ] Initializing speech engine...
[2026-08-25 11:44:15,634.634 INFO    ] 2026-08-25 11:44:15
[2026-08-25 11:44:15,883.883 INFO    ] 2026-08-25 11:44:15
[2026-08-25 11:44:15,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:44:16,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:44:16,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:44:16,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:44:16,393.393 INFO    ] time= 25/08/2026 11:44:16
[2026-08-25 11:44:16,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:44:16,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:44:16,586.586 INFO    ] No existing commands found in stream
[2026-08-25 11:44:21,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:44:21,606.606 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 11:44:22,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:44:22,819.819 INFO    ] Checking for system updates...
[2026-08-25 11:44:22,855.855 INFO    ] 200
[2026-08-25 11:44:22,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:22,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:44:22,911.911 INFO    ] No update needed
[2026-08-25 11:44:22,914.914 INFO    ] Checking for camera pi updates...
[2026-08-25 11:44:22,951.951 INFO    ] 200
[2026-08-25 11:44:22,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:23,005.005 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:44:23,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:44:23,052.052 INFO    ] No camera update needed
[2026-08-25 11:44:23,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:44:23,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:44:23,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:44:23,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:44:25,106.106 INFO    ] ================================================
[2026-08-25 11:44:25,121.121 INFO    ] Launching Daemon at Tue Aug 25 11:44:25 IST 2026
[2026-08-25 11:44:25,132.132 INFO    ] ================================================
[2026-08-25 11:44:25,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:44:25
[2026-08-25 11:44:26,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:44:26,555.555 INFO    ] Initializing speech engine...
[2026-08-25 11:44:26,561.561 INFO    ] 2026-08-25 11:44:26
[2026-08-25 11:44:26,820.820 INFO    ] 2026-08-25 11:44:26
[2026-08-25 11:44:26,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:44:27,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:44:27,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:44:27,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:44:27,297.297 INFO    ] time= 25/08/2026 11:44:27
[2026-08-25 11:44:27,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:44:27,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:44:27,512.512 INFO    ] No existing commands found in stream
[2026-08-25 11:44:32,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:44:32,530.530 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 11:44:34,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:44:34,225.225 INFO    ] Checking for system updates...
[2026-08-25 11:44:34,261.261 INFO    ] 200
[2026-08-25 11:44:34,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:34,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:44:34,328.328 INFO    ] No update needed
[2026-08-25 11:44:34,331.331 INFO    ] Checking for camera pi updates...
[2026-08-25 11:44:34,368.368 INFO    ] 200
[2026-08-25 11:44:34,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:34,411.411 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:44:34,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:44:34,470.470 INFO    ] No camera update needed
[2026-08-25 11:44:34,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:44:34,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:44:34,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:44:34,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:44:36,528.528 INFO    ] ================================================
[2026-08-25 11:44:36,544.544 INFO    ] Launching Daemon at Tue Aug 25 11:44:36 IST 2026
[2026-08-25 11:44:36,554.554 INFO    ] ================================================
[2026-08-25 11:44:37,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:44:37
[2026-08-25 11:44:37,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:44:38,038.038 INFO    ] Initializing speech engine...
[2026-08-25 11:44:38,047.047 INFO    ] 2026-08-25 11:44:38
[2026-08-25 11:44:38,293.293 INFO    ] 2026-08-25 11:44:38
[2026-08-25 11:44:38,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:44:38,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:44:38,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:44:38,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:44:38,660.660 INFO    ] time= 25/08/2026 11:44:38
[2026-08-25 11:44:38,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:44:38,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:44:38,743.743 INFO    ] No existing commands found in stream
[2026-08-25 11:44:43,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:44:43,781.781 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 11:44:45,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:44:45,638.638 INFO    ] Checking for system updates...
[2026-08-25 11:44:45,674.674 INFO    ] 200
[2026-08-25 11:44:45,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:45,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:44:45,731.731 INFO    ] No update needed
[2026-08-25 11:44:45,733.733 INFO    ] Checking for camera pi updates...
[2026-08-25 11:44:45,766.766 INFO    ] 200
[2026-08-25 11:44:45,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:44:45,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:44:45,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:44:45,866.866 INFO    ] No camera update needed
[2026-08-25 11:44:45,869.869 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:44:45,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:44:45,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:44:45,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:44:47,921.921 INFO    ] ================================================
[2026-08-25 11:44:47,936.936 INFO    ] Launching Daemon at Tue Aug 25 11:44:47 IST 2026
[2026-08-25 11:44:47,947.947 INFO    ] ================================================
[2026-08-25 11:44:48,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:44:48
[2026-08-25 11:44:49,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:44:49,407.407 INFO    ] Initializing speech engine...
[2026-08-25 11:44:49,416.416 INFO    ] 2026-08-25 11:44:49
[2026-08-25 11:44:49,660.660 INFO    ] 2026-08-25 11:44:49
[2026-08-25 11:44:49,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:44:49,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:44:49,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:44:50,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:44:50,135.135 INFO    ] time= 25/08/2026 11:44:50
[2026-08-25 11:44:50,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:44:50,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:44:50,338.338 INFO    ] No existing commands found in stream
[2026-08-25 11:44:55,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:44:55,368.368 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 11:45:00,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:45:00,011.011 INFO    ] Checking for system updates...
[2026-08-25 11:45:00,046.046 INFO    ] 200
[2026-08-25 11:45:00,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:00,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:45:00,103.103 INFO    ] No update needed
[2026-08-25 11:45:00,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 11:45:00,138.138 INFO    ] 200
[2026-08-25 11:45:00,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:00,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:45:00,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:45:00,235.235 INFO    ] No camera update needed
[2026-08-25 11:45:00,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:45:00,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:45:00,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:45:00,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:45:02,291.291 INFO    ] ================================================
[2026-08-25 11:45:02,318.318 INFO    ] Launching Daemon at Tue Aug 25 11:45:02 IST 2026
[2026-08-25 11:45:02,330.330 INFO    ] ================================================
[2026-08-25 11:45:03,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:45:03
[2026-08-25 11:45:03,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:45:04,016.016 INFO    ] Initializing speech engine...
[2026-08-25 11:45:04,025.025 INFO    ] 2026-08-25 11:45:04
[2026-08-25 11:45:04,275.275 INFO    ] 2026-08-25 11:45:04
[2026-08-25 11:45:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:45:04,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:45:04,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:45:04,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:45:04,650.650 INFO    ] time= 25/08/2026 11:45:04
[2026-08-25 11:45:04,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:45:04,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:45:04,762.762 INFO    ] No existing commands found in stream
[2026-08-25 11:45:09,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:45:09,774.774 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 11:45:11,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:45:11,993.993 INFO    ] Checking for system updates...
[2026-08-25 11:45:12,028.028 INFO    ] 200
[2026-08-25 11:45:12,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:12,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:45:12,092.092 INFO    ] No update needed
[2026-08-25 11:45:12,095.095 INFO    ] Checking for camera pi updates...
[2026-08-25 11:45:12,129.129 INFO    ] 200
[2026-08-25 11:45:12,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:12,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:45:12,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:45:12,235.235 INFO    ] No camera update needed
[2026-08-25 11:45:12,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:45:12,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:45:12,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:45:12,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:45:14,291.291 INFO    ] ================================================
[2026-08-25 11:45:14,307.307 INFO    ] Launching Daemon at Tue Aug 25 11:45:14 IST 2026
[2026-08-25 11:45:14,318.318 INFO    ] ================================================
[2026-08-25 11:45:14,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:45:14
[2026-08-25 11:45:15,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:45:15,771.771 INFO    ] Initializing speech engine...
[2026-08-25 11:45:15,778.778 INFO    ] 2026-08-25 11:45:15
[2026-08-25 11:45:16,027.027 INFO    ] 2026-08-25 11:45:16
[2026-08-25 11:45:16,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:45:16,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:45:16,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:45:16,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:45:16,522.522 INFO    ] time= 25/08/2026 11:45:16
[2026-08-25 11:45:16,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:45:16,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:45:16,715.715 INFO    ] No existing commands found in stream
[2026-08-25 11:45:21,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:45:21,749.749 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 11:45:25,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:45:25,992.992 INFO    ] Checking for system updates...
[2026-08-25 11:45:26,032.032 INFO    ] 200
[2026-08-25 11:45:26,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:26,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:45:26,089.089 INFO    ] No update needed
[2026-08-25 11:45:26,091.091 INFO    ] Checking for camera pi updates...
[2026-08-25 11:45:26,129.129 INFO    ] 200
[2026-08-25 11:45:26,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:26,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:45:26,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:45:26,225.225 INFO    ] No camera update needed
[2026-08-25 11:45:26,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:45:26,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:45:26,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:45:26,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:45:28,279.279 INFO    ] ================================================
[2026-08-25 11:45:28,295.295 INFO    ] Launching Daemon at Tue Aug 25 11:45:28 IST 2026
[2026-08-25 11:45:28,306.306 INFO    ] ================================================
[2026-08-25 11:45:28,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:45:28
[2026-08-25 11:45:29,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:45:29,801.801 INFO    ] Initializing speech engine...
[2026-08-25 11:45:29,808.808 INFO    ] 2026-08-25 11:45:29
[2026-08-25 11:45:30,066.066 INFO    ] 2026-08-25 11:45:30
[2026-08-25 11:45:30,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:45:30,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:45:30,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:45:30,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:45:30,532.532 INFO    ] time= 25/08/2026 11:45:30
[2026-08-25 11:45:30,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:45:30,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:45:30,751.751 INFO    ] No existing commands found in stream
[2026-08-25 11:45:35,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:45:35,779.779 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 11:45:39,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:45:39,347.347 INFO    ] Checking for system updates...
[2026-08-25 11:45:39,394.394 INFO    ] 200
[2026-08-25 11:45:39,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:39,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:45:39,457.457 INFO    ] No update needed
[2026-08-25 11:45:39,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 11:45:39,495.495 INFO    ] 200
[2026-08-25 11:45:39,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:39,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:45:39,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:45:39,593.593 INFO    ] No camera update needed
[2026-08-25 11:45:39,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:45:39,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:45:39,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:45:39,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:45:41,652.652 INFO    ] ================================================
[2026-08-25 11:45:41,668.668 INFO    ] Launching Daemon at Tue Aug 25 11:45:41 IST 2026
[2026-08-25 11:45:41,680.680 INFO    ] ================================================
[2026-08-25 11:45:42,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:45:42
[2026-08-25 11:45:42,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:45:43,139.139 INFO    ] Initializing speech engine...
[2026-08-25 11:45:43,149.149 INFO    ] 2026-08-25 11:45:43
[2026-08-25 11:45:43,409.409 INFO    ] 2026-08-25 11:45:43
[2026-08-25 11:45:43,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:45:43,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:45:43,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:45:43,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:45:43,902.902 INFO    ] time= 25/08/2026 11:45:43
[2026-08-25 11:45:43,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:45:43,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:45:44,086.086 INFO    ] No existing commands found in stream
[2026-08-25 11:45:49,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:45:49,119.119 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 11:45:50,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:45:51,001.001 INFO    ] Checking for system updates...
[2026-08-25 11:45:51,042.042 INFO    ] 200
[2026-08-25 11:45:51,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:51,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:45:51,100.100 INFO    ] No update needed
[2026-08-25 11:45:51,102.102 INFO    ] Checking for camera pi updates...
[2026-08-25 11:45:51,140.140 INFO    ] 200
[2026-08-25 11:45:51,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:45:51,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:45:51,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:45:51,233.233 INFO    ] No camera update needed
[2026-08-25 11:45:51,236.236 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:45:51,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:45:51,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:45:51,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:45:53,287.287 INFO    ] ================================================
[2026-08-25 11:45:53,303.303 INFO    ] Launching Daemon at Tue Aug 25 11:45:53 IST 2026
[2026-08-25 11:45:53,314.314 INFO    ] ================================================
[2026-08-25 11:45:53,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:45:53
[2026-08-25 11:45:54,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:45:54,714.714 INFO    ] Initializing speech engine...
[2026-08-25 11:45:54,726.726 INFO    ] 2026-08-25 11:45:54
[2026-08-25 11:45:54,993.993 INFO    ] 2026-08-25 11:45:54
[2026-08-25 11:45:55,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:45:55,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:45:55,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:45:55,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:45:55,475.475 INFO    ] time= 25/08/2026 11:45:55
[2026-08-25 11:45:55,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:45:55,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:45:55,657.657 INFO    ] No existing commands found in stream
[2026-08-25 11:46:00,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:46:00,697.697 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 11:46:01,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:46:01,723.723 INFO    ] Checking for system updates...
[2026-08-25 11:46:01,759.759 INFO    ] 200
[2026-08-25 11:46:01,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:01,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:46:01,833.833 INFO    ] No update needed
[2026-08-25 11:46:01,837.837 INFO    ] Checking for camera pi updates...
[2026-08-25 11:46:01,916.916 INFO    ] 200
[2026-08-25 11:46:01,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:02,005.005 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:46:02,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:46:02,085.085 INFO    ] No camera update needed
[2026-08-25 11:46:02,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:46:02,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:46:02,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:46:02,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:46:04,156.156 INFO    ] ================================================
[2026-08-25 11:46:04,172.172 INFO    ] Launching Daemon at Tue Aug 25 11:46:04 IST 2026
[2026-08-25 11:46:04,183.183 INFO    ] ================================================
[2026-08-25 11:46:04,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:46:04
[2026-08-25 11:46:05,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:46:05,610.610 INFO    ] Initializing speech engine...
[2026-08-25 11:46:05,619.619 INFO    ] 2026-08-25 11:46:05
[2026-08-25 11:46:05,865.865 INFO    ] 2026-08-25 11:46:05
[2026-08-25 11:46:05,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:46:06,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:46:06,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:46:06,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:46:06,345.345 INFO    ] time= 25/08/2026 11:46:06
[2026-08-25 11:46:06,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:46:06,427.427 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:46:06,568.568 INFO    ] No existing commands found in stream
[2026-08-25 11:46:11,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:46:11,587.587 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 11:46:16,160.160 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:46:16,163.163 INFO    ] Checking for system updates...
[2026-08-25 11:46:16,199.199 INFO    ] 200
[2026-08-25 11:46:16,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:16,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:16,267.267 INFO    ] No update needed
[2026-08-25 11:46:16,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 11:46:16,310.310 INFO    ] 200
[2026-08-25 11:46:16,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:16,353.353 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:46:16,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:16,401.401 INFO    ] No camera update needed
[2026-08-25 11:46:16,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:46:16,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:46:16,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:46:16,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:46:18,456.456 INFO    ] ================================================
[2026-08-25 11:46:18,472.472 INFO    ] Launching Daemon at Tue Aug 25 11:46:18 IST 2026
[2026-08-25 11:46:18,483.483 INFO    ] ================================================
[2026-08-25 11:46:19,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:46:19
[2026-08-25 11:46:19,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:46:19,975.975 INFO    ] Initializing speech engine...
[2026-08-25 11:46:19,983.983 INFO    ] 2026-08-25 11:46:19
[2026-08-25 11:46:20,256.256 INFO    ] 2026-08-25 11:46:20
[2026-08-25 11:46:20,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:46:20,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:46:20,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:46:20,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:46:20,758.758 INFO    ] time= 25/08/2026 11:46:20
[2026-08-25 11:46:20,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:46:20,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:46:20,970.970 INFO    ] No existing commands found in stream
[2026-08-25 11:46:25,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:46:25,987.987 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 11:46:27,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:46:27,587.587 INFO    ] Checking for system updates...
[2026-08-25 11:46:27,622.622 INFO    ] 200
[2026-08-25 11:46:27,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:27,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:27,687.687 INFO    ] No update needed
[2026-08-25 11:46:27,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 11:46:27,725.725 INFO    ] 200
[2026-08-25 11:46:27,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:27,774.774 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:46:27,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:27,825.825 INFO    ] No camera update needed
[2026-08-25 11:46:27,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:46:27,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:46:27,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:46:27,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:46:29,880.880 INFO    ] ================================================
[2026-08-25 11:46:29,896.896 INFO    ] Launching Daemon at Tue Aug 25 11:46:29 IST 2026
[2026-08-25 11:46:29,907.907 INFO    ] ================================================
[2026-08-25 11:46:30,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:46:30
[2026-08-25 11:46:31,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:46:31,418.418 INFO    ] Initializing speech engine...
[2026-08-25 11:46:31,431.431 INFO    ] 2026-08-25 11:46:31
[2026-08-25 11:46:31,749.749 INFO    ] 2026-08-25 11:46:31
[2026-08-25 11:46:31,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:46:32,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:46:32,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:46:32,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:46:32,280.280 INFO    ] time= 25/08/2026 11:46:32
[2026-08-25 11:46:32,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:46:32,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:46:32,461.461 INFO    ] No existing commands found in stream
[2026-08-25 11:46:37,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:46:37,497.497 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 11:46:41,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:46:41,369.369 INFO    ] Checking for system updates...
[2026-08-25 11:46:41,408.408 INFO    ] 200
[2026-08-25 11:46:41,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:41,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:41,466.466 INFO    ] No update needed
[2026-08-25 11:46:41,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 11:46:41,502.502 INFO    ] 200
[2026-08-25 11:46:41,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:41,547.547 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:46:41,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:41,696.696 INFO    ] No camera update needed
[2026-08-25 11:46:41,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:46:41,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:46:41,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:46:41,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:46:43,756.756 INFO    ] ================================================
[2026-08-25 11:46:43,771.771 INFO    ] Launching Daemon at Tue Aug 25 11:46:43 IST 2026
[2026-08-25 11:46:43,782.782 INFO    ] ================================================
[2026-08-25 11:46:44,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:46:44
[2026-08-25 11:46:44,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:46:45,203.203 INFO    ] Initializing speech engine...
[2026-08-25 11:46:45,208.208 INFO    ] 2026-08-25 11:46:45
[2026-08-25 11:46:45,453.453 INFO    ] 2026-08-25 11:46:45
[2026-08-25 11:46:45,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:46:45,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:46:45,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:46:45,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:46:45,928.928 INFO    ] time= 25/08/2026 11:46:45
[2026-08-25 11:46:45,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:46:46,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:46:46,158.158 INFO    ] No existing commands found in stream
[2026-08-25 11:46:51,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:46:51,177.177 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 11:46:54,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:46:54,232.232 INFO    ] Checking for system updates...
[2026-08-25 11:46:54,267.267 INFO    ] 200
[2026-08-25 11:46:54,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:54,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:54,329.329 INFO    ] No update needed
[2026-08-25 11:46:54,331.331 INFO    ] Checking for camera pi updates...
[2026-08-25 11:46:54,365.365 INFO    ] 200
[2026-08-25 11:46:54,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:46:54,413.413 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:46:54,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:46:54,466.466 INFO    ] No camera update needed
[2026-08-25 11:46:54,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:46:54,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:46:54,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:46:54,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:46:56,520.520 INFO    ] ================================================
[2026-08-25 11:46:56,536.536 INFO    ] Launching Daemon at Tue Aug 25 11:46:56 IST 2026
[2026-08-25 11:46:56,547.547 INFO    ] ================================================
[2026-08-25 11:46:57,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:46:57
[2026-08-25 11:46:57,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:46:57,956.956 INFO    ] Initializing speech engine...
[2026-08-25 11:46:57,978.978 INFO    ] 2026-08-25 11:46:57
[2026-08-25 11:46:58,230.230 INFO    ] 2026-08-25 11:46:58
[2026-08-25 11:46:58,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:46:58,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:46:58,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:46:58,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:46:58,729.729 INFO    ] time= 25/08/2026 11:46:58
[2026-08-25 11:46:58,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:46:58,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:46:58,919.919 INFO    ] No existing commands found in stream
[2026-08-25 11:47:03,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:47:03,949.949 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 11:47:08,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:47:08,428.428 INFO    ] Checking for system updates...
[2026-08-25 11:47:08,468.468 INFO    ] 200
[2026-08-25 11:47:08,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:08,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:08,524.524 INFO    ] No update needed
[2026-08-25 11:47:08,527.527 INFO    ] Checking for camera pi updates...
[2026-08-25 11:47:08,564.564 INFO    ] 200
[2026-08-25 11:47:08,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:08,612.612 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:47:08,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:08,666.666 INFO    ] No camera update needed
[2026-08-25 11:47:08,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:47:08,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:47:08,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:47:08,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:47:10,721.721 INFO    ] ================================================
[2026-08-25 11:47:10,736.736 INFO    ] Launching Daemon at Tue Aug 25 11:47:10 IST 2026
[2026-08-25 11:47:10,746.746 INFO    ] ================================================
[2026-08-25 11:47:11,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:47:11
[2026-08-25 11:47:11,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:47:12,150.150 INFO    ] Initializing speech engine...
[2026-08-25 11:47:12,169.169 INFO    ] 2026-08-25 11:47:12
[2026-08-25 11:47:12,415.415 INFO    ] 2026-08-25 11:47:12
[2026-08-25 11:47:12,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:47:12,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:47:12,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:47:12,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:47:12,889.889 INFO    ] time= 25/08/2026 11:47:12
[2026-08-25 11:47:12,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:47:12,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:47:13,118.118 INFO    ] No existing commands found in stream
[2026-08-25 11:47:18,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:47:18,137.137 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 11:47:22,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:47:22,297.297 INFO    ] Checking for system updates...
[2026-08-25 11:47:22,337.337 INFO    ] 200
[2026-08-25 11:47:22,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:22,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:47:22,393.393 INFO    ] No update needed
[2026-08-25 11:47:22,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 11:47:22,430.430 INFO    ] 200
[2026-08-25 11:47:22,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:22,474.474 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:47:22,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:47:22,525.525 INFO    ] No camera update needed
[2026-08-25 11:47:22,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:47:22,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:47:22,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:47:22,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:47:24,580.580 INFO    ] ================================================
[2026-08-25 11:47:24,595.595 INFO    ] Launching Daemon at Tue Aug 25 11:47:24 IST 2026
[2026-08-25 11:47:24,606.606 INFO    ] ================================================
[2026-08-25 11:47:25,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:47:25
[2026-08-25 11:47:25,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:47:26,037.037 INFO    ] Initializing speech engine...
[2026-08-25 11:47:26,046.046 INFO    ] 2026-08-25 11:47:26
[2026-08-25 11:47:26,305.305 INFO    ] 2026-08-25 11:47:26
[2026-08-25 11:47:26,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:47:26,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:47:26,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:47:26,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:47:26,758.758 INFO    ] time= 25/08/2026 11:47:26
[2026-08-25 11:47:26,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:47:26,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:47:27,001.001 INFO    ] No existing commands found in stream
[2026-08-25 11:47:32,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:47:32,018.018 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 11:47:34,820.820 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:47:34,823.823 INFO    ] Checking for system updates...
[2026-08-25 11:47:34,859.859 INFO    ] 200
[2026-08-25 11:47:34,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:34,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:34,917.917 INFO    ] No update needed
[2026-08-25 11:47:34,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 11:47:34,958.958 INFO    ] 200
[2026-08-25 11:47:34,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:35,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:47:35,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:35,054.054 INFO    ] No camera update needed
[2026-08-25 11:47:35,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:47:35,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:47:35,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:47:35,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:47:37,110.110 INFO    ] ================================================
[2026-08-25 11:47:37,126.126 INFO    ] Launching Daemon at Tue Aug 25 11:47:37 IST 2026
[2026-08-25 11:47:37,137.137 INFO    ] ================================================
[2026-08-25 11:47:37,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:47:37
[2026-08-25 11:47:38,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:47:38,810.810 INFO    ] Initializing speech engine...
[2026-08-25 11:47:38,817.817 INFO    ] 2026-08-25 11:47:38
[2026-08-25 11:47:39,087.087 INFO    ] 2026-08-25 11:47:39
[2026-08-25 11:47:39,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:47:39,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:47:39,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:47:39,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:47:39,533.533 INFO    ] time= 25/08/2026 11:47:39
[2026-08-25 11:47:39,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:47:39,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:47:39,759.759 INFO    ] No existing commands found in stream
[2026-08-25 11:47:44,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:47:44,787.787 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 11:47:46,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:47:46,547.547 INFO    ] Checking for system updates...
[2026-08-25 11:47:46,583.583 INFO    ] 200
[2026-08-25 11:47:46,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:46,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:46,649.649 INFO    ] No update needed
[2026-08-25 11:47:46,652.652 INFO    ] Checking for camera pi updates...
[2026-08-25 11:47:46,689.689 INFO    ] 200
[2026-08-25 11:47:46,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:46,738.738 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:47:46,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:46,790.790 INFO    ] No camera update needed
[2026-08-25 11:47:46,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:47:46,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:47:46,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:47:46,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:47:48,847.847 INFO    ] ================================================
[2026-08-25 11:47:48,863.863 INFO    ] Launching Daemon at Tue Aug 25 11:47:48 IST 2026
[2026-08-25 11:47:48,874.874 INFO    ] ================================================
[2026-08-25 11:47:49,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:47:49
[2026-08-25 11:47:50,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:47:50,297.297 INFO    ] Initializing speech engine...
[2026-08-25 11:47:50,306.306 INFO    ] 2026-08-25 11:47:50
[2026-08-25 11:47:50,605.605 INFO    ] 2026-08-25 11:47:50
[2026-08-25 11:47:50,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:47:50,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:47:50,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:47:50,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:47:50,992.992 INFO    ] time= 25/08/2026 11:47:50
[2026-08-25 11:47:50,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:47:51,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:47:51,124.124 INFO    ] No existing commands found in stream
[2026-08-25 11:47:56,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:47:56,140.140 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 11:47:59,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:47:59,468.468 INFO    ] Checking for system updates...
[2026-08-25 11:47:59,505.505 INFO    ] 200
[2026-08-25 11:47:59,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:59,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:59,573.573 INFO    ] No update needed
[2026-08-25 11:47:59,576.576 INFO    ] Checking for camera pi updates...
[2026-08-25 11:47:59,615.615 INFO    ] 200
[2026-08-25 11:47:59,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:47:59,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:47:59,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:47:59,712.712 INFO    ] No camera update needed
[2026-08-25 11:47:59,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:47:59,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:47:59,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:47:59,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:48:01,784.784 INFO    ] ================================================
[2026-08-25 11:48:01,820.820 INFO    ] Launching Daemon at Tue Aug 25 11:48:01 IST 2026
[2026-08-25 11:48:01,846.846 INFO    ] ================================================
[2026-08-25 11:48:02,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:48:02
[2026-08-25 11:48:03,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:48:03,473.473 INFO    ] Initializing speech engine...
[2026-08-25 11:48:03,482.482 INFO    ] 2026-08-25 11:48:03
[2026-08-25 11:48:03,749.749 INFO    ] 2026-08-25 11:48:03
[2026-08-25 11:48:03,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:48:03,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:48:03,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:48:04,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:48:04,191.191 INFO    ] time= 25/08/2026 11:48:04
[2026-08-25 11:48:04,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:48:04,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:48:04,389.389 INFO    ] No existing commands found in stream
[2026-08-25 11:48:09,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:48:09,406.406 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 11:48:10,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:48:10,567.567 INFO    ] Checking for system updates...
[2026-08-25 11:48:10,603.603 INFO    ] 200
[2026-08-25 11:48:10,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:10,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:48:10,667.667 INFO    ] No update needed
[2026-08-25 11:48:10,669.669 INFO    ] Checking for camera pi updates...
[2026-08-25 11:48:10,702.702 INFO    ] 200
[2026-08-25 11:48:10,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:10,748.748 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:48:10,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:48:10,806.806 INFO    ] No camera update needed
[2026-08-25 11:48:10,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:48:10,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:48:10,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:48:10,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:48:12,860.860 INFO    ] ================================================
[2026-08-25 11:48:12,875.875 INFO    ] Launching Daemon at Tue Aug 25 11:48:12 IST 2026
[2026-08-25 11:48:12,886.886 INFO    ] ================================================
[2026-08-25 11:48:13,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:48:13
[2026-08-25 11:48:14,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:48:14,292.292 INFO    ] Initializing speech engine...
[2026-08-25 11:48:14,301.301 INFO    ] 2026-08-25 11:48:14
[2026-08-25 11:48:14,591.591 INFO    ] 2026-08-25 11:48:14
[2026-08-25 11:48:14,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:48:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:48:14,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:48:14,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:48:15,005.005 INFO    ] time= 25/08/2026 11:48:14
[2026-08-25 11:48:15,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:48:15,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:48:15,091.091 INFO    ] No existing commands found in stream
[2026-08-25 11:48:20,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:48:20,129.129 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 11:48:22,800.800 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:48:22,802.802 INFO    ] Checking for system updates...
[2026-08-25 11:48:22,841.841 INFO    ] 200
[2026-08-25 11:48:22,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:22,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:48:22,899.899 INFO    ] No update needed
[2026-08-25 11:48:22,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 11:48:22,938.938 INFO    ] 200
[2026-08-25 11:48:22,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:22,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:48:23,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:48:23,033.033 INFO    ] No camera update needed
[2026-08-25 11:48:23,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:48:23,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:48:23,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:48:23,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:48:25,089.089 INFO    ] ================================================
[2026-08-25 11:48:25,103.103 INFO    ] Launching Daemon at Tue Aug 25 11:48:25 IST 2026
[2026-08-25 11:48:25,114.114 INFO    ] ================================================
[2026-08-25 11:48:25,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:48:25
[2026-08-25 11:48:26,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:48:26,551.551 INFO    ] Initializing speech engine...
[2026-08-25 11:48:26,571.571 INFO    ] 2026-08-25 11:48:26
[2026-08-25 11:48:26,837.837 INFO    ] 2026-08-25 11:48:26
[2026-08-25 11:48:26,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:48:27,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:48:27,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:48:27,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:48:27,245.245 INFO    ] time= 25/08/2026 11:48:27
[2026-08-25 11:48:27,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:48:27,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:48:27,331.331 INFO    ] No existing commands found in stream
[2026-08-25 11:48:32,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:48:32,347.347 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 11:48:35,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:48:35,869.869 INFO    ] Checking for system updates...
[2026-08-25 11:48:35,905.905 INFO    ] 200
[2026-08-25 11:48:35,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:35,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:48:35,961.961 INFO    ] No update needed
[2026-08-25 11:48:35,963.963 INFO    ] Checking for camera pi updates...
[2026-08-25 11:48:35,997.997 INFO    ] 200
[2026-08-25 11:48:36,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:36,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:48:36,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:48:36,100.100 INFO    ] No camera update needed
[2026-08-25 11:48:36,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:48:36,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:48:36,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:48:36,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:48:38,155.155 INFO    ] ================================================
[2026-08-25 11:48:38,169.169 INFO    ] Launching Daemon at Tue Aug 25 11:48:38 IST 2026
[2026-08-25 11:48:38,180.180 INFO    ] ================================================
[2026-08-25 11:48:38,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:48:38
[2026-08-25 11:48:39,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:48:39,646.646 INFO    ] Initializing speech engine...
[2026-08-25 11:48:39,658.658 INFO    ] 2026-08-25 11:48:39
[2026-08-25 11:48:39,927.927 INFO    ] 2026-08-25 11:48:39
[2026-08-25 11:48:39,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:48:40,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:48:40,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:48:40,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:48:40,338.338 INFO    ] time= 25/08/2026 11:48:40
[2026-08-25 11:48:40,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:48:40,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:48:40,423.423 INFO    ] No existing commands found in stream
[2026-08-25 11:48:45,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:48:45,462.462 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 11:48:49,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:48:49,509.509 INFO    ] Checking for system updates...
[2026-08-25 11:48:49,546.546 INFO    ] 200
[2026-08-25 11:48:49,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:49,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:48:49,603.603 INFO    ] No update needed
[2026-08-25 11:48:49,606.606 INFO    ] Checking for camera pi updates...
[2026-08-25 11:48:49,642.642 INFO    ] 200
[2026-08-25 11:48:49,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:48:49,687.687 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:48:49,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:48:49,835.835 INFO    ] No camera update needed
[2026-08-25 11:48:49,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:48:49,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:48:49,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:48:49,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:48:51,893.893 INFO    ] ================================================
[2026-08-25 11:48:51,908.908 INFO    ] Launching Daemon at Tue Aug 25 11:48:51 IST 2026
[2026-08-25 11:48:51,919.919 INFO    ] ================================================
[2026-08-25 11:48:52,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:48:52
[2026-08-25 11:48:53,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:48:53,349.349 INFO    ] Initializing speech engine...
[2026-08-25 11:48:53,359.359 INFO    ] 2026-08-25 11:48:53
[2026-08-25 11:48:53,601.601 INFO    ] 2026-08-25 11:48:53
[2026-08-25 11:48:53,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:48:53,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:48:53,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:48:54,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:48:54,009.009 INFO    ] time= 25/08/2026 11:48:54
[2026-08-25 11:48:54,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:48:54,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:48:54,199.199 INFO    ] No existing commands found in stream
[2026-08-25 11:48:59,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:48:59,232.232 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 11:48:59,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:48:59,945.945 INFO    ] Checking for system updates...
[2026-08-25 11:48:59,980.980 INFO    ] 200
[2026-08-25 11:48:59,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:00,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:49:00,046.046 INFO    ] No update needed
[2026-08-25 11:49:00,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 11:49:00,082.082 INFO    ] 200
[2026-08-25 11:49:00,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:00,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:49:00,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:49:00,179.179 INFO    ] No camera update needed
[2026-08-25 11:49:00,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:49:00,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:49:00,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:49:00,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:49:02,235.235 INFO    ] ================================================
[2026-08-25 11:49:02,257.257 INFO    ] Launching Daemon at Tue Aug 25 11:49:02 IST 2026
[2026-08-25 11:49:02,274.274 INFO    ] ================================================
[2026-08-25 11:49:03,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:49:03
[2026-08-25 11:49:03,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:49:03,959.959 INFO    ] Initializing speech engine...
[2026-08-25 11:49:03,968.968 INFO    ] 2026-08-25 11:49:03
[2026-08-25 11:49:04,263.263 INFO    ] 2026-08-25 11:49:04
[2026-08-25 11:49:04,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:49:04,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:49:04,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:49:04,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:49:04,652.652 INFO    ] time= 25/08/2026 11:49:04
[2026-08-25 11:49:04,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:49:04,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:49:04,776.776 INFO    ] No existing commands found in stream
[2026-08-25 11:49:09,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:49:09,814.814 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 11:49:13,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:49:13,590.590 INFO    ] Checking for system updates...
[2026-08-25 11:49:13,626.626 INFO    ] 200
[2026-08-25 11:49:13,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:13,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:49:13,689.689 INFO    ] No update needed
[2026-08-25 11:49:13,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 11:49:13,746.746 INFO    ] 200
[2026-08-25 11:49:13,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:13,825.825 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:49:13,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:49:13,873.873 INFO    ] No camera update needed
[2026-08-25 11:49:13,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:49:13,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:49:13,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:49:13,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:49:15,929.929 INFO    ] ================================================
[2026-08-25 11:49:15,944.944 INFO    ] Launching Daemon at Tue Aug 25 11:49:15 IST 2026
[2026-08-25 11:49:15,954.954 INFO    ] ================================================
[2026-08-25 11:49:16,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:49:16
[2026-08-25 11:49:17,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:49:17,391.391 INFO    ] Initializing speech engine...
[2026-08-25 11:49:17,400.400 INFO    ] 2026-08-25 11:49:17
[2026-08-25 11:49:17,649.649 INFO    ] 2026-08-25 11:49:17
[2026-08-25 11:49:17,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:49:17,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:49:17,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:49:18,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:49:18,025.025 INFO    ] time= 25/08/2026 11:49:18
[2026-08-25 11:49:18,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:49:18,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:49:18,192.192 INFO    ] No existing commands found in stream
[2026-08-25 11:49:23,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:49:23,214.214 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 11:49:25,821.821 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:49:25,823.823 INFO    ] Checking for system updates...
[2026-08-25 11:49:25,862.862 INFO    ] 200
[2026-08-25 11:49:25,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:25,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:49:25,925.925 INFO    ] No update needed
[2026-08-25 11:49:25,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 11:49:25,961.961 INFO    ] 200
[2026-08-25 11:49:25,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:26,008.008 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:49:26,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:49:26,059.059 INFO    ] No camera update needed
[2026-08-25 11:49:26,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:49:26,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:49:26,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:49:26,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:49:28,114.114 INFO    ] ================================================
[2026-08-25 11:49:28,129.129 INFO    ] Launching Daemon at Tue Aug 25 11:49:28 IST 2026
[2026-08-25 11:49:28,140.140 INFO    ] ================================================
[2026-08-25 11:49:28,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:49:28
[2026-08-25 11:49:29,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:49:29,570.570 INFO    ] Initializing speech engine...
[2026-08-25 11:49:29,577.577 INFO    ] 2026-08-25 11:49:29
[2026-08-25 11:49:29,825.825 INFO    ] 2026-08-25 11:49:29
[2026-08-25 11:49:29,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:49:30,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:49:30,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:49:30,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:49:30,314.314 INFO    ] time= 25/08/2026 11:49:30
[2026-08-25 11:49:30,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:49:30,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:49:30,524.524 INFO    ] No existing commands found in stream
[2026-08-25 11:49:35,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:49:35,552.552 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 11:49:38,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:49:38,254.254 INFO    ] Checking for system updates...
[2026-08-25 11:49:38,289.289 INFO    ] 200
[2026-08-25 11:49:38,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:38,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:49:38,347.347 INFO    ] No update needed
[2026-08-25 11:49:38,350.350 INFO    ] Checking for camera pi updates...
[2026-08-25 11:49:38,384.384 INFO    ] 200
[2026-08-25 11:49:38,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:38,427.427 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:49:38,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:49:38,494.494 INFO    ] No camera update needed
[2026-08-25 11:49:38,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:49:38,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:49:38,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:49:38,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:49:40,550.550 INFO    ] ================================================
[2026-08-25 11:49:40,565.565 INFO    ] Launching Daemon at Tue Aug 25 11:49:40 IST 2026
[2026-08-25 11:49:40,577.577 INFO    ] ================================================
[2026-08-25 11:49:41,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:49:41
[2026-08-25 11:49:41,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:49:41,991.991 INFO    ] Initializing speech engine...
[2026-08-25 11:49:42,013.013 INFO    ] 2026-08-25 11:49:42
[2026-08-25 11:49:42,268.268 INFO    ] 2026-08-25 11:49:42
[2026-08-25 11:49:42,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:49:42,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:49:42,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:49:42,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:49:42,837.837 INFO    ] time= 25/08/2026 11:49:42
[2026-08-25 11:49:42,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:49:42,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:49:42,998.998 INFO    ] No existing commands found in stream
[2026-08-25 11:49:48,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:49:48,017.017 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 11:49:54,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:49:54,986.986 INFO    ] Checking for system updates...
[2026-08-25 11:49:55,028.028 INFO    ] 200
[2026-08-25 11:49:55,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:55,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:49:55,087.087 INFO    ] No update needed
[2026-08-25 11:49:55,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 11:49:55,124.124 INFO    ] 200
[2026-08-25 11:49:55,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:49:55,176.176 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:49:55,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:49:55,232.232 INFO    ] No camera update needed
[2026-08-25 11:49:55,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:49:55,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:49:55,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:49:55,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:49:57,290.290 INFO    ] ================================================
[2026-08-25 11:49:57,305.305 INFO    ] Launching Daemon at Tue Aug 25 11:49:57 IST 2026
[2026-08-25 11:49:57,315.315 INFO    ] ================================================
[2026-08-25 11:49:57,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:49:57
[2026-08-25 11:49:58,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:49:58,731.731 INFO    ] Initializing speech engine...
[2026-08-25 11:49:58,739.739 INFO    ] 2026-08-25 11:49:58
[2026-08-25 11:49:58,989.989 INFO    ] 2026-08-25 11:49:58
[2026-08-25 11:49:59,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:49:59,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:49:59,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:49:59,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:49:59,365.365 INFO    ] time= 25/08/2026 11:49:59
[2026-08-25 11:49:59,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:49:59,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:49:59,562.562 INFO    ] No existing commands found in stream
[2026-08-25 11:50:04,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:50:04,574.574 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 11:50:07,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:50:07,114.114 INFO    ] Checking for system updates...
[2026-08-25 11:50:07,149.149 INFO    ] 200
[2026-08-25 11:50:07,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:07,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:50:07,207.207 INFO    ] No update needed
[2026-08-25 11:50:07,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 11:50:07,243.243 INFO    ] 200
[2026-08-25 11:50:07,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:07,286.286 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:50:07,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:50:07,340.340 INFO    ] No camera update needed
[2026-08-25 11:50:07,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:50:07,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:50:07,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:50:07,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:50:09,394.394 INFO    ] ================================================
[2026-08-25 11:50:09,410.410 INFO    ] Launching Daemon at Tue Aug 25 11:50:09 IST 2026
[2026-08-25 11:50:09,422.422 INFO    ] ================================================
[2026-08-25 11:50:10,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:50:10
[2026-08-25 11:50:10,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:50:11,003.003 INFO    ] Initializing speech engine...
[2026-08-25 11:50:11,017.017 INFO    ] 2026-08-25 11:50:11
[2026-08-25 11:50:11,288.288 INFO    ] 2026-08-25 11:50:11
[2026-08-25 11:50:11,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:50:11,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:50:11,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:50:11,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:50:11,784.784 INFO    ] time= 25/08/2026 11:50:11
[2026-08-25 11:50:11,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:50:11,857.857 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:50:12,008.008 INFO    ] No existing commands found in stream
[2026-08-25 11:50:17,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:50:17,035.035 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 11:50:19,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:50:19,230.230 INFO    ] Checking for system updates...
[2026-08-25 11:50:19,266.266 INFO    ] 200
[2026-08-25 11:50:19,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:19,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:19,325.325 INFO    ] No update needed
[2026-08-25 11:50:19,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 11:50:19,362.362 INFO    ] 200
[2026-08-25 11:50:19,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:19,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:50:19,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:19,468.468 INFO    ] No camera update needed
[2026-08-25 11:50:19,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:50:19,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:50:19,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:50:19,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:50:21,526.526 INFO    ] ================================================
[2026-08-25 11:50:21,542.542 INFO    ] Launching Daemon at Tue Aug 25 11:50:21 IST 2026
[2026-08-25 11:50:21,553.553 INFO    ] ================================================
[2026-08-25 11:50:22,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:50:22
[2026-08-25 11:50:22,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:50:23,100.100 INFO    ] Initializing speech engine...
[2026-08-25 11:50:23,114.114 INFO    ] 2026-08-25 11:50:23
[2026-08-25 11:50:23,368.368 INFO    ] 2026-08-25 11:50:23
[2026-08-25 11:50:23,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:50:23,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:50:23,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:50:23,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:50:23,857.857 INFO    ] time= 25/08/2026 11:50:23
[2026-08-25 11:50:23,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:50:23,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:50:24,076.076 INFO    ] No existing commands found in stream
[2026-08-25 11:50:29,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:50:29,101.101 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 11:50:31,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:50:31,709.709 INFO    ] Checking for system updates...
[2026-08-25 11:50:31,747.747 INFO    ] 200
[2026-08-25 11:50:31,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:31,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:31,817.817 INFO    ] No update needed
[2026-08-25 11:50:31,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 11:50:31,867.867 INFO    ] 200
[2026-08-25 11:50:31,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:31,917.917 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:50:31,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:31,996.996 INFO    ] No camera update needed
[2026-08-25 11:50:31,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:50:32,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:50:32,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:50:32,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:50:34,055.055 INFO    ] ================================================
[2026-08-25 11:50:34,071.071 INFO    ] Launching Daemon at Tue Aug 25 11:50:34 IST 2026
[2026-08-25 11:50:34,082.082 INFO    ] ================================================
[2026-08-25 11:50:34,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:50:34
[2026-08-25 11:50:35,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:50:35,529.529 INFO    ] Initializing speech engine...
[2026-08-25 11:50:35,534.534 INFO    ] 2026-08-25 11:50:35
[2026-08-25 11:50:35,793.793 INFO    ] 2026-08-25 11:50:35
[2026-08-25 11:50:35,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:50:36,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:50:36,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:50:36,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:50:36,258.258 INFO    ] time= 25/08/2026 11:50:36
[2026-08-25 11:50:36,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:50:36,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:50:36,477.477 INFO    ] No existing commands found in stream
[2026-08-25 11:50:41,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:50:41,504.504 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 11:50:44,678.678 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:50:44,680.680 INFO    ] Checking for system updates...
[2026-08-25 11:50:44,717.717 INFO    ] 200
[2026-08-25 11:50:44,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:44,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:44,776.776 INFO    ] No update needed
[2026-08-25 11:50:44,779.779 INFO    ] Checking for camera pi updates...
[2026-08-25 11:50:44,816.816 INFO    ] 200
[2026-08-25 11:50:44,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:44,867.867 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:50:44,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:44,931.931 INFO    ] No camera update needed
[2026-08-25 11:50:44,934.934 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:50:44,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:50:44,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:50:44,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:50:46,990.990 INFO    ] ================================================
[2026-08-25 11:50:47,005.005 INFO    ] Launching Daemon at Tue Aug 25 11:50:47 IST 2026
[2026-08-25 11:50:47,016.016 INFO    ] ================================================
[2026-08-25 11:50:47,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:50:47
[2026-08-25 11:50:48,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:50:48,440.440 INFO    ] Initializing speech engine...
[2026-08-25 11:50:48,450.450 INFO    ] 2026-08-25 11:50:48
[2026-08-25 11:50:48,709.709 INFO    ] 2026-08-25 11:50:48
[2026-08-25 11:50:48,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:50:48,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:50:49,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:50:49,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:50:49,149.149 INFO    ] time= 25/08/2026 11:50:49
[2026-08-25 11:50:49,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:50:49,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:50:49,240.240 INFO    ] No existing commands found in stream
[2026-08-25 11:50:54,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:50:54,252.252 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 11:50:56,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:50:56,446.446 INFO    ] Checking for system updates...
[2026-08-25 11:50:56,481.481 INFO    ] 200
[2026-08-25 11:50:56,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:56,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:56,541.541 INFO    ] No update needed
[2026-08-25 11:50:56,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 11:50:56,576.576 INFO    ] 200
[2026-08-25 11:50:56,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:50:56,621.621 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:50:56,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:50:56,767.767 INFO    ] No camera update needed
[2026-08-25 11:50:56,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:50:56,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:50:56,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:50:56,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:50:58,821.821 INFO    ] ================================================
[2026-08-25 11:50:58,837.837 INFO    ] Launching Daemon at Tue Aug 25 11:50:58 IST 2026
[2026-08-25 11:50:58,848.848 INFO    ] ================================================
[2026-08-25 11:50:59,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:50:59
[2026-08-25 11:50:59,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:51:00,269.269 INFO    ] Initializing speech engine...
[2026-08-25 11:51:00,278.278 INFO    ] 2026-08-25 11:51:00
[2026-08-25 11:51:00,527.527 INFO    ] 2026-08-25 11:51:00
[2026-08-25 11:51:00,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:51:00,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:51:00,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:51:00,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:51:01,005.005 INFO    ] time= 25/08/2026 11:51:00
[2026-08-25 11:51:01,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:51:01,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:51:01,228.228 INFO    ] No existing commands found in stream
[2026-08-25 11:51:06,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:51:06,248.248 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 11:51:10,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:51:10,331.331 INFO    ] Checking for system updates...
[2026-08-25 11:51:10,370.370 INFO    ] 200
[2026-08-25 11:51:10,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:10,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:10,438.438 INFO    ] No update needed
[2026-08-25 11:51:10,441.441 INFO    ] Checking for camera pi updates...
[2026-08-25 11:51:10,476.476 INFO    ] 200
[2026-08-25 11:51:10,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:10,526.526 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:51:10,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:10,586.586 INFO    ] No camera update needed
[2026-08-25 11:51:10,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:51:10,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:51:10,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:51:10,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:51:12,646.646 INFO    ] ================================================
[2026-08-25 11:51:12,662.662 INFO    ] Launching Daemon at Tue Aug 25 11:51:12 IST 2026
[2026-08-25 11:51:12,673.673 INFO    ] ================================================
[2026-08-25 11:51:13,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:51:13
[2026-08-25 11:51:13,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:51:14,102.102 INFO    ] Initializing speech engine...
[2026-08-25 11:51:14,110.110 INFO    ] 2026-08-25 11:51:14
[2026-08-25 11:51:14,361.361 INFO    ] 2026-08-25 11:51:14
[2026-08-25 11:51:14,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:51:14,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:51:14,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:51:14,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:51:14,746.746 INFO    ] time= 25/08/2026 11:51:14
[2026-08-25 11:51:14,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:51:14,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:51:14,943.943 INFO    ] No existing commands found in stream
[2026-08-25 11:51:19,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:51:19,959.959 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 11:51:23,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:51:23,940.940 INFO    ] Checking for system updates...
[2026-08-25 11:51:23,976.976 INFO    ] 200
[2026-08-25 11:51:23,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:24,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:24,034.034 INFO    ] No update needed
[2026-08-25 11:51:24,037.037 INFO    ] Checking for camera pi updates...
[2026-08-25 11:51:24,071.071 INFO    ] 200
[2026-08-25 11:51:24,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:24,114.114 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:51:24,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:24,160.160 INFO    ] No camera update needed
[2026-08-25 11:51:24,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:51:24,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:51:24,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:51:24,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:51:26,217.217 INFO    ] ================================================
[2026-08-25 11:51:26,233.233 INFO    ] Launching Daemon at Tue Aug 25 11:51:26 IST 2026
[2026-08-25 11:51:26,244.244 INFO    ] ================================================
[2026-08-25 11:51:26,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:51:26
[2026-08-25 11:51:27,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:51:27,681.681 INFO    ] Initializing speech engine...
[2026-08-25 11:51:27,696.696 INFO    ] 2026-08-25 11:51:27
[2026-08-25 11:51:27,965.965 INFO    ] 2026-08-25 11:51:27
[2026-08-25 11:51:28,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:51:28,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:51:28,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:51:28,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:51:28,409.409 INFO    ] time= 25/08/2026 11:51:28
[2026-08-25 11:51:28,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:51:28,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:51:28,671.671 INFO    ] No existing commands found in stream
[2026-08-25 11:51:33,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:51:33,701.701 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 11:51:38,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:51:38,129.129 INFO    ] Checking for system updates...
[2026-08-25 11:51:38,165.165 INFO    ] 200
[2026-08-25 11:51:38,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:38,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:38,229.229 INFO    ] No update needed
[2026-08-25 11:51:38,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 11:51:38,269.269 INFO    ] 200
[2026-08-25 11:51:38,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:38,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:51:38,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:38,370.370 INFO    ] No camera update needed
[2026-08-25 11:51:38,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:51:38,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:51:38,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:51:38,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:51:40,426.426 INFO    ] ================================================
[2026-08-25 11:51:40,442.442 INFO    ] Launching Daemon at Tue Aug 25 11:51:40 IST 2026
[2026-08-25 11:51:40,452.452 INFO    ] ================================================
[2026-08-25 11:51:41,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:51:41
[2026-08-25 11:51:41,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:51:41,866.866 INFO    ] Initializing speech engine...
[2026-08-25 11:51:41,878.878 INFO    ] 2026-08-25 11:51:41
[2026-08-25 11:51:42,126.126 INFO    ] 2026-08-25 11:51:42
[2026-08-25 11:51:42,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:51:42,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:51:42,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:51:42,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:51:42,680.680 INFO    ] time= 25/08/2026 11:51:42
[2026-08-25 11:51:42,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:51:42,704.704 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:51:42,831.831 INFO    ] No existing commands found in stream
[2026-08-25 11:51:47,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:51:47,848.848 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 11:51:51,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:51:51,820.820 INFO    ] Checking for system updates...
[2026-08-25 11:51:51,856.856 INFO    ] 200
[2026-08-25 11:51:51,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:51,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:51,913.913 INFO    ] No update needed
[2026-08-25 11:51:51,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 11:51:51,949.949 INFO    ] 200
[2026-08-25 11:51:51,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:51:51,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:51:52,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:51:52,045.045 INFO    ] No camera update needed
[2026-08-25 11:51:52,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:51:52,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:51:52,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:51:52,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:51:54,099.099 INFO    ] ================================================
[2026-08-25 11:51:54,116.116 INFO    ] Launching Daemon at Tue Aug 25 11:51:54 IST 2026
[2026-08-25 11:51:54,127.127 INFO    ] ================================================
[2026-08-25 11:51:54,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:51:54
[2026-08-25 11:51:55,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:51:55,589.589 INFO    ] Initializing speech engine...
[2026-08-25 11:51:55,597.597 INFO    ] 2026-08-25 11:51:55
[2026-08-25 11:51:55,848.848 INFO    ] 2026-08-25 11:51:55
[2026-08-25 11:51:55,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:51:56,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:51:56,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:51:56,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:51:56,403.403 INFO    ] time= 25/08/2026 11:51:56
[2026-08-25 11:51:56,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:51:56,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:51:56,558.558 INFO    ] No existing commands found in stream
[2026-08-25 11:52:01,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:52:01,577.577 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 11:52:02,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:52:02,380.380 INFO    ] Checking for system updates...
[2026-08-25 11:52:02,431.431 INFO    ] 200
[2026-08-25 11:52:02,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:02,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:52:02,519.519 INFO    ] No update needed
[2026-08-25 11:52:02,522.522 INFO    ] Checking for camera pi updates...
[2026-08-25 11:52:02,564.564 INFO    ] 200
[2026-08-25 11:52:02,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:02,625.625 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:52:02,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:52:02,677.677 INFO    ] No camera update needed
[2026-08-25 11:52:02,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:52:02,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:52:02,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:52:02,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:52:04,741.741 INFO    ] ================================================
[2026-08-25 11:52:04,757.757 INFO    ] Launching Daemon at Tue Aug 25 11:52:04 IST 2026
[2026-08-25 11:52:04,768.768 INFO    ] ================================================
[2026-08-25 11:52:05,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:52:05
[2026-08-25 11:52:06,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:52:06,358.358 INFO    ] Initializing speech engine...
[2026-08-25 11:52:06,366.366 INFO    ] 2026-08-25 11:52:06
[2026-08-25 11:52:06,628.628 INFO    ] 2026-08-25 11:52:06
[2026-08-25 11:52:06,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:52:06,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:52:06,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:52:07,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:52:07,179.179 INFO    ] time= 25/08/2026 11:52:07
[2026-08-25 11:52:07,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:52:07,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:52:07,334.334 INFO    ] No existing commands found in stream
[2026-08-25 11:52:12,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:52:12,357.357 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 11:52:15,950.950 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:52:15,953.953 INFO    ] Checking for system updates...
[2026-08-25 11:52:15,991.991 INFO    ] 200
[2026-08-25 11:52:15,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:16,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:52:16,055.055 INFO    ] No update needed
[2026-08-25 11:52:16,058.058 INFO    ] Checking for camera pi updates...
[2026-08-25 11:52:16,092.092 INFO    ] 200
[2026-08-25 11:52:16,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:16,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:52:16,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:52:16,189.189 INFO    ] No camera update needed
[2026-08-25 11:52:16,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:52:16,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:52:16,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:52:16,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:52:18,246.246 INFO    ] ================================================
[2026-08-25 11:52:18,261.261 INFO    ] Launching Daemon at Tue Aug 25 11:52:18 IST 2026
[2026-08-25 11:52:18,273.273 INFO    ] ================================================
[2026-08-25 11:52:18,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:52:18
[2026-08-25 11:52:19,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:52:19,880.880 INFO    ] Initializing speech engine...
[2026-08-25 11:52:19,895.895 INFO    ] 2026-08-25 11:52:19
[2026-08-25 11:52:20,206.206 INFO    ] 2026-08-25 11:52:20
[2026-08-25 11:52:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:52:20,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:52:20,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:52:20,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:52:20,661.661 INFO    ] time= 25/08/2026 11:52:20
[2026-08-25 11:52:20,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:52:20,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:52:20,876.876 INFO    ] No existing commands found in stream
[2026-08-25 11:52:25,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:52:25,896.896 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 11:52:29,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:52:29,558.558 INFO    ] Checking for system updates...
[2026-08-25 11:52:29,594.594 INFO    ] 200
[2026-08-25 11:52:29,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:29,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:52:29,653.653 INFO    ] No update needed
[2026-08-25 11:52:29,655.655 INFO    ] Checking for camera pi updates...
[2026-08-25 11:52:29,689.689 INFO    ] 200
[2026-08-25 11:52:29,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:29,736.736 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:52:29,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:52:29,793.793 INFO    ] No camera update needed
[2026-08-25 11:52:29,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:52:29,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:52:29,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:52:29,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:52:31,850.850 INFO    ] ================================================
[2026-08-25 11:52:31,868.868 INFO    ] Launching Daemon at Tue Aug 25 11:52:31 IST 2026
[2026-08-25 11:52:31,880.880 INFO    ] ================================================
[2026-08-25 11:52:32,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:52:32
[2026-08-25 11:52:33,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:52:33,456.456 INFO    ] Initializing speech engine...
[2026-08-25 11:52:33,462.462 INFO    ] 2026-08-25 11:52:33
[2026-08-25 11:52:33,712.712 INFO    ] 2026-08-25 11:52:33
[2026-08-25 11:52:33,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:52:33,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:52:33,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:52:34,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:52:34,092.092 INFO    ] time= 25/08/2026 11:52:34
[2026-08-25 11:52:34,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:52:34,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:52:34,280.280 INFO    ] No existing commands found in stream
[2026-08-25 11:52:39,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:52:39,302.302 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 11:52:45,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:52:45,556.556 INFO    ] Checking for system updates...
[2026-08-25 11:52:45,592.592 INFO    ] 200
[2026-08-25 11:52:45,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:45,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:52:45,660.660 INFO    ] No update needed
[2026-08-25 11:52:45,662.662 INFO    ] Checking for camera pi updates...
[2026-08-25 11:52:45,696.696 INFO    ] 200
[2026-08-25 11:52:45,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:45,743.743 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:52:45,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:52:45,797.797 INFO    ] No camera update needed
[2026-08-25 11:52:45,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:52:45,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:52:45,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:52:45,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:52:47,854.854 INFO    ] ================================================
[2026-08-25 11:52:47,869.869 INFO    ] Launching Daemon at Tue Aug 25 11:52:47 IST 2026
[2026-08-25 11:52:47,879.879 INFO    ] ================================================
[2026-08-25 11:52:48,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:52:48
[2026-08-25 11:52:49,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:52:49,300.300 INFO    ] Initializing speech engine...
[2026-08-25 11:52:49,310.310 INFO    ] 2026-08-25 11:52:49
[2026-08-25 11:52:49,570.570 INFO    ] 2026-08-25 11:52:49
[2026-08-25 11:52:49,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:52:49,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:52:49,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:52:49,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:52:50,029.029 INFO    ] time= 25/08/2026 11:52:49
[2026-08-25 11:52:50,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:52:50,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:52:50,265.265 INFO    ] No existing commands found in stream
[2026-08-25 11:52:55,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:52:55,286.286 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 11:52:57,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:52:57,049.049 INFO    ] Checking for system updates...
[2026-08-25 11:52:57,085.085 INFO    ] 200
[2026-08-25 11:52:57,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:57,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:52:57,142.142 INFO    ] No update needed
[2026-08-25 11:52:57,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 11:52:57,177.177 INFO    ] 200
[2026-08-25 11:52:57,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:52:57,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:52:57,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:52:57,276.276 INFO    ] No camera update needed
[2026-08-25 11:52:57,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:52:57,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:52:57,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:52:57,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:52:59,331.331 INFO    ] ================================================
[2026-08-25 11:52:59,346.346 INFO    ] Launching Daemon at Tue Aug 25 11:52:59 IST 2026
[2026-08-25 11:52:59,357.357 INFO    ] ================================================
[2026-08-25 11:53:00,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:52:59
[2026-08-25 11:53:00,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:53:00,911.911 INFO    ] Initializing speech engine...
[2026-08-25 11:53:00,921.921 INFO    ] 2026-08-25 11:53:00
[2026-08-25 11:53:01,181.181 INFO    ] 2026-08-25 11:53:01
[2026-08-25 11:53:01,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:53:01,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:53:01,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:53:01,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:53:01,665.665 INFO    ] time= 25/08/2026 11:53:01
[2026-08-25 11:53:01,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:53:01,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:53:01,899.899 INFO    ] No existing commands found in stream
[2026-08-25 11:53:06,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:53:06,918.918 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 11:53:07,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:53:07,980.980 INFO    ] Checking for system updates...
[2026-08-25 11:53:08,015.015 INFO    ] 200
[2026-08-25 11:53:08,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:08,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:53:08,073.073 INFO    ] No update needed
[2026-08-25 11:53:08,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 11:53:08,111.111 INFO    ] 200
[2026-08-25 11:53:08,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:08,153.153 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:53:08,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:53:08,212.212 INFO    ] No camera update needed
[2026-08-25 11:53:08,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:53:08,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:53:08,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:53:08,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:53:10,265.265 INFO    ] ================================================
[2026-08-25 11:53:10,280.280 INFO    ] Launching Daemon at Tue Aug 25 11:53:10 IST 2026
[2026-08-25 11:53:10,291.291 INFO    ] ================================================
[2026-08-25 11:53:10,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:53:10
[2026-08-25 11:53:11,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:53:11,725.725 INFO    ] Initializing speech engine...
[2026-08-25 11:53:11,749.749 INFO    ] 2026-08-25 11:53:11
[2026-08-25 11:53:12,016.016 INFO    ] 2026-08-25 11:53:11
[2026-08-25 11:53:12,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:53:12,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:53:12,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:53:12,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:53:12,415.415 INFO    ] time= 25/08/2026 11:53:12
[2026-08-25 11:53:12,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:53:12,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:53:12,615.615 INFO    ] No existing commands found in stream
[2026-08-25 11:53:17,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:53:17,639.639 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 11:53:19,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:53:19,008.008 INFO    ] Checking for system updates...
[2026-08-25 11:53:19,046.046 INFO    ] 200
[2026-08-25 11:53:19,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:19,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:53:19,103.103 INFO    ] No update needed
[2026-08-25 11:53:19,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 11:53:19,144.144 INFO    ] 200
[2026-08-25 11:53:19,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:19,187.187 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:53:19,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:53:19,246.246 INFO    ] No camera update needed
[2026-08-25 11:53:19,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:53:19,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:53:19,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:53:19,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:53:21,302.302 INFO    ] ================================================
[2026-08-25 11:53:21,317.317 INFO    ] Launching Daemon at Tue Aug 25 11:53:21 IST 2026
[2026-08-25 11:53:21,328.328 INFO    ] ================================================
[2026-08-25 11:53:21,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:53:21
[2026-08-25 11:53:22,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:53:22,779.779 INFO    ] Initializing speech engine...
[2026-08-25 11:53:22,787.787 INFO    ] 2026-08-25 11:53:22
[2026-08-25 11:53:23,032.032 INFO    ] 2026-08-25 11:53:23
[2026-08-25 11:53:23,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:53:23,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:53:23,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:53:23,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:53:23,428.428 INFO    ] time= 25/08/2026 11:53:23
[2026-08-25 11:53:23,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:53:23,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:53:23,592.592 INFO    ] No existing commands found in stream
[2026-08-25 11:53:28,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:53:28,626.626 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 11:53:32,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:53:32,933.933 INFO    ] Checking for system updates...
[2026-08-25 11:53:32,971.971 INFO    ] 200
[2026-08-25 11:53:32,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:33,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:53:33,033.033 INFO    ] No update needed
[2026-08-25 11:53:33,037.037 INFO    ] Checking for camera pi updates...
[2026-08-25 11:53:33,075.075 INFO    ] 200
[2026-08-25 11:53:33,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:33,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:53:33,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:53:33,198.198 INFO    ] No camera update needed
[2026-08-25 11:53:33,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:53:33,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:53:33,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:53:33,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:53:35,253.253 INFO    ] ================================================
[2026-08-25 11:53:35,267.267 INFO    ] Launching Daemon at Tue Aug 25 11:53:35 IST 2026
[2026-08-25 11:53:35,278.278 INFO    ] ================================================
[2026-08-25 11:53:35,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:53:35
[2026-08-25 11:53:36,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:53:36,698.698 INFO    ] Initializing speech engine...
[2026-08-25 11:53:36,714.714 INFO    ] 2026-08-25 11:53:36
[2026-08-25 11:53:36,979.979 INFO    ] 2026-08-25 11:53:36
[2026-08-25 11:53:37,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:53:37,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:53:37,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:53:37,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:53:37,362.362 INFO    ] time= 25/08/2026 11:53:37
[2026-08-25 11:53:37,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:53:37,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:53:37,548.548 INFO    ] No existing commands found in stream
[2026-08-25 11:53:42,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:53:42,576.576 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 11:53:45,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:53:45,177.177 INFO    ] Checking for system updates...
[2026-08-25 11:53:45,219.219 INFO    ] 200
[2026-08-25 11:53:45,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:45,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:53:45,286.286 INFO    ] No update needed
[2026-08-25 11:53:45,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 11:53:45,324.324 INFO    ] 200
[2026-08-25 11:53:45,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:45,375.375 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:53:45,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:53:45,431.431 INFO    ] No camera update needed
[2026-08-25 11:53:45,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:53:45,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:53:45,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:53:45,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:53:47,488.488 INFO    ] ================================================
[2026-08-25 11:53:47,505.505 INFO    ] Launching Daemon at Tue Aug 25 11:53:47 IST 2026
[2026-08-25 11:53:47,516.516 INFO    ] ================================================
[2026-08-25 11:53:48,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:53:48
[2026-08-25 11:53:48,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:53:48,965.965 INFO    ] Initializing speech engine...
[2026-08-25 11:53:48,973.973 INFO    ] 2026-08-25 11:53:48
[2026-08-25 11:53:49,224.224 INFO    ] 2026-08-25 11:53:49
[2026-08-25 11:53:49,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:53:49,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:53:49,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:53:49,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:53:49,583.583 INFO    ] time= 25/08/2026 11:53:49
[2026-08-25 11:53:49,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:53:49,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:53:49,765.765 INFO    ] No existing commands found in stream
[2026-08-25 11:53:54,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:53:54,803.803 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 11:53:55,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:53:55,341.341 INFO    ] Checking for system updates...
[2026-08-25 11:53:55,376.376 INFO    ] 200
[2026-08-25 11:53:55,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:55,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:53:55,434.434 INFO    ] No update needed
[2026-08-25 11:53:55,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 11:53:55,469.469 INFO    ] 200
[2026-08-25 11:53:55,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:53:55,517.517 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:53:55,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:53:55,581.581 INFO    ] No camera update needed
[2026-08-25 11:53:55,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:53:55,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:53:55,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:53:55,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:53:57,637.637 INFO    ] ================================================
[2026-08-25 11:53:57,655.655 INFO    ] Launching Daemon at Tue Aug 25 11:53:57 IST 2026
[2026-08-25 11:53:57,669.669 INFO    ] ================================================
[2026-08-25 11:53:58,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:53:58
[2026-08-25 11:53:58,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:53:59,089.089 INFO    ] Initializing speech engine...
[2026-08-25 11:53:59,106.106 INFO    ] 2026-08-25 11:53:59
[2026-08-25 11:53:59,360.360 INFO    ] 2026-08-25 11:53:59
[2026-08-25 11:53:59,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:53:59,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:53:59,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:53:59,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:53:59,926.926 INFO    ] time= 25/08/2026 11:53:59
[2026-08-25 11:53:59,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:53:59,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:54:00,084.084 INFO    ] No existing commands found in stream
[2026-08-25 11:54:05,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:54:05,104.104 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 11:54:08,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:54:08,600.600 INFO    ] Checking for system updates...
[2026-08-25 11:54:08,652.652 INFO    ] 200
[2026-08-25 11:54:08,654.654 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:08,657.657 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 11:54:08,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 11:54:08,710.710 INFO    ] 200
[2026-08-25 11:54:08,713.713 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:08,715.715 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 11:54:08,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:54:08,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:54:08,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:54:08,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:54:10,773.773 INFO    ] ================================================
[2026-08-25 11:54:10,789.789 INFO    ] Launching Daemon at Tue Aug 25 11:54:10 IST 2026
[2026-08-25 11:54:10,801.801 INFO    ] ================================================
[2026-08-25 11:54:11,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:54:11
[2026-08-25 11:54:11,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:54:12,268.268 INFO    ] Initializing speech engine...
[2026-08-25 11:54:12,277.277 INFO    ] 2026-08-25 11:54:12
[2026-08-25 11:54:12,533.533 INFO    ] 2026-08-25 11:54:12
[2026-08-25 11:54:12,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:54:12,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:54:12,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:54:13,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:54:13,104.104 INFO    ] time= 25/08/2026 11:54:13
[2026-08-25 11:54:13,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:54:13,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:54:13,245.245 INFO    ] No existing commands found in stream
[2026-08-25 11:54:18,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:54:18,268.268 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 11:54:19,957.957 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:54:19,960.960 INFO    ] Checking for system updates...
[2026-08-25 11:54:19,999.999 INFO    ] 200
[2026-08-25 11:54:20,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:20,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:54:20,057.057 INFO    ] No update needed
[2026-08-25 11:54:20,059.059 INFO    ] Checking for camera pi updates...
[2026-08-25 11:54:20,092.092 INFO    ] 200
[2026-08-25 11:54:20,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:20,135.135 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:54:20,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:54:20,199.199 INFO    ] No camera update needed
[2026-08-25 11:54:20,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:54:20,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:54:20,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:54:20,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:54:22,253.253 INFO    ] ================================================
[2026-08-25 11:54:22,269.269 INFO    ] Launching Daemon at Tue Aug 25 11:54:22 IST 2026
[2026-08-25 11:54:22,280.280 INFO    ] ================================================
[2026-08-25 11:54:22,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:54:22
[2026-08-25 11:54:23,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:54:23,700.700 INFO    ] Initializing speech engine...
[2026-08-25 11:54:23,709.709 INFO    ] 2026-08-25 11:54:23
[2026-08-25 11:54:23,960.960 INFO    ] 2026-08-25 11:54:23
[2026-08-25 11:54:24,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:54:24,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:54:24,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:54:24,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:54:24,421.421 INFO    ] time= 25/08/2026 11:54:24
[2026-08-25 11:54:24,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:54:24,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:54:24,645.645 INFO    ] No existing commands found in stream
[2026-08-25 11:54:29,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:54:29,670.670 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 11:54:33,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:54:33,951.951 INFO    ] Checking for system updates...
[2026-08-25 11:54:33,986.986 INFO    ] 200
[2026-08-25 11:54:33,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:34,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:54:34,043.043 INFO    ] No update needed
[2026-08-25 11:54:34,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 11:54:34,080.080 INFO    ] 200
[2026-08-25 11:54:34,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:34,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:54:34,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:54:34,186.186 INFO    ] No camera update needed
[2026-08-25 11:54:34,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:54:34,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:54:34,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:54:34,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:54:36,242.242 INFO    ] ================================================
[2026-08-25 11:54:36,258.258 INFO    ] Launching Daemon at Tue Aug 25 11:54:36 IST 2026
[2026-08-25 11:54:36,269.269 INFO    ] ================================================
[2026-08-25 11:54:36,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:54:36
[2026-08-25 11:54:37,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:54:37,860.860 INFO    ] Initializing speech engine...
[2026-08-25 11:54:37,869.869 INFO    ] 2026-08-25 11:54:37
[2026-08-25 11:54:38,151.151 INFO    ] 2026-08-25 11:54:38
[2026-08-25 11:54:38,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:54:38,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:54:38,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:54:38,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:54:38,681.681 INFO    ] time= 25/08/2026 11:54:38
[2026-08-25 11:54:38,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:54:38,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:54:38,832.832 INFO    ] No existing commands found in stream
[2026-08-25 11:54:43,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:54:43,852.852 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 11:54:47,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:54:47,915.915 INFO    ] Checking for system updates...
[2026-08-25 11:54:47,950.950 INFO    ] 200
[2026-08-25 11:54:47,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:48,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:54:48,007.007 INFO    ] No update needed
[2026-08-25 11:54:48,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 11:54:48,050.050 INFO    ] 200
[2026-08-25 11:54:48,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:54:48,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:54:48,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:54:48,143.143 INFO    ] No camera update needed
[2026-08-25 11:54:48,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:54:48,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:54:48,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:54:48,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:54:50,198.198 INFO    ] ================================================
[2026-08-25 11:54:50,213.213 INFO    ] Launching Daemon at Tue Aug 25 11:54:50 IST 2026
[2026-08-25 11:54:50,225.225 INFO    ] ================================================
[2026-08-25 11:54:50,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:54:50
[2026-08-25 11:54:51,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:54:51,628.628 INFO    ] Initializing speech engine...
[2026-08-25 11:54:51,635.635 INFO    ] 2026-08-25 11:54:51
[2026-08-25 11:54:51,937.937 INFO    ] 2026-08-25 11:54:51
[2026-08-25 11:54:51,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:54:52,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:54:52,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:54:52,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:54:52,318.318 INFO    ] time= 25/08/2026 11:54:52
[2026-08-25 11:54:52,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:54:52,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:54:52,480.480 INFO    ] No existing commands found in stream
[2026-08-25 11:54:57,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:54:57,509.509 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 11:55:02,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:55:02,041.041 INFO    ] Checking for system updates...
[2026-08-25 11:55:02,093.093 INFO    ] 200
[2026-08-25 11:55:02,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:02,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:02,176.176 INFO    ] No update needed
[2026-08-25 11:55:02,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 11:55:02,217.217 INFO    ] 200
[2026-08-25 11:55:02,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:02,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:55:02,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:02,416.416 INFO    ] No camera update needed
[2026-08-25 11:55:02,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:55:02,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:55:02,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:55:02,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:55:04,475.475 INFO    ] ================================================
[2026-08-25 11:55:04,491.491 INFO    ] Launching Daemon at Tue Aug 25 11:55:04 IST 2026
[2026-08-25 11:55:04,502.502 INFO    ] ================================================
[2026-08-25 11:55:05,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:55:05
[2026-08-25 11:55:05,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:55:05,925.925 INFO    ] Initializing speech engine...
[2026-08-25 11:55:05,931.931 INFO    ] 2026-08-25 11:55:05
[2026-08-25 11:55:06,188.188 INFO    ] 2026-08-25 11:55:06
[2026-08-25 11:55:06,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:55:06,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:55:06,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:55:06,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:55:06,702.702 INFO    ] time= 25/08/2026 11:55:06
[2026-08-25 11:55:06,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:55:06,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:55:06,907.907 INFO    ] No existing commands found in stream
[2026-08-25 11:55:11,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:55:11,938.938 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 11:55:16,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:55:16,124.124 INFO    ] Checking for system updates...
[2026-08-25 11:55:16,165.165 INFO    ] 200
[2026-08-25 11:55:16,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:16,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:16,235.235 INFO    ] No update needed
[2026-08-25 11:55:16,238.238 INFO    ] Checking for camera pi updates...
[2026-08-25 11:55:16,276.276 INFO    ] 200
[2026-08-25 11:55:16,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:16,328.328 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:55:16,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:16,483.483 INFO    ] No camera update needed
[2026-08-25 11:55:16,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:55:16,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:55:16,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:55:16,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:55:18,537.537 INFO    ] ================================================
[2026-08-25 11:55:18,553.553 INFO    ] Launching Daemon at Tue Aug 25 11:55:18 IST 2026
[2026-08-25 11:55:18,564.564 INFO    ] ================================================
[2026-08-25 11:55:19,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:55:19
[2026-08-25 11:55:19,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:55:20,019.019 INFO    ] Initializing speech engine...
[2026-08-25 11:55:20,028.028 INFO    ] 2026-08-25 11:55:20
[2026-08-25 11:55:20,286.286 INFO    ] 2026-08-25 11:55:20
[2026-08-25 11:55:20,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:55:20,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:55:20,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:55:20,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:55:20,828.828 INFO    ] time= 25/08/2026 11:55:20
[2026-08-25 11:55:20,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:55:20,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:55:21,004.004 INFO    ] No existing commands found in stream
[2026-08-25 11:55:26,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:55:26,030.030 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 11:55:26,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:55:26,922.922 INFO    ] Checking for system updates...
[2026-08-25 11:55:26,957.957 INFO    ] 200
[2026-08-25 11:55:26,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:27,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:55:27,020.020 INFO    ] No update needed
[2026-08-25 11:55:27,022.022 INFO    ] Checking for camera pi updates...
[2026-08-25 11:55:27,057.057 INFO    ] 200
[2026-08-25 11:55:27,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:27,104.104 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:55:27,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:55:27,160.160 INFO    ] No camera update needed
[2026-08-25 11:55:27,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:55:27,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:55:27,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:55:27,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:55:29,216.216 INFO    ] ================================================
[2026-08-25 11:55:29,231.231 INFO    ] Launching Daemon at Tue Aug 25 11:55:29 IST 2026
[2026-08-25 11:55:29,242.242 INFO    ] ================================================
[2026-08-25 11:55:29,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:55:29
[2026-08-25 11:55:30,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:55:30,662.662 INFO    ] Initializing speech engine...
[2026-08-25 11:55:30,672.672 INFO    ] 2026-08-25 11:55:30
[2026-08-25 11:55:30,917.917 INFO    ] 2026-08-25 11:55:30
[2026-08-25 11:55:30,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:55:31,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:55:31,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:55:31,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:55:31,436.436 INFO    ] time= 25/08/2026 11:55:31
[2026-08-25 11:55:31,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:55:31,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:55:31,651.651 INFO    ] No existing commands found in stream
[2026-08-25 11:55:36,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:55:36,672.672 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 11:55:39,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:55:39,153.153 INFO    ] Checking for system updates...
[2026-08-25 11:55:39,188.188 INFO    ] 200
[2026-08-25 11:55:39,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:39,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:39,251.251 INFO    ] No update needed
[2026-08-25 11:55:39,254.254 INFO    ] Checking for camera pi updates...
[2026-08-25 11:55:39,291.291 INFO    ] 200
[2026-08-25 11:55:39,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:39,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:55:39,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:39,387.387 INFO    ] No camera update needed
[2026-08-25 11:55:39,390.390 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:55:39,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:55:39,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:55:39,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:55:41,446.446 INFO    ] ================================================
[2026-08-25 11:55:41,461.461 INFO    ] Launching Daemon at Tue Aug 25 11:55:41 IST 2026
[2026-08-25 11:55:41,476.476 INFO    ] ================================================
[2026-08-25 11:55:42,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:55:42
[2026-08-25 11:55:42,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:55:42,884.884 INFO    ] Initializing speech engine...
[2026-08-25 11:55:42,902.902 INFO    ] 2026-08-25 11:55:42
[2026-08-25 11:55:43,152.152 INFO    ] 2026-08-25 11:55:43
[2026-08-25 11:55:43,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:55:43,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:55:43,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:55:43,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:55:43,525.525 INFO    ] time= 25/08/2026 11:55:43
[2026-08-25 11:55:43,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:55:43,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:55:43,687.687 INFO    ] No existing commands found in stream
[2026-08-25 11:55:48,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:55:48,715.715 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 11:55:49,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:55:49,701.701 INFO    ] Checking for system updates...
[2026-08-25 11:55:49,736.736 INFO    ] 200
[2026-08-25 11:55:49,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:49,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:49,793.793 INFO    ] No update needed
[2026-08-25 11:55:49,795.795 INFO    ] Checking for camera pi updates...
[2026-08-25 11:55:49,828.828 INFO    ] 200
[2026-08-25 11:55:49,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:55:49,875.875 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:55:49,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:55:49,931.931 INFO    ] No camera update needed
[2026-08-25 11:55:49,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:55:49,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:55:49,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:55:49,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:55:51,984.984 INFO    ] ================================================
[2026-08-25 11:55:52,999.999 INFO    ] Launching Daemon at Tue Aug 25 11:55:51 IST 2026
[2026-08-25 11:55:52,010.010 INFO    ] ================================================
[2026-08-25 11:55:52,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:55:52
[2026-08-25 11:55:53,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:55:53,460.460 INFO    ] Initializing speech engine...
[2026-08-25 11:55:53,471.471 INFO    ] 2026-08-25 11:55:53
[2026-08-25 11:55:53,718.718 INFO    ] 2026-08-25 11:55:53
[2026-08-25 11:55:53,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:55:53,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:55:54,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:55:54,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:55:54,209.209 INFO    ] time= 25/08/2026 11:55:54
[2026-08-25 11:55:54,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:55:54,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:55:54,430.430 INFO    ] No existing commands found in stream
[2026-08-25 11:55:59,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:55:59,451.451 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 11:56:03,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:56:03,306.306 INFO    ] Checking for system updates...
[2026-08-25 11:56:03,343.343 INFO    ] 200
[2026-08-25 11:56:03,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:03,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:03,400.400 INFO    ] No update needed
[2026-08-25 11:56:03,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 11:56:03,438.438 INFO    ] 200
[2026-08-25 11:56:03,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:03,481.481 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:56:03,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:03,528.528 INFO    ] No camera update needed
[2026-08-25 11:56:03,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:56:03,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:56:03,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:56:03,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:56:05,582.582 INFO    ] ================================================
[2026-08-25 11:56:05,597.597 INFO    ] Launching Daemon at Tue Aug 25 11:56:05 IST 2026
[2026-08-25 11:56:05,608.608 INFO    ] ================================================
[2026-08-25 11:56:06,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:56:06
[2026-08-25 11:56:06,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:56:07,059.059 INFO    ] Initializing speech engine...
[2026-08-25 11:56:07,067.067 INFO    ] 2026-08-25 11:56:07
[2026-08-25 11:56:07,316.316 INFO    ] 2026-08-25 11:56:07
[2026-08-25 11:56:07,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:56:07,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:56:07,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:56:07,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:56:07,692.692 INFO    ] time= 25/08/2026 11:56:07
[2026-08-25 11:56:07,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:56:07,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:56:07,891.891 INFO    ] No existing commands found in stream
[2026-08-25 11:56:12,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:56:12,906.906 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 11:56:17,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:56:17,169.169 INFO    ] Checking for system updates...
[2026-08-25 11:56:17,207.207 INFO    ] 200
[2026-08-25 11:56:17,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:17,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:17,269.269 INFO    ] No update needed
[2026-08-25 11:56:17,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 11:56:17,306.306 INFO    ] 200
[2026-08-25 11:56:17,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:17,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:56:17,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:17,408.408 INFO    ] No camera update needed
[2026-08-25 11:56:17,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:56:17,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:56:17,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:56:17,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:56:19,466.466 INFO    ] ================================================
[2026-08-25 11:56:19,481.481 INFO    ] Launching Daemon at Tue Aug 25 11:56:19 IST 2026
[2026-08-25 11:56:19,492.492 INFO    ] ================================================
[2026-08-25 11:56:20,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:56:20
[2026-08-25 11:56:20,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:56:20,947.947 INFO    ] Initializing speech engine...
[2026-08-25 11:56:20,956.956 INFO    ] 2026-08-25 11:56:20
[2026-08-25 11:56:21,217.217 INFO    ] 2026-08-25 11:56:21
[2026-08-25 11:56:21,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:56:21,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:56:21,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:56:21,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:56:21,676.676 INFO    ] time= 25/08/2026 11:56:21
[2026-08-25 11:56:21,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:56:21,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:56:21,905.905 INFO    ] No existing commands found in stream
[2026-08-25 11:56:26,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:56:26,927.927 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 11:56:31,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:56:31,222.222 INFO    ] Checking for system updates...
[2026-08-25 11:56:31,261.261 INFO    ] 200
[2026-08-25 11:56:31,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:31,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:56:31,325.325 INFO    ] No update needed
[2026-08-25 11:56:31,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 11:56:31,364.364 INFO    ] 200
[2026-08-25 11:56:31,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:31,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:56:31,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:56:31,473.473 INFO    ] No camera update needed
[2026-08-25 11:56:31,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:56:31,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:56:31,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:56:31,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:56:33,537.537 INFO    ] ================================================
[2026-08-25 11:56:33,552.552 INFO    ] Launching Daemon at Tue Aug 25 11:56:33 IST 2026
[2026-08-25 11:56:33,563.563 INFO    ] ================================================
[2026-08-25 11:56:34,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:56:34
[2026-08-25 11:56:34,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:56:34,980.980 INFO    ] Initializing speech engine...
[2026-08-25 11:56:34,988.988 INFO    ] 2026-08-25 11:56:34
[2026-08-25 11:56:35,246.246 INFO    ] 2026-08-25 11:56:35
[2026-08-25 11:56:35,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:56:35,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:56:35,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:56:35,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:56:35,718.718 INFO    ] time= 25/08/2026 11:56:35
[2026-08-25 11:56:35,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:56:35,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:56:35,943.943 INFO    ] No existing commands found in stream
[2026-08-25 11:56:40,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:56:40,960.960 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 11:56:43,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:56:43,193.193 INFO    ] Checking for system updates...
[2026-08-25 11:56:43,231.231 INFO    ] 200
[2026-08-25 11:56:43,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:43,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:43,293.293 INFO    ] No update needed
[2026-08-25 11:56:43,296.296 INFO    ] Checking for camera pi updates...
[2026-08-25 11:56:43,329.329 INFO    ] 200
[2026-08-25 11:56:43,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:43,376.376 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:56:43,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:43,430.430 INFO    ] No camera update needed
[2026-08-25 11:56:43,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:56:43,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:56:43,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:56:43,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:56:45,486.486 INFO    ] ================================================
[2026-08-25 11:56:45,501.501 INFO    ] Launching Daemon at Tue Aug 25 11:56:45 IST 2026
[2026-08-25 11:56:45,511.511 INFO    ] ================================================
[2026-08-25 11:56:46,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:56:46
[2026-08-25 11:56:46,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:56:47,015.015 INFO    ] Initializing speech engine...
[2026-08-25 11:56:47,028.028 INFO    ] 2026-08-25 11:56:47
[2026-08-25 11:56:47,334.334 INFO    ] 2026-08-25 11:56:47
[2026-08-25 11:56:47,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:56:47,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:56:47,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:56:47,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:56:47,836.836 INFO    ] time= 25/08/2026 11:56:47
[2026-08-25 11:56:47,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:56:47,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:56:48,017.017 INFO    ] No existing commands found in stream
[2026-08-25 11:56:53,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:56:53,051.051 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 11:56:57,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:56:57,244.244 INFO    ] Checking for system updates...
[2026-08-25 11:56:57,281.281 INFO    ] 200
[2026-08-25 11:56:57,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:57,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:57,345.345 INFO    ] No update needed
[2026-08-25 11:56:57,348.348 INFO    ] Checking for camera pi updates...
[2026-08-25 11:56:57,386.386 INFO    ] 200
[2026-08-25 11:56:57,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:56:57,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:56:57,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:56:57,508.508 INFO    ] No camera update needed
[2026-08-25 11:56:57,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:56:57,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:56:57,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:56:57,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:56:59,564.564 INFO    ] ================================================
[2026-08-25 11:56:59,579.579 INFO    ] Launching Daemon at Tue Aug 25 11:56:59 IST 2026
[2026-08-25 11:56:59,590.590 INFO    ] ================================================
[2026-08-25 11:57:00,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:57:00
[2026-08-25 11:57:00,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:57:00,986.986 INFO    ] Initializing speech engine...
[2026-08-25 11:57:00,992.992 INFO    ] 2026-08-25 11:57:00
[2026-08-25 11:57:01,263.263 INFO    ] 2026-08-25 11:57:01
[2026-08-25 11:57:01,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:57:01,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:57:01,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:57:01,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:57:01,806.806 INFO    ] time= 25/08/2026 11:57:01
[2026-08-25 11:57:01,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:57:01,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:57:01,946.946 INFO    ] No existing commands found in stream
[2026-08-25 11:57:06,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:57:06,961.961 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 11:57:09,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:57:09,980.980 INFO    ] Checking for system updates...
[2026-08-25 11:57:10,016.016 INFO    ] 200
[2026-08-25 11:57:10,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:10,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:10,080.080 INFO    ] No update needed
[2026-08-25 11:57:10,082.082 INFO    ] Checking for camera pi updates...
[2026-08-25 11:57:10,128.128 INFO    ] 200
[2026-08-25 11:57:10,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:10,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:57:10,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:10,224.224 INFO    ] No camera update needed
[2026-08-25 11:57:10,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:57:10,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:57:10,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:57:10,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:57:12,278.278 INFO    ] ================================================
[2026-08-25 11:57:12,294.294 INFO    ] Launching Daemon at Tue Aug 25 11:57:12 IST 2026
[2026-08-25 11:57:12,305.305 INFO    ] ================================================
[2026-08-25 11:57:12,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:57:12
[2026-08-25 11:57:13,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:57:13,784.784 INFO    ] Initializing speech engine...
[2026-08-25 11:57:13,794.794 INFO    ] 2026-08-25 11:57:13
[2026-08-25 11:57:14,044.044 INFO    ] 2026-08-25 11:57:14
[2026-08-25 11:57:14,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:57:14,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:57:14,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:57:14,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:57:14,530.530 INFO    ] time= 25/08/2026 11:57:14
[2026-08-25 11:57:14,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:57:14,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:57:14,755.755 INFO    ] No existing commands found in stream
[2026-08-25 11:57:19,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:57:19,783.783 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 11:57:22,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:57:22,340.340 INFO    ] Checking for system updates...
[2026-08-25 11:57:22,379.379 INFO    ] 200
[2026-08-25 11:57:22,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:22,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:22,436.436 INFO    ] No update needed
[2026-08-25 11:57:22,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 11:57:22,476.476 INFO    ] 200
[2026-08-25 11:57:22,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:22,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:57:22,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:22,670.670 INFO    ] No camera update needed
[2026-08-25 11:57:22,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:57:22,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:57:22,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:57:22,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:57:24,724.724 INFO    ] ================================================
[2026-08-25 11:57:24,740.740 INFO    ] Launching Daemon at Tue Aug 25 11:57:24 IST 2026
[2026-08-25 11:57:24,751.751 INFO    ] ================================================
[2026-08-25 11:57:25,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:57:25
[2026-08-25 11:57:25,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:57:26,177.177 INFO    ] Initializing speech engine...
[2026-08-25 11:57:26,186.186 INFO    ] 2026-08-25 11:57:26
[2026-08-25 11:57:26,434.434 INFO    ] 2026-08-25 11:57:26
[2026-08-25 11:57:26,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:57:26,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:57:26,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:57:26,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:57:26,950.950 INFO    ] time= 25/08/2026 11:57:26
[2026-08-25 11:57:27,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:57:27,055.055 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:57:27,203.203 INFO    ] No existing commands found in stream
[2026-08-25 11:57:32,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:57:32,220.220 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 11:57:32,927.927 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:57:32,930.930 INFO    ] Checking for system updates...
[2026-08-25 11:57:32,967.967 INFO    ] 200
[2026-08-25 11:57:32,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:33,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:57:33,033.033 INFO    ] No update needed
[2026-08-25 11:57:33,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 11:57:33,069.069 INFO    ] 200
[2026-08-25 11:57:33,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:33,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:57:33,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:57:33,160.160 INFO    ] No camera update needed
[2026-08-25 11:57:33,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:57:33,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:57:33,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:57:33,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:57:35,214.214 INFO    ] ================================================
[2026-08-25 11:57:35,229.229 INFO    ] Launching Daemon at Tue Aug 25 11:57:35 IST 2026
[2026-08-25 11:57:35,240.240 INFO    ] ================================================
[2026-08-25 11:57:35,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:57:35
[2026-08-25 11:57:36,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:57:36,665.665 INFO    ] Initializing speech engine...
[2026-08-25 11:57:36,668.668 INFO    ] 2026-08-25 11:57:36
[2026-08-25 11:57:36,947.947 INFO    ] 2026-08-25 11:57:36
[2026-08-25 11:57:36,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:57:37,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:57:37,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:57:37,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:57:37,323.323 INFO    ] time= 25/08/2026 11:57:37
[2026-08-25 11:57:37,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:57:37,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:57:37,508.508 INFO    ] No existing commands found in stream
[2026-08-25 11:57:42,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:57:42,533.533 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 11:57:45,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 11:57:45,689.689 INFO    ] Checking for system updates...
[2026-08-25 11:57:45,724.724 INFO    ] 200
[2026-08-25 11:57:45,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:45,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:45,782.782 INFO    ] No update needed
[2026-08-25 11:57:45,785.785 INFO    ] Checking for camera pi updates...
[2026-08-25 11:57:45,823.823 INFO    ] 200
[2026-08-25 11:57:45,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:45,866.866 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:57:45,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:45,917.917 INFO    ] No camera update needed
[2026-08-25 11:57:45,919.919 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:57:45,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:57:45,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:57:45,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:57:47,972.972 INFO    ] ================================================
[2026-08-25 11:57:47,987.987 INFO    ] Launching Daemon at Tue Aug 25 11:57:47 IST 2026
[2026-08-25 11:57:48,998.998 INFO    ] ================================================
[2026-08-25 11:57:48,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:57:48
[2026-08-25 11:57:49,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:57:49,401.401 INFO    ] Initializing speech engine...
[2026-08-25 11:57:49,409.409 INFO    ] 2026-08-25 11:57:49
[2026-08-25 11:57:49,712.712 INFO    ] 2026-08-25 11:57:49
[2026-08-25 11:57:49,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:57:49,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:57:49,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:57:50,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:57:50,118.118 INFO    ] time= 25/08/2026 11:57:50
[2026-08-25 11:57:50,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:57:50,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:57:50,228.228 INFO    ] No existing commands found in stream
[2026-08-25 11:57:55,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:57:55,244.244 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 11:57:55,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:57:55,731.731 INFO    ] Checking for system updates...
[2026-08-25 11:57:55,771.771 INFO    ] 200
[2026-08-25 11:57:55,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:55,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:55,837.837 INFO    ] No update needed
[2026-08-25 11:57:55,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 11:57:55,872.872 INFO    ] 200
[2026-08-25 11:57:55,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:57:55,916.916 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:57:55,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:57:55,967.967 INFO    ] No camera update needed
[2026-08-25 11:57:55,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:57:55,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:57:55,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:57:55,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:57:58,026.026 INFO    ] ================================================
[2026-08-25 11:57:58,041.041 INFO    ] Launching Daemon at Tue Aug 25 11:57:58 IST 2026
[2026-08-25 11:57:58,052.052 INFO    ] ================================================
[2026-08-25 11:57:58,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:57:58
[2026-08-25 11:57:59,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:57:59,718.718 INFO    ] Initializing speech engine...
[2026-08-25 11:57:59,729.729 INFO    ] 2026-08-25 11:57:59
[2026-08-25 11:58:00,016.016 INFO    ] 2026-08-25 11:57:59
[2026-08-25 11:58:00,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:58:00,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:58:00,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:58:00,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:58:00,504.504 INFO    ] time= 25/08/2026 11:58:00
[2026-08-25 11:58:00,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:58:00,560.560 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:58:00,704.704 INFO    ] No existing commands found in stream
[2026-08-25 11:58:05,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:58:05,724.724 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 11:58:06,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:58:06,691.691 INFO    ] Checking for system updates...
[2026-08-25 11:58:06,728.728 INFO    ] 200
[2026-08-25 11:58:06,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:06,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:58:06,801.801 INFO    ] No update needed
[2026-08-25 11:58:06,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 11:58:06,845.845 INFO    ] 200
[2026-08-25 11:58:06,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:06,895.895 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:58:06,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:58:06,951.951 INFO    ] No camera update needed
[2026-08-25 11:58:06,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:58:06,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:58:06,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:58:06,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:58:09,009.009 INFO    ] ================================================
[2026-08-25 11:58:09,024.024 INFO    ] Launching Daemon at Tue Aug 25 11:58:09 IST 2026
[2026-08-25 11:58:09,035.035 INFO    ] ================================================
[2026-08-25 11:58:09,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:58:09
[2026-08-25 11:58:10,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:58:10,435.435 INFO    ] Initializing speech engine...
[2026-08-25 11:58:10,442.442 INFO    ] 2026-08-25 11:58:10
[2026-08-25 11:58:10,733.733 INFO    ] 2026-08-25 11:58:10
[2026-08-25 11:58:10,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:58:10,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:58:10,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:58:11,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:58:11,167.167 INFO    ] time= 25/08/2026 11:58:11
[2026-08-25 11:58:11,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:58:11,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:58:11,320.320 INFO    ] No existing commands found in stream
[2026-08-25 11:58:16,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:58:16,348.348 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 11:58:19,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 11:58:19,561.561 INFO    ] Checking for system updates...
[2026-08-25 11:58:19,596.596 INFO    ] 200
[2026-08-25 11:58:19,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:19,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:58:19,662.662 INFO    ] No update needed
[2026-08-25 11:58:19,664.664 INFO    ] Checking for camera pi updates...
[2026-08-25 11:58:19,697.697 INFO    ] 200
[2026-08-25 11:58:19,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:19,739.739 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:58:19,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:58:19,793.793 INFO    ] No camera update needed
[2026-08-25 11:58:19,795.795 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:58:19,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:58:19,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:58:19,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:58:21,849.849 INFO    ] ================================================
[2026-08-25 11:58:21,864.864 INFO    ] Launching Daemon at Tue Aug 25 11:58:21 IST 2026
[2026-08-25 11:58:21,874.874 INFO    ] ================================================
[2026-08-25 11:58:22,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:58:22
[2026-08-25 11:58:23,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:58:23,307.307 INFO    ] Initializing speech engine...
[2026-08-25 11:58:23,317.317 INFO    ] 2026-08-25 11:58:23
[2026-08-25 11:58:23,563.563 INFO    ] 2026-08-25 11:58:23
[2026-08-25 11:58:23,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:58:23,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:58:23,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:58:23,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:58:24,009.009 INFO    ] time= 25/08/2026 11:58:23
[2026-08-25 11:58:24,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:58:24,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:58:24,272.272 INFO    ] No existing commands found in stream
[2026-08-25 11:58:29,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:58:29,288.288 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 11:58:32,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 11:58:32,363.363 INFO    ] Checking for system updates...
[2026-08-25 11:58:32,406.406 INFO    ] 200
[2026-08-25 11:58:32,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:32,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:58:32,469.469 INFO    ] No update needed
[2026-08-25 11:58:32,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 11:58:32,508.508 INFO    ] 200
[2026-08-25 11:58:32,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:32,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:58:32,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:58:32,625.625 INFO    ] No camera update needed
[2026-08-25 11:58:32,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:58:32,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:58:32,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:58:32,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:58:34,685.685 INFO    ] ================================================
[2026-08-25 11:58:34,700.700 INFO    ] Launching Daemon at Tue Aug 25 11:58:34 IST 2026
[2026-08-25 11:58:34,711.711 INFO    ] ================================================
[2026-08-25 11:58:35,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:58:35
[2026-08-25 11:58:35,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:58:36,157.157 INFO    ] Initializing speech engine...
[2026-08-25 11:58:36,164.164 INFO    ] 2026-08-25 11:58:36
[2026-08-25 11:58:36,461.461 INFO    ] 2026-08-25 11:58:36
[2026-08-25 11:58:36,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:58:36,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:58:36,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:58:36,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:58:36,843.843 INFO    ] time= 25/08/2026 11:58:36
[2026-08-25 11:58:36,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:58:36,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:58:36,976.976 INFO    ] No existing commands found in stream
[2026-08-25 11:58:41,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:58:41,994.994 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 11:58:45,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:58:45,058.058 INFO    ] Checking for system updates...
[2026-08-25 11:58:45,097.097 INFO    ] 200
[2026-08-25 11:58:45,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:45,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:58:45,156.156 INFO    ] No update needed
[2026-08-25 11:58:45,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 11:58:45,191.191 INFO    ] 200
[2026-08-25 11:58:45,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:45,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:58:45,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:58:45,281.281 INFO    ] No camera update needed
[2026-08-25 11:58:45,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:58:45,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:58:45,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:58:45,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:58:47,336.336 INFO    ] ================================================
[2026-08-25 11:58:47,351.351 INFO    ] Launching Daemon at Tue Aug 25 11:58:47 IST 2026
[2026-08-25 11:58:47,362.362 INFO    ] ================================================
[2026-08-25 11:58:48,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:58:48
[2026-08-25 11:58:48,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:58:49,005.005 INFO    ] Initializing speech engine...
[2026-08-25 11:58:49,019.019 INFO    ] 2026-08-25 11:58:49
[2026-08-25 11:58:49,295.295 INFO    ] 2026-08-25 11:58:49
[2026-08-25 11:58:49,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:58:49,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:58:49,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:58:49,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:58:49,780.780 INFO    ] time= 25/08/2026 11:58:49
[2026-08-25 11:58:49,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:58:49,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:58:50,007.007 INFO    ] No existing commands found in stream
[2026-08-25 11:58:55,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:58:55,028.028 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 11:58:55,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:58:55,586.586 INFO    ] Checking for system updates...
[2026-08-25 11:58:55,621.621 INFO    ] 200
[2026-08-25 11:58:55,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:55,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:58:55,686.686 INFO    ] No update needed
[2026-08-25 11:58:55,689.689 INFO    ] Checking for camera pi updates...
[2026-08-25 11:58:55,727.727 INFO    ] 200
[2026-08-25 11:58:55,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:58:55,770.770 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:58:55,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:58:55,894.894 INFO    ] No camera update needed
[2026-08-25 11:58:55,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:58:55,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:58:55,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:58:55,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:58:57,948.948 INFO    ] ================================================
[2026-08-25 11:58:57,963.963 INFO    ] Launching Daemon at Tue Aug 25 11:58:57 IST 2026
[2026-08-25 11:58:57,973.973 INFO    ] ================================================
[2026-08-25 11:58:58,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:58:58
[2026-08-25 11:58:59,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:58:59,624.624 INFO    ] Initializing speech engine...
[2026-08-25 11:58:59,634.634 INFO    ] 2026-08-25 11:58:59
[2026-08-25 11:58:59,932.932 INFO    ] 2026-08-25 11:58:59
[2026-08-25 11:59:00,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:59:00,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:59:00,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:59:00,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:59:00,406.406 INFO    ] time= 25/08/2026 11:59:00
[2026-08-25 11:59:00,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:59:00,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:59:00,631.631 INFO    ] No existing commands found in stream
[2026-08-25 11:59:05,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:59:05,649.649 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 11:59:09,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:59:09,733.733 INFO    ] Checking for system updates...
[2026-08-25 11:59:09,770.770 INFO    ] 200
[2026-08-25 11:59:09,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:09,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:59:09,827.827 INFO    ] No update needed
[2026-08-25 11:59:09,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 11:59:09,867.867 INFO    ] 200
[2026-08-25 11:59:09,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:09,910.910 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:59:09,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:59:09,965.965 INFO    ] No camera update needed
[2026-08-25 11:59:09,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:59:09,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:59:09,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:59:09,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:59:12,021.021 INFO    ] ================================================
[2026-08-25 11:59:12,036.036 INFO    ] Launching Daemon at Tue Aug 25 11:59:12 IST 2026
[2026-08-25 11:59:12,047.047 INFO    ] ================================================
[2026-08-25 11:59:12,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:59:12
[2026-08-25 11:59:13,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:59:13,681.681 INFO    ] Initializing speech engine...
[2026-08-25 11:59:13,696.696 INFO    ] 2026-08-25 11:59:13
[2026-08-25 11:59:13,965.965 INFO    ] 2026-08-25 11:59:13
[2026-08-25 11:59:14,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:59:14,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:59:14,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:59:14,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:59:14,448.448 INFO    ] time= 25/08/2026 11:59:14
[2026-08-25 11:59:14,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:59:14,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:59:14,669.669 INFO    ] No existing commands found in stream
[2026-08-25 11:59:19,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:59:19,698.698 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 11:59:20,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 11:59:20,201.201 INFO    ] Checking for system updates...
[2026-08-25 11:59:20,238.238 INFO    ] 200
[2026-08-25 11:59:20,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:20,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:59:20,296.296 INFO    ] No update needed
[2026-08-25 11:59:20,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 11:59:20,332.332 INFO    ] 200
[2026-08-25 11:59:20,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:20,376.376 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:59:20,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:59:20,424.424 INFO    ] No camera update needed
[2026-08-25 11:59:20,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:59:20,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:59:20,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:59:20,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:59:22,478.478 INFO    ] ================================================
[2026-08-25 11:59:22,493.493 INFO    ] Launching Daemon at Tue Aug 25 11:59:22 IST 2026
[2026-08-25 11:59:22,504.504 INFO    ] ================================================
[2026-08-25 11:59:23,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:59:23
[2026-08-25 11:59:23,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:59:23,925.925 INFO    ] Initializing speech engine...
[2026-08-25 11:59:23,934.934 INFO    ] 2026-08-25 11:59:23
[2026-08-25 11:59:24,184.184 INFO    ] 2026-08-25 11:59:24
[2026-08-25 11:59:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:59:24,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:59:24,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:59:24,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:59:24,677.677 INFO    ] time= 25/08/2026 11:59:24
[2026-08-25 11:59:24,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:59:24,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:59:24,882.882 INFO    ] No existing commands found in stream
[2026-08-25 11:59:29,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:59:29,910.910 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 11:59:35,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 11:59:35,425.425 INFO    ] Checking for system updates...
[2026-08-25 11:59:35,465.465 INFO    ] 200
[2026-08-25 11:59:35,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:35,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:59:35,530.530 INFO    ] No update needed
[2026-08-25 11:59:35,532.532 INFO    ] Checking for camera pi updates...
[2026-08-25 11:59:35,566.566 INFO    ] 200
[2026-08-25 11:59:35,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:35,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:59:35,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 11:59:35,659.659 INFO    ] No camera update needed
[2026-08-25 11:59:35,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:59:35,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:59:35,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:59:35,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:59:37,716.716 INFO    ] ================================================
[2026-08-25 11:59:37,732.732 INFO    ] Launching Daemon at Tue Aug 25 11:59:37 IST 2026
[2026-08-25 11:59:37,742.742 INFO    ] ================================================
[2026-08-25 11:59:38,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:59:38
[2026-08-25 11:59:39,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:59:39,402.402 INFO    ] Initializing speech engine...
[2026-08-25 11:59:39,413.413 INFO    ] 2026-08-25 11:59:39
[2026-08-25 11:59:39,726.726 INFO    ] 2026-08-25 11:59:39
[2026-08-25 11:59:39,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:59:40,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:59:40,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:59:40,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:59:40,232.232 INFO    ] time= 25/08/2026 11:59:40
[2026-08-25 11:59:40,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:59:40,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:59:40,452.452 INFO    ] No existing commands found in stream
[2026-08-25 11:59:45,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:59:45,481.481 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 11:59:47,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 11:59:47,412.412 INFO    ] Checking for system updates...
[2026-08-25 11:59:47,455.455 INFO    ] 200
[2026-08-25 11:59:47,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:47,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:59:47,517.517 INFO    ] No update needed
[2026-08-25 11:59:47,520.520 INFO    ] Checking for camera pi updates...
[2026-08-25 11:59:47,553.553 INFO    ] 200
[2026-08-25 11:59:47,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 11:59:47,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 11:59:47,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 11:59:47,649.649 INFO    ] No camera update needed
[2026-08-25 11:59:47,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 11:59:47,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 11:59:47,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 11:59:47,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 11:59:49,702.702 INFO    ] ================================================
[2026-08-25 11:59:49,717.717 INFO    ] Launching Daemon at Tue Aug 25 11:59:49 IST 2026
[2026-08-25 11:59:49,728.728 INFO    ] ================================================
[2026-08-25 11:59:50,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 11:59:50
[2026-08-25 11:59:51,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 11:59:51,392.392 INFO    ] Initializing speech engine...
[2026-08-25 11:59:51,406.406 INFO    ] 2026-08-25 11:59:51
[2026-08-25 11:59:51,723.723 INFO    ] 2026-08-25 11:59:51
[2026-08-25 11:59:51,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 11:59:51,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 11:59:51,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 11:59:52,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 11:59:52,187.187 INFO    ] time= 25/08/2026 11:59:52
[2026-08-25 11:59:52,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 11:59:52,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 11:59:52,400.400 INFO    ] No existing commands found in stream
[2026-08-25 11:59:57,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 11:59:57,419.419 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 12:00:00,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:00:00,736.736 INFO    ] Checking for system updates...
[2026-08-25 12:00:00,779.779 INFO    ] 200
[2026-08-25 12:00:00,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:00,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:00:00,839.839 INFO    ] No update needed
[2026-08-25 12:00:00,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 12:00:00,881.881 INFO    ] 200
[2026-08-25 12:00:00,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:00,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:00:00,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:00:00,993.993 INFO    ] No camera update needed
[2026-08-25 12:00:00,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:00:00,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:00:01,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:00:01,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:00:03,098.098 INFO    ] ================================================
[2026-08-25 12:00:03,201.201 INFO    ] Launching Daemon at Tue Aug 25 12:00:03 IST 2026
[2026-08-25 12:00:03,293.293 INFO    ] ================================================
[2026-08-25 12:00:04,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:00:04
[2026-08-25 12:00:06,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:00:06,714.714 INFO    ] Initializing speech engine...
[2026-08-25 12:00:06,720.720 INFO    ] 2026-08-25 12:00:06
[2026-08-25 12:00:06,998.998 INFO    ] 2026-08-25 12:00:06
[2026-08-25 12:00:07,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:00:07,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:00:07,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:00:07,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:00:07,478.478 INFO    ] time= 25/08/2026 12:00:07
[2026-08-25 12:00:07,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:00:07,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:00:07,630.630 INFO    ] No existing commands found in stream
[2026-08-25 12:00:12,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:00:12,659.659 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 12:00:14,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:00:14,638.638 INFO    ] Checking for system updates...
[2026-08-25 12:00:14,674.674 INFO    ] 200
[2026-08-25 12:00:14,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:14,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:00:14,731.731 INFO    ] No update needed
[2026-08-25 12:00:14,733.733 INFO    ] Checking for camera pi updates...
[2026-08-25 12:00:14,771.771 INFO    ] 200
[2026-08-25 12:00:14,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:14,820.820 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:00:14,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:00:14,866.866 INFO    ] No camera update needed
[2026-08-25 12:00:14,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:00:14,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:00:14,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:00:14,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:00:16,921.921 INFO    ] ================================================
[2026-08-25 12:00:16,936.936 INFO    ] Launching Daemon at Tue Aug 25 12:00:16 IST 2026
[2026-08-25 12:00:16,948.948 INFO    ] ================================================
[2026-08-25 12:00:17,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:00:17
[2026-08-25 12:00:18,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:00:18,355.355 INFO    ] Initializing speech engine...
[2026-08-25 12:00:18,361.361 INFO    ] 2026-08-25 12:00:18
[2026-08-25 12:00:18,661.661 INFO    ] 2026-08-25 12:00:18
[2026-08-25 12:00:18,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:00:18,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:00:18,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:00:19,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:00:19,085.085 INFO    ] time= 25/08/2026 12:00:19
[2026-08-25 12:00:19,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:00:19,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:00:19,176.176 INFO    ] No existing commands found in stream
[2026-08-25 12:00:24,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:00:24,190.190 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 12:00:28,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:00:28,431.431 INFO    ] Checking for system updates...
[2026-08-25 12:00:28,468.468 INFO    ] 200
[2026-08-25 12:00:28,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:28,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:00:28,527.527 INFO    ] No update needed
[2026-08-25 12:00:28,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 12:00:28,564.564 INFO    ] 200
[2026-08-25 12:00:28,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:28,619.619 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:00:28,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:00:28,689.689 INFO    ] No camera update needed
[2026-08-25 12:00:28,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:00:28,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:00:28,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:00:28,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:00:30,747.747 INFO    ] ================================================
[2026-08-25 12:00:30,763.763 INFO    ] Launching Daemon at Tue Aug 25 12:00:30 IST 2026
[2026-08-25 12:00:30,774.774 INFO    ] ================================================
[2026-08-25 12:00:31,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:00:31
[2026-08-25 12:00:31,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:00:32,238.238 INFO    ] Initializing speech engine...
[2026-08-25 12:00:32,248.248 INFO    ] 2026-08-25 12:00:32
[2026-08-25 12:00:32,515.515 INFO    ] 2026-08-25 12:00:32
[2026-08-25 12:00:32,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:00:32,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:00:32,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:00:32,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:00:32,919.919 INFO    ] time= 25/08/2026 12:00:32
[2026-08-25 12:00:32,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:00:32,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:00:33,120.120 INFO    ] No existing commands found in stream
[2026-08-25 12:00:38,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:00:38,144.144 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 12:00:39,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:00:39,912.912 INFO    ] Checking for system updates...
[2026-08-25 12:00:39,952.952 INFO    ] 200
[2026-08-25 12:00:39,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:40,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:00:40,022.022 INFO    ] No update needed
[2026-08-25 12:00:40,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 12:00:40,061.061 INFO    ] 200
[2026-08-25 12:00:40,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:40,125.125 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:00:40,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:00:40,188.188 INFO    ] No camera update needed
[2026-08-25 12:00:40,191.191 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:00:40,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:00:40,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:00:40,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:00:42,245.245 INFO    ] ================================================
[2026-08-25 12:00:42,260.260 INFO    ] Launching Daemon at Tue Aug 25 12:00:42 IST 2026
[2026-08-25 12:00:42,272.272 INFO    ] ================================================
[2026-08-25 12:00:42,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:00:42
[2026-08-25 12:00:43,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:00:43,771.771 INFO    ] Initializing speech engine...
[2026-08-25 12:00:43,778.778 INFO    ] 2026-08-25 12:00:43
[2026-08-25 12:00:44,083.083 INFO    ] 2026-08-25 12:00:44
[2026-08-25 12:00:44,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:00:44,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:00:44,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:00:44,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:00:44,592.592 INFO    ] time= 25/08/2026 12:00:44
[2026-08-25 12:00:44,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:00:44,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:00:44,811.811 INFO    ] No existing commands found in stream
[2026-08-25 12:00:49,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:00:49,826.826 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 12:00:51,165.165 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:00:51,168.168 INFO    ] Checking for system updates...
[2026-08-25 12:00:51,208.208 INFO    ] 200
[2026-08-25 12:00:51,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:51,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:00:51,273.273 INFO    ] No update needed
[2026-08-25 12:00:51,276.276 INFO    ] Checking for camera pi updates...
[2026-08-25 12:00:51,310.310 INFO    ] 200
[2026-08-25 12:00:51,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:00:51,354.354 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:00:51,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:00:51,410.410 INFO    ] No camera update needed
[2026-08-25 12:00:51,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:00:51,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:00:51,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:00:51,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:00:53,470.470 INFO    ] ================================================
[2026-08-25 12:00:53,486.486 INFO    ] Launching Daemon at Tue Aug 25 12:00:53 IST 2026
[2026-08-25 12:00:53,497.497 INFO    ] ================================================
[2026-08-25 12:00:54,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:00:54
[2026-08-25 12:00:54,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:00:55,178.178 INFO    ] Initializing speech engine...
[2026-08-25 12:00:55,192.192 INFO    ] 2026-08-25 12:00:55
[2026-08-25 12:00:55,509.509 INFO    ] 2026-08-25 12:00:55
[2026-08-25 12:00:55,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:00:55,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:00:55,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:00:56,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:00:56,033.033 INFO    ] time= 25/08/2026 12:00:56
[2026-08-25 12:00:56,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:00:56,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:00:56,177.177 INFO    ] No existing commands found in stream
[2026-08-25 12:01:01,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:01:01,210.210 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 12:01:05,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:01:05,187.187 INFO    ] Checking for system updates...
[2026-08-25 12:01:05,224.224 INFO    ] 200
[2026-08-25 12:01:05,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:05,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:01:05,287.287 INFO    ] No update needed
[2026-08-25 12:01:05,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 12:01:05,323.323 INFO    ] 200
[2026-08-25 12:01:05,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:05,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:01:05,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:01:05,427.427 INFO    ] No camera update needed
[2026-08-25 12:01:05,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:01:05,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:01:05,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:01:05,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:01:07,483.483 INFO    ] ================================================
[2026-08-25 12:01:07,498.498 INFO    ] Launching Daemon at Tue Aug 25 12:01:07 IST 2026
[2026-08-25 12:01:07,509.509 INFO    ] ================================================
[2026-08-25 12:01:08,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:01:08
[2026-08-25 12:01:08,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:01:08,939.939 INFO    ] Initializing speech engine...
[2026-08-25 12:01:08,948.948 INFO    ] 2026-08-25 12:01:08
[2026-08-25 12:01:09,236.236 INFO    ] 2026-08-25 12:01:09
[2026-08-25 12:01:09,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:01:09,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:01:09,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:01:09,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:01:09,712.712 INFO    ] time= 25/08/2026 12:01:09
[2026-08-25 12:01:09,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:01:09,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:01:09,914.914 INFO    ] No existing commands found in stream
[2026-08-25 12:01:14,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:01:14,928.928 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 12:01:19,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:01:19,191.191 INFO    ] Checking for system updates...
[2026-08-25 12:01:19,227.227 INFO    ] 200
[2026-08-25 12:01:19,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:19,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:01:19,288.288 INFO    ] No update needed
[2026-08-25 12:01:19,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 12:01:19,326.326 INFO    ] 200
[2026-08-25 12:01:19,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:19,369.369 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:01:19,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:01:19,418.418 INFO    ] No camera update needed
[2026-08-25 12:01:19,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:01:19,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:01:19,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:01:19,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:01:21,473.473 INFO    ] ================================================
[2026-08-25 12:01:21,488.488 INFO    ] Launching Daemon at Tue Aug 25 12:01:21 IST 2026
[2026-08-25 12:01:21,505.505 INFO    ] ================================================
[2026-08-25 12:01:22,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:01:22
[2026-08-25 12:01:22,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:01:23,058.058 INFO    ] Initializing speech engine...
[2026-08-25 12:01:23,067.067 INFO    ] 2026-08-25 12:01:23
[2026-08-25 12:01:23,335.335 INFO    ] 2026-08-25 12:01:23
[2026-08-25 12:01:23,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:01:23,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:01:23,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:01:23,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:01:23,828.828 INFO    ] time= 25/08/2026 12:01:23
[2026-08-25 12:01:23,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:01:23,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:01:24,029.029 INFO    ] No existing commands found in stream
[2026-08-25 12:01:29,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:01:29,053.053 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 12:01:30,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:01:30,605.605 INFO    ] Checking for system updates...
[2026-08-25 12:01:30,641.641 INFO    ] 200
[2026-08-25 12:01:30,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:30,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:01:30,700.700 INFO    ] No update needed
[2026-08-25 12:01:30,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 12:01:30,739.739 INFO    ] 200
[2026-08-25 12:01:30,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:30,783.783 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:01:30,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:01:30,841.841 INFO    ] No camera update needed
[2026-08-25 12:01:30,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:01:30,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:01:30,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:01:30,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:01:32,900.900 INFO    ] ================================================
[2026-08-25 12:01:32,916.916 INFO    ] Launching Daemon at Tue Aug 25 12:01:32 IST 2026
[2026-08-25 12:01:32,927.927 INFO    ] ================================================
[2026-08-25 12:01:33,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:01:33
[2026-08-25 12:01:34,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:01:34,486.486 INFO    ] Initializing speech engine...
[2026-08-25 12:01:34,496.496 INFO    ] 2026-08-25 12:01:34
[2026-08-25 12:01:34,753.753 INFO    ] 2026-08-25 12:01:34
[2026-08-25 12:01:34,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:01:35,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:01:35,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:01:35,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:01:35,263.263 INFO    ] time= 25/08/2026 12:01:35
[2026-08-25 12:01:35,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:01:35,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:01:35,470.470 INFO    ] No existing commands found in stream
[2026-08-25 12:01:40,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:01:40,491.491 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 12:01:44,862.862 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:01:44,865.865 INFO    ] Checking for system updates...
[2026-08-25 12:01:44,904.904 INFO    ] 200
[2026-08-25 12:01:44,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:44,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:01:44,963.963 INFO    ] No update needed
[2026-08-25 12:01:44,966.966 INFO    ] Checking for camera pi updates...
[2026-08-25 12:01:45,000.000 INFO    ] 200
[2026-08-25 12:01:45,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:45,043.043 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:01:45,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:01:45,189.189 INFO    ] No camera update needed
[2026-08-25 12:01:45,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:01:45,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:01:45,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:01:45,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:01:47,246.246 INFO    ] ================================================
[2026-08-25 12:01:47,261.261 INFO    ] Launching Daemon at Tue Aug 25 12:01:47 IST 2026
[2026-08-25 12:01:47,272.272 INFO    ] ================================================
[2026-08-25 12:01:47,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:01:47
[2026-08-25 12:01:48,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:01:48,822.822 INFO    ] Initializing speech engine...
[2026-08-25 12:01:48,830.830 INFO    ] 2026-08-25 12:01:48
[2026-08-25 12:01:49,097.097 INFO    ] 2026-08-25 12:01:49
[2026-08-25 12:01:49,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:01:49,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:01:49,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:01:49,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:01:49,581.581 INFO    ] time= 25/08/2026 12:01:49
[2026-08-25 12:01:49,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:01:49,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:01:49,800.800 INFO    ] No existing commands found in stream
[2026-08-25 12:01:54,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:01:54,817.817 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 12:01:55,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:01:55,769.769 INFO    ] Checking for system updates...
[2026-08-25 12:01:55,805.805 INFO    ] 200
[2026-08-25 12:01:55,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:55,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:01:55,863.863 INFO    ] No update needed
[2026-08-25 12:01:55,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 12:01:55,902.902 INFO    ] 200
[2026-08-25 12:01:55,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:01:55,949.949 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:01:56,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:01:56,004.004 INFO    ] No camera update needed
[2026-08-25 12:01:56,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:01:56,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:01:56,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:01:56,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:01:58,060.060 INFO    ] ================================================
[2026-08-25 12:01:58,075.075 INFO    ] Launching Daemon at Tue Aug 25 12:01:58 IST 2026
[2026-08-25 12:01:58,085.085 INFO    ] ================================================
[2026-08-25 12:01:58,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:01:58
[2026-08-25 12:01:59,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:01:59,528.528 INFO    ] Initializing speech engine...
[2026-08-25 12:01:59,535.535 INFO    ] 2026-08-25 12:01:59
[2026-08-25 12:01:59,826.826 INFO    ] 2026-08-25 12:01:59
[2026-08-25 12:01:59,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:02:00,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:02:00,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:02:00,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:02:00,209.209 INFO    ] time= 25/08/2026 12:02:00
[2026-08-25 12:02:00,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:02:00,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:02:00,312.312 INFO    ] No existing commands found in stream
[2026-08-25 12:02:05,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:02:05,328.328 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 12:02:09,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:02:09,070.070 INFO    ] Checking for system updates...
[2026-08-25 12:02:09,107.107 INFO    ] 200
[2026-08-25 12:02:09,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:09,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:09,164.164 INFO    ] No update needed
[2026-08-25 12:02:09,167.167 INFO    ] Checking for camera pi updates...
[2026-08-25 12:02:09,201.201 INFO    ] 200
[2026-08-25 12:02:09,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:09,248.248 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:02:09,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:09,298.298 INFO    ] No camera update needed
[2026-08-25 12:02:09,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:02:09,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:02:09,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:02:09,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:02:11,353.353 INFO    ] ================================================
[2026-08-25 12:02:11,368.368 INFO    ] Launching Daemon at Tue Aug 25 12:02:11 IST 2026
[2026-08-25 12:02:11,379.379 INFO    ] ================================================
[2026-08-25 12:02:11,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:02:11
[2026-08-25 12:02:12,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:02:12,812.812 INFO    ] Initializing speech engine...
[2026-08-25 12:02:12,822.822 INFO    ] 2026-08-25 12:02:12
[2026-08-25 12:02:13,093.093 INFO    ] 2026-08-25 12:02:13
[2026-08-25 12:02:13,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:02:13,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:02:13,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:02:13,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:02:13,518.518 INFO    ] time= 25/08/2026 12:02:13
[2026-08-25 12:02:13,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:02:13,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:02:13,711.711 INFO    ] No existing commands found in stream
[2026-08-25 12:02:18,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:02:18,745.745 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 12:02:19,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:02:19,472.472 INFO    ] Checking for system updates...
[2026-08-25 12:02:19,508.508 INFO    ] 200
[2026-08-25 12:02:19,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:19,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:19,567.567 INFO    ] No update needed
[2026-08-25 12:02:19,570.570 INFO    ] Checking for camera pi updates...
[2026-08-25 12:02:19,604.604 INFO    ] 200
[2026-08-25 12:02:19,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:19,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:02:19,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:19,702.702 INFO    ] No camera update needed
[2026-08-25 12:02:19,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:02:19,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:02:19,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:02:19,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:02:21,757.757 INFO    ] ================================================
[2026-08-25 12:02:21,772.772 INFO    ] Launching Daemon at Tue Aug 25 12:02:21 IST 2026
[2026-08-25 12:02:21,783.783 INFO    ] ================================================
[2026-08-25 12:02:22,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:02:22
[2026-08-25 12:02:22,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:02:23,291.291 INFO    ] Initializing speech engine...
[2026-08-25 12:02:23,300.300 INFO    ] 2026-08-25 12:02:23
[2026-08-25 12:02:23,583.583 INFO    ] 2026-08-25 12:02:23
[2026-08-25 12:02:23,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:02:23,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:02:23,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:02:24,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:02:24,121.121 INFO    ] time= 25/08/2026 12:02:24
[2026-08-25 12:02:24,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:02:24,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:02:24,275.275 INFO    ] No existing commands found in stream
[2026-08-25 12:02:29,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:02:29,298.298 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 12:02:31,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:02:31,370.370 INFO    ] Checking for system updates...
[2026-08-25 12:02:31,407.407 INFO    ] 200
[2026-08-25 12:02:31,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:31,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:31,464.464 INFO    ] No update needed
[2026-08-25 12:02:31,466.466 INFO    ] Checking for camera pi updates...
[2026-08-25 12:02:31,500.500 INFO    ] 200
[2026-08-25 12:02:31,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:31,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:02:31,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:31,590.590 INFO    ] No camera update needed
[2026-08-25 12:02:31,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:02:31,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:02:31,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:02:31,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:02:33,645.645 INFO    ] ================================================
[2026-08-25 12:02:33,661.661 INFO    ] Launching Daemon at Tue Aug 25 12:02:33 IST 2026
[2026-08-25 12:02:33,678.678 INFO    ] ================================================
[2026-08-25 12:02:34,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:02:34
[2026-08-25 12:02:34,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:02:35,115.115 INFO    ] Initializing speech engine...
[2026-08-25 12:02:35,137.137 INFO    ] 2026-08-25 12:02:35
[2026-08-25 12:02:35,424.424 INFO    ] 2026-08-25 12:02:35
[2026-08-25 12:02:35,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:02:35,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:02:35,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:02:35,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:02:35,821.821 INFO    ] time= 25/08/2026 12:02:35
[2026-08-25 12:02:35,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:02:35,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:02:35,944.944 INFO    ] No existing commands found in stream
[2026-08-25 12:02:40,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:02:40,982.982 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 12:02:42,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:02:42,771.771 INFO    ] Checking for system updates...
[2026-08-25 12:02:42,807.807 INFO    ] 200
[2026-08-25 12:02:42,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:42,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:02:42,869.869 INFO    ] No update needed
[2026-08-25 12:02:42,872.872 INFO    ] Checking for camera pi updates...
[2026-08-25 12:02:42,905.905 INFO    ] 200
[2026-08-25 12:02:42,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:42,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:02:42,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:02:42,999.999 INFO    ] No camera update needed
[2026-08-25 12:02:43,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:02:43,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:02:43,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:02:43,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:02:45,053.053 INFO    ] ================================================
[2026-08-25 12:02:45,067.067 INFO    ] Launching Daemon at Tue Aug 25 12:02:45 IST 2026
[2026-08-25 12:02:45,078.078 INFO    ] ================================================
[2026-08-25 12:02:45,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:02:45
[2026-08-25 12:02:46,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:02:46,551.551 INFO    ] Initializing speech engine...
[2026-08-25 12:02:46,560.560 INFO    ] 2026-08-25 12:02:46
[2026-08-25 12:02:46,808.808 INFO    ] 2026-08-25 12:02:46
[2026-08-25 12:02:46,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:02:47,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:02:47,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:02:47,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:02:47,262.262 INFO    ] time= 25/08/2026 12:02:47
[2026-08-25 12:02:47,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:02:47,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:02:47,508.508 INFO    ] No existing commands found in stream
[2026-08-25 12:02:52,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:02:52,531.531 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 12:02:54,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:02:54,768.768 INFO    ] Checking for system updates...
[2026-08-25 12:02:54,807.807 INFO    ] 200
[2026-08-25 12:02:54,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:54,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:54,867.867 INFO    ] No update needed
[2026-08-25 12:02:54,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 12:02:54,904.904 INFO    ] 200
[2026-08-25 12:02:54,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:02:54,947.947 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:02:54,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:02:54,997.997 INFO    ] No camera update needed
[2026-08-25 12:02:54,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:02:55,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:02:55,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:02:55,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:02:57,055.055 INFO    ] ================================================
[2026-08-25 12:02:57,070.070 INFO    ] Launching Daemon at Tue Aug 25 12:02:57 IST 2026
[2026-08-25 12:02:57,081.081 INFO    ] ================================================
[2026-08-25 12:02:57,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:02:57
[2026-08-25 12:02:58,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:02:58,521.521 INFO    ] Initializing speech engine...
[2026-08-25 12:02:58,542.542 INFO    ] 2026-08-25 12:02:58
[2026-08-25 12:02:58,810.810 INFO    ] 2026-08-25 12:02:58
[2026-08-25 12:02:58,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:02:59,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:02:59,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:02:59,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:02:59,203.203 INFO    ] time= 25/08/2026 12:02:59
[2026-08-25 12:02:59,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:02:59,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:02:59,312.312 INFO    ] No existing commands found in stream
[2026-08-25 12:03:04,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:03:04,340.340 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 12:03:08,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:03:08,600.600 INFO    ] Checking for system updates...
[2026-08-25 12:03:08,636.636 INFO    ] 200
[2026-08-25 12:03:08,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:08,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:08,693.693 INFO    ] No update needed
[2026-08-25 12:03:08,696.696 INFO    ] Checking for camera pi updates...
[2026-08-25 12:03:08,729.729 INFO    ] 200
[2026-08-25 12:03:08,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:08,777.777 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:03:08,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:08,831.831 INFO    ] No camera update needed
[2026-08-25 12:03:08,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:03:08,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:03:08,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:03:08,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:03:10,887.887 INFO    ] ================================================
[2026-08-25 12:03:10,902.902 INFO    ] Launching Daemon at Tue Aug 25 12:03:10 IST 2026
[2026-08-25 12:03:10,913.913 INFO    ] ================================================
[2026-08-25 12:03:11,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:03:11
[2026-08-25 12:03:12,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:03:12,335.335 INFO    ] Initializing speech engine...
[2026-08-25 12:03:12,341.341 INFO    ] 2026-08-25 12:03:12
[2026-08-25 12:03:12,638.638 INFO    ] 2026-08-25 12:03:12
[2026-08-25 12:03:12,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:03:12,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:03:12,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:03:13,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:03:13,149.149 INFO    ] time= 25/08/2026 12:03:13
[2026-08-25 12:03:13,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:03:13,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:03:13,386.386 INFO    ] No existing commands found in stream
[2026-08-25 12:03:18,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:03:18,404.404 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 12:03:19,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:03:19,562.562 INFO    ] Checking for system updates...
[2026-08-25 12:03:19,599.599 INFO    ] 200
[2026-08-25 12:03:19,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:19,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:19,659.659 INFO    ] No update needed
[2026-08-25 12:03:19,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 12:03:19,696.696 INFO    ] 200
[2026-08-25 12:03:19,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:19,740.740 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:03:19,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:19,793.793 INFO    ] No camera update needed
[2026-08-25 12:03:19,795.795 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:03:19,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:03:19,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:03:19,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:03:21,852.852 INFO    ] ================================================
[2026-08-25 12:03:21,867.867 INFO    ] Launching Daemon at Tue Aug 25 12:03:21 IST 2026
[2026-08-25 12:03:21,877.877 INFO    ] ================================================
[2026-08-25 12:03:22,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:03:22
[2026-08-25 12:03:23,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:03:23,289.289 INFO    ] Initializing speech engine...
[2026-08-25 12:03:23,313.313 INFO    ] 2026-08-25 12:03:23
[2026-08-25 12:03:23,582.582 INFO    ] 2026-08-25 12:03:23
[2026-08-25 12:03:23,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:03:23,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:03:23,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:03:23,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:03:23,996.996 INFO    ] time= 25/08/2026 12:03:23
[2026-08-25 12:03:24,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:03:24,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:03:24,149.149 INFO    ] No existing commands found in stream
[2026-08-25 12:03:29,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:03:29,171.171 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 12:03:33,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:03:33,530.530 INFO    ] Checking for system updates...
[2026-08-25 12:03:33,565.565 INFO    ] 200
[2026-08-25 12:03:33,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:33,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:33,623.623 INFO    ] No update needed
[2026-08-25 12:03:33,626.626 INFO    ] Checking for camera pi updates...
[2026-08-25 12:03:33,662.662 INFO    ] 200
[2026-08-25 12:03:33,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:33,705.705 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:03:33,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:33,766.766 INFO    ] No camera update needed
[2026-08-25 12:03:33,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:03:33,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:03:33,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:03:33,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:03:35,823.823 INFO    ] ================================================
[2026-08-25 12:03:35,838.838 INFO    ] Launching Daemon at Tue Aug 25 12:03:35 IST 2026
[2026-08-25 12:03:35,849.849 INFO    ] ================================================
[2026-08-25 12:03:36,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:03:36
[2026-08-25 12:03:37,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:03:37,282.282 INFO    ] Initializing speech engine...
[2026-08-25 12:03:37,288.288 INFO    ] 2026-08-25 12:03:37
[2026-08-25 12:03:37,557.557 INFO    ] 2026-08-25 12:03:37
[2026-08-25 12:03:37,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:03:37,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:03:37,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:03:37,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:03:38,003.003 INFO    ] time= 25/08/2026 12:03:37
[2026-08-25 12:03:38,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:03:38,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:03:38,263.263 INFO    ] No existing commands found in stream
[2026-08-25 12:03:43,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:03:43,286.286 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 12:03:45,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:03:45,762.762 INFO    ] Checking for system updates...
[2026-08-25 12:03:45,800.800 INFO    ] 200
[2026-08-25 12:03:45,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:45,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:45,859.859 INFO    ] No update needed
[2026-08-25 12:03:45,862.862 INFO    ] Checking for camera pi updates...
[2026-08-25 12:03:45,895.895 INFO    ] 200
[2026-08-25 12:03:45,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:03:45,939.939 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:03:46,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:03:46,002.002 INFO    ] No camera update needed
[2026-08-25 12:03:46,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:03:46,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:03:46,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:03:46,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:03:48,057.057 INFO    ] ================================================
[2026-08-25 12:03:48,072.072 INFO    ] Launching Daemon at Tue Aug 25 12:03:48 IST 2026
[2026-08-25 12:03:48,083.083 INFO    ] ================================================
[2026-08-25 12:03:48,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:03:48
[2026-08-25 12:03:49,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:03:49,489.489 INFO    ] Initializing speech engine...
[2026-08-25 12:03:49,498.498 INFO    ] 2026-08-25 12:03:49
[2026-08-25 12:03:49,788.788 INFO    ] 2026-08-25 12:03:49
[2026-08-25 12:03:49,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:03:50,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:03:50,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:03:50,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:03:50,313.313 INFO    ] time= 25/08/2026 12:03:50
[2026-08-25 12:03:50,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:03:50,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:03:50,576.576 INFO    ] No existing commands found in stream
[2026-08-25 12:03:55,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:03:55,595.595 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 12:04:01,074.074 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:04:01,077.077 INFO    ] Checking for system updates...
[2026-08-25 12:04:01,136.136 INFO    ] 200
[2026-08-25 12:04:01,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:01,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:04:01,200.200 INFO    ] No update needed
[2026-08-25 12:04:01,202.202 INFO    ] Checking for camera pi updates...
[2026-08-25 12:04:01,240.240 INFO    ] 200
[2026-08-25 12:04:01,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:01,286.286 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:04:01,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:04:01,433.433 INFO    ] No camera update needed
[2026-08-25 12:04:01,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:04:01,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:04:01,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:04:01,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:04:03,492.492 INFO    ] ================================================
[2026-08-25 12:04:03,509.509 INFO    ] Launching Daemon at Tue Aug 25 12:04:03 IST 2026
[2026-08-25 12:04:03,521.521 INFO    ] ================================================
[2026-08-25 12:04:04,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:04:04
[2026-08-25 12:04:04,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:04:05,015.015 INFO    ] Initializing speech engine...
[2026-08-25 12:04:05,025.025 INFO    ] 2026-08-25 12:04:05
[2026-08-25 12:04:05,312.312 INFO    ] 2026-08-25 12:04:05
[2026-08-25 12:04:05,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:04:05,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:04:05,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:04:05,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:04:05,804.804 INFO    ] time= 25/08/2026 12:04:05
[2026-08-25 12:04:05,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:04:05,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:04:06,050.050 INFO    ] No existing commands found in stream
[2026-08-25 12:04:11,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:04:11,067.067 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 12:04:14,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:04:14,942.942 INFO    ] Checking for system updates...
[2026-08-25 12:04:14,982.982 INFO    ] 200
[2026-08-25 12:04:14,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:15,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:04:15,083.083 INFO    ] No update needed
[2026-08-25 12:04:15,086.086 INFO    ] Checking for camera pi updates...
[2026-08-25 12:04:15,126.126 INFO    ] 200
[2026-08-25 12:04:15,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:15,169.169 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:04:15,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:04:15,216.216 INFO    ] No camera update needed
[2026-08-25 12:04:15,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:04:15,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:04:15,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:04:15,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:04:17,269.269 INFO    ] ================================================
[2026-08-25 12:04:17,285.285 INFO    ] Launching Daemon at Tue Aug 25 12:04:17 IST 2026
[2026-08-25 12:04:17,296.296 INFO    ] ================================================
[2026-08-25 12:04:17,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:04:17
[2026-08-25 12:04:18,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:04:18,748.748 INFO    ] Initializing speech engine...
[2026-08-25 12:04:18,757.757 INFO    ] 2026-08-25 12:04:18
[2026-08-25 12:04:19,015.015 INFO    ] 2026-08-25 12:04:19
[2026-08-25 12:04:19,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:04:19,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:04:19,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:04:19,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:04:19,466.466 INFO    ] time= 25/08/2026 12:04:19
[2026-08-25 12:04:19,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:04:19,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:04:19,602.602 INFO    ] No existing commands found in stream
[2026-08-25 12:04:24,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:04:24,620.620 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 12:04:27,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:04:27,417.417 INFO    ] Checking for system updates...
[2026-08-25 12:04:27,453.453 INFO    ] 200
[2026-08-25 12:04:27,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:27,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:04:27,511.511 INFO    ] No update needed
[2026-08-25 12:04:27,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 12:04:27,547.547 INFO    ] 200
[2026-08-25 12:04:27,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:27,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:04:27,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:04:27,637.637 INFO    ] No camera update needed
[2026-08-25 12:04:27,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:04:27,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:04:27,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:04:27,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:04:29,690.690 INFO    ] ================================================
[2026-08-25 12:04:29,705.705 INFO    ] Launching Daemon at Tue Aug 25 12:04:29 IST 2026
[2026-08-25 12:04:29,716.716 INFO    ] ================================================
[2026-08-25 12:04:30,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:04:30
[2026-08-25 12:04:30,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:04:31,141.141 INFO    ] Initializing speech engine...
[2026-08-25 12:04:31,150.150 INFO    ] 2026-08-25 12:04:31
[2026-08-25 12:04:31,401.401 INFO    ] 2026-08-25 12:04:31
[2026-08-25 12:04:31,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:04:31,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:04:31,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:04:31,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:04:31,900.900 INFO    ] time= 25/08/2026 12:04:31
[2026-08-25 12:04:31,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:04:31,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:04:32,137.137 INFO    ] No existing commands found in stream
[2026-08-25 12:04:37,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:04:37,174.174 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 12:04:39,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:04:39,248.248 INFO    ] Checking for system updates...
[2026-08-25 12:04:39,284.284 INFO    ] 200
[2026-08-25 12:04:39,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:39,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:04:39,341.341 INFO    ] No update needed
[2026-08-25 12:04:39,343.343 INFO    ] Checking for camera pi updates...
[2026-08-25 12:04:39,377.377 INFO    ] 200
[2026-08-25 12:04:39,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:39,419.419 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:04:39,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:04:39,475.475 INFO    ] No camera update needed
[2026-08-25 12:04:39,478.478 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:04:39,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:04:39,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:04:39,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:04:41,529.529 INFO    ] ================================================
[2026-08-25 12:04:41,544.544 INFO    ] Launching Daemon at Tue Aug 25 12:04:41 IST 2026
[2026-08-25 12:04:41,554.554 INFO    ] ================================================
[2026-08-25 12:04:42,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:04:42
[2026-08-25 12:04:42,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:04:43,187.187 INFO    ] Initializing speech engine...
[2026-08-25 12:04:43,203.203 INFO    ] 2026-08-25 12:04:43
[2026-08-25 12:04:43,477.477 INFO    ] 2026-08-25 12:04:43
[2026-08-25 12:04:43,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:04:43,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:04:43,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:04:43,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:04:43,974.974 INFO    ] time= 25/08/2026 12:04:43
[2026-08-25 12:04:44,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:04:44,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:04:44,186.186 INFO    ] No existing commands found in stream
[2026-08-25 12:04:49,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:04:49,215.215 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 12:04:51,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:04:51,902.902 INFO    ] Checking for system updates...
[2026-08-25 12:04:51,939.939 INFO    ] 200
[2026-08-25 12:04:51,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:51,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:04:52,001.001 INFO    ] No update needed
[2026-08-25 12:04:52,004.004 INFO    ] Checking for camera pi updates...
[2026-08-25 12:04:52,039.039 INFO    ] 200
[2026-08-25 12:04:52,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:04:52,083.083 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:04:52,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:04:52,136.136 INFO    ] No camera update needed
[2026-08-25 12:04:52,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:04:52,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:04:52,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:04:52,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:04:54,190.190 INFO    ] ================================================
[2026-08-25 12:04:54,205.205 INFO    ] Launching Daemon at Tue Aug 25 12:04:54 IST 2026
[2026-08-25 12:04:54,215.215 INFO    ] ================================================
[2026-08-25 12:04:54,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:04:54
[2026-08-25 12:04:55,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:04:55,687.687 INFO    ] Initializing speech engine...
[2026-08-25 12:04:55,694.694 INFO    ] 2026-08-25 12:04:55
[2026-08-25 12:04:55,952.952 INFO    ] 2026-08-25 12:04:55
[2026-08-25 12:04:56,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:04:56,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:04:56,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:04:56,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:04:56,417.417 INFO    ] time= 25/08/2026 12:04:56
[2026-08-25 12:04:56,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:04:56,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:04:56,637.637 INFO    ] No existing commands found in stream
[2026-08-25 12:05:01,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:05:01,662.662 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 12:05:02,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:05:02,934.934 INFO    ] Checking for system updates...
[2026-08-25 12:05:02,972.972 INFO    ] 200
[2026-08-25 12:05:02,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:03,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:05:03,040.040 INFO    ] No update needed
[2026-08-25 12:05:03,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 12:05:03,080.080 INFO    ] 200
[2026-08-25 12:05:03,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:03,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:05:03,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:05:03,215.215 INFO    ] No camera update needed
[2026-08-25 12:05:03,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:05:03,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:05:03,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:05:03,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:05:05,287.287 INFO    ] ================================================
[2026-08-25 12:05:05,302.302 INFO    ] Launching Daemon at Tue Aug 25 12:05:05 IST 2026
[2026-08-25 12:05:05,313.313 INFO    ] ================================================
[2026-08-25 12:05:05,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:05:05
[2026-08-25 12:05:06,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:05:06,815.815 INFO    ] Initializing speech engine...
[2026-08-25 12:05:06,823.823 INFO    ] 2026-08-25 12:05:06
[2026-08-25 12:05:07,102.102 INFO    ] 2026-08-25 12:05:07
[2026-08-25 12:05:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:05:07,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:05:07,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:05:07,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:05:07,648.648 INFO    ] time= 25/08/2026 12:05:07
[2026-08-25 12:05:07,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:05:07,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:05:07,805.805 INFO    ] No existing commands found in stream
[2026-08-25 12:05:12,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:05:12,824.824 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 12:05:16,021.021 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:05:16,024.024 INFO    ] Checking for system updates...
[2026-08-25 12:05:16,065.065 INFO    ] 200
[2026-08-25 12:05:16,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:16,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:05:16,125.125 INFO    ] No update needed
[2026-08-25 12:05:16,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 12:05:16,163.163 INFO    ] 200
[2026-08-25 12:05:16,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:16,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:05:16,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:05:16,259.259 INFO    ] No camera update needed
[2026-08-25 12:05:16,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:05:16,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:05:16,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:05:16,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:05:18,316.316 INFO    ] ================================================
[2026-08-25 12:05:18,331.331 INFO    ] Launching Daemon at Tue Aug 25 12:05:18 IST 2026
[2026-08-25 12:05:18,342.342 INFO    ] ================================================
[2026-08-25 12:05:18,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:05:18
[2026-08-25 12:05:19,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:05:19,756.756 INFO    ] Initializing speech engine...
[2026-08-25 12:05:19,765.765 INFO    ] 2026-08-25 12:05:19
[2026-08-25 12:05:20,015.015 INFO    ] 2026-08-25 12:05:20
[2026-08-25 12:05:20,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:05:20,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:05:20,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:05:20,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:05:20,434.434 INFO    ] time= 25/08/2026 12:05:20
[2026-08-25 12:05:20,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:05:20,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:05:20,610.610 INFO    ] No existing commands found in stream
[2026-08-25 12:05:25,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:05:25,629.629 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 12:05:27,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:05:27,747.747 INFO    ] Checking for system updates...
[2026-08-25 12:05:27,782.782 INFO    ] 200
[2026-08-25 12:05:27,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:27,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:05:27,846.846 INFO    ] No update needed
[2026-08-25 12:05:27,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 12:05:27,881.881 INFO    ] 200
[2026-08-25 12:05:27,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:27,930.930 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:05:27,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:05:27,980.980 INFO    ] No camera update needed
[2026-08-25 12:05:27,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:05:27,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:05:27,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:05:27,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:05:30,035.035 INFO    ] ================================================
[2026-08-25 12:05:30,050.050 INFO    ] Launching Daemon at Tue Aug 25 12:05:30 IST 2026
[2026-08-25 12:05:30,061.061 INFO    ] ================================================
[2026-08-25 12:05:30,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:05:30
[2026-08-25 12:05:31,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:05:31,669.669 INFO    ] Initializing speech engine...
[2026-08-25 12:05:31,678.678 INFO    ] 2026-08-25 12:05:31
[2026-08-25 12:05:31,973.973 INFO    ] 2026-08-25 12:05:31
[2026-08-25 12:05:32,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:05:32,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:05:32,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:05:32,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:05:32,346.346 INFO    ] time= 25/08/2026 12:05:32
[2026-08-25 12:05:32,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:05:32,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:05:32,509.509 INFO    ] No existing commands found in stream
[2026-08-25 12:05:37,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:05:37,523.523 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 12:05:39,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:05:39,048.048 INFO    ] Checking for system updates...
[2026-08-25 12:05:39,083.083 INFO    ] 200
[2026-08-25 12:05:39,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:39,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:05:39,141.141 INFO    ] No update needed
[2026-08-25 12:05:39,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 12:05:39,177.177 INFO    ] 200
[2026-08-25 12:05:39,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:39,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:05:39,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:05:39,271.271 INFO    ] No camera update needed
[2026-08-25 12:05:39,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:05:39,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:05:39,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:05:39,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:05:41,329.329 INFO    ] ================================================
[2026-08-25 12:05:41,344.344 INFO    ] Launching Daemon at Tue Aug 25 12:05:41 IST 2026
[2026-08-25 12:05:41,355.355 INFO    ] ================================================
[2026-08-25 12:05:41,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:05:41
[2026-08-25 12:05:42,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:05:42,898.898 INFO    ] Initializing speech engine...
[2026-08-25 12:05:42,912.912 INFO    ] 2026-08-25 12:05:42
[2026-08-25 12:05:43,216.216 INFO    ] 2026-08-25 12:05:43
[2026-08-25 12:05:43,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:05:43,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:05:43,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:05:43,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:05:43,736.736 INFO    ] time= 25/08/2026 12:05:43
[2026-08-25 12:05:43,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:05:43,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:05:43,885.885 INFO    ] No existing commands found in stream
[2026-08-25 12:05:48,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:05:48,918.918 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 12:05:49,407.407 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:05:49,410.410 INFO    ] Checking for system updates...
[2026-08-25 12:05:49,446.446 INFO    ] 200
[2026-08-25 12:05:49,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:49,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:05:49,504.504 INFO    ] No update needed
[2026-08-25 12:05:49,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 12:05:49,541.541 INFO    ] 200
[2026-08-25 12:05:49,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:05:49,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:05:49,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:05:49,641.641 INFO    ] No camera update needed
[2026-08-25 12:05:49,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:05:49,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:05:49,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:05:49,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:05:51,696.696 INFO    ] ================================================
[2026-08-25 12:05:51,711.711 INFO    ] Launching Daemon at Tue Aug 25 12:05:51 IST 2026
[2026-08-25 12:05:51,721.721 INFO    ] ================================================
[2026-08-25 12:05:52,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:05:52
[2026-08-25 12:05:52,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:05:53,143.143 INFO    ] Initializing speech engine...
[2026-08-25 12:05:53,154.154 INFO    ] 2026-08-25 12:05:53
[2026-08-25 12:05:53,405.405 INFO    ] 2026-08-25 12:05:53
[2026-08-25 12:05:53,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:05:53,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:05:53,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:05:53,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:05:53,781.781 INFO    ] time= 25/08/2026 12:05:53
[2026-08-25 12:05:53,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:05:53,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:05:53,968.968 INFO    ] No existing commands found in stream
[2026-08-25 12:05:58,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:05:58,993.993 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-25 12:06:01,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:06:01,851.851 INFO    ] Checking for system updates...
[2026-08-25 12:06:01,940.940 INFO    ] 200
[2026-08-25 12:06:01,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:02,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:06:02,063.063 INFO    ] No update needed
[2026-08-25 12:06:02,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 12:06:02,154.154 INFO    ] 200
[2026-08-25 12:06:02,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:02,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:06:02,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:06:02,396.396 INFO    ] No camera update needed
[2026-08-25 12:06:02,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:06:02,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:06:02,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:06:02,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:06:04,467.467 INFO    ] ================================================
[2026-08-25 12:06:04,484.484 INFO    ] Launching Daemon at Tue Aug 25 12:06:04 IST 2026
[2026-08-25 12:06:04,496.496 INFO    ] ================================================
[2026-08-25 12:06:05,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:06:05
[2026-08-25 12:06:05,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:06:06,128.128 INFO    ] Initializing speech engine...
[2026-08-25 12:06:06,143.143 INFO    ] 2026-08-25 12:06:06
[2026-08-25 12:06:06,415.415 INFO    ] 2026-08-25 12:06:06
[2026-08-25 12:06:06,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:06:06,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:06:06,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:06:06,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:06:06,913.913 INFO    ] time= 25/08/2026 12:06:06
[2026-08-25 12:06:06,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:06:07,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:06:07,149.149 INFO    ] No existing commands found in stream
[2026-08-25 12:06:12,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:06:12,165.165 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 12:06:16,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:06:16,195.195 INFO    ] Checking for system updates...
[2026-08-25 12:06:16,231.231 INFO    ] 200
[2026-08-25 12:06:16,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:16,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:06:16,290.290 INFO    ] No update needed
[2026-08-25 12:06:16,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 12:06:16,326.326 INFO    ] 200
[2026-08-25 12:06:16,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:16,372.372 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:06:16,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:06:16,439.439 INFO    ] No camera update needed
[2026-08-25 12:06:16,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:06:16,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:06:16,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:06:16,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:06:18,493.493 INFO    ] ================================================
[2026-08-25 12:06:18,509.509 INFO    ] Launching Daemon at Tue Aug 25 12:06:18 IST 2026
[2026-08-25 12:06:18,520.520 INFO    ] ================================================
[2026-08-25 12:06:19,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:06:19
[2026-08-25 12:06:19,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:06:19,962.962 INFO    ] Initializing speech engine...
[2026-08-25 12:06:19,975.975 INFO    ] 2026-08-25 12:06:19
[2026-08-25 12:06:20,223.223 INFO    ] 2026-08-25 12:06:20
[2026-08-25 12:06:20,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:06:20,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:06:20,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:06:20,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:06:20,775.775 INFO    ] time= 25/08/2026 12:06:20
[2026-08-25 12:06:20,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:06:20,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:06:20,952.952 INFO    ] No existing commands found in stream
[2026-08-25 12:06:25,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:06:25,980.980 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 12:06:29,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:06:29,126.126 INFO    ] Checking for system updates...
[2026-08-25 12:06:29,162.162 INFO    ] 200
[2026-08-25 12:06:29,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:29,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:06:29,218.218 INFO    ] No update needed
[2026-08-25 12:06:29,221.221 INFO    ] Checking for camera pi updates...
[2026-08-25 12:06:29,257.257 INFO    ] 200
[2026-08-25 12:06:29,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:29,298.298 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:06:29,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:06:29,347.347 INFO    ] No camera update needed
[2026-08-25 12:06:29,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:06:29,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:06:29,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:06:29,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:06:31,401.401 INFO    ] ================================================
[2026-08-25 12:06:31,416.416 INFO    ] Launching Daemon at Tue Aug 25 12:06:31 IST 2026
[2026-08-25 12:06:31,428.428 INFO    ] ================================================
[2026-08-25 12:06:32,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:06:32
[2026-08-25 12:06:32,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:06:32,937.937 INFO    ] Initializing speech engine...
[2026-08-25 12:06:32,950.950 INFO    ] 2026-08-25 12:06:32
[2026-08-25 12:06:33,247.247 INFO    ] 2026-08-25 12:06:33
[2026-08-25 12:06:33,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:06:33,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:06:33,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:06:33,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:06:33,704.704 INFO    ] time= 25/08/2026 12:06:33
[2026-08-25 12:06:33,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:06:33,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:06:33,944.944 INFO    ] No existing commands found in stream
[2026-08-25 12:06:38,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:06:38,974.974 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 12:06:43,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:06:43,392.392 INFO    ] Checking for system updates...
[2026-08-25 12:06:43,428.428 INFO    ] 200
[2026-08-25 12:06:43,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:43,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:06:43,491.491 INFO    ] No update needed
[2026-08-25 12:06:43,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 12:06:43,527.527 INFO    ] 200
[2026-08-25 12:06:43,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:43,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:06:43,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:06:43,641.641 INFO    ] No camera update needed
[2026-08-25 12:06:43,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:06:43,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:06:43,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:06:43,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:06:45,696.696 INFO    ] ================================================
[2026-08-25 12:06:45,711.711 INFO    ] Launching Daemon at Tue Aug 25 12:06:45 IST 2026
[2026-08-25 12:06:45,722.722 INFO    ] ================================================
[2026-08-25 12:06:46,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:06:46
[2026-08-25 12:06:46,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:06:47,221.221 INFO    ] Initializing speech engine...
[2026-08-25 12:06:47,230.230 INFO    ] 2026-08-25 12:06:47
[2026-08-25 12:06:47,516.516 INFO    ] 2026-08-25 12:06:47
[2026-08-25 12:06:47,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:06:47,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:06:47,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:06:48,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:06:48,055.055 INFO    ] time= 25/08/2026 12:06:48
[2026-08-25 12:06:48,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:06:48,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:06:48,241.241 INFO    ] No existing commands found in stream
[2026-08-25 12:06:53,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:06:53,270.270 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 12:06:55,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:06:55,687.687 INFO    ] Checking for system updates...
[2026-08-25 12:06:55,724.724 INFO    ] 200
[2026-08-25 12:06:55,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:55,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:06:55,789.789 INFO    ] No update needed
[2026-08-25 12:06:55,792.792 INFO    ] Checking for camera pi updates...
[2026-08-25 12:06:55,830.830 INFO    ] 200
[2026-08-25 12:06:55,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:06:55,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:06:55,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:06:55,924.924 INFO    ] No camera update needed
[2026-08-25 12:06:55,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:06:55,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:06:55,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:06:55,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:06:57,981.981 INFO    ] ================================================
[2026-08-25 12:06:58,997.997 INFO    ] Launching Daemon at Tue Aug 25 12:06:57 IST 2026
[2026-08-25 12:06:58,008.008 INFO    ] ================================================
[2026-08-25 12:06:58,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:06:58
[2026-08-25 12:06:59,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:06:59,468.468 INFO    ] Initializing speech engine...
[2026-08-25 12:06:59,475.475 INFO    ] 2026-08-25 12:06:59
[2026-08-25 12:06:59,722.722 INFO    ] 2026-08-25 12:06:59
[2026-08-25 12:06:59,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:06:59,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:06:59,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:07:00,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:07:00,122.122 INFO    ] time= 25/08/2026 12:07:00
[2026-08-25 12:07:00,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:07:00,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:07:00,212.212 INFO    ] No existing commands found in stream
[2026-08-25 12:07:05,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:07:05,245.245 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 12:07:08,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:07:08,068.068 INFO    ] Checking for system updates...
[2026-08-25 12:07:08,104.104 INFO    ] 200
[2026-08-25 12:07:08,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:08,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:07:08,160.160 INFO    ] No update needed
[2026-08-25 12:07:08,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 12:07:08,196.196 INFO    ] 200
[2026-08-25 12:07:08,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:08,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:07:08,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:07:08,298.298 INFO    ] No camera update needed
[2026-08-25 12:07:08,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:07:08,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:07:08,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:07:08,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:07:10,352.352 INFO    ] ================================================
[2026-08-25 12:07:10,368.368 INFO    ] Launching Daemon at Tue Aug 25 12:07:10 IST 2026
[2026-08-25 12:07:10,379.379 INFO    ] ================================================
[2026-08-25 12:07:10,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:07:10
[2026-08-25 12:07:11,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:07:11,772.772 INFO    ] Initializing speech engine...
[2026-08-25 12:07:11,792.792 INFO    ] 2026-08-25 12:07:11
[2026-08-25 12:07:12,049.049 INFO    ] 2026-08-25 12:07:12
[2026-08-25 12:07:12,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:07:12,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:07:12,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:07:12,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:07:12,542.542 INFO    ] time= 25/08/2026 12:07:12
[2026-08-25 12:07:12,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:07:12,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:07:12,734.734 INFO    ] No existing commands found in stream
[2026-08-25 12:07:17,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:07:17,760.760 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 12:07:19,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:07:19,388.388 INFO    ] Checking for system updates...
[2026-08-25 12:07:19,423.423 INFO    ] 200
[2026-08-25 12:07:19,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:19,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:07:19,480.480 INFO    ] No update needed
[2026-08-25 12:07:19,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 12:07:19,515.515 INFO    ] 200
[2026-08-25 12:07:19,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:19,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:07:19,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:07:19,618.618 INFO    ] No camera update needed
[2026-08-25 12:07:19,620.620 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:07:19,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:07:19,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:07:19,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:07:21,674.674 INFO    ] ================================================
[2026-08-25 12:07:21,689.689 INFO    ] Launching Daemon at Tue Aug 25 12:07:21 IST 2026
[2026-08-25 12:07:21,700.700 INFO    ] ================================================
[2026-08-25 12:07:22,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:07:22
[2026-08-25 12:07:22,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:07:23,163.163 INFO    ] Initializing speech engine...
[2026-08-25 12:07:23,168.168 INFO    ] 2026-08-25 12:07:23
[2026-08-25 12:07:23,430.430 INFO    ] 2026-08-25 12:07:23
[2026-08-25 12:07:23,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:07:23,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:07:23,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:07:23,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:07:23,888.888 INFO    ] time= 25/08/2026 12:07:23
[2026-08-25 12:07:23,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:07:23,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:07:24,112.112 INFO    ] No existing commands found in stream
[2026-08-25 12:07:29,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:07:29,139.139 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 12:07:31,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:07:31,333.333 INFO    ] Checking for system updates...
[2026-08-25 12:07:31,369.369 INFO    ] 200
[2026-08-25 12:07:31,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:31,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:07:31,427.427 INFO    ] No update needed
[2026-08-25 12:07:31,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 12:07:31,464.464 INFO    ] 200
[2026-08-25 12:07:31,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:31,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:07:31,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:07:31,597.597 INFO    ] No camera update needed
[2026-08-25 12:07:31,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:07:31,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:07:31,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:07:31,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:07:33,656.656 INFO    ] ================================================
[2026-08-25 12:07:33,672.672 INFO    ] Launching Daemon at Tue Aug 25 12:07:33 IST 2026
[2026-08-25 12:07:33,683.683 INFO    ] ================================================
[2026-08-25 12:07:34,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:07:34
[2026-08-25 12:07:34,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:07:35,093.093 INFO    ] Initializing speech engine...
[2026-08-25 12:07:35,113.113 INFO    ] 2026-08-25 12:07:35
[2026-08-25 12:07:35,364.364 INFO    ] 2026-08-25 12:07:35
[2026-08-25 12:07:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:07:35,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:07:35,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:07:35,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:07:35,825.825 INFO    ] time= 25/08/2026 12:07:35
[2026-08-25 12:07:35,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:07:35,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:07:36,072.072 INFO    ] No existing commands found in stream
[2026-08-25 12:07:41,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:07:41,104.104 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 12:07:44,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:07:44,406.406 INFO    ] Checking for system updates...
[2026-08-25 12:07:44,444.444 INFO    ] 200
[2026-08-25 12:07:44,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:44,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:07:44,500.500 INFO    ] No update needed
[2026-08-25 12:07:44,503.503 INFO    ] Checking for camera pi updates...
[2026-08-25 12:07:44,537.537 INFO    ] 200
[2026-08-25 12:07:44,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:44,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:07:44,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:07:44,624.624 INFO    ] No camera update needed
[2026-08-25 12:07:44,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:07:44,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:07:44,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:07:44,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:07:46,680.680 INFO    ] ================================================
[2026-08-25 12:07:46,696.696 INFO    ] Launching Daemon at Tue Aug 25 12:07:46 IST 2026
[2026-08-25 12:07:46,707.707 INFO    ] ================================================
[2026-08-25 12:07:47,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:07:47
[2026-08-25 12:07:47,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:07:48,282.282 INFO    ] Initializing speech engine...
[2026-08-25 12:07:48,296.296 INFO    ] 2026-08-25 12:07:48
[2026-08-25 12:07:48,572.572 INFO    ] 2026-08-25 12:07:48
[2026-08-25 12:07:48,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:07:48,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:07:48,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:07:49,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:07:49,108.108 INFO    ] time= 25/08/2026 12:07:49
[2026-08-25 12:07:49,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:07:49,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:07:49,282.282 INFO    ] No existing commands found in stream
[2026-08-25 12:07:54,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:07:54,321.321 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 12:07:58,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:07:58,445.445 INFO    ] Checking for system updates...
[2026-08-25 12:07:58,481.481 INFO    ] 200
[2026-08-25 12:07:58,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:58,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:07:58,542.542 INFO    ] No update needed
[2026-08-25 12:07:58,544.544 INFO    ] Checking for camera pi updates...
[2026-08-25 12:07:58,577.577 INFO    ] 200
[2026-08-25 12:07:58,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:07:58,619.619 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:07:58,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:07:58,672.672 INFO    ] No camera update needed
[2026-08-25 12:07:58,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:07:58,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:07:58,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:07:58,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:08:00,726.726 INFO    ] ================================================
[2026-08-25 12:08:00,743.743 INFO    ] Launching Daemon at Tue Aug 25 12:08:00 IST 2026
[2026-08-25 12:08:00,753.753 INFO    ] ================================================
[2026-08-25 12:08:01,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:08:01
[2026-08-25 12:08:02,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:08:02,407.407 INFO    ] Initializing speech engine...
[2026-08-25 12:08:02,434.434 INFO    ] 2026-08-25 12:08:02
[2026-08-25 12:08:02,754.754 INFO    ] 2026-08-25 12:08:02
[2026-08-25 12:08:02,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:08:03,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:08:03,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:08:03,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:08:03,255.255 INFO    ] time= 25/08/2026 12:08:03
[2026-08-25 12:08:03,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:08:03,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:08:03,472.472 INFO    ] No existing commands found in stream
[2026-08-25 12:08:08,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:08:08,497.497 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 12:08:11,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:08:11,679.679 INFO    ] Checking for system updates...
[2026-08-25 12:08:11,715.715 INFO    ] 200
[2026-08-25 12:08:11,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:11,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:08:11,773.773 INFO    ] No update needed
[2026-08-25 12:08:11,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 12:08:11,811.811 INFO    ] 200
[2026-08-25 12:08:11,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:11,853.853 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:08:11,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:08:11,900.900 INFO    ] No camera update needed
[2026-08-25 12:08:11,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:08:11,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:08:11,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:08:11,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:08:13,954.954 INFO    ] ================================================
[2026-08-25 12:08:13,970.970 INFO    ] Launching Daemon at Tue Aug 25 12:08:13 IST 2026
[2026-08-25 12:08:13,981.981 INFO    ] ================================================
[2026-08-25 12:08:14,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:08:14
[2026-08-25 12:08:15,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:08:15,449.449 INFO    ] Initializing speech engine...
[2026-08-25 12:08:15,458.458 INFO    ] 2026-08-25 12:08:15
[2026-08-25 12:08:15,740.740 INFO    ] 2026-08-25 12:08:15
[2026-08-25 12:08:15,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:08:15,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:08:15,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:08:16,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:08:16,177.177 INFO    ] time= 25/08/2026 12:08:16
[2026-08-25 12:08:16,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:08:16,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:08:16,317.317 INFO    ] No existing commands found in stream
[2026-08-25 12:08:21,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:08:21,329.329 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 12:08:25,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:08:25,340.340 INFO    ] Checking for system updates...
[2026-08-25 12:08:25,376.376 INFO    ] 200
[2026-08-25 12:08:25,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:25,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:08:25,439.439 INFO    ] No update needed
[2026-08-25 12:08:25,442.442 INFO    ] Checking for camera pi updates...
[2026-08-25 12:08:25,475.475 INFO    ] 200
[2026-08-25 12:08:25,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:25,517.517 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:08:25,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:08:25,670.670 INFO    ] No camera update needed
[2026-08-25 12:08:25,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:08:25,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:08:25,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:08:25,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:08:27,725.725 INFO    ] ================================================
[2026-08-25 12:08:27,741.741 INFO    ] Launching Daemon at Tue Aug 25 12:08:27 IST 2026
[2026-08-25 12:08:27,752.752 INFO    ] ================================================
[2026-08-25 12:08:28,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:08:28
[2026-08-25 12:08:29,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:08:29,403.403 INFO    ] Initializing speech engine...
[2026-08-25 12:08:29,415.415 INFO    ] 2026-08-25 12:08:29
[2026-08-25 12:08:29,744.744 INFO    ] 2026-08-25 12:08:29
[2026-08-25 12:08:29,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:08:30,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:08:30,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:08:30,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:08:30,182.182 INFO    ] time= 25/08/2026 12:08:30
[2026-08-25 12:08:30,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:08:30,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:08:30,407.407 INFO    ] No existing commands found in stream
[2026-08-25 12:08:35,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:08:35,437.437 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 12:08:37,134.134 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:08:37,137.137 INFO    ] Checking for system updates...
[2026-08-25 12:08:37,174.174 INFO    ] 200
[2026-08-25 12:08:37,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:37,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:08:37,240.240 INFO    ] No update needed
[2026-08-25 12:08:37,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 12:08:37,278.278 INFO    ] 200
[2026-08-25 12:08:37,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:37,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:08:37,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:08:37,381.381 INFO    ] No camera update needed
[2026-08-25 12:08:37,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:08:37,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:08:37,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:08:37,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:08:39,439.439 INFO    ] ================================================
[2026-08-25 12:08:39,455.455 INFO    ] Launching Daemon at Tue Aug 25 12:08:39 IST 2026
[2026-08-25 12:08:39,466.466 INFO    ] ================================================
[2026-08-25 12:08:40,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:08:40
[2026-08-25 12:08:40,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:08:41,106.106 INFO    ] Initializing speech engine...
[2026-08-25 12:08:41,118.118 INFO    ] 2026-08-25 12:08:41
[2026-08-25 12:08:41,432.432 INFO    ] 2026-08-25 12:08:41
[2026-08-25 12:08:41,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:08:41,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:08:41,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:08:41,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:08:41,878.878 INFO    ] time= 25/08/2026 12:08:41
[2026-08-25 12:08:41,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:08:41,959.959 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:08:42,106.106 INFO    ] No existing commands found in stream
[2026-08-25 12:08:47,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:08:47,125.125 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 12:08:50,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:08:50,388.388 INFO    ] Checking for system updates...
[2026-08-25 12:08:50,425.425 INFO    ] 200
[2026-08-25 12:08:50,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:50,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:08:50,492.492 INFO    ] No update needed
[2026-08-25 12:08:50,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 12:08:50,529.529 INFO    ] 200
[2026-08-25 12:08:50,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:08:50,575.575 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:08:50,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:08:50,629.629 INFO    ] No camera update needed
[2026-08-25 12:08:50,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:08:50,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:08:50,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:08:50,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:08:52,687.687 INFO    ] ================================================
[2026-08-25 12:08:52,703.703 INFO    ] Launching Daemon at Tue Aug 25 12:08:52 IST 2026
[2026-08-25 12:08:52,713.713 INFO    ] ================================================
[2026-08-25 12:08:53,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:08:53
[2026-08-25 12:08:53,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:08:54,118.118 INFO    ] Initializing speech engine...
[2026-08-25 12:08:54,126.126 INFO    ] 2026-08-25 12:08:54
[2026-08-25 12:08:54,424.424 INFO    ] 2026-08-25 12:08:54
[2026-08-25 12:08:54,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:08:54,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:08:54,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:08:54,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:08:54,855.855 INFO    ] time= 25/08/2026 12:08:54
[2026-08-25 12:08:54,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:08:54,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:08:55,047.047 INFO    ] No existing commands found in stream
[2026-08-25 12:09:00,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:09:00,075.075 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 12:09:04,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:09:04,468.468 INFO    ] Checking for system updates...
[2026-08-25 12:09:04,506.506 INFO    ] 200
[2026-08-25 12:09:04,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:04,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:09:04,564.564 INFO    ] No update needed
[2026-08-25 12:09:04,567.567 INFO    ] Checking for camera pi updates...
[2026-08-25 12:09:04,600.600 INFO    ] 200
[2026-08-25 12:09:04,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:04,644.644 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:09:04,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:09:04,709.709 INFO    ] No camera update needed
[2026-08-25 12:09:04,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:09:04,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:09:04,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:09:04,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:09:06,828.828 INFO    ] ================================================
[2026-08-25 12:09:06,843.843 INFO    ] Launching Daemon at Tue Aug 25 12:09:06 IST 2026
[2026-08-25 12:09:06,854.854 INFO    ] ================================================
[2026-08-25 12:09:07,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:09:07
[2026-08-25 12:09:08,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:09:08,306.306 INFO    ] Initializing speech engine...
[2026-08-25 12:09:08,316.316 INFO    ] 2026-08-25 12:09:08
[2026-08-25 12:09:08,562.562 INFO    ] 2026-08-25 12:09:08
[2026-08-25 12:09:08,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:09:08,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:09:08,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:09:09,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:09:09,130.130 INFO    ] time= 25/08/2026 12:09:09
[2026-08-25 12:09:09,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:09:09,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:09:09,288.288 INFO    ] No existing commands found in stream
[2026-08-25 12:09:14,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:09:14,315.315 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 12:09:16,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:09:16,531.531 INFO    ] Checking for system updates...
[2026-08-25 12:09:16,566.566 INFO    ] 200
[2026-08-25 12:09:16,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:16,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:16,629.629 INFO    ] No update needed
[2026-08-25 12:09:16,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 12:09:16,666.666 INFO    ] 200
[2026-08-25 12:09:16,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:16,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:09:16,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:16,769.769 INFO    ] No camera update needed
[2026-08-25 12:09:16,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:09:16,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:09:16,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:09:16,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:09:18,823.823 INFO    ] ================================================
[2026-08-25 12:09:18,838.838 INFO    ] Launching Daemon at Tue Aug 25 12:09:18 IST 2026
[2026-08-25 12:09:18,848.848 INFO    ] ================================================
[2026-08-25 12:09:19,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:09:19
[2026-08-25 12:09:20,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:09:20,304.304 INFO    ] Initializing speech engine...
[2026-08-25 12:09:20,314.314 INFO    ] 2026-08-25 12:09:20
[2026-08-25 12:09:20,576.576 INFO    ] 2026-08-25 12:09:20
[2026-08-25 12:09:20,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:09:20,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:09:20,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:09:20,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:09:21,054.054 INFO    ] time= 25/08/2026 12:09:21
[2026-08-25 12:09:21,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:09:21,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:09:21,274.274 INFO    ] No existing commands found in stream
[2026-08-25 12:09:26,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:09:26,296.296 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 12:09:29,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:09:29,004.004 INFO    ] Checking for system updates...
[2026-08-25 12:09:29,039.039 INFO    ] 200
[2026-08-25 12:09:29,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:29,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:29,103.103 INFO    ] No update needed
[2026-08-25 12:09:29,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 12:09:29,139.139 INFO    ] 200
[2026-08-25 12:09:29,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:29,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:09:29,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:29,234.234 INFO    ] No camera update needed
[2026-08-25 12:09:29,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:09:29,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:09:29,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:09:29,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:09:31,295.295 INFO    ] ================================================
[2026-08-25 12:09:31,313.313 INFO    ] Launching Daemon at Tue Aug 25 12:09:31 IST 2026
[2026-08-25 12:09:31,325.325 INFO    ] ================================================
[2026-08-25 12:09:31,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:09:31
[2026-08-25 12:09:32,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:09:32,841.841 INFO    ] Initializing speech engine...
[2026-08-25 12:09:32,857.857 INFO    ] 2026-08-25 12:09:32
[2026-08-25 12:09:33,137.137 INFO    ] 2026-08-25 12:09:33
[2026-08-25 12:09:33,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:09:33,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:09:33,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:09:33,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:09:33,687.687 INFO    ] time= 25/08/2026 12:09:33
[2026-08-25 12:09:33,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:09:33,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:09:33,902.902 INFO    ] No existing commands found in stream
[2026-08-25 12:09:38,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:09:38,930.930 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 12:09:42,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:09:42,832.832 INFO    ] Checking for system updates...
[2026-08-25 12:09:42,869.869 INFO    ] 200
[2026-08-25 12:09:42,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:42,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:42,933.933 INFO    ] No update needed
[2026-08-25 12:09:42,936.936 INFO    ] Checking for camera pi updates...
[2026-08-25 12:09:42,970.970 INFO    ] 200
[2026-08-25 12:09:42,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:43,017.017 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:09:43,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:43,062.062 INFO    ] No camera update needed
[2026-08-25 12:09:43,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:09:43,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:09:43,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:09:43,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:09:45,116.116 INFO    ] ================================================
[2026-08-25 12:09:45,131.131 INFO    ] Launching Daemon at Tue Aug 25 12:09:45 IST 2026
[2026-08-25 12:09:45,143.143 INFO    ] ================================================
[2026-08-25 12:09:45,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:09:45
[2026-08-25 12:09:46,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:09:46,600.600 INFO    ] Initializing speech engine...
[2026-08-25 12:09:46,607.607 INFO    ] 2026-08-25 12:09:46
[2026-08-25 12:09:46,865.865 INFO    ] 2026-08-25 12:09:46
[2026-08-25 12:09:46,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:09:47,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:09:47,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:09:47,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:09:47,351.351 INFO    ] time= 25/08/2026 12:09:47
[2026-08-25 12:09:47,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:09:47,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:09:47,559.559 INFO    ] No existing commands found in stream
[2026-08-25 12:09:52,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:09:52,579.579 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 12:09:55,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:09:55,524.524 INFO    ] Checking for system updates...
[2026-08-25 12:09:55,560.560 INFO    ] 200
[2026-08-25 12:09:55,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:55,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:55,617.617 INFO    ] No update needed
[2026-08-25 12:09:55,620.620 INFO    ] Checking for camera pi updates...
[2026-08-25 12:09:55,653.653 INFO    ] 200
[2026-08-25 12:09:55,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:09:55,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:09:55,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:09:55,752.752 INFO    ] No camera update needed
[2026-08-25 12:09:55,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:09:55,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:09:55,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:09:55,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:09:57,806.806 INFO    ] ================================================
[2026-08-25 12:09:57,822.822 INFO    ] Launching Daemon at Tue Aug 25 12:09:57 IST 2026
[2026-08-25 12:09:57,834.834 INFO    ] ================================================
[2026-08-25 12:09:58,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:09:58
[2026-08-25 12:09:58,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:09:59,257.257 INFO    ] Initializing speech engine...
[2026-08-25 12:09:59,266.266 INFO    ] 2026-08-25 12:09:59
[2026-08-25 12:09:59,515.515 INFO    ] 2026-08-25 12:09:59
[2026-08-25 12:09:59,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:09:59,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:09:59,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:09:59,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:09:59,990.990 INFO    ] time= 25/08/2026 12:09:59
[2026-08-25 12:10:00,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:10:00,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:10:00,236.236 INFO    ] No existing commands found in stream
[2026-08-25 12:10:05,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:10:05,257.257 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 12:10:09,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:10:09,316.316 INFO    ] Checking for system updates...
[2026-08-25 12:10:09,351.351 INFO    ] 200
[2026-08-25 12:10:09,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:09,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:10:09,415.415 INFO    ] No update needed
[2026-08-25 12:10:09,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 12:10:09,452.452 INFO    ] 200
[2026-08-25 12:10:09,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:09,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:10:09,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:10:09,551.551 INFO    ] No camera update needed
[2026-08-25 12:10:09,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:10:09,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:10:09,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:10:09,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:10:11,609.609 INFO    ] ================================================
[2026-08-25 12:10:11,630.630 INFO    ] Launching Daemon at Tue Aug 25 12:10:11 IST 2026
[2026-08-25 12:10:11,641.641 INFO    ] ================================================
[2026-08-25 12:10:12,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:10:12
[2026-08-25 12:10:12,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:10:13,094.094 INFO    ] Initializing speech engine...
[2026-08-25 12:10:13,103.103 INFO    ] 2026-08-25 12:10:13
[2026-08-25 12:10:13,401.401 INFO    ] 2026-08-25 12:10:13
[2026-08-25 12:10:13,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:10:13,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:10:13,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:10:13,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:10:13,787.787 INFO    ] time= 25/08/2026 12:10:13
[2026-08-25 12:10:13,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:10:13,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:10:13,912.912 INFO    ] No existing commands found in stream
[2026-08-25 12:10:18,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:10:18,928.928 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 12:10:19,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:10:19,495.495 INFO    ] Checking for system updates...
[2026-08-25 12:10:19,531.531 INFO    ] 200
[2026-08-25 12:10:19,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:19,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:10:19,590.590 INFO    ] No update needed
[2026-08-25 12:10:19,592.592 INFO    ] Checking for camera pi updates...
[2026-08-25 12:10:19,625.625 INFO    ] 200
[2026-08-25 12:10:19,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:19,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:10:19,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:10:19,718.718 INFO    ] No camera update needed
[2026-08-25 12:10:19,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:10:19,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:10:19,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:10:19,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:10:21,774.774 INFO    ] ================================================
[2026-08-25 12:10:21,790.790 INFO    ] Launching Daemon at Tue Aug 25 12:10:21 IST 2026
[2026-08-25 12:10:21,800.800 INFO    ] ================================================
[2026-08-25 12:10:22,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:10:22
[2026-08-25 12:10:22,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:10:23,261.261 INFO    ] Initializing speech engine...
[2026-08-25 12:10:24,239.239 INFO    ] 2026-08-25 12:10:24
[2026-08-25 12:10:24,613.613 INFO    ] 2026-08-25 12:10:24
[2026-08-25 12:10:24,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:10:24,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:10:24,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:10:24,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:10:24,979.979 INFO    ] time= 25/08/2026 12:10:24
[2026-08-25 12:10:24,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:10:24,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:10:25,061.061 INFO    ] No existing commands found in stream
[2026-08-25 12:10:30,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:10:30,076.076 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 12:10:32,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:10:32,137.137 INFO    ] Checking for system updates...
[2026-08-25 12:10:32,178.178 INFO    ] 200
[2026-08-25 12:10:32,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:32,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:10:32,240.240 INFO    ] No update needed
[2026-08-25 12:10:32,242.242 INFO    ] Checking for camera pi updates...
[2026-08-25 12:10:32,282.282 INFO    ] 200
[2026-08-25 12:10:32,284.284 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:32,328.328 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:10:32,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:10:32,496.496 INFO    ] No camera update needed
[2026-08-25 12:10:32,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:10:32,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:10:32,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:10:32,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:10:34,557.557 INFO    ] ================================================
[2026-08-25 12:10:34,572.572 INFO    ] Launching Daemon at Tue Aug 25 12:10:34 IST 2026
[2026-08-25 12:10:34,583.583 INFO    ] ================================================
[2026-08-25 12:10:35,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:10:35
[2026-08-25 12:10:35,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:10:36,189.189 INFO    ] Initializing speech engine...
[2026-08-25 12:10:36,197.197 INFO    ] 2026-08-25 12:10:36
[2026-08-25 12:10:36,494.494 INFO    ] 2026-08-25 12:10:36
[2026-08-25 12:10:36,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:10:36,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:10:36,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:10:36,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:10:36,878.878 INFO    ] time= 25/08/2026 12:10:36
[2026-08-25 12:10:36,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:10:36,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:10:37,002.002 INFO    ] No existing commands found in stream
[2026-08-25 12:10:42,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:10:42,017.017 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 12:10:43,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:10:43,666.666 INFO    ] Checking for system updates...
[2026-08-25 12:10:43,705.705 INFO    ] 200
[2026-08-25 12:10:43,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:43,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:10:43,769.769 INFO    ] No update needed
[2026-08-25 12:10:43,771.771 INFO    ] Checking for camera pi updates...
[2026-08-25 12:10:43,809.809 INFO    ] 200
[2026-08-25 12:10:43,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:43,851.851 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:10:43,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:10:43,907.907 INFO    ] No camera update needed
[2026-08-25 12:10:43,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:10:43,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:10:43,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:10:43,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:10:45,961.961 INFO    ] ================================================
[2026-08-25 12:10:45,977.977 INFO    ] Launching Daemon at Tue Aug 25 12:10:45 IST 2026
[2026-08-25 12:10:45,988.988 INFO    ] ================================================
[2026-08-25 12:10:46,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:10:46
[2026-08-25 12:10:47,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:10:47,429.429 INFO    ] Initializing speech engine...
[2026-08-25 12:10:47,446.446 INFO    ] 2026-08-25 12:10:47
[2026-08-25 12:10:47,736.736 INFO    ] 2026-08-25 12:10:47
[2026-08-25 12:10:47,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:10:47,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:10:47,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:10:48,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:10:48,164.164 INFO    ] time= 25/08/2026 12:10:48
[2026-08-25 12:10:48,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:10:48,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:10:48,320.320 INFO    ] No existing commands found in stream
[2026-08-25 12:10:53,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:10:53,346.346 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 12:10:57,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:10:57,196.196 INFO    ] Checking for system updates...
[2026-08-25 12:10:57,233.233 INFO    ] 200
[2026-08-25 12:10:57,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:57,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:10:57,292.292 INFO    ] No update needed
[2026-08-25 12:10:57,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 12:10:57,329.329 INFO    ] 200
[2026-08-25 12:10:57,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:10:57,373.373 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:10:57,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:10:57,428.428 INFO    ] No camera update needed
[2026-08-25 12:10:57,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:10:57,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:10:57,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:10:57,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:10:59,486.486 INFO    ] ================================================
[2026-08-25 12:10:59,501.501 INFO    ] Launching Daemon at Tue Aug 25 12:10:59 IST 2026
[2026-08-25 12:10:59,512.512 INFO    ] ================================================
[2026-08-25 12:11:00,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:11:00
[2026-08-25 12:11:00,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:11:00,953.953 INFO    ] Initializing speech engine...
[2026-08-25 12:11:00,959.959 INFO    ] 2026-08-25 12:11:00
[2026-08-25 12:11:01,255.255 INFO    ] 2026-08-25 12:11:01
[2026-08-25 12:11:01,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:11:01,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:11:01,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:11:01,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:11:01,750.750 INFO    ] time= 25/08/2026 12:11:01
[2026-08-25 12:11:01,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:11:01,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:11:01,836.836 INFO    ] No existing commands found in stream
[2026-08-25 12:11:06,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:11:06,850.850 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 12:11:11,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:11:11,189.189 INFO    ] Checking for system updates...
[2026-08-25 12:11:11,225.225 INFO    ] 200
[2026-08-25 12:11:11,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:11,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:11,283.283 INFO    ] No update needed
[2026-08-25 12:11:11,286.286 INFO    ] Checking for camera pi updates...
[2026-08-25 12:11:11,321.321 INFO    ] 200
[2026-08-25 12:11:11,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:11,371.371 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:11:11,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:11,418.418 INFO    ] No camera update needed
[2026-08-25 12:11:11,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:11:11,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:11:11,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:11:11,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:11:13,473.473 INFO    ] ================================================
[2026-08-25 12:11:13,488.488 INFO    ] Launching Daemon at Tue Aug 25 12:11:13 IST 2026
[2026-08-25 12:11:13,499.499 INFO    ] ================================================
[2026-08-25 12:11:14,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:11:14
[2026-08-25 12:11:14,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:11:14,920.920 INFO    ] Initializing speech engine...
[2026-08-25 12:11:14,930.930 INFO    ] 2026-08-25 12:11:14
[2026-08-25 12:11:15,181.181 INFO    ] 2026-08-25 12:11:15
[2026-08-25 12:11:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:11:15,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:11:15,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:11:15,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:11:15,692.692 INFO    ] time= 25/08/2026 12:11:15
[2026-08-25 12:11:15,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:11:15,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:11:15,925.925 INFO    ] No existing commands found in stream
[2026-08-25 12:11:20,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:11:20,959.959 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 12:11:21,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:11:21,432.432 INFO    ] Checking for system updates...
[2026-08-25 12:11:21,468.468 INFO    ] 200
[2026-08-25 12:11:21,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:21,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:11:21,533.533 INFO    ] No update needed
[2026-08-25 12:11:21,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 12:11:21,577.577 INFO    ] 200
[2026-08-25 12:11:21,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:21,625.625 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:11:21,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:11:21,675.675 INFO    ] No camera update needed
[2026-08-25 12:11:21,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:11:21,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:11:21,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:11:21,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:11:23,733.733 INFO    ] ================================================
[2026-08-25 12:11:23,748.748 INFO    ] Launching Daemon at Tue Aug 25 12:11:23 IST 2026
[2026-08-25 12:11:23,759.759 INFO    ] ================================================
[2026-08-25 12:11:24,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:11:24
[2026-08-25 12:11:24,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:11:25,200.200 INFO    ] Initializing speech engine...
[2026-08-25 12:11:25,213.213 INFO    ] 2026-08-25 12:11:25
[2026-08-25 12:11:25,500.500 INFO    ] 2026-08-25 12:11:25
[2026-08-25 12:11:25,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:11:25,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:11:25,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:11:25,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:11:25,899.899 INFO    ] time= 25/08/2026 12:11:25
[2026-08-25 12:11:25,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:11:25,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:11:26,016.016 INFO    ] No existing commands found in stream
[2026-08-25 12:11:31,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:11:31,034.034 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 12:11:33,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:11:33,687.687 INFO    ] Checking for system updates...
[2026-08-25 12:11:33,722.722 INFO    ] 200
[2026-08-25 12:11:33,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:33,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:33,780.780 INFO    ] No update needed
[2026-08-25 12:11:33,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 12:11:33,816.816 INFO    ] 200
[2026-08-25 12:11:33,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:33,859.859 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:11:33,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:33,920.920 INFO    ] No camera update needed
[2026-08-25 12:11:33,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:11:33,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:11:33,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:11:33,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:11:35,974.974 INFO    ] ================================================
[2026-08-25 12:11:35,989.989 INFO    ] Launching Daemon at Tue Aug 25 12:11:35 IST 2026
[2026-08-25 12:11:36,000.000 INFO    ] ================================================
[2026-08-25 12:11:36,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:11:36
[2026-08-25 12:11:37,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:11:37,462.462 INFO    ] Initializing speech engine...
[2026-08-25 12:11:37,470.470 INFO    ] 2026-08-25 12:11:37
[2026-08-25 12:11:37,729.729 INFO    ] 2026-08-25 12:11:37
[2026-08-25 12:11:37,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:11:38,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:11:38,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:11:38,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:11:38,200.200 INFO    ] time= 25/08/2026 12:11:38
[2026-08-25 12:11:38,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:11:38,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:11:38,432.432 INFO    ] No existing commands found in stream
[2026-08-25 12:11:43,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:11:43,449.449 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 12:11:45,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:11:45,911.911 INFO    ] Checking for system updates...
[2026-08-25 12:11:45,946.946 INFO    ] 200
[2026-08-25 12:11:45,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:46,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:46,003.003 INFO    ] No update needed
[2026-08-25 12:11:46,006.006 INFO    ] Checking for camera pi updates...
[2026-08-25 12:11:46,039.039 INFO    ] 200
[2026-08-25 12:11:46,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:46,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:11:46,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:46,129.129 INFO    ] No camera update needed
[2026-08-25 12:11:46,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:11:46,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:11:46,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:11:46,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:11:48,183.183 INFO    ] ================================================
[2026-08-25 12:11:48,199.199 INFO    ] Launching Daemon at Tue Aug 25 12:11:48 IST 2026
[2026-08-25 12:11:48,212.212 INFO    ] ================================================
[2026-08-25 12:11:48,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:11:48
[2026-08-25 12:11:49,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:11:49,674.674 INFO    ] Initializing speech engine...
[2026-08-25 12:11:49,679.679 INFO    ] 2026-08-25 12:11:49
[2026-08-25 12:11:49,943.943 INFO    ] 2026-08-25 12:11:49
[2026-08-25 12:11:49,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:11:50,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:11:50,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:11:50,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:11:50,435.435 INFO    ] time= 25/08/2026 12:11:50
[2026-08-25 12:11:50,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:11:50,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:11:50,647.647 INFO    ] No existing commands found in stream
[2026-08-25 12:11:55,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:11:55,669.669 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 12:11:58,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:11:58,974.974 INFO    ] Checking for system updates...
[2026-08-25 12:11:59,014.014 INFO    ] 200
[2026-08-25 12:11:59,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:59,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:59,072.072 INFO    ] No update needed
[2026-08-25 12:11:59,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 12:11:59,108.108 INFO    ] 200
[2026-08-25 12:11:59,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:11:59,156.156 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:11:59,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:11:59,207.207 INFO    ] No camera update needed
[2026-08-25 12:11:59,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:11:59,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:11:59,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:11:59,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:12:01,264.264 INFO    ] ================================================
[2026-08-25 12:12:01,280.280 INFO    ] Launching Daemon at Tue Aug 25 12:12:01 IST 2026
[2026-08-25 12:12:01,291.291 INFO    ] ================================================
[2026-08-25 12:12:01,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:12:01
[2026-08-25 12:12:02,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:12:03,087.087 INFO    ] Initializing speech engine...
[2026-08-25 12:12:03,096.096 INFO    ] 2026-08-25 12:12:03
[2026-08-25 12:12:03,467.467 INFO    ] 2026-08-25 12:12:03
[2026-08-25 12:12:03,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:12:03,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:12:03,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:12:03,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:12:03,950.950 INFO    ] time= 25/08/2026 12:12:03
[2026-08-25 12:12:03,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:12:03,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:12:04,094.094 INFO    ] No existing commands found in stream
[2026-08-25 12:12:09,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:12:09,118.118 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 12:12:12,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:12:12,484.484 INFO    ] Checking for system updates...
[2026-08-25 12:12:12,520.520 INFO    ] 200
[2026-08-25 12:12:12,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:12,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:12,586.586 INFO    ] No update needed
[2026-08-25 12:12:12,589.589 INFO    ] Checking for camera pi updates...
[2026-08-25 12:12:12,623.623 INFO    ] 200
[2026-08-25 12:12:12,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:12,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:12:12,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:12,721.721 INFO    ] No camera update needed
[2026-08-25 12:12:12,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:12:12,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:12:12,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:12:12,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:12:14,779.779 INFO    ] ================================================
[2026-08-25 12:12:14,794.794 INFO    ] Launching Daemon at Tue Aug 25 12:12:14 IST 2026
[2026-08-25 12:12:14,805.805 INFO    ] ================================================
[2026-08-25 12:12:15,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:12:15
[2026-08-25 12:12:15,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:12:16,277.277 INFO    ] Initializing speech engine...
[2026-08-25 12:12:16,291.291 INFO    ] 2026-08-25 12:12:16
[2026-08-25 12:12:16,561.561 INFO    ] 2026-08-25 12:12:16
[2026-08-25 12:12:16,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:12:16,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:12:16,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:12:17,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:12:17,109.109 INFO    ] time= 25/08/2026 12:12:17
[2026-08-25 12:12:17,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:12:17,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:12:17,302.302 INFO    ] No existing commands found in stream
[2026-08-25 12:12:22,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:12:22,337.337 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 12:12:23,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:12:23,797.797 INFO    ] Checking for system updates...
[2026-08-25 12:12:23,837.837 INFO    ] 200
[2026-08-25 12:12:23,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:23,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:23,893.893 INFO    ] No update needed
[2026-08-25 12:12:23,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 12:12:23,929.929 INFO    ] 200
[2026-08-25 12:12:23,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:23,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:12:24,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:24,023.023 INFO    ] No camera update needed
[2026-08-25 12:12:24,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:12:24,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:12:24,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:12:24,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:12:26,081.081 INFO    ] ================================================
[2026-08-25 12:12:26,098.098 INFO    ] Launching Daemon at Tue Aug 25 12:12:26 IST 2026
[2026-08-25 12:12:26,109.109 INFO    ] ================================================
[2026-08-25 12:12:26,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:12:26
[2026-08-25 12:12:27,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:12:27,535.535 INFO    ] Initializing speech engine...
[2026-08-25 12:12:27,543.543 INFO    ] 2026-08-25 12:12:27
[2026-08-25 12:12:27,794.794 INFO    ] 2026-08-25 12:12:27
[2026-08-25 12:12:27,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:12:28,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:12:28,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:12:28,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:12:28,282.282 INFO    ] time= 25/08/2026 12:12:28
[2026-08-25 12:12:28,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:12:28,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:12:28,492.492 INFO    ] No existing commands found in stream
[2026-08-25 12:12:33,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:12:33,520.520 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 12:12:34,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:12:34,488.488 INFO    ] Checking for system updates...
[2026-08-25 12:12:34,523.523 INFO    ] 200
[2026-08-25 12:12:34,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:34,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:34,583.583 INFO    ] No update needed
[2026-08-25 12:12:34,585.585 INFO    ] Checking for camera pi updates...
[2026-08-25 12:12:34,623.623 INFO    ] 200
[2026-08-25 12:12:34,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:34,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:12:34,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:34,721.721 INFO    ] No camera update needed
[2026-08-25 12:12:34,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:12:34,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:12:34,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:12:34,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:12:36,776.776 INFO    ] ================================================
[2026-08-25 12:12:36,792.792 INFO    ] Launching Daemon at Tue Aug 25 12:12:36 IST 2026
[2026-08-25 12:12:36,804.804 INFO    ] ================================================
[2026-08-25 12:12:37,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:12:37
[2026-08-25 12:12:38,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:12:38,349.349 INFO    ] Initializing speech engine...
[2026-08-25 12:12:38,358.358 INFO    ] 2026-08-25 12:12:38
[2026-08-25 12:12:38,608.608 INFO    ] 2026-08-25 12:12:38
[2026-08-25 12:12:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:12:38,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:12:38,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:12:39,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:12:39,107.107 INFO    ] time= 25/08/2026 12:12:39
[2026-08-25 12:12:39,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:12:39,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:12:39,302.302 INFO    ] No existing commands found in stream
[2026-08-25 12:12:44,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:12:44,332.332 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 12:12:45,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:12:45,702.702 INFO    ] Checking for system updates...
[2026-08-25 12:12:45,739.739 INFO    ] 200
[2026-08-25 12:12:45,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:45,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:45,798.798 INFO    ] No update needed
[2026-08-25 12:12:45,801.801 INFO    ] Checking for camera pi updates...
[2026-08-25 12:12:45,835.835 INFO    ] 200
[2026-08-25 12:12:45,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:45,879.879 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:12:45,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:45,938.938 INFO    ] No camera update needed
[2026-08-25 12:12:45,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:12:45,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:12:45,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:12:45,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:12:48,998.998 INFO    ] ================================================
[2026-08-25 12:12:48,014.014 INFO    ] Launching Daemon at Tue Aug 25 12:12:48 IST 2026
[2026-08-25 12:12:48,025.025 INFO    ] ================================================
[2026-08-25 12:12:48,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:12:48
[2026-08-25 12:12:49,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:12:49,456.456 INFO    ] Initializing speech engine...
[2026-08-25 12:12:49,465.465 INFO    ] 2026-08-25 12:12:49
[2026-08-25 12:12:49,713.713 INFO    ] 2026-08-25 12:12:49
[2026-08-25 12:12:49,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:12:49,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:12:49,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:12:50,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:12:50,197.197 INFO    ] time= 25/08/2026 12:12:50
[2026-08-25 12:12:50,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:12:50,280.280 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:12:50,424.424 INFO    ] No existing commands found in stream
[2026-08-25 12:12:55,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:12:55,441.441 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 12:12:56,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:12:56,233.233 INFO    ] Checking for system updates...
[2026-08-25 12:12:56,269.269 INFO    ] 200
[2026-08-25 12:12:56,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:56,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:56,335.335 INFO    ] No update needed
[2026-08-25 12:12:56,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 12:12:56,372.372 INFO    ] 200
[2026-08-25 12:12:56,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:12:56,417.417 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:12:56,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:12:56,478.478 INFO    ] No camera update needed
[2026-08-25 12:12:56,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:12:56,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:12:56,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:12:56,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:12:58,538.538 INFO    ] ================================================
[2026-08-25 12:12:58,553.553 INFO    ] Launching Daemon at Tue Aug 25 12:12:58 IST 2026
[2026-08-25 12:12:58,565.565 INFO    ] ================================================
[2026-08-25 12:12:59,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:12:59
[2026-08-25 12:12:59,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:12:59,999.999 INFO    ] Initializing speech engine...
[2026-08-25 12:13:00,009.009 INFO    ] 2026-08-25 12:13:00
[2026-08-25 12:13:00,256.256 INFO    ] 2026-08-25 12:13:00
[2026-08-25 12:13:00,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:13:00,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:13:00,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:13:00,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:13:00,745.745 INFO    ] time= 25/08/2026 12:13:00
[2026-08-25 12:13:00,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:13:00,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:13:00,964.964 INFO    ] No existing commands found in stream
[2026-08-25 12:13:05,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:13:05,982.982 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 12:13:09,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:13:09,063.063 INFO    ] Checking for system updates...
[2026-08-25 12:13:09,103.103 INFO    ] 200
[2026-08-25 12:13:09,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:09,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:13:09,168.168 INFO    ] No update needed
[2026-08-25 12:13:09,170.170 INFO    ] Checking for camera pi updates...
[2026-08-25 12:13:09,204.204 INFO    ] 200
[2026-08-25 12:13:09,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:09,247.247 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:13:09,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:13:09,297.297 INFO    ] No camera update needed
[2026-08-25 12:13:09,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:13:09,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:13:09,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:13:09,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:13:11,354.354 INFO    ] ================================================
[2026-08-25 12:13:11,369.369 INFO    ] Launching Daemon at Tue Aug 25 12:13:11 IST 2026
[2026-08-25 12:13:11,379.379 INFO    ] ================================================
[2026-08-25 12:13:11,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:13:11
[2026-08-25 12:13:12,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:13:12,794.794 INFO    ] Initializing speech engine...
[2026-08-25 12:13:12,808.808 INFO    ] 2026-08-25 12:13:12
[2026-08-25 12:13:13,094.094 INFO    ] 2026-08-25 12:13:13
[2026-08-25 12:13:13,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:13:13,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:13:13,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:13:13,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:13:13,478.478 INFO    ] time= 25/08/2026 12:13:13
[2026-08-25 12:13:13,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:13:13,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:13:13,605.605 INFO    ] No existing commands found in stream
[2026-08-25 12:13:18,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:13:18,621.621 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 12:13:21,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:13:21,272.272 INFO    ] Checking for system updates...
[2026-08-25 12:13:21,307.307 INFO    ] 200
[2026-08-25 12:13:21,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:21,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:13:21,364.364 INFO    ] No update needed
[2026-08-25 12:13:21,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 12:13:21,400.400 INFO    ] 200
[2026-08-25 12:13:21,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:21,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:13:21,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:13:21,501.501 INFO    ] No camera update needed
[2026-08-25 12:13:21,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:13:21,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:13:21,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:13:21,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:13:23,556.556 INFO    ] ================================================
[2026-08-25 12:13:23,571.571 INFO    ] Launching Daemon at Tue Aug 25 12:13:23 IST 2026
[2026-08-25 12:13:23,582.582 INFO    ] ================================================
[2026-08-25 12:13:24,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:13:24
[2026-08-25 12:13:24,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:13:24,992.992 INFO    ] Initializing speech engine...
[2026-08-25 12:13:25,018.018 INFO    ] 2026-08-25 12:13:25
[2026-08-25 12:13:25,288.288 INFO    ] 2026-08-25 12:13:25
[2026-08-25 12:13:25,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:13:25,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:13:25,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:13:25,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:13:25,689.689 INFO    ] time= 25/08/2026 12:13:25
[2026-08-25 12:13:25,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:13:25,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:13:25,888.888 INFO    ] No existing commands found in stream
[2026-08-25 12:13:30,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:13:30,902.902 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 12:13:33,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:13:33,407.407 INFO    ] Checking for system updates...
[2026-08-25 12:13:33,443.443 INFO    ] 200
[2026-08-25 12:13:33,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:33,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:13:33,501.501 INFO    ] No update needed
[2026-08-25 12:13:33,503.503 INFO    ] Checking for camera pi updates...
[2026-08-25 12:13:33,537.537 INFO    ] 200
[2026-08-25 12:13:33,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:33,585.585 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:13:33,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:13:33,631.631 INFO    ] No camera update needed
[2026-08-25 12:13:33,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:13:33,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:13:33,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:13:33,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:13:35,686.686 INFO    ] ================================================
[2026-08-25 12:13:35,701.701 INFO    ] Launching Daemon at Tue Aug 25 12:13:35 IST 2026
[2026-08-25 12:13:35,712.712 INFO    ] ================================================
[2026-08-25 12:13:36,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:13:36
[2026-08-25 12:13:36,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:13:37,181.181 INFO    ] Initializing speech engine...
[2026-08-25 12:13:37,190.190 INFO    ] 2026-08-25 12:13:37
[2026-08-25 12:13:37,482.482 INFO    ] 2026-08-25 12:13:37
[2026-08-25 12:13:37,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:13:37,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:13:37,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:13:37,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:13:37,862.862 INFO    ] time= 25/08/2026 12:13:37
[2026-08-25 12:13:37,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:13:37,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:13:38,068.068 INFO    ] No existing commands found in stream
[2026-08-25 12:13:43,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:13:43,101.101 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 12:13:47,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:13:47,351.351 INFO    ] Checking for system updates...
[2026-08-25 12:13:47,389.389 INFO    ] 200
[2026-08-25 12:13:47,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:47,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:13:47,453.453 INFO    ] No update needed
[2026-08-25 12:13:47,455.455 INFO    ] Checking for camera pi updates...
[2026-08-25 12:13:47,492.492 INFO    ] 200
[2026-08-25 12:13:47,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:47,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:13:47,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:13:47,586.586 INFO    ] No camera update needed
[2026-08-25 12:13:47,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:13:47,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:13:47,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:13:47,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:13:49,642.642 INFO    ] ================================================
[2026-08-25 12:13:49,657.657 INFO    ] Launching Daemon at Tue Aug 25 12:13:49 IST 2026
[2026-08-25 12:13:49,668.668 INFO    ] ================================================
[2026-08-25 12:13:50,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:13:50
[2026-08-25 12:13:50,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:13:51,100.100 INFO    ] Initializing speech engine...
[2026-08-25 12:13:51,109.109 INFO    ] 2026-08-25 12:13:51
[2026-08-25 12:13:51,371.371 INFO    ] 2026-08-25 12:13:51
[2026-08-25 12:13:51,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:13:51,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:13:51,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:13:51,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:13:51,822.822 INFO    ] time= 25/08/2026 12:13:51
[2026-08-25 12:13:51,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:13:51,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:13:52,047.047 INFO    ] No existing commands found in stream
[2026-08-25 12:13:57,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:13:57,077.077 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 12:13:58,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:13:58,496.496 INFO    ] Checking for system updates...
[2026-08-25 12:13:58,532.532 INFO    ] 200
[2026-08-25 12:13:58,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:58,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:13:58,592.592 INFO    ] No update needed
[2026-08-25 12:13:58,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 12:13:58,632.632 INFO    ] 200
[2026-08-25 12:13:58,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:13:58,674.674 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:13:58,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:13:58,726.726 INFO    ] No camera update needed
[2026-08-25 12:13:58,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:13:58,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:13:58,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:13:58,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:14:00,782.782 INFO    ] ================================================
[2026-08-25 12:14:00,798.798 INFO    ] Launching Daemon at Tue Aug 25 12:14:00 IST 2026
[2026-08-25 12:14:00,809.809 INFO    ] ================================================
[2026-08-25 12:14:01,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:14:01
[2026-08-25 12:14:02,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:14:02,404.404 INFO    ] Initializing speech engine...
[2026-08-25 12:14:02,421.421 INFO    ] 2026-08-25 12:14:02
[2026-08-25 12:14:02,730.730 INFO    ] 2026-08-25 12:14:02
[2026-08-25 12:14:02,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:14:02,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:14:03,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:14:03,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:14:03,218.218 INFO    ] time= 25/08/2026 12:14:03
[2026-08-25 12:14:03,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:14:03,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:14:03,418.418 INFO    ] No existing commands found in stream
[2026-08-25 12:14:08,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:14:08,432.432 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 12:14:10,991.991 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:14:10,994.994 INFO    ] Checking for system updates...
[2026-08-25 12:14:11,031.031 INFO    ] 200
[2026-08-25 12:14:11,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:11,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:14:11,088.088 INFO    ] No update needed
[2026-08-25 12:14:11,090.090 INFO    ] Checking for camera pi updates...
[2026-08-25 12:14:11,126.126 INFO    ] 200
[2026-08-25 12:14:11,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:11,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:14:11,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:14:11,220.220 INFO    ] No camera update needed
[2026-08-25 12:14:11,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:14:11,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:14:11,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:14:11,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:14:13,275.275 INFO    ] ================================================
[2026-08-25 12:14:13,290.290 INFO    ] Launching Daemon at Tue Aug 25 12:14:13 IST 2026
[2026-08-25 12:14:13,302.302 INFO    ] ================================================
[2026-08-25 12:14:13,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:14:13
[2026-08-25 12:14:14,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:14:14,708.708 INFO    ] Initializing speech engine...
[2026-08-25 12:14:14,733.733 INFO    ] 2026-08-25 12:14:14
[2026-08-25 12:14:15,002.002 INFO    ] 2026-08-25 12:14:14
[2026-08-25 12:14:15,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:14:15,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:14:15,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:14:15,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:14:15,409.409 INFO    ] time= 25/08/2026 12:14:15
[2026-08-25 12:14:15,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:14:15,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:14:15,572.572 INFO    ] No existing commands found in stream
[2026-08-25 12:14:20,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:14:20,599.599 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 12:14:24,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:14:24,993.993 INFO    ] Checking for system updates...
[2026-08-25 12:14:25,029.029 INFO    ] 200
[2026-08-25 12:14:25,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:25,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:14:25,085.085 INFO    ] No update needed
[2026-08-25 12:14:25,088.088 INFO    ] Checking for camera pi updates...
[2026-08-25 12:14:25,122.122 INFO    ] 200
[2026-08-25 12:14:25,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:25,165.165 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:14:25,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:14:25,212.212 INFO    ] No camera update needed
[2026-08-25 12:14:25,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:14:25,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:14:25,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:14:25,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:14:27,269.269 INFO    ] ================================================
[2026-08-25 12:14:27,284.284 INFO    ] Launching Daemon at Tue Aug 25 12:14:27 IST 2026
[2026-08-25 12:14:27,295.295 INFO    ] ================================================
[2026-08-25 12:14:27,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:14:27
[2026-08-25 12:14:28,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:14:28,747.747 INFO    ] Initializing speech engine...
[2026-08-25 12:14:28,756.756 INFO    ] 2026-08-25 12:14:28
[2026-08-25 12:14:29,017.017 INFO    ] 2026-08-25 12:14:29
[2026-08-25 12:14:29,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:14:29,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:14:29,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:14:29,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:14:29,565.565 INFO    ] time= 25/08/2026 12:14:29
[2026-08-25 12:14:29,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:14:29,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:14:29,726.726 INFO    ] No existing commands found in stream
[2026-08-25 12:14:34,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:14:34,763.763 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 12:14:38,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:14:38,256.256 INFO    ] Checking for system updates...
[2026-08-25 12:14:38,296.296 INFO    ] 200
[2026-08-25 12:14:38,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:38,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:14:38,363.363 INFO    ] No update needed
[2026-08-25 12:14:38,366.366 INFO    ] Checking for camera pi updates...
[2026-08-25 12:14:38,400.400 INFO    ] 200
[2026-08-25 12:14:38,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:38,444.444 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:14:38,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:14:38,586.586 INFO    ] No camera update needed
[2026-08-25 12:14:38,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:14:38,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:14:38,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:14:38,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:14:40,645.645 INFO    ] ================================================
[2026-08-25 12:14:40,660.660 INFO    ] Launching Daemon at Tue Aug 25 12:14:40 IST 2026
[2026-08-25 12:14:40,671.671 INFO    ] ================================================
[2026-08-25 12:14:41,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:14:41
[2026-08-25 12:14:41,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:14:42,084.084 INFO    ] Initializing speech engine...
[2026-08-25 12:14:42,093.093 INFO    ] 2026-08-25 12:14:42
[2026-08-25 12:14:42,382.382 INFO    ] 2026-08-25 12:14:42
[2026-08-25 12:14:42,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:14:42,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:14:42,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:14:42,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:14:42,794.794 INFO    ] time= 25/08/2026 12:14:42
[2026-08-25 12:14:42,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:14:42,827.827 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:14:42,971.971 INFO    ] No existing commands found in stream
[2026-08-25 12:14:47,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:14:47,998.998 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 12:14:49,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:14:49,711.711 INFO    ] Checking for system updates...
[2026-08-25 12:14:49,748.748 INFO    ] 200
[2026-08-25 12:14:49,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:49,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:14:49,811.811 INFO    ] No update needed
[2026-08-25 12:14:49,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 12:14:49,852.852 INFO    ] 200
[2026-08-25 12:14:49,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:14:49,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:14:49,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:14:49,959.959 INFO    ] No camera update needed
[2026-08-25 12:14:49,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:14:49,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:14:49,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:14:49,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:14:52,013.013 INFO    ] ================================================
[2026-08-25 12:14:52,029.029 INFO    ] Launching Daemon at Tue Aug 25 12:14:52 IST 2026
[2026-08-25 12:14:52,040.040 INFO    ] ================================================
[2026-08-25 12:14:52,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:14:52
[2026-08-25 12:14:53,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:14:53,456.456 INFO    ] Initializing speech engine...
[2026-08-25 12:14:53,465.465 INFO    ] 2026-08-25 12:14:53
[2026-08-25 12:14:53,713.713 INFO    ] 2026-08-25 12:14:53
[2026-08-25 12:14:53,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:14:53,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:14:53,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:14:54,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:14:54,088.088 INFO    ] time= 25/08/2026 12:14:54
[2026-08-25 12:14:54,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:14:54,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:14:54,255.255 INFO    ] No existing commands found in stream
[2026-08-25 12:14:59,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:14:59,283.283 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 12:15:00,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:15:00,739.739 INFO    ] Checking for system updates...
[2026-08-25 12:15:00,775.775 INFO    ] 200
[2026-08-25 12:15:00,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:00,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:15:00,837.837 INFO    ] No update needed
[2026-08-25 12:15:00,840.840 INFO    ] Checking for camera pi updates...
[2026-08-25 12:15:00,876.876 INFO    ] 200
[2026-08-25 12:15:00,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:00,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:15:00,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:15:00,968.968 INFO    ] No camera update needed
[2026-08-25 12:15:00,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:15:00,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:15:00,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:15:00,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:15:03,069.069 INFO    ] ================================================
[2026-08-25 12:15:03,088.088 INFO    ] Launching Daemon at Tue Aug 25 12:15:03 IST 2026
[2026-08-25 12:15:03,106.106 INFO    ] ================================================
[2026-08-25 12:15:03,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:15:03
[2026-08-25 12:15:04,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:15:04,628.628 INFO    ] Initializing speech engine...
[2026-08-25 12:15:04,649.649 INFO    ] 2026-08-25 12:15:04
[2026-08-25 12:15:04,912.912 INFO    ] 2026-08-25 12:15:04
[2026-08-25 12:15:04,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:15:05,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:15:05,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:15:05,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:15:05,431.431 INFO    ] time= 25/08/2026 12:15:05
[2026-08-25 12:15:05,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:15:05,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:15:05,674.674 INFO    ] No existing commands found in stream
[2026-08-25 12:15:10,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:15:10,701.701 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 12:15:13,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:15:13,310.310 INFO    ] Checking for system updates...
[2026-08-25 12:15:13,346.346 INFO    ] 200
[2026-08-25 12:15:13,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:13,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:13,402.402 INFO    ] No update needed
[2026-08-25 12:15:13,404.404 INFO    ] Checking for camera pi updates...
[2026-08-25 12:15:13,438.438 INFO    ] 200
[2026-08-25 12:15:13,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:13,480.480 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:15:13,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:13,530.530 INFO    ] No camera update needed
[2026-08-25 12:15:13,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:15:13,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:15:13,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:15:13,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:15:15,585.585 INFO    ] ================================================
[2026-08-25 12:15:15,600.600 INFO    ] Launching Daemon at Tue Aug 25 12:15:15 IST 2026
[2026-08-25 12:15:15,611.611 INFO    ] ================================================
[2026-08-25 12:15:16,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:15:16
[2026-08-25 12:15:16,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:15:17,100.100 INFO    ] Initializing speech engine...
[2026-08-25 12:15:17,107.107 INFO    ] 2026-08-25 12:15:17
[2026-08-25 12:15:17,390.390 INFO    ] 2026-08-25 12:15:17
[2026-08-25 12:15:17,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:15:17,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:15:17,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:15:17,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:15:17,896.896 INFO    ] time= 25/08/2026 12:15:17
[2026-08-25 12:15:17,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:15:17,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:15:18,082.082 INFO    ] No existing commands found in stream
[2026-08-25 12:15:23,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:15:23,108.108 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 12:15:24,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:15:24,820.820 INFO    ] Checking for system updates...
[2026-08-25 12:15:24,858.858 INFO    ] 200
[2026-08-25 12:15:24,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:24,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:24,920.920 INFO    ] No update needed
[2026-08-25 12:15:24,922.922 INFO    ] Checking for camera pi updates...
[2026-08-25 12:15:24,961.961 INFO    ] 200
[2026-08-25 12:15:24,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:25,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:15:25,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:25,066.066 INFO    ] No camera update needed
[2026-08-25 12:15:25,069.069 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:15:25,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:15:25,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:15:25,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:15:27,122.122 INFO    ] ================================================
[2026-08-25 12:15:27,137.137 INFO    ] Launching Daemon at Tue Aug 25 12:15:27 IST 2026
[2026-08-25 12:15:27,148.148 INFO    ] ================================================
[2026-08-25 12:15:27,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:15:27
[2026-08-25 12:15:28,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:15:28,577.577 INFO    ] Initializing speech engine...
[2026-08-25 12:15:28,600.600 INFO    ] 2026-08-25 12:15:28
[2026-08-25 12:15:28,853.853 INFO    ] 2026-08-25 12:15:28
[2026-08-25 12:15:28,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:15:29,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:15:29,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:15:29,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:15:29,222.222 INFO    ] time= 25/08/2026 12:15:29
[2026-08-25 12:15:29,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:15:29,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:15:29,405.405 INFO    ] No existing commands found in stream
[2026-08-25 12:15:34,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:15:34,431.431 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 12:15:37,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:15:37,789.789 INFO    ] Checking for system updates...
[2026-08-25 12:15:37,825.825 INFO    ] 200
[2026-08-25 12:15:37,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:37,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:37,887.887 INFO    ] No update needed
[2026-08-25 12:15:37,889.889 INFO    ] Checking for camera pi updates...
[2026-08-25 12:15:37,922.922 INFO    ] 200
[2026-08-25 12:15:37,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:37,970.970 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:15:38,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:38,021.021 INFO    ] No camera update needed
[2026-08-25 12:15:38,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:15:38,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:15:38,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:15:38,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:15:40,076.076 INFO    ] ================================================
[2026-08-25 12:15:40,092.092 INFO    ] Launching Daemon at Tue Aug 25 12:15:40 IST 2026
[2026-08-25 12:15:40,102.102 INFO    ] ================================================
[2026-08-25 12:15:40,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:15:40
[2026-08-25 12:15:41,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:15:41,661.661 INFO    ] Initializing speech engine...
[2026-08-25 12:15:41,673.673 INFO    ] 2026-08-25 12:15:41
[2026-08-25 12:15:41,942.942 INFO    ] 2026-08-25 12:15:41
[2026-08-25 12:15:41,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:15:42,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:15:42,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:15:42,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:15:42,500.500 INFO    ] time= 25/08/2026 12:15:42
[2026-08-25 12:15:42,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:15:42,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:15:42,666.666 INFO    ] No existing commands found in stream
[2026-08-25 12:15:47,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:15:47,698.698 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 12:15:51,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:15:51,061.061 INFO    ] Checking for system updates...
[2026-08-25 12:15:51,098.098 INFO    ] 200
[2026-08-25 12:15:51,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:51,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:51,157.157 INFO    ] No update needed
[2026-08-25 12:15:51,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 12:15:51,194.194 INFO    ] 200
[2026-08-25 12:15:51,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:15:51,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:15:51,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:15:51,293.293 INFO    ] No camera update needed
[2026-08-25 12:15:51,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:15:51,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:15:51,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:15:51,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:15:53,350.350 INFO    ] ================================================
[2026-08-25 12:15:53,365.365 INFO    ] Launching Daemon at Tue Aug 25 12:15:53 IST 2026
[2026-08-25 12:15:53,376.376 INFO    ] ================================================
[2026-08-25 12:15:54,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:15:54
[2026-08-25 12:15:54,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:15:54,962.962 INFO    ] Initializing speech engine...
[2026-08-25 12:15:54,973.973 INFO    ] 2026-08-25 12:15:54
[2026-08-25 12:15:55,240.240 INFO    ] 2026-08-25 12:15:55
[2026-08-25 12:15:55,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:15:55,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:15:55,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:15:55,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:15:55,741.741 INFO    ] time= 25/08/2026 12:15:55
[2026-08-25 12:15:55,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:15:55,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:15:55,941.941 INFO    ] No existing commands found in stream
[2026-08-25 12:16:00,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:16:00,957.957 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 12:16:05,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:16:05,102.102 INFO    ] Checking for system updates...
[2026-08-25 12:16:05,142.142 INFO    ] 200
[2026-08-25 12:16:05,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:05,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:05,208.208 INFO    ] No update needed
[2026-08-25 12:16:05,211.211 INFO    ] Checking for camera pi updates...
[2026-08-25 12:16:05,246.246 INFO    ] 200
[2026-08-25 12:16:05,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:05,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:16:05,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:05,351.351 INFO    ] No camera update needed
[2026-08-25 12:16:05,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:16:05,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:16:05,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:16:05,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:16:07,406.406 INFO    ] ================================================
[2026-08-25 12:16:07,422.422 INFO    ] Launching Daemon at Tue Aug 25 12:16:07 IST 2026
[2026-08-25 12:16:07,433.433 INFO    ] ================================================
[2026-08-25 12:16:07,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:16:07
[2026-08-25 12:16:08,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:16:08,833.833 INFO    ] Initializing speech engine...
[2026-08-25 12:16:08,848.848 INFO    ] 2026-08-25 12:16:08
[2026-08-25 12:16:09,114.114 INFO    ] 2026-08-25 12:16:09
[2026-08-25 12:16:09,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:16:09,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:16:09,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:16:09,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:16:09,598.598 INFO    ] time= 25/08/2026 12:16:09
[2026-08-25 12:16:09,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:16:09,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:16:09,753.753 INFO    ] No existing commands found in stream
[2026-08-25 12:16:14,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:16:14,770.770 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 12:16:16,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:16:16,229.229 INFO    ] Checking for system updates...
[2026-08-25 12:16:16,267.267 INFO    ] 200
[2026-08-25 12:16:16,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:16,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:16,330.330 INFO    ] No update needed
[2026-08-25 12:16:16,332.332 INFO    ] Checking for camera pi updates...
[2026-08-25 12:16:16,366.366 INFO    ] 200
[2026-08-25 12:16:16,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:16,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:16:16,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:16,459.459 INFO    ] No camera update needed
[2026-08-25 12:16:16,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:16:16,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:16:16,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:16:16,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:16:18,514.514 INFO    ] ================================================
[2026-08-25 12:16:18,529.529 INFO    ] Launching Daemon at Tue Aug 25 12:16:18 IST 2026
[2026-08-25 12:16:18,540.540 INFO    ] ================================================
[2026-08-25 12:16:19,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:16:19
[2026-08-25 12:16:19,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:16:19,987.987 INFO    ] Initializing speech engine...
[2026-08-25 12:16:19,997.997 INFO    ] 2026-08-25 12:16:19
[2026-08-25 12:16:20,247.247 INFO    ] 2026-08-25 12:16:20
[2026-08-25 12:16:20,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:16:20,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:16:20,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:16:20,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:16:20,805.805 INFO    ] time= 25/08/2026 12:16:20
[2026-08-25 12:16:20,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:16:20,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:16:20,958.958 INFO    ] No existing commands found in stream
[2026-08-25 12:16:25,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:16:25,976.976 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 12:16:26,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:16:26,990.990 INFO    ] Checking for system updates...
[2026-08-25 12:16:27,026.026 INFO    ] 200
[2026-08-25 12:16:27,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:27,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:27,083.083 INFO    ] No update needed
[2026-08-25 12:16:27,085.085 INFO    ] Checking for camera pi updates...
[2026-08-25 12:16:27,119.119 INFO    ] 200
[2026-08-25 12:16:27,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:27,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:16:27,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:27,213.213 INFO    ] No camera update needed
[2026-08-25 12:16:27,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:16:27,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:16:27,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:16:27,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:16:29,268.268 INFO    ] ================================================
[2026-08-25 12:16:29,283.283 INFO    ] Launching Daemon at Tue Aug 25 12:16:29 IST 2026
[2026-08-25 12:16:29,294.294 INFO    ] ================================================
[2026-08-25 12:16:29,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:16:29
[2026-08-25 12:16:30,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:16:30,814.814 INFO    ] Initializing speech engine...
[2026-08-25 12:16:30,822.822 INFO    ] 2026-08-25 12:16:30
[2026-08-25 12:16:31,089.089 INFO    ] 2026-08-25 12:16:31
[2026-08-25 12:16:31,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:16:31,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:16:31,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:16:31,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:16:31,559.559 INFO    ] time= 25/08/2026 12:16:31
[2026-08-25 12:16:31,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:16:31,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:16:31,741.741 INFO    ] No existing commands found in stream
[2026-08-25 12:16:36,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:16:36,775.775 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 12:16:37,782.782 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:16:37,785.785 INFO    ] Checking for system updates...
[2026-08-25 12:16:37,821.821 INFO    ] 200
[2026-08-25 12:16:37,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:37,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:37,877.877 INFO    ] No update needed
[2026-08-25 12:16:37,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 12:16:37,913.913 INFO    ] 200
[2026-08-25 12:16:37,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:37,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:16:38,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:38,004.004 INFO    ] No camera update needed
[2026-08-25 12:16:38,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:16:38,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:16:38,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:16:38,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:16:40,060.060 INFO    ] ================================================
[2026-08-25 12:16:40,076.076 INFO    ] Launching Daemon at Tue Aug 25 12:16:40 IST 2026
[2026-08-25 12:16:40,086.086 INFO    ] ================================================
[2026-08-25 12:16:40,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:16:40
[2026-08-25 12:16:41,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:16:41,547.547 INFO    ] Initializing speech engine...
[2026-08-25 12:16:41,557.557 INFO    ] 2026-08-25 12:16:41
[2026-08-25 12:16:41,823.823 INFO    ] 2026-08-25 12:16:41
[2026-08-25 12:16:41,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:16:42,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:16:42,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:16:42,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:16:42,345.345 INFO    ] time= 25/08/2026 12:16:42
[2026-08-25 12:16:42,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:16:42,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:16:42,598.598 INFO    ] No existing commands found in stream
[2026-08-25 12:16:47,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:16:47,631.631 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 12:16:48,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:16:48,502.502 INFO    ] Checking for system updates...
[2026-08-25 12:16:48,538.538 INFO    ] 200
[2026-08-25 12:16:48,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:48,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:48,601.601 INFO    ] No update needed
[2026-08-25 12:16:48,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 12:16:48,641.641 INFO    ] 200
[2026-08-25 12:16:48,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:16:48,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:16:48,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:16:48,829.829 INFO    ] No camera update needed
[2026-08-25 12:16:48,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:16:48,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:16:48,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:16:48,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:16:50,884.884 INFO    ] ================================================
[2026-08-25 12:16:50,900.900 INFO    ] Launching Daemon at Tue Aug 25 12:16:50 IST 2026
[2026-08-25 12:16:50,911.911 INFO    ] ================================================
[2026-08-25 12:16:51,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:16:51
[2026-08-25 12:16:52,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:16:52,340.340 INFO    ] Initializing speech engine...
[2026-08-25 12:16:52,349.349 INFO    ] 2026-08-25 12:16:52
[2026-08-25 12:16:52,603.603 INFO    ] 2026-08-25 12:16:52
[2026-08-25 12:16:52,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:16:52,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:16:52,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:16:53,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:16:53,077.077 INFO    ] time= 25/08/2026 12:16:53
[2026-08-25 12:16:53,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:16:53,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:16:53,322.322 INFO    ] No existing commands found in stream
[2026-08-25 12:16:58,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:16:58,338.338 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 12:17:01,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:17:01,447.447 INFO    ] Checking for system updates...
[2026-08-25 12:17:01,496.496 INFO    ] 200
[2026-08-25 12:17:01,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:01,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:17:01,625.625 INFO    ] No update needed
[2026-08-25 12:17:01,629.629 INFO    ] Checking for camera pi updates...
[2026-08-25 12:17:01,680.680 INFO    ] 200
[2026-08-25 12:17:01,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:01,730.730 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:17:01,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:17:01,817.817 INFO    ] No camera update needed
[2026-08-25 12:17:01,820.820 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:17:01,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:17:01,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:17:01,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:17:03,877.877 INFO    ] ================================================
[2026-08-25 12:17:03,891.891 INFO    ] Launching Daemon at Tue Aug 25 12:17:03 IST 2026
[2026-08-25 12:17:03,902.902 INFO    ] ================================================
[2026-08-25 12:17:04,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:17:04
[2026-08-25 12:17:05,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:17:05,470.470 INFO    ] Initializing speech engine...
[2026-08-25 12:17:05,480.480 INFO    ] 2026-08-25 12:17:05
[2026-08-25 12:17:05,751.751 INFO    ] 2026-08-25 12:17:05
[2026-08-25 12:17:05,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:17:06,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:17:06,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:17:06,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:17:06,270.270 INFO    ] time= 25/08/2026 12:17:06
[2026-08-25 12:17:06,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:17:06,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:17:06,499.499 INFO    ] No existing commands found in stream
[2026-08-25 12:17:11,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:17:11,532.532 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 12:17:15,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:17:15,540.540 INFO    ] Checking for system updates...
[2026-08-25 12:17:15,577.577 INFO    ] 200
[2026-08-25 12:17:15,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:15,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:15,641.641 INFO    ] No update needed
[2026-08-25 12:17:15,643.643 INFO    ] Checking for camera pi updates...
[2026-08-25 12:17:15,676.676 INFO    ] 200
[2026-08-25 12:17:15,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:15,726.726 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:17:15,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:15,772.772 INFO    ] No camera update needed
[2026-08-25 12:17:15,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:17:15,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:17:15,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:17:15,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:17:17,832.832 INFO    ] ================================================
[2026-08-25 12:17:17,847.847 INFO    ] Launching Daemon at Tue Aug 25 12:17:17 IST 2026
[2026-08-25 12:17:17,858.858 INFO    ] ================================================
[2026-08-25 12:17:18,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:17:18
[2026-08-25 12:17:19,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:17:19,314.314 INFO    ] Initializing speech engine...
[2026-08-25 12:17:19,333.333 INFO    ] 2026-08-25 12:17:19
[2026-08-25 12:17:19,599.599 INFO    ] 2026-08-25 12:17:19
[2026-08-25 12:17:19,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:17:19,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:17:19,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:17:19,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:17:20,006.006 INFO    ] time= 25/08/2026 12:17:20
[2026-08-25 12:17:20,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:17:20,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:17:20,107.107 INFO    ] No existing commands found in stream
[2026-08-25 12:17:25,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:17:25,141.141 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 12:17:29,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:17:29,582.582 INFO    ] Checking for system updates...
[2026-08-25 12:17:29,617.617 INFO    ] 200
[2026-08-25 12:17:29,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:29,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:29,674.674 INFO    ] No update needed
[2026-08-25 12:17:29,677.677 INFO    ] Checking for camera pi updates...
[2026-08-25 12:17:29,710.710 INFO    ] 200
[2026-08-25 12:17:29,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:29,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:17:29,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:29,815.815 INFO    ] No camera update needed
[2026-08-25 12:17:29,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:17:29,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:17:29,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:17:29,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:17:31,873.873 INFO    ] ================================================
[2026-08-25 12:17:31,889.889 INFO    ] Launching Daemon at Tue Aug 25 12:17:31 IST 2026
[2026-08-25 12:17:31,902.902 INFO    ] ================================================
[2026-08-25 12:17:32,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:17:32
[2026-08-25 12:17:33,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:17:33,381.381 INFO    ] Initializing speech engine...
[2026-08-25 12:17:33,390.390 INFO    ] 2026-08-25 12:17:33
[2026-08-25 12:17:33,665.665 INFO    ] 2026-08-25 12:17:33
[2026-08-25 12:17:33,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:17:33,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:17:33,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:17:34,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:17:34,114.114 INFO    ] time= 25/08/2026 12:17:34
[2026-08-25 12:17:34,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:17:34,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:17:34,388.388 INFO    ] No existing commands found in stream
[2026-08-25 12:17:39,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:17:39,412.412 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 12:17:42,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:17:42,433.433 INFO    ] Checking for system updates...
[2026-08-25 12:17:42,469.469 INFO    ] 200
[2026-08-25 12:17:42,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:42,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:42,525.525 INFO    ] No update needed
[2026-08-25 12:17:42,528.528 INFO    ] Checking for camera pi updates...
[2026-08-25 12:17:42,565.565 INFO    ] 200
[2026-08-25 12:17:42,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:42,608.608 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:17:42,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:42,654.654 INFO    ] No camera update needed
[2026-08-25 12:17:42,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:17:42,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:17:42,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:17:42,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:17:44,711.711 INFO    ] ================================================
[2026-08-25 12:17:44,726.726 INFO    ] Launching Daemon at Tue Aug 25 12:17:44 IST 2026
[2026-08-25 12:17:44,737.737 INFO    ] ================================================
[2026-08-25 12:17:45,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:17:45
[2026-08-25 12:17:46,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:17:46,346.346 INFO    ] Initializing speech engine...
[2026-08-25 12:17:46,355.355 INFO    ] 2026-08-25 12:17:46
[2026-08-25 12:17:46,625.625 INFO    ] 2026-08-25 12:17:46
[2026-08-25 12:17:46,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:17:46,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:17:46,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:17:47,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:17:47,128.128 INFO    ] time= 25/08/2026 12:17:47
[2026-08-25 12:17:47,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:17:47,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:17:47,300.300 INFO    ] No existing commands found in stream
[2026-08-25 12:17:52,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:17:52,340.340 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 12:17:55,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:17:55,768.768 INFO    ] Checking for system updates...
[2026-08-25 12:17:55,804.804 INFO    ] 200
[2026-08-25 12:17:55,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:55,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:55,866.866 INFO    ] No update needed
[2026-08-25 12:17:55,869.869 INFO    ] Checking for camera pi updates...
[2026-08-25 12:17:55,907.907 INFO    ] 200
[2026-08-25 12:17:55,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:17:55,950.950 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:17:56,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:17:56,003.003 INFO    ] No camera update needed
[2026-08-25 12:17:56,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:17:56,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:17:56,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:17:56,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:17:58,061.061 INFO    ] ================================================
[2026-08-25 12:17:58,076.076 INFO    ] Launching Daemon at Tue Aug 25 12:17:58 IST 2026
[2026-08-25 12:17:58,087.087 INFO    ] ================================================
[2026-08-25 12:17:58,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:17:58
[2026-08-25 12:17:59,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:17:59,688.688 INFO    ] Initializing speech engine...
[2026-08-25 12:17:59,700.700 INFO    ] 2026-08-25 12:17:59
[2026-08-25 12:18:00,009.009 INFO    ] 2026-08-25 12:17:59
[2026-08-25 12:18:00,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:18:00,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:18:00,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:18:00,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:18:00,510.510 INFO    ] time= 25/08/2026 12:18:00
[2026-08-25 12:18:00,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:18:00,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:18:00,661.661 INFO    ] No existing commands found in stream
[2026-08-25 12:18:05,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:18:05,678.678 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 12:18:10,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:18:10,162.162 INFO    ] Checking for system updates...
[2026-08-25 12:18:10,199.199 INFO    ] 200
[2026-08-25 12:18:10,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:10,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:18:10,256.256 INFO    ] No update needed
[2026-08-25 12:18:10,259.259 INFO    ] Checking for camera pi updates...
[2026-08-25 12:18:10,293.293 INFO    ] 200
[2026-08-25 12:18:10,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:10,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:18:10,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:18:10,392.392 INFO    ] No camera update needed
[2026-08-25 12:18:10,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:18:10,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:18:10,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:18:10,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:18:12,446.446 INFO    ] ================================================
[2026-08-25 12:18:12,461.461 INFO    ] Launching Daemon at Tue Aug 25 12:18:12 IST 2026
[2026-08-25 12:18:12,473.473 INFO    ] ================================================
[2026-08-25 12:18:13,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:18:13
[2026-08-25 12:18:13,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:18:13,924.924 INFO    ] Initializing speech engine...
[2026-08-25 12:18:13,933.933 INFO    ] 2026-08-25 12:18:13
[2026-08-25 12:18:14,193.193 INFO    ] 2026-08-25 12:18:14
[2026-08-25 12:18:14,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:18:14,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:18:14,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:18:14,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:18:14,674.674 INFO    ] time= 25/08/2026 12:18:14
[2026-08-25 12:18:14,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:18:14,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:18:14,900.900 INFO    ] No existing commands found in stream
[2026-08-25 12:18:19,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:18:19,933.933 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 12:18:23,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:18:23,005.005 INFO    ] Checking for system updates...
[2026-08-25 12:18:23,042.042 INFO    ] 200
[2026-08-25 12:18:23,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:23,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:18:23,109.109 INFO    ] No update needed
[2026-08-25 12:18:23,112.112 INFO    ] Checking for camera pi updates...
[2026-08-25 12:18:23,153.153 INFO    ] 200
[2026-08-25 12:18:23,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:23,197.197 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:18:23,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:18:23,254.254 INFO    ] No camera update needed
[2026-08-25 12:18:23,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:18:23,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:18:23,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:18:23,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:18:25,309.309 INFO    ] ================================================
[2026-08-25 12:18:25,325.325 INFO    ] Launching Daemon at Tue Aug 25 12:18:25 IST 2026
[2026-08-25 12:18:25,336.336 INFO    ] ================================================
[2026-08-25 12:18:25,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:18:25
[2026-08-25 12:18:26,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:18:26,969.969 INFO    ] Initializing speech engine...
[2026-08-25 12:18:26,980.980 INFO    ] 2026-08-25 12:18:26
[2026-08-25 12:18:27,264.264 INFO    ] 2026-08-25 12:18:27
[2026-08-25 12:18:27,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:18:27,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:18:27,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:18:27,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:18:27,729.729 INFO    ] time= 25/08/2026 12:18:27
[2026-08-25 12:18:27,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:18:27,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:18:27,951.951 INFO    ] No existing commands found in stream
[2026-08-25 12:18:32,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:18:32,984.984 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 12:18:35,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:18:35,490.490 INFO    ] Checking for system updates...
[2026-08-25 12:18:35,531.531 INFO    ] 200
[2026-08-25 12:18:35,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:35,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:18:35,597.597 INFO    ] No update needed
[2026-08-25 12:18:35,600.600 INFO    ] Checking for camera pi updates...
[2026-08-25 12:18:35,635.635 INFO    ] 200
[2026-08-25 12:18:35,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:35,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:18:35,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:18:35,738.738 INFO    ] No camera update needed
[2026-08-25 12:18:35,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:18:35,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:18:35,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:18:35,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:18:37,798.798 INFO    ] ================================================
[2026-08-25 12:18:37,813.813 INFO    ] Launching Daemon at Tue Aug 25 12:18:37 IST 2026
[2026-08-25 12:18:37,825.825 INFO    ] ================================================
[2026-08-25 12:18:38,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:18:38
[2026-08-25 12:18:39,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:18:39,444.444 INFO    ] Initializing speech engine...
[2026-08-25 12:18:39,453.453 INFO    ] 2026-08-25 12:18:39
[2026-08-25 12:18:39,740.740 INFO    ] 2026-08-25 12:18:39
[2026-08-25 12:18:39,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:18:40,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:18:40,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:18:40,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:18:40,297.297 INFO    ] time= 25/08/2026 12:18:40
[2026-08-25 12:18:40,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:18:40,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:18:40,494.494 INFO    ] No existing commands found in stream
[2026-08-25 12:18:45,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:18:45,522.522 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 12:18:49,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:18:49,118.118 INFO    ] Checking for system updates...
[2026-08-25 12:18:49,164.164 INFO    ] 200
[2026-08-25 12:18:49,167.167 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:49,171.171 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 12:18:49,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 12:18:49,235.235 INFO    ] 200
[2026-08-25 12:18:49,239.239 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 12:18:49,243.243 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 12:18:49,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:18:49,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:18:49,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:18:49,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:18:51,308.308 INFO    ] ================================================
[2026-08-25 12:18:51,323.323 INFO    ] Launching Daemon at Tue Aug 25 12:18:51 IST 2026
[2026-08-25 12:18:51,335.335 INFO    ] ================================================
[2026-08-25 12:18:51,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:18:51
[2026-08-25 12:18:52,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:18:52,744.744 INFO    ] Initializing speech engine...
[2026-08-25 12:18:52,752.752 INFO    ] 2026-08-25 12:18:52
[2026-08-25 12:18:53,024.024 INFO    ] 2026-08-25 12:18:53
[2026-08-25 12:18:53,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:18:53,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:18:53,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:18:53,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:18:53,516.516 INFO    ] time= 25/08/2026 12:18:53
[2026-08-25 12:18:53,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:18:53,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:18:53,726.726 INFO    ] No existing commands found in stream
[2026-08-25 12:18:58,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:18:58,754.754 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 12:19:00,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:19:00,501.501 INFO    ] Checking for system updates...
[2026-08-25 12:19:00,537.537 INFO    ] 200
[2026-08-25 12:19:00,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:00,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:19:00,600.600 INFO    ] No update needed
[2026-08-25 12:19:00,602.602 INFO    ] Checking for camera pi updates...
[2026-08-25 12:19:00,636.636 INFO    ] 200
[2026-08-25 12:19:00,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:00,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:19:00,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:19:00,828.828 INFO    ] No camera update needed
[2026-08-25 12:19:00,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:19:00,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:19:00,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:19:00,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:19:02,886.886 INFO    ] ================================================
[2026-08-25 12:19:02,903.903 INFO    ] Launching Daemon at Tue Aug 25 12:19:02 IST 2026
[2026-08-25 12:19:02,918.918 INFO    ] ================================================
[2026-08-25 12:19:03,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:19:03
[2026-08-25 12:19:04,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:19:04,447.447 INFO    ] Initializing speech engine...
[2026-08-25 12:19:04,461.461 INFO    ] 2026-08-25 12:19:04
[2026-08-25 12:19:04,737.737 INFO    ] 2026-08-25 12:19:04
[2026-08-25 12:19:04,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:19:05,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:19:05,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:19:05,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:19:05,285.285 INFO    ] time= 25/08/2026 12:19:05
[2026-08-25 12:19:05,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:19:05,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:19:05,442.442 INFO    ] No existing commands found in stream
[2026-08-25 12:19:10,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:19:10,471.471 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 12:19:13,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:19:13,563.563 INFO    ] Checking for system updates...
[2026-08-25 12:19:13,600.600 INFO    ] 200
[2026-08-25 12:19:13,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:13,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:19:13,658.658 INFO    ] No update needed
[2026-08-25 12:19:13,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 12:19:13,696.696 INFO    ] 200
[2026-08-25 12:19:13,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:13,740.740 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:19:13,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:19:13,788.788 INFO    ] No camera update needed
[2026-08-25 12:19:13,790.790 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:19:13,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:19:13,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:19:13,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:19:15,845.845 INFO    ] ================================================
[2026-08-25 12:19:15,860.860 INFO    ] Launching Daemon at Tue Aug 25 12:19:15 IST 2026
[2026-08-25 12:19:15,871.871 INFO    ] ================================================
[2026-08-25 12:19:16,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:19:16
[2026-08-25 12:19:17,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:19:17,463.463 INFO    ] Initializing speech engine...
[2026-08-25 12:19:17,470.470 INFO    ] 2026-08-25 12:19:17
[2026-08-25 12:19:17,791.791 INFO    ] 2026-08-25 12:19:17
[2026-08-25 12:19:17,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:19:18,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:19:18,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:19:18,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:19:18,311.311 INFO    ] time= 25/08/2026 12:19:18
[2026-08-25 12:19:18,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:19:18,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:19:18,467.467 INFO    ] No existing commands found in stream
[2026-08-25 12:19:23,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:19:23,482.482 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 12:19:25,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:19:25,273.273 INFO    ] Checking for system updates...
[2026-08-25 12:19:25,311.311 INFO    ] 200
[2026-08-25 12:19:25,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:25,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:19:25,370.370 INFO    ] No update needed
[2026-08-25 12:19:25,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 12:19:25,407.407 INFO    ] 200
[2026-08-25 12:19:25,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:25,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:19:25,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:19:25,504.504 INFO    ] No camera update needed
[2026-08-25 12:19:25,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:19:25,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:19:25,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:19:25,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:19:27,563.563 INFO    ] ================================================
[2026-08-25 12:19:27,578.578 INFO    ] Launching Daemon at Tue Aug 25 12:19:27 IST 2026
[2026-08-25 12:19:27,589.589 INFO    ] ================================================
[2026-08-25 12:19:28,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:19:28
[2026-08-25 12:19:28,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:19:29,034.034 INFO    ] Initializing speech engine...
[2026-08-25 12:19:29,041.041 INFO    ] 2026-08-25 12:19:29
[2026-08-25 12:19:29,336.336 INFO    ] 2026-08-25 12:19:29
[2026-08-25 12:19:29,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:19:29,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:19:29,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:19:29,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:19:29,757.757 INFO    ] time= 25/08/2026 12:19:29
[2026-08-25 12:19:29,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:19:29,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:19:29,950.950 INFO    ] No existing commands found in stream
[2026-08-25 12:19:34,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:19:34,978.978 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 12:19:38,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:19:38,309.309 INFO    ] Checking for system updates...
[2026-08-25 12:19:38,348.348 INFO    ] 200
[2026-08-25 12:19:38,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:38,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:19:38,406.406 INFO    ] No update needed
[2026-08-25 12:19:38,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 12:19:38,442.442 INFO    ] 200
[2026-08-25 12:19:38,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:38,485.485 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:19:38,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:19:38,541.541 INFO    ] No camera update needed
[2026-08-25 12:19:38,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:19:38,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:19:38,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:19:38,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:19:40,595.595 INFO    ] ================================================
[2026-08-25 12:19:40,611.611 INFO    ] Launching Daemon at Tue Aug 25 12:19:40 IST 2026
[2026-08-25 12:19:40,622.622 INFO    ] ================================================
[2026-08-25 12:19:41,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:19:41
[2026-08-25 12:19:41,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:19:42,043.043 INFO    ] Initializing speech engine...
[2026-08-25 12:19:42,053.053 INFO    ] 2026-08-25 12:19:42
[2026-08-25 12:19:42,298.298 INFO    ] 2026-08-25 12:19:42
[2026-08-25 12:19:42,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:19:42,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:19:42,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:19:42,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:19:42,701.701 INFO    ] time= 25/08/2026 12:19:42
[2026-08-25 12:19:42,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:19:42,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:19:42,870.870 INFO    ] No existing commands found in stream
[2026-08-25 12:19:47,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:19:47,884.884 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 12:19:51,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:19:51,925.925 INFO    ] Checking for system updates...
[2026-08-25 12:19:51,961.961 INFO    ] 200
[2026-08-25 12:19:51,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:52,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:19:52,018.018 INFO    ] No update needed
[2026-08-25 12:19:52,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 12:19:52,057.057 INFO    ] 200
[2026-08-25 12:19:52,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:19:52,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:19:52,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:19:52,165.165 INFO    ] No camera update needed
[2026-08-25 12:19:52,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:19:52,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:19:52,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:19:52,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:19:54,220.220 INFO    ] ================================================
[2026-08-25 12:19:54,236.236 INFO    ] Launching Daemon at Tue Aug 25 12:19:54 IST 2026
[2026-08-25 12:19:54,247.247 INFO    ] ================================================
[2026-08-25 12:19:54,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:19:54
[2026-08-25 12:19:55,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:19:55,692.692 INFO    ] Initializing speech engine...
[2026-08-25 12:19:55,700.700 INFO    ] 2026-08-25 12:19:55
[2026-08-25 12:19:55,994.994 INFO    ] 2026-08-25 12:19:55
[2026-08-25 12:19:56,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:19:56,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:19:56,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:19:56,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:19:56,411.411 INFO    ] time= 25/08/2026 12:19:56
[2026-08-25 12:19:56,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:19:56,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:19:56,588.588 INFO    ] No existing commands found in stream
[2026-08-25 12:20:01,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:20:01,618.618 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 12:20:05,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:20:05,204.204 INFO    ] Checking for system updates...
[2026-08-25 12:20:05,240.240 INFO    ] 200
[2026-08-25 12:20:05,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:05,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:20:05,298.298 INFO    ] No update needed
[2026-08-25 12:20:05,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 12:20:05,334.334 INFO    ] 200
[2026-08-25 12:20:05,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:05,380.380 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:20:05,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:20:05,440.440 INFO    ] No camera update needed
[2026-08-25 12:20:05,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:20:05,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:20:05,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:20:05,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:20:07,496.496 INFO    ] ================================================
[2026-08-25 12:20:07,512.512 INFO    ] Launching Daemon at Tue Aug 25 12:20:07 IST 2026
[2026-08-25 12:20:07,523.523 INFO    ] ================================================
[2026-08-25 12:20:08,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:20:08
[2026-08-25 12:20:08,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:20:09,080.080 INFO    ] Initializing speech engine...
[2026-08-25 12:20:09,088.088 INFO    ] 2026-08-25 12:20:09
[2026-08-25 12:20:09,353.353 INFO    ] 2026-08-25 12:20:09
[2026-08-25 12:20:09,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:20:09,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:20:09,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:20:09,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:20:09,876.876 INFO    ] time= 25/08/2026 12:20:09
[2026-08-25 12:20:09,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:20:09,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:20:10,069.069 INFO    ] No existing commands found in stream
[2026-08-25 12:20:15,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:20:15,100.100 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 12:20:19,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:20:19,482.482 INFO    ] Checking for system updates...
[2026-08-25 12:20:19,518.518 INFO    ] 200
[2026-08-25 12:20:19,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:19,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:20:19,577.577 INFO    ] No update needed
[2026-08-25 12:20:19,579.579 INFO    ] Checking for camera pi updates...
[2026-08-25 12:20:19,613.613 INFO    ] 200
[2026-08-25 12:20:19,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:19,656.656 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:20:19,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:20:19,711.711 INFO    ] No camera update needed
[2026-08-25 12:20:19,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:20:19,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:20:19,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:20:19,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:20:21,766.766 INFO    ] ================================================
[2026-08-25 12:20:21,781.781 INFO    ] Launching Daemon at Tue Aug 25 12:20:21 IST 2026
[2026-08-25 12:20:21,793.793 INFO    ] ================================================
[2026-08-25 12:20:22,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:20:22
[2026-08-25 12:20:22,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:20:23,220.220 INFO    ] Initializing speech engine...
[2026-08-25 12:20:23,230.230 INFO    ] 2026-08-25 12:20:23
[2026-08-25 12:20:23,479.479 INFO    ] 2026-08-25 12:20:23
[2026-08-25 12:20:23,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:20:23,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:20:23,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:20:23,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:20:23,989.989 INFO    ] time= 25/08/2026 12:20:23
[2026-08-25 12:20:24,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:20:24,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:20:24,175.175 INFO    ] No existing commands found in stream
[2026-08-25 12:20:29,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:20:29,203.203 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 12:20:32,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:20:32,738.738 INFO    ] Checking for system updates...
[2026-08-25 12:20:32,776.776 INFO    ] 200
[2026-08-25 12:20:32,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:32,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:20:32,832.832 INFO    ] No update needed
[2026-08-25 12:20:32,835.835 INFO    ] Checking for camera pi updates...
[2026-08-25 12:20:32,873.873 INFO    ] 200
[2026-08-25 12:20:32,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:32,915.915 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:20:32,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:20:32,971.971 INFO    ] No camera update needed
[2026-08-25 12:20:32,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:20:32,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:20:32,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:20:32,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:20:35,024.024 INFO    ] ================================================
[2026-08-25 12:20:35,040.040 INFO    ] Launching Daemon at Tue Aug 25 12:20:35 IST 2026
[2026-08-25 12:20:35,051.051 INFO    ] ================================================
[2026-08-25 12:20:35,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:20:35
[2026-08-25 12:20:36,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:20:36,509.509 INFO    ] Initializing speech engine...
[2026-08-25 12:20:36,514.514 INFO    ] 2026-08-25 12:20:36
[2026-08-25 12:20:36,776.776 INFO    ] 2026-08-25 12:20:36
[2026-08-25 12:20:36,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:20:37,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:20:37,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:20:37,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:20:37,259.259 INFO    ] time= 25/08/2026 12:20:37
[2026-08-25 12:20:37,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:20:37,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:20:37,469.469 INFO    ] No existing commands found in stream
[2026-08-25 12:20:42,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:20:42,488.488 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 12:20:44,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:20:44,082.082 INFO    ] Checking for system updates...
[2026-08-25 12:20:44,118.118 INFO    ] 200
[2026-08-25 12:20:44,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:44,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:20:44,174.174 INFO    ] No update needed
[2026-08-25 12:20:44,177.177 INFO    ] Checking for camera pi updates...
[2026-08-25 12:20:44,210.210 INFO    ] 200
[2026-08-25 12:20:44,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:44,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:20:44,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:20:44,304.304 INFO    ] No camera update needed
[2026-08-25 12:20:44,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:20:44,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:20:44,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:20:44,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:20:46,358.358 INFO    ] ================================================
[2026-08-25 12:20:46,373.373 INFO    ] Launching Daemon at Tue Aug 25 12:20:46 IST 2026
[2026-08-25 12:20:46,385.385 INFO    ] ================================================
[2026-08-25 12:20:46,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:20:46
[2026-08-25 12:20:47,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:20:47,830.830 INFO    ] Initializing speech engine...
[2026-08-25 12:20:47,836.836 INFO    ] 2026-08-25 12:20:47
[2026-08-25 12:20:48,096.096 INFO    ] 2026-08-25 12:20:48
[2026-08-25 12:20:48,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:20:48,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:20:48,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:20:48,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:20:48,561.561 INFO    ] time= 25/08/2026 12:20:48
[2026-08-25 12:20:48,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:20:48,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:20:48,798.798 INFO    ] No existing commands found in stream
[2026-08-25 12:20:53,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:20:53,829.829 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 12:20:57,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:20:57,431.431 INFO    ] Checking for system updates...
[2026-08-25 12:20:57,467.467 INFO    ] 200
[2026-08-25 12:20:57,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:57,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:20:57,527.527 INFO    ] No update needed
[2026-08-25 12:20:57,529.529 INFO    ] Checking for camera pi updates...
[2026-08-25 12:20:57,563.563 INFO    ] 200
[2026-08-25 12:20:57,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:20:57,606.606 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:20:57,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:20:57,654.654 INFO    ] No camera update needed
[2026-08-25 12:20:57,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:20:57,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:20:57,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:20:57,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:20:59,708.708 INFO    ] ================================================
[2026-08-25 12:20:59,724.724 INFO    ] Launching Daemon at Tue Aug 25 12:20:59 IST 2026
[2026-08-25 12:20:59,735.735 INFO    ] ================================================
[2026-08-25 12:21:00,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:21:00
[2026-08-25 12:21:00,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:21:01,142.142 INFO    ] Initializing speech engine...
[2026-08-25 12:21:01,149.149 INFO    ] 2026-08-25 12:21:01
[2026-08-25 12:21:01,434.434 INFO    ] 2026-08-25 12:21:01
[2026-08-25 12:21:01,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:21:01,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:21:01,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:21:01,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:21:01,882.882 INFO    ] time= 25/08/2026 12:21:01
[2026-08-25 12:21:01,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:21:01,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:21:01,961.961 INFO    ] No existing commands found in stream
[2026-08-25 12:21:06,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:21:06,975.975 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 12:21:10,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:21:10,091.091 INFO    ] Checking for system updates...
[2026-08-25 12:21:10,129.129 INFO    ] 200
[2026-08-25 12:21:10,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:10,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:21:10,191.191 INFO    ] No update needed
[2026-08-25 12:21:10,193.193 INFO    ] Checking for camera pi updates...
[2026-08-25 12:21:10,226.226 INFO    ] 200
[2026-08-25 12:21:10,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:10,268.268 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:21:10,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:21:10,416.416 INFO    ] No camera update needed
[2026-08-25 12:21:10,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:21:10,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:21:10,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:21:10,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:21:12,471.471 INFO    ] ================================================
[2026-08-25 12:21:12,487.487 INFO    ] Launching Daemon at Tue Aug 25 12:21:12 IST 2026
[2026-08-25 12:21:12,497.497 INFO    ] ================================================
[2026-08-25 12:21:13,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:21:13
[2026-08-25 12:21:13,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:21:13,908.908 INFO    ] Initializing speech engine...
[2026-08-25 12:21:13,930.930 INFO    ] 2026-08-25 12:21:13
[2026-08-25 12:21:14,191.191 INFO    ] 2026-08-25 12:21:14
[2026-08-25 12:21:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:21:14,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:21:14,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:21:14,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:21:14,569.569 INFO    ] time= 25/08/2026 12:21:14
[2026-08-25 12:21:14,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:21:14,616.616 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:21:14,756.756 INFO    ] No existing commands found in stream
[2026-08-25 12:21:19,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:21:19,784.784 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 12:21:22,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:21:22,204.204 INFO    ] Checking for system updates...
[2026-08-25 12:21:22,240.240 INFO    ] 200
[2026-08-25 12:21:22,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:22,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:21:22,296.296 INFO    ] No update needed
[2026-08-25 12:21:22,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 12:21:22,336.336 INFO    ] 200
[2026-08-25 12:21:22,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:22,384.384 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:21:22,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:21:22,443.443 INFO    ] No camera update needed
[2026-08-25 12:21:22,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:21:22,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:21:22,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:21:22,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:21:24,500.500 INFO    ] ================================================
[2026-08-25 12:21:24,515.515 INFO    ] Launching Daemon at Tue Aug 25 12:21:24 IST 2026
[2026-08-25 12:21:24,527.527 INFO    ] ================================================
[2026-08-25 12:21:25,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:21:25
[2026-08-25 12:21:25,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:21:25,946.946 INFO    ] Initializing speech engine...
[2026-08-25 12:21:25,955.955 INFO    ] 2026-08-25 12:21:25
[2026-08-25 12:21:26,205.205 INFO    ] 2026-08-25 12:21:26
[2026-08-25 12:21:26,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:21:26,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:21:26,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:21:26,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:21:26,683.683 INFO    ] time= 25/08/2026 12:21:26
[2026-08-25 12:21:26,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:21:26,776.776 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:21:26,907.907 INFO    ] No existing commands found in stream
[2026-08-25 12:21:31,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:21:31,936.936 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 12:21:36,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:21:36,341.341 INFO    ] Checking for system updates...
[2026-08-25 12:21:36,395.395 INFO    ] 200
[2026-08-25 12:21:36,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:36,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:21:36,480.480 INFO    ] No update needed
[2026-08-25 12:21:36,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 12:21:36,523.523 INFO    ] 200
[2026-08-25 12:21:36,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:36,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:21:36,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:21:36,627.627 INFO    ] No camera update needed
[2026-08-25 12:21:36,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:21:36,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:21:36,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:21:36,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:21:38,688.688 INFO    ] ================================================
[2026-08-25 12:21:38,706.706 INFO    ] Launching Daemon at Tue Aug 25 12:21:38 IST 2026
[2026-08-25 12:21:38,717.717 INFO    ] ================================================
[2026-08-25 12:21:39,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:21:39
[2026-08-25 12:21:39,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:21:40,180.180 INFO    ] Initializing speech engine...
[2026-08-25 12:21:40,203.203 INFO    ] 2026-08-25 12:21:40
[2026-08-25 12:21:40,489.489 INFO    ] 2026-08-25 12:21:40
[2026-08-25 12:21:40,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:21:40,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:21:40,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:21:40,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:21:40,948.948 INFO    ] time= 25/08/2026 12:21:40
[2026-08-25 12:21:41,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:21:41,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:21:41,091.091 INFO    ] No existing commands found in stream
[2026-08-25 12:21:46,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:21:46,106.106 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 12:21:46,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:21:46,638.638 INFO    ] Checking for system updates...
[2026-08-25 12:21:46,724.724 INFO    ] 200
[2026-08-25 12:21:46,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:46,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:21:46,783.783 INFO    ] No update needed
[2026-08-25 12:21:46,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 12:21:46,820.820 INFO    ] 200
[2026-08-25 12:21:46,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:21:46,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:21:46,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:21:46,915.915 INFO    ] No camera update needed
[2026-08-25 12:21:46,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:21:46,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:21:46,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:21:46,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:21:48,971.971 INFO    ] ================================================
[2026-08-25 12:21:48,986.986 INFO    ] Launching Daemon at Tue Aug 25 12:21:48 IST 2026
[2026-08-25 12:21:49,997.997 INFO    ] ================================================
[2026-08-25 12:21:49,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:21:49
[2026-08-25 12:21:50,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:21:50,484.484 INFO    ] Initializing speech engine...
[2026-08-25 12:21:50,507.507 INFO    ] 2026-08-25 12:21:50
[2026-08-25 12:21:50,793.793 INFO    ] 2026-08-25 12:21:50
[2026-08-25 12:21:50,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:21:51,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:21:51,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:21:51,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:21:51,166.166 INFO    ] time= 25/08/2026 12:21:51
[2026-08-25 12:21:51,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:21:51,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:21:51,361.361 INFO    ] No existing commands found in stream
[2026-08-25 12:21:56,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:21:56,378.378 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 12:22:00,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:22:00,752.752 INFO    ] Checking for system updates...
[2026-08-25 12:22:00,787.787 INFO    ] 200
[2026-08-25 12:22:00,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:00,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:00,845.845 INFO    ] No update needed
[2026-08-25 12:22:00,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 12:22:00,882.882 INFO    ] 200
[2026-08-25 12:22:00,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:00,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:22:00,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:00,972.972 INFO    ] No camera update needed
[2026-08-25 12:22:00,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:22:00,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:22:00,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:22:00,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:22:03,034.034 INFO    ] ================================================
[2026-08-25 12:22:03,050.050 INFO    ] Launching Daemon at Tue Aug 25 12:22:03 IST 2026
[2026-08-25 12:22:03,062.062 INFO    ] ================================================
[2026-08-25 12:22:03,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:22:03
[2026-08-25 12:22:04,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:22:04,554.554 INFO    ] Initializing speech engine...
[2026-08-25 12:22:04,563.563 INFO    ] 2026-08-25 12:22:04
[2026-08-25 12:22:04,824.824 INFO    ] 2026-08-25 12:22:04
[2026-08-25 12:22:04,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:22:05,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:22:05,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:22:05,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:22:05,302.302 INFO    ] time= 25/08/2026 12:22:05
[2026-08-25 12:22:05,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:22:05,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:22:05,521.521 INFO    ] No existing commands found in stream
[2026-08-25 12:22:10,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:22:10,539.539 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 12:22:12,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:22:12,857.857 INFO    ] Checking for system updates...
[2026-08-25 12:22:12,896.896 INFO    ] 200
[2026-08-25 12:22:12,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:12,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:12,954.954 INFO    ] No update needed
[2026-08-25 12:22:12,956.956 INFO    ] Checking for camera pi updates...
[2026-08-25 12:22:12,990.990 INFO    ] 200
[2026-08-25 12:22:12,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:13,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:22:13,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:13,083.083 INFO    ] No camera update needed
[2026-08-25 12:22:13,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:22:13,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:22:13,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:22:13,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:22:15,140.140 INFO    ] ================================================
[2026-08-25 12:22:15,155.155 INFO    ] Launching Daemon at Tue Aug 25 12:22:15 IST 2026
[2026-08-25 12:22:15,166.166 INFO    ] ================================================
[2026-08-25 12:22:15,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:22:15
[2026-08-25 12:22:16,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:22:16,594.594 INFO    ] Initializing speech engine...
[2026-08-25 12:22:16,599.599 INFO    ] 2026-08-25 12:22:16
[2026-08-25 12:22:16,858.858 INFO    ] 2026-08-25 12:22:16
[2026-08-25 12:22:16,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:22:17,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:22:17,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:22:17,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:22:17,303.303 INFO    ] time= 25/08/2026 12:22:17
[2026-08-25 12:22:17,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:22:17,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:22:17,497.497 INFO    ] No existing commands found in stream
[2026-08-25 12:22:22,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:22:22,521.521 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 12:22:26,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:22:26,209.209 INFO    ] Checking for system updates...
[2026-08-25 12:22:26,245.245 INFO    ] 200
[2026-08-25 12:22:26,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:26,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:22:26,301.301 INFO    ] No update needed
[2026-08-25 12:22:26,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 12:22:26,339.339 INFO    ] 200
[2026-08-25 12:22:26,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:26,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:22:26,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:22:26,434.434 INFO    ] No camera update needed
[2026-08-25 12:22:26,437.437 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:22:26,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:22:26,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:22:26,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:22:28,490.490 INFO    ] ================================================
[2026-08-25 12:22:28,505.505 INFO    ] Launching Daemon at Tue Aug 25 12:22:28 IST 2026
[2026-08-25 12:22:28,516.516 INFO    ] ================================================
[2026-08-25 12:22:29,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:22:29
[2026-08-25 12:22:29,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:22:29,940.940 INFO    ] Initializing speech engine...
[2026-08-25 12:22:29,946.946 INFO    ] 2026-08-25 12:22:29
[2026-08-25 12:22:30,254.254 INFO    ] 2026-08-25 12:22:30
[2026-08-25 12:22:30,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:22:30,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:22:30,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:22:30,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:22:30,642.642 INFO    ] time= 25/08/2026 12:22:30
[2026-08-25 12:22:30,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:22:30,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:22:30,780.780 INFO    ] No existing commands found in stream
[2026-08-25 12:22:35,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:22:35,793.793 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 12:22:37,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:22:37,005.005 INFO    ] Checking for system updates...
[2026-08-25 12:22:37,040.040 INFO    ] 200
[2026-08-25 12:22:37,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:37,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:37,099.099 INFO    ] No update needed
[2026-08-25 12:22:37,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 12:22:37,134.134 INFO    ] 200
[2026-08-25 12:22:37,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:37,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:22:37,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:37,232.232 INFO    ] No camera update needed
[2026-08-25 12:22:37,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:22:37,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:22:37,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:22:37,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:22:39,287.287 INFO    ] ================================================
[2026-08-25 12:22:39,302.302 INFO    ] Launching Daemon at Tue Aug 25 12:22:39 IST 2026
[2026-08-25 12:22:39,313.313 INFO    ] ================================================
[2026-08-25 12:22:39,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:22:39
[2026-08-25 12:22:40,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:22:40,720.720 INFO    ] Initializing speech engine...
[2026-08-25 12:22:40,730.730 INFO    ] 2026-08-25 12:22:40
[2026-08-25 12:22:41,029.029 INFO    ] 2026-08-25 12:22:40
[2026-08-25 12:22:41,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:22:41,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:22:41,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:22:41,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:22:41,422.422 INFO    ] time= 25/08/2026 12:22:41
[2026-08-25 12:22:41,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:22:41,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:22:41,559.559 INFO    ] No existing commands found in stream
[2026-08-25 12:22:46,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:22:46,576.576 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 12:22:47,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:22:47,315.315 INFO    ] Checking for system updates...
[2026-08-25 12:22:47,356.356 INFO    ] 200
[2026-08-25 12:22:47,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:47,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:22:47,422.422 INFO    ] No update needed
[2026-08-25 12:22:47,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 12:22:47,463.463 INFO    ] 200
[2026-08-25 12:22:47,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:47,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:22:47,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:22:47,558.558 INFO    ] No camera update needed
[2026-08-25 12:22:47,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:22:47,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:22:47,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:22:47,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:22:49,616.616 INFO    ] ================================================
[2026-08-25 12:22:49,631.631 INFO    ] Launching Daemon at Tue Aug 25 12:22:49 IST 2026
[2026-08-25 12:22:49,641.641 INFO    ] ================================================
[2026-08-25 12:22:50,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:22:50
[2026-08-25 12:22:51,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:22:51,324.324 INFO    ] Initializing speech engine...
[2026-08-25 12:22:51,332.332 INFO    ] 2026-08-25 12:22:51
[2026-08-25 12:22:51,624.624 INFO    ] 2026-08-25 12:22:51
[2026-08-25 12:22:51,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:22:51,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:22:51,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:22:52,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:22:52,114.114 INFO    ] time= 25/08/2026 12:22:52
[2026-08-25 12:22:52,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:22:52,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:22:52,319.319 INFO    ] No existing commands found in stream
[2026-08-25 12:22:57,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:22:57,345.345 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 12:22:58,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:22:58,725.725 INFO    ] Checking for system updates...
[2026-08-25 12:22:58,762.762 INFO    ] 200
[2026-08-25 12:22:58,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:58,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:58,822.822 INFO    ] No update needed
[2026-08-25 12:22:58,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 12:22:58,861.861 INFO    ] 200
[2026-08-25 12:22:58,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:22:58,910.910 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:22:58,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:22:58,964.964 INFO    ] No camera update needed
[2026-08-25 12:22:58,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:22:58,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:22:58,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:22:58,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:23:01,025.025 INFO    ] ================================================
[2026-08-25 12:23:01,041.041 INFO    ] Launching Daemon at Tue Aug 25 12:23:01 IST 2026
[2026-08-25 12:23:01,052.052 INFO    ] ================================================
[2026-08-25 12:23:01,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:23:01
[2026-08-25 12:23:02,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:23:02,695.695 INFO    ] Initializing speech engine...
[2026-08-25 12:23:02,702.702 INFO    ] 2026-08-25 12:23:02
[2026-08-25 12:23:03,029.029 INFO    ] 2026-08-25 12:23:03
[2026-08-25 12:23:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:23:03,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:23:03,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:23:03,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:23:03,462.462 INFO    ] time= 25/08/2026 12:23:03
[2026-08-25 12:23:03,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:23:03,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:23:03,555.555 INFO    ] No existing commands found in stream
[2026-08-25 12:23:08,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:23:08,569.569 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 12:23:10,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:23:10,168.168 INFO    ] Checking for system updates...
[2026-08-25 12:23:10,209.209 INFO    ] 200
[2026-08-25 12:23:10,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:10,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:23:10,272.272 INFO    ] No update needed
[2026-08-25 12:23:10,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 12:23:10,309.309 INFO    ] 200
[2026-08-25 12:23:10,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:10,357.357 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:23:10,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:23:10,402.402 INFO    ] No camera update needed
[2026-08-25 12:23:10,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:23:10,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:23:10,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:23:10,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:23:12,459.459 INFO    ] ================================================
[2026-08-25 12:23:12,475.475 INFO    ] Launching Daemon at Tue Aug 25 12:23:12 IST 2026
[2026-08-25 12:23:12,486.486 INFO    ] ================================================
[2026-08-25 12:23:13,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:23:13
[2026-08-25 12:23:13,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:23:14,147.147 INFO    ] Initializing speech engine...
[2026-08-25 12:23:14,155.155 INFO    ] 2026-08-25 12:23:14
[2026-08-25 12:23:14,413.413 INFO    ] 2026-08-25 12:23:14
[2026-08-25 12:23:14,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:23:14,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:23:14,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:23:14,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:23:14,999.999 INFO    ] time= 25/08/2026 12:23:14
[2026-08-25 12:23:15,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:23:15,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:23:15,184.184 INFO    ] No existing commands found in stream
[2026-08-25 12:23:20,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:23:20,219.219 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 12:23:23,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:23:23,883.883 INFO    ] Checking for system updates...
[2026-08-25 12:23:23,925.925 INFO    ] 200
[2026-08-25 12:23:23,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:23,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:23:23,999.999 INFO    ] No update needed
[2026-08-25 12:23:24,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 12:23:24,036.036 INFO    ] 200
[2026-08-25 12:23:24,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:24,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:23:24,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:23:24,228.228 INFO    ] No camera update needed
[2026-08-25 12:23:24,231.231 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:23:24,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:23:24,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:23:24,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:23:26,287.287 INFO    ] ================================================
[2026-08-25 12:23:26,303.303 INFO    ] Launching Daemon at Tue Aug 25 12:23:26 IST 2026
[2026-08-25 12:23:26,314.314 INFO    ] ================================================
[2026-08-25 12:23:26,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:23:26
[2026-08-25 12:23:27,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:23:27,726.726 INFO    ] Initializing speech engine...
[2026-08-25 12:23:27,750.750 INFO    ] 2026-08-25 12:23:27
[2026-08-25 12:23:28,007.007 INFO    ] 2026-08-25 12:23:27
[2026-08-25 12:23:28,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:23:28,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:23:28,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:23:28,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:23:28,384.384 INFO    ] time= 25/08/2026 12:23:28
[2026-08-25 12:23:28,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:23:28,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:23:28,587.587 INFO    ] No existing commands found in stream
[2026-08-25 12:23:33,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:23:33,600.600 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 12:23:37,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:23:37,359.359 INFO    ] Checking for system updates...
[2026-08-25 12:23:37,395.395 INFO    ] 200
[2026-08-25 12:23:37,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:37,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:23:37,452.452 INFO    ] No update needed
[2026-08-25 12:23:37,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 12:23:37,488.488 INFO    ] 200
[2026-08-25 12:23:37,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:37,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:23:37,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:23:37,582.582 INFO    ] No camera update needed
[2026-08-25 12:23:37,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:23:37,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:23:37,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:23:37,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:23:39,641.641 INFO    ] ================================================
[2026-08-25 12:23:39,657.657 INFO    ] Launching Daemon at Tue Aug 25 12:23:39 IST 2026
[2026-08-25 12:23:39,668.668 INFO    ] ================================================
[2026-08-25 12:23:40,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:23:40
[2026-08-25 12:23:41,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:23:41,349.349 INFO    ] Initializing speech engine...
[2026-08-25 12:23:41,361.361 INFO    ] 2026-08-25 12:23:41
[2026-08-25 12:23:41,657.657 INFO    ] 2026-08-25 12:23:41
[2026-08-25 12:23:41,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:23:41,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:23:41,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:23:42,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:23:42,156.156 INFO    ] time= 25/08/2026 12:23:42
[2026-08-25 12:23:42,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:23:42,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:23:42,348.348 INFO    ] No existing commands found in stream
[2026-08-25 12:23:47,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:23:47,380.380 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 12:23:49,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:23:49,781.781 INFO    ] Checking for system updates...
[2026-08-25 12:23:49,816.816 INFO    ] 200
[2026-08-25 12:23:49,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:49,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:23:49,872.872 INFO    ] No update needed
[2026-08-25 12:23:49,875.875 INFO    ] Checking for camera pi updates...
[2026-08-25 12:23:49,913.913 INFO    ] 200
[2026-08-25 12:23:49,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:23:49,958.958 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:23:50,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:23:50,015.015 INFO    ] No camera update needed
[2026-08-25 12:23:50,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:23:50,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:23:50,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:23:50,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:23:52,076.076 INFO    ] ================================================
[2026-08-25 12:23:52,091.091 INFO    ] Launching Daemon at Tue Aug 25 12:23:52 IST 2026
[2026-08-25 12:23:52,102.102 INFO    ] ================================================
[2026-08-25 12:23:52,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:23:52
[2026-08-25 12:23:53,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:23:53,715.715 INFO    ] Initializing speech engine...
[2026-08-25 12:23:53,723.723 INFO    ] 2026-08-25 12:23:53
[2026-08-25 12:23:53,997.997 INFO    ] 2026-08-25 12:23:53
[2026-08-25 12:23:54,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:23:54,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:23:54,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:23:54,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:23:54,488.488 INFO    ] time= 25/08/2026 12:23:54
[2026-08-25 12:23:54,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:23:54,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:23:54,755.755 INFO    ] No existing commands found in stream
[2026-08-25 12:23:59,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:23:59,776.776 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 12:24:01,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:24:01,792.792 INFO    ] Checking for system updates...
[2026-08-25 12:24:01,864.864 INFO    ] 200
[2026-08-25 12:24:01,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:01,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:24:01,945.945 INFO    ] No update needed
[2026-08-25 12:24:01,948.948 INFO    ] Checking for camera pi updates...
[2026-08-25 12:24:02,006.006 INFO    ] 200
[2026-08-25 12:24:02,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:02,082.082 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:24:02,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:24:02,159.159 INFO    ] No camera update needed
[2026-08-25 12:24:02,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:24:02,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:24:02,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:24:02,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:24:04,223.223 INFO    ] ================================================
[2026-08-25 12:24:04,239.239 INFO    ] Launching Daemon at Tue Aug 25 12:24:04 IST 2026
[2026-08-25 12:24:04,250.250 INFO    ] ================================================
[2026-08-25 12:24:04,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:24:04
[2026-08-25 12:24:05,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:24:05,678.678 INFO    ] Initializing speech engine...
[2026-08-25 12:24:05,689.689 INFO    ] 2026-08-25 12:24:05
[2026-08-25 12:24:05,932.932 INFO    ] 2026-08-25 12:24:05
[2026-08-25 12:24:05,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:24:06,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:24:06,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:24:06,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:24:06,405.405 INFO    ] time= 25/08/2026 12:24:06
[2026-08-25 12:24:06,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:24:06,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:24:06,627.627 INFO    ] No existing commands found in stream
[2026-08-25 12:24:11,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:24:11,651.651 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 12:24:12,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:24:12,620.620 INFO    ] Checking for system updates...
[2026-08-25 12:24:12,659.659 INFO    ] 200
[2026-08-25 12:24:12,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:12,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:24:12,717.717 INFO    ] No update needed
[2026-08-25 12:24:12,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 12:24:12,756.756 INFO    ] 200
[2026-08-25 12:24:12,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:12,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:24:12,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:24:12,857.857 INFO    ] No camera update needed
[2026-08-25 12:24:12,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:24:12,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:24:12,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:24:12,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:24:14,913.913 INFO    ] ================================================
[2026-08-25 12:24:14,928.928 INFO    ] Launching Daemon at Tue Aug 25 12:24:14 IST 2026
[2026-08-25 12:24:14,939.939 INFO    ] ================================================
[2026-08-25 12:24:15,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:24:15
[2026-08-25 12:24:16,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:24:16,362.362 INFO    ] Initializing speech engine...
[2026-08-25 12:24:16,371.371 INFO    ] 2026-08-25 12:24:16
[2026-08-25 12:24:16,621.621 INFO    ] 2026-08-25 12:24:16
[2026-08-25 12:24:16,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:24:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:24:16,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:24:16,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:24:17,061.061 INFO    ] time= 25/08/2026 12:24:17
[2026-08-25 12:24:17,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:24:17,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:24:17,247.247 INFO    ] No existing commands found in stream
[2026-08-25 12:24:22,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:24:22,261.261 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 12:24:24,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:24:24,453.453 INFO    ] Checking for system updates...
[2026-08-25 12:24:24,490.490 INFO    ] 200
[2026-08-25 12:24:24,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:24,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:24:24,548.548 INFO    ] No update needed
[2026-08-25 12:24:24,551.551 INFO    ] Checking for camera pi updates...
[2026-08-25 12:24:24,589.589 INFO    ] 200
[2026-08-25 12:24:24,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:24,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:24:24,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:24:24,683.683 INFO    ] No camera update needed
[2026-08-25 12:24:24,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:24:24,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:24:24,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:24:24,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:24:26,742.742 INFO    ] ================================================
[2026-08-25 12:24:26,758.758 INFO    ] Launching Daemon at Tue Aug 25 12:24:26 IST 2026
[2026-08-25 12:24:26,769.769 INFO    ] ================================================
[2026-08-25 12:24:27,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:24:27
[2026-08-25 12:24:27,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:24:28,250.250 INFO    ] Initializing speech engine...
[2026-08-25 12:24:28,268.268 INFO    ] 2026-08-25 12:24:28
[2026-08-25 12:24:28,516.516 INFO    ] 2026-08-25 12:24:28
[2026-08-25 12:24:28,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:24:28,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:24:28,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:24:28,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:24:29,027.027 INFO    ] time= 25/08/2026 12:24:28
[2026-08-25 12:24:29,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:24:29,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:24:29,223.223 INFO    ] No existing commands found in stream
[2026-08-25 12:24:34,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:24:34,277.277 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 12:24:37,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:24:37,117.117 INFO    ] Checking for system updates...
[2026-08-25 12:24:37,154.154 INFO    ] 200
[2026-08-25 12:24:37,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:37,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:24:37,213.213 INFO    ] No update needed
[2026-08-25 12:24:37,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 12:24:37,256.256 INFO    ] 200
[2026-08-25 12:24:37,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:37,300.300 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:24:37,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:24:37,350.350 INFO    ] No camera update needed
[2026-08-25 12:24:37,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:24:37,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:24:37,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:24:37,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:24:39,410.410 INFO    ] ================================================
[2026-08-25 12:24:39,426.426 INFO    ] Launching Daemon at Tue Aug 25 12:24:39 IST 2026
[2026-08-25 12:24:39,437.437 INFO    ] ================================================
[2026-08-25 12:24:40,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:24:40
[2026-08-25 12:24:40,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:24:41,026.026 INFO    ] Initializing speech engine...
[2026-08-25 12:24:41,032.032 INFO    ] 2026-08-25 12:24:41
[2026-08-25 12:24:41,300.300 INFO    ] 2026-08-25 12:24:41
[2026-08-25 12:24:41,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:24:41,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:24:41,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:24:41,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:24:41,741.741 INFO    ] time= 25/08/2026 12:24:41
[2026-08-25 12:24:41,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:24:41,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:24:41,977.977 INFO    ] No existing commands found in stream
[2026-08-25 12:24:46,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:24:46,993.993 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 12:24:50,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:24:50,818.818 INFO    ] Checking for system updates...
[2026-08-25 12:24:50,857.857 INFO    ] 200
[2026-08-25 12:24:50,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:50,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:24:50,914.914 INFO    ] No update needed
[2026-08-25 12:24:50,916.916 INFO    ] Checking for camera pi updates...
[2026-08-25 12:24:50,954.954 INFO    ] 200
[2026-08-25 12:24:50,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:24:50,996.996 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:24:51,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:24:51,047.047 INFO    ] No camera update needed
[2026-08-25 12:24:51,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:24:51,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:24:51,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:24:51,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:24:53,103.103 INFO    ] ================================================
[2026-08-25 12:24:53,118.118 INFO    ] Launching Daemon at Tue Aug 25 12:24:53 IST 2026
[2026-08-25 12:24:53,129.129 INFO    ] ================================================
[2026-08-25 12:24:53,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:24:53
[2026-08-25 12:24:54,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:24:54,568.568 INFO    ] Initializing speech engine...
[2026-08-25 12:24:54,594.594 INFO    ] 2026-08-25 12:24:54
[2026-08-25 12:24:54,873.873 INFO    ] 2026-08-25 12:24:54
[2026-08-25 12:24:54,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:24:55,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:24:55,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:24:55,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:24:55,312.312 INFO    ] time= 25/08/2026 12:24:55
[2026-08-25 12:24:55,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:24:55,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:24:55,577.577 INFO    ] No existing commands found in stream
[2026-08-25 12:25:00,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:25:00,604.604 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 12:25:02,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:25:02,348.348 INFO    ] Checking for system updates...
[2026-08-25 12:25:02,389.389 INFO    ] 200
[2026-08-25 12:25:02,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:02,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:02,453.453 INFO    ] No update needed
[2026-08-25 12:25:02,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 12:25:02,498.498 INFO    ] 200
[2026-08-25 12:25:02,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:02,552.552 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:25:02,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:02,624.624 INFO    ] No camera update needed
[2026-08-25 12:25:02,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:25:02,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:25:02,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:25:02,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:25:04,692.692 INFO    ] ================================================
[2026-08-25 12:25:04,708.708 INFO    ] Launching Daemon at Tue Aug 25 12:25:04 IST 2026
[2026-08-25 12:25:04,719.719 INFO    ] ================================================
[2026-08-25 12:25:05,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:25:05
[2026-08-25 12:25:05,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:25:06,139.139 INFO    ] Initializing speech engine...
[2026-08-25 12:25:06,148.148 INFO    ] 2026-08-25 12:25:06
[2026-08-25 12:25:06,407.407 INFO    ] 2026-08-25 12:25:06
[2026-08-25 12:25:06,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:25:06,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:25:06,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:25:06,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:25:06,889.889 INFO    ] time= 25/08/2026 12:25:06
[2026-08-25 12:25:06,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:25:06,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:25:07,114.114 INFO    ] No existing commands found in stream
[2026-08-25 12:25:12,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:25:12,132.132 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 12:25:13,979.979 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:25:13,982.982 INFO    ] Checking for system updates...
[2026-08-25 12:25:14,017.017 INFO    ] 200
[2026-08-25 12:25:14,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:14,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:14,083.083 INFO    ] No update needed
[2026-08-25 12:25:14,086.086 INFO    ] Checking for camera pi updates...
[2026-08-25 12:25:14,124.124 INFO    ] 200
[2026-08-25 12:25:14,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:14,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:25:14,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:14,222.222 INFO    ] No camera update needed
[2026-08-25 12:25:14,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:25:14,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:25:14,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:25:14,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:25:16,278.278 INFO    ] ================================================
[2026-08-25 12:25:16,293.293 INFO    ] Launching Daemon at Tue Aug 25 12:25:16 IST 2026
[2026-08-25 12:25:16,305.305 INFO    ] ================================================
[2026-08-25 12:25:16,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:25:16
[2026-08-25 12:25:17,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:25:17,965.965 INFO    ] Initializing speech engine...
[2026-08-25 12:25:17,977.977 INFO    ] 2026-08-25 12:25:17
[2026-08-25 12:25:18,286.286 INFO    ] 2026-08-25 12:25:18
[2026-08-25 12:25:18,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:25:18,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:25:18,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:25:18,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:25:18,795.795 INFO    ] time= 25/08/2026 12:25:18
[2026-08-25 12:25:18,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:25:18,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:25:18,965.965 INFO    ] No existing commands found in stream
[2026-08-25 12:25:23,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:25:23,994.994 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 12:25:25,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:25:25,809.809 INFO    ] Checking for system updates...
[2026-08-25 12:25:25,844.844 INFO    ] 200
[2026-08-25 12:25:25,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:25,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:25:25,902.902 INFO    ] No update needed
[2026-08-25 12:25:25,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 12:25:25,942.942 INFO    ] 200
[2026-08-25 12:25:25,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:25,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:25:26,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:25:26,038.038 INFO    ] No camera update needed
[2026-08-25 12:25:26,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:25:26,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:25:26,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:25:26,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:25:28,093.093 INFO    ] ================================================
[2026-08-25 12:25:28,108.108 INFO    ] Launching Daemon at Tue Aug 25 12:25:28 IST 2026
[2026-08-25 12:25:28,118.118 INFO    ] ================================================
[2026-08-25 12:25:28,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:25:28
[2026-08-25 12:25:29,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:25:29,542.542 INFO    ] Initializing speech engine...
[2026-08-25 12:25:29,551.551 INFO    ] 2026-08-25 12:25:29
[2026-08-25 12:25:29,801.801 INFO    ] 2026-08-25 12:25:29
[2026-08-25 12:25:29,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:25:30,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:25:30,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:25:30,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:25:30,370.370 INFO    ] time= 25/08/2026 12:25:30
[2026-08-25 12:25:30,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:25:30,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:25:30,503.503 INFO    ] No existing commands found in stream
[2026-08-25 12:25:35,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:25:35,538.538 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 12:25:36,647.647 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:25:36,650.650 INFO    ] Checking for system updates...
[2026-08-25 12:25:36,685.685 INFO    ] 200
[2026-08-25 12:25:36,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:36,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:36,742.742 INFO    ] No update needed
[2026-08-25 12:25:36,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 12:25:36,777.777 INFO    ] 200
[2026-08-25 12:25:36,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:36,826.826 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:25:36,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:36,875.875 INFO    ] No camera update needed
[2026-08-25 12:25:36,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:25:36,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:25:36,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:25:36,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:25:38,929.929 INFO    ] ================================================
[2026-08-25 12:25:38,944.944 INFO    ] Launching Daemon at Tue Aug 25 12:25:38 IST 2026
[2026-08-25 12:25:38,955.955 INFO    ] ================================================
[2026-08-25 12:25:39,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:25:39
[2026-08-25 12:25:40,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:25:40,646.646 INFO    ] Initializing speech engine...
[2026-08-25 12:25:40,658.658 INFO    ] 2026-08-25 12:25:40
[2026-08-25 12:25:40,933.933 INFO    ] 2026-08-25 12:25:40
[2026-08-25 12:25:40,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:25:41,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:25:41,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:25:41,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:25:41,502.502 INFO    ] time= 25/08/2026 12:25:41
[2026-08-25 12:25:41,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:25:41,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:25:41,651.651 INFO    ] No existing commands found in stream
[2026-08-25 12:25:46,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:25:46,680.680 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 12:25:48,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:25:48,457.457 INFO    ] Checking for system updates...
[2026-08-25 12:25:48,498.498 INFO    ] 200
[2026-08-25 12:25:48,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:48,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:48,564.564 INFO    ] No update needed
[2026-08-25 12:25:48,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 12:25:48,599.599 INFO    ] 200
[2026-08-25 12:25:48,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:25:48,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:25:48,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:25:48,700.700 INFO    ] No camera update needed
[2026-08-25 12:25:48,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:25:48,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:25:48,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:25:48,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:25:50,754.754 INFO    ] ================================================
[2026-08-25 12:25:50,769.769 INFO    ] Launching Daemon at Tue Aug 25 12:25:50 IST 2026
[2026-08-25 12:25:50,779.779 INFO    ] ================================================
[2026-08-25 12:25:51,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:25:51
[2026-08-25 12:25:51,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:25:52,186.186 INFO    ] Initializing speech engine...
[2026-08-25 12:25:52,204.204 INFO    ] 2026-08-25 12:25:52
[2026-08-25 12:25:52,451.451 INFO    ] 2026-08-25 12:25:52
[2026-08-25 12:25:52,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:25:52,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:25:52,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:25:52,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:25:52,951.951 INFO    ] time= 25/08/2026 12:25:52
[2026-08-25 12:25:53,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:25:53,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:25:53,145.145 INFO    ] No existing commands found in stream
[2026-08-25 12:25:58,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:25:58,172.172 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 12:26:00,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:26:00,990.990 INFO    ] Checking for system updates...
[2026-08-25 12:26:01,040.040 INFO    ] 200
[2026-08-25 12:26:01,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:01,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:01,148.148 INFO    ] No update needed
[2026-08-25 12:26:01,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 12:26:01,219.219 INFO    ] 200
[2026-08-25 12:26:01,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:01,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:26:01,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:01,383.383 INFO    ] No camera update needed
[2026-08-25 12:26:01,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:26:01,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:26:01,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:26:01,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:26:03,453.453 INFO    ] ================================================
[2026-08-25 12:26:03,469.469 INFO    ] Launching Daemon at Tue Aug 25 12:26:03 IST 2026
[2026-08-25 12:26:03,479.479 INFO    ] ================================================
[2026-08-25 12:26:04,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:26:04
[2026-08-25 12:26:04,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:26:05,125.125 INFO    ] Initializing speech engine...
[2026-08-25 12:26:05,139.139 INFO    ] 2026-08-25 12:26:05
[2026-08-25 12:26:05,426.426 INFO    ] 2026-08-25 12:26:05
[2026-08-25 12:26:05,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:26:05,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:26:05,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:26:05,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:26:05,983.983 INFO    ] time= 25/08/2026 12:26:05
[2026-08-25 12:26:06,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:26:06,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:26:06,130.130 INFO    ] No existing commands found in stream
[2026-08-25 12:26:11,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:26:11,152.152 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 12:26:12,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:26:12,199.199 INFO    ] Checking for system updates...
[2026-08-25 12:26:12,239.239 INFO    ] 200
[2026-08-25 12:26:12,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:12,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:12,296.296 INFO    ] No update needed
[2026-08-25 12:26:12,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 12:26:12,336.336 INFO    ] 200
[2026-08-25 12:26:12,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:12,379.379 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:26:12,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:12,423.423 INFO    ] No camera update needed
[2026-08-25 12:26:12,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:26:12,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:26:12,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:26:12,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:26:14,477.477 INFO    ] ================================================
[2026-08-25 12:26:14,493.493 INFO    ] Launching Daemon at Tue Aug 25 12:26:14 IST 2026
[2026-08-25 12:26:14,503.503 INFO    ] ================================================
[2026-08-25 12:26:15,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:26:15
[2026-08-25 12:26:15,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:26:16,162.162 INFO    ] Initializing speech engine...
[2026-08-25 12:26:16,173.173 INFO    ] 2026-08-25 12:26:16
[2026-08-25 12:26:16,460.460 INFO    ] 2026-08-25 12:26:16
[2026-08-25 12:26:16,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:26:16,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:26:16,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:26:16,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:26:17,003.003 INFO    ] time= 25/08/2026 12:26:16
[2026-08-25 12:26:17,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:26:17,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:26:17,170.170 INFO    ] No existing commands found in stream
[2026-08-25 12:26:22,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:26:22,205.205 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 12:26:24,560.560 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:26:24,563.563 INFO    ] Checking for system updates...
[2026-08-25 12:26:24,604.604 INFO    ] 200
[2026-08-25 12:26:24,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:24,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:24,661.661 INFO    ] No update needed
[2026-08-25 12:26:24,664.664 INFO    ] Checking for camera pi updates...
[2026-08-25 12:26:24,718.718 INFO    ] 200
[2026-08-25 12:26:24,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:24,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:26:24,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:24,810.810 INFO    ] No camera update needed
[2026-08-25 12:26:24,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:26:24,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:26:24,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:26:24,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:26:26,864.864 INFO    ] ================================================
[2026-08-25 12:26:26,879.879 INFO    ] Launching Daemon at Tue Aug 25 12:26:26 IST 2026
[2026-08-25 12:26:26,890.890 INFO    ] ================================================
[2026-08-25 12:26:27,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:26:27
[2026-08-25 12:26:28,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:26:28,349.349 INFO    ] Initializing speech engine...
[2026-08-25 12:26:28,358.358 INFO    ] 2026-08-25 12:26:28
[2026-08-25 12:26:28,630.630 INFO    ] 2026-08-25 12:26:28
[2026-08-25 12:26:28,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:26:28,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:26:28,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:26:29,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:26:29,165.165 INFO    ] time= 25/08/2026 12:26:29
[2026-08-25 12:26:29,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:26:29,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:26:29,318.318 INFO    ] No existing commands found in stream
[2026-08-25 12:26:34,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:26:34,345.345 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 12:26:36,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:26:36,774.774 INFO    ] Checking for system updates...
[2026-08-25 12:26:36,809.809 INFO    ] 200
[2026-08-25 12:26:36,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:36,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:26:36,868.868 INFO    ] No update needed
[2026-08-25 12:26:36,871.871 INFO    ] Checking for camera pi updates...
[2026-08-25 12:26:36,905.905 INFO    ] 200
[2026-08-25 12:26:36,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:36,953.953 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:26:37,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:26:37,002.002 INFO    ] No camera update needed
[2026-08-25 12:26:37,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:26:37,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:26:37,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:26:37,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:26:39,057.057 INFO    ] ================================================
[2026-08-25 12:26:39,072.072 INFO    ] Launching Daemon at Tue Aug 25 12:26:39 IST 2026
[2026-08-25 12:26:39,083.083 INFO    ] ================================================
[2026-08-25 12:26:39,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:26:39
[2026-08-25 12:26:40,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:26:40,522.522 INFO    ] Initializing speech engine...
[2026-08-25 12:26:40,528.528 INFO    ] 2026-08-25 12:26:40
[2026-08-25 12:26:40,836.836 INFO    ] 2026-08-25 12:26:40
[2026-08-25 12:26:40,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:26:41,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:26:41,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:26:41,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:26:41,229.229 INFO    ] time= 25/08/2026 12:26:41
[2026-08-25 12:26:41,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:26:41,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:26:41,322.322 INFO    ] No existing commands found in stream
[2026-08-25 12:26:46,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:26:46,337.337 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 12:26:48,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:26:48,569.569 INFO    ] Checking for system updates...
[2026-08-25 12:26:48,609.609 INFO    ] 200
[2026-08-25 12:26:48,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:48,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:48,666.666 INFO    ] No update needed
[2026-08-25 12:26:48,668.668 INFO    ] Checking for camera pi updates...
[2026-08-25 12:26:48,710.710 INFO    ] 200
[2026-08-25 12:26:48,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:48,752.752 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:26:48,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:48,808.808 INFO    ] No camera update needed
[2026-08-25 12:26:48,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:26:48,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:26:48,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:26:48,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:26:50,862.862 INFO    ] ================================================
[2026-08-25 12:26:50,878.878 INFO    ] Launching Daemon at Tue Aug 25 12:26:50 IST 2026
[2026-08-25 12:26:50,888.888 INFO    ] ================================================
[2026-08-25 12:26:51,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:26:51
[2026-08-25 12:26:52,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:26:52,303.303 INFO    ] Initializing speech engine...
[2026-08-25 12:26:52,310.310 INFO    ] 2026-08-25 12:26:52
[2026-08-25 12:26:52,612.612 INFO    ] 2026-08-25 12:26:52
[2026-08-25 12:26:52,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:26:52,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:26:52,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:26:52,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:26:52,995.995 INFO    ] time= 25/08/2026 12:26:52
[2026-08-25 12:26:53,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:26:53,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:26:53,120.120 INFO    ] No existing commands found in stream
[2026-08-25 12:26:58,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:26:58,135.135 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 12:26:59,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:26:59,092.092 INFO    ] Checking for system updates...
[2026-08-25 12:26:59,131.131 INFO    ] 200
[2026-08-25 12:26:59,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:59,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:59,200.200 INFO    ] No update needed
[2026-08-25 12:26:59,202.202 INFO    ] Checking for camera pi updates...
[2026-08-25 12:26:59,238.238 INFO    ] 200
[2026-08-25 12:26:59,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:26:59,282.282 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:26:59,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:26:59,332.332 INFO    ] No camera update needed
[2026-08-25 12:26:59,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:26:59,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:26:59,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:26:59,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:27:01,390.390 INFO    ] ================================================
[2026-08-25 12:27:01,405.405 INFO    ] Launching Daemon at Tue Aug 25 12:27:01 IST 2026
[2026-08-25 12:27:01,416.416 INFO    ] ================================================
[2026-08-25 12:27:01,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:27:01
[2026-08-25 12:27:02,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:27:03,123.123 INFO    ] Initializing speech engine...
[2026-08-25 12:27:03,133.133 INFO    ] 2026-08-25 12:27:03
[2026-08-25 12:27:03,494.494 INFO    ] 2026-08-25 12:27:03
[2026-08-25 12:27:03,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:27:03,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:27:03,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:27:03,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:27:04,035.035 INFO    ] time= 25/08/2026 12:27:03
[2026-08-25 12:27:04,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:27:04,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:27:04,191.191 INFO    ] No existing commands found in stream
[2026-08-25 12:27:09,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:27:09,219.219 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 12:27:13,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:27:13,558.558 INFO    ] Checking for system updates...
[2026-08-25 12:27:13,597.597 INFO    ] 200
[2026-08-25 12:27:13,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:13,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:27:13,663.663 INFO    ] No update needed
[2026-08-25 12:27:13,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 12:27:13,702.702 INFO    ] 200
[2026-08-25 12:27:13,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:13,745.745 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:27:13,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:27:13,799.799 INFO    ] No camera update needed
[2026-08-25 12:27:13,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:27:13,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:27:13,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:27:13,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:27:15,857.857 INFO    ] ================================================
[2026-08-25 12:27:15,872.872 INFO    ] Launching Daemon at Tue Aug 25 12:27:15 IST 2026
[2026-08-25 12:27:15,882.882 INFO    ] ================================================
[2026-08-25 12:27:16,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:27:16
[2026-08-25 12:27:17,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:27:17,511.511 INFO    ] Initializing speech engine...
[2026-08-25 12:27:17,525.525 INFO    ] 2026-08-25 12:27:17
[2026-08-25 12:27:17,838.838 INFO    ] 2026-08-25 12:27:17
[2026-08-25 12:27:17,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:27:18,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:27:18,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:27:18,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:27:18,344.344 INFO    ] time= 25/08/2026 12:27:18
[2026-08-25 12:27:18,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:27:18,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:27:18,504.504 INFO    ] No existing commands found in stream
[2026-08-25 12:27:23,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:27:23,554.554 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 12:27:27,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:27:27,458.458 INFO    ] Checking for system updates...
[2026-08-25 12:27:27,494.494 INFO    ] 200
[2026-08-25 12:27:27,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:27,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:27:27,559.559 INFO    ] No update needed
[2026-08-25 12:27:27,562.562 INFO    ] Checking for camera pi updates...
[2026-08-25 12:27:27,600.600 INFO    ] 200
[2026-08-25 12:27:27,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:27,645.645 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:27:27,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:27:27,730.730 INFO    ] No camera update needed
[2026-08-25 12:27:27,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:27:27,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:27:27,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:27:27,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:27:29,788.788 INFO    ] ================================================
[2026-08-25 12:27:29,803.803 INFO    ] Launching Daemon at Tue Aug 25 12:27:29 IST 2026
[2026-08-25 12:27:29,815.815 INFO    ] ================================================
[2026-08-25 12:27:30,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:27:30
[2026-08-25 12:27:31,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:27:31,293.293 INFO    ] Initializing speech engine...
[2026-08-25 12:27:31,298.298 INFO    ] 2026-08-25 12:27:31
[2026-08-25 12:27:31,560.560 INFO    ] 2026-08-25 12:27:31
[2026-08-25 12:27:31,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:27:31,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:27:31,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:27:31,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:27:32,061.061 INFO    ] time= 25/08/2026 12:27:31
[2026-08-25 12:27:32,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:27:32,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:27:32,298.298 INFO    ] No existing commands found in stream
[2026-08-25 12:27:37,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:27:37,332.332 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 12:27:39,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:27:39,238.238 INFO    ] Checking for system updates...
[2026-08-25 12:27:39,275.275 INFO    ] 200
[2026-08-25 12:27:39,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:39,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:27:39,333.333 INFO    ] No update needed
[2026-08-25 12:27:39,336.336 INFO    ] Checking for camera pi updates...
[2026-08-25 12:27:39,371.371 INFO    ] 200
[2026-08-25 12:27:39,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:39,414.414 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:27:39,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:27:39,568.568 INFO    ] No camera update needed
[2026-08-25 12:27:39,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:27:39,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:27:39,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:27:39,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:27:41,626.626 INFO    ] ================================================
[2026-08-25 12:27:41,641.641 INFO    ] Launching Daemon at Tue Aug 25 12:27:41 IST 2026
[2026-08-25 12:27:41,651.651 INFO    ] ================================================
[2026-08-25 12:27:42,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:27:42
[2026-08-25 12:27:42,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:27:43,280.280 INFO    ] Initializing speech engine...
[2026-08-25 12:27:43,293.293 INFO    ] 2026-08-25 12:27:43
[2026-08-25 12:27:43,573.573 INFO    ] 2026-08-25 12:27:43
[2026-08-25 12:27:43,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:27:43,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:27:43,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:27:44,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:27:44,112.112 INFO    ] time= 25/08/2026 12:27:44
[2026-08-25 12:27:44,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:27:44,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:27:44,301.301 INFO    ] No existing commands found in stream
[2026-08-25 12:27:49,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:27:49,340.340 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 12:27:52,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:27:52,443.443 INFO    ] Checking for system updates...
[2026-08-25 12:27:52,479.479 INFO    ] 200
[2026-08-25 12:27:52,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:52,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:27:52,546.546 INFO    ] No update needed
[2026-08-25 12:27:52,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 12:27:52,588.588 INFO    ] 200
[2026-08-25 12:27:52,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:27:52,641.641 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:27:52,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:27:52,691.691 INFO    ] No camera update needed
[2026-08-25 12:27:52,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:27:52,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:27:52,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:27:52,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:27:54,750.750 INFO    ] ================================================
[2026-08-25 12:27:54,765.765 INFO    ] Launching Daemon at Tue Aug 25 12:27:54 IST 2026
[2026-08-25 12:27:54,776.776 INFO    ] ================================================
[2026-08-25 12:27:55,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:27:55
[2026-08-25 12:27:55,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:27:56,197.197 INFO    ] Initializing speech engine...
[2026-08-25 12:27:56,206.206 INFO    ] 2026-08-25 12:27:56
[2026-08-25 12:27:56,457.457 INFO    ] 2026-08-25 12:27:56
[2026-08-25 12:27:56,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:27:56,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:27:56,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:27:56,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:27:56,944.944 INFO    ] time= 25/08/2026 12:27:56
[2026-08-25 12:27:56,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:27:57,034.034 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:27:57,156.156 INFO    ] No existing commands found in stream
[2026-08-25 12:28:02,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:28:02,189.189 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 12:28:03,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:28:03,766.766 INFO    ] Checking for system updates...
[2026-08-25 12:28:03,801.801 INFO    ] 200
[2026-08-25 12:28:03,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:03,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:28:03,857.857 INFO    ] No update needed
[2026-08-25 12:28:03,860.860 INFO    ] Checking for camera pi updates...
[2026-08-25 12:28:03,893.893 INFO    ] 200
[2026-08-25 12:28:03,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:03,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:28:03,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:28:03,997.997 INFO    ] No camera update needed
[2026-08-25 12:28:03,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:28:04,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:28:04,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:28:04,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:28:06,052.052 INFO    ] ================================================
[2026-08-25 12:28:06,067.067 INFO    ] Launching Daemon at Tue Aug 25 12:28:06 IST 2026
[2026-08-25 12:28:06,078.078 INFO    ] ================================================
[2026-08-25 12:28:06,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:28:06
[2026-08-25 12:28:07,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:28:07,520.520 INFO    ] Initializing speech engine...
[2026-08-25 12:28:07,529.529 INFO    ] 2026-08-25 12:28:07
[2026-08-25 12:28:07,789.789 INFO    ] 2026-08-25 12:28:07
[2026-08-25 12:28:07,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:28:08,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:28:08,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:28:08,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:28:08,314.314 INFO    ] time= 25/08/2026 12:28:08
[2026-08-25 12:28:08,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:28:08,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:28:08,487.487 INFO    ] No existing commands found in stream
[2026-08-25 12:28:13,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:28:13,503.503 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 12:28:16,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:28:16,233.233 INFO    ] Checking for system updates...
[2026-08-25 12:28:16,268.268 INFO    ] 200
[2026-08-25 12:28:16,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:16,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:16,324.324 INFO    ] No update needed
[2026-08-25 12:28:16,327.327 INFO    ] Checking for camera pi updates...
[2026-08-25 12:28:16,360.360 INFO    ] 200
[2026-08-25 12:28:16,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:16,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:28:16,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:16,452.452 INFO    ] No camera update needed
[2026-08-25 12:28:16,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:28:16,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:28:16,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:28:16,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:28:18,508.508 INFO    ] ================================================
[2026-08-25 12:28:18,522.522 INFO    ] Launching Daemon at Tue Aug 25 12:28:18 IST 2026
[2026-08-25 12:28:18,533.533 INFO    ] ================================================
[2026-08-25 12:28:19,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:28:19
[2026-08-25 12:28:19,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:28:19,980.980 INFO    ] Initializing speech engine...
[2026-08-25 12:28:19,991.991 INFO    ] 2026-08-25 12:28:19
[2026-08-25 12:28:20,250.250 INFO    ] 2026-08-25 12:28:20
[2026-08-25 12:28:20,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:28:20,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:28:20,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:28:20,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:28:20,792.792 INFO    ] time= 25/08/2026 12:28:20
[2026-08-25 12:28:20,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:28:20,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:28:20,950.950 INFO    ] No existing commands found in stream
[2026-08-25 12:28:25,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:28:25,984.984 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 12:28:26,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:28:26,758.758 INFO    ] Checking for system updates...
[2026-08-25 12:28:26,795.795 INFO    ] 200
[2026-08-25 12:28:26,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:26,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:26,859.859 INFO    ] No update needed
[2026-08-25 12:28:26,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 12:28:26,896.896 INFO    ] 200
[2026-08-25 12:28:26,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:26,943.943 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:28:26,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:26,997.997 INFO    ] No camera update needed
[2026-08-25 12:28:27,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:28:27,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:28:27,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:28:27,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:28:29,054.054 INFO    ] ================================================
[2026-08-25 12:28:29,069.069 INFO    ] Launching Daemon at Tue Aug 25 12:28:29 IST 2026
[2026-08-25 12:28:29,080.080 INFO    ] ================================================
[2026-08-25 12:28:29,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:28:29
[2026-08-25 12:28:30,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:28:30,662.662 INFO    ] Initializing speech engine...
[2026-08-25 12:28:30,670.670 INFO    ] 2026-08-25 12:28:30
[2026-08-25 12:28:30,943.943 INFO    ] 2026-08-25 12:28:30
[2026-08-25 12:28:30,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:28:31,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:28:31,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:28:31,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:28:31,511.511 INFO    ] time= 25/08/2026 12:28:31
[2026-08-25 12:28:31,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:28:31,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:28:31,671.671 INFO    ] No existing commands found in stream
[2026-08-25 12:28:36,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:28:36,709.709 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 12:28:40,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:28:40,708.708 INFO    ] Checking for system updates...
[2026-08-25 12:28:40,745.745 INFO    ] 200
[2026-08-25 12:28:40,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:40,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:40,803.803 INFO    ] No update needed
[2026-08-25 12:28:40,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 12:28:40,840.840 INFO    ] 200
[2026-08-25 12:28:40,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:40,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:28:40,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:40,942.942 INFO    ] No camera update needed
[2026-08-25 12:28:40,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:28:40,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:28:40,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:28:40,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:28:43,000.000 INFO    ] ================================================
[2026-08-25 12:28:43,015.015 INFO    ] Launching Daemon at Tue Aug 25 12:28:43 IST 2026
[2026-08-25 12:28:43,026.026 INFO    ] ================================================
[2026-08-25 12:28:43,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:28:43
[2026-08-25 12:28:44,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:28:44,446.446 INFO    ] Initializing speech engine...
[2026-08-25 12:28:44,456.456 INFO    ] 2026-08-25 12:28:44
[2026-08-25 12:28:44,705.705 INFO    ] 2026-08-25 12:28:44
[2026-08-25 12:28:44,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:28:44,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:28:45,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:28:45,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:28:45,201.201 INFO    ] time= 25/08/2026 12:28:45
[2026-08-25 12:28:45,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:28:45,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:28:45,438.438 INFO    ] No existing commands found in stream
[2026-08-25 12:28:50,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:28:50,465.465 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 12:28:52,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:28:52,018.018 INFO    ] Checking for system updates...
[2026-08-25 12:28:52,058.058 INFO    ] 200
[2026-08-25 12:28:52,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:52,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:52,123.123 INFO    ] No update needed
[2026-08-25 12:28:52,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 12:28:52,158.158 INFO    ] 200
[2026-08-25 12:28:52,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:28:52,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:28:52,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:28:52,252.252 INFO    ] No camera update needed
[2026-08-25 12:28:52,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:28:52,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:28:52,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:28:52,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:28:54,308.308 INFO    ] ================================================
[2026-08-25 12:28:54,323.323 INFO    ] Launching Daemon at Tue Aug 25 12:28:54 IST 2026
[2026-08-25 12:28:54,333.333 INFO    ] ================================================
[2026-08-25 12:28:54,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:28:54
[2026-08-25 12:28:55,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:28:55,797.797 INFO    ] Initializing speech engine...
[2026-08-25 12:28:55,806.806 INFO    ] 2026-08-25 12:28:55
[2026-08-25 12:28:56,071.071 INFO    ] 2026-08-25 12:28:56
[2026-08-25 12:28:56,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:28:56,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:28:56,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:28:56,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:28:56,474.474 INFO    ] time= 25/08/2026 12:28:56
[2026-08-25 12:28:56,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:28:56,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:28:56,657.657 INFO    ] No existing commands found in stream
[2026-08-25 12:29:01,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:29:01,696.696 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 12:29:05,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:29:05,649.649 INFO    ] Checking for system updates...
[2026-08-25 12:29:05,686.686 INFO    ] 200
[2026-08-25 12:29:05,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:05,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:29:05,745.745 INFO    ] No update needed
[2026-08-25 12:29:05,748.748 INFO    ] Checking for camera pi updates...
[2026-08-25 12:29:05,785.785 INFO    ] 200
[2026-08-25 12:29:05,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:05,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:29:05,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:29:05,884.884 INFO    ] No camera update needed
[2026-08-25 12:29:05,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:29:05,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:29:05,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:29:05,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:29:07,942.942 INFO    ] ================================================
[2026-08-25 12:29:07,956.956 INFO    ] Launching Daemon at Tue Aug 25 12:29:07 IST 2026
[2026-08-25 12:29:07,967.967 INFO    ] ================================================
[2026-08-25 12:29:08,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:29:08
[2026-08-25 12:29:09,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:29:09,367.367 INFO    ] Initializing speech engine...
[2026-08-25 12:29:09,380.380 INFO    ] 2026-08-25 12:29:09
[2026-08-25 12:29:09,646.646 INFO    ] 2026-08-25 12:29:09
[2026-08-25 12:29:09,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:29:09,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:29:09,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:29:10,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:29:10,024.024 INFO    ] time= 25/08/2026 12:29:10
[2026-08-25 12:29:10,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:29:10,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:29:10,182.182 INFO    ] No existing commands found in stream
[2026-08-25 12:29:15,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:29:15,209.209 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 12:29:17,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:29:17,858.858 INFO    ] Checking for system updates...
[2026-08-25 12:29:17,893.893 INFO    ] 200
[2026-08-25 12:29:17,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:17,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:29:17,950.950 INFO    ] No update needed
[2026-08-25 12:29:17,952.952 INFO    ] Checking for camera pi updates...
[2026-08-25 12:29:17,989.989 INFO    ] 200
[2026-08-25 12:29:17,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:18,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:29:18,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:29:18,087.087 INFO    ] No camera update needed
[2026-08-25 12:29:18,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:29:18,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:29:18,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:29:18,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:29:20,143.143 INFO    ] ================================================
[2026-08-25 12:29:20,158.158 INFO    ] Launching Daemon at Tue Aug 25 12:29:20 IST 2026
[2026-08-25 12:29:20,169.169 INFO    ] ================================================
[2026-08-25 12:29:20,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:29:20
[2026-08-25 12:29:21,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:29:21,718.718 INFO    ] Initializing speech engine...
[2026-08-25 12:29:21,724.724 INFO    ] 2026-08-25 12:29:21
[2026-08-25 12:29:21,999.999 INFO    ] 2026-08-25 12:29:21
[2026-08-25 12:29:22,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:29:22,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:29:22,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:29:22,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:29:22,498.498 INFO    ] time= 25/08/2026 12:29:22
[2026-08-25 12:29:22,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:29:22,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:29:22,725.725 INFO    ] No existing commands found in stream
[2026-08-25 12:29:27,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:29:27,748.748 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 12:29:31,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:29:31,889.889 INFO    ] Checking for system updates...
[2026-08-25 12:29:31,929.929 INFO    ] 200
[2026-08-25 12:29:31,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:31,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:29:32,000.000 INFO    ] No update needed
[2026-08-25 12:29:32,003.003 INFO    ] Checking for camera pi updates...
[2026-08-25 12:29:32,047.047 INFO    ] 200
[2026-08-25 12:29:32,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:32,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:29:32,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:29:32,188.188 INFO    ] No camera update needed
[2026-08-25 12:29:32,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:29:32,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:29:32,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:29:32,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:29:34,249.249 INFO    ] ================================================
[2026-08-25 12:29:34,264.264 INFO    ] Launching Daemon at Tue Aug 25 12:29:34 IST 2026
[2026-08-25 12:29:34,275.275 INFO    ] ================================================
[2026-08-25 12:29:34,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:29:34
[2026-08-25 12:29:35,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:29:35,739.739 INFO    ] Initializing speech engine...
[2026-08-25 12:29:35,750.750 INFO    ] 2026-08-25 12:29:35
[2026-08-25 12:29:36,015.015 INFO    ] 2026-08-25 12:29:35
[2026-08-25 12:29:36,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:29:36,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:29:36,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:29:36,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:29:36,474.474 INFO    ] time= 25/08/2026 12:29:36
[2026-08-25 12:29:36,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:29:36,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:29:36,676.676 INFO    ] No existing commands found in stream
[2026-08-25 12:29:41,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:29:41,708.708 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 12:29:45,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:29:45,889.889 INFO    ] Checking for system updates...
[2026-08-25 12:29:45,926.926 INFO    ] 200
[2026-08-25 12:29:45,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:45,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:29:45,985.985 INFO    ] No update needed
[2026-08-25 12:29:45,988.988 INFO    ] Checking for camera pi updates...
[2026-08-25 12:29:46,022.022 INFO    ] 200
[2026-08-25 12:29:46,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:46,069.069 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:29:46,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:29:46,215.215 INFO    ] No camera update needed
[2026-08-25 12:29:46,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:29:46,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:29:46,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:29:46,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:29:48,271.271 INFO    ] ================================================
[2026-08-25 12:29:48,286.286 INFO    ] Launching Daemon at Tue Aug 25 12:29:48 IST 2026
[2026-08-25 12:29:48,296.296 INFO    ] ================================================
[2026-08-25 12:29:48,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:29:48
[2026-08-25 12:29:49,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:29:49,761.761 INFO    ] Initializing speech engine...
[2026-08-25 12:29:49,768.768 INFO    ] 2026-08-25 12:29:49
[2026-08-25 12:29:50,028.028 INFO    ] 2026-08-25 12:29:50
[2026-08-25 12:29:50,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:29:50,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:29:50,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:29:50,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:29:50,562.562 INFO    ] time= 25/08/2026 12:29:50
[2026-08-25 12:29:50,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:29:50,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:29:50,722.722 INFO    ] No existing commands found in stream
[2026-08-25 12:29:55,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:29:55,740.740 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 12:29:59,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:29:59,372.372 INFO    ] Checking for system updates...
[2026-08-25 12:29:59,409.409 INFO    ] 200
[2026-08-25 12:29:59,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:59,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:29:59,467.467 INFO    ] No update needed
[2026-08-25 12:29:59,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 12:29:59,504.504 INFO    ] 200
[2026-08-25 12:29:59,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:29:59,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:29:59,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:29:59,607.607 INFO    ] No camera update needed
[2026-08-25 12:29:59,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:29:59,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:29:59,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:29:59,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:30:01,666.666 INFO    ] ================================================
[2026-08-25 12:30:01,681.681 INFO    ] Launching Daemon at Tue Aug 25 12:30:01 IST 2026
[2026-08-25 12:30:01,691.691 INFO    ] ================================================
[2026-08-25 12:30:02,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:30:02
[2026-08-25 12:30:03,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:30:04,000.000 INFO    ] Initializing speech engine...
[2026-08-25 12:30:04,015.015 INFO    ] 2026-08-25 12:30:04
[2026-08-25 12:30:04,392.392 INFO    ] 2026-08-25 12:30:04
[2026-08-25 12:30:04,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:30:04,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:30:04,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:30:04,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:30:04,917.917 INFO    ] time= 25/08/2026 12:30:04
[2026-08-25 12:30:04,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:30:04,930.930 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:30:05,072.072 INFO    ] No existing commands found in stream
[2026-08-25 12:30:10,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:30:10,112.112 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 12:30:13,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:30:13,872.872 INFO    ] Checking for system updates...
[2026-08-25 12:30:13,907.907 INFO    ] 200
[2026-08-25 12:30:13,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:13,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:30:13,969.969 INFO    ] No update needed
[2026-08-25 12:30:13,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 12:30:14,004.004 INFO    ] 200
[2026-08-25 12:30:14,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:14,050.050 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:30:14,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:30:14,097.097 INFO    ] No camera update needed
[2026-08-25 12:30:14,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:30:14,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:30:14,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:30:14,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:30:16,152.152 INFO    ] ================================================
[2026-08-25 12:30:16,167.167 INFO    ] Launching Daemon at Tue Aug 25 12:30:16 IST 2026
[2026-08-25 12:30:16,178.178 INFO    ] ================================================
[2026-08-25 12:30:16,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:30:16
[2026-08-25 12:30:17,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:30:17,731.731 INFO    ] Initializing speech engine...
[2026-08-25 12:30:17,740.740 INFO    ] 2026-08-25 12:30:17
[2026-08-25 12:30:17,999.999 INFO    ] 2026-08-25 12:30:17
[2026-08-25 12:30:18,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:30:18,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:30:18,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:30:18,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:30:18,488.488 INFO    ] time= 25/08/2026 12:30:18
[2026-08-25 12:30:18,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:30:18,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:30:18,731.731 INFO    ] No existing commands found in stream
[2026-08-25 12:30:23,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:30:23,750.750 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 12:30:25,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:30:25,302.302 INFO    ] Checking for system updates...
[2026-08-25 12:30:25,338.338 INFO    ] 200
[2026-08-25 12:30:25,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:25,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:30:25,396.396 INFO    ] No update needed
[2026-08-25 12:30:25,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 12:30:25,435.435 INFO    ] 200
[2026-08-25 12:30:25,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:25,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:30:25,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:30:25,531.531 INFO    ] No camera update needed
[2026-08-25 12:30:25,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:30:25,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:30:25,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:30:25,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:30:27,589.589 INFO    ] ================================================
[2026-08-25 12:30:27,604.604 INFO    ] Launching Daemon at Tue Aug 25 12:30:27 IST 2026
[2026-08-25 12:30:27,614.614 INFO    ] ================================================
[2026-08-25 12:30:28,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:30:28
[2026-08-25 12:30:28,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:30:29,055.055 INFO    ] Initializing speech engine...
[2026-08-25 12:30:29,079.079 INFO    ] 2026-08-25 12:30:29
[2026-08-25 12:30:29,349.349 INFO    ] 2026-08-25 12:30:29
[2026-08-25 12:30:29,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:30:29,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:30:29,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:30:29,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:30:29,729.729 INFO    ] time= 25/08/2026 12:30:29
[2026-08-25 12:30:29,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:30:29,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:30:29,832.832 INFO    ] No existing commands found in stream
[2026-08-25 12:30:34,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:30:34,854.854 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 12:30:37,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:30:37,839.839 INFO    ] Checking for system updates...
[2026-08-25 12:30:37,874.874 INFO    ] 200
[2026-08-25 12:30:37,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:37,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:30:37,931.931 INFO    ] No update needed
[2026-08-25 12:30:37,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 12:30:37,967.967 INFO    ] 200
[2026-08-25 12:30:37,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:38,010.010 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:30:38,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:30:38,058.058 INFO    ] No camera update needed
[2026-08-25 12:30:38,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:30:38,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:30:38,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:30:38,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:30:40,115.115 INFO    ] ================================================
[2026-08-25 12:30:40,131.131 INFO    ] Launching Daemon at Tue Aug 25 12:30:40 IST 2026
[2026-08-25 12:30:40,142.142 INFO    ] ================================================
[2026-08-25 12:30:40,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:30:40
[2026-08-25 12:30:41,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:30:41,587.587 INFO    ] Initializing speech engine...
[2026-08-25 12:30:41,596.596 INFO    ] 2026-08-25 12:30:41
[2026-08-25 12:30:41,852.852 INFO    ] 2026-08-25 12:30:41
[2026-08-25 12:30:41,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:30:42,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:30:42,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:30:42,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:30:42,327.327 INFO    ] time= 25/08/2026 12:30:42
[2026-08-25 12:30:42,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:30:42,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:30:42,552.552 INFO    ] No existing commands found in stream
[2026-08-25 12:30:47,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:30:47,569.569 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 12:30:51,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:30:51,432.432 INFO    ] Checking for system updates...
[2026-08-25 12:30:51,468.468 INFO    ] 200
[2026-08-25 12:30:51,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:51,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:30:51,530.530 INFO    ] No update needed
[2026-08-25 12:30:51,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 12:30:51,566.566 INFO    ] 200
[2026-08-25 12:30:51,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:30:51,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:30:51,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:30:51,658.658 INFO    ] No camera update needed
[2026-08-25 12:30:51,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:30:51,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:30:51,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:30:51,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:30:53,715.715 INFO    ] ================================================
[2026-08-25 12:30:53,730.730 INFO    ] Launching Daemon at Tue Aug 25 12:30:53 IST 2026
[2026-08-25 12:30:53,742.742 INFO    ] ================================================
[2026-08-25 12:30:54,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:30:54
[2026-08-25 12:30:54,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:30:55,210.210 INFO    ] Initializing speech engine...
[2026-08-25 12:30:55,221.221 INFO    ] 2026-08-25 12:30:55
[2026-08-25 12:30:55,479.479 INFO    ] 2026-08-25 12:30:55
[2026-08-25 12:30:55,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:30:55,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:30:55,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:30:55,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:30:55,885.885 INFO    ] time= 25/08/2026 12:30:55
[2026-08-25 12:30:55,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:30:55,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:30:56,072.072 INFO    ] No existing commands found in stream
[2026-08-25 12:31:01,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:31:01,105.105 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 12:31:03,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:31:03,977.977 INFO    ] Checking for system updates...
[2026-08-25 12:31:04,013.013 INFO    ] 200
[2026-08-25 12:31:04,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:04,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:31:04,076.076 INFO    ] No update needed
[2026-08-25 12:31:04,079.079 INFO    ] Checking for camera pi updates...
[2026-08-25 12:31:04,112.112 INFO    ] 200
[2026-08-25 12:31:04,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:04,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:31:04,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:31:04,205.205 INFO    ] No camera update needed
[2026-08-25 12:31:04,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:31:04,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:31:04,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:31:04,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:31:06,259.259 INFO    ] ================================================
[2026-08-25 12:31:06,275.275 INFO    ] Launching Daemon at Tue Aug 25 12:31:06 IST 2026
[2026-08-25 12:31:06,286.286 INFO    ] ================================================
[2026-08-25 12:31:06,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:31:06
[2026-08-25 12:31:07,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:31:07,887.887 INFO    ] Initializing speech engine...
[2026-08-25 12:31:07,896.896 INFO    ] 2026-08-25 12:31:07
[2026-08-25 12:31:08,190.190 INFO    ] 2026-08-25 12:31:08
[2026-08-25 12:31:08,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:31:08,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:31:08,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:31:08,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:31:08,689.689 INFO    ] time= 25/08/2026 12:31:08
[2026-08-25 12:31:08,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:31:08,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:31:08,867.867 INFO    ] No existing commands found in stream
[2026-08-25 12:31:13,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:31:13,913.913 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 12:31:15,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:31:15,599.599 INFO    ] Checking for system updates...
[2026-08-25 12:31:15,635.635 INFO    ] 200
[2026-08-25 12:31:15,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:15,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:31:15,692.692 INFO    ] No update needed
[2026-08-25 12:31:15,694.694 INFO    ] Checking for camera pi updates...
[2026-08-25 12:31:15,728.728 INFO    ] 200
[2026-08-25 12:31:15,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:15,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:31:15,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:31:15,825.825 INFO    ] No camera update needed
[2026-08-25 12:31:15,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:31:15,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:31:15,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:31:15,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:31:17,879.879 INFO    ] ================================================
[2026-08-25 12:31:17,895.895 INFO    ] Launching Daemon at Tue Aug 25 12:31:17 IST 2026
[2026-08-25 12:31:17,905.905 INFO    ] ================================================
[2026-08-25 12:31:18,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:31:18
[2026-08-25 12:31:19,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:31:19,376.376 INFO    ] Initializing speech engine...
[2026-08-25 12:31:19,381.381 INFO    ] 2026-08-25 12:31:19
[2026-08-25 12:31:19,642.642 INFO    ] 2026-08-25 12:31:19
[2026-08-25 12:31:19,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:31:19,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:31:19,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:31:20,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:31:20,102.102 INFO    ] time= 25/08/2026 12:31:20
[2026-08-25 12:31:20,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:31:20,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:31:20,338.338 INFO    ] No existing commands found in stream
[2026-08-25 12:31:25,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:31:25,356.356 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 12:31:27,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:31:27,049.049 INFO    ] Checking for system updates...
[2026-08-25 12:31:27,086.086 INFO    ] 200
[2026-08-25 12:31:27,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:27,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:31:27,143.143 INFO    ] No update needed
[2026-08-25 12:31:27,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 12:31:27,179.179 INFO    ] 200
[2026-08-25 12:31:27,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:27,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:31:27,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:31:27,281.281 INFO    ] No camera update needed
[2026-08-25 12:31:27,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:31:27,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:31:27,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:31:27,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:31:29,337.337 INFO    ] ================================================
[2026-08-25 12:31:29,352.352 INFO    ] Launching Daemon at Tue Aug 25 12:31:29 IST 2026
[2026-08-25 12:31:29,363.363 INFO    ] ================================================
[2026-08-25 12:31:29,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:31:29
[2026-08-25 12:31:30,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:31:30,824.824 INFO    ] Initializing speech engine...
[2026-08-25 12:31:30,831.831 INFO    ] 2026-08-25 12:31:30
[2026-08-25 12:31:31,094.094 INFO    ] 2026-08-25 12:31:31
[2026-08-25 12:31:31,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:31:31,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:31:31,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:31:31,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:31:31,572.572 INFO    ] time= 25/08/2026 12:31:31
[2026-08-25 12:31:31,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:31:31,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:31:31,733.733 INFO    ] No existing commands found in stream
[2026-08-25 12:31:36,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:31:36,748.748 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 12:31:37,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:31:37,428.428 INFO    ] Checking for system updates...
[2026-08-25 12:31:37,464.464 INFO    ] 200
[2026-08-25 12:31:37,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:37,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:31:37,522.522 INFO    ] No update needed
[2026-08-25 12:31:37,524.524 INFO    ] Checking for camera pi updates...
[2026-08-25 12:31:37,561.561 INFO    ] 200
[2026-08-25 12:31:37,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:37,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:31:37,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:31:37,654.654 INFO    ] No camera update needed
[2026-08-25 12:31:37,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:31:37,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:31:37,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:31:37,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:31:39,710.710 INFO    ] ================================================
[2026-08-25 12:31:39,725.725 INFO    ] Launching Daemon at Tue Aug 25 12:31:39 IST 2026
[2026-08-25 12:31:39,736.736 INFO    ] ================================================
[2026-08-25 12:31:40,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:31:40
[2026-08-25 12:31:40,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:31:41,152.152 INFO    ] Initializing speech engine...
[2026-08-25 12:31:41,169.169 INFO    ] 2026-08-25 12:31:41
[2026-08-25 12:31:41,422.422 INFO    ] 2026-08-25 12:31:41
[2026-08-25 12:31:41,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:31:41,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:31:41,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:31:41,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:31:41,867.867 INFO    ] time= 25/08/2026 12:31:41
[2026-08-25 12:31:41,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:31:41,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:31:42,051.051 INFO    ] No existing commands found in stream
[2026-08-25 12:31:47,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:31:47,066.066 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 12:31:50,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:31:50,259.259 INFO    ] Checking for system updates...
[2026-08-25 12:31:50,299.299 INFO    ] 200
[2026-08-25 12:31:50,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:50,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:31:50,357.357 INFO    ] No update needed
[2026-08-25 12:31:50,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 12:31:50,392.392 INFO    ] 200
[2026-08-25 12:31:50,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:31:50,435.435 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:31:50,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:31:50,585.585 INFO    ] No camera update needed
[2026-08-25 12:31:50,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:31:50,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:31:50,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:31:50,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:31:52,645.645 INFO    ] ================================================
[2026-08-25 12:31:52,660.660 INFO    ] Launching Daemon at Tue Aug 25 12:31:52 IST 2026
[2026-08-25 12:31:52,670.670 INFO    ] ================================================
[2026-08-25 12:31:53,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:31:53
[2026-08-25 12:31:53,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:31:54,124.124 INFO    ] Initializing speech engine...
[2026-08-25 12:31:54,144.144 INFO    ] 2026-08-25 12:31:54
[2026-08-25 12:31:54,425.425 INFO    ] 2026-08-25 12:31:54
[2026-08-25 12:31:54,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:31:54,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:31:54,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:31:54,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:31:54,807.807 INFO    ] time= 25/08/2026 12:31:54
[2026-08-25 12:31:54,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:31:54,849.849 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:31:54,933.933 INFO    ] No existing commands found in stream
[2026-08-25 12:31:59,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:31:59,949.949 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 12:32:00,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:32:00,581.581 INFO    ] Checking for system updates...
[2026-08-25 12:32:00,616.616 INFO    ] 200
[2026-08-25 12:32:00,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:00,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:00,673.673 INFO    ] No update needed
[2026-08-25 12:32:00,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 12:32:00,714.714 INFO    ] 200
[2026-08-25 12:32:00,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:00,757.757 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:32:00,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:00,805.805 INFO    ] No camera update needed
[2026-08-25 12:32:00,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:32:00,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:32:00,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:32:00,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:32:02,873.873 INFO    ] ================================================
[2026-08-25 12:32:02,898.898 INFO    ] Launching Daemon at Tue Aug 25 12:32:02 IST 2026
[2026-08-25 12:32:02,914.914 INFO    ] ================================================
[2026-08-25 12:32:03,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:32:03
[2026-08-25 12:32:04,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:32:04,576.576 INFO    ] Initializing speech engine...
[2026-08-25 12:32:04,590.590 INFO    ] 2026-08-25 12:32:04
[2026-08-25 12:32:04,859.859 INFO    ] 2026-08-25 12:32:04
[2026-08-25 12:32:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:32:05,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:32:05,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:32:05,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:32:05,361.361 INFO    ] time= 25/08/2026 12:32:05
[2026-08-25 12:32:05,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:32:05,427.427 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:32:05,558.558 INFO    ] No existing commands found in stream
[2026-08-25 12:32:10,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:32:10,579.579 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 12:32:14,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:32:14,281.281 INFO    ] Checking for system updates...
[2026-08-25 12:32:14,317.317 INFO    ] 200
[2026-08-25 12:32:14,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:14,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:14,380.380 INFO    ] No update needed
[2026-08-25 12:32:14,383.383 INFO    ] Checking for camera pi updates...
[2026-08-25 12:32:14,416.416 INFO    ] 200
[2026-08-25 12:32:14,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:14,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:32:14,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:14,512.512 INFO    ] No camera update needed
[2026-08-25 12:32:14,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:32:14,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:32:14,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:32:14,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:32:16,568.568 INFO    ] ================================================
[2026-08-25 12:32:16,583.583 INFO    ] Launching Daemon at Tue Aug 25 12:32:16 IST 2026
[2026-08-25 12:32:16,594.594 INFO    ] ================================================
[2026-08-25 12:32:17,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:32:17
[2026-08-25 12:32:17,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:32:18,182.182 INFO    ] Initializing speech engine...
[2026-08-25 12:32:18,192.192 INFO    ] 2026-08-25 12:32:18
[2026-08-25 12:32:18,469.469 INFO    ] 2026-08-25 12:32:18
[2026-08-25 12:32:18,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:32:18,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:32:18,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:32:18,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:32:19,025.025 INFO    ] time= 25/08/2026 12:32:18
[2026-08-25 12:32:19,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:32:19,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:32:19,222.222 INFO    ] No existing commands found in stream
[2026-08-25 12:32:24,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:32:24,261.261 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 12:32:27,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:32:27,269.269 INFO    ] Checking for system updates...
[2026-08-25 12:32:27,306.306 INFO    ] 200
[2026-08-25 12:32:27,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:27,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:27,366.366 INFO    ] No update needed
[2026-08-25 12:32:27,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 12:32:27,403.403 INFO    ] 200
[2026-08-25 12:32:27,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:27,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:32:27,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:27,501.501 INFO    ] No camera update needed
[2026-08-25 12:32:27,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:32:27,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:32:27,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:32:27,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:32:29,556.556 INFO    ] ================================================
[2026-08-25 12:32:29,573.573 INFO    ] Launching Daemon at Tue Aug 25 12:32:29 IST 2026
[2026-08-25 12:32:29,584.584 INFO    ] ================================================
[2026-08-25 12:32:30,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:32:30
[2026-08-25 12:32:30,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:32:31,016.016 INFO    ] Initializing speech engine...
[2026-08-25 12:32:31,024.024 INFO    ] 2026-08-25 12:32:31
[2026-08-25 12:32:31,275.275 INFO    ] 2026-08-25 12:32:31
[2026-08-25 12:32:31,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:32:31,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:32:31,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:32:31,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:32:31,924.924 INFO    ] time= 25/08/2026 12:32:31
[2026-08-25 12:32:31,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:32:31,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:32:32,094.094 INFO    ] No existing commands found in stream
[2026-08-25 12:32:37,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:32:37,122.122 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 12:32:40,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:32:40,036.036 INFO    ] Checking for system updates...
[2026-08-25 12:32:40,073.073 INFO    ] 200
[2026-08-25 12:32:40,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:40,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:40,136.136 INFO    ] No update needed
[2026-08-25 12:32:40,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 12:32:40,175.175 INFO    ] 200
[2026-08-25 12:32:40,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:40,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:32:40,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:40,281.281 INFO    ] No camera update needed
[2026-08-25 12:32:40,284.284 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:32:40,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:32:40,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:32:40,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:32:42,342.342 INFO    ] ================================================
[2026-08-25 12:32:42,358.358 INFO    ] Launching Daemon at Tue Aug 25 12:32:42 IST 2026
[2026-08-25 12:32:42,369.369 INFO    ] ================================================
[2026-08-25 12:32:42,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:32:42
[2026-08-25 12:32:43,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:32:43,808.808 INFO    ] Initializing speech engine...
[2026-08-25 12:32:43,819.819 INFO    ] 2026-08-25 12:32:43
[2026-08-25 12:32:44,080.080 INFO    ] 2026-08-25 12:32:44
[2026-08-25 12:32:44,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:32:44,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:32:44,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:32:44,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:32:44,565.565 INFO    ] time= 25/08/2026 12:32:44
[2026-08-25 12:32:44,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:32:44,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:32:44,763.763 INFO    ] No existing commands found in stream
[2026-08-25 12:32:49,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:32:49,790.790 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 12:32:52,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:32:52,083.083 INFO    ] Checking for system updates...
[2026-08-25 12:32:52,119.119 INFO    ] 200
[2026-08-25 12:32:52,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:52,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:52,177.177 INFO    ] No update needed
[2026-08-25 12:32:52,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 12:32:52,212.212 INFO    ] 200
[2026-08-25 12:32:52,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:32:52,258.258 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:32:52,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:32:52,312.312 INFO    ] No camera update needed
[2026-08-25 12:32:52,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:32:52,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:32:52,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:32:52,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:32:54,367.367 INFO    ] ================================================
[2026-08-25 12:32:54,382.382 INFO    ] Launching Daemon at Tue Aug 25 12:32:54 IST 2026
[2026-08-25 12:32:54,393.393 INFO    ] ================================================
[2026-08-25 12:32:54,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:32:54
[2026-08-25 12:32:55,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:32:55,806.806 INFO    ] Initializing speech engine...
[2026-08-25 12:32:55,826.826 INFO    ] 2026-08-25 12:32:55
[2026-08-25 12:32:56,097.097 INFO    ] 2026-08-25 12:32:56
[2026-08-25 12:32:56,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:32:56,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:32:56,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:32:56,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:32:56,505.505 INFO    ] time= 25/08/2026 12:32:56
[2026-08-25 12:32:56,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:32:56,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:32:56,638.638 INFO    ] No existing commands found in stream
[2026-08-25 12:33:01,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:33:01,669.669 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 12:33:05,116.116 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:33:05,119.119 INFO    ] Checking for system updates...
[2026-08-25 12:33:05,156.156 INFO    ] 200
[2026-08-25 12:33:05,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:05,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:33:05,226.226 INFO    ] No update needed
[2026-08-25 12:33:05,229.229 INFO    ] Checking for camera pi updates...
[2026-08-25 12:33:05,265.265 INFO    ] 200
[2026-08-25 12:33:05,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:05,316.316 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:33:05,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:33:05,368.368 INFO    ] No camera update needed
[2026-08-25 12:33:05,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:33:05,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:33:05,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:33:05,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:33:07,426.426 INFO    ] ================================================
[2026-08-25 12:33:07,443.443 INFO    ] Launching Daemon at Tue Aug 25 12:33:07 IST 2026
[2026-08-25 12:33:07,454.454 INFO    ] ================================================
[2026-08-25 12:33:08,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:33:08
[2026-08-25 12:33:08,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:33:08,973.973 INFO    ] Initializing speech engine...
[2026-08-25 12:33:08,988.988 INFO    ] 2026-08-25 12:33:08
[2026-08-25 12:33:09,265.265 INFO    ] 2026-08-25 12:33:09
[2026-08-25 12:33:09,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:33:09,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:33:09,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:33:09,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:33:09,750.750 INFO    ] time= 25/08/2026 12:33:09
[2026-08-25 12:33:09,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:33:09,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:33:09,939.939 INFO    ] No existing commands found in stream
[2026-08-25 12:33:14,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:33:14,969.969 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 12:33:18,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:33:18,037.037 INFO    ] Checking for system updates...
[2026-08-25 12:33:18,077.077 INFO    ] 200
[2026-08-25 12:33:18,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:18,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:33:18,142.142 INFO    ] No update needed
[2026-08-25 12:33:18,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 12:33:18,183.183 INFO    ] 200
[2026-08-25 12:33:18,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:18,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:33:18,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:33:18,275.275 INFO    ] No camera update needed
[2026-08-25 12:33:18,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:33:18,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:33:18,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:33:18,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:33:20,334.334 INFO    ] ================================================
[2026-08-25 12:33:20,350.350 INFO    ] Launching Daemon at Tue Aug 25 12:33:20 IST 2026
[2026-08-25 12:33:20,362.362 INFO    ] ================================================
[2026-08-25 12:33:20,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:33:20
[2026-08-25 12:33:21,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:33:21,819.819 INFO    ] Initializing speech engine...
[2026-08-25 12:33:21,833.833 INFO    ] 2026-08-25 12:33:21
[2026-08-25 12:33:22,087.087 INFO    ] 2026-08-25 12:33:22
[2026-08-25 12:33:22,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:33:22,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:33:22,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:33:22,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:33:22,508.508 INFO    ] time= 25/08/2026 12:33:22
[2026-08-25 12:33:22,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:33:22,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:33:22,752.752 INFO    ] No existing commands found in stream
[2026-08-25 12:33:27,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:33:27,773.773 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 12:33:31,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:33:31,219.219 INFO    ] Checking for system updates...
[2026-08-25 12:33:31,255.255 INFO    ] 200
[2026-08-25 12:33:31,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:31,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:33:31,313.313 INFO    ] No update needed
[2026-08-25 12:33:31,316.316 INFO    ] Checking for camera pi updates...
[2026-08-25 12:33:31,354.354 INFO    ] 200
[2026-08-25 12:33:31,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:31,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:33:31,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:33:31,452.452 INFO    ] No camera update needed
[2026-08-25 12:33:31,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:33:31,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:33:31,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:33:31,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:33:33,510.510 INFO    ] ================================================
[2026-08-25 12:33:33,526.526 INFO    ] Launching Daemon at Tue Aug 25 12:33:33 IST 2026
[2026-08-25 12:33:33,537.537 INFO    ] ================================================
[2026-08-25 12:33:34,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:33:34
[2026-08-25 12:33:34,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:33:34,976.976 INFO    ] Initializing speech engine...
[2026-08-25 12:33:34,989.989 INFO    ] 2026-08-25 12:33:34
[2026-08-25 12:33:35,238.238 INFO    ] 2026-08-25 12:33:35
[2026-08-25 12:33:35,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:33:35,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:33:35,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:33:35,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:33:35,747.747 INFO    ] time= 25/08/2026 12:33:35
[2026-08-25 12:33:35,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:33:35,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:33:35,930.930 INFO    ] No existing commands found in stream
[2026-08-25 12:33:40,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:33:40,955.955 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 12:33:42,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:33:42,128.128 INFO    ] Checking for system updates...
[2026-08-25 12:33:42,168.168 INFO    ] 200
[2026-08-25 12:33:42,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:42,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:33:42,227.227 INFO    ] No update needed
[2026-08-25 12:33:42,230.230 INFO    ] Checking for camera pi updates...
[2026-08-25 12:33:42,268.268 INFO    ] 200
[2026-08-25 12:33:42,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:42,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:33:42,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:33:42,363.363 INFO    ] No camera update needed
[2026-08-25 12:33:42,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:33:42,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:33:42,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:33:42,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:33:44,421.421 INFO    ] ================================================
[2026-08-25 12:33:44,437.437 INFO    ] Launching Daemon at Tue Aug 25 12:33:44 IST 2026
[2026-08-25 12:33:44,447.447 INFO    ] ================================================
[2026-08-25 12:33:45,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:33:45
[2026-08-25 12:33:45,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:33:45,864.864 INFO    ] Initializing speech engine...
[2026-08-25 12:33:45,871.871 INFO    ] 2026-08-25 12:33:45
[2026-08-25 12:33:46,164.164 INFO    ] 2026-08-25 12:33:46
[2026-08-25 12:33:46,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:33:46,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:33:46,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:33:46,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:33:46,514.514 INFO    ] time= 25/08/2026 12:33:46
[2026-08-25 12:33:46,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:33:46,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:33:46,669.669 INFO    ] No existing commands found in stream
[2026-08-25 12:33:51,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:33:51,685.685 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 12:33:54,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:33:54,640.640 INFO    ] Checking for system updates...
[2026-08-25 12:33:54,675.675 INFO    ] 200
[2026-08-25 12:33:54,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:54,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:33:54,742.742 INFO    ] No update needed
[2026-08-25 12:33:54,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 12:33:54,778.778 INFO    ] 200
[2026-08-25 12:33:54,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:33:54,820.820 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:33:54,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:33:54,977.977 INFO    ] No camera update needed
[2026-08-25 12:33:54,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:33:54,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:33:54,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:33:54,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:33:57,035.035 INFO    ] ================================================
[2026-08-25 12:33:57,055.055 INFO    ] Launching Daemon at Tue Aug 25 12:33:57 IST 2026
[2026-08-25 12:33:57,066.066 INFO    ] ================================================
[2026-08-25 12:33:57,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:33:57
[2026-08-25 12:33:58,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:33:58,476.476 INFO    ] Initializing speech engine...
[2026-08-25 12:33:58,499.499 INFO    ] 2026-08-25 12:33:58
[2026-08-25 12:33:58,758.758 INFO    ] 2026-08-25 12:33:58
[2026-08-25 12:33:58,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:33:59,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:33:59,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:33:59,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:33:59,258.258 INFO    ] time= 25/08/2026 12:33:59
[2026-08-25 12:33:59,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:33:59,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:33:59,465.465 INFO    ] No existing commands found in stream
[2026-08-25 12:34:04,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:34:04,493.493 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 12:34:07,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:34:07,381.381 INFO    ] Checking for system updates...
[2026-08-25 12:34:07,419.419 INFO    ] 200
[2026-08-25 12:34:07,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:07,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:34:07,485.485 INFO    ] No update needed
[2026-08-25 12:34:07,488.488 INFO    ] Checking for camera pi updates...
[2026-08-25 12:34:07,523.523 INFO    ] 200
[2026-08-25 12:34:07,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:07,569.569 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:34:07,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:34:07,629.629 INFO    ] No camera update needed
[2026-08-25 12:34:07,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:34:07,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:34:07,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:34:07,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:34:09,688.688 INFO    ] ================================================
[2026-08-25 12:34:09,703.703 INFO    ] Launching Daemon at Tue Aug 25 12:34:09 IST 2026
[2026-08-25 12:34:09,714.714 INFO    ] ================================================
[2026-08-25 12:34:10,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:34:10
[2026-08-25 12:34:10,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:34:11,134.134 INFO    ] Initializing speech engine...
[2026-08-25 12:34:11,143.143 INFO    ] 2026-08-25 12:34:11
[2026-08-25 12:34:11,395.395 INFO    ] 2026-08-25 12:34:11
[2026-08-25 12:34:11,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:34:11,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:34:11,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:34:11,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:34:11,945.945 INFO    ] time= 25/08/2026 12:34:11
[2026-08-25 12:34:11,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:34:11,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:34:12,099.099 INFO    ] No existing commands found in stream
[2026-08-25 12:34:17,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:34:17,113.113 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 12:34:19,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:34:19,682.682 INFO    ] Checking for system updates...
[2026-08-25 12:34:19,719.719 INFO    ] 200
[2026-08-25 12:34:19,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:19,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:34:19,778.778 INFO    ] No update needed
[2026-08-25 12:34:19,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 12:34:19,814.814 INFO    ] 200
[2026-08-25 12:34:19,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:19,862.862 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:34:19,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:34:19,911.911 INFO    ] No camera update needed
[2026-08-25 12:34:19,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:34:19,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:34:19,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:34:19,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:34:21,966.966 INFO    ] ================================================
[2026-08-25 12:34:21,981.981 INFO    ] Launching Daemon at Tue Aug 25 12:34:21 IST 2026
[2026-08-25 12:34:21,992.992 INFO    ] ================================================
[2026-08-25 12:34:22,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:34:22
[2026-08-25 12:34:23,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:34:23,410.410 INFO    ] Initializing speech engine...
[2026-08-25 12:34:23,420.420 INFO    ] 2026-08-25 12:34:23
[2026-08-25 12:34:23,669.669 INFO    ] 2026-08-25 12:34:23
[2026-08-25 12:34:23,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:34:23,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:34:23,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:34:24,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:34:24,111.111 INFO    ] time= 25/08/2026 12:34:24
[2026-08-25 12:34:24,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:34:24,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:34:24,378.378 INFO    ] No existing commands found in stream
[2026-08-25 12:34:29,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:34:29,406.406 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 12:34:32,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:34:32,839.839 INFO    ] Checking for system updates...
[2026-08-25 12:34:32,889.889 INFO    ] 200
[2026-08-25 12:34:32,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:32,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:34:32,959.959 INFO    ] No update needed
[2026-08-25 12:34:32,961.961 INFO    ] Checking for camera pi updates...
[2026-08-25 12:34:32,995.995 INFO    ] 200
[2026-08-25 12:34:32,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:33,037.037 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:34:33,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:34:33,102.102 INFO    ] No camera update needed
[2026-08-25 12:34:33,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:34:33,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:34:33,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:34:33,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:34:35,162.162 INFO    ] ================================================
[2026-08-25 12:34:35,177.177 INFO    ] Launching Daemon at Tue Aug 25 12:34:35 IST 2026
[2026-08-25 12:34:35,188.188 INFO    ] ================================================
[2026-08-25 12:34:35,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:34:35
[2026-08-25 12:34:36,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:34:36,668.668 INFO    ] Initializing speech engine...
[2026-08-25 12:34:36,674.674 INFO    ] 2026-08-25 12:34:36
[2026-08-25 12:34:36,938.938 INFO    ] 2026-08-25 12:34:36
[2026-08-25 12:34:36,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:34:37,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:34:37,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:34:37,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:34:37,402.402 INFO    ] time= 25/08/2026 12:34:37
[2026-08-25 12:34:37,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:34:37,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:34:37,627.627 INFO    ] No existing commands found in stream
[2026-08-25 12:34:42,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:34:42,651.651 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 12:34:43,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:34:43,940.940 INFO    ] Checking for system updates...
[2026-08-25 12:34:43,976.976 INFO    ] 200
[2026-08-25 12:34:43,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:44,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:34:44,034.034 INFO    ] No update needed
[2026-08-25 12:34:44,037.037 INFO    ] Checking for camera pi updates...
[2026-08-25 12:34:44,071.071 INFO    ] 200
[2026-08-25 12:34:44,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:44,114.114 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:34:44,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:34:44,163.163 INFO    ] No camera update needed
[2026-08-25 12:34:44,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:34:44,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:34:44,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:34:44,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:34:46,217.217 INFO    ] ================================================
[2026-08-25 12:34:46,232.232 INFO    ] Launching Daemon at Tue Aug 25 12:34:46 IST 2026
[2026-08-25 12:34:46,243.243 INFO    ] ================================================
[2026-08-25 12:34:46,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:34:46
[2026-08-25 12:34:47,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:34:47,635.635 INFO    ] Initializing speech engine...
[2026-08-25 12:34:47,643.643 INFO    ] 2026-08-25 12:34:47
[2026-08-25 12:34:47,916.916 INFO    ] 2026-08-25 12:34:47
[2026-08-25 12:34:47,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:34:48,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:34:48,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:34:48,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:34:48,398.398 INFO    ] time= 25/08/2026 12:34:48
[2026-08-25 12:34:48,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:34:48,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:34:48,629.629 INFO    ] No existing commands found in stream
[2026-08-25 12:34:53,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:34:53,654.654 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 12:34:54,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:34:54,958.958 INFO    ] Checking for system updates...
[2026-08-25 12:34:54,993.993 INFO    ] 200
[2026-08-25 12:34:54,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:55,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:34:55,059.059 INFO    ] No update needed
[2026-08-25 12:34:55,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 12:34:55,099.099 INFO    ] 200
[2026-08-25 12:34:55,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:34:55,149.149 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:34:55,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:34:55,196.196 INFO    ] No camera update needed
[2026-08-25 12:34:55,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:34:55,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:34:55,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:34:55,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:34:57,255.255 INFO    ] ================================================
[2026-08-25 12:34:57,270.270 INFO    ] Launching Daemon at Tue Aug 25 12:34:57 IST 2026
[2026-08-25 12:34:57,281.281 INFO    ] ================================================
[2026-08-25 12:34:57,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:34:57
[2026-08-25 12:34:58,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:34:58,704.704 INFO    ] Initializing speech engine...
[2026-08-25 12:34:58,709.709 INFO    ] 2026-08-25 12:34:58
[2026-08-25 12:34:58,960.960 INFO    ] 2026-08-25 12:34:58
[2026-08-25 12:34:58,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:34:59,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:34:59,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:34:59,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:34:59,465.465 INFO    ] time= 25/08/2026 12:34:59
[2026-08-25 12:34:59,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:34:59,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:34:59,670.670 INFO    ] No existing commands found in stream
[2026-08-25 12:35:04,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:35:04,698.698 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 12:35:08,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:35:08,162.162 INFO    ] Checking for system updates...
[2026-08-25 12:35:08,197.197 INFO    ] 200
[2026-08-25 12:35:08,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:08,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:35:08,258.258 INFO    ] No update needed
[2026-08-25 12:35:08,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 12:35:08,294.294 INFO    ] 200
[2026-08-25 12:35:08,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:08,342.342 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:35:08,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:35:08,394.394 INFO    ] No camera update needed
[2026-08-25 12:35:08,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:35:08,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:35:08,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:35:08,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:35:10,447.447 INFO    ] ================================================
[2026-08-25 12:35:10,462.462 INFO    ] Launching Daemon at Tue Aug 25 12:35:10 IST 2026
[2026-08-25 12:35:10,473.473 INFO    ] ================================================
[2026-08-25 12:35:11,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:35:11
[2026-08-25 12:35:11,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:35:12,020.020 INFO    ] Initializing speech engine...
[2026-08-25 12:35:12,027.027 INFO    ] 2026-08-25 12:35:12
[2026-08-25 12:35:12,346.346 INFO    ] 2026-08-25 12:35:12
[2026-08-25 12:35:12,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:35:12,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:35:12,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:35:12,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:35:12,859.859 INFO    ] time= 25/08/2026 12:35:12
[2026-08-25 12:35:12,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:35:12,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:35:13,021.021 INFO    ] No existing commands found in stream
[2026-08-25 12:35:18,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:35:18,051.051 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 12:35:19,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:35:19,022.022 INFO    ] Checking for system updates...
[2026-08-25 12:35:19,059.059 INFO    ] 200
[2026-08-25 12:35:19,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:19,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:35:19,124.124 INFO    ] No update needed
[2026-08-25 12:35:19,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 12:35:19,164.164 INFO    ] 200
[2026-08-25 12:35:19,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:19,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:35:19,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:35:19,263.263 INFO    ] No camera update needed
[2026-08-25 12:35:19,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:35:19,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:35:19,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:35:19,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:35:21,318.318 INFO    ] ================================================
[2026-08-25 12:35:21,333.333 INFO    ] Launching Daemon at Tue Aug 25 12:35:21 IST 2026
[2026-08-25 12:35:21,344.344 INFO    ] ================================================
[2026-08-25 12:35:21,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:35:21
[2026-08-25 12:35:22,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:35:22,888.888 INFO    ] Initializing speech engine...
[2026-08-25 12:35:22,900.900 INFO    ] 2026-08-25 12:35:22
[2026-08-25 12:35:23,172.172 INFO    ] 2026-08-25 12:35:23
[2026-08-25 12:35:23,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:35:23,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:35:23,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:35:23,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:35:23,718.718 INFO    ] time= 25/08/2026 12:35:23
[2026-08-25 12:35:23,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:35:23,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:35:23,859.859 INFO    ] No existing commands found in stream
[2026-08-25 12:35:28,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:35:28,888.888 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 12:35:32,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:35:32,810.810 INFO    ] Checking for system updates...
[2026-08-25 12:35:32,848.848 INFO    ] 200
[2026-08-25 12:35:32,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:32,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:35:32,909.909 INFO    ] No update needed
[2026-08-25 12:35:32,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 12:35:32,947.947 INFO    ] 200
[2026-08-25 12:35:32,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:33,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:35:33,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:35:33,057.057 INFO    ] No camera update needed
[2026-08-25 12:35:33,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:35:33,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:35:33,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:35:33,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:35:35,117.117 INFO    ] ================================================
[2026-08-25 12:35:35,132.132 INFO    ] Launching Daemon at Tue Aug 25 12:35:35 IST 2026
[2026-08-25 12:35:35,143.143 INFO    ] ================================================
[2026-08-25 12:35:35,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:35:35
[2026-08-25 12:35:36,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:35:36,568.568 INFO    ] Initializing speech engine...
[2026-08-25 12:35:36,578.578 INFO    ] 2026-08-25 12:35:36
[2026-08-25 12:35:36,823.823 INFO    ] 2026-08-25 12:35:36
[2026-08-25 12:35:36,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:35:37,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:35:37,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:35:37,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:35:37,300.300 INFO    ] time= 25/08/2026 12:35:37
[2026-08-25 12:35:37,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:35:37,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:35:37,532.532 INFO    ] No existing commands found in stream
[2026-08-25 12:35:42,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:35:42,549.549 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 12:35:45,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:35:45,097.097 INFO    ] Checking for system updates...
[2026-08-25 12:35:45,136.136 INFO    ] 200
[2026-08-25 12:35:45,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:45,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:35:45,201.201 INFO    ] No update needed
[2026-08-25 12:35:45,204.204 INFO    ] Checking for camera pi updates...
[2026-08-25 12:35:45,242.242 INFO    ] 200
[2026-08-25 12:35:45,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:45,290.290 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:35:45,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:35:45,344.344 INFO    ] No camera update needed
[2026-08-25 12:35:45,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:35:45,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:35:45,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:35:45,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:35:47,404.404 INFO    ] ================================================
[2026-08-25 12:35:47,419.419 INFO    ] Launching Daemon at Tue Aug 25 12:35:47 IST 2026
[2026-08-25 12:35:47,430.430 INFO    ] ================================================
[2026-08-25 12:35:47,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:35:47
[2026-08-25 12:35:48,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:35:48,851.851 INFO    ] Initializing speech engine...
[2026-08-25 12:35:48,860.860 INFO    ] 2026-08-25 12:35:48
[2026-08-25 12:35:49,106.106 INFO    ] 2026-08-25 12:35:49
[2026-08-25 12:35:49,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:35:49,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:35:49,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:35:49,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:35:49,613.613 INFO    ] time= 25/08/2026 12:35:49
[2026-08-25 12:35:49,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:35:49,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:35:49,819.819 INFO    ] No existing commands found in stream
[2026-08-25 12:35:54,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:35:54,836.836 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 12:35:58,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:35:58,900.900 INFO    ] Checking for system updates...
[2026-08-25 12:35:58,937.937 INFO    ] 200
[2026-08-25 12:35:58,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:59,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:35:59,003.003 INFO    ] No update needed
[2026-08-25 12:35:59,006.006 INFO    ] Checking for camera pi updates...
[2026-08-25 12:35:59,044.044 INFO    ] 200
[2026-08-25 12:35:59,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:35:59,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:35:59,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:35:59,248.248 INFO    ] No camera update needed
[2026-08-25 12:35:59,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:35:59,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:35:59,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:35:59,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:36:01,308.308 INFO    ] ================================================
[2026-08-25 12:36:01,323.323 INFO    ] Launching Daemon at Tue Aug 25 12:36:01 IST 2026
[2026-08-25 12:36:01,334.334 INFO    ] ================================================
[2026-08-25 12:36:01,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:36:01
[2026-08-25 12:36:02,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:36:03,098.098 INFO    ] Initializing speech engine...
[2026-08-25 12:36:03,106.106 INFO    ] 2026-08-25 12:36:03
[2026-08-25 12:36:03,418.418 INFO    ] 2026-08-25 12:36:03
[2026-08-25 12:36:03,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:36:03,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:36:03,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:36:03,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:36:03,868.868 INFO    ] time= 25/08/2026 12:36:03
[2026-08-25 12:36:03,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:36:03,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:36:03,954.954 INFO    ] No existing commands found in stream
[2026-08-25 12:36:08,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:36:08,970.970 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 12:36:13,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:36:13,103.103 INFO    ] Checking for system updates...
[2026-08-25 12:36:13,138.138 INFO    ] 200
[2026-08-25 12:36:13,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:13,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:36:13,195.195 INFO    ] No update needed
[2026-08-25 12:36:13,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 12:36:13,231.231 INFO    ] 200
[2026-08-25 12:36:13,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:13,280.280 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:36:13,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:36:13,332.332 INFO    ] No camera update needed
[2026-08-25 12:36:13,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:36:13,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:36:13,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:36:13,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:36:15,390.390 INFO    ] ================================================
[2026-08-25 12:36:15,405.405 INFO    ] Launching Daemon at Tue Aug 25 12:36:15 IST 2026
[2026-08-25 12:36:15,415.415 INFO    ] ================================================
[2026-08-25 12:36:15,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:36:15
[2026-08-25 12:36:16,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:36:16,855.855 INFO    ] Initializing speech engine...
[2026-08-25 12:36:16,862.862 INFO    ] 2026-08-25 12:36:16
[2026-08-25 12:36:17,165.165 INFO    ] 2026-08-25 12:36:17
[2026-08-25 12:36:17,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:36:17,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:36:17,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:36:17,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:36:17,555.555 INFO    ] time= 25/08/2026 12:36:17
[2026-08-25 12:36:17,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:36:17,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:36:17,735.735 INFO    ] No existing commands found in stream
[2026-08-25 12:36:22,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:36:22,768.768 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 12:36:25,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:36:25,172.172 INFO    ] Checking for system updates...
[2026-08-25 12:36:25,207.207 INFO    ] 200
[2026-08-25 12:36:25,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:25,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:36:25,272.272 INFO    ] No update needed
[2026-08-25 12:36:25,274.274 INFO    ] Checking for camera pi updates...
[2026-08-25 12:36:25,307.307 INFO    ] 200
[2026-08-25 12:36:25,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:25,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:36:25,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:36:25,408.408 INFO    ] No camera update needed
[2026-08-25 12:36:25,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:36:25,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:36:25,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:36:25,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:36:27,462.462 INFO    ] ================================================
[2026-08-25 12:36:27,477.477 INFO    ] Launching Daemon at Tue Aug 25 12:36:27 IST 2026
[2026-08-25 12:36:27,488.488 INFO    ] ================================================
[2026-08-25 12:36:28,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:36:28
[2026-08-25 12:36:28,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:36:28,901.901 INFO    ] Initializing speech engine...
[2026-08-25 12:36:28,907.907 INFO    ] 2026-08-25 12:36:28
[2026-08-25 12:36:29,210.210 INFO    ] 2026-08-25 12:36:29
[2026-08-25 12:36:29,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:36:29,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:36:29,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:36:29,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:36:29,597.597 INFO    ] time= 25/08/2026 12:36:29
[2026-08-25 12:36:29,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:36:29,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:36:29,723.723 INFO    ] No existing commands found in stream
[2026-08-25 12:36:34,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:36:34,739.739 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 12:36:37,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:36:37,238.238 INFO    ] Checking for system updates...
[2026-08-25 12:36:37,273.273 INFO    ] 200
[2026-08-25 12:36:37,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:37,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:36:37,338.338 INFO    ] No update needed
[2026-08-25 12:36:37,340.340 INFO    ] Checking for camera pi updates...
[2026-08-25 12:36:37,395.395 INFO    ] 200
[2026-08-25 12:36:37,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:37,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:36:37,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:36:37,486.486 INFO    ] No camera update needed
[2026-08-25 12:36:37,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:36:37,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:36:37,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:36:37,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:36:39,540.540 INFO    ] ================================================
[2026-08-25 12:36:39,555.555 INFO    ] Launching Daemon at Tue Aug 25 12:36:39 IST 2026
[2026-08-25 12:36:39,566.566 INFO    ] ================================================
[2026-08-25 12:36:40,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:36:40
[2026-08-25 12:36:40,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:36:40,977.977 INFO    ] Initializing speech engine...
[2026-08-25 12:36:40,983.983 INFO    ] 2026-08-25 12:36:40
[2026-08-25 12:36:41,281.281 INFO    ] 2026-08-25 12:36:41
[2026-08-25 12:36:41,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:36:41,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:36:41,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:36:41,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:36:41,640.640 INFO    ] time= 25/08/2026 12:36:41
[2026-08-25 12:36:41,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:36:41,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:36:41,786.786 INFO    ] No existing commands found in stream
[2026-08-25 12:36:46,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:36:46,807.807 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 12:36:49,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:36:49,060.060 INFO    ] Checking for system updates...
[2026-08-25 12:36:49,096.096 INFO    ] 200
[2026-08-25 12:36:49,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:49,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:36:49,154.154 INFO    ] No update needed
[2026-08-25 12:36:49,157.157 INFO    ] Checking for camera pi updates...
[2026-08-25 12:36:49,194.194 INFO    ] 200
[2026-08-25 12:36:49,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:49,237.237 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:36:49,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:36:49,284.284 INFO    ] No camera update needed
[2026-08-25 12:36:49,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:36:49,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:36:49,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:36:49,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:36:51,340.340 INFO    ] ================================================
[2026-08-25 12:36:51,355.355 INFO    ] Launching Daemon at Tue Aug 25 12:36:51 IST 2026
[2026-08-25 12:36:51,365.365 INFO    ] ================================================
[2026-08-25 12:36:51,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:36:51
[2026-08-25 12:36:52,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:36:52,771.771 INFO    ] Initializing speech engine...
[2026-08-25 12:36:52,784.784 INFO    ] 2026-08-25 12:36:52
[2026-08-25 12:36:53,072.072 INFO    ] 2026-08-25 12:36:53
[2026-08-25 12:36:53,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:36:53,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:36:53,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:36:53,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:36:53,456.456 INFO    ] time= 25/08/2026 12:36:53
[2026-08-25 12:36:53,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:36:53,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:36:53,585.585 INFO    ] No existing commands found in stream
[2026-08-25 12:36:58,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:36:58,618.618 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 12:36:59,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:36:59,717.717 INFO    ] Checking for system updates...
[2026-08-25 12:36:59,752.752 INFO    ] 200
[2026-08-25 12:36:59,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:59,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:36:59,817.817 INFO    ] No update needed
[2026-08-25 12:36:59,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 12:36:59,857.857 INFO    ] 200
[2026-08-25 12:36:59,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:36:59,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:36:59,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:36:59,947.947 INFO    ] No camera update needed
[2026-08-25 12:36:59,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:36:59,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:36:59,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:36:59,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:37:02,016.016 INFO    ] ================================================
[2026-08-25 12:37:02,059.059 INFO    ] Launching Daemon at Tue Aug 25 12:37:02 IST 2026
[2026-08-25 12:37:02,077.077 INFO    ] ================================================
[2026-08-25 12:37:02,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:37:02
[2026-08-25 12:37:03,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:37:03,815.815 INFO    ] Initializing speech engine...
[2026-08-25 12:37:03,828.828 INFO    ] 2026-08-25 12:37:03
[2026-08-25 12:37:04,151.151 INFO    ] 2026-08-25 12:37:04
[2026-08-25 12:37:04,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:37:04,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:37:04,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:37:04,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:37:04,583.583 INFO    ] time= 25/08/2026 12:37:04
[2026-08-25 12:37:04,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:37:04,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:37:04,786.786 INFO    ] No existing commands found in stream
[2026-08-25 12:37:09,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:37:09,801.801 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 12:37:10,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:37:10,709.709 INFO    ] Checking for system updates...
[2026-08-25 12:37:10,749.749 INFO    ] 200
[2026-08-25 12:37:10,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:10,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:37:10,807.807 INFO    ] No update needed
[2026-08-25 12:37:10,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 12:37:10,843.843 INFO    ] 200
[2026-08-25 12:37:10,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:10,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:37:10,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:37:10,933.933 INFO    ] No camera update needed
[2026-08-25 12:37:10,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:37:10,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:37:10,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:37:10,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:37:12,988.988 INFO    ] ================================================
[2026-08-25 12:37:13,004.004 INFO    ] Launching Daemon at Tue Aug 25 12:37:12 IST 2026
[2026-08-25 12:37:13,014.014 INFO    ] ================================================
[2026-08-25 12:37:13,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:37:13
[2026-08-25 12:37:14,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:37:14,440.440 INFO    ] Initializing speech engine...
[2026-08-25 12:37:14,450.450 INFO    ] 2026-08-25 12:37:14
[2026-08-25 12:37:14,709.709 INFO    ] 2026-08-25 12:37:14
[2026-08-25 12:37:14,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:37:14,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:37:14,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:37:15,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:37:15,203.203 INFO    ] time= 25/08/2026 12:37:15
[2026-08-25 12:37:15,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:37:15,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:37:15,385.385 INFO    ] No existing commands found in stream
[2026-08-25 12:37:20,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:37:20,415.415 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 12:37:21,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:37:21,498.498 INFO    ] Checking for system updates...
[2026-08-25 12:37:21,534.534 INFO    ] 200
[2026-08-25 12:37:21,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:21,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:37:21,599.599 INFO    ] No update needed
[2026-08-25 12:37:21,601.601 INFO    ] Checking for camera pi updates...
[2026-08-25 12:37:21,635.635 INFO    ] 200
[2026-08-25 12:37:21,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:21,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:37:21,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:37:21,727.727 INFO    ] No camera update needed
[2026-08-25 12:37:21,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:37:21,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:37:21,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:37:21,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:37:23,782.782 INFO    ] ================================================
[2026-08-25 12:37:23,797.797 INFO    ] Launching Daemon at Tue Aug 25 12:37:23 IST 2026
[2026-08-25 12:37:23,808.808 INFO    ] ================================================
[2026-08-25 12:37:24,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:37:24
[2026-08-25 12:37:25,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:37:25,422.422 INFO    ] Initializing speech engine...
[2026-08-25 12:37:25,433.433 INFO    ] 2026-08-25 12:37:25
[2026-08-25 12:37:25,749.749 INFO    ] 2026-08-25 12:37:25
[2026-08-25 12:37:25,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:37:26,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:37:26,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:37:26,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:37:26,273.273 INFO    ] time= 25/08/2026 12:37:26
[2026-08-25 12:37:26,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:37:26,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:37:26,427.427 INFO    ] No existing commands found in stream
[2026-08-25 12:37:31,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:37:31,456.456 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 12:37:34,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:37:34,598.598 INFO    ] Checking for system updates...
[2026-08-25 12:37:34,637.637 INFO    ] 200
[2026-08-25 12:37:34,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:34,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:37:34,702.702 INFO    ] No update needed
[2026-08-25 12:37:34,705.705 INFO    ] Checking for camera pi updates...
[2026-08-25 12:37:34,739.739 INFO    ] 200
[2026-08-25 12:37:34,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:34,781.781 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:37:34,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:37:34,843.843 INFO    ] No camera update needed
[2026-08-25 12:37:34,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:37:34,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:37:34,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:37:34,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:37:36,897.897 INFO    ] ================================================
[2026-08-25 12:37:36,913.913 INFO    ] Launching Daemon at Tue Aug 25 12:37:36 IST 2026
[2026-08-25 12:37:36,923.923 INFO    ] ================================================
[2026-08-25 12:37:37,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:37:37
[2026-08-25 12:37:38,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:37:38,362.362 INFO    ] Initializing speech engine...
[2026-08-25 12:37:38,369.369 INFO    ] 2026-08-25 12:37:38
[2026-08-25 12:37:38,627.627 INFO    ] 2026-08-25 12:37:38
[2026-08-25 12:37:38,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:37:38,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:37:38,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:37:38,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:37:38,994.994 INFO    ] time= 25/08/2026 12:37:38
[2026-08-25 12:37:39,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:37:39,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:37:39,157.157 INFO    ] No existing commands found in stream
[2026-08-25 12:37:44,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:37:44,190.190 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 12:37:46,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:37:46,259.259 INFO    ] Checking for system updates...
[2026-08-25 12:37:46,296.296 INFO    ] 200
[2026-08-25 12:37:46,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:46,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:37:46,365.365 INFO    ] No update needed
[2026-08-25 12:37:46,368.368 INFO    ] Checking for camera pi updates...
[2026-08-25 12:37:46,404.404 INFO    ] 200
[2026-08-25 12:37:46,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:46,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:37:46,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:37:46,503.503 INFO    ] No camera update needed
[2026-08-25 12:37:46,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:37:46,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:37:46,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:37:46,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:37:48,562.562 INFO    ] ================================================
[2026-08-25 12:37:48,577.577 INFO    ] Launching Daemon at Tue Aug 25 12:37:48 IST 2026
[2026-08-25 12:37:48,588.588 INFO    ] ================================================
[2026-08-25 12:37:49,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:37:49
[2026-08-25 12:37:49,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:37:50,038.038 INFO    ] Initializing speech engine...
[2026-08-25 12:37:50,047.047 INFO    ] 2026-08-25 12:37:50
[2026-08-25 12:37:50,308.308 INFO    ] 2026-08-25 12:37:50
[2026-08-25 12:37:50,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:37:50,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:37:50,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:37:50,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:37:50,780.780 INFO    ] time= 25/08/2026 12:37:50
[2026-08-25 12:37:50,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:37:50,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:37:50,992.992 INFO    ] No existing commands found in stream
[2026-08-25 12:37:56,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:37:56,020.020 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 12:37:59,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:37:59,080.080 INFO    ] Checking for system updates...
[2026-08-25 12:37:59,116.116 INFO    ] 200
[2026-08-25 12:37:59,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:59,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:37:59,175.175 INFO    ] No update needed
[2026-08-25 12:37:59,178.178 INFO    ] Checking for camera pi updates...
[2026-08-25 12:37:59,216.216 INFO    ] 200
[2026-08-25 12:37:59,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:37:59,258.258 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:37:59,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:37:59,308.308 INFO    ] No camera update needed
[2026-08-25 12:37:59,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:37:59,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:37:59,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:37:59,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:38:01,370.370 INFO    ] ================================================
[2026-08-25 12:38:01,393.393 INFO    ] Launching Daemon at Tue Aug 25 12:38:01 IST 2026
[2026-08-25 12:38:01,413.413 INFO    ] ================================================
[2026-08-25 12:38:02,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:38:02
[2026-08-25 12:38:02,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:38:03,030.030 INFO    ] Initializing speech engine...
[2026-08-25 12:38:03,036.036 INFO    ] 2026-08-25 12:38:03
[2026-08-25 12:38:03,307.307 INFO    ] 2026-08-25 12:38:03
[2026-08-25 12:38:03,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:38:03,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:38:03,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:38:03,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:38:03,772.772 INFO    ] time= 25/08/2026 12:38:03
[2026-08-25 12:38:03,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:38:03,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:38:04,017.017 INFO    ] No existing commands found in stream
[2026-08-25 12:38:09,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:38:09,035.035 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 12:38:10,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:38:10,827.827 INFO    ] Checking for system updates...
[2026-08-25 12:38:10,864.864 INFO    ] 200
[2026-08-25 12:38:10,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:10,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:38:10,925.925 INFO    ] No update needed
[2026-08-25 12:38:10,928.928 INFO    ] Checking for camera pi updates...
[2026-08-25 12:38:10,961.961 INFO    ] 200
[2026-08-25 12:38:10,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:11,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:38:11,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:38:11,058.058 INFO    ] No camera update needed
[2026-08-25 12:38:11,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:38:11,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:38:11,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:38:11,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:38:13,113.113 INFO    ] ================================================
[2026-08-25 12:38:13,129.129 INFO    ] Launching Daemon at Tue Aug 25 12:38:13 IST 2026
[2026-08-25 12:38:13,140.140 INFO    ] ================================================
[2026-08-25 12:38:13,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:38:13
[2026-08-25 12:38:14,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:38:14,561.561 INFO    ] Initializing speech engine...
[2026-08-25 12:38:14,569.569 INFO    ] 2026-08-25 12:38:14
[2026-08-25 12:38:14,823.823 INFO    ] 2026-08-25 12:38:14
[2026-08-25 12:38:14,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:38:15,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:38:15,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:38:15,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:38:15,306.306 INFO    ] time= 25/08/2026 12:38:15
[2026-08-25 12:38:15,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:38:15,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:38:15,520.520 INFO    ] No existing commands found in stream
[2026-08-25 12:38:20,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:38:20,537.537 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 12:38:24,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:38:24,315.315 INFO    ] Checking for system updates...
[2026-08-25 12:38:24,351.351 INFO    ] 200
[2026-08-25 12:38:24,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:24,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:38:24,410.410 INFO    ] No update needed
[2026-08-25 12:38:24,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 12:38:24,446.446 INFO    ] 200
[2026-08-25 12:38:24,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:24,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:38:24,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:38:24,537.537 INFO    ] No camera update needed
[2026-08-25 12:38:24,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:38:24,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:38:24,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:38:24,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:38:26,592.592 INFO    ] ================================================
[2026-08-25 12:38:26,608.608 INFO    ] Launching Daemon at Tue Aug 25 12:38:26 IST 2026
[2026-08-25 12:38:26,618.618 INFO    ] ================================================
[2026-08-25 12:38:27,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:38:27
[2026-08-25 12:38:27,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:38:28,126.126 INFO    ] Initializing speech engine...
[2026-08-25 12:38:28,133.133 INFO    ] 2026-08-25 12:38:28
[2026-08-25 12:38:28,447.447 INFO    ] 2026-08-25 12:38:28
[2026-08-25 12:38:28,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:38:28,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:38:28,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:38:28,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:38:28,962.962 INFO    ] time= 25/08/2026 12:38:28
[2026-08-25 12:38:28,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:38:29,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:38:29,138.138 INFO    ] No existing commands found in stream
[2026-08-25 12:38:34,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:38:34,178.178 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 12:38:35,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:38:35,437.437 INFO    ] Checking for system updates...
[2026-08-25 12:38:35,472.472 INFO    ] 200
[2026-08-25 12:38:35,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:35,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:38:35,529.529 INFO    ] No update needed
[2026-08-25 12:38:35,532.532 INFO    ] Checking for camera pi updates...
[2026-08-25 12:38:35,565.565 INFO    ] 200
[2026-08-25 12:38:35,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:35,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:38:35,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:38:35,662.662 INFO    ] No camera update needed
[2026-08-25 12:38:35,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:38:35,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:38:35,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:38:35,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:38:37,717.717 INFO    ] ================================================
[2026-08-25 12:38:37,732.732 INFO    ] Launching Daemon at Tue Aug 25 12:38:37 IST 2026
[2026-08-25 12:38:37,744.744 INFO    ] ================================================
[2026-08-25 12:38:38,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:38:38
[2026-08-25 12:38:39,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:38:39,409.409 INFO    ] Initializing speech engine...
[2026-08-25 12:38:39,418.418 INFO    ] 2026-08-25 12:38:39
[2026-08-25 12:38:39,712.712 INFO    ] 2026-08-25 12:38:39
[2026-08-25 12:38:39,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:38:39,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:38:39,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:38:40,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:38:40,198.198 INFO    ] time= 25/08/2026 12:38:40
[2026-08-25 12:38:40,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:38:40,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:38:40,421.421 INFO    ] No existing commands found in stream
[2026-08-25 12:38:45,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:38:45,453.453 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 12:38:48,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:38:48,839.839 INFO    ] Checking for system updates...
[2026-08-25 12:38:48,881.881 INFO    ] 200
[2026-08-25 12:38:48,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:48,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:38:48,966.966 INFO    ] No update needed
[2026-08-25 12:38:48,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 12:38:49,010.010 INFO    ] 200
[2026-08-25 12:38:49,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:49,070.070 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:38:49,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:38:49,124.124 INFO    ] No camera update needed
[2026-08-25 12:38:49,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:38:49,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:38:49,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:38:49,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:38:51,185.185 INFO    ] ================================================
[2026-08-25 12:38:51,202.202 INFO    ] Launching Daemon at Tue Aug 25 12:38:51 IST 2026
[2026-08-25 12:38:51,214.214 INFO    ] ================================================
[2026-08-25 12:38:51,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:38:51
[2026-08-25 12:38:52,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:38:52,903.903 INFO    ] Initializing speech engine...
[2026-08-25 12:38:52,910.910 INFO    ] 2026-08-25 12:38:52
[2026-08-25 12:38:53,175.175 INFO    ] 2026-08-25 12:38:53
[2026-08-25 12:38:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:38:53,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:38:53,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:38:53,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:38:53,664.664 INFO    ] time= 25/08/2026 12:38:53
[2026-08-25 12:38:53,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:38:53,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:38:53,854.854 INFO    ] No existing commands found in stream
[2026-08-25 12:38:58,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:38:58,882.882 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 12:38:59,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:38:59,818.818 INFO    ] Checking for system updates...
[2026-08-25 12:38:59,853.853 INFO    ] 200
[2026-08-25 12:38:59,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:59,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:38:59,919.919 INFO    ] No update needed
[2026-08-25 12:38:59,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 12:38:59,956.956 INFO    ] 200
[2026-08-25 12:38:59,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:38:59,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:39:00,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:39:00,058.058 INFO    ] No camera update needed
[2026-08-25 12:39:00,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:39:00,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:39:00,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:39:00,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:39:02,122.122 INFO    ] ================================================
[2026-08-25 12:39:02,140.140 INFO    ] Launching Daemon at Tue Aug 25 12:39:02 IST 2026
[2026-08-25 12:39:02,154.154 INFO    ] ================================================
[2026-08-25 12:39:02,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:39:02
[2026-08-25 12:39:03,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:39:03,702.702 INFO    ] Initializing speech engine...
[2026-08-25 12:39:03,709.709 INFO    ] 2026-08-25 12:39:03
[2026-08-25 12:39:03,952.952 INFO    ] 2026-08-25 12:39:03
[2026-08-25 12:39:03,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:39:04,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:39:04,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:39:04,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:39:04,425.425 INFO    ] time= 25/08/2026 12:39:04
[2026-08-25 12:39:04,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:39:04,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:39:04,651.651 INFO    ] No existing commands found in stream
[2026-08-25 12:39:09,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:39:09,686.686 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 12:39:10,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:39:10,975.975 INFO    ] Checking for system updates...
[2026-08-25 12:39:11,011.011 INFO    ] 200
[2026-08-25 12:39:11,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:11,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:39:11,068.068 INFO    ] No update needed
[2026-08-25 12:39:11,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 12:39:11,103.103 INFO    ] 200
[2026-08-25 12:39:11,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:11,146.146 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:39:11,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:39:11,194.194 INFO    ] No camera update needed
[2026-08-25 12:39:11,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:39:11,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:39:11,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:39:11,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:39:13,249.249 INFO    ] ================================================
[2026-08-25 12:39:13,265.265 INFO    ] Launching Daemon at Tue Aug 25 12:39:13 IST 2026
[2026-08-25 12:39:13,276.276 INFO    ] ================================================
[2026-08-25 12:39:13,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:39:13
[2026-08-25 12:39:14,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:39:14,874.874 INFO    ] Initializing speech engine...
[2026-08-25 12:39:14,882.882 INFO    ] 2026-08-25 12:39:14
[2026-08-25 12:39:15,155.155 INFO    ] 2026-08-25 12:39:15
[2026-08-25 12:39:15,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:39:15,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:39:15,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:39:15,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:39:15,653.653 INFO    ] time= 25/08/2026 12:39:15
[2026-08-25 12:39:15,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:39:15,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:39:15,858.858 INFO    ] No existing commands found in stream
[2026-08-25 12:39:20,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:39:20,891.891 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 12:39:24,345.345 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:39:24,348.348 INFO    ] Checking for system updates...
[2026-08-25 12:39:24,385.385 INFO    ] 200
[2026-08-25 12:39:24,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:24,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:39:24,449.449 INFO    ] No update needed
[2026-08-25 12:39:24,452.452 INFO    ] Checking for camera pi updates...
[2026-08-25 12:39:24,490.490 INFO    ] 200
[2026-08-25 12:39:24,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:24,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:39:24,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:39:24,588.588 INFO    ] No camera update needed
[2026-08-25 12:39:24,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:39:24,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:39:24,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:39:24,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:39:26,646.646 INFO    ] ================================================
[2026-08-25 12:39:26,661.661 INFO    ] Launching Daemon at Tue Aug 25 12:39:26 IST 2026
[2026-08-25 12:39:26,672.672 INFO    ] ================================================
[2026-08-25 12:39:27,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:39:27
[2026-08-25 12:39:27,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:39:28,074.074 INFO    ] Initializing speech engine...
[2026-08-25 12:39:28,081.081 INFO    ] 2026-08-25 12:39:28
[2026-08-25 12:39:28,375.375 INFO    ] 2026-08-25 12:39:28
[2026-08-25 12:39:28,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:39:28,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:39:28,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:39:28,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:39:28,747.747 INFO    ] time= 25/08/2026 12:39:28
[2026-08-25 12:39:28,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:39:28,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:39:28,873.873 INFO    ] No existing commands found in stream
[2026-08-25 12:39:33,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:39:33,889.889 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 12:39:36,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:39:36,570.570 INFO    ] Checking for system updates...
[2026-08-25 12:39:36,610.610 INFO    ] 200
[2026-08-25 12:39:36,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:36,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:39:36,672.672 INFO    ] No update needed
[2026-08-25 12:39:36,674.674 INFO    ] Checking for camera pi updates...
[2026-08-25 12:39:36,708.708 INFO    ] 200
[2026-08-25 12:39:36,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:36,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:39:36,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:39:36,799.799 INFO    ] No camera update needed
[2026-08-25 12:39:36,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:39:36,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:39:36,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:39:36,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:39:38,855.855 INFO    ] ================================================
[2026-08-25 12:39:38,870.870 INFO    ] Launching Daemon at Tue Aug 25 12:39:38 IST 2026
[2026-08-25 12:39:38,881.881 INFO    ] ================================================
[2026-08-25 12:39:39,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:39:39
[2026-08-25 12:39:40,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:39:40,295.295 INFO    ] Initializing speech engine...
[2026-08-25 12:39:40,305.305 INFO    ] 2026-08-25 12:39:40
[2026-08-25 12:39:40,556.556 INFO    ] 2026-08-25 12:39:40
[2026-08-25 12:39:40,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:39:40,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:39:40,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:39:41,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:39:41,103.103 INFO    ] time= 25/08/2026 12:39:41
[2026-08-25 12:39:41,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:39:41,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:39:41,256.256 INFO    ] No existing commands found in stream
[2026-08-25 12:39:46,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:39:46,271.271 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 12:39:47,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:39:47,837.837 INFO    ] Checking for system updates...
[2026-08-25 12:39:47,873.873 INFO    ] 200
[2026-08-25 12:39:47,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:47,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:39:47,931.931 INFO    ] No update needed
[2026-08-25 12:39:47,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 12:39:47,967.967 INFO    ] 200
[2026-08-25 12:39:47,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:39:48,013.013 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:39:48,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:39:48,060.060 INFO    ] No camera update needed
[2026-08-25 12:39:48,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:39:48,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:39:48,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:39:48,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:39:50,116.116 INFO    ] ================================================
[2026-08-25 12:39:50,132.132 INFO    ] Launching Daemon at Tue Aug 25 12:39:50 IST 2026
[2026-08-25 12:39:50,143.143 INFO    ] ================================================
[2026-08-25 12:39:50,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:39:50
[2026-08-25 12:39:51,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:39:51,561.561 INFO    ] Initializing speech engine...
[2026-08-25 12:39:51,567.567 INFO    ] 2026-08-25 12:39:51
[2026-08-25 12:39:51,838.838 INFO    ] 2026-08-25 12:39:51
[2026-08-25 12:39:51,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:39:52,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:39:52,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:39:52,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:39:52,352.352 INFO    ] time= 25/08/2026 12:39:52
[2026-08-25 12:39:52,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:39:52,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:39:52,503.503 INFO    ] No existing commands found in stream
[2026-08-25 12:39:57,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:39:57,528.528 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 12:40:00,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:40:00,924.924 INFO    ] Checking for system updates...
[2026-08-25 12:40:00,958.958 INFO    ] 200
[2026-08-25 12:40:00,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:01,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:01,015.015 INFO    ] No update needed
[2026-08-25 12:40:01,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 12:40:01,058.058 INFO    ] 200
[2026-08-25 12:40:01,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:01,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:40:01,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:01,401.401 INFO    ] No camera update needed
[2026-08-25 12:40:01,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:40:01,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:40:01,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:40:01,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:40:03,494.494 INFO    ] ================================================
[2026-08-25 12:40:03,510.510 INFO    ] Launching Daemon at Tue Aug 25 12:40:03 IST 2026
[2026-08-25 12:40:03,521.521 INFO    ] ================================================
[2026-08-25 12:40:04,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:40:04
[2026-08-25 12:40:04,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:40:04,919.919 INFO    ] Initializing speech engine...
[2026-08-25 12:40:04,925.925 INFO    ] 2026-08-25 12:40:04
[2026-08-25 12:40:05,217.217 INFO    ] 2026-08-25 12:40:05
[2026-08-25 12:40:05,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:40:05,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:40:05,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:40:05,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:40:05,659.659 INFO    ] time= 25/08/2026 12:40:05
[2026-08-25 12:40:05,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:40:05,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:40:05,852.852 INFO    ] No existing commands found in stream
[2026-08-25 12:40:10,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:40:10,867.867 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 12:40:12,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:40:12,170.170 INFO    ] Checking for system updates...
[2026-08-25 12:40:12,207.207 INFO    ] 200
[2026-08-25 12:40:12,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:12,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:12,271.271 INFO    ] No update needed
[2026-08-25 12:40:12,273.273 INFO    ] Checking for camera pi updates...
[2026-08-25 12:40:12,308.308 INFO    ] 200
[2026-08-25 12:40:12,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:12,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:40:12,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:12,503.503 INFO    ] No camera update needed
[2026-08-25 12:40:12,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:40:12,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:40:12,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:40:12,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:40:14,560.560 INFO    ] ================================================
[2026-08-25 12:40:14,575.575 INFO    ] Launching Daemon at Tue Aug 25 12:40:14 IST 2026
[2026-08-25 12:40:14,586.586 INFO    ] ================================================
[2026-08-25 12:40:15,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:40:15
[2026-08-25 12:40:15,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:40:15,998.998 INFO    ] Initializing speech engine...
[2026-08-25 12:40:16,011.011 INFO    ] 2026-08-25 12:40:15
[2026-08-25 12:40:16,290.290 INFO    ] 2026-08-25 12:40:16
[2026-08-25 12:40:16,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:40:16,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:40:16,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:40:16,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:40:16,699.699 INFO    ] time= 25/08/2026 12:40:16
[2026-08-25 12:40:16,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:40:16,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:40:16,785.785 INFO    ] No existing commands found in stream
[2026-08-25 12:40:21,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:40:21,802.802 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 12:40:25,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:40:25,169.169 INFO    ] Checking for system updates...
[2026-08-25 12:40:25,204.204 INFO    ] 200
[2026-08-25 12:40:25,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:25,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:40:25,261.261 INFO    ] No update needed
[2026-08-25 12:40:25,263.263 INFO    ] Checking for camera pi updates...
[2026-08-25 12:40:25,296.296 INFO    ] 200
[2026-08-25 12:40:25,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:25,339.339 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:40:25,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:40:25,390.390 INFO    ] No camera update needed
[2026-08-25 12:40:25,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:40:25,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:40:25,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:40:25,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:40:27,447.447 INFO    ] ================================================
[2026-08-25 12:40:27,463.463 INFO    ] Launching Daemon at Tue Aug 25 12:40:27 IST 2026
[2026-08-25 12:40:27,474.474 INFO    ] ================================================
[2026-08-25 12:40:28,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:40:28
[2026-08-25 12:40:28,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:40:28,910.910 INFO    ] Initializing speech engine...
[2026-08-25 12:40:28,918.918 INFO    ] 2026-08-25 12:40:28
[2026-08-25 12:40:29,208.208 INFO    ] 2026-08-25 12:40:29
[2026-08-25 12:40:29,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:40:29,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:40:29,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:40:29,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:40:29,619.619 INFO    ] time= 25/08/2026 12:40:29
[2026-08-25 12:40:29,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:40:29,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:40:29,810.810 INFO    ] No existing commands found in stream
[2026-08-25 12:40:34,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:40:34,844.844 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 12:40:36,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:40:36,114.114 INFO    ] Checking for system updates...
[2026-08-25 12:40:36,150.150 INFO    ] 200
[2026-08-25 12:40:36,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:36,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:36,211.211 INFO    ] No update needed
[2026-08-25 12:40:36,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 12:40:36,249.249 INFO    ] 200
[2026-08-25 12:40:36,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:36,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:40:36,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:36,345.345 INFO    ] No camera update needed
[2026-08-25 12:40:36,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:40:36,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:40:36,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:40:36,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:40:38,399.399 INFO    ] ================================================
[2026-08-25 12:40:38,416.416 INFO    ] Launching Daemon at Tue Aug 25 12:40:38 IST 2026
[2026-08-25 12:40:38,426.426 INFO    ] ================================================
[2026-08-25 12:40:39,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:40:38
[2026-08-25 12:40:39,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:40:39,876.876 INFO    ] Initializing speech engine...
[2026-08-25 12:40:39,886.886 INFO    ] 2026-08-25 12:40:39
[2026-08-25 12:40:40,146.146 INFO    ] 2026-08-25 12:40:40
[2026-08-25 12:40:40,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:40:40,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:40:40,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:40:40,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:40:40,636.636 INFO    ] time= 25/08/2026 12:40:40
[2026-08-25 12:40:40,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:40:40,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:40:40,841.841 INFO    ] No existing commands found in stream
[2026-08-25 12:40:45,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:40:45,860.860 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 12:40:47,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:40:47,688.688 INFO    ] Checking for system updates...
[2026-08-25 12:40:47,723.723 INFO    ] 200
[2026-08-25 12:40:47,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:47,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:47,781.781 INFO    ] No update needed
[2026-08-25 12:40:47,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 12:40:47,820.820 INFO    ] 200
[2026-08-25 12:40:47,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:47,864.864 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:40:47,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:40:47,916.916 INFO    ] No camera update needed
[2026-08-25 12:40:47,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:40:47,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:40:47,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:40:47,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:40:49,972.972 INFO    ] ================================================
[2026-08-25 12:40:49,987.987 INFO    ] Launching Daemon at Tue Aug 25 12:40:49 IST 2026
[2026-08-25 12:40:50,997.997 INFO    ] ================================================
[2026-08-25 12:40:50,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:40:50
[2026-08-25 12:40:51,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:40:51,472.472 INFO    ] Initializing speech engine...
[2026-08-25 12:40:51,481.481 INFO    ] 2026-08-25 12:40:51
[2026-08-25 12:40:51,760.760 INFO    ] 2026-08-25 12:40:51
[2026-08-25 12:40:51,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:40:52,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:40:52,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:40:52,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:40:52,229.229 INFO    ] time= 25/08/2026 12:40:52
[2026-08-25 12:40:52,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:40:52,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:40:52,447.447 INFO    ] No existing commands found in stream
[2026-08-25 12:40:57,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:40:57,466.466 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 12:40:58,666.666 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:40:58,668.668 INFO    ] Checking for system updates...
[2026-08-25 12:40:58,704.704 INFO    ] 200
[2026-08-25 12:40:58,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:58,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:40:58,761.761 INFO    ] No update needed
[2026-08-25 12:40:58,763.763 INFO    ] Checking for camera pi updates...
[2026-08-25 12:40:58,798.798 INFO    ] 200
[2026-08-25 12:40:58,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:40:58,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:40:58,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:40:58,889.889 INFO    ] No camera update needed
[2026-08-25 12:40:58,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:40:58,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:40:58,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:40:58,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:41:00,945.945 INFO    ] ================================================
[2026-08-25 12:41:00,960.960 INFO    ] Launching Daemon at Tue Aug 25 12:41:00 IST 2026
[2026-08-25 12:41:00,970.970 INFO    ] ================================================
[2026-08-25 12:41:01,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:41:01
[2026-08-25 12:41:02,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:41:02,670.670 INFO    ] Initializing speech engine...
[2026-08-25 12:41:02,681.681 INFO    ] 2026-08-25 12:41:02
[2026-08-25 12:41:03,034.034 INFO    ] 2026-08-25 12:41:03
[2026-08-25 12:41:03,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:41:03,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:41:03,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:41:03,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:41:03,565.565 INFO    ] time= 25/08/2026 12:41:03
[2026-08-25 12:41:03,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:41:03,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:41:03,701.701 INFO    ] No existing commands found in stream
[2026-08-25 12:41:08,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:41:08,732.732 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 12:41:13,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:41:13,031.031 INFO    ] Checking for system updates...
[2026-08-25 12:41:13,069.069 INFO    ] 200
[2026-08-25 12:41:13,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:13,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:41:13,127.127 INFO    ] No update needed
[2026-08-25 12:41:13,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 12:41:13,165.165 INFO    ] 200
[2026-08-25 12:41:13,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:13,213.213 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:41:13,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:41:13,263.263 INFO    ] No camera update needed
[2026-08-25 12:41:13,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:41:13,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:41:13,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:41:13,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:41:15,318.318 INFO    ] ================================================
[2026-08-25 12:41:15,332.332 INFO    ] Launching Daemon at Tue Aug 25 12:41:15 IST 2026
[2026-08-25 12:41:15,343.343 INFO    ] ================================================
[2026-08-25 12:41:15,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:41:15
[2026-08-25 12:41:16,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:41:16,979.979 INFO    ] Initializing speech engine...
[2026-08-25 12:41:16,992.992 INFO    ] 2026-08-25 12:41:16
[2026-08-25 12:41:17,272.272 INFO    ] 2026-08-25 12:41:17
[2026-08-25 12:41:17,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:41:17,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:41:17,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:41:17,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:41:17,805.805 INFO    ] time= 25/08/2026 12:41:17
[2026-08-25 12:41:17,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:41:17,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:41:17,967.967 INFO    ] No existing commands found in stream
[2026-08-25 12:41:22,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:41:23,001.001 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 12:41:23,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:41:23,946.946 INFO    ] Checking for system updates...
[2026-08-25 12:41:23,983.983 INFO    ] 200
[2026-08-25 12:41:23,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:24,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:41:24,041.041 INFO    ] No update needed
[2026-08-25 12:41:24,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 12:41:24,077.077 INFO    ] 200
[2026-08-25 12:41:24,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:24,119.119 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:41:24,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:41:24,179.179 INFO    ] No camera update needed
[2026-08-25 12:41:24,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:41:24,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:41:24,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:41:24,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:41:26,235.235 INFO    ] ================================================
[2026-08-25 12:41:26,250.250 INFO    ] Launching Daemon at Tue Aug 25 12:41:26 IST 2026
[2026-08-25 12:41:26,260.260 INFO    ] ================================================
[2026-08-25 12:41:26,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:41:26
[2026-08-25 12:41:27,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:41:27,719.719 INFO    ] Initializing speech engine...
[2026-08-25 12:41:27,726.726 INFO    ] 2026-08-25 12:41:27
[2026-08-25 12:41:27,986.986 INFO    ] 2026-08-25 12:41:27
[2026-08-25 12:41:28,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:41:28,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:41:28,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:41:28,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:41:28,445.445 INFO    ] time= 25/08/2026 12:41:28
[2026-08-25 12:41:28,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:41:28,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:41:28,666.666 INFO    ] No existing commands found in stream
[2026-08-25 12:41:33,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:41:33,699.699 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 12:41:37,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:41:37,847.847 INFO    ] Checking for system updates...
[2026-08-25 12:41:37,887.887 INFO    ] 200
[2026-08-25 12:41:37,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:37,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:41:37,946.946 INFO    ] No update needed
[2026-08-25 12:41:37,948.948 INFO    ] Checking for camera pi updates...
[2026-08-25 12:41:37,982.982 INFO    ] 200
[2026-08-25 12:41:37,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:38,025.025 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:41:38,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:41:38,074.074 INFO    ] No camera update needed
[2026-08-25 12:41:38,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:41:38,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:41:38,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:41:38,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:41:40,130.130 INFO    ] ================================================
[2026-08-25 12:41:40,146.146 INFO    ] Launching Daemon at Tue Aug 25 12:41:40 IST 2026
[2026-08-25 12:41:40,157.157 INFO    ] ================================================
[2026-08-25 12:41:40,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:41:40
[2026-08-25 12:41:41,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:41:41,785.785 INFO    ] Initializing speech engine...
[2026-08-25 12:41:41,799.799 INFO    ] 2026-08-25 12:41:41
[2026-08-25 12:41:42,112.112 INFO    ] 2026-08-25 12:41:42
[2026-08-25 12:41:42,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:41:42,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:41:42,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:41:42,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:41:42,615.615 INFO    ] time= 25/08/2026 12:41:42
[2026-08-25 12:41:42,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:41:42,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:41:42,771.771 INFO    ] No existing commands found in stream
[2026-08-25 12:41:47,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:41:47,799.799 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 12:41:49,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:41:49,029.029 INFO    ] Checking for system updates...
[2026-08-25 12:41:49,072.072 INFO    ] 200
[2026-08-25 12:41:49,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:49,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:41:49,130.130 INFO    ] No update needed
[2026-08-25 12:41:49,133.133 INFO    ] Checking for camera pi updates...
[2026-08-25 12:41:49,166.166 INFO    ] 200
[2026-08-25 12:41:49,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:41:49,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:41:49,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:41:49,258.258 INFO    ] No camera update needed
[2026-08-25 12:41:49,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:41:49,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:41:49,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:41:49,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:41:51,314.314 INFO    ] ================================================
[2026-08-25 12:41:51,329.329 INFO    ] Launching Daemon at Tue Aug 25 12:41:51 IST 2026
[2026-08-25 12:41:51,340.340 INFO    ] ================================================
[2026-08-25 12:41:51,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:41:51
[2026-08-25 12:41:52,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:41:52,964.964 INFO    ] Initializing speech engine...
[2026-08-25 12:41:52,978.978 INFO    ] 2026-08-25 12:41:52
[2026-08-25 12:41:53,284.284 INFO    ] 2026-08-25 12:41:53
[2026-08-25 12:41:53,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:41:53,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:41:53,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:41:53,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:41:53,787.787 INFO    ] time= 25/08/2026 12:41:53
[2026-08-25 12:41:53,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:41:53,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:41:53,939.939 INFO    ] No existing commands found in stream
[2026-08-25 12:41:58,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:41:58,957.957 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 12:42:01,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:42:01,374.374 INFO    ] Checking for system updates...
[2026-08-25 12:42:01,415.415 INFO    ] 200
[2026-08-25 12:42:01,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:01,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:01,481.481 INFO    ] No update needed
[2026-08-25 12:42:01,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 12:42:01,531.531 INFO    ] 200
[2026-08-25 12:42:01,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:01,622.622 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:42:01,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:01,701.701 INFO    ] No camera update needed
[2026-08-25 12:42:01,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:42:01,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:42:01,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:42:01,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:42:03,779.779 INFO    ] ================================================
[2026-08-25 12:42:03,794.794 INFO    ] Launching Daemon at Tue Aug 25 12:42:03 IST 2026
[2026-08-25 12:42:03,805.805 INFO    ] ================================================
[2026-08-25 12:42:04,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:42:04
[2026-08-25 12:42:04,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:42:05,259.259 INFO    ] Initializing speech engine...
[2026-08-25 12:42:05,269.269 INFO    ] 2026-08-25 12:42:05
[2026-08-25 12:42:05,522.522 INFO    ] 2026-08-25 12:42:05
[2026-08-25 12:42:05,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:42:05,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:42:05,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:42:05,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:42:05,999.999 INFO    ] time= 25/08/2026 12:42:05
[2026-08-25 12:42:06,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:42:06,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:42:06,197.197 INFO    ] No existing commands found in stream
[2026-08-25 12:42:11,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:42:11,230.230 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 12:42:12,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:42:12,266.266 INFO    ] Checking for system updates...
[2026-08-25 12:42:12,303.303 INFO    ] 200
[2026-08-25 12:42:12,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:12,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:12,361.361 INFO    ] No update needed
[2026-08-25 12:42:12,364.364 INFO    ] Checking for camera pi updates...
[2026-08-25 12:42:12,398.398 INFO    ] 200
[2026-08-25 12:42:12,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:12,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:42:12,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:12,500.500 INFO    ] No camera update needed
[2026-08-25 12:42:12,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:42:12,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:42:12,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:42:12,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:42:14,557.557 INFO    ] ================================================
[2026-08-25 12:42:14,572.572 INFO    ] Launching Daemon at Tue Aug 25 12:42:14 IST 2026
[2026-08-25 12:42:14,582.582 INFO    ] ================================================
[2026-08-25 12:42:15,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:42:15
[2026-08-25 12:42:15,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:42:16,126.126 INFO    ] Initializing speech engine...
[2026-08-25 12:42:16,146.146 INFO    ] 2026-08-25 12:42:16
[2026-08-25 12:42:16,394.394 INFO    ] 2026-08-25 12:42:16
[2026-08-25 12:42:16,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:42:16,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:42:16,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:42:16,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:42:16,771.771 INFO    ] time= 25/08/2026 12:42:16
[2026-08-25 12:42:16,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:42:16,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:42:16,921.921 INFO    ] No existing commands found in stream
[2026-08-25 12:42:21,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:42:21,954.954 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 12:42:24,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:42:24,776.776 INFO    ] Checking for system updates...
[2026-08-25 12:42:24,814.814 INFO    ] 200
[2026-08-25 12:42:24,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:24,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:24,870.870 INFO    ] No update needed
[2026-08-25 12:42:24,873.873 INFO    ] Checking for camera pi updates...
[2026-08-25 12:42:24,906.906 INFO    ] 200
[2026-08-25 12:42:24,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:24,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:42:25,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:25,102.102 INFO    ] No camera update needed
[2026-08-25 12:42:25,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:42:25,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:42:25,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:42:25,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:42:27,157.157 INFO    ] ================================================
[2026-08-25 12:42:27,172.172 INFO    ] Launching Daemon at Tue Aug 25 12:42:27 IST 2026
[2026-08-25 12:42:27,183.183 INFO    ] ================================================
[2026-08-25 12:42:27,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:42:27
[2026-08-25 12:42:28,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:42:28,770.770 INFO    ] Initializing speech engine...
[2026-08-25 12:42:28,778.778 INFO    ] 2026-08-25 12:42:28
[2026-08-25 12:42:29,053.053 INFO    ] 2026-08-25 12:42:29
[2026-08-25 12:42:29,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:42:29,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:42:29,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:42:29,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:42:29,535.535 INFO    ] time= 25/08/2026 12:42:29
[2026-08-25 12:42:29,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:42:29,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:42:29,755.755 INFO    ] No existing commands found in stream
[2026-08-25 12:42:34,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:42:34,770.770 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 12:42:37,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:42:37,386.386 INFO    ] Checking for system updates...
[2026-08-25 12:42:37,429.429 INFO    ] 200
[2026-08-25 12:42:37,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:37,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:37,487.487 INFO    ] No update needed
[2026-08-25 12:42:37,489.489 INFO    ] Checking for camera pi updates...
[2026-08-25 12:42:37,523.523 INFO    ] 200
[2026-08-25 12:42:37,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:37,568.568 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:42:37,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:42:37,625.625 INFO    ] No camera update needed
[2026-08-25 12:42:37,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:42:37,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:42:37,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:42:37,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:42:39,682.682 INFO    ] ================================================
[2026-08-25 12:42:39,698.698 INFO    ] Launching Daemon at Tue Aug 25 12:42:39 IST 2026
[2026-08-25 12:42:39,709.709 INFO    ] ================================================
[2026-08-25 12:42:40,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:42:40
[2026-08-25 12:42:40,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:42:41,151.151 INFO    ] Initializing speech engine...
[2026-08-25 12:42:41,160.160 INFO    ] 2026-08-25 12:42:41
[2026-08-25 12:42:41,452.452 INFO    ] 2026-08-25 12:42:41
[2026-08-25 12:42:41,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:42:41,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:42:41,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:42:41,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:42:41,968.968 INFO    ] time= 25/08/2026 12:42:41
[2026-08-25 12:42:42,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:42:42,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:42:42,201.201 INFO    ] No existing commands found in stream
[2026-08-25 12:42:47,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:42:47,229.229 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 12:42:50,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:42:50,662.662 INFO    ] Checking for system updates...
[2026-08-25 12:42:50,701.701 INFO    ] 200
[2026-08-25 12:42:50,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:50,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:42:50,759.759 INFO    ] No update needed
[2026-08-25 12:42:50,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 12:42:50,794.794 INFO    ] 200
[2026-08-25 12:42:50,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:42:50,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:42:50,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:42:50,888.888 INFO    ] No camera update needed
[2026-08-25 12:42:50,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:42:50,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:42:50,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:42:50,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:42:52,942.942 INFO    ] ================================================
[2026-08-25 12:42:52,958.958 INFO    ] Launching Daemon at Tue Aug 25 12:42:52 IST 2026
[2026-08-25 12:42:52,969.969 INFO    ] ================================================
[2026-08-25 12:42:53,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:42:53
[2026-08-25 12:42:54,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:42:54,549.549 INFO    ] Initializing speech engine...
[2026-08-25 12:42:54,562.562 INFO    ] 2026-08-25 12:42:54
[2026-08-25 12:42:54,827.827 INFO    ] 2026-08-25 12:42:54
[2026-08-25 12:42:54,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:42:55,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:42:55,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:42:55,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:42:55,369.369 INFO    ] time= 25/08/2026 12:42:55
[2026-08-25 12:42:55,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:42:55,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:42:55,527.527 INFO    ] No existing commands found in stream
[2026-08-25 12:43:00,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:43:00,563.563 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 12:43:04,973.973 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:43:04,976.976 INFO    ] Checking for system updates...
[2026-08-25 12:43:05,016.016 INFO    ] 200
[2026-08-25 12:43:05,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:05,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:05,073.073 INFO    ] No update needed
[2026-08-25 12:43:05,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 12:43:05,110.110 INFO    ] 200
[2026-08-25 12:43:05,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:05,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:43:05,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:05,208.208 INFO    ] No camera update needed
[2026-08-25 12:43:05,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:43:05,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:43:05,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:43:05,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:43:07,263.263 INFO    ] ================================================
[2026-08-25 12:43:07,278.278 INFO    ] Launching Daemon at Tue Aug 25 12:43:07 IST 2026
[2026-08-25 12:43:07,290.290 INFO    ] ================================================
[2026-08-25 12:43:07,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:43:07
[2026-08-25 12:43:08,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:43:08,827.827 INFO    ] Initializing speech engine...
[2026-08-25 12:43:08,838.838 INFO    ] 2026-08-25 12:43:08
[2026-08-25 12:43:09,106.106 INFO    ] 2026-08-25 12:43:09
[2026-08-25 12:43:09,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:43:09,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:43:09,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:43:09,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:43:09,591.591 INFO    ] time= 25/08/2026 12:43:09
[2026-08-25 12:43:09,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:43:09,660.660 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:43:09,811.811 INFO    ] No existing commands found in stream
[2026-08-25 12:43:14,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:43:14,840.840 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 12:43:17,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:43:17,578.578 INFO    ] Checking for system updates...
[2026-08-25 12:43:17,621.621 INFO    ] 200
[2026-08-25 12:43:17,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:17,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:43:17,686.686 INFO    ] No update needed
[2026-08-25 12:43:17,688.688 INFO    ] Checking for camera pi updates...
[2026-08-25 12:43:17,722.722 INFO    ] 200
[2026-08-25 12:43:17,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:17,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:43:17,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:43:17,822.822 INFO    ] No camera update needed
[2026-08-25 12:43:17,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:43:17,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:43:17,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:43:17,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:43:19,877.877 INFO    ] ================================================
[2026-08-25 12:43:19,892.892 INFO    ] Launching Daemon at Tue Aug 25 12:43:19 IST 2026
[2026-08-25 12:43:19,902.902 INFO    ] ================================================
[2026-08-25 12:43:20,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:43:20
[2026-08-25 12:43:21,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:43:21,363.363 INFO    ] Initializing speech engine...
[2026-08-25 12:43:21,370.370 INFO    ] 2026-08-25 12:43:21
[2026-08-25 12:43:21,638.638 INFO    ] 2026-08-25 12:43:21
[2026-08-25 12:43:21,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:43:21,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:43:21,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:43:22,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:43:22,129.129 INFO    ] time= 25/08/2026 12:43:22
[2026-08-25 12:43:22,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:43:22,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:43:22,333.333 INFO    ] No existing commands found in stream
[2026-08-25 12:43:27,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:43:27,352.352 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 12:43:29,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:43:29,909.909 INFO    ] Checking for system updates...
[2026-08-25 12:43:29,957.957 INFO    ] 200
[2026-08-25 12:43:29,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:30,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:30,021.021 INFO    ] No update needed
[2026-08-25 12:43:30,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 12:43:30,058.058 INFO    ] 200
[2026-08-25 12:43:30,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:30,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:43:30,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:30,149.149 INFO    ] No camera update needed
[2026-08-25 12:43:30,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:43:30,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:43:30,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:43:30,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:43:32,207.207 INFO    ] ================================================
[2026-08-25 12:43:32,223.223 INFO    ] Launching Daemon at Tue Aug 25 12:43:32 IST 2026
[2026-08-25 12:43:32,234.234 INFO    ] ================================================
[2026-08-25 12:43:32,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:43:32
[2026-08-25 12:43:33,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:43:33,663.663 INFO    ] Initializing speech engine...
[2026-08-25 12:43:33,670.670 INFO    ] 2026-08-25 12:43:33
[2026-08-25 12:43:33,942.942 INFO    ] 2026-08-25 12:43:33
[2026-08-25 12:43:33,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:43:34,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:43:34,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:43:34,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:43:34,328.328 INFO    ] time= 25/08/2026 12:43:34
[2026-08-25 12:43:34,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:43:34,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:43:34,521.521 INFO    ] No existing commands found in stream
[2026-08-25 12:43:39,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:43:39,539.539 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 12:43:42,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:43:42,914.914 INFO    ] Checking for system updates...
[2026-08-25 12:43:42,950.950 INFO    ] 200
[2026-08-25 12:43:42,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:43,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:43,007.007 INFO    ] No update needed
[2026-08-25 12:43:43,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 12:43:43,047.047 INFO    ] 200
[2026-08-25 12:43:43,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:43,090.090 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:43:43,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:43,136.136 INFO    ] No camera update needed
[2026-08-25 12:43:43,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:43:43,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:43:43,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:43:43,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:43:45,190.190 INFO    ] ================================================
[2026-08-25 12:43:45,205.205 INFO    ] Launching Daemon at Tue Aug 25 12:43:45 IST 2026
[2026-08-25 12:43:45,215.215 INFO    ] ================================================
[2026-08-25 12:43:45,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:43:45
[2026-08-25 12:43:46,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:43:46,617.617 INFO    ] Initializing speech engine...
[2026-08-25 12:43:46,632.632 INFO    ] 2026-08-25 12:43:46
[2026-08-25 12:43:46,899.899 INFO    ] 2026-08-25 12:43:46
[2026-08-25 12:43:46,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:43:47,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:43:47,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:43:47,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:43:47,380.380 INFO    ] time= 25/08/2026 12:43:47
[2026-08-25 12:43:47,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:43:47,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:43:47,606.606 INFO    ] No existing commands found in stream
[2026-08-25 12:43:52,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:43:52,633.633 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 12:43:53,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:43:53,303.303 INFO    ] Checking for system updates...
[2026-08-25 12:43:53,339.339 INFO    ] 200
[2026-08-25 12:43:53,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:53,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:53,403.403 INFO    ] No update needed
[2026-08-25 12:43:53,406.406 INFO    ] Checking for camera pi updates...
[2026-08-25 12:43:53,440.440 INFO    ] 200
[2026-08-25 12:43:53,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:43:53,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:43:53,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:43:53,535.535 INFO    ] No camera update needed
[2026-08-25 12:43:53,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:43:53,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:43:53,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:43:53,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:43:55,588.588 INFO    ] ================================================
[2026-08-25 12:43:55,605.605 INFO    ] Launching Daemon at Tue Aug 25 12:43:55 IST 2026
[2026-08-25 12:43:55,616.616 INFO    ] ================================================
[2026-08-25 12:43:56,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:43:56
[2026-08-25 12:43:56,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:43:57,035.035 INFO    ] Initializing speech engine...
[2026-08-25 12:43:57,044.044 INFO    ] 2026-08-25 12:43:57
[2026-08-25 12:43:57,289.289 INFO    ] 2026-08-25 12:43:57
[2026-08-25 12:43:57,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:43:57,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:43:57,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:43:57,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:43:57,756.756 INFO    ] time= 25/08/2026 12:43:57
[2026-08-25 12:43:57,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:43:57,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:43:58,006.006 INFO    ] No existing commands found in stream
[2026-08-25 12:44:03,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:44:03,019.019 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 12:44:03,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:44:03,808.808 INFO    ] Checking for system updates...
[2026-08-25 12:44:03,847.847 INFO    ] 200
[2026-08-25 12:44:03,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:03,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:44:03,910.910 INFO    ] No update needed
[2026-08-25 12:44:03,912.912 INFO    ] Checking for camera pi updates...
[2026-08-25 12:44:03,945.945 INFO    ] 200
[2026-08-25 12:44:03,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:03,988.988 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:44:04,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:44:04,036.036 INFO    ] No camera update needed
[2026-08-25 12:44:04,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:44:04,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:44:04,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:44:04,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:44:06,089.089 INFO    ] ================================================
[2026-08-25 12:44:06,104.104 INFO    ] Launching Daemon at Tue Aug 25 12:44:06 IST 2026
[2026-08-25 12:44:06,115.115 INFO    ] ================================================
[2026-08-25 12:44:06,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:44:06
[2026-08-25 12:44:07,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:44:07,569.569 INFO    ] Initializing speech engine...
[2026-08-25 12:44:07,578.578 INFO    ] 2026-08-25 12:44:07
[2026-08-25 12:44:07,823.823 INFO    ] 2026-08-25 12:44:07
[2026-08-25 12:44:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:44:08,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:44:08,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:44:08,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:44:08,305.305 INFO    ] time= 25/08/2026 12:44:08
[2026-08-25 12:44:08,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:44:08,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:44:08,465.465 INFO    ] No existing commands found in stream
[2026-08-25 12:44:13,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:44:13,504.504 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 12:44:17,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:44:17,887.887 INFO    ] Checking for system updates...
[2026-08-25 12:44:17,926.926 INFO    ] 200
[2026-08-25 12:44:17,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:17,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:44:17,989.989 INFO    ] No update needed
[2026-08-25 12:44:17,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 12:44:18,025.025 INFO    ] 200
[2026-08-25 12:44:18,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:18,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:44:18,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:44:18,113.113 INFO    ] No camera update needed
[2026-08-25 12:44:18,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:44:18,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:44:18,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:44:18,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:44:20,168.168 INFO    ] ================================================
[2026-08-25 12:44:20,184.184 INFO    ] Launching Daemon at Tue Aug 25 12:44:20 IST 2026
[2026-08-25 12:44:20,195.195 INFO    ] ================================================
[2026-08-25 12:44:20,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:44:20
[2026-08-25 12:44:21,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:44:21,611.611 INFO    ] Initializing speech engine...
[2026-08-25 12:44:21,621.621 INFO    ] 2026-08-25 12:44:21
[2026-08-25 12:44:21,865.865 INFO    ] 2026-08-25 12:44:21
[2026-08-25 12:44:21,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:44:22,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:44:22,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:44:22,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:44:22,377.377 INFO    ] time= 25/08/2026 12:44:22
[2026-08-25 12:44:22,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:44:22,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:44:22,572.572 INFO    ] No existing commands found in stream
[2026-08-25 12:44:27,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:44:27,588.588 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 12:44:30,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:44:30,043.043 INFO    ] Checking for system updates...
[2026-08-25 12:44:30,082.082 INFO    ] 200
[2026-08-25 12:44:30,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:30,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:44:30,141.141 INFO    ] No update needed
[2026-08-25 12:44:30,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 12:44:30,178.178 INFO    ] 200
[2026-08-25 12:44:30,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:30,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:44:30,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:44:30,369.369 INFO    ] No camera update needed
[2026-08-25 12:44:30,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:44:30,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:44:30,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:44:30,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:44:32,426.426 INFO    ] ================================================
[2026-08-25 12:44:32,442.442 INFO    ] Launching Daemon at Tue Aug 25 12:44:32 IST 2026
[2026-08-25 12:44:32,453.453 INFO    ] ================================================
[2026-08-25 12:44:33,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:44:33
[2026-08-25 12:44:33,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:44:33,892.892 INFO    ] Initializing speech engine...
[2026-08-25 12:44:33,898.898 INFO    ] 2026-08-25 12:44:33
[2026-08-25 12:44:34,197.197 INFO    ] 2026-08-25 12:44:34
[2026-08-25 12:44:34,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:44:34,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:44:34,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:44:34,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:44:34,618.618 INFO    ] time= 25/08/2026 12:44:34
[2026-08-25 12:44:34,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:44:34,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:44:34,746.746 INFO    ] No existing commands found in stream
[2026-08-25 12:44:39,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:44:39,784.784 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 12:44:40,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:44:40,253.253 INFO    ] Checking for system updates...
[2026-08-25 12:44:40,294.294 INFO    ] 200
[2026-08-25 12:44:40,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:40,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:44:40,359.359 INFO    ] No update needed
[2026-08-25 12:44:40,362.362 INFO    ] Checking for camera pi updates...
[2026-08-25 12:44:40,401.401 INFO    ] 200
[2026-08-25 12:44:40,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:40,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:44:40,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:44:40,499.499 INFO    ] No camera update needed
[2026-08-25 12:44:40,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:44:40,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:44:40,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:44:40,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:44:42,557.557 INFO    ] ================================================
[2026-08-25 12:44:42,572.572 INFO    ] Launching Daemon at Tue Aug 25 12:44:42 IST 2026
[2026-08-25 12:44:42,582.582 INFO    ] ================================================
[2026-08-25 12:44:43,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:44:43
[2026-08-25 12:44:43,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:44:43,993.993 INFO    ] Initializing speech engine...
[2026-08-25 12:44:44,000.000 INFO    ] 2026-08-25 12:44:43
[2026-08-25 12:44:44,297.297 INFO    ] 2026-08-25 12:44:44
[2026-08-25 12:44:44,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:44:44,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:44:44,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:44:44,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:44:44,685.685 INFO    ] time= 25/08/2026 12:44:44
[2026-08-25 12:44:44,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:44:44,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:44:44,812.812 INFO    ] No existing commands found in stream
[2026-08-25 12:44:49,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:44:49,825.825 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 12:44:51,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:44:51,554.554 INFO    ] Checking for system updates...
[2026-08-25 12:44:51,590.590 INFO    ] 200
[2026-08-25 12:44:51,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:51,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:44:51,657.657 INFO    ] No update needed
[2026-08-25 12:44:51,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 12:44:51,698.698 INFO    ] 200
[2026-08-25 12:44:51,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:44:51,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:44:51,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:44:51,794.794 INFO    ] No camera update needed
[2026-08-25 12:44:51,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:44:51,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:44:51,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:44:51,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:44:53,852.852 INFO    ] ================================================
[2026-08-25 12:44:53,867.867 INFO    ] Launching Daemon at Tue Aug 25 12:44:53 IST 2026
[2026-08-25 12:44:53,878.878 INFO    ] ================================================
[2026-08-25 12:44:54,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:44:54
[2026-08-25 12:44:55,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:44:55,305.305 INFO    ] Initializing speech engine...
[2026-08-25 12:44:55,331.331 INFO    ] 2026-08-25 12:44:55
[2026-08-25 12:44:55,606.606 INFO    ] 2026-08-25 12:44:55
[2026-08-25 12:44:55,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:44:55,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:44:55,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:44:56,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:44:56,026.026 INFO    ] time= 25/08/2026 12:44:56
[2026-08-25 12:44:56,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:44:56,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:44:56,115.115 INFO    ] No existing commands found in stream
[2026-08-25 12:45:01,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:45:01,129.129 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 12:45:03,096.096 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:45:03,099.099 INFO    ] Checking for system updates...
[2026-08-25 12:45:03,137.137 INFO    ] 200
[2026-08-25 12:45:03,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:03,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:03,204.204 INFO    ] No update needed
[2026-08-25 12:45:03,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 12:45:03,256.256 INFO    ] 200
[2026-08-25 12:45:03,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:03,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:45:03,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:03,379.379 INFO    ] No camera update needed
[2026-08-25 12:45:03,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:45:03,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:45:03,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:45:03,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:45:05,439.439 INFO    ] ================================================
[2026-08-25 12:45:05,454.454 INFO    ] Launching Daemon at Tue Aug 25 12:45:05 IST 2026
[2026-08-25 12:45:05,465.465 INFO    ] ================================================
[2026-08-25 12:45:06,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:45:06
[2026-08-25 12:45:06,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:45:06,979.979 INFO    ] Initializing speech engine...
[2026-08-25 12:45:06,987.987 INFO    ] 2026-08-25 12:45:06
[2026-08-25 12:45:07,257.257 INFO    ] 2026-08-25 12:45:07
[2026-08-25 12:45:07,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:45:07,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:45:07,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:45:07,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:45:07,746.746 INFO    ] time= 25/08/2026 12:45:07
[2026-08-25 12:45:07,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:45:07,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:45:07,942.942 INFO    ] No existing commands found in stream
[2026-08-25 12:45:12,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:45:12,976.976 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 12:45:15,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:45:15,855.855 INFO    ] Checking for system updates...
[2026-08-25 12:45:15,892.892 INFO    ] 200
[2026-08-25 12:45:15,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:15,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:15,951.951 INFO    ] No update needed
[2026-08-25 12:45:15,954.954 INFO    ] Checking for camera pi updates...
[2026-08-25 12:45:15,989.989 INFO    ] 200
[2026-08-25 12:45:15,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:16,033.033 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:45:16,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:16,083.083 INFO    ] No camera update needed
[2026-08-25 12:45:16,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:45:16,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:45:16,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:45:16,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:45:18,140.140 INFO    ] ================================================
[2026-08-25 12:45:18,155.155 INFO    ] Launching Daemon at Tue Aug 25 12:45:18 IST 2026
[2026-08-25 12:45:18,166.166 INFO    ] ================================================
[2026-08-25 12:45:18,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:45:18
[2026-08-25 12:45:19,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:45:19,623.623 INFO    ] Initializing speech engine...
[2026-08-25 12:45:19,628.628 INFO    ] 2026-08-25 12:45:19
[2026-08-25 12:45:19,900.900 INFO    ] 2026-08-25 12:45:19
[2026-08-25 12:45:19,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:45:20,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:45:20,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:45:20,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:45:20,379.379 INFO    ] time= 25/08/2026 12:45:20
[2026-08-25 12:45:20,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:45:20,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:45:20,572.572 INFO    ] No existing commands found in stream
[2026-08-25 12:45:25,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:45:25,597.597 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 12:45:26,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:45:26,975.975 INFO    ] Checking for system updates...
[2026-08-25 12:45:27,011.011 INFO    ] 200
[2026-08-25 12:45:27,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:27,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:45:27,075.075 INFO    ] No update needed
[2026-08-25 12:45:27,077.077 INFO    ] Checking for camera pi updates...
[2026-08-25 12:45:27,111.111 INFO    ] 200
[2026-08-25 12:45:27,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:27,156.156 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:45:27,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:45:27,209.209 INFO    ] No camera update needed
[2026-08-25 12:45:27,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:45:27,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:45:27,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:45:27,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:45:29,267.267 INFO    ] ================================================
[2026-08-25 12:45:29,282.282 INFO    ] Launching Daemon at Tue Aug 25 12:45:29 IST 2026
[2026-08-25 12:45:29,293.293 INFO    ] ================================================
[2026-08-25 12:45:29,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:45:29
[2026-08-25 12:45:30,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:45:30,778.778 INFO    ] Initializing speech engine...
[2026-08-25 12:45:30,792.792 INFO    ] 2026-08-25 12:45:30
[2026-08-25 12:45:31,078.078 INFO    ] 2026-08-25 12:45:31
[2026-08-25 12:45:31,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:45:31,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:45:31,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:45:31,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:45:31,498.498 INFO    ] time= 25/08/2026 12:45:31
[2026-08-25 12:45:31,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:45:31,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:45:31,586.586 INFO    ] No existing commands found in stream
[2026-08-25 12:45:36,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:45:36,619.619 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 12:45:39,357.357 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:45:39,359.359 INFO    ] Checking for system updates...
[2026-08-25 12:45:39,395.395 INFO    ] 200
[2026-08-25 12:45:39,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:39,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:39,452.452 INFO    ] No update needed
[2026-08-25 12:45:39,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 12:45:39,491.491 INFO    ] 200
[2026-08-25 12:45:39,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:39,533.533 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:45:39,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:39,589.589 INFO    ] No camera update needed
[2026-08-25 12:45:39,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:45:39,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:45:39,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:45:39,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:45:41,645.645 INFO    ] ================================================
[2026-08-25 12:45:41,660.660 INFO    ] Launching Daemon at Tue Aug 25 12:45:41 IST 2026
[2026-08-25 12:45:41,671.671 INFO    ] ================================================
[2026-08-25 12:45:42,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:45:42
[2026-08-25 12:45:42,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:45:43,068.068 INFO    ] Initializing speech engine...
[2026-08-25 12:45:43,091.091 INFO    ] 2026-08-25 12:45:43
[2026-08-25 12:45:43,345.345 INFO    ] 2026-08-25 12:45:43
[2026-08-25 12:45:43,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:45:43,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:45:43,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:45:43,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:45:43,818.818 INFO    ] time= 25/08/2026 12:45:43
[2026-08-25 12:45:43,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:45:43,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:45:44,054.054 INFO    ] No existing commands found in stream
[2026-08-25 12:45:49,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:45:49,082.082 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 12:45:51,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:45:51,028.028 INFO    ] Checking for system updates...
[2026-08-25 12:45:51,065.065 INFO    ] 200
[2026-08-25 12:45:51,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:51,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:51,126.126 INFO    ] No update needed
[2026-08-25 12:45:51,128.128 INFO    ] Checking for camera pi updates...
[2026-08-25 12:45:51,163.163 INFO    ] 200
[2026-08-25 12:45:51,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:45:51,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:45:51,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:45:51,256.256 INFO    ] No camera update needed
[2026-08-25 12:45:51,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:45:51,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:45:51,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:45:51,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:45:53,316.316 INFO    ] ================================================
[2026-08-25 12:45:53,331.331 INFO    ] Launching Daemon at Tue Aug 25 12:45:53 IST 2026
[2026-08-25 12:45:53,342.342 INFO    ] ================================================
[2026-08-25 12:45:53,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:45:53
[2026-08-25 12:45:54,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:45:54,959.959 INFO    ] Initializing speech engine...
[2026-08-25 12:45:54,971.971 INFO    ] 2026-08-25 12:45:54
[2026-08-25 12:45:55,259.259 INFO    ] 2026-08-25 12:45:55
[2026-08-25 12:45:55,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:45:55,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:45:55,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:45:55,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:45:55,728.728 INFO    ] time= 25/08/2026 12:45:55
[2026-08-25 12:45:55,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:45:55,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:45:55,955.955 INFO    ] No existing commands found in stream
[2026-08-25 12:46:00,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:46:00,978.978 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 12:46:04,917.917 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:46:04,920.920 INFO    ] Checking for system updates...
[2026-08-25 12:46:04,969.969 INFO    ] 200
[2026-08-25 12:46:04,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:05,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:46:05,033.033 INFO    ] No update needed
[2026-08-25 12:46:05,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 12:46:05,069.069 INFO    ] 200
[2026-08-25 12:46:05,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:05,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:46:05,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:46:05,161.161 INFO    ] No camera update needed
[2026-08-25 12:46:05,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:46:05,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:46:05,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:46:05,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:46:07,217.217 INFO    ] ================================================
[2026-08-25 12:46:07,232.232 INFO    ] Launching Daemon at Tue Aug 25 12:46:07 IST 2026
[2026-08-25 12:46:07,243.243 INFO    ] ================================================
[2026-08-25 12:46:07,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:46:07
[2026-08-25 12:46:08,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:46:08,770.770 INFO    ] Initializing speech engine...
[2026-08-25 12:46:08,780.780 INFO    ] 2026-08-25 12:46:08
[2026-08-25 12:46:09,066.066 INFO    ] 2026-08-25 12:46:09
[2026-08-25 12:46:09,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:46:09,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:46:09,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:46:09,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:46:09,530.530 INFO    ] time= 25/08/2026 12:46:09
[2026-08-25 12:46:09,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:46:09,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:46:09,748.748 INFO    ] No existing commands found in stream
[2026-08-25 12:46:14,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:46:14,776.776 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 12:46:17,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:46:17,643.643 INFO    ] Checking for system updates...
[2026-08-25 12:46:17,679.679 INFO    ] 200
[2026-08-25 12:46:17,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:17,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:46:17,738.738 INFO    ] No update needed
[2026-08-25 12:46:17,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 12:46:17,776.776 INFO    ] 200
[2026-08-25 12:46:17,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:17,820.820 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:46:17,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:46:17,886.886 INFO    ] No camera update needed
[2026-08-25 12:46:17,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:46:17,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:46:17,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:46:17,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:46:19,946.946 INFO    ] ================================================
[2026-08-25 12:46:19,962.962 INFO    ] Launching Daemon at Tue Aug 25 12:46:19 IST 2026
[2026-08-25 12:46:19,973.973 INFO    ] ================================================
[2026-08-25 12:46:20,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:46:20
[2026-08-25 12:46:21,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:46:21,419.419 INFO    ] Initializing speech engine...
[2026-08-25 12:46:21,428.428 INFO    ] 2026-08-25 12:46:21
[2026-08-25 12:46:21,689.689 INFO    ] 2026-08-25 12:46:21
[2026-08-25 12:46:21,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:46:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:46:21,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:46:22,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:46:22,159.159 INFO    ] time= 25/08/2026 12:46:22
[2026-08-25 12:46:22,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:46:22,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:46:22,387.387 INFO    ] No existing commands found in stream
[2026-08-25 12:46:27,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:46:27,404.404 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 12:46:29,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:46:29,303.303 INFO    ] Checking for system updates...
[2026-08-25 12:46:29,339.339 INFO    ] 200
[2026-08-25 12:46:29,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:29,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:46:29,397.397 INFO    ] No update needed
[2026-08-25 12:46:29,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 12:46:29,440.440 INFO    ] 200
[2026-08-25 12:46:29,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:29,485.485 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:46:29,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:46:29,538.538 INFO    ] No camera update needed
[2026-08-25 12:46:29,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:46:29,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:46:29,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:46:29,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:46:31,597.597 INFO    ] ================================================
[2026-08-25 12:46:31,612.612 INFO    ] Launching Daemon at Tue Aug 25 12:46:31 IST 2026
[2026-08-25 12:46:31,623.623 INFO    ] ================================================
[2026-08-25 12:46:32,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:46:32
[2026-08-25 12:46:32,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:46:33,172.172 INFO    ] Initializing speech engine...
[2026-08-25 12:46:33,176.176 INFO    ] 2026-08-25 12:46:33
[2026-08-25 12:46:33,447.447 INFO    ] 2026-08-25 12:46:33
[2026-08-25 12:46:33,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:46:33,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:46:33,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:46:33,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:46:33,916.916 INFO    ] time= 25/08/2026 12:46:33
[2026-08-25 12:46:33,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:46:34,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:46:34,121.121 INFO    ] No existing commands found in stream
[2026-08-25 12:46:39,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:46:39,151.151 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 12:46:39,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:46:39,839.839 INFO    ] Checking for system updates...
[2026-08-25 12:46:39,876.876 INFO    ] 200
[2026-08-25 12:46:39,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:39,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:46:39,935.935 INFO    ] No update needed
[2026-08-25 12:46:39,938.938 INFO    ] Checking for camera pi updates...
[2026-08-25 12:46:39,972.972 INFO    ] 200
[2026-08-25 12:46:39,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:40,019.019 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:46:40,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:46:40,112.112 INFO    ] No camera update needed
[2026-08-25 12:46:40,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:46:40,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:46:40,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:46:40,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:46:42,171.171 INFO    ] ================================================
[2026-08-25 12:46:42,187.187 INFO    ] Launching Daemon at Tue Aug 25 12:46:42 IST 2026
[2026-08-25 12:46:42,198.198 INFO    ] ================================================
[2026-08-25 12:46:42,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:46:42
[2026-08-25 12:46:43,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:46:43,724.724 INFO    ] Initializing speech engine...
[2026-08-25 12:46:43,745.745 INFO    ] 2026-08-25 12:46:43
[2026-08-25 12:46:44,029.029 INFO    ] 2026-08-25 12:46:44
[2026-08-25 12:46:44,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:46:44,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:46:44,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:46:44,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:46:44,451.451 INFO    ] time= 25/08/2026 12:46:44
[2026-08-25 12:46:44,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:46:44,464.464 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:46:44,539.539 INFO    ] No existing commands found in stream
[2026-08-25 12:46:49,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:46:49,567.567 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 12:46:51,451.451 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:46:51,453.453 INFO    ] Checking for system updates...
[2026-08-25 12:46:51,493.493 INFO    ] 200
[2026-08-25 12:46:51,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:51,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:46:51,550.550 INFO    ] No update needed
[2026-08-25 12:46:51,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 12:46:51,586.586 INFO    ] 200
[2026-08-25 12:46:51,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:46:51,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:46:51,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:46:51,676.676 INFO    ] No camera update needed
[2026-08-25 12:46:51,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:46:51,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:46:51,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:46:51,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:46:53,731.731 INFO    ] ================================================
[2026-08-25 12:46:53,747.747 INFO    ] Launching Daemon at Tue Aug 25 12:46:53 IST 2026
[2026-08-25 12:46:53,758.758 INFO    ] ================================================
[2026-08-25 12:46:54,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:46:54
[2026-08-25 12:46:54,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:46:55,195.195 INFO    ] Initializing speech engine...
[2026-08-25 12:46:55,206.206 INFO    ] 2026-08-25 12:46:55
[2026-08-25 12:46:55,478.478 INFO    ] 2026-08-25 12:46:55
[2026-08-25 12:46:55,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:46:55,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:46:55,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:46:55,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:46:55,860.860 INFO    ] time= 25/08/2026 12:46:55
[2026-08-25 12:46:55,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:46:55,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:46:55,986.986 INFO    ] No existing commands found in stream
[2026-08-25 12:47:00,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:47:01,002.002 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 12:47:05,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:47:05,414.414 INFO    ] Checking for system updates...
[2026-08-25 12:47:05,449.449 INFO    ] 200
[2026-08-25 12:47:05,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:05,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:47:05,507.507 INFO    ] No update needed
[2026-08-25 12:47:05,509.509 INFO    ] Checking for camera pi updates...
[2026-08-25 12:47:05,543.543 INFO    ] 200
[2026-08-25 12:47:05,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:05,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:47:05,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:47:05,641.641 INFO    ] No camera update needed
[2026-08-25 12:47:05,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:47:05,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:47:05,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:47:05,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:47:07,698.698 INFO    ] ================================================
[2026-08-25 12:47:07,713.713 INFO    ] Launching Daemon at Tue Aug 25 12:47:07 IST 2026
[2026-08-25 12:47:07,724.724 INFO    ] ================================================
[2026-08-25 12:47:08,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:47:08
[2026-08-25 12:47:08,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:47:09,123.123 INFO    ] Initializing speech engine...
[2026-08-25 12:47:09,147.147 INFO    ] 2026-08-25 12:47:09
[2026-08-25 12:47:09,403.403 INFO    ] 2026-08-25 12:47:09
[2026-08-25 12:47:09,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:47:09,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:47:09,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:47:09,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:47:09,914.914 INFO    ] time= 25/08/2026 12:47:09
[2026-08-25 12:47:09,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:47:09,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:47:10,098.098 INFO    ] No existing commands found in stream
[2026-08-25 12:47:15,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:47:15,133.133 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 12:47:16,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:47:16,084.084 INFO    ] Checking for system updates...
[2026-08-25 12:47:16,119.119 INFO    ] 200
[2026-08-25 12:47:16,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:16,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:47:16,177.177 INFO    ] No update needed
[2026-08-25 12:47:16,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 12:47:16,214.214 INFO    ] 200
[2026-08-25 12:47:16,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:16,257.257 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:47:16,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:47:16,309.309 INFO    ] No camera update needed
[2026-08-25 12:47:16,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:47:16,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:47:16,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:47:16,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:47:18,368.368 INFO    ] ================================================
[2026-08-25 12:47:18,384.384 INFO    ] Launching Daemon at Tue Aug 25 12:47:18 IST 2026
[2026-08-25 12:47:18,396.396 INFO    ] ================================================
[2026-08-25 12:47:19,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:47:19
[2026-08-25 12:47:19,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:47:20,099.099 INFO    ] Initializing speech engine...
[2026-08-25 12:47:20,112.112 INFO    ] 2026-08-25 12:47:20
[2026-08-25 12:47:20,391.391 INFO    ] 2026-08-25 12:47:20
[2026-08-25 12:47:20,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:47:20,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:47:20,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:47:20,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:47:20,856.856 INFO    ] time= 25/08/2026 12:47:20
[2026-08-25 12:47:20,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:47:20,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:47:21,060.060 INFO    ] No existing commands found in stream
[2026-08-25 12:47:26,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:47:26,087.087 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 12:47:27,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:47:27,241.241 INFO    ] Checking for system updates...
[2026-08-25 12:47:27,276.276 INFO    ] 200
[2026-08-25 12:47:27,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:27,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:47:27,335.335 INFO    ] No update needed
[2026-08-25 12:47:27,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 12:47:27,372.372 INFO    ] 200
[2026-08-25 12:47:27,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:27,415.415 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:47:27,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:47:27,481.481 INFO    ] No camera update needed
[2026-08-25 12:47:27,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:47:27,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:47:27,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:47:27,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:47:29,537.537 INFO    ] ================================================
[2026-08-25 12:47:29,553.553 INFO    ] Launching Daemon at Tue Aug 25 12:47:29 IST 2026
[2026-08-25 12:47:29,564.564 INFO    ] ================================================
[2026-08-25 12:47:30,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:47:30
[2026-08-25 12:47:30,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:47:31,158.158 INFO    ] Initializing speech engine...
[2026-08-25 12:47:31,174.174 INFO    ] 2026-08-25 12:47:31
[2026-08-25 12:47:31,492.492 INFO    ] 2026-08-25 12:47:31
[2026-08-25 12:47:31,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:47:31,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:47:31,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:47:31,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:47:32,015.015 INFO    ] time= 25/08/2026 12:47:31
[2026-08-25 12:47:32,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:47:32,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:47:32,228.228 INFO    ] No existing commands found in stream
[2026-08-25 12:47:37,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:47:37,263.263 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 12:47:38,107.107 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:47:38,110.110 INFO    ] Checking for system updates...
[2026-08-25 12:47:38,153.153 INFO    ] 200
[2026-08-25 12:47:38,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:38,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:47:38,220.220 INFO    ] No update needed
[2026-08-25 12:47:38,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 12:47:38,260.260 INFO    ] 200
[2026-08-25 12:47:38,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:38,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:47:38,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:47:38,366.366 INFO    ] No camera update needed
[2026-08-25 12:47:38,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:47:38,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:47:38,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:47:38,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:47:40,420.420 INFO    ] ================================================
[2026-08-25 12:47:40,436.436 INFO    ] Launching Daemon at Tue Aug 25 12:47:40 IST 2026
[2026-08-25 12:47:40,447.447 INFO    ] ================================================
[2026-08-25 12:47:41,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:47:41
[2026-08-25 12:47:41,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:47:41,910.910 INFO    ] Initializing speech engine...
[2026-08-25 12:47:41,916.916 INFO    ] 2026-08-25 12:47:41
[2026-08-25 12:47:42,176.176 INFO    ] 2026-08-25 12:47:42
[2026-08-25 12:47:42,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:47:42,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:47:42,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:47:42,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:47:42,635.635 INFO    ] time= 25/08/2026 12:47:42
[2026-08-25 12:47:42,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:47:42,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:47:42,858.858 INFO    ] No existing commands found in stream
[2026-08-25 12:47:47,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:47:47,886.886 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 12:47:49,958.958 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:47:49,961.961 INFO    ] Checking for system updates...
[2026-08-25 12:47:50,002.002 INFO    ] 200
[2026-08-25 12:47:50,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:50,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:47:50,060.060 INFO    ] No update needed
[2026-08-25 12:47:50,062.062 INFO    ] Checking for camera pi updates...
[2026-08-25 12:47:50,096.096 INFO    ] 200
[2026-08-25 12:47:50,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:47:50,140.140 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:47:50,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:47:50,193.193 INFO    ] No camera update needed
[2026-08-25 12:47:50,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:47:50,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:47:50,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:47:50,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:47:52,248.248 INFO    ] ================================================
[2026-08-25 12:47:52,264.264 INFO    ] Launching Daemon at Tue Aug 25 12:47:52 IST 2026
[2026-08-25 12:47:52,275.275 INFO    ] ================================================
[2026-08-25 12:47:52,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:47:52
[2026-08-25 12:47:53,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:47:53,965.965 INFO    ] Initializing speech engine...
[2026-08-25 12:47:53,977.977 INFO    ] 2026-08-25 12:47:53
[2026-08-25 12:47:54,292.292 INFO    ] 2026-08-25 12:47:54
[2026-08-25 12:47:54,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:47:54,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:47:54,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:47:54,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:47:54,813.813 INFO    ] time= 25/08/2026 12:47:54
[2026-08-25 12:47:54,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:47:54,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:47:54,957.957 INFO    ] No existing commands found in stream
[2026-08-25 12:47:59,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:47:59,981.981 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 12:48:02,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:48:02,589.589 INFO    ] Checking for system updates...
[2026-08-25 12:48:02,630.630 INFO    ] 200
[2026-08-25 12:48:02,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:02,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:48:02,699.699 INFO    ] No update needed
[2026-08-25 12:48:02,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 12:48:02,753.753 INFO    ] 200
[2026-08-25 12:48:02,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:02,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:48:02,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:48:02,869.869 INFO    ] No camera update needed
[2026-08-25 12:48:02,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:48:02,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:48:02,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:48:02,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:48:04,933.933 INFO    ] ================================================
[2026-08-25 12:48:04,948.948 INFO    ] Launching Daemon at Tue Aug 25 12:48:04 IST 2026
[2026-08-25 12:48:04,959.959 INFO    ] ================================================
[2026-08-25 12:48:05,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:48:05
[2026-08-25 12:48:06,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:48:06,372.372 INFO    ] Initializing speech engine...
[2026-08-25 12:48:06,385.385 INFO    ] 2026-08-25 12:48:06
[2026-08-25 12:48:06,655.655 INFO    ] 2026-08-25 12:48:06
[2026-08-25 12:48:06,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:48:06,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:48:06,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:48:07,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:48:07,038.038 INFO    ] time= 25/08/2026 12:48:07
[2026-08-25 12:48:07,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:48:07,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:48:07,226.226 INFO    ] No existing commands found in stream
[2026-08-25 12:48:12,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:48:12,251.251 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 12:48:15,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:48:15,395.395 INFO    ] Checking for system updates...
[2026-08-25 12:48:15,433.433 INFO    ] 200
[2026-08-25 12:48:15,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:15,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:48:15,499.499 INFO    ] No update needed
[2026-08-25 12:48:15,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 12:48:15,538.538 INFO    ] 200
[2026-08-25 12:48:15,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:15,599.599 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:48:15,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:48:15,653.653 INFO    ] No camera update needed
[2026-08-25 12:48:15,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:48:15,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:48:15,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:48:15,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:48:17,715.715 INFO    ] ================================================
[2026-08-25 12:48:17,734.734 INFO    ] Launching Daemon at Tue Aug 25 12:48:17 IST 2026
[2026-08-25 12:48:17,746.746 INFO    ] ================================================
[2026-08-25 12:48:18,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:48:18
[2026-08-25 12:48:19,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:48:19,453.453 INFO    ] Initializing speech engine...
[2026-08-25 12:48:19,467.467 INFO    ] 2026-08-25 12:48:19
[2026-08-25 12:48:19,736.736 INFO    ] 2026-08-25 12:48:19
[2026-08-25 12:48:19,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:48:20,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:48:20,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:48:20,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:48:20,268.268 INFO    ] time= 25/08/2026 12:48:20
[2026-08-25 12:48:20,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:48:20,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:48:20,440.440 INFO    ] No existing commands found in stream
[2026-08-25 12:48:25,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:48:25,463.463 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 12:48:28,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:48:28,841.841 INFO    ] Checking for system updates...
[2026-08-25 12:48:28,877.877 INFO    ] 200
[2026-08-25 12:48:28,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:28,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:48:28,938.938 INFO    ] No update needed
[2026-08-25 12:48:28,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 12:48:28,977.977 INFO    ] 200
[2026-08-25 12:48:28,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:29,020.020 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:48:29,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:48:29,069.069 INFO    ] No camera update needed
[2026-08-25 12:48:29,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:48:29,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:48:29,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:48:29,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:48:31,124.124 INFO    ] ================================================
[2026-08-25 12:48:31,139.139 INFO    ] Launching Daemon at Tue Aug 25 12:48:31 IST 2026
[2026-08-25 12:48:31,151.151 INFO    ] ================================================
[2026-08-25 12:48:31,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:48:31
[2026-08-25 12:48:32,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:48:32,673.673 INFO    ] Initializing speech engine...
[2026-08-25 12:48:32,691.691 INFO    ] 2026-08-25 12:48:32
[2026-08-25 12:48:32,989.989 INFO    ] 2026-08-25 12:48:32
[2026-08-25 12:48:33,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:48:33,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:48:33,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:48:33,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:48:33,421.421 INFO    ] time= 25/08/2026 12:48:33
[2026-08-25 12:48:33,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:48:33,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:48:33,562.562 INFO    ] No existing commands found in stream
[2026-08-25 12:48:38,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:48:38,590.590 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 12:48:42,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:48:42,960.960 INFO    ] Checking for system updates...
[2026-08-25 12:48:42,996.996 INFO    ] 200
[2026-08-25 12:48:42,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:43,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:48:43,053.053 INFO    ] No update needed
[2026-08-25 12:48:43,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 12:48:43,090.090 INFO    ] 200
[2026-08-25 12:48:43,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:43,138.138 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:48:43,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:48:43,284.284 INFO    ] No camera update needed
[2026-08-25 12:48:43,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:48:43,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:48:43,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:48:43,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:48:45,344.344 INFO    ] ================================================
[2026-08-25 12:48:45,359.359 INFO    ] Launching Daemon at Tue Aug 25 12:48:45 IST 2026
[2026-08-25 12:48:45,369.369 INFO    ] ================================================
[2026-08-25 12:48:45,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:48:45
[2026-08-25 12:48:46,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:48:46,838.838 INFO    ] Initializing speech engine...
[2026-08-25 12:48:46,862.862 INFO    ] 2026-08-25 12:48:46
[2026-08-25 12:48:47,136.136 INFO    ] 2026-08-25 12:48:47
[2026-08-25 12:48:47,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:48:47,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:48:47,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:48:47,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:48:47,533.533 INFO    ] time= 25/08/2026 12:48:47
[2026-08-25 12:48:47,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:48:47,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:48:47,644.644 INFO    ] No existing commands found in stream
[2026-08-25 12:48:52,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:48:52,672.672 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 12:48:56,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:48:56,129.129 INFO    ] Checking for system updates...
[2026-08-25 12:48:56,165.165 INFO    ] 200
[2026-08-25 12:48:56,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:56,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:48:56,222.222 INFO    ] No update needed
[2026-08-25 12:48:56,224.224 INFO    ] Checking for camera pi updates...
[2026-08-25 12:48:56,259.259 INFO    ] 200
[2026-08-25 12:48:56,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:48:56,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:48:56,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:48:56,362.362 INFO    ] No camera update needed
[2026-08-25 12:48:56,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:48:56,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:48:56,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:48:56,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:48:58,420.420 INFO    ] ================================================
[2026-08-25 12:48:58,435.435 INFO    ] Launching Daemon at Tue Aug 25 12:48:58 IST 2026
[2026-08-25 12:48:58,446.446 INFO    ] ================================================
[2026-08-25 12:48:59,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:48:59
[2026-08-25 12:48:59,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:49:00,066.066 INFO    ] Initializing speech engine...
[2026-08-25 12:49:00,080.080 INFO    ] 2026-08-25 12:49:00
[2026-08-25 12:49:00,399.399 INFO    ] 2026-08-25 12:49:00
[2026-08-25 12:49:00,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:49:00,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:49:00,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:49:00,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:49:00,864.864 INFO    ] time= 25/08/2026 12:49:00
[2026-08-25 12:49:00,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:49:00,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:49:01,055.055 INFO    ] No existing commands found in stream
[2026-08-25 12:49:06,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:49:06,087.087 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 12:49:07,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:49:07,267.267 INFO    ] Checking for system updates...
[2026-08-25 12:49:07,304.304 INFO    ] 200
[2026-08-25 12:49:07,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:07,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:49:07,369.369 INFO    ] No update needed
[2026-08-25 12:49:07,372.372 INFO    ] Checking for camera pi updates...
[2026-08-25 12:49:07,405.405 INFO    ] 200
[2026-08-25 12:49:07,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:07,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:49:07,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:49:07,502.502 INFO    ] No camera update needed
[2026-08-25 12:49:07,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:49:07,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:49:07,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:49:07,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:49:09,558.558 INFO    ] ================================================
[2026-08-25 12:49:09,573.573 INFO    ] Launching Daemon at Tue Aug 25 12:49:09 IST 2026
[2026-08-25 12:49:09,584.584 INFO    ] ================================================
[2026-08-25 12:49:10,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:49:10
[2026-08-25 12:49:10,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:49:11,127.127 INFO    ] Initializing speech engine...
[2026-08-25 12:49:11,146.146 INFO    ] 2026-08-25 12:49:11
[2026-08-25 12:49:11,395.395 INFO    ] 2026-08-25 12:49:11
[2026-08-25 12:49:11,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:49:11,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:49:11,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:49:11,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:49:11,853.853 INFO    ] time= 25/08/2026 12:49:11
[2026-08-25 12:49:11,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:49:11,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:49:12,105.105 INFO    ] No existing commands found in stream
[2026-08-25 12:49:17,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:49:17,130.130 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 12:49:19,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:49:19,303.303 INFO    ] Checking for system updates...
[2026-08-25 12:49:19,342.342 INFO    ] 200
[2026-08-25 12:49:19,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:19,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:49:19,402.402 INFO    ] No update needed
[2026-08-25 12:49:19,404.404 INFO    ] Checking for camera pi updates...
[2026-08-25 12:49:19,439.439 INFO    ] 200
[2026-08-25 12:49:19,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:19,483.483 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:49:19,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:49:19,538.538 INFO    ] No camera update needed
[2026-08-25 12:49:19,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:49:19,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:49:19,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:49:19,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:49:21,594.594 INFO    ] ================================================
[2026-08-25 12:49:21,609.609 INFO    ] Launching Daemon at Tue Aug 25 12:49:21 IST 2026
[2026-08-25 12:49:21,620.620 INFO    ] ================================================
[2026-08-25 12:49:22,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:49:22
[2026-08-25 12:49:22,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:49:23,015.015 INFO    ] Initializing speech engine...
[2026-08-25 12:49:23,023.023 INFO    ] 2026-08-25 12:49:23
[2026-08-25 12:49:23,309.309 INFO    ] 2026-08-25 12:49:23
[2026-08-25 12:49:23,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:49:23,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:49:23,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:49:23,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:49:23,711.711 INFO    ] time= 25/08/2026 12:49:23
[2026-08-25 12:49:23,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:49:23,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:49:23,893.893 INFO    ] No existing commands found in stream
[2026-08-25 12:49:28,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:49:28,921.921 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 12:49:32,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:49:32,103.103 INFO    ] Checking for system updates...
[2026-08-25 12:49:32,141.141 INFO    ] 200
[2026-08-25 12:49:32,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:32,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:49:32,202.202 INFO    ] No update needed
[2026-08-25 12:49:32,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 12:49:32,245.245 INFO    ] 200
[2026-08-25 12:49:32,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:32,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:49:32,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:49:32,357.357 INFO    ] No camera update needed
[2026-08-25 12:49:32,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:49:32,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:49:32,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:49:32,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:49:34,417.417 INFO    ] ================================================
[2026-08-25 12:49:34,432.432 INFO    ] Launching Daemon at Tue Aug 25 12:49:34 IST 2026
[2026-08-25 12:49:34,442.442 INFO    ] ================================================
[2026-08-25 12:49:35,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:49:35
[2026-08-25 12:49:35,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:49:35,890.890 INFO    ] Initializing speech engine...
[2026-08-25 12:49:35,901.901 INFO    ] 2026-08-25 12:49:35
[2026-08-25 12:49:36,175.175 INFO    ] 2026-08-25 12:49:36
[2026-08-25 12:49:36,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:49:36,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:49:36,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:49:36,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:49:36,649.649 INFO    ] time= 25/08/2026 12:49:36
[2026-08-25 12:49:36,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:49:36,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:49:36,857.857 INFO    ] No existing commands found in stream
[2026-08-25 12:49:41,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:49:41,874.874 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 12:49:43,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:49:43,592.592 INFO    ] Checking for system updates...
[2026-08-25 12:49:43,627.627 INFO    ] 200
[2026-08-25 12:49:43,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:43,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:49:43,689.689 INFO    ] No update needed
[2026-08-25 12:49:43,691.691 INFO    ] Checking for camera pi updates...
[2026-08-25 12:49:43,727.727 INFO    ] 200
[2026-08-25 12:49:43,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:43,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:49:43,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:49:43,816.816 INFO    ] No camera update needed
[2026-08-25 12:49:43,818.818 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:49:43,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:49:43,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:49:43,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:49:45,869.869 INFO    ] ================================================
[2026-08-25 12:49:45,884.884 INFO    ] Launching Daemon at Tue Aug 25 12:49:45 IST 2026
[2026-08-25 12:49:45,895.895 INFO    ] ================================================
[2026-08-25 12:49:46,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:49:46
[2026-08-25 12:49:47,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:49:47,307.307 INFO    ] Initializing speech engine...
[2026-08-25 12:49:47,316.316 INFO    ] 2026-08-25 12:49:47
[2026-08-25 12:49:47,561.561 INFO    ] 2026-08-25 12:49:47
[2026-08-25 12:49:47,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:49:47,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:49:47,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:49:47,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:49:48,051.051 INFO    ] time= 25/08/2026 12:49:47
[2026-08-25 12:49:48,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:49:48,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:49:48,249.249 INFO    ] No existing commands found in stream
[2026-08-25 12:49:53,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:49:53,277.277 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 12:49:56,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:49:56,741.741 INFO    ] Checking for system updates...
[2026-08-25 12:49:56,777.777 INFO    ] 200
[2026-08-25 12:49:56,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:56,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:49:56,834.834 INFO    ] No update needed
[2026-08-25 12:49:56,836.836 INFO    ] Checking for camera pi updates...
[2026-08-25 12:49:56,870.870 INFO    ] 200
[2026-08-25 12:49:56,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:49:56,912.912 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:49:56,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:49:56,959.959 INFO    ] No camera update needed
[2026-08-25 12:49:56,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:49:56,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:49:56,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:49:56,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:49:59,014.014 INFO    ] ================================================
[2026-08-25 12:49:59,029.029 INFO    ] Launching Daemon at Tue Aug 25 12:49:59 IST 2026
[2026-08-25 12:49:59,040.040 INFO    ] ================================================
[2026-08-25 12:49:59,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:49:59
[2026-08-25 12:50:00,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:50:00,586.586 INFO    ] Initializing speech engine...
[2026-08-25 12:50:00,599.599 INFO    ] 2026-08-25 12:50:00
[2026-08-25 12:50:00,860.860 INFO    ] 2026-08-25 12:50:00
[2026-08-25 12:50:00,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:50:01,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:50:01,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:50:01,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:50:01,316.316 INFO    ] time= 25/08/2026 12:50:01
[2026-08-25 12:50:01,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:50:01,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:50:01,587.587 INFO    ] No existing commands found in stream
[2026-08-25 12:50:06,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:50:06,604.604 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 12:50:10,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:50:10,665.665 INFO    ] Checking for system updates...
[2026-08-25 12:50:10,702.702 INFO    ] 200
[2026-08-25 12:50:10,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:10,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:10,761.761 INFO    ] No update needed
[2026-08-25 12:50:10,763.763 INFO    ] Checking for camera pi updates...
[2026-08-25 12:50:10,802.802 INFO    ] 200
[2026-08-25 12:50:10,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:10,856.856 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:50:10,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:10,907.907 INFO    ] No camera update needed
[2026-08-25 12:50:10,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:50:10,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:50:10,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:50:10,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:50:12,966.966 INFO    ] ================================================
[2026-08-25 12:50:12,980.980 INFO    ] Launching Daemon at Tue Aug 25 12:50:12 IST 2026
[2026-08-25 12:50:12,991.991 INFO    ] ================================================
[2026-08-25 12:50:13,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:50:13
[2026-08-25 12:50:14,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:50:14,447.447 INFO    ] Initializing speech engine...
[2026-08-25 12:50:14,456.456 INFO    ] 2026-08-25 12:50:14
[2026-08-25 12:50:14,710.710 INFO    ] 2026-08-25 12:50:14
[2026-08-25 12:50:14,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:50:14,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:50:15,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:50:15,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:50:15,212.212 INFO    ] time= 25/08/2026 12:50:15
[2026-08-25 12:50:15,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:50:15,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:50:15,415.415 INFO    ] No existing commands found in stream
[2026-08-25 12:50:20,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:50:20,431.431 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 12:50:23,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:50:23,425.425 INFO    ] Checking for system updates...
[2026-08-25 12:50:23,462.462 INFO    ] 200
[2026-08-25 12:50:23,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:23,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:23,521.521 INFO    ] No update needed
[2026-08-25 12:50:23,524.524 INFO    ] Checking for camera pi updates...
[2026-08-25 12:50:23,562.562 INFO    ] 200
[2026-08-25 12:50:23,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:23,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:50:23,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:23,676.676 INFO    ] No camera update needed
[2026-08-25 12:50:23,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:50:23,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:50:23,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:50:23,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:50:25,733.733 INFO    ] ================================================
[2026-08-25 12:50:25,748.748 INFO    ] Launching Daemon at Tue Aug 25 12:50:25 IST 2026
[2026-08-25 12:50:25,759.759 INFO    ] ================================================
[2026-08-25 12:50:26,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:50:26
[2026-08-25 12:50:26,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:50:27,220.220 INFO    ] Initializing speech engine...
[2026-08-25 12:50:27,225.225 INFO    ] 2026-08-25 12:50:27
[2026-08-25 12:50:27,475.475 INFO    ] 2026-08-25 12:50:27
[2026-08-25 12:50:27,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:50:27,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:50:27,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:50:27,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:50:28,023.023 INFO    ] time= 25/08/2026 12:50:27
[2026-08-25 12:50:28,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:50:28,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:50:28,185.185 INFO    ] No existing commands found in stream
[2026-08-25 12:50:33,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:50:33,200.200 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 12:50:36,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:50:36,241.241 INFO    ] Checking for system updates...
[2026-08-25 12:50:36,277.277 INFO    ] 200
[2026-08-25 12:50:36,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:36,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:36,335.335 INFO    ] No update needed
[2026-08-25 12:50:36,337.337 INFO    ] Checking for camera pi updates...
[2026-08-25 12:50:36,370.370 INFO    ] 200
[2026-08-25 12:50:36,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:36,413.413 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:50:36,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:36,465.465 INFO    ] No camera update needed
[2026-08-25 12:50:36,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:50:36,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:50:36,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:50:36,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:50:38,520.520 INFO    ] ================================================
[2026-08-25 12:50:38,535.535 INFO    ] Launching Daemon at Tue Aug 25 12:50:38 IST 2026
[2026-08-25 12:50:38,545.545 INFO    ] ================================================
[2026-08-25 12:50:39,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:50:39
[2026-08-25 12:50:39,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:50:40,108.108 INFO    ] Initializing speech engine...
[2026-08-25 12:50:40,114.114 INFO    ] 2026-08-25 12:50:40
[2026-08-25 12:50:40,377.377 INFO    ] 2026-08-25 12:50:40
[2026-08-25 12:50:40,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:50:40,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:50:40,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:50:40,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:50:40,842.842 INFO    ] time= 25/08/2026 12:50:40
[2026-08-25 12:50:40,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:50:40,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:50:41,062.062 INFO    ] No existing commands found in stream
[2026-08-25 12:50:46,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:50:46,086.086 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 12:50:49,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:50:49,333.333 INFO    ] Checking for system updates...
[2026-08-25 12:50:49,369.369 INFO    ] 200
[2026-08-25 12:50:49,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:49,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:49,433.433 INFO    ] No update needed
[2026-08-25 12:50:49,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 12:50:49,468.468 INFO    ] 200
[2026-08-25 12:50:49,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:50:49,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:50:49,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:50:49,665.665 INFO    ] No camera update needed
[2026-08-25 12:50:49,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:50:49,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:50:49,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:50:49,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:50:51,721.721 INFO    ] ================================================
[2026-08-25 12:50:51,736.736 INFO    ] Launching Daemon at Tue Aug 25 12:50:51 IST 2026
[2026-08-25 12:50:51,747.747 INFO    ] ================================================
[2026-08-25 12:50:52,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:50:52
[2026-08-25 12:50:53,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:50:53,327.327 INFO    ] Initializing speech engine...
[2026-08-25 12:50:53,338.338 INFO    ] 2026-08-25 12:50:53
[2026-08-25 12:50:53,619.619 INFO    ] 2026-08-25 12:50:53
[2026-08-25 12:50:53,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:50:53,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:50:53,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:50:54,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:50:54,158.158 INFO    ] time= 25/08/2026 12:50:54
[2026-08-25 12:50:54,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:50:54,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:50:54,314.314 INFO    ] No existing commands found in stream
[2026-08-25 12:50:59,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:50:59,347.347 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 12:51:02,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:51:02,052.052 INFO    ] Checking for system updates...
[2026-08-25 12:51:02,092.092 INFO    ] 200
[2026-08-25 12:51:02,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:02,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:51:02,167.167 INFO    ] No update needed
[2026-08-25 12:51:02,170.170 INFO    ] Checking for camera pi updates...
[2026-08-25 12:51:02,215.215 INFO    ] 200
[2026-08-25 12:51:02,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:02,275.275 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:51:02,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:51:02,340.340 INFO    ] No camera update needed
[2026-08-25 12:51:02,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:51:02,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:51:02,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:51:02,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:51:04,399.399 INFO    ] ================================================
[2026-08-25 12:51:04,415.415 INFO    ] Launching Daemon at Tue Aug 25 12:51:04 IST 2026
[2026-08-25 12:51:04,426.426 INFO    ] ================================================
[2026-08-25 12:51:05,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:51:05
[2026-08-25 12:51:05,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:51:05,879.879 INFO    ] Initializing speech engine...
[2026-08-25 12:51:05,899.899 INFO    ] 2026-08-25 12:51:05
[2026-08-25 12:51:06,163.163 INFO    ] 2026-08-25 12:51:06
[2026-08-25 12:51:06,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:51:06,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:51:06,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:51:06,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:51:06,671.671 INFO    ] time= 25/08/2026 12:51:06
[2026-08-25 12:51:06,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:51:06,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:51:06,854.854 INFO    ] No existing commands found in stream
[2026-08-25 12:51:11,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:51:11,868.868 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 12:51:14,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:51:14,972.972 INFO    ] Checking for system updates...
[2026-08-25 12:51:15,008.008 INFO    ] 200
[2026-08-25 12:51:15,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:15,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:51:15,067.067 INFO    ] No update needed
[2026-08-25 12:51:15,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 12:51:15,103.103 INFO    ] 200
[2026-08-25 12:51:15,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:15,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:51:15,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:51:15,196.196 INFO    ] No camera update needed
[2026-08-25 12:51:15,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:51:15,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:51:15,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:51:15,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:51:17,251.251 INFO    ] ================================================
[2026-08-25 12:51:17,266.266 INFO    ] Launching Daemon at Tue Aug 25 12:51:17 IST 2026
[2026-08-25 12:51:17,277.277 INFO    ] ================================================
[2026-08-25 12:51:17,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:51:17
[2026-08-25 12:51:18,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:51:18,826.826 INFO    ] Initializing speech engine...
[2026-08-25 12:51:18,835.835 INFO    ] 2026-08-25 12:51:18
[2026-08-25 12:51:19,096.096 INFO    ] 2026-08-25 12:51:19
[2026-08-25 12:51:19,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:51:19,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:51:19,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:51:19,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:51:19,578.578 INFO    ] time= 25/08/2026 12:51:19
[2026-08-25 12:51:19,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:51:19,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:51:19,817.817 INFO    ] No existing commands found in stream
[2026-08-25 12:51:24,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:51:24,845.845 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 12:51:25,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:51:25,744.744 INFO    ] Checking for system updates...
[2026-08-25 12:51:25,784.784 INFO    ] 200
[2026-08-25 12:51:25,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:25,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:51:25,850.850 INFO    ] No update needed
[2026-08-25 12:51:25,854.854 INFO    ] Checking for camera pi updates...
[2026-08-25 12:51:25,891.891 INFO    ] 200
[2026-08-25 12:51:25,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:25,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:51:25,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:51:25,992.992 INFO    ] No camera update needed
[2026-08-25 12:51:25,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:51:25,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:51:26,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:51:26,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:51:28,054.054 INFO    ] ================================================
[2026-08-25 12:51:28,071.071 INFO    ] Launching Daemon at Tue Aug 25 12:51:28 IST 2026
[2026-08-25 12:51:28,083.083 INFO    ] ================================================
[2026-08-25 12:51:28,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:51:28
[2026-08-25 12:51:29,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:51:29,653.653 INFO    ] Initializing speech engine...
[2026-08-25 12:51:29,677.677 INFO    ] 2026-08-25 12:51:29
[2026-08-25 12:51:29,943.943 INFO    ] 2026-08-25 12:51:29
[2026-08-25 12:51:29,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:51:30,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:51:30,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:51:30,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:51:30,400.400 INFO    ] time= 25/08/2026 12:51:30
[2026-08-25 12:51:30,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:51:30,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:51:30,653.653 INFO    ] No existing commands found in stream
[2026-08-25 12:51:35,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:51:35,684.684 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 12:51:38,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:51:38,799.799 INFO    ] Checking for system updates...
[2026-08-25 12:51:38,835.835 INFO    ] 200
[2026-08-25 12:51:38,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:38,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:51:38,900.900 INFO    ] No update needed
[2026-08-25 12:51:38,903.903 INFO    ] Checking for camera pi updates...
[2026-08-25 12:51:38,940.940 INFO    ] 200
[2026-08-25 12:51:38,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:38,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:51:39,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:51:39,050.050 INFO    ] No camera update needed
[2026-08-25 12:51:39,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:51:39,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:51:39,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:51:39,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:51:41,107.107 INFO    ] ================================================
[2026-08-25 12:51:41,126.126 INFO    ] Launching Daemon at Tue Aug 25 12:51:41 IST 2026
[2026-08-25 12:51:41,137.137 INFO    ] ================================================
[2026-08-25 12:51:41,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:51:41
[2026-08-25 12:51:42,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:51:42,623.623 INFO    ] Initializing speech engine...
[2026-08-25 12:51:42,630.630 INFO    ] 2026-08-25 12:51:42
[2026-08-25 12:51:42,889.889 INFO    ] 2026-08-25 12:51:42
[2026-08-25 12:51:42,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:51:43,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:51:43,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:51:43,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:51:43,360.360 INFO    ] time= 25/08/2026 12:51:43
[2026-08-25 12:51:43,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:51:43,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:51:43,585.585 INFO    ] No existing commands found in stream
[2026-08-25 12:51:48,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:51:48,613.613 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 12:51:52,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:51:52,548.548 INFO    ] Checking for system updates...
[2026-08-25 12:51:52,584.584 INFO    ] 200
[2026-08-25 12:51:52,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:52,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:51:52,650.650 INFO    ] No update needed
[2026-08-25 12:51:52,653.653 INFO    ] Checking for camera pi updates...
[2026-08-25 12:51:52,691.691 INFO    ] 200
[2026-08-25 12:51:52,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:51:52,737.737 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:51:52,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:51:52,792.792 INFO    ] No camera update needed
[2026-08-25 12:51:52,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:51:52,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:51:52,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:51:52,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:51:54,848.848 INFO    ] ================================================
[2026-08-25 12:51:54,864.864 INFO    ] Launching Daemon at Tue Aug 25 12:51:54 IST 2026
[2026-08-25 12:51:54,874.874 INFO    ] ================================================
[2026-08-25 12:51:55,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:51:55
[2026-08-25 12:51:56,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:51:56,374.374 INFO    ] Initializing speech engine...
[2026-08-25 12:51:56,380.380 INFO    ] 2026-08-25 12:51:56
[2026-08-25 12:51:56,642.642 INFO    ] 2026-08-25 12:51:56
[2026-08-25 12:51:56,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:51:56,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:51:56,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:51:57,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:51:57,119.119 INFO    ] time= 25/08/2026 12:51:57
[2026-08-25 12:51:57,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:51:57,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:51:57,337.337 INFO    ] No existing commands found in stream
[2026-08-25 12:52:02,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:52:02,350.350 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 12:52:06,014.014 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:52:06,017.017 INFO    ] Checking for system updates...
[2026-08-25 12:52:06,053.053 INFO    ] 200
[2026-08-25 12:52:06,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:06,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:52:06,111.111 INFO    ] No update needed
[2026-08-25 12:52:06,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 12:52:06,147.147 INFO    ] 200
[2026-08-25 12:52:06,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:06,191.191 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:52:06,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:52:06,257.257 INFO    ] No camera update needed
[2026-08-25 12:52:06,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:52:06,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:52:06,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:52:06,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:52:08,312.312 INFO    ] ================================================
[2026-08-25 12:52:08,327.327 INFO    ] Launching Daemon at Tue Aug 25 12:52:08 IST 2026
[2026-08-25 12:52:08,338.338 INFO    ] ================================================
[2026-08-25 12:52:08,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:52:08
[2026-08-25 12:52:09,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:52:09,756.756 INFO    ] Initializing speech engine...
[2026-08-25 12:52:09,765.765 INFO    ] 2026-08-25 12:52:09
[2026-08-25 12:52:10,012.012 INFO    ] 2026-08-25 12:52:10
[2026-08-25 12:52:10,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:52:10,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:52:10,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:52:10,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:52:10,387.387 INFO    ] time= 25/08/2026 12:52:10
[2026-08-25 12:52:10,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:52:10,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:52:10,566.566 INFO    ] No existing commands found in stream
[2026-08-25 12:52:15,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:52:15,594.594 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 12:52:19,507.507 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:52:19,510.510 INFO    ] Checking for system updates...
[2026-08-25 12:52:19,545.545 INFO    ] 200
[2026-08-25 12:52:19,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:19,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:52:19,603.603 INFO    ] No update needed
[2026-08-25 12:52:19,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 12:52:19,650.650 INFO    ] 200
[2026-08-25 12:52:19,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:19,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:52:19,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:52:19,745.745 INFO    ] No camera update needed
[2026-08-25 12:52:19,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:52:19,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:52:19,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:52:19,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:52:21,804.804 INFO    ] ================================================
[2026-08-25 12:52:21,820.820 INFO    ] Launching Daemon at Tue Aug 25 12:52:21 IST 2026
[2026-08-25 12:52:21,830.830 INFO    ] ================================================
[2026-08-25 12:52:22,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:52:22
[2026-08-25 12:52:23,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:52:23,340.340 INFO    ] Initializing speech engine...
[2026-08-25 12:52:23,347.347 INFO    ] 2026-08-25 12:52:23
[2026-08-25 12:52:23,613.613 INFO    ] 2026-08-25 12:52:23
[2026-08-25 12:52:23,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:52:23,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:52:23,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:52:24,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:52:24,032.032 INFO    ] time= 25/08/2026 12:52:24
[2026-08-25 12:52:24,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:52:24,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:52:24,229.229 INFO    ] No existing commands found in stream
[2026-08-25 12:52:29,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:52:29,257.257 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 12:52:30,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:52:30,855.855 INFO    ] Checking for system updates...
[2026-08-25 12:52:30,891.891 INFO    ] 200
[2026-08-25 12:52:30,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:30,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:52:30,948.948 INFO    ] No update needed
[2026-08-25 12:52:30,950.950 INFO    ] Checking for camera pi updates...
[2026-08-25 12:52:30,984.984 INFO    ] 200
[2026-08-25 12:52:30,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:31,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:52:31,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:52:31,101.101 INFO    ] No camera update needed
[2026-08-25 12:52:31,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:52:31,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:52:31,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:52:31,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:52:33,159.159 INFO    ] ================================================
[2026-08-25 12:52:33,174.174 INFO    ] Launching Daemon at Tue Aug 25 12:52:33 IST 2026
[2026-08-25 12:52:33,184.184 INFO    ] ================================================
[2026-08-25 12:52:33,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:52:33
[2026-08-25 12:52:34,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:52:34,608.608 INFO    ] Initializing speech engine...
[2026-08-25 12:52:34,626.626 INFO    ] 2026-08-25 12:52:34
[2026-08-25 12:52:34,873.873 INFO    ] 2026-08-25 12:52:34
[2026-08-25 12:52:34,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:52:35,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:52:35,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:52:35,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:52:35,337.337 INFO    ] time= 25/08/2026 12:52:35
[2026-08-25 12:52:35,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:52:35,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:52:35,567.567 INFO    ] No existing commands found in stream
[2026-08-25 12:52:40,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:52:40,593.593 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 12:52:42,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:52:42,713.713 INFO    ] Checking for system updates...
[2026-08-25 12:52:42,749.749 INFO    ] 200
[2026-08-25 12:52:42,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:42,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:52:42,806.806 INFO    ] No update needed
[2026-08-25 12:52:42,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 12:52:42,842.842 INFO    ] 200
[2026-08-25 12:52:42,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:42,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:52:42,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:52:42,936.936 INFO    ] No camera update needed
[2026-08-25 12:52:42,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:52:42,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:52:42,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:52:42,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:52:44,990.990 INFO    ] ================================================
[2026-08-25 12:52:45,005.005 INFO    ] Launching Daemon at Tue Aug 25 12:52:45 IST 2026
[2026-08-25 12:52:45,015.015 INFO    ] ================================================
[2026-08-25 12:52:45,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:52:45
[2026-08-25 12:52:46,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:52:46,545.545 INFO    ] Initializing speech engine...
[2026-08-25 12:52:46,568.568 INFO    ] 2026-08-25 12:52:46
[2026-08-25 12:52:46,824.824 INFO    ] 2026-08-25 12:52:46
[2026-08-25 12:52:46,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:52:47,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:52:47,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:52:47,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:52:47,320.320 INFO    ] time= 25/08/2026 12:52:47
[2026-08-25 12:52:47,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:52:47,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:52:47,529.529 INFO    ] No existing commands found in stream
[2026-08-25 12:52:52,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:52:52,547.547 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 12:52:53,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:52:53,744.744 INFO    ] Checking for system updates...
[2026-08-25 12:52:53,780.780 INFO    ] 200
[2026-08-25 12:52:53,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:53,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:52:53,837.837 INFO    ] No update needed
[2026-08-25 12:52:53,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 12:52:53,872.872 INFO    ] 200
[2026-08-25 12:52:53,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:52:53,915.915 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:52:54,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:52:54,061.061 INFO    ] No camera update needed
[2026-08-25 12:52:54,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:52:54,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:52:54,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:52:54,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:52:56,118.118 INFO    ] ================================================
[2026-08-25 12:52:56,133.133 INFO    ] Launching Daemon at Tue Aug 25 12:52:56 IST 2026
[2026-08-25 12:52:56,145.145 INFO    ] ================================================
[2026-08-25 12:52:56,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:52:56
[2026-08-25 12:52:57,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:52:57,569.569 INFO    ] Initializing speech engine...
[2026-08-25 12:52:57,579.579 INFO    ] 2026-08-25 12:52:57
[2026-08-25 12:52:57,825.825 INFO    ] 2026-08-25 12:52:57
[2026-08-25 12:52:57,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:52:58,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:52:58,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:52:58,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:52:58,306.306 INFO    ] time= 25/08/2026 12:52:58
[2026-08-25 12:52:58,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:52:58,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:52:58,514.514 INFO    ] No existing commands found in stream
[2026-08-25 12:53:03,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:53:03,544.544 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 12:53:06,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:53:06,829.829 INFO    ] Checking for system updates...
[2026-08-25 12:53:06,876.876 INFO    ] 200
[2026-08-25 12:53:06,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:06,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:53:06,937.937 INFO    ] No update needed
[2026-08-25 12:53:06,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 12:53:06,977.977 INFO    ] 200
[2026-08-25 12:53:06,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:07,024.024 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:53:07,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:53:07,076.076 INFO    ] No camera update needed
[2026-08-25 12:53:07,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:53:07,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:53:07,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:53:07,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:53:09,130.130 INFO    ] ================================================
[2026-08-25 12:53:09,145.145 INFO    ] Launching Daemon at Tue Aug 25 12:53:09 IST 2026
[2026-08-25 12:53:09,156.156 INFO    ] ================================================
[2026-08-25 12:53:09,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:53:09
[2026-08-25 12:53:10,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:53:10,581.581 INFO    ] Initializing speech engine...
[2026-08-25 12:53:10,591.591 INFO    ] 2026-08-25 12:53:10
[2026-08-25 12:53:10,835.835 INFO    ] 2026-08-25 12:53:10
[2026-08-25 12:53:10,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:53:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:53:11,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:53:11,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:53:11,305.305 INFO    ] time= 25/08/2026 12:53:11
[2026-08-25 12:53:11,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:53:11,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:53:11,527.527 INFO    ] No existing commands found in stream
[2026-08-25 12:53:16,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:53:16,551.551 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 12:53:17,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:53:17,682.682 INFO    ] Checking for system updates...
[2026-08-25 12:53:17,718.718 INFO    ] 200
[2026-08-25 12:53:17,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:17,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:53:17,786.786 INFO    ] No update needed
[2026-08-25 12:53:17,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 12:53:17,823.823 INFO    ] 200
[2026-08-25 12:53:17,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:17,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:53:17,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:53:17,919.919 INFO    ] No camera update needed
[2026-08-25 12:53:17,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:53:17,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:53:17,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:53:17,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:53:19,976.976 INFO    ] ================================================
[2026-08-25 12:53:19,991.991 INFO    ] Launching Daemon at Tue Aug 25 12:53:19 IST 2026
[2026-08-25 12:53:20,002.002 INFO    ] ================================================
[2026-08-25 12:53:20,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:53:20
[2026-08-25 12:53:21,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:53:21,628.628 INFO    ] Initializing speech engine...
[2026-08-25 12:53:21,636.636 INFO    ] 2026-08-25 12:53:21
[2026-08-25 12:53:21,965.965 INFO    ] 2026-08-25 12:53:21
[2026-08-25 12:53:22,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:53:23,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:53:23,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:53:23,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:53:23,419.419 INFO    ] time= 25/08/2026 12:53:23
[2026-08-25 12:53:23,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:53:23,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:53:23,503.503 INFO    ] No existing commands found in stream
[2026-08-25 12:53:28,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:53:28,518.518 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 12:53:31,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:53:31,760.760 INFO    ] Checking for system updates...
[2026-08-25 12:53:31,800.800 INFO    ] 200
[2026-08-25 12:53:31,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:31,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:53:31,863.863 INFO    ] No update needed
[2026-08-25 12:53:31,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 12:53:31,902.902 INFO    ] 200
[2026-08-25 12:53:31,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:31,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:53:32,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:53:32,019.019 INFO    ] No camera update needed
[2026-08-25 12:53:32,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:53:32,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:53:32,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:53:32,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:53:34,078.078 INFO    ] ================================================
[2026-08-25 12:53:34,093.093 INFO    ] Launching Daemon at Tue Aug 25 12:53:34 IST 2026
[2026-08-25 12:53:34,104.104 INFO    ] ================================================
[2026-08-25 12:53:34,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:53:34
[2026-08-25 12:53:35,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:53:35,623.623 INFO    ] Initializing speech engine...
[2026-08-25 12:53:35,649.649 INFO    ] 2026-08-25 12:53:35
[2026-08-25 12:53:35,924.924 INFO    ] 2026-08-25 12:53:35
[2026-08-25 12:53:35,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:53:36,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:53:36,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:53:36,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:53:36,313.313 INFO    ] time= 25/08/2026 12:53:36
[2026-08-25 12:53:36,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:53:36,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:53:36,426.426 INFO    ] No existing commands found in stream
[2026-08-25 12:53:41,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:53:41,441.441 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 12:53:42,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:53:42,141.141 INFO    ] Checking for system updates...
[2026-08-25 12:53:42,176.176 INFO    ] 200
[2026-08-25 12:53:42,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:42,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:53:42,241.241 INFO    ] No update needed
[2026-08-25 12:53:42,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 12:53:42,280.280 INFO    ] 200
[2026-08-25 12:53:42,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:42,323.323 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:53:42,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:53:42,375.375 INFO    ] No camera update needed
[2026-08-25 12:53:42,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:53:42,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:53:42,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:53:42,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:53:44,433.433 INFO    ] ================================================
[2026-08-25 12:53:44,449.449 INFO    ] Launching Daemon at Tue Aug 25 12:53:44 IST 2026
[2026-08-25 12:53:44,460.460 INFO    ] ================================================
[2026-08-25 12:53:45,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:53:45
[2026-08-25 12:53:45,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:53:45,937.937 INFO    ] Initializing speech engine...
[2026-08-25 12:53:45,951.951 INFO    ] 2026-08-25 12:53:45
[2026-08-25 12:53:46,220.220 INFO    ] 2026-08-25 12:53:46
[2026-08-25 12:53:46,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:53:46,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:53:46,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:53:46,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:53:46,681.681 INFO    ] time= 25/08/2026 12:53:46
[2026-08-25 12:53:46,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:53:46,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:53:46,871.871 INFO    ] No existing commands found in stream
[2026-08-25 12:53:51,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:53:51,885.885 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 12:53:55,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:53:55,990.990 INFO    ] Checking for system updates...
[2026-08-25 12:53:56,029.029 INFO    ] 200
[2026-08-25 12:53:56,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:56,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:53:56,086.086 INFO    ] No update needed
[2026-08-25 12:53:56,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 12:53:56,123.123 INFO    ] 200
[2026-08-25 12:53:56,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:53:56,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:53:56,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:53:56,230.230 INFO    ] No camera update needed
[2026-08-25 12:53:56,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:53:56,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:53:56,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:53:56,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:53:58,288.288 INFO    ] ================================================
[2026-08-25 12:53:58,303.303 INFO    ] Launching Daemon at Tue Aug 25 12:53:58 IST 2026
[2026-08-25 12:53:58,313.313 INFO    ] ================================================
[2026-08-25 12:53:58,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:53:58
[2026-08-25 12:53:59,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:53:59,733.733 INFO    ] Initializing speech engine...
[2026-08-25 12:53:59,751.751 INFO    ] 2026-08-25 12:53:59
[2026-08-25 12:54:00,003.003 INFO    ] 2026-08-25 12:53:59
[2026-08-25 12:54:00,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:54:00,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:54:00,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:54:00,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:54:00,508.508 INFO    ] time= 25/08/2026 12:54:00
[2026-08-25 12:54:00,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:54:00,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:54:00,729.729 INFO    ] No existing commands found in stream
[2026-08-25 12:54:05,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:54:05,744.744 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 12:54:08,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:54:08,516.516 INFO    ] Checking for system updates...
[2026-08-25 12:54:08,551.551 INFO    ] 200
[2026-08-25 12:54:08,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:08,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:54:08,612.612 INFO    ] No update needed
[2026-08-25 12:54:08,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 12:54:08,647.647 INFO    ] 200
[2026-08-25 12:54:08,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:08,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:54:08,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:54:08,750.750 INFO    ] No camera update needed
[2026-08-25 12:54:08,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:54:08,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:54:08,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:54:08,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:54:10,804.804 INFO    ] ================================================
[2026-08-25 12:54:10,819.819 INFO    ] Launching Daemon at Tue Aug 25 12:54:10 IST 2026
[2026-08-25 12:54:10,830.830 INFO    ] ================================================
[2026-08-25 12:54:11,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:54:11
[2026-08-25 12:54:11,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:54:12,236.236 INFO    ] Initializing speech engine...
[2026-08-25 12:54:12,245.245 INFO    ] 2026-08-25 12:54:12
[2026-08-25 12:54:12,540.540 INFO    ] 2026-08-25 12:54:12
[2026-08-25 12:54:12,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:54:12,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:54:12,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:54:12,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:54:12,920.920 INFO    ] time= 25/08/2026 12:54:12
[2026-08-25 12:54:12,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:54:12,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:54:13,048.048 INFO    ] No existing commands found in stream
[2026-08-25 12:54:18,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:54:18,064.064 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 12:54:19,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:54:19,758.758 INFO    ] Checking for system updates...
[2026-08-25 12:54:19,793.793 INFO    ] 200
[2026-08-25 12:54:19,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:19,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:54:19,850.850 INFO    ] No update needed
[2026-08-25 12:54:19,852.852 INFO    ] Checking for camera pi updates...
[2026-08-25 12:54:19,890.890 INFO    ] 200
[2026-08-25 12:54:19,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:19,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:54:19,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:54:19,991.991 INFO    ] No camera update needed
[2026-08-25 12:54:19,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:54:19,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:54:20,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:54:20,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:54:22,045.045 INFO    ] ================================================
[2026-08-25 12:54:22,059.059 INFO    ] Launching Daemon at Tue Aug 25 12:54:22 IST 2026
[2026-08-25 12:54:22,070.070 INFO    ] ================================================
[2026-08-25 12:54:22,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:54:22
[2026-08-25 12:54:23,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:54:23,500.500 INFO    ] Initializing speech engine...
[2026-08-25 12:54:23,508.508 INFO    ] 2026-08-25 12:54:23
[2026-08-25 12:54:23,750.750 INFO    ] 2026-08-25 12:54:23
[2026-08-25 12:54:23,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:54:24,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:54:24,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:54:24,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:54:24,221.221 INFO    ] time= 25/08/2026 12:54:24
[2026-08-25 12:54:24,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:54:24,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:54:24,439.439 INFO    ] No existing commands found in stream
[2026-08-25 12:54:29,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:54:29,466.466 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 12:54:30,206.206 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:54:30,209.209 INFO    ] Checking for system updates...
[2026-08-25 12:54:30,244.244 INFO    ] 200
[2026-08-25 12:54:30,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:30,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:54:30,300.300 INFO    ] No update needed
[2026-08-25 12:54:30,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 12:54:30,339.339 INFO    ] 200
[2026-08-25 12:54:30,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:30,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:54:30,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:54:30,433.433 INFO    ] No camera update needed
[2026-08-25 12:54:30,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:54:30,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:54:30,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:54:30,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:54:32,494.494 INFO    ] ================================================
[2026-08-25 12:54:32,510.510 INFO    ] Launching Daemon at Tue Aug 25 12:54:32 IST 2026
[2026-08-25 12:54:32,523.523 INFO    ] ================================================
[2026-08-25 12:54:33,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:54:33
[2026-08-25 12:54:33,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:54:34,008.008 INFO    ] Initializing speech engine...
[2026-08-25 12:54:34,013.013 INFO    ] 2026-08-25 12:54:34
[2026-08-25 12:54:34,275.275 INFO    ] 2026-08-25 12:54:34
[2026-08-25 12:54:34,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:54:34,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:54:34,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:54:34,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:54:34,759.759 INFO    ] time= 25/08/2026 12:54:34
[2026-08-25 12:54:34,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:54:34,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:54:34,962.962 INFO    ] No existing commands found in stream
[2026-08-25 12:54:39,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:54:39,987.987 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 12:54:43,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:54:43,348.348 INFO    ] Checking for system updates...
[2026-08-25 12:54:43,385.385 INFO    ] 200
[2026-08-25 12:54:43,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:43,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:54:43,442.442 INFO    ] No update needed
[2026-08-25 12:54:43,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 12:54:43,478.478 INFO    ] 200
[2026-08-25 12:54:43,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:43,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:54:43,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:54:43,577.577 INFO    ] No camera update needed
[2026-08-25 12:54:43,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:54:43,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:54:43,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:54:43,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:54:45,633.633 INFO    ] ================================================
[2026-08-25 12:54:45,648.648 INFO    ] Launching Daemon at Tue Aug 25 12:54:45 IST 2026
[2026-08-25 12:54:45,659.659 INFO    ] ================================================
[2026-08-25 12:54:46,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:54:46
[2026-08-25 12:54:47,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:54:47,322.322 INFO    ] Initializing speech engine...
[2026-08-25 12:54:47,333.333 INFO    ] 2026-08-25 12:54:47
[2026-08-25 12:54:47,594.594 INFO    ] 2026-08-25 12:54:47
[2026-08-25 12:54:47,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:54:47,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:54:47,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:54:48,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:54:48,053.053 INFO    ] time= 25/08/2026 12:54:48
[2026-08-25 12:54:48,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:54:48,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:54:48,262.262 INFO    ] No existing commands found in stream
[2026-08-25 12:54:53,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:54:53,290.290 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 12:54:54,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:54:54,379.379 INFO    ] Checking for system updates...
[2026-08-25 12:54:54,421.421 INFO    ] 200
[2026-08-25 12:54:54,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:54,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:54:54,477.477 INFO    ] No update needed
[2026-08-25 12:54:54,480.480 INFO    ] Checking for camera pi updates...
[2026-08-25 12:54:54,514.514 INFO    ] 200
[2026-08-25 12:54:54,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:54:54,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:54:54,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:54:54,611.611 INFO    ] No camera update needed
[2026-08-25 12:54:54,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:54:54,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:54:54,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:54:54,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:54:56,670.670 INFO    ] ================================================
[2026-08-25 12:54:56,685.685 INFO    ] Launching Daemon at Tue Aug 25 12:54:56 IST 2026
[2026-08-25 12:54:56,696.696 INFO    ] ================================================
[2026-08-25 12:54:57,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:54:57
[2026-08-25 12:54:57,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:54:58,154.154 INFO    ] Initializing speech engine...
[2026-08-25 12:54:58,162.162 INFO    ] 2026-08-25 12:54:58
[2026-08-25 12:54:58,422.422 INFO    ] 2026-08-25 12:54:58
[2026-08-25 12:54:58,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:54:58,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:54:58,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:54:58,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:54:58,897.897 INFO    ] time= 25/08/2026 12:54:58
[2026-08-25 12:54:58,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:54:58,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:54:59,109.109 INFO    ] No existing commands found in stream
[2026-08-25 12:55:04,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:55:04,128.128 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 12:55:07,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:55:07,026.026 INFO    ] Checking for system updates...
[2026-08-25 12:55:07,062.062 INFO    ] 200
[2026-08-25 12:55:07,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:07,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:07,120.120 INFO    ] No update needed
[2026-08-25 12:55:07,123.123 INFO    ] Checking for camera pi updates...
[2026-08-25 12:55:07,162.162 INFO    ] 200
[2026-08-25 12:55:07,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:07,205.205 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:55:07,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:07,265.265 INFO    ] No camera update needed
[2026-08-25 12:55:07,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:55:07,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:55:07,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:55:07,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:55:09,322.322 INFO    ] ================================================
[2026-08-25 12:55:09,337.337 INFO    ] Launching Daemon at Tue Aug 25 12:55:09 IST 2026
[2026-08-25 12:55:09,348.348 INFO    ] ================================================
[2026-08-25 12:55:09,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:55:09
[2026-08-25 12:55:10,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:55:10,799.799 INFO    ] Initializing speech engine...
[2026-08-25 12:55:10,814.814 INFO    ] 2026-08-25 12:55:10
[2026-08-25 12:55:11,094.094 INFO    ] 2026-08-25 12:55:11
[2026-08-25 12:55:11,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:55:11,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:55:11,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:55:11,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:55:11,528.528 INFO    ] time= 25/08/2026 12:55:11
[2026-08-25 12:55:11,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:55:11,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:55:11,685.685 INFO    ] No existing commands found in stream
[2026-08-25 12:55:16,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:55:16,713.713 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 12:55:18,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:55:18,587.587 INFO    ] Checking for system updates...
[2026-08-25 12:55:18,622.622 INFO    ] 200
[2026-08-25 12:55:18,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:18,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:18,688.688 INFO    ] No update needed
[2026-08-25 12:55:18,691.691 INFO    ] Checking for camera pi updates...
[2026-08-25 12:55:18,729.729 INFO    ] 200
[2026-08-25 12:55:18,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:18,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:55:18,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:18,822.822 INFO    ] No camera update needed
[2026-08-25 12:55:18,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:55:18,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:55:18,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:55:18,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:55:20,878.878 INFO    ] ================================================
[2026-08-25 12:55:20,893.893 INFO    ] Launching Daemon at Tue Aug 25 12:55:20 IST 2026
[2026-08-25 12:55:20,904.904 INFO    ] ================================================
[2026-08-25 12:55:21,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:55:21
[2026-08-25 12:55:22,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:55:22,362.362 INFO    ] Initializing speech engine...
[2026-08-25 12:55:22,369.369 INFO    ] 2026-08-25 12:55:22
[2026-08-25 12:55:22,618.618 INFO    ] 2026-08-25 12:55:22
[2026-08-25 12:55:22,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:55:22,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:55:22,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:55:23,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:55:23,113.113 INFO    ] time= 25/08/2026 12:55:23
[2026-08-25 12:55:23,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:55:23,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:55:23,322.322 INFO    ] No existing commands found in stream
[2026-08-25 12:55:28,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:55:28,340.340 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 12:55:31,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:55:31,456.456 INFO    ] Checking for system updates...
[2026-08-25 12:55:31,491.491 INFO    ] 200
[2026-08-25 12:55:31,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:31,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:31,562.562 INFO    ] No update needed
[2026-08-25 12:55:31,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 12:55:31,618.618 INFO    ] 200
[2026-08-25 12:55:31,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:31,667.667 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:55:31,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:31,720.720 INFO    ] No camera update needed
[2026-08-25 12:55:31,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:55:31,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:55:31,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:55:31,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:55:33,778.778 INFO    ] ================================================
[2026-08-25 12:55:33,793.793 INFO    ] Launching Daemon at Tue Aug 25 12:55:33 IST 2026
[2026-08-25 12:55:33,804.804 INFO    ] ================================================
[2026-08-25 12:55:34,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:55:34
[2026-08-25 12:55:34,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:55:35,249.249 INFO    ] Initializing speech engine...
[2026-08-25 12:55:35,266.266 INFO    ] 2026-08-25 12:55:35
[2026-08-25 12:55:35,522.522 INFO    ] 2026-08-25 12:55:35
[2026-08-25 12:55:35,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:55:35,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:55:35,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:55:35,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:55:35,998.998 INFO    ] time= 25/08/2026 12:55:35
[2026-08-25 12:55:36,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:55:36,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:55:36,250.250 INFO    ] No existing commands found in stream
[2026-08-25 12:55:41,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:55:41,265.265 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 12:55:44,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:55:44,212.212 INFO    ] Checking for system updates...
[2026-08-25 12:55:44,250.250 INFO    ] 200
[2026-08-25 12:55:44,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:44,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:44,308.308 INFO    ] No update needed
[2026-08-25 12:55:44,310.310 INFO    ] Checking for camera pi updates...
[2026-08-25 12:55:44,344.344 INFO    ] 200
[2026-08-25 12:55:44,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:44,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:55:44,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:55:44,441.441 INFO    ] No camera update needed
[2026-08-25 12:55:44,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:55:44,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:55:44,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:55:44,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:55:46,496.496 INFO    ] ================================================
[2026-08-25 12:55:46,511.511 INFO    ] Launching Daemon at Tue Aug 25 12:55:46 IST 2026
[2026-08-25 12:55:46,522.522 INFO    ] ================================================
[2026-08-25 12:55:47,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:55:47
[2026-08-25 12:55:47,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:55:47,935.935 INFO    ] Initializing speech engine...
[2026-08-25 12:55:47,943.943 INFO    ] 2026-08-25 12:55:47
[2026-08-25 12:55:48,188.188 INFO    ] 2026-08-25 12:55:48
[2026-08-25 12:55:48,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:55:48,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:55:48,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:55:48,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:55:48,742.742 INFO    ] time= 25/08/2026 12:55:48
[2026-08-25 12:55:48,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:55:48,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:55:48,889.889 INFO    ] No existing commands found in stream
[2026-08-25 12:55:53,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:55:53,907.907 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 12:55:56,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:55:56,762.762 INFO    ] Checking for system updates...
[2026-08-25 12:55:56,797.797 INFO    ] 200
[2026-08-25 12:55:56,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:56,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:55:56,854.854 INFO    ] No update needed
[2026-08-25 12:55:56,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 12:55:56,894.894 INFO    ] 200
[2026-08-25 12:55:56,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:55:56,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:55:56,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:55:56,997.997 INFO    ] No camera update needed
[2026-08-25 12:55:56,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:55:57,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:55:57,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:55:57,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:55:59,051.051 INFO    ] ================================================
[2026-08-25 12:55:59,066.066 INFO    ] Launching Daemon at Tue Aug 25 12:55:59 IST 2026
[2026-08-25 12:55:59,077.077 INFO    ] ================================================
[2026-08-25 12:55:59,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:55:59
[2026-08-25 12:56:00,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:56:00,488.488 INFO    ] Initializing speech engine...
[2026-08-25 12:56:00,506.506 INFO    ] 2026-08-25 12:56:00
[2026-08-25 12:56:00,752.752 INFO    ] 2026-08-25 12:56:00
[2026-08-25 12:56:00,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:56:01,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:56:01,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:56:01,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:56:01,232.232 INFO    ] time= 25/08/2026 12:56:01
[2026-08-25 12:56:01,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:56:01,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:56:01,441.441 INFO    ] No existing commands found in stream
[2026-08-25 12:56:06,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:56:06,470.470 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 12:56:09,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:56:09,467.467 INFO    ] Checking for system updates...
[2026-08-25 12:56:09,507.507 INFO    ] 200
[2026-08-25 12:56:09,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:09,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:56:09,571.571 INFO    ] No update needed
[2026-08-25 12:56:09,574.574 INFO    ] Checking for camera pi updates...
[2026-08-25 12:56:09,609.609 INFO    ] 200
[2026-08-25 12:56:09,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:09,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:56:09,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:56:09,727.727 INFO    ] No camera update needed
[2026-08-25 12:56:09,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:56:09,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:56:09,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:56:09,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:56:11,793.793 INFO    ] ================================================
[2026-08-25 12:56:11,808.808 INFO    ] Launching Daemon at Tue Aug 25 12:56:11 IST 2026
[2026-08-25 12:56:11,820.820 INFO    ] ================================================
[2026-08-25 12:56:12,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:56:12
[2026-08-25 12:56:12,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:56:13,243.243 INFO    ] Initializing speech engine...
[2026-08-25 12:56:13,252.252 INFO    ] 2026-08-25 12:56:13
[2026-08-25 12:56:13,508.508 INFO    ] 2026-08-25 12:56:13
[2026-08-25 12:56:13,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:56:13,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:56:13,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:56:13,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:56:13,913.913 INFO    ] time= 25/08/2026 12:56:13
[2026-08-25 12:56:13,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:56:13,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:56:14,108.108 INFO    ] No existing commands found in stream
[2026-08-25 12:56:19,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:56:19,121.121 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 12:56:19,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:56:19,982.982 INFO    ] Checking for system updates...
[2026-08-25 12:56:20,023.023 INFO    ] 200
[2026-08-25 12:56:20,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:20,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:56:20,088.088 INFO    ] No update needed
[2026-08-25 12:56:20,091.091 INFO    ] Checking for camera pi updates...
[2026-08-25 12:56:20,128.128 INFO    ] 200
[2026-08-25 12:56:20,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:20,170.170 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:56:20,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:56:20,218.218 INFO    ] No camera update needed
[2026-08-25 12:56:20,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:56:20,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:56:20,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:56:20,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:56:22,276.276 INFO    ] ================================================
[2026-08-25 12:56:22,292.292 INFO    ] Launching Daemon at Tue Aug 25 12:56:22 IST 2026
[2026-08-25 12:56:22,303.303 INFO    ] ================================================
[2026-08-25 12:56:22,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:56:22
[2026-08-25 12:56:23,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:56:23,765.765 INFO    ] Initializing speech engine...
[2026-08-25 12:56:23,772.772 INFO    ] 2026-08-25 12:56:23
[2026-08-25 12:56:24,047.047 INFO    ] 2026-08-25 12:56:24
[2026-08-25 12:56:24,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:56:24,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:56:24,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:56:24,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:56:24,514.514 INFO    ] time= 25/08/2026 12:56:24
[2026-08-25 12:56:24,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:56:24,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:56:24,728.728 INFO    ] No existing commands found in stream
[2026-08-25 12:56:29,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:56:29,754.754 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 12:56:30,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:56:30,909.909 INFO    ] Checking for system updates...
[2026-08-25 12:56:30,944.944 INFO    ] 200
[2026-08-25 12:56:30,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:31,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:56:31,009.009 INFO    ] No update needed
[2026-08-25 12:56:31,011.011 INFO    ] Checking for camera pi updates...
[2026-08-25 12:56:31,046.046 INFO    ] 200
[2026-08-25 12:56:31,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:31,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:56:31,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:56:31,156.156 INFO    ] No camera update needed
[2026-08-25 12:56:31,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:56:31,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:56:31,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:56:31,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:56:33,217.217 INFO    ] ================================================
[2026-08-25 12:56:33,233.233 INFO    ] Launching Daemon at Tue Aug 25 12:56:33 IST 2026
[2026-08-25 12:56:33,244.244 INFO    ] ================================================
[2026-08-25 12:56:33,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:56:33
[2026-08-25 12:56:34,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:56:34,700.700 INFO    ] Initializing speech engine...
[2026-08-25 12:56:34,709.709 INFO    ] 2026-08-25 12:56:34
[2026-08-25 12:56:35,007.007 INFO    ] 2026-08-25 12:56:34
[2026-08-25 12:56:35,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:56:35,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:56:35,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:56:35,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:56:35,391.391 INFO    ] time= 25/08/2026 12:56:35
[2026-08-25 12:56:35,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:56:35,416.416 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:56:35,520.520 INFO    ] No existing commands found in stream
[2026-08-25 12:56:40,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:56:40,536.536 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 12:56:42,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 12:56:42,534.534 INFO    ] Checking for system updates...
[2026-08-25 12:56:42,574.574 INFO    ] 200
[2026-08-25 12:56:42,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:42,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:56:42,638.638 INFO    ] No update needed
[2026-08-25 12:56:42,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 12:56:42,680.680 INFO    ] 200
[2026-08-25 12:56:42,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:42,723.723 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:56:42,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:56:42,772.772 INFO    ] No camera update needed
[2026-08-25 12:56:42,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:56:42,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:56:42,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:56:42,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:56:44,827.827 INFO    ] ================================================
[2026-08-25 12:56:44,843.843 INFO    ] Launching Daemon at Tue Aug 25 12:56:44 IST 2026
[2026-08-25 12:56:44,854.854 INFO    ] ================================================
[2026-08-25 12:56:45,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:56:45
[2026-08-25 12:56:46,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:56:46,315.315 INFO    ] Initializing speech engine...
[2026-08-25 12:56:46,324.324 INFO    ] 2026-08-25 12:56:46
[2026-08-25 12:56:46,586.586 INFO    ] 2026-08-25 12:56:46
[2026-08-25 12:56:46,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:56:46,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:56:46,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:56:47,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:56:47,078.078 INFO    ] time= 25/08/2026 12:56:47
[2026-08-25 12:56:47,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:56:47,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:56:47,273.273 INFO    ] No existing commands found in stream
[2026-08-25 12:56:52,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:56:52,301.301 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 12:56:53,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:56:53,319.319 INFO    ] Checking for system updates...
[2026-08-25 12:56:53,356.356 INFO    ] 200
[2026-08-25 12:56:53,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:53,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:56:53,421.421 INFO    ] No update needed
[2026-08-25 12:56:53,424.424 INFO    ] Checking for camera pi updates...
[2026-08-25 12:56:53,461.461 INFO    ] 200
[2026-08-25 12:56:53,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:56:53,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:56:53,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:56:53,559.559 INFO    ] No camera update needed
[2026-08-25 12:56:53,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:56:53,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:56:53,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:56:53,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:56:55,615.615 INFO    ] ================================================
[2026-08-25 12:56:55,631.631 INFO    ] Launching Daemon at Tue Aug 25 12:56:55 IST 2026
[2026-08-25 12:56:55,642.642 INFO    ] ================================================
[2026-08-25 12:56:56,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:56:56
[2026-08-25 12:56:56,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:56:57,084.084 INFO    ] Initializing speech engine...
[2026-08-25 12:56:57,098.098 INFO    ] 2026-08-25 12:56:57
[2026-08-25 12:56:57,363.363 INFO    ] 2026-08-25 12:56:57
[2026-08-25 12:56:57,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:56:57,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:56:57,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:56:57,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:56:57,743.743 INFO    ] time= 25/08/2026 12:56:57
[2026-08-25 12:56:57,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:56:57,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:56:57,943.943 INFO    ] No existing commands found in stream
[2026-08-25 12:57:02,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:57:02,958.958 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 12:57:05,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:57:05,866.866 INFO    ] Checking for system updates...
[2026-08-25 12:57:05,906.906 INFO    ] 200
[2026-08-25 12:57:05,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:05,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:57:05,964.964 INFO    ] No update needed
[2026-08-25 12:57:05,966.966 INFO    ] Checking for camera pi updates...
[2026-08-25 12:57:06,000.000 INFO    ] 200
[2026-08-25 12:57:06,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:06,043.043 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:57:06,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:57:06,192.192 INFO    ] No camera update needed
[2026-08-25 12:57:06,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:57:06,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:57:06,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:57:06,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:57:08,254.254 INFO    ] ================================================
[2026-08-25 12:57:08,270.270 INFO    ] Launching Daemon at Tue Aug 25 12:57:08 IST 2026
[2026-08-25 12:57:08,281.281 INFO    ] ================================================
[2026-08-25 12:57:08,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:57:08
[2026-08-25 12:57:09,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:57:09,694.694 INFO    ] Initializing speech engine...
[2026-08-25 12:57:09,703.703 INFO    ] 2026-08-25 12:57:09
[2026-08-25 12:57:09,954.954 INFO    ] 2026-08-25 12:57:09
[2026-08-25 12:57:10,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:57:10,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:57:10,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:57:10,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:57:10,427.427 INFO    ] time= 25/08/2026 12:57:10
[2026-08-25 12:57:10,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:57:10,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:57:10,653.653 INFO    ] No existing commands found in stream
[2026-08-25 12:57:15,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:57:15,669.669 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 12:57:17,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:57:17,516.516 INFO    ] Checking for system updates...
[2026-08-25 12:57:17,556.556 INFO    ] 200
[2026-08-25 12:57:17,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:17,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:17,621.621 INFO    ] No update needed
[2026-08-25 12:57:17,623.623 INFO    ] Checking for camera pi updates...
[2026-08-25 12:57:17,657.657 INFO    ] 200
[2026-08-25 12:57:17,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:17,703.703 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:57:17,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:17,761.761 INFO    ] No camera update needed
[2026-08-25 12:57:17,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:57:17,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:57:17,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:57:17,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:57:19,816.816 INFO    ] ================================================
[2026-08-25 12:57:19,831.831 INFO    ] Launching Daemon at Tue Aug 25 12:57:19 IST 2026
[2026-08-25 12:57:19,841.841 INFO    ] ================================================
[2026-08-25 12:57:20,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:57:20
[2026-08-25 12:57:20,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:57:21,237.237 INFO    ] Initializing speech engine...
[2026-08-25 12:57:21,245.245 INFO    ] 2026-08-25 12:57:21
[2026-08-25 12:57:21,546.546 INFO    ] 2026-08-25 12:57:21
[2026-08-25 12:57:21,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:57:21,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:57:21,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:57:21,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:57:22,038.038 INFO    ] time= 25/08/2026 12:57:21
[2026-08-25 12:57:22,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:57:22,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:57:22,247.247 INFO    ] No existing commands found in stream
[2026-08-25 12:57:27,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:57:27,281.281 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 12:57:29,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:57:29,337.337 INFO    ] Checking for system updates...
[2026-08-25 12:57:29,374.374 INFO    ] 200
[2026-08-25 12:57:29,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:29,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:29,440.440 INFO    ] No update needed
[2026-08-25 12:57:29,443.443 INFO    ] Checking for camera pi updates...
[2026-08-25 12:57:29,485.485 INFO    ] 200
[2026-08-25 12:57:29,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:29,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:57:29,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:29,575.575 INFO    ] No camera update needed
[2026-08-25 12:57:29,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:57:29,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:57:29,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:57:29,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:57:31,635.635 INFO    ] ================================================
[2026-08-25 12:57:31,652.652 INFO    ] Launching Daemon at Tue Aug 25 12:57:31 IST 2026
[2026-08-25 12:57:31,665.665 INFO    ] ================================================
[2026-08-25 12:57:32,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:57:32
[2026-08-25 12:57:32,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:57:33,200.200 INFO    ] Initializing speech engine...
[2026-08-25 12:57:33,207.207 INFO    ] 2026-08-25 12:57:33
[2026-08-25 12:57:33,467.467 INFO    ] 2026-08-25 12:57:33
[2026-08-25 12:57:33,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:57:33,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:57:33,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:57:33,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:57:33,956.956 INFO    ] time= 25/08/2026 12:57:33
[2026-08-25 12:57:34,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:57:34,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:57:34,163.163 INFO    ] No existing commands found in stream
[2026-08-25 12:57:39,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:57:39,180.180 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 12:57:42,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:57:42,896.896 INFO    ] Checking for system updates...
[2026-08-25 12:57:42,936.936 INFO    ] 200
[2026-08-25 12:57:42,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:42,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:42,993.993 INFO    ] No update needed
[2026-08-25 12:57:42,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 12:57:43,029.029 INFO    ] 200
[2026-08-25 12:57:43,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:43,071.071 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:57:43,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:43,123.123 INFO    ] No camera update needed
[2026-08-25 12:57:43,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:57:43,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:57:43,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:57:43,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:57:45,180.180 INFO    ] ================================================
[2026-08-25 12:57:45,196.196 INFO    ] Launching Daemon at Tue Aug 25 12:57:45 IST 2026
[2026-08-25 12:57:45,209.209 INFO    ] ================================================
[2026-08-25 12:57:45,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:57:45
[2026-08-25 12:57:46,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:57:46,663.663 INFO    ] Initializing speech engine...
[2026-08-25 12:57:46,674.674 INFO    ] 2026-08-25 12:57:46
[2026-08-25 12:57:46,934.934 INFO    ] 2026-08-25 12:57:46
[2026-08-25 12:57:46,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:57:47,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:57:47,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:57:47,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:57:47,448.448 INFO    ] time= 25/08/2026 12:57:47
[2026-08-25 12:57:47,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:57:47,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:57:47,610.610 INFO    ] No existing commands found in stream
[2026-08-25 12:57:52,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:57:52,641.641 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 12:57:56,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:57:56,650.650 INFO    ] Checking for system updates...
[2026-08-25 12:57:56,690.690 INFO    ] 200
[2026-08-25 12:57:56,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:56,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:56,755.755 INFO    ] No update needed
[2026-08-25 12:57:56,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 12:57:56,795.795 INFO    ] 200
[2026-08-25 12:57:56,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:57:56,838.838 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:57:56,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:57:56,896.896 INFO    ] No camera update needed
[2026-08-25 12:57:56,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:57:56,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:57:56,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:57:56,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:57:58,953.953 INFO    ] ================================================
[2026-08-25 12:57:58,969.969 INFO    ] Launching Daemon at Tue Aug 25 12:57:58 IST 2026
[2026-08-25 12:57:58,980.980 INFO    ] ================================================
[2026-08-25 12:57:59,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:57:59
[2026-08-25 12:58:00,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:58:00,404.404 INFO    ] Initializing speech engine...
[2026-08-25 12:58:00,413.413 INFO    ] 2026-08-25 12:58:00
[2026-08-25 12:58:00,662.662 INFO    ] 2026-08-25 12:58:00
[2026-08-25 12:58:00,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:58:00,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:58:00,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:58:01,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:58:01,122.122 INFO    ] time= 25/08/2026 12:58:01
[2026-08-25 12:58:01,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:58:01,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:58:01,370.370 INFO    ] No existing commands found in stream
[2026-08-25 12:58:06,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:58:06,381.381 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 12:58:09,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:58:09,671.671 INFO    ] Checking for system updates...
[2026-08-25 12:58:09,708.708 INFO    ] 200
[2026-08-25 12:58:09,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:09,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:58:09,777.777 INFO    ] No update needed
[2026-08-25 12:58:09,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 12:58:09,820.820 INFO    ] 200
[2026-08-25 12:58:09,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:09,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:58:09,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:58:09,912.912 INFO    ] No camera update needed
[2026-08-25 12:58:09,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:58:09,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:58:09,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:58:09,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:58:11,970.970 INFO    ] ================================================
[2026-08-25 12:58:11,986.986 INFO    ] Launching Daemon at Tue Aug 25 12:58:11 IST 2026
[2026-08-25 12:58:12,996.996 INFO    ] ================================================
[2026-08-25 12:58:12,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:58:12
[2026-08-25 12:58:13,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:58:13,481.481 INFO    ] Initializing speech engine...
[2026-08-25 12:58:13,489.489 INFO    ] 2026-08-25 12:58:13
[2026-08-25 12:58:13,750.750 INFO    ] 2026-08-25 12:58:13
[2026-08-25 12:58:13,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:58:14,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:58:14,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:58:14,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:58:14,287.287 INFO    ] time= 25/08/2026 12:58:14
[2026-08-25 12:58:14,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:58:14,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:58:14,446.446 INFO    ] No existing commands found in stream
[2026-08-25 12:58:19,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:58:19,475.475 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 12:58:23,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:58:23,810.810 INFO    ] Checking for system updates...
[2026-08-25 12:58:23,846.846 INFO    ] 200
[2026-08-25 12:58:23,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:23,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:58:23,903.903 INFO    ] No update needed
[2026-08-25 12:58:23,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 12:58:23,939.939 INFO    ] 200
[2026-08-25 12:58:23,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:23,982.982 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:58:24,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:58:24,030.030 INFO    ] No camera update needed
[2026-08-25 12:58:24,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:58:24,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:58:24,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:58:24,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:58:26,090.090 INFO    ] ================================================
[2026-08-25 12:58:26,106.106 INFO    ] Launching Daemon at Tue Aug 25 12:58:26 IST 2026
[2026-08-25 12:58:26,117.117 INFO    ] ================================================
[2026-08-25 12:58:26,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:58:26
[2026-08-25 12:58:27,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:58:27,768.768 INFO    ] Initializing speech engine...
[2026-08-25 12:58:27,781.781 INFO    ] 2026-08-25 12:58:27
[2026-08-25 12:58:28,055.055 INFO    ] 2026-08-25 12:58:28
[2026-08-25 12:58:28,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:58:28,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:58:28,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:58:28,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:58:28,553.553 INFO    ] time= 25/08/2026 12:58:28
[2026-08-25 12:58:28,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:58:28,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:58:28,759.759 INFO    ] No existing commands found in stream
[2026-08-25 12:58:33,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:58:33,790.790 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 12:58:35,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:58:35,511.511 INFO    ] Checking for system updates...
[2026-08-25 12:58:35,553.553 INFO    ] 200
[2026-08-25 12:58:35,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:35,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:58:35,611.611 INFO    ] No update needed
[2026-08-25 12:58:35,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 12:58:35,647.647 INFO    ] 200
[2026-08-25 12:58:35,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:35,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:58:35,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:58:35,743.743 INFO    ] No camera update needed
[2026-08-25 12:58:35,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:58:35,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:58:35,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:58:35,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:58:37,798.798 INFO    ] ================================================
[2026-08-25 12:58:37,814.814 INFO    ] Launching Daemon at Tue Aug 25 12:58:37 IST 2026
[2026-08-25 12:58:37,825.825 INFO    ] ================================================
[2026-08-25 12:58:38,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:58:38
[2026-08-25 12:58:39,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:58:39,445.445 INFO    ] Initializing speech engine...
[2026-08-25 12:58:39,450.450 INFO    ] 2026-08-25 12:58:39
[2026-08-25 12:58:39,697.697 INFO    ] 2026-08-25 12:58:39
[2026-08-25 12:58:39,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:58:39,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:58:39,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:58:40,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:58:40,073.073 INFO    ] time= 25/08/2026 12:58:40
[2026-08-25 12:58:40,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:58:40,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:58:40,320.320 INFO    ] No existing commands found in stream
[2026-08-25 12:58:45,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:58:45,335.335 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 12:58:46,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 12:58:46,813.813 INFO    ] Checking for system updates...
[2026-08-25 12:58:46,849.849 INFO    ] 200
[2026-08-25 12:58:46,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:46,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:58:46,912.912 INFO    ] No update needed
[2026-08-25 12:58:46,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 12:58:46,956.956 INFO    ] 200
[2026-08-25 12:58:46,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:47,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:58:47,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:58:47,063.063 INFO    ] No camera update needed
[2026-08-25 12:58:47,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:58:47,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:58:47,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:58:47,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:58:49,120.120 INFO    ] ================================================
[2026-08-25 12:58:49,136.136 INFO    ] Launching Daemon at Tue Aug 25 12:58:49 IST 2026
[2026-08-25 12:58:49,146.146 INFO    ] ================================================
[2026-08-25 12:58:49,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:58:49
[2026-08-25 12:58:50,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:58:50,576.576 INFO    ] Initializing speech engine...
[2026-08-25 12:58:50,591.591 INFO    ] 2026-08-25 12:58:50
[2026-08-25 12:58:50,856.856 INFO    ] 2026-08-25 12:58:50
[2026-08-25 12:58:50,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:58:51,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:58:51,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:58:51,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:58:51,232.232 INFO    ] time= 25/08/2026 12:58:51
[2026-08-25 12:58:51,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:58:51,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:58:51,418.418 INFO    ] No existing commands found in stream
[2026-08-25 12:58:56,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:58:56,446.446 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 12:58:59,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:58:59,087.087 INFO    ] Checking for system updates...
[2026-08-25 12:58:59,123.123 INFO    ] 200
[2026-08-25 12:58:59,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:59,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:58:59,180.180 INFO    ] No update needed
[2026-08-25 12:58:59,183.183 INFO    ] Checking for camera pi updates...
[2026-08-25 12:58:59,220.220 INFO    ] 200
[2026-08-25 12:58:59,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:58:59,268.268 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:58:59,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:58:59,325.325 INFO    ] No camera update needed
[2026-08-25 12:58:59,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:58:59,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:58:59,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:58:59,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:59:01,382.382 INFO    ] ================================================
[2026-08-25 12:59:01,399.399 INFO    ] Launching Daemon at Tue Aug 25 12:59:01 IST 2026
[2026-08-25 12:59:01,410.410 INFO    ] ================================================
[2026-08-25 12:59:02,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:59:02
[2026-08-25 12:59:02,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:59:03,159.159 INFO    ] Initializing speech engine...
[2026-08-25 12:59:03,176.176 INFO    ] 2026-08-25 12:59:03
[2026-08-25 12:59:03,523.523 INFO    ] 2026-08-25 12:59:03
[2026-08-25 12:59:03,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:59:03,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:59:03,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:59:04,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:59:04,027.027 INFO    ] time= 25/08/2026 12:59:04
[2026-08-25 12:59:04,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:59:04,051.051 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:59:04,174.174 INFO    ] No existing commands found in stream
[2026-08-25 12:59:09,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:59:09,192.192 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 12:59:11,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 12:59:11,117.117 INFO    ] Checking for system updates...
[2026-08-25 12:59:11,153.153 INFO    ] 200
[2026-08-25 12:59:11,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:11,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:59:11,219.219 INFO    ] No update needed
[2026-08-25 12:59:11,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 12:59:11,261.261 INFO    ] 200
[2026-08-25 12:59:11,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:11,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:59:11,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:59:11,469.469 INFO    ] No camera update needed
[2026-08-25 12:59:11,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:59:11,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:59:11,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:59:11,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:59:13,528.528 INFO    ] ================================================
[2026-08-25 12:59:13,543.543 INFO    ] Launching Daemon at Tue Aug 25 12:59:13 IST 2026
[2026-08-25 12:59:13,553.553 INFO    ] ================================================
[2026-08-25 12:59:14,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:59:14
[2026-08-25 12:59:14,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:59:15,197.197 INFO    ] Initializing speech engine...
[2026-08-25 12:59:15,211.211 INFO    ] 2026-08-25 12:59:15
[2026-08-25 12:59:15,474.474 INFO    ] 2026-08-25 12:59:15
[2026-08-25 12:59:15,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:59:15,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:59:15,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:59:15,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:59:15,946.946 INFO    ] time= 25/08/2026 12:59:15
[2026-08-25 12:59:15,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:59:16,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:59:16,160.160 INFO    ] No existing commands found in stream
[2026-08-25 12:59:21,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:59:21,191.191 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 12:59:22,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:59:22,192.192 INFO    ] Checking for system updates...
[2026-08-25 12:59:22,232.232 INFO    ] 200
[2026-08-25 12:59:22,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:22,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:59:22,289.289 INFO    ] No update needed
[2026-08-25 12:59:22,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 12:59:22,329.329 INFO    ] 200
[2026-08-25 12:59:22,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:22,371.371 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:59:22,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:59:22,419.419 INFO    ] No camera update needed
[2026-08-25 12:59:22,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:59:22,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:59:22,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:59:22,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:59:24,475.475 INFO    ] ================================================
[2026-08-25 12:59:24,490.490 INFO    ] Launching Daemon at Tue Aug 25 12:59:24 IST 2026
[2026-08-25 12:59:24,501.501 INFO    ] ================================================
[2026-08-25 12:59:25,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:59:25
[2026-08-25 12:59:25,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:59:25,915.915 INFO    ] Initializing speech engine...
[2026-08-25 12:59:25,924.924 INFO    ] 2026-08-25 12:59:25
[2026-08-25 12:59:26,219.219 INFO    ] 2026-08-25 12:59:26
[2026-08-25 12:59:26,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:59:26,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:59:26,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:59:26,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:59:26,605.605 INFO    ] time= 25/08/2026 12:59:26
[2026-08-25 12:59:26,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:59:26,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:59:26,732.732 INFO    ] No existing commands found in stream
[2026-08-25 12:59:31,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:59:31,748.748 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 12:59:34,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 12:59:34,047.047 INFO    ] Checking for system updates...
[2026-08-25 12:59:34,082.082 INFO    ] 200
[2026-08-25 12:59:34,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:34,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:59:34,147.147 INFO    ] No update needed
[2026-08-25 12:59:34,150.150 INFO    ] Checking for camera pi updates...
[2026-08-25 12:59:34,187.187 INFO    ] 200
[2026-08-25 12:59:34,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:34,231.231 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:59:34,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:59:34,279.279 INFO    ] No camera update needed
[2026-08-25 12:59:34,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:59:34,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:59:34,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:59:34,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:59:36,334.334 INFO    ] ================================================
[2026-08-25 12:59:36,350.350 INFO    ] Launching Daemon at Tue Aug 25 12:59:36 IST 2026
[2026-08-25 12:59:36,360.360 INFO    ] ================================================
[2026-08-25 12:59:37,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:59:37
[2026-08-25 12:59:37,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:59:38,009.009 INFO    ] Initializing speech engine...
[2026-08-25 12:59:38,017.017 INFO    ] 2026-08-25 12:59:38
[2026-08-25 12:59:38,296.296 INFO    ] 2026-08-25 12:59:38
[2026-08-25 12:59:38,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:59:38,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:59:38,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:59:38,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:59:38,829.829 INFO    ] time= 25/08/2026 12:59:38
[2026-08-25 12:59:38,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:59:38,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:59:39,021.021 INFO    ] No existing commands found in stream
[2026-08-25 12:59:44,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:59:44,038.038 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 12:59:45,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 12:59:45,873.873 INFO    ] Checking for system updates...
[2026-08-25 12:59:45,912.912 INFO    ] 200
[2026-08-25 12:59:45,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:45,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:59:45,975.975 INFO    ] No update needed
[2026-08-25 12:59:45,978.978 INFO    ] Checking for camera pi updates...
[2026-08-25 12:59:46,034.034 INFO    ] 200
[2026-08-25 12:59:46,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:46,095.095 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:59:46,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 12:59:46,144.144 INFO    ] No camera update needed
[2026-08-25 12:59:46,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:59:46,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:59:46,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:59:46,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 12:59:48,204.204 INFO    ] ================================================
[2026-08-25 12:59:48,219.219 INFO    ] Launching Daemon at Tue Aug 25 12:59:48 IST 2026
[2026-08-25 12:59:48,233.233 INFO    ] ================================================
[2026-08-25 12:59:48,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 12:59:48
[2026-08-25 12:59:49,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 12:59:49,785.785 INFO    ] Initializing speech engine...
[2026-08-25 12:59:49,794.794 INFO    ] 2026-08-25 12:59:49
[2026-08-25 12:59:50,049.049 INFO    ] 2026-08-25 12:59:50
[2026-08-25 12:59:50,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 12:59:50,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 12:59:50,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 12:59:50,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 12:59:50,434.434 INFO    ] time= 25/08/2026 12:59:50
[2026-08-25 12:59:50,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 12:59:50,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 12:59:50,601.601 INFO    ] No existing commands found in stream
[2026-08-25 12:59:55,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 12:59:55,635.635 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 12:59:58,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 12:59:58,346.346 INFO    ] Checking for system updates...
[2026-08-25 12:59:58,389.389 INFO    ] 200
[2026-08-25 12:59:58,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:58,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:59:58,447.447 INFO    ] No update needed
[2026-08-25 12:59:58,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 12:59:58,485.485 INFO    ] 200
[2026-08-25 12:59:58,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 12:59:58,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 12:59:58,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 12:59:58,589.589 INFO    ] No camera update needed
[2026-08-25 12:59:58,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 12:59:58,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 12:59:58,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 12:59:58,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:00:00,648.648 INFO    ] ================================================
[2026-08-25 13:00:00,662.662 INFO    ] Launching Daemon at Tue Aug 25 13:00:00 IST 2026
[2026-08-25 13:00:00,673.673 INFO    ] ================================================
[2026-08-25 13:00:01,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:00:01
[2026-08-25 13:00:02,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:00:03,848.848 INFO    ] Initializing speech engine...
[2026-08-25 13:00:03,851.851 INFO    ] 2026-08-25 13:00:03
[2026-08-25 13:00:04,772.772 INFO    ] 2026-08-25 13:00:04
[2026-08-25 13:00:04,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:00:05,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:00:05,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:00:05,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:00:05,291.291 INFO    ] time= 25/08/2026 13:00:05
[2026-08-25 13:00:05,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:00:05,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:00:05,442.442 INFO    ] No existing commands found in stream
[2026-08-25 13:00:10,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:00:10,455.455 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 13:00:11,412.412 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:00:11,415.415 INFO    ] Checking for system updates...
[2026-08-25 13:00:11,450.450 INFO    ] 200
[2026-08-25 13:00:11,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:11,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:00:11,510.510 INFO    ] No update needed
[2026-08-25 13:00:11,512.512 INFO    ] Checking for camera pi updates...
[2026-08-25 13:00:11,549.549 INFO    ] 200
[2026-08-25 13:00:11,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:11,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:00:11,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:00:11,652.652 INFO    ] No camera update needed
[2026-08-25 13:00:11,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:00:11,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:00:11,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:00:11,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:00:13,707.707 INFO    ] ================================================
[2026-08-25 13:00:13,722.722 INFO    ] Launching Daemon at Tue Aug 25 13:00:13 IST 2026
[2026-08-25 13:00:13,733.733 INFO    ] ================================================
[2026-08-25 13:00:14,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:00:14
[2026-08-25 13:00:14,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:00:15,190.190 INFO    ] Initializing speech engine...
[2026-08-25 13:00:15,197.197 INFO    ] 2026-08-25 13:00:15
[2026-08-25 13:00:15,456.456 INFO    ] 2026-08-25 13:00:15
[2026-08-25 13:00:15,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:00:15,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:00:15,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:00:16,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:00:16,142.142 INFO    ] time= 25/08/2026 13:00:16
[2026-08-25 13:00:16,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:00:16,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:00:16,389.389 INFO    ] No existing commands found in stream
[2026-08-25 13:00:21,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:00:21,409.409 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 13:00:22,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:00:22,515.515 INFO    ] Checking for system updates...
[2026-08-25 13:00:22,554.554 INFO    ] 200
[2026-08-25 13:00:22,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:22,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:00:22,617.617 INFO    ] No update needed
[2026-08-25 13:00:22,619.619 INFO    ] Checking for camera pi updates...
[2026-08-25 13:00:22,656.656 INFO    ] 200
[2026-08-25 13:00:22,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:22,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:00:22,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:00:22,751.751 INFO    ] No camera update needed
[2026-08-25 13:00:22,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:00:22,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:00:22,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:00:22,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:00:24,809.809 INFO    ] ================================================
[2026-08-25 13:00:24,825.825 INFO    ] Launching Daemon at Tue Aug 25 13:00:24 IST 2026
[2026-08-25 13:00:24,836.836 INFO    ] ================================================
[2026-08-25 13:00:25,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:00:25
[2026-08-25 13:00:26,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:00:26,367.367 INFO    ] Initializing speech engine...
[2026-08-25 13:00:26,376.376 INFO    ] 2026-08-25 13:00:26
[2026-08-25 13:00:26,642.642 INFO    ] 2026-08-25 13:00:26
[2026-08-25 13:00:26,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:00:26,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:00:26,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:00:27,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:00:27,154.154 INFO    ] time= 25/08/2026 13:00:27
[2026-08-25 13:00:27,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:00:27,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:00:27,365.365 INFO    ] No existing commands found in stream
[2026-08-25 13:00:32,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:00:32,380.380 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 13:00:36,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:00:36,136.136 INFO    ] Checking for system updates...
[2026-08-25 13:00:36,177.177 INFO    ] 200
[2026-08-25 13:00:36,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:36,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:00:36,233.233 INFO    ] No update needed
[2026-08-25 13:00:36,236.236 INFO    ] Checking for camera pi updates...
[2026-08-25 13:00:36,273.273 INFO    ] 200
[2026-08-25 13:00:36,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:36,316.316 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:00:36,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:00:36,374.374 INFO    ] No camera update needed
[2026-08-25 13:00:36,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:00:36,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:00:36,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:00:36,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:00:38,437.437 INFO    ] ================================================
[2026-08-25 13:00:38,453.453 INFO    ] Launching Daemon at Tue Aug 25 13:00:38 IST 2026
[2026-08-25 13:00:38,463.463 INFO    ] ================================================
[2026-08-25 13:00:39,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:00:39
[2026-08-25 13:00:39,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:00:39,944.944 INFO    ] Initializing speech engine...
[2026-08-25 13:00:39,953.953 INFO    ] 2026-08-25 13:00:39
[2026-08-25 13:00:40,203.203 INFO    ] 2026-08-25 13:00:40
[2026-08-25 13:00:40,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:00:40,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:00:40,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:00:40,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:00:40,683.683 INFO    ] time= 25/08/2026 13:00:40
[2026-08-25 13:00:40,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:00:40,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:00:40,905.905 INFO    ] No existing commands found in stream
[2026-08-25 13:00:45,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:00:45,932.932 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 13:00:47,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:00:47,176.176 INFO    ] Checking for system updates...
[2026-08-25 13:00:47,211.211 INFO    ] 200
[2026-08-25 13:00:47,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:47,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:00:47,272.272 INFO    ] No update needed
[2026-08-25 13:00:47,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 13:00:47,308.308 INFO    ] 200
[2026-08-25 13:00:47,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:00:47,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:00:47,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:00:47,402.402 INFO    ] No camera update needed
[2026-08-25 13:00:47,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:00:47,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:00:47,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:00:47,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:00:49,456.456 INFO    ] ================================================
[2026-08-25 13:00:49,472.472 INFO    ] Launching Daemon at Tue Aug 25 13:00:49 IST 2026
[2026-08-25 13:00:49,483.483 INFO    ] ================================================
[2026-08-25 13:00:50,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:00:50
[2026-08-25 13:00:50,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:00:50,884.884 INFO    ] Initializing speech engine...
[2026-08-25 13:00:50,907.907 INFO    ] 2026-08-25 13:00:50
[2026-08-25 13:00:51,160.160 INFO    ] 2026-08-25 13:00:51
[2026-08-25 13:00:51,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:00:51,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:00:51,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:00:51,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:00:51,637.637 INFO    ] time= 25/08/2026 13:00:51
[2026-08-25 13:00:51,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:00:51,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:00:51,844.844 INFO    ] No existing commands found in stream
[2026-08-25 13:00:56,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:00:56,870.870 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 13:01:00,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:01:00,403.403 INFO    ] Checking for system updates...
[2026-08-25 13:01:00,439.439 INFO    ] 200
[2026-08-25 13:01:00,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:00,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:01:00,506.506 INFO    ] No update needed
[2026-08-25 13:01:00,509.509 INFO    ] Checking for camera pi updates...
[2026-08-25 13:01:00,547.547 INFO    ] 200
[2026-08-25 13:01:00,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:00,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:01:00,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:01:00,647.647 INFO    ] No camera update needed
[2026-08-25 13:01:00,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:01:00,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:01:00,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:01:00,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:01:02,707.707 INFO    ] ================================================
[2026-08-25 13:01:02,725.725 INFO    ] Launching Daemon at Tue Aug 25 13:01:02 IST 2026
[2026-08-25 13:01:02,737.737 INFO    ] ================================================
[2026-08-25 13:01:03,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:01:03
[2026-08-25 13:01:03,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:01:04,235.235 INFO    ] Initializing speech engine...
[2026-08-25 13:01:04,241.241 INFO    ] 2026-08-25 13:01:04
[2026-08-25 13:01:04,518.518 INFO    ] 2026-08-25 13:01:04
[2026-08-25 13:01:04,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:01:04,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:01:04,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:01:04,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:01:04,895.895 INFO    ] time= 25/08/2026 13:01:04
[2026-08-25 13:01:04,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:01:04,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:01:05,058.058 INFO    ] No existing commands found in stream
[2026-08-25 13:01:10,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:01:10,086.086 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 13:01:14,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:01:14,440.440 INFO    ] Checking for system updates...
[2026-08-25 13:01:14,475.475 INFO    ] 200
[2026-08-25 13:01:14,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:14,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:01:14,534.534 INFO    ] No update needed
[2026-08-25 13:01:14,537.537 INFO    ] Checking for camera pi updates...
[2026-08-25 13:01:14,570.570 INFO    ] 200
[2026-08-25 13:01:14,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:14,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:01:14,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:01:14,759.759 INFO    ] No camera update needed
[2026-08-25 13:01:14,761.761 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:01:14,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:01:14,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:01:14,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:01:16,815.815 INFO    ] ================================================
[2026-08-25 13:01:16,830.830 INFO    ] Launching Daemon at Tue Aug 25 13:01:16 IST 2026
[2026-08-25 13:01:16,841.841 INFO    ] ================================================
[2026-08-25 13:01:17,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:01:17
[2026-08-25 13:01:17,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:01:18,252.252 INFO    ] Initializing speech engine...
[2026-08-25 13:01:18,260.260 INFO    ] 2026-08-25 13:01:18
[2026-08-25 13:01:18,557.557 INFO    ] 2026-08-25 13:01:18
[2026-08-25 13:01:18,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:01:18,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:01:18,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:01:18,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:01:18,915.915 INFO    ] time= 25/08/2026 13:01:18
[2026-08-25 13:01:18,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:01:18,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:01:19,049.049 INFO    ] No existing commands found in stream
[2026-08-25 13:01:24,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:01:24,080.080 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 13:01:26,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:01:26,898.898 INFO    ] Checking for system updates...
[2026-08-25 13:01:26,938.938 INFO    ] 200
[2026-08-25 13:01:26,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:26,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:01:27,000.000 INFO    ] No update needed
[2026-08-25 13:01:27,002.002 INFO    ] Checking for camera pi updates...
[2026-08-25 13:01:27,035.035 INFO    ] 200
[2026-08-25 13:01:27,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:27,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:01:27,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:01:27,134.134 INFO    ] No camera update needed
[2026-08-25 13:01:27,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:01:27,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:01:27,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:01:27,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:01:29,189.189 INFO    ] ================================================
[2026-08-25 13:01:29,204.204 INFO    ] Launching Daemon at Tue Aug 25 13:01:29 IST 2026
[2026-08-25 13:01:29,215.215 INFO    ] ================================================
[2026-08-25 13:01:29,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:01:29
[2026-08-25 13:01:30,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:01:30,649.649 INFO    ] Initializing speech engine...
[2026-08-25 13:01:30,665.665 INFO    ] 2026-08-25 13:01:30
[2026-08-25 13:01:30,939.939 INFO    ] 2026-08-25 13:01:30
[2026-08-25 13:01:30,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:01:31,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:01:31,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:01:31,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:01:31,364.364 INFO    ] time= 25/08/2026 13:01:31
[2026-08-25 13:01:31,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:01:31,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:01:31,498.498 INFO    ] No existing commands found in stream
[2026-08-25 13:01:36,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:01:36,520.520 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 13:01:40,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:01:40,686.686 INFO    ] Checking for system updates...
[2026-08-25 13:01:40,721.721 INFO    ] 200
[2026-08-25 13:01:40,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:40,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:01:40,787.787 INFO    ] No update needed
[2026-08-25 13:01:40,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 13:01:40,822.822 INFO    ] 200
[2026-08-25 13:01:40,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:40,870.870 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:01:40,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:01:40,930.930 INFO    ] No camera update needed
[2026-08-25 13:01:40,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:01:40,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:01:40,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:01:40,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:01:42,986.986 INFO    ] ================================================
[2026-08-25 13:01:43,001.001 INFO    ] Launching Daemon at Tue Aug 25 13:01:42 IST 2026
[2026-08-25 13:01:43,012.012 INFO    ] ================================================
[2026-08-25 13:01:43,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:01:43
[2026-08-25 13:01:44,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:01:44,662.662 INFO    ] Initializing speech engine...
[2026-08-25 13:01:44,673.673 INFO    ] 2026-08-25 13:01:44
[2026-08-25 13:01:44,960.960 INFO    ] 2026-08-25 13:01:44
[2026-08-25 13:01:45,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:01:45,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:01:45,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:01:45,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:01:45,479.479 INFO    ] time= 25/08/2026 13:01:45
[2026-08-25 13:01:45,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:01:45,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:01:45,668.668 INFO    ] No existing commands found in stream
[2026-08-25 13:01:50,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:01:50,687.687 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 13:01:52,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:01:52,749.749 INFO    ] Checking for system updates...
[2026-08-25 13:01:52,790.790 INFO    ] 200
[2026-08-25 13:01:52,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:52,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:01:52,850.850 INFO    ] No update needed
[2026-08-25 13:01:52,853.853 INFO    ] Checking for camera pi updates...
[2026-08-25 13:01:52,888.888 INFO    ] 200
[2026-08-25 13:01:52,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:01:52,933.933 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:01:52,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:01:52,980.980 INFO    ] No camera update needed
[2026-08-25 13:01:52,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:01:52,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:01:52,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:01:52,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:01:55,039.039 INFO    ] ================================================
[2026-08-25 13:01:55,054.054 INFO    ] Launching Daemon at Tue Aug 25 13:01:55 IST 2026
[2026-08-25 13:01:55,065.065 INFO    ] ================================================
[2026-08-25 13:01:55,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:01:55
[2026-08-25 13:01:56,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:01:56,519.519 INFO    ] Initializing speech engine...
[2026-08-25 13:01:56,525.525 INFO    ] 2026-08-25 13:01:56
[2026-08-25 13:01:56,772.772 INFO    ] 2026-08-25 13:01:56
[2026-08-25 13:01:56,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:01:57,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:01:57,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:01:57,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:01:57,275.275 INFO    ] time= 25/08/2026 13:01:57
[2026-08-25 13:01:57,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:01:57,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:01:57,525.525 INFO    ] No existing commands found in stream
[2026-08-25 13:02:02,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:02:02,561.561 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 13:02:03,908.908 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:02:03,911.911 INFO    ] Checking for system updates...
[2026-08-25 13:02:03,946.946 INFO    ] 200
[2026-08-25 13:02:03,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:04,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:02:04,003.003 INFO    ] No update needed
[2026-08-25 13:02:04,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 13:02:04,038.038 INFO    ] 200
[2026-08-25 13:02:04,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:04,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:02:04,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:02:04,139.139 INFO    ] No camera update needed
[2026-08-25 13:02:04,141.141 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:02:04,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:02:04,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:02:04,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:02:06,195.195 INFO    ] ================================================
[2026-08-25 13:02:06,211.211 INFO    ] Launching Daemon at Tue Aug 25 13:02:06 IST 2026
[2026-08-25 13:02:06,221.221 INFO    ] ================================================
[2026-08-25 13:02:06,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:02:06
[2026-08-25 13:02:07,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:02:07,687.687 INFO    ] Initializing speech engine...
[2026-08-25 13:02:07,694.694 INFO    ] 2026-08-25 13:02:07
[2026-08-25 13:02:07,956.956 INFO    ] 2026-08-25 13:02:07
[2026-08-25 13:02:08,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:02:08,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:02:08,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:02:08,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:02:08,429.429 INFO    ] time= 25/08/2026 13:02:08
[2026-08-25 13:02:08,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:02:08,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:02:08,642.642 INFO    ] No existing commands found in stream
[2026-08-25 13:02:13,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:02:13,665.665 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 13:02:14,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:02:14,167.167 INFO    ] Checking for system updates...
[2026-08-25 13:02:14,206.206 INFO    ] 200
[2026-08-25 13:02:14,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:14,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:02:14,263.263 INFO    ] No update needed
[2026-08-25 13:02:14,266.266 INFO    ] Checking for camera pi updates...
[2026-08-25 13:02:14,302.302 INFO    ] 200
[2026-08-25 13:02:14,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:14,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:02:14,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:02:14,403.403 INFO    ] No camera update needed
[2026-08-25 13:02:14,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:02:14,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:02:14,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:02:14,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:02:16,465.465 INFO    ] ================================================
[2026-08-25 13:02:16,480.480 INFO    ] Launching Daemon at Tue Aug 25 13:02:16 IST 2026
[2026-08-25 13:02:16,491.491 INFO    ] ================================================
[2026-08-25 13:02:17,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:02:17
[2026-08-25 13:02:17,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:02:17,908.908 INFO    ] Initializing speech engine...
[2026-08-25 13:02:17,923.923 INFO    ] 2026-08-25 13:02:17
[2026-08-25 13:02:18,190.190 INFO    ] 2026-08-25 13:02:18
[2026-08-25 13:02:18,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:02:18,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:02:18,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:02:18,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:02:18,557.557 INFO    ] time= 25/08/2026 13:02:18
[2026-08-25 13:02:18,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:02:18,597.597 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:02:18,681.681 INFO    ] No existing commands found in stream
[2026-08-25 13:02:23,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:02:23,698.698 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 13:02:26,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:02:26,298.298 INFO    ] Checking for system updates...
[2026-08-25 13:02:26,333.333 INFO    ] 200
[2026-08-25 13:02:26,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:26,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:02:26,394.394 INFO    ] No update needed
[2026-08-25 13:02:26,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 13:02:26,430.430 INFO    ] 200
[2026-08-25 13:02:26,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:26,473.473 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:02:26,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:02:26,523.523 INFO    ] No camera update needed
[2026-08-25 13:02:26,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:02:26,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:02:26,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:02:26,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:02:28,578.578 INFO    ] ================================================
[2026-08-25 13:02:28,593.593 INFO    ] Launching Daemon at Tue Aug 25 13:02:28 IST 2026
[2026-08-25 13:02:28,604.604 INFO    ] ================================================
[2026-08-25 13:02:29,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:02:29
[2026-08-25 13:02:29,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:02:30,042.042 INFO    ] Initializing speech engine...
[2026-08-25 13:02:30,048.048 INFO    ] 2026-08-25 13:02:30
[2026-08-25 13:02:30,306.306 INFO    ] 2026-08-25 13:02:30
[2026-08-25 13:02:30,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:02:30,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:02:30,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:02:30,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:02:30,804.804 INFO    ] time= 25/08/2026 13:02:30
[2026-08-25 13:02:30,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:02:30,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:02:31,017.017 INFO    ] No existing commands found in stream
[2026-08-25 13:02:36,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:02:36,045.045 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 13:02:39,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:02:39,069.069 INFO    ] Checking for system updates...
[2026-08-25 13:02:39,105.105 INFO    ] 200
[2026-08-25 13:02:39,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:39,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:02:39,169.169 INFO    ] No update needed
[2026-08-25 13:02:39,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 13:02:39,209.209 INFO    ] 200
[2026-08-25 13:02:39,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:39,251.251 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:02:39,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:02:39,308.308 INFO    ] No camera update needed
[2026-08-25 13:02:39,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:02:39,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:02:39,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:02:39,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:02:41,363.363 INFO    ] ================================================
[2026-08-25 13:02:41,379.379 INFO    ] Launching Daemon at Tue Aug 25 13:02:41 IST 2026
[2026-08-25 13:02:41,390.390 INFO    ] ================================================
[2026-08-25 13:02:41,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:02:41
[2026-08-25 13:02:42,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:02:42,847.847 INFO    ] Initializing speech engine...
[2026-08-25 13:02:42,854.854 INFO    ] 2026-08-25 13:02:42
[2026-08-25 13:02:43,111.111 INFO    ] 2026-08-25 13:02:43
[2026-08-25 13:02:43,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:02:43,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:02:43,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:02:43,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:02:43,580.580 INFO    ] time= 25/08/2026 13:02:43
[2026-08-25 13:02:43,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:02:43,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:02:43,809.809 INFO    ] No existing commands found in stream
[2026-08-25 13:02:48,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:02:48,827.827 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 13:02:49,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:02:49,821.821 INFO    ] Checking for system updates...
[2026-08-25 13:02:49,858.858 INFO    ] 200
[2026-08-25 13:02:49,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:49,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:02:49,922.922 INFO    ] No update needed
[2026-08-25 13:02:49,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 13:02:49,961.961 INFO    ] 200
[2026-08-25 13:02:49,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:02:50,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:02:50,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:02:50,070.070 INFO    ] No camera update needed
[2026-08-25 13:02:50,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:02:50,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:02:50,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:02:50,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:02:52,126.126 INFO    ] ================================================
[2026-08-25 13:02:52,141.141 INFO    ] Launching Daemon at Tue Aug 25 13:02:52 IST 2026
[2026-08-25 13:02:52,153.153 INFO    ] ================================================
[2026-08-25 13:02:52,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:02:52
[2026-08-25 13:02:53,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:02:53,727.727 INFO    ] Initializing speech engine...
[2026-08-25 13:02:53,735.735 INFO    ] 2026-08-25 13:02:53
[2026-08-25 13:02:54,003.003 INFO    ] 2026-08-25 13:02:53
[2026-08-25 13:02:54,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:02:54,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:02:54,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:02:54,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:02:54,491.491 INFO    ] time= 25/08/2026 13:02:54
[2026-08-25 13:02:54,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:02:54,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:02:54,728.728 INFO    ] No existing commands found in stream
[2026-08-25 13:02:59,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:02:59,748.748 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 13:03:03,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:03:03,681.681 INFO    ] Checking for system updates...
[2026-08-25 13:03:03,718.718 INFO    ] 200
[2026-08-25 13:03:03,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:03,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:03,778.778 INFO    ] No update needed
[2026-08-25 13:03:03,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 13:03:03,815.815 INFO    ] 200
[2026-08-25 13:03:03,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:03,858.858 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:03:03,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:03,911.911 INFO    ] No camera update needed
[2026-08-25 13:03:03,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:03:03,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:03:03,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:03:03,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:03:05,969.969 INFO    ] ================================================
[2026-08-25 13:03:05,985.985 INFO    ] Launching Daemon at Tue Aug 25 13:03:05 IST 2026
[2026-08-25 13:03:06,996.996 INFO    ] ================================================
[2026-08-25 13:03:06,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:03:06
[2026-08-25 13:03:07,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:03:07,527.527 INFO    ] Initializing speech engine...
[2026-08-25 13:03:07,540.540 INFO    ] 2026-08-25 13:03:07
[2026-08-25 13:03:07,848.848 INFO    ] 2026-08-25 13:03:07
[2026-08-25 13:03:07,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:03:08,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:03:08,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:03:08,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:03:08,357.357 INFO    ] time= 25/08/2026 13:03:08
[2026-08-25 13:03:08,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:03:08,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:03:08,521.521 INFO    ] No existing commands found in stream
[2026-08-25 13:03:13,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:03:13,550.550 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 13:03:15,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:03:15,391.391 INFO    ] Checking for system updates...
[2026-08-25 13:03:15,431.431 INFO    ] 200
[2026-08-25 13:03:15,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:15,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:15,490.490 INFO    ] No update needed
[2026-08-25 13:03:15,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 13:03:15,527.527 INFO    ] 200
[2026-08-25 13:03:15,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:15,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:03:15,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:15,633.633 INFO    ] No camera update needed
[2026-08-25 13:03:15,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:03:15,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:03:15,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:03:15,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:03:17,689.689 INFO    ] ================================================
[2026-08-25 13:03:17,705.705 INFO    ] Launching Daemon at Tue Aug 25 13:03:17 IST 2026
[2026-08-25 13:03:17,716.716 INFO    ] ================================================
[2026-08-25 13:03:18,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:03:18
[2026-08-25 13:03:18,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:03:19,157.157 INFO    ] Initializing speech engine...
[2026-08-25 13:03:19,163.163 INFO    ] 2026-08-25 13:03:19
[2026-08-25 13:03:19,423.423 INFO    ] 2026-08-25 13:03:19
[2026-08-25 13:03:19,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:03:19,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:03:19,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:03:19,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:03:19,969.969 INFO    ] time= 25/08/2026 13:03:19
[2026-08-25 13:03:19,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:03:19,996.996 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:03:20,163.163 INFO    ] No existing commands found in stream
[2026-08-25 13:03:25,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:03:25,197.197 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 13:03:27,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:03:27,777.777 INFO    ] Checking for system updates...
[2026-08-25 13:03:27,816.816 INFO    ] 200
[2026-08-25 13:03:27,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:27,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:27,878.878 INFO    ] No update needed
[2026-08-25 13:03:27,881.881 INFO    ] Checking for camera pi updates...
[2026-08-25 13:03:27,914.914 INFO    ] 200
[2026-08-25 13:03:27,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:27,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:03:28,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:28,119.119 INFO    ] No camera update needed
[2026-08-25 13:03:28,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:03:28,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:03:28,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:03:28,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:03:30,174.174 INFO    ] ================================================
[2026-08-25 13:03:30,190.190 INFO    ] Launching Daemon at Tue Aug 25 13:03:30 IST 2026
[2026-08-25 13:03:30,201.201 INFO    ] ================================================
[2026-08-25 13:03:30,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:03:30
[2026-08-25 13:03:31,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:03:31,619.619 INFO    ] Initializing speech engine...
[2026-08-25 13:03:31,635.635 INFO    ] 2026-08-25 13:03:31
[2026-08-25 13:03:31,913.913 INFO    ] 2026-08-25 13:03:31
[2026-08-25 13:03:31,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:03:32,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:03:32,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:03:32,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:03:32,289.289 INFO    ] time= 25/08/2026 13:03:32
[2026-08-25 13:03:32,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:03:32,318.318 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:03:32,444.444 INFO    ] No existing commands found in stream
[2026-08-25 13:03:37,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:03:37,458.458 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 13:03:42,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:03:42,129.129 INFO    ] Checking for system updates...
[2026-08-25 13:03:42,165.165 INFO    ] 200
[2026-08-25 13:03:42,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:42,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:03:42,222.222 INFO    ] No update needed
[2026-08-25 13:03:42,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 13:03:42,258.258 INFO    ] 200
[2026-08-25 13:03:42,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:42,300.300 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:03:42,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:03:42,348.348 INFO    ] No camera update needed
[2026-08-25 13:03:42,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:03:42,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:03:42,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:03:42,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:03:44,403.403 INFO    ] ================================================
[2026-08-25 13:03:44,418.418 INFO    ] Launching Daemon at Tue Aug 25 13:03:44 IST 2026
[2026-08-25 13:03:44,428.428 INFO    ] ================================================
[2026-08-25 13:03:44,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:03:44
[2026-08-25 13:03:45,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:03:45,829.829 INFO    ] Initializing speech engine...
[2026-08-25 13:03:45,836.836 INFO    ] 2026-08-25 13:03:45
[2026-08-25 13:03:46,124.124 INFO    ] 2026-08-25 13:03:46
[2026-08-25 13:03:46,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:03:46,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:03:46,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:03:46,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:03:46,531.531 INFO    ] time= 25/08/2026 13:03:46
[2026-08-25 13:03:46,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:03:46,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:03:46,612.612 INFO    ] No existing commands found in stream
[2026-08-25 13:03:51,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:03:51,628.628 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 13:03:55,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:03:55,614.614 INFO    ] Checking for system updates...
[2026-08-25 13:03:55,649.649 INFO    ] 200
[2026-08-25 13:03:55,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:55,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:55,706.706 INFO    ] No update needed
[2026-08-25 13:03:55,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 13:03:55,742.742 INFO    ] 200
[2026-08-25 13:03:55,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:03:55,788.788 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:03:55,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:03:55,843.843 INFO    ] No camera update needed
[2026-08-25 13:03:55,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:03:55,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:03:55,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:03:55,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:03:57,898.898 INFO    ] ================================================
[2026-08-25 13:03:57,913.913 INFO    ] Launching Daemon at Tue Aug 25 13:03:57 IST 2026
[2026-08-25 13:03:57,924.924 INFO    ] ================================================
[2026-08-25 13:03:58,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:03:58
[2026-08-25 13:03:59,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:03:59,465.465 INFO    ] Initializing speech engine...
[2026-08-25 13:03:59,473.473 INFO    ] 2026-08-25 13:03:59
[2026-08-25 13:03:59,748.748 INFO    ] 2026-08-25 13:03:59
[2026-08-25 13:03:59,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:04:00,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:04:00,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:04:00,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:04:00,306.306 INFO    ] time= 25/08/2026 13:04:00
[2026-08-25 13:04:00,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:04:00,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:04:00,439.439 INFO    ] No existing commands found in stream
[2026-08-25 13:04:05,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:04:05,478.478 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 13:04:09,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:04:09,764.764 INFO    ] Checking for system updates...
[2026-08-25 13:04:09,802.802 INFO    ] 200
[2026-08-25 13:04:09,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:09,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:09,866.866 INFO    ] No update needed
[2026-08-25 13:04:09,869.869 INFO    ] Checking for camera pi updates...
[2026-08-25 13:04:09,906.906 INFO    ] 200
[2026-08-25 13:04:09,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:09,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:04:10,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:10,019.019 INFO    ] No camera update needed
[2026-08-25 13:04:10,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:04:10,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:04:10,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:04:10,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:04:12,078.078 INFO    ] ================================================
[2026-08-25 13:04:12,093.093 INFO    ] Launching Daemon at Tue Aug 25 13:04:12 IST 2026
[2026-08-25 13:04:12,104.104 INFO    ] ================================================
[2026-08-25 13:04:12,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:04:12
[2026-08-25 13:04:13,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:04:13,708.708 INFO    ] Initializing speech engine...
[2026-08-25 13:04:13,718.718 INFO    ] 2026-08-25 13:04:13
[2026-08-25 13:04:13,992.992 INFO    ] 2026-08-25 13:04:13
[2026-08-25 13:04:14,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:04:14,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:04:14,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:04:14,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:04:14,507.507 INFO    ] time= 25/08/2026 13:04:14
[2026-08-25 13:04:14,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:04:14,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:04:14,715.715 INFO    ] No existing commands found in stream
[2026-08-25 13:04:19,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:04:19,737.737 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 13:04:23,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:04:23,581.581 INFO    ] Checking for system updates...
[2026-08-25 13:04:23,618.618 INFO    ] 200
[2026-08-25 13:04:23,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:23,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:23,677.677 INFO    ] No update needed
[2026-08-25 13:04:23,680.680 INFO    ] Checking for camera pi updates...
[2026-08-25 13:04:23,714.714 INFO    ] 200
[2026-08-25 13:04:23,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:23,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:04:23,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:23,830.830 INFO    ] No camera update needed
[2026-08-25 13:04:23,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:04:23,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:04:23,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:04:23,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:04:25,884.884 INFO    ] ================================================
[2026-08-25 13:04:25,900.900 INFO    ] Launching Daemon at Tue Aug 25 13:04:25 IST 2026
[2026-08-25 13:04:25,911.911 INFO    ] ================================================
[2026-08-25 13:04:26,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:04:26
[2026-08-25 13:04:27,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:04:27,320.320 INFO    ] Initializing speech engine...
[2026-08-25 13:04:27,335.335 INFO    ] 2026-08-25 13:04:27
[2026-08-25 13:04:27,590.590 INFO    ] 2026-08-25 13:04:27
[2026-08-25 13:04:27,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:04:27,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:04:27,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:04:28,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:04:28,069.069 INFO    ] time= 25/08/2026 13:04:28
[2026-08-25 13:04:28,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:04:28,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:04:28,241.241 INFO    ] No existing commands found in stream
[2026-08-25 13:04:33,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:04:33,281.281 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 13:04:34,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:04:34,101.101 INFO    ] Checking for system updates...
[2026-08-25 13:04:34,136.136 INFO    ] 200
[2026-08-25 13:04:34,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:34,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:34,195.195 INFO    ] No update needed
[2026-08-25 13:04:34,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 13:04:34,235.235 INFO    ] 200
[2026-08-25 13:04:34,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:34,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:04:34,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:34,324.324 INFO    ] No camera update needed
[2026-08-25 13:04:34,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:04:34,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:04:34,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:04:34,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:04:36,379.379 INFO    ] ================================================
[2026-08-25 13:04:36,395.395 INFO    ] Launching Daemon at Tue Aug 25 13:04:36 IST 2026
[2026-08-25 13:04:36,405.405 INFO    ] ================================================
[2026-08-25 13:04:36,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:04:36
[2026-08-25 13:04:37,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:04:37,805.805 INFO    ] Initializing speech engine...
[2026-08-25 13:04:37,819.819 INFO    ] 2026-08-25 13:04:37
[2026-08-25 13:04:38,084.084 INFO    ] 2026-08-25 13:04:38
[2026-08-25 13:04:38,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:04:38,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:04:38,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:04:38,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:04:38,459.459 INFO    ] time= 25/08/2026 13:04:38
[2026-08-25 13:04:38,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:04:38,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:04:38,639.639 INFO    ] No existing commands found in stream
[2026-08-25 13:04:43,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:04:43,667.667 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 13:04:47,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:04:47,345.345 INFO    ] Checking for system updates...
[2026-08-25 13:04:47,380.380 INFO    ] 200
[2026-08-25 13:04:47,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:47,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:47,442.442 INFO    ] No update needed
[2026-08-25 13:04:47,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 13:04:47,478.478 INFO    ] 200
[2026-08-25 13:04:47,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:47,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:04:47,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:04:47,591.591 INFO    ] No camera update needed
[2026-08-25 13:04:47,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:04:47,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:04:47,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:04:47,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:04:49,650.650 INFO    ] ================================================
[2026-08-25 13:04:49,666.666 INFO    ] Launching Daemon at Tue Aug 25 13:04:49 IST 2026
[2026-08-25 13:04:49,677.677 INFO    ] ================================================
[2026-08-25 13:04:50,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:04:50
[2026-08-25 13:04:50,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:04:51,128.128 INFO    ] Initializing speech engine...
[2026-08-25 13:04:51,138.138 INFO    ] 2026-08-25 13:04:51
[2026-08-25 13:04:51,399.399 INFO    ] 2026-08-25 13:04:51
[2026-08-25 13:04:51,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:04:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:04:51,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:04:51,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:04:51,893.893 INFO    ] time= 25/08/2026 13:04:51
[2026-08-25 13:04:51,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:04:51,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:04:52,079.079 INFO    ] No existing commands found in stream
[2026-08-25 13:04:57,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:04:57,107.107 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 13:04:58,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:04:58,003.003 INFO    ] Checking for system updates...
[2026-08-25 13:04:58,040.040 INFO    ] 200
[2026-08-25 13:04:58,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:58,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:04:58,099.099 INFO    ] No update needed
[2026-08-25 13:04:58,102.102 INFO    ] Checking for camera pi updates...
[2026-08-25 13:04:58,136.136 INFO    ] 200
[2026-08-25 13:04:58,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:04:58,180.180 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:04:58,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:04:58,235.235 INFO    ] No camera update needed
[2026-08-25 13:04:58,238.238 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:04:58,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:04:58,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:04:58,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:05:00,297.297 INFO    ] ================================================
[2026-08-25 13:05:00,312.312 INFO    ] Launching Daemon at Tue Aug 25 13:05:00 IST 2026
[2026-08-25 13:05:00,323.323 INFO    ] ================================================
[2026-08-25 13:05:00,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:05:00
[2026-08-25 13:05:01,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:05:01,760.760 INFO    ] Initializing speech engine...
[2026-08-25 13:05:01,764.764 INFO    ] 2026-08-25 13:05:01
[2026-08-25 13:05:02,333.333 INFO    ] 2026-08-25 13:05:02
[2026-08-25 13:05:02,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:05:02,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:05:02,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:05:02,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:05:02,784.784 INFO    ] time= 25/08/2026 13:05:02
[2026-08-25 13:05:02,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:05:02,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:05:02,941.941 INFO    ] No existing commands found in stream
[2026-08-25 13:05:07,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:05:07,957.957 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 13:05:10,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:05:10,438.438 INFO    ] Checking for system updates...
[2026-08-25 13:05:10,474.474 INFO    ] 200
[2026-08-25 13:05:10,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:10,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:05:10,531.531 INFO    ] No update needed
[2026-08-25 13:05:10,534.534 INFO    ] Checking for camera pi updates...
[2026-08-25 13:05:10,567.567 INFO    ] 200
[2026-08-25 13:05:10,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:10,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:05:10,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:05:10,660.660 INFO    ] No camera update needed
[2026-08-25 13:05:10,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:05:10,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:05:10,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:05:10,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:05:12,715.715 INFO    ] ================================================
[2026-08-25 13:05:12,730.730 INFO    ] Launching Daemon at Tue Aug 25 13:05:12 IST 2026
[2026-08-25 13:05:12,740.740 INFO    ] ================================================
[2026-08-25 13:05:13,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:05:13
[2026-08-25 13:05:13,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:05:14,182.182 INFO    ] Initializing speech engine...
[2026-08-25 13:05:14,191.191 INFO    ] 2026-08-25 13:05:14
[2026-08-25 13:05:14,440.440 INFO    ] 2026-08-25 13:05:14
[2026-08-25 13:05:14,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:05:14,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:05:14,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:05:14,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:05:14,939.939 INFO    ] time= 25/08/2026 13:05:14
[2026-08-25 13:05:14,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:05:15,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:05:15,127.127 INFO    ] No existing commands found in stream
[2026-08-25 13:05:20,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:05:20,155.155 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 13:05:21,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:05:21,965.965 INFO    ] Checking for system updates...
[2026-08-25 13:05:22,001.001 INFO    ] 200
[2026-08-25 13:05:22,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:22,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:05:22,059.059 INFO    ] No update needed
[2026-08-25 13:05:22,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 13:05:22,095.095 INFO    ] 200
[2026-08-25 13:05:22,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:22,138.138 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:05:22,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:05:22,185.185 INFO    ] No camera update needed
[2026-08-25 13:05:22,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:05:22,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:05:22,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:05:22,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:05:24,239.239 INFO    ] ================================================
[2026-08-25 13:05:24,254.254 INFO    ] Launching Daemon at Tue Aug 25 13:05:24 IST 2026
[2026-08-25 13:05:24,264.264 INFO    ] ================================================
[2026-08-25 13:05:24,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:05:24
[2026-08-25 13:05:25,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:05:25,683.683 INFO    ] Initializing speech engine...
[2026-08-25 13:05:25,692.692 INFO    ] 2026-08-25 13:05:25
[2026-08-25 13:05:25,941.941 INFO    ] 2026-08-25 13:05:25
[2026-08-25 13:05:25,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:05:26,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:05:26,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:05:26,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:05:26,315.315 INFO    ] time= 25/08/2026 13:05:26
[2026-08-25 13:05:26,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:05:26,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:05:26,479.479 INFO    ] No existing commands found in stream
[2026-08-25 13:05:31,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:05:31,507.507 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 13:05:32,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:05:32,411.411 INFO    ] Checking for system updates...
[2026-08-25 13:05:32,456.456 INFO    ] 200
[2026-08-25 13:05:32,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:32,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:05:32,529.529 INFO    ] No update needed
[2026-08-25 13:05:32,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 13:05:32,576.576 INFO    ] 200
[2026-08-25 13:05:32,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:32,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:05:32,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:05:32,796.796 INFO    ] No camera update needed
[2026-08-25 13:05:32,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:05:32,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:05:32,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:05:32,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:05:34,854.854 INFO    ] ================================================
[2026-08-25 13:05:34,868.868 INFO    ] Launching Daemon at Tue Aug 25 13:05:34 IST 2026
[2026-08-25 13:05:34,879.879 INFO    ] ================================================
[2026-08-25 13:05:35,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:05:35
[2026-08-25 13:05:36,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:05:36,324.324 INFO    ] Initializing speech engine...
[2026-08-25 13:05:36,333.333 INFO    ] 2026-08-25 13:05:36
[2026-08-25 13:05:36,594.594 INFO    ] 2026-08-25 13:05:36
[2026-08-25 13:05:36,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:05:36,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:05:36,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:05:37,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:05:37,071.071 INFO    ] time= 25/08/2026 13:05:37
[2026-08-25 13:05:37,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:05:37,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:05:37,280.280 INFO    ] No existing commands found in stream
[2026-08-25 13:05:42,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:05:42,304.304 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 13:05:45,760.760 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:05:45,763.763 INFO    ] Checking for system updates...
[2026-08-25 13:05:45,799.799 INFO    ] 200
[2026-08-25 13:05:45,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:45,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:05:45,856.856 INFO    ] No update needed
[2026-08-25 13:05:45,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 13:05:45,895.895 INFO    ] 200
[2026-08-25 13:05:45,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:45,942.942 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:05:45,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:05:45,992.992 INFO    ] No camera update needed
[2026-08-25 13:05:45,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:05:45,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:05:46,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:05:46,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:05:48,047.047 INFO    ] ================================================
[2026-08-25 13:05:48,062.062 INFO    ] Launching Daemon at Tue Aug 25 13:05:48 IST 2026
[2026-08-25 13:05:48,072.072 INFO    ] ================================================
[2026-08-25 13:05:48,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:05:48
[2026-08-25 13:05:49,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:05:49,523.523 INFO    ] Initializing speech engine...
[2026-08-25 13:05:49,529.529 INFO    ] 2026-08-25 13:05:49
[2026-08-25 13:05:49,789.789 INFO    ] 2026-08-25 13:05:49
[2026-08-25 13:05:49,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:05:50,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:05:50,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:05:50,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:05:50,272.272 INFO    ] time= 25/08/2026 13:05:50
[2026-08-25 13:05:50,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:05:50,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:05:50,487.487 INFO    ] No existing commands found in stream
[2026-08-25 13:05:55,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:05:55,503.503 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 13:05:58,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:05:58,364.364 INFO    ] Checking for system updates...
[2026-08-25 13:05:58,401.401 INFO    ] 200
[2026-08-25 13:05:58,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:58,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:05:58,466.466 INFO    ] No update needed
[2026-08-25 13:05:58,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 13:05:58,503.503 INFO    ] 200
[2026-08-25 13:05:58,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:05:58,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:05:58,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:05:58,602.602 INFO    ] No camera update needed
[2026-08-25 13:05:58,605.605 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:05:58,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:05:58,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:05:58,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:06:00,659.659 INFO    ] ================================================
[2026-08-25 13:06:00,674.674 INFO    ] Launching Daemon at Tue Aug 25 13:06:00 IST 2026
[2026-08-25 13:06:00,684.684 INFO    ] ================================================
[2026-08-25 13:06:01,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:06:01
[2026-08-25 13:06:02,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:06:02,306.306 INFO    ] Initializing speech engine...
[2026-08-25 13:06:02,314.314 INFO    ] 2026-08-25 13:06:02
[2026-08-25 13:06:02,608.608 INFO    ] 2026-08-25 13:06:02
[2026-08-25 13:06:02,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:06:02,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:06:02,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:06:03,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:06:03,074.074 INFO    ] time= 25/08/2026 13:06:03
[2026-08-25 13:06:03,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:06:03,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:06:03,163.163 INFO    ] No existing commands found in stream
[2026-08-25 13:06:08,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:06:08,177.177 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 13:06:10,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:06:10,970.970 INFO    ] Checking for system updates...
[2026-08-25 13:06:11,006.006 INFO    ] 200
[2026-08-25 13:06:11,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:11,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:06:11,072.072 INFO    ] No update needed
[2026-08-25 13:06:11,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 13:06:11,113.113 INFO    ] 200
[2026-08-25 13:06:11,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:11,156.156 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:06:11,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:06:11,207.207 INFO    ] No camera update needed
[2026-08-25 13:06:11,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:06:11,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:06:11,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:06:11,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:06:13,261.261 INFO    ] ================================================
[2026-08-25 13:06:13,277.277 INFO    ] Launching Daemon at Tue Aug 25 13:06:13 IST 2026
[2026-08-25 13:06:13,288.288 INFO    ] ================================================
[2026-08-25 13:06:13,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:06:13
[2026-08-25 13:06:14,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:06:14,749.749 INFO    ] Initializing speech engine...
[2026-08-25 13:06:14,755.755 INFO    ] 2026-08-25 13:06:14
[2026-08-25 13:06:15,015.015 INFO    ] 2026-08-25 13:06:15
[2026-08-25 13:06:15,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:06:15,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:06:15,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:06:15,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:06:15,484.484 INFO    ] time= 25/08/2026 13:06:15
[2026-08-25 13:06:15,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:06:15,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:06:15,720.720 INFO    ] No existing commands found in stream
[2026-08-25 13:06:20,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:06:20,740.740 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 13:06:23,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:06:23,721.721 INFO    ] Checking for system updates...
[2026-08-25 13:06:23,761.761 INFO    ] 200
[2026-08-25 13:06:23,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:23,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:06:23,818.818 INFO    ] No update needed
[2026-08-25 13:06:23,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 13:06:23,858.858 INFO    ] 200
[2026-08-25 13:06:23,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:23,907.907 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:06:23,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:06:23,954.954 INFO    ] No camera update needed
[2026-08-25 13:06:23,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:06:23,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:06:23,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:06:23,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:06:26,010.010 INFO    ] ================================================
[2026-08-25 13:06:26,025.025 INFO    ] Launching Daemon at Tue Aug 25 13:06:26 IST 2026
[2026-08-25 13:06:26,036.036 INFO    ] ================================================
[2026-08-25 13:06:26,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:06:26
[2026-08-25 13:06:27,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:06:27,471.471 INFO    ] Initializing speech engine...
[2026-08-25 13:06:27,480.480 INFO    ] 2026-08-25 13:06:27
[2026-08-25 13:06:27,739.739 INFO    ] 2026-08-25 13:06:27
[2026-08-25 13:06:27,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:06:28,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:06:28,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:06:28,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:06:28,201.201 INFO    ] time= 25/08/2026 13:06:28
[2026-08-25 13:06:28,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:06:28,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:06:28,405.405 INFO    ] No existing commands found in stream
[2026-08-25 13:06:33,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:06:33,433.433 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 13:06:36,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:06:36,452.452 INFO    ] Checking for system updates...
[2026-08-25 13:06:36,487.487 INFO    ] 200
[2026-08-25 13:06:36,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:36,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:06:36,544.544 INFO    ] No update needed
[2026-08-25 13:06:36,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 13:06:36,581.581 INFO    ] 200
[2026-08-25 13:06:36,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:36,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:06:36,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:06:36,675.675 INFO    ] No camera update needed
[2026-08-25 13:06:36,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:06:36,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:06:36,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:06:36,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:06:38,732.732 INFO    ] ================================================
[2026-08-25 13:06:38,747.747 INFO    ] Launching Daemon at Tue Aug 25 13:06:38 IST 2026
[2026-08-25 13:06:38,758.758 INFO    ] ================================================
[2026-08-25 13:06:39,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:06:39
[2026-08-25 13:06:39,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:06:40,218.218 INFO    ] Initializing speech engine...
[2026-08-25 13:06:40,224.224 INFO    ] 2026-08-25 13:06:40
[2026-08-25 13:06:40,488.488 INFO    ] 2026-08-25 13:06:40
[2026-08-25 13:06:40,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:06:40,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:06:40,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:06:40,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:06:40,895.895 INFO    ] time= 25/08/2026 13:06:40
[2026-08-25 13:06:40,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:06:40,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:06:40,986.986 INFO    ] No existing commands found in stream
[2026-08-25 13:06:46,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:06:46,003.003 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 13:06:49,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:06:49,826.826 INFO    ] Checking for system updates...
[2026-08-25 13:06:49,861.861 INFO    ] 200
[2026-08-25 13:06:49,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:49,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:06:49,918.918 INFO    ] No update needed
[2026-08-25 13:06:49,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 13:06:49,953.953 INFO    ] 200
[2026-08-25 13:06:49,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:06:50,002.002 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:06:50,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:06:50,049.049 INFO    ] No camera update needed
[2026-08-25 13:06:50,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:06:50,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:06:50,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:06:50,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:06:52,104.104 INFO    ] ================================================
[2026-08-25 13:06:52,119.119 INFO    ] Launching Daemon at Tue Aug 25 13:06:52 IST 2026
[2026-08-25 13:06:52,130.130 INFO    ] ================================================
[2026-08-25 13:06:52,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:06:52
[2026-08-25 13:06:53,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:06:53,572.572 INFO    ] Initializing speech engine...
[2026-08-25 13:06:53,581.581 INFO    ] 2026-08-25 13:06:53
[2026-08-25 13:06:53,879.879 INFO    ] 2026-08-25 13:06:53
[2026-08-25 13:06:53,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:06:54,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:06:54,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:06:54,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:06:54,264.264 INFO    ] time= 25/08/2026 13:06:54
[2026-08-25 13:06:54,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:06:54,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:06:54,393.393 INFO    ] No existing commands found in stream
[2026-08-25 13:06:59,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:06:59,420.420 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 13:07:02,255.255 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:07:02,258.258 INFO    ] Checking for system updates...
[2026-08-25 13:07:02,307.307 INFO    ] 200
[2026-08-25 13:07:02,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:02,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:07:02,402.402 INFO    ] No update needed
[2026-08-25 13:07:02,405.405 INFO    ] Checking for camera pi updates...
[2026-08-25 13:07:02,456.456 INFO    ] 200
[2026-08-25 13:07:02,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:02,544.544 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:07:02,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:07:02,604.604 INFO    ] No camera update needed
[2026-08-25 13:07:02,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:07:02,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:07:02,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:07:02,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:07:04,664.664 INFO    ] ================================================
[2026-08-25 13:07:04,679.679 INFO    ] Launching Daemon at Tue Aug 25 13:07:04 IST 2026
[2026-08-25 13:07:04,690.690 INFO    ] ================================================
[2026-08-25 13:07:05,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:07:05
[2026-08-25 13:07:05,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:07:06,298.298 INFO    ] Initializing speech engine...
[2026-08-25 13:07:06,310.310 INFO    ] 2026-08-25 13:07:06
[2026-08-25 13:07:06,598.598 INFO    ] 2026-08-25 13:07:06
[2026-08-25 13:07:06,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:07:06,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:07:06,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:07:07,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:07:07,146.146 INFO    ] time= 25/08/2026 13:07:07
[2026-08-25 13:07:07,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:07:07,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:07:07,279.279 INFO    ] No existing commands found in stream
[2026-08-25 13:07:12,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:07:12,308.308 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 13:07:15,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:07:15,368.368 INFO    ] Checking for system updates...
[2026-08-25 13:07:15,408.408 INFO    ] 200
[2026-08-25 13:07:15,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:15,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:07:15,466.466 INFO    ] No update needed
[2026-08-25 13:07:15,468.468 INFO    ] Checking for camera pi updates...
[2026-08-25 13:07:15,506.506 INFO    ] 200
[2026-08-25 13:07:15,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:15,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:07:15,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:07:15,607.607 INFO    ] No camera update needed
[2026-08-25 13:07:15,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:07:15,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:07:15,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:07:15,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:07:17,661.661 INFO    ] ================================================
[2026-08-25 13:07:17,676.676 INFO    ] Launching Daemon at Tue Aug 25 13:07:17 IST 2026
[2026-08-25 13:07:17,687.687 INFO    ] ================================================
[2026-08-25 13:07:18,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:07:18
[2026-08-25 13:07:18,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:07:19,096.096 INFO    ] Initializing speech engine...
[2026-08-25 13:07:19,105.105 INFO    ] 2026-08-25 13:07:19
[2026-08-25 13:07:19,349.349 INFO    ] 2026-08-25 13:07:19
[2026-08-25 13:07:19,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:07:19,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:07:19,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:07:19,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:07:19,721.721 INFO    ] time= 25/08/2026 13:07:19
[2026-08-25 13:07:19,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:07:19,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:07:19,925.925 INFO    ] No existing commands found in stream
[2026-08-25 13:07:24,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:07:24,953.953 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 13:07:27,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:07:27,396.396 INFO    ] Checking for system updates...
[2026-08-25 13:07:27,432.432 INFO    ] 200
[2026-08-25 13:07:27,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:27,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:07:27,496.496 INFO    ] No update needed
[2026-08-25 13:07:27,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 13:07:27,536.536 INFO    ] 200
[2026-08-25 13:07:27,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:27,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:07:27,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:07:27,642.642 INFO    ] No camera update needed
[2026-08-25 13:07:27,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:07:27,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:07:27,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:07:27,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:07:29,700.700 INFO    ] ================================================
[2026-08-25 13:07:29,715.715 INFO    ] Launching Daemon at Tue Aug 25 13:07:29 IST 2026
[2026-08-25 13:07:29,726.726 INFO    ] ================================================
[2026-08-25 13:07:30,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:07:30
[2026-08-25 13:07:30,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:07:31,168.168 INFO    ] Initializing speech engine...
[2026-08-25 13:07:31,175.175 INFO    ] 2026-08-25 13:07:31
[2026-08-25 13:07:31,459.459 INFO    ] 2026-08-25 13:07:31
[2026-08-25 13:07:31,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:07:31,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:07:31,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:07:31,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:07:31,914.914 INFO    ] time= 25/08/2026 13:07:31
[2026-08-25 13:07:31,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:07:32,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:07:32,165.165 INFO    ] No existing commands found in stream
[2026-08-25 13:07:37,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:07:37,198.198 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 13:07:38,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:07:38,824.824 INFO    ] Checking for system updates...
[2026-08-25 13:07:38,861.861 INFO    ] 200
[2026-08-25 13:07:38,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:38,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:07:38,926.926 INFO    ] No update needed
[2026-08-25 13:07:38,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 13:07:38,966.966 INFO    ] 200
[2026-08-25 13:07:38,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:39,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:07:39,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:07:39,160.160 INFO    ] No camera update needed
[2026-08-25 13:07:39,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:07:39,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:07:39,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:07:39,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:07:41,219.219 INFO    ] ================================================
[2026-08-25 13:07:41,234.234 INFO    ] Launching Daemon at Tue Aug 25 13:07:41 IST 2026
[2026-08-25 13:07:41,244.244 INFO    ] ================================================
[2026-08-25 13:07:41,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:07:41
[2026-08-25 13:07:42,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:07:42,658.658 INFO    ] Initializing speech engine...
[2026-08-25 13:07:42,673.673 INFO    ] 2026-08-25 13:07:42
[2026-08-25 13:07:42,952.952 INFO    ] 2026-08-25 13:07:42
[2026-08-25 13:07:42,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:07:43,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:07:43,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:07:43,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:07:43,442.442 INFO    ] time= 25/08/2026 13:07:43
[2026-08-25 13:07:43,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:07:43,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:07:43,641.641 INFO    ] No existing commands found in stream
[2026-08-25 13:07:48,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:07:48,656.656 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 13:07:51,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:07:52,863.863 INFO    ] Checking for system updates...
[2026-08-25 13:07:52,906.906 INFO    ] 200
[2026-08-25 13:07:52,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:52,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:07:52,976.976 INFO    ] No update needed
[2026-08-25 13:07:52,979.979 INFO    ] Checking for camera pi updates...
[2026-08-25 13:07:53,017.017 INFO    ] 200
[2026-08-25 13:07:53,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:07:53,059.059 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:07:53,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:07:53,107.107 INFO    ] No camera update needed
[2026-08-25 13:07:53,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:07:53,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:07:53,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:07:53,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:07:55,162.162 INFO    ] ================================================
[2026-08-25 13:07:55,177.177 INFO    ] Launching Daemon at Tue Aug 25 13:07:55 IST 2026
[2026-08-25 13:07:55,188.188 INFO    ] ================================================
[2026-08-25 13:07:55,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:07:55
[2026-08-25 13:07:56,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:07:56,613.613 INFO    ] Initializing speech engine...
[2026-08-25 13:07:56,622.622 INFO    ] 2026-08-25 13:07:56
[2026-08-25 13:07:56,876.876 INFO    ] 2026-08-25 13:07:56
[2026-08-25 13:07:56,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:07:57,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:07:57,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:07:57,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:07:57,349.349 INFO    ] time= 25/08/2026 13:07:57
[2026-08-25 13:07:57,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:07:57,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:07:57,578.578 INFO    ] No existing commands found in stream
[2026-08-25 13:08:02,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:08:02,596.596 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 13:08:03,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:08:03,707.707 INFO    ] Checking for system updates...
[2026-08-25 13:08:03,773.773 INFO    ] 200
[2026-08-25 13:08:03,776.776 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:03,779.779 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 13:08:03,782.782 INFO    ] Checking for camera pi updates...
[2026-08-25 13:08:03,826.826 INFO    ] 200
[2026-08-25 13:08:03,829.829 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:03,832.832 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 13:08:03,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:08:03,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:08:03,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:08:03,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:08:05,895.895 INFO    ] ================================================
[2026-08-25 13:08:05,915.915 INFO    ] Launching Daemon at Tue Aug 25 13:08:05 IST 2026
[2026-08-25 13:08:05,927.927 INFO    ] ================================================
[2026-08-25 13:08:06,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:08:06
[2026-08-25 13:08:07,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:08:07,469.469 INFO    ] Initializing speech engine...
[2026-08-25 13:08:08,295.295 INFO    ] 2026-08-25 13:08:08
[2026-08-25 13:08:08,799.799 INFO    ] 2026-08-25 13:08:08
[2026-08-25 13:08:08,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:08:09,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:08:09,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:08:09,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:08:09,201.201 INFO    ] time= 25/08/2026 13:08:09
[2026-08-25 13:08:09,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:08:09,211.211 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:08:09,305.305 INFO    ] No existing commands found in stream
[2026-08-25 13:08:14,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:08:14,320.320 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 13:08:14,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:08:14,804.804 INFO    ] Checking for system updates...
[2026-08-25 13:08:14,841.841 INFO    ] 200
[2026-08-25 13:08:14,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:14,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:08:14,899.899 INFO    ] No update needed
[2026-08-25 13:08:14,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 13:08:14,935.935 INFO    ] 200
[2026-08-25 13:08:14,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:14,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:08:15,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:08:15,027.027 INFO    ] No camera update needed
[2026-08-25 13:08:15,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:08:15,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:08:15,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:08:15,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:08:17,081.081 INFO    ] ================================================
[2026-08-25 13:08:17,097.097 INFO    ] Launching Daemon at Tue Aug 25 13:08:17 IST 2026
[2026-08-25 13:08:17,108.108 INFO    ] ================================================
[2026-08-25 13:08:17,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:08:17
[2026-08-25 13:08:18,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:08:18,768.768 INFO    ] Initializing speech engine...
[2026-08-25 13:08:18,777.777 INFO    ] 2026-08-25 13:08:18
[2026-08-25 13:08:19,086.086 INFO    ] 2026-08-25 13:08:19
[2026-08-25 13:08:19,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:08:19,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:08:19,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:08:19,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:08:19,591.591 INFO    ] time= 25/08/2026 13:08:19
[2026-08-25 13:08:19,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:08:19,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:08:19,757.757 INFO    ] No existing commands found in stream
[2026-08-25 13:08:24,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:08:24,795.795 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 13:08:26,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:08:26,251.251 INFO    ] Checking for system updates...
[2026-08-25 13:08:26,287.287 INFO    ] 200
[2026-08-25 13:08:26,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:26,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:08:26,351.351 INFO    ] No update needed
[2026-08-25 13:08:26,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 13:08:26,387.387 INFO    ] 200
[2026-08-25 13:08:26,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:26,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:08:26,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:08:26,481.481 INFO    ] No camera update needed
[2026-08-25 13:08:26,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:08:26,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:08:26,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:08:26,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:08:28,536.536 INFO    ] ================================================
[2026-08-25 13:08:28,551.551 INFO    ] Launching Daemon at Tue Aug 25 13:08:28 IST 2026
[2026-08-25 13:08:28,563.563 INFO    ] ================================================
[2026-08-25 13:08:29,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:08:29
[2026-08-25 13:08:29,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:08:29,993.993 INFO    ] Initializing speech engine...
[2026-08-25 13:08:30,003.003 INFO    ] 2026-08-25 13:08:29
[2026-08-25 13:08:30,248.248 INFO    ] 2026-08-25 13:08:30
[2026-08-25 13:08:30,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:08:30,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:08:30,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:08:30,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:08:30,725.725 INFO    ] time= 25/08/2026 13:08:30
[2026-08-25 13:08:30,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:08:30,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:08:30,949.949 INFO    ] No existing commands found in stream
[2026-08-25 13:08:35,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:08:35,972.972 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 13:08:37,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:08:37,706.706 INFO    ] Checking for system updates...
[2026-08-25 13:08:37,741.741 INFO    ] 200
[2026-08-25 13:08:37,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:37,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:08:37,798.798 INFO    ] No update needed
[2026-08-25 13:08:37,800.800 INFO    ] Checking for camera pi updates...
[2026-08-25 13:08:37,834.834 INFO    ] 200
[2026-08-25 13:08:37,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:37,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:08:37,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:08:37,925.925 INFO    ] No camera update needed
[2026-08-25 13:08:37,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:08:37,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:08:37,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:08:37,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:08:39,981.981 INFO    ] ================================================
[2026-08-25 13:08:40,002.002 INFO    ] Launching Daemon at Tue Aug 25 13:08:39 IST 2026
[2026-08-25 13:08:40,014.014 INFO    ] ================================================
[2026-08-25 13:08:40,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:08:40
[2026-08-25 13:08:41,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:08:41,425.425 INFO    ] Initializing speech engine...
[2026-08-25 13:08:41,437.437 INFO    ] 2026-08-25 13:08:41
[2026-08-25 13:08:41,683.683 INFO    ] 2026-08-25 13:08:41
[2026-08-25 13:08:41,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:08:41,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:08:41,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:08:42,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:08:42,167.167 INFO    ] time= 25/08/2026 13:08:42
[2026-08-25 13:08:42,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:08:42,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:08:42,392.392 INFO    ] No existing commands found in stream
[2026-08-25 13:08:47,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:08:47,414.414 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 13:08:49,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:08:49,737.737 INFO    ] Checking for system updates...
[2026-08-25 13:08:49,773.773 INFO    ] 200
[2026-08-25 13:08:49,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:49,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:08:49,832.832 INFO    ] No update needed
[2026-08-25 13:08:49,834.834 INFO    ] Checking for camera pi updates...
[2026-08-25 13:08:49,869.869 INFO    ] 200
[2026-08-25 13:08:49,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:08:49,912.912 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:08:49,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:08:49,957.957 INFO    ] No camera update needed
[2026-08-25 13:08:49,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:08:49,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:08:49,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:08:49,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:08:52,013.013 INFO    ] ================================================
[2026-08-25 13:08:52,029.029 INFO    ] Launching Daemon at Tue Aug 25 13:08:52 IST 2026
[2026-08-25 13:08:52,040.040 INFO    ] ================================================
[2026-08-25 13:08:52,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:08:52
[2026-08-25 13:08:53,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:08:53,449.449 INFO    ] Initializing speech engine...
[2026-08-25 13:08:53,472.472 INFO    ] 2026-08-25 13:08:53
[2026-08-25 13:08:53,728.728 INFO    ] 2026-08-25 13:08:53
[2026-08-25 13:08:53,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:08:54,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:08:54,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:08:54,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:08:54,194.194 INFO    ] time= 25/08/2026 13:08:54
[2026-08-25 13:08:54,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:08:54,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:08:54,425.425 INFO    ] No existing commands found in stream
[2026-08-25 13:08:59,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:08:59,455.455 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 13:09:00,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:09:00,670.670 INFO    ] Checking for system updates...
[2026-08-25 13:09:00,708.708 INFO    ] 200
[2026-08-25 13:09:00,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:00,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:09:00,766.766 INFO    ] No update needed
[2026-08-25 13:09:00,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 13:09:00,810.810 INFO    ] 200
[2026-08-25 13:09:00,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:00,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:09:00,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:09:00,935.935 INFO    ] No camera update needed
[2026-08-25 13:09:00,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:09:00,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:09:00,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:09:00,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:09:03,999.999 INFO    ] ================================================
[2026-08-25 13:09:03,016.016 INFO    ] Launching Daemon at Tue Aug 25 13:09:03 IST 2026
[2026-08-25 13:09:03,027.027 INFO    ] ================================================
[2026-08-25 13:09:03,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:09:03
[2026-08-25 13:09:04,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:09:04,585.585 INFO    ] Initializing speech engine...
[2026-08-25 13:09:04,599.599 INFO    ] 2026-08-25 13:09:04
[2026-08-25 13:09:04,907.907 INFO    ] 2026-08-25 13:09:04
[2026-08-25 13:09:04,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:09:05,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:09:05,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:09:05,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:09:05,410.410 INFO    ] time= 25/08/2026 13:09:05
[2026-08-25 13:09:05,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:09:05,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:09:05,568.568 INFO    ] No existing commands found in stream
[2026-08-25 13:09:10,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:09:10,600.600 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 13:09:11,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:09:11,783.783 INFO    ] Checking for system updates...
[2026-08-25 13:09:11,820.820 INFO    ] 200
[2026-08-25 13:09:11,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:11,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:09:11,878.878 INFO    ] No update needed
[2026-08-25 13:09:11,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 13:09:11,913.913 INFO    ] 200
[2026-08-25 13:09:11,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:11,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:09:12,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:09:12,006.006 INFO    ] No camera update needed
[2026-08-25 13:09:12,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:09:12,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:09:12,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:09:12,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:09:14,061.061 INFO    ] ================================================
[2026-08-25 13:09:14,075.075 INFO    ] Launching Daemon at Tue Aug 25 13:09:14 IST 2026
[2026-08-25 13:09:14,086.086 INFO    ] ================================================
[2026-08-25 13:09:14,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:09:14
[2026-08-25 13:09:15,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:09:15,501.501 INFO    ] Initializing speech engine...
[2026-08-25 13:09:15,510.510 INFO    ] 2026-08-25 13:09:15
[2026-08-25 13:09:15,757.757 INFO    ] 2026-08-25 13:09:15
[2026-08-25 13:09:15,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:09:15,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:09:16,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:09:16,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:09:16,246.246 INFO    ] time= 25/08/2026 13:09:16
[2026-08-25 13:09:16,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:09:16,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:09:16,465.465 INFO    ] No existing commands found in stream
[2026-08-25 13:09:21,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:09:21,490.490 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 13:09:24,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:09:24,330.330 INFO    ] Checking for system updates...
[2026-08-25 13:09:24,369.369 INFO    ] 200
[2026-08-25 13:09:24,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:24,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:09:24,432.432 INFO    ] No update needed
[2026-08-25 13:09:24,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 13:09:24,472.472 INFO    ] 200
[2026-08-25 13:09:24,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:24,522.522 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:09:24,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:09:24,569.569 INFO    ] No camera update needed
[2026-08-25 13:09:24,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:09:24,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:09:24,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:09:24,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:09:26,623.623 INFO    ] ================================================
[2026-08-25 13:09:26,638.638 INFO    ] Launching Daemon at Tue Aug 25 13:09:26 IST 2026
[2026-08-25 13:09:26,649.649 INFO    ] ================================================
[2026-08-25 13:09:27,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:09:27
[2026-08-25 13:09:27,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:09:28,285.285 INFO    ] Initializing speech engine...
[2026-08-25 13:09:28,300.300 INFO    ] 2026-08-25 13:09:28
[2026-08-25 13:09:28,585.585 INFO    ] 2026-08-25 13:09:28
[2026-08-25 13:09:28,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:09:28,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:09:28,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:09:29,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:09:29,117.117 INFO    ] time= 25/08/2026 13:09:29
[2026-08-25 13:09:29,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:09:29,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:09:29,268.268 INFO    ] No existing commands found in stream
[2026-08-25 13:09:34,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:09:34,288.288 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 13:09:38,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:09:38,398.398 INFO    ] Checking for system updates...
[2026-08-25 13:09:38,435.435 INFO    ] 200
[2026-08-25 13:09:38,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:38,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:09:38,500.500 INFO    ] No update needed
[2026-08-25 13:09:38,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 13:09:38,537.537 INFO    ] 200
[2026-08-25 13:09:38,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:38,583.583 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:09:38,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:09:38,634.634 INFO    ] No camera update needed
[2026-08-25 13:09:38,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:09:38,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:09:38,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:09:38,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:09:40,692.692 INFO    ] ================================================
[2026-08-25 13:09:40,708.708 INFO    ] Launching Daemon at Tue Aug 25 13:09:40 IST 2026
[2026-08-25 13:09:40,719.719 INFO    ] ================================================
[2026-08-25 13:09:41,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:09:41
[2026-08-25 13:09:41,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:09:42,134.134 INFO    ] Initializing speech engine...
[2026-08-25 13:09:42,140.140 INFO    ] 2026-08-25 13:09:42
[2026-08-25 13:09:42,385.385 INFO    ] 2026-08-25 13:09:42
[2026-08-25 13:09:42,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:09:42,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:09:42,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:09:42,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:09:42,846.846 INFO    ] time= 25/08/2026 13:09:42
[2026-08-25 13:09:42,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:09:42,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:09:43,112.112 INFO    ] No existing commands found in stream
[2026-08-25 13:09:48,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:09:48,140.140 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 13:09:48,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:09:48,822.822 INFO    ] Checking for system updates...
[2026-08-25 13:09:48,865.865 INFO    ] 200
[2026-08-25 13:09:48,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:48,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:09:48,935.935 INFO    ] No update needed
[2026-08-25 13:09:48,938.938 INFO    ] Checking for camera pi updates...
[2026-08-25 13:09:48,974.974 INFO    ] 200
[2026-08-25 13:09:48,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:09:49,017.017 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:09:49,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:09:49,167.167 INFO    ] No camera update needed
[2026-08-25 13:09:49,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:09:49,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:09:49,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:09:49,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:09:51,223.223 INFO    ] ================================================
[2026-08-25 13:09:51,239.239 INFO    ] Launching Daemon at Tue Aug 25 13:09:51 IST 2026
[2026-08-25 13:09:51,249.249 INFO    ] ================================================
[2026-08-25 13:09:51,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:09:51
[2026-08-25 13:09:52,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:09:52,658.658 INFO    ] Initializing speech engine...
[2026-08-25 13:09:52,667.667 INFO    ] 2026-08-25 13:09:52
[2026-08-25 13:09:52,967.967 INFO    ] 2026-08-25 13:09:52
[2026-08-25 13:09:52,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:09:53,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:09:53,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:09:53,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:09:53,402.402 INFO    ] time= 25/08/2026 13:09:53
[2026-08-25 13:09:53,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:09:53,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:09:53,588.588 INFO    ] No existing commands found in stream
[2026-08-25 13:09:58,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:09:58,610.610 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 13:10:01,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:10:01,170.170 INFO    ] Checking for system updates...
[2026-08-25 13:10:01,250.250 INFO    ] 200
[2026-08-25 13:10:01,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:01,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:10:01,431.431 INFO    ] No update needed
[2026-08-25 13:10:01,437.437 INFO    ] Checking for camera pi updates...
[2026-08-25 13:10:01,608.608 INFO    ] 200
[2026-08-25 13:10:01,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:01,785.785 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:10:01,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:10:01,898.898 INFO    ] No camera update needed
[2026-08-25 13:10:01,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:10:01,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:10:01,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:10:01,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:10:03,963.963 INFO    ] ================================================
[2026-08-25 13:10:03,978.978 INFO    ] Launching Daemon at Tue Aug 25 13:10:03 IST 2026
[2026-08-25 13:10:03,989.989 INFO    ] ================================================
[2026-08-25 13:10:04,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:10:04
[2026-08-25 13:10:05,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:10:05,461.461 INFO    ] Initializing speech engine...
[2026-08-25 13:10:05,469.469 INFO    ] 2026-08-25 13:10:05
[2026-08-25 13:10:05,727.727 INFO    ] 2026-08-25 13:10:05
[2026-08-25 13:10:05,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:10:06,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:10:06,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:10:06,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:10:06,191.191 INFO    ] time= 25/08/2026 13:10:06
[2026-08-25 13:10:06,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:10:06,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:10:06,406.406 INFO    ] No existing commands found in stream
[2026-08-25 13:10:11,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:10:11,437.437 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 13:10:14,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:10:14,065.065 INFO    ] Checking for system updates...
[2026-08-25 13:10:14,106.106 INFO    ] 200
[2026-08-25 13:10:14,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:14,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:10:14,169.169 INFO    ] No update needed
[2026-08-25 13:10:14,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 13:10:14,206.206 INFO    ] 200
[2026-08-25 13:10:14,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:14,254.254 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:10:14,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:10:14,307.307 INFO    ] No camera update needed
[2026-08-25 13:10:14,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:10:14,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:10:14,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:10:14,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:10:16,361.361 INFO    ] ================================================
[2026-08-25 13:10:16,377.377 INFO    ] Launching Daemon at Tue Aug 25 13:10:16 IST 2026
[2026-08-25 13:10:16,388.388 INFO    ] ================================================
[2026-08-25 13:10:16,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:10:16
[2026-08-25 13:10:17,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:10:17,796.796 INFO    ] Initializing speech engine...
[2026-08-25 13:10:17,809.809 INFO    ] 2026-08-25 13:10:17
[2026-08-25 13:10:18,054.054 INFO    ] 2026-08-25 13:10:18
[2026-08-25 13:10:18,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:10:18,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:10:18,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:10:18,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:10:18,419.419 INFO    ] time= 25/08/2026 13:10:18
[2026-08-25 13:10:18,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:10:18,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:10:18,611.611 INFO    ] No existing commands found in stream
[2026-08-25 13:10:23,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:10:23,628.628 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 13:10:26,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:10:26,613.613 INFO    ] Checking for system updates...
[2026-08-25 13:10:26,655.655 INFO    ] 200
[2026-08-25 13:10:26,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:26,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:10:26,713.713 INFO    ] No update needed
[2026-08-25 13:10:26,715.715 INFO    ] Checking for camera pi updates...
[2026-08-25 13:10:26,749.749 INFO    ] 200
[2026-08-25 13:10:26,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:26,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:10:26,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:10:26,863.863 INFO    ] No camera update needed
[2026-08-25 13:10:26,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:10:26,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:10:26,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:10:26,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:10:28,918.918 INFO    ] ================================================
[2026-08-25 13:10:28,933.933 INFO    ] Launching Daemon at Tue Aug 25 13:10:28 IST 2026
[2026-08-25 13:10:28,943.943 INFO    ] ================================================
[2026-08-25 13:10:29,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:10:29
[2026-08-25 13:10:30,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:10:30,364.364 INFO    ] Initializing speech engine...
[2026-08-25 13:10:30,373.373 INFO    ] 2026-08-25 13:10:30
[2026-08-25 13:10:30,629.629 INFO    ] 2026-08-25 13:10:30
[2026-08-25 13:10:30,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:10:30,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:10:30,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:10:31,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:10:31,116.116 INFO    ] time= 25/08/2026 13:10:31
[2026-08-25 13:10:31,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:10:31,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:10:31,376.376 INFO    ] No existing commands found in stream
[2026-08-25 13:10:36,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:10:36,425.425 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 13:10:39,489.489 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:10:39,492.492 INFO    ] Checking for system updates...
[2026-08-25 13:10:39,528.528 INFO    ] 200
[2026-08-25 13:10:39,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:39,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:10:39,585.585 INFO    ] No update needed
[2026-08-25 13:10:39,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 13:10:39,624.624 INFO    ] 200
[2026-08-25 13:10:39,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:39,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:10:39,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:10:39,718.718 INFO    ] No camera update needed
[2026-08-25 13:10:39,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:10:39,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:10:39,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:10:39,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:10:41,772.772 INFO    ] ================================================
[2026-08-25 13:10:41,787.787 INFO    ] Launching Daemon at Tue Aug 25 13:10:41 IST 2026
[2026-08-25 13:10:41,798.798 INFO    ] ================================================
[2026-08-25 13:10:42,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:10:42
[2026-08-25 13:10:42,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:10:43,222.222 INFO    ] Initializing speech engine...
[2026-08-25 13:10:43,231.231 INFO    ] 2026-08-25 13:10:43
[2026-08-25 13:10:43,487.487 INFO    ] 2026-08-25 13:10:43
[2026-08-25 13:10:43,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:10:43,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:10:43,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:10:43,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:10:43,946.946 INFO    ] time= 25/08/2026 13:10:43
[2026-08-25 13:10:44,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:10:44,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:10:44,162.162 INFO    ] No existing commands found in stream
[2026-08-25 13:10:49,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:10:49,190.190 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 13:10:52,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:10:52,591.591 INFO    ] Checking for system updates...
[2026-08-25 13:10:52,626.626 INFO    ] 200
[2026-08-25 13:10:52,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:52,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:10:52,692.692 INFO    ] No update needed
[2026-08-25 13:10:52,694.694 INFO    ] Checking for camera pi updates...
[2026-08-25 13:10:52,727.727 INFO    ] 200
[2026-08-25 13:10:52,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:10:52,777.777 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:10:52,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:10:52,843.843 INFO    ] No camera update needed
[2026-08-25 13:10:52,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:10:52,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:10:52,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:10:52,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:10:54,899.899 INFO    ] ================================================
[2026-08-25 13:10:54,914.914 INFO    ] Launching Daemon at Tue Aug 25 13:10:54 IST 2026
[2026-08-25 13:10:54,925.925 INFO    ] ================================================
[2026-08-25 13:10:55,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:10:55
[2026-08-25 13:10:56,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:10:56,324.324 INFO    ] Initializing speech engine...
[2026-08-25 13:10:56,337.337 INFO    ] 2026-08-25 13:10:56
[2026-08-25 13:10:56,600.600 INFO    ] 2026-08-25 13:10:56
[2026-08-25 13:10:56,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:10:56,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:10:56,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:10:57,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:10:57,079.079 INFO    ] time= 25/08/2026 13:10:57
[2026-08-25 13:10:57,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:10:57,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:10:57,294.294 INFO    ] No existing commands found in stream
[2026-08-25 13:11:02,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:11:02,320.320 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 13:11:03,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:11:03,326.326 INFO    ] Checking for system updates...
[2026-08-25 13:11:03,362.362 INFO    ] 200
[2026-08-25 13:11:03,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:03,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:03,429.429 INFO    ] No update needed
[2026-08-25 13:11:03,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 13:11:03,468.468 INFO    ] 200
[2026-08-25 13:11:03,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:03,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:11:03,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:03,565.565 INFO    ] No camera update needed
[2026-08-25 13:11:03,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:11:03,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:11:03,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:11:03,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:11:05,621.621 INFO    ] ================================================
[2026-08-25 13:11:05,635.635 INFO    ] Launching Daemon at Tue Aug 25 13:11:05 IST 2026
[2026-08-25 13:11:05,646.646 INFO    ] ================================================
[2026-08-25 13:11:06,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:11:06
[2026-08-25 13:11:06,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:11:07,083.083 INFO    ] Initializing speech engine...
[2026-08-25 13:11:07,090.090 INFO    ] 2026-08-25 13:11:07
[2026-08-25 13:11:07,347.347 INFO    ] 2026-08-25 13:11:07
[2026-08-25 13:11:07,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:11:07,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:11:07,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:11:07,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:11:07,827.827 INFO    ] time= 25/08/2026 13:11:07
[2026-08-25 13:11:07,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:11:07,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:11:08,021.021 INFO    ] No existing commands found in stream
[2026-08-25 13:11:13,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:11:13,050.050 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 13:11:17,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:11:17,306.306 INFO    ] Checking for system updates...
[2026-08-25 13:11:17,341.341 INFO    ] 200
[2026-08-25 13:11:17,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:17,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:17,405.405 INFO    ] No update needed
[2026-08-25 13:11:17,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 13:11:17,444.444 INFO    ] 200
[2026-08-25 13:11:17,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:17,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:11:17,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:17,555.555 INFO    ] No camera update needed
[2026-08-25 13:11:17,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:11:17,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:11:17,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:11:17,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:11:19,612.612 INFO    ] ================================================
[2026-08-25 13:11:19,627.627 INFO    ] Launching Daemon at Tue Aug 25 13:11:19 IST 2026
[2026-08-25 13:11:19,637.637 INFO    ] ================================================
[2026-08-25 13:11:20,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:11:20
[2026-08-25 13:11:20,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:11:21,054.054 INFO    ] Initializing speech engine...
[2026-08-25 13:11:21,063.063 INFO    ] 2026-08-25 13:11:21
[2026-08-25 13:11:21,311.311 INFO    ] 2026-08-25 13:11:21
[2026-08-25 13:11:21,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:11:21,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:11:21,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:11:21,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:11:21,759.759 INFO    ] time= 25/08/2026 13:11:21
[2026-08-25 13:11:21,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:11:21,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:11:22,005.005 INFO    ] No existing commands found in stream
[2026-08-25 13:11:27,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:11:27,033.033 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 13:11:31,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:11:31,017.017 INFO    ] Checking for system updates...
[2026-08-25 13:11:31,056.056 INFO    ] 200
[2026-08-25 13:11:31,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:31,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:31,113.113 INFO    ] No update needed
[2026-08-25 13:11:31,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 13:11:31,156.156 INFO    ] 200
[2026-08-25 13:11:31,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:31,202.202 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:11:31,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:31,253.253 INFO    ] No camera update needed
[2026-08-25 13:11:31,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:11:31,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:11:31,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:11:31,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:11:33,308.308 INFO    ] ================================================
[2026-08-25 13:11:33,323.323 INFO    ] Launching Daemon at Tue Aug 25 13:11:33 IST 2026
[2026-08-25 13:11:33,334.334 INFO    ] ================================================
[2026-08-25 13:11:33,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:11:33
[2026-08-25 13:11:34,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:11:34,748.748 INFO    ] Initializing speech engine...
[2026-08-25 13:11:34,758.758 INFO    ] 2026-08-25 13:11:34
[2026-08-25 13:11:35,002.002 INFO    ] 2026-08-25 13:11:34
[2026-08-25 13:11:35,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:11:35,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:11:35,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:11:35,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:11:35,472.472 INFO    ] time= 25/08/2026 13:11:35
[2026-08-25 13:11:35,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:11:35,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:11:35,683.683 INFO    ] No existing commands found in stream
[2026-08-25 13:11:40,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:11:40,711.711 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 13:11:43,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:11:43,012.012 INFO    ] Checking for system updates...
[2026-08-25 13:11:43,047.047 INFO    ] 200
[2026-08-25 13:11:43,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:43,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:43,111.111 INFO    ] No update needed
[2026-08-25 13:11:43,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 13:11:43,146.146 INFO    ] 200
[2026-08-25 13:11:43,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:43,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:11:43,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:43,242.242 INFO    ] No camera update needed
[2026-08-25 13:11:43,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:11:43,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:11:43,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:11:43,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:11:45,297.297 INFO    ] ================================================
[2026-08-25 13:11:45,312.312 INFO    ] Launching Daemon at Tue Aug 25 13:11:45 IST 2026
[2026-08-25 13:11:45,323.323 INFO    ] ================================================
[2026-08-25 13:11:45,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:11:45
[2026-08-25 13:11:46,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:11:46,743.743 INFO    ] Initializing speech engine...
[2026-08-25 13:11:46,752.752 INFO    ] 2026-08-25 13:11:46
[2026-08-25 13:11:46,997.997 INFO    ] 2026-08-25 13:11:46
[2026-08-25 13:11:47,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:11:47,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:11:47,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:11:47,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:11:47,485.485 INFO    ] time= 25/08/2026 13:11:47
[2026-08-25 13:11:47,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:11:47,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:11:47,698.698 INFO    ] No existing commands found in stream
[2026-08-25 13:11:52,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:11:52,717.717 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 13:11:55,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:11:55,104.104 INFO    ] Checking for system updates...
[2026-08-25 13:11:55,143.143 INFO    ] 200
[2026-08-25 13:11:55,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:55,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:55,206.206 INFO    ] No update needed
[2026-08-25 13:11:55,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 13:11:55,245.245 INFO    ] 200
[2026-08-25 13:11:55,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:11:55,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:11:55,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:11:55,437.437 INFO    ] No camera update needed
[2026-08-25 13:11:55,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:11:55,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:11:55,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:11:55,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:11:57,492.492 INFO    ] ================================================
[2026-08-25 13:11:57,507.507 INFO    ] Launching Daemon at Tue Aug 25 13:11:57 IST 2026
[2026-08-25 13:11:57,518.518 INFO    ] ================================================
[2026-08-25 13:11:58,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:11:58
[2026-08-25 13:11:58,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:11:58,926.926 INFO    ] Initializing speech engine...
[2026-08-25 13:11:58,945.945 INFO    ] 2026-08-25 13:11:58
[2026-08-25 13:11:59,191.191 INFO    ] 2026-08-25 13:11:59
[2026-08-25 13:11:59,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:11:59,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:11:59,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:11:59,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:11:59,560.560 INFO    ] time= 25/08/2026 13:11:59
[2026-08-25 13:11:59,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:11:59,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:11:59,739.739 INFO    ] No existing commands found in stream
[2026-08-25 13:12:04,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:12:04,771.771 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 13:12:06,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:12:06,523.523 INFO    ] Checking for system updates...
[2026-08-25 13:12:06,563.563 INFO    ] 200
[2026-08-25 13:12:06,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:06,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:12:06,628.628 INFO    ] No update needed
[2026-08-25 13:12:06,630.630 INFO    ] Checking for camera pi updates...
[2026-08-25 13:12:06,664.664 INFO    ] 200
[2026-08-25 13:12:06,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:06,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:12:06,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:12:06,757.757 INFO    ] No camera update needed
[2026-08-25 13:12:06,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:12:06,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:12:06,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:12:06,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:12:08,816.816 INFO    ] ================================================
[2026-08-25 13:12:08,831.831 INFO    ] Launching Daemon at Tue Aug 25 13:12:08 IST 2026
[2026-08-25 13:12:08,842.842 INFO    ] ================================================
[2026-08-25 13:12:09,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:12:09
[2026-08-25 13:12:09,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:12:10,266.266 INFO    ] Initializing speech engine...
[2026-08-25 13:12:10,273.273 INFO    ] 2026-08-25 13:12:10
[2026-08-25 13:12:10,532.532 INFO    ] 2026-08-25 13:12:10
[2026-08-25 13:12:10,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:12:10,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:12:10,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:12:11,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:12:11,069.069 INFO    ] time= 25/08/2026 13:12:11
[2026-08-25 13:12:11,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:12:11,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:12:11,221.221 INFO    ] No existing commands found in stream
[2026-08-25 13:12:16,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:12:16,239.239 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 13:12:17,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:12:17,657.657 INFO    ] Checking for system updates...
[2026-08-25 13:12:17,696.696 INFO    ] 200
[2026-08-25 13:12:17,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:17,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:17,755.755 INFO    ] No update needed
[2026-08-25 13:12:17,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 13:12:17,794.794 INFO    ] 200
[2026-08-25 13:12:17,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:17,837.837 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:12:17,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:17,889.889 INFO    ] No camera update needed
[2026-08-25 13:12:17,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:12:17,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:12:17,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:12:17,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:12:19,946.946 INFO    ] ================================================
[2026-08-25 13:12:19,962.962 INFO    ] Launching Daemon at Tue Aug 25 13:12:19 IST 2026
[2026-08-25 13:12:19,972.972 INFO    ] ================================================
[2026-08-25 13:12:20,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:12:20
[2026-08-25 13:12:21,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:12:21,427.427 INFO    ] Initializing speech engine...
[2026-08-25 13:12:21,436.436 INFO    ] 2026-08-25 13:12:21
[2026-08-25 13:12:21,698.698 INFO    ] 2026-08-25 13:12:21
[2026-08-25 13:12:21,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:12:21,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:12:21,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:12:22,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:12:22,188.188 INFO    ] time= 25/08/2026 13:12:22
[2026-08-25 13:12:22,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:12:22,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:12:22,398.398 INFO    ] No existing commands found in stream
[2026-08-25 13:12:27,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:12:27,420.420 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 13:12:29,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:12:29,195.195 INFO    ] Checking for system updates...
[2026-08-25 13:12:29,235.235 INFO    ] 200
[2026-08-25 13:12:29,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:29,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:29,299.299 INFO    ] No update needed
[2026-08-25 13:12:29,301.301 INFO    ] Checking for camera pi updates...
[2026-08-25 13:12:29,335.335 INFO    ] 200
[2026-08-25 13:12:29,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:29,390.390 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:12:29,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:29,435.435 INFO    ] No camera update needed
[2026-08-25 13:12:29,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:12:29,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:12:29,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:12:29,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:12:31,491.491 INFO    ] ================================================
[2026-08-25 13:12:31,506.506 INFO    ] Launching Daemon at Tue Aug 25 13:12:31 IST 2026
[2026-08-25 13:12:31,518.518 INFO    ] ================================================
[2026-08-25 13:12:32,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:12:32
[2026-08-25 13:12:32,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:12:33,005.005 INFO    ] Initializing speech engine...
[2026-08-25 13:12:33,013.013 INFO    ] 2026-08-25 13:12:33
[2026-08-25 13:12:33,323.323 INFO    ] 2026-08-25 13:12:33
[2026-08-25 13:12:33,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:12:33,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:12:33,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:12:33,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:12:33,787.787 INFO    ] time= 25/08/2026 13:12:33
[2026-08-25 13:12:33,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:12:33,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:12:33,967.967 INFO    ] No existing commands found in stream
[2026-08-25 13:12:38,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:12:38,982.982 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 13:12:40,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:12:40,408.408 INFO    ] Checking for system updates...
[2026-08-25 13:12:40,444.444 INFO    ] 200
[2026-08-25 13:12:40,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:40,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:40,511.511 INFO    ] No update needed
[2026-08-25 13:12:40,514.514 INFO    ] Checking for camera pi updates...
[2026-08-25 13:12:40,552.552 INFO    ] 200
[2026-08-25 13:12:40,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:40,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:12:40,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:40,653.653 INFO    ] No camera update needed
[2026-08-25 13:12:40,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:12:40,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:12:40,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:12:40,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:12:42,708.708 INFO    ] ================================================
[2026-08-25 13:12:42,723.723 INFO    ] Launching Daemon at Tue Aug 25 13:12:42 IST 2026
[2026-08-25 13:12:42,734.734 INFO    ] ================================================
[2026-08-25 13:12:43,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:12:43
[2026-08-25 13:12:44,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:12:44,338.338 INFO    ] Initializing speech engine...
[2026-08-25 13:12:44,349.349 INFO    ] 2026-08-25 13:12:44
[2026-08-25 13:12:44,725.725 INFO    ] 2026-08-25 13:12:44
[2026-08-25 13:12:44,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:12:45,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:12:45,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:12:45,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:12:45,217.217 INFO    ] time= 25/08/2026 13:12:45
[2026-08-25 13:12:45,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:12:45,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:12:45,429.429 INFO    ] No existing commands found in stream
[2026-08-25 13:12:50,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:12:50,466.466 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 13:12:53,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:12:53,501.501 INFO    ] Checking for system updates...
[2026-08-25 13:12:53,542.542 INFO    ] 200
[2026-08-25 13:12:53,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:53,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:53,609.609 INFO    ] No update needed
[2026-08-25 13:12:53,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 13:12:53,651.651 INFO    ] 200
[2026-08-25 13:12:53,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:12:53,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:12:53,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:12:53,753.753 INFO    ] No camera update needed
[2026-08-25 13:12:53,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:12:53,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:12:53,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:12:53,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:12:55,811.811 INFO    ] ================================================
[2026-08-25 13:12:55,827.827 INFO    ] Launching Daemon at Tue Aug 25 13:12:55 IST 2026
[2026-08-25 13:12:55,838.838 INFO    ] ================================================
[2026-08-25 13:12:56,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:12:56
[2026-08-25 13:12:57,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:12:57,484.484 INFO    ] Initializing speech engine...
[2026-08-25 13:12:57,490.490 INFO    ] 2026-08-25 13:12:57
[2026-08-25 13:12:57,799.799 INFO    ] 2026-08-25 13:12:57
[2026-08-25 13:12:57,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:12:58,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:12:58,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:12:58,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:12:58,308.308 INFO    ] time= 25/08/2026 13:12:58
[2026-08-25 13:12:58,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:12:58,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:12:58,463.463 INFO    ] No existing commands found in stream
[2026-08-25 13:13:03,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:13:03,496.496 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 13:13:07,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:13:07,610.610 INFO    ] Checking for system updates...
[2026-08-25 13:13:07,648.648 INFO    ] 200
[2026-08-25 13:13:07,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:07,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:07,706.706 INFO    ] No update needed
[2026-08-25 13:13:07,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 13:13:07,745.745 INFO    ] 200
[2026-08-25 13:13:07,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:07,788.788 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:13:07,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:07,837.837 INFO    ] No camera update needed
[2026-08-25 13:13:07,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:13:07,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:13:07,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:13:07,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:13:09,896.896 INFO    ] ================================================
[2026-08-25 13:13:09,912.912 INFO    ] Launching Daemon at Tue Aug 25 13:13:09 IST 2026
[2026-08-25 13:13:09,923.923 INFO    ] ================================================
[2026-08-25 13:13:10,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:13:10
[2026-08-25 13:13:11,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:13:11,405.405 INFO    ] Initializing speech engine...
[2026-08-25 13:13:11,422.422 INFO    ] 2026-08-25 13:13:11
[2026-08-25 13:13:11,692.692 INFO    ] 2026-08-25 13:13:11
[2026-08-25 13:13:11,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:13:11,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:13:11,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:13:12,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:13:12,142.142 INFO    ] time= 25/08/2026 13:13:12
[2026-08-25 13:13:12,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:13:12,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:13:12,314.314 INFO    ] No existing commands found in stream
[2026-08-25 13:13:17,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:13:17,328.328 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 13:13:18,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:13:18,870.870 INFO    ] Checking for system updates...
[2026-08-25 13:13:18,905.905 INFO    ] 200
[2026-08-25 13:13:18,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:18,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:18,967.967 INFO    ] No update needed
[2026-08-25 13:13:18,969.969 INFO    ] Checking for camera pi updates...
[2026-08-25 13:13:19,002.002 INFO    ] 200
[2026-08-25 13:13:19,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:19,045.045 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:13:19,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:19,102.102 INFO    ] No camera update needed
[2026-08-25 13:13:19,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:13:19,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:13:19,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:13:19,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:13:21,157.157 INFO    ] ================================================
[2026-08-25 13:13:21,172.172 INFO    ] Launching Daemon at Tue Aug 25 13:13:21 IST 2026
[2026-08-25 13:13:21,184.184 INFO    ] ================================================
[2026-08-25 13:13:21,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:13:21
[2026-08-25 13:13:22,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:13:22,585.585 INFO    ] Initializing speech engine...
[2026-08-25 13:13:22,597.597 INFO    ] 2026-08-25 13:13:22
[2026-08-25 13:13:22,863.863 INFO    ] 2026-08-25 13:13:22
[2026-08-25 13:13:22,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:13:23,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:13:23,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:13:23,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:13:23,339.339 INFO    ] time= 25/08/2026 13:13:23
[2026-08-25 13:13:23,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:13:23,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:13:23,579.579 INFO    ] No existing commands found in stream
[2026-08-25 13:13:28,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:13:28,597.597 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 13:13:32,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:13:32,834.834 INFO    ] Checking for system updates...
[2026-08-25 13:13:32,874.874 INFO    ] 200
[2026-08-25 13:13:32,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:32,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:32,937.937 INFO    ] No update needed
[2026-08-25 13:13:32,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 13:13:32,977.977 INFO    ] 200
[2026-08-25 13:13:32,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:33,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:13:33,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:33,079.079 INFO    ] No camera update needed
[2026-08-25 13:13:33,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:13:33,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:13:33,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:13:33,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:13:35,135.135 INFO    ] ================================================
[2026-08-25 13:13:35,149.149 INFO    ] Launching Daemon at Tue Aug 25 13:13:35 IST 2026
[2026-08-25 13:13:35,160.160 INFO    ] ================================================
[2026-08-25 13:13:35,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:13:35
[2026-08-25 13:13:36,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:13:36,592.592 INFO    ] Initializing speech engine...
[2026-08-25 13:13:36,607.607 INFO    ] 2026-08-25 13:13:36
[2026-08-25 13:13:36,887.887 INFO    ] 2026-08-25 13:13:36
[2026-08-25 13:13:36,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:13:37,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:13:37,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:13:37,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:13:37,297.297 INFO    ] time= 25/08/2026 13:13:37
[2026-08-25 13:13:37,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:13:37,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:13:37,382.382 INFO    ] No existing commands found in stream
[2026-08-25 13:13:42,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:13:42,410.410 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 13:13:46,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:13:46,449.449 INFO    ] Checking for system updates...
[2026-08-25 13:13:46,485.485 INFO    ] 200
[2026-08-25 13:13:46,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:46,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:46,542.542 INFO    ] No update needed
[2026-08-25 13:13:46,544.544 INFO    ] Checking for camera pi updates...
[2026-08-25 13:13:46,578.578 INFO    ] 200
[2026-08-25 13:13:46,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:13:46,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:13:46,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:13:46,672.672 INFO    ] No camera update needed
[2026-08-25 13:13:46,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:13:46,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:13:46,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:13:46,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:13:48,727.727 INFO    ] ================================================
[2026-08-25 13:13:48,742.742 INFO    ] Launching Daemon at Tue Aug 25 13:13:48 IST 2026
[2026-08-25 13:13:48,753.753 INFO    ] ================================================
[2026-08-25 13:13:49,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:13:49
[2026-08-25 13:13:49,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:13:50,155.155 INFO    ] Initializing speech engine...
[2026-08-25 13:13:50,163.163 INFO    ] 2026-08-25 13:13:50
[2026-08-25 13:13:50,438.438 INFO    ] 2026-08-25 13:13:50
[2026-08-25 13:13:50,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:13:50,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:13:50,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:13:50,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:13:50,918.918 INFO    ] time= 25/08/2026 13:13:50
[2026-08-25 13:13:50,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:13:51,013.013 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:13:51,156.156 INFO    ] No existing commands found in stream
[2026-08-25 13:13:56,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:13:56,177.177 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 13:14:04,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:14:04,775.775 INFO    ] Checking for system updates...
[2026-08-25 13:14:04,816.816 INFO    ] 200
[2026-08-25 13:14:04,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:04,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:04,874.874 INFO    ] No update needed
[2026-08-25 13:14:04,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 13:14:04,910.910 INFO    ] 200
[2026-08-25 13:14:04,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:04,953.953 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:14:05,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:05,012.012 INFO    ] No camera update needed
[2026-08-25 13:14:05,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:14:05,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:14:05,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:14:05,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:14:07,067.067 INFO    ] ================================================
[2026-08-25 13:14:07,082.082 INFO    ] Launching Daemon at Tue Aug 25 13:14:07 IST 2026
[2026-08-25 13:14:07,093.093 INFO    ] ================================================
[2026-08-25 13:14:07,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:14:07
[2026-08-25 13:14:08,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:14:08,546.546 INFO    ] Initializing speech engine...
[2026-08-25 13:14:08,553.553 INFO    ] 2026-08-25 13:14:08
[2026-08-25 13:14:08,824.824 INFO    ] 2026-08-25 13:14:08
[2026-08-25 13:14:08,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:14:09,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:14:09,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:14:09,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:14:09,268.268 INFO    ] time= 25/08/2026 13:14:09
[2026-08-25 13:14:09,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:14:09,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:14:09,496.496 INFO    ] No existing commands found in stream
[2026-08-25 13:14:14,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:14:14,520.520 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 13:14:15,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:14:15,554.554 INFO    ] Checking for system updates...
[2026-08-25 13:14:15,591.591 INFO    ] 200
[2026-08-25 13:14:15,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:15,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:15,659.659 INFO    ] No update needed
[2026-08-25 13:14:15,663.663 INFO    ] Checking for camera pi updates...
[2026-08-25 13:14:15,700.700 INFO    ] 200
[2026-08-25 13:14:15,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:15,744.744 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:14:15,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:15,805.805 INFO    ] No camera update needed
[2026-08-25 13:14:15,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:14:15,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:14:15,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:14:15,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:14:17,864.864 INFO    ] ================================================
[2026-08-25 13:14:17,879.879 INFO    ] Launching Daemon at Tue Aug 25 13:14:17 IST 2026
[2026-08-25 13:14:17,890.890 INFO    ] ================================================
[2026-08-25 13:14:18,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:14:18
[2026-08-25 13:14:19,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:14:19,333.333 INFO    ] Initializing speech engine...
[2026-08-25 13:14:19,342.342 INFO    ] 2026-08-25 13:14:19
[2026-08-25 13:14:19,591.591 INFO    ] 2026-08-25 13:14:19
[2026-08-25 13:14:19,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:14:19,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:14:19,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:14:20,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:14:20,046.046 INFO    ] time= 25/08/2026 13:14:20
[2026-08-25 13:14:20,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:14:20,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:14:20,298.298 INFO    ] No existing commands found in stream
[2026-08-25 13:14:25,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:14:25,318.318 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 13:14:28,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:14:28,423.423 INFO    ] Checking for system updates...
[2026-08-25 13:14:28,467.467 INFO    ] 200
[2026-08-25 13:14:28,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:28,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:28,523.523 INFO    ] No update needed
[2026-08-25 13:14:28,526.526 INFO    ] Checking for camera pi updates...
[2026-08-25 13:14:28,559.559 INFO    ] 200
[2026-08-25 13:14:28,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:28,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:14:28,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:28,651.651 INFO    ] No camera update needed
[2026-08-25 13:14:28,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:14:28,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:14:28,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:14:28,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:14:30,705.705 INFO    ] ================================================
[2026-08-25 13:14:30,720.720 INFO    ] Launching Daemon at Tue Aug 25 13:14:30 IST 2026
[2026-08-25 13:14:30,731.731 INFO    ] ================================================
[2026-08-25 13:14:31,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:14:31
[2026-08-25 13:14:32,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:14:32,420.420 INFO    ] Initializing speech engine...
[2026-08-25 13:14:32,426.426 INFO    ] 2026-08-25 13:14:32
[2026-08-25 13:14:32,713.713 INFO    ] 2026-08-25 13:14:32
[2026-08-25 13:14:32,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:14:32,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:14:32,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:14:33,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:14:33,224.224 INFO    ] time= 25/08/2026 13:14:33
[2026-08-25 13:14:33,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:14:33,297.297 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:14:33,448.448 INFO    ] No existing commands found in stream
[2026-08-25 13:14:38,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:14:38,475.475 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 13:14:41,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:14:41,066.066 INFO    ] Checking for system updates...
[2026-08-25 13:14:41,102.102 INFO    ] 200
[2026-08-25 13:14:41,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:41,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:41,168.168 INFO    ] No update needed
[2026-08-25 13:14:41,170.170 INFO    ] Checking for camera pi updates...
[2026-08-25 13:14:41,204.204 INFO    ] 200
[2026-08-25 13:14:41,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:41,247.247 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:14:41,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:41,296.296 INFO    ] No camera update needed
[2026-08-25 13:14:41,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:14:41,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:14:41,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:14:41,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:14:43,350.350 INFO    ] ================================================
[2026-08-25 13:14:43,365.365 INFO    ] Launching Daemon at Tue Aug 25 13:14:43 IST 2026
[2026-08-25 13:14:43,376.376 INFO    ] ================================================
[2026-08-25 13:14:43,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:14:43
[2026-08-25 13:14:44,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:14:44,773.773 INFO    ] Initializing speech engine...
[2026-08-25 13:14:44,796.796 INFO    ] 2026-08-25 13:14:44
[2026-08-25 13:14:45,050.050 INFO    ] 2026-08-25 13:14:45
[2026-08-25 13:14:45,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:14:45,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:14:45,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:14:45,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:14:45,555.555 INFO    ] time= 25/08/2026 13:14:45
[2026-08-25 13:14:45,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:14:45,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:14:45,772.772 INFO    ] No existing commands found in stream
[2026-08-25 13:14:50,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:14:50,792.792 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 13:14:55,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:14:55,028.028 INFO    ] Checking for system updates...
[2026-08-25 13:14:55,069.069 INFO    ] 200
[2026-08-25 13:14:55,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:55,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:55,127.127 INFO    ] No update needed
[2026-08-25 13:14:55,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 13:14:55,163.163 INFO    ] 200
[2026-08-25 13:14:55,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:14:55,213.213 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:14:55,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:14:55,274.274 INFO    ] No camera update needed
[2026-08-25 13:14:55,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:14:55,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:14:55,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:14:55,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:14:57,328.328 INFO    ] ================================================
[2026-08-25 13:14:57,343.343 INFO    ] Launching Daemon at Tue Aug 25 13:14:57 IST 2026
[2026-08-25 13:14:57,353.353 INFO    ] ================================================
[2026-08-25 13:14:57,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:14:57
[2026-08-25 13:14:58,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:14:58,760.760 INFO    ] Initializing speech engine...
[2026-08-25 13:14:58,774.774 INFO    ] 2026-08-25 13:14:58
[2026-08-25 13:14:59,040.040 INFO    ] 2026-08-25 13:14:59
[2026-08-25 13:14:59,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:14:59,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:14:59,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:14:59,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:14:59,520.520 INFO    ] time= 25/08/2026 13:14:59
[2026-08-25 13:14:59,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:14:59,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:14:59,755.755 INFO    ] No existing commands found in stream
[2026-08-25 13:15:04,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:15:04,778.778 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 13:15:06,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:15:06,809.809 INFO    ] Checking for system updates...
[2026-08-25 13:15:06,844.844 INFO    ] 200
[2026-08-25 13:15:06,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:06,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:06,908.908 INFO    ] No update needed
[2026-08-25 13:15:06,910.910 INFO    ] Checking for camera pi updates...
[2026-08-25 13:15:06,945.945 INFO    ] 200
[2026-08-25 13:15:06,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:06,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:15:07,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:07,043.043 INFO    ] No camera update needed
[2026-08-25 13:15:07,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:15:07,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:15:07,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:15:07,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:15:09,099.099 INFO    ] ================================================
[2026-08-25 13:15:09,114.114 INFO    ] Launching Daemon at Tue Aug 25 13:15:09 IST 2026
[2026-08-25 13:15:09,125.125 INFO    ] ================================================
[2026-08-25 13:15:09,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:15:09
[2026-08-25 13:15:10,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:15:10,581.581 INFO    ] Initializing speech engine...
[2026-08-25 13:15:10,590.590 INFO    ] 2026-08-25 13:15:10
[2026-08-25 13:15:10,840.840 INFO    ] 2026-08-25 13:15:10
[2026-08-25 13:15:10,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:15:11,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:15:11,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:15:11,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:15:11,362.362 INFO    ] time= 25/08/2026 13:15:11
[2026-08-25 13:15:11,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:15:11,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:15:11,543.543 INFO    ] No existing commands found in stream
[2026-08-25 13:15:16,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:15:16,567.567 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 13:15:20,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:15:20,117.117 INFO    ] Checking for system updates...
[2026-08-25 13:15:20,158.158 INFO    ] 200
[2026-08-25 13:15:20,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:20,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:20,218.218 INFO    ] No update needed
[2026-08-25 13:15:20,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 13:15:20,259.259 INFO    ] 200
[2026-08-25 13:15:20,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:20,307.307 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:15:20,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:20,363.363 INFO    ] No camera update needed
[2026-08-25 13:15:20,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:15:20,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:15:20,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:15:20,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:15:22,418.418 INFO    ] ================================================
[2026-08-25 13:15:22,433.433 INFO    ] Launching Daemon at Tue Aug 25 13:15:22 IST 2026
[2026-08-25 13:15:22,444.444 INFO    ] ================================================
[2026-08-25 13:15:23,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:15:23
[2026-08-25 13:15:23,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:15:24,100.100 INFO    ] Initializing speech engine...
[2026-08-25 13:15:24,113.113 INFO    ] 2026-08-25 13:15:24
[2026-08-25 13:15:24,392.392 INFO    ] 2026-08-25 13:15:24
[2026-08-25 13:15:24,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:15:24,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:15:24,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:15:24,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:15:24,870.870 INFO    ] time= 25/08/2026 13:15:24
[2026-08-25 13:15:24,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:15:24,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:15:25,111.111 INFO    ] No existing commands found in stream
[2026-08-25 13:15:30,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:15:30,131.131 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 13:15:31,145.145 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:15:31,148.148 INFO    ] Checking for system updates...
[2026-08-25 13:15:31,183.183 INFO    ] 200
[2026-08-25 13:15:31,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:31,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:31,250.250 INFO    ] No update needed
[2026-08-25 13:15:31,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 13:15:31,291.291 INFO    ] 200
[2026-08-25 13:15:31,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:31,333.333 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:15:31,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:31,384.384 INFO    ] No camera update needed
[2026-08-25 13:15:31,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:15:31,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:15:31,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:15:31,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:15:33,440.440 INFO    ] ================================================
[2026-08-25 13:15:33,455.455 INFO    ] Launching Daemon at Tue Aug 25 13:15:33 IST 2026
[2026-08-25 13:15:33,466.466 INFO    ] ================================================
[2026-08-25 13:15:34,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:15:34
[2026-08-25 13:15:34,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:15:34,897.897 INFO    ] Initializing speech engine...
[2026-08-25 13:15:34,916.916 INFO    ] 2026-08-25 13:15:34
[2026-08-25 13:15:35,186.186 INFO    ] 2026-08-25 13:15:35
[2026-08-25 13:15:35,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:15:35,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:15:35,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:15:35,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:15:35,612.612 INFO    ] time= 25/08/2026 13:15:35
[2026-08-25 13:15:35,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:15:35,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:15:35,805.805 INFO    ] No existing commands found in stream
[2026-08-25 13:15:40,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:15:40,832.832 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 13:15:44,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:15:44,417.417 INFO    ] Checking for system updates...
[2026-08-25 13:15:44,452.452 INFO    ] 200
[2026-08-25 13:15:44,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:44,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:44,510.510 INFO    ] No update needed
[2026-08-25 13:15:44,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 13:15:44,550.550 INFO    ] 200
[2026-08-25 13:15:44,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:44,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:15:44,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:44,645.645 INFO    ] No camera update needed
[2026-08-25 13:15:44,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:15:44,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:15:44,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:15:44,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:15:46,700.700 INFO    ] ================================================
[2026-08-25 13:15:46,715.715 INFO    ] Launching Daemon at Tue Aug 25 13:15:46 IST 2026
[2026-08-25 13:15:46,725.725 INFO    ] ================================================
[2026-08-25 13:15:47,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:15:47
[2026-08-25 13:15:48,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:15:48,386.386 INFO    ] Initializing speech engine...
[2026-08-25 13:15:48,394.394 INFO    ] 2026-08-25 13:15:48
[2026-08-25 13:15:48,672.672 INFO    ] 2026-08-25 13:15:48
[2026-08-25 13:15:48,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:15:49,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:15:49,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:15:49,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:15:49,225.225 INFO    ] time= 25/08/2026 13:15:49
[2026-08-25 13:15:49,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:15:49,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:15:49,401.401 INFO    ] No existing commands found in stream
[2026-08-25 13:15:54,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:15:54,435.435 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 13:15:56,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:15:56,919.919 INFO    ] Checking for system updates...
[2026-08-25 13:15:56,957.957 INFO    ] 200
[2026-08-25 13:15:56,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:57,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:57,022.022 INFO    ] No update needed
[2026-08-25 13:15:57,024.024 INFO    ] Checking for camera pi updates...
[2026-08-25 13:15:57,058.058 INFO    ] 200
[2026-08-25 13:15:57,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:15:57,107.107 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:15:57,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:15:57,159.159 INFO    ] No camera update needed
[2026-08-25 13:15:57,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:15:57,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:15:57,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:15:57,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:15:59,216.216 INFO    ] ================================================
[2026-08-25 13:15:59,231.231 INFO    ] Launching Daemon at Tue Aug 25 13:15:59 IST 2026
[2026-08-25 13:15:59,241.241 INFO    ] ================================================
[2026-08-25 13:15:59,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:15:59
[2026-08-25 13:16:00,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:16:00,856.856 INFO    ] Initializing speech engine...
[2026-08-25 13:16:00,864.864 INFO    ] 2026-08-25 13:16:00
[2026-08-25 13:16:01,150.150 INFO    ] 2026-08-25 13:16:01
[2026-08-25 13:16:01,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:16:01,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:16:01,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:16:01,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:16:01,590.590 INFO    ] time= 25/08/2026 13:16:01
[2026-08-25 13:16:01,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:16:01,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:16:01,692.692 INFO    ] No existing commands found in stream
[2026-08-25 13:16:06,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:16:06,717.717 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 13:16:08,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:16:08,843.843 INFO    ] Checking for system updates...
[2026-08-25 13:16:08,878.878 INFO    ] 200
[2026-08-25 13:16:08,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:08,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:08,935.935 INFO    ] No update needed
[2026-08-25 13:16:08,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 13:16:08,975.975 INFO    ] 200
[2026-08-25 13:16:08,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:09,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:16:09,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:09,173.173 INFO    ] No camera update needed
[2026-08-25 13:16:09,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:16:09,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:16:09,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:16:09,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:16:11,232.232 INFO    ] ================================================
[2026-08-25 13:16:11,248.248 INFO    ] Launching Daemon at Tue Aug 25 13:16:11 IST 2026
[2026-08-25 13:16:11,258.258 INFO    ] ================================================
[2026-08-25 13:16:11,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:16:11
[2026-08-25 13:16:12,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:16:12,803.803 INFO    ] Initializing speech engine...
[2026-08-25 13:16:12,813.813 INFO    ] 2026-08-25 13:16:12
[2026-08-25 13:16:13,074.074 INFO    ] 2026-08-25 13:16:13
[2026-08-25 13:16:13,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:16:13,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:16:13,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:16:13,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:16:13,601.601 INFO    ] time= 25/08/2026 13:16:13
[2026-08-25 13:16:13,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:16:13,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:16:13,775.775 INFO    ] No existing commands found in stream
[2026-08-25 13:16:18,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:16:18,797.797 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 13:16:22,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:16:23,000.000 INFO    ] Checking for system updates...
[2026-08-25 13:16:23,037.037 INFO    ] 200
[2026-08-25 13:16:23,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:23,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:23,097.097 INFO    ] No update needed
[2026-08-25 13:16:23,099.099 INFO    ] Checking for camera pi updates...
[2026-08-25 13:16:23,135.135 INFO    ] 200
[2026-08-25 13:16:23,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:23,188.188 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:16:23,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:23,239.239 INFO    ] No camera update needed
[2026-08-25 13:16:23,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:16:23,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:16:23,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:16:23,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:16:25,295.295 INFO    ] ================================================
[2026-08-25 13:16:25,310.310 INFO    ] Launching Daemon at Tue Aug 25 13:16:25 IST 2026
[2026-08-25 13:16:25,321.321 INFO    ] ================================================
[2026-08-25 13:16:25,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:16:25
[2026-08-25 13:16:26,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:16:26,871.871 INFO    ] Initializing speech engine...
[2026-08-25 13:16:26,882.882 INFO    ] 2026-08-25 13:16:26
[2026-08-25 13:16:27,191.191 INFO    ] 2026-08-25 13:16:27
[2026-08-25 13:16:27,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:16:27,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:16:27,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:16:27,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:16:27,699.699 INFO    ] time= 25/08/2026 13:16:27
[2026-08-25 13:16:27,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:16:27,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:16:27,856.856 INFO    ] No existing commands found in stream
[2026-08-25 13:16:32,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:16:32,872.872 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 13:16:34,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:16:34,210.210 INFO    ] Checking for system updates...
[2026-08-25 13:16:34,251.251 INFO    ] 200
[2026-08-25 13:16:34,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:34,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:34,314.314 INFO    ] No update needed
[2026-08-25 13:16:34,316.316 INFO    ] Checking for camera pi updates...
[2026-08-25 13:16:34,355.355 INFO    ] 200
[2026-08-25 13:16:34,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:34,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:16:34,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:34,450.450 INFO    ] No camera update needed
[2026-08-25 13:16:34,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:16:34,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:16:34,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:16:34,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:16:36,504.504 INFO    ] ================================================
[2026-08-25 13:16:36,519.519 INFO    ] Launching Daemon at Tue Aug 25 13:16:36 IST 2026
[2026-08-25 13:16:36,530.530 INFO    ] ================================================
[2026-08-25 13:16:37,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:16:37
[2026-08-25 13:16:37,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:16:38,024.024 INFO    ] Initializing speech engine...
[2026-08-25 13:16:38,033.033 INFO    ] 2026-08-25 13:16:38
[2026-08-25 13:16:38,281.281 INFO    ] 2026-08-25 13:16:38
[2026-08-25 13:16:38,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:16:38,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:16:38,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:16:38,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:16:38,781.781 INFO    ] time= 25/08/2026 13:16:38
[2026-08-25 13:16:38,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:16:38,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:16:38,977.977 INFO    ] No existing commands found in stream
[2026-08-25 13:16:43,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:16:43,999.999 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 13:16:46,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:16:46,663.663 INFO    ] Checking for system updates...
[2026-08-25 13:16:46,702.702 INFO    ] 200
[2026-08-25 13:16:46,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:46,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:16:46,759.759 INFO    ] No update needed
[2026-08-25 13:16:46,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 13:16:46,797.797 INFO    ] 200
[2026-08-25 13:16:46,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:46,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:16:46,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:16:46,892.892 INFO    ] No camera update needed
[2026-08-25 13:16:46,894.894 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:16:46,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:16:46,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:16:46,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:16:48,949.949 INFO    ] ================================================
[2026-08-25 13:16:48,966.966 INFO    ] Launching Daemon at Tue Aug 25 13:16:48 IST 2026
[2026-08-25 13:16:48,977.977 INFO    ] ================================================
[2026-08-25 13:16:49,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:16:49
[2026-08-25 13:16:50,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:16:50,472.472 INFO    ] Initializing speech engine...
[2026-08-25 13:16:50,488.488 INFO    ] 2026-08-25 13:16:50
[2026-08-25 13:16:50,748.748 INFO    ] 2026-08-25 13:16:50
[2026-08-25 13:16:50,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:16:50,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:16:50,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:16:51,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:16:51,140.140 INFO    ] time= 25/08/2026 13:16:51
[2026-08-25 13:16:51,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:16:51,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:16:51,328.328 INFO    ] No existing commands found in stream
[2026-08-25 13:16:56,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:16:56,347.347 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 13:16:57,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:16:57,113.113 INFO    ] Checking for system updates...
[2026-08-25 13:16:57,149.149 INFO    ] 200
[2026-08-25 13:16:57,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:57,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:57,214.214 INFO    ] No update needed
[2026-08-25 13:16:57,217.217 INFO    ] Checking for camera pi updates...
[2026-08-25 13:16:57,256.256 INFO    ] 200
[2026-08-25 13:16:57,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:16:57,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:16:57,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:16:57,368.368 INFO    ] No camera update needed
[2026-08-25 13:16:57,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:16:57,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:16:57,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:16:57,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:16:59,427.427 INFO    ] ================================================
[2026-08-25 13:16:59,442.442 INFO    ] Launching Daemon at Tue Aug 25 13:16:59 IST 2026
[2026-08-25 13:16:59,454.454 INFO    ] ================================================
[2026-08-25 13:17:00,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:17:00
[2026-08-25 13:17:00,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:17:01,043.043 INFO    ] Initializing speech engine...
[2026-08-25 13:17:01,053.053 INFO    ] 2026-08-25 13:17:01
[2026-08-25 13:17:01,297.297 INFO    ] 2026-08-25 13:17:01
[2026-08-25 13:17:01,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:17:01,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:17:01,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:17:01,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:17:01,778.778 INFO    ] time= 25/08/2026 13:17:01
[2026-08-25 13:17:01,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:17:01,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:17:01,953.953 INFO    ] No existing commands found in stream
[2026-08-25 13:17:06,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:17:06,966.966 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 13:17:10,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:17:10,411.411 INFO    ] Checking for system updates...
[2026-08-25 13:17:10,452.452 INFO    ] 200
[2026-08-25 13:17:10,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:10,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:17:10,516.516 INFO    ] No update needed
[2026-08-25 13:17:10,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 13:17:10,556.556 INFO    ] 200
[2026-08-25 13:17:10,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:10,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:17:10,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:17:10,654.654 INFO    ] No camera update needed
[2026-08-25 13:17:10,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:17:10,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:17:10,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:17:10,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:17:12,709.709 INFO    ] ================================================
[2026-08-25 13:17:12,725.725 INFO    ] Launching Daemon at Tue Aug 25 13:17:12 IST 2026
[2026-08-25 13:17:12,737.737 INFO    ] ================================================
[2026-08-25 13:17:13,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:17:13
[2026-08-25 13:17:13,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:17:14,233.233 INFO    ] Initializing speech engine...
[2026-08-25 13:17:14,240.240 INFO    ] 2026-08-25 13:17:14
[2026-08-25 13:17:14,534.534 INFO    ] 2026-08-25 13:17:14
[2026-08-25 13:17:14,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:17:14,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:17:14,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:17:14,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:17:15,061.061 INFO    ] time= 25/08/2026 13:17:15
[2026-08-25 13:17:15,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:17:15,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:17:15,246.246 INFO    ] No existing commands found in stream
[2026-08-25 13:17:20,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:17:20,279.279 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 13:17:20,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:17:20,919.919 INFO    ] Checking for system updates...
[2026-08-25 13:17:20,959.959 INFO    ] 200
[2026-08-25 13:17:20,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:21,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:21,032.032 INFO    ] No update needed
[2026-08-25 13:17:21,034.034 INFO    ] Checking for camera pi updates...
[2026-08-25 13:17:21,068.068 INFO    ] 200
[2026-08-25 13:17:21,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:21,110.110 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:17:21,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:21,166.166 INFO    ] No camera update needed
[2026-08-25 13:17:21,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:17:21,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:17:21,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:17:21,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:17:23,221.221 INFO    ] ================================================
[2026-08-25 13:17:23,237.237 INFO    ] Launching Daemon at Tue Aug 25 13:17:23 IST 2026
[2026-08-25 13:17:23,247.247 INFO    ] ================================================
[2026-08-25 13:17:23,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:17:23
[2026-08-25 13:17:24,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:17:24,850.850 INFO    ] Initializing speech engine...
[2026-08-25 13:17:24,858.858 INFO    ] 2026-08-25 13:17:24
[2026-08-25 13:17:25,118.118 INFO    ] 2026-08-25 13:17:25
[2026-08-25 13:17:25,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:17:25,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:17:25,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:17:25,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:17:25,593.593 INFO    ] time= 25/08/2026 13:17:25
[2026-08-25 13:17:25,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:17:25,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:17:25,802.802 INFO    ] No existing commands found in stream
[2026-08-25 13:17:30,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:17:30,827.827 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 13:17:32,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:17:32,732.732 INFO    ] Checking for system updates...
[2026-08-25 13:17:32,771.771 INFO    ] 200
[2026-08-25 13:17:32,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:32,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:32,842.842 INFO    ] No update needed
[2026-08-25 13:17:32,845.845 INFO    ] Checking for camera pi updates...
[2026-08-25 13:17:32,885.885 INFO    ] 200
[2026-08-25 13:17:32,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:32,939.939 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:17:33,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:33,012.012 INFO    ] No camera update needed
[2026-08-25 13:17:33,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:17:33,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:17:33,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:17:33,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:17:35,077.077 INFO    ] ================================================
[2026-08-25 13:17:35,094.094 INFO    ] Launching Daemon at Tue Aug 25 13:17:35 IST 2026
[2026-08-25 13:17:35,105.105 INFO    ] ================================================
[2026-08-25 13:17:35,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:17:35
[2026-08-25 13:17:36,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:17:36,562.562 INFO    ] Initializing speech engine...
[2026-08-25 13:17:36,571.571 INFO    ] 2026-08-25 13:17:36
[2026-08-25 13:17:36,819.819 INFO    ] 2026-08-25 13:17:36
[2026-08-25 13:17:36,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:17:37,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:17:37,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:17:37,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:17:37,327.327 INFO    ] time= 25/08/2026 13:17:37
[2026-08-25 13:17:37,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:17:37,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:17:37,537.537 INFO    ] No existing commands found in stream
[2026-08-25 13:17:42,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:17:42,566.566 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 13:17:44,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:17:44,197.197 INFO    ] Checking for system updates...
[2026-08-25 13:17:44,236.236 INFO    ] 200
[2026-08-25 13:17:44,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:44,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:44,293.293 INFO    ] No update needed
[2026-08-25 13:17:44,296.296 INFO    ] Checking for camera pi updates...
[2026-08-25 13:17:44,329.329 INFO    ] 200
[2026-08-25 13:17:44,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:44,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:17:44,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:44,424.424 INFO    ] No camera update needed
[2026-08-25 13:17:44,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:17:44,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:17:44,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:17:44,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:17:46,480.480 INFO    ] ================================================
[2026-08-25 13:17:46,495.495 INFO    ] Launching Daemon at Tue Aug 25 13:17:46 IST 2026
[2026-08-25 13:17:46,507.507 INFO    ] ================================================
[2026-08-25 13:17:47,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:17:47
[2026-08-25 13:17:47,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:17:47,906.906 INFO    ] Initializing speech engine...
[2026-08-25 13:17:47,914.914 INFO    ] 2026-08-25 13:17:47
[2026-08-25 13:17:48,208.208 INFO    ] 2026-08-25 13:17:48
[2026-08-25 13:17:48,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:17:48,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:17:48,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:17:48,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:17:48,588.588 INFO    ] time= 25/08/2026 13:17:48
[2026-08-25 13:17:48,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:17:48,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:17:48,711.711 INFO    ] No existing commands found in stream
[2026-08-25 13:17:53,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:17:53,727.727 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 13:17:58,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:17:58,184.184 INFO    ] Checking for system updates...
[2026-08-25 13:17:58,219.219 INFO    ] 200
[2026-08-25 13:17:58,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:58,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:58,276.276 INFO    ] No update needed
[2026-08-25 13:17:58,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 13:17:58,316.316 INFO    ] 200
[2026-08-25 13:17:58,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:17:58,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:17:58,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:17:58,406.406 INFO    ] No camera update needed
[2026-08-25 13:17:58,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:17:58,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:17:58,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:17:58,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:18:00,461.461 INFO    ] ================================================
[2026-08-25 13:18:00,478.478 INFO    ] Launching Daemon at Tue Aug 25 13:18:00 IST 2026
[2026-08-25 13:18:00,489.489 INFO    ] ================================================
[2026-08-25 13:18:01,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:18:01
[2026-08-25 13:18:01,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:18:01,992.992 INFO    ] Initializing speech engine...
[2026-08-25 13:18:02,072.072 INFO    ] 2026-08-25 13:18:01
[2026-08-25 13:18:02,499.499 INFO    ] 2026-08-25 13:18:02
[2026-08-25 13:18:02,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:18:02,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:18:02,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:18:02,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:18:02,969.969 INFO    ] time= 25/08/2026 13:18:02
[2026-08-25 13:18:02,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:18:03,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:18:03,138.138 INFO    ] No existing commands found in stream
[2026-08-25 13:18:08,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:18:08,167.167 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 13:18:12,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:18:12,142.142 INFO    ] Checking for system updates...
[2026-08-25 13:18:12,179.179 INFO    ] 200
[2026-08-25 13:18:12,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:12,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:12,243.243 INFO    ] No update needed
[2026-08-25 13:18:12,246.246 INFO    ] Checking for camera pi updates...
[2026-08-25 13:18:12,283.283 INFO    ] 200
[2026-08-25 13:18:12,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:12,336.336 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:18:12,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:12,495.495 INFO    ] No camera update needed
[2026-08-25 13:18:12,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:18:12,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:18:12,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:18:12,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:18:14,551.551 INFO    ] ================================================
[2026-08-25 13:18:14,567.567 INFO    ] Launching Daemon at Tue Aug 25 13:18:14 IST 2026
[2026-08-25 13:18:14,578.578 INFO    ] ================================================
[2026-08-25 13:18:15,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:18:15
[2026-08-25 13:18:15,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:18:16,031.031 INFO    ] Initializing speech engine...
[2026-08-25 13:18:16,037.037 INFO    ] 2026-08-25 13:18:16
[2026-08-25 13:18:16,301.301 INFO    ] 2026-08-25 13:18:16
[2026-08-25 13:18:16,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:18:16,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:18:16,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:18:16,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:18:16,764.764 INFO    ] time= 25/08/2026 13:18:16
[2026-08-25 13:18:16,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:18:16,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:18:16,993.993 INFO    ] No existing commands found in stream
[2026-08-25 13:18:22,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:18:22,012.012 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 13:18:23,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:18:23,690.690 INFO    ] Checking for system updates...
[2026-08-25 13:18:23,725.725 INFO    ] 200
[2026-08-25 13:18:23,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:23,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:23,781.781 INFO    ] No update needed
[2026-08-25 13:18:23,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 13:18:23,820.820 INFO    ] 200
[2026-08-25 13:18:23,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:23,864.864 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:18:23,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:23,939.939 INFO    ] No camera update needed
[2026-08-25 13:18:23,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:18:23,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:18:23,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:18:23,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:18:26,995.995 INFO    ] ================================================
[2026-08-25 13:18:26,011.011 INFO    ] Launching Daemon at Tue Aug 25 13:18:26 IST 2026
[2026-08-25 13:18:26,023.023 INFO    ] ================================================
[2026-08-25 13:18:26,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:18:26
[2026-08-25 13:18:27,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:18:27,516.516 INFO    ] Initializing speech engine...
[2026-08-25 13:18:27,528.528 INFO    ] 2026-08-25 13:18:27
[2026-08-25 13:18:27,773.773 INFO    ] 2026-08-25 13:18:27
[2026-08-25 13:18:27,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:18:28,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:18:28,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:18:28,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:18:28,268.268 INFO    ] time= 25/08/2026 13:18:28
[2026-08-25 13:18:28,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:18:28,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:18:28,455.455 INFO    ] No existing commands found in stream
[2026-08-25 13:18:33,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:18:33,483.483 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 13:18:34,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:18:34,418.418 INFO    ] Checking for system updates...
[2026-08-25 13:18:34,453.453 INFO    ] 200
[2026-08-25 13:18:34,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:34,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:34,511.511 INFO    ] No update needed
[2026-08-25 13:18:34,514.514 INFO    ] Checking for camera pi updates...
[2026-08-25 13:18:34,552.552 INFO    ] 200
[2026-08-25 13:18:34,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:34,598.598 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:18:34,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:34,651.651 INFO    ] No camera update needed
[2026-08-25 13:18:34,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:18:34,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:18:34,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:18:34,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:18:36,705.705 INFO    ] ================================================
[2026-08-25 13:18:36,721.721 INFO    ] Launching Daemon at Tue Aug 25 13:18:36 IST 2026
[2026-08-25 13:18:36,732.732 INFO    ] ================================================
[2026-08-25 13:18:37,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:18:37
[2026-08-25 13:18:37,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:18:38,148.148 INFO    ] Initializing speech engine...
[2026-08-25 13:18:38,157.157 INFO    ] 2026-08-25 13:18:38
[2026-08-25 13:18:38,401.401 INFO    ] 2026-08-25 13:18:38
[2026-08-25 13:18:38,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:18:38,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:18:38,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:18:38,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:18:38,868.868 INFO    ] time= 25/08/2026 13:18:38
[2026-08-25 13:18:38,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:18:38,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:18:39,101.101 INFO    ] No existing commands found in stream
[2026-08-25 13:18:44,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:18:44,120.120 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 13:18:46,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:18:46,866.866 INFO    ] Checking for system updates...
[2026-08-25 13:18:46,901.901 INFO    ] 200
[2026-08-25 13:18:46,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:46,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:46,964.964 INFO    ] No update needed
[2026-08-25 13:18:46,966.966 INFO    ] Checking for camera pi updates...
[2026-08-25 13:18:47,000.000 INFO    ] 200
[2026-08-25 13:18:47,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:47,047.047 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:18:47,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:47,119.119 INFO    ] No camera update needed
[2026-08-25 13:18:47,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:18:47,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:18:47,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:18:47,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:18:49,174.174 INFO    ] ================================================
[2026-08-25 13:18:49,190.190 INFO    ] Launching Daemon at Tue Aug 25 13:18:49 IST 2026
[2026-08-25 13:18:49,201.201 INFO    ] ================================================
[2026-08-25 13:18:49,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:18:49
[2026-08-25 13:18:50,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:18:50,657.657 INFO    ] Initializing speech engine...
[2026-08-25 13:18:50,664.664 INFO    ] 2026-08-25 13:18:50
[2026-08-25 13:18:50,925.925 INFO    ] 2026-08-25 13:18:50
[2026-08-25 13:18:50,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:18:51,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:18:51,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:18:51,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:18:51,394.394 INFO    ] time= 25/08/2026 13:18:51
[2026-08-25 13:18:51,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:18:51,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:18:51,621.621 INFO    ] No existing commands found in stream
[2026-08-25 13:18:56,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:18:56,640.640 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 13:18:59,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:18:59,792.792 INFO    ] Checking for system updates...
[2026-08-25 13:18:59,828.828 INFO    ] 200
[2026-08-25 13:18:59,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:59,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:18:59,894.894 INFO    ] No update needed
[2026-08-25 13:18:59,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 13:18:59,933.933 INFO    ] 200
[2026-08-25 13:18:59,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:18:59,980.980 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:19:00,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:19:00,034.034 INFO    ] No camera update needed
[2026-08-25 13:19:00,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:19:00,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:19:00,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:19:00,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:19:02,095.095 INFO    ] ================================================
[2026-08-25 13:19:02,132.132 INFO    ] Launching Daemon at Tue Aug 25 13:19:02 IST 2026
[2026-08-25 13:19:02,155.155 INFO    ] ================================================
[2026-08-25 13:19:02,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:19:02
[2026-08-25 13:19:03,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:19:03,904.904 INFO    ] Initializing speech engine...
[2026-08-25 13:19:03,917.917 INFO    ] 2026-08-25 13:19:03
[2026-08-25 13:19:04,170.170 INFO    ] 2026-08-25 13:19:04
[2026-08-25 13:19:04,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:19:04,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:19:04,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:19:04,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:19:04,629.629 INFO    ] time= 25/08/2026 13:19:04
[2026-08-25 13:19:04,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:19:04,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:19:04,864.864 INFO    ] No existing commands found in stream
[2026-08-25 13:19:09,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:19:09,889.889 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 13:19:12,935.935 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:19:12,938.938 INFO    ] Checking for system updates...
[2026-08-25 13:19:12,977.977 INFO    ] 200
[2026-08-25 13:19:12,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:13,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:19:13,041.041 INFO    ] No update needed
[2026-08-25 13:19:13,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 13:19:13,077.077 INFO    ] 200
[2026-08-25 13:19:13,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:13,125.125 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:19:13,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:19:13,177.177 INFO    ] No camera update needed
[2026-08-25 13:19:13,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:19:13,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:19:13,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:19:13,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:19:15,231.231 INFO    ] ================================================
[2026-08-25 13:19:15,247.247 INFO    ] Launching Daemon at Tue Aug 25 13:19:15 IST 2026
[2026-08-25 13:19:15,259.259 INFO    ] ================================================
[2026-08-25 13:19:15,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:19:15
[2026-08-25 13:19:16,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:19:16,684.684 INFO    ] Initializing speech engine...
[2026-08-25 13:19:16,698.698 INFO    ] 2026-08-25 13:19:16
[2026-08-25 13:19:16,992.992 INFO    ] 2026-08-25 13:19:16
[2026-08-25 13:19:17,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:19:17,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:19:17,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:19:17,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:19:17,424.424 INFO    ] time= 25/08/2026 13:19:17
[2026-08-25 13:19:17,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:19:17,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:19:17,549.549 INFO    ] No existing commands found in stream
[2026-08-25 13:19:22,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:19:22,572.572 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 13:19:26,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:19:26,646.646 INFO    ] Checking for system updates...
[2026-08-25 13:19:26,686.686 INFO    ] 200
[2026-08-25 13:19:26,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:26,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:19:26,751.751 INFO    ] No update needed
[2026-08-25 13:19:26,753.753 INFO    ] Checking for camera pi updates...
[2026-08-25 13:19:26,792.792 INFO    ] 200
[2026-08-25 13:19:26,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:26,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:19:26,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:19:26,889.889 INFO    ] No camera update needed
[2026-08-25 13:19:26,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:19:26,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:19:26,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:19:26,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:19:28,945.945 INFO    ] ================================================
[2026-08-25 13:19:28,961.961 INFO    ] Launching Daemon at Tue Aug 25 13:19:28 IST 2026
[2026-08-25 13:19:28,973.973 INFO    ] ================================================
[2026-08-25 13:19:29,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:19:29
[2026-08-25 13:19:30,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:19:30,437.437 INFO    ] Initializing speech engine...
[2026-08-25 13:19:30,446.446 INFO    ] 2026-08-25 13:19:30
[2026-08-25 13:19:30,709.709 INFO    ] 2026-08-25 13:19:30
[2026-08-25 13:19:30,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:19:30,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:19:30,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:19:31,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:19:31,190.190 INFO    ] time= 25/08/2026 13:19:31
[2026-08-25 13:19:31,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:19:31,272.272 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:19:31,368.368 INFO    ] No existing commands found in stream
[2026-08-25 13:19:36,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:19:36,403.403 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 13:19:39,776.776 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:19:39,778.778 INFO    ] Checking for system updates...
[2026-08-25 13:19:39,813.813 INFO    ] 200
[2026-08-25 13:19:39,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:39,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:19:39,880.880 INFO    ] No update needed
[2026-08-25 13:19:39,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 13:19:39,916.916 INFO    ] 200
[2026-08-25 13:19:39,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:39,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:19:40,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:19:40,022.022 INFO    ] No camera update needed
[2026-08-25 13:19:40,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:19:40,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:19:40,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:19:40,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:19:42,080.080 INFO    ] ================================================
[2026-08-25 13:19:42,095.095 INFO    ] Launching Daemon at Tue Aug 25 13:19:42 IST 2026
[2026-08-25 13:19:42,107.107 INFO    ] ================================================
[2026-08-25 13:19:42,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:19:42
[2026-08-25 13:19:43,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:19:43,536.536 INFO    ] Initializing speech engine...
[2026-08-25 13:19:43,545.545 INFO    ] 2026-08-25 13:19:43
[2026-08-25 13:19:43,793.793 INFO    ] 2026-08-25 13:19:43
[2026-08-25 13:19:43,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:19:44,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:19:44,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:19:44,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:19:44,162.162 INFO    ] time= 25/08/2026 13:19:44
[2026-08-25 13:19:44,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:19:44,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:19:44,352.352 INFO    ] No existing commands found in stream
[2026-08-25 13:19:49,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:19:49,371.371 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 13:19:51,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:19:51,912.912 INFO    ] Checking for system updates...
[2026-08-25 13:19:51,952.952 INFO    ] 200
[2026-08-25 13:19:51,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:52,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:19:52,010.010 INFO    ] No update needed
[2026-08-25 13:19:52,012.012 INFO    ] Checking for camera pi updates...
[2026-08-25 13:19:52,052.052 INFO    ] 200
[2026-08-25 13:19:52,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:19:52,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:19:52,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:19:52,148.148 INFO    ] No camera update needed
[2026-08-25 13:19:52,151.151 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:19:52,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:19:52,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:19:52,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:19:54,206.206 INFO    ] ================================================
[2026-08-25 13:19:54,222.222 INFO    ] Launching Daemon at Tue Aug 25 13:19:54 IST 2026
[2026-08-25 13:19:54,233.233 INFO    ] ================================================
[2026-08-25 13:19:54,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:19:54
[2026-08-25 13:19:55,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:19:55,655.655 INFO    ] Initializing speech engine...
[2026-08-25 13:19:55,663.663 INFO    ] 2026-08-25 13:19:55
[2026-08-25 13:19:55,915.915 INFO    ] 2026-08-25 13:19:55
[2026-08-25 13:19:55,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:19:56,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:19:56,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:19:56,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:19:56,396.396 INFO    ] time= 25/08/2026 13:19:56
[2026-08-25 13:19:56,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:19:56,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:19:56,621.621 INFO    ] No existing commands found in stream
[2026-08-25 13:20:01,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:20:01,649.649 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 13:20:08,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:20:08,849.849 INFO    ] Checking for system updates...
[2026-08-25 13:20:08,892.892 INFO    ] 200
[2026-08-25 13:20:08,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:08,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:20:08,949.949 INFO    ] No update needed
[2026-08-25 13:20:08,952.952 INFO    ] Checking for camera pi updates...
[2026-08-25 13:20:08,985.985 INFO    ] 200
[2026-08-25 13:20:08,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:09,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:20:09,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:20:09,093.093 INFO    ] No camera update needed
[2026-08-25 13:20:09,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:20:09,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:20:09,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:20:09,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:20:11,153.153 INFO    ] ================================================
[2026-08-25 13:20:11,170.170 INFO    ] Launching Daemon at Tue Aug 25 13:20:11 IST 2026
[2026-08-25 13:20:11,181.181 INFO    ] ================================================
[2026-08-25 13:20:11,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:20:11
[2026-08-25 13:20:12,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:20:12,662.662 INFO    ] Initializing speech engine...
[2026-08-25 13:20:12,685.685 INFO    ] 2026-08-25 13:20:12
[2026-08-25 13:20:12,954.954 INFO    ] 2026-08-25 13:20:12
[2026-08-25 13:20:12,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:20:13,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:20:13,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:20:13,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:20:13,692.692 INFO    ] time= 25/08/2026 13:20:13
[2026-08-25 13:20:13,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:20:13,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:20:13,925.925 INFO    ] No existing commands found in stream
[2026-08-25 13:20:18,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:20:18,958.958 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 13:20:20,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:20:20,446.446 INFO    ] Checking for system updates...
[2026-08-25 13:20:20,482.482 INFO    ] 200
[2026-08-25 13:20:20,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:20,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:20:20,541.541 INFO    ] No update needed
[2026-08-25 13:20:20,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 13:20:20,580.580 INFO    ] 200
[2026-08-25 13:20:20,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:20,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:20:20,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:20:20,773.773 INFO    ] No camera update needed
[2026-08-25 13:20:20,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:20:20,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:20:20,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:20:20,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:20:22,830.830 INFO    ] ================================================
[2026-08-25 13:20:22,845.845 INFO    ] Launching Daemon at Tue Aug 25 13:20:22 IST 2026
[2026-08-25 13:20:22,856.856 INFO    ] ================================================
[2026-08-25 13:20:23,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:20:23
[2026-08-25 13:20:24,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:20:24,290.290 INFO    ] Initializing speech engine...
[2026-08-25 13:20:24,299.299 INFO    ] 2026-08-25 13:20:24
[2026-08-25 13:20:24,593.593 INFO    ] 2026-08-25 13:20:24
[2026-08-25 13:20:24,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:20:24,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:20:24,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:20:25,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:20:25,015.015 INFO    ] time= 25/08/2026 13:20:25
[2026-08-25 13:20:25,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:20:25,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:20:25,192.192 INFO    ] No existing commands found in stream
[2026-08-25 13:20:30,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:20:30,220.220 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 13:20:32,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:20:32,076.076 INFO    ] Checking for system updates...
[2026-08-25 13:20:32,119.119 INFO    ] 200
[2026-08-25 13:20:32,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:32,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:20:32,193.193 INFO    ] No update needed
[2026-08-25 13:20:32,196.196 INFO    ] Checking for camera pi updates...
[2026-08-25 13:20:32,232.232 INFO    ] 200
[2026-08-25 13:20:32,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:32,279.279 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:20:32,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:20:32,338.338 INFO    ] No camera update needed
[2026-08-25 13:20:32,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:20:32,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:20:32,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:20:32,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:20:34,396.396 INFO    ] ================================================
[2026-08-25 13:20:34,411.411 INFO    ] Launching Daemon at Tue Aug 25 13:20:34 IST 2026
[2026-08-25 13:20:34,423.423 INFO    ] ================================================
[2026-08-25 13:20:35,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:20:35
[2026-08-25 13:20:35,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:20:35,880.880 INFO    ] Initializing speech engine...
[2026-08-25 13:20:35,890.890 INFO    ] 2026-08-25 13:20:35
[2026-08-25 13:20:36,153.153 INFO    ] 2026-08-25 13:20:36
[2026-08-25 13:20:36,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:20:36,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:20:36,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:20:36,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:20:36,617.617 INFO    ] time= 25/08/2026 13:20:36
[2026-08-25 13:20:36,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:20:36,704.704 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:20:36,826.826 INFO    ] No existing commands found in stream
[2026-08-25 13:20:41,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:20:41,859.859 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 13:20:45,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:20:45,670.670 INFO    ] Checking for system updates...
[2026-08-25 13:20:45,706.706 INFO    ] 200
[2026-08-25 13:20:45,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:45,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:20:45,762.762 INFO    ] No update needed
[2026-08-25 13:20:45,765.765 INFO    ] Checking for camera pi updates...
[2026-08-25 13:20:45,798.798 INFO    ] 200
[2026-08-25 13:20:45,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:45,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:20:45,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:20:45,890.890 INFO    ] No camera update needed
[2026-08-25 13:20:45,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:20:45,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:20:45,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:20:45,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:20:47,944.944 INFO    ] ================================================
[2026-08-25 13:20:47,960.960 INFO    ] Launching Daemon at Tue Aug 25 13:20:47 IST 2026
[2026-08-25 13:20:47,971.971 INFO    ] ================================================
[2026-08-25 13:20:48,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:20:48
[2026-08-25 13:20:49,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:20:49,394.394 INFO    ] Initializing speech engine...
[2026-08-25 13:20:49,403.403 INFO    ] 2026-08-25 13:20:49
[2026-08-25 13:20:49,663.663 INFO    ] 2026-08-25 13:20:49
[2026-08-25 13:20:49,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:20:49,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:20:49,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:20:50,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:20:50,113.113 INFO    ] time= 25/08/2026 13:20:50
[2026-08-25 13:20:50,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:20:50,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:20:50,348.348 INFO    ] No existing commands found in stream
[2026-08-25 13:20:55,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:20:55,375.375 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 13:20:58,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:20:58,076.076 INFO    ] Checking for system updates...
[2026-08-25 13:20:58,112.112 INFO    ] 200
[2026-08-25 13:20:58,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:58,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:20:58,169.169 INFO    ] No update needed
[2026-08-25 13:20:58,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 13:20:58,206.206 INFO    ] 200
[2026-08-25 13:20:58,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:20:58,254.254 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:20:58,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:20:58,301.301 INFO    ] No camera update needed
[2026-08-25 13:20:58,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:20:58,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:20:58,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:20:58,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:21:00,357.357 INFO    ] ================================================
[2026-08-25 13:21:00,372.372 INFO    ] Launching Daemon at Tue Aug 25 13:21:00 IST 2026
[2026-08-25 13:21:00,384.384 INFO    ] ================================================
[2026-08-25 13:21:00,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:21:00
[2026-08-25 13:21:01,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:21:02,100.100 INFO    ] Initializing speech engine...
[2026-08-25 13:21:02,106.106 INFO    ] 2026-08-25 13:21:02
[2026-08-25 13:21:02,392.392 INFO    ] 2026-08-25 13:21:02
[2026-08-25 13:21:02,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:21:02,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:21:02,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:21:02,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:21:02,837.837 INFO    ] time= 25/08/2026 13:21:02
[2026-08-25 13:21:02,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:21:02,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:21:02,918.918 INFO    ] No existing commands found in stream
[2026-08-25 13:21:07,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:21:07,946.946 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 13:21:10,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:21:10,039.039 INFO    ] Checking for system updates...
[2026-08-25 13:21:10,076.076 INFO    ] 200
[2026-08-25 13:21:10,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:10,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:21:10,143.143 INFO    ] No update needed
[2026-08-25 13:21:10,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 13:21:10,181.181 INFO    ] 200
[2026-08-25 13:21:10,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:10,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:21:10,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:21:10,303.303 INFO    ] No camera update needed
[2026-08-25 13:21:10,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:21:10,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:21:10,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:21:10,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:21:12,361.361 INFO    ] ================================================
[2026-08-25 13:21:12,377.377 INFO    ] Launching Daemon at Tue Aug 25 13:21:12 IST 2026
[2026-08-25 13:21:12,389.389 INFO    ] ================================================
[2026-08-25 13:21:12,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:21:12
[2026-08-25 13:21:13,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:21:13,806.806 INFO    ] Initializing speech engine...
[2026-08-25 13:21:13,815.815 INFO    ] 2026-08-25 13:21:13
[2026-08-25 13:21:14,059.059 INFO    ] 2026-08-25 13:21:14
[2026-08-25 13:21:14,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:21:14,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:21:14,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:21:14,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:21:14,525.525 INFO    ] time= 25/08/2026 13:21:14
[2026-08-25 13:21:14,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:21:14,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:21:14,748.748 INFO    ] No existing commands found in stream
[2026-08-25 13:21:19,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:21:19,776.776 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 13:21:21,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:21:21,857.857 INFO    ] Checking for system updates...
[2026-08-25 13:21:21,896.896 INFO    ] 200
[2026-08-25 13:21:21,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:21,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:21:21,960.960 INFO    ] No update needed
[2026-08-25 13:21:21,963.963 INFO    ] Checking for camera pi updates...
[2026-08-25 13:21:21,999.999 INFO    ] 200
[2026-08-25 13:21:22,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:22,090.090 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:21:22,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:21:22,162.162 INFO    ] No camera update needed
[2026-08-25 13:21:22,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:21:22,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:21:22,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:21:22,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:21:24,218.218 INFO    ] ================================================
[2026-08-25 13:21:24,233.233 INFO    ] Launching Daemon at Tue Aug 25 13:21:24 IST 2026
[2026-08-25 13:21:24,244.244 INFO    ] ================================================
[2026-08-25 13:21:24,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:21:24
[2026-08-25 13:21:25,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:21:25,646.646 INFO    ] Initializing speech engine...
[2026-08-25 13:21:25,661.661 INFO    ] 2026-08-25 13:21:25
[2026-08-25 13:21:25,923.923 INFO    ] 2026-08-25 13:21:25
[2026-08-25 13:21:25,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:21:26,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:21:26,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:21:26,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:21:26,296.296 INFO    ] time= 25/08/2026 13:21:26
[2026-08-25 13:21:26,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:21:26,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:21:26,492.492 INFO    ] No existing commands found in stream
[2026-08-25 13:21:31,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:21:31,506.506 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 13:21:32,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:21:32,386.386 INFO    ] Checking for system updates...
[2026-08-25 13:21:32,429.429 INFO    ] 200
[2026-08-25 13:21:32,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:32,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:21:32,502.502 INFO    ] No update needed
[2026-08-25 13:21:32,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 13:21:32,551.551 INFO    ] 200
[2026-08-25 13:21:32,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:32,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:21:32,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:21:32,669.669 INFO    ] No camera update needed
[2026-08-25 13:21:32,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:21:32,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:21:32,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:21:32,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:21:34,731.731 INFO    ] ================================================
[2026-08-25 13:21:34,746.746 INFO    ] Launching Daemon at Tue Aug 25 13:21:34 IST 2026
[2026-08-25 13:21:34,756.756 INFO    ] ================================================
[2026-08-25 13:21:35,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:21:35
[2026-08-25 13:21:35,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:21:36,158.158 INFO    ] Initializing speech engine...
[2026-08-25 13:21:36,166.166 INFO    ] 2026-08-25 13:21:36
[2026-08-25 13:21:36,459.459 INFO    ] 2026-08-25 13:21:36
[2026-08-25 13:21:36,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:21:36,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:21:36,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:21:36,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:21:36,842.842 INFO    ] time= 25/08/2026 13:21:36
[2026-08-25 13:21:36,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:21:36,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:21:36,967.967 INFO    ] No existing commands found in stream
[2026-08-25 13:21:41,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:21:41,982.982 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 13:21:42,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:21:42,768.768 INFO    ] Checking for system updates...
[2026-08-25 13:21:42,803.803 INFO    ] 200
[2026-08-25 13:21:42,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:42,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:21:42,861.861 INFO    ] No update needed
[2026-08-25 13:21:42,864.864 INFO    ] Checking for camera pi updates...
[2026-08-25 13:21:42,898.898 INFO    ] 200
[2026-08-25 13:21:42,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:42,945.945 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:21:42,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:21:42,995.995 INFO    ] No camera update needed
[2026-08-25 13:21:42,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:21:43,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:21:43,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:21:43,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:21:45,051.051 INFO    ] ================================================
[2026-08-25 13:21:45,067.067 INFO    ] Launching Daemon at Tue Aug 25 13:21:45 IST 2026
[2026-08-25 13:21:45,078.078 INFO    ] ================================================
[2026-08-25 13:21:45,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:21:45
[2026-08-25 13:21:46,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:21:46,496.496 INFO    ] Initializing speech engine...
[2026-08-25 13:21:46,509.509 INFO    ] 2026-08-25 13:21:46
[2026-08-25 13:21:46,764.764 INFO    ] 2026-08-25 13:21:46
[2026-08-25 13:21:46,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:21:46,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:21:47,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:21:47,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:21:47,187.187 INFO    ] time= 25/08/2026 13:21:47
[2026-08-25 13:21:47,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:21:47,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:21:47,394.394 INFO    ] No existing commands found in stream
[2026-08-25 13:21:52,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:21:52,409.409 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 13:21:54,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:21:54,616.616 INFO    ] Checking for system updates...
[2026-08-25 13:21:54,657.657 INFO    ] 200
[2026-08-25 13:21:54,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:54,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:21:54,722.722 INFO    ] No update needed
[2026-08-25 13:21:54,724.724 INFO    ] Checking for camera pi updates...
[2026-08-25 13:21:54,763.763 INFO    ] 200
[2026-08-25 13:21:54,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:21:54,812.812 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:21:54,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:21:54,879.879 INFO    ] No camera update needed
[2026-08-25 13:21:54,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:21:54,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:21:54,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:21:54,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:21:56,935.935 INFO    ] ================================================
[2026-08-25 13:21:56,949.949 INFO    ] Launching Daemon at Tue Aug 25 13:21:56 IST 2026
[2026-08-25 13:21:56,960.960 INFO    ] ================================================
[2026-08-25 13:21:57,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:21:57
[2026-08-25 13:21:58,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:21:58,423.423 INFO    ] Initializing speech engine...
[2026-08-25 13:21:58,431.431 INFO    ] 2026-08-25 13:21:58
[2026-08-25 13:21:58,729.729 INFO    ] 2026-08-25 13:21:58
[2026-08-25 13:21:58,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:21:58,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:21:58,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:21:59,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:21:59,157.157 INFO    ] time= 25/08/2026 13:21:59
[2026-08-25 13:21:59,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:21:59,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:21:59,323.323 INFO    ] No existing commands found in stream
[2026-08-25 13:22:04,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:22:04,351.351 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 13:22:07,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:22:07,398.398 INFO    ] Checking for system updates...
[2026-08-25 13:22:07,434.434 INFO    ] 200
[2026-08-25 13:22:07,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:07,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:07,491.491 INFO    ] No update needed
[2026-08-25 13:22:07,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 13:22:07,527.527 INFO    ] 200
[2026-08-25 13:22:07,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:07,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:22:07,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:07,629.629 INFO    ] No camera update needed
[2026-08-25 13:22:07,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:22:07,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:22:07,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:22:07,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:22:09,684.684 INFO    ] ================================================
[2026-08-25 13:22:09,700.700 INFO    ] Launching Daemon at Tue Aug 25 13:22:09 IST 2026
[2026-08-25 13:22:09,710.710 INFO    ] ================================================
[2026-08-25 13:22:10,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:22:10
[2026-08-25 13:22:10,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:22:11,164.164 INFO    ] Initializing speech engine...
[2026-08-25 13:22:11,173.173 INFO    ] 2026-08-25 13:22:11
[2026-08-25 13:22:11,423.423 INFO    ] 2026-08-25 13:22:11
[2026-08-25 13:22:11,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:22:11,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:22:11,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:22:11,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:22:11,934.934 INFO    ] time= 25/08/2026 13:22:11
[2026-08-25 13:22:11,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:22:11,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:22:12,131.131 INFO    ] No existing commands found in stream
[2026-08-25 13:22:17,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:22:17,148.148 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 13:22:19,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:22:19,031.031 INFO    ] Checking for system updates...
[2026-08-25 13:22:19,070.070 INFO    ] 200
[2026-08-25 13:22:19,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:19,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:22:19,141.141 INFO    ] No update needed
[2026-08-25 13:22:19,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 13:22:19,180.180 INFO    ] 200
[2026-08-25 13:22:19,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:19,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:22:19,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:22:19,289.289 INFO    ] No camera update needed
[2026-08-25 13:22:19,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:22:19,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:22:19,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:22:19,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:22:21,356.356 INFO    ] ================================================
[2026-08-25 13:22:21,371.371 INFO    ] Launching Daemon at Tue Aug 25 13:22:21 IST 2026
[2026-08-25 13:22:21,382.382 INFO    ] ================================================
[2026-08-25 13:22:21,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:22:21
[2026-08-25 13:22:22,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:22:22,793.793 INFO    ] Initializing speech engine...
[2026-08-25 13:22:22,799.799 INFO    ] 2026-08-25 13:22:22
[2026-08-25 13:22:23,101.101 INFO    ] 2026-08-25 13:22:23
[2026-08-25 13:22:23,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:22:23,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:22:23,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:22:23,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:22:23,525.525 INFO    ] time= 25/08/2026 13:22:23
[2026-08-25 13:22:23,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:22:23,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:22:23,638.638 INFO    ] No existing commands found in stream
[2026-08-25 13:22:28,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:22:28,652.652 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 13:22:30,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:22:30,050.050 INFO    ] Checking for system updates...
[2026-08-25 13:22:30,090.090 INFO    ] 200
[2026-08-25 13:22:30,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:30,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:30,149.149 INFO    ] No update needed
[2026-08-25 13:22:30,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 13:22:30,185.185 INFO    ] 200
[2026-08-25 13:22:30,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:30,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:22:30,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:30,390.390 INFO    ] No camera update needed
[2026-08-25 13:22:30,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:22:30,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:22:30,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:22:30,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:22:32,447.447 INFO    ] ================================================
[2026-08-25 13:22:32,465.465 INFO    ] Launching Daemon at Tue Aug 25 13:22:32 IST 2026
[2026-08-25 13:22:32,477.477 INFO    ] ================================================
[2026-08-25 13:22:33,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:22:33
[2026-08-25 13:22:33,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:22:33,957.957 INFO    ] Initializing speech engine...
[2026-08-25 13:22:33,971.971 INFO    ] 2026-08-25 13:22:33
[2026-08-25 13:22:34,235.235 INFO    ] 2026-08-25 13:22:34
[2026-08-25 13:22:34,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:22:34,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:22:34,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:22:34,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:22:34,614.614 INFO    ] time= 25/08/2026 13:22:34
[2026-08-25 13:22:34,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:22:34,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:22:34,814.814 INFO    ] No existing commands found in stream
[2026-08-25 13:22:39,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:22:39,828.828 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 13:22:41,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:22:41,366.366 INFO    ] Checking for system updates...
[2026-08-25 13:22:41,401.401 INFO    ] 200
[2026-08-25 13:22:41,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:41,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:41,459.459 INFO    ] No update needed
[2026-08-25 13:22:41,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 13:22:41,500.500 INFO    ] 200
[2026-08-25 13:22:41,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:41,543.543 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:22:41,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:41,592.592 INFO    ] No camera update needed
[2026-08-25 13:22:41,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:22:41,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:22:41,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:22:41,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:22:43,649.649 INFO    ] ================================================
[2026-08-25 13:22:43,664.664 INFO    ] Launching Daemon at Tue Aug 25 13:22:43 IST 2026
[2026-08-25 13:22:43,674.674 INFO    ] ================================================
[2026-08-25 13:22:44,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:22:44
[2026-08-25 13:22:44,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:22:45,122.122 INFO    ] Initializing speech engine...
[2026-08-25 13:22:45,131.131 INFO    ] 2026-08-25 13:22:45
[2026-08-25 13:22:45,390.390 INFO    ] 2026-08-25 13:22:45
[2026-08-25 13:22:45,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:22:45,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:22:45,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:22:45,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:22:45,853.853 INFO    ] time= 25/08/2026 13:22:45
[2026-08-25 13:22:45,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:22:45,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:22:46,085.085 INFO    ] No existing commands found in stream
[2026-08-25 13:22:51,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:22:51,109.109 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 13:22:56,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:22:56,117.117 INFO    ] Checking for system updates...
[2026-08-25 13:22:56,158.158 INFO    ] 200
[2026-08-25 13:22:56,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:56,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:56,216.216 INFO    ] No update needed
[2026-08-25 13:22:56,219.219 INFO    ] Checking for camera pi updates...
[2026-08-25 13:22:56,252.252 INFO    ] 200
[2026-08-25 13:22:56,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:22:56,301.301 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:22:56,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:22:56,347.347 INFO    ] No camera update needed
[2026-08-25 13:22:56,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:22:56,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:22:56,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:22:56,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:22:58,403.403 INFO    ] ================================================
[2026-08-25 13:22:58,418.418 INFO    ] Launching Daemon at Tue Aug 25 13:22:58 IST 2026
[2026-08-25 13:22:58,428.428 INFO    ] ================================================
[2026-08-25 13:22:59,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:22:59
[2026-08-25 13:22:59,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:22:59,882.882 INFO    ] Initializing speech engine...
[2026-08-25 13:22:59,889.889 INFO    ] 2026-08-25 13:22:59
[2026-08-25 13:23:00,149.149 INFO    ] 2026-08-25 13:23:00
[2026-08-25 13:23:00,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:23:00,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:23:00,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:23:00,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:23:00,602.602 INFO    ] time= 25/08/2026 13:23:00
[2026-08-25 13:23:00,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:23:00,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:23:00,838.838 INFO    ] No existing commands found in stream
[2026-08-25 13:23:05,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:23:05,861.861 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 13:23:09,773.773 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:23:09,776.776 INFO    ] Checking for system updates...
[2026-08-25 13:23:09,811.811 INFO    ] 200
[2026-08-25 13:23:09,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:09,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:23:09,868.868 INFO    ] No update needed
[2026-08-25 13:23:09,871.871 INFO    ] Checking for camera pi updates...
[2026-08-25 13:23:09,909.909 INFO    ] 200
[2026-08-25 13:23:09,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:09,953.953 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:23:10,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:23:10,003.003 INFO    ] No camera update needed
[2026-08-25 13:23:10,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:23:10,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:23:10,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:23:10,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:23:12,060.060 INFO    ] ================================================
[2026-08-25 13:23:12,076.076 INFO    ] Launching Daemon at Tue Aug 25 13:23:12 IST 2026
[2026-08-25 13:23:12,086.086 INFO    ] ================================================
[2026-08-25 13:23:12,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:23:12
[2026-08-25 13:23:13,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:23:13,766.766 INFO    ] Initializing speech engine...
[2026-08-25 13:23:13,780.780 INFO    ] 2026-08-25 13:23:13
[2026-08-25 13:23:14,092.092 INFO    ] 2026-08-25 13:23:14
[2026-08-25 13:23:14,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:23:14,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:23:14,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:23:14,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:23:14,600.600 INFO    ] time= 25/08/2026 13:23:14
[2026-08-25 13:23:14,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:23:14,629.629 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:23:14,758.758 INFO    ] No existing commands found in stream
[2026-08-25 13:23:19,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:23:19,785.785 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 13:23:21,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:23:21,186.186 INFO    ] Checking for system updates...
[2026-08-25 13:23:21,222.222 INFO    ] 200
[2026-08-25 13:23:21,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:21,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:23:21,288.288 INFO    ] No update needed
[2026-08-25 13:23:21,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 13:23:21,323.323 INFO    ] 200
[2026-08-25 13:23:21,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:21,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:23:21,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:23:21,415.415 INFO    ] No camera update needed
[2026-08-25 13:23:21,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:23:21,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:23:21,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:23:21,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:23:23,469.469 INFO    ] ================================================
[2026-08-25 13:23:23,484.484 INFO    ] Launching Daemon at Tue Aug 25 13:23:23 IST 2026
[2026-08-25 13:23:23,494.494 INFO    ] ================================================
[2026-08-25 13:23:24,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:23:24
[2026-08-25 13:23:24,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:23:24,928.928 INFO    ] Initializing speech engine...
[2026-08-25 13:23:24,934.934 INFO    ] 2026-08-25 13:23:24
[2026-08-25 13:23:25,234.234 INFO    ] 2026-08-25 13:23:25
[2026-08-25 13:23:25,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:23:25,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:23:25,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:23:25,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:23:25,620.620 INFO    ] time= 25/08/2026 13:23:25
[2026-08-25 13:23:25,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:23:25,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:23:25,750.750 INFO    ] No existing commands found in stream
[2026-08-25 13:23:30,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:23:30,763.763 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 13:23:34,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:23:34,832.832 INFO    ] Checking for system updates...
[2026-08-25 13:23:34,867.867 INFO    ] 200
[2026-08-25 13:23:34,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:34,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:23:34,924.924 INFO    ] No update needed
[2026-08-25 13:23:34,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 13:23:34,964.964 INFO    ] 200
[2026-08-25 13:23:34,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:35,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:23:35,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:23:35,078.078 INFO    ] No camera update needed
[2026-08-25 13:23:35,080.080 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:23:35,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:23:35,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:23:35,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:23:37,136.136 INFO    ] ================================================
[2026-08-25 13:23:37,152.152 INFO    ] Launching Daemon at Tue Aug 25 13:23:37 IST 2026
[2026-08-25 13:23:37,163.163 INFO    ] ================================================
[2026-08-25 13:23:37,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:23:37
[2026-08-25 13:23:38,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:23:38,571.571 INFO    ] Initializing speech engine...
[2026-08-25 13:23:38,580.580 INFO    ] 2026-08-25 13:23:38
[2026-08-25 13:23:38,879.879 INFO    ] 2026-08-25 13:23:38
[2026-08-25 13:23:38,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:23:39,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:23:39,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:23:39,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:23:39,284.284 INFO    ] time= 25/08/2026 13:23:39
[2026-08-25 13:23:39,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:23:39,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:23:39,398.398 INFO    ] No existing commands found in stream
[2026-08-25 13:23:44,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:23:44,411.411 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 13:23:47,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:23:47,520.520 INFO    ] Checking for system updates...
[2026-08-25 13:23:47,555.555 INFO    ] 200
[2026-08-25 13:23:47,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:47,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:23:47,620.620 INFO    ] No update needed
[2026-08-25 13:23:47,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 13:23:47,660.660 INFO    ] 200
[2026-08-25 13:23:47,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:47,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:23:47,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:23:47,750.750 INFO    ] No camera update needed
[2026-08-25 13:23:47,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:23:47,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:23:47,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:23:47,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:23:49,807.807 INFO    ] ================================================
[2026-08-25 13:23:49,822.822 INFO    ] Launching Daemon at Tue Aug 25 13:23:49 IST 2026
[2026-08-25 13:23:49,833.833 INFO    ] ================================================
[2026-08-25 13:23:50,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:23:50
[2026-08-25 13:23:51,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:23:51,275.275 INFO    ] Initializing speech engine...
[2026-08-25 13:23:51,286.286 INFO    ] 2026-08-25 13:23:51
[2026-08-25 13:23:51,532.532 INFO    ] 2026-08-25 13:23:51
[2026-08-25 13:23:51,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:23:51,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:23:51,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:23:51,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:23:52,012.012 INFO    ] time= 25/08/2026 13:23:51
[2026-08-25 13:23:52,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:23:52,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:23:52,245.245 INFO    ] No existing commands found in stream
[2026-08-25 13:23:57,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:23:57,271.271 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 13:23:59,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:23:59,895.895 INFO    ] Checking for system updates...
[2026-08-25 13:23:59,937.937 INFO    ] 200
[2026-08-25 13:23:59,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:23:59,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:23:59,997.997 INFO    ] No update needed
[2026-08-25 13:24:00,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 13:24:00,034.034 INFO    ] 200
[2026-08-25 13:24:00,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:00,085.085 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:24:00,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:24:00,144.144 INFO    ] No camera update needed
[2026-08-25 13:24:00,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:24:00,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:24:00,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:24:00,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:24:02,204.204 INFO    ] ================================================
[2026-08-25 13:24:02,221.221 INFO    ] Launching Daemon at Tue Aug 25 13:24:02 IST 2026
[2026-08-25 13:24:02,237.237 INFO    ] ================================================
[2026-08-25 13:24:02,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:24:02
[2026-08-25 13:24:03,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:24:03,789.789 INFO    ] Initializing speech engine...
[2026-08-25 13:24:03,807.807 INFO    ] 2026-08-25 13:24:03
[2026-08-25 13:24:04,085.085 INFO    ] 2026-08-25 13:24:04
[2026-08-25 13:24:04,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:24:04,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:24:04,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:24:04,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:24:04,501.501 INFO    ] time= 25/08/2026 13:24:04
[2026-08-25 13:24:04,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:24:04,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:24:04,593.593 INFO    ] No existing commands found in stream
[2026-08-25 13:24:09,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:24:09,610.610 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 13:24:12,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:24:12,848.848 INFO    ] Checking for system updates...
[2026-08-25 13:24:12,896.896 INFO    ] 200
[2026-08-25 13:24:12,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:12,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:24:12,960.960 INFO    ] No update needed
[2026-08-25 13:24:12,963.963 INFO    ] Checking for camera pi updates...
[2026-08-25 13:24:12,997.997 INFO    ] 200
[2026-08-25 13:24:13,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:13,041.041 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:24:13,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:24:13,097.097 INFO    ] No camera update needed
[2026-08-25 13:24:13,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:24:13,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:24:13,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:24:13,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:24:15,151.151 INFO    ] ================================================
[2026-08-25 13:24:15,167.167 INFO    ] Launching Daemon at Tue Aug 25 13:24:15 IST 2026
[2026-08-25 13:24:15,177.177 INFO    ] ================================================
[2026-08-25 13:24:15,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:24:15
[2026-08-25 13:24:16,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:24:16,595.595 INFO    ] Initializing speech engine...
[2026-08-25 13:24:16,605.605 INFO    ] 2026-08-25 13:24:16
[2026-08-25 13:24:16,849.849 INFO    ] 2026-08-25 13:24:16
[2026-08-25 13:24:16,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:24:17,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:24:17,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:24:17,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:24:17,342.342 INFO    ] time= 25/08/2026 13:24:17
[2026-08-25 13:24:17,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:24:17,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:24:17,553.553 INFO    ] No existing commands found in stream
[2026-08-25 13:24:22,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:24:22,569.569 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 13:24:24,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:24:24,153.153 INFO    ] Checking for system updates...
[2026-08-25 13:24:24,192.192 INFO    ] 200
[2026-08-25 13:24:24,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:24,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:24:24,254.254 INFO    ] No update needed
[2026-08-25 13:24:24,257.257 INFO    ] Checking for camera pi updates...
[2026-08-25 13:24:24,290.290 INFO    ] 200
[2026-08-25 13:24:24,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:24,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:24:24,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:24:24,386.386 INFO    ] No camera update needed
[2026-08-25 13:24:24,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:24:24,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:24:24,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:24:24,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:24:26,442.442 INFO    ] ================================================
[2026-08-25 13:24:26,457.457 INFO    ] Launching Daemon at Tue Aug 25 13:24:26 IST 2026
[2026-08-25 13:24:26,467.467 INFO    ] ================================================
[2026-08-25 13:24:27,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:24:27
[2026-08-25 13:24:27,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:24:27,918.918 INFO    ] Initializing speech engine...
[2026-08-25 13:24:27,927.927 INFO    ] 2026-08-25 13:24:27
[2026-08-25 13:24:28,176.176 INFO    ] 2026-08-25 13:24:28
[2026-08-25 13:24:28,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:24:28,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:24:28,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:24:28,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:24:28,669.669 INFO    ] time= 25/08/2026 13:24:28
[2026-08-25 13:24:28,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:24:28,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:24:28,882.882 INFO    ] No existing commands found in stream
[2026-08-25 13:24:33,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:24:33,899.899 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 13:24:37,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:24:37,532.532 INFO    ] Checking for system updates...
[2026-08-25 13:24:37,567.567 INFO    ] 200
[2026-08-25 13:24:37,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:37,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:24:37,624.624 INFO    ] No update needed
[2026-08-25 13:24:37,627.627 INFO    ] Checking for camera pi updates...
[2026-08-25 13:24:37,661.661 INFO    ] 200
[2026-08-25 13:24:37,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:37,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:24:37,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:24:37,766.766 INFO    ] No camera update needed
[2026-08-25 13:24:37,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:24:37,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:24:37,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:24:37,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:24:39,821.821 INFO    ] ================================================
[2026-08-25 13:24:39,836.836 INFO    ] Launching Daemon at Tue Aug 25 13:24:39 IST 2026
[2026-08-25 13:24:39,847.847 INFO    ] ================================================
[2026-08-25 13:24:40,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:24:40
[2026-08-25 13:24:40,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:24:41,258.258 INFO    ] Initializing speech engine...
[2026-08-25 13:24:41,267.267 INFO    ] 2026-08-25 13:24:41
[2026-08-25 13:24:41,512.512 INFO    ] 2026-08-25 13:24:41
[2026-08-25 13:24:41,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:24:41,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:24:41,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:24:41,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:24:41,972.972 INFO    ] time= 25/08/2026 13:24:41
[2026-08-25 13:24:42,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:24:42,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:24:42,186.186 INFO    ] No existing commands found in stream
[2026-08-25 13:24:47,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:24:47,211.211 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 13:24:51,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:24:51,487.487 INFO    ] Checking for system updates...
[2026-08-25 13:24:51,526.526 INFO    ] 200
[2026-08-25 13:24:51,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:51,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:24:51,583.583 INFO    ] No update needed
[2026-08-25 13:24:51,586.586 INFO    ] Checking for camera pi updates...
[2026-08-25 13:24:51,623.623 INFO    ] 200
[2026-08-25 13:24:51,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:24:51,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:24:51,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:24:51,722.722 INFO    ] No camera update needed
[2026-08-25 13:24:51,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:24:51,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:24:51,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:24:51,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:24:53,781.781 INFO    ] ================================================
[2026-08-25 13:24:53,796.796 INFO    ] Launching Daemon at Tue Aug 25 13:24:53 IST 2026
[2026-08-25 13:24:53,807.807 INFO    ] ================================================
[2026-08-25 13:24:54,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:24:54
[2026-08-25 13:24:54,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:24:55,232.232 INFO    ] Initializing speech engine...
[2026-08-25 13:24:55,241.241 INFO    ] 2026-08-25 13:24:55
[2026-08-25 13:24:55,491.491 INFO    ] 2026-08-25 13:24:55
[2026-08-25 13:24:55,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:24:55,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:24:55,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:24:55,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:24:55,868.868 INFO    ] time= 25/08/2026 13:24:55
[2026-08-25 13:24:55,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:24:55,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:24:56,042.042 INFO    ] No existing commands found in stream
[2026-08-25 13:25:01,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:25:01,076.076 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 13:25:02,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:25:02,047.047 INFO    ] Checking for system updates...
[2026-08-25 13:25:02,088.088 INFO    ] 200
[2026-08-25 13:25:02,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:02,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:25:02,161.161 INFO    ] No update needed
[2026-08-25 13:25:02,164.164 INFO    ] Checking for camera pi updates...
[2026-08-25 13:25:02,206.206 INFO    ] 200
[2026-08-25 13:25:02,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:02,260.260 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:25:02,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:25:02,361.361 INFO    ] No camera update needed
[2026-08-25 13:25:02,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:25:02,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:25:02,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:25:02,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:25:04,426.426 INFO    ] ================================================
[2026-08-25 13:25:04,441.441 INFO    ] Launching Daemon at Tue Aug 25 13:25:04 IST 2026
[2026-08-25 13:25:04,453.453 INFO    ] ================================================
[2026-08-25 13:25:05,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:25:05
[2026-08-25 13:25:05,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:25:05,882.882 INFO    ] Initializing speech engine...
[2026-08-25 13:25:05,891.891 INFO    ] 2026-08-25 13:25:05
[2026-08-25 13:25:06,148.148 INFO    ] 2026-08-25 13:25:06
[2026-08-25 13:25:06,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:25:06,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:25:06,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:25:06,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:25:06,623.623 INFO    ] time= 25/08/2026 13:25:06
[2026-08-25 13:25:06,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:25:06,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:25:06,845.845 INFO    ] No existing commands found in stream
[2026-08-25 13:25:11,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:25:11,880.880 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 13:25:14,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:25:14,190.190 INFO    ] Checking for system updates...
[2026-08-25 13:25:14,225.225 INFO    ] 200
[2026-08-25 13:25:14,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:14,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:25:14,282.282 INFO    ] No update needed
[2026-08-25 13:25:14,284.284 INFO    ] Checking for camera pi updates...
[2026-08-25 13:25:14,322.322 INFO    ] 200
[2026-08-25 13:25:14,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:14,364.364 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:25:14,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:25:14,420.420 INFO    ] No camera update needed
[2026-08-25 13:25:14,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:25:14,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:25:14,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:25:14,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:25:16,475.475 INFO    ] ================================================
[2026-08-25 13:25:16,491.491 INFO    ] Launching Daemon at Tue Aug 25 13:25:16 IST 2026
[2026-08-25 13:25:16,502.502 INFO    ] ================================================
[2026-08-25 13:25:17,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:25:17
[2026-08-25 13:25:17,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:25:18,097.097 INFO    ] Initializing speech engine...
[2026-08-25 13:25:18,105.105 INFO    ] 2026-08-25 13:25:18
[2026-08-25 13:25:18,391.391 INFO    ] 2026-08-25 13:25:18
[2026-08-25 13:25:18,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:25:18,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:25:18,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:25:18,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:25:18,887.887 INFO    ] time= 25/08/2026 13:25:18
[2026-08-25 13:25:18,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:25:18,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:25:19,104.104 INFO    ] No existing commands found in stream
[2026-08-25 13:25:24,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:25:24,130.130 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 13:25:24,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:25:24,830.830 INFO    ] Checking for system updates...
[2026-08-25 13:25:24,867.867 INFO    ] 200
[2026-08-25 13:25:24,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:24,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:25:24,934.934 INFO    ] No update needed
[2026-08-25 13:25:24,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 13:25:24,976.976 INFO    ] 200
[2026-08-25 13:25:24,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:25,025.025 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:25:25,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:25:25,083.083 INFO    ] No camera update needed
[2026-08-25 13:25:25,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:25:25,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:25:25,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:25:25,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:25:27,141.141 INFO    ] ================================================
[2026-08-25 13:25:27,157.157 INFO    ] Launching Daemon at Tue Aug 25 13:25:27 IST 2026
[2026-08-25 13:25:27,168.168 INFO    ] ================================================
[2026-08-25 13:25:27,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:25:27
[2026-08-25 13:25:28,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:25:28,820.820 INFO    ] Initializing speech engine...
[2026-08-25 13:25:28,834.834 INFO    ] 2026-08-25 13:25:28
[2026-08-25 13:25:29,108.108 INFO    ] 2026-08-25 13:25:29
[2026-08-25 13:25:29,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:25:29,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:25:29,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:25:29,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:25:29,661.661 INFO    ] time= 25/08/2026 13:25:29
[2026-08-25 13:25:29,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:25:29,710.710 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:25:29,826.826 INFO    ] No existing commands found in stream
[2026-08-25 13:25:34,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:25:34,863.863 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 13:25:37,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:25:37,051.051 INFO    ] Checking for system updates...
[2026-08-25 13:25:37,089.089 INFO    ] 200
[2026-08-25 13:25:37,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:37,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:25:37,148.148 INFO    ] No update needed
[2026-08-25 13:25:37,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 13:25:37,185.185 INFO    ] 200
[2026-08-25 13:25:37,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:37,231.231 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:25:37,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:25:37,284.284 INFO    ] No camera update needed
[2026-08-25 13:25:37,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:25:37,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:25:37,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:25:37,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:25:39,342.342 INFO    ] ================================================
[2026-08-25 13:25:39,357.357 INFO    ] Launching Daemon at Tue Aug 25 13:25:39 IST 2026
[2026-08-25 13:25:39,368.368 INFO    ] ================================================
[2026-08-25 13:25:39,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:25:39
[2026-08-25 13:25:40,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:25:40,780.780 INFO    ] Initializing speech engine...
[2026-08-25 13:25:40,790.790 INFO    ] 2026-08-25 13:25:40
[2026-08-25 13:25:41,047.047 INFO    ] 2026-08-25 13:25:41
[2026-08-25 13:25:41,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:25:41,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:25:41,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:25:41,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:25:41,498.498 INFO    ] time= 25/08/2026 13:25:41
[2026-08-25 13:25:41,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:25:41,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:25:41,727.727 INFO    ] No existing commands found in stream
[2026-08-25 13:25:46,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:25:46,751.751 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 13:25:49,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:25:49,869.869 INFO    ] Checking for system updates...
[2026-08-25 13:25:49,905.905 INFO    ] 200
[2026-08-25 13:25:49,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:49,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:25:49,969.969 INFO    ] No update needed
[2026-08-25 13:25:49,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 13:25:50,004.004 INFO    ] 200
[2026-08-25 13:25:50,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:25:50,047.047 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:25:50,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:25:50,096.096 INFO    ] No camera update needed
[2026-08-25 13:25:50,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:25:50,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:25:50,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:25:50,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:25:52,151.151 INFO    ] ================================================
[2026-08-25 13:25:52,167.167 INFO    ] Launching Daemon at Tue Aug 25 13:25:52 IST 2026
[2026-08-25 13:25:52,179.179 INFO    ] ================================================
[2026-08-25 13:25:52,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:25:52
[2026-08-25 13:25:53,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:25:53,654.654 INFO    ] Initializing speech engine...
[2026-08-25 13:25:53,659.659 INFO    ] 2026-08-25 13:25:53
[2026-08-25 13:25:53,921.921 INFO    ] 2026-08-25 13:25:53
[2026-08-25 13:25:53,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:25:54,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:25:54,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:25:54,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:25:54,285.285 INFO    ] time= 25/08/2026 13:25:54
[2026-08-25 13:25:54,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:25:54,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:25:54,476.476 INFO    ] No existing commands found in stream
[2026-08-25 13:25:59,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:25:59,490.490 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 13:26:03,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:26:03,516.516 INFO    ] Checking for system updates...
[2026-08-25 13:26:03,551.551 INFO    ] 200
[2026-08-25 13:26:03,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:03,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:26:03,612.612 INFO    ] No update needed
[2026-08-25 13:26:03,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 13:26:03,648.648 INFO    ] 200
[2026-08-25 13:26:03,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:03,691.691 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:26:03,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:26:03,756.756 INFO    ] No camera update needed
[2026-08-25 13:26:03,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:26:03,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:26:03,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:26:03,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:26:05,815.815 INFO    ] ================================================
[2026-08-25 13:26:05,830.830 INFO    ] Launching Daemon at Tue Aug 25 13:26:05 IST 2026
[2026-08-25 13:26:05,842.842 INFO    ] ================================================
[2026-08-25 13:26:06,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:26:06
[2026-08-25 13:26:07,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:26:07,386.386 INFO    ] Initializing speech engine...
[2026-08-25 13:26:07,396.396 INFO    ] 2026-08-25 13:26:07
[2026-08-25 13:26:07,708.708 INFO    ] 2026-08-25 13:26:07
[2026-08-25 13:26:07,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:26:08,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:26:08,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:26:08,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:26:08,204.204 INFO    ] time= 25/08/2026 13:26:08
[2026-08-25 13:26:08,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:26:08,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:26:08,342.342 INFO    ] No existing commands found in stream
[2026-08-25 13:26:13,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:26:13,369.369 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 13:26:14,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:26:14,031.031 INFO    ] Checking for system updates...
[2026-08-25 13:26:14,066.066 INFO    ] 200
[2026-08-25 13:26:14,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:14,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:26:14,129.129 INFO    ] No update needed
[2026-08-25 13:26:14,132.132 INFO    ] Checking for camera pi updates...
[2026-08-25 13:26:14,165.165 INFO    ] 200
[2026-08-25 13:26:14,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:14,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:26:14,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:26:14,257.257 INFO    ] No camera update needed
[2026-08-25 13:26:14,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:26:14,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:26:14,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:26:14,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:26:16,312.312 INFO    ] ================================================
[2026-08-25 13:26:16,327.327 INFO    ] Launching Daemon at Tue Aug 25 13:26:16 IST 2026
[2026-08-25 13:26:16,339.339 INFO    ] ================================================
[2026-08-25 13:26:16,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:26:16
[2026-08-25 13:26:17,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:26:17,791.791 INFO    ] Initializing speech engine...
[2026-08-25 13:26:17,800.800 INFO    ] 2026-08-25 13:26:17
[2026-08-25 13:26:18,063.063 INFO    ] 2026-08-25 13:26:18
[2026-08-25 13:26:18,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:26:18,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:26:18,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:26:18,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:26:18,609.609 INFO    ] time= 25/08/2026 13:26:18
[2026-08-25 13:26:18,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:26:18,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:26:18,743.743 INFO    ] No existing commands found in stream
[2026-08-25 13:26:23,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:26:23,773.773 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 13:26:27,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:26:27,488.488 INFO    ] Checking for system updates...
[2026-08-25 13:26:27,527.527 INFO    ] 200
[2026-08-25 13:26:27,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:27,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:26:27,590.590 INFO    ] No update needed
[2026-08-25 13:26:27,592.592 INFO    ] Checking for camera pi updates...
[2026-08-25 13:26:27,629.629 INFO    ] 200
[2026-08-25 13:26:27,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:27,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:26:27,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:26:27,725.725 INFO    ] No camera update needed
[2026-08-25 13:26:27,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:26:27,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:26:27,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:26:27,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:26:29,780.780 INFO    ] ================================================
[2026-08-25 13:26:29,796.796 INFO    ] Launching Daemon at Tue Aug 25 13:26:29 IST 2026
[2026-08-25 13:26:29,807.807 INFO    ] ================================================
[2026-08-25 13:26:30,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:26:30
[2026-08-25 13:26:31,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:26:31,393.393 INFO    ] Initializing speech engine...
[2026-08-25 13:26:31,413.413 INFO    ] 2026-08-25 13:26:31
[2026-08-25 13:26:31,706.706 INFO    ] 2026-08-25 13:26:31
[2026-08-25 13:26:31,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:26:32,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:26:32,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:26:32,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:26:32,263.263 INFO    ] time= 25/08/2026 13:26:32
[2026-08-25 13:26:32,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:26:32,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:26:32,423.423 INFO    ] No existing commands found in stream
[2026-08-25 13:26:37,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:26:37,476.476 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 13:26:38,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:26:38,405.405 INFO    ] Checking for system updates...
[2026-08-25 13:26:38,440.440 INFO    ] 200
[2026-08-25 13:26:38,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:38,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:26:38,497.497 INFO    ] No update needed
[2026-08-25 13:26:38,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 13:26:38,549.549 INFO    ] 200
[2026-08-25 13:26:38,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:38,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:26:38,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:26:38,745.745 INFO    ] No camera update needed
[2026-08-25 13:26:38,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:26:38,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:26:38,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:26:38,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:26:40,799.799 INFO    ] ================================================
[2026-08-25 13:26:40,814.814 INFO    ] Launching Daemon at Tue Aug 25 13:26:40 IST 2026
[2026-08-25 13:26:40,825.825 INFO    ] ================================================
[2026-08-25 13:26:41,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:26:41
[2026-08-25 13:26:42,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:26:42,302.302 INFO    ] Initializing speech engine...
[2026-08-25 13:26:42,311.311 INFO    ] 2026-08-25 13:26:42
[2026-08-25 13:26:42,572.572 INFO    ] 2026-08-25 13:26:42
[2026-08-25 13:26:42,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:26:42,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:26:42,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:26:42,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:26:43,063.063 INFO    ] time= 25/08/2026 13:26:43
[2026-08-25 13:26:43,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:26:43,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:26:43,264.264 INFO    ] No existing commands found in stream
[2026-08-25 13:26:48,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:26:48,280.280 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 13:26:50,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:26:50,301.301 INFO    ] Checking for system updates...
[2026-08-25 13:26:50,339.339 INFO    ] 200
[2026-08-25 13:26:50,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:50,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:26:50,396.396 INFO    ] No update needed
[2026-08-25 13:26:50,398.398 INFO    ] Checking for camera pi updates...
[2026-08-25 13:26:50,434.434 INFO    ] 200
[2026-08-25 13:26:50,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:26:50,477.477 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:26:50,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:26:50,529.529 INFO    ] No camera update needed
[2026-08-25 13:26:50,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:26:50,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:26:50,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:26:50,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:26:52,583.583 INFO    ] ================================================
[2026-08-25 13:26:52,598.598 INFO    ] Launching Daemon at Tue Aug 25 13:26:52 IST 2026
[2026-08-25 13:26:52,609.609 INFO    ] ================================================
[2026-08-25 13:26:53,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:26:53
[2026-08-25 13:26:53,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:26:54,023.023 INFO    ] Initializing speech engine...
[2026-08-25 13:26:54,033.033 INFO    ] 2026-08-25 13:26:54
[2026-08-25 13:26:54,282.282 INFO    ] 2026-08-25 13:26:54
[2026-08-25 13:26:54,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:26:54,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:26:54,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:26:54,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:26:54,759.759 INFO    ] time= 25/08/2026 13:26:54
[2026-08-25 13:26:54,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:26:54,857.857 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:26:54,997.997 INFO    ] No existing commands found in stream
[2026-08-25 13:27:00,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:27:00,025.025 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 13:27:04,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:27:04,015.015 INFO    ] Checking for system updates...
[2026-08-25 13:27:04,053.053 INFO    ] 200
[2026-08-25 13:27:04,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:04,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:27:04,117.117 INFO    ] No update needed
[2026-08-25 13:27:04,119.119 INFO    ] Checking for camera pi updates...
[2026-08-25 13:27:04,156.156 INFO    ] 200
[2026-08-25 13:27:04,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:04,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:27:04,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:27:04,249.249 INFO    ] No camera update needed
[2026-08-25 13:27:04,252.252 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:27:04,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:27:04,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:27:04,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:27:06,305.305 INFO    ] ================================================
[2026-08-25 13:27:06,324.324 INFO    ] Launching Daemon at Tue Aug 25 13:27:06 IST 2026
[2026-08-25 13:27:06,339.339 INFO    ] ================================================
[2026-08-25 13:27:06,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:27:06
[2026-08-25 13:27:07,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:27:07,803.803 INFO    ] Initializing speech engine...
[2026-08-25 13:27:07,810.810 INFO    ] 2026-08-25 13:27:07
[2026-08-25 13:27:08,070.070 INFO    ] 2026-08-25 13:27:08
[2026-08-25 13:27:08,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:27:08,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:27:08,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:27:08,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:27:08,559.559 INFO    ] time= 25/08/2026 13:27:08
[2026-08-25 13:27:08,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:27:08,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:27:08,759.759 INFO    ] No existing commands found in stream
[2026-08-25 13:27:13,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:27:13,782.782 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 13:27:16,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:27:16,670.670 INFO    ] Checking for system updates...
[2026-08-25 13:27:16,706.706 INFO    ] 200
[2026-08-25 13:27:16,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:16,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:27:16,767.767 INFO    ] No update needed
[2026-08-25 13:27:16,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 13:27:16,807.807 INFO    ] 200
[2026-08-25 13:27:16,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:16,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:27:16,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:27:16,918.918 INFO    ] No camera update needed
[2026-08-25 13:27:16,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:27:16,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:27:16,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:27:16,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:27:18,976.976 INFO    ] ================================================
[2026-08-25 13:27:18,991.991 INFO    ] Launching Daemon at Tue Aug 25 13:27:18 IST 2026
[2026-08-25 13:27:19,002.002 INFO    ] ================================================
[2026-08-25 13:27:19,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:27:19
[2026-08-25 13:27:20,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:27:20,429.429 INFO    ] Initializing speech engine...
[2026-08-25 13:27:20,437.437 INFO    ] 2026-08-25 13:27:20
[2026-08-25 13:27:20,692.692 INFO    ] 2026-08-25 13:27:20
[2026-08-25 13:27:20,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:27:20,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:27:20,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:27:21,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:27:21,167.167 INFO    ] time= 25/08/2026 13:27:21
[2026-08-25 13:27:21,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:27:21,242.242 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:27:21,364.364 INFO    ] No existing commands found in stream
[2026-08-25 13:27:26,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:27:26,392.392 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 13:27:27,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:27:27,584.584 INFO    ] Checking for system updates...
[2026-08-25 13:27:27,622.622 INFO    ] 200
[2026-08-25 13:27:27,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:27,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:27:27,685.685 INFO    ] No update needed
[2026-08-25 13:27:27,688.688 INFO    ] Checking for camera pi updates...
[2026-08-25 13:27:27,720.720 INFO    ] 200
[2026-08-25 13:27:27,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:27,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:27:27,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:27:27,821.821 INFO    ] No camera update needed
[2026-08-25 13:27:27,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:27:27,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:27:27,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:27:27,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:27:29,877.877 INFO    ] ================================================
[2026-08-25 13:27:29,893.893 INFO    ] Launching Daemon at Tue Aug 25 13:27:29 IST 2026
[2026-08-25 13:27:29,904.904 INFO    ] ================================================
[2026-08-25 13:27:30,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:27:30
[2026-08-25 13:27:31,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:27:31,491.491 INFO    ] Initializing speech engine...
[2026-08-25 13:27:31,501.501 INFO    ] 2026-08-25 13:27:31
[2026-08-25 13:27:31,785.785 INFO    ] 2026-08-25 13:27:31
[2026-08-25 13:27:31,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:27:32,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:27:32,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:27:32,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:27:32,300.300 INFO    ] time= 25/08/2026 13:27:32
[2026-08-25 13:27:32,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:27:32,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:27:32,512.512 INFO    ] No existing commands found in stream
[2026-08-25 13:27:37,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:27:37,541.541 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 13:27:39,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:27:39,725.725 INFO    ] Checking for system updates...
[2026-08-25 13:27:39,765.765 INFO    ] 200
[2026-08-25 13:27:39,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:39,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:27:39,830.830 INFO    ] No update needed
[2026-08-25 13:27:39,833.833 INFO    ] Checking for camera pi updates...
[2026-08-25 13:27:39,873.873 INFO    ] 200
[2026-08-25 13:27:39,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:39,926.926 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:27:39,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:27:39,972.972 INFO    ] No camera update needed
[2026-08-25 13:27:39,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:27:39,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:27:39,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:27:39,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:27:42,030.030 INFO    ] ================================================
[2026-08-25 13:27:42,045.045 INFO    ] Launching Daemon at Tue Aug 25 13:27:42 IST 2026
[2026-08-25 13:27:42,056.056 INFO    ] ================================================
[2026-08-25 13:27:42,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:27:42
[2026-08-25 13:27:43,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:27:43,647.647 INFO    ] Initializing speech engine...
[2026-08-25 13:27:43,661.661 INFO    ] 2026-08-25 13:27:43
[2026-08-25 13:27:43,940.940 INFO    ] 2026-08-25 13:27:43
[2026-08-25 13:27:43,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:27:44,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:27:44,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:27:44,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:27:44,448.448 INFO    ] time= 25/08/2026 13:27:44
[2026-08-25 13:27:44,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:27:44,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:27:44,681.681 INFO    ] No existing commands found in stream
[2026-08-25 13:27:49,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:27:49,707.707 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 13:27:51,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:27:51,772.772 INFO    ] Checking for system updates...
[2026-08-25 13:27:51,813.813 INFO    ] 200
[2026-08-25 13:27:51,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:51,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:27:51,872.872 INFO    ] No update needed
[2026-08-25 13:27:51,874.874 INFO    ] Checking for camera pi updates...
[2026-08-25 13:27:51,908.908 INFO    ] 200
[2026-08-25 13:27:51,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:27:51,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:27:52,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:27:52,003.003 INFO    ] No camera update needed
[2026-08-25 13:27:52,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:27:52,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:27:52,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:27:52,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:27:54,057.057 INFO    ] ================================================
[2026-08-25 13:27:54,072.072 INFO    ] Launching Daemon at Tue Aug 25 13:27:54 IST 2026
[2026-08-25 13:27:54,083.083 INFO    ] ================================================
[2026-08-25 13:27:54,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:27:54
[2026-08-25 13:27:55,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:27:55,497.497 INFO    ] Initializing speech engine...
[2026-08-25 13:27:55,515.515 INFO    ] 2026-08-25 13:27:55
[2026-08-25 13:27:55,783.783 INFO    ] 2026-08-25 13:27:55
[2026-08-25 13:27:55,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:27:56,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:27:56,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:27:56,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:27:56,195.195 INFO    ] time= 25/08/2026 13:27:56
[2026-08-25 13:27:56,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:27:56,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:27:56,386.386 INFO    ] No existing commands found in stream
[2026-08-25 13:28:01,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:28:01,403.403 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 13:28:02,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:28:02,545.545 INFO    ] Checking for system updates...
[2026-08-25 13:28:02,588.588 INFO    ] 200
[2026-08-25 13:28:02,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:02,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:02,661.661 INFO    ] No update needed
[2026-08-25 13:28:02,664.664 INFO    ] Checking for camera pi updates...
[2026-08-25 13:28:02,704.704 INFO    ] 200
[2026-08-25 13:28:02,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:02,764.764 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:28:02,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:02,834.834 INFO    ] No camera update needed
[2026-08-25 13:28:02,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:28:02,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:28:02,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:28:02,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:28:04,896.896 INFO    ] ================================================
[2026-08-25 13:28:04,912.912 INFO    ] Launching Daemon at Tue Aug 25 13:28:04 IST 2026
[2026-08-25 13:28:04,922.922 INFO    ] ================================================
[2026-08-25 13:28:05,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:28:05
[2026-08-25 13:28:06,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:28:06,377.377 INFO    ] Initializing speech engine...
[2026-08-25 13:28:06,406.406 INFO    ] 2026-08-25 13:28:06
[2026-08-25 13:28:06,689.689 INFO    ] 2026-08-25 13:28:06
[2026-08-25 13:28:06,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:28:06,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:28:06,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:28:07,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:28:07,093.093 INFO    ] time= 25/08/2026 13:28:07
[2026-08-25 13:28:07,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:28:07,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:28:07,284.284 INFO    ] No existing commands found in stream
[2026-08-25 13:28:12,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:28:12,312.312 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 13:28:15,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:28:15,976.976 INFO    ] Checking for system updates...
[2026-08-25 13:28:16,011.011 INFO    ] 200
[2026-08-25 13:28:16,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:16,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:16,076.076 INFO    ] No update needed
[2026-08-25 13:28:16,079.079 INFO    ] Checking for camera pi updates...
[2026-08-25 13:28:16,112.112 INFO    ] 200
[2026-08-25 13:28:16,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:16,158.158 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:28:16,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:16,273.273 INFO    ] No camera update needed
[2026-08-25 13:28:16,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:28:16,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:28:16,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:28:16,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:28:18,327.327 INFO    ] ================================================
[2026-08-25 13:28:18,342.342 INFO    ] Launching Daemon at Tue Aug 25 13:28:18 IST 2026
[2026-08-25 13:28:18,353.353 INFO    ] ================================================
[2026-08-25 13:28:18,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:28:18
[2026-08-25 13:28:19,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:28:19,791.791 INFO    ] Initializing speech engine...
[2026-08-25 13:28:19,810.810 INFO    ] 2026-08-25 13:28:19
[2026-08-25 13:28:20,061.061 INFO    ] 2026-08-25 13:28:20
[2026-08-25 13:28:20,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:28:20,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:28:20,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:28:20,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:28:20,477.477 INFO    ] time= 25/08/2026 13:28:20
[2026-08-25 13:28:20,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:28:20,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:28:20,664.664 INFO    ] No existing commands found in stream
[2026-08-25 13:28:25,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:28:25,698.698 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 13:28:28,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:28:28,713.713 INFO    ] Checking for system updates...
[2026-08-25 13:28:28,752.752 INFO    ] 200
[2026-08-25 13:28:28,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:28,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:28:28,815.815 INFO    ] No update needed
[2026-08-25 13:28:28,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 13:28:28,854.854 INFO    ] 200
[2026-08-25 13:28:28,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:28,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:28:28,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:28:28,964.964 INFO    ] No camera update needed
[2026-08-25 13:28:28,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:28:28,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:28:28,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:28:28,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:28:31,018.018 INFO    ] ================================================
[2026-08-25 13:28:31,034.034 INFO    ] Launching Daemon at Tue Aug 25 13:28:31 IST 2026
[2026-08-25 13:28:31,045.045 INFO    ] ================================================
[2026-08-25 13:28:31,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:28:31
[2026-08-25 13:28:32,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:28:32,533.533 INFO    ] Initializing speech engine...
[2026-08-25 13:28:32,556.556 INFO    ] 2026-08-25 13:28:32
[2026-08-25 13:28:32,846.846 INFO    ] 2026-08-25 13:28:32
[2026-08-25 13:28:32,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:28:33,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:28:33,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:28:33,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:28:33,327.327 INFO    ] time= 25/08/2026 13:28:33
[2026-08-25 13:28:33,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:28:33,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:28:33,523.523 INFO    ] No existing commands found in stream
[2026-08-25 13:28:38,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:28:38,550.550 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 13:28:39,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:28:39,017.017 INFO    ] Checking for system updates...
[2026-08-25 13:28:39,062.062 INFO    ] 200
[2026-08-25 13:28:39,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:39,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:39,128.128 INFO    ] No update needed
[2026-08-25 13:28:39,131.131 INFO    ] Checking for camera pi updates...
[2026-08-25 13:28:39,168.168 INFO    ] 200
[2026-08-25 13:28:39,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:39,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:28:39,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:39,372.372 INFO    ] No camera update needed
[2026-08-25 13:28:39,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:28:39,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:28:39,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:28:39,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:28:41,431.431 INFO    ] ================================================
[2026-08-25 13:28:41,446.446 INFO    ] Launching Daemon at Tue Aug 25 13:28:41 IST 2026
[2026-08-25 13:28:41,456.456 INFO    ] ================================================
[2026-08-25 13:28:42,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:28:42
[2026-08-25 13:28:42,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:28:43,053.053 INFO    ] Initializing speech engine...
[2026-08-25 13:28:43,063.063 INFO    ] 2026-08-25 13:28:43
[2026-08-25 13:28:43,351.351 INFO    ] 2026-08-25 13:28:43
[2026-08-25 13:28:43,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:28:43,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:28:43,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:28:43,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:28:43,806.806 INFO    ] time= 25/08/2026 13:28:43
[2026-08-25 13:28:43,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:28:43,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:28:44,032.032 INFO    ] No existing commands found in stream
[2026-08-25 13:28:49,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:28:49,053.053 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 13:28:52,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:28:52,635.635 INFO    ] Checking for system updates...
[2026-08-25 13:28:52,673.673 INFO    ] 200
[2026-08-25 13:28:52,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:52,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:52,731.731 INFO    ] No update needed
[2026-08-25 13:28:52,733.733 INFO    ] Checking for camera pi updates...
[2026-08-25 13:28:52,770.770 INFO    ] 200
[2026-08-25 13:28:52,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:28:52,813.813 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:28:52,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:28:52,962.962 INFO    ] No camera update needed
[2026-08-25 13:28:52,964.964 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:28:52,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:28:52,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:28:52,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:28:55,016.016 INFO    ] ================================================
[2026-08-25 13:28:55,031.031 INFO    ] Launching Daemon at Tue Aug 25 13:28:55 IST 2026
[2026-08-25 13:28:55,042.042 INFO    ] ================================================
[2026-08-25 13:28:55,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:28:55
[2026-08-25 13:28:56,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:28:56,484.484 INFO    ] Initializing speech engine...
[2026-08-25 13:28:56,491.491 INFO    ] 2026-08-25 13:28:56
[2026-08-25 13:28:56,750.750 INFO    ] 2026-08-25 13:28:56
[2026-08-25 13:28:56,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:28:57,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:28:57,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:28:57,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:28:57,219.219 INFO    ] time= 25/08/2026 13:28:57
[2026-08-25 13:28:57,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:28:57,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:28:57,434.434 INFO    ] No existing commands found in stream
[2026-08-25 13:29:02,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:29:02,460.460 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 13:29:03,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:29:03,702.702 INFO    ] Checking for system updates...
[2026-08-25 13:29:03,741.741 INFO    ] 200
[2026-08-25 13:29:03,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:03,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:29:03,803.803 INFO    ] No update needed
[2026-08-25 13:29:03,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 13:29:03,842.842 INFO    ] 200
[2026-08-25 13:29:03,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:03,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:29:03,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:29:03,979.979 INFO    ] No camera update needed
[2026-08-25 13:29:03,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:29:03,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:29:03,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:29:03,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:29:06,034.034 INFO    ] ================================================
[2026-08-25 13:29:06,049.049 INFO    ] Launching Daemon at Tue Aug 25 13:29:06 IST 2026
[2026-08-25 13:29:06,060.060 INFO    ] ================================================
[2026-08-25 13:29:06,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:29:06
[2026-08-25 13:29:07,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:29:07,484.484 INFO    ] Initializing speech engine...
[2026-08-25 13:29:07,493.493 INFO    ] 2026-08-25 13:29:07
[2026-08-25 13:29:07,740.740 INFO    ] 2026-08-25 13:29:07
[2026-08-25 13:29:07,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:29:07,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:29:08,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:29:08,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:29:08,194.194 INFO    ] time= 25/08/2026 13:29:08
[2026-08-25 13:29:08,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:29:08,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:29:08,426.426 INFO    ] No existing commands found in stream
[2026-08-25 13:29:13,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:29:13,451.451 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 13:29:14,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:29:14,283.283 INFO    ] Checking for system updates...
[2026-08-25 13:29:14,320.320 INFO    ] 200
[2026-08-25 13:29:14,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:14,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:29:14,383.383 INFO    ] No update needed
[2026-08-25 13:29:14,386.386 INFO    ] Checking for camera pi updates...
[2026-08-25 13:29:14,421.421 INFO    ] 200
[2026-08-25 13:29:14,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:14,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:29:14,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:29:14,529.529 INFO    ] No camera update needed
[2026-08-25 13:29:14,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:29:14,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:29:14,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:29:14,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:29:16,587.587 INFO    ] ================================================
[2026-08-25 13:29:16,603.603 INFO    ] Launching Daemon at Tue Aug 25 13:29:16 IST 2026
[2026-08-25 13:29:16,613.613 INFO    ] ================================================
[2026-08-25 13:29:17,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:29:17
[2026-08-25 13:29:17,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:29:18,194.194 INFO    ] Initializing speech engine...
[2026-08-25 13:29:18,201.201 INFO    ] 2026-08-25 13:29:18
[2026-08-25 13:29:18,489.489 INFO    ] 2026-08-25 13:29:18
[2026-08-25 13:29:18,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:29:18,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:29:18,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:29:18,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:29:19,035.035 INFO    ] time= 25/08/2026 13:29:18
[2026-08-25 13:29:19,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:29:19,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:29:19,197.197 INFO    ] No existing commands found in stream
[2026-08-25 13:29:24,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:29:24,229.229 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 13:29:27,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:29:27,135.135 INFO    ] Checking for system updates...
[2026-08-25 13:29:27,170.170 INFO    ] 200
[2026-08-25 13:29:27,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:27,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:29:27,232.232 INFO    ] No update needed
[2026-08-25 13:29:27,234.234 INFO    ] Checking for camera pi updates...
[2026-08-25 13:29:27,267.267 INFO    ] 200
[2026-08-25 13:29:27,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:27,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:29:27,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:29:27,378.378 INFO    ] No camera update needed
[2026-08-25 13:29:27,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:29:27,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:29:27,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:29:27,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:29:29,433.433 INFO    ] ================================================
[2026-08-25 13:29:29,448.448 INFO    ] Launching Daemon at Tue Aug 25 13:29:29 IST 2026
[2026-08-25 13:29:29,459.459 INFO    ] ================================================
[2026-08-25 13:29:30,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:29:30
[2026-08-25 13:29:30,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:29:30,908.908 INFO    ] Initializing speech engine...
[2026-08-25 13:29:30,917.917 INFO    ] 2026-08-25 13:29:30
[2026-08-25 13:29:31,166.166 INFO    ] 2026-08-25 13:29:31
[2026-08-25 13:29:31,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:29:31,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:29:31,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:29:31,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:29:31,531.531 INFO    ] time= 25/08/2026 13:29:31
[2026-08-25 13:29:31,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:29:31,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:29:31,719.719 INFO    ] No existing commands found in stream
[2026-08-25 13:29:36,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:29:36,753.753 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 13:29:39,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:29:39,978.978 INFO    ] Checking for system updates...
[2026-08-25 13:29:40,014.014 INFO    ] 200
[2026-08-25 13:29:40,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:40,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:29:40,079.079 INFO    ] No update needed
[2026-08-25 13:29:40,081.081 INFO    ] Checking for camera pi updates...
[2026-08-25 13:29:40,118.118 INFO    ] 200
[2026-08-25 13:29:40,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:40,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:29:40,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:29:40,261.261 INFO    ] No camera update needed
[2026-08-25 13:29:40,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:29:40,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:29:40,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:29:40,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:29:42,317.317 INFO    ] ================================================
[2026-08-25 13:29:42,332.332 INFO    ] Launching Daemon at Tue Aug 25 13:29:42 IST 2026
[2026-08-25 13:29:42,343.343 INFO    ] ================================================
[2026-08-25 13:29:42,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:29:42
[2026-08-25 13:29:43,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:29:43,760.760 INFO    ] Initializing speech engine...
[2026-08-25 13:29:43,769.769 INFO    ] 2026-08-25 13:29:43
[2026-08-25 13:29:44,028.028 INFO    ] 2026-08-25 13:29:44
[2026-08-25 13:29:44,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:29:44,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:29:44,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:29:44,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:29:44,505.505 INFO    ] time= 25/08/2026 13:29:44
[2026-08-25 13:29:44,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:29:44,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:29:44,742.742 INFO    ] No existing commands found in stream
[2026-08-25 13:29:49,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:29:49,759.759 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 13:29:54,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:29:54,067.067 INFO    ] Checking for system updates...
[2026-08-25 13:29:54,106.106 INFO    ] 200
[2026-08-25 13:29:54,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:54,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:29:54,163.163 INFO    ] No update needed
[2026-08-25 13:29:54,166.166 INFO    ] Checking for camera pi updates...
[2026-08-25 13:29:54,200.200 INFO    ] 200
[2026-08-25 13:29:54,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:29:54,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:29:54,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:29:54,296.296 INFO    ] No camera update needed
[2026-08-25 13:29:54,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:29:54,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:29:54,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:29:54,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:29:56,353.353 INFO    ] ================================================
[2026-08-25 13:29:56,368.368 INFO    ] Launching Daemon at Tue Aug 25 13:29:56 IST 2026
[2026-08-25 13:29:56,380.380 INFO    ] ================================================
[2026-08-25 13:29:56,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:29:56
[2026-08-25 13:29:57,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:29:57,809.809 INFO    ] Initializing speech engine...
[2026-08-25 13:29:57,815.815 INFO    ] 2026-08-25 13:29:57
[2026-08-25 13:29:58,066.066 INFO    ] 2026-08-25 13:29:58
[2026-08-25 13:29:58,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:29:58,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:29:58,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:29:58,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:29:58,611.611 INFO    ] time= 25/08/2026 13:29:58
[2026-08-25 13:29:58,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:29:58,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:29:58,759.759 INFO    ] No existing commands found in stream
[2026-08-25 13:30:03,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:30:03,779.779 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 13:30:08,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:30:08,415.415 INFO    ] Checking for system updates...
[2026-08-25 13:30:08,451.451 INFO    ] 200
[2026-08-25 13:30:08,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:08,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:30:08,515.515 INFO    ] No update needed
[2026-08-25 13:30:08,517.517 INFO    ] Checking for camera pi updates...
[2026-08-25 13:30:08,551.551 INFO    ] 200
[2026-08-25 13:30:08,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:08,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:30:08,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:30:08,651.651 INFO    ] No camera update needed
[2026-08-25 13:30:08,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:30:08,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:30:08,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:30:08,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:30:10,707.707 INFO    ] ================================================
[2026-08-25 13:30:10,729.729 INFO    ] Launching Daemon at Tue Aug 25 13:30:10 IST 2026
[2026-08-25 13:30:10,741.741 INFO    ] ================================================
[2026-08-25 13:30:11,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:30:11
[2026-08-25 13:30:11,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:30:12,275.275 INFO    ] Initializing speech engine...
[2026-08-25 13:30:12,284.284 INFO    ] 2026-08-25 13:30:12
[2026-08-25 13:30:12,545.545 INFO    ] 2026-08-25 13:30:12
[2026-08-25 13:30:12,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:30:12,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:30:12,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:30:13,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:30:13,089.089 INFO    ] time= 25/08/2026 13:30:13
[2026-08-25 13:30:13,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:30:13,113.113 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:30:13,241.241 INFO    ] No existing commands found in stream
[2026-08-25 13:30:18,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:30:18,256.256 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 13:30:19,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:30:19,169.169 INFO    ] Checking for system updates...
[2026-08-25 13:30:19,209.209 INFO    ] 200
[2026-08-25 13:30:19,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:19,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:30:19,266.266 INFO    ] No update needed
[2026-08-25 13:30:19,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 13:30:19,306.306 INFO    ] 200
[2026-08-25 13:30:19,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:19,350.350 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:30:19,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:30:19,400.400 INFO    ] No camera update needed
[2026-08-25 13:30:19,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:30:19,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:30:19,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:30:19,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:30:21,457.457 INFO    ] ================================================
[2026-08-25 13:30:21,472.472 INFO    ] Launching Daemon at Tue Aug 25 13:30:21 IST 2026
[2026-08-25 13:30:21,483.483 INFO    ] ================================================
[2026-08-25 13:30:22,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:30:22
[2026-08-25 13:30:22,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:30:22,893.893 INFO    ] Initializing speech engine...
[2026-08-25 13:30:22,899.899 INFO    ] 2026-08-25 13:30:22
[2026-08-25 13:30:23,197.197 INFO    ] 2026-08-25 13:30:23
[2026-08-25 13:30:23,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:30:23,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:30:23,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:30:23,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:30:23,584.584 INFO    ] time= 25/08/2026 13:30:23
[2026-08-25 13:30:23,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:30:23,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:30:23,710.710 INFO    ] No existing commands found in stream
[2026-08-25 13:30:28,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:30:28,730.730 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 13:30:31,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:30:31,592.592 INFO    ] Checking for system updates...
[2026-08-25 13:30:31,628.628 INFO    ] 200
[2026-08-25 13:30:31,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:31,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:30:31,689.689 INFO    ] No update needed
[2026-08-25 13:30:31,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 13:30:31,725.725 INFO    ] 200
[2026-08-25 13:30:31,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:31,770.770 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:30:31,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:30:31,830.830 INFO    ] No camera update needed
[2026-08-25 13:30:31,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:30:31,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:30:31,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:30:31,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:30:33,895.895 INFO    ] ================================================
[2026-08-25 13:30:33,916.916 INFO    ] Launching Daemon at Tue Aug 25 13:30:33 IST 2026
[2026-08-25 13:30:33,927.927 INFO    ] ================================================
[2026-08-25 13:30:34,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:30:34
[2026-08-25 13:30:35,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:30:35,366.366 INFO    ] Initializing speech engine...
[2026-08-25 13:30:35,375.375 INFO    ] 2026-08-25 13:30:35
[2026-08-25 13:30:35,628.628 INFO    ] 2026-08-25 13:30:35
[2026-08-25 13:30:35,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:30:35,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:30:35,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:30:36,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:30:36,136.136 INFO    ] time= 25/08/2026 13:30:36
[2026-08-25 13:30:36,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:30:36,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:30:36,342.342 INFO    ] No existing commands found in stream
[2026-08-25 13:30:41,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:30:41,367.367 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 13:30:44,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:30:44,489.489 INFO    ] Checking for system updates...
[2026-08-25 13:30:44,526.526 INFO    ] 200
[2026-08-25 13:30:44,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:44,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:30:44,608.608 INFO    ] No update needed
[2026-08-25 13:30:44,610.610 INFO    ] Checking for camera pi updates...
[2026-08-25 13:30:44,645.645 INFO    ] 200
[2026-08-25 13:30:44,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:44,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:30:44,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:30:44,792.792 INFO    ] No camera update needed
[2026-08-25 13:30:44,794.794 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:30:44,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:30:44,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:30:44,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:30:46,852.852 INFO    ] ================================================
[2026-08-25 13:30:46,867.867 INFO    ] Launching Daemon at Tue Aug 25 13:30:46 IST 2026
[2026-08-25 13:30:46,878.878 INFO    ] ================================================
[2026-08-25 13:30:47,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:30:47
[2026-08-25 13:30:48,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:30:48,286.286 INFO    ] Initializing speech engine...
[2026-08-25 13:30:48,304.304 INFO    ] 2026-08-25 13:30:48
[2026-08-25 13:30:48,554.554 INFO    ] 2026-08-25 13:30:48
[2026-08-25 13:30:48,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:30:48,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:30:48,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:30:48,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:30:48,930.930 INFO    ] time= 25/08/2026 13:30:48
[2026-08-25 13:30:48,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:30:48,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:30:49,129.129 INFO    ] No existing commands found in stream
[2026-08-25 13:30:54,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:30:54,146.146 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 13:30:56,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:30:56,454.454 INFO    ] Checking for system updates...
[2026-08-25 13:30:56,489.489 INFO    ] 200
[2026-08-25 13:30:56,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:56,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:30:56,554.554 INFO    ] No update needed
[2026-08-25 13:30:56,557.557 INFO    ] Checking for camera pi updates...
[2026-08-25 13:30:56,590.590 INFO    ] 200
[2026-08-25 13:30:56,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:30:56,633.633 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:30:56,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:30:56,779.779 INFO    ] No camera update needed
[2026-08-25 13:30:56,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:30:56,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:30:56,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:30:56,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:30:58,837.837 INFO    ] ================================================
[2026-08-25 13:30:58,853.853 INFO    ] Launching Daemon at Tue Aug 25 13:30:58 IST 2026
[2026-08-25 13:30:58,865.865 INFO    ] ================================================
[2026-08-25 13:30:59,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:30:59
[2026-08-25 13:31:00,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:31:00,420.420 INFO    ] Initializing speech engine...
[2026-08-25 13:31:00,430.430 INFO    ] 2026-08-25 13:31:00
[2026-08-25 13:31:00,681.681 INFO    ] 2026-08-25 13:31:00
[2026-08-25 13:31:00,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:31:00,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:31:00,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:31:01,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:31:01,060.060 INFO    ] time= 25/08/2026 13:31:01
[2026-08-25 13:31:01,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:31:01,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:31:01,231.231 INFO    ] No existing commands found in stream
[2026-08-25 13:31:06,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:31:06,272.272 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 13:31:08,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:31:08,772.772 INFO    ] Checking for system updates...
[2026-08-25 13:31:08,807.807 INFO    ] 200
[2026-08-25 13:31:08,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:08,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:31:08,870.870 INFO    ] No update needed
[2026-08-25 13:31:08,872.872 INFO    ] Checking for camera pi updates...
[2026-08-25 13:31:08,906.906 INFO    ] 200
[2026-08-25 13:31:08,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:08,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:31:08,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:31:09,001.001 INFO    ] No camera update needed
[2026-08-25 13:31:09,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:31:09,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:31:09,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:31:09,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:31:11,058.058 INFO    ] ================================================
[2026-08-25 13:31:11,073.073 INFO    ] Launching Daemon at Tue Aug 25 13:31:11 IST 2026
[2026-08-25 13:31:11,084.084 INFO    ] ================================================
[2026-08-25 13:31:11,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:31:11
[2026-08-25 13:31:12,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:31:12,511.511 INFO    ] Initializing speech engine...
[2026-08-25 13:31:12,534.534 INFO    ] 2026-08-25 13:31:12
[2026-08-25 13:31:12,788.788 INFO    ] 2026-08-25 13:31:12
[2026-08-25 13:31:12,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:31:13,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:31:13,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:31:13,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:31:13,165.165 INFO    ] time= 25/08/2026 13:31:13
[2026-08-25 13:31:13,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:31:13,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:31:13,346.346 INFO    ] No existing commands found in stream
[2026-08-25 13:31:18,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:31:18,374.374 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 13:31:19,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:31:19,325.325 INFO    ] Checking for system updates...
[2026-08-25 13:31:19,361.361 INFO    ] 200
[2026-08-25 13:31:19,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:19,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:31:19,426.426 INFO    ] No update needed
[2026-08-25 13:31:19,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 13:31:19,463.463 INFO    ] 200
[2026-08-25 13:31:19,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:19,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:31:19,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:31:19,569.569 INFO    ] No camera update needed
[2026-08-25 13:31:19,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:31:19,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:31:19,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:31:19,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:31:21,628.628 INFO    ] ================================================
[2026-08-25 13:31:21,643.643 INFO    ] Launching Daemon at Tue Aug 25 13:31:21 IST 2026
[2026-08-25 13:31:21,654.654 INFO    ] ================================================
[2026-08-25 13:31:22,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:31:22
[2026-08-25 13:31:22,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:31:23,266.266 INFO    ] Initializing speech engine...
[2026-08-25 13:31:23,279.279 INFO    ] 2026-08-25 13:31:23
[2026-08-25 13:31:23,559.559 INFO    ] 2026-08-25 13:31:23
[2026-08-25 13:31:23,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:31:23,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:31:23,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:31:23,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:31:24,032.032 INFO    ] time= 25/08/2026 13:31:23
[2026-08-25 13:31:24,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:31:24,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:31:24,253.253 INFO    ] No existing commands found in stream
[2026-08-25 13:31:29,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:31:29,270.270 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 13:31:30,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:31:30,477.477 INFO    ] Checking for system updates...
[2026-08-25 13:31:30,520.520 INFO    ] 200
[2026-08-25 13:31:30,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:30,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:31:30,578.578 INFO    ] No update needed
[2026-08-25 13:31:30,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 13:31:30,615.615 INFO    ] 200
[2026-08-25 13:31:30,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:30,658.658 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:31:30,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:31:30,702.702 INFO    ] No camera update needed
[2026-08-25 13:31:30,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:31:30,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:31:30,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:31:30,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:31:32,760.760 INFO    ] ================================================
[2026-08-25 13:31:32,781.781 INFO    ] Launching Daemon at Tue Aug 25 13:31:32 IST 2026
[2026-08-25 13:31:32,795.795 INFO    ] ================================================
[2026-08-25 13:31:33,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:31:33
[2026-08-25 13:31:34,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:31:34,519.519 INFO    ] Initializing speech engine...
[2026-08-25 13:31:34,533.533 INFO    ] 2026-08-25 13:31:34
[2026-08-25 13:31:34,860.860 INFO    ] 2026-08-25 13:31:34
[2026-08-25 13:31:34,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:31:35,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:31:35,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:31:35,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:31:35,401.401 INFO    ] time= 25/08/2026 13:31:35
[2026-08-25 13:31:35,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:31:35,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:31:35,550.550 INFO    ] No existing commands found in stream
[2026-08-25 13:31:40,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:31:40,590.590 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 13:31:43,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:31:43,838.838 INFO    ] Checking for system updates...
[2026-08-25 13:31:43,878.878 INFO    ] 200
[2026-08-25 13:31:43,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:43,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:31:43,937.937 INFO    ] No update needed
[2026-08-25 13:31:43,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 13:31:43,974.974 INFO    ] 200
[2026-08-25 13:31:43,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:44,023.023 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:31:44,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:31:44,076.076 INFO    ] No camera update needed
[2026-08-25 13:31:44,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:31:44,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:31:44,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:31:44,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:31:46,135.135 INFO    ] ================================================
[2026-08-25 13:31:46,150.150 INFO    ] Launching Daemon at Tue Aug 25 13:31:46 IST 2026
[2026-08-25 13:31:46,162.162 INFO    ] ================================================
[2026-08-25 13:31:46,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:31:46
[2026-08-25 13:31:47,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:31:47,582.582 INFO    ] Initializing speech engine...
[2026-08-25 13:31:47,591.591 INFO    ] 2026-08-25 13:31:47
[2026-08-25 13:31:47,855.855 INFO    ] 2026-08-25 13:31:47
[2026-08-25 13:31:47,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:31:48,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:31:48,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:31:48,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:31:48,241.241 INFO    ] time= 25/08/2026 13:31:48
[2026-08-25 13:31:48,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:31:48,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:31:48,366.366 INFO    ] No existing commands found in stream
[2026-08-25 13:31:53,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:31:53,380.380 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 13:31:57,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:31:57,186.186 INFO    ] Checking for system updates...
[2026-08-25 13:31:57,221.221 INFO    ] 200
[2026-08-25 13:31:57,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:57,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:31:57,279.279 INFO    ] No update needed
[2026-08-25 13:31:57,281.281 INFO    ] Checking for camera pi updates...
[2026-08-25 13:31:57,318.318 INFO    ] 200
[2026-08-25 13:31:57,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:31:57,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:31:57,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:31:57,428.428 INFO    ] No camera update needed
[2026-08-25 13:31:57,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:31:57,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:31:57,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:31:57,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:31:59,484.484 INFO    ] ================================================
[2026-08-25 13:31:59,499.499 INFO    ] Launching Daemon at Tue Aug 25 13:31:59 IST 2026
[2026-08-25 13:31:59,510.510 INFO    ] ================================================
[2026-08-25 13:32:00,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:32:00
[2026-08-25 13:32:00,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:32:01,103.103 INFO    ] Initializing speech engine...
[2026-08-25 13:32:01,132.132 INFO    ] 2026-08-25 13:32:01
[2026-08-25 13:32:01,506.506 INFO    ] 2026-08-25 13:32:01
[2026-08-25 13:32:01,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:32:01,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:32:01,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:32:01,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:32:01,930.930 INFO    ] time= 25/08/2026 13:32:01
[2026-08-25 13:32:01,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:32:01,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:32:02,043.043 INFO    ] No existing commands found in stream
[2026-08-25 13:32:07,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:32:07,066.066 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 13:32:09,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:32:09,139.139 INFO    ] Checking for system updates...
[2026-08-25 13:32:09,175.175 INFO    ] 200
[2026-08-25 13:32:09,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:09,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:32:09,232.232 INFO    ] No update needed
[2026-08-25 13:32:09,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 13:32:09,268.268 INFO    ] 200
[2026-08-25 13:32:09,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:09,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:32:09,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:32:09,372.372 INFO    ] No camera update needed
[2026-08-25 13:32:09,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:32:09,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:32:09,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:32:09,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:32:11,428.428 INFO    ] ================================================
[2026-08-25 13:32:11,445.445 INFO    ] Launching Daemon at Tue Aug 25 13:32:11 IST 2026
[2026-08-25 13:32:11,457.457 INFO    ] ================================================
[2026-08-25 13:32:12,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:32:12
[2026-08-25 13:32:12,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:32:13,118.118 INFO    ] Initializing speech engine...
[2026-08-25 13:32:13,132.132 INFO    ] 2026-08-25 13:32:13
[2026-08-25 13:32:13,414.414 INFO    ] 2026-08-25 13:32:13
[2026-08-25 13:32:13,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:32:13,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:32:13,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:32:13,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:32:13,953.953 INFO    ] time= 25/08/2026 13:32:13
[2026-08-25 13:32:13,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:32:14,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:32:14,109.109 INFO    ] No existing commands found in stream
[2026-08-25 13:32:19,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:32:19,138.138 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 13:32:21,293.293 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:32:21,295.295 INFO    ] Checking for system updates...
[2026-08-25 13:32:21,331.331 INFO    ] 200
[2026-08-25 13:32:21,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:21,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:32:21,417.417 INFO    ] No update needed
[2026-08-25 13:32:21,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 13:32:21,454.454 INFO    ] 200
[2026-08-25 13:32:21,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:21,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:32:21,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:32:21,559.559 INFO    ] No camera update needed
[2026-08-25 13:32:21,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:32:21,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:32:21,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:32:21,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:32:23,615.615 INFO    ] ================================================
[2026-08-25 13:32:23,631.631 INFO    ] Launching Daemon at Tue Aug 25 13:32:23 IST 2026
[2026-08-25 13:32:23,642.642 INFO    ] ================================================
[2026-08-25 13:32:24,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:32:24
[2026-08-25 13:32:24,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:32:25,052.052 INFO    ] Initializing speech engine...
[2026-08-25 13:32:25,075.075 INFO    ] 2026-08-25 13:32:25
[2026-08-25 13:32:25,335.335 INFO    ] 2026-08-25 13:32:25
[2026-08-25 13:32:25,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:32:25,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:32:25,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:32:25,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:32:25,818.818 INFO    ] time= 25/08/2026 13:32:25
[2026-08-25 13:32:25,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:32:25,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:32:25,975.975 INFO    ] No existing commands found in stream
[2026-08-25 13:32:30,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:32:30,997.997 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 13:32:32,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:32:32,331.331 INFO    ] Checking for system updates...
[2026-08-25 13:32:32,366.366 INFO    ] 200
[2026-08-25 13:32:32,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:32,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:32:32,423.423 INFO    ] No update needed
[2026-08-25 13:32:32,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 13:32:32,462.462 INFO    ] 200
[2026-08-25 13:32:32,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:32,506.506 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:32:32,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:32:32,567.567 INFO    ] No camera update needed
[2026-08-25 13:32:32,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:32:32,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:32:32,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:32:32,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:32:34,621.621 INFO    ] ================================================
[2026-08-25 13:32:34,637.637 INFO    ] Launching Daemon at Tue Aug 25 13:32:34 IST 2026
[2026-08-25 13:32:34,648.648 INFO    ] ================================================
[2026-08-25 13:32:35,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:32:35
[2026-08-25 13:32:35,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:32:36,139.139 INFO    ] Initializing speech engine...
[2026-08-25 13:32:36,145.145 INFO    ] 2026-08-25 13:32:36
[2026-08-25 13:32:36,413.413 INFO    ] 2026-08-25 13:32:36
[2026-08-25 13:32:36,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:32:36,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:32:36,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:32:37,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:32:37,155.155 INFO    ] time= 25/08/2026 13:32:37
[2026-08-25 13:32:37,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:32:37,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:32:37,385.385 INFO    ] No existing commands found in stream
[2026-08-25 13:32:42,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:32:42,414.414 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 13:32:46,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:32:46,564.564 INFO    ] Checking for system updates...
[2026-08-25 13:32:46,600.600 INFO    ] 200
[2026-08-25 13:32:46,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:46,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:32:46,657.657 INFO    ] No update needed
[2026-08-25 13:32:46,659.659 INFO    ] Checking for camera pi updates...
[2026-08-25 13:32:46,696.696 INFO    ] 200
[2026-08-25 13:32:46,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:46,739.739 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:32:46,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:32:46,801.801 INFO    ] No camera update needed
[2026-08-25 13:32:46,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:32:46,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:32:46,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:32:46,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:32:48,856.856 INFO    ] ================================================
[2026-08-25 13:32:48,872.872 INFO    ] Launching Daemon at Tue Aug 25 13:32:48 IST 2026
[2026-08-25 13:32:48,883.883 INFO    ] ================================================
[2026-08-25 13:32:49,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:32:49
[2026-08-25 13:32:50,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:32:50,534.534 INFO    ] Initializing speech engine...
[2026-08-25 13:32:50,544.544 INFO    ] 2026-08-25 13:32:50
[2026-08-25 13:32:50,849.849 INFO    ] 2026-08-25 13:32:50
[2026-08-25 13:32:50,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:32:51,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:32:51,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:32:51,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:32:51,366.366 INFO    ] time= 25/08/2026 13:32:51
[2026-08-25 13:32:51,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:32:51,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:32:51,533.533 INFO    ] No existing commands found in stream
[2026-08-25 13:32:56,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:32:56,557.557 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 13:32:57,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:32:57,354.354 INFO    ] Checking for system updates...
[2026-08-25 13:32:57,389.389 INFO    ] 200
[2026-08-25 13:32:57,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:57,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:32:57,453.453 INFO    ] No update needed
[2026-08-25 13:32:57,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 13:32:57,489.489 INFO    ] 200
[2026-08-25 13:32:57,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:32:57,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:32:57,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:32:57,579.579 INFO    ] No camera update needed
[2026-08-25 13:32:57,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:32:57,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:32:57,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:32:57,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:32:59,634.634 INFO    ] ================================================
[2026-08-25 13:32:59,650.650 INFO    ] Launching Daemon at Tue Aug 25 13:32:59 IST 2026
[2026-08-25 13:32:59,661.661 INFO    ] ================================================
[2026-08-25 13:33:00,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:33:00
[2026-08-25 13:33:00,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:33:01,229.229 INFO    ] Initializing speech engine...
[2026-08-25 13:33:01,286.286 INFO    ] 2026-08-25 13:33:01
[2026-08-25 13:33:01,731.731 INFO    ] 2026-08-25 13:33:01
[2026-08-25 13:33:01,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:33:01,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:33:01,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:33:02,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:33:02,247.247 INFO    ] time= 25/08/2026 13:33:02
[2026-08-25 13:33:02,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:33:02,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:33:02,468.468 INFO    ] No existing commands found in stream
[2026-08-25 13:33:07,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:33:07,502.502 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 13:33:10,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:33:10,531.531 INFO    ] Checking for system updates...
[2026-08-25 13:33:10,567.567 INFO    ] 200
[2026-08-25 13:33:10,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:10,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:33:10,626.626 INFO    ] No update needed
[2026-08-25 13:33:10,628.628 INFO    ] Checking for camera pi updates...
[2026-08-25 13:33:10,666.666 INFO    ] 200
[2026-08-25 13:33:10,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:10,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:33:10,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:33:10,776.776 INFO    ] No camera update needed
[2026-08-25 13:33:10,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:33:10,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:33:10,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:33:10,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:33:12,831.831 INFO    ] ================================================
[2026-08-25 13:33:12,847.847 INFO    ] Launching Daemon at Tue Aug 25 13:33:12 IST 2026
[2026-08-25 13:33:12,858.858 INFO    ] ================================================
[2026-08-25 13:33:13,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:33:13
[2026-08-25 13:33:14,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:33:14,283.283 INFO    ] Initializing speech engine...
[2026-08-25 13:33:14,298.298 INFO    ] 2026-08-25 13:33:14
[2026-08-25 13:33:14,575.575 INFO    ] 2026-08-25 13:33:14
[2026-08-25 13:33:14,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:33:14,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:33:14,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:33:14,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:33:14,932.932 INFO    ] time= 25/08/2026 13:33:14
[2026-08-25 13:33:14,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:33:14,941.941 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:33:15,014.014 INFO    ] No existing commands found in stream
[2026-08-25 13:33:20,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:33:20,028.028 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 13:33:22,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:33:22,160.160 INFO    ] Checking for system updates...
[2026-08-25 13:33:22,197.197 INFO    ] 200
[2026-08-25 13:33:22,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:22,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:33:22,259.259 INFO    ] No update needed
[2026-08-25 13:33:22,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 13:33:22,301.301 INFO    ] 200
[2026-08-25 13:33:22,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:22,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:33:22,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:33:22,416.416 INFO    ] No camera update needed
[2026-08-25 13:33:22,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:33:22,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:33:22,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:33:22,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:33:24,473.473 INFO    ] ================================================
[2026-08-25 13:33:24,488.488 INFO    ] Launching Daemon at Tue Aug 25 13:33:24 IST 2026
[2026-08-25 13:33:24,499.499 INFO    ] ================================================
[2026-08-25 13:33:25,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:33:25
[2026-08-25 13:33:25,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:33:26,041.041 INFO    ] Initializing speech engine...
[2026-08-25 13:33:26,053.053 INFO    ] 2026-08-25 13:33:26
[2026-08-25 13:33:26,378.378 INFO    ] 2026-08-25 13:33:26
[2026-08-25 13:33:26,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:33:26,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:33:26,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:33:26,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:33:26,900.900 INFO    ] time= 25/08/2026 13:33:26
[2026-08-25 13:33:26,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:33:26,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:33:27,064.064 INFO    ] No existing commands found in stream
[2026-08-25 13:33:32,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:33:32,092.092 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 13:33:32,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:33:32,934.934 INFO    ] Checking for system updates...
[2026-08-25 13:33:32,977.977 INFO    ] 200
[2026-08-25 13:33:32,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:33,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:33:33,062.062 INFO    ] No update needed
[2026-08-25 13:33:33,066.066 INFO    ] Checking for camera pi updates...
[2026-08-25 13:33:33,108.108 INFO    ] 200
[2026-08-25 13:33:33,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:33,183.183 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:33:33,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:33:33,252.252 INFO    ] No camera update needed
[2026-08-25 13:33:33,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:33:33,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:33:33,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:33:33,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:33:35,315.315 INFO    ] ================================================
[2026-08-25 13:33:35,331.331 INFO    ] Launching Daemon at Tue Aug 25 13:33:35 IST 2026
[2026-08-25 13:33:35,342.342 INFO    ] ================================================
[2026-08-25 13:33:35,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:33:35
[2026-08-25 13:33:36,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:33:36,786.786 INFO    ] Initializing speech engine...
[2026-08-25 13:33:36,794.794 INFO    ] 2026-08-25 13:33:36
[2026-08-25 13:33:37,070.070 INFO    ] 2026-08-25 13:33:37
[2026-08-25 13:33:37,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:33:37,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:33:37,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:33:37,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:33:37,447.447 INFO    ] time= 25/08/2026 13:33:37
[2026-08-25 13:33:37,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:33:37,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:33:37,628.628 INFO    ] No existing commands found in stream
[2026-08-25 13:33:42,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:33:42,657.657 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 13:33:43,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:33:43,331.331 INFO    ] Checking for system updates...
[2026-08-25 13:33:43,367.367 INFO    ] 200
[2026-08-25 13:33:43,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:43,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:33:43,427.427 INFO    ] No update needed
[2026-08-25 13:33:43,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 13:33:43,462.462 INFO    ] 200
[2026-08-25 13:33:43,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:43,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:33:43,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:33:43,554.554 INFO    ] No camera update needed
[2026-08-25 13:33:43,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:33:43,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:33:43,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:33:43,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:33:45,608.608 INFO    ] ================================================
[2026-08-25 13:33:45,623.623 INFO    ] Launching Daemon at Tue Aug 25 13:33:45 IST 2026
[2026-08-25 13:33:45,633.633 INFO    ] ================================================
[2026-08-25 13:33:46,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:33:46
[2026-08-25 13:33:46,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:33:47,104.104 INFO    ] Initializing speech engine...
[2026-08-25 13:33:47,111.111 INFO    ] 2026-08-25 13:33:47
[2026-08-25 13:33:47,396.396 INFO    ] 2026-08-25 13:33:47
[2026-08-25 13:33:47,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:33:47,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:33:47,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:33:47,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:33:47,863.863 INFO    ] time= 25/08/2026 13:33:47
[2026-08-25 13:33:47,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:33:47,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:33:48,077.077 INFO    ] No existing commands found in stream
[2026-08-25 13:33:53,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:33:53,107.107 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 13:33:54,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:33:54,777.777 INFO    ] Checking for system updates...
[2026-08-25 13:33:54,814.814 INFO    ] 200
[2026-08-25 13:33:54,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:54,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:33:54,879.879 INFO    ] No update needed
[2026-08-25 13:33:54,881.881 INFO    ] Checking for camera pi updates...
[2026-08-25 13:33:54,919.919 INFO    ] 200
[2026-08-25 13:33:54,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:33:54,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:33:55,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:33:55,012.012 INFO    ] No camera update needed
[2026-08-25 13:33:55,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:33:55,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:33:55,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:33:55,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:33:57,070.070 INFO    ] ================================================
[2026-08-25 13:33:57,084.084 INFO    ] Launching Daemon at Tue Aug 25 13:33:57 IST 2026
[2026-08-25 13:33:57,095.095 INFO    ] ================================================
[2026-08-25 13:33:57,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:33:57
[2026-08-25 13:33:58,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:33:58,742.742 INFO    ] Initializing speech engine...
[2026-08-25 13:33:58,751.751 INFO    ] 2026-08-25 13:33:58
[2026-08-25 13:33:59,056.056 INFO    ] 2026-08-25 13:33:59
[2026-08-25 13:33:59,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:33:59,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:33:59,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:33:59,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:33:59,575.575 INFO    ] time= 25/08/2026 13:33:59
[2026-08-25 13:33:59,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:33:59,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:33:59,715.715 INFO    ] No existing commands found in stream
[2026-08-25 13:34:04,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:34:04,741.741 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 13:34:06,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:34:06,534.534 INFO    ] Checking for system updates...
[2026-08-25 13:34:06,570.570 INFO    ] 200
[2026-08-25 13:34:06,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:06,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:34:06,631.631 INFO    ] No update needed
[2026-08-25 13:34:06,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 13:34:06,671.671 INFO    ] 200
[2026-08-25 13:34:06,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:06,718.718 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:34:06,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:34:06,767.767 INFO    ] No camera update needed
[2026-08-25 13:34:06,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:34:06,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:34:06,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:34:06,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:34:08,821.821 INFO    ] ================================================
[2026-08-25 13:34:08,837.837 INFO    ] Launching Daemon at Tue Aug 25 13:34:08 IST 2026
[2026-08-25 13:34:08,848.848 INFO    ] ================================================
[2026-08-25 13:34:09,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:34:09
[2026-08-25 13:34:10,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:34:10,268.268 INFO    ] Initializing speech engine...
[2026-08-25 13:34:10,278.278 INFO    ] 2026-08-25 13:34:10
[2026-08-25 13:34:10,521.521 INFO    ] 2026-08-25 13:34:10
[2026-08-25 13:34:10,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:34:10,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:34:10,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:34:10,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:34:10,915.915 INFO    ] time= 25/08/2026 13:34:10
[2026-08-25 13:34:10,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:34:10,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:34:11,042.042 INFO    ] No existing commands found in stream
[2026-08-25 13:34:16,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:34:16,058.058 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 13:34:16,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:34:16,575.575 INFO    ] Checking for system updates...
[2026-08-25 13:34:16,614.614 INFO    ] 200
[2026-08-25 13:34:16,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:16,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:16,672.672 INFO    ] No update needed
[2026-08-25 13:34:16,674.674 INFO    ] Checking for camera pi updates...
[2026-08-25 13:34:16,708.708 INFO    ] 200
[2026-08-25 13:34:16,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:16,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:34:16,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:16,802.802 INFO    ] No camera update needed
[2026-08-25 13:34:16,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:34:16,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:34:16,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:34:16,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:34:18,861.861 INFO    ] ================================================
[2026-08-25 13:34:18,876.876 INFO    ] Launching Daemon at Tue Aug 25 13:34:18 IST 2026
[2026-08-25 13:34:18,887.887 INFO    ] ================================================
[2026-08-25 13:34:19,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:34:19
[2026-08-25 13:34:20,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:34:20,431.431 INFO    ] Initializing speech engine...
[2026-08-25 13:34:20,451.451 INFO    ] 2026-08-25 13:34:20
[2026-08-25 13:34:20,721.721 INFO    ] 2026-08-25 13:34:20
[2026-08-25 13:34:20,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:34:20,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:34:20,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:34:21,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:34:21,107.107 INFO    ] time= 25/08/2026 13:34:21
[2026-08-25 13:34:21,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:34:21,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:34:21,298.298 INFO    ] No existing commands found in stream
[2026-08-25 13:34:26,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:34:26,316.316 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 13:34:28,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:34:28,566.566 INFO    ] Checking for system updates...
[2026-08-25 13:34:28,606.606 INFO    ] 200
[2026-08-25 13:34:28,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:28,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:28,671.671 INFO    ] No update needed
[2026-08-25 13:34:28,673.673 INFO    ] Checking for camera pi updates...
[2026-08-25 13:34:28,722.722 INFO    ] 200
[2026-08-25 13:34:28,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:28,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:34:28,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:28,840.840 INFO    ] No camera update needed
[2026-08-25 13:34:28,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:34:28,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:34:28,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:34:28,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:34:30,895.895 INFO    ] ================================================
[2026-08-25 13:34:30,910.910 INFO    ] Launching Daemon at Tue Aug 25 13:34:30 IST 2026
[2026-08-25 13:34:30,921.921 INFO    ] ================================================
[2026-08-25 13:34:31,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:34:31
[2026-08-25 13:34:32,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:34:32,428.428 INFO    ] Initializing speech engine...
[2026-08-25 13:34:32,437.437 INFO    ] 2026-08-25 13:34:32
[2026-08-25 13:34:32,710.710 INFO    ] 2026-08-25 13:34:32
[2026-08-25 13:34:32,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:34:32,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:34:32,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:34:33,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:34:33,122.122 INFO    ] time= 25/08/2026 13:34:33
[2026-08-25 13:34:33,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:34:33,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:34:33,314.314 INFO    ] No existing commands found in stream
[2026-08-25 13:34:38,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:34:38,336.336 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 13:34:39,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:34:39,383.383 INFO    ] Checking for system updates...
[2026-08-25 13:34:39,419.419 INFO    ] 200
[2026-08-25 13:34:39,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:39,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:39,484.484 INFO    ] No update needed
[2026-08-25 13:34:39,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 13:34:39,525.525 INFO    ] 200
[2026-08-25 13:34:39,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:39,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:34:39,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:39,633.633 INFO    ] No camera update needed
[2026-08-25 13:34:39,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:34:39,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:34:39,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:34:39,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:34:41,692.692 INFO    ] ================================================
[2026-08-25 13:34:41,707.707 INFO    ] Launching Daemon at Tue Aug 25 13:34:41 IST 2026
[2026-08-25 13:34:41,718.718 INFO    ] ================================================
[2026-08-25 13:34:42,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:34:42
[2026-08-25 13:34:42,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:34:43,170.170 INFO    ] Initializing speech engine...
[2026-08-25 13:34:43,179.179 INFO    ] 2026-08-25 13:34:43
[2026-08-25 13:34:43,427.427 INFO    ] 2026-08-25 13:34:43
[2026-08-25 13:34:43,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:34:43,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:34:43,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:34:43,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:34:43,796.796 INFO    ] time= 25/08/2026 13:34:43
[2026-08-25 13:34:43,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:34:43,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:34:43,984.984 INFO    ] No existing commands found in stream
[2026-08-25 13:34:49,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:34:49,006.006 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 13:34:52,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:34:52,657.657 INFO    ] Checking for system updates...
[2026-08-25 13:34:52,697.697 INFO    ] 200
[2026-08-25 13:34:52,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:52,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:52,756.756 INFO    ] No update needed
[2026-08-25 13:34:52,759.759 INFO    ] Checking for camera pi updates...
[2026-08-25 13:34:52,792.792 INFO    ] 200
[2026-08-25 13:34:52,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:34:52,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:34:52,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:34:52,894.894 INFO    ] No camera update needed
[2026-08-25 13:34:52,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:34:52,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:34:52,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:34:52,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:34:54,949.949 INFO    ] ================================================
[2026-08-25 13:34:54,964.964 INFO    ] Launching Daemon at Tue Aug 25 13:34:54 IST 2026
[2026-08-25 13:34:54,975.975 INFO    ] ================================================
[2026-08-25 13:34:55,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:34:55
[2026-08-25 13:34:56,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:34:56,510.510 INFO    ] Initializing speech engine...
[2026-08-25 13:34:56,516.516 INFO    ] 2026-08-25 13:34:56
[2026-08-25 13:34:56,790.790 INFO    ] 2026-08-25 13:34:56
[2026-08-25 13:34:56,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:34:57,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:34:57,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:34:57,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:34:57,280.280 INFO    ] time= 25/08/2026 13:34:57
[2026-08-25 13:34:57,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:34:57,341.341 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:34:57,469.469 INFO    ] No existing commands found in stream
[2026-08-25 13:35:02,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:35:02,498.498 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 13:35:02,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:35:02,988.988 INFO    ] Checking for system updates...
[2026-08-25 13:35:03,030.030 INFO    ] 200
[2026-08-25 13:35:03,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:03,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:35:03,099.099 INFO    ] No update needed
[2026-08-25 13:35:03,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 13:35:03,146.146 INFO    ] 200
[2026-08-25 13:35:03,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:03,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:35:03,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:35:03,262.262 INFO    ] No camera update needed
[2026-08-25 13:35:03,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:35:03,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:35:03,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:35:03,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:35:05,329.329 INFO    ] ================================================
[2026-08-25 13:35:05,345.345 INFO    ] Launching Daemon at Tue Aug 25 13:35:05 IST 2026
[2026-08-25 13:35:05,356.356 INFO    ] ================================================
[2026-08-25 13:35:05,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:35:05
[2026-08-25 13:35:06,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:35:06,885.885 INFO    ] Initializing speech engine...
[2026-08-25 13:35:06,893.893 INFO    ] 2026-08-25 13:35:06
[2026-08-25 13:35:07,191.191 INFO    ] 2026-08-25 13:35:07
[2026-08-25 13:35:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:35:07,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:35:07,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:35:07,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:35:07,577.577 INFO    ] time= 25/08/2026 13:35:07
[2026-08-25 13:35:07,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:35:07,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:35:07,706.706 INFO    ] No existing commands found in stream
[2026-08-25 13:35:12,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:35:12,724.724 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 13:35:13,662.662 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:35:13,665.665 INFO    ] Checking for system updates...
[2026-08-25 13:35:13,704.704 INFO    ] 200
[2026-08-25 13:35:13,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:13,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:35:13,768.768 INFO    ] No update needed
[2026-08-25 13:35:13,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 13:35:13,808.808 INFO    ] 200
[2026-08-25 13:35:13,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:13,857.857 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:35:14,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:35:14,007.007 INFO    ] No camera update needed
[2026-08-25 13:35:14,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:35:14,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:35:14,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:35:14,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:35:16,062.062 INFO    ] ================================================
[2026-08-25 13:35:16,078.078 INFO    ] Launching Daemon at Tue Aug 25 13:35:16 IST 2026
[2026-08-25 13:35:16,089.089 INFO    ] ================================================
[2026-08-25 13:35:16,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:35:16
[2026-08-25 13:35:17,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:35:17,504.504 INFO    ] Initializing speech engine...
[2026-08-25 13:35:17,511.511 INFO    ] 2026-08-25 13:35:17
[2026-08-25 13:35:17,808.808 INFO    ] 2026-08-25 13:35:17
[2026-08-25 13:35:17,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:35:18,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:35:18,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:35:18,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:35:18,230.230 INFO    ] time= 25/08/2026 13:35:18
[2026-08-25 13:35:18,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:35:18,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:35:18,319.319 INFO    ] No existing commands found in stream
[2026-08-25 13:35:23,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:35:23,338.338 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 13:35:27,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:35:27,774.774 INFO    ] Checking for system updates...
[2026-08-25 13:35:27,815.815 INFO    ] 200
[2026-08-25 13:35:27,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:27,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:35:27,883.883 INFO    ] No update needed
[2026-08-25 13:35:27,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 13:35:27,929.929 INFO    ] 200
[2026-08-25 13:35:27,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:27,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:35:28,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:35:28,027.027 INFO    ] No camera update needed
[2026-08-25 13:35:28,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:35:28,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:35:28,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:35:28,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:35:30,083.083 INFO    ] ================================================
[2026-08-25 13:35:30,099.099 INFO    ] Launching Daemon at Tue Aug 25 13:35:30 IST 2026
[2026-08-25 13:35:30,110.110 INFO    ] ================================================
[2026-08-25 13:35:30,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:35:30
[2026-08-25 13:35:31,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:35:31,735.735 INFO    ] Initializing speech engine...
[2026-08-25 13:35:31,742.742 INFO    ] 2026-08-25 13:35:31
[2026-08-25 13:35:32,008.008 INFO    ] 2026-08-25 13:35:32
[2026-08-25 13:35:32,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:35:32,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:35:32,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:35:32,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:35:32,520.520 INFO    ] time= 25/08/2026 13:35:32
[2026-08-25 13:35:32,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:35:32,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:35:32,726.726 INFO    ] No existing commands found in stream
[2026-08-25 13:35:37,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:35:37,759.759 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 13:35:39,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:35:39,361.361 INFO    ] Checking for system updates...
[2026-08-25 13:35:39,396.396 INFO    ] 200
[2026-08-25 13:35:39,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:39,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:35:39,456.456 INFO    ] No update needed
[2026-08-25 13:35:39,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 13:35:39,492.492 INFO    ] 200
[2026-08-25 13:35:39,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:39,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:35:39,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:35:39,601.601 INFO    ] No camera update needed
[2026-08-25 13:35:39,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:35:39,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:35:39,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:35:39,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:35:41,656.656 INFO    ] ================================================
[2026-08-25 13:35:41,672.672 INFO    ] Launching Daemon at Tue Aug 25 13:35:41 IST 2026
[2026-08-25 13:35:41,683.683 INFO    ] ================================================
[2026-08-25 13:35:42,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:35:42
[2026-08-25 13:35:42,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:35:43,140.140 INFO    ] Initializing speech engine...
[2026-08-25 13:35:43,148.148 INFO    ] 2026-08-25 13:35:43
[2026-08-25 13:35:43,405.405 INFO    ] 2026-08-25 13:35:43
[2026-08-25 13:35:43,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:35:43,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:35:43,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:35:43,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:35:43,863.863 INFO    ] time= 25/08/2026 13:35:43
[2026-08-25 13:35:43,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:35:43,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:35:44,098.098 INFO    ] No existing commands found in stream
[2026-08-25 13:35:49,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:35:49,117.117 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 13:35:49,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:35:49,685.685 INFO    ] Checking for system updates...
[2026-08-25 13:35:49,725.725 INFO    ] 200
[2026-08-25 13:35:49,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:49,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:35:49,788.788 INFO    ] No update needed
[2026-08-25 13:35:49,790.790 INFO    ] Checking for camera pi updates...
[2026-08-25 13:35:49,827.827 INFO    ] 200
[2026-08-25 13:35:49,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:35:49,874.874 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:35:49,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:35:49,950.950 INFO    ] No camera update needed
[2026-08-25 13:35:49,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:35:49,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:35:49,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:35:49,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:35:52,006.006 INFO    ] ================================================
[2026-08-25 13:35:52,022.022 INFO    ] Launching Daemon at Tue Aug 25 13:35:52 IST 2026
[2026-08-25 13:35:52,033.033 INFO    ] ================================================
[2026-08-25 13:35:52,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:35:52
[2026-08-25 13:35:53,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:35:53,657.657 INFO    ] Initializing speech engine...
[2026-08-25 13:35:53,672.672 INFO    ] 2026-08-25 13:35:53
[2026-08-25 13:35:53,943.943 INFO    ] 2026-08-25 13:35:53
[2026-08-25 13:35:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:35:54,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:35:54,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:35:54,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:35:54,504.504 INFO    ] time= 25/08/2026 13:35:54
[2026-08-25 13:35:54,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:35:54,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:35:54,661.661 INFO    ] No existing commands found in stream
[2026-08-25 13:35:59,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:35:59,701.701 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 13:36:04,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:36:04,902.902 INFO    ] Checking for system updates...
[2026-08-25 13:36:04,938.938 INFO    ] 200
[2026-08-25 13:36:04,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:04,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:36:04,999.999 INFO    ] No update needed
[2026-08-25 13:36:05,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 13:36:05,035.035 INFO    ] 200
[2026-08-25 13:36:05,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:05,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:36:05,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:36:05,133.133 INFO    ] No camera update needed
[2026-08-25 13:36:05,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:36:05,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:36:05,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:36:05,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:36:07,187.187 INFO    ] ================================================
[2026-08-25 13:36:07,203.203 INFO    ] Launching Daemon at Tue Aug 25 13:36:07 IST 2026
[2026-08-25 13:36:07,214.214 INFO    ] ================================================
[2026-08-25 13:36:07,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:36:07
[2026-08-25 13:36:08,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:36:08,778.778 INFO    ] Initializing speech engine...
[2026-08-25 13:36:08,781.781 INFO    ] 2026-08-25 13:36:08
[2026-08-25 13:36:09,035.035 INFO    ] 2026-08-25 13:36:09
[2026-08-25 13:36:09,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:36:09,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:36:09,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:36:09,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:36:09,587.587 INFO    ] time= 25/08/2026 13:36:09
[2026-08-25 13:36:09,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:36:09,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:36:09,755.755 INFO    ] No existing commands found in stream
[2026-08-25 13:36:14,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:36:14,780.780 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 13:36:18,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:36:18,275.275 INFO    ] Checking for system updates...
[2026-08-25 13:36:18,311.311 INFO    ] 200
[2026-08-25 13:36:18,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:18,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:36:18,378.378 INFO    ] No update needed
[2026-08-25 13:36:18,380.380 INFO    ] Checking for camera pi updates...
[2026-08-25 13:36:18,418.418 INFO    ] 200
[2026-08-25 13:36:18,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:18,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:36:18,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:36:18,525.525 INFO    ] No camera update needed
[2026-08-25 13:36:18,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:36:18,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:36:18,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:36:18,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:36:20,582.582 INFO    ] ================================================
[2026-08-25 13:36:20,598.598 INFO    ] Launching Daemon at Tue Aug 25 13:36:20 IST 2026
[2026-08-25 13:36:20,609.609 INFO    ] ================================================
[2026-08-25 13:36:21,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:36:21
[2026-08-25 13:36:21,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:36:22,017.017 INFO    ] Initializing speech engine...
[2026-08-25 13:36:22,033.033 INFO    ] 2026-08-25 13:36:22
[2026-08-25 13:36:22,299.299 INFO    ] 2026-08-25 13:36:22
[2026-08-25 13:36:22,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:36:22,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:36:22,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:36:22,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:36:22,706.706 INFO    ] time= 25/08/2026 13:36:22
[2026-08-25 13:36:22,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:36:22,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:36:22,875.875 INFO    ] No existing commands found in stream
[2026-08-25 13:36:27,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:36:27,902.902 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 13:36:28,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:36:28,474.474 INFO    ] Checking for system updates...
[2026-08-25 13:36:28,512.512 INFO    ] 200
[2026-08-25 13:36:28,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:28,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:36:28,575.575 INFO    ] No update needed
[2026-08-25 13:36:28,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 13:36:28,610.610 INFO    ] 200
[2026-08-25 13:36:28,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:28,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:36:28,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:36:28,719.719 INFO    ] No camera update needed
[2026-08-25 13:36:28,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:36:28,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:36:28,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:36:28,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:36:30,774.774 INFO    ] ================================================
[2026-08-25 13:36:30,789.789 INFO    ] Launching Daemon at Tue Aug 25 13:36:30 IST 2026
[2026-08-25 13:36:30,801.801 INFO    ] ================================================
[2026-08-25 13:36:31,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:36:31
[2026-08-25 13:36:31,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:36:32,261.261 INFO    ] Initializing speech engine...
[2026-08-25 13:36:32,270.270 INFO    ] 2026-08-25 13:36:32
[2026-08-25 13:36:32,563.563 INFO    ] 2026-08-25 13:36:32
[2026-08-25 13:36:32,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:36:32,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:36:32,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:36:33,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:36:33,072.072 INFO    ] time= 25/08/2026 13:36:33
[2026-08-25 13:36:33,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:36:33,154.154 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:36:33,287.287 INFO    ] No existing commands found in stream
[2026-08-25 13:36:38,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:36:38,315.315 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 13:36:40,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:36:40,969.969 INFO    ] Checking for system updates...
[2026-08-25 13:36:41,007.007 INFO    ] 200
[2026-08-25 13:36:41,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:41,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:36:41,066.066 INFO    ] No update needed
[2026-08-25 13:36:41,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 13:36:41,103.103 INFO    ] 200
[2026-08-25 13:36:41,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:41,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:36:41,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:36:41,202.202 INFO    ] No camera update needed
[2026-08-25 13:36:41,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:36:41,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:36:41,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:36:41,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:36:43,256.256 INFO    ] ================================================
[2026-08-25 13:36:43,272.272 INFO    ] Launching Daemon at Tue Aug 25 13:36:43 IST 2026
[2026-08-25 13:36:43,283.283 INFO    ] ================================================
[2026-08-25 13:36:43,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:36:43
[2026-08-25 13:36:44,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:36:44,735.735 INFO    ] Initializing speech engine...
[2026-08-25 13:36:44,743.743 INFO    ] 2026-08-25 13:36:44
[2026-08-25 13:36:45,003.003 INFO    ] 2026-08-25 13:36:44
[2026-08-25 13:36:45,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:36:45,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:36:45,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:36:45,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:36:45,487.487 INFO    ] time= 25/08/2026 13:36:45
[2026-08-25 13:36:45,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:36:45,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:36:45,686.686 INFO    ] No existing commands found in stream
[2026-08-25 13:36:50,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:36:50,713.713 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 13:36:55,007.007 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:36:55,010.010 INFO    ] Checking for system updates...
[2026-08-25 13:36:55,049.049 INFO    ] 200
[2026-08-25 13:36:55,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:55,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:36:55,108.108 INFO    ] No update needed
[2026-08-25 13:36:55,111.111 INFO    ] Checking for camera pi updates...
[2026-08-25 13:36:55,144.144 INFO    ] 200
[2026-08-25 13:36:55,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:36:55,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:36:55,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:36:55,245.245 INFO    ] No camera update needed
[2026-08-25 13:36:55,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:36:55,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:36:55,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:36:55,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:36:57,299.299 INFO    ] ================================================
[2026-08-25 13:36:57,315.315 INFO    ] Launching Daemon at Tue Aug 25 13:36:57 IST 2026
[2026-08-25 13:36:57,326.326 INFO    ] ================================================
[2026-08-25 13:36:57,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:36:57
[2026-08-25 13:36:58,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:36:58,729.729 INFO    ] Initializing speech engine...
[2026-08-25 13:36:58,734.734 INFO    ] 2026-08-25 13:36:58
[2026-08-25 13:36:59,006.006 INFO    ] 2026-08-25 13:36:58
[2026-08-25 13:36:59,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:36:59,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:36:59,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:36:59,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:36:59,385.385 INFO    ] time= 25/08/2026 13:36:59
[2026-08-25 13:36:59,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:36:59,437.437 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:36:59,566.566 INFO    ] No existing commands found in stream
[2026-08-25 13:37:04,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:37:04,599.599 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 13:37:09,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:37:09,039.039 INFO    ] Checking for system updates...
[2026-08-25 13:37:09,074.074 INFO    ] 200
[2026-08-25 13:37:09,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:09,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:37:09,132.132 INFO    ] No update needed
[2026-08-25 13:37:09,134.134 INFO    ] Checking for camera pi updates...
[2026-08-25 13:37:09,168.168 INFO    ] 200
[2026-08-25 13:37:09,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:09,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:37:09,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:37:09,271.271 INFO    ] No camera update needed
[2026-08-25 13:37:09,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:37:09,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:37:09,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:37:09,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:37:11,328.328 INFO    ] ================================================
[2026-08-25 13:37:11,345.345 INFO    ] Launching Daemon at Tue Aug 25 13:37:11 IST 2026
[2026-08-25 13:37:11,356.356 INFO    ] ================================================
[2026-08-25 13:37:11,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:37:11
[2026-08-25 13:37:12,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:37:12,772.772 INFO    ] Initializing speech engine...
[2026-08-25 13:37:12,787.787 INFO    ] 2026-08-25 13:37:12
[2026-08-25 13:37:13,072.072 INFO    ] 2026-08-25 13:37:13
[2026-08-25 13:37:13,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:37:13,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:37:13,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:37:13,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:37:13,451.451 INFO    ] time= 25/08/2026 13:37:13
[2026-08-25 13:37:13,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:37:13,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:37:13,574.574 INFO    ] No existing commands found in stream
[2026-08-25 13:37:18,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:37:18,590.590 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 13:37:22,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:37:22,264.264 INFO    ] Checking for system updates...
[2026-08-25 13:37:22,304.304 INFO    ] 200
[2026-08-25 13:37:22,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:22,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:37:22,365.365 INFO    ] No update needed
[2026-08-25 13:37:22,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 13:37:22,406.406 INFO    ] 200
[2026-08-25 13:37:22,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:22,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:37:22,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:37:22,606.606 INFO    ] No camera update needed
[2026-08-25 13:37:22,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:37:22,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:37:22,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:37:22,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:37:24,663.663 INFO    ] ================================================
[2026-08-25 13:37:24,678.678 INFO    ] Launching Daemon at Tue Aug 25 13:37:24 IST 2026
[2026-08-25 13:37:24,689.689 INFO    ] ================================================
[2026-08-25 13:37:25,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:37:25
[2026-08-25 13:37:25,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:37:26,084.084 INFO    ] Initializing speech engine...
[2026-08-25 13:37:26,097.097 INFO    ] 2026-08-25 13:37:26
[2026-08-25 13:37:26,358.358 INFO    ] 2026-08-25 13:37:26
[2026-08-25 13:37:26,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:37:26,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:37:26,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:37:26,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:37:26,730.730 INFO    ] time= 25/08/2026 13:37:26
[2026-08-25 13:37:26,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:37:26,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:37:26,921.921 INFO    ] No existing commands found in stream
[2026-08-25 13:37:31,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:37:31,936.936 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 13:37:32,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:37:32,996.996 INFO    ] Checking for system updates...
[2026-08-25 13:37:33,046.046 INFO    ] 200
[2026-08-25 13:37:33,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:33,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:37:33,105.105 INFO    ] No update needed
[2026-08-25 13:37:33,108.108 INFO    ] Checking for camera pi updates...
[2026-08-25 13:37:33,143.143 INFO    ] 200
[2026-08-25 13:37:33,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:33,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:37:33,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:37:33,243.243 INFO    ] No camera update needed
[2026-08-25 13:37:33,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:37:33,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:37:33,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:37:33,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:37:35,303.303 INFO    ] ================================================
[2026-08-25 13:37:35,318.318 INFO    ] Launching Daemon at Tue Aug 25 13:37:35 IST 2026
[2026-08-25 13:37:35,329.329 INFO    ] ================================================
[2026-08-25 13:37:35,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:37:35
[2026-08-25 13:37:36,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:37:36,791.791 INFO    ] Initializing speech engine...
[2026-08-25 13:37:36,800.800 INFO    ] 2026-08-25 13:37:36
[2026-08-25 13:37:37,111.111 INFO    ] 2026-08-25 13:37:37
[2026-08-25 13:37:37,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:37:37,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:37:37,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:37:37,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:37:37,612.612 INFO    ] time= 25/08/2026 13:37:37
[2026-08-25 13:37:37,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:37:37,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:37:37,767.767 INFO    ] No existing commands found in stream
[2026-08-25 13:37:42,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:37:42,806.806 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 13:37:45,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:37:45,117.117 INFO    ] Checking for system updates...
[2026-08-25 13:37:45,160.160 INFO    ] 200
[2026-08-25 13:37:45,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:45,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:37:45,225.225 INFO    ] No update needed
[2026-08-25 13:37:45,228.228 INFO    ] Checking for camera pi updates...
[2026-08-25 13:37:45,263.263 INFO    ] 200
[2026-08-25 13:37:45,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:45,307.307 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:37:45,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:37:45,353.353 INFO    ] No camera update needed
[2026-08-25 13:37:45,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:37:45,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:37:45,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:37:45,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:37:47,408.408 INFO    ] ================================================
[2026-08-25 13:37:47,423.423 INFO    ] Launching Daemon at Tue Aug 25 13:37:47 IST 2026
[2026-08-25 13:37:47,436.436 INFO    ] ================================================
[2026-08-25 13:37:48,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:37:47
[2026-08-25 13:37:48,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:37:48,849.849 INFO    ] Initializing speech engine...
[2026-08-25 13:37:48,858.858 INFO    ] 2026-08-25 13:37:48
[2026-08-25 13:37:49,104.104 INFO    ] 2026-08-25 13:37:49
[2026-08-25 13:37:49,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:37:49,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:37:49,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:37:49,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:37:49,572.572 INFO    ] time= 25/08/2026 13:37:49
[2026-08-25 13:37:49,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:37:49,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:37:49,779.779 INFO    ] No existing commands found in stream
[2026-08-25 13:37:54,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:37:54,804.804 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 13:37:56,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:37:56,503.503 INFO    ] Checking for system updates...
[2026-08-25 13:37:56,547.547 INFO    ] 200
[2026-08-25 13:37:56,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:56,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:37:56,608.608 INFO    ] No update needed
[2026-08-25 13:37:56,611.611 INFO    ] Checking for camera pi updates...
[2026-08-25 13:37:56,649.649 INFO    ] 200
[2026-08-25 13:37:56,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:37:56,697.697 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:37:56,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:37:56,749.749 INFO    ] No camera update needed
[2026-08-25 13:37:56,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:37:56,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:37:56,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:37:56,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:37:58,806.806 INFO    ] ================================================
[2026-08-25 13:37:58,821.821 INFO    ] Launching Daemon at Tue Aug 25 13:37:58 IST 2026
[2026-08-25 13:37:58,832.832 INFO    ] ================================================
[2026-08-25 13:37:59,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:37:59
[2026-08-25 13:38:00,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:38:00,489.489 INFO    ] Initializing speech engine...
[2026-08-25 13:38:00,503.503 INFO    ] 2026-08-25 13:38:00
[2026-08-25 13:38:00,787.787 INFO    ] 2026-08-25 13:38:00
[2026-08-25 13:38:00,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:38:01,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:38:01,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:38:01,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:38:01,325.325 INFO    ] time= 25/08/2026 13:38:01
[2026-08-25 13:38:01,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:38:01,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:38:01,480.480 INFO    ] No existing commands found in stream
[2026-08-25 13:38:06,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:38:06,501.501 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 13:38:07,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:38:07,780.780 INFO    ] Checking for system updates...
[2026-08-25 13:38:07,817.817 INFO    ] 200
[2026-08-25 13:38:07,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:07,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:38:07,877.877 INFO    ] No update needed
[2026-08-25 13:38:07,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 13:38:07,915.915 INFO    ] 200
[2026-08-25 13:38:07,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:07,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:38:08,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:38:08,031.031 INFO    ] No camera update needed
[2026-08-25 13:38:08,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:38:08,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:38:08,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:38:08,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:38:10,085.085 INFO    ] ================================================
[2026-08-25 13:38:10,101.101 INFO    ] Launching Daemon at Tue Aug 25 13:38:10 IST 2026
[2026-08-25 13:38:10,111.111 INFO    ] ================================================
[2026-08-25 13:38:10,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:38:10
[2026-08-25 13:38:11,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:38:11,595.595 INFO    ] Initializing speech engine...
[2026-08-25 13:38:11,608.608 INFO    ] 2026-08-25 13:38:11
[2026-08-25 13:38:11,929.929 INFO    ] 2026-08-25 13:38:11
[2026-08-25 13:38:12,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:38:12,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:38:12,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:38:12,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:38:12,432.432 INFO    ] time= 25/08/2026 13:38:12
[2026-08-25 13:38:12,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:38:12,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:38:12,611.611 INFO    ] No existing commands found in stream
[2026-08-25 13:38:17,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:38:17,651.651 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 13:38:18,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:38:18,268.268 INFO    ] Checking for system updates...
[2026-08-25 13:38:18,305.305 INFO    ] 200
[2026-08-25 13:38:18,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:18,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:38:18,371.371 INFO    ] No update needed
[2026-08-25 13:38:18,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 13:38:18,407.407 INFO    ] 200
[2026-08-25 13:38:18,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:18,450.450 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:38:18,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:38:18,497.497 INFO    ] No camera update needed
[2026-08-25 13:38:18,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:38:18,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:38:18,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:38:18,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:38:20,551.551 INFO    ] ================================================
[2026-08-25 13:38:20,566.566 INFO    ] Launching Daemon at Tue Aug 25 13:38:20 IST 2026
[2026-08-25 13:38:20,576.576 INFO    ] ================================================
[2026-08-25 13:38:21,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:38:21
[2026-08-25 13:38:21,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:38:22,052.052 INFO    ] Initializing speech engine...
[2026-08-25 13:38:22,075.075 INFO    ] 2026-08-25 13:38:22
[2026-08-25 13:38:22,326.326 INFO    ] 2026-08-25 13:38:22
[2026-08-25 13:38:22,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:38:22,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:38:22,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:38:22,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:38:22,801.801 INFO    ] time= 25/08/2026 13:38:22
[2026-08-25 13:38:22,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:38:22,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:38:23,016.016 INFO    ] No existing commands found in stream
[2026-08-25 13:38:28,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:38:28,046.046 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 13:38:31,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:38:31,119.119 INFO    ] Checking for system updates...
[2026-08-25 13:38:31,156.156 INFO    ] 200
[2026-08-25 13:38:31,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:31,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:38:31,222.222 INFO    ] No update needed
[2026-08-25 13:38:31,224.224 INFO    ] Checking for camera pi updates...
[2026-08-25 13:38:31,262.262 INFO    ] 200
[2026-08-25 13:38:31,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:31,308.308 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:38:31,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:38:31,361.361 INFO    ] No camera update needed
[2026-08-25 13:38:31,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:38:31,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:38:31,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:38:31,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:38:33,422.422 INFO    ] ================================================
[2026-08-25 13:38:33,437.437 INFO    ] Launching Daemon at Tue Aug 25 13:38:33 IST 2026
[2026-08-25 13:38:33,448.448 INFO    ] ================================================
[2026-08-25 13:38:34,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:38:34
[2026-08-25 13:38:34,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:38:34,900.900 INFO    ] Initializing speech engine...
[2026-08-25 13:38:34,909.909 INFO    ] 2026-08-25 13:38:34
[2026-08-25 13:38:35,156.156 INFO    ] 2026-08-25 13:38:35
[2026-08-25 13:38:35,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:38:35,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:38:35,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:38:35,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:38:35,658.658 INFO    ] time= 25/08/2026 13:38:35
[2026-08-25 13:38:35,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:38:35,721.721 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:38:35,851.851 INFO    ] No existing commands found in stream
[2026-08-25 13:38:40,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:38:40,875.875 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 13:38:45,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:38:45,088.088 INFO    ] Checking for system updates...
[2026-08-25 13:38:45,128.128 INFO    ] 200
[2026-08-25 13:38:45,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:45,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:38:45,196.196 INFO    ] No update needed
[2026-08-25 13:38:45,198.198 INFO    ] Checking for camera pi updates...
[2026-08-25 13:38:45,236.236 INFO    ] 200
[2026-08-25 13:38:45,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:45,286.286 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:38:45,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:38:45,337.337 INFO    ] No camera update needed
[2026-08-25 13:38:45,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:38:45,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:38:45,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:38:45,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:38:47,393.393 INFO    ] ================================================
[2026-08-25 13:38:47,409.409 INFO    ] Launching Daemon at Tue Aug 25 13:38:47 IST 2026
[2026-08-25 13:38:47,421.421 INFO    ] ================================================
[2026-08-25 13:38:47,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:38:47
[2026-08-25 13:38:48,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:38:48,839.839 INFO    ] Initializing speech engine...
[2026-08-25 13:38:48,848.848 INFO    ] 2026-08-25 13:38:48
[2026-08-25 13:38:49,107.107 INFO    ] 2026-08-25 13:38:49
[2026-08-25 13:38:49,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:38:49,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:38:49,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:38:49,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:38:49,648.648 INFO    ] time= 25/08/2026 13:38:49
[2026-08-25 13:38:49,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:38:49,674.674 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:38:49,800.800 INFO    ] No existing commands found in stream
[2026-08-25 13:38:54,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:38:54,816.816 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 13:38:58,377.377 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:38:58,379.379 INFO    ] Checking for system updates...
[2026-08-25 13:38:58,416.416 INFO    ] 200
[2026-08-25 13:38:58,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:58,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:38:58,474.474 INFO    ] No update needed
[2026-08-25 13:38:58,477.477 INFO    ] Checking for camera pi updates...
[2026-08-25 13:38:58,511.511 INFO    ] 200
[2026-08-25 13:38:58,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:38:58,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:38:58,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:38:58,609.609 INFO    ] No camera update needed
[2026-08-25 13:38:58,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:38:58,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:38:58,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:38:58,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:39:00,663.663 INFO    ] ================================================
[2026-08-25 13:39:00,679.679 INFO    ] Launching Daemon at Tue Aug 25 13:39:00 IST 2026
[2026-08-25 13:39:00,689.689 INFO    ] ================================================
[2026-08-25 13:39:01,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:39:01
[2026-08-25 13:39:01,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:39:02,366.366 INFO    ] Initializing speech engine...
[2026-08-25 13:39:02,377.377 INFO    ] 2026-08-25 13:39:02
[2026-08-25 13:39:02,701.701 INFO    ] 2026-08-25 13:39:02
[2026-08-25 13:39:02,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:39:02,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:39:02,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:39:03,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:39:03,135.135 INFO    ] time= 25/08/2026 13:39:03
[2026-08-25 13:39:03,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:39:03,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:39:03,310.310 INFO    ] No existing commands found in stream
[2026-08-25 13:39:08,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:39:08,335.335 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 13:39:12,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:39:12,481.481 INFO    ] Checking for system updates...
[2026-08-25 13:39:12,517.517 INFO    ] 200
[2026-08-25 13:39:12,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:12,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:39:12,578.578 INFO    ] No update needed
[2026-08-25 13:39:12,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 13:39:12,618.618 INFO    ] 200
[2026-08-25 13:39:12,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:12,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:39:12,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:39:12,715.715 INFO    ] No camera update needed
[2026-08-25 13:39:12,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:39:12,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:39:12,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:39:12,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:39:14,773.773 INFO    ] ================================================
[2026-08-25 13:39:14,788.788 INFO    ] Launching Daemon at Tue Aug 25 13:39:14 IST 2026
[2026-08-25 13:39:14,799.799 INFO    ] ================================================
[2026-08-25 13:39:15,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:39:15
[2026-08-25 13:39:15,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:39:16,233.233 INFO    ] Initializing speech engine...
[2026-08-25 13:39:16,250.250 INFO    ] 2026-08-25 13:39:16
[2026-08-25 13:39:16,540.540 INFO    ] 2026-08-25 13:39:16
[2026-08-25 13:39:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:39:16,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:39:16,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:39:16,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:39:16,933.933 INFO    ] time= 25/08/2026 13:39:16
[2026-08-25 13:39:16,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:39:16,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:39:17,123.123 INFO    ] No existing commands found in stream
[2026-08-25 13:39:22,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:39:22,151.151 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 13:39:26,603.603 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:39:26,606.606 INFO    ] Checking for system updates...
[2026-08-25 13:39:26,646.646 INFO    ] 200
[2026-08-25 13:39:26,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:26,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:39:26,708.708 INFO    ] No update needed
[2026-08-25 13:39:26,710.710 INFO    ] Checking for camera pi updates...
[2026-08-25 13:39:26,749.749 INFO    ] 200
[2026-08-25 13:39:26,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:26,793.793 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:39:26,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:39:26,949.949 INFO    ] No camera update needed
[2026-08-25 13:39:26,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:39:26,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:39:26,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:39:26,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:39:29,008.008 INFO    ] ================================================
[2026-08-25 13:39:29,023.023 INFO    ] Launching Daemon at Tue Aug 25 13:39:29 IST 2026
[2026-08-25 13:39:29,033.033 INFO    ] ================================================
[2026-08-25 13:39:29,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:39:29
[2026-08-25 13:39:30,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:39:30,437.437 INFO    ] Initializing speech engine...
[2026-08-25 13:39:30,446.446 INFO    ] 2026-08-25 13:39:30
[2026-08-25 13:39:30,740.740 INFO    ] 2026-08-25 13:39:30
[2026-08-25 13:39:30,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:39:31,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:39:31,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:39:31,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:39:31,169.169 INFO    ] time= 25/08/2026 13:39:31
[2026-08-25 13:39:31,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:39:31,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:39:31,351.351 INFO    ] No existing commands found in stream
[2026-08-25 13:39:36,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:39:36,379.379 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 13:39:39,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:39:39,529.529 INFO    ] Checking for system updates...
[2026-08-25 13:39:39,566.566 INFO    ] 200
[2026-08-25 13:39:39,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:39,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:39:39,633.633 INFO    ] No update needed
[2026-08-25 13:39:39,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 13:39:39,675.675 INFO    ] 200
[2026-08-25 13:39:39,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:39,725.725 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:39:39,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:39:39,779.779 INFO    ] No camera update needed
[2026-08-25 13:39:39,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:39:39,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:39:39,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:39:39,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:39:41,839.839 INFO    ] ================================================
[2026-08-25 13:39:41,853.853 INFO    ] Launching Daemon at Tue Aug 25 13:39:41 IST 2026
[2026-08-25 13:39:41,864.864 INFO    ] ================================================
[2026-08-25 13:39:42,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:39:42
[2026-08-25 13:39:43,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:39:43,487.487 INFO    ] Initializing speech engine...
[2026-08-25 13:39:43,502.502 INFO    ] 2026-08-25 13:39:43
[2026-08-25 13:39:43,816.816 INFO    ] 2026-08-25 13:39:43
[2026-08-25 13:39:43,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:39:44,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:39:44,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:39:44,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:39:44,339.339 INFO    ] time= 25/08/2026 13:39:44
[2026-08-25 13:39:44,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:39:44,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:39:44,518.518 INFO    ] No existing commands found in stream
[2026-08-25 13:39:49,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:39:49,547.547 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 13:39:50,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:39:50,679.679 INFO    ] Checking for system updates...
[2026-08-25 13:39:50,719.719 INFO    ] 200
[2026-08-25 13:39:50,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:50,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:39:50,776.776 INFO    ] No update needed
[2026-08-25 13:39:50,778.778 INFO    ] Checking for camera pi updates...
[2026-08-25 13:39:50,812.812 INFO    ] 200
[2026-08-25 13:39:50,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:39:50,860.860 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:39:50,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:39:50,907.907 INFO    ] No camera update needed
[2026-08-25 13:39:50,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:39:50,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:39:50,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:39:50,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:39:52,961.961 INFO    ] ================================================
[2026-08-25 13:39:52,976.976 INFO    ] Launching Daemon at Tue Aug 25 13:39:52 IST 2026
[2026-08-25 13:39:52,987.987 INFO    ] ================================================
[2026-08-25 13:39:53,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:39:53
[2026-08-25 13:39:54,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:39:54,393.393 INFO    ] Initializing speech engine...
[2026-08-25 13:39:54,406.406 INFO    ] 2026-08-25 13:39:54
[2026-08-25 13:39:54,672.672 INFO    ] 2026-08-25 13:39:54
[2026-08-25 13:39:54,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:39:54,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:39:54,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:39:55,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:39:55,132.132 INFO    ] time= 25/08/2026 13:39:55
[2026-08-25 13:39:55,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:39:55,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:39:55,384.384 INFO    ] No existing commands found in stream
[2026-08-25 13:40:00,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:40:00,411.411 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 13:40:03,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:40:03,141.141 INFO    ] Checking for system updates...
[2026-08-25 13:40:03,195.195 INFO    ] 200
[2026-08-25 13:40:03,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:03,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:40:03,285.285 INFO    ] No update needed
[2026-08-25 13:40:03,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 13:40:03,339.339 INFO    ] 200
[2026-08-25 13:40:03,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:03,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:40:03,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:40:03,489.489 INFO    ] No camera update needed
[2026-08-25 13:40:03,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:40:03,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:40:03,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:40:03,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:40:05,558.558 INFO    ] ================================================
[2026-08-25 13:40:05,573.573 INFO    ] Launching Daemon at Tue Aug 25 13:40:05 IST 2026
[2026-08-25 13:40:05,583.583 INFO    ] ================================================
[2026-08-25 13:40:06,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:40:06
[2026-08-25 13:40:06,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:40:07,105.105 INFO    ] Initializing speech engine...
[2026-08-25 13:40:07,111.111 INFO    ] 2026-08-25 13:40:07
[2026-08-25 13:40:07,369.369 INFO    ] 2026-08-25 13:40:07
[2026-08-25 13:40:07,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:40:07,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:40:07,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:40:07,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:40:07,941.941 INFO    ] time= 25/08/2026 13:40:07
[2026-08-25 13:40:07,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:40:07,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:40:08,088.088 INFO    ] No existing commands found in stream
[2026-08-25 13:40:13,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:40:13,103.103 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 13:40:14,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:40:14,097.097 INFO    ] Checking for system updates...
[2026-08-25 13:40:14,133.133 INFO    ] 200
[2026-08-25 13:40:14,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:14,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:40:14,191.191 INFO    ] No update needed
[2026-08-25 13:40:14,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 13:40:14,230.230 INFO    ] 200
[2026-08-25 13:40:14,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:14,273.273 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:40:14,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:40:14,323.323 INFO    ] No camera update needed
[2026-08-25 13:40:14,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:40:14,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:40:14,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:40:14,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:40:16,379.379 INFO    ] ================================================
[2026-08-25 13:40:16,393.393 INFO    ] Launching Daemon at Tue Aug 25 13:40:16 IST 2026
[2026-08-25 13:40:16,404.404 INFO    ] ================================================
[2026-08-25 13:40:16,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:40:16
[2026-08-25 13:40:17,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:40:17,811.811 INFO    ] Initializing speech engine...
[2026-08-25 13:40:17,836.836 INFO    ] 2026-08-25 13:40:17
[2026-08-25 13:40:18,102.102 INFO    ] 2026-08-25 13:40:18
[2026-08-25 13:40:18,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:40:18,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:40:18,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:40:18,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:40:18,556.556 INFO    ] time= 25/08/2026 13:40:18
[2026-08-25 13:40:18,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:40:18,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:40:18,806.806 INFO    ] No existing commands found in stream
[2026-08-25 13:40:23,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:40:23,842.842 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 13:40:28,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:40:28,169.169 INFO    ] Checking for system updates...
[2026-08-25 13:40:28,208.208 INFO    ] 200
[2026-08-25 13:40:28,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:28,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:40:28,265.265 INFO    ] No update needed
[2026-08-25 13:40:28,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 13:40:28,304.304 INFO    ] 200
[2026-08-25 13:40:28,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:28,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:40:28,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:40:28,402.402 INFO    ] No camera update needed
[2026-08-25 13:40:28,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:40:28,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:40:28,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:40:28,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:40:30,456.456 INFO    ] ================================================
[2026-08-25 13:40:30,472.472 INFO    ] Launching Daemon at Tue Aug 25 13:40:30 IST 2026
[2026-08-25 13:40:30,483.483 INFO    ] ================================================
[2026-08-25 13:40:31,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:40:31
[2026-08-25 13:40:31,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:40:31,892.892 INFO    ] Initializing speech engine...
[2026-08-25 13:40:31,905.905 INFO    ] 2026-08-25 13:40:31
[2026-08-25 13:40:32,174.174 INFO    ] 2026-08-25 13:40:32
[2026-08-25 13:40:32,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:40:32,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:40:32,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:40:32,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:40:32,600.600 INFO    ] time= 25/08/2026 13:40:32
[2026-08-25 13:40:32,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:40:32,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:40:32,803.803 INFO    ] No existing commands found in stream
[2026-08-25 13:40:37,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:40:37,815.815 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 13:40:38,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:40:39,000.000 INFO    ] Checking for system updates...
[2026-08-25 13:40:39,036.036 INFO    ] 200
[2026-08-25 13:40:39,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:39,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:40:39,099.099 INFO    ] No update needed
[2026-08-25 13:40:39,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 13:40:39,135.135 INFO    ] 200
[2026-08-25 13:40:39,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:39,179.179 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:40:39,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:40:39,231.231 INFO    ] No camera update needed
[2026-08-25 13:40:39,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:40:39,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:40:39,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:40:39,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:40:41,287.287 INFO    ] ================================================
[2026-08-25 13:40:41,302.302 INFO    ] Launching Daemon at Tue Aug 25 13:40:41 IST 2026
[2026-08-25 13:40:41,313.313 INFO    ] ================================================
[2026-08-25 13:40:41,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:40:41
[2026-08-25 13:40:42,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:40:42,729.729 INFO    ] Initializing speech engine...
[2026-08-25 13:40:42,739.739 INFO    ] 2026-08-25 13:40:42
[2026-08-25 13:40:42,982.982 INFO    ] 2026-08-25 13:40:42
[2026-08-25 13:40:43,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:40:43,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:40:43,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:40:43,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:40:43,348.348 INFO    ] time= 25/08/2026 13:40:43
[2026-08-25 13:40:43,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:40:43,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:40:43,543.543 INFO    ] No existing commands found in stream
[2026-08-25 13:40:48,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:40:48,557.557 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 13:40:51,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:40:51,620.620 INFO    ] Checking for system updates...
[2026-08-25 13:40:51,659.659 INFO    ] 200
[2026-08-25 13:40:51,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:51,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:40:51,717.717 INFO    ] No update needed
[2026-08-25 13:40:51,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 13:40:51,754.754 INFO    ] 200
[2026-08-25 13:40:51,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:40:51,800.800 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:40:51,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:40:51,863.863 INFO    ] No camera update needed
[2026-08-25 13:40:51,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:40:51,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:40:51,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:40:51,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:40:53,919.919 INFO    ] ================================================
[2026-08-25 13:40:53,935.935 INFO    ] Launching Daemon at Tue Aug 25 13:40:53 IST 2026
[2026-08-25 13:40:53,947.947 INFO    ] ================================================
[2026-08-25 13:40:54,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:40:54
[2026-08-25 13:40:55,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:40:55,365.365 INFO    ] Initializing speech engine...
[2026-08-25 13:40:55,374.374 INFO    ] 2026-08-25 13:40:55
[2026-08-25 13:40:55,624.624 INFO    ] 2026-08-25 13:40:55
[2026-08-25 13:40:55,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:40:55,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:40:55,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:40:56,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:40:56,084.084 INFO    ] time= 25/08/2026 13:40:56
[2026-08-25 13:40:56,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:40:56,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:40:56,325.325 INFO    ] No existing commands found in stream
[2026-08-25 13:41:01,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:41:01,351.351 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 13:41:03,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:41:03,759.759 INFO    ] Checking for system updates...
[2026-08-25 13:41:03,797.797 INFO    ] 200
[2026-08-25 13:41:03,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:03,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:41:03,855.855 INFO    ] No update needed
[2026-08-25 13:41:03,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 13:41:03,893.893 INFO    ] 200
[2026-08-25 13:41:03,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:03,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:41:03,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:41:03,997.997 INFO    ] No camera update needed
[2026-08-25 13:41:03,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:41:04,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:41:04,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:41:04,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:41:06,050.050 INFO    ] ================================================
[2026-08-25 13:41:06,066.066 INFO    ] Launching Daemon at Tue Aug 25 13:41:06 IST 2026
[2026-08-25 13:41:06,078.078 INFO    ] ================================================
[2026-08-25 13:41:06,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:41:06
[2026-08-25 13:41:07,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:41:07,503.503 INFO    ] Initializing speech engine...
[2026-08-25 13:41:07,512.512 INFO    ] 2026-08-25 13:41:07
[2026-08-25 13:41:07,773.773 INFO    ] 2026-08-25 13:41:07
[2026-08-25 13:41:07,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:41:08,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:41:08,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:41:08,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:41:08,230.230 INFO    ] time= 25/08/2026 13:41:08
[2026-08-25 13:41:08,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:41:08,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:41:08,433.433 INFO    ] No existing commands found in stream
[2026-08-25 13:41:13,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:41:13,458.458 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 13:41:15,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:41:15,039.039 INFO    ] Checking for system updates...
[2026-08-25 13:41:15,077.077 INFO    ] 200
[2026-08-25 13:41:15,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:15,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:15,138.138 INFO    ] No update needed
[2026-08-25 13:41:15,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 13:41:15,176.176 INFO    ] 200
[2026-08-25 13:41:15,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:15,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:41:15,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:15,271.271 INFO    ] No camera update needed
[2026-08-25 13:41:15,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:41:15,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:41:15,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:41:15,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:41:17,327.327 INFO    ] ================================================
[2026-08-25 13:41:17,343.343 INFO    ] Launching Daemon at Tue Aug 25 13:41:17 IST 2026
[2026-08-25 13:41:17,353.353 INFO    ] ================================================
[2026-08-25 13:41:17,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:41:17
[2026-08-25 13:41:18,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:41:18,910.910 INFO    ] Initializing speech engine...
[2026-08-25 13:41:18,921.921 INFO    ] 2026-08-25 13:41:18
[2026-08-25 13:41:19,198.198 INFO    ] 2026-08-25 13:41:19
[2026-08-25 13:41:19,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:41:19,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:41:19,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:41:19,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:41:19,729.729 INFO    ] time= 25/08/2026 13:41:19
[2026-08-25 13:41:19,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:41:19,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:41:19,906.906 INFO    ] No existing commands found in stream
[2026-08-25 13:41:24,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:41:24,940.940 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 13:41:26,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:41:26,429.429 INFO    ] Checking for system updates...
[2026-08-25 13:41:26,465.465 INFO    ] 200
[2026-08-25 13:41:26,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:26,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:26,524.524 INFO    ] No update needed
[2026-08-25 13:41:26,527.527 INFO    ] Checking for camera pi updates...
[2026-08-25 13:41:26,563.563 INFO    ] 200
[2026-08-25 13:41:26,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:26,606.606 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:41:26,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:26,655.655 INFO    ] No camera update needed
[2026-08-25 13:41:26,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:41:26,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:41:26,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:41:26,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:41:28,709.709 INFO    ] ================================================
[2026-08-25 13:41:28,725.725 INFO    ] Launching Daemon at Tue Aug 25 13:41:28 IST 2026
[2026-08-25 13:41:28,736.736 INFO    ] ================================================
[2026-08-25 13:41:29,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:41:29
[2026-08-25 13:41:29,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:41:30,138.138 INFO    ] Initializing speech engine...
[2026-08-25 13:41:30,146.146 INFO    ] 2026-08-25 13:41:30
[2026-08-25 13:41:30,433.433 INFO    ] 2026-08-25 13:41:30
[2026-08-25 13:41:30,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:41:30,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:41:30,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:41:30,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:41:30,839.839 INFO    ] time= 25/08/2026 13:41:30
[2026-08-25 13:41:30,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:41:30,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:41:30,986.986 INFO    ] No existing commands found in stream
[2026-08-25 13:41:36,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:41:36,013.013 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 13:41:39,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:41:39,078.078 INFO    ] Checking for system updates...
[2026-08-25 13:41:39,116.116 INFO    ] 200
[2026-08-25 13:41:39,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:39,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:39,178.178 INFO    ] No update needed
[2026-08-25 13:41:39,180.180 INFO    ] Checking for camera pi updates...
[2026-08-25 13:41:39,214.214 INFO    ] 200
[2026-08-25 13:41:39,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:39,260.260 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:41:39,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:39,313.313 INFO    ] No camera update needed
[2026-08-25 13:41:39,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:41:39,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:41:39,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:41:39,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:41:41,370.370 INFO    ] ================================================
[2026-08-25 13:41:41,386.386 INFO    ] Launching Daemon at Tue Aug 25 13:41:41 IST 2026
[2026-08-25 13:41:41,397.397 INFO    ] ================================================
[2026-08-25 13:41:41,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:41:41
[2026-08-25 13:41:42,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:41:42,828.828 INFO    ] Initializing speech engine...
[2026-08-25 13:41:42,836.836 INFO    ] 2026-08-25 13:41:42
[2026-08-25 13:41:43,128.128 INFO    ] 2026-08-25 13:41:43
[2026-08-25 13:41:43,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:41:43,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:41:43,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:41:43,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:41:43,514.514 INFO    ] time= 25/08/2026 13:41:43
[2026-08-25 13:41:43,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:41:43,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:41:43,619.619 INFO    ] No existing commands found in stream
[2026-08-25 13:41:48,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:41:48,634.634 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 13:41:52,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:41:52,922.922 INFO    ] Checking for system updates...
[2026-08-25 13:41:52,958.958 INFO    ] 200
[2026-08-25 13:41:52,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:53,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:53,022.022 INFO    ] No update needed
[2026-08-25 13:41:53,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 13:41:53,063.063 INFO    ] 200
[2026-08-25 13:41:53,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:41:53,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:41:53,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:41:53,162.162 INFO    ] No camera update needed
[2026-08-25 13:41:53,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:41:53,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:41:53,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:41:53,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:41:55,219.219 INFO    ] ================================================
[2026-08-25 13:41:55,235.235 INFO    ] Launching Daemon at Tue Aug 25 13:41:55 IST 2026
[2026-08-25 13:41:55,246.246 INFO    ] ================================================
[2026-08-25 13:41:55,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:41:55
[2026-08-25 13:41:56,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:41:56,676.676 INFO    ] Initializing speech engine...
[2026-08-25 13:41:56,682.682 INFO    ] 2026-08-25 13:41:56
[2026-08-25 13:41:56,928.928 INFO    ] 2026-08-25 13:41:56
[2026-08-25 13:41:56,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:41:57,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:41:57,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:41:57,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:41:57,428.428 INFO    ] time= 25/08/2026 13:41:57
[2026-08-25 13:41:57,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:41:57,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:41:57,647.647 INFO    ] No existing commands found in stream
[2026-08-25 13:42:02,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:42:02,681.681 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 13:42:04,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:42:04,491.491 INFO    ] Checking for system updates...
[2026-08-25 13:42:04,531.531 INFO    ] 200
[2026-08-25 13:42:04,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:04,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:42:04,594.594 INFO    ] No update needed
[2026-08-25 13:42:04,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 13:42:04,631.631 INFO    ] 200
[2026-08-25 13:42:04,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:04,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:42:04,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:42:04,732.732 INFO    ] No camera update needed
[2026-08-25 13:42:04,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:42:04,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:42:04,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:42:04,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:42:06,793.793 INFO    ] ================================================
[2026-08-25 13:42:06,809.809 INFO    ] Launching Daemon at Tue Aug 25 13:42:06 IST 2026
[2026-08-25 13:42:06,819.819 INFO    ] ================================================
[2026-08-25 13:42:07,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:42:07
[2026-08-25 13:42:07,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:42:08,239.239 INFO    ] Initializing speech engine...
[2026-08-25 13:42:08,250.250 INFO    ] 2026-08-25 13:42:08
[2026-08-25 13:42:08,493.493 INFO    ] 2026-08-25 13:42:08
[2026-08-25 13:42:08,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:42:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:42:08,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:42:08,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:42:08,964.964 INFO    ] time= 25/08/2026 13:42:08
[2026-08-25 13:42:09,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:42:09,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:42:09,183.183 INFO    ] No existing commands found in stream
[2026-08-25 13:42:14,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:42:14,209.209 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 13:42:16,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:42:16,497.497 INFO    ] Checking for system updates...
[2026-08-25 13:42:16,532.532 INFO    ] 200
[2026-08-25 13:42:16,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:16,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:42:16,590.590 INFO    ] No update needed
[2026-08-25 13:42:16,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 13:42:16,626.626 INFO    ] 200
[2026-08-25 13:42:16,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:16,668.668 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:42:16,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:42:16,723.723 INFO    ] No camera update needed
[2026-08-25 13:42:16,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:42:16,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:42:16,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:42:16,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:42:18,778.778 INFO    ] ================================================
[2026-08-25 13:42:18,794.794 INFO    ] Launching Daemon at Tue Aug 25 13:42:18 IST 2026
[2026-08-25 13:42:18,805.805 INFO    ] ================================================
[2026-08-25 13:42:19,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:42:19
[2026-08-25 13:42:20,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:42:20,394.394 INFO    ] Initializing speech engine...
[2026-08-25 13:42:20,403.403 INFO    ] 2026-08-25 13:42:20
[2026-08-25 13:42:20,677.677 INFO    ] 2026-08-25 13:42:20
[2026-08-25 13:42:20,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:42:20,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:42:20,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:42:21,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:42:21,173.173 INFO    ] time= 25/08/2026 13:42:21
[2026-08-25 13:42:21,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:42:21,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:42:21,401.401 INFO    ] No existing commands found in stream
[2026-08-25 13:42:26,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:42:26,436.436 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 13:42:30,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:42:30,487.487 INFO    ] Checking for system updates...
[2026-08-25 13:42:30,528.528 INFO    ] 200
[2026-08-25 13:42:30,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:30,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:42:30,586.586 INFO    ] No update needed
[2026-08-25 13:42:30,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 13:42:30,621.621 INFO    ] 200
[2026-08-25 13:42:30,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:30,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:42:30,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:42:30,716.716 INFO    ] No camera update needed
[2026-08-25 13:42:30,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:42:30,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:42:30,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:42:30,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:42:32,773.773 INFO    ] ================================================
[2026-08-25 13:42:32,791.791 INFO    ] Launching Daemon at Tue Aug 25 13:42:32 IST 2026
[2026-08-25 13:42:32,802.802 INFO    ] ================================================
[2026-08-25 13:42:33,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:42:33
[2026-08-25 13:42:33,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:42:34,248.248 INFO    ] Initializing speech engine...
[2026-08-25 13:42:34,273.273 INFO    ] 2026-08-25 13:42:34
[2026-08-25 13:42:34,540.540 INFO    ] 2026-08-25 13:42:34
[2026-08-25 13:42:34,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:42:34,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:42:34,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:42:34,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:42:34,959.959 INFO    ] time= 25/08/2026 13:42:34
[2026-08-25 13:42:34,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:42:34,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:42:35,121.121 INFO    ] No existing commands found in stream
[2026-08-25 13:42:40,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:42:40,154.154 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 13:42:44,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:42:44,347.347 INFO    ] Checking for system updates...
[2026-08-25 13:42:44,386.386 INFO    ] 200
[2026-08-25 13:42:44,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:44,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:42:44,450.450 INFO    ] No update needed
[2026-08-25 13:42:44,453.453 INFO    ] Checking for camera pi updates...
[2026-08-25 13:42:44,490.490 INFO    ] 200
[2026-08-25 13:42:44,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:44,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:42:44,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:42:44,585.585 INFO    ] No camera update needed
[2026-08-25 13:42:44,588.588 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:42:44,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:42:44,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:42:44,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:42:46,643.643 INFO    ] ================================================
[2026-08-25 13:42:46,658.658 INFO    ] Launching Daemon at Tue Aug 25 13:42:46 IST 2026
[2026-08-25 13:42:46,669.669 INFO    ] ================================================
[2026-08-25 13:42:47,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:42:47
[2026-08-25 13:42:47,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:42:48,086.086 INFO    ] Initializing speech engine...
[2026-08-25 13:42:48,095.095 INFO    ] 2026-08-25 13:42:48
[2026-08-25 13:42:48,346.346 INFO    ] 2026-08-25 13:42:48
[2026-08-25 13:42:48,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:42:48,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:42:48,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:42:48,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:42:48,845.845 INFO    ] time= 25/08/2026 13:42:48
[2026-08-25 13:42:48,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:42:48,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:42:49,043.043 INFO    ] No existing commands found in stream
[2026-08-25 13:42:54,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:42:54,060.060 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 13:42:57,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:42:57,802.802 INFO    ] Checking for system updates...
[2026-08-25 13:42:57,838.838 INFO    ] 200
[2026-08-25 13:42:57,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:57,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:42:57,896.896 INFO    ] No update needed
[2026-08-25 13:42:57,899.899 INFO    ] Checking for camera pi updates...
[2026-08-25 13:42:57,932.932 INFO    ] 200
[2026-08-25 13:42:57,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:42:57,982.982 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:42:58,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:42:58,032.032 INFO    ] No camera update needed
[2026-08-25 13:42:58,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:42:58,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:42:58,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:42:58,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:43:00,090.090 INFO    ] ================================================
[2026-08-25 13:43:00,105.105 INFO    ] Launching Daemon at Tue Aug 25 13:43:00 IST 2026
[2026-08-25 13:43:00,116.116 INFO    ] ================================================
[2026-08-25 13:43:00,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:43:00
[2026-08-25 13:43:01,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:43:01,569.569 INFO    ] Initializing speech engine...
[2026-08-25 13:43:01,584.584 INFO    ] 2026-08-25 13:43:01
[2026-08-25 13:43:01,846.846 INFO    ] 2026-08-25 13:43:01
[2026-08-25 13:43:01,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:43:02,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:43:02,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:43:02,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:43:02,348.348 INFO    ] time= 25/08/2026 13:43:02
[2026-08-25 13:43:02,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:43:02,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:43:02,423.423 INFO    ] No existing commands found in stream
[2026-08-25 13:43:07,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:43:07,439.439 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 13:43:11,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:43:11,264.264 INFO    ] Checking for system updates...
[2026-08-25 13:43:11,303.303 INFO    ] 200
[2026-08-25 13:43:11,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:11,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:43:11,361.361 INFO    ] No update needed
[2026-08-25 13:43:11,364.364 INFO    ] Checking for camera pi updates...
[2026-08-25 13:43:11,396.396 INFO    ] 200
[2026-08-25 13:43:11,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:11,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:43:11,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:43:11,494.494 INFO    ] No camera update needed
[2026-08-25 13:43:11,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:43:11,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:43:11,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:43:11,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:43:13,548.548 INFO    ] ================================================
[2026-08-25 13:43:13,563.563 INFO    ] Launching Daemon at Tue Aug 25 13:43:13 IST 2026
[2026-08-25 13:43:13,574.574 INFO    ] ================================================
[2026-08-25 13:43:14,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:43:14
[2026-08-25 13:43:14,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:43:14,994.994 INFO    ] Initializing speech engine...
[2026-08-25 13:43:15,003.003 INFO    ] 2026-08-25 13:43:14
[2026-08-25 13:43:15,296.296 INFO    ] 2026-08-25 13:43:15
[2026-08-25 13:43:15,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:43:15,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:43:15,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:43:15,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:43:15,810.810 INFO    ] time= 25/08/2026 13:43:15
[2026-08-25 13:43:15,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:43:15,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:43:16,012.012 INFO    ] No existing commands found in stream
[2026-08-25 13:43:21,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:43:21,046.046 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 13:43:24,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:43:24,348.348 INFO    ] Checking for system updates...
[2026-08-25 13:43:24,384.384 INFO    ] 200
[2026-08-25 13:43:24,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:24,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:43:24,442.442 INFO    ] No update needed
[2026-08-25 13:43:24,444.444 INFO    ] Checking for camera pi updates...
[2026-08-25 13:43:24,477.477 INFO    ] 200
[2026-08-25 13:43:24,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:24,524.524 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:43:24,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:43:24,589.589 INFO    ] No camera update needed
[2026-08-25 13:43:24,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:43:24,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:43:24,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:43:24,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:43:26,643.643 INFO    ] ================================================
[2026-08-25 13:43:26,659.659 INFO    ] Launching Daemon at Tue Aug 25 13:43:26 IST 2026
[2026-08-25 13:43:26,669.669 INFO    ] ================================================
[2026-08-25 13:43:27,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:43:27
[2026-08-25 13:43:27,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:43:28,255.255 INFO    ] Initializing speech engine...
[2026-08-25 13:43:28,266.266 INFO    ] 2026-08-25 13:43:28
[2026-08-25 13:43:28,573.573 INFO    ] 2026-08-25 13:43:28
[2026-08-25 13:43:28,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:43:28,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:43:28,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:43:29,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:43:29,092.092 INFO    ] time= 25/08/2026 13:43:29
[2026-08-25 13:43:29,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:43:29,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:43:29,273.273 INFO    ] No existing commands found in stream
[2026-08-25 13:43:34,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:43:34,302.302 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 13:43:38,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:43:38,408.408 INFO    ] Checking for system updates...
[2026-08-25 13:43:38,444.444 INFO    ] 200
[2026-08-25 13:43:38,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:38,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:43:38,506.506 INFO    ] No update needed
[2026-08-25 13:43:38,509.509 INFO    ] Checking for camera pi updates...
[2026-08-25 13:43:38,543.543 INFO    ] 200
[2026-08-25 13:43:38,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:38,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:43:38,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:43:38,738.738 INFO    ] No camera update needed
[2026-08-25 13:43:38,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:43:38,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:43:38,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:43:38,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:43:40,792.792 INFO    ] ================================================
[2026-08-25 13:43:40,807.807 INFO    ] Launching Daemon at Tue Aug 25 13:43:40 IST 2026
[2026-08-25 13:43:40,817.817 INFO    ] ================================================
[2026-08-25 13:43:41,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:43:41
[2026-08-25 13:43:41,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:43:42,243.243 INFO    ] Initializing speech engine...
[2026-08-25 13:43:42,268.268 INFO    ] 2026-08-25 13:43:42
[2026-08-25 13:43:42,540.540 INFO    ] 2026-08-25 13:43:42
[2026-08-25 13:43:42,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:43:42,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:43:42,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:43:42,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:43:42,946.946 INFO    ] time= 25/08/2026 13:43:42
[2026-08-25 13:43:42,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:43:42,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:43:43,094.094 INFO    ] No existing commands found in stream
[2026-08-25 13:43:48,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:43:48,127.127 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 13:43:49,745.745 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:43:49,748.748 INFO    ] Checking for system updates...
[2026-08-25 13:43:49,783.783 INFO    ] 200
[2026-08-25 13:43:49,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:49,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:43:49,846.846 INFO    ] No update needed
[2026-08-25 13:43:49,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 13:43:49,882.882 INFO    ] 200
[2026-08-25 13:43:49,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:43:49,933.933 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:43:49,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:43:49,992.992 INFO    ] No camera update needed
[2026-08-25 13:43:49,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:43:49,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:43:50,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:43:50,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:43:52,046.046 INFO    ] ================================================
[2026-08-25 13:43:52,061.061 INFO    ] Launching Daemon at Tue Aug 25 13:43:52 IST 2026
[2026-08-25 13:43:52,071.071 INFO    ] ================================================
[2026-08-25 13:43:52,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:43:52
[2026-08-25 13:43:53,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:43:53,519.519 INFO    ] Initializing speech engine...
[2026-08-25 13:43:53,529.529 INFO    ] 2026-08-25 13:43:53
[2026-08-25 13:43:53,776.776 INFO    ] 2026-08-25 13:43:53
[2026-08-25 13:43:53,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:43:54,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:43:54,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:43:54,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:43:54,275.275 INFO    ] time= 25/08/2026 13:43:54
[2026-08-25 13:43:54,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:43:54,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:43:54,481.481 INFO    ] No existing commands found in stream
[2026-08-25 13:43:59,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:43:59,498.498 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 13:44:01,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:44:01,426.426 INFO    ] Checking for system updates...
[2026-08-25 13:44:01,461.461 INFO    ] 200
[2026-08-25 13:44:01,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:01,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:01,520.520 INFO    ] No update needed
[2026-08-25 13:44:01,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 13:44:01,557.557 INFO    ] 200
[2026-08-25 13:44:01,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:01,604.604 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:44:01,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:01,710.710 INFO    ] No camera update needed
[2026-08-25 13:44:01,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:44:01,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:44:01,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:44:01,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:44:03,770.770 INFO    ] ================================================
[2026-08-25 13:44:03,785.785 INFO    ] Launching Daemon at Tue Aug 25 13:44:03 IST 2026
[2026-08-25 13:44:03,795.795 INFO    ] ================================================
[2026-08-25 13:44:04,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:44:04
[2026-08-25 13:44:04,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:44:05,238.238 INFO    ] Initializing speech engine...
[2026-08-25 13:44:05,263.263 INFO    ] 2026-08-25 13:44:05
[2026-08-25 13:44:05,532.532 INFO    ] 2026-08-25 13:44:05
[2026-08-25 13:44:05,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:44:05,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:44:05,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:44:05,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:44:05,927.927 INFO    ] time= 25/08/2026 13:44:05
[2026-08-25 13:44:05,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:44:05,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:44:06,109.109 INFO    ] No existing commands found in stream
[2026-08-25 13:44:11,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:44:11,138.138 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 13:44:14,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:44:14,616.616 INFO    ] Checking for system updates...
[2026-08-25 13:44:14,654.654 INFO    ] 200
[2026-08-25 13:44:14,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:14,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:14,712.712 INFO    ] No update needed
[2026-08-25 13:44:14,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 13:44:14,755.755 INFO    ] 200
[2026-08-25 13:44:14,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:14,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:44:14,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:14,852.852 INFO    ] No camera update needed
[2026-08-25 13:44:14,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:44:14,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:44:14,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:44:14,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:44:16,908.908 INFO    ] ================================================
[2026-08-25 13:44:16,923.923 INFO    ] Launching Daemon at Tue Aug 25 13:44:16 IST 2026
[2026-08-25 13:44:16,934.934 INFO    ] ================================================
[2026-08-25 13:44:17,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:44:17
[2026-08-25 13:44:18,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:44:18,386.386 INFO    ] Initializing speech engine...
[2026-08-25 13:44:18,395.395 INFO    ] 2026-08-25 13:44:18
[2026-08-25 13:44:18,656.656 INFO    ] 2026-08-25 13:44:18
[2026-08-25 13:44:18,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:44:18,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:44:18,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:44:19,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:44:19,117.117 INFO    ] time= 25/08/2026 13:44:19
[2026-08-25 13:44:19,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:44:19,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:44:19,330.330 INFO    ] No existing commands found in stream
[2026-08-25 13:44:24,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:44:24,358.358 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 13:44:25,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:44:25,518.518 INFO    ] Checking for system updates...
[2026-08-25 13:44:25,556.556 INFO    ] 200
[2026-08-25 13:44:25,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:25,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:44:25,616.616 INFO    ] No update needed
[2026-08-25 13:44:25,618.618 INFO    ] Checking for camera pi updates...
[2026-08-25 13:44:25,658.658 INFO    ] 200
[2026-08-25 13:44:25,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:25,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:44:25,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:44:25,755.755 INFO    ] No camera update needed
[2026-08-25 13:44:25,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:44:25,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:44:25,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:44:25,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:44:27,817.817 INFO    ] ================================================
[2026-08-25 13:44:27,831.831 INFO    ] Launching Daemon at Tue Aug 25 13:44:27 IST 2026
[2026-08-25 13:44:27,842.842 INFO    ] ================================================
[2026-08-25 13:44:28,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:44:28
[2026-08-25 13:44:28,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:44:29,261.261 INFO    ] Initializing speech engine...
[2026-08-25 13:44:29,269.269 INFO    ] 2026-08-25 13:44:29
[2026-08-25 13:44:29,527.527 INFO    ] 2026-08-25 13:44:29
[2026-08-25 13:44:29,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:44:29,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:44:29,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:44:29,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:44:29,985.985 INFO    ] time= 25/08/2026 13:44:29
[2026-08-25 13:44:30,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:44:30,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:44:30,192.192 INFO    ] No existing commands found in stream
[2026-08-25 13:44:35,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:44:35,222.222 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 13:44:37,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:44:37,919.919 INFO    ] Checking for system updates...
[2026-08-25 13:44:37,957.957 INFO    ] 200
[2026-08-25 13:44:37,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:38,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:38,014.014 INFO    ] No update needed
[2026-08-25 13:44:38,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 13:44:38,050.050 INFO    ] 200
[2026-08-25 13:44:38,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:38,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:44:38,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:38,147.147 INFO    ] No camera update needed
[2026-08-25 13:44:38,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:44:38,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:44:38,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:44:38,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:44:40,201.201 INFO    ] ================================================
[2026-08-25 13:44:40,216.216 INFO    ] Launching Daemon at Tue Aug 25 13:44:40 IST 2026
[2026-08-25 13:44:40,226.226 INFO    ] ================================================
[2026-08-25 13:44:40,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:44:40
[2026-08-25 13:44:41,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:44:41,674.674 INFO    ] Initializing speech engine...
[2026-08-25 13:44:41,684.684 INFO    ] 2026-08-25 13:44:41
[2026-08-25 13:44:41,945.945 INFO    ] 2026-08-25 13:44:41
[2026-08-25 13:44:42,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:44:42,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:44:42,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:44:42,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:44:42,396.396 INFO    ] time= 25/08/2026 13:44:42
[2026-08-25 13:44:42,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:44:42,492.492 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:44:42,639.639 INFO    ] No existing commands found in stream
[2026-08-25 13:44:47,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:44:47,654.654 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 13:44:48,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:44:48,678.678 INFO    ] Checking for system updates...
[2026-08-25 13:44:48,716.716 INFO    ] 200
[2026-08-25 13:44:48,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:48,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:48,777.777 INFO    ] No update needed
[2026-08-25 13:44:48,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 13:44:48,813.813 INFO    ] 200
[2026-08-25 13:44:48,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:48,865.865 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:44:48,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:44:48,927.927 INFO    ] No camera update needed
[2026-08-25 13:44:48,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:44:48,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:44:48,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:44:48,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:44:50,984.984 INFO    ] ================================================
[2026-08-25 13:44:51,998.998 INFO    ] Launching Daemon at Tue Aug 25 13:44:50 IST 2026
[2026-08-25 13:44:51,009.009 INFO    ] ================================================
[2026-08-25 13:44:51,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:44:51
[2026-08-25 13:44:52,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:44:52,416.416 INFO    ] Initializing speech engine...
[2026-08-25 13:44:52,429.429 INFO    ] 2026-08-25 13:44:52
[2026-08-25 13:44:52,705.705 INFO    ] 2026-08-25 13:44:52
[2026-08-25 13:44:52,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:44:52,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:44:52,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:44:53,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:44:53,105.105 INFO    ] time= 25/08/2026 13:44:53
[2026-08-25 13:44:53,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:44:53,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:44:53,189.189 INFO    ] No existing commands found in stream
[2026-08-25 13:44:58,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:44:58,222.222 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 13:44:58,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:44:58,739.739 INFO    ] Checking for system updates...
[2026-08-25 13:44:58,774.774 INFO    ] 200
[2026-08-25 13:44:58,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:58,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:44:58,835.835 INFO    ] No update needed
[2026-08-25 13:44:58,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 13:44:58,871.871 INFO    ] 200
[2026-08-25 13:44:58,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:44:58,916.916 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:44:58,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:44:58,962.962 INFO    ] No camera update needed
[2026-08-25 13:44:58,964.964 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:44:58,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:44:58,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:44:58,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:45:01,017.017 INFO    ] ================================================
[2026-08-25 13:45:01,032.032 INFO    ] Launching Daemon at Tue Aug 25 13:45:01 IST 2026
[2026-08-25 13:45:01,043.043 INFO    ] ================================================
[2026-08-25 13:45:01,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:45:01
[2026-08-25 13:45:02,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:45:03,058.058 INFO    ] Initializing speech engine...
[2026-08-25 13:45:03,063.063 INFO    ] 2026-08-25 13:45:03
[2026-08-25 13:45:03,368.368 INFO    ] 2026-08-25 13:45:03
[2026-08-25 13:45:03,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:45:03,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:45:03,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:45:03,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:45:03,778.778 INFO    ] time= 25/08/2026 13:45:03
[2026-08-25 13:45:03,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:45:03,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:45:03,920.920 INFO    ] No existing commands found in stream
[2026-08-25 13:45:08,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:45:08,953.953 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 13:45:11,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:45:11,978.978 INFO    ] Checking for system updates...
[2026-08-25 13:45:12,017.017 INFO    ] 200
[2026-08-25 13:45:12,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:12,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:45:12,074.074 INFO    ] No update needed
[2026-08-25 13:45:12,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 13:45:12,112.112 INFO    ] 200
[2026-08-25 13:45:12,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:12,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:45:12,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:45:12,209.209 INFO    ] No camera update needed
[2026-08-25 13:45:12,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:45:12,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:45:12,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:45:12,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:45:14,265.265 INFO    ] ================================================
[2026-08-25 13:45:14,280.280 INFO    ] Launching Daemon at Tue Aug 25 13:45:14 IST 2026
[2026-08-25 13:45:14,290.290 INFO    ] ================================================
[2026-08-25 13:45:14,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:45:14
[2026-08-25 13:45:15,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:45:15,714.714 INFO    ] Initializing speech engine...
[2026-08-25 13:45:15,723.723 INFO    ] 2026-08-25 13:45:15
[2026-08-25 13:45:15,992.992 INFO    ] 2026-08-25 13:45:15
[2026-08-25 13:45:16,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:45:16,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:45:16,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:45:16,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:45:16,453.453 INFO    ] time= 25/08/2026 13:45:16
[2026-08-25 13:45:16,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:45:16,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:45:16,677.677 INFO    ] No existing commands found in stream
[2026-08-25 13:45:21,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:45:21,692.692 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 13:45:25,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:45:25,909.909 INFO    ] Checking for system updates...
[2026-08-25 13:45:25,947.947 INFO    ] 200
[2026-08-25 13:45:25,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:26,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:45:26,003.003 INFO    ] No update needed
[2026-08-25 13:45:26,006.006 INFO    ] Checking for camera pi updates...
[2026-08-25 13:45:26,042.042 INFO    ] 200
[2026-08-25 13:45:26,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:26,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:45:26,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:45:26,141.141 INFO    ] No camera update needed
[2026-08-25 13:45:26,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:45:26,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:45:26,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:45:26,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:45:28,195.195 INFO    ] ================================================
[2026-08-25 13:45:28,210.210 INFO    ] Launching Daemon at Tue Aug 25 13:45:28 IST 2026
[2026-08-25 13:45:28,220.220 INFO    ] ================================================
[2026-08-25 13:45:28,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:45:28
[2026-08-25 13:45:29,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:45:29,635.635 INFO    ] Initializing speech engine...
[2026-08-25 13:45:29,648.648 INFO    ] 2026-08-25 13:45:29
[2026-08-25 13:45:29,895.895 INFO    ] 2026-08-25 13:45:29
[2026-08-25 13:45:29,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:45:30,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:45:30,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:45:30,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:45:30,369.369 INFO    ] time= 25/08/2026 13:45:30
[2026-08-25 13:45:30,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:45:30,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:45:30,597.597 INFO    ] No existing commands found in stream
[2026-08-25 13:45:35,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:45:35,617.617 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 13:45:38,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:45:38,856.856 INFO    ] Checking for system updates...
[2026-08-25 13:45:38,896.896 INFO    ] 200
[2026-08-25 13:45:38,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:38,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:45:38,960.960 INFO    ] No update needed
[2026-08-25 13:45:38,962.962 INFO    ] Checking for camera pi updates...
[2026-08-25 13:45:38,996.996 INFO    ] 200
[2026-08-25 13:45:38,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:39,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:45:39,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:45:39,092.092 INFO    ] No camera update needed
[2026-08-25 13:45:39,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:45:39,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:45:39,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:45:39,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:45:41,147.147 INFO    ] ================================================
[2026-08-25 13:45:41,162.162 INFO    ] Launching Daemon at Tue Aug 25 13:45:41 IST 2026
[2026-08-25 13:45:41,174.174 INFO    ] ================================================
[2026-08-25 13:45:41,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:45:41
[2026-08-25 13:45:42,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:45:42,792.792 INFO    ] Initializing speech engine...
[2026-08-25 13:45:42,812.812 INFO    ] 2026-08-25 13:45:42
[2026-08-25 13:45:43,084.084 INFO    ] 2026-08-25 13:45:43
[2026-08-25 13:45:43,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:45:43,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:45:43,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:45:43,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:45:43,510.510 INFO    ] time= 25/08/2026 13:45:43
[2026-08-25 13:45:43,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:45:43,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:45:43,596.596 INFO    ] No existing commands found in stream
[2026-08-25 13:45:48,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:45:48,620.620 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 13:45:52,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:45:52,544.544 INFO    ] Checking for system updates...
[2026-08-25 13:45:52,580.580 INFO    ] 200
[2026-08-25 13:45:52,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:52,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:45:52,644.644 INFO    ] No update needed
[2026-08-25 13:45:52,647.647 INFO    ] Checking for camera pi updates...
[2026-08-25 13:45:52,681.681 INFO    ] 200
[2026-08-25 13:45:52,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:45:52,724.724 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:45:52,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:45:52,885.885 INFO    ] No camera update needed
[2026-08-25 13:45:52,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:45:52,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:45:52,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:45:52,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:45:54,945.945 INFO    ] ================================================
[2026-08-25 13:45:54,960.960 INFO    ] Launching Daemon at Tue Aug 25 13:45:54 IST 2026
[2026-08-25 13:45:54,971.971 INFO    ] ================================================
[2026-08-25 13:45:55,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:45:55
[2026-08-25 13:45:56,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:45:56,397.397 INFO    ] Initializing speech engine...
[2026-08-25 13:45:56,411.411 INFO    ] 2026-08-25 13:45:56
[2026-08-25 13:45:56,696.696 INFO    ] 2026-08-25 13:45:56
[2026-08-25 13:45:56,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:45:56,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:45:56,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:45:57,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:45:57,109.109 INFO    ] time= 25/08/2026 13:45:57
[2026-08-25 13:45:57,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:45:57,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:45:57,253.253 INFO    ] No existing commands found in stream
[2026-08-25 13:46:02,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:46:02,287.287 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 13:46:06,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:46:06,426.426 INFO    ] Checking for system updates...
[2026-08-25 13:46:06,461.461 INFO    ] 200
[2026-08-25 13:46:06,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:06,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:46:06,525.525 INFO    ] No update needed
[2026-08-25 13:46:06,527.527 INFO    ] Checking for camera pi updates...
[2026-08-25 13:46:06,564.564 INFO    ] 200
[2026-08-25 13:46:06,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:06,606.606 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:46:06,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:46:06,662.662 INFO    ] No camera update needed
[2026-08-25 13:46:06,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:46:06,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:46:06,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:46:06,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:46:08,717.717 INFO    ] ================================================
[2026-08-25 13:46:08,733.733 INFO    ] Launching Daemon at Tue Aug 25 13:46:08 IST 2026
[2026-08-25 13:46:08,745.745 INFO    ] ================================================
[2026-08-25 13:46:09,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:46:09
[2026-08-25 13:46:10,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:46:10,401.401 INFO    ] Initializing speech engine...
[2026-08-25 13:46:10,412.412 INFO    ] 2026-08-25 13:46:10
[2026-08-25 13:46:10,690.690 INFO    ] 2026-08-25 13:46:10
[2026-08-25 13:46:10,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:46:10,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:46:10,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:46:11,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:46:11,227.227 INFO    ] time= 25/08/2026 13:46:11
[2026-08-25 13:46:11,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:46:11,255.255 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:46:11,385.385 INFO    ] No existing commands found in stream
[2026-08-25 13:46:16,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:46:16,427.427 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 13:46:20,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:46:20,494.494 INFO    ] Checking for system updates...
[2026-08-25 13:46:20,531.531 INFO    ] 200
[2026-08-25 13:46:20,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:20,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:46:20,592.592 INFO    ] No update needed
[2026-08-25 13:46:20,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 13:46:20,633.633 INFO    ] 200
[2026-08-25 13:46:20,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:20,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:46:20,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:46:20,756.756 INFO    ] No camera update needed
[2026-08-25 13:46:20,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:46:20,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:46:20,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:46:20,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:46:22,814.814 INFO    ] ================================================
[2026-08-25 13:46:22,830.830 INFO    ] Launching Daemon at Tue Aug 25 13:46:22 IST 2026
[2026-08-25 13:46:22,841.841 INFO    ] ================================================
[2026-08-25 13:46:23,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:46:23
[2026-08-25 13:46:24,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:46:24,288.288 INFO    ] Initializing speech engine...
[2026-08-25 13:46:24,293.293 INFO    ] 2026-08-25 13:46:24
[2026-08-25 13:46:24,555.555 INFO    ] 2026-08-25 13:46:24
[2026-08-25 13:46:24,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:46:24,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:46:24,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:46:24,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:46:25,049.049 INFO    ] time= 25/08/2026 13:46:24
[2026-08-25 13:46:25,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:46:25,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:46:25,140.140 INFO    ] No existing commands found in stream
[2026-08-25 13:46:30,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:46:30,153.153 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 13:46:33,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:46:33,373.373 INFO    ] Checking for system updates...
[2026-08-25 13:46:33,409.409 INFO    ] 200
[2026-08-25 13:46:33,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:33,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:46:33,477.477 INFO    ] No update needed
[2026-08-25 13:46:33,479.479 INFO    ] Checking for camera pi updates...
[2026-08-25 13:46:33,514.514 INFO    ] 200
[2026-08-25 13:46:33,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:33,558.558 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:46:33,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:46:33,642.642 INFO    ] No camera update needed
[2026-08-25 13:46:33,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:46:33,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:46:33,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:46:33,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:46:35,702.702 INFO    ] ================================================
[2026-08-25 13:46:35,717.717 INFO    ] Launching Daemon at Tue Aug 25 13:46:35 IST 2026
[2026-08-25 13:46:35,728.728 INFO    ] ================================================
[2026-08-25 13:46:36,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:46:36
[2026-08-25 13:46:37,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:46:37,357.357 INFO    ] Initializing speech engine...
[2026-08-25 13:46:37,367.367 INFO    ] 2026-08-25 13:46:37
[2026-08-25 13:46:37,683.683 INFO    ] 2026-08-25 13:46:37
[2026-08-25 13:46:37,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:46:37,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:46:37,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:46:38,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:46:38,190.190 INFO    ] time= 25/08/2026 13:46:38
[2026-08-25 13:46:38,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:46:38,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:46:38,347.347 INFO    ] No existing commands found in stream
[2026-08-25 13:46:43,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:46:43,365.365 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 13:46:45,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:46:45,087.087 INFO    ] Checking for system updates...
[2026-08-25 13:46:45,131.131 INFO    ] 200
[2026-08-25 13:46:45,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:45,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:46:45,201.201 INFO    ] No update needed
[2026-08-25 13:46:45,203.203 INFO    ] Checking for camera pi updates...
[2026-08-25 13:46:45,241.241 INFO    ] 200
[2026-08-25 13:46:45,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:45,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:46:45,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:46:45,351.351 INFO    ] No camera update needed
[2026-08-25 13:46:45,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:46:45,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:46:45,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:46:45,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:46:47,408.408 INFO    ] ================================================
[2026-08-25 13:46:47,424.424 INFO    ] Launching Daemon at Tue Aug 25 13:46:47 IST 2026
[2026-08-25 13:46:47,436.436 INFO    ] ================================================
[2026-08-25 13:46:48,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:46:48
[2026-08-25 13:46:48,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:46:48,882.882 INFO    ] Initializing speech engine...
[2026-08-25 13:46:48,890.890 INFO    ] 2026-08-25 13:46:48
[2026-08-25 13:46:49,145.145 INFO    ] 2026-08-25 13:46:49
[2026-08-25 13:46:49,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:46:49,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:46:49,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:46:49,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:46:49,670.670 INFO    ] time= 25/08/2026 13:46:49
[2026-08-25 13:46:49,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:46:49,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:46:49,923.923 INFO    ] No existing commands found in stream
[2026-08-25 13:46:54,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:46:54,941.941 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 13:46:58,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:46:58,572.572 INFO    ] Checking for system updates...
[2026-08-25 13:46:58,609.609 INFO    ] 200
[2026-08-25 13:46:58,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:58,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:46:58,670.670 INFO    ] No update needed
[2026-08-25 13:46:58,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 13:46:58,706.706 INFO    ] 200
[2026-08-25 13:46:58,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:46:58,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:46:58,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:46:58,812.812 INFO    ] No camera update needed
[2026-08-25 13:46:58,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:46:58,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:46:58,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:46:58,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:47:00,869.869 INFO    ] ================================================
[2026-08-25 13:47:00,885.885 INFO    ] Launching Daemon at Tue Aug 25 13:47:00 IST 2026
[2026-08-25 13:47:00,896.896 INFO    ] ================================================
[2026-08-25 13:47:01,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:47:01
[2026-08-25 13:47:02,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:47:02,568.568 INFO    ] Initializing speech engine...
[2026-08-25 13:47:02,584.584 INFO    ] 2026-08-25 13:47:02
[2026-08-25 13:47:02,883.883 INFO    ] 2026-08-25 13:47:02
[2026-08-25 13:47:02,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:47:03,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:47:03,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:47:03,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:47:03,348.348 INFO    ] time= 25/08/2026 13:47:03
[2026-08-25 13:47:03,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:47:03,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:47:03,600.600 INFO    ] No existing commands found in stream
[2026-08-25 13:47:08,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:47:08,628.628 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 13:47:12,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:47:12,890.890 INFO    ] Checking for system updates...
[2026-08-25 13:47:12,929.929 INFO    ] 200
[2026-08-25 13:47:12,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:12,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:12,987.987 INFO    ] No update needed
[2026-08-25 13:47:12,989.989 INFO    ] Checking for camera pi updates...
[2026-08-25 13:47:13,027.027 INFO    ] 200
[2026-08-25 13:47:13,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:13,070.070 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:47:13,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:13,128.128 INFO    ] No camera update needed
[2026-08-25 13:47:13,130.130 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:47:13,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:47:13,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:47:13,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:47:15,182.182 INFO    ] ================================================
[2026-08-25 13:47:15,198.198 INFO    ] Launching Daemon at Tue Aug 25 13:47:15 IST 2026
[2026-08-25 13:47:15,210.210 INFO    ] ================================================
[2026-08-25 13:47:15,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:47:15
[2026-08-25 13:47:16,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:47:16,619.619 INFO    ] Initializing speech engine...
[2026-08-25 13:47:16,640.640 INFO    ] 2026-08-25 13:47:16
[2026-08-25 13:47:16,917.917 INFO    ] 2026-08-25 13:47:16
[2026-08-25 13:47:16,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:47:17,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:47:17,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:47:17,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:47:17,311.311 INFO    ] time= 25/08/2026 13:47:17
[2026-08-25 13:47:17,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:47:17,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:47:17,477.477 INFO    ] No existing commands found in stream
[2026-08-25 13:47:22,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:47:22,510.510 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 13:47:26,670.670 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:47:26,673.673 INFO    ] Checking for system updates...
[2026-08-25 13:47:26,709.709 INFO    ] 200
[2026-08-25 13:47:26,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:26,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:26,772.772 INFO    ] No update needed
[2026-08-25 13:47:26,774.774 INFO    ] Checking for camera pi updates...
[2026-08-25 13:47:26,807.807 INFO    ] 200
[2026-08-25 13:47:26,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:26,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:47:26,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:26,912.912 INFO    ] No camera update needed
[2026-08-25 13:47:26,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:47:26,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:47:26,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:47:26,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:47:28,965.965 INFO    ] ================================================
[2026-08-25 13:47:28,981.981 INFO    ] Launching Daemon at Tue Aug 25 13:47:28 IST 2026
[2026-08-25 13:47:28,993.993 INFO    ] ================================================
[2026-08-25 13:47:29,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:47:29
[2026-08-25 13:47:30,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:47:30,410.410 INFO    ] Initializing speech engine...
[2026-08-25 13:47:30,431.431 INFO    ] 2026-08-25 13:47:30
[2026-08-25 13:47:30,705.705 INFO    ] 2026-08-25 13:47:30
[2026-08-25 13:47:30,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:47:30,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:47:30,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:47:31,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:47:31,099.099 INFO    ] time= 25/08/2026 13:47:31
[2026-08-25 13:47:31,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:47:31,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:47:31,278.278 INFO    ] No existing commands found in stream
[2026-08-25 13:47:36,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:47:36,306.306 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 13:47:37,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:47:37,274.274 INFO    ] Checking for system updates...
[2026-08-25 13:47:37,310.310 INFO    ] 200
[2026-08-25 13:47:37,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:37,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:37,371.371 INFO    ] No update needed
[2026-08-25 13:47:37,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 13:47:37,410.410 INFO    ] 200
[2026-08-25 13:47:37,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:37,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:47:37,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:37,520.520 INFO    ] No camera update needed
[2026-08-25 13:47:37,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:47:37,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:47:37,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:47:37,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:47:39,574.574 INFO    ] ================================================
[2026-08-25 13:47:39,590.590 INFO    ] Launching Daemon at Tue Aug 25 13:47:39 IST 2026
[2026-08-25 13:47:39,602.602 INFO    ] ================================================
[2026-08-25 13:47:40,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:47:40
[2026-08-25 13:47:40,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:47:41,006.006 INFO    ] Initializing speech engine...
[2026-08-25 13:47:41,015.015 INFO    ] 2026-08-25 13:47:41
[2026-08-25 13:47:41,306.306 INFO    ] 2026-08-25 13:47:41
[2026-08-25 13:47:41,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:47:41,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:47:41,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:47:41,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:47:41,666.666 INFO    ] time= 25/08/2026 13:47:41
[2026-08-25 13:47:41,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:47:41,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:47:41,781.781 INFO    ] No existing commands found in stream
[2026-08-25 13:47:46,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:47:46,819.819 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 13:47:51,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:47:51,193.193 INFO    ] Checking for system updates...
[2026-08-25 13:47:51,228.228 INFO    ] 200
[2026-08-25 13:47:51,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:51,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:51,295.295 INFO    ] No update needed
[2026-08-25 13:47:51,298.298 INFO    ] Checking for camera pi updates...
[2026-08-25 13:47:51,331.331 INFO    ] 200
[2026-08-25 13:47:51,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:47:51,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:47:51,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:47:51,435.435 INFO    ] No camera update needed
[2026-08-25 13:47:51,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:47:51,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:47:51,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:47:51,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:47:53,489.489 INFO    ] ================================================
[2026-08-25 13:47:53,505.505 INFO    ] Launching Daemon at Tue Aug 25 13:47:53 IST 2026
[2026-08-25 13:47:53,516.516 INFO    ] ================================================
[2026-08-25 13:47:54,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:47:54
[2026-08-25 13:47:54,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:47:55,045.045 INFO    ] Initializing speech engine...
[2026-08-25 13:47:55,050.050 INFO    ] 2026-08-25 13:47:55
[2026-08-25 13:47:55,311.311 INFO    ] 2026-08-25 13:47:55
[2026-08-25 13:47:55,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:47:55,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:47:55,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:47:55,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:47:55,795.795 INFO    ] time= 25/08/2026 13:47:55
[2026-08-25 13:47:55,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:47:55,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:47:55,984.984 INFO    ] No existing commands found in stream
[2026-08-25 13:48:01,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:48:01,017.017 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 13:48:03,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:48:03,362.362 INFO    ] Checking for system updates...
[2026-08-25 13:48:03,398.398 INFO    ] 200
[2026-08-25 13:48:03,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:03,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:48:03,462.462 INFO    ] No update needed
[2026-08-25 13:48:03,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 13:48:03,502.502 INFO    ] 200
[2026-08-25 13:48:03,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:03,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:48:03,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:48:03,605.605 INFO    ] No camera update needed
[2026-08-25 13:48:03,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:48:03,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:48:03,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:48:03,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:48:05,662.662 INFO    ] ================================================
[2026-08-25 13:48:05,678.678 INFO    ] Launching Daemon at Tue Aug 25 13:48:05 IST 2026
[2026-08-25 13:48:05,689.689 INFO    ] ================================================
[2026-08-25 13:48:06,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:48:06
[2026-08-25 13:48:06,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:48:07,118.118 INFO    ] Initializing speech engine...
[2026-08-25 13:48:07,137.137 INFO    ] 2026-08-25 13:48:07
[2026-08-25 13:48:07,397.397 INFO    ] 2026-08-25 13:48:07
[2026-08-25 13:48:07,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:48:07,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:48:07,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:48:07,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:48:07,907.907 INFO    ] time= 25/08/2026 13:48:07
[2026-08-25 13:48:07,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:48:07,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:48:08,114.114 INFO    ] No existing commands found in stream
[2026-08-25 13:48:13,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:48:13,137.137 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 13:48:15,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:48:15,493.493 INFO    ] Checking for system updates...
[2026-08-25 13:48:15,529.529 INFO    ] 200
[2026-08-25 13:48:15,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:15,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:15,592.592 INFO    ] No update needed
[2026-08-25 13:48:15,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 13:48:15,631.631 INFO    ] 200
[2026-08-25 13:48:15,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:15,674.674 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:48:15,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:15,723.723 INFO    ] No camera update needed
[2026-08-25 13:48:15,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:48:15,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:48:15,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:48:15,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:48:17,779.779 INFO    ] ================================================
[2026-08-25 13:48:17,794.794 INFO    ] Launching Daemon at Tue Aug 25 13:48:17 IST 2026
[2026-08-25 13:48:17,806.806 INFO    ] ================================================
[2026-08-25 13:48:18,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:48:18
[2026-08-25 13:48:19,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:48:19,463.463 INFO    ] Initializing speech engine...
[2026-08-25 13:48:19,469.469 INFO    ] 2026-08-25 13:48:19
[2026-08-25 13:48:19,734.734 INFO    ] 2026-08-25 13:48:19
[2026-08-25 13:48:19,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:48:19,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:48:19,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:48:20,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:48:20,092.092 INFO    ] time= 25/08/2026 13:48:20
[2026-08-25 13:48:20,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:48:20,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:48:20,247.247 INFO    ] No existing commands found in stream
[2026-08-25 13:48:25,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:48:25,260.260 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 13:48:28,591.591 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:48:28,593.593 INFO    ] Checking for system updates...
[2026-08-25 13:48:28,635.635 INFO    ] 200
[2026-08-25 13:48:28,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:28,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:28,695.695 INFO    ] No update needed
[2026-08-25 13:48:28,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 13:48:28,732.732 INFO    ] 200
[2026-08-25 13:48:28,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:28,782.782 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:48:28,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:28,831.831 INFO    ] No camera update needed
[2026-08-25 13:48:28,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:48:28,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:48:28,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:48:28,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:48:30,889.889 INFO    ] ================================================
[2026-08-25 13:48:30,904.904 INFO    ] Launching Daemon at Tue Aug 25 13:48:30 IST 2026
[2026-08-25 13:48:30,916.916 INFO    ] ================================================
[2026-08-25 13:48:31,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:48:31
[2026-08-25 13:48:32,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:48:32,485.485 INFO    ] Initializing speech engine...
[2026-08-25 13:48:32,501.501 INFO    ] 2026-08-25 13:48:32
[2026-08-25 13:48:32,799.799 INFO    ] 2026-08-25 13:48:32
[2026-08-25 13:48:32,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:48:33,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:48:33,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:48:33,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:48:33,314.314 INFO    ] time= 25/08/2026 13:48:33
[2026-08-25 13:48:33,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:48:33,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:48:33,512.512 INFO    ] No existing commands found in stream
[2026-08-25 13:48:38,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:48:38,531.531 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 13:48:41,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:48:41,023.023 INFO    ] Checking for system updates...
[2026-08-25 13:48:41,061.061 INFO    ] 200
[2026-08-25 13:48:41,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:41,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:41,126.126 INFO    ] No update needed
[2026-08-25 13:48:41,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 13:48:41,165.165 INFO    ] 200
[2026-08-25 13:48:41,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:41,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:48:41,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:41,284.284 INFO    ] No camera update needed
[2026-08-25 13:48:41,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:48:41,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:48:41,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:48:41,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:48:43,341.341 INFO    ] ================================================
[2026-08-25 13:48:43,356.356 INFO    ] Launching Daemon at Tue Aug 25 13:48:43 IST 2026
[2026-08-25 13:48:43,366.366 INFO    ] ================================================
[2026-08-25 13:48:43,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:48:43
[2026-08-25 13:48:44,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:48:44,788.788 INFO    ] Initializing speech engine...
[2026-08-25 13:48:44,794.794 INFO    ] 2026-08-25 13:48:44
[2026-08-25 13:48:45,089.089 INFO    ] 2026-08-25 13:48:45
[2026-08-25 13:48:45,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:48:45,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:48:45,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:48:45,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:48:45,510.510 INFO    ] time= 25/08/2026 13:48:45
[2026-08-25 13:48:45,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:48:45,522.522 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:48:45,598.598 INFO    ] No existing commands found in stream
[2026-08-25 13:48:50,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:48:50,636.636 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 13:48:55,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:48:55,098.098 INFO    ] Checking for system updates...
[2026-08-25 13:48:55,134.134 INFO    ] 200
[2026-08-25 13:48:55,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:55,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:55,192.192 INFO    ] No update needed
[2026-08-25 13:48:55,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 13:48:55,228.228 INFO    ] 200
[2026-08-25 13:48:55,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:48:55,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:48:55,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:48:55,327.327 INFO    ] No camera update needed
[2026-08-25 13:48:55,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:48:55,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:48:55,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:48:55,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:48:57,385.385 INFO    ] ================================================
[2026-08-25 13:48:57,401.401 INFO    ] Launching Daemon at Tue Aug 25 13:48:57 IST 2026
[2026-08-25 13:48:57,412.412 INFO    ] ================================================
[2026-08-25 13:48:58,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:48:58
[2026-08-25 13:48:58,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:48:59,032.032 INFO    ] Initializing speech engine...
[2026-08-25 13:48:59,044.044 INFO    ] 2026-08-25 13:48:59
[2026-08-25 13:48:59,357.357 INFO    ] 2026-08-25 13:48:59
[2026-08-25 13:48:59,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:48:59,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:48:59,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:48:59,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:48:59,872.872 INFO    ] time= 25/08/2026 13:48:59
[2026-08-25 13:48:59,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:48:59,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:49:00,018.018 INFO    ] No existing commands found in stream
[2026-08-25 13:49:05,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:49:05,043.043 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 13:49:09,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:49:09,008.008 INFO    ] Checking for system updates...
[2026-08-25 13:49:09,045.045 INFO    ] 200
[2026-08-25 13:49:09,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:09,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:49:09,103.103 INFO    ] No update needed
[2026-08-25 13:49:09,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 13:49:09,139.139 INFO    ] 200
[2026-08-25 13:49:09,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:09,181.181 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:49:09,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:49:09,252.252 INFO    ] No camera update needed
[2026-08-25 13:49:09,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:49:09,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:49:09,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:49:09,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:49:11,306.306 INFO    ] ================================================
[2026-08-25 13:49:11,322.322 INFO    ] Launching Daemon at Tue Aug 25 13:49:11 IST 2026
[2026-08-25 13:49:11,332.332 INFO    ] ================================================
[2026-08-25 13:49:11,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:49:11
[2026-08-25 13:49:12,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:49:12,950.950 INFO    ] Initializing speech engine...
[2026-08-25 13:49:12,959.959 INFO    ] 2026-08-25 13:49:12
[2026-08-25 13:49:13,243.243 INFO    ] 2026-08-25 13:49:13
[2026-08-25 13:49:13,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:49:13,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:49:13,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:49:13,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:49:13,715.715 INFO    ] time= 25/08/2026 13:49:13
[2026-08-25 13:49:13,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:49:13,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:49:13,935.935 INFO    ] No existing commands found in stream
[2026-08-25 13:49:18,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:49:18,953.953 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 13:49:21,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:49:21,688.688 INFO    ] Checking for system updates...
[2026-08-25 13:49:21,724.724 INFO    ] 200
[2026-08-25 13:49:21,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:21,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:49:21,783.783 INFO    ] No update needed
[2026-08-25 13:49:21,785.785 INFO    ] Checking for camera pi updates...
[2026-08-25 13:49:21,819.819 INFO    ] 200
[2026-08-25 13:49:21,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:21,870.870 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:49:21,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:49:21,925.925 INFO    ] No camera update needed
[2026-08-25 13:49:21,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:49:21,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:49:21,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:49:21,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:49:23,978.978 INFO    ] ================================================
[2026-08-25 13:49:23,994.994 INFO    ] Launching Daemon at Tue Aug 25 13:49:23 IST 2026
[2026-08-25 13:49:24,005.005 INFO    ] ================================================
[2026-08-25 13:49:24,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:49:24
[2026-08-25 13:49:25,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:49:25,469.469 INFO    ] Initializing speech engine...
[2026-08-25 13:49:25,479.479 INFO    ] 2026-08-25 13:49:25
[2026-08-25 13:49:25,741.741 INFO    ] 2026-08-25 13:49:25
[2026-08-25 13:49:25,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:49:26,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:49:26,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:49:26,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:49:26,178.178 INFO    ] time= 25/08/2026 13:49:26
[2026-08-25 13:49:26,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:49:26,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:49:26,423.423 INFO    ] No existing commands found in stream
[2026-08-25 13:49:31,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:49:31,450.450 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 13:49:35,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:49:35,835.835 INFO    ] Checking for system updates...
[2026-08-25 13:49:35,870.870 INFO    ] 200
[2026-08-25 13:49:35,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:35,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:49:35,927.927 INFO    ] No update needed
[2026-08-25 13:49:35,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 13:49:35,966.966 INFO    ] 200
[2026-08-25 13:49:35,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:36,013.013 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:49:36,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:49:36,080.080 INFO    ] No camera update needed
[2026-08-25 13:49:36,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:49:36,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:49:36,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:49:36,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:49:38,135.135 INFO    ] ================================================
[2026-08-25 13:49:38,151.151 INFO    ] Launching Daemon at Tue Aug 25 13:49:38 IST 2026
[2026-08-25 13:49:38,163.163 INFO    ] ================================================
[2026-08-25 13:49:38,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:49:38
[2026-08-25 13:49:39,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:49:39,590.590 INFO    ] Initializing speech engine...
[2026-08-25 13:49:39,596.596 INFO    ] 2026-08-25 13:49:39
[2026-08-25 13:49:39,843.843 INFO    ] 2026-08-25 13:49:39
[2026-08-25 13:49:39,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:49:40,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:49:40,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:49:40,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:49:40,318.318 INFO    ] time= 25/08/2026 13:49:40
[2026-08-25 13:49:40,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:49:40,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:49:40,464.464 INFO    ] No existing commands found in stream
[2026-08-25 13:49:45,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:49:45,486.486 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 13:49:46,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:49:46,863.863 INFO    ] Checking for system updates...
[2026-08-25 13:49:46,898.898 INFO    ] 200
[2026-08-25 13:49:46,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:46,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:49:46,954.954 INFO    ] No update needed
[2026-08-25 13:49:46,957.957 INFO    ] Checking for camera pi updates...
[2026-08-25 13:49:46,991.991 INFO    ] 200
[2026-08-25 13:49:46,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:49:47,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:49:47,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:49:47,087.087 INFO    ] No camera update needed
[2026-08-25 13:49:47,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:49:47,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:49:47,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:49:47,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:49:49,146.146 INFO    ] ================================================
[2026-08-25 13:49:49,162.162 INFO    ] Launching Daemon at Tue Aug 25 13:49:49 IST 2026
[2026-08-25 13:49:49,173.173 INFO    ] ================================================
[2026-08-25 13:49:49,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:49:49
[2026-08-25 13:49:50,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:49:50,599.599 INFO    ] Initializing speech engine...
[2026-08-25 13:49:50,604.604 INFO    ] 2026-08-25 13:49:50
[2026-08-25 13:49:50,862.862 INFO    ] 2026-08-25 13:49:50
[2026-08-25 13:49:50,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:49:51,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:49:51,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:49:51,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:49:51,317.317 INFO    ] time= 25/08/2026 13:49:51
[2026-08-25 13:49:51,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:49:51,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:49:51,557.557 INFO    ] No existing commands found in stream
[2026-08-25 13:49:56,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:49:56,579.579 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 13:50:00,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:50:00,295.295 INFO    ] Checking for system updates...
[2026-08-25 13:50:00,332.332 INFO    ] 200
[2026-08-25 13:50:00,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:00,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:50:00,400.400 INFO    ] No update needed
[2026-08-25 13:50:00,402.402 INFO    ] Checking for camera pi updates...
[2026-08-25 13:50:00,436.436 INFO    ] 200
[2026-08-25 13:50:00,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:00,484.484 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:50:00,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:50:00,552.552 INFO    ] No camera update needed
[2026-08-25 13:50:00,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:50:00,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:50:00,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:50:00,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:50:02,759.759 INFO    ] ================================================
[2026-08-25 13:50:02,787.787 INFO    ] Launching Daemon at Tue Aug 25 13:50:02 IST 2026
[2026-08-25 13:50:02,805.805 INFO    ] ================================================
[2026-08-25 13:50:03,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:50:03
[2026-08-25 13:50:04,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:50:04,455.455 INFO    ] Initializing speech engine...
[2026-08-25 13:50:04,470.470 INFO    ] 2026-08-25 13:50:04
[2026-08-25 13:50:04,752.752 INFO    ] 2026-08-25 13:50:04
[2026-08-25 13:50:04,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:50:05,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:50:05,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:50:05,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:50:05,293.293 INFO    ] time= 25/08/2026 13:50:05
[2026-08-25 13:50:05,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:50:05,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:50:05,447.447 INFO    ] No existing commands found in stream
[2026-08-25 13:50:10,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:50:10,472.472 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 13:50:12,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:50:12,084.084 INFO    ] Checking for system updates...
[2026-08-25 13:50:12,120.120 INFO    ] 200
[2026-08-25 13:50:12,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:12,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:50:12,188.188 INFO    ] No update needed
[2026-08-25 13:50:12,190.190 INFO    ] Checking for camera pi updates...
[2026-08-25 13:50:12,225.225 INFO    ] 200
[2026-08-25 13:50:12,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:12,268.268 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:50:12,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:50:12,426.426 INFO    ] No camera update needed
[2026-08-25 13:50:12,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:50:12,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:50:12,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:50:12,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:50:14,479.479 INFO    ] ================================================
[2026-08-25 13:50:14,495.495 INFO    ] Launching Daemon at Tue Aug 25 13:50:14 IST 2026
[2026-08-25 13:50:14,507.507 INFO    ] ================================================
[2026-08-25 13:50:15,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:50:15
[2026-08-25 13:50:16,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:50:16,464.464 INFO    ] Initializing speech engine...
[2026-08-25 13:50:16,484.484 INFO    ] 2026-08-25 13:50:16
[2026-08-25 13:50:16,733.733 INFO    ] 2026-08-25 13:50:16
[2026-08-25 13:50:16,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:50:16,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:50:17,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:50:17,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:50:17,221.221 INFO    ] time= 25/08/2026 13:50:17
[2026-08-25 13:50:17,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:50:17,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:50:17,440.440 INFO    ] No existing commands found in stream
[2026-08-25 13:50:22,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:50:22,468.468 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 13:50:24,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:50:24,194.194 INFO    ] Checking for system updates...
[2026-08-25 13:50:24,229.229 INFO    ] 200
[2026-08-25 13:50:24,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:24,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:50:24,311.311 INFO    ] No update needed
[2026-08-25 13:50:24,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 13:50:24,348.348 INFO    ] 200
[2026-08-25 13:50:24,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:24,395.395 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:50:24,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:50:24,461.461 INFO    ] No camera update needed
[2026-08-25 13:50:24,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:50:24,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:50:24,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:50:24,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:50:26,519.519 INFO    ] ================================================
[2026-08-25 13:50:26,534.534 INFO    ] Launching Daemon at Tue Aug 25 13:50:26 IST 2026
[2026-08-25 13:50:26,545.545 INFO    ] ================================================
[2026-08-25 13:50:27,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:50:27
[2026-08-25 13:50:27,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:50:27,981.981 INFO    ] Initializing speech engine...
[2026-08-25 13:50:27,999.999 INFO    ] 2026-08-25 13:50:27
[2026-08-25 13:50:28,247.247 INFO    ] 2026-08-25 13:50:28
[2026-08-25 13:50:28,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:50:28,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:50:28,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:50:28,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:50:28,734.734 INFO    ] time= 25/08/2026 13:50:28
[2026-08-25 13:50:28,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:50:28,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:50:28,952.952 INFO    ] No existing commands found in stream
[2026-08-25 13:50:33,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:50:33,968.968 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 13:50:36,745.745 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:50:36,748.748 INFO    ] Checking for system updates...
[2026-08-25 13:50:36,782.782 INFO    ] 200
[2026-08-25 13:50:36,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:36,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:50:36,839.839 INFO    ] No update needed
[2026-08-25 13:50:36,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 13:50:36,879.879 INFO    ] 200
[2026-08-25 13:50:36,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:36,922.922 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:50:36,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:50:36,979.979 INFO    ] No camera update needed
[2026-08-25 13:50:36,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:50:36,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:50:36,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:50:36,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:50:39,033.033 INFO    ] ================================================
[2026-08-25 13:50:39,049.049 INFO    ] Launching Daemon at Tue Aug 25 13:50:39 IST 2026
[2026-08-25 13:50:39,060.060 INFO    ] ================================================
[2026-08-25 13:50:39,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:50:39
[2026-08-25 13:50:40,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:50:40,612.612 INFO    ] Initializing speech engine...
[2026-08-25 13:50:40,629.629 INFO    ] 2026-08-25 13:50:40
[2026-08-25 13:50:40,898.898 INFO    ] 2026-08-25 13:50:40
[2026-08-25 13:50:41,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:50:41,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:50:41,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:50:41,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:50:41,467.467 INFO    ] time= 25/08/2026 13:50:41
[2026-08-25 13:50:41,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:50:41,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:50:41,623.623 INFO    ] No existing commands found in stream
[2026-08-25 13:50:46,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:50:46,639.639 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 13:50:49,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:50:49,350.350 INFO    ] Checking for system updates...
[2026-08-25 13:50:49,390.390 INFO    ] 200
[2026-08-25 13:50:49,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:49,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:50:49,450.450 INFO    ] No update needed
[2026-08-25 13:50:49,453.453 INFO    ] Checking for camera pi updates...
[2026-08-25 13:50:49,487.487 INFO    ] 200
[2026-08-25 13:50:49,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:50:49,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:50:49,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:50:49,583.583 INFO    ] No camera update needed
[2026-08-25 13:50:49,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:50:49,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:50:49,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:50:49,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:50:51,641.641 INFO    ] ================================================
[2026-08-25 13:50:51,657.657 INFO    ] Launching Daemon at Tue Aug 25 13:50:51 IST 2026
[2026-08-25 13:50:51,667.667 INFO    ] ================================================
[2026-08-25 13:50:52,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:50:52
[2026-08-25 13:50:53,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:50:53,345.345 INFO    ] Initializing speech engine...
[2026-08-25 13:50:53,358.358 INFO    ] 2026-08-25 13:50:53
[2026-08-25 13:50:53,635.635 INFO    ] 2026-08-25 13:50:53
[2026-08-25 13:50:53,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:50:53,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:50:53,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:50:54,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:50:54,168.168 INFO    ] time= 25/08/2026 13:50:54
[2026-08-25 13:50:54,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:50:54,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:50:54,325.325 INFO    ] No existing commands found in stream
[2026-08-25 13:50:59,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:50:59,348.348 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 13:51:00,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:51:00,408.408 INFO    ] Checking for system updates...
[2026-08-25 13:51:00,445.445 INFO    ] 200
[2026-08-25 13:51:00,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:00,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:00,504.504 INFO    ] No update needed
[2026-08-25 13:51:00,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 13:51:00,546.546 INFO    ] 200
[2026-08-25 13:51:00,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:00,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:51:00,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:00,642.642 INFO    ] No camera update needed
[2026-08-25 13:51:00,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:51:00,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:51:00,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:51:00,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:51:02,702.702 INFO    ] ================================================
[2026-08-25 13:51:02,718.718 INFO    ] Launching Daemon at Tue Aug 25 13:51:02 IST 2026
[2026-08-25 13:51:02,734.734 INFO    ] ================================================
[2026-08-25 13:51:03,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:51:03
[2026-08-25 13:51:03,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:51:04,233.233 INFO    ] Initializing speech engine...
[2026-08-25 13:51:04,239.239 INFO    ] 2026-08-25 13:51:04
[2026-08-25 13:51:04,510.510 INFO    ] 2026-08-25 13:51:04
[2026-08-25 13:51:04,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:51:04,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:51:04,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:51:04,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:51:04,985.985 INFO    ] time= 25/08/2026 13:51:04
[2026-08-25 13:51:05,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:51:05,085.085 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:51:05,199.199 INFO    ] No existing commands found in stream
[2026-08-25 13:51:10,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:51:10,224.224 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 13:51:11,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:51:11,872.872 INFO    ] Checking for system updates...
[2026-08-25 13:51:11,909.909 INFO    ] 200
[2026-08-25 13:51:11,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:11,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:11,966.966 INFO    ] No update needed
[2026-08-25 13:51:11,968.968 INFO    ] Checking for camera pi updates...
[2026-08-25 13:51:12,002.002 INFO    ] 200
[2026-08-25 13:51:12,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:12,045.045 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:51:12,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:12,095.095 INFO    ] No camera update needed
[2026-08-25 13:51:12,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:51:12,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:51:12,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:51:12,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:51:14,148.148 INFO    ] ================================================
[2026-08-25 13:51:14,163.163 INFO    ] Launching Daemon at Tue Aug 25 13:51:14 IST 2026
[2026-08-25 13:51:14,174.174 INFO    ] ================================================
[2026-08-25 13:51:14,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:51:14
[2026-08-25 13:51:15,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:51:15,615.615 INFO    ] Initializing speech engine...
[2026-08-25 13:51:15,625.625 INFO    ] 2026-08-25 13:51:15
[2026-08-25 13:51:15,880.880 INFO    ] 2026-08-25 13:51:15
[2026-08-25 13:51:15,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:51:16,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:51:16,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:51:16,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:51:16,370.370 INFO    ] time= 25/08/2026 13:51:16
[2026-08-25 13:51:16,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:51:16,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:51:16,589.589 INFO    ] No existing commands found in stream
[2026-08-25 13:51:21,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:51:21,622.622 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 13:51:24,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:51:24,374.374 INFO    ] Checking for system updates...
[2026-08-25 13:51:24,410.410 INFO    ] 200
[2026-08-25 13:51:24,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:24,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:51:24,467.467 INFO    ] No update needed
[2026-08-25 13:51:24,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 13:51:24,503.503 INFO    ] 200
[2026-08-25 13:51:24,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:24,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:51:24,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:51:24,592.592 INFO    ] No camera update needed
[2026-08-25 13:51:24,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:51:24,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:51:24,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:51:24,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:51:26,649.649 INFO    ] ================================================
[2026-08-25 13:51:26,664.664 INFO    ] Launching Daemon at Tue Aug 25 13:51:26 IST 2026
[2026-08-25 13:51:26,675.675 INFO    ] ================================================
[2026-08-25 13:51:27,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:51:27
[2026-08-25 13:51:27,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:51:28,073.073 INFO    ] Initializing speech engine...
[2026-08-25 13:51:28,094.094 INFO    ] 2026-08-25 13:51:28
[2026-08-25 13:51:28,353.353 INFO    ] 2026-08-25 13:51:28
[2026-08-25 13:51:28,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:51:28,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:51:28,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:51:28,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:51:28,830.830 INFO    ] time= 25/08/2026 13:51:28
[2026-08-25 13:51:28,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:51:28,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:51:29,059.059 INFO    ] No existing commands found in stream
[2026-08-25 13:51:34,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:51:34,087.087 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 13:51:36,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:51:36,223.223 INFO    ] Checking for system updates...
[2026-08-25 13:51:36,259.259 INFO    ] 200
[2026-08-25 13:51:36,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:36,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:36,323.323 INFO    ] No update needed
[2026-08-25 13:51:36,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 13:51:36,360.360 INFO    ] 200
[2026-08-25 13:51:36,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:36,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:51:36,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:36,471.471 INFO    ] No camera update needed
[2026-08-25 13:51:36,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:51:36,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:51:36,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:51:36,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:51:38,526.526 INFO    ] ================================================
[2026-08-25 13:51:38,541.541 INFO    ] Launching Daemon at Tue Aug 25 13:51:38 IST 2026
[2026-08-25 13:51:38,552.552 INFO    ] ================================================
[2026-08-25 13:51:39,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:51:39
[2026-08-25 13:51:39,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:51:40,002.002 INFO    ] Initializing speech engine...
[2026-08-25 13:51:40,012.012 INFO    ] 2026-08-25 13:51:40
[2026-08-25 13:51:40,259.259 INFO    ] 2026-08-25 13:51:40
[2026-08-25 13:51:40,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:51:40,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:51:40,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:51:40,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:51:40,759.759 INFO    ] time= 25/08/2026 13:51:40
[2026-08-25 13:51:40,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:51:40,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:51:40,970.970 INFO    ] No existing commands found in stream
[2026-08-25 13:51:46,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:51:46,005.005 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 13:51:46,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:51:46,955.955 INFO    ] Checking for system updates...
[2026-08-25 13:51:46,992.992 INFO    ] 200
[2026-08-25 13:51:46,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:47,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:47,052.052 INFO    ] No update needed
[2026-08-25 13:51:47,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 13:51:47,089.089 INFO    ] 200
[2026-08-25 13:51:47,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:47,132.132 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:51:47,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:51:47,192.192 INFO    ] No camera update needed
[2026-08-25 13:51:47,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:51:47,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:51:47,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:51:47,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:51:49,248.248 INFO    ] ================================================
[2026-08-25 13:51:49,263.263 INFO    ] Launching Daemon at Tue Aug 25 13:51:49 IST 2026
[2026-08-25 13:51:49,274.274 INFO    ] ================================================
[2026-08-25 13:51:49,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:51:49
[2026-08-25 13:51:50,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:51:50,677.677 INFO    ] Initializing speech engine...
[2026-08-25 13:51:50,690.690 INFO    ] 2026-08-25 13:51:50
[2026-08-25 13:51:50,958.958 INFO    ] 2026-08-25 13:51:50
[2026-08-25 13:51:50,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:51:51,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:51:51,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:51:51,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:51:51,336.336 INFO    ] time= 25/08/2026 13:51:51
[2026-08-25 13:51:51,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:51:51,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:51:51,523.523 INFO    ] No existing commands found in stream
[2026-08-25 13:51:56,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:51:56,549.549 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 13:51:58,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:51:58,754.754 INFO    ] Checking for system updates...
[2026-08-25 13:51:58,790.790 INFO    ] 200
[2026-08-25 13:51:58,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:58,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:51:58,853.853 INFO    ] No update needed
[2026-08-25 13:51:58,855.855 INFO    ] Checking for camera pi updates...
[2026-08-25 13:51:58,892.892 INFO    ] 200
[2026-08-25 13:51:58,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:51:58,939.939 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:51:58,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:51:58,993.993 INFO    ] No camera update needed
[2026-08-25 13:51:58,996.996 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:51:58,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:51:59,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:51:59,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:52:01,049.049 INFO    ] ================================================
[2026-08-25 13:52:01,064.064 INFO    ] Launching Daemon at Tue Aug 25 13:52:01 IST 2026
[2026-08-25 13:52:01,075.075 INFO    ] ================================================
[2026-08-25 13:52:01,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:52:01
[2026-08-25 13:52:02,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:52:02,787.787 INFO    ] Initializing speech engine...
[2026-08-25 13:52:02,797.797 INFO    ] 2026-08-25 13:52:02
[2026-08-25 13:52:03,142.142 INFO    ] 2026-08-25 13:52:03
[2026-08-25 13:52:03,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:52:03,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:52:03,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:52:03,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:52:03,568.568 INFO    ] time= 25/08/2026 13:52:03
[2026-08-25 13:52:03,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:52:03,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:52:03,660.660 INFO    ] No existing commands found in stream
[2026-08-25 13:52:08,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:52:08,673.673 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 13:52:10,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:52:10,962.962 INFO    ] Checking for system updates...
[2026-08-25 13:52:10,998.998 INFO    ] 200
[2026-08-25 13:52:11,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:11,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:52:11,055.055 INFO    ] No update needed
[2026-08-25 13:52:11,057.057 INFO    ] Checking for camera pi updates...
[2026-08-25 13:52:11,091.091 INFO    ] 200
[2026-08-25 13:52:11,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:11,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:52:11,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:52:11,199.199 INFO    ] No camera update needed
[2026-08-25 13:52:11,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:52:11,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:52:11,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:52:11,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:52:13,254.254 INFO    ] ================================================
[2026-08-25 13:52:13,270.270 INFO    ] Launching Daemon at Tue Aug 25 13:52:13 IST 2026
[2026-08-25 13:52:13,281.281 INFO    ] ================================================
[2026-08-25 13:52:13,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:52:13
[2026-08-25 13:52:14,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:52:14,774.774 INFO    ] Initializing speech engine...
[2026-08-25 13:52:14,784.784 INFO    ] 2026-08-25 13:52:14
[2026-08-25 13:52:15,048.048 INFO    ] 2026-08-25 13:52:15
[2026-08-25 13:52:15,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:52:15,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:52:15,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:52:15,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:52:15,474.474 INFO    ] time= 25/08/2026 13:52:15
[2026-08-25 13:52:15,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:52:15,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:52:15,598.598 INFO    ] No existing commands found in stream
[2026-08-25 13:52:20,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:52:20,621.621 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 13:52:21,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:52:21,295.295 INFO    ] Checking for system updates...
[2026-08-25 13:52:21,334.334 INFO    ] 200
[2026-08-25 13:52:21,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:21,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:52:21,392.392 INFO    ] No update needed
[2026-08-25 13:52:21,394.394 INFO    ] Checking for camera pi updates...
[2026-08-25 13:52:21,431.431 INFO    ] 200
[2026-08-25 13:52:21,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:21,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:52:21,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:52:21,620.620 INFO    ] No camera update needed
[2026-08-25 13:52:21,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:52:21,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:52:21,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:52:21,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:52:23,674.674 INFO    ] ================================================
[2026-08-25 13:52:23,690.690 INFO    ] Launching Daemon at Tue Aug 25 13:52:23 IST 2026
[2026-08-25 13:52:23,700.700 INFO    ] ================================================
[2026-08-25 13:52:24,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:52:24
[2026-08-25 13:52:24,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:52:25,207.207 INFO    ] Initializing speech engine...
[2026-08-25 13:52:25,214.214 INFO    ] 2026-08-25 13:52:25
[2026-08-25 13:52:25,509.509 INFO    ] 2026-08-25 13:52:25
[2026-08-25 13:52:25,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:52:25,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:52:25,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:52:25,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:52:26,007.007 INFO    ] time= 25/08/2026 13:52:25
[2026-08-25 13:52:26,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:52:26,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:52:26,220.220 INFO    ] No existing commands found in stream
[2026-08-25 13:52:31,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:52:31,236.236 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 13:52:35,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:52:35,679.679 INFO    ] Checking for system updates...
[2026-08-25 13:52:35,715.715 INFO    ] 200
[2026-08-25 13:52:35,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:35,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:52:35,781.781 INFO    ] No update needed
[2026-08-25 13:52:35,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 13:52:35,819.819 INFO    ] 200
[2026-08-25 13:52:35,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:35,867.867 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:52:35,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:52:35,925.925 INFO    ] No camera update needed
[2026-08-25 13:52:35,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:52:35,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:52:35,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:52:35,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:52:37,980.980 INFO    ] ================================================
[2026-08-25 13:52:38,996.996 INFO    ] Launching Daemon at Tue Aug 25 13:52:37 IST 2026
[2026-08-25 13:52:38,007.007 INFO    ] ================================================
[2026-08-25 13:52:38,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:52:38
[2026-08-25 13:52:39,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:52:39,474.474 INFO    ] Initializing speech engine...
[2026-08-25 13:52:39,484.484 INFO    ] 2026-08-25 13:52:39
[2026-08-25 13:52:39,739.739 INFO    ] 2026-08-25 13:52:39
[2026-08-25 13:52:39,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:52:40,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:52:40,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:52:40,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:52:40,198.198 INFO    ] time= 25/08/2026 13:52:40
[2026-08-25 13:52:40,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:52:40,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:52:40,428.428 INFO    ] No existing commands found in stream
[2026-08-25 13:52:45,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:52:45,455.455 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 13:52:49,200.200 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:52:49,202.202 INFO    ] Checking for system updates...
[2026-08-25 13:52:49,239.239 INFO    ] 200
[2026-08-25 13:52:49,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:49,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:52:49,303.303 INFO    ] No update needed
[2026-08-25 13:52:49,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 13:52:49,343.343 INFO    ] 200
[2026-08-25 13:52:49,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:52:49,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:52:49,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:52:49,445.445 INFO    ] No camera update needed
[2026-08-25 13:52:49,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:52:49,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:52:49,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:52:49,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:52:51,500.500 INFO    ] ================================================
[2026-08-25 13:52:51,515.515 INFO    ] Launching Daemon at Tue Aug 25 13:52:51 IST 2026
[2026-08-25 13:52:51,525.525 INFO    ] ================================================
[2026-08-25 13:52:52,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:52:52
[2026-08-25 13:52:52,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:52:53,130.130 INFO    ] Initializing speech engine...
[2026-08-25 13:52:53,136.136 INFO    ] 2026-08-25 13:52:53
[2026-08-25 13:52:53,414.414 INFO    ] 2026-08-25 13:52:53
[2026-08-25 13:52:53,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:52:53,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:52:53,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:52:53,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:52:53,959.959 INFO    ] time= 25/08/2026 13:52:53
[2026-08-25 13:52:53,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:52:53,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:52:54,129.129 INFO    ] No existing commands found in stream
[2026-08-25 13:52:59,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:52:59,165.165 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 13:53:00,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:53:00,726.726 INFO    ] Checking for system updates...
[2026-08-25 13:53:00,763.763 INFO    ] 200
[2026-08-25 13:53:00,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:00,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:53:00,827.827 INFO    ] No update needed
[2026-08-25 13:53:00,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 13:53:00,863.863 INFO    ] 200
[2026-08-25 13:53:00,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:00,905.905 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:53:00,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:53:00,952.952 INFO    ] No camera update needed
[2026-08-25 13:53:00,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:53:00,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:53:00,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:53:00,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:53:03,019.019 INFO    ] ================================================
[2026-08-25 13:53:03,042.042 INFO    ] Launching Daemon at Tue Aug 25 13:53:03 IST 2026
[2026-08-25 13:53:03,060.060 INFO    ] ================================================
[2026-08-25 13:53:03,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:53:03
[2026-08-25 13:53:04,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:53:04,767.767 INFO    ] Initializing speech engine...
[2026-08-25 13:53:04,775.775 INFO    ] 2026-08-25 13:53:04
[2026-08-25 13:53:05,077.077 INFO    ] 2026-08-25 13:53:05
[2026-08-25 13:53:05,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:53:05,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:53:05,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:53:05,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:53:05,584.584 INFO    ] time= 25/08/2026 13:53:05
[2026-08-25 13:53:05,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:53:05,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:53:05,804.804 INFO    ] No existing commands found in stream
[2026-08-25 13:53:10,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:53:10,833.833 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 13:53:11,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:53:11,999.999 INFO    ] Checking for system updates...
[2026-08-25 13:53:12,040.040 INFO    ] 200
[2026-08-25 13:53:12,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:12,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:12,100.100 INFO    ] No update needed
[2026-08-25 13:53:12,102.102 INFO    ] Checking for camera pi updates...
[2026-08-25 13:53:12,141.141 INFO    ] 200
[2026-08-25 13:53:12,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:12,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:53:12,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:12,236.236 INFO    ] No camera update needed
[2026-08-25 13:53:12,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:53:12,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:53:12,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:53:12,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:53:14,295.295 INFO    ] ================================================
[2026-08-25 13:53:14,310.310 INFO    ] Launching Daemon at Tue Aug 25 13:53:14 IST 2026
[2026-08-25 13:53:14,322.322 INFO    ] ================================================
[2026-08-25 13:53:14,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:53:14
[2026-08-25 13:53:15,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:53:15,956.956 INFO    ] Initializing speech engine...
[2026-08-25 13:53:15,968.968 INFO    ] 2026-08-25 13:53:15
[2026-08-25 13:53:16,243.243 INFO    ] 2026-08-25 13:53:16
[2026-08-25 13:53:16,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:53:16,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:53:16,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:53:16,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:53:16,734.734 INFO    ] time= 25/08/2026 13:53:16
[2026-08-25 13:53:16,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:53:16,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:53:16,950.950 INFO    ] No existing commands found in stream
[2026-08-25 13:53:21,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:53:21,978.978 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 13:53:24,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:53:24,344.344 INFO    ] Checking for system updates...
[2026-08-25 13:53:24,381.381 INFO    ] 200
[2026-08-25 13:53:24,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:24,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:24,448.448 INFO    ] No update needed
[2026-08-25 13:53:24,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 13:53:24,486.486 INFO    ] 200
[2026-08-25 13:53:24,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:24,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:53:24,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:24,586.586 INFO    ] No camera update needed
[2026-08-25 13:53:24,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:53:24,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:53:24,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:53:24,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:53:26,648.648 INFO    ] ================================================
[2026-08-25 13:53:26,664.664 INFO    ] Launching Daemon at Tue Aug 25 13:53:26 IST 2026
[2026-08-25 13:53:26,677.677 INFO    ] ================================================
[2026-08-25 13:53:27,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:53:27
[2026-08-25 13:53:28,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:53:28,330.330 INFO    ] Initializing speech engine...
[2026-08-25 13:53:28,338.338 INFO    ] 2026-08-25 13:53:28
[2026-08-25 13:53:28,616.616 INFO    ] 2026-08-25 13:53:28
[2026-08-25 13:53:28,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:53:28,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:53:28,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:53:29,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:53:29,123.123 INFO    ] time= 25/08/2026 13:53:29
[2026-08-25 13:53:29,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:53:29,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:53:29,342.342 INFO    ] No existing commands found in stream
[2026-08-25 13:53:34,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:53:34,370.370 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 13:53:35,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:53:35,191.191 INFO    ] Checking for system updates...
[2026-08-25 13:53:35,232.232 INFO    ] 200
[2026-08-25 13:53:35,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:35,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:35,291.291 INFO    ] No update needed
[2026-08-25 13:53:35,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 13:53:35,334.334 INFO    ] 200
[2026-08-25 13:53:35,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:35,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:53:35,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:35,425.425 INFO    ] No camera update needed
[2026-08-25 13:53:35,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:53:35,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:53:35,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:53:35,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:53:37,482.482 INFO    ] ================================================
[2026-08-25 13:53:37,498.498 INFO    ] Launching Daemon at Tue Aug 25 13:53:37 IST 2026
[2026-08-25 13:53:37,509.509 INFO    ] ================================================
[2026-08-25 13:53:38,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:53:38
[2026-08-25 13:53:38,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:53:39,160.160 INFO    ] Initializing speech engine...
[2026-08-25 13:53:39,174.174 INFO    ] 2026-08-25 13:53:39
[2026-08-25 13:53:39,461.461 INFO    ] 2026-08-25 13:53:39
[2026-08-25 13:53:39,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:53:39,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:53:39,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:53:39,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:53:39,915.915 INFO    ] time= 25/08/2026 13:53:39
[2026-08-25 13:53:39,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:53:39,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:53:40,144.144 INFO    ] No existing commands found in stream
[2026-08-25 13:53:45,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:53:45,164.164 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 13:53:46,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:53:46,878.878 INFO    ] Checking for system updates...
[2026-08-25 13:53:46,915.915 INFO    ] 200
[2026-08-25 13:53:46,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:46,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:46,998.998 INFO    ] No update needed
[2026-08-25 13:53:47,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 13:53:47,035.035 INFO    ] 200
[2026-08-25 13:53:47,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:53:47,083.083 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:53:47,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:53:47,132.132 INFO    ] No camera update needed
[2026-08-25 13:53:47,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:53:47,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:53:47,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:53:47,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:53:49,186.186 INFO    ] ================================================
[2026-08-25 13:53:49,202.202 INFO    ] Launching Daemon at Tue Aug 25 13:53:49 IST 2026
[2026-08-25 13:53:49,214.214 INFO    ] ================================================
[2026-08-25 13:53:49,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:53:49
[2026-08-25 13:53:50,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:53:50,631.631 INFO    ] Initializing speech engine...
[2026-08-25 13:53:50,640.640 INFO    ] 2026-08-25 13:53:50
[2026-08-25 13:53:50,899.899 INFO    ] 2026-08-25 13:53:50
[2026-08-25 13:53:50,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:53:51,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:53:51,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:53:51,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:53:51,370.370 INFO    ] time= 25/08/2026 13:53:51
[2026-08-25 13:53:51,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:53:51,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:53:51,584.584 INFO    ] No existing commands found in stream
[2026-08-25 13:53:56,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:53:56,606.606 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 13:54:00,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:54:00,013.013 INFO    ] Checking for system updates...
[2026-08-25 13:54:00,052.052 INFO    ] 200
[2026-08-25 13:54:00,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:00,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:54:00,110.110 INFO    ] No update needed
[2026-08-25 13:54:00,112.112 INFO    ] Checking for camera pi updates...
[2026-08-25 13:54:00,146.146 INFO    ] 200
[2026-08-25 13:54:00,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:00,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:54:00,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:54:00,246.246 INFO    ] No camera update needed
[2026-08-25 13:54:00,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:54:00,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:54:00,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:54:00,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:54:02,302.302 INFO    ] ================================================
[2026-08-25 13:54:02,324.324 INFO    ] Launching Daemon at Tue Aug 25 13:54:02 IST 2026
[2026-08-25 13:54:02,335.335 INFO    ] ================================================
[2026-08-25 13:54:02,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:54:02
[2026-08-25 13:54:03,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:54:03,875.875 INFO    ] Initializing speech engine...
[2026-08-25 13:54:03,893.893 INFO    ] 2026-08-25 13:54:03
[2026-08-25 13:54:04,140.140 INFO    ] 2026-08-25 13:54:04
[2026-08-25 13:54:04,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:54:04,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:54:04,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:54:04,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:54:04,638.638 INFO    ] time= 25/08/2026 13:54:04
[2026-08-25 13:54:04,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:54:04,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:54:04,816.816 INFO    ] No existing commands found in stream
[2026-08-25 13:54:09,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:54:09,849.849 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 13:54:11,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:54:11,069.069 INFO    ] Checking for system updates...
[2026-08-25 13:54:11,105.105 INFO    ] 200
[2026-08-25 13:54:11,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:11,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:54:11,169.169 INFO    ] No update needed
[2026-08-25 13:54:11,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 13:54:11,206.206 INFO    ] 200
[2026-08-25 13:54:11,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:11,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:54:11,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:54:11,297.297 INFO    ] No camera update needed
[2026-08-25 13:54:11,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:54:11,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:54:11,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:54:11,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:54:13,355.355 INFO    ] ================================================
[2026-08-25 13:54:13,370.370 INFO    ] Launching Daemon at Tue Aug 25 13:54:13 IST 2026
[2026-08-25 13:54:13,381.381 INFO    ] ================================================
[2026-08-25 13:54:13,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:54:13
[2026-08-25 13:54:14,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:54:14,787.787 INFO    ] Initializing speech engine...
[2026-08-25 13:54:14,796.796 INFO    ] 2026-08-25 13:54:14
[2026-08-25 13:54:15,080.080 INFO    ] 2026-08-25 13:54:15
[2026-08-25 13:54:15,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:54:15,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:54:15,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:54:15,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:54:15,451.451 INFO    ] time= 25/08/2026 13:54:15
[2026-08-25 13:54:15,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:54:15,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:54:15,629.629 INFO    ] No existing commands found in stream
[2026-08-25 13:54:20,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:54:20,660.660 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 13:54:23,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:54:23,297.297 INFO    ] Checking for system updates...
[2026-08-25 13:54:23,332.332 INFO    ] 200
[2026-08-25 13:54:23,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:23,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:54:23,395.395 INFO    ] No update needed
[2026-08-25 13:54:23,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 13:54:23,431.431 INFO    ] 200
[2026-08-25 13:54:23,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:23,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:54:23,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:54:23,522.522 INFO    ] No camera update needed
[2026-08-25 13:54:23,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:54:23,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:54:23,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:54:23,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:54:25,576.576 INFO    ] ================================================
[2026-08-25 13:54:25,592.592 INFO    ] Launching Daemon at Tue Aug 25 13:54:25 IST 2026
[2026-08-25 13:54:25,604.604 INFO    ] ================================================
[2026-08-25 13:54:26,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:54:26
[2026-08-25 13:54:26,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:54:27,088.088 INFO    ] Initializing speech engine...
[2026-08-25 13:54:27,098.098 INFO    ] 2026-08-25 13:54:27
[2026-08-25 13:54:27,358.358 INFO    ] 2026-08-25 13:54:27
[2026-08-25 13:54:27,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:54:27,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:54:27,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:54:27,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:54:27,832.832 INFO    ] time= 25/08/2026 13:54:27
[2026-08-25 13:54:27,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:54:27,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:54:28,056.056 INFO    ] No existing commands found in stream
[2026-08-25 13:54:33,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:54:33,071.071 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 13:54:35,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:54:35,898.898 INFO    ] Checking for system updates...
[2026-08-25 13:54:35,938.938 INFO    ] 200
[2026-08-25 13:54:35,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:36,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:54:36,011.011 INFO    ] No update needed
[2026-08-25 13:54:36,014.014 INFO    ] Checking for camera pi updates...
[2026-08-25 13:54:36,054.054 INFO    ] 200
[2026-08-25 13:54:36,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:36,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:54:36,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:54:36,182.182 INFO    ] No camera update needed
[2026-08-25 13:54:36,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:54:36,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:54:36,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:54:36,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:54:38,236.236 INFO    ] ================================================
[2026-08-25 13:54:38,252.252 INFO    ] Launching Daemon at Tue Aug 25 13:54:38 IST 2026
[2026-08-25 13:54:38,266.266 INFO    ] ================================================
[2026-08-25 13:54:38,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:54:38
[2026-08-25 13:54:39,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:54:39,715.715 INFO    ] Initializing speech engine...
[2026-08-25 13:54:39,730.730 INFO    ] 2026-08-25 13:54:39
[2026-08-25 13:54:40,002.002 INFO    ] 2026-08-25 13:54:39
[2026-08-25 13:54:40,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:54:40,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:54:40,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:54:40,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:54:40,377.377 INFO    ] time= 25/08/2026 13:54:40
[2026-08-25 13:54:40,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:54:40,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:54:40,552.552 INFO    ] No existing commands found in stream
[2026-08-25 13:54:45,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:54:45,580.580 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 13:54:46,204.204 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:54:46,207.207 INFO    ] Checking for system updates...
[2026-08-25 13:54:46,246.246 INFO    ] 200
[2026-08-25 13:54:46,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:46,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:54:46,304.304 INFO    ] No update needed
[2026-08-25 13:54:46,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 13:54:46,340.340 INFO    ] 200
[2026-08-25 13:54:46,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:46,390.390 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:54:46,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:54:46,440.440 INFO    ] No camera update needed
[2026-08-25 13:54:46,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:54:46,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:54:46,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:54:46,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:54:48,495.495 INFO    ] ================================================
[2026-08-25 13:54:48,510.510 INFO    ] Launching Daemon at Tue Aug 25 13:54:48 IST 2026
[2026-08-25 13:54:48,521.521 INFO    ] ================================================
[2026-08-25 13:54:49,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:54:49
[2026-08-25 13:54:49,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:54:49,944.944 INFO    ] Initializing speech engine...
[2026-08-25 13:54:49,953.953 INFO    ] 2026-08-25 13:54:49
[2026-08-25 13:54:50,195.195 INFO    ] 2026-08-25 13:54:50
[2026-08-25 13:54:50,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:54:50,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:54:50,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:54:50,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:54:50,668.668 INFO    ] time= 25/08/2026 13:54:50
[2026-08-25 13:54:50,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:54:50,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:54:50,903.903 INFO    ] No existing commands found in stream
[2026-08-25 13:54:55,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:54:55,918.918 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 13:54:57,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:54:57,223.223 INFO    ] Checking for system updates...
[2026-08-25 13:54:57,259.259 INFO    ] 200
[2026-08-25 13:54:57,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:57,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:54:57,320.320 INFO    ] No update needed
[2026-08-25 13:54:57,322.322 INFO    ] Checking for camera pi updates...
[2026-08-25 13:54:57,377.377 INFO    ] 200
[2026-08-25 13:54:57,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:54:57,419.419 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:54:57,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:54:57,471.471 INFO    ] No camera update needed
[2026-08-25 13:54:57,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:54:57,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:54:57,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:54:57,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:54:59,526.526 INFO    ] ================================================
[2026-08-25 13:54:59,541.541 INFO    ] Launching Daemon at Tue Aug 25 13:54:59 IST 2026
[2026-08-25 13:54:59,552.552 INFO    ] ================================================
[2026-08-25 13:55:00,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:55:00
[2026-08-25 13:55:00,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:55:01,076.076 INFO    ] Initializing speech engine...
[2026-08-25 13:55:01,085.085 INFO    ] 2026-08-25 13:55:01
[2026-08-25 13:55:01,330.330 INFO    ] 2026-08-25 13:55:01
[2026-08-25 13:55:01,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:55:01,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:55:01,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:55:01,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:55:01,830.830 INFO    ] time= 25/08/2026 13:55:01
[2026-08-25 13:55:01,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:55:01,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:55:01,978.978 INFO    ] No existing commands found in stream
[2026-08-25 13:55:06,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:55:06,992.992 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 13:55:11,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:55:11,099.099 INFO    ] Checking for system updates...
[2026-08-25 13:55:11,138.138 INFO    ] 200
[2026-08-25 13:55:11,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:11,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:55:11,197.197 INFO    ] No update needed
[2026-08-25 13:55:11,200.200 INFO    ] Checking for camera pi updates...
[2026-08-25 13:55:11,237.237 INFO    ] 200
[2026-08-25 13:55:11,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:11,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:55:11,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:55:11,337.337 INFO    ] No camera update needed
[2026-08-25 13:55:11,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:55:11,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:55:11,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:55:11,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:55:13,395.395 INFO    ] ================================================
[2026-08-25 13:55:13,410.410 INFO    ] Launching Daemon at Tue Aug 25 13:55:13 IST 2026
[2026-08-25 13:55:13,421.421 INFO    ] ================================================
[2026-08-25 13:55:14,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:55:14
[2026-08-25 13:55:14,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:55:14,903.903 INFO    ] Initializing speech engine...
[2026-08-25 13:55:14,912.912 INFO    ] 2026-08-25 13:55:14
[2026-08-25 13:55:15,171.171 INFO    ] 2026-08-25 13:55:15
[2026-08-25 13:55:15,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:55:15,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:55:15,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:55:15,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:55:15,628.628 INFO    ] time= 25/08/2026 13:55:15
[2026-08-25 13:55:15,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:55:15,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:55:15,865.865 INFO    ] No existing commands found in stream
[2026-08-25 13:55:20,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:55:20,881.881 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 13:55:22,537.537 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:55:22,541.541 INFO    ] Checking for system updates...
[2026-08-25 13:55:22,580.580 INFO    ] 200
[2026-08-25 13:55:22,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:22,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:55:22,636.636 INFO    ] No update needed
[2026-08-25 13:55:22,639.639 INFO    ] Checking for camera pi updates...
[2026-08-25 13:55:22,673.673 INFO    ] 200
[2026-08-25 13:55:22,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:22,719.719 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:55:22,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:55:22,775.775 INFO    ] No camera update needed
[2026-08-25 13:55:22,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:55:22,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:55:22,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:55:22,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:55:24,831.831 INFO    ] ================================================
[2026-08-25 13:55:24,847.847 INFO    ] Launching Daemon at Tue Aug 25 13:55:24 IST 2026
[2026-08-25 13:55:24,858.858 INFO    ] ================================================
[2026-08-25 13:55:25,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:55:25
[2026-08-25 13:55:26,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:55:26,271.271 INFO    ] Initializing speech engine...
[2026-08-25 13:55:26,280.280 INFO    ] 2026-08-25 13:55:26
[2026-08-25 13:55:26,527.527 INFO    ] 2026-08-25 13:55:26
[2026-08-25 13:55:26,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:55:26,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:55:26,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:55:26,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:55:27,007.007 INFO    ] time= 25/08/2026 13:55:26
[2026-08-25 13:55:27,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:55:27,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:55:27,222.222 INFO    ] No existing commands found in stream
[2026-08-25 13:55:32,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:55:32,249.249 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 13:55:34,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:55:34,714.714 INFO    ] Checking for system updates...
[2026-08-25 13:55:34,749.749 INFO    ] 200
[2026-08-25 13:55:34,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:34,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:55:34,807.807 INFO    ] No update needed
[2026-08-25 13:55:34,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 13:55:34,842.842 INFO    ] 200
[2026-08-25 13:55:34,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:34,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:55:34,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:55:34,937.937 INFO    ] No camera update needed
[2026-08-25 13:55:34,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:55:34,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:55:34,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:55:34,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:55:36,993.993 INFO    ] ================================================
[2026-08-25 13:55:37,009.009 INFO    ] Launching Daemon at Tue Aug 25 13:55:37 IST 2026
[2026-08-25 13:55:37,019.019 INFO    ] ================================================
[2026-08-25 13:55:37,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:55:37
[2026-08-25 13:55:38,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:55:38,445.445 INFO    ] Initializing speech engine...
[2026-08-25 13:55:38,471.471 INFO    ] 2026-08-25 13:55:38
[2026-08-25 13:55:38,743.743 INFO    ] 2026-08-25 13:55:38
[2026-08-25 13:55:38,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:55:38,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:55:38,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:55:39,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:55:39,136.136 INFO    ] time= 25/08/2026 13:55:39
[2026-08-25 13:55:39,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:55:39,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:55:39,244.244 INFO    ] No existing commands found in stream
[2026-08-25 13:55:44,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:55:44,263.263 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 13:55:45,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:55:45,736.736 INFO    ] Checking for system updates...
[2026-08-25 13:55:45,771.771 INFO    ] 200
[2026-08-25 13:55:45,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:45,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:55:45,829.829 INFO    ] No update needed
[2026-08-25 13:55:45,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 13:55:45,865.865 INFO    ] 200
[2026-08-25 13:55:45,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:45,912.912 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:55:45,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:55:45,964.964 INFO    ] No camera update needed
[2026-08-25 13:55:45,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:55:45,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:55:45,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:55:45,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:55:48,018.018 INFO    ] ================================================
[2026-08-25 13:55:48,035.035 INFO    ] Launching Daemon at Tue Aug 25 13:55:48 IST 2026
[2026-08-25 13:55:48,046.046 INFO    ] ================================================
[2026-08-25 13:55:48,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:55:48
[2026-08-25 13:55:49,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:55:49,445.445 INFO    ] Initializing speech engine...
[2026-08-25 13:55:49,464.464 INFO    ] 2026-08-25 13:55:49
[2026-08-25 13:55:49,721.721 INFO    ] 2026-08-25 13:55:49
[2026-08-25 13:55:49,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:55:50,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:55:50,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:55:50,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:55:50,212.212 INFO    ] time= 25/08/2026 13:55:50
[2026-08-25 13:55:50,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:55:50,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:55:50,428.428 INFO    ] No existing commands found in stream
[2026-08-25 13:55:55,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:55:55,446.446 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 13:55:58,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:55:58,144.144 INFO    ] Checking for system updates...
[2026-08-25 13:55:58,179.179 INFO    ] 200
[2026-08-25 13:55:58,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:58,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:55:58,243.243 INFO    ] No update needed
[2026-08-25 13:55:58,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 13:55:58,279.279 INFO    ] 200
[2026-08-25 13:55:58,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:55:58,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:55:58,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:55:58,376.376 INFO    ] No camera update needed
[2026-08-25 13:55:58,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:55:58,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:55:58,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:55:58,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:56:00,430.430 INFO    ] ================================================
[2026-08-25 13:56:00,446.446 INFO    ] Launching Daemon at Tue Aug 25 13:56:00 IST 2026
[2026-08-25 13:56:00,457.457 INFO    ] ================================================
[2026-08-25 13:56:01,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:56:01
[2026-08-25 13:56:01,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:56:02,043.043 INFO    ] Initializing speech engine...
[2026-08-25 13:56:02,074.074 INFO    ] 2026-08-25 13:56:02
[2026-08-25 13:56:02,373.373 INFO    ] 2026-08-25 13:56:02
[2026-08-25 13:56:02,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:56:02,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:56:02,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:56:02,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:56:02,742.742 INFO    ] time= 25/08/2026 13:56:02
[2026-08-25 13:56:02,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:56:02,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:56:02,915.915 INFO    ] No existing commands found in stream
[2026-08-25 13:56:07,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:56:07,935.935 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 13:56:09,390.390 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:56:09,392.392 INFO    ] Checking for system updates...
[2026-08-25 13:56:09,428.428 INFO    ] 200
[2026-08-25 13:56:09,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:09,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:56:09,487.487 INFO    ] No update needed
[2026-08-25 13:56:09,489.489 INFO    ] Checking for camera pi updates...
[2026-08-25 13:56:09,524.524 INFO    ] 200
[2026-08-25 13:56:09,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:09,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:56:09,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:56:09,623.623 INFO    ] No camera update needed
[2026-08-25 13:56:09,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:56:09,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:56:09,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:56:09,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:56:11,678.678 INFO    ] ================================================
[2026-08-25 13:56:11,694.694 INFO    ] Launching Daemon at Tue Aug 25 13:56:11 IST 2026
[2026-08-25 13:56:11,705.705 INFO    ] ================================================
[2026-08-25 13:56:12,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:56:12
[2026-08-25 13:56:12,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:56:13,123.123 INFO    ] Initializing speech engine...
[2026-08-25 13:56:13,131.131 INFO    ] 2026-08-25 13:56:13
[2026-08-25 13:56:13,388.388 INFO    ] 2026-08-25 13:56:13
[2026-08-25 13:56:13,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:56:13,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:56:13,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:56:13,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:56:13,854.854 INFO    ] time= 25/08/2026 13:56:13
[2026-08-25 13:56:13,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:56:13,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:56:14,067.067 INFO    ] No existing commands found in stream
[2026-08-25 13:56:19,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:56:19,093.093 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 13:56:22,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:56:22,165.165 INFO    ] Checking for system updates...
[2026-08-25 13:56:22,202.202 INFO    ] 200
[2026-08-25 13:56:22,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:22,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:56:22,263.263 INFO    ] No update needed
[2026-08-25 13:56:22,265.265 INFO    ] Checking for camera pi updates...
[2026-08-25 13:56:22,302.302 INFO    ] 200
[2026-08-25 13:56:22,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:22,344.344 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:56:22,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:56:22,394.394 INFO    ] No camera update needed
[2026-08-25 13:56:22,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:56:22,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:56:22,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:56:22,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:56:24,450.450 INFO    ] ================================================
[2026-08-25 13:56:24,466.466 INFO    ] Launching Daemon at Tue Aug 25 13:56:24 IST 2026
[2026-08-25 13:56:24,476.476 INFO    ] ================================================
[2026-08-25 13:56:25,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:56:25
[2026-08-25 13:56:25,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:56:26,051.051 INFO    ] Initializing speech engine...
[2026-08-25 13:56:26,059.059 INFO    ] 2026-08-25 13:56:26
[2026-08-25 13:56:26,342.342 INFO    ] 2026-08-25 13:56:26
[2026-08-25 13:56:26,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:56:26,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:56:26,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:56:26,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:56:26,832.832 INFO    ] time= 25/08/2026 13:56:26
[2026-08-25 13:56:26,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:56:26,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:56:27,031.031 INFO    ] No existing commands found in stream
[2026-08-25 13:56:32,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:56:32,049.049 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 13:56:35,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:56:35,191.191 INFO    ] Checking for system updates...
[2026-08-25 13:56:35,232.232 INFO    ] 200
[2026-08-25 13:56:35,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:35,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:56:35,295.295 INFO    ] No update needed
[2026-08-25 13:56:35,298.298 INFO    ] Checking for camera pi updates...
[2026-08-25 13:56:35,336.336 INFO    ] 200
[2026-08-25 13:56:35,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:35,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:56:35,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:56:35,443.443 INFO    ] No camera update needed
[2026-08-25 13:56:35,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:56:35,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:56:35,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:56:35,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:56:37,496.496 INFO    ] ================================================
[2026-08-25 13:56:37,512.512 INFO    ] Launching Daemon at Tue Aug 25 13:56:37 IST 2026
[2026-08-25 13:56:37,522.522 INFO    ] ================================================
[2026-08-25 13:56:38,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:56:38
[2026-08-25 13:56:38,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:56:38,951.951 INFO    ] Initializing speech engine...
[2026-08-25 13:56:38,960.960 INFO    ] 2026-08-25 13:56:38
[2026-08-25 13:56:39,223.223 INFO    ] 2026-08-25 13:56:39
[2026-08-25 13:56:39,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:56:39,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:56:39,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:56:39,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:56:39,633.633 INFO    ] time= 25/08/2026 13:56:39
[2026-08-25 13:56:39,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:56:39,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:56:39,755.755 INFO    ] No existing commands found in stream
[2026-08-25 13:56:44,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:56:44,783.783 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 13:56:49,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:56:49,217.217 INFO    ] Checking for system updates...
[2026-08-25 13:56:49,253.253 INFO    ] 200
[2026-08-25 13:56:49,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:49,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:56:49,318.318 INFO    ] No update needed
[2026-08-25 13:56:49,321.321 INFO    ] Checking for camera pi updates...
[2026-08-25 13:56:49,354.354 INFO    ] 200
[2026-08-25 13:56:49,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:56:49,401.401 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:56:49,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:56:49,554.554 INFO    ] No camera update needed
[2026-08-25 13:56:49,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:56:49,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:56:49,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:56:49,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:56:51,614.614 INFO    ] ================================================
[2026-08-25 13:56:51,629.629 INFO    ] Launching Daemon at Tue Aug 25 13:56:51 IST 2026
[2026-08-25 13:56:51,639.639 INFO    ] ================================================
[2026-08-25 13:56:52,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:56:52
[2026-08-25 13:56:52,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:56:53,061.061 INFO    ] Initializing speech engine...
[2026-08-25 13:56:53,067.067 INFO    ] 2026-08-25 13:56:53
[2026-08-25 13:56:53,325.325 INFO    ] 2026-08-25 13:56:53
[2026-08-25 13:56:53,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:56:53,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:56:53,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:56:53,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:56:53,785.785 INFO    ] time= 25/08/2026 13:56:53
[2026-08-25 13:56:53,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:56:53,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:56:53,999.999 INFO    ] No existing commands found in stream
[2026-08-25 13:56:59,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:56:59,029.029 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 13:57:03,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:57:03,187.187 INFO    ] Checking for system updates...
[2026-08-25 13:57:03,223.223 INFO    ] 200
[2026-08-25 13:57:03,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:03,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:57:03,286.286 INFO    ] No update needed
[2026-08-25 13:57:03,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 13:57:03,322.322 INFO    ] 200
[2026-08-25 13:57:03,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:03,369.369 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:57:03,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:57:03,419.419 INFO    ] No camera update needed
[2026-08-25 13:57:03,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:57:03,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:57:03,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:57:03,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:57:05,476.476 INFO    ] ================================================
[2026-08-25 13:57:05,492.492 INFO    ] Launching Daemon at Tue Aug 25 13:57:05 IST 2026
[2026-08-25 13:57:05,503.503 INFO    ] ================================================
[2026-08-25 13:57:06,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:57:06
[2026-08-25 13:57:06,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:57:06,972.972 INFO    ] Initializing speech engine...
[2026-08-25 13:57:06,980.980 INFO    ] 2026-08-25 13:57:06
[2026-08-25 13:57:07,240.240 INFO    ] 2026-08-25 13:57:07
[2026-08-25 13:57:07,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:57:07,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:57:07,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:57:07,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:57:07,724.724 INFO    ] time= 25/08/2026 13:57:07
[2026-08-25 13:57:07,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:57:07,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:57:07,936.936 INFO    ] No existing commands found in stream
[2026-08-25 13:57:12,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:57:12,952.952 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 13:57:17,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:57:17,184.184 INFO    ] Checking for system updates...
[2026-08-25 13:57:17,219.219 INFO    ] 200
[2026-08-25 13:57:17,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:17,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:57:17,277.277 INFO    ] No update needed
[2026-08-25 13:57:17,279.279 INFO    ] Checking for camera pi updates...
[2026-08-25 13:57:17,317.317 INFO    ] 200
[2026-08-25 13:57:17,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:17,364.364 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:57:17,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:57:17,420.420 INFO    ] No camera update needed
[2026-08-25 13:57:17,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:57:17,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:57:17,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:57:17,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:57:19,475.475 INFO    ] ================================================
[2026-08-25 13:57:19,491.491 INFO    ] Launching Daemon at Tue Aug 25 13:57:19 IST 2026
[2026-08-25 13:57:19,502.502 INFO    ] ================================================
[2026-08-25 13:57:20,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:57:20
[2026-08-25 13:57:20,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:57:20,994.994 INFO    ] Initializing speech engine...
[2026-08-25 13:57:21,000.000 INFO    ] 2026-08-25 13:57:20
[2026-08-25 13:57:21,262.262 INFO    ] 2026-08-25 13:57:21
[2026-08-25 13:57:21,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:57:21,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:57:21,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:57:21,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:57:21,743.743 INFO    ] time= 25/08/2026 13:57:21
[2026-08-25 13:57:21,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:57:21,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:57:21,937.937 INFO    ] No existing commands found in stream
[2026-08-25 13:57:26,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:57:26,970.970 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 13:57:28,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 13:57:28,872.872 INFO    ] Checking for system updates...
[2026-08-25 13:57:28,914.914 INFO    ] 200
[2026-08-25 13:57:28,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:28,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:57:28,984.984 INFO    ] No update needed
[2026-08-25 13:57:28,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 13:57:29,026.026 INFO    ] 200
[2026-08-25 13:57:29,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:29,082.082 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:57:29,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:57:29,133.133 INFO    ] No camera update needed
[2026-08-25 13:57:29,136.136 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:57:29,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:57:29,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:57:29,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:57:31,192.192 INFO    ] ================================================
[2026-08-25 13:57:31,208.208 INFO    ] Launching Daemon at Tue Aug 25 13:57:31 IST 2026
[2026-08-25 13:57:31,219.219 INFO    ] ================================================
[2026-08-25 13:57:31,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:57:31
[2026-08-25 13:57:32,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:57:32,713.713 INFO    ] Initializing speech engine...
[2026-08-25 13:57:32,723.723 INFO    ] 2026-08-25 13:57:32
[2026-08-25 13:57:32,968.968 INFO    ] 2026-08-25 13:57:32
[2026-08-25 13:57:33,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:57:33,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:57:33,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:57:33,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:57:33,460.460 INFO    ] time= 25/08/2026 13:57:33
[2026-08-25 13:57:33,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:57:33,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:57:33,676.676 INFO    ] No existing commands found in stream
[2026-08-25 13:57:38,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:57:38,700.700 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 13:57:42,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 13:57:42,705.705 INFO    ] Checking for system updates...
[2026-08-25 13:57:42,742.742 INFO    ] 200
[2026-08-25 13:57:42,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:42,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:57:42,799.799 INFO    ] No update needed
[2026-08-25 13:57:42,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 13:57:42,838.838 INFO    ] 200
[2026-08-25 13:57:42,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:42,880.880 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:57:42,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:57:42,934.934 INFO    ] No camera update needed
[2026-08-25 13:57:42,937.937 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:57:42,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:57:42,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:57:42,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:57:44,991.991 INFO    ] ================================================
[2026-08-25 13:57:45,007.007 INFO    ] Launching Daemon at Tue Aug 25 13:57:45 IST 2026
[2026-08-25 13:57:45,018.018 INFO    ] ================================================
[2026-08-25 13:57:45,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:57:45
[2026-08-25 13:57:46,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:57:46,605.605 INFO    ] Initializing speech engine...
[2026-08-25 13:57:46,619.619 INFO    ] 2026-08-25 13:57:46
[2026-08-25 13:57:46,927.927 INFO    ] 2026-08-25 13:57:46
[2026-08-25 13:57:47,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:57:47,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:57:47,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:57:47,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:57:47,369.369 INFO    ] time= 25/08/2026 13:57:47
[2026-08-25 13:57:47,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:57:47,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:57:47,622.622 INFO    ] No existing commands found in stream
[2026-08-25 13:57:52,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:57:52,650.650 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 13:57:54,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:57:54,359.359 INFO    ] Checking for system updates...
[2026-08-25 13:57:54,395.395 INFO    ] 200
[2026-08-25 13:57:54,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:54,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:57:54,456.456 INFO    ] No update needed
[2026-08-25 13:57:54,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 13:57:54,491.491 INFO    ] 200
[2026-08-25 13:57:54,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:57:54,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:57:54,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:57:54,582.582 INFO    ] No camera update needed
[2026-08-25 13:57:54,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:57:54,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:57:54,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:57:54,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:57:56,637.637 INFO    ] ================================================
[2026-08-25 13:57:56,652.652 INFO    ] Launching Daemon at Tue Aug 25 13:57:56 IST 2026
[2026-08-25 13:57:56,663.663 INFO    ] ================================================
[2026-08-25 13:57:57,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:57:57
[2026-08-25 13:57:57,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:57:58,087.087 INFO    ] Initializing speech engine...
[2026-08-25 13:57:58,095.095 INFO    ] 2026-08-25 13:57:58
[2026-08-25 13:57:58,403.403 INFO    ] 2026-08-25 13:57:58
[2026-08-25 13:57:58,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:57:58,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:57:58,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:57:58,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:57:58,889.889 INFO    ] time= 25/08/2026 13:57:58
[2026-08-25 13:57:58,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:57:58,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:57:59,057.057 INFO    ] No existing commands found in stream
[2026-08-25 13:58:04,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:58:04,071.071 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 13:58:06,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:58:06,886.886 INFO    ] Checking for system updates...
[2026-08-25 13:58:06,933.933 INFO    ] 200
[2026-08-25 13:58:06,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:06,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:06,992.992 INFO    ] No update needed
[2026-08-25 13:58:06,994.994 INFO    ] Checking for camera pi updates...
[2026-08-25 13:58:07,027.027 INFO    ] 200
[2026-08-25 13:58:07,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:07,070.070 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:58:07,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:07,129.129 INFO    ] No camera update needed
[2026-08-25 13:58:07,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:58:07,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:58:07,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:58:07,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:58:09,183.183 INFO    ] ================================================
[2026-08-25 13:58:09,200.200 INFO    ] Launching Daemon at Tue Aug 25 13:58:09 IST 2026
[2026-08-25 13:58:09,210.210 INFO    ] ================================================
[2026-08-25 13:58:09,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:58:09
[2026-08-25 13:58:10,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:58:10,628.628 INFO    ] Initializing speech engine...
[2026-08-25 13:58:10,637.637 INFO    ] 2026-08-25 13:58:10
[2026-08-25 13:58:10,898.898 INFO    ] 2026-08-25 13:58:10
[2026-08-25 13:58:10,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:58:11,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:58:11,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:58:11,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:58:11,358.358 INFO    ] time= 25/08/2026 13:58:11
[2026-08-25 13:58:11,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:58:11,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:58:11,591.591 INFO    ] No existing commands found in stream
[2026-08-25 13:58:16,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:58:16,610.610 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 13:58:18,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:58:18,448.448 INFO    ] Checking for system updates...
[2026-08-25 13:58:18,484.484 INFO    ] 200
[2026-08-25 13:58:18,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:18,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:18,548.548 INFO    ] No update needed
[2026-08-25 13:58:18,550.550 INFO    ] Checking for camera pi updates...
[2026-08-25 13:58:18,583.583 INFO    ] 200
[2026-08-25 13:58:18,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:18,631.631 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:58:18,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:18,679.679 INFO    ] No camera update needed
[2026-08-25 13:58:18,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:58:18,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:58:18,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:58:18,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:58:20,735.735 INFO    ] ================================================
[2026-08-25 13:58:20,750.750 INFO    ] Launching Daemon at Tue Aug 25 13:58:20 IST 2026
[2026-08-25 13:58:20,761.761 INFO    ] ================================================
[2026-08-25 13:58:21,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:58:21
[2026-08-25 13:58:22,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:58:22,284.284 INFO    ] Initializing speech engine...
[2026-08-25 13:58:22,297.297 INFO    ] 2026-08-25 13:58:22
[2026-08-25 13:58:22,546.546 INFO    ] 2026-08-25 13:58:22
[2026-08-25 13:58:22,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:58:22,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:58:22,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:58:22,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:58:23,032.032 INFO    ] time= 25/08/2026 13:58:22
[2026-08-25 13:58:23,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:58:23,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:58:23,254.254 INFO    ] No existing commands found in stream
[2026-08-25 13:58:28,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:58:28,292.292 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 13:58:31,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 13:58:31,878.878 INFO    ] Checking for system updates...
[2026-08-25 13:58:31,915.915 INFO    ] 200
[2026-08-25 13:58:31,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:31,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:31,973.973 INFO    ] No update needed
[2026-08-25 13:58:31,976.976 INFO    ] Checking for camera pi updates...
[2026-08-25 13:58:32,014.014 INFO    ] 200
[2026-08-25 13:58:32,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:32,071.071 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:58:32,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:32,123.123 INFO    ] No camera update needed
[2026-08-25 13:58:32,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:58:32,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:58:32,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:58:32,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:58:34,189.189 INFO    ] ================================================
[2026-08-25 13:58:34,204.204 INFO    ] Launching Daemon at Tue Aug 25 13:58:34 IST 2026
[2026-08-25 13:58:34,215.215 INFO    ] ================================================
[2026-08-25 13:58:34,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:58:34
[2026-08-25 13:58:35,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:58:35,632.632 INFO    ] Initializing speech engine...
[2026-08-25 13:58:35,642.642 INFO    ] 2026-08-25 13:58:35
[2026-08-25 13:58:35,886.886 INFO    ] 2026-08-25 13:58:35
[2026-08-25 13:58:35,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:58:36,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:58:36,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:58:36,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:58:36,335.335 INFO    ] time= 25/08/2026 13:58:36
[2026-08-25 13:58:36,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:58:36,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:58:36,580.580 INFO    ] No existing commands found in stream
[2026-08-25 13:58:41,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:58:41,607.607 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 13:58:43,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:58:43,215.215 INFO    ] Checking for system updates...
[2026-08-25 13:58:43,251.251 INFO    ] 200
[2026-08-25 13:58:43,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:43,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:43,317.317 INFO    ] No update needed
[2026-08-25 13:58:43,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 13:58:43,354.354 INFO    ] 200
[2026-08-25 13:58:43,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:43,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:58:43,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:58:43,452.452 INFO    ] No camera update needed
[2026-08-25 13:58:43,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:58:43,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:58:43,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:58:43,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:58:45,514.514 INFO    ] ================================================
[2026-08-25 13:58:45,529.529 INFO    ] Launching Daemon at Tue Aug 25 13:58:45 IST 2026
[2026-08-25 13:58:45,539.539 INFO    ] ================================================
[2026-08-25 13:58:46,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:58:46
[2026-08-25 13:58:46,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:58:46,959.959 INFO    ] Initializing speech engine...
[2026-08-25 13:58:46,968.968 INFO    ] 2026-08-25 13:58:46
[2026-08-25 13:58:47,227.227 INFO    ] 2026-08-25 13:58:47
[2026-08-25 13:58:47,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:58:47,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:58:47,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:58:47,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:58:47,691.691 INFO    ] time= 25/08/2026 13:58:47
[2026-08-25 13:58:47,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:58:47,791.791 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:58:47,932.932 INFO    ] No existing commands found in stream
[2026-08-25 13:58:52,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:58:52,957.957 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 13:58:56,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 13:58:56,517.517 INFO    ] Checking for system updates...
[2026-08-25 13:58:56,552.552 INFO    ] 200
[2026-08-25 13:58:56,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:56,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:58:56,610.610 INFO    ] No update needed
[2026-08-25 13:58:56,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 13:58:56,649.649 INFO    ] 200
[2026-08-25 13:58:56,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:58:56,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:58:56,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:58:56,845.845 INFO    ] No camera update needed
[2026-08-25 13:58:56,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:58:56,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:58:56,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:58:56,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:58:58,901.901 INFO    ] ================================================
[2026-08-25 13:58:58,917.917 INFO    ] Launching Daemon at Tue Aug 25 13:58:58 IST 2026
[2026-08-25 13:58:58,927.927 INFO    ] ================================================
[2026-08-25 13:58:59,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:58:59
[2026-08-25 13:59:00,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:59:00,385.385 INFO    ] Initializing speech engine...
[2026-08-25 13:59:00,394.394 INFO    ] 2026-08-25 13:59:00
[2026-08-25 13:59:00,643.643 INFO    ] 2026-08-25 13:59:00
[2026-08-25 13:59:00,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:59:00,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:59:00,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:59:01,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:59:01,017.017 INFO    ] time= 25/08/2026 13:59:01
[2026-08-25 13:59:01,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:59:01,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:59:01,218.218 INFO    ] No existing commands found in stream
[2026-08-25 13:59:06,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:59:06,231.231 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 13:59:07,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:59:07,492.492 INFO    ] Checking for system updates...
[2026-08-25 13:59:07,527.527 INFO    ] 200
[2026-08-25 13:59:07,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:07,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:07,592.592 INFO    ] No update needed
[2026-08-25 13:59:07,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 13:59:07,627.627 INFO    ] 200
[2026-08-25 13:59:07,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:07,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:59:07,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:07,731.731 INFO    ] No camera update needed
[2026-08-25 13:59:07,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:59:07,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:59:07,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:59:07,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:59:09,787.787 INFO    ] ================================================
[2026-08-25 13:59:09,803.803 INFO    ] Launching Daemon at Tue Aug 25 13:59:09 IST 2026
[2026-08-25 13:59:09,814.814 INFO    ] ================================================
[2026-08-25 13:59:10,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:59:10
[2026-08-25 13:59:11,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:59:11,316.316 INFO    ] Initializing speech engine...
[2026-08-25 13:59:11,325.325 INFO    ] 2026-08-25 13:59:11
[2026-08-25 13:59:11,584.584 INFO    ] 2026-08-25 13:59:11
[2026-08-25 13:59:11,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:59:11,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:59:11,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:59:12,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:59:12,036.036 INFO    ] time= 25/08/2026 13:59:12
[2026-08-25 13:59:12,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:59:12,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:59:12,256.256 INFO    ] No existing commands found in stream
[2026-08-25 13:59:17,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:59:17,289.289 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 13:59:18,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:59:18,262.262 INFO    ] Checking for system updates...
[2026-08-25 13:59:18,298.298 INFO    ] 200
[2026-08-25 13:59:18,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:18,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:18,355.355 INFO    ] No update needed
[2026-08-25 13:59:18,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 13:59:18,391.391 INFO    ] 200
[2026-08-25 13:59:18,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:18,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:59:18,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:18,484.484 INFO    ] No camera update needed
[2026-08-25 13:59:18,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:59:18,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:59:18,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:59:18,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:59:20,539.539 INFO    ] ================================================
[2026-08-25 13:59:20,557.557 INFO    ] Launching Daemon at Tue Aug 25 13:59:20 IST 2026
[2026-08-25 13:59:20,569.569 INFO    ] ================================================
[2026-08-25 13:59:21,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:59:21
[2026-08-25 13:59:21,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:59:21,981.981 INFO    ] Initializing speech engine...
[2026-08-25 13:59:21,990.990 INFO    ] 2026-08-25 13:59:21
[2026-08-25 13:59:22,237.237 INFO    ] 2026-08-25 13:59:22
[2026-08-25 13:59:22,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:59:22,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:59:22,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:59:22,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:59:22,712.712 INFO    ] time= 25/08/2026 13:59:22
[2026-08-25 13:59:22,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:59:22,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:59:22,936.936 INFO    ] No existing commands found in stream
[2026-08-25 13:59:27,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:59:27,963.963 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 13:59:32,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 13:59:32,341.341 INFO    ] Checking for system updates...
[2026-08-25 13:59:32,389.389 INFO    ] 200
[2026-08-25 13:59:32,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:32,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:59:32,462.462 INFO    ] No update needed
[2026-08-25 13:59:32,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 13:59:32,502.502 INFO    ] 200
[2026-08-25 13:59:32,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:32,549.549 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:59:32,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 13:59:32,604.604 INFO    ] No camera update needed
[2026-08-25 13:59:32,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:59:32,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:59:32,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:59:32,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:59:34,667.667 INFO    ] ================================================
[2026-08-25 13:59:34,682.682 INFO    ] Launching Daemon at Tue Aug 25 13:59:34 IST 2026
[2026-08-25 13:59:34,694.694 INFO    ] ================================================
[2026-08-25 13:59:35,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:59:35
[2026-08-25 13:59:36,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:59:36,315.315 INFO    ] Initializing speech engine...
[2026-08-25 13:59:36,326.326 INFO    ] 2026-08-25 13:59:36
[2026-08-25 13:59:36,638.638 INFO    ] 2026-08-25 13:59:36
[2026-08-25 13:59:36,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:59:36,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:59:36,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:59:37,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:59:37,140.140 INFO    ] time= 25/08/2026 13:59:37
[2026-08-25 13:59:37,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:59:37,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:59:37,311.311 INFO    ] No existing commands found in stream
[2026-08-25 13:59:42,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:59:42,345.345 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 13:59:44,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:59:44,080.080 INFO    ] Checking for system updates...
[2026-08-25 13:59:44,121.121 INFO    ] 200
[2026-08-25 13:59:44,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:44,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:44,185.185 INFO    ] No update needed
[2026-08-25 13:59:44,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 13:59:44,221.221 INFO    ] 200
[2026-08-25 13:59:44,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:44,265.265 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:59:44,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:44,321.321 INFO    ] No camera update needed
[2026-08-25 13:59:44,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:59:44,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:59:44,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:59:44,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:59:46,375.375 INFO    ] ================================================
[2026-08-25 13:59:46,391.391 INFO    ] Launching Daemon at Tue Aug 25 13:59:46 IST 2026
[2026-08-25 13:59:46,402.402 INFO    ] ================================================
[2026-08-25 13:59:46,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:59:46
[2026-08-25 13:59:47,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:59:47,847.847 INFO    ] Initializing speech engine...
[2026-08-25 13:59:47,872.872 INFO    ] 2026-08-25 13:59:47
[2026-08-25 13:59:48,149.149 INFO    ] 2026-08-25 13:59:48
[2026-08-25 13:59:48,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:59:48,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:59:48,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:59:48,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:59:48,579.579 INFO    ] time= 25/08/2026 13:59:48
[2026-08-25 13:59:48,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:59:48,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:59:48,790.790 INFO    ] No existing commands found in stream
[2026-08-25 13:59:53,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 13:59:53,814.814 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 13:59:54,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 13:59:54,849.849 INFO    ] Checking for system updates...
[2026-08-25 13:59:54,885.885 INFO    ] 200
[2026-08-25 13:59:54,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:54,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:54,943.943 INFO    ] No update needed
[2026-08-25 13:59:54,945.945 INFO    ] Checking for camera pi updates...
[2026-08-25 13:59:54,979.979 INFO    ] 200
[2026-08-25 13:59:54,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 13:59:55,022.022 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 13:59:55,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 13:59:55,070.070 INFO    ] No camera update needed
[2026-08-25 13:59:55,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 13:59:55,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 13:59:55,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 13:59:55,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 13:59:57,125.125 INFO    ] ================================================
[2026-08-25 13:59:57,142.142 INFO    ] Launching Daemon at Tue Aug 25 13:59:57 IST 2026
[2026-08-25 13:59:57,152.152 INFO    ] ================================================
[2026-08-25 13:59:57,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 13:59:57
[2026-08-25 13:59:58,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 13:59:58,827.827 INFO    ] Initializing speech engine...
[2026-08-25 13:59:58,833.833 INFO    ] 2026-08-25 13:59:58
[2026-08-25 13:59:59,120.120 INFO    ] 2026-08-25 13:59:59
[2026-08-25 13:59:59,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 13:59:59,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 13:59:59,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 13:59:59,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 13:59:59,618.618 INFO    ] time= 25/08/2026 13:59:59
[2026-08-25 13:59:59,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 13:59:59,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 13:59:59,842.842 INFO    ] No existing commands found in stream
[2026-08-25 14:00:04,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:00:04,864.864 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 14:00:09,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:00:09,684.684 INFO    ] Checking for system updates...
[2026-08-25 14:00:09,737.737 INFO    ] 200
[2026-08-25 14:00:09,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:09,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:00:09,819.819 INFO    ] No update needed
[2026-08-25 14:00:09,821.821 INFO    ] Checking for camera pi updates...
[2026-08-25 14:00:09,863.863 INFO    ] 200
[2026-08-25 14:00:09,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:09,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:00:09,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:00:09,982.982 INFO    ] No camera update needed
[2026-08-25 14:00:09,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:00:09,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:00:09,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:00:09,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:00:12,037.037 INFO    ] ================================================
[2026-08-25 14:00:12,052.052 INFO    ] Launching Daemon at Tue Aug 25 14:00:12 IST 2026
[2026-08-25 14:00:12,063.063 INFO    ] ================================================
[2026-08-25 14:00:12,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:00:12
[2026-08-25 14:00:13,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:00:13,688.688 INFO    ] Initializing speech engine...
[2026-08-25 14:00:13,696.696 INFO    ] 2026-08-25 14:00:13
[2026-08-25 14:00:13,968.968 INFO    ] 2026-08-25 14:00:13
[2026-08-25 14:00:14,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:00:14,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:00:14,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:00:14,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:00:14,478.478 INFO    ] time= 25/08/2026 14:00:14
[2026-08-25 14:00:14,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:00:14,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:00:14,699.699 INFO    ] No existing commands found in stream
[2026-08-25 14:00:19,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:00:19,721.721 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 14:00:20,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:00:20,783.783 INFO    ] Checking for system updates...
[2026-08-25 14:00:20,820.820 INFO    ] 200
[2026-08-25 14:00:20,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:20,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:20,879.879 INFO    ] No update needed
[2026-08-25 14:00:20,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 14:00:20,916.916 INFO    ] 200
[2026-08-25 14:00:20,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:20,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:00:21,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:21,042.042 INFO    ] No camera update needed
[2026-08-25 14:00:21,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:00:21,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:00:21,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:00:21,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:00:23,100.100 INFO    ] ================================================
[2026-08-25 14:00:23,116.116 INFO    ] Launching Daemon at Tue Aug 25 14:00:23 IST 2026
[2026-08-25 14:00:23,127.127 INFO    ] ================================================
[2026-08-25 14:00:23,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:00:23
[2026-08-25 14:00:24,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:00:24,763.763 INFO    ] Initializing speech engine...
[2026-08-25 14:00:24,776.776 INFO    ] 2026-08-25 14:00:24
[2026-08-25 14:00:25,087.087 INFO    ] 2026-08-25 14:00:25
[2026-08-25 14:00:25,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:00:25,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:00:25,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:00:25,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:00:25,587.587 INFO    ] time= 25/08/2026 14:00:25
[2026-08-25 14:00:25,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:00:25,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:00:25,808.808 INFO    ] No existing commands found in stream
[2026-08-25 14:00:30,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:00:30,838.838 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 14:00:31,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:00:31,384.384 INFO    ] Checking for system updates...
[2026-08-25 14:00:31,421.421 INFO    ] 200
[2026-08-25 14:00:31,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:31,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:31,485.485 INFO    ] No update needed
[2026-08-25 14:00:31,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 14:00:31,525.525 INFO    ] 200
[2026-08-25 14:00:31,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:31,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:00:31,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:31,627.627 INFO    ] No camera update needed
[2026-08-25 14:00:31,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:00:31,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:00:31,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:00:31,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:00:33,690.690 INFO    ] ================================================
[2026-08-25 14:00:33,705.705 INFO    ] Launching Daemon at Tue Aug 25 14:00:33 IST 2026
[2026-08-25 14:00:33,715.715 INFO    ] ================================================
[2026-08-25 14:00:34,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:00:34
[2026-08-25 14:00:34,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:00:35,168.168 INFO    ] Initializing speech engine...
[2026-08-25 14:00:35,184.184 INFO    ] 2026-08-25 14:00:35
[2026-08-25 14:00:35,471.471 INFO    ] 2026-08-25 14:00:35
[2026-08-25 14:00:35,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:00:35,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:00:35,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:00:35,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:00:35,857.857 INFO    ] time= 25/08/2026 14:00:35
[2026-08-25 14:00:35,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:00:35,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:00:35,985.985 INFO    ] No existing commands found in stream
[2026-08-25 14:00:40,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:00:41,000.000 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 14:00:43,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:00:43,530.530 INFO    ] Checking for system updates...
[2026-08-25 14:00:43,572.572 INFO    ] 200
[2026-08-25 14:00:43,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:43,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:43,629.629 INFO    ] No update needed
[2026-08-25 14:00:43,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 14:00:43,669.669 INFO    ] 200
[2026-08-25 14:00:43,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:43,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:00:43,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:43,783.783 INFO    ] No camera update needed
[2026-08-25 14:00:43,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:00:43,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:00:43,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:00:43,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:00:45,839.839 INFO    ] ================================================
[2026-08-25 14:00:45,854.854 INFO    ] Launching Daemon at Tue Aug 25 14:00:45 IST 2026
[2026-08-25 14:00:45,865.865 INFO    ] ================================================
[2026-08-25 14:00:46,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:00:46
[2026-08-25 14:00:47,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:00:47,333.333 INFO    ] Initializing speech engine...
[2026-08-25 14:00:47,344.344 INFO    ] 2026-08-25 14:00:47
[2026-08-25 14:00:47,592.592 INFO    ] 2026-08-25 14:00:47
[2026-08-25 14:00:47,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:00:47,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:00:47,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:00:48,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:00:48,065.065 INFO    ] time= 25/08/2026 14:00:48
[2026-08-25 14:00:48,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:00:48,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:00:48,298.298 INFO    ] No existing commands found in stream
[2026-08-25 14:00:53,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:00:53,317.317 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 14:00:56,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:00:56,496.496 INFO    ] Checking for system updates...
[2026-08-25 14:00:56,532.532 INFO    ] 200
[2026-08-25 14:00:56,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:56,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:56,590.590 INFO    ] No update needed
[2026-08-25 14:00:56,592.592 INFO    ] Checking for camera pi updates...
[2026-08-25 14:00:56,626.626 INFO    ] 200
[2026-08-25 14:00:56,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:00:56,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:00:56,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:00:56,725.725 INFO    ] No camera update needed
[2026-08-25 14:00:56,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:00:56,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:00:56,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:00:56,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:00:58,781.781 INFO    ] ================================================
[2026-08-25 14:00:58,796.796 INFO    ] Launching Daemon at Tue Aug 25 14:00:58 IST 2026
[2026-08-25 14:00:58,807.807 INFO    ] ================================================
[2026-08-25 14:00:59,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:00:59
[2026-08-25 14:00:59,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:01:00,260.260 INFO    ] Initializing speech engine...
[2026-08-25 14:01:00,270.270 INFO    ] 2026-08-25 14:01:00
[2026-08-25 14:01:00,532.532 INFO    ] 2026-08-25 14:01:00
[2026-08-25 14:01:00,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:01:00,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:01:00,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:01:00,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:01:01,013.013 INFO    ] time= 25/08/2026 14:01:00
[2026-08-25 14:01:01,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:01:01,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:01:01,232.232 INFO    ] No existing commands found in stream
[2026-08-25 14:01:06,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:01:06,255.255 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 14:01:07,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:01:07,513.513 INFO    ] Checking for system updates...
[2026-08-25 14:01:07,548.548 INFO    ] 200
[2026-08-25 14:01:07,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:07,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:01:07,616.616 INFO    ] No update needed
[2026-08-25 14:01:07,619.619 INFO    ] Checking for camera pi updates...
[2026-08-25 14:01:07,653.653 INFO    ] 200
[2026-08-25 14:01:07,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:07,701.701 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:01:07,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:01:07,757.757 INFO    ] No camera update needed
[2026-08-25 14:01:07,759.759 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:01:07,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:01:07,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:01:07,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:01:09,815.815 INFO    ] ================================================
[2026-08-25 14:01:09,830.830 INFO    ] Launching Daemon at Tue Aug 25 14:01:09 IST 2026
[2026-08-25 14:01:09,841.841 INFO    ] ================================================
[2026-08-25 14:01:10,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:01:10
[2026-08-25 14:01:11,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:01:11,434.434 INFO    ] Initializing speech engine...
[2026-08-25 14:01:11,447.447 INFO    ] 2026-08-25 14:01:11
[2026-08-25 14:01:11,726.726 INFO    ] 2026-08-25 14:01:11
[2026-08-25 14:01:11,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:01:11,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:01:12,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:01:12,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:01:12,181.181 INFO    ] time= 25/08/2026 14:01:12
[2026-08-25 14:01:12,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:01:12,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:01:12,401.401 INFO    ] No existing commands found in stream
[2026-08-25 14:01:17,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:01:17,427.427 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 14:01:20,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:01:20,060.060 INFO    ] Checking for system updates...
[2026-08-25 14:01:20,096.096 INFO    ] 200
[2026-08-25 14:01:20,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:20,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:01:20,160.160 INFO    ] No update needed
[2026-08-25 14:01:20,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 14:01:20,197.197 INFO    ] 200
[2026-08-25 14:01:20,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:20,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:01:20,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:01:20,293.293 INFO    ] No camera update needed
[2026-08-25 14:01:20,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:01:20,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:01:20,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:01:20,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:01:22,351.351 INFO    ] ================================================
[2026-08-25 14:01:22,366.366 INFO    ] Launching Daemon at Tue Aug 25 14:01:22 IST 2026
[2026-08-25 14:01:22,377.377 INFO    ] ================================================
[2026-08-25 14:01:23,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:01:23
[2026-08-25 14:01:23,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:01:23,986.986 INFO    ] Initializing speech engine...
[2026-08-25 14:01:23,997.997 INFO    ] 2026-08-25 14:01:23
[2026-08-25 14:01:24,304.304 INFO    ] 2026-08-25 14:01:24
[2026-08-25 14:01:24,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:01:24,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:01:24,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:01:24,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:01:24,804.804 INFO    ] time= 25/08/2026 14:01:24
[2026-08-25 14:01:24,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:01:24,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:01:24,944.944 INFO    ] No existing commands found in stream
[2026-08-25 14:01:29,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:01:29,969.969 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 14:01:31,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:01:31,608.608 INFO    ] Checking for system updates...
[2026-08-25 14:01:31,643.643 INFO    ] 200
[2026-08-25 14:01:31,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:31,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:01:31,701.701 INFO    ] No update needed
[2026-08-25 14:01:31,704.704 INFO    ] Checking for camera pi updates...
[2026-08-25 14:01:31,737.737 INFO    ] 200
[2026-08-25 14:01:31,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:31,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:01:31,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:01:31,843.843 INFO    ] No camera update needed
[2026-08-25 14:01:31,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:01:31,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:01:31,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:01:31,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:01:33,904.904 INFO    ] ================================================
[2026-08-25 14:01:33,919.919 INFO    ] Launching Daemon at Tue Aug 25 14:01:33 IST 2026
[2026-08-25 14:01:33,929.929 INFO    ] ================================================
[2026-08-25 14:01:34,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:01:34
[2026-08-25 14:01:35,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:01:35,395.395 INFO    ] Initializing speech engine...
[2026-08-25 14:01:35,400.400 INFO    ] 2026-08-25 14:01:35
[2026-08-25 14:01:35,663.663 INFO    ] 2026-08-25 14:01:35
[2026-08-25 14:01:35,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:01:35,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:01:35,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:01:36,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:01:36,129.129 INFO    ] time= 25/08/2026 14:01:36
[2026-08-25 14:01:36,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:01:36,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:01:36,332.332 INFO    ] No existing commands found in stream
[2026-08-25 14:01:41,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:01:41,362.362 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 14:01:44,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:01:44,792.792 INFO    ] Checking for system updates...
[2026-08-25 14:01:44,827.827 INFO    ] 200
[2026-08-25 14:01:44,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:44,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:01:44,883.883 INFO    ] No update needed
[2026-08-25 14:01:44,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 14:01:44,927.927 INFO    ] 200
[2026-08-25 14:01:44,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:01:44,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:01:45,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:01:45,025.025 INFO    ] No camera update needed
[2026-08-25 14:01:45,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:01:45,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:01:45,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:01:45,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:01:47,080.080 INFO    ] ================================================
[2026-08-25 14:01:47,095.095 INFO    ] Launching Daemon at Tue Aug 25 14:01:47 IST 2026
[2026-08-25 14:01:47,106.106 INFO    ] ================================================
[2026-08-25 14:01:47,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:01:47
[2026-08-25 14:01:48,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:01:48,512.512 INFO    ] Initializing speech engine...
[2026-08-25 14:01:48,528.528 INFO    ] 2026-08-25 14:01:48
[2026-08-25 14:01:48,779.779 INFO    ] 2026-08-25 14:01:48
[2026-08-25 14:01:48,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:01:49,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:01:49,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:01:49,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:01:49,280.280 INFO    ] time= 25/08/2026 14:01:49
[2026-08-25 14:01:49,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:01:49,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:01:49,488.488 INFO    ] No existing commands found in stream
[2026-08-25 14:01:54,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:01:54,504.504 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 14:02:00,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:02:00,070.070 INFO    ] Checking for system updates...
[2026-08-25 14:02:00,108.108 INFO    ] 200
[2026-08-25 14:02:00,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:00,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:00,166.166 INFO    ] No update needed
[2026-08-25 14:02:00,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 14:02:00,202.202 INFO    ] 200
[2026-08-25 14:02:00,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:00,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:02:00,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:00,297.297 INFO    ] No camera update needed
[2026-08-25 14:02:00,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:02:00,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:02:00,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:02:00,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:02:02,355.355 INFO    ] ================================================
[2026-08-25 14:02:02,372.372 INFO    ] Launching Daemon at Tue Aug 25 14:02:02 IST 2026
[2026-08-25 14:02:02,389.389 INFO    ] ================================================
[2026-08-25 14:02:03,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:02:03
[2026-08-25 14:02:03,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:02:04,087.087 INFO    ] Initializing speech engine...
[2026-08-25 14:02:04,097.097 INFO    ] 2026-08-25 14:02:04
[2026-08-25 14:02:04,349.349 INFO    ] 2026-08-25 14:02:04
[2026-08-25 14:02:04,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:02:04,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:02:04,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:02:04,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:02:04,726.726 INFO    ] time= 25/08/2026 14:02:04
[2026-08-25 14:02:04,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:02:04,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:02:04,910.910 INFO    ] No existing commands found in stream
[2026-08-25 14:02:09,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:02:09,940.940 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 14:02:11,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:02:11,660.660 INFO    ] Checking for system updates...
[2026-08-25 14:02:11,696.696 INFO    ] 200
[2026-08-25 14:02:11,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:11,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:11,760.760 INFO    ] No update needed
[2026-08-25 14:02:11,763.763 INFO    ] Checking for camera pi updates...
[2026-08-25 14:02:11,797.797 INFO    ] 200
[2026-08-25 14:02:11,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:11,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:02:11,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:11,899.899 INFO    ] No camera update needed
[2026-08-25 14:02:11,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:02:11,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:02:11,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:02:11,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:02:13,958.958 INFO    ] ================================================
[2026-08-25 14:02:13,973.973 INFO    ] Launching Daemon at Tue Aug 25 14:02:13 IST 2026
[2026-08-25 14:02:13,984.984 INFO    ] ================================================
[2026-08-25 14:02:14,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:02:14
[2026-08-25 14:02:15,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:02:15,396.396 INFO    ] Initializing speech engine...
[2026-08-25 14:02:15,403.403 INFO    ] 2026-08-25 14:02:15
[2026-08-25 14:02:15,699.699 INFO    ] 2026-08-25 14:02:15
[2026-08-25 14:02:15,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:02:15,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:02:15,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:02:16,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:02:16,099.099 INFO    ] time= 25/08/2026 14:02:16
[2026-08-25 14:02:16,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:02:16,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:02:16,211.211 INFO    ] No existing commands found in stream
[2026-08-25 14:02:21,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:02:21,228.228 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 14:02:23,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:02:23,306.306 INFO    ] Checking for system updates...
[2026-08-25 14:02:23,345.345 INFO    ] 200
[2026-08-25 14:02:23,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:23,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:23,416.416 INFO    ] No update needed
[2026-08-25 14:02:23,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 14:02:23,453.453 INFO    ] 200
[2026-08-25 14:02:23,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:23,497.497 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:02:23,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:23,549.549 INFO    ] No camera update needed
[2026-08-25 14:02:23,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:02:23,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:02:23,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:02:23,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:02:25,603.603 INFO    ] ================================================
[2026-08-25 14:02:25,618.618 INFO    ] Launching Daemon at Tue Aug 25 14:02:25 IST 2026
[2026-08-25 14:02:25,630.630 INFO    ] ================================================
[2026-08-25 14:02:26,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:02:26
[2026-08-25 14:02:26,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:02:27,053.053 INFO    ] Initializing speech engine...
[2026-08-25 14:02:27,059.059 INFO    ] 2026-08-25 14:02:27
[2026-08-25 14:02:27,318.318 INFO    ] 2026-08-25 14:02:27
[2026-08-25 14:02:27,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:02:27,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:02:27,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:02:27,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:02:27,777.777 INFO    ] time= 25/08/2026 14:02:27
[2026-08-25 14:02:27,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:02:27,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:02:28,015.015 INFO    ] No existing commands found in stream
[2026-08-25 14:02:33,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:02:33,040.040 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 14:02:35,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:02:35,420.420 INFO    ] Checking for system updates...
[2026-08-25 14:02:35,457.457 INFO    ] 200
[2026-08-25 14:02:35,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:35,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:35,523.523 INFO    ] No update needed
[2026-08-25 14:02:35,526.526 INFO    ] Checking for camera pi updates...
[2026-08-25 14:02:35,563.563 INFO    ] 200
[2026-08-25 14:02:35,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:35,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:02:35,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:02:35,660.660 INFO    ] No camera update needed
[2026-08-25 14:02:35,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:02:35,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:02:35,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:02:35,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:02:37,718.718 INFO    ] ================================================
[2026-08-25 14:02:37,734.734 INFO    ] Launching Daemon at Tue Aug 25 14:02:37 IST 2026
[2026-08-25 14:02:37,746.746 INFO    ] ================================================
[2026-08-25 14:02:38,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:02:38
[2026-08-25 14:02:38,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:02:39,176.176 INFO    ] Initializing speech engine...
[2026-08-25 14:02:39,185.185 INFO    ] 2026-08-25 14:02:39
[2026-08-25 14:02:39,433.433 INFO    ] 2026-08-25 14:02:39
[2026-08-25 14:02:39,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:02:39,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:02:39,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:02:39,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:02:39,926.926 INFO    ] time= 25/08/2026 14:02:39
[2026-08-25 14:02:39,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:02:39,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:02:40,136.136 INFO    ] No existing commands found in stream
[2026-08-25 14:02:45,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:02:45,159.159 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 14:02:48,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:02:48,813.813 INFO    ] Checking for system updates...
[2026-08-25 14:02:48,848.848 INFO    ] 200
[2026-08-25 14:02:48,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:48,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:02:48,907.907 INFO    ] No update needed
[2026-08-25 14:02:48,909.909 INFO    ] Checking for camera pi updates...
[2026-08-25 14:02:48,942.942 INFO    ] 200
[2026-08-25 14:02:48,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:02:48,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:02:49,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:02:49,029.029 INFO    ] No camera update needed
[2026-08-25 14:02:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:02:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:02:49,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:02:49,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:02:51,087.087 INFO    ] ================================================
[2026-08-25 14:02:51,103.103 INFO    ] Launching Daemon at Tue Aug 25 14:02:51 IST 2026
[2026-08-25 14:02:51,113.113 INFO    ] ================================================
[2026-08-25 14:02:51,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:02:51
[2026-08-25 14:02:52,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:02:52,531.531 INFO    ] Initializing speech engine...
[2026-08-25 14:02:52,540.540 INFO    ] 2026-08-25 14:02:52
[2026-08-25 14:02:52,800.800 INFO    ] 2026-08-25 14:02:52
[2026-08-25 14:02:52,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:02:53,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:02:53,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:02:53,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:02:53,300.300 INFO    ] time= 25/08/2026 14:02:53
[2026-08-25 14:02:53,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:02:53,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:02:53,511.511 INFO    ] No existing commands found in stream
[2026-08-25 14:02:58,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:02:58,533.533 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 14:03:00,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:03:00,662.662 INFO    ] Checking for system updates...
[2026-08-25 14:03:00,699.699 INFO    ] 200
[2026-08-25 14:03:00,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:00,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:03:00,756.756 INFO    ] No update needed
[2026-08-25 14:03:00,758.758 INFO    ] Checking for camera pi updates...
[2026-08-25 14:03:00,794.794 INFO    ] 200
[2026-08-25 14:03:00,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:00,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:03:00,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:03:00,896.896 INFO    ] No camera update needed
[2026-08-25 14:03:00,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:03:00,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:03:00,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:03:00,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:03:02,964.964 INFO    ] ================================================
[2026-08-25 14:03:02,987.987 INFO    ] Launching Daemon at Tue Aug 25 14:03:02 IST 2026
[2026-08-25 14:03:03,004.004 INFO    ] ================================================
[2026-08-25 14:03:03,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:03:03
[2026-08-25 14:03:04,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:03:04,567.567 INFO    ] Initializing speech engine...
[2026-08-25 14:03:04,586.586 INFO    ] 2026-08-25 14:03:04
[2026-08-25 14:03:04,850.850 INFO    ] 2026-08-25 14:03:04
[2026-08-25 14:03:04,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:03:05,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:03:05,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:03:05,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:03:05,395.395 INFO    ] time= 25/08/2026 14:03:05
[2026-08-25 14:03:05,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:03:05,421.421 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:03:05,548.548 INFO    ] No existing commands found in stream
[2026-08-25 14:03:10,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:03:10,564.564 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 14:03:14,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:03:14,588.588 INFO    ] Checking for system updates...
[2026-08-25 14:03:14,624.624 INFO    ] 200
[2026-08-25 14:03:14,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:14,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:03:14,688.688 INFO    ] No update needed
[2026-08-25 14:03:14,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 14:03:14,725.725 INFO    ] 200
[2026-08-25 14:03:14,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:14,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:03:14,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:03:14,934.934 INFO    ] No camera update needed
[2026-08-25 14:03:14,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:03:14,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:03:14,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:03:14,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:03:16,989.989 INFO    ] ================================================
[2026-08-25 14:03:17,006.006 INFO    ] Launching Daemon at Tue Aug 25 14:03:17 IST 2026
[2026-08-25 14:03:17,017.017 INFO    ] ================================================
[2026-08-25 14:03:17,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:03:17
[2026-08-25 14:03:18,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:03:18,443.443 INFO    ] Initializing speech engine...
[2026-08-25 14:03:18,451.451 INFO    ] 2026-08-25 14:03:18
[2026-08-25 14:03:18,703.703 INFO    ] 2026-08-25 14:03:18
[2026-08-25 14:03:18,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:03:18,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:03:18,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:03:19,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:03:19,179.179 INFO    ] time= 25/08/2026 14:03:19
[2026-08-25 14:03:19,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:03:19,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:03:19,361.361 INFO    ] No existing commands found in stream
[2026-08-25 14:03:24,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:03:24,373.373 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 14:03:27,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:03:27,948.948 INFO    ] Checking for system updates...
[2026-08-25 14:03:27,984.984 INFO    ] 200
[2026-08-25 14:03:27,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:28,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:03:28,043.043 INFO    ] No update needed
[2026-08-25 14:03:28,045.045 INFO    ] Checking for camera pi updates...
[2026-08-25 14:03:28,079.079 INFO    ] 200
[2026-08-25 14:03:28,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:28,121.121 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:03:28,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:03:28,168.168 INFO    ] No camera update needed
[2026-08-25 14:03:28,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:03:28,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:03:28,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:03:28,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:03:30,225.225 INFO    ] ================================================
[2026-08-25 14:03:30,241.241 INFO    ] Launching Daemon at Tue Aug 25 14:03:30 IST 2026
[2026-08-25 14:03:30,252.252 INFO    ] ================================================
[2026-08-25 14:03:30,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:03:30
[2026-08-25 14:03:31,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:03:31,666.666 INFO    ] Initializing speech engine...
[2026-08-25 14:03:31,674.674 INFO    ] 2026-08-25 14:03:31
[2026-08-25 14:03:31,926.926 INFO    ] 2026-08-25 14:03:31
[2026-08-25 14:03:31,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:03:32,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:03:32,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:03:32,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:03:32,348.348 INFO    ] time= 25/08/2026 14:03:32
[2026-08-25 14:03:32,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:03:32,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:03:32,466.466 INFO    ] No existing commands found in stream
[2026-08-25 14:03:37,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:03:37,482.482 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 14:03:41,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:03:41,041.041 INFO    ] Checking for system updates...
[2026-08-25 14:03:41,080.080 INFO    ] 200
[2026-08-25 14:03:41,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:41,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:03:41,138.138 INFO    ] No update needed
[2026-08-25 14:03:41,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 14:03:41,174.174 INFO    ] 200
[2026-08-25 14:03:41,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:41,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:03:41,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:03:41,265.265 INFO    ] No camera update needed
[2026-08-25 14:03:41,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:03:41,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:03:41,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:03:41,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:03:43,321.321 INFO    ] ================================================
[2026-08-25 14:03:43,338.338 INFO    ] Launching Daemon at Tue Aug 25 14:03:43 IST 2026
[2026-08-25 14:03:43,349.349 INFO    ] ================================================
[2026-08-25 14:03:44,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:03:44
[2026-08-25 14:03:44,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:03:44,895.895 INFO    ] Initializing speech engine...
[2026-08-25 14:03:44,921.921 INFO    ] 2026-08-25 14:03:44
[2026-08-25 14:03:45,178.178 INFO    ] 2026-08-25 14:03:45
[2026-08-25 14:03:45,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:03:45,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:03:45,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:03:45,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:03:45,625.625 INFO    ] time= 25/08/2026 14:03:45
[2026-08-25 14:03:45,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:03:45,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:03:45,783.783 INFO    ] No existing commands found in stream
[2026-08-25 14:03:50,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:03:50,796.796 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 14:03:54,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:03:54,242.242 INFO    ] Checking for system updates...
[2026-08-25 14:03:54,279.279 INFO    ] 200
[2026-08-25 14:03:54,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:54,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:03:54,339.339 INFO    ] No update needed
[2026-08-25 14:03:54,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 14:03:54,377.377 INFO    ] 200
[2026-08-25 14:03:54,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:03:54,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:03:54,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:03:54,474.474 INFO    ] No camera update needed
[2026-08-25 14:03:54,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:03:54,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:03:54,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:03:54,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:03:56,534.534 INFO    ] ================================================
[2026-08-25 14:03:56,549.549 INFO    ] Launching Daemon at Tue Aug 25 14:03:56 IST 2026
[2026-08-25 14:03:56,560.560 INFO    ] ================================================
[2026-08-25 14:03:57,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:03:57
[2026-08-25 14:03:57,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:03:58,230.230 INFO    ] Initializing speech engine...
[2026-08-25 14:03:58,238.238 INFO    ] 2026-08-25 14:03:58
[2026-08-25 14:03:58,518.518 INFO    ] 2026-08-25 14:03:58
[2026-08-25 14:03:58,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:03:58,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:03:58,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:03:58,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:03:58,996.996 INFO    ] time= 25/08/2026 14:03:58
[2026-08-25 14:03:59,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:03:59,091.091 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:03:59,238.238 INFO    ] No existing commands found in stream
[2026-08-25 14:04:04,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:04:04,270.270 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 14:04:06,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:04:06,582.582 INFO    ] Checking for system updates...
[2026-08-25 14:04:06,628.628 INFO    ] 200
[2026-08-25 14:04:06,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:06,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:04:06,695.695 INFO    ] No update needed
[2026-08-25 14:04:06,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 14:04:06,732.732 INFO    ] 200
[2026-08-25 14:04:06,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:06,777.777 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:04:06,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:04:06,831.831 INFO    ] No camera update needed
[2026-08-25 14:04:06,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:04:06,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:04:06,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:04:06,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:04:08,891.891 INFO    ] ================================================
[2026-08-25 14:04:08,907.907 INFO    ] Launching Daemon at Tue Aug 25 14:04:08 IST 2026
[2026-08-25 14:04:08,918.918 INFO    ] ================================================
[2026-08-25 14:04:09,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:04:09
[2026-08-25 14:04:10,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:04:10,378.378 INFO    ] Initializing speech engine...
[2026-08-25 14:04:10,386.386 INFO    ] 2026-08-25 14:04:10
[2026-08-25 14:04:10,644.644 INFO    ] 2026-08-25 14:04:10
[2026-08-25 14:04:10,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:04:10,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:04:10,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:04:11,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:04:11,134.134 INFO    ] time= 25/08/2026 14:04:11
[2026-08-25 14:04:11,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:04:11,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:04:11,344.344 INFO    ] No existing commands found in stream
[2026-08-25 14:04:16,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:04:16,359.359 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 14:04:19,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:04:19,386.386 INFO    ] Checking for system updates...
[2026-08-25 14:04:19,422.422 INFO    ] 200
[2026-08-25 14:04:19,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:19,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:04:19,481.481 INFO    ] No update needed
[2026-08-25 14:04:19,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 14:04:19,521.521 INFO    ] 200
[2026-08-25 14:04:19,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:19,565.565 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:04:19,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:04:19,614.614 INFO    ] No camera update needed
[2026-08-25 14:04:19,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:04:19,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:04:19,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:04:19,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:04:21,670.670 INFO    ] ================================================
[2026-08-25 14:04:21,686.686 INFO    ] Launching Daemon at Tue Aug 25 14:04:21 IST 2026
[2026-08-25 14:04:21,701.701 INFO    ] ================================================
[2026-08-25 14:04:22,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:04:22
[2026-08-25 14:04:23,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:04:23,293.293 INFO    ] Initializing speech engine...
[2026-08-25 14:04:23,303.303 INFO    ] 2026-08-25 14:04:23
[2026-08-25 14:04:23,568.568 INFO    ] 2026-08-25 14:04:23
[2026-08-25 14:04:23,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:04:23,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:04:23,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:04:23,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:04:23,964.964 INFO    ] time= 25/08/2026 14:04:23
[2026-08-25 14:04:23,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:04:23,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:04:24,072.072 INFO    ] No existing commands found in stream
[2026-08-25 14:04:29,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:04:29,088.088 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 14:04:32,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:04:32,826.826 INFO    ] Checking for system updates...
[2026-08-25 14:04:32,862.862 INFO    ] 200
[2026-08-25 14:04:32,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:32,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:04:32,926.926 INFO    ] No update needed
[2026-08-25 14:04:32,928.928 INFO    ] Checking for camera pi updates...
[2026-08-25 14:04:32,971.971 INFO    ] 200
[2026-08-25 14:04:32,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:33,022.022 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:04:33,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:04:33,090.090 INFO    ] No camera update needed
[2026-08-25 14:04:33,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:04:33,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:04:33,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:04:33,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:04:35,149.149 INFO    ] ================================================
[2026-08-25 14:04:35,165.165 INFO    ] Launching Daemon at Tue Aug 25 14:04:35 IST 2026
[2026-08-25 14:04:35,175.175 INFO    ] ================================================
[2026-08-25 14:04:35,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:04:35
[2026-08-25 14:04:36,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:04:36,605.605 INFO    ] Initializing speech engine...
[2026-08-25 14:04:36,620.620 INFO    ] 2026-08-25 14:04:36
[2026-08-25 14:04:36,904.904 INFO    ] 2026-08-25 14:04:36
[2026-08-25 14:04:36,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:04:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:04:37,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:04:37,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:04:37,322.322 INFO    ] time= 25/08/2026 14:04:37
[2026-08-25 14:04:37,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:04:37,337.337 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:04:37,414.414 INFO    ] No existing commands found in stream
[2026-08-25 14:04:42,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:04:42,452.452 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 14:04:43,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:04:43,639.639 INFO    ] Checking for system updates...
[2026-08-25 14:04:43,675.675 INFO    ] 200
[2026-08-25 14:04:43,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:43,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:04:43,739.739 INFO    ] No update needed
[2026-08-25 14:04:43,742.742 INFO    ] Checking for camera pi updates...
[2026-08-25 14:04:43,775.775 INFO    ] 200
[2026-08-25 14:04:43,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:43,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:04:43,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:04:43,877.877 INFO    ] No camera update needed
[2026-08-25 14:04:43,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:04:43,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:04:43,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:04:43,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:04:45,932.932 INFO    ] ================================================
[2026-08-25 14:04:45,947.947 INFO    ] Launching Daemon at Tue Aug 25 14:04:45 IST 2026
[2026-08-25 14:04:45,958.958 INFO    ] ================================================
[2026-08-25 14:04:46,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:04:46
[2026-08-25 14:04:47,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:04:47,381.381 INFO    ] Initializing speech engine...
[2026-08-25 14:04:47,407.407 INFO    ] 2026-08-25 14:04:47
[2026-08-25 14:04:47,681.681 INFO    ] 2026-08-25 14:04:47
[2026-08-25 14:04:47,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:04:47,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:04:47,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:04:48,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:04:48,069.069 INFO    ] time= 25/08/2026 14:04:48
[2026-08-25 14:04:48,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:04:48,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:04:48,197.197 INFO    ] No existing commands found in stream
[2026-08-25 14:04:53,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:04:53,210.210 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 14:04:57,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:04:57,517.517 INFO    ] Checking for system updates...
[2026-08-25 14:04:57,552.552 INFO    ] 200
[2026-08-25 14:04:57,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:57,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:04:57,611.611 INFO    ] No update needed
[2026-08-25 14:04:57,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 14:04:57,647.647 INFO    ] 200
[2026-08-25 14:04:57,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:04:57,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:04:57,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:04:57,746.746 INFO    ] No camera update needed
[2026-08-25 14:04:57,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:04:57,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:04:57,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:04:57,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:04:59,802.802 INFO    ] ================================================
[2026-08-25 14:04:59,817.817 INFO    ] Launching Daemon at Tue Aug 25 14:04:59 IST 2026
[2026-08-25 14:04:59,828.828 INFO    ] ================================================
[2026-08-25 14:05:00,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:05:00
[2026-08-25 14:05:01,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:05:01,293.293 INFO    ] Initializing speech engine...
[2026-08-25 14:05:01,302.302 INFO    ] 2026-08-25 14:05:01
[2026-08-25 14:05:01,564.564 INFO    ] 2026-08-25 14:05:01
[2026-08-25 14:05:01,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:05:01,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:05:01,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:05:02,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:05:02,058.058 INFO    ] time= 25/08/2026 14:05:02
[2026-08-25 14:05:02,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:05:02,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:05:02,127.127 INFO    ] No existing commands found in stream
[2026-08-25 14:05:07,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:05:07,140.140 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 14:05:11,355.355 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:05:11,358.358 INFO    ] Checking for system updates...
[2026-08-25 14:05:11,393.393 INFO    ] 200
[2026-08-25 14:05:11,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:11,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:05:11,452.452 INFO    ] No update needed
[2026-08-25 14:05:11,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 14:05:11,487.487 INFO    ] 200
[2026-08-25 14:05:11,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:11,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:05:11,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:05:11,590.590 INFO    ] No camera update needed
[2026-08-25 14:05:11,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:05:11,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:05:11,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:05:11,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:05:13,646.646 INFO    ] ================================================
[2026-08-25 14:05:13,661.661 INFO    ] Launching Daemon at Tue Aug 25 14:05:13 IST 2026
[2026-08-25 14:05:13,673.673 INFO    ] ================================================
[2026-08-25 14:05:14,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:05:14
[2026-08-25 14:05:15,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:05:15,339.339 INFO    ] Initializing speech engine...
[2026-08-25 14:05:15,353.353 INFO    ] 2026-08-25 14:05:15
[2026-08-25 14:05:15,657.657 INFO    ] 2026-08-25 14:05:15
[2026-08-25 14:05:15,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:05:15,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:05:15,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:05:16,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:05:16,157.157 INFO    ] time= 25/08/2026 14:05:16
[2026-08-25 14:05:16,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:05:16,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:05:16,300.300 INFO    ] No existing commands found in stream
[2026-08-25 14:05:21,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:05:21,333.333 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 14:05:25,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:05:25,556.556 INFO    ] Checking for system updates...
[2026-08-25 14:05:25,591.591 INFO    ] 200
[2026-08-25 14:05:25,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:25,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:05:25,651.651 INFO    ] No update needed
[2026-08-25 14:05:25,653.653 INFO    ] Checking for camera pi updates...
[2026-08-25 14:05:25,686.686 INFO    ] 200
[2026-08-25 14:05:25,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:25,729.729 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:05:25,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:05:25,874.874 INFO    ] No camera update needed
[2026-08-25 14:05:25,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:05:25,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:05:25,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:05:25,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:05:27,931.931 INFO    ] ================================================
[2026-08-25 14:05:27,946.946 INFO    ] Launching Daemon at Tue Aug 25 14:05:27 IST 2026
[2026-08-25 14:05:27,956.956 INFO    ] ================================================
[2026-08-25 14:05:28,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:05:28
[2026-08-25 14:05:29,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:05:29,630.630 INFO    ] Initializing speech engine...
[2026-08-25 14:05:29,642.642 INFO    ] 2026-08-25 14:05:29
[2026-08-25 14:05:29,924.924 INFO    ] 2026-08-25 14:05:29
[2026-08-25 14:05:29,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:05:30,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:05:30,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:05:30,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:05:30,407.407 INFO    ] time= 25/08/2026 14:05:30
[2026-08-25 14:05:30,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:05:30,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:05:30,620.620 INFO    ] No existing commands found in stream
[2026-08-25 14:05:35,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:05:35,644.644 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 14:05:37,184.184 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:05:37,187.187 INFO    ] Checking for system updates...
[2026-08-25 14:05:37,223.223 INFO    ] 200
[2026-08-25 14:05:37,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:37,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:05:37,287.287 INFO    ] No update needed
[2026-08-25 14:05:37,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 14:05:37,323.323 INFO    ] 200
[2026-08-25 14:05:37,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:37,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:05:37,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:05:37,413.413 INFO    ] No camera update needed
[2026-08-25 14:05:37,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:05:37,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:05:37,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:05:37,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:05:39,482.482 INFO    ] ================================================
[2026-08-25 14:05:39,497.497 INFO    ] Launching Daemon at Tue Aug 25 14:05:39 IST 2026
[2026-08-25 14:05:39,508.508 INFO    ] ================================================
[2026-08-25 14:05:40,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:05:40
[2026-08-25 14:05:40,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:05:40,992.992 INFO    ] Initializing speech engine...
[2026-08-25 14:05:41,014.014 INFO    ] 2026-08-25 14:05:41
[2026-08-25 14:05:41,311.311 INFO    ] 2026-08-25 14:05:41
[2026-08-25 14:05:41,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:05:41,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:05:41,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:05:41,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:05:41,718.718 INFO    ] time= 25/08/2026 14:05:41
[2026-08-25 14:05:41,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:05:41,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:05:41,852.852 INFO    ] No existing commands found in stream
[2026-08-25 14:05:46,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:05:46,864.864 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 14:05:50,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:05:50,686.686 INFO    ] Checking for system updates...
[2026-08-25 14:05:50,728.728 INFO    ] 200
[2026-08-25 14:05:50,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:50,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:05:50,833.833 INFO    ] No update needed
[2026-08-25 14:05:50,837.837 INFO    ] Checking for camera pi updates...
[2026-08-25 14:05:50,873.873 INFO    ] 200
[2026-08-25 14:05:50,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:05:50,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:05:50,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:05:50,969.969 INFO    ] No camera update needed
[2026-08-25 14:05:50,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:05:50,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:05:50,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:05:50,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:05:53,029.029 INFO    ] ================================================
[2026-08-25 14:05:53,044.044 INFO    ] Launching Daemon at Tue Aug 25 14:05:53 IST 2026
[2026-08-25 14:05:53,057.057 INFO    ] ================================================
[2026-08-25 14:05:53,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:05:53
[2026-08-25 14:05:54,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:05:54,713.713 INFO    ] Initializing speech engine...
[2026-08-25 14:05:54,727.727 INFO    ] 2026-08-25 14:05:54
[2026-08-25 14:05:55,036.036 INFO    ] 2026-08-25 14:05:55
[2026-08-25 14:05:55,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:05:55,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:05:55,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:05:55,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:05:55,546.546 INFO    ] time= 25/08/2026 14:05:55
[2026-08-25 14:05:55,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:05:55,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:05:55,702.702 INFO    ] No existing commands found in stream
[2026-08-25 14:06:00,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:06:00,730.730 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 14:06:02,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:06:02,353.353 INFO    ] Checking for system updates...
[2026-08-25 14:06:02,392.392 INFO    ] 200
[2026-08-25 14:06:02,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:02,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:02,460.460 INFO    ] No update needed
[2026-08-25 14:06:02,463.463 INFO    ] Checking for camera pi updates...
[2026-08-25 14:06:02,501.501 INFO    ] 200
[2026-08-25 14:06:02,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:02,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:06:02,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:02,603.603 INFO    ] No camera update needed
[2026-08-25 14:06:02,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:06:02,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:06:02,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:06:02,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:06:04,669.669 INFO    ] ================================================
[2026-08-25 14:06:04,683.683 INFO    ] Launching Daemon at Tue Aug 25 14:06:04 IST 2026
[2026-08-25 14:06:04,694.694 INFO    ] ================================================
[2026-08-25 14:06:05,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:06:05
[2026-08-25 14:06:05,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:06:06,121.121 INFO    ] Initializing speech engine...
[2026-08-25 14:06:06,136.136 INFO    ] 2026-08-25 14:06:06
[2026-08-25 14:06:06,410.410 INFO    ] 2026-08-25 14:06:06
[2026-08-25 14:06:06,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:06:06,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:06:06,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:06:06,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:06:06,896.896 INFO    ] time= 25/08/2026 14:06:06
[2026-08-25 14:06:06,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:06:06,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:06:07,099.099 INFO    ] No existing commands found in stream
[2026-08-25 14:06:12,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:06:12,112.112 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 14:06:12,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:06:12,567.567 INFO    ] Checking for system updates...
[2026-08-25 14:06:12,604.604 INFO    ] 200
[2026-08-25 14:06:12,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:12,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:12,662.662 INFO    ] No update needed
[2026-08-25 14:06:12,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 14:06:12,700.700 INFO    ] 200
[2026-08-25 14:06:12,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:12,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:06:12,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:12,804.804 INFO    ] No camera update needed
[2026-08-25 14:06:12,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:06:12,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:06:12,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:06:12,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:06:14,860.860 INFO    ] ================================================
[2026-08-25 14:06:14,876.876 INFO    ] Launching Daemon at Tue Aug 25 14:06:14 IST 2026
[2026-08-25 14:06:14,886.886 INFO    ] ================================================
[2026-08-25 14:06:15,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:06:15
[2026-08-25 14:06:16,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:06:16,346.346 INFO    ] Initializing speech engine...
[2026-08-25 14:06:16,355.355 INFO    ] 2026-08-25 14:06:16
[2026-08-25 14:06:16,648.648 INFO    ] 2026-08-25 14:06:16
[2026-08-25 14:06:16,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:06:16,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:06:16,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:06:17,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:06:17,154.154 INFO    ] time= 25/08/2026 14:06:17
[2026-08-25 14:06:17,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:06:17,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:06:17,433.433 INFO    ] No existing commands found in stream
[2026-08-25 14:06:22,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:06:22,471.471 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 14:06:25,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:06:25,230.230 INFO    ] Checking for system updates...
[2026-08-25 14:06:25,265.265 INFO    ] 200
[2026-08-25 14:06:25,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:25,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:25,322.322 INFO    ] No update needed
[2026-08-25 14:06:25,324.324 INFO    ] Checking for camera pi updates...
[2026-08-25 14:06:25,358.358 INFO    ] 200
[2026-08-25 14:06:25,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:25,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:06:25,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:25,459.459 INFO    ] No camera update needed
[2026-08-25 14:06:25,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:06:25,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:06:25,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:06:25,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:06:27,513.513 INFO    ] ================================================
[2026-08-25 14:06:27,528.528 INFO    ] Launching Daemon at Tue Aug 25 14:06:27 IST 2026
[2026-08-25 14:06:27,538.538 INFO    ] ================================================
[2026-08-25 14:06:28,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:06:28
[2026-08-25 14:06:28,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:06:28,955.955 INFO    ] Initializing speech engine...
[2026-08-25 14:06:28,965.965 INFO    ] 2026-08-25 14:06:28
[2026-08-25 14:06:29,211.211 INFO    ] 2026-08-25 14:06:29
[2026-08-25 14:06:29,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:06:29,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:06:29,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:06:29,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:06:29,684.684 INFO    ] time= 25/08/2026 14:06:29
[2026-08-25 14:06:29,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:06:29,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:06:29,912.912 INFO    ] No existing commands found in stream
[2026-08-25 14:06:34,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:06:34,931.931 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 14:06:36,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:06:36,396.396 INFO    ] Checking for system updates...
[2026-08-25 14:06:36,433.433 INFO    ] 200
[2026-08-25 14:06:36,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:36,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:06:36,499.499 INFO    ] No update needed
[2026-08-25 14:06:36,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 14:06:36,536.536 INFO    ] 200
[2026-08-25 14:06:36,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:36,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:06:36,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:06:36,628.628 INFO    ] No camera update needed
[2026-08-25 14:06:36,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:06:36,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:06:36,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:06:36,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:06:38,686.686 INFO    ] ================================================
[2026-08-25 14:06:38,701.701 INFO    ] Launching Daemon at Tue Aug 25 14:06:38 IST 2026
[2026-08-25 14:06:38,711.711 INFO    ] ================================================
[2026-08-25 14:06:39,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:06:39
[2026-08-25 14:06:39,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:06:40,119.119 INFO    ] Initializing speech engine...
[2026-08-25 14:06:40,138.138 INFO    ] 2026-08-25 14:06:40
[2026-08-25 14:06:40,387.387 INFO    ] 2026-08-25 14:06:40
[2026-08-25 14:06:40,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:06:40,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:06:40,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:06:40,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:06:40,841.841 INFO    ] time= 25/08/2026 14:06:40
[2026-08-25 14:06:40,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:06:40,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:06:41,106.106 INFO    ] No existing commands found in stream
[2026-08-25 14:06:46,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:06:46,125.125 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 14:06:47,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:06:47,284.284 INFO    ] Checking for system updates...
[2026-08-25 14:06:47,319.319 INFO    ] 200
[2026-08-25 14:06:47,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:47,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:47,376.376 INFO    ] No update needed
[2026-08-25 14:06:47,378.378 INFO    ] Checking for camera pi updates...
[2026-08-25 14:06:47,411.411 INFO    ] 200
[2026-08-25 14:06:47,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:47,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:06:47,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:06:47,510.510 INFO    ] No camera update needed
[2026-08-25 14:06:47,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:06:47,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:06:47,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:06:47,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:06:49,566.566 INFO    ] ================================================
[2026-08-25 14:06:49,580.580 INFO    ] Launching Daemon at Tue Aug 25 14:06:49 IST 2026
[2026-08-25 14:06:49,591.591 INFO    ] ================================================
[2026-08-25 14:06:50,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:06:50
[2026-08-25 14:06:50,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:06:51,016.016 INFO    ] Initializing speech engine...
[2026-08-25 14:06:51,024.024 INFO    ] 2026-08-25 14:06:51
[2026-08-25 14:06:51,282.282 INFO    ] 2026-08-25 14:06:51
[2026-08-25 14:06:51,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:06:51,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:06:51,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:06:51,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:06:51,709.709 INFO    ] time= 25/08/2026 14:06:51
[2026-08-25 14:06:51,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:06:51,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:06:51,976.976 INFO    ] No existing commands found in stream
[2026-08-25 14:06:56,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:06:56,993.993 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 14:06:57,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:06:57,937.937 INFO    ] Checking for system updates...
[2026-08-25 14:06:57,972.972 INFO    ] 200
[2026-08-25 14:06:57,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:58,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:06:58,030.030 INFO    ] No update needed
[2026-08-25 14:06:58,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 14:06:58,070.070 INFO    ] 200
[2026-08-25 14:06:58,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:06:58,113.113 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:06:58,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:06:58,166.166 INFO    ] No camera update needed
[2026-08-25 14:06:58,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:06:58,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:06:58,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:06:58,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:07:00,220.220 INFO    ] ================================================
[2026-08-25 14:07:00,235.235 INFO    ] Launching Daemon at Tue Aug 25 14:07:00 IST 2026
[2026-08-25 14:07:00,246.246 INFO    ] ================================================
[2026-08-25 14:07:00,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:07:00
[2026-08-25 14:07:01,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:07:01,705.705 INFO    ] Initializing speech engine...
[2026-08-25 14:07:01,710.710 INFO    ] 2026-08-25 14:07:01
[2026-08-25 14:07:02,117.117 INFO    ] 2026-08-25 14:07:02
[2026-08-25 14:07:02,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:07:02,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:07:02,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:07:02,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:07:02,657.657 INFO    ] time= 25/08/2026 14:07:02
[2026-08-25 14:07:02,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:07:02,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:07:02,935.935 INFO    ] No existing commands found in stream
[2026-08-25 14:07:07,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:07:07,959.959 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 14:07:09,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:07:09,588.588 INFO    ] Checking for system updates...
[2026-08-25 14:07:09,625.625 INFO    ] 200
[2026-08-25 14:07:09,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:09,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:07:09,687.687 INFO    ] No update needed
[2026-08-25 14:07:09,689.689 INFO    ] Checking for camera pi updates...
[2026-08-25 14:07:09,723.723 INFO    ] 200
[2026-08-25 14:07:09,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:09,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:07:09,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:07:09,828.828 INFO    ] No camera update needed
[2026-08-25 14:07:09,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:07:09,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:07:09,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:07:09,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:07:11,883.883 INFO    ] ================================================
[2026-08-25 14:07:11,898.898 INFO    ] Launching Daemon at Tue Aug 25 14:07:11 IST 2026
[2026-08-25 14:07:11,909.909 INFO    ] ================================================
[2026-08-25 14:07:12,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:07:12
[2026-08-25 14:07:13,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:07:13,555.555 INFO    ] Initializing speech engine...
[2026-08-25 14:07:13,563.563 INFO    ] 2026-08-25 14:07:13
[2026-08-25 14:07:13,863.863 INFO    ] 2026-08-25 14:07:13
[2026-08-25 14:07:13,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:07:14,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:07:14,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:07:14,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:07:14,416.416 INFO    ] time= 25/08/2026 14:07:14
[2026-08-25 14:07:14,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:07:14,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:07:14,564.564 INFO    ] No existing commands found in stream
[2026-08-25 14:07:19,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:07:19,585.585 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 14:07:23,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:07:23,671.671 INFO    ] Checking for system updates...
[2026-08-25 14:07:23,708.708 INFO    ] 200
[2026-08-25 14:07:23,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:23,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:07:23,767.767 INFO    ] No update needed
[2026-08-25 14:07:23,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 14:07:23,806.806 INFO    ] 200
[2026-08-25 14:07:23,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:23,850.850 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:07:23,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:07:23,901.901 INFO    ] No camera update needed
[2026-08-25 14:07:23,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:07:23,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:07:23,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:07:23,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:07:25,959.959 INFO    ] ================================================
[2026-08-25 14:07:25,974.974 INFO    ] Launching Daemon at Tue Aug 25 14:07:25 IST 2026
[2026-08-25 14:07:25,985.985 INFO    ] ================================================
[2026-08-25 14:07:26,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:07:26
[2026-08-25 14:07:27,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:07:27,444.444 INFO    ] Initializing speech engine...
[2026-08-25 14:07:27,464.464 INFO    ] 2026-08-25 14:07:27
[2026-08-25 14:07:27,738.738 INFO    ] 2026-08-25 14:07:27
[2026-08-25 14:07:27,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:07:27,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:07:27,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:07:28,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:07:28,161.161 INFO    ] time= 25/08/2026 14:07:28
[2026-08-25 14:07:28,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:07:28,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:07:28,255.255 INFO    ] No existing commands found in stream
[2026-08-25 14:07:33,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:07:33,270.270 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 14:07:34,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:07:34,376.376 INFO    ] Checking for system updates...
[2026-08-25 14:07:34,414.414 INFO    ] 200
[2026-08-25 14:07:34,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:34,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:07:34,482.482 INFO    ] No update needed
[2026-08-25 14:07:34,485.485 INFO    ] Checking for camera pi updates...
[2026-08-25 14:07:34,528.528 INFO    ] 200
[2026-08-25 14:07:34,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:34,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:07:34,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:07:34,636.636 INFO    ] No camera update needed
[2026-08-25 14:07:34,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:07:34,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:07:34,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:07:34,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:07:36,696.696 INFO    ] ================================================
[2026-08-25 14:07:36,712.712 INFO    ] Launching Daemon at Tue Aug 25 14:07:36 IST 2026
[2026-08-25 14:07:36,722.722 INFO    ] ================================================
[2026-08-25 14:07:37,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:07:37
[2026-08-25 14:07:37,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:07:38,126.126 INFO    ] Initializing speech engine...
[2026-08-25 14:07:38,133.133 INFO    ] 2026-08-25 14:07:38
[2026-08-25 14:07:38,431.431 INFO    ] 2026-08-25 14:07:38
[2026-08-25 14:07:38,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:07:38,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:07:38,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:07:38,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:07:38,821.821 INFO    ] time= 25/08/2026 14:07:38
[2026-08-25 14:07:38,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:07:38,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:07:38,949.949 INFO    ] No existing commands found in stream
[2026-08-25 14:07:43,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:07:43,961.961 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 14:07:46,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:07:46,677.677 INFO    ] Checking for system updates...
[2026-08-25 14:07:46,712.712 INFO    ] 200
[2026-08-25 14:07:46,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:46,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:07:46,769.769 INFO    ] No update needed
[2026-08-25 14:07:46,771.771 INFO    ] Checking for camera pi updates...
[2026-08-25 14:07:46,805.805 INFO    ] 200
[2026-08-25 14:07:46,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:07:46,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:07:46,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:07:46,898.898 INFO    ] No camera update needed
[2026-08-25 14:07:46,901.901 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:07:46,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:07:46,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:07:46,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:07:48,954.954 INFO    ] ================================================
[2026-08-25 14:07:48,969.969 INFO    ] Launching Daemon at Tue Aug 25 14:07:48 IST 2026
[2026-08-25 14:07:48,980.980 INFO    ] ================================================
[2026-08-25 14:07:49,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:07:49
[2026-08-25 14:07:50,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:07:50,380.380 INFO    ] Initializing speech engine...
[2026-08-25 14:07:50,405.405 INFO    ] 2026-08-25 14:07:50
[2026-08-25 14:07:50,663.663 INFO    ] 2026-08-25 14:07:50
[2026-08-25 14:07:50,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:07:50,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:07:50,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:07:51,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:07:51,127.127 INFO    ] time= 25/08/2026 14:07:51
[2026-08-25 14:07:51,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:07:51,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:07:51,365.365 INFO    ] No existing commands found in stream
[2026-08-25 14:07:56,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:07:56,388.388 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 14:08:00,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:08:00,021.021 INFO    ] Checking for system updates...
[2026-08-25 14:08:00,063.063 INFO    ] 200
[2026-08-25 14:08:00,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:00,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:08:00,123.123 INFO    ] No update needed
[2026-08-25 14:08:00,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 14:08:00,160.160 INFO    ] 200
[2026-08-25 14:08:00,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:00,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:08:00,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:08:00,258.258 INFO    ] No camera update needed
[2026-08-25 14:08:00,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:08:00,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:08:00,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:08:00,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:08:02,318.318 INFO    ] ================================================
[2026-08-25 14:08:02,338.338 INFO    ] Launching Daemon at Tue Aug 25 14:08:02 IST 2026
[2026-08-25 14:08:02,353.353 INFO    ] ================================================
[2026-08-25 14:08:02,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:08:02
[2026-08-25 14:08:03,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:08:03,905.905 INFO    ] Initializing speech engine...
[2026-08-25 14:08:03,912.912 INFO    ] 2026-08-25 14:08:03
[2026-08-25 14:08:04,208.208 INFO    ] 2026-08-25 14:08:04
[2026-08-25 14:08:04,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:08:04,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:08:04,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:08:04,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:08:04,591.591 INFO    ] time= 25/08/2026 14:08:04
[2026-08-25 14:08:04,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:08:04,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:08:04,719.719 INFO    ] No existing commands found in stream
[2026-08-25 14:08:09,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:08:09,737.737 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 14:08:12,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:08:12,390.390 INFO    ] Checking for system updates...
[2026-08-25 14:08:12,425.425 INFO    ] 200
[2026-08-25 14:08:12,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:12,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:08:12,489.489 INFO    ] No update needed
[2026-08-25 14:08:12,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 14:08:12,524.524 INFO    ] 200
[2026-08-25 14:08:12,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:12,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:08:12,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:08:12,621.621 INFO    ] No camera update needed
[2026-08-25 14:08:12,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:08:12,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:08:12,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:08:12,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:08:14,677.677 INFO    ] ================================================
[2026-08-25 14:08:14,692.692 INFO    ] Launching Daemon at Tue Aug 25 14:08:14 IST 2026
[2026-08-25 14:08:14,703.703 INFO    ] ================================================
[2026-08-25 14:08:15,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:08:15
[2026-08-25 14:08:15,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:08:16,104.104 INFO    ] Initializing speech engine...
[2026-08-25 14:08:16,127.127 INFO    ] 2026-08-25 14:08:16
[2026-08-25 14:08:16,384.384 INFO    ] 2026-08-25 14:08:16
[2026-08-25 14:08:16,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:08:16,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:08:16,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:08:16,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:08:16,859.859 INFO    ] time= 25/08/2026 14:08:16
[2026-08-25 14:08:16,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:08:16,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:08:17,095.095 INFO    ] No existing commands found in stream
[2026-08-25 14:08:22,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:08:22,123.123 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 14:08:25,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:08:25,780.780 INFO    ] Checking for system updates...
[2026-08-25 14:08:25,828.828 INFO    ] 200
[2026-08-25 14:08:25,830.830 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:25,833.833 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 14:08:25,835.835 INFO    ] Checking for camera pi updates...
[2026-08-25 14:08:25,896.896 INFO    ] 200
[2026-08-25 14:08:25,898.898 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:25,901.901 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 14:08:25,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:08:25,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:08:25,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:08:25,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:08:27,959.959 INFO    ] ================================================
[2026-08-25 14:08:27,974.974 INFO    ] Launching Daemon at Tue Aug 25 14:08:27 IST 2026
[2026-08-25 14:08:27,985.985 INFO    ] ================================================
[2026-08-25 14:08:28,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:08:28
[2026-08-25 14:08:29,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:08:29,457.457 INFO    ] Initializing speech engine...
[2026-08-25 14:08:29,482.482 INFO    ] 2026-08-25 14:08:29
[2026-08-25 14:08:29,742.742 INFO    ] 2026-08-25 14:08:29
[2026-08-25 14:08:29,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:08:29,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:08:30,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:08:30,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:08:30,200.200 INFO    ] time= 25/08/2026 14:08:30
[2026-08-25 14:08:30,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:08:30,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:08:30,445.445 INFO    ] No existing commands found in stream
[2026-08-25 14:08:35,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:08:35,473.473 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 14:08:37,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:08:37,616.616 INFO    ] Checking for system updates...
[2026-08-25 14:08:37,656.656 INFO    ] 200
[2026-08-25 14:08:37,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:37,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:08:37,715.715 INFO    ] No update needed
[2026-08-25 14:08:37,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 14:08:37,751.751 INFO    ] 200
[2026-08-25 14:08:37,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:37,794.794 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:08:37,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:08:37,844.844 INFO    ] No camera update needed
[2026-08-25 14:08:37,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:08:37,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:08:37,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:08:37,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:08:39,901.901 INFO    ] ================================================
[2026-08-25 14:08:39,917.917 INFO    ] Launching Daemon at Tue Aug 25 14:08:39 IST 2026
[2026-08-25 14:08:39,929.929 INFO    ] ================================================
[2026-08-25 14:08:40,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:08:40
[2026-08-25 14:08:41,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:08:41,361.361 INFO    ] Initializing speech engine...
[2026-08-25 14:08:41,387.387 INFO    ] 2026-08-25 14:08:41
[2026-08-25 14:08:41,665.665 INFO    ] 2026-08-25 14:08:41
[2026-08-25 14:08:41,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:08:41,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:08:41,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:08:42,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:08:42,219.219 INFO    ] time= 25/08/2026 14:08:42
[2026-08-25 14:08:42,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:08:42,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:08:42,379.379 INFO    ] No existing commands found in stream
[2026-08-25 14:08:47,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:08:47,398.398 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 14:08:51,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:08:51,316.316 INFO    ] Checking for system updates...
[2026-08-25 14:08:51,357.357 INFO    ] 200
[2026-08-25 14:08:51,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:51,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:08:51,417.417 INFO    ] No update needed
[2026-08-25 14:08:51,420.420 INFO    ] Checking for camera pi updates...
[2026-08-25 14:08:51,464.464 INFO    ] 200
[2026-08-25 14:08:51,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:08:51,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:08:51,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:08:51,581.581 INFO    ] No camera update needed
[2026-08-25 14:08:51,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:08:51,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:08:51,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:08:51,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:08:53,642.642 INFO    ] ================================================
[2026-08-25 14:08:53,658.658 INFO    ] Launching Daemon at Tue Aug 25 14:08:53 IST 2026
[2026-08-25 14:08:53,669.669 INFO    ] ================================================
[2026-08-25 14:08:54,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:08:54
[2026-08-25 14:08:55,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:08:55,333.333 INFO    ] Initializing speech engine...
[2026-08-25 14:08:55,342.342 INFO    ] 2026-08-25 14:08:55
[2026-08-25 14:08:55,621.621 INFO    ] 2026-08-25 14:08:55
[2026-08-25 14:08:55,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:08:55,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:08:55,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:08:56,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:08:56,120.120 INFO    ] time= 25/08/2026 14:08:56
[2026-08-25 14:08:56,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:08:56,200.200 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:08:56,344.344 INFO    ] No existing commands found in stream
[2026-08-25 14:09:01,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:09:01,365.365 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 14:09:05,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:09:05,386.386 INFO    ] Checking for system updates...
[2026-08-25 14:09:05,423.423 INFO    ] 200
[2026-08-25 14:09:05,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:05,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:05,484.484 INFO    ] No update needed
[2026-08-25 14:09:05,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 14:09:05,524.524 INFO    ] 200
[2026-08-25 14:09:05,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:05,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:09:05,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:05,629.629 INFO    ] No camera update needed
[2026-08-25 14:09:05,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:09:05,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:09:05,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:09:05,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:09:07,688.688 INFO    ] ================================================
[2026-08-25 14:09:07,703.703 INFO    ] Launching Daemon at Tue Aug 25 14:09:07 IST 2026
[2026-08-25 14:09:07,714.714 INFO    ] ================================================
[2026-08-25 14:09:08,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:09:08
[2026-08-25 14:09:08,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:09:09,129.129 INFO    ] Initializing speech engine...
[2026-08-25 14:09:09,144.144 INFO    ] 2026-08-25 14:09:09
[2026-08-25 14:09:09,414.414 INFO    ] 2026-08-25 14:09:09
[2026-08-25 14:09:09,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:09:09,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:09:09,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:09:09,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:09:09,805.805 INFO    ] time= 25/08/2026 14:09:09
[2026-08-25 14:09:09,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:09:09,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:09:09,914.914 INFO    ] No existing commands found in stream
[2026-08-25 14:09:14,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:09:14,948.948 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 14:09:16,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:09:16,216.216 INFO    ] Checking for system updates...
[2026-08-25 14:09:16,252.252 INFO    ] 200
[2026-08-25 14:09:16,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:16,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:16,309.309 INFO    ] No update needed
[2026-08-25 14:09:16,312.312 INFO    ] Checking for camera pi updates...
[2026-08-25 14:09:16,346.346 INFO    ] 200
[2026-08-25 14:09:16,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:16,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:09:16,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:16,435.435 INFO    ] No camera update needed
[2026-08-25 14:09:16,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:09:16,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:09:16,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:09:16,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:09:18,489.489 INFO    ] ================================================
[2026-08-25 14:09:18,504.504 INFO    ] Launching Daemon at Tue Aug 25 14:09:18 IST 2026
[2026-08-25 14:09:18,515.515 INFO    ] ================================================
[2026-08-25 14:09:19,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:09:19
[2026-08-25 14:09:19,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:09:20,123.123 INFO    ] Initializing speech engine...
[2026-08-25 14:09:20,131.131 INFO    ] 2026-08-25 14:09:20
[2026-08-25 14:09:20,408.408 INFO    ] 2026-08-25 14:09:20
[2026-08-25 14:09:20,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:09:20,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:09:20,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:09:20,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:09:20,960.960 INFO    ] time= 25/08/2026 14:09:20
[2026-08-25 14:09:20,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:09:20,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:09:21,120.120 INFO    ] No existing commands found in stream
[2026-08-25 14:09:26,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:09:26,137.137 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 14:09:28,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:09:28,046.046 INFO    ] Checking for system updates...
[2026-08-25 14:09:28,081.081 INFO    ] 200
[2026-08-25 14:09:28,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:28,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:28,144.144 INFO    ] No update needed
[2026-08-25 14:09:28,147.147 INFO    ] Checking for camera pi updates...
[2026-08-25 14:09:28,180.180 INFO    ] 200
[2026-08-25 14:09:28,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:28,224.224 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:09:28,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:28,282.282 INFO    ] No camera update needed
[2026-08-25 14:09:28,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:09:28,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:09:28,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:09:28,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:09:30,336.336 INFO    ] ================================================
[2026-08-25 14:09:30,352.352 INFO    ] Launching Daemon at Tue Aug 25 14:09:30 IST 2026
[2026-08-25 14:09:30,363.363 INFO    ] ================================================
[2026-08-25 14:09:31,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:09:31
[2026-08-25 14:09:31,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:09:31,957.957 INFO    ] Initializing speech engine...
[2026-08-25 14:09:31,971.971 INFO    ] 2026-08-25 14:09:31
[2026-08-25 14:09:32,289.289 INFO    ] 2026-08-25 14:09:32
[2026-08-25 14:09:32,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:09:32,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:09:32,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:09:32,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:09:32,810.810 INFO    ] time= 25/08/2026 14:09:32
[2026-08-25 14:09:32,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:09:32,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:09:32,999.999 INFO    ] No existing commands found in stream
[2026-08-25 14:09:38,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:09:38,035.035 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 14:09:40,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:09:40,585.585 INFO    ] Checking for system updates...
[2026-08-25 14:09:40,621.621 INFO    ] 200
[2026-08-25 14:09:40,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:40,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:09:40,684.684 INFO    ] No update needed
[2026-08-25 14:09:40,686.686 INFO    ] Checking for camera pi updates...
[2026-08-25 14:09:40,719.719 INFO    ] 200
[2026-08-25 14:09:40,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:40,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:09:40,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:09:40,926.926 INFO    ] No camera update needed
[2026-08-25 14:09:40,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:09:40,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:09:40,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:09:40,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:09:42,980.980 INFO    ] ================================================
[2026-08-25 14:09:43,995.995 INFO    ] Launching Daemon at Tue Aug 25 14:09:42 IST 2026
[2026-08-25 14:09:43,006.006 INFO    ] ================================================
[2026-08-25 14:09:43,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:09:43
[2026-08-25 14:09:44,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:09:44,606.606 INFO    ] Initializing speech engine...
[2026-08-25 14:09:44,618.618 INFO    ] 2026-08-25 14:09:44
[2026-08-25 14:09:44,921.921 INFO    ] 2026-08-25 14:09:44
[2026-08-25 14:09:45,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:09:45,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:09:45,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:09:45,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:09:45,423.423 INFO    ] time= 25/08/2026 14:09:45
[2026-08-25 14:09:45,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:09:45,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:09:45,579.579 INFO    ] No existing commands found in stream
[2026-08-25 14:09:50,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:09:50,595.595 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 14:09:52,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:09:52,710.710 INFO    ] Checking for system updates...
[2026-08-25 14:09:52,747.747 INFO    ] 200
[2026-08-25 14:09:52,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:52,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:52,808.808 INFO    ] No update needed
[2026-08-25 14:09:52,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 14:09:52,844.844 INFO    ] 200
[2026-08-25 14:09:52,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:09:52,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:09:52,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:09:52,933.933 INFO    ] No camera update needed
[2026-08-25 14:09:52,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:09:52,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:09:52,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:09:52,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:09:54,989.989 INFO    ] ================================================
[2026-08-25 14:09:55,005.005 INFO    ] Launching Daemon at Tue Aug 25 14:09:54 IST 2026
[2026-08-25 14:09:55,015.015 INFO    ] ================================================
[2026-08-25 14:09:55,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:09:55
[2026-08-25 14:09:56,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:09:56,616.616 INFO    ] Initializing speech engine...
[2026-08-25 14:09:56,629.629 INFO    ] 2026-08-25 14:09:56
[2026-08-25 14:09:56,896.896 INFO    ] 2026-08-25 14:09:56
[2026-08-25 14:09:56,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:09:57,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:09:57,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:09:57,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:09:57,382.382 INFO    ] time= 25/08/2026 14:09:57
[2026-08-25 14:09:57,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:09:57,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:09:57,593.593 INFO    ] No existing commands found in stream
[2026-08-25 14:10:02,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:10:02,621.621 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 14:10:08,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:10:08,703.703 INFO    ] Checking for system updates...
[2026-08-25 14:10:08,744.744 INFO    ] 200
[2026-08-25 14:10:08,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:08,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:08,805.805 INFO    ] No update needed
[2026-08-25 14:10:08,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 14:10:08,847.847 INFO    ] 200
[2026-08-25 14:10:08,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:08,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:10:08,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:08,978.978 INFO    ] No camera update needed
[2026-08-25 14:10:08,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:10:08,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:10:08,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:10:08,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:10:11,036.036 INFO    ] ================================================
[2026-08-25 14:10:11,051.051 INFO    ] Launching Daemon at Tue Aug 25 14:10:11 IST 2026
[2026-08-25 14:10:11,061.061 INFO    ] ================================================
[2026-08-25 14:10:11,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:10:11
[2026-08-25 14:10:12,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:10:12,626.626 INFO    ] Initializing speech engine...
[2026-08-25 14:10:12,637.637 INFO    ] 2026-08-25 14:10:12
[2026-08-25 14:10:12,885.885 INFO    ] 2026-08-25 14:10:12
[2026-08-25 14:10:12,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:10:13,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:10:13,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:10:13,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:10:13,351.351 INFO    ] time= 25/08/2026 14:10:13
[2026-08-25 14:10:13,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:10:13,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:10:13,595.595 INFO    ] No existing commands found in stream
[2026-08-25 14:10:18,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:10:18,613.613 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 14:10:22,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:10:22,130.130 INFO    ] Checking for system updates...
[2026-08-25 14:10:22,171.171 INFO    ] 200
[2026-08-25 14:10:22,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:22,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:10:22,229.229 INFO    ] No update needed
[2026-08-25 14:10:22,232.232 INFO    ] Checking for camera pi updates...
[2026-08-25 14:10:22,269.269 INFO    ] 200
[2026-08-25 14:10:22,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:22,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:10:22,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:10:22,364.364 INFO    ] No camera update needed
[2026-08-25 14:10:22,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:10:22,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:10:22,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:10:22,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:10:24,419.419 INFO    ] ================================================
[2026-08-25 14:10:24,434.434 INFO    ] Launching Daemon at Tue Aug 25 14:10:24 IST 2026
[2026-08-25 14:10:24,444.444 INFO    ] ================================================
[2026-08-25 14:10:25,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:10:25
[2026-08-25 14:10:25,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:10:25,850.850 INFO    ] Initializing speech engine...
[2026-08-25 14:10:25,865.865 INFO    ] 2026-08-25 14:10:25
[2026-08-25 14:10:26,149.149 INFO    ] 2026-08-25 14:10:26
[2026-08-25 14:10:26,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:10:26,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:10:26,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:10:26,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:10:26,523.523 INFO    ] time= 25/08/2026 14:10:26
[2026-08-25 14:10:26,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:10:26,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:10:26,714.714 INFO    ] No existing commands found in stream
[2026-08-25 14:10:31,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:10:31,732.732 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 14:10:33,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:10:33,883.883 INFO    ] Checking for system updates...
[2026-08-25 14:10:33,919.919 INFO    ] 200
[2026-08-25 14:10:33,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:33,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:33,980.980 INFO    ] No update needed
[2026-08-25 14:10:33,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 14:10:34,019.019 INFO    ] 200
[2026-08-25 14:10:34,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:34,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:10:34,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:34,116.116 INFO    ] No camera update needed
[2026-08-25 14:10:34,119.119 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:10:34,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:10:34,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:10:34,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:10:36,173.173 INFO    ] ================================================
[2026-08-25 14:10:36,188.188 INFO    ] Launching Daemon at Tue Aug 25 14:10:36 IST 2026
[2026-08-25 14:10:36,199.199 INFO    ] ================================================
[2026-08-25 14:10:36,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:10:36
[2026-08-25 14:10:37,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:10:37,619.619 INFO    ] Initializing speech engine...
[2026-08-25 14:10:37,625.625 INFO    ] 2026-08-25 14:10:37
[2026-08-25 14:10:37,921.921 INFO    ] 2026-08-25 14:10:37
[2026-08-25 14:10:37,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:10:38,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:10:38,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:10:38,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:10:38,313.313 INFO    ] time= 25/08/2026 14:10:38
[2026-08-25 14:10:38,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:10:38,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:10:38,423.423 INFO    ] No existing commands found in stream
[2026-08-25 14:10:43,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:10:43,440.440 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 14:10:44,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:10:44,022.022 INFO    ] Checking for system updates...
[2026-08-25 14:10:44,061.061 INFO    ] 200
[2026-08-25 14:10:44,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:44,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:44,118.118 INFO    ] No update needed
[2026-08-25 14:10:44,120.120 INFO    ] Checking for camera pi updates...
[2026-08-25 14:10:44,154.154 INFO    ] 200
[2026-08-25 14:10:44,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:44,196.196 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:10:44,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:44,245.245 INFO    ] No camera update needed
[2026-08-25 14:10:44,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:10:44,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:10:44,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:10:44,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:10:46,301.301 INFO    ] ================================================
[2026-08-25 14:10:46,316.316 INFO    ] Launching Daemon at Tue Aug 25 14:10:46 IST 2026
[2026-08-25 14:10:46,327.327 INFO    ] ================================================
[2026-08-25 14:10:46,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:10:46
[2026-08-25 14:10:47,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:10:47,840.840 INFO    ] Initializing speech engine...
[2026-08-25 14:10:47,854.854 INFO    ] 2026-08-25 14:10:47
[2026-08-25 14:10:48,135.135 INFO    ] 2026-08-25 14:10:48
[2026-08-25 14:10:48,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:10:48,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:10:48,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:10:48,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:10:48,611.611 INFO    ] time= 25/08/2026 14:10:48
[2026-08-25 14:10:48,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:10:48,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:10:48,810.810 INFO    ] No existing commands found in stream
[2026-08-25 14:10:53,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:10:53,839.839 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 14:10:57,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:10:57,051.051 INFO    ] Checking for system updates...
[2026-08-25 14:10:57,089.089 INFO    ] 200
[2026-08-25 14:10:57,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:57,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:57,153.153 INFO    ] No update needed
[2026-08-25 14:10:57,160.160 INFO    ] Checking for camera pi updates...
[2026-08-25 14:10:57,197.197 INFO    ] 200
[2026-08-25 14:10:57,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:10:57,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:10:57,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:10:57,299.299 INFO    ] No camera update needed
[2026-08-25 14:10:57,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:10:57,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:10:57,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:10:57,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:10:59,358.358 INFO    ] ================================================
[2026-08-25 14:10:59,373.373 INFO    ] Launching Daemon at Tue Aug 25 14:10:59 IST 2026
[2026-08-25 14:10:59,383.383 INFO    ] ================================================
[2026-08-25 14:10:59,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:10:59
[2026-08-25 14:11:00,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:11:00,839.839 INFO    ] Initializing speech engine...
[2026-08-25 14:11:00,850.850 INFO    ] 2026-08-25 14:11:00
[2026-08-25 14:11:01,111.111 INFO    ] 2026-08-25 14:11:01
[2026-08-25 14:11:01,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:11:01,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:11:01,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:11:01,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:11:01,601.601 INFO    ] time= 25/08/2026 14:11:01
[2026-08-25 14:11:01,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:11:01,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:11:01,811.811 INFO    ] No existing commands found in stream
[2026-08-25 14:11:06,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:11:06,835.835 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 14:11:11,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:11:11,237.237 INFO    ] Checking for system updates...
[2026-08-25 14:11:11,272.272 INFO    ] 200
[2026-08-25 14:11:11,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:11,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:11,335.335 INFO    ] No update needed
[2026-08-25 14:11:11,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 14:11:11,371.371 INFO    ] 200
[2026-08-25 14:11:11,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:11,415.415 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:11:11,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:11,462.462 INFO    ] No camera update needed
[2026-08-25 14:11:11,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:11:11,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:11:11,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:11:11,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:11:13,518.518 INFO    ] ================================================
[2026-08-25 14:11:13,532.532 INFO    ] Launching Daemon at Tue Aug 25 14:11:13 IST 2026
[2026-08-25 14:11:13,543.543 INFO    ] ================================================
[2026-08-25 14:11:14,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:11:14
[2026-08-25 14:11:14,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:11:15,098.098 INFO    ] Initializing speech engine...
[2026-08-25 14:11:15,106.106 INFO    ] 2026-08-25 14:11:15
[2026-08-25 14:11:15,393.393 INFO    ] 2026-08-25 14:11:15
[2026-08-25 14:11:15,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:11:15,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:11:15,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:11:15,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:11:15,868.868 INFO    ] time= 25/08/2026 14:11:15
[2026-08-25 14:11:15,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:11:15,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:11:16,081.081 INFO    ] No existing commands found in stream
[2026-08-25 14:11:21,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:11:21,118.118 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 14:11:23,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:11:23,686.686 INFO    ] Checking for system updates...
[2026-08-25 14:11:23,721.721 INFO    ] 200
[2026-08-25 14:11:23,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:23,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:23,780.780 INFO    ] No update needed
[2026-08-25 14:11:23,782.782 INFO    ] Checking for camera pi updates...
[2026-08-25 14:11:23,815.815 INFO    ] 200
[2026-08-25 14:11:23,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:23,859.859 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:11:23,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:23,911.911 INFO    ] No camera update needed
[2026-08-25 14:11:23,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:11:23,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:11:23,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:11:23,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:11:25,967.967 INFO    ] ================================================
[2026-08-25 14:11:25,982.982 INFO    ] Launching Daemon at Tue Aug 25 14:11:25 IST 2026
[2026-08-25 14:11:25,992.992 INFO    ] ================================================
[2026-08-25 14:11:26,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:11:26
[2026-08-25 14:11:27,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:11:27,603.603 INFO    ] Initializing speech engine...
[2026-08-25 14:11:27,612.612 INFO    ] 2026-08-25 14:11:27
[2026-08-25 14:11:27,889.889 INFO    ] 2026-08-25 14:11:27
[2026-08-25 14:11:27,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:11:28,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:11:28,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:11:28,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:11:28,442.442 INFO    ] time= 25/08/2026 14:11:28
[2026-08-25 14:11:28,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:11:28,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:11:28,609.609 INFO    ] No existing commands found in stream
[2026-08-25 14:11:33,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:11:33,631.631 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 14:11:35,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:11:35,340.340 INFO    ] Checking for system updates...
[2026-08-25 14:11:35,376.376 INFO    ] 200
[2026-08-25 14:11:35,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:35,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:35,443.443 INFO    ] No update needed
[2026-08-25 14:11:35,446.446 INFO    ] Checking for camera pi updates...
[2026-08-25 14:11:35,479.479 INFO    ] 200
[2026-08-25 14:11:35,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:35,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:11:35,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:35,597.597 INFO    ] No camera update needed
[2026-08-25 14:11:35,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:11:35,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:11:35,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:11:35,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:11:37,655.655 INFO    ] ================================================
[2026-08-25 14:11:37,670.670 INFO    ] Launching Daemon at Tue Aug 25 14:11:37 IST 2026
[2026-08-25 14:11:37,680.680 INFO    ] ================================================
[2026-08-25 14:11:38,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:11:38
[2026-08-25 14:11:38,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:11:39,160.160 INFO    ] Initializing speech engine...
[2026-08-25 14:11:39,170.170 INFO    ] 2026-08-25 14:11:39
[2026-08-25 14:11:39,416.416 INFO    ] 2026-08-25 14:11:39
[2026-08-25 14:11:39,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:11:39,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:11:39,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:11:39,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:11:39,899.899 INFO    ] time= 25/08/2026 14:11:39
[2026-08-25 14:11:39,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:11:39,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:11:40,119.119 INFO    ] No existing commands found in stream
[2026-08-25 14:11:45,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:11:45,142.142 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 14:11:48,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:11:48,595.595 INFO    ] Checking for system updates...
[2026-08-25 14:11:48,631.631 INFO    ] 200
[2026-08-25 14:11:48,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:48,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:48,690.690 INFO    ] No update needed
[2026-08-25 14:11:48,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 14:11:48,729.729 INFO    ] 200
[2026-08-25 14:11:48,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:48,772.772 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:11:48,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:11:48,922.922 INFO    ] No camera update needed
[2026-08-25 14:11:48,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:11:48,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:11:48,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:11:48,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:11:50,977.977 INFO    ] ================================================
[2026-08-25 14:11:50,991.991 INFO    ] Launching Daemon at Tue Aug 25 14:11:50 IST 2026
[2026-08-25 14:11:51,002.002 INFO    ] ================================================
[2026-08-25 14:11:51,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:11:51
[2026-08-25 14:11:52,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:11:52,596.596 INFO    ] Initializing speech engine...
[2026-08-25 14:11:52,605.605 INFO    ] 2026-08-25 14:11:52
[2026-08-25 14:11:52,874.874 INFO    ] 2026-08-25 14:11:52
[2026-08-25 14:11:52,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:11:53,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:11:53,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:11:53,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:11:53,265.265 INFO    ] time= 25/08/2026 14:11:53
[2026-08-25 14:11:53,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:11:53,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:11:53,372.372 INFO    ] No existing commands found in stream
[2026-08-25 14:11:58,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:11:58,389.389 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 14:11:59,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:11:59,513.513 INFO    ] Checking for system updates...
[2026-08-25 14:11:59,553.553 INFO    ] 200
[2026-08-25 14:11:59,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:59,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:11:59,612.612 INFO    ] No update needed
[2026-08-25 14:11:59,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 14:11:59,648.648 INFO    ] 200
[2026-08-25 14:11:59,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:11:59,691.691 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:11:59,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:11:59,745.745 INFO    ] No camera update needed
[2026-08-25 14:11:59,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:11:59,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:11:59,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:11:59,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:12:01,803.803 INFO    ] ================================================
[2026-08-25 14:12:01,826.826 INFO    ] Launching Daemon at Tue Aug 25 14:12:01 IST 2026
[2026-08-25 14:12:01,844.844 INFO    ] ================================================
[2026-08-25 14:12:02,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:12:02
[2026-08-25 14:12:03,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:12:03,476.476 INFO    ] Initializing speech engine...
[2026-08-25 14:12:03,484.484 INFO    ] 2026-08-25 14:12:03
[2026-08-25 14:12:03,735.735 INFO    ] 2026-08-25 14:12:03
[2026-08-25 14:12:03,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:12:03,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:12:04,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:12:04,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:12:04,231.231 INFO    ] time= 25/08/2026 14:12:04
[2026-08-25 14:12:04,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:12:04,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:12:04,420.420 INFO    ] No existing commands found in stream
[2026-08-25 14:12:09,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:12:09,450.450 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 14:12:10,883.883 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:12:10,886.886 INFO    ] Checking for system updates...
[2026-08-25 14:12:10,924.924 INFO    ] 200
[2026-08-25 14:12:10,927.927 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:10,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:12:10,983.983 INFO    ] No update needed
[2026-08-25 14:12:10,986.986 INFO    ] Checking for camera pi updates...
[2026-08-25 14:12:11,042.042 INFO    ] 200
[2026-08-25 14:12:11,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:11,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:12:11,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:12:11,148.148 INFO    ] No camera update needed
[2026-08-25 14:12:11,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:12:11,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:12:11,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:12:11,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:12:13,208.208 INFO    ] ================================================
[2026-08-25 14:12:13,232.232 INFO    ] Launching Daemon at Tue Aug 25 14:12:13 IST 2026
[2026-08-25 14:12:13,244.244 INFO    ] ================================================
[2026-08-25 14:12:13,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:12:13
[2026-08-25 14:12:14,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:12:14,721.721 INFO    ] Initializing speech engine...
[2026-08-25 14:12:14,733.733 INFO    ] 2026-08-25 14:12:14
[2026-08-25 14:12:14,983.983 INFO    ] 2026-08-25 14:12:14
[2026-08-25 14:12:15,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:12:15,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:12:15,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:12:15,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:12:15,438.438 INFO    ] time= 25/08/2026 14:12:15
[2026-08-25 14:12:15,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:12:15,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:12:15,677.677 INFO    ] No existing commands found in stream
[2026-08-25 14:12:20,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:12:20,704.704 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 14:12:22,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:12:22,697.697 INFO    ] Checking for system updates...
[2026-08-25 14:12:22,736.736 INFO    ] 200
[2026-08-25 14:12:22,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:22,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:12:22,799.799 INFO    ] No update needed
[2026-08-25 14:12:22,801.801 INFO    ] Checking for camera pi updates...
[2026-08-25 14:12:22,838.838 INFO    ] 200
[2026-08-25 14:12:22,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:22,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:12:22,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:12:22,939.939 INFO    ] No camera update needed
[2026-08-25 14:12:22,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:12:22,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:12:22,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:12:22,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:12:25,996.996 INFO    ] ================================================
[2026-08-25 14:12:25,012.012 INFO    ] Launching Daemon at Tue Aug 25 14:12:25 IST 2026
[2026-08-25 14:12:25,023.023 INFO    ] ================================================
[2026-08-25 14:12:25,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:12:25
[2026-08-25 14:12:26,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:12:26,468.468 INFO    ] Initializing speech engine...
[2026-08-25 14:12:26,476.476 INFO    ] 2026-08-25 14:12:26
[2026-08-25 14:12:26,737.737 INFO    ] 2026-08-25 14:12:26
[2026-08-25 14:12:26,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:12:27,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:12:27,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:12:27,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:12:27,197.197 INFO    ] time= 25/08/2026 14:12:27
[2026-08-25 14:12:27,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:12:27,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:12:27,435.435 INFO    ] No existing commands found in stream
[2026-08-25 14:12:32,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:12:32,450.450 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 14:12:36,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:12:36,226.226 INFO    ] Checking for system updates...
[2026-08-25 14:12:36,262.262 INFO    ] 200
[2026-08-25 14:12:36,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:36,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:12:36,319.319 INFO    ] No update needed
[2026-08-25 14:12:36,321.321 INFO    ] Checking for camera pi updates...
[2026-08-25 14:12:36,357.357 INFO    ] 200
[2026-08-25 14:12:36,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:36,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:12:36,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:12:36,451.451 INFO    ] No camera update needed
[2026-08-25 14:12:36,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:12:36,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:12:36,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:12:36,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:12:38,508.508 INFO    ] ================================================
[2026-08-25 14:12:38,524.524 INFO    ] Launching Daemon at Tue Aug 25 14:12:38 IST 2026
[2026-08-25 14:12:38,536.536 INFO    ] ================================================
[2026-08-25 14:12:39,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:12:39
[2026-08-25 14:12:39,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:12:40,135.135 INFO    ] Initializing speech engine...
[2026-08-25 14:12:40,149.149 INFO    ] 2026-08-25 14:12:40
[2026-08-25 14:12:40,460.460 INFO    ] 2026-08-25 14:12:40
[2026-08-25 14:12:40,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:12:40,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:12:40,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:12:40,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:12:40,979.979 INFO    ] time= 25/08/2026 14:12:40
[2026-08-25 14:12:40,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:12:41,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:12:41,155.155 INFO    ] No existing commands found in stream
[2026-08-25 14:12:46,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:12:46,190.190 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 14:12:47,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:12:47,686.686 INFO    ] Checking for system updates...
[2026-08-25 14:12:47,724.724 INFO    ] 200
[2026-08-25 14:12:47,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:47,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:12:47,791.791 INFO    ] No update needed
[2026-08-25 14:12:47,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 14:12:47,827.827 INFO    ] 200
[2026-08-25 14:12:47,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:47,875.875 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:12:47,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:12:47,926.926 INFO    ] No camera update needed
[2026-08-25 14:12:47,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:12:47,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:12:47,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:12:47,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:12:49,984.984 INFO    ] ================================================
[2026-08-25 14:12:50,999.999 INFO    ] Launching Daemon at Tue Aug 25 14:12:49 IST 2026
[2026-08-25 14:12:50,010.010 INFO    ] ================================================
[2026-08-25 14:12:50,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:12:50
[2026-08-25 14:12:51,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:12:51,558.558 INFO    ] Initializing speech engine...
[2026-08-25 14:12:51,572.572 INFO    ] 2026-08-25 14:12:51
[2026-08-25 14:12:51,841.841 INFO    ] 2026-08-25 14:12:51
[2026-08-25 14:12:51,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:12:52,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:12:52,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:12:52,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:12:52,324.324 INFO    ] time= 25/08/2026 14:12:52
[2026-08-25 14:12:52,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:12:52,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:12:52,534.534 INFO    ] No existing commands found in stream
[2026-08-25 14:12:57,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:12:57,560.560 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 14:12:59,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:12:59,067.067 INFO    ] Checking for system updates...
[2026-08-25 14:12:59,108.108 INFO    ] 200
[2026-08-25 14:12:59,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:59,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:12:59,172.172 INFO    ] No update needed
[2026-08-25 14:12:59,175.175 INFO    ] Checking for camera pi updates...
[2026-08-25 14:12:59,209.209 INFO    ] 200
[2026-08-25 14:12:59,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:12:59,251.251 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:12:59,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:12:59,319.319 INFO    ] No camera update needed
[2026-08-25 14:12:59,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:12:59,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:12:59,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:12:59,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:13:01,376.376 INFO    ] ================================================
[2026-08-25 14:13:01,399.399 INFO    ] Launching Daemon at Tue Aug 25 14:13:01 IST 2026
[2026-08-25 14:13:01,422.422 INFO    ] ================================================
[2026-08-25 14:13:02,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:13:02
[2026-08-25 14:13:02,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:13:03,031.031 INFO    ] Initializing speech engine...
[2026-08-25 14:13:03,037.037 INFO    ] 2026-08-25 14:13:03
[2026-08-25 14:13:03,315.315 INFO    ] 2026-08-25 14:13:03
[2026-08-25 14:13:03,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:13:03,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:13:03,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:13:03,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:13:03,818.818 INFO    ] time= 25/08/2026 14:13:03
[2026-08-25 14:13:03,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:13:03,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:13:04,005.005 INFO    ] No existing commands found in stream
[2026-08-25 14:13:09,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:13:09,038.038 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 14:13:10,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:13:10,442.442 INFO    ] Checking for system updates...
[2026-08-25 14:13:10,477.477 INFO    ] 200
[2026-08-25 14:13:10,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:10,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:13:10,542.542 INFO    ] No update needed
[2026-08-25 14:13:10,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 14:13:10,579.579 INFO    ] 200
[2026-08-25 14:13:10,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:10,625.625 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:13:10,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:13:10,676.676 INFO    ] No camera update needed
[2026-08-25 14:13:10,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:13:10,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:13:10,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:13:10,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:13:12,734.734 INFO    ] ================================================
[2026-08-25 14:13:12,752.752 INFO    ] Launching Daemon at Tue Aug 25 14:13:12 IST 2026
[2026-08-25 14:13:12,763.763 INFO    ] ================================================
[2026-08-25 14:13:13,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:13:13
[2026-08-25 14:13:13,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:13:14,205.205 INFO    ] Initializing speech engine...
[2026-08-25 14:13:14,218.218 INFO    ] 2026-08-25 14:13:14
[2026-08-25 14:13:14,480.480 INFO    ] 2026-08-25 14:13:14
[2026-08-25 14:13:14,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:13:14,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:13:14,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:13:14,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:13:14,826.826 INFO    ] time= 25/08/2026 14:13:14
[2026-08-25 14:13:14,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:13:14,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:13:14,972.972 INFO    ] No existing commands found in stream
[2026-08-25 14:13:19,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:13:19,988.988 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 14:13:23,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:13:23,239.239 INFO    ] Checking for system updates...
[2026-08-25 14:13:23,274.274 INFO    ] 200
[2026-08-25 14:13:23,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:23,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:13:23,336.336 INFO    ] No update needed
[2026-08-25 14:13:23,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 14:13:23,371.371 INFO    ] 200
[2026-08-25 14:13:23,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:23,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:13:23,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:13:23,480.480 INFO    ] No camera update needed
[2026-08-25 14:13:23,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:13:23,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:13:23,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:13:23,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:13:25,536.536 INFO    ] ================================================
[2026-08-25 14:13:25,550.550 INFO    ] Launching Daemon at Tue Aug 25 14:13:25 IST 2026
[2026-08-25 14:13:25,561.561 INFO    ] ================================================
[2026-08-25 14:13:26,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:13:26
[2026-08-25 14:13:26,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:13:27,003.003 INFO    ] Initializing speech engine...
[2026-08-25 14:13:27,017.017 INFO    ] 2026-08-25 14:13:27
[2026-08-25 14:13:27,304.304 INFO    ] 2026-08-25 14:13:27
[2026-08-25 14:13:27,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:13:27,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:13:27,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:13:27,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:13:27,719.719 INFO    ] time= 25/08/2026 14:13:27
[2026-08-25 14:13:27,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:13:27,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:13:27,806.806 INFO    ] No existing commands found in stream
[2026-08-25 14:13:32,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:13:32,827.827 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 14:13:34,453.453 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:13:34,456.456 INFO    ] Checking for system updates...
[2026-08-25 14:13:34,494.494 INFO    ] 200
[2026-08-25 14:13:34,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:34,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:13:34,552.552 INFO    ] No update needed
[2026-08-25 14:13:34,555.555 INFO    ] Checking for camera pi updates...
[2026-08-25 14:13:34,589.589 INFO    ] 200
[2026-08-25 14:13:34,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:34,633.633 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:13:34,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:13:34,680.680 INFO    ] No camera update needed
[2026-08-25 14:13:34,682.682 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:13:34,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:13:34,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:13:34,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:13:36,734.734 INFO    ] ================================================
[2026-08-25 14:13:36,750.750 INFO    ] Launching Daemon at Tue Aug 25 14:13:36 IST 2026
[2026-08-25 14:13:36,760.760 INFO    ] ================================================
[2026-08-25 14:13:37,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:13:37
[2026-08-25 14:13:37,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:13:38,210.210 INFO    ] Initializing speech engine...
[2026-08-25 14:13:38,219.219 INFO    ] 2026-08-25 14:13:38
[2026-08-25 14:13:38,473.473 INFO    ] 2026-08-25 14:13:38
[2026-08-25 14:13:38,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:13:38,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:13:38,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:13:38,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:13:38,935.935 INFO    ] time= 25/08/2026 14:13:38
[2026-08-25 14:13:38,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:13:39,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:13:39,165.165 INFO    ] No existing commands found in stream
[2026-08-25 14:13:44,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:13:44,195.195 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 14:13:45,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:13:45,042.042 INFO    ] Checking for system updates...
[2026-08-25 14:13:45,078.078 INFO    ] 200
[2026-08-25 14:13:45,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:45,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:13:45,142.142 INFO    ] No update needed
[2026-08-25 14:13:45,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 14:13:45,183.183 INFO    ] 200
[2026-08-25 14:13:45,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:45,231.231 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:13:45,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:13:45,289.289 INFO    ] No camera update needed
[2026-08-25 14:13:45,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:13:45,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:13:45,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:13:45,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:13:47,345.345 INFO    ] ================================================
[2026-08-25 14:13:47,360.360 INFO    ] Launching Daemon at Tue Aug 25 14:13:47 IST 2026
[2026-08-25 14:13:47,371.371 INFO    ] ================================================
[2026-08-25 14:13:47,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:13:47
[2026-08-25 14:13:48,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:13:48,800.800 INFO    ] Initializing speech engine...
[2026-08-25 14:13:48,807.807 INFO    ] 2026-08-25 14:13:48
[2026-08-25 14:13:49,051.051 INFO    ] 2026-08-25 14:13:49
[2026-08-25 14:13:49,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:13:49,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:13:49,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:13:49,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:13:49,522.522 INFO    ] time= 25/08/2026 14:13:49
[2026-08-25 14:13:49,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:13:49,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:13:49,757.757 INFO    ] No existing commands found in stream
[2026-08-25 14:13:54,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:13:54,774.774 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 14:13:56,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:13:56,971.971 INFO    ] Checking for system updates...
[2026-08-25 14:13:57,007.007 INFO    ] 200
[2026-08-25 14:13:57,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:57,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:13:57,063.063 INFO    ] No update needed
[2026-08-25 14:13:57,066.066 INFO    ] Checking for camera pi updates...
[2026-08-25 14:13:57,100.100 INFO    ] 200
[2026-08-25 14:13:57,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:13:57,142.142 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:13:57,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:13:57,291.291 INFO    ] No camera update needed
[2026-08-25 14:13:57,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:13:57,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:13:57,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:13:57,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:13:59,345.345 INFO    ] ================================================
[2026-08-25 14:13:59,361.361 INFO    ] Launching Daemon at Tue Aug 25 14:13:59 IST 2026
[2026-08-25 14:13:59,372.372 INFO    ] ================================================
[2026-08-25 14:13:59,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:13:59
[2026-08-25 14:14:00,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:14:00,793.793 INFO    ] Initializing speech engine...
[2026-08-25 14:14:00,802.802 INFO    ] 2026-08-25 14:14:00
[2026-08-25 14:14:01,047.047 INFO    ] 2026-08-25 14:14:01
[2026-08-25 14:14:01,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:14:01,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:14:01,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:14:01,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:14:01,447.447 INFO    ] time= 25/08/2026 14:14:01
[2026-08-25 14:14:01,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:14:01,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:14:01,520.520 INFO    ] No existing commands found in stream
[2026-08-25 14:14:06,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:14:06,533.533 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 14:14:08,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:14:08,897.897 INFO    ] Checking for system updates...
[2026-08-25 14:14:08,932.932 INFO    ] 200
[2026-08-25 14:14:08,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:08,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:14:08,989.989 INFO    ] No update needed
[2026-08-25 14:14:08,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 14:14:09,025.025 INFO    ] 200
[2026-08-25 14:14:09,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:09,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:14:09,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:14:09,154.154 INFO    ] No camera update needed
[2026-08-25 14:14:09,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:14:09,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:14:09,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:14:09,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:14:11,211.211 INFO    ] ================================================
[2026-08-25 14:14:11,227.227 INFO    ] Launching Daemon at Tue Aug 25 14:14:11 IST 2026
[2026-08-25 14:14:11,238.238 INFO    ] ================================================
[2026-08-25 14:14:11,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:14:11
[2026-08-25 14:14:12,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:14:12,871.871 INFO    ] Initializing speech engine...
[2026-08-25 14:14:12,883.883 INFO    ] 2026-08-25 14:14:12
[2026-08-25 14:14:13,199.199 INFO    ] 2026-08-25 14:14:13
[2026-08-25 14:14:13,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:14:13,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:14:13,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:14:13,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:14:13,717.717 INFO    ] time= 25/08/2026 14:14:13
[2026-08-25 14:14:13,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:14:13,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:14:13,862.862 INFO    ] No existing commands found in stream
[2026-08-25 14:14:18,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:14:18,895.895 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 14:14:22,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:14:22,397.397 INFO    ] Checking for system updates...
[2026-08-25 14:14:22,435.435 INFO    ] 200
[2026-08-25 14:14:22,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:22,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:14:22,495.495 INFO    ] No update needed
[2026-08-25 14:14:22,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 14:14:22,538.538 INFO    ] 200
[2026-08-25 14:14:22,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:22,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:14:22,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:14:22,640.640 INFO    ] No camera update needed
[2026-08-25 14:14:22,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:14:22,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:14:22,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:14:22,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:14:24,695.695 INFO    ] ================================================
[2026-08-25 14:14:24,711.711 INFO    ] Launching Daemon at Tue Aug 25 14:14:24 IST 2026
[2026-08-25 14:14:24,722.722 INFO    ] ================================================
[2026-08-25 14:14:25,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:14:25
[2026-08-25 14:14:25,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:14:26,183.183 INFO    ] Initializing speech engine...
[2026-08-25 14:14:26,189.189 INFO    ] 2026-08-25 14:14:26
[2026-08-25 14:14:26,450.450 INFO    ] 2026-08-25 14:14:26
[2026-08-25 14:14:26,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:14:26,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:14:26,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:14:26,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:14:26,950.950 INFO    ] time= 25/08/2026 14:14:26
[2026-08-25 14:14:26,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:14:27,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:14:27,147.147 INFO    ] No existing commands found in stream
[2026-08-25 14:14:32,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:14:32,165.165 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 14:14:33,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:14:33,871.871 INFO    ] Checking for system updates...
[2026-08-25 14:14:33,907.907 INFO    ] 200
[2026-08-25 14:14:33,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:33,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:14:33,967.967 INFO    ] No update needed
[2026-08-25 14:14:33,969.969 INFO    ] Checking for camera pi updates...
[2026-08-25 14:14:34,003.003 INFO    ] 200
[2026-08-25 14:14:34,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:34,053.053 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:14:34,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:14:34,108.108 INFO    ] No camera update needed
[2026-08-25 14:14:34,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:14:34,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:14:34,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:14:34,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:14:36,164.164 INFO    ] ================================================
[2026-08-25 14:14:36,179.179 INFO    ] Launching Daemon at Tue Aug 25 14:14:36 IST 2026
[2026-08-25 14:14:36,190.190 INFO    ] ================================================
[2026-08-25 14:14:36,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:14:36
[2026-08-25 14:14:37,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:14:37,654.654 INFO    ] Initializing speech engine...
[2026-08-25 14:14:37,659.659 INFO    ] 2026-08-25 14:14:37
[2026-08-25 14:14:37,921.921 INFO    ] 2026-08-25 14:14:37
[2026-08-25 14:14:37,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:14:38,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:14:38,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:14:38,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:14:38,408.408 INFO    ] time= 25/08/2026 14:14:38
[2026-08-25 14:14:38,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:14:38,478.478 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:14:38,620.620 INFO    ] No existing commands found in stream
[2026-08-25 14:14:43,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:14:43,638.638 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 14:14:47,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:14:47,387.387 INFO    ] Checking for system updates...
[2026-08-25 14:14:47,423.423 INFO    ] 200
[2026-08-25 14:14:47,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:47,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:14:47,480.480 INFO    ] No update needed
[2026-08-25 14:14:47,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 14:14:47,516.516 INFO    ] 200
[2026-08-25 14:14:47,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:47,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:14:47,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:14:47,608.608 INFO    ] No camera update needed
[2026-08-25 14:14:47,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:14:47,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:14:47,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:14:47,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:14:49,666.666 INFO    ] ================================================
[2026-08-25 14:14:49,681.681 INFO    ] Launching Daemon at Tue Aug 25 14:14:49 IST 2026
[2026-08-25 14:14:49,692.692 INFO    ] ================================================
[2026-08-25 14:14:50,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:14:50
[2026-08-25 14:14:50,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:14:51,124.124 INFO    ] Initializing speech engine...
[2026-08-25 14:14:51,130.130 INFO    ] 2026-08-25 14:14:51
[2026-08-25 14:14:51,379.379 INFO    ] 2026-08-25 14:14:51
[2026-08-25 14:14:51,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:14:51,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:14:51,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:14:51,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:14:51,947.947 INFO    ] time= 25/08/2026 14:14:51
[2026-08-25 14:14:51,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:14:51,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:14:52,086.086 INFO    ] No existing commands found in stream
[2026-08-25 14:14:57,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:14:57,109.109 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 14:14:58,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:14:58,746.746 INFO    ] Checking for system updates...
[2026-08-25 14:14:58,782.782 INFO    ] 200
[2026-08-25 14:14:58,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:58,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:14:58,841.841 INFO    ] No update needed
[2026-08-25 14:14:58,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 14:14:58,876.876 INFO    ] 200
[2026-08-25 14:14:58,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:14:58,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:14:58,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:14:58,972.972 INFO    ] No camera update needed
[2026-08-25 14:14:58,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:14:58,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:14:58,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:14:58,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:15:01,026.026 INFO    ] ================================================
[2026-08-25 14:15:01,042.042 INFO    ] Launching Daemon at Tue Aug 25 14:15:01 IST 2026
[2026-08-25 14:15:01,053.053 INFO    ] ================================================
[2026-08-25 14:15:02,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:15:02
[2026-08-25 14:15:02,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:15:03,079.079 INFO    ] Initializing speech engine...
[2026-08-25 14:15:03,094.094 INFO    ] 2026-08-25 14:15:03
[2026-08-25 14:15:03,386.386 INFO    ] 2026-08-25 14:15:03
[2026-08-25 14:15:03,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:15:03,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:15:03,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:15:03,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:15:03,761.761 INFO    ] time= 25/08/2026 14:15:03
[2026-08-25 14:15:03,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:15:03,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:15:03,893.893 INFO    ] No existing commands found in stream
[2026-08-25 14:15:08,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:15:08,914.914 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 14:15:09,939.939 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:15:09,942.942 INFO    ] Checking for system updates...
[2026-08-25 14:15:09,981.981 INFO    ] 200
[2026-08-25 14:15:09,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:10,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:15:10,041.041 INFO    ] No update needed
[2026-08-25 14:15:10,044.044 INFO    ] Checking for camera pi updates...
[2026-08-25 14:15:10,079.079 INFO    ] 200
[2026-08-25 14:15:10,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:10,122.122 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:15:10,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:15:10,172.172 INFO    ] No camera update needed
[2026-08-25 14:15:10,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:15:10,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:15:10,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:15:10,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:15:12,227.227 INFO    ] ================================================
[2026-08-25 14:15:12,242.242 INFO    ] Launching Daemon at Tue Aug 25 14:15:12 IST 2026
[2026-08-25 14:15:12,252.252 INFO    ] ================================================
[2026-08-25 14:15:12,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:15:12
[2026-08-25 14:15:13,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:15:13,704.704 INFO    ] Initializing speech engine...
[2026-08-25 14:15:13,714.714 INFO    ] 2026-08-25 14:15:13
[2026-08-25 14:15:13,962.962 INFO    ] 2026-08-25 14:15:13
[2026-08-25 14:15:14,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:15:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:15:14,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:15:14,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:15:14,516.516 INFO    ] time= 25/08/2026 14:15:14
[2026-08-25 14:15:14,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:15:14,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:15:14,672.672 INFO    ] No existing commands found in stream
[2026-08-25 14:15:19,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:15:19,703.703 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 14:15:23,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:15:23,956.956 INFO    ] Checking for system updates...
[2026-08-25 14:15:23,992.992 INFO    ] 200
[2026-08-25 14:15:23,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:24,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:15:24,049.049 INFO    ] No update needed
[2026-08-25 14:15:24,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 14:15:24,092.092 INFO    ] 200
[2026-08-25 14:15:24,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:24,135.135 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:15:24,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:15:24,190.190 INFO    ] No camera update needed
[2026-08-25 14:15:24,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:15:24,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:15:24,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:15:24,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:15:26,247.247 INFO    ] ================================================
[2026-08-25 14:15:26,262.262 INFO    ] Launching Daemon at Tue Aug 25 14:15:26 IST 2026
[2026-08-25 14:15:26,272.272 INFO    ] ================================================
[2026-08-25 14:15:26,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:15:26
[2026-08-25 14:15:27,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:15:27,725.725 INFO    ] Initializing speech engine...
[2026-08-25 14:15:27,738.738 INFO    ] 2026-08-25 14:15:27
[2026-08-25 14:15:27,988.988 INFO    ] 2026-08-25 14:15:27
[2026-08-25 14:15:28,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:15:28,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:15:28,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:15:28,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:15:28,376.376 INFO    ] time= 25/08/2026 14:15:28
[2026-08-25 14:15:28,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:15:28,446.446 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:15:28,575.575 INFO    ] No existing commands found in stream
[2026-08-25 14:15:33,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:15:33,588.588 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 14:15:37,483.483 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:15:37,486.486 INFO    ] Checking for system updates...
[2026-08-25 14:15:37,522.522 INFO    ] 200
[2026-08-25 14:15:37,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:37,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:15:37,580.580 INFO    ] No update needed
[2026-08-25 14:15:37,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 14:15:37,619.619 INFO    ] 200
[2026-08-25 14:15:37,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:37,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:15:37,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:15:37,714.714 INFO    ] No camera update needed
[2026-08-25 14:15:37,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:15:37,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:15:37,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:15:37,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:15:39,771.771 INFO    ] ================================================
[2026-08-25 14:15:39,786.786 INFO    ] Launching Daemon at Tue Aug 25 14:15:39 IST 2026
[2026-08-25 14:15:39,797.797 INFO    ] ================================================
[2026-08-25 14:15:40,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:15:40
[2026-08-25 14:15:40,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:15:41,212.212 INFO    ] Initializing speech engine...
[2026-08-25 14:15:41,222.222 INFO    ] 2026-08-25 14:15:41
[2026-08-25 14:15:41,470.470 INFO    ] 2026-08-25 14:15:41
[2026-08-25 14:15:41,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:15:41,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:15:41,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:15:41,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:15:41,974.974 INFO    ] time= 25/08/2026 14:15:41
[2026-08-25 14:15:42,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:15:42,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:15:42,169.169 INFO    ] No existing commands found in stream
[2026-08-25 14:15:47,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:15:47,192.192 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 14:15:49,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:15:49,125.125 INFO    ] Checking for system updates...
[2026-08-25 14:15:49,160.160 INFO    ] 200
[2026-08-25 14:15:49,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:49,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:15:49,216.216 INFO    ] No update needed
[2026-08-25 14:15:49,219.219 INFO    ] Checking for camera pi updates...
[2026-08-25 14:15:49,252.252 INFO    ] 200
[2026-08-25 14:15:49,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:15:49,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:15:49,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:15:49,347.347 INFO    ] No camera update needed
[2026-08-25 14:15:49,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:15:49,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:15:49,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:15:49,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:15:51,402.402 INFO    ] ================================================
[2026-08-25 14:15:51,417.417 INFO    ] Launching Daemon at Tue Aug 25 14:15:51 IST 2026
[2026-08-25 14:15:51,428.428 INFO    ] ================================================
[2026-08-25 14:15:52,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:15:52
[2026-08-25 14:15:52,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:15:52,980.980 INFO    ] Initializing speech engine...
[2026-08-25 14:15:52,988.988 INFO    ] 2026-08-25 14:15:52
[2026-08-25 14:15:53,263.263 INFO    ] 2026-08-25 14:15:53
[2026-08-25 14:15:53,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:15:53,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:15:53,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:15:53,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:15:53,739.739 INFO    ] time= 25/08/2026 14:15:53
[2026-08-25 14:15:53,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:15:53,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:15:53,964.964 INFO    ] No existing commands found in stream
[2026-08-25 14:15:58,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:15:58,980.980 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 14:16:00,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:16:00,914.914 INFO    ] Checking for system updates...
[2026-08-25 14:16:00,950.950 INFO    ] 200
[2026-08-25 14:16:00,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:01,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:16:01,010.010 INFO    ] No update needed
[2026-08-25 14:16:01,012.012 INFO    ] Checking for camera pi updates...
[2026-08-25 14:16:01,050.050 INFO    ] 200
[2026-08-25 14:16:01,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:01,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:16:01,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:16:01,243.243 INFO    ] No camera update needed
[2026-08-25 14:16:01,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:16:01,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:16:01,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:16:01,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:16:03,304.304 INFO    ] ================================================
[2026-08-25 14:16:03,320.320 INFO    ] Launching Daemon at Tue Aug 25 14:16:03 IST 2026
[2026-08-25 14:16:03,331.331 INFO    ] ================================================
[2026-08-25 14:16:03,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:16:03
[2026-08-25 14:16:04,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:16:04,928.928 INFO    ] Initializing speech engine...
[2026-08-25 14:16:04,939.939 INFO    ] 2026-08-25 14:16:04
[2026-08-25 14:16:05,220.220 INFO    ] 2026-08-25 14:16:05
[2026-08-25 14:16:05,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:16:05,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:16:05,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:16:05,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:16:05,739.739 INFO    ] time= 25/08/2026 14:16:05
[2026-08-25 14:16:05,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:16:05,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:16:05,959.959 INFO    ] No existing commands found in stream
[2026-08-25 14:16:10,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:16:11,002.002 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 14:16:14,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:16:14,498.498 INFO    ] Checking for system updates...
[2026-08-25 14:16:14,535.535 INFO    ] 200
[2026-08-25 14:16:14,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:14,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:16:14,595.595 INFO    ] No update needed
[2026-08-25 14:16:14,598.598 INFO    ] Checking for camera pi updates...
[2026-08-25 14:16:14,638.638 INFO    ] 200
[2026-08-25 14:16:14,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:14,693.693 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:16:14,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:16:14,753.753 INFO    ] No camera update needed
[2026-08-25 14:16:14,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:16:14,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:16:14,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:16:14,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:16:16,811.811 INFO    ] ================================================
[2026-08-25 14:16:16,827.827 INFO    ] Launching Daemon at Tue Aug 25 14:16:16 IST 2026
[2026-08-25 14:16:16,838.838 INFO    ] ================================================
[2026-08-25 14:16:17,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:16:17
[2026-08-25 14:16:17,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:16:18,238.238 INFO    ] Initializing speech engine...
[2026-08-25 14:16:18,248.248 INFO    ] 2026-08-25 14:16:18
[2026-08-25 14:16:18,544.544 INFO    ] 2026-08-25 14:16:18
[2026-08-25 14:16:18,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:16:18,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:16:18,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:16:18,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:16:18,926.926 INFO    ] time= 25/08/2026 14:16:18
[2026-08-25 14:16:18,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:16:18,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:16:19,050.050 INFO    ] No existing commands found in stream
[2026-08-25 14:16:24,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:16:24,066.066 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 14:16:26,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:16:26,248.248 INFO    ] Checking for system updates...
[2026-08-25 14:16:26,287.287 INFO    ] 200
[2026-08-25 14:16:26,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:26,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:16:26,344.344 INFO    ] No update needed
[2026-08-25 14:16:26,346.346 INFO    ] Checking for camera pi updates...
[2026-08-25 14:16:26,379.379 INFO    ] 200
[2026-08-25 14:16:26,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:26,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:16:26,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:16:26,484.484 INFO    ] No camera update needed
[2026-08-25 14:16:26,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:16:26,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:16:26,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:16:26,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:16:28,540.540 INFO    ] ================================================
[2026-08-25 14:16:28,555.555 INFO    ] Launching Daemon at Tue Aug 25 14:16:28 IST 2026
[2026-08-25 14:16:28,565.565 INFO    ] ================================================
[2026-08-25 14:16:29,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:16:29
[2026-08-25 14:16:29,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:16:29,977.977 INFO    ] Initializing speech engine...
[2026-08-25 14:16:29,982.982 INFO    ] 2026-08-25 14:16:29
[2026-08-25 14:16:30,285.285 INFO    ] 2026-08-25 14:16:30
[2026-08-25 14:16:30,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:16:30,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:16:30,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:16:30,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:16:30,706.706 INFO    ] time= 25/08/2026 14:16:30
[2026-08-25 14:16:30,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:16:30,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:16:30,902.902 INFO    ] No existing commands found in stream
[2026-08-25 14:16:35,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:16:35,916.916 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 14:16:37,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:16:37,843.843 INFO    ] Checking for system updates...
[2026-08-25 14:16:37,880.880 INFO    ] 200
[2026-08-25 14:16:37,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:37,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:16:37,937.937 INFO    ] No update needed
[2026-08-25 14:16:37,939.939 INFO    ] Checking for camera pi updates...
[2026-08-25 14:16:37,976.976 INFO    ] 200
[2026-08-25 14:16:37,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:38,019.019 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:16:38,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:16:38,072.072 INFO    ] No camera update needed
[2026-08-25 14:16:38,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:16:38,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:16:38,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:16:38,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:16:40,126.126 INFO    ] ================================================
[2026-08-25 14:16:40,141.141 INFO    ] Launching Daemon at Tue Aug 25 14:16:40 IST 2026
[2026-08-25 14:16:40,152.152 INFO    ] ================================================
[2026-08-25 14:16:40,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:16:40
[2026-08-25 14:16:41,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:16:41,568.568 INFO    ] Initializing speech engine...
[2026-08-25 14:16:41,578.578 INFO    ] 2026-08-25 14:16:41
[2026-08-25 14:16:41,829.829 INFO    ] 2026-08-25 14:16:41
[2026-08-25 14:16:41,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:16:42,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:16:42,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:16:42,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:16:42,324.324 INFO    ] time= 25/08/2026 14:16:42
[2026-08-25 14:16:42,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:16:42,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:16:42,533.533 INFO    ] No existing commands found in stream
[2026-08-25 14:16:47,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:16:47,551.551 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 14:16:50,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:16:50,408.408 INFO    ] Checking for system updates...
[2026-08-25 14:16:50,445.445 INFO    ] 200
[2026-08-25 14:16:50,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:50,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:16:50,503.503 INFO    ] No update needed
[2026-08-25 14:16:50,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 14:16:50,541.541 INFO    ] 200
[2026-08-25 14:16:50,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:16:50,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:16:50,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:16:50,651.651 INFO    ] No camera update needed
[2026-08-25 14:16:50,654.654 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:16:50,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:16:50,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:16:50,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:16:52,710.710 INFO    ] ================================================
[2026-08-25 14:16:52,725.725 INFO    ] Launching Daemon at Tue Aug 25 14:16:52 IST 2026
[2026-08-25 14:16:52,735.735 INFO    ] ================================================
[2026-08-25 14:16:53,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:16:53
[2026-08-25 14:16:54,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:16:54,343.343 INFO    ] Initializing speech engine...
[2026-08-25 14:16:54,351.351 INFO    ] 2026-08-25 14:16:54
[2026-08-25 14:16:54,627.627 INFO    ] 2026-08-25 14:16:54
[2026-08-25 14:16:54,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:16:54,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:16:54,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:16:55,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:16:55,115.115 INFO    ] time= 25/08/2026 14:16:55
[2026-08-25 14:16:55,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:16:55,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:16:55,332.332 INFO    ] No existing commands found in stream
[2026-08-25 14:17:00,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:17:00,351.351 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 14:17:03,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:17:03,922.922 INFO    ] Checking for system updates...
[2026-08-25 14:17:03,959.959 INFO    ] 200
[2026-08-25 14:17:03,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:04,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:04,018.018 INFO    ] No update needed
[2026-08-25 14:17:04,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 14:17:04,056.056 INFO    ] 200
[2026-08-25 14:17:04,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:04,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:17:04,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:04,157.157 INFO    ] No camera update needed
[2026-08-25 14:17:04,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:17:04,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:17:04,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:17:04,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:17:06,217.217 INFO    ] ================================================
[2026-08-25 14:17:06,232.232 INFO    ] Launching Daemon at Tue Aug 25 14:17:06 IST 2026
[2026-08-25 14:17:06,243.243 INFO    ] ================================================
[2026-08-25 14:17:06,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:17:06
[2026-08-25 14:17:07,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:17:07,920.920 INFO    ] Initializing speech engine...
[2026-08-25 14:17:07,930.930 INFO    ] 2026-08-25 14:17:07
[2026-08-25 14:17:08,240.240 INFO    ] 2026-08-25 14:17:08
[2026-08-25 14:17:08,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:17:08,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:17:08,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:17:08,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:17:08,746.746 INFO    ] time= 25/08/2026 14:17:08
[2026-08-25 14:17:08,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:17:08,793.793 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:17:08,937.937 INFO    ] No existing commands found in stream
[2026-08-25 14:17:13,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:17:13,972.972 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 14:17:17,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:17:17,655.655 INFO    ] Checking for system updates...
[2026-08-25 14:17:17,697.697 INFO    ] 200
[2026-08-25 14:17:17,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:17,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:17,756.756 INFO    ] No update needed
[2026-08-25 14:17:17,759.759 INFO    ] Checking for camera pi updates...
[2026-08-25 14:17:17,794.794 INFO    ] 200
[2026-08-25 14:17:17,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:17,838.838 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:17:17,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:17,889.889 INFO    ] No camera update needed
[2026-08-25 14:17:17,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:17:17,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:17:17,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:17:17,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:17:19,948.948 INFO    ] ================================================
[2026-08-25 14:17:19,965.965 INFO    ] Launching Daemon at Tue Aug 25 14:17:19 IST 2026
[2026-08-25 14:17:19,976.976 INFO    ] ================================================
[2026-08-25 14:17:20,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:17:20
[2026-08-25 14:17:21,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:17:21,655.655 INFO    ] Initializing speech engine...
[2026-08-25 14:17:21,667.667 INFO    ] 2026-08-25 14:17:21
[2026-08-25 14:17:21,955.955 INFO    ] 2026-08-25 14:17:21
[2026-08-25 14:17:22,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:17:22,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:17:22,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:17:22,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:17:22,512.512 INFO    ] time= 25/08/2026 14:17:22
[2026-08-25 14:17:22,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:17:22,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:17:22,681.681 INFO    ] No existing commands found in stream
[2026-08-25 14:17:27,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:17:27,715.715 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 14:17:31,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:17:31,794.794 INFO    ] Checking for system updates...
[2026-08-25 14:17:31,838.838 INFO    ] 200
[2026-08-25 14:17:31,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:31,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:31,902.902 INFO    ] No update needed
[2026-08-25 14:17:31,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 14:17:31,943.943 INFO    ] 200
[2026-08-25 14:17:31,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:32,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:17:32,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:32,056.056 INFO    ] No camera update needed
[2026-08-25 14:17:32,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:17:32,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:17:32,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:17:32,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:17:34,115.115 INFO    ] ================================================
[2026-08-25 14:17:34,131.131 INFO    ] Launching Daemon at Tue Aug 25 14:17:34 IST 2026
[2026-08-25 14:17:34,142.142 INFO    ] ================================================
[2026-08-25 14:17:34,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:17:34
[2026-08-25 14:17:35,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:17:35,585.585 INFO    ] Initializing speech engine...
[2026-08-25 14:17:35,602.602 INFO    ] 2026-08-25 14:17:35
[2026-08-25 14:17:35,891.891 INFO    ] 2026-08-25 14:17:35
[2026-08-25 14:17:35,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:17:36,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:17:36,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:17:36,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:17:36,277.277 INFO    ] time= 25/08/2026 14:17:36
[2026-08-25 14:17:36,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:17:36,304.304 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:17:36,409.409 INFO    ] No existing commands found in stream
[2026-08-25 14:17:41,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:17:41,424.424 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 14:17:43,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:17:43,119.119 INFO    ] Checking for system updates...
[2026-08-25 14:17:43,155.155 INFO    ] 200
[2026-08-25 14:17:43,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:43,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:43,213.213 INFO    ] No update needed
[2026-08-25 14:17:43,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 14:17:43,249.249 INFO    ] 200
[2026-08-25 14:17:43,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:43,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:17:43,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:17:43,340.340 INFO    ] No camera update needed
[2026-08-25 14:17:43,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:17:43,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:17:43,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:17:43,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:17:45,395.395 INFO    ] ================================================
[2026-08-25 14:17:45,410.410 INFO    ] Launching Daemon at Tue Aug 25 14:17:45 IST 2026
[2026-08-25 14:17:45,421.421 INFO    ] ================================================
[2026-08-25 14:17:46,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:17:46
[2026-08-25 14:17:46,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:17:46,873.873 INFO    ] Initializing speech engine...
[2026-08-25 14:17:46,889.889 INFO    ] 2026-08-25 14:17:46
[2026-08-25 14:17:47,175.175 INFO    ] 2026-08-25 14:17:47
[2026-08-25 14:17:47,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:17:47,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:17:47,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:17:47,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:17:47,547.547 INFO    ] time= 25/08/2026 14:17:47
[2026-08-25 14:17:47,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:17:47,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:17:47,686.686 INFO    ] No existing commands found in stream
[2026-08-25 14:17:52,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:17:52,719.719 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 14:17:56,073.073 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:17:56,076.076 INFO    ] Checking for system updates...
[2026-08-25 14:17:56,111.111 INFO    ] 200
[2026-08-25 14:17:56,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:56,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:17:56,170.170 INFO    ] No update needed
[2026-08-25 14:17:56,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 14:17:56,207.207 INFO    ] 200
[2026-08-25 14:17:56,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:17:56,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:17:56,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:17:56,347.347 INFO    ] No camera update needed
[2026-08-25 14:17:56,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:17:56,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:17:56,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:17:56,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:17:58,404.404 INFO    ] ================================================
[2026-08-25 14:17:58,420.420 INFO    ] Launching Daemon at Tue Aug 25 14:17:58 IST 2026
[2026-08-25 14:17:58,431.431 INFO    ] ================================================
[2026-08-25 14:17:58,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:17:58
[2026-08-25 14:17:59,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:17:59,849.849 INFO    ] Initializing speech engine...
[2026-08-25 14:17:59,859.859 INFO    ] 2026-08-25 14:17:59
[2026-08-25 14:18:00,108.108 INFO    ] 2026-08-25 14:18:00
[2026-08-25 14:18:00,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:18:00,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:18:00,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:18:00,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:18:00,602.602 INFO    ] time= 25/08/2026 14:18:00
[2026-08-25 14:18:00,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:18:00,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:18:00,807.807 INFO    ] No existing commands found in stream
[2026-08-25 14:18:05,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:18:05,840.840 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 14:18:09,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:18:09,185.185 INFO    ] Checking for system updates...
[2026-08-25 14:18:09,221.221 INFO    ] 200
[2026-08-25 14:18:09,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:09,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:18:09,288.288 INFO    ] No update needed
[2026-08-25 14:18:09,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 14:18:09,324.324 INFO    ] 200
[2026-08-25 14:18:09,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:09,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:18:09,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:18:09,525.525 INFO    ] No camera update needed
[2026-08-25 14:18:09,528.528 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:18:09,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:18:09,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:18:09,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:18:11,581.581 INFO    ] ================================================
[2026-08-25 14:18:11,596.596 INFO    ] Launching Daemon at Tue Aug 25 14:18:11 IST 2026
[2026-08-25 14:18:11,607.607 INFO    ] ================================================
[2026-08-25 14:18:12,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:18:12
[2026-08-25 14:18:12,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:18:13,018.018 INFO    ] Initializing speech engine...
[2026-08-25 14:18:13,026.026 INFO    ] 2026-08-25 14:18:13
[2026-08-25 14:18:13,316.316 INFO    ] 2026-08-25 14:18:13
[2026-08-25 14:18:13,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:18:13,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:18:13,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:18:13,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:18:13,689.689 INFO    ] time= 25/08/2026 14:18:13
[2026-08-25 14:18:13,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:18:13,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:18:13,813.813 INFO    ] No existing commands found in stream
[2026-08-25 14:18:18,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:18:18,826.826 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 14:18:21,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:18:21,993.993 INFO    ] Checking for system updates...
[2026-08-25 14:18:22,028.028 INFO    ] 200
[2026-08-25 14:18:22,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:22,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:22,087.087 INFO    ] No update needed
[2026-08-25 14:18:22,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 14:18:22,123.123 INFO    ] 200
[2026-08-25 14:18:22,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:22,173.173 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:18:22,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:22,235.235 INFO    ] No camera update needed
[2026-08-25 14:18:22,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:18:22,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:18:22,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:18:22,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:18:24,291.291 INFO    ] ================================================
[2026-08-25 14:18:24,307.307 INFO    ] Launching Daemon at Tue Aug 25 14:18:24 IST 2026
[2026-08-25 14:18:24,317.317 INFO    ] ================================================
[2026-08-25 14:18:24,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:18:24
[2026-08-25 14:18:25,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:18:25,758.758 INFO    ] Initializing speech engine...
[2026-08-25 14:18:25,768.768 INFO    ] 2026-08-25 14:18:25
[2026-08-25 14:18:26,033.033 INFO    ] 2026-08-25 14:18:26
[2026-08-25 14:18:26,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:18:26,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:18:26,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:18:26,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:18:26,407.407 INFO    ] time= 25/08/2026 14:18:26
[2026-08-25 14:18:26,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:18:26,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:18:26,530.530 INFO    ] No existing commands found in stream
[2026-08-25 14:18:31,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:18:31,546.546 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 14:18:32,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:18:32,973.973 INFO    ] Checking for system updates...
[2026-08-25 14:18:33,009.009 INFO    ] 200
[2026-08-25 14:18:33,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:33,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:33,070.070 INFO    ] No update needed
[2026-08-25 14:18:33,072.072 INFO    ] Checking for camera pi updates...
[2026-08-25 14:18:33,105.105 INFO    ] 200
[2026-08-25 14:18:33,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:33,149.149 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:18:33,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:33,200.200 INFO    ] No camera update needed
[2026-08-25 14:18:33,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:18:33,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:18:33,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:18:33,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:18:35,254.254 INFO    ] ================================================
[2026-08-25 14:18:35,270.270 INFO    ] Launching Daemon at Tue Aug 25 14:18:35 IST 2026
[2026-08-25 14:18:35,281.281 INFO    ] ================================================
[2026-08-25 14:18:35,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:18:35
[2026-08-25 14:18:36,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:18:36,706.706 INFO    ] Initializing speech engine...
[2026-08-25 14:18:36,719.719 INFO    ] 2026-08-25 14:18:36
[2026-08-25 14:18:36,998.998 INFO    ] 2026-08-25 14:18:36
[2026-08-25 14:18:37,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:18:37,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:18:37,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:18:37,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:18:37,411.411 INFO    ] time= 25/08/2026 14:18:37
[2026-08-25 14:18:37,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:18:37,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:18:37,573.573 INFO    ] No existing commands found in stream
[2026-08-25 14:18:42,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:18:42,602.602 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 14:18:43,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:18:43,490.490 INFO    ] Checking for system updates...
[2026-08-25 14:18:43,528.528 INFO    ] 200
[2026-08-25 14:18:43,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:43,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:43,585.585 INFO    ] No update needed
[2026-08-25 14:18:43,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 14:18:43,620.620 INFO    ] 200
[2026-08-25 14:18:43,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:43,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:18:43,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:43,717.717 INFO    ] No camera update needed
[2026-08-25 14:18:43,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:18:43,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:18:43,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:18:43,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:18:45,772.772 INFO    ] ================================================
[2026-08-25 14:18:45,787.787 INFO    ] Launching Daemon at Tue Aug 25 14:18:45 IST 2026
[2026-08-25 14:18:45,798.798 INFO    ] ================================================
[2026-08-25 14:18:46,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:18:46
[2026-08-25 14:18:46,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:18:47,257.257 INFO    ] Initializing speech engine...
[2026-08-25 14:18:47,265.265 INFO    ] 2026-08-25 14:18:47
[2026-08-25 14:18:47,523.523 INFO    ] 2026-08-25 14:18:47
[2026-08-25 14:18:47,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:18:47,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:18:47,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:18:47,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:18:48,009.009 INFO    ] time= 25/08/2026 14:18:47
[2026-08-25 14:18:48,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:18:48,078.078 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:18:48,221.221 INFO    ] No existing commands found in stream
[2026-08-25 14:18:53,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:18:53,237.237 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 14:18:55,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:18:55,414.414 INFO    ] Checking for system updates...
[2026-08-25 14:18:55,450.450 INFO    ] 200
[2026-08-25 14:18:55,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:55,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:55,508.508 INFO    ] No update needed
[2026-08-25 14:18:55,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 14:18:55,547.547 INFO    ] 200
[2026-08-25 14:18:55,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:18:55,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:18:55,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:18:55,642.642 INFO    ] No camera update needed
[2026-08-25 14:18:55,645.645 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:18:55,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:18:55,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:18:55,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:18:57,699.699 INFO    ] ================================================
[2026-08-25 14:18:57,713.713 INFO    ] Launching Daemon at Tue Aug 25 14:18:57 IST 2026
[2026-08-25 14:18:57,724.724 INFO    ] ================================================
[2026-08-25 14:18:58,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:18:58
[2026-08-25 14:18:58,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:18:59,126.126 INFO    ] Initializing speech engine...
[2026-08-25 14:18:59,146.146 INFO    ] 2026-08-25 14:18:59
[2026-08-25 14:18:59,407.407 INFO    ] 2026-08-25 14:18:59
[2026-08-25 14:18:59,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:18:59,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:18:59,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:18:59,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:18:59,884.884 INFO    ] time= 25/08/2026 14:18:59
[2026-08-25 14:18:59,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:18:59,977.977 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:19:00,112.112 INFO    ] No existing commands found in stream
[2026-08-25 14:19:05,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:19:05,142.142 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 14:19:08,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:19:08,831.831 INFO    ] Checking for system updates...
[2026-08-25 14:19:08,867.867 INFO    ] 200
[2026-08-25 14:19:08,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:08,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:08,924.924 INFO    ] No update needed
[2026-08-25 14:19:08,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 14:19:08,964.964 INFO    ] 200
[2026-08-25 14:19:08,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:09,008.008 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:19:09,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:09,066.066 INFO    ] No camera update needed
[2026-08-25 14:19:09,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:19:09,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:19:09,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:19:09,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:19:11,121.121 INFO    ] ================================================
[2026-08-25 14:19:11,136.136 INFO    ] Launching Daemon at Tue Aug 25 14:19:11 IST 2026
[2026-08-25 14:19:11,146.146 INFO    ] ================================================
[2026-08-25 14:19:11,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:19:11
[2026-08-25 14:19:12,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:19:12,576.576 INFO    ] Initializing speech engine...
[2026-08-25 14:19:12,592.592 INFO    ] 2026-08-25 14:19:12
[2026-08-25 14:19:12,873.873 INFO    ] 2026-08-25 14:19:12
[2026-08-25 14:19:12,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:19:13,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:19:13,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:19:13,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:19:13,289.289 INFO    ] time= 25/08/2026 14:19:13
[2026-08-25 14:19:13,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:19:13,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:19:13,452.452 INFO    ] No existing commands found in stream
[2026-08-25 14:19:18,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:19:18,480.480 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 14:19:21,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:19:21,602.602 INFO    ] Checking for system updates...
[2026-08-25 14:19:21,637.637 INFO    ] 200
[2026-08-25 14:19:21,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:21,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:21,700.700 INFO    ] No update needed
[2026-08-25 14:19:21,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 14:19:21,735.735 INFO    ] 200
[2026-08-25 14:19:21,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:21,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:19:21,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:21,829.829 INFO    ] No camera update needed
[2026-08-25 14:19:21,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:19:21,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:19:21,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:19:21,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:19:23,884.884 INFO    ] ================================================
[2026-08-25 14:19:23,899.899 INFO    ] Launching Daemon at Tue Aug 25 14:19:23 IST 2026
[2026-08-25 14:19:23,910.910 INFO    ] ================================================
[2026-08-25 14:19:24,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:19:24
[2026-08-25 14:19:25,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:19:25,398.398 INFO    ] Initializing speech engine...
[2026-08-25 14:19:25,406.406 INFO    ] 2026-08-25 14:19:25
[2026-08-25 14:19:25,654.654 INFO    ] 2026-08-25 14:19:25
[2026-08-25 14:19:25,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:19:25,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:19:25,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:19:26,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:19:26,128.128 INFO    ] time= 25/08/2026 14:19:26
[2026-08-25 14:19:26,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:19:26,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:19:26,338.338 INFO    ] No existing commands found in stream
[2026-08-25 14:19:31,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:19:31,371.371 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 14:19:32,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:19:32,357.357 INFO    ] Checking for system updates...
[2026-08-25 14:19:32,395.395 INFO    ] 200
[2026-08-25 14:19:32,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:32,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:32,465.465 INFO    ] No update needed
[2026-08-25 14:19:32,468.468 INFO    ] Checking for camera pi updates...
[2026-08-25 14:19:32,507.507 INFO    ] 200
[2026-08-25 14:19:32,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:32,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:19:32,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:32,614.614 INFO    ] No camera update needed
[2026-08-25 14:19:32,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:19:32,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:19:32,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:19:32,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:19:34,681.681 INFO    ] ================================================
[2026-08-25 14:19:34,696.696 INFO    ] Launching Daemon at Tue Aug 25 14:19:34 IST 2026
[2026-08-25 14:19:34,707.707 INFO    ] ================================================
[2026-08-25 14:19:35,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:19:35
[2026-08-25 14:19:35,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:19:36,226.226 INFO    ] Initializing speech engine...
[2026-08-25 14:19:36,232.232 INFO    ] 2026-08-25 14:19:36
[2026-08-25 14:19:36,534.534 INFO    ] 2026-08-25 14:19:36
[2026-08-25 14:19:36,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:19:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:19:36,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:19:37,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:19:37,062.062 INFO    ] time= 25/08/2026 14:19:37
[2026-08-25 14:19:37,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:19:37,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:19:37,199.199 INFO    ] No existing commands found in stream
[2026-08-25 14:19:42,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:19:42,232.232 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 14:19:44,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:19:44,144.144 INFO    ] Checking for system updates...
[2026-08-25 14:19:44,179.179 INFO    ] 200
[2026-08-25 14:19:44,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:44,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:44,237.237 INFO    ] No update needed
[2026-08-25 14:19:44,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 14:19:44,273.273 INFO    ] 200
[2026-08-25 14:19:44,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:44,323.323 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:19:44,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:19:44,369.369 INFO    ] No camera update needed
[2026-08-25 14:19:44,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:19:44,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:19:44,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:19:44,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:19:46,424.424 INFO    ] ================================================
[2026-08-25 14:19:46,439.439 INFO    ] Launching Daemon at Tue Aug 25 14:19:46 IST 2026
[2026-08-25 14:19:46,449.449 INFO    ] ================================================
[2026-08-25 14:19:47,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:19:47
[2026-08-25 14:19:47,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:19:48,019.019 INFO    ] Initializing speech engine...
[2026-08-25 14:19:48,031.031 INFO    ] 2026-08-25 14:19:48
[2026-08-25 14:19:48,340.340 INFO    ] 2026-08-25 14:19:48
[2026-08-25 14:19:48,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:19:48,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:19:48,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:19:48,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:19:48,850.850 INFO    ] time= 25/08/2026 14:19:48
[2026-08-25 14:19:48,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:19:48,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:19:49,011.011 INFO    ] No existing commands found in stream
[2026-08-25 14:19:54,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:19:54,044.044 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 14:19:58,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:19:58,166.166 INFO    ] Checking for system updates...
[2026-08-25 14:19:58,206.206 INFO    ] 200
[2026-08-25 14:19:58,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:58,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:19:58,275.275 INFO    ] No update needed
[2026-08-25 14:19:58,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 14:19:58,312.312 INFO    ] 200
[2026-08-25 14:19:58,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:19:58,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:19:58,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:19:58,410.410 INFO    ] No camera update needed
[2026-08-25 14:19:58,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:19:58,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:19:58,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:19:58,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:20:00,467.467 INFO    ] ================================================
[2026-08-25 14:20:00,482.482 INFO    ] Launching Daemon at Tue Aug 25 14:20:00 IST 2026
[2026-08-25 14:20:00,493.493 INFO    ] ================================================
[2026-08-25 14:20:01,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:20:01
[2026-08-25 14:20:01,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:20:02,406.406 INFO    ] Initializing speech engine...
[2026-08-25 14:20:02,420.420 INFO    ] 2026-08-25 14:20:02
[2026-08-25 14:20:02,894.894 INFO    ] 2026-08-25 14:20:02
[2026-08-25 14:20:02,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:20:03,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:20:03,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:20:03,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:20:03,288.288 INFO    ] time= 25/08/2026 14:20:03
[2026-08-25 14:20:03,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:20:03,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:20:03,389.389 INFO    ] No existing commands found in stream
[2026-08-25 14:20:08,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:20:08,423.423 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 14:20:10,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:20:10,484.484 INFO    ] Checking for system updates...
[2026-08-25 14:20:10,522.522 INFO    ] 200
[2026-08-25 14:20:10,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:10,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:10,584.584 INFO    ] No update needed
[2026-08-25 14:20:10,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 14:20:10,620.620 INFO    ] 200
[2026-08-25 14:20:10,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:10,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:20:10,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:10,720.720 INFO    ] No camera update needed
[2026-08-25 14:20:10,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:20:10,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:20:10,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:20:10,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:20:12,776.776 INFO    ] ================================================
[2026-08-25 14:20:12,791.791 INFO    ] Launching Daemon at Tue Aug 25 14:20:12 IST 2026
[2026-08-25 14:20:12,803.803 INFO    ] ================================================
[2026-08-25 14:20:13,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:20:13
[2026-08-25 14:20:13,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:20:14,233.233 INFO    ] Initializing speech engine...
[2026-08-25 14:20:14,242.242 INFO    ] 2026-08-25 14:20:14
[2026-08-25 14:20:14,494.494 INFO    ] 2026-08-25 14:20:14
[2026-08-25 14:20:14,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:20:14,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:20:14,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:20:14,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:20:14,990.990 INFO    ] time= 25/08/2026 14:20:14
[2026-08-25 14:20:15,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:20:15,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:20:15,207.207 INFO    ] No existing commands found in stream
[2026-08-25 14:20:20,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:20:20,232.232 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 14:20:20,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:20:20,970.970 INFO    ] Checking for system updates...
[2026-08-25 14:20:21,009.009 INFO    ] 200
[2026-08-25 14:20:21,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:21,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:21,073.073 INFO    ] No update needed
[2026-08-25 14:20:21,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 14:20:21,114.114 INFO    ] 200
[2026-08-25 14:20:21,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:21,161.161 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:20:21,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:21,309.309 INFO    ] No camera update needed
[2026-08-25 14:20:21,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:20:21,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:20:21,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:20:21,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:20:23,368.368 INFO    ] ================================================
[2026-08-25 14:20:23,383.383 INFO    ] Launching Daemon at Tue Aug 25 14:20:23 IST 2026
[2026-08-25 14:20:23,393.393 INFO    ] ================================================
[2026-08-25 14:20:24,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:20:24
[2026-08-25 14:20:24,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:20:24,953.953 INFO    ] Initializing speech engine...
[2026-08-25 14:20:24,959.959 INFO    ] 2026-08-25 14:20:24
[2026-08-25 14:20:25,203.203 INFO    ] 2026-08-25 14:20:25
[2026-08-25 14:20:25,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:20:25,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:20:25,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:20:25,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:20:25,677.677 INFO    ] time= 25/08/2026 14:20:25
[2026-08-25 14:20:25,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:20:25,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:20:25,907.907 INFO    ] No existing commands found in stream
[2026-08-25 14:20:30,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:20:30,923.923 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 14:20:32,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:20:32,428.428 INFO    ] Checking for system updates...
[2026-08-25 14:20:32,470.470 INFO    ] 200
[2026-08-25 14:20:32,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:32,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:32,532.532 INFO    ] No update needed
[2026-08-25 14:20:32,535.535 INFO    ] Checking for camera pi updates...
[2026-08-25 14:20:32,574.574 INFO    ] 200
[2026-08-25 14:20:32,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:32,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:20:32,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:32,670.670 INFO    ] No camera update needed
[2026-08-25 14:20:32,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:20:32,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:20:32,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:20:32,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:20:34,728.728 INFO    ] ================================================
[2026-08-25 14:20:34,760.760 INFO    ] Launching Daemon at Tue Aug 25 14:20:34 IST 2026
[2026-08-25 14:20:34,771.771 INFO    ] ================================================
[2026-08-25 14:20:35,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:20:35
[2026-08-25 14:20:35,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:20:36,181.181 INFO    ] Initializing speech engine...
[2026-08-25 14:20:36,196.196 INFO    ] 2026-08-25 14:20:36
[2026-08-25 14:20:36,476.476 INFO    ] 2026-08-25 14:20:36
[2026-08-25 14:20:36,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:20:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:20:36,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:20:36,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:20:36,864.864 INFO    ] time= 25/08/2026 14:20:36
[2026-08-25 14:20:36,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:20:36,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:20:36,963.963 INFO    ] No existing commands found in stream
[2026-08-25 14:20:41,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:20:41,996.996 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 14:20:43,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:20:43,399.399 INFO    ] Checking for system updates...
[2026-08-25 14:20:43,435.435 INFO    ] 200
[2026-08-25 14:20:43,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:43,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:43,493.493 INFO    ] No update needed
[2026-08-25 14:20:43,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 14:20:43,531.531 INFO    ] 200
[2026-08-25 14:20:43,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:43,574.574 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:20:43,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:20:43,626.626 INFO    ] No camera update needed
[2026-08-25 14:20:43,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:20:43,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:20:43,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:20:43,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:20:45,682.682 INFO    ] ================================================
[2026-08-25 14:20:45,697.697 INFO    ] Launching Daemon at Tue Aug 25 14:20:45 IST 2026
[2026-08-25 14:20:45,708.708 INFO    ] ================================================
[2026-08-25 14:20:46,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:20:46
[2026-08-25 14:20:46,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:20:47,105.105 INFO    ] Initializing speech engine...
[2026-08-25 14:20:47,111.111 INFO    ] 2026-08-25 14:20:47
[2026-08-25 14:20:47,385.385 INFO    ] 2026-08-25 14:20:47
[2026-08-25 14:20:47,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:20:47,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:20:47,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:20:47,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:20:47,846.846 INFO    ] time= 25/08/2026 14:20:47
[2026-08-25 14:20:47,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:20:47,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:20:48,083.083 INFO    ] No existing commands found in stream
[2026-08-25 14:20:53,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:20:53,108.108 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 14:20:57,361.361 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:20:57,363.363 INFO    ] Checking for system updates...
[2026-08-25 14:20:57,402.402 INFO    ] 200
[2026-08-25 14:20:57,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:57,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:20:57,465.465 INFO    ] No update needed
[2026-08-25 14:20:57,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 14:20:57,501.501 INFO    ] 200
[2026-08-25 14:20:57,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:20:57,543.543 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:20:57,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:20:57,598.598 INFO    ] No camera update needed
[2026-08-25 14:20:57,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:20:57,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:20:57,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:20:57,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:20:59,655.655 INFO    ] ================================================
[2026-08-25 14:20:59,670.670 INFO    ] Launching Daemon at Tue Aug 25 14:20:59 IST 2026
[2026-08-25 14:20:59,680.680 INFO    ] ================================================
[2026-08-25 14:21:00,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:21:00
[2026-08-25 14:21:00,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:21:01,571.571 INFO    ] Initializing speech engine...
[2026-08-25 14:21:01,580.580 INFO    ] 2026-08-25 14:21:01
[2026-08-25 14:21:01,920.920 INFO    ] 2026-08-25 14:21:01
[2026-08-25 14:21:01,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:21:02,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:21:02,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:21:02,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:21:02,507.507 INFO    ] time= 25/08/2026 14:21:02
[2026-08-25 14:21:02,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:21:02,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:21:02,763.763 INFO    ] No existing commands found in stream
[2026-08-25 14:21:07,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:21:07,795.795 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 14:21:08,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:21:08,935.935 INFO    ] Checking for system updates...
[2026-08-25 14:21:08,970.970 INFO    ] 200
[2026-08-25 14:21:08,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:09,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:21:09,034.034 INFO    ] No update needed
[2026-08-25 14:21:09,037.037 INFO    ] Checking for camera pi updates...
[2026-08-25 14:21:09,070.070 INFO    ] 200
[2026-08-25 14:21:09,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:09,113.113 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:21:09,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:21:09,159.159 INFO    ] No camera update needed
[2026-08-25 14:21:09,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:21:09,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:21:09,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:21:09,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:21:11,213.213 INFO    ] ================================================
[2026-08-25 14:21:11,229.229 INFO    ] Launching Daemon at Tue Aug 25 14:21:11 IST 2026
[2026-08-25 14:21:11,240.240 INFO    ] ================================================
[2026-08-25 14:21:11,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:21:11
[2026-08-25 14:21:12,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:21:12,815.815 INFO    ] Initializing speech engine...
[2026-08-25 14:21:12,822.822 INFO    ] 2026-08-25 14:21:12
[2026-08-25 14:21:13,132.132 INFO    ] 2026-08-25 14:21:13
[2026-08-25 14:21:13,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:21:13,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:21:13,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:21:13,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:21:13,568.568 INFO    ] time= 25/08/2026 14:21:13
[2026-08-25 14:21:13,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:21:13,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:21:13,796.796 INFO    ] No existing commands found in stream
[2026-08-25 14:21:18,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:21:18,820.820 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 14:21:20,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:21:20,118.118 INFO    ] Checking for system updates...
[2026-08-25 14:21:20,156.156 INFO    ] 200
[2026-08-25 14:21:20,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:20,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:21:20,221.221 INFO    ] No update needed
[2026-08-25 14:21:20,223.223 INFO    ] Checking for camera pi updates...
[2026-08-25 14:21:20,257.257 INFO    ] 200
[2026-08-25 14:21:20,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:20,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:21:20,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:21:20,357.357 INFO    ] No camera update needed
[2026-08-25 14:21:20,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:21:20,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:21:20,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:21:20,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:21:22,412.412 INFO    ] ================================================
[2026-08-25 14:21:22,428.428 INFO    ] Launching Daemon at Tue Aug 25 14:21:22 IST 2026
[2026-08-25 14:21:22,439.439 INFO    ] ================================================
[2026-08-25 14:21:23,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:21:23
[2026-08-25 14:21:23,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:21:23,893.893 INFO    ] Initializing speech engine...
[2026-08-25 14:21:23,901.901 INFO    ] 2026-08-25 14:21:23
[2026-08-25 14:21:24,153.153 INFO    ] 2026-08-25 14:21:24
[2026-08-25 14:21:24,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:21:24,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:21:24,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:21:24,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:21:24,649.649 INFO    ] time= 25/08/2026 14:21:24
[2026-08-25 14:21:24,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:21:24,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:21:24,859.859 INFO    ] No existing commands found in stream
[2026-08-25 14:21:29,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:21:29,876.876 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 14:21:30,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:21:30,536.536 INFO    ] Checking for system updates...
[2026-08-25 14:21:30,577.577 INFO    ] 200
[2026-08-25 14:21:30,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:30,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:21:30,633.633 INFO    ] No update needed
[2026-08-25 14:21:30,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 14:21:30,669.669 INFO    ] 200
[2026-08-25 14:21:30,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:30,712.712 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:21:30,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:21:30,769.769 INFO    ] No camera update needed
[2026-08-25 14:21:30,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:21:30,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:21:30,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:21:30,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:21:32,829.829 INFO    ] ================================================
[2026-08-25 14:21:32,844.844 INFO    ] Launching Daemon at Tue Aug 25 14:21:32 IST 2026
[2026-08-25 14:21:32,855.855 INFO    ] ================================================
[2026-08-25 14:21:33,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:21:33
[2026-08-25 14:21:34,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:21:34,372.372 INFO    ] Initializing speech engine...
[2026-08-25 14:21:34,382.382 INFO    ] 2026-08-25 14:21:34
[2026-08-25 14:21:34,633.633 INFO    ] 2026-08-25 14:21:34
[2026-08-25 14:21:34,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:21:34,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:21:34,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:21:35,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:21:35,126.126 INFO    ] time= 25/08/2026 14:21:35
[2026-08-25 14:21:35,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:21:35,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:21:35,342.342 INFO    ] No existing commands found in stream
[2026-08-25 14:21:40,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:21:40,360.360 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 14:21:42,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:21:42,203.203 INFO    ] Checking for system updates...
[2026-08-25 14:21:42,239.239 INFO    ] 200
[2026-08-25 14:21:42,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:42,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:21:42,304.304 INFO    ] No update needed
[2026-08-25 14:21:42,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 14:21:42,344.344 INFO    ] 200
[2026-08-25 14:21:42,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:42,386.386 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:21:42,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:21:42,443.443 INFO    ] No camera update needed
[2026-08-25 14:21:42,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:21:42,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:21:42,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:21:42,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:21:44,498.498 INFO    ] ================================================
[2026-08-25 14:21:44,514.514 INFO    ] Launching Daemon at Tue Aug 25 14:21:44 IST 2026
[2026-08-25 14:21:44,525.525 INFO    ] ================================================
[2026-08-25 14:21:45,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:21:45
[2026-08-25 14:21:45,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:21:46,177.177 INFO    ] Initializing speech engine...
[2026-08-25 14:21:46,186.186 INFO    ] 2026-08-25 14:21:46
[2026-08-25 14:21:46,490.490 INFO    ] 2026-08-25 14:21:46
[2026-08-25 14:21:46,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:21:46,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:21:46,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:21:46,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:21:47,012.012 INFO    ] time= 25/08/2026 14:21:46
[2026-08-25 14:21:47,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:21:47,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:21:47,151.151 INFO    ] No existing commands found in stream
[2026-08-25 14:21:52,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:21:52,171.171 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 14:21:54,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:21:54,962.962 INFO    ] Checking for system updates...
[2026-08-25 14:21:55,000.000 INFO    ] 200
[2026-08-25 14:21:55,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:55,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:21:55,062.062 INFO    ] No update needed
[2026-08-25 14:21:55,065.065 INFO    ] Checking for camera pi updates...
[2026-08-25 14:21:55,119.119 INFO    ] 200
[2026-08-25 14:21:55,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:21:55,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:21:55,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:21:55,223.223 INFO    ] No camera update needed
[2026-08-25 14:21:55,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:21:55,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:21:55,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:21:55,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:21:57,283.283 INFO    ] ================================================
[2026-08-25 14:21:57,298.298 INFO    ] Launching Daemon at Tue Aug 25 14:21:57 IST 2026
[2026-08-25 14:21:57,310.310 INFO    ] ================================================
[2026-08-25 14:21:57,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:21:57
[2026-08-25 14:21:58,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:21:58,911.911 INFO    ] Initializing speech engine...
[2026-08-25 14:21:58,917.917 INFO    ] 2026-08-25 14:21:58
[2026-08-25 14:21:59,180.180 INFO    ] 2026-08-25 14:21:59
[2026-08-25 14:21:59,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:21:59,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:21:59,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:21:59,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:21:59,637.637 INFO    ] time= 25/08/2026 14:21:59
[2026-08-25 14:21:59,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:21:59,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:21:59,867.867 INFO    ] No existing commands found in stream
[2026-08-25 14:22:04,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:22:04,890.890 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 14:22:07,853.853 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:22:07,855.855 INFO    ] Checking for system updates...
[2026-08-25 14:22:07,895.895 INFO    ] 200
[2026-08-25 14:22:07,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:07,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:22:07,959.959 INFO    ] No update needed
[2026-08-25 14:22:07,962.962 INFO    ] Checking for camera pi updates...
[2026-08-25 14:22:07,995.995 INFO    ] 200
[2026-08-25 14:22:07,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:08,038.038 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:22:08,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:22:08,089.089 INFO    ] No camera update needed
[2026-08-25 14:22:08,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:22:08,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:22:08,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:22:08,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:22:10,145.145 INFO    ] ================================================
[2026-08-25 14:22:10,161.161 INFO    ] Launching Daemon at Tue Aug 25 14:22:10 IST 2026
[2026-08-25 14:22:10,185.185 INFO    ] ================================================
[2026-08-25 14:22:10,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:22:10
[2026-08-25 14:22:11,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:22:11,687.687 INFO    ] Initializing speech engine...
[2026-08-25 14:22:11,695.695 INFO    ] 2026-08-25 14:22:11
[2026-08-25 14:22:12,012.012 INFO    ] 2026-08-25 14:22:12
[2026-08-25 14:22:12,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:22:12,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:22:12,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:22:12,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:22:12,589.589 INFO    ] time= 25/08/2026 14:22:12
[2026-08-25 14:22:12,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:22:12,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:22:12,739.739 INFO    ] No existing commands found in stream
[2026-08-25 14:22:17,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:22:17,768.768 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 14:22:19,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:22:19,008.008 INFO    ] Checking for system updates...
[2026-08-25 14:22:19,046.046 INFO    ] 200
[2026-08-25 14:22:19,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:19,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:22:19,115.115 INFO    ] No update needed
[2026-08-25 14:22:19,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 14:22:19,151.151 INFO    ] 200
[2026-08-25 14:22:19,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:19,195.195 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:22:19,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:22:19,241.241 INFO    ] No camera update needed
[2026-08-25 14:22:19,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:22:19,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:22:19,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:22:19,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:22:21,296.296 INFO    ] ================================================
[2026-08-25 14:22:21,311.311 INFO    ] Launching Daemon at Tue Aug 25 14:22:21 IST 2026
[2026-08-25 14:22:21,322.322 INFO    ] ================================================
[2026-08-25 14:22:21,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:22:21
[2026-08-25 14:22:22,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:22:22,783.783 INFO    ] Initializing speech engine...
[2026-08-25 14:22:22,794.794 INFO    ] 2026-08-25 14:22:22
[2026-08-25 14:22:23,055.055 INFO    ] 2026-08-25 14:22:23
[2026-08-25 14:22:23,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:22:23,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:22:23,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:22:23,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:22:23,616.616 INFO    ] time= 25/08/2026 14:22:23
[2026-08-25 14:22:23,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:22:23,642.642 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:22:23,796.796 INFO    ] No existing commands found in stream
[2026-08-25 14:22:28,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:22:28,830.830 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 14:22:31,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:22:31,622.622 INFO    ] Checking for system updates...
[2026-08-25 14:22:31,666.666 INFO    ] 200
[2026-08-25 14:22:31,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:31,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:22:31,737.737 INFO    ] No update needed
[2026-08-25 14:22:31,740.740 INFO    ] Checking for camera pi updates...
[2026-08-25 14:22:31,778.778 INFO    ] 200
[2026-08-25 14:22:31,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:31,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:22:31,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:22:31,983.983 INFO    ] No camera update needed
[2026-08-25 14:22:31,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:22:31,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:22:31,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:22:32,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:22:34,047.047 INFO    ] ================================================
[2026-08-25 14:22:34,062.062 INFO    ] Launching Daemon at Tue Aug 25 14:22:34 IST 2026
[2026-08-25 14:22:34,073.073 INFO    ] ================================================
[2026-08-25 14:22:34,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:22:34
[2026-08-25 14:22:35,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:22:35,698.698 INFO    ] Initializing speech engine...
[2026-08-25 14:22:35,708.708 INFO    ] 2026-08-25 14:22:35
[2026-08-25 14:22:35,978.978 INFO    ] 2026-08-25 14:22:35
[2026-08-25 14:22:36,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:22:36,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:22:36,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:22:36,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:22:36,476.476 INFO    ] time= 25/08/2026 14:22:36
[2026-08-25 14:22:36,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:22:36,551.551 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:22:36,611.611 INFO    ] No existing commands found in stream
[2026-08-25 14:22:41,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:22:41,637.637 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 14:22:43,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:22:43,830.830 INFO    ] Checking for system updates...
[2026-08-25 14:22:43,869.869 INFO    ] 200
[2026-08-25 14:22:43,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:43,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:22:43,940.940 INFO    ] No update needed
[2026-08-25 14:22:43,944.944 INFO    ] Checking for camera pi updates...
[2026-08-25 14:22:43,984.984 INFO    ] 200
[2026-08-25 14:22:43,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:44,042.042 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:22:44,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:22:44,115.115 INFO    ] No camera update needed
[2026-08-25 14:22:44,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:22:44,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:22:44,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:22:44,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:22:46,181.181 INFO    ] ================================================
[2026-08-25 14:22:46,197.197 INFO    ] Launching Daemon at Tue Aug 25 14:22:46 IST 2026
[2026-08-25 14:22:46,209.209 INFO    ] ================================================
[2026-08-25 14:22:46,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:22:46
[2026-08-25 14:22:47,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:22:47,860.860 INFO    ] Initializing speech engine...
[2026-08-25 14:22:47,868.868 INFO    ] 2026-08-25 14:22:47
[2026-08-25 14:22:48,115.115 INFO    ] 2026-08-25 14:22:48
[2026-08-25 14:22:48,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:22:48,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:22:48,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:22:48,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:22:48,491.491 INFO    ] time= 25/08/2026 14:22:48
[2026-08-25 14:22:48,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:22:48,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:22:48,663.663 INFO    ] No existing commands found in stream
[2026-08-25 14:22:53,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:22:53,691.691 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 14:22:54,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:22:54,424.424 INFO    ] Checking for system updates...
[2026-08-25 14:22:54,460.460 INFO    ] 200
[2026-08-25 14:22:54,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:54,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:22:54,525.525 INFO    ] No update needed
[2026-08-25 14:22:54,527.527 INFO    ] Checking for camera pi updates...
[2026-08-25 14:22:54,560.560 INFO    ] 200
[2026-08-25 14:22:54,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:22:54,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:22:54,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:22:54,674.674 INFO    ] No camera update needed
[2026-08-25 14:22:54,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:22:54,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:22:54,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:22:54,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:22:56,729.729 INFO    ] ================================================
[2026-08-25 14:22:56,744.744 INFO    ] Launching Daemon at Tue Aug 25 14:22:56 IST 2026
[2026-08-25 14:22:56,755.755 INFO    ] ================================================
[2026-08-25 14:22:57,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:22:57
[2026-08-25 14:22:57,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:22:58,164.164 INFO    ] Initializing speech engine...
[2026-08-25 14:22:58,177.177 INFO    ] 2026-08-25 14:22:58
[2026-08-25 14:22:58,460.460 INFO    ] 2026-08-25 14:22:58
[2026-08-25 14:22:58,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:22:58,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:22:58,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:22:58,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:22:58,875.875 INFO    ] time= 25/08/2026 14:22:58
[2026-08-25 14:22:58,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:22:58,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:22:59,039.039 INFO    ] No existing commands found in stream
[2026-08-25 14:23:04,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:23:04,067.067 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 14:23:05,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:23:05,935.935 INFO    ] Checking for system updates...
[2026-08-25 14:23:05,970.970 INFO    ] 200
[2026-08-25 14:23:05,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:06,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:23:06,033.033 INFO    ] No update needed
[2026-08-25 14:23:06,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 14:23:06,068.068 INFO    ] 200
[2026-08-25 14:23:06,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:06,122.122 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:23:06,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:23:06,182.182 INFO    ] No camera update needed
[2026-08-25 14:23:06,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:23:06,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:23:06,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:23:06,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:23:08,236.236 INFO    ] ================================================
[2026-08-25 14:23:08,251.251 INFO    ] Launching Daemon at Tue Aug 25 14:23:08 IST 2026
[2026-08-25 14:23:08,262.262 INFO    ] ================================================
[2026-08-25 14:23:08,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:23:08
[2026-08-25 14:23:09,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:23:09,878.878 INFO    ] Initializing speech engine...
[2026-08-25 14:23:09,892.892 INFO    ] 2026-08-25 14:23:09
[2026-08-25 14:23:10,163.163 INFO    ] 2026-08-25 14:23:10
[2026-08-25 14:23:10,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:23:10,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:23:10,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:23:10,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:23:10,723.723 INFO    ] time= 25/08/2026 14:23:10
[2026-08-25 14:23:10,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:23:10,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:23:10,886.886 INFO    ] No existing commands found in stream
[2026-08-25 14:23:15,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:23:15,914.914 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 14:23:19,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:23:19,785.785 INFO    ] Checking for system updates...
[2026-08-25 14:23:19,822.822 INFO    ] 200
[2026-08-25 14:23:19,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:19,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:23:19,881.881 INFO    ] No update needed
[2026-08-25 14:23:19,883.883 INFO    ] Checking for camera pi updates...
[2026-08-25 14:23:19,922.922 INFO    ] 200
[2026-08-25 14:23:19,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:19,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:23:20,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:23:20,026.026 INFO    ] No camera update needed
[2026-08-25 14:23:20,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:23:20,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:23:20,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:23:20,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:23:22,082.082 INFO    ] ================================================
[2026-08-25 14:23:22,097.097 INFO    ] Launching Daemon at Tue Aug 25 14:23:22 IST 2026
[2026-08-25 14:23:22,108.108 INFO    ] ================================================
[2026-08-25 14:23:22,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:23:22
[2026-08-25 14:23:23,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:23:23,553.553 INFO    ] Initializing speech engine...
[2026-08-25 14:23:23,561.561 INFO    ] 2026-08-25 14:23:23
[2026-08-25 14:23:23,853.853 INFO    ] 2026-08-25 14:23:23
[2026-08-25 14:23:23,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:23:24,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:23:24,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:23:24,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:23:24,269.269 INFO    ] time= 25/08/2026 14:23:24
[2026-08-25 14:23:24,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:23:24,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:23:24,354.354 INFO    ] No existing commands found in stream
[2026-08-25 14:23:29,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:23:29,393.393 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 14:23:30,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:23:30,294.294 INFO    ] Checking for system updates...
[2026-08-25 14:23:30,329.329 INFO    ] 200
[2026-08-25 14:23:30,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:30,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:23:30,388.388 INFO    ] No update needed
[2026-08-25 14:23:30,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 14:23:30,431.431 INFO    ] 200
[2026-08-25 14:23:30,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:30,477.477 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:23:30,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:23:30,527.527 INFO    ] No camera update needed
[2026-08-25 14:23:30,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:23:30,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:23:30,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:23:30,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:23:32,587.587 INFO    ] ================================================
[2026-08-25 14:23:32,603.603 INFO    ] Launching Daemon at Tue Aug 25 14:23:32 IST 2026
[2026-08-25 14:23:32,614.614 INFO    ] ================================================
[2026-08-25 14:23:33,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:23:33
[2026-08-25 14:23:33,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:23:34,015.015 INFO    ] Initializing speech engine...
[2026-08-25 14:23:34,030.030 INFO    ] 2026-08-25 14:23:34
[2026-08-25 14:23:34,298.298 INFO    ] 2026-08-25 14:23:34
[2026-08-25 14:23:34,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:23:34,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:23:34,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:23:34,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:23:34,679.679 INFO    ] time= 25/08/2026 14:23:34
[2026-08-25 14:23:34,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:23:34,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:23:34,866.866 INFO    ] No existing commands found in stream
[2026-08-25 14:23:39,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:23:39,890.890 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 14:23:40,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:23:40,997.997 INFO    ] Checking for system updates...
[2026-08-25 14:23:41,033.033 INFO    ] 200
[2026-08-25 14:23:41,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:41,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:23:41,090.090 INFO    ] No update needed
[2026-08-25 14:23:41,092.092 INFO    ] Checking for camera pi updates...
[2026-08-25 14:23:41,126.126 INFO    ] 200
[2026-08-25 14:23:41,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:41,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:23:41,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:23:41,219.219 INFO    ] No camera update needed
[2026-08-25 14:23:41,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:23:41,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:23:41,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:23:41,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:23:43,275.275 INFO    ] ================================================
[2026-08-25 14:23:43,293.293 INFO    ] Launching Daemon at Tue Aug 25 14:23:43 IST 2026
[2026-08-25 14:23:43,304.304 INFO    ] ================================================
[2026-08-25 14:23:43,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:23:43
[2026-08-25 14:23:44,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:23:44,697.697 INFO    ] Initializing speech engine...
[2026-08-25 14:23:44,720.720 INFO    ] 2026-08-25 14:23:44
[2026-08-25 14:23:44,975.975 INFO    ] 2026-08-25 14:23:44
[2026-08-25 14:23:45,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:23:45,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:23:45,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:23:45,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:23:45,457.457 INFO    ] time= 25/08/2026 14:23:45
[2026-08-25 14:23:45,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:23:45,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:23:45,687.687 INFO    ] No existing commands found in stream
[2026-08-25 14:23:50,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:23:50,707.707 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 14:23:54,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:23:54,822.822 INFO    ] Checking for system updates...
[2026-08-25 14:23:54,859.859 INFO    ] 200
[2026-08-25 14:23:54,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:54,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:23:54,917.917 INFO    ] No update needed
[2026-08-25 14:23:54,919.919 INFO    ] Checking for camera pi updates...
[2026-08-25 14:23:54,957.957 INFO    ] 200
[2026-08-25 14:23:54,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:23:55,005.005 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:23:55,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:23:55,051.051 INFO    ] No camera update needed
[2026-08-25 14:23:55,054.054 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:23:55,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:23:55,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:23:55,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:23:57,108.108 INFO    ] ================================================
[2026-08-25 14:23:57,124.124 INFO    ] Launching Daemon at Tue Aug 25 14:23:57 IST 2026
[2026-08-25 14:23:57,135.135 INFO    ] ================================================
[2026-08-25 14:23:57,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:23:57
[2026-08-25 14:23:58,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:23:58,565.565 INFO    ] Initializing speech engine...
[2026-08-25 14:23:58,574.574 INFO    ] 2026-08-25 14:23:58
[2026-08-25 14:23:58,823.823 INFO    ] 2026-08-25 14:23:58
[2026-08-25 14:23:58,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:23:59,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:23:59,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:23:59,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:23:59,303.303 INFO    ] time= 25/08/2026 14:23:59
[2026-08-25 14:23:59,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:23:59,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:23:59,543.543 INFO    ] No existing commands found in stream
[2026-08-25 14:24:04,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:24:04,562.562 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 14:24:06,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:24:06,864.864 INFO    ] Checking for system updates...
[2026-08-25 14:24:06,899.899 INFO    ] 200
[2026-08-25 14:24:06,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:06,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:24:06,956.956 INFO    ] No update needed
[2026-08-25 14:24:06,958.958 INFO    ] Checking for camera pi updates...
[2026-08-25 14:24:06,996.996 INFO    ] 200
[2026-08-25 14:24:06,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:07,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:24:07,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:24:07,095.095 INFO    ] No camera update needed
[2026-08-25 14:24:07,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:24:07,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:24:07,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:24:07,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:24:09,149.149 INFO    ] ================================================
[2026-08-25 14:24:09,164.164 INFO    ] Launching Daemon at Tue Aug 25 14:24:09 IST 2026
[2026-08-25 14:24:09,175.175 INFO    ] ================================================
[2026-08-25 14:24:09,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:24:09
[2026-08-25 14:24:10,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:24:10,740.740 INFO    ] Initializing speech engine...
[2026-08-25 14:24:10,753.753 INFO    ] 2026-08-25 14:24:10
[2026-08-25 14:24:11,020.020 INFO    ] 2026-08-25 14:24:11
[2026-08-25 14:24:11,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:24:11,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:24:11,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:24:11,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:24:11,513.513 INFO    ] time= 25/08/2026 14:24:11
[2026-08-25 14:24:11,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:24:11,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:24:11,663.663 INFO    ] No existing commands found in stream
[2026-08-25 14:24:16,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:24:16,704.704 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 14:24:17,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:24:17,566.566 INFO    ] Checking for system updates...
[2026-08-25 14:24:17,601.601 INFO    ] 200
[2026-08-25 14:24:17,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:17,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:24:17,658.658 INFO    ] No update needed
[2026-08-25 14:24:17,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 14:24:17,697.697 INFO    ] 200
[2026-08-25 14:24:17,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:17,743.743 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:24:17,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:24:17,795.795 INFO    ] No camera update needed
[2026-08-25 14:24:17,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:24:17,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:24:17,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:24:17,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:24:19,851.851 INFO    ] ================================================
[2026-08-25 14:24:19,868.868 INFO    ] Launching Daemon at Tue Aug 25 14:24:19 IST 2026
[2026-08-25 14:24:19,879.879 INFO    ] ================================================
[2026-08-25 14:24:20,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:24:20
[2026-08-25 14:24:21,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:24:21,369.369 INFO    ] Initializing speech engine...
[2026-08-25 14:24:21,382.382 INFO    ] 2026-08-25 14:24:21
[2026-08-25 14:24:21,652.652 INFO    ] 2026-08-25 14:24:21
[2026-08-25 14:24:21,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:24:21,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:24:21,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:24:22,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:24:22,130.130 INFO    ] time= 25/08/2026 14:24:22
[2026-08-25 14:24:22,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:24:22,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:24:22,346.346 INFO    ] No existing commands found in stream
[2026-08-25 14:24:27,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:24:27,382.382 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 14:24:28,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:24:28,243.243 INFO    ] Checking for system updates...
[2026-08-25 14:24:28,280.280 INFO    ] 200
[2026-08-25 14:24:28,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:28,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:24:28,345.345 INFO    ] No update needed
[2026-08-25 14:24:28,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 14:24:28,384.384 INFO    ] 200
[2026-08-25 14:24:28,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:28,431.431 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:24:28,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:24:28,487.487 INFO    ] No camera update needed
[2026-08-25 14:24:28,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:24:28,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:24:28,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:24:28,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:24:30,543.543 INFO    ] ================================================
[2026-08-25 14:24:30,559.559 INFO    ] Launching Daemon at Tue Aug 25 14:24:30 IST 2026
[2026-08-25 14:24:30,569.569 INFO    ] ================================================
[2026-08-25 14:24:31,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:24:31
[2026-08-25 14:24:31,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:24:32,068.068 INFO    ] Initializing speech engine...
[2026-08-25 14:24:32,077.077 INFO    ] 2026-08-25 14:24:32
[2026-08-25 14:24:32,357.357 INFO    ] 2026-08-25 14:24:32
[2026-08-25 14:24:32,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:24:32,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:24:32,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:24:32,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:24:32,790.790 INFO    ] time= 25/08/2026 14:24:32
[2026-08-25 14:24:32,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:24:32,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:24:32,874.874 INFO    ] No existing commands found in stream
[2026-08-25 14:24:37,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:24:37,908.908 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 14:24:40,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:24:40,204.204 INFO    ] Checking for system updates...
[2026-08-25 14:24:40,243.243 INFO    ] 200
[2026-08-25 14:24:40,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:40,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:24:40,303.303 INFO    ] No update needed
[2026-08-25 14:24:40,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 14:24:40,339.339 INFO    ] 200
[2026-08-25 14:24:40,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:40,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:24:40,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:24:40,429.429 INFO    ] No camera update needed
[2026-08-25 14:24:40,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:24:40,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:24:40,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:24:40,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:24:42,485.485 INFO    ] ================================================
[2026-08-25 14:24:42,501.501 INFO    ] Launching Daemon at Tue Aug 25 14:24:42 IST 2026
[2026-08-25 14:24:42,513.513 INFO    ] ================================================
[2026-08-25 14:24:43,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:24:43
[2026-08-25 14:24:43,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:24:43,960.960 INFO    ] Initializing speech engine...
[2026-08-25 14:24:43,978.978 INFO    ] 2026-08-25 14:24:43
[2026-08-25 14:24:44,248.248 INFO    ] 2026-08-25 14:24:44
[2026-08-25 14:24:44,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:24:44,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:24:44,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:24:44,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:24:44,655.655 INFO    ] time= 25/08/2026 14:24:44
[2026-08-25 14:24:44,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:24:44,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:24:44,740.740 INFO    ] No existing commands found in stream
[2026-08-25 14:24:49,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:24:49,773.773 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 14:24:50,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:24:50,725.725 INFO    ] Checking for system updates...
[2026-08-25 14:24:50,763.763 INFO    ] 200
[2026-08-25 14:24:50,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:50,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:24:50,821.821 INFO    ] No update needed
[2026-08-25 14:24:50,823.823 INFO    ] Checking for camera pi updates...
[2026-08-25 14:24:50,871.871 INFO    ] 200
[2026-08-25 14:24:50,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:24:50,914.914 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:24:50,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:24:50,960.960 INFO    ] No camera update needed
[2026-08-25 14:24:50,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:24:50,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:24:50,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:24:50,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:24:53,015.015 INFO    ] ================================================
[2026-08-25 14:24:53,031.031 INFO    ] Launching Daemon at Tue Aug 25 14:24:53 IST 2026
[2026-08-25 14:24:53,042.042 INFO    ] ================================================
[2026-08-25 14:24:53,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:24:53
[2026-08-25 14:24:54,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:24:54,506.506 INFO    ] Initializing speech engine...
[2026-08-25 14:24:54,514.514 INFO    ] 2026-08-25 14:24:54
[2026-08-25 14:24:54,773.773 INFO    ] 2026-08-25 14:24:54
[2026-08-25 14:24:54,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:24:55,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:24:55,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:24:55,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:24:55,266.266 INFO    ] time= 25/08/2026 14:24:55
[2026-08-25 14:24:55,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:24:55,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:24:55,456.456 INFO    ] No existing commands found in stream
[2026-08-25 14:25:00,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:25:00,485.485 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 14:25:01,978.978 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:25:01,981.981 INFO    ] Checking for system updates...
[2026-08-25 14:25:02,034.034 INFO    ] 200
[2026-08-25 14:25:02,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:02,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:25:02,106.106 INFO    ] No update needed
[2026-08-25 14:25:02,108.108 INFO    ] Checking for camera pi updates...
[2026-08-25 14:25:02,148.148 INFO    ] 200
[2026-08-25 14:25:02,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:02,205.205 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:25:02,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:25:02,284.284 INFO    ] No camera update needed
[2026-08-25 14:25:02,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:25:02,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:25:02,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:25:02,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:25:04,349.349 INFO    ] ================================================
[2026-08-25 14:25:04,365.365 INFO    ] Launching Daemon at Tue Aug 25 14:25:04 IST 2026
[2026-08-25 14:25:04,376.376 INFO    ] ================================================
[2026-08-25 14:25:04,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:25:04
[2026-08-25 14:25:05,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:25:05,896.896 INFO    ] Initializing speech engine...
[2026-08-25 14:25:05,909.909 INFO    ] 2026-08-25 14:25:05
[2026-08-25 14:25:06,187.187 INFO    ] 2026-08-25 14:25:06
[2026-08-25 14:25:06,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:25:06,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:25:06,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:25:06,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:25:06,665.665 INFO    ] time= 25/08/2026 14:25:06
[2026-08-25 14:25:06,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:25:06,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:25:06,901.901 INFO    ] No existing commands found in stream
[2026-08-25 14:25:11,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:25:11,917.917 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 14:25:15,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:25:15,428.428 INFO    ] Checking for system updates...
[2026-08-25 14:25:15,465.465 INFO    ] 200
[2026-08-25 14:25:15,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:15,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:25:15,530.530 INFO    ] No update needed
[2026-08-25 14:25:15,532.532 INFO    ] Checking for camera pi updates...
[2026-08-25 14:25:15,565.565 INFO    ] 200
[2026-08-25 14:25:15,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:15,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:25:15,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:25:15,682.682 INFO    ] No camera update needed
[2026-08-25 14:25:15,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:25:15,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:25:15,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:25:15,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:25:17,741.741 INFO    ] ================================================
[2026-08-25 14:25:17,757.757 INFO    ] Launching Daemon at Tue Aug 25 14:25:17 IST 2026
[2026-08-25 14:25:17,768.768 INFO    ] ================================================
[2026-08-25 14:25:18,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:25:18
[2026-08-25 14:25:18,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:25:19,264.264 INFO    ] Initializing speech engine...
[2026-08-25 14:25:19,271.271 INFO    ] 2026-08-25 14:25:19
[2026-08-25 14:25:19,539.539 INFO    ] 2026-08-25 14:25:19
[2026-08-25 14:25:19,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:25:19,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:25:19,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:25:19,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:25:20,018.018 INFO    ] time= 25/08/2026 14:25:19
[2026-08-25 14:25:20,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:25:20,111.111 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:25:20,239.239 INFO    ] No existing commands found in stream
[2026-08-25 14:25:25,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:25:25,269.269 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 14:25:27,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:25:27,397.397 INFO    ] Checking for system updates...
[2026-08-25 14:25:27,432.432 INFO    ] 200
[2026-08-25 14:25:27,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:27,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:25:27,496.496 INFO    ] No update needed
[2026-08-25 14:25:27,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 14:25:27,532.532 INFO    ] 200
[2026-08-25 14:25:27,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:27,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:25:27,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:25:27,628.628 INFO    ] No camera update needed
[2026-08-25 14:25:27,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:25:27,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:25:27,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:25:27,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:25:29,685.685 INFO    ] ================================================
[2026-08-25 14:25:29,701.701 INFO    ] Launching Daemon at Tue Aug 25 14:25:29 IST 2026
[2026-08-25 14:25:29,712.712 INFO    ] ================================================
[2026-08-25 14:25:30,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:25:30
[2026-08-25 14:25:30,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:25:31,123.123 INFO    ] Initializing speech engine...
[2026-08-25 14:25:31,136.136 INFO    ] 2026-08-25 14:25:31
[2026-08-25 14:25:31,448.448 INFO    ] 2026-08-25 14:25:31
[2026-08-25 14:25:31,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:25:31,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:25:31,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:25:31,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:25:31,857.857 INFO    ] time= 25/08/2026 14:25:31
[2026-08-25 14:25:31,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:25:31,966.966 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:25:32,071.071 INFO    ] No existing commands found in stream
[2026-08-25 14:25:37,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:25:37,096.096 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 14:25:39,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:25:39,136.136 INFO    ] Checking for system updates...
[2026-08-25 14:25:39,172.172 INFO    ] 200
[2026-08-25 14:25:39,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:39,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:25:39,228.228 INFO    ] No update needed
[2026-08-25 14:25:39,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 14:25:39,264.264 INFO    ] 200
[2026-08-25 14:25:39,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:39,307.307 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:25:39,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:25:39,354.354 INFO    ] No camera update needed
[2026-08-25 14:25:39,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:25:39,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:25:39,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:25:39,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:25:41,409.409 INFO    ] ================================================
[2026-08-25 14:25:41,425.425 INFO    ] Launching Daemon at Tue Aug 25 14:25:41 IST 2026
[2026-08-25 14:25:41,435.435 INFO    ] ================================================
[2026-08-25 14:25:42,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:25:42
[2026-08-25 14:25:42,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:25:42,845.845 INFO    ] Initializing speech engine...
[2026-08-25 14:25:42,867.867 INFO    ] 2026-08-25 14:25:42
[2026-08-25 14:25:43,125.125 INFO    ] 2026-08-25 14:25:43
[2026-08-25 14:25:43,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:25:43,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:25:43,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:25:43,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:25:43,619.619 INFO    ] time= 25/08/2026 14:25:43
[2026-08-25 14:25:43,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:25:43,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:25:43,839.839 INFO    ] No existing commands found in stream
[2026-08-25 14:25:48,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:25:48,859.859 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 14:25:50,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:25:50,010.010 INFO    ] Checking for system updates...
[2026-08-25 14:25:50,045.045 INFO    ] 200
[2026-08-25 14:25:50,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:50,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:25:50,101.101 INFO    ] No update needed
[2026-08-25 14:25:50,104.104 INFO    ] Checking for camera pi updates...
[2026-08-25 14:25:50,140.140 INFO    ] 200
[2026-08-25 14:25:50,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:25:50,186.186 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:25:50,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:25:50,247.247 INFO    ] No camera update needed
[2026-08-25 14:25:50,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:25:50,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:25:50,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:25:50,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:25:52,303.303 INFO    ] ================================================
[2026-08-25 14:25:52,318.318 INFO    ] Launching Daemon at Tue Aug 25 14:25:52 IST 2026
[2026-08-25 14:25:52,329.329 INFO    ] ================================================
[2026-08-25 14:25:52,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:25:52
[2026-08-25 14:25:53,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:25:53,747.747 INFO    ] Initializing speech engine...
[2026-08-25 14:25:53,756.756 INFO    ] 2026-08-25 14:25:53
[2026-08-25 14:25:54,003.003 INFO    ] 2026-08-25 14:25:53
[2026-08-25 14:25:54,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:25:54,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:25:54,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:25:54,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:25:54,476.476 INFO    ] time= 25/08/2026 14:25:54
[2026-08-25 14:25:54,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:25:54,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:25:54,702.702 INFO    ] No existing commands found in stream
[2026-08-25 14:25:59,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:25:59,729.729 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 14:26:00,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:26:00,925.925 INFO    ] Checking for system updates...
[2026-08-25 14:26:00,962.962 INFO    ] 200
[2026-08-25 14:26:00,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:01,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:26:01,021.021 INFO    ] No update needed
[2026-08-25 14:26:01,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 14:26:01,061.061 INFO    ] 200
[2026-08-25 14:26:01,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:01,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:26:01,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:26:01,154.154 INFO    ] No camera update needed
[2026-08-25 14:26:01,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:26:01,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:26:01,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:26:01,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:26:03,217.217 INFO    ] ================================================
[2026-08-25 14:26:03,233.233 INFO    ] Launching Daemon at Tue Aug 25 14:26:03 IST 2026
[2026-08-25 14:26:03,244.244 INFO    ] ================================================
[2026-08-25 14:26:03,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:26:03
[2026-08-25 14:26:04,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:26:04,646.646 INFO    ] Initializing speech engine...
[2026-08-25 14:26:04,655.655 INFO    ] 2026-08-25 14:26:04
[2026-08-25 14:26:04,950.950 INFO    ] 2026-08-25 14:26:04
[2026-08-25 14:26:04,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:26:05,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:26:05,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:26:05,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:26:05,334.334 INFO    ] time= 25/08/2026 14:26:05
[2026-08-25 14:26:05,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:26:05,376.376 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:26:05,459.459 INFO    ] No existing commands found in stream
[2026-08-25 14:26:10,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:26:10,473.473 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 14:26:14,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:26:14,555.555 INFO    ] Checking for system updates...
[2026-08-25 14:26:14,591.591 INFO    ] 200
[2026-08-25 14:26:14,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:14,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:26:14,647.647 INFO    ] No update needed
[2026-08-25 14:26:14,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 14:26:14,684.684 INFO    ] 200
[2026-08-25 14:26:14,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:14,726.726 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:26:14,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:26:14,776.776 INFO    ] No camera update needed
[2026-08-25 14:26:14,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:26:14,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:26:14,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:26:14,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:26:16,831.831 INFO    ] ================================================
[2026-08-25 14:26:16,846.846 INFO    ] Launching Daemon at Tue Aug 25 14:26:16 IST 2026
[2026-08-25 14:26:16,857.857 INFO    ] ================================================
[2026-08-25 14:26:17,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:26:17
[2026-08-25 14:26:18,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:26:18,283.283 INFO    ] Initializing speech engine...
[2026-08-25 14:26:18,292.292 INFO    ] 2026-08-25 14:26:18
[2026-08-25 14:26:18,543.543 INFO    ] 2026-08-25 14:26:18
[2026-08-25 14:26:18,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:26:18,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:26:18,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:26:18,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:26:19,024.024 INFO    ] time= 25/08/2026 14:26:18
[2026-08-25 14:26:19,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:26:19,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:26:19,265.265 INFO    ] No existing commands found in stream
[2026-08-25 14:26:24,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:26:24,284.284 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 14:26:27,223.223 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:26:27,226.226 INFO    ] Checking for system updates...
[2026-08-25 14:26:27,261.261 INFO    ] 200
[2026-08-25 14:26:27,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:27,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:26:27,327.327 INFO    ] No update needed
[2026-08-25 14:26:27,329.329 INFO    ] Checking for camera pi updates...
[2026-08-25 14:26:27,366.366 INFO    ] 200
[2026-08-25 14:26:27,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:27,414.414 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:26:27,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:26:27,460.460 INFO    ] No camera update needed
[2026-08-25 14:26:27,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:26:27,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:26:27,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:26:27,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:26:29,515.515 INFO    ] ================================================
[2026-08-25 14:26:29,530.530 INFO    ] Launching Daemon at Tue Aug 25 14:26:29 IST 2026
[2026-08-25 14:26:29,540.540 INFO    ] ================================================
[2026-08-25 14:26:30,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:26:30
[2026-08-25 14:26:30,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:26:30,990.990 INFO    ] Initializing speech engine...
[2026-08-25 14:26:30,999.999 INFO    ] 2026-08-25 14:26:30
[2026-08-25 14:26:31,248.248 INFO    ] 2026-08-25 14:26:31
[2026-08-25 14:26:31,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:26:31,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:26:31,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:26:31,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:26:31,748.748 INFO    ] time= 25/08/2026 14:26:31
[2026-08-25 14:26:31,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:26:31,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:26:31,979.979 INFO    ] No existing commands found in stream
[2026-08-25 14:26:37,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:26:37,010.010 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 14:26:38,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:26:38,635.635 INFO    ] Checking for system updates...
[2026-08-25 14:26:38,670.670 INFO    ] 200
[2026-08-25 14:26:38,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:38,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:26:38,726.726 INFO    ] No update needed
[2026-08-25 14:26:38,729.729 INFO    ] Checking for camera pi updates...
[2026-08-25 14:26:38,762.762 INFO    ] 200
[2026-08-25 14:26:38,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:38,805.805 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:26:38,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:26:38,950.950 INFO    ] No camera update needed
[2026-08-25 14:26:38,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:26:38,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:26:38,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:26:38,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:26:41,007.007 INFO    ] ================================================
[2026-08-25 14:26:41,022.022 INFO    ] Launching Daemon at Tue Aug 25 14:26:41 IST 2026
[2026-08-25 14:26:41,032.032 INFO    ] ================================================
[2026-08-25 14:26:41,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:26:41
[2026-08-25 14:26:42,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:26:42,453.453 INFO    ] Initializing speech engine...
[2026-08-25 14:26:42,463.463 INFO    ] 2026-08-25 14:26:42
[2026-08-25 14:26:42,709.709 INFO    ] 2026-08-25 14:26:42
[2026-08-25 14:26:42,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:26:42,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:26:42,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:26:43,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:26:43,184.184 INFO    ] time= 25/08/2026 14:26:43
[2026-08-25 14:26:43,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:26:43,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:26:43,408.408 INFO    ] No existing commands found in stream
[2026-08-25 14:26:48,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:26:48,435.435 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-25 14:26:51,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:26:51,290.290 INFO    ] Checking for system updates...
[2026-08-25 14:26:51,325.325 INFO    ] 200
[2026-08-25 14:26:51,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:51,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:26:51,408.408 INFO    ] No update needed
[2026-08-25 14:26:51,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 14:26:51,443.443 INFO    ] 200
[2026-08-25 14:26:51,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:26:51,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:26:51,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:26:51,532.532 INFO    ] No camera update needed
[2026-08-25 14:26:51,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:26:51,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:26:51,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:26:51,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:26:53,586.586 INFO    ] ================================================
[2026-08-25 14:26:53,602.602 INFO    ] Launching Daemon at Tue Aug 25 14:26:53 IST 2026
[2026-08-25 14:26:53,612.612 INFO    ] ================================================
[2026-08-25 14:26:54,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:26:54
[2026-08-25 14:26:54,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:26:55,256.256 INFO    ] Initializing speech engine...
[2026-08-25 14:26:55,265.265 INFO    ] 2026-08-25 14:26:55
[2026-08-25 14:26:55,543.543 INFO    ] 2026-08-25 14:26:55
[2026-08-25 14:26:55,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:26:55,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:26:55,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:26:55,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:26:56,058.058 INFO    ] time= 25/08/2026 14:26:56
[2026-08-25 14:26:56,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:26:56,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:26:56,250.250 INFO    ] No existing commands found in stream
[2026-08-25 14:27:01,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:27:01,275.275 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 14:27:04,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:27:04,678.678 INFO    ] Checking for system updates...
[2026-08-25 14:27:04,719.719 INFO    ] 200
[2026-08-25 14:27:04,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:04,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:27:04,776.776 INFO    ] No update needed
[2026-08-25 14:27:04,779.779 INFO    ] Checking for camera pi updates...
[2026-08-25 14:27:04,812.812 INFO    ] 200
[2026-08-25 14:27:04,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:04,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:27:04,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:27:04,903.903 INFO    ] No camera update needed
[2026-08-25 14:27:04,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:27:04,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:27:04,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:27:04,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:27:06,963.963 INFO    ] ================================================
[2026-08-25 14:27:06,979.979 INFO    ] Launching Daemon at Tue Aug 25 14:27:06 IST 2026
[2026-08-25 14:27:06,990.990 INFO    ] ================================================
[2026-08-25 14:27:07,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:27:07
[2026-08-25 14:27:08,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:27:08,643.643 INFO    ] Initializing speech engine...
[2026-08-25 14:27:08,655.655 INFO    ] 2026-08-25 14:27:08
[2026-08-25 14:27:08,968.968 INFO    ] 2026-08-25 14:27:08
[2026-08-25 14:27:09,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:27:09,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:27:09,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:27:09,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:27:09,469.469 INFO    ] time= 25/08/2026 14:27:09
[2026-08-25 14:27:09,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:27:09,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:27:09,627.627 INFO    ] No existing commands found in stream
[2026-08-25 14:27:14,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:27:14,645.645 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 14:27:16,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:27:16,021.021 INFO    ] Checking for system updates...
[2026-08-25 14:27:16,065.065 INFO    ] 200
[2026-08-25 14:27:16,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:16,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:27:16,133.133 INFO    ] No update needed
[2026-08-25 14:27:16,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 14:27:16,169.169 INFO    ] 200
[2026-08-25 14:27:16,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:16,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:27:16,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:27:16,278.278 INFO    ] No camera update needed
[2026-08-25 14:27:16,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:27:16,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:27:16,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:27:16,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:27:18,332.332 INFO    ] ================================================
[2026-08-25 14:27:18,347.347 INFO    ] Launching Daemon at Tue Aug 25 14:27:18 IST 2026
[2026-08-25 14:27:18,358.358 INFO    ] ================================================
[2026-08-25 14:27:18,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:27:18
[2026-08-25 14:27:19,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:27:19,972.972 INFO    ] Initializing speech engine...
[2026-08-25 14:27:19,980.980 INFO    ] 2026-08-25 14:27:19
[2026-08-25 14:27:20,262.262 INFO    ] 2026-08-25 14:27:20
[2026-08-25 14:27:20,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:27:20,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:27:20,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:27:20,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:27:20,760.760 INFO    ] time= 25/08/2026 14:27:20
[2026-08-25 14:27:20,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:27:20,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:27:20,984.984 INFO    ] No existing commands found in stream
[2026-08-25 14:27:25,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:27:26,002.002 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 14:27:29,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:27:29,118.118 INFO    ] Checking for system updates...
[2026-08-25 14:27:29,156.156 INFO    ] 200
[2026-08-25 14:27:29,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:29,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:27:29,223.223 INFO    ] No update needed
[2026-08-25 14:27:29,226.226 INFO    ] Checking for camera pi updates...
[2026-08-25 14:27:29,265.265 INFO    ] 200
[2026-08-25 14:27:29,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:29,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:27:29,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:27:29,388.388 INFO    ] No camera update needed
[2026-08-25 14:27:29,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:27:29,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:27:29,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:27:29,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:27:31,449.449 INFO    ] ================================================
[2026-08-25 14:27:31,466.466 INFO    ] Launching Daemon at Tue Aug 25 14:27:31 IST 2026
[2026-08-25 14:27:31,478.478 INFO    ] ================================================
[2026-08-25 14:27:32,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:27:32
[2026-08-25 14:27:32,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:27:33,130.130 INFO    ] Initializing speech engine...
[2026-08-25 14:27:33,137.137 INFO    ] 2026-08-25 14:27:33
[2026-08-25 14:27:33,396.396 INFO    ] 2026-08-25 14:27:33
[2026-08-25 14:27:33,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:27:33,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:27:33,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:27:33,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:27:33,896.896 INFO    ] time= 25/08/2026 14:27:33
[2026-08-25 14:27:33,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:27:33,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:27:34,095.095 INFO    ] No existing commands found in stream
[2026-08-25 14:27:39,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:27:39,120.120 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 14:27:41,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:27:41,865.865 INFO    ] Checking for system updates...
[2026-08-25 14:27:41,905.905 INFO    ] 200
[2026-08-25 14:27:41,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:41,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:27:41,972.972 INFO    ] No update needed
[2026-08-25 14:27:41,975.975 INFO    ] Checking for camera pi updates...
[2026-08-25 14:27:42,009.009 INFO    ] 200
[2026-08-25 14:27:42,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:42,053.053 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:27:42,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:27:42,103.103 INFO    ] No camera update needed
[2026-08-25 14:27:42,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:27:42,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:27:42,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:27:42,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:27:44,163.163 INFO    ] ================================================
[2026-08-25 14:27:44,179.179 INFO    ] Launching Daemon at Tue Aug 25 14:27:44 IST 2026
[2026-08-25 14:27:44,190.190 INFO    ] ================================================
[2026-08-25 14:27:44,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:27:44
[2026-08-25 14:27:45,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:27:45,843.843 INFO    ] Initializing speech engine...
[2026-08-25 14:27:45,855.855 INFO    ] 2026-08-25 14:27:45
[2026-08-25 14:27:46,166.166 INFO    ] 2026-08-25 14:27:46
[2026-08-25 14:27:46,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:27:46,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:27:46,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:27:46,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:27:46,675.675 INFO    ] time= 25/08/2026 14:27:46
[2026-08-25 14:27:46,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:27:46,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:27:46,855.855 INFO    ] No existing commands found in stream
[2026-08-25 14:27:51,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:27:51,884.884 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 14:27:53,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:27:53,710.710 INFO    ] Checking for system updates...
[2026-08-25 14:27:53,747.747 INFO    ] 200
[2026-08-25 14:27:53,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:53,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:27:53,807.807 INFO    ] No update needed
[2026-08-25 14:27:53,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 14:27:53,843.843 INFO    ] 200
[2026-08-25 14:27:53,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:27:53,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:27:53,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:27:53,933.933 INFO    ] No camera update needed
[2026-08-25 14:27:53,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:27:53,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:27:53,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:27:53,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:27:55,990.990 INFO    ] ================================================
[2026-08-25 14:27:56,006.006 INFO    ] Launching Daemon at Tue Aug 25 14:27:56 IST 2026
[2026-08-25 14:27:56,017.017 INFO    ] ================================================
[2026-08-25 14:27:56,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:27:56
[2026-08-25 14:27:57,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:27:57,494.494 INFO    ] Initializing speech engine...
[2026-08-25 14:27:57,502.502 INFO    ] 2026-08-25 14:27:57
[2026-08-25 14:27:57,762.762 INFO    ] 2026-08-25 14:27:57
[2026-08-25 14:27:57,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:27:58,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:27:58,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:27:58,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:27:58,257.257 INFO    ] time= 25/08/2026 14:27:58
[2026-08-25 14:27:58,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:27:58,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:27:58,462.462 INFO    ] No existing commands found in stream
[2026-08-25 14:28:03,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:28:03,497.497 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 14:28:06,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:28:06,503.503 INFO    ] Checking for system updates...
[2026-08-25 14:28:06,539.539 INFO    ] 200
[2026-08-25 14:28:06,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:06,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:28:06,603.603 INFO    ] No update needed
[2026-08-25 14:28:06,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 14:28:06,639.639 INFO    ] 200
[2026-08-25 14:28:06,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:06,686.686 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:28:06,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:28:06,735.735 INFO    ] No camera update needed
[2026-08-25 14:28:06,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:28:06,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:28:06,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:28:06,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:28:08,791.791 INFO    ] ================================================
[2026-08-25 14:28:08,807.807 INFO    ] Launching Daemon at Tue Aug 25 14:28:08 IST 2026
[2026-08-25 14:28:08,818.818 INFO    ] ================================================
[2026-08-25 14:28:09,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:28:09
[2026-08-25 14:28:10,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:28:10,285.285 INFO    ] Initializing speech engine...
[2026-08-25 14:28:10,301.301 INFO    ] 2026-08-25 14:28:10
[2026-08-25 14:28:10,576.576 INFO    ] 2026-08-25 14:28:10
[2026-08-25 14:28:10,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:28:10,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:28:10,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:28:10,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:28:10,996.996 INFO    ] time= 25/08/2026 14:28:10
[2026-08-25 14:28:11,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:28:11,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:28:11,152.152 INFO    ] No existing commands found in stream
[2026-08-25 14:28:16,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:28:16,190.190 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 14:28:16,711.711 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:28:16,714.714 INFO    ] Checking for system updates...
[2026-08-25 14:28:16,750.750 INFO    ] 200
[2026-08-25 14:28:16,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:16,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:28:16,824.824 INFO    ] No update needed
[2026-08-25 14:28:16,826.826 INFO    ] Checking for camera pi updates...
[2026-08-25 14:28:16,861.861 INFO    ] 200
[2026-08-25 14:28:16,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:16,906.906 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:28:16,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:28:16,954.954 INFO    ] No camera update needed
[2026-08-25 14:28:16,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:28:16,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:28:16,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:28:16,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:28:19,009.009 INFO    ] ================================================
[2026-08-25 14:28:19,025.025 INFO    ] Launching Daemon at Tue Aug 25 14:28:19 IST 2026
[2026-08-25 14:28:19,035.035 INFO    ] ================================================
[2026-08-25 14:28:19,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:28:19
[2026-08-25 14:28:20,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:28:20,660.660 INFO    ] Initializing speech engine...
[2026-08-25 14:28:20,668.668 INFO    ] 2026-08-25 14:28:20
[2026-08-25 14:28:20,990.990 INFO    ] 2026-08-25 14:28:20
[2026-08-25 14:28:21,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:28:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:28:21,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:28:21,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:28:21,490.490 INFO    ] time= 25/08/2026 14:28:21
[2026-08-25 14:28:21,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:28:21,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:28:21,665.665 INFO    ] No existing commands found in stream
[2026-08-25 14:28:26,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:28:26,705.705 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 14:28:30,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:28:30,494.494 INFO    ] Checking for system updates...
[2026-08-25 14:28:30,531.531 INFO    ] 200
[2026-08-25 14:28:30,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:30,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:28:30,591.591 INFO    ] No update needed
[2026-08-25 14:28:30,594.594 INFO    ] Checking for camera pi updates...
[2026-08-25 14:28:30,628.628 INFO    ] 200
[2026-08-25 14:28:30,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:30,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:28:30,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:28:30,732.732 INFO    ] No camera update needed
[2026-08-25 14:28:30,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:28:30,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:28:30,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:28:30,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:28:32,790.790 INFO    ] ================================================
[2026-08-25 14:28:32,806.806 INFO    ] Launching Daemon at Tue Aug 25 14:28:32 IST 2026
[2026-08-25 14:28:32,818.818 INFO    ] ================================================
[2026-08-25 14:28:33,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:28:33
[2026-08-25 14:28:33,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:28:34,268.268 INFO    ] Initializing speech engine...
[2026-08-25 14:28:34,278.278 INFO    ] 2026-08-25 14:28:34
[2026-08-25 14:28:34,538.538 INFO    ] 2026-08-25 14:28:34
[2026-08-25 14:28:34,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:28:34,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:28:34,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:28:34,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:28:35,033.033 INFO    ] time= 25/08/2026 14:28:34
[2026-08-25 14:28:35,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:28:35,091.091 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:28:35,221.221 INFO    ] No existing commands found in stream
[2026-08-25 14:28:40,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:28:40,248.248 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 14:28:44,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:28:44,462.462 INFO    ] Checking for system updates...
[2026-08-25 14:28:44,498.498 INFO    ] 200
[2026-08-25 14:28:44,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:44,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:28:44,557.557 INFO    ] No update needed
[2026-08-25 14:28:44,559.559 INFO    ] Checking for camera pi updates...
[2026-08-25 14:28:44,597.597 INFO    ] 200
[2026-08-25 14:28:44,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:44,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:28:44,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:28:44,786.786 INFO    ] No camera update needed
[2026-08-25 14:28:44,788.788 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:28:44,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:28:44,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:28:44,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:28:46,845.845 INFO    ] ================================================
[2026-08-25 14:28:46,861.861 INFO    ] Launching Daemon at Tue Aug 25 14:28:46 IST 2026
[2026-08-25 14:28:46,872.872 INFO    ] ================================================
[2026-08-25 14:28:47,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:28:47
[2026-08-25 14:28:48,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:28:48,294.294 INFO    ] Initializing speech engine...
[2026-08-25 14:28:48,303.303 INFO    ] 2026-08-25 14:28:48
[2026-08-25 14:28:48,562.562 INFO    ] 2026-08-25 14:28:48
[2026-08-25 14:28:48,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:28:48,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:28:48,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:28:48,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:28:49,033.033 INFO    ] time= 25/08/2026 14:28:48
[2026-08-25 14:28:49,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:28:49,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:28:49,265.265 INFO    ] No existing commands found in stream
[2026-08-25 14:28:54,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:28:54,292.292 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 14:28:55,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:28:55,261.261 INFO    ] Checking for system updates...
[2026-08-25 14:28:55,296.296 INFO    ] 200
[2026-08-25 14:28:55,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:55,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:28:55,354.354 INFO    ] No update needed
[2026-08-25 14:28:55,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 14:28:55,390.390 INFO    ] 200
[2026-08-25 14:28:55,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:28:55,433.433 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:28:55,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:28:55,482.482 INFO    ] No camera update needed
[2026-08-25 14:28:55,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:28:55,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:28:55,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:28:55,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:28:57,537.537 INFO    ] ================================================
[2026-08-25 14:28:57,552.552 INFO    ] Launching Daemon at Tue Aug 25 14:28:57 IST 2026
[2026-08-25 14:28:57,563.563 INFO    ] ================================================
[2026-08-25 14:28:58,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:28:58
[2026-08-25 14:28:58,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:28:58,994.994 INFO    ] Initializing speech engine...
[2026-08-25 14:28:59,004.004 INFO    ] 2026-08-25 14:28:58
[2026-08-25 14:28:59,251.251 INFO    ] 2026-08-25 14:28:59
[2026-08-25 14:28:59,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:28:59,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:28:59,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:28:59,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:28:59,709.709 INFO    ] time= 25/08/2026 14:28:59
[2026-08-25 14:28:59,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:28:59,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:28:59,894.894 INFO    ] No existing commands found in stream
[2026-08-25 14:29:04,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:29:04,927.927 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 14:29:08,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:29:08,648.648 INFO    ] Checking for system updates...
[2026-08-25 14:29:08,683.683 INFO    ] 200
[2026-08-25 14:29:08,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:08,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:08,741.741 INFO    ] No update needed
[2026-08-25 14:29:08,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 14:29:08,781.781 INFO    ] 200
[2026-08-25 14:29:08,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:08,825.825 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:29:08,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:08,874.874 INFO    ] No camera update needed
[2026-08-25 14:29:08,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:29:08,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:29:08,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:29:08,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:29:10,932.932 INFO    ] ================================================
[2026-08-25 14:29:10,948.948 INFO    ] Launching Daemon at Tue Aug 25 14:29:10 IST 2026
[2026-08-25 14:29:10,958.958 INFO    ] ================================================
[2026-08-25 14:29:11,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:29:11
[2026-08-25 14:29:12,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:29:12,427.427 INFO    ] Initializing speech engine...
[2026-08-25 14:29:12,436.436 INFO    ] 2026-08-25 14:29:12
[2026-08-25 14:29:12,738.738 INFO    ] 2026-08-25 14:29:12
[2026-08-25 14:29:12,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:29:13,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:29:13,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:29:13,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:29:13,243.243 INFO    ] time= 25/08/2026 14:29:13
[2026-08-25 14:29:13,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:29:13,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:29:13,398.398 INFO    ] No existing commands found in stream
[2026-08-25 14:29:18,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:29:18,431.431 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 14:29:19,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:29:19,743.743 INFO    ] Checking for system updates...
[2026-08-25 14:29:19,779.779 INFO    ] 200
[2026-08-25 14:29:19,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:19,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:19,843.843 INFO    ] No update needed
[2026-08-25 14:29:19,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 14:29:19,883.883 INFO    ] 200
[2026-08-25 14:29:19,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:19,931.931 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:29:19,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:19,997.997 INFO    ] No camera update needed
[2026-08-25 14:29:19,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:29:20,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:29:20,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:29:20,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:29:22,052.052 INFO    ] ================================================
[2026-08-25 14:29:22,068.068 INFO    ] Launching Daemon at Tue Aug 25 14:29:22 IST 2026
[2026-08-25 14:29:22,080.080 INFO    ] ================================================
[2026-08-25 14:29:22,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:29:22
[2026-08-25 14:29:23,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:29:23,500.500 INFO    ] Initializing speech engine...
[2026-08-25 14:29:23,510.510 INFO    ] 2026-08-25 14:29:23
[2026-08-25 14:29:23,758.758 INFO    ] 2026-08-25 14:29:23
[2026-08-25 14:29:23,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:29:23,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:29:23,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:29:24,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:29:24,132.132 INFO    ] time= 25/08/2026 14:29:24
[2026-08-25 14:29:24,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:29:24,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:29:24,313.313 INFO    ] No existing commands found in stream
[2026-08-25 14:29:29,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:29:29,341.341 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 14:29:30,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:29:30,520.520 INFO    ] Checking for system updates...
[2026-08-25 14:29:30,555.555 INFO    ] 200
[2026-08-25 14:29:30,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:30,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:29:30,615.615 INFO    ] No update needed
[2026-08-25 14:29:30,618.618 INFO    ] Checking for camera pi updates...
[2026-08-25 14:29:30,651.651 INFO    ] 200
[2026-08-25 14:29:30,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:30,694.694 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:29:30,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:29:30,743.743 INFO    ] No camera update needed
[2026-08-25 14:29:30,746.746 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:29:30,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:29:30,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:29:30,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:29:32,799.799 INFO    ] ================================================
[2026-08-25 14:29:32,814.814 INFO    ] Launching Daemon at Tue Aug 25 14:29:32 IST 2026
[2026-08-25 14:29:32,825.825 INFO    ] ================================================
[2026-08-25 14:29:33,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:29:33
[2026-08-25 14:29:33,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:29:34,218.218 INFO    ] Initializing speech engine...
[2026-08-25 14:29:34,233.233 INFO    ] 2026-08-25 14:29:34
[2026-08-25 14:29:34,494.494 INFO    ] 2026-08-25 14:29:34
[2026-08-25 14:29:34,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:29:34,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:29:34,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:29:34,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:29:34,938.938 INFO    ] time= 25/08/2026 14:29:34
[2026-08-25 14:29:34,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:29:34,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:29:35,082.082 INFO    ] No existing commands found in stream
[2026-08-25 14:29:40,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:29:40,105.105 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 14:29:41,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:29:41,566.566 INFO    ] Checking for system updates...
[2026-08-25 14:29:41,601.601 INFO    ] 200
[2026-08-25 14:29:41,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:41,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:41,665.665 INFO    ] No update needed
[2026-08-25 14:29:41,667.667 INFO    ] Checking for camera pi updates...
[2026-08-25 14:29:41,700.700 INFO    ] 200
[2026-08-25 14:29:41,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:41,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:29:41,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:41,797.797 INFO    ] No camera update needed
[2026-08-25 14:29:41,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:29:41,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:29:41,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:29:41,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:29:43,852.852 INFO    ] ================================================
[2026-08-25 14:29:43,867.867 INFO    ] Launching Daemon at Tue Aug 25 14:29:43 IST 2026
[2026-08-25 14:29:43,877.877 INFO    ] ================================================
[2026-08-25 14:29:44,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:29:44
[2026-08-25 14:29:45,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:29:45,421.421 INFO    ] Initializing speech engine...
[2026-08-25 14:29:45,429.429 INFO    ] 2026-08-25 14:29:45
[2026-08-25 14:29:45,690.690 INFO    ] 2026-08-25 14:29:45
[2026-08-25 14:29:45,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:29:45,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:29:45,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:29:46,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:29:46,161.161 INFO    ] time= 25/08/2026 14:29:46
[2026-08-25 14:29:46,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:29:46,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:29:46,390.390 INFO    ] No existing commands found in stream
[2026-08-25 14:29:51,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:29:51,413.413 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 14:29:51,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:29:51,885.885 INFO    ] Checking for system updates...
[2026-08-25 14:29:51,924.924 INFO    ] 200
[2026-08-25 14:29:51,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:51,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:51,980.980 INFO    ] No update needed
[2026-08-25 14:29:51,983.983 INFO    ] Checking for camera pi updates...
[2026-08-25 14:29:52,020.020 INFO    ] 200
[2026-08-25 14:29:52,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:29:52,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:29:52,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:29:52,130.130 INFO    ] No camera update needed
[2026-08-25 14:29:52,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:29:52,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:29:52,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:29:52,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:29:54,186.186 INFO    ] ================================================
[2026-08-25 14:29:54,203.203 INFO    ] Launching Daemon at Tue Aug 25 14:29:54 IST 2026
[2026-08-25 14:29:54,213.213 INFO    ] ================================================
[2026-08-25 14:29:54,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:29:54
[2026-08-25 14:29:55,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:29:55,713.713 INFO    ] Initializing speech engine...
[2026-08-25 14:29:55,722.722 INFO    ] 2026-08-25 14:29:55
[2026-08-25 14:29:55,968.968 INFO    ] 2026-08-25 14:29:55
[2026-08-25 14:29:56,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:29:56,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:29:56,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:29:56,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:29:56,447.447 INFO    ] time= 25/08/2026 14:29:56
[2026-08-25 14:29:56,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:29:56,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:29:56,671.671 INFO    ] No existing commands found in stream
[2026-08-25 14:30:01,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:30:01,700.700 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 14:30:07,440.440 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:30:07,442.442 INFO    ] Checking for system updates...
[2026-08-25 14:30:07,481.481 INFO    ] 200
[2026-08-25 14:30:07,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:07,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:30:07,546.546 INFO    ] No update needed
[2026-08-25 14:30:07,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 14:30:07,585.585 INFO    ] 200
[2026-08-25 14:30:07,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:07,632.632 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:30:07,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:30:07,686.686 INFO    ] No camera update needed
[2026-08-25 14:30:07,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:30:07,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:30:07,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:30:07,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:30:09,741.741 INFO    ] ================================================
[2026-08-25 14:30:09,757.757 INFO    ] Launching Daemon at Tue Aug 25 14:30:09 IST 2026
[2026-08-25 14:30:09,768.768 INFO    ] ================================================
[2026-08-25 14:30:10,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:30:10
[2026-08-25 14:30:10,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:30:11,239.239 INFO    ] Initializing speech engine...
[2026-08-25 14:30:11,247.247 INFO    ] 2026-08-25 14:30:11
[2026-08-25 14:30:11,505.505 INFO    ] 2026-08-25 14:30:11
[2026-08-25 14:30:11,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:30:11,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:30:11,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:30:11,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:30:11,990.990 INFO    ] time= 25/08/2026 14:30:11
[2026-08-25 14:30:12,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:30:12,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:30:12,188.188 INFO    ] No existing commands found in stream
[2026-08-25 14:30:17,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:30:17,215.215 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 14:30:21,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:30:21,488.488 INFO    ] Checking for system updates...
[2026-08-25 14:30:21,528.528 INFO    ] 200
[2026-08-25 14:30:21,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:21,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:30:21,585.585 INFO    ] No update needed
[2026-08-25 14:30:21,588.588 INFO    ] Checking for camera pi updates...
[2026-08-25 14:30:21,626.626 INFO    ] 200
[2026-08-25 14:30:21,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:21,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:30:21,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:30:21,732.732 INFO    ] No camera update needed
[2026-08-25 14:30:21,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:30:21,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:30:21,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:30:21,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:30:23,791.791 INFO    ] ================================================
[2026-08-25 14:30:23,807.807 INFO    ] Launching Daemon at Tue Aug 25 14:30:23 IST 2026
[2026-08-25 14:30:23,818.818 INFO    ] ================================================
[2026-08-25 14:30:24,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:30:24
[2026-08-25 14:30:24,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:30:25,226.226 INFO    ] Initializing speech engine...
[2026-08-25 14:30:25,242.242 INFO    ] 2026-08-25 14:30:25
[2026-08-25 14:30:25,527.527 INFO    ] 2026-08-25 14:30:25
[2026-08-25 14:30:25,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:30:25,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:30:25,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:30:26,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:30:26,016.016 INFO    ] time= 25/08/2026 14:30:26
[2026-08-25 14:30:26,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:30:26,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:30:26,219.219 INFO    ] No existing commands found in stream
[2026-08-25 14:30:31,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:30:31,233.233 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 14:30:34,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:30:34,645.645 INFO    ] Checking for system updates...
[2026-08-25 14:30:34,689.689 INFO    ] 200
[2026-08-25 14:30:34,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:34,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:30:34,754.754 INFO    ] No update needed
[2026-08-25 14:30:34,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 14:30:34,791.791 INFO    ] 200
[2026-08-25 14:30:34,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:34,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:30:34,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:30:34,887.887 INFO    ] No camera update needed
[2026-08-25 14:30:34,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:30:34,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:30:34,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:30:34,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:30:36,942.942 INFO    ] ================================================
[2026-08-25 14:30:36,957.957 INFO    ] Launching Daemon at Tue Aug 25 14:30:36 IST 2026
[2026-08-25 14:30:36,967.967 INFO    ] ================================================
[2026-08-25 14:30:37,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:30:37
[2026-08-25 14:30:38,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:30:38,390.390 INFO    ] Initializing speech engine...
[2026-08-25 14:30:38,399.399 INFO    ] 2026-08-25 14:30:38
[2026-08-25 14:30:38,649.649 INFO    ] 2026-08-25 14:30:38
[2026-08-25 14:30:38,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:30:38,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:30:38,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:30:39,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:30:39,121.121 INFO    ] time= 25/08/2026 14:30:39
[2026-08-25 14:30:39,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:30:39,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:30:39,357.357 INFO    ] No existing commands found in stream
[2026-08-25 14:30:44,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:30:44,385.385 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 14:30:48,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:30:48,763.763 INFO    ] Checking for system updates...
[2026-08-25 14:30:48,799.799 INFO    ] 200
[2026-08-25 14:30:48,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:48,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:30:48,866.866 INFO    ] No update needed
[2026-08-25 14:30:48,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 14:30:48,904.904 INFO    ] 200
[2026-08-25 14:30:48,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:30:48,950.950 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:30:49,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:30:49,099.099 INFO    ] No camera update needed
[2026-08-25 14:30:49,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:30:49,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:30:49,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:30:49,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:30:51,156.156 INFO    ] ================================================
[2026-08-25 14:30:51,171.171 INFO    ] Launching Daemon at Tue Aug 25 14:30:51 IST 2026
[2026-08-25 14:30:51,182.182 INFO    ] ================================================
[2026-08-25 14:30:51,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:30:51
[2026-08-25 14:30:52,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:30:52,758.758 INFO    ] Initializing speech engine...
[2026-08-25 14:30:52,771.771 INFO    ] 2026-08-25 14:30:52
[2026-08-25 14:30:53,052.052 INFO    ] 2026-08-25 14:30:53
[2026-08-25 14:30:53,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:30:53,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:30:53,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:30:53,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:30:53,583.583 INFO    ] time= 25/08/2026 14:30:53
[2026-08-25 14:30:53,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:30:53,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:30:53,740.740 INFO    ] No existing commands found in stream
[2026-08-25 14:30:58,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:30:58,762.762 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 14:31:01,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:31:01,205.205 INFO    ] Checking for system updates...
[2026-08-25 14:31:01,244.244 INFO    ] 200
[2026-08-25 14:31:01,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:01,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:01,307.307 INFO    ] No update needed
[2026-08-25 14:31:01,310.310 INFO    ] Checking for camera pi updates...
[2026-08-25 14:31:01,344.344 INFO    ] 200
[2026-08-25 14:31:01,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:01,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:31:01,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:01,449.449 INFO    ] No camera update needed
[2026-08-25 14:31:01,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:31:01,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:31:01,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:31:01,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:31:03,509.509 INFO    ] ================================================
[2026-08-25 14:31:03,525.525 INFO    ] Launching Daemon at Tue Aug 25 14:31:03 IST 2026
[2026-08-25 14:31:03,537.537 INFO    ] ================================================
[2026-08-25 14:31:04,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:31:04
[2026-08-25 14:31:04,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:31:05,115.115 INFO    ] Initializing speech engine...
[2026-08-25 14:31:05,121.121 INFO    ] 2026-08-25 14:31:05
[2026-08-25 14:31:05,406.406 INFO    ] 2026-08-25 14:31:05
[2026-08-25 14:31:05,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:31:05,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:31:05,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:31:05,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:31:05,888.888 INFO    ] time= 25/08/2026 14:31:05
[2026-08-25 14:31:05,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:31:05,953.953 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:31:06,098.098 INFO    ] No existing commands found in stream
[2026-08-25 14:31:11,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:31:11,126.126 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 14:31:12,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:31:12,778.778 INFO    ] Checking for system updates...
[2026-08-25 14:31:12,815.815 INFO    ] 200
[2026-08-25 14:31:12,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:12,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:31:12,880.880 INFO    ] No update needed
[2026-08-25 14:31:12,883.883 INFO    ] Checking for camera pi updates...
[2026-08-25 14:31:12,917.917 INFO    ] 200
[2026-08-25 14:31:12,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:12,961.961 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:31:13,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:31:13,019.019 INFO    ] No camera update needed
[2026-08-25 14:31:13,022.022 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:31:13,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:31:13,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:31:13,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:31:15,077.077 INFO    ] ================================================
[2026-08-25 14:31:15,092.092 INFO    ] Launching Daemon at Tue Aug 25 14:31:15 IST 2026
[2026-08-25 14:31:15,103.103 INFO    ] ================================================
[2026-08-25 14:31:15,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:31:15
[2026-08-25 14:31:16,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:31:16,562.562 INFO    ] Initializing speech engine...
[2026-08-25 14:31:16,568.568 INFO    ] 2026-08-25 14:31:16
[2026-08-25 14:31:16,828.828 INFO    ] 2026-08-25 14:31:16
[2026-08-25 14:31:16,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:31:17,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:31:17,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:31:17,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:31:17,304.304 INFO    ] time= 25/08/2026 14:31:17
[2026-08-25 14:31:17,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:31:17,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:31:17,499.499 INFO    ] No existing commands found in stream
[2026-08-25 14:31:22,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:31:22,533.533 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 14:31:23,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:31:23,960.960 INFO    ] Checking for system updates...
[2026-08-25 14:31:24,001.001 INFO    ] 200
[2026-08-25 14:31:24,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:24,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:24,066.066 INFO    ] No update needed
[2026-08-25 14:31:24,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 14:31:24,108.108 INFO    ] 200
[2026-08-25 14:31:24,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:24,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:31:24,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:24,218.218 INFO    ] No camera update needed
[2026-08-25 14:31:24,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:31:24,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:31:24,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:31:24,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:31:26,278.278 INFO    ] ================================================
[2026-08-25 14:31:26,293.293 INFO    ] Launching Daemon at Tue Aug 25 14:31:26 IST 2026
[2026-08-25 14:31:26,304.304 INFO    ] ================================================
[2026-08-25 14:31:26,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:31:26
[2026-08-25 14:31:27,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:31:27,884.884 INFO    ] Initializing speech engine...
[2026-08-25 14:31:27,898.898 INFO    ] 2026-08-25 14:31:27
[2026-08-25 14:31:28,235.235 INFO    ] 2026-08-25 14:31:28
[2026-08-25 14:31:28,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:31:28,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:31:28,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:31:28,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:31:28,658.658 INFO    ] time= 25/08/2026 14:31:28
[2026-08-25 14:31:28,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:31:28,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:31:28,909.909 INFO    ] No existing commands found in stream
[2026-08-25 14:31:33,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:31:33,933.933 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 14:31:35,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:31:35,938.938 INFO    ] Checking for system updates...
[2026-08-25 14:31:35,975.975 INFO    ] 200
[2026-08-25 14:31:35,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:36,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:36,036.036 INFO    ] No update needed
[2026-08-25 14:31:36,038.038 INFO    ] Checking for camera pi updates...
[2026-08-25 14:31:36,077.077 INFO    ] 200
[2026-08-25 14:31:36,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:36,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:31:36,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:36,176.176 INFO    ] No camera update needed
[2026-08-25 14:31:36,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:31:36,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:31:36,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:31:36,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:31:38,235.235 INFO    ] ================================================
[2026-08-25 14:31:38,251.251 INFO    ] Launching Daemon at Tue Aug 25 14:31:38 IST 2026
[2026-08-25 14:31:38,261.261 INFO    ] ================================================
[2026-08-25 14:31:38,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:31:38
[2026-08-25 14:31:39,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:31:39,904.904 INFO    ] Initializing speech engine...
[2026-08-25 14:31:39,916.916 INFO    ] 2026-08-25 14:31:39
[2026-08-25 14:31:40,179.179 INFO    ] 2026-08-25 14:31:40
[2026-08-25 14:31:40,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:31:40,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:31:40,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:31:40,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:31:40,658.658 INFO    ] time= 25/08/2026 14:31:40
[2026-08-25 14:31:40,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:31:40,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:31:40,888.888 INFO    ] No existing commands found in stream
[2026-08-25 14:31:45,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:31:45,913.913 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 14:31:47,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:31:47,307.307 INFO    ] Checking for system updates...
[2026-08-25 14:31:47,343.343 INFO    ] 200
[2026-08-25 14:31:47,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:47,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:47,401.401 INFO    ] No update needed
[2026-08-25 14:31:47,404.404 INFO    ] Checking for camera pi updates...
[2026-08-25 14:31:47,437.437 INFO    ] 200
[2026-08-25 14:31:47,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:47,479.479 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:31:47,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:31:47,529.529 INFO    ] No camera update needed
[2026-08-25 14:31:47,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:31:47,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:31:47,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:31:47,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:31:49,583.583 INFO    ] ================================================
[2026-08-25 14:31:49,599.599 INFO    ] Launching Daemon at Tue Aug 25 14:31:49 IST 2026
[2026-08-25 14:31:49,609.609 INFO    ] ================================================
[2026-08-25 14:31:50,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:31:50
[2026-08-25 14:31:50,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:31:51,076.076 INFO    ] Initializing speech engine...
[2026-08-25 14:31:51,089.089 INFO    ] 2026-08-25 14:31:51
[2026-08-25 14:31:51,371.371 INFO    ] 2026-08-25 14:31:51
[2026-08-25 14:31:51,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:31:51,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:31:51,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:31:51,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:31:51,834.834 INFO    ] time= 25/08/2026 14:31:51
[2026-08-25 14:31:51,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:31:51,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:31:52,020.020 INFO    ] No existing commands found in stream
[2026-08-25 14:31:57,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:31:57,039.039 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 14:31:59,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:31:59,526.526 INFO    ] Checking for system updates...
[2026-08-25 14:31:59,562.562 INFO    ] 200
[2026-08-25 14:31:59,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:59,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:31:59,620.620 INFO    ] No update needed
[2026-08-25 14:31:59,623.623 INFO    ] Checking for camera pi updates...
[2026-08-25 14:31:59,656.656 INFO    ] 200
[2026-08-25 14:31:59,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:31:59,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:31:59,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:31:59,748.748 INFO    ] No camera update needed
[2026-08-25 14:31:59,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:31:59,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:31:59,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:31:59,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:32:01,814.814 INFO    ] ================================================
[2026-08-25 14:32:01,866.866 INFO    ] Launching Daemon at Tue Aug 25 14:32:01 IST 2026
[2026-08-25 14:32:01,892.892 INFO    ] ================================================
[2026-08-25 14:32:02,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:32:02
[2026-08-25 14:32:03,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:32:03,566.566 INFO    ] Initializing speech engine...
[2026-08-25 14:32:03,575.575 INFO    ] 2026-08-25 14:32:03
[2026-08-25 14:32:03,843.843 INFO    ] 2026-08-25 14:32:03
[2026-08-25 14:32:03,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:32:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:32:04,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:32:04,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:32:04,340.340 INFO    ] time= 25/08/2026 14:32:04
[2026-08-25 14:32:04,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:32:04,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:32:04,541.541 INFO    ] No existing commands found in stream
[2026-08-25 14:32:09,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:32:09,563.563 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 14:32:11,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:32:11,603.603 INFO    ] Checking for system updates...
[2026-08-25 14:32:11,640.640 INFO    ] 200
[2026-08-25 14:32:11,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:11,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:32:11,700.700 INFO    ] No update needed
[2026-08-25 14:32:11,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 14:32:11,738.738 INFO    ] 200
[2026-08-25 14:32:11,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:11,783.783 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:32:11,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:32:11,841.841 INFO    ] No camera update needed
[2026-08-25 14:32:11,844.844 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:32:11,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:32:11,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:32:11,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:32:13,901.901 INFO    ] ================================================
[2026-08-25 14:32:13,916.916 INFO    ] Launching Daemon at Tue Aug 25 14:32:13 IST 2026
[2026-08-25 14:32:13,928.928 INFO    ] ================================================
[2026-08-25 14:32:14,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:32:14
[2026-08-25 14:32:15,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:32:15,344.344 INFO    ] Initializing speech engine...
[2026-08-25 14:32:15,352.352 INFO    ] 2026-08-25 14:32:15
[2026-08-25 14:32:15,603.603 INFO    ] 2026-08-25 14:32:15
[2026-08-25 14:32:15,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:32:15,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:32:15,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:32:16,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:32:16,082.082 INFO    ] time= 25/08/2026 14:32:16
[2026-08-25 14:32:16,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:32:16,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:32:16,323.323 INFO    ] No existing commands found in stream
[2026-08-25 14:32:21,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:32:21,343.343 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 14:32:24,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:32:24,328.328 INFO    ] Checking for system updates...
[2026-08-25 14:32:24,363.363 INFO    ] 200
[2026-08-25 14:32:24,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:24,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:32:24,420.420 INFO    ] No update needed
[2026-08-25 14:32:24,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 14:32:24,456.456 INFO    ] 200
[2026-08-25 14:32:24,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:24,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:32:24,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:32:24,548.548 INFO    ] No camera update needed
[2026-08-25 14:32:24,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:32:24,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:32:24,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:32:24,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:32:26,603.603 INFO    ] ================================================
[2026-08-25 14:32:26,618.618 INFO    ] Launching Daemon at Tue Aug 25 14:32:26 IST 2026
[2026-08-25 14:32:26,629.629 INFO    ] ================================================
[2026-08-25 14:32:27,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:32:27
[2026-08-25 14:32:27,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:32:28,060.060 INFO    ] Initializing speech engine...
[2026-08-25 14:32:28,070.070 INFO    ] 2026-08-25 14:32:28
[2026-08-25 14:32:28,318.318 INFO    ] 2026-08-25 14:32:28
[2026-08-25 14:32:28,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:32:28,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:32:28,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:32:28,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:32:28,694.694 INFO    ] time= 25/08/2026 14:32:28
[2026-08-25 14:32:28,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:32:28,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:32:28,887.887 INFO    ] No existing commands found in stream
[2026-08-25 14:32:33,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:32:33,909.909 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 14:32:38,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:32:38,328.328 INFO    ] Checking for system updates...
[2026-08-25 14:32:38,363.363 INFO    ] 200
[2026-08-25 14:32:38,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:38,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:32:38,421.421 INFO    ] No update needed
[2026-08-25 14:32:38,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 14:32:38,457.457 INFO    ] 200
[2026-08-25 14:32:38,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:38,500.500 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:32:38,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:32:38,580.580 INFO    ] No camera update needed
[2026-08-25 14:32:38,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:32:38,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:32:38,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:32:38,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:32:40,636.636 INFO    ] ================================================
[2026-08-25 14:32:40,651.651 INFO    ] Launching Daemon at Tue Aug 25 14:32:40 IST 2026
[2026-08-25 14:32:40,662.662 INFO    ] ================================================
[2026-08-25 14:32:41,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:32:41
[2026-08-25 14:32:41,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:32:42,108.108 INFO    ] Initializing speech engine...
[2026-08-25 14:32:42,117.117 INFO    ] 2026-08-25 14:32:42
[2026-08-25 14:32:42,379.379 INFO    ] 2026-08-25 14:32:42
[2026-08-25 14:32:42,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:32:43,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:32:43,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:32:43,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:32:43,365.365 INFO    ] time= 25/08/2026 14:32:43
[2026-08-25 14:32:43,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:32:43,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:32:43,496.496 INFO    ] No existing commands found in stream
[2026-08-25 14:32:48,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:32:48,512.512 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 14:32:49,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:32:49,508.508 INFO    ] Checking for system updates...
[2026-08-25 14:32:49,543.543 INFO    ] 200
[2026-08-25 14:32:49,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:49,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:32:49,600.600 INFO    ] No update needed
[2026-08-25 14:32:49,603.603 INFO    ] Checking for camera pi updates...
[2026-08-25 14:32:49,637.637 INFO    ] 200
[2026-08-25 14:32:49,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:32:49,688.688 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:32:49,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:32:49,737.737 INFO    ] No camera update needed
[2026-08-25 14:32:49,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:32:49,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:32:49,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:32:49,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:32:51,794.794 INFO    ] ================================================
[2026-08-25 14:32:51,810.810 INFO    ] Launching Daemon at Tue Aug 25 14:32:51 IST 2026
[2026-08-25 14:32:51,821.821 INFO    ] ================================================
[2026-08-25 14:32:52,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:32:52
[2026-08-25 14:32:53,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:32:53,265.265 INFO    ] Initializing speech engine...
[2026-08-25 14:32:53,273.273 INFO    ] 2026-08-25 14:32:53
[2026-08-25 14:32:53,577.577 INFO    ] 2026-08-25 14:32:53
[2026-08-25 14:32:53,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:32:53,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:32:53,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:32:54,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:32:54,078.078 INFO    ] time= 25/08/2026 14:32:54
[2026-08-25 14:32:54,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:32:54,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:32:54,280.280 INFO    ] No existing commands found in stream
[2026-08-25 14:32:59,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:32:59,295.295 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 14:33:01,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:33:01,568.568 INFO    ] Checking for system updates...
[2026-08-25 14:33:01,603.603 INFO    ] 200
[2026-08-25 14:33:01,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:01,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:33:01,663.663 INFO    ] No update needed
[2026-08-25 14:33:01,677.677 INFO    ] Checking for camera pi updates...
[2026-08-25 14:33:01,734.734 INFO    ] 200
[2026-08-25 14:33:01,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:01,820.820 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:33:02,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:33:02,014.014 INFO    ] No camera update needed
[2026-08-25 14:33:02,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:33:02,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:33:02,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:33:02,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:33:04,080.080 INFO    ] ================================================
[2026-08-25 14:33:04,095.095 INFO    ] Launching Daemon at Tue Aug 25 14:33:04 IST 2026
[2026-08-25 14:33:04,106.106 INFO    ] ================================================
[2026-08-25 14:33:04,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:33:04
[2026-08-25 14:33:05,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:33:05,517.517 INFO    ] Initializing speech engine...
[2026-08-25 14:33:05,532.532 INFO    ] 2026-08-25 14:33:05
[2026-08-25 14:33:05,787.787 INFO    ] 2026-08-25 14:33:05
[2026-08-25 14:33:05,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:33:05,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:33:06,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:33:06,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:33:06,163.163 INFO    ] time= 25/08/2026 14:33:06
[2026-08-25 14:33:06,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:33:06,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:33:06,358.358 INFO    ] No existing commands found in stream
[2026-08-25 14:33:11,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:33:11,378.378 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 14:33:13,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:33:13,968.968 INFO    ] Checking for system updates...
[2026-08-25 14:33:14,004.004 INFO    ] 200
[2026-08-25 14:33:14,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:14,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:33:14,062.062 INFO    ] No update needed
[2026-08-25 14:33:14,065.065 INFO    ] Checking for camera pi updates...
[2026-08-25 14:33:14,098.098 INFO    ] 200
[2026-08-25 14:33:14,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:14,146.146 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:33:14,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:33:14,193.193 INFO    ] No camera update needed
[2026-08-25 14:33:14,196.196 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:33:14,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:33:14,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:33:14,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:33:16,248.248 INFO    ] ================================================
[2026-08-25 14:33:16,263.263 INFO    ] Launching Daemon at Tue Aug 25 14:33:16 IST 2026
[2026-08-25 14:33:16,274.274 INFO    ] ================================================
[2026-08-25 14:33:16,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:33:16
[2026-08-25 14:33:17,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:33:17,692.692 INFO    ] Initializing speech engine...
[2026-08-25 14:33:17,701.701 INFO    ] 2026-08-25 14:33:17
[2026-08-25 14:33:17,947.947 INFO    ] 2026-08-25 14:33:17
[2026-08-25 14:33:17,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:33:18,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:33:18,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:33:18,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:33:18,400.400 INFO    ] time= 25/08/2026 14:33:18
[2026-08-25 14:33:18,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:33:18,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:33:18,602.602 INFO    ] No existing commands found in stream
[2026-08-25 14:33:23,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:33:23,616.616 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 14:33:26,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:33:26,379.379 INFO    ] Checking for system updates...
[2026-08-25 14:33:26,418.418 INFO    ] 200
[2026-08-25 14:33:26,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:26,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:33:26,482.482 INFO    ] No update needed
[2026-08-25 14:33:26,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 14:33:26,521.521 INFO    ] 200
[2026-08-25 14:33:26,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:26,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:33:26,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:33:26,614.614 INFO    ] No camera update needed
[2026-08-25 14:33:26,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:33:26,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:33:26,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:33:26,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:33:28,670.670 INFO    ] ================================================
[2026-08-25 14:33:28,685.685 INFO    ] Launching Daemon at Tue Aug 25 14:33:28 IST 2026
[2026-08-25 14:33:28,695.695 INFO    ] ================================================
[2026-08-25 14:33:29,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:33:29
[2026-08-25 14:33:29,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:33:30,114.114 INFO    ] Initializing speech engine...
[2026-08-25 14:33:30,124.124 INFO    ] 2026-08-25 14:33:30
[2026-08-25 14:33:30,384.384 INFO    ] 2026-08-25 14:33:30
[2026-08-25 14:33:30,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:33:30,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:33:30,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:33:30,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:33:30,801.801 INFO    ] time= 25/08/2026 14:33:30
[2026-08-25 14:33:30,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:33:30,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:33:30,887.887 INFO    ] No existing commands found in stream
[2026-08-25 14:33:35,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:33:35,902.902 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 14:33:36,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:33:36,782.782 INFO    ] Checking for system updates...
[2026-08-25 14:33:36,817.817 INFO    ] 200
[2026-08-25 14:33:36,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:36,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:33:36,874.874 INFO    ] No update needed
[2026-08-25 14:33:36,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 14:33:36,909.909 INFO    ] 200
[2026-08-25 14:33:36,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:36,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:33:37,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:33:37,011.011 INFO    ] No camera update needed
[2026-08-25 14:33:37,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:33:37,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:33:37,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:33:37,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:33:39,066.066 INFO    ] ================================================
[2026-08-25 14:33:39,081.081 INFO    ] Launching Daemon at Tue Aug 25 14:33:39 IST 2026
[2026-08-25 14:33:39,091.091 INFO    ] ================================================
[2026-08-25 14:33:39,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:33:39
[2026-08-25 14:33:40,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:33:40,642.642 INFO    ] Initializing speech engine...
[2026-08-25 14:33:40,651.651 INFO    ] 2026-08-25 14:33:40
[2026-08-25 14:33:40,896.896 INFO    ] 2026-08-25 14:33:40
[2026-08-25 14:33:40,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:33:41,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:33:41,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:33:41,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:33:41,385.385 INFO    ] time= 25/08/2026 14:33:41
[2026-08-25 14:33:41,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:33:41,458.458 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:33:41,604.604 INFO    ] No existing commands found in stream
[2026-08-25 14:33:46,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:33:46,618.618 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 14:33:50,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:33:50,799.799 INFO    ] Checking for system updates...
[2026-08-25 14:33:50,836.836 INFO    ] 200
[2026-08-25 14:33:50,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:50,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:33:50,893.893 INFO    ] No update needed
[2026-08-25 14:33:50,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 14:33:50,933.933 INFO    ] 200
[2026-08-25 14:33:50,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:33:50,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:33:51,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:33:51,026.026 INFO    ] No camera update needed
[2026-08-25 14:33:51,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:33:51,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:33:51,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:33:51,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:33:53,081.081 INFO    ] ================================================
[2026-08-25 14:33:53,096.096 INFO    ] Launching Daemon at Tue Aug 25 14:33:53 IST 2026
[2026-08-25 14:33:53,107.107 INFO    ] ================================================
[2026-08-25 14:33:53,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:33:53
[2026-08-25 14:33:54,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:33:54,526.526 INFO    ] Initializing speech engine...
[2026-08-25 14:33:54,531.531 INFO    ] 2026-08-25 14:33:54
[2026-08-25 14:33:54,776.776 INFO    ] 2026-08-25 14:33:54
[2026-08-25 14:33:54,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:33:55,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:33:55,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:33:55,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:33:55,244.244 INFO    ] time= 25/08/2026 14:33:55
[2026-08-25 14:33:55,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:33:55,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:33:55,467.467 INFO    ] No existing commands found in stream
[2026-08-25 14:34:00,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:34:00,494.494 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 14:34:03,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:34:03,592.592 INFO    ] Checking for system updates...
[2026-08-25 14:34:03,633.633 INFO    ] 200
[2026-08-25 14:34:03,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:03,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:03,690.690 INFO    ] No update needed
[2026-08-25 14:34:03,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 14:34:03,729.729 INFO    ] 200
[2026-08-25 14:34:03,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:03,772.772 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:34:03,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:03,818.818 INFO    ] No camera update needed
[2026-08-25 14:34:03,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:34:03,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:34:03,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:34:03,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:34:05,873.873 INFO    ] ================================================
[2026-08-25 14:34:05,888.888 INFO    ] Launching Daemon at Tue Aug 25 14:34:05 IST 2026
[2026-08-25 14:34:05,898.898 INFO    ] ================================================
[2026-08-25 14:34:06,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:34:06
[2026-08-25 14:34:07,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:34:07,372.372 INFO    ] Initializing speech engine...
[2026-08-25 14:34:07,378.378 INFO    ] 2026-08-25 14:34:07
[2026-08-25 14:34:07,640.640 INFO    ] 2026-08-25 14:34:07
[2026-08-25 14:34:07,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:34:07,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:34:07,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:34:08,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:34:08,042.042 INFO    ] time= 25/08/2026 14:34:08
[2026-08-25 14:34:08,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:34:08,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:34:08,200.200 INFO    ] No existing commands found in stream
[2026-08-25 14:34:13,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:34:13,233.233 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 14:34:14,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:34:14,716.716 INFO    ] Checking for system updates...
[2026-08-25 14:34:14,758.758 INFO    ] 200
[2026-08-25 14:34:14,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:14,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:14,819.819 INFO    ] No update needed
[2026-08-25 14:34:14,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 14:34:14,857.857 INFO    ] 200
[2026-08-25 14:34:14,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:14,904.904 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:34:14,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:14,952.952 INFO    ] No camera update needed
[2026-08-25 14:34:14,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:34:14,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:34:14,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:34:14,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:34:17,009.009 INFO    ] ================================================
[2026-08-25 14:34:17,024.024 INFO    ] Launching Daemon at Tue Aug 25 14:34:17 IST 2026
[2026-08-25 14:34:17,034.034 INFO    ] ================================================
[2026-08-25 14:34:17,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:34:17
[2026-08-25 14:34:18,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:34:18,454.454 INFO    ] Initializing speech engine...
[2026-08-25 14:34:18,463.463 INFO    ] 2026-08-25 14:34:18
[2026-08-25 14:34:18,714.714 INFO    ] 2026-08-25 14:34:18
[2026-08-25 14:34:18,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:34:18,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:34:19,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:34:19,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:34:19,195.195 INFO    ] time= 25/08/2026 14:34:19
[2026-08-25 14:34:19,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:34:19,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:34:19,416.416 INFO    ] No existing commands found in stream
[2026-08-25 14:34:24,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:34:24,444.444 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 14:34:27,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:34:27,760.760 INFO    ] Checking for system updates...
[2026-08-25 14:34:27,796.796 INFO    ] 200
[2026-08-25 14:34:27,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:27,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:34:27,861.861 INFO    ] No update needed
[2026-08-25 14:34:27,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 14:34:27,897.897 INFO    ] 200
[2026-08-25 14:34:27,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:27,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:34:27,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:34:27,996.996 INFO    ] No camera update needed
[2026-08-25 14:34:27,998.998 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:34:28,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:34:28,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:34:28,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:34:30,051.051 INFO    ] ================================================
[2026-08-25 14:34:30,066.066 INFO    ] Launching Daemon at Tue Aug 25 14:34:30 IST 2026
[2026-08-25 14:34:30,077.077 INFO    ] ================================================
[2026-08-25 14:34:30,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:34:30
[2026-08-25 14:34:31,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:34:31,739.739 INFO    ] Initializing speech engine...
[2026-08-25 14:34:31,748.748 INFO    ] 2026-08-25 14:34:31
[2026-08-25 14:34:32,054.054 INFO    ] 2026-08-25 14:34:32
[2026-08-25 14:34:32,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:34:32,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:34:32,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:34:32,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:34:32,502.502 INFO    ] time= 25/08/2026 14:34:32
[2026-08-25 14:34:32,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:34:32,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:34:32,646.646 INFO    ] No existing commands found in stream
[2026-08-25 14:34:37,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:34:37,672.672 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 14:34:41,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:34:41,801.801 INFO    ] Checking for system updates...
[2026-08-25 14:34:41,841.841 INFO    ] 200
[2026-08-25 14:34:41,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:41,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:41,912.912 INFO    ] No update needed
[2026-08-25 14:34:41,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 14:34:41,949.949 INFO    ] 200
[2026-08-25 14:34:41,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:41,998.998 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:34:42,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:42,047.047 INFO    ] No camera update needed
[2026-08-25 14:34:42,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:34:42,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:34:42,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:34:42,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:34:44,108.108 INFO    ] ================================================
[2026-08-25 14:34:44,123.123 INFO    ] Launching Daemon at Tue Aug 25 14:34:44 IST 2026
[2026-08-25 14:34:44,134.134 INFO    ] ================================================
[2026-08-25 14:34:44,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:34:44
[2026-08-25 14:34:45,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:34:45,672.672 INFO    ] Initializing speech engine...
[2026-08-25 14:34:45,677.677 INFO    ] 2026-08-25 14:34:45
[2026-08-25 14:34:45,939.939 INFO    ] 2026-08-25 14:34:45
[2026-08-25 14:34:45,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:34:46,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:34:46,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:34:46,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:34:46,403.403 INFO    ] time= 25/08/2026 14:34:46
[2026-08-25 14:34:46,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:34:46,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:34:46,623.623 INFO    ] No existing commands found in stream
[2026-08-25 14:34:51,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:34:51,650.650 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 14:34:53,061.061 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:34:53,064.064 INFO    ] Checking for system updates...
[2026-08-25 14:34:53,103.103 INFO    ] 200
[2026-08-25 14:34:53,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:53,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:53,161.161 INFO    ] No update needed
[2026-08-25 14:34:53,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 14:34:53,197.197 INFO    ] 200
[2026-08-25 14:34:53,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:34:53,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:34:53,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:34:53,298.298 INFO    ] No camera update needed
[2026-08-25 14:34:53,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:34:53,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:34:53,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:34:53,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:34:55,353.353 INFO    ] ================================================
[2026-08-25 14:34:55,368.368 INFO    ] Launching Daemon at Tue Aug 25 14:34:55 IST 2026
[2026-08-25 14:34:55,379.379 INFO    ] ================================================
[2026-08-25 14:34:55,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:34:55
[2026-08-25 14:34:56,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:34:56,827.827 INFO    ] Initializing speech engine...
[2026-08-25 14:34:56,838.838 INFO    ] 2026-08-25 14:34:56
[2026-08-25 14:34:57,082.082 INFO    ] 2026-08-25 14:34:57
[2026-08-25 14:34:57,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:34:57,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:34:57,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:34:57,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:34:57,558.558 INFO    ] time= 25/08/2026 14:34:57
[2026-08-25 14:34:57,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:34:57,650.650 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:34:57,799.799 INFO    ] No existing commands found in stream
[2026-08-25 14:35:02,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:35:02,822.822 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 14:35:06,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:35:06,746.746 INFO    ] Checking for system updates...
[2026-08-25 14:35:06,791.791 INFO    ] 200
[2026-08-25 14:35:06,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:06,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:35:06,863.863 INFO    ] No update needed
[2026-08-25 14:35:06,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 14:35:06,899.899 INFO    ] 200
[2026-08-25 14:35:06,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:06,942.942 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:35:06,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:35:06,997.997 INFO    ] No camera update needed
[2026-08-25 14:35:07,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:35:07,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:35:07,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:35:07,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:35:09,053.053 INFO    ] ================================================
[2026-08-25 14:35:09,092.092 INFO    ] Launching Daemon at Tue Aug 25 14:35:09 IST 2026
[2026-08-25 14:35:09,103.103 INFO    ] ================================================
[2026-08-25 14:35:09,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:35:09
[2026-08-25 14:35:10,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:35:10,541.541 INFO    ] Initializing speech engine...
[2026-08-25 14:35:10,551.551 INFO    ] 2026-08-25 14:35:10
[2026-08-25 14:35:10,800.800 INFO    ] 2026-08-25 14:35:10
[2026-08-25 14:35:10,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:35:11,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:35:11,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:35:11,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:35:11,306.306 INFO    ] time= 25/08/2026 14:35:11
[2026-08-25 14:35:11,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:35:11,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:35:11,437.437 INFO    ] No existing commands found in stream
[2026-08-25 14:35:16,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:35:16,477.477 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 14:35:19,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:35:19,180.180 INFO    ] Checking for system updates...
[2026-08-25 14:35:19,216.216 INFO    ] 200
[2026-08-25 14:35:19,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:19,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:19,285.285 INFO    ] No update needed
[2026-08-25 14:35:19,287.287 INFO    ] Checking for camera pi updates...
[2026-08-25 14:35:19,321.321 INFO    ] 200
[2026-08-25 14:35:19,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:19,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:35:19,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:19,411.411 INFO    ] No camera update needed
[2026-08-25 14:35:19,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:35:19,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:35:19,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:35:19,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:35:21,469.469 INFO    ] ================================================
[2026-08-25 14:35:21,485.485 INFO    ] Launching Daemon at Tue Aug 25 14:35:21 IST 2026
[2026-08-25 14:35:21,496.496 INFO    ] ================================================
[2026-08-25 14:35:22,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:35:22
[2026-08-25 14:35:22,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:35:22,985.985 INFO    ] Initializing speech engine...
[2026-08-25 14:35:22,993.993 INFO    ] 2026-08-25 14:35:22
[2026-08-25 14:35:23,303.303 INFO    ] 2026-08-25 14:35:23
[2026-08-25 14:35:23,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:35:23,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:35:23,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:35:23,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:35:23,675.675 INFO    ] time= 25/08/2026 14:35:23
[2026-08-25 14:35:23,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:35:23,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:35:23,836.836 INFO    ] No existing commands found in stream
[2026-08-25 14:35:28,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:35:28,850.850 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 14:35:32,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:35:32,173.173 INFO    ] Checking for system updates...
[2026-08-25 14:35:32,219.219 INFO    ] 200
[2026-08-25 14:35:32,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:32,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:32,288.288 INFO    ] No update needed
[2026-08-25 14:35:32,290.290 INFO    ] Checking for camera pi updates...
[2026-08-25 14:35:32,325.325 INFO    ] 200
[2026-08-25 14:35:32,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:32,375.375 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:35:32,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:32,424.424 INFO    ] No camera update needed
[2026-08-25 14:35:32,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:35:32,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:35:32,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:35:32,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:35:34,480.480 INFO    ] ================================================
[2026-08-25 14:35:34,495.495 INFO    ] Launching Daemon at Tue Aug 25 14:35:34 IST 2026
[2026-08-25 14:35:34,506.506 INFO    ] ================================================
[2026-08-25 14:35:35,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:35:35
[2026-08-25 14:35:35,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:35:35,930.930 INFO    ] Initializing speech engine...
[2026-08-25 14:35:35,938.938 INFO    ] 2026-08-25 14:35:35
[2026-08-25 14:35:36,183.183 INFO    ] 2026-08-25 14:35:36
[2026-08-25 14:35:36,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:35:36,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:35:36,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:35:36,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:35:36,668.668 INFO    ] time= 25/08/2026 14:35:36
[2026-08-25 14:35:36,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:35:36,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:35:36,892.892 INFO    ] No existing commands found in stream
[2026-08-25 14:35:41,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:35:41,912.912 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 14:35:42,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:35:42,933.933 INFO    ] Checking for system updates...
[2026-08-25 14:35:42,968.968 INFO    ] 200
[2026-08-25 14:35:42,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:43,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:43,025.025 INFO    ] No update needed
[2026-08-25 14:35:43,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 14:35:43,064.064 INFO    ] 200
[2026-08-25 14:35:43,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:43,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:35:43,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:43,162.162 INFO    ] No camera update needed
[2026-08-25 14:35:43,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:35:43,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:35:43,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:35:43,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:35:45,217.217 INFO    ] ================================================
[2026-08-25 14:35:45,231.231 INFO    ] Launching Daemon at Tue Aug 25 14:35:45 IST 2026
[2026-08-25 14:35:45,242.242 INFO    ] ================================================
[2026-08-25 14:35:45,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:35:45
[2026-08-25 14:35:46,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:35:46,701.701 INFO    ] Initializing speech engine...
[2026-08-25 14:35:46,710.710 INFO    ] 2026-08-25 14:35:46
[2026-08-25 14:35:46,967.967 INFO    ] 2026-08-25 14:35:46
[2026-08-25 14:35:47,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:35:47,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:35:47,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:35:47,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:35:47,321.321 INFO    ] time= 25/08/2026 14:35:47
[2026-08-25 14:35:47,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:35:47,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:35:47,501.501 INFO    ] No existing commands found in stream
[2026-08-25 14:35:52,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:35:52,530.530 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 14:35:53,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:35:53,040.040 INFO    ] Checking for system updates...
[2026-08-25 14:35:53,076.076 INFO    ] 200
[2026-08-25 14:35:53,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:53,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:53,134.134 INFO    ] No update needed
[2026-08-25 14:35:53,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 14:35:53,173.173 INFO    ] 200
[2026-08-25 14:35:53,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:35:53,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:35:53,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:35:53,263.263 INFO    ] No camera update needed
[2026-08-25 14:35:53,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:35:53,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:35:53,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:35:53,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:35:55,319.319 INFO    ] ================================================
[2026-08-25 14:35:55,334.334 INFO    ] Launching Daemon at Tue Aug 25 14:35:55 IST 2026
[2026-08-25 14:35:55,344.344 INFO    ] ================================================
[2026-08-25 14:35:55,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:35:55
[2026-08-25 14:35:56,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:35:56,761.761 INFO    ] Initializing speech engine...
[2026-08-25 14:35:56,770.770 INFO    ] 2026-08-25 14:35:56
[2026-08-25 14:35:57,016.016 INFO    ] 2026-08-25 14:35:57
[2026-08-25 14:35:57,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:35:57,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:35:57,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:35:57,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:35:57,491.491 INFO    ] time= 25/08/2026 14:35:57
[2026-08-25 14:35:57,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:35:57,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:35:57,709.709 INFO    ] No existing commands found in stream
[2026-08-25 14:36:02,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:36:02,734.734 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 14:36:05,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:36:05,061.061 INFO    ] Checking for system updates...
[2026-08-25 14:36:05,096.096 INFO    ] 200
[2026-08-25 14:36:05,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:05,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:36:05,153.153 INFO    ] No update needed
[2026-08-25 14:36:05,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 14:36:05,193.193 INFO    ] 200
[2026-08-25 14:36:05,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:05,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:36:05,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:36:05,287.287 INFO    ] No camera update needed
[2026-08-25 14:36:05,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:36:05,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:36:05,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:36:05,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:36:07,343.343 INFO    ] ================================================
[2026-08-25 14:36:07,358.358 INFO    ] Launching Daemon at Tue Aug 25 14:36:07 IST 2026
[2026-08-25 14:36:07,369.369 INFO    ] ================================================
[2026-08-25 14:36:07,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:36:07
[2026-08-25 14:36:08,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:36:08,869.869 INFO    ] Initializing speech engine...
[2026-08-25 14:36:08,878.878 INFO    ] 2026-08-25 14:36:08
[2026-08-25 14:36:09,135.135 INFO    ] 2026-08-25 14:36:09
[2026-08-25 14:36:09,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:36:09,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:36:09,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:36:09,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:36:09,624.624 INFO    ] time= 25/08/2026 14:36:09
[2026-08-25 14:36:09,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:36:09,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:36:09,829.829 INFO    ] No existing commands found in stream
[2026-08-25 14:36:14,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:36:14,847.847 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 14:36:17,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:36:17,800.800 INFO    ] Checking for system updates...
[2026-08-25 14:36:17,837.837 INFO    ] 200
[2026-08-25 14:36:17,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:17,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:36:17,899.899 INFO    ] No update needed
[2026-08-25 14:36:17,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 14:36:17,939.939 INFO    ] 200
[2026-08-25 14:36:17,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:17,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:36:18,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:36:18,031.031 INFO    ] No camera update needed
[2026-08-25 14:36:18,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:36:18,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:36:18,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:36:18,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:36:20,085.085 INFO    ] ================================================
[2026-08-25 14:36:20,100.100 INFO    ] Launching Daemon at Tue Aug 25 14:36:20 IST 2026
[2026-08-25 14:36:20,110.110 INFO    ] ================================================
[2026-08-25 14:36:20,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:36:20
[2026-08-25 14:36:21,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:36:21,568.568 INFO    ] Initializing speech engine...
[2026-08-25 14:36:21,577.577 INFO    ] 2026-08-25 14:36:21
[2026-08-25 14:36:21,837.837 INFO    ] 2026-08-25 14:36:21
[2026-08-25 14:36:21,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:36:22,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:36:22,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:36:22,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:36:22,281.281 INFO    ] time= 25/08/2026 14:36:22
[2026-08-25 14:36:22,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:36:22,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:36:22,506.506 INFO    ] No existing commands found in stream
[2026-08-25 14:36:27,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:36:27,534.534 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 14:36:30,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:36:30,358.358 INFO    ] Checking for system updates...
[2026-08-25 14:36:30,392.392 INFO    ] 200
[2026-08-25 14:36:30,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:30,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:36:30,456.456 INFO    ] No update needed
[2026-08-25 14:36:30,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 14:36:30,492.492 INFO    ] 200
[2026-08-25 14:36:30,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:30,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:36:30,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:36:30,588.588 INFO    ] No camera update needed
[2026-08-25 14:36:30,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:36:30,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:36:30,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:36:30,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:36:32,647.647 INFO    ] ================================================
[2026-08-25 14:36:32,664.664 INFO    ] Launching Daemon at Tue Aug 25 14:36:32 IST 2026
[2026-08-25 14:36:32,675.675 INFO    ] ================================================
[2026-08-25 14:36:33,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:36:33
[2026-08-25 14:36:34,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:36:34,312.312 INFO    ] Initializing speech engine...
[2026-08-25 14:36:34,325.325 INFO    ] 2026-08-25 14:36:34
[2026-08-25 14:36:34,605.605 INFO    ] 2026-08-25 14:36:34
[2026-08-25 14:36:34,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:36:34,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:36:34,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:36:35,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:36:35,139.139 INFO    ] time= 25/08/2026 14:36:35
[2026-08-25 14:36:35,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:36:35,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:36:35,293.293 INFO    ] No existing commands found in stream
[2026-08-25 14:36:40,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:36:40,318.318 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 14:36:43,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:36:43,431.431 INFO    ] Checking for system updates...
[2026-08-25 14:36:43,471.471 INFO    ] 200
[2026-08-25 14:36:43,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:43,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:36:43,537.537 INFO    ] No update needed
[2026-08-25 14:36:43,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 14:36:43,578.578 INFO    ] 200
[2026-08-25 14:36:43,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:43,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:36:43,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:36:43,679.679 INFO    ] No camera update needed
[2026-08-25 14:36:43,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:36:43,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:36:43,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:36:43,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:36:45,737.737 INFO    ] ================================================
[2026-08-25 14:36:45,752.752 INFO    ] Launching Daemon at Tue Aug 25 14:36:45 IST 2026
[2026-08-25 14:36:45,762.762 INFO    ] ================================================
[2026-08-25 14:36:46,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:36:46
[2026-08-25 14:36:46,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:36:47,210.210 INFO    ] Initializing speech engine...
[2026-08-25 14:36:47,220.220 INFO    ] 2026-08-25 14:36:47
[2026-08-25 14:36:47,474.474 INFO    ] 2026-08-25 14:36:47
[2026-08-25 14:36:47,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:36:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:36:47,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:36:47,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:36:47,979.979 INFO    ] time= 25/08/2026 14:36:47
[2026-08-25 14:36:48,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:36:48,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:36:48,177.177 INFO    ] No existing commands found in stream
[2026-08-25 14:36:53,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:36:53,194.194 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 14:36:56,480.480 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:36:56,483.483 INFO    ] Checking for system updates...
[2026-08-25 14:36:56,520.520 INFO    ] 200
[2026-08-25 14:36:56,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:56,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:36:56,579.579 INFO    ] No update needed
[2026-08-25 14:36:56,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 14:36:56,619.619 INFO    ] 200
[2026-08-25 14:36:56,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:36:56,667.667 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:36:56,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:36:56,714.714 INFO    ] No camera update needed
[2026-08-25 14:36:56,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:36:56,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:36:56,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:36:56,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:36:58,772.772 INFO    ] ================================================
[2026-08-25 14:36:58,791.791 INFO    ] Launching Daemon at Tue Aug 25 14:36:58 IST 2026
[2026-08-25 14:36:58,801.801 INFO    ] ================================================
[2026-08-25 14:36:59,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:36:59
[2026-08-25 14:36:59,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:37:00,254.254 INFO    ] Initializing speech engine...
[2026-08-25 14:37:00,264.264 INFO    ] 2026-08-25 14:37:00
[2026-08-25 14:37:00,525.525 INFO    ] 2026-08-25 14:37:00
[2026-08-25 14:37:00,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:37:00,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:37:00,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:37:00,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:37:00,999.999 INFO    ] time= 25/08/2026 14:37:00
[2026-08-25 14:37:01,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:37:01,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:37:01,214.214 INFO    ] No existing commands found in stream
[2026-08-25 14:37:06,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:37:06,234.234 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 14:37:10,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:37:10,064.064 INFO    ] Checking for system updates...
[2026-08-25 14:37:10,101.101 INFO    ] 200
[2026-08-25 14:37:10,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:10,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:37:10,161.161 INFO    ] No update needed
[2026-08-25 14:37:10,164.164 INFO    ] Checking for camera pi updates...
[2026-08-25 14:37:10,199.199 INFO    ] 200
[2026-08-25 14:37:10,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:10,247.247 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:37:10,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:37:10,395.395 INFO    ] No camera update needed
[2026-08-25 14:37:10,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:37:10,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:37:10,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:37:10,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:37:12,455.455 INFO    ] ================================================
[2026-08-25 14:37:12,470.470 INFO    ] Launching Daemon at Tue Aug 25 14:37:12 IST 2026
[2026-08-25 14:37:12,481.481 INFO    ] ================================================
[2026-08-25 14:37:13,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:37:13
[2026-08-25 14:37:13,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:37:13,890.890 INFO    ] Initializing speech engine...
[2026-08-25 14:37:13,899.899 INFO    ] 2026-08-25 14:37:13
[2026-08-25 14:37:14,192.192 INFO    ] 2026-08-25 14:37:14
[2026-08-25 14:37:14,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:37:14,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:37:14,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:37:14,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:37:14,680.680 INFO    ] time= 25/08/2026 14:37:14
[2026-08-25 14:37:14,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:37:14,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:37:14,933.933 INFO    ] No existing commands found in stream
[2026-08-25 14:37:19,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:37:19,957.957 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 14:37:20,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:37:20,415.415 INFO    ] Checking for system updates...
[2026-08-25 14:37:20,451.451 INFO    ] 200
[2026-08-25 14:37:20,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:20,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:37:20,514.514 INFO    ] No update needed
[2026-08-25 14:37:20,517.517 INFO    ] Checking for camera pi updates...
[2026-08-25 14:37:20,551.551 INFO    ] 200
[2026-08-25 14:37:20,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:20,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:37:20,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:37:20,647.647 INFO    ] No camera update needed
[2026-08-25 14:37:20,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:37:20,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:37:20,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:37:20,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:37:22,702.702 INFO    ] ================================================
[2026-08-25 14:37:22,717.717 INFO    ] Launching Daemon at Tue Aug 25 14:37:22 IST 2026
[2026-08-25 14:37:22,729.729 INFO    ] ================================================
[2026-08-25 14:37:23,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:37:23
[2026-08-25 14:37:24,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:37:24,332.332 INFO    ] Initializing speech engine...
[2026-08-25 14:37:24,344.344 INFO    ] 2026-08-25 14:37:24
[2026-08-25 14:37:24,623.623 INFO    ] 2026-08-25 14:37:24
[2026-08-25 14:37:24,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:37:24,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:37:24,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:37:25,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:37:25,082.082 INFO    ] time= 25/08/2026 14:37:25
[2026-08-25 14:37:25,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:37:25,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:37:25,320.320 INFO    ] No existing commands found in stream
[2026-08-25 14:37:30,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:37:30,347.347 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 14:37:34,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:37:34,046.046 INFO    ] Checking for system updates...
[2026-08-25 14:37:34,082.082 INFO    ] 200
[2026-08-25 14:37:34,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:34,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:37:34,141.141 INFO    ] No update needed
[2026-08-25 14:37:34,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 14:37:34,178.178 INFO    ] 200
[2026-08-25 14:37:34,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:34,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:37:34,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:37:34,278.278 INFO    ] No camera update needed
[2026-08-25 14:37:34,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:37:34,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:37:34,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:37:34,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:37:36,336.336 INFO    ] ================================================
[2026-08-25 14:37:36,351.351 INFO    ] Launching Daemon at Tue Aug 25 14:37:36 IST 2026
[2026-08-25 14:37:36,362.362 INFO    ] ================================================
[2026-08-25 14:37:37,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:37:37
[2026-08-25 14:37:37,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:37:37,968.968 INFO    ] Initializing speech engine...
[2026-08-25 14:37:37,977.977 INFO    ] 2026-08-25 14:37:37
[2026-08-25 14:37:38,261.261 INFO    ] 2026-08-25 14:37:38
[2026-08-25 14:37:38,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:37:38,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:37:38,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:37:38,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:37:38,711.711 INFO    ] time= 25/08/2026 14:37:38
[2026-08-25 14:37:38,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:37:38,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:37:38,926.926 INFO    ] No existing commands found in stream
[2026-08-25 14:37:43,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:37:43,960.960 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 14:37:44,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:37:44,979.979 INFO    ] Checking for system updates...
[2026-08-25 14:37:45,016.016 INFO    ] 200
[2026-08-25 14:37:45,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:45,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:37:45,074.074 INFO    ] No update needed
[2026-08-25 14:37:45,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 14:37:45,111.111 INFO    ] 200
[2026-08-25 14:37:45,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:45,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:37:45,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:37:45,205.205 INFO    ] No camera update needed
[2026-08-25 14:37:45,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:37:45,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:37:45,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:37:45,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:37:47,260.260 INFO    ] ================================================
[2026-08-25 14:37:47,276.276 INFO    ] Launching Daemon at Tue Aug 25 14:37:47 IST 2026
[2026-08-25 14:37:47,287.287 INFO    ] ================================================
[2026-08-25 14:37:47,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:37:47
[2026-08-25 14:37:48,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:37:48,883.883 INFO    ] Initializing speech engine...
[2026-08-25 14:37:48,897.897 INFO    ] 2026-08-25 14:37:48
[2026-08-25 14:37:49,166.166 INFO    ] 2026-08-25 14:37:49
[2026-08-25 14:37:49,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:37:49,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:37:49,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:37:49,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:37:49,560.560 INFO    ] time= 25/08/2026 14:37:49
[2026-08-25 14:37:49,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:37:49,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:37:49,712.712 INFO    ] No existing commands found in stream
[2026-08-25 14:37:54,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:37:54,739.739 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 14:37:55,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:37:55,222.222 INFO    ] Checking for system updates...
[2026-08-25 14:37:55,257.257 INFO    ] 200
[2026-08-25 14:37:55,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:55,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:37:55,314.314 INFO    ] No update needed
[2026-08-25 14:37:55,316.316 INFO    ] Checking for camera pi updates...
[2026-08-25 14:37:55,354.354 INFO    ] 200
[2026-08-25 14:37:55,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:37:55,396.396 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:37:55,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:37:55,453.453 INFO    ] No camera update needed
[2026-08-25 14:37:55,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:37:55,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:37:55,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:37:55,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:37:57,507.507 INFO    ] ================================================
[2026-08-25 14:37:57,523.523 INFO    ] Launching Daemon at Tue Aug 25 14:37:57 IST 2026
[2026-08-25 14:37:57,534.534 INFO    ] ================================================
[2026-08-25 14:37:58,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:37:58
[2026-08-25 14:37:58,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:37:58,993.993 INFO    ] Initializing speech engine...
[2026-08-25 14:37:58,999.999 INFO    ] 2026-08-25 14:37:58
[2026-08-25 14:37:59,261.261 INFO    ] 2026-08-25 14:37:59
[2026-08-25 14:37:59,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:37:59,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:37:59,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:37:59,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:37:59,746.746 INFO    ] time= 25/08/2026 14:37:59
[2026-08-25 14:37:59,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:37:59,815.815 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:37:59,941.941 INFO    ] No existing commands found in stream
[2026-08-25 14:38:04,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:38:04,969.969 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 14:38:08,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:38:08,182.182 INFO    ] Checking for system updates...
[2026-08-25 14:38:08,217.217 INFO    ] 200
[2026-08-25 14:38:08,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:08,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:38:08,276.276 INFO    ] No update needed
[2026-08-25 14:38:08,279.279 INFO    ] Checking for camera pi updates...
[2026-08-25 14:38:08,316.316 INFO    ] 200
[2026-08-25 14:38:08,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:08,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:38:08,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:38:08,409.409 INFO    ] No camera update needed
[2026-08-25 14:38:08,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:38:08,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:38:08,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:38:08,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:38:10,467.467 INFO    ] ================================================
[2026-08-25 14:38:10,482.482 INFO    ] Launching Daemon at Tue Aug 25 14:38:10 IST 2026
[2026-08-25 14:38:10,493.493 INFO    ] ================================================
[2026-08-25 14:38:11,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:38:11
[2026-08-25 14:38:11,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:38:12,042.042 INFO    ] Initializing speech engine...
[2026-08-25 14:38:12,056.056 INFO    ] 2026-08-25 14:38:12
[2026-08-25 14:38:12,336.336 INFO    ] 2026-08-25 14:38:12
[2026-08-25 14:38:12,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:38:12,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:38:12,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:38:12,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:38:12,787.787 INFO    ] time= 25/08/2026 14:38:12
[2026-08-25 14:38:12,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:38:12,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:38:12,991.991 INFO    ] No existing commands found in stream
[2026-08-25 14:38:18,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:38:18,025.025 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 14:38:21,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:38:21,451.451 INFO    ] Checking for system updates...
[2026-08-25 14:38:21,488.488 INFO    ] 200
[2026-08-25 14:38:21,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:21,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:21,550.550 INFO    ] No update needed
[2026-08-25 14:38:21,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 14:38:21,589.589 INFO    ] 200
[2026-08-25 14:38:21,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:21,632.632 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:38:21,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:21,690.690 INFO    ] No camera update needed
[2026-08-25 14:38:21,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:38:21,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:38:21,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:38:21,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:38:23,747.747 INFO    ] ================================================
[2026-08-25 14:38:23,763.763 INFO    ] Launching Daemon at Tue Aug 25 14:38:23 IST 2026
[2026-08-25 14:38:23,773.773 INFO    ] ================================================
[2026-08-25 14:38:24,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:38:24
[2026-08-25 14:38:24,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:38:25,189.189 INFO    ] Initializing speech engine...
[2026-08-25 14:38:25,198.198 INFO    ] 2026-08-25 14:38:25
[2026-08-25 14:38:25,452.452 INFO    ] 2026-08-25 14:38:25
[2026-08-25 14:38:25,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:38:25,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:38:25,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:38:25,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:38:25,911.911 INFO    ] time= 25/08/2026 14:38:25
[2026-08-25 14:38:25,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:38:26,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:38:26,151.151 INFO    ] No existing commands found in stream
[2026-08-25 14:38:31,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:38:31,179.179 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 14:38:34,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:38:34,999.999 INFO    ] Checking for system updates...
[2026-08-25 14:38:35,037.037 INFO    ] 200
[2026-08-25 14:38:35,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:35,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:35,114.114 INFO    ] No update needed
[2026-08-25 14:38:35,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 14:38:35,150.150 INFO    ] 200
[2026-08-25 14:38:35,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:35,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:38:35,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:35,245.245 INFO    ] No camera update needed
[2026-08-25 14:38:35,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:38:35,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:38:35,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:38:35,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:38:37,300.300 INFO    ] ================================================
[2026-08-25 14:38:37,315.315 INFO    ] Launching Daemon at Tue Aug 25 14:38:37 IST 2026
[2026-08-25 14:38:37,326.326 INFO    ] ================================================
[2026-08-25 14:38:37,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:38:37
[2026-08-25 14:38:38,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:38:38,720.720 INFO    ] Initializing speech engine...
[2026-08-25 14:38:38,728.728 INFO    ] 2026-08-25 14:38:38
[2026-08-25 14:38:39,011.011 INFO    ] 2026-08-25 14:38:38
[2026-08-25 14:38:39,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:38:39,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:38:39,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:38:39,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:38:39,392.392 INFO    ] time= 25/08/2026 14:38:39
[2026-08-25 14:38:39,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:38:39,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:38:39,575.575 INFO    ] No existing commands found in stream
[2026-08-25 14:38:44,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:38:44,603.603 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 14:38:45,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:38:45,103.103 INFO    ] Checking for system updates...
[2026-08-25 14:38:45,151.151 INFO    ] 200
[2026-08-25 14:38:45,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:45,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:45,207.207 INFO    ] No update needed
[2026-08-25 14:38:45,210.210 INFO    ] Checking for camera pi updates...
[2026-08-25 14:38:45,243.243 INFO    ] 200
[2026-08-25 14:38:45,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:45,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:38:45,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:45,336.336 INFO    ] No camera update needed
[2026-08-25 14:38:45,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:38:45,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:38:45,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:38:45,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:38:47,390.390 INFO    ] ================================================
[2026-08-25 14:38:47,405.405 INFO    ] Launching Daemon at Tue Aug 25 14:38:47 IST 2026
[2026-08-25 14:38:47,416.416 INFO    ] ================================================
[2026-08-25 14:38:47,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:38:47
[2026-08-25 14:38:48,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:38:48,834.834 INFO    ] Initializing speech engine...
[2026-08-25 14:38:48,842.842 INFO    ] 2026-08-25 14:38:48
[2026-08-25 14:38:49,092.092 INFO    ] 2026-08-25 14:38:49
[2026-08-25 14:38:49,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:38:49,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:38:49,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:38:49,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:38:49,550.550 INFO    ] time= 25/08/2026 14:38:49
[2026-08-25 14:38:49,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:38:49,664.664 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:38:49,810.810 INFO    ] No existing commands found in stream
[2026-08-25 14:38:54,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:38:54,829.829 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 14:38:56,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:38:56,694.694 INFO    ] Checking for system updates...
[2026-08-25 14:38:56,730.730 INFO    ] 200
[2026-08-25 14:38:56,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:56,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:56,790.790 INFO    ] No update needed
[2026-08-25 14:38:56,792.792 INFO    ] Checking for camera pi updates...
[2026-08-25 14:38:56,826.826 INFO    ] 200
[2026-08-25 14:38:56,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:38:56,869.869 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:38:56,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:38:56,919.919 INFO    ] No camera update needed
[2026-08-25 14:38:56,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:38:56,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:38:56,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:38:56,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:38:58,975.975 INFO    ] ================================================
[2026-08-25 14:38:58,990.990 INFO    ] Launching Daemon at Tue Aug 25 14:38:58 IST 2026
[2026-08-25 14:38:59,001.001 INFO    ] ================================================
[2026-08-25 14:38:59,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:38:59
[2026-08-25 14:39:00,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:39:00,433.433 INFO    ] Initializing speech engine...
[2026-08-25 14:39:00,443.443 INFO    ] 2026-08-25 14:39:00
[2026-08-25 14:39:00,689.689 INFO    ] 2026-08-25 14:39:00
[2026-08-25 14:39:00,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:39:00,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:39:00,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:39:01,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:39:01,168.168 INFO    ] time= 25/08/2026 14:39:01
[2026-08-25 14:39:01,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:39:01,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:39:01,388.388 INFO    ] No existing commands found in stream
[2026-08-25 14:39:06,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:39:06,416.416 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 14:39:08,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:39:08,693.693 INFO    ] Checking for system updates...
[2026-08-25 14:39:08,729.729 INFO    ] 200
[2026-08-25 14:39:08,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:08,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:39:08,786.786 INFO    ] No update needed
[2026-08-25 14:39:08,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 14:39:08,822.822 INFO    ] 200
[2026-08-25 14:39:08,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:08,865.865 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:39:08,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:39:08,912.912 INFO    ] No camera update needed
[2026-08-25 14:39:08,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:39:08,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:39:08,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:39:08,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:39:10,968.968 INFO    ] ================================================
[2026-08-25 14:39:10,983.983 INFO    ] Launching Daemon at Tue Aug 25 14:39:10 IST 2026
[2026-08-25 14:39:10,994.994 INFO    ] ================================================
[2026-08-25 14:39:11,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:39:11
[2026-08-25 14:39:12,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:39:12,401.401 INFO    ] Initializing speech engine...
[2026-08-25 14:39:12,420.420 INFO    ] 2026-08-25 14:39:12
[2026-08-25 14:39:12,669.669 INFO    ] 2026-08-25 14:39:12
[2026-08-25 14:39:12,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:39:12,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:39:12,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:39:13,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:39:13,132.132 INFO    ] time= 25/08/2026 14:39:13
[2026-08-25 14:39:13,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:39:13,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:39:13,367.367 INFO    ] No existing commands found in stream
[2026-08-25 14:39:18,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:39:18,400.400 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 14:39:21,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:39:21,368.368 INFO    ] Checking for system updates...
[2026-08-25 14:39:21,407.407 INFO    ] 200
[2026-08-25 14:39:21,410.410 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:21,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:39:21,469.469 INFO    ] No update needed
[2026-08-25 14:39:21,471.471 INFO    ] Checking for camera pi updates...
[2026-08-25 14:39:21,504.504 INFO    ] 200
[2026-08-25 14:39:21,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:21,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:39:21,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:39:21,699.699 INFO    ] No camera update needed
[2026-08-25 14:39:21,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:39:21,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:39:21,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:39:21,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:39:23,759.759 INFO    ] ================================================
[2026-08-25 14:39:23,774.774 INFO    ] Launching Daemon at Tue Aug 25 14:39:23 IST 2026
[2026-08-25 14:39:23,785.785 INFO    ] ================================================
[2026-08-25 14:39:24,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:39:24
[2026-08-25 14:39:24,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:39:25,210.210 INFO    ] Initializing speech engine...
[2026-08-25 14:39:25,220.220 INFO    ] 2026-08-25 14:39:25
[2026-08-25 14:39:25,469.469 INFO    ] 2026-08-25 14:39:25
[2026-08-25 14:39:25,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:39:25,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:39:25,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:39:25,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:39:25,928.928 INFO    ] time= 25/08/2026 14:39:25
[2026-08-25 14:39:25,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:39:26,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:39:26,163.163 INFO    ] No existing commands found in stream
[2026-08-25 14:39:31,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:39:31,191.191 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 14:39:34,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:39:34,628.628 INFO    ] Checking for system updates...
[2026-08-25 14:39:34,663.663 INFO    ] 200
[2026-08-25 14:39:34,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:34,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:39:34,720.720 INFO    ] No update needed
[2026-08-25 14:39:34,722.722 INFO    ] Checking for camera pi updates...
[2026-08-25 14:39:34,755.755 INFO    ] 200
[2026-08-25 14:39:34,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:34,798.798 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:39:34,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:39:34,861.861 INFO    ] No camera update needed
[2026-08-25 14:39:34,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:39:34,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:39:34,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:39:34,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:39:36,919.919 INFO    ] ================================================
[2026-08-25 14:39:36,935.935 INFO    ] Launching Daemon at Tue Aug 25 14:39:36 IST 2026
[2026-08-25 14:39:36,945.945 INFO    ] ================================================
[2026-08-25 14:39:37,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:39:37
[2026-08-25 14:39:38,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:39:38,338.338 INFO    ] Initializing speech engine...
[2026-08-25 14:39:38,363.363 INFO    ] 2026-08-25 14:39:38
[2026-08-25 14:39:38,616.616 INFO    ] 2026-08-25 14:39:38
[2026-08-25 14:39:38,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:39:38,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:39:38,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:39:39,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:39:39,062.062 INFO    ] time= 25/08/2026 14:39:39
[2026-08-25 14:39:39,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:39:39,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:39:39,317.317 INFO    ] No existing commands found in stream
[2026-08-25 14:39:44,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:39:44,345.345 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 14:39:45,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:39:45,166.166 INFO    ] Checking for system updates...
[2026-08-25 14:39:45,201.201 INFO    ] 200
[2026-08-25 14:39:45,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:45,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:39:45,258.258 INFO    ] No update needed
[2026-08-25 14:39:45,260.260 INFO    ] Checking for camera pi updates...
[2026-08-25 14:39:45,294.294 INFO    ] 200
[2026-08-25 14:39:45,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:45,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:39:45,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:39:45,396.396 INFO    ] No camera update needed
[2026-08-25 14:39:45,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:39:45,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:39:45,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:39:45,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:39:47,456.456 INFO    ] ================================================
[2026-08-25 14:39:47,471.471 INFO    ] Launching Daemon at Tue Aug 25 14:39:47 IST 2026
[2026-08-25 14:39:47,482.482 INFO    ] ================================================
[2026-08-25 14:39:48,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:39:48
[2026-08-25 14:39:48,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:39:49,080.080 INFO    ] Initializing speech engine...
[2026-08-25 14:39:49,093.093 INFO    ] 2026-08-25 14:39:49
[2026-08-25 14:39:49,374.374 INFO    ] 2026-08-25 14:39:49
[2026-08-25 14:39:49,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:39:49,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:39:49,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:39:49,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:39:49,903.903 INFO    ] time= 25/08/2026 14:39:49
[2026-08-25 14:39:49,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:39:49,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:39:50,059.059 INFO    ] No existing commands found in stream
[2026-08-25 14:39:55,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:39:55,093.093 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 14:39:58,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:39:58,781.781 INFO    ] Checking for system updates...
[2026-08-25 14:39:58,817.817 INFO    ] 200
[2026-08-25 14:39:58,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:58,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:39:58,883.883 INFO    ] No update needed
[2026-08-25 14:39:58,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 14:39:58,922.922 INFO    ] 200
[2026-08-25 14:39:58,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:39:58,965.965 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:39:59,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:39:59,015.015 INFO    ] No camera update needed
[2026-08-25 14:39:59,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:39:59,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:39:59,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:39:59,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:40:01,070.070 INFO    ] ================================================
[2026-08-25 14:40:01,085.085 INFO    ] Launching Daemon at Tue Aug 25 14:40:01 IST 2026
[2026-08-25 14:40:01,096.096 INFO    ] ================================================
[2026-08-25 14:40:01,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:40:01
[2026-08-25 14:40:02,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:40:03,213.213 INFO    ] Initializing speech engine...
[2026-08-25 14:40:03,217.217 INFO    ] 2026-08-25 14:40:03
[2026-08-25 14:40:03,558.558 INFO    ] 2026-08-25 14:40:03
[2026-08-25 14:40:03,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:40:03,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:40:03,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:40:03,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:40:03,948.948 INFO    ] time= 25/08/2026 14:40:03
[2026-08-25 14:40:04,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:40:04,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:40:04,150.150 INFO    ] No existing commands found in stream
[2026-08-25 14:40:09,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:40:09,190.190 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 14:40:09,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:40:09,891.891 INFO    ] Checking for system updates...
[2026-08-25 14:40:09,928.928 INFO    ] 200
[2026-08-25 14:40:09,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:09,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:09,995.995 INFO    ] No update needed
[2026-08-25 14:40:09,998.998 INFO    ] Checking for camera pi updates...
[2026-08-25 14:40:10,032.032 INFO    ] 200
[2026-08-25 14:40:10,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:10,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:40:10,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:10,137.137 INFO    ] No camera update needed
[2026-08-25 14:40:10,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:40:10,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:40:10,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:40:10,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:40:12,196.196 INFO    ] ================================================
[2026-08-25 14:40:12,211.211 INFO    ] Launching Daemon at Tue Aug 25 14:40:12 IST 2026
[2026-08-25 14:40:12,222.222 INFO    ] ================================================
[2026-08-25 14:40:12,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:40:12
[2026-08-25 14:40:13,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:40:13,870.870 INFO    ] Initializing speech engine...
[2026-08-25 14:40:13,885.885 INFO    ] 2026-08-25 14:40:13
[2026-08-25 14:40:14,158.158 INFO    ] 2026-08-25 14:40:14
[2026-08-25 14:40:14,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:40:14,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:40:14,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:40:14,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:40:14,642.642 INFO    ] time= 25/08/2026 14:40:14
[2026-08-25 14:40:14,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:40:14,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:40:14,860.860 INFO    ] No existing commands found in stream
[2026-08-25 14:40:19,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:40:19,889.889 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 14:40:21,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:40:21,676.676 INFO    ] Checking for system updates...
[2026-08-25 14:40:21,714.714 INFO    ] 200
[2026-08-25 14:40:21,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:21,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:21,773.773 INFO    ] No update needed
[2026-08-25 14:40:21,776.776 INFO    ] Checking for camera pi updates...
[2026-08-25 14:40:21,811.811 INFO    ] 200
[2026-08-25 14:40:21,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:21,861.861 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:40:21,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:21,909.909 INFO    ] No camera update needed
[2026-08-25 14:40:21,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:40:21,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:40:21,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:40:21,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:40:23,969.969 INFO    ] ================================================
[2026-08-25 14:40:23,985.985 INFO    ] Launching Daemon at Tue Aug 25 14:40:23 IST 2026
[2026-08-25 14:40:24,996.996 INFO    ] ================================================
[2026-08-25 14:40:24,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:40:24
[2026-08-25 14:40:25,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:40:25,424.424 INFO    ] Initializing speech engine...
[2026-08-25 14:40:25,442.442 INFO    ] 2026-08-25 14:40:25
[2026-08-25 14:40:25,712.712 INFO    ] 2026-08-25 14:40:25
[2026-08-25 14:40:25,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:40:25,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:40:25,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:40:26,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:40:26,067.067 INFO    ] time= 25/08/2026 14:40:26
[2026-08-25 14:40:26,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:40:26,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:40:26,148.148 INFO    ] No existing commands found in stream
[2026-08-25 14:40:31,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:40:31,167.167 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 14:40:35,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:40:35,085.085 INFO    ] Checking for system updates...
[2026-08-25 14:40:35,121.121 INFO    ] 200
[2026-08-25 14:40:35,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:35,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:35,182.182 INFO    ] No update needed
[2026-08-25 14:40:35,185.185 INFO    ] Checking for camera pi updates...
[2026-08-25 14:40:35,224.224 INFO    ] 200
[2026-08-25 14:40:35,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:35,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:40:35,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:35,323.323 INFO    ] No camera update needed
[2026-08-25 14:40:35,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:40:35,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:40:35,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:40:35,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:40:37,379.379 INFO    ] ================================================
[2026-08-25 14:40:37,394.394 INFO    ] Launching Daemon at Tue Aug 25 14:40:37 IST 2026
[2026-08-25 14:40:37,404.404 INFO    ] ================================================
[2026-08-25 14:40:37,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:40:37
[2026-08-25 14:40:38,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:40:38,857.857 INFO    ] Initializing speech engine...
[2026-08-25 14:40:38,863.863 INFO    ] 2026-08-25 14:40:38
[2026-08-25 14:40:39,167.167 INFO    ] 2026-08-25 14:40:39
[2026-08-25 14:40:39,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:40:39,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:40:39,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:40:39,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:40:39,555.555 INFO    ] time= 25/08/2026 14:40:39
[2026-08-25 14:40:39,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:40:39,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:40:39,685.685 INFO    ] No existing commands found in stream
[2026-08-25 14:40:44,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:40:44,702.702 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 14:40:45,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:40:45,574.574 INFO    ] Checking for system updates...
[2026-08-25 14:40:45,614.614 INFO    ] 200
[2026-08-25 14:40:45,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:45,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:40:45,686.686 INFO    ] No update needed
[2026-08-25 14:40:45,688.688 INFO    ] Checking for camera pi updates...
[2026-08-25 14:40:45,721.721 INFO    ] 200
[2026-08-25 14:40:45,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:45,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:40:45,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:40:45,828.828 INFO    ] No camera update needed
[2026-08-25 14:40:45,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:40:45,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:40:45,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:40:45,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:40:47,884.884 INFO    ] ================================================
[2026-08-25 14:40:47,899.899 INFO    ] Launching Daemon at Tue Aug 25 14:40:47 IST 2026
[2026-08-25 14:40:47,909.909 INFO    ] ================================================
[2026-08-25 14:40:48,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:40:48
[2026-08-25 14:40:49,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:40:49,375.375 INFO    ] Initializing speech engine...
[2026-08-25 14:40:49,382.382 INFO    ] 2026-08-25 14:40:49
[2026-08-25 14:40:49,642.642 INFO    ] 2026-08-25 14:40:49
[2026-08-25 14:40:49,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:40:49,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:40:49,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:40:50,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:40:50,102.102 INFO    ] time= 25/08/2026 14:40:50
[2026-08-25 14:40:50,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:40:50,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:40:50,343.343 INFO    ] No existing commands found in stream
[2026-08-25 14:40:55,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:40:55,360.360 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 14:40:56,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:40:56,433.433 INFO    ] Checking for system updates...
[2026-08-25 14:40:56,472.472 INFO    ] 200
[2026-08-25 14:40:56,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:56,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:56,531.531 INFO    ] No update needed
[2026-08-25 14:40:56,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 14:40:56,570.570 INFO    ] 200
[2026-08-25 14:40:56,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:40:56,613.613 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:40:56,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:40:56,661.661 INFO    ] No camera update needed
[2026-08-25 14:40:56,664.664 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:40:56,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:40:56,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:40:56,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:40:58,717.717 INFO    ] ================================================
[2026-08-25 14:40:58,732.732 INFO    ] Launching Daemon at Tue Aug 25 14:40:58 IST 2026
[2026-08-25 14:40:58,742.742 INFO    ] ================================================
[2026-08-25 14:40:59,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:40:59
[2026-08-25 14:40:59,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:41:00,179.179 INFO    ] Initializing speech engine...
[2026-08-25 14:41:00,187.187 INFO    ] 2026-08-25 14:41:00
[2026-08-25 14:41:00,486.486 INFO    ] 2026-08-25 14:41:00
[2026-08-25 14:41:00,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:41:00,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:41:00,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:41:00,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:41:00,906.906 INFO    ] time= 25/08/2026 14:41:00
[2026-08-25 14:41:00,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:41:00,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:41:00,999.999 INFO    ] No existing commands found in stream
[2026-08-25 14:41:06,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:41:06,013.013 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 14:41:06,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:41:06,558.558 INFO    ] Checking for system updates...
[2026-08-25 14:41:06,594.594 INFO    ] 200
[2026-08-25 14:41:06,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:06,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:06,672.672 INFO    ] No update needed
[2026-08-25 14:41:06,675.675 INFO    ] Checking for camera pi updates...
[2026-08-25 14:41:06,714.714 INFO    ] 200
[2026-08-25 14:41:06,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:06,757.757 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:41:06,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:06,807.807 INFO    ] No camera update needed
[2026-08-25 14:41:06,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:41:06,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:41:06,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:41:06,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:41:08,862.862 INFO    ] ================================================
[2026-08-25 14:41:08,878.878 INFO    ] Launching Daemon at Tue Aug 25 14:41:08 IST 2026
[2026-08-25 14:41:08,889.889 INFO    ] ================================================
[2026-08-25 14:41:09,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:41:09
[2026-08-25 14:41:10,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:41:10,345.345 INFO    ] Initializing speech engine...
[2026-08-25 14:41:10,354.354 INFO    ] 2026-08-25 14:41:10
[2026-08-25 14:41:10,603.603 INFO    ] 2026-08-25 14:41:10
[2026-08-25 14:41:10,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:41:10,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:41:10,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:41:11,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:41:11,086.086 INFO    ] time= 25/08/2026 14:41:11
[2026-08-25 14:41:11,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:41:11,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:41:11,316.316 INFO    ] No existing commands found in stream
[2026-08-25 14:41:16,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:41:16,335.335 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 14:41:16,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:41:16,829.829 INFO    ] Checking for system updates...
[2026-08-25 14:41:16,865.865 INFO    ] 200
[2026-08-25 14:41:16,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:16,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:16,923.923 INFO    ] No update needed
[2026-08-25 14:41:16,926.926 INFO    ] Checking for camera pi updates...
[2026-08-25 14:41:16,963.963 INFO    ] 200
[2026-08-25 14:41:16,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:17,007.007 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:41:17,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:17,059.059 INFO    ] No camera update needed
[2026-08-25 14:41:17,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:41:17,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:41:17,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:41:17,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:41:19,116.116 INFO    ] ================================================
[2026-08-25 14:41:19,131.131 INFO    ] Launching Daemon at Tue Aug 25 14:41:19 IST 2026
[2026-08-25 14:41:19,142.142 INFO    ] ================================================
[2026-08-25 14:41:19,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:41:19
[2026-08-25 14:41:20,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:41:20,730.730 INFO    ] Initializing speech engine...
[2026-08-25 14:41:20,739.739 INFO    ] 2026-08-25 14:41:20
[2026-08-25 14:41:20,997.997 INFO    ] 2026-08-25 14:41:20
[2026-08-25 14:41:21,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:41:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:41:21,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:41:21,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:41:21,506.506 INFO    ] time= 25/08/2026 14:41:21
[2026-08-25 14:41:21,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:41:21,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:41:21,717.717 INFO    ] No existing commands found in stream
[2026-08-25 14:41:26,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:41:26,731.731 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 14:41:27,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:41:27,218.218 INFO    ] Checking for system updates...
[2026-08-25 14:41:27,253.253 INFO    ] 200
[2026-08-25 14:41:27,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:27,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:41:27,311.311 INFO    ] No update needed
[2026-08-25 14:41:27,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 14:41:27,346.346 INFO    ] 200
[2026-08-25 14:41:27,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:27,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:41:27,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:41:27,547.547 INFO    ] No camera update needed
[2026-08-25 14:41:27,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:41:27,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:41:27,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:41:27,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:41:29,603.603 INFO    ] ================================================
[2026-08-25 14:41:29,619.619 INFO    ] Launching Daemon at Tue Aug 25 14:41:29 IST 2026
[2026-08-25 14:41:29,629.629 INFO    ] ================================================
[2026-08-25 14:41:30,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:41:30
[2026-08-25 14:41:30,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:41:31,085.085 INFO    ] Initializing speech engine...
[2026-08-25 14:41:31,094.094 INFO    ] 2026-08-25 14:41:31
[2026-08-25 14:41:31,355.355 INFO    ] 2026-08-25 14:41:31
[2026-08-25 14:41:31,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:41:31,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:41:31,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:41:31,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:41:31,828.828 INFO    ] time= 25/08/2026 14:41:31
[2026-08-25 14:41:31,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:41:31,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:41:32,062.062 INFO    ] No existing commands found in stream
[2026-08-25 14:41:37,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:41:37,099.099 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 14:41:41,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:41:41,168.168 INFO    ] Checking for system updates...
[2026-08-25 14:41:41,204.204 INFO    ] 200
[2026-08-25 14:41:41,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:41,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:41,263.263 INFO    ] No update needed
[2026-08-25 14:41:41,265.265 INFO    ] Checking for camera pi updates...
[2026-08-25 14:41:41,299.299 INFO    ] 200
[2026-08-25 14:41:41,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:41,342.342 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:41:41,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:41,393.393 INFO    ] No camera update needed
[2026-08-25 14:41:41,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:41:41,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:41:41,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:41:41,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:41:43,447.447 INFO    ] ================================================
[2026-08-25 14:41:43,462.462 INFO    ] Launching Daemon at Tue Aug 25 14:41:43 IST 2026
[2026-08-25 14:41:43,473.473 INFO    ] ================================================
[2026-08-25 14:41:44,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:41:44
[2026-08-25 14:41:44,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:41:44,893.893 INFO    ] Initializing speech engine...
[2026-08-25 14:41:44,900.900 INFO    ] 2026-08-25 14:41:44
[2026-08-25 14:41:45,209.209 INFO    ] 2026-08-25 14:41:45
[2026-08-25 14:41:45,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:41:45,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:41:45,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:41:45,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:41:45,602.602 INFO    ] time= 25/08/2026 14:41:45
[2026-08-25 14:41:45,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:41:45,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:41:45,730.730 INFO    ] No existing commands found in stream
[2026-08-25 14:41:50,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:41:50,746.746 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 14:41:54,193.193 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:41:54,196.196 INFO    ] Checking for system updates...
[2026-08-25 14:41:54,231.231 INFO    ] 200
[2026-08-25 14:41:54,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:54,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:54,289.289 INFO    ] No update needed
[2026-08-25 14:41:54,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 14:41:54,325.325 INFO    ] 200
[2026-08-25 14:41:54,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:41:54,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:41:54,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:41:54,443.443 INFO    ] No camera update needed
[2026-08-25 14:41:54,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:41:54,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:41:54,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:41:54,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:41:56,497.497 INFO    ] ================================================
[2026-08-25 14:41:56,513.513 INFO    ] Launching Daemon at Tue Aug 25 14:41:56 IST 2026
[2026-08-25 14:41:56,524.524 INFO    ] ================================================
[2026-08-25 14:41:57,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:41:57
[2026-08-25 14:41:57,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:41:57,927.927 INFO    ] Initializing speech engine...
[2026-08-25 14:41:57,950.950 INFO    ] 2026-08-25 14:41:57
[2026-08-25 14:41:58,205.205 INFO    ] 2026-08-25 14:41:58
[2026-08-25 14:41:58,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:41:58,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:41:58,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:41:58,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:41:58,581.581 INFO    ] time= 25/08/2026 14:41:58
[2026-08-25 14:41:58,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:41:58,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:41:58,766.766 INFO    ] No existing commands found in stream
[2026-08-25 14:42:03,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:42:03,793.793 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 14:42:07,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:42:07,175.175 INFO    ] Checking for system updates...
[2026-08-25 14:42:07,211.211 INFO    ] 200
[2026-08-25 14:42:07,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:07,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:42:07,270.270 INFO    ] No update needed
[2026-08-25 14:42:07,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 14:42:07,310.310 INFO    ] 200
[2026-08-25 14:42:07,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:07,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:42:07,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:42:07,413.413 INFO    ] No camera update needed
[2026-08-25 14:42:07,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:42:07,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:42:07,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:42:07,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:42:09,469.469 INFO    ] ================================================
[2026-08-25 14:42:09,484.484 INFO    ] Launching Daemon at Tue Aug 25 14:42:09 IST 2026
[2026-08-25 14:42:09,495.495 INFO    ] ================================================
[2026-08-25 14:42:10,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:42:10
[2026-08-25 14:42:10,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:42:10,893.893 INFO    ] Initializing speech engine...
[2026-08-25 14:42:10,908.908 INFO    ] 2026-08-25 14:42:10
[2026-08-25 14:42:11,175.175 INFO    ] 2026-08-25 14:42:11
[2026-08-25 14:42:11,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:42:11,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:42:11,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:42:11,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:42:11,626.626 INFO    ] time= 25/08/2026 14:42:11
[2026-08-25 14:42:11,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:42:11,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:42:11,882.882 INFO    ] No existing commands found in stream
[2026-08-25 14:42:16,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:42:16,912.912 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 14:42:20,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:42:20,816.816 INFO    ] Checking for system updates...
[2026-08-25 14:42:20,854.854 INFO    ] 200
[2026-08-25 14:42:20,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:20,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:42:20,922.922 INFO    ] No update needed
[2026-08-25 14:42:20,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 14:42:20,960.960 INFO    ] 200
[2026-08-25 14:42:20,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:21,005.005 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:42:21,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:42:21,055.055 INFO    ] No camera update needed
[2026-08-25 14:42:21,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:42:21,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:42:21,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:42:21,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:42:23,115.115 INFO    ] ================================================
[2026-08-25 14:42:23,130.130 INFO    ] Launching Daemon at Tue Aug 25 14:42:23 IST 2026
[2026-08-25 14:42:23,141.141 INFO    ] ================================================
[2026-08-25 14:42:23,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:42:23
[2026-08-25 14:42:24,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:42:24,569.569 INFO    ] Initializing speech engine...
[2026-08-25 14:42:24,578.578 INFO    ] 2026-08-25 14:42:24
[2026-08-25 14:42:24,829.829 INFO    ] 2026-08-25 14:42:24
[2026-08-25 14:42:24,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:42:25,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:42:25,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:42:25,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:42:25,303.303 INFO    ] time= 25/08/2026 14:42:25
[2026-08-25 14:42:25,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:42:25,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:42:25,556.556 INFO    ] No existing commands found in stream
[2026-08-25 14:42:30,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:42:30,571.571 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 14:42:34,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:42:34,442.442 INFO    ] Checking for system updates...
[2026-08-25 14:42:34,478.478 INFO    ] 200
[2026-08-25 14:42:34,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:34,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:42:34,535.535 INFO    ] No update needed
[2026-08-25 14:42:34,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 14:42:34,578.578 INFO    ] 200
[2026-08-25 14:42:34,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:34,627.627 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:42:34,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:42:34,672.672 INFO    ] No camera update needed
[2026-08-25 14:42:34,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:42:34,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:42:34,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:42:34,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:42:36,727.727 INFO    ] ================================================
[2026-08-25 14:42:36,743.743 INFO    ] Launching Daemon at Tue Aug 25 14:42:36 IST 2026
[2026-08-25 14:42:36,754.754 INFO    ] ================================================
[2026-08-25 14:42:37,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:42:37
[2026-08-25 14:42:37,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:42:38,172.172 INFO    ] Initializing speech engine...
[2026-08-25 14:42:38,182.182 INFO    ] 2026-08-25 14:42:38
[2026-08-25 14:42:38,427.427 INFO    ] 2026-08-25 14:42:38
[2026-08-25 14:42:38,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:42:38,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:42:38,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:42:38,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:42:38,905.905 INFO    ] time= 25/08/2026 14:42:38
[2026-08-25 14:42:38,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:42:38,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:42:39,124.124 INFO    ] No existing commands found in stream
[2026-08-25 14:42:44,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:42:44,146.146 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 14:42:45,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:42:45,380.380 INFO    ] Checking for system updates...
[2026-08-25 14:42:45,417.417 INFO    ] 200
[2026-08-25 14:42:45,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:45,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:42:45,478.478 INFO    ] No update needed
[2026-08-25 14:42:45,481.481 INFO    ] Checking for camera pi updates...
[2026-08-25 14:42:45,525.525 INFO    ] 200
[2026-08-25 14:42:45,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:45,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:42:45,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:42:45,629.629 INFO    ] No camera update needed
[2026-08-25 14:42:45,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:42:45,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:42:45,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:42:45,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:42:47,687.687 INFO    ] ================================================
[2026-08-25 14:42:47,703.703 INFO    ] Launching Daemon at Tue Aug 25 14:42:47 IST 2026
[2026-08-25 14:42:47,714.714 INFO    ] ================================================
[2026-08-25 14:42:48,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:42:48
[2026-08-25 14:42:48,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:42:49,136.136 INFO    ] Initializing speech engine...
[2026-08-25 14:42:49,145.145 INFO    ] 2026-08-25 14:42:49
[2026-08-25 14:42:49,399.399 INFO    ] 2026-08-25 14:42:49
[2026-08-25 14:42:49,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:42:49,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:42:49,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:42:49,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:42:49,857.857 INFO    ] time= 25/08/2026 14:42:49
[2026-08-25 14:42:49,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:42:49,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:42:50,097.097 INFO    ] No existing commands found in stream
[2026-08-25 14:42:55,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:42:55,112.112 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 14:42:55,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:42:55,935.935 INFO    ] Checking for system updates...
[2026-08-25 14:42:55,970.970 INFO    ] 200
[2026-08-25 14:42:55,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:56,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:42:56,028.028 INFO    ] No update needed
[2026-08-25 14:42:56,030.030 INFO    ] Checking for camera pi updates...
[2026-08-25 14:42:56,065.065 INFO    ] 200
[2026-08-25 14:42:56,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:42:56,107.107 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:42:56,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:42:56,153.153 INFO    ] No camera update needed
[2026-08-25 14:42:56,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:42:56,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:42:56,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:42:56,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:42:58,207.207 INFO    ] ================================================
[2026-08-25 14:42:58,223.223 INFO    ] Launching Daemon at Tue Aug 25 14:42:58 IST 2026
[2026-08-25 14:42:58,234.234 INFO    ] ================================================
[2026-08-25 14:42:58,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:42:58
[2026-08-25 14:42:59,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:42:59,854.854 INFO    ] Initializing speech engine...
[2026-08-25 14:42:59,860.860 INFO    ] 2026-08-25 14:42:59
[2026-08-25 14:43:00,121.121 INFO    ] 2026-08-25 14:43:00
[2026-08-25 14:43:00,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:43:00,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:43:00,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:43:00,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:43:00,575.575 INFO    ] time= 25/08/2026 14:43:00
[2026-08-25 14:43:00,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:43:00,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:43:00,814.814 INFO    ] No existing commands found in stream
[2026-08-25 14:43:05,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:43:05,833.833 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 14:43:08,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:43:08,769.769 INFO    ] Checking for system updates...
[2026-08-25 14:43:08,804.804 INFO    ] 200
[2026-08-25 14:43:08,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:08,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:08,869.869 INFO    ] No update needed
[2026-08-25 14:43:08,872.872 INFO    ] Checking for camera pi updates...
[2026-08-25 14:43:08,910.910 INFO    ] 200
[2026-08-25 14:43:08,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:08,953.953 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:43:09,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:09,014.014 INFO    ] No camera update needed
[2026-08-25 14:43:09,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:43:09,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:43:09,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:43:09,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:43:11,072.072 INFO    ] ================================================
[2026-08-25 14:43:11,087.087 INFO    ] Launching Daemon at Tue Aug 25 14:43:11 IST 2026
[2026-08-25 14:43:11,098.098 INFO    ] ================================================
[2026-08-25 14:43:11,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:43:11
[2026-08-25 14:43:12,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:43:12,521.521 INFO    ] Initializing speech engine...
[2026-08-25 14:43:12,530.530 INFO    ] 2026-08-25 14:43:12
[2026-08-25 14:43:12,780.780 INFO    ] 2026-08-25 14:43:12
[2026-08-25 14:43:12,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:43:13,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:43:13,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:43:13,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:43:13,323.323 INFO    ] time= 25/08/2026 14:43:13
[2026-08-25 14:43:13,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:43:13,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:43:13,499.499 INFO    ] No existing commands found in stream
[2026-08-25 14:43:18,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:43:18,524.524 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 14:43:19,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:43:19,436.436 INFO    ] Checking for system updates...
[2026-08-25 14:43:19,473.473 INFO    ] 200
[2026-08-25 14:43:19,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:19,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:19,539.539 INFO    ] No update needed
[2026-08-25 14:43:19,541.541 INFO    ] Checking for camera pi updates...
[2026-08-25 14:43:19,579.579 INFO    ] 200
[2026-08-25 14:43:19,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:19,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:43:19,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:19,705.705 INFO    ] No camera update needed
[2026-08-25 14:43:19,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:43:19,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:43:19,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:43:19,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:43:21,763.763 INFO    ] ================================================
[2026-08-25 14:43:21,779.779 INFO    ] Launching Daemon at Tue Aug 25 14:43:21 IST 2026
[2026-08-25 14:43:21,790.790 INFO    ] ================================================
[2026-08-25 14:43:22,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:43:22
[2026-08-25 14:43:22,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:43:23,260.260 INFO    ] Initializing speech engine...
[2026-08-25 14:43:23,270.270 INFO    ] 2026-08-25 14:43:23
[2026-08-25 14:43:23,515.515 INFO    ] 2026-08-25 14:43:23
[2026-08-25 14:43:23,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:43:23,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:43:23,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:43:23,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:43:23,997.997 INFO    ] time= 25/08/2026 14:43:23
[2026-08-25 14:43:24,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:43:24,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:43:24,205.205 INFO    ] No existing commands found in stream
[2026-08-25 14:43:29,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:43:29,220.220 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 14:43:31,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:43:31,742.742 INFO    ] Checking for system updates...
[2026-08-25 14:43:31,783.783 INFO    ] 200
[2026-08-25 14:43:31,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:31,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:43:31,855.855 INFO    ] No update needed
[2026-08-25 14:43:31,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 14:43:31,895.895 INFO    ] 200
[2026-08-25 14:43:31,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:31,942.942 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:43:32,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:43:32,092.092 INFO    ] No camera update needed
[2026-08-25 14:43:32,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:43:32,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:43:32,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:43:32,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:43:34,151.151 INFO    ] ================================================
[2026-08-25 14:43:34,167.167 INFO    ] Launching Daemon at Tue Aug 25 14:43:34 IST 2026
[2026-08-25 14:43:34,178.178 INFO    ] ================================================
[2026-08-25 14:43:34,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:43:34
[2026-08-25 14:43:35,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:43:35,601.601 INFO    ] Initializing speech engine...
[2026-08-25 14:43:35,609.609 INFO    ] 2026-08-25 14:43:35
[2026-08-25 14:43:35,860.860 INFO    ] 2026-08-25 14:43:35
[2026-08-25 14:43:35,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:43:36,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:43:36,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:43:36,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:43:36,232.232 INFO    ] time= 25/08/2026 14:43:36
[2026-08-25 14:43:36,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:43:36,286.286 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:43:36,392.392 INFO    ] No existing commands found in stream
[2026-08-25 14:43:41,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:43:41,420.420 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 14:43:43,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:43:43,248.248 INFO    ] Checking for system updates...
[2026-08-25 14:43:43,284.284 INFO    ] 200
[2026-08-25 14:43:43,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:43,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:43,341.341 INFO    ] No update needed
[2026-08-25 14:43:43,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 14:43:43,382.382 INFO    ] 200
[2026-08-25 14:43:43,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:43,430.430 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:43:43,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:43,483.483 INFO    ] No camera update needed
[2026-08-25 14:43:43,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:43:43,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:43:43,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:43:43,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:43:45,541.541 INFO    ] ================================================
[2026-08-25 14:43:45,557.557 INFO    ] Launching Daemon at Tue Aug 25 14:43:45 IST 2026
[2026-08-25 14:43:45,569.569 INFO    ] ================================================
[2026-08-25 14:43:46,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:43:46
[2026-08-25 14:43:46,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:43:46,965.965 INFO    ] Initializing speech engine...
[2026-08-25 14:43:46,973.973 INFO    ] 2026-08-25 14:43:46
[2026-08-25 14:43:47,246.246 INFO    ] 2026-08-25 14:43:47
[2026-08-25 14:43:47,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:43:47,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:43:47,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:43:47,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:43:47,735.735 INFO    ] time= 25/08/2026 14:43:47
[2026-08-25 14:43:47,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:43:47,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:43:47,933.933 INFO    ] No existing commands found in stream
[2026-08-25 14:43:52,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:43:52,964.964 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 14:43:56,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:43:56,790.790 INFO    ] Checking for system updates...
[2026-08-25 14:43:56,825.825 INFO    ] 200
[2026-08-25 14:43:56,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:56,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:56,882.882 INFO    ] No update needed
[2026-08-25 14:43:56,885.885 INFO    ] Checking for camera pi updates...
[2026-08-25 14:43:56,923.923 INFO    ] 200
[2026-08-25 14:43:56,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:43:56,967.967 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:43:57,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:43:57,015.015 INFO    ] No camera update needed
[2026-08-25 14:43:57,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:43:57,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:43:57,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:43:57,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:43:59,070.070 INFO    ] ================================================
[2026-08-25 14:43:59,086.086 INFO    ] Launching Daemon at Tue Aug 25 14:43:59 IST 2026
[2026-08-25 14:43:59,097.097 INFO    ] ================================================
[2026-08-25 14:43:59,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:43:59
[2026-08-25 14:44:00,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:44:00,693.693 INFO    ] Initializing speech engine...
[2026-08-25 14:44:00,707.707 INFO    ] 2026-08-25 14:44:00
[2026-08-25 14:44:00,981.981 INFO    ] 2026-08-25 14:44:00
[2026-08-25 14:44:01,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:44:01,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:44:01,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:44:01,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:44:01,468.468 INFO    ] time= 25/08/2026 14:44:01
[2026-08-25 14:44:01,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:44:01,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:44:01,727.727 INFO    ] No existing commands found in stream
[2026-08-25 14:44:06,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:44:06,748.748 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 14:44:09,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:44:09,266.266 INFO    ] Checking for system updates...
[2026-08-25 14:44:09,303.303 INFO    ] 200
[2026-08-25 14:44:09,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:09,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:44:09,362.362 INFO    ] No update needed
[2026-08-25 14:44:09,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 14:44:09,403.403 INFO    ] 200
[2026-08-25 14:44:09,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:09,453.453 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:44:09,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:44:09,506.506 INFO    ] No camera update needed
[2026-08-25 14:44:09,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:44:09,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:44:09,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:44:09,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:44:11,565.565 INFO    ] ================================================
[2026-08-25 14:44:11,581.581 INFO    ] Launching Daemon at Tue Aug 25 14:44:11 IST 2026
[2026-08-25 14:44:11,592.592 INFO    ] ================================================
[2026-08-25 14:44:12,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:44:12
[2026-08-25 14:44:12,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:44:13,016.016 INFO    ] Initializing speech engine...
[2026-08-25 14:44:13,025.025 INFO    ] 2026-08-25 14:44:13
[2026-08-25 14:44:13,270.270 INFO    ] 2026-08-25 14:44:13
[2026-08-25 14:44:13,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:44:13,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:44:13,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:44:13,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:44:13,743.743 INFO    ] time= 25/08/2026 14:44:13
[2026-08-25 14:44:13,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:44:13,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:44:13,962.962 INFO    ] No existing commands found in stream
[2026-08-25 14:44:18,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:44:18,987.987 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 14:44:22,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:44:22,404.404 INFO    ] Checking for system updates...
[2026-08-25 14:44:22,439.439 INFO    ] 200
[2026-08-25 14:44:22,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:22,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:22,503.503 INFO    ] No update needed
[2026-08-25 14:44:22,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 14:44:22,543.543 INFO    ] 200
[2026-08-25 14:44:22,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:22,585.585 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:44:22,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:22,638.638 INFO    ] No camera update needed
[2026-08-25 14:44:22,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:44:22,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:44:22,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:44:22,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:44:24,696.696 INFO    ] ================================================
[2026-08-25 14:44:24,712.712 INFO    ] Launching Daemon at Tue Aug 25 14:44:24 IST 2026
[2026-08-25 14:44:24,723.723 INFO    ] ================================================
[2026-08-25 14:44:25,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:44:25
[2026-08-25 14:44:25,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:44:26,150.150 INFO    ] Initializing speech engine...
[2026-08-25 14:44:26,157.157 INFO    ] 2026-08-25 14:44:26
[2026-08-25 14:44:26,417.417 INFO    ] 2026-08-25 14:44:26
[2026-08-25 14:44:26,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:44:26,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:44:26,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:44:26,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:44:26,893.893 INFO    ] time= 25/08/2026 14:44:26
[2026-08-25 14:44:26,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:44:26,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:44:27,108.108 INFO    ] No existing commands found in stream
[2026-08-25 14:44:32,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:44:32,120.120 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 14:44:35,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:44:35,868.868 INFO    ] Checking for system updates...
[2026-08-25 14:44:35,906.906 INFO    ] 200
[2026-08-25 14:44:35,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:35,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:35,973.973 INFO    ] No update needed
[2026-08-25 14:44:35,976.976 INFO    ] Checking for camera pi updates...
[2026-08-25 14:44:36,011.011 INFO    ] 200
[2026-08-25 14:44:36,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:36,060.060 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:44:36,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:36,121.121 INFO    ] No camera update needed
[2026-08-25 14:44:36,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:44:36,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:44:36,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:44:36,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:44:38,181.181 INFO    ] ================================================
[2026-08-25 14:44:38,197.197 INFO    ] Launching Daemon at Tue Aug 25 14:44:38 IST 2026
[2026-08-25 14:44:38,208.208 INFO    ] ================================================
[2026-08-25 14:44:38,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:44:38
[2026-08-25 14:44:39,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:44:39,665.665 INFO    ] Initializing speech engine...
[2026-08-25 14:44:39,672.672 INFO    ] 2026-08-25 14:44:39
[2026-08-25 14:44:39,934.934 INFO    ] 2026-08-25 14:44:39
[2026-08-25 14:44:39,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:44:40,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:44:40,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:44:40,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:44:40,390.390 INFO    ] time= 25/08/2026 14:44:40
[2026-08-25 14:44:40,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:44:40,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:44:40,616.616 INFO    ] No existing commands found in stream
[2026-08-25 14:44:45,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:44:45,646.646 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 14:44:46,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:44:46,448.448 INFO    ] Checking for system updates...
[2026-08-25 14:44:46,488.488 INFO    ] 200
[2026-08-25 14:44:46,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:46,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:46,545.545 INFO    ] No update needed
[2026-08-25 14:44:46,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 14:44:46,581.581 INFO    ] 200
[2026-08-25 14:44:46,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:46,629.629 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:44:46,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:46,689.689 INFO    ] No camera update needed
[2026-08-25 14:44:46,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:44:46,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:44:46,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:44:46,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:44:48,745.745 INFO    ] ================================================
[2026-08-25 14:44:48,761.761 INFO    ] Launching Daemon at Tue Aug 25 14:44:48 IST 2026
[2026-08-25 14:44:48,773.773 INFO    ] ================================================
[2026-08-25 14:44:49,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:44:49
[2026-08-25 14:44:49,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:44:50,176.176 INFO    ] Initializing speech engine...
[2026-08-25 14:44:50,199.199 INFO    ] 2026-08-25 14:44:50
[2026-08-25 14:44:50,454.454 INFO    ] 2026-08-25 14:44:50
[2026-08-25 14:44:50,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:44:50,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:44:50,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:44:50,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:44:50,829.829 INFO    ] time= 25/08/2026 14:44:50
[2026-08-25 14:44:50,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:44:50,900.900 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:44:51,030.030 INFO    ] No existing commands found in stream
[2026-08-25 14:44:56,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:44:56,043.043 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 14:44:59,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:44:59,520.520 INFO    ] Checking for system updates...
[2026-08-25 14:44:59,557.557 INFO    ] 200
[2026-08-25 14:44:59,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:59,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:59,613.613 INFO    ] No update needed
[2026-08-25 14:44:59,616.616 INFO    ] Checking for camera pi updates...
[2026-08-25 14:44:59,654.654 INFO    ] 200
[2026-08-25 14:44:59,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:44:59,703.703 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:44:59,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:44:59,753.753 INFO    ] No camera update needed
[2026-08-25 14:44:59,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:44:59,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:44:59,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:44:59,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:45:01,839.839 INFO    ] ================================================
[2026-08-25 14:45:01,949.949 INFO    ] Launching Daemon at Tue Aug 25 14:45:01 IST 2026
[2026-08-25 14:45:02,977.977 INFO    ] ================================================
[2026-08-25 14:45:02,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:45:02
[2026-08-25 14:45:03,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:45:04,066.066 INFO    ] Initializing speech engine...
[2026-08-25 14:45:04,076.076 INFO    ] 2026-08-25 14:45:04
[2026-08-25 14:45:04,328.328 INFO    ] 2026-08-25 14:45:04
[2026-08-25 14:45:04,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:45:04,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:45:04,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:45:04,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:45:04,750.750 INFO    ] time= 25/08/2026 14:45:04
[2026-08-25 14:45:04,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:45:04,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:45:04,961.961 INFO    ] No existing commands found in stream
[2026-08-25 14:45:09,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:45:09,989.989 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 14:45:11,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:45:11,538.538 INFO    ] Checking for system updates...
[2026-08-25 14:45:11,580.580 INFO    ] 200
[2026-08-25 14:45:11,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:11,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:45:11,638.638 INFO    ] No update needed
[2026-08-25 14:45:11,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 14:45:11,678.678 INFO    ] 200
[2026-08-25 14:45:11,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:11,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:45:11,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:45:11,773.773 INFO    ] No camera update needed
[2026-08-25 14:45:11,775.775 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:45:11,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:45:11,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:45:11,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:45:13,828.828 INFO    ] ================================================
[2026-08-25 14:45:13,845.845 INFO    ] Launching Daemon at Tue Aug 25 14:45:13 IST 2026
[2026-08-25 14:45:13,856.856 INFO    ] ================================================
[2026-08-25 14:45:14,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:45:14
[2026-08-25 14:45:15,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:45:15,277.277 INFO    ] Initializing speech engine...
[2026-08-25 14:45:15,287.287 INFO    ] 2026-08-25 14:45:15
[2026-08-25 14:45:15,535.535 INFO    ] 2026-08-25 14:45:15
[2026-08-25 14:45:15,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:45:15,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:45:15,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:45:15,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:45:15,995.995 INFO    ] time= 25/08/2026 14:45:15
[2026-08-25 14:45:16,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:45:16,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:45:16,256.256 INFO    ] No existing commands found in stream
[2026-08-25 14:45:21,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:45:21,277.277 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 14:45:22,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:45:22,132.132 INFO    ] Checking for system updates...
[2026-08-25 14:45:22,171.171 INFO    ] 200
[2026-08-25 14:45:22,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:22,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:45:22,229.229 INFO    ] No update needed
[2026-08-25 14:45:22,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 14:45:22,264.264 INFO    ] 200
[2026-08-25 14:45:22,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:22,307.307 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:45:22,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:45:22,356.356 INFO    ] No camera update needed
[2026-08-25 14:45:22,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:45:22,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:45:22,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:45:22,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:45:24,411.411 INFO    ] ================================================
[2026-08-25 14:45:24,427.427 INFO    ] Launching Daemon at Tue Aug 25 14:45:24 IST 2026
[2026-08-25 14:45:24,439.439 INFO    ] ================================================
[2026-08-25 14:45:25,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:45:25
[2026-08-25 14:45:25,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:45:25,859.859 INFO    ] Initializing speech engine...
[2026-08-25 14:45:25,867.867 INFO    ] 2026-08-25 14:45:25
[2026-08-25 14:45:26,116.116 INFO    ] 2026-08-25 14:45:26
[2026-08-25 14:45:26,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:45:26,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:45:26,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:45:26,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:45:26,673.673 INFO    ] time= 25/08/2026 14:45:26
[2026-08-25 14:45:26,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:45:26,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:45:26,826.826 INFO    ] No existing commands found in stream
[2026-08-25 14:45:31,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:45:31,841.841 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 14:45:35,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:45:35,447.447 INFO    ] Checking for system updates...
[2026-08-25 14:45:35,483.483 INFO    ] 200
[2026-08-25 14:45:35,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:35,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:45:35,550.550 INFO    ] No update needed
[2026-08-25 14:45:35,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 14:45:35,585.585 INFO    ] 200
[2026-08-25 14:45:35,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:35,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:45:35,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:45:35,779.779 INFO    ] No camera update needed
[2026-08-25 14:45:35,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:45:35,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:45:35,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:45:35,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:45:37,834.834 INFO    ] ================================================
[2026-08-25 14:45:37,849.849 INFO    ] Launching Daemon at Tue Aug 25 14:45:37 IST 2026
[2026-08-25 14:45:37,860.860 INFO    ] ================================================
[2026-08-25 14:45:38,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:45:38
[2026-08-25 14:45:39,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:45:39,321.321 INFO    ] Initializing speech engine...
[2026-08-25 14:45:39,327.327 INFO    ] 2026-08-25 14:45:39
[2026-08-25 14:45:39,574.574 INFO    ] 2026-08-25 14:45:39
[2026-08-25 14:45:39,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:45:39,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:45:39,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:45:40,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:45:40,088.088 INFO    ] time= 25/08/2026 14:45:40
[2026-08-25 14:45:40,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:45:40,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:45:40,271.271 INFO    ] No existing commands found in stream
[2026-08-25 14:45:45,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:45:45,295.295 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 14:45:46,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:45:46,217.217 INFO    ] Checking for system updates...
[2026-08-25 14:45:46,253.253 INFO    ] 200
[2026-08-25 14:45:46,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:46,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:45:46,320.320 INFO    ] No update needed
[2026-08-25 14:45:46,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 14:45:46,359.359 INFO    ] 200
[2026-08-25 14:45:46,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:46,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:45:46,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:45:46,458.458 INFO    ] No camera update needed
[2026-08-25 14:45:46,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:45:46,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:45:46,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:45:46,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:45:48,519.519 INFO    ] ================================================
[2026-08-25 14:45:48,535.535 INFO    ] Launching Daemon at Tue Aug 25 14:45:48 IST 2026
[2026-08-25 14:45:48,547.547 INFO    ] ================================================
[2026-08-25 14:45:49,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:45:49
[2026-08-25 14:45:49,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:45:50,226.226 INFO    ] Initializing speech engine...
[2026-08-25 14:45:50,233.233 INFO    ] 2026-08-25 14:45:50
[2026-08-25 14:45:50,518.518 INFO    ] 2026-08-25 14:45:50
[2026-08-25 14:45:50,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:45:50,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:45:50,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:45:50,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:45:51,017.017 INFO    ] time= 25/08/2026 14:45:50
[2026-08-25 14:45:51,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:45:51,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:45:51,222.222 INFO    ] No existing commands found in stream
[2026-08-25 14:45:56,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:45:56,257.257 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 14:45:56,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:45:56,811.811 INFO    ] Checking for system updates...
[2026-08-25 14:45:56,853.853 INFO    ] 200
[2026-08-25 14:45:56,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:56,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:45:56,925.925 INFO    ] No update needed
[2026-08-25 14:45:56,928.928 INFO    ] Checking for camera pi updates...
[2026-08-25 14:45:56,968.968 INFO    ] 200
[2026-08-25 14:45:56,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:45:57,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:45:57,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:45:57,068.068 INFO    ] No camera update needed
[2026-08-25 14:45:57,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:45:57,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:45:57,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:45:57,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:45:59,126.126 INFO    ] ================================================
[2026-08-25 14:45:59,142.142 INFO    ] Launching Daemon at Tue Aug 25 14:45:59 IST 2026
[2026-08-25 14:45:59,153.153 INFO    ] ================================================
[2026-08-25 14:45:59,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:45:59
[2026-08-25 14:46:00,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:46:00,572.572 INFO    ] Initializing speech engine...
[2026-08-25 14:46:00,582.582 INFO    ] 2026-08-25 14:46:00
[2026-08-25 14:46:00,832.832 INFO    ] 2026-08-25 14:46:00
[2026-08-25 14:46:00,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:46:01,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:46:01,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:46:01,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:46:01,306.306 INFO    ] time= 25/08/2026 14:46:01
[2026-08-25 14:46:01,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:46:01,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:46:01,419.419 INFO    ] No existing commands found in stream
[2026-08-25 14:46:06,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:46:06,432.432 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 14:46:09,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:46:09,608.608 INFO    ] Checking for system updates...
[2026-08-25 14:46:09,647.647 INFO    ] 200
[2026-08-25 14:46:09,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:09,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:09,711.711 INFO    ] No update needed
[2026-08-25 14:46:09,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 14:46:09,747.747 INFO    ] 200
[2026-08-25 14:46:09,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:09,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:46:09,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:09,837.837 INFO    ] No camera update needed
[2026-08-25 14:46:09,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:46:09,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:46:09,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:46:09,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:46:11,892.892 INFO    ] ================================================
[2026-08-25 14:46:11,908.908 INFO    ] Launching Daemon at Tue Aug 25 14:46:11 IST 2026
[2026-08-25 14:46:11,919.919 INFO    ] ================================================
[2026-08-25 14:46:12,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:46:12
[2026-08-25 14:46:13,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:46:13,382.382 INFO    ] Initializing speech engine...
[2026-08-25 14:46:13,388.388 INFO    ] 2026-08-25 14:46:13
[2026-08-25 14:46:13,662.662 INFO    ] 2026-08-25 14:46:13
[2026-08-25 14:46:13,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:46:13,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:46:13,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:46:14,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:46:14,191.191 INFO    ] time= 25/08/2026 14:46:14
[2026-08-25 14:46:14,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:46:14,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:46:14,347.347 INFO    ] No existing commands found in stream
[2026-08-25 14:46:19,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:46:19,362.362 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 14:46:22,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:46:22,123.123 INFO    ] Checking for system updates...
[2026-08-25 14:46:22,158.158 INFO    ] 200
[2026-08-25 14:46:22,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:22,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:22,217.217 INFO    ] No update needed
[2026-08-25 14:46:22,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 14:46:22,254.254 INFO    ] 200
[2026-08-25 14:46:22,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:22,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:46:22,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:22,354.354 INFO    ] No camera update needed
[2026-08-25 14:46:22,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:46:22,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:46:22,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:46:22,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:46:24,410.410 INFO    ] ================================================
[2026-08-25 14:46:24,425.425 INFO    ] Launching Daemon at Tue Aug 25 14:46:24 IST 2026
[2026-08-25 14:46:24,436.436 INFO    ] ================================================
[2026-08-25 14:46:25,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:46:25
[2026-08-25 14:46:25,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:46:25,978.978 INFO    ] Initializing speech engine...
[2026-08-25 14:46:25,987.987 INFO    ] 2026-08-25 14:46:25
[2026-08-25 14:46:26,237.237 INFO    ] 2026-08-25 14:46:26
[2026-08-25 14:46:26,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:46:26,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:46:26,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:46:26,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:46:26,733.733 INFO    ] time= 25/08/2026 14:46:26
[2026-08-25 14:46:26,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:46:26,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:46:26,933.933 INFO    ] No existing commands found in stream
[2026-08-25 14:46:31,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:46:31,961.961 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 14:46:34,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:46:34,197.197 INFO    ] Checking for system updates...
[2026-08-25 14:46:34,233.233 INFO    ] 200
[2026-08-25 14:46:34,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:34,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:34,290.290 INFO    ] No update needed
[2026-08-25 14:46:34,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 14:46:34,325.325 INFO    ] 200
[2026-08-25 14:46:34,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:34,368.368 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:46:34,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:34,414.414 INFO    ] No camera update needed
[2026-08-25 14:46:34,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:46:34,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:46:34,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:46:34,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:46:36,469.469 INFO    ] ================================================
[2026-08-25 14:46:36,484.484 INFO    ] Launching Daemon at Tue Aug 25 14:46:36 IST 2026
[2026-08-25 14:46:36,495.495 INFO    ] ================================================
[2026-08-25 14:46:37,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:46:37
[2026-08-25 14:46:37,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:46:38,034.034 INFO    ] Initializing speech engine...
[2026-08-25 14:46:38,043.043 INFO    ] 2026-08-25 14:46:38
[2026-08-25 14:46:38,292.292 INFO    ] 2026-08-25 14:46:38
[2026-08-25 14:46:38,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:46:38,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:46:38,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:46:38,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:46:38,665.665 INFO    ] time= 25/08/2026 14:46:38
[2026-08-25 14:46:38,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:46:38,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:46:38,816.816 INFO    ] No existing commands found in stream
[2026-08-25 14:46:43,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:46:43,844.844 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 14:46:47,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:46:47,311.311 INFO    ] Checking for system updates...
[2026-08-25 14:46:47,352.352 INFO    ] 200
[2026-08-25 14:46:47,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:47,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:47,419.419 INFO    ] No update needed
[2026-08-25 14:46:47,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 14:46:47,455.455 INFO    ] 200
[2026-08-25 14:46:47,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:47,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:46:47,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:46:47,550.550 INFO    ] No camera update needed
[2026-08-25 14:46:47,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:46:47,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:46:47,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:46:47,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:46:49,604.604 INFO    ] ================================================
[2026-08-25 14:46:49,619.619 INFO    ] Launching Daemon at Tue Aug 25 14:46:49 IST 2026
[2026-08-25 14:46:49,631.631 INFO    ] ================================================
[2026-08-25 14:46:50,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:46:50
[2026-08-25 14:46:50,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:46:51,069.069 INFO    ] Initializing speech engine...
[2026-08-25 14:46:51,074.074 INFO    ] 2026-08-25 14:46:51
[2026-08-25 14:46:51,324.324 INFO    ] 2026-08-25 14:46:51
[2026-08-25 14:46:51,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:46:51,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:46:51,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:46:51,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:46:51,704.704 INFO    ] time= 25/08/2026 14:46:51
[2026-08-25 14:46:51,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:46:51,756.756 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:46:51,904.904 INFO    ] No existing commands found in stream
[2026-08-25 14:46:56,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:46:56,918.918 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 14:46:57,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:46:57,448.448 INFO    ] Checking for system updates...
[2026-08-25 14:46:57,483.483 INFO    ] 200
[2026-08-25 14:46:57,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:57,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:46:57,556.556 INFO    ] No update needed
[2026-08-25 14:46:57,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 14:46:57,605.605 INFO    ] 200
[2026-08-25 14:46:57,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:46:57,654.654 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:46:57,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:46:57,729.729 INFO    ] No camera update needed
[2026-08-25 14:46:57,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:46:57,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:46:57,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:46:57,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:46:59,782.782 INFO    ] ================================================
[2026-08-25 14:46:59,798.798 INFO    ] Launching Daemon at Tue Aug 25 14:46:59 IST 2026
[2026-08-25 14:46:59,809.809 INFO    ] ================================================
[2026-08-25 14:47:00,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:47:00
[2026-08-25 14:47:00,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:47:01,272.272 INFO    ] Initializing speech engine...
[2026-08-25 14:47:01,281.281 INFO    ] 2026-08-25 14:47:01
[2026-08-25 14:47:01,682.682 INFO    ] 2026-08-25 14:47:01
[2026-08-25 14:47:01,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:47:02,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:47:02,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:47:02,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:47:02,210.210 INFO    ] time= 25/08/2026 14:47:02
[2026-08-25 14:47:02,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:47:02,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:47:02,434.434 INFO    ] No existing commands found in stream
[2026-08-25 14:47:07,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:47:07,473.473 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 14:47:08,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:47:08,301.301 INFO    ] Checking for system updates...
[2026-08-25 14:47:08,341.341 INFO    ] 200
[2026-08-25 14:47:08,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:08,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:08,411.411 INFO    ] No update needed
[2026-08-25 14:47:08,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 14:47:08,448.448 INFO    ] 200
[2026-08-25 14:47:08,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:08,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:47:08,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:08,541.541 INFO    ] No camera update needed
[2026-08-25 14:47:08,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:47:08,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:47:08,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:47:08,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:47:10,599.599 INFO    ] ================================================
[2026-08-25 14:47:10,614.614 INFO    ] Launching Daemon at Tue Aug 25 14:47:10 IST 2026
[2026-08-25 14:47:10,625.625 INFO    ] ================================================
[2026-08-25 14:47:11,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:47:11
[2026-08-25 14:47:11,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:47:12,238.238 INFO    ] Initializing speech engine...
[2026-08-25 14:47:12,252.252 INFO    ] 2026-08-25 14:47:12
[2026-08-25 14:47:12,562.562 INFO    ] 2026-08-25 14:47:12
[2026-08-25 14:47:12,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:47:12,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:47:12,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:47:13,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:47:13,085.085 INFO    ] time= 25/08/2026 14:47:13
[2026-08-25 14:47:13,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:47:13,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:47:13,264.264 INFO    ] No existing commands found in stream
[2026-08-25 14:47:18,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:47:18,303.303 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 14:47:19,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:47:19,880.880 INFO    ] Checking for system updates...
[2026-08-25 14:47:19,916.916 INFO    ] 200
[2026-08-25 14:47:19,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:19,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:19,975.975 INFO    ] No update needed
[2026-08-25 14:47:19,977.977 INFO    ] Checking for camera pi updates...
[2026-08-25 14:47:20,016.016 INFO    ] 200
[2026-08-25 14:47:20,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:20,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:47:20,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:20,132.132 INFO    ] No camera update needed
[2026-08-25 14:47:20,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:47:20,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:47:20,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:47:20,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:47:22,189.189 INFO    ] ================================================
[2026-08-25 14:47:22,205.205 INFO    ] Launching Daemon at Tue Aug 25 14:47:22 IST 2026
[2026-08-25 14:47:22,216.216 INFO    ] ================================================
[2026-08-25 14:47:22,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:47:22
[2026-08-25 14:47:23,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:47:23,823.823 INFO    ] Initializing speech engine...
[2026-08-25 14:47:23,835.835 INFO    ] 2026-08-25 14:47:23
[2026-08-25 14:47:24,120.120 INFO    ] 2026-08-25 14:47:24
[2026-08-25 14:47:24,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:47:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:47:24,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:47:24,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:47:24,667.667 INFO    ] time= 25/08/2026 14:47:24
[2026-08-25 14:47:24,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:47:24,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:47:24,835.835 INFO    ] No existing commands found in stream
[2026-08-25 14:47:29,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:47:29,870.870 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 14:47:34,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:47:34,351.351 INFO    ] Checking for system updates...
[2026-08-25 14:47:34,392.392 INFO    ] 200
[2026-08-25 14:47:34,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:34,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:34,462.462 INFO    ] No update needed
[2026-08-25 14:47:34,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 14:47:34,502.502 INFO    ] 200
[2026-08-25 14:47:34,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:34,553.553 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:47:34,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:34,624.624 INFO    ] No camera update needed
[2026-08-25 14:47:34,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:47:34,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:47:34,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:47:34,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:47:36,682.682 INFO    ] ================================================
[2026-08-25 14:47:36,698.698 INFO    ] Launching Daemon at Tue Aug 25 14:47:36 IST 2026
[2026-08-25 14:47:36,708.708 INFO    ] ================================================
[2026-08-25 14:47:37,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:47:37
[2026-08-25 14:47:37,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:47:38,184.184 INFO    ] Initializing speech engine...
[2026-08-25 14:47:38,198.198 INFO    ] 2026-08-25 14:47:38
[2026-08-25 14:47:38,508.508 INFO    ] 2026-08-25 14:47:38
[2026-08-25 14:47:38,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:47:38,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:47:38,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:47:38,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:47:38,957.957 INFO    ] time= 25/08/2026 14:47:38
[2026-08-25 14:47:39,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:47:39,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:47:39,171.171 INFO    ] No existing commands found in stream
[2026-08-25 14:47:44,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:47:44,191.191 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 14:47:48,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:47:48,089.089 INFO    ] Checking for system updates...
[2026-08-25 14:47:48,127.127 INFO    ] 200
[2026-08-25 14:47:48,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:48,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:48,193.193 INFO    ] No update needed
[2026-08-25 14:47:48,196.196 INFO    ] Checking for camera pi updates...
[2026-08-25 14:47:48,231.231 INFO    ] 200
[2026-08-25 14:47:48,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:48,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:47:48,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:48,423.423 INFO    ] No camera update needed
[2026-08-25 14:47:48,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:47:48,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:47:48,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:47:48,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:47:50,483.483 INFO    ] ================================================
[2026-08-25 14:47:50,500.500 INFO    ] Launching Daemon at Tue Aug 25 14:47:50 IST 2026
[2026-08-25 14:47:50,511.511 INFO    ] ================================================
[2026-08-25 14:47:51,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:47:51
[2026-08-25 14:47:51,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:47:51,921.921 INFO    ] Initializing speech engine...
[2026-08-25 14:47:51,940.940 INFO    ] 2026-08-25 14:47:51
[2026-08-25 14:47:52,192.192 INFO    ] 2026-08-25 14:47:52
[2026-08-25 14:47:52,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:47:52,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:47:52,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:47:52,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:47:52,648.648 INFO    ] time= 25/08/2026 14:47:52
[2026-08-25 14:47:52,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:47:52,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:47:52,920.920 INFO    ] No existing commands found in stream
[2026-08-25 14:47:57,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:47:57,938.938 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 14:47:59,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:47:59,848.848 INFO    ] Checking for system updates...
[2026-08-25 14:47:59,883.883 INFO    ] 200
[2026-08-25 14:47:59,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:47:59,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:47:59,945.945 INFO    ] No update needed
[2026-08-25 14:47:59,948.948 INFO    ] Checking for camera pi updates...
[2026-08-25 14:47:59,982.982 INFO    ] 200
[2026-08-25 14:47:59,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:00,025.025 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:48:00,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:48:00,102.102 INFO    ] No camera update needed
[2026-08-25 14:48:00,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:48:00,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:48:00,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:48:00,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:48:02,160.160 INFO    ] ================================================
[2026-08-25 14:48:02,178.178 INFO    ] Launching Daemon at Tue Aug 25 14:48:02 IST 2026
[2026-08-25 14:48:02,190.190 INFO    ] ================================================
[2026-08-25 14:48:02,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:48:02
[2026-08-25 14:48:03,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:48:03,755.755 INFO    ] Initializing speech engine...
[2026-08-25 14:48:03,767.767 INFO    ] 2026-08-25 14:48:03
[2026-08-25 14:48:04,017.017 INFO    ] 2026-08-25 14:48:04
[2026-08-25 14:48:04,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:48:04,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:48:04,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:48:04,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:48:04,461.461 INFO    ] time= 25/08/2026 14:48:04
[2026-08-25 14:48:04,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:48:04,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:48:04,713.713 INFO    ] No existing commands found in stream
[2026-08-25 14:48:09,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:48:09,746.746 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 14:48:11,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:48:11,479.479 INFO    ] Checking for system updates...
[2026-08-25 14:48:11,515.515 INFO    ] 200
[2026-08-25 14:48:11,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:11,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:48:11,580.580 INFO    ] No update needed
[2026-08-25 14:48:11,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 14:48:11,616.616 INFO    ] 200
[2026-08-25 14:48:11,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:11,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:48:11,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:48:11,708.708 INFO    ] No camera update needed
[2026-08-25 14:48:11,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:48:11,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:48:11,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:48:11,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:48:13,765.765 INFO    ] ================================================
[2026-08-25 14:48:13,781.781 INFO    ] Launching Daemon at Tue Aug 25 14:48:13 IST 2026
[2026-08-25 14:48:13,792.792 INFO    ] ================================================
[2026-08-25 14:48:14,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:48:14
[2026-08-25 14:48:14,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:48:15,186.186 INFO    ] Initializing speech engine...
[2026-08-25 14:48:15,194.194 INFO    ] 2026-08-25 14:48:15
[2026-08-25 14:48:15,467.467 INFO    ] 2026-08-25 14:48:15
[2026-08-25 14:48:15,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:48:15,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:48:15,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:48:15,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:48:15,940.940 INFO    ] time= 25/08/2026 14:48:15
[2026-08-25 14:48:15,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:48:16,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:48:16,170.170 INFO    ] No existing commands found in stream
[2026-08-25 14:48:21,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:48:21,198.198 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 14:48:22,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:48:22,468.468 INFO    ] Checking for system updates...
[2026-08-25 14:48:22,503.503 INFO    ] 200
[2026-08-25 14:48:22,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:22,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:48:22,561.561 INFO    ] No update needed
[2026-08-25 14:48:22,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 14:48:22,597.597 INFO    ] 200
[2026-08-25 14:48:22,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:22,640.640 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:48:22,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:48:22,707.707 INFO    ] No camera update needed
[2026-08-25 14:48:22,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:48:22,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:48:22,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:48:22,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:48:24,764.764 INFO    ] ================================================
[2026-08-25 14:48:24,779.779 INFO    ] Launching Daemon at Tue Aug 25 14:48:24 IST 2026
[2026-08-25 14:48:24,789.789 INFO    ] ================================================
[2026-08-25 14:48:25,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:48:25
[2026-08-25 14:48:25,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:48:26,249.249 INFO    ] Initializing speech engine...
[2026-08-25 14:48:26,258.258 INFO    ] 2026-08-25 14:48:26
[2026-08-25 14:48:26,517.517 INFO    ] 2026-08-25 14:48:26
[2026-08-25 14:48:26,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:48:26,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:48:26,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:48:26,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:48:26,978.978 INFO    ] time= 25/08/2026 14:48:26
[2026-08-25 14:48:27,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:48:27,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:48:27,215.215 INFO    ] No existing commands found in stream
[2026-08-25 14:48:32,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:48:32,232.232 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 14:48:33,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:48:33,172.172 INFO    ] Checking for system updates...
[2026-08-25 14:48:33,215.215 INFO    ] 200
[2026-08-25 14:48:33,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:33,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:48:33,280.280 INFO    ] No update needed
[2026-08-25 14:48:33,283.283 INFO    ] Checking for camera pi updates...
[2026-08-25 14:48:33,317.317 INFO    ] 200
[2026-08-25 14:48:33,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:33,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:48:33,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:48:33,420.420 INFO    ] No camera update needed
[2026-08-25 14:48:33,423.423 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:48:33,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:48:33,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:48:33,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:48:35,478.478 INFO    ] ================================================
[2026-08-25 14:48:35,494.494 INFO    ] Launching Daemon at Tue Aug 25 14:48:35 IST 2026
[2026-08-25 14:48:35,505.505 INFO    ] ================================================
[2026-08-25 14:48:36,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:48:36
[2026-08-25 14:48:36,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:48:37,012.012 INFO    ] Initializing speech engine...
[2026-08-25 14:48:37,018.018 INFO    ] 2026-08-25 14:48:37
[2026-08-25 14:48:37,276.276 INFO    ] 2026-08-25 14:48:37
[2026-08-25 14:48:37,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:48:37,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:48:37,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:48:37,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:48:37,746.746 INFO    ] time= 25/08/2026 14:48:37
[2026-08-25 14:48:37,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:48:37,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:48:37,967.967 INFO    ] No existing commands found in stream
[2026-08-25 14:48:42,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:48:42,981.981 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 14:48:43,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:48:43,724.724 INFO    ] Checking for system updates...
[2026-08-25 14:48:43,770.770 INFO    ] 200
[2026-08-25 14:48:43,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:43,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:48:43,841.841 INFO    ] No update needed
[2026-08-25 14:48:43,843.843 INFO    ] Checking for camera pi updates...
[2026-08-25 14:48:43,884.884 INFO    ] 200
[2026-08-25 14:48:43,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:43,931.931 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:48:43,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:48:44,000.000 INFO    ] No camera update needed
[2026-08-25 14:48:44,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:48:44,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:48:44,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:48:44,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:48:46,058.058 INFO    ] ================================================
[2026-08-25 14:48:46,074.074 INFO    ] Launching Daemon at Tue Aug 25 14:48:46 IST 2026
[2026-08-25 14:48:46,085.085 INFO    ] ================================================
[2026-08-25 14:48:46,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:48:46
[2026-08-25 14:48:47,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:48:47,712.712 INFO    ] Initializing speech engine...
[2026-08-25 14:48:47,725.725 INFO    ] 2026-08-25 14:48:47
[2026-08-25 14:48:47,979.979 INFO    ] 2026-08-25 14:48:47
[2026-08-25 14:48:48,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:48:48,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:48:48,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:48:48,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:48:48,418.418 INFO    ] time= 25/08/2026 14:48:48
[2026-08-25 14:48:48,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:48:48,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:48:48,552.552 INFO    ] No existing commands found in stream
[2026-08-25 14:48:53,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:48:53,580.580 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 14:48:56,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:48:56,475.475 INFO    ] Checking for system updates...
[2026-08-25 14:48:56,522.522 INFO    ] 200
[2026-08-25 14:48:56,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:56,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:48:56,580.580 INFO    ] No update needed
[2026-08-25 14:48:56,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 14:48:56,619.619 INFO    ] 200
[2026-08-25 14:48:56,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:48:56,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:48:56,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:48:56,727.727 INFO    ] No camera update needed
[2026-08-25 14:48:56,729.729 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:48:56,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:48:56,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:48:56,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:48:58,783.783 INFO    ] ================================================
[2026-08-25 14:48:58,799.799 INFO    ] Launching Daemon at Tue Aug 25 14:48:58 IST 2026
[2026-08-25 14:48:58,810.810 INFO    ] ================================================
[2026-08-25 14:48:59,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:48:59
[2026-08-25 14:48:59,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:49:00,223.223 INFO    ] Initializing speech engine...
[2026-08-25 14:49:00,241.241 INFO    ] 2026-08-25 14:49:00
[2026-08-25 14:49:00,524.524 INFO    ] 2026-08-25 14:49:00
[2026-08-25 14:49:00,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:49:00,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:49:00,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:49:00,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:49:00,903.903 INFO    ] time= 25/08/2026 14:49:00
[2026-08-25 14:49:00,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:49:00,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:49:01,027.027 INFO    ] No existing commands found in stream
[2026-08-25 14:49:06,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:49:06,042.042 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 14:49:09,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:49:09,584.584 INFO    ] Checking for system updates...
[2026-08-25 14:49:09,619.619 INFO    ] 200
[2026-08-25 14:49:09,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:09,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:49:09,678.678 INFO    ] No update needed
[2026-08-25 14:49:09,681.681 INFO    ] Checking for camera pi updates...
[2026-08-25 14:49:09,719.719 INFO    ] 200
[2026-08-25 14:49:09,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:09,768.768 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:49:09,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:49:09,818.818 INFO    ] No camera update needed
[2026-08-25 14:49:09,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:49:09,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:49:09,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:49:09,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:49:11,876.876 INFO    ] ================================================
[2026-08-25 14:49:11,891.891 INFO    ] Launching Daemon at Tue Aug 25 14:49:11 IST 2026
[2026-08-25 14:49:11,902.902 INFO    ] ================================================
[2026-08-25 14:49:12,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:49:12
[2026-08-25 14:49:13,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:49:13,313.313 INFO    ] Initializing speech engine...
[2026-08-25 14:49:13,326.326 INFO    ] 2026-08-25 14:49:13
[2026-08-25 14:49:13,611.611 INFO    ] 2026-08-25 14:49:13
[2026-08-25 14:49:13,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:49:13,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:49:13,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:49:14,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:49:14,029.029 INFO    ] time= 25/08/2026 14:49:14
[2026-08-25 14:49:14,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:49:14,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:49:14,215.215 INFO    ] No existing commands found in stream
[2026-08-25 14:49:19,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:49:19,248.248 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 14:49:22,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:49:22,999.999 INFO    ] Checking for system updates...
[2026-08-25 14:49:23,035.035 INFO    ] 200
[2026-08-25 14:49:23,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:23,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:49:23,093.093 INFO    ] No update needed
[2026-08-25 14:49:23,095.095 INFO    ] Checking for camera pi updates...
[2026-08-25 14:49:23,129.129 INFO    ] 200
[2026-08-25 14:49:23,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:23,188.188 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:49:23,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:49:23,237.237 INFO    ] No camera update needed
[2026-08-25 14:49:23,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:49:23,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:49:23,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:49:23,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:49:25,297.297 INFO    ] ================================================
[2026-08-25 14:49:25,312.312 INFO    ] Launching Daemon at Tue Aug 25 14:49:25 IST 2026
[2026-08-25 14:49:25,322.322 INFO    ] ================================================
[2026-08-25 14:49:25,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:49:25
[2026-08-25 14:49:26,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:49:26,727.727 INFO    ] Initializing speech engine...
[2026-08-25 14:49:26,743.743 INFO    ] 2026-08-25 14:49:26
[2026-08-25 14:49:27,029.029 INFO    ] 2026-08-25 14:49:26
[2026-08-25 14:49:27,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:49:27,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:49:27,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:49:27,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:49:27,445.445 INFO    ] time= 25/08/2026 14:49:27
[2026-08-25 14:49:27,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:49:27,473.473 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:49:27,615.615 INFO    ] No existing commands found in stream
[2026-08-25 14:49:32,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:49:32,638.638 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 14:49:33,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:49:33,849.849 INFO    ] Checking for system updates...
[2026-08-25 14:49:33,885.885 INFO    ] 200
[2026-08-25 14:49:33,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:33,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:49:33,948.948 INFO    ] No update needed
[2026-08-25 14:49:33,950.950 INFO    ] Checking for camera pi updates...
[2026-08-25 14:49:33,987.987 INFO    ] 200
[2026-08-25 14:49:33,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:34,029.029 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:49:34,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:49:34,076.076 INFO    ] No camera update needed
[2026-08-25 14:49:34,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:49:34,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:49:34,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:49:34,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:49:36,131.131 INFO    ] ================================================
[2026-08-25 14:49:36,147.147 INFO    ] Launching Daemon at Tue Aug 25 14:49:36 IST 2026
[2026-08-25 14:49:36,158.158 INFO    ] ================================================
[2026-08-25 14:49:36,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:49:36
[2026-08-25 14:49:37,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:49:37,635.635 INFO    ] Initializing speech engine...
[2026-08-25 14:49:37,645.645 INFO    ] 2026-08-25 14:49:37
[2026-08-25 14:49:37,908.908 INFO    ] 2026-08-25 14:49:37
[2026-08-25 14:49:37,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:49:38,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:49:38,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:49:38,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:49:38,380.380 INFO    ] time= 25/08/2026 14:49:38
[2026-08-25 14:49:38,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:49:38,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:49:38,607.607 INFO    ] No existing commands found in stream
[2026-08-25 14:49:43,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:49:43,636.636 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 14:49:45,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:49:45,269.269 INFO    ] Checking for system updates...
[2026-08-25 14:49:45,304.304 INFO    ] 200
[2026-08-25 14:49:45,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:45,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:49:45,362.362 INFO    ] No update needed
[2026-08-25 14:49:45,364.364 INFO    ] Checking for camera pi updates...
[2026-08-25 14:49:45,399.399 INFO    ] 200
[2026-08-25 14:49:45,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:45,446.446 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:49:45,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:49:45,494.494 INFO    ] No camera update needed
[2026-08-25 14:49:45,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:49:45,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:49:45,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:49:45,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:49:47,549.549 INFO    ] ================================================
[2026-08-25 14:49:47,564.564 INFO    ] Launching Daemon at Tue Aug 25 14:49:47 IST 2026
[2026-08-25 14:49:47,575.575 INFO    ] ================================================
[2026-08-25 14:49:48,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:49:48
[2026-08-25 14:49:48,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:49:49,021.021 INFO    ] Initializing speech engine...
[2026-08-25 14:49:49,029.029 INFO    ] 2026-08-25 14:49:49
[2026-08-25 14:49:49,270.270 INFO    ] 2026-08-25 14:49:49
[2026-08-25 14:49:49,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:49:49,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:49:49,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:49:49,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:49:49,640.640 INFO    ] time= 25/08/2026 14:49:49
[2026-08-25 14:49:49,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:49:49,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:49:49,833.833 INFO    ] No existing commands found in stream
[2026-08-25 14:49:54,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:49:54,846.846 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 14:49:57,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:49:57,229.229 INFO    ] Checking for system updates...
[2026-08-25 14:49:57,265.265 INFO    ] 200
[2026-08-25 14:49:57,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:57,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:49:57,321.321 INFO    ] No update needed
[2026-08-25 14:49:57,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 14:49:57,356.356 INFO    ] 200
[2026-08-25 14:49:57,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:49:57,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:49:57,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:49:57,551.551 INFO    ] No camera update needed
[2026-08-25 14:49:57,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:49:57,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:49:57,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:49:57,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:49:59,607.607 INFO    ] ================================================
[2026-08-25 14:49:59,622.622 INFO    ] Launching Daemon at Tue Aug 25 14:49:59 IST 2026
[2026-08-25 14:49:59,633.633 INFO    ] ================================================
[2026-08-25 14:50:00,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:50:00
[2026-08-25 14:50:00,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:50:01,159.159 INFO    ] Initializing speech engine...
[2026-08-25 14:50:01,168.168 INFO    ] 2026-08-25 14:50:01
[2026-08-25 14:50:01,440.440 INFO    ] 2026-08-25 14:50:01
[2026-08-25 14:50:01,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:50:01,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:50:01,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:50:01,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:50:01,913.913 INFO    ] time= 25/08/2026 14:50:01
[2026-08-25 14:50:01,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:50:01,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:50:01,989.989 INFO    ] No existing commands found in stream
[2026-08-25 14:50:07,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:50:07,006.006 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 14:50:09,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:50:09,319.319 INFO    ] Checking for system updates...
[2026-08-25 14:50:09,355.355 INFO    ] 200
[2026-08-25 14:50:09,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:09,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:50:09,415.415 INFO    ] No update needed
[2026-08-25 14:50:09,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 14:50:09,451.451 INFO    ] 200
[2026-08-25 14:50:09,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:09,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:50:09,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:50:09,556.556 INFO    ] No camera update needed
[2026-08-25 14:50:09,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:50:09,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:50:09,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:50:09,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:50:11,610.610 INFO    ] ================================================
[2026-08-25 14:50:11,625.625 INFO    ] Launching Daemon at Tue Aug 25 14:50:11 IST 2026
[2026-08-25 14:50:11,636.636 INFO    ] ================================================
[2026-08-25 14:50:12,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:50:12
[2026-08-25 14:50:12,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:50:13,098.098 INFO    ] Initializing speech engine...
[2026-08-25 14:50:13,105.105 INFO    ] 2026-08-25 14:50:13
[2026-08-25 14:50:13,381.381 INFO    ] 2026-08-25 14:50:13
[2026-08-25 14:50:13,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:50:13,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:50:13,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:50:13,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:50:13,838.838 INFO    ] time= 25/08/2026 14:50:13
[2026-08-25 14:50:13,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:50:13,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:50:14,046.046 INFO    ] No existing commands found in stream
[2026-08-25 14:50:19,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:50:19,074.074 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 14:50:22,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:50:22,130.130 INFO    ] Checking for system updates...
[2026-08-25 14:50:22,166.166 INFO    ] 200
[2026-08-25 14:50:22,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:22,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:50:22,229.229 INFO    ] No update needed
[2026-08-25 14:50:22,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 14:50:22,265.265 INFO    ] 200
[2026-08-25 14:50:22,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:22,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:50:22,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:50:22,360.360 INFO    ] No camera update needed
[2026-08-25 14:50:22,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:50:22,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:50:22,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:50:22,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:50:24,414.414 INFO    ] ================================================
[2026-08-25 14:50:24,430.430 INFO    ] Launching Daemon at Tue Aug 25 14:50:24 IST 2026
[2026-08-25 14:50:24,440.440 INFO    ] ================================================
[2026-08-25 14:50:25,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:50:25
[2026-08-25 14:50:25,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:50:25,850.850 INFO    ] Initializing speech engine...
[2026-08-25 14:50:25,869.869 INFO    ] 2026-08-25 14:50:25
[2026-08-25 14:50:26,120.120 INFO    ] 2026-08-25 14:50:26
[2026-08-25 14:50:26,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:50:26,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:50:26,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:50:26,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:50:26,616.616 INFO    ] time= 25/08/2026 14:50:26
[2026-08-25 14:50:26,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:50:26,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:50:26,827.827 INFO    ] No existing commands found in stream
[2026-08-25 14:50:31,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:50:31,857.857 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 14:50:36,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:50:36,111.111 INFO    ] Checking for system updates...
[2026-08-25 14:50:36,149.149 INFO    ] 200
[2026-08-25 14:50:36,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:36,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:50:36,210.210 INFO    ] No update needed
[2026-08-25 14:50:36,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 14:50:36,245.245 INFO    ] 200
[2026-08-25 14:50:36,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:36,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:50:36,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:50:36,337.337 INFO    ] No camera update needed
[2026-08-25 14:50:36,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:50:36,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:50:36,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:50:36,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:50:38,393.393 INFO    ] ================================================
[2026-08-25 14:50:38,408.408 INFO    ] Launching Daemon at Tue Aug 25 14:50:38 IST 2026
[2026-08-25 14:50:38,419.419 INFO    ] ================================================
[2026-08-25 14:50:39,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:50:39
[2026-08-25 14:50:39,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:50:39,963.963 INFO    ] Initializing speech engine...
[2026-08-25 14:50:39,973.973 INFO    ] 2026-08-25 14:50:39
[2026-08-25 14:50:40,240.240 INFO    ] 2026-08-25 14:50:40
[2026-08-25 14:50:40,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:50:40,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:50:40,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:50:40,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:50:40,720.720 INFO    ] time= 25/08/2026 14:50:40
[2026-08-25 14:50:40,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:50:40,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:50:40,936.936 INFO    ] No existing commands found in stream
[2026-08-25 14:50:45,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:50:45,968.968 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 14:50:50,035.035 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:50:50,037.037 INFO    ] Checking for system updates...
[2026-08-25 14:50:50,073.073 INFO    ] 200
[2026-08-25 14:50:50,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:50,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:50:50,132.132 INFO    ] No update needed
[2026-08-25 14:50:50,135.135 INFO    ] Checking for camera pi updates...
[2026-08-25 14:50:50,170.170 INFO    ] 200
[2026-08-25 14:50:50,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:50:50,213.213 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:50:50,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:50:50,266.266 INFO    ] No camera update needed
[2026-08-25 14:50:50,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:50:50,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:50:50,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:50:50,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:50:52,321.321 INFO    ] ================================================
[2026-08-25 14:50:52,335.335 INFO    ] Launching Daemon at Tue Aug 25 14:50:52 IST 2026
[2026-08-25 14:50:52,346.346 INFO    ] ================================================
[2026-08-25 14:50:52,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:50:52
[2026-08-25 14:50:53,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:50:53,790.790 INFO    ] Initializing speech engine...
[2026-08-25 14:50:53,806.806 INFO    ] 2026-08-25 14:50:53
[2026-08-25 14:50:54,085.085 INFO    ] 2026-08-25 14:50:54
[2026-08-25 14:50:54,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:50:54,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:50:54,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:50:54,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:50:54,571.571 INFO    ] time= 25/08/2026 14:50:54
[2026-08-25 14:50:54,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:50:54,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:50:54,760.760 INFO    ] No existing commands found in stream
[2026-08-25 14:50:59,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:50:59,774.774 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 14:51:00,547.547 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:51:00,549.549 INFO    ] Checking for system updates...
[2026-08-25 14:51:00,587.587 INFO    ] 200
[2026-08-25 14:51:00,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:00,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:51:00,645.645 INFO    ] No update needed
[2026-08-25 14:51:00,648.648 INFO    ] Checking for camera pi updates...
[2026-08-25 14:51:00,684.684 INFO    ] 200
[2026-08-25 14:51:00,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:00,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:51:00,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:51:00,775.775 INFO    ] No camera update needed
[2026-08-25 14:51:00,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:51:00,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:51:00,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:51:00,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:51:02,831.831 INFO    ] ================================================
[2026-08-25 14:51:02,846.846 INFO    ] Launching Daemon at Tue Aug 25 14:51:02 IST 2026
[2026-08-25 14:51:02,857.857 INFO    ] ================================================
[2026-08-25 14:51:03,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:51:03
[2026-08-25 14:51:04,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:51:04,278.278 INFO    ] Initializing speech engine...
[2026-08-25 14:51:04,293.293 INFO    ] 2026-08-25 14:51:04
[2026-08-25 14:51:04,570.570 INFO    ] 2026-08-25 14:51:04
[2026-08-25 14:51:04,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:51:04,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:51:04,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:51:05,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:51:05,073.073 INFO    ] time= 25/08/2026 14:51:05
[2026-08-25 14:51:05,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:51:05,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:51:05,315.315 INFO    ] No existing commands found in stream
[2026-08-25 14:51:10,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:51:10,345.345 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 14:51:13,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:51:13,660.660 INFO    ] Checking for system updates...
[2026-08-25 14:51:13,698.698 INFO    ] 200
[2026-08-25 14:51:13,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:13,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:51:13,755.755 INFO    ] No update needed
[2026-08-25 14:51:13,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 14:51:13,790.790 INFO    ] 200
[2026-08-25 14:51:13,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:13,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:51:13,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:51:13,879.879 INFO    ] No camera update needed
[2026-08-25 14:51:13,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:51:13,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:51:13,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:51:13,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:51:15,934.934 INFO    ] ================================================
[2026-08-25 14:51:15,949.949 INFO    ] Launching Daemon at Tue Aug 25 14:51:15 IST 2026
[2026-08-25 14:51:15,960.960 INFO    ] ================================================
[2026-08-25 14:51:16,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:51:16
[2026-08-25 14:51:17,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:51:17,379.379 INFO    ] Initializing speech engine...
[2026-08-25 14:51:17,389.389 INFO    ] 2026-08-25 14:51:17
[2026-08-25 14:51:17,641.641 INFO    ] 2026-08-25 14:51:17
[2026-08-25 14:51:17,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:51:17,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:51:17,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:51:18,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:51:18,137.137 INFO    ] time= 25/08/2026 14:51:18
[2026-08-25 14:51:18,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:51:18,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:51:18,350.350 INFO    ] No existing commands found in stream
[2026-08-25 14:51:23,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:51:23,367.367 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 14:51:27,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:51:27,467.467 INFO    ] Checking for system updates...
[2026-08-25 14:51:27,505.505 INFO    ] 200
[2026-08-25 14:51:27,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:27,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:51:27,569.569 INFO    ] No update needed
[2026-08-25 14:51:27,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 14:51:27,605.605 INFO    ] 200
[2026-08-25 14:51:27,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:27,649.649 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:51:27,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:51:27,709.709 INFO    ] No camera update needed
[2026-08-25 14:51:27,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:51:27,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:51:27,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:51:27,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:51:29,767.767 INFO    ] ================================================
[2026-08-25 14:51:29,782.782 INFO    ] Launching Daemon at Tue Aug 25 14:51:29 IST 2026
[2026-08-25 14:51:29,793.793 INFO    ] ================================================
[2026-08-25 14:51:30,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:51:30
[2026-08-25 14:51:30,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:51:31,251.251 INFO    ] Initializing speech engine...
[2026-08-25 14:51:31,255.255 INFO    ] 2026-08-25 14:51:31
[2026-08-25 14:51:31,549.549 INFO    ] 2026-08-25 14:51:31
[2026-08-25 14:51:31,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:51:31,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:51:31,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:51:32,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:51:32,064.064 INFO    ] time= 25/08/2026 14:51:32
[2026-08-25 14:51:32,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:51:32,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:51:32,205.205 INFO    ] No existing commands found in stream
[2026-08-25 14:51:37,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:51:37,220.220 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 14:51:40,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:51:40,911.911 INFO    ] Checking for system updates...
[2026-08-25 14:51:40,971.971 INFO    ] 200
[2026-08-25 14:51:40,974.974 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:40,977.977 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 14:51:40,980.980 INFO    ] Checking for camera pi updates...
[2026-08-25 14:51:41,019.019 INFO    ] 200
[2026-08-25 14:51:41,021.021 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:41,024.024 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 14:51:41,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:51:41,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:51:41,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:51:41,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:51:43,087.087 INFO    ] ================================================
[2026-08-25 14:51:43,103.103 INFO    ] Launching Daemon at Tue Aug 25 14:51:43 IST 2026
[2026-08-25 14:51:43,116.116 INFO    ] ================================================
[2026-08-25 14:51:43,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:51:43
[2026-08-25 14:51:44,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:51:44,575.575 INFO    ] Initializing speech engine...
[2026-08-25 14:51:44,585.585 INFO    ] 2026-08-25 14:51:44
[2026-08-25 14:51:44,848.848 INFO    ] 2026-08-25 14:51:44
[2026-08-25 14:51:44,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:51:45,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:51:45,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:51:45,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:51:45,338.338 INFO    ] time= 25/08/2026 14:51:45
[2026-08-25 14:51:45,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:51:45,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:51:45,552.552 INFO    ] No existing commands found in stream
[2026-08-25 14:51:50,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:51:50,585.585 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 14:51:52,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:51:52,707.707 INFO    ] Checking for system updates...
[2026-08-25 14:51:52,748.748 INFO    ] 200
[2026-08-25 14:51:52,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:52,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:51:52,812.812 INFO    ] No update needed
[2026-08-25 14:51:52,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 14:51:52,849.849 INFO    ] 200
[2026-08-25 14:51:52,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:51:52,892.892 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:51:52,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:51:52,949.949 INFO    ] No camera update needed
[2026-08-25 14:51:52,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:51:52,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:51:52,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:51:52,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:51:55,006.006 INFO    ] ================================================
[2026-08-25 14:51:55,021.021 INFO    ] Launching Daemon at Tue Aug 25 14:51:55 IST 2026
[2026-08-25 14:51:55,033.033 INFO    ] ================================================
[2026-08-25 14:51:55,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:51:55
[2026-08-25 14:51:56,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:51:56,665.665 INFO    ] Initializing speech engine...
[2026-08-25 14:51:56,678.678 INFO    ] 2026-08-25 14:51:56
[2026-08-25 14:51:56,992.992 INFO    ] 2026-08-25 14:51:56
[2026-08-25 14:51:57,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:51:57,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:51:57,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:51:57,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:51:57,517.517 INFO    ] time= 25/08/2026 14:51:57
[2026-08-25 14:51:57,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:51:57,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:51:57,685.685 INFO    ] No existing commands found in stream
[2026-08-25 14:52:02,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:52:02,712.712 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 14:52:04,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:52:04,373.373 INFO    ] Checking for system updates...
[2026-08-25 14:52:04,409.409 INFO    ] 200
[2026-08-25 14:52:04,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:04,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:04,468.468 INFO    ] No update needed
[2026-08-25 14:52:04,471.471 INFO    ] Checking for camera pi updates...
[2026-08-25 14:52:04,505.505 INFO    ] 200
[2026-08-25 14:52:04,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:04,553.553 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:52:04,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:04,610.610 INFO    ] No camera update needed
[2026-08-25 14:52:04,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:52:04,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:52:04,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:52:04,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:52:06,667.667 INFO    ] ================================================
[2026-08-25 14:52:06,682.682 INFO    ] Launching Daemon at Tue Aug 25 14:52:06 IST 2026
[2026-08-25 14:52:06,693.693 INFO    ] ================================================
[2026-08-25 14:52:07,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:52:07
[2026-08-25 14:52:07,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:52:08,162.162 INFO    ] Initializing speech engine...
[2026-08-25 14:52:08,173.173 INFO    ] 2026-08-25 14:52:08
[2026-08-25 14:52:08,421.421 INFO    ] 2026-08-25 14:52:08
[2026-08-25 14:52:08,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:52:08,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:52:08,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:52:08,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:52:08,869.869 INFO    ] time= 25/08/2026 14:52:08
[2026-08-25 14:52:08,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:52:08,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:52:08,990.990 INFO    ] No existing commands found in stream
[2026-08-25 14:52:14,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:52:14,005.005 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 14:52:16,097.097 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:52:16,100.100 INFO    ] Checking for system updates...
[2026-08-25 14:52:16,135.135 INFO    ] 200
[2026-08-25 14:52:16,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:16,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:16,192.192 INFO    ] No update needed
[2026-08-25 14:52:16,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 14:52:16,232.232 INFO    ] 200
[2026-08-25 14:52:16,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:16,280.280 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:52:16,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:16,339.339 INFO    ] No camera update needed
[2026-08-25 14:52:16,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:52:16,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:52:16,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:52:16,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:52:18,397.397 INFO    ] ================================================
[2026-08-25 14:52:18,413.413 INFO    ] Launching Daemon at Tue Aug 25 14:52:18 IST 2026
[2026-08-25 14:52:18,423.423 INFO    ] ================================================
[2026-08-25 14:52:19,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:52:19
[2026-08-25 14:52:19,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:52:19,879.879 INFO    ] Initializing speech engine...
[2026-08-25 14:52:19,888.888 INFO    ] 2026-08-25 14:52:19
[2026-08-25 14:52:20,137.137 INFO    ] 2026-08-25 14:52:20
[2026-08-25 14:52:20,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:52:20,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:52:20,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:52:20,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:52:20,520.520 INFO    ] time= 25/08/2026 14:52:20
[2026-08-25 14:52:20,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:52:20,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:52:20,703.703 INFO    ] No existing commands found in stream
[2026-08-25 14:52:25,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:52:25,730.730 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 14:52:29,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:52:29,379.379 INFO    ] Checking for system updates...
[2026-08-25 14:52:29,415.415 INFO    ] 200
[2026-08-25 14:52:29,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:29,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:29,475.475 INFO    ] No update needed
[2026-08-25 14:52:29,478.478 INFO    ] Checking for camera pi updates...
[2026-08-25 14:52:29,512.512 INFO    ] 200
[2026-08-25 14:52:29,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:29,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:52:29,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:29,614.614 INFO    ] No camera update needed
[2026-08-25 14:52:29,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:52:29,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:52:29,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:52:29,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:52:31,668.668 INFO    ] ================================================
[2026-08-25 14:52:31,683.683 INFO    ] Launching Daemon at Tue Aug 25 14:52:31 IST 2026
[2026-08-25 14:52:31,694.694 INFO    ] ================================================
[2026-08-25 14:52:32,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:52:32
[2026-08-25 14:52:33,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:52:33,354.354 INFO    ] Initializing speech engine...
[2026-08-25 14:52:33,362.362 INFO    ] 2026-08-25 14:52:33
[2026-08-25 14:52:33,628.628 INFO    ] 2026-08-25 14:52:33
[2026-08-25 14:52:33,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:52:33,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:52:33,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:52:34,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:52:34,142.142 INFO    ] time= 25/08/2026 14:52:34
[2026-08-25 14:52:34,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:52:34,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:52:34,334.334 INFO    ] No existing commands found in stream
[2026-08-25 14:52:39,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:52:39,359.359 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 14:52:42,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:52:42,580.580 INFO    ] Checking for system updates...
[2026-08-25 14:52:42,616.616 INFO    ] 200
[2026-08-25 14:52:42,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:42,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:42,674.674 INFO    ] No update needed
[2026-08-25 14:52:42,677.677 INFO    ] Checking for camera pi updates...
[2026-08-25 14:52:42,710.710 INFO    ] 200
[2026-08-25 14:52:42,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:42,758.758 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:52:42,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:52:42,804.804 INFO    ] No camera update needed
[2026-08-25 14:52:42,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:52:42,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:52:42,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:52:42,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:52:44,860.860 INFO    ] ================================================
[2026-08-25 14:52:44,875.875 INFO    ] Launching Daemon at Tue Aug 25 14:52:44 IST 2026
[2026-08-25 14:52:44,886.886 INFO    ] ================================================
[2026-08-25 14:52:45,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:52:45
[2026-08-25 14:52:46,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:52:46,429.429 INFO    ] Initializing speech engine...
[2026-08-25 14:52:46,447.447 INFO    ] 2026-08-25 14:52:46
[2026-08-25 14:52:46,698.698 INFO    ] 2026-08-25 14:52:46
[2026-08-25 14:52:46,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:52:46,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:52:46,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:52:47,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:52:47,174.174 INFO    ] time= 25/08/2026 14:52:47
[2026-08-25 14:52:47,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:52:47,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:52:47,393.393 INFO    ] No existing commands found in stream
[2026-08-25 14:52:52,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:52:52,418.418 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 14:52:54,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:52:54,982.982 INFO    ] Checking for system updates...
[2026-08-25 14:52:55,017.017 INFO    ] 200
[2026-08-25 14:52:55,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:55,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:52:55,084.084 INFO    ] No update needed
[2026-08-25 14:52:55,087.087 INFO    ] Checking for camera pi updates...
[2026-08-25 14:52:55,125.125 INFO    ] 200
[2026-08-25 14:52:55,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:52:55,174.174 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:52:55,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:52:55,229.229 INFO    ] No camera update needed
[2026-08-25 14:52:55,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:52:55,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:52:55,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:52:55,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:52:57,287.287 INFO    ] ================================================
[2026-08-25 14:52:57,303.303 INFO    ] Launching Daemon at Tue Aug 25 14:52:57 IST 2026
[2026-08-25 14:52:57,313.313 INFO    ] ================================================
[2026-08-25 14:52:57,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:52:57
[2026-08-25 14:52:58,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:52:58,718.718 INFO    ] Initializing speech engine...
[2026-08-25 14:52:58,737.737 INFO    ] 2026-08-25 14:52:58
[2026-08-25 14:52:58,982.982 INFO    ] 2026-08-25 14:52:58
[2026-08-25 14:52:59,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:52:59,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:52:59,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:52:59,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:52:59,475.475 INFO    ] time= 25/08/2026 14:52:59
[2026-08-25 14:52:59,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:52:59,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:52:59,682.682 INFO    ] No existing commands found in stream
[2026-08-25 14:53:04,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:53:04,702.702 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 14:53:12,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:53:12,057.057 INFO    ] Checking for system updates...
[2026-08-25 14:53:12,096.096 INFO    ] 200
[2026-08-25 14:53:12,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:12,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:53:12,152.152 INFO    ] No update needed
[2026-08-25 14:53:12,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 14:53:12,192.192 INFO    ] 200
[2026-08-25 14:53:12,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:12,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:53:12,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:53:12,292.292 INFO    ] No camera update needed
[2026-08-25 14:53:12,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:53:12,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:53:12,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:53:12,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:53:14,351.351 INFO    ] ================================================
[2026-08-25 14:53:14,369.369 INFO    ] Launching Daemon at Tue Aug 25 14:53:14 IST 2026
[2026-08-25 14:53:14,381.381 INFO    ] ================================================
[2026-08-25 14:53:15,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:53:15
[2026-08-25 14:53:15,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:53:15,994.994 INFO    ] Initializing speech engine...
[2026-08-25 14:53:16,003.003 INFO    ] 2026-08-25 14:53:15
[2026-08-25 14:53:16,278.278 INFO    ] 2026-08-25 14:53:16
[2026-08-25 14:53:16,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:53:16,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:53:16,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:53:16,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:53:16,676.676 INFO    ] time= 25/08/2026 14:53:16
[2026-08-25 14:53:16,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:53:16,724.724 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:53:16,815.815 INFO    ] No existing commands found in stream
[2026-08-25 14:53:21,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:53:21,833.833 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 14:53:26,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:53:26,253.253 INFO    ] Checking for system updates...
[2026-08-25 14:53:26,289.289 INFO    ] 200
[2026-08-25 14:53:26,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:26,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:53:26,350.350 INFO    ] No update needed
[2026-08-25 14:53:26,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 14:53:26,387.387 INFO    ] 200
[2026-08-25 14:53:26,389.389 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:26,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:53:26,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:53:26,489.489 INFO    ] No camera update needed
[2026-08-25 14:53:26,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:53:26,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:53:26,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:53:26,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:53:28,544.544 INFO    ] ================================================
[2026-08-25 14:53:28,560.560 INFO    ] Launching Daemon at Tue Aug 25 14:53:28 IST 2026
[2026-08-25 14:53:28,572.572 INFO    ] ================================================
[2026-08-25 14:53:29,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:53:29
[2026-08-25 14:53:29,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:53:30,012.012 INFO    ] Initializing speech engine...
[2026-08-25 14:53:30,037.037 INFO    ] 2026-08-25 14:53:30
[2026-08-25 14:53:30,308.308 INFO    ] 2026-08-25 14:53:30
[2026-08-25 14:53:30,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:53:30,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:53:30,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:53:30,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:53:30,723.723 INFO    ] time= 25/08/2026 14:53:30
[2026-08-25 14:53:30,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:53:30,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:53:30,916.916 INFO    ] No existing commands found in stream
[2026-08-25 14:53:35,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:53:35,940.940 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 14:53:38,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:53:38,758.758 INFO    ] Checking for system updates...
[2026-08-25 14:53:38,793.793 INFO    ] 200
[2026-08-25 14:53:38,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:38,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:53:38,857.857 INFO    ] No update needed
[2026-08-25 14:53:38,859.859 INFO    ] Checking for camera pi updates...
[2026-08-25 14:53:38,893.893 INFO    ] 200
[2026-08-25 14:53:38,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:38,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:53:38,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:53:38,991.991 INFO    ] No camera update needed
[2026-08-25 14:53:38,993.993 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:53:38,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:53:39,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:53:39,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:53:41,047.047 INFO    ] ================================================
[2026-08-25 14:53:41,063.063 INFO    ] Launching Daemon at Tue Aug 25 14:53:41 IST 2026
[2026-08-25 14:53:41,074.074 INFO    ] ================================================
[2026-08-25 14:53:41,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:53:41
[2026-08-25 14:53:42,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:53:42,696.696 INFO    ] Initializing speech engine...
[2026-08-25 14:53:42,704.704 INFO    ] 2026-08-25 14:53:42
[2026-08-25 14:53:42,970.970 INFO    ] 2026-08-25 14:53:42
[2026-08-25 14:53:43,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:53:43,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:53:43,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:53:43,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:53:43,440.440 INFO    ] time= 25/08/2026 14:53:43
[2026-08-25 14:53:43,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:53:43,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:53:43,667.667 INFO    ] No existing commands found in stream
[2026-08-25 14:53:48,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:53:48,688.688 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 14:53:51,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:53:51,036.036 INFO    ] Checking for system updates...
[2026-08-25 14:53:51,073.073 INFO    ] 200
[2026-08-25 14:53:51,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:51,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:53:51,131.131 INFO    ] No update needed
[2026-08-25 14:53:51,134.134 INFO    ] Checking for camera pi updates...
[2026-08-25 14:53:51,169.169 INFO    ] 200
[2026-08-25 14:53:51,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:53:51,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:53:51,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:53:51,263.263 INFO    ] No camera update needed
[2026-08-25 14:53:51,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:53:51,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:53:51,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:53:51,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:53:53,318.318 INFO    ] ================================================
[2026-08-25 14:53:53,334.334 INFO    ] Launching Daemon at Tue Aug 25 14:53:53 IST 2026
[2026-08-25 14:53:53,344.344 INFO    ] ================================================
[2026-08-25 14:53:53,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:53:53
[2026-08-25 14:53:54,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:53:54,797.797 INFO    ] Initializing speech engine...
[2026-08-25 14:53:54,805.805 INFO    ] 2026-08-25 14:53:54
[2026-08-25 14:53:55,062.062 INFO    ] 2026-08-25 14:53:55
[2026-08-25 14:53:55,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:53:55,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:53:55,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:53:55,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:53:55,523.523 INFO    ] time= 25/08/2026 14:53:55
[2026-08-25 14:53:55,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:53:55,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:53:55,731.731 INFO    ] No existing commands found in stream
[2026-08-25 14:54:00,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:54:00,764.764 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 14:54:03,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:54:03,942.942 INFO    ] Checking for system updates...
[2026-08-25 14:54:03,977.977 INFO    ] 200
[2026-08-25 14:54:03,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:04,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:54:04,038.038 INFO    ] No update needed
[2026-08-25 14:54:04,040.040 INFO    ] Checking for camera pi updates...
[2026-08-25 14:54:04,077.077 INFO    ] 200
[2026-08-25 14:54:04,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:04,121.121 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:54:04,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:54:04,169.169 INFO    ] No camera update needed
[2026-08-25 14:54:04,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:54:04,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:54:04,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:54:04,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:54:06,225.225 INFO    ] ================================================
[2026-08-25 14:54:06,240.240 INFO    ] Launching Daemon at Tue Aug 25 14:54:06 IST 2026
[2026-08-25 14:54:06,251.251 INFO    ] ================================================
[2026-08-25 14:54:06,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:54:06
[2026-08-25 14:54:07,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:54:07,815.815 INFO    ] Initializing speech engine...
[2026-08-25 14:54:07,823.823 INFO    ] 2026-08-25 14:54:07
[2026-08-25 14:54:08,096.096 INFO    ] 2026-08-25 14:54:08
[2026-08-25 14:54:08,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:54:08,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:54:08,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:54:08,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:54:08,605.605 INFO    ] time= 25/08/2026 14:54:08
[2026-08-25 14:54:08,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:54:08,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:54:08,800.800 INFO    ] No existing commands found in stream
[2026-08-25 14:54:13,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:54:13,831.831 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 14:54:14,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:54:14,834.834 INFO    ] Checking for system updates...
[2026-08-25 14:54:14,876.876 INFO    ] 200
[2026-08-25 14:54:14,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:14,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:54:14,939.939 INFO    ] No update needed
[2026-08-25 14:54:14,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 14:54:14,980.980 INFO    ] 200
[2026-08-25 14:54:14,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:15,033.033 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:54:15,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:54:15,179.179 INFO    ] No camera update needed
[2026-08-25 14:54:15,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:54:15,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:54:15,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:54:15,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:54:17,238.238 INFO    ] ================================================
[2026-08-25 14:54:17,253.253 INFO    ] Launching Daemon at Tue Aug 25 14:54:17 IST 2026
[2026-08-25 14:54:17,263.263 INFO    ] ================================================
[2026-08-25 14:54:17,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:54:17
[2026-08-25 14:54:18,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:54:18,723.723 INFO    ] Initializing speech engine...
[2026-08-25 14:54:18,730.730 INFO    ] 2026-08-25 14:54:18
[2026-08-25 14:54:18,991.991 INFO    ] 2026-08-25 14:54:18
[2026-08-25 14:54:19,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:54:19,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:54:19,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:54:19,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:54:19,449.449 INFO    ] time= 25/08/2026 14:54:19
[2026-08-25 14:54:19,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:54:19,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:54:19,685.685 INFO    ] No existing commands found in stream
[2026-08-25 14:54:24,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:54:24,703.703 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 14:54:28,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:54:28,337.337 INFO    ] Checking for system updates...
[2026-08-25 14:54:28,377.377 INFO    ] 200
[2026-08-25 14:54:28,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:28,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:54:28,444.444 INFO    ] No update needed
[2026-08-25 14:54:28,447.447 INFO    ] Checking for camera pi updates...
[2026-08-25 14:54:28,486.486 INFO    ] 200
[2026-08-25 14:54:28,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:28,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:54:28,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:54:28,599.599 INFO    ] No camera update needed
[2026-08-25 14:54:28,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:54:28,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:54:28,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:54:28,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:54:30,656.656 INFO    ] ================================================
[2026-08-25 14:54:30,671.671 INFO    ] Launching Daemon at Tue Aug 25 14:54:30 IST 2026
[2026-08-25 14:54:30,691.691 INFO    ] ================================================
[2026-08-25 14:54:31,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:54:31
[2026-08-25 14:54:31,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:54:32,236.236 INFO    ] Initializing speech engine...
[2026-08-25 14:54:32,248.248 INFO    ] 2026-08-25 14:54:32
[2026-08-25 14:54:32,598.598 INFO    ] 2026-08-25 14:54:32
[2026-08-25 14:54:32,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:54:32,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:54:32,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:54:33,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:54:33,091.091 INFO    ] time= 25/08/2026 14:54:33
[2026-08-25 14:54:33,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:54:33,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:54:33,229.229 INFO    ] No existing commands found in stream
[2026-08-25 14:54:38,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:54:38,242.242 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 14:54:41,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:54:41,012.012 INFO    ] Checking for system updates...
[2026-08-25 14:54:41,051.051 INFO    ] 200
[2026-08-25 14:54:41,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:41,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:54:41,108.108 INFO    ] No update needed
[2026-08-25 14:54:41,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 14:54:41,144.144 INFO    ] 200
[2026-08-25 14:54:41,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:41,191.191 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:54:41,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:54:41,240.240 INFO    ] No camera update needed
[2026-08-25 14:54:41,242.242 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:54:41,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:54:41,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:54:41,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:54:43,295.295 INFO    ] ================================================
[2026-08-25 14:54:43,310.310 INFO    ] Launching Daemon at Tue Aug 25 14:54:43 IST 2026
[2026-08-25 14:54:43,321.321 INFO    ] ================================================
[2026-08-25 14:54:43,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:54:43
[2026-08-25 14:54:44,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:54:44,909.909 INFO    ] Initializing speech engine...
[2026-08-25 14:54:44,928.928 INFO    ] 2026-08-25 14:54:44
[2026-08-25 14:54:45,186.186 INFO    ] 2026-08-25 14:54:45
[2026-08-25 14:54:45,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:54:45,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:54:45,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:54:45,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:54:45,561.561 INFO    ] time= 25/08/2026 14:54:45
[2026-08-25 14:54:45,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:54:45,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:54:45,745.745 INFO    ] No existing commands found in stream
[2026-08-25 14:54:50,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:54:50,775.775 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 14:54:54,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:54:54,510.510 INFO    ] Checking for system updates...
[2026-08-25 14:54:54,549.549 INFO    ] 200
[2026-08-25 14:54:54,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:54,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:54:54,607.607 INFO    ] No update needed
[2026-08-25 14:54:54,609.609 INFO    ] Checking for camera pi updates...
[2026-08-25 14:54:54,642.642 INFO    ] 200
[2026-08-25 14:54:54,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:54:54,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:54:54,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:54:54,752.752 INFO    ] No camera update needed
[2026-08-25 14:54:54,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:54:54,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:54:54,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:54:54,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:54:56,807.807 INFO    ] ================================================
[2026-08-25 14:54:56,822.822 INFO    ] Launching Daemon at Tue Aug 25 14:54:56 IST 2026
[2026-08-25 14:54:56,833.833 INFO    ] ================================================
[2026-08-25 14:54:57,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:54:57
[2026-08-25 14:54:58,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:54:58,344.344 INFO    ] Initializing speech engine...
[2026-08-25 14:54:58,352.352 INFO    ] 2026-08-25 14:54:58
[2026-08-25 14:54:58,648.648 INFO    ] 2026-08-25 14:54:58
[2026-08-25 14:54:58,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:54:58,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:54:58,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:54:59,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:54:59,033.033 INFO    ] time= 25/08/2026 14:54:59
[2026-08-25 14:54:59,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:54:59,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:54:59,160.160 INFO    ] No existing commands found in stream
[2026-08-25 14:55:04,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:55:04,175.175 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 14:55:05,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:55:05,159.159 INFO    ] Checking for system updates...
[2026-08-25 14:55:05,195.195 INFO    ] 200
[2026-08-25 14:55:05,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:05,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:05,259.259 INFO    ] No update needed
[2026-08-25 14:55:05,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 14:55:05,295.295 INFO    ] 200
[2026-08-25 14:55:05,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:05,343.343 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:55:05,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:05,389.389 INFO    ] No camera update needed
[2026-08-25 14:55:05,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:55:05,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:55:05,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:55:05,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:55:07,444.444 INFO    ] ================================================
[2026-08-25 14:55:07,460.460 INFO    ] Launching Daemon at Tue Aug 25 14:55:07 IST 2026
[2026-08-25 14:55:07,471.471 INFO    ] ================================================
[2026-08-25 14:55:08,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:55:08
[2026-08-25 14:55:08,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:55:08,965.965 INFO    ] Initializing speech engine...
[2026-08-25 14:55:08,972.972 INFO    ] 2026-08-25 14:55:08
[2026-08-25 14:55:09,255.255 INFO    ] 2026-08-25 14:55:09
[2026-08-25 14:55:09,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:55:09,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:55:09,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:55:09,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:55:09,762.762 INFO    ] time= 25/08/2026 14:55:09
[2026-08-25 14:55:09,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:55:09,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:55:09,975.975 INFO    ] No existing commands found in stream
[2026-08-25 14:55:14,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:55:14,994.994 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 14:55:16,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:55:16,798.798 INFO    ] Checking for system updates...
[2026-08-25 14:55:16,839.839 INFO    ] 200
[2026-08-25 14:55:16,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:16,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:16,903.903 INFO    ] No update needed
[2026-08-25 14:55:16,906.906 INFO    ] Checking for camera pi updates...
[2026-08-25 14:55:16,941.941 INFO    ] 200
[2026-08-25 14:55:16,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:16,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:55:17,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:17,036.036 INFO    ] No camera update needed
[2026-08-25 14:55:17,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:55:17,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:55:17,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:55:17,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:55:19,096.096 INFO    ] ================================================
[2026-08-25 14:55:19,111.111 INFO    ] Launching Daemon at Tue Aug 25 14:55:19 IST 2026
[2026-08-25 14:55:19,123.123 INFO    ] ================================================
[2026-08-25 14:55:19,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:55:19
[2026-08-25 14:55:20,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:55:20,578.578 INFO    ] Initializing speech engine...
[2026-08-25 14:55:20,587.587 INFO    ] 2026-08-25 14:55:20
[2026-08-25 14:55:20,838.838 INFO    ] 2026-08-25 14:55:20
[2026-08-25 14:55:20,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:55:21,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:55:21,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:55:21,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:55:21,339.339 INFO    ] time= 25/08/2026 14:55:21
[2026-08-25 14:55:21,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:55:21,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:55:21,549.549 INFO    ] No existing commands found in stream
[2026-08-25 14:55:26,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:55:26,567.567 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 14:55:27,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:55:27,712.712 INFO    ] Checking for system updates...
[2026-08-25 14:55:27,747.747 INFO    ] 200
[2026-08-25 14:55:27,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:27,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:55:27,811.811 INFO    ] No update needed
[2026-08-25 14:55:27,813.813 INFO    ] Checking for camera pi updates...
[2026-08-25 14:55:27,848.848 INFO    ] 200
[2026-08-25 14:55:27,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:27,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:55:27,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:55:27,952.952 INFO    ] No camera update needed
[2026-08-25 14:55:27,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:55:27,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:55:27,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:55:27,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:55:30,006.006 INFO    ] ================================================
[2026-08-25 14:55:30,022.022 INFO    ] Launching Daemon at Tue Aug 25 14:55:30 IST 2026
[2026-08-25 14:55:30,033.033 INFO    ] ================================================
[2026-08-25 14:55:30,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:55:30
[2026-08-25 14:55:31,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:55:31,490.490 INFO    ] Initializing speech engine...
[2026-08-25 14:55:31,500.500 INFO    ] 2026-08-25 14:55:31
[2026-08-25 14:55:31,762.762 INFO    ] 2026-08-25 14:55:31
[2026-08-25 14:55:31,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:55:32,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:55:32,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:55:32,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:55:32,286.286 INFO    ] time= 25/08/2026 14:55:32
[2026-08-25 14:55:32,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:55:32,338.338 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:55:32,488.488 INFO    ] No existing commands found in stream
[2026-08-25 14:55:37,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:55:37,506.506 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 14:55:39,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:55:39,878.878 INFO    ] Checking for system updates...
[2026-08-25 14:55:39,919.919 INFO    ] 200
[2026-08-25 14:55:39,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:39,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:39,981.981 INFO    ] No update needed
[2026-08-25 14:55:39,983.983 INFO    ] Checking for camera pi updates...
[2026-08-25 14:55:40,020.020 INFO    ] 200
[2026-08-25 14:55:40,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:40,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:55:40,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:40,119.119 INFO    ] No camera update needed
[2026-08-25 14:55:40,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:55:40,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:55:40,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:55:40,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:55:42,174.174 INFO    ] ================================================
[2026-08-25 14:55:42,190.190 INFO    ] Launching Daemon at Tue Aug 25 14:55:42 IST 2026
[2026-08-25 14:55:42,201.201 INFO    ] ================================================
[2026-08-25 14:55:42,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:55:42
[2026-08-25 14:55:43,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:55:43,655.655 INFO    ] Initializing speech engine...
[2026-08-25 14:55:43,661.661 INFO    ] 2026-08-25 14:55:43
[2026-08-25 14:55:43,921.921 INFO    ] 2026-08-25 14:55:43
[2026-08-25 14:55:43,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:55:44,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:55:44,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:55:44,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:55:44,409.409 INFO    ] time= 25/08/2026 14:55:44
[2026-08-25 14:55:44,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:55:44,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:55:44,611.611 INFO    ] No existing commands found in stream
[2026-08-25 14:55:49,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:55:49,630.630 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 14:55:50,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:55:50,564.564 INFO    ] Checking for system updates...
[2026-08-25 14:55:50,603.603 INFO    ] 200
[2026-08-25 14:55:50,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:50,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:50,667.667 INFO    ] No update needed
[2026-08-25 14:55:50,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 14:55:50,704.704 INFO    ] 200
[2026-08-25 14:55:50,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:55:50,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:55:50,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:55:50,795.795 INFO    ] No camera update needed
[2026-08-25 14:55:50,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:55:50,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:55:50,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:55:50,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:55:52,850.850 INFO    ] ================================================
[2026-08-25 14:55:52,866.866 INFO    ] Launching Daemon at Tue Aug 25 14:55:52 IST 2026
[2026-08-25 14:55:52,877.877 INFO    ] ================================================
[2026-08-25 14:55:53,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:55:53
[2026-08-25 14:55:54,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:55:54,330.330 INFO    ] Initializing speech engine...
[2026-08-25 14:55:54,339.339 INFO    ] 2026-08-25 14:55:54
[2026-08-25 14:55:54,600.600 INFO    ] 2026-08-25 14:55:54
[2026-08-25 14:55:54,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:55:54,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:55:54,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:55:55,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:55:55,063.063 INFO    ] time= 25/08/2026 14:55:55
[2026-08-25 14:55:55,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:55:55,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:55:55,295.295 INFO    ] No existing commands found in stream
[2026-08-25 14:56:00,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:56:00,311.311 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 14:56:04,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:56:04,670.670 INFO    ] Checking for system updates...
[2026-08-25 14:56:04,710.710 INFO    ] 200
[2026-08-25 14:56:04,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:04,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:56:04,770.770 INFO    ] No update needed
[2026-08-25 14:56:04,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 14:56:04,807.807 INFO    ] 200
[2026-08-25 14:56:04,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:04,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:56:04,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:56:04,902.902 INFO    ] No camera update needed
[2026-08-25 14:56:04,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:56:04,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:56:04,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:56:04,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:56:06,961.961 INFO    ] ================================================
[2026-08-25 14:56:06,977.977 INFO    ] Launching Daemon at Tue Aug 25 14:56:06 IST 2026
[2026-08-25 14:56:06,988.988 INFO    ] ================================================
[2026-08-25 14:56:07,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:56:07
[2026-08-25 14:56:08,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:56:08,613.613 INFO    ] Initializing speech engine...
[2026-08-25 14:56:08,625.625 INFO    ] 2026-08-25 14:56:08
[2026-08-25 14:56:08,938.938 INFO    ] 2026-08-25 14:56:08
[2026-08-25 14:56:09,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:56:09,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:56:09,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:56:09,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:56:09,535.535 INFO    ] time= 25/08/2026 14:56:09
[2026-08-25 14:56:09,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:56:09,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:56:09,777.777 INFO    ] No existing commands found in stream
[2026-08-25 14:56:14,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:56:14,811.811 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 14:56:16,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:56:16,461.461 INFO    ] Checking for system updates...
[2026-08-25 14:56:16,496.496 INFO    ] 200
[2026-08-25 14:56:16,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:16,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:56:16,561.561 INFO    ] No update needed
[2026-08-25 14:56:16,564.564 INFO    ] Checking for camera pi updates...
[2026-08-25 14:56:16,598.598 INFO    ] 200
[2026-08-25 14:56:16,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:16,647.647 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:56:16,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:56:16,706.706 INFO    ] No camera update needed
[2026-08-25 14:56:16,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:56:16,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:56:16,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:56:16,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:56:18,761.761 INFO    ] ================================================
[2026-08-25 14:56:18,777.777 INFO    ] Launching Daemon at Tue Aug 25 14:56:18 IST 2026
[2026-08-25 14:56:18,788.788 INFO    ] ================================================
[2026-08-25 14:56:19,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:56:19
[2026-08-25 14:56:20,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:56:20,431.431 INFO    ] Initializing speech engine...
[2026-08-25 14:56:20,446.446 INFO    ] 2026-08-25 14:56:20
[2026-08-25 14:56:20,716.716 INFO    ] 2026-08-25 14:56:20
[2026-08-25 14:56:20,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:56:21,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:56:21,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:56:21,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:56:21,208.208 INFO    ] time= 25/08/2026 14:56:21
[2026-08-25 14:56:21,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:56:21,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:56:21,419.419 INFO    ] No existing commands found in stream
[2026-08-25 14:56:26,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:56:26,442.442 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 14:56:28,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:56:28,205.205 INFO    ] Checking for system updates...
[2026-08-25 14:56:28,246.246 INFO    ] 200
[2026-08-25 14:56:28,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:28,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:56:28,302.302 INFO    ] No update needed
[2026-08-25 14:56:28,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 14:56:28,338.338 INFO    ] 200
[2026-08-25 14:56:28,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:28,386.386 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:56:28,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:56:28,532.532 INFO    ] No camera update needed
[2026-08-25 14:56:28,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:56:28,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:56:28,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:56:28,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:56:30,587.587 INFO    ] ================================================
[2026-08-25 14:56:30,603.603 INFO    ] Launching Daemon at Tue Aug 25 14:56:30 IST 2026
[2026-08-25 14:56:30,614.614 INFO    ] ================================================
[2026-08-25 14:56:31,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:56:31
[2026-08-25 14:56:31,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:56:32,091.091 INFO    ] Initializing speech engine...
[2026-08-25 14:56:32,100.100 INFO    ] 2026-08-25 14:56:32
[2026-08-25 14:56:32,373.373 INFO    ] 2026-08-25 14:56:32
[2026-08-25 14:56:32,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:56:32,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:56:32,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:56:32,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:56:32,837.837 INFO    ] time= 25/08/2026 14:56:32
[2026-08-25 14:56:32,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:56:32,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:56:32,928.928 INFO    ] No existing commands found in stream
[2026-08-25 14:56:37,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:56:37,943.943 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 14:56:38,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:56:38,618.618 INFO    ] Checking for system updates...
[2026-08-25 14:56:38,653.653 INFO    ] 200
[2026-08-25 14:56:38,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:38,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:56:38,718.718 INFO    ] No update needed
[2026-08-25 14:56:38,720.720 INFO    ] Checking for camera pi updates...
[2026-08-25 14:56:38,757.757 INFO    ] 200
[2026-08-25 14:56:38,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:38,800.800 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:56:38,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:56:38,854.854 INFO    ] No camera update needed
[2026-08-25 14:56:38,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:56:38,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:56:38,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:56:38,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:56:40,912.912 INFO    ] ================================================
[2026-08-25 14:56:40,927.927 INFO    ] Launching Daemon at Tue Aug 25 14:56:40 IST 2026
[2026-08-25 14:56:40,938.938 INFO    ] ================================================
[2026-08-25 14:56:41,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:56:41
[2026-08-25 14:56:42,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:56:42,354.354 INFO    ] Initializing speech engine...
[2026-08-25 14:56:42,361.361 INFO    ] 2026-08-25 14:56:42
[2026-08-25 14:56:42,661.661 INFO    ] 2026-08-25 14:56:42
[2026-08-25 14:56:42,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:56:42,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:56:42,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:56:43,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:56:43,045.045 INFO    ] time= 25/08/2026 14:56:43
[2026-08-25 14:56:43,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:56:43,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:56:43,171.171 INFO    ] No existing commands found in stream
[2026-08-25 14:56:48,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:56:48,187.187 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 14:56:50,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:56:50,652.652 INFO    ] Checking for system updates...
[2026-08-25 14:56:50,687.687 INFO    ] 200
[2026-08-25 14:56:50,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:50,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:56:50,744.744 INFO    ] No update needed
[2026-08-25 14:56:50,747.747 INFO    ] Checking for camera pi updates...
[2026-08-25 14:56:50,785.785 INFO    ] 200
[2026-08-25 14:56:50,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:56:50,828.828 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:56:50,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:56:50,889.889 INFO    ] No camera update needed
[2026-08-25 14:56:50,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:56:50,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:56:50,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:56:50,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:56:52,944.944 INFO    ] ================================================
[2026-08-25 14:56:52,959.959 INFO    ] Launching Daemon at Tue Aug 25 14:56:52 IST 2026
[2026-08-25 14:56:52,969.969 INFO    ] ================================================
[2026-08-25 14:56:53,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:56:53
[2026-08-25 14:56:54,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:56:54,435.435 INFO    ] Initializing speech engine...
[2026-08-25 14:56:54,441.441 INFO    ] 2026-08-25 14:56:54
[2026-08-25 14:56:54,702.702 INFO    ] 2026-08-25 14:56:54
[2026-08-25 14:56:54,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:56:54,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:56:54,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:56:55,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:56:55,154.154 INFO    ] time= 25/08/2026 14:56:55
[2026-08-25 14:56:55,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:56:55,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:56:55,395.395 INFO    ] No existing commands found in stream
[2026-08-25 14:57:00,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:57:00,414.414 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 14:57:03,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:57:03,700.700 INFO    ] Checking for system updates...
[2026-08-25 14:57:03,736.736 INFO    ] 200
[2026-08-25 14:57:03,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:03,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:57:03,803.803 INFO    ] No update needed
[2026-08-25 14:57:03,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 14:57:03,844.844 INFO    ] 200
[2026-08-25 14:57:03,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:03,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:57:03,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:57:03,933.933 INFO    ] No camera update needed
[2026-08-25 14:57:03,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:57:03,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:57:03,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:57:03,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:57:05,990.990 INFO    ] ================================================
[2026-08-25 14:57:06,006.006 INFO    ] Launching Daemon at Tue Aug 25 14:57:06 IST 2026
[2026-08-25 14:57:06,017.017 INFO    ] ================================================
[2026-08-25 14:57:06,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:57:06
[2026-08-25 14:57:07,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:57:07,439.439 INFO    ] Initializing speech engine...
[2026-08-25 14:57:07,461.461 INFO    ] 2026-08-25 14:57:07
[2026-08-25 14:57:07,714.714 INFO    ] 2026-08-25 14:57:07
[2026-08-25 14:57:07,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:57:08,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:57:08,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:57:08,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:57:08,204.204 INFO    ] time= 25/08/2026 14:57:08
[2026-08-25 14:57:08,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:57:08,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:57:08,409.409 INFO    ] No existing commands found in stream
[2026-08-25 14:57:13,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:57:13,437.437 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 14:57:14,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:57:14,522.522 INFO    ] Checking for system updates...
[2026-08-25 14:57:14,563.563 INFO    ] 200
[2026-08-25 14:57:14,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:14,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:57:14,628.628 INFO    ] No update needed
[2026-08-25 14:57:14,630.630 INFO    ] Checking for camera pi updates...
[2026-08-25 14:57:14,664.664 INFO    ] 200
[2026-08-25 14:57:14,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:14,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:57:14,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:57:14,755.755 INFO    ] No camera update needed
[2026-08-25 14:57:14,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:57:14,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:57:14,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:57:14,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:57:16,810.810 INFO    ] ================================================
[2026-08-25 14:57:16,825.825 INFO    ] Launching Daemon at Tue Aug 25 14:57:16 IST 2026
[2026-08-25 14:57:16,836.836 INFO    ] ================================================
[2026-08-25 14:57:17,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:57:17
[2026-08-25 14:57:18,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:57:18,279.279 INFO    ] Initializing speech engine...
[2026-08-25 14:57:18,292.292 INFO    ] 2026-08-25 14:57:18
[2026-08-25 14:57:18,589.589 INFO    ] 2026-08-25 14:57:18
[2026-08-25 14:57:18,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:57:18,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:57:18,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:57:19,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:57:19,027.027 INFO    ] time= 25/08/2026 14:57:19
[2026-08-25 14:57:19,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:57:19,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:57:19,192.192 INFO    ] No existing commands found in stream
[2026-08-25 14:57:24,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:57:24,226.226 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 14:57:25,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:57:25,664.664 INFO    ] Checking for system updates...
[2026-08-25 14:57:25,700.700 INFO    ] 200
[2026-08-25 14:57:25,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:25,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:57:25,767.767 INFO    ] No update needed
[2026-08-25 14:57:25,769.769 INFO    ] Checking for camera pi updates...
[2026-08-25 14:57:25,803.803 INFO    ] 200
[2026-08-25 14:57:25,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:25,853.853 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:57:25,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:57:25,907.907 INFO    ] No camera update needed
[2026-08-25 14:57:25,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:57:25,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:57:25,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:57:25,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:57:27,962.962 INFO    ] ================================================
[2026-08-25 14:57:27,978.978 INFO    ] Launching Daemon at Tue Aug 25 14:57:27 IST 2026
[2026-08-25 14:57:27,988.988 INFO    ] ================================================
[2026-08-25 14:57:28,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:57:28
[2026-08-25 14:57:29,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:57:29,439.439 INFO    ] Initializing speech engine...
[2026-08-25 14:57:29,448.448 INFO    ] 2026-08-25 14:57:29
[2026-08-25 14:57:29,706.706 INFO    ] 2026-08-25 14:57:29
[2026-08-25 14:57:29,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:57:29,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:57:29,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:57:30,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:57:30,183.183 INFO    ] time= 25/08/2026 14:57:30
[2026-08-25 14:57:30,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:57:30,254.254 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:57:30,404.404 INFO    ] No existing commands found in stream
[2026-08-25 14:57:35,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:57:35,448.448 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 14:57:39,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:57:39,116.116 INFO    ] Checking for system updates...
[2026-08-25 14:57:39,159.159 INFO    ] 200
[2026-08-25 14:57:39,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:39,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:57:39,221.221 INFO    ] No update needed
[2026-08-25 14:57:39,223.223 INFO    ] Checking for camera pi updates...
[2026-08-25 14:57:39,256.256 INFO    ] 200
[2026-08-25 14:57:39,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:39,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:57:39,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:57:39,365.365 INFO    ] No camera update needed
[2026-08-25 14:57:39,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:57:39,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:57:39,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:57:39,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:57:41,424.424 INFO    ] ================================================
[2026-08-25 14:57:41,439.439 INFO    ] Launching Daemon at Tue Aug 25 14:57:41 IST 2026
[2026-08-25 14:57:41,450.450 INFO    ] ================================================
[2026-08-25 14:57:42,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:57:42
[2026-08-25 14:57:42,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:57:42,905.905 INFO    ] Initializing speech engine...
[2026-08-25 14:57:42,914.914 INFO    ] 2026-08-25 14:57:42
[2026-08-25 14:57:43,171.171 INFO    ] 2026-08-25 14:57:43
[2026-08-25 14:57:43,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:57:43,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:57:43,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:57:43,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:57:43,714.714 INFO    ] time= 25/08/2026 14:57:43
[2026-08-25 14:57:43,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:57:43,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:57:43,853.853 INFO    ] No existing commands found in stream
[2026-08-25 14:57:48,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:57:48,880.880 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 14:57:52,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:57:52,453.453 INFO    ] Checking for system updates...
[2026-08-25 14:57:52,489.489 INFO    ] 200
[2026-08-25 14:57:52,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:52,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:57:52,554.554 INFO    ] No update needed
[2026-08-25 14:57:52,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 14:57:52,595.595 INFO    ] 200
[2026-08-25 14:57:52,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:57:52,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:57:52,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:57:52,690.690 INFO    ] No camera update needed
[2026-08-25 14:57:52,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:57:52,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:57:52,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:57:52,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:57:54,747.747 INFO    ] ================================================
[2026-08-25 14:57:54,763.763 INFO    ] Launching Daemon at Tue Aug 25 14:57:54 IST 2026
[2026-08-25 14:57:54,774.774 INFO    ] ================================================
[2026-08-25 14:57:55,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:57:55
[2026-08-25 14:57:56,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:57:56,371.371 INFO    ] Initializing speech engine...
[2026-08-25 14:57:56,390.390 INFO    ] 2026-08-25 14:57:56
[2026-08-25 14:57:56,641.641 INFO    ] 2026-08-25 14:57:56
[2026-08-25 14:57:56,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:57:56,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:57:56,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:57:57,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:57:57,017.017 INFO    ] time= 25/08/2026 14:57:57
[2026-08-25 14:57:57,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:57:57,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:57:57,171.171 INFO    ] No existing commands found in stream
[2026-08-25 14:58:02,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:58:02,200.200 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 14:58:03,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:58:03,431.431 INFO    ] Checking for system updates...
[2026-08-25 14:58:03,480.480 INFO    ] 200
[2026-08-25 14:58:03,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:03,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:58:03,543.543 INFO    ] No update needed
[2026-08-25 14:58:03,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 14:58:03,588.588 INFO    ] 200
[2026-08-25 14:58:03,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:03,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:58:03,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:58:03,694.694 INFO    ] No camera update needed
[2026-08-25 14:58:03,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:58:03,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:58:03,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:58:03,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:58:05,748.748 INFO    ] ================================================
[2026-08-25 14:58:05,764.764 INFO    ] Launching Daemon at Tue Aug 25 14:58:05 IST 2026
[2026-08-25 14:58:05,776.776 INFO    ] ================================================
[2026-08-25 14:58:06,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:58:06
[2026-08-25 14:58:07,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:58:07,285.285 INFO    ] Initializing speech engine...
[2026-08-25 14:58:07,291.291 INFO    ] 2026-08-25 14:58:07
[2026-08-25 14:58:07,556.556 INFO    ] 2026-08-25 14:58:07
[2026-08-25 14:58:07,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:58:07,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:58:07,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:58:07,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:58:07,981.981 INFO    ] time= 25/08/2026 14:58:07
[2026-08-25 14:58:07,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:58:08,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:58:08,146.146 INFO    ] No existing commands found in stream
[2026-08-25 14:58:13,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:58:13,183.183 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 14:58:15,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 14:58:15,429.429 INFO    ] Checking for system updates...
[2026-08-25 14:58:15,469.469 INFO    ] 200
[2026-08-25 14:58:15,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:15,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:58:15,534.534 INFO    ] No update needed
[2026-08-25 14:58:15,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 14:58:15,573.573 INFO    ] 200
[2026-08-25 14:58:15,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:15,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:58:15,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:58:15,685.685 INFO    ] No camera update needed
[2026-08-25 14:58:15,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:58:15,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:58:15,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:58:15,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:58:17,741.741 INFO    ] ================================================
[2026-08-25 14:58:17,757.757 INFO    ] Launching Daemon at Tue Aug 25 14:58:17 IST 2026
[2026-08-25 14:58:17,768.768 INFO    ] ================================================
[2026-08-25 14:58:18,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:58:18
[2026-08-25 14:58:19,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:58:19,340.340 INFO    ] Initializing speech engine...
[2026-08-25 14:58:19,353.353 INFO    ] 2026-08-25 14:58:19
[2026-08-25 14:58:19,639.639 INFO    ] 2026-08-25 14:58:19
[2026-08-25 14:58:19,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:58:19,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:58:19,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:58:20,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:58:20,114.114 INFO    ] time= 25/08/2026 14:58:20
[2026-08-25 14:58:20,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:58:20,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:58:20,320.320 INFO    ] No existing commands found in stream
[2026-08-25 14:58:25,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:58:25,339.339 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 14:58:28,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:58:28,103.103 INFO    ] Checking for system updates...
[2026-08-25 14:58:28,144.144 INFO    ] 200
[2026-08-25 14:58:28,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:28,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:58:28,216.216 INFO    ] No update needed
[2026-08-25 14:58:28,219.219 INFO    ] Checking for camera pi updates...
[2026-08-25 14:58:28,258.258 INFO    ] 200
[2026-08-25 14:58:28,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:28,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:58:28,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:58:28,357.357 INFO    ] No camera update needed
[2026-08-25 14:58:28,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:58:28,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:58:28,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:58:28,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:58:30,415.415 INFO    ] ================================================
[2026-08-25 14:58:30,436.436 INFO    ] Launching Daemon at Tue Aug 25 14:58:30 IST 2026
[2026-08-25 14:58:30,447.447 INFO    ] ================================================
[2026-08-25 14:58:31,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:58:31
[2026-08-25 14:58:31,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:58:31,951.951 INFO    ] Initializing speech engine...
[2026-08-25 14:58:31,957.957 INFO    ] 2026-08-25 14:58:31
[2026-08-25 14:58:32,258.258 INFO    ] 2026-08-25 14:58:32
[2026-08-25 14:58:32,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:58:32,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:58:32,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:58:32,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:58:32,794.794 INFO    ] time= 25/08/2026 14:58:32
[2026-08-25 14:58:32,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:58:32,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:58:33,004.004 INFO    ] No existing commands found in stream
[2026-08-25 14:58:38,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:58:38,020.020 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 14:58:42,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:58:42,373.373 INFO    ] Checking for system updates...
[2026-08-25 14:58:42,414.414 INFO    ] 200
[2026-08-25 14:58:42,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:42,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:58:42,484.484 INFO    ] No update needed
[2026-08-25 14:58:42,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 14:58:42,526.526 INFO    ] 200
[2026-08-25 14:58:42,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:42,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:58:42,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:58:42,631.631 INFO    ] No camera update needed
[2026-08-25 14:58:42,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:58:42,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:58:42,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:58:42,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:58:44,689.689 INFO    ] ================================================
[2026-08-25 14:58:44,704.704 INFO    ] Launching Daemon at Tue Aug 25 14:58:44 IST 2026
[2026-08-25 14:58:44,721.721 INFO    ] ================================================
[2026-08-25 14:58:45,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:58:45
[2026-08-25 14:58:45,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:58:46,172.172 INFO    ] Initializing speech engine...
[2026-08-25 14:58:46,180.180 INFO    ] 2026-08-25 14:58:46
[2026-08-25 14:58:46,440.440 INFO    ] 2026-08-25 14:58:46
[2026-08-25 14:58:46,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:58:46,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:58:46,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:58:46,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:58:46,914.914 INFO    ] time= 25/08/2026 14:58:46
[2026-08-25 14:58:46,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:58:46,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:58:47,113.113 INFO    ] No existing commands found in stream
[2026-08-25 14:58:52,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:58:52,149.149 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 14:58:53,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:58:53,619.619 INFO    ] Checking for system updates...
[2026-08-25 14:58:53,658.658 INFO    ] 200
[2026-08-25 14:58:53,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:53,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:58:53,721.721 INFO    ] No update needed
[2026-08-25 14:58:53,724.724 INFO    ] Checking for camera pi updates...
[2026-08-25 14:58:53,762.762 INFO    ] 200
[2026-08-25 14:58:53,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:58:53,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:58:53,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:58:53,869.869 INFO    ] No camera update needed
[2026-08-25 14:58:53,871.871 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:58:53,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:58:53,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:58:53,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:58:55,923.923 INFO    ] ================================================
[2026-08-25 14:58:55,938.938 INFO    ] Launching Daemon at Tue Aug 25 14:58:55 IST 2026
[2026-08-25 14:58:55,953.953 INFO    ] ================================================
[2026-08-25 14:58:56,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:58:56
[2026-08-25 14:58:57,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:58:57,408.408 INFO    ] Initializing speech engine...
[2026-08-25 14:58:57,416.416 INFO    ] 2026-08-25 14:58:57
[2026-08-25 14:58:57,673.673 INFO    ] 2026-08-25 14:58:57
[2026-08-25 14:58:57,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:58:57,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:58:57,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:58:58,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:58:58,152.152 INFO    ] time= 25/08/2026 14:58:58
[2026-08-25 14:58:58,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:58:58,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:58:58,355.355 INFO    ] No existing commands found in stream
[2026-08-25 14:59:03,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:59:03,380.380 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 14:59:05,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 14:59:05,390.390 INFO    ] Checking for system updates...
[2026-08-25 14:59:05,426.426 INFO    ] 200
[2026-08-25 14:59:05,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:05,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:59:05,489.489 INFO    ] No update needed
[2026-08-25 14:59:05,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 14:59:05,526.526 INFO    ] 200
[2026-08-25 14:59:05,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:05,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:59:05,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:59:05,623.623 INFO    ] No camera update needed
[2026-08-25 14:59:05,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:59:05,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:59:05,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:59:05,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:59:07,681.681 INFO    ] ================================================
[2026-08-25 14:59:07,696.696 INFO    ] Launching Daemon at Tue Aug 25 14:59:07 IST 2026
[2026-08-25 14:59:07,706.706 INFO    ] ================================================
[2026-08-25 14:59:08,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:59:08
[2026-08-25 14:59:08,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:59:09,122.122 INFO    ] Initializing speech engine...
[2026-08-25 14:59:09,131.131 INFO    ] 2026-08-25 14:59:09
[2026-08-25 14:59:09,421.421 INFO    ] 2026-08-25 14:59:09
[2026-08-25 14:59:09,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:59:09,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:59:09,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:59:09,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:59:09,834.834 INFO    ] time= 25/08/2026 14:59:09
[2026-08-25 14:59:09,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:59:09,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:59:09,974.974 INFO    ] No existing commands found in stream
[2026-08-25 14:59:14,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:59:15,002.002 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 14:59:16,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 14:59:16,305.305 INFO    ] Checking for system updates...
[2026-08-25 14:59:16,340.340 INFO    ] 200
[2026-08-25 14:59:16,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:16,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:59:16,398.398 INFO    ] No update needed
[2026-08-25 14:59:16,401.401 INFO    ] Checking for camera pi updates...
[2026-08-25 14:59:16,434.434 INFO    ] 200
[2026-08-25 14:59:16,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:16,481.481 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:59:16,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:59:16,529.529 INFO    ] No camera update needed
[2026-08-25 14:59:16,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:59:16,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:59:16,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:59:16,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:59:18,584.584 INFO    ] ================================================
[2026-08-25 14:59:18,598.598 INFO    ] Launching Daemon at Tue Aug 25 14:59:18 IST 2026
[2026-08-25 14:59:18,609.609 INFO    ] ================================================
[2026-08-25 14:59:19,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:59:19
[2026-08-25 14:59:19,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:59:19,999.999 INFO    ] Initializing speech engine...
[2026-08-25 14:59:20,012.012 INFO    ] 2026-08-25 14:59:20
[2026-08-25 14:59:20,272.272 INFO    ] 2026-08-25 14:59:20
[2026-08-25 14:59:20,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:59:20,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:59:20,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:59:20,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:59:20,761.761 INFO    ] time= 25/08/2026 14:59:20
[2026-08-25 14:59:20,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:59:20,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:59:21,003.003 INFO    ] No existing commands found in stream
[2026-08-25 14:59:26,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:59:26,027.027 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 14:59:26,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 14:59:26,791.791 INFO    ] Checking for system updates...
[2026-08-25 14:59:26,831.831 INFO    ] 200
[2026-08-25 14:59:26,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:26,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:59:26,893.893 INFO    ] No update needed
[2026-08-25 14:59:26,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 14:59:26,932.932 INFO    ] 200
[2026-08-25 14:59:26,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:26,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:59:27,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:59:27,044.044 INFO    ] No camera update needed
[2026-08-25 14:59:27,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:59:27,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:59:27,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:59:27,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:59:29,099.099 INFO    ] ================================================
[2026-08-25 14:59:29,114.114 INFO    ] Launching Daemon at Tue Aug 25 14:59:29 IST 2026
[2026-08-25 14:59:29,124.124 INFO    ] ================================================
[2026-08-25 14:59:29,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:59:29
[2026-08-25 14:59:30,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:59:30,586.586 INFO    ] Initializing speech engine...
[2026-08-25 14:59:30,594.594 INFO    ] 2026-08-25 14:59:30
[2026-08-25 14:59:30,838.838 INFO    ] 2026-08-25 14:59:30
[2026-08-25 14:59:30,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:59:31,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:59:31,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:59:31,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:59:31,314.314 INFO    ] time= 25/08/2026 14:59:31
[2026-08-25 14:59:31,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:59:31,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:59:31,547.547 INFO    ] No existing commands found in stream
[2026-08-25 14:59:36,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:59:36,563.563 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 14:59:40,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 14:59:40,044.044 INFO    ] Checking for system updates...
[2026-08-25 14:59:40,082.082 INFO    ] 200
[2026-08-25 14:59:40,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:40,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:59:40,141.141 INFO    ] No update needed
[2026-08-25 14:59:40,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 14:59:40,181.181 INFO    ] 200
[2026-08-25 14:59:40,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:40,225.225 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:59:40,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 14:59:40,273.273 INFO    ] No camera update needed
[2026-08-25 14:59:40,276.276 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:59:40,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:59:40,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:59:40,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:59:42,331.331 INFO    ] ================================================
[2026-08-25 14:59:42,346.346 INFO    ] Launching Daemon at Tue Aug 25 14:59:42 IST 2026
[2026-08-25 14:59:42,357.357 INFO    ] ================================================
[2026-08-25 14:59:42,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:59:42
[2026-08-25 14:59:43,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:59:43,823.823 INFO    ] Initializing speech engine...
[2026-08-25 14:59:43,832.832 INFO    ] 2026-08-25 14:59:43
[2026-08-25 14:59:44,079.079 INFO    ] 2026-08-25 14:59:44
[2026-08-25 14:59:44,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:59:44,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:59:44,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:59:44,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:59:44,572.572 INFO    ] time= 25/08/2026 14:59:44
[2026-08-25 14:59:44,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:59:44,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:59:44,769.769 INFO    ] No existing commands found in stream
[2026-08-25 14:59:49,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 14:59:49,797.797 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 14:59:50,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 14:59:50,447.447 INFO    ] Checking for system updates...
[2026-08-25 14:59:50,482.482 INFO    ] 200
[2026-08-25 14:59:50,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:50,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:59:50,539.539 INFO    ] No update needed
[2026-08-25 14:59:50,542.542 INFO    ] Checking for camera pi updates...
[2026-08-25 14:59:50,575.575 INFO    ] 200
[2026-08-25 14:59:50,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 14:59:50,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 14:59:50,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 14:59:50,667.667 INFO    ] No camera update needed
[2026-08-25 14:59:50,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-25 14:59:50,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 14:59:50,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 14:59:50,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 14:59:52,722.722 INFO    ] ================================================
[2026-08-25 14:59:52,737.737 INFO    ] Launching Daemon at Tue Aug 25 14:59:52 IST 2026
[2026-08-25 14:59:52,748.748 INFO    ] ================================================
[2026-08-25 14:59:53,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 14:59:53
[2026-08-25 14:59:53,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 14:59:54,163.163 INFO    ] Initializing speech engine...
[2026-08-25 14:59:54,172.172 INFO    ] 2026-08-25 14:59:54
[2026-08-25 14:59:54,421.421 INFO    ] 2026-08-25 14:59:54
[2026-08-25 14:59:54,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 14:59:54,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 14:59:54,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 14:59:54,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 14:59:54,795.795 INFO    ] time= 25/08/2026 14:59:54
[2026-08-25 14:59:54,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 14:59:54,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-25 14:59:54,982.982 INFO    ] No existing commands found in stream
[2026-08-25 15:00:00,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:00:00,008.008 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 15:00:02,186.186 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-25 15:00:02,292.292 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d915d0>: Failed to establish a new connection: [Errno 111] Connection refused',))",)
[2026-08-25 15:00:02,389.389 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d915d0>: Failed to establish a new connection: [Errno 111] Connection refused',))
[2026-08-25 15:00:02,442.442 INFO    ] None
[2026-08-25 15:00:02,454.454 INFO    ] Checking for system updates...
[2026-08-25 15:00:02,718.718 INFO    ] 200
[2026-08-25 15:00:02,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:03,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:00:03,080.080 INFO    ] No update needed
[2026-08-25 15:00:03,083.083 INFO    ] Checking for camera pi updates...
[2026-08-25 15:00:03,251.251 INFO    ] 200
[2026-08-25 15:00:03,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:03,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:00:03,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:00:03,946.946 INFO    ] No camera update needed
[2026-08-25 15:00:03,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:00:03,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:00:03,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:00:04,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:00:06,079.079 INFO    ] ================================================
[2026-08-25 15:00:06,137.137 INFO    ] Launching Daemon at Tue Aug 25 15:00:06 IST 2026
[2026-08-25 15:00:06,152.152 INFO    ] ================================================
[2026-08-25 15:00:06,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:00:06
[2026-08-25 15:00:07,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:00:07,606.606 INFO    ] Initializing speech engine...
[2026-08-25 15:00:07,614.614 INFO    ] 2026-08-25 15:00:07
[2026-08-25 15:00:07,888.888 INFO    ] 2026-08-25 15:00:07
[2026-08-25 15:00:07,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:00:08,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:00:08,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:00:08,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:00:08,270.270 INFO    ] time= 25/08/2026 15:00:08
[2026-08-25 15:00:08,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:00:08,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:00:08,467.467 INFO    ] No existing commands found in stream
[2026-08-25 15:00:13,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:00:13,479.479 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 15:00:17,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:00:17,396.396 INFO    ] Checking for system updates...
[2026-08-25 15:00:17,432.432 INFO    ] 200
[2026-08-25 15:00:17,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:17,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:00:17,489.489 INFO    ] No update needed
[2026-08-25 15:00:17,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 15:00:17,524.524 INFO    ] 200
[2026-08-25 15:00:17,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:17,572.572 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:00:17,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:00:17,626.626 INFO    ] No camera update needed
[2026-08-25 15:00:17,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:00:17,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:00:17,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:00:17,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:00:19,682.682 INFO    ] ================================================
[2026-08-25 15:00:19,697.697 INFO    ] Launching Daemon at Tue Aug 25 15:00:19 IST 2026
[2026-08-25 15:00:19,708.708 INFO    ] ================================================
[2026-08-25 15:00:20,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:00:20
[2026-08-25 15:00:20,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:00:21,168.168 INFO    ] Initializing speech engine...
[2026-08-25 15:00:21,174.174 INFO    ] 2026-08-25 15:00:21
[2026-08-25 15:00:21,471.471 INFO    ] 2026-08-25 15:00:21
[2026-08-25 15:00:21,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:00:21,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:00:21,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:00:21,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:00:21,894.894 INFO    ] time= 25/08/2026 15:00:21
[2026-08-25 15:00:21,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:00:21,907.907 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:00:22,057.057 INFO    ] No existing commands found in stream
[2026-08-25 15:00:27,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:00:27,085.085 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 15:00:29,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:00:29,180.180 INFO    ] Checking for system updates...
[2026-08-25 15:00:29,216.216 INFO    ] 200
[2026-08-25 15:00:29,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:29,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:00:29,280.280 INFO    ] No update needed
[2026-08-25 15:00:29,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 15:00:29,319.319 INFO    ] 200
[2026-08-25 15:00:29,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:29,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:00:29,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:00:29,415.415 INFO    ] No camera update needed
[2026-08-25 15:00:29,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:00:29,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:00:29,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:00:29,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:00:31,472.472 INFO    ] ================================================
[2026-08-25 15:00:31,488.488 INFO    ] Launching Daemon at Tue Aug 25 15:00:31 IST 2026
[2026-08-25 15:00:31,498.498 INFO    ] ================================================
[2026-08-25 15:00:32,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:00:32
[2026-08-25 15:00:32,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:00:33,049.049 INFO    ] Initializing speech engine...
[2026-08-25 15:00:33,059.059 INFO    ] 2026-08-25 15:00:33
[2026-08-25 15:00:33,348.348 INFO    ] 2026-08-25 15:00:33
[2026-08-25 15:00:33,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:00:33,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:00:33,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:00:33,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:00:33,763.763 INFO    ] time= 25/08/2026 15:00:33
[2026-08-25 15:00:33,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:00:33,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:00:33,927.927 INFO    ] No existing commands found in stream
[2026-08-25 15:00:38,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:00:38,955.955 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 15:00:40,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:00:40,110.110 INFO    ] Checking for system updates...
[2026-08-25 15:00:40,145.145 INFO    ] 200
[2026-08-25 15:00:40,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:40,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:00:40,203.203 INFO    ] No update needed
[2026-08-25 15:00:40,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 15:00:40,238.238 INFO    ] 200
[2026-08-25 15:00:40,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:40,285.285 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:00:40,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:00:40,436.436 INFO    ] No camera update needed
[2026-08-25 15:00:40,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:00:40,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:00:40,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:00:40,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:00:42,490.490 INFO    ] ================================================
[2026-08-25 15:00:42,505.505 INFO    ] Launching Daemon at Tue Aug 25 15:00:42 IST 2026
[2026-08-25 15:00:42,516.516 INFO    ] ================================================
[2026-08-25 15:00:43,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:00:43
[2026-08-25 15:00:43,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:00:43,935.935 INFO    ] Initializing speech engine...
[2026-08-25 15:00:43,960.960 INFO    ] 2026-08-25 15:00:43
[2026-08-25 15:00:44,228.228 INFO    ] 2026-08-25 15:00:44
[2026-08-25 15:00:44,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:00:44,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:00:44,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:00:44,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:00:44,605.605 INFO    ] time= 25/08/2026 15:00:44
[2026-08-25 15:00:44,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:00:44,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:00:44,807.807 INFO    ] No existing commands found in stream
[2026-08-25 15:00:49,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:00:49,821.821 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 15:00:50,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:00:50,604.604 INFO    ] Checking for system updates...
[2026-08-25 15:00:50,639.639 INFO    ] 200
[2026-08-25 15:00:50,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:50,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:00:50,696.696 INFO    ] No update needed
[2026-08-25 15:00:50,699.699 INFO    ] Checking for camera pi updates...
[2026-08-25 15:00:50,732.732 INFO    ] 200
[2026-08-25 15:00:50,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:00:50,774.774 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:00:50,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:00:50,831.831 INFO    ] No camera update needed
[2026-08-25 15:00:50,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:00:50,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:00:50,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:00:50,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:00:52,887.887 INFO    ] ================================================
[2026-08-25 15:00:52,902.902 INFO    ] Launching Daemon at Tue Aug 25 15:00:52 IST 2026
[2026-08-25 15:00:52,912.912 INFO    ] ================================================
[2026-08-25 15:00:53,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:00:53
[2026-08-25 15:00:54,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:00:54,428.428 INFO    ] Initializing speech engine...
[2026-08-25 15:00:54,435.435 INFO    ] 2026-08-25 15:00:54
[2026-08-25 15:00:54,696.696 INFO    ] 2026-08-25 15:00:54
[2026-08-25 15:00:54,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:00:54,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:00:54,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:00:55,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:00:55,103.103 INFO    ] time= 25/08/2026 15:00:55
[2026-08-25 15:00:55,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:00:55,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:00:55,300.300 INFO    ] No existing commands found in stream
[2026-08-25 15:01:00,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:01:00,313.313 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 15:01:01,145.145 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:01:01,148.148 INFO    ] Checking for system updates...
[2026-08-25 15:01:01,187.187 INFO    ] 200
[2026-08-25 15:01:01,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:01,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:01:01,250.250 INFO    ] No update needed
[2026-08-25 15:01:01,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 15:01:01,323.323 INFO    ] 200
[2026-08-25 15:01:01,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:01,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:01:01,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:01:01,515.515 INFO    ] No camera update needed
[2026-08-25 15:01:01,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:01:01,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:01:01,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:01:01,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:01:03,583.583 INFO    ] ================================================
[2026-08-25 15:01:03,598.598 INFO    ] Launching Daemon at Tue Aug 25 15:01:03 IST 2026
[2026-08-25 15:01:03,609.609 INFO    ] ================================================
[2026-08-25 15:01:04,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:01:04
[2026-08-25 15:01:04,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:01:05,068.068 INFO    ] Initializing speech engine...
[2026-08-25 15:01:05,078.078 INFO    ] 2026-08-25 15:01:05
[2026-08-25 15:01:05,326.326 INFO    ] 2026-08-25 15:01:05
[2026-08-25 15:01:05,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:01:05,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:01:05,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:01:05,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:01:05,820.820 INFO    ] time= 25/08/2026 15:01:05
[2026-08-25 15:01:05,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:01:05,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:01:06,026.026 INFO    ] No existing commands found in stream
[2026-08-25 15:01:11,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:01:11,051.051 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 15:01:12,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:01:12,861.861 INFO    ] Checking for system updates...
[2026-08-25 15:01:12,898.898 INFO    ] 200
[2026-08-25 15:01:12,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:12,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:01:12,957.957 INFO    ] No update needed
[2026-08-25 15:01:12,960.960 INFO    ] Checking for camera pi updates...
[2026-08-25 15:01:12,994.994 INFO    ] 200
[2026-08-25 15:01:12,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:13,038.038 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:01:13,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:01:13,086.086 INFO    ] No camera update needed
[2026-08-25 15:01:13,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:01:13,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:01:13,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:01:13,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:01:15,145.145 INFO    ] ================================================
[2026-08-25 15:01:15,161.161 INFO    ] Launching Daemon at Tue Aug 25 15:01:15 IST 2026
[2026-08-25 15:01:15,173.173 INFO    ] ================================================
[2026-08-25 15:01:15,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:01:15
[2026-08-25 15:01:16,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:01:16,631.631 INFO    ] Initializing speech engine...
[2026-08-25 15:01:16,638.638 INFO    ] 2026-08-25 15:01:16
[2026-08-25 15:01:16,899.899 INFO    ] 2026-08-25 15:01:16
[2026-08-25 15:01:16,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:01:17,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:01:17,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:01:17,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:01:17,361.361 INFO    ] time= 25/08/2026 15:01:17
[2026-08-25 15:01:17,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:01:17,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:01:17,591.591 INFO    ] No existing commands found in stream
[2026-08-25 15:01:22,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:01:22,610.610 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 15:01:24,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:01:24,451.451 INFO    ] Checking for system updates...
[2026-08-25 15:01:24,486.486 INFO    ] 200
[2026-08-25 15:01:24,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:24,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:01:24,545.545 INFO    ] No update needed
[2026-08-25 15:01:24,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 15:01:24,584.584 INFO    ] 200
[2026-08-25 15:01:24,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:24,631.631 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:01:24,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:01:24,684.684 INFO    ] No camera update needed
[2026-08-25 15:01:24,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:01:24,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:01:24,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:01:24,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:01:26,740.740 INFO    ] ================================================
[2026-08-25 15:01:26,756.756 INFO    ] Launching Daemon at Tue Aug 25 15:01:26 IST 2026
[2026-08-25 15:01:26,766.766 INFO    ] ================================================
[2026-08-25 15:01:27,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:01:27
[2026-08-25 15:01:27,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:01:28,201.201 INFO    ] Initializing speech engine...
[2026-08-25 15:01:28,207.207 INFO    ] 2026-08-25 15:01:28
[2026-08-25 15:01:28,454.454 INFO    ] 2026-08-25 15:01:28
[2026-08-25 15:01:28,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:01:28,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:01:28,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:01:28,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:01:28,934.934 INFO    ] time= 25/08/2026 15:01:28
[2026-08-25 15:01:28,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:01:29,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:01:29,159.159 INFO    ] No existing commands found in stream
[2026-08-25 15:01:34,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:01:34,178.178 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 15:01:35,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:01:35,072.072 INFO    ] Checking for system updates...
[2026-08-25 15:01:35,111.111 INFO    ] 200
[2026-08-25 15:01:35,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:35,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:01:35,170.170 INFO    ] No update needed
[2026-08-25 15:01:35,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 15:01:35,206.206 INFO    ] 200
[2026-08-25 15:01:35,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:35,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:01:35,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:01:35,313.313 INFO    ] No camera update needed
[2026-08-25 15:01:35,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:01:35,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:01:35,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:01:35,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:01:37,373.373 INFO    ] ================================================
[2026-08-25 15:01:37,388.388 INFO    ] Launching Daemon at Tue Aug 25 15:01:37 IST 2026
[2026-08-25 15:01:37,398.398 INFO    ] ================================================
[2026-08-25 15:01:37,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:01:37
[2026-08-25 15:01:38,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:01:38,893.893 INFO    ] Initializing speech engine...
[2026-08-25 15:01:38,899.899 INFO    ] 2026-08-25 15:01:38
[2026-08-25 15:01:39,207.207 INFO    ] 2026-08-25 15:01:39
[2026-08-25 15:01:39,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:01:39,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:01:39,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:01:39,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:01:39,724.724 INFO    ] time= 25/08/2026 15:01:39
[2026-08-25 15:01:39,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:01:39,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:01:39,862.862 INFO    ] No existing commands found in stream
[2026-08-25 15:01:44,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:01:44,877.877 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 15:01:46,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:01:46,791.791 INFO    ] Checking for system updates...
[2026-08-25 15:01:46,827.827 INFO    ] 200
[2026-08-25 15:01:46,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:46,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:01:46,885.885 INFO    ] No update needed
[2026-08-25 15:01:46,887.887 INFO    ] Checking for camera pi updates...
[2026-08-25 15:01:46,920.920 INFO    ] 200
[2026-08-25 15:01:46,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:46,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:01:47,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:01:47,018.018 INFO    ] No camera update needed
[2026-08-25 15:01:47,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:01:47,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:01:47,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:01:47,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:01:49,073.073 INFO    ] ================================================
[2026-08-25 15:01:49,088.088 INFO    ] Launching Daemon at Tue Aug 25 15:01:49 IST 2026
[2026-08-25 15:01:49,099.099 INFO    ] ================================================
[2026-08-25 15:01:49,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:01:49
[2026-08-25 15:01:50,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:01:50,500.500 INFO    ] Initializing speech engine...
[2026-08-25 15:01:50,522.522 INFO    ] 2026-08-25 15:01:50
[2026-08-25 15:01:50,773.773 INFO    ] 2026-08-25 15:01:50
[2026-08-25 15:01:50,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:01:51,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:01:51,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:01:51,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:01:51,243.243 INFO    ] time= 25/08/2026 15:01:51
[2026-08-25 15:01:51,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:01:51,334.334 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:01:51,479.479 INFO    ] No existing commands found in stream
[2026-08-25 15:01:56,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:01:56,496.496 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 15:01:59,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:01:59,882.882 INFO    ] Checking for system updates...
[2026-08-25 15:01:59,917.917 INFO    ] 200
[2026-08-25 15:01:59,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:01:59,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:01:59,976.976 INFO    ] No update needed
[2026-08-25 15:01:59,978.978 INFO    ] Checking for camera pi updates...
[2026-08-25 15:02:00,018.018 INFO    ] 200
[2026-08-25 15:02:00,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:00,066.066 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:02:00,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:02:00,114.114 INFO    ] No camera update needed
[2026-08-25 15:02:00,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:02:00,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:02:00,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:02:00,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:02:02,170.170 INFO    ] ================================================
[2026-08-25 15:02:02,187.187 INFO    ] Launching Daemon at Tue Aug 25 15:02:02 IST 2026
[2026-08-25 15:02:02,204.204 INFO    ] ================================================
[2026-08-25 15:02:02,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:02:02
[2026-08-25 15:02:03,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:02:03,710.710 INFO    ] Initializing speech engine...
[2026-08-25 15:02:03,720.720 INFO    ] 2026-08-25 15:02:03
[2026-08-25 15:02:03,963.963 INFO    ] 2026-08-25 15:02:03
[2026-08-25 15:02:03,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:02:04,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:02:04,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:02:04,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:02:04,446.446 INFO    ] time= 25/08/2026 15:02:04
[2026-08-25 15:02:04,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:02:04,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:02:04,649.649 INFO    ] No existing commands found in stream
[2026-08-25 15:02:09,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:02:09,678.678 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 15:02:14,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:02:14,853.853 INFO    ] Checking for system updates...
[2026-08-25 15:02:14,889.889 INFO    ] 200
[2026-08-25 15:02:14,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:14,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:02:14,946.946 INFO    ] No update needed
[2026-08-25 15:02:14,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 15:02:14,982.982 INFO    ] 200
[2026-08-25 15:02:14,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:15,024.024 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:02:15,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:02:15,071.071 INFO    ] No camera update needed
[2026-08-25 15:02:15,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:02:15,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:02:15,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:02:15,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:02:17,134.134 INFO    ] ================================================
[2026-08-25 15:02:17,152.152 INFO    ] Launching Daemon at Tue Aug 25 15:02:17 IST 2026
[2026-08-25 15:02:17,164.164 INFO    ] ================================================
[2026-08-25 15:02:17,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:02:17
[2026-08-25 15:02:18,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:02:18,908.908 INFO    ] Initializing speech engine...
[2026-08-25 15:02:18,917.917 INFO    ] 2026-08-25 15:02:18
[2026-08-25 15:02:19,167.167 INFO    ] 2026-08-25 15:02:19
[2026-08-25 15:02:19,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:02:19,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:02:19,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:02:19,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:02:19,652.652 INFO    ] time= 25/08/2026 15:02:19
[2026-08-25 15:02:19,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:02:19,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:02:19,866.866 INFO    ] No existing commands found in stream
[2026-08-25 15:02:24,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:02:24,899.899 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 15:02:25,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:02:25,883.883 INFO    ] Checking for system updates...
[2026-08-25 15:02:25,918.918 INFO    ] 200
[2026-08-25 15:02:25,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:25,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:02:25,979.979 INFO    ] No update needed
[2026-08-25 15:02:25,981.981 INFO    ] Checking for camera pi updates...
[2026-08-25 15:02:26,019.019 INFO    ] 200
[2026-08-25 15:02:26,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:26,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:02:26,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:02:26,125.125 INFO    ] No camera update needed
[2026-08-25 15:02:26,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:02:26,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:02:26,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:02:26,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:02:28,182.182 INFO    ] ================================================
[2026-08-25 15:02:28,197.197 INFO    ] Launching Daemon at Tue Aug 25 15:02:28 IST 2026
[2026-08-25 15:02:28,208.208 INFO    ] ================================================
[2026-08-25 15:02:28,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:02:28
[2026-08-25 15:02:29,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:02:29,655.655 INFO    ] Initializing speech engine...
[2026-08-25 15:02:29,659.659 INFO    ] 2026-08-25 15:02:29
[2026-08-25 15:02:29,924.924 INFO    ] 2026-08-25 15:02:29
[2026-08-25 15:02:29,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:02:30,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:02:30,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:02:30,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:02:30,337.337 INFO    ] time= 25/08/2026 15:02:30
[2026-08-25 15:02:30,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:02:30,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:02:30,495.495 INFO    ] No existing commands found in stream
[2026-08-25 15:02:35,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:02:35,508.508 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 15:02:36,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:02:36,752.752 INFO    ] Checking for system updates...
[2026-08-25 15:02:36,789.789 INFO    ] 200
[2026-08-25 15:02:36,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:36,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:02:36,850.850 INFO    ] No update needed
[2026-08-25 15:02:36,853.853 INFO    ] Checking for camera pi updates...
[2026-08-25 15:02:36,903.903 INFO    ] 200
[2026-08-25 15:02:36,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:36,954.954 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:02:37,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:02:37,008.008 INFO    ] No camera update needed
[2026-08-25 15:02:37,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:02:37,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:02:37,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:02:37,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:02:39,064.064 INFO    ] ================================================
[2026-08-25 15:02:39,081.081 INFO    ] Launching Daemon at Tue Aug 25 15:02:39 IST 2026
[2026-08-25 15:02:39,093.093 INFO    ] ================================================
[2026-08-25 15:02:39,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:02:39
[2026-08-25 15:02:40,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:02:40,556.556 INFO    ] Initializing speech engine...
[2026-08-25 15:02:40,564.564 INFO    ] 2026-08-25 15:02:40
[2026-08-25 15:02:40,822.822 INFO    ] 2026-08-25 15:02:40
[2026-08-25 15:02:40,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:02:41,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:02:41,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:02:41,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:02:41,289.289 INFO    ] time= 25/08/2026 15:02:41
[2026-08-25 15:02:41,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:02:41,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:02:41,518.518 INFO    ] No existing commands found in stream
[2026-08-25 15:02:46,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:02:46,537.537 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 15:02:48,916.916 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:02:48,920.920 INFO    ] Checking for system updates...
[2026-08-25 15:02:48,968.968 INFO    ] 200
[2026-08-25 15:02:48,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:49,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:02:49,033.033 INFO    ] No update needed
[2026-08-25 15:02:49,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 15:02:49,073.073 INFO    ] 200
[2026-08-25 15:02:49,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:02:49,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:02:49,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:02:49,278.278 INFO    ] No camera update needed
[2026-08-25 15:02:49,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:02:49,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:02:49,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:02:49,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:02:51,338.338 INFO    ] ================================================
[2026-08-25 15:02:51,354.354 INFO    ] Launching Daemon at Tue Aug 25 15:02:51 IST 2026
[2026-08-25 15:02:51,366.366 INFO    ] ================================================
[2026-08-25 15:02:51,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:02:51
[2026-08-25 15:02:52,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:02:52,795.795 INFO    ] Initializing speech engine...
[2026-08-25 15:02:52,805.805 INFO    ] 2026-08-25 15:02:52
[2026-08-25 15:02:53,050.050 INFO    ] 2026-08-25 15:02:53
[2026-08-25 15:02:53,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:02:53,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:02:53,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:02:53,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:02:53,416.416 INFO    ] time= 25/08/2026 15:02:53
[2026-08-25 15:02:53,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:02:53,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:02:53,613.613 INFO    ] No existing commands found in stream
[2026-08-25 15:02:58,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:02:58,626.626 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 15:03:01,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:03:01,332.332 INFO    ] Checking for system updates...
[2026-08-25 15:03:01,402.402 INFO    ] 200
[2026-08-25 15:03:01,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:01,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:01,508.508 INFO    ] No update needed
[2026-08-25 15:03:01,512.512 INFO    ] Checking for camera pi updates...
[2026-08-25 15:03:01,563.563 INFO    ] 200
[2026-08-25 15:03:01,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:01,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:03:01,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:01,732.732 INFO    ] No camera update needed
[2026-08-25 15:03:01,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:03:01,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:03:01,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:03:01,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:03:03,797.797 INFO    ] ================================================
[2026-08-25 15:03:03,813.813 INFO    ] Launching Daemon at Tue Aug 25 15:03:03 IST 2026
[2026-08-25 15:03:03,825.825 INFO    ] ================================================
[2026-08-25 15:03:04,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:03:04
[2026-08-25 15:03:04,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:03:05,252.252 INFO    ] Initializing speech engine...
[2026-08-25 15:03:05,255.255 INFO    ] 2026-08-25 15:03:05
[2026-08-25 15:03:05,562.562 INFO    ] 2026-08-25 15:03:05
[2026-08-25 15:03:05,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:03:05,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:03:05,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:03:06,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:03:06,057.057 INFO    ] time= 25/08/2026 15:03:06
[2026-08-25 15:03:06,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:03:06,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:03:06,300.300 INFO    ] No existing commands found in stream
[2026-08-25 15:03:11,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:03:11,328.328 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 15:03:13,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:03:14,001.001 INFO    ] Checking for system updates...
[2026-08-25 15:03:14,041.041 INFO    ] 200
[2026-08-25 15:03:14,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:14,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:14,099.099 INFO    ] No update needed
[2026-08-25 15:03:14,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 15:03:14,134.134 INFO    ] 200
[2026-08-25 15:03:14,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:14,191.191 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:03:14,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:14,245.245 INFO    ] No camera update needed
[2026-08-25 15:03:14,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:03:14,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:03:14,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:03:14,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:03:16,302.302 INFO    ] ================================================
[2026-08-25 15:03:16,317.317 INFO    ] Launching Daemon at Tue Aug 25 15:03:16 IST 2026
[2026-08-25 15:03:16,328.328 INFO    ] ================================================
[2026-08-25 15:03:16,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:03:16
[2026-08-25 15:03:17,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:03:17,771.771 INFO    ] Initializing speech engine...
[2026-08-25 15:03:17,786.786 INFO    ] 2026-08-25 15:03:17
[2026-08-25 15:03:18,043.043 INFO    ] 2026-08-25 15:03:18
[2026-08-25 15:03:18,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:03:18,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:03:18,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:03:18,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:03:18,419.419 INFO    ] time= 25/08/2026 15:03:18
[2026-08-25 15:03:18,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:03:18,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:03:18,600.600 INFO    ] No existing commands found in stream
[2026-08-25 15:03:23,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:03:23,628.628 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 15:03:24,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:03:24,237.237 INFO    ] Checking for system updates...
[2026-08-25 15:03:24,275.275 INFO    ] 200
[2026-08-25 15:03:24,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:24,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:24,333.333 INFO    ] No update needed
[2026-08-25 15:03:24,336.336 INFO    ] Checking for camera pi updates...
[2026-08-25 15:03:24,370.370 INFO    ] 200
[2026-08-25 15:03:24,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:24,415.415 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:03:24,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:24,467.467 INFO    ] No camera update needed
[2026-08-25 15:03:24,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:03:24,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:03:24,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:03:24,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:03:26,526.526 INFO    ] ================================================
[2026-08-25 15:03:26,542.542 INFO    ] Launching Daemon at Tue Aug 25 15:03:26 IST 2026
[2026-08-25 15:03:26,553.553 INFO    ] ================================================
[2026-08-25 15:03:27,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:03:27
[2026-08-25 15:03:27,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:03:28,011.011 INFO    ] Initializing speech engine...
[2026-08-25 15:03:28,020.020 INFO    ] 2026-08-25 15:03:28
[2026-08-25 15:03:28,293.293 INFO    ] 2026-08-25 15:03:28
[2026-08-25 15:03:28,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:03:28,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:03:28,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:03:28,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:03:28,770.770 INFO    ] time= 25/08/2026 15:03:28
[2026-08-25 15:03:28,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:03:28,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:03:28,978.978 INFO    ] No existing commands found in stream
[2026-08-25 15:03:33,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:03:34,000.000 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 15:03:35,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:03:35,108.108 INFO    ] Checking for system updates...
[2026-08-25 15:03:35,147.147 INFO    ] 200
[2026-08-25 15:03:35,150.150 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:35,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:35,207.207 INFO    ] No update needed
[2026-08-25 15:03:35,210.210 INFO    ] Checking for camera pi updates...
[2026-08-25 15:03:35,248.248 INFO    ] 200
[2026-08-25 15:03:35,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:35,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:03:35,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:03:35,341.341 INFO    ] No camera update needed
[2026-08-25 15:03:35,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:03:35,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:03:35,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:03:35,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:03:37,398.398 INFO    ] ================================================
[2026-08-25 15:03:37,413.413 INFO    ] Launching Daemon at Tue Aug 25 15:03:37 IST 2026
[2026-08-25 15:03:37,426.426 INFO    ] ================================================
[2026-08-25 15:03:37,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:03:37
[2026-08-25 15:03:38,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:03:38,825.825 INFO    ] Initializing speech engine...
[2026-08-25 15:03:38,848.848 INFO    ] 2026-08-25 15:03:38
[2026-08-25 15:03:39,099.099 INFO    ] 2026-08-25 15:03:39
[2026-08-25 15:03:39,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:03:39,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:03:39,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:03:39,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:03:39,565.565 INFO    ] time= 25/08/2026 15:03:39
[2026-08-25 15:03:39,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:03:39,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:03:39,800.800 INFO    ] No existing commands found in stream
[2026-08-25 15:03:44,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:03:44,823.823 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 15:03:46,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:03:46,068.068 INFO    ] Checking for system updates...
[2026-08-25 15:03:46,107.107 INFO    ] 200
[2026-08-25 15:03:46,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:46,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:03:46,170.170 INFO    ] No update needed
[2026-08-25 15:03:46,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 15:03:46,207.207 INFO    ] 200
[2026-08-25 15:03:46,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:46,249.249 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:03:46,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:03:46,297.297 INFO    ] No camera update needed
[2026-08-25 15:03:46,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:03:46,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:03:46,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:03:46,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:03:48,353.353 INFO    ] ================================================
[2026-08-25 15:03:48,369.369 INFO    ] Launching Daemon at Tue Aug 25 15:03:48 IST 2026
[2026-08-25 15:03:48,380.380 INFO    ] ================================================
[2026-08-25 15:03:48,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:03:48
[2026-08-25 15:03:49,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:03:49,801.801 INFO    ] Initializing speech engine...
[2026-08-25 15:03:49,810.810 INFO    ] 2026-08-25 15:03:49
[2026-08-25 15:03:50,055.055 INFO    ] 2026-08-25 15:03:50
[2026-08-25 15:03:50,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:03:50,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:03:50,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:03:50,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:03:50,521.521 INFO    ] time= 25/08/2026 15:03:50
[2026-08-25 15:03:50,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:03:50,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:03:50,756.756 INFO    ] No existing commands found in stream
[2026-08-25 15:03:55,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:03:55,778.778 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 15:03:57,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:03:57,218.218 INFO    ] Checking for system updates...
[2026-08-25 15:03:57,253.253 INFO    ] 200
[2026-08-25 15:03:57,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:57,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:03:57,325.325 INFO    ] No update needed
[2026-08-25 15:03:57,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 15:03:57,361.361 INFO    ] 200
[2026-08-25 15:03:57,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:03:57,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:03:57,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:03:57,455.455 INFO    ] No camera update needed
[2026-08-25 15:03:57,458.458 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:03:57,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:03:57,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:03:57,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:03:59,516.516 INFO    ] ================================================
[2026-08-25 15:03:59,532.532 INFO    ] Launching Daemon at Tue Aug 25 15:03:59 IST 2026
[2026-08-25 15:03:59,544.544 INFO    ] ================================================
[2026-08-25 15:04:00,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:04:00
[2026-08-25 15:04:00,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:04:01,015.015 INFO    ] Initializing speech engine...
[2026-08-25 15:04:01,024.024 INFO    ] 2026-08-25 15:04:01
[2026-08-25 15:04:01,299.299 INFO    ] 2026-08-25 15:04:01
[2026-08-25 15:04:01,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:04:01,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:04:01,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:04:01,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:04:01,820.820 INFO    ] time= 25/08/2026 15:04:01
[2026-08-25 15:04:01,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:04:01,846.846 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:04:01,945.945 INFO    ] No existing commands found in stream
[2026-08-25 15:04:06,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:04:06,979.979 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 15:04:09,358.358 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:04:09,361.361 INFO    ] Checking for system updates...
[2026-08-25 15:04:09,397.397 INFO    ] 200
[2026-08-25 15:04:09,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:09,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:04:09,453.453 INFO    ] No update needed
[2026-08-25 15:04:09,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 15:04:09,488.488 INFO    ] 200
[2026-08-25 15:04:09,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:09,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:04:09,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:04:09,584.584 INFO    ] No camera update needed
[2026-08-25 15:04:09,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:04:09,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:04:09,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:04:09,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:04:11,640.640 INFO    ] ================================================
[2026-08-25 15:04:11,655.655 INFO    ] Launching Daemon at Tue Aug 25 15:04:11 IST 2026
[2026-08-25 15:04:11,666.666 INFO    ] ================================================
[2026-08-25 15:04:12,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:04:12
[2026-08-25 15:04:12,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:04:13,185.185 INFO    ] Initializing speech engine...
[2026-08-25 15:04:13,197.197 INFO    ] 2026-08-25 15:04:13
[2026-08-25 15:04:13,460.460 INFO    ] 2026-08-25 15:04:13
[2026-08-25 15:04:13,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:04:13,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:04:13,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:04:13,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:04:13,875.875 INFO    ] time= 25/08/2026 15:04:13
[2026-08-25 15:04:13,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:04:13,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:04:14,065.065 INFO    ] No existing commands found in stream
[2026-08-25 15:04:19,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:04:19,093.093 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 15:04:22,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:04:22,800.800 INFO    ] Checking for system updates...
[2026-08-25 15:04:22,835.835 INFO    ] 200
[2026-08-25 15:04:22,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:22,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:04:22,896.896 INFO    ] No update needed
[2026-08-25 15:04:22,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 15:04:22,931.931 INFO    ] 200
[2026-08-25 15:04:22,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:22,975.975 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:04:23,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:04:23,052.052 INFO    ] No camera update needed
[2026-08-25 15:04:23,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:04:23,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:04:23,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:04:23,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:04:25,109.109 INFO    ] ================================================
[2026-08-25 15:04:25,124.124 INFO    ] Launching Daemon at Tue Aug 25 15:04:25 IST 2026
[2026-08-25 15:04:25,136.136 INFO    ] ================================================
[2026-08-25 15:04:25,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:04:25
[2026-08-25 15:04:26,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:04:26,754.754 INFO    ] Initializing speech engine...
[2026-08-25 15:04:26,764.764 INFO    ] 2026-08-25 15:04:26
[2026-08-25 15:04:27,067.067 INFO    ] 2026-08-25 15:04:27
[2026-08-25 15:04:27,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:04:27,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:04:27,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:04:27,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:04:27,519.519 INFO    ] time= 25/08/2026 15:04:27
[2026-08-25 15:04:27,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:04:27,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:04:27,722.722 INFO    ] No existing commands found in stream
[2026-08-25 15:04:32,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:04:32,740.740 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 15:04:37,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:04:37,082.082 INFO    ] Checking for system updates...
[2026-08-25 15:04:37,117.117 INFO    ] 200
[2026-08-25 15:04:37,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:37,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:04:37,185.185 INFO    ] No update needed
[2026-08-25 15:04:37,187.187 INFO    ] Checking for camera pi updates...
[2026-08-25 15:04:37,220.220 INFO    ] 200
[2026-08-25 15:04:37,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:37,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:04:37,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:04:37,319.319 INFO    ] No camera update needed
[2026-08-25 15:04:37,321.321 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:04:37,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:04:37,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:04:37,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:04:39,375.375 INFO    ] ================================================
[2026-08-25 15:04:39,391.391 INFO    ] Launching Daemon at Tue Aug 25 15:04:39 IST 2026
[2026-08-25 15:04:39,403.403 INFO    ] ================================================
[2026-08-25 15:04:40,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:04:40
[2026-08-25 15:04:40,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:04:41,131.131 INFO    ] Initializing speech engine...
[2026-08-25 15:04:41,146.146 INFO    ] 2026-08-25 15:04:41
[2026-08-25 15:04:41,430.430 INFO    ] 2026-08-25 15:04:41
[2026-08-25 15:04:41,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:04:41,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:04:41,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:04:41,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:04:41,951.951 INFO    ] time= 25/08/2026 15:04:41
[2026-08-25 15:04:42,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:04:42,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:04:42,156.156 INFO    ] No existing commands found in stream
[2026-08-25 15:04:47,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:04:47,178.178 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 15:04:48,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:04:48,652.652 INFO    ] Checking for system updates...
[2026-08-25 15:04:48,689.689 INFO    ] 200
[2026-08-25 15:04:48,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:48,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:04:48,753.753 INFO    ] No update needed
[2026-08-25 15:04:48,756.756 INFO    ] Checking for camera pi updates...
[2026-08-25 15:04:48,791.791 INFO    ] 200
[2026-08-25 15:04:48,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:04:48,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:04:48,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:04:48,901.901 INFO    ] No camera update needed
[2026-08-25 15:04:48,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:04:48,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:04:48,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:04:48,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:04:50,959.959 INFO    ] ================================================
[2026-08-25 15:04:50,975.975 INFO    ] Launching Daemon at Tue Aug 25 15:04:50 IST 2026
[2026-08-25 15:04:50,986.986 INFO    ] ================================================
[2026-08-25 15:04:51,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:04:51
[2026-08-25 15:04:52,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:04:52,595.595 INFO    ] Initializing speech engine...
[2026-08-25 15:04:52,605.605 INFO    ] 2026-08-25 15:04:52
[2026-08-25 15:04:52,910.910 INFO    ] 2026-08-25 15:04:52
[2026-08-25 15:04:52,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:04:53,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:04:53,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:04:53,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:04:53,419.419 INFO    ] time= 25/08/2026 15:04:53
[2026-08-25 15:04:53,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:04:53,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:04:53,582.582 INFO    ] No existing commands found in stream
[2026-08-25 15:04:58,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:04:58,612.612 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 15:05:01,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:05:01,764.764 INFO    ] Checking for system updates...
[2026-08-25 15:05:01,876.876 INFO    ] 200
[2026-08-25 15:05:01,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:02,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:02,021.021 INFO    ] No update needed
[2026-08-25 15:05:02,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 15:05:02,081.081 INFO    ] 200
[2026-08-25 15:05:02,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:02,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:05:02,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:02,314.314 INFO    ] No camera update needed
[2026-08-25 15:05:02,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:05:02,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:05:02,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:05:02,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:05:04,380.380 INFO    ] ================================================
[2026-08-25 15:05:04,396.396 INFO    ] Launching Daemon at Tue Aug 25 15:05:04 IST 2026
[2026-08-25 15:05:04,407.407 INFO    ] ================================================
[2026-08-25 15:05:04,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:05:04
[2026-08-25 15:05:05,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:05:05,831.831 INFO    ] Initializing speech engine...
[2026-08-25 15:05:05,844.844 INFO    ] 2026-08-25 15:05:05
[2026-08-25 15:05:06,094.094 INFO    ] 2026-08-25 15:05:06
[2026-08-25 15:05:06,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:05:06,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:05:06,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:05:06,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:05:06,510.510 INFO    ] time= 25/08/2026 15:05:06
[2026-08-25 15:05:06,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:05:06,588.588 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:05:06,700.700 INFO    ] No existing commands found in stream
[2026-08-25 15:05:11,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:05:11,728.728 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 15:05:15,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:05:15,865.865 INFO    ] Checking for system updates...
[2026-08-25 15:05:15,901.901 INFO    ] 200
[2026-08-25 15:05:15,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:15,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:15,960.960 INFO    ] No update needed
[2026-08-25 15:05:15,962.962 INFO    ] Checking for camera pi updates...
[2026-08-25 15:05:15,996.996 INFO    ] 200
[2026-08-25 15:05:15,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:16,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:05:16,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:16,100.100 INFO    ] No camera update needed
[2026-08-25 15:05:16,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:05:16,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:05:16,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:05:16,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:05:18,155.155 INFO    ] ================================================
[2026-08-25 15:05:18,171.171 INFO    ] Launching Daemon at Tue Aug 25 15:05:18 IST 2026
[2026-08-25 15:05:18,182.182 INFO    ] ================================================
[2026-08-25 15:05:18,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:05:18
[2026-08-25 15:05:19,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:05:19,633.633 INFO    ] Initializing speech engine...
[2026-08-25 15:05:19,639.639 INFO    ] 2026-08-25 15:05:19
[2026-08-25 15:05:19,886.886 INFO    ] 2026-08-25 15:05:19
[2026-08-25 15:05:19,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:05:20,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:05:20,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:05:20,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:05:20,309.309 INFO    ] time= 25/08/2026 15:05:20
[2026-08-25 15:05:20,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:05:20,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:05:20,497.497 INFO    ] No existing commands found in stream
[2026-08-25 15:05:25,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:05:25,511.511 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 15:05:28,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:05:28,197.197 INFO    ] Checking for system updates...
[2026-08-25 15:05:28,233.233 INFO    ] 200
[2026-08-25 15:05:28,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:28,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:28,294.294 INFO    ] No update needed
[2026-08-25 15:05:28,297.297 INFO    ] Checking for camera pi updates...
[2026-08-25 15:05:28,331.331 INFO    ] 200
[2026-08-25 15:05:28,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:28,375.375 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:05:28,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:28,423.423 INFO    ] No camera update needed
[2026-08-25 15:05:28,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:05:28,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:05:28,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:05:28,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:05:30,481.481 INFO    ] ================================================
[2026-08-25 15:05:30,501.501 INFO    ] Launching Daemon at Tue Aug 25 15:05:30 IST 2026
[2026-08-25 15:05:30,516.516 INFO    ] ================================================
[2026-08-25 15:05:31,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:05:31
[2026-08-25 15:05:31,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:05:32,008.008 INFO    ] Initializing speech engine...
[2026-08-25 15:05:32,016.016 INFO    ] 2026-08-25 15:05:32
[2026-08-25 15:05:32,293.293 INFO    ] 2026-08-25 15:05:32
[2026-08-25 15:05:32,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:05:32,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:05:32,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:05:32,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:05:32,714.714 INFO    ] time= 25/08/2026 15:05:32
[2026-08-25 15:05:32,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:05:32,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:05:32,924.924 INFO    ] No existing commands found in stream
[2026-08-25 15:05:37,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:05:37,939.939 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 15:05:41,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:05:41,629.629 INFO    ] Checking for system updates...
[2026-08-25 15:05:41,671.671 INFO    ] 200
[2026-08-25 15:05:41,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:41,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:41,729.729 INFO    ] No update needed
[2026-08-25 15:05:41,732.732 INFO    ] Checking for camera pi updates...
[2026-08-25 15:05:41,771.771 INFO    ] 200
[2026-08-25 15:05:41,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:41,813.813 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:05:41,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:41,863.863 INFO    ] No camera update needed
[2026-08-25 15:05:41,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:05:41,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:05:41,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:05:41,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:05:43,930.930 INFO    ] ================================================
[2026-08-25 15:05:43,946.946 INFO    ] Launching Daemon at Tue Aug 25 15:05:43 IST 2026
[2026-08-25 15:05:43,958.958 INFO    ] ================================================
[2026-08-25 15:05:44,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:05:44
[2026-08-25 15:05:45,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:05:45,465.465 INFO    ] Initializing speech engine...
[2026-08-25 15:05:45,477.477 INFO    ] 2026-08-25 15:05:45
[2026-08-25 15:05:45,729.729 INFO    ] 2026-08-25 15:05:45
[2026-08-25 15:05:45,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:05:45,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:05:45,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:05:46,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:05:46,106.106 INFO    ] time= 25/08/2026 15:05:46
[2026-08-25 15:05:46,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:05:46,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:05:46,279.279 INFO    ] No existing commands found in stream
[2026-08-25 15:05:51,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:05:51,307.307 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 15:05:54,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:05:54,997.997 INFO    ] Checking for system updates...
[2026-08-25 15:05:55,034.034 INFO    ] 200
[2026-08-25 15:05:55,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:55,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:55,101.101 INFO    ] No update needed
[2026-08-25 15:05:55,104.104 INFO    ] Checking for camera pi updates...
[2026-08-25 15:05:55,139.139 INFO    ] 200
[2026-08-25 15:05:55,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:05:55,185.185 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:05:55,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:05:55,238.238 INFO    ] No camera update needed
[2026-08-25 15:05:55,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:05:55,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:05:55,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:05:55,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:05:57,299.299 INFO    ] ================================================
[2026-08-25 15:05:57,314.314 INFO    ] Launching Daemon at Tue Aug 25 15:05:57 IST 2026
[2026-08-25 15:05:57,325.325 INFO    ] ================================================
[2026-08-25 15:05:57,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:05:57
[2026-08-25 15:05:58,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:05:58,781.781 INFO    ] Initializing speech engine...
[2026-08-25 15:05:58,791.791 INFO    ] 2026-08-25 15:05:58
[2026-08-25 15:05:59,053.053 INFO    ] 2026-08-25 15:05:59
[2026-08-25 15:05:59,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:05:59,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:05:59,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:05:59,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:05:59,571.571 INFO    ] time= 25/08/2026 15:05:59
[2026-08-25 15:05:59,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:05:59,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:05:59,733.733 INFO    ] No existing commands found in stream
[2026-08-25 15:06:04,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:06:04,760.760 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 15:06:06,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:06:06,407.407 INFO    ] Checking for system updates...
[2026-08-25 15:06:06,442.442 INFO    ] 200
[2026-08-25 15:06:06,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:06,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:06:06,507.507 INFO    ] No update needed
[2026-08-25 15:06:06,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 15:06:06,547.547 INFO    ] 200
[2026-08-25 15:06:06,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:06,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:06:06,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:06:06,649.649 INFO    ] No camera update needed
[2026-08-25 15:06:06,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:06:06,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:06:06,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:06:06,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:06:08,705.705 INFO    ] ================================================
[2026-08-25 15:06:08,720.720 INFO    ] Launching Daemon at Tue Aug 25 15:06:08 IST 2026
[2026-08-25 15:06:08,731.731 INFO    ] ================================================
[2026-08-25 15:06:09,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:06:09
[2026-08-25 15:06:09,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:06:10,192.192 INFO    ] Initializing speech engine...
[2026-08-25 15:06:10,201.201 INFO    ] 2026-08-25 15:06:10
[2026-08-25 15:06:10,468.468 INFO    ] 2026-08-25 15:06:10
[2026-08-25 15:06:10,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:06:11,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:06:11,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:06:11,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:06:11,855.855 INFO    ] time= 25/08/2026 15:06:11
[2026-08-25 15:06:11,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:06:11,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:06:11,972.972 INFO    ] No existing commands found in stream
[2026-08-25 15:06:16,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:06:17,000.000 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 15:06:18,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:06:18,401.401 INFO    ] Checking for system updates...
[2026-08-25 15:06:18,437.437 INFO    ] 200
[2026-08-25 15:06:18,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:18,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:06:18,503.503 INFO    ] No update needed
[2026-08-25 15:06:18,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 15:06:18,539.539 INFO    ] 200
[2026-08-25 15:06:18,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:18,585.585 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:06:18,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:06:18,642.642 INFO    ] No camera update needed
[2026-08-25 15:06:18,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:06:18,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:06:18,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:06:18,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:06:20,696.696 INFO    ] ================================================
[2026-08-25 15:06:20,712.712 INFO    ] Launching Daemon at Tue Aug 25 15:06:20 IST 2026
[2026-08-25 15:06:20,723.723 INFO    ] ================================================
[2026-08-25 15:06:21,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:06:21
[2026-08-25 15:06:21,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:06:22,136.136 INFO    ] Initializing speech engine...
[2026-08-25 15:06:22,142.142 INFO    ] 2026-08-25 15:06:22
[2026-08-25 15:06:22,433.433 INFO    ] 2026-08-25 15:06:22
[2026-08-25 15:06:22,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:06:22,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:06:22,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:06:22,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:06:22,848.848 INFO    ] time= 25/08/2026 15:06:22
[2026-08-25 15:06:22,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:06:22,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:06:23,025.025 INFO    ] No existing commands found in stream
[2026-08-25 15:06:28,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:06:28,049.049 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 15:06:28,683.683 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:06:28,686.686 INFO    ] Checking for system updates...
[2026-08-25 15:06:28,723.723 INFO    ] 200
[2026-08-25 15:06:28,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:28,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:06:28,786.786 INFO    ] No update needed
[2026-08-25 15:06:28,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 15:06:28,825.825 INFO    ] 200
[2026-08-25 15:06:28,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:28,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:06:28,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:06:28,944.944 INFO    ] No camera update needed
[2026-08-25 15:06:28,947.947 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:06:28,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:06:28,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:06:28,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:06:31,999.999 INFO    ] ================================================
[2026-08-25 15:06:31,014.014 INFO    ] Launching Daemon at Tue Aug 25 15:06:31 IST 2026
[2026-08-25 15:06:31,024.024 INFO    ] ================================================
[2026-08-25 15:06:31,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:06:31
[2026-08-25 15:06:32,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:06:32,555.555 INFO    ] Initializing speech engine...
[2026-08-25 15:06:32,564.564 INFO    ] 2026-08-25 15:06:32
[2026-08-25 15:06:32,834.834 INFO    ] 2026-08-25 15:06:32
[2026-08-25 15:06:32,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:06:33,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:06:33,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:06:33,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:06:33,326.326 INFO    ] time= 25/08/2026 15:06:33
[2026-08-25 15:06:33,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:06:33,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:06:33,539.539 INFO    ] No existing commands found in stream
[2026-08-25 15:06:38,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:06:38,568.568 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 15:06:41,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:06:41,431.431 INFO    ] Checking for system updates...
[2026-08-25 15:06:41,470.470 INFO    ] 200
[2026-08-25 15:06:41,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:41,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:06:41,531.531 INFO    ] No update needed
[2026-08-25 15:06:41,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 15:06:41,571.571 INFO    ] 200
[2026-08-25 15:06:41,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:41,621.621 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:06:41,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:06:41,685.685 INFO    ] No camera update needed
[2026-08-25 15:06:41,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:06:41,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:06:41,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:06:41,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:06:43,744.744 INFO    ] ================================================
[2026-08-25 15:06:43,760.760 INFO    ] Launching Daemon at Tue Aug 25 15:06:43 IST 2026
[2026-08-25 15:06:43,770.770 INFO    ] ================================================
[2026-08-25 15:06:44,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:06:44
[2026-08-25 15:06:45,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:06:45,367.367 INFO    ] Initializing speech engine...
[2026-08-25 15:06:45,376.376 INFO    ] 2026-08-25 15:06:45
[2026-08-25 15:06:45,660.660 INFO    ] 2026-08-25 15:06:45
[2026-08-25 15:06:45,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:06:45,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:06:45,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:06:46,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:06:46,196.196 INFO    ] time= 25/08/2026 15:06:46
[2026-08-25 15:06:46,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:06:46,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:06:46,370.370 INFO    ] No existing commands found in stream
[2026-08-25 15:06:51,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:06:51,411.411 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 15:06:54,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:06:54,828.828 INFO    ] Checking for system updates...
[2026-08-25 15:06:54,868.868 INFO    ] 200
[2026-08-25 15:06:54,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:54,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:06:54,927.927 INFO    ] No update needed
[2026-08-25 15:06:54,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 15:06:54,967.967 INFO    ] 200
[2026-08-25 15:06:54,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:06:55,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:06:55,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:06:55,073.073 INFO    ] No camera update needed
[2026-08-25 15:06:55,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:06:55,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:06:55,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:06:55,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:06:57,132.132 INFO    ] ================================================
[2026-08-25 15:06:57,147.147 INFO    ] Launching Daemon at Tue Aug 25 15:06:57 IST 2026
[2026-08-25 15:06:57,157.157 INFO    ] ================================================
[2026-08-25 15:06:57,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:06:57
[2026-08-25 15:06:58,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:06:58,586.586 INFO    ] Initializing speech engine...
[2026-08-25 15:06:58,602.602 INFO    ] 2026-08-25 15:06:58
[2026-08-25 15:06:58,877.877 INFO    ] 2026-08-25 15:06:58
[2026-08-25 15:06:58,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:06:59,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:06:59,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:06:59,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:06:59,418.418 INFO    ] time= 25/08/2026 15:06:59
[2026-08-25 15:06:59,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:06:59,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:06:59,574.574 INFO    ] No existing commands found in stream
[2026-08-25 15:07:04,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:07:04,589.589 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 15:07:08,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:07:08,952.952 INFO    ] Checking for system updates...
[2026-08-25 15:07:08,991.991 INFO    ] 200
[2026-08-25 15:07:08,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:09,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:07:09,070.070 INFO    ] No update needed
[2026-08-25 15:07:09,073.073 INFO    ] Checking for camera pi updates...
[2026-08-25 15:07:09,121.121 INFO    ] 200
[2026-08-25 15:07:09,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:09,173.173 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:07:09,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:07:09,318.318 INFO    ] No camera update needed
[2026-08-25 15:07:09,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:07:09,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:07:09,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:07:09,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:07:11,374.374 INFO    ] ================================================
[2026-08-25 15:07:11,389.389 INFO    ] Launching Daemon at Tue Aug 25 15:07:11 IST 2026
[2026-08-25 15:07:11,399.399 INFO    ] ================================================
[2026-08-25 15:07:11,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:07:11
[2026-08-25 15:07:12,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:07:12,819.819 INFO    ] Initializing speech engine...
[2026-08-25 15:07:12,834.834 INFO    ] 2026-08-25 15:07:12
[2026-08-25 15:07:13,101.101 INFO    ] 2026-08-25 15:07:13
[2026-08-25 15:07:13,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:07:13,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:07:13,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:07:13,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:07:13,526.526 INFO    ] time= 25/08/2026 15:07:13
[2026-08-25 15:07:13,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:07:13,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:07:13,724.724 INFO    ] No existing commands found in stream
[2026-08-25 15:07:18,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:07:18,757.757 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 15:07:19,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:07:19,224.224 INFO    ] Checking for system updates...
[2026-08-25 15:07:19,260.260 INFO    ] 200
[2026-08-25 15:07:19,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:19,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:07:19,317.317 INFO    ] No update needed
[2026-08-25 15:07:19,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 15:07:19,353.353 INFO    ] 200
[2026-08-25 15:07:19,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:19,401.401 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:07:19,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:07:19,461.461 INFO    ] No camera update needed
[2026-08-25 15:07:19,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:07:19,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:07:19,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:07:19,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:07:21,517.517 INFO    ] ================================================
[2026-08-25 15:07:21,532.532 INFO    ] Launching Daemon at Tue Aug 25 15:07:21 IST 2026
[2026-08-25 15:07:21,543.543 INFO    ] ================================================
[2026-08-25 15:07:22,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:07:22
[2026-08-25 15:07:22,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:07:22,955.955 INFO    ] Initializing speech engine...
[2026-08-25 15:07:22,963.963 INFO    ] 2026-08-25 15:07:22
[2026-08-25 15:07:23,209.209 INFO    ] 2026-08-25 15:07:23
[2026-08-25 15:07:23,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:07:23,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:07:23,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:07:23,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:07:23,672.672 INFO    ] time= 25/08/2026 15:07:23
[2026-08-25 15:07:23,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:07:23,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:07:23,937.937 INFO    ] No existing commands found in stream
[2026-08-25 15:07:28,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:07:28,952.952 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 15:07:29,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:07:29,763.763 INFO    ] Checking for system updates...
[2026-08-25 15:07:29,800.800 INFO    ] 200
[2026-08-25 15:07:29,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:29,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:07:29,862.862 INFO    ] No update needed
[2026-08-25 15:07:29,865.865 INFO    ] Checking for camera pi updates...
[2026-08-25 15:07:29,899.899 INFO    ] 200
[2026-08-25 15:07:29,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:29,942.942 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:07:29,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:07:29,992.992 INFO    ] No camera update needed
[2026-08-25 15:07:29,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:07:29,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:07:30,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:07:30,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:07:32,050.050 INFO    ] ================================================
[2026-08-25 15:07:32,066.066 INFO    ] Launching Daemon at Tue Aug 25 15:07:32 IST 2026
[2026-08-25 15:07:32,077.077 INFO    ] ================================================
[2026-08-25 15:07:32,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:07:32
[2026-08-25 15:07:33,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:07:33,574.574 INFO    ] Initializing speech engine...
[2026-08-25 15:07:33,580.580 INFO    ] 2026-08-25 15:07:33
[2026-08-25 15:07:33,871.871 INFO    ] 2026-08-25 15:07:33
[2026-08-25 15:07:33,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:07:34,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:07:34,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:07:34,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:07:34,276.276 INFO    ] time= 25/08/2026 15:07:34
[2026-08-25 15:07:34,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:07:34,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:07:34,468.468 INFO    ] No existing commands found in stream
[2026-08-25 15:07:39,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:07:39,496.496 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 15:07:44,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:07:44,040.040 INFO    ] Checking for system updates...
[2026-08-25 15:07:44,079.079 INFO    ] 200
[2026-08-25 15:07:44,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:44,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:07:44,136.136 INFO    ] No update needed
[2026-08-25 15:07:44,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 15:07:44,172.172 INFO    ] 200
[2026-08-25 15:07:44,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:44,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:07:44,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:07:44,277.277 INFO    ] No camera update needed
[2026-08-25 15:07:44,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:07:44,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:07:44,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:07:44,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:07:46,332.332 INFO    ] ================================================
[2026-08-25 15:07:46,347.347 INFO    ] Launching Daemon at Tue Aug 25 15:07:46 IST 2026
[2026-08-25 15:07:46,357.357 INFO    ] ================================================
[2026-08-25 15:07:46,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:07:46
[2026-08-25 15:07:47,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:07:47,811.811 INFO    ] Initializing speech engine...
[2026-08-25 15:07:47,825.825 INFO    ] 2026-08-25 15:07:47
[2026-08-25 15:07:48,082.082 INFO    ] 2026-08-25 15:07:48
[2026-08-25 15:07:48,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:07:48,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:07:48,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:07:48,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:07:48,476.476 INFO    ] time= 25/08/2026 15:07:48
[2026-08-25 15:07:48,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:07:48,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:07:48,634.634 INFO    ] No existing commands found in stream
[2026-08-25 15:07:53,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:07:53,662.662 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 15:07:54,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:07:54,989.989 INFO    ] Checking for system updates...
[2026-08-25 15:07:55,026.026 INFO    ] 200
[2026-08-25 15:07:55,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:55,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:07:55,084.084 INFO    ] No update needed
[2026-08-25 15:07:55,087.087 INFO    ] Checking for camera pi updates...
[2026-08-25 15:07:55,121.121 INFO    ] 200
[2026-08-25 15:07:55,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:07:55,165.165 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:07:55,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:07:55,232.232 INFO    ] No camera update needed
[2026-08-25 15:07:55,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:07:55,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:07:55,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:07:55,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:07:57,289.289 INFO    ] ================================================
[2026-08-25 15:07:57,304.304 INFO    ] Launching Daemon at Tue Aug 25 15:07:57 IST 2026
[2026-08-25 15:07:57,314.314 INFO    ] ================================================
[2026-08-25 15:07:57,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:07:57
[2026-08-25 15:07:58,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:07:58,783.783 INFO    ] Initializing speech engine...
[2026-08-25 15:07:58,791.791 INFO    ] 2026-08-25 15:07:58
[2026-08-25 15:07:59,059.059 INFO    ] 2026-08-25 15:07:59
[2026-08-25 15:07:59,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:07:59,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:07:59,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:07:59,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:07:59,476.476 INFO    ] time= 25/08/2026 15:07:59
[2026-08-25 15:07:59,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:07:59,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:07:59,573.573 INFO    ] No existing commands found in stream
[2026-08-25 15:08:04,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:08:04,613.613 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 15:08:06,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:08:06,869.869 INFO    ] Checking for system updates...
[2026-08-25 15:08:06,912.912 INFO    ] 200
[2026-08-25 15:08:06,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:06,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:08:06,973.973 INFO    ] No update needed
[2026-08-25 15:08:06,976.976 INFO    ] Checking for camera pi updates...
[2026-08-25 15:08:07,009.009 INFO    ] 200
[2026-08-25 15:08:07,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:07,051.051 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:08:07,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:08:07,099.099 INFO    ] No camera update needed
[2026-08-25 15:08:07,102.102 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:08:07,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:08:07,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:08:07,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:08:09,154.154 INFO    ] ================================================
[2026-08-25 15:08:09,169.169 INFO    ] Launching Daemon at Tue Aug 25 15:08:09 IST 2026
[2026-08-25 15:08:09,180.180 INFO    ] ================================================
[2026-08-25 15:08:09,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:08:09
[2026-08-25 15:08:10,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:08:10,617.617 INFO    ] Initializing speech engine...
[2026-08-25 15:08:10,625.625 INFO    ] 2026-08-25 15:08:10
[2026-08-25 15:08:10,888.888 INFO    ] 2026-08-25 15:08:10
[2026-08-25 15:08:10,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:08:11,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:08:11,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:08:11,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:08:11,448.448 INFO    ] time= 25/08/2026 15:08:11
[2026-08-25 15:08:11,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:08:11,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:08:11,598.598 INFO    ] No existing commands found in stream
[2026-08-25 15:08:16,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:08:16,617.617 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 15:08:17,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:08:17,685.685 INFO    ] Checking for system updates...
[2026-08-25 15:08:17,721.721 INFO    ] 200
[2026-08-25 15:08:17,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:17,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:08:17,778.778 INFO    ] No update needed
[2026-08-25 15:08:17,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 15:08:17,813.813 INFO    ] 200
[2026-08-25 15:08:17,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:17,857.857 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:08:17,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:08:17,908.908 INFO    ] No camera update needed
[2026-08-25 15:08:17,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:08:17,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:08:17,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:08:17,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:08:19,965.965 INFO    ] ================================================
[2026-08-25 15:08:19,979.979 INFO    ] Launching Daemon at Tue Aug 25 15:08:19 IST 2026
[2026-08-25 15:08:19,990.990 INFO    ] ================================================
[2026-08-25 15:08:20,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:08:20
[2026-08-25 15:08:21,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:08:21,400.400 INFO    ] Initializing speech engine...
[2026-08-25 15:08:21,410.410 INFO    ] 2026-08-25 15:08:21
[2026-08-25 15:08:21,658.658 INFO    ] 2026-08-25 15:08:21
[2026-08-25 15:08:21,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:08:21,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:08:21,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:08:22,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:08:22,137.137 INFO    ] time= 25/08/2026 15:08:22
[2026-08-25 15:08:22,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:08:22,226.226 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:08:22,377.377 INFO    ] No existing commands found in stream
[2026-08-25 15:08:27,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:08:27,403.403 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 15:08:29,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:08:29,727.727 INFO    ] Checking for system updates...
[2026-08-25 15:08:29,763.763 INFO    ] 200
[2026-08-25 15:08:29,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:29,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:08:29,820.820 INFO    ] No update needed
[2026-08-25 15:08:29,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 15:08:29,860.860 INFO    ] 200
[2026-08-25 15:08:29,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:29,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:08:29,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:08:29,952.952 INFO    ] No camera update needed
[2026-08-25 15:08:29,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:08:29,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:08:29,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:08:29,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:08:32,009.009 INFO    ] ================================================
[2026-08-25 15:08:32,025.025 INFO    ] Launching Daemon at Tue Aug 25 15:08:32 IST 2026
[2026-08-25 15:08:32,038.038 INFO    ] ================================================
[2026-08-25 15:08:32,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:08:32
[2026-08-25 15:08:33,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:08:33,504.504 INFO    ] Initializing speech engine...
[2026-08-25 15:08:33,510.510 INFO    ] 2026-08-25 15:08:33
[2026-08-25 15:08:33,792.792 INFO    ] 2026-08-25 15:08:33
[2026-08-25 15:08:33,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:08:34,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:08:34,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:08:34,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:08:34,221.221 INFO    ] time= 25/08/2026 15:08:34
[2026-08-25 15:08:34,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:08:34,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:08:34,307.307 INFO    ] No existing commands found in stream
[2026-08-25 15:08:39,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:08:39,346.346 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 15:08:41,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:08:41,944.944 INFO    ] Checking for system updates...
[2026-08-25 15:08:41,980.980 INFO    ] 200
[2026-08-25 15:08:41,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:42,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:08:42,041.041 INFO    ] No update needed
[2026-08-25 15:08:42,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 15:08:42,080.080 INFO    ] 200
[2026-08-25 15:08:42,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:42,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:08:42,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:08:42,177.177 INFO    ] No camera update needed
[2026-08-25 15:08:42,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:08:42,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:08:42,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:08:42,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:08:44,235.235 INFO    ] ================================================
[2026-08-25 15:08:44,250.250 INFO    ] Launching Daemon at Tue Aug 25 15:08:44 IST 2026
[2026-08-25 15:08:44,261.261 INFO    ] ================================================
[2026-08-25 15:08:44,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:08:44
[2026-08-25 15:08:45,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:08:45,784.784 INFO    ] Initializing speech engine...
[2026-08-25 15:08:45,790.790 INFO    ] 2026-08-25 15:08:45
[2026-08-25 15:08:46,045.045 INFO    ] 2026-08-25 15:08:46
[2026-08-25 15:08:46,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:08:46,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:08:46,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:08:46,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:08:46,501.501 INFO    ] time= 25/08/2026 15:08:46
[2026-08-25 15:08:46,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:08:46,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:08:46,728.728 INFO    ] No existing commands found in stream
[2026-08-25 15:08:51,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:08:51,753.753 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 15:08:55,497.497 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:08:55,499.499 INFO    ] Checking for system updates...
[2026-08-25 15:08:55,536.536 INFO    ] 200
[2026-08-25 15:08:55,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:55,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:08:55,600.600 INFO    ] No update needed
[2026-08-25 15:08:55,602.602 INFO    ] Checking for camera pi updates...
[2026-08-25 15:08:55,636.636 INFO    ] 200
[2026-08-25 15:08:55,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:08:55,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:08:55,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:08:55,733.733 INFO    ] No camera update needed
[2026-08-25 15:08:55,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:08:55,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:08:55,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:08:55,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:08:57,791.791 INFO    ] ================================================
[2026-08-25 15:08:57,807.807 INFO    ] Launching Daemon at Tue Aug 25 15:08:57 IST 2026
[2026-08-25 15:08:57,818.818 INFO    ] ================================================
[2026-08-25 15:08:58,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:08:58
[2026-08-25 15:08:59,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:08:59,451.451 INFO    ] Initializing speech engine...
[2026-08-25 15:08:59,459.459 INFO    ] 2026-08-25 15:08:59
[2026-08-25 15:08:59,710.710 INFO    ] 2026-08-25 15:08:59
[2026-08-25 15:08:59,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:09:00,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:09:00,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:09:00,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:09:00,211.211 INFO    ] time= 25/08/2026 15:09:00
[2026-08-25 15:09:00,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:09:00,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:09:00,417.417 INFO    ] No existing commands found in stream
[2026-08-25 15:09:05,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:09:05,441.441 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 15:09:09,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:09:09,467.467 INFO    ] Checking for system updates...
[2026-08-25 15:09:09,507.507 INFO    ] 200
[2026-08-25 15:09:09,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:09,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:09:09,573.573 INFO    ] No update needed
[2026-08-25 15:09:09,576.576 INFO    ] Checking for camera pi updates...
[2026-08-25 15:09:09,617.617 INFO    ] 200
[2026-08-25 15:09:09,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:09,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:09:09,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:09:09,710.710 INFO    ] No camera update needed
[2026-08-25 15:09:09,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:09:09,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:09:09,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:09:09,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:09:11,775.775 INFO    ] ================================================
[2026-08-25 15:09:11,793.793 INFO    ] Launching Daemon at Tue Aug 25 15:09:11 IST 2026
[2026-08-25 15:09:11,804.804 INFO    ] ================================================
[2026-08-25 15:09:12,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:09:12
[2026-08-25 15:09:12,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:09:13,240.240 INFO    ] Initializing speech engine...
[2026-08-25 15:09:13,265.265 INFO    ] 2026-08-25 15:09:13
[2026-08-25 15:09:13,537.537 INFO    ] 2026-08-25 15:09:13
[2026-08-25 15:09:13,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:09:13,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:09:13,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:09:13,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:09:13,912.912 INFO    ] time= 25/08/2026 15:09:13
[2026-08-25 15:09:13,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:09:13,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:09:14,036.036 INFO    ] No existing commands found in stream
[2026-08-25 15:09:19,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:09:19,051.051 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 15:09:21,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:09:21,178.178 INFO    ] Checking for system updates...
[2026-08-25 15:09:21,218.218 INFO    ] 200
[2026-08-25 15:09:21,221.221 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:21,224.224 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 15:09:21,227.227 INFO    ] Checking for camera pi updates...
[2026-08-25 15:09:21,263.263 INFO    ] 200
[2026-08-25 15:09:21,267.267 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:21,269.269 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 15:09:21,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:09:21,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:09:21,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:09:21,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:09:23,327.327 INFO    ] ================================================
[2026-08-25 15:09:23,342.342 INFO    ] Launching Daemon at Tue Aug 25 15:09:23 IST 2026
[2026-08-25 15:09:23,353.353 INFO    ] ================================================
[2026-08-25 15:09:24,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:09:24
[2026-08-25 15:09:24,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:09:25,017.017 INFO    ] Initializing speech engine...
[2026-08-25 15:09:25,029.029 INFO    ] 2026-08-25 15:09:25
[2026-08-25 15:09:25,340.340 INFO    ] 2026-08-25 15:09:25
[2026-08-25 15:09:25,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:09:25,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:09:25,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:09:25,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:09:25,786.786 INFO    ] time= 25/08/2026 15:09:25
[2026-08-25 15:09:25,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:09:25,856.856 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:09:26,005.005 INFO    ] No existing commands found in stream
[2026-08-25 15:09:31,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:09:31,037.037 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 15:09:34,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:09:34,402.402 INFO    ] Checking for system updates...
[2026-08-25 15:09:34,438.438 INFO    ] 200
[2026-08-25 15:09:34,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:34,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:09:34,496.496 INFO    ] No update needed
[2026-08-25 15:09:34,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 15:09:34,533.533 INFO    ] 200
[2026-08-25 15:09:34,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:34,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:09:34,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:09:34,633.633 INFO    ] No camera update needed
[2026-08-25 15:09:34,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:09:34,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:09:34,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:09:34,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:09:36,687.687 INFO    ] ================================================
[2026-08-25 15:09:36,703.703 INFO    ] Launching Daemon at Tue Aug 25 15:09:36 IST 2026
[2026-08-25 15:09:36,718.718 INFO    ] ================================================
[2026-08-25 15:09:37,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:09:37
[2026-08-25 15:09:37,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:09:38,132.132 INFO    ] Initializing speech engine...
[2026-08-25 15:09:38,140.140 INFO    ] 2026-08-25 15:09:38
[2026-08-25 15:09:38,418.418 INFO    ] 2026-08-25 15:09:38
[2026-08-25 15:09:38,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:09:38,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:09:38,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:09:38,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:09:38,800.800 INFO    ] time= 25/08/2026 15:09:38
[2026-08-25 15:09:38,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:09:38,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:09:38,992.992 INFO    ] No existing commands found in stream
[2026-08-25 15:09:44,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:09:44,012.012 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 15:09:45,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:09:45,610.610 INFO    ] Checking for system updates...
[2026-08-25 15:09:45,646.646 INFO    ] 200
[2026-08-25 15:09:45,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:45,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:09:45,713.713 INFO    ] No update needed
[2026-08-25 15:09:45,715.715 INFO    ] Checking for camera pi updates...
[2026-08-25 15:09:45,749.749 INFO    ] 200
[2026-08-25 15:09:45,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:45,792.792 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:09:45,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:09:45,848.848 INFO    ] No camera update needed
[2026-08-25 15:09:45,850.850 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:09:45,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:09:45,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:09:45,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:09:47,904.904 INFO    ] ================================================
[2026-08-25 15:09:47,919.919 INFO    ] Launching Daemon at Tue Aug 25 15:09:47 IST 2026
[2026-08-25 15:09:47,931.931 INFO    ] ================================================
[2026-08-25 15:09:48,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:09:48
[2026-08-25 15:09:49,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:09:49,351.351 INFO    ] Initializing speech engine...
[2026-08-25 15:09:49,361.361 INFO    ] 2026-08-25 15:09:49
[2026-08-25 15:09:49,619.619 INFO    ] 2026-08-25 15:09:49
[2026-08-25 15:09:49,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:09:49,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:09:49,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:09:50,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:09:50,162.162 INFO    ] time= 25/08/2026 15:09:50
[2026-08-25 15:09:50,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:09:50,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:09:50,309.309 INFO    ] No existing commands found in stream
[2026-08-25 15:09:55,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:09:55,328.328 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 15:09:57,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:09:57,177.177 INFO    ] Checking for system updates...
[2026-08-25 15:09:57,218.218 INFO    ] 200
[2026-08-25 15:09:57,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:57,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:09:57,277.277 INFO    ] No update needed
[2026-08-25 15:09:57,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 15:09:57,314.314 INFO    ] 200
[2026-08-25 15:09:57,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:09:57,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:09:57,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:09:57,404.404 INFO    ] No camera update needed
[2026-08-25 15:09:57,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:09:57,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:09:57,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:09:57,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:09:59,460.460 INFO    ] ================================================
[2026-08-25 15:09:59,476.476 INFO    ] Launching Daemon at Tue Aug 25 15:09:59 IST 2026
[2026-08-25 15:09:59,487.487 INFO    ] ================================================
[2026-08-25 15:10:00,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:10:00
[2026-08-25 15:10:00,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:10:00,908.908 INFO    ] Initializing speech engine...
[2026-08-25 15:10:00,917.917 INFO    ] 2026-08-25 15:10:00
[2026-08-25 15:10:01,177.177 INFO    ] 2026-08-25 15:10:01
[2026-08-25 15:10:01,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:10:01,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:10:01,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:10:01,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:10:01,619.619 INFO    ] time= 25/08/2026 15:10:01
[2026-08-25 15:10:01,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:10:01,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:10:01,732.732 INFO    ] No existing commands found in stream
[2026-08-25 15:10:06,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:10:06,752.752 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 15:10:09,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:10:09,602.602 INFO    ] Checking for system updates...
[2026-08-25 15:10:09,644.644 INFO    ] 200
[2026-08-25 15:10:09,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:09,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:10:09,712.712 INFO    ] No update needed
[2026-08-25 15:10:09,715.715 INFO    ] Checking for camera pi updates...
[2026-08-25 15:10:09,750.750 INFO    ] 200
[2026-08-25 15:10:09,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:09,800.800 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:10:09,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:10:09,852.852 INFO    ] No camera update needed
[2026-08-25 15:10:09,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:10:09,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:10:09,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:10:09,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:10:11,909.909 INFO    ] ================================================
[2026-08-25 15:10:11,925.925 INFO    ] Launching Daemon at Tue Aug 25 15:10:11 IST 2026
[2026-08-25 15:10:11,937.937 INFO    ] ================================================
[2026-08-25 15:10:12,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:10:12
[2026-08-25 15:10:13,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:10:13,479.479 INFO    ] Initializing speech engine...
[2026-08-25 15:10:13,489.489 INFO    ] 2026-08-25 15:10:13
[2026-08-25 15:10:13,737.737 INFO    ] 2026-08-25 15:10:13
[2026-08-25 15:10:13,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:10:13,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:10:14,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:10:14,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:10:14,216.216 INFO    ] time= 25/08/2026 15:10:14
[2026-08-25 15:10:14,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:10:14,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:10:14,431.431 INFO    ] No existing commands found in stream
[2026-08-25 15:10:19,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:10:19,459.459 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 15:10:21,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:10:21,294.294 INFO    ] Checking for system updates...
[2026-08-25 15:10:21,330.330 INFO    ] 200
[2026-08-25 15:10:21,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:21,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:10:21,388.388 INFO    ] No update needed
[2026-08-25 15:10:21,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 15:10:21,428.428 INFO    ] 200
[2026-08-25 15:10:21,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:21,477.477 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:10:21,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:10:21,537.537 INFO    ] No camera update needed
[2026-08-25 15:10:21,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:10:21,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:10:21,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:10:21,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:10:23,593.593 INFO    ] ================================================
[2026-08-25 15:10:23,609.609 INFO    ] Launching Daemon at Tue Aug 25 15:10:23 IST 2026
[2026-08-25 15:10:23,623.623 INFO    ] ================================================
[2026-08-25 15:10:24,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:10:24
[2026-08-25 15:10:24,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:10:25,237.237 INFO    ] Initializing speech engine...
[2026-08-25 15:10:25,249.249 INFO    ] 2026-08-25 15:10:25
[2026-08-25 15:10:25,562.562 INFO    ] 2026-08-25 15:10:25
[2026-08-25 15:10:25,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:10:25,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:10:25,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:10:27,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:10:27,081.081 INFO    ] time= 25/08/2026 15:10:27
[2026-08-25 15:10:27,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:10:27,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:10:27,207.207 INFO    ] No existing commands found in stream
[2026-08-25 15:10:32,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:10:32,224.224 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 15:10:33,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:10:33,751.751 INFO    ] Checking for system updates...
[2026-08-25 15:10:33,788.788 INFO    ] 200
[2026-08-25 15:10:33,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:33,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:10:33,855.855 INFO    ] No update needed
[2026-08-25 15:10:33,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 15:10:33,894.894 INFO    ] 200
[2026-08-25 15:10:33,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:33,939.939 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:10:33,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:10:33,989.989 INFO    ] No camera update needed
[2026-08-25 15:10:33,992.992 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:10:33,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:10:34,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:10:34,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:10:36,048.048 INFO    ] ================================================
[2026-08-25 15:10:36,064.064 INFO    ] Launching Daemon at Tue Aug 25 15:10:36 IST 2026
[2026-08-25 15:10:36,076.076 INFO    ] ================================================
[2026-08-25 15:10:36,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:10:36
[2026-08-25 15:10:37,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:10:37,648.648 INFO    ] Initializing speech engine...
[2026-08-25 15:10:37,660.660 INFO    ] 2026-08-25 15:10:37
[2026-08-25 15:10:37,975.975 INFO    ] 2026-08-25 15:10:37
[2026-08-25 15:10:38,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:10:38,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:10:38,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:10:38,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:10:38,480.480 INFO    ] time= 25/08/2026 15:10:38
[2026-08-25 15:10:38,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:10:38,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:10:38,669.669 INFO    ] No existing commands found in stream
[2026-08-25 15:10:43,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:10:43,698.698 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 15:10:47,137.137 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:10:47,140.140 INFO    ] Checking for system updates...
[2026-08-25 15:10:47,178.178 INFO    ] 200
[2026-08-25 15:10:47,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:47,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:10:47,237.237 INFO    ] No update needed
[2026-08-25 15:10:47,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 15:10:47,275.275 INFO    ] 200
[2026-08-25 15:10:47,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:47,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:10:47,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:10:47,372.372 INFO    ] No camera update needed
[2026-08-25 15:10:47,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:10:47,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:10:47,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:10:47,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:10:49,431.431 INFO    ] ================================================
[2026-08-25 15:10:49,447.447 INFO    ] Launching Daemon at Tue Aug 25 15:10:49 IST 2026
[2026-08-25 15:10:49,458.458 INFO    ] ================================================
[2026-08-25 15:10:50,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:10:50
[2026-08-25 15:10:50,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:10:50,878.878 INFO    ] Initializing speech engine...
[2026-08-25 15:10:50,884.884 INFO    ] 2026-08-25 15:10:50
[2026-08-25 15:10:51,127.127 INFO    ] 2026-08-25 15:10:51
[2026-08-25 15:10:51,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:10:52,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:10:52,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:10:52,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:10:52,614.614 INFO    ] time= 25/08/2026 15:10:52
[2026-08-25 15:10:52,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:10:52,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:10:52,709.709 INFO    ] No existing commands found in stream
[2026-08-25 15:10:57,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:10:57,722.722 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 15:10:59,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:10:59,458.458 INFO    ] Checking for system updates...
[2026-08-25 15:10:59,497.497 INFO    ] 200
[2026-08-25 15:10:59,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:59,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:10:59,561.561 INFO    ] No update needed
[2026-08-25 15:10:59,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 15:10:59,596.596 INFO    ] 200
[2026-08-25 15:10:59,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:10:59,643.643 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:10:59,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:10:59,692.692 INFO    ] No camera update needed
[2026-08-25 15:10:59,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:10:59,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:10:59,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:10:59,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:11:01,750.750 INFO    ] ================================================
[2026-08-25 15:11:01,770.770 INFO    ] Launching Daemon at Tue Aug 25 15:11:01 IST 2026
[2026-08-25 15:11:01,786.786 INFO    ] ================================================
[2026-08-25 15:11:02,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:11:02
[2026-08-25 15:11:03,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:11:03,341.341 INFO    ] Initializing speech engine...
[2026-08-25 15:11:03,347.347 INFO    ] 2026-08-25 15:11:03
[2026-08-25 15:11:03,640.640 INFO    ] 2026-08-25 15:11:03
[2026-08-25 15:11:03,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:11:03,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:11:03,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:11:04,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:11:04,062.062 INFO    ] time= 25/08/2026 15:11:04
[2026-08-25 15:11:04,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:11:04,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:11:04,261.261 INFO    ] No existing commands found in stream
[2026-08-25 15:11:09,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:11:09,293.293 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 15:11:10,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:11:10,772.772 INFO    ] Checking for system updates...
[2026-08-25 15:11:10,808.808 INFO    ] 200
[2026-08-25 15:11:10,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:10,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:11:10,865.865 INFO    ] No update needed
[2026-08-25 15:11:10,867.867 INFO    ] Checking for camera pi updates...
[2026-08-25 15:11:10,901.901 INFO    ] 200
[2026-08-25 15:11:10,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:10,944.944 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:11:10,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:11:10,997.997 INFO    ] No camera update needed
[2026-08-25 15:11:10,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:11:11,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:11:11,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:11:11,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:11:13,052.052 INFO    ] ================================================
[2026-08-25 15:11:13,067.067 INFO    ] Launching Daemon at Tue Aug 25 15:11:13 IST 2026
[2026-08-25 15:11:13,078.078 INFO    ] ================================================
[2026-08-25 15:11:13,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:11:13
[2026-08-25 15:11:14,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:11:14,539.539 INFO    ] Initializing speech engine...
[2026-08-25 15:11:14,554.554 INFO    ] 2026-08-25 15:11:14
[2026-08-25 15:11:14,817.817 INFO    ] 2026-08-25 15:11:14
[2026-08-25 15:11:14,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:11:15,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:11:15,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:11:15,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:11:15,349.349 INFO    ] time= 25/08/2026 15:11:15
[2026-08-25 15:11:15,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:11:15,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:11:15,525.525 INFO    ] No existing commands found in stream
[2026-08-25 15:11:20,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:11:20,553.553 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 15:11:21,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:11:21,939.939 INFO    ] Checking for system updates...
[2026-08-25 15:11:21,975.975 INFO    ] 200
[2026-08-25 15:11:21,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:22,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:11:22,032.032 INFO    ] No update needed
[2026-08-25 15:11:22,034.034 INFO    ] Checking for camera pi updates...
[2026-08-25 15:11:22,068.068 INFO    ] 200
[2026-08-25 15:11:22,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:22,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:11:22,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:11:22,169.169 INFO    ] No camera update needed
[2026-08-25 15:11:22,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:11:22,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:11:22,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:11:22,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:11:24,227.227 INFO    ] ================================================
[2026-08-25 15:11:24,242.242 INFO    ] Launching Daemon at Tue Aug 25 15:11:24 IST 2026
[2026-08-25 15:11:24,253.253 INFO    ] ================================================
[2026-08-25 15:11:24,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:11:24
[2026-08-25 15:11:25,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:11:25,675.675 INFO    ] Initializing speech engine...
[2026-08-25 15:11:25,684.684 INFO    ] 2026-08-25 15:11:25
[2026-08-25 15:11:25,934.934 INFO    ] 2026-08-25 15:11:25
[2026-08-25 15:11:25,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:11:26,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:11:26,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:11:26,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:11:26,413.413 INFO    ] time= 25/08/2026 15:11:26
[2026-08-25 15:11:26,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:11:26,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:11:26,659.659 INFO    ] No existing commands found in stream
[2026-08-25 15:11:31,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:11:31,676.676 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 15:11:32,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:11:32,396.396 INFO    ] Checking for system updates...
[2026-08-25 15:11:32,442.442 INFO    ] 200
[2026-08-25 15:11:32,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:32,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:11:32,501.501 INFO    ] No update needed
[2026-08-25 15:11:32,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 15:11:32,541.541 INFO    ] 200
[2026-08-25 15:11:32,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:32,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:11:32,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:11:32,663.663 INFO    ] No camera update needed
[2026-08-25 15:11:32,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:11:32,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:11:32,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:11:32,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:11:34,720.720 INFO    ] ================================================
[2026-08-25 15:11:34,735.735 INFO    ] Launching Daemon at Tue Aug 25 15:11:34 IST 2026
[2026-08-25 15:11:34,746.746 INFO    ] ================================================
[2026-08-25 15:11:35,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:11:35
[2026-08-25 15:11:35,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:11:36,174.174 INFO    ] Initializing speech engine...
[2026-08-25 15:11:36,187.187 INFO    ] 2026-08-25 15:11:36
[2026-08-25 15:11:36,452.452 INFO    ] 2026-08-25 15:11:36
[2026-08-25 15:11:36,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:11:36,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:11:36,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:11:36,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:11:36,949.949 INFO    ] time= 25/08/2026 15:11:36
[2026-08-25 15:11:36,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:11:37,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:11:37,143.143 INFO    ] No existing commands found in stream
[2026-08-25 15:11:42,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:11:42,171.171 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 15:11:42,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:11:42,715.715 INFO    ] Checking for system updates...
[2026-08-25 15:11:42,751.751 INFO    ] 200
[2026-08-25 15:11:42,753.753 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:42,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:11:42,811.811 INFO    ] No update needed
[2026-08-25 15:11:42,813.813 INFO    ] Checking for camera pi updates...
[2026-08-25 15:11:42,848.848 INFO    ] 200
[2026-08-25 15:11:42,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:42,895.895 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:11:42,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:11:42,951.951 INFO    ] No camera update needed
[2026-08-25 15:11:42,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:11:42,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:11:42,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:11:42,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:11:45,009.009 INFO    ] ================================================
[2026-08-25 15:11:45,024.024 INFO    ] Launching Daemon at Tue Aug 25 15:11:45 IST 2026
[2026-08-25 15:11:45,035.035 INFO    ] ================================================
[2026-08-25 15:11:45,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:11:45
[2026-08-25 15:11:46,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:11:46,452.452 INFO    ] Initializing speech engine...
[2026-08-25 15:11:46,459.459 INFO    ] 2026-08-25 15:11:46
[2026-08-25 15:11:46,755.755 INFO    ] 2026-08-25 15:11:46
[2026-08-25 15:11:46,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:11:46,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:11:46,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:11:47,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:11:47,139.139 INFO    ] time= 25/08/2026 15:11:47
[2026-08-25 15:11:47,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:11:47,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:11:47,267.267 INFO    ] No existing commands found in stream
[2026-08-25 15:11:52,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:11:52,286.286 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 15:11:54,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:11:54,716.716 INFO    ] Checking for system updates...
[2026-08-25 15:11:54,752.752 INFO    ] 200
[2026-08-25 15:11:54,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:54,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:11:54,811.811 INFO    ] No update needed
[2026-08-25 15:11:54,814.814 INFO    ] Checking for camera pi updates...
[2026-08-25 15:11:54,847.847 INFO    ] 200
[2026-08-25 15:11:54,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:11:54,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:11:54,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:11:54,942.942 INFO    ] No camera update needed
[2026-08-25 15:11:54,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:11:54,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:11:54,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:11:54,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:11:57,998.998 INFO    ] ================================================
[2026-08-25 15:11:57,013.013 INFO    ] Launching Daemon at Tue Aug 25 15:11:57 IST 2026
[2026-08-25 15:11:57,024.024 INFO    ] ================================================
[2026-08-25 15:11:57,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:11:57
[2026-08-25 15:11:58,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:11:58,457.457 INFO    ] Initializing speech engine...
[2026-08-25 15:11:58,465.465 INFO    ] 2026-08-25 15:11:58
[2026-08-25 15:11:58,722.722 INFO    ] 2026-08-25 15:11:58
[2026-08-25 15:11:58,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:11:59,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:11:59,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:11:59,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:11:59,263.263 INFO    ] time= 25/08/2026 15:11:59
[2026-08-25 15:11:59,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:11:59,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:11:59,413.413 INFO    ] No existing commands found in stream
[2026-08-25 15:12:04,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:12:04,431.431 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 15:12:05,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:12:05,593.593 INFO    ] Checking for system updates...
[2026-08-25 15:12:05,629.629 INFO    ] 200
[2026-08-25 15:12:05,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:05,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:12:05,693.693 INFO    ] No update needed
[2026-08-25 15:12:05,695.695 INFO    ] Checking for camera pi updates...
[2026-08-25 15:12:05,733.733 INFO    ] 200
[2026-08-25 15:12:05,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:05,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:12:05,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:12:05,836.836 INFO    ] No camera update needed
[2026-08-25 15:12:05,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:12:05,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:12:05,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:12:05,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:12:07,891.891 INFO    ] ================================================
[2026-08-25 15:12:07,907.907 INFO    ] Launching Daemon at Tue Aug 25 15:12:07 IST 2026
[2026-08-25 15:12:07,918.918 INFO    ] ================================================
[2026-08-25 15:12:08,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:12:08
[2026-08-25 15:12:09,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:12:09,342.342 INFO    ] Initializing speech engine...
[2026-08-25 15:12:09,349.349 INFO    ] 2026-08-25 15:12:09
[2026-08-25 15:12:09,594.594 INFO    ] 2026-08-25 15:12:09
[2026-08-25 15:12:09,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:12:09,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:12:09,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:12:10,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:12:10,086.086 INFO    ] time= 25/08/2026 15:12:10
[2026-08-25 15:12:10,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:12:10,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:12:10,306.306 INFO    ] No existing commands found in stream
[2026-08-25 15:12:15,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:12:15,320.320 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 15:12:19,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:12:19,311.311 INFO    ] Checking for system updates...
[2026-08-25 15:12:19,346.346 INFO    ] 200
[2026-08-25 15:12:19,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:19,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:12:19,404.404 INFO    ] No update needed
[2026-08-25 15:12:19,406.406 INFO    ] Checking for camera pi updates...
[2026-08-25 15:12:19,440.440 INFO    ] 200
[2026-08-25 15:12:19,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:19,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:12:19,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:12:19,540.540 INFO    ] No camera update needed
[2026-08-25 15:12:19,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:12:19,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:12:19,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:12:19,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:12:21,597.597 INFO    ] ================================================
[2026-08-25 15:12:21,612.612 INFO    ] Launching Daemon at Tue Aug 25 15:12:21 IST 2026
[2026-08-25 15:12:21,623.623 INFO    ] ================================================
[2026-08-25 15:12:22,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:12:22
[2026-08-25 15:12:22,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:12:23,039.039 INFO    ] Initializing speech engine...
[2026-08-25 15:12:23,062.062 INFO    ] 2026-08-25 15:12:23
[2026-08-25 15:12:23,317.317 INFO    ] 2026-08-25 15:12:23
[2026-08-25 15:12:23,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:12:23,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:12:23,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:12:23,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:12:23,791.791 INFO    ] time= 25/08/2026 15:12:23
[2026-08-25 15:12:23,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:12:23,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:12:24,020.020 INFO    ] No existing commands found in stream
[2026-08-25 15:12:29,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:12:29,048.048 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 15:12:31,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:12:31,886.886 INFO    ] Checking for system updates...
[2026-08-25 15:12:31,930.930 INFO    ] 200
[2026-08-25 15:12:31,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:32,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:12:32,002.002 INFO    ] No update needed
[2026-08-25 15:12:32,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 15:12:32,041.041 INFO    ] 200
[2026-08-25 15:12:32,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:32,088.088 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:12:32,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:12:32,139.139 INFO    ] No camera update needed
[2026-08-25 15:12:32,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:12:32,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:12:32,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:12:32,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:12:34,200.200 INFO    ] ================================================
[2026-08-25 15:12:34,215.215 INFO    ] Launching Daemon at Tue Aug 25 15:12:34 IST 2026
[2026-08-25 15:12:34,226.226 INFO    ] ================================================
[2026-08-25 15:12:34,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:12:34
[2026-08-25 15:12:35,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:12:35,667.667 INFO    ] Initializing speech engine...
[2026-08-25 15:12:35,676.676 INFO    ] 2026-08-25 15:12:35
[2026-08-25 15:12:35,939.939 INFO    ] 2026-08-25 15:12:35
[2026-08-25 15:12:35,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:12:36,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:12:36,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:12:36,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:12:36,481.481 INFO    ] time= 25/08/2026 15:12:36
[2026-08-25 15:12:36,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:12:36,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:12:36,638.638 INFO    ] No existing commands found in stream
[2026-08-25 15:12:41,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:12:41,668.668 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 15:12:42,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:12:42,940.940 INFO    ] Checking for system updates...
[2026-08-25 15:12:42,977.977 INFO    ] 200
[2026-08-25 15:12:42,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:43,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:12:43,035.035 INFO    ] No update needed
[2026-08-25 15:12:43,038.038 INFO    ] Checking for camera pi updates...
[2026-08-25 15:12:43,076.076 INFO    ] 200
[2026-08-25 15:12:43,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:43,124.124 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:12:43,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:12:43,183.183 INFO    ] No camera update needed
[2026-08-25 15:12:43,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:12:43,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:12:43,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:12:43,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:12:45,240.240 INFO    ] ================================================
[2026-08-25 15:12:45,255.255 INFO    ] Launching Daemon at Tue Aug 25 15:12:45 IST 2026
[2026-08-25 15:12:45,266.266 INFO    ] ================================================
[2026-08-25 15:12:45,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:12:45
[2026-08-25 15:12:46,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:12:46,919.919 INFO    ] Initializing speech engine...
[2026-08-25 15:12:46,933.933 INFO    ] 2026-08-25 15:12:46
[2026-08-25 15:12:47,217.217 INFO    ] 2026-08-25 15:12:47
[2026-08-25 15:12:47,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:12:47,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:12:47,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:12:47,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:12:47,766.766 INFO    ] time= 25/08/2026 15:12:47
[2026-08-25 15:12:47,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:12:47,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:12:47,923.923 INFO    ] No existing commands found in stream
[2026-08-25 15:12:52,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:12:52,942.942 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 15:12:53,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:12:53,955.955 INFO    ] Checking for system updates...
[2026-08-25 15:12:53,999.999 INFO    ] 200
[2026-08-25 15:12:54,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:54,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:12:54,060.060 INFO    ] No update needed
[2026-08-25 15:12:54,062.062 INFO    ] Checking for camera pi updates...
[2026-08-25 15:12:54,098.098 INFO    ] 200
[2026-08-25 15:12:54,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:12:54,142.142 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:12:54,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:12:54,200.200 INFO    ] No camera update needed
[2026-08-25 15:12:54,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:12:54,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:12:54,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:12:54,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:12:56,260.260 INFO    ] ================================================
[2026-08-25 15:12:56,276.276 INFO    ] Launching Daemon at Tue Aug 25 15:12:56 IST 2026
[2026-08-25 15:12:56,287.287 INFO    ] ================================================
[2026-08-25 15:12:56,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:12:56
[2026-08-25 15:12:57,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:12:57,975.975 INFO    ] Initializing speech engine...
[2026-08-25 15:12:57,988.988 INFO    ] 2026-08-25 15:12:57
[2026-08-25 15:12:58,304.304 INFO    ] 2026-08-25 15:12:58
[2026-08-25 15:12:58,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:12:58,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:12:58,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:12:58,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:12:58,824.824 INFO    ] time= 25/08/2026 15:12:58
[2026-08-25 15:12:58,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:12:58,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:12:58,979.979 INFO    ] No existing commands found in stream
[2026-08-25 15:13:03,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:13:03,998.998 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 15:13:05,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:13:05,828.828 INFO    ] Checking for system updates...
[2026-08-25 15:13:05,869.869 INFO    ] 200
[2026-08-25 15:13:05,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:05,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:13:05,928.928 INFO    ] No update needed
[2026-08-25 15:13:05,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 15:13:05,965.965 INFO    ] 200
[2026-08-25 15:13:05,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:06,015.015 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:13:06,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:13:06,067.067 INFO    ] No camera update needed
[2026-08-25 15:13:06,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:13:06,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:13:06,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:13:06,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:13:08,126.126 INFO    ] ================================================
[2026-08-25 15:13:08,141.141 INFO    ] Launching Daemon at Tue Aug 25 15:13:08 IST 2026
[2026-08-25 15:13:08,152.152 INFO    ] ================================================
[2026-08-25 15:13:08,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:13:08
[2026-08-25 15:13:09,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:13:09,592.592 INFO    ] Initializing speech engine...
[2026-08-25 15:13:09,605.605 INFO    ] 2026-08-25 15:13:09
[2026-08-25 15:13:09,910.910 INFO    ] 2026-08-25 15:13:09
[2026-08-25 15:13:09,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:13:10,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:13:10,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:13:10,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:13:10,335.335 INFO    ] time= 25/08/2026 15:13:10
[2026-08-25 15:13:10,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:13:10,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:13:10,452.452 INFO    ] No existing commands found in stream
[2026-08-25 15:13:15,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:13:15,486.486 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 15:13:18,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:13:19,000.000 INFO    ] Checking for system updates...
[2026-08-25 15:13:19,039.039 INFO    ] 200
[2026-08-25 15:13:19,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:19,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:13:19,103.103 INFO    ] No update needed
[2026-08-25 15:13:19,106.106 INFO    ] Checking for camera pi updates...
[2026-08-25 15:13:19,139.139 INFO    ] 200
[2026-08-25 15:13:19,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:19,183.183 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:13:19,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:13:19,230.230 INFO    ] No camera update needed
[2026-08-25 15:13:19,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:13:19,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:13:19,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:13:19,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:13:21,287.287 INFO    ] ================================================
[2026-08-25 15:13:21,303.303 INFO    ] Launching Daemon at Tue Aug 25 15:13:21 IST 2026
[2026-08-25 15:13:21,314.314 INFO    ] ================================================
[2026-08-25 15:13:21,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:13:21
[2026-08-25 15:13:22,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:13:22,726.726 INFO    ] Initializing speech engine...
[2026-08-25 15:13:22,751.751 INFO    ] 2026-08-25 15:13:22
[2026-08-25 15:13:23,024.024 INFO    ] 2026-08-25 15:13:23
[2026-08-25 15:13:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:13:23,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:13:23,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:13:23,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:13:23,449.449 INFO    ] time= 25/08/2026 15:13:23
[2026-08-25 15:13:23,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:13:23,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:13:23,600.600 INFO    ] No existing commands found in stream
[2026-08-25 15:13:28,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:13:28,628.628 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 15:13:34,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:13:34,785.785 INFO    ] Checking for system updates...
[2026-08-25 15:13:34,821.821 INFO    ] 200
[2026-08-25 15:13:34,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:34,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:13:34,881.881 INFO    ] No update needed
[2026-08-25 15:13:34,883.883 INFO    ] Checking for camera pi updates...
[2026-08-25 15:13:34,917.917 INFO    ] 200
[2026-08-25 15:13:34,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:34,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:13:35,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:13:35,018.018 INFO    ] No camera update needed
[2026-08-25 15:13:35,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:13:35,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:13:35,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:13:35,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:13:37,075.075 INFO    ] ================================================
[2026-08-25 15:13:37,090.090 INFO    ] Launching Daemon at Tue Aug 25 15:13:37 IST 2026
[2026-08-25 15:13:37,101.101 INFO    ] ================================================
[2026-08-25 15:13:37,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:13:37
[2026-08-25 15:13:38,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:13:38,580.580 INFO    ] Initializing speech engine...
[2026-08-25 15:13:38,585.585 INFO    ] 2026-08-25 15:13:38
[2026-08-25 15:13:38,847.847 INFO    ] 2026-08-25 15:13:38
[2026-08-25 15:13:38,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:13:39,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:13:39,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:13:40,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:13:40,384.384 INFO    ] time= 25/08/2026 15:13:40
[2026-08-25 15:13:40,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:13:40,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:13:40,516.516 INFO    ] No existing commands found in stream
[2026-08-25 15:13:45,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:13:45,531.531 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 15:13:46,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:13:46,868.868 INFO    ] Checking for system updates...
[2026-08-25 15:13:46,912.912 INFO    ] 200
[2026-08-25 15:13:46,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:46,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:13:46,975.975 INFO    ] No update needed
[2026-08-25 15:13:46,978.978 INFO    ] Checking for camera pi updates...
[2026-08-25 15:13:47,011.011 INFO    ] 200
[2026-08-25 15:13:47,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:47,055.055 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:13:47,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:13:47,205.205 INFO    ] No camera update needed
[2026-08-25 15:13:47,208.208 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:13:47,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:13:47,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:13:47,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:13:49,261.261 INFO    ] ================================================
[2026-08-25 15:13:49,277.277 INFO    ] Launching Daemon at Tue Aug 25 15:13:49 IST 2026
[2026-08-25 15:13:49,288.288 INFO    ] ================================================
[2026-08-25 15:13:49,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:13:49
[2026-08-25 15:13:50,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:13:50,933.933 INFO    ] Initializing speech engine...
[2026-08-25 15:13:50,948.948 INFO    ] 2026-08-25 15:13:50
[2026-08-25 15:13:51,262.262 INFO    ] 2026-08-25 15:13:51
[2026-08-25 15:13:51,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:13:51,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:13:51,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:13:51,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:13:51,778.778 INFO    ] time= 25/08/2026 15:13:51
[2026-08-25 15:13:51,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:13:51,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:13:51,938.938 INFO    ] No existing commands found in stream
[2026-08-25 15:13:56,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:13:56,966.966 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 15:13:58,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:13:59,003.003 INFO    ] Checking for system updates...
[2026-08-25 15:13:59,043.043 INFO    ] 200
[2026-08-25 15:13:59,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:59,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:13:59,115.115 INFO    ] No update needed
[2026-08-25 15:13:59,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 15:13:59,158.158 INFO    ] 200
[2026-08-25 15:13:59,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:13:59,204.204 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:13:59,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:13:59,253.253 INFO    ] No camera update needed
[2026-08-25 15:13:59,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:13:59,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:13:59,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:13:59,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:14:01,337.337 INFO    ] ================================================
[2026-08-25 15:14:01,366.366 INFO    ] Launching Daemon at Tue Aug 25 15:14:01 IST 2026
[2026-08-25 15:14:01,387.387 INFO    ] ================================================
[2026-08-25 15:14:02,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:14:02
[2026-08-25 15:14:02,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:14:03,065.065 INFO    ] Initializing speech engine...
[2026-08-25 15:14:03,074.074 INFO    ] 2026-08-25 15:14:03
[2026-08-25 15:14:03,375.375 INFO    ] 2026-08-25 15:14:03
[2026-08-25 15:14:03,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:14:03,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:14:03,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:14:03,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:14:03,802.802 INFO    ] time= 25/08/2026 15:14:03
[2026-08-25 15:14:03,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:14:03,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:14:03,887.887 INFO    ] No existing commands found in stream
[2026-08-25 15:14:08,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:14:08,900.900 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 15:14:13,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:14:13,345.345 INFO    ] Checking for system updates...
[2026-08-25 15:14:13,384.384 INFO    ] 200
[2026-08-25 15:14:13,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:13,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:14:13,441.441 INFO    ] No update needed
[2026-08-25 15:14:13,443.443 INFO    ] Checking for camera pi updates...
[2026-08-25 15:14:13,476.476 INFO    ] 200
[2026-08-25 15:14:13,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:13,519.519 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:14:13,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:14:13,583.583 INFO    ] No camera update needed
[2026-08-25 15:14:13,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:14:13,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:14:13,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:14:13,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:14:15,638.638 INFO    ] ================================================
[2026-08-25 15:14:15,655.655 INFO    ] Launching Daemon at Tue Aug 25 15:14:15 IST 2026
[2026-08-25 15:14:15,667.667 INFO    ] ================================================
[2026-08-25 15:14:16,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:14:16
[2026-08-25 15:14:17,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:14:17,321.321 INFO    ] Initializing speech engine...
[2026-08-25 15:14:17,332.332 INFO    ] 2026-08-25 15:14:17
[2026-08-25 15:14:17,648.648 INFO    ] 2026-08-25 15:14:17
[2026-08-25 15:14:17,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:14:17,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:14:17,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:14:18,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:14:18,174.174 INFO    ] time= 25/08/2026 15:14:18
[2026-08-25 15:14:18,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:14:18,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:14:18,339.339 INFO    ] No existing commands found in stream
[2026-08-25 15:14:23,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:14:23,367.367 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 15:14:26,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:14:26,148.148 INFO    ] Checking for system updates...
[2026-08-25 15:14:26,189.189 INFO    ] 200
[2026-08-25 15:14:26,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:26,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:14:26,257.257 INFO    ] No update needed
[2026-08-25 15:14:26,260.260 INFO    ] Checking for camera pi updates...
[2026-08-25 15:14:26,299.299 INFO    ] 200
[2026-08-25 15:14:26,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:26,346.346 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:14:26,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:14:26,399.399 INFO    ] No camera update needed
[2026-08-25 15:14:26,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:14:26,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:14:26,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:14:26,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:14:28,458.458 INFO    ] ================================================
[2026-08-25 15:14:28,474.474 INFO    ] Launching Daemon at Tue Aug 25 15:14:28 IST 2026
[2026-08-25 15:14:28,485.485 INFO    ] ================================================
[2026-08-25 15:14:29,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:14:29
[2026-08-25 15:14:29,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:14:29,921.921 INFO    ] Initializing speech engine...
[2026-08-25 15:14:29,931.931 INFO    ] 2026-08-25 15:14:29
[2026-08-25 15:14:30,177.177 INFO    ] 2026-08-25 15:14:30
[2026-08-25 15:14:30,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:14:30,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:14:30,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:14:30,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:14:30,676.676 INFO    ] time= 25/08/2026 15:14:30
[2026-08-25 15:14:30,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:14:30,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:14:30,888.888 INFO    ] No existing commands found in stream
[2026-08-25 15:14:35,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:14:35,906.906 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 15:14:39,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:14:39,095.095 INFO    ] Checking for system updates...
[2026-08-25 15:14:39,130.130 INFO    ] 200
[2026-08-25 15:14:39,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:39,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:14:39,188.188 INFO    ] No update needed
[2026-08-25 15:14:39,190.190 INFO    ] Checking for camera pi updates...
[2026-08-25 15:14:39,224.224 INFO    ] 200
[2026-08-25 15:14:39,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:39,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:14:39,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:14:39,325.325 INFO    ] No camera update needed
[2026-08-25 15:14:39,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:14:39,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:14:39,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:14:39,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:14:41,379.379 INFO    ] ================================================
[2026-08-25 15:14:41,393.393 INFO    ] Launching Daemon at Tue Aug 25 15:14:41 IST 2026
[2026-08-25 15:14:41,404.404 INFO    ] ================================================
[2026-08-25 15:14:41,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:14:41
[2026-08-25 15:14:42,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:14:42,860.860 INFO    ] Initializing speech engine...
[2026-08-25 15:14:42,866.866 INFO    ] 2026-08-25 15:14:42
[2026-08-25 15:14:43,113.113 INFO    ] 2026-08-25 15:14:43
[2026-08-25 15:14:43,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:14:43,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:14:43,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:14:43,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:14:43,603.603 INFO    ] time= 25/08/2026 15:14:43
[2026-08-25 15:14:43,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:14:43,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:14:43,823.823 INFO    ] No existing commands found in stream
[2026-08-25 15:14:48,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:14:48,848.848 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 15:14:51,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:14:51,620.620 INFO    ] Checking for system updates...
[2026-08-25 15:14:51,656.656 INFO    ] 200
[2026-08-25 15:14:51,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:51,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:14:51,713.713 INFO    ] No update needed
[2026-08-25 15:14:51,715.715 INFO    ] Checking for camera pi updates...
[2026-08-25 15:14:51,748.748 INFO    ] 200
[2026-08-25 15:14:51,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:14:51,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:14:51,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:14:51,838.838 INFO    ] No camera update needed
[2026-08-25 15:14:51,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:14:51,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:14:51,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:14:51,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:14:53,894.894 INFO    ] ================================================
[2026-08-25 15:14:53,909.909 INFO    ] Launching Daemon at Tue Aug 25 15:14:53 IST 2026
[2026-08-25 15:14:53,920.920 INFO    ] ================================================
[2026-08-25 15:14:54,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:14:54
[2026-08-25 15:14:55,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:14:55,341.341 INFO    ] Initializing speech engine...
[2026-08-25 15:14:55,348.348 INFO    ] 2026-08-25 15:14:55
[2026-08-25 15:14:55,598.598 INFO    ] 2026-08-25 15:14:55
[2026-08-25 15:14:55,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:14:55,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:14:55,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:14:56,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:14:56,095.095 INFO    ] time= 25/08/2026 15:14:56
[2026-08-25 15:14:56,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:14:56,184.184 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:14:56,308.308 INFO    ] No existing commands found in stream
[2026-08-25 15:15:01,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:15:01,341.341 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 15:15:04,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:15:04,969.969 INFO    ] Checking for system updates...
[2026-08-25 15:15:05,004.004 INFO    ] 200
[2026-08-25 15:15:05,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:05,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:15:05,070.070 INFO    ] No update needed
[2026-08-25 15:15:05,073.073 INFO    ] Checking for camera pi updates...
[2026-08-25 15:15:05,108.108 INFO    ] 200
[2026-08-25 15:15:05,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:05,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:15:05,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:15:05,207.207 INFO    ] No camera update needed
[2026-08-25 15:15:05,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:15:05,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:15:05,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:15:05,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:15:07,261.261 INFO    ] ================================================
[2026-08-25 15:15:07,279.279 INFO    ] Launching Daemon at Tue Aug 25 15:15:07 IST 2026
[2026-08-25 15:15:07,291.291 INFO    ] ================================================
[2026-08-25 15:15:07,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:15:07
[2026-08-25 15:15:08,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:15:08,749.749 INFO    ] Initializing speech engine...
[2026-08-25 15:15:08,755.755 INFO    ] 2026-08-25 15:15:08
[2026-08-25 15:15:09,008.008 INFO    ] 2026-08-25 15:15:09
[2026-08-25 15:15:09,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:15:09,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:15:09,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:15:09,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:15:09,385.385 INFO    ] time= 25/08/2026 15:15:09
[2026-08-25 15:15:09,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:15:09,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:15:09,721.721 INFO    ] No existing commands found in stream
[2026-08-25 15:15:14,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:15:14,747.747 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 15:15:17,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:15:17,277.277 INFO    ] Checking for system updates...
[2026-08-25 15:15:17,312.312 INFO    ] 200
[2026-08-25 15:15:17,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:17,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:15:17,370.370 INFO    ] No update needed
[2026-08-25 15:15:17,372.372 INFO    ] Checking for camera pi updates...
[2026-08-25 15:15:17,406.406 INFO    ] 200
[2026-08-25 15:15:17,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:17,448.448 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:15:17,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:15:17,499.499 INFO    ] No camera update needed
[2026-08-25 15:15:17,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:15:17,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:15:17,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:15:17,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:15:19,556.556 INFO    ] ================================================
[2026-08-25 15:15:19,572.572 INFO    ] Launching Daemon at Tue Aug 25 15:15:19 IST 2026
[2026-08-25 15:15:19,584.584 INFO    ] ================================================
[2026-08-25 15:15:20,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:15:20
[2026-08-25 15:15:20,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:15:21,102.102 INFO    ] Initializing speech engine...
[2026-08-25 15:15:21,117.117 INFO    ] 2026-08-25 15:15:21
[2026-08-25 15:15:21,426.426 INFO    ] 2026-08-25 15:15:21
[2026-08-25 15:15:21,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:15:21,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:15:21,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:15:21,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:15:21,935.935 INFO    ] time= 25/08/2026 15:15:21
[2026-08-25 15:15:21,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:15:21,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:15:22,085.085 INFO    ] No existing commands found in stream
[2026-08-25 15:15:27,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:15:27,104.104 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 15:15:28,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:15:28,226.226 INFO    ] Checking for system updates...
[2026-08-25 15:15:28,263.263 INFO    ] 200
[2026-08-25 15:15:28,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:28,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:15:28,322.322 INFO    ] No update needed
[2026-08-25 15:15:28,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 15:15:28,361.361 INFO    ] 200
[2026-08-25 15:15:28,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:28,413.413 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:15:28,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:15:28,463.463 INFO    ] No camera update needed
[2026-08-25 15:15:28,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:15:28,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:15:28,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:15:28,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:15:30,520.520 INFO    ] ================================================
[2026-08-25 15:15:30,536.536 INFO    ] Launching Daemon at Tue Aug 25 15:15:30 IST 2026
[2026-08-25 15:15:30,548.548 INFO    ] ================================================
[2026-08-25 15:15:31,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:15:31
[2026-08-25 15:15:31,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:15:32,034.034 INFO    ] Initializing speech engine...
[2026-08-25 15:15:32,043.043 INFO    ] 2026-08-25 15:15:32
[2026-08-25 15:15:32,320.320 INFO    ] 2026-08-25 15:15:32
[2026-08-25 15:15:32,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:15:32,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:15:32,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:15:32,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:15:32,849.849 INFO    ] time= 25/08/2026 15:15:32
[2026-08-25 15:15:32,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:15:32,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:15:33,073.073 INFO    ] No existing commands found in stream
[2026-08-25 15:15:38,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:15:38,090.090 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 15:15:38,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:15:38,588.588 INFO    ] Checking for system updates...
[2026-08-25 15:15:38,623.623 INFO    ] 200
[2026-08-25 15:15:38,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:38,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:15:38,680.680 INFO    ] No update needed
[2026-08-25 15:15:38,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 15:15:38,719.719 INFO    ] 200
[2026-08-25 15:15:38,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:38,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:15:38,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:15:38,819.819 INFO    ] No camera update needed
[2026-08-25 15:15:38,822.822 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:15:38,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:15:38,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:15:38,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:15:40,874.874 INFO    ] ================================================
[2026-08-25 15:15:40,889.889 INFO    ] Launching Daemon at Tue Aug 25 15:15:40 IST 2026
[2026-08-25 15:15:40,900.900 INFO    ] ================================================
[2026-08-25 15:15:41,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:15:41
[2026-08-25 15:15:42,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:15:42,380.380 INFO    ] Initializing speech engine...
[2026-08-25 15:15:42,390.390 INFO    ] 2026-08-25 15:15:42
[2026-08-25 15:15:42,664.664 INFO    ] 2026-08-25 15:15:42
[2026-08-25 15:15:42,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:15:42,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:15:42,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:15:43,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:15:43,122.122 INFO    ] time= 25/08/2026 15:15:43
[2026-08-25 15:15:43,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:15:43,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:15:43,287.287 INFO    ] No existing commands found in stream
[2026-08-25 15:15:48,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:15:48,306.306 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 15:15:49,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:15:49,286.286 INFO    ] Checking for system updates...
[2026-08-25 15:15:49,321.321 INFO    ] 200
[2026-08-25 15:15:49,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:49,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:15:49,377.377 INFO    ] No update needed
[2026-08-25 15:15:49,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 15:15:49,412.412 INFO    ] 200
[2026-08-25 15:15:49,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:15:49,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:15:49,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:15:49,604.604 INFO    ] No camera update needed
[2026-08-25 15:15:49,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:15:49,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:15:49,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:15:49,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:15:51,660.660 INFO    ] ================================================
[2026-08-25 15:15:51,676.676 INFO    ] Launching Daemon at Tue Aug 25 15:15:51 IST 2026
[2026-08-25 15:15:51,687.687 INFO    ] ================================================
[2026-08-25 15:15:52,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:15:52
[2026-08-25 15:15:53,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:15:53,335.335 INFO    ] Initializing speech engine...
[2026-08-25 15:15:53,342.342 INFO    ] 2026-08-25 15:15:53
[2026-08-25 15:15:53,627.627 INFO    ] 2026-08-25 15:15:53
[2026-08-25 15:15:53,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:15:53,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:15:53,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:15:54,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:15:54,138.138 INFO    ] time= 25/08/2026 15:15:54
[2026-08-25 15:15:54,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:15:54,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:15:54,288.288 INFO    ] No existing commands found in stream
[2026-08-25 15:15:59,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:15:59,329.329 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 15:16:00,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:16:00,116.116 INFO    ] Checking for system updates...
[2026-08-25 15:16:00,151.151 INFO    ] 200
[2026-08-25 15:16:00,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:00,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:16:00,208.208 INFO    ] No update needed
[2026-08-25 15:16:00,211.211 INFO    ] Checking for camera pi updates...
[2026-08-25 15:16:00,249.249 INFO    ] 200
[2026-08-25 15:16:00,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:00,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:16:00,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:16:00,352.352 INFO    ] No camera update needed
[2026-08-25 15:16:00,355.355 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:16:00,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:16:00,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:16:00,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:16:02,410.410 INFO    ] ================================================
[2026-08-25 15:16:02,432.432 INFO    ] Launching Daemon at Tue Aug 25 15:16:02 IST 2026
[2026-08-25 15:16:02,449.449 INFO    ] ================================================
[2026-08-25 15:16:03,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:16:03
[2026-08-25 15:16:03,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:16:04,118.118 INFO    ] Initializing speech engine...
[2026-08-25 15:16:04,131.131 INFO    ] 2026-08-25 15:16:04
[2026-08-25 15:16:04,389.389 INFO    ] 2026-08-25 15:16:04
[2026-08-25 15:16:04,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:16:04,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:16:04,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:16:04,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:16:04,837.837 INFO    ] time= 25/08/2026 15:16:04
[2026-08-25 15:16:04,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:16:04,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:16:05,111.111 INFO    ] No existing commands found in stream
[2026-08-25 15:16:10,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:16:10,129.129 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 15:16:12,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:16:12,092.092 INFO    ] Checking for system updates...
[2026-08-25 15:16:12,132.132 INFO    ] 200
[2026-08-25 15:16:12,135.135 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:12,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:16:12,197.197 INFO    ] No update needed
[2026-08-25 15:16:12,199.199 INFO    ] Checking for camera pi updates...
[2026-08-25 15:16:12,233.233 INFO    ] 200
[2026-08-25 15:16:12,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:12,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:16:12,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:16:12,331.331 INFO    ] No camera update needed
[2026-08-25 15:16:12,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:16:12,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:16:12,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:16:12,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:16:14,391.391 INFO    ] ================================================
[2026-08-25 15:16:14,406.406 INFO    ] Launching Daemon at Tue Aug 25 15:16:14 IST 2026
[2026-08-25 15:16:14,417.417 INFO    ] ================================================
[2026-08-25 15:16:14,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:16:14
[2026-08-25 15:16:15,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:16:15,867.867 INFO    ] Initializing speech engine...
[2026-08-25 15:16:15,876.876 INFO    ] 2026-08-25 15:16:15
[2026-08-25 15:16:16,139.139 INFO    ] 2026-08-25 15:16:16
[2026-08-25 15:16:16,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:16:16,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:16:16,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:16:16,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:16:16,617.617 INFO    ] time= 25/08/2026 15:16:16
[2026-08-25 15:16:16,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:16:16,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:16:16,821.821 INFO    ] No existing commands found in stream
[2026-08-25 15:16:21,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:16:21,849.849 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 15:16:22,404.404 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:16:22,407.407 INFO    ] Checking for system updates...
[2026-08-25 15:16:22,442.442 INFO    ] 200
[2026-08-25 15:16:22,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:22,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:16:22,503.503 INFO    ] No update needed
[2026-08-25 15:16:22,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 15:16:22,540.540 INFO    ] 200
[2026-08-25 15:16:22,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:22,583.583 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:16:22,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:16:22,655.655 INFO    ] No camera update needed
[2026-08-25 15:16:22,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:16:22,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:16:22,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:16:22,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:16:24,711.711 INFO    ] ================================================
[2026-08-25 15:16:24,727.727 INFO    ] Launching Daemon at Tue Aug 25 15:16:24 IST 2026
[2026-08-25 15:16:24,737.737 INFO    ] ================================================
[2026-08-25 15:16:25,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:16:25
[2026-08-25 15:16:25,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:16:26,189.189 INFO    ] Initializing speech engine...
[2026-08-25 15:16:26,199.199 INFO    ] 2026-08-25 15:16:26
[2026-08-25 15:16:26,452.452 INFO    ] 2026-08-25 15:16:26
[2026-08-25 15:16:26,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:16:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:16:26,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:16:26,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:16:26,910.910 INFO    ] time= 25/08/2026 15:16:26
[2026-08-25 15:16:26,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:16:27,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:16:27,154.154 INFO    ] No existing commands found in stream
[2026-08-25 15:16:32,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:16:32,170.170 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 15:16:34,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:16:34,858.858 INFO    ] Checking for system updates...
[2026-08-25 15:16:34,899.899 INFO    ] 200
[2026-08-25 15:16:34,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:34,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:16:34,965.965 INFO    ] No update needed
[2026-08-25 15:16:34,967.967 INFO    ] Checking for camera pi updates...
[2026-08-25 15:16:35,002.002 INFO    ] 200
[2026-08-25 15:16:35,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:35,046.046 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:16:35,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:16:35,093.093 INFO    ] No camera update needed
[2026-08-25 15:16:35,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:16:35,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:16:35,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:16:35,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:16:37,151.151 INFO    ] ================================================
[2026-08-25 15:16:37,166.166 INFO    ] Launching Daemon at Tue Aug 25 15:16:37 IST 2026
[2026-08-25 15:16:37,177.177 INFO    ] ================================================
[2026-08-25 15:16:37,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:16:37
[2026-08-25 15:16:38,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:16:38,757.757 INFO    ] Initializing speech engine...
[2026-08-25 15:16:38,763.763 INFO    ] 2026-08-25 15:16:38
[2026-08-25 15:16:39,079.079 INFO    ] 2026-08-25 15:16:39
[2026-08-25 15:16:39,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:16:39,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:16:39,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:16:39,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:16:39,593.593 INFO    ] time= 25/08/2026 15:16:39
[2026-08-25 15:16:39,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:16:39,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:16:39,783.783 INFO    ] No existing commands found in stream
[2026-08-25 15:16:44,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:16:44,826.826 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 15:16:48,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:16:48,321.321 INFO    ] Checking for system updates...
[2026-08-25 15:16:48,357.357 INFO    ] 200
[2026-08-25 15:16:48,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:48,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:16:48,423.423 INFO    ] No update needed
[2026-08-25 15:16:48,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 15:16:48,461.461 INFO    ] 200
[2026-08-25 15:16:48,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:16:48,505.505 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:16:48,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:16:48,566.566 INFO    ] No camera update needed
[2026-08-25 15:16:48,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:16:48,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:16:48,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:16:48,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:16:50,626.626 INFO    ] ================================================
[2026-08-25 15:16:50,641.641 INFO    ] Launching Daemon at Tue Aug 25 15:16:50 IST 2026
[2026-08-25 15:16:50,652.652 INFO    ] ================================================
[2026-08-25 15:16:51,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:16:51
[2026-08-25 15:16:51,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:16:52,101.101 INFO    ] Initializing speech engine...
[2026-08-25 15:16:52,110.110 INFO    ] 2026-08-25 15:16:52
[2026-08-25 15:16:52,393.393 INFO    ] 2026-08-25 15:16:52
[2026-08-25 15:16:52,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:16:52,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:16:52,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:16:52,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:16:52,801.801 INFO    ] time= 25/08/2026 15:16:52
[2026-08-25 15:16:52,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:16:52,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:16:52,909.909 INFO    ] No existing commands found in stream
[2026-08-25 15:16:57,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:16:57,925.925 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 15:17:01,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:17:01,540.540 INFO    ] Checking for system updates...
[2026-08-25 15:17:01,575.575 INFO    ] 200
[2026-08-25 15:17:01,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:01,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:01,632.632 INFO    ] No update needed
[2026-08-25 15:17:01,634.634 INFO    ] Checking for camera pi updates...
[2026-08-25 15:17:01,667.667 INFO    ] 200
[2026-08-25 15:17:01,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:01,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:17:01,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:01,801.801 INFO    ] No camera update needed
[2026-08-25 15:17:01,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:17:01,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:17:01,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:17:01,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:17:03,904.904 INFO    ] ================================================
[2026-08-25 15:17:03,919.919 INFO    ] Launching Daemon at Tue Aug 25 15:17:03 IST 2026
[2026-08-25 15:17:03,930.930 INFO    ] ================================================
[2026-08-25 15:17:04,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:17:04
[2026-08-25 15:17:05,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:17:05,345.345 INFO    ] Initializing speech engine...
[2026-08-25 15:17:05,360.360 INFO    ] 2026-08-25 15:17:05
[2026-08-25 15:17:05,645.645 INFO    ] 2026-08-25 15:17:05
[2026-08-25 15:17:05,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:17:05,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:17:05,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:17:06,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:17:06,063.063 INFO    ] time= 25/08/2026 15:17:06
[2026-08-25 15:17:06,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:17:06,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:17:06,195.195 INFO    ] No existing commands found in stream
[2026-08-25 15:17:11,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:17:11,227.227 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 15:17:15,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:17:15,457.457 INFO    ] Checking for system updates...
[2026-08-25 15:17:15,497.497 INFO    ] 200
[2026-08-25 15:17:15,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:15,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:17:15,561.561 INFO    ] No update needed
[2026-08-25 15:17:15,564.564 INFO    ] Checking for camera pi updates...
[2026-08-25 15:17:15,602.602 INFO    ] 200
[2026-08-25 15:17:15,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:15,645.645 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:17:15,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:17:15,707.707 INFO    ] No camera update needed
[2026-08-25 15:17:15,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:17:15,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:17:15,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:17:15,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:17:17,761.761 INFO    ] ================================================
[2026-08-25 15:17:17,776.776 INFO    ] Launching Daemon at Tue Aug 25 15:17:17 IST 2026
[2026-08-25 15:17:17,787.787 INFO    ] ================================================
[2026-08-25 15:17:18,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:17:18
[2026-08-25 15:17:19,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:17:19,294.294 INFO    ] Initializing speech engine...
[2026-08-25 15:17:19,301.301 INFO    ] 2026-08-25 15:17:19
[2026-08-25 15:17:19,560.560 INFO    ] 2026-08-25 15:17:19
[2026-08-25 15:17:19,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:17:19,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:17:19,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:17:19,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:17:20,040.040 INFO    ] time= 25/08/2026 15:17:19
[2026-08-25 15:17:20,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:17:20,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:17:20,268.268 INFO    ] No existing commands found in stream
[2026-08-25 15:17:25,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:17:25,293.293 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 15:17:26,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:17:26,284.284 INFO    ] Checking for system updates...
[2026-08-25 15:17:26,326.326 INFO    ] 200
[2026-08-25 15:17:26,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:26,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:26,388.388 INFO    ] No update needed
[2026-08-25 15:17:26,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 15:17:26,425.425 INFO    ] 200
[2026-08-25 15:17:26,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:26,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:17:26,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:26,519.519 INFO    ] No camera update needed
[2026-08-25 15:17:26,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:17:26,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:17:26,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:17:26,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:17:28,574.574 INFO    ] ================================================
[2026-08-25 15:17:28,590.590 INFO    ] Launching Daemon at Tue Aug 25 15:17:28 IST 2026
[2026-08-25 15:17:28,600.600 INFO    ] ================================================
[2026-08-25 15:17:29,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:17:29
[2026-08-25 15:17:29,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:17:30,284.284 INFO    ] Initializing speech engine...
[2026-08-25 15:17:30,294.294 INFO    ] 2026-08-25 15:17:30
[2026-08-25 15:17:30,604.604 INFO    ] 2026-08-25 15:17:30
[2026-08-25 15:17:30,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:17:30,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:17:30,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:17:31,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:17:31,112.112 INFO    ] time= 25/08/2026 15:17:31
[2026-08-25 15:17:31,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:17:31,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:17:31,313.313 INFO    ] No existing commands found in stream
[2026-08-25 15:17:36,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:17:36,342.342 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 15:17:39,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:17:39,584.584 INFO    ] Checking for system updates...
[2026-08-25 15:17:39,621.621 INFO    ] 200
[2026-08-25 15:17:39,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:39,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:39,681.681 INFO    ] No update needed
[2026-08-25 15:17:39,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 15:17:39,719.719 INFO    ] 200
[2026-08-25 15:17:39,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:39,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:17:39,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:39,824.824 INFO    ] No camera update needed
[2026-08-25 15:17:39,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:17:39,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:17:39,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:17:39,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:17:41,885.885 INFO    ] ================================================
[2026-08-25 15:17:41,900.900 INFO    ] Launching Daemon at Tue Aug 25 15:17:41 IST 2026
[2026-08-25 15:17:41,911.911 INFO    ] ================================================
[2026-08-25 15:17:42,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:17:42
[2026-08-25 15:17:43,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:17:43,320.320 INFO    ] Initializing speech engine...
[2026-08-25 15:17:43,328.328 INFO    ] 2026-08-25 15:17:43
[2026-08-25 15:17:43,629.629 INFO    ] 2026-08-25 15:17:43
[2026-08-25 15:17:43,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:17:43,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:17:43,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:17:44,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:17:44,023.023 INFO    ] time= 25/08/2026 15:17:44
[2026-08-25 15:17:44,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:17:44,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:17:44,154.154 INFO    ] No existing commands found in stream
[2026-08-25 15:17:49,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:17:49,169.169 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 15:17:49,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:17:49,843.843 INFO    ] Checking for system updates...
[2026-08-25 15:17:49,883.883 INFO    ] 200
[2026-08-25 15:17:49,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:49,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:49,955.955 INFO    ] No update needed
[2026-08-25 15:17:49,957.957 INFO    ] Checking for camera pi updates...
[2026-08-25 15:17:49,996.996 INFO    ] 200
[2026-08-25 15:17:49,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:17:50,046.046 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:17:50,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:17:50,191.191 INFO    ] No camera update needed
[2026-08-25 15:17:50,194.194 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:17:50,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:17:50,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:17:50,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:17:52,247.247 INFO    ] ================================================
[2026-08-25 15:17:52,262.262 INFO    ] Launching Daemon at Tue Aug 25 15:17:52 IST 2026
[2026-08-25 15:17:52,273.273 INFO    ] ================================================
[2026-08-25 15:17:52,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:17:52
[2026-08-25 15:17:53,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:17:53,735.735 INFO    ] Initializing speech engine...
[2026-08-25 15:17:53,744.744 INFO    ] 2026-08-25 15:17:53
[2026-08-25 15:17:54,005.005 INFO    ] 2026-08-25 15:17:53
[2026-08-25 15:17:54,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:17:54,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:17:54,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:17:54,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:17:54,500.500 INFO    ] time= 25/08/2026 15:17:54
[2026-08-25 15:17:54,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:17:54,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:17:54,704.704 INFO    ] No existing commands found in stream
[2026-08-25 15:17:59,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:17:59,730.730 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 15:18:03,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:18:03,442.442 INFO    ] Checking for system updates...
[2026-08-25 15:18:03,478.478 INFO    ] 200
[2026-08-25 15:18:03,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:03,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:18:03,538.538 INFO    ] No update needed
[2026-08-25 15:18:03,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 15:18:03,575.575 INFO    ] 200
[2026-08-25 15:18:03,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:03,619.619 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:18:03,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:18:03,676.676 INFO    ] No camera update needed
[2026-08-25 15:18:03,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:18:03,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:18:03,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:18:03,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:18:05,732.732 INFO    ] ================================================
[2026-08-25 15:18:05,748.748 INFO    ] Launching Daemon at Tue Aug 25 15:18:05 IST 2026
[2026-08-25 15:18:05,759.759 INFO    ] ================================================
[2026-08-25 15:18:06,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:18:06
[2026-08-25 15:18:06,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:18:07,172.172 INFO    ] Initializing speech engine...
[2026-08-25 15:18:07,187.187 INFO    ] 2026-08-25 15:18:07
[2026-08-25 15:18:07,452.452 INFO    ] 2026-08-25 15:18:07
[2026-08-25 15:18:07,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:18:07,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:18:07,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:18:07,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:18:07,909.909 INFO    ] time= 25/08/2026 15:18:07
[2026-08-25 15:18:07,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:18:08,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:18:08,151.151 INFO    ] No existing commands found in stream
[2026-08-25 15:18:13,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:18:13,180.180 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 15:18:15,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:18:15,876.876 INFO    ] Checking for system updates...
[2026-08-25 15:18:15,911.911 INFO    ] 200
[2026-08-25 15:18:15,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:15,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:18:15,968.968 INFO    ] No update needed
[2026-08-25 15:18:15,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 15:18:16,005.005 INFO    ] 200
[2026-08-25 15:18:16,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:16,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:18:16,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:18:16,102.102 INFO    ] No camera update needed
[2026-08-25 15:18:16,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:18:16,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:18:16,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:18:16,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:18:18,158.158 INFO    ] ================================================
[2026-08-25 15:18:18,173.173 INFO    ] Launching Daemon at Tue Aug 25 15:18:18 IST 2026
[2026-08-25 15:18:18,184.184 INFO    ] ================================================
[2026-08-25 15:18:18,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:18:18
[2026-08-25 15:18:19,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:18:19,804.804 INFO    ] Initializing speech engine...
[2026-08-25 15:18:19,811.811 INFO    ] 2026-08-25 15:18:19
[2026-08-25 15:18:20,100.100 INFO    ] 2026-08-25 15:18:20
[2026-08-25 15:18:20,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:18:20,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:18:20,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:18:20,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:18:20,575.575 INFO    ] time= 25/08/2026 15:18:20
[2026-08-25 15:18:20,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:18:20,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:18:20,764.764 INFO    ] No existing commands found in stream
[2026-08-25 15:18:25,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:18:25,793.793 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 15:18:27,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:18:27,395.395 INFO    ] Checking for system updates...
[2026-08-25 15:18:27,435.435 INFO    ] 200
[2026-08-25 15:18:27,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:27,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:18:27,499.499 INFO    ] No update needed
[2026-08-25 15:18:27,502.502 INFO    ] Checking for camera pi updates...
[2026-08-25 15:18:27,539.539 INFO    ] 200
[2026-08-25 15:18:27,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:27,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:18:27,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:18:27,634.634 INFO    ] No camera update needed
[2026-08-25 15:18:27,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:18:27,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:18:27,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:18:27,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:18:29,693.693 INFO    ] ================================================
[2026-08-25 15:18:29,708.708 INFO    ] Launching Daemon at Tue Aug 25 15:18:29 IST 2026
[2026-08-25 15:18:29,719.719 INFO    ] ================================================
[2026-08-25 15:18:30,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:18:30
[2026-08-25 15:18:30,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:18:31,126.126 INFO    ] Initializing speech engine...
[2026-08-25 15:18:31,140.140 INFO    ] 2026-08-25 15:18:31
[2026-08-25 15:18:31,420.420 INFO    ] 2026-08-25 15:18:31
[2026-08-25 15:18:31,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:18:31,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:18:31,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:18:31,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:18:31,818.818 INFO    ] time= 25/08/2026 15:18:31
[2026-08-25 15:18:31,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:18:31,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:18:31,993.993 INFO    ] No existing commands found in stream
[2026-08-25 15:18:37,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:18:37,021.021 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 15:18:40,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:18:40,042.042 INFO    ] Checking for system updates...
[2026-08-25 15:18:40,080.080 INFO    ] 200
[2026-08-25 15:18:40,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:40,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:18:40,138.138 INFO    ] No update needed
[2026-08-25 15:18:40,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 15:18:40,173.173 INFO    ] 200
[2026-08-25 15:18:40,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:40,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:18:40,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:18:40,264.264 INFO    ] No camera update needed
[2026-08-25 15:18:40,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:18:40,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:18:40,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:18:40,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:18:42,318.318 INFO    ] ================================================
[2026-08-25 15:18:42,334.334 INFO    ] Launching Daemon at Tue Aug 25 15:18:42 IST 2026
[2026-08-25 15:18:42,346.346 INFO    ] ================================================
[2026-08-25 15:18:42,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:18:42
[2026-08-25 15:18:43,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:18:43,779.779 INFO    ] Initializing speech engine...
[2026-08-25 15:18:43,802.802 INFO    ] 2026-08-25 15:18:43
[2026-08-25 15:18:44,080.080 INFO    ] 2026-08-25 15:18:44
[2026-08-25 15:18:44,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:18:44,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:18:44,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:18:44,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:18:44,491.491 INFO    ] time= 25/08/2026 15:18:44
[2026-08-25 15:18:44,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:18:44,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:18:44,656.656 INFO    ] No existing commands found in stream
[2026-08-25 15:18:49,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:18:49,684.684 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 15:18:50,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:18:50,267.267 INFO    ] Checking for system updates...
[2026-08-25 15:18:50,302.302 INFO    ] 200
[2026-08-25 15:18:50,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:50,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:18:50,359.359 INFO    ] No update needed
[2026-08-25 15:18:50,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 15:18:50,395.395 INFO    ] 200
[2026-08-25 15:18:50,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:18:50,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:18:50,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:18:50,488.488 INFO    ] No camera update needed
[2026-08-25 15:18:50,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:18:50,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:18:50,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:18:50,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:18:52,544.544 INFO    ] ================================================
[2026-08-25 15:18:52,559.559 INFO    ] Launching Daemon at Tue Aug 25 15:18:52 IST 2026
[2026-08-25 15:18:52,569.569 INFO    ] ================================================
[2026-08-25 15:18:53,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:18:53
[2026-08-25 15:18:53,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:18:54,163.163 INFO    ] Initializing speech engine...
[2026-08-25 15:18:54,171.171 INFO    ] 2026-08-25 15:18:54
[2026-08-25 15:18:54,447.447 INFO    ] 2026-08-25 15:18:54
[2026-08-25 15:18:54,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:18:54,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:18:54,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:18:54,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:18:54,921.921 INFO    ] time= 25/08/2026 15:18:54
[2026-08-25 15:18:54,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:18:55,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:18:55,126.126 INFO    ] No existing commands found in stream
[2026-08-25 15:19:00,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:19:00,147.147 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 15:19:03,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:19:03,722.722 INFO    ] Checking for system updates...
[2026-08-25 15:19:03,758.758 INFO    ] 200
[2026-08-25 15:19:03,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:03,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:19:03,819.819 INFO    ] No update needed
[2026-08-25 15:19:03,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 15:19:03,855.855 INFO    ] 200
[2026-08-25 15:19:03,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:03,898.898 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:19:03,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:19:03,955.955 INFO    ] No camera update needed
[2026-08-25 15:19:03,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:19:03,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:19:03,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:19:03,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:19:06,010.010 INFO    ] ================================================
[2026-08-25 15:19:06,025.025 INFO    ] Launching Daemon at Tue Aug 25 15:19:06 IST 2026
[2026-08-25 15:19:06,036.036 INFO    ] ================================================
[2026-08-25 15:19:06,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:19:06
[2026-08-25 15:19:07,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:19:07,606.606 INFO    ] Initializing speech engine...
[2026-08-25 15:19:07,619.619 INFO    ] 2026-08-25 15:19:07
[2026-08-25 15:19:07,931.931 INFO    ] 2026-08-25 15:19:07
[2026-08-25 15:19:08,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:19:08,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:19:08,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:19:08,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:19:08,385.385 INFO    ] time= 25/08/2026 15:19:08
[2026-08-25 15:19:08,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:19:08,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:19:08,590.590 INFO    ] No existing commands found in stream
[2026-08-25 15:19:13,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:19:13,612.612 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 15:19:16,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:19:16,964.964 INFO    ] Checking for system updates...
[2026-08-25 15:19:17,001.001 INFO    ] 200
[2026-08-25 15:19:17,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:17,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:19:17,062.062 INFO    ] No update needed
[2026-08-25 15:19:17,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 15:19:17,100.100 INFO    ] 200
[2026-08-25 15:19:17,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:17,143.143 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:19:17,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:19:17,197.197 INFO    ] No camera update needed
[2026-08-25 15:19:17,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:19:17,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:19:17,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:19:17,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:19:19,253.253 INFO    ] ================================================
[2026-08-25 15:19:19,268.268 INFO    ] Launching Daemon at Tue Aug 25 15:19:19 IST 2026
[2026-08-25 15:19:19,279.279 INFO    ] ================================================
[2026-08-25 15:19:19,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:19:19
[2026-08-25 15:19:20,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:19:20,707.707 INFO    ] Initializing speech engine...
[2026-08-25 15:19:20,715.715 INFO    ] 2026-08-25 15:19:20
[2026-08-25 15:19:20,992.992 INFO    ] 2026-08-25 15:19:20
[2026-08-25 15:19:21,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:19:21,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:19:21,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:19:21,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:19:21,517.517 INFO    ] time= 25/08/2026 15:19:21
[2026-08-25 15:19:21,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:19:21,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:19:21,676.676 INFO    ] No existing commands found in stream
[2026-08-25 15:19:26,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:19:26,698.698 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 15:19:28,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:19:28,537.537 INFO    ] Checking for system updates...
[2026-08-25 15:19:28,573.573 INFO    ] 200
[2026-08-25 15:19:28,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:28,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:19:28,637.637 INFO    ] No update needed
[2026-08-25 15:19:28,639.639 INFO    ] Checking for camera pi updates...
[2026-08-25 15:19:28,672.672 INFO    ] 200
[2026-08-25 15:19:28,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:28,715.715 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:19:28,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:19:28,796.796 INFO    ] No camera update needed
[2026-08-25 15:19:28,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:19:28,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:19:28,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:19:28,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:19:30,850.850 INFO    ] ================================================
[2026-08-25 15:19:30,866.866 INFO    ] Launching Daemon at Tue Aug 25 15:19:30 IST 2026
[2026-08-25 15:19:30,878.878 INFO    ] ================================================
[2026-08-25 15:19:31,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:19:31
[2026-08-25 15:19:32,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:19:32,564.564 INFO    ] Initializing speech engine...
[2026-08-25 15:19:32,575.575 INFO    ] 2026-08-25 15:19:32
[2026-08-25 15:19:32,876.876 INFO    ] 2026-08-25 15:19:32
[2026-08-25 15:19:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:19:33,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:19:33,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:19:33,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:19:33,416.416 INFO    ] time= 25/08/2026 15:19:33
[2026-08-25 15:19:33,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:19:33,485.485 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:19:33,616.616 INFO    ] No existing commands found in stream
[2026-08-25 15:19:38,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:19:38,643.643 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 15:19:42,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:19:42,139.139 INFO    ] Checking for system updates...
[2026-08-25 15:19:42,176.176 INFO    ] 200
[2026-08-25 15:19:42,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:42,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:19:42,239.239 INFO    ] No update needed
[2026-08-25 15:19:42,241.241 INFO    ] Checking for camera pi updates...
[2026-08-25 15:19:42,277.277 INFO    ] 200
[2026-08-25 15:19:42,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:42,324.324 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:19:42,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:19:42,386.386 INFO    ] No camera update needed
[2026-08-25 15:19:42,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:19:42,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:19:42,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:19:42,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:19:44,441.441 INFO    ] ================================================
[2026-08-25 15:19:44,457.457 INFO    ] Launching Daemon at Tue Aug 25 15:19:44 IST 2026
[2026-08-25 15:19:44,468.468 INFO    ] ================================================
[2026-08-25 15:19:45,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:19:45
[2026-08-25 15:19:45,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:19:45,890.890 INFO    ] Initializing speech engine...
[2026-08-25 15:19:45,897.897 INFO    ] 2026-08-25 15:19:45
[2026-08-25 15:19:46,193.193 INFO    ] 2026-08-25 15:19:46
[2026-08-25 15:19:46,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:19:46,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:19:46,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:19:46,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:19:46,623.623 INFO    ] time= 25/08/2026 15:19:46
[2026-08-25 15:19:46,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:19:46,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:19:46,800.800 INFO    ] No existing commands found in stream
[2026-08-25 15:19:51,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:19:51,833.833 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 15:19:54,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:19:54,392.392 INFO    ] Checking for system updates...
[2026-08-25 15:19:54,431.431 INFO    ] 200
[2026-08-25 15:19:54,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:54,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:19:54,496.496 INFO    ] No update needed
[2026-08-25 15:19:54,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 15:19:54,533.533 INFO    ] 200
[2026-08-25 15:19:54,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:19:54,581.581 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:19:54,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:19:54,731.731 INFO    ] No camera update needed
[2026-08-25 15:19:54,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:19:54,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:19:54,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:19:54,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:19:56,789.789 INFO    ] ================================================
[2026-08-25 15:19:56,805.805 INFO    ] Launching Daemon at Tue Aug 25 15:19:56 IST 2026
[2026-08-25 15:19:56,816.816 INFO    ] ================================================
[2026-08-25 15:19:57,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:19:57
[2026-08-25 15:19:58,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:19:58,302.302 INFO    ] Initializing speech engine...
[2026-08-25 15:19:58,311.311 INFO    ] 2026-08-25 15:19:58
[2026-08-25 15:19:58,559.559 INFO    ] 2026-08-25 15:19:58
[2026-08-25 15:19:58,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:19:58,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:19:58,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:19:58,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:19:58,917.917 INFO    ] time= 25/08/2026 15:19:58
[2026-08-25 15:19:58,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:19:58,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:19:59,071.071 INFO    ] No existing commands found in stream
[2026-08-25 15:20:04,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:20:04,084.084 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 15:20:08,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:20:08,702.702 INFO    ] Checking for system updates...
[2026-08-25 15:20:08,746.746 INFO    ] 200
[2026-08-25 15:20:08,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:08,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:20:08,811.811 INFO    ] No update needed
[2026-08-25 15:20:08,814.814 INFO    ] Checking for camera pi updates...
[2026-08-25 15:20:08,850.850 INFO    ] 200
[2026-08-25 15:20:08,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:08,899.899 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:20:08,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:20:08,949.949 INFO    ] No camera update needed
[2026-08-25 15:20:08,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:20:08,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:20:08,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:20:08,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:20:11,005.005 INFO    ] ================================================
[2026-08-25 15:20:11,021.021 INFO    ] Launching Daemon at Tue Aug 25 15:20:11 IST 2026
[2026-08-25 15:20:11,035.035 INFO    ] ================================================
[2026-08-25 15:20:11,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:20:11
[2026-08-25 15:20:12,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:20:12,453.453 INFO    ] Initializing speech engine...
[2026-08-25 15:20:12,460.460 INFO    ] 2026-08-25 15:20:12
[2026-08-25 15:20:12,771.771 INFO    ] 2026-08-25 15:20:12
[2026-08-25 15:20:12,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:20:13,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:20:13,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:20:13,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:20:13,166.166 INFO    ] time= 25/08/2026 15:20:13
[2026-08-25 15:20:13,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:20:13,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:20:13,295.295 INFO    ] No existing commands found in stream
[2026-08-25 15:20:18,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:20:18,310.310 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 15:20:22,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:20:22,521.521 INFO    ] Checking for system updates...
[2026-08-25 15:20:22,557.557 INFO    ] 200
[2026-08-25 15:20:22,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:22,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:20:22,614.614 INFO    ] No update needed
[2026-08-25 15:20:22,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 15:20:22,655.655 INFO    ] 200
[2026-08-25 15:20:22,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:22,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:20:22,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:20:22,753.753 INFO    ] No camera update needed
[2026-08-25 15:20:22,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:20:22,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:20:22,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:20:22,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:20:24,807.807 INFO    ] ================================================
[2026-08-25 15:20:24,823.823 INFO    ] Launching Daemon at Tue Aug 25 15:20:24 IST 2026
[2026-08-25 15:20:24,834.834 INFO    ] ================================================
[2026-08-25 15:20:25,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:20:25
[2026-08-25 15:20:26,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:20:26,472.472 INFO    ] Initializing speech engine...
[2026-08-25 15:20:26,482.482 INFO    ] 2026-08-25 15:20:26
[2026-08-25 15:20:26,765.765 INFO    ] 2026-08-25 15:20:26
[2026-08-25 15:20:26,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:20:27,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:20:27,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:20:27,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:20:27,255.255 INFO    ] time= 25/08/2026 15:20:27
[2026-08-25 15:20:27,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:20:27,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:20:27,460.460 INFO    ] No existing commands found in stream
[2026-08-25 15:20:32,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:20:32,471.471 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 15:20:33,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:20:33,539.539 INFO    ] Checking for system updates...
[2026-08-25 15:20:33,576.576 INFO    ] 200
[2026-08-25 15:20:33,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:33,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:20:33,634.634 INFO    ] No update needed
[2026-08-25 15:20:33,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 15:20:33,670.670 INFO    ] 200
[2026-08-25 15:20:33,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:33,719.719 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:20:33,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:20:33,778.778 INFO    ] No camera update needed
[2026-08-25 15:20:33,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:20:33,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:20:33,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:20:33,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:20:35,833.833 INFO    ] ================================================
[2026-08-25 15:20:35,848.848 INFO    ] Launching Daemon at Tue Aug 25 15:20:35 IST 2026
[2026-08-25 15:20:35,858.858 INFO    ] ================================================
[2026-08-25 15:20:36,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:20:36
[2026-08-25 15:20:37,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:20:37,289.289 INFO    ] Initializing speech engine...
[2026-08-25 15:20:37,297.297 INFO    ] 2026-08-25 15:20:37
[2026-08-25 15:20:37,556.556 INFO    ] 2026-08-25 15:20:37
[2026-08-25 15:20:37,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:20:37,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:20:37,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:20:37,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:20:38,026.026 INFO    ] time= 25/08/2026 15:20:37
[2026-08-25 15:20:38,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:20:38,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:20:38,253.253 INFO    ] No existing commands found in stream
[2026-08-25 15:20:43,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:20:43,273.273 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 15:20:46,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:20:46,301.301 INFO    ] Checking for system updates...
[2026-08-25 15:20:46,341.341 INFO    ] 200
[2026-08-25 15:20:46,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:46,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:20:46,398.398 INFO    ] No update needed
[2026-08-25 15:20:46,401.401 INFO    ] Checking for camera pi updates...
[2026-08-25 15:20:46,438.438 INFO    ] 200
[2026-08-25 15:20:46,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:46,480.480 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:20:46,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:20:46,529.529 INFO    ] No camera update needed
[2026-08-25 15:20:46,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:20:46,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:20:46,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:20:46,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:20:48,585.585 INFO    ] ================================================
[2026-08-25 15:20:48,600.600 INFO    ] Launching Daemon at Tue Aug 25 15:20:48 IST 2026
[2026-08-25 15:20:48,611.611 INFO    ] ================================================
[2026-08-25 15:20:49,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:20:49
[2026-08-25 15:20:49,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:20:50,274.274 INFO    ] Initializing speech engine...
[2026-08-25 15:20:50,279.279 INFO    ] 2026-08-25 15:20:50
[2026-08-25 15:20:50,590.590 INFO    ] 2026-08-25 15:20:50
[2026-08-25 15:20:50,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:20:50,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:20:50,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:20:50,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:20:51,038.038 INFO    ] time= 25/08/2026 15:20:50
[2026-08-25 15:20:51,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:20:51,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:20:51,239.239 INFO    ] No existing commands found in stream
[2026-08-25 15:20:56,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:20:56,266.266 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 15:20:57,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:20:57,566.566 INFO    ] Checking for system updates...
[2026-08-25 15:20:57,602.602 INFO    ] 200
[2026-08-25 15:20:57,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:57,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:20:57,662.662 INFO    ] No update needed
[2026-08-25 15:20:57,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 15:20:57,699.699 INFO    ] 200
[2026-08-25 15:20:57,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:20:57,743.743 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:20:57,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:20:57,808.808 INFO    ] No camera update needed
[2026-08-25 15:20:57,811.811 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:20:57,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:20:57,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:20:57,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:20:59,866.866 INFO    ] ================================================
[2026-08-25 15:20:59,881.881 INFO    ] Launching Daemon at Tue Aug 25 15:20:59 IST 2026
[2026-08-25 15:20:59,892.892 INFO    ] ================================================
[2026-08-25 15:21:00,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:21:00
[2026-08-25 15:21:01,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:21:01,312.312 INFO    ] Initializing speech engine...
[2026-08-25 15:21:01,326.326 INFO    ] 2026-08-25 15:21:01
[2026-08-25 15:21:01,611.611 INFO    ] 2026-08-25 15:21:01
[2026-08-25 15:21:01,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:21:01,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:21:01,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:21:01,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:21:01,987.987 INFO    ] time= 25/08/2026 15:21:01
[2026-08-25 15:21:01,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:21:02,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:21:02,074.074 INFO    ] No existing commands found in stream
[2026-08-25 15:21:07,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:21:07,087.087 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 15:21:09,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:21:09,680.680 INFO    ] Checking for system updates...
[2026-08-25 15:21:09,720.720 INFO    ] 200
[2026-08-25 15:21:09,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:09,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:09,784.784 INFO    ] No update needed
[2026-08-25 15:21:09,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 15:21:09,820.820 INFO    ] 200
[2026-08-25 15:21:09,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:09,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:21:09,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:09,910.910 INFO    ] No camera update needed
[2026-08-25 15:21:09,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:21:09,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:21:09,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:21:09,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:21:11,967.967 INFO    ] ================================================
[2026-08-25 15:21:11,986.986 INFO    ] Launching Daemon at Tue Aug 25 15:21:11 IST 2026
[2026-08-25 15:21:12,997.997 INFO    ] ================================================
[2026-08-25 15:21:12,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:21:12
[2026-08-25 15:21:13,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:21:13,589.589 INFO    ] Initializing speech engine...
[2026-08-25 15:21:13,601.601 INFO    ] 2026-08-25 15:21:13
[2026-08-25 15:21:13,910.910 INFO    ] 2026-08-25 15:21:13
[2026-08-25 15:21:13,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:21:14,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:21:14,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:21:14,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:21:14,412.412 INFO    ] time= 25/08/2026 15:21:14
[2026-08-25 15:21:14,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:21:14,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:21:14,577.577 INFO    ] No existing commands found in stream
[2026-08-25 15:21:19,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:21:19,605.605 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 15:21:23,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:21:23,094.094 INFO    ] Checking for system updates...
[2026-08-25 15:21:23,131.131 INFO    ] 200
[2026-08-25 15:21:23,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:23,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:23,188.188 INFO    ] No update needed
[2026-08-25 15:21:23,192.192 INFO    ] Checking for camera pi updates...
[2026-08-25 15:21:23,233.233 INFO    ] 200
[2026-08-25 15:21:23,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:23,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:21:23,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:23,330.330 INFO    ] No camera update needed
[2026-08-25 15:21:23,333.333 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:21:23,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:21:23,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:21:23,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:21:25,386.386 INFO    ] ================================================
[2026-08-25 15:21:25,402.402 INFO    ] Launching Daemon at Tue Aug 25 15:21:25 IST 2026
[2026-08-25 15:21:25,412.412 INFO    ] ================================================
[2026-08-25 15:21:25,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:21:25
[2026-08-25 15:21:26,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:21:26,891.891 INFO    ] Initializing speech engine...
[2026-08-25 15:21:26,900.900 INFO    ] 2026-08-25 15:21:26
[2026-08-25 15:21:27,162.162 INFO    ] 2026-08-25 15:21:27
[2026-08-25 15:21:27,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:21:27,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:21:27,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:21:27,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:21:27,643.643 INFO    ] time= 25/08/2026 15:21:27
[2026-08-25 15:21:27,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:21:27,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:21:27,838.838 INFO    ] No existing commands found in stream
[2026-08-25 15:21:32,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:21:32,850.850 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 15:21:34,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:21:34,643.643 INFO    ] Checking for system updates...
[2026-08-25 15:21:34,678.678 INFO    ] 200
[2026-08-25 15:21:34,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:34,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:34,735.735 INFO    ] No update needed
[2026-08-25 15:21:34,737.737 INFO    ] Checking for camera pi updates...
[2026-08-25 15:21:34,771.771 INFO    ] 200
[2026-08-25 15:21:34,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:34,821.821 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:21:34,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:34,878.878 INFO    ] No camera update needed
[2026-08-25 15:21:34,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:21:34,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:21:34,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:21:34,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:21:36,934.934 INFO    ] ================================================
[2026-08-25 15:21:36,950.950 INFO    ] Launching Daemon at Tue Aug 25 15:21:36 IST 2026
[2026-08-25 15:21:36,960.960 INFO    ] ================================================
[2026-08-25 15:21:37,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:21:37
[2026-08-25 15:21:38,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:21:38,377.377 INFO    ] Initializing speech engine...
[2026-08-25 15:21:38,386.386 INFO    ] 2026-08-25 15:21:38
[2026-08-25 15:21:38,631.631 INFO    ] 2026-08-25 15:21:38
[2026-08-25 15:21:38,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:21:38,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:21:38,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:21:39,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:21:39,115.115 INFO    ] time= 25/08/2026 15:21:39
[2026-08-25 15:21:39,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:21:39,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:21:39,325.325 INFO    ] No existing commands found in stream
[2026-08-25 15:21:44,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:21:44,349.349 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 15:21:46,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:21:46,925.925 INFO    ] Checking for system updates...
[2026-08-25 15:21:46,960.960 INFO    ] 200
[2026-08-25 15:21:46,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:47,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:21:47,023.023 INFO    ] No update needed
[2026-08-25 15:21:47,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 15:21:47,062.062 INFO    ] 200
[2026-08-25 15:21:47,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:47,109.109 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:21:47,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:21:47,165.165 INFO    ] No camera update needed
[2026-08-25 15:21:47,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:21:47,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:21:47,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:21:47,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:21:49,222.222 INFO    ] ================================================
[2026-08-25 15:21:49,237.237 INFO    ] Launching Daemon at Tue Aug 25 15:21:49 IST 2026
[2026-08-25 15:21:49,248.248 INFO    ] ================================================
[2026-08-25 15:21:49,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:21:49
[2026-08-25 15:21:50,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:21:50,663.663 INFO    ] Initializing speech engine...
[2026-08-25 15:21:50,683.683 INFO    ] 2026-08-25 15:21:50
[2026-08-25 15:21:50,944.944 INFO    ] 2026-08-25 15:21:50
[2026-08-25 15:21:50,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:21:51,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:21:51,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:21:51,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:21:51,345.345 INFO    ] time= 25/08/2026 15:21:51
[2026-08-25 15:21:51,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:21:51,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:21:51,426.426 INFO    ] No existing commands found in stream
[2026-08-25 15:21:56,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:21:56,441.441 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 15:21:57,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:21:57,413.413 INFO    ] Checking for system updates...
[2026-08-25 15:21:57,454.454 INFO    ] 200
[2026-08-25 15:21:57,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:57,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:57,516.516 INFO    ] No update needed
[2026-08-25 15:21:57,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 15:21:57,553.553 INFO    ] 200
[2026-08-25 15:21:57,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:21:57,599.599 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:21:57,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:21:57,663.663 INFO    ] No camera update needed
[2026-08-25 15:21:57,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:21:57,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:21:57,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:21:57,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:21:59,724.724 INFO    ] ================================================
[2026-08-25 15:21:59,739.739 INFO    ] Launching Daemon at Tue Aug 25 15:21:59 IST 2026
[2026-08-25 15:21:59,750.750 INFO    ] ================================================
[2026-08-25 15:22:00,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:22:00
[2026-08-25 15:22:00,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:22:01,209.209 INFO    ] Initializing speech engine...
[2026-08-25 15:22:01,218.218 INFO    ] 2026-08-25 15:22:01
[2026-08-25 15:22:01,486.486 INFO    ] 2026-08-25 15:22:01
[2026-08-25 15:22:01,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:22:01,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:22:01,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:22:01,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:22:01,969.969 INFO    ] time= 25/08/2026 15:22:01
[2026-08-25 15:22:02,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:22:02,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:22:02,183.183 INFO    ] No existing commands found in stream
[2026-08-25 15:22:07,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:22:07,198.198 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 15:22:07,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:22:07,920.920 INFO    ] Checking for system updates...
[2026-08-25 15:22:07,958.958 INFO    ] 200
[2026-08-25 15:22:07,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:08,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:22:08,017.017 INFO    ] No update needed
[2026-08-25 15:22:08,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 15:22:08,057.057 INFO    ] 200
[2026-08-25 15:22:08,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:08,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:22:08,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:22:08,162.162 INFO    ] No camera update needed
[2026-08-25 15:22:08,165.165 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:22:08,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:22:08,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:22:08,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:22:10,217.217 INFO    ] ================================================
[2026-08-25 15:22:10,233.233 INFO    ] Launching Daemon at Tue Aug 25 15:22:10 IST 2026
[2026-08-25 15:22:10,244.244 INFO    ] ================================================
[2026-08-25 15:22:10,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:22:10
[2026-08-25 15:22:11,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:22:11,793.793 INFO    ] Initializing speech engine...
[2026-08-25 15:22:11,802.802 INFO    ] 2026-08-25 15:22:11
[2026-08-25 15:22:12,071.071 INFO    ] 2026-08-25 15:22:12
[2026-08-25 15:22:12,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:22:12,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:22:12,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:22:12,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:22:12,551.551 INFO    ] time= 25/08/2026 15:22:12
[2026-08-25 15:22:12,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:22:12,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:22:12,774.774 INFO    ] No existing commands found in stream
[2026-08-25 15:22:17,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:22:17,806.806 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 15:22:21,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:22:21,460.460 INFO    ] Checking for system updates...
[2026-08-25 15:22:21,496.496 INFO    ] 200
[2026-08-25 15:22:21,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:21,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:21,561.561 INFO    ] No update needed
[2026-08-25 15:22:21,564.564 INFO    ] Checking for camera pi updates...
[2026-08-25 15:22:21,599.599 INFO    ] 200
[2026-08-25 15:22:21,601.601 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:21,643.643 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:22:21,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:21,694.694 INFO    ] No camera update needed
[2026-08-25 15:22:21,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:22:21,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:22:21,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:22:21,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:22:23,753.753 INFO    ] ================================================
[2026-08-25 15:22:23,769.769 INFO    ] Launching Daemon at Tue Aug 25 15:22:23 IST 2026
[2026-08-25 15:22:23,780.780 INFO    ] ================================================
[2026-08-25 15:22:24,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:22:24
[2026-08-25 15:22:25,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:22:25,397.397 INFO    ] Initializing speech engine...
[2026-08-25 15:22:25,404.404 INFO    ] 2026-08-25 15:22:25
[2026-08-25 15:22:25,688.688 INFO    ] 2026-08-25 15:22:25
[2026-08-25 15:22:25,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:22:25,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:22:26,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:22:26,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:22:26,232.232 INFO    ] time= 25/08/2026 15:22:26
[2026-08-25 15:22:26,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:22:26,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:22:26,391.391 INFO    ] No existing commands found in stream
[2026-08-25 15:22:31,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:22:31,424.424 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 15:22:33,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:22:33,929.929 INFO    ] Checking for system updates...
[2026-08-25 15:22:33,966.966 INFO    ] 200
[2026-08-25 15:22:33,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:34,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:34,024.024 INFO    ] No update needed
[2026-08-25 15:22:34,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 15:22:34,064.064 INFO    ] 200
[2026-08-25 15:22:34,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:34,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:22:34,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:34,158.158 INFO    ] No camera update needed
[2026-08-25 15:22:34,161.161 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:22:34,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:22:34,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:22:34,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:22:36,216.216 INFO    ] ================================================
[2026-08-25 15:22:36,231.231 INFO    ] Launching Daemon at Tue Aug 25 15:22:36 IST 2026
[2026-08-25 15:22:36,243.243 INFO    ] ================================================
[2026-08-25 15:22:36,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:22:36
[2026-08-25 15:22:37,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:22:37,653.653 INFO    ] Initializing speech engine...
[2026-08-25 15:22:37,666.666 INFO    ] 2026-08-25 15:22:37
[2026-08-25 15:22:37,941.941 INFO    ] 2026-08-25 15:22:37
[2026-08-25 15:22:37,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:22:38,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:22:38,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:22:38,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:22:38,338.338 INFO    ] time= 25/08/2026 15:22:38
[2026-08-25 15:22:38,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:22:38,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:22:38,426.426 INFO    ] No existing commands found in stream
[2026-08-25 15:22:43,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:22:43,453.453 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 15:22:43,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:22:43,955.955 INFO    ] Checking for system updates...
[2026-08-25 15:22:43,990.990 INFO    ] 200
[2026-08-25 15:22:43,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:44,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:44,047.047 INFO    ] No update needed
[2026-08-25 15:22:44,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 15:22:44,083.083 INFO    ] 200
[2026-08-25 15:22:44,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:44,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:22:44,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:44,180.180 INFO    ] No camera update needed
[2026-08-25 15:22:44,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:22:44,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:22:44,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:22:44,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:22:46,238.238 INFO    ] ================================================
[2026-08-25 15:22:46,253.253 INFO    ] Launching Daemon at Tue Aug 25 15:22:46 IST 2026
[2026-08-25 15:22:46,264.264 INFO    ] ================================================
[2026-08-25 15:22:46,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:22:46
[2026-08-25 15:22:47,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:22:47,859.859 INFO    ] Initializing speech engine...
[2026-08-25 15:22:47,866.866 INFO    ] 2026-08-25 15:22:47
[2026-08-25 15:22:48,157.157 INFO    ] 2026-08-25 15:22:48
[2026-08-25 15:22:48,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:22:48,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:22:48,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:22:48,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:22:48,719.719 INFO    ] time= 25/08/2026 15:22:48
[2026-08-25 15:22:48,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:22:48,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:22:48,902.902 INFO    ] No existing commands found in stream
[2026-08-25 15:22:53,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:22:53,931.931 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 15:22:57,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:22:57,158.158 INFO    ] Checking for system updates...
[2026-08-25 15:22:57,194.194 INFO    ] 200
[2026-08-25 15:22:57,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:57,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:57,252.252 INFO    ] No update needed
[2026-08-25 15:22:57,255.255 INFO    ] Checking for camera pi updates...
[2026-08-25 15:22:57,290.290 INFO    ] 200
[2026-08-25 15:22:57,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:22:57,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:22:57,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:22:57,389.389 INFO    ] No camera update needed
[2026-08-25 15:22:57,392.392 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:22:57,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:22:57,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:22:57,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:22:59,446.446 INFO    ] ================================================
[2026-08-25 15:22:59,461.461 INFO    ] Launching Daemon at Tue Aug 25 15:22:59 IST 2026
[2026-08-25 15:22:59,472.472 INFO    ] ================================================
[2026-08-25 15:23:00,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:23:00
[2026-08-25 15:23:00,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:23:01,299.299 INFO    ] Initializing speech engine...
[2026-08-25 15:23:01,302.302 INFO    ] 2026-08-25 15:23:01
[2026-08-25 15:23:01,699.699 INFO    ] 2026-08-25 15:23:01
[2026-08-25 15:23:01,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:23:01,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:23:01,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:23:02,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:23:02,102.102 INFO    ] time= 25/08/2026 15:23:02
[2026-08-25 15:23:02,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:23:02,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:23:02,168.168 INFO    ] No existing commands found in stream
[2026-08-25 15:23:07,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:23:07,181.181 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 15:23:09,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:23:09,860.860 INFO    ] Checking for system updates...
[2026-08-25 15:23:09,897.897 INFO    ] 200
[2026-08-25 15:23:09,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:09,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:23:09,954.954 INFO    ] No update needed
[2026-08-25 15:23:09,957.957 INFO    ] Checking for camera pi updates...
[2026-08-25 15:23:09,992.992 INFO    ] 200
[2026-08-25 15:23:09,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:10,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:23:10,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:23:10,098.098 INFO    ] No camera update needed
[2026-08-25 15:23:10,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:23:10,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:23:10,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:23:10,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:23:12,152.152 INFO    ] ================================================
[2026-08-25 15:23:12,168.168 INFO    ] Launching Daemon at Tue Aug 25 15:23:12 IST 2026
[2026-08-25 15:23:12,179.179 INFO    ] ================================================
[2026-08-25 15:23:12,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:23:12
[2026-08-25 15:23:13,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:23:13,625.625 INFO    ] Initializing speech engine...
[2026-08-25 15:23:13,633.633 INFO    ] 2026-08-25 15:23:13
[2026-08-25 15:23:13,935.935 INFO    ] 2026-08-25 15:23:13
[2026-08-25 15:23:14,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:23:14,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:23:14,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:23:14,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:23:14,445.445 INFO    ] time= 25/08/2026 15:23:14
[2026-08-25 15:23:14,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:23:14,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:23:14,667.667 INFO    ] No existing commands found in stream
[2026-08-25 15:23:19,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:23:19,691.691 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 15:23:23,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:23:23,854.854 INFO    ] Checking for system updates...
[2026-08-25 15:23:23,893.893 INFO    ] 200
[2026-08-25 15:23:23,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:23,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:23:23,961.961 INFO    ] No update needed
[2026-08-25 15:23:23,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 15:23:24,001.001 INFO    ] 200
[2026-08-25 15:23:24,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:24,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:23:24,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:23:24,107.107 INFO    ] No camera update needed
[2026-08-25 15:23:24,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:23:24,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:23:24,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:23:24,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:23:26,171.171 INFO    ] ================================================
[2026-08-25 15:23:26,187.187 INFO    ] Launching Daemon at Tue Aug 25 15:23:26 IST 2026
[2026-08-25 15:23:26,199.199 INFO    ] ================================================
[2026-08-25 15:23:26,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:23:26
[2026-08-25 15:23:27,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:23:27,818.818 INFO    ] Initializing speech engine...
[2026-08-25 15:23:27,830.830 INFO    ] 2026-08-25 15:23:27
[2026-08-25 15:23:28,110.110 INFO    ] 2026-08-25 15:23:28
[2026-08-25 15:23:28,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:23:28,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:23:28,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:23:28,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:23:28,573.573 INFO    ] time= 25/08/2026 15:23:28
[2026-08-25 15:23:28,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:23:28,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:23:28,756.756 INFO    ] No existing commands found in stream
[2026-08-25 15:23:33,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:23:33,779.779 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 15:23:35,981.981 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:23:35,984.984 INFO    ] Checking for system updates...
[2026-08-25 15:23:36,021.021 INFO    ] 200
[2026-08-25 15:23:36,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:36,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:23:36,078.078 INFO    ] No update needed
[2026-08-25 15:23:36,081.081 INFO    ] Checking for camera pi updates...
[2026-08-25 15:23:36,131.131 INFO    ] 200
[2026-08-25 15:23:36,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:36,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:23:36,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:23:36,261.261 INFO    ] No camera update needed
[2026-08-25 15:23:36,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:23:36,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:23:36,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:23:36,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:23:38,320.320 INFO    ] ================================================
[2026-08-25 15:23:38,335.335 INFO    ] Launching Daemon at Tue Aug 25 15:23:38 IST 2026
[2026-08-25 15:23:38,346.346 INFO    ] ================================================
[2026-08-25 15:23:38,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:23:38
[2026-08-25 15:23:39,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:23:39,949.949 INFO    ] Initializing speech engine...
[2026-08-25 15:23:39,957.957 INFO    ] 2026-08-25 15:23:39
[2026-08-25 15:23:40,246.246 INFO    ] 2026-08-25 15:23:40
[2026-08-25 15:23:40,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:23:40,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:23:40,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:23:40,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:23:40,730.730 INFO    ] time= 25/08/2026 15:23:40
[2026-08-25 15:23:40,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:23:40,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:23:40,924.924 INFO    ] No existing commands found in stream
[2026-08-25 15:23:45,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:23:45,945.945 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 15:23:48,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:23:48,660.660 INFO    ] Checking for system updates...
[2026-08-25 15:23:48,697.697 INFO    ] 200
[2026-08-25 15:23:48,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:48,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:23:48,756.756 INFO    ] No update needed
[2026-08-25 15:23:48,759.759 INFO    ] Checking for camera pi updates...
[2026-08-25 15:23:48,793.793 INFO    ] 200
[2026-08-25 15:23:48,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:23:48,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:23:48,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:23:48,884.884 INFO    ] No camera update needed
[2026-08-25 15:23:48,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:23:48,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:23:48,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:23:48,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:23:50,938.938 INFO    ] ================================================
[2026-08-25 15:23:50,954.954 INFO    ] Launching Daemon at Tue Aug 25 15:23:50 IST 2026
[2026-08-25 15:23:50,965.965 INFO    ] ================================================
[2026-08-25 15:23:51,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:23:51
[2026-08-25 15:23:52,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:23:52,429.429 INFO    ] Initializing speech engine...
[2026-08-25 15:23:52,437.437 INFO    ] 2026-08-25 15:23:52
[2026-08-25 15:23:52,699.699 INFO    ] 2026-08-25 15:23:52
[2026-08-25 15:23:52,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:23:52,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:23:52,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:23:53,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:23:53,229.229 INFO    ] time= 25/08/2026 15:23:53
[2026-08-25 15:23:53,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:23:53,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:23:53,400.400 INFO    ] No existing commands found in stream
[2026-08-25 15:23:58,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:23:58,418.418 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 15:24:03,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:24:03,379.379 INFO    ] Checking for system updates...
[2026-08-25 15:24:03,419.419 INFO    ] 200
[2026-08-25 15:24:03,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:03,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:24:03,476.476 INFO    ] No update needed
[2026-08-25 15:24:03,479.479 INFO    ] Checking for camera pi updates...
[2026-08-25 15:24:03,516.516 INFO    ] 200
[2026-08-25 15:24:03,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:03,558.558 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:24:03,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:24:03,618.618 INFO    ] No camera update needed
[2026-08-25 15:24:03,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:24:03,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:24:03,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:24:03,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:24:05,675.675 INFO    ] ================================================
[2026-08-25 15:24:05,691.691 INFO    ] Launching Daemon at Tue Aug 25 15:24:05 IST 2026
[2026-08-25 15:24:05,702.702 INFO    ] ================================================
[2026-08-25 15:24:06,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:24:06
[2026-08-25 15:24:06,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:24:07,112.112 INFO    ] Initializing speech engine...
[2026-08-25 15:24:07,120.120 INFO    ] 2026-08-25 15:24:07
[2026-08-25 15:24:07,394.394 INFO    ] 2026-08-25 15:24:07
[2026-08-25 15:24:07,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:24:07,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:24:07,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:24:07,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:24:07,909.909 INFO    ] time= 25/08/2026 15:24:07
[2026-08-25 15:24:07,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:24:07,969.969 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:24:08,120.120 INFO    ] No existing commands found in stream
[2026-08-25 15:24:13,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:24:13,137.137 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 15:24:16,392.392 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:24:16,394.394 INFO    ] Checking for system updates...
[2026-08-25 15:24:16,431.431 INFO    ] 200
[2026-08-25 15:24:16,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:16,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:24:16,490.490 INFO    ] No update needed
[2026-08-25 15:24:16,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 15:24:16,529.529 INFO    ] 200
[2026-08-25 15:24:16,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:16,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:24:16,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:24:16,717.717 INFO    ] No camera update needed
[2026-08-25 15:24:16,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:24:16,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:24:16,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:24:16,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:24:18,773.773 INFO    ] ================================================
[2026-08-25 15:24:18,788.788 INFO    ] Launching Daemon at Tue Aug 25 15:24:18 IST 2026
[2026-08-25 15:24:18,798.798 INFO    ] ================================================
[2026-08-25 15:24:19,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:24:19
[2026-08-25 15:24:19,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:24:20,206.206 INFO    ] Initializing speech engine...
[2026-08-25 15:24:20,222.222 INFO    ] 2026-08-25 15:24:20
[2026-08-25 15:24:20,513.513 INFO    ] 2026-08-25 15:24:20
[2026-08-25 15:24:20,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:24:20,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:24:20,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:24:20,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:24:21,011.011 INFO    ] time= 25/08/2026 15:24:20
[2026-08-25 15:24:21,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:24:21,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:24:21,200.200 INFO    ] No existing commands found in stream
[2026-08-25 15:24:26,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:24:26,230.230 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 15:24:27,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:24:27,691.691 INFO    ] Checking for system updates...
[2026-08-25 15:24:27,727.727 INFO    ] 200
[2026-08-25 15:24:27,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:27,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:24:27,788.788 INFO    ] No update needed
[2026-08-25 15:24:27,791.791 INFO    ] Checking for camera pi updates...
[2026-08-25 15:24:27,825.825 INFO    ] 200
[2026-08-25 15:24:27,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:27,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:24:27,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:24:27,920.920 INFO    ] No camera update needed
[2026-08-25 15:24:27,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:24:27,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:24:27,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:24:27,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:24:29,978.978 INFO    ] ================================================
[2026-08-25 15:24:29,993.993 INFO    ] Launching Daemon at Tue Aug 25 15:24:29 IST 2026
[2026-08-25 15:24:30,004.004 INFO    ] ================================================
[2026-08-25 15:24:30,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:24:30
[2026-08-25 15:24:31,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:24:31,496.496 INFO    ] Initializing speech engine...
[2026-08-25 15:24:31,503.503 INFO    ] 2026-08-25 15:24:31
[2026-08-25 15:24:31,779.779 INFO    ] 2026-08-25 15:24:31
[2026-08-25 15:24:31,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:24:32,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:24:32,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:24:32,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:24:32,260.260 INFO    ] time= 25/08/2026 15:24:32
[2026-08-25 15:24:32,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:24:32,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:24:32,492.492 INFO    ] No existing commands found in stream
[2026-08-25 15:24:37,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:24:37,522.522 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 15:24:39,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:24:39,502.502 INFO    ] Checking for system updates...
[2026-08-25 15:24:39,538.538 INFO    ] 200
[2026-08-25 15:24:39,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:39,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:24:39,603.603 INFO    ] No update needed
[2026-08-25 15:24:39,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 15:24:39,638.638 INFO    ] 200
[2026-08-25 15:24:39,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:39,687.687 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:24:39,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:24:39,745.745 INFO    ] No camera update needed
[2026-08-25 15:24:39,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:24:39,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:24:39,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:24:39,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:24:41,801.801 INFO    ] ================================================
[2026-08-25 15:24:41,817.817 INFO    ] Launching Daemon at Tue Aug 25 15:24:41 IST 2026
[2026-08-25 15:24:41,827.827 INFO    ] ================================================
[2026-08-25 15:24:42,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:24:42
[2026-08-25 15:24:43,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:24:43,291.291 INFO    ] Initializing speech engine...
[2026-08-25 15:24:43,300.300 INFO    ] 2026-08-25 15:24:43
[2026-08-25 15:24:43,557.557 INFO    ] 2026-08-25 15:24:43
[2026-08-25 15:24:43,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:24:43,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:24:43,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:24:43,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:24:44,023.023 INFO    ] time= 25/08/2026 15:24:43
[2026-08-25 15:24:44,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:24:44,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:24:44,193.193 INFO    ] No existing commands found in stream
[2026-08-25 15:24:49,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:24:49,232.232 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 15:24:53,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:24:53,021.021 INFO    ] Checking for system updates...
[2026-08-25 15:24:53,057.057 INFO    ] 200
[2026-08-25 15:24:53,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:53,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:24:53,122.122 INFO    ] No update needed
[2026-08-25 15:24:53,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 15:24:53,158.158 INFO    ] 200
[2026-08-25 15:24:53,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:24:53,213.213 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:24:53,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:24:53,260.260 INFO    ] No camera update needed
[2026-08-25 15:24:53,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:24:53,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:24:53,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:24:53,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:24:55,315.315 INFO    ] ================================================
[2026-08-25 15:24:55,331.331 INFO    ] Launching Daemon at Tue Aug 25 15:24:55 IST 2026
[2026-08-25 15:24:55,342.342 INFO    ] ================================================
[2026-08-25 15:24:55,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:24:55
[2026-08-25 15:24:56,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:24:56,987.987 INFO    ] Initializing speech engine...
[2026-08-25 15:24:56,999.999 INFO    ] 2026-08-25 15:24:56
[2026-08-25 15:24:57,269.269 INFO    ] 2026-08-25 15:24:57
[2026-08-25 15:24:57,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:24:57,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:24:57,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:24:57,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:24:57,812.812 INFO    ] time= 25/08/2026 15:24:57
[2026-08-25 15:24:57,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:24:57,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:24:57,970.970 INFO    ] No existing commands found in stream
[2026-08-25 15:25:02,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:25:02,997.997 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 15:25:06,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:25:06,957.957 INFO    ] Checking for system updates...
[2026-08-25 15:25:06,995.995 INFO    ] 200
[2026-08-25 15:25:06,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:07,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:25:07,061.061 INFO    ] No update needed
[2026-08-25 15:25:07,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 15:25:07,098.098 INFO    ] 200
[2026-08-25 15:25:07,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:07,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:25:07,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:25:07,196.196 INFO    ] No camera update needed
[2026-08-25 15:25:07,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:25:07,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:25:07,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:25:07,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:25:09,253.253 INFO    ] ================================================
[2026-08-25 15:25:09,268.268 INFO    ] Launching Daemon at Tue Aug 25 15:25:09 IST 2026
[2026-08-25 15:25:09,278.278 INFO    ] ================================================
[2026-08-25 15:25:09,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:25:09
[2026-08-25 15:25:10,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:25:10,679.679 INFO    ] Initializing speech engine...
[2026-08-25 15:25:10,685.685 INFO    ] 2026-08-25 15:25:10
[2026-08-25 15:25:10,995.995 INFO    ] 2026-08-25 15:25:10
[2026-08-25 15:25:11,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:25:11,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:25:11,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:25:11,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:25:11,439.439 INFO    ] time= 25/08/2026 15:25:11
[2026-08-25 15:25:11,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:25:11,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:25:11,527.527 INFO    ] No existing commands found in stream
[2026-08-25 15:25:16,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:25:16,560.560 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 15:25:18,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:25:18,067.067 INFO    ] Checking for system updates...
[2026-08-25 15:25:18,106.106 INFO    ] 200
[2026-08-25 15:25:18,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:18,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:25:18,163.163 INFO    ] No update needed
[2026-08-25 15:25:18,165.165 INFO    ] Checking for camera pi updates...
[2026-08-25 15:25:18,198.198 INFO    ] 200
[2026-08-25 15:25:18,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:18,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:25:18,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:25:18,294.294 INFO    ] No camera update needed
[2026-08-25 15:25:18,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:25:18,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:25:18,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:25:18,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:25:20,351.351 INFO    ] ================================================
[2026-08-25 15:25:20,366.366 INFO    ] Launching Daemon at Tue Aug 25 15:25:20 IST 2026
[2026-08-25 15:25:20,377.377 INFO    ] ================================================
[2026-08-25 15:25:20,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:25:20
[2026-08-25 15:25:21,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:25:21,939.939 INFO    ] Initializing speech engine...
[2026-08-25 15:25:21,948.948 INFO    ] 2026-08-25 15:25:21
[2026-08-25 15:25:22,252.252 INFO    ] 2026-08-25 15:25:22
[2026-08-25 15:25:22,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:25:22,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:25:22,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:25:22,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:25:22,716.716 INFO    ] time= 25/08/2026 15:25:22
[2026-08-25 15:25:22,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:25:22,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:25:22,917.917 INFO    ] No existing commands found in stream
[2026-08-25 15:25:27,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:25:27,932.932 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 15:25:29,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:25:29,329.329 INFO    ] Checking for system updates...
[2026-08-25 15:25:29,365.365 INFO    ] 200
[2026-08-25 15:25:29,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:29,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:25:29,428.428 INFO    ] No update needed
[2026-08-25 15:25:29,430.430 INFO    ] Checking for camera pi updates...
[2026-08-25 15:25:29,464.464 INFO    ] 200
[2026-08-25 15:25:29,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:29,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:25:29,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:25:29,554.554 INFO    ] No camera update needed
[2026-08-25 15:25:29,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:25:29,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:25:29,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:25:29,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:25:31,613.613 INFO    ] ================================================
[2026-08-25 15:25:31,629.629 INFO    ] Launching Daemon at Tue Aug 25 15:25:31 IST 2026
[2026-08-25 15:25:31,641.641 INFO    ] ================================================
[2026-08-25 15:25:32,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:25:32
[2026-08-25 15:25:32,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:25:33,129.129 INFO    ] Initializing speech engine...
[2026-08-25 15:25:33,136.136 INFO    ] 2026-08-25 15:25:33
[2026-08-25 15:25:33,386.386 INFO    ] 2026-08-25 15:25:33
[2026-08-25 15:25:33,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:25:33,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:25:33,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:25:33,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:25:33,878.878 INFO    ] time= 25/08/2026 15:25:33
[2026-08-25 15:25:33,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:25:33,958.958 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:25:34,088.088 INFO    ] No existing commands found in stream
[2026-08-25 15:25:39,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:25:39,119.119 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 15:25:41,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:25:41,834.834 INFO    ] Checking for system updates...
[2026-08-25 15:25:41,869.869 INFO    ] 200
[2026-08-25 15:25:41,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:41,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:25:41,927.927 INFO    ] No update needed
[2026-08-25 15:25:41,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 15:25:41,963.963 INFO    ] 200
[2026-08-25 15:25:41,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:42,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:25:42,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:25:42,055.055 INFO    ] No camera update needed
[2026-08-25 15:25:42,057.057 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:25:42,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:25:42,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:25:42,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:25:44,111.111 INFO    ] ================================================
[2026-08-25 15:25:44,126.126 INFO    ] Launching Daemon at Tue Aug 25 15:25:44 IST 2026
[2026-08-25 15:25:44,137.137 INFO    ] ================================================
[2026-08-25 15:25:44,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:25:44
[2026-08-25 15:25:45,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:25:45,775.775 INFO    ] Initializing speech engine...
[2026-08-25 15:25:45,785.785 INFO    ] 2026-08-25 15:25:45
[2026-08-25 15:25:46,052.052 INFO    ] 2026-08-25 15:25:46
[2026-08-25 15:25:46,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:25:46,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:25:46,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:25:46,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:25:46,559.559 INFO    ] time= 25/08/2026 15:25:46
[2026-08-25 15:25:46,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:25:46,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:25:46,750.750 INFO    ] No existing commands found in stream
[2026-08-25 15:25:51,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:25:51,772.772 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 15:25:55,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:25:55,758.758 INFO    ] Checking for system updates...
[2026-08-25 15:25:55,793.793 INFO    ] 200
[2026-08-25 15:25:55,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:55,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:25:55,859.859 INFO    ] No update needed
[2026-08-25 15:25:55,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 15:25:55,894.894 INFO    ] 200
[2026-08-25 15:25:55,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:25:55,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:25:55,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:25:55,988.988 INFO    ] No camera update needed
[2026-08-25 15:25:55,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:25:55,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:25:55,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:25:56,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:25:58,041.041 INFO    ] ================================================
[2026-08-25 15:25:58,057.057 INFO    ] Launching Daemon at Tue Aug 25 15:25:58 IST 2026
[2026-08-25 15:25:58,067.067 INFO    ] ================================================
[2026-08-25 15:25:58,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:25:58
[2026-08-25 15:25:59,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:25:59,529.529 INFO    ] Initializing speech engine...
[2026-08-25 15:25:59,548.548 INFO    ] 2026-08-25 15:25:59
[2026-08-25 15:25:59,802.802 INFO    ] 2026-08-25 15:25:59
[2026-08-25 15:25:59,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:26:00,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:26:00,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:26:00,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:26:00,291.291 INFO    ] time= 25/08/2026 15:26:00
[2026-08-25 15:26:00,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:26:00,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:26:00,496.496 INFO    ] No existing commands found in stream
[2026-08-25 15:26:05,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:26:05,526.526 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 15:26:07,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:26:07,584.584 INFO    ] Checking for system updates...
[2026-08-25 15:26:07,620.620 INFO    ] 200
[2026-08-25 15:26:07,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:07,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:07,676.676 INFO    ] No update needed
[2026-08-25 15:26:07,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 15:26:07,712.712 INFO    ] 200
[2026-08-25 15:26:07,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:07,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:26:07,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:07,809.809 INFO    ] No camera update needed
[2026-08-25 15:26:07,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:26:07,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:26:07,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:26:07,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:26:09,863.863 INFO    ] ================================================
[2026-08-25 15:26:09,878.878 INFO    ] Launching Daemon at Tue Aug 25 15:26:09 IST 2026
[2026-08-25 15:26:09,889.889 INFO    ] ================================================
[2026-08-25 15:26:10,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:26:10
[2026-08-25 15:26:11,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:26:11,485.485 INFO    ] Initializing speech engine...
[2026-08-25 15:26:11,497.497 INFO    ] 2026-08-25 15:26:11
[2026-08-25 15:26:11,816.816 INFO    ] 2026-08-25 15:26:11
[2026-08-25 15:26:11,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:26:12,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:26:12,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:26:12,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:26:12,331.331 INFO    ] time= 25/08/2026 15:26:12
[2026-08-25 15:26:12,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:26:12,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:26:12,475.475 INFO    ] No existing commands found in stream
[2026-08-25 15:26:17,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:26:17,504.504 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 15:26:19,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:26:19,716.716 INFO    ] Checking for system updates...
[2026-08-25 15:26:19,753.753 INFO    ] 200
[2026-08-25 15:26:19,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:19,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:19,812.812 INFO    ] No update needed
[2026-08-25 15:26:19,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 15:26:19,848.848 INFO    ] 200
[2026-08-25 15:26:19,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:19,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:26:20,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:20,043.043 INFO    ] No camera update needed
[2026-08-25 15:26:20,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:26:20,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:26:20,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:26:20,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:26:22,098.098 INFO    ] ================================================
[2026-08-25 15:26:22,114.114 INFO    ] Launching Daemon at Tue Aug 25 15:26:22 IST 2026
[2026-08-25 15:26:22,124.124 INFO    ] ================================================
[2026-08-25 15:26:22,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:26:22
[2026-08-25 15:26:23,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:26:23,603.603 INFO    ] Initializing speech engine...
[2026-08-25 15:26:23,612.612 INFO    ] 2026-08-25 15:26:23
[2026-08-25 15:26:23,877.877 INFO    ] 2026-08-25 15:26:23
[2026-08-25 15:26:23,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:26:24,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:26:24,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:26:24,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:26:24,362.362 INFO    ] time= 25/08/2026 15:26:24
[2026-08-25 15:26:24,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:26:24,428.428 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:26:24,550.550 INFO    ] No existing commands found in stream
[2026-08-25 15:26:29,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:26:29,584.584 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 15:26:32,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:26:32,563.563 INFO    ] Checking for system updates...
[2026-08-25 15:26:32,605.605 INFO    ] 200
[2026-08-25 15:26:32,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:32,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:32,663.663 INFO    ] No update needed
[2026-08-25 15:26:32,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 15:26:32,699.699 INFO    ] 200
[2026-08-25 15:26:32,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:32,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:26:32,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:32,817.817 INFO    ] No camera update needed
[2026-08-25 15:26:32,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:26:32,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:26:32,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:26:32,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:26:34,874.874 INFO    ] ================================================
[2026-08-25 15:26:34,889.889 INFO    ] Launching Daemon at Tue Aug 25 15:26:34 IST 2026
[2026-08-25 15:26:34,900.900 INFO    ] ================================================
[2026-08-25 15:26:35,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:26:35
[2026-08-25 15:26:36,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:26:36,587.587 INFO    ] Initializing speech engine...
[2026-08-25 15:26:36,594.594 INFO    ] 2026-08-25 15:26:36
[2026-08-25 15:26:36,870.870 INFO    ] 2026-08-25 15:26:36
[2026-08-25 15:26:36,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:26:37,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:26:37,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:26:37,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:26:37,399.399 INFO    ] time= 25/08/2026 15:26:37
[2026-08-25 15:26:37,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:26:37,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:26:37,549.549 INFO    ] No existing commands found in stream
[2026-08-25 15:26:42,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:26:42,567.567 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 15:26:44,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:26:44,893.893 INFO    ] Checking for system updates...
[2026-08-25 15:26:44,928.928 INFO    ] 200
[2026-08-25 15:26:44,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:44,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:44,985.985 INFO    ] No update needed
[2026-08-25 15:26:44,988.988 INFO    ] Checking for camera pi updates...
[2026-08-25 15:26:45,022.022 INFO    ] 200
[2026-08-25 15:26:45,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:45,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:26:45,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:45,119.119 INFO    ] No camera update needed
[2026-08-25 15:26:45,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:26:45,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:26:45,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:26:45,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:26:47,175.175 INFO    ] ================================================
[2026-08-25 15:26:47,191.191 INFO    ] Launching Daemon at Tue Aug 25 15:26:47 IST 2026
[2026-08-25 15:26:47,203.203 INFO    ] ================================================
[2026-08-25 15:26:47,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:26:47
[2026-08-25 15:26:48,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:26:48,829.829 INFO    ] Initializing speech engine...
[2026-08-25 15:26:48,837.837 INFO    ] 2026-08-25 15:26:48
[2026-08-25 15:26:49,142.142 INFO    ] 2026-08-25 15:26:49
[2026-08-25 15:26:49,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:26:49,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:26:49,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:26:49,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:26:49,653.653 INFO    ] time= 25/08/2026 15:26:49
[2026-08-25 15:26:49,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:26:49,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:26:49,812.812 INFO    ] No existing commands found in stream
[2026-08-25 15:26:54,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:26:54,840.840 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 15:26:57,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:26:57,704.704 INFO    ] Checking for system updates...
[2026-08-25 15:26:57,747.747 INFO    ] 200
[2026-08-25 15:26:57,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:57,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:57,815.815 INFO    ] No update needed
[2026-08-25 15:26:57,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 15:26:57,857.857 INFO    ] 200
[2026-08-25 15:26:57,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:26:57,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:26:58,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:26:58,096.096 INFO    ] No camera update needed
[2026-08-25 15:26:58,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:26:58,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:26:58,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:26:58,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:27:00,155.155 INFO    ] ================================================
[2026-08-25 15:27:00,171.171 INFO    ] Launching Daemon at Tue Aug 25 15:27:00 IST 2026
[2026-08-25 15:27:00,183.183 INFO    ] ================================================
[2026-08-25 15:27:00,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:27:00
[2026-08-25 15:27:01,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:27:02,038.038 INFO    ] Initializing speech engine...
[2026-08-25 15:27:02,046.046 INFO    ] 2026-08-25 15:27:02
[2026-08-25 15:27:02,350.350 INFO    ] 2026-08-25 15:27:02
[2026-08-25 15:27:02,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:27:02,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:27:02,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:27:02,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:27:02,981.981 INFO    ] time= 25/08/2026 15:27:02
[2026-08-25 15:27:02,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:27:03,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:27:03,157.157 INFO    ] No existing commands found in stream
[2026-08-25 15:27:08,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:27:08,189.189 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 15:27:11,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:27:11,980.980 INFO    ] Checking for system updates...
[2026-08-25 15:27:12,020.020 INFO    ] 200
[2026-08-25 15:27:12,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:12,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:12,080.080 INFO    ] No update needed
[2026-08-25 15:27:12,084.084 INFO    ] Checking for camera pi updates...
[2026-08-25 15:27:12,122.122 INFO    ] 200
[2026-08-25 15:27:12,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:12,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:27:12,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:12,215.215 INFO    ] No camera update needed
[2026-08-25 15:27:12,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:27:12,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:27:12,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:27:12,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:27:14,275.275 INFO    ] ================================================
[2026-08-25 15:27:14,290.290 INFO    ] Launching Daemon at Tue Aug 25 15:27:14 IST 2026
[2026-08-25 15:27:14,301.301 INFO    ] ================================================
[2026-08-25 15:27:14,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:27:14
[2026-08-25 15:27:15,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:27:15,728.728 INFO    ] Initializing speech engine...
[2026-08-25 15:27:15,737.737 INFO    ] 2026-08-25 15:27:15
[2026-08-25 15:27:15,986.986 INFO    ] 2026-08-25 15:27:15
[2026-08-25 15:27:16,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:27:16,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:27:16,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:27:16,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:27:16,449.449 INFO    ] time= 25/08/2026 15:27:16
[2026-08-25 15:27:16,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:27:16,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:27:16,679.679 INFO    ] No existing commands found in stream
[2026-08-25 15:27:21,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:27:21,712.712 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 15:27:23,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:27:23,078.078 INFO    ] Checking for system updates...
[2026-08-25 15:27:23,119.119 INFO    ] 200
[2026-08-25 15:27:23,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:23,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:23,183.183 INFO    ] No update needed
[2026-08-25 15:27:23,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 15:27:23,219.219 INFO    ] 200
[2026-08-25 15:27:23,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:23,262.262 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:27:23,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:23,307.307 INFO    ] No camera update needed
[2026-08-25 15:27:23,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:27:23,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:27:23,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:27:23,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:27:25,364.364 INFO    ] ================================================
[2026-08-25 15:27:25,379.379 INFO    ] Launching Daemon at Tue Aug 25 15:27:25 IST 2026
[2026-08-25 15:27:25,390.390 INFO    ] ================================================
[2026-08-25 15:27:26,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:27:26
[2026-08-25 15:27:26,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:27:27,036.036 INFO    ] Initializing speech engine...
[2026-08-25 15:27:27,050.050 INFO    ] 2026-08-25 15:27:27
[2026-08-25 15:27:27,361.361 INFO    ] 2026-08-25 15:27:27
[2026-08-25 15:27:27,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:27:27,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:27:27,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:27:27,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:27:27,829.829 INFO    ] time= 25/08/2026 15:27:27
[2026-08-25 15:27:27,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:27:27,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:27:28,036.036 INFO    ] No existing commands found in stream
[2026-08-25 15:27:33,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:27:33,065.065 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 15:27:35,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:27:35,516.516 INFO    ] Checking for system updates...
[2026-08-25 15:27:35,552.552 INFO    ] 200
[2026-08-25 15:27:35,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:35,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:35,610.610 INFO    ] No update needed
[2026-08-25 15:27:35,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 15:27:35,646.646 INFO    ] 200
[2026-08-25 15:27:35,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:35,694.694 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:27:35,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:35,743.743 INFO    ] No camera update needed
[2026-08-25 15:27:35,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:27:35,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:27:35,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:27:35,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:27:37,797.797 INFO    ] ================================================
[2026-08-25 15:27:37,812.812 INFO    ] Launching Daemon at Tue Aug 25 15:27:37 IST 2026
[2026-08-25 15:27:37,822.822 INFO    ] ================================================
[2026-08-25 15:27:38,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:27:38
[2026-08-25 15:27:39,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:27:39,416.416 INFO    ] Initializing speech engine...
[2026-08-25 15:27:39,429.429 INFO    ] 2026-08-25 15:27:39
[2026-08-25 15:27:39,716.716 INFO    ] 2026-08-25 15:27:39
[2026-08-25 15:27:39,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:27:39,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:27:39,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:27:40,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:27:40,181.181 INFO    ] time= 25/08/2026 15:27:40
[2026-08-25 15:27:40,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:27:40,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:27:40,425.425 INFO    ] No existing commands found in stream
[2026-08-25 15:27:45,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:27:45,453.453 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 15:27:46,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:27:46,616.616 INFO    ] Checking for system updates...
[2026-08-25 15:27:46,656.656 INFO    ] 200
[2026-08-25 15:27:46,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:46,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:27:46,714.714 INFO    ] No update needed
[2026-08-25 15:27:46,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 15:27:46,751.751 INFO    ] 200
[2026-08-25 15:27:46,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:46,795.795 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:27:46,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:27:46,858.858 INFO    ] No camera update needed
[2026-08-25 15:27:46,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:27:46,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:27:46,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:27:46,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:27:48,914.914 INFO    ] ================================================
[2026-08-25 15:27:48,929.929 INFO    ] Launching Daemon at Tue Aug 25 15:27:48 IST 2026
[2026-08-25 15:27:48,940.940 INFO    ] ================================================
[2026-08-25 15:27:49,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:27:49
[2026-08-25 15:27:50,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:27:50,393.393 INFO    ] Initializing speech engine...
[2026-08-25 15:27:50,399.399 INFO    ] 2026-08-25 15:27:50
[2026-08-25 15:27:50,647.647 INFO    ] 2026-08-25 15:27:50
[2026-08-25 15:27:50,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:27:50,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:27:50,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:27:51,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:27:51,127.127 INFO    ] time= 25/08/2026 15:27:51
[2026-08-25 15:27:51,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:27:51,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:27:51,336.336 INFO    ] No existing commands found in stream
[2026-08-25 15:27:56,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:27:56,367.367 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 15:27:58,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:27:58,908.908 INFO    ] Checking for system updates...
[2026-08-25 15:27:58,969.969 INFO    ] 200
[2026-08-25 15:27:58,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:59,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:59,034.034 INFO    ] No update needed
[2026-08-25 15:27:59,037.037 INFO    ] Checking for camera pi updates...
[2026-08-25 15:27:59,074.074 INFO    ] 200
[2026-08-25 15:27:59,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:27:59,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:27:59,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:27:59,172.172 INFO    ] No camera update needed
[2026-08-25 15:27:59,174.174 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:27:59,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:27:59,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:27:59,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:28:01,226.226 INFO    ] ================================================
[2026-08-25 15:28:01,241.241 INFO    ] Launching Daemon at Tue Aug 25 15:28:01 IST 2026
[2026-08-25 15:28:01,252.252 INFO    ] ================================================
[2026-08-25 15:28:01,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:28:01
[2026-08-25 15:28:02,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:28:02,950.950 INFO    ] Initializing speech engine...
[2026-08-25 15:28:02,965.965 INFO    ] 2026-08-25 15:28:02
[2026-08-25 15:28:03,253.253 INFO    ] 2026-08-25 15:28:03
[2026-08-25 15:28:03,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:28:03,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:28:03,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:28:03,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:28:03,716.716 INFO    ] time= 25/08/2026 15:28:03
[2026-08-25 15:28:03,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:28:03,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:28:03,980.980 INFO    ] No existing commands found in stream
[2026-08-25 15:28:09,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:28:09,009.009 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 15:28:12,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:28:12,607.607 INFO    ] Checking for system updates...
[2026-08-25 15:28:12,645.645 INFO    ] 200
[2026-08-25 15:28:12,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:12,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:28:12,711.711 INFO    ] No update needed
[2026-08-25 15:28:12,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 15:28:12,753.753 INFO    ] 200
[2026-08-25 15:28:12,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:12,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:28:12,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:28:12,861.861 INFO    ] No camera update needed
[2026-08-25 15:28:12,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:28:12,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:28:12,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:28:12,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:28:14,918.918 INFO    ] ================================================
[2026-08-25 15:28:14,934.934 INFO    ] Launching Daemon at Tue Aug 25 15:28:14 IST 2026
[2026-08-25 15:28:14,946.946 INFO    ] ================================================
[2026-08-25 15:28:15,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:28:15
[2026-08-25 15:28:16,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:28:16,370.370 INFO    ] Initializing speech engine...
[2026-08-25 15:28:16,379.379 INFO    ] 2026-08-25 15:28:16
[2026-08-25 15:28:16,671.671 INFO    ] 2026-08-25 15:28:16
[2026-08-25 15:28:16,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:28:16,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:28:16,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:28:17,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:28:17,049.049 INFO    ] time= 25/08/2026 15:28:17
[2026-08-25 15:28:17,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:28:17,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:28:17,173.173 INFO    ] No existing commands found in stream
[2026-08-25 15:28:22,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:28:22,188.188 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 15:28:24,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:28:24,213.213 INFO    ] Checking for system updates...
[2026-08-25 15:28:24,252.252 INFO    ] 200
[2026-08-25 15:28:24,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:24,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:28:24,311.311 INFO    ] No update needed
[2026-08-25 15:28:24,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 15:28:24,350.350 INFO    ] 200
[2026-08-25 15:28:24,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:24,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:28:24,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:28:24,549.549 INFO    ] No camera update needed
[2026-08-25 15:28:24,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:28:24,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:28:24,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:28:24,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:28:26,604.604 INFO    ] ================================================
[2026-08-25 15:28:26,619.619 INFO    ] Launching Daemon at Tue Aug 25 15:28:26 IST 2026
[2026-08-25 15:28:26,630.630 INFO    ] ================================================
[2026-08-25 15:28:27,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:28:27
[2026-08-25 15:28:27,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:28:28,284.284 INFO    ] Initializing speech engine...
[2026-08-25 15:28:28,293.293 INFO    ] 2026-08-25 15:28:28
[2026-08-25 15:28:28,612.612 INFO    ] 2026-08-25 15:28:28
[2026-08-25 15:28:28,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:28:28,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:28:28,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:28:29,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:28:29,117.117 INFO    ] time= 25/08/2026 15:28:29
[2026-08-25 15:28:29,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:28:29,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:28:29,272.272 INFO    ] No existing commands found in stream
[2026-08-25 15:28:34,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:28:34,289.289 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 15:28:38,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:28:38,732.732 INFO    ] Checking for system updates...
[2026-08-25 15:28:38,772.772 INFO    ] 200
[2026-08-25 15:28:38,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:38,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:28:38,829.829 INFO    ] No update needed
[2026-08-25 15:28:38,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 15:28:38,865.865 INFO    ] 200
[2026-08-25 15:28:38,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:38,909.909 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:28:38,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:28:38,960.960 INFO    ] No camera update needed
[2026-08-25 15:28:38,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:28:38,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:28:38,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:28:38,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:28:41,015.015 INFO    ] ================================================
[2026-08-25 15:28:41,030.030 INFO    ] Launching Daemon at Tue Aug 25 15:28:41 IST 2026
[2026-08-25 15:28:41,041.041 INFO    ] ================================================
[2026-08-25 15:28:41,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:28:41
[2026-08-25 15:28:42,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:28:42,677.677 INFO    ] Initializing speech engine...
[2026-08-25 15:28:42,685.685 INFO    ] 2026-08-25 15:28:42
[2026-08-25 15:28:42,977.977 INFO    ] 2026-08-25 15:28:42
[2026-08-25 15:28:43,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:28:43,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:28:43,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:28:43,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:28:43,465.465 INFO    ] time= 25/08/2026 15:28:43
[2026-08-25 15:28:43,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:28:43,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:28:43,661.661 INFO    ] No existing commands found in stream
[2026-08-25 15:28:48,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:28:48,681.681 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 15:28:49,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:28:49,486.486 INFO    ] Checking for system updates...
[2026-08-25 15:28:49,523.523 INFO    ] 200
[2026-08-25 15:28:49,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:49,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:28:49,588.588 INFO    ] No update needed
[2026-08-25 15:28:49,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 15:28:49,624.624 INFO    ] 200
[2026-08-25 15:28:49,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:28:49,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:28:49,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:28:49,728.728 INFO    ] No camera update needed
[2026-08-25 15:28:49,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:28:49,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:28:49,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:28:49,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:28:51,785.785 INFO    ] ================================================
[2026-08-25 15:28:51,801.801 INFO    ] Launching Daemon at Tue Aug 25 15:28:51 IST 2026
[2026-08-25 15:28:51,812.812 INFO    ] ================================================
[2026-08-25 15:28:52,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:28:52
[2026-08-25 15:28:53,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:28:53,484.484 INFO    ] Initializing speech engine...
[2026-08-25 15:28:53,492.492 INFO    ] 2026-08-25 15:28:53
[2026-08-25 15:28:53,800.800 INFO    ] 2026-08-25 15:28:53
[2026-08-25 15:28:53,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:28:54,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:28:54,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:28:54,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:28:54,310.310 INFO    ] time= 25/08/2026 15:28:54
[2026-08-25 15:28:54,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:28:54,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:28:54,636.636 INFO    ] No existing commands found in stream
[2026-08-25 15:28:59,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:28:59,675.675 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 15:29:02,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:29:02,722.722 INFO    ] Checking for system updates...
[2026-08-25 15:29:02,769.769 INFO    ] 200
[2026-08-25 15:29:02,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:02,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:29:02,844.844 INFO    ] No update needed
[2026-08-25 15:29:02,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 15:29:02,905.905 INFO    ] 200
[2026-08-25 15:29:02,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:02,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:29:03,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:29:03,030.030 INFO    ] No camera update needed
[2026-08-25 15:29:03,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:29:03,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:29:03,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:29:03,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:29:05,091.091 INFO    ] ================================================
[2026-08-25 15:29:05,106.106 INFO    ] Launching Daemon at Tue Aug 25 15:29:05 IST 2026
[2026-08-25 15:29:05,117.117 INFO    ] ================================================
[2026-08-25 15:29:05,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:29:05
[2026-08-25 15:29:06,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:29:06,605.605 INFO    ] Initializing speech engine...
[2026-08-25 15:29:06,618.618 INFO    ] 2026-08-25 15:29:06
[2026-08-25 15:29:06,904.904 INFO    ] 2026-08-25 15:29:06
[2026-08-25 15:29:06,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:29:07,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:29:07,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:29:07,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:29:07,439.439 INFO    ] time= 25/08/2026 15:29:07
[2026-08-25 15:29:07,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:29:07,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:29:07,612.612 INFO    ] No existing commands found in stream
[2026-08-25 15:29:12,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:29:12,631.631 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 15:29:15,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:29:15,657.657 INFO    ] Checking for system updates...
[2026-08-25 15:29:15,693.693 INFO    ] 200
[2026-08-25 15:29:15,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:15,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:29:15,752.752 INFO    ] No update needed
[2026-08-25 15:29:15,755.755 INFO    ] Checking for camera pi updates...
[2026-08-25 15:29:15,792.792 INFO    ] 200
[2026-08-25 15:29:15,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:15,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:29:15,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:29:15,890.890 INFO    ] No camera update needed
[2026-08-25 15:29:15,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:29:15,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:29:15,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:29:15,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:29:17,947.947 INFO    ] ================================================
[2026-08-25 15:29:17,962.962 INFO    ] Launching Daemon at Tue Aug 25 15:29:17 IST 2026
[2026-08-25 15:29:17,972.972 INFO    ] ================================================
[2026-08-25 15:29:18,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:29:18
[2026-08-25 15:29:19,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:29:19,391.391 INFO    ] Initializing speech engine...
[2026-08-25 15:29:19,400.400 INFO    ] 2026-08-25 15:29:19
[2026-08-25 15:29:19,649.649 INFO    ] 2026-08-25 15:29:19
[2026-08-25 15:29:19,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:29:19,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:29:19,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:29:20,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:29:20,201.201 INFO    ] time= 25/08/2026 15:29:20
[2026-08-25 15:29:20,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:29:20,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:29:20,336.336 INFO    ] No existing commands found in stream
[2026-08-25 15:29:25,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:29:25,358.358 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 15:29:26,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:29:26,650.650 INFO    ] Checking for system updates...
[2026-08-25 15:29:26,689.689 INFO    ] 200
[2026-08-25 15:29:26,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:26,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:29:26,752.752 INFO    ] No update needed
[2026-08-25 15:29:26,755.755 INFO    ] Checking for camera pi updates...
[2026-08-25 15:29:26,791.791 INFO    ] 200
[2026-08-25 15:29:26,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:26,835.835 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:29:26,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:29:26,889.889 INFO    ] No camera update needed
[2026-08-25 15:29:26,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:29:26,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:29:26,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:29:26,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:29:28,944.944 INFO    ] ================================================
[2026-08-25 15:29:28,959.959 INFO    ] Launching Daemon at Tue Aug 25 15:29:28 IST 2026
[2026-08-25 15:29:28,970.970 INFO    ] ================================================
[2026-08-25 15:29:29,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:29:29
[2026-08-25 15:29:30,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:29:30,598.598 INFO    ] Initializing speech engine...
[2026-08-25 15:29:30,609.609 INFO    ] 2026-08-25 15:29:30
[2026-08-25 15:29:30,883.883 INFO    ] 2026-08-25 15:29:30
[2026-08-25 15:29:30,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:29:31,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:29:31,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:29:31,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:29:31,386.386 INFO    ] time= 25/08/2026 15:29:31
[2026-08-25 15:29:31,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:29:31,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:29:31,596.596 INFO    ] No existing commands found in stream
[2026-08-25 15:29:36,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:29:36,609.609 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 15:29:39,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:29:39,409.409 INFO    ] Checking for system updates...
[2026-08-25 15:29:39,445.445 INFO    ] 200
[2026-08-25 15:29:39,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:39,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:29:39,503.503 INFO    ] No update needed
[2026-08-25 15:29:39,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 15:29:39,538.538 INFO    ] 200
[2026-08-25 15:29:39,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:39,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:29:39,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:29:39,649.649 INFO    ] No camera update needed
[2026-08-25 15:29:39,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:29:39,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:29:39,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:29:39,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:29:41,704.704 INFO    ] ================================================
[2026-08-25 15:29:41,720.720 INFO    ] Launching Daemon at Tue Aug 25 15:29:41 IST 2026
[2026-08-25 15:29:41,731.731 INFO    ] ================================================
[2026-08-25 15:29:42,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:29:42
[2026-08-25 15:29:42,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:29:43,159.159 INFO    ] Initializing speech engine...
[2026-08-25 15:29:43,167.167 INFO    ] 2026-08-25 15:29:43
[2026-08-25 15:29:43,459.459 INFO    ] 2026-08-25 15:29:43
[2026-08-25 15:29:43,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:29:43,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:29:43,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:29:43,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:29:43,822.822 INFO    ] time= 25/08/2026 15:29:43
[2026-08-25 15:29:43,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:29:43,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:29:43,968.968 INFO    ] No existing commands found in stream
[2026-08-25 15:29:48,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:29:48,989.989 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 15:29:50,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:29:50,966.966 INFO    ] Checking for system updates...
[2026-08-25 15:29:51,002.002 INFO    ] 200
[2026-08-25 15:29:51,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:51,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:29:51,061.061 INFO    ] No update needed
[2026-08-25 15:29:51,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 15:29:51,102.102 INFO    ] 200
[2026-08-25 15:29:51,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:29:51,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:29:51,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:29:51,203.203 INFO    ] No camera update needed
[2026-08-25 15:29:51,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:29:51,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:29:51,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:29:51,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:29:53,261.261 INFO    ] ================================================
[2026-08-25 15:29:53,276.276 INFO    ] Launching Daemon at Tue Aug 25 15:29:53 IST 2026
[2026-08-25 15:29:53,287.287 INFO    ] ================================================
[2026-08-25 15:29:53,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:29:53
[2026-08-25 15:29:54,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:29:54,749.749 INFO    ] Initializing speech engine...
[2026-08-25 15:29:54,760.760 INFO    ] 2026-08-25 15:29:54
[2026-08-25 15:29:55,020.020 INFO    ] 2026-08-25 15:29:55
[2026-08-25 15:29:55,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:29:55,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:29:55,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:29:55,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:29:55,491.491 INFO    ] time= 25/08/2026 15:29:55
[2026-08-25 15:29:55,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:29:55,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:29:55,688.688 INFO    ] No existing commands found in stream
[2026-08-25 15:30:00,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:30:00,718.718 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 15:30:03,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:30:03,305.305 INFO    ] Checking for system updates...
[2026-08-25 15:30:03,351.351 INFO    ] 200
[2026-08-25 15:30:03,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:03,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:30:03,425.425 INFO    ] No update needed
[2026-08-25 15:30:03,428.428 INFO    ] Checking for camera pi updates...
[2026-08-25 15:30:03,478.478 INFO    ] 200
[2026-08-25 15:30:03,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:03,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:30:03,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:30:03,671.671 INFO    ] No camera update needed
[2026-08-25 15:30:03,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:30:03,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:30:03,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:30:03,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:30:05,737.737 INFO    ] ================================================
[2026-08-25 15:30:05,753.753 INFO    ] Launching Daemon at Tue Aug 25 15:30:05 IST 2026
[2026-08-25 15:30:05,764.764 INFO    ] ================================================
[2026-08-25 15:30:06,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:30:06
[2026-08-25 15:30:06,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:30:07,192.192 INFO    ] Initializing speech engine...
[2026-08-25 15:30:07,197.197 INFO    ] 2026-08-25 15:30:07
[2026-08-25 15:30:07,481.481 INFO    ] 2026-08-25 15:30:07
[2026-08-25 15:30:07,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:30:07,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:30:07,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:30:07,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:30:07,954.954 INFO    ] time= 25/08/2026 15:30:07
[2026-08-25 15:30:08,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:30:08,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:30:08,189.189 INFO    ] No existing commands found in stream
[2026-08-25 15:30:13,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:30:13,208.208 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 15:30:13,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:30:13,680.680 INFO    ] Checking for system updates...
[2026-08-25 15:30:13,719.719 INFO    ] 200
[2026-08-25 15:30:13,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:13,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:30:13,776.776 INFO    ] No update needed
[2026-08-25 15:30:13,779.779 INFO    ] Checking for camera pi updates...
[2026-08-25 15:30:13,812.812 INFO    ] 200
[2026-08-25 15:30:13,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:13,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:30:13,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:30:13,916.916 INFO    ] No camera update needed
[2026-08-25 15:30:13,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:30:13,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:30:13,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:30:13,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:30:15,974.974 INFO    ] ================================================
[2026-08-25 15:30:15,989.989 INFO    ] Launching Daemon at Tue Aug 25 15:30:15 IST 2026
[2026-08-25 15:30:16,000.000 INFO    ] ================================================
[2026-08-25 15:30:16,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:30:16
[2026-08-25 15:30:17,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:30:17,503.503 INFO    ] Initializing speech engine...
[2026-08-25 15:30:17,512.512 INFO    ] 2026-08-25 15:30:17
[2026-08-25 15:30:17,783.783 INFO    ] 2026-08-25 15:30:17
[2026-08-25 15:30:17,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:30:18,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:30:18,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:30:18,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:30:18,271.271 INFO    ] time= 25/08/2026 15:30:18
[2026-08-25 15:30:18,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:30:18,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:30:18,458.458 INFO    ] No existing commands found in stream
[2026-08-25 15:30:23,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:30:23,484.484 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 15:30:24,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:30:24,366.366 INFO    ] Checking for system updates...
[2026-08-25 15:30:24,403.403 INFO    ] 200
[2026-08-25 15:30:24,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:24,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:30:24,470.470 INFO    ] No update needed
[2026-08-25 15:30:24,473.473 INFO    ] Checking for camera pi updates...
[2026-08-25 15:30:24,508.508 INFO    ] 200
[2026-08-25 15:30:24,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:24,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:30:24,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:30:24,609.609 INFO    ] No camera update needed
[2026-08-25 15:30:24,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:30:24,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:30:24,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:30:24,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:30:26,666.666 INFO    ] ================================================
[2026-08-25 15:30:26,681.681 INFO    ] Launching Daemon at Tue Aug 25 15:30:26 IST 2026
[2026-08-25 15:30:26,693.693 INFO    ] ================================================
[2026-08-25 15:30:27,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:30:27
[2026-08-25 15:30:27,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:30:28,171.171 INFO    ] Initializing speech engine...
[2026-08-25 15:30:28,181.181 INFO    ] 2026-08-25 15:30:28
[2026-08-25 15:30:28,496.496 INFO    ] 2026-08-25 15:30:28
[2026-08-25 15:30:28,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:30:28,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:30:28,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:30:28,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:30:28,956.956 INFO    ] time= 25/08/2026 15:30:28
[2026-08-25 15:30:29,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:30:29,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:30:29,163.163 INFO    ] No existing commands found in stream
[2026-08-25 15:30:34,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:30:34,192.192 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 15:30:35,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:30:35,282.282 INFO    ] Checking for system updates...
[2026-08-25 15:30:35,341.341 INFO    ] 200
[2026-08-25 15:30:35,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:35,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:30:35,400.400 INFO    ] No update needed
[2026-08-25 15:30:35,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 15:30:35,437.437 INFO    ] 200
[2026-08-25 15:30:35,440.440 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:35,485.485 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:30:35,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:30:35,536.536 INFO    ] No camera update needed
[2026-08-25 15:30:35,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:30:35,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:30:35,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:30:35,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:30:37,595.595 INFO    ] ================================================
[2026-08-25 15:30:37,611.611 INFO    ] Launching Daemon at Tue Aug 25 15:30:37 IST 2026
[2026-08-25 15:30:37,622.622 INFO    ] ================================================
[2026-08-25 15:30:38,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:30:38
[2026-08-25 15:30:38,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:30:39,235.235 INFO    ] Initializing speech engine...
[2026-08-25 15:30:39,247.247 INFO    ] 2026-08-25 15:30:39
[2026-08-25 15:30:39,556.556 INFO    ] 2026-08-25 15:30:39
[2026-08-25 15:30:39,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:30:39,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:30:39,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:30:40,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:30:40,063.063 INFO    ] time= 25/08/2026 15:30:40
[2026-08-25 15:30:40,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:30:40,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:30:40,217.217 INFO    ] No existing commands found in stream
[2026-08-25 15:30:45,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:30:45,251.251 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 15:30:47,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:30:47,052.052 INFO    ] Checking for system updates...
[2026-08-25 15:30:47,089.089 INFO    ] 200
[2026-08-25 15:30:47,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:47,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:30:47,147.147 INFO    ] No update needed
[2026-08-25 15:30:47,149.149 INFO    ] Checking for camera pi updates...
[2026-08-25 15:30:47,182.182 INFO    ] 200
[2026-08-25 15:30:47,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:47,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:30:47,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:30:47,275.275 INFO    ] No camera update needed
[2026-08-25 15:30:47,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:30:47,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:30:47,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:30:47,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:30:49,330.330 INFO    ] ================================================
[2026-08-25 15:30:49,349.349 INFO    ] Launching Daemon at Tue Aug 25 15:30:49 IST 2026
[2026-08-25 15:30:49,360.360 INFO    ] ================================================
[2026-08-25 15:30:49,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:30:49
[2026-08-25 15:30:50,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:30:50,780.780 INFO    ] Initializing speech engine...
[2026-08-25 15:30:50,790.790 INFO    ] 2026-08-25 15:30:50
[2026-08-25 15:30:51,036.036 INFO    ] 2026-08-25 15:30:51
[2026-08-25 15:30:51,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:30:51,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:30:51,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:30:51,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:30:51,506.506 INFO    ] time= 25/08/2026 15:30:51
[2026-08-25 15:30:51,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:30:51,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:30:51,710.710 INFO    ] No existing commands found in stream
[2026-08-25 15:30:56,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:30:56,740.740 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 15:30:59,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:30:59,704.704 INFO    ] Checking for system updates...
[2026-08-25 15:30:59,740.740 INFO    ] 200
[2026-08-25 15:30:59,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:59,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:30:59,796.796 INFO    ] No update needed
[2026-08-25 15:30:59,799.799 INFO    ] Checking for camera pi updates...
[2026-08-25 15:30:59,835.835 INFO    ] 200
[2026-08-25 15:30:59,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:30:59,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:30:59,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:30:59,938.938 INFO    ] No camera update needed
[2026-08-25 15:30:59,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:30:59,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:30:59,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:30:59,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:31:02,996.996 INFO    ] ================================================
[2026-08-25 15:31:02,021.021 INFO    ] Launching Daemon at Tue Aug 25 15:31:02 IST 2026
[2026-08-25 15:31:02,035.035 INFO    ] ================================================
[2026-08-25 15:31:02,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:31:02
[2026-08-25 15:31:03,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:31:03,707.707 INFO    ] Initializing speech engine...
[2026-08-25 15:31:03,721.721 INFO    ] 2026-08-25 15:31:03
[2026-08-25 15:31:04,030.030 INFO    ] 2026-08-25 15:31:04
[2026-08-25 15:31:04,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:31:04,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:31:04,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:31:04,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:31:04,534.534 INFO    ] time= 25/08/2026 15:31:04
[2026-08-25 15:31:04,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:31:04,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:31:04,756.756 INFO    ] No existing commands found in stream
[2026-08-25 15:31:09,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:31:09,784.784 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 15:31:10,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:31:10,297.297 INFO    ] Checking for system updates...
[2026-08-25 15:31:10,331.331 INFO    ] 200
[2026-08-25 15:31:10,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:10,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:31:10,395.395 INFO    ] No update needed
[2026-08-25 15:31:10,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 15:31:10,430.430 INFO    ] 200
[2026-08-25 15:31:10,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:10,483.483 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:31:10,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:31:10,540.540 INFO    ] No camera update needed
[2026-08-25 15:31:10,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:31:10,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:31:10,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:31:10,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:31:12,594.594 INFO    ] ================================================
[2026-08-25 15:31:12,610.610 INFO    ] Launching Daemon at Tue Aug 25 15:31:12 IST 2026
[2026-08-25 15:31:12,621.621 INFO    ] ================================================
[2026-08-25 15:31:13,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:31:13
[2026-08-25 15:31:13,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:31:14,036.036 INFO    ] Initializing speech engine...
[2026-08-25 15:31:14,045.045 INFO    ] 2026-08-25 15:31:14
[2026-08-25 15:31:14,289.289 INFO    ] 2026-08-25 15:31:14
[2026-08-25 15:31:14,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:31:14,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:31:14,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:31:14,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:31:14,760.760 INFO    ] time= 25/08/2026 15:31:14
[2026-08-25 15:31:14,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:31:14,852.852 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:31:14,989.989 INFO    ] No existing commands found in stream
[2026-08-25 15:31:20,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:31:20,010.010 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 15:31:21,283.283 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:31:21,285.285 INFO    ] Checking for system updates...
[2026-08-25 15:31:21,321.321 INFO    ] 200
[2026-08-25 15:31:21,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:21,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:31:21,381.381 INFO    ] No update needed
[2026-08-25 15:31:21,383.383 INFO    ] Checking for camera pi updates...
[2026-08-25 15:31:21,416.416 INFO    ] 200
[2026-08-25 15:31:21,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:21,459.459 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:31:21,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:31:21,511.511 INFO    ] No camera update needed
[2026-08-25 15:31:21,513.513 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:31:21,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:31:21,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:31:21,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:31:23,569.569 INFO    ] ================================================
[2026-08-25 15:31:23,584.584 INFO    ] Launching Daemon at Tue Aug 25 15:31:23 IST 2026
[2026-08-25 15:31:23,595.595 INFO    ] ================================================
[2026-08-25 15:31:24,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:31:24
[2026-08-25 15:31:24,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:31:25,000.000 INFO    ] Initializing speech engine...
[2026-08-25 15:31:25,013.013 INFO    ] 2026-08-25 15:31:25
[2026-08-25 15:31:25,290.290 INFO    ] 2026-08-25 15:31:25
[2026-08-25 15:31:25,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:31:25,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:31:25,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:31:25,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:31:25,663.663 INFO    ] time= 25/08/2026 15:31:25
[2026-08-25 15:31:25,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:31:25,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:31:25,765.765 INFO    ] No existing commands found in stream
[2026-08-25 15:31:30,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:31:30,803.803 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 15:31:34,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:31:34,212.212 INFO    ] Checking for system updates...
[2026-08-25 15:31:34,248.248 INFO    ] 200
[2026-08-25 15:31:34,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:34,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:31:34,310.310 INFO    ] No update needed
[2026-08-25 15:31:34,312.312 INFO    ] Checking for camera pi updates...
[2026-08-25 15:31:34,346.346 INFO    ] 200
[2026-08-25 15:31:34,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:34,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:31:34,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:31:34,443.443 INFO    ] No camera update needed
[2026-08-25 15:31:34,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:31:34,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:31:34,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:31:34,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:31:36,497.497 INFO    ] ================================================
[2026-08-25 15:31:36,512.512 INFO    ] Launching Daemon at Tue Aug 25 15:31:36 IST 2026
[2026-08-25 15:31:36,522.522 INFO    ] ================================================
[2026-08-25 15:31:37,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:31:37
[2026-08-25 15:31:37,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:31:37,981.981 INFO    ] Initializing speech engine...
[2026-08-25 15:31:37,991.991 INFO    ] 2026-08-25 15:31:37
[2026-08-25 15:31:38,260.260 INFO    ] 2026-08-25 15:31:38
[2026-08-25 15:31:38,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:31:38,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:31:38,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:31:38,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:31:38,760.760 INFO    ] time= 25/08/2026 15:31:38
[2026-08-25 15:31:38,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:31:38,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:31:38,967.967 INFO    ] No existing commands found in stream
[2026-08-25 15:31:43,211.211 INFO    ] Received new command: ID=1787652103306-0
[2026-08-25 15:31:43,213.213 INFO    ] process_and_cleanup_command: msg_id=1787652103306-0
[2026-08-25 15:31:43,216.216 INFO    ] is_command_expired: timestamp=2026-08-25T10:01:42.426Z, expiry=30s
[2026-08-25 15:31:43,303.303 INFO    ] Command removed from stream: 1787652103306-0. returning for processing...
[2026-08-25 15:31:43,305.305 INFO    ] ***** get_valid_command
[2026-08-25 15:31:43,308.308 INFO    ] {'source': 'webapp', 'command': 'start-order', 'timeout': '10', 'data': '{"request_id":"start-order-1787652102426-kwavx0bn0","orderId":"TM03202401260825153039024","is_vending":false}', 'timestamp': '2026-08-25T10:01:42.426Z'}
[2026-08-25 15:31:43,311.311 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787652102426-kwavx0bn0', 'orderId': 'TM03202401260825153039024', 'is_vending': False}
[2026-08-25 15:31:43,313.313 INFO    ] Handling start order...
[2026-08-25 15:31:43,316.316 INFO    ] handle_start_order_command
[2026-08-25 15:31:43,322.322 INFO    ] _send_start_order_success: request_id=start-order-1787652102426-kwavx0bn0, order_id=TM03202401260825153039024
[2026-08-25 15:31:43,325.325 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 15:31:43,382.382 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787652103481-0
[2026-08-25 15:31:43,385.385 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 15:31:43,388.388 INFO    ] Checking for system updates...
[2026-08-25 15:31:43,430.430 INFO    ] 200
[2026-08-25 15:31:43,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:43,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:31:43,495.495 INFO    ] No update needed
[2026-08-25 15:31:43,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 15:31:43,534.534 INFO    ] 200
[2026-08-25 15:31:43,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:43,582.582 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:31:43,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:31:43,632.632 INFO    ] No camera update needed
[2026-08-25 15:31:43,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:31:43,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:31:43,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:31:43,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:31:45,688.688 INFO    ] ================================================
[2026-08-25 15:31:45,703.703 INFO    ] Launching Daemon at Tue Aug 25 15:31:45 IST 2026
[2026-08-25 15:31:45,713.713 INFO    ] ================================================
[2026-08-25 15:31:46,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:31:46
[2026-08-25 15:31:46,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:31:47,171.171 INFO    ] Initializing speech engine...
[2026-08-25 15:31:47,180.180 INFO    ] 2026-08-25 15:31:47
[2026-08-25 15:31:47,450.450 INFO    ] 2026-08-25 15:31:47
[2026-08-25 15:31:47,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:31:47,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:31:47,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:31:47,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:31:47,948.948 INFO    ] time= 25/08/2026 15:31:47
[2026-08-25 15:31:48,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:31:48,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:31:48,157.157 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 15:31:48,205.205 INFO    ] Checking historical command: ID=1787652103481-0
[2026-08-25 15:31:48,261.261 INFO    ] process_and_cleanup_command: msg_id=1787652103481-0
[2026-08-25 15:31:48,293.293 INFO    ] is_command_expired: timestamp=2026-08-25T10:01:43.323548Z, expiry=30s
[2026-08-25 15:31:48,562.562 INFO    ] Command removed from stream: 1787652103481-0. returning for processing...
[2026-08-25 15:31:48,619.619 INFO    ] ***** get_valid_command
[2026-08-25 15:31:48,626.626 INFO    ] {'message_type': 'command_response', 'status': 'success', 'metadata_request_id': 'start-order-1787652102426-kwavx0bn0', 'timestamp': '2026-08-25T10:01:43.323548Z', 'imei': 'TM03202401', 'metadata_order_id': 'TM03202401260825153039024', 'message': 'start-order success'}
[2026-08-25 15:31:48,629.629 INFO    ] Checking historical command: ID=1787652105924-0
[2026-08-25 15:31:48,679.679 INFO    ] process_and_cleanup_command: msg_id=1787652105924-0
[2026-08-25 15:31:48,686.686 INFO    ] is_command_expired: timestamp=2026-08-25T10:01:45.037Z, expiry=30s
[2026-08-25 15:31:48,748.748 INFO    ] Command removed from stream: 1787652105924-0. returning for processing...
[2026-08-25 15:31:48,752.752 INFO    ] ***** get_valid_command
[2026-08-25 15:31:48,757.757 INFO    ] {'data': '{"request_id":"process-order-1787652105037-7rmwg6k11","orderId":"TM03202401260825153039024","is_vending":false,"accessCode":"41585251"}', 'timestamp': '2026-08-25T10:01:45.037Z', 'source': 'webapp', 'timeout': '60', 'command': 'process-order'}
[2026-08-25 15:31:48,761.761 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825153039024', 'request_id': 'process-order-1787652105037-7rmwg6k11', 'is_vending': False, 'accessCode': '41585251'}
[2026-08-25 15:31:48,766.766 INFO    ] Handling process order...
[2026-08-25 15:31:48,771.771 INFO    ] Processing process-order command...
[2026-08-25 15:31:48,778.778 INFO    ] 🔍 Lock file Order ID: TM03202401260825153039024, TS: 2026-08-25 15:31:43
[2026-08-25 15:31:48,794.794 INFO    ] ✅ Order lock valid for TM03202401260825153039024
[2026-08-25 15:31:48,799.799 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 15:31:48,804.804 INFO    ] processing access code 41585251 for order TM03202401260825153039024
[2026-08-25 15:31:48,810.810 INFO    ] 🔍 Lock file Order ID: TM03202401260825153039024, TS: 2026-08-25 15:31:43
[2026-08-25 15:31:48,815.815 INFO    ] ✅ Order lock valid for TM03202401260825153039024
[2026-08-25 15:31:48,821.821 INFO    ] 2026-08-25 15:31:48
[2026-08-25 15:31:48,937.937 INFO    ] 200
[2026-08-25 15:31:48,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:31:48,959.959 INFO    ] 41585251
[2026-08-25 15:31:48,964.964 INFO    ] 2026-08-25 15:31:48
[2026-08-25 15:31:48,971.971 INFO    ] session id :953691434
[2026-08-25 15:31:48,980.980 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=41585251&imei=TM03202401&session_id=953691434
[2026-08-25 15:31:50,243.243 INFO    ] 200
[2026-08-25 15:31:50,266.266 INFO    ] {"data": {"access_code": "41585251", "order_id": "TM03202401260825153039024", "bill_amount": "30", "invoice_bill": "30", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500702", "offer_id": "", "door_id": "2", "unit_price": 30, "image_url": "https://images.tinymart.in/product/4500702-1302.webp", "tray_id": "36", "mrp": "30", "name": "Raw Masala Shikanji 200ml", "sku_total": 30}], "mobile": "8089241729"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 15:31:50,276.276 INFO    ] 30
[2026-08-25 15:31:50,282.282 INFO    ] TM03202401260825153039024
[2026-08-25 15:31:50,290.290 INFO    ] 8089241729
[2026-08-25 15:31:50,300.300 INFO    ] 2026-08-25 15:31:50
[2026-08-25 15:31:50,322.322 INFO    ] Door Opening for user mobile ending with  one seven two nine 
[2026-08-25 15:31:50,351.351 INFO    ] Door Opening for user mobile ending with  one seven two nine 
[2026-08-25 15:31:50,386.386 INFO    ] b5a3c0e86cc5b490fa87e5216593af71
[2026-08-25 15:31:50,430.430 INFO    ] 2026-08-25 15:31:50
[2026-08-25 15:31:50,491.491 INFO    ] playing audio file
[2026-08-25 15:31:50,529.529 INFO    ] 2026-08-25 15:31:50
[2026-08-25 15:31:50,546.546 INFO    ] 2026-08-25 15:31:50
[2026-08-25 15:31:50,555.555 INFO    ] publish_status: order_id=TM03202401260825153039024
[2026-08-25 15:31:50,569.569 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825153039024
[2026-08-25 15:31:50,637.637 INFO    ] [publish_status] Message added to stream with ID: 1787652110736-0
[2026-08-25 15:31:50,646.646 INFO    ] Published to order:TM03202401260825153039024: {'order_id': 'TM03202401260825153039024', 'timestamp': '2026-08-25T10:01:50.549017Z', 'server_response': '{"data": {"order_id": "TM03202401260825153039024", "bill_amount": "30", "invoice_bill": "30", "access_code": "41585251", "proposed_sku_json": [{"offer_desc": "", "name": "Raw Masala Shikanji 200ml", "tray_id": "36", "skuid": "4500702", "sku_total": 30, "offer_id": "", "mrp": "30", "door_id": "2", "qty": 1, "image_url": "https://images.tinymart.in/product/4500702-1302.webp", "unit_price": 30}], "mobile": "8089241729"}, "rstatus": true, "status": true, "msg": "Order Data"}', 'server_status': 'order-started'} (ID: 1787652110736-0)
[2026-08-25 15:31:51,195.195 INFO    ] {'order_id': 'TM03202401260825153039024', 'server_response': {'data': {'order_id': 'TM03202401260825153039024', 'bill_amount': '30', 'invoice_bill': '30', 'access_code': '41585251', 'proposed_sku_json': [{'offer_desc': '', 'name': 'Raw Masala Shikanji 200ml', 'tray_id': '36', 'skuid': '4500702', 'sku_total': 30, 'offer_id': '', 'mrp': '30', 'door_id': '2', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'unit_price': 30}], 'mobile': '8089241729'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}
[2026-08-25 15:31:51,198.198 INFO    ] 200
[2026-08-25 15:31:51,200.200 INFO    ] {"data":{"order_id":"TM03202401260825153039024","server_response":{"data":{"order_id":"TM03202401260825153039024","bill_amount":"30","invoice_bill":"30","access_code":"41585251","proposed_sku_json":[{"offer_desc":"","name":"Raw Masala Shikanji 200ml","tray_id":"36","skuid":"4500702","sku_total":30,"offer_id":"","mrp":"30","door_id":"2","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500702-1302.webp","unit_price":30}],"mobile":"8089241729"},"rstatus":true,"status":true,"msg":"Order Data"},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 15:31:51,204.204 INFO    ] {'data': {'order_id': 'TM03202401260825153039024', 'server_response': {'data': {'order_id': 'TM03202401260825153039024', 'bill_amount': '30', 'access_code': '41585251', 'invoice_bill': '30', 'proposed_sku_json': [{'qty': 1, 'skuid': '4500702', 'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'offer_desc': '', 'door_id': '2', 'offer_id': '', 'unit_price': 30, 'sku_total': 30, 'mrp': '30', 'tray_id': '36', 'name': 'Raw Masala Shikanji 200ml'}], 'mobile': '8089241729'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-08-25 15:31:51,207.207 INFO    ] 2026-08-25 15:31:51
[2026-08-25 15:31:51,251.251 INFO    ] 200
[2026-08-25 15:31:51,254.254 INFO    ] True
[2026-08-25 15:31:51,409.409 INFO    ] 200
[2026-08-25 15:31:51,412.412 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 15:31:51,415.415 INFO    ] {'status': 'False', 'voiceNote': 'Please Wait', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-08-25 15:31:51,417.417 INFO    ] *** process_order ***
[2026-08-25 15:31:52,596.596 INFO    ] 200
[2026-08-25 15:31:52,598.598 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 15:31:52,601.601 INFO    ] {'delay': 0, 'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-08-25 15:31:52,603.603 INFO    ] *** process_order ***
[2026-08-25 15:31:52,606.606 INFO    ] publish_status: order_id=TM03202401260825153039024
[2026-08-25 15:31:52,608.608 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825153039024
[2026-08-25 15:31:52,667.667 INFO    ] [publish_status] Message added to stream with ID: 1787652112765-0
[2026-08-25 15:31:52,669.669 INFO    ] Published to order:TM03202401260825153039024: {'order_id': 'TM03202401260825153039024', 'server_response': '{"delay": 0, "status": "True", "voiceNote": "Door is open...", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}}', 'server_status': 'doorOpened'} (ID: 1787652112765-0)
[2026-08-25 15:31:53,735.735 INFO    ] 2026-08-25 15:31:53
[2026-08-25 15:31:53,738.738 INFO    ] publish_status: order_id=TM03202401260825153039024
[2026-08-25 15:31:53,740.740 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825153039024
[2026-08-25 15:31:53,808.808 INFO    ] [publish_status] Message added to stream with ID: 1787652113907-0
[2026-08-25 15:31:53,811.811 INFO    ] Published to order:TM03202401260825153039024: {'order_id': 'TM03202401260825153039024', 'timestamp': '2026-08-25T10:01:53.736676Z', 'server_response': '{"delay": 0, "status": "True", "voiceNote": "Please Wait", "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}}', 'server_status': 'processOrder'} (ID: 1787652113907-0)
[2026-08-25 15:31:53,954.954 INFO    ] {'order_id': 'TM03202401260825153039024', 'server_response': {'delay': 0, 'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}, 'server_status': 'processOrder'}
[2026-08-25 15:31:53,957.957 INFO    ] 200
[2026-08-25 15:31:53,960.960 INFO    ] {"data":{"order_id":"TM03202401260825153039024","server_response":{"delay":0,"status":"true","voiceNote":"Please Wait","rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order"}},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 15:31:53,964.964 INFO    ] {'data': {'order_id': 'TM03202401260825153039024', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'voiceNote': 'Please Wait', 'rstatus': True, 'status': 'true', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}, 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-08-25 15:31:53,967.967 INFO    ] 2026-08-25 15:31:53
[2026-08-25 15:31:53,970.970 INFO    ] None
[2026-08-25 15:31:53,973.973 INFO    ] Opening Door now
[2026-08-25 15:31:53,976.976 INFO    ] Opening Door now
[2026-08-25 15:31:53,979.979 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 15:31:53,982.982 INFO    ] 2026-08-25 15:31:53
[2026-08-25 15:31:53,985.985 INFO    ] playing audio file
[2026-08-25 15:31:54,002.002 INFO    ] 2026-08-25 15:31:54
[2026-08-25 15:31:54,006.006 INFO    ] 2026-08-25 15:31:54
[2026-08-25 15:31:57,067.067 INFO    ] 200
[2026-08-25 15:31:57,070.070 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}]}, "voiceNote": "Door 2 is open now"}
[2026-08-25 15:31:57,073.073 INFO    ] {'status': 'False', 'voiceNote': 'Door 2 is open now', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}]}, 'SectionMain': {'Header': 'Door Open'}, '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'}}
[2026-08-25 15:32:00,147.147 INFO    ] 200
[2026-08-25 15:32:00,149.149 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}]}, "voiceNote": "Please close door 2"}
[2026-08-25 15:32:00,152.152 INFO    ] {'status': 'False', 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}]}, 'SectionMain': {'Header': 'Door Open'}, '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'}}
[2026-08-25 15:32:03,247.247 INFO    ] 200
[2026-08-25 15:32:03,250.250 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}]}, "voiceNote": "Please close door 2"}
[2026-08-25 15:32:03,252.252 INFO    ] Please close door 2
[2026-08-25 15:32:03,255.255 INFO    ] Please close door 2
[2026-08-25 15:32:03,258.258 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-25 15:32:03,261.261 INFO    ] 2026-08-25 15:32:03
[2026-08-25 15:32:03,263.263 INFO    ] playing audio file
[2026-08-25 15:32:03,281.281 INFO    ] 2026-08-25 15:32:03
[2026-08-25 15:32:03,284.284 INFO    ] publish_status: order_id=TM03202401260825153039024
[2026-08-25 15:32:03,287.287 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825153039024
[2026-08-25 15:32:03,356.356 INFO    ] [publish_status] Message added to stream with ID: 1787652123455-0
[2026-08-25 15:32:03,358.358 INFO    ] Published to order:TM03202401260825153039024: {'order_id': 'TM03202401260825153039024', 'timestamp': '2026-08-25T10:02:03.282896Z', 'server_response': '{"status": "False", "voiceNote": "Please close door 2", "error": {"data": {}, "umessage": "In Progress", "code": 20001, "tmessage": "In Progress"}, "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Raw Masala Shikanji 200ml"}]}, "SectionMain": {"Header": "Door Open"}, "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"}}', 'server_status': 'OrderStatus'} (ID: 1787652123455-0)
[2026-08-25 15:32:03,933.933 INFO    ] {'order_id': 'TM03202401260825153039024', 'server_response': {'status': 'False', 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}]}, 'SectionMain': {'Header': 'Door Open'}, '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'}}, 'server_status': 'OrderStatus'}
[2026-08-25 15:32:03,936.936 INFO    ] 200
[2026-08-25 15:32:03,938.938 INFO    ] {"data":{"order_id":"TM03202401260825153039024","server_response":{"status":"false","voiceNote":"Please close door 2","error":{"data":[],"umessage":"In Progress","code":20001,"tmessage":"In Progress"},"rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"Raw Masala Shikanji 200ml"}]},"SectionMain":{"Header":"Door Open"},"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"}},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 15:32:03,942.942 INFO    ] {'data': {'order_id': 'TM03202401260825153039024', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2', 'rstatus': False, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}]}, 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, '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'}}, 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-08-25 15:32:03,945.945 INFO    ] {'status': 'False', 'voiceNote': 'Please close door 2', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Raw Masala Shikanji 200ml'}]}, 'SectionMain': {'Header': 'Door Open'}, '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'}}
[2026-08-25 15:32:07,022.022 INFO    ] 200
[2026-08-25 15:32:07,024.024 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 15:32:07,027.027 INFO    ] {'delay': 100, 'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, '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'}}
[2026-08-25 15:32:07,030.030 INFO    ] 2026-08-25 15:32:07
[2026-08-25 15:32:07,033.033 INFO    ] Order Completed 
[2026-08-25 15:32:07,035.035 INFO    ] Order Completed 
[2026-08-25 15:32:07,038.038 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 15:32:07,041.041 INFO    ] 2026-08-25 15:32:07
[2026-08-25 15:32:07,044.044 INFO    ] playing audio file
[2026-08-25 15:32:07,061.061 INFO    ] 2026-08-25 15:32:07
[2026-08-25 15:32:07,065.065 INFO    ] {'delay': 100, 'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'SectionMain': {'Header': 'Door Closed'}, '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'}}
[2026-08-25 15:32:07,067.067 INFO    ] 2026-08-25 15:32:07
[2026-08-25 15:32:10,988.988 INFO    ] 200
[2026-08-25 15:32:10,991.991 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825153039024", "skus": [{"image_url": "https://images.tinymart.in/product/4500702-1302.webp", "skuid": "4500702", "door_id": "", "unit_price": "30", "qty": 1, "tray_id": "36", "mrp": "30", "name": "Raw Masala Shikanji 200ml per peice", "sku_total": 30.0}], "res": "True", "total_amount": 30.0, "logic": "WBL"}
[2026-08-25 15:32:10,994.994 INFO    ] {'logic': 'WBL', 'total_amount': 30.0, 'orderId': 'TM03202401260825153039024', 'rstatus': True, 'anomaly': 0, 'res': 'True', 'skus': [{'skuid': '4500702', 'tray_id': '36', 'sku_total': 30.0, 'mrp': '30', 'name': 'Raw Masala Shikanji 200ml per peice', 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'unit_price': '30'}]}
[2026-08-25 15:32:10,998.998 INFO    ] {'logic': 'WBL', 'total_amount': 30.0, 'orderId': 'TM03202401260825153039024', 'rstatus': True, 'anomaly': 0, 'res': 'True', 'skus': [{'skuid': '4500702', 'tray_id': '36', 'sku_total': 30.0, 'mrp': '30', 'name': 'Raw Masala Shikanji 200ml per peice', 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'unit_price': '30'}]}
[2026-08-25 15:32:11,001.001 INFO    ] 2026-08-25 15:32:10
[2026-08-25 15:32:11,004.004 INFO    ] 2026-08-25 15:32:11
[2026-08-25 15:32:11,008.008 INFO    ] 30
[2026-08-25 15:32:11,011.011 INFO    ] 2026-08-25 15:32:11
[2026-08-25 15:32:11,015.015 INFO    ] 2026-08-25 15:32:11
[2026-08-25 15:32:11,018.018 INFO    ]  Your Bill Amount is 30
[2026-08-25 15:32:11,020.020 INFO    ]  Your Bill Amount is 30
[2026-08-25 15:32:11,024.024 INFO    ] 83d7bc98008395bac4df4c2fc2d248eb
[2026-08-25 15:32:11,034.034 INFO    ] 2026-08-25 15:32:11
[2026-08-25 15:32:11,037.037 INFO    ] playing audio file
[2026-08-25 15:32:11,056.056 INFO    ] 2026-08-25 15:32:11
[2026-08-25 15:32:11,059.059 INFO    ] 2026-08-25 15:32:11
[2026-08-25 15:32:11,064.064 INFO    ] publish_status: order_id=TM03202401260825153039024
[2026-08-25 15:32:11,068.068 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825153039024
[2026-08-25 15:32:11,157.157 INFO    ] [publish_status] Message added to stream with ID: 1787652131255-0
[2026-08-25 15:32:11,160.160 INFO    ] Published to order:TM03202401260825153039024: {'order_id': 'TM03202401260825153039024', 'timestamp': '2026-08-25T10:02:11.061429Z', 'server_response': '{"logic": "WBL", "total_amount": 30.0, "orderId": "TM03202401260825153039024", "rstatus": true, "anomaly": 0, "res": "True", "skus": [{"skuid": "4500702", "tray_id": "36", "sku_total": 30.0, "mrp": "30", "name": "Raw Masala Shikanji 200ml per peice", "door_id": "", "qty": 1, "image_url": "https://images.tinymart.in/product/4500702-1302.webp", "unit_price": "30"}]}', 'server_status': 'invoiceOrder'} (ID: 1787652131255-0)
[2026-08-25 15:32:11,999.999 INFO    ] {'order_id': 'TM03202401260825153039024', 'server_response': {'logic': 'WBL', 'total_amount': 30.0, 'orderId': 'TM03202401260825153039024', 'rstatus': True, 'anomaly': 0, 'res': 'True', 'skus': [{'skuid': '4500702', 'tray_id': '36', 'sku_total': 30.0, 'mrp': '30', 'name': 'Raw Masala Shikanji 200ml per peice', 'door_id': '', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'unit_price': '30'}]}, 'server_status': 'invoiceOrder'}
[2026-08-25 15:32:12,003.003 INFO    ] 200
[2026-08-25 15:32:12,006.006 INFO    ] {"data":{"order_id":"TM03202401260825153039024","server_response":{"logic":"WBL","total_amount":30,"orderId":"TM03202401260825153039024","rstatus":true,"anomaly":0,"res":"true","skus":[{"skuid":"4500702","tray_id":"36","sku_total":30,"mrp":"30","name":"Raw Masala Shikanji 200ml per peice","door_id":"","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500702-1302.webp","unit_price":"30"}]},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 15:32:12,009.009 INFO    ] {'data': {'order_id': 'TM03202401260825153039024', 'server_response': {'logic': 'WBL', 'total_amount': 30, 'orderId': 'TM03202401260825153039024', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'skus': [{'skuid': '4500702', 'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '', 'mrp': '30', 'unit_price': '30', 'sku_total': 30, 'qty': 1, 'tray_id': '36', 'name': 'Raw Masala Shikanji 200ml per peice'}]}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-08-25 15:32:12,012.012 INFO    ] {'data': {'order_id': 'TM03202401260825153039024', 'server_response': {'logic': 'WBL', 'total_amount': 30, 'orderId': 'TM03202401260825153039024', 'rstatus': True, 'anomaly': 0, 'res': 'true', 'skus': [{'skuid': '4500702', 'image_url': 'https://images.tinymart.in/product/4500702-1302.webp', 'door_id': '', 'mrp': '30', 'unit_price': '30', 'sku_total': 30, 'qty': 1, 'tray_id': '36', 'name': 'Raw Masala Shikanji 200ml per peice'}]}, 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-08-25 15:32:12,015.015 INFO    ] 2026-08-25 15:32:12
[2026-08-25 15:32:15,360.360 INFO    ] 200
[2026-08-25 15:32:15,363.363 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": ["TM03202401260825153039024_0"], "order_items": [], "tray_synced": ["TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024", "TM03202401260825153039024"], "status": true}
[2026-08-25 15:32:15,366.366 INFO    ] 2026-08-25 15:32:15
[2026-08-25 15:32:15,514.514 INFO    ] 200
[2026-08-25 15:32:15,516.516 INFO    ] True
[2026-08-25 15:32:15,519.519 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825153039024
[2026-08-25 15:32:15,522.522 INFO    ] start order file deleted
[2026-08-25 15:32:15,525.525 INFO    ] Checking for system updates...
[2026-08-25 15:32:15,559.559 INFO    ] 200
[2026-08-25 15:32:15,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:15,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:32:15,617.617 INFO    ] No update needed
[2026-08-25 15:32:15,620.620 INFO    ] Checking for camera pi updates...
[2026-08-25 15:32:15,654.654 INFO    ] 200
[2026-08-25 15:32:15,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:15,697.697 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:32:15,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:32:15,747.747 INFO    ] No camera update needed
[2026-08-25 15:32:15,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:32:15,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:32:15,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:32:15,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:32:17,804.804 INFO    ] ================================================
[2026-08-25 15:32:17,820.820 INFO    ] Launching Daemon at Tue Aug 25 15:32:17 IST 2026
[2026-08-25 15:32:17,831.831 INFO    ] ================================================
[2026-08-25 15:32:18,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:32:18
[2026-08-25 15:32:18,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:32:19,255.255 INFO    ] Initializing speech engine...
[2026-08-25 15:32:19,264.264 INFO    ] 2026-08-25 15:32:19
[2026-08-25 15:32:19,511.511 INFO    ] 2026-08-25 15:32:19
[2026-08-25 15:32:19,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:32:19,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:32:19,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:32:19,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:32:20,006.006 INFO    ] time= 25/08/2026 15:32:19
[2026-08-25 15:32:20,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:32:20,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:32:20,216.216 INFO    ] No existing commands found in stream
[2026-08-25 15:32:25,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:32:25,231.231 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 15:32:28,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:32:28,719.719 INFO    ] Checking for system updates...
[2026-08-25 15:32:28,755.755 INFO    ] 200
[2026-08-25 15:32:28,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:28,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:32:28,814.814 INFO    ] No update needed
[2026-08-25 15:32:28,816.816 INFO    ] Checking for camera pi updates...
[2026-08-25 15:32:28,855.855 INFO    ] 200
[2026-08-25 15:32:28,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:28,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:32:28,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:32:28,957.957 INFO    ] No camera update needed
[2026-08-25 15:32:28,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:32:28,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:32:28,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:32:28,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:32:31,017.017 INFO    ] ================================================
[2026-08-25 15:32:31,031.031 INFO    ] Launching Daemon at Tue Aug 25 15:32:31 IST 2026
[2026-08-25 15:32:31,042.042 INFO    ] ================================================
[2026-08-25 15:32:31,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:32:31
[2026-08-25 15:32:32,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:32:32,513.513 INFO    ] Initializing speech engine...
[2026-08-25 15:32:32,536.536 INFO    ] 2026-08-25 15:32:32
[2026-08-25 15:32:32,809.809 INFO    ] 2026-08-25 15:32:32
[2026-08-25 15:32:32,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:32:33,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:32:33,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:32:33,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:32:33,291.291 INFO    ] time= 25/08/2026 15:32:33
[2026-08-25 15:32:33,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:32:33,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:32:33,532.532 INFO    ] No existing commands found in stream
[2026-08-25 15:32:38,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:32:38,547.547 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 15:32:42,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:32:42,829.829 INFO    ] Checking for system updates...
[2026-08-25 15:32:42,865.865 INFO    ] 200
[2026-08-25 15:32:42,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:42,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:32:42,922.922 INFO    ] No update needed
[2026-08-25 15:32:42,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 15:32:42,957.957 INFO    ] 200
[2026-08-25 15:32:42,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:43,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:32:43,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:32:43,150.150 INFO    ] No camera update needed
[2026-08-25 15:32:43,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:32:43,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:32:43,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:32:43,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:32:45,204.204 INFO    ] ================================================
[2026-08-25 15:32:45,223.223 INFO    ] Launching Daemon at Tue Aug 25 15:32:45 IST 2026
[2026-08-25 15:32:45,234.234 INFO    ] ================================================
[2026-08-25 15:32:45,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:32:45
[2026-08-25 15:32:46,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:32:46,686.686 INFO    ] Initializing speech engine...
[2026-08-25 15:32:46,705.705 INFO    ] 2026-08-25 15:32:46
[2026-08-25 15:32:46,956.956 INFO    ] 2026-08-25 15:32:46
[2026-08-25 15:32:46,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:32:47,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:32:47,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:32:47,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:32:47,570.570 INFO    ] time= 25/08/2026 15:32:47
[2026-08-25 15:32:47,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:32:47,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:32:47,666.666 INFO    ] No existing commands found in stream
[2026-08-25 15:32:52,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:32:52,679.679 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 15:32:53,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:32:53,647.647 INFO    ] Checking for system updates...
[2026-08-25 15:32:53,682.682 INFO    ] 200
[2026-08-25 15:32:53,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:53,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:32:53,739.739 INFO    ] No update needed
[2026-08-25 15:32:53,742.742 INFO    ] Checking for camera pi updates...
[2026-08-25 15:32:53,776.776 INFO    ] 200
[2026-08-25 15:32:53,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:32:53,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:32:53,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:32:53,875.875 INFO    ] No camera update needed
[2026-08-25 15:32:53,877.877 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:32:53,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:32:53,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:32:53,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:32:55,932.932 INFO    ] ================================================
[2026-08-25 15:32:55,947.947 INFO    ] Launching Daemon at Tue Aug 25 15:32:55 IST 2026
[2026-08-25 15:32:55,957.957 INFO    ] ================================================
[2026-08-25 15:32:56,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:32:56
[2026-08-25 15:32:57,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:32:57,365.365 INFO    ] Initializing speech engine...
[2026-08-25 15:32:57,384.384 INFO    ] 2026-08-25 15:32:57
[2026-08-25 15:32:57,636.636 INFO    ] 2026-08-25 15:32:57
[2026-08-25 15:32:57,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:32:57,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:32:57,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:32:58,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:32:58,113.113 INFO    ] time= 25/08/2026 15:32:58
[2026-08-25 15:32:58,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:32:58,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:32:58,330.330 INFO    ] No existing commands found in stream
[2026-08-25 15:33:03,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:33:03,349.349 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 15:33:05,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:33:05,923.923 INFO    ] Checking for system updates...
[2026-08-25 15:33:05,959.959 INFO    ] 200
[2026-08-25 15:33:05,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:06,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:33:06,023.023 INFO    ] No update needed
[2026-08-25 15:33:06,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 15:33:06,059.059 INFO    ] 200
[2026-08-25 15:33:06,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:06,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:33:06,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:33:06,179.179 INFO    ] No camera update needed
[2026-08-25 15:33:06,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:33:06,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:33:06,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:33:06,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:33:08,235.235 INFO    ] ================================================
[2026-08-25 15:33:08,250.250 INFO    ] Launching Daemon at Tue Aug 25 15:33:08 IST 2026
[2026-08-25 15:33:08,261.261 INFO    ] ================================================
[2026-08-25 15:33:08,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:33:08
[2026-08-25 15:33:09,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:33:09,667.667 INFO    ] Initializing speech engine...
[2026-08-25 15:33:09,676.676 INFO    ] 2026-08-25 15:33:09
[2026-08-25 15:33:09,965.965 INFO    ] 2026-08-25 15:33:09
[2026-08-25 15:33:10,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:33:10,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:33:10,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:33:10,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:33:10,378.378 INFO    ] time= 25/08/2026 15:33:10
[2026-08-25 15:33:10,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:33:10,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:33:10,550.550 INFO    ] No existing commands found in stream
[2026-08-25 15:33:15,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:33:15,582.582 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 15:33:18,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:33:18,557.557 INFO    ] Checking for system updates...
[2026-08-25 15:33:18,592.592 INFO    ] 200
[2026-08-25 15:33:18,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:18,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:33:18,655.655 INFO    ] No update needed
[2026-08-25 15:33:18,657.657 INFO    ] Checking for camera pi updates...
[2026-08-25 15:33:18,690.690 INFO    ] 200
[2026-08-25 15:33:18,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:18,732.732 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:33:18,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:33:18,791.791 INFO    ] No camera update needed
[2026-08-25 15:33:18,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:33:18,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:33:18,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:33:18,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:33:20,846.846 INFO    ] ================================================
[2026-08-25 15:33:20,861.861 INFO    ] Launching Daemon at Tue Aug 25 15:33:20 IST 2026
[2026-08-25 15:33:20,871.871 INFO    ] ================================================
[2026-08-25 15:33:21,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:33:21
[2026-08-25 15:33:22,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:33:22,437.437 INFO    ] Initializing speech engine...
[2026-08-25 15:33:22,451.451 INFO    ] 2026-08-25 15:33:22
[2026-08-25 15:33:22,758.758 INFO    ] 2026-08-25 15:33:22
[2026-08-25 15:33:22,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:33:23,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:33:23,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:33:23,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:33:23,262.262 INFO    ] time= 25/08/2026 15:33:23
[2026-08-25 15:33:23,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:33:23,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:33:23,420.420 INFO    ] No existing commands found in stream
[2026-08-25 15:33:28,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:33:28,441.441 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 15:33:31,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:33:31,230.230 INFO    ] Checking for system updates...
[2026-08-25 15:33:31,278.278 INFO    ] 200
[2026-08-25 15:33:31,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:31,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:33:31,342.342 INFO    ] No update needed
[2026-08-25 15:33:31,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 15:33:31,381.381 INFO    ] 200
[2026-08-25 15:33:31,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:31,437.437 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:33:31,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:33:31,500.500 INFO    ] No camera update needed
[2026-08-25 15:33:31,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:33:31,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:33:31,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:33:31,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:33:33,563.563 INFO    ] ================================================
[2026-08-25 15:33:33,579.579 INFO    ] Launching Daemon at Tue Aug 25 15:33:33 IST 2026
[2026-08-25 15:33:33,590.590 INFO    ] ================================================
[2026-08-25 15:33:34,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:33:34
[2026-08-25 15:33:34,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:33:34,992.992 INFO    ] Initializing speech engine...
[2026-08-25 15:33:35,000.000 INFO    ] 2026-08-25 15:33:34
[2026-08-25 15:33:35,291.291 INFO    ] 2026-08-25 15:33:35
[2026-08-25 15:33:35,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:33:35,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:33:35,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:33:35,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:33:35,700.700 INFO    ] time= 25/08/2026 15:33:35
[2026-08-25 15:33:35,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:33:35,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:33:35,878.878 INFO    ] No existing commands found in stream
[2026-08-25 15:33:40,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:33:40,900.900 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 15:33:44,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:33:44,360.360 INFO    ] Checking for system updates...
[2026-08-25 15:33:44,398.398 INFO    ] 200
[2026-08-25 15:33:44,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:44,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:33:44,456.456 INFO    ] No update needed
[2026-08-25 15:33:44,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 15:33:44,492.492 INFO    ] 200
[2026-08-25 15:33:44,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:44,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:33:44,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:33:44,584.584 INFO    ] No camera update needed
[2026-08-25 15:33:44,587.587 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:33:44,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:33:44,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:33:44,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:33:46,641.641 INFO    ] ================================================
[2026-08-25 15:33:46,656.656 INFO    ] Launching Daemon at Tue Aug 25 15:33:46 IST 2026
[2026-08-25 15:33:46,667.667 INFO    ] ================================================
[2026-08-25 15:33:47,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:33:47
[2026-08-25 15:33:47,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:33:48,245.245 INFO    ] Initializing speech engine...
[2026-08-25 15:33:48,253.253 INFO    ] 2026-08-25 15:33:48
[2026-08-25 15:33:48,524.524 INFO    ] 2026-08-25 15:33:48
[2026-08-25 15:33:48,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:33:48,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:33:48,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:33:48,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:33:49,019.019 INFO    ] time= 25/08/2026 15:33:48
[2026-08-25 15:33:49,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:33:49,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:33:49,237.237 INFO    ] No existing commands found in stream
[2026-08-25 15:33:54,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:33:54,252.252 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 15:33:58,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:33:58,006.006 INFO    ] Checking for system updates...
[2026-08-25 15:33:58,047.047 INFO    ] 200
[2026-08-25 15:33:58,050.050 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:58,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:33:58,107.107 INFO    ] No update needed
[2026-08-25 15:33:58,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 15:33:58,145.145 INFO    ] 200
[2026-08-25 15:33:58,147.147 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:33:58,190.190 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:33:58,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:33:58,240.240 INFO    ] No camera update needed
[2026-08-25 15:33:58,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:33:58,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:33:58,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:33:58,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:34:00,302.302 INFO    ] ================================================
[2026-08-25 15:34:00,319.319 INFO    ] Launching Daemon at Tue Aug 25 15:34:00 IST 2026
[2026-08-25 15:34:00,329.329 INFO    ] ================================================
[2026-08-25 15:34:00,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:34:00
[2026-08-25 15:34:01,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:34:02,056.056 INFO    ] Initializing speech engine...
[2026-08-25 15:34:02,069.069 INFO    ] 2026-08-25 15:34:02
[2026-08-25 15:34:02,395.395 INFO    ] 2026-08-25 15:34:02
[2026-08-25 15:34:02,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:34:02,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:34:02,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:34:02,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:34:02,952.952 INFO    ] time= 25/08/2026 15:34:02
[2026-08-25 15:34:03,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:34:03,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:34:03,142.142 INFO    ] No existing commands found in stream
[2026-08-25 15:34:08,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:34:08,157.157 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 15:34:10,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:34:10,182.182 INFO    ] Checking for system updates...
[2026-08-25 15:34:10,218.218 INFO    ] 200
[2026-08-25 15:34:10,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:10,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:10,279.279 INFO    ] No update needed
[2026-08-25 15:34:10,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 15:34:10,317.317 INFO    ] 200
[2026-08-25 15:34:10,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:10,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:34:10,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:10,419.419 INFO    ] No camera update needed
[2026-08-25 15:34:10,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:34:10,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:34:10,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:34:10,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:34:12,482.482 INFO    ] ================================================
[2026-08-25 15:34:12,497.497 INFO    ] Launching Daemon at Tue Aug 25 15:34:12 IST 2026
[2026-08-25 15:34:12,508.508 INFO    ] ================================================
[2026-08-25 15:34:13,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:34:13
[2026-08-25 15:34:13,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:34:14,155.155 INFO    ] Initializing speech engine...
[2026-08-25 15:34:14,169.169 INFO    ] 2026-08-25 15:34:14
[2026-08-25 15:34:14,430.430 INFO    ] 2026-08-25 15:34:14
[2026-08-25 15:34:14,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:34:14,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:34:14,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:34:14,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:34:14,924.924 INFO    ] time= 25/08/2026 15:34:14
[2026-08-25 15:34:14,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:34:15,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:34:15,131.131 INFO    ] No existing commands found in stream
[2026-08-25 15:34:20,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:34:20,154.154 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 15:34:21,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:34:21,323.323 INFO    ] Checking for system updates...
[2026-08-25 15:34:21,359.359 INFO    ] 200
[2026-08-25 15:34:21,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:21,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:21,417.417 INFO    ] No update needed
[2026-08-25 15:34:21,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 15:34:21,456.456 INFO    ] 200
[2026-08-25 15:34:21,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:21,514.514 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:34:21,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:21,562.562 INFO    ] No camera update needed
[2026-08-25 15:34:21,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:34:21,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:34:21,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:34:21,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:34:23,617.617 INFO    ] ================================================
[2026-08-25 15:34:23,632.632 INFO    ] Launching Daemon at Tue Aug 25 15:34:23 IST 2026
[2026-08-25 15:34:23,643.643 INFO    ] ================================================
[2026-08-25 15:34:24,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:34:24
[2026-08-25 15:34:24,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:34:25,059.059 INFO    ] Initializing speech engine...
[2026-08-25 15:34:25,074.074 INFO    ] 2026-08-25 15:34:25
[2026-08-25 15:34:25,337.337 INFO    ] 2026-08-25 15:34:25
[2026-08-25 15:34:25,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:34:25,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:34:25,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:34:25,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:34:25,720.720 INFO    ] time= 25/08/2026 15:34:25
[2026-08-25 15:34:25,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:34:25,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:34:25,802.802 INFO    ] No existing commands found in stream
[2026-08-25 15:34:30,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:34:30,840.840 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 15:34:35,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:34:35,267.267 INFO    ] Checking for system updates...
[2026-08-25 15:34:35,303.303 INFO    ] 200
[2026-08-25 15:34:35,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:35,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:35,366.366 INFO    ] No update needed
[2026-08-25 15:34:35,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 15:34:35,402.402 INFO    ] 200
[2026-08-25 15:34:35,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:35,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:34:35,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:35,497.497 INFO    ] No camera update needed
[2026-08-25 15:34:35,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:34:35,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:34:35,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:34:35,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:34:37,553.553 INFO    ] ================================================
[2026-08-25 15:34:37,572.572 INFO    ] Launching Daemon at Tue Aug 25 15:34:37 IST 2026
[2026-08-25 15:34:37,584.584 INFO    ] ================================================
[2026-08-25 15:34:38,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:34:38
[2026-08-25 15:34:38,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:34:39,202.202 INFO    ] Initializing speech engine...
[2026-08-25 15:34:39,210.210 INFO    ] 2026-08-25 15:34:39
[2026-08-25 15:34:39,480.480 INFO    ] 2026-08-25 15:34:39
[2026-08-25 15:34:39,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:34:39,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:34:39,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:34:39,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:34:39,971.971 INFO    ] time= 25/08/2026 15:34:39
[2026-08-25 15:34:40,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:34:40,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:34:40,180.180 INFO    ] No existing commands found in stream
[2026-08-25 15:34:45,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:34:45,201.201 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 15:34:49,396.396 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:34:49,399.399 INFO    ] Checking for system updates...
[2026-08-25 15:34:49,436.436 INFO    ] 200
[2026-08-25 15:34:49,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:49,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:49,496.496 INFO    ] No update needed
[2026-08-25 15:34:49,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 15:34:49,534.534 INFO    ] 200
[2026-08-25 15:34:49,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:34:49,578.578 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:34:49,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:34:49,725.725 INFO    ] No camera update needed
[2026-08-25 15:34:49,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:34:49,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:34:49,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:34:49,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:34:51,784.784 INFO    ] ================================================
[2026-08-25 15:34:51,800.800 INFO    ] Launching Daemon at Tue Aug 25 15:34:51 IST 2026
[2026-08-25 15:34:51,811.811 INFO    ] ================================================
[2026-08-25 15:34:52,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:34:52
[2026-08-25 15:34:52,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:34:53,262.262 INFO    ] Initializing speech engine...
[2026-08-25 15:34:53,268.268 INFO    ] 2026-08-25 15:34:53
[2026-08-25 15:34:53,530.530 INFO    ] 2026-08-25 15:34:53
[2026-08-25 15:34:53,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:34:53,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:34:53,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:34:53,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:34:54,017.017 INFO    ] time= 25/08/2026 15:34:53
[2026-08-25 15:34:54,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:34:54,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:34:54,217.217 INFO    ] No existing commands found in stream
[2026-08-25 15:34:59,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:34:59,245.245 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 15:35:01,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:35:01,962.962 INFO    ] Checking for system updates...
[2026-08-25 15:35:02,013.013 INFO    ] 200
[2026-08-25 15:35:02,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:02,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:02,116.116 INFO    ] No update needed
[2026-08-25 15:35:02,120.120 INFO    ] Checking for camera pi updates...
[2026-08-25 15:35:02,160.160 INFO    ] 200
[2026-08-25 15:35:02,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:02,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:35:02,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:02,297.297 INFO    ] No camera update needed
[2026-08-25 15:35:02,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:35:02,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:35:02,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:35:02,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:35:04,359.359 INFO    ] ================================================
[2026-08-25 15:35:04,375.375 INFO    ] Launching Daemon at Tue Aug 25 15:35:04 IST 2026
[2026-08-25 15:35:04,386.386 INFO    ] ================================================
[2026-08-25 15:35:04,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:35:04
[2026-08-25 15:35:05,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:35:05,827.827 INFO    ] Initializing speech engine...
[2026-08-25 15:35:05,837.837 INFO    ] 2026-08-25 15:35:05
[2026-08-25 15:35:06,086.086 INFO    ] 2026-08-25 15:35:06
[2026-08-25 15:35:06,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:35:06,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:35:06,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:35:06,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:35:06,612.612 INFO    ] time= 25/08/2026 15:35:06
[2026-08-25 15:35:06,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:35:06,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:35:06,817.817 INFO    ] No existing commands found in stream
[2026-08-25 15:35:11,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:35:11,839.839 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 15:35:16,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:35:16,181.181 INFO    ] Checking for system updates...
[2026-08-25 15:35:16,216.216 INFO    ] 200
[2026-08-25 15:35:16,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:16,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:16,273.273 INFO    ] No update needed
[2026-08-25 15:35:16,276.276 INFO    ] Checking for camera pi updates...
[2026-08-25 15:35:16,310.310 INFO    ] 200
[2026-08-25 15:35:16,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:16,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:35:16,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:16,410.410 INFO    ] No camera update needed
[2026-08-25 15:35:16,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:35:16,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:35:16,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:35:16,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:35:18,466.466 INFO    ] ================================================
[2026-08-25 15:35:18,481.481 INFO    ] Launching Daemon at Tue Aug 25 15:35:18 IST 2026
[2026-08-25 15:35:18,492.492 INFO    ] ================================================
[2026-08-25 15:35:19,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:35:19
[2026-08-25 15:35:19,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:35:19,932.932 INFO    ] Initializing speech engine...
[2026-08-25 15:35:19,946.946 INFO    ] 2026-08-25 15:35:19
[2026-08-25 15:35:20,229.229 INFO    ] 2026-08-25 15:35:20
[2026-08-25 15:35:20,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:35:20,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:35:20,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:35:20,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:35:20,642.642 INFO    ] time= 25/08/2026 15:35:20
[2026-08-25 15:35:20,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:35:20,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:35:20,797.797 INFO    ] No existing commands found in stream
[2026-08-25 15:35:25,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:35:25,826.826 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 15:35:28,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:35:28,280.280 INFO    ] Checking for system updates...
[2026-08-25 15:35:28,316.316 INFO    ] 200
[2026-08-25 15:35:28,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:28,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:28,373.373 INFO    ] No update needed
[2026-08-25 15:35:28,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 15:35:28,411.411 INFO    ] 200
[2026-08-25 15:35:28,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:28,458.458 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:35:28,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:28,531.531 INFO    ] No camera update needed
[2026-08-25 15:35:28,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:35:28,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:35:28,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:35:28,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:35:30,585.585 INFO    ] ================================================
[2026-08-25 15:35:30,600.600 INFO    ] Launching Daemon at Tue Aug 25 15:35:30 IST 2026
[2026-08-25 15:35:30,610.610 INFO    ] ================================================
[2026-08-25 15:35:31,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:35:31
[2026-08-25 15:35:31,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:35:32,090.090 INFO    ] Initializing speech engine...
[2026-08-25 15:35:32,099.099 INFO    ] 2026-08-25 15:35:32
[2026-08-25 15:35:32,373.373 INFO    ] 2026-08-25 15:35:32
[2026-08-25 15:35:32,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:35:32,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:35:32,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:35:32,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:35:32,806.806 INFO    ] time= 25/08/2026 15:35:32
[2026-08-25 15:35:32,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:35:32,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:35:32,972.972 INFO    ] No existing commands found in stream
[2026-08-25 15:35:38,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:35:38,010.010 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 15:35:40,018.018 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:35:40,020.020 INFO    ] Checking for system updates...
[2026-08-25 15:35:40,056.056 INFO    ] 200
[2026-08-25 15:35:40,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:40,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:40,114.114 INFO    ] No update needed
[2026-08-25 15:35:40,116.116 INFO    ] Checking for camera pi updates...
[2026-08-25 15:35:40,157.157 INFO    ] 200
[2026-08-25 15:35:40,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:40,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:35:40,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:40,249.249 INFO    ] No camera update needed
[2026-08-25 15:35:40,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:35:40,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:35:40,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:35:40,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:35:42,304.304 INFO    ] ================================================
[2026-08-25 15:35:42,319.319 INFO    ] Launching Daemon at Tue Aug 25 15:35:42 IST 2026
[2026-08-25 15:35:42,329.329 INFO    ] ================================================
[2026-08-25 15:35:42,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:35:42
[2026-08-25 15:35:43,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:35:43,771.771 INFO    ] Initializing speech engine...
[2026-08-25 15:35:43,785.785 INFO    ] 2026-08-25 15:35:43
[2026-08-25 15:35:44,055.055 INFO    ] 2026-08-25 15:35:44
[2026-08-25 15:35:44,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:35:44,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:35:44,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:35:44,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:35:44,467.467 INFO    ] time= 25/08/2026 15:35:44
[2026-08-25 15:35:44,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:35:44,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:35:44,559.559 INFO    ] No existing commands found in stream
[2026-08-25 15:35:49,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:35:49,592.592 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 15:35:53,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:35:53,206.206 INFO    ] Checking for system updates...
[2026-08-25 15:35:53,245.245 INFO    ] 200
[2026-08-25 15:35:53,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:53,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:53,302.302 INFO    ] No update needed
[2026-08-25 15:35:53,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 15:35:53,341.341 INFO    ] 200
[2026-08-25 15:35:53,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:35:53,385.385 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:35:53,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:35:53,431.431 INFO    ] No camera update needed
[2026-08-25 15:35:53,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:35:53,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:35:53,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:35:53,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:35:55,487.487 INFO    ] ================================================
[2026-08-25 15:35:55,502.502 INFO    ] Launching Daemon at Tue Aug 25 15:35:55 IST 2026
[2026-08-25 15:35:55,513.513 INFO    ] ================================================
[2026-08-25 15:35:56,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:35:56
[2026-08-25 15:35:56,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:35:57,116.116 INFO    ] Initializing speech engine...
[2026-08-25 15:35:57,123.123 INFO    ] 2026-08-25 15:35:57
[2026-08-25 15:35:57,397.397 INFO    ] 2026-08-25 15:35:57
[2026-08-25 15:35:57,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:35:57,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:35:57,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:35:57,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:35:57,853.853 INFO    ] time= 25/08/2026 15:35:57
[2026-08-25 15:35:57,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:35:57,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:35:58,030.030 INFO    ] No existing commands found in stream
[2026-08-25 15:36:03,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:36:03,070.070 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 15:36:03,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:36:03,635.635 INFO    ] Checking for system updates...
[2026-08-25 15:36:03,670.670 INFO    ] 200
[2026-08-25 15:36:03,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:03,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:03,729.729 INFO    ] No update needed
[2026-08-25 15:36:03,732.732 INFO    ] Checking for camera pi updates...
[2026-08-25 15:36:03,765.765 INFO    ] 200
[2026-08-25 15:36:03,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:03,813.813 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:36:03,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:03,877.877 INFO    ] No camera update needed
[2026-08-25 15:36:03,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:36:03,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:36:03,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:36:03,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:36:05,932.932 INFO    ] ================================================
[2026-08-25 15:36:05,947.947 INFO    ] Launching Daemon at Tue Aug 25 15:36:05 IST 2026
[2026-08-25 15:36:05,958.958 INFO    ] ================================================
[2026-08-25 15:36:06,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:36:06
[2026-08-25 15:36:07,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:36:07,409.409 INFO    ] Initializing speech engine...
[2026-08-25 15:36:07,422.422 INFO    ] 2026-08-25 15:36:07
[2026-08-25 15:36:07,705.705 INFO    ] 2026-08-25 15:36:07
[2026-08-25 15:36:07,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:36:07,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:36:07,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:36:08,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:36:08,121.121 INFO    ] time= 25/08/2026 15:36:08
[2026-08-25 15:36:08,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:36:08,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:36:08,300.300 INFO    ] No existing commands found in stream
[2026-08-25 15:36:13,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:36:13,328.328 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 15:36:15,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:36:15,894.894 INFO    ] Checking for system updates...
[2026-08-25 15:36:15,929.929 INFO    ] 200
[2026-08-25 15:36:15,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:15,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:15,997.997 INFO    ] No update needed
[2026-08-25 15:36:15,999.999 INFO    ] Checking for camera pi updates...
[2026-08-25 15:36:16,033.033 INFO    ] 200
[2026-08-25 15:36:16,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:16,084.084 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:36:16,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:16,137.137 INFO    ] No camera update needed
[2026-08-25 15:36:16,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:36:16,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:36:16,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:36:16,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:36:18,191.191 INFO    ] ================================================
[2026-08-25 15:36:18,206.206 INFO    ] Launching Daemon at Tue Aug 25 15:36:18 IST 2026
[2026-08-25 15:36:18,218.218 INFO    ] ================================================
[2026-08-25 15:36:18,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:36:18
[2026-08-25 15:36:19,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:36:19,625.625 INFO    ] Initializing speech engine...
[2026-08-25 15:36:19,641.641 INFO    ] 2026-08-25 15:36:19
[2026-08-25 15:36:19,936.936 INFO    ] 2026-08-25 15:36:19
[2026-08-25 15:36:19,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:36:20,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:36:20,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:36:20,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:36:20,322.322 INFO    ] time= 25/08/2026 15:36:20
[2026-08-25 15:36:20,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:36:20,332.332 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:36:20,461.461 INFO    ] No existing commands found in stream
[2026-08-25 15:36:25,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:36:25,477.477 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 15:36:26,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:36:26,925.925 INFO    ] Checking for system updates...
[2026-08-25 15:36:26,960.960 INFO    ] 200
[2026-08-25 15:36:26,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:27,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:27,025.025 INFO    ] No update needed
[2026-08-25 15:36:27,028.028 INFO    ] Checking for camera pi updates...
[2026-08-25 15:36:27,064.064 INFO    ] 200
[2026-08-25 15:36:27,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:27,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:36:27,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:27,164.164 INFO    ] No camera update needed
[2026-08-25 15:36:27,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:36:27,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:36:27,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:36:27,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:36:29,220.220 INFO    ] ================================================
[2026-08-25 15:36:29,235.235 INFO    ] Launching Daemon at Tue Aug 25 15:36:29 IST 2026
[2026-08-25 15:36:29,246.246 INFO    ] ================================================
[2026-08-25 15:36:29,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:36:29
[2026-08-25 15:36:30,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:36:30,653.653 INFO    ] Initializing speech engine...
[2026-08-25 15:36:30,677.677 INFO    ] 2026-08-25 15:36:30
[2026-08-25 15:36:30,933.933 INFO    ] 2026-08-25 15:36:30
[2026-08-25 15:36:30,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:36:31,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:36:31,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:36:31,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:36:31,359.359 INFO    ] time= 25/08/2026 15:36:31
[2026-08-25 15:36:31,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:36:31,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:36:31,528.528 INFO    ] No existing commands found in stream
[2026-08-25 15:36:36,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:36:36,552.552 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 15:36:38,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:36:38,554.554 INFO    ] Checking for system updates...
[2026-08-25 15:36:38,591.591 INFO    ] 200
[2026-08-25 15:36:38,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:38,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:38,647.647 INFO    ] No update needed
[2026-08-25 15:36:38,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 15:36:38,684.684 INFO    ] 200
[2026-08-25 15:36:38,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:38,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:36:38,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:38,774.774 INFO    ] No camera update needed
[2026-08-25 15:36:38,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:36:38,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:36:38,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:36:38,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:36:40,829.829 INFO    ] ================================================
[2026-08-25 15:36:40,844.844 INFO    ] Launching Daemon at Tue Aug 25 15:36:40 IST 2026
[2026-08-25 15:36:40,854.854 INFO    ] ================================================
[2026-08-25 15:36:41,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:36:41
[2026-08-25 15:36:42,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:36:42,483.483 INFO    ] Initializing speech engine...
[2026-08-25 15:36:42,491.491 INFO    ] 2026-08-25 15:36:42
[2026-08-25 15:36:42,813.813 INFO    ] 2026-08-25 15:36:42
[2026-08-25 15:36:42,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:36:43,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:36:43,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:36:43,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:36:43,329.329 INFO    ] time= 25/08/2026 15:36:43
[2026-08-25 15:36:43,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:36:43,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:36:43,479.479 INFO    ] No existing commands found in stream
[2026-08-25 15:36:48,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:36:48,504.504 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 15:36:50,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:36:50,952.952 INFO    ] Checking for system updates...
[2026-08-25 15:36:50,987.987 INFO    ] 200
[2026-08-25 15:36:50,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:51,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:51,044.044 INFO    ] No update needed
[2026-08-25 15:36:51,047.047 INFO    ] Checking for camera pi updates...
[2026-08-25 15:36:51,083.083 INFO    ] 200
[2026-08-25 15:36:51,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:36:51,126.126 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:36:51,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:36:51,275.275 INFO    ] No camera update needed
[2026-08-25 15:36:51,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:36:51,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:36:51,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:36:51,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:36:53,331.331 INFO    ] ================================================
[2026-08-25 15:36:53,346.346 INFO    ] Launching Daemon at Tue Aug 25 15:36:53 IST 2026
[2026-08-25 15:36:53,356.356 INFO    ] ================================================
[2026-08-25 15:36:53,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:36:53
[2026-08-25 15:36:54,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:36:54,778.778 INFO    ] Initializing speech engine...
[2026-08-25 15:36:54,781.781 INFO    ] 2026-08-25 15:36:54
[2026-08-25 15:36:55,070.070 INFO    ] 2026-08-25 15:36:55
[2026-08-25 15:36:55,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:36:55,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:36:55,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:36:55,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:36:55,514.514 INFO    ] time= 25/08/2026 15:36:55
[2026-08-25 15:36:55,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:36:55,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:36:55,747.747 INFO    ] No existing commands found in stream
[2026-08-25 15:37:00,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:37:00,788.788 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 15:37:02,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:37:02,505.505 INFO    ] Checking for system updates...
[2026-08-25 15:37:02,550.550 INFO    ] 200
[2026-08-25 15:37:02,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:02,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:37:02,617.617 INFO    ] No update needed
[2026-08-25 15:37:02,620.620 INFO    ] Checking for camera pi updates...
[2026-08-25 15:37:02,668.668 INFO    ] 200
[2026-08-25 15:37:02,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:02,719.719 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:37:02,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:37:02,781.781 INFO    ] No camera update needed
[2026-08-25 15:37:02,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:37:02,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:37:02,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:37:02,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:37:04,847.847 INFO    ] ================================================
[2026-08-25 15:37:04,862.862 INFO    ] Launching Daemon at Tue Aug 25 15:37:04 IST 2026
[2026-08-25 15:37:04,873.873 INFO    ] ================================================
[2026-08-25 15:37:05,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:37:05
[2026-08-25 15:37:06,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:37:06,547.547 INFO    ] Initializing speech engine...
[2026-08-25 15:37:06,553.553 INFO    ] 2026-08-25 15:37:06
[2026-08-25 15:37:06,846.846 INFO    ] 2026-08-25 15:37:06
[2026-08-25 15:37:06,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:37:07,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:37:07,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:37:07,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:37:07,396.396 INFO    ] time= 25/08/2026 15:37:07
[2026-08-25 15:37:07,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:37:07,424.424 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:37:07,554.554 INFO    ] No existing commands found in stream
[2026-08-25 15:37:12,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:37:12,581.581 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 15:37:13,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:37:13,105.105 INFO    ] Checking for system updates...
[2026-08-25 15:37:13,140.140 INFO    ] 200
[2026-08-25 15:37:13,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:13,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:37:13,207.207 INFO    ] No update needed
[2026-08-25 15:37:13,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 15:37:13,242.242 INFO    ] 200
[2026-08-25 15:37:13,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:13,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:37:13,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:37:13,334.334 INFO    ] No camera update needed
[2026-08-25 15:37:13,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:37:13,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:37:13,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:37:13,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:37:15,389.389 INFO    ] ================================================
[2026-08-25 15:37:15,404.404 INFO    ] Launching Daemon at Tue Aug 25 15:37:15 IST 2026
[2026-08-25 15:37:15,415.415 INFO    ] ================================================
[2026-08-25 15:37:16,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:37:16
[2026-08-25 15:37:16,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:37:17,019.019 INFO    ] Initializing speech engine...
[2026-08-25 15:37:17,028.028 INFO    ] 2026-08-25 15:37:17
[2026-08-25 15:37:17,312.312 INFO    ] 2026-08-25 15:37:17
[2026-08-25 15:37:17,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:37:17,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:37:17,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:37:17,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:37:17,893.893 INFO    ] time= 25/08/2026 15:37:17
[2026-08-25 15:37:17,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:37:17,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:37:18,026.026 INFO    ] No existing commands found in stream
[2026-08-25 15:37:23,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:37:23,057.057 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 15:37:24,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:37:24,404.404 INFO    ] Checking for system updates...
[2026-08-25 15:37:24,441.441 INFO    ] 200
[2026-08-25 15:37:24,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:24,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:37:24,505.505 INFO    ] No update needed
[2026-08-25 15:37:24,508.508 INFO    ] Checking for camera pi updates...
[2026-08-25 15:37:24,542.542 INFO    ] 200
[2026-08-25 15:37:24,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:24,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:37:24,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:37:24,643.643 INFO    ] No camera update needed
[2026-08-25 15:37:24,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:37:24,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:37:24,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:37:24,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:37:26,700.700 INFO    ] ================================================
[2026-08-25 15:37:26,715.715 INFO    ] Launching Daemon at Tue Aug 25 15:37:26 IST 2026
[2026-08-25 15:37:26,726.726 INFO    ] ================================================
[2026-08-25 15:37:27,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:37:27
[2026-08-25 15:37:27,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:37:28,268.268 INFO    ] Initializing speech engine...
[2026-08-25 15:37:28,276.276 INFO    ] 2026-08-25 15:37:28
[2026-08-25 15:37:28,547.547 INFO    ] 2026-08-25 15:37:28
[2026-08-25 15:37:28,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:37:28,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:37:28,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:37:28,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:37:29,042.042 INFO    ] time= 25/08/2026 15:37:28
[2026-08-25 15:37:29,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:37:29,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:37:29,231.231 INFO    ] No existing commands found in stream
[2026-08-25 15:37:34,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:37:34,272.272 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 15:37:38,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:37:38,207.207 INFO    ] Checking for system updates...
[2026-08-25 15:37:38,242.242 INFO    ] 200
[2026-08-25 15:37:38,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:38,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:37:38,300.300 INFO    ] No update needed
[2026-08-25 15:37:38,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 15:37:38,336.336 INFO    ] 200
[2026-08-25 15:37:38,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:38,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:37:38,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:37:38,431.431 INFO    ] No camera update needed
[2026-08-25 15:37:38,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:37:38,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:37:38,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:37:38,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:37:40,485.485 INFO    ] ================================================
[2026-08-25 15:37:40,499.499 INFO    ] Launching Daemon at Tue Aug 25 15:37:40 IST 2026
[2026-08-25 15:37:40,511.511 INFO    ] ================================================
[2026-08-25 15:37:41,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:37:41
[2026-08-25 15:37:41,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:37:41,939.939 INFO    ] Initializing speech engine...
[2026-08-25 15:37:41,959.959 INFO    ] 2026-08-25 15:37:41
[2026-08-25 15:37:42,232.232 INFO    ] 2026-08-25 15:37:42
[2026-08-25 15:37:42,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:37:43,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:37:43,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:37:43,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:37:43,741.741 INFO    ] time= 25/08/2026 15:37:43
[2026-08-25 15:37:43,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:37:43,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:37:43,828.828 INFO    ] No existing commands found in stream
[2026-08-25 15:37:48,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:37:48,842.842 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 15:37:52,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:37:52,628.628 INFO    ] Checking for system updates...
[2026-08-25 15:37:52,664.664 INFO    ] 200
[2026-08-25 15:37:52,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:52,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:37:52,723.723 INFO    ] No update needed
[2026-08-25 15:37:52,726.726 INFO    ] Checking for camera pi updates...
[2026-08-25 15:37:52,763.763 INFO    ] 200
[2026-08-25 15:37:52,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:37:52,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:37:52,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:37:52,855.855 INFO    ] No camera update needed
[2026-08-25 15:37:52,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:37:52,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:37:52,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:37:52,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:37:54,915.915 INFO    ] ================================================
[2026-08-25 15:37:54,930.930 INFO    ] Launching Daemon at Tue Aug 25 15:37:54 IST 2026
[2026-08-25 15:37:54,941.941 INFO    ] ================================================
[2026-08-25 15:37:55,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:37:55
[2026-08-25 15:37:56,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:37:56,343.343 INFO    ] Initializing speech engine...
[2026-08-25 15:37:56,351.351 INFO    ] 2026-08-25 15:37:56
[2026-08-25 15:37:56,642.642 INFO    ] 2026-08-25 15:37:56
[2026-08-25 15:37:56,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:37:56,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:37:56,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:37:56,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:37:56,990.990 INFO    ] time= 25/08/2026 15:37:56
[2026-08-25 15:37:57,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:37:57,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:37:57,116.116 INFO    ] No existing commands found in stream
[2026-08-25 15:38:02,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:38:02,140.140 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 15:38:05,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:38:05,412.412 INFO    ] Checking for system updates...
[2026-08-25 15:38:05,448.448 INFO    ] 200
[2026-08-25 15:38:05,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:05,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:38:05,506.506 INFO    ] No update needed
[2026-08-25 15:38:05,509.509 INFO    ] Checking for camera pi updates...
[2026-08-25 15:38:05,544.544 INFO    ] 200
[2026-08-25 15:38:05,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:05,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:38:05,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:38:05,649.649 INFO    ] No camera update needed
[2026-08-25 15:38:05,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:38:05,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:38:05,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:38:05,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:38:07,706.706 INFO    ] ================================================
[2026-08-25 15:38:07,723.723 INFO    ] Launching Daemon at Tue Aug 25 15:38:07 IST 2026
[2026-08-25 15:38:07,734.734 INFO    ] ================================================
[2026-08-25 15:38:08,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:38:08
[2026-08-25 15:38:09,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:38:09,395.395 INFO    ] Initializing speech engine...
[2026-08-25 15:38:09,408.408 INFO    ] 2026-08-25 15:38:09
[2026-08-25 15:38:09,677.677 INFO    ] 2026-08-25 15:38:09
[2026-08-25 15:38:09,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:38:09,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:38:09,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:38:10,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:38:10,155.155 INFO    ] time= 25/08/2026 15:38:10
[2026-08-25 15:38:10,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:38:10,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:38:10,372.372 INFO    ] No existing commands found in stream
[2026-08-25 15:38:15,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:38:15,397.397 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 15:38:16,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:38:16,128.128 INFO    ] Checking for system updates...
[2026-08-25 15:38:16,169.169 INFO    ] 200
[2026-08-25 15:38:16,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:16,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:38:16,232.232 INFO    ] No update needed
[2026-08-25 15:38:16,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 15:38:16,269.269 INFO    ] 200
[2026-08-25 15:38:16,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:16,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:38:16,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:38:16,364.364 INFO    ] No camera update needed
[2026-08-25 15:38:16,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:38:16,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:38:16,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:38:16,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:38:18,421.421 INFO    ] ================================================
[2026-08-25 15:38:18,436.436 INFO    ] Launching Daemon at Tue Aug 25 15:38:18 IST 2026
[2026-08-25 15:38:18,447.447 INFO    ] ================================================
[2026-08-25 15:38:19,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:38:19
[2026-08-25 15:38:19,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:38:20,185.185 INFO    ] Initializing speech engine...
[2026-08-25 15:38:20,194.194 INFO    ] 2026-08-25 15:38:20
[2026-08-25 15:38:20,478.478 INFO    ] 2026-08-25 15:38:20
[2026-08-25 15:38:20,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:38:20,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:38:20,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:38:20,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:38:20,928.928 INFO    ] time= 25/08/2026 15:38:20
[2026-08-25 15:38:20,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:38:21,037.037 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:38:21,090.090 INFO    ] No existing commands found in stream
[2026-08-25 15:38:26,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:38:26,100.100 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 15:38:26,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:38:26,763.763 INFO    ] Checking for system updates...
[2026-08-25 15:38:26,798.798 INFO    ] 200
[2026-08-25 15:38:26,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:26,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:38:26,864.864 INFO    ] No update needed
[2026-08-25 15:38:26,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 15:38:26,902.902 INFO    ] 200
[2026-08-25 15:38:26,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:26,968.968 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:38:27,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:38:27,018.018 INFO    ] No camera update needed
[2026-08-25 15:38:27,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:38:27,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:38:27,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:38:27,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:38:29,077.077 INFO    ] ================================================
[2026-08-25 15:38:29,092.092 INFO    ] Launching Daemon at Tue Aug 25 15:38:29 IST 2026
[2026-08-25 15:38:29,103.103 INFO    ] ================================================
[2026-08-25 15:38:29,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:38:29
[2026-08-25 15:38:30,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:38:30,524.524 INFO    ] Initializing speech engine...
[2026-08-25 15:38:30,542.542 INFO    ] 2026-08-25 15:38:30
[2026-08-25 15:38:30,795.795 INFO    ] 2026-08-25 15:38:30
[2026-08-25 15:38:30,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:38:31,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:38:31,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:38:31,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:38:31,251.251 INFO    ] time= 25/08/2026 15:38:31
[2026-08-25 15:38:31,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:38:31,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:38:31,494.494 INFO    ] No existing commands found in stream
[2026-08-25 15:38:36,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:38:36,509.509 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 15:38:37,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:38:37,074.074 INFO    ] Checking for system updates...
[2026-08-25 15:38:37,113.113 INFO    ] 200
[2026-08-25 15:38:37,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:37,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:38:37,171.171 INFO    ] No update needed
[2026-08-25 15:38:37,173.173 INFO    ] Checking for camera pi updates...
[2026-08-25 15:38:37,219.219 INFO    ] 200
[2026-08-25 15:38:37,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:37,265.265 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:38:37,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:38:37,315.315 INFO    ] No camera update needed
[2026-08-25 15:38:37,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:38:37,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:38:37,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:38:37,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:38:39,370.370 INFO    ] ================================================
[2026-08-25 15:38:39,385.385 INFO    ] Launching Daemon at Tue Aug 25 15:38:39 IST 2026
[2026-08-25 15:38:39,396.396 INFO    ] ================================================
[2026-08-25 15:38:39,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:38:39
[2026-08-25 15:38:40,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:38:40,824.824 INFO    ] Initializing speech engine...
[2026-08-25 15:38:40,832.832 INFO    ] 2026-08-25 15:38:40
[2026-08-25 15:38:41,088.088 INFO    ] 2026-08-25 15:38:41
[2026-08-25 15:38:41,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:38:41,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:38:41,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:38:41,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:38:41,571.571 INFO    ] time= 25/08/2026 15:38:41
[2026-08-25 15:38:41,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:38:41,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:38:41,795.795 INFO    ] No existing commands found in stream
[2026-08-25 15:38:46,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:38:46,833.833 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 15:38:49,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:38:49,624.624 INFO    ] Checking for system updates...
[2026-08-25 15:38:49,663.663 INFO    ] 200
[2026-08-25 15:38:49,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:49,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:38:49,726.726 INFO    ] No update needed
[2026-08-25 15:38:49,729.729 INFO    ] Checking for camera pi updates...
[2026-08-25 15:38:49,762.762 INFO    ] 200
[2026-08-25 15:38:49,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:38:49,812.812 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:38:49,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:38:49,870.870 INFO    ] No camera update needed
[2026-08-25 15:38:49,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:38:49,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:38:49,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:38:49,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:38:51,927.927 INFO    ] ================================================
[2026-08-25 15:38:51,942.942 INFO    ] Launching Daemon at Tue Aug 25 15:38:51 IST 2026
[2026-08-25 15:38:51,953.953 INFO    ] ================================================
[2026-08-25 15:38:52,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:38:52
[2026-08-25 15:38:53,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:38:53,477.477 INFO    ] Initializing speech engine...
[2026-08-25 15:38:53,486.486 INFO    ] 2026-08-25 15:38:53
[2026-08-25 15:38:53,736.736 INFO    ] 2026-08-25 15:38:53
[2026-08-25 15:38:53,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:38:54,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:38:54,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:38:54,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:38:54,194.194 INFO    ] time= 25/08/2026 15:38:54
[2026-08-25 15:38:54,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:38:54,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:38:54,417.417 INFO    ] No existing commands found in stream
[2026-08-25 15:38:59,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:38:59,447.447 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 15:39:01,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:39:01,366.366 INFO    ] Checking for system updates...
[2026-08-25 15:39:01,441.441 INFO    ] 200
[2026-08-25 15:39:01,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:01,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:39:01,557.557 INFO    ] No update needed
[2026-08-25 15:39:01,562.562 INFO    ] Checking for camera pi updates...
[2026-08-25 15:39:01,623.623 INFO    ] 200
[2026-08-25 15:39:01,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:01,715.715 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:39:01,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:39:01,890.890 INFO    ] No camera update needed
[2026-08-25 15:39:01,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:39:01,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:39:01,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:39:01,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:39:03,950.950 INFO    ] ================================================
[2026-08-25 15:39:03,965.965 INFO    ] Launching Daemon at Tue Aug 25 15:39:03 IST 2026
[2026-08-25 15:39:03,976.976 INFO    ] ================================================
[2026-08-25 15:39:04,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:39:04
[2026-08-25 15:39:05,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:39:05,628.628 INFO    ] Initializing speech engine...
[2026-08-25 15:39:05,636.636 INFO    ] 2026-08-25 15:39:05
[2026-08-25 15:39:05,958.958 INFO    ] 2026-08-25 15:39:05
[2026-08-25 15:39:06,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:39:06,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:39:06,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:39:06,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:39:06,488.488 INFO    ] time= 25/08/2026 15:39:06
[2026-08-25 15:39:06,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:39:06,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:39:06,678.678 INFO    ] No existing commands found in stream
[2026-08-25 15:39:11,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:39:11,718.718 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 15:39:14,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:39:14,780.780 INFO    ] Checking for system updates...
[2026-08-25 15:39:14,817.817 INFO    ] 200
[2026-08-25 15:39:14,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:14,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:39:14,875.875 INFO    ] No update needed
[2026-08-25 15:39:14,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 15:39:14,911.911 INFO    ] 200
[2026-08-25 15:39:14,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:14,961.961 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:39:15,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:39:15,015.015 INFO    ] No camera update needed
[2026-08-25 15:39:15,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:39:15,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:39:15,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:39:15,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:39:17,070.070 INFO    ] ================================================
[2026-08-25 15:39:17,085.085 INFO    ] Launching Daemon at Tue Aug 25 15:39:17 IST 2026
[2026-08-25 15:39:17,097.097 INFO    ] ================================================
[2026-08-25 15:39:17,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:39:17
[2026-08-25 15:39:18,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:39:18,509.509 INFO    ] Initializing speech engine...
[2026-08-25 15:39:18,515.515 INFO    ] 2026-08-25 15:39:18
[2026-08-25 15:39:18,811.811 INFO    ] 2026-08-25 15:39:18
[2026-08-25 15:39:18,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:39:19,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:39:19,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:39:19,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:39:19,210.210 INFO    ] time= 25/08/2026 15:39:19
[2026-08-25 15:39:19,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:39:19,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:39:19,320.320 INFO    ] No existing commands found in stream
[2026-08-25 15:39:24,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:39:24,334.334 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 15:39:28,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:39:28,073.073 INFO    ] Checking for system updates...
[2026-08-25 15:39:28,108.108 INFO    ] 200
[2026-08-25 15:39:28,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:28,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:39:28,165.165 INFO    ] No update needed
[2026-08-25 15:39:28,167.167 INFO    ] Checking for camera pi updates...
[2026-08-25 15:39:28,208.208 INFO    ] 200
[2026-08-25 15:39:28,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:28,251.251 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:39:28,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:39:28,298.298 INFO    ] No camera update needed
[2026-08-25 15:39:28,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:39:28,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:39:28,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:39:28,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:39:30,351.351 INFO    ] ================================================
[2026-08-25 15:39:30,366.366 INFO    ] Launching Daemon at Tue Aug 25 15:39:30 IST 2026
[2026-08-25 15:39:30,377.377 INFO    ] ================================================
[2026-08-25 15:39:30,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:39:30
[2026-08-25 15:39:31,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:39:31,948.948 INFO    ] Initializing speech engine...
[2026-08-25 15:39:31,962.962 INFO    ] 2026-08-25 15:39:31
[2026-08-25 15:39:32,254.254 INFO    ] 2026-08-25 15:39:32
[2026-08-25 15:39:32,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:39:32,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:39:32,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:39:32,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:39:32,672.672 INFO    ] time= 25/08/2026 15:39:32
[2026-08-25 15:39:32,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:39:32,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:39:32,802.802 INFO    ] No existing commands found in stream
[2026-08-25 15:39:37,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:39:37,842.842 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 15:39:38,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:39:38,773.773 INFO    ] Checking for system updates...
[2026-08-25 15:39:38,813.813 INFO    ] 200
[2026-08-25 15:39:38,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:38,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:39:38,878.878 INFO    ] No update needed
[2026-08-25 15:39:38,881.881 INFO    ] Checking for camera pi updates...
[2026-08-25 15:39:38,916.916 INFO    ] 200
[2026-08-25 15:39:38,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:38,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:39:39,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:39:39,020.020 INFO    ] No camera update needed
[2026-08-25 15:39:39,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:39:39,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:39:39,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:39:39,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:39:41,074.074 INFO    ] ================================================
[2026-08-25 15:39:41,089.089 INFO    ] Launching Daemon at Tue Aug 25 15:39:41 IST 2026
[2026-08-25 15:39:41,099.099 INFO    ] ================================================
[2026-08-25 15:39:41,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:39:41
[2026-08-25 15:39:42,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:39:42,549.549 INFO    ] Initializing speech engine...
[2026-08-25 15:39:42,558.558 INFO    ] 2026-08-25 15:39:42
[2026-08-25 15:39:42,854.854 INFO    ] 2026-08-25 15:39:42
[2026-08-25 15:39:42,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:39:43,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:39:43,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:39:43,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:39:43,278.278 INFO    ] time= 25/08/2026 15:39:43
[2026-08-25 15:39:43,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:39:43,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:39:43,374.374 INFO    ] No existing commands found in stream
[2026-08-25 15:39:48,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:39:48,407.407 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 15:39:52,085.085 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:39:52,088.088 INFO    ] Checking for system updates...
[2026-08-25 15:39:52,127.127 INFO    ] 200
[2026-08-25 15:39:52,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:52,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:39:52,184.184 INFO    ] No update needed
[2026-08-25 15:39:52,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 15:39:52,222.222 INFO    ] 200
[2026-08-25 15:39:52,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:39:52,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:39:52,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:39:52,317.317 INFO    ] No camera update needed
[2026-08-25 15:39:52,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:39:52,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:39:52,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:39:52,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:39:54,373.373 INFO    ] ================================================
[2026-08-25 15:39:54,388.388 INFO    ] Launching Daemon at Tue Aug 25 15:39:54 IST 2026
[2026-08-25 15:39:54,399.399 INFO    ] ================================================
[2026-08-25 15:39:54,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:39:54
[2026-08-25 15:39:55,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:39:55,850.850 INFO    ] Initializing speech engine...
[2026-08-25 15:39:55,861.861 INFO    ] 2026-08-25 15:39:55
[2026-08-25 15:39:56,108.108 INFO    ] 2026-08-25 15:39:56
[2026-08-25 15:39:56,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:39:56,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:39:56,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:39:56,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:39:56,603.603 INFO    ] time= 25/08/2026 15:39:56
[2026-08-25 15:39:56,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:39:56,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:39:56,811.811 INFO    ] No existing commands found in stream
[2026-08-25 15:40:01,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:40:01,832.832 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 15:40:07,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:40:07,691.691 INFO    ] Checking for system updates...
[2026-08-25 15:40:07,727.727 INFO    ] 200
[2026-08-25 15:40:07,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:07,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:40:07,792.792 INFO    ] No update needed
[2026-08-25 15:40:07,795.795 INFO    ] Checking for camera pi updates...
[2026-08-25 15:40:07,833.833 INFO    ] 200
[2026-08-25 15:40:07,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:07,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:40:07,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:40:07,929.929 INFO    ] No camera update needed
[2026-08-25 15:40:07,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:40:07,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:40:07,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:40:07,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:40:09,985.985 INFO    ] ================================================
[2026-08-25 15:40:10,001.001 INFO    ] Launching Daemon at Tue Aug 25 15:40:09 IST 2026
[2026-08-25 15:40:10,012.012 INFO    ] ================================================
[2026-08-25 15:40:10,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:40:10
[2026-08-25 15:40:11,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:40:11,463.463 INFO    ] Initializing speech engine...
[2026-08-25 15:40:11,476.476 INFO    ] 2026-08-25 15:40:11
[2026-08-25 15:40:11,743.743 INFO    ] 2026-08-25 15:40:11
[2026-08-25 15:40:11,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:40:11,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:40:11,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:40:12,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:40:12,122.122 INFO    ] time= 25/08/2026 15:40:12
[2026-08-25 15:40:12,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:40:12,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:40:12,320.320 INFO    ] No existing commands found in stream
[2026-08-25 15:40:17,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:40:17,333.333 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 15:40:19,138.138 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:40:19,140.140 INFO    ] Checking for system updates...
[2026-08-25 15:40:19,180.180 INFO    ] 200
[2026-08-25 15:40:19,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:19,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:40:19,237.237 INFO    ] No update needed
[2026-08-25 15:40:19,239.239 INFO    ] Checking for camera pi updates...
[2026-08-25 15:40:19,273.273 INFO    ] 200
[2026-08-25 15:40:19,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:19,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:40:19,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:40:19,372.372 INFO    ] No camera update needed
[2026-08-25 15:40:19,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:40:19,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:40:19,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:40:19,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:40:21,428.428 INFO    ] ================================================
[2026-08-25 15:40:21,443.443 INFO    ] Launching Daemon at Tue Aug 25 15:40:21 IST 2026
[2026-08-25 15:40:21,454.454 INFO    ] ================================================
[2026-08-25 15:40:22,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:40:22
[2026-08-25 15:40:22,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:40:22,887.887 INFO    ] Initializing speech engine...
[2026-08-25 15:40:22,897.897 INFO    ] 2026-08-25 15:40:22
[2026-08-25 15:40:23,140.140 INFO    ] 2026-08-25 15:40:23
[2026-08-25 15:40:23,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:40:23,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:40:23,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:40:23,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:40:23,642.642 INFO    ] time= 25/08/2026 15:40:23
[2026-08-25 15:40:23,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:40:23,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:40:23,836.836 INFO    ] No existing commands found in stream
[2026-08-25 15:40:28,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:40:28,862.862 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 15:40:33,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:40:33,219.219 INFO    ] Checking for system updates...
[2026-08-25 15:40:33,262.262 INFO    ] 200
[2026-08-25 15:40:33,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:33,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:40:33,327.327 INFO    ] No update needed
[2026-08-25 15:40:33,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 15:40:33,363.363 INFO    ] 200
[2026-08-25 15:40:33,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:33,413.413 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:40:33,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:40:33,468.468 INFO    ] No camera update needed
[2026-08-25 15:40:33,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:40:33,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:40:33,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:40:33,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:40:35,523.523 INFO    ] ================================================
[2026-08-25 15:40:35,539.539 INFO    ] Launching Daemon at Tue Aug 25 15:40:35 IST 2026
[2026-08-25 15:40:35,551.551 INFO    ] ================================================
[2026-08-25 15:40:36,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:40:36
[2026-08-25 15:40:36,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:40:36,947.947 INFO    ] Initializing speech engine...
[2026-08-25 15:40:36,955.955 INFO    ] 2026-08-25 15:40:36
[2026-08-25 15:40:37,229.229 INFO    ] 2026-08-25 15:40:37
[2026-08-25 15:40:37,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:40:37,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:40:37,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:40:37,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:40:37,662.662 INFO    ] time= 25/08/2026 15:40:37
[2026-08-25 15:40:37,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:40:37,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:40:37,815.815 INFO    ] No existing commands found in stream
[2026-08-25 15:40:42,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:40:42,839.839 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 15:40:44,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:40:44,230.230 INFO    ] Checking for system updates...
[2026-08-25 15:40:44,270.270 INFO    ] 200
[2026-08-25 15:40:44,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:44,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:40:44,345.345 INFO    ] No update needed
[2026-08-25 15:40:44,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 15:40:44,389.389 INFO    ] 200
[2026-08-25 15:40:44,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:44,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:40:44,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:40:44,495.495 INFO    ] No camera update needed
[2026-08-25 15:40:44,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:40:44,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:40:44,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:40:44,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:40:46,549.549 INFO    ] ================================================
[2026-08-25 15:40:46,565.565 INFO    ] Launching Daemon at Tue Aug 25 15:40:46 IST 2026
[2026-08-25 15:40:46,576.576 INFO    ] ================================================
[2026-08-25 15:40:47,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:40:47
[2026-08-25 15:40:47,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:40:48,020.020 INFO    ] Initializing speech engine...
[2026-08-25 15:40:48,046.046 INFO    ] 2026-08-25 15:40:48
[2026-08-25 15:40:48,325.325 INFO    ] 2026-08-25 15:40:48
[2026-08-25 15:40:48,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:40:48,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:40:48,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:40:48,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:40:48,806.806 INFO    ] time= 25/08/2026 15:40:48
[2026-08-25 15:40:48,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:40:48,893.893 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:40:49,037.037 INFO    ] No existing commands found in stream
[2026-08-25 15:40:54,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:40:54,056.056 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 15:40:56,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:40:56,139.139 INFO    ] Checking for system updates...
[2026-08-25 15:40:56,175.175 INFO    ] 200
[2026-08-25 15:40:56,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:56,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:40:56,241.241 INFO    ] No update needed
[2026-08-25 15:40:56,244.244 INFO    ] Checking for camera pi updates...
[2026-08-25 15:40:56,277.277 INFO    ] 200
[2026-08-25 15:40:56,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:40:56,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:40:56,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:40:56,381.381 INFO    ] No camera update needed
[2026-08-25 15:40:56,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:40:56,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:40:56,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:40:56,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:40:58,436.436 INFO    ] ================================================
[2026-08-25 15:40:58,452.452 INFO    ] Launching Daemon at Tue Aug 25 15:40:58 IST 2026
[2026-08-25 15:40:58,463.463 INFO    ] ================================================
[2026-08-25 15:40:59,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:40:59
[2026-08-25 15:40:59,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:40:59,897.897 INFO    ] Initializing speech engine...
[2026-08-25 15:40:59,922.922 INFO    ] 2026-08-25 15:40:59
[2026-08-25 15:41:00,201.201 INFO    ] 2026-08-25 15:41:00
[2026-08-25 15:41:00,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:41:00,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:41:00,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:41:00,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:41:00,628.628 INFO    ] time= 25/08/2026 15:41:00
[2026-08-25 15:41:00,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:41:00,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:41:00,716.716 INFO    ] No existing commands found in stream
[2026-08-25 15:41:05,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:41:05,739.739 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 15:41:07,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:41:07,176.176 INFO    ] Checking for system updates...
[2026-08-25 15:41:07,214.214 INFO    ] 200
[2026-08-25 15:41:07,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:07,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:41:07,289.289 INFO    ] No update needed
[2026-08-25 15:41:07,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 15:41:07,335.335 INFO    ] 200
[2026-08-25 15:41:07,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:07,382.382 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:41:07,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:41:07,530.530 INFO    ] No camera update needed
[2026-08-25 15:41:07,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:41:07,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:41:07,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:41:07,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:41:09,585.585 INFO    ] ================================================
[2026-08-25 15:41:09,601.601 INFO    ] Launching Daemon at Tue Aug 25 15:41:09 IST 2026
[2026-08-25 15:41:09,612.612 INFO    ] ================================================
[2026-08-25 15:41:10,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:41:10
[2026-08-25 15:41:10,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:41:11,302.302 INFO    ] Initializing speech engine...
[2026-08-25 15:41:11,308.308 INFO    ] 2026-08-25 15:41:11
[2026-08-25 15:41:11,598.598 INFO    ] 2026-08-25 15:41:11
[2026-08-25 15:41:11,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:41:11,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:41:11,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:41:12,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:41:12,131.131 INFO    ] time= 25/08/2026 15:41:12
[2026-08-25 15:41:12,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:41:12,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:41:12,301.301 INFO    ] No existing commands found in stream
[2026-08-25 15:41:17,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:41:17,330.330 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 15:41:18,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:41:18,795.795 INFO    ] Checking for system updates...
[2026-08-25 15:41:18,844.844 INFO    ] 200
[2026-08-25 15:41:18,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:18,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:41:18,913.913 INFO    ] No update needed
[2026-08-25 15:41:18,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 15:41:18,955.955 INFO    ] 200
[2026-08-25 15:41:18,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:18,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:41:19,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:41:19,058.058 INFO    ] No camera update needed
[2026-08-25 15:41:19,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:41:19,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:41:19,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:41:19,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:41:21,116.116 INFO    ] ================================================
[2026-08-25 15:41:21,133.133 INFO    ] Launching Daemon at Tue Aug 25 15:41:21 IST 2026
[2026-08-25 15:41:21,144.144 INFO    ] ================================================
[2026-08-25 15:41:21,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:41:21
[2026-08-25 15:41:22,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:41:22,611.611 INFO    ] Initializing speech engine...
[2026-08-25 15:41:22,619.619 INFO    ] 2026-08-25 15:41:22
[2026-08-25 15:41:22,878.878 INFO    ] 2026-08-25 15:41:22
[2026-08-25 15:41:22,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:41:23,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:41:23,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:41:23,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:41:23,363.363 INFO    ] time= 25/08/2026 15:41:23
[2026-08-25 15:41:23,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:41:23,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:41:23,587.587 INFO    ] No existing commands found in stream
[2026-08-25 15:41:28,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:41:28,617.617 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 15:41:30,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:41:30,272.272 INFO    ] Checking for system updates...
[2026-08-25 15:41:30,318.318 INFO    ] 200
[2026-08-25 15:41:30,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:30,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:41:30,382.382 INFO    ] No update needed
[2026-08-25 15:41:30,384.384 INFO    ] Checking for camera pi updates...
[2026-08-25 15:41:30,419.419 INFO    ] 200
[2026-08-25 15:41:30,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:30,469.469 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:41:30,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:41:30,521.521 INFO    ] No camera update needed
[2026-08-25 15:41:30,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:41:30,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:41:30,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:41:30,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:41:32,586.586 INFO    ] ================================================
[2026-08-25 15:41:32,602.602 INFO    ] Launching Daemon at Tue Aug 25 15:41:32 IST 2026
[2026-08-25 15:41:32,617.617 INFO    ] ================================================
[2026-08-25 15:41:33,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:41:33
[2026-08-25 15:41:33,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:41:34,124.124 INFO    ] Initializing speech engine...
[2026-08-25 15:41:34,135.135 INFO    ] 2026-08-25 15:41:34
[2026-08-25 15:41:34,394.394 INFO    ] 2026-08-25 15:41:34
[2026-08-25 15:41:34,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:41:34,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:41:34,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:41:34,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:41:34,719.719 INFO    ] time= 25/08/2026 15:41:34
[2026-08-25 15:41:34,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:41:34,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:41:34,851.851 INFO    ] No existing commands found in stream
[2026-08-25 15:41:39,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:41:39,866.866 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 15:41:42,781.781 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:41:42,784.784 INFO    ] Checking for system updates...
[2026-08-25 15:41:42,820.820 INFO    ] 200
[2026-08-25 15:41:42,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:42,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:41:42,877.877 INFO    ] No update needed
[2026-08-25 15:41:42,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 15:41:42,913.913 INFO    ] 200
[2026-08-25 15:41:42,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:42,962.962 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:41:43,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:41:43,014.014 INFO    ] No camera update needed
[2026-08-25 15:41:43,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:41:43,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:41:43,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:41:43,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:41:45,069.069 INFO    ] ================================================
[2026-08-25 15:41:45,085.085 INFO    ] Launching Daemon at Tue Aug 25 15:41:45 IST 2026
[2026-08-25 15:41:45,096.096 INFO    ] ================================================
[2026-08-25 15:41:45,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:41:45
[2026-08-25 15:41:46,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:41:46,553.553 INFO    ] Initializing speech engine...
[2026-08-25 15:41:46,559.559 INFO    ] 2026-08-25 15:41:46
[2026-08-25 15:41:46,821.821 INFO    ] 2026-08-25 15:41:46
[2026-08-25 15:41:46,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:41:47,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:41:47,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:41:47,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:41:47,300.300 INFO    ] time= 25/08/2026 15:41:47
[2026-08-25 15:41:47,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:41:47,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:41:47,504.504 INFO    ] No existing commands found in stream
[2026-08-25 15:41:52,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:41:52,532.532 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 15:41:56,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:41:56,605.605 INFO    ] Checking for system updates...
[2026-08-25 15:41:56,640.640 INFO    ] 200
[2026-08-25 15:41:56,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:56,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:41:56,698.698 INFO    ] No update needed
[2026-08-25 15:41:56,700.700 INFO    ] Checking for camera pi updates...
[2026-08-25 15:41:56,739.739 INFO    ] 200
[2026-08-25 15:41:56,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:41:56,781.781 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:41:56,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:41:56,835.835 INFO    ] No camera update needed
[2026-08-25 15:41:56,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:41:56,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:41:56,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:41:56,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:41:58,892.892 INFO    ] ================================================
[2026-08-25 15:41:58,908.908 INFO    ] Launching Daemon at Tue Aug 25 15:41:58 IST 2026
[2026-08-25 15:41:58,919.919 INFO    ] ================================================
[2026-08-25 15:41:59,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:41:59
[2026-08-25 15:42:00,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:42:00,333.333 INFO    ] Initializing speech engine...
[2026-08-25 15:42:00,342.342 INFO    ] 2026-08-25 15:42:00
[2026-08-25 15:42:00,593.593 INFO    ] 2026-08-25 15:42:00
[2026-08-25 15:42:00,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:42:00,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:42:00,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:42:00,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:42:00,965.965 INFO    ] time= 25/08/2026 15:42:00
[2026-08-25 15:42:00,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:42:01,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:42:01,160.160 INFO    ] No existing commands found in stream
[2026-08-25 15:42:06,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:42:06,173.173 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 15:42:07,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:42:07,431.431 INFO    ] Checking for system updates...
[2026-08-25 15:42:07,470.470 INFO    ] 200
[2026-08-25 15:42:07,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:07,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:07,529.529 INFO    ] No update needed
[2026-08-25 15:42:07,531.531 INFO    ] Checking for camera pi updates...
[2026-08-25 15:42:07,565.565 INFO    ] 200
[2026-08-25 15:42:07,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:07,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:42:07,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:07,657.657 INFO    ] No camera update needed
[2026-08-25 15:42:07,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:42:07,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:42:07,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:42:07,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:42:09,717.717 INFO    ] ================================================
[2026-08-25 15:42:09,733.733 INFO    ] Launching Daemon at Tue Aug 25 15:42:09 IST 2026
[2026-08-25 15:42:09,743.743 INFO    ] ================================================
[2026-08-25 15:42:10,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:42:10
[2026-08-25 15:42:10,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:42:11,161.161 INFO    ] Initializing speech engine...
[2026-08-25 15:42:11,170.170 INFO    ] 2026-08-25 15:42:11
[2026-08-25 15:42:11,423.423 INFO    ] 2026-08-25 15:42:11
[2026-08-25 15:42:11,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:42:11,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:42:11,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:42:11,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:42:11,876.876 INFO    ] time= 25/08/2026 15:42:11
[2026-08-25 15:42:11,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:42:11,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:42:12,152.152 INFO    ] No existing commands found in stream
[2026-08-25 15:42:17,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:42:17,168.168 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 15:42:18,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:42:18,034.034 INFO    ] Checking for system updates...
[2026-08-25 15:42:18,070.070 INFO    ] 200
[2026-08-25 15:42:18,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:18,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:18,131.131 INFO    ] No update needed
[2026-08-25 15:42:18,133.133 INFO    ] Checking for camera pi updates...
[2026-08-25 15:42:18,170.170 INFO    ] 200
[2026-08-25 15:42:18,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:18,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:42:18,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:18,269.269 INFO    ] No camera update needed
[2026-08-25 15:42:18,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:42:18,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:42:18,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:42:18,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:42:20,325.325 INFO    ] ================================================
[2026-08-25 15:42:20,340.340 INFO    ] Launching Daemon at Tue Aug 25 15:42:20 IST 2026
[2026-08-25 15:42:20,352.352 INFO    ] ================================================
[2026-08-25 15:42:20,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:42:20
[2026-08-25 15:42:21,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:42:21,766.766 INFO    ] Initializing speech engine...
[2026-08-25 15:42:21,784.784 INFO    ] 2026-08-25 15:42:21
[2026-08-25 15:42:22,059.059 INFO    ] 2026-08-25 15:42:22
[2026-08-25 15:42:22,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:42:22,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:42:22,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:42:22,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:42:22,550.550 INFO    ] time= 25/08/2026 15:42:22
[2026-08-25 15:42:22,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:42:22,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:42:22,781.781 INFO    ] No existing commands found in stream
[2026-08-25 15:42:27,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:42:27,807.807 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 15:42:30,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:42:30,306.306 INFO    ] Checking for system updates...
[2026-08-25 15:42:30,343.343 INFO    ] 200
[2026-08-25 15:42:30,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:30,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:30,409.409 INFO    ] No update needed
[2026-08-25 15:42:30,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 15:42:30,450.450 INFO    ] 200
[2026-08-25 15:42:30,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:30,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:42:30,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:30,573.573 INFO    ] No camera update needed
[2026-08-25 15:42:30,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:42:30,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:42:30,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:42:30,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:42:32,632.632 INFO    ] ================================================
[2026-08-25 15:42:32,649.649 INFO    ] Launching Daemon at Tue Aug 25 15:42:32 IST 2026
[2026-08-25 15:42:32,661.661 INFO    ] ================================================
[2026-08-25 15:42:33,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:42:33
[2026-08-25 15:42:33,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:42:34,133.133 INFO    ] Initializing speech engine...
[2026-08-25 15:42:34,157.157 INFO    ] 2026-08-25 15:42:34
[2026-08-25 15:42:34,432.432 INFO    ] 2026-08-25 15:42:34
[2026-08-25 15:42:34,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:42:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:42:34,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:42:34,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:42:34,842.842 INFO    ] time= 25/08/2026 15:42:34
[2026-08-25 15:42:34,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:42:34,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:42:34,997.997 INFO    ] No existing commands found in stream
[2026-08-25 15:42:40,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:42:40,030.030 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 15:42:41,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:42:41,039.039 INFO    ] Checking for system updates...
[2026-08-25 15:42:41,075.075 INFO    ] 200
[2026-08-25 15:42:41,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:41,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:41,131.131 INFO    ] No update needed
[2026-08-25 15:42:41,134.134 INFO    ] Checking for camera pi updates...
[2026-08-25 15:42:41,167.167 INFO    ] 200
[2026-08-25 15:42:41,170.170 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:41,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:42:41,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:41,270.270 INFO    ] No camera update needed
[2026-08-25 15:42:41,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:42:41,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:42:41,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:42:41,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:42:43,325.325 INFO    ] ================================================
[2026-08-25 15:42:43,341.341 INFO    ] Launching Daemon at Tue Aug 25 15:42:43 IST 2026
[2026-08-25 15:42:43,352.352 INFO    ] ================================================
[2026-08-25 15:42:43,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:42:43
[2026-08-25 15:42:44,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:42:44,771.771 INFO    ] Initializing speech engine...
[2026-08-25 15:42:44,780.780 INFO    ] 2026-08-25 15:42:44
[2026-08-25 15:42:45,025.025 INFO    ] 2026-08-25 15:42:45
[2026-08-25 15:42:45,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:42:45,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:42:45,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:42:45,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:42:45,541.541 INFO    ] time= 25/08/2026 15:42:45
[2026-08-25 15:42:45,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:42:45,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:42:45,733.733 INFO    ] No existing commands found in stream
[2026-08-25 15:42:50,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:42:50,748.748 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 15:42:51,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:42:51,852.852 INFO    ] Checking for system updates...
[2026-08-25 15:42:51,891.891 INFO    ] 200
[2026-08-25 15:42:51,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:51,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:51,947.947 INFO    ] No update needed
[2026-08-25 15:42:51,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 15:42:51,983.983 INFO    ] 200
[2026-08-25 15:42:51,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:42:52,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:42:52,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:42:52,079.079 INFO    ] No camera update needed
[2026-08-25 15:42:52,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:42:52,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:42:52,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:42:52,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:42:54,135.135 INFO    ] ================================================
[2026-08-25 15:42:54,150.150 INFO    ] Launching Daemon at Tue Aug 25 15:42:54 IST 2026
[2026-08-25 15:42:54,161.161 INFO    ] ================================================
[2026-08-25 15:42:54,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:42:54
[2026-08-25 15:42:55,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:42:55,629.629 INFO    ] Initializing speech engine...
[2026-08-25 15:42:55,635.635 INFO    ] 2026-08-25 15:42:55
[2026-08-25 15:42:55,901.901 INFO    ] 2026-08-25 15:42:55
[2026-08-25 15:42:55,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:42:56,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:42:56,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:42:56,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:42:56,389.389 INFO    ] time= 25/08/2026 15:42:56
[2026-08-25 15:42:56,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:42:56,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:42:56,659.659 INFO    ] No existing commands found in stream
[2026-08-25 15:43:01,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:43:01,682.682 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 15:43:04,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:43:04,702.702 INFO    ] Checking for system updates...
[2026-08-25 15:43:04,739.739 INFO    ] 200
[2026-08-25 15:43:04,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:04,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:43:04,802.802 INFO    ] No update needed
[2026-08-25 15:43:04,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 15:43:04,839.839 INFO    ] 200
[2026-08-25 15:43:04,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:04,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:43:04,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:43:04,933.933 INFO    ] No camera update needed
[2026-08-25 15:43:04,935.935 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:43:04,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:43:04,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:43:04,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:43:06,988.988 INFO    ] ================================================
[2026-08-25 15:43:07,003.003 INFO    ] Launching Daemon at Tue Aug 25 15:43:06 IST 2026
[2026-08-25 15:43:07,014.014 INFO    ] ================================================
[2026-08-25 15:43:07,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:43:07
[2026-08-25 15:43:08,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:43:08,571.571 INFO    ] Initializing speech engine...
[2026-08-25 15:43:08,582.582 INFO    ] 2026-08-25 15:43:08
[2026-08-25 15:43:08,892.892 INFO    ] 2026-08-25 15:43:08
[2026-08-25 15:43:08,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:43:09,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:43:09,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:43:09,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:43:09,420.420 INFO    ] time= 25/08/2026 15:43:09
[2026-08-25 15:43:09,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:43:09,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:43:09,560.560 INFO    ] No existing commands found in stream
[2026-08-25 15:43:14,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:43:14,580.580 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 15:43:17,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:43:17,629.629 INFO    ] Checking for system updates...
[2026-08-25 15:43:17,666.666 INFO    ] 200
[2026-08-25 15:43:17,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:17,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:43:17,724.724 INFO    ] No update needed
[2026-08-25 15:43:17,727.727 INFO    ] Checking for camera pi updates...
[2026-08-25 15:43:17,761.761 INFO    ] 200
[2026-08-25 15:43:17,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:17,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:43:17,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:43:17,972.972 INFO    ] No camera update needed
[2026-08-25 15:43:17,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:43:17,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:43:17,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:43:17,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:43:20,031.031 INFO    ] ================================================
[2026-08-25 15:43:20,047.047 INFO    ] Launching Daemon at Tue Aug 25 15:43:20 IST 2026
[2026-08-25 15:43:20,058.058 INFO    ] ================================================
[2026-08-25 15:43:20,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:43:20
[2026-08-25 15:43:21,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:43:21,673.673 INFO    ] Initializing speech engine...
[2026-08-25 15:43:21,681.681 INFO    ] 2026-08-25 15:43:21
[2026-08-25 15:43:21,949.949 INFO    ] 2026-08-25 15:43:21
[2026-08-25 15:43:22,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:43:22,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:43:22,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:43:22,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:43:22,458.458 INFO    ] time= 25/08/2026 15:43:22
[2026-08-25 15:43:22,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:43:22,526.526 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:43:22,672.672 INFO    ] No existing commands found in stream
[2026-08-25 15:43:27,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:43:27,692.692 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 15:43:30,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:43:30,132.132 INFO    ] Checking for system updates...
[2026-08-25 15:43:30,168.168 INFO    ] 200
[2026-08-25 15:43:30,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:30,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:43:30,227.227 INFO    ] No update needed
[2026-08-25 15:43:30,230.230 INFO    ] Checking for camera pi updates...
[2026-08-25 15:43:30,268.268 INFO    ] 200
[2026-08-25 15:43:30,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:30,316.316 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:43:30,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:43:30,371.371 INFO    ] No camera update needed
[2026-08-25 15:43:30,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:43:30,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:43:30,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:43:30,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:43:32,433.433 INFO    ] ================================================
[2026-08-25 15:43:32,451.451 INFO    ] Launching Daemon at Tue Aug 25 15:43:32 IST 2026
[2026-08-25 15:43:32,463.463 INFO    ] ================================================
[2026-08-25 15:43:33,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:43:33
[2026-08-25 15:43:33,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:43:33,921.921 INFO    ] Initializing speech engine...
[2026-08-25 15:43:33,935.935 INFO    ] 2026-08-25 15:43:33
[2026-08-25 15:43:34,218.218 INFO    ] 2026-08-25 15:43:34
[2026-08-25 15:43:34,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:43:34,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:43:34,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:43:34,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:43:34,593.593 INFO    ] time= 25/08/2026 15:43:34
[2026-08-25 15:43:34,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:43:34,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:43:34,718.718 INFO    ] No existing commands found in stream
[2026-08-25 15:43:39,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:43:39,731.731 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 15:43:42,007.007 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:43:42,010.010 INFO    ] Checking for system updates...
[2026-08-25 15:43:42,045.045 INFO    ] 200
[2026-08-25 15:43:42,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:42,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:43:42,104.104 INFO    ] No update needed
[2026-08-25 15:43:42,106.106 INFO    ] Checking for camera pi updates...
[2026-08-25 15:43:42,140.140 INFO    ] 200
[2026-08-25 15:43:42,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:42,183.183 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:43:42,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:43:42,230.230 INFO    ] No camera update needed
[2026-08-25 15:43:42,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:43:42,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:43:42,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:43:42,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:43:44,286.286 INFO    ] ================================================
[2026-08-25 15:43:44,301.301 INFO    ] Launching Daemon at Tue Aug 25 15:43:44 IST 2026
[2026-08-25 15:43:44,313.313 INFO    ] ================================================
[2026-08-25 15:43:44,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:43:44
[2026-08-25 15:43:45,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:43:45,718.718 INFO    ] Initializing speech engine...
[2026-08-25 15:43:45,727.727 INFO    ] 2026-08-25 15:43:45
[2026-08-25 15:43:46,016.016 INFO    ] 2026-08-25 15:43:45
[2026-08-25 15:43:46,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:43:46,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:43:46,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:43:46,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:43:46,391.391 INFO    ] time= 25/08/2026 15:43:46
[2026-08-25 15:43:46,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:43:46,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:43:46,515.515 INFO    ] No existing commands found in stream
[2026-08-25 15:43:51,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:43:51,530.530 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 15:43:55,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:43:55,738.738 INFO    ] Checking for system updates...
[2026-08-25 15:43:55,774.774 INFO    ] 200
[2026-08-25 15:43:55,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:55,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:43:55,835.835 INFO    ] No update needed
[2026-08-25 15:43:55,837.837 INFO    ] Checking for camera pi updates...
[2026-08-25 15:43:55,871.871 INFO    ] 200
[2026-08-25 15:43:55,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:43:55,913.913 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:43:55,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:43:55,962.962 INFO    ] No camera update needed
[2026-08-25 15:43:55,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:43:55,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:43:55,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:43:55,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:43:58,017.017 INFO    ] ================================================
[2026-08-25 15:43:58,032.032 INFO    ] Launching Daemon at Tue Aug 25 15:43:58 IST 2026
[2026-08-25 15:43:58,043.043 INFO    ] ================================================
[2026-08-25 15:43:58,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:43:58
[2026-08-25 15:43:59,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:43:59,513.513 INFO    ] Initializing speech engine...
[2026-08-25 15:43:59,523.523 INFO    ] 2026-08-25 15:43:59
[2026-08-25 15:43:59,783.783 INFO    ] 2026-08-25 15:43:59
[2026-08-25 15:43:59,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:44:00,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:44:00,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:44:00,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:44:00,249.249 INFO    ] time= 25/08/2026 15:44:00
[2026-08-25 15:44:00,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:44:00,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:44:00,469.469 INFO    ] No existing commands found in stream
[2026-08-25 15:44:05,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:44:05,496.496 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 15:44:07,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:44:07,983.983 INFO    ] Checking for system updates...
[2026-08-25 15:44:08,018.018 INFO    ] 200
[2026-08-25 15:44:08,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:08,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:44:08,076.076 INFO    ] No update needed
[2026-08-25 15:44:08,078.078 INFO    ] Checking for camera pi updates...
[2026-08-25 15:44:08,111.111 INFO    ] 200
[2026-08-25 15:44:08,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:08,154.154 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:44:08,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:44:08,202.202 INFO    ] No camera update needed
[2026-08-25 15:44:08,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:44:08,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:44:08,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:44:08,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:44:10,256.256 INFO    ] ================================================
[2026-08-25 15:44:10,271.271 INFO    ] Launching Daemon at Tue Aug 25 15:44:10 IST 2026
[2026-08-25 15:44:10,282.282 INFO    ] ================================================
[2026-08-25 15:44:10,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:44:10
[2026-08-25 15:44:11,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:44:11,742.742 INFO    ] Initializing speech engine...
[2026-08-25 15:44:11,751.751 INFO    ] 2026-08-25 15:44:11
[2026-08-25 15:44:12,000.000 INFO    ] 2026-08-25 15:44:11
[2026-08-25 15:44:12,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:44:12,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:44:12,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:44:12,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:44:12,499.499 INFO    ] time= 25/08/2026 15:44:12
[2026-08-25 15:44:12,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:44:12,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:44:12,699.699 INFO    ] No existing commands found in stream
[2026-08-25 15:44:17,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:44:17,735.735 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 15:44:21,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:44:21,652.652 INFO    ] Checking for system updates...
[2026-08-25 15:44:21,688.688 INFO    ] 200
[2026-08-25 15:44:21,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:21,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:44:21,751.751 INFO    ] No update needed
[2026-08-25 15:44:21,754.754 INFO    ] Checking for camera pi updates...
[2026-08-25 15:44:21,797.797 INFO    ] 200
[2026-08-25 15:44:21,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:21,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:44:21,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:44:21,901.901 INFO    ] No camera update needed
[2026-08-25 15:44:21,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:44:21,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:44:21,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:44:21,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:44:23,962.962 INFO    ] ================================================
[2026-08-25 15:44:23,978.978 INFO    ] Launching Daemon at Tue Aug 25 15:44:23 IST 2026
[2026-08-25 15:44:23,988.988 INFO    ] ================================================
[2026-08-25 15:44:24,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:44:24
[2026-08-25 15:44:25,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:44:25,409.409 INFO    ] Initializing speech engine...
[2026-08-25 15:44:25,416.416 INFO    ] 2026-08-25 15:44:25
[2026-08-25 15:44:25,673.673 INFO    ] 2026-08-25 15:44:25
[2026-08-25 15:44:25,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:44:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:44:25,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:44:26,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:44:26,155.155 INFO    ] time= 25/08/2026 15:44:26
[2026-08-25 15:44:26,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:44:26,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:44:26,370.370 INFO    ] No existing commands found in stream
[2026-08-25 15:44:31,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:44:31,397.397 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 15:44:35,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:44:35,177.177 INFO    ] Checking for system updates...
[2026-08-25 15:44:35,213.213 INFO    ] 200
[2026-08-25 15:44:35,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:35,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:44:35,269.269 INFO    ] No update needed
[2026-08-25 15:44:35,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 15:44:35,304.304 INFO    ] 200
[2026-08-25 15:44:35,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:35,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:44:35,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:44:35,399.399 INFO    ] No camera update needed
[2026-08-25 15:44:35,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:44:35,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:44:35,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:44:35,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:44:37,455.455 INFO    ] ================================================
[2026-08-25 15:44:37,470.470 INFO    ] Launching Daemon at Tue Aug 25 15:44:37 IST 2026
[2026-08-25 15:44:37,481.481 INFO    ] ================================================
[2026-08-25 15:44:38,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:44:38
[2026-08-25 15:44:38,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:44:38,903.903 INFO    ] Initializing speech engine...
[2026-08-25 15:44:38,917.917 INFO    ] 2026-08-25 15:44:38
[2026-08-25 15:44:39,165.165 INFO    ] 2026-08-25 15:44:39
[2026-08-25 15:44:39,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:44:39,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:44:39,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:44:39,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:44:39,538.538 INFO    ] time= 25/08/2026 15:44:39
[2026-08-25 15:44:39,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:44:39,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:44:39,679.679 INFO    ] No existing commands found in stream
[2026-08-25 15:44:44,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:44:44,707.707 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 15:44:45,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:44:45,565.565 INFO    ] Checking for system updates...
[2026-08-25 15:44:45,600.600 INFO    ] 200
[2026-08-25 15:44:45,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:45,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:44:45,658.658 INFO    ] No update needed
[2026-08-25 15:44:45,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 15:44:45,693.693 INFO    ] 200
[2026-08-25 15:44:45,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:45,738.738 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:44:45,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:44:45,789.789 INFO    ] No camera update needed
[2026-08-25 15:44:45,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:44:45,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:44:45,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:44:45,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:44:47,844.844 INFO    ] ================================================
[2026-08-25 15:44:47,859.859 INFO    ] Launching Daemon at Tue Aug 25 15:44:47 IST 2026
[2026-08-25 15:44:47,870.870 INFO    ] ================================================
[2026-08-25 15:44:48,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:44:48
[2026-08-25 15:44:49,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:44:49,286.286 INFO    ] Initializing speech engine...
[2026-08-25 15:44:49,295.295 INFO    ] 2026-08-25 15:44:49
[2026-08-25 15:44:49,543.543 INFO    ] 2026-08-25 15:44:49
[2026-08-25 15:44:49,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:44:49,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:44:49,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:44:49,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:44:50,011.011 INFO    ] time= 25/08/2026 15:44:49
[2026-08-25 15:44:50,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:44:50,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:44:50,225.225 INFO    ] No existing commands found in stream
[2026-08-25 15:44:55,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:44:55,258.258 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 15:44:55,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:44:55,868.868 INFO    ] Checking for system updates...
[2026-08-25 15:44:55,906.906 INFO    ] 200
[2026-08-25 15:44:55,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:55,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:44:55,966.966 INFO    ] No update needed
[2026-08-25 15:44:55,968.968 INFO    ] Checking for camera pi updates...
[2026-08-25 15:44:56,006.006 INFO    ] 200
[2026-08-25 15:44:56,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:44:56,054.054 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:44:56,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:44:56,106.106 INFO    ] No camera update needed
[2026-08-25 15:44:56,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:44:56,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:44:56,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:44:56,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:44:58,164.164 INFO    ] ================================================
[2026-08-25 15:44:58,179.179 INFO    ] Launching Daemon at Tue Aug 25 15:44:58 IST 2026
[2026-08-25 15:44:58,190.190 INFO    ] ================================================
[2026-08-25 15:44:58,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:44:58
[2026-08-25 15:44:59,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:44:59,647.647 INFO    ] Initializing speech engine...
[2026-08-25 15:44:59,653.653 INFO    ] 2026-08-25 15:44:59
[2026-08-25 15:44:59,904.904 INFO    ] 2026-08-25 15:44:59
[2026-08-25 15:44:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:45:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:45:00,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:45:00,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:45:00,366.366 INFO    ] time= 25/08/2026 15:45:00
[2026-08-25 15:45:00,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:45:00,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:45:00,583.583 INFO    ] No existing commands found in stream
[2026-08-25 15:45:05,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:45:05,613.613 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 15:45:08,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:45:08,751.751 INFO    ] Checking for system updates...
[2026-08-25 15:45:08,789.789 INFO    ] 200
[2026-08-25 15:45:08,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:08,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:45:08,852.852 INFO    ] No update needed
[2026-08-25 15:45:08,854.854 INFO    ] Checking for camera pi updates...
[2026-08-25 15:45:08,890.890 INFO    ] 200
[2026-08-25 15:45:08,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:08,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:45:08,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:45:08,999.999 INFO    ] No camera update needed
[2026-08-25 15:45:09,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:45:09,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:45:09,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:45:09,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:45:11,056.056 INFO    ] ================================================
[2026-08-25 15:45:11,071.071 INFO    ] Launching Daemon at Tue Aug 25 15:45:11 IST 2026
[2026-08-25 15:45:11,082.082 INFO    ] ================================================
[2026-08-25 15:45:11,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:45:11
[2026-08-25 15:45:12,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:45:12,498.498 INFO    ] Initializing speech engine...
[2026-08-25 15:45:12,520.520 INFO    ] 2026-08-25 15:45:12
[2026-08-25 15:45:12,781.781 INFO    ] 2026-08-25 15:45:12
[2026-08-25 15:45:12,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:45:13,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:45:13,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:45:13,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:45:13,188.188 INFO    ] time= 25/08/2026 15:45:13
[2026-08-25 15:45:13,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:45:13,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:45:13,270.270 INFO    ] No existing commands found in stream
[2026-08-25 15:45:18,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:45:18,285.285 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 15:45:22,033.033 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:45:22,035.035 INFO    ] Checking for system updates...
[2026-08-25 15:45:22,071.071 INFO    ] 200
[2026-08-25 15:45:22,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:22,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:45:22,133.133 INFO    ] No update needed
[2026-08-25 15:45:22,135.135 INFO    ] Checking for camera pi updates...
[2026-08-25 15:45:22,171.171 INFO    ] 200
[2026-08-25 15:45:22,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:22,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:45:22,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:45:22,357.357 INFO    ] No camera update needed
[2026-08-25 15:45:22,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:45:22,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:45:22,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:45:22,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:45:24,411.411 INFO    ] ================================================
[2026-08-25 15:45:24,427.427 INFO    ] Launching Daemon at Tue Aug 25 15:45:24 IST 2026
[2026-08-25 15:45:24,437.437 INFO    ] ================================================
[2026-08-25 15:45:25,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:45:25
[2026-08-25 15:45:25,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:45:25,905.905 INFO    ] Initializing speech engine...
[2026-08-25 15:45:25,915.915 INFO    ] 2026-08-25 15:45:25
[2026-08-25 15:45:26,175.175 INFO    ] 2026-08-25 15:45:26
[2026-08-25 15:45:26,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:45:26,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:45:26,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:45:26,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:45:26,548.548 INFO    ] time= 25/08/2026 15:45:26
[2026-08-25 15:45:26,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:45:26,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:45:26,673.673 INFO    ] No existing commands found in stream
[2026-08-25 15:45:31,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:45:31,706.706 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 15:45:34,492.492 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:45:34,495.495 INFO    ] Checking for system updates...
[2026-08-25 15:45:34,531.531 INFO    ] 200
[2026-08-25 15:45:34,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:34,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:45:34,587.587 INFO    ] No update needed
[2026-08-25 15:45:34,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 15:45:34,626.626 INFO    ] 200
[2026-08-25 15:45:34,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:34,678.678 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:45:34,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:45:34,764.764 INFO    ] No camera update needed
[2026-08-25 15:45:34,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:45:34,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:45:34,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:45:34,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:45:36,818.818 INFO    ] ================================================
[2026-08-25 15:45:36,833.833 INFO    ] Launching Daemon at Tue Aug 25 15:45:36 IST 2026
[2026-08-25 15:45:36,843.843 INFO    ] ================================================
[2026-08-25 15:45:37,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:45:37
[2026-08-25 15:45:38,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:45:38,396.396 INFO    ] Initializing speech engine...
[2026-08-25 15:45:38,405.405 INFO    ] 2026-08-25 15:45:38
[2026-08-25 15:45:38,674.674 INFO    ] 2026-08-25 15:45:38
[2026-08-25 15:45:38,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:45:38,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:45:38,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:45:39,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:45:39,223.223 INFO    ] time= 25/08/2026 15:45:39
[2026-08-25 15:45:39,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:45:39,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:45:39,375.375 INFO    ] No existing commands found in stream
[2026-08-25 15:45:44,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:45:44,394.394 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 15:45:46,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:45:46,014.014 INFO    ] Checking for system updates...
[2026-08-25 15:45:46,054.054 INFO    ] 200
[2026-08-25 15:45:46,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:46,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:45:46,119.119 INFO    ] No update needed
[2026-08-25 15:45:46,122.122 INFO    ] Checking for camera pi updates...
[2026-08-25 15:45:46,160.160 INFO    ] 200
[2026-08-25 15:45:46,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:46,211.211 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:45:46,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:45:46,264.264 INFO    ] No camera update needed
[2026-08-25 15:45:46,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:45:46,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:45:46,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:45:46,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:45:48,319.319 INFO    ] ================================================
[2026-08-25 15:45:48,335.335 INFO    ] Launching Daemon at Tue Aug 25 15:45:48 IST 2026
[2026-08-25 15:45:48,346.346 INFO    ] ================================================
[2026-08-25 15:45:48,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:45:48
[2026-08-25 15:45:49,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:45:49,929.929 INFO    ] Initializing speech engine...
[2026-08-25 15:45:49,936.936 INFO    ] 2026-08-25 15:45:49
[2026-08-25 15:45:50,197.197 INFO    ] 2026-08-25 15:45:50
[2026-08-25 15:45:50,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:45:50,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:45:50,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:45:50,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:45:50,668.668 INFO    ] time= 25/08/2026 15:45:50
[2026-08-25 15:45:50,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:45:50,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:45:50,856.856 INFO    ] No existing commands found in stream
[2026-08-25 15:45:55,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:45:55,880.880 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 15:45:58,749.749 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:45:58,752.752 INFO    ] Checking for system updates...
[2026-08-25 15:45:58,793.793 INFO    ] 200
[2026-08-25 15:45:58,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:58,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:45:58,858.858 INFO    ] No update needed
[2026-08-25 15:45:58,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 15:45:58,896.896 INFO    ] 200
[2026-08-25 15:45:58,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:45:58,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:45:58,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:45:58,988.988 INFO    ] No camera update needed
[2026-08-25 15:45:58,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:45:58,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:45:58,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:45:59,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:46:01,042.042 INFO    ] ================================================
[2026-08-25 15:46:01,057.057 INFO    ] Launching Daemon at Tue Aug 25 15:46:01 IST 2026
[2026-08-25 15:46:01,068.068 INFO    ] ================================================
[2026-08-25 15:46:01,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:46:01
[2026-08-25 15:46:02,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:46:02,752.752 INFO    ] Initializing speech engine...
[2026-08-25 15:46:02,759.759 INFO    ] 2026-08-25 15:46:02
[2026-08-25 15:46:03,043.043 INFO    ] 2026-08-25 15:46:03
[2026-08-25 15:46:03,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:46:03,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:46:03,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:46:03,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:46:03,428.428 INFO    ] time= 25/08/2026 15:46:03
[2026-08-25 15:46:03,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:46:03,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:46:03,554.554 INFO    ] No existing commands found in stream
[2026-08-25 15:46:08,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:46:08,587.587 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 15:46:11,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:46:11,235.235 INFO    ] Checking for system updates...
[2026-08-25 15:46:11,273.273 INFO    ] 200
[2026-08-25 15:46:11,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:11,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:46:11,338.338 INFO    ] No update needed
[2026-08-25 15:46:11,341.341 INFO    ] Checking for camera pi updates...
[2026-08-25 15:46:11,380.380 INFO    ] 200
[2026-08-25 15:46:11,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:11,432.432 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:46:11,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:46:11,482.482 INFO    ] No camera update needed
[2026-08-25 15:46:11,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:46:11,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:46:11,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:46:11,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:46:13,544.544 INFO    ] ================================================
[2026-08-25 15:46:13,562.562 INFO    ] Launching Daemon at Tue Aug 25 15:46:13 IST 2026
[2026-08-25 15:46:13,574.574 INFO    ] ================================================
[2026-08-25 15:46:14,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:46:14
[2026-08-25 15:46:14,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:46:15,159.159 INFO    ] Initializing speech engine...
[2026-08-25 15:46:15,165.165 INFO    ] 2026-08-25 15:46:15
[2026-08-25 15:46:15,413.413 INFO    ] 2026-08-25 15:46:15
[2026-08-25 15:46:15,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:46:15,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:46:15,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:46:15,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:46:15,907.907 INFO    ] time= 25/08/2026 15:46:15
[2026-08-25 15:46:15,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:46:16,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:46:16,126.126 INFO    ] No existing commands found in stream
[2026-08-25 15:46:21,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:46:21,151.151 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 15:46:25,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:46:25,625.625 INFO    ] Checking for system updates...
[2026-08-25 15:46:25,665.665 INFO    ] 200
[2026-08-25 15:46:25,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:25,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:46:25,731.731 INFO    ] No update needed
[2026-08-25 15:46:25,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 15:46:25,767.767 INFO    ] 200
[2026-08-25 15:46:25,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:25,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:46:25,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:46:25,858.858 INFO    ] No camera update needed
[2026-08-25 15:46:25,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:46:25,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:46:25,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:46:25,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:46:27,915.915 INFO    ] ================================================
[2026-08-25 15:46:27,930.930 INFO    ] Launching Daemon at Tue Aug 25 15:46:27 IST 2026
[2026-08-25 15:46:27,941.941 INFO    ] ================================================
[2026-08-25 15:46:28,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:46:28
[2026-08-25 15:46:29,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:46:29,364.364 INFO    ] Initializing speech engine...
[2026-08-25 15:46:29,372.372 INFO    ] 2026-08-25 15:46:29
[2026-08-25 15:46:29,623.623 INFO    ] 2026-08-25 15:46:29
[2026-08-25 15:46:29,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:46:29,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:46:29,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:46:30,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:46:30,105.105 INFO    ] time= 25/08/2026 15:46:30
[2026-08-25 15:46:30,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:46:30,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:46:30,325.325 INFO    ] No existing commands found in stream
[2026-08-25 15:46:35,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:46:35,358.358 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 15:46:37,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:46:37,025.025 INFO    ] Checking for system updates...
[2026-08-25 15:46:37,060.060 INFO    ] 200
[2026-08-25 15:46:37,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:37,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:46:37,124.124 INFO    ] No update needed
[2026-08-25 15:46:37,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 15:46:37,160.160 INFO    ] 200
[2026-08-25 15:46:37,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:37,203.203 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:46:37,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:46:37,253.253 INFO    ] No camera update needed
[2026-08-25 15:46:37,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:46:37,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:46:37,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:46:37,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:46:39,307.307 INFO    ] ================================================
[2026-08-25 15:46:39,322.322 INFO    ] Launching Daemon at Tue Aug 25 15:46:39 IST 2026
[2026-08-25 15:46:39,332.332 INFO    ] ================================================
[2026-08-25 15:46:39,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:46:39
[2026-08-25 15:46:40,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:46:40,805.805 INFO    ] Initializing speech engine...
[2026-08-25 15:46:40,812.812 INFO    ] 2026-08-25 15:46:40
[2026-08-25 15:46:41,071.071 INFO    ] 2026-08-25 15:46:41
[2026-08-25 15:46:41,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:46:41,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:46:41,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:46:41,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:46:41,550.550 INFO    ] time= 25/08/2026 15:46:41
[2026-08-25 15:46:41,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:46:41,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:46:41,749.749 INFO    ] No existing commands found in stream
[2026-08-25 15:46:46,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:46:46,777.777 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 15:46:49,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:46:49,656.656 INFO    ] Checking for system updates...
[2026-08-25 15:46:49,691.691 INFO    ] 200
[2026-08-25 15:46:49,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:49,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:46:49,749.749 INFO    ] No update needed
[2026-08-25 15:46:49,751.751 INFO    ] Checking for camera pi updates...
[2026-08-25 15:46:49,790.790 INFO    ] 200
[2026-08-25 15:46:49,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:46:49,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:46:49,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:46:49,895.895 INFO    ] No camera update needed
[2026-08-25 15:46:49,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:46:49,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:46:49,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:46:49,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:46:51,951.951 INFO    ] ================================================
[2026-08-25 15:46:51,966.966 INFO    ] Launching Daemon at Tue Aug 25 15:46:51 IST 2026
[2026-08-25 15:46:51,977.977 INFO    ] ================================================
[2026-08-25 15:46:52,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:46:52
[2026-08-25 15:46:53,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:46:53,386.386 INFO    ] Initializing speech engine...
[2026-08-25 15:46:53,402.402 INFO    ] 2026-08-25 15:46:53
[2026-08-25 15:46:53,684.684 INFO    ] 2026-08-25 15:46:53
[2026-08-25 15:46:53,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:46:53,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:46:53,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:46:54,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:46:54,102.102 INFO    ] time= 25/08/2026 15:46:54
[2026-08-25 15:46:54,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:46:54,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:46:54,277.277 INFO    ] No existing commands found in stream
[2026-08-25 15:46:59,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:46:59,305.305 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 15:47:00,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:47:00,185.185 INFO    ] Checking for system updates...
[2026-08-25 15:47:00,226.226 INFO    ] 200
[2026-08-25 15:47:00,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:00,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:47:00,289.289 INFO    ] No update needed
[2026-08-25 15:47:00,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 15:47:00,329.329 INFO    ] 200
[2026-08-25 15:47:00,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:00,376.376 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:47:00,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:47:00,428.428 INFO    ] No camera update needed
[2026-08-25 15:47:00,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:47:00,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:47:00,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:47:00,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:47:02,520.520 INFO    ] ================================================
[2026-08-25 15:47:02,542.542 INFO    ] Launching Daemon at Tue Aug 25 15:47:02 IST 2026
[2026-08-25 15:47:02,560.560 INFO    ] ================================================
[2026-08-25 15:47:03,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:47:03
[2026-08-25 15:47:03,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:47:04,138.138 INFO    ] Initializing speech engine...
[2026-08-25 15:47:04,154.154 INFO    ] 2026-08-25 15:47:04
[2026-08-25 15:47:04,432.432 INFO    ] 2026-08-25 15:47:04
[2026-08-25 15:47:04,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:47:04,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:47:04,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:47:04,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:47:04,824.824 INFO    ] time= 25/08/2026 15:47:04
[2026-08-25 15:47:04,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:47:04,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:47:05,010.010 INFO    ] No existing commands found in stream
[2026-08-25 15:47:10,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:47:10,050.050 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 15:47:13,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:47:13,215.215 INFO    ] Checking for system updates...
[2026-08-25 15:47:13,255.255 INFO    ] 200
[2026-08-25 15:47:13,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:13,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:47:13,324.324 INFO    ] No update needed
[2026-08-25 15:47:13,327.327 INFO    ] Checking for camera pi updates...
[2026-08-25 15:47:13,366.366 INFO    ] 200
[2026-08-25 15:47:13,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:13,416.416 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:47:13,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:47:13,484.484 INFO    ] No camera update needed
[2026-08-25 15:47:13,487.487 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:47:13,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:47:13,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:47:13,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:47:15,540.540 INFO    ] ================================================
[2026-08-25 15:47:15,555.555 INFO    ] Launching Daemon at Tue Aug 25 15:47:15 IST 2026
[2026-08-25 15:47:15,565.565 INFO    ] ================================================
[2026-08-25 15:47:16,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:47:16
[2026-08-25 15:47:16,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:47:17,047.047 INFO    ] Initializing speech engine...
[2026-08-25 15:47:17,057.057 INFO    ] 2026-08-25 15:47:17
[2026-08-25 15:47:17,310.310 INFO    ] 2026-08-25 15:47:17
[2026-08-25 15:47:17,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:47:17,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:47:17,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:47:17,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:47:17,794.794 INFO    ] time= 25/08/2026 15:47:17
[2026-08-25 15:47:17,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:47:17,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:47:17,986.986 INFO    ] No existing commands found in stream
[2026-08-25 15:47:23,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:47:23,019.019 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 15:47:23,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:47:23,896.896 INFO    ] Checking for system updates...
[2026-08-25 15:47:23,931.931 INFO    ] 200
[2026-08-25 15:47:23,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:23,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:47:23,989.989 INFO    ] No update needed
[2026-08-25 15:47:23,991.991 INFO    ] Checking for camera pi updates...
[2026-08-25 15:47:24,029.029 INFO    ] 200
[2026-08-25 15:47:24,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:24,072.072 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:47:24,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:47:24,217.217 INFO    ] No camera update needed
[2026-08-25 15:47:24,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:47:24,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:47:24,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:47:24,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:47:26,274.274 INFO    ] ================================================
[2026-08-25 15:47:26,289.289 INFO    ] Launching Daemon at Tue Aug 25 15:47:26 IST 2026
[2026-08-25 15:47:26,299.299 INFO    ] ================================================
[2026-08-25 15:47:26,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:47:26
[2026-08-25 15:47:27,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:47:27,717.717 INFO    ] Initializing speech engine...
[2026-08-25 15:47:27,726.726 INFO    ] 2026-08-25 15:47:27
[2026-08-25 15:47:27,991.991 INFO    ] 2026-08-25 15:47:27
[2026-08-25 15:47:28,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:47:28,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:47:28,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:47:28,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:47:28,479.479 INFO    ] time= 25/08/2026 15:47:28
[2026-08-25 15:47:28,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:47:28,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:47:28,682.682 INFO    ] No existing commands found in stream
[2026-08-25 15:47:33,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:47:33,699.699 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 15:47:38,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:47:38,011.011 INFO    ] Checking for system updates...
[2026-08-25 15:47:38,051.051 INFO    ] 200
[2026-08-25 15:47:38,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:38,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:47:38,113.113 INFO    ] No update needed
[2026-08-25 15:47:38,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 15:47:38,151.151 INFO    ] 200
[2026-08-25 15:47:38,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:38,194.194 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:47:38,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:47:38,247.247 INFO    ] No camera update needed
[2026-08-25 15:47:38,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:47:38,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:47:38,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:47:38,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:47:40,303.303 INFO    ] ================================================
[2026-08-25 15:47:40,318.318 INFO    ] Launching Daemon at Tue Aug 25 15:47:40 IST 2026
[2026-08-25 15:47:40,328.328 INFO    ] ================================================
[2026-08-25 15:47:40,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:47:40
[2026-08-25 15:47:41,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:47:41,745.745 INFO    ] Initializing speech engine...
[2026-08-25 15:47:41,755.755 INFO    ] 2026-08-25 15:47:41
[2026-08-25 15:47:42,001.001 INFO    ] 2026-08-25 15:47:41
[2026-08-25 15:47:42,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:47:42,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:47:42,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:47:42,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:47:42,497.497 INFO    ] time= 25/08/2026 15:47:42
[2026-08-25 15:47:42,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:47:42,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:47:42,696.696 INFO    ] No existing commands found in stream
[2026-08-25 15:47:47,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:47:47,723.723 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 15:47:50,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:47:50,239.239 INFO    ] Checking for system updates...
[2026-08-25 15:47:50,287.287 INFO    ] 200
[2026-08-25 15:47:50,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:50,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:47:50,344.344 INFO    ] No update needed
[2026-08-25 15:47:50,346.346 INFO    ] Checking for camera pi updates...
[2026-08-25 15:47:50,380.380 INFO    ] 200
[2026-08-25 15:47:50,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:47:50,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:47:50,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:47:50,474.474 INFO    ] No camera update needed
[2026-08-25 15:47:50,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:47:50,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:47:50,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:47:50,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:47:52,530.530 INFO    ] ================================================
[2026-08-25 15:47:52,545.545 INFO    ] Launching Daemon at Tue Aug 25 15:47:52 IST 2026
[2026-08-25 15:47:52,555.555 INFO    ] ================================================
[2026-08-25 15:47:53,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:47:53
[2026-08-25 15:47:53,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:47:53,983.983 INFO    ] Initializing speech engine...
[2026-08-25 15:47:53,990.990 INFO    ] 2026-08-25 15:47:53
[2026-08-25 15:47:54,240.240 INFO    ] 2026-08-25 15:47:54
[2026-08-25 15:47:54,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:47:54,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:47:54,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:47:54,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:47:54,614.614 INFO    ] time= 25/08/2026 15:47:54
[2026-08-25 15:47:54,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:47:54,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:47:54,809.809 INFO    ] No existing commands found in stream
[2026-08-25 15:47:59,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:47:59,828.828 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 15:48:01,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:48:01,817.817 INFO    ] Checking for system updates...
[2026-08-25 15:48:01,904.904 INFO    ] 200
[2026-08-25 15:48:01,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:01,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:48:02,000.000 INFO    ] No update needed
[2026-08-25 15:48:02,003.003 INFO    ] Checking for camera pi updates...
[2026-08-25 15:48:02,046.046 INFO    ] 200
[2026-08-25 15:48:02,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:02,102.102 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:48:02,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:48:02,166.166 INFO    ] No camera update needed
[2026-08-25 15:48:02,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:48:02,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:48:02,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:48:02,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:48:04,227.227 INFO    ] ================================================
[2026-08-25 15:48:04,243.243 INFO    ] Launching Daemon at Tue Aug 25 15:48:04 IST 2026
[2026-08-25 15:48:04,253.253 INFO    ] ================================================
[2026-08-25 15:48:04,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:48:04
[2026-08-25 15:48:05,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:48:05,701.701 INFO    ] Initializing speech engine...
[2026-08-25 15:48:05,707.707 INFO    ] 2026-08-25 15:48:05
[2026-08-25 15:48:05,971.971 INFO    ] 2026-08-25 15:48:05
[2026-08-25 15:48:06,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:48:06,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:48:06,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:48:06,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:48:06,395.395 INFO    ] time= 25/08/2026 15:48:06
[2026-08-25 15:48:06,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:48:06,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:48:06,577.577 INFO    ] No existing commands found in stream
[2026-08-25 15:48:11,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:48:11,592.592 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 15:48:12,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:48:12,282.282 INFO    ] Checking for system updates...
[2026-08-25 15:48:12,319.319 INFO    ] 200
[2026-08-25 15:48:12,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:12,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:48:12,384.384 INFO    ] No update needed
[2026-08-25 15:48:12,387.387 INFO    ] Checking for camera pi updates...
[2026-08-25 15:48:12,421.421 INFO    ] 200
[2026-08-25 15:48:12,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:12,465.465 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:48:12,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:48:12,530.530 INFO    ] No camera update needed
[2026-08-25 15:48:12,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:48:12,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:48:12,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:48:12,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:48:14,588.588 INFO    ] ================================================
[2026-08-25 15:48:14,603.603 INFO    ] Launching Daemon at Tue Aug 25 15:48:14 IST 2026
[2026-08-25 15:48:14,613.613 INFO    ] ================================================
[2026-08-25 15:48:15,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:48:15
[2026-08-25 15:48:15,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:48:16,106.106 INFO    ] Initializing speech engine...
[2026-08-25 15:48:16,128.128 INFO    ] 2026-08-25 15:48:16
[2026-08-25 15:48:16,410.410 INFO    ] 2026-08-25 15:48:16
[2026-08-25 15:48:16,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:48:16,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:48:16,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:48:16,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:48:16,899.899 INFO    ] time= 25/08/2026 15:48:16
[2026-08-25 15:48:16,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:48:16,968.968 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:48:17,105.105 INFO    ] No existing commands found in stream
[2026-08-25 15:48:22,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:48:22,131.131 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 15:48:23,052.052 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:48:23,055.055 INFO    ] Checking for system updates...
[2026-08-25 15:48:23,098.098 INFO    ] 200
[2026-08-25 15:48:23,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:23,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:48:23,157.157 INFO    ] No update needed
[2026-08-25 15:48:23,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 15:48:23,193.193 INFO    ] 200
[2026-08-25 15:48:23,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:23,236.236 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:48:23,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:48:23,293.293 INFO    ] No camera update needed
[2026-08-25 15:48:23,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:48:23,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:48:23,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:48:23,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:48:25,348.348 INFO    ] ================================================
[2026-08-25 15:48:25,363.363 INFO    ] Launching Daemon at Tue Aug 25 15:48:25 IST 2026
[2026-08-25 15:48:25,374.374 INFO    ] ================================================
[2026-08-25 15:48:25,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:48:25
[2026-08-25 15:48:26,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:48:26,950.950 INFO    ] Initializing speech engine...
[2026-08-25 15:48:26,958.958 INFO    ] 2026-08-25 15:48:26
[2026-08-25 15:48:27,278.278 INFO    ] 2026-08-25 15:48:27
[2026-08-25 15:48:27,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:48:27,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:48:27,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:48:27,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:48:27,784.784 INFO    ] time= 25/08/2026 15:48:27
[2026-08-25 15:48:27,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:48:27,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:48:27,945.945 INFO    ] No existing commands found in stream
[2026-08-25 15:48:32,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:48:32,979.979 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 15:48:37,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:48:37,008.008 INFO    ] Checking for system updates...
[2026-08-25 15:48:37,046.046 INFO    ] 200
[2026-08-25 15:48:37,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:37,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:48:37,104.104 INFO    ] No update needed
[2026-08-25 15:48:37,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 15:48:37,142.142 INFO    ] 200
[2026-08-25 15:48:37,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:37,186.186 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:48:37,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:48:37,235.235 INFO    ] No camera update needed
[2026-08-25 15:48:37,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:48:37,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:48:37,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:48:37,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:48:39,292.292 INFO    ] ================================================
[2026-08-25 15:48:39,306.306 INFO    ] Launching Daemon at Tue Aug 25 15:48:39 IST 2026
[2026-08-25 15:48:39,317.317 INFO    ] ================================================
[2026-08-25 15:48:39,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:48:39
[2026-08-25 15:48:40,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:48:40,759.759 INFO    ] Initializing speech engine...
[2026-08-25 15:48:40,767.767 INFO    ] 2026-08-25 15:48:40
[2026-08-25 15:48:41,054.054 INFO    ] 2026-08-25 15:48:41
[2026-08-25 15:48:41,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:48:41,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:48:41,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:48:41,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:48:41,512.512 INFO    ] time= 25/08/2026 15:48:41
[2026-08-25 15:48:41,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:48:41,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:48:41,728.728 INFO    ] No existing commands found in stream
[2026-08-25 15:48:46,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:48:46,761.761 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 15:48:48,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:48:48,772.772 INFO    ] Checking for system updates...
[2026-08-25 15:48:48,808.808 INFO    ] 200
[2026-08-25 15:48:48,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:48,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:48:48,864.864 INFO    ] No update needed
[2026-08-25 15:48:48,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 15:48:48,899.899 INFO    ] 200
[2026-08-25 15:48:48,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:48:48,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:48:48,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:48:48,992.992 INFO    ] No camera update needed
[2026-08-25 15:48:48,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:48:48,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:48:49,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:48:49,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:48:51,046.046 INFO    ] ================================================
[2026-08-25 15:48:51,062.062 INFO    ] Launching Daemon at Tue Aug 25 15:48:51 IST 2026
[2026-08-25 15:48:51,073.073 INFO    ] ================================================
[2026-08-25 15:48:51,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:48:51
[2026-08-25 15:48:52,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:48:52,493.493 INFO    ] Initializing speech engine...
[2026-08-25 15:48:52,498.498 INFO    ] 2026-08-25 15:48:52
[2026-08-25 15:48:52,757.757 INFO    ] 2026-08-25 15:48:52
[2026-08-25 15:48:52,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:48:53,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:48:53,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:48:53,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:48:53,243.243 INFO    ] time= 25/08/2026 15:48:53
[2026-08-25 15:48:53,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:48:53,307.307 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:48:53,437.437 INFO    ] No existing commands found in stream
[2026-08-25 15:48:58,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:48:58,462.462 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 15:49:01,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:49:01,292.292 INFO    ] Checking for system updates...
[2026-08-25 15:49:01,327.327 INFO    ] 200
[2026-08-25 15:49:01,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:01,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:01,389.389 INFO    ] No update needed
[2026-08-25 15:49:01,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 15:49:01,425.425 INFO    ] 200
[2026-08-25 15:49:01,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:01,467.467 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:49:01,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:01,541.541 INFO    ] No camera update needed
[2026-08-25 15:49:01,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:49:01,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:49:01,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:49:01,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:49:03,601.601 INFO    ] ================================================
[2026-08-25 15:49:03,616.616 INFO    ] Launching Daemon at Tue Aug 25 15:49:03 IST 2026
[2026-08-25 15:49:03,627.627 INFO    ] ================================================
[2026-08-25 15:49:04,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:49:04
[2026-08-25 15:49:04,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:49:05,031.031 INFO    ] Initializing speech engine...
[2026-08-25 15:49:05,045.045 INFO    ] 2026-08-25 15:49:05
[2026-08-25 15:49:05,325.325 INFO    ] 2026-08-25 15:49:05
[2026-08-25 15:49:05,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:49:05,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:49:05,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:49:05,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:49:05,813.813 INFO    ] time= 25/08/2026 15:49:05
[2026-08-25 15:49:05,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:49:05,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:49:06,017.017 INFO    ] No existing commands found in stream
[2026-08-25 15:49:11,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:49:11,032.032 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 15:49:12,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:49:12,939.939 INFO    ] Checking for system updates...
[2026-08-25 15:49:12,974.974 INFO    ] 200
[2026-08-25 15:49:12,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:13,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:49:13,036.036 INFO    ] No update needed
[2026-08-25 15:49:13,038.038 INFO    ] Checking for camera pi updates...
[2026-08-25 15:49:13,072.072 INFO    ] 200
[2026-08-25 15:49:13,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:13,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:49:13,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:49:13,170.170 INFO    ] No camera update needed
[2026-08-25 15:49:13,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:49:13,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:49:13,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:49:13,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:49:15,224.224 INFO    ] ================================================
[2026-08-25 15:49:15,240.240 INFO    ] Launching Daemon at Tue Aug 25 15:49:15 IST 2026
[2026-08-25 15:49:15,251.251 INFO    ] ================================================
[2026-08-25 15:49:15,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:49:15
[2026-08-25 15:49:16,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:49:16,706.706 INFO    ] Initializing speech engine...
[2026-08-25 15:49:16,715.715 INFO    ] 2026-08-25 15:49:16
[2026-08-25 15:49:16,970.970 INFO    ] 2026-08-25 15:49:16
[2026-08-25 15:49:17,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:49:17,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:49:17,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:49:17,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:49:17,436.436 INFO    ] time= 25/08/2026 15:49:17
[2026-08-25 15:49:17,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:49:17,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:49:17,655.655 INFO    ] No existing commands found in stream
[2026-08-25 15:49:22,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:49:22,686.686 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 15:49:23,414.414 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:49:23,417.417 INFO    ] Checking for system updates...
[2026-08-25 15:49:23,452.452 INFO    ] 200
[2026-08-25 15:49:23,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:23,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:23,516.516 INFO    ] No update needed
[2026-08-25 15:49:23,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 15:49:23,551.551 INFO    ] 200
[2026-08-25 15:49:23,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:23,598.598 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:49:23,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:23,658.658 INFO    ] No camera update needed
[2026-08-25 15:49:23,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:49:23,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:49:23,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:49:23,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:49:25,714.714 INFO    ] ================================================
[2026-08-25 15:49:25,729.729 INFO    ] Launching Daemon at Tue Aug 25 15:49:25 IST 2026
[2026-08-25 15:49:25,741.741 INFO    ] ================================================
[2026-08-25 15:49:26,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:49:26
[2026-08-25 15:49:26,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:49:27,149.149 INFO    ] Initializing speech engine...
[2026-08-25 15:49:27,165.165 INFO    ] 2026-08-25 15:49:27
[2026-08-25 15:49:27,450.450 INFO    ] 2026-08-25 15:49:27
[2026-08-25 15:49:27,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:49:27,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:49:27,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:49:27,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:49:27,826.826 INFO    ] time= 25/08/2026 15:49:27
[2026-08-25 15:49:27,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:49:27,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:49:27,953.953 INFO    ] No existing commands found in stream
[2026-08-25 15:49:32,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:49:32,971.971 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 15:49:35,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:49:35,726.726 INFO    ] Checking for system updates...
[2026-08-25 15:49:35,761.761 INFO    ] 200
[2026-08-25 15:49:35,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:35,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:35,820.820 INFO    ] No update needed
[2026-08-25 15:49:35,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 15:49:35,860.860 INFO    ] 200
[2026-08-25 15:49:35,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:35,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:49:35,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:35,950.950 INFO    ] No camera update needed
[2026-08-25 15:49:35,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:49:35,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:49:35,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:49:35,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:49:38,006.006 INFO    ] ================================================
[2026-08-25 15:49:38,021.021 INFO    ] Launching Daemon at Tue Aug 25 15:49:38 IST 2026
[2026-08-25 15:49:38,033.033 INFO    ] ================================================
[2026-08-25 15:49:38,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:49:38
[2026-08-25 15:49:39,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:49:39,665.665 INFO    ] Initializing speech engine...
[2026-08-25 15:49:39,675.675 INFO    ] 2026-08-25 15:49:39
[2026-08-25 15:49:39,949.949 INFO    ] 2026-08-25 15:49:39
[2026-08-25 15:49:40,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:49:40,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:49:40,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:49:40,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:49:40,465.465 INFO    ] time= 25/08/2026 15:49:40
[2026-08-25 15:49:40,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:49:40,523.523 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:49:40,685.685 INFO    ] No existing commands found in stream
[2026-08-25 15:49:45,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:49:45,703.703 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 15:49:47,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:49:47,304.304 INFO    ] Checking for system updates...
[2026-08-25 15:49:47,340.340 INFO    ] 200
[2026-08-25 15:49:47,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:47,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:47,400.400 INFO    ] No update needed
[2026-08-25 15:49:47,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 15:49:47,436.436 INFO    ] 200
[2026-08-25 15:49:47,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:49:47,479.479 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:49:47,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:49:47,526.526 INFO    ] No camera update needed
[2026-08-25 15:49:47,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:49:47,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:49:47,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:49:47,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:49:49,580.580 INFO    ] ================================================
[2026-08-25 15:49:49,596.596 INFO    ] Launching Daemon at Tue Aug 25 15:49:49 IST 2026
[2026-08-25 15:49:49,608.608 INFO    ] ================================================
[2026-08-25 15:49:50,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:49:50
[2026-08-25 15:49:50,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:49:51,218.218 INFO    ] Initializing speech engine...
[2026-08-25 15:49:51,229.229 INFO    ] 2026-08-25 15:49:51
[2026-08-25 15:49:51,517.517 INFO    ] 2026-08-25 15:49:51
[2026-08-25 15:49:51,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:49:51,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:49:51,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:49:52,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:49:52,060.060 INFO    ] time= 25/08/2026 15:49:52
[2026-08-25 15:49:52,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:49:52,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:49:52,249.249 INFO    ] No existing commands found in stream
[2026-08-25 15:49:57,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:49:57,283.283 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 15:50:00,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:50:00,969.969 INFO    ] Checking for system updates...
[2026-08-25 15:50:01,005.005 INFO    ] 200
[2026-08-25 15:50:01,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:01,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:50:01,065.065 INFO    ] No update needed
[2026-08-25 15:50:01,068.068 INFO    ] Checking for camera pi updates...
[2026-08-25 15:50:01,105.105 INFO    ] 200
[2026-08-25 15:50:01,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:01,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:50:01,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:50:01,198.198 INFO    ] No camera update needed
[2026-08-25 15:50:01,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:50:01,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:50:01,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:50:01,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:50:03,274.274 INFO    ] ================================================
[2026-08-25 15:50:03,290.290 INFO    ] Launching Daemon at Tue Aug 25 15:50:03 IST 2026
[2026-08-25 15:50:03,302.302 INFO    ] ================================================
[2026-08-25 15:50:03,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:50:03
[2026-08-25 15:50:04,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:50:04,803.803 INFO    ] Initializing speech engine...
[2026-08-25 15:50:04,812.812 INFO    ] 2026-08-25 15:50:04
[2026-08-25 15:50:05,088.088 INFO    ] 2026-08-25 15:50:05
[2026-08-25 15:50:05,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:50:05,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:50:05,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:50:05,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:50:05,463.463 INFO    ] time= 25/08/2026 15:50:05
[2026-08-25 15:50:05,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:50:05,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:50:05,586.586 INFO    ] No existing commands found in stream
[2026-08-25 15:50:10,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:50:10,602.602 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 15:50:11,750.750 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:50:11,752.752 INFO    ] Checking for system updates...
[2026-08-25 15:50:11,788.788 INFO    ] 200
[2026-08-25 15:50:11,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:11,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:50:11,845.845 INFO    ] No update needed
[2026-08-25 15:50:11,847.847 INFO    ] Checking for camera pi updates...
[2026-08-25 15:50:11,880.880 INFO    ] 200
[2026-08-25 15:50:11,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:11,931.931 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:50:11,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:50:11,983.983 INFO    ] No camera update needed
[2026-08-25 15:50:11,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:50:11,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:50:11,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:50:11,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:50:14,038.038 INFO    ] ================================================
[2026-08-25 15:50:14,053.053 INFO    ] Launching Daemon at Tue Aug 25 15:50:14 IST 2026
[2026-08-25 15:50:14,064.064 INFO    ] ================================================
[2026-08-25 15:50:14,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:50:14
[2026-08-25 15:50:15,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:50:15,518.518 INFO    ] Initializing speech engine...
[2026-08-25 15:50:15,527.527 INFO    ] 2026-08-25 15:50:15
[2026-08-25 15:50:15,787.787 INFO    ] 2026-08-25 15:50:15
[2026-08-25 15:50:15,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:50:16,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:50:16,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:50:16,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:50:16,266.266 INFO    ] time= 25/08/2026 15:50:16
[2026-08-25 15:50:16,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:50:16,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:50:16,470.470 INFO    ] No existing commands found in stream
[2026-08-25 15:50:21,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:50:21,497.497 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 15:50:25,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:50:25,475.475 INFO    ] Checking for system updates...
[2026-08-25 15:50:25,511.511 INFO    ] 200
[2026-08-25 15:50:25,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:25,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:50:25,574.574 INFO    ] No update needed
[2026-08-25 15:50:25,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 15:50:25,613.613 INFO    ] 200
[2026-08-25 15:50:25,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:25,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:50:25,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:50:25,704.704 INFO    ] No camera update needed
[2026-08-25 15:50:25,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:50:25,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:50:25,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:50:25,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:50:27,760.760 INFO    ] ================================================
[2026-08-25 15:50:27,776.776 INFO    ] Launching Daemon at Tue Aug 25 15:50:27 IST 2026
[2026-08-25 15:50:27,788.788 INFO    ] ================================================
[2026-08-25 15:50:28,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:50:28
[2026-08-25 15:50:28,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:50:29,249.249 INFO    ] Initializing speech engine...
[2026-08-25 15:50:29,266.266 INFO    ] 2026-08-25 15:50:29
[2026-08-25 15:50:29,539.539 INFO    ] 2026-08-25 15:50:29
[2026-08-25 15:50:29,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:50:29,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:50:29,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:50:30,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:50:30,043.043 INFO    ] time= 25/08/2026 15:50:30
[2026-08-25 15:50:30,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:50:30,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:50:30,314.314 INFO    ] No existing commands found in stream
[2026-08-25 15:50:35,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:50:35,359.359 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 15:50:39,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:50:39,394.394 INFO    ] Checking for system updates...
[2026-08-25 15:50:39,429.429 INFO    ] 200
[2026-08-25 15:50:39,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:39,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:50:39,491.491 INFO    ] No update needed
[2026-08-25 15:50:39,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 15:50:39,527.527 INFO    ] 200
[2026-08-25 15:50:39,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:39,569.569 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:50:39,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:50:39,613.613 INFO    ] No camera update needed
[2026-08-25 15:50:39,616.616 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:50:39,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:50:39,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:50:39,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:50:41,669.669 INFO    ] ================================================
[2026-08-25 15:50:41,688.688 INFO    ] Launching Daemon at Tue Aug 25 15:50:41 IST 2026
[2026-08-25 15:50:41,699.699 INFO    ] ================================================
[2026-08-25 15:50:42,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:50:42
[2026-08-25 15:50:42,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:50:43,120.120 INFO    ] Initializing speech engine...
[2026-08-25 15:50:43,139.139 INFO    ] 2026-08-25 15:50:43
[2026-08-25 15:50:43,407.407 INFO    ] 2026-08-25 15:50:43
[2026-08-25 15:50:43,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:50:43,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:50:43,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:50:43,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:50:43,810.810 INFO    ] time= 25/08/2026 15:50:43
[2026-08-25 15:50:43,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:50:43,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:50:43,987.987 INFO    ] No existing commands found in stream
[2026-08-25 15:50:49,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:50:49,016.016 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 15:50:53,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:50:53,305.305 INFO    ] Checking for system updates...
[2026-08-25 15:50:53,340.340 INFO    ] 200
[2026-08-25 15:50:53,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:53,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:50:53,398.398 INFO    ] No update needed
[2026-08-25 15:50:53,400.400 INFO    ] Checking for camera pi updates...
[2026-08-25 15:50:53,434.434 INFO    ] 200
[2026-08-25 15:50:53,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:50:53,480.480 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:50:53,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:50:53,538.538 INFO    ] No camera update needed
[2026-08-25 15:50:53,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:50:53,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:50:53,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:50:53,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:50:55,593.593 INFO    ] ================================================
[2026-08-25 15:50:55,608.608 INFO    ] Launching Daemon at Tue Aug 25 15:50:55 IST 2026
[2026-08-25 15:50:55,619.619 INFO    ] ================================================
[2026-08-25 15:50:56,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:50:56
[2026-08-25 15:50:56,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:50:57,173.173 INFO    ] Initializing speech engine...
[2026-08-25 15:50:57,181.181 INFO    ] 2026-08-25 15:50:57
[2026-08-25 15:50:57,449.449 INFO    ] 2026-08-25 15:50:57
[2026-08-25 15:50:57,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:50:57,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:50:57,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:50:57,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:50:57,946.946 INFO    ] time= 25/08/2026 15:50:57
[2026-08-25 15:50:57,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:50:58,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:50:58,130.130 INFO    ] No existing commands found in stream
[2026-08-25 15:51:03,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:51:03,159.159 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 15:51:05,621.621 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:51:05,624.624 INFO    ] Checking for system updates...
[2026-08-25 15:51:05,663.663 INFO    ] 200
[2026-08-25 15:51:05,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:05,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:51:05,727.727 INFO    ] No update needed
[2026-08-25 15:51:05,729.729 INFO    ] Checking for camera pi updates...
[2026-08-25 15:51:05,767.767 INFO    ] 200
[2026-08-25 15:51:05,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:05,815.815 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:51:05,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:51:05,876.876 INFO    ] No camera update needed
[2026-08-25 15:51:05,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:51:05,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:51:05,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:51:05,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:51:07,934.934 INFO    ] ================================================
[2026-08-25 15:51:07,949.949 INFO    ] Launching Daemon at Tue Aug 25 15:51:07 IST 2026
[2026-08-25 15:51:07,960.960 INFO    ] ================================================
[2026-08-25 15:51:08,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:51:08
[2026-08-25 15:51:09,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:51:09,549.549 INFO    ] Initializing speech engine...
[2026-08-25 15:51:09,563.563 INFO    ] 2026-08-25 15:51:09
[2026-08-25 15:51:09,865.865 INFO    ] 2026-08-25 15:51:09
[2026-08-25 15:51:09,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:51:10,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:51:10,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:51:10,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:51:10,374.374 INFO    ] time= 25/08/2026 15:51:10
[2026-08-25 15:51:10,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:51:10,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:51:10,562.562 INFO    ] No existing commands found in stream
[2026-08-25 15:51:15,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:51:15,602.602 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 15:51:19,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:51:19,951.951 INFO    ] Checking for system updates...
[2026-08-25 15:51:19,990.990 INFO    ] 200
[2026-08-25 15:51:19,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:20,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:51:20,049.049 INFO    ] No update needed
[2026-08-25 15:51:20,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 15:51:20,086.086 INFO    ] 200
[2026-08-25 15:51:20,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:20,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:51:20,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:51:20,183.183 INFO    ] No camera update needed
[2026-08-25 15:51:20,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:51:20,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:51:20,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:51:20,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:51:22,240.240 INFO    ] ================================================
[2026-08-25 15:51:22,255.255 INFO    ] Launching Daemon at Tue Aug 25 15:51:22 IST 2026
[2026-08-25 15:51:22,266.266 INFO    ] ================================================
[2026-08-25 15:51:22,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:51:22
[2026-08-25 15:51:23,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:51:23,868.868 INFO    ] Initializing speech engine...
[2026-08-25 15:51:23,874.874 INFO    ] 2026-08-25 15:51:23
[2026-08-25 15:51:24,149.149 INFO    ] 2026-08-25 15:51:24
[2026-08-25 15:51:24,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:51:24,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:51:24,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:51:24,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:51:24,631.631 INFO    ] time= 25/08/2026 15:51:24
[2026-08-25 15:51:24,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:51:24,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:51:24,852.852 INFO    ] No existing commands found in stream
[2026-08-25 15:51:29,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:51:29,881.881 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 15:51:32,005.005 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:51:32,009.009 INFO    ] Checking for system updates...
[2026-08-25 15:51:32,050.050 INFO    ] 200
[2026-08-25 15:51:32,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:32,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:51:32,112.112 INFO    ] No update needed
[2026-08-25 15:51:32,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 15:51:32,151.151 INFO    ] 200
[2026-08-25 15:51:32,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:32,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:51:32,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:51:32,258.258 INFO    ] No camera update needed
[2026-08-25 15:51:32,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:51:32,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:51:32,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:51:32,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:51:34,316.316 INFO    ] ================================================
[2026-08-25 15:51:34,333.333 INFO    ] Launching Daemon at Tue Aug 25 15:51:34 IST 2026
[2026-08-25 15:51:34,344.344 INFO    ] ================================================
[2026-08-25 15:51:34,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:51:34
[2026-08-25 15:51:35,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:51:35,786.786 INFO    ] Initializing speech engine...
[2026-08-25 15:51:35,796.796 INFO    ] 2026-08-25 15:51:35
[2026-08-25 15:51:36,051.051 INFO    ] 2026-08-25 15:51:36
[2026-08-25 15:51:36,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:51:36,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:51:36,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:51:36,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:51:36,537.537 INFO    ] time= 25/08/2026 15:51:36
[2026-08-25 15:51:36,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:51:36,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:51:36,729.729 INFO    ] No existing commands found in stream
[2026-08-25 15:51:41,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:51:41,758.758 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 15:51:43,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:51:43,201.201 INFO    ] Checking for system updates...
[2026-08-25 15:51:43,236.236 INFO    ] 200
[2026-08-25 15:51:43,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:43,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:51:43,297.297 INFO    ] No update needed
[2026-08-25 15:51:43,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 15:51:43,335.335 INFO    ] 200
[2026-08-25 15:51:43,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:43,378.378 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:51:43,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:51:43,525.525 INFO    ] No camera update needed
[2026-08-25 15:51:43,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:51:43,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:51:43,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:51:43,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:51:45,581.581 INFO    ] ================================================
[2026-08-25 15:51:45,597.597 INFO    ] Launching Daemon at Tue Aug 25 15:51:45 IST 2026
[2026-08-25 15:51:45,608.608 INFO    ] ================================================
[2026-08-25 15:51:46,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:51:46
[2026-08-25 15:51:46,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:51:47,075.075 INFO    ] Initializing speech engine...
[2026-08-25 15:51:47,082.082 INFO    ] 2026-08-25 15:51:47
[2026-08-25 15:51:47,343.343 INFO    ] 2026-08-25 15:51:47
[2026-08-25 15:51:47,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:51:47,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:51:47,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:51:47,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:51:47,889.889 INFO    ] time= 25/08/2026 15:51:47
[2026-08-25 15:51:47,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:51:47,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:51:48,022.022 INFO    ] No existing commands found in stream
[2026-08-25 15:51:53,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:51:53,050.050 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 15:51:56,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:51:56,045.045 INFO    ] Checking for system updates...
[2026-08-25 15:51:56,081.081 INFO    ] 200
[2026-08-25 15:51:56,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:56,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:51:56,138.138 INFO    ] No update needed
[2026-08-25 15:51:56,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 15:51:56,175.175 INFO    ] 200
[2026-08-25 15:51:56,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:51:56,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:51:56,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:51:56,272.272 INFO    ] No camera update needed
[2026-08-25 15:51:56,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:51:56,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:51:56,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:51:56,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:51:58,327.327 INFO    ] ================================================
[2026-08-25 15:51:58,342.342 INFO    ] Launching Daemon at Tue Aug 25 15:51:58 IST 2026
[2026-08-25 15:51:58,353.353 INFO    ] ================================================
[2026-08-25 15:51:58,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:51:58
[2026-08-25 15:51:59,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:51:59,817.817 INFO    ] Initializing speech engine...
[2026-08-25 15:51:59,826.826 INFO    ] 2026-08-25 15:51:59
[2026-08-25 15:52:00,086.086 INFO    ] 2026-08-25 15:52:00
[2026-08-25 15:52:00,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:52:00,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:52:00,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:52:00,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:52:00,630.630 INFO    ] time= 25/08/2026 15:52:00
[2026-08-25 15:52:00,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:52:00,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:52:00,781.781 INFO    ] No existing commands found in stream
[2026-08-25 15:52:05,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:52:05,800.800 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 15:52:09,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:52:09,710.710 INFO    ] Checking for system updates...
[2026-08-25 15:52:09,746.746 INFO    ] 200
[2026-08-25 15:52:09,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:09,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:09,808.808 INFO    ] No update needed
[2026-08-25 15:52:09,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 15:52:09,847.847 INFO    ] 200
[2026-08-25 15:52:09,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:09,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:52:09,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:09,941.941 INFO    ] No camera update needed
[2026-08-25 15:52:09,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:52:09,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:52:09,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:52:09,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:52:12,997.997 INFO    ] ================================================
[2026-08-25 15:52:12,013.013 INFO    ] Launching Daemon at Tue Aug 25 15:52:12 IST 2026
[2026-08-25 15:52:12,024.024 INFO    ] ================================================
[2026-08-25 15:52:12,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:52:12
[2026-08-25 15:52:13,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:52:13,430.430 INFO    ] Initializing speech engine...
[2026-08-25 15:52:13,443.443 INFO    ] 2026-08-25 15:52:13
[2026-08-25 15:52:13,709.709 INFO    ] 2026-08-25 15:52:13
[2026-08-25 15:52:13,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:52:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:52:14,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:52:14,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:52:14,217.217 INFO    ] time= 25/08/2026 15:52:14
[2026-08-25 15:52:14,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:52:14,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:52:14,429.429 INFO    ] No existing commands found in stream
[2026-08-25 15:52:19,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:52:19,446.446 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 15:52:21,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:52:21,571.571 INFO    ] Checking for system updates...
[2026-08-25 15:52:21,610.610 INFO    ] 200
[2026-08-25 15:52:21,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:21,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:21,669.669 INFO    ] No update needed
[2026-08-25 15:52:21,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 15:52:21,706.706 INFO    ] 200
[2026-08-25 15:52:21,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:21,748.748 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:52:21,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:21,796.796 INFO    ] No camera update needed
[2026-08-25 15:52:21,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:52:21,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:52:21,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:52:21,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:52:23,852.852 INFO    ] ================================================
[2026-08-25 15:52:23,867.867 INFO    ] Launching Daemon at Tue Aug 25 15:52:23 IST 2026
[2026-08-25 15:52:23,878.878 INFO    ] ================================================
[2026-08-25 15:52:24,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:52:24
[2026-08-25 15:52:25,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:52:25,326.326 INFO    ] Initializing speech engine...
[2026-08-25 15:52:25,335.335 INFO    ] 2026-08-25 15:52:25
[2026-08-25 15:52:25,595.595 INFO    ] 2026-08-25 15:52:25
[2026-08-25 15:52:25,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:52:25,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:52:25,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:52:25,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:52:25,954.954 INFO    ] time= 25/08/2026 15:52:25
[2026-08-25 15:52:25,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:52:26,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:52:26,149.149 INFO    ] No existing commands found in stream
[2026-08-25 15:52:31,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:52:31,174.174 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 15:52:33,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:52:33,573.573 INFO    ] Checking for system updates...
[2026-08-25 15:52:33,609.609 INFO    ] 200
[2026-08-25 15:52:33,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:33,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:52:33,671.671 INFO    ] No update needed
[2026-08-25 15:52:33,673.673 INFO    ] Checking for camera pi updates...
[2026-08-25 15:52:33,707.707 INFO    ] 200
[2026-08-25 15:52:33,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:33,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:52:33,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:52:33,797.797 INFO    ] No camera update needed
[2026-08-25 15:52:33,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:52:33,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:52:33,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:52:33,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:52:35,853.853 INFO    ] ================================================
[2026-08-25 15:52:35,868.868 INFO    ] Launching Daemon at Tue Aug 25 15:52:35 IST 2026
[2026-08-25 15:52:35,878.878 INFO    ] ================================================
[2026-08-25 15:52:36,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:52:36
[2026-08-25 15:52:37,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:52:37,331.331 INFO    ] Initializing speech engine...
[2026-08-25 15:52:37,338.338 INFO    ] 2026-08-25 15:52:37
[2026-08-25 15:52:37,605.605 INFO    ] 2026-08-25 15:52:37
[2026-08-25 15:52:37,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:52:37,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:52:37,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:52:38,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:52:38,094.094 INFO    ] time= 25/08/2026 15:52:38
[2026-08-25 15:52:38,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:52:38,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:52:38,306.306 INFO    ] No existing commands found in stream
[2026-08-25 15:52:43,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:52:43,336.336 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 15:52:44,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:52:44,702.702 INFO    ] Checking for system updates...
[2026-08-25 15:52:44,738.738 INFO    ] 200
[2026-08-25 15:52:44,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:44,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:44,797.797 INFO    ] No update needed
[2026-08-25 15:52:44,799.799 INFO    ] Checking for camera pi updates...
[2026-08-25 15:52:44,834.834 INFO    ] 200
[2026-08-25 15:52:44,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:44,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:52:44,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:44,926.926 INFO    ] No camera update needed
[2026-08-25 15:52:44,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:52:44,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:52:44,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:52:44,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:52:46,983.983 INFO    ] ================================================
[2026-08-25 15:52:47,998.998 INFO    ] Launching Daemon at Tue Aug 25 15:52:46 IST 2026
[2026-08-25 15:52:47,009.009 INFO    ] ================================================
[2026-08-25 15:52:47,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:52:47
[2026-08-25 15:52:48,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:52:48,444.444 INFO    ] Initializing speech engine...
[2026-08-25 15:52:48,453.453 INFO    ] 2026-08-25 15:52:48
[2026-08-25 15:52:48,744.744 INFO    ] 2026-08-25 15:52:48
[2026-08-25 15:52:48,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:52:48,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:52:49,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:52:49,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:52:49,136.136 INFO    ] time= 25/08/2026 15:52:49
[2026-08-25 15:52:49,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:52:49,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:52:49,261.261 INFO    ] No existing commands found in stream
[2026-08-25 15:52:54,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:52:54,277.277 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 15:52:55,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:52:55,530.530 INFO    ] Checking for system updates...
[2026-08-25 15:52:55,566.566 INFO    ] 200
[2026-08-25 15:52:55,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:55,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:55,622.622 INFO    ] No update needed
[2026-08-25 15:52:55,625.625 INFO    ] Checking for camera pi updates...
[2026-08-25 15:52:55,658.658 INFO    ] 200
[2026-08-25 15:52:55,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:52:55,701.701 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:52:55,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:52:55,750.750 INFO    ] No camera update needed
[2026-08-25 15:52:55,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:52:55,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:52:55,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:52:55,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:52:57,805.805 INFO    ] ================================================
[2026-08-25 15:52:57,819.819 INFO    ] Launching Daemon at Tue Aug 25 15:52:57 IST 2026
[2026-08-25 15:52:57,830.830 INFO    ] ================================================
[2026-08-25 15:52:58,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:52:58
[2026-08-25 15:52:59,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:52:59,271.271 INFO    ] Initializing speech engine...
[2026-08-25 15:52:59,296.296 INFO    ] 2026-08-25 15:52:59
[2026-08-25 15:52:59,564.564 INFO    ] 2026-08-25 15:52:59
[2026-08-25 15:52:59,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:52:59,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:52:59,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:53:00,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:53:00,052.052 INFO    ] time= 25/08/2026 15:53:00
[2026-08-25 15:53:00,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:53:00,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:53:00,290.290 INFO    ] No existing commands found in stream
[2026-08-25 15:53:05,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:53:05,321.321 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 15:53:06,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:53:06,489.489 INFO    ] Checking for system updates...
[2026-08-25 15:53:06,529.529 INFO    ] 200
[2026-08-25 15:53:06,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:06,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:53:06,589.589 INFO    ] No update needed
[2026-08-25 15:53:06,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 15:53:06,626.626 INFO    ] 200
[2026-08-25 15:53:06,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:06,683.683 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:53:06,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:53:06,749.749 INFO    ] No camera update needed
[2026-08-25 15:53:06,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:53:06,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:53:06,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:53:06,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:53:08,806.806 INFO    ] ================================================
[2026-08-25 15:53:08,821.821 INFO    ] Launching Daemon at Tue Aug 25 15:53:08 IST 2026
[2026-08-25 15:53:08,832.832 INFO    ] ================================================
[2026-08-25 15:53:09,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:53:09
[2026-08-25 15:53:09,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:53:10,265.265 INFO    ] Initializing speech engine...
[2026-08-25 15:53:10,275.275 INFO    ] 2026-08-25 15:53:10
[2026-08-25 15:53:10,518.518 INFO    ] 2026-08-25 15:53:10
[2026-08-25 15:53:10,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:53:10,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:53:10,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:53:10,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:53:10,987.987 INFO    ] time= 25/08/2026 15:53:10
[2026-08-25 15:53:11,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:53:11,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:53:11,229.229 INFO    ] No existing commands found in stream
[2026-08-25 15:53:16,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:53:16,246.246 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 15:53:17,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:53:17,812.812 INFO    ] Checking for system updates...
[2026-08-25 15:53:17,847.847 INFO    ] 200
[2026-08-25 15:53:17,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:17,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:53:17,903.903 INFO    ] No update needed
[2026-08-25 15:53:17,906.906 INFO    ] Checking for camera pi updates...
[2026-08-25 15:53:17,939.939 INFO    ] 200
[2026-08-25 15:53:17,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:17,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:53:18,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:53:18,029.029 INFO    ] No camera update needed
[2026-08-25 15:53:18,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:53:18,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:53:18,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:53:18,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:53:20,086.086 INFO    ] ================================================
[2026-08-25 15:53:20,101.101 INFO    ] Launching Daemon at Tue Aug 25 15:53:20 IST 2026
[2026-08-25 15:53:20,111.111 INFO    ] ================================================
[2026-08-25 15:53:20,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:53:20
[2026-08-25 15:53:21,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:53:21,763.763 INFO    ] Initializing speech engine...
[2026-08-25 15:53:21,778.778 INFO    ] 2026-08-25 15:53:21
[2026-08-25 15:53:22,093.093 INFO    ] 2026-08-25 15:53:22
[2026-08-25 15:53:22,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:53:22,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:53:22,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:53:22,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:53:22,599.599 INFO    ] time= 25/08/2026 15:53:22
[2026-08-25 15:53:22,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:53:22,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:53:22,814.814 INFO    ] No existing commands found in stream
[2026-08-25 15:53:27,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:53:27,849.849 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 15:53:30,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:53:30,652.652 INFO    ] Checking for system updates...
[2026-08-25 15:53:30,694.694 INFO    ] 200
[2026-08-25 15:53:30,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:30,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:53:30,753.753 INFO    ] No update needed
[2026-08-25 15:53:30,756.756 INFO    ] Checking for camera pi updates...
[2026-08-25 15:53:30,795.795 INFO    ] 200
[2026-08-25 15:53:30,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:30,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:53:30,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:53:30,895.895 INFO    ] No camera update needed
[2026-08-25 15:53:30,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:53:30,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:53:30,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:53:30,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:53:32,960.960 INFO    ] ================================================
[2026-08-25 15:53:32,979.979 INFO    ] Launching Daemon at Tue Aug 25 15:53:32 IST 2026
[2026-08-25 15:53:33,998.998 INFO    ] ================================================
[2026-08-25 15:53:33,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:53:33
[2026-08-25 15:53:34,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:53:34,580.580 INFO    ] Initializing speech engine...
[2026-08-25 15:53:34,584.584 INFO    ] 2026-08-25 15:53:34
[2026-08-25 15:53:34,852.852 INFO    ] 2026-08-25 15:53:34
[2026-08-25 15:53:34,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:53:35,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:53:35,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:53:35,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:53:35,231.231 INFO    ] time= 25/08/2026 15:53:35
[2026-08-25 15:53:35,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:53:35,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:53:35,363.363 INFO    ] No existing commands found in stream
[2026-08-25 15:53:40,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:53:40,375.375 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 15:53:41,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:53:41,608.608 INFO    ] Checking for system updates...
[2026-08-25 15:53:41,644.644 INFO    ] 200
[2026-08-25 15:53:41,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:41,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:53:41,703.703 INFO    ] No update needed
[2026-08-25 15:53:41,706.706 INFO    ] Checking for camera pi updates...
[2026-08-25 15:53:41,749.749 INFO    ] 200
[2026-08-25 15:53:41,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:41,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:53:41,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:53:41,862.862 INFO    ] No camera update needed
[2026-08-25 15:53:41,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:53:41,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:53:41,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:53:41,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:53:43,926.926 INFO    ] ================================================
[2026-08-25 15:53:43,941.941 INFO    ] Launching Daemon at Tue Aug 25 15:53:43 IST 2026
[2026-08-25 15:53:43,953.953 INFO    ] ================================================
[2026-08-25 15:53:44,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:53:44
[2026-08-25 15:53:45,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:53:45,555.555 INFO    ] Initializing speech engine...
[2026-08-25 15:53:45,569.569 INFO    ] 2026-08-25 15:53:45
[2026-08-25 15:53:45,854.854 INFO    ] 2026-08-25 15:53:45
[2026-08-25 15:53:45,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:53:46,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:53:46,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:53:46,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:53:46,375.375 INFO    ] time= 25/08/2026 15:53:46
[2026-08-25 15:53:46,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:53:46,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:53:46,595.595 INFO    ] No existing commands found in stream
[2026-08-25 15:53:51,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:53:51,608.608 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 15:53:53,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:53:53,423.423 INFO    ] Checking for system updates...
[2026-08-25 15:53:53,458.458 INFO    ] 200
[2026-08-25 15:53:53,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:53,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:53:53,522.522 INFO    ] No update needed
[2026-08-25 15:53:53,524.524 INFO    ] Checking for camera pi updates...
[2026-08-25 15:53:53,558.558 INFO    ] 200
[2026-08-25 15:53:53,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:53:53,601.601 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:53:53,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:53:53,752.752 INFO    ] No camera update needed
[2026-08-25 15:53:53,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:53:53,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:53:53,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:53:53,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:53:55,806.806 INFO    ] ================================================
[2026-08-25 15:53:55,821.821 INFO    ] Launching Daemon at Tue Aug 25 15:53:55 IST 2026
[2026-08-25 15:53:55,832.832 INFO    ] ================================================
[2026-08-25 15:53:56,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:53:56
[2026-08-25 15:53:57,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:53:57,283.283 INFO    ] Initializing speech engine...
[2026-08-25 15:53:57,309.309 INFO    ] 2026-08-25 15:53:57
[2026-08-25 15:53:57,591.591 INFO    ] 2026-08-25 15:53:57
[2026-08-25 15:53:57,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:53:57,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:53:57,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:53:58,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:53:58,144.144 INFO    ] time= 25/08/2026 15:53:58
[2026-08-25 15:53:58,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:53:58,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:53:58,299.299 INFO    ] No existing commands found in stream
[2026-08-25 15:54:03,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:54:03,330.330 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 15:54:07,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:54:07,611.611 INFO    ] Checking for system updates...
[2026-08-25 15:54:07,647.647 INFO    ] 200
[2026-08-25 15:54:07,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:07,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:54:07,704.704 INFO    ] No update needed
[2026-08-25 15:54:07,707.707 INFO    ] Checking for camera pi updates...
[2026-08-25 15:54:07,741.741 INFO    ] 200
[2026-08-25 15:54:07,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:07,783.783 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:54:07,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:54:07,832.832 INFO    ] No camera update needed
[2026-08-25 15:54:07,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:54:07,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:54:07,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:54:07,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:54:09,886.886 INFO    ] ================================================
[2026-08-25 15:54:09,902.902 INFO    ] Launching Daemon at Tue Aug 25 15:54:09 IST 2026
[2026-08-25 15:54:09,912.912 INFO    ] ================================================
[2026-08-25 15:54:10,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:54:10
[2026-08-25 15:54:11,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:54:11,343.343 INFO    ] Initializing speech engine...
[2026-08-25 15:54:11,352.352 INFO    ] 2026-08-25 15:54:11
[2026-08-25 15:54:11,598.598 INFO    ] 2026-08-25 15:54:11
[2026-08-25 15:54:11,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:54:11,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:54:11,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:54:12,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:54:12,071.071 INFO    ] time= 25/08/2026 15:54:12
[2026-08-25 15:54:12,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:54:12,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:54:12,295.295 INFO    ] No existing commands found in stream
[2026-08-25 15:54:17,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:54:17,317.317 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 15:54:19,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:54:19,971.971 INFO    ] Checking for system updates...
[2026-08-25 15:54:20,006.006 INFO    ] 200
[2026-08-25 15:54:20,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:20,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:54:20,063.063 INFO    ] No update needed
[2026-08-25 15:54:20,065.065 INFO    ] Checking for camera pi updates...
[2026-08-25 15:54:20,102.102 INFO    ] 200
[2026-08-25 15:54:20,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:20,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:54:20,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:54:20,197.197 INFO    ] No camera update needed
[2026-08-25 15:54:20,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:54:20,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:54:20,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:54:20,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:54:22,255.255 INFO    ] ================================================
[2026-08-25 15:54:22,270.270 INFO    ] Launching Daemon at Tue Aug 25 15:54:22 IST 2026
[2026-08-25 15:54:22,280.280 INFO    ] ================================================
[2026-08-25 15:54:22,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:54:22
[2026-08-25 15:54:23,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:54:23,678.678 INFO    ] Initializing speech engine...
[2026-08-25 15:54:23,696.696 INFO    ] 2026-08-25 15:54:23
[2026-08-25 15:54:23,950.950 INFO    ] 2026-08-25 15:54:23
[2026-08-25 15:54:23,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:54:24,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:54:24,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:54:24,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:54:24,458.458 INFO    ] time= 25/08/2026 15:54:24
[2026-08-25 15:54:24,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:54:24,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:54:24,656.656 INFO    ] No existing commands found in stream
[2026-08-25 15:54:29,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:54:29,674.674 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 15:54:32,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:54:32,491.491 INFO    ] Checking for system updates...
[2026-08-25 15:54:32,539.539 INFO    ] 200
[2026-08-25 15:54:32,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:32,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:54:32,604.604 INFO    ] No update needed
[2026-08-25 15:54:32,607.607 INFO    ] Checking for camera pi updates...
[2026-08-25 15:54:32,644.644 INFO    ] 200
[2026-08-25 15:54:32,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:32,691.691 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:54:32,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:54:32,763.763 INFO    ] No camera update needed
[2026-08-25 15:54:32,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:54:32,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:54:32,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:54:32,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:54:34,824.824 INFO    ] ================================================
[2026-08-25 15:54:34,839.839 INFO    ] Launching Daemon at Tue Aug 25 15:54:34 IST 2026
[2026-08-25 15:54:34,850.850 INFO    ] ================================================
[2026-08-25 15:54:35,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:54:35
[2026-08-25 15:54:36,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:54:36,291.291 INFO    ] Initializing speech engine...
[2026-08-25 15:54:36,300.300 INFO    ] 2026-08-25 15:54:36
[2026-08-25 15:54:36,602.602 INFO    ] 2026-08-25 15:54:36
[2026-08-25 15:54:36,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:54:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:54:36,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:54:36,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:54:37,004.004 INFO    ] time= 25/08/2026 15:54:36
[2026-08-25 15:54:37,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:54:37,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:54:37,121.121 INFO    ] No existing commands found in stream
[2026-08-25 15:54:42,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:54:42,144.144 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 15:54:44,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:54:44,146.146 INFO    ] Checking for system updates...
[2026-08-25 15:54:44,182.182 INFO    ] 200
[2026-08-25 15:54:44,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:44,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:54:44,243.243 INFO    ] No update needed
[2026-08-25 15:54:44,246.246 INFO    ] Checking for camera pi updates...
[2026-08-25 15:54:44,284.284 INFO    ] 200
[2026-08-25 15:54:44,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:44,328.328 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:54:44,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:54:44,396.396 INFO    ] No camera update needed
[2026-08-25 15:54:44,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:54:44,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:54:44,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:54:44,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:54:46,450.450 INFO    ] ================================================
[2026-08-25 15:54:46,465.465 INFO    ] Launching Daemon at Tue Aug 25 15:54:46 IST 2026
[2026-08-25 15:54:46,476.476 INFO    ] ================================================
[2026-08-25 15:54:47,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:54:47
[2026-08-25 15:54:47,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:54:47,881.881 INFO    ] Initializing speech engine...
[2026-08-25 15:54:47,888.888 INFO    ] 2026-08-25 15:54:47
[2026-08-25 15:54:48,188.188 INFO    ] 2026-08-25 15:54:48
[2026-08-25 15:54:48,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:54:48,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:54:48,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:54:48,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:54:48,618.618 INFO    ] time= 25/08/2026 15:54:48
[2026-08-25 15:54:48,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:54:48,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:54:48,792.792 INFO    ] No existing commands found in stream
[2026-08-25 15:54:53,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:54:53,815.815 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 15:54:57,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:54:57,049.049 INFO    ] Checking for system updates...
[2026-08-25 15:54:57,088.088 INFO    ] 200
[2026-08-25 15:54:57,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:57,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:54:57,153.153 INFO    ] No update needed
[2026-08-25 15:54:57,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 15:54:57,189.189 INFO    ] 200
[2026-08-25 15:54:57,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:54:57,248.248 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:54:57,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:54:57,308.308 INFO    ] No camera update needed
[2026-08-25 15:54:57,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:54:57,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:54:57,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:54:57,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:54:59,364.364 INFO    ] ================================================
[2026-08-25 15:54:59,380.380 INFO    ] Launching Daemon at Tue Aug 25 15:54:59 IST 2026
[2026-08-25 15:54:59,391.391 INFO    ] ================================================
[2026-08-25 15:54:59,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:54:59
[2026-08-25 15:55:00,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:55:00,823.823 INFO    ] Initializing speech engine...
[2026-08-25 15:55:00,830.830 INFO    ] 2026-08-25 15:55:00
[2026-08-25 15:55:01,079.079 INFO    ] 2026-08-25 15:55:01
[2026-08-25 15:55:01,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:55:01,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:55:01,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:55:01,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:55:01,542.542 INFO    ] time= 25/08/2026 15:55:01
[2026-08-25 15:55:01,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:55:01,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:55:01,787.787 INFO    ] No existing commands found in stream
[2026-08-25 15:55:06,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:55:06,837.837 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 15:55:10,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:55:10,117.117 INFO    ] Checking for system updates...
[2026-08-25 15:55:10,153.153 INFO    ] 200
[2026-08-25 15:55:10,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:10,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:55:10,219.219 INFO    ] No update needed
[2026-08-25 15:55:10,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 15:55:10,260.260 INFO    ] 200
[2026-08-25 15:55:10,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:10,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:55:10,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:55:10,357.357 INFO    ] No camera update needed
[2026-08-25 15:55:10,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:55:10,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:55:10,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:55:10,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:55:12,416.416 INFO    ] ================================================
[2026-08-25 15:55:12,632.632 INFO    ] Launching Daemon at Tue Aug 25 15:55:12 IST 2026
[2026-08-25 15:55:12,643.643 INFO    ] ================================================
[2026-08-25 15:55:13,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:55:13
[2026-08-25 15:55:13,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:55:14,184.184 INFO    ] Initializing speech engine...
[2026-08-25 15:55:14,197.197 INFO    ] 2026-08-25 15:55:14
[2026-08-25 15:55:14,471.471 INFO    ] 2026-08-25 15:55:14
[2026-08-25 15:55:14,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:55:14,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:55:14,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:55:14,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:55:14,975.975 INFO    ] time= 25/08/2026 15:55:14
[2026-08-25 15:55:15,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:55:15,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:55:15,181.181 INFO    ] No existing commands found in stream
[2026-08-25 15:55:20,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:55:20,206.206 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 15:55:22,510.510 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:55:22,513.513 INFO    ] Checking for system updates...
[2026-08-25 15:55:22,550.550 INFO    ] 200
[2026-08-25 15:55:22,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:22,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:22,609.609 INFO    ] No update needed
[2026-08-25 15:55:22,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 15:55:22,650.650 INFO    ] 200
[2026-08-25 15:55:22,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:22,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:55:22,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:22,776.776 INFO    ] No camera update needed
[2026-08-25 15:55:22,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:55:22,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:55:22,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:55:22,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:55:24,835.835 INFO    ] ================================================
[2026-08-25 15:55:24,850.850 INFO    ] Launching Daemon at Tue Aug 25 15:55:24 IST 2026
[2026-08-25 15:55:24,861.861 INFO    ] ================================================
[2026-08-25 15:55:25,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:55:25
[2026-08-25 15:55:26,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:55:26,475.475 INFO    ] Initializing speech engine...
[2026-08-25 15:55:26,480.480 INFO    ] 2026-08-25 15:55:26
[2026-08-25 15:55:26,754.754 INFO    ] 2026-08-25 15:55:26
[2026-08-25 15:55:26,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:55:27,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:55:27,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:55:27,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:55:27,259.259 INFO    ] time= 25/08/2026 15:55:27
[2026-08-25 15:55:27,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:55:27,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:55:27,462.462 INFO    ] No existing commands found in stream
[2026-08-25 15:55:32,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:55:32,499.499 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-08-25 15:55:33,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:55:33,502.502 INFO    ] Checking for system updates...
[2026-08-25 15:55:33,538.538 INFO    ] 200
[2026-08-25 15:55:33,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:33,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:33,594.594 INFO    ] No update needed
[2026-08-25 15:55:33,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 15:55:33,630.630 INFO    ] 200
[2026-08-25 15:55:33,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:33,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:55:33,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:33,726.726 INFO    ] No camera update needed
[2026-08-25 15:55:33,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:55:33,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:55:33,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:55:33,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:55:35,781.781 INFO    ] ================================================
[2026-08-25 15:55:35,797.797 INFO    ] Launching Daemon at Tue Aug 25 15:55:35 IST 2026
[2026-08-25 15:55:35,807.807 INFO    ] ================================================
[2026-08-25 15:55:36,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:55:36
[2026-08-25 15:55:37,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:55:37,443.443 INFO    ] Initializing speech engine...
[2026-08-25 15:55:37,454.454 INFO    ] 2026-08-25 15:55:37
[2026-08-25 15:55:37,743.743 INFO    ] 2026-08-25 15:55:37
[2026-08-25 15:55:37,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:55:38,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:55:38,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:55:38,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:55:38,272.272 INFO    ] time= 25/08/2026 15:55:38
[2026-08-25 15:55:38,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:55:38,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:55:38,431.431 INFO    ] No existing commands found in stream
[2026-08-25 15:55:43,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:55:43,463.463 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 15:55:45,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:55:45,769.769 INFO    ] Checking for system updates...
[2026-08-25 15:55:45,807.807 INFO    ] 200
[2026-08-25 15:55:45,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:45,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:45,865.865 INFO    ] No update needed
[2026-08-25 15:55:45,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 15:55:45,901.901 INFO    ] 200
[2026-08-25 15:55:45,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:45,944.944 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:55:45,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:45,999.999 INFO    ] No camera update needed
[2026-08-25 15:55:46,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:55:46,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:55:46,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:55:46,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:55:48,055.055 INFO    ] ================================================
[2026-08-25 15:55:48,071.071 INFO    ] Launching Daemon at Tue Aug 25 15:55:48 IST 2026
[2026-08-25 15:55:48,081.081 INFO    ] ================================================
[2026-08-25 15:55:48,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:55:48
[2026-08-25 15:55:49,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:55:49,690.690 INFO    ] Initializing speech engine...
[2026-08-25 15:55:49,703.703 INFO    ] 2026-08-25 15:55:49
[2026-08-25 15:55:50,012.012 INFO    ] 2026-08-25 15:55:49
[2026-08-25 15:55:50,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:55:50,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:55:50,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:55:50,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:55:50,530.530 INFO    ] time= 25/08/2026 15:55:50
[2026-08-25 15:55:50,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:55:50,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:55:50,688.688 INFO    ] No existing commands found in stream
[2026-08-25 15:55:55,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:55:55,726.726 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 15:55:56,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:55:56,738.738 INFO    ] Checking for system updates...
[2026-08-25 15:55:56,775.775 INFO    ] 200
[2026-08-25 15:55:56,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:56,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:56,833.833 INFO    ] No update needed
[2026-08-25 15:55:56,836.836 INFO    ] Checking for camera pi updates...
[2026-08-25 15:55:56,869.869 INFO    ] 200
[2026-08-25 15:55:56,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:55:56,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:55:57,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:55:57,064.064 INFO    ] No camera update needed
[2026-08-25 15:55:57,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:55:57,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:55:57,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:55:57,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:55:59,120.120 INFO    ] ================================================
[2026-08-25 15:55:59,136.136 INFO    ] Launching Daemon at Tue Aug 25 15:55:59 IST 2026
[2026-08-25 15:55:59,147.147 INFO    ] ================================================
[2026-08-25 15:55:59,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:55:59
[2026-08-25 15:56:00,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:56:00,575.575 INFO    ] Initializing speech engine...
[2026-08-25 15:56:00,590.590 INFO    ] 2026-08-25 15:56:00
[2026-08-25 15:56:00,862.862 INFO    ] 2026-08-25 15:56:00
[2026-08-25 15:56:00,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:56:01,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:56:01,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:56:01,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:56:01,277.277 INFO    ] time= 25/08/2026 15:56:01
[2026-08-25 15:56:01,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:56:01,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:56:01,413.413 INFO    ] No existing commands found in stream
[2026-08-25 15:56:06,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:56:06,441.441 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 15:56:09,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:56:09,884.884 INFO    ] Checking for system updates...
[2026-08-25 15:56:09,923.923 INFO    ] 200
[2026-08-25 15:56:09,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:09,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:56:09,979.979 INFO    ] No update needed
[2026-08-25 15:56:09,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 15:56:10,016.016 INFO    ] 200
[2026-08-25 15:56:10,019.019 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:10,059.059 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:56:10,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:56:10,118.118 INFO    ] No camera update needed
[2026-08-25 15:56:10,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:56:10,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:56:10,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:56:10,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:56:12,172.172 INFO    ] ================================================
[2026-08-25 15:56:12,189.189 INFO    ] Launching Daemon at Tue Aug 25 15:56:12 IST 2026
[2026-08-25 15:56:12,205.205 INFO    ] ================================================
[2026-08-25 15:56:12,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:56:12
[2026-08-25 15:56:13,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:56:13,674.674 INFO    ] Initializing speech engine...
[2026-08-25 15:56:13,696.696 INFO    ] 2026-08-25 15:56:13
[2026-08-25 15:56:13,988.988 INFO    ] 2026-08-25 15:56:13
[2026-08-25 15:56:14,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:56:14,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:56:14,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:56:14,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:56:14,471.471 INFO    ] time= 25/08/2026 15:56:14
[2026-08-25 15:56:14,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:56:14,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:56:14,642.642 INFO    ] No existing commands found in stream
[2026-08-25 15:56:19,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:56:19,676.676 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 15:56:23,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:56:23,048.048 INFO    ] Checking for system updates...
[2026-08-25 15:56:23,083.083 INFO    ] 200
[2026-08-25 15:56:23,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:23,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:56:23,141.141 INFO    ] No update needed
[2026-08-25 15:56:23,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 15:56:23,176.176 INFO    ] 200
[2026-08-25 15:56:23,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:23,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:56:23,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:56:23,283.283 INFO    ] No camera update needed
[2026-08-25 15:56:23,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:56:23,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:56:23,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:56:23,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:56:25,337.337 INFO    ] ================================================
[2026-08-25 15:56:25,353.353 INFO    ] Launching Daemon at Tue Aug 25 15:56:25 IST 2026
[2026-08-25 15:56:25,364.364 INFO    ] ================================================
[2026-08-25 15:56:26,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:56:26
[2026-08-25 15:56:26,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:56:27,054.054 INFO    ] Initializing speech engine...
[2026-08-25 15:56:27,065.065 INFO    ] 2026-08-25 15:56:27
[2026-08-25 15:56:27,385.385 INFO    ] 2026-08-25 15:56:27
[2026-08-25 15:56:27,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:56:27,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:56:27,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:56:27,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:56:27,909.909 INFO    ] time= 25/08/2026 15:56:27
[2026-08-25 15:56:27,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:56:27,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:56:28,046.046 INFO    ] No existing commands found in stream
[2026-08-25 15:56:33,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:56:33,078.078 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 15:56:34,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:56:34,039.039 INFO    ] Checking for system updates...
[2026-08-25 15:56:34,076.076 INFO    ] 200
[2026-08-25 15:56:34,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:34,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:56:34,142.142 INFO    ] No update needed
[2026-08-25 15:56:34,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 15:56:34,179.179 INFO    ] 200
[2026-08-25 15:56:34,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:34,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:56:34,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:56:34,273.273 INFO    ] No camera update needed
[2026-08-25 15:56:34,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:56:34,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:56:34,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:56:34,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:56:36,328.328 INFO    ] ================================================
[2026-08-25 15:56:36,343.343 INFO    ] Launching Daemon at Tue Aug 25 15:56:36 IST 2026
[2026-08-25 15:56:36,354.354 INFO    ] ================================================
[2026-08-25 15:56:36,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:56:36
[2026-08-25 15:56:37,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:56:37,772.772 INFO    ] Initializing speech engine...
[2026-08-25 15:56:37,781.781 INFO    ] 2026-08-25 15:56:37
[2026-08-25 15:56:38,031.031 INFO    ] 2026-08-25 15:56:38
[2026-08-25 15:56:38,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:56:38,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:56:38,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:56:38,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:56:38,550.550 INFO    ] time= 25/08/2026 15:56:38
[2026-08-25 15:56:38,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:56:38,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:56:38,764.764 INFO    ] No existing commands found in stream
[2026-08-25 15:56:43,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:56:43,785.785 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 15:56:48,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:56:48,223.223 INFO    ] Checking for system updates...
[2026-08-25 15:56:48,260.260 INFO    ] 200
[2026-08-25 15:56:48,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:48,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:56:48,321.321 INFO    ] No update needed
[2026-08-25 15:56:48,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 15:56:48,357.357 INFO    ] 200
[2026-08-25 15:56:48,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:48,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:56:48,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:56:48,451.451 INFO    ] No camera update needed
[2026-08-25 15:56:48,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:56:48,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:56:48,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:56:48,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:56:50,508.508 INFO    ] ================================================
[2026-08-25 15:56:50,524.524 INFO    ] Launching Daemon at Tue Aug 25 15:56:50 IST 2026
[2026-08-25 15:56:50,535.535 INFO    ] ================================================
[2026-08-25 15:56:51,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:56:51
[2026-08-25 15:56:51,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:56:52,043.043 INFO    ] Initializing speech engine...
[2026-08-25 15:56:52,051.051 INFO    ] 2026-08-25 15:56:52
[2026-08-25 15:56:52,312.312 INFO    ] 2026-08-25 15:56:52
[2026-08-25 15:56:52,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:56:52,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:56:52,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:56:52,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:56:52,789.789 INFO    ] time= 25/08/2026 15:56:52
[2026-08-25 15:56:52,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:56:52,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:56:53,002.002 INFO    ] No existing commands found in stream
[2026-08-25 15:56:58,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:56:58,026.026 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 15:56:59,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:56:59,140.140 INFO    ] Checking for system updates...
[2026-08-25 15:56:59,175.175 INFO    ] 200
[2026-08-25 15:56:59,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:59,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:56:59,232.232 INFO    ] No update needed
[2026-08-25 15:56:59,234.234 INFO    ] Checking for camera pi updates...
[2026-08-25 15:56:59,268.268 INFO    ] 200
[2026-08-25 15:56:59,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:56:59,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:56:59,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:56:59,362.362 INFO    ] No camera update needed
[2026-08-25 15:56:59,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:56:59,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:56:59,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:56:59,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:57:01,427.427 INFO    ] ================================================
[2026-08-25 15:57:01,455.455 INFO    ] Launching Daemon at Tue Aug 25 15:57:01 IST 2026
[2026-08-25 15:57:01,475.475 INFO    ] ================================================
[2026-08-25 15:57:02,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:57:02
[2026-08-25 15:57:02,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:57:03,113.113 INFO    ] Initializing speech engine...
[2026-08-25 15:57:03,118.118 INFO    ] 2026-08-25 15:57:03
[2026-08-25 15:57:03,393.393 INFO    ] 2026-08-25 15:57:03
[2026-08-25 15:57:03,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:57:03,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:57:03,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:57:03,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:57:03,816.816 INFO    ] time= 25/08/2026 15:57:03
[2026-08-25 15:57:03,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:57:03,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:57:03,919.919 INFO    ] No existing commands found in stream
[2026-08-25 15:57:08,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:57:08,952.952 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 15:57:09,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 15:57:09,862.862 INFO    ] Checking for system updates...
[2026-08-25 15:57:09,898.898 INFO    ] 200
[2026-08-25 15:57:09,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:09,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:57:09,962.962 INFO    ] No update needed
[2026-08-25 15:57:09,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 15:57:10,001.001 INFO    ] 200
[2026-08-25 15:57:10,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:10,047.047 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:57:10,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:57:10,095.095 INFO    ] No camera update needed
[2026-08-25 15:57:10,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:57:10,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:57:10,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:57:10,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:57:12,152.152 INFO    ] ================================================
[2026-08-25 15:57:12,168.168 INFO    ] Launching Daemon at Tue Aug 25 15:57:12 IST 2026
[2026-08-25 15:57:12,180.180 INFO    ] ================================================
[2026-08-25 15:57:12,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:57:12
[2026-08-25 15:57:13,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:57:13,803.803 INFO    ] Initializing speech engine...
[2026-08-25 15:57:13,817.817 INFO    ] 2026-08-25 15:57:13
[2026-08-25 15:57:14,135.135 INFO    ] 2026-08-25 15:57:14
[2026-08-25 15:57:14,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:57:14,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:57:14,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:57:14,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:57:14,630.630 INFO    ] time= 25/08/2026 15:57:14
[2026-08-25 15:57:14,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:57:14,669.669 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:57:14,803.803 INFO    ] No existing commands found in stream
[2026-08-25 15:57:19,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:57:19,820.820 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 15:57:23,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:57:23,445.445 INFO    ] Checking for system updates...
[2026-08-25 15:57:23,480.480 INFO    ] 200
[2026-08-25 15:57:23,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:23,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:57:23,537.537 INFO    ] No update needed
[2026-08-25 15:57:23,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 15:57:23,573.573 INFO    ] 200
[2026-08-25 15:57:23,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:23,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:57:23,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:57:23,667.667 INFO    ] No camera update needed
[2026-08-25 15:57:23,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:57:23,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:57:23,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:57:23,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:57:25,722.722 INFO    ] ================================================
[2026-08-25 15:57:25,739.739 INFO    ] Launching Daemon at Tue Aug 25 15:57:25 IST 2026
[2026-08-25 15:57:25,755.755 INFO    ] ================================================
[2026-08-25 15:57:26,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:57:26
[2026-08-25 15:57:26,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:57:27,188.188 INFO    ] Initializing speech engine...
[2026-08-25 15:57:27,198.198 INFO    ] 2026-08-25 15:57:27
[2026-08-25 15:57:27,442.442 INFO    ] 2026-08-25 15:57:27
[2026-08-25 15:57:27,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:57:27,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:57:27,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:57:27,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:57:27,909.909 INFO    ] time= 25/08/2026 15:57:27
[2026-08-25 15:57:27,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:57:28,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:57:28,139.139 INFO    ] No existing commands found in stream
[2026-08-25 15:57:33,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:57:33,164.164 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 15:57:37,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:57:37,323.323 INFO    ] Checking for system updates...
[2026-08-25 15:57:37,358.358 INFO    ] 200
[2026-08-25 15:57:37,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:37,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:57:37,422.422 INFO    ] No update needed
[2026-08-25 15:57:37,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 15:57:37,458.458 INFO    ] 200
[2026-08-25 15:57:37,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:37,500.500 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:57:37,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:57:37,559.559 INFO    ] No camera update needed
[2026-08-25 15:57:37,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:57:37,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:57:37,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:57:37,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:57:39,615.615 INFO    ] ================================================
[2026-08-25 15:57:39,630.630 INFO    ] Launching Daemon at Tue Aug 25 15:57:39 IST 2026
[2026-08-25 15:57:39,642.642 INFO    ] ================================================
[2026-08-25 15:57:40,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:57:40
[2026-08-25 15:57:40,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:57:41,062.062 INFO    ] Initializing speech engine...
[2026-08-25 15:57:41,071.071 INFO    ] 2026-08-25 15:57:41
[2026-08-25 15:57:41,322.322 INFO    ] 2026-08-25 15:57:41
[2026-08-25 15:57:41,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:57:41,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:57:41,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:57:41,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:57:41,791.791 INFO    ] time= 25/08/2026 15:57:41
[2026-08-25 15:57:41,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:57:41,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:57:42,036.036 INFO    ] No existing commands found in stream
[2026-08-25 15:57:47,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:57:47,059.059 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 15:57:47,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:57:47,561.561 INFO    ] Checking for system updates...
[2026-08-25 15:57:47,597.597 INFO    ] 200
[2026-08-25 15:57:47,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:47,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:57:47,663.663 INFO    ] No update needed
[2026-08-25 15:57:47,666.666 INFO    ] Checking for camera pi updates...
[2026-08-25 15:57:47,699.699 INFO    ] 200
[2026-08-25 15:57:47,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:47,746.746 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:57:47,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:57:47,804.804 INFO    ] No camera update needed
[2026-08-25 15:57:47,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:57:47,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:57:47,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:57:47,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:57:49,862.862 INFO    ] ================================================
[2026-08-25 15:57:49,878.878 INFO    ] Launching Daemon at Tue Aug 25 15:57:49 IST 2026
[2026-08-25 15:57:49,889.889 INFO    ] ================================================
[2026-08-25 15:57:50,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:57:50
[2026-08-25 15:57:51,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:57:51,340.340 INFO    ] Initializing speech engine...
[2026-08-25 15:57:51,349.349 INFO    ] 2026-08-25 15:57:51
[2026-08-25 15:57:51,607.607 INFO    ] 2026-08-25 15:57:51
[2026-08-25 15:57:51,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:57:51,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:57:51,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:57:52,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:57:52,147.147 INFO    ] time= 25/08/2026 15:57:52
[2026-08-25 15:57:52,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:57:52,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:57:52,296.296 INFO    ] No existing commands found in stream
[2026-08-25 15:57:57,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:57:57,315.315 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 15:57:58,293.293 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:57:58,296.296 INFO    ] Checking for system updates...
[2026-08-25 15:57:58,332.332 INFO    ] 200
[2026-08-25 15:57:58,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:58,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:57:58,391.391 INFO    ] No update needed
[2026-08-25 15:57:58,393.393 INFO    ] Checking for camera pi updates...
[2026-08-25 15:57:58,427.427 INFO    ] 200
[2026-08-25 15:57:58,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:57:58,470.470 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:57:58,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:57:58,620.620 INFO    ] No camera update needed
[2026-08-25 15:57:58,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:57:58,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:57:58,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:57:58,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:58:00,676.676 INFO    ] ================================================
[2026-08-25 15:58:00,692.692 INFO    ] Launching Daemon at Tue Aug 25 15:58:00 IST 2026
[2026-08-25 15:58:00,703.703 INFO    ] ================================================
[2026-08-25 15:58:01,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:58:01
[2026-08-25 15:58:02,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:58:02,452.452 INFO    ] Initializing speech engine...
[2026-08-25 15:58:02,465.465 INFO    ] 2026-08-25 15:58:02
[2026-08-25 15:58:02,814.814 INFO    ] 2026-08-25 15:58:02
[2026-08-25 15:58:02,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:58:03,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:58:03,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:58:03,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:58:03,254.254 INFO    ] time= 25/08/2026 15:58:03
[2026-08-25 15:58:03,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:58:03,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:58:03,491.491 INFO    ] No existing commands found in stream
[2026-08-25 15:58:08,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:58:08,514.514 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 15:58:11,793.793 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:58:11,795.795 INFO    ] Checking for system updates...
[2026-08-25 15:58:11,835.835 INFO    ] 200
[2026-08-25 15:58:11,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:11,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:11,893.893 INFO    ] No update needed
[2026-08-25 15:58:11,895.895 INFO    ] Checking for camera pi updates...
[2026-08-25 15:58:11,932.932 INFO    ] 200
[2026-08-25 15:58:11,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:11,975.975 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:58:12,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:12,021.021 INFO    ] No camera update needed
[2026-08-25 15:58:12,024.024 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:58:12,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:58:12,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:58:12,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:58:14,077.077 INFO    ] ================================================
[2026-08-25 15:58:14,093.093 INFO    ] Launching Daemon at Tue Aug 25 15:58:14 IST 2026
[2026-08-25 15:58:14,104.104 INFO    ] ================================================
[2026-08-25 15:58:14,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:58:14
[2026-08-25 15:58:15,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:58:15,505.505 INFO    ] Initializing speech engine...
[2026-08-25 15:58:15,528.528 INFO    ] 2026-08-25 15:58:15
[2026-08-25 15:58:15,777.777 INFO    ] 2026-08-25 15:58:15
[2026-08-25 15:58:15,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:58:16,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:58:16,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:58:16,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:58:16,257.257 INFO    ] time= 25/08/2026 15:58:16
[2026-08-25 15:58:16,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:58:16,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:58:16,475.475 INFO    ] No existing commands found in stream
[2026-08-25 15:58:21,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:58:21,493.493 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 15:58:22,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:58:22,562.562 INFO    ] Checking for system updates...
[2026-08-25 15:58:22,601.601 INFO    ] 200
[2026-08-25 15:58:22,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:22,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:58:22,671.671 INFO    ] No update needed
[2026-08-25 15:58:22,674.674 INFO    ] Checking for camera pi updates...
[2026-08-25 15:58:22,712.712 INFO    ] 200
[2026-08-25 15:58:22,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:22,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:58:22,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:58:22,827.827 INFO    ] No camera update needed
[2026-08-25 15:58:22,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:58:22,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:58:22,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:58:22,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:58:24,885.885 INFO    ] ================================================
[2026-08-25 15:58:24,901.901 INFO    ] Launching Daemon at Tue Aug 25 15:58:24 IST 2026
[2026-08-25 15:58:24,913.913 INFO    ] ================================================
[2026-08-25 15:58:25,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:58:25
[2026-08-25 15:58:26,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:58:26,559.559 INFO    ] Initializing speech engine...
[2026-08-25 15:58:26,570.570 INFO    ] 2026-08-25 15:58:26
[2026-08-25 15:58:26,882.882 INFO    ] 2026-08-25 15:58:26
[2026-08-25 15:58:26,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:58:27,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:58:27,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:58:27,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:58:27,345.345 INFO    ] time= 25/08/2026 15:58:27
[2026-08-25 15:58:27,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:58:27,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:58:27,552.552 INFO    ] No existing commands found in stream
[2026-08-25 15:58:32,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:58:32,579.579 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 15:58:37,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:58:37,044.044 INFO    ] Checking for system updates...
[2026-08-25 15:58:37,085.085 INFO    ] 200
[2026-08-25 15:58:37,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:37,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:37,142.142 INFO    ] No update needed
[2026-08-25 15:58:37,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 15:58:37,177.177 INFO    ] 200
[2026-08-25 15:58:37,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:37,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:58:37,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:37,268.268 INFO    ] No camera update needed
[2026-08-25 15:58:37,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:58:37,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:58:37,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:58:37,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:58:39,322.322 INFO    ] ================================================
[2026-08-25 15:58:39,339.339 INFO    ] Launching Daemon at Tue Aug 25 15:58:39 IST 2026
[2026-08-25 15:58:39,350.350 INFO    ] ================================================
[2026-08-25 15:58:39,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:58:39
[2026-08-25 15:58:40,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:58:40,793.793 INFO    ] Initializing speech engine...
[2026-08-25 15:58:40,808.808 INFO    ] 2026-08-25 15:58:40
[2026-08-25 15:58:41,094.094 INFO    ] 2026-08-25 15:58:41
[2026-08-25 15:58:41,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:58:41,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:58:41,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:58:41,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:58:41,490.490 INFO    ] time= 25/08/2026 15:58:41
[2026-08-25 15:58:41,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:58:41,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:58:41,601.601 INFO    ] No existing commands found in stream
[2026-08-25 15:58:46,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:58:46,624.624 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 15:58:49,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 15:58:49,152.152 INFO    ] Checking for system updates...
[2026-08-25 15:58:49,189.189 INFO    ] 200
[2026-08-25 15:58:49,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:49,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:49,255.255 INFO    ] No update needed
[2026-08-25 15:58:49,258.258 INFO    ] Checking for camera pi updates...
[2026-08-25 15:58:49,293.293 INFO    ] 200
[2026-08-25 15:58:49,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:49,342.342 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:58:49,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:49,394.394 INFO    ] No camera update needed
[2026-08-25 15:58:49,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:58:49,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:58:49,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:58:49,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:58:51,455.455 INFO    ] ================================================
[2026-08-25 15:58:51,470.470 INFO    ] Launching Daemon at Tue Aug 25 15:58:51 IST 2026
[2026-08-25 15:58:51,481.481 INFO    ] ================================================
[2026-08-25 15:58:52,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:58:52
[2026-08-25 15:58:52,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:58:53,006.006 INFO    ] Initializing speech engine...
[2026-08-25 15:58:53,012.012 INFO    ] 2026-08-25 15:58:53
[2026-08-25 15:58:53,310.310 INFO    ] 2026-08-25 15:58:53
[2026-08-25 15:58:53,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:58:53,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:58:53,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:58:53,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:58:53,730.730 INFO    ] time= 25/08/2026 15:58:53
[2026-08-25 15:58:53,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:58:53,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:58:53,875.875 INFO    ] No existing commands found in stream
[2026-08-25 15:58:58,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:58:58,903.903 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 15:58:59,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:58:59,676.676 INFO    ] Checking for system updates...
[2026-08-25 15:58:59,712.712 INFO    ] 200
[2026-08-25 15:58:59,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:59,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:59,777.777 INFO    ] No update needed
[2026-08-25 15:58:59,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 15:58:59,818.818 INFO    ] 200
[2026-08-25 15:58:59,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:58:59,860.860 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:58:59,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:58:59,919.919 INFO    ] No camera update needed
[2026-08-25 15:58:59,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:58:59,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:58:59,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:58:59,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:59:01,979.979 INFO    ] ================================================
[2026-08-25 15:59:02,997.997 INFO    ] Launching Daemon at Tue Aug 25 15:59:01 IST 2026
[2026-08-25 15:59:02,012.012 INFO    ] ================================================
[2026-08-25 15:59:02,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:59:02
[2026-08-25 15:59:03,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:59:03,629.629 INFO    ] Initializing speech engine...
[2026-08-25 15:59:03,643.643 INFO    ] 2026-08-25 15:59:03
[2026-08-25 15:59:03,954.954 INFO    ] 2026-08-25 15:59:03
[2026-08-25 15:59:04,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:59:04,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:59:04,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:59:04,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:59:04,461.461 INFO    ] time= 25/08/2026 15:59:04
[2026-08-25 15:59:04,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:59:04,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:59:04,591.591 INFO    ] No existing commands found in stream
[2026-08-25 15:59:09,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:59:09,606.606 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 15:59:10,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:59:10,670.670 INFO    ] Checking for system updates...
[2026-08-25 15:59:10,706.706 INFO    ] 200
[2026-08-25 15:59:10,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:10,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:59:10,766.766 INFO    ] No update needed
[2026-08-25 15:59:10,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 15:59:10,803.803 INFO    ] 200
[2026-08-25 15:59:10,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:10,848.848 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:59:10,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 15:59:10,897.897 INFO    ] No camera update needed
[2026-08-25 15:59:10,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:59:10,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:59:10,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:59:10,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:59:12,956.956 INFO    ] ================================================
[2026-08-25 15:59:12,972.972 INFO    ] Launching Daemon at Tue Aug 25 15:59:12 IST 2026
[2026-08-25 15:59:12,983.983 INFO    ] ================================================
[2026-08-25 15:59:13,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:59:13
[2026-08-25 15:59:14,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:59:14,393.393 INFO    ] Initializing speech engine...
[2026-08-25 15:59:14,419.419 INFO    ] 2026-08-25 15:59:14
[2026-08-25 15:59:14,700.700 INFO    ] 2026-08-25 15:59:14
[2026-08-25 15:59:14,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:59:14,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:59:14,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:59:15,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:59:15,113.113 INFO    ] time= 25/08/2026 15:59:15
[2026-08-25 15:59:15,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:59:15,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:59:15,224.224 INFO    ] No existing commands found in stream
[2026-08-25 15:59:20,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:59:20,240.240 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 15:59:23,725.725 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 15:59:23,728.728 INFO    ] Checking for system updates...
[2026-08-25 15:59:23,764.764 INFO    ] 200
[2026-08-25 15:59:23,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:23,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:23,822.822 INFO    ] No update needed
[2026-08-25 15:59:23,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 15:59:23,859.859 INFO    ] 200
[2026-08-25 15:59:23,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:23,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:59:23,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:23,953.953 INFO    ] No camera update needed
[2026-08-25 15:59:23,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:59:23,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:59:23,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:59:23,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:59:26,008.008 INFO    ] ================================================
[2026-08-25 15:59:26,023.023 INFO    ] Launching Daemon at Tue Aug 25 15:59:26 IST 2026
[2026-08-25 15:59:26,034.034 INFO    ] ================================================
[2026-08-25 15:59:26,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:59:26
[2026-08-25 15:59:27,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:59:27,714.714 INFO    ] Initializing speech engine...
[2026-08-25 15:59:27,729.729 INFO    ] 2026-08-25 15:59:27
[2026-08-25 15:59:28,013.013 INFO    ] 2026-08-25 15:59:27
[2026-08-25 15:59:28,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:59:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:59:28,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:59:28,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:59:28,557.557 INFO    ] time= 25/08/2026 15:59:28
[2026-08-25 15:59:28,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:59:28,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:59:28,723.723 INFO    ] No existing commands found in stream
[2026-08-25 15:59:33,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:59:33,752.752 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 15:59:37,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 15:59:37,032.032 INFO    ] Checking for system updates...
[2026-08-25 15:59:37,075.075 INFO    ] 200
[2026-08-25 15:59:37,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:37,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:37,145.145 INFO    ] No update needed
[2026-08-25 15:59:37,149.149 INFO    ] Checking for camera pi updates...
[2026-08-25 15:59:37,190.190 INFO    ] 200
[2026-08-25 15:59:37,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:37,232.232 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:59:37,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:37,292.292 INFO    ] No camera update needed
[2026-08-25 15:59:37,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:59:37,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:59:37,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:59:37,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:59:39,349.349 INFO    ] ================================================
[2026-08-25 15:59:39,364.364 INFO    ] Launching Daemon at Tue Aug 25 15:59:39 IST 2026
[2026-08-25 15:59:39,375.375 INFO    ] ================================================
[2026-08-25 15:59:39,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:59:39
[2026-08-25 15:59:40,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:59:40,998.998 INFO    ] Initializing speech engine...
[2026-08-25 15:59:41,009.009 INFO    ] 2026-08-25 15:59:40
[2026-08-25 15:59:41,331.331 INFO    ] 2026-08-25 15:59:41
[2026-08-25 15:59:41,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:59:41,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:59:41,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:59:41,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:59:41,850.850 INFO    ] time= 25/08/2026 15:59:41
[2026-08-25 15:59:41,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:59:41,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:59:42,012.012 INFO    ] No existing commands found in stream
[2026-08-25 15:59:47,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:59:47,029.029 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 15:59:47,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 15:59:47,551.551 INFO    ] Checking for system updates...
[2026-08-25 15:59:47,593.593 INFO    ] 200
[2026-08-25 15:59:47,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:47,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:47,653.653 INFO    ] No update needed
[2026-08-25 15:59:47,656.656 INFO    ] Checking for camera pi updates...
[2026-08-25 15:59:47,691.691 INFO    ] 200
[2026-08-25 15:59:47,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:47,735.735 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:59:47,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:47,795.795 INFO    ] No camera update needed
[2026-08-25 15:59:47,798.798 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:59:47,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:59:47,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:59:47,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 15:59:49,855.855 INFO    ] ================================================
[2026-08-25 15:59:49,870.870 INFO    ] Launching Daemon at Tue Aug 25 15:59:49 IST 2026
[2026-08-25 15:59:49,882.882 INFO    ] ================================================
[2026-08-25 15:59:50,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 15:59:50
[2026-08-25 15:59:51,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 15:59:51,322.322 INFO    ] Initializing speech engine...
[2026-08-25 15:59:51,335.335 INFO    ] 2026-08-25 15:59:51
[2026-08-25 15:59:51,608.608 INFO    ] 2026-08-25 15:59:51
[2026-08-25 15:59:51,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 15:59:51,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 15:59:51,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 15:59:52,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 15:59:52,166.166 INFO    ] time= 25/08/2026 15:59:52
[2026-08-25 15:59:52,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 15:59:52,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 15:59:52,310.310 INFO    ] No existing commands found in stream
[2026-08-25 15:59:57,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 15:59:57,328.328 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 15:59:58,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 15:59:58,095.095 INFO    ] Checking for system updates...
[2026-08-25 15:59:58,130.130 INFO    ] 200
[2026-08-25 15:59:58,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:58,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:58,188.188 INFO    ] No update needed
[2026-08-25 15:59:58,190.190 INFO    ] Checking for camera pi updates...
[2026-08-25 15:59:58,224.224 INFO    ] 200
[2026-08-25 15:59:58,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 15:59:58,266.266 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 15:59:58,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 15:59:58,313.313 INFO    ] No camera update needed
[2026-08-25 15:59:58,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-25 15:59:58,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 15:59:58,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 15:59:58,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:00:00,370.370 INFO    ] ================================================
[2026-08-25 16:00:00,385.385 INFO    ] Launching Daemon at Tue Aug 25 16:00:00 IST 2026
[2026-08-25 16:00:00,396.396 INFO    ] ================================================
[2026-08-25 16:00:01,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:00:01
[2026-08-25 16:00:03,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:00:04,639.639 INFO    ] Initializing speech engine...
[2026-08-25 16:00:04,686.686 INFO    ] 2026-08-25 16:00:04
[2026-08-25 16:00:05,673.673 INFO    ] 2026-08-25 16:00:05
[2026-08-25 16:00:05,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:00:06,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:00:06,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:00:06,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:00:06,213.213 INFO    ] time= 25/08/2026 16:00:06
[2026-08-25 16:00:06,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:00:06,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:00:06,355.355 INFO    ] No existing commands found in stream
[2026-08-25 16:00:11,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:00:11,373.373 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 16:00:13,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:00:13,945.945 INFO    ] Checking for system updates...
[2026-08-25 16:00:13,990.990 INFO    ] 200
[2026-08-25 16:00:13,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:14,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:00:14,049.049 INFO    ] No update needed
[2026-08-25 16:00:14,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 16:00:14,088.088 INFO    ] 200
[2026-08-25 16:00:14,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:14,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:00:14,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:00:14,184.184 INFO    ] No camera update needed
[2026-08-25 16:00:14,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:00:14,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:00:14,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:00:14,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:00:16,239.239 INFO    ] ================================================
[2026-08-25 16:00:16,255.255 INFO    ] Launching Daemon at Tue Aug 25 16:00:16 IST 2026
[2026-08-25 16:00:16,266.266 INFO    ] ================================================
[2026-08-25 16:00:16,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:00:16
[2026-08-25 16:00:17,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:00:17,685.685 INFO    ] Initializing speech engine...
[2026-08-25 16:00:17,711.711 INFO    ] 2026-08-25 16:00:17
[2026-08-25 16:00:17,982.982 INFO    ] 2026-08-25 16:00:17
[2026-08-25 16:00:18,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:00:18,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:00:18,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:00:18,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:00:18,400.400 INFO    ] time= 25/08/2026 16:00:18
[2026-08-25 16:00:18,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:00:18,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:00:18,550.550 INFO    ] No existing commands found in stream
[2026-08-25 16:00:23,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:00:23,578.578 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 16:00:24,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:00:24,258.258 INFO    ] Checking for system updates...
[2026-08-25 16:00:24,294.294 INFO    ] 200
[2026-08-25 16:00:24,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:24,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:00:24,355.355 INFO    ] No update needed
[2026-08-25 16:00:24,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 16:00:24,391.391 INFO    ] 200
[2026-08-25 16:00:24,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:24,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:00:24,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:00:24,493.493 INFO    ] No camera update needed
[2026-08-25 16:00:24,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:00:24,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:00:24,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:00:24,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:00:26,548.548 INFO    ] ================================================
[2026-08-25 16:00:26,563.563 INFO    ] Launching Daemon at Tue Aug 25 16:00:26 IST 2026
[2026-08-25 16:00:26,574.574 INFO    ] ================================================
[2026-08-25 16:00:27,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:00:27
[2026-08-25 16:00:27,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:00:28,182.182 INFO    ] Initializing speech engine...
[2026-08-25 16:00:28,188.188 INFO    ] 2026-08-25 16:00:28
[2026-08-25 16:00:28,463.463 INFO    ] 2026-08-25 16:00:28
[2026-08-25 16:00:28,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:00:28,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:00:28,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:00:28,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:00:28,946.946 INFO    ] time= 25/08/2026 16:00:28
[2026-08-25 16:00:29,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:00:29,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:00:29,161.161 INFO    ] No existing commands found in stream
[2026-08-25 16:00:34,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:00:34,181.181 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 16:00:35,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:00:35,462.462 INFO    ] Checking for system updates...
[2026-08-25 16:00:35,498.498 INFO    ] 200
[2026-08-25 16:00:35,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:35,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:00:35,555.555 INFO    ] No update needed
[2026-08-25 16:00:35,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 16:00:35,592.592 INFO    ] 200
[2026-08-25 16:00:35,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:35,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:00:35,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:00:35,692.692 INFO    ] No camera update needed
[2026-08-25 16:00:35,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:00:35,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:00:35,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:00:35,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:00:37,747.747 INFO    ] ================================================
[2026-08-25 16:00:37,762.762 INFO    ] Launching Daemon at Tue Aug 25 16:00:37 IST 2026
[2026-08-25 16:00:37,773.773 INFO    ] ================================================
[2026-08-25 16:00:38,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:00:38
[2026-08-25 16:00:39,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:00:39,368.368 INFO    ] Initializing speech engine...
[2026-08-25 16:00:39,379.379 INFO    ] 2026-08-25 16:00:39
[2026-08-25 16:00:39,657.657 INFO    ] 2026-08-25 16:00:39
[2026-08-25 16:00:39,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:00:39,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:00:39,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:00:40,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:00:40,020.020 INFO    ] time= 25/08/2026 16:00:40
[2026-08-25 16:00:40,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:00:40,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:00:40,112.112 INFO    ] No existing commands found in stream
[2026-08-25 16:00:45,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:00:45,126.126 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 16:00:49,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:00:49,619.619 INFO    ] Checking for system updates...
[2026-08-25 16:00:49,656.656 INFO    ] 200
[2026-08-25 16:00:49,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:49,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:00:49,715.715 INFO    ] No update needed
[2026-08-25 16:00:49,718.718 INFO    ] Checking for camera pi updates...
[2026-08-25 16:00:49,757.757 INFO    ] 200
[2026-08-25 16:00:49,760.760 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:00:49,804.804 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:00:49,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:00:49,853.853 INFO    ] No camera update needed
[2026-08-25 16:00:49,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:00:49,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:00:49,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:00:49,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:00:51,907.907 INFO    ] ================================================
[2026-08-25 16:00:51,922.922 INFO    ] Launching Daemon at Tue Aug 25 16:00:51 IST 2026
[2026-08-25 16:00:51,933.933 INFO    ] ================================================
[2026-08-25 16:00:52,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:00:52
[2026-08-25 16:00:53,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:00:53,545.545 INFO    ] Initializing speech engine...
[2026-08-25 16:00:53,552.552 INFO    ] 2026-08-25 16:00:53
[2026-08-25 16:00:53,834.834 INFO    ] 2026-08-25 16:00:53
[2026-08-25 16:00:53,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:00:54,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:00:54,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:00:54,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:00:54,387.387 INFO    ] time= 25/08/2026 16:00:54
[2026-08-25 16:00:54,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:00:54,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:00:54,531.531 INFO    ] No existing commands found in stream
[2026-08-25 16:00:59,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:00:59,560.560 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 16:01:01,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:01:01,656.656 INFO    ] Checking for system updates...
[2026-08-25 16:01:01,727.727 INFO    ] 200
[2026-08-25 16:01:01,731.731 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:01,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:01:01,800.800 INFO    ] No update needed
[2026-08-25 16:01:01,803.803 INFO    ] Checking for camera pi updates...
[2026-08-25 16:01:01,847.847 INFO    ] 200
[2026-08-25 16:01:01,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:01,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:01:01,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:01:01,953.953 INFO    ] No camera update needed
[2026-08-25 16:01:01,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:01:01,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:01:01,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:01:01,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:01:04,013.013 INFO    ] ================================================
[2026-08-25 16:01:04,029.029 INFO    ] Launching Daemon at Tue Aug 25 16:01:04 IST 2026
[2026-08-25 16:01:04,040.040 INFO    ] ================================================
[2026-08-25 16:01:04,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:01:04
[2026-08-25 16:01:05,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:01:05,461.461 INFO    ] Initializing speech engine...
[2026-08-25 16:01:05,470.470 INFO    ] 2026-08-25 16:01:05
[2026-08-25 16:01:05,728.728 INFO    ] 2026-08-25 16:01:05
[2026-08-25 16:01:05,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:01:05,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:01:05,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:01:06,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:01:06,109.109 INFO    ] time= 25/08/2026 16:01:06
[2026-08-25 16:01:06,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:01:06,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:01:06,235.235 INFO    ] No existing commands found in stream
[2026-08-25 16:01:11,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:01:11,248.248 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 16:01:13,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:01:13,609.609 INFO    ] Checking for system updates...
[2026-08-25 16:01:13,645.645 INFO    ] 200
[2026-08-25 16:01:13,647.647 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:13,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:01:13,706.706 INFO    ] No update needed
[2026-08-25 16:01:13,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 16:01:13,743.743 INFO    ] 200
[2026-08-25 16:01:13,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:13,785.785 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:01:13,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:01:13,837.837 INFO    ] No camera update needed
[2026-08-25 16:01:13,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:01:13,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:01:13,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:01:13,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:01:15,892.892 INFO    ] ================================================
[2026-08-25 16:01:15,908.908 INFO    ] Launching Daemon at Tue Aug 25 16:01:15 IST 2026
[2026-08-25 16:01:15,919.919 INFO    ] ================================================
[2026-08-25 16:01:16,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:01:16
[2026-08-25 16:01:17,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:01:17,319.319 INFO    ] Initializing speech engine...
[2026-08-25 16:01:17,325.325 INFO    ] 2026-08-25 16:01:17
[2026-08-25 16:01:17,627.627 INFO    ] 2026-08-25 16:01:17
[2026-08-25 16:01:17,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:01:17,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:01:17,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:01:18,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:01:18,013.013 INFO    ] time= 25/08/2026 16:01:18
[2026-08-25 16:01:18,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:01:18,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:01:18,142.142 INFO    ] No existing commands found in stream
[2026-08-25 16:01:23,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:01:23,158.158 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 16:01:24,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:01:24,837.837 INFO    ] Checking for system updates...
[2026-08-25 16:01:24,872.872 INFO    ] 200
[2026-08-25 16:01:24,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:24,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:01:24,930.930 INFO    ] No update needed
[2026-08-25 16:01:24,933.933 INFO    ] Checking for camera pi updates...
[2026-08-25 16:01:24,968.968 INFO    ] 200
[2026-08-25 16:01:24,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:25,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:01:25,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:01:25,064.064 INFO    ] No camera update needed
[2026-08-25 16:01:25,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:01:25,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:01:25,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:01:25,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:01:27,125.125 INFO    ] ================================================
[2026-08-25 16:01:27,141.141 INFO    ] Launching Daemon at Tue Aug 25 16:01:27 IST 2026
[2026-08-25 16:01:27,152.152 INFO    ] ================================================
[2026-08-25 16:01:27,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:01:27
[2026-08-25 16:01:28,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:01:28,567.567 INFO    ] Initializing speech engine...
[2026-08-25 16:01:28,576.576 INFO    ] 2026-08-25 16:01:28
[2026-08-25 16:01:28,870.870 INFO    ] 2026-08-25 16:01:28
[2026-08-25 16:01:28,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:01:29,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:01:29,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:01:29,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:01:29,289.289 INFO    ] time= 25/08/2026 16:01:29
[2026-08-25 16:01:29,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:01:29,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:01:29,413.413 INFO    ] No existing commands found in stream
[2026-08-25 16:01:34,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:01:34,441.441 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 16:01:36,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:01:36,989.989 INFO    ] Checking for system updates...
[2026-08-25 16:01:37,024.024 INFO    ] 200
[2026-08-25 16:01:37,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:37,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:01:37,081.081 INFO    ] No update needed
[2026-08-25 16:01:37,083.083 INFO    ] Checking for camera pi updates...
[2026-08-25 16:01:37,118.118 INFO    ] 200
[2026-08-25 16:01:37,120.120 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:37,162.162 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:01:37,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:01:37,218.218 INFO    ] No camera update needed
[2026-08-25 16:01:37,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:01:37,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:01:37,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:01:37,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:01:39,273.273 INFO    ] ================================================
[2026-08-25 16:01:39,290.290 INFO    ] Launching Daemon at Tue Aug 25 16:01:39 IST 2026
[2026-08-25 16:01:39,301.301 INFO    ] ================================================
[2026-08-25 16:01:40,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:01:39
[2026-08-25 16:01:40,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:01:41,006.006 INFO    ] Initializing speech engine...
[2026-08-25 16:01:41,014.014 INFO    ] 2026-08-25 16:01:41
[2026-08-25 16:01:41,323.323 INFO    ] 2026-08-25 16:01:41
[2026-08-25 16:01:41,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:01:41,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:01:41,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:01:41,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:01:41,829.829 INFO    ] time= 25/08/2026 16:01:41
[2026-08-25 16:01:41,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:01:41,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:01:41,994.994 INFO    ] No existing commands found in stream
[2026-08-25 16:01:47,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:01:47,022.022 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 16:01:51,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:01:51,424.424 INFO    ] Checking for system updates...
[2026-08-25 16:01:51,460.460 INFO    ] 200
[2026-08-25 16:01:51,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:51,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:01:51,516.516 INFO    ] No update needed
[2026-08-25 16:01:51,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 16:01:51,552.552 INFO    ] 200
[2026-08-25 16:01:51,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:01:51,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:01:51,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:01:51,651.651 INFO    ] No camera update needed
[2026-08-25 16:01:51,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:01:51,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:01:51,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:01:51,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:01:53,707.707 INFO    ] ================================================
[2026-08-25 16:01:53,723.723 INFO    ] Launching Daemon at Tue Aug 25 16:01:53 IST 2026
[2026-08-25 16:01:53,734.734 INFO    ] ================================================
[2026-08-25 16:01:54,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:01:54
[2026-08-25 16:01:54,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:01:55,200.200 INFO    ] Initializing speech engine...
[2026-08-25 16:01:55,208.208 INFO    ] 2026-08-25 16:01:55
[2026-08-25 16:01:55,482.482 INFO    ] 2026-08-25 16:01:55
[2026-08-25 16:01:55,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:01:55,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:01:55,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:01:55,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:01:55,996.996 INFO    ] time= 25/08/2026 16:01:55
[2026-08-25 16:01:56,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:01:56,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:01:56,175.175 INFO    ] No existing commands found in stream
[2026-08-25 16:02:01,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:02:01,203.203 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 16:02:05,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:02:05,677.677 INFO    ] Checking for system updates...
[2026-08-25 16:02:05,713.713 INFO    ] 200
[2026-08-25 16:02:05,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:05,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:05,770.770 INFO    ] No update needed
[2026-08-25 16:02:05,772.772 INFO    ] Checking for camera pi updates...
[2026-08-25 16:02:05,805.805 INFO    ] 200
[2026-08-25 16:02:05,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:05,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:02:05,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:05,907.907 INFO    ] No camera update needed
[2026-08-25 16:02:05,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:02:05,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:02:05,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:02:05,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:02:07,963.963 INFO    ] ================================================
[2026-08-25 16:02:07,981.981 INFO    ] Launching Daemon at Tue Aug 25 16:02:07 IST 2026
[2026-08-25 16:02:07,992.992 INFO    ] ================================================
[2026-08-25 16:02:08,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:02:08
[2026-08-25 16:02:09,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:02:09,412.412 INFO    ] Initializing speech engine...
[2026-08-25 16:02:09,420.420 INFO    ] 2026-08-25 16:02:09
[2026-08-25 16:02:09,676.676 INFO    ] 2026-08-25 16:02:09
[2026-08-25 16:02:09,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:02:09,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:02:09,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:02:10,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:02:10,149.149 INFO    ] time= 25/08/2026 16:02:10
[2026-08-25 16:02:10,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:02:10,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:02:10,281.281 INFO    ] No existing commands found in stream
[2026-08-25 16:02:15,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:02:15,296.296 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 16:02:16,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:02:16,376.376 INFO    ] Checking for system updates...
[2026-08-25 16:02:16,411.411 INFO    ] 200
[2026-08-25 16:02:16,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:16,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:16,468.468 INFO    ] No update needed
[2026-08-25 16:02:16,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 16:02:16,505.505 INFO    ] 200
[2026-08-25 16:02:16,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:16,547.547 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:02:16,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:16,693.693 INFO    ] No camera update needed
[2026-08-25 16:02:16,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:02:16,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:02:16,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:02:16,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:02:18,749.749 INFO    ] ================================================
[2026-08-25 16:02:18,765.765 INFO    ] Launching Daemon at Tue Aug 25 16:02:18 IST 2026
[2026-08-25 16:02:18,776.776 INFO    ] ================================================
[2026-08-25 16:02:19,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:02:19
[2026-08-25 16:02:19,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:02:20,191.191 INFO    ] Initializing speech engine...
[2026-08-25 16:02:20,197.197 INFO    ] 2026-08-25 16:02:20
[2026-08-25 16:02:20,494.494 INFO    ] 2026-08-25 16:02:20
[2026-08-25 16:02:20,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:02:20,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:02:20,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:02:20,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:02:20,881.881 INFO    ] time= 25/08/2026 16:02:20
[2026-08-25 16:02:20,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:02:20,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:02:21,005.005 INFO    ] No existing commands found in stream
[2026-08-25 16:02:26,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:02:26,021.021 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 16:02:29,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:02:29,633.633 INFO    ] Checking for system updates...
[2026-08-25 16:02:29,674.674 INFO    ] 200
[2026-08-25 16:02:29,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:29,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:29,738.738 INFO    ] No update needed
[2026-08-25 16:02:29,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 16:02:29,777.777 INFO    ] 200
[2026-08-25 16:02:29,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:29,821.821 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:02:29,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:29,901.901 INFO    ] No camera update needed
[2026-08-25 16:02:29,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:02:29,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:02:29,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:02:29,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:02:31,968.968 INFO    ] ================================================
[2026-08-25 16:02:31,984.984 INFO    ] Launching Daemon at Tue Aug 25 16:02:31 IST 2026
[2026-08-25 16:02:32,995.995 INFO    ] ================================================
[2026-08-25 16:02:32,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:02:32
[2026-08-25 16:02:33,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:02:33,466.466 INFO    ] Initializing speech engine...
[2026-08-25 16:02:33,475.475 INFO    ] 2026-08-25 16:02:33
[2026-08-25 16:02:33,743.743 INFO    ] 2026-08-25 16:02:33
[2026-08-25 16:02:33,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:02:34,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:02:34,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:02:34,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:02:34,175.175 INFO    ] time= 25/08/2026 16:02:34
[2026-08-25 16:02:34,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:02:34,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:02:34,398.398 INFO    ] No existing commands found in stream
[2026-08-25 16:02:39,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:02:39,431.431 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 16:02:40,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:02:40,188.188 INFO    ] Checking for system updates...
[2026-08-25 16:02:40,223.223 INFO    ] 200
[2026-08-25 16:02:40,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:40,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:40,280.280 INFO    ] No update needed
[2026-08-25 16:02:40,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 16:02:40,320.320 INFO    ] 200
[2026-08-25 16:02:40,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:40,362.362 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:02:40,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:40,418.418 INFO    ] No camera update needed
[2026-08-25 16:02:40,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:02:40,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:02:40,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:02:40,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:02:42,473.473 INFO    ] ================================================
[2026-08-25 16:02:42,489.489 INFO    ] Launching Daemon at Tue Aug 25 16:02:42 IST 2026
[2026-08-25 16:02:42,501.501 INFO    ] ================================================
[2026-08-25 16:02:43,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:02:43
[2026-08-25 16:02:43,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:02:43,959.959 INFO    ] Initializing speech engine...
[2026-08-25 16:02:43,967.967 INFO    ] 2026-08-25 16:02:43
[2026-08-25 16:02:44,225.225 INFO    ] 2026-08-25 16:02:44
[2026-08-25 16:02:44,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:02:44,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:02:44,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:02:44,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:02:44,708.708 INFO    ] time= 25/08/2026 16:02:44
[2026-08-25 16:02:44,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:02:44,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:02:44,911.911 INFO    ] No existing commands found in stream
[2026-08-25 16:02:49,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:02:49,936.936 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 16:02:53,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:02:53,688.688 INFO    ] Checking for system updates...
[2026-08-25 16:02:53,723.723 INFO    ] 200
[2026-08-25 16:02:53,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:53,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:53,782.782 INFO    ] No update needed
[2026-08-25 16:02:53,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 16:02:53,822.822 INFO    ] 200
[2026-08-25 16:02:53,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:02:53,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:02:53,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:02:53,931.931 INFO    ] No camera update needed
[2026-08-25 16:02:53,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:02:53,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:02:53,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:02:53,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:02:55,987.987 INFO    ] ================================================
[2026-08-25 16:02:56,002.002 INFO    ] Launching Daemon at Tue Aug 25 16:02:55 IST 2026
[2026-08-25 16:02:56,013.013 INFO    ] ================================================
[2026-08-25 16:02:56,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:02:56
[2026-08-25 16:02:57,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:02:57,617.617 INFO    ] Initializing speech engine...
[2026-08-25 16:02:57,625.625 INFO    ] 2026-08-25 16:02:57
[2026-08-25 16:02:57,928.928 INFO    ] 2026-08-25 16:02:57
[2026-08-25 16:02:58,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:02:58,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:02:58,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:02:58,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:02:58,441.441 INFO    ] time= 25/08/2026 16:02:58
[2026-08-25 16:02:58,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:02:58,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:02:58,593.593 INFO    ] No existing commands found in stream
[2026-08-25 16:03:03,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:03:03,614.614 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 16:03:06,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:03:06,380.380 INFO    ] Checking for system updates...
[2026-08-25 16:03:06,417.417 INFO    ] 200
[2026-08-25 16:03:06,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:06,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:03:06,481.481 INFO    ] No update needed
[2026-08-25 16:03:06,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 16:03:06,518.518 INFO    ] 200
[2026-08-25 16:03:06,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:06,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:03:06,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:03:06,615.615 INFO    ] No camera update needed
[2026-08-25 16:03:06,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:03:06,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:03:06,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:03:06,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:03:08,673.673 INFO    ] ================================================
[2026-08-25 16:03:08,688.688 INFO    ] Launching Daemon at Tue Aug 25 16:03:08 IST 2026
[2026-08-25 16:03:08,698.698 INFO    ] ================================================
[2026-08-25 16:03:09,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:03:09
[2026-08-25 16:03:09,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:03:10,092.092 INFO    ] Initializing speech engine...
[2026-08-25 16:03:10,107.107 INFO    ] 2026-08-25 16:03:10
[2026-08-25 16:03:10,371.371 INFO    ] 2026-08-25 16:03:10
[2026-08-25 16:03:10,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:03:10,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:03:10,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:03:10,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:03:10,839.839 INFO    ] time= 25/08/2026 16:03:10
[2026-08-25 16:03:10,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:03:10,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:03:11,057.057 INFO    ] No existing commands found in stream
[2026-08-25 16:03:16,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:03:16,082.082 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 16:03:18,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:03:18,818.818 INFO    ] Checking for system updates...
[2026-08-25 16:03:18,858.858 INFO    ] 200
[2026-08-25 16:03:18,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:18,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:03:18,921.921 INFO    ] No update needed
[2026-08-25 16:03:18,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 16:03:18,957.957 INFO    ] 200
[2026-08-25 16:03:18,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:19,002.002 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:03:19,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:03:19,063.063 INFO    ] No camera update needed
[2026-08-25 16:03:19,065.065 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:03:19,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:03:19,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:03:19,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:03:21,117.117 INFO    ] ================================================
[2026-08-25 16:03:21,132.132 INFO    ] Launching Daemon at Tue Aug 25 16:03:21 IST 2026
[2026-08-25 16:03:21,143.143 INFO    ] ================================================
[2026-08-25 16:03:21,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:03:21
[2026-08-25 16:03:22,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:03:22,534.534 INFO    ] Initializing speech engine...
[2026-08-25 16:03:22,543.543 INFO    ] 2026-08-25 16:03:22
[2026-08-25 16:03:22,816.816 INFO    ] 2026-08-25 16:03:22
[2026-08-25 16:03:22,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:03:23,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:03:23,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:03:23,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:03:23,282.282 INFO    ] time= 25/08/2026 16:03:23
[2026-08-25 16:03:23,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:03:23,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:03:23,518.518 INFO    ] No existing commands found in stream
[2026-08-25 16:03:28,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:03:28,546.546 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 16:03:32,377.377 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:03:32,380.380 INFO    ] Checking for system updates...
[2026-08-25 16:03:32,420.420 INFO    ] 200
[2026-08-25 16:03:32,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:32,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:03:32,491.491 INFO    ] No update needed
[2026-08-25 16:03:32,494.494 INFO    ] Checking for camera pi updates...
[2026-08-25 16:03:32,530.530 INFO    ] 200
[2026-08-25 16:03:32,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:32,586.586 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:03:32,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:03:32,648.648 INFO    ] No camera update needed
[2026-08-25 16:03:32,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:03:32,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:03:32,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:03:32,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:03:34,710.710 INFO    ] ================================================
[2026-08-25 16:03:34,726.726 INFO    ] Launching Daemon at Tue Aug 25 16:03:34 IST 2026
[2026-08-25 16:03:34,737.737 INFO    ] ================================================
[2026-08-25 16:03:35,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:03:35
[2026-08-25 16:03:35,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:03:36,298.298 INFO    ] Initializing speech engine...
[2026-08-25 16:03:36,310.310 INFO    ] 2026-08-25 16:03:36
[2026-08-25 16:03:36,579.579 INFO    ] 2026-08-25 16:03:36
[2026-08-25 16:03:36,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:03:36,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:03:36,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:03:37,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:03:37,055.055 INFO    ] time= 25/08/2026 16:03:37
[2026-08-25 16:03:37,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:03:37,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:03:37,283.283 INFO    ] No existing commands found in stream
[2026-08-25 16:03:42,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:03:42,316.316 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 16:03:44,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:03:44,931.931 INFO    ] Checking for system updates...
[2026-08-25 16:03:44,973.973 INFO    ] 200
[2026-08-25 16:03:44,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:45,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:03:45,040.040 INFO    ] No update needed
[2026-08-25 16:03:45,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 16:03:45,082.082 INFO    ] 200
[2026-08-25 16:03:45,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:45,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:03:45,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:03:45,178.178 INFO    ] No camera update needed
[2026-08-25 16:03:45,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:03:45,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:03:45,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:03:45,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:03:47,238.238 INFO    ] ================================================
[2026-08-25 16:03:47,254.254 INFO    ] Launching Daemon at Tue Aug 25 16:03:47 IST 2026
[2026-08-25 16:03:47,265.265 INFO    ] ================================================
[2026-08-25 16:03:47,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:03:47
[2026-08-25 16:03:48,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:03:48,700.700 INFO    ] Initializing speech engine...
[2026-08-25 16:03:48,707.707 INFO    ] 2026-08-25 16:03:48
[2026-08-25 16:03:49,009.009 INFO    ] 2026-08-25 16:03:48
[2026-08-25 16:03:49,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:03:49,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:03:49,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:03:49,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:03:49,400.400 INFO    ] time= 25/08/2026 16:03:49
[2026-08-25 16:03:49,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:03:49,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:03:49,524.524 INFO    ] No existing commands found in stream
[2026-08-25 16:03:54,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:03:54,540.540 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 16:03:55,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:03:55,369.369 INFO    ] Checking for system updates...
[2026-08-25 16:03:55,404.404 INFO    ] 200
[2026-08-25 16:03:55,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:55,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:03:55,470.470 INFO    ] No update needed
[2026-08-25 16:03:55,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 16:03:55,505.505 INFO    ] 200
[2026-08-25 16:03:55,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:03:55,554.554 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:03:55,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:03:55,603.603 INFO    ] No camera update needed
[2026-08-25 16:03:55,606.606 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:03:55,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:03:55,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:03:55,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:03:57,658.658 INFO    ] ================================================
[2026-08-25 16:03:57,673.673 INFO    ] Launching Daemon at Tue Aug 25 16:03:57 IST 2026
[2026-08-25 16:03:57,684.684 INFO    ] ================================================
[2026-08-25 16:03:58,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:03:58
[2026-08-25 16:03:59,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:03:59,365.365 INFO    ] Initializing speech engine...
[2026-08-25 16:03:59,375.375 INFO    ] 2026-08-25 16:03:59
[2026-08-25 16:03:59,668.668 INFO    ] 2026-08-25 16:03:59
[2026-08-25 16:03:59,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:04:00,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:04:00,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:04:00,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:04:00,215.215 INFO    ] time= 25/08/2026 16:04:00
[2026-08-25 16:04:00,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:04:00,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:04:00,376.376 INFO    ] No existing commands found in stream
[2026-08-25 16:04:05,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:04:05,415.415 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 16:04:06,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:04:06,647.647 INFO    ] Checking for system updates...
[2026-08-25 16:04:06,683.683 INFO    ] 200
[2026-08-25 16:04:06,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:06,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:04:06,748.748 INFO    ] No update needed
[2026-08-25 16:04:06,750.750 INFO    ] Checking for camera pi updates...
[2026-08-25 16:04:06,783.783 INFO    ] 200
[2026-08-25 16:04:06,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:06,831.831 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:04:06,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:04:06,884.884 INFO    ] No camera update needed
[2026-08-25 16:04:06,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:04:06,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:04:06,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:04:06,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:04:08,939.939 INFO    ] ================================================
[2026-08-25 16:04:08,954.954 INFO    ] Launching Daemon at Tue Aug 25 16:04:08 IST 2026
[2026-08-25 16:04:08,965.965 INFO    ] ================================================
[2026-08-25 16:04:09,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:04:09
[2026-08-25 16:04:10,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:04:10,601.601 INFO    ] Initializing speech engine...
[2026-08-25 16:04:10,609.609 INFO    ] 2026-08-25 16:04:10
[2026-08-25 16:04:10,910.910 INFO    ] 2026-08-25 16:04:10
[2026-08-25 16:04:10,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:04:11,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:04:11,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:04:11,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:04:11,424.424 INFO    ] time= 25/08/2026 16:04:11
[2026-08-25 16:04:11,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:04:11,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:04:11,566.566 INFO    ] No existing commands found in stream
[2026-08-25 16:04:16,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:04:16,596.596 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 16:04:18,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:04:18,598.598 INFO    ] Checking for system updates...
[2026-08-25 16:04:18,634.634 INFO    ] 200
[2026-08-25 16:04:18,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:18,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:04:18,695.695 INFO    ] No update needed
[2026-08-25 16:04:18,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 16:04:18,731.731 INFO    ] 200
[2026-08-25 16:04:18,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:18,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:04:18,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:04:18,928.928 INFO    ] No camera update needed
[2026-08-25 16:04:18,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:04:18,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:04:18,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:04:18,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:04:20,987.987 INFO    ] ================================================
[2026-08-25 16:04:21,003.003 INFO    ] Launching Daemon at Tue Aug 25 16:04:20 IST 2026
[2026-08-25 16:04:21,014.014 INFO    ] ================================================
[2026-08-25 16:04:21,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:04:21
[2026-08-25 16:04:22,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:04:22,539.539 INFO    ] Initializing speech engine...
[2026-08-25 16:04:22,548.548 INFO    ] 2026-08-25 16:04:22
[2026-08-25 16:04:22,862.862 INFO    ] 2026-08-25 16:04:22
[2026-08-25 16:04:22,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:04:23,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:04:23,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:04:23,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:04:23,265.265 INFO    ] time= 25/08/2026 16:04:23
[2026-08-25 16:04:23,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:04:23,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:04:23,402.402 INFO    ] No existing commands found in stream
[2026-08-25 16:04:28,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:04:28,419.419 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 16:04:31,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:04:31,121.121 INFO    ] Checking for system updates...
[2026-08-25 16:04:31,158.158 INFO    ] 200
[2026-08-25 16:04:31,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:31,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:04:31,217.217 INFO    ] No update needed
[2026-08-25 16:04:31,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 16:04:31,259.259 INFO    ] 200
[2026-08-25 16:04:31,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:31,303.303 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:04:31,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:04:31,384.384 INFO    ] No camera update needed
[2026-08-25 16:04:31,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:04:31,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:04:31,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:04:31,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:04:33,456.456 INFO    ] ================================================
[2026-08-25 16:04:33,471.471 INFO    ] Launching Daemon at Tue Aug 25 16:04:33 IST 2026
[2026-08-25 16:04:33,481.481 INFO    ] ================================================
[2026-08-25 16:04:34,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:04:34
[2026-08-25 16:04:34,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:04:34,911.911 INFO    ] Initializing speech engine...
[2026-08-25 16:04:34,920.920 INFO    ] 2026-08-25 16:04:34
[2026-08-25 16:04:35,169.169 INFO    ] 2026-08-25 16:04:35
[2026-08-25 16:04:35,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:04:35,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:04:35,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:04:35,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:04:35,662.662 INFO    ] time= 25/08/2026 16:04:35
[2026-08-25 16:04:35,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:04:35,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:04:35,835.835 INFO    ] No existing commands found in stream
[2026-08-25 16:04:40,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:04:40,862.862 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 16:04:44,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:04:44,224.224 INFO    ] Checking for system updates...
[2026-08-25 16:04:44,267.267 INFO    ] 200
[2026-08-25 16:04:44,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:44,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:04:44,335.335 INFO    ] No update needed
[2026-08-25 16:04:44,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 16:04:44,372.372 INFO    ] 200
[2026-08-25 16:04:44,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:44,420.420 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:04:44,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:04:44,474.474 INFO    ] No camera update needed
[2026-08-25 16:04:44,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:04:44,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:04:44,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:04:44,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:04:46,532.532 INFO    ] ================================================
[2026-08-25 16:04:46,547.547 INFO    ] Launching Daemon at Tue Aug 25 16:04:46 IST 2026
[2026-08-25 16:04:46,557.557 INFO    ] ================================================
[2026-08-25 16:04:47,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:04:47
[2026-08-25 16:04:47,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:04:48,011.011 INFO    ] Initializing speech engine...
[2026-08-25 16:04:48,018.018 INFO    ] 2026-08-25 16:04:48
[2026-08-25 16:04:48,264.264 INFO    ] 2026-08-25 16:04:48
[2026-08-25 16:04:48,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:04:48,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:04:48,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:04:48,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:04:48,771.771 INFO    ] time= 25/08/2026 16:04:48
[2026-08-25 16:04:48,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:04:48,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:04:48,968.968 INFO    ] No existing commands found in stream
[2026-08-25 16:04:53,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:04:53,987.987 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 16:04:56,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:04:56,950.950 INFO    ] Checking for system updates...
[2026-08-25 16:04:56,989.989 INFO    ] 200
[2026-08-25 16:04:56,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:57,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:04:57,047.047 INFO    ] No update needed
[2026-08-25 16:04:57,050.050 INFO    ] Checking for camera pi updates...
[2026-08-25 16:04:57,084.084 INFO    ] 200
[2026-08-25 16:04:57,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:04:57,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:04:57,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:04:57,173.173 INFO    ] No camera update needed
[2026-08-25 16:04:57,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:04:57,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:04:57,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:04:57,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:04:59,228.228 INFO    ] ================================================
[2026-08-25 16:04:59,243.243 INFO    ] Launching Daemon at Tue Aug 25 16:04:59 IST 2026
[2026-08-25 16:04:59,253.253 INFO    ] ================================================
[2026-08-25 16:04:59,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:04:59
[2026-08-25 16:05:00,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:05:00,717.717 INFO    ] Initializing speech engine...
[2026-08-25 16:05:00,725.725 INFO    ] 2026-08-25 16:05:00
[2026-08-25 16:05:00,970.970 INFO    ] 2026-08-25 16:05:00
[2026-08-25 16:05:01,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:05:01,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:05:01,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:05:01,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:05:01,385.385 INFO    ] time= 25/08/2026 16:05:01
[2026-08-25 16:05:01,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:05:01,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:05:01,592.592 INFO    ] No existing commands found in stream
[2026-08-25 16:05:06,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:05:06,600.600 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 16:05:07,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:05:07,853.853 INFO    ] Checking for system updates...
[2026-08-25 16:05:07,890.890 INFO    ] 200
[2026-08-25 16:05:07,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:07,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:05:07,949.949 INFO    ] No update needed
[2026-08-25 16:05:07,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 16:05:07,988.988 INFO    ] 200
[2026-08-25 16:05:07,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:08,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:05:08,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:05:08,094.094 INFO    ] No camera update needed
[2026-08-25 16:05:08,096.096 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:05:08,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:05:08,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:05:08,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:05:10,148.148 INFO    ] ================================================
[2026-08-25 16:05:10,163.163 INFO    ] Launching Daemon at Tue Aug 25 16:05:10 IST 2026
[2026-08-25 16:05:10,173.173 INFO    ] ================================================
[2026-08-25 16:05:10,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:05:10
[2026-08-25 16:05:11,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:05:11,626.626 INFO    ] Initializing speech engine...
[2026-08-25 16:05:11,633.633 INFO    ] 2026-08-25 16:05:11
[2026-08-25 16:05:11,892.892 INFO    ] 2026-08-25 16:05:11
[2026-08-25 16:05:11,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:05:12,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:05:12,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:05:12,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:05:12,357.357 INFO    ] time= 25/08/2026 16:05:12
[2026-08-25 16:05:12,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:05:12,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:05:12,576.576 INFO    ] No existing commands found in stream
[2026-08-25 16:05:17,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:05:17,603.603 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 16:05:18,435.435 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:05:18,438.438 INFO    ] Checking for system updates...
[2026-08-25 16:05:18,474.474 INFO    ] 200
[2026-08-25 16:05:18,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:18,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:05:18,531.531 INFO    ] No update needed
[2026-08-25 16:05:18,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 16:05:18,574.574 INFO    ] 200
[2026-08-25 16:05:18,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:18,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:05:18,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:05:18,680.680 INFO    ] No camera update needed
[2026-08-25 16:05:18,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:05:18,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:05:18,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:05:18,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:05:20,738.738 INFO    ] ================================================
[2026-08-25 16:05:20,753.753 INFO    ] Launching Daemon at Tue Aug 25 16:05:20 IST 2026
[2026-08-25 16:05:20,764.764 INFO    ] ================================================
[2026-08-25 16:05:21,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:05:21
[2026-08-25 16:05:22,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:05:22,371.371 INFO    ] Initializing speech engine...
[2026-08-25 16:05:22,384.384 INFO    ] 2026-08-25 16:05:22
[2026-08-25 16:05:22,693.693 INFO    ] 2026-08-25 16:05:22
[2026-08-25 16:05:22,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:05:22,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:05:23,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:05:23,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:05:23,213.213 INFO    ] time= 25/08/2026 16:05:23
[2026-08-25 16:05:23,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:05:23,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:05:23,362.362 INFO    ] No existing commands found in stream
[2026-08-25 16:05:28,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:05:28,400.400 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 16:05:29,497.497 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:05:29,500.500 INFO    ] Checking for system updates...
[2026-08-25 16:05:29,539.539 INFO    ] 200
[2026-08-25 16:05:29,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:29,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:05:29,599.599 INFO    ] No update needed
[2026-08-25 16:05:29,601.601 INFO    ] Checking for camera pi updates...
[2026-08-25 16:05:29,636.636 INFO    ] 200
[2026-08-25 16:05:29,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:29,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:05:29,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:05:29,739.739 INFO    ] No camera update needed
[2026-08-25 16:05:29,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:05:29,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:05:29,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:05:29,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:05:31,797.797 INFO    ] ================================================
[2026-08-25 16:05:31,814.814 INFO    ] Launching Daemon at Tue Aug 25 16:05:31 IST 2026
[2026-08-25 16:05:31,826.826 INFO    ] ================================================
[2026-08-25 16:05:32,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:05:32
[2026-08-25 16:05:33,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:05:33,497.497 INFO    ] Initializing speech engine...
[2026-08-25 16:05:33,509.509 INFO    ] 2026-08-25 16:05:33
[2026-08-25 16:05:33,784.784 INFO    ] 2026-08-25 16:05:33
[2026-08-25 16:05:33,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:05:34,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:05:34,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:05:34,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:05:34,317.317 INFO    ] time= 25/08/2026 16:05:34
[2026-08-25 16:05:34,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:05:34,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:05:34,480.480 INFO    ] No existing commands found in stream
[2026-08-25 16:05:39,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:05:39,509.509 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 16:05:41,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:05:41,612.612 INFO    ] Checking for system updates...
[2026-08-25 16:05:41,649.649 INFO    ] 200
[2026-08-25 16:05:41,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:41,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:05:41,718.718 INFO    ] No update needed
[2026-08-25 16:05:41,721.721 INFO    ] Checking for camera pi updates...
[2026-08-25 16:05:41,756.756 INFO    ] 200
[2026-08-25 16:05:41,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:41,804.804 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:05:41,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:05:41,860.860 INFO    ] No camera update needed
[2026-08-25 16:05:41,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:05:41,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:05:41,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:05:41,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:05:43,917.917 INFO    ] ================================================
[2026-08-25 16:05:43,932.932 INFO    ] Launching Daemon at Tue Aug 25 16:05:43 IST 2026
[2026-08-25 16:05:43,943.943 INFO    ] ================================================
[2026-08-25 16:05:44,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:05:44
[2026-08-25 16:05:45,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:05:45,556.556 INFO    ] Initializing speech engine...
[2026-08-25 16:05:45,567.567 INFO    ] 2026-08-25 16:05:45
[2026-08-25 16:05:45,843.843 INFO    ] 2026-08-25 16:05:45
[2026-08-25 16:05:45,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:05:46,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:05:46,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:05:46,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:05:46,333.333 INFO    ] time= 25/08/2026 16:05:46
[2026-08-25 16:05:46,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:05:46,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:05:46,546.546 INFO    ] No existing commands found in stream
[2026-08-25 16:05:51,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:05:51,564.564 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 16:05:56,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:05:56,042.042 INFO    ] Checking for system updates...
[2026-08-25 16:05:56,079.079 INFO    ] 200
[2026-08-25 16:05:56,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:56,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:05:56,137.137 INFO    ] No update needed
[2026-08-25 16:05:56,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 16:05:56,174.174 INFO    ] 200
[2026-08-25 16:05:56,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:05:56,223.223 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:05:56,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:05:56,286.286 INFO    ] No camera update needed
[2026-08-25 16:05:56,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:05:56,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:05:56,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:05:56,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:05:58,342.342 INFO    ] ================================================
[2026-08-25 16:05:58,358.358 INFO    ] Launching Daemon at Tue Aug 25 16:05:58 IST 2026
[2026-08-25 16:05:58,369.369 INFO    ] ================================================
[2026-08-25 16:05:58,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:05:58
[2026-08-25 16:05:59,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:05:59,827.827 INFO    ] Initializing speech engine...
[2026-08-25 16:05:59,832.832 INFO    ] 2026-08-25 16:05:59
[2026-08-25 16:06:00,093.093 INFO    ] 2026-08-25 16:06:00
[2026-08-25 16:06:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:06:00,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:06:00,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:06:00,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:06:00,577.577 INFO    ] time= 25/08/2026 16:06:00
[2026-08-25 16:06:00,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:06:00,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:06:00,781.781 INFO    ] No existing commands found in stream
[2026-08-25 16:06:05,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:06:05,804.804 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 16:06:09,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:06:09,068.068 INFO    ] Checking for system updates...
[2026-08-25 16:06:09,126.126 INFO    ] 200
[2026-08-25 16:06:09,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:09,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:06:09,183.183 INFO    ] No update needed
[2026-08-25 16:06:09,185.185 INFO    ] Checking for camera pi updates...
[2026-08-25 16:06:09,219.219 INFO    ] 200
[2026-08-25 16:06:09,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:09,264.264 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:06:09,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:06:09,313.313 INFO    ] No camera update needed
[2026-08-25 16:06:09,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:06:09,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:06:09,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:06:09,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:06:11,373.373 INFO    ] ================================================
[2026-08-25 16:06:11,389.389 INFO    ] Launching Daemon at Tue Aug 25 16:06:11 IST 2026
[2026-08-25 16:06:11,401.401 INFO    ] ================================================
[2026-08-25 16:06:11,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:06:11
[2026-08-25 16:06:12,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:06:12,795.795 INFO    ] Initializing speech engine...
[2026-08-25 16:06:12,803.803 INFO    ] 2026-08-25 16:06:12
[2026-08-25 16:06:13,078.078 INFO    ] 2026-08-25 16:06:13
[2026-08-25 16:06:13,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:06:13,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:06:13,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:06:13,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:06:13,528.528 INFO    ] time= 25/08/2026 16:06:13
[2026-08-25 16:06:13,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:06:13,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:06:13,801.801 INFO    ] No existing commands found in stream
[2026-08-25 16:06:18,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:06:18,821.821 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 16:06:21,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:06:21,842.842 INFO    ] Checking for system updates...
[2026-08-25 16:06:21,878.878 INFO    ] 200
[2026-08-25 16:06:21,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:21,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:06:21,935.935 INFO    ] No update needed
[2026-08-25 16:06:21,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 16:06:21,971.971 INFO    ] 200
[2026-08-25 16:06:21,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:22,013.013 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:06:22,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:06:22,160.160 INFO    ] No camera update needed
[2026-08-25 16:06:22,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:06:22,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:06:22,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:06:22,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:06:24,216.216 INFO    ] ================================================
[2026-08-25 16:06:24,231.231 INFO    ] Launching Daemon at Tue Aug 25 16:06:24 IST 2026
[2026-08-25 16:06:24,242.242 INFO    ] ================================================
[2026-08-25 16:06:24,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:06:24
[2026-08-25 16:06:25,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:06:25,647.647 INFO    ] Initializing speech engine...
[2026-08-25 16:06:25,666.666 INFO    ] 2026-08-25 16:06:25
[2026-08-25 16:06:25,925.925 INFO    ] 2026-08-25 16:06:25
[2026-08-25 16:06:25,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:06:26,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:06:26,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:06:26,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:06:26,364.364 INFO    ] time= 25/08/2026 16:06:26
[2026-08-25 16:06:26,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:06:26,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:06:26,623.623 INFO    ] No existing commands found in stream
[2026-08-25 16:06:31,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:06:31,649.649 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 16:06:32,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:06:32,319.319 INFO    ] Checking for system updates...
[2026-08-25 16:06:32,359.359 INFO    ] 200
[2026-08-25 16:06:32,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:32,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:06:32,424.424 INFO    ] No update needed
[2026-08-25 16:06:32,427.427 INFO    ] Checking for camera pi updates...
[2026-08-25 16:06:32,463.463 INFO    ] 200
[2026-08-25 16:06:32,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:32,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:06:32,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:06:32,576.576 INFO    ] No camera update needed
[2026-08-25 16:06:32,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:06:32,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:06:32,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:06:32,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:06:34,637.637 INFO    ] ================================================
[2026-08-25 16:06:34,652.652 INFO    ] Launching Daemon at Tue Aug 25 16:06:34 IST 2026
[2026-08-25 16:06:34,663.663 INFO    ] ================================================
[2026-08-25 16:06:35,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:06:35
[2026-08-25 16:06:35,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:06:36,255.255 INFO    ] Initializing speech engine...
[2026-08-25 16:06:36,269.269 INFO    ] 2026-08-25 16:06:36
[2026-08-25 16:06:36,557.557 INFO    ] 2026-08-25 16:06:36
[2026-08-25 16:06:36,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:06:36,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:06:36,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:06:37,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:06:37,100.100 INFO    ] time= 25/08/2026 16:06:37
[2026-08-25 16:06:37,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:06:37,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:06:37,271.271 INFO    ] No existing commands found in stream
[2026-08-25 16:06:42,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:06:42,305.305 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 16:06:45,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:06:45,589.589 INFO    ] Checking for system updates...
[2026-08-25 16:06:45,626.626 INFO    ] 200
[2026-08-25 16:06:45,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:45,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:06:45,684.684 INFO    ] No update needed
[2026-08-25 16:06:45,686.686 INFO    ] Checking for camera pi updates...
[2026-08-25 16:06:45,719.719 INFO    ] 200
[2026-08-25 16:06:45,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:45,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:06:45,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:06:45,828.828 INFO    ] No camera update needed
[2026-08-25 16:06:45,830.830 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:06:45,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:06:45,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:06:45,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:06:47,882.882 INFO    ] ================================================
[2026-08-25 16:06:47,898.898 INFO    ] Launching Daemon at Tue Aug 25 16:06:47 IST 2026
[2026-08-25 16:06:47,909.909 INFO    ] ================================================
[2026-08-25 16:06:48,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:06:48
[2026-08-25 16:06:49,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:06:49,445.445 INFO    ] Initializing speech engine...
[2026-08-25 16:06:49,459.459 INFO    ] 2026-08-25 16:06:49
[2026-08-25 16:06:49,769.769 INFO    ] 2026-08-25 16:06:49
[2026-08-25 16:06:49,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:06:50,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:06:50,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:06:50,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:06:50,299.299 INFO    ] time= 25/08/2026 16:06:50
[2026-08-25 16:06:50,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:06:50,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:06:50,459.459 INFO    ] No existing commands found in stream
[2026-08-25 16:06:55,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:06:55,488.488 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 16:06:57,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:06:57,789.789 INFO    ] Checking for system updates...
[2026-08-25 16:06:57,826.826 INFO    ] 200
[2026-08-25 16:06:57,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:57,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:06:57,885.885 INFO    ] No update needed
[2026-08-25 16:06:57,888.888 INFO    ] Checking for camera pi updates...
[2026-08-25 16:06:57,923.923 INFO    ] 200
[2026-08-25 16:06:57,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:06:57,967.967 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:06:58,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:06:58,015.015 INFO    ] No camera update needed
[2026-08-25 16:06:58,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:06:58,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:06:58,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:06:58,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:07:00,070.070 INFO    ] ================================================
[2026-08-25 16:07:00,086.086 INFO    ] Launching Daemon at Tue Aug 25 16:07:00 IST 2026
[2026-08-25 16:07:00,097.097 INFO    ] ================================================
[2026-08-25 16:07:00,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:07:00
[2026-08-25 16:07:01,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:07:01,553.553 INFO    ] Initializing speech engine...
[2026-08-25 16:07:01,569.569 INFO    ] 2026-08-25 16:07:01
[2026-08-25 16:07:01,997.997 INFO    ] 2026-08-25 16:07:01
[2026-08-25 16:07:02,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:07:02,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:07:02,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:07:02,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:07:02,419.419 INFO    ] time= 25/08/2026 16:07:02
[2026-08-25 16:07:02,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:07:02,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:07:02,590.590 INFO    ] No existing commands found in stream
[2026-08-25 16:07:07,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:07:07,624.624 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 16:07:10,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:07:10,906.906 INFO    ] Checking for system updates...
[2026-08-25 16:07:10,942.942 INFO    ] 200
[2026-08-25 16:07:10,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:11,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:07:11,005.005 INFO    ] No update needed
[2026-08-25 16:07:11,008.008 INFO    ] Checking for camera pi updates...
[2026-08-25 16:07:11,041.041 INFO    ] 200
[2026-08-25 16:07:11,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:11,088.088 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:07:11,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:07:11,137.137 INFO    ] No camera update needed
[2026-08-25 16:07:11,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:07:11,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:07:11,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:07:11,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:07:13,192.192 INFO    ] ================================================
[2026-08-25 16:07:13,207.207 INFO    ] Launching Daemon at Tue Aug 25 16:07:13 IST 2026
[2026-08-25 16:07:13,219.219 INFO    ] ================================================
[2026-08-25 16:07:13,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:07:13
[2026-08-25 16:07:14,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:07:14,676.676 INFO    ] Initializing speech engine...
[2026-08-25 16:07:14,686.686 INFO    ] 2026-08-25 16:07:14
[2026-08-25 16:07:14,932.932 INFO    ] 2026-08-25 16:07:14
[2026-08-25 16:07:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:07:15,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:07:15,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:07:15,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:07:15,373.373 INFO    ] time= 25/08/2026 16:07:15
[2026-08-25 16:07:15,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:07:15,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:07:15,590.590 INFO    ] No existing commands found in stream
[2026-08-25 16:07:20,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:07:20,630.630 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 16:07:21,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:07:21,523.523 INFO    ] Checking for system updates...
[2026-08-25 16:07:21,558.558 INFO    ] 200
[2026-08-25 16:07:21,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:21,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:07:21,618.618 INFO    ] No update needed
[2026-08-25 16:07:21,621.621 INFO    ] Checking for camera pi updates...
[2026-08-25 16:07:21,657.657 INFO    ] 200
[2026-08-25 16:07:21,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:21,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:07:21,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:07:21,747.747 INFO    ] No camera update needed
[2026-08-25 16:07:21,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:07:21,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:07:21,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:07:21,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:07:23,803.803 INFO    ] ================================================
[2026-08-25 16:07:23,818.818 INFO    ] Launching Daemon at Tue Aug 25 16:07:23 IST 2026
[2026-08-25 16:07:23,829.829 INFO    ] ================================================
[2026-08-25 16:07:24,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:07:24
[2026-08-25 16:07:24,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:07:25,257.257 INFO    ] Initializing speech engine...
[2026-08-25 16:07:25,264.264 INFO    ] 2026-08-25 16:07:25
[2026-08-25 16:07:25,544.544 INFO    ] 2026-08-25 16:07:25
[2026-08-25 16:07:25,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:07:25,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:07:25,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:07:25,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:07:25,925.925 INFO    ] time= 25/08/2026 16:07:25
[2026-08-25 16:07:25,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:07:25,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:07:26,117.117 INFO    ] No existing commands found in stream
[2026-08-25 16:07:31,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:07:31,138.138 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 16:07:35,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:07:35,419.419 INFO    ] Checking for system updates...
[2026-08-25 16:07:35,456.456 INFO    ] 200
[2026-08-25 16:07:35,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:35,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:07:35,513.513 INFO    ] No update needed
[2026-08-25 16:07:35,515.515 INFO    ] Checking for camera pi updates...
[2026-08-25 16:07:35,550.550 INFO    ] 200
[2026-08-25 16:07:35,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:35,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:07:35,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:07:35,643.643 INFO    ] No camera update needed
[2026-08-25 16:07:35,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:07:35,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:07:35,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:07:35,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:07:37,699.699 INFO    ] ================================================
[2026-08-25 16:07:37,714.714 INFO    ] Launching Daemon at Tue Aug 25 16:07:37 IST 2026
[2026-08-25 16:07:37,725.725 INFO    ] ================================================
[2026-08-25 16:07:38,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:07:38
[2026-08-25 16:07:38,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:07:39,138.138 INFO    ] Initializing speech engine...
[2026-08-25 16:07:39,147.147 INFO    ] 2026-08-25 16:07:39
[2026-08-25 16:07:39,436.436 INFO    ] 2026-08-25 16:07:39
[2026-08-25 16:07:39,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:07:39,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:07:39,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:07:39,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:07:39,849.849 INFO    ] time= 25/08/2026 16:07:39
[2026-08-25 16:07:39,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:07:39,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:07:39,999.999 INFO    ] No existing commands found in stream
[2026-08-25 16:07:45,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:07:45,037.037 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 16:07:45,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:07:45,910.910 INFO    ] Checking for system updates...
[2026-08-25 16:07:45,945.945 INFO    ] 200
[2026-08-25 16:07:45,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:46,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:07:46,002.002 INFO    ] No update needed
[2026-08-25 16:07:46,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 16:07:46,037.037 INFO    ] 200
[2026-08-25 16:07:46,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:46,080.080 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:07:46,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:07:46,129.129 INFO    ] No camera update needed
[2026-08-25 16:07:46,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:07:46,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:07:46,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:07:46,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:07:48,185.185 INFO    ] ================================================
[2026-08-25 16:07:48,200.200 INFO    ] Launching Daemon at Tue Aug 25 16:07:48 IST 2026
[2026-08-25 16:07:48,211.211 INFO    ] ================================================
[2026-08-25 16:07:48,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:07:48
[2026-08-25 16:07:49,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:07:49,659.659 INFO    ] Initializing speech engine...
[2026-08-25 16:07:49,672.672 INFO    ] 2026-08-25 16:07:49
[2026-08-25 16:07:49,956.956 INFO    ] 2026-08-25 16:07:49
[2026-08-25 16:07:49,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:07:50,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:07:50,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:07:50,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:07:50,368.368 INFO    ] time= 25/08/2026 16:07:50
[2026-08-25 16:07:50,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:07:50,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:07:50,550.550 INFO    ] No existing commands found in stream
[2026-08-25 16:07:55,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:07:55,583.583 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 16:07:58,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:07:58,363.363 INFO    ] Checking for system updates...
[2026-08-25 16:07:58,399.399 INFO    ] 200
[2026-08-25 16:07:58,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:58,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:07:58,456.456 INFO    ] No update needed
[2026-08-25 16:07:58,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 16:07:58,491.491 INFO    ] 200
[2026-08-25 16:07:58,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:07:58,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:07:58,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:07:58,595.595 INFO    ] No camera update needed
[2026-08-25 16:07:58,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:07:58,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:07:58,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:07:58,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:08:00,651.651 INFO    ] ================================================
[2026-08-25 16:08:00,667.667 INFO    ] Launching Daemon at Tue Aug 25 16:08:00 IST 2026
[2026-08-25 16:08:00,678.678 INFO    ] ================================================
[2026-08-25 16:08:01,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:08:01
[2026-08-25 16:08:02,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:08:02,403.403 INFO    ] Initializing speech engine...
[2026-08-25 16:08:02,422.422 INFO    ] 2026-08-25 16:08:02
[2026-08-25 16:08:02,731.731 INFO    ] 2026-08-25 16:08:02
[2026-08-25 16:08:02,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:08:02,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:08:03,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:08:03,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:08:03,270.270 INFO    ] time= 25/08/2026 16:08:03
[2026-08-25 16:08:03,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:08:03,351.351 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:08:03,475.475 INFO    ] No existing commands found in stream
[2026-08-25 16:08:08,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:08:08,500.500 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 16:08:11,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:08:11,440.440 INFO    ] Checking for system updates...
[2026-08-25 16:08:11,475.475 INFO    ] 200
[2026-08-25 16:08:11,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:11,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:11,541.541 INFO    ] No update needed
[2026-08-25 16:08:11,544.544 INFO    ] Checking for camera pi updates...
[2026-08-25 16:08:11,579.579 INFO    ] 200
[2026-08-25 16:08:11,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:11,622.622 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:08:11,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:11,675.675 INFO    ] No camera update needed
[2026-08-25 16:08:11,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:08:11,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:08:11,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:08:11,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:08:13,731.731 INFO    ] ================================================
[2026-08-25 16:08:13,746.746 INFO    ] Launching Daemon at Tue Aug 25 16:08:13 IST 2026
[2026-08-25 16:08:13,756.756 INFO    ] ================================================
[2026-08-25 16:08:14,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:08:14
[2026-08-25 16:08:15,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:08:15,353.353 INFO    ] Initializing speech engine...
[2026-08-25 16:08:15,367.367 INFO    ] 2026-08-25 16:08:15
[2026-08-25 16:08:15,647.647 INFO    ] 2026-08-25 16:08:15
[2026-08-25 16:08:15,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:08:15,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:08:15,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:08:16,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:08:16,107.107 INFO    ] time= 25/08/2026 16:08:16
[2026-08-25 16:08:16,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:08:16,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:08:16,310.310 INFO    ] No existing commands found in stream
[2026-08-25 16:08:21,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:08:21,334.334 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 16:08:23,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:08:23,739.739 INFO    ] Checking for system updates...
[2026-08-25 16:08:23,775.775 INFO    ] 200
[2026-08-25 16:08:23,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:23,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:23,832.832 INFO    ] No update needed
[2026-08-25 16:08:23,835.835 INFO    ] Checking for camera pi updates...
[2026-08-25 16:08:23,868.868 INFO    ] 200
[2026-08-25 16:08:23,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:23,924.924 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:08:23,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:23,975.975 INFO    ] No camera update needed
[2026-08-25 16:08:23,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:08:23,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:08:23,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:08:23,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:08:26,030.030 INFO    ] ================================================
[2026-08-25 16:08:26,045.045 INFO    ] Launching Daemon at Tue Aug 25 16:08:26 IST 2026
[2026-08-25 16:08:26,055.055 INFO    ] ================================================
[2026-08-25 16:08:26,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:08:26
[2026-08-25 16:08:27,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:08:27,481.481 INFO    ] Initializing speech engine...
[2026-08-25 16:08:27,490.490 INFO    ] 2026-08-25 16:08:27
[2026-08-25 16:08:27,752.752 INFO    ] 2026-08-25 16:08:27
[2026-08-25 16:08:27,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:08:27,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:08:28,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:08:28,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:08:28,163.163 INFO    ] time= 25/08/2026 16:08:28
[2026-08-25 16:08:28,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:08:28,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:08:28,259.259 INFO    ] No existing commands found in stream
[2026-08-25 16:08:33,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:08:33,292.292 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 16:08:34,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:08:34,336.336 INFO    ] Checking for system updates...
[2026-08-25 16:08:34,372.372 INFO    ] 200
[2026-08-25 16:08:34,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:34,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:34,430.430 INFO    ] No update needed
[2026-08-25 16:08:34,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 16:08:34,468.468 INFO    ] 200
[2026-08-25 16:08:34,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:34,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:08:34,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:34,558.558 INFO    ] No camera update needed
[2026-08-25 16:08:34,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:08:34,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:08:34,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:08:34,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:08:36,613.613 INFO    ] ================================================
[2026-08-25 16:08:36,629.629 INFO    ] Launching Daemon at Tue Aug 25 16:08:36 IST 2026
[2026-08-25 16:08:36,640.640 INFO    ] ================================================
[2026-08-25 16:08:37,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:08:37
[2026-08-25 16:08:37,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:08:38,177.177 INFO    ] Initializing speech engine...
[2026-08-25 16:08:38,190.190 INFO    ] 2026-08-25 16:08:38
[2026-08-25 16:08:38,468.468 INFO    ] 2026-08-25 16:08:38
[2026-08-25 16:08:38,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:08:38,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:08:38,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:08:38,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:08:38,999.999 INFO    ] time= 25/08/2026 16:08:38
[2026-08-25 16:08:39,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:08:39,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:08:39,189.189 INFO    ] No existing commands found in stream
[2026-08-25 16:08:44,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:08:44,218.218 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 16:08:45,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:08:45,307.307 INFO    ] Checking for system updates...
[2026-08-25 16:08:45,342.342 INFO    ] 200
[2026-08-25 16:08:45,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:45,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:08:45,399.399 INFO    ] No update needed
[2026-08-25 16:08:45,401.401 INFO    ] Checking for camera pi updates...
[2026-08-25 16:08:45,435.435 INFO    ] 200
[2026-08-25 16:08:45,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:45,478.478 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:08:45,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:08:45,530.530 INFO    ] No camera update needed
[2026-08-25 16:08:45,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:08:45,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:08:45,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:08:45,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:08:47,585.585 INFO    ] ================================================
[2026-08-25 16:08:47,600.600 INFO    ] Launching Daemon at Tue Aug 25 16:08:47 IST 2026
[2026-08-25 16:08:47,617.617 INFO    ] ================================================
[2026-08-25 16:08:48,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:08:48
[2026-08-25 16:08:48,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:08:49,024.024 INFO    ] Initializing speech engine...
[2026-08-25 16:08:49,053.053 INFO    ] 2026-08-25 16:08:49
[2026-08-25 16:08:49,319.319 INFO    ] 2026-08-25 16:08:49
[2026-08-25 16:08:49,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:08:49,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:08:49,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:08:49,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:08:49,730.730 INFO    ] time= 25/08/2026 16:08:49
[2026-08-25 16:08:49,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:08:49,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:08:49,918.918 INFO    ] No existing commands found in stream
[2026-08-25 16:08:54,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:08:54,946.946 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 16:08:55,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:08:55,417.417 INFO    ] Checking for system updates...
[2026-08-25 16:08:55,452.452 INFO    ] 200
[2026-08-25 16:08:55,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:55,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:55,511.511 INFO    ] No update needed
[2026-08-25 16:08:55,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 16:08:55,550.550 INFO    ] 200
[2026-08-25 16:08:55,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:08:55,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:08:55,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:08:55,640.640 INFO    ] No camera update needed
[2026-08-25 16:08:55,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:08:55,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:08:55,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:08:55,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:08:57,694.694 INFO    ] ================================================
[2026-08-25 16:08:57,709.709 INFO    ] Launching Daemon at Tue Aug 25 16:08:57 IST 2026
[2026-08-25 16:08:57,720.720 INFO    ] ================================================
[2026-08-25 16:08:58,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:08:58
[2026-08-25 16:08:58,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:08:59,217.217 INFO    ] Initializing speech engine...
[2026-08-25 16:08:59,226.226 INFO    ] 2026-08-25 16:08:59
[2026-08-25 16:08:59,482.482 INFO    ] 2026-08-25 16:08:59
[2026-08-25 16:08:59,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:08:59,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:08:59,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:08:59,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:08:59,972.972 INFO    ] time= 25/08/2026 16:08:59
[2026-08-25 16:09:00,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:09:00,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:09:00,169.169 INFO    ] No existing commands found in stream
[2026-08-25 16:09:05,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:09:05,196.196 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 16:09:07,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:09:07,104.104 INFO    ] Checking for system updates...
[2026-08-25 16:09:07,140.140 INFO    ] 200
[2026-08-25 16:09:07,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:07,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:09:07,218.218 INFO    ] No update needed
[2026-08-25 16:09:07,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 16:09:07,254.254 INFO    ] 200
[2026-08-25 16:09:07,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:07,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:09:07,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:09:07,355.355 INFO    ] No camera update needed
[2026-08-25 16:09:07,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:09:07,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:09:07,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:09:07,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:09:09,410.410 INFO    ] ================================================
[2026-08-25 16:09:09,425.425 INFO    ] Launching Daemon at Tue Aug 25 16:09:09 IST 2026
[2026-08-25 16:09:09,435.435 INFO    ] ================================================
[2026-08-25 16:09:10,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:09:10
[2026-08-25 16:09:10,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:09:11,119.119 INFO    ] Initializing speech engine...
[2026-08-25 16:09:11,124.124 INFO    ] 2026-08-25 16:09:11
[2026-08-25 16:09:11,419.419 INFO    ] 2026-08-25 16:09:11
[2026-08-25 16:09:11,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:09:11,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:09:11,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:09:11,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:09:11,956.956 INFO    ] time= 25/08/2026 16:09:11
[2026-08-25 16:09:11,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:09:11,982.982 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:09:12,108.108 INFO    ] No existing commands found in stream
[2026-08-25 16:09:17,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:09:17,125.125 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 16:09:20,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:09:20,183.183 INFO    ] Checking for system updates...
[2026-08-25 16:09:20,219.219 INFO    ] 200
[2026-08-25 16:09:20,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:20,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:09:20,279.279 INFO    ] No update needed
[2026-08-25 16:09:20,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 16:09:20,320.320 INFO    ] 200
[2026-08-25 16:09:20,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:20,364.364 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:09:20,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:09:20,415.415 INFO    ] No camera update needed
[2026-08-25 16:09:20,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:09:20,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:09:20,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:09:20,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:09:22,471.471 INFO    ] ================================================
[2026-08-25 16:09:22,486.486 INFO    ] Launching Daemon at Tue Aug 25 16:09:22 IST 2026
[2026-08-25 16:09:22,501.501 INFO    ] ================================================
[2026-08-25 16:09:23,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:09:23
[2026-08-25 16:09:23,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:09:24,152.152 INFO    ] Initializing speech engine...
[2026-08-25 16:09:24,160.160 INFO    ] 2026-08-25 16:09:24
[2026-08-25 16:09:24,467.467 INFO    ] 2026-08-25 16:09:24
[2026-08-25 16:09:24,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:09:24,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:09:24,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:09:24,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:09:24,970.970 INFO    ] time= 25/08/2026 16:09:24
[2026-08-25 16:09:24,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:09:24,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:09:25,127.127 INFO    ] No existing commands found in stream
[2026-08-25 16:09:30,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:09:30,153.153 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 16:09:33,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:09:33,136.136 INFO    ] Checking for system updates...
[2026-08-25 16:09:33,186.186 INFO    ] 200
[2026-08-25 16:09:33,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:33,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:09:33,263.263 INFO    ] No update needed
[2026-08-25 16:09:33,266.266 INFO    ] Checking for camera pi updates...
[2026-08-25 16:09:33,305.305 INFO    ] 200
[2026-08-25 16:09:33,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:33,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:09:33,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:09:33,411.411 INFO    ] No camera update needed
[2026-08-25 16:09:33,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:09:33,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:09:33,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:09:33,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:09:35,468.468 INFO    ] ================================================
[2026-08-25 16:09:35,483.483 INFO    ] Launching Daemon at Tue Aug 25 16:09:35 IST 2026
[2026-08-25 16:09:35,494.494 INFO    ] ================================================
[2026-08-25 16:09:36,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:09:36
[2026-08-25 16:09:36,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:09:36,947.947 INFO    ] Initializing speech engine...
[2026-08-25 16:09:36,955.955 INFO    ] 2026-08-25 16:09:36
[2026-08-25 16:09:37,214.214 INFO    ] 2026-08-25 16:09:37
[2026-08-25 16:09:37,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:09:37,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:09:37,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:09:37,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:09:37,549.549 INFO    ] time= 25/08/2026 16:09:37
[2026-08-25 16:09:37,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:09:37,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:09:37,671.671 INFO    ] No existing commands found in stream
[2026-08-25 16:09:42,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:09:42,687.687 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 16:09:45,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:09:45,596.596 INFO    ] Checking for system updates...
[2026-08-25 16:09:45,632.632 INFO    ] 200
[2026-08-25 16:09:45,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:45,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:09:45,691.691 INFO    ] No update needed
[2026-08-25 16:09:45,694.694 INFO    ] Checking for camera pi updates...
[2026-08-25 16:09:45,728.728 INFO    ] 200
[2026-08-25 16:09:45,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:45,776.776 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:09:45,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:09:45,835.835 INFO    ] No camera update needed
[2026-08-25 16:09:45,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:09:45,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:09:45,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:09:45,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:09:47,892.892 INFO    ] ================================================
[2026-08-25 16:09:47,907.907 INFO    ] Launching Daemon at Tue Aug 25 16:09:47 IST 2026
[2026-08-25 16:09:47,917.917 INFO    ] ================================================
[2026-08-25 16:09:48,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:09:48
[2026-08-25 16:09:49,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:09:49,378.378 INFO    ] Initializing speech engine...
[2026-08-25 16:09:49,388.388 INFO    ] 2026-08-25 16:09:49
[2026-08-25 16:09:49,647.647 INFO    ] 2026-08-25 16:09:49
[2026-08-25 16:09:49,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:09:50,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:09:50,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:09:51,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:09:51,079.079 INFO    ] time= 25/08/2026 16:09:51
[2026-08-25 16:09:51,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:09:51,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:09:51,184.184 INFO    ] No existing commands found in stream
[2026-08-25 16:09:56,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:09:56,198.198 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 16:09:58,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:09:58,029.029 INFO    ] Checking for system updates...
[2026-08-25 16:09:58,066.066 INFO    ] 200
[2026-08-25 16:09:58,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:58,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:09:58,124.124 INFO    ] No update needed
[2026-08-25 16:09:58,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 16:09:58,162.162 INFO    ] 200
[2026-08-25 16:09:58,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:09:58,211.211 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:09:58,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:09:58,263.263 INFO    ] No camera update needed
[2026-08-25 16:09:58,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:09:58,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:09:58,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:09:58,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:10:00,322.322 INFO    ] ================================================
[2026-08-25 16:10:00,336.336 INFO    ] Launching Daemon at Tue Aug 25 16:10:00 IST 2026
[2026-08-25 16:10:00,347.347 INFO    ] ================================================
[2026-08-25 16:10:00,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:10:00
[2026-08-25 16:10:01,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:10:01,795.795 INFO    ] Initializing speech engine...
[2026-08-25 16:10:01,805.805 INFO    ] 2026-08-25 16:10:01
[2026-08-25 16:10:02,269.269 INFO    ] 2026-08-25 16:10:02
[2026-08-25 16:10:02,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:10:02,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:10:02,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:10:02,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:10:02,825.825 INFO    ] time= 25/08/2026 16:10:02
[2026-08-25 16:10:02,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:10:02,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:10:02,917.917 INFO    ] No existing commands found in stream
[2026-08-25 16:10:07,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:10:07,931.931 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 16:10:11,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:10:11,969.969 INFO    ] Checking for system updates...
[2026-08-25 16:10:12,006.006 INFO    ] 200
[2026-08-25 16:10:12,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:12,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:10:12,070.070 INFO    ] No update needed
[2026-08-25 16:10:12,072.072 INFO    ] Checking for camera pi updates...
[2026-08-25 16:10:12,105.105 INFO    ] 200
[2026-08-25 16:10:12,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:12,148.148 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:10:12,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:10:12,199.199 INFO    ] No camera update needed
[2026-08-25 16:10:12,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:10:12,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:10:12,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:10:12,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:10:14,258.258 INFO    ] ================================================
[2026-08-25 16:10:14,273.273 INFO    ] Launching Daemon at Tue Aug 25 16:10:14 IST 2026
[2026-08-25 16:10:14,283.283 INFO    ] ================================================
[2026-08-25 16:10:14,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:10:14
[2026-08-25 16:10:15,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:10:15,726.726 INFO    ] Initializing speech engine...
[2026-08-25 16:10:15,736.736 INFO    ] 2026-08-25 16:10:15
[2026-08-25 16:10:15,998.998 INFO    ] 2026-08-25 16:10:15
[2026-08-25 16:10:16,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:10:16,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:10:16,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:10:16,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:10:16,483.483 INFO    ] time= 25/08/2026 16:10:16
[2026-08-25 16:10:16,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:10:16,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:10:16,702.702 INFO    ] No existing commands found in stream
[2026-08-25 16:10:21,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:10:21,728.728 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 16:10:22,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:10:22,314.314 INFO    ] Checking for system updates...
[2026-08-25 16:10:22,350.350 INFO    ] 200
[2026-08-25 16:10:22,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:22,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:10:22,407.407 INFO    ] No update needed
[2026-08-25 16:10:22,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 16:10:22,444.444 INFO    ] 200
[2026-08-25 16:10:22,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:22,489.489 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:10:22,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:10:22,537.537 INFO    ] No camera update needed
[2026-08-25 16:10:22,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:10:22,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:10:22,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:10:22,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:10:24,593.593 INFO    ] ================================================
[2026-08-25 16:10:24,608.608 INFO    ] Launching Daemon at Tue Aug 25 16:10:24 IST 2026
[2026-08-25 16:10:24,619.619 INFO    ] ================================================
[2026-08-25 16:10:25,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:10:25
[2026-08-25 16:10:25,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:10:26,048.048 INFO    ] Initializing speech engine...
[2026-08-25 16:10:26,057.057 INFO    ] 2026-08-25 16:10:26
[2026-08-25 16:10:26,306.306 INFO    ] 2026-08-25 16:10:26
[2026-08-25 16:10:26,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:10:26,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:10:26,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:10:26,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:10:26,791.791 INFO    ] time= 25/08/2026 16:10:26
[2026-08-25 16:10:26,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:10:26,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:10:27,005.005 INFO    ] No existing commands found in stream
[2026-08-25 16:10:32,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:10:32,039.039 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 16:10:33,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:10:33,178.178 INFO    ] Checking for system updates...
[2026-08-25 16:10:33,219.219 INFO    ] 200
[2026-08-25 16:10:33,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:33,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:10:33,300.300 INFO    ] No update needed
[2026-08-25 16:10:33,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 16:10:33,339.339 INFO    ] 200
[2026-08-25 16:10:33,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:33,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:10:33,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:10:33,442.442 INFO    ] No camera update needed
[2026-08-25 16:10:33,445.445 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:10:33,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:10:33,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:10:33,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:10:35,499.499 INFO    ] ================================================
[2026-08-25 16:10:35,515.515 INFO    ] Launching Daemon at Tue Aug 25 16:10:35 IST 2026
[2026-08-25 16:10:35,526.526 INFO    ] ================================================
[2026-08-25 16:10:36,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:10:36
[2026-08-25 16:10:36,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:10:36,991.991 INFO    ] Initializing speech engine...
[2026-08-25 16:10:37,002.002 INFO    ] 2026-08-25 16:10:36
[2026-08-25 16:10:37,250.250 INFO    ] 2026-08-25 16:10:37
[2026-08-25 16:10:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:10:37,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:10:37,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:10:37,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:10:37,723.723 INFO    ] time= 25/08/2026 16:10:37
[2026-08-25 16:10:37,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:10:37,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:10:37,959.959 INFO    ] No existing commands found in stream
[2026-08-25 16:10:42,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:10:42,978.978 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 16:10:44,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:10:44,468.468 INFO    ] Checking for system updates...
[2026-08-25 16:10:44,504.504 INFO    ] 200
[2026-08-25 16:10:44,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:44,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:10:44,567.567 INFO    ] No update needed
[2026-08-25 16:10:44,569.569 INFO    ] Checking for camera pi updates...
[2026-08-25 16:10:44,607.607 INFO    ] 200
[2026-08-25 16:10:44,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:44,650.650 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:10:44,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:10:44,826.826 INFO    ] No camera update needed
[2026-08-25 16:10:44,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:10:44,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:10:44,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:10:44,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:10:46,882.882 INFO    ] ================================================
[2026-08-25 16:10:46,897.897 INFO    ] Launching Daemon at Tue Aug 25 16:10:46 IST 2026
[2026-08-25 16:10:46,908.908 INFO    ] ================================================
[2026-08-25 16:10:47,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:10:47
[2026-08-25 16:10:48,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:10:48,333.333 INFO    ] Initializing speech engine...
[2026-08-25 16:10:48,339.339 INFO    ] 2026-08-25 16:10:48
[2026-08-25 16:10:48,632.632 INFO    ] 2026-08-25 16:10:48
[2026-08-25 16:10:48,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:10:48,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:10:48,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:10:49,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:10:49,064.064 INFO    ] time= 25/08/2026 16:10:49
[2026-08-25 16:10:49,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:10:49,114.114 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:10:49,263.263 INFO    ] No existing commands found in stream
[2026-08-25 16:10:54,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:10:54,290.290 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 16:10:55,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:10:55,067.067 INFO    ] Checking for system updates...
[2026-08-25 16:10:55,102.102 INFO    ] 200
[2026-08-25 16:10:55,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:55,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:10:55,159.159 INFO    ] No update needed
[2026-08-25 16:10:55,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 16:10:55,198.198 INFO    ] 200
[2026-08-25 16:10:55,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:10:55,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:10:55,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:10:55,291.291 INFO    ] No camera update needed
[2026-08-25 16:10:55,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:10:55,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:10:55,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:10:55,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:10:57,351.351 INFO    ] ================================================
[2026-08-25 16:10:57,366.366 INFO    ] Launching Daemon at Tue Aug 25 16:10:57 IST 2026
[2026-08-25 16:10:57,376.376 INFO    ] ================================================
[2026-08-25 16:10:57,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:10:57
[2026-08-25 16:10:58,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:10:58,834.834 INFO    ] Initializing speech engine...
[2026-08-25 16:10:58,841.841 INFO    ] 2026-08-25 16:10:58
[2026-08-25 16:10:59,142.142 INFO    ] 2026-08-25 16:10:59
[2026-08-25 16:10:59,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:10:59,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:10:59,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:10:59,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:10:59,568.568 INFO    ] time= 25/08/2026 16:10:59
[2026-08-25 16:10:59,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:10:59,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:10:59,654.654 INFO    ] No existing commands found in stream
[2026-08-25 16:11:04,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:11:04,669.669 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 16:11:05,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:11:05,919.919 INFO    ] Checking for system updates...
[2026-08-25 16:11:05,958.958 INFO    ] 200
[2026-08-25 16:11:05,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:06,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:11:06,018.018 INFO    ] No update needed
[2026-08-25 16:11:06,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 16:11:06,055.055 INFO    ] 200
[2026-08-25 16:11:06,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:06,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:11:06,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:11:06,146.146 INFO    ] No camera update needed
[2026-08-25 16:11:06,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:11:06,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:11:06,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:11:06,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:11:08,201.201 INFO    ] ================================================
[2026-08-25 16:11:08,216.216 INFO    ] Launching Daemon at Tue Aug 25 16:11:08 IST 2026
[2026-08-25 16:11:08,227.227 INFO    ] ================================================
[2026-08-25 16:11:08,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:11:08
[2026-08-25 16:11:09,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:11:09,765.765 INFO    ] Initializing speech engine...
[2026-08-25 16:11:09,790.790 INFO    ] 2026-08-25 16:11:09
[2026-08-25 16:11:10,049.049 INFO    ] 2026-08-25 16:11:10
[2026-08-25 16:11:10,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:11:10,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:11:10,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:11:10,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:11:10,482.482 INFO    ] time= 25/08/2026 16:11:10
[2026-08-25 16:11:10,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:11:10,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:11:10,751.751 INFO    ] No existing commands found in stream
[2026-08-25 16:11:15,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:11:15,776.776 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 16:11:16,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:11:16,511.511 INFO    ] Checking for system updates...
[2026-08-25 16:11:16,565.565 INFO    ] 200
[2026-08-25 16:11:16,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:16,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:11:16,636.636 INFO    ] No update needed
[2026-08-25 16:11:16,639.639 INFO    ] Checking for camera pi updates...
[2026-08-25 16:11:16,673.673 INFO    ] 200
[2026-08-25 16:11:16,676.676 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:16,718.718 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:11:16,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:11:16,767.767 INFO    ] No camera update needed
[2026-08-25 16:11:16,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:11:16,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:11:16,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:11:16,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:11:18,825.825 INFO    ] ================================================
[2026-08-25 16:11:18,840.840 INFO    ] Launching Daemon at Tue Aug 25 16:11:18 IST 2026
[2026-08-25 16:11:18,851.851 INFO    ] ================================================
[2026-08-25 16:11:19,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:11:19
[2026-08-25 16:11:20,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:11:20,287.287 INFO    ] Initializing speech engine...
[2026-08-25 16:11:20,296.296 INFO    ] 2026-08-25 16:11:20
[2026-08-25 16:11:20,549.549 INFO    ] 2026-08-25 16:11:20
[2026-08-25 16:11:20,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:11:20,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:11:20,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:11:20,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:11:20,931.931 INFO    ] time= 25/08/2026 16:11:20
[2026-08-25 16:11:20,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:11:20,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:11:21,104.104 INFO    ] No existing commands found in stream
[2026-08-25 16:11:26,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:11:26,137.137 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 16:11:28,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:11:28,135.135 INFO    ] Checking for system updates...
[2026-08-25 16:11:28,170.170 INFO    ] 200
[2026-08-25 16:11:28,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:28,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:11:28,236.236 INFO    ] No update needed
[2026-08-25 16:11:28,238.238 INFO    ] Checking for camera pi updates...
[2026-08-25 16:11:28,273.273 INFO    ] 200
[2026-08-25 16:11:28,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:28,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:11:28,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:11:28,367.367 INFO    ] No camera update needed
[2026-08-25 16:11:28,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:11:28,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:11:28,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:11:28,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:11:30,425.425 INFO    ] ================================================
[2026-08-25 16:11:30,440.440 INFO    ] Launching Daemon at Tue Aug 25 16:11:30 IST 2026
[2026-08-25 16:11:30,450.450 INFO    ] ================================================
[2026-08-25 16:11:31,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:11:31
[2026-08-25 16:11:31,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:11:31,969.969 INFO    ] Initializing speech engine...
[2026-08-25 16:11:31,980.980 INFO    ] 2026-08-25 16:11:31
[2026-08-25 16:11:32,331.331 INFO    ] 2026-08-25 16:11:32
[2026-08-25 16:11:32,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:11:32,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:11:32,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:11:32,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:11:32,844.844 INFO    ] time= 25/08/2026 16:11:32
[2026-08-25 16:11:32,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:11:32,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:11:33,007.007 INFO    ] No existing commands found in stream
[2026-08-25 16:11:38,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:11:38,035.035 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 16:11:41,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:11:41,728.728 INFO    ] Checking for system updates...
[2026-08-25 16:11:41,764.764 INFO    ] 200
[2026-08-25 16:11:41,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:41,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:11:41,822.822 INFO    ] No update needed
[2026-08-25 16:11:41,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 16:11:41,857.857 INFO    ] 200
[2026-08-25 16:11:41,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:41,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:11:41,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:11:41,953.953 INFO    ] No camera update needed
[2026-08-25 16:11:41,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:11:41,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:11:41,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:11:41,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:11:44,007.007 INFO    ] ================================================
[2026-08-25 16:11:44,022.022 INFO    ] Launching Daemon at Tue Aug 25 16:11:44 IST 2026
[2026-08-25 16:11:44,033.033 INFO    ] ================================================
[2026-08-25 16:11:44,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:11:44
[2026-08-25 16:11:45,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:11:45,456.456 INFO    ] Initializing speech engine...
[2026-08-25 16:11:45,465.465 INFO    ] 2026-08-25 16:11:45
[2026-08-25 16:11:45,710.710 INFO    ] 2026-08-25 16:11:45
[2026-08-25 16:11:45,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:11:45,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:11:45,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:11:46,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:11:46,206.206 INFO    ] time= 25/08/2026 16:11:46
[2026-08-25 16:11:46,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:11:46,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:11:46,409.409 INFO    ] No existing commands found in stream
[2026-08-25 16:11:51,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:11:51,431.431 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 16:11:55,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:11:55,853.853 INFO    ] Checking for system updates...
[2026-08-25 16:11:55,889.889 INFO    ] 200
[2026-08-25 16:11:55,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:55,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:11:55,955.955 INFO    ] No update needed
[2026-08-25 16:11:55,958.958 INFO    ] Checking for camera pi updates...
[2026-08-25 16:11:55,996.996 INFO    ] 200
[2026-08-25 16:11:55,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:11:56,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:11:56,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:11:56,096.096 INFO    ] No camera update needed
[2026-08-25 16:11:56,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:11:56,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:11:56,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:11:56,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:11:58,150.150 INFO    ] ================================================
[2026-08-25 16:11:58,165.165 INFO    ] Launching Daemon at Tue Aug 25 16:11:58 IST 2026
[2026-08-25 16:11:58,176.176 INFO    ] ================================================
[2026-08-25 16:11:58,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:11:58
[2026-08-25 16:11:59,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:11:59,638.638 INFO    ] Initializing speech engine...
[2026-08-25 16:11:59,651.651 INFO    ] 2026-08-25 16:11:59
[2026-08-25 16:11:59,901.901 INFO    ] 2026-08-25 16:11:59
[2026-08-25 16:11:59,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:12:00,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:12:00,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:12:00,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:12:00,386.386 INFO    ] time= 25/08/2026 16:12:00
[2026-08-25 16:12:00,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:12:00,475.475 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:12:00,548.548 INFO    ] No existing commands found in stream
[2026-08-25 16:12:05,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:12:05,561.561 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 16:12:06,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:12:06,437.437 INFO    ] Checking for system updates...
[2026-08-25 16:12:06,482.482 INFO    ] 200
[2026-08-25 16:12:06,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:06,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:12:06,541.541 INFO    ] No update needed
[2026-08-25 16:12:06,544.544 INFO    ] Checking for camera pi updates...
[2026-08-25 16:12:06,577.577 INFO    ] 200
[2026-08-25 16:12:06,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:06,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:12:06,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:12:06,668.668 INFO    ] No camera update needed
[2026-08-25 16:12:06,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:12:06,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:12:06,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:12:06,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:12:08,723.723 INFO    ] ================================================
[2026-08-25 16:12:08,739.739 INFO    ] Launching Daemon at Tue Aug 25 16:12:08 IST 2026
[2026-08-25 16:12:08,749.749 INFO    ] ================================================
[2026-08-25 16:12:09,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:12:09
[2026-08-25 16:12:09,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:12:10,180.180 INFO    ] Initializing speech engine...
[2026-08-25 16:12:10,199.199 INFO    ] 2026-08-25 16:12:10
[2026-08-25 16:12:10,462.462 INFO    ] 2026-08-25 16:12:10
[2026-08-25 16:12:10,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:12:10,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:12:10,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:12:10,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:12:10,851.851 INFO    ] time= 25/08/2026 16:12:10
[2026-08-25 16:12:10,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:12:10,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:12:10,960.960 INFO    ] No existing commands found in stream
[2026-08-25 16:12:15,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:12:15,976.976 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 16:12:19,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:12:19,715.715 INFO    ] Checking for system updates...
[2026-08-25 16:12:19,751.751 INFO    ] 200
[2026-08-25 16:12:19,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:19,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:12:19,814.814 INFO    ] No update needed
[2026-08-25 16:12:19,817.817 INFO    ] Checking for camera pi updates...
[2026-08-25 16:12:19,853.853 INFO    ] 200
[2026-08-25 16:12:19,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:19,897.897 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:12:19,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:12:19,963.963 INFO    ] No camera update needed
[2026-08-25 16:12:19,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:12:19,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:12:19,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:12:19,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:12:22,019.019 INFO    ] ================================================
[2026-08-25 16:12:22,035.035 INFO    ] Launching Daemon at Tue Aug 25 16:12:22 IST 2026
[2026-08-25 16:12:22,045.045 INFO    ] ================================================
[2026-08-25 16:12:22,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:12:22
[2026-08-25 16:12:23,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:12:23,601.601 INFO    ] Initializing speech engine...
[2026-08-25 16:12:23,611.611 INFO    ] 2026-08-25 16:12:23
[2026-08-25 16:12:23,858.858 INFO    ] 2026-08-25 16:12:23
[2026-08-25 16:12:23,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:12:24,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:12:24,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:12:24,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:12:24,265.265 INFO    ] time= 25/08/2026 16:12:24
[2026-08-25 16:12:24,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:12:24,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:12:24,418.418 INFO    ] No existing commands found in stream
[2026-08-25 16:12:29,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:12:29,446.446 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 16:12:32,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:12:32,339.339 INFO    ] Checking for system updates...
[2026-08-25 16:12:32,381.381 INFO    ] 200
[2026-08-25 16:12:32,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:32,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:12:32,449.449 INFO    ] No update needed
[2026-08-25 16:12:32,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 16:12:32,486.486 INFO    ] 200
[2026-08-25 16:12:32,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:32,537.537 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:12:32,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:12:32,609.609 INFO    ] No camera update needed
[2026-08-25 16:12:32,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:12:32,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:12:32,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:12:32,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:12:34,668.668 INFO    ] ================================================
[2026-08-25 16:12:34,684.684 INFO    ] Launching Daemon at Tue Aug 25 16:12:34 IST 2026
[2026-08-25 16:12:34,695.695 INFO    ] ================================================
[2026-08-25 16:12:35,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:12:35
[2026-08-25 16:12:35,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:12:36,298.298 INFO    ] Initializing speech engine...
[2026-08-25 16:12:36,307.307 INFO    ] 2026-08-25 16:12:36
[2026-08-25 16:12:36,574.574 INFO    ] 2026-08-25 16:12:36
[2026-08-25 16:12:36,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:12:36,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:12:36,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:12:37,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:12:37,153.153 INFO    ] time= 25/08/2026 16:12:37
[2026-08-25 16:12:37,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:12:37,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:12:37,311.311 INFO    ] No existing commands found in stream
[2026-08-25 16:12:42,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:12:42,343.343 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 16:12:46,773.773 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:12:46,776.776 INFO    ] Checking for system updates...
[2026-08-25 16:12:46,813.813 INFO    ] 200
[2026-08-25 16:12:46,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:46,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:12:46,873.873 INFO    ] No update needed
[2026-08-25 16:12:46,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 16:12:46,911.911 INFO    ] 200
[2026-08-25 16:12:46,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:12:46,955.955 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:12:47,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:12:47,107.107 INFO    ] No camera update needed
[2026-08-25 16:12:47,110.110 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:12:47,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:12:47,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:12:47,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:12:49,165.165 INFO    ] ================================================
[2026-08-25 16:12:49,181.181 INFO    ] Launching Daemon at Tue Aug 25 16:12:49 IST 2026
[2026-08-25 16:12:49,193.193 INFO    ] ================================================
[2026-08-25 16:12:49,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:12:49
[2026-08-25 16:12:50,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:12:50,650.650 INFO    ] Initializing speech engine...
[2026-08-25 16:12:50,666.666 INFO    ] 2026-08-25 16:12:50
[2026-08-25 16:12:50,938.938 INFO    ] 2026-08-25 16:12:50
[2026-08-25 16:12:50,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:12:51,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:12:51,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:12:51,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:12:51,350.350 INFO    ] time= 25/08/2026 16:12:51
[2026-08-25 16:12:51,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:12:51,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:12:51,436.436 INFO    ] No existing commands found in stream
[2026-08-25 16:12:56,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:12:56,469.469 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 16:13:01,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:13:01,366.366 INFO    ] Checking for system updates...
[2026-08-25 16:13:01,410.410 INFO    ] 200
[2026-08-25 16:13:01,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:01,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:13:01,475.475 INFO    ] No update needed
[2026-08-25 16:13:01,478.478 INFO    ] Checking for camera pi updates...
[2026-08-25 16:13:01,527.527 INFO    ] 200
[2026-08-25 16:13:01,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:01,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:13:01,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:13:01,745.745 INFO    ] No camera update needed
[2026-08-25 16:13:01,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:13:01,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:13:01,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:13:01,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:13:03,811.811 INFO    ] ================================================
[2026-08-25 16:13:03,827.827 INFO    ] Launching Daemon at Tue Aug 25 16:13:03 IST 2026
[2026-08-25 16:13:03,839.839 INFO    ] ================================================
[2026-08-25 16:13:04,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:13:04
[2026-08-25 16:13:05,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:13:05,283.283 INFO    ] Initializing speech engine...
[2026-08-25 16:13:05,293.293 INFO    ] 2026-08-25 16:13:05
[2026-08-25 16:13:05,539.539 INFO    ] 2026-08-25 16:13:05
[2026-08-25 16:13:05,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:13:05,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:13:05,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:13:05,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:13:05,912.912 INFO    ] time= 25/08/2026 16:13:05
[2026-08-25 16:13:05,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:13:05,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:13:06,019.019 INFO    ] No existing commands found in stream
[2026-08-25 16:13:11,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:13:11,031.031 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 16:13:13,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:13:13,702.702 INFO    ] Checking for system updates...
[2026-08-25 16:13:13,743.743 INFO    ] 200
[2026-08-25 16:13:13,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:13,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:13:13,799.799 INFO    ] No update needed
[2026-08-25 16:13:13,801.801 INFO    ] Checking for camera pi updates...
[2026-08-25 16:13:13,840.840 INFO    ] 200
[2026-08-25 16:13:13,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:13,885.885 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:13:13,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:13:13,942.942 INFO    ] No camera update needed
[2026-08-25 16:13:13,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:13:13,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:13:13,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:13:13,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:13:16,998.998 INFO    ] ================================================
[2026-08-25 16:13:16,013.013 INFO    ] Launching Daemon at Tue Aug 25 16:13:16 IST 2026
[2026-08-25 16:13:16,023.023 INFO    ] ================================================
[2026-08-25 16:13:16,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:13:16
[2026-08-25 16:13:17,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:13:17,452.452 INFO    ] Initializing speech engine...
[2026-08-25 16:13:17,456.456 INFO    ] 2026-08-25 16:13:17
[2026-08-25 16:13:17,736.736 INFO    ] 2026-08-25 16:13:17
[2026-08-25 16:13:17,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:13:18,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:13:18,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:13:18,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:13:18,232.232 INFO    ] time= 25/08/2026 16:13:18
[2026-08-25 16:13:18,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:13:18,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:13:18,328.328 INFO    ] No existing commands found in stream
[2026-08-25 16:13:23,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:13:23,341.341 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 16:13:23,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:13:23,822.822 INFO    ] Checking for system updates...
[2026-08-25 16:13:23,860.860 INFO    ] 200
[2026-08-25 16:13:23,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:23,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:13:23,921.921 INFO    ] No update needed
[2026-08-25 16:13:23,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 16:13:23,959.959 INFO    ] 200
[2026-08-25 16:13:23,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:24,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:13:24,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:13:24,063.063 INFO    ] No camera update needed
[2026-08-25 16:13:24,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:13:24,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:13:24,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:13:24,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:13:26,120.120 INFO    ] ================================================
[2026-08-25 16:13:26,135.135 INFO    ] Launching Daemon at Tue Aug 25 16:13:26 IST 2026
[2026-08-25 16:13:26,146.146 INFO    ] ================================================
[2026-08-25 16:13:26,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:13:26
[2026-08-25 16:13:27,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:13:27,730.730 INFO    ] Initializing speech engine...
[2026-08-25 16:13:27,739.739 INFO    ] 2026-08-25 16:13:27
[2026-08-25 16:13:28,007.007 INFO    ] 2026-08-25 16:13:28
[2026-08-25 16:13:28,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:13:28,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:13:28,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:13:28,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:13:28,520.520 INFO    ] time= 25/08/2026 16:13:28
[2026-08-25 16:13:28,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:13:28,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:13:28,717.717 INFO    ] No existing commands found in stream
[2026-08-25 16:13:33,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:13:33,743.743 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 16:13:38,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:13:38,094.094 INFO    ] Checking for system updates...
[2026-08-25 16:13:38,130.130 INFO    ] 200
[2026-08-25 16:13:38,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:38,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:13:38,189.189 INFO    ] No update needed
[2026-08-25 16:13:38,192.192 INFO    ] Checking for camera pi updates...
[2026-08-25 16:13:38,230.230 INFO    ] 200
[2026-08-25 16:13:38,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:38,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:13:38,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:13:38,329.329 INFO    ] No camera update needed
[2026-08-25 16:13:38,332.332 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:13:38,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:13:38,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:13:38,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:13:40,387.387 INFO    ] ================================================
[2026-08-25 16:13:40,402.402 INFO    ] Launching Daemon at Tue Aug 25 16:13:40 IST 2026
[2026-08-25 16:13:40,412.412 INFO    ] ================================================
[2026-08-25 16:13:40,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:13:40
[2026-08-25 16:13:41,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:13:41,847.847 INFO    ] Initializing speech engine...
[2026-08-25 16:13:41,871.871 INFO    ] 2026-08-25 16:13:41
[2026-08-25 16:13:42,141.141 INFO    ] 2026-08-25 16:13:42
[2026-08-25 16:13:42,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:13:42,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:13:42,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:13:42,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:13:42,551.551 INFO    ] time= 25/08/2026 16:13:42
[2026-08-25 16:13:42,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:13:42,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:13:42,738.738 INFO    ] No existing commands found in stream
[2026-08-25 16:13:47,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:13:47,766.766 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 16:13:48,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:13:48,918.918 INFO    ] Checking for system updates...
[2026-08-25 16:13:48,953.953 INFO    ] 200
[2026-08-25 16:13:48,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:49,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:13:49,016.016 INFO    ] No update needed
[2026-08-25 16:13:49,018.018 INFO    ] Checking for camera pi updates...
[2026-08-25 16:13:49,055.055 INFO    ] 200
[2026-08-25 16:13:49,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:13:49,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:13:49,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:13:49,152.152 INFO    ] No camera update needed
[2026-08-25 16:13:49,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:13:49,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:13:49,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:13:49,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:13:51,207.207 INFO    ] ================================================
[2026-08-25 16:13:51,222.222 INFO    ] Launching Daemon at Tue Aug 25 16:13:51 IST 2026
[2026-08-25 16:13:51,233.233 INFO    ] ================================================
[2026-08-25 16:13:51,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:13:51
[2026-08-25 16:13:52,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:13:52,681.681 INFO    ] Initializing speech engine...
[2026-08-25 16:13:52,691.691 INFO    ] 2026-08-25 16:13:52
[2026-08-25 16:13:52,951.951 INFO    ] 2026-08-25 16:13:52
[2026-08-25 16:13:53,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:13:53,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:13:53,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:13:53,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:13:53,440.440 INFO    ] time= 25/08/2026 16:13:53
[2026-08-25 16:13:53,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:13:53,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:13:53,644.644 INFO    ] No existing commands found in stream
[2026-08-25 16:13:58,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:13:58,665.665 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 16:14:00,397.397 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:14:00,399.399 INFO    ] Checking for system updates...
[2026-08-25 16:14:00,436.436 INFO    ] 200
[2026-08-25 16:14:00,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:00,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:14:00,497.497 INFO    ] No update needed
[2026-08-25 16:14:00,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 16:14:00,537.537 INFO    ] 200
[2026-08-25 16:14:00,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:00,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:14:00,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:14:00,640.640 INFO    ] No camera update needed
[2026-08-25 16:14:00,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:14:00,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:14:00,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:14:00,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:14:02,706.706 INFO    ] ================================================
[2026-08-25 16:14:02,728.728 INFO    ] Launching Daemon at Tue Aug 25 16:14:02 IST 2026
[2026-08-25 16:14:02,745.745 INFO    ] ================================================
[2026-08-25 16:14:03,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:14:03
[2026-08-25 16:14:03,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:14:04,265.265 INFO    ] Initializing speech engine...
[2026-08-25 16:14:04,280.280 INFO    ] 2026-08-25 16:14:04
[2026-08-25 16:14:04,556.556 INFO    ] 2026-08-25 16:14:04
[2026-08-25 16:14:04,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:14:04,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:14:04,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:14:04,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:14:04,971.971 INFO    ] time= 25/08/2026 16:14:04
[2026-08-25 16:14:04,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:14:05,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:14:05,163.163 INFO    ] No existing commands found in stream
[2026-08-25 16:14:10,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:14:10,190.190 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 16:14:12,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:14:12,116.116 INFO    ] Checking for system updates...
[2026-08-25 16:14:12,151.151 INFO    ] 200
[2026-08-25 16:14:12,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:12,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:14:12,210.210 INFO    ] No update needed
[2026-08-25 16:14:12,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 16:14:12,246.246 INFO    ] 200
[2026-08-25 16:14:12,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:12,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:14:12,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:14:12,343.343 INFO    ] No camera update needed
[2026-08-25 16:14:12,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:14:12,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:14:12,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:14:12,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:14:14,398.398 INFO    ] ================================================
[2026-08-25 16:14:14,413.413 INFO    ] Launching Daemon at Tue Aug 25 16:14:14 IST 2026
[2026-08-25 16:14:14,424.424 INFO    ] ================================================
[2026-08-25 16:14:14,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:14:14
[2026-08-25 16:14:15,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:14:15,822.822 INFO    ] Initializing speech engine...
[2026-08-25 16:14:15,847.847 INFO    ] 2026-08-25 16:14:15
[2026-08-25 16:14:16,103.103 INFO    ] 2026-08-25 16:14:16
[2026-08-25 16:14:16,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:14:16,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:14:16,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:14:16,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:14:16,545.545 INFO    ] time= 25/08/2026 16:14:16
[2026-08-25 16:14:16,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:14:16,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:14:16,735.735 INFO    ] No existing commands found in stream
[2026-08-25 16:14:21,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:14:21,749.749 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 16:14:23,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:14:23,298.298 INFO    ] Checking for system updates...
[2026-08-25 16:14:23,337.337 INFO    ] 200
[2026-08-25 16:14:23,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:23,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:14:23,404.404 INFO    ] No update needed
[2026-08-25 16:14:23,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 16:14:23,444.444 INFO    ] 200
[2026-08-25 16:14:23,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:23,493.493 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:14:23,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:14:23,547.547 INFO    ] No camera update needed
[2026-08-25 16:14:23,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:14:23,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:14:23,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:14:23,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:14:25,605.605 INFO    ] ================================================
[2026-08-25 16:14:25,620.620 INFO    ] Launching Daemon at Tue Aug 25 16:14:25 IST 2026
[2026-08-25 16:14:25,635.635 INFO    ] ================================================
[2026-08-25 16:14:26,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:14:26
[2026-08-25 16:14:26,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:14:27,044.044 INFO    ] Initializing speech engine...
[2026-08-25 16:14:27,059.059 INFO    ] 2026-08-25 16:14:27
[2026-08-25 16:14:27,315.315 INFO    ] 2026-08-25 16:14:27
[2026-08-25 16:14:27,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:14:27,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:14:27,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:14:27,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:14:27,771.771 INFO    ] time= 25/08/2026 16:14:27
[2026-08-25 16:14:27,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:14:27,884.884 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:14:27,966.966 INFO    ] No existing commands found in stream
[2026-08-25 16:14:33,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:14:33,006.006 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 16:14:35,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:14:35,147.147 INFO    ] Checking for system updates...
[2026-08-25 16:14:35,182.182 INFO    ] 200
[2026-08-25 16:14:35,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:35,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:14:35,241.241 INFO    ] No update needed
[2026-08-25 16:14:35,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 16:14:35,280.280 INFO    ] 200
[2026-08-25 16:14:35,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:35,323.323 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:14:35,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:14:35,384.384 INFO    ] No camera update needed
[2026-08-25 16:14:35,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:14:35,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:14:35,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:14:35,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:14:37,441.441 INFO    ] ================================================
[2026-08-25 16:14:37,457.457 INFO    ] Launching Daemon at Tue Aug 25 16:14:37 IST 2026
[2026-08-25 16:14:37,467.467 INFO    ] ================================================
[2026-08-25 16:14:38,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:14:38
[2026-08-25 16:14:38,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:14:38,871.871 INFO    ] Initializing speech engine...
[2026-08-25 16:14:38,885.885 INFO    ] 2026-08-25 16:14:38
[2026-08-25 16:14:39,135.135 INFO    ] 2026-08-25 16:14:39
[2026-08-25 16:14:39,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:14:39,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:14:39,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:14:39,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:14:39,631.631 INFO    ] time= 25/08/2026 16:14:39
[2026-08-25 16:14:39,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:14:39,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:14:39,817.817 INFO    ] No existing commands found in stream
[2026-08-25 16:14:44,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:14:44,852.852 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 16:14:46,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:14:46,873.873 INFO    ] Checking for system updates...
[2026-08-25 16:14:46,909.909 INFO    ] 200
[2026-08-25 16:14:46,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:46,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:14:46,968.968 INFO    ] No update needed
[2026-08-25 16:14:46,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 16:14:47,007.007 INFO    ] 200
[2026-08-25 16:14:47,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:14:47,050.050 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:14:47,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:14:47,110.110 INFO    ] No camera update needed
[2026-08-25 16:14:47,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:14:47,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:14:47,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:14:47,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:14:49,165.165 INFO    ] ================================================
[2026-08-25 16:14:49,180.180 INFO    ] Launching Daemon at Tue Aug 25 16:14:49 IST 2026
[2026-08-25 16:14:49,191.191 INFO    ] ================================================
[2026-08-25 16:14:49,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:14:49
[2026-08-25 16:14:50,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:14:50,722.722 INFO    ] Initializing speech engine...
[2026-08-25 16:14:50,731.731 INFO    ] 2026-08-25 16:14:50
[2026-08-25 16:14:50,987.987 INFO    ] 2026-08-25 16:14:50
[2026-08-25 16:14:51,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:14:51,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:14:51,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:14:51,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:14:51,448.448 INFO    ] time= 25/08/2026 16:14:51
[2026-08-25 16:14:51,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:14:51,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:14:51,670.670 INFO    ] No existing commands found in stream
[2026-08-25 16:14:56,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:14:56,690.690 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 16:15:00,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:15:00,337.337 INFO    ] Checking for system updates...
[2026-08-25 16:15:00,372.372 INFO    ] 200
[2026-08-25 16:15:00,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:00,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:15:00,429.429 INFO    ] No update needed
[2026-08-25 16:15:00,431.431 INFO    ] Checking for camera pi updates...
[2026-08-25 16:15:00,464.464 INFO    ] 200
[2026-08-25 16:15:00,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:00,506.506 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:15:00,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:15:00,655.655 INFO    ] No camera update needed
[2026-08-25 16:15:00,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:15:00,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:15:00,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:15:00,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:15:02,719.719 INFO    ] ================================================
[2026-08-25 16:15:02,739.739 INFO    ] Launching Daemon at Tue Aug 25 16:15:02 IST 2026
[2026-08-25 16:15:02,752.752 INFO    ] ================================================
[2026-08-25 16:15:03,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:15:03
[2026-08-25 16:15:04,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:15:04,295.295 INFO    ] Initializing speech engine...
[2026-08-25 16:15:04,304.304 INFO    ] 2026-08-25 16:15:04
[2026-08-25 16:15:04,554.554 INFO    ] 2026-08-25 16:15:04
[2026-08-25 16:15:04,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:15:04,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:15:04,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:15:04,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:15:05,014.014 INFO    ] time= 25/08/2026 16:15:04
[2026-08-25 16:15:05,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:15:05,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:15:05,185.185 INFO    ] No existing commands found in stream
[2026-08-25 16:15:10,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:15:10,200.200 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 16:15:14,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:15:14,259.259 INFO    ] Checking for system updates...
[2026-08-25 16:15:14,299.299 INFO    ] 200
[2026-08-25 16:15:14,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:14,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:15:14,355.355 INFO    ] No update needed
[2026-08-25 16:15:14,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 16:15:14,396.396 INFO    ] 200
[2026-08-25 16:15:14,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:14,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:15:14,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:15:14,498.498 INFO    ] No camera update needed
[2026-08-25 16:15:14,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:15:14,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:15:14,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:15:14,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:15:16,552.552 INFO    ] ================================================
[2026-08-25 16:15:16,571.571 INFO    ] Launching Daemon at Tue Aug 25 16:15:16 IST 2026
[2026-08-25 16:15:16,582.582 INFO    ] ================================================
[2026-08-25 16:15:17,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:15:17
[2026-08-25 16:15:17,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:15:17,986.986 INFO    ] Initializing speech engine...
[2026-08-25 16:15:17,993.993 INFO    ] 2026-08-25 16:15:17
[2026-08-25 16:15:18,284.284 INFO    ] 2026-08-25 16:15:18
[2026-08-25 16:15:18,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:15:18,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:15:18,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:15:18,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:15:18,767.767 INFO    ] time= 25/08/2026 16:15:18
[2026-08-25 16:15:18,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:15:18,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:15:18,936.936 INFO    ] No existing commands found in stream
[2026-08-25 16:15:23,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:15:23,955.955 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 16:15:28,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:15:28,344.344 INFO    ] Checking for system updates...
[2026-08-25 16:15:28,379.379 INFO    ] 200
[2026-08-25 16:15:28,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:28,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:15:28,437.437 INFO    ] No update needed
[2026-08-25 16:15:28,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 16:15:28,475.475 INFO    ] 200
[2026-08-25 16:15:28,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:28,519.519 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:15:28,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:15:28,569.569 INFO    ] No camera update needed
[2026-08-25 16:15:28,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:15:28,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:15:28,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:15:28,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:15:30,633.633 INFO    ] ================================================
[2026-08-25 16:15:30,649.649 INFO    ] Launching Daemon at Tue Aug 25 16:15:30 IST 2026
[2026-08-25 16:15:30,660.660 INFO    ] ================================================
[2026-08-25 16:15:31,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:15:31
[2026-08-25 16:15:31,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:15:32,160.160 INFO    ] Initializing speech engine...
[2026-08-25 16:15:32,172.172 INFO    ] 2026-08-25 16:15:32
[2026-08-25 16:15:32,437.437 INFO    ] 2026-08-25 16:15:32
[2026-08-25 16:15:32,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:15:32,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:15:32,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:15:32,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:15:32,826.826 INFO    ] time= 25/08/2026 16:15:32
[2026-08-25 16:15:32,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:15:32,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:15:33,036.036 INFO    ] No existing commands found in stream
[2026-08-25 16:15:38,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:15:38,050.050 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 16:15:39,212.212 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:15:39,216.216 INFO    ] Checking for system updates...
[2026-08-25 16:15:39,257.257 INFO    ] 200
[2026-08-25 16:15:39,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:39,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:15:39,322.322 INFO    ] No update needed
[2026-08-25 16:15:39,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 16:15:39,359.359 INFO    ] 200
[2026-08-25 16:15:39,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:39,407.407 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:15:39,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:15:39,458.458 INFO    ] No camera update needed
[2026-08-25 16:15:39,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:15:39,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:15:39,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:15:39,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:15:41,522.522 INFO    ] ================================================
[2026-08-25 16:15:41,538.538 INFO    ] Launching Daemon at Tue Aug 25 16:15:41 IST 2026
[2026-08-25 16:15:41,551.551 INFO    ] ================================================
[2026-08-25 16:15:42,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:15:42
[2026-08-25 16:15:42,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:15:43,027.027 INFO    ] Initializing speech engine...
[2026-08-25 16:15:43,035.035 INFO    ] 2026-08-25 16:15:43
[2026-08-25 16:15:43,297.297 INFO    ] 2026-08-25 16:15:43
[2026-08-25 16:15:43,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:15:43,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:15:43,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:15:43,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:15:43,778.778 INFO    ] time= 25/08/2026 16:15:43
[2026-08-25 16:15:43,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:15:43,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:15:43,999.999 INFO    ] No existing commands found in stream
[2026-08-25 16:15:49,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:15:49,016.016 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 16:15:53,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:15:53,406.406 INFO    ] Checking for system updates...
[2026-08-25 16:15:53,454.454 INFO    ] 200
[2026-08-25 16:15:53,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:53,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:15:53,521.521 INFO    ] No update needed
[2026-08-25 16:15:53,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 16:15:53,557.557 INFO    ] 200
[2026-08-25 16:15:53,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:15:53,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:15:53,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:15:53,670.670 INFO    ] No camera update needed
[2026-08-25 16:15:53,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:15:53,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:15:53,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:15:53,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:15:55,728.728 INFO    ] ================================================
[2026-08-25 16:15:55,744.744 INFO    ] Launching Daemon at Tue Aug 25 16:15:55 IST 2026
[2026-08-25 16:15:55,755.755 INFO    ] ================================================
[2026-08-25 16:15:56,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:15:56
[2026-08-25 16:15:57,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:15:57,412.412 INFO    ] Initializing speech engine...
[2026-08-25 16:15:57,421.421 INFO    ] 2026-08-25 16:15:57
[2026-08-25 16:15:57,669.669 INFO    ] 2026-08-25 16:15:57
[2026-08-25 16:15:57,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:15:57,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:15:57,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:15:58,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:15:58,136.136 INFO    ] time= 25/08/2026 16:15:58
[2026-08-25 16:15:58,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:15:58,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:15:58,358.358 INFO    ] No existing commands found in stream
[2026-08-25 16:16:03,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:16:03,390.390 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 16:16:07,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:16:07,588.588 INFO    ] Checking for system updates...
[2026-08-25 16:16:07,627.627 INFO    ] 200
[2026-08-25 16:16:07,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:07,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:07,691.691 INFO    ] No update needed
[2026-08-25 16:16:07,693.693 INFO    ] Checking for camera pi updates...
[2026-08-25 16:16:07,726.726 INFO    ] 200
[2026-08-25 16:16:07,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:07,774.774 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:16:07,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:07,821.821 INFO    ] No camera update needed
[2026-08-25 16:16:07,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:16:07,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:16:07,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:16:07,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:16:09,879.879 INFO    ] ================================================
[2026-08-25 16:16:09,899.899 INFO    ] Launching Daemon at Tue Aug 25 16:16:09 IST 2026
[2026-08-25 16:16:09,912.912 INFO    ] ================================================
[2026-08-25 16:16:10,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:16:10
[2026-08-25 16:16:11,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:16:11,479.479 INFO    ] Initializing speech engine...
[2026-08-25 16:16:11,497.497 INFO    ] 2026-08-25 16:16:11
[2026-08-25 16:16:11,762.762 INFO    ] 2026-08-25 16:16:11
[2026-08-25 16:16:11,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:16:12,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:16:12,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:16:12,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:16:12,276.276 INFO    ] time= 25/08/2026 16:16:12
[2026-08-25 16:16:12,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:16:12,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:16:12,483.483 INFO    ] No existing commands found in stream
[2026-08-25 16:16:17,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:16:17,502.502 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 16:16:21,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:16:21,412.412 INFO    ] Checking for system updates...
[2026-08-25 16:16:21,452.452 INFO    ] 200
[2026-08-25 16:16:21,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:21,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:21,517.517 INFO    ] No update needed
[2026-08-25 16:16:21,520.520 INFO    ] Checking for camera pi updates...
[2026-08-25 16:16:21,557.557 INFO    ] 200
[2026-08-25 16:16:21,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:21,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:16:21,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:21,659.659 INFO    ] No camera update needed
[2026-08-25 16:16:21,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:16:21,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:16:21,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:16:21,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:16:23,715.715 INFO    ] ================================================
[2026-08-25 16:16:23,730.730 INFO    ] Launching Daemon at Tue Aug 25 16:16:23 IST 2026
[2026-08-25 16:16:23,741.741 INFO    ] ================================================
[2026-08-25 16:16:24,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:16:24
[2026-08-25 16:16:24,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:16:25,241.241 INFO    ] Initializing speech engine...
[2026-08-25 16:16:25,248.248 INFO    ] 2026-08-25 16:16:25
[2026-08-25 16:16:25,568.568 INFO    ] 2026-08-25 16:16:25
[2026-08-25 16:16:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:16:25,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:16:25,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:16:26,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:16:26,092.092 INFO    ] time= 25/08/2026 16:16:26
[2026-08-25 16:16:26,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:16:26,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:16:26,349.349 INFO    ] No existing commands found in stream
[2026-08-25 16:16:31,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:16:31,372.372 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 16:16:33,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:16:33,494.494 INFO    ] Checking for system updates...
[2026-08-25 16:16:33,534.534 INFO    ] 200
[2026-08-25 16:16:33,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:33,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:16:33,601.601 INFO    ] No update needed
[2026-08-25 16:16:33,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 16:16:33,641.641 INFO    ] 200
[2026-08-25 16:16:33,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:33,689.689 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:16:33,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:16:33,738.738 INFO    ] No camera update needed
[2026-08-25 16:16:33,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:16:33,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:16:33,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:16:33,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:16:35,792.792 INFO    ] ================================================
[2026-08-25 16:16:35,807.807 INFO    ] Launching Daemon at Tue Aug 25 16:16:35 IST 2026
[2026-08-25 16:16:35,817.817 INFO    ] ================================================
[2026-08-25 16:16:36,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:16:36
[2026-08-25 16:16:36,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:16:37,254.254 INFO    ] Initializing speech engine...
[2026-08-25 16:16:37,260.260 INFO    ] 2026-08-25 16:16:37
[2026-08-25 16:16:37,512.512 INFO    ] 2026-08-25 16:16:37
[2026-08-25 16:16:37,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:16:37,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:16:37,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:16:37,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:16:37,975.975 INFO    ] time= 25/08/2026 16:16:37
[2026-08-25 16:16:38,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:16:38,068.068 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:16:38,205.205 INFO    ] No existing commands found in stream
[2026-08-25 16:16:43,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:16:43,228.228 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 16:16:46,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:16:46,660.660 INFO    ] Checking for system updates...
[2026-08-25 16:16:46,699.699 INFO    ] 200
[2026-08-25 16:16:46,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:46,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:46,764.764 INFO    ] No update needed
[2026-08-25 16:16:46,767.767 INFO    ] Checking for camera pi updates...
[2026-08-25 16:16:46,807.807 INFO    ] 200
[2026-08-25 16:16:46,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:46,857.857 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:16:46,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:46,914.914 INFO    ] No camera update needed
[2026-08-25 16:16:46,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:16:46,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:16:46,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:16:46,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:16:48,973.973 INFO    ] ================================================
[2026-08-25 16:16:48,988.988 INFO    ] Launching Daemon at Tue Aug 25 16:16:48 IST 2026
[2026-08-25 16:16:49,999.999 INFO    ] ================================================
[2026-08-25 16:16:49,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:16:49
[2026-08-25 16:16:50,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:16:50,622.622 INFO    ] Initializing speech engine...
[2026-08-25 16:16:50,631.631 INFO    ] 2026-08-25 16:16:50
[2026-08-25 16:16:50,968.968 INFO    ] 2026-08-25 16:16:50
[2026-08-25 16:16:51,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:16:51,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:16:51,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:16:51,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:16:51,454.454 INFO    ] time= 25/08/2026 16:16:51
[2026-08-25 16:16:51,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:16:51,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:16:51,706.706 INFO    ] No existing commands found in stream
[2026-08-25 16:16:56,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:16:56,732.732 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 16:16:59,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:16:59,536.536 INFO    ] Checking for system updates...
[2026-08-25 16:16:59,576.576 INFO    ] 200
[2026-08-25 16:16:59,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:59,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:59,637.637 INFO    ] No update needed
[2026-08-25 16:16:59,640.640 INFO    ] Checking for camera pi updates...
[2026-08-25 16:16:59,675.675 INFO    ] 200
[2026-08-25 16:16:59,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:16:59,719.719 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:16:59,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:16:59,769.769 INFO    ] No camera update needed
[2026-08-25 16:16:59,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:16:59,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:16:59,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:16:59,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:17:01,830.830 INFO    ] ================================================
[2026-08-25 16:17:01,845.845 INFO    ] Launching Daemon at Tue Aug 25 16:17:01 IST 2026
[2026-08-25 16:17:01,857.857 INFO    ] ================================================
[2026-08-25 16:17:02,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:17:02
[2026-08-25 16:17:03,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:17:03,712.712 INFO    ] Initializing speech engine...
[2026-08-25 16:17:03,719.719 INFO    ] 2026-08-25 16:17:03
[2026-08-25 16:17:03,994.994 INFO    ] 2026-08-25 16:17:03
[2026-08-25 16:17:04,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:17:04,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:17:04,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:17:04,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:17:04,463.463 INFO    ] time= 25/08/2026 16:17:04
[2026-08-25 16:17:04,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:17:04,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:17:04,677.677 INFO    ] No existing commands found in stream
[2026-08-25 16:17:09,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:17:09,700.700 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 16:17:11,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:17:11,467.467 INFO    ] Checking for system updates...
[2026-08-25 16:17:11,502.502 INFO    ] 200
[2026-08-25 16:17:11,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:11,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:11,588.588 INFO    ] No update needed
[2026-08-25 16:17:11,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 16:17:11,642.642 INFO    ] 200
[2026-08-25 16:17:11,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:11,716.716 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:17:11,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:11,788.788 INFO    ] No camera update needed
[2026-08-25 16:17:11,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:17:11,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:17:11,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:17:11,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:17:13,845.845 INFO    ] ================================================
[2026-08-25 16:17:13,865.865 INFO    ] Launching Daemon at Tue Aug 25 16:17:13 IST 2026
[2026-08-25 16:17:13,876.876 INFO    ] ================================================
[2026-08-25 16:17:14,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:17:14
[2026-08-25 16:17:15,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:17:15,373.373 INFO    ] Initializing speech engine...
[2026-08-25 16:17:15,382.382 INFO    ] 2026-08-25 16:17:15
[2026-08-25 16:17:15,675.675 INFO    ] 2026-08-25 16:17:15
[2026-08-25 16:17:15,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:17:15,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:17:15,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:17:16,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:17:16,210.210 INFO    ] time= 25/08/2026 16:17:16
[2026-08-25 16:17:16,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:17:16,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:17:16,373.373 INFO    ] No existing commands found in stream
[2026-08-25 16:17:21,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:17:21,390.390 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 16:17:24,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:17:24,663.663 INFO    ] Checking for system updates...
[2026-08-25 16:17:24,702.702 INFO    ] 200
[2026-08-25 16:17:24,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:24,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:17:24,770.770 INFO    ] No update needed
[2026-08-25 16:17:24,772.772 INFO    ] Checking for camera pi updates...
[2026-08-25 16:17:24,809.809 INFO    ] 200
[2026-08-25 16:17:24,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:24,853.853 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:17:24,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:17:24,910.910 INFO    ] No camera update needed
[2026-08-25 16:17:24,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:17:24,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:17:24,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:17:24,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:17:26,972.972 INFO    ] ================================================
[2026-08-25 16:17:26,987.987 INFO    ] Launching Daemon at Tue Aug 25 16:17:26 IST 2026
[2026-08-25 16:17:27,998.998 INFO    ] ================================================
[2026-08-25 16:17:27,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:17:27
[2026-08-25 16:17:28,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:17:28,404.404 INFO    ] Initializing speech engine...
[2026-08-25 16:17:28,420.420 INFO    ] 2026-08-25 16:17:28
[2026-08-25 16:17:28,702.702 INFO    ] 2026-08-25 16:17:28
[2026-08-25 16:17:28,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:17:28,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:17:28,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:17:29,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:17:29,187.187 INFO    ] time= 25/08/2026 16:17:29
[2026-08-25 16:17:29,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:17:29,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:17:29,382.382 INFO    ] No existing commands found in stream
[2026-08-25 16:17:34,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:17:34,397.397 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 16:17:35,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:17:35,925.925 INFO    ] Checking for system updates...
[2026-08-25 16:17:35,960.960 INFO    ] 200
[2026-08-25 16:17:35,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:36,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:36,023.023 INFO    ] No update needed
[2026-08-25 16:17:36,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 16:17:36,062.062 INFO    ] 200
[2026-08-25 16:17:36,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:36,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:17:36,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:36,161.161 INFO    ] No camera update needed
[2026-08-25 16:17:36,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:17:36,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:17:36,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:17:36,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:17:38,218.218 INFO    ] ================================================
[2026-08-25 16:17:38,239.239 INFO    ] Launching Daemon at Tue Aug 25 16:17:38 IST 2026
[2026-08-25 16:17:38,250.250 INFO    ] ================================================
[2026-08-25 16:17:38,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:17:38
[2026-08-25 16:17:39,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:17:39,750.750 INFO    ] Initializing speech engine...
[2026-08-25 16:17:39,758.758 INFO    ] 2026-08-25 16:17:39
[2026-08-25 16:17:40,041.041 INFO    ] 2026-08-25 16:17:40
[2026-08-25 16:17:40,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:17:40,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:17:40,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:17:40,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:17:40,526.526 INFO    ] time= 25/08/2026 16:17:40
[2026-08-25 16:17:40,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:17:40,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:17:40,748.748 INFO    ] No existing commands found in stream
[2026-08-25 16:17:45,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:17:45,770.770 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 16:17:46,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:17:46,872.872 INFO    ] Checking for system updates...
[2026-08-25 16:17:46,909.909 INFO    ] 200
[2026-08-25 16:17:46,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:46,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:46,969.969 INFO    ] No update needed
[2026-08-25 16:17:46,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 16:17:47,009.009 INFO    ] 200
[2026-08-25 16:17:47,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:47,057.057 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:17:47,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:47,109.109 INFO    ] No camera update needed
[2026-08-25 16:17:47,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:17:47,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:17:47,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:17:47,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:17:49,163.163 INFO    ] ================================================
[2026-08-25 16:17:49,179.179 INFO    ] Launching Daemon at Tue Aug 25 16:17:49 IST 2026
[2026-08-25 16:17:49,190.190 INFO    ] ================================================
[2026-08-25 16:17:49,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:17:49
[2026-08-25 16:17:50,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:17:50,696.696 INFO    ] Initializing speech engine...
[2026-08-25 16:17:50,715.715 INFO    ] 2026-08-25 16:17:50
[2026-08-25 16:17:50,983.983 INFO    ] 2026-08-25 16:17:50
[2026-08-25 16:17:51,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:17:51,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:17:51,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:17:51,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:17:51,371.371 INFO    ] time= 25/08/2026 16:17:51
[2026-08-25 16:17:51,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:17:51,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:17:51,483.483 INFO    ] No existing commands found in stream
[2026-08-25 16:17:56,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:17:56,499.499 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 16:17:57,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:17:57,271.271 INFO    ] Checking for system updates...
[2026-08-25 16:17:57,306.306 INFO    ] 200
[2026-08-25 16:17:57,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:57,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:57,365.365 INFO    ] No update needed
[2026-08-25 16:17:57,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 16:17:57,401.401 INFO    ] 200
[2026-08-25 16:17:57,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:17:57,443.443 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:17:57,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:17:57,492.492 INFO    ] No camera update needed
[2026-08-25 16:17:57,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:17:57,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:17:57,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:17:57,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:17:59,547.547 INFO    ] ================================================
[2026-08-25 16:17:59,562.562 INFO    ] Launching Daemon at Tue Aug 25 16:17:59 IST 2026
[2026-08-25 16:17:59,574.574 INFO    ] ================================================
[2026-08-25 16:18:00,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:18:00
[2026-08-25 16:18:00,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:18:01,020.020 INFO    ] Initializing speech engine...
[2026-08-25 16:18:01,027.027 INFO    ] 2026-08-25 16:18:01
[2026-08-25 16:18:01,406.406 INFO    ] 2026-08-25 16:18:01
[2026-08-25 16:18:01,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:18:01,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:18:01,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:18:01,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:18:01,820.820 INFO    ] time= 25/08/2026 16:18:01
[2026-08-25 16:18:01,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:18:01,838.838 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:18:01,981.981 INFO    ] No existing commands found in stream
[2026-08-25 16:18:06,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:18:06,995.995 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 16:18:10,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:18:10,311.311 INFO    ] Checking for system updates...
[2026-08-25 16:18:10,351.351 INFO    ] 200
[2026-08-25 16:18:10,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:10,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:18:10,417.417 INFO    ] No update needed
[2026-08-25 16:18:10,420.420 INFO    ] Checking for camera pi updates...
[2026-08-25 16:18:10,455.455 INFO    ] 200
[2026-08-25 16:18:10,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:10,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:18:10,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:18:10,554.554 INFO    ] No camera update needed
[2026-08-25 16:18:10,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:18:10,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:18:10,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:18:10,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:18:12,616.616 INFO    ] ================================================
[2026-08-25 16:18:12,631.631 INFO    ] Launching Daemon at Tue Aug 25 16:18:12 IST 2026
[2026-08-25 16:18:12,641.641 INFO    ] ================================================
[2026-08-25 16:18:13,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:18:13
[2026-08-25 16:18:13,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:18:14,046.046 INFO    ] Initializing speech engine...
[2026-08-25 16:18:14,065.065 INFO    ] 2026-08-25 16:18:14
[2026-08-25 16:18:14,314.314 INFO    ] 2026-08-25 16:18:14
[2026-08-25 16:18:14,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:18:14,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:18:14,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:18:14,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:18:14,693.693 INFO    ] time= 25/08/2026 16:18:14
[2026-08-25 16:18:14,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:18:14,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:18:14,887.887 INFO    ] No existing commands found in stream
[2026-08-25 16:18:19,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:18:19,907.907 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 16:18:26,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:18:26,069.069 INFO    ] Checking for system updates...
[2026-08-25 16:18:26,106.106 INFO    ] 200
[2026-08-25 16:18:26,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:26,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:18:26,172.172 INFO    ] No update needed
[2026-08-25 16:18:26,175.175 INFO    ] Checking for camera pi updates...
[2026-08-25 16:18:26,212.212 INFO    ] 200
[2026-08-25 16:18:26,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:26,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:18:26,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:18:26,321.321 INFO    ] No camera update needed
[2026-08-25 16:18:26,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:18:26,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:18:26,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:18:26,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:18:28,378.378 INFO    ] ================================================
[2026-08-25 16:18:28,393.393 INFO    ] Launching Daemon at Tue Aug 25 16:18:28 IST 2026
[2026-08-25 16:18:28,403.403 INFO    ] ================================================
[2026-08-25 16:18:28,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:18:28
[2026-08-25 16:18:29,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:18:29,858.858 INFO    ] Initializing speech engine...
[2026-08-25 16:18:29,864.864 INFO    ] 2026-08-25 16:18:29
[2026-08-25 16:18:30,124.124 INFO    ] 2026-08-25 16:18:30
[2026-08-25 16:18:30,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:18:30,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:18:30,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:18:30,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:18:30,613.613 INFO    ] time= 25/08/2026 16:18:30
[2026-08-25 16:18:30,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:18:30,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:18:30,785.785 INFO    ] No existing commands found in stream
[2026-08-25 16:18:35,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:18:35,814.814 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 16:18:37,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:18:37,643.643 INFO    ] Checking for system updates...
[2026-08-25 16:18:37,678.678 INFO    ] 200
[2026-08-25 16:18:37,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:37,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:18:37,741.741 INFO    ] No update needed
[2026-08-25 16:18:37,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 16:18:37,776.776 INFO    ] 200
[2026-08-25 16:18:37,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:37,819.819 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:18:37,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:18:37,881.881 INFO    ] No camera update needed
[2026-08-25 16:18:37,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:18:37,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:18:37,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:18:37,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:18:39,936.936 INFO    ] ================================================
[2026-08-25 16:18:39,951.951 INFO    ] Launching Daemon at Tue Aug 25 16:18:39 IST 2026
[2026-08-25 16:18:39,961.961 INFO    ] ================================================
[2026-08-25 16:18:40,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:18:40
[2026-08-25 16:18:41,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:18:41,492.492 INFO    ] Initializing speech engine...
[2026-08-25 16:18:41,502.502 INFO    ] 2026-08-25 16:18:41
[2026-08-25 16:18:41,752.752 INFO    ] 2026-08-25 16:18:41
[2026-08-25 16:18:41,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:18:42,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:18:42,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:18:42,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:18:42,243.243 INFO    ] time= 25/08/2026 16:18:42
[2026-08-25 16:18:42,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:18:42,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:18:42,473.473 INFO    ] No existing commands found in stream
[2026-08-25 16:18:47,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:18:47,492.492 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 16:18:51,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:18:51,332.332 INFO    ] Checking for system updates...
[2026-08-25 16:18:51,368.368 INFO    ] 200
[2026-08-25 16:18:51,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:51,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:18:51,425.425 INFO    ] No update needed
[2026-08-25 16:18:51,427.427 INFO    ] Checking for camera pi updates...
[2026-08-25 16:18:51,460.460 INFO    ] 200
[2026-08-25 16:18:51,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:18:51,509.509 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:18:51,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:18:51,572.572 INFO    ] No camera update needed
[2026-08-25 16:18:51,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:18:51,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:18:51,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:18:51,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:18:53,628.628 INFO    ] ================================================
[2026-08-25 16:18:53,643.643 INFO    ] Launching Daemon at Tue Aug 25 16:18:53 IST 2026
[2026-08-25 16:18:53,654.654 INFO    ] ================================================
[2026-08-25 16:18:54,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:18:54
[2026-08-25 16:18:54,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:18:55,134.134 INFO    ] Initializing speech engine...
[2026-08-25 16:18:55,142.142 INFO    ] 2026-08-25 16:18:55
[2026-08-25 16:18:55,423.423 INFO    ] 2026-08-25 16:18:55
[2026-08-25 16:18:55,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:18:55,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:18:55,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:18:55,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:18:55,931.931 INFO    ] time= 25/08/2026 16:18:55
[2026-08-25 16:18:55,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:18:55,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:18:56,086.086 INFO    ] No existing commands found in stream
[2026-08-25 16:19:01,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:19:01,118.118 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 16:19:04,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:19:04,712.712 INFO    ] Checking for system updates...
[2026-08-25 16:19:04,750.750 INFO    ] 200
[2026-08-25 16:19:04,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:04,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:19:04,807.807 INFO    ] No update needed
[2026-08-25 16:19:04,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 16:19:04,846.846 INFO    ] 200
[2026-08-25 16:19:04,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:04,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:19:04,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:19:04,941.941 INFO    ] No camera update needed
[2026-08-25 16:19:05,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:19:05,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:19:05,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:19:05,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:19:07,070.070 INFO    ] ================================================
[2026-08-25 16:19:07,086.086 INFO    ] Launching Daemon at Tue Aug 25 16:19:07 IST 2026
[2026-08-25 16:19:07,096.096 INFO    ] ================================================
[2026-08-25 16:19:07,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:19:07
[2026-08-25 16:19:08,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:19:08,548.548 INFO    ] Initializing speech engine...
[2026-08-25 16:19:08,558.558 INFO    ] 2026-08-25 16:19:08
[2026-08-25 16:19:08,806.806 INFO    ] 2026-08-25 16:19:08
[2026-08-25 16:19:08,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:19:09,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:19:09,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:19:09,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:19:09,359.359 INFO    ] time= 25/08/2026 16:19:09
[2026-08-25 16:19:09,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:19:09,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:19:09,515.515 INFO    ] No existing commands found in stream
[2026-08-25 16:19:14,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:19:15,627.627 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 16:19:19,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:19:19,511.511 INFO    ] Checking for system updates...
[2026-08-25 16:19:19,550.550 INFO    ] 200
[2026-08-25 16:19:19,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:19,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:19:19,618.618 INFO    ] No update needed
[2026-08-25 16:19:19,621.621 INFO    ] Checking for camera pi updates...
[2026-08-25 16:19:19,657.657 INFO    ] 200
[2026-08-25 16:19:19,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:19,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:19:19,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:19:19,861.861 INFO    ] No camera update needed
[2026-08-25 16:19:19,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:19:19,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:19:19,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:19:19,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:19:21,921.921 INFO    ] ================================================
[2026-08-25 16:19:21,936.936 INFO    ] Launching Daemon at Tue Aug 25 16:19:21 IST 2026
[2026-08-25 16:19:21,947.947 INFO    ] ================================================
[2026-08-25 16:19:22,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:19:22
[2026-08-25 16:19:23,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:19:23,431.431 INFO    ] Initializing speech engine...
[2026-08-25 16:19:23,439.439 INFO    ] 2026-08-25 16:19:23
[2026-08-25 16:19:23,703.703 INFO    ] 2026-08-25 16:19:23
[2026-08-25 16:19:23,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:19:23,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:19:23,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:19:24,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:19:24,096.096 INFO    ] time= 25/08/2026 16:19:24
[2026-08-25 16:19:24,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:19:24,131.131 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:19:24,223.223 INFO    ] No existing commands found in stream
[2026-08-25 16:19:29,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:19:29,263.263 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 16:19:33,111.111 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:19:33,114.114 INFO    ] Checking for system updates...
[2026-08-25 16:19:33,150.150 INFO    ] 200
[2026-08-25 16:19:33,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:33,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:19:33,206.206 INFO    ] No update needed
[2026-08-25 16:19:33,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 16:19:33,246.246 INFO    ] 200
[2026-08-25 16:19:33,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:33,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:19:33,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:19:33,335.335 INFO    ] No camera update needed
[2026-08-25 16:19:33,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:19:33,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:19:33,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:19:33,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:19:35,394.394 INFO    ] ================================================
[2026-08-25 16:19:35,409.409 INFO    ] Launching Daemon at Tue Aug 25 16:19:35 IST 2026
[2026-08-25 16:19:35,420.420 INFO    ] ================================================
[2026-08-25 16:19:36,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:19:36
[2026-08-25 16:19:36,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:19:37,059.059 INFO    ] Initializing speech engine...
[2026-08-25 16:19:37,067.067 INFO    ] 2026-08-25 16:19:37
[2026-08-25 16:19:37,345.345 INFO    ] 2026-08-25 16:19:37
[2026-08-25 16:19:37,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:19:37,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:19:37,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:19:37,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:19:37,820.820 INFO    ] time= 25/08/2026 16:19:37
[2026-08-25 16:19:37,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:19:37,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:19:38,035.035 INFO    ] No existing commands found in stream
[2026-08-25 16:19:43,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:19:43,053.053 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 16:19:46,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:19:46,232.232 INFO    ] Checking for system updates...
[2026-08-25 16:19:46,270.270 INFO    ] 200
[2026-08-25 16:19:46,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:46,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:19:46,331.331 INFO    ] No update needed
[2026-08-25 16:19:46,334.334 INFO    ] Checking for camera pi updates...
[2026-08-25 16:19:46,368.368 INFO    ] 200
[2026-08-25 16:19:46,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:19:46,419.419 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:19:46,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:19:46,466.466 INFO    ] No camera update needed
[2026-08-25 16:19:46,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:19:46,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:19:46,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:19:46,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:19:48,521.521 INFO    ] ================================================
[2026-08-25 16:19:48,536.536 INFO    ] Launching Daemon at Tue Aug 25 16:19:48 IST 2026
[2026-08-25 16:19:48,546.546 INFO    ] ================================================
[2026-08-25 16:19:49,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:19:49
[2026-08-25 16:19:49,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:19:50,002.002 INFO    ] Initializing speech engine...
[2026-08-25 16:19:50,009.009 INFO    ] 2026-08-25 16:19:50
[2026-08-25 16:19:50,279.279 INFO    ] 2026-08-25 16:19:50
[2026-08-25 16:19:50,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:19:50,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:19:50,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:19:50,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:19:50,853.853 INFO    ] time= 25/08/2026 16:19:50
[2026-08-25 16:19:50,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:19:50,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:19:51,012.012 INFO    ] No existing commands found in stream
[2026-08-25 16:19:56,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:19:56,046.046 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 16:20:00,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:20:00,071.071 INFO    ] Checking for system updates...
[2026-08-25 16:20:00,108.108 INFO    ] 200
[2026-08-25 16:20:00,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:00,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:20:00,165.165 INFO    ] No update needed
[2026-08-25 16:20:00,168.168 INFO    ] Checking for camera pi updates...
[2026-08-25 16:20:00,201.201 INFO    ] 200
[2026-08-25 16:20:00,204.204 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:00,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:20:00,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:20:00,310.310 INFO    ] No camera update needed
[2026-08-25 16:20:00,313.313 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:20:00,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:20:00,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:20:00,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:20:02,418.418 INFO    ] ================================================
[2026-08-25 16:20:02,450.450 INFO    ] Launching Daemon at Tue Aug 25 16:20:02 IST 2026
[2026-08-25 16:20:02,470.470 INFO    ] ================================================
[2026-08-25 16:20:03,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:20:03
[2026-08-25 16:20:03,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:20:04,159.159 INFO    ] Initializing speech engine...
[2026-08-25 16:20:04,167.167 INFO    ] 2026-08-25 16:20:04
[2026-08-25 16:20:04,429.429 INFO    ] 2026-08-25 16:20:04
[2026-08-25 16:20:04,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:20:04,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:20:04,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:20:04,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:20:04,919.919 INFO    ] time= 25/08/2026 16:20:04
[2026-08-25 16:20:04,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:20:04,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:20:05,114.114 INFO    ] No existing commands found in stream
[2026-08-25 16:20:10,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:20:10,140.140 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 16:20:11,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:20:11,452.452 INFO    ] Checking for system updates...
[2026-08-25 16:20:11,490.490 INFO    ] 200
[2026-08-25 16:20:11,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:11,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:20:11,551.551 INFO    ] No update needed
[2026-08-25 16:20:11,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 16:20:11,588.588 INFO    ] 200
[2026-08-25 16:20:11,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:11,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:20:11,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:20:11,680.680 INFO    ] No camera update needed
[2026-08-25 16:20:11,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:20:11,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:20:11,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:20:11,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:20:13,736.736 INFO    ] ================================================
[2026-08-25 16:20:13,751.751 INFO    ] Launching Daemon at Tue Aug 25 16:20:13 IST 2026
[2026-08-25 16:20:13,762.762 INFO    ] ================================================
[2026-08-25 16:20:14,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:20:14
[2026-08-25 16:20:14,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:20:15,219.219 INFO    ] Initializing speech engine...
[2026-08-25 16:20:15,237.237 INFO    ] 2026-08-25 16:20:15
[2026-08-25 16:20:15,500.500 INFO    ] 2026-08-25 16:20:15
[2026-08-25 16:20:15,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:20:15,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:20:15,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:20:15,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:20:15,967.967 INFO    ] time= 25/08/2026 16:20:15
[2026-08-25 16:20:16,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:20:16,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:20:16,221.221 INFO    ] No existing commands found in stream
[2026-08-25 16:20:21,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:20:21,254.254 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 16:20:22,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:20:22,979.979 INFO    ] Checking for system updates...
[2026-08-25 16:20:23,014.014 INFO    ] 200
[2026-08-25 16:20:23,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:23,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:20:23,071.071 INFO    ] No update needed
[2026-08-25 16:20:23,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 16:20:23,110.110 INFO    ] 200
[2026-08-25 16:20:23,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:23,153.153 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:20:23,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:20:23,203.203 INFO    ] No camera update needed
[2026-08-25 16:20:23,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:20:23,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:20:23,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:20:23,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:20:25,259.259 INFO    ] ================================================
[2026-08-25 16:20:25,275.275 INFO    ] Launching Daemon at Tue Aug 25 16:20:25 IST 2026
[2026-08-25 16:20:25,285.285 INFO    ] ================================================
[2026-08-25 16:20:25,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:20:25
[2026-08-25 16:20:26,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:20:26,871.871 INFO    ] Initializing speech engine...
[2026-08-25 16:20:26,881.881 INFO    ] 2026-08-25 16:20:26
[2026-08-25 16:20:27,149.149 INFO    ] 2026-08-25 16:20:27
[2026-08-25 16:20:27,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:20:27,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:20:27,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:20:27,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:20:27,637.637 INFO    ] time= 25/08/2026 16:20:27
[2026-08-25 16:20:27,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:20:27,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:20:27,843.843 INFO    ] No existing commands found in stream
[2026-08-25 16:20:32,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:20:32,874.874 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 16:20:34,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:20:34,370.370 INFO    ] Checking for system updates...
[2026-08-25 16:20:34,407.407 INFO    ] 200
[2026-08-25 16:20:34,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:34,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:20:34,469.469 INFO    ] No update needed
[2026-08-25 16:20:34,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 16:20:34,506.506 INFO    ] 200
[2026-08-25 16:20:34,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:34,550.550 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:20:34,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:20:34,608.608 INFO    ] No camera update needed
[2026-08-25 16:20:34,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:20:34,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:20:34,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:20:34,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:20:36,665.665 INFO    ] ================================================
[2026-08-25 16:20:36,679.679 INFO    ] Launching Daemon at Tue Aug 25 16:20:36 IST 2026
[2026-08-25 16:20:36,690.690 INFO    ] ================================================
[2026-08-25 16:20:37,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:20:37
[2026-08-25 16:20:37,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:20:38,195.195 INFO    ] Initializing speech engine...
[2026-08-25 16:20:38,203.203 INFO    ] 2026-08-25 16:20:38
[2026-08-25 16:20:38,471.471 INFO    ] 2026-08-25 16:20:38
[2026-08-25 16:20:38,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:20:38,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:20:38,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:20:38,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:20:38,968.968 INFO    ] time= 25/08/2026 16:20:38
[2026-08-25 16:20:39,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:20:39,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:20:39,154.154 INFO    ] No existing commands found in stream
[2026-08-25 16:20:44,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:20:44,182.182 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 16:20:47,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:20:47,962.962 INFO    ] Checking for system updates...
[2026-08-25 16:20:48,000.000 INFO    ] 200
[2026-08-25 16:20:48,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:48,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:20:48,063.063 INFO    ] No update needed
[2026-08-25 16:20:48,066.066 INFO    ] Checking for camera pi updates...
[2026-08-25 16:20:48,105.105 INFO    ] 200
[2026-08-25 16:20:48,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:20:48,161.161 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:20:48,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:20:48,214.214 INFO    ] No camera update needed
[2026-08-25 16:20:48,217.217 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:20:48,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:20:48,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:20:48,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:20:50,278.278 INFO    ] ================================================
[2026-08-25 16:20:50,293.293 INFO    ] Launching Daemon at Tue Aug 25 16:20:50 IST 2026
[2026-08-25 16:20:50,304.304 INFO    ] ================================================
[2026-08-25 16:20:50,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:20:50
[2026-08-25 16:20:51,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:20:51,726.726 INFO    ] Initializing speech engine...
[2026-08-25 16:20:51,735.735 INFO    ] 2026-08-25 16:20:51
[2026-08-25 16:20:51,981.981 INFO    ] 2026-08-25 16:20:51
[2026-08-25 16:20:52,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:20:52,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:20:52,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:20:52,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:20:52,475.475 INFO    ] time= 25/08/2026 16:20:52
[2026-08-25 16:20:52,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:20:52,566.566 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:20:52,632.632 INFO    ] No existing commands found in stream
[2026-08-25 16:20:57,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:20:57,648.648 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 16:21:00,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:21:00,831.831 INFO    ] Checking for system updates...
[2026-08-25 16:21:00,869.869 INFO    ] 200
[2026-08-25 16:21:00,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:00,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:21:00,927.927 INFO    ] No update needed
[2026-08-25 16:21:00,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 16:21:00,963.963 INFO    ] 200
[2026-08-25 16:21:00,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:01,010.010 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:21:01,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:21:01,059.059 INFO    ] No camera update needed
[2026-08-25 16:21:01,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:21:01,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:21:01,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:21:01,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:21:03,117.117 INFO    ] ================================================
[2026-08-25 16:21:03,132.132 INFO    ] Launching Daemon at Tue Aug 25 16:21:03 IST 2026
[2026-08-25 16:21:03,143.143 INFO    ] ================================================
[2026-08-25 16:21:03,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:21:03
[2026-08-25 16:21:04,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:21:04,665.665 INFO    ] Initializing speech engine...
[2026-08-25 16:21:04,679.679 INFO    ] 2026-08-25 16:21:04
[2026-08-25 16:21:04,988.988 INFO    ] 2026-08-25 16:21:04
[2026-08-25 16:21:05,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:21:05,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:21:05,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:21:05,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:21:05,505.505 INFO    ] time= 25/08/2026 16:21:05
[2026-08-25 16:21:05,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:21:05,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:21:05,686.686 INFO    ] No existing commands found in stream
[2026-08-25 16:21:10,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:21:10,715.715 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 16:21:14,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:21:14,291.291 INFO    ] Checking for system updates...
[2026-08-25 16:21:14,328.328 INFO    ] 200
[2026-08-25 16:21:14,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:14,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:21:14,387.387 INFO    ] No update needed
[2026-08-25 16:21:14,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 16:21:14,422.422 INFO    ] 200
[2026-08-25 16:21:14,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:14,465.465 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:21:14,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:21:14,516.516 INFO    ] No camera update needed
[2026-08-25 16:21:14,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:21:14,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:21:14,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:21:14,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:21:16,572.572 INFO    ] ================================================
[2026-08-25 16:21:16,587.587 INFO    ] Launching Daemon at Tue Aug 25 16:21:16 IST 2026
[2026-08-25 16:21:16,598.598 INFO    ] ================================================
[2026-08-25 16:21:17,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:21:17
[2026-08-25 16:21:17,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:21:18,184.184 INFO    ] Initializing speech engine...
[2026-08-25 16:21:18,198.198 INFO    ] 2026-08-25 16:21:18
[2026-08-25 16:21:18,469.469 INFO    ] 2026-08-25 16:21:18
[2026-08-25 16:21:18,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:21:18,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:21:18,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:21:18,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:21:18,975.975 INFO    ] time= 25/08/2026 16:21:18
[2026-08-25 16:21:19,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:21:19,050.050 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:21:19,187.187 INFO    ] No existing commands found in stream
[2026-08-25 16:21:24,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:21:24,212.212 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 16:21:25,361.361 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:21:25,364.364 INFO    ] Checking for system updates...
[2026-08-25 16:21:25,401.401 INFO    ] 200
[2026-08-25 16:21:25,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:25,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:21:25,459.459 INFO    ] No update needed
[2026-08-25 16:21:25,461.461 INFO    ] Checking for camera pi updates...
[2026-08-25 16:21:25,499.499 INFO    ] 200
[2026-08-25 16:21:25,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:25,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:21:25,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:21:25,698.698 INFO    ] No camera update needed
[2026-08-25 16:21:25,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:21:25,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:21:25,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:21:25,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:21:27,754.754 INFO    ] ================================================
[2026-08-25 16:21:27,769.769 INFO    ] Launching Daemon at Tue Aug 25 16:21:27 IST 2026
[2026-08-25 16:21:27,779.779 INFO    ] ================================================
[2026-08-25 16:21:28,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:21:28
[2026-08-25 16:21:28,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:21:29,196.196 INFO    ] Initializing speech engine...
[2026-08-25 16:21:29,205.205 INFO    ] 2026-08-25 16:21:29
[2026-08-25 16:21:29,473.473 INFO    ] 2026-08-25 16:21:29
[2026-08-25 16:21:29,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:21:29,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:21:29,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:21:29,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:21:30,015.015 INFO    ] time= 25/08/2026 16:21:29
[2026-08-25 16:21:30,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:21:30,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:21:30,154.154 INFO    ] No existing commands found in stream
[2026-08-25 16:21:35,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:21:35,180.180 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 16:21:37,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:21:37,395.395 INFO    ] Checking for system updates...
[2026-08-25 16:21:37,430.430 INFO    ] 200
[2026-08-25 16:21:37,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:37,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:21:37,488.488 INFO    ] No update needed
[2026-08-25 16:21:37,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 16:21:37,524.524 INFO    ] 200
[2026-08-25 16:21:37,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:37,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:21:37,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:21:37,616.616 INFO    ] No camera update needed
[2026-08-25 16:21:37,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:21:37,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:21:37,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:21:37,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:21:39,674.674 INFO    ] ================================================
[2026-08-25 16:21:39,689.689 INFO    ] Launching Daemon at Tue Aug 25 16:21:39 IST 2026
[2026-08-25 16:21:39,700.700 INFO    ] ================================================
[2026-08-25 16:21:40,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:21:40
[2026-08-25 16:21:40,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:21:41,121.121 INFO    ] Initializing speech engine...
[2026-08-25 16:21:41,131.131 INFO    ] 2026-08-25 16:21:41
[2026-08-25 16:21:41,410.410 INFO    ] 2026-08-25 16:21:41
[2026-08-25 16:21:41,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:21:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:21:41,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:21:41,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:21:41,903.903 INFO    ] time= 25/08/2026 16:21:41
[2026-08-25 16:21:41,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:21:41,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:21:42,133.133 INFO    ] No existing commands found in stream
[2026-08-25 16:21:47,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:21:47,155.155 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 16:21:49,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:21:49,552.552 INFO    ] Checking for system updates...
[2026-08-25 16:21:49,589.589 INFO    ] 200
[2026-08-25 16:21:49,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:49,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:21:49,651.651 INFO    ] No update needed
[2026-08-25 16:21:49,654.654 INFO    ] Checking for camera pi updates...
[2026-08-25 16:21:49,689.689 INFO    ] 200
[2026-08-25 16:21:49,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:21:49,737.737 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:21:49,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:21:49,789.789 INFO    ] No camera update needed
[2026-08-25 16:21:49,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:21:49,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:21:49,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:21:49,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:21:51,846.846 INFO    ] ================================================
[2026-08-25 16:21:51,860.860 INFO    ] Launching Daemon at Tue Aug 25 16:21:51 IST 2026
[2026-08-25 16:21:51,871.871 INFO    ] ================================================
[2026-08-25 16:21:52,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:21:52
[2026-08-25 16:21:53,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:21:53,465.465 INFO    ] Initializing speech engine...
[2026-08-25 16:21:53,474.474 INFO    ] 2026-08-25 16:21:53
[2026-08-25 16:21:53,759.759 INFO    ] 2026-08-25 16:21:53
[2026-08-25 16:21:53,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:21:54,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:21:54,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:21:54,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:21:54,265.265 INFO    ] time= 25/08/2026 16:21:54
[2026-08-25 16:21:54,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:21:54,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:21:54,476.476 INFO    ] No existing commands found in stream
[2026-08-25 16:21:59,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:21:59,494.494 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 16:22:02,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:22:02,444.444 INFO    ] Checking for system updates...
[2026-08-25 16:22:02,489.489 INFO    ] 200
[2026-08-25 16:22:02,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:02,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:22:02,560.560 INFO    ] No update needed
[2026-08-25 16:22:02,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 16:22:02,605.605 INFO    ] 200
[2026-08-25 16:22:02,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:02,655.655 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:22:02,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:22:02,711.711 INFO    ] No camera update needed
[2026-08-25 16:22:02,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:22:02,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:22:02,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:22:02,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:22:04,771.771 INFO    ] ================================================
[2026-08-25 16:22:04,787.787 INFO    ] Launching Daemon at Tue Aug 25 16:22:04 IST 2026
[2026-08-25 16:22:04,798.798 INFO    ] ================================================
[2026-08-25 16:22:05,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:22:05
[2026-08-25 16:22:05,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:22:06,228.228 INFO    ] Initializing speech engine...
[2026-08-25 16:22:06,234.234 INFO    ] 2026-08-25 16:22:06
[2026-08-25 16:22:06,508.508 INFO    ] 2026-08-25 16:22:06
[2026-08-25 16:22:06,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:22:06,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:22:06,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:22:06,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:22:06,890.890 INFO    ] time= 25/08/2026 16:22:06
[2026-08-25 16:22:06,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:22:06,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:22:07,049.049 INFO    ] No existing commands found in stream
[2026-08-25 16:22:12,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:22:12,077.077 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 16:22:14,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:22:14,815.815 INFO    ] Checking for system updates...
[2026-08-25 16:22:14,852.852 INFO    ] 200
[2026-08-25 16:22:14,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:14,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:22:14,915.915 INFO    ] No update needed
[2026-08-25 16:22:14,918.918 INFO    ] Checking for camera pi updates...
[2026-08-25 16:22:14,951.951 INFO    ] 200
[2026-08-25 16:22:14,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:15,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:22:15,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:22:15,047.047 INFO    ] No camera update needed
[2026-08-25 16:22:15,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:22:15,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:22:15,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:22:15,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:22:17,103.103 INFO    ] ================================================
[2026-08-25 16:22:17,119.119 INFO    ] Launching Daemon at Tue Aug 25 16:22:17 IST 2026
[2026-08-25 16:22:17,130.130 INFO    ] ================================================
[2026-08-25 16:22:17,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:22:17
[2026-08-25 16:22:18,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:22:18,546.546 INFO    ] Initializing speech engine...
[2026-08-25 16:22:18,555.555 INFO    ] 2026-08-25 16:22:18
[2026-08-25 16:22:18,799.799 INFO    ] 2026-08-25 16:22:18
[2026-08-25 16:22:18,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:22:19,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:22:19,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:22:19,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:22:19,354.354 INFO    ] time= 25/08/2026 16:22:19
[2026-08-25 16:22:19,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:22:19,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:22:19,496.496 INFO    ] No existing commands found in stream
[2026-08-25 16:22:24,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:22:24,518.518 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 16:22:26,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:22:26,284.284 INFO    ] Checking for system updates...
[2026-08-25 16:22:26,323.323 INFO    ] 200
[2026-08-25 16:22:26,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:26,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:22:26,382.382 INFO    ] No update needed
[2026-08-25 16:22:26,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 16:22:26,423.423 INFO    ] 200
[2026-08-25 16:22:26,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:26,467.467 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:22:26,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:22:26,515.515 INFO    ] No camera update needed
[2026-08-25 16:22:26,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:22:26,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:22:26,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:22:26,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:22:28,573.573 INFO    ] ================================================
[2026-08-25 16:22:28,588.588 INFO    ] Launching Daemon at Tue Aug 25 16:22:28 IST 2026
[2026-08-25 16:22:28,600.600 INFO    ] ================================================
[2026-08-25 16:22:29,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:22:29
[2026-08-25 16:22:29,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:22:30,016.016 INFO    ] Initializing speech engine...
[2026-08-25 16:22:30,022.022 INFO    ] 2026-08-25 16:22:30
[2026-08-25 16:22:30,265.265 INFO    ] 2026-08-25 16:22:30
[2026-08-25 16:22:30,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:22:30,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:22:30,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:22:30,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:22:30,747.747 INFO    ] time= 25/08/2026 16:22:30
[2026-08-25 16:22:30,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:22:30,822.822 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:22:30,960.960 INFO    ] No existing commands found in stream
[2026-08-25 16:22:35,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:22:35,983.983 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 16:22:36,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:22:36,969.969 INFO    ] Checking for system updates...
[2026-08-25 16:22:37,005.005 INFO    ] 200
[2026-08-25 16:22:37,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:37,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:22:37,069.069 INFO    ] No update needed
[2026-08-25 16:22:37,071.071 INFO    ] Checking for camera pi updates...
[2026-08-25 16:22:37,105.105 INFO    ] 200
[2026-08-25 16:22:37,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:37,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:22:37,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:22:37,210.210 INFO    ] No camera update needed
[2026-08-25 16:22:37,212.212 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:22:37,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:22:37,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:22:37,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:22:39,265.265 INFO    ] ================================================
[2026-08-25 16:22:39,289.289 INFO    ] Launching Daemon at Tue Aug 25 16:22:39 IST 2026
[2026-08-25 16:22:39,300.300 INFO    ] ================================================
[2026-08-25 16:22:39,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:22:39
[2026-08-25 16:22:40,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:22:40,726.726 INFO    ] Initializing speech engine...
[2026-08-25 16:22:40,734.734 INFO    ] 2026-08-25 16:22:40
[2026-08-25 16:22:40,986.986 INFO    ] 2026-08-25 16:22:40
[2026-08-25 16:22:41,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:22:41,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:22:41,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:22:41,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:22:41,363.363 INFO    ] time= 25/08/2026 16:22:41
[2026-08-25 16:22:41,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:22:41,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:22:41,546.546 INFO    ] No existing commands found in stream
[2026-08-25 16:22:46,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:22:46,574.574 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 16:22:50,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:22:50,720.720 INFO    ] Checking for system updates...
[2026-08-25 16:22:50,761.761 INFO    ] 200
[2026-08-25 16:22:50,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:50,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:22:50,818.818 INFO    ] No update needed
[2026-08-25 16:22:50,821.821 INFO    ] Checking for camera pi updates...
[2026-08-25 16:22:50,858.858 INFO    ] 200
[2026-08-25 16:22:50,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:22:50,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:22:50,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:22:50,950.950 INFO    ] No camera update needed
[2026-08-25 16:22:50,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:22:50,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:22:50,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:22:50,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:22:53,007.007 INFO    ] ================================================
[2026-08-25 16:22:53,022.022 INFO    ] Launching Daemon at Tue Aug 25 16:22:53 IST 2026
[2026-08-25 16:22:53,034.034 INFO    ] ================================================
[2026-08-25 16:22:53,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:22:53
[2026-08-25 16:22:54,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:22:54,457.457 INFO    ] Initializing speech engine...
[2026-08-25 16:22:54,467.467 INFO    ] 2026-08-25 16:22:54
[2026-08-25 16:22:54,723.723 INFO    ] 2026-08-25 16:22:54
[2026-08-25 16:22:54,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:22:54,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:22:54,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:22:55,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:22:55,080.080 INFO    ] time= 25/08/2026 16:22:55
[2026-08-25 16:22:55,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:22:55,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:22:55,275.275 INFO    ] No existing commands found in stream
[2026-08-25 16:23:00,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:23:00,290.290 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 16:23:00,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:23:00,922.922 INFO    ] Checking for system updates...
[2026-08-25 16:23:00,970.970 INFO    ] 200
[2026-08-25 16:23:00,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:01,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:23:01,034.034 INFO    ] No update needed
[2026-08-25 16:23:01,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 16:23:01,070.070 INFO    ] 200
[2026-08-25 16:23:01,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:01,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:23:01,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:23:01,169.169 INFO    ] No camera update needed
[2026-08-25 16:23:01,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:23:01,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:23:01,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:23:01,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:23:03,226.226 INFO    ] ================================================
[2026-08-25 16:23:03,242.242 INFO    ] Launching Daemon at Tue Aug 25 16:23:03 IST 2026
[2026-08-25 16:23:03,253.253 INFO    ] ================================================
[2026-08-25 16:23:03,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:23:03
[2026-08-25 16:23:04,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:23:04,779.779 INFO    ] Initializing speech engine...
[2026-08-25 16:23:04,789.789 INFO    ] 2026-08-25 16:23:04
[2026-08-25 16:23:05,032.032 INFO    ] 2026-08-25 16:23:05
[2026-08-25 16:23:05,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:23:05,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:23:05,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:23:05,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:23:05,521.521 INFO    ] time= 25/08/2026 16:23:05
[2026-08-25 16:23:05,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:23:05,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:23:05,728.728 INFO    ] No existing commands found in stream
[2026-08-25 16:23:10,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:23:10,751.751 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 16:23:11,833.833 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:23:11,836.836 INFO    ] Checking for system updates...
[2026-08-25 16:23:11,876.876 INFO    ] 200
[2026-08-25 16:23:11,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:11,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:23:11,935.935 INFO    ] No update needed
[2026-08-25 16:23:11,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 16:23:11,971.971 INFO    ] 200
[2026-08-25 16:23:11,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:12,013.013 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:23:12,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:23:12,066.066 INFO    ] No camera update needed
[2026-08-25 16:23:12,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:23:12,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:23:12,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:23:12,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:23:14,124.124 INFO    ] ================================================
[2026-08-25 16:23:14,139.139 INFO    ] Launching Daemon at Tue Aug 25 16:23:14 IST 2026
[2026-08-25 16:23:14,150.150 INFO    ] ================================================
[2026-08-25 16:23:14,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:23:14
[2026-08-25 16:23:15,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:23:15,585.585 INFO    ] Initializing speech engine...
[2026-08-25 16:23:15,598.598 INFO    ] 2026-08-25 16:23:15
[2026-08-25 16:23:15,884.884 INFO    ] 2026-08-25 16:23:15
[2026-08-25 16:23:15,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:23:16,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:23:16,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:23:16,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:23:16,265.265 INFO    ] time= 25/08/2026 16:23:16
[2026-08-25 16:23:16,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:23:16,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:23:16,407.407 INFO    ] No existing commands found in stream
[2026-08-25 16:23:21,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:23:21,440.440 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 16:23:25,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:23:25,789.789 INFO    ] Checking for system updates...
[2026-08-25 16:23:25,826.826 INFO    ] 200
[2026-08-25 16:23:25,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:25,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:23:25,890.890 INFO    ] No update needed
[2026-08-25 16:23:25,893.893 INFO    ] Checking for camera pi updates...
[2026-08-25 16:23:25,926.926 INFO    ] 200
[2026-08-25 16:23:25,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:25,969.969 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:23:26,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:23:26,018.018 INFO    ] No camera update needed
[2026-08-25 16:23:26,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:23:26,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:23:26,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:23:26,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:23:28,073.073 INFO    ] ================================================
[2026-08-25 16:23:28,089.089 INFO    ] Launching Daemon at Tue Aug 25 16:23:28 IST 2026
[2026-08-25 16:23:28,101.101 INFO    ] ================================================
[2026-08-25 16:23:28,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:23:28
[2026-08-25 16:23:29,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:23:29,522.522 INFO    ] Initializing speech engine...
[2026-08-25 16:23:29,535.535 INFO    ] 2026-08-25 16:23:29
[2026-08-25 16:23:29,783.783 INFO    ] 2026-08-25 16:23:29
[2026-08-25 16:23:29,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:23:29,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:23:30,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:23:30,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:23:30,165.165 INFO    ] time= 25/08/2026 16:23:30
[2026-08-25 16:23:30,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:23:30,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:23:30,362.362 INFO    ] No existing commands found in stream
[2026-08-25 16:23:35,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:23:35,376.376 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 16:23:39,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:23:39,265.265 INFO    ] Checking for system updates...
[2026-08-25 16:23:39,304.304 INFO    ] 200
[2026-08-25 16:23:39,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:39,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:23:39,363.363 INFO    ] No update needed
[2026-08-25 16:23:39,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 16:23:39,402.402 INFO    ] 200
[2026-08-25 16:23:39,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:39,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:23:39,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:23:39,502.502 INFO    ] No camera update needed
[2026-08-25 16:23:39,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:23:39,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:23:39,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:23:39,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:23:41,557.557 INFO    ] ================================================
[2026-08-25 16:23:41,573.573 INFO    ] Launching Daemon at Tue Aug 25 16:23:41 IST 2026
[2026-08-25 16:23:41,585.585 INFO    ] ================================================
[2026-08-25 16:23:42,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:23:42
[2026-08-25 16:23:42,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:23:43,029.029 INFO    ] Initializing speech engine...
[2026-08-25 16:23:43,036.036 INFO    ] 2026-08-25 16:23:43
[2026-08-25 16:23:43,285.285 INFO    ] 2026-08-25 16:23:43
[2026-08-25 16:23:43,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:23:43,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:23:43,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:23:43,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:23:43,764.764 INFO    ] time= 25/08/2026 16:23:43
[2026-08-25 16:23:43,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:23:43,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:23:44,007.007 INFO    ] No existing commands found in stream
[2026-08-25 16:23:49,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:23:49,027.027 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 16:23:53,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:23:53,685.685 INFO    ] Checking for system updates...
[2026-08-25 16:23:53,721.721 INFO    ] 200
[2026-08-25 16:23:53,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:53,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:23:53,788.788 INFO    ] No update needed
[2026-08-25 16:23:53,791.791 INFO    ] Checking for camera pi updates...
[2026-08-25 16:23:53,825.825 INFO    ] 200
[2026-08-25 16:23:53,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:23:53,868.868 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:23:53,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:23:53,927.927 INFO    ] No camera update needed
[2026-08-25 16:23:53,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:23:53,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:23:53,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:23:53,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:23:55,983.983 INFO    ] ================================================
[2026-08-25 16:23:56,999.999 INFO    ] Launching Daemon at Tue Aug 25 16:23:55 IST 2026
[2026-08-25 16:23:56,010.010 INFO    ] ================================================
[2026-08-25 16:23:56,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:23:56
[2026-08-25 16:23:57,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:23:57,470.470 INFO    ] Initializing speech engine...
[2026-08-25 16:23:57,480.480 INFO    ] 2026-08-25 16:23:57
[2026-08-25 16:23:57,729.729 INFO    ] 2026-08-25 16:23:57
[2026-08-25 16:23:57,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:23:57,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:23:57,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:23:58,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:23:58,214.214 INFO    ] time= 25/08/2026 16:23:58
[2026-08-25 16:23:58,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:23:58,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:23:58,426.426 INFO    ] No existing commands found in stream
[2026-08-25 16:24:03,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:24:03,456.456 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 16:24:04,931.931 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:24:04,934.934 INFO    ] Checking for system updates...
[2026-08-25 16:24:04,969.969 INFO    ] 200
[2026-08-25 16:24:04,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:05,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:24:05,029.029 INFO    ] No update needed
[2026-08-25 16:24:05,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 16:24:05,072.072 INFO    ] 200
[2026-08-25 16:24:05,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:05,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:24:05,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:24:05,197.197 INFO    ] No camera update needed
[2026-08-25 16:24:05,199.199 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:24:05,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:24:05,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:24:05,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:24:07,258.258 INFO    ] ================================================
[2026-08-25 16:24:07,273.273 INFO    ] Launching Daemon at Tue Aug 25 16:24:07 IST 2026
[2026-08-25 16:24:07,284.284 INFO    ] ================================================
[2026-08-25 16:24:07,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:24:07
[2026-08-25 16:24:08,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:24:08,690.690 INFO    ] Initializing speech engine...
[2026-08-25 16:24:08,705.705 INFO    ] 2026-08-25 16:24:08
[2026-08-25 16:24:08,971.971 INFO    ] 2026-08-25 16:24:08
[2026-08-25 16:24:09,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:24:09,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:24:09,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:24:09,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:24:09,346.346 INFO    ] time= 25/08/2026 16:24:09
[2026-08-25 16:24:09,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:24:09,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:24:09,548.548 INFO    ] No existing commands found in stream
[2026-08-25 16:24:14,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:24:14,561.561 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 16:24:16,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:24:16,363.363 INFO    ] Checking for system updates...
[2026-08-25 16:24:16,402.402 INFO    ] 200
[2026-08-25 16:24:16,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:16,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:24:16,460.460 INFO    ] No update needed
[2026-08-25 16:24:16,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 16:24:16,502.502 INFO    ] 200
[2026-08-25 16:24:16,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:16,545.545 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:24:16,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:24:16,609.609 INFO    ] No camera update needed
[2026-08-25 16:24:16,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:24:16,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:24:16,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:24:16,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:24:18,666.666 INFO    ] ================================================
[2026-08-25 16:24:18,681.681 INFO    ] Launching Daemon at Tue Aug 25 16:24:18 IST 2026
[2026-08-25 16:24:18,692.692 INFO    ] ================================================
[2026-08-25 16:24:19,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:24:19
[2026-08-25 16:24:19,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:24:20,094.094 INFO    ] Initializing speech engine...
[2026-08-25 16:24:20,117.117 INFO    ] 2026-08-25 16:24:20
[2026-08-25 16:24:20,372.372 INFO    ] 2026-08-25 16:24:20
[2026-08-25 16:24:20,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:24:20,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:24:20,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:24:20,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:24:20,820.820 INFO    ] time= 25/08/2026 16:24:20
[2026-08-25 16:24:20,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:24:20,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:24:21,096.096 INFO    ] No existing commands found in stream
[2026-08-25 16:24:26,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:24:26,116.116 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 16:24:27,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:24:27,891.891 INFO    ] Checking for system updates...
[2026-08-25 16:24:27,929.929 INFO    ] 200
[2026-08-25 16:24:27,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:27,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:24:27,987.987 INFO    ] No update needed
[2026-08-25 16:24:27,989.989 INFO    ] Checking for camera pi updates...
[2026-08-25 16:24:28,025.025 INFO    ] 200
[2026-08-25 16:24:28,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:28,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:24:28,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:24:28,118.118 INFO    ] No camera update needed
[2026-08-25 16:24:28,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:24:28,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:24:28,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:24:28,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:24:30,174.174 INFO    ] ================================================
[2026-08-25 16:24:30,189.189 INFO    ] Launching Daemon at Tue Aug 25 16:24:30 IST 2026
[2026-08-25 16:24:30,201.201 INFO    ] ================================================
[2026-08-25 16:24:30,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:24:30
[2026-08-25 16:24:31,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:24:31,712.712 INFO    ] Initializing speech engine...
[2026-08-25 16:24:31,719.719 INFO    ] 2026-08-25 16:24:31
[2026-08-25 16:24:32,030.030 INFO    ] 2026-08-25 16:24:32
[2026-08-25 16:24:32,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:24:32,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:24:32,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:24:32,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:24:32,563.563 INFO    ] time= 25/08/2026 16:24:32
[2026-08-25 16:24:32,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:24:32,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:24:32,729.729 INFO    ] No existing commands found in stream
[2026-08-25 16:24:37,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:24:37,756.756 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 16:24:38,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:24:38,989.989 INFO    ] Checking for system updates...
[2026-08-25 16:24:39,025.025 INFO    ] 200
[2026-08-25 16:24:39,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:39,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:24:39,083.083 INFO    ] No update needed
[2026-08-25 16:24:39,085.085 INFO    ] Checking for camera pi updates...
[2026-08-25 16:24:39,120.120 INFO    ] 200
[2026-08-25 16:24:39,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:39,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:24:39,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:24:39,217.217 INFO    ] No camera update needed
[2026-08-25 16:24:39,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:24:39,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:24:39,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:24:39,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:24:41,274.274 INFO    ] ================================================
[2026-08-25 16:24:41,289.289 INFO    ] Launching Daemon at Tue Aug 25 16:24:41 IST 2026
[2026-08-25 16:24:41,300.300 INFO    ] ================================================
[2026-08-25 16:24:41,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:24:41
[2026-08-25 16:24:42,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:24:42,705.705 INFO    ] Initializing speech engine...
[2026-08-25 16:24:42,725.725 INFO    ] 2026-08-25 16:24:42
[2026-08-25 16:24:42,994.994 INFO    ] 2026-08-25 16:24:42
[2026-08-25 16:24:43,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:24:43,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:24:43,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:24:43,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:24:43,387.387 INFO    ] time= 25/08/2026 16:24:43
[2026-08-25 16:24:43,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:24:43,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:24:43,580.580 INFO    ] No existing commands found in stream
[2026-08-25 16:24:48,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:24:48,599.599 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 16:24:51,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:24:51,936.936 INFO    ] Checking for system updates...
[2026-08-25 16:24:51,974.974 INFO    ] 200
[2026-08-25 16:24:51,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:52,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:24:52,037.037 INFO    ] No update needed
[2026-08-25 16:24:52,039.039 INFO    ] Checking for camera pi updates...
[2026-08-25 16:24:52,073.073 INFO    ] 200
[2026-08-25 16:24:52,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:24:52,120.120 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:24:52,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:24:52,167.167 INFO    ] No camera update needed
[2026-08-25 16:24:52,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:24:52,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:24:52,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:24:52,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:24:54,227.227 INFO    ] ================================================
[2026-08-25 16:24:54,242.242 INFO    ] Launching Daemon at Tue Aug 25 16:24:54 IST 2026
[2026-08-25 16:24:54,253.253 INFO    ] ================================================
[2026-08-25 16:24:54,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:24:54
[2026-08-25 16:24:55,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:24:55,668.668 INFO    ] Initializing speech engine...
[2026-08-25 16:24:55,678.678 INFO    ] 2026-08-25 16:24:55
[2026-08-25 16:24:55,925.925 INFO    ] 2026-08-25 16:24:55
[2026-08-25 16:24:55,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:24:56,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:24:56,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:24:56,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:24:56,423.423 INFO    ] time= 25/08/2026 16:24:56
[2026-08-25 16:24:56,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:24:56,496.496 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:24:56,646.646 INFO    ] No existing commands found in stream
[2026-08-25 16:25:01,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:25:01,670.670 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 16:25:04,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:25:04,455.455 INFO    ] Checking for system updates...
[2026-08-25 16:25:04,493.493 INFO    ] 200
[2026-08-25 16:25:04,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:04,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:25:04,557.557 INFO    ] No update needed
[2026-08-25 16:25:04,559.559 INFO    ] Checking for camera pi updates...
[2026-08-25 16:25:04,592.592 INFO    ] 200
[2026-08-25 16:25:04,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:04,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:25:04,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:25:04,685.685 INFO    ] No camera update needed
[2026-08-25 16:25:04,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:25:04,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:25:04,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:25:04,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:25:06,741.741 INFO    ] ================================================
[2026-08-25 16:25:06,757.757 INFO    ] Launching Daemon at Tue Aug 25 16:25:06 IST 2026
[2026-08-25 16:25:06,768.768 INFO    ] ================================================
[2026-08-25 16:25:07,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:25:07
[2026-08-25 16:25:07,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:25:08,181.181 INFO    ] Initializing speech engine...
[2026-08-25 16:25:08,196.196 INFO    ] 2026-08-25 16:25:08
[2026-08-25 16:25:08,472.472 INFO    ] 2026-08-25 16:25:08
[2026-08-25 16:25:08,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:25:08,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:25:08,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:25:08,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:25:08,986.986 INFO    ] time= 25/08/2026 16:25:08
[2026-08-25 16:25:09,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:25:09,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:25:09,124.124 INFO    ] No existing commands found in stream
[2026-08-25 16:25:14,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:25:14,139.139 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 16:25:14,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:25:14,625.625 INFO    ] Checking for system updates...
[2026-08-25 16:25:14,664.664 INFO    ] 200
[2026-08-25 16:25:14,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:14,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:25:14,722.722 INFO    ] No update needed
[2026-08-25 16:25:14,725.725 INFO    ] Checking for camera pi updates...
[2026-08-25 16:25:14,763.763 INFO    ] 200
[2026-08-25 16:25:14,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:14,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:25:14,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:25:14,857.857 INFO    ] No camera update needed
[2026-08-25 16:25:14,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:25:14,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:25:14,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:25:14,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:25:16,911.911 INFO    ] ================================================
[2026-08-25 16:25:16,927.927 INFO    ] Launching Daemon at Tue Aug 25 16:25:16 IST 2026
[2026-08-25 16:25:16,938.938 INFO    ] ================================================
[2026-08-25 16:25:17,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:25:17
[2026-08-25 16:25:18,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:25:18,392.392 INFO    ] Initializing speech engine...
[2026-08-25 16:25:18,401.401 INFO    ] 2026-08-25 16:25:18
[2026-08-25 16:25:18,661.661 INFO    ] 2026-08-25 16:25:18
[2026-08-25 16:25:18,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:25:18,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:25:18,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:25:19,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:25:19,116.116 INFO    ] time= 25/08/2026 16:25:19
[2026-08-25 16:25:19,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:25:19,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:25:19,350.350 INFO    ] No existing commands found in stream
[2026-08-25 16:25:24,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:25:24,369.369 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 16:25:26,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:25:26,639.639 INFO    ] Checking for system updates...
[2026-08-25 16:25:26,680.680 INFO    ] 200
[2026-08-25 16:25:26,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:26,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:25:26,737.737 INFO    ] No update needed
[2026-08-25 16:25:26,739.739 INFO    ] Checking for camera pi updates...
[2026-08-25 16:25:26,772.772 INFO    ] 200
[2026-08-25 16:25:26,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:26,821.821 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:25:26,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:25:26,879.879 INFO    ] No camera update needed
[2026-08-25 16:25:26,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:25:26,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:25:26,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:25:26,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:25:28,936.936 INFO    ] ================================================
[2026-08-25 16:25:28,952.952 INFO    ] Launching Daemon at Tue Aug 25 16:25:28 IST 2026
[2026-08-25 16:25:28,963.963 INFO    ] ================================================
[2026-08-25 16:25:29,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:25:29
[2026-08-25 16:25:30,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:25:30,418.418 INFO    ] Initializing speech engine...
[2026-08-25 16:25:30,425.425 INFO    ] 2026-08-25 16:25:30
[2026-08-25 16:25:30,686.686 INFO    ] 2026-08-25 16:25:30
[2026-08-25 16:25:30,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:25:30,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:25:30,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:25:31,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:25:31,173.173 INFO    ] time= 25/08/2026 16:25:31
[2026-08-25 16:25:31,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:25:31,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:25:31,386.386 INFO    ] No existing commands found in stream
[2026-08-25 16:25:36,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:25:36,406.406 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 16:25:37,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:25:37,896.896 INFO    ] Checking for system updates...
[2026-08-25 16:25:37,932.932 INFO    ] 200
[2026-08-25 16:25:37,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:37,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:25:37,997.997 INFO    ] No update needed
[2026-08-25 16:25:37,999.999 INFO    ] Checking for camera pi updates...
[2026-08-25 16:25:38,037.037 INFO    ] 200
[2026-08-25 16:25:38,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:38,080.080 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:25:38,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:25:38,225.225 INFO    ] No camera update needed
[2026-08-25 16:25:38,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:25:38,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:25:38,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:25:38,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:25:40,284.284 INFO    ] ================================================
[2026-08-25 16:25:40,300.300 INFO    ] Launching Daemon at Tue Aug 25 16:25:40 IST 2026
[2026-08-25 16:25:40,311.311 INFO    ] ================================================
[2026-08-25 16:25:40,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:25:40
[2026-08-25 16:25:41,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:25:41,730.730 INFO    ] Initializing speech engine...
[2026-08-25 16:25:41,739.739 INFO    ] 2026-08-25 16:25:41
[2026-08-25 16:25:41,989.989 INFO    ] 2026-08-25 16:25:41
[2026-08-25 16:25:42,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:25:42,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:25:42,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:25:42,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:25:42,495.495 INFO    ] time= 25/08/2026 16:25:42
[2026-08-25 16:25:42,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:25:42,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:25:42,709.709 INFO    ] No existing commands found in stream
[2026-08-25 16:25:47,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:25:47,730.730 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 16:25:51,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:25:51,808.808 INFO    ] Checking for system updates...
[2026-08-25 16:25:51,844.844 INFO    ] 200
[2026-08-25 16:25:51,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:51,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:25:51,909.909 INFO    ] No update needed
[2026-08-25 16:25:51,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 16:25:51,945.945 INFO    ] 200
[2026-08-25 16:25:51,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:25:51,993.993 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:25:52,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:25:52,044.044 INFO    ] No camera update needed
[2026-08-25 16:25:52,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:25:52,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:25:52,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:25:52,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:25:54,099.099 INFO    ] ================================================
[2026-08-25 16:25:54,114.114 INFO    ] Launching Daemon at Tue Aug 25 16:25:54 IST 2026
[2026-08-25 16:25:54,126.126 INFO    ] ================================================
[2026-08-25 16:25:54,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:25:54
[2026-08-25 16:25:55,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:25:55,630.630 INFO    ] Initializing speech engine...
[2026-08-25 16:25:55,637.637 INFO    ] 2026-08-25 16:25:55
[2026-08-25 16:25:55,900.900 INFO    ] 2026-08-25 16:25:55
[2026-08-25 16:25:55,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:25:56,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:25:56,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:25:56,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:25:56,384.384 INFO    ] time= 25/08/2026 16:25:56
[2026-08-25 16:25:56,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:25:56,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:25:56,596.596 INFO    ] No existing commands found in stream
[2026-08-25 16:26:01,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:26:01,613.613 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 16:26:04,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:26:04,832.832 INFO    ] Checking for system updates...
[2026-08-25 16:26:04,868.868 INFO    ] 200
[2026-08-25 16:26:04,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:04,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:04,925.925 INFO    ] No update needed
[2026-08-25 16:26:04,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 16:26:04,965.965 INFO    ] 200
[2026-08-25 16:26:04,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:05,008.008 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:26:05,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:05,059.059 INFO    ] No camera update needed
[2026-08-25 16:26:05,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:26:05,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:26:05,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:26:05,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:26:07,116.116 INFO    ] ================================================
[2026-08-25 16:26:07,131.131 INFO    ] Launching Daemon at Tue Aug 25 16:26:07 IST 2026
[2026-08-25 16:26:07,143.143 INFO    ] ================================================
[2026-08-25 16:26:07,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:26:07
[2026-08-25 16:26:08,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:26:08,597.597 INFO    ] Initializing speech engine...
[2026-08-25 16:26:08,607.607 INFO    ] 2026-08-25 16:26:08
[2026-08-25 16:26:08,869.869 INFO    ] 2026-08-25 16:26:08
[2026-08-25 16:26:08,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:26:09,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:26:09,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:26:09,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:26:09,358.358 INFO    ] time= 25/08/2026 16:26:09
[2026-08-25 16:26:09,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:26:09,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:26:09,567.567 INFO    ] No existing commands found in stream
[2026-08-25 16:26:14,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:26:14,582.582 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 16:26:18,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:26:18,283.283 INFO    ] Checking for system updates...
[2026-08-25 16:26:18,323.323 INFO    ] 200
[2026-08-25 16:26:18,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:18,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:18,390.390 INFO    ] No update needed
[2026-08-25 16:26:18,392.392 INFO    ] Checking for camera pi updates...
[2026-08-25 16:26:18,426.426 INFO    ] 200
[2026-08-25 16:26:18,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:18,474.474 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:26:18,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:18,533.533 INFO    ] No camera update needed
[2026-08-25 16:26:18,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:26:18,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:26:18,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:26:18,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:26:20,587.587 INFO    ] ================================================
[2026-08-25 16:26:20,604.604 INFO    ] Launching Daemon at Tue Aug 25 16:26:20 IST 2026
[2026-08-25 16:26:20,615.615 INFO    ] ================================================
[2026-08-25 16:26:21,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:26:21
[2026-08-25 16:26:21,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:26:22,038.038 INFO    ] Initializing speech engine...
[2026-08-25 16:26:22,043.043 INFO    ] 2026-08-25 16:26:22
[2026-08-25 16:26:22,292.292 INFO    ] 2026-08-25 16:26:22
[2026-08-25 16:26:22,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:26:22,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:26:22,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:26:22,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:26:22,762.762 INFO    ] time= 25/08/2026 16:26:22
[2026-08-25 16:26:22,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:26:22,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:26:23,001.001 INFO    ] No existing commands found in stream
[2026-08-25 16:26:28,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:26:28,029.029 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 16:26:31,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:26:31,027.027 INFO    ] Checking for system updates...
[2026-08-25 16:26:31,067.067 INFO    ] 200
[2026-08-25 16:26:31,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:31,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:26:31,126.126 INFO    ] No update needed
[2026-08-25 16:26:31,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 16:26:31,167.167 INFO    ] 200
[2026-08-25 16:26:31,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:31,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:26:31,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:26:31,267.267 INFO    ] No camera update needed
[2026-08-25 16:26:31,269.269 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:26:31,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:26:31,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:26:31,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:26:33,322.322 INFO    ] ================================================
[2026-08-25 16:26:33,338.338 INFO    ] Launching Daemon at Tue Aug 25 16:26:33 IST 2026
[2026-08-25 16:26:33,350.350 INFO    ] ================================================
[2026-08-25 16:26:33,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:26:33
[2026-08-25 16:26:34,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:26:34,771.771 INFO    ] Initializing speech engine...
[2026-08-25 16:26:34,779.779 INFO    ] 2026-08-25 16:26:34
[2026-08-25 16:26:35,026.026 INFO    ] 2026-08-25 16:26:35
[2026-08-25 16:26:35,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:26:35,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:26:35,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:26:35,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:26:35,503.503 INFO    ] time= 25/08/2026 16:26:35
[2026-08-25 16:26:35,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:26:35,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:26:35,722.722 INFO    ] No existing commands found in stream
[2026-08-25 16:26:40,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:26:40,751.751 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 16:26:44,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:26:44,698.698 INFO    ] Checking for system updates...
[2026-08-25 16:26:44,735.735 INFO    ] 200
[2026-08-25 16:26:44,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:44,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:44,800.800 INFO    ] No update needed
[2026-08-25 16:26:44,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 16:26:44,835.835 INFO    ] 200
[2026-08-25 16:26:44,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:44,883.883 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:26:44,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:44,928.928 INFO    ] No camera update needed
[2026-08-25 16:26:44,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:26:44,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:26:44,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:26:44,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:26:46,982.982 INFO    ] ================================================
[2026-08-25 16:26:47,998.998 INFO    ] Launching Daemon at Tue Aug 25 16:26:46 IST 2026
[2026-08-25 16:26:47,009.009 INFO    ] ================================================
[2026-08-25 16:26:47,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:26:47
[2026-08-25 16:26:48,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:26:48,413.413 INFO    ] Initializing speech engine...
[2026-08-25 16:26:48,432.432 INFO    ] 2026-08-25 16:26:48
[2026-08-25 16:26:48,684.684 INFO    ] 2026-08-25 16:26:48
[2026-08-25 16:26:48,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:26:48,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:26:48,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:26:49,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:26:49,166.166 INFO    ] time= 25/08/2026 16:26:49
[2026-08-25 16:26:49,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:26:49,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:26:49,353.353 INFO    ] No existing commands found in stream
[2026-08-25 16:26:54,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:26:54,386.386 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 16:26:58,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:26:58,373.373 INFO    ] Checking for system updates...
[2026-08-25 16:26:58,414.414 INFO    ] 200
[2026-08-25 16:26:58,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:58,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:58,478.478 INFO    ] No update needed
[2026-08-25 16:26:58,480.480 INFO    ] Checking for camera pi updates...
[2026-08-25 16:26:58,518.518 INFO    ] 200
[2026-08-25 16:26:58,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:26:58,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:26:58,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:26:58,607.607 INFO    ] No camera update needed
[2026-08-25 16:26:58,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:26:58,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:26:58,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:26:58,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:27:00,665.665 INFO    ] ================================================
[2026-08-25 16:27:00,681.681 INFO    ] Launching Daemon at Tue Aug 25 16:27:00 IST 2026
[2026-08-25 16:27:00,692.692 INFO    ] ================================================
[2026-08-25 16:27:01,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:27:01
[2026-08-25 16:27:02,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:27:02,409.409 INFO    ] Initializing speech engine...
[2026-08-25 16:27:02,432.432 INFO    ] 2026-08-25 16:27:02
[2026-08-25 16:27:02,727.727 INFO    ] 2026-08-25 16:27:02
[2026-08-25 16:27:02,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:27:02,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:27:02,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:27:03,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:27:03,160.160 INFO    ] time= 25/08/2026 16:27:03
[2026-08-25 16:27:03,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:27:03,174.174 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:27:03,256.256 INFO    ] No existing commands found in stream
[2026-08-25 16:27:08,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:27:08,289.289 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 16:27:10,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:27:10,816.816 INFO    ] Checking for system updates...
[2026-08-25 16:27:10,852.852 INFO    ] 200
[2026-08-25 16:27:10,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:10,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:27:10,917.917 INFO    ] No update needed
[2026-08-25 16:27:10,919.919 INFO    ] Checking for camera pi updates...
[2026-08-25 16:27:10,956.956 INFO    ] 200
[2026-08-25 16:27:10,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:11,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:27:11,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:27:11,056.056 INFO    ] No camera update needed
[2026-08-25 16:27:11,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:27:11,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:27:11,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:27:11,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:27:13,112.112 INFO    ] ================================================
[2026-08-25 16:27:13,127.127 INFO    ] Launching Daemon at Tue Aug 25 16:27:13 IST 2026
[2026-08-25 16:27:13,138.138 INFO    ] ================================================
[2026-08-25 16:27:13,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:27:13
[2026-08-25 16:27:14,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:27:14,615.615 INFO    ] Initializing speech engine...
[2026-08-25 16:27:14,621.621 INFO    ] 2026-08-25 16:27:14
[2026-08-25 16:27:14,887.887 INFO    ] 2026-08-25 16:27:14
[2026-08-25 16:27:14,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:27:15,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:27:15,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:27:16,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:27:16,359.359 INFO    ] time= 25/08/2026 16:27:16
[2026-08-25 16:27:16,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:27:16,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:27:16,447.447 INFO    ] No existing commands found in stream
[2026-08-25 16:27:21,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:27:21,460.460 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 16:27:23,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:27:23,470.470 INFO    ] Checking for system updates...
[2026-08-25 16:27:23,509.509 INFO    ] 200
[2026-08-25 16:27:23,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:23,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:27:23,565.565 INFO    ] No update needed
[2026-08-25 16:27:23,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 16:27:23,604.604 INFO    ] 200
[2026-08-25 16:27:23,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:23,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:27:23,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:27:23,696.696 INFO    ] No camera update needed
[2026-08-25 16:27:23,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:27:23,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:27:23,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:27:23,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:27:25,752.752 INFO    ] ================================================
[2026-08-25 16:27:25,773.773 INFO    ] Launching Daemon at Tue Aug 25 16:27:25 IST 2026
[2026-08-25 16:27:25,784.784 INFO    ] ================================================
[2026-08-25 16:27:26,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:27:26
[2026-08-25 16:27:27,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:27:27,382.382 INFO    ] Initializing speech engine...
[2026-08-25 16:27:27,389.389 INFO    ] 2026-08-25 16:27:27
[2026-08-25 16:27:27,666.666 INFO    ] 2026-08-25 16:27:27
[2026-08-25 16:27:27,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:27:27,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:27:27,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:27:28,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:27:28,160.160 INFO    ] time= 25/08/2026 16:27:28
[2026-08-25 16:27:28,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:27:28,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:27:28,368.368 INFO    ] No existing commands found in stream
[2026-08-25 16:27:33,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:27:33,386.386 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 16:27:35,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:27:35,297.297 INFO    ] Checking for system updates...
[2026-08-25 16:27:35,338.338 INFO    ] 200
[2026-08-25 16:27:35,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:35,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:27:35,397.397 INFO    ] No update needed
[2026-08-25 16:27:35,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 16:27:35,433.433 INFO    ] 200
[2026-08-25 16:27:35,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:35,481.481 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:27:35,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:27:35,534.534 INFO    ] No camera update needed
[2026-08-25 16:27:35,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:27:35,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:27:35,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:27:35,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:27:37,589.589 INFO    ] ================================================
[2026-08-25 16:27:37,604.604 INFO    ] Launching Daemon at Tue Aug 25 16:27:37 IST 2026
[2026-08-25 16:27:37,615.615 INFO    ] ================================================
[2026-08-25 16:27:38,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:27:38
[2026-08-25 16:27:38,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:27:39,069.069 INFO    ] Initializing speech engine...
[2026-08-25 16:27:39,092.092 INFO    ] 2026-08-25 16:27:39
[2026-08-25 16:27:39,347.347 INFO    ] 2026-08-25 16:27:39
[2026-08-25 16:27:39,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:27:39,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:27:39,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:27:39,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:27:39,805.805 INFO    ] time= 25/08/2026 16:27:39
[2026-08-25 16:27:39,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:27:39,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:27:40,010.010 INFO    ] No existing commands found in stream
[2026-08-25 16:27:45,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:27:45,025.025 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 16:27:47,560.560 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:27:47,563.563 INFO    ] Checking for system updates...
[2026-08-25 16:27:47,602.602 INFO    ] 200
[2026-08-25 16:27:47,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:47,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:27:47,661.661 INFO    ] No update needed
[2026-08-25 16:27:47,663.663 INFO    ] Checking for camera pi updates...
[2026-08-25 16:27:47,700.700 INFO    ] 200
[2026-08-25 16:27:47,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:27:47,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:27:47,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:27:47,895.895 INFO    ] No camera update needed
[2026-08-25 16:27:47,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:27:47,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:27:47,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:27:47,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:27:49,954.954 INFO    ] ================================================
[2026-08-25 16:27:49,969.969 INFO    ] Launching Daemon at Tue Aug 25 16:27:49 IST 2026
[2026-08-25 16:27:49,980.980 INFO    ] ================================================
[2026-08-25 16:27:50,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:27:50
[2026-08-25 16:27:51,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:27:51,440.440 INFO    ] Initializing speech engine...
[2026-08-25 16:27:51,453.453 INFO    ] 2026-08-25 16:27:51
[2026-08-25 16:27:51,722.722 INFO    ] 2026-08-25 16:27:51
[2026-08-25 16:27:51,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:27:51,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:27:51,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:27:52,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:27:52,135.135 INFO    ] time= 25/08/2026 16:27:52
[2026-08-25 16:27:52,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:27:52,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:27:52,319.319 INFO    ] No existing commands found in stream
[2026-08-25 16:27:57,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:27:57,343.343 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 16:28:01,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:28:01,117.117 INFO    ] Checking for system updates...
[2026-08-25 16:28:01,153.153 INFO    ] 200
[2026-08-25 16:28:01,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:01,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:01,218.218 INFO    ] No update needed
[2026-08-25 16:28:01,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 16:28:01,254.254 INFO    ] 200
[2026-08-25 16:28:01,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:01,303.303 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:28:01,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:01,353.353 INFO    ] No camera update needed
[2026-08-25 16:28:01,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:28:01,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:28:01,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:28:01,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:28:03,411.411 INFO    ] ================================================
[2026-08-25 16:28:03,426.426 INFO    ] Launching Daemon at Tue Aug 25 16:28:03 IST 2026
[2026-08-25 16:28:03,438.438 INFO    ] ================================================
[2026-08-25 16:28:04,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:28:04
[2026-08-25 16:28:04,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:28:04,885.885 INFO    ] Initializing speech engine...
[2026-08-25 16:28:04,891.891 INFO    ] 2026-08-25 16:28:04
[2026-08-25 16:28:05,147.147 INFO    ] 2026-08-25 16:28:05
[2026-08-25 16:28:05,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:28:05,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:28:05,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:28:05,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:28:05,632.632 INFO    ] time= 25/08/2026 16:28:05
[2026-08-25 16:28:05,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:28:05,704.704 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:28:05,835.835 INFO    ] No existing commands found in stream
[2026-08-25 16:28:10,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:28:10,861.861 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 16:28:13,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:28:13,621.621 INFO    ] Checking for system updates...
[2026-08-25 16:28:13,658.658 INFO    ] 200
[2026-08-25 16:28:13,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:13,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:13,717.717 INFO    ] No update needed
[2026-08-25 16:28:13,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 16:28:13,758.758 INFO    ] 200
[2026-08-25 16:28:13,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:13,808.808 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:28:13,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:13,860.860 INFO    ] No camera update needed
[2026-08-25 16:28:13,862.862 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:28:13,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:28:13,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:28:13,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:28:15,919.919 INFO    ] ================================================
[2026-08-25 16:28:15,934.934 INFO    ] Launching Daemon at Tue Aug 25 16:28:15 IST 2026
[2026-08-25 16:28:15,945.945 INFO    ] ================================================
[2026-08-25 16:28:16,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:28:16
[2026-08-25 16:28:17,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:28:17,586.586 INFO    ] Initializing speech engine...
[2026-08-25 16:28:17,598.598 INFO    ] 2026-08-25 16:28:17
[2026-08-25 16:28:17,909.909 INFO    ] 2026-08-25 16:28:17
[2026-08-25 16:28:17,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:28:18,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:28:18,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:28:18,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:28:18,417.417 INFO    ] time= 25/08/2026 16:28:18
[2026-08-25 16:28:18,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:28:18,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:28:18,627.627 INFO    ] No existing commands found in stream
[2026-08-25 16:28:23,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:28:23,666.666 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 16:28:27,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:28:27,804.804 INFO    ] Checking for system updates...
[2026-08-25 16:28:27,840.840 INFO    ] 200
[2026-08-25 16:28:27,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:27,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:27,907.907 INFO    ] No update needed
[2026-08-25 16:28:27,910.910 INFO    ] Checking for camera pi updates...
[2026-08-25 16:28:27,950.950 INFO    ] 200
[2026-08-25 16:28:27,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:27,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:28:28,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:28,053.053 INFO    ] No camera update needed
[2026-08-25 16:28:28,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:28:28,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:28:28,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:28:28,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:28:30,112.112 INFO    ] ================================================
[2026-08-25 16:28:30,128.128 INFO    ] Launching Daemon at Tue Aug 25 16:28:30 IST 2026
[2026-08-25 16:28:30,139.139 INFO    ] ================================================
[2026-08-25 16:28:30,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:28:30
[2026-08-25 16:28:31,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:28:31,591.591 INFO    ] Initializing speech engine...
[2026-08-25 16:28:31,602.602 INFO    ] 2026-08-25 16:28:31
[2026-08-25 16:28:31,893.893 INFO    ] 2026-08-25 16:28:31
[2026-08-25 16:28:31,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:28:32,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:28:32,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:28:32,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:28:32,411.411 INFO    ] time= 25/08/2026 16:28:32
[2026-08-25 16:28:32,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:28:32,484.484 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:28:32,644.644 INFO    ] No existing commands found in stream
[2026-08-25 16:28:37,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:28:37,670.670 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 16:28:39,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:28:39,677.677 INFO    ] Checking for system updates...
[2026-08-25 16:28:39,717.717 INFO    ] 200
[2026-08-25 16:28:39,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:39,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:28:39,773.773 INFO    ] No update needed
[2026-08-25 16:28:39,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 16:28:39,815.815 INFO    ] 200
[2026-08-25 16:28:39,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:39,858.858 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:28:39,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:28:39,907.907 INFO    ] No camera update needed
[2026-08-25 16:28:39,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:28:39,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:28:39,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:28:39,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:28:41,966.966 INFO    ] ================================================
[2026-08-25 16:28:41,981.981 INFO    ] Launching Daemon at Tue Aug 25 16:28:41 IST 2026
[2026-08-25 16:28:41,993.993 INFO    ] ================================================
[2026-08-25 16:28:42,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:28:42
[2026-08-25 16:28:43,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:28:43,411.411 INFO    ] Initializing speech engine...
[2026-08-25 16:28:43,419.419 INFO    ] 2026-08-25 16:28:43
[2026-08-25 16:28:43,668.668 INFO    ] 2026-08-25 16:28:43
[2026-08-25 16:28:43,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:28:43,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:28:43,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:28:44,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:28:44,159.159 INFO    ] time= 25/08/2026 16:28:44
[2026-08-25 16:28:44,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:28:44,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:28:44,372.372 INFO    ] No existing commands found in stream
[2026-08-25 16:28:49,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:28:49,400.400 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 16:28:52,954.954 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:28:52,957.957 INFO    ] Checking for system updates...
[2026-08-25 16:28:52,992.992 INFO    ] 200
[2026-08-25 16:28:52,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:53,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:53,052.052 INFO    ] No update needed
[2026-08-25 16:28:53,054.054 INFO    ] Checking for camera pi updates...
[2026-08-25 16:28:53,087.087 INFO    ] 200
[2026-08-25 16:28:53,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:28:53,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:28:53,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:28:53,185.185 INFO    ] No camera update needed
[2026-08-25 16:28:53,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:28:53,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:28:53,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:28:53,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:28:55,248.248 INFO    ] ================================================
[2026-08-25 16:28:55,263.263 INFO    ] Launching Daemon at Tue Aug 25 16:28:55 IST 2026
[2026-08-25 16:28:55,275.275 INFO    ] ================================================
[2026-08-25 16:28:55,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:28:55
[2026-08-25 16:28:56,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:28:56,956.956 INFO    ] Initializing speech engine...
[2026-08-25 16:28:56,969.969 INFO    ] 2026-08-25 16:28:56
[2026-08-25 16:28:57,266.266 INFO    ] 2026-08-25 16:28:57
[2026-08-25 16:28:57,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:28:58,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:28:58,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:28:58,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:28:58,718.718 INFO    ] time= 25/08/2026 16:28:58
[2026-08-25 16:28:58,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:28:58,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:28:58,824.824 INFO    ] No existing commands found in stream
[2026-08-25 16:29:03,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:29:03,847.847 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 16:29:06,886.886 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:29:06,889.889 INFO    ] Checking for system updates...
[2026-08-25 16:29:06,926.926 INFO    ] 200
[2026-08-25 16:29:06,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:06,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:29:06,983.983 INFO    ] No update needed
[2026-08-25 16:29:06,985.985 INFO    ] Checking for camera pi updates...
[2026-08-25 16:29:07,018.018 INFO    ] 200
[2026-08-25 16:29:07,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:07,066.066 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:29:07,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:29:07,113.113 INFO    ] No camera update needed
[2026-08-25 16:29:07,115.115 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:29:07,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:29:07,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:29:07,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:29:09,168.168 INFO    ] ================================================
[2026-08-25 16:29:09,187.187 INFO    ] Launching Daemon at Tue Aug 25 16:29:09 IST 2026
[2026-08-25 16:29:09,199.199 INFO    ] ================================================
[2026-08-25 16:29:09,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:29:09
[2026-08-25 16:29:10,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:29:10,874.874 INFO    ] Initializing speech engine...
[2026-08-25 16:29:10,880.880 INFO    ] 2026-08-25 16:29:10
[2026-08-25 16:29:11,169.169 INFO    ] 2026-08-25 16:29:11
[2026-08-25 16:29:11,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:29:11,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:29:11,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:29:11,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:29:11,699.699 INFO    ] time= 25/08/2026 16:29:11
[2026-08-25 16:29:11,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:29:11,741.741 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:29:11,866.866 INFO    ] No existing commands found in stream
[2026-08-25 16:29:16,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:29:16,896.896 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 16:29:21,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:29:21,314.314 INFO    ] Checking for system updates...
[2026-08-25 16:29:21,351.351 INFO    ] 200
[2026-08-25 16:29:21,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:21,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:29:21,420.420 INFO    ] No update needed
[2026-08-25 16:29:21,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 16:29:21,458.458 INFO    ] 200
[2026-08-25 16:29:21,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:21,509.509 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:29:21,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:29:21,559.559 INFO    ] No camera update needed
[2026-08-25 16:29:21,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:29:21,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:29:21,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:29:21,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:29:23,617.617 INFO    ] ================================================
[2026-08-25 16:29:23,633.633 INFO    ] Launching Daemon at Tue Aug 25 16:29:23 IST 2026
[2026-08-25 16:29:23,644.644 INFO    ] ================================================
[2026-08-25 16:29:24,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:29:24
[2026-08-25 16:29:25,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:29:25,310.310 INFO    ] Initializing speech engine...
[2026-08-25 16:29:25,317.317 INFO    ] 2026-08-25 16:29:25
[2026-08-25 16:29:25,596.596 INFO    ] 2026-08-25 16:29:25
[2026-08-25 16:29:25,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:29:25,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:29:25,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:29:26,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:29:26,115.115 INFO    ] time= 25/08/2026 16:29:26
[2026-08-25 16:29:26,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:29:26,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:29:26,322.322 INFO    ] No existing commands found in stream
[2026-08-25 16:29:31,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:29:31,344.344 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 16:29:35,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:29:35,527.527 INFO    ] Checking for system updates...
[2026-08-25 16:29:35,564.564 INFO    ] 200
[2026-08-25 16:29:35,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:35,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:29:35,623.623 INFO    ] No update needed
[2026-08-25 16:29:35,626.626 INFO    ] Checking for camera pi updates...
[2026-08-25 16:29:35,665.665 INFO    ] 200
[2026-08-25 16:29:35,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:35,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:29:35,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:29:35,765.765 INFO    ] No camera update needed
[2026-08-25 16:29:35,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:29:35,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:29:35,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:29:35,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:29:37,825.825 INFO    ] ================================================
[2026-08-25 16:29:37,840.840 INFO    ] Launching Daemon at Tue Aug 25 16:29:37 IST 2026
[2026-08-25 16:29:37,851.851 INFO    ] ================================================
[2026-08-25 16:29:38,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:29:38
[2026-08-25 16:29:39,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:29:39,282.282 INFO    ] Initializing speech engine...
[2026-08-25 16:29:39,308.308 INFO    ] 2026-08-25 16:29:39
[2026-08-25 16:29:39,585.585 INFO    ] 2026-08-25 16:29:39
[2026-08-25 16:29:39,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:29:39,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:29:39,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:29:39,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:29:40,011.011 INFO    ] time= 25/08/2026 16:29:40
[2026-08-25 16:29:40,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:29:40,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:29:40,097.097 INFO    ] No existing commands found in stream
[2026-08-25 16:29:45,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:29:45,113.113 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 16:29:46,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:29:46,661.661 INFO    ] Checking for system updates...
[2026-08-25 16:29:46,696.696 INFO    ] 200
[2026-08-25 16:29:46,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:46,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:29:46,762.762 INFO    ] No update needed
[2026-08-25 16:29:46,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 16:29:46,798.798 INFO    ] 200
[2026-08-25 16:29:46,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:29:46,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:29:46,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:29:46,888.888 INFO    ] No camera update needed
[2026-08-25 16:29:46,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:29:46,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:29:46,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:29:46,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:29:48,943.943 INFO    ] ================================================
[2026-08-25 16:29:48,958.958 INFO    ] Launching Daemon at Tue Aug 25 16:29:48 IST 2026
[2026-08-25 16:29:48,969.969 INFO    ] ================================================
[2026-08-25 16:29:49,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:29:49
[2026-08-25 16:29:50,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:29:50,389.389 INFO    ] Initializing speech engine...
[2026-08-25 16:29:50,399.399 INFO    ] 2026-08-25 16:29:50
[2026-08-25 16:29:50,649.649 INFO    ] 2026-08-25 16:29:50
[2026-08-25 16:29:50,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:29:50,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:29:50,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:29:51,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:29:51,027.027 INFO    ] time= 25/08/2026 16:29:51
[2026-08-25 16:29:51,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:29:51,076.076 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:29:51,217.217 INFO    ] No existing commands found in stream
[2026-08-25 16:29:56,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:29:56,242.242 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 16:30:00,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:30:00,463.463 INFO    ] Checking for system updates...
[2026-08-25 16:30:00,502.502 INFO    ] 200
[2026-08-25 16:30:00,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:00,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:30:00,560.560 INFO    ] No update needed
[2026-08-25 16:30:00,562.562 INFO    ] Checking for camera pi updates...
[2026-08-25 16:30:00,596.596 INFO    ] 200
[2026-08-25 16:30:00,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:00,640.640 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:30:00,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:30:00,798.798 INFO    ] No camera update needed
[2026-08-25 16:30:00,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:30:00,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:30:00,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:30:00,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:30:02,888.888 INFO    ] ================================================
[2026-08-25 16:30:02,911.911 INFO    ] Launching Daemon at Tue Aug 25 16:30:02 IST 2026
[2026-08-25 16:30:02,926.926 INFO    ] ================================================
[2026-08-25 16:30:03,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:30:03
[2026-08-25 16:30:04,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:30:04,516.516 INFO    ] Initializing speech engine...
[2026-08-25 16:30:04,524.524 INFO    ] 2026-08-25 16:30:04
[2026-08-25 16:30:04,775.775 INFO    ] 2026-08-25 16:30:04
[2026-08-25 16:30:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:30:04,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:30:04,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:30:05,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:30:05,152.152 INFO    ] time= 25/08/2026 16:30:05
[2026-08-25 16:30:05,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:30:05,201.201 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:30:05,323.323 INFO    ] No existing commands found in stream
[2026-08-25 16:30:10,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:30:10,361.361 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 16:30:14,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:30:14,769.769 INFO    ] Checking for system updates...
[2026-08-25 16:30:14,804.804 INFO    ] 200
[2026-08-25 16:30:14,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:14,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:30:14,874.874 INFO    ] No update needed
[2026-08-25 16:30:14,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 16:30:14,910.910 INFO    ] 200
[2026-08-25 16:30:14,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:14,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:30:15,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:30:15,013.013 INFO    ] No camera update needed
[2026-08-25 16:30:15,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:30:15,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:30:15,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:30:15,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:30:17,071.071 INFO    ] ================================================
[2026-08-25 16:30:17,087.087 INFO    ] Launching Daemon at Tue Aug 25 16:30:17 IST 2026
[2026-08-25 16:30:17,097.097 INFO    ] ================================================
[2026-08-25 16:30:17,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:30:17
[2026-08-25 16:30:18,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:30:18,567.567 INFO    ] Initializing speech engine...
[2026-08-25 16:30:18,575.575 INFO    ] 2026-08-25 16:30:18
[2026-08-25 16:30:18,866.866 INFO    ] 2026-08-25 16:30:18
[2026-08-25 16:30:18,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:30:19,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:30:19,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:30:19,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:30:19,403.403 INFO    ] time= 25/08/2026 16:30:19
[2026-08-25 16:30:19,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:30:19,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:30:19,573.573 INFO    ] No existing commands found in stream
[2026-08-25 16:30:24,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:30:24,606.606 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 16:30:28,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:30:28,244.244 INFO    ] Checking for system updates...
[2026-08-25 16:30:28,285.285 INFO    ] 200
[2026-08-25 16:30:28,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:28,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:30:28,350.350 INFO    ] No update needed
[2026-08-25 16:30:28,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 16:30:28,391.391 INFO    ] 200
[2026-08-25 16:30:28,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:28,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:30:28,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:30:28,486.486 INFO    ] No camera update needed
[2026-08-25 16:30:28,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:30:28,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:30:28,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:30:28,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:30:30,541.541 INFO    ] ================================================
[2026-08-25 16:30:30,557.557 INFO    ] Launching Daemon at Tue Aug 25 16:30:30 IST 2026
[2026-08-25 16:30:30,569.569 INFO    ] ================================================
[2026-08-25 16:30:31,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:30:31
[2026-08-25 16:30:31,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:30:32,071.071 INFO    ] Initializing speech engine...
[2026-08-25 16:30:32,075.075 INFO    ] 2026-08-25 16:30:32
[2026-08-25 16:30:32,388.388 INFO    ] 2026-08-25 16:30:32
[2026-08-25 16:30:32,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:30:32,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:30:32,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:30:32,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:30:32,774.774 INFO    ] time= 25/08/2026 16:30:32
[2026-08-25 16:30:32,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:30:32,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:30:32,911.911 INFO    ] No existing commands found in stream
[2026-08-25 16:30:37,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:30:37,950.950 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 16:30:40,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:30:40,603.603 INFO    ] Checking for system updates...
[2026-08-25 16:30:40,639.639 INFO    ] 200
[2026-08-25 16:30:40,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:40,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:30:40,700.700 INFO    ] No update needed
[2026-08-25 16:30:40,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 16:30:40,738.738 INFO    ] 200
[2026-08-25 16:30:40,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:40,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:30:40,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:30:40,845.845 INFO    ] No camera update needed
[2026-08-25 16:30:40,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:30:40,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:30:40,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:30:40,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:30:42,905.905 INFO    ] ================================================
[2026-08-25 16:30:42,921.921 INFO    ] Launching Daemon at Tue Aug 25 16:30:42 IST 2026
[2026-08-25 16:30:42,933.933 INFO    ] ================================================
[2026-08-25 16:30:43,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:30:43
[2026-08-25 16:30:44,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:30:44,440.440 INFO    ] Initializing speech engine...
[2026-08-25 16:30:44,447.447 INFO    ] 2026-08-25 16:30:44
[2026-08-25 16:30:44,756.756 INFO    ] 2026-08-25 16:30:44
[2026-08-25 16:30:44,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:30:44,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:30:44,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:30:45,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:30:45,132.132 INFO    ] time= 25/08/2026 16:30:45
[2026-08-25 16:30:45,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:30:45,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:30:45,231.231 INFO    ] No existing commands found in stream
[2026-08-25 16:30:50,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:30:50,264.264 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 16:30:52,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:30:52,954.954 INFO    ] Checking for system updates...
[2026-08-25 16:30:52,990.990 INFO    ] 200
[2026-08-25 16:30:52,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:53,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:30:53,048.048 INFO    ] No update needed
[2026-08-25 16:30:53,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 16:30:53,089.089 INFO    ] 200
[2026-08-25 16:30:53,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:30:53,132.132 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:30:53,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:30:53,203.203 INFO    ] No camera update needed
[2026-08-25 16:30:53,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:30:53,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:30:53,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:30:53,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:30:55,260.260 INFO    ] ================================================
[2026-08-25 16:30:55,276.276 INFO    ] Launching Daemon at Tue Aug 25 16:30:55 IST 2026
[2026-08-25 16:30:55,288.288 INFO    ] ================================================
[2026-08-25 16:30:55,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:30:55
[2026-08-25 16:30:56,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:30:56,725.725 INFO    ] Initializing speech engine...
[2026-08-25 16:30:56,732.732 INFO    ] 2026-08-25 16:30:56
[2026-08-25 16:30:56,990.990 INFO    ] 2026-08-25 16:30:56
[2026-08-25 16:30:57,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:30:57,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:30:57,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:30:57,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:30:57,474.474 INFO    ] time= 25/08/2026 16:30:57
[2026-08-25 16:30:57,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:30:57,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:30:57,663.663 INFO    ] No existing commands found in stream
[2026-08-25 16:31:02,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:31:02,690.690 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 16:31:06,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:31:06,598.598 INFO    ] Checking for system updates...
[2026-08-25 16:31:06,637.637 INFO    ] 200
[2026-08-25 16:31:06,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:06,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:06,703.703 INFO    ] No update needed
[2026-08-25 16:31:06,706.706 INFO    ] Checking for camera pi updates...
[2026-08-25 16:31:06,745.745 INFO    ] 200
[2026-08-25 16:31:06,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:06,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:31:06,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:06,839.839 INFO    ] No camera update needed
[2026-08-25 16:31:06,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:31:06,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:31:06,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:31:06,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:31:08,901.901 INFO    ] ================================================
[2026-08-25 16:31:08,917.917 INFO    ] Launching Daemon at Tue Aug 25 16:31:08 IST 2026
[2026-08-25 16:31:08,928.928 INFO    ] ================================================
[2026-08-25 16:31:09,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:31:09
[2026-08-25 16:31:10,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:31:10,373.373 INFO    ] Initializing speech engine...
[2026-08-25 16:31:10,383.383 INFO    ] 2026-08-25 16:31:10
[2026-08-25 16:31:10,683.683 INFO    ] 2026-08-25 16:31:10
[2026-08-25 16:31:10,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:31:10,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:31:10,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:31:11,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:31:11,109.109 INFO    ] time= 25/08/2026 16:31:11
[2026-08-25 16:31:11,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:31:11,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:31:11,196.196 INFO    ] No existing commands found in stream
[2026-08-25 16:31:16,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:31:16,212.212 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 16:31:19,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:31:19,781.781 INFO    ] Checking for system updates...
[2026-08-25 16:31:19,818.818 INFO    ] 200
[2026-08-25 16:31:19,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:19,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:19,876.876 INFO    ] No update needed
[2026-08-25 16:31:19,878.878 INFO    ] Checking for camera pi updates...
[2026-08-25 16:31:19,916.916 INFO    ] 200
[2026-08-25 16:31:19,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:19,958.958 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:31:20,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:20,015.015 INFO    ] No camera update needed
[2026-08-25 16:31:20,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:31:20,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:31:20,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:31:20,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:31:22,071.071 INFO    ] ================================================
[2026-08-25 16:31:22,087.087 INFO    ] Launching Daemon at Tue Aug 25 16:31:22 IST 2026
[2026-08-25 16:31:22,098.098 INFO    ] ================================================
[2026-08-25 16:31:22,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:31:22
[2026-08-25 16:31:23,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:31:23,558.558 INFO    ] Initializing speech engine...
[2026-08-25 16:31:23,567.567 INFO    ] 2026-08-25 16:31:23
[2026-08-25 16:31:23,827.827 INFO    ] 2026-08-25 16:31:23
[2026-08-25 16:31:23,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:31:24,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:31:24,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:31:24,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:31:24,293.293 INFO    ] time= 25/08/2026 16:31:24
[2026-08-25 16:31:24,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:31:24,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:31:24,510.510 INFO    ] No existing commands found in stream
[2026-08-25 16:31:29,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:31:29,540.540 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 16:31:33,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:31:33,913.913 INFO    ] Checking for system updates...
[2026-08-25 16:31:33,952.952 INFO    ] 200
[2026-08-25 16:31:33,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:34,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:31:34,017.017 INFO    ] No update needed
[2026-08-25 16:31:34,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 16:31:34,053.053 INFO    ] 200
[2026-08-25 16:31:34,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:34,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:31:34,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:31:34,142.142 INFO    ] No camera update needed
[2026-08-25 16:31:34,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:31:34,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:31:34,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:31:34,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:31:36,200.200 INFO    ] ================================================
[2026-08-25 16:31:36,216.216 INFO    ] Launching Daemon at Tue Aug 25 16:31:36 IST 2026
[2026-08-25 16:31:36,228.228 INFO    ] ================================================
[2026-08-25 16:31:36,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:31:36
[2026-08-25 16:31:37,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:31:37,695.695 INFO    ] Initializing speech engine...
[2026-08-25 16:31:37,700.700 INFO    ] 2026-08-25 16:31:37
[2026-08-25 16:31:37,961.961 INFO    ] 2026-08-25 16:31:37
[2026-08-25 16:31:37,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:31:38,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:31:38,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:31:38,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:31:38,457.457 INFO    ] time= 25/08/2026 16:31:38
[2026-08-25 16:31:38,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:31:38,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:31:38,646.646 INFO    ] No existing commands found in stream
[2026-08-25 16:31:43,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:31:43,673.673 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 16:31:44,390.390 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:31:44,392.392 INFO    ] Checking for system updates...
[2026-08-25 16:31:44,428.428 INFO    ] 200
[2026-08-25 16:31:44,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:44,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:44,485.485 INFO    ] No update needed
[2026-08-25 16:31:44,488.488 INFO    ] Checking for camera pi updates...
[2026-08-25 16:31:44,522.522 INFO    ] 200
[2026-08-25 16:31:44,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:44,565.565 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:31:44,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:44,613.613 INFO    ] No camera update needed
[2026-08-25 16:31:44,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:31:44,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:31:44,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:31:44,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:31:46,670.670 INFO    ] ================================================
[2026-08-25 16:31:46,686.686 INFO    ] Launching Daemon at Tue Aug 25 16:31:46 IST 2026
[2026-08-25 16:31:46,697.697 INFO    ] ================================================
[2026-08-25 16:31:47,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:31:47
[2026-08-25 16:31:48,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:31:48,363.363 INFO    ] Initializing speech engine...
[2026-08-25 16:31:48,375.375 INFO    ] 2026-08-25 16:31:48
[2026-08-25 16:31:48,662.662 INFO    ] 2026-08-25 16:31:48
[2026-08-25 16:31:48,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:31:48,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:31:48,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:31:49,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:31:49,149.149 INFO    ] time= 25/08/2026 16:31:49
[2026-08-25 16:31:49,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:31:49,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:31:49,425.425 INFO    ] No existing commands found in stream
[2026-08-25 16:31:54,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:31:54,458.458 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 16:31:58,864.864 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:31:58,866.866 INFO    ] Checking for system updates...
[2026-08-25 16:31:58,902.902 INFO    ] 200
[2026-08-25 16:31:58,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:58,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:58,965.965 INFO    ] No update needed
[2026-08-25 16:31:58,967.967 INFO    ] Checking for camera pi updates...
[2026-08-25 16:31:59,010.010 INFO    ] 200
[2026-08-25 16:31:59,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:31:59,060.060 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:31:59,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:31:59,114.114 INFO    ] No camera update needed
[2026-08-25 16:31:59,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:31:59,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:31:59,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:31:59,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:32:01,173.173 INFO    ] ================================================
[2026-08-25 16:32:01,189.189 INFO    ] Launching Daemon at Tue Aug 25 16:32:01 IST 2026
[2026-08-25 16:32:01,200.200 INFO    ] ================================================
[2026-08-25 16:32:01,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:32:01
[2026-08-25 16:32:02,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:32:02,894.894 INFO    ] Initializing speech engine...
[2026-08-25 16:32:02,902.902 INFO    ] 2026-08-25 16:32:02
[2026-08-25 16:32:03,171.171 INFO    ] 2026-08-25 16:32:03
[2026-08-25 16:32:03,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:32:03,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:32:03,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:32:03,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:32:03,571.571 INFO    ] time= 25/08/2026 16:32:03
[2026-08-25 16:32:03,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:32:03,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:32:03,733.733 INFO    ] No existing commands found in stream
[2026-08-25 16:32:08,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:32:08,747.747 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 16:32:11,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:32:11,015.015 INFO    ] Checking for system updates...
[2026-08-25 16:32:11,054.054 INFO    ] 200
[2026-08-25 16:32:11,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:11,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:32:11,111.111 INFO    ] No update needed
[2026-08-25 16:32:11,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 16:32:11,150.150 INFO    ] 200
[2026-08-25 16:32:11,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:11,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:32:11,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:32:11,252.252 INFO    ] No camera update needed
[2026-08-25 16:32:11,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:32:11,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:32:11,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:32:11,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:32:13,307.307 INFO    ] ================================================
[2026-08-25 16:32:13,323.323 INFO    ] Launching Daemon at Tue Aug 25 16:32:13 IST 2026
[2026-08-25 16:32:13,334.334 INFO    ] ================================================
[2026-08-25 16:32:13,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:32:13
[2026-08-25 16:32:14,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:32:14,958.958 INFO    ] Initializing speech engine...
[2026-08-25 16:32:14,961.961 INFO    ] 2026-08-25 16:32:14
[2026-08-25 16:32:15,250.250 INFO    ] 2026-08-25 16:32:15
[2026-08-25 16:32:15,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:32:15,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:32:15,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:32:15,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:32:15,725.725 INFO    ] time= 25/08/2026 16:32:15
[2026-08-25 16:32:15,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:32:15,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:32:15,957.957 INFO    ] No existing commands found in stream
[2026-08-25 16:32:20,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:32:20,988.988 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 16:32:23,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:32:23,772.772 INFO    ] Checking for system updates...
[2026-08-25 16:32:23,807.807 INFO    ] 200
[2026-08-25 16:32:23,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:23,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:32:23,870.870 INFO    ] No update needed
[2026-08-25 16:32:23,872.872 INFO    ] Checking for camera pi updates...
[2026-08-25 16:32:23,905.905 INFO    ] 200
[2026-08-25 16:32:23,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:23,949.949 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:32:23,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:32:23,997.997 INFO    ] No camera update needed
[2026-08-25 16:32:23,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:32:24,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:32:24,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:32:24,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:32:26,052.052 INFO    ] ================================================
[2026-08-25 16:32:26,068.068 INFO    ] Launching Daemon at Tue Aug 25 16:32:26 IST 2026
[2026-08-25 16:32:26,079.079 INFO    ] ================================================
[2026-08-25 16:32:26,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:32:26
[2026-08-25 16:32:27,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:32:27,521.521 INFO    ] Initializing speech engine...
[2026-08-25 16:32:27,530.530 INFO    ] 2026-08-25 16:32:27
[2026-08-25 16:32:27,776.776 INFO    ] 2026-08-25 16:32:27
[2026-08-25 16:32:27,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:32:28,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:32:28,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:32:28,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:32:28,250.250 INFO    ] time= 25/08/2026 16:32:28
[2026-08-25 16:32:28,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:32:28,337.337 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:32:28,470.470 INFO    ] No existing commands found in stream
[2026-08-25 16:32:33,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:32:33,495.495 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 16:32:37,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:32:37,776.776 INFO    ] Checking for system updates...
[2026-08-25 16:32:37,812.812 INFO    ] 200
[2026-08-25 16:32:37,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:37,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:32:37,872.872 INFO    ] No update needed
[2026-08-25 16:32:37,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 16:32:37,917.917 INFO    ] 200
[2026-08-25 16:32:37,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:37,972.972 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:32:38,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:32:38,026.026 INFO    ] No camera update needed
[2026-08-25 16:32:38,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:32:38,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:32:38,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:32:38,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:32:40,082.082 INFO    ] ================================================
[2026-08-25 16:32:40,098.098 INFO    ] Launching Daemon at Tue Aug 25 16:32:40 IST 2026
[2026-08-25 16:32:40,109.109 INFO    ] ================================================
[2026-08-25 16:32:40,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:32:40
[2026-08-25 16:32:41,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:32:41,551.551 INFO    ] Initializing speech engine...
[2026-08-25 16:32:41,567.567 INFO    ] 2026-08-25 16:32:41
[2026-08-25 16:32:41,849.849 INFO    ] 2026-08-25 16:32:41
[2026-08-25 16:32:41,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:32:42,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:32:42,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:32:42,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:32:42,245.245 INFO    ] time= 25/08/2026 16:32:42
[2026-08-25 16:32:42,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:32:42,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:32:42,412.412 INFO    ] No existing commands found in stream
[2026-08-25 16:32:47,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:32:47,441.441 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 16:32:50,278.278 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:32:50,281.281 INFO    ] Checking for system updates...
[2026-08-25 16:32:50,331.331 INFO    ] 200
[2026-08-25 16:32:50,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:50,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:32:50,400.400 INFO    ] No update needed
[2026-08-25 16:32:50,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 16:32:50,441.441 INFO    ] 200
[2026-08-25 16:32:50,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:32:50,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:32:50,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:32:50,551.551 INFO    ] No camera update needed
[2026-08-25 16:32:50,554.554 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:32:50,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:32:50,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:32:50,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:32:52,610.610 INFO    ] ================================================
[2026-08-25 16:32:52,625.625 INFO    ] Launching Daemon at Tue Aug 25 16:32:52 IST 2026
[2026-08-25 16:32:52,636.636 INFO    ] ================================================
[2026-08-25 16:32:53,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:32:53
[2026-08-25 16:32:53,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:32:54,102.102 INFO    ] Initializing speech engine...
[2026-08-25 16:32:54,127.127 INFO    ] 2026-08-25 16:32:54
[2026-08-25 16:32:54,408.408 INFO    ] 2026-08-25 16:32:54
[2026-08-25 16:32:54,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:32:55,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:32:55,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:32:55,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:32:55,324.324 INFO    ] time= 25/08/2026 16:32:55
[2026-08-25 16:32:55,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:32:55,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:32:55,527.527 INFO    ] No existing commands found in stream
[2026-08-25 16:33:00,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:33:00,550.550 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 16:33:04,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:33:04,573.573 INFO    ] Checking for system updates...
[2026-08-25 16:33:04,609.609 INFO    ] 200
[2026-08-25 16:33:04,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:04,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:33:04,667.667 INFO    ] No update needed
[2026-08-25 16:33:04,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 16:33:04,708.708 INFO    ] 200
[2026-08-25 16:33:04,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:04,752.752 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:33:04,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:33:04,813.813 INFO    ] No camera update needed
[2026-08-25 16:33:04,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:33:04,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:33:04,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:33:04,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:33:06,869.869 INFO    ] ================================================
[2026-08-25 16:33:06,885.885 INFO    ] Launching Daemon at Tue Aug 25 16:33:06 IST 2026
[2026-08-25 16:33:06,896.896 INFO    ] ================================================
[2026-08-25 16:33:07,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:33:07
[2026-08-25 16:33:08,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:33:08,309.309 INFO    ] Initializing speech engine...
[2026-08-25 16:33:08,318.318 INFO    ] 2026-08-25 16:33:08
[2026-08-25 16:33:08,612.612 INFO    ] 2026-08-25 16:33:08
[2026-08-25 16:33:08,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:33:08,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:33:08,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:33:09,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:33:09,145.145 INFO    ] time= 25/08/2026 16:33:09
[2026-08-25 16:33:09,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:33:09,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:33:09,368.368 INFO    ] No existing commands found in stream
[2026-08-25 16:33:14,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:33:14,381.381 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 16:33:18,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:33:18,383.383 INFO    ] Checking for system updates...
[2026-08-25 16:33:18,422.422 INFO    ] 200
[2026-08-25 16:33:18,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:18,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:33:18,486.486 INFO    ] No update needed
[2026-08-25 16:33:18,489.489 INFO    ] Checking for camera pi updates...
[2026-08-25 16:33:18,522.522 INFO    ] 200
[2026-08-25 16:33:18,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:18,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:33:18,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:33:18,623.623 INFO    ] No camera update needed
[2026-08-25 16:33:18,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:33:18,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:33:18,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:33:18,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:33:20,678.678 INFO    ] ================================================
[2026-08-25 16:33:20,694.694 INFO    ] Launching Daemon at Tue Aug 25 16:33:20 IST 2026
[2026-08-25 16:33:20,705.705 INFO    ] ================================================
[2026-08-25 16:33:21,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:33:21
[2026-08-25 16:33:21,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:33:22,125.125 INFO    ] Initializing speech engine...
[2026-08-25 16:33:22,131.131 INFO    ] 2026-08-25 16:33:22
[2026-08-25 16:33:22,429.429 INFO    ] 2026-08-25 16:33:22
[2026-08-25 16:33:22,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:33:22,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:33:22,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:33:22,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:33:22,860.860 INFO    ] time= 25/08/2026 16:33:22
[2026-08-25 16:33:22,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:33:22,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:33:22,950.950 INFO    ] No existing commands found in stream
[2026-08-25 16:33:27,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:33:27,988.988 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 16:33:30,056.056 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:33:30,058.058 INFO    ] Checking for system updates...
[2026-08-25 16:33:30,094.094 INFO    ] 200
[2026-08-25 16:33:30,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:30,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:33:30,152.152 INFO    ] No update needed
[2026-08-25 16:33:30,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 16:33:30,188.188 INFO    ] 200
[2026-08-25 16:33:30,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:30,230.230 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:33:30,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:33:30,293.293 INFO    ] No camera update needed
[2026-08-25 16:33:30,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:33:30,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:33:30,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:33:30,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:33:32,349.349 INFO    ] ================================================
[2026-08-25 16:33:32,364.364 INFO    ] Launching Daemon at Tue Aug 25 16:33:32 IST 2026
[2026-08-25 16:33:32,376.376 INFO    ] ================================================
[2026-08-25 16:33:32,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:33:32
[2026-08-25 16:33:33,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:33:33,836.836 INFO    ] Initializing speech engine...
[2026-08-25 16:33:33,856.856 INFO    ] 2026-08-25 16:33:33
[2026-08-25 16:33:34,125.125 INFO    ] 2026-08-25 16:33:34
[2026-08-25 16:33:34,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:33:34,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:33:34,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:33:34,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:33:34,493.493 INFO    ] time= 25/08/2026 16:33:34
[2026-08-25 16:33:34,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:33:34,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:33:34,612.612 INFO    ] No existing commands found in stream
[2026-08-25 16:33:39,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:33:39,626.626 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 16:33:41,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:33:41,305.305 INFO    ] Checking for system updates...
[2026-08-25 16:33:41,344.344 INFO    ] 200
[2026-08-25 16:33:41,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:41,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:33:41,408.408 INFO    ] No update needed
[2026-08-25 16:33:41,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 16:33:41,444.444 INFO    ] 200
[2026-08-25 16:33:41,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:41,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:33:41,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:33:41,559.559 INFO    ] No camera update needed
[2026-08-25 16:33:41,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:33:41,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:33:41,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:33:41,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:33:43,613.613 INFO    ] ================================================
[2026-08-25 16:33:43,629.629 INFO    ] Launching Daemon at Tue Aug 25 16:33:43 IST 2026
[2026-08-25 16:33:43,640.640 INFO    ] ================================================
[2026-08-25 16:33:44,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:33:44
[2026-08-25 16:33:44,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:33:45,085.085 INFO    ] Initializing speech engine...
[2026-08-25 16:33:45,091.091 INFO    ] 2026-08-25 16:33:45
[2026-08-25 16:33:45,396.396 INFO    ] 2026-08-25 16:33:45
[2026-08-25 16:33:45,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:33:45,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:33:45,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:33:45,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:33:45,784.784 INFO    ] time= 25/08/2026 16:33:45
[2026-08-25 16:33:45,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:33:45,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:33:45,916.916 INFO    ] No existing commands found in stream
[2026-08-25 16:33:50,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:33:50,930.930 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 16:33:55,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:33:55,192.192 INFO    ] Checking for system updates...
[2026-08-25 16:33:55,232.232 INFO    ] 200
[2026-08-25 16:33:55,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:55,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:33:55,290.290 INFO    ] No update needed
[2026-08-25 16:33:55,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 16:33:55,326.326 INFO    ] 200
[2026-08-25 16:33:55,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:33:55,373.373 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:33:55,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:33:55,433.433 INFO    ] No camera update needed
[2026-08-25 16:33:55,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:33:55,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:33:55,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:33:55,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:33:57,488.488 INFO    ] ================================================
[2026-08-25 16:33:57,504.504 INFO    ] Launching Daemon at Tue Aug 25 16:33:57 IST 2026
[2026-08-25 16:33:57,516.516 INFO    ] ================================================
[2026-08-25 16:33:58,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:33:58
[2026-08-25 16:33:58,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:33:58,953.953 INFO    ] Initializing speech engine...
[2026-08-25 16:33:58,963.963 INFO    ] 2026-08-25 16:33:58
[2026-08-25 16:33:59,263.263 INFO    ] 2026-08-25 16:33:59
[2026-08-25 16:33:59,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:33:59,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:33:59,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:33:59,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:33:59,675.675 INFO    ] time= 25/08/2026 16:33:59
[2026-08-25 16:33:59,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:33:59,685.685 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:33:59,823.823 INFO    ] No existing commands found in stream
[2026-08-25 16:34:04,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:34:04,856.856 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 16:34:08,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:34:08,474.474 INFO    ] Checking for system updates...
[2026-08-25 16:34:08,509.509 INFO    ] 200
[2026-08-25 16:34:08,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:08,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:34:08,567.567 INFO    ] No update needed
[2026-08-25 16:34:08,569.569 INFO    ] Checking for camera pi updates...
[2026-08-25 16:34:08,608.608 INFO    ] 200
[2026-08-25 16:34:08,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:08,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:34:08,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:34:08,803.803 INFO    ] No camera update needed
[2026-08-25 16:34:08,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:34:08,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:34:08,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:34:08,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:34:10,858.858 INFO    ] ================================================
[2026-08-25 16:34:10,874.874 INFO    ] Launching Daemon at Tue Aug 25 16:34:10 IST 2026
[2026-08-25 16:34:10,885.885 INFO    ] ================================================
[2026-08-25 16:34:11,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:34:11
[2026-08-25 16:34:12,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:34:12,553.553 INFO    ] Initializing speech engine...
[2026-08-25 16:34:12,564.564 INFO    ] 2026-08-25 16:34:12
[2026-08-25 16:34:12,839.839 INFO    ] 2026-08-25 16:34:12
[2026-08-25 16:34:12,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:34:13,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:34:13,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:34:13,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:34:13,347.347 INFO    ] time= 25/08/2026 16:34:13
[2026-08-25 16:34:13,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:34:13,424.424 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:34:13,562.562 INFO    ] No existing commands found in stream
[2026-08-25 16:34:18,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:34:18,581.581 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 16:34:21,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:34:21,096.096 INFO    ] Checking for system updates...
[2026-08-25 16:34:21,133.133 INFO    ] 200
[2026-08-25 16:34:21,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:21,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:34:21,200.200 INFO    ] No update needed
[2026-08-25 16:34:21,202.202 INFO    ] Checking for camera pi updates...
[2026-08-25 16:34:21,236.236 INFO    ] 200
[2026-08-25 16:34:21,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:21,284.284 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:34:21,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:34:21,343.343 INFO    ] No camera update needed
[2026-08-25 16:34:21,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:34:21,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:34:21,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:34:21,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:34:23,397.397 INFO    ] ================================================
[2026-08-25 16:34:23,413.413 INFO    ] Launching Daemon at Tue Aug 25 16:34:23 IST 2026
[2026-08-25 16:34:23,424.424 INFO    ] ================================================
[2026-08-25 16:34:24,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:34:24
[2026-08-25 16:34:24,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:34:25,013.013 INFO    ] Initializing speech engine...
[2026-08-25 16:34:25,038.038 INFO    ] 2026-08-25 16:34:25
[2026-08-25 16:34:25,297.297 INFO    ] 2026-08-25 16:34:25
[2026-08-25 16:34:25,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:34:25,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:34:25,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:34:25,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:34:25,673.673 INFO    ] time= 25/08/2026 16:34:25
[2026-08-25 16:34:25,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:34:25,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:34:25,843.843 INFO    ] No existing commands found in stream
[2026-08-25 16:34:30,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:34:30,871.871 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 16:34:34,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:34:34,002.002 INFO    ] Checking for system updates...
[2026-08-25 16:34:34,038.038 INFO    ] 200
[2026-08-25 16:34:34,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:34,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:34:34,095.095 INFO    ] No update needed
[2026-08-25 16:34:34,098.098 INFO    ] Checking for camera pi updates...
[2026-08-25 16:34:34,135.135 INFO    ] 200
[2026-08-25 16:34:34,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:34,184.184 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:34:34,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:34:34,237.237 INFO    ] No camera update needed
[2026-08-25 16:34:34,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:34:34,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:34:34,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:34:34,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:34:36,291.291 INFO    ] ================================================
[2026-08-25 16:34:36,307.307 INFO    ] Launching Daemon at Tue Aug 25 16:34:36 IST 2026
[2026-08-25 16:34:36,318.318 INFO    ] ================================================
[2026-08-25 16:34:36,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:34:36
[2026-08-25 16:34:37,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:34:37,782.782 INFO    ] Initializing speech engine...
[2026-08-25 16:34:37,790.790 INFO    ] 2026-08-25 16:34:37
[2026-08-25 16:34:38,051.051 INFO    ] 2026-08-25 16:34:38
[2026-08-25 16:34:38,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:34:38,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:34:38,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:34:38,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:34:38,596.596 INFO    ] time= 25/08/2026 16:34:38
[2026-08-25 16:34:38,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:34:38,619.619 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:34:38,736.736 INFO    ] No existing commands found in stream
[2026-08-25 16:34:43,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:34:43,763.763 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 16:34:48,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:34:48,198.198 INFO    ] Checking for system updates...
[2026-08-25 16:34:48,233.233 INFO    ] 200
[2026-08-25 16:34:48,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:48,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:34:48,306.306 INFO    ] No update needed
[2026-08-25 16:34:48,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 16:34:48,346.346 INFO    ] 200
[2026-08-25 16:34:48,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:34:48,389.389 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:34:48,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:34:48,447.447 INFO    ] No camera update needed
[2026-08-25 16:34:48,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:34:48,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:34:48,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:34:48,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:34:50,502.502 INFO    ] ================================================
[2026-08-25 16:34:50,518.518 INFO    ] Launching Daemon at Tue Aug 25 16:34:50 IST 2026
[2026-08-25 16:34:50,528.528 INFO    ] ================================================
[2026-08-25 16:34:51,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:34:51
[2026-08-25 16:34:51,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:34:51,927.927 INFO    ] Initializing speech engine...
[2026-08-25 16:34:51,935.935 INFO    ] 2026-08-25 16:34:51
[2026-08-25 16:34:52,210.210 INFO    ] 2026-08-25 16:34:52
[2026-08-25 16:34:52,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:34:53,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:34:53,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:34:53,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:34:53,700.700 INFO    ] time= 25/08/2026 16:34:53
[2026-08-25 16:34:53,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:34:53,715.715 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:34:53,777.777 INFO    ] No existing commands found in stream
[2026-08-25 16:34:58,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:34:58,791.791 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 16:35:01,529.529 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:35:01,532.532 INFO    ] Checking for system updates...
[2026-08-25 16:35:01,619.619 INFO    ] 200
[2026-08-25 16:35:01,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:01,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:01,838.838 INFO    ] No update needed
[2026-08-25 16:35:01,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 16:35:01,940.940 INFO    ] 200
[2026-08-25 16:35:01,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:02,062.062 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:35:02,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:02,170.170 INFO    ] No camera update needed
[2026-08-25 16:35:02,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:35:02,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:35:02,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:35:02,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:35:04,231.231 INFO    ] ================================================
[2026-08-25 16:35:04,247.247 INFO    ] Launching Daemon at Tue Aug 25 16:35:04 IST 2026
[2026-08-25 16:35:04,258.258 INFO    ] ================================================
[2026-08-25 16:35:04,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:35:04
[2026-08-25 16:35:05,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:35:05,665.665 INFO    ] Initializing speech engine...
[2026-08-25 16:35:05,673.673 INFO    ] 2026-08-25 16:35:05
[2026-08-25 16:35:05,962.962 INFO    ] 2026-08-25 16:35:05
[2026-08-25 16:35:05,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:35:06,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:35:06,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:35:06,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:35:06,320.320 INFO    ] time= 25/08/2026 16:35:06
[2026-08-25 16:35:06,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:35:06,336.336 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:35:06,411.411 INFO    ] No existing commands found in stream
[2026-08-25 16:35:11,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:35:11,449.449 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 16:35:15,236.236 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:35:15,239.239 INFO    ] Checking for system updates...
[2026-08-25 16:35:15,275.275 INFO    ] 200
[2026-08-25 16:35:15,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:15,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:15,341.341 INFO    ] No update needed
[2026-08-25 16:35:15,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 16:35:15,382.382 INFO    ] 200
[2026-08-25 16:35:15,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:15,431.431 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:35:15,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:15,480.480 INFO    ] No camera update needed
[2026-08-25 16:35:15,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:35:15,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:35:15,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:35:15,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:35:17,538.538 INFO    ] ================================================
[2026-08-25 16:35:17,554.554 INFO    ] Launching Daemon at Tue Aug 25 16:35:17 IST 2026
[2026-08-25 16:35:17,565.565 INFO    ] ================================================
[2026-08-25 16:35:18,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:35:18
[2026-08-25 16:35:18,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:35:19,038.038 INFO    ] Initializing speech engine...
[2026-08-25 16:35:19,047.047 INFO    ] 2026-08-25 16:35:19
[2026-08-25 16:35:19,293.293 INFO    ] 2026-08-25 16:35:19
[2026-08-25 16:35:19,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:35:19,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:35:19,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:35:19,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:35:19,666.666 INFO    ] time= 25/08/2026 16:35:19
[2026-08-25 16:35:19,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:35:19,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:35:19,841.841 INFO    ] No existing commands found in stream
[2026-08-25 16:35:24,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:35:24,869.869 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 16:35:25,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:35:25,694.694 INFO    ] Checking for system updates...
[2026-08-25 16:35:25,734.734 INFO    ] 200
[2026-08-25 16:35:25,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:25,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:25,792.792 INFO    ] No update needed
[2026-08-25 16:35:25,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 16:35:25,832.832 INFO    ] 200
[2026-08-25 16:35:25,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:25,875.875 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:35:25,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:25,925.925 INFO    ] No camera update needed
[2026-08-25 16:35:25,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:35:25,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:35:25,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:35:25,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:35:27,981.981 INFO    ] ================================================
[2026-08-25 16:35:28,999.999 INFO    ] Launching Daemon at Tue Aug 25 16:35:27 IST 2026
[2026-08-25 16:35:28,011.011 INFO    ] ================================================
[2026-08-25 16:35:28,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:35:28
[2026-08-25 16:35:29,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:35:29,434.434 INFO    ] Initializing speech engine...
[2026-08-25 16:35:29,443.443 INFO    ] 2026-08-25 16:35:29
[2026-08-25 16:35:29,690.690 INFO    ] 2026-08-25 16:35:29
[2026-08-25 16:35:29,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:35:29,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:35:29,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:35:30,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:35:30,083.083 INFO    ] time= 25/08/2026 16:35:30
[2026-08-25 16:35:30,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:35:30,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:35:30,255.255 INFO    ] No existing commands found in stream
[2026-08-25 16:35:35,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:35:35,288.288 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 16:35:38,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:35:38,823.823 INFO    ] Checking for system updates...
[2026-08-25 16:35:38,860.860 INFO    ] 200
[2026-08-25 16:35:38,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:38,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:38,921.921 INFO    ] No update needed
[2026-08-25 16:35:38,923.923 INFO    ] Checking for camera pi updates...
[2026-08-25 16:35:38,958.958 INFO    ] 200
[2026-08-25 16:35:38,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:39,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:35:39,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:39,061.061 INFO    ] No camera update needed
[2026-08-25 16:35:39,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:35:39,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:35:39,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:35:39,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:35:41,119.119 INFO    ] ================================================
[2026-08-25 16:35:41,135.135 INFO    ] Launching Daemon at Tue Aug 25 16:35:41 IST 2026
[2026-08-25 16:35:41,147.147 INFO    ] ================================================
[2026-08-25 16:35:41,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:35:41
[2026-08-25 16:35:42,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:35:42,799.799 INFO    ] Initializing speech engine...
[2026-08-25 16:35:42,805.805 INFO    ] 2026-08-25 16:35:42
[2026-08-25 16:35:43,100.100 INFO    ] 2026-08-25 16:35:43
[2026-08-25 16:35:43,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:35:43,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:35:43,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:35:43,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:35:43,629.629 INFO    ] time= 25/08/2026 16:35:43
[2026-08-25 16:35:43,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:35:43,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:35:43,779.779 INFO    ] No existing commands found in stream
[2026-08-25 16:35:48,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:35:48,800.800 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 16:35:50,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:35:50,339.339 INFO    ] Checking for system updates...
[2026-08-25 16:35:50,375.375 INFO    ] 200
[2026-08-25 16:35:50,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:50,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:50,442.442 INFO    ] No update needed
[2026-08-25 16:35:50,444.444 INFO    ] Checking for camera pi updates...
[2026-08-25 16:35:50,477.477 INFO    ] 200
[2026-08-25 16:35:50,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:35:50,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:35:50,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:35:50,590.590 INFO    ] No camera update needed
[2026-08-25 16:35:50,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:35:50,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:35:50,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:35:50,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:35:52,645.645 INFO    ] ================================================
[2026-08-25 16:35:52,661.661 INFO    ] Launching Daemon at Tue Aug 25 16:35:52 IST 2026
[2026-08-25 16:35:52,672.672 INFO    ] ================================================
[2026-08-25 16:35:53,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:35:53
[2026-08-25 16:35:53,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:35:54,124.124 INFO    ] Initializing speech engine...
[2026-08-25 16:35:54,130.130 INFO    ] 2026-08-25 16:35:54
[2026-08-25 16:35:54,377.377 INFO    ] 2026-08-25 16:35:54
[2026-08-25 16:35:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:35:54,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:35:54,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:35:54,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:35:54,866.866 INFO    ] time= 25/08/2026 16:35:54
[2026-08-25 16:35:54,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:35:54,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:35:55,091.091 INFO    ] No existing commands found in stream
[2026-08-25 16:36:00,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:36:00,132.132 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 16:36:04,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:36:04,132.132 INFO    ] Checking for system updates...
[2026-08-25 16:36:04,175.175 INFO    ] 200
[2026-08-25 16:36:04,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:04,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:04,239.239 INFO    ] No update needed
[2026-08-25 16:36:04,242.242 INFO    ] Checking for camera pi updates...
[2026-08-25 16:36:04,278.278 INFO    ] 200
[2026-08-25 16:36:04,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:04,329.329 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:36:04,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:04,377.377 INFO    ] No camera update needed
[2026-08-25 16:36:04,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:36:04,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:36:04,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:36:04,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:36:06,438.438 INFO    ] ================================================
[2026-08-25 16:36:06,455.455 INFO    ] Launching Daemon at Tue Aug 25 16:36:06 IST 2026
[2026-08-25 16:36:06,467.467 INFO    ] ================================================
[2026-08-25 16:36:07,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:36:07
[2026-08-25 16:36:07,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:36:07,992.992 INFO    ] Initializing speech engine...
[2026-08-25 16:36:08,008.008 INFO    ] 2026-08-25 16:36:07
[2026-08-25 16:36:08,281.281 INFO    ] 2026-08-25 16:36:08
[2026-08-25 16:36:08,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:36:08,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:36:08,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:36:08,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:36:08,717.717 INFO    ] time= 25/08/2026 16:36:08
[2026-08-25 16:36:08,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:36:08,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:36:08,883.883 INFO    ] No existing commands found in stream
[2026-08-25 16:36:13,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:36:13,912.912 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 16:36:16,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:36:16,665.665 INFO    ] Checking for system updates...
[2026-08-25 16:36:16,702.702 INFO    ] 200
[2026-08-25 16:36:16,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:16,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:36:16,761.761 INFO    ] No update needed
[2026-08-25 16:36:16,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 16:36:16,800.800 INFO    ] 200
[2026-08-25 16:36:16,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:16,850.850 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:36:17,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:36:17,007.007 INFO    ] No camera update needed
[2026-08-25 16:36:17,010.010 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:36:17,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:36:17,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:36:17,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:36:19,067.067 INFO    ] ================================================
[2026-08-25 16:36:19,084.084 INFO    ] Launching Daemon at Tue Aug 25 16:36:19 IST 2026
[2026-08-25 16:36:19,095.095 INFO    ] ================================================
[2026-08-25 16:36:19,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:36:19
[2026-08-25 16:36:20,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:36:20,636.636 INFO    ] Initializing speech engine...
[2026-08-25 16:36:20,643.643 INFO    ] 2026-08-25 16:36:20
[2026-08-25 16:36:20,944.944 INFO    ] 2026-08-25 16:36:20
[2026-08-25 16:36:20,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:36:21,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:36:21,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:36:21,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:36:21,371.371 INFO    ] time= 25/08/2026 16:36:21
[2026-08-25 16:36:21,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:36:21,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:36:21,465.465 INFO    ] No existing commands found in stream
[2026-08-25 16:36:26,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:36:26,488.488 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 16:36:28,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:36:28,774.774 INFO    ] Checking for system updates...
[2026-08-25 16:36:28,814.814 INFO    ] 200
[2026-08-25 16:36:28,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:28,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:28,880.880 INFO    ] No update needed
[2026-08-25 16:36:28,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 16:36:28,918.918 INFO    ] 200
[2026-08-25 16:36:28,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:28,968.968 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:36:29,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:29,023.023 INFO    ] No camera update needed
[2026-08-25 16:36:29,026.026 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:36:29,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:36:29,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:36:29,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:36:31,079.079 INFO    ] ================================================
[2026-08-25 16:36:31,094.094 INFO    ] Launching Daemon at Tue Aug 25 16:36:31 IST 2026
[2026-08-25 16:36:31,106.106 INFO    ] ================================================
[2026-08-25 16:36:31,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:36:31
[2026-08-25 16:36:32,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:36:32,757.757 INFO    ] Initializing speech engine...
[2026-08-25 16:36:32,771.771 INFO    ] 2026-08-25 16:36:32
[2026-08-25 16:36:33,109.109 INFO    ] 2026-08-25 16:36:33
[2026-08-25 16:36:33,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:36:33,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:36:33,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:36:33,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:36:33,618.618 INFO    ] time= 25/08/2026 16:36:33
[2026-08-25 16:36:33,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:36:33,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:36:33,798.798 INFO    ] No existing commands found in stream
[2026-08-25 16:36:38,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:36:38,828.828 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 16:36:43,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:36:43,012.012 INFO    ] Checking for system updates...
[2026-08-25 16:36:43,049.049 INFO    ] 200
[2026-08-25 16:36:43,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:43,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:43,110.110 INFO    ] No update needed
[2026-08-25 16:36:43,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 16:36:43,148.148 INFO    ] 200
[2026-08-25 16:36:43,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:43,193.193 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:36:43,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:43,242.242 INFO    ] No camera update needed
[2026-08-25 16:36:43,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:36:43,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:36:43,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:36:43,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:36:45,301.301 INFO    ] ================================================
[2026-08-25 16:36:45,318.318 INFO    ] Launching Daemon at Tue Aug 25 16:36:45 IST 2026
[2026-08-25 16:36:45,329.329 INFO    ] ================================================
[2026-08-25 16:36:45,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:36:45
[2026-08-25 16:36:46,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:36:46,731.731 INFO    ] Initializing speech engine...
[2026-08-25 16:36:46,753.753 INFO    ] 2026-08-25 16:36:46
[2026-08-25 16:36:47,004.004 INFO    ] 2026-08-25 16:36:46
[2026-08-25 16:36:47,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:36:47,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:36:47,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:36:47,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:36:47,512.512 INFO    ] time= 25/08/2026 16:36:47
[2026-08-25 16:36:47,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:36:47,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:36:47,715.715 INFO    ] No existing commands found in stream
[2026-08-25 16:36:52,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:36:52,731.731 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 16:36:54,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:36:54,028.028 INFO    ] Checking for system updates...
[2026-08-25 16:36:54,064.064 INFO    ] 200
[2026-08-25 16:36:54,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:54,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:54,121.121 INFO    ] No update needed
[2026-08-25 16:36:54,123.123 INFO    ] Checking for camera pi updates...
[2026-08-25 16:36:54,157.157 INFO    ] 200
[2026-08-25 16:36:54,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:36:54,201.201 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:36:54,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:36:54,252.252 INFO    ] No camera update needed
[2026-08-25 16:36:54,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:36:54,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:36:54,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:36:54,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:36:56,307.307 INFO    ] ================================================
[2026-08-25 16:36:56,322.322 INFO    ] Launching Daemon at Tue Aug 25 16:36:56 IST 2026
[2026-08-25 16:36:56,333.333 INFO    ] ================================================
[2026-08-25 16:36:57,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:36:56
[2026-08-25 16:36:57,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:36:57,831.831 INFO    ] Initializing speech engine...
[2026-08-25 16:36:57,840.840 INFO    ] 2026-08-25 16:36:57
[2026-08-25 16:36:58,112.112 INFO    ] 2026-08-25 16:36:58
[2026-08-25 16:36:58,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:36:58,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:36:58,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:36:58,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:36:58,484.484 INFO    ] time= 25/08/2026 16:36:58
[2026-08-25 16:36:58,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:36:58,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:36:58,667.667 INFO    ] No existing commands found in stream
[2026-08-25 16:37:03,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:37:03,692.692 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 16:37:08,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:37:08,076.076 INFO    ] Checking for system updates...
[2026-08-25 16:37:08,115.115 INFO    ] 200
[2026-08-25 16:37:08,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:08,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:37:08,173.173 INFO    ] No update needed
[2026-08-25 16:37:08,175.175 INFO    ] Checking for camera pi updates...
[2026-08-25 16:37:08,208.208 INFO    ] 200
[2026-08-25 16:37:08,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:08,255.255 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:37:08,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:37:08,317.317 INFO    ] No camera update needed
[2026-08-25 16:37:08,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:37:08,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:37:08,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:37:08,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:37:10,371.371 INFO    ] ================================================
[2026-08-25 16:37:10,387.387 INFO    ] Launching Daemon at Tue Aug 25 16:37:10 IST 2026
[2026-08-25 16:37:10,398.398 INFO    ] ================================================
[2026-08-25 16:37:11,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:37:11
[2026-08-25 16:37:11,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:37:11,906.906 INFO    ] Initializing speech engine...
[2026-08-25 16:37:11,915.915 INFO    ] 2026-08-25 16:37:11
[2026-08-25 16:37:12,175.175 INFO    ] 2026-08-25 16:37:12
[2026-08-25 16:37:12,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:37:12,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:37:12,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:37:12,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:37:12,663.663 INFO    ] time= 25/08/2026 16:37:12
[2026-08-25 16:37:12,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:37:12,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:37:12,856.856 INFO    ] No existing commands found in stream
[2026-08-25 16:37:17,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:37:17,882.882 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 16:37:19,332.332 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:37:19,335.335 INFO    ] Checking for system updates...
[2026-08-25 16:37:19,370.370 INFO    ] 200
[2026-08-25 16:37:19,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:19,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:37:19,429.429 INFO    ] No update needed
[2026-08-25 16:37:19,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 16:37:19,469.469 INFO    ] 200
[2026-08-25 16:37:19,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:19,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:37:19,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:37:19,561.561 INFO    ] No camera update needed
[2026-08-25 16:37:19,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:37:19,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:37:19,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:37:19,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:37:21,617.617 INFO    ] ================================================
[2026-08-25 16:37:21,632.632 INFO    ] Launching Daemon at Tue Aug 25 16:37:21 IST 2026
[2026-08-25 16:37:21,643.643 INFO    ] ================================================
[2026-08-25 16:37:22,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:37:22
[2026-08-25 16:37:22,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:37:23,065.065 INFO    ] Initializing speech engine...
[2026-08-25 16:37:23,074.074 INFO    ] 2026-08-25 16:37:23
[2026-08-25 16:37:23,332.332 INFO    ] 2026-08-25 16:37:23
[2026-08-25 16:37:23,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:37:23,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:37:23,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:37:23,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:37:23,818.818 INFO    ] time= 25/08/2026 16:37:23
[2026-08-25 16:37:23,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:37:23,879.879 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:37:24,001.001 INFO    ] No existing commands found in stream
[2026-08-25 16:37:29,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:37:29,029.029 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 16:37:31,696.696 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:37:31,698.698 INFO    ] Checking for system updates...
[2026-08-25 16:37:31,734.734 INFO    ] 200
[2026-08-25 16:37:31,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:31,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:37:31,821.821 INFO    ] No update needed
[2026-08-25 16:37:31,825.825 INFO    ] Checking for camera pi updates...
[2026-08-25 16:37:31,893.893 INFO    ] 200
[2026-08-25 16:37:31,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:31,950.950 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:37:32,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:37:32,004.004 INFO    ] No camera update needed
[2026-08-25 16:37:32,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:37:32,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:37:32,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:37:32,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:37:34,069.069 INFO    ] ================================================
[2026-08-25 16:37:34,085.085 INFO    ] Launching Daemon at Tue Aug 25 16:37:34 IST 2026
[2026-08-25 16:37:34,095.095 INFO    ] ================================================
[2026-08-25 16:37:34,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:37:34
[2026-08-25 16:37:35,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:37:35,533.533 INFO    ] Initializing speech engine...
[2026-08-25 16:37:35,548.548 INFO    ] 2026-08-25 16:37:35
[2026-08-25 16:37:35,861.861 INFO    ] 2026-08-25 16:37:35
[2026-08-25 16:37:35,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:37:36,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:37:36,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:37:36,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:37:36,292.292 INFO    ] time= 25/08/2026 16:37:36
[2026-08-25 16:37:36,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:37:36,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:37:36,495.495 INFO    ] No existing commands found in stream
[2026-08-25 16:37:41,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:37:41,512.512 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 16:37:45,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:37:45,720.720 INFO    ] Checking for system updates...
[2026-08-25 16:37:45,758.758 INFO    ] 200
[2026-08-25 16:37:45,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:45,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:37:45,816.816 INFO    ] No update needed
[2026-08-25 16:37:45,819.819 INFO    ] Checking for camera pi updates...
[2026-08-25 16:37:45,853.853 INFO    ] 200
[2026-08-25 16:37:45,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:45,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:37:45,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:37:45,959.959 INFO    ] No camera update needed
[2026-08-25 16:37:45,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:37:45,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:37:45,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:37:45,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:37:48,015.015 INFO    ] ================================================
[2026-08-25 16:37:48,030.030 INFO    ] Launching Daemon at Tue Aug 25 16:37:48 IST 2026
[2026-08-25 16:37:48,040.040 INFO    ] ================================================
[2026-08-25 16:37:48,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:37:48
[2026-08-25 16:37:49,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:37:49,515.515 INFO    ] Initializing speech engine...
[2026-08-25 16:37:49,521.521 INFO    ] 2026-08-25 16:37:49
[2026-08-25 16:37:49,782.782 INFO    ] 2026-08-25 16:37:49
[2026-08-25 16:37:49,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:37:50,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:37:50,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:37:50,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:37:50,241.241 INFO    ] time= 25/08/2026 16:37:50
[2026-08-25 16:37:50,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:37:50,338.338 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:37:50,492.492 INFO    ] No existing commands found in stream
[2026-08-25 16:37:55,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:37:55,510.510 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 16:37:58,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:37:58,647.647 INFO    ] Checking for system updates...
[2026-08-25 16:37:58,684.684 INFO    ] 200
[2026-08-25 16:37:58,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:58,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:37:58,750.750 INFO    ] No update needed
[2026-08-25 16:37:58,752.752 INFO    ] Checking for camera pi updates...
[2026-08-25 16:37:58,787.787 INFO    ] 200
[2026-08-25 16:37:58,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:37:58,835.835 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:37:58,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:37:58,890.890 INFO    ] No camera update needed
[2026-08-25 16:37:58,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:37:58,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:37:58,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:37:58,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:38:00,945.945 INFO    ] ================================================
[2026-08-25 16:38:00,960.960 INFO    ] Launching Daemon at Tue Aug 25 16:38:00 IST 2026
[2026-08-25 16:38:00,971.971 INFO    ] ================================================
[2026-08-25 16:38:01,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:38:01
[2026-08-25 16:38:02,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:38:02,655.655 INFO    ] Initializing speech engine...
[2026-08-25 16:38:02,662.662 INFO    ] 2026-08-25 16:38:02
[2026-08-25 16:38:02,938.938 INFO    ] 2026-08-25 16:38:02
[2026-08-25 16:38:02,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:38:03,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:38:03,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:38:03,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:38:03,402.402 INFO    ] time= 25/08/2026 16:38:03
[2026-08-25 16:38:03,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:38:03,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:38:03,592.592 INFO    ] No existing commands found in stream
[2026-08-25 16:38:08,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:38:08,620.620 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 16:38:11,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:38:11,652.652 INFO    ] Checking for system updates...
[2026-08-25 16:38:11,693.693 INFO    ] 200
[2026-08-25 16:38:11,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:11,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:38:11,753.753 INFO    ] No update needed
[2026-08-25 16:38:11,756.756 INFO    ] Checking for camera pi updates...
[2026-08-25 16:38:11,792.792 INFO    ] 200
[2026-08-25 16:38:11,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:11,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:38:11,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:38:11,895.895 INFO    ] No camera update needed
[2026-08-25 16:38:11,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:38:11,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:38:11,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:38:11,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:38:13,953.953 INFO    ] ================================================
[2026-08-25 16:38:13,970.970 INFO    ] Launching Daemon at Tue Aug 25 16:38:13 IST 2026
[2026-08-25 16:38:13,985.985 INFO    ] ================================================
[2026-08-25 16:38:14,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:38:14
[2026-08-25 16:38:15,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:38:15,398.398 INFO    ] Initializing speech engine...
[2026-08-25 16:38:15,407.407 INFO    ] 2026-08-25 16:38:15
[2026-08-25 16:38:15,701.701 INFO    ] 2026-08-25 16:38:15
[2026-08-25 16:38:15,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:38:15,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:38:15,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:38:16,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:38:16,087.087 INFO    ] time= 25/08/2026 16:38:16
[2026-08-25 16:38:16,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:38:16,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:38:16,213.213 INFO    ] No existing commands found in stream
[2026-08-25 16:38:21,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:38:21,229.229 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 16:38:22,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:38:22,669.669 INFO    ] Checking for system updates...
[2026-08-25 16:38:22,705.705 INFO    ] 200
[2026-08-25 16:38:22,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:22,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:38:22,767.767 INFO    ] No update needed
[2026-08-25 16:38:22,769.769 INFO    ] Checking for camera pi updates...
[2026-08-25 16:38:22,806.806 INFO    ] 200
[2026-08-25 16:38:22,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:22,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:38:22,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:38:22,999.999 INFO    ] No camera update needed
[2026-08-25 16:38:23,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:38:23,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:38:23,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:38:23,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:38:25,055.055 INFO    ] ================================================
[2026-08-25 16:38:25,070.070 INFO    ] Launching Daemon at Tue Aug 25 16:38:25 IST 2026
[2026-08-25 16:38:25,081.081 INFO    ] ================================================
[2026-08-25 16:38:25,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:38:25
[2026-08-25 16:38:26,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:38:26,659.659 INFO    ] Initializing speech engine...
[2026-08-25 16:38:26,668.668 INFO    ] 2026-08-25 16:38:26
[2026-08-25 16:38:26,928.928 INFO    ] 2026-08-25 16:38:26
[2026-08-25 16:38:26,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:38:27,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:38:27,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:38:27,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:38:27,471.471 INFO    ] time= 25/08/2026 16:38:27
[2026-08-25 16:38:27,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:38:27,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:38:27,624.624 INFO    ] No existing commands found in stream
[2026-08-25 16:38:32,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:38:32,641.641 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 16:38:33,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:38:33,763.763 INFO    ] Checking for system updates...
[2026-08-25 16:38:33,798.798 INFO    ] 200
[2026-08-25 16:38:33,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:33,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:38:33,856.856 INFO    ] No update needed
[2026-08-25 16:38:33,859.859 INFO    ] Checking for camera pi updates...
[2026-08-25 16:38:33,897.897 INFO    ] 200
[2026-08-25 16:38:33,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:33,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:38:33,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:38:33,989.989 INFO    ] No camera update needed
[2026-08-25 16:38:33,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:38:33,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:38:33,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:38:34,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:38:36,045.045 INFO    ] ================================================
[2026-08-25 16:38:36,060.060 INFO    ] Launching Daemon at Tue Aug 25 16:38:36 IST 2026
[2026-08-25 16:38:36,071.071 INFO    ] ================================================
[2026-08-25 16:38:36,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:38:36
[2026-08-25 16:38:37,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:38:37,500.500 INFO    ] Initializing speech engine...
[2026-08-25 16:38:37,523.523 INFO    ] 2026-08-25 16:38:37
[2026-08-25 16:38:37,778.778 INFO    ] 2026-08-25 16:38:37
[2026-08-25 16:38:37,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:38:37,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:38:38,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:38:38,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:38:38,160.160 INFO    ] time= 25/08/2026 16:38:38
[2026-08-25 16:38:38,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:38:38,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:38:38,326.326 INFO    ] No existing commands found in stream
[2026-08-25 16:38:43,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:38:43,350.350 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 16:38:47,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:38:47,179.179 INFO    ] Checking for system updates...
[2026-08-25 16:38:47,215.215 INFO    ] 200
[2026-08-25 16:38:47,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:47,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:38:47,274.274 INFO    ] No update needed
[2026-08-25 16:38:47,277.277 INFO    ] Checking for camera pi updates...
[2026-08-25 16:38:47,310.310 INFO    ] 200
[2026-08-25 16:38:47,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:38:47,353.353 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:38:47,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:38:47,403.403 INFO    ] No camera update needed
[2026-08-25 16:38:47,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:38:47,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:38:47,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:38:47,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:38:49,459.459 INFO    ] ================================================
[2026-08-25 16:38:49,474.474 INFO    ] Launching Daemon at Tue Aug 25 16:38:49 IST 2026
[2026-08-25 16:38:49,485.485 INFO    ] ================================================
[2026-08-25 16:38:50,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:38:50
[2026-08-25 16:38:50,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:38:50,943.943 INFO    ] Initializing speech engine...
[2026-08-25 16:38:50,950.950 INFO    ] 2026-08-25 16:38:50
[2026-08-25 16:38:51,211.211 INFO    ] 2026-08-25 16:38:51
[2026-08-25 16:38:51,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:38:51,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:38:51,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:38:51,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:38:51,754.754 INFO    ] time= 25/08/2026 16:38:51
[2026-08-25 16:38:51,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:38:51,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:38:51,911.911 INFO    ] No existing commands found in stream
[2026-08-25 16:38:56,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:38:56,942.942 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 16:39:01,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:39:01,220.220 INFO    ] Checking for system updates...
[2026-08-25 16:39:01,256.256 INFO    ] 200
[2026-08-25 16:39:01,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:01,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:39:01,312.312 INFO    ] No update needed
[2026-08-25 16:39:01,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 16:39:01,354.354 INFO    ] 200
[2026-08-25 16:39:01,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:01,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:39:01,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:39:01,454.454 INFO    ] No camera update needed
[2026-08-25 16:39:01,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:39:01,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:39:01,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:39:01,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:39:03,513.513 INFO    ] ================================================
[2026-08-25 16:39:03,530.530 INFO    ] Launching Daemon at Tue Aug 25 16:39:03 IST 2026
[2026-08-25 16:39:03,542.542 INFO    ] ================================================
[2026-08-25 16:39:04,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:39:04
[2026-08-25 16:39:04,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:39:04,972.972 INFO    ] Initializing speech engine...
[2026-08-25 16:39:04,982.982 INFO    ] 2026-08-25 16:39:04
[2026-08-25 16:39:05,277.277 INFO    ] 2026-08-25 16:39:05
[2026-08-25 16:39:05,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:39:05,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:39:05,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:39:05,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:39:05,696.696 INFO    ] time= 25/08/2026 16:39:05
[2026-08-25 16:39:05,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:39:05,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:39:05,785.785 INFO    ] No existing commands found in stream
[2026-08-25 16:39:10,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:39:10,819.819 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 16:39:13,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:39:13,928.928 INFO    ] Checking for system updates...
[2026-08-25 16:39:13,963.963 INFO    ] 200
[2026-08-25 16:39:13,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:14,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:14,022.022 INFO    ] No update needed
[2026-08-25 16:39:14,024.024 INFO    ] Checking for camera pi updates...
[2026-08-25 16:39:14,058.058 INFO    ] 200
[2026-08-25 16:39:14,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:14,102.102 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:39:14,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:14,148.148 INFO    ] No camera update needed
[2026-08-25 16:39:14,150.150 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:39:14,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:39:14,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:39:14,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:39:16,204.204 INFO    ] ================================================
[2026-08-25 16:39:16,219.219 INFO    ] Launching Daemon at Tue Aug 25 16:39:16 IST 2026
[2026-08-25 16:39:16,230.230 INFO    ] ================================================
[2026-08-25 16:39:16,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:39:16
[2026-08-25 16:39:17,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:39:17,864.864 INFO    ] Initializing speech engine...
[2026-08-25 16:39:17,873.873 INFO    ] 2026-08-25 16:39:17
[2026-08-25 16:39:18,162.162 INFO    ] 2026-08-25 16:39:18
[2026-08-25 16:39:18,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:39:18,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:39:18,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:39:18,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:39:18,710.710 INFO    ] time= 25/08/2026 16:39:18
[2026-08-25 16:39:18,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:39:18,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:39:18,872.872 INFO    ] No existing commands found in stream
[2026-08-25 16:39:23,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:39:23,895.895 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 16:39:27,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:39:27,473.473 INFO    ] Checking for system updates...
[2026-08-25 16:39:27,510.510 INFO    ] 200
[2026-08-25 16:39:27,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:27,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:27,577.577 INFO    ] No update needed
[2026-08-25 16:39:27,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 16:39:27,615.615 INFO    ] 200
[2026-08-25 16:39:27,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:27,658.658 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:39:27,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:27,707.707 INFO    ] No camera update needed
[2026-08-25 16:39:27,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:39:27,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:39:27,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:39:27,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:39:29,761.761 INFO    ] ================================================
[2026-08-25 16:39:29,776.776 INFO    ] Launching Daemon at Tue Aug 25 16:39:29 IST 2026
[2026-08-25 16:39:29,787.787 INFO    ] ================================================
[2026-08-25 16:39:30,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:39:30
[2026-08-25 16:39:30,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:39:31,245.245 INFO    ] Initializing speech engine...
[2026-08-25 16:39:31,252.252 INFO    ] 2026-08-25 16:39:31
[2026-08-25 16:39:31,513.513 INFO    ] 2026-08-25 16:39:31
[2026-08-25 16:39:31,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:39:31,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:39:31,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:39:32,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:39:32,084.084 INFO    ] time= 25/08/2026 16:39:32
[2026-08-25 16:39:32,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:39:32,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:39:32,245.245 INFO    ] No existing commands found in stream
[2026-08-25 16:39:37,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:39:37,266.266 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 16:39:39,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:39:39,877.877 INFO    ] Checking for system updates...
[2026-08-25 16:39:39,917.917 INFO    ] 200
[2026-08-25 16:39:39,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:39,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:39,973.973 INFO    ] No update needed
[2026-08-25 16:39:39,975.975 INFO    ] Checking for camera pi updates...
[2026-08-25 16:39:40,009.009 INFO    ] 200
[2026-08-25 16:39:40,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:40,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:39:40,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:40,104.104 INFO    ] No camera update needed
[2026-08-25 16:39:40,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:39:40,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:39:40,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:39:40,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:39:42,158.158 INFO    ] ================================================
[2026-08-25 16:39:42,173.173 INFO    ] Launching Daemon at Tue Aug 25 16:39:42 IST 2026
[2026-08-25 16:39:42,183.183 INFO    ] ================================================
[2026-08-25 16:39:42,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:39:42
[2026-08-25 16:39:43,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:39:43,648.648 INFO    ] Initializing speech engine...
[2026-08-25 16:39:43,656.656 INFO    ] 2026-08-25 16:39:43
[2026-08-25 16:39:43,902.902 INFO    ] 2026-08-25 16:39:43
[2026-08-25 16:39:43,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:39:44,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:39:44,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:39:44,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:39:44,404.404 INFO    ] time= 25/08/2026 16:39:44
[2026-08-25 16:39:44,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:39:44,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:39:44,591.591 INFO    ] No existing commands found in stream
[2026-08-25 16:39:49,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:39:49,618.618 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 16:39:50,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:39:50,744.744 INFO    ] Checking for system updates...
[2026-08-25 16:39:50,780.780 INFO    ] 200
[2026-08-25 16:39:50,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:50,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:50,837.837 INFO    ] No update needed
[2026-08-25 16:39:50,840.840 INFO    ] Checking for camera pi updates...
[2026-08-25 16:39:50,876.876 INFO    ] 200
[2026-08-25 16:39:50,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:39:50,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:39:50,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:39:50,973.973 INFO    ] No camera update needed
[2026-08-25 16:39:50,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:39:50,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:39:50,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:39:50,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:39:53,026.026 INFO    ] ================================================
[2026-08-25 16:39:53,041.041 INFO    ] Launching Daemon at Tue Aug 25 16:39:53 IST 2026
[2026-08-25 16:39:53,052.052 INFO    ] ================================================
[2026-08-25 16:39:53,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:39:53
[2026-08-25 16:39:54,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:39:54,465.465 INFO    ] Initializing speech engine...
[2026-08-25 16:39:54,474.474 INFO    ] 2026-08-25 16:39:54
[2026-08-25 16:39:54,727.727 INFO    ] 2026-08-25 16:39:54
[2026-08-25 16:39:54,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:39:54,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:39:55,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:39:55,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:39:55,186.186 INFO    ] time= 25/08/2026 16:39:55
[2026-08-25 16:39:55,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:39:55,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:39:55,408.408 INFO    ] No existing commands found in stream
[2026-08-25 16:40:00,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:40:00,435.435 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 16:40:01,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:40:01,358.358 INFO    ] Checking for system updates...
[2026-08-25 16:40:01,393.393 INFO    ] 200
[2026-08-25 16:40:01,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:01,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:01,451.451 INFO    ] No update needed
[2026-08-25 16:40:01,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 16:40:01,487.487 INFO    ] 200
[2026-08-25 16:40:01,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:01,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:40:01,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:01,580.580 INFO    ] No camera update needed
[2026-08-25 16:40:01,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:40:01,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:40:01,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:40:01,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:40:03,641.641 INFO    ] ================================================
[2026-08-25 16:40:03,656.656 INFO    ] Launching Daemon at Tue Aug 25 16:40:03 IST 2026
[2026-08-25 16:40:03,669.669 INFO    ] ================================================
[2026-08-25 16:40:04,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:40:04
[2026-08-25 16:40:04,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:40:05,210.210 INFO    ] Initializing speech engine...
[2026-08-25 16:40:05,221.221 INFO    ] 2026-08-25 16:40:05
[2026-08-25 16:40:05,483.483 INFO    ] 2026-08-25 16:40:05
[2026-08-25 16:40:05,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:40:05,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:40:05,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:40:06,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:40:06,996.996 INFO    ] time= 25/08/2026 16:40:06
[2026-08-25 16:40:07,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:40:07,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:40:07,151.151 INFO    ] No existing commands found in stream
[2026-08-25 16:40:12,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:40:12,189.189 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 16:40:13,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:40:13,794.794 INFO    ] Checking for system updates...
[2026-08-25 16:40:13,831.831 INFO    ] 200
[2026-08-25 16:40:13,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:13,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:13,905.905 INFO    ] No update needed
[2026-08-25 16:40:13,908.908 INFO    ] Checking for camera pi updates...
[2026-08-25 16:40:13,946.946 INFO    ] 200
[2026-08-25 16:40:13,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:13,990.990 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:40:14,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:14,039.039 INFO    ] No camera update needed
[2026-08-25 16:40:14,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:40:14,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:40:14,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:40:14,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:40:16,102.102 INFO    ] ================================================
[2026-08-25 16:40:16,118.118 INFO    ] Launching Daemon at Tue Aug 25 16:40:16 IST 2026
[2026-08-25 16:40:16,129.129 INFO    ] ================================================
[2026-08-25 16:40:16,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:40:16
[2026-08-25 16:40:17,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:40:17,636.636 INFO    ] Initializing speech engine...
[2026-08-25 16:40:17,642.642 INFO    ] 2026-08-25 16:40:17
[2026-08-25 16:40:17,887.887 INFO    ] 2026-08-25 16:40:17
[2026-08-25 16:40:17,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:40:18,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:40:18,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:40:18,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:40:18,386.386 INFO    ] time= 25/08/2026 16:40:18
[2026-08-25 16:40:18,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:40:18,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:40:18,592.592 INFO    ] No existing commands found in stream
[2026-08-25 16:40:23,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:40:23,608.608 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 16:40:26,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:40:26,576.576 INFO    ] Checking for system updates...
[2026-08-25 16:40:26,611.611 INFO    ] 200
[2026-08-25 16:40:26,614.614 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:26,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:40:26,676.676 INFO    ] No update needed
[2026-08-25 16:40:26,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 16:40:26,711.711 INFO    ] 200
[2026-08-25 16:40:26,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:26,755.755 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:40:26,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:40:26,909.909 INFO    ] No camera update needed
[2026-08-25 16:40:26,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:40:26,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:40:26,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:40:26,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:40:28,963.963 INFO    ] ================================================
[2026-08-25 16:40:28,978.978 INFO    ] Launching Daemon at Tue Aug 25 16:40:28 IST 2026
[2026-08-25 16:40:28,989.989 INFO    ] ================================================
[2026-08-25 16:40:29,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:40:29
[2026-08-25 16:40:30,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:40:30,513.513 INFO    ] Initializing speech engine...
[2026-08-25 16:40:30,518.518 INFO    ] 2026-08-25 16:40:30
[2026-08-25 16:40:30,784.784 INFO    ] 2026-08-25 16:40:30
[2026-08-25 16:40:30,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:40:31,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:40:31,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:40:31,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:40:31,244.244 INFO    ] time= 25/08/2026 16:40:31
[2026-08-25 16:40:31,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:40:31,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:40:31,459.459 INFO    ] No existing commands found in stream
[2026-08-25 16:40:36,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:40:36,489.489 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 16:40:39,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:40:39,237.237 INFO    ] Checking for system updates...
[2026-08-25 16:40:39,277.277 INFO    ] 200
[2026-08-25 16:40:39,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:39,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:39,342.342 INFO    ] No update needed
[2026-08-25 16:40:39,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 16:40:39,378.378 INFO    ] 200
[2026-08-25 16:40:39,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:39,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:40:39,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:39,469.469 INFO    ] No camera update needed
[2026-08-25 16:40:39,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:40:39,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:40:39,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:40:39,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:40:41,524.524 INFO    ] ================================================
[2026-08-25 16:40:41,539.539 INFO    ] Launching Daemon at Tue Aug 25 16:40:41 IST 2026
[2026-08-25 16:40:41,550.550 INFO    ] ================================================
[2026-08-25 16:40:42,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:40:42
[2026-08-25 16:40:42,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:40:42,965.965 INFO    ] Initializing speech engine...
[2026-08-25 16:40:42,975.975 INFO    ] 2026-08-25 16:40:42
[2026-08-25 16:40:43,235.235 INFO    ] 2026-08-25 16:40:43
[2026-08-25 16:40:43,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:40:43,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:40:43,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:40:43,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:40:43,717.717 INFO    ] time= 25/08/2026 16:40:43
[2026-08-25 16:40:43,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:40:43,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:40:43,925.925 INFO    ] No existing commands found in stream
[2026-08-25 16:40:48,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:40:48,942.942 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 16:40:51,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:40:51,860.860 INFO    ] Checking for system updates...
[2026-08-25 16:40:51,896.896 INFO    ] 200
[2026-08-25 16:40:51,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:51,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:51,954.954 INFO    ] No update needed
[2026-08-25 16:40:51,956.956 INFO    ] Checking for camera pi updates...
[2026-08-25 16:40:51,990.990 INFO    ] 200
[2026-08-25 16:40:51,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:40:52,033.033 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:40:52,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:40:52,080.080 INFO    ] No camera update needed
[2026-08-25 16:40:52,082.082 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:40:52,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:40:52,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:40:52,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:40:54,139.139 INFO    ] ================================================
[2026-08-25 16:40:54,154.154 INFO    ] Launching Daemon at Tue Aug 25 16:40:54 IST 2026
[2026-08-25 16:40:54,165.165 INFO    ] ================================================
[2026-08-25 16:40:54,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:40:54
[2026-08-25 16:40:55,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:40:55,770.770 INFO    ] Initializing speech engine...
[2026-08-25 16:40:55,793.793 INFO    ] 2026-08-25 16:40:55
[2026-08-25 16:40:56,047.047 INFO    ] 2026-08-25 16:40:56
[2026-08-25 16:40:56,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:40:56,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:40:56,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:40:56,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:40:56,431.431 INFO    ] time= 25/08/2026 16:40:56
[2026-08-25 16:40:56,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:40:56,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:40:56,614.614 INFO    ] No existing commands found in stream
[2026-08-25 16:41:01,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:41:01,640.640 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 16:41:02,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:41:02,426.426 INFO    ] Checking for system updates...
[2026-08-25 16:41:02,475.475 INFO    ] 200
[2026-08-25 16:41:02,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:02,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:41:02,558.558 INFO    ] No update needed
[2026-08-25 16:41:02,561.561 INFO    ] Checking for camera pi updates...
[2026-08-25 16:41:02,607.607 INFO    ] 200
[2026-08-25 16:41:02,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:02,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:41:02,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:41:02,704.704 INFO    ] No camera update needed
[2026-08-25 16:41:02,707.707 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:41:02,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:41:02,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:41:02,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:41:04,759.759 INFO    ] ================================================
[2026-08-25 16:41:04,774.774 INFO    ] Launching Daemon at Tue Aug 25 16:41:04 IST 2026
[2026-08-25 16:41:04,784.784 INFO    ] ================================================
[2026-08-25 16:41:05,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:41:05
[2026-08-25 16:41:06,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:41:06,439.439 INFO    ] Initializing speech engine...
[2026-08-25 16:41:06,453.453 INFO    ] 2026-08-25 16:41:06
[2026-08-25 16:41:06,767.767 INFO    ] 2026-08-25 16:41:06
[2026-08-25 16:41:06,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:41:07,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:41:07,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:41:07,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:41:07,247.247 INFO    ] time= 25/08/2026 16:41:07
[2026-08-25 16:41:07,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:41:07,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:41:07,443.443 INFO    ] No existing commands found in stream
[2026-08-25 16:41:12,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:41:12,462.462 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 16:41:15,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:41:15,688.688 INFO    ] Checking for system updates...
[2026-08-25 16:41:15,727.727 INFO    ] 200
[2026-08-25 16:41:15,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:15,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:41:15,784.784 INFO    ] No update needed
[2026-08-25 16:41:15,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 16:41:15,820.820 INFO    ] 200
[2026-08-25 16:41:15,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:15,867.867 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:41:15,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:41:15,911.911 INFO    ] No camera update needed
[2026-08-25 16:41:15,914.914 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:41:15,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:41:15,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:41:15,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:41:17,966.966 INFO    ] ================================================
[2026-08-25 16:41:17,981.981 INFO    ] Launching Daemon at Tue Aug 25 16:41:17 IST 2026
[2026-08-25 16:41:17,992.992 INFO    ] ================================================
[2026-08-25 16:41:18,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:41:18
[2026-08-25 16:41:19,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:41:19,407.407 INFO    ] Initializing speech engine...
[2026-08-25 16:41:19,415.415 INFO    ] 2026-08-25 16:41:19
[2026-08-25 16:41:19,717.717 INFO    ] 2026-08-25 16:41:19
[2026-08-25 16:41:19,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:41:19,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:41:19,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:41:20,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:41:20,102.102 INFO    ] time= 25/08/2026 16:41:20
[2026-08-25 16:41:20,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:41:20,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:41:20,253.253 INFO    ] No existing commands found in stream
[2026-08-25 16:41:25,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:41:25,266.266 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 16:41:28,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:41:28,776.776 INFO    ] Checking for system updates...
[2026-08-25 16:41:28,812.812 INFO    ] 200
[2026-08-25 16:41:28,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:28,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:41:28,870.870 INFO    ] No update needed
[2026-08-25 16:41:28,875.875 INFO    ] Checking for camera pi updates...
[2026-08-25 16:41:28,910.910 INFO    ] 200
[2026-08-25 16:41:28,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:28,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:41:28,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:41:29,000.000 INFO    ] No camera update needed
[2026-08-25 16:41:29,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:41:29,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:41:29,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:41:29,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:41:31,058.058 INFO    ] ================================================
[2026-08-25 16:41:31,073.073 INFO    ] Launching Daemon at Tue Aug 25 16:41:31 IST 2026
[2026-08-25 16:41:31,084.084 INFO    ] ================================================
[2026-08-25 16:41:31,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:41:31
[2026-08-25 16:41:32,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:41:32,700.700 INFO    ] Initializing speech engine...
[2026-08-25 16:41:32,714.714 INFO    ] 2026-08-25 16:41:32
[2026-08-25 16:41:33,007.007 INFO    ] 2026-08-25 16:41:32
[2026-08-25 16:41:33,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:41:33,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:41:33,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:41:33,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:41:33,552.552 INFO    ] time= 25/08/2026 16:41:33
[2026-08-25 16:41:33,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:41:33,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:41:33,693.693 INFO    ] No existing commands found in stream
[2026-08-25 16:41:38,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:41:38,728.728 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 16:41:39,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:41:39,895.895 INFO    ] Checking for system updates...
[2026-08-25 16:41:39,933.933 INFO    ] 200
[2026-08-25 16:41:39,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:39,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:41:39,994.994 INFO    ] No update needed
[2026-08-25 16:41:39,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 16:41:40,031.031 INFO    ] 200
[2026-08-25 16:41:40,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:40,076.076 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:41:40,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:41:40,128.128 INFO    ] No camera update needed
[2026-08-25 16:41:40,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:41:40,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:41:40,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:41:40,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:41:42,188.188 INFO    ] ================================================
[2026-08-25 16:41:42,203.203 INFO    ] Launching Daemon at Tue Aug 25 16:41:42 IST 2026
[2026-08-25 16:41:42,215.215 INFO    ] ================================================
[2026-08-25 16:41:42,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:41:42
[2026-08-25 16:41:43,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:41:43,685.685 INFO    ] Initializing speech engine...
[2026-08-25 16:41:43,692.692 INFO    ] 2026-08-25 16:41:43
[2026-08-25 16:41:43,990.990 INFO    ] 2026-08-25 16:41:43
[2026-08-25 16:41:44,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:41:44,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:41:44,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:41:44,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:41:44,413.413 INFO    ] time= 25/08/2026 16:41:44
[2026-08-25 16:41:44,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:41:44,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:41:44,575.575 INFO    ] No existing commands found in stream
[2026-08-25 16:41:49,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:41:49,603.603 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 16:41:50,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:41:50,262.262 INFO    ] Checking for system updates...
[2026-08-25 16:41:50,298.298 INFO    ] 200
[2026-08-25 16:41:50,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:50,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:41:50,355.355 INFO    ] No update needed
[2026-08-25 16:41:50,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 16:41:50,391.391 INFO    ] 200
[2026-08-25 16:41:50,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:41:50,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:41:50,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:41:50,499.499 INFO    ] No camera update needed
[2026-08-25 16:41:50,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:41:50,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:41:50,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:41:50,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:41:52,554.554 INFO    ] ================================================
[2026-08-25 16:41:52,570.570 INFO    ] Launching Daemon at Tue Aug 25 16:41:52 IST 2026
[2026-08-25 16:41:52,580.580 INFO    ] ================================================
[2026-08-25 16:41:53,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:41:53
[2026-08-25 16:41:53,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:41:54,269.269 INFO    ] Initializing speech engine...
[2026-08-25 16:41:54,276.276 INFO    ] 2026-08-25 16:41:54
[2026-08-25 16:41:54,561.561 INFO    ] 2026-08-25 16:41:54
[2026-08-25 16:41:54,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:41:54,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:41:54,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:41:54,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:41:55,045.045 INFO    ] time= 25/08/2026 16:41:54
[2026-08-25 16:41:55,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:41:55,123.123 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:41:55,261.261 INFO    ] No existing commands found in stream
[2026-08-25 16:42:00,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:42:00,287.287 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 16:42:03,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:42:03,333.333 INFO    ] Checking for system updates...
[2026-08-25 16:42:03,377.377 INFO    ] 200
[2026-08-25 16:42:03,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:03,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:42:03,450.450 INFO    ] No update needed
[2026-08-25 16:42:03,455.455 INFO    ] Checking for camera pi updates...
[2026-08-25 16:42:03,494.494 INFO    ] 200
[2026-08-25 16:42:03,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:03,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:42:03,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:42:03,611.611 INFO    ] No camera update needed
[2026-08-25 16:42:03,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:42:03,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:42:03,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:42:03,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:42:05,667.667 INFO    ] ================================================
[2026-08-25 16:42:05,684.684 INFO    ] Launching Daemon at Tue Aug 25 16:42:05 IST 2026
[2026-08-25 16:42:05,695.695 INFO    ] ================================================
[2026-08-25 16:42:06,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:42:06
[2026-08-25 16:42:06,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:42:07,167.167 INFO    ] Initializing speech engine...
[2026-08-25 16:42:07,175.175 INFO    ] 2026-08-25 16:42:07
[2026-08-25 16:42:07,468.468 INFO    ] 2026-08-25 16:42:07
[2026-08-25 16:42:07,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:42:07,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:42:07,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:42:07,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:42:07,846.846 INFO    ] time= 25/08/2026 16:42:07
[2026-08-25 16:42:07,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:42:07,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:42:08,035.035 INFO    ] No existing commands found in stream
[2026-08-25 16:42:13,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:42:13,060.060 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 16:42:16,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:42:16,711.711 INFO    ] Checking for system updates...
[2026-08-25 16:42:16,747.747 INFO    ] 200
[2026-08-25 16:42:16,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:16,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:42:16,807.807 INFO    ] No update needed
[2026-08-25 16:42:16,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 16:42:16,848.848 INFO    ] 200
[2026-08-25 16:42:16,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:16,904.904 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:42:16,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:42:16,964.964 INFO    ] No camera update needed
[2026-08-25 16:42:16,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:42:16,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:42:16,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:42:16,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:42:19,021.021 INFO    ] ================================================
[2026-08-25 16:42:19,036.036 INFO    ] Launching Daemon at Tue Aug 25 16:42:19 IST 2026
[2026-08-25 16:42:19,047.047 INFO    ] ================================================
[2026-08-25 16:42:19,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:42:19
[2026-08-25 16:42:20,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:42:20,465.465 INFO    ] Initializing speech engine...
[2026-08-25 16:42:20,473.473 INFO    ] 2026-08-25 16:42:20
[2026-08-25 16:42:20,748.748 INFO    ] 2026-08-25 16:42:20
[2026-08-25 16:42:20,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:42:20,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:42:21,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:42:21,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:42:21,199.199 INFO    ] time= 25/08/2026 16:42:21
[2026-08-25 16:42:21,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:42:21,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:42:21,440.440 INFO    ] No existing commands found in stream
[2026-08-25 16:42:26,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:42:26,465.465 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 16:42:27,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:42:27,191.191 INFO    ] Checking for system updates...
[2026-08-25 16:42:27,226.226 INFO    ] 200
[2026-08-25 16:42:27,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:27,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:42:27,284.284 INFO    ] No update needed
[2026-08-25 16:42:27,287.287 INFO    ] Checking for camera pi updates...
[2026-08-25 16:42:27,325.325 INFO    ] 200
[2026-08-25 16:42:27,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:27,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:42:27,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:42:27,420.420 INFO    ] No camera update needed
[2026-08-25 16:42:27,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:42:27,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:42:27,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:42:27,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:42:29,477.477 INFO    ] ================================================
[2026-08-25 16:42:29,492.492 INFO    ] Launching Daemon at Tue Aug 25 16:42:29 IST 2026
[2026-08-25 16:42:29,503.503 INFO    ] ================================================
[2026-08-25 16:42:30,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:42:30
[2026-08-25 16:42:30,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:42:30,917.917 INFO    ] Initializing speech engine...
[2026-08-25 16:42:30,930.930 INFO    ] 2026-08-25 16:42:30
[2026-08-25 16:42:31,213.213 INFO    ] 2026-08-25 16:42:31
[2026-08-25 16:42:31,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:42:31,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:42:31,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:42:31,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:42:31,718.718 INFO    ] time= 25/08/2026 16:42:31
[2026-08-25 16:42:31,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:42:31,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:42:31,959.959 INFO    ] No existing commands found in stream
[2026-08-25 16:42:36,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:42:36,977.977 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 16:42:41,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:42:41,066.066 INFO    ] Checking for system updates...
[2026-08-25 16:42:41,102.102 INFO    ] 200
[2026-08-25 16:42:41,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:41,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:42:41,164.164 INFO    ] No update needed
[2026-08-25 16:42:41,166.166 INFO    ] Checking for camera pi updates...
[2026-08-25 16:42:41,200.200 INFO    ] 200
[2026-08-25 16:42:41,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:41,243.243 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:42:41,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:42:41,300.300 INFO    ] No camera update needed
[2026-08-25 16:42:41,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:42:41,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:42:41,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:42:41,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:42:43,353.353 INFO    ] ================================================
[2026-08-25 16:42:43,369.369 INFO    ] Launching Daemon at Tue Aug 25 16:42:43 IST 2026
[2026-08-25 16:42:43,380.380 INFO    ] ================================================
[2026-08-25 16:42:43,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:42:43
[2026-08-25 16:42:44,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:42:44,848.848 INFO    ] Initializing speech engine...
[2026-08-25 16:42:44,858.858 INFO    ] 2026-08-25 16:42:44
[2026-08-25 16:42:45,118.118 INFO    ] 2026-08-25 16:42:45
[2026-08-25 16:42:45,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:42:45,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:42:45,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:42:45,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:42:45,579.579 INFO    ] time= 25/08/2026 16:42:45
[2026-08-25 16:42:45,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:42:45,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:42:45,794.794 INFO    ] No existing commands found in stream
[2026-08-25 16:42:50,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:42:50,820.820 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 16:42:53,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:42:53,313.313 INFO    ] Checking for system updates...
[2026-08-25 16:42:53,350.350 INFO    ] 200
[2026-08-25 16:42:53,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:53,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:42:53,407.407 INFO    ] No update needed
[2026-08-25 16:42:53,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 16:42:53,448.448 INFO    ] 200
[2026-08-25 16:42:53,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:42:53,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:42:53,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:42:53,541.541 INFO    ] No camera update needed
[2026-08-25 16:42:53,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:42:53,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:42:53,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:42:53,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:42:55,595.595 INFO    ] ================================================
[2026-08-25 16:42:55,611.611 INFO    ] Launching Daemon at Tue Aug 25 16:42:55 IST 2026
[2026-08-25 16:42:55,621.621 INFO    ] ================================================
[2026-08-25 16:42:56,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:42:56
[2026-08-25 16:42:56,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:42:57,187.187 INFO    ] Initializing speech engine...
[2026-08-25 16:42:57,196.196 INFO    ] 2026-08-25 16:42:57
[2026-08-25 16:42:57,455.455 INFO    ] 2026-08-25 16:42:57
[2026-08-25 16:42:57,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:42:57,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:42:57,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:42:57,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:42:57,961.961 INFO    ] time= 25/08/2026 16:42:57
[2026-08-25 16:42:58,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:42:58,010.010 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:42:58,154.154 INFO    ] No existing commands found in stream
[2026-08-25 16:43:03,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:43:03,171.171 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 16:43:04,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:43:04,737.737 INFO    ] Checking for system updates...
[2026-08-25 16:43:04,772.772 INFO    ] 200
[2026-08-25 16:43:04,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:04,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:43:04,830.830 INFO    ] No update needed
[2026-08-25 16:43:04,832.832 INFO    ] Checking for camera pi updates...
[2026-08-25 16:43:04,870.870 INFO    ] 200
[2026-08-25 16:43:04,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:04,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:43:04,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:43:04,975.975 INFO    ] No camera update needed
[2026-08-25 16:43:04,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:43:04,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:43:04,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:43:04,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:43:07,031.031 INFO    ] ================================================
[2026-08-25 16:43:07,046.046 INFO    ] Launching Daemon at Tue Aug 25 16:43:07 IST 2026
[2026-08-25 16:43:07,056.056 INFO    ] ================================================
[2026-08-25 16:43:07,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:43:07
[2026-08-25 16:43:08,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:43:08,492.492 INFO    ] Initializing speech engine...
[2026-08-25 16:43:08,498.498 INFO    ] 2026-08-25 16:43:08
[2026-08-25 16:43:08,742.742 INFO    ] 2026-08-25 16:43:08
[2026-08-25 16:43:08,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:43:09,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:43:09,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:43:09,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:43:09,211.211 INFO    ] time= 25/08/2026 16:43:09
[2026-08-25 16:43:09,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:43:09,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:43:09,440.440 INFO    ] No existing commands found in stream
[2026-08-25 16:43:14,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:43:14,463.463 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 16:43:16,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:43:16,083.083 INFO    ] Checking for system updates...
[2026-08-25 16:43:16,119.119 INFO    ] 200
[2026-08-25 16:43:16,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:16,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:16,183.183 INFO    ] No update needed
[2026-08-25 16:43:16,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 16:43:16,220.220 INFO    ] 200
[2026-08-25 16:43:16,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:16,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:43:16,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:16,321.321 INFO    ] No camera update needed
[2026-08-25 16:43:16,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:43:16,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:43:16,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:43:16,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:43:18,375.375 INFO    ] ================================================
[2026-08-25 16:43:18,390.390 INFO    ] Launching Daemon at Tue Aug 25 16:43:18 IST 2026
[2026-08-25 16:43:18,401.401 INFO    ] ================================================
[2026-08-25 16:43:18,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:43:18
[2026-08-25 16:43:19,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:43:19,815.815 INFO    ] Initializing speech engine...
[2026-08-25 16:43:19,824.824 INFO    ] 2026-08-25 16:43:19
[2026-08-25 16:43:20,070.070 INFO    ] 2026-08-25 16:43:20
[2026-08-25 16:43:20,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:43:20,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:43:20,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:43:20,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:43:20,436.436 INFO    ] time= 25/08/2026 16:43:20
[2026-08-25 16:43:20,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:43:20,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:43:20,608.608 INFO    ] No existing commands found in stream
[2026-08-25 16:43:25,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:43:25,638.638 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 16:43:29,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:43:29,737.737 INFO    ] Checking for system updates...
[2026-08-25 16:43:29,772.772 INFO    ] 200
[2026-08-25 16:43:29,775.775 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:29,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:29,837.837 INFO    ] No update needed
[2026-08-25 16:43:29,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 16:43:29,872.872 INFO    ] 200
[2026-08-25 16:43:29,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:29,920.920 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:43:29,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:29,979.979 INFO    ] No camera update needed
[2026-08-25 16:43:29,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:43:29,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:43:29,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:43:29,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:43:32,037.037 INFO    ] ================================================
[2026-08-25 16:43:32,054.054 INFO    ] Launching Daemon at Tue Aug 25 16:43:32 IST 2026
[2026-08-25 16:43:32,066.066 INFO    ] ================================================
[2026-08-25 16:43:32,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:43:32
[2026-08-25 16:43:33,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:43:33,603.603 INFO    ] Initializing speech engine...
[2026-08-25 16:43:33,612.612 INFO    ] 2026-08-25 16:43:33
[2026-08-25 16:43:33,905.905 INFO    ] 2026-08-25 16:43:33
[2026-08-25 16:43:33,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:43:34,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:43:34,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:43:34,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:43:34,306.306 INFO    ] time= 25/08/2026 16:43:34
[2026-08-25 16:43:34,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:43:34,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:43:34,415.415 INFO    ] No existing commands found in stream
[2026-08-25 16:43:39,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:43:39,430.430 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 16:43:43,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:43:43,054.054 INFO    ] Checking for system updates...
[2026-08-25 16:43:43,093.093 INFO    ] 200
[2026-08-25 16:43:43,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:43,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:43,150.150 INFO    ] No update needed
[2026-08-25 16:43:43,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 16:43:43,187.187 INFO    ] 200
[2026-08-25 16:43:43,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:43,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:43:43,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:43,286.286 INFO    ] No camera update needed
[2026-08-25 16:43:43,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:43:43,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:43:43,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:43:43,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:43:45,341.341 INFO    ] ================================================
[2026-08-25 16:43:45,356.356 INFO    ] Launching Daemon at Tue Aug 25 16:43:45 IST 2026
[2026-08-25 16:43:45,367.367 INFO    ] ================================================
[2026-08-25 16:43:45,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:43:45
[2026-08-25 16:43:46,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:43:46,794.794 INFO    ] Initializing speech engine...
[2026-08-25 16:43:46,805.805 INFO    ] 2026-08-25 16:43:46
[2026-08-25 16:43:47,051.051 INFO    ] 2026-08-25 16:43:47
[2026-08-25 16:43:47,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:43:47,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:43:47,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:43:47,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:43:47,430.430 INFO    ] time= 25/08/2026 16:43:47
[2026-08-25 16:43:47,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:43:47,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:43:47,610.610 INFO    ] No existing commands found in stream
[2026-08-25 16:43:52,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:43:52,638.638 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 16:43:55,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:43:55,721.721 INFO    ] Checking for system updates...
[2026-08-25 16:43:55,760.760 INFO    ] 200
[2026-08-25 16:43:55,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:55,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:55,819.819 INFO    ] No update needed
[2026-08-25 16:43:55,821.821 INFO    ] Checking for camera pi updates...
[2026-08-25 16:43:55,859.859 INFO    ] 200
[2026-08-25 16:43:55,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:43:55,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:43:55,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:43:55,951.951 INFO    ] No camera update needed
[2026-08-25 16:43:55,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:43:55,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:43:55,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:43:55,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:43:58,007.007 INFO    ] ================================================
[2026-08-25 16:43:58,025.025 INFO    ] Launching Daemon at Tue Aug 25 16:43:58 IST 2026
[2026-08-25 16:43:58,036.036 INFO    ] ================================================
[2026-08-25 16:43:58,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:43:58
[2026-08-25 16:43:59,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:43:59,476.476 INFO    ] Initializing speech engine...
[2026-08-25 16:43:59,485.485 INFO    ] 2026-08-25 16:43:59
[2026-08-25 16:43:59,757.757 INFO    ] 2026-08-25 16:43:59
[2026-08-25 16:43:59,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:43:59,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:44:00,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:44:00,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:44:00,179.179 INFO    ] time= 25/08/2026 16:44:00
[2026-08-25 16:44:00,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:44:00,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:44:00,289.289 INFO    ] No existing commands found in stream
[2026-08-25 16:44:05,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:44:05,307.307 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 16:44:06,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:44:06,306.306 INFO    ] Checking for system updates...
[2026-08-25 16:44:06,345.345 INFO    ] 200
[2026-08-25 16:44:06,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:06,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:44:06,409.409 INFO    ] No update needed
[2026-08-25 16:44:06,411.411 INFO    ] Checking for camera pi updates...
[2026-08-25 16:44:06,448.448 INFO    ] 200
[2026-08-25 16:44:06,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:06,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:44:06,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:44:06,538.538 INFO    ] No camera update needed
[2026-08-25 16:44:06,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:44:06,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:44:06,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:44:06,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:44:08,594.594 INFO    ] ================================================
[2026-08-25 16:44:08,610.610 INFO    ] Launching Daemon at Tue Aug 25 16:44:08 IST 2026
[2026-08-25 16:44:08,621.621 INFO    ] ================================================
[2026-08-25 16:44:09,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:44:09
[2026-08-25 16:44:09,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:44:10,040.040 INFO    ] Initializing speech engine...
[2026-08-25 16:44:10,056.056 INFO    ] 2026-08-25 16:44:10
[2026-08-25 16:44:10,311.311 INFO    ] 2026-08-25 16:44:10
[2026-08-25 16:44:10,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:44:10,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:44:10,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:44:10,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:44:10,788.788 INFO    ] time= 25/08/2026 16:44:10
[2026-08-25 16:44:10,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:44:10,882.882 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:44:11,003.003 INFO    ] No existing commands found in stream
[2026-08-25 16:44:16,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:44:16,030.030 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 16:44:19,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:44:19,244.244 INFO    ] Checking for system updates...
[2026-08-25 16:44:19,280.280 INFO    ] 200
[2026-08-25 16:44:19,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:19,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:44:19,337.337 INFO    ] No update needed
[2026-08-25 16:44:19,339.339 INFO    ] Checking for camera pi updates...
[2026-08-25 16:44:19,376.376 INFO    ] 200
[2026-08-25 16:44:19,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:19,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:44:19,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:44:19,479.479 INFO    ] No camera update needed
[2026-08-25 16:44:19,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:44:19,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:44:19,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:44:19,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:44:21,533.533 INFO    ] ================================================
[2026-08-25 16:44:21,548.548 INFO    ] Launching Daemon at Tue Aug 25 16:44:21 IST 2026
[2026-08-25 16:44:21,559.559 INFO    ] ================================================
[2026-08-25 16:44:22,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:44:22
[2026-08-25 16:44:22,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:44:22,989.989 INFO    ] Initializing speech engine...
[2026-08-25 16:44:23,004.004 INFO    ] 2026-08-25 16:44:22
[2026-08-25 16:44:23,305.305 INFO    ] 2026-08-25 16:44:23
[2026-08-25 16:44:23,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:44:23,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:44:23,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:44:23,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:44:23,785.785 INFO    ] time= 25/08/2026 16:44:23
[2026-08-25 16:44:23,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:44:23,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:44:23,986.986 INFO    ] No existing commands found in stream
[2026-08-25 16:44:29,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:44:29,011.011 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 16:44:32,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:44:32,255.255 INFO    ] Checking for system updates...
[2026-08-25 16:44:32,297.297 INFO    ] 200
[2026-08-25 16:44:32,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:32,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:44:32,366.366 INFO    ] No update needed
[2026-08-25 16:44:32,370.370 INFO    ] Checking for camera pi updates...
[2026-08-25 16:44:32,408.408 INFO    ] 200
[2026-08-25 16:44:32,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:32,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:44:32,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:44:32,519.519 INFO    ] No camera update needed
[2026-08-25 16:44:32,522.522 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:44:32,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:44:32,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:44:32,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:44:34,582.582 INFO    ] ================================================
[2026-08-25 16:44:34,598.598 INFO    ] Launching Daemon at Tue Aug 25 16:44:34 IST 2026
[2026-08-25 16:44:34,609.609 INFO    ] ================================================
[2026-08-25 16:44:35,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:44:35
[2026-08-25 16:44:35,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:44:36,028.028 INFO    ] Initializing speech engine...
[2026-08-25 16:44:36,044.044 INFO    ] 2026-08-25 16:44:36
[2026-08-25 16:44:36,299.299 INFO    ] 2026-08-25 16:44:36
[2026-08-25 16:44:36,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:44:36,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:44:36,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:44:36,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:44:36,780.780 INFO    ] time= 25/08/2026 16:44:36
[2026-08-25 16:44:36,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:44:36,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:44:36,996.996 INFO    ] No existing commands found in stream
[2026-08-25 16:44:42,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:44:42,028.028 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 16:44:44,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:44:44,108.108 INFO    ] Checking for system updates...
[2026-08-25 16:44:44,147.147 INFO    ] 200
[2026-08-25 16:44:44,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:44,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:44:44,210.210 INFO    ] No update needed
[2026-08-25 16:44:44,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 16:44:44,249.249 INFO    ] 200
[2026-08-25 16:44:44,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:44,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:44:44,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:44:44,438.438 INFO    ] No camera update needed
[2026-08-25 16:44:44,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:44:44,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:44:44,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:44:44,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:44:46,492.492 INFO    ] ================================================
[2026-08-25 16:44:46,508.508 INFO    ] Launching Daemon at Tue Aug 25 16:44:46 IST 2026
[2026-08-25 16:44:46,519.519 INFO    ] ================================================
[2026-08-25 16:44:47,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:44:47
[2026-08-25 16:44:47,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:44:47,936.936 INFO    ] Initializing speech engine...
[2026-08-25 16:44:47,949.949 INFO    ] 2026-08-25 16:44:47
[2026-08-25 16:44:48,199.199 INFO    ] 2026-08-25 16:44:48
[2026-08-25 16:44:48,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:44:48,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:44:48,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:44:48,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:44:48,580.580 INFO    ] time= 25/08/2026 16:44:48
[2026-08-25 16:44:48,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:44:48,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:44:48,752.752 INFO    ] No existing commands found in stream
[2026-08-25 16:44:53,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:44:53,790.790 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 16:44:57,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:44:57,503.503 INFO    ] Checking for system updates...
[2026-08-25 16:44:57,544.544 INFO    ] 200
[2026-08-25 16:44:57,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:57,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:44:57,610.610 INFO    ] No update needed
[2026-08-25 16:44:57,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 16:44:57,657.657 INFO    ] 200
[2026-08-25 16:44:57,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:44:57,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:44:57,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:44:57,774.774 INFO    ] No camera update needed
[2026-08-25 16:44:57,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:44:57,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:44:57,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:44:57,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:44:59,833.833 INFO    ] ================================================
[2026-08-25 16:44:59,848.848 INFO    ] Launching Daemon at Tue Aug 25 16:44:59 IST 2026
[2026-08-25 16:44:59,858.858 INFO    ] ================================================
[2026-08-25 16:45:00,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:45:00
[2026-08-25 16:45:01,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:45:01,313.313 INFO    ] Initializing speech engine...
[2026-08-25 16:45:01,321.321 INFO    ] 2026-08-25 16:45:01
[2026-08-25 16:45:01,593.593 INFO    ] 2026-08-25 16:45:01
[2026-08-25 16:45:01,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:45:01,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:45:01,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:45:01,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:45:01,953.953 INFO    ] time= 25/08/2026 16:45:01
[2026-08-25 16:45:01,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:45:01,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:45:02,029.029 INFO    ] No existing commands found in stream
[2026-08-25 16:45:07,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:45:07,042.042 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 16:45:09,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:45:09,485.485 INFO    ] Checking for system updates...
[2026-08-25 16:45:09,524.524 INFO    ] 200
[2026-08-25 16:45:09,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:09,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:09,587.587 INFO    ] No update needed
[2026-08-25 16:45:09,589.589 INFO    ] Checking for camera pi updates...
[2026-08-25 16:45:09,623.623 INFO    ] 200
[2026-08-25 16:45:09,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:09,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:45:09,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:09,728.728 INFO    ] No camera update needed
[2026-08-25 16:45:09,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:45:09,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:45:09,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:45:09,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:45:11,784.784 INFO    ] ================================================
[2026-08-25 16:45:11,800.800 INFO    ] Launching Daemon at Tue Aug 25 16:45:11 IST 2026
[2026-08-25 16:45:11,811.811 INFO    ] ================================================
[2026-08-25 16:45:12,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:45:12
[2026-08-25 16:45:12,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:45:13,255.255 INFO    ] Initializing speech engine...
[2026-08-25 16:45:13,264.264 INFO    ] 2026-08-25 16:45:13
[2026-08-25 16:45:13,527.527 INFO    ] 2026-08-25 16:45:13
[2026-08-25 16:45:13,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:45:13,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:45:13,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:45:13,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:45:13,975.975 INFO    ] time= 25/08/2026 16:45:13
[2026-08-25 16:45:14,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:45:14,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:45:14,210.210 INFO    ] No existing commands found in stream
[2026-08-25 16:45:19,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:45:19,235.235 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 16:45:20,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:45:20,078.078 INFO    ] Checking for system updates...
[2026-08-25 16:45:20,116.116 INFO    ] 200
[2026-08-25 16:45:20,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:20,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:20,174.174 INFO    ] No update needed
[2026-08-25 16:45:20,177.177 INFO    ] Checking for camera pi updates...
[2026-08-25 16:45:20,213.213 INFO    ] 200
[2026-08-25 16:45:20,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:20,260.260 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:45:20,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:20,314.314 INFO    ] No camera update needed
[2026-08-25 16:45:20,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:45:20,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:45:20,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:45:20,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:45:22,375.375 INFO    ] ================================================
[2026-08-25 16:45:22,390.390 INFO    ] Launching Daemon at Tue Aug 25 16:45:22 IST 2026
[2026-08-25 16:45:22,402.402 INFO    ] ================================================
[2026-08-25 16:45:22,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:45:22
[2026-08-25 16:45:23,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:45:23,849.849 INFO    ] Initializing speech engine...
[2026-08-25 16:45:23,874.874 INFO    ] 2026-08-25 16:45:23
[2026-08-25 16:45:24,147.147 INFO    ] 2026-08-25 16:45:24
[2026-08-25 16:45:24,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:45:24,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:45:24,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:45:24,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:45:24,562.562 INFO    ] time= 25/08/2026 16:45:24
[2026-08-25 16:45:24,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:45:24,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:45:24,685.685 INFO    ] No existing commands found in stream
[2026-08-25 16:45:29,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:45:29,713.713 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 16:45:36,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:45:36,410.410 INFO    ] Checking for system updates...
[2026-08-25 16:45:36,448.448 INFO    ] 200
[2026-08-25 16:45:36,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:36,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:36,510.510 INFO    ] No update needed
[2026-08-25 16:45:36,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 16:45:36,546.546 INFO    ] 200
[2026-08-25 16:45:36,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:36,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:45:36,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:36,660.660 INFO    ] No camera update needed
[2026-08-25 16:45:36,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:45:36,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:45:36,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:45:36,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:45:38,716.716 INFO    ] ================================================
[2026-08-25 16:45:38,731.731 INFO    ] Launching Daemon at Tue Aug 25 16:45:38 IST 2026
[2026-08-25 16:45:38,742.742 INFO    ] ================================================
[2026-08-25 16:45:39,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:45:39
[2026-08-25 16:45:39,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:45:40,138.138 INFO    ] Initializing speech engine...
[2026-08-25 16:45:40,153.153 INFO    ] 2026-08-25 16:45:40
[2026-08-25 16:45:40,420.420 INFO    ] 2026-08-25 16:45:40
[2026-08-25 16:45:40,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:45:40,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:45:40,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:45:40,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:45:40,900.900 INFO    ] time= 25/08/2026 16:45:40
[2026-08-25 16:45:40,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:45:40,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:45:41,148.148 INFO    ] No existing commands found in stream
[2026-08-25 16:45:46,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:45:46,166.166 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 16:45:49,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:45:49,595.595 INFO    ] Checking for system updates...
[2026-08-25 16:45:49,630.630 INFO    ] 200
[2026-08-25 16:45:49,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:49,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:49,688.688 INFO    ] No update needed
[2026-08-25 16:45:49,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 16:45:49,723.723 INFO    ] 200
[2026-08-25 16:45:49,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:45:49,765.765 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:45:49,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:45:49,822.822 INFO    ] No camera update needed
[2026-08-25 16:45:49,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:45:49,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:45:49,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:45:49,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:45:51,877.877 INFO    ] ================================================
[2026-08-25 16:45:51,893.893 INFO    ] Launching Daemon at Tue Aug 25 16:45:51 IST 2026
[2026-08-25 16:45:51,905.905 INFO    ] ================================================
[2026-08-25 16:45:52,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:45:52
[2026-08-25 16:45:53,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:45:53,489.489 INFO    ] Initializing speech engine...
[2026-08-25 16:45:53,500.500 INFO    ] 2026-08-25 16:45:53
[2026-08-25 16:45:53,762.762 INFO    ] 2026-08-25 16:45:53
[2026-08-25 16:45:53,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:45:54,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:45:54,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:45:54,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:45:54,319.319 INFO    ] time= 25/08/2026 16:45:54
[2026-08-25 16:45:54,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:45:54,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:45:54,477.477 INFO    ] No existing commands found in stream
[2026-08-25 16:45:59,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:45:59,501.501 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 16:46:02,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:46:02,370.370 INFO    ] Checking for system updates...
[2026-08-25 16:46:02,419.419 INFO    ] 200
[2026-08-25 16:46:02,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:02,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:46:02,499.499 INFO    ] No update needed
[2026-08-25 16:46:02,503.503 INFO    ] Checking for camera pi updates...
[2026-08-25 16:46:02,550.550 INFO    ] 200
[2026-08-25 16:46:02,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:02,601.601 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:46:02,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:46:02,684.684 INFO    ] No camera update needed
[2026-08-25 16:46:02,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:46:02,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:46:02,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:46:02,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:46:04,747.747 INFO    ] ================================================
[2026-08-25 16:46:04,763.763 INFO    ] Launching Daemon at Tue Aug 25 16:46:04 IST 2026
[2026-08-25 16:46:04,773.773 INFO    ] ================================================
[2026-08-25 16:46:05,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:46:05
[2026-08-25 16:46:05,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:46:06,244.244 INFO    ] Initializing speech engine...
[2026-08-25 16:46:06,263.263 INFO    ] 2026-08-25 16:46:06
[2026-08-25 16:46:06,549.549 INFO    ] 2026-08-25 16:46:06
[2026-08-25 16:46:06,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:46:06,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:46:06,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:46:07,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:46:07,046.046 INFO    ] time= 25/08/2026 16:46:07
[2026-08-25 16:46:07,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:46:07,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:46:07,264.264 INFO    ] No existing commands found in stream
[2026-08-25 16:46:12,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:46:12,297.297 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 16:46:14,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:46:14,348.348 INFO    ] Checking for system updates...
[2026-08-25 16:46:14,390.390 INFO    ] 200
[2026-08-25 16:46:14,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:14,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:46:14,449.449 INFO    ] No update needed
[2026-08-25 16:46:14,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 16:46:14,490.490 INFO    ] 200
[2026-08-25 16:46:14,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:14,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:46:14,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:46:14,582.582 INFO    ] No camera update needed
[2026-08-25 16:46:14,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:46:14,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:46:14,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:46:14,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:46:16,642.642 INFO    ] ================================================
[2026-08-25 16:46:16,658.658 INFO    ] Launching Daemon at Tue Aug 25 16:46:16 IST 2026
[2026-08-25 16:46:16,669.669 INFO    ] ================================================
[2026-08-25 16:46:17,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:46:17
[2026-08-25 16:46:17,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:46:18,165.165 INFO    ] Initializing speech engine...
[2026-08-25 16:46:18,175.175 INFO    ] 2026-08-25 16:46:18
[2026-08-25 16:46:18,430.430 INFO    ] 2026-08-25 16:46:18
[2026-08-25 16:46:18,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:46:18,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:46:18,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:46:18,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:46:18,875.875 INFO    ] time= 25/08/2026 16:46:18
[2026-08-25 16:46:18,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:46:18,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:46:19,077.077 INFO    ] No existing commands found in stream
[2026-08-25 16:46:24,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:46:24,092.092 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 16:46:24,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:46:24,964.964 INFO    ] Checking for system updates...
[2026-08-25 16:46:25,000.000 INFO    ] 200
[2026-08-25 16:46:25,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:25,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:46:25,057.057 INFO    ] No update needed
[2026-08-25 16:46:25,059.059 INFO    ] Checking for camera pi updates...
[2026-08-25 16:46:25,092.092 INFO    ] 200
[2026-08-25 16:46:25,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:25,143.143 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:46:25,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:46:25,194.194 INFO    ] No camera update needed
[2026-08-25 16:46:25,196.196 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:46:25,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:46:25,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:46:25,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:46:27,250.250 INFO    ] ================================================
[2026-08-25 16:46:27,265.265 INFO    ] Launching Daemon at Tue Aug 25 16:46:27 IST 2026
[2026-08-25 16:46:27,275.275 INFO    ] ================================================
[2026-08-25 16:46:27,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:46:27
[2026-08-25 16:46:28,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:46:28,727.727 INFO    ] Initializing speech engine...
[2026-08-25 16:46:28,733.733 INFO    ] 2026-08-25 16:46:28
[2026-08-25 16:46:29,033.033 INFO    ] 2026-08-25 16:46:29
[2026-08-25 16:46:29,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:46:29,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:46:29,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:46:29,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:46:29,460.460 INFO    ] time= 25/08/2026 16:46:29
[2026-08-25 16:46:29,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:46:29,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:46:29,630.630 INFO    ] No existing commands found in stream
[2026-08-25 16:46:34,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:46:34,658.658 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 16:46:36,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:46:36,323.323 INFO    ] Checking for system updates...
[2026-08-25 16:46:36,360.360 INFO    ] 200
[2026-08-25 16:46:36,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:36,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:46:36,428.428 INFO    ] No update needed
[2026-08-25 16:46:36,431.431 INFO    ] Checking for camera pi updates...
[2026-08-25 16:46:36,466.466 INFO    ] 200
[2026-08-25 16:46:36,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:36,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:46:36,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:46:36,566.566 INFO    ] No camera update needed
[2026-08-25 16:46:36,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:46:36,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:46:36,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:46:36,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:46:38,625.625 INFO    ] ================================================
[2026-08-25 16:46:38,640.640 INFO    ] Launching Daemon at Tue Aug 25 16:46:38 IST 2026
[2026-08-25 16:46:38,651.651 INFO    ] ================================================
[2026-08-25 16:46:39,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:46:39
[2026-08-25 16:46:39,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:46:40,281.281 INFO    ] Initializing speech engine...
[2026-08-25 16:46:40,289.289 INFO    ] 2026-08-25 16:46:40
[2026-08-25 16:46:40,626.626 INFO    ] 2026-08-25 16:46:40
[2026-08-25 16:46:40,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:46:40,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:46:40,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:46:41,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:46:41,059.059 INFO    ] time= 25/08/2026 16:46:41
[2026-08-25 16:46:41,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:46:41,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:46:41,256.256 INFO    ] No existing commands found in stream
[2026-08-25 16:46:46,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:46:46,271.271 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 16:46:48,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:46:48,637.637 INFO    ] Checking for system updates...
[2026-08-25 16:46:48,673.673 INFO    ] 200
[2026-08-25 16:46:48,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:48,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:46:48,731.731 INFO    ] No update needed
[2026-08-25 16:46:48,733.733 INFO    ] Checking for camera pi updates...
[2026-08-25 16:46:48,781.781 INFO    ] 200
[2026-08-25 16:46:48,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:46:48,829.829 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:46:48,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:46:48,989.989 INFO    ] No camera update needed
[2026-08-25 16:46:48,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:46:48,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:46:48,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:46:49,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:46:51,045.045 INFO    ] ================================================
[2026-08-25 16:46:51,059.059 INFO    ] Launching Daemon at Tue Aug 25 16:46:51 IST 2026
[2026-08-25 16:46:51,071.071 INFO    ] ================================================
[2026-08-25 16:46:51,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:46:51
[2026-08-25 16:46:52,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:46:52,517.517 INFO    ] Initializing speech engine...
[2026-08-25 16:46:52,533.533 INFO    ] 2026-08-25 16:46:52
[2026-08-25 16:46:52,790.790 INFO    ] 2026-08-25 16:46:52
[2026-08-25 16:46:52,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:46:53,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:46:53,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:46:53,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:46:53,239.239 INFO    ] time= 25/08/2026 16:46:53
[2026-08-25 16:46:53,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:46:53,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:46:53,495.495 INFO    ] No existing commands found in stream
[2026-08-25 16:46:58,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:46:58,522.522 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 16:47:01,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:47:01,654.654 INFO    ] Checking for system updates...
[2026-08-25 16:47:01,690.690 INFO    ] 200
[2026-08-25 16:47:01,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:01,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:47:01,792.792 INFO    ] No update needed
[2026-08-25 16:47:01,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 16:47:01,881.881 INFO    ] 200
[2026-08-25 16:47:01,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:01,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:47:02,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:47:02,070.070 INFO    ] No camera update needed
[2026-08-25 16:47:02,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:47:02,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:47:02,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:47:02,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:47:04,147.147 INFO    ] ================================================
[2026-08-25 16:47:04,161.161 INFO    ] Launching Daemon at Tue Aug 25 16:47:04 IST 2026
[2026-08-25 16:47:04,172.172 INFO    ] ================================================
[2026-08-25 16:47:04,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:47:04
[2026-08-25 16:47:05,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:47:05,641.641 INFO    ] Initializing speech engine...
[2026-08-25 16:47:05,649.649 INFO    ] 2026-08-25 16:47:05
[2026-08-25 16:47:05,901.901 INFO    ] 2026-08-25 16:47:05
[2026-08-25 16:47:05,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:47:06,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:47:06,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:47:06,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:47:06,277.277 INFO    ] time= 25/08/2026 16:47:06
[2026-08-25 16:47:06,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:47:06,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:47:06,467.467 INFO    ] No existing commands found in stream
[2026-08-25 16:47:11,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:47:11,493.493 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 16:47:13,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:47:13,608.608 INFO    ] Checking for system updates...
[2026-08-25 16:47:13,643.643 INFO    ] 200
[2026-08-25 16:47:13,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:13,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:47:13,704.704 INFO    ] No update needed
[2026-08-25 16:47:13,706.706 INFO    ] Checking for camera pi updates...
[2026-08-25 16:47:13,740.740 INFO    ] 200
[2026-08-25 16:47:13,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:13,783.783 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:47:13,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:47:13,831.831 INFO    ] No camera update needed
[2026-08-25 16:47:13,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:47:13,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:47:13,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:47:13,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:47:15,889.889 INFO    ] ================================================
[2026-08-25 16:47:15,904.904 INFO    ] Launching Daemon at Tue Aug 25 16:47:15 IST 2026
[2026-08-25 16:47:15,915.915 INFO    ] ================================================
[2026-08-25 16:47:16,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:47:16
[2026-08-25 16:47:17,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:47:17,389.389 INFO    ] Initializing speech engine...
[2026-08-25 16:47:17,399.399 INFO    ] 2026-08-25 16:47:17
[2026-08-25 16:47:17,661.661 INFO    ] 2026-08-25 16:47:17
[2026-08-25 16:47:17,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:47:17,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:47:17,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:47:18,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:47:18,127.127 INFO    ] time= 25/08/2026 16:47:18
[2026-08-25 16:47:18,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:47:18,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:47:18,331.331 INFO    ] No existing commands found in stream
[2026-08-25 16:47:23,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:47:23,359.359 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 16:47:25,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:47:25,923.923 INFO    ] Checking for system updates...
[2026-08-25 16:47:25,963.963 INFO    ] 200
[2026-08-25 16:47:25,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:26,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:47:26,031.031 INFO    ] No update needed
[2026-08-25 16:47:26,033.033 INFO    ] Checking for camera pi updates...
[2026-08-25 16:47:26,071.071 INFO    ] 200
[2026-08-25 16:47:26,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:26,120.120 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:47:26,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:47:26,179.179 INFO    ] No camera update needed
[2026-08-25 16:47:26,182.182 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:47:26,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:47:26,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:47:26,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:47:28,237.237 INFO    ] ================================================
[2026-08-25 16:47:28,252.252 INFO    ] Launching Daemon at Tue Aug 25 16:47:28 IST 2026
[2026-08-25 16:47:28,263.263 INFO    ] ================================================
[2026-08-25 16:47:28,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:47:28
[2026-08-25 16:47:29,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:47:29,716.716 INFO    ] Initializing speech engine...
[2026-08-25 16:47:29,726.726 INFO    ] 2026-08-25 16:47:29
[2026-08-25 16:47:29,971.971 INFO    ] 2026-08-25 16:47:29
[2026-08-25 16:47:30,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:47:30,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:47:30,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:47:30,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:47:30,468.468 INFO    ] time= 25/08/2026 16:47:30
[2026-08-25 16:47:30,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:47:30,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:47:30,671.671 INFO    ] No existing commands found in stream
[2026-08-25 16:47:35,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:47:35,688.688 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 16:47:39,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:47:39,094.094 INFO    ] Checking for system updates...
[2026-08-25 16:47:39,129.129 INFO    ] 200
[2026-08-25 16:47:39,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:39,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:47:39,192.192 INFO    ] No update needed
[2026-08-25 16:47:39,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 16:47:39,231.231 INFO    ] 200
[2026-08-25 16:47:39,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:39,274.274 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:47:39,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:47:39,325.325 INFO    ] No camera update needed
[2026-08-25 16:47:39,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:47:39,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:47:39,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:47:39,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:47:41,383.383 INFO    ] ================================================
[2026-08-25 16:47:41,398.398 INFO    ] Launching Daemon at Tue Aug 25 16:47:41 IST 2026
[2026-08-25 16:47:41,409.409 INFO    ] ================================================
[2026-08-25 16:47:41,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:47:41
[2026-08-25 16:47:42,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:47:42,829.829 INFO    ] Initializing speech engine...
[2026-08-25 16:47:42,833.833 INFO    ] 2026-08-25 16:47:42
[2026-08-25 16:47:43,079.079 INFO    ] 2026-08-25 16:47:43
[2026-08-25 16:47:43,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:47:43,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:47:43,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:47:43,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:47:43,554.554 INFO    ] time= 25/08/2026 16:47:43
[2026-08-25 16:47:43,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:47:43,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:47:43,757.757 INFO    ] No existing commands found in stream
[2026-08-25 16:47:48,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:47:48,790.790 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 16:47:49,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:47:49,335.335 INFO    ] Checking for system updates...
[2026-08-25 16:47:49,371.371 INFO    ] 200
[2026-08-25 16:47:49,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:49,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:47:49,437.437 INFO    ] No update needed
[2026-08-25 16:47:49,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 16:47:49,473.473 INFO    ] 200
[2026-08-25 16:47:49,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:47:49,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:47:49,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:47:49,577.577 INFO    ] No camera update needed
[2026-08-25 16:47:49,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:47:49,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:47:49,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:47:49,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:47:51,639.639 INFO    ] ================================================
[2026-08-25 16:47:51,655.655 INFO    ] Launching Daemon at Tue Aug 25 16:47:51 IST 2026
[2026-08-25 16:47:51,667.667 INFO    ] ================================================
[2026-08-25 16:47:52,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:47:52
[2026-08-25 16:47:52,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:47:53,126.126 INFO    ] Initializing speech engine...
[2026-08-25 16:47:53,137.137 INFO    ] 2026-08-25 16:47:53
[2026-08-25 16:47:53,397.397 INFO    ] 2026-08-25 16:47:53
[2026-08-25 16:47:53,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:47:53,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:47:53,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:47:53,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:47:53,853.853 INFO    ] time= 25/08/2026 16:47:53
[2026-08-25 16:47:53,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:47:53,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:47:54,093.093 INFO    ] No existing commands found in stream
[2026-08-25 16:47:59,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:47:59,109.109 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 16:48:01,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:48:01,486.486 INFO    ] Checking for system updates...
[2026-08-25 16:48:01,521.521 INFO    ] 200
[2026-08-25 16:48:01,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:01,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:48:01,580.580 INFO    ] No update needed
[2026-08-25 16:48:01,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 16:48:01,617.617 INFO    ] 200
[2026-08-25 16:48:01,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:01,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:48:01,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:48:01,766.766 INFO    ] No camera update needed
[2026-08-25 16:48:01,770.770 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:48:01,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:48:01,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:48:01,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:48:03,846.846 INFO    ] ================================================
[2026-08-25 16:48:03,862.862 INFO    ] Launching Daemon at Tue Aug 25 16:48:03 IST 2026
[2026-08-25 16:48:03,872.872 INFO    ] ================================================
[2026-08-25 16:48:04,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:48:04
[2026-08-25 16:48:05,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:48:05,277.277 INFO    ] Initializing speech engine...
[2026-08-25 16:48:05,286.286 INFO    ] 2026-08-25 16:48:05
[2026-08-25 16:48:05,573.573 INFO    ] 2026-08-25 16:48:05
[2026-08-25 16:48:05,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:48:05,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:48:05,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:48:06,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:48:06,087.087 INFO    ] time= 25/08/2026 16:48:06
[2026-08-25 16:48:06,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:48:06,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:48:06,322.322 INFO    ] No existing commands found in stream
[2026-08-25 16:48:11,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:48:11,342.342 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 16:48:14,963.963 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:48:14,966.966 INFO    ] Checking for system updates...
[2026-08-25 16:48:15,001.001 INFO    ] 200
[2026-08-25 16:48:15,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:15,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:48:15,061.061 INFO    ] No update needed
[2026-08-25 16:48:15,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 16:48:15,097.097 INFO    ] 200
[2026-08-25 16:48:15,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:15,143.143 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:48:15,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:48:15,220.220 INFO    ] No camera update needed
[2026-08-25 16:48:15,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:48:15,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:48:15,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:48:15,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:48:17,275.275 INFO    ] ================================================
[2026-08-25 16:48:17,290.290 INFO    ] Launching Daemon at Tue Aug 25 16:48:17 IST 2026
[2026-08-25 16:48:17,302.302 INFO    ] ================================================
[2026-08-25 16:48:17,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:48:17
[2026-08-25 16:48:18,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:48:18,777.777 INFO    ] Initializing speech engine...
[2026-08-25 16:48:18,787.787 INFO    ] 2026-08-25 16:48:18
[2026-08-25 16:48:19,050.050 INFO    ] 2026-08-25 16:48:19
[2026-08-25 16:48:19,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:48:19,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:48:19,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:48:19,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:48:19,513.513 INFO    ] time= 25/08/2026 16:48:19
[2026-08-25 16:48:19,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:48:19,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:48:19,744.744 INFO    ] No existing commands found in stream
[2026-08-25 16:48:24,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:48:24,768.768 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 16:48:27,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:48:27,993.993 INFO    ] Checking for system updates...
[2026-08-25 16:48:28,033.033 INFO    ] 200
[2026-08-25 16:48:28,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:28,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:48:28,092.092 INFO    ] No update needed
[2026-08-25 16:48:28,095.095 INFO    ] Checking for camera pi updates...
[2026-08-25 16:48:28,129.129 INFO    ] 200
[2026-08-25 16:48:28,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:28,176.176 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:48:28,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:48:28,225.225 INFO    ] No camera update needed
[2026-08-25 16:48:28,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:48:28,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:48:28,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:48:28,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:48:30,280.280 INFO    ] ================================================
[2026-08-25 16:48:30,296.296 INFO    ] Launching Daemon at Tue Aug 25 16:48:30 IST 2026
[2026-08-25 16:48:30,307.307 INFO    ] ================================================
[2026-08-25 16:48:30,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:48:30
[2026-08-25 16:48:31,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:48:31,789.789 INFO    ] Initializing speech engine...
[2026-08-25 16:48:31,799.799 INFO    ] 2026-08-25 16:48:31
[2026-08-25 16:48:32,089.089 INFO    ] 2026-08-25 16:48:32
[2026-08-25 16:48:32,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:48:32,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:48:32,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:48:32,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:48:32,637.637 INFO    ] time= 25/08/2026 16:48:32
[2026-08-25 16:48:32,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:48:32,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:48:32,779.779 INFO    ] No existing commands found in stream
[2026-08-25 16:48:37,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:48:37,815.815 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 16:48:41,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:48:41,749.749 INFO    ] Checking for system updates...
[2026-08-25 16:48:41,785.785 INFO    ] 200
[2026-08-25 16:48:41,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:41,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:48:41,843.843 INFO    ] No update needed
[2026-08-25 16:48:41,845.845 INFO    ] Checking for camera pi updates...
[2026-08-25 16:48:41,879.879 INFO    ] 200
[2026-08-25 16:48:41,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:41,928.928 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:48:41,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:48:41,982.982 INFO    ] No camera update needed
[2026-08-25 16:48:41,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:48:41,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:48:41,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:48:41,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:48:44,037.037 INFO    ] ================================================
[2026-08-25 16:48:44,052.052 INFO    ] Launching Daemon at Tue Aug 25 16:48:44 IST 2026
[2026-08-25 16:48:44,064.064 INFO    ] ================================================
[2026-08-25 16:48:44,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:48:44
[2026-08-25 16:48:45,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:48:45,470.470 INFO    ] Initializing speech engine...
[2026-08-25 16:48:45,493.493 INFO    ] 2026-08-25 16:48:45
[2026-08-25 16:48:45,745.745 INFO    ] 2026-08-25 16:48:45
[2026-08-25 16:48:45,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:48:45,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:48:45,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:48:46,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:48:46,202.202 INFO    ] time= 25/08/2026 16:48:46
[2026-08-25 16:48:46,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:48:46,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:48:46,433.433 INFO    ] No existing commands found in stream
[2026-08-25 16:48:51,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:48:51,463.463 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 16:48:55,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:48:55,678.678 INFO    ] Checking for system updates...
[2026-08-25 16:48:55,717.717 INFO    ] 200
[2026-08-25 16:48:55,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:55,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:48:55,775.775 INFO    ] No update needed
[2026-08-25 16:48:55,777.777 INFO    ] Checking for camera pi updates...
[2026-08-25 16:48:55,811.811 INFO    ] 200
[2026-08-25 16:48:55,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:48:55,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:48:55,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:48:56,001.001 INFO    ] No camera update needed
[2026-08-25 16:48:56,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:48:56,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:48:56,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:48:56,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:48:58,060.060 INFO    ] ================================================
[2026-08-25 16:48:58,075.075 INFO    ] Launching Daemon at Tue Aug 25 16:48:58 IST 2026
[2026-08-25 16:48:58,087.087 INFO    ] ================================================
[2026-08-25 16:48:58,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:48:58
[2026-08-25 16:48:59,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:48:59,525.525 INFO    ] Initializing speech engine...
[2026-08-25 16:48:59,545.545 INFO    ] 2026-08-25 16:48:59
[2026-08-25 16:48:59,792.792 INFO    ] 2026-08-25 16:48:59
[2026-08-25 16:48:59,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:49:00,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:49:00,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:49:00,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:49:00,285.285 INFO    ] time= 25/08/2026 16:49:00
[2026-08-25 16:49:00,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:49:00,353.353 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:49:00,477.477 INFO    ] No existing commands found in stream
[2026-08-25 16:49:05,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:49:05,507.507 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 16:49:06,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:49:06,196.196 INFO    ] Checking for system updates...
[2026-08-25 16:49:06,235.235 INFO    ] 200
[2026-08-25 16:49:06,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:06,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:06,300.300 INFO    ] No update needed
[2026-08-25 16:49:06,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 16:49:06,339.339 INFO    ] 200
[2026-08-25 16:49:06,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:06,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:49:06,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:06,436.436 INFO    ] No camera update needed
[2026-08-25 16:49:06,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:49:06,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:49:06,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:49:06,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:49:08,491.491 INFO    ] ================================================
[2026-08-25 16:49:08,507.507 INFO    ] Launching Daemon at Tue Aug 25 16:49:08 IST 2026
[2026-08-25 16:49:08,517.517 INFO    ] ================================================
[2026-08-25 16:49:09,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:49:09
[2026-08-25 16:49:09,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:49:09,972.972 INFO    ] Initializing speech engine...
[2026-08-25 16:49:09,982.982 INFO    ] 2026-08-25 16:49:09
[2026-08-25 16:49:10,228.228 INFO    ] 2026-08-25 16:49:10
[2026-08-25 16:49:10,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:49:10,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:49:10,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:49:10,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:49:10,601.601 INFO    ] time= 25/08/2026 16:49:10
[2026-08-25 16:49:10,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:49:10,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:49:10,773.773 INFO    ] No existing commands found in stream
[2026-08-25 16:49:15,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:49:15,811.811 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 16:49:18,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:49:18,881.881 INFO    ] Checking for system updates...
[2026-08-25 16:49:18,917.917 INFO    ] 200
[2026-08-25 16:49:18,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:18,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:49:18,976.976 INFO    ] No update needed
[2026-08-25 16:49:18,978.978 INFO    ] Checking for camera pi updates...
[2026-08-25 16:49:19,016.016 INFO    ] 200
[2026-08-25 16:49:19,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:19,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:49:19,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:49:19,115.115 INFO    ] No camera update needed
[2026-08-25 16:49:19,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:49:19,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:49:19,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:49:19,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:49:21,171.171 INFO    ] ================================================
[2026-08-25 16:49:21,190.190 INFO    ] Launching Daemon at Tue Aug 25 16:49:21 IST 2026
[2026-08-25 16:49:21,202.202 INFO    ] ================================================
[2026-08-25 16:49:21,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:49:21
[2026-08-25 16:49:22,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:49:22,678.678 INFO    ] Initializing speech engine...
[2026-08-25 16:49:22,688.688 INFO    ] 2026-08-25 16:49:22
[2026-08-25 16:49:22,958.958 INFO    ] 2026-08-25 16:49:22
[2026-08-25 16:49:23,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:49:23,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:49:23,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:49:23,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:49:23,429.429 INFO    ] time= 25/08/2026 16:49:23
[2026-08-25 16:49:23,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:49:23,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:49:23,668.668 INFO    ] No existing commands found in stream
[2026-08-25 16:49:28,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:49:28,691.691 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 16:49:29,990.990 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:49:29,993.993 INFO    ] Checking for system updates...
[2026-08-25 16:49:30,034.034 INFO    ] 200
[2026-08-25 16:49:30,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:30,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:30,092.092 INFO    ] No update needed
[2026-08-25 16:49:30,094.094 INFO    ] Checking for camera pi updates...
[2026-08-25 16:49:30,128.128 INFO    ] 200
[2026-08-25 16:49:30,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:30,174.174 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:49:30,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:30,226.226 INFO    ] No camera update needed
[2026-08-25 16:49:30,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:49:30,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:49:30,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:49:30,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:49:32,282.282 INFO    ] ================================================
[2026-08-25 16:49:32,302.302 INFO    ] Launching Daemon at Tue Aug 25 16:49:32 IST 2026
[2026-08-25 16:49:32,317.317 INFO    ] ================================================
[2026-08-25 16:49:32,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:49:32
[2026-08-25 16:49:33,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:49:33,846.846 INFO    ] Initializing speech engine...
[2026-08-25 16:49:33,861.861 INFO    ] 2026-08-25 16:49:33
[2026-08-25 16:49:34,136.136 INFO    ] 2026-08-25 16:49:34
[2026-08-25 16:49:34,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:49:34,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:49:34,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:49:34,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:49:34,553.553 INFO    ] time= 25/08/2026 16:49:34
[2026-08-25 16:49:34,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:49:34,569.569 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:49:34,680.680 INFO    ] No existing commands found in stream
[2026-08-25 16:49:39,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:49:39,713.713 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 16:49:43,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:49:43,388.388 INFO    ] Checking for system updates...
[2026-08-25 16:49:43,427.427 INFO    ] 200
[2026-08-25 16:49:43,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:43,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:43,490.490 INFO    ] No update needed
[2026-08-25 16:49:43,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 16:49:43,529.529 INFO    ] 200
[2026-08-25 16:49:43,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:43,572.572 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:49:43,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:43,644.644 INFO    ] No camera update needed
[2026-08-25 16:49:43,646.646 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:49:43,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:49:43,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:49:43,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:49:45,699.699 INFO    ] ================================================
[2026-08-25 16:49:45,714.714 INFO    ] Launching Daemon at Tue Aug 25 16:49:45 IST 2026
[2026-08-25 16:49:45,725.725 INFO    ] ================================================
[2026-08-25 16:49:46,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:49:46
[2026-08-25 16:49:46,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:49:47,149.149 INFO    ] Initializing speech engine...
[2026-08-25 16:49:47,159.159 INFO    ] 2026-08-25 16:49:47
[2026-08-25 16:49:47,417.417 INFO    ] 2026-08-25 16:49:47
[2026-08-25 16:49:47,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:49:47,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:49:47,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:49:47,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:49:47,894.894 INFO    ] time= 25/08/2026 16:49:47
[2026-08-25 16:49:47,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:49:47,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:49:48,099.099 INFO    ] No existing commands found in stream
[2026-08-25 16:49:53,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:49:53,126.126 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 16:49:54,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:49:54,478.478 INFO    ] Checking for system updates...
[2026-08-25 16:49:54,514.514 INFO    ] 200
[2026-08-25 16:49:54,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:54,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:54,574.574 INFO    ] No update needed
[2026-08-25 16:49:54,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 16:49:54,623.623 INFO    ] 200
[2026-08-25 16:49:54,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:49:54,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:49:54,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:49:54,726.726 INFO    ] No camera update needed
[2026-08-25 16:49:54,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:49:54,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:49:54,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:49:54,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:49:56,786.786 INFO    ] ================================================
[2026-08-25 16:49:56,801.801 INFO    ] Launching Daemon at Tue Aug 25 16:49:56 IST 2026
[2026-08-25 16:49:56,812.812 INFO    ] ================================================
[2026-08-25 16:49:57,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:49:57
[2026-08-25 16:49:57,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:49:58,262.262 INFO    ] Initializing speech engine...
[2026-08-25 16:49:58,272.272 INFO    ] 2026-08-25 16:49:58
[2026-08-25 16:49:58,532.532 INFO    ] 2026-08-25 16:49:58
[2026-08-25 16:49:58,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:49:58,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:49:58,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:49:58,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:49:59,020.020 INFO    ] time= 25/08/2026 16:49:58
[2026-08-25 16:49:59,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:49:59,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:49:59,227.227 INFO    ] No existing commands found in stream
[2026-08-25 16:50:04,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:50:04,245.245 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 16:50:08,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:50:08,051.051 INFO    ] Checking for system updates...
[2026-08-25 16:50:08,087.087 INFO    ] 200
[2026-08-25 16:50:08,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:08,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:50:08,151.151 INFO    ] No update needed
[2026-08-25 16:50:08,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 16:50:08,189.189 INFO    ] 200
[2026-08-25 16:50:08,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:08,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:50:08,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:50:08,288.288 INFO    ] No camera update needed
[2026-08-25 16:50:08,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:50:08,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:50:08,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:50:08,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:50:10,345.345 INFO    ] ================================================
[2026-08-25 16:50:10,361.361 INFO    ] Launching Daemon at Tue Aug 25 16:50:10 IST 2026
[2026-08-25 16:50:10,372.372 INFO    ] ================================================
[2026-08-25 16:50:10,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:50:10
[2026-08-25 16:50:11,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:50:11,832.832 INFO    ] Initializing speech engine...
[2026-08-25 16:50:11,839.839 INFO    ] 2026-08-25 16:50:11
[2026-08-25 16:50:12,100.100 INFO    ] 2026-08-25 16:50:12
[2026-08-25 16:50:12,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:50:12,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:50:12,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:50:12,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:50:12,620.620 INFO    ] time= 25/08/2026 16:50:12
[2026-08-25 16:50:12,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:50:12,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:50:12,795.795 INFO    ] No existing commands found in stream
[2026-08-25 16:50:17,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:50:17,812.812 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 16:50:21,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:50:21,252.252 INFO    ] Checking for system updates...
[2026-08-25 16:50:21,292.292 INFO    ] 200
[2026-08-25 16:50:21,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:21,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:50:21,356.356 INFO    ] No update needed
[2026-08-25 16:50:21,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 16:50:21,395.395 INFO    ] 200
[2026-08-25 16:50:21,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:21,437.437 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:50:21,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:50:21,489.489 INFO    ] No camera update needed
[2026-08-25 16:50:21,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:50:21,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:50:21,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:50:21,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:50:23,545.545 INFO    ] ================================================
[2026-08-25 16:50:23,561.561 INFO    ] Launching Daemon at Tue Aug 25 16:50:23 IST 2026
[2026-08-25 16:50:23,572.572 INFO    ] ================================================
[2026-08-25 16:50:24,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:50:24
[2026-08-25 16:50:24,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:50:24,958.958 INFO    ] Initializing speech engine...
[2026-08-25 16:50:24,966.966 INFO    ] 2026-08-25 16:50:24
[2026-08-25 16:50:25,236.236 INFO    ] 2026-08-25 16:50:25
[2026-08-25 16:50:25,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:50:25,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:50:25,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:50:25,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:50:25,704.704 INFO    ] time= 25/08/2026 16:50:25
[2026-08-25 16:50:25,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:50:25,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:50:25,922.922 INFO    ] No existing commands found in stream
[2026-08-25 16:50:30,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:50:30,949.949 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 16:50:32,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:50:32,345.345 INFO    ] Checking for system updates...
[2026-08-25 16:50:32,388.388 INFO    ] 200
[2026-08-25 16:50:32,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:32,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:50:32,453.453 INFO    ] No update needed
[2026-08-25 16:50:32,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 16:50:32,503.503 INFO    ] 200
[2026-08-25 16:50:32,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:32,558.558 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:50:32,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:50:32,632.632 INFO    ] No camera update needed
[2026-08-25 16:50:32,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:50:32,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:50:32,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:50:32,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:50:34,689.689 INFO    ] ================================================
[2026-08-25 16:50:34,705.705 INFO    ] Launching Daemon at Tue Aug 25 16:50:34 IST 2026
[2026-08-25 16:50:34,716.716 INFO    ] ================================================
[2026-08-25 16:50:35,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:50:35
[2026-08-25 16:50:36,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:50:36,312.312 INFO    ] Initializing speech engine...
[2026-08-25 16:50:36,319.319 INFO    ] 2026-08-25 16:50:36
[2026-08-25 16:50:36,579.579 INFO    ] 2026-08-25 16:50:36
[2026-08-25 16:50:36,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:50:37,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:50:37,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:50:38,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:50:38,008.008 INFO    ] time= 25/08/2026 16:50:38
[2026-08-25 16:50:38,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:50:38,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:50:38,088.088 INFO    ] No existing commands found in stream
[2026-08-25 16:50:43,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:50:43,100.100 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 16:50:46,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:50:46,255.255 INFO    ] Checking for system updates...
[2026-08-25 16:50:46,291.291 INFO    ] 200
[2026-08-25 16:50:46,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:46,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:50:46,358.358 INFO    ] No update needed
[2026-08-25 16:50:46,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 16:50:46,400.400 INFO    ] 200
[2026-08-25 16:50:46,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:50:46,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:50:46,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:50:46,500.500 INFO    ] No camera update needed
[2026-08-25 16:50:46,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:50:46,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:50:46,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:50:46,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:50:48,557.557 INFO    ] ================================================
[2026-08-25 16:50:48,572.572 INFO    ] Launching Daemon at Tue Aug 25 16:50:48 IST 2026
[2026-08-25 16:50:48,584.584 INFO    ] ================================================
[2026-08-25 16:50:49,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:50:49
[2026-08-25 16:50:49,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:50:50,071.071 INFO    ] Initializing speech engine...
[2026-08-25 16:50:50,083.083 INFO    ] 2026-08-25 16:50:50
[2026-08-25 16:50:50,376.376 INFO    ] 2026-08-25 16:50:50
[2026-08-25 16:50:50,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:50:50,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:50:50,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:50:50,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:50:50,918.918 INFO    ] time= 25/08/2026 16:50:50
[2026-08-25 16:50:50,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:50:50,947.947 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:50:51,077.077 INFO    ] No existing commands found in stream
[2026-08-25 16:50:56,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:50:56,096.096 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 16:51:02,688.688 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:51:02,692.692 INFO    ] Checking for system updates...
[2026-08-25 16:51:02,731.731 INFO    ] 200
[2026-08-25 16:51:02,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:02,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:02,804.804 INFO    ] No update needed
[2026-08-25 16:51:02,807.807 INFO    ] Checking for camera pi updates...
[2026-08-25 16:51:02,845.845 INFO    ] 200
[2026-08-25 16:51:02,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:02,898.898 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:51:03,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:03,059.059 INFO    ] No camera update needed
[2026-08-25 16:51:03,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:51:03,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:51:03,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:51:03,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:51:05,118.118 INFO    ] ================================================
[2026-08-25 16:51:05,133.133 INFO    ] Launching Daemon at Tue Aug 25 16:51:05 IST 2026
[2026-08-25 16:51:05,144.144 INFO    ] ================================================
[2026-08-25 16:51:05,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:51:05
[2026-08-25 16:51:06,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:51:06,771.771 INFO    ] Initializing speech engine...
[2026-08-25 16:51:06,779.779 INFO    ] 2026-08-25 16:51:06
[2026-08-25 16:51:07,078.078 INFO    ] 2026-08-25 16:51:07
[2026-08-25 16:51:07,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:51:07,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:51:07,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:51:07,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:51:07,507.507 INFO    ] time= 25/08/2026 16:51:07
[2026-08-25 16:51:07,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:51:07,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:51:07,720.720 INFO    ] No existing commands found in stream
[2026-08-25 16:51:12,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:51:12,750.750 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 16:51:15,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:51:15,767.767 INFO    ] Checking for system updates...
[2026-08-25 16:51:15,802.802 INFO    ] 200
[2026-08-25 16:51:15,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:15,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:51:15,865.865 INFO    ] No update needed
[2026-08-25 16:51:15,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 16:51:15,905.905 INFO    ] 200
[2026-08-25 16:51:15,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:15,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:51:15,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:51:15,998.998 INFO    ] No camera update needed
[2026-08-25 16:51:16,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:51:16,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:51:16,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:51:16,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:51:18,057.057 INFO    ] ================================================
[2026-08-25 16:51:18,077.077 INFO    ] Launching Daemon at Tue Aug 25 16:51:18 IST 2026
[2026-08-25 16:51:18,088.088 INFO    ] ================================================
[2026-08-25 16:51:18,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:51:18
[2026-08-25 16:51:19,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:51:19,773.773 INFO    ] Initializing speech engine...
[2026-08-25 16:51:19,784.784 INFO    ] 2026-08-25 16:51:19
[2026-08-25 16:51:20,059.059 INFO    ] 2026-08-25 16:51:20
[2026-08-25 16:51:20,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:51:20,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:51:20,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:51:20,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:51:20,530.530 INFO    ] time= 25/08/2026 16:51:20
[2026-08-25 16:51:20,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:51:20,621.621 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:51:20,765.765 INFO    ] No existing commands found in stream
[2026-08-25 16:51:25,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:51:25,783.783 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 16:51:26,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:51:26,461.461 INFO    ] Checking for system updates...
[2026-08-25 16:51:26,497.497 INFO    ] 200
[2026-08-25 16:51:26,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:26,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:26,555.555 INFO    ] No update needed
[2026-08-25 16:51:26,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 16:51:26,595.595 INFO    ] 200
[2026-08-25 16:51:26,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:26,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:51:26,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:26,699.699 INFO    ] No camera update needed
[2026-08-25 16:51:26,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:51:26,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:51:26,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:51:26,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:51:28,755.755 INFO    ] ================================================
[2026-08-25 16:51:28,773.773 INFO    ] Launching Daemon at Tue Aug 25 16:51:28 IST 2026
[2026-08-25 16:51:28,786.786 INFO    ] ================================================
[2026-08-25 16:51:29,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:51:29
[2026-08-25 16:51:29,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:51:30,270.270 INFO    ] Initializing speech engine...
[2026-08-25 16:51:30,280.280 INFO    ] 2026-08-25 16:51:30
[2026-08-25 16:51:30,542.542 INFO    ] 2026-08-25 16:51:30
[2026-08-25 16:51:30,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:51:30,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:51:30,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:51:30,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:51:31,026.026 INFO    ] time= 25/08/2026 16:51:30
[2026-08-25 16:51:31,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:51:31,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:51:31,216.216 INFO    ] No existing commands found in stream
[2026-08-25 16:51:36,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:51:36,253.253 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 16:51:40,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:51:40,524.524 INFO    ] Checking for system updates...
[2026-08-25 16:51:40,562.562 INFO    ] 200
[2026-08-25 16:51:40,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:40,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:40,619.619 INFO    ] No update needed
[2026-08-25 16:51:40,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 16:51:40,660.660 INFO    ] 200
[2026-08-25 16:51:40,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:40,704.704 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:51:40,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:40,774.774 INFO    ] No camera update needed
[2026-08-25 16:51:40,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:51:40,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:51:40,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:51:40,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:51:42,835.835 INFO    ] ================================================
[2026-08-25 16:51:42,850.850 INFO    ] Launching Daemon at Tue Aug 25 16:51:42 IST 2026
[2026-08-25 16:51:42,862.862 INFO    ] ================================================
[2026-08-25 16:51:43,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:51:43
[2026-08-25 16:51:44,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:51:44,485.485 INFO    ] Initializing speech engine...
[2026-08-25 16:51:44,499.499 INFO    ] 2026-08-25 16:51:44
[2026-08-25 16:51:44,810.810 INFO    ] 2026-08-25 16:51:44
[2026-08-25 16:51:44,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:51:45,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:51:45,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:51:45,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:51:45,337.337 INFO    ] time= 25/08/2026 16:51:45
[2026-08-25 16:51:45,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:51:45,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:51:45,507.507 INFO    ] No existing commands found in stream
[2026-08-25 16:51:50,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:51:50,542.542 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 16:51:54,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:51:54,683.683 INFO    ] Checking for system updates...
[2026-08-25 16:51:54,719.719 INFO    ] 200
[2026-08-25 16:51:54,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:54,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:54,776.776 INFO    ] No update needed
[2026-08-25 16:51:54,779.779 INFO    ] Checking for camera pi updates...
[2026-08-25 16:51:54,817.817 INFO    ] 200
[2026-08-25 16:51:54,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:51:54,865.865 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:51:54,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:51:54,921.921 INFO    ] No camera update needed
[2026-08-25 16:51:54,923.923 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:51:54,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:51:54,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:51:54,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:51:56,976.976 INFO    ] ================================================
[2026-08-25 16:51:56,992.992 INFO    ] Launching Daemon at Tue Aug 25 16:51:56 IST 2026
[2026-08-25 16:51:57,003.003 INFO    ] ================================================
[2026-08-25 16:51:57,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:51:57
[2026-08-25 16:51:58,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:51:58,421.421 INFO    ] Initializing speech engine...
[2026-08-25 16:51:58,431.431 INFO    ] 2026-08-25 16:51:58
[2026-08-25 16:51:58,677.677 INFO    ] 2026-08-25 16:51:58
[2026-08-25 16:51:58,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:51:58,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:51:58,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:51:59,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:51:59,046.046 INFO    ] time= 25/08/2026 16:51:59
[2026-08-25 16:51:59,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:51:59,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:51:59,237.237 INFO    ] No existing commands found in stream
[2026-08-25 16:52:04,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:52:04,251.251 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 16:52:08,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:52:08,720.720 INFO    ] Checking for system updates...
[2026-08-25 16:52:08,756.756 INFO    ] 200
[2026-08-25 16:52:08,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:08,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:08,826.826 INFO    ] No update needed
[2026-08-25 16:52:08,828.828 INFO    ] Checking for camera pi updates...
[2026-08-25 16:52:08,863.863 INFO    ] 200
[2026-08-25 16:52:08,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:08,908.908 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:52:08,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:08,958.958 INFO    ] No camera update needed
[2026-08-25 16:52:08,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:52:08,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:52:08,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:52:08,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:52:11,016.016 INFO    ] ================================================
[2026-08-25 16:52:11,031.031 INFO    ] Launching Daemon at Tue Aug 25 16:52:11 IST 2026
[2026-08-25 16:52:11,042.042 INFO    ] ================================================
[2026-08-25 16:52:11,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:52:11
[2026-08-25 16:52:12,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:52:12,490.490 INFO    ] Initializing speech engine...
[2026-08-25 16:52:12,505.505 INFO    ] 2026-08-25 16:52:12
[2026-08-25 16:52:12,792.792 INFO    ] 2026-08-25 16:52:12
[2026-08-25 16:52:12,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:52:13,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:52:13,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:52:13,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:52:13,309.309 INFO    ] time= 25/08/2026 16:52:13
[2026-08-25 16:52:13,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:52:13,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:52:13,501.501 INFO    ] No existing commands found in stream
[2026-08-25 16:52:18,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:52:18,518.518 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 16:52:19,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:52:19,576.576 INFO    ] Checking for system updates...
[2026-08-25 16:52:19,616.616 INFO    ] 200
[2026-08-25 16:52:19,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:19,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:19,678.678 INFO    ] No update needed
[2026-08-25 16:52:19,680.680 INFO    ] Checking for camera pi updates...
[2026-08-25 16:52:19,715.715 INFO    ] 200
[2026-08-25 16:52:19,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:19,764.764 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:52:19,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:19,817.817 INFO    ] No camera update needed
[2026-08-25 16:52:19,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:52:19,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:52:19,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:52:19,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:52:21,874.874 INFO    ] ================================================
[2026-08-25 16:52:21,890.890 INFO    ] Launching Daemon at Tue Aug 25 16:52:21 IST 2026
[2026-08-25 16:52:21,901.901 INFO    ] ================================================
[2026-08-25 16:52:22,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:52:22
[2026-08-25 16:52:23,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:52:23,329.329 INFO    ] Initializing speech engine...
[2026-08-25 16:52:23,335.335 INFO    ] 2026-08-25 16:52:23
[2026-08-25 16:52:23,579.579 INFO    ] 2026-08-25 16:52:23
[2026-08-25 16:52:23,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:52:23,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:52:23,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:52:24,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:52:24,070.070 INFO    ] time= 25/08/2026 16:52:24
[2026-08-25 16:52:24,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:52:24,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:52:24,290.290 INFO    ] No existing commands found in stream
[2026-08-25 16:52:29,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:52:29,306.306 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 16:52:33,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:52:33,396.396 INFO    ] Checking for system updates...
[2026-08-25 16:52:33,435.435 INFO    ] 200
[2026-08-25 16:52:33,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:33,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:33,493.493 INFO    ] No update needed
[2026-08-25 16:52:33,496.496 INFO    ] Checking for camera pi updates...
[2026-08-25 16:52:33,529.529 INFO    ] 200
[2026-08-25 16:52:33,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:33,572.572 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:52:33,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:33,629.629 INFO    ] No camera update needed
[2026-08-25 16:52:33,631.631 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:52:33,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:52:33,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:52:33,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:52:35,684.684 INFO    ] ================================================
[2026-08-25 16:52:35,699.699 INFO    ] Launching Daemon at Tue Aug 25 16:52:35 IST 2026
[2026-08-25 16:52:35,710.710 INFO    ] ================================================
[2026-08-25 16:52:36,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:52:36
[2026-08-25 16:52:36,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:52:37,130.130 INFO    ] Initializing speech engine...
[2026-08-25 16:52:37,138.138 INFO    ] 2026-08-25 16:52:37
[2026-08-25 16:52:37,387.387 INFO    ] 2026-08-25 16:52:37
[2026-08-25 16:52:37,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:52:37,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:52:37,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:52:37,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:52:37,896.896 INFO    ] time= 25/08/2026 16:52:37
[2026-08-25 16:52:37,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:52:37,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:52:38,109.109 INFO    ] No existing commands found in stream
[2026-08-25 16:52:43,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:52:43,137.137 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 16:52:45,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:52:45,503.503 INFO    ] Checking for system updates...
[2026-08-25 16:52:45,542.542 INFO    ] 200
[2026-08-25 16:52:45,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:45,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:45,600.600 INFO    ] No update needed
[2026-08-25 16:52:45,602.602 INFO    ] Checking for camera pi updates...
[2026-08-25 16:52:45,636.636 INFO    ] 200
[2026-08-25 16:52:45,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:45,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:52:45,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:52:45,731.731 INFO    ] No camera update needed
[2026-08-25 16:52:45,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:52:45,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:52:45,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:52:45,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:52:47,786.786 INFO    ] ================================================
[2026-08-25 16:52:47,801.801 INFO    ] Launching Daemon at Tue Aug 25 16:52:47 IST 2026
[2026-08-25 16:52:47,812.812 INFO    ] ================================================
[2026-08-25 16:52:48,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:52:48
[2026-08-25 16:52:49,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:52:49,370.370 INFO    ] Initializing speech engine...
[2026-08-25 16:52:49,376.376 INFO    ] 2026-08-25 16:52:49
[2026-08-25 16:52:49,664.664 INFO    ] 2026-08-25 16:52:49
[2026-08-25 16:52:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:52:49,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:52:49,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:52:50,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:52:50,056.056 INFO    ] time= 25/08/2026 16:52:50
[2026-08-25 16:52:50,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:52:50,107.107 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:52:50,254.254 INFO    ] No existing commands found in stream
[2026-08-25 16:52:55,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:52:55,269.269 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 16:52:57,061.061 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:52:57,064.064 INFO    ] Checking for system updates...
[2026-08-25 16:52:57,100.100 INFO    ] 200
[2026-08-25 16:52:57,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:57,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:52:57,157.157 INFO    ] No update needed
[2026-08-25 16:52:57,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 16:52:57,193.193 INFO    ] 200
[2026-08-25 16:52:57,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:52:57,237.237 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:52:57,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:52:57,297.297 INFO    ] No camera update needed
[2026-08-25 16:52:57,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:52:57,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:52:57,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:52:57,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:52:59,362.362 INFO    ] ================================================
[2026-08-25 16:52:59,377.377 INFO    ] Launching Daemon at Tue Aug 25 16:52:59 IST 2026
[2026-08-25 16:52:59,388.388 INFO    ] ================================================
[2026-08-25 16:52:59,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:52:59
[2026-08-25 16:53:00,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:53:00,857.857 INFO    ] Initializing speech engine...
[2026-08-25 16:53:00,866.866 INFO    ] 2026-08-25 16:53:00
[2026-08-25 16:53:01,147.147 INFO    ] 2026-08-25 16:53:01
[2026-08-25 16:53:01,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:53:01,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:53:01,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:53:01,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:53:01,590.590 INFO    ] time= 25/08/2026 16:53:01
[2026-08-25 16:53:01,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:53:01,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:53:01,738.738 INFO    ] No existing commands found in stream
[2026-08-25 16:53:06,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:53:06,758.758 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 16:53:08,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:53:08,978.978 INFO    ] Checking for system updates...
[2026-08-25 16:53:09,014.014 INFO    ] 200
[2026-08-25 16:53:09,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:09,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:53:09,072.072 INFO    ] No update needed
[2026-08-25 16:53:09,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 16:53:09,111.111 INFO    ] 200
[2026-08-25 16:53:09,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:09,155.155 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:53:09,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:53:09,300.300 INFO    ] No camera update needed
[2026-08-25 16:53:09,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:53:09,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:53:09,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:53:09,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:53:11,355.355 INFO    ] ================================================
[2026-08-25 16:53:11,370.370 INFO    ] Launching Daemon at Tue Aug 25 16:53:11 IST 2026
[2026-08-25 16:53:11,383.383 INFO    ] ================================================
[2026-08-25 16:53:12,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:53:12
[2026-08-25 16:53:12,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:53:12,928.928 INFO    ] Initializing speech engine...
[2026-08-25 16:53:12,940.940 INFO    ] 2026-08-25 16:53:12
[2026-08-25 16:53:13,251.251 INFO    ] 2026-08-25 16:53:13
[2026-08-25 16:53:13,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:53:13,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:53:13,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:53:13,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:53:13,672.672 INFO    ] time= 25/08/2026 16:53:13
[2026-08-25 16:53:13,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:53:13,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:53:13,905.905 INFO    ] No existing commands found in stream
[2026-08-25 16:53:18,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:53:18,930.930 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 16:53:21,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:53:21,420.420 INFO    ] Checking for system updates...
[2026-08-25 16:53:21,460.460 INFO    ] 200
[2026-08-25 16:53:21,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:21,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:53:21,523.523 INFO    ] No update needed
[2026-08-25 16:53:21,525.525 INFO    ] Checking for camera pi updates...
[2026-08-25 16:53:21,560.560 INFO    ] 200
[2026-08-25 16:53:21,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:21,604.604 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:53:21,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:53:21,654.654 INFO    ] No camera update needed
[2026-08-25 16:53:21,656.656 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:53:21,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:53:21,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:53:21,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:53:23,710.710 INFO    ] ================================================
[2026-08-25 16:53:23,727.727 INFO    ] Launching Daemon at Tue Aug 25 16:53:23 IST 2026
[2026-08-25 16:53:23,739.739 INFO    ] ================================================
[2026-08-25 16:53:24,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:53:24
[2026-08-25 16:53:25,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:53:25,384.384 INFO    ] Initializing speech engine...
[2026-08-25 16:53:25,393.393 INFO    ] 2026-08-25 16:53:25
[2026-08-25 16:53:25,666.666 INFO    ] 2026-08-25 16:53:25
[2026-08-25 16:53:25,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:53:25,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:53:25,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:53:26,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:53:26,195.195 INFO    ] time= 25/08/2026 16:53:26
[2026-08-25 16:53:26,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:53:26,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:53:26,377.377 INFO    ] No existing commands found in stream
[2026-08-25 16:53:31,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:53:31,397.397 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 16:53:35,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:53:35,748.748 INFO    ] Checking for system updates...
[2026-08-25 16:53:35,794.794 INFO    ] 200
[2026-08-25 16:53:35,797.797 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:35,800.800 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 16:53:35,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 16:53:35,856.856 INFO    ] 200
[2026-08-25 16:53:35,859.859 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:35,862.862 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 16:53:35,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:53:35,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:53:35,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:53:35,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:53:37,927.927 INFO    ] ================================================
[2026-08-25 16:53:37,942.942 INFO    ] Launching Daemon at Tue Aug 25 16:53:37 IST 2026
[2026-08-25 16:53:37,953.953 INFO    ] ================================================
[2026-08-25 16:53:38,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:53:38
[2026-08-25 16:53:39,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:53:39,422.422 INFO    ] Initializing speech engine...
[2026-08-25 16:53:39,431.431 INFO    ] 2026-08-25 16:53:39
[2026-08-25 16:53:39,679.679 INFO    ] 2026-08-25 16:53:39
[2026-08-25 16:53:39,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:53:39,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:53:39,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:53:40,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:53:40,178.178 INFO    ] time= 25/08/2026 16:53:40
[2026-08-25 16:53:40,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:53:40,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:53:40,384.384 INFO    ] No existing commands found in stream
[2026-08-25 16:53:45,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:53:45,402.402 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 16:53:49,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:53:49,379.379 INFO    ] Checking for system updates...
[2026-08-25 16:53:49,416.416 INFO    ] 200
[2026-08-25 16:53:49,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:49,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:53:49,474.474 INFO    ] No update needed
[2026-08-25 16:53:49,476.476 INFO    ] Checking for camera pi updates...
[2026-08-25 16:53:49,514.514 INFO    ] 200
[2026-08-25 16:53:49,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:53:49,561.561 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:53:49,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:53:49,613.613 INFO    ] No camera update needed
[2026-08-25 16:53:49,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:53:49,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:53:49,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:53:49,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:53:51,668.668 INFO    ] ================================================
[2026-08-25 16:53:51,683.683 INFO    ] Launching Daemon at Tue Aug 25 16:53:51 IST 2026
[2026-08-25 16:53:51,694.694 INFO    ] ================================================
[2026-08-25 16:53:52,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:53:52
[2026-08-25 16:53:52,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:53:53,128.128 INFO    ] Initializing speech engine...
[2026-08-25 16:53:53,136.136 INFO    ] 2026-08-25 16:53:53
[2026-08-25 16:53:53,429.429 INFO    ] 2026-08-25 16:53:53
[2026-08-25 16:53:53,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:53:53,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:53:53,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:53:53,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:53:53,830.830 INFO    ] time= 25/08/2026 16:53:53
[2026-08-25 16:53:53,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:53:53,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:53:53,940.940 INFO    ] No existing commands found in stream
[2026-08-25 16:53:58,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:53:58,973.973 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 16:54:00,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:54:00,215.215 INFO    ] Checking for system updates...
[2026-08-25 16:54:00,251.251 INFO    ] 200
[2026-08-25 16:54:00,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:00,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:54:00,312.312 INFO    ] No update needed
[2026-08-25 16:54:00,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 16:54:00,353.353 INFO    ] 200
[2026-08-25 16:54:00,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:00,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:54:00,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:54:00,449.449 INFO    ] No camera update needed
[2026-08-25 16:54:00,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:54:00,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:54:00,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:54:00,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:54:02,516.516 INFO    ] ================================================
[2026-08-25 16:54:02,538.538 INFO    ] Launching Daemon at Tue Aug 25 16:54:02 IST 2026
[2026-08-25 16:54:02,558.558 INFO    ] ================================================
[2026-08-25 16:54:03,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:54:03
[2026-08-25 16:54:03,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:54:04,076.076 INFO    ] Initializing speech engine...
[2026-08-25 16:54:04,083.083 INFO    ] 2026-08-25 16:54:04
[2026-08-25 16:54:04,345.345 INFO    ] 2026-08-25 16:54:04
[2026-08-25 16:54:04,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:54:04,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:54:04,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:54:04,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:54:04,830.830 INFO    ] time= 25/08/2026 16:54:04
[2026-08-25 16:54:04,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:54:04,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:54:05,008.008 INFO    ] No existing commands found in stream
[2026-08-25 16:54:10,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:54:10,033.033 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 16:54:13,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:54:13,454.454 INFO    ] Checking for system updates...
[2026-08-25 16:54:13,490.490 INFO    ] 200
[2026-08-25 16:54:13,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:13,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:54:13,550.550 INFO    ] No update needed
[2026-08-25 16:54:13,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 16:54:13,590.590 INFO    ] 200
[2026-08-25 16:54:13,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:13,640.640 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:54:13,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:54:13,697.697 INFO    ] No camera update needed
[2026-08-25 16:54:13,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:54:13,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:54:13,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:54:13,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:54:15,752.752 INFO    ] ================================================
[2026-08-25 16:54:15,767.767 INFO    ] Launching Daemon at Tue Aug 25 16:54:15 IST 2026
[2026-08-25 16:54:15,778.778 INFO    ] ================================================
[2026-08-25 16:54:16,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:54:16
[2026-08-25 16:54:16,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:54:17,196.196 INFO    ] Initializing speech engine...
[2026-08-25 16:54:17,215.215 INFO    ] 2026-08-25 16:54:17
[2026-08-25 16:54:17,463.463 INFO    ] 2026-08-25 16:54:17
[2026-08-25 16:54:17,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:54:17,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:54:17,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:54:17,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:54:17,835.835 INFO    ] time= 25/08/2026 16:54:17
[2026-08-25 16:54:17,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:54:17,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:54:18,024.024 INFO    ] No existing commands found in stream
[2026-08-25 16:54:23,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:54:23,045.045 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 16:54:23,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:54:23,841.841 INFO    ] Checking for system updates...
[2026-08-25 16:54:23,876.876 INFO    ] 200
[2026-08-25 16:54:23,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:23,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:54:23,940.940 INFO    ] No update needed
[2026-08-25 16:54:23,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 16:54:23,980.980 INFO    ] 200
[2026-08-25 16:54:23,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:24,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:54:24,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:54:24,075.075 INFO    ] No camera update needed
[2026-08-25 16:54:24,078.078 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:54:24,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:54:24,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:54:24,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:54:26,131.131 INFO    ] ================================================
[2026-08-25 16:54:26,146.146 INFO    ] Launching Daemon at Tue Aug 25 16:54:26 IST 2026
[2026-08-25 16:54:26,157.157 INFO    ] ================================================
[2026-08-25 16:54:26,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:54:26
[2026-08-25 16:54:27,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:54:27,677.677 INFO    ] Initializing speech engine...
[2026-08-25 16:54:27,696.696 INFO    ] 2026-08-25 16:54:27
[2026-08-25 16:54:27,942.942 INFO    ] 2026-08-25 16:54:27
[2026-08-25 16:54:27,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:54:28,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:54:28,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:54:28,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:54:28,419.419 INFO    ] time= 25/08/2026 16:54:28
[2026-08-25 16:54:28,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:54:28,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:54:28,641.641 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 16:54:28,670.670 INFO    ] Checking historical command: ID=1787657065555-0
[2026-08-25 16:54:28,721.721 INFO    ] process_and_cleanup_command: msg_id=1787657065555-0
[2026-08-25 16:54:28,767.767 INFO    ] is_command_expired: timestamp=2026-08-25T11:24:25.145Z, expiry=30s
[2026-08-25 16:54:28,941.941 INFO    ] Command removed from stream: 1787657065555-0. returning for processing...
[2026-08-25 16:54:28,980.980 INFO    ] ***** get_valid_command
[2026-08-25 16:54:28,990.990 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1787657065145-qa6v2tbd4","orderId":"TM03202401260825165027426","is_vending":false}', 'timeout': '10', 'command': 'start-order', 'timestamp': '2026-08-25T11:24:25.145Z'}
[2026-08-25 16:54:29,002.002 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825165027426', 'request_id': 'start-order-1787657065145-qa6v2tbd4', 'is_vending': False}
[2026-08-25 16:54:29,005.005 INFO    ] Handling start order...
[2026-08-25 16:54:29,007.007 INFO    ] handle_start_order_command
[2026-08-25 16:54:29,081.081 INFO    ] _send_start_order_success: request_id=start-order-1787657065145-qa6v2tbd4, order_id=TM03202401260825165027426
[2026-08-25 16:54:29,137.137 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 16:54:29,244.244 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787657069248-0
[2026-08-25 16:54:29,248.248 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 16:54:29,252.252 INFO    ] Checking for system updates...
[2026-08-25 16:54:29,297.297 INFO    ] 200
[2026-08-25 16:54:29,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:29,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:54:29,429.429 INFO    ] No update needed
[2026-08-25 16:54:29,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 16:54:29,472.472 INFO    ] 200
[2026-08-25 16:54:29,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:29,527.527 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:54:29,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:54:29,580.580 INFO    ] No camera update needed
[2026-08-25 16:54:29,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:54:29,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:54:29,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:54:29,613.613 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 16:54:29,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:54:31,673.673 INFO    ] ================================================
[2026-08-25 16:54:31,688.688 INFO    ] Launching Daemon at Tue Aug 25 16:54:31 IST 2026
[2026-08-25 16:54:31,699.699 INFO    ] ================================================
[2026-08-25 16:54:32,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:54:32
[2026-08-25 16:54:32,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:54:33,234.234 INFO    ] Initializing speech engine...
[2026-08-25 16:54:33,243.243 INFO    ] 2026-08-25 16:54:33
[2026-08-25 16:54:33,502.502 INFO    ] 2026-08-25 16:54:33
[2026-08-25 16:54:33,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:54:33,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:54:33,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:54:34,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:54:34,070.070 INFO    ] time= 25/08/2026 16:54:34
[2026-08-25 16:54:34,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:54:34,126.126 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:54:34,259.259 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 16:54:34,315.315 INFO    ] Checking historical command: ID=1787657069248-0
[2026-08-25 16:54:34,358.358 INFO    ] process_and_cleanup_command: msg_id=1787657069248-0
[2026-08-25 16:54:34,419.419 INFO    ] is_command_expired: timestamp=2026-08-25T11:24:29.087969Z, expiry=30s
[2026-08-25 16:54:34,680.680 INFO    ] Command removed from stream: 1787657069248-0. returning for processing...
[2026-08-25 16:54:34,712.712 INFO    ] ***** get_valid_command
[2026-08-25 16:54:34,719.719 INFO    ] {'metadata_order_id': 'TM03202401260825165027426', 'message_type': 'command_response', 'imei': 'TM03202401', 'timestamp': '2026-08-25T11:24:29.087969Z', 'status': 'success', 'metadata_request_id': 'start-order-1787657065145-qa6v2tbd4', 'message': 'start-order success'}
[2026-08-25 16:54:34,773.773 INFO    ] Processed historical messages, no valid command available...
[2026-08-25 16:54:39,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:54:39,787.787 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 16:54:43,979.979 INFO    ] {'all_command_response': None, 'status': 'active', 'type_of_order': 'order', 'environment': '9', 'order_amount': '0', 'user_id': '7090280261', 'receipt_id': None, 'balance_gateway': None, 'command_for': None, 'previous_pending': '0.0', 'wallet_txn_ids_json': '{"pre_credit":"127940546562900274","pre_debit":"6414123183047198150"}', 'short_order_expiry': None, 'amount_received': '20.0', 'short_order_id': None, 'invoice_final_settled_amount': '0.0', 'created_at': '2026-08-25 16:54:31', 'affiliate_name': '', 'last_command_response': None, 'command_todo': None, 'access_code': '69776221', 'sku_json': '0-0', 'server_response': '', 'command_request_data': None, 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}, 'order_id': 'TM03202401260825165027426', 'anomaly': '0', 'pre_auth_gateway': 'razor_pay', 'partner_order_details': None, 'weight_based_response': None, 'server_status': 'init-process', 'pre_auth_amount': '20.0', 'delivery_address_id': None, 'delivery_fee': '0', 'ex_order_id': None, 'video_url': None, 'delivery_details_json': None, 'last_modified_at': '2026-08-25 16:52:05', 'vm_id': '1711555283773', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/4500731-8867.png","door_id":"1","qty":2,"name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","unit_price":10,"skuid":"4500731","tray_id":"23","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM03202401260825165027426","total_amount":20,"cart_offer_desc":"","imei":"TM03202401","userId":"7090280261"}', 'modified_at': '2026-08-25 16:54:31', 'invoice_balance': '0.0', 'operator_sms_sent': '0'}
[2026-08-25 16:54:43,995.995 INFO    ] Checking for system updates...
[2026-08-25 16:54:44,032.032 INFO    ] 200
[2026-08-25 16:54:44,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:44,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:54:44,091.091 INFO    ] No update needed
[2026-08-25 16:54:44,094.094 INFO    ] Checking for camera pi updates...
[2026-08-25 16:54:44,128.128 INFO    ] 200
[2026-08-25 16:54:44,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:44,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:54:44,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:54:44,226.226 INFO    ] No camera update needed
[2026-08-25 16:54:44,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:54:44,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:54:44,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:54:44,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:54:46,284.284 INFO    ] ================================================
[2026-08-25 16:54:46,300.300 INFO    ] Launching Daemon at Tue Aug 25 16:54:46 IST 2026
[2026-08-25 16:54:46,311.311 INFO    ] ================================================
[2026-08-25 16:54:46,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:54:46
[2026-08-25 16:54:47,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:54:47,780.780 INFO    ] Initializing speech engine...
[2026-08-25 16:54:47,800.800 INFO    ] 2026-08-25 16:54:47
[2026-08-25 16:54:48,072.072 INFO    ] 2026-08-25 16:54:48
[2026-08-25 16:54:48,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:54:48,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:54:48,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:54:48,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:54:48,629.629 INFO    ] time= 25/08/2026 16:54:48
[2026-08-25 16:54:48,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:54:48,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:54:48,852.852 INFO    ] No existing commands found in stream
[2026-08-25 16:54:53,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:54:53,878.878 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 16:54:56,064.064 INFO    ] {'weight_based_response': None, 'anomaly': '0', 'delivery_address_id': None, 'balance_gateway': None, 'last_command_response': None, 'ex_order_id': None, 'short_order_id': None, 'affiliate_name': '', 'modified_at': '2026-08-25 16:54:31', 'short_order_expiry': None, 'created_at': '2026-08-25 16:54:31', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/4500731-8867.png","door_id":"1","qty":2,"name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","unit_price":10,"skuid":"4500731","tray_id":"23","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM03202401260825165027426","total_amount":20,"cart_offer_desc":"","imei":"TM03202401","userId":"7090280261"}', 'environment': '9', 'wallet_txn_ids_json': '{"pre_credit":"127940546562900274","pre_debit":"6414123183047198150"}', 'user_id': '7090280261', 'all_command_response': None, 'access_code': '69776221', 'invoice_balance': '0.0', 'amount_received': '20.0', 'command_request_data': None, 'pre_auth_amount': '20.0', 'order_id': 'TM03202401260825165027426', 'delivery_details_json': None, 'operator_sms_sent': '0', 'previous_pending': '0.0', 'pre_auth_gateway': 'razor_pay', 'response': {'msg': 'order updated', 'status': True, 'data': 'order updated'}, 'type_of_order': 'order', 'partner_order_details': None, 'command_for': None, 'last_modified_at': '2026-08-25 16:52:05', 'receipt_id': None, 'sku_json': '0-0', 'delivery_fee': '0', 'invoice_final_settled_amount': '0.0', 'server_status': 'init-process', 'server_response': '', 'order_amount': '0', 'command_todo': None, 'status': 'active', 'video_url': None, 'vm_id': '1711555283773'}
[2026-08-25 16:54:56,091.091 INFO    ] Checking for system updates...
[2026-08-25 16:54:56,131.131 INFO    ] 200
[2026-08-25 16:54:56,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:56,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:54:56,195.195 INFO    ] No update needed
[2026-08-25 16:54:56,198.198 INFO    ] Checking for camera pi updates...
[2026-08-25 16:54:56,235.235 INFO    ] 200
[2026-08-25 16:54:56,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:54:56,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:54:56,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:54:56,324.324 INFO    ] No camera update needed
[2026-08-25 16:54:56,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:54:56,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:54:56,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:54:56,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:54:58,381.381 INFO    ] ================================================
[2026-08-25 16:54:58,396.396 INFO    ] Launching Daemon at Tue Aug 25 16:54:58 IST 2026
[2026-08-25 16:54:58,407.407 INFO    ] ================================================
[2026-08-25 16:54:58,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:54:58
[2026-08-25 16:54:59,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:54:59,943.943 INFO    ] Initializing speech engine...
[2026-08-25 16:54:59,954.954 INFO    ] 2026-08-25 16:54:59
[2026-08-25 16:55:00,259.259 INFO    ] 2026-08-25 16:55:00
[2026-08-25 16:55:00,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:55:00,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:55:00,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:55:00,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:55:00,929.929 INFO    ] time= 25/08/2026 16:55:00
[2026-08-25 16:55:00,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:55:01,026.026 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:55:01,205.205 INFO    ] No existing commands found in stream
[2026-08-25 16:55:06,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:55:06,224.224 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 16:55:09,316.316 INFO    ] {'weight_based_response': None, 'anomaly': '0', 'server_response': '', 'response': {'data': 'order updated', 'status': True, 'msg': 'order updated'}, 'all_command_response': None, 'receipt_id': None, 'invoice_final_settled_amount': '0.0', 'delivery_details_json': None, 'modified_at': '2026-08-25 16:54:31', 'command_request_data': None, 'order_amount': '0', 'last_modified_at': '2026-08-25 16:55:03', 'previous_pending': '0.0', 'video_url': 'N/A', 'ex_order_id': None, 'server_status': 'init-process', 'created_at': '2026-08-25 16:54:31', 'pre_auth_gateway': 'razor_pay', 'delivery_address_id': None, 'sku_json': '0-0', 'type_of_order': 'order', 'short_order_id': None, 'command_for': None, 'order_id': 'TM03202401260825165027426', 'last_command_response': None, 'short_order_expiry': None, 'wallet_txn_ids_json': '{"pre_credit":"127940546562900274","pre_debit":"6414123183047198150"}', 'user_id': '7090280261', 'amount_received': '20.0', 'operator_sms_sent': '0', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/4500731-8867.png","door_id":"1","qty":2,"name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","unit_price":10,"skuid":"4500731","tray_id":"23","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM03202401260825165027426","total_amount":20,"cart_offer_desc":"","imei":"TM03202401","userId":"7090280261"}', 'access_code': '69776221', 'delivery_fee': '0', 'vm_id': '1711555283773', 'environment': '9', 'command_todo': None, 'pre_auth_amount': '20.0', 'balance_gateway': None, 'partner_order_details': None, 'affiliate_name': '', 'status': 'active', 'invoice_balance': '0.0'}
[2026-08-25 16:55:09,343.343 INFO    ] Checking for system updates...
[2026-08-25 16:55:09,379.379 INFO    ] 200
[2026-08-25 16:55:09,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:09,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:55:09,436.436 INFO    ] No update needed
[2026-08-25 16:55:09,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 16:55:09,471.471 INFO    ] 200
[2026-08-25 16:55:09,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:09,515.515 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:55:09,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:55:09,562.562 INFO    ] No camera update needed
[2026-08-25 16:55:09,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:55:09,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:55:09,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:55:09,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:55:11,620.620 INFO    ] ================================================
[2026-08-25 16:55:11,635.635 INFO    ] Launching Daemon at Tue Aug 25 16:55:11 IST 2026
[2026-08-25 16:55:11,646.646 INFO    ] ================================================
[2026-08-25 16:55:12,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:55:12
[2026-08-25 16:55:12,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:55:13,072.072 INFO    ] Initializing speech engine...
[2026-08-25 16:55:13,081.081 INFO    ] 2026-08-25 16:55:13
[2026-08-25 16:55:13,331.331 INFO    ] 2026-08-25 16:55:13
[2026-08-25 16:55:13,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:55:13,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:55:13,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:55:13,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:55:13,775.775 INFO    ] time= 25/08/2026 16:55:13
[2026-08-25 16:55:13,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:55:13,889.889 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:55:14,036.036 INFO    ] No existing commands found in stream
[2026-08-25 16:55:19,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:55:19,067.067 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 16:55:21,727.727 INFO    ] {'delivery_fee': '0', 'wallet_txn_ids_json': '{"pre_credit":"127940546562900274","pre_debit":"6414123183047198150"}', 'last_command_response': None, 'last_modified_at': '2026-08-25 16:55:03', 'pre_auth_gateway': 'razor_pay', 'short_order_id': None, 'previous_pending': '0.0', 'sku_json': '0-0', 'modified_at': '2026-08-25 16:54:31', 'status': 'active', 'affiliate_name': '', 'response': {'data': 'order updated', 'msg': 'order updated', 'status': True}, 'operator_sms_sent': '0', 'command_for': None, 'pre_auth_amount': '20.0', 'server_response': '', 'invoice_final_settled_amount': '0.0', 'vm_id': '1711555283773', 'user_id': '7090280261', 'type_of_order': 'order', 'delivery_details_json': None, 'server_status': 'init-process', 'delivery_address_id': None, 'access_code': '69776221', 'all_command_response': None, 'amount_received': '20.0', 'order_id': 'TM03202401260825165027426', 'order_amount': '0', 'command_request_data': None, 'receipt_id': None, 'video_url': 'N/A', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/4500731-8867.png","door_id":"1","qty":2,"name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","unit_price":10,"skuid":"4500731","tray_id":"23","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM03202401260825165027426","total_amount":20,"cart_offer_desc":"","imei":"TM03202401","userId":"7090280261"}', 'invoice_balance': '0.0', 'environment': '9', 'ex_order_id': None, 'balance_gateway': None, 'weight_based_response': None, 'command_todo': None, 'short_order_expiry': None, 'created_at': '2026-08-25 16:54:31', 'partner_order_details': None, 'anomaly': '0'}
[2026-08-25 16:55:21,753.753 INFO    ] Lock file expired, elapsed: 52s, order: TM03202401260825165027426
[2026-08-25 16:55:21,755.755 INFO    ] Cancelling order TM03202401260825165027426 - Error 20101: Order timed out. Please try again.
[2026-08-25 16:55:21,853.853 INFO    ] {'server_status': 'Cancelled', 'order_id': 'TM03202401260825165027426', 'server_response': {'error_code': 20101, 'error_message': 'Order timed out. Please try again.', 'SectionStatus': {'SubHeader': '[20101] Order timed out. Please try again.', 'Header': 'Order Failed', 'Note': ''}}}
[2026-08-25 16:55:21,855.855 INFO    ] 200
[2026-08-25 16:55:21,858.858 INFO    ] {"data":{"server_status":"Cancelled","order_id":"TM03202401260825165027426","server_response":{"error_code":20101,"error_message":"Order timed out. Please try again.","SectionStatus":{"SubHeader":"[20101] Order timed out. Please try again.","Header":"Order Failed","Note":""}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 16:55:21,860.860 INFO    ] {'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully', 'status': True}, 'data': {'server_status': 'Cancelled', 'order_id': 'TM03202401260825165027426', 'server_response': {'error_code': 20101, 'error_message': 'Order timed out. Please try again.', 'SectionStatus': {'SubHeader': '[20101] Order timed out. Please try again.', 'Header': 'Order Failed', 'Note': ''}}}}
[2026-08-25 16:55:21,863.863 INFO    ] Expired start-order file deleted, server response code: ORDER_EXISTS
[2026-08-25 16:55:21,866.866 INFO    ] Checking for system updates...
[2026-08-25 16:55:21,901.901 INFO    ] 200
[2026-08-25 16:55:21,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:21,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:55:21,958.958 INFO    ] No update needed
[2026-08-25 16:55:21,961.961 INFO    ] Checking for camera pi updates...
[2026-08-25 16:55:21,998.998 INFO    ] 200
[2026-08-25 16:55:22,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:22,048.048 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:55:22,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:55:22,195.195 INFO    ] No camera update needed
[2026-08-25 16:55:22,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:55:22,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:55:22,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:55:22,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:55:24,254.254 INFO    ] ================================================
[2026-08-25 16:55:24,269.269 INFO    ] Launching Daemon at Tue Aug 25 16:55:24 IST 2026
[2026-08-25 16:55:24,280.280 INFO    ] ================================================
[2026-08-25 16:55:24,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:55:24
[2026-08-25 16:55:25,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:55:25,734.734 INFO    ] Initializing speech engine...
[2026-08-25 16:55:25,742.742 INFO    ] 2026-08-25 16:55:25
[2026-08-25 16:55:26,012.012 INFO    ] 2026-08-25 16:55:25
[2026-08-25 16:55:26,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:55:26,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:55:26,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:55:26,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:55:26,490.490 INFO    ] time= 25/08/2026 16:55:26
[2026-08-25 16:55:26,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:55:26,555.555 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:55:26,701.701 INFO    ] No existing commands found in stream
[2026-08-25 16:55:31,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:55:31,722.722 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 16:55:33,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:55:33,910.910 INFO    ] Checking for system updates...
[2026-08-25 16:55:33,945.945 INFO    ] 200
[2026-08-25 16:55:33,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:34,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:55:34,005.005 INFO    ] No update needed
[2026-08-25 16:55:34,007.007 INFO    ] Checking for camera pi updates...
[2026-08-25 16:55:34,041.041 INFO    ] 200
[2026-08-25 16:55:34,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:34,085.085 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:55:34,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:55:34,144.144 INFO    ] No camera update needed
[2026-08-25 16:55:34,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:55:34,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:55:34,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:55:34,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:55:36,198.198 INFO    ] ================================================
[2026-08-25 16:55:36,228.228 INFO    ] Launching Daemon at Tue Aug 25 16:55:36 IST 2026
[2026-08-25 16:55:36,239.239 INFO    ] ================================================
[2026-08-25 16:55:36,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:55:36
[2026-08-25 16:55:37,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:55:37,717.717 INFO    ] Initializing speech engine...
[2026-08-25 16:55:37,727.727 INFO    ] 2026-08-25 16:55:37
[2026-08-25 16:55:37,986.986 INFO    ] 2026-08-25 16:55:37
[2026-08-25 16:55:38,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:55:38,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:55:38,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:55:38,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:55:38,469.469 INFO    ] time= 25/08/2026 16:55:38
[2026-08-25 16:55:38,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:55:38,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:55:38,675.675 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 16:55:38,706.706 INFO    ] Checking historical command: ID=1787657133433-0
[2026-08-25 16:55:38,755.755 INFO    ] process_and_cleanup_command: msg_id=1787657133433-0
[2026-08-25 16:55:38,801.801 INFO    ] is_command_expired: timestamp=2026-08-25T11:25:32.596Z, expiry=30s
[2026-08-25 16:55:38,995.995 INFO    ] Command removed from stream: 1787657133433-0. returning for processing...
[2026-08-25 16:55:39,026.026 INFO    ] ***** get_valid_command
[2026-08-25 16:55:39,037.037 INFO    ] {'command': 'start-order', 'timestamp': '2026-08-25T11:25:32.596Z', 'timeout': '10', 'data': '{"request_id":"start-order-1787657132596-0r1y3eevo","orderId":"TM03202401260825165027426","is_vending":false}', 'source': 'webapp'}
[2026-08-25 16:55:39,041.041 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1787657132596-0r1y3eevo', 'orderId': 'TM03202401260825165027426'}
[2026-08-25 16:55:39,044.044 INFO    ] Handling start order...
[2026-08-25 16:55:39,047.047 INFO    ] handle_start_order_command
[2026-08-25 16:55:39,136.136 INFO    ] _send_start_order_success: request_id=start-order-1787657132596-0r1y3eevo, order_id=TM03202401260825165027426
[2026-08-25 16:55:39,179.179 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 16:55:39,284.284 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787657139311-0
[2026-08-25 16:55:39,289.289 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 16:55:39,293.293 INFO    ] Checking for system updates...
[2026-08-25 16:55:39,401.401 INFO    ] 200
[2026-08-25 16:55:39,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:39,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:55:39,520.520 INFO    ] No update needed
[2026-08-25 16:55:39,527.527 INFO    ] Checking for camera pi updates...
[2026-08-25 16:55:39,563.563 INFO    ] 200
[2026-08-25 16:55:39,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:39,612.612 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:55:39,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:55:39,675.675 INFO    ] No camera update needed
[2026-08-25 16:55:39,683.683 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:55:39,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:55:39,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:55:39,733.733 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 16:55:39,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:55:41,797.797 INFO    ] ================================================
[2026-08-25 16:55:41,812.812 INFO    ] Launching Daemon at Tue Aug 25 16:55:41 IST 2026
[2026-08-25 16:55:41,823.823 INFO    ] ================================================
[2026-08-25 16:55:42,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:55:42
[2026-08-25 16:55:42,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:55:43,250.250 INFO    ] Initializing speech engine...
[2026-08-25 16:55:43,262.262 INFO    ] 2026-08-25 16:55:43
[2026-08-25 16:55:43,524.524 INFO    ] 2026-08-25 16:55:43
[2026-08-25 16:55:43,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:55:43,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:55:43,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:55:43,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:55:44,041.041 INFO    ] time= 25/08/2026 16:55:43
[2026-08-25 16:55:44,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:55:44,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:55:44,246.246 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 16:55:44,296.296 INFO    ] Checking historical command: ID=1787657139311-0
[2026-08-25 16:55:44,351.351 INFO    ] process_and_cleanup_command: msg_id=1787657139311-0
[2026-08-25 16:55:44,382.382 INFO    ] is_command_expired: timestamp=2026-08-25T11:25:39.142705Z, expiry=30s
[2026-08-25 16:55:44,598.598 INFO    ] Command removed from stream: 1787657139311-0. returning for processing...
[2026-08-25 16:55:44,610.610 INFO    ] ***** get_valid_command
[2026-08-25 16:55:44,613.613 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'status': 'success', 'metadata_order_id': 'TM03202401260825165027426', 'timestamp': '2026-08-25T11:25:39.142705Z', 'metadata_request_id': 'start-order-1787657132596-0r1y3eevo', 'imei': 'TM03202401'}
[2026-08-25 16:55:44,617.617 INFO    ] Processed historical messages, no valid command available...
[2026-08-25 16:55:49,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:55:49,630.630 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 16:55:50,972.972 INFO    ] {'ex_order_id': None, 'amount_received': '20.0', 'modified_at': '2026-08-25 16:55:44', 'server_status': 'init-process', 'weight_based_response': None, 'access_code': '69776221', 'status': 'active', 'wallet_txn_ids_json': '{"pre_credit":"127940546562900274","pre_debit":"6414123183047198150"}', 'balance_gateway': None, 'response': {'msg': 'order updated', 'data': 'order updated', 'status': True}, 'pre_auth_gateway': 'razor_pay', 'sku_json': '0-0', 'operator_sms_sent': '0', 'server_response': '', 'affiliate_name': '', 'command_for': None, 'created_at': '2026-08-25 16:55:44', 'last_modified_at': '2026-08-25 16:55:03', 'delivery_details_json': None, 'order_amount': '0', 'short_order_expiry': None, 'invoice_final_settled_amount': '0.0', 'vm_id': '1711555283773', 'order_id': 'TM03202401260825165027426', 'pre_auth_amount': '20.0', 'delivery_fee': '0', 'anomaly': '0', 'short_order_id': None, 'user_id': '7090280261', 'invoice_balance': '0.0', 'type_of_order': 'order', 'receipt_id': None, 'previous_pending': '0.0', 'last_command_response': None, 'command_todo': None, 'environment': '9', 'command_request_data': None, 'all_command_response': None, 'partner_order_details': None, 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":20,"image_url":"https://images.tinymart.in/product/4500731-8867.png","door_id":"1","qty":2,"name":"MaxVita Butter Elaichi cookies 46g","mrp":"10","unit_price":10,"skuid":"4500731","tray_id":"23","offer_id":"","offer_desc":""}],"bill_amount":20,"orderId":"TM03202401260825165027426","total_amount":20,"cart_offer_desc":"","imei":"TM03202401","userId":"7090280261"}', 'video_url': 'N/A', 'delivery_address_id': None}
[2026-08-25 16:55:50,988.988 INFO    ] Checking for system updates...
[2026-08-25 16:55:51,028.028 INFO    ] 200
[2026-08-25 16:55:51,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:51,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:55:51,095.095 INFO    ] No update needed
[2026-08-25 16:55:51,098.098 INFO    ] Checking for camera pi updates...
[2026-08-25 16:55:51,137.137 INFO    ] 200
[2026-08-25 16:55:51,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:51,187.187 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:55:51,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:55:51,241.241 INFO    ] No camera update needed
[2026-08-25 16:55:51,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:55:51,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:55:51,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:55:51,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:55:53,305.305 INFO    ] ================================================
[2026-08-25 16:55:53,320.320 INFO    ] Launching Daemon at Tue Aug 25 16:55:53 IST 2026
[2026-08-25 16:55:53,331.331 INFO    ] ================================================
[2026-08-25 16:55:53,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:55:53
[2026-08-25 16:55:54,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:55:55,003.003 INFO    ] Initializing speech engine...
[2026-08-25 16:55:55,014.014 INFO    ] 2026-08-25 16:55:55
[2026-08-25 16:55:55,312.312 INFO    ] 2026-08-25 16:55:55
[2026-08-25 16:55:55,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:55:55,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:55:55,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:55:55,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:55:55,771.771 INFO    ] time= 25/08/2026 16:55:55
[2026-08-25 16:55:55,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:55:55,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:55:55,980.980 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 16:55:56,020.020 INFO    ] Checking historical command: ID=1787657144609-0
[2026-08-25 16:55:56,073.073 INFO    ] process_and_cleanup_command: msg_id=1787657144609-0
[2026-08-25 16:55:56,130.130 INFO    ] is_command_expired: timestamp=2026-08-25T11:25:43.948Z, expiry=30s
[2026-08-25 16:55:56,307.307 INFO    ] Command removed from stream: 1787657144609-0. returning for processing...
[2026-08-25 16:55:56,352.352 INFO    ] ***** get_valid_command
[2026-08-25 16:55:56,356.356 INFO    ] {'command': 'process-order', 'timeout': '60', 'source': 'webapp', 'timestamp': '2026-08-25T11:25:43.948Z', 'data': '{"request_id":"process-order-1787657143948-cq83p64cv","orderId":"TM03202401260825165027426","is_vending":false,"accessCode":"69776221"}'}
[2026-08-25 16:55:56,368.368 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1787657143948-cq83p64cv', 'orderId': 'TM03202401260825165027426', 'is_vending': False, 'accessCode': '69776221'}
[2026-08-25 16:55:56,371.371 INFO    ] Handling process order...
[2026-08-25 16:55:56,374.374 INFO    ] Processing process-order command...
[2026-08-25 16:55:56,377.377 INFO    ] 🔍 Lock file Order ID: TM03202401260825165027426, TS: 2026-08-25 16:55:39
[2026-08-25 16:55:56,458.458 INFO    ] ✅ Order lock valid for TM03202401260825165027426
[2026-08-25 16:55:56,507.507 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 16:55:56,523.523 INFO    ] processing access code 69776221 for order TM03202401260825165027426
[2026-08-25 16:55:56,542.542 INFO    ] 🔍 Lock file Order ID: TM03202401260825165027426, TS: 2026-08-25 16:55:39
[2026-08-25 16:55:56,578.578 INFO    ] ✅ Order lock valid for TM03202401260825165027426
[2026-08-25 16:55:56,581.581 INFO    ] 2026-08-25 16:55:56
[2026-08-25 16:55:56,657.657 INFO    ] 200
[2026-08-25 16:55:56,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:55:56,666.666 INFO    ] 69776221
[2026-08-25 16:55:56,671.671 INFO    ] 2026-08-25 16:55:56
[2026-08-25 16:55:56,675.675 INFO    ] session id :783541154
[2026-08-25 16:55:56,680.680 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=69776221&imei=TM03202401&session_id=783541154
[2026-08-25 16:55:57,339.339 INFO    ] 200
[2026-08-25 16:55:57,344.344 INFO    ] {"data": {"access_code": "69776221", "order_id": "TM03202401260825165027426", "bill_amount": "20.0", "invoice_bill": "20.0", "proposed_sku_json": [{"offer_desc": "", "qty": 2, "skuid": "4500731", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500731-8867.png", "tray_id": "23", "mrp": "10", "name": "MaxVita Butter Elaichi cookies 46g", "sku_total": 20}], "mobile": "7090280261"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 16:55:57,348.348 INFO    ] 20
[2026-08-25 16:55:57,354.354 INFO    ] TM03202401260825165027426
[2026-08-25 16:55:57,358.358 INFO    ] 7090280261
[2026-08-25 16:55:57,362.362 INFO    ] 2026-08-25 16:55:57
[2026-08-25 16:55:57,368.368 INFO    ] Door Opening for user mobile ending with  zero two six one 
[2026-08-25 16:55:57,373.373 INFO    ] Door Opening for user mobile ending with  zero two six one 
[2026-08-25 16:55:57,379.379 INFO    ] 7ad6c71e5303dd36ac2a4bd735ba264f
[2026-08-25 16:55:57,388.388 INFO    ] 2026-08-25 16:55:57
[2026-08-25 16:55:57,392.392 INFO    ] playing audio file
[2026-08-25 16:55:57,411.411 INFO    ] 2026-08-25 16:55:57
[2026-08-25 16:55:57,415.415 INFO    ] 2026-08-25 16:55:57
[2026-08-25 16:55:57,419.419 INFO    ] publish_status: order_id=TM03202401260825165027426
[2026-08-25 16:55:57,479.479 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825165027426
[2026-08-25 16:55:57,596.596 INFO    ] [publish_status] Message added to stream with ID: 1787657157629-0
[2026-08-25 16:55:57,602.602 INFO    ] Published to order:TM03202401260825165027426: {'server_response': '{"status": true, "rstatus": true, "msg": "Order Data", "data": {"mobile": "7090280261", "access_code": "69776221", "invoice_bill": "20.0", "order_id": "TM03202401260825165027426", "proposed_sku_json": [{"offer_desc": "", "door_id": "1", "sku_total": 20, "name": "MaxVita Butter Elaichi cookies 46g", "qty": 2, "offer_id": "", "unit_price": 10, "mrp": "10", "skuid": "4500731", "tray_id": "23", "image_url": "https://images.tinymart.in/product/4500731-8867.png"}], "bill_amount": "20.0"}}', 'server_status': 'order-started', 'order_id': 'TM03202401260825165027426', 'timestamp': '2026-08-25T11:25:57.416957Z'} (ID: 1787657157629-0)
[2026-08-25 16:55:58,203.203 INFO    ] {'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'mobile': '7090280261', 'access_code': '69776221', 'invoice_bill': '20.0', 'order_id': 'TM03202401260825165027426', 'proposed_sku_json': [{'offer_desc': '', 'door_id': '1', 'sku_total': 20, 'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2, 'offer_id': '', 'unit_price': 10, 'mrp': '10', 'skuid': '4500731', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}], 'bill_amount': '20.0'}}, 'server_status': 'order-started', 'order_id': 'TM03202401260825165027426'}
[2026-08-25 16:55:58,215.215 INFO    ] 200
[2026-08-25 16:55:58,228.228 INFO    ] {"data":{"server_response":{"status":true,"rstatus":true,"msg":"Order Data","data":{"mobile":"7090280261","access_code":"69776221","invoice_bill":"20.0","order_id":"TM03202401260825165027426","proposed_sku_json":[{"offer_desc":"","door_id":"1","sku_total":20,"name":"MaxVita Butter Elaichi cookies 46g","qty":2,"offer_id":"","unit_price":10,"mrp":"10","skuid":"4500731","tray_id":"23","image_url":"https:\/\/images.tinymart.in\/product\/4500731-8867.png"}],"bill_amount":"20.0"}},"server_status":"order-started","order_id":"TM03202401260825165027426"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 16:55:58,237.237 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_response': {'status': True, 'rstatus': True, 'msg': 'Order Data', 'data': {'order_id': 'TM03202401260825165027426', 'access_code': '69776221', 'mobile': '7090280261', 'invoice_bill': '20.0', 'proposed_sku_json': [{'offer_desc': '', 'door_id': '1', 'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2, 'offer_id': '', 'unit_price': 10, 'sku_total': 20, 'skuid': '4500731', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png', 'tray_id': '23'}], 'bill_amount': '20.0'}}, 'server_status': 'order-started', 'order_id': 'TM03202401260825165027426'}}
[2026-08-25 16:55:58,270.270 INFO    ] 2026-08-25 16:55:58
[2026-08-25 16:55:58,339.339 INFO    ] 200
[2026-08-25 16:55:58,361.361 INFO    ] True
[2026-08-25 16:55:58,535.535 INFO    ] 200
[2026-08-25 16:55:58,558.558 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 16:55:58,571.571 INFO    ] {'voiceNote': 'Please Wait', 'status': 'False', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': False, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-08-25 16:55:58,589.589 INFO    ] *** process_order ***
[2026-08-25 16:55:59,778.778 INFO    ] 200
[2026-08-25 16:55:59,781.781 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 16:55:59,784.784 INFO    ] {'voiceNote': 'Please Wait', 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}
[2026-08-25 16:55:59,787.787 INFO    ] *** process_order ***
[2026-08-25 16:55:59,790.790 INFO    ] publish_status: order_id=TM03202401260825165027426
[2026-08-25 16:55:59,792.792 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825165027426
[2026-08-25 16:55:59,866.866 INFO    ] [publish_status] Message added to stream with ID: 1787657159901-0
[2026-08-25 16:55:59,868.868 INFO    ] Published to order:TM03202401260825165027426: {'server_response': '{"voiceNote": "Door is open...", "status": "True", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'server_status': 'doorOpened', 'order_id': 'TM03202401260825165027426'} (ID: 1787657159901-0)
[2026-08-25 16:56:00,935.935 INFO    ] 2026-08-25 16:56:00
[2026-08-25 16:56:00,938.938 INFO    ] publish_status: order_id=TM03202401260825165027426
[2026-08-25 16:56:00,940.940 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825165027426
[2026-08-25 16:56:01,038.038 INFO    ] [publish_status] Message added to stream with ID: 1787657161063-0
[2026-08-25 16:56:01,040.040 INFO    ] Published to order:TM03202401260825165027426: {'server_response': '{"voiceNote": "Please Wait", "status": "True", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": ""}, "rstatus": true, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}}', 'server_status': 'processOrder', 'order_id': 'TM03202401260825165027426', 'timestamp': '2026-08-25T11:26:00.936399Z'} (ID: 1787657161063-0)
[2026-08-25 16:56:01,184.184 INFO    ] {'server_response': {'voiceNote': 'Please Wait', 'status': 'True', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825165027426'}
[2026-08-25 16:56:01,186.186 INFO    ] 200
[2026-08-25 16:56:01,189.189 INFO    ] {"data":{"server_response":{"voiceNote":"Please Wait","status":"true","SectionMain":{"Header":"Processing Order"},"delay":0,"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","SubHeader":"Please wait while we process your order","Note":""},"rstatus":true,"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]}},"server_status":"processOrder","order_id":"TM03202401260825165027426"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 16:56:01,192.192 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_response': {'voiceNote': 'Please Wait', 'status': 'true', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': ''}, 'rstatus': True, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825165027426'}}
[2026-08-25 16:56:01,195.195 INFO    ] 2026-08-25 16:56:01
[2026-08-25 16:56:01,197.197 INFO    ] None
[2026-08-25 16:56:01,200.200 INFO    ] Opening Door now
[2026-08-25 16:56:01,202.202 INFO    ] Opening Door now
[2026-08-25 16:56:01,205.205 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 16:56:01,208.208 INFO    ] 2026-08-25 16:56:01
[2026-08-25 16:56:01,210.210 INFO    ] playing audio file
[2026-08-25 16:56:01,227.227 INFO    ] 2026-08-25 16:56:01
[2026-08-25 16:56:01,230.230 INFO    ] 2026-08-25 16:56:01
[2026-08-25 16:56:04,338.338 INFO    ] 200
[2026-08-25 16:56:04,341.341 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 16:56:04,344.344 INFO    ] {'voiceNote': 'Door 1 is open now', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-08-25 16:56:07,408.408 INFO    ] 200
[2026-08-25 16:56:07,411.411 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 16:56:07,413.413 INFO    ] {'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-08-25 16:56:10,492.492 INFO    ] 200
[2026-08-25 16:56:10,494.494 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 16:56:10,497.497 INFO    ] Please close door 1
[2026-08-25 16:56:10,500.500 INFO    ] Please close door 1
[2026-08-25 16:56:10,502.502 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 16:56:10,505.505 INFO    ] 2026-08-25 16:56:10
[2026-08-25 16:56:10,508.508 INFO    ] playing audio file
[2026-08-25 16:56:10,527.527 INFO    ] 2026-08-25 16:56:10
[2026-08-25 16:56:10,530.530 INFO    ] publish_status: order_id=TM03202401260825165027426
[2026-08-25 16:56:10,533.533 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825165027426
[2026-08-25 16:56:10,626.626 INFO    ] [publish_status] Message added to stream with ID: 1787657170660-0
[2026-08-25 16:56:10,630.630 INFO    ] Published to order:TM03202401260825165027426: {'server_response': '{"voiceNote": "Please close door 1", "status": "False", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products"}, "rstatus": false, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "MaxVita Butter Elaichi cookies 46g", "qty": 2}]}, "error": {"code": 20001, "umessage": "In Progress", "tmessage": "In Progress", "data": {}}}', 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825165027426', 'timestamp': '2026-08-25T11:26:10.528799Z'} (ID: 1787657170660-0)
[2026-08-25 16:56:11,216.216 INFO    ] {'server_response': {'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825165027426'}
[2026-08-25 16:56:11,219.219 INFO    ] 200
[2026-08-25 16:56:11,222.222 INFO    ] {"data":{"server_response":{"voiceNote":"Please close door 1","status":"false","SectionMain":{"Header":"Door Open"},"SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products"},"rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"MaxVita Butter Elaichi cookies 46g","qty":2}]},"error":{"code":20001,"umessage":"In Progress","tmessage":"In Progress","data":[]}},"server_status":"OrderStatus","order_id":"TM03202401260825165027426"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 16:56:11,226.226 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_response': {'voiceNote': 'Please close door 1', 'status': 'false', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': []}}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825165027426'}}
[2026-08-25 16:56:11,229.229 INFO    ] {'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-08-25 16:56:14,312.312 INFO    ] 200
[2026-08-25 16:56:14,315.315 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 16:56:14,319.319 INFO    ] {'voiceNote': 'Please close door 1', 'status': 'False', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products'}, 'rstatus': False, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}]}, 'error': {'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress', 'data': {}}}
[2026-08-25 16:56:17,380.380 INFO    ] 200
[2026-08-25 16:56:17,383.383 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 16:56:17,387.387 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-25 16:56:17,390.390 INFO    ] 2026-08-25 16:56:17
[2026-08-25 16:56:17,393.393 INFO    ] Order Completed 
[2026-08-25 16:56:17,396.396 INFO    ] Order Completed 
[2026-08-25 16:56:17,400.400 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 16:56:17,403.403 INFO    ] 2026-08-25 16:56:17
[2026-08-25 16:56:17,406.406 INFO    ] playing audio file
[2026-08-25 16:56:17,426.426 INFO    ] 2026-08-25 16:56:17
[2026-08-25 16:56:17,430.430 INFO    ] {'voiceNote': 'Transaction Completed', 'status': 'True', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in'}, 'rstatus': True, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}}
[2026-08-25 16:56:17,434.434 INFO    ] 2026-08-25 16:56:17
[2026-08-25 16:56:19,246.246 INFO    ] 200
[2026-08-25 16:56:19,249.249 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825165027426", "skus": [{"image_url": "https://images.tinymart.in/product/4500731-8867.png", "skuid": "4500731", "door_id": "", "unit_price": "10", "qty": 2, "tray_id": "23", "mrp": "10", "name": "MaxVita Butter Elaichi cookies 46g per peice", "sku_total": 20.0}], "res": "True", "total_amount": 20.0, "logic": "WBL"}
[2026-08-25 16:56:19,252.252 INFO    ] {'total_amount': 20.0, 'skus': [{'door_id': '', 'sku_total': 20.0, 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'skuid': '4500731', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}], 'rstatus': True, 'logic': 'WBL', 'orderId': 'TM03202401260825165027426', 'anomaly': 0, 'res': 'True'}
[2026-08-25 16:56:19,255.255 INFO    ] {'total_amount': 20.0, 'skus': [{'door_id': '', 'sku_total': 20.0, 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'skuid': '4500731', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}], 'rstatus': True, 'logic': 'WBL', 'orderId': 'TM03202401260825165027426', 'anomaly': 0, 'res': 'True'}
[2026-08-25 16:56:19,258.258 INFO    ] 2026-08-25 16:56:19
[2026-08-25 16:56:19,261.261 INFO    ] 2026-08-25 16:56:19
[2026-08-25 16:56:19,263.263 INFO    ] 20
[2026-08-25 16:56:19,266.266 INFO    ] 2026-08-25 16:56:19
[2026-08-25 16:56:19,270.270 INFO    ] 2026-08-25 16:56:19
[2026-08-25 16:56:19,273.273 INFO    ]  Your Bill Amount is 20
[2026-08-25 16:56:19,275.275 INFO    ]  Your Bill Amount is 20
[2026-08-25 16:56:19,278.278 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-08-25 16:56:19,285.285 INFO    ] 2026-08-25 16:56:19
[2026-08-25 16:56:19,288.288 INFO    ] playing audio file
[2026-08-25 16:56:19,309.309 INFO    ] 2026-08-25 16:56:19
[2026-08-25 16:56:19,313.313 INFO    ] 2026-08-25 16:56:19
[2026-08-25 16:56:19,318.318 INFO    ] publish_status: order_id=TM03202401260825165027426
[2026-08-25 16:56:19,322.322 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825165027426
[2026-08-25 16:56:19,388.388 INFO    ] [publish_status] Message added to stream with ID: 1787657179421-0
[2026-08-25 16:56:19,390.390 INFO    ] Published to order:TM03202401260825165027426: {'server_response': '{"total_amount": 20.0, "skus": [{"door_id": "", "sku_total": 20.0, "name": "MaxVita Butter Elaichi cookies 46g per peice", "qty": 2, "unit_price": "10", "mrp": "10", "skuid": "4500731", "tray_id": "23", "image_url": "https://images.tinymart.in/product/4500731-8867.png"}], "rstatus": true, "logic": "WBL", "orderId": "TM03202401260825165027426", "anomaly": 0, "res": "True"}', 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825165027426', 'timestamp': '2026-08-25T11:26:19.315903Z'} (ID: 1787657179421-0)
[2026-08-25 16:56:20,238.238 INFO    ] {'server_response': {'total_amount': 20.0, 'skus': [{'door_id': '', 'sku_total': 20.0, 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'qty': 2, 'unit_price': '10', 'mrp': '10', 'skuid': '4500731', 'tray_id': '23', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}], 'rstatus': True, 'logic': 'WBL', 'orderId': 'TM03202401260825165027426', 'anomaly': 0, 'res': 'True'}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825165027426'}
[2026-08-25 16:56:20,241.241 INFO    ] 200
[2026-08-25 16:56:20,244.244 INFO    ] {"data":{"server_response":{"total_amount":20,"skus":[{"door_id":"","sku_total":20,"name":"MaxVita Butter Elaichi cookies 46g per peice","qty":2,"unit_price":"10","mrp":"10","skuid":"4500731","tray_id":"23","image_url":"https:\/\/images.tinymart.in\/product\/4500731-8867.png"}],"rstatus":true,"logic":"WBL","orderId":"TM03202401260825165027426","anomaly":0,"res":"true"},"server_status":"invoiceOrder","order_id":"TM03202401260825165027426"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 16:56:20,249.249 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_response': {'total_amount': 20, 'skus': [{'door_id': '', 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'qty': 2, 'unit_price': '10', 'sku_total': 20, 'skuid': '4500731', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png', 'tray_id': '23'}], 'rstatus': True, 'logic': 'WBL', 'orderId': 'TM03202401260825165027426', 'anomaly': 0, 'res': 'true'}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825165027426'}}
[2026-08-25 16:56:20,253.253 INFO    ] {'response': {'status': True, 'msg': 'order updated successfully', 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_response': {'total_amount': 20, 'skus': [{'door_id': '', 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'qty': 2, 'unit_price': '10', 'sku_total': 20, 'skuid': '4500731', 'mrp': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png', 'tray_id': '23'}], 'rstatus': True, 'logic': 'WBL', 'orderId': 'TM03202401260825165027426', 'anomaly': 0, 'res': 'true'}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825165027426'}}
[2026-08-25 16:56:20,257.257 INFO    ] 2026-08-25 16:56:20
[2026-08-25 16:56:32,176.176 INFO    ] 200
[2026-08-25 16:56:32,184.184 INFO    ] {"orders_synced": ["TM08202201221219113218412", "TM08202201221219113450682", "TM08202201221219113655840", "TM08202201221219113744745", "TM08202201221219113937222", "TM08202201221219114025514", "TM08202201221219114115160", "TM08202201221219114248917", "TM08202201221219114542831", "TM08202201221219114641293", "TM08202201221219115003395", "TM08202201221219115146593", "TM08202201221219115248147", "TM08202201221219115644614", "TM08202201221219120931522", "TM08202201221219121106227", "TM08202201221219121348993", "TM08202201221219122813834", "TM08202201221219122906185", "TM08202201221228135449188", "TM08202201221228135537383", "TM08202201221228135632776", "TM08202201221229094326197", "TM08202201221229094418622", "TM08202201221229094510239", "TM08202201221229094553791", "TM08202201221229094641323", "TM08202201221229133207138", "TM08202201221229133251564", "TM08202201221229133420331", "TM08202201221229133957667", "TM08202201221229134115529", "TM08202201221229134222164", "TM08202201221229164418620", "TM08202201221230112814282", "TM08202201221230135208991", "TM08202201230103132647593", "TM08202201230103140355981", "TM08202201230103153914555", "TM08202201230103164711484", "TM08202201230104104419460", "TM08202201230109145251784", "TM08202201230201110605942", "TM08202201230202085330831", "TM08202201230202090449190", "TM08202201230217175905383", "TM08202201230220183652764", "TM08202201230227153633830", "TM06202304230615192111045", "TM06202304230623120159705", "TM06202304230623120333811", "TM06202304230623133658760", "TM06202304250610165735127", "TM06202304250624103203715", "TM03202401260819174013487"], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": ["TM03202401260825165027426_0"], "order_items": [], "tray_synced": ["TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426", "TM03202401260825165027426"], "status": true}
[2026-08-25 16:56:32,188.188 INFO    ] 2026-08-25 16:56:32
[2026-08-25 16:56:32,310.310 INFO    ] 200
[2026-08-25 16:56:32,313.313 INFO    ] True
[2026-08-25 16:56:32,316.316 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825165027426
[2026-08-25 16:56:32,322.322 INFO    ] start order file deleted
[2026-08-25 16:56:32,326.326 INFO    ] Checking for system updates...
[2026-08-25 16:56:32,367.367 INFO    ] 200
[2026-08-25 16:56:32,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:56:32,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:56:32,438.438 INFO    ] No update needed
[2026-08-25 16:56:32,441.441 INFO    ] Checking for camera pi updates...
[2026-08-25 16:56:32,479.479 INFO    ] 200
[2026-08-25 16:56:32,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:56:32,528.528 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:56:32,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:56:32,593.593 INFO    ] No camera update needed
[2026-08-25 16:56:32,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:56:32,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:56:32,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:56:32,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:56:34,658.658 INFO    ] ================================================
[2026-08-25 16:56:34,673.673 INFO    ] Launching Daemon at Tue Aug 25 16:56:34 IST 2026
[2026-08-25 16:56:34,684.684 INFO    ] ================================================
[2026-08-25 16:56:35,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:56:35
[2026-08-25 16:56:35,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:56:36,114.114 INFO    ] Initializing speech engine...
[2026-08-25 16:56:36,128.128 INFO    ] 2026-08-25 16:56:36
[2026-08-25 16:56:36,416.416 INFO    ] 2026-08-25 16:56:36
[2026-08-25 16:56:36,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:56:36,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:56:36,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:56:36,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:56:36,841.841 INFO    ] time= 25/08/2026 16:56:36
[2026-08-25 16:56:36,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:56:36,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:56:37,007.007 INFO    ] No existing commands found in stream
[2026-08-25 16:56:42,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:56:42,040.040 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 16:56:43,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:56:43,444.444 INFO    ] Checking for system updates...
[2026-08-25 16:56:43,479.479 INFO    ] 200
[2026-08-25 16:56:43,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:56:43,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:56:43,536.536 INFO    ] No update needed
[2026-08-25 16:56:43,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 16:56:43,573.573 INFO    ] 200
[2026-08-25 16:56:43,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:56:43,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:56:43,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:56:43,693.693 INFO    ] No camera update needed
[2026-08-25 16:56:43,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:56:43,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:56:43,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:56:43,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:56:45,748.748 INFO    ] ================================================
[2026-08-25 16:56:45,763.763 INFO    ] Launching Daemon at Tue Aug 25 16:56:45 IST 2026
[2026-08-25 16:56:45,773.773 INFO    ] ================================================
[2026-08-25 16:56:46,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:56:46
[2026-08-25 16:56:46,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:56:47,189.189 INFO    ] Initializing speech engine...
[2026-08-25 16:56:47,219.219 INFO    ] 2026-08-25 16:56:47
[2026-08-25 16:56:47,491.491 INFO    ] 2026-08-25 16:56:47
[2026-08-25 16:56:47,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:56:47,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:56:47,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:56:47,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:56:47,909.909 INFO    ] time= 25/08/2026 16:56:47
[2026-08-25 16:56:47,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:56:47,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:56:47,998.998 INFO    ] No existing commands found in stream
[2026-08-25 16:56:53,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:56:53,014.014 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 16:56:54,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:56:54,751.751 INFO    ] Checking for system updates...
[2026-08-25 16:56:54,787.787 INFO    ] 200
[2026-08-25 16:56:54,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:56:54,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:56:54,843.843 INFO    ] No update needed
[2026-08-25 16:56:54,846.846 INFO    ] Checking for camera pi updates...
[2026-08-25 16:56:54,879.879 INFO    ] 200
[2026-08-25 16:56:54,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:56:54,921.921 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:56:54,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:56:54,968.968 INFO    ] No camera update needed
[2026-08-25 16:56:54,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:56:54,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:56:54,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:56:54,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:56:57,024.024 INFO    ] ================================================
[2026-08-25 16:56:57,040.040 INFO    ] Launching Daemon at Tue Aug 25 16:56:57 IST 2026
[2026-08-25 16:56:57,050.050 INFO    ] ================================================
[2026-08-25 16:56:57,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:56:57
[2026-08-25 16:56:58,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:56:58,504.504 INFO    ] Initializing speech engine...
[2026-08-25 16:56:58,515.515 INFO    ] 2026-08-25 16:56:58
[2026-08-25 16:56:58,776.776 INFO    ] 2026-08-25 16:56:58
[2026-08-25 16:56:58,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:56:59,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:56:59,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:56:59,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:56:59,248.248 INFO    ] time= 25/08/2026 16:56:59
[2026-08-25 16:56:59,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:56:59,327.327 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:56:59,472.472 INFO    ] No existing commands found in stream
[2026-08-25 16:57:04,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:57:04,495.495 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 16:57:06,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 16:57:06,110.110 INFO    ] Checking for system updates...
[2026-08-25 16:57:06,146.146 INFO    ] 200
[2026-08-25 16:57:06,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:06,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:06,204.204 INFO    ] No update needed
[2026-08-25 16:57:06,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 16:57:06,240.240 INFO    ] 200
[2026-08-25 16:57:06,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:06,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:57:06,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:06,335.335 INFO    ] No camera update needed
[2026-08-25 16:57:06,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:57:06,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:57:06,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:57:06,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:57:08,392.392 INFO    ] ================================================
[2026-08-25 16:57:08,407.407 INFO    ] Launching Daemon at Tue Aug 25 16:57:08 IST 2026
[2026-08-25 16:57:08,418.418 INFO    ] ================================================
[2026-08-25 16:57:08,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:57:08
[2026-08-25 16:57:09,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:57:09,870.870 INFO    ] Initializing speech engine...
[2026-08-25 16:57:09,879.879 INFO    ] 2026-08-25 16:57:09
[2026-08-25 16:57:10,140.140 INFO    ] 2026-08-25 16:57:10
[2026-08-25 16:57:10,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:57:10,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:57:10,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:57:10,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:57:10,599.599 INFO    ] time= 25/08/2026 16:57:10
[2026-08-25 16:57:10,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:57:10,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:57:10,819.819 INFO    ] No existing commands found in stream
[2026-08-25 16:57:15,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:57:15,849.849 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 16:57:19,572.572 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:57:19,575.575 INFO    ] Checking for system updates...
[2026-08-25 16:57:19,613.613 INFO    ] 200
[2026-08-25 16:57:19,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:19,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:19,673.673 INFO    ] No update needed
[2026-08-25 16:57:19,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 16:57:19,711.711 INFO    ] 200
[2026-08-25 16:57:19,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:19,755.755 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:57:19,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:19,805.805 INFO    ] No camera update needed
[2026-08-25 16:57:19,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:57:19,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:57:19,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:57:19,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:57:21,863.863 INFO    ] ================================================
[2026-08-25 16:57:21,881.881 INFO    ] Launching Daemon at Tue Aug 25 16:57:21 IST 2026
[2026-08-25 16:57:21,902.902 INFO    ] ================================================
[2026-08-25 16:57:22,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:57:22
[2026-08-25 16:57:23,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:57:23,388.388 INFO    ] Initializing speech engine...
[2026-08-25 16:57:23,394.394 INFO    ] 2026-08-25 16:57:23
[2026-08-25 16:57:23,654.654 INFO    ] 2026-08-25 16:57:23
[2026-08-25 16:57:23,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:57:23,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:57:23,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:57:24,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:57:24,200.200 INFO    ] time= 25/08/2026 16:57:24
[2026-08-25 16:57:24,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:57:24,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:57:24,353.353 INFO    ] No existing commands found in stream
[2026-08-25 16:57:29,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:57:29,369.369 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 16:57:31,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:57:31,467.467 INFO    ] Checking for system updates...
[2026-08-25 16:57:31,513.513 INFO    ] 200
[2026-08-25 16:57:31,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:31,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:31,575.575 INFO    ] No update needed
[2026-08-25 16:57:31,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 16:57:31,611.611 INFO    ] 200
[2026-08-25 16:57:31,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:31,653.653 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:57:31,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:31,811.811 INFO    ] No camera update needed
[2026-08-25 16:57:31,814.814 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:57:31,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:57:31,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:57:31,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:57:33,871.871 INFO    ] ================================================
[2026-08-25 16:57:33,886.886 INFO    ] Launching Daemon at Tue Aug 25 16:57:33 IST 2026
[2026-08-25 16:57:33,897.897 INFO    ] ================================================
[2026-08-25 16:57:34,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:57:34
[2026-08-25 16:57:35,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:57:35,490.490 INFO    ] Initializing speech engine...
[2026-08-25 16:57:35,502.502 INFO    ] 2026-08-25 16:57:35
[2026-08-25 16:57:35,813.813 INFO    ] 2026-08-25 16:57:35
[2026-08-25 16:57:35,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:57:36,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:57:36,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:57:36,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:57:36,506.506 INFO    ] time= 25/08/2026 16:57:36
[2026-08-25 16:57:36,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:57:36,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:57:36,759.759 INFO    ] No existing commands found in stream
[2026-08-25 16:57:41,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:57:41,783.783 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 16:57:45,948.948 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:57:45,951.951 INFO    ] Checking for system updates...
[2026-08-25 16:57:45,987.987 INFO    ] 200
[2026-08-25 16:57:45,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:46,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:57:46,048.048 INFO    ] No update needed
[2026-08-25 16:57:46,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 16:57:46,084.084 INFO    ] 200
[2026-08-25 16:57:46,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:46,132.132 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:57:46,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:57:46,198.198 INFO    ] No camera update needed
[2026-08-25 16:57:46,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:57:46,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:57:46,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:57:46,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:57:48,253.253 INFO    ] ================================================
[2026-08-25 16:57:48,268.268 INFO    ] Launching Daemon at Tue Aug 25 16:57:48 IST 2026
[2026-08-25 16:57:48,279.279 INFO    ] ================================================
[2026-08-25 16:57:48,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:57:48
[2026-08-25 16:57:49,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:57:49,838.838 INFO    ] Initializing speech engine...
[2026-08-25 16:57:49,846.846 INFO    ] 2026-08-25 16:57:49
[2026-08-25 16:57:50,148.148 INFO    ] 2026-08-25 16:57:50
[2026-08-25 16:57:50,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:57:50,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:57:50,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:57:50,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:57:50,582.582 INFO    ] time= 25/08/2026 16:57:50
[2026-08-25 16:57:50,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:57:50,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:57:50,767.767 INFO    ] No existing commands found in stream
[2026-08-25 16:57:55,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:57:55,796.796 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 16:57:57,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:57:57,154.154 INFO    ] Checking for system updates...
[2026-08-25 16:57:57,190.190 INFO    ] 200
[2026-08-25 16:57:57,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:57,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:57,247.247 INFO    ] No update needed
[2026-08-25 16:57:57,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 16:57:57,291.291 INFO    ] 200
[2026-08-25 16:57:57,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:57:57,333.333 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:57:57,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:57:57,385.385 INFO    ] No camera update needed
[2026-08-25 16:57:57,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:57:57,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:57:57,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:57:57,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:57:59,439.439 INFO    ] ================================================
[2026-08-25 16:57:59,454.454 INFO    ] Launching Daemon at Tue Aug 25 16:57:59 IST 2026
[2026-08-25 16:57:59,465.465 INFO    ] ================================================
[2026-08-25 16:58:00,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:58:00
[2026-08-25 16:58:00,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:58:01,023.023 INFO    ] Initializing speech engine...
[2026-08-25 16:58:01,032.032 INFO    ] 2026-08-25 16:58:01
[2026-08-25 16:58:01,304.304 INFO    ] 2026-08-25 16:58:01
[2026-08-25 16:58:01,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:58:01,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:58:01,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:58:01,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:58:01,777.777 INFO    ] time= 25/08/2026 16:58:01
[2026-08-25 16:58:01,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:58:01,799.799 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:58:01,875.875 INFO    ] No existing commands found in stream
[2026-08-25 16:58:06,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:58:06,898.898 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 16:58:08,304.304 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 16:58:08,307.307 INFO    ] Checking for system updates...
[2026-08-25 16:58:08,342.342 INFO    ] 200
[2026-08-25 16:58:08,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:08,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:58:08,399.399 INFO    ] No update needed
[2026-08-25 16:58:08,401.401 INFO    ] Checking for camera pi updates...
[2026-08-25 16:58:08,435.435 INFO    ] 200
[2026-08-25 16:58:08,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:08,477.477 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:58:08,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:58:08,522.522 INFO    ] No camera update needed
[2026-08-25 16:58:08,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:58:08,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:58:08,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:58:08,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:58:10,577.577 INFO    ] ================================================
[2026-08-25 16:58:10,592.592 INFO    ] Launching Daemon at Tue Aug 25 16:58:10 IST 2026
[2026-08-25 16:58:10,602.602 INFO    ] ================================================
[2026-08-25 16:58:11,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:58:11
[2026-08-25 16:58:11,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:58:12,066.066 INFO    ] Initializing speech engine...
[2026-08-25 16:58:12,076.076 INFO    ] 2026-08-25 16:58:12
[2026-08-25 16:58:12,343.343 INFO    ] 2026-08-25 16:58:12
[2026-08-25 16:58:12,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:58:12,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:58:12,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:58:12,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:58:12,848.848 INFO    ] time= 25/08/2026 16:58:12
[2026-08-25 16:58:12,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:58:12,913.913 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:58:13,060.060 INFO    ] No existing commands found in stream
[2026-08-25 16:58:18,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:58:18,091.091 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 16:58:20,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:58:20,377.377 INFO    ] Checking for system updates...
[2026-08-25 16:58:20,418.418 INFO    ] 200
[2026-08-25 16:58:20,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:20,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:58:20,476.476 INFO    ] No update needed
[2026-08-25 16:58:20,479.479 INFO    ] Checking for camera pi updates...
[2026-08-25 16:58:20,515.515 INFO    ] 200
[2026-08-25 16:58:20,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:20,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:58:20,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:58:20,609.609 INFO    ] No camera update needed
[2026-08-25 16:58:20,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:58:20,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:58:20,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:58:20,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:58:22,668.668 INFO    ] ================================================
[2026-08-25 16:58:22,682.682 INFO    ] Launching Daemon at Tue Aug 25 16:58:22 IST 2026
[2026-08-25 16:58:22,693.693 INFO    ] ================================================
[2026-08-25 16:58:23,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:58:23
[2026-08-25 16:58:23,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:58:24,142.142 INFO    ] Initializing speech engine...
[2026-08-25 16:58:24,152.152 INFO    ] 2026-08-25 16:58:24
[2026-08-25 16:58:24,397.397 INFO    ] 2026-08-25 16:58:24
[2026-08-25 16:58:24,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:58:24,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:58:24,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:58:24,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:58:24,874.874 INFO    ] time= 25/08/2026 16:58:24
[2026-08-25 16:58:24,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:58:24,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:58:24,996.996 INFO    ] No existing commands found in stream
[2026-08-25 16:58:30,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:58:30,015.015 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 16:58:32,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:58:32,099.099 INFO    ] Checking for system updates...
[2026-08-25 16:58:32,137.137 INFO    ] 200
[2026-08-25 16:58:32,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:32,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:58:32,203.203 INFO    ] No update needed
[2026-08-25 16:58:32,206.206 INFO    ] Checking for camera pi updates...
[2026-08-25 16:58:32,240.240 INFO    ] 200
[2026-08-25 16:58:32,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:32,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:58:32,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:58:32,367.367 INFO    ] No camera update needed
[2026-08-25 16:58:32,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:58:32,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:58:32,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:58:32,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:58:34,427.427 INFO    ] ================================================
[2026-08-25 16:58:34,442.442 INFO    ] Launching Daemon at Tue Aug 25 16:58:34 IST 2026
[2026-08-25 16:58:34,453.453 INFO    ] ================================================
[2026-08-25 16:58:35,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:58:35
[2026-08-25 16:58:35,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:58:35,906.906 INFO    ] Initializing speech engine...
[2026-08-25 16:58:35,915.915 INFO    ] 2026-08-25 16:58:35
[2026-08-25 16:58:36,165.165 INFO    ] 2026-08-25 16:58:36
[2026-08-25 16:58:36,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:58:36,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:58:36,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:58:36,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:58:36,650.650 INFO    ] time= 25/08/2026 16:58:36
[2026-08-25 16:58:36,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:58:36,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:58:36,871.871 INFO    ] No existing commands found in stream
[2026-08-25 16:58:41,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:58:41,888.888 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 16:58:42,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 16:58:42,704.704 INFO    ] Checking for system updates...
[2026-08-25 16:58:42,739.739 INFO    ] 200
[2026-08-25 16:58:42,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:42,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:58:42,804.804 INFO    ] No update needed
[2026-08-25 16:58:42,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 16:58:42,844.844 INFO    ] 200
[2026-08-25 16:58:42,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:58:42,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:58:42,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:58:42,937.937 INFO    ] No camera update needed
[2026-08-25 16:58:42,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:58:42,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:58:42,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:58:42,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:58:44,992.992 INFO    ] ================================================
[2026-08-25 16:58:45,007.007 INFO    ] Launching Daemon at Tue Aug 25 16:58:45 IST 2026
[2026-08-25 16:58:45,018.018 INFO    ] ================================================
[2026-08-25 16:58:45,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:58:45
[2026-08-25 16:58:46,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:58:46,472.472 INFO    ] Initializing speech engine...
[2026-08-25 16:58:46,479.479 INFO    ] 2026-08-25 16:58:46
[2026-08-25 16:58:46,741.741 INFO    ] 2026-08-25 16:58:46
[2026-08-25 16:58:46,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:58:47,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:58:47,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:58:47,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:58:47,251.251 INFO    ] time= 25/08/2026 16:58:47
[2026-08-25 16:58:47,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:58:47,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:58:47,438.438 INFO    ] No existing commands found in stream
[2026-08-25 16:58:52,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:58:52,456.456 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 16:59:00,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:59:00,871.871 INFO    ] Checking for system updates...
[2026-08-25 16:59:00,906.906 INFO    ] 200
[2026-08-25 16:59:00,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:00,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:59:00,963.963 INFO    ] No update needed
[2026-08-25 16:59:00,966.966 INFO    ] Checking for camera pi updates...
[2026-08-25 16:59:00,999.999 INFO    ] 200
[2026-08-25 16:59:01,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:01,043.043 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:59:01,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 16:59:01,095.095 INFO    ] No camera update needed
[2026-08-25 16:59:01,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:59:01,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:59:01,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:59:01,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:59:03,162.162 INFO    ] ================================================
[2026-08-25 16:59:03,189.189 INFO    ] Launching Daemon at Tue Aug 25 16:59:03 IST 2026
[2026-08-25 16:59:03,201.201 INFO    ] ================================================
[2026-08-25 16:59:03,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:59:03
[2026-08-25 16:59:04,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:59:04,666.666 INFO    ] Initializing speech engine...
[2026-08-25 16:59:04,681.681 INFO    ] 2026-08-25 16:59:04
[2026-08-25 16:59:04,947.947 INFO    ] 2026-08-25 16:59:04
[2026-08-25 16:59:04,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:59:05,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:59:05,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:59:05,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:59:05,406.406 INFO    ] time= 25/08/2026 16:59:05
[2026-08-25 16:59:05,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:59:05,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:59:05,642.642 INFO    ] No existing commands found in stream
[2026-08-25 16:59:10,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:59:10,664.664 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 16:59:21,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 16:59:21,758.758 INFO    ] Checking for system updates...
[2026-08-25 16:59:21,795.795 INFO    ] 200
[2026-08-25 16:59:21,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:21,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:59:21,855.855 INFO    ] No update needed
[2026-08-25 16:59:21,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 16:59:21,897.897 INFO    ] 200
[2026-08-25 16:59:21,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:21,947.947 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:59:22,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:59:22,010.010 INFO    ] No camera update needed
[2026-08-25 16:59:22,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:59:22,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:59:22,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:59:22,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:59:24,070.070 INFO    ] ================================================
[2026-08-25 16:59:24,086.086 INFO    ] Launching Daemon at Tue Aug 25 16:59:24 IST 2026
[2026-08-25 16:59:24,098.098 INFO    ] ================================================
[2026-08-25 16:59:24,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:59:24
[2026-08-25 16:59:25,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:59:25,513.513 INFO    ] Initializing speech engine...
[2026-08-25 16:59:25,522.522 INFO    ] 2026-08-25 16:59:25
[2026-08-25 16:59:25,771.771 INFO    ] 2026-08-25 16:59:25
[2026-08-25 16:59:25,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:59:26,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:59:26,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:59:26,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:59:26,266.266 INFO    ] time= 25/08/2026 16:59:26
[2026-08-25 16:59:26,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:59:26,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:59:26,470.470 INFO    ] No existing commands found in stream
[2026-08-25 16:59:31,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:59:31,498.498 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 16:59:36,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 16:59:36,833.833 INFO    ] Checking for system updates...
[2026-08-25 16:59:36,872.872 INFO    ] 200
[2026-08-25 16:59:36,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:36,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:59:36,936.936 INFO    ] No update needed
[2026-08-25 16:59:36,939.939 INFO    ] Checking for camera pi updates...
[2026-08-25 16:59:36,976.976 INFO    ] 200
[2026-08-25 16:59:36,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:37,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:59:37,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:59:37,165.165 INFO    ] No camera update needed
[2026-08-25 16:59:37,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:59:37,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:59:37,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:59:37,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:59:39,221.221 INFO    ] ================================================
[2026-08-25 16:59:39,238.238 INFO    ] Launching Daemon at Tue Aug 25 16:59:39 IST 2026
[2026-08-25 16:59:39,249.249 INFO    ] ================================================
[2026-08-25 16:59:39,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:59:39
[2026-08-25 16:59:40,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:59:40,744.744 INFO    ] Initializing speech engine...
[2026-08-25 16:59:40,753.753 INFO    ] 2026-08-25 16:59:40
[2026-08-25 16:59:41,017.017 INFO    ] 2026-08-25 16:59:41
[2026-08-25 16:59:41,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:59:41,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:59:41,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:59:41,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:59:41,560.560 INFO    ] time= 25/08/2026 16:59:41
[2026-08-25 16:59:41,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:59:41,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:59:41,713.713 INFO    ] No existing commands found in stream
[2026-08-25 16:59:46,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 16:59:46,729.729 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 16:59:50,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 16:59:50,791.791 INFO    ] Checking for system updates...
[2026-08-25 16:59:50,826.826 INFO    ] 200
[2026-08-25 16:59:50,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:50,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:59:50,883.883 INFO    ] No update needed
[2026-08-25 16:59:50,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 16:59:50,929.929 INFO    ] 200
[2026-08-25 16:59:50,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 16:59:50,975.975 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 16:59:51,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 16:59:51,036.036 INFO    ] No camera update needed
[2026-08-25 16:59:51,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-25 16:59:51,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 16:59:51,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 16:59:51,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 16:59:53,092.092 INFO    ] ================================================
[2026-08-25 16:59:53,109.109 INFO    ] Launching Daemon at Tue Aug 25 16:59:53 IST 2026
[2026-08-25 16:59:53,121.121 INFO    ] ================================================
[2026-08-25 16:59:53,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 16:59:53
[2026-08-25 16:59:54,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 16:59:54,551.551 INFO    ] Initializing speech engine...
[2026-08-25 16:59:54,558.558 INFO    ] 2026-08-25 16:59:54
[2026-08-25 16:59:54,801.801 INFO    ] 2026-08-25 16:59:54
[2026-08-25 16:59:54,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 16:59:55,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 16:59:55,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 16:59:55,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 16:59:55,300.300 INFO    ] time= 25/08/2026 16:59:55
[2026-08-25 16:59:55,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 16:59:55,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-25 16:59:55,492.492 INFO    ] No existing commands found in stream
[2026-08-25 17:00:00,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:00:00,520.520 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 17:00:13,119.119 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-25 17:00:13,159.159 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-25 17:00:13,168.168 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-25 17:00:13,188.188 INFO    ] None
[2026-08-25 17:00:13,191.191 INFO    ] Checking for system updates...
[2026-08-25 17:00:13,232.232 INFO    ] 200
[2026-08-25 17:00:13,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:00:13,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:00:13,290.290 INFO    ] No update needed
[2026-08-25 17:00:13,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 17:00:13,331.331 INFO    ] 200
[2026-08-25 17:00:13,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:00:13,379.379 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:00:13,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:00:13,431.431 INFO    ] No camera update needed
[2026-08-25 17:00:13,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:00:13,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:00:13,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:00:13,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:00:15,488.488 INFO    ] ================================================
[2026-08-25 17:00:15,503.503 INFO    ] Launching Daemon at Tue Aug 25 17:00:15 IST 2026
[2026-08-25 17:00:15,514.514 INFO    ] ================================================
[2026-08-25 17:00:16,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:00:16
[2026-08-25 17:00:16,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:00:17,009.009 INFO    ] Initializing speech engine...
[2026-08-25 17:00:17,015.015 INFO    ] 2026-08-25 17:00:17
[2026-08-25 17:00:17,318.318 INFO    ] 2026-08-25 17:00:17
[2026-08-25 17:00:17,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:00:17,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:00:17,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:00:17,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:00:17,797.797 INFO    ] time= 25/08/2026 17:00:17
[2026-08-25 17:00:17,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:00:17,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:00:18,009.009 INFO    ] No existing commands found in stream
[2026-08-25 17:00:23,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:00:23,042.042 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 17:00:35,230.230 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-08-25 17:00:35,258.258 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-08-25 17:00:35,267.267 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM03202401 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-08-25 17:00:35,287.287 INFO    ] None
[2026-08-25 17:00:35,289.289 INFO    ] Checking for system updates...
[2026-08-25 17:00:35,330.330 INFO    ] 200
[2026-08-25 17:00:35,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:00:35,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:00:35,387.387 INFO    ] No update needed
[2026-08-25 17:00:35,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 17:00:35,427.427 INFO    ] 200
[2026-08-25 17:00:35,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:00:35,469.469 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:00:35,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:00:35,537.537 INFO    ] No camera update needed
[2026-08-25 17:00:35,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:00:35,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:00:35,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:00:35,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:00:37,593.593 INFO    ] ================================================
[2026-08-25 17:00:37,608.608 INFO    ] Launching Daemon at Tue Aug 25 17:00:37 IST 2026
[2026-08-25 17:00:37,619.619 INFO    ] ================================================
[2026-08-25 17:00:38,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:00:38
[2026-08-25 17:00:38,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:00:39,080.080 INFO    ] Initializing speech engine...
[2026-08-25 17:00:39,088.088 INFO    ] 2026-08-25 17:00:39
[2026-08-25 17:00:39,350.350 INFO    ] 2026-08-25 17:00:39
[2026-08-25 17:00:39,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:00:39,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:00:39,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:00:39,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:00:39,815.815 INFO    ] time= 25/08/2026 17:00:39
[2026-08-25 17:00:39,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:00:39,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:00:40,040.040 INFO    ] No existing commands found in stream
[2026-08-25 17:00:45,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:00:45,068.068 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 17:00:50,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:00:50,015.015 INFO    ] Checking for system updates...
[2026-08-25 17:00:50,051.051 INFO    ] 200
[2026-08-25 17:00:50,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:00:50,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:00:50,115.115 INFO    ] No update needed
[2026-08-25 17:00:50,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 17:00:50,151.151 INFO    ] 200
[2026-08-25 17:00:50,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:00:50,193.193 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:00:50,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:00:50,251.251 INFO    ] No camera update needed
[2026-08-25 17:00:50,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:00:50,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:00:50,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:00:50,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:00:52,307.307 INFO    ] ================================================
[2026-08-25 17:00:52,323.323 INFO    ] Launching Daemon at Tue Aug 25 17:00:52 IST 2026
[2026-08-25 17:00:52,334.334 INFO    ] ================================================
[2026-08-25 17:00:52,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:00:52
[2026-08-25 17:00:53,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:00:53,761.761 INFO    ] Initializing speech engine...
[2026-08-25 17:00:53,770.770 INFO    ] 2026-08-25 17:00:53
[2026-08-25 17:00:54,027.027 INFO    ] 2026-08-25 17:00:54
[2026-08-25 17:00:54,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:00:54,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:00:54,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:00:54,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:00:54,539.539 INFO    ] time= 25/08/2026 17:00:54
[2026-08-25 17:00:54,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:00:54,605.605 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:00:54,736.736 INFO    ] No existing commands found in stream
[2026-08-25 17:00:59,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:00:59,763.763 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 17:01:03,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:01:03,776.776 INFO    ] Checking for system updates...
[2026-08-25 17:01:03,811.811 INFO    ] 200
[2026-08-25 17:01:03,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:03,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:01:03,874.874 INFO    ] No update needed
[2026-08-25 17:01:03,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 17:01:03,913.913 INFO    ] 200
[2026-08-25 17:01:03,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:03,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:01:04,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:01:04,009.009 INFO    ] No camera update needed
[2026-08-25 17:01:04,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:01:04,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:01:04,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:01:04,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:01:06,063.063 INFO    ] ================================================
[2026-08-25 17:01:06,079.079 INFO    ] Launching Daemon at Tue Aug 25 17:01:06 IST 2026
[2026-08-25 17:01:06,089.089 INFO    ] ================================================
[2026-08-25 17:01:06,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:01:06
[2026-08-25 17:01:07,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:01:07,521.521 INFO    ] Initializing speech engine...
[2026-08-25 17:01:07,530.530 INFO    ] 2026-08-25 17:01:07
[2026-08-25 17:01:07,776.776 INFO    ] 2026-08-25 17:01:07
[2026-08-25 17:01:07,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:01:08,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:01:08,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:01:08,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:01:08,269.269 INFO    ] time= 25/08/2026 17:01:08
[2026-08-25 17:01:08,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:01:08,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:01:08,481.481 INFO    ] No existing commands found in stream
[2026-08-25 17:01:13,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:01:13,496.496 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 17:01:17,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:01:17,874.874 INFO    ] Checking for system updates...
[2026-08-25 17:01:17,909.909 INFO    ] 200
[2026-08-25 17:01:17,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:17,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:01:17,972.972 INFO    ] No update needed
[2026-08-25 17:01:17,974.974 INFO    ] Checking for camera pi updates...
[2026-08-25 17:01:18,008.008 INFO    ] 200
[2026-08-25 17:01:18,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:18,051.051 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:01:18,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:01:18,102.102 INFO    ] No camera update needed
[2026-08-25 17:01:18,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:01:18,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:01:18,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:01:18,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:01:20,163.163 INFO    ] ================================================
[2026-08-25 17:01:20,179.179 INFO    ] Launching Daemon at Tue Aug 25 17:01:20 IST 2026
[2026-08-25 17:01:20,190.190 INFO    ] ================================================
[2026-08-25 17:01:20,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:01:20
[2026-08-25 17:01:21,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:01:21,603.603 INFO    ] Initializing speech engine...
[2026-08-25 17:01:21,616.616 INFO    ] 2026-08-25 17:01:21
[2026-08-25 17:01:21,872.872 INFO    ] 2026-08-25 17:01:21
[2026-08-25 17:01:21,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:01:22,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:01:22,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:01:22,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:01:22,260.260 INFO    ] time= 25/08/2026 17:01:22
[2026-08-25 17:01:22,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:01:22,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:01:22,452.452 INFO    ] No existing commands found in stream
[2026-08-25 17:01:27,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:01:27,481.481 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 17:01:29,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:01:29,500.500 INFO    ] Checking for system updates...
[2026-08-25 17:01:29,539.539 INFO    ] 200
[2026-08-25 17:01:29,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:29,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:01:29,598.598 INFO    ] No update needed
[2026-08-25 17:01:29,600.600 INFO    ] Checking for camera pi updates...
[2026-08-25 17:01:29,633.633 INFO    ] 200
[2026-08-25 17:01:29,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:29,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:01:29,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:01:29,725.725 INFO    ] No camera update needed
[2026-08-25 17:01:29,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:01:29,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:01:29,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:01:29,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:01:31,784.784 INFO    ] ================================================
[2026-08-25 17:01:31,802.802 INFO    ] Launching Daemon at Tue Aug 25 17:01:31 IST 2026
[2026-08-25 17:01:31,814.814 INFO    ] ================================================
[2026-08-25 17:01:32,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:01:32
[2026-08-25 17:01:33,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:01:33,381.381 INFO    ] Initializing speech engine...
[2026-08-25 17:01:33,394.394 INFO    ] 2026-08-25 17:01:33
[2026-08-25 17:01:33,695.695 INFO    ] 2026-08-25 17:01:33
[2026-08-25 17:01:33,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:01:33,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:01:33,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:01:34,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:01:34,196.196 INFO    ] time= 25/08/2026 17:01:34
[2026-08-25 17:01:34,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:01:34,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:01:34,445.445 INFO    ] No existing commands found in stream
[2026-08-25 17:01:39,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:01:39,464.464 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 17:01:41,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:01:41,994.994 INFO    ] Checking for system updates...
[2026-08-25 17:01:42,032.032 INFO    ] 200
[2026-08-25 17:01:42,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:42,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:01:42,093.093 INFO    ] No update needed
[2026-08-25 17:01:42,096.096 INFO    ] Checking for camera pi updates...
[2026-08-25 17:01:42,131.131 INFO    ] 200
[2026-08-25 17:01:42,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:42,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:01:42,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:01:42,322.322 INFO    ] No camera update needed
[2026-08-25 17:01:42,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:01:42,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:01:42,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:01:42,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:01:44,378.378 INFO    ] ================================================
[2026-08-25 17:01:44,393.393 INFO    ] Launching Daemon at Tue Aug 25 17:01:44 IST 2026
[2026-08-25 17:01:44,404.404 INFO    ] ================================================
[2026-08-25 17:01:45,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:01:45
[2026-08-25 17:01:45,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:01:45,996.996 INFO    ] Initializing speech engine...
[2026-08-25 17:01:46,004.004 INFO    ] 2026-08-25 17:01:45
[2026-08-25 17:01:46,285.285 INFO    ] 2026-08-25 17:01:46
[2026-08-25 17:01:46,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:01:46,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:01:46,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:01:46,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:01:46,832.832 INFO    ] time= 25/08/2026 17:01:46
[2026-08-25 17:01:46,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:01:46,857.857 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:01:46,959.959 INFO    ] No existing commands found in stream
[2026-08-25 17:01:51,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:01:51,988.988 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 17:01:56,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:01:56,331.331 INFO    ] Checking for system updates...
[2026-08-25 17:01:56,369.369 INFO    ] 200
[2026-08-25 17:01:56,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:56,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:01:56,433.433 INFO    ] No update needed
[2026-08-25 17:01:56,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 17:01:56,473.473 INFO    ] 200
[2026-08-25 17:01:56,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:01:56,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:01:56,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:01:56,586.586 INFO    ] No camera update needed
[2026-08-25 17:01:56,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:01:56,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:01:56,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:01:56,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:01:58,645.645 INFO    ] ================================================
[2026-08-25 17:01:58,661.661 INFO    ] Launching Daemon at Tue Aug 25 17:01:58 IST 2026
[2026-08-25 17:01:58,672.672 INFO    ] ================================================
[2026-08-25 17:01:59,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:01:59
[2026-08-25 17:01:59,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:02:00,093.093 INFO    ] Initializing speech engine...
[2026-08-25 17:02:00,102.102 INFO    ] 2026-08-25 17:02:00
[2026-08-25 17:02:00,351.351 INFO    ] 2026-08-25 17:02:00
[2026-08-25 17:02:00,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:02:00,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:02:00,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:02:00,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:02:00,808.808 INFO    ] time= 25/08/2026 17:02:00
[2026-08-25 17:02:00,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:02:00,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:02:01,042.042 INFO    ] No existing commands found in stream
[2026-08-25 17:02:06,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:02:06,072.072 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 17:02:08,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:02:08,217.217 INFO    ] Checking for system updates...
[2026-08-25 17:02:08,254.254 INFO    ] 200
[2026-08-25 17:02:08,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:08,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:08,320.320 INFO    ] No update needed
[2026-08-25 17:02:08,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 17:02:08,357.357 INFO    ] 200
[2026-08-25 17:02:08,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:08,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:02:08,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:08,490.490 INFO    ] No camera update needed
[2026-08-25 17:02:08,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:02:08,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:02:08,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:02:08,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:02:10,548.548 INFO    ] ================================================
[2026-08-25 17:02:10,564.564 INFO    ] Launching Daemon at Tue Aug 25 17:02:10 IST 2026
[2026-08-25 17:02:10,575.575 INFO    ] ================================================
[2026-08-25 17:02:11,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:02:11
[2026-08-25 17:02:11,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:02:12,049.049 INFO    ] Initializing speech engine...
[2026-08-25 17:02:12,057.057 INFO    ] 2026-08-25 17:02:12
[2026-08-25 17:02:12,317.317 INFO    ] 2026-08-25 17:02:12
[2026-08-25 17:02:12,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:02:12,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:02:12,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:02:12,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:02:12,865.865 INFO    ] time= 25/08/2026 17:02:12
[2026-08-25 17:02:12,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:02:12,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:02:13,024.024 INFO    ] No existing commands found in stream
[2026-08-25 17:02:18,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:02:18,040.040 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 17:02:18,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:02:18,656.656 INFO    ] Checking for system updates...
[2026-08-25 17:02:18,696.696 INFO    ] 200
[2026-08-25 17:02:18,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:18,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:18,760.760 INFO    ] No update needed
[2026-08-25 17:02:18,763.763 INFO    ] Checking for camera pi updates...
[2026-08-25 17:02:18,798.798 INFO    ] 200
[2026-08-25 17:02:18,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:18,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:02:18,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:18,893.893 INFO    ] No camera update needed
[2026-08-25 17:02:18,896.896 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:02:18,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:02:18,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:02:18,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:02:20,951.951 INFO    ] ================================================
[2026-08-25 17:02:20,966.966 INFO    ] Launching Daemon at Tue Aug 25 17:02:20 IST 2026
[2026-08-25 17:02:20,977.977 INFO    ] ================================================
[2026-08-25 17:02:21,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:02:21
[2026-08-25 17:02:22,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:02:22,549.549 INFO    ] Initializing speech engine...
[2026-08-25 17:02:22,556.556 INFO    ] 2026-08-25 17:02:22
[2026-08-25 17:02:22,814.814 INFO    ] 2026-08-25 17:02:22
[2026-08-25 17:02:22,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:02:23,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:02:23,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:02:23,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:02:23,298.298 INFO    ] time= 25/08/2026 17:02:23
[2026-08-25 17:02:23,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:02:23,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:02:23,514.514 INFO    ] No existing commands found in stream
[2026-08-25 17:02:28,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:02:28,531.531 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 17:02:29,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:02:29,921.921 INFO    ] Checking for system updates...
[2026-08-25 17:02:29,958.958 INFO    ] 200
[2026-08-25 17:02:29,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:30,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:02:30,022.022 INFO    ] No update needed
[2026-08-25 17:02:30,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 17:02:30,061.061 INFO    ] 200
[2026-08-25 17:02:30,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:30,103.103 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:02:30,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:02:30,151.151 INFO    ] No camera update needed
[2026-08-25 17:02:30,154.154 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:02:30,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:02:30,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:02:30,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:02:32,209.209 INFO    ] ================================================
[2026-08-25 17:02:32,226.226 INFO    ] Launching Daemon at Tue Aug 25 17:02:32 IST 2026
[2026-08-25 17:02:32,239.239 INFO    ] ================================================
[2026-08-25 17:02:32,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:02:32
[2026-08-25 17:02:33,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:02:33,701.701 INFO    ] Initializing speech engine...
[2026-08-25 17:02:33,724.724 INFO    ] 2026-08-25 17:02:33
[2026-08-25 17:02:33,980.980 INFO    ] 2026-08-25 17:02:33
[2026-08-25 17:02:34,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:02:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:02:34,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:02:34,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:02:34,463.463 INFO    ] time= 25/08/2026 17:02:34
[2026-08-25 17:02:34,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:02:34,557.557 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:02:34,675.675 INFO    ] No existing commands found in stream
[2026-08-25 17:02:39,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:02:39,700.700 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 17:02:43,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:02:43,822.822 INFO    ] Checking for system updates...
[2026-08-25 17:02:43,866.866 INFO    ] 200
[2026-08-25 17:02:43,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:43,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:43,927.927 INFO    ] No update needed
[2026-08-25 17:02:43,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 17:02:43,964.964 INFO    ] 200
[2026-08-25 17:02:43,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:44,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:02:44,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:44,062.062 INFO    ] No camera update needed
[2026-08-25 17:02:44,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:02:44,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:02:44,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:02:44,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:02:46,116.116 INFO    ] ================================================
[2026-08-25 17:02:46,132.132 INFO    ] Launching Daemon at Tue Aug 25 17:02:46 IST 2026
[2026-08-25 17:02:46,143.143 INFO    ] ================================================
[2026-08-25 17:02:46,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:02:46
[2026-08-25 17:02:47,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:02:47,610.610 INFO    ] Initializing speech engine...
[2026-08-25 17:02:47,621.621 INFO    ] 2026-08-25 17:02:47
[2026-08-25 17:02:47,880.880 INFO    ] 2026-08-25 17:02:47
[2026-08-25 17:02:47,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:02:48,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:02:48,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:02:48,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:02:48,425.425 INFO    ] time= 25/08/2026 17:02:48
[2026-08-25 17:02:48,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:02:48,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:02:48,580.580 INFO    ] No existing commands found in stream
[2026-08-25 17:02:53,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:02:53,607.607 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 17:02:57,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:02:57,630.630 INFO    ] Checking for system updates...
[2026-08-25 17:02:57,668.668 INFO    ] 200
[2026-08-25 17:02:57,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:57,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:57,725.725 INFO    ] No update needed
[2026-08-25 17:02:57,727.727 INFO    ] Checking for camera pi updates...
[2026-08-25 17:02:57,768.768 INFO    ] 200
[2026-08-25 17:02:57,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:02:57,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:02:57,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:02:57,862.862 INFO    ] No camera update needed
[2026-08-25 17:02:57,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:02:57,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:02:57,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:02:57,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:02:59,916.916 INFO    ] ================================================
[2026-08-25 17:02:59,932.932 INFO    ] Launching Daemon at Tue Aug 25 17:02:59 IST 2026
[2026-08-25 17:02:59,944.944 INFO    ] ================================================
[2026-08-25 17:03:00,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:03:00
[2026-08-25 17:03:01,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:03:01,351.351 INFO    ] Initializing speech engine...
[2026-08-25 17:03:01,359.359 INFO    ] 2026-08-25 17:03:01
[2026-08-25 17:03:01,622.622 INFO    ] 2026-08-25 17:03:01
[2026-08-25 17:03:01,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:03:01,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:03:01,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:03:02,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:03:02,010.010 INFO    ] time= 25/08/2026 17:03:02
[2026-08-25 17:03:02,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:03:02,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:03:02,130.130 INFO    ] No existing commands found in stream
[2026-08-25 17:03:07,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:03:07,143.143 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 17:03:10,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:03:10,099.099 INFO    ] Checking for system updates...
[2026-08-25 17:03:10,138.138 INFO    ] 200
[2026-08-25 17:03:10,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:10,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:03:10,201.201 INFO    ] No update needed
[2026-08-25 17:03:10,204.204 INFO    ] Checking for camera pi updates...
[2026-08-25 17:03:10,240.240 INFO    ] 200
[2026-08-25 17:03:10,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:10,284.284 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:03:10,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:03:10,332.332 INFO    ] No camera update needed
[2026-08-25 17:03:10,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:03:10,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:03:10,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:03:10,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:03:12,386.386 INFO    ] ================================================
[2026-08-25 17:03:12,402.402 INFO    ] Launching Daemon at Tue Aug 25 17:03:12 IST 2026
[2026-08-25 17:03:12,412.412 INFO    ] ================================================
[2026-08-25 17:03:12,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:03:12
[2026-08-25 17:03:13,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:03:13,870.870 INFO    ] Initializing speech engine...
[2026-08-25 17:03:13,878.878 INFO    ] 2026-08-25 17:03:13
[2026-08-25 17:03:14,139.139 INFO    ] 2026-08-25 17:03:14
[2026-08-25 17:03:14,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:03:14,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:03:14,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:03:14,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:03:14,629.629 INFO    ] time= 25/08/2026 17:03:14
[2026-08-25 17:03:14,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:03:14,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:03:14,835.835 INFO    ] No existing commands found in stream
[2026-08-25 17:03:19,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:03:19,852.852 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 17:03:22,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:03:22,956.956 INFO    ] Checking for system updates...
[2026-08-25 17:03:22,994.994 INFO    ] 200
[2026-08-25 17:03:22,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:23,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:03:23,051.051 INFO    ] No update needed
[2026-08-25 17:03:23,054.054 INFO    ] Checking for camera pi updates...
[2026-08-25 17:03:23,087.087 INFO    ] 200
[2026-08-25 17:03:23,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:23,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:03:23,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:03:23,179.179 INFO    ] No camera update needed
[2026-08-25 17:03:23,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:03:23,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:03:23,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:03:23,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:03:25,233.233 INFO    ] ================================================
[2026-08-25 17:03:25,249.249 INFO    ] Launching Daemon at Tue Aug 25 17:03:25 IST 2026
[2026-08-25 17:03:25,260.260 INFO    ] ================================================
[2026-08-25 17:03:25,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:03:25
[2026-08-25 17:03:26,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:03:26,707.707 INFO    ] Initializing speech engine...
[2026-08-25 17:03:26,718.718 INFO    ] 2026-08-25 17:03:26
[2026-08-25 17:03:26,972.972 INFO    ] 2026-08-25 17:03:26
[2026-08-25 17:03:27,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:03:27,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:03:27,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:03:27,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:03:27,453.453 INFO    ] time= 25/08/2026 17:03:27
[2026-08-25 17:03:27,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:03:27,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:03:27,673.673 INFO    ] No existing commands found in stream
[2026-08-25 17:03:32,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:03:32,695.695 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 17:03:34,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:03:34,045.045 INFO    ] Checking for system updates...
[2026-08-25 17:03:34,087.087 INFO    ] 200
[2026-08-25 17:03:34,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:34,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:03:34,149.149 INFO    ] No update needed
[2026-08-25 17:03:34,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 17:03:34,185.185 INFO    ] 200
[2026-08-25 17:03:34,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:34,228.228 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:03:34,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:03:34,278.278 INFO    ] No camera update needed
[2026-08-25 17:03:34,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:03:34,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:03:34,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:03:34,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:03:36,334.334 INFO    ] ================================================
[2026-08-25 17:03:36,349.349 INFO    ] Launching Daemon at Tue Aug 25 17:03:36 IST 2026
[2026-08-25 17:03:36,360.360 INFO    ] ================================================
[2026-08-25 17:03:36,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:03:36
[2026-08-25 17:03:37,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:03:37,806.806 INFO    ] Initializing speech engine...
[2026-08-25 17:03:37,829.829 INFO    ] 2026-08-25 17:03:37
[2026-08-25 17:03:38,083.083 INFO    ] 2026-08-25 17:03:38
[2026-08-25 17:03:38,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:03:38,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:03:38,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:03:38,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:03:38,555.555 INFO    ] time= 25/08/2026 17:03:38
[2026-08-25 17:03:38,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:03:38,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:03:38,800.800 INFO    ] No existing commands found in stream
[2026-08-25 17:03:43,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:03:43,820.820 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 17:03:47,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:03:47,512.512 INFO    ] Checking for system updates...
[2026-08-25 17:03:47,551.551 INFO    ] 200
[2026-08-25 17:03:47,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:47,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:03:47,620.620 INFO    ] No update needed
[2026-08-25 17:03:47,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 17:03:47,657.657 INFO    ] 200
[2026-08-25 17:03:47,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:03:47,704.704 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:03:47,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:03:47,857.857 INFO    ] No camera update needed
[2026-08-25 17:03:47,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:03:47,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:03:47,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:03:47,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:03:49,913.913 INFO    ] ================================================
[2026-08-25 17:03:49,928.928 INFO    ] Launching Daemon at Tue Aug 25 17:03:49 IST 2026
[2026-08-25 17:03:49,938.938 INFO    ] ================================================
[2026-08-25 17:03:50,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:03:50
[2026-08-25 17:03:51,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:03:51,392.392 INFO    ] Initializing speech engine...
[2026-08-25 17:03:51,398.398 INFO    ] 2026-08-25 17:03:51
[2026-08-25 17:03:51,659.659 INFO    ] 2026-08-25 17:03:51
[2026-08-25 17:03:51,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:03:51,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:03:51,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:03:52,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:03:52,221.221 INFO    ] time= 25/08/2026 17:03:52
[2026-08-25 17:03:52,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:03:52,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:03:52,405.405 INFO    ] No existing commands found in stream
[2026-08-25 17:03:57,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:03:57,434.434 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 17:04:01,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:04:01,302.302 INFO    ] Checking for system updates...
[2026-08-25 17:04:01,337.337 INFO    ] 200
[2026-08-25 17:04:01,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:01,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:04:01,393.393 INFO    ] No update needed
[2026-08-25 17:04:01,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 17:04:01,434.434 INFO    ] 200
[2026-08-25 17:04:01,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:01,481.481 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:04:01,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:04:01,559.559 INFO    ] No camera update needed
[2026-08-25 17:04:01,562.562 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:04:01,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:04:01,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:04:01,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:04:03,619.619 INFO    ] ================================================
[2026-08-25 17:04:03,635.635 INFO    ] Launching Daemon at Tue Aug 25 17:04:03 IST 2026
[2026-08-25 17:04:03,646.646 INFO    ] ================================================
[2026-08-25 17:04:04,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:04:04
[2026-08-25 17:04:04,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:04:05,238.238 INFO    ] Initializing speech engine...
[2026-08-25 17:04:05,247.247 INFO    ] 2026-08-25 17:04:05
[2026-08-25 17:04:05,508.508 INFO    ] 2026-08-25 17:04:05
[2026-08-25 17:04:05,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:04:05,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:04:05,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:04:05,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:04:05,989.989 INFO    ] time= 25/08/2026 17:04:05
[2026-08-25 17:04:06,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:04:06,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:04:06,192.192 INFO    ] No existing commands found in stream
[2026-08-25 17:04:11,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:04:11,225.225 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 17:04:13,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:04:13,389.389 INFO    ] Checking for system updates...
[2026-08-25 17:04:13,428.428 INFO    ] 200
[2026-08-25 17:04:13,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:13,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:04:13,485.485 INFO    ] No update needed
[2026-08-25 17:04:13,488.488 INFO    ] Checking for camera pi updates...
[2026-08-25 17:04:13,526.526 INFO    ] 200
[2026-08-25 17:04:13,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:13,574.574 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:04:13,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:04:13,621.621 INFO    ] No camera update needed
[2026-08-25 17:04:13,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:04:13,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:04:13,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:04:13,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:04:15,679.679 INFO    ] ================================================
[2026-08-25 17:04:15,695.695 INFO    ] Launching Daemon at Tue Aug 25 17:04:15 IST 2026
[2026-08-25 17:04:15,706.706 INFO    ] ================================================
[2026-08-25 17:04:16,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:04:16
[2026-08-25 17:04:17,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:04:17,376.376 INFO    ] Initializing speech engine...
[2026-08-25 17:04:17,386.386 INFO    ] 2026-08-25 17:04:17
[2026-08-25 17:04:17,700.700 INFO    ] 2026-08-25 17:04:17
[2026-08-25 17:04:17,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:04:17,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:04:17,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:04:18,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:04:18,147.147 INFO    ] time= 25/08/2026 17:04:18
[2026-08-25 17:04:18,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:04:18,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:04:18,412.412 INFO    ] No existing commands found in stream
[2026-08-25 17:04:23,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:04:23,440.440 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 17:04:25,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:04:25,578.578 INFO    ] Checking for system updates...
[2026-08-25 17:04:25,615.615 INFO    ] 200
[2026-08-25 17:04:25,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:25,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:04:25,677.677 INFO    ] No update needed
[2026-08-25 17:04:25,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 17:04:25,712.712 INFO    ] 200
[2026-08-25 17:04:25,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:25,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:04:25,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:04:25,812.812 INFO    ] No camera update needed
[2026-08-25 17:04:25,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:04:25,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:04:25,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:04:25,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:04:27,870.870 INFO    ] ================================================
[2026-08-25 17:04:27,886.886 INFO    ] Launching Daemon at Tue Aug 25 17:04:27 IST 2026
[2026-08-25 17:04:27,897.897 INFO    ] ================================================
[2026-08-25 17:04:28,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:04:28
[2026-08-25 17:04:29,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:04:29,377.377 INFO    ] Initializing speech engine...
[2026-08-25 17:04:29,387.387 INFO    ] 2026-08-25 17:04:29
[2026-08-25 17:04:29,657.657 INFO    ] 2026-08-25 17:04:29
[2026-08-25 17:04:29,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:04:29,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:04:29,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:04:30,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:04:30,075.075 INFO    ] time= 25/08/2026 17:04:30
[2026-08-25 17:04:30,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:04:30,087.087 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:04:30,162.162 INFO    ] No existing commands found in stream
[2026-08-25 17:04:35,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:04:35,180.180 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 17:04:37,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:04:37,392.392 INFO    ] Checking for system updates...
[2026-08-25 17:04:37,431.431 INFO    ] 200
[2026-08-25 17:04:37,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:37,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:04:37,490.490 INFO    ] No update needed
[2026-08-25 17:04:37,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 17:04:37,532.532 INFO    ] 200
[2026-08-25 17:04:37,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:37,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:04:37,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:04:37,624.624 INFO    ] No camera update needed
[2026-08-25 17:04:37,627.627 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:04:37,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:04:37,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:04:37,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:04:39,680.680 INFO    ] ================================================
[2026-08-25 17:04:39,696.696 INFO    ] Launching Daemon at Tue Aug 25 17:04:39 IST 2026
[2026-08-25 17:04:39,708.708 INFO    ] ================================================
[2026-08-25 17:04:40,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:04:40
[2026-08-25 17:04:40,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:04:41,107.107 INFO    ] Initializing speech engine...
[2026-08-25 17:04:41,120.120 INFO    ] 2026-08-25 17:04:41
[2026-08-25 17:04:41,385.385 INFO    ] 2026-08-25 17:04:41
[2026-08-25 17:04:41,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:04:41,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:04:41,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:04:41,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:04:41,847.847 INFO    ] time= 25/08/2026 17:04:41
[2026-08-25 17:04:41,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:04:41,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:04:42,082.082 INFO    ] No existing commands found in stream
[2026-08-25 17:04:47,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:04:47,115.115 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 17:04:49,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:04:49,337.337 INFO    ] Checking for system updates...
[2026-08-25 17:04:49,373.373 INFO    ] 200
[2026-08-25 17:04:49,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:49,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:04:49,438.438 INFO    ] No update needed
[2026-08-25 17:04:49,440.440 INFO    ] Checking for camera pi updates...
[2026-08-25 17:04:49,477.477 INFO    ] 200
[2026-08-25 17:04:49,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:04:49,525.525 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:04:49,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:04:49,579.579 INFO    ] No camera update needed
[2026-08-25 17:04:49,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:04:49,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:04:49,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:04:49,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:04:51,637.637 INFO    ] ================================================
[2026-08-25 17:04:51,651.651 INFO    ] Launching Daemon at Tue Aug 25 17:04:51 IST 2026
[2026-08-25 17:04:51,663.663 INFO    ] ================================================
[2026-08-25 17:04:52,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:04:52
[2026-08-25 17:04:52,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:04:53,307.307 INFO    ] Initializing speech engine...
[2026-08-25 17:04:53,320.320 INFO    ] 2026-08-25 17:04:53
[2026-08-25 17:04:53,594.594 INFO    ] 2026-08-25 17:04:53
[2026-08-25 17:04:53,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:04:53,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:04:53,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:04:54,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:04:54,157.157 INFO    ] time= 25/08/2026 17:04:54
[2026-08-25 17:04:54,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:04:54,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:04:54,389.389 INFO    ] No existing commands found in stream
[2026-08-25 17:04:59,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:04:59,423.423 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 17:05:00,260.260 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:05:00,263.263 INFO    ] Checking for system updates...
[2026-08-25 17:05:00,299.299 INFO    ] 200
[2026-08-25 17:05:00,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:00,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:00,356.356 INFO    ] No update needed
[2026-08-25 17:05:00,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 17:05:00,397.397 INFO    ] 200
[2026-08-25 17:05:00,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:00,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:05:00,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:00,492.492 INFO    ] No camera update needed
[2026-08-25 17:05:00,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:05:00,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:05:00,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:05:00,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:05:02,551.551 INFO    ] ================================================
[2026-08-25 17:05:02,573.573 INFO    ] Launching Daemon at Tue Aug 25 17:05:02 IST 2026
[2026-08-25 17:05:02,589.589 INFO    ] ================================================
[2026-08-25 17:05:03,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:05:03
[2026-08-25 17:05:03,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:05:04,159.159 INFO    ] Initializing speech engine...
[2026-08-25 17:05:04,168.168 INFO    ] 2026-08-25 17:05:04
[2026-08-25 17:05:04,415.415 INFO    ] 2026-08-25 17:05:04
[2026-08-25 17:05:04,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:05:04,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:05:04,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:05:04,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:05:04,887.887 INFO    ] time= 25/08/2026 17:05:04
[2026-08-25 17:05:04,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:05:04,979.979 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:05:05,092.092 INFO    ] No existing commands found in stream
[2026-08-25 17:05:10,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:05:10,117.117 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 17:05:11,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:05:11,010.010 INFO    ] Checking for system updates...
[2026-08-25 17:05:11,050.050 INFO    ] 200
[2026-08-25 17:05:11,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:11,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:11,114.114 INFO    ] No update needed
[2026-08-25 17:05:11,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 17:05:11,150.150 INFO    ] 200
[2026-08-25 17:05:11,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:11,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:05:11,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:11,257.257 INFO    ] No camera update needed
[2026-08-25 17:05:11,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:05:11,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:05:11,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:05:11,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:05:13,314.314 INFO    ] ================================================
[2026-08-25 17:05:13,329.329 INFO    ] Launching Daemon at Tue Aug 25 17:05:13 IST 2026
[2026-08-25 17:05:13,341.341 INFO    ] ================================================
[2026-08-25 17:05:13,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:05:13
[2026-08-25 17:05:14,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:05:14,877.877 INFO    ] Initializing speech engine...
[2026-08-25 17:05:14,886.886 INFO    ] 2026-08-25 17:05:14
[2026-08-25 17:05:15,142.142 INFO    ] 2026-08-25 17:05:15
[2026-08-25 17:05:15,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:05:15,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:05:15,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:05:15,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:05:15,626.626 INFO    ] time= 25/08/2026 17:05:15
[2026-08-25 17:05:15,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:05:15,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:05:15,856.856 INFO    ] No existing commands found in stream
[2026-08-25 17:05:20,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:05:20,884.884 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 17:05:21,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:05:21,489.489 INFO    ] Checking for system updates...
[2026-08-25 17:05:21,526.526 INFO    ] 200
[2026-08-25 17:05:21,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:21,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:05:21,586.586 INFO    ] No update needed
[2026-08-25 17:05:21,589.589 INFO    ] Checking for camera pi updates...
[2026-08-25 17:05:21,628.628 INFO    ] 200
[2026-08-25 17:05:21,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:21,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:05:21,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:05:21,735.735 INFO    ] No camera update needed
[2026-08-25 17:05:21,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:05:21,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:05:21,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:05:21,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:05:23,796.796 INFO    ] ================================================
[2026-08-25 17:05:23,812.812 INFO    ] Launching Daemon at Tue Aug 25 17:05:23 IST 2026
[2026-08-25 17:05:23,824.824 INFO    ] ================================================
[2026-08-25 17:05:24,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:05:24
[2026-08-25 17:05:24,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:05:25,221.221 INFO    ] Initializing speech engine...
[2026-08-25 17:05:25,229.229 INFO    ] 2026-08-25 17:05:25
[2026-08-25 17:05:25,502.502 INFO    ] 2026-08-25 17:05:25
[2026-08-25 17:05:25,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:05:25,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:05:25,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:05:25,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:05:25,882.882 INFO    ] time= 25/08/2026 17:05:25
[2026-08-25 17:05:25,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:05:25,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:05:26,080.080 INFO    ] No existing commands found in stream
[2026-08-25 17:05:31,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:05:31,094.094 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 17:05:33,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:05:33,475.475 INFO    ] Checking for system updates...
[2026-08-25 17:05:33,513.513 INFO    ] 200
[2026-08-25 17:05:33,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:33,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:33,588.588 INFO    ] No update needed
[2026-08-25 17:05:33,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 17:05:33,627.627 INFO    ] 200
[2026-08-25 17:05:33,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:33,683.683 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:05:33,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:33,731.731 INFO    ] No camera update needed
[2026-08-25 17:05:33,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:05:33,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:05:33,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:05:33,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:05:35,797.797 INFO    ] ================================================
[2026-08-25 17:05:35,813.813 INFO    ] Launching Daemon at Tue Aug 25 17:05:35 IST 2026
[2026-08-25 17:05:35,825.825 INFO    ] ================================================
[2026-08-25 17:05:36,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:05:36
[2026-08-25 17:05:37,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:05:37,497.497 INFO    ] Initializing speech engine...
[2026-08-25 17:05:37,507.507 INFO    ] 2026-08-25 17:05:37
[2026-08-25 17:05:37,806.806 INFO    ] 2026-08-25 17:05:37
[2026-08-25 17:05:37,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:05:38,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:05:38,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:05:38,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:05:38,315.315 INFO    ] time= 25/08/2026 17:05:38
[2026-08-25 17:05:38,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:05:38,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:05:38,524.524 INFO    ] No existing commands found in stream
[2026-08-25 17:05:43,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:05:43,553.553 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 17:05:46,820.820 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:05:46,822.822 INFO    ] Checking for system updates...
[2026-08-25 17:05:46,864.864 INFO    ] 200
[2026-08-25 17:05:46,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:46,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:05:46,931.931 INFO    ] No update needed
[2026-08-25 17:05:46,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 17:05:46,973.973 INFO    ] 200
[2026-08-25 17:05:46,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:47,017.017 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:05:47,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:05:47,067.067 INFO    ] No camera update needed
[2026-08-25 17:05:47,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:05:47,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:05:47,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:05:47,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:05:49,127.127 INFO    ] ================================================
[2026-08-25 17:05:49,142.142 INFO    ] Launching Daemon at Tue Aug 25 17:05:49 IST 2026
[2026-08-25 17:05:49,155.155 INFO    ] ================================================
[2026-08-25 17:05:49,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:05:49
[2026-08-25 17:05:50,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:05:50,593.593 INFO    ] Initializing speech engine...
[2026-08-25 17:05:50,599.599 INFO    ] 2026-08-25 17:05:50
[2026-08-25 17:05:50,902.902 INFO    ] 2026-08-25 17:05:50
[2026-08-25 17:05:50,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:05:51,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:05:51,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:05:51,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:05:51,407.407 INFO    ] time= 25/08/2026 17:05:51
[2026-08-25 17:05:51,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:05:51,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:05:51,628.628 INFO    ] No existing commands found in stream
[2026-08-25 17:05:56,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:05:56,667.667 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 17:05:59,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:05:59,207.207 INFO    ] Checking for system updates...
[2026-08-25 17:05:59,242.242 INFO    ] 200
[2026-08-25 17:05:59,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:59,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:59,301.301 INFO    ] No update needed
[2026-08-25 17:05:59,303.303 INFO    ] Checking for camera pi updates...
[2026-08-25 17:05:59,336.336 INFO    ] 200
[2026-08-25 17:05:59,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:05:59,384.384 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:05:59,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:05:59,532.532 INFO    ] No camera update needed
[2026-08-25 17:05:59,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:05:59,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:05:59,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:05:59,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:06:01,590.590 INFO    ] ================================================
[2026-08-25 17:06:01,612.612 INFO    ] Launching Daemon at Tue Aug 25 17:06:01 IST 2026
[2026-08-25 17:06:01,625.625 INFO    ] ================================================
[2026-08-25 17:06:02,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:06:02
[2026-08-25 17:06:02,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:06:03,166.166 INFO    ] Initializing speech engine...
[2026-08-25 17:06:03,189.189 INFO    ] 2026-08-25 17:06:03
[2026-08-25 17:06:03,447.447 INFO    ] 2026-08-25 17:06:03
[2026-08-25 17:06:03,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:06:03,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:06:03,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:06:03,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:06:03,925.925 INFO    ] time= 25/08/2026 17:06:03
[2026-08-25 17:06:03,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:06:04,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:06:04,134.134 INFO    ] No existing commands found in stream
[2026-08-25 17:06:09,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:06:09,159.159 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 17:06:11,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:06:11,608.608 INFO    ] Checking for system updates...
[2026-08-25 17:06:11,642.642 INFO    ] 200
[2026-08-25 17:06:11,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:11,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:06:11,700.700 INFO    ] No update needed
[2026-08-25 17:06:11,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 17:06:11,735.735 INFO    ] 200
[2026-08-25 17:06:11,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:11,777.777 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:06:11,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:06:11,825.825 INFO    ] No camera update needed
[2026-08-25 17:06:11,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:06:11,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:06:11,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:06:11,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:06:13,884.884 INFO    ] ================================================
[2026-08-25 17:06:13,900.900 INFO    ] Launching Daemon at Tue Aug 25 17:06:13 IST 2026
[2026-08-25 17:06:13,911.911 INFO    ] ================================================
[2026-08-25 17:06:14,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:06:14
[2026-08-25 17:06:15,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:06:15,309.309 INFO    ] Initializing speech engine...
[2026-08-25 17:06:15,332.332 INFO    ] 2026-08-25 17:06:15
[2026-08-25 17:06:15,598.598 INFO    ] 2026-08-25 17:06:15
[2026-08-25 17:06:15,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:06:15,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:06:15,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:06:16,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:06:16,191.191 INFO    ] time= 25/08/2026 17:06:16
[2026-08-25 17:06:16,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:06:16,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:06:16,350.350 INFO    ] No existing commands found in stream
[2026-08-25 17:06:21,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:06:21,389.389 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 17:06:23,396.396 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:06:23,398.398 INFO    ] Checking for system updates...
[2026-08-25 17:06:23,435.435 INFO    ] 200
[2026-08-25 17:06:23,438.438 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:23,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:06:23,500.500 INFO    ] No update needed
[2026-08-25 17:06:23,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 17:06:23,540.540 INFO    ] 200
[2026-08-25 17:06:23,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:23,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:06:23,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:06:23,638.638 INFO    ] No camera update needed
[2026-08-25 17:06:23,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:06:23,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:06:23,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:06:23,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:06:25,695.695 INFO    ] ================================================
[2026-08-25 17:06:25,711.711 INFO    ] Launching Daemon at Tue Aug 25 17:06:25 IST 2026
[2026-08-25 17:06:25,723.723 INFO    ] ================================================
[2026-08-25 17:06:26,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:06:26
[2026-08-25 17:06:26,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:06:27,126.126 INFO    ] Initializing speech engine...
[2026-08-25 17:06:27,138.138 INFO    ] 2026-08-25 17:06:27
[2026-08-25 17:06:27,406.406 INFO    ] 2026-08-25 17:06:27
[2026-08-25 17:06:27,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:06:27,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:06:27,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:06:28,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:06:28,900.900 INFO    ] time= 25/08/2026 17:06:28
[2026-08-25 17:06:28,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:06:28,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:06:28,977.977 INFO    ] No existing commands found in stream
[2026-08-25 17:06:33,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:06:33,990.990 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 17:06:35,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:06:35,369.369 INFO    ] Checking for system updates...
[2026-08-25 17:06:35,404.404 INFO    ] 200
[2026-08-25 17:06:35,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:35,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:06:35,462.462 INFO    ] No update needed
[2026-08-25 17:06:35,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 17:06:35,512.512 INFO    ] 200
[2026-08-25 17:06:35,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:35,554.554 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:06:35,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:06:35,604.604 INFO    ] No camera update needed
[2026-08-25 17:06:35,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:06:35,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:06:35,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:06:35,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:06:37,660.660 INFO    ] ================================================
[2026-08-25 17:06:37,676.676 INFO    ] Launching Daemon at Tue Aug 25 17:06:37 IST 2026
[2026-08-25 17:06:37,687.687 INFO    ] ================================================
[2026-08-25 17:06:38,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:06:38
[2026-08-25 17:06:39,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:06:39,321.321 INFO    ] Initializing speech engine...
[2026-08-25 17:06:39,327.327 INFO    ] 2026-08-25 17:06:39
[2026-08-25 17:06:39,592.592 INFO    ] 2026-08-25 17:06:39
[2026-08-25 17:06:39,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:06:39,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:06:39,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:06:39,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:06:39,970.970 INFO    ] time= 25/08/2026 17:06:39
[2026-08-25 17:06:40,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:06:40,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:06:40,162.162 INFO    ] No existing commands found in stream
[2026-08-25 17:06:45,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:06:45,175.175 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 17:06:48,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:06:48,694.694 INFO    ] Checking for system updates...
[2026-08-25 17:06:48,729.729 INFO    ] 200
[2026-08-25 17:06:48,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:48,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:06:48,786.786 INFO    ] No update needed
[2026-08-25 17:06:48,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 17:06:48,821.821 INFO    ] 200
[2026-08-25 17:06:48,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:48,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:06:48,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:06:48,909.909 INFO    ] No camera update needed
[2026-08-25 17:06:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:06:48,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:06:48,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:06:48,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:06:50,966.966 INFO    ] ================================================
[2026-08-25 17:06:50,983.983 INFO    ] Launching Daemon at Tue Aug 25 17:06:50 IST 2026
[2026-08-25 17:06:51,995.995 INFO    ] ================================================
[2026-08-25 17:06:51,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:06:51
[2026-08-25 17:06:52,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:06:52,442.442 INFO    ] Initializing speech engine...
[2026-08-25 17:06:52,451.451 INFO    ] 2026-08-25 17:06:52
[2026-08-25 17:06:52,745.745 INFO    ] 2026-08-25 17:06:52
[2026-08-25 17:06:52,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:06:52,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:06:52,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:06:53,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:06:53,130.130 INFO    ] time= 25/08/2026 17:06:53
[2026-08-25 17:06:53,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:06:53,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:06:53,254.254 INFO    ] No existing commands found in stream
[2026-08-25 17:06:58,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:06:58,269.269 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 17:06:59,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:06:59,714.714 INFO    ] Checking for system updates...
[2026-08-25 17:06:59,754.754 INFO    ] 200
[2026-08-25 17:06:59,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:59,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:06:59,817.817 INFO    ] No update needed
[2026-08-25 17:06:59,819.819 INFO    ] Checking for camera pi updates...
[2026-08-25 17:06:59,860.860 INFO    ] 200
[2026-08-25 17:06:59,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:06:59,908.908 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:06:59,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:06:59,959.959 INFO    ] No camera update needed
[2026-08-25 17:06:59,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:06:59,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:06:59,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:06:59,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:07:02,020.020 INFO    ] ================================================
[2026-08-25 17:07:02,038.038 INFO    ] Launching Daemon at Tue Aug 25 17:07:02 IST 2026
[2026-08-25 17:07:02,051.051 INFO    ] ================================================
[2026-08-25 17:07:02,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:07:02
[2026-08-25 17:07:03,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:07:03,620.620 INFO    ] Initializing speech engine...
[2026-08-25 17:07:03,634.634 INFO    ] 2026-08-25 17:07:03
[2026-08-25 17:07:03,920.920 INFO    ] 2026-08-25 17:07:03
[2026-08-25 17:07:03,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:07:04,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:07:04,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:07:04,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:07:04,276.276 INFO    ] time= 25/08/2026 17:07:04
[2026-08-25 17:07:04,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:07:04,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:07:04,425.425 INFO    ] No existing commands found in stream
[2026-08-25 17:07:09,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:07:09,439.439 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 17:07:10,403.403 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:07:10,406.406 INFO    ] Checking for system updates...
[2026-08-25 17:07:10,441.441 INFO    ] 200
[2026-08-25 17:07:10,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:10,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:07:10,507.507 INFO    ] No update needed
[2026-08-25 17:07:10,509.509 INFO    ] Checking for camera pi updates...
[2026-08-25 17:07:10,547.547 INFO    ] 200
[2026-08-25 17:07:10,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:10,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:07:10,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:07:10,648.648 INFO    ] No camera update needed
[2026-08-25 17:07:10,651.651 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:07:10,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:07:10,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:07:10,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:07:12,704.704 INFO    ] ================================================
[2026-08-25 17:07:12,720.720 INFO    ] Launching Daemon at Tue Aug 25 17:07:12 IST 2026
[2026-08-25 17:07:12,731.731 INFO    ] ================================================
[2026-08-25 17:07:13,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:07:13
[2026-08-25 17:07:14,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:07:14,349.349 INFO    ] Initializing speech engine...
[2026-08-25 17:07:14,356.356 INFO    ] 2026-08-25 17:07:14
[2026-08-25 17:07:14,620.620 INFO    ] 2026-08-25 17:07:14
[2026-08-25 17:07:14,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:07:14,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:07:14,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:07:15,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:07:15,080.080 INFO    ] time= 25/08/2026 17:07:15
[2026-08-25 17:07:15,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:07:15,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:07:15,308.308 INFO    ] No existing commands found in stream
[2026-08-25 17:07:20,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:07:20,333.333 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 17:07:23,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:07:23,411.411 INFO    ] Checking for system updates...
[2026-08-25 17:07:23,446.446 INFO    ] 200
[2026-08-25 17:07:23,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:23,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:07:23,502.502 INFO    ] No update needed
[2026-08-25 17:07:23,505.505 INFO    ] Checking for camera pi updates...
[2026-08-25 17:07:23,538.538 INFO    ] 200
[2026-08-25 17:07:23,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:23,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:07:23,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:07:23,628.628 INFO    ] No camera update needed
[2026-08-25 17:07:23,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:07:23,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:07:23,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:07:23,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:07:25,685.685 INFO    ] ================================================
[2026-08-25 17:07:25,707.707 INFO    ] Launching Daemon at Tue Aug 25 17:07:25 IST 2026
[2026-08-25 17:07:25,729.729 INFO    ] ================================================
[2026-08-25 17:07:26,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:07:26
[2026-08-25 17:07:27,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:07:27,348.348 INFO    ] Initializing speech engine...
[2026-08-25 17:07:27,353.353 INFO    ] 2026-08-25 17:07:27
[2026-08-25 17:07:27,639.639 INFO    ] 2026-08-25 17:07:27
[2026-08-25 17:07:27,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:07:27,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:07:27,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:07:28,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:07:28,029.029 INFO    ] time= 25/08/2026 17:07:28
[2026-08-25 17:07:28,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:07:28,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:07:28,214.214 INFO    ] No existing commands found in stream
[2026-08-25 17:07:33,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:07:33,236.236 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 17:07:34,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:07:34,717.717 INFO    ] Checking for system updates...
[2026-08-25 17:07:34,753.753 INFO    ] 200
[2026-08-25 17:07:34,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:34,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:07:34,820.820 INFO    ] No update needed
[2026-08-25 17:07:34,822.822 INFO    ] Checking for camera pi updates...
[2026-08-25 17:07:34,856.856 INFO    ] 200
[2026-08-25 17:07:34,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:34,899.899 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:07:34,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:07:34,948.948 INFO    ] No camera update needed
[2026-08-25 17:07:34,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:07:34,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:07:34,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:07:34,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:07:37,005.005 INFO    ] ================================================
[2026-08-25 17:07:37,021.021 INFO    ] Launching Daemon at Tue Aug 25 17:07:37 IST 2026
[2026-08-25 17:07:37,032.032 INFO    ] ================================================
[2026-08-25 17:07:37,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:07:37
[2026-08-25 17:07:38,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:07:38,480.480 INFO    ] Initializing speech engine...
[2026-08-25 17:07:38,499.499 INFO    ] 2026-08-25 17:07:38
[2026-08-25 17:07:38,752.752 INFO    ] 2026-08-25 17:07:38
[2026-08-25 17:07:38,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:07:38,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:07:39,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:07:39,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:07:39,224.224 INFO    ] time= 25/08/2026 17:07:39
[2026-08-25 17:07:39,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:07:39,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:07:39,455.455 INFO    ] No existing commands found in stream
[2026-08-25 17:07:44,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:07:44,488.488 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 17:07:48,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:07:48,385.385 INFO    ] Checking for system updates...
[2026-08-25 17:07:48,428.428 INFO    ] 200
[2026-08-25 17:07:48,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:48,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:07:48,497.497 INFO    ] No update needed
[2026-08-25 17:07:48,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 17:07:48,532.532 INFO    ] 200
[2026-08-25 17:07:48,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:07:48,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:07:48,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:07:48,627.627 INFO    ] No camera update needed
[2026-08-25 17:07:48,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:07:48,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:07:48,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:07:48,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:07:50,682.682 INFO    ] ================================================
[2026-08-25 17:07:50,699.699 INFO    ] Launching Daemon at Tue Aug 25 17:07:50 IST 2026
[2026-08-25 17:07:50,712.712 INFO    ] ================================================
[2026-08-25 17:07:51,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:07:51
[2026-08-25 17:07:51,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:07:52,171.171 INFO    ] Initializing speech engine...
[2026-08-25 17:07:52,179.179 INFO    ] 2026-08-25 17:07:52
[2026-08-25 17:07:52,438.438 INFO    ] 2026-08-25 17:07:52
[2026-08-25 17:07:52,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:07:52,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:07:52,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:07:52,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:07:52,938.938 INFO    ] time= 25/08/2026 17:07:52
[2026-08-25 17:07:52,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:07:52,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:07:53,127.127 INFO    ] No existing commands found in stream
[2026-08-25 17:07:58,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:07:58,152.152 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 17:08:02,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:08:02,402.402 INFO    ] Checking for system updates...
[2026-08-25 17:08:02,444.444 INFO    ] 200
[2026-08-25 17:08:02,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:02,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:08:02,517.517 INFO    ] No update needed
[2026-08-25 17:08:02,522.522 INFO    ] Checking for camera pi updates...
[2026-08-25 17:08:02,571.571 INFO    ] 200
[2026-08-25 17:08:02,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:02,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:08:02,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:08:02,774.774 INFO    ] No camera update needed
[2026-08-25 17:08:02,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:08:02,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:08:02,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:08:02,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:08:04,837.837 INFO    ] ================================================
[2026-08-25 17:08:04,852.852 INFO    ] Launching Daemon at Tue Aug 25 17:08:04 IST 2026
[2026-08-25 17:08:04,863.863 INFO    ] ================================================
[2026-08-25 17:08:05,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:08:05
[2026-08-25 17:08:06,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:08:06,520.520 INFO    ] Initializing speech engine...
[2026-08-25 17:08:06,531.531 INFO    ] 2026-08-25 17:08:06
[2026-08-25 17:08:06,847.847 INFO    ] 2026-08-25 17:08:06
[2026-08-25 17:08:06,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:08:07,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:08:07,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:08:07,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:08:07,366.366 INFO    ] time= 25/08/2026 17:08:07
[2026-08-25 17:08:07,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:08:07,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:08:07,526.526 INFO    ] No existing commands found in stream
[2026-08-25 17:08:12,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:08:12,550.550 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 17:08:16,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:08:16,334.334 INFO    ] Checking for system updates...
[2026-08-25 17:08:16,375.375 INFO    ] 200
[2026-08-25 17:08:16,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:16,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:08:16,433.433 INFO    ] No update needed
[2026-08-25 17:08:16,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 17:08:16,473.473 INFO    ] 200
[2026-08-25 17:08:16,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:16,522.522 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:08:16,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:08:16,572.572 INFO    ] No camera update needed
[2026-08-25 17:08:16,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:08:16,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:08:16,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:08:16,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:08:18,627.627 INFO    ] ================================================
[2026-08-25 17:08:18,643.643 INFO    ] Launching Daemon at Tue Aug 25 17:08:18 IST 2026
[2026-08-25 17:08:18,653.653 INFO    ] ================================================
[2026-08-25 17:08:19,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:08:19
[2026-08-25 17:08:19,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:08:20,071.071 INFO    ] Initializing speech engine...
[2026-08-25 17:08:20,080.080 INFO    ] 2026-08-25 17:08:20
[2026-08-25 17:08:20,328.328 INFO    ] 2026-08-25 17:08:20
[2026-08-25 17:08:20,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:08:20,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:08:20,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:08:20,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:08:20,838.838 INFO    ] time= 25/08/2026 17:08:20
[2026-08-25 17:08:20,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:08:20,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:08:21,048.048 INFO    ] No existing commands found in stream
[2026-08-25 17:08:26,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:08:26,068.068 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 17:08:27,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:08:27,517.517 INFO    ] Checking for system updates...
[2026-08-25 17:08:27,556.556 INFO    ] 200
[2026-08-25 17:08:27,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:27,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:08:27,624.624 INFO    ] No update needed
[2026-08-25 17:08:27,626.626 INFO    ] Checking for camera pi updates...
[2026-08-25 17:08:27,661.661 INFO    ] 200
[2026-08-25 17:08:27,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:27,703.703 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:08:27,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:08:27,749.749 INFO    ] No camera update needed
[2026-08-25 17:08:27,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:08:27,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:08:27,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:08:27,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:08:29,806.806 INFO    ] ================================================
[2026-08-25 17:08:29,822.822 INFO    ] Launching Daemon at Tue Aug 25 17:08:29 IST 2026
[2026-08-25 17:08:29,833.833 INFO    ] ================================================
[2026-08-25 17:08:30,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:08:30
[2026-08-25 17:08:31,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:08:31,283.283 INFO    ] Initializing speech engine...
[2026-08-25 17:08:31,293.293 INFO    ] 2026-08-25 17:08:31
[2026-08-25 17:08:31,582.582 INFO    ] 2026-08-25 17:08:31
[2026-08-25 17:08:31,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:08:31,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:08:31,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:08:32,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:08:32,115.115 INFO    ] time= 25/08/2026 17:08:32
[2026-08-25 17:08:32,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:08:32,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:08:32,415.415 INFO    ] No existing commands found in stream
[2026-08-25 17:08:37,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:08:37,452.452 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 17:08:41,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:08:41,557.557 INFO    ] Checking for system updates...
[2026-08-25 17:08:41,592.592 INFO    ] 200
[2026-08-25 17:08:41,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:41,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:08:41,649.649 INFO    ] No update needed
[2026-08-25 17:08:41,651.651 INFO    ] Checking for camera pi updates...
[2026-08-25 17:08:41,688.688 INFO    ] 200
[2026-08-25 17:08:41,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:41,734.734 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:08:41,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:08:41,786.786 INFO    ] No camera update needed
[2026-08-25 17:08:41,789.789 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:08:41,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:08:41,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:08:41,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:08:43,842.842 INFO    ] ================================================
[2026-08-25 17:08:43,857.857 INFO    ] Launching Daemon at Tue Aug 25 17:08:43 IST 2026
[2026-08-25 17:08:43,867.867 INFO    ] ================================================
[2026-08-25 17:08:44,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:08:44
[2026-08-25 17:08:45,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:08:45,295.295 INFO    ] Initializing speech engine...
[2026-08-25 17:08:45,314.314 INFO    ] 2026-08-25 17:08:45
[2026-08-25 17:08:45,583.583 INFO    ] 2026-08-25 17:08:45
[2026-08-25 17:08:45,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:08:45,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:08:45,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:08:45,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:08:45,991.991 INFO    ] time= 25/08/2026 17:08:45
[2026-08-25 17:08:46,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:08:46,064.064 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:08:46,187.187 INFO    ] No existing commands found in stream
[2026-08-25 17:08:51,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:08:51,215.215 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 17:08:52,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:08:52,856.856 INFO    ] Checking for system updates...
[2026-08-25 17:08:52,898.898 INFO    ] 200
[2026-08-25 17:08:52,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:52,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:08:52,965.965 INFO    ] No update needed
[2026-08-25 17:08:52,967.967 INFO    ] Checking for camera pi updates...
[2026-08-25 17:08:53,006.006 INFO    ] 200
[2026-08-25 17:08:53,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:08:53,055.055 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:08:53,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:08:53,109.109 INFO    ] No camera update needed
[2026-08-25 17:08:53,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:08:53,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:08:53,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:08:53,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:08:55,168.168 INFO    ] ================================================
[2026-08-25 17:08:55,183.183 INFO    ] Launching Daemon at Tue Aug 25 17:08:55 IST 2026
[2026-08-25 17:08:55,193.193 INFO    ] ================================================
[2026-08-25 17:08:55,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:08:55
[2026-08-25 17:08:56,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:08:56,633.633 INFO    ] Initializing speech engine...
[2026-08-25 17:08:56,656.656 INFO    ] 2026-08-25 17:08:56
[2026-08-25 17:08:56,925.925 INFO    ] 2026-08-25 17:08:56
[2026-08-25 17:08:56,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:08:57,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:08:57,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:08:57,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:08:57,414.414 INFO    ] time= 25/08/2026 17:08:57
[2026-08-25 17:08:57,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:08:57,538.538 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:08:57,679.679 INFO    ] No existing commands found in stream
[2026-08-25 17:09:02,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:09:02,710.710 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 17:09:05,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:09:05,735.735 INFO    ] Checking for system updates...
[2026-08-25 17:09:05,770.770 INFO    ] 200
[2026-08-25 17:09:05,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:05,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:09:05,827.827 INFO    ] No update needed
[2026-08-25 17:09:05,830.830 INFO    ] Checking for camera pi updates...
[2026-08-25 17:09:05,864.864 INFO    ] 200
[2026-08-25 17:09:05,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:05,906.906 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:09:05,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:09:05,954.954 INFO    ] No camera update needed
[2026-08-25 17:09:05,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:09:05,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:09:05,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:09:05,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:09:08,008.008 INFO    ] ================================================
[2026-08-25 17:09:08,023.023 INFO    ] Launching Daemon at Tue Aug 25 17:09:08 IST 2026
[2026-08-25 17:09:08,034.034 INFO    ] ================================================
[2026-08-25 17:09:08,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:09:08
[2026-08-25 17:09:09,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:09:09,639.639 INFO    ] Initializing speech engine...
[2026-08-25 17:09:09,648.648 INFO    ] 2026-08-25 17:09:09
[2026-08-25 17:09:09,967.967 INFO    ] 2026-08-25 17:09:09
[2026-08-25 17:09:10,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:09:10,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:09:10,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:09:10,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:09:10,487.487 INFO    ] time= 25/08/2026 17:09:10
[2026-08-25 17:09:10,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:09:10,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:09:10,625.625 INFO    ] No existing commands found in stream
[2026-08-25 17:09:15,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:09:15,657.657 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 17:09:17,551.551 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:09:17,554.554 INFO    ] Checking for system updates...
[2026-08-25 17:09:17,592.592 INFO    ] 200
[2026-08-25 17:09:17,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:17,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:09:17,656.656 INFO    ] No update needed
[2026-08-25 17:09:17,659.659 INFO    ] Checking for camera pi updates...
[2026-08-25 17:09:17,696.696 INFO    ] 200
[2026-08-25 17:09:17,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:17,743.743 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:09:17,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:09:17,792.792 INFO    ] No camera update needed
[2026-08-25 17:09:17,795.795 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:09:17,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:09:17,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:09:17,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:09:19,851.851 INFO    ] ================================================
[2026-08-25 17:09:19,866.866 INFO    ] Launching Daemon at Tue Aug 25 17:09:19 IST 2026
[2026-08-25 17:09:19,876.876 INFO    ] ================================================
[2026-08-25 17:09:20,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:09:20
[2026-08-25 17:09:21,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:09:21,485.485 INFO    ] Initializing speech engine...
[2026-08-25 17:09:21,493.493 INFO    ] 2026-08-25 17:09:21
[2026-08-25 17:09:21,766.766 INFO    ] 2026-08-25 17:09:21
[2026-08-25 17:09:21,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:09:22,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:09:22,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:09:22,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:09:22,312.312 INFO    ] time= 25/08/2026 17:09:22
[2026-08-25 17:09:22,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:09:22,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:09:22,471.471 INFO    ] No existing commands found in stream
[2026-08-25 17:09:27,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:09:27,502.502 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 17:09:30,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:09:30,483.483 INFO    ] Checking for system updates...
[2026-08-25 17:09:30,523.523 INFO    ] 200
[2026-08-25 17:09:30,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:30,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:09:30,583.583 INFO    ] No update needed
[2026-08-25 17:09:30,585.585 INFO    ] Checking for camera pi updates...
[2026-08-25 17:09:30,620.620 INFO    ] 200
[2026-08-25 17:09:30,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:30,664.664 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:09:30,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:09:30,714.714 INFO    ] No camera update needed
[2026-08-25 17:09:30,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:09:30,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:09:30,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:09:30,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:09:32,777.777 INFO    ] ================================================
[2026-08-25 17:09:32,793.793 INFO    ] Launching Daemon at Tue Aug 25 17:09:32 IST 2026
[2026-08-25 17:09:32,804.804 INFO    ] ================================================
[2026-08-25 17:09:33,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:09:33
[2026-08-25 17:09:34,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:09:34,407.407 INFO    ] Initializing speech engine...
[2026-08-25 17:09:34,416.416 INFO    ] 2026-08-25 17:09:34
[2026-08-25 17:09:34,700.700 INFO    ] 2026-08-25 17:09:34
[2026-08-25 17:09:34,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:09:35,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:09:35,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:09:35,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:09:35,245.245 INFO    ] time= 25/08/2026 17:09:35
[2026-08-25 17:09:35,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:09:35,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:09:35,388.388 INFO    ] No existing commands found in stream
[2026-08-25 17:09:40,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:09:40,416.416 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 17:09:41,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:09:41,826.826 INFO    ] Checking for system updates...
[2026-08-25 17:09:41,862.862 INFO    ] 200
[2026-08-25 17:09:41,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:41,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:09:41,920.920 INFO    ] No update needed
[2026-08-25 17:09:41,923.923 INFO    ] Checking for camera pi updates...
[2026-08-25 17:09:41,956.956 INFO    ] 200
[2026-08-25 17:09:41,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:41,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:09:42,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:09:42,047.047 INFO    ] No camera update needed
[2026-08-25 17:09:42,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:09:42,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:09:42,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:09:42,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:09:44,100.100 INFO    ] ================================================
[2026-08-25 17:09:44,116.116 INFO    ] Launching Daemon at Tue Aug 25 17:09:44 IST 2026
[2026-08-25 17:09:44,127.127 INFO    ] ================================================
[2026-08-25 17:09:44,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:09:44
[2026-08-25 17:09:45,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:09:45,728.728 INFO    ] Initializing speech engine...
[2026-08-25 17:09:45,743.743 INFO    ] 2026-08-25 17:09:45
[2026-08-25 17:09:46,020.020 INFO    ] 2026-08-25 17:09:46
[2026-08-25 17:09:46,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:09:46,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:09:46,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:09:46,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:09:46,555.555 INFO    ] time= 25/08/2026 17:09:46
[2026-08-25 17:09:46,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:09:46,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:09:46,712.712 INFO    ] No existing commands found in stream
[2026-08-25 17:09:51,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:09:51,743.743 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 17:09:56,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:09:56,174.174 INFO    ] Checking for system updates...
[2026-08-25 17:09:56,214.214 INFO    ] 200
[2026-08-25 17:09:56,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:56,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:09:56,280.280 INFO    ] No update needed
[2026-08-25 17:09:56,283.283 INFO    ] Checking for camera pi updates...
[2026-08-25 17:09:56,324.324 INFO    ] 200
[2026-08-25 17:09:56,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:09:56,373.373 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:09:56,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:09:56,422.422 INFO    ] No camera update needed
[2026-08-25 17:09:56,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:09:56,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:09:56,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:09:56,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:09:58,482.482 INFO    ] ================================================
[2026-08-25 17:09:58,498.498 INFO    ] Launching Daemon at Tue Aug 25 17:09:58 IST 2026
[2026-08-25 17:09:58,508.508 INFO    ] ================================================
[2026-08-25 17:09:59,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:09:59
[2026-08-25 17:09:59,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:10:00,040.040 INFO    ] Initializing speech engine...
[2026-08-25 17:10:00,049.049 INFO    ] 2026-08-25 17:10:00
[2026-08-25 17:10:00,338.338 INFO    ] 2026-08-25 17:10:00
[2026-08-25 17:10:00,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:10:00,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:10:00,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:10:00,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:10:00,883.883 INFO    ] time= 25/08/2026 17:10:00
[2026-08-25 17:10:00,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:10:00,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:10:01,035.035 INFO    ] No existing commands found in stream
[2026-08-25 17:10:06,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:10:06,053.053 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 17:10:08,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:10:08,667.667 INFO    ] Checking for system updates...
[2026-08-25 17:10:08,704.704 INFO    ] 200
[2026-08-25 17:10:08,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:08,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:10:08,765.765 INFO    ] No update needed
[2026-08-25 17:10:08,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 17:10:08,802.802 INFO    ] 200
[2026-08-25 17:10:08,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:08,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:10:08,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:10:08,996.996 INFO    ] No camera update needed
[2026-08-25 17:10:08,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:10:09,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:10:09,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:10:09,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:10:11,054.054 INFO    ] ================================================
[2026-08-25 17:10:11,069.069 INFO    ] Launching Daemon at Tue Aug 25 17:10:11 IST 2026
[2026-08-25 17:10:11,080.080 INFO    ] ================================================
[2026-08-25 17:10:11,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:10:11
[2026-08-25 17:10:12,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:10:12,612.612 INFO    ] Initializing speech engine...
[2026-08-25 17:10:12,625.625 INFO    ] 2026-08-25 17:10:12
[2026-08-25 17:10:12,935.935 INFO    ] 2026-08-25 17:10:12
[2026-08-25 17:10:13,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:10:13,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:10:13,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:10:13,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:10:13,453.453 INFO    ] time= 25/08/2026 17:10:13
[2026-08-25 17:10:13,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:10:13,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:10:13,595.595 INFO    ] No existing commands found in stream
[2026-08-25 17:10:18,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:10:18,620.620 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 17:10:20,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:10:20,551.551 INFO    ] Checking for system updates...
[2026-08-25 17:10:20,589.589 INFO    ] 200
[2026-08-25 17:10:20,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:20,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:10:20,650.650 INFO    ] No update needed
[2026-08-25 17:10:20,653.653 INFO    ] Checking for camera pi updates...
[2026-08-25 17:10:20,692.692 INFO    ] 200
[2026-08-25 17:10:20,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:20,739.739 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:10:20,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:10:20,794.794 INFO    ] No camera update needed
[2026-08-25 17:10:20,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:10:20,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:10:20,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:10:20,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:10:22,853.853 INFO    ] ================================================
[2026-08-25 17:10:22,868.868 INFO    ] Launching Daemon at Tue Aug 25 17:10:22 IST 2026
[2026-08-25 17:10:22,879.879 INFO    ] ================================================
[2026-08-25 17:10:23,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:10:23
[2026-08-25 17:10:24,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:10:24,289.289 INFO    ] Initializing speech engine...
[2026-08-25 17:10:24,298.298 INFO    ] 2026-08-25 17:10:24
[2026-08-25 17:10:24,594.594 INFO    ] 2026-08-25 17:10:24
[2026-08-25 17:10:24,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:10:24,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:10:24,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:10:25,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:10:25,113.113 INFO    ] time= 25/08/2026 17:10:25
[2026-08-25 17:10:25,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:10:25,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:10:25,373.373 INFO    ] No existing commands found in stream
[2026-08-25 17:10:30,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:10:30,395.395 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 17:10:31,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:10:31,296.296 INFO    ] Checking for system updates...
[2026-08-25 17:10:31,338.338 INFO    ] 200
[2026-08-25 17:10:31,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:31,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:10:31,406.406 INFO    ] No update needed
[2026-08-25 17:10:31,409.409 INFO    ] Checking for camera pi updates...
[2026-08-25 17:10:31,445.445 INFO    ] 200
[2026-08-25 17:10:31,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:31,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:10:31,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:10:31,568.568 INFO    ] No camera update needed
[2026-08-25 17:10:31,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:10:31,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:10:31,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:10:31,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:10:33,642.642 INFO    ] ================================================
[2026-08-25 17:10:33,658.658 INFO    ] Launching Daemon at Tue Aug 25 17:10:33 IST 2026
[2026-08-25 17:10:33,668.668 INFO    ] ================================================
[2026-08-25 17:10:34,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:10:34
[2026-08-25 17:10:34,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:10:35,080.080 INFO    ] Initializing speech engine...
[2026-08-25 17:10:35,087.087 INFO    ] 2026-08-25 17:10:35
[2026-08-25 17:10:35,384.384 INFO    ] 2026-08-25 17:10:35
[2026-08-25 17:10:35,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:10:35,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:10:35,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:10:35,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:10:35,804.804 INFO    ] time= 25/08/2026 17:10:35
[2026-08-25 17:10:35,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:10:35,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:10:35,927.927 INFO    ] No existing commands found in stream
[2026-08-25 17:10:40,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:10:40,955.955 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 17:10:43,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:10:43,980.980 INFO    ] Checking for system updates...
[2026-08-25 17:10:44,017.017 INFO    ] 200
[2026-08-25 17:10:44,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:44,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:10:44,078.078 INFO    ] No update needed
[2026-08-25 17:10:44,080.080 INFO    ] Checking for camera pi updates...
[2026-08-25 17:10:44,116.116 INFO    ] 200
[2026-08-25 17:10:44,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:44,165.165 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:10:44,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:10:44,218.218 INFO    ] No camera update needed
[2026-08-25 17:10:44,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:10:44,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:10:44,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:10:44,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:10:46,278.278 INFO    ] ================================================
[2026-08-25 17:10:46,294.294 INFO    ] Launching Daemon at Tue Aug 25 17:10:46 IST 2026
[2026-08-25 17:10:46,305.305 INFO    ] ================================================
[2026-08-25 17:10:46,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:10:46
[2026-08-25 17:10:47,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:10:47,978.978 INFO    ] Initializing speech engine...
[2026-08-25 17:10:47,990.990 INFO    ] 2026-08-25 17:10:47
[2026-08-25 17:10:48,267.267 INFO    ] 2026-08-25 17:10:48
[2026-08-25 17:10:48,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:10:48,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:10:48,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:10:48,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:10:48,832.832 INFO    ] time= 25/08/2026 17:10:48
[2026-08-25 17:10:48,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:10:48,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:10:48,983.983 INFO    ] No existing commands found in stream
[2026-08-25 17:10:54,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:10:54,009.009 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 17:10:56,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:10:56,760.760 INFO    ] Checking for system updates...
[2026-08-25 17:10:56,798.798 INFO    ] 200
[2026-08-25 17:10:56,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:56,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:10:56,858.858 INFO    ] No update needed
[2026-08-25 17:10:56,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 17:10:56,896.896 INFO    ] 200
[2026-08-25 17:10:56,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:10:56,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:10:57,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:10:57,005.005 INFO    ] No camera update needed
[2026-08-25 17:10:57,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:10:57,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:10:57,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:10:57,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:10:59,066.066 INFO    ] ================================================
[2026-08-25 17:10:59,082.082 INFO    ] Launching Daemon at Tue Aug 25 17:10:59 IST 2026
[2026-08-25 17:10:59,093.093 INFO    ] ================================================
[2026-08-25 17:10:59,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:10:59
[2026-08-25 17:11:00,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:11:00,562.562 INFO    ] Initializing speech engine...
[2026-08-25 17:11:00,574.574 INFO    ] 2026-08-25 17:11:00
[2026-08-25 17:11:00,867.867 INFO    ] 2026-08-25 17:11:00
[2026-08-25 17:11:00,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:11:01,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:11:01,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:11:01,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:11:01,414.414 INFO    ] time= 25/08/2026 17:11:01
[2026-08-25 17:11:01,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:11:01,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:11:01,619.619 INFO    ] No existing commands found in stream
[2026-08-25 17:11:06,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:11:06,653.653 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 17:11:08,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:11:08,030.030 INFO    ] Checking for system updates...
[2026-08-25 17:11:08,069.069 INFO    ] 200
[2026-08-25 17:11:08,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:08,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:11:08,133.133 INFO    ] No update needed
[2026-08-25 17:11:08,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 17:11:08,169.169 INFO    ] 200
[2026-08-25 17:11:08,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:08,213.213 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:11:08,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:11:08,260.260 INFO    ] No camera update needed
[2026-08-25 17:11:08,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:11:08,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:11:08,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:11:08,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:11:10,314.314 INFO    ] ================================================
[2026-08-25 17:11:10,329.329 INFO    ] Launching Daemon at Tue Aug 25 17:11:10 IST 2026
[2026-08-25 17:11:10,339.339 INFO    ] ================================================
[2026-08-25 17:11:10,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:11:10
[2026-08-25 17:11:11,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:11:11,904.904 INFO    ] Initializing speech engine...
[2026-08-25 17:11:11,910.910 INFO    ] 2026-08-25 17:11:11
[2026-08-25 17:11:12,184.184 INFO    ] 2026-08-25 17:11:12
[2026-08-25 17:11:12,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:11:12,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:11:12,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:11:12,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:11:12,661.661 INFO    ] time= 25/08/2026 17:11:12
[2026-08-25 17:11:12,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:11:12,751.751 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:11:12,898.898 INFO    ] No existing commands found in stream
[2026-08-25 17:11:17,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:11:17,918.918 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 17:11:18,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:11:18,841.841 INFO    ] Checking for system updates...
[2026-08-25 17:11:18,877.877 INFO    ] 200
[2026-08-25 17:11:18,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:18,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:11:18,936.936 INFO    ] No update needed
[2026-08-25 17:11:18,938.938 INFO    ] Checking for camera pi updates...
[2026-08-25 17:11:18,975.975 INFO    ] 200
[2026-08-25 17:11:18,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:19,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:11:19,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:11:19,070.070 INFO    ] No camera update needed
[2026-08-25 17:11:19,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:11:19,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:11:19,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:11:19,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:11:21,125.125 INFO    ] ================================================
[2026-08-25 17:11:21,141.141 INFO    ] Launching Daemon at Tue Aug 25 17:11:21 IST 2026
[2026-08-25 17:11:21,152.152 INFO    ] ================================================
[2026-08-25 17:11:21,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:11:21
[2026-08-25 17:11:22,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:11:22,590.590 INFO    ] Initializing speech engine...
[2026-08-25 17:11:22,603.603 INFO    ] 2026-08-25 17:11:22
[2026-08-25 17:11:22,880.880 INFO    ] 2026-08-25 17:11:22
[2026-08-25 17:11:22,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:11:23,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:11:23,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:11:23,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:11:23,376.376 INFO    ] time= 25/08/2026 17:11:23
[2026-08-25 17:11:23,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:11:23,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:11:23,561.561 INFO    ] No existing commands found in stream
[2026-08-25 17:11:28,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:11:28,584.584 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 17:11:30,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:11:30,059.059 INFO    ] Checking for system updates...
[2026-08-25 17:11:30,094.094 INFO    ] 200
[2026-08-25 17:11:30,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:30,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:11:30,156.156 INFO    ] No update needed
[2026-08-25 17:11:30,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 17:11:30,196.196 INFO    ] 200
[2026-08-25 17:11:30,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:30,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:11:30,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:11:30,285.285 INFO    ] No camera update needed
[2026-08-25 17:11:30,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:11:30,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:11:30,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:11:30,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:11:32,341.341 INFO    ] ================================================
[2026-08-25 17:11:32,358.358 INFO    ] Launching Daemon at Tue Aug 25 17:11:32 IST 2026
[2026-08-25 17:11:32,369.369 INFO    ] ================================================
[2026-08-25 17:11:32,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:11:32
[2026-08-25 17:11:33,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:11:33,830.830 INFO    ] Initializing speech engine...
[2026-08-25 17:11:33,849.849 INFO    ] 2026-08-25 17:11:33
[2026-08-25 17:11:34,097.097 INFO    ] 2026-08-25 17:11:34
[2026-08-25 17:11:34,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:11:34,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:11:34,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:11:34,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:11:34,545.545 INFO    ] time= 25/08/2026 17:11:34
[2026-08-25 17:11:34,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:11:34,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:11:34,799.799 INFO    ] No existing commands found in stream
[2026-08-25 17:11:39,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:11:39,825.825 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 17:11:41,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:11:41,207.207 INFO    ] Checking for system updates...
[2026-08-25 17:11:41,248.248 INFO    ] 200
[2026-08-25 17:11:41,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:41,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:11:41,313.313 INFO    ] No update needed
[2026-08-25 17:11:41,316.316 INFO    ] Checking for camera pi updates...
[2026-08-25 17:11:41,349.349 INFO    ] 200
[2026-08-25 17:11:41,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:41,395.395 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:11:41,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:11:41,445.445 INFO    ] No camera update needed
[2026-08-25 17:11:41,447.447 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:11:41,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:11:41,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:11:41,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:11:43,500.500 INFO    ] ================================================
[2026-08-25 17:11:43,515.515 INFO    ] Launching Daemon at Tue Aug 25 17:11:43 IST 2026
[2026-08-25 17:11:43,527.527 INFO    ] ================================================
[2026-08-25 17:11:44,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:11:44
[2026-08-25 17:11:44,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:11:45,065.065 INFO    ] Initializing speech engine...
[2026-08-25 17:11:45,084.084 INFO    ] 2026-08-25 17:11:45
[2026-08-25 17:11:45,358.358 INFO    ] 2026-08-25 17:11:45
[2026-08-25 17:11:45,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:11:45,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:11:45,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:11:45,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:11:45,833.833 INFO    ] time= 25/08/2026 17:11:45
[2026-08-25 17:11:45,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:11:45,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:11:46,076.076 INFO    ] No existing commands found in stream
[2026-08-25 17:11:51,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:11:51,103.103 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 17:11:53,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:11:53,179.179 INFO    ] Checking for system updates...
[2026-08-25 17:11:53,218.218 INFO    ] 200
[2026-08-25 17:11:53,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:53,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:11:53,286.286 INFO    ] No update needed
[2026-08-25 17:11:53,289.289 INFO    ] Checking for camera pi updates...
[2026-08-25 17:11:53,324.324 INFO    ] 200
[2026-08-25 17:11:53,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:11:53,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:11:53,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:11:53,413.413 INFO    ] No camera update needed
[2026-08-25 17:11:53,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:11:53,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:11:53,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:11:53,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:11:55,469.469 INFO    ] ================================================
[2026-08-25 17:11:55,485.485 INFO    ] Launching Daemon at Tue Aug 25 17:11:55 IST 2026
[2026-08-25 17:11:55,496.496 INFO    ] ================================================
[2026-08-25 17:11:56,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:11:56
[2026-08-25 17:11:56,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:11:56,914.914 INFO    ] Initializing speech engine...
[2026-08-25 17:11:56,923.923 INFO    ] 2026-08-25 17:11:56
[2026-08-25 17:11:57,173.173 INFO    ] 2026-08-25 17:11:57
[2026-08-25 17:11:57,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:11:57,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:11:57,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:11:57,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:11:57,645.645 INFO    ] time= 25/08/2026 17:11:57
[2026-08-25 17:11:57,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:11:57,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:11:57,870.870 INFO    ] No existing commands found in stream
[2026-08-25 17:12:02,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:12:02,898.898 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 17:12:04,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:12:04,041.041 INFO    ] Checking for system updates...
[2026-08-25 17:12:04,077.077 INFO    ] 200
[2026-08-25 17:12:04,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:04,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:04,134.134 INFO    ] No update needed
[2026-08-25 17:12:04,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 17:12:04,173.173 INFO    ] 200
[2026-08-25 17:12:04,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:04,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:12:04,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:04,265.265 INFO    ] No camera update needed
[2026-08-25 17:12:04,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:12:04,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:12:04,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:12:04,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:12:06,319.319 INFO    ] ================================================
[2026-08-25 17:12:06,335.335 INFO    ] Launching Daemon at Tue Aug 25 17:12:06 IST 2026
[2026-08-25 17:12:06,346.346 INFO    ] ================================================
[2026-08-25 17:12:06,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:12:06
[2026-08-25 17:12:07,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:12:07,778.778 INFO    ] Initializing speech engine...
[2026-08-25 17:12:07,786.786 INFO    ] 2026-08-25 17:12:07
[2026-08-25 17:12:08,033.033 INFO    ] 2026-08-25 17:12:08
[2026-08-25 17:12:08,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:12:08,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:12:08,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:12:08,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:12:08,519.519 INFO    ] time= 25/08/2026 17:12:08
[2026-08-25 17:12:08,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:12:08,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:12:08,706.706 INFO    ] No existing commands found in stream
[2026-08-25 17:12:13,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:12:13,730.730 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 17:12:18,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:12:18,012.012 INFO    ] Checking for system updates...
[2026-08-25 17:12:18,050.050 INFO    ] 200
[2026-08-25 17:12:18,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:18,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:18,108.108 INFO    ] No update needed
[2026-08-25 17:12:18,110.110 INFO    ] Checking for camera pi updates...
[2026-08-25 17:12:18,147.147 INFO    ] 200
[2026-08-25 17:12:18,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:18,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:12:18,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:18,337.337 INFO    ] No camera update needed
[2026-08-25 17:12:18,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:12:18,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:12:18,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:12:18,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:12:20,393.393 INFO    ] ================================================
[2026-08-25 17:12:20,409.409 INFO    ] Launching Daemon at Tue Aug 25 17:12:20 IST 2026
[2026-08-25 17:12:20,420.420 INFO    ] ================================================
[2026-08-25 17:12:20,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:12:20
[2026-08-25 17:12:21,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:12:21,872.872 INFO    ] Initializing speech engine...
[2026-08-25 17:12:21,880.880 INFO    ] 2026-08-25 17:12:21
[2026-08-25 17:12:22,139.139 INFO    ] 2026-08-25 17:12:22
[2026-08-25 17:12:22,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:12:22,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:12:22,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:12:22,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:12:22,634.634 INFO    ] time= 25/08/2026 17:12:22
[2026-08-25 17:12:22,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:12:22,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:12:22,839.839 INFO    ] No existing commands found in stream
[2026-08-25 17:12:27,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:12:27,868.868 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 17:12:31,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:12:31,998.998 INFO    ] Checking for system updates...
[2026-08-25 17:12:32,037.037 INFO    ] 200
[2026-08-25 17:12:32,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:32,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:32,102.102 INFO    ] No update needed
[2026-08-25 17:12:32,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 17:12:32,158.158 INFO    ] 200
[2026-08-25 17:12:32,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:32,206.206 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:12:32,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:32,279.279 INFO    ] No camera update needed
[2026-08-25 17:12:32,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:12:32,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:12:32,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:12:32,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:12:34,339.339 INFO    ] ================================================
[2026-08-25 17:12:34,354.354 INFO    ] Launching Daemon at Tue Aug 25 17:12:34 IST 2026
[2026-08-25 17:12:34,365.365 INFO    ] ================================================
[2026-08-25 17:12:34,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:12:34
[2026-08-25 17:12:35,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:12:35,797.797 INFO    ] Initializing speech engine...
[2026-08-25 17:12:35,805.805 INFO    ] 2026-08-25 17:12:35
[2026-08-25 17:12:36,092.092 INFO    ] 2026-08-25 17:12:36
[2026-08-25 17:12:36,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:12:36,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:12:36,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:12:36,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:12:36,567.567 INFO    ] time= 25/08/2026 17:12:36
[2026-08-25 17:12:36,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:12:36,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:12:36,759.759 INFO    ] No existing commands found in stream
[2026-08-25 17:12:41,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:12:41,774.774 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 17:12:45,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:12:45,492.492 INFO    ] Checking for system updates...
[2026-08-25 17:12:45,531.531 INFO    ] 200
[2026-08-25 17:12:45,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:45,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:45,592.592 INFO    ] No update needed
[2026-08-25 17:12:45,594.594 INFO    ] Checking for camera pi updates...
[2026-08-25 17:12:45,635.635 INFO    ] 200
[2026-08-25 17:12:45,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:45,678.678 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:12:45,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:45,735.735 INFO    ] No camera update needed
[2026-08-25 17:12:45,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:12:45,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:12:45,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:12:45,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:12:47,791.791 INFO    ] ================================================
[2026-08-25 17:12:47,809.809 INFO    ] Launching Daemon at Tue Aug 25 17:12:47 IST 2026
[2026-08-25 17:12:47,820.820 INFO    ] ================================================
[2026-08-25 17:12:48,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:12:48
[2026-08-25 17:12:49,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:12:49,402.402 INFO    ] Initializing speech engine...
[2026-08-25 17:12:49,412.412 INFO    ] 2026-08-25 17:12:49
[2026-08-25 17:12:49,692.692 INFO    ] 2026-08-25 17:12:49
[2026-08-25 17:12:49,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:12:49,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:12:49,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:12:50,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:12:50,232.232 INFO    ] time= 25/08/2026 17:12:50
[2026-08-25 17:12:50,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:12:50,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:12:50,411.411 INFO    ] No existing commands found in stream
[2026-08-25 17:12:55,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:12:55,445.445 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 17:12:58,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:12:58,928.928 INFO    ] Checking for system updates...
[2026-08-25 17:12:58,965.965 INFO    ] 200
[2026-08-25 17:12:58,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:59,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:59,027.027 INFO    ] No update needed
[2026-08-25 17:12:59,029.029 INFO    ] Checking for camera pi updates...
[2026-08-25 17:12:59,063.063 INFO    ] 200
[2026-08-25 17:12:59,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:12:59,110.110 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:12:59,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:12:59,156.156 INFO    ] No camera update needed
[2026-08-25 17:12:59,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:12:59,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:12:59,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:12:59,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:13:01,210.210 INFO    ] ================================================
[2026-08-25 17:13:01,225.225 INFO    ] Launching Daemon at Tue Aug 25 17:13:01 IST 2026
[2026-08-25 17:13:01,236.236 INFO    ] ================================================
[2026-08-25 17:13:01,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:13:01
[2026-08-25 17:13:02,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:13:02,913.913 INFO    ] Initializing speech engine...
[2026-08-25 17:13:02,920.920 INFO    ] 2026-08-25 17:13:02
[2026-08-25 17:13:03,212.212 INFO    ] 2026-08-25 17:13:03
[2026-08-25 17:13:03,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:13:03,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:13:03,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:13:03,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:13:03,737.737 INFO    ] time= 25/08/2026 17:13:03
[2026-08-25 17:13:03,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:13:03,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:13:03,957.957 INFO    ] No existing commands found in stream
[2026-08-25 17:13:08,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:13:08,982.982 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 17:13:11,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:13:11,945.945 INFO    ] Checking for system updates...
[2026-08-25 17:13:11,982.982 INFO    ] 200
[2026-08-25 17:13:11,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:12,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:13:12,038.038 INFO    ] No update needed
[2026-08-25 17:13:12,041.041 INFO    ] Checking for camera pi updates...
[2026-08-25 17:13:12,074.074 INFO    ] 200
[2026-08-25 17:13:12,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:12,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:13:12,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:13:12,168.168 INFO    ] No camera update needed
[2026-08-25 17:13:12,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:13:12,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:13:12,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:13:12,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:13:14,222.222 INFO    ] ================================================
[2026-08-25 17:13:14,238.238 INFO    ] Launching Daemon at Tue Aug 25 17:13:14 IST 2026
[2026-08-25 17:13:14,248.248 INFO    ] ================================================
[2026-08-25 17:13:14,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:13:14
[2026-08-25 17:13:15,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:13:15,824.824 INFO    ] Initializing speech engine...
[2026-08-25 17:13:15,830.830 INFO    ] 2026-08-25 17:13:15
[2026-08-25 17:13:16,112.112 INFO    ] 2026-08-25 17:13:16
[2026-08-25 17:13:16,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:13:16,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:13:16,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:13:16,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:13:16,648.648 INFO    ] time= 25/08/2026 17:13:16
[2026-08-25 17:13:16,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:13:16,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:13:16,802.802 INFO    ] No existing commands found in stream
[2026-08-25 17:13:21,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:13:21,822.822 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 17:13:24,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:13:24,446.446 INFO    ] Checking for system updates...
[2026-08-25 17:13:24,482.482 INFO    ] 200
[2026-08-25 17:13:24,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:24,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:13:24,541.541 INFO    ] No update needed
[2026-08-25 17:13:24,544.544 INFO    ] Checking for camera pi updates...
[2026-08-25 17:13:24,581.581 INFO    ] 200
[2026-08-25 17:13:24,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:24,632.632 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:13:24,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:13:24,686.686 INFO    ] No camera update needed
[2026-08-25 17:13:24,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:13:24,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:13:24,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:13:24,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:13:26,743.743 INFO    ] ================================================
[2026-08-25 17:13:26,758.758 INFO    ] Launching Daemon at Tue Aug 25 17:13:26 IST 2026
[2026-08-25 17:13:26,769.769 INFO    ] ================================================
[2026-08-25 17:13:27,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:13:27
[2026-08-25 17:13:27,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:13:28,225.225 INFO    ] Initializing speech engine...
[2026-08-25 17:13:28,234.234 INFO    ] 2026-08-25 17:13:28
[2026-08-25 17:13:28,489.489 INFO    ] 2026-08-25 17:13:28
[2026-08-25 17:13:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:13:28,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:13:28,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:13:28,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:13:28,974.974 INFO    ] time= 25/08/2026 17:13:28
[2026-08-25 17:13:29,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:13:29,056.056 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:13:29,193.193 INFO    ] No existing commands found in stream
[2026-08-25 17:13:34,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:13:34,217.217 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 17:13:35,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:13:35,035.035 INFO    ] Checking for system updates...
[2026-08-25 17:13:35,073.073 INFO    ] 200
[2026-08-25 17:13:35,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:35,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:13:35,130.130 INFO    ] No update needed
[2026-08-25 17:13:35,133.133 INFO    ] Checking for camera pi updates...
[2026-08-25 17:13:35,169.169 INFO    ] 200
[2026-08-25 17:13:35,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:35,211.211 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:13:35,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:13:35,263.263 INFO    ] No camera update needed
[2026-08-25 17:13:35,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:13:35,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:13:35,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:13:35,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:13:37,318.318 INFO    ] ================================================
[2026-08-25 17:13:37,334.334 INFO    ] Launching Daemon at Tue Aug 25 17:13:37 IST 2026
[2026-08-25 17:13:37,345.345 INFO    ] ================================================
[2026-08-25 17:13:37,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:13:37
[2026-08-25 17:13:38,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:13:38,754.754 INFO    ] Initializing speech engine...
[2026-08-25 17:13:38,778.778 INFO    ] 2026-08-25 17:13:38
[2026-08-25 17:13:39,048.048 INFO    ] 2026-08-25 17:13:39
[2026-08-25 17:13:39,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:13:39,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:13:39,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:13:39,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:13:39,566.566 INFO    ] time= 25/08/2026 17:13:39
[2026-08-25 17:13:39,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:13:39,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:13:39,808.808 INFO    ] No existing commands found in stream
[2026-08-25 17:13:44,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:13:44,838.838 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 17:13:45,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:13:45,338.338 INFO    ] Checking for system updates...
[2026-08-25 17:13:45,374.374 INFO    ] 200
[2026-08-25 17:13:45,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:45,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:13:45,432.432 INFO    ] No update needed
[2026-08-25 17:13:45,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 17:13:45,469.469 INFO    ] 200
[2026-08-25 17:13:45,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:45,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:13:45,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:13:45,567.567 INFO    ] No camera update needed
[2026-08-25 17:13:45,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:13:45,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:13:45,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:13:45,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:13:47,624.624 INFO    ] ================================================
[2026-08-25 17:13:47,640.640 INFO    ] Launching Daemon at Tue Aug 25 17:13:47 IST 2026
[2026-08-25 17:13:47,651.651 INFO    ] ================================================
[2026-08-25 17:13:48,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:13:48
[2026-08-25 17:13:48,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:13:49,107.107 INFO    ] Initializing speech engine...
[2026-08-25 17:13:49,116.116 INFO    ] 2026-08-25 17:13:49
[2026-08-25 17:13:49,374.374 INFO    ] 2026-08-25 17:13:49
[2026-08-25 17:13:49,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:13:49,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:13:49,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:13:49,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:13:49,858.858 INFO    ] time= 25/08/2026 17:13:49
[2026-08-25 17:13:49,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:13:49,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:13:50,042.042 INFO    ] No existing commands found in stream
[2026-08-25 17:13:55,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:13:55,057.057 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 17:13:58,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:13:58,115.115 INFO    ] Checking for system updates...
[2026-08-25 17:13:58,153.153 INFO    ] 200
[2026-08-25 17:13:58,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:58,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:13:58,215.215 INFO    ] No update needed
[2026-08-25 17:13:58,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 17:13:58,252.252 INFO    ] 200
[2026-08-25 17:13:58,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:13:58,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:13:58,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:13:58,350.350 INFO    ] No camera update needed
[2026-08-25 17:13:58,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:13:58,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:13:58,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:13:58,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:14:00,408.408 INFO    ] ================================================
[2026-08-25 17:14:00,422.422 INFO    ] Launching Daemon at Tue Aug 25 17:14:00 IST 2026
[2026-08-25 17:14:00,433.433 INFO    ] ================================================
[2026-08-25 17:14:01,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:14:01
[2026-08-25 17:14:01,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:14:02,036.036 INFO    ] Initializing speech engine...
[2026-08-25 17:14:02,041.041 INFO    ] 2026-08-25 17:14:02
[2026-08-25 17:14:02,439.439 INFO    ] 2026-08-25 17:14:02
[2026-08-25 17:14:02,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:14:02,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:14:02,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:14:02,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:14:02,997.997 INFO    ] time= 25/08/2026 17:14:02
[2026-08-25 17:14:03,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:14:03,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:14:03,163.163 INFO    ] No existing commands found in stream
[2026-08-25 17:14:08,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:14:08,202.202 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 17:14:08,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:14:08,955.955 INFO    ] Checking for system updates...
[2026-08-25 17:14:08,990.990 INFO    ] 200
[2026-08-25 17:14:08,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:09,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:14:09,055.055 INFO    ] No update needed
[2026-08-25 17:14:09,058.058 INFO    ] Checking for camera pi updates...
[2026-08-25 17:14:09,091.091 INFO    ] 200
[2026-08-25 17:14:09,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:09,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:14:09,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:14:09,183.183 INFO    ] No camera update needed
[2026-08-25 17:14:09,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:14:09,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:14:09,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:14:09,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:14:11,240.240 INFO    ] ================================================
[2026-08-25 17:14:11,255.255 INFO    ] Launching Daemon at Tue Aug 25 17:14:11 IST 2026
[2026-08-25 17:14:11,267.267 INFO    ] ================================================
[2026-08-25 17:14:11,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:14:11
[2026-08-25 17:14:12,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:14:12,701.701 INFO    ] Initializing speech engine...
[2026-08-25 17:14:12,710.710 INFO    ] 2026-08-25 17:14:12
[2026-08-25 17:14:12,998.998 INFO    ] 2026-08-25 17:14:12
[2026-08-25 17:14:13,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:14:13,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:14:13,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:14:13,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:14:13,401.401 INFO    ] time= 25/08/2026 17:14:13
[2026-08-25 17:14:13,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:14:13,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:14:13,563.563 INFO    ] No existing commands found in stream
[2026-08-25 17:14:18,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:14:18,591.591 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 17:14:23,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:14:23,763.763 INFO    ] Checking for system updates...
[2026-08-25 17:14:23,798.798 INFO    ] 200
[2026-08-25 17:14:23,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:23,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:14:23,855.855 INFO    ] No update needed
[2026-08-25 17:14:23,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 17:14:23,890.890 INFO    ] 200
[2026-08-25 17:14:23,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:23,936.936 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:14:24,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:14:24,086.086 INFO    ] No camera update needed
[2026-08-25 17:14:24,088.088 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:14:24,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:14:24,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:14:24,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:14:26,141.141 INFO    ] ================================================
[2026-08-25 17:14:26,157.157 INFO    ] Launching Daemon at Tue Aug 25 17:14:26 IST 2026
[2026-08-25 17:14:26,170.170 INFO    ] ================================================
[2026-08-25 17:14:26,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:14:26
[2026-08-25 17:14:27,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:14:27,751.751 INFO    ] Initializing speech engine...
[2026-08-25 17:14:27,759.759 INFO    ] 2026-08-25 17:14:27
[2026-08-25 17:14:28,016.016 INFO    ] 2026-08-25 17:14:28
[2026-08-25 17:14:28,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:14:28,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:14:28,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:14:28,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:14:28,441.441 INFO    ] time= 25/08/2026 17:14:28
[2026-08-25 17:14:28,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:14:28,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:14:28,575.575 INFO    ] No existing commands found in stream
[2026-08-25 17:14:33,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:14:33,588.588 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 17:14:35,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:14:35,586.586 INFO    ] Checking for system updates...
[2026-08-25 17:14:35,622.622 INFO    ] 200
[2026-08-25 17:14:35,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:35,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:14:35,681.681 INFO    ] No update needed
[2026-08-25 17:14:35,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 17:14:35,719.719 INFO    ] 200
[2026-08-25 17:14:35,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:35,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:14:35,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:14:35,808.808 INFO    ] No camera update needed
[2026-08-25 17:14:35,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:14:35,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:14:35,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:14:35,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:14:37,863.863 INFO    ] ================================================
[2026-08-25 17:14:37,879.879 INFO    ] Launching Daemon at Tue Aug 25 17:14:37 IST 2026
[2026-08-25 17:14:37,890.890 INFO    ] ================================================
[2026-08-25 17:14:38,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:14:38
[2026-08-25 17:14:39,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:14:39,351.351 INFO    ] Initializing speech engine...
[2026-08-25 17:14:39,361.361 INFO    ] 2026-08-25 17:14:39
[2026-08-25 17:14:39,625.625 INFO    ] 2026-08-25 17:14:39
[2026-08-25 17:14:39,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:14:39,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:14:39,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:14:40,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:14:40,035.035 INFO    ] time= 25/08/2026 17:14:40
[2026-08-25 17:14:40,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:14:40,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:14:40,211.211 INFO    ] No existing commands found in stream
[2026-08-25 17:14:45,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:14:45,244.244 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 17:14:46,475.475 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:14:46,478.478 INFO    ] Checking for system updates...
[2026-08-25 17:14:46,513.513 INFO    ] 200
[2026-08-25 17:14:46,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:46,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:14:46,571.571 INFO    ] No update needed
[2026-08-25 17:14:46,574.574 INFO    ] Checking for camera pi updates...
[2026-08-25 17:14:46,607.607 INFO    ] 200
[2026-08-25 17:14:46,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:46,649.649 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:14:46,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:14:46,698.698 INFO    ] No camera update needed
[2026-08-25 17:14:46,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:14:46,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:14:46,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:14:46,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:14:48,754.754 INFO    ] ================================================
[2026-08-25 17:14:48,769.769 INFO    ] Launching Daemon at Tue Aug 25 17:14:48 IST 2026
[2026-08-25 17:14:48,780.780 INFO    ] ================================================
[2026-08-25 17:14:49,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:14:49
[2026-08-25 17:14:49,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:14:50,234.234 INFO    ] Initializing speech engine...
[2026-08-25 17:14:50,243.243 INFO    ] 2026-08-25 17:14:50
[2026-08-25 17:14:50,502.502 INFO    ] 2026-08-25 17:14:50
[2026-08-25 17:14:50,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:14:50,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:14:50,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:14:51,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:14:51,047.047 INFO    ] time= 25/08/2026 17:14:51
[2026-08-25 17:14:51,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:14:51,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:14:51,207.207 INFO    ] No existing commands found in stream
[2026-08-25 17:14:56,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:14:56,240.240 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 17:14:59,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:14:59,608.608 INFO    ] Checking for system updates...
[2026-08-25 17:14:59,643.643 INFO    ] 200
[2026-08-25 17:14:59,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:59,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:14:59,862.862 INFO    ] No update needed
[2026-08-25 17:14:59,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 17:14:59,914.914 INFO    ] 200
[2026-08-25 17:14:59,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:14:59,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:15:00,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:15:00,007.007 INFO    ] No camera update needed
[2026-08-25 17:15:00,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:15:00,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:15:00,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:15:00,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:15:02,085.085 INFO    ] ================================================
[2026-08-25 17:15:02,137.137 INFO    ] Launching Daemon at Tue Aug 25 17:15:02 IST 2026
[2026-08-25 17:15:02,185.185 INFO    ] ================================================
[2026-08-25 17:15:03,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:15:03
[2026-08-25 17:15:03,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:15:04,150.150 INFO    ] Initializing speech engine...
[2026-08-25 17:15:04,162.162 INFO    ] 2026-08-25 17:15:04
[2026-08-25 17:15:04,427.427 INFO    ] 2026-08-25 17:15:04
[2026-08-25 17:15:04,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:15:04,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:15:04,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:15:04,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:15:04,899.899 INFO    ] time= 25/08/2026 17:15:04
[2026-08-25 17:15:04,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:15:04,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:15:05,096.096 INFO    ] No existing commands found in stream
[2026-08-25 17:15:10,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:15:10,111.111 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 17:15:14,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:15:14,120.120 INFO    ] Checking for system updates...
[2026-08-25 17:15:14,162.162 INFO    ] 200
[2026-08-25 17:15:14,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:14,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:15:14,220.220 INFO    ] No update needed
[2026-08-25 17:15:14,223.223 INFO    ] Checking for camera pi updates...
[2026-08-25 17:15:14,257.257 INFO    ] 200
[2026-08-25 17:15:14,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:14,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:15:14,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:15:14,350.350 INFO    ] No camera update needed
[2026-08-25 17:15:14,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:15:14,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:15:14,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:15:14,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:15:16,404.404 INFO    ] ================================================
[2026-08-25 17:15:16,420.420 INFO    ] Launching Daemon at Tue Aug 25 17:15:16 IST 2026
[2026-08-25 17:15:16,430.430 INFO    ] ================================================
[2026-08-25 17:15:17,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:15:17
[2026-08-25 17:15:17,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:15:17,881.881 INFO    ] Initializing speech engine...
[2026-08-25 17:15:17,902.902 INFO    ] 2026-08-25 17:15:17
[2026-08-25 17:15:18,171.171 INFO    ] 2026-08-25 17:15:18
[2026-08-25 17:15:18,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:15:18,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:15:18,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:15:18,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:15:18,692.692 INFO    ] time= 25/08/2026 17:15:18
[2026-08-25 17:15:18,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:15:18,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:15:18,931.931 INFO    ] No existing commands found in stream
[2026-08-25 17:15:23,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:15:23,959.959 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 17:15:26,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:15:26,467.467 INFO    ] Checking for system updates...
[2026-08-25 17:15:26,508.508 INFO    ] 200
[2026-08-25 17:15:26,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:26,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:15:26,571.571 INFO    ] No update needed
[2026-08-25 17:15:26,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 17:15:26,612.612 INFO    ] 200
[2026-08-25 17:15:26,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:26,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:15:26,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:15:26,723.723 INFO    ] No camera update needed
[2026-08-25 17:15:26,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:15:26,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:15:26,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:15:26,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:15:28,788.788 INFO    ] ================================================
[2026-08-25 17:15:28,809.809 INFO    ] Launching Daemon at Tue Aug 25 17:15:28 IST 2026
[2026-08-25 17:15:28,820.820 INFO    ] ================================================
[2026-08-25 17:15:29,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:15:29
[2026-08-25 17:15:30,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:15:30,297.297 INFO    ] Initializing speech engine...
[2026-08-25 17:15:30,313.313 INFO    ] 2026-08-25 17:15:30
[2026-08-25 17:15:30,602.602 INFO    ] 2026-08-25 17:15:30
[2026-08-25 17:15:30,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:15:30,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:15:30,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:15:30,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:15:30,987.987 INFO    ] time= 25/08/2026 17:15:30
[2026-08-25 17:15:31,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:15:31,029.029 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:15:31,116.116 INFO    ] No existing commands found in stream
[2026-08-25 17:15:36,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:15:36,150.150 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 17:15:36,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:15:36,696.696 INFO    ] Checking for system updates...
[2026-08-25 17:15:36,731.731 INFO    ] 200
[2026-08-25 17:15:36,734.734 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:36,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:15:36,789.789 INFO    ] No update needed
[2026-08-25 17:15:36,792.792 INFO    ] Checking for camera pi updates...
[2026-08-25 17:15:36,825.825 INFO    ] 200
[2026-08-25 17:15:36,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:36,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:15:36,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:15:36,946.946 INFO    ] No camera update needed
[2026-08-25 17:15:36,948.948 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:15:36,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:15:36,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:15:36,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:15:39,999.999 INFO    ] ================================================
[2026-08-25 17:15:39,014.014 INFO    ] Launching Daemon at Tue Aug 25 17:15:39 IST 2026
[2026-08-25 17:15:39,025.025 INFO    ] ================================================
[2026-08-25 17:15:39,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:15:39
[2026-08-25 17:15:40,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:15:40,447.447 INFO    ] Initializing speech engine...
[2026-08-25 17:15:40,456.456 INFO    ] 2026-08-25 17:15:40
[2026-08-25 17:15:40,719.719 INFO    ] 2026-08-25 17:15:40
[2026-08-25 17:15:40,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:15:40,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:15:40,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:15:41,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:15:41,142.142 INFO    ] time= 25/08/2026 17:15:41
[2026-08-25 17:15:41,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:15:41,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:15:41,336.336 INFO    ] No existing commands found in stream
[2026-08-25 17:15:46,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:15:46,368.368 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 17:15:48,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:15:48,327.327 INFO    ] Checking for system updates...
[2026-08-25 17:15:48,368.368 INFO    ] 200
[2026-08-25 17:15:48,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:48,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:15:48,432.432 INFO    ] No update needed
[2026-08-25 17:15:48,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 17:15:48,468.468 INFO    ] 200
[2026-08-25 17:15:48,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:15:48,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:15:48,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:15:48,574.574 INFO    ] No camera update needed
[2026-08-25 17:15:48,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:15:48,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:15:48,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:15:48,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:15:50,637.637 INFO    ] ================================================
[2026-08-25 17:15:50,652.652 INFO    ] Launching Daemon at Tue Aug 25 17:15:50 IST 2026
[2026-08-25 17:15:50,663.663 INFO    ] ================================================
[2026-08-25 17:15:51,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:15:51
[2026-08-25 17:15:51,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:15:52,114.114 INFO    ] Initializing speech engine...
[2026-08-25 17:15:52,124.124 INFO    ] 2026-08-25 17:15:52
[2026-08-25 17:15:52,385.385 INFO    ] 2026-08-25 17:15:52
[2026-08-25 17:15:52,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:15:52,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:15:52,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:15:52,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:15:52,868.868 INFO    ] time= 25/08/2026 17:15:52
[2026-08-25 17:15:52,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:15:52,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:15:53,068.068 INFO    ] No existing commands found in stream
[2026-08-25 17:15:58,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:15:58,093.093 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 17:16:01,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:16:01,008.008 INFO    ] Checking for system updates...
[2026-08-25 17:16:01,045.045 INFO    ] 200
[2026-08-25 17:16:01,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:01,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:01,104.104 INFO    ] No update needed
[2026-08-25 17:16:01,106.106 INFO    ] Checking for camera pi updates...
[2026-08-25 17:16:01,140.140 INFO    ] 200
[2026-08-25 17:16:01,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:01,184.184 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:16:01,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:01,335.335 INFO    ] No camera update needed
[2026-08-25 17:16:01,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:16:01,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:16:01,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:16:01,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:16:03,395.395 INFO    ] ================================================
[2026-08-25 17:16:03,410.410 INFO    ] Launching Daemon at Tue Aug 25 17:16:03 IST 2026
[2026-08-25 17:16:03,421.421 INFO    ] ================================================
[2026-08-25 17:16:04,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:16:03
[2026-08-25 17:16:04,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:16:04,887.887 INFO    ] Initializing speech engine...
[2026-08-25 17:16:04,896.896 INFO    ] 2026-08-25 17:16:04
[2026-08-25 17:16:05,165.165 INFO    ] 2026-08-25 17:16:05
[2026-08-25 17:16:05,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:16:05,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:16:05,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:16:05,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:16:05,569.569 INFO    ] time= 25/08/2026 17:16:05
[2026-08-25 17:16:05,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:16:05,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:16:05,768.768 INFO    ] No existing commands found in stream
[2026-08-25 17:16:10,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:16:10,796.796 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 17:16:14,923.923 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:16:14,926.926 INFO    ] Checking for system updates...
[2026-08-25 17:16:14,962.962 INFO    ] 200
[2026-08-25 17:16:14,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:15,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:15,025.025 INFO    ] No update needed
[2026-08-25 17:16:15,028.028 INFO    ] Checking for camera pi updates...
[2026-08-25 17:16:15,065.065 INFO    ] 200
[2026-08-25 17:16:15,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:15,112.112 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:16:15,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:15,239.239 INFO    ] No camera update needed
[2026-08-25 17:16:15,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:16:15,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:16:15,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:16:15,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:16:17,295.295 INFO    ] ================================================
[2026-08-25 17:16:17,310.310 INFO    ] Launching Daemon at Tue Aug 25 17:16:17 IST 2026
[2026-08-25 17:16:17,320.320 INFO    ] ================================================
[2026-08-25 17:16:17,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:16:17
[2026-08-25 17:16:18,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:16:18,800.800 INFO    ] Initializing speech engine...
[2026-08-25 17:16:18,809.809 INFO    ] 2026-08-25 17:16:18
[2026-08-25 17:16:19,058.058 INFO    ] 2026-08-25 17:16:19
[2026-08-25 17:16:19,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:16:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:16:19,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:16:19,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:16:19,572.572 INFO    ] time= 25/08/2026 17:16:19
[2026-08-25 17:16:19,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:16:19,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:16:19,790.790 INFO    ] No existing commands found in stream
[2026-08-25 17:16:24,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:16:24,818.818 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 17:16:27,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:16:27,997.997 INFO    ] Checking for system updates...
[2026-08-25 17:16:28,036.036 INFO    ] 200
[2026-08-25 17:16:28,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:28,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:16:28,094.094 INFO    ] No update needed
[2026-08-25 17:16:28,097.097 INFO    ] Checking for camera pi updates...
[2026-08-25 17:16:28,138.138 INFO    ] 200
[2026-08-25 17:16:28,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:28,191.191 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:16:28,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:16:28,254.254 INFO    ] No camera update needed
[2026-08-25 17:16:28,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:16:28,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:16:28,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:16:28,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:16:30,310.310 INFO    ] ================================================
[2026-08-25 17:16:30,326.326 INFO    ] Launching Daemon at Tue Aug 25 17:16:30 IST 2026
[2026-08-25 17:16:30,337.337 INFO    ] ================================================
[2026-08-25 17:16:30,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:16:30
[2026-08-25 17:16:31,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:16:31,794.794 INFO    ] Initializing speech engine...
[2026-08-25 17:16:31,802.802 INFO    ] 2026-08-25 17:16:31
[2026-08-25 17:16:32,053.053 INFO    ] 2026-08-25 17:16:32
[2026-08-25 17:16:32,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:16:32,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:16:32,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:16:32,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:16:32,576.576 INFO    ] time= 25/08/2026 17:16:32
[2026-08-25 17:16:32,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:16:32,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:16:32,764.764 INFO    ] No existing commands found in stream
[2026-08-25 17:16:37,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:16:37,797.797 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 17:16:38,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:16:38,601.601 INFO    ] Checking for system updates...
[2026-08-25 17:16:38,637.637 INFO    ] 200
[2026-08-25 17:16:38,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:38,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:38,696.696 INFO    ] No update needed
[2026-08-25 17:16:38,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 17:16:38,733.733 INFO    ] 200
[2026-08-25 17:16:38,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:38,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:16:38,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:38,841.841 INFO    ] No camera update needed
[2026-08-25 17:16:38,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:16:38,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:16:38,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:16:38,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:16:40,896.896 INFO    ] ================================================
[2026-08-25 17:16:40,912.912 INFO    ] Launching Daemon at Tue Aug 25 17:16:40 IST 2026
[2026-08-25 17:16:40,922.922 INFO    ] ================================================
[2026-08-25 17:16:41,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:16:41
[2026-08-25 17:16:42,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:16:42,478.478 INFO    ] Initializing speech engine...
[2026-08-25 17:16:42,491.491 INFO    ] 2026-08-25 17:16:42
[2026-08-25 17:16:42,765.765 INFO    ] 2026-08-25 17:16:42
[2026-08-25 17:16:42,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:16:43,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:16:43,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:16:43,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:16:43,251.251 INFO    ] time= 25/08/2026 17:16:43
[2026-08-25 17:16:43,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:16:43,323.323 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:16:43,436.436 INFO    ] No existing commands found in stream
[2026-08-25 17:16:48,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:16:48,450.450 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 17:16:50,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:16:50,861.861 INFO    ] Checking for system updates...
[2026-08-25 17:16:50,897.897 INFO    ] 200
[2026-08-25 17:16:50,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:50,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:50,956.956 INFO    ] No update needed
[2026-08-25 17:16:50,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 17:16:50,993.993 INFO    ] 200
[2026-08-25 17:16:50,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:16:51,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:16:51,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:16:51,086.086 INFO    ] No camera update needed
[2026-08-25 17:16:51,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:16:51,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:16:51,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:16:51,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:16:53,140.140 INFO    ] ================================================
[2026-08-25 17:16:53,155.155 INFO    ] Launching Daemon at Tue Aug 25 17:16:53 IST 2026
[2026-08-25 17:16:53,166.166 INFO    ] ================================================
[2026-08-25 17:16:53,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:16:53
[2026-08-25 17:16:54,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:16:54,725.725 INFO    ] Initializing speech engine...
[2026-08-25 17:16:54,733.733 INFO    ] 2026-08-25 17:16:54
[2026-08-25 17:16:55,002.002 INFO    ] 2026-08-25 17:16:54
[2026-08-25 17:16:55,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:16:55,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:16:55,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:16:55,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:16:55,474.474 INFO    ] time= 25/08/2026 17:16:55
[2026-08-25 17:16:55,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:16:55,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:16:55,707.707 INFO    ] No existing commands found in stream
[2026-08-25 17:17:00,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:17:00,736.736 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 17:17:03,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:17:03,439.439 INFO    ] Checking for system updates...
[2026-08-25 17:17:03,476.476 INFO    ] 200
[2026-08-25 17:17:03,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:03,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:17:03,536.536 INFO    ] No update needed
[2026-08-25 17:17:03,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 17:17:03,573.573 INFO    ] 200
[2026-08-25 17:17:03,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:03,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:17:03,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:17:03,672.672 INFO    ] No camera update needed
[2026-08-25 17:17:03,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:17:03,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:17:03,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:17:03,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:17:05,730.730 INFO    ] ================================================
[2026-08-25 17:17:05,745.745 INFO    ] Launching Daemon at Tue Aug 25 17:17:05 IST 2026
[2026-08-25 17:17:05,755.755 INFO    ] ================================================
[2026-08-25 17:17:06,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:17:06
[2026-08-25 17:17:06,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:17:07,218.218 INFO    ] Initializing speech engine...
[2026-08-25 17:17:07,227.227 INFO    ] 2026-08-25 17:17:07
[2026-08-25 17:17:07,485.485 INFO    ] 2026-08-25 17:17:07
[2026-08-25 17:17:07,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:17:07,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:17:07,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:17:07,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:17:07,976.976 INFO    ] time= 25/08/2026 17:17:07
[2026-08-25 17:17:08,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:17:08,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:17:08,179.179 INFO    ] No existing commands found in stream
[2026-08-25 17:17:13,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:17:13,200.200 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 17:17:16,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:17:16,789.789 INFO    ] Checking for system updates...
[2026-08-25 17:17:16,824.824 INFO    ] 200
[2026-08-25 17:17:16,826.826 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:16,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:17:16,882.882 INFO    ] No update needed
[2026-08-25 17:17:16,885.885 INFO    ] Checking for camera pi updates...
[2026-08-25 17:17:16,920.920 INFO    ] 200
[2026-08-25 17:17:16,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:16,964.964 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:17:17,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:17:17,015.015 INFO    ] No camera update needed
[2026-08-25 17:17:17,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:17:17,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:17:17,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:17:17,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:17:19,071.071 INFO    ] ================================================
[2026-08-25 17:17:19,086.086 INFO    ] Launching Daemon at Tue Aug 25 17:17:19 IST 2026
[2026-08-25 17:17:19,097.097 INFO    ] ================================================
[2026-08-25 17:17:19,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:17:19
[2026-08-25 17:17:20,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:17:20,665.665 INFO    ] Initializing speech engine...
[2026-08-25 17:17:20,675.675 INFO    ] 2026-08-25 17:17:20
[2026-08-25 17:17:20,952.952 INFO    ] 2026-08-25 17:17:20
[2026-08-25 17:17:21,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:17:21,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:17:21,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:17:21,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:17:21,508.508 INFO    ] time= 25/08/2026 17:17:21
[2026-08-25 17:17:21,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:17:21,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:17:21,669.669 INFO    ] No existing commands found in stream
[2026-08-25 17:17:26,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:17:26,684.684 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 17:17:28,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:17:28,196.196 INFO    ] Checking for system updates...
[2026-08-25 17:17:28,232.232 INFO    ] 200
[2026-08-25 17:17:28,235.235 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:28,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:17:28,291.291 INFO    ] No update needed
[2026-08-25 17:17:28,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 17:17:28,330.330 INFO    ] 200
[2026-08-25 17:17:28,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:28,374.374 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:17:28,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:17:28,428.428 INFO    ] No camera update needed
[2026-08-25 17:17:28,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:17:28,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:17:28,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:17:28,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:17:30,482.482 INFO    ] ================================================
[2026-08-25 17:17:30,497.497 INFO    ] Launching Daemon at Tue Aug 25 17:17:30 IST 2026
[2026-08-25 17:17:30,507.507 INFO    ] ================================================
[2026-08-25 17:17:31,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:17:31
[2026-08-25 17:17:31,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:17:32,163.163 INFO    ] Initializing speech engine...
[2026-08-25 17:17:32,174.174 INFO    ] 2026-08-25 17:17:32
[2026-08-25 17:17:32,500.500 INFO    ] 2026-08-25 17:17:32
[2026-08-25 17:17:32,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:17:32,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:17:32,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:17:32,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:17:32,979.979 INFO    ] time= 25/08/2026 17:17:32
[2026-08-25 17:17:33,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:17:33,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:17:33,205.205 INFO    ] No existing commands found in stream
[2026-08-25 17:17:38,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:17:38,233.233 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 17:17:39,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:17:39,608.608 INFO    ] Checking for system updates...
[2026-08-25 17:17:39,643.643 INFO    ] 200
[2026-08-25 17:17:39,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:39,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:17:39,705.705 INFO    ] No update needed
[2026-08-25 17:17:39,707.707 INFO    ] Checking for camera pi updates...
[2026-08-25 17:17:39,740.740 INFO    ] 200
[2026-08-25 17:17:39,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:39,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:17:39,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:17:39,840.840 INFO    ] No camera update needed
[2026-08-25 17:17:39,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:17:39,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:17:39,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:17:39,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:17:41,894.894 INFO    ] ================================================
[2026-08-25 17:17:41,909.909 INFO    ] Launching Daemon at Tue Aug 25 17:17:41 IST 2026
[2026-08-25 17:17:41,919.919 INFO    ] ================================================
[2026-08-25 17:17:42,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:17:42
[2026-08-25 17:17:43,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:17:43,332.332 INFO    ] Initializing speech engine...
[2026-08-25 17:17:43,356.356 INFO    ] 2026-08-25 17:17:43
[2026-08-25 17:17:43,632.632 INFO    ] 2026-08-25 17:17:43
[2026-08-25 17:17:43,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:17:43,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:17:43,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:17:44,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:17:44,133.133 INFO    ] time= 25/08/2026 17:17:44
[2026-08-25 17:17:44,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:17:44,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:17:44,413.413 INFO    ] No existing commands found in stream
[2026-08-25 17:17:49,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:17:49,435.435 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 17:17:50,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:17:50,810.810 INFO    ] Checking for system updates...
[2026-08-25 17:17:50,848.848 INFO    ] 200
[2026-08-25 17:17:50,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:50,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:17:50,905.905 INFO    ] No update needed
[2026-08-25 17:17:50,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 17:17:50,945.945 INFO    ] 200
[2026-08-25 17:17:50,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:17:50,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:17:51,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:17:51,065.065 INFO    ] No camera update needed
[2026-08-25 17:17:51,068.068 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:17:51,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:17:51,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:17:51,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:17:53,121.121 INFO    ] ================================================
[2026-08-25 17:17:53,136.136 INFO    ] Launching Daemon at Tue Aug 25 17:17:53 IST 2026
[2026-08-25 17:17:53,147.147 INFO    ] ================================================
[2026-08-25 17:17:53,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:17:53
[2026-08-25 17:17:54,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:17:54,591.591 INFO    ] Initializing speech engine...
[2026-08-25 17:17:54,601.601 INFO    ] 2026-08-25 17:17:54
[2026-08-25 17:17:54,850.850 INFO    ] 2026-08-25 17:17:54
[2026-08-25 17:17:54,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:17:55,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:17:55,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:17:55,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:17:55,417.417 INFO    ] time= 25/08/2026 17:17:55
[2026-08-25 17:17:55,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:17:55,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:17:55,568.568 INFO    ] No existing commands found in stream
[2026-08-25 17:18:00,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:18:00,588.588 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 17:18:02,441.441 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:18:02,445.445 INFO    ] Checking for system updates...
[2026-08-25 17:18:02,491.491 INFO    ] 200
[2026-08-25 17:18:02,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:02,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:02,577.577 INFO    ] No update needed
[2026-08-25 17:18:02,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 17:18:02,619.619 INFO    ] 200
[2026-08-25 17:18:02,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:02,678.678 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:18:02,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:02,734.734 INFO    ] No camera update needed
[2026-08-25 17:18:02,737.737 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:18:02,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:18:02,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:18:02,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:18:04,793.793 INFO    ] ================================================
[2026-08-25 17:18:04,808.808 INFO    ] Launching Daemon at Tue Aug 25 17:18:04 IST 2026
[2026-08-25 17:18:04,819.819 INFO    ] ================================================
[2026-08-25 17:18:05,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:18:05
[2026-08-25 17:18:05,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:18:06,301.301 INFO    ] Initializing speech engine...
[2026-08-25 17:18:06,308.308 INFO    ] 2026-08-25 17:18:06
[2026-08-25 17:18:06,587.587 INFO    ] 2026-08-25 17:18:06
[2026-08-25 17:18:06,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:18:06,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:18:06,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:18:07,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:18:07,146.146 INFO    ] time= 25/08/2026 17:18:07
[2026-08-25 17:18:07,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:18:07,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:18:07,338.338 INFO    ] No existing commands found in stream
[2026-08-25 17:18:12,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:18:12,362.362 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 17:18:15,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:18:15,755.755 INFO    ] Checking for system updates...
[2026-08-25 17:18:15,797.797 INFO    ] 200
[2026-08-25 17:18:15,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:15,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:15,861.861 INFO    ] No update needed
[2026-08-25 17:18:15,864.864 INFO    ] Checking for camera pi updates...
[2026-08-25 17:18:15,901.901 INFO    ] 200
[2026-08-25 17:18:15,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:15,944.944 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:18:16,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:16,027.027 INFO    ] No camera update needed
[2026-08-25 17:18:16,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:18:16,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:18:16,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:18:16,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:18:18,080.080 INFO    ] ================================================
[2026-08-25 17:18:18,095.095 INFO    ] Launching Daemon at Tue Aug 25 17:18:18 IST 2026
[2026-08-25 17:18:18,106.106 INFO    ] ================================================
[2026-08-25 17:18:18,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:18:18
[2026-08-25 17:18:19,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:18:19,578.578 INFO    ] Initializing speech engine...
[2026-08-25 17:18:19,585.585 INFO    ] 2026-08-25 17:18:19
[2026-08-25 17:18:19,846.846 INFO    ] 2026-08-25 17:18:19
[2026-08-25 17:18:19,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:18:20,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:18:20,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:18:20,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:18:20,388.388 INFO    ] time= 25/08/2026 17:18:20
[2026-08-25 17:18:20,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:18:20,411.411 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:18:20,543.543 INFO    ] No existing commands found in stream
[2026-08-25 17:18:25,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:18:25,568.568 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 17:18:28,135.135 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:18:28,138.138 INFO    ] Checking for system updates...
[2026-08-25 17:18:28,174.174 INFO    ] 200
[2026-08-25 17:18:28,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:28,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:28,238.238 INFO    ] No update needed
[2026-08-25 17:18:28,241.241 INFO    ] Checking for camera pi updates...
[2026-08-25 17:18:28,274.274 INFO    ] 200
[2026-08-25 17:18:28,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:28,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:18:28,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:28,373.373 INFO    ] No camera update needed
[2026-08-25 17:18:28,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:18:28,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:18:28,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:18:28,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:18:30,429.429 INFO    ] ================================================
[2026-08-25 17:18:30,444.444 INFO    ] Launching Daemon at Tue Aug 25 17:18:30 IST 2026
[2026-08-25 17:18:30,455.455 INFO    ] ================================================
[2026-08-25 17:18:31,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:18:31
[2026-08-25 17:18:31,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:18:31,905.905 INFO    ] Initializing speech engine...
[2026-08-25 17:18:31,922.922 INFO    ] 2026-08-25 17:18:31
[2026-08-25 17:18:32,192.192 INFO    ] 2026-08-25 17:18:32
[2026-08-25 17:18:32,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:18:32,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:18:32,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:18:32,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:18:32,736.736 INFO    ] time= 25/08/2026 17:18:32
[2026-08-25 17:18:32,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:18:32,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:18:32,934.934 INFO    ] No existing commands found in stream
[2026-08-25 17:18:37,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:18:37,962.962 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 17:18:39,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:18:39,039.039 INFO    ] Checking for system updates...
[2026-08-25 17:18:39,075.075 INFO    ] 200
[2026-08-25 17:18:39,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:39,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:39,140.140 INFO    ] No update needed
[2026-08-25 17:18:39,142.142 INFO    ] Checking for camera pi updates...
[2026-08-25 17:18:39,181.181 INFO    ] 200
[2026-08-25 17:18:39,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:39,229.229 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:18:39,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:18:39,377.377 INFO    ] No camera update needed
[2026-08-25 17:18:39,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:18:39,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:18:39,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:18:39,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:18:41,435.435 INFO    ] ================================================
[2026-08-25 17:18:41,454.454 INFO    ] Launching Daemon at Tue Aug 25 17:18:41 IST 2026
[2026-08-25 17:18:41,465.465 INFO    ] ================================================
[2026-08-25 17:18:42,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:18:42
[2026-08-25 17:18:42,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:18:42,881.881 INFO    ] Initializing speech engine...
[2026-08-25 17:18:42,890.890 INFO    ] 2026-08-25 17:18:42
[2026-08-25 17:18:43,142.142 INFO    ] 2026-08-25 17:18:43
[2026-08-25 17:18:43,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:18:44,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:18:44,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:18:44,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:18:44,622.622 INFO    ] time= 25/08/2026 17:18:44
[2026-08-25 17:18:44,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:18:44,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:18:44,715.715 INFO    ] No existing commands found in stream
[2026-08-25 17:18:49,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:18:49,729.729 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 17:18:52,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:18:52,233.233 INFO    ] Checking for system updates...
[2026-08-25 17:18:52,275.275 INFO    ] 200
[2026-08-25 17:18:52,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:52,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:18:52,341.341 INFO    ] No update needed
[2026-08-25 17:18:52,343.343 INFO    ] Checking for camera pi updates...
[2026-08-25 17:18:52,380.380 INFO    ] 200
[2026-08-25 17:18:52,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:18:52,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:18:52,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:18:52,480.480 INFO    ] No camera update needed
[2026-08-25 17:18:52,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:18:52,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:18:52,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:18:52,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:18:54,535.535 INFO    ] ================================================
[2026-08-25 17:18:54,550.550 INFO    ] Launching Daemon at Tue Aug 25 17:18:54 IST 2026
[2026-08-25 17:18:54,560.560 INFO    ] ================================================
[2026-08-25 17:18:55,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:18:55
[2026-08-25 17:18:55,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:18:55,986.986 INFO    ] Initializing speech engine...
[2026-08-25 17:18:55,998.998 INFO    ] 2026-08-25 17:18:55
[2026-08-25 17:18:56,243.243 INFO    ] 2026-08-25 17:18:56
[2026-08-25 17:18:56,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:18:56,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:18:56,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:18:56,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:18:56,671.671 INFO    ] time= 25/08/2026 17:18:56
[2026-08-25 17:18:56,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:18:56,679.679 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:18:56,806.806 INFO    ] No existing commands found in stream
[2026-08-25 17:19:01,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:19:01,820.820 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 17:19:05,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:19:05,258.258 INFO    ] Checking for system updates...
[2026-08-25 17:19:05,294.294 INFO    ] 200
[2026-08-25 17:19:05,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:05,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:05,353.353 INFO    ] No update needed
[2026-08-25 17:19:05,355.355 INFO    ] Checking for camera pi updates...
[2026-08-25 17:19:05,389.389 INFO    ] 200
[2026-08-25 17:19:05,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:05,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:19:05,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:05,513.513 INFO    ] No camera update needed
[2026-08-25 17:19:05,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:19:05,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:19:05,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:19:05,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:19:07,571.571 INFO    ] ================================================
[2026-08-25 17:19:07,586.586 INFO    ] Launching Daemon at Tue Aug 25 17:19:07 IST 2026
[2026-08-25 17:19:07,596.596 INFO    ] ================================================
[2026-08-25 17:19:08,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:19:08
[2026-08-25 17:19:08,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:19:09,039.039 INFO    ] Initializing speech engine...
[2026-08-25 17:19:09,052.052 INFO    ] 2026-08-25 17:19:09
[2026-08-25 17:19:09,339.339 INFO    ] 2026-08-25 17:19:09
[2026-08-25 17:19:09,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:19:09,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:19:09,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:19:09,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:19:09,768.768 INFO    ] time= 25/08/2026 17:19:09
[2026-08-25 17:19:09,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:19:09,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:19:09,890.890 INFO    ] No existing commands found in stream
[2026-08-25 17:19:14,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:19:14,913.913 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 17:19:17,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:19:17,211.211 INFO    ] Checking for system updates...
[2026-08-25 17:19:17,246.246 INFO    ] 200
[2026-08-25 17:19:17,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:17,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:17,314.314 INFO    ] No update needed
[2026-08-25 17:19:17,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 17:19:17,354.354 INFO    ] 200
[2026-08-25 17:19:17,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:17,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:19:17,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:17,453.453 INFO    ] No camera update needed
[2026-08-25 17:19:17,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:19:17,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:19:17,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:19:17,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:19:19,508.508 INFO    ] ================================================
[2026-08-25 17:19:19,529.529 INFO    ] Launching Daemon at Tue Aug 25 17:19:19 IST 2026
[2026-08-25 17:19:19,541.541 INFO    ] ================================================
[2026-08-25 17:19:20,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:19:20
[2026-08-25 17:19:20,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:19:20,998.998 INFO    ] Initializing speech engine...
[2026-08-25 17:19:21,007.007 INFO    ] 2026-08-25 17:19:21
[2026-08-25 17:19:21,270.270 INFO    ] 2026-08-25 17:19:21
[2026-08-25 17:19:21,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:19:21,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:19:21,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:19:21,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:19:21,813.813 INFO    ] time= 25/08/2026 17:19:21
[2026-08-25 17:19:21,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:19:21,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:19:21,969.969 INFO    ] No existing commands found in stream
[2026-08-25 17:19:26,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:19:26,989.989 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 17:19:30,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:19:30,323.323 INFO    ] Checking for system updates...
[2026-08-25 17:19:30,364.364 INFO    ] 200
[2026-08-25 17:19:30,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:30,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:19:30,428.428 INFO    ] No update needed
[2026-08-25 17:19:30,430.430 INFO    ] Checking for camera pi updates...
[2026-08-25 17:19:30,464.464 INFO    ] 200
[2026-08-25 17:19:30,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:30,507.507 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:19:30,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:19:30,553.553 INFO    ] No camera update needed
[2026-08-25 17:19:30,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:19:30,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:19:30,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:19:30,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:19:32,615.615 INFO    ] ================================================
[2026-08-25 17:19:32,631.631 INFO    ] Launching Daemon at Tue Aug 25 17:19:32 IST 2026
[2026-08-25 17:19:32,642.642 INFO    ] ================================================
[2026-08-25 17:19:33,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:19:33
[2026-08-25 17:19:33,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:19:34,303.303 INFO    ] Initializing speech engine...
[2026-08-25 17:19:34,310.310 INFO    ] 2026-08-25 17:19:34
[2026-08-25 17:19:34,626.626 INFO    ] 2026-08-25 17:19:34
[2026-08-25 17:19:34,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:19:34,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:19:34,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:19:35,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:19:35,158.158 INFO    ] time= 25/08/2026 17:19:35
[2026-08-25 17:19:35,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:19:35,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:19:35,318.318 INFO    ] No existing commands found in stream
[2026-08-25 17:19:40,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:19:40,353.353 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 17:19:41,617.617 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:19:41,620.620 INFO    ] Checking for system updates...
[2026-08-25 17:19:41,657.657 INFO    ] 200
[2026-08-25 17:19:41,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:41,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:41,713.713 INFO    ] No update needed
[2026-08-25 17:19:41,716.716 INFO    ] Checking for camera pi updates...
[2026-08-25 17:19:41,749.749 INFO    ] 200
[2026-08-25 17:19:41,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:41,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:19:41,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:41,848.848 INFO    ] No camera update needed
[2026-08-25 17:19:41,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:19:41,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:19:41,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:19:41,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:19:43,902.902 INFO    ] ================================================
[2026-08-25 17:19:43,919.919 INFO    ] Launching Daemon at Tue Aug 25 17:19:43 IST 2026
[2026-08-25 17:19:43,930.930 INFO    ] ================================================
[2026-08-25 17:19:44,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:19:44
[2026-08-25 17:19:45,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:19:45,448.448 INFO    ] Initializing speech engine...
[2026-08-25 17:19:45,460.460 INFO    ] 2026-08-25 17:19:45
[2026-08-25 17:19:45,767.767 INFO    ] 2026-08-25 17:19:45
[2026-08-25 17:19:45,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:19:46,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:19:46,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:19:46,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:19:46,286.286 INFO    ] time= 25/08/2026 17:19:46
[2026-08-25 17:19:46,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:19:46,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:19:46,430.430 INFO    ] No existing commands found in stream
[2026-08-25 17:19:51,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:19:51,457.457 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 17:19:53,374.374 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:19:53,377.377 INFO    ] Checking for system updates...
[2026-08-25 17:19:53,418.418 INFO    ] 200
[2026-08-25 17:19:53,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:53,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:53,485.485 INFO    ] No update needed
[2026-08-25 17:19:53,488.488 INFO    ] Checking for camera pi updates...
[2026-08-25 17:19:53,527.527 INFO    ] 200
[2026-08-25 17:19:53,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:19:53,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:19:53,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:19:53,620.620 INFO    ] No camera update needed
[2026-08-25 17:19:53,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:19:53,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:19:53,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:19:53,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:19:55,678.678 INFO    ] ================================================
[2026-08-25 17:19:55,693.693 INFO    ] Launching Daemon at Tue Aug 25 17:19:55 IST 2026
[2026-08-25 17:19:55,704.704 INFO    ] ================================================
[2026-08-25 17:19:56,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:19:56
[2026-08-25 17:19:57,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:19:57,356.356 INFO    ] Initializing speech engine...
[2026-08-25 17:19:57,368.368 INFO    ] 2026-08-25 17:19:57
[2026-08-25 17:19:57,678.678 INFO    ] 2026-08-25 17:19:57
[2026-08-25 17:19:57,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:19:57,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:19:57,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:19:58,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:19:58,182.182 INFO    ] time= 25/08/2026 17:19:58
[2026-08-25 17:19:58,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:19:58,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:19:58,338.338 INFO    ] No existing commands found in stream
[2026-08-25 17:20:03,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:20:03,361.361 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 17:20:08,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:20:08,473.473 INFO    ] Checking for system updates...
[2026-08-25 17:20:08,510.510 INFO    ] 200
[2026-08-25 17:20:08,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:08,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:20:08,569.569 INFO    ] No update needed
[2026-08-25 17:20:08,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 17:20:08,605.605 INFO    ] 200
[2026-08-25 17:20:08,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:08,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:20:08,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:20:08,704.704 INFO    ] No camera update needed
[2026-08-25 17:20:08,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:20:08,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:20:08,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:20:08,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:20:10,759.759 INFO    ] ================================================
[2026-08-25 17:20:10,775.775 INFO    ] Launching Daemon at Tue Aug 25 17:20:10 IST 2026
[2026-08-25 17:20:10,786.786 INFO    ] ================================================
[2026-08-25 17:20:11,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:20:11
[2026-08-25 17:20:12,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:20:12,446.446 INFO    ] Initializing speech engine...
[2026-08-25 17:20:12,458.458 INFO    ] 2026-08-25 17:20:12
[2026-08-25 17:20:12,770.770 INFO    ] 2026-08-25 17:20:12
[2026-08-25 17:20:12,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:20:13,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:20:13,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:20:13,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:20:13,326.326 INFO    ] time= 25/08/2026 17:20:13
[2026-08-25 17:20:13,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:20:13,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:20:13,587.587 INFO    ] No existing commands found in stream
[2026-08-25 17:20:18,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:20:18,626.626 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 17:20:19,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:20:19,504.504 INFO    ] Checking for system updates...
[2026-08-25 17:20:19,541.541 INFO    ] 200
[2026-08-25 17:20:19,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:19,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:20:19,609.609 INFO    ] No update needed
[2026-08-25 17:20:19,611.611 INFO    ] Checking for camera pi updates...
[2026-08-25 17:20:19,653.653 INFO    ] 200
[2026-08-25 17:20:19,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:19,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:20:19,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:20:19,762.762 INFO    ] No camera update needed
[2026-08-25 17:20:19,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:20:19,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:20:19,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:20:19,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:20:21,817.817 INFO    ] ================================================
[2026-08-25 17:20:21,832.832 INFO    ] Launching Daemon at Tue Aug 25 17:20:21 IST 2026
[2026-08-25 17:20:21,843.843 INFO    ] ================================================
[2026-08-25 17:20:22,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:20:22
[2026-08-25 17:20:23,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:20:23,285.285 INFO    ] Initializing speech engine...
[2026-08-25 17:20:23,292.292 INFO    ] 2026-08-25 17:20:23
[2026-08-25 17:20:23,591.591 INFO    ] 2026-08-25 17:20:23
[2026-08-25 17:20:23,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:20:23,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:20:23,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:20:24,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:20:24,019.019 INFO    ] time= 25/08/2026 17:20:24
[2026-08-25 17:20:24,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:20:24,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:20:24,186.186 INFO    ] No existing commands found in stream
[2026-08-25 17:20:29,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:20:29,214.214 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 17:20:31,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:20:31,083.083 INFO    ] Checking for system updates...
[2026-08-25 17:20:31,123.123 INFO    ] 200
[2026-08-25 17:20:31,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:31,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:20:31,183.183 INFO    ] No update needed
[2026-08-25 17:20:31,185.185 INFO    ] Checking for camera pi updates...
[2026-08-25 17:20:31,219.219 INFO    ] 200
[2026-08-25 17:20:31,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:31,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:20:31,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:20:31,317.317 INFO    ] No camera update needed
[2026-08-25 17:20:31,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:20:31,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:20:31,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:20:31,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:20:33,375.375 INFO    ] ================================================
[2026-08-25 17:20:33,389.389 INFO    ] Launching Daemon at Tue Aug 25 17:20:33 IST 2026
[2026-08-25 17:20:33,400.400 INFO    ] ================================================
[2026-08-25 17:20:33,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:20:33
[2026-08-25 17:20:34,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:20:34,842.842 INFO    ] Initializing speech engine...
[2026-08-25 17:20:34,851.851 INFO    ] 2026-08-25 17:20:34
[2026-08-25 17:20:35,149.149 INFO    ] 2026-08-25 17:20:35
[2026-08-25 17:20:35,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:20:35,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:20:35,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:20:35,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:20:35,668.668 INFO    ] time= 25/08/2026 17:20:35
[2026-08-25 17:20:35,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:20:35,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:20:35,935.935 INFO    ] No existing commands found in stream
[2026-08-25 17:20:40,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:20:40,955.955 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 17:20:45,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:20:45,106.106 INFO    ] Checking for system updates...
[2026-08-25 17:20:45,141.141 INFO    ] 200
[2026-08-25 17:20:45,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:45,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:20:45,206.206 INFO    ] No update needed
[2026-08-25 17:20:45,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 17:20:45,242.242 INFO    ] 200
[2026-08-25 17:20:45,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:45,285.285 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:20:45,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:20:45,430.430 INFO    ] No camera update needed
[2026-08-25 17:20:45,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:20:45,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:20:45,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:20:45,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:20:47,487.487 INFO    ] ================================================
[2026-08-25 17:20:47,502.502 INFO    ] Launching Daemon at Tue Aug 25 17:20:47 IST 2026
[2026-08-25 17:20:47,513.513 INFO    ] ================================================
[2026-08-25 17:20:48,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:20:48
[2026-08-25 17:20:48,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:20:48,924.924 INFO    ] Initializing speech engine...
[2026-08-25 17:20:48,932.932 INFO    ] 2026-08-25 17:20:48
[2026-08-25 17:20:49,227.227 INFO    ] 2026-08-25 17:20:49
[2026-08-25 17:20:49,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:20:49,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:20:49,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:20:49,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:20:49,648.648 INFO    ] time= 25/08/2026 17:20:49
[2026-08-25 17:20:49,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:20:49,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:20:49,741.741 INFO    ] No existing commands found in stream
[2026-08-25 17:20:54,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:20:54,769.769 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 17:20:55,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:20:55,566.566 INFO    ] Checking for system updates...
[2026-08-25 17:20:55,601.601 INFO    ] 200
[2026-08-25 17:20:55,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:55,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:20:55,658.658 INFO    ] No update needed
[2026-08-25 17:20:55,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 17:20:55,694.694 INFO    ] 200
[2026-08-25 17:20:55,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:20:55,742.742 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:20:55,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:20:55,794.794 INFO    ] No camera update needed
[2026-08-25 17:20:55,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:20:55,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:20:55,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:20:55,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:20:57,849.849 INFO    ] ================================================
[2026-08-25 17:20:57,863.863 INFO    ] Launching Daemon at Tue Aug 25 17:20:57 IST 2026
[2026-08-25 17:20:57,874.874 INFO    ] ================================================
[2026-08-25 17:20:58,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:20:58
[2026-08-25 17:20:59,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:20:59,529.529 INFO    ] Initializing speech engine...
[2026-08-25 17:20:59,543.543 INFO    ] 2026-08-25 17:20:59
[2026-08-25 17:20:59,814.814 INFO    ] 2026-08-25 17:20:59
[2026-08-25 17:20:59,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:21:00,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:21:00,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:21:00,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:21:00,389.389 INFO    ] time= 25/08/2026 17:21:00
[2026-08-25 17:21:00,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:21:00,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:21:00,560.560 INFO    ] No existing commands found in stream
[2026-08-25 17:21:05,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:21:05,584.584 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 17:21:07,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:21:07,444.444 INFO    ] Checking for system updates...
[2026-08-25 17:21:07,483.483 INFO    ] 200
[2026-08-25 17:21:07,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:07,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:07,541.541 INFO    ] No update needed
[2026-08-25 17:21:07,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 17:21:07,577.577 INFO    ] 200
[2026-08-25 17:21:07,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:07,624.624 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:21:07,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:07,677.677 INFO    ] No camera update needed
[2026-08-25 17:21:07,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:21:07,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:21:07,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:21:07,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:21:09,731.731 INFO    ] ================================================
[2026-08-25 17:21:09,747.747 INFO    ] Launching Daemon at Tue Aug 25 17:21:09 IST 2026
[2026-08-25 17:21:09,758.758 INFO    ] ================================================
[2026-08-25 17:21:10,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:21:10
[2026-08-25 17:21:10,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:21:11,202.202 INFO    ] Initializing speech engine...
[2026-08-25 17:21:11,212.212 INFO    ] 2026-08-25 17:21:11
[2026-08-25 17:21:11,460.460 INFO    ] 2026-08-25 17:21:11
[2026-08-25 17:21:11,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:21:11,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:21:11,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:21:11,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:21:11,961.961 INFO    ] time= 25/08/2026 17:21:11
[2026-08-25 17:21:12,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:21:12,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:21:12,183.183 INFO    ] No existing commands found in stream
[2026-08-25 17:21:17,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:21:17,218.218 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 17:21:21,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:21:21,224.224 INFO    ] Checking for system updates...
[2026-08-25 17:21:21,259.259 INFO    ] 200
[2026-08-25 17:21:21,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:21,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:21,323.323 INFO    ] No update needed
[2026-08-25 17:21:21,326.326 INFO    ] Checking for camera pi updates...
[2026-08-25 17:21:21,359.359 INFO    ] 200
[2026-08-25 17:21:21,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:21,401.401 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:21:21,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:21,451.451 INFO    ] No camera update needed
[2026-08-25 17:21:21,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:21:21,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:21:21,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:21:21,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:21:23,506.506 INFO    ] ================================================
[2026-08-25 17:21:23,522.522 INFO    ] Launching Daemon at Tue Aug 25 17:21:23 IST 2026
[2026-08-25 17:21:23,534.534 INFO    ] ================================================
[2026-08-25 17:21:24,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:21:24
[2026-08-25 17:21:24,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:21:25,147.147 INFO    ] Initializing speech engine...
[2026-08-25 17:21:25,156.156 INFO    ] 2026-08-25 17:21:25
[2026-08-25 17:21:25,442.442 INFO    ] 2026-08-25 17:21:25
[2026-08-25 17:21:25,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:21:25,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:21:25,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:21:25,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:21:25,975.975 INFO    ] time= 25/08/2026 17:21:25
[2026-08-25 17:21:25,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:21:26,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:21:26,132.132 INFO    ] No existing commands found in stream
[2026-08-25 17:21:31,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:21:31,150.150 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 17:21:32,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:21:32,108.108 INFO    ] Checking for system updates...
[2026-08-25 17:21:32,151.151 INFO    ] 200
[2026-08-25 17:21:32,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:32,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:32,224.224 INFO    ] No update needed
[2026-08-25 17:21:32,227.227 INFO    ] Checking for camera pi updates...
[2026-08-25 17:21:32,276.276 INFO    ] 200
[2026-08-25 17:21:32,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:32,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:21:32,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:32,387.387 INFO    ] No camera update needed
[2026-08-25 17:21:32,390.390 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:21:32,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:21:32,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:21:32,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:21:34,447.447 INFO    ] ================================================
[2026-08-25 17:21:34,476.476 INFO    ] Launching Daemon at Tue Aug 25 17:21:34 IST 2026
[2026-08-25 17:21:34,487.487 INFO    ] ================================================
[2026-08-25 17:21:35,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:21:35
[2026-08-25 17:21:35,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:21:36,145.145 INFO    ] Initializing speech engine...
[2026-08-25 17:21:36,162.162 INFO    ] 2026-08-25 17:21:36
[2026-08-25 17:21:36,441.441 INFO    ] 2026-08-25 17:21:36
[2026-08-25 17:21:36,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:21:36,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:21:36,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:21:36,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:21:36,979.979 INFO    ] time= 25/08/2026 17:21:36
[2026-08-25 17:21:36,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:21:37,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:21:37,169.169 INFO    ] No existing commands found in stream
[2026-08-25 17:21:42,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:21:42,203.203 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 17:21:42,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:21:42,760.760 INFO    ] Checking for system updates...
[2026-08-25 17:21:42,796.796 INFO    ] 200
[2026-08-25 17:21:42,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:42,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:21:42,853.853 INFO    ] No update needed
[2026-08-25 17:21:42,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 17:21:42,892.892 INFO    ] 200
[2026-08-25 17:21:42,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:42,935.935 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:21:42,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:21:42,992.992 INFO    ] No camera update needed
[2026-08-25 17:21:42,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:21:42,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:21:43,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:21:43,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:21:45,046.046 INFO    ] ================================================
[2026-08-25 17:21:45,064.064 INFO    ] Launching Daemon at Tue Aug 25 17:21:45 IST 2026
[2026-08-25 17:21:45,076.076 INFO    ] ================================================
[2026-08-25 17:21:45,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:21:45
[2026-08-25 17:21:46,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:21:46,503.503 INFO    ] Initializing speech engine...
[2026-08-25 17:21:46,516.516 INFO    ] 2026-08-25 17:21:46
[2026-08-25 17:21:46,766.766 INFO    ] 2026-08-25 17:21:46
[2026-08-25 17:21:46,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:21:47,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:21:47,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:21:47,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:21:47,275.275 INFO    ] time= 25/08/2026 17:21:47
[2026-08-25 17:21:47,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:21:47,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:21:47,471.471 INFO    ] No existing commands found in stream
[2026-08-25 17:21:52,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:21:52,499.499 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 17:21:55,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:21:55,771.771 INFO    ] Checking for system updates...
[2026-08-25 17:21:55,811.811 INFO    ] 200
[2026-08-25 17:21:55,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:55,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:55,868.868 INFO    ] No update needed
[2026-08-25 17:21:55,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 17:21:55,909.909 INFO    ] 200
[2026-08-25 17:21:55,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:21:55,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:21:55,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:21:56,001.001 INFO    ] No camera update needed
[2026-08-25 17:21:56,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:21:56,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:21:56,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:21:56,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:21:58,057.057 INFO    ] ================================================
[2026-08-25 17:21:58,072.072 INFO    ] Launching Daemon at Tue Aug 25 17:21:58 IST 2026
[2026-08-25 17:21:58,082.082 INFO    ] ================================================
[2026-08-25 17:21:58,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:21:58
[2026-08-25 17:21:59,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:21:59,637.637 INFO    ] Initializing speech engine...
[2026-08-25 17:21:59,656.656 INFO    ] 2026-08-25 17:21:59
[2026-08-25 17:21:59,906.906 INFO    ] 2026-08-25 17:21:59
[2026-08-25 17:21:59,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:22:00,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:22:00,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:22:00,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:22:00,415.415 INFO    ] time= 25/08/2026 17:22:00
[2026-08-25 17:22:00,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:22:00,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:22:00,608.608 INFO    ] No existing commands found in stream
[2026-08-25 17:22:05,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:22:05,639.639 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-08-25 17:22:06,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:22:06,540.540 INFO    ] Checking for system updates...
[2026-08-25 17:22:06,575.575 INFO    ] 200
[2026-08-25 17:22:06,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:06,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:22:06,642.642 INFO    ] No update needed
[2026-08-25 17:22:06,644.644 INFO    ] Checking for camera pi updates...
[2026-08-25 17:22:06,681.681 INFO    ] 200
[2026-08-25 17:22:06,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:06,729.729 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:22:06,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:22:06,783.783 INFO    ] No camera update needed
[2026-08-25 17:22:06,787.787 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:22:06,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:22:06,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:22:06,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:22:08,848.848 INFO    ] ================================================
[2026-08-25 17:22:08,863.863 INFO    ] Launching Daemon at Tue Aug 25 17:22:08 IST 2026
[2026-08-25 17:22:08,874.874 INFO    ] ================================================
[2026-08-25 17:22:09,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:22:09
[2026-08-25 17:22:10,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:22:10,298.298 INFO    ] Initializing speech engine...
[2026-08-25 17:22:10,308.308 INFO    ] 2026-08-25 17:22:10
[2026-08-25 17:22:10,574.574 INFO    ] 2026-08-25 17:22:10
[2026-08-25 17:22:10,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:22:10,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:22:10,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:22:10,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:22:11,007.007 INFO    ] time= 25/08/2026 17:22:10
[2026-08-25 17:22:11,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:22:11,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:22:11,263.263 INFO    ] No existing commands found in stream
[2026-08-25 17:22:16,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:22:16,287.287 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 17:22:17,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:22:17,971.971 INFO    ] Checking for system updates...
[2026-08-25 17:22:18,009.009 INFO    ] 200
[2026-08-25 17:22:18,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:18,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:22:18,073.073 INFO    ] No update needed
[2026-08-25 17:22:18,075.075 INFO    ] Checking for camera pi updates...
[2026-08-25 17:22:18,109.109 INFO    ] 200
[2026-08-25 17:22:18,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:18,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:22:18,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:22:18,199.199 INFO    ] No camera update needed
[2026-08-25 17:22:18,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:22:18,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:22:18,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:22:18,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:22:20,255.255 INFO    ] ================================================
[2026-08-25 17:22:20,271.271 INFO    ] Launching Daemon at Tue Aug 25 17:22:20 IST 2026
[2026-08-25 17:22:20,281.281 INFO    ] ================================================
[2026-08-25 17:22:20,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:22:20
[2026-08-25 17:22:21,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:22:21,704.704 INFO    ] Initializing speech engine...
[2026-08-25 17:22:21,729.729 INFO    ] 2026-08-25 17:22:21
[2026-08-25 17:22:21,982.982 INFO    ] 2026-08-25 17:22:21
[2026-08-25 17:22:22,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:22:22,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:22:22,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:22:22,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:22:22,469.469 INFO    ] time= 25/08/2026 17:22:22
[2026-08-25 17:22:22,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:22:22,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:22:22,690.690 INFO    ] No existing commands found in stream
[2026-08-25 17:22:27,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:22:27,718.718 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 17:22:30,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:22:30,368.368 INFO    ] Checking for system updates...
[2026-08-25 17:22:30,403.403 INFO    ] 200
[2026-08-25 17:22:30,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:30,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:22:30,467.467 INFO    ] No update needed
[2026-08-25 17:22:30,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 17:22:30,502.502 INFO    ] 200
[2026-08-25 17:22:30,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:30,549.549 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:22:30,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:22:30,599.599 INFO    ] No camera update needed
[2026-08-25 17:22:30,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:22:30,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:22:30,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:22:30,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:22:32,656.656 INFO    ] ================================================
[2026-08-25 17:22:32,673.673 INFO    ] Launching Daemon at Tue Aug 25 17:22:32 IST 2026
[2026-08-25 17:22:32,685.685 INFO    ] ================================================
[2026-08-25 17:22:33,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:22:33
[2026-08-25 17:22:34,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:22:34,342.342 INFO    ] Initializing speech engine...
[2026-08-25 17:22:34,354.354 INFO    ] 2026-08-25 17:22:34
[2026-08-25 17:22:34,635.635 INFO    ] 2026-08-25 17:22:34
[2026-08-25 17:22:34,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:22:34,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:22:34,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:22:35,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:22:35,167.167 INFO    ] time= 25/08/2026 17:22:35
[2026-08-25 17:22:35,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:22:35,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:22:35,385.385 INFO    ] No existing commands found in stream
[2026-08-25 17:22:40,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:22:40,415.415 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 17:22:44,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:22:44,333.333 INFO    ] Checking for system updates...
[2026-08-25 17:22:44,375.375 INFO    ] 200
[2026-08-25 17:22:44,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:44,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:22:44,435.435 INFO    ] No update needed
[2026-08-25 17:22:44,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 17:22:44,476.476 INFO    ] 200
[2026-08-25 17:22:44,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:44,526.526 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:22:44,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:22:44,575.575 INFO    ] No camera update needed
[2026-08-25 17:22:44,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:22:44,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:22:44,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:22:44,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:22:46,634.634 INFO    ] ================================================
[2026-08-25 17:22:46,650.650 INFO    ] Launching Daemon at Tue Aug 25 17:22:46 IST 2026
[2026-08-25 17:22:46,661.661 INFO    ] ================================================
[2026-08-25 17:22:47,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:22:47
[2026-08-25 17:22:47,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:22:48,091.091 INFO    ] Initializing speech engine...
[2026-08-25 17:22:48,096.096 INFO    ] 2026-08-25 17:22:48
[2026-08-25 17:22:48,346.346 INFO    ] 2026-08-25 17:22:48
[2026-08-25 17:22:48,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:22:48,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:22:48,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:22:48,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:22:48,855.855 INFO    ] time= 25/08/2026 17:22:48
[2026-08-25 17:22:48,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:22:48,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:22:49,058.058 INFO    ] No existing commands found in stream
[2026-08-25 17:22:54,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:22:54,086.086 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 17:22:57,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:22:57,963.963 INFO    ] Checking for system updates...
[2026-08-25 17:22:58,001.001 INFO    ] 200
[2026-08-25 17:22:58,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:58,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:22:58,067.067 INFO    ] No update needed
[2026-08-25 17:22:58,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 17:22:58,108.108 INFO    ] 200
[2026-08-25 17:22:58,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:22:58,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:22:58,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:22:58,215.215 INFO    ] No camera update needed
[2026-08-25 17:22:58,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:22:58,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:22:58,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:22:58,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:23:00,275.275 INFO    ] ================================================
[2026-08-25 17:23:00,290.290 INFO    ] Launching Daemon at Tue Aug 25 17:23:00 IST 2026
[2026-08-25 17:23:00,301.301 INFO    ] ================================================
[2026-08-25 17:23:00,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:23:00
[2026-08-25 17:23:01,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:23:01,728.728 INFO    ] Initializing speech engine...
[2026-08-25 17:23:01,738.738 INFO    ] 2026-08-25 17:23:01
[2026-08-25 17:23:01,998.998 INFO    ] 2026-08-25 17:23:01
[2026-08-25 17:23:02,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:23:02,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:23:02,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:23:02,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:23:02,474.474 INFO    ] time= 25/08/2026 17:23:02
[2026-08-25 17:23:02,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:23:02,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:23:02,630.630 INFO    ] No existing commands found in stream
[2026-08-25 17:23:07,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:23:07,662.662 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 17:23:08,673.673 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:23:08,676.676 INFO    ] Checking for system updates...
[2026-08-25 17:23:08,713.713 INFO    ] 200
[2026-08-25 17:23:08,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:08,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:23:08,772.772 INFO    ] No update needed
[2026-08-25 17:23:08,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 17:23:08,810.810 INFO    ] 200
[2026-08-25 17:23:08,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:08,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:23:08,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:23:08,909.909 INFO    ] No camera update needed
[2026-08-25 17:23:08,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:23:08,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:23:08,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:23:08,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:23:10,969.969 INFO    ] ================================================
[2026-08-25 17:23:10,985.985 INFO    ] Launching Daemon at Tue Aug 25 17:23:10 IST 2026
[2026-08-25 17:23:11,996.996 INFO    ] ================================================
[2026-08-25 17:23:11,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:23:11
[2026-08-25 17:23:12,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:23:12,463.463 INFO    ] Initializing speech engine...
[2026-08-25 17:23:12,468.468 INFO    ] 2026-08-25 17:23:12
[2026-08-25 17:23:12,730.730 INFO    ] 2026-08-25 17:23:12
[2026-08-25 17:23:12,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:23:13,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:23:13,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:23:13,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:23:13,276.276 INFO    ] time= 25/08/2026 17:23:13
[2026-08-25 17:23:13,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:23:13,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:23:13,432.432 INFO    ] No existing commands found in stream
[2026-08-25 17:23:18,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:23:18,457.457 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 17:23:19,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:23:19,268.268 INFO    ] Checking for system updates...
[2026-08-25 17:23:19,304.304 INFO    ] 200
[2026-08-25 17:23:19,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:19,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:23:19,360.360 INFO    ] No update needed
[2026-08-25 17:23:19,363.363 INFO    ] Checking for camera pi updates...
[2026-08-25 17:23:19,415.415 INFO    ] 200
[2026-08-25 17:23:19,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:19,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:23:19,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:23:19,513.513 INFO    ] No camera update needed
[2026-08-25 17:23:19,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:23:19,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:23:19,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:23:19,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:23:21,575.575 INFO    ] ================================================
[2026-08-25 17:23:21,590.590 INFO    ] Launching Daemon at Tue Aug 25 17:23:21 IST 2026
[2026-08-25 17:23:21,602.602 INFO    ] ================================================
[2026-08-25 17:23:23,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:23:22
[2026-08-25 17:23:24,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:23:24,647.647 INFO    ] Initializing speech engine...
[2026-08-25 17:23:24,674.674 INFO    ] 2026-08-25 17:23:24
[2026-08-25 17:23:24,971.971 INFO    ] 2026-08-25 17:23:24
[2026-08-25 17:23:25,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:23:25,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:23:25,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:23:25,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:23:25,392.392 INFO    ] time= 25/08/2026 17:23:25
[2026-08-25 17:23:25,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:23:25,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:23:25,521.521 INFO    ] No existing commands found in stream
[2026-08-25 17:23:30,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:23:30,555.555 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 17:23:32,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:23:32,168.168 INFO    ] Checking for system updates...
[2026-08-25 17:23:32,206.206 INFO    ] 200
[2026-08-25 17:23:32,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:32,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:23:32,267.267 INFO    ] No update needed
[2026-08-25 17:23:32,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 17:23:32,310.310 INFO    ] 200
[2026-08-25 17:23:32,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:32,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:23:32,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:23:32,438.438 INFO    ] No camera update needed
[2026-08-25 17:23:32,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:23:32,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:23:32,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:23:32,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:23:34,499.499 INFO    ] ================================================
[2026-08-25 17:23:34,513.513 INFO    ] Launching Daemon at Tue Aug 25 17:23:34 IST 2026
[2026-08-25 17:23:34,524.524 INFO    ] ================================================
[2026-08-25 17:23:35,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:23:35
[2026-08-25 17:23:35,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:23:35,998.998 INFO    ] Initializing speech engine...
[2026-08-25 17:23:36,007.007 INFO    ] 2026-08-25 17:23:36
[2026-08-25 17:23:36,255.255 INFO    ] 2026-08-25 17:23:36
[2026-08-25 17:23:36,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:23:36,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:23:36,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:23:36,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:23:36,766.766 INFO    ] time= 25/08/2026 17:23:36
[2026-08-25 17:23:36,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:23:36,820.820 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:23:36,966.966 INFO    ] No existing commands found in stream
[2026-08-25 17:23:41,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:23:41,984.984 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 17:23:46,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:23:46,060.060 INFO    ] Checking for system updates...
[2026-08-25 17:23:46,096.096 INFO    ] 200
[2026-08-25 17:23:46,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:46,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:23:46,153.153 INFO    ] No update needed
[2026-08-25 17:23:46,156.156 INFO    ] Checking for camera pi updates...
[2026-08-25 17:23:46,189.189 INFO    ] 200
[2026-08-25 17:23:46,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:23:46,233.233 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:23:46,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:23:46,283.283 INFO    ] No camera update needed
[2026-08-25 17:23:46,285.285 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:23:46,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:23:46,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:23:46,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:23:48,341.341 INFO    ] ================================================
[2026-08-25 17:23:48,357.357 INFO    ] Launching Daemon at Tue Aug 25 17:23:48 IST 2026
[2026-08-25 17:23:48,367.367 INFO    ] ================================================
[2026-08-25 17:23:48,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:23:48
[2026-08-25 17:23:49,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:23:49,826.826 INFO    ] Initializing speech engine...
[2026-08-25 17:23:49,835.835 INFO    ] 2026-08-25 17:23:49
[2026-08-25 17:23:50,093.093 INFO    ] 2026-08-25 17:23:50
[2026-08-25 17:23:50,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:23:50,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:23:50,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:23:50,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:23:50,636.636 INFO    ] time= 25/08/2026 17:23:50
[2026-08-25 17:23:50,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:23:50,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:23:50,787.787 INFO    ] No existing commands found in stream
[2026-08-25 17:23:55,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:23:55,804.804 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 17:24:00,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:24:00,308.308 INFO    ] Checking for system updates...
[2026-08-25 17:24:00,346.346 INFO    ] 200
[2026-08-25 17:24:00,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:00,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:24:00,403.403 INFO    ] No update needed
[2026-08-25 17:24:00,406.406 INFO    ] Checking for camera pi updates...
[2026-08-25 17:24:00,440.440 INFO    ] 200
[2026-08-25 17:24:00,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:00,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:24:00,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:24:00,555.555 INFO    ] No camera update needed
[2026-08-25 17:24:00,557.557 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:24:00,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:24:00,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:24:00,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:24:02,613.613 INFO    ] ================================================
[2026-08-25 17:24:02,636.636 INFO    ] Launching Daemon at Tue Aug 25 17:24:02 IST 2026
[2026-08-25 17:24:02,652.652 INFO    ] ================================================
[2026-08-25 17:24:03,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:24:03
[2026-08-25 17:24:03,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:24:04,216.216 INFO    ] Initializing speech engine...
[2026-08-25 17:24:04,226.226 INFO    ] 2026-08-25 17:24:04
[2026-08-25 17:24:04,493.493 INFO    ] 2026-08-25 17:24:04
[2026-08-25 17:24:04,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:24:04,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:24:04,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:24:04,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:24:05,033.033 INFO    ] time= 25/08/2026 17:24:04
[2026-08-25 17:24:05,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:24:05,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:24:05,192.192 INFO    ] No existing commands found in stream
[2026-08-25 17:24:10,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:24:10,217.217 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 17:24:11,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:24:11,570.570 INFO    ] Checking for system updates...
[2026-08-25 17:24:11,606.606 INFO    ] 200
[2026-08-25 17:24:11,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:11,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:24:11,664.664 INFO    ] No update needed
[2026-08-25 17:24:11,666.666 INFO    ] Checking for camera pi updates...
[2026-08-25 17:24:11,702.702 INFO    ] 200
[2026-08-25 17:24:11,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:11,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:24:11,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:24:11,799.799 INFO    ] No camera update needed
[2026-08-25 17:24:11,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:24:11,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:24:11,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:24:11,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:24:13,856.856 INFO    ] ================================================
[2026-08-25 17:24:13,871.871 INFO    ] Launching Daemon at Tue Aug 25 17:24:13 IST 2026
[2026-08-25 17:24:13,883.883 INFO    ] ================================================
[2026-08-25 17:24:14,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:24:14
[2026-08-25 17:24:15,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:24:15,341.341 INFO    ] Initializing speech engine...
[2026-08-25 17:24:15,348.348 INFO    ] 2026-08-25 17:24:15
[2026-08-25 17:24:15,595.595 INFO    ] 2026-08-25 17:24:15
[2026-08-25 17:24:15,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:24:15,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:24:15,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:24:16,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:24:16,106.106 INFO    ] time= 25/08/2026 17:24:16
[2026-08-25 17:24:16,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:24:16,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:24:16,306.306 INFO    ] No existing commands found in stream
[2026-08-25 17:24:21,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:24:21,323.323 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 17:24:24,313.313 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:24:24,316.316 INFO    ] Checking for system updates...
[2026-08-25 17:24:24,356.356 INFO    ] 200
[2026-08-25 17:24:24,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:24,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:24:24,415.415 INFO    ] No update needed
[2026-08-25 17:24:24,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 17:24:24,452.452 INFO    ] 200
[2026-08-25 17:24:24,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:24,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:24:24,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:24:24,541.541 INFO    ] No camera update needed
[2026-08-25 17:24:24,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:24:24,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:24:24,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:24:24,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:24:26,598.598 INFO    ] ================================================
[2026-08-25 17:24:26,613.613 INFO    ] Launching Daemon at Tue Aug 25 17:24:26 IST 2026
[2026-08-25 17:24:26,624.624 INFO    ] ================================================
[2026-08-25 17:24:27,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:24:27
[2026-08-25 17:24:27,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:24:28,160.160 INFO    ] Initializing speech engine...
[2026-08-25 17:24:28,173.173 INFO    ] 2026-08-25 17:24:28
[2026-08-25 17:24:28,454.454 INFO    ] 2026-08-25 17:24:28
[2026-08-25 17:24:28,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:24:28,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:24:28,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:24:28,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:24:28,945.945 INFO    ] time= 25/08/2026 17:24:28
[2026-08-25 17:24:28,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:24:29,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:24:29,151.151 INFO    ] No existing commands found in stream
[2026-08-25 17:24:34,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:24:34,181.181 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 17:24:35,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:24:35,902.902 INFO    ] Checking for system updates...
[2026-08-25 17:24:35,939.939 INFO    ] 200
[2026-08-25 17:24:35,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:36,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:24:36,007.007 INFO    ] No update needed
[2026-08-25 17:24:36,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 17:24:36,043.043 INFO    ] 200
[2026-08-25 17:24:36,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:36,092.092 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:24:36,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:24:36,140.140 INFO    ] No camera update needed
[2026-08-25 17:24:36,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:24:36,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:24:36,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:24:36,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:24:38,199.199 INFO    ] ================================================
[2026-08-25 17:24:38,213.213 INFO    ] Launching Daemon at Tue Aug 25 17:24:38 IST 2026
[2026-08-25 17:24:38,224.224 INFO    ] ================================================
[2026-08-25 17:24:38,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:24:38
[2026-08-25 17:24:39,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:24:39,703.703 INFO    ] Initializing speech engine...
[2026-08-25 17:24:39,713.713 INFO    ] 2026-08-25 17:24:39
[2026-08-25 17:24:39,977.977 INFO    ] 2026-08-25 17:24:39
[2026-08-25 17:24:40,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:24:40,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:24:40,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:24:40,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:24:40,487.487 INFO    ] time= 25/08/2026 17:24:40
[2026-08-25 17:24:40,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:24:40,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:24:40,720.720 INFO    ] No existing commands found in stream
[2026-08-25 17:24:45,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:24:45,760.760 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 17:24:48,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:24:48,466.466 INFO    ] Checking for system updates...
[2026-08-25 17:24:48,509.509 INFO    ] 200
[2026-08-25 17:24:48,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:48,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:24:48,577.577 INFO    ] No update needed
[2026-08-25 17:24:48,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 17:24:48,616.616 INFO    ] 200
[2026-08-25 17:24:48,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:24:48,667.667 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:24:48,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:24:48,721.721 INFO    ] No camera update needed
[2026-08-25 17:24:48,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:24:48,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:24:48,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:24:48,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:24:50,781.781 INFO    ] ================================================
[2026-08-25 17:24:50,796.796 INFO    ] Launching Daemon at Tue Aug 25 17:24:50 IST 2026
[2026-08-25 17:24:50,806.806 INFO    ] ================================================
[2026-08-25 17:24:51,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:24:51
[2026-08-25 17:24:52,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:24:52,490.490 INFO    ] Initializing speech engine...
[2026-08-25 17:24:52,499.499 INFO    ] 2026-08-25 17:24:52
[2026-08-25 17:24:52,784.784 INFO    ] 2026-08-25 17:24:52
[2026-08-25 17:24:52,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:24:53,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:24:53,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:24:53,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:24:53,331.331 INFO    ] time= 25/08/2026 17:24:53
[2026-08-25 17:24:53,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:24:53,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:24:53,481.481 INFO    ] No existing commands found in stream
[2026-08-25 17:24:58,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:24:58,515.515 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 17:25:00,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:25:00,750.750 INFO    ] Checking for system updates...
[2026-08-25 17:25:00,792.792 INFO    ] 200
[2026-08-25 17:25:00,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:00,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:25:00,865.865 INFO    ] No update needed
[2026-08-25 17:25:00,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 17:25:00,910.910 INFO    ] 200
[2026-08-25 17:25:00,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:00,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:25:01,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:25:01,105.105 INFO    ] No camera update needed
[2026-08-25 17:25:01,108.108 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:25:01,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:25:01,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:25:01,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:25:03,165.165 INFO    ] ================================================
[2026-08-25 17:25:03,181.181 INFO    ] Launching Daemon at Tue Aug 25 17:25:03 IST 2026
[2026-08-25 17:25:03,195.195 INFO    ] ================================================
[2026-08-25 17:25:03,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:25:03
[2026-08-25 17:25:04,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:25:04,658.658 INFO    ] Initializing speech engine...
[2026-08-25 17:25:04,669.669 INFO    ] 2026-08-25 17:25:04
[2026-08-25 17:25:04,915.915 INFO    ] 2026-08-25 17:25:04
[2026-08-25 17:25:04,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:25:05,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:25:05,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:25:05,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:25:05,419.419 INFO    ] time= 25/08/2026 17:25:05
[2026-08-25 17:25:05,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:25:05,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:25:05,626.626 INFO    ] No existing commands found in stream
[2026-08-25 17:25:10,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:25:10,642.642 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 17:25:13,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:25:13,228.228 INFO    ] Checking for system updates...
[2026-08-25 17:25:13,263.263 INFO    ] 200
[2026-08-25 17:25:13,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:13,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:25:13,320.320 INFO    ] No update needed
[2026-08-25 17:25:13,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 17:25:13,356.356 INFO    ] 200
[2026-08-25 17:25:13,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:13,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:25:13,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:25:13,448.448 INFO    ] No camera update needed
[2026-08-25 17:25:13,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:25:13,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:25:13,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:25:13,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:25:15,503.503 INFO    ] ================================================
[2026-08-25 17:25:15,519.519 INFO    ] Launching Daemon at Tue Aug 25 17:25:15 IST 2026
[2026-08-25 17:25:15,530.530 INFO    ] ================================================
[2026-08-25 17:25:16,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:25:16
[2026-08-25 17:25:16,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:25:16,941.941 INFO    ] Initializing speech engine...
[2026-08-25 17:25:16,956.956 INFO    ] 2026-08-25 17:25:16
[2026-08-25 17:25:17,212.212 INFO    ] 2026-08-25 17:25:17
[2026-08-25 17:25:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:25:17,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:25:17,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:25:17,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:25:17,718.718 INFO    ] time= 25/08/2026 17:25:17
[2026-08-25 17:25:17,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:25:17,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:25:17,901.901 INFO    ] No existing commands found in stream
[2026-08-25 17:25:22,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:25:22,936.936 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 17:25:24,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:25:24,522.522 INFO    ] Checking for system updates...
[2026-08-25 17:25:24,560.560 INFO    ] 200
[2026-08-25 17:25:24,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:24,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:25:24,622.622 INFO    ] No update needed
[2026-08-25 17:25:24,625.625 INFO    ] Checking for camera pi updates...
[2026-08-25 17:25:24,661.661 INFO    ] 200
[2026-08-25 17:25:24,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:24,704.704 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:25:24,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:25:24,755.755 INFO    ] No camera update needed
[2026-08-25 17:25:24,758.758 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:25:24,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:25:24,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:25:24,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:25:26,809.809 INFO    ] ================================================
[2026-08-25 17:25:26,824.824 INFO    ] Launching Daemon at Tue Aug 25 17:25:26 IST 2026
[2026-08-25 17:25:26,834.834 INFO    ] ================================================
[2026-08-25 17:25:27,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:25:27
[2026-08-25 17:25:28,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:25:28,355.355 INFO    ] Initializing speech engine...
[2026-08-25 17:25:28,367.367 INFO    ] 2026-08-25 17:25:28
[2026-08-25 17:25:28,639.639 INFO    ] 2026-08-25 17:25:28
[2026-08-25 17:25:28,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:25:28,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:25:28,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:25:29,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:25:29,202.202 INFO    ] time= 25/08/2026 17:25:29
[2026-08-25 17:25:29,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:25:29,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:25:29,363.363 INFO    ] No existing commands found in stream
[2026-08-25 17:25:34,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:25:34,381.381 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 17:25:38,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:25:38,278.278 INFO    ] Checking for system updates...
[2026-08-25 17:25:38,319.319 INFO    ] 200
[2026-08-25 17:25:38,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:38,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:25:38,377.377 INFO    ] No update needed
[2026-08-25 17:25:38,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 17:25:38,413.413 INFO    ] 200
[2026-08-25 17:25:38,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:38,456.456 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:25:38,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:25:38,508.508 INFO    ] No camera update needed
[2026-08-25 17:25:38,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:25:38,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:25:38,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:25:38,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:25:40,563.563 INFO    ] ================================================
[2026-08-25 17:25:40,578.578 INFO    ] Launching Daemon at Tue Aug 25 17:25:40 IST 2026
[2026-08-25 17:25:40,589.589 INFO    ] ================================================
[2026-08-25 17:25:41,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:25:41
[2026-08-25 17:25:41,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:25:42,014.014 INFO    ] Initializing speech engine...
[2026-08-25 17:25:42,018.018 INFO    ] 2026-08-25 17:25:42
[2026-08-25 17:25:42,264.264 INFO    ] 2026-08-25 17:25:42
[2026-08-25 17:25:42,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:25:42,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:25:42,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:25:42,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:25:42,764.764 INFO    ] time= 25/08/2026 17:25:42
[2026-08-25 17:25:42,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:25:42,847.847 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:25:42,953.953 INFO    ] No existing commands found in stream
[2026-08-25 17:25:47,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:25:47,968.968 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 17:25:49,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:25:49,565.565 INFO    ] Checking for system updates...
[2026-08-25 17:25:49,601.601 INFO    ] 200
[2026-08-25 17:25:49,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:49,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:25:49,667.667 INFO    ] No update needed
[2026-08-25 17:25:49,669.669 INFO    ] Checking for camera pi updates...
[2026-08-25 17:25:49,702.702 INFO    ] 200
[2026-08-25 17:25:49,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:25:49,745.745 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:25:49,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:25:49,817.817 INFO    ] No camera update needed
[2026-08-25 17:25:49,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:25:49,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:25:49,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:25:49,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:25:51,871.871 INFO    ] ================================================
[2026-08-25 17:25:51,886.886 INFO    ] Launching Daemon at Tue Aug 25 17:25:51 IST 2026
[2026-08-25 17:25:51,898.898 INFO    ] ================================================
[2026-08-25 17:25:52,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:25:52
[2026-08-25 17:25:53,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:25:53,317.317 INFO    ] Initializing speech engine...
[2026-08-25 17:25:53,326.326 INFO    ] 2026-08-25 17:25:53
[2026-08-25 17:25:53,570.570 INFO    ] 2026-08-25 17:25:53
[2026-08-25 17:25:53,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:25:53,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:25:53,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:25:55,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:25:55,063.063 INFO    ] time= 25/08/2026 17:25:55
[2026-08-25 17:25:55,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:25:55,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:25:55,202.202 INFO    ] No existing commands found in stream
[2026-08-25 17:26:00,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:26:00,240.240 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 17:26:02,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:26:02,254.254 INFO    ] Checking for system updates...
[2026-08-25 17:26:02,299.299 INFO    ] 200
[2026-08-25 17:26:02,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:02,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:26:02,371.371 INFO    ] No update needed
[2026-08-25 17:26:02,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 17:26:02,417.417 INFO    ] 200
[2026-08-25 17:26:02,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:02,472.472 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:26:02,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:26:02,553.553 INFO    ] No camera update needed
[2026-08-25 17:26:02,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:26:02,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:26:02,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:26:02,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:26:04,611.611 INFO    ] ================================================
[2026-08-25 17:26:04,626.626 INFO    ] Launching Daemon at Tue Aug 25 17:26:04 IST 2026
[2026-08-25 17:26:04,636.636 INFO    ] ================================================
[2026-08-25 17:26:05,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:26:05
[2026-08-25 17:26:05,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:26:06,090.090 INFO    ] Initializing speech engine...
[2026-08-25 17:26:06,098.098 INFO    ] 2026-08-25 17:26:06
[2026-08-25 17:26:06,367.367 INFO    ] 2026-08-25 17:26:06
[2026-08-25 17:26:06,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:26:06,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:26:06,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:26:06,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:26:06,850.850 INFO    ] time= 25/08/2026 17:26:06
[2026-08-25 17:26:06,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:26:06,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:26:07,067.067 INFO    ] No existing commands found in stream
[2026-08-25 17:26:12,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:26:12,083.083 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 17:26:13,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:26:13,223.223 INFO    ] Checking for system updates...
[2026-08-25 17:26:13,258.258 INFO    ] 200
[2026-08-25 17:26:13,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:13,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:26:13,320.320 INFO    ] No update needed
[2026-08-25 17:26:13,322.322 INFO    ] Checking for camera pi updates...
[2026-08-25 17:26:13,355.355 INFO    ] 200
[2026-08-25 17:26:13,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:13,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:26:13,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:26:13,452.452 INFO    ] No camera update needed
[2026-08-25 17:26:13,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:26:13,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:26:13,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:26:13,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:26:15,505.505 INFO    ] ================================================
[2026-08-25 17:26:15,520.520 INFO    ] Launching Daemon at Tue Aug 25 17:26:15 IST 2026
[2026-08-25 17:26:15,531.531 INFO    ] ================================================
[2026-08-25 17:26:16,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:26:16
[2026-08-25 17:26:16,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:26:17,091.091 INFO    ] Initializing speech engine...
[2026-08-25 17:26:17,103.103 INFO    ] 2026-08-25 17:26:17
[2026-08-25 17:26:17,362.362 INFO    ] 2026-08-25 17:26:17
[2026-08-25 17:26:17,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:26:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:26:17,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:26:17,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:26:17,909.909 INFO    ] time= 25/08/2026 17:26:17
[2026-08-25 17:26:17,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:26:17,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:26:18,065.065 INFO    ] No existing commands found in stream
[2026-08-25 17:26:23,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:26:23,090.090 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 17:26:27,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:26:27,331.331 INFO    ] Checking for system updates...
[2026-08-25 17:26:27,370.370 INFO    ] 200
[2026-08-25 17:26:27,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:27,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:26:27,432.432 INFO    ] No update needed
[2026-08-25 17:26:27,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 17:26:27,469.469 INFO    ] 200
[2026-08-25 17:26:27,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:27,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:26:27,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:26:27,567.567 INFO    ] No camera update needed
[2026-08-25 17:26:27,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:26:27,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:26:27,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:26:27,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:26:29,625.625 INFO    ] ================================================
[2026-08-25 17:26:29,640.640 INFO    ] Launching Daemon at Tue Aug 25 17:26:29 IST 2026
[2026-08-25 17:26:29,651.651 INFO    ] ================================================
[2026-08-25 17:26:30,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:26:30
[2026-08-25 17:26:30,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:26:31,039.039 INFO    ] Initializing speech engine...
[2026-08-25 17:26:31,047.047 INFO    ] 2026-08-25 17:26:31
[2026-08-25 17:26:31,321.321 INFO    ] 2026-08-25 17:26:31
[2026-08-25 17:26:31,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:26:31,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:26:31,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:26:31,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:26:31,834.834 INFO    ] time= 25/08/2026 17:26:31
[2026-08-25 17:26:31,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:26:31,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:26:32,001.001 INFO    ] No existing commands found in stream
[2026-08-25 17:26:37,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:26:37,042.042 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 17:26:38,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:26:38,709.709 INFO    ] Checking for system updates...
[2026-08-25 17:26:38,745.745 INFO    ] 200
[2026-08-25 17:26:38,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:38,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:26:38,807.807 INFO    ] No update needed
[2026-08-25 17:26:38,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 17:26:38,846.846 INFO    ] 200
[2026-08-25 17:26:38,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:38,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:26:38,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:26:38,935.935 INFO    ] No camera update needed
[2026-08-25 17:26:38,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:26:38,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:26:38,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:26:38,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:26:40,990.990 INFO    ] ================================================
[2026-08-25 17:26:41,005.005 INFO    ] Launching Daemon at Tue Aug 25 17:26:41 IST 2026
[2026-08-25 17:26:41,016.016 INFO    ] ================================================
[2026-08-25 17:26:41,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:26:41
[2026-08-25 17:26:42,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:26:42,452.452 INFO    ] Initializing speech engine...
[2026-08-25 17:26:42,465.465 INFO    ] 2026-08-25 17:26:42
[2026-08-25 17:26:42,743.743 INFO    ] 2026-08-25 17:26:42
[2026-08-25 17:26:42,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:26:42,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:26:42,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:26:43,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:26:43,156.156 INFO    ] time= 25/08/2026 17:26:43
[2026-08-25 17:26:43,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:26:43,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:26:43,364.364 INFO    ] No existing commands found in stream
[2026-08-25 17:26:48,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:26:48,388.388 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 17:26:51,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:26:51,553.553 INFO    ] Checking for system updates...
[2026-08-25 17:26:51,591.591 INFO    ] 200
[2026-08-25 17:26:51,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:51,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:26:51,648.648 INFO    ] No update needed
[2026-08-25 17:26:51,651.651 INFO    ] Checking for camera pi updates...
[2026-08-25 17:26:51,685.685 INFO    ] 200
[2026-08-25 17:26:51,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:26:51,731.731 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:26:51,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:26:51,780.780 INFO    ] No camera update needed
[2026-08-25 17:26:51,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:26:51,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:26:51,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:26:51,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:26:53,841.841 INFO    ] ================================================
[2026-08-25 17:26:53,857.857 INFO    ] Launching Daemon at Tue Aug 25 17:26:53 IST 2026
[2026-08-25 17:26:53,867.867 INFO    ] ================================================
[2026-08-25 17:26:54,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:26:54
[2026-08-25 17:26:55,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:26:55,429.429 INFO    ] Initializing speech engine...
[2026-08-25 17:26:55,440.440 INFO    ] 2026-08-25 17:26:55
[2026-08-25 17:26:55,701.701 INFO    ] 2026-08-25 17:26:55
[2026-08-25 17:26:55,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:26:55,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:26:55,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:26:56,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:26:56,167.167 INFO    ] time= 25/08/2026 17:26:56
[2026-08-25 17:26:56,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:26:56,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:26:56,385.385 INFO    ] No existing commands found in stream
[2026-08-25 17:27:01,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:27:01,431.431 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 17:27:04,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:27:04,834.834 INFO    ] Checking for system updates...
[2026-08-25 17:27:04,869.869 INFO    ] 200
[2026-08-25 17:27:04,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:04,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:04,926.926 INFO    ] No update needed
[2026-08-25 17:27:04,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 17:27:04,962.962 INFO    ] 200
[2026-08-25 17:27:04,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:05,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:27:05,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:05,071.071 INFO    ] No camera update needed
[2026-08-25 17:27:05,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:27:05,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:27:05,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:27:05,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:27:07,128.128 INFO    ] ================================================
[2026-08-25 17:27:07,142.142 INFO    ] Launching Daemon at Tue Aug 25 17:27:07 IST 2026
[2026-08-25 17:27:07,153.153 INFO    ] ================================================
[2026-08-25 17:27:07,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:27:07
[2026-08-25 17:27:08,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:27:08,576.576 INFO    ] Initializing speech engine...
[2026-08-25 17:27:08,585.585 INFO    ] 2026-08-25 17:27:08
[2026-08-25 17:27:08,831.831 INFO    ] 2026-08-25 17:27:08
[2026-08-25 17:27:08,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:27:09,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:27:09,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:27:09,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:27:09,309.309 INFO    ] time= 25/08/2026 17:27:09
[2026-08-25 17:27:09,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:27:09,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:27:09,544.544 INFO    ] No existing commands found in stream
[2026-08-25 17:27:14,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:27:14,568.568 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 17:27:17,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:27:17,795.795 INFO    ] Checking for system updates...
[2026-08-25 17:27:17,835.835 INFO    ] 200
[2026-08-25 17:27:17,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:17,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:17,899.899 INFO    ] No update needed
[2026-08-25 17:27:17,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 17:27:17,936.936 INFO    ] 200
[2026-08-25 17:27:17,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:17,980.980 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:27:18,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:18,049.049 INFO    ] No camera update needed
[2026-08-25 17:27:18,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:27:18,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:27:18,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:27:18,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:27:20,107.107 INFO    ] ================================================
[2026-08-25 17:27:20,122.122 INFO    ] Launching Daemon at Tue Aug 25 17:27:20 IST 2026
[2026-08-25 17:27:20,133.133 INFO    ] ================================================
[2026-08-25 17:27:20,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:27:20
[2026-08-25 17:27:21,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:27:21,571.571 INFO    ] Initializing speech engine...
[2026-08-25 17:27:21,578.578 INFO    ] 2026-08-25 17:27:21
[2026-08-25 17:27:21,838.838 INFO    ] 2026-08-25 17:27:21
[2026-08-25 17:27:21,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:27:22,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:27:22,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:27:22,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:27:22,380.380 INFO    ] time= 25/08/2026 17:27:22
[2026-08-25 17:27:22,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:27:22,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:27:22,535.535 INFO    ] No existing commands found in stream
[2026-08-25 17:27:27,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:27:27,557.557 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 17:27:31,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:27:31,415.415 INFO    ] Checking for system updates...
[2026-08-25 17:27:31,455.455 INFO    ] 200
[2026-08-25 17:27:31,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:31,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:31,516.516 INFO    ] No update needed
[2026-08-25 17:27:31,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 17:27:31,580.580 INFO    ] 200
[2026-08-25 17:27:31,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:31,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:27:31,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:31,695.695 INFO    ] No camera update needed
[2026-08-25 17:27:31,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:27:31,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:27:31,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:27:31,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:27:33,754.754 INFO    ] ================================================
[2026-08-25 17:27:33,769.769 INFO    ] Launching Daemon at Tue Aug 25 17:27:33 IST 2026
[2026-08-25 17:27:33,780.780 INFO    ] ================================================
[2026-08-25 17:27:34,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:27:34
[2026-08-25 17:27:34,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:27:35,181.181 INFO    ] Initializing speech engine...
[2026-08-25 17:27:35,200.200 INFO    ] 2026-08-25 17:27:35
[2026-08-25 17:27:35,445.445 INFO    ] 2026-08-25 17:27:35
[2026-08-25 17:27:35,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:27:35,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:27:35,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:27:35,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:27:35,922.922 INFO    ] time= 25/08/2026 17:27:35
[2026-08-25 17:27:35,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:27:36,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:27:36,153.153 INFO    ] No existing commands found in stream
[2026-08-25 17:27:41,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:27:41,173.173 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 17:27:45,513.513 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:27:45,516.516 INFO    ] Checking for system updates...
[2026-08-25 17:27:45,551.551 INFO    ] 200
[2026-08-25 17:27:45,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:45,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:45,608.608 INFO    ] No update needed
[2026-08-25 17:27:45,610.610 INFO    ] Checking for camera pi updates...
[2026-08-25 17:27:45,643.643 INFO    ] 200
[2026-08-25 17:27:45,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:45,685.685 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:27:45,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:27:45,736.736 INFO    ] No camera update needed
[2026-08-25 17:27:45,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:27:45,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:27:45,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:27:45,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:27:47,794.794 INFO    ] ================================================
[2026-08-25 17:27:47,809.809 INFO    ] Launching Daemon at Tue Aug 25 17:27:47 IST 2026
[2026-08-25 17:27:47,820.820 INFO    ] ================================================
[2026-08-25 17:27:48,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:27:48
[2026-08-25 17:27:48,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:27:49,237.237 INFO    ] Initializing speech engine...
[2026-08-25 17:27:49,247.247 INFO    ] 2026-08-25 17:27:49
[2026-08-25 17:27:49,506.506 INFO    ] 2026-08-25 17:27:49
[2026-08-25 17:27:49,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:27:49,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:27:49,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:27:49,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:27:50,039.039 INFO    ] time= 25/08/2026 17:27:50
[2026-08-25 17:27:50,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:27:50,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:27:50,195.195 INFO    ] No existing commands found in stream
[2026-08-25 17:27:55,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:27:55,214.214 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 17:27:58,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:27:58,835.835 INFO    ] Checking for system updates...
[2026-08-25 17:27:58,871.871 INFO    ] 200
[2026-08-25 17:27:58,874.874 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:58,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:27:58,928.928 INFO    ] No update needed
[2026-08-25 17:27:58,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 17:27:58,963.963 INFO    ] 200
[2026-08-25 17:27:58,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:27:59,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:27:59,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:27:59,062.062 INFO    ] No camera update needed
[2026-08-25 17:27:59,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:27:59,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:27:59,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:27:59,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:28:01,116.116 INFO    ] ================================================
[2026-08-25 17:28:01,131.131 INFO    ] Launching Daemon at Tue Aug 25 17:28:01 IST 2026
[2026-08-25 17:28:01,142.142 INFO    ] ================================================
[2026-08-25 17:28:01,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:28:01
[2026-08-25 17:28:02,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:28:02,877.877 INFO    ] Initializing speech engine...
[2026-08-25 17:28:02,885.885 INFO    ] 2026-08-25 17:28:02
[2026-08-25 17:28:03,163.163 INFO    ] 2026-08-25 17:28:03
[2026-08-25 17:28:03,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:28:03,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:28:03,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:28:03,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:28:03,559.559 INFO    ] time= 25/08/2026 17:28:03
[2026-08-25 17:28:03,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:28:03,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:28:03,756.756 INFO    ] No existing commands found in stream
[2026-08-25 17:28:08,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:28:08,769.769 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 17:28:10,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:28:10,554.554 INFO    ] Checking for system updates...
[2026-08-25 17:28:10,590.590 INFO    ] 200
[2026-08-25 17:28:10,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:10,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:28:10,653.653 INFO    ] No update needed
[2026-08-25 17:28:10,655.655 INFO    ] Checking for camera pi updates...
[2026-08-25 17:28:10,692.692 INFO    ] 200
[2026-08-25 17:28:10,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:10,736.736 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:28:10,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:28:10,780.780 INFO    ] No camera update needed
[2026-08-25 17:28:10,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:28:10,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:28:10,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:28:10,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:28:12,835.835 INFO    ] ================================================
[2026-08-25 17:28:12,850.850 INFO    ] Launching Daemon at Tue Aug 25 17:28:12 IST 2026
[2026-08-25 17:28:12,861.861 INFO    ] ================================================
[2026-08-25 17:28:13,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:28:13
[2026-08-25 17:28:14,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:28:14,474.474 INFO    ] Initializing speech engine...
[2026-08-25 17:28:14,485.485 INFO    ] 2026-08-25 17:28:14
[2026-08-25 17:28:14,756.756 INFO    ] 2026-08-25 17:28:14
[2026-08-25 17:28:14,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:28:15,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:28:15,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:28:15,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:28:15,241.241 INFO    ] time= 25/08/2026 17:28:15
[2026-08-25 17:28:15,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:28:15,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:28:15,476.476 INFO    ] No existing commands found in stream
[2026-08-25 17:28:20,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:28:20,493.493 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 17:28:25,054.054 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:28:25,057.057 INFO    ] Checking for system updates...
[2026-08-25 17:28:25,094.094 INFO    ] 200
[2026-08-25 17:28:25,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:25,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:28:25,152.152 INFO    ] No update needed
[2026-08-25 17:28:25,154.154 INFO    ] Checking for camera pi updates...
[2026-08-25 17:28:25,187.187 INFO    ] 200
[2026-08-25 17:28:25,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:25,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:28:25,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:28:25,284.284 INFO    ] No camera update needed
[2026-08-25 17:28:25,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:28:25,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:28:25,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:28:25,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:28:27,338.338 INFO    ] ================================================
[2026-08-25 17:28:27,353.353 INFO    ] Launching Daemon at Tue Aug 25 17:28:27 IST 2026
[2026-08-25 17:28:27,363.363 INFO    ] ================================================
[2026-08-25 17:28:27,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:28:27
[2026-08-25 17:28:28,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:28:28,787.787 INFO    ] Initializing speech engine...
[2026-08-25 17:28:28,801.801 INFO    ] 2026-08-25 17:28:28
[2026-08-25 17:28:29,081.081 INFO    ] 2026-08-25 17:28:29
[2026-08-25 17:28:29,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:28:29,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:28:29,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:28:29,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:28:29,498.498 INFO    ] time= 25/08/2026 17:28:29
[2026-08-25 17:28:29,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:28:29,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:28:29,640.640 INFO    ] No existing commands found in stream
[2026-08-25 17:28:34,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:28:34,668.668 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 17:28:38,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:28:38,497.497 INFO    ] Checking for system updates...
[2026-08-25 17:28:38,533.533 INFO    ] 200
[2026-08-25 17:28:38,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:38,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:28:38,591.591 INFO    ] No update needed
[2026-08-25 17:28:38,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 17:28:38,629.629 INFO    ] 200
[2026-08-25 17:28:38,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:38,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:28:38,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:28:38,736.736 INFO    ] No camera update needed
[2026-08-25 17:28:38,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:28:38,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:28:38,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:28:38,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:28:40,791.791 INFO    ] ================================================
[2026-08-25 17:28:40,806.806 INFO    ] Launching Daemon at Tue Aug 25 17:28:40 IST 2026
[2026-08-25 17:28:40,817.817 INFO    ] ================================================
[2026-08-25 17:28:41,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:28:41
[2026-08-25 17:28:41,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:28:42,270.270 INFO    ] Initializing speech engine...
[2026-08-25 17:28:42,281.281 INFO    ] 2026-08-25 17:28:42
[2026-08-25 17:28:42,534.534 INFO    ] 2026-08-25 17:28:42
[2026-08-25 17:28:42,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:28:42,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:28:42,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:28:43,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:28:43,093.093 INFO    ] time= 25/08/2026 17:28:43
[2026-08-25 17:28:43,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:28:43,119.119 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:28:43,244.244 INFO    ] No existing commands found in stream
[2026-08-25 17:28:48,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:28:48,261.261 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 17:28:51,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:28:51,097.097 INFO    ] Checking for system updates...
[2026-08-25 17:28:51,136.136 INFO    ] 200
[2026-08-25 17:28:51,138.138 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:51,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:28:51,193.193 INFO    ] No update needed
[2026-08-25 17:28:51,196.196 INFO    ] Checking for camera pi updates...
[2026-08-25 17:28:51,230.230 INFO    ] 200
[2026-08-25 17:28:51,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:28:51,280.280 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:28:51,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:28:51,338.338 INFO    ] No camera update needed
[2026-08-25 17:28:51,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:28:51,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:28:51,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:28:51,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:28:53,396.396 INFO    ] ================================================
[2026-08-25 17:28:53,411.411 INFO    ] Launching Daemon at Tue Aug 25 17:28:53 IST 2026
[2026-08-25 17:28:53,422.422 INFO    ] ================================================
[2026-08-25 17:28:53,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:28:53
[2026-08-25 17:28:54,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:28:54,828.828 INFO    ] Initializing speech engine...
[2026-08-25 17:28:54,834.834 INFO    ] 2026-08-25 17:28:54
[2026-08-25 17:28:55,125.125 INFO    ] 2026-08-25 17:28:55
[2026-08-25 17:28:55,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:28:55,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:28:55,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:28:55,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:28:55,619.619 INFO    ] time= 25/08/2026 17:28:55
[2026-08-25 17:28:55,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:28:55,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:28:55,819.819 INFO    ] No existing commands found in stream
[2026-08-25 17:29:00,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:29:00,830.830 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 17:29:02,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:29:02,436.436 INFO    ] Checking for system updates...
[2026-08-25 17:29:02,475.475 INFO    ] 200
[2026-08-25 17:29:02,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:02,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:29:02,550.550 INFO    ] No update needed
[2026-08-25 17:29:02,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 17:29:02,600.600 INFO    ] 200
[2026-08-25 17:29:02,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:02,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:29:02,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:29:02,710.710 INFO    ] No camera update needed
[2026-08-25 17:29:02,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:29:02,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:29:02,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:29:02,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:29:04,774.774 INFO    ] ================================================
[2026-08-25 17:29:04,789.789 INFO    ] Launching Daemon at Tue Aug 25 17:29:04 IST 2026
[2026-08-25 17:29:04,800.800 INFO    ] ================================================
[2026-08-25 17:29:05,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:29:05
[2026-08-25 17:29:05,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:29:06,233.233 INFO    ] Initializing speech engine...
[2026-08-25 17:29:06,249.249 INFO    ] 2026-08-25 17:29:06
[2026-08-25 17:29:06,510.510 INFO    ] 2026-08-25 17:29:06
[2026-08-25 17:29:06,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:29:06,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:29:06,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:29:06,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:29:06,912.912 INFO    ] time= 25/08/2026 17:29:06
[2026-08-25 17:29:06,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:29:06,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:29:07,117.117 INFO    ] No existing commands found in stream
[2026-08-25 17:29:12,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:29:12,133.133 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 17:29:15,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:29:15,251.251 INFO    ] Checking for system updates...
[2026-08-25 17:29:15,288.288 INFO    ] 200
[2026-08-25 17:29:15,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:15,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:29:15,355.355 INFO    ] No update needed
[2026-08-25 17:29:15,358.358 INFO    ] Checking for camera pi updates...
[2026-08-25 17:29:15,395.395 INFO    ] 200
[2026-08-25 17:29:15,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:15,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:29:15,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:29:15,589.589 INFO    ] No camera update needed
[2026-08-25 17:29:15,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:29:15,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:29:15,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:29:15,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:29:17,647.647 INFO    ] ================================================
[2026-08-25 17:29:17,661.661 INFO    ] Launching Daemon at Tue Aug 25 17:29:17 IST 2026
[2026-08-25 17:29:17,672.672 INFO    ] ================================================
[2026-08-25 17:29:18,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:29:18
[2026-08-25 17:29:18,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:29:19,275.275 INFO    ] Initializing speech engine...
[2026-08-25 17:29:19,288.288 INFO    ] 2026-08-25 17:29:19
[2026-08-25 17:29:19,567.567 INFO    ] 2026-08-25 17:29:19
[2026-08-25 17:29:19,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:29:19,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:29:19,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:29:20,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:29:20,102.102 INFO    ] time= 25/08/2026 17:29:20
[2026-08-25 17:29:20,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:29:20,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:29:20,276.276 INFO    ] No existing commands found in stream
[2026-08-25 17:29:25,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:29:25,308.308 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 17:29:26,259.259 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:29:26,262.262 INFO    ] Checking for system updates...
[2026-08-25 17:29:26,300.300 INFO    ] 200
[2026-08-25 17:29:26,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:26,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:29:26,359.359 INFO    ] No update needed
[2026-08-25 17:29:26,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 17:29:26,396.396 INFO    ] 200
[2026-08-25 17:29:26,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:26,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:29:26,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:29:26,493.493 INFO    ] No camera update needed
[2026-08-25 17:29:26,495.495 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:29:26,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:29:26,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:29:26,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:29:28,549.549 INFO    ] ================================================
[2026-08-25 17:29:28,564.564 INFO    ] Launching Daemon at Tue Aug 25 17:29:28 IST 2026
[2026-08-25 17:29:28,575.575 INFO    ] ================================================
[2026-08-25 17:29:29,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:29:29
[2026-08-25 17:29:29,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:29:30,062.062 INFO    ] Initializing speech engine...
[2026-08-25 17:29:30,074.074 INFO    ] 2026-08-25 17:29:30
[2026-08-25 17:29:30,350.350 INFO    ] 2026-08-25 17:29:30
[2026-08-25 17:29:30,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:29:30,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:29:30,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:29:30,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:29:30,861.861 INFO    ] time= 25/08/2026 17:29:30
[2026-08-25 17:29:30,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:29:30,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:29:31,059.059 INFO    ] No existing commands found in stream
[2026-08-25 17:29:36,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:29:36,092.092 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 17:29:38,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:29:38,499.499 INFO    ] Checking for system updates...
[2026-08-25 17:29:38,535.535 INFO    ] 200
[2026-08-25 17:29:38,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:38,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:29:38,594.594 INFO    ] No update needed
[2026-08-25 17:29:38,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 17:29:38,635.635 INFO    ] 200
[2026-08-25 17:29:38,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:38,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:29:38,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:29:38,747.747 INFO    ] No camera update needed
[2026-08-25 17:29:38,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:29:38,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:29:38,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:29:38,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:29:40,804.804 INFO    ] ================================================
[2026-08-25 17:29:40,819.819 INFO    ] Launching Daemon at Tue Aug 25 17:29:40 IST 2026
[2026-08-25 17:29:40,830.830 INFO    ] ================================================
[2026-08-25 17:29:41,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:29:41
[2026-08-25 17:29:41,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:29:42,225.225 INFO    ] Initializing speech engine...
[2026-08-25 17:29:42,232.232 INFO    ] 2026-08-25 17:29:42
[2026-08-25 17:29:42,523.523 INFO    ] 2026-08-25 17:29:42
[2026-08-25 17:29:42,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:29:42,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:29:42,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:29:42,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:29:42,937.937 INFO    ] time= 25/08/2026 17:29:42
[2026-08-25 17:29:42,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:29:42,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:29:43,126.126 INFO    ] No existing commands found in stream
[2026-08-25 17:29:48,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:29:48,159.159 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 17:29:50,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:29:50,174.174 INFO    ] Checking for system updates...
[2026-08-25 17:29:50,210.210 INFO    ] 200
[2026-08-25 17:29:50,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:50,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:29:50,273.273 INFO    ] No update needed
[2026-08-25 17:29:50,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 17:29:50,309.309 INFO    ] 200
[2026-08-25 17:29:50,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:29:50,353.353 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:29:50,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:29:50,403.403 INFO    ] No camera update needed
[2026-08-25 17:29:50,406.406 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:29:50,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:29:50,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:29:50,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:29:52,460.460 INFO    ] ================================================
[2026-08-25 17:29:52,476.476 INFO    ] Launching Daemon at Tue Aug 25 17:29:52 IST 2026
[2026-08-25 17:29:52,487.487 INFO    ] ================================================
[2026-08-25 17:29:53,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:29:53
[2026-08-25 17:29:53,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:29:54,094.094 INFO    ] Initializing speech engine...
[2026-08-25 17:29:54,099.099 INFO    ] 2026-08-25 17:29:54
[2026-08-25 17:29:54,385.385 INFO    ] 2026-08-25 17:29:54
[2026-08-25 17:29:54,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:29:54,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:29:54,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:29:54,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:29:54,925.925 INFO    ] time= 25/08/2026 17:29:54
[2026-08-25 17:29:54,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:29:54,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:29:55,081.081 INFO    ] No existing commands found in stream
[2026-08-25 17:30:00,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:30:00,105.105 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 17:30:01,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:30:01,506.506 INFO    ] Checking for system updates...
[2026-08-25 17:30:01,627.627 INFO    ] 200
[2026-08-25 17:30:01,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:01,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:30:01,803.803 INFO    ] No update needed
[2026-08-25 17:30:01,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 17:30:02,009.009 INFO    ] 200
[2026-08-25 17:30:02,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:02,169.169 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:30:02,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:30:02,397.397 INFO    ] No camera update needed
[2026-08-25 17:30:02,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:30:02,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:30:02,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:30:02,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:30:04,484.484 INFO    ] ================================================
[2026-08-25 17:30:04,500.500 INFO    ] Launching Daemon at Tue Aug 25 17:30:04 IST 2026
[2026-08-25 17:30:04,510.510 INFO    ] ================================================
[2026-08-25 17:30:05,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:30:05
[2026-08-25 17:30:05,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:30:05,908.908 INFO    ] Initializing speech engine...
[2026-08-25 17:30:05,915.915 INFO    ] 2026-08-25 17:30:05
[2026-08-25 17:30:06,186.186 INFO    ] 2026-08-25 17:30:06
[2026-08-25 17:30:06,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:30:06,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:30:06,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:30:06,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:30:06,699.699 INFO    ] time= 25/08/2026 17:30:06
[2026-08-25 17:30:06,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:30:06,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:30:06,903.903 INFO    ] No existing commands found in stream
[2026-08-25 17:30:11,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:30:11,927.927 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 17:30:13,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:30:13,586.586 INFO    ] Checking for system updates...
[2026-08-25 17:30:13,622.622 INFO    ] 200
[2026-08-25 17:30:13,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:13,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:30:13,681.681 INFO    ] No update needed
[2026-08-25 17:30:13,684.684 INFO    ] Checking for camera pi updates...
[2026-08-25 17:30:13,718.718 INFO    ] 200
[2026-08-25 17:30:13,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:13,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:30:13,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:30:13,822.822 INFO    ] No camera update needed
[2026-08-25 17:30:13,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:30:13,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:30:13,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:30:13,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:30:15,881.881 INFO    ] ================================================
[2026-08-25 17:30:15,896.896 INFO    ] Launching Daemon at Tue Aug 25 17:30:15 IST 2026
[2026-08-25 17:30:15,907.907 INFO    ] ================================================
[2026-08-25 17:30:16,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:30:16
[2026-08-25 17:30:17,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:30:17,480.480 INFO    ] Initializing speech engine...
[2026-08-25 17:30:17,497.497 INFO    ] 2026-08-25 17:30:17
[2026-08-25 17:30:17,774.774 INFO    ] 2026-08-25 17:30:17
[2026-08-25 17:30:17,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:30:18,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:30:18,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:30:18,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:30:18,300.300 INFO    ] time= 25/08/2026 17:30:18
[2026-08-25 17:30:18,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:30:18,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:30:18,508.508 INFO    ] No existing commands found in stream
[2026-08-25 17:30:23,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:30:23,526.526 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 17:30:27,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:30:27,124.124 INFO    ] Checking for system updates...
[2026-08-25 17:30:27,160.160 INFO    ] 200
[2026-08-25 17:30:27,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:27,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:30:27,220.220 INFO    ] No update needed
[2026-08-25 17:30:27,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 17:30:27,263.263 INFO    ] 200
[2026-08-25 17:30:27,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:27,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:30:27,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:30:27,362.362 INFO    ] No camera update needed
[2026-08-25 17:30:27,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:30:27,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:30:27,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:30:27,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:30:29,421.421 INFO    ] ================================================
[2026-08-25 17:30:29,437.437 INFO    ] Launching Daemon at Tue Aug 25 17:30:29 IST 2026
[2026-08-25 17:30:29,448.448 INFO    ] ================================================
[2026-08-25 17:30:30,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:30:30
[2026-08-25 17:30:30,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:30:31,055.055 INFO    ] Initializing speech engine...
[2026-08-25 17:30:31,064.064 INFO    ] 2026-08-25 17:30:31
[2026-08-25 17:30:31,333.333 INFO    ] 2026-08-25 17:30:31
[2026-08-25 17:30:31,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:30:31,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:30:31,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:30:31,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:30:31,913.913 INFO    ] time= 25/08/2026 17:30:31
[2026-08-25 17:30:31,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:30:31,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:30:32,125.125 INFO    ] No existing commands found in stream
[2026-08-25 17:30:37,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:30:37,160.160 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 17:30:37,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:30:37,635.635 INFO    ] Checking for system updates...
[2026-08-25 17:30:37,671.671 INFO    ] 200
[2026-08-25 17:30:37,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:37,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:30:37,728.728 INFO    ] No update needed
[2026-08-25 17:30:37,730.730 INFO    ] Checking for camera pi updates...
[2026-08-25 17:30:37,764.764 INFO    ] 200
[2026-08-25 17:30:37,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:37,807.807 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:30:37,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:30:37,854.854 INFO    ] No camera update needed
[2026-08-25 17:30:37,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:30:37,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:30:37,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:30:37,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:30:39,909.909 INFO    ] ================================================
[2026-08-25 17:30:39,925.925 INFO    ] Launching Daemon at Tue Aug 25 17:30:39 IST 2026
[2026-08-25 17:30:39,936.936 INFO    ] ================================================
[2026-08-25 17:30:40,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:30:40
[2026-08-25 17:30:41,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:30:41,570.570 INFO    ] Initializing speech engine...
[2026-08-25 17:30:41,582.582 INFO    ] 2026-08-25 17:30:41
[2026-08-25 17:30:41,867.867 INFO    ] 2026-08-25 17:30:41
[2026-08-25 17:30:41,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:30:42,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:30:42,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:30:43,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:30:43,431.431 INFO    ] time= 25/08/2026 17:30:43
[2026-08-25 17:30:43,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:30:43,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:30:43,566.566 INFO    ] No existing commands found in stream
[2026-08-25 17:30:48,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:30:48,582.582 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 17:30:51,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:30:51,023.023 INFO    ] Checking for system updates...
[2026-08-25 17:30:51,060.060 INFO    ] 200
[2026-08-25 17:30:51,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:51,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:30:51,118.118 INFO    ] No update needed
[2026-08-25 17:30:51,121.121 INFO    ] Checking for camera pi updates...
[2026-08-25 17:30:51,154.154 INFO    ] 200
[2026-08-25 17:30:51,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:30:51,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:30:51,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:30:51,252.252 INFO    ] No camera update needed
[2026-08-25 17:30:51,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:30:51,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:30:51,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:30:51,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:30:53,308.308 INFO    ] ================================================
[2026-08-25 17:30:53,323.323 INFO    ] Launching Daemon at Tue Aug 25 17:30:53 IST 2026
[2026-08-25 17:30:53,335.335 INFO    ] ================================================
[2026-08-25 17:30:53,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:30:53
[2026-08-25 17:30:54,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:30:54,980.980 INFO    ] Initializing speech engine...
[2026-08-25 17:30:54,987.987 INFO    ] 2026-08-25 17:30:54
[2026-08-25 17:30:55,265.265 INFO    ] 2026-08-25 17:30:55
[2026-08-25 17:30:55,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:30:55,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:30:55,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:30:55,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:30:55,825.825 INFO    ] time= 25/08/2026 17:30:55
[2026-08-25 17:30:55,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:30:55,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:30:55,987.987 INFO    ] No existing commands found in stream
[2026-08-25 17:31:01,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:31:01,014.014 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 17:31:04,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:31:04,659.659 INFO    ] Checking for system updates...
[2026-08-25 17:31:04,696.696 INFO    ] 200
[2026-08-25 17:31:04,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:04,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:31:04,754.754 INFO    ] No update needed
[2026-08-25 17:31:04,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 17:31:04,792.792 INFO    ] 200
[2026-08-25 17:31:04,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:04,837.837 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:31:04,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:31:04,889.889 INFO    ] No camera update needed
[2026-08-25 17:31:04,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:31:04,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:31:04,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:31:04,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:31:06,947.947 INFO    ] ================================================
[2026-08-25 17:31:06,962.962 INFO    ] Launching Daemon at Tue Aug 25 17:31:06 IST 2026
[2026-08-25 17:31:06,973.973 INFO    ] ================================================
[2026-08-25 17:31:07,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:31:07
[2026-08-25 17:31:08,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:31:08,403.403 INFO    ] Initializing speech engine...
[2026-08-25 17:31:08,410.410 INFO    ] 2026-08-25 17:31:08
[2026-08-25 17:31:08,670.670 INFO    ] 2026-08-25 17:31:08
[2026-08-25 17:31:08,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:31:08,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:31:08,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:31:09,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:31:09,152.152 INFO    ] time= 25/08/2026 17:31:09
[2026-08-25 17:31:09,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:31:09,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:31:09,352.352 INFO    ] No existing commands found in stream
[2026-08-25 17:31:14,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:31:14,380.380 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 17:31:17,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:31:17,470.470 INFO    ] Checking for system updates...
[2026-08-25 17:31:17,507.507 INFO    ] 200
[2026-08-25 17:31:17,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:17,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:31:17,576.576 INFO    ] No update needed
[2026-08-25 17:31:17,579.579 INFO    ] Checking for camera pi updates...
[2026-08-25 17:31:17,612.612 INFO    ] 200
[2026-08-25 17:31:17,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:17,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:31:17,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:31:17,814.814 INFO    ] No camera update needed
[2026-08-25 17:31:17,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:31:17,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:31:17,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:31:17,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:31:19,872.872 INFO    ] ================================================
[2026-08-25 17:31:19,888.888 INFO    ] Launching Daemon at Tue Aug 25 17:31:19 IST 2026
[2026-08-25 17:31:19,899.899 INFO    ] ================================================
[2026-08-25 17:31:20,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:31:20
[2026-08-25 17:31:21,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:31:21,467.467 INFO    ] Initializing speech engine...
[2026-08-25 17:31:21,482.482 INFO    ] 2026-08-25 17:31:21
[2026-08-25 17:31:21,759.759 INFO    ] 2026-08-25 17:31:21
[2026-08-25 17:31:21,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:31:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:31:22,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:31:22,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:31:22,270.270 INFO    ] time= 25/08/2026 17:31:22
[2026-08-25 17:31:22,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:31:22,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:31:22,502.502 INFO    ] No existing commands found in stream
[2026-08-25 17:31:27,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:31:27,520.520 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 17:31:31,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:31:31,374.374 INFO    ] Checking for system updates...
[2026-08-25 17:31:31,419.419 INFO    ] 200
[2026-08-25 17:31:31,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:31,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:31:31,482.482 INFO    ] No update needed
[2026-08-25 17:31:31,484.484 INFO    ] Checking for camera pi updates...
[2026-08-25 17:31:31,521.521 INFO    ] 200
[2026-08-25 17:31:31,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:31,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:31:31,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:31:31,615.615 INFO    ] No camera update needed
[2026-08-25 17:31:31,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:31:31,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:31:31,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:31:31,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:31:33,674.674 INFO    ] ================================================
[2026-08-25 17:31:33,690.690 INFO    ] Launching Daemon at Tue Aug 25 17:31:33 IST 2026
[2026-08-25 17:31:33,702.702 INFO    ] ================================================
[2026-08-25 17:31:34,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:31:34
[2026-08-25 17:31:34,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:31:35,128.128 INFO    ] Initializing speech engine...
[2026-08-25 17:31:35,138.138 INFO    ] 2026-08-25 17:31:35
[2026-08-25 17:31:35,383.383 INFO    ] 2026-08-25 17:31:35
[2026-08-25 17:31:35,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:31:35,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:31:35,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:31:35,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:31:35,868.868 INFO    ] time= 25/08/2026 17:31:35
[2026-08-25 17:31:35,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:31:35,944.944 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:31:36,087.087 INFO    ] No existing commands found in stream
[2026-08-25 17:31:41,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:31:41,107.107 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 17:31:44,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:31:44,387.387 INFO    ] Checking for system updates...
[2026-08-25 17:31:44,423.423 INFO    ] 200
[2026-08-25 17:31:44,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:44,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:31:44,481.481 INFO    ] No update needed
[2026-08-25 17:31:44,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 17:31:44,517.517 INFO    ] 200
[2026-08-25 17:31:44,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:44,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:31:44,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:31:44,609.609 INFO    ] No camera update needed
[2026-08-25 17:31:44,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:31:44,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:31:44,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:31:44,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:31:46,667.667 INFO    ] ================================================
[2026-08-25 17:31:46,683.683 INFO    ] Launching Daemon at Tue Aug 25 17:31:46 IST 2026
[2026-08-25 17:31:46,694.694 INFO    ] ================================================
[2026-08-25 17:31:47,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:31:47
[2026-08-25 17:31:47,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:31:48,288.288 INFO    ] Initializing speech engine...
[2026-08-25 17:31:48,297.297 INFO    ] 2026-08-25 17:31:48
[2026-08-25 17:31:48,570.570 INFO    ] 2026-08-25 17:31:48
[2026-08-25 17:31:48,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:31:48,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:31:48,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:31:49,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:31:49,116.116 INFO    ] time= 25/08/2026 17:31:49
[2026-08-25 17:31:49,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:31:49,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:31:49,302.302 INFO    ] No existing commands found in stream
[2026-08-25 17:31:54,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:31:54,331.331 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 17:31:55,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:31:55,962.962 INFO    ] Checking for system updates...
[2026-08-25 17:31:55,998.998 INFO    ] 200
[2026-08-25 17:31:56,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:56,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:31:56,061.061 INFO    ] No update needed
[2026-08-25 17:31:56,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 17:31:56,100.100 INFO    ] 200
[2026-08-25 17:31:56,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:31:56,148.148 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:31:56,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:31:56,200.200 INFO    ] No camera update needed
[2026-08-25 17:31:56,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:31:56,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:31:56,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:31:56,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:31:58,255.255 INFO    ] ================================================
[2026-08-25 17:31:58,271.271 INFO    ] Launching Daemon at Tue Aug 25 17:31:58 IST 2026
[2026-08-25 17:31:58,282.282 INFO    ] ================================================
[2026-08-25 17:31:58,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:31:58
[2026-08-25 17:31:59,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:31:59,679.679 INFO    ] Initializing speech engine...
[2026-08-25 17:31:59,702.702 INFO    ] 2026-08-25 17:31:59
[2026-08-25 17:31:59,958.958 INFO    ] 2026-08-25 17:31:59
[2026-08-25 17:32:00,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:32:00,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:32:00,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:32:00,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:32:00,455.455 INFO    ] time= 25/08/2026 17:32:00
[2026-08-25 17:32:00,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:32:00,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:32:00,683.683 INFO    ] No existing commands found in stream
[2026-08-25 17:32:05,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:32:05,700.700 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 17:32:07,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:32:07,136.136 INFO    ] Checking for system updates...
[2026-08-25 17:32:07,172.172 INFO    ] 200
[2026-08-25 17:32:07,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:07,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:32:07,230.230 INFO    ] No update needed
[2026-08-25 17:32:07,232.232 INFO    ] Checking for camera pi updates...
[2026-08-25 17:32:07,265.265 INFO    ] 200
[2026-08-25 17:32:07,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:07,307.307 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:32:07,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:32:07,374.374 INFO    ] No camera update needed
[2026-08-25 17:32:07,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:32:07,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:32:07,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:32:07,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:32:09,431.431 INFO    ] ================================================
[2026-08-25 17:32:09,447.447 INFO    ] Launching Daemon at Tue Aug 25 17:32:09 IST 2026
[2026-08-25 17:32:09,458.458 INFO    ] ================================================
[2026-08-25 17:32:10,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:32:10
[2026-08-25 17:32:10,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:32:10,882.882 INFO    ] Initializing speech engine...
[2026-08-25 17:32:10,888.888 INFO    ] 2026-08-25 17:32:10
[2026-08-25 17:32:11,140.140 INFO    ] 2026-08-25 17:32:11
[2026-08-25 17:32:11,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:32:11,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:32:11,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:32:11,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:32:11,602.602 INFO    ] time= 25/08/2026 17:32:11
[2026-08-25 17:32:11,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:32:11,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:32:11,842.842 INFO    ] No existing commands found in stream
[2026-08-25 17:32:16,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:32:16,860.860 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 17:32:19,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:32:19,141.141 INFO    ] Checking for system updates...
[2026-08-25 17:32:19,176.176 INFO    ] 200
[2026-08-25 17:32:19,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:19,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:32:19,233.233 INFO    ] No update needed
[2026-08-25 17:32:19,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 17:32:19,269.269 INFO    ] 200
[2026-08-25 17:32:19,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:19,318.318 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:32:19,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:32:19,371.371 INFO    ] No camera update needed
[2026-08-25 17:32:19,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:32:19,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:32:19,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:32:19,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:32:21,427.427 INFO    ] ================================================
[2026-08-25 17:32:21,443.443 INFO    ] Launching Daemon at Tue Aug 25 17:32:21 IST 2026
[2026-08-25 17:32:21,454.454 INFO    ] ================================================
[2026-08-25 17:32:22,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:32:22
[2026-08-25 17:32:22,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:32:23,144.144 INFO    ] Initializing speech engine...
[2026-08-25 17:32:23,154.154 INFO    ] 2026-08-25 17:32:23
[2026-08-25 17:32:23,418.418 INFO    ] 2026-08-25 17:32:23
[2026-08-25 17:32:23,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:32:23,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:32:23,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:32:23,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:32:23,949.949 INFO    ] time= 25/08/2026 17:32:23
[2026-08-25 17:32:23,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:32:23,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:32:24,104.104 INFO    ] No existing commands found in stream
[2026-08-25 17:32:29,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:32:29,119.119 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 17:32:32,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:32:32,936.936 INFO    ] Checking for system updates...
[2026-08-25 17:32:32,976.976 INFO    ] 200
[2026-08-25 17:32:32,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:33,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:32:33,042.042 INFO    ] No update needed
[2026-08-25 17:32:33,044.044 INFO    ] Checking for camera pi updates...
[2026-08-25 17:32:33,083.083 INFO    ] 200
[2026-08-25 17:32:33,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:33,132.132 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:32:33,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:32:33,179.179 INFO    ] No camera update needed
[2026-08-25 17:32:33,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:32:33,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:32:33,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:32:33,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:32:35,235.235 INFO    ] ================================================
[2026-08-25 17:32:35,251.251 INFO    ] Launching Daemon at Tue Aug 25 17:32:35 IST 2026
[2026-08-25 17:32:35,262.262 INFO    ] ================================================
[2026-08-25 17:32:35,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:32:35
[2026-08-25 17:32:36,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:32:36,712.712 INFO    ] Initializing speech engine...
[2026-08-25 17:32:36,718.718 INFO    ] 2026-08-25 17:32:36
[2026-08-25 17:32:36,963.963 INFO    ] 2026-08-25 17:32:36
[2026-08-25 17:32:36,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:32:38,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:32:38,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:32:38,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:32:38,440.440 INFO    ] time= 25/08/2026 17:32:38
[2026-08-25 17:32:38,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:32:38,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:32:38,533.533 INFO    ] No existing commands found in stream
[2026-08-25 17:32:43,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:32:43,547.547 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 17:32:46,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:32:46,153.153 INFO    ] Checking for system updates...
[2026-08-25 17:32:46,195.195 INFO    ] 200
[2026-08-25 17:32:46,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:46,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:32:46,259.259 INFO    ] No update needed
[2026-08-25 17:32:46,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 17:32:46,296.296 INFO    ] 200
[2026-08-25 17:32:46,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:46,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:32:46,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:32:46,387.387 INFO    ] No camera update needed
[2026-08-25 17:32:46,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:32:46,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:32:46,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:32:46,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:32:48,441.441 INFO    ] ================================================
[2026-08-25 17:32:48,456.456 INFO    ] Launching Daemon at Tue Aug 25 17:32:48 IST 2026
[2026-08-25 17:32:48,468.468 INFO    ] ================================================
[2026-08-25 17:32:49,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:32:49
[2026-08-25 17:32:49,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:32:50,183.183 INFO    ] Initializing speech engine...
[2026-08-25 17:32:50,189.189 INFO    ] 2026-08-25 17:32:50
[2026-08-25 17:32:50,480.480 INFO    ] 2026-08-25 17:32:50
[2026-08-25 17:32:50,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:32:50,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:32:50,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:32:51,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:32:51,016.016 INFO    ] time= 25/08/2026 17:32:51
[2026-08-25 17:32:51,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:32:51,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:32:51,205.205 INFO    ] No existing commands found in stream
[2026-08-25 17:32:56,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:32:56,239.239 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 17:32:59,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:32:59,622.622 INFO    ] Checking for system updates...
[2026-08-25 17:32:59,660.660 INFO    ] 200
[2026-08-25 17:32:59,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:59,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:32:59,717.717 INFO    ] No update needed
[2026-08-25 17:32:59,720.720 INFO    ] Checking for camera pi updates...
[2026-08-25 17:32:59,753.753 INFO    ] 200
[2026-08-25 17:32:59,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:32:59,802.802 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:32:59,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:32:59,852.852 INFO    ] No camera update needed
[2026-08-25 17:32:59,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:32:59,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:32:59,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:32:59,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:33:01,908.908 INFO    ] ================================================
[2026-08-25 17:33:01,929.929 INFO    ] Launching Daemon at Tue Aug 25 17:33:01 IST 2026
[2026-08-25 17:33:01,944.944 INFO    ] ================================================
[2026-08-25 17:33:02,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:33:02
[2026-08-25 17:33:03,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:33:03,505.505 INFO    ] Initializing speech engine...
[2026-08-25 17:33:03,515.515 INFO    ] 2026-08-25 17:33:03
[2026-08-25 17:33:03,766.766 INFO    ] 2026-08-25 17:33:03
[2026-08-25 17:33:03,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:33:04,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:33:04,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:33:04,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:33:04,535.535 INFO    ] time= 25/08/2026 17:33:04
[2026-08-25 17:33:04,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:33:04,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:33:04,728.728 INFO    ] No existing commands found in stream
[2026-08-25 17:33:09,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:33:09,756.756 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 17:33:13,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:33:13,768.768 INFO    ] Checking for system updates...
[2026-08-25 17:33:13,807.807 INFO    ] 200
[2026-08-25 17:33:13,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:13,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:33:13,864.864 INFO    ] No update needed
[2026-08-25 17:33:13,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 17:33:13,904.904 INFO    ] 200
[2026-08-25 17:33:13,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:13,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:33:13,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:33:13,996.996 INFO    ] No camera update needed
[2026-08-25 17:33:13,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:33:14,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:33:14,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:33:14,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:33:16,054.054 INFO    ] ================================================
[2026-08-25 17:33:16,069.069 INFO    ] Launching Daemon at Tue Aug 25 17:33:16 IST 2026
[2026-08-25 17:33:16,080.080 INFO    ] ================================================
[2026-08-25 17:33:16,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:33:16
[2026-08-25 17:33:17,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:33:17,611.611 INFO    ] Initializing speech engine...
[2026-08-25 17:33:17,637.637 INFO    ] 2026-08-25 17:33:17
[2026-08-25 17:33:17,941.941 INFO    ] 2026-08-25 17:33:17
[2026-08-25 17:33:17,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:33:18,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:33:18,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:33:18,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:33:18,502.502 INFO    ] time= 25/08/2026 17:33:18
[2026-08-25 17:33:18,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:33:18,607.607 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:33:18,766.766 INFO    ] No existing commands found in stream
[2026-08-25 17:33:23,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:33:23,798.798 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 17:33:26,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:33:26,023.023 INFO    ] Checking for system updates...
[2026-08-25 17:33:26,063.063 INFO    ] 200
[2026-08-25 17:33:26,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:26,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:33:26,129.129 INFO    ] No update needed
[2026-08-25 17:33:26,131.131 INFO    ] Checking for camera pi updates...
[2026-08-25 17:33:26,169.169 INFO    ] 200
[2026-08-25 17:33:26,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:26,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:33:26,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:33:26,373.373 INFO    ] No camera update needed
[2026-08-25 17:33:26,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:33:26,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:33:26,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:33:26,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:33:28,428.428 INFO    ] ================================================
[2026-08-25 17:33:28,443.443 INFO    ] Launching Daemon at Tue Aug 25 17:33:28 IST 2026
[2026-08-25 17:33:28,454.454 INFO    ] ================================================
[2026-08-25 17:33:29,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:33:29
[2026-08-25 17:33:29,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:33:29,893.893 INFO    ] Initializing speech engine...
[2026-08-25 17:33:29,899.899 INFO    ] 2026-08-25 17:33:29
[2026-08-25 17:33:30,159.159 INFO    ] 2026-08-25 17:33:30
[2026-08-25 17:33:30,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:33:30,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:33:30,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:33:30,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:33:30,691.691 INFO    ] time= 25/08/2026 17:33:30
[2026-08-25 17:33:30,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:33:30,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:33:30,843.843 INFO    ] No existing commands found in stream
[2026-08-25 17:33:35,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:33:35,870.870 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 17:33:37,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:33:37,770.770 INFO    ] Checking for system updates...
[2026-08-25 17:33:37,807.807 INFO    ] 200
[2026-08-25 17:33:37,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:37,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:33:37,875.875 INFO    ] No update needed
[2026-08-25 17:33:37,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 17:33:37,914.914 INFO    ] 200
[2026-08-25 17:33:37,917.917 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:37,965.965 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:33:38,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:33:38,046.046 INFO    ] No camera update needed
[2026-08-25 17:33:38,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:33:38,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:33:38,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:33:38,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:33:40,106.106 INFO    ] ================================================
[2026-08-25 17:33:40,121.121 INFO    ] Launching Daemon at Tue Aug 25 17:33:40 IST 2026
[2026-08-25 17:33:40,132.132 INFO    ] ================================================
[2026-08-25 17:33:40,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:33:40
[2026-08-25 17:33:41,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:33:41,541.541 INFO    ] Initializing speech engine...
[2026-08-25 17:33:41,557.557 INFO    ] 2026-08-25 17:33:41
[2026-08-25 17:33:41,811.811 INFO    ] 2026-08-25 17:33:41
[2026-08-25 17:33:41,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:33:42,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:33:42,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:33:42,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:33:42,309.309 INFO    ] time= 25/08/2026 17:33:42
[2026-08-25 17:33:42,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:33:42,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:33:42,519.519 INFO    ] No existing commands found in stream
[2026-08-25 17:33:47,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:33:47,544.544 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 17:33:48,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:33:48,586.586 INFO    ] Checking for system updates...
[2026-08-25 17:33:48,622.622 INFO    ] 200
[2026-08-25 17:33:48,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:48,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:33:48,681.681 INFO    ] No update needed
[2026-08-25 17:33:48,684.684 INFO    ] Checking for camera pi updates...
[2026-08-25 17:33:48,723.723 INFO    ] 200
[2026-08-25 17:33:48,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:33:48,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:33:48,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:33:48,822.822 INFO    ] No camera update needed
[2026-08-25 17:33:48,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:33:48,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:33:48,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:33:48,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:33:50,884.884 INFO    ] ================================================
[2026-08-25 17:33:50,899.899 INFO    ] Launching Daemon at Tue Aug 25 17:33:50 IST 2026
[2026-08-25 17:33:50,911.911 INFO    ] ================================================
[2026-08-25 17:33:51,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:33:51
[2026-08-25 17:33:52,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:33:52,587.587 INFO    ] Initializing speech engine...
[2026-08-25 17:33:52,601.601 INFO    ] 2026-08-25 17:33:52
[2026-08-25 17:33:52,897.897 INFO    ] 2026-08-25 17:33:52
[2026-08-25 17:33:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:33:53,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:33:53,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:33:53,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:33:53,442.442 INFO    ] time= 25/08/2026 17:33:53
[2026-08-25 17:33:53,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:33:53,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:33:53,602.602 INFO    ] No existing commands found in stream
[2026-08-25 17:33:58,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:33:58,638.638 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 17:34:01,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:34:01,612.612 INFO    ] Checking for system updates...
[2026-08-25 17:34:01,689.689 INFO    ] 200
[2026-08-25 17:34:01,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:01,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:34:01,794.794 INFO    ] No update needed
[2026-08-25 17:34:01,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 17:34:01,854.854 INFO    ] 200
[2026-08-25 17:34:01,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:01,910.910 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:34:01,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:34:01,972.972 INFO    ] No camera update needed
[2026-08-25 17:34:01,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:34:01,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:34:01,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:34:01,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:34:04,035.035 INFO    ] ================================================
[2026-08-25 17:34:04,050.050 INFO    ] Launching Daemon at Tue Aug 25 17:34:04 IST 2026
[2026-08-25 17:34:04,063.063 INFO    ] ================================================
[2026-08-25 17:34:04,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:34:04
[2026-08-25 17:34:05,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:34:05,517.517 INFO    ] Initializing speech engine...
[2026-08-25 17:34:05,532.532 INFO    ] 2026-08-25 17:34:05
[2026-08-25 17:34:05,819.819 INFO    ] 2026-08-25 17:34:05
[2026-08-25 17:34:05,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:34:06,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:34:06,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:34:06,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:34:06,224.224 INFO    ] time= 25/08/2026 17:34:06
[2026-08-25 17:34:06,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:34:06,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:34:06,307.307 INFO    ] No existing commands found in stream
[2026-08-25 17:34:11,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:34:11,322.322 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 17:34:12,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:34:12,635.635 INFO    ] Checking for system updates...
[2026-08-25 17:34:12,670.670 INFO    ] 200
[2026-08-25 17:34:12,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:12,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:34:12,733.733 INFO    ] No update needed
[2026-08-25 17:34:12,736.736 INFO    ] Checking for camera pi updates...
[2026-08-25 17:34:12,769.769 INFO    ] 200
[2026-08-25 17:34:12,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:12,811.811 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:34:12,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:34:12,864.864 INFO    ] No camera update needed
[2026-08-25 17:34:12,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:34:12,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:34:12,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:34:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:34:14,919.919 INFO    ] ================================================
[2026-08-25 17:34:14,935.935 INFO    ] Launching Daemon at Tue Aug 25 17:34:14 IST 2026
[2026-08-25 17:34:14,946.946 INFO    ] ================================================
[2026-08-25 17:34:15,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:34:15
[2026-08-25 17:34:16,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:34:16,577.577 INFO    ] Initializing speech engine...
[2026-08-25 17:34:16,589.589 INFO    ] 2026-08-25 17:34:16
[2026-08-25 17:34:16,864.864 INFO    ] 2026-08-25 17:34:16
[2026-08-25 17:34:16,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:34:17,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:34:17,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:34:17,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:34:17,354.354 INFO    ] time= 25/08/2026 17:34:17
[2026-08-25 17:34:17,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:34:17,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:34:17,572.572 INFO    ] No existing commands found in stream
[2026-08-25 17:34:22,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:34:22,607.607 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 17:34:24,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:34:24,767.767 INFO    ] Checking for system updates...
[2026-08-25 17:34:24,805.805 INFO    ] 200
[2026-08-25 17:34:24,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:24,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:34:24,863.863 INFO    ] No update needed
[2026-08-25 17:34:24,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 17:34:24,903.903 INFO    ] 200
[2026-08-25 17:34:24,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:24,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:34:24,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:34:24,997.997 INFO    ] No camera update needed
[2026-08-25 17:34:24,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:34:25,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:34:25,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:34:25,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:34:27,052.052 INFO    ] ================================================
[2026-08-25 17:34:27,067.067 INFO    ] Launching Daemon at Tue Aug 25 17:34:27 IST 2026
[2026-08-25 17:34:27,079.079 INFO    ] ================================================
[2026-08-25 17:34:27,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:34:27
[2026-08-25 17:34:28,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:34:28,501.501 INFO    ] Initializing speech engine...
[2026-08-25 17:34:28,520.520 INFO    ] 2026-08-25 17:34:28
[2026-08-25 17:34:28,766.766 INFO    ] 2026-08-25 17:34:28
[2026-08-25 17:34:28,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:34:28,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:34:29,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:34:29,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:34:29,268.268 INFO    ] time= 25/08/2026 17:34:29
[2026-08-25 17:34:29,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:34:29,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:34:29,474.474 INFO    ] No existing commands found in stream
[2026-08-25 17:34:34,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:34:34,490.490 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 17:34:35,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:34:35,035.035 INFO    ] Checking for system updates...
[2026-08-25 17:34:35,071.071 INFO    ] 200
[2026-08-25 17:34:35,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:35,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:34:35,136.136 INFO    ] No update needed
[2026-08-25 17:34:35,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 17:34:35,177.177 INFO    ] 200
[2026-08-25 17:34:35,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:35,221.221 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:34:35,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:34:35,271.271 INFO    ] No camera update needed
[2026-08-25 17:34:35,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:34:35,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:34:35,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:34:35,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:34:37,330.330 INFO    ] ================================================
[2026-08-25 17:34:37,351.351 INFO    ] Launching Daemon at Tue Aug 25 17:34:37 IST 2026
[2026-08-25 17:34:37,363.363 INFO    ] ================================================
[2026-08-25 17:34:37,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:34:37
[2026-08-25 17:34:38,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:34:38,819.819 INFO    ] Initializing speech engine...
[2026-08-25 17:34:38,833.833 INFO    ] 2026-08-25 17:34:38
[2026-08-25 17:34:39,117.117 INFO    ] 2026-08-25 17:34:39
[2026-08-25 17:34:39,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:34:39,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:34:39,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:34:39,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:34:39,583.583 INFO    ] time= 25/08/2026 17:34:39
[2026-08-25 17:34:39,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:34:39,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:34:39,754.754 INFO    ] No existing commands found in stream
[2026-08-25 17:34:44,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:34:44,787.787 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 17:34:47,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:34:47,056.056 INFO    ] Checking for system updates...
[2026-08-25 17:34:47,091.091 INFO    ] 200
[2026-08-25 17:34:47,093.093 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:47,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:34:47,148.148 INFO    ] No update needed
[2026-08-25 17:34:47,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 17:34:47,188.188 INFO    ] 200
[2026-08-25 17:34:47,190.190 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:47,230.230 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:34:47,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:34:47,285.285 INFO    ] No camera update needed
[2026-08-25 17:34:47,288.288 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:34:47,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:34:47,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:34:47,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:34:49,340.340 INFO    ] ================================================
[2026-08-25 17:34:49,356.356 INFO    ] Launching Daemon at Tue Aug 25 17:34:49 IST 2026
[2026-08-25 17:34:49,366.366 INFO    ] ================================================
[2026-08-25 17:34:50,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:34:50
[2026-08-25 17:34:50,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:34:50,974.974 INFO    ] Initializing speech engine...
[2026-08-25 17:34:50,983.983 INFO    ] 2026-08-25 17:34:50
[2026-08-25 17:34:51,280.280 INFO    ] 2026-08-25 17:34:51
[2026-08-25 17:34:51,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:34:51,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:34:51,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:34:51,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:34:51,824.824 INFO    ] time= 25/08/2026 17:34:51
[2026-08-25 17:34:51,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:34:51,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:34:51,988.988 INFO    ] No existing commands found in stream
[2026-08-25 17:34:57,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:34:57,021.021 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 17:34:58,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:34:58,500.500 INFO    ] Checking for system updates...
[2026-08-25 17:34:58,537.537 INFO    ] 200
[2026-08-25 17:34:58,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:58,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:34:58,596.596 INFO    ] No update needed
[2026-08-25 17:34:58,599.599 INFO    ] Checking for camera pi updates...
[2026-08-25 17:34:58,638.638 INFO    ] 200
[2026-08-25 17:34:58,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:34:58,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:34:58,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:34:58,747.747 INFO    ] No camera update needed
[2026-08-25 17:34:58,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:34:58,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:34:58,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:34:58,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:35:00,803.803 INFO    ] ================================================
[2026-08-25 17:35:00,818.818 INFO    ] Launching Daemon at Tue Aug 25 17:35:00 IST 2026
[2026-08-25 17:35:00,828.828 INFO    ] ================================================
[2026-08-25 17:35:01,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:35:01
[2026-08-25 17:35:02,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:35:02,523.523 INFO    ] Initializing speech engine...
[2026-08-25 17:35:02,531.531 INFO    ] 2026-08-25 17:35:02
[2026-08-25 17:35:02,829.829 INFO    ] 2026-08-25 17:35:02
[2026-08-25 17:35:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:35:03,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:35:03,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:35:03,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:35:03,276.276 INFO    ] time= 25/08/2026 17:35:03
[2026-08-25 17:35:03,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:35:03,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:35:03,471.471 INFO    ] No existing commands found in stream
[2026-08-25 17:35:08,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:35:08,496.496 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 17:35:12,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:35:12,705.705 INFO    ] Checking for system updates...
[2026-08-25 17:35:12,741.741 INFO    ] 200
[2026-08-25 17:35:12,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:12,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:12,808.808 INFO    ] No update needed
[2026-08-25 17:35:12,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 17:35:12,846.846 INFO    ] 200
[2026-08-25 17:35:12,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:12,894.894 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:35:12,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:12,950.950 INFO    ] No camera update needed
[2026-08-25 17:35:12,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:35:12,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:35:12,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:35:12,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:35:15,008.008 INFO    ] ================================================
[2026-08-25 17:35:15,023.023 INFO    ] Launching Daemon at Tue Aug 25 17:35:15 IST 2026
[2026-08-25 17:35:15,035.035 INFO    ] ================================================
[2026-08-25 17:35:15,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:35:15
[2026-08-25 17:35:16,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:35:16,637.637 INFO    ] Initializing speech engine...
[2026-08-25 17:35:16,647.647 INFO    ] 2026-08-25 17:35:16
[2026-08-25 17:35:16,934.934 INFO    ] 2026-08-25 17:35:16
[2026-08-25 17:35:16,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:35:17,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:35:17,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:35:17,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:35:17,481.481 INFO    ] time= 25/08/2026 17:35:17
[2026-08-25 17:35:17,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:35:17,504.504 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:35:17,630.630 INFO    ] No existing commands found in stream
[2026-08-25 17:35:22,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:35:22,653.653 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 17:35:27,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:35:27,132.132 INFO    ] Checking for system updates...
[2026-08-25 17:35:27,172.172 INFO    ] 200
[2026-08-25 17:35:27,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:27,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:27,232.232 INFO    ] No update needed
[2026-08-25 17:35:27,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 17:35:27,270.270 INFO    ] 200
[2026-08-25 17:35:27,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:27,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:35:27,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:27,369.369 INFO    ] No camera update needed
[2026-08-25 17:35:27,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:35:27,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:35:27,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:35:27,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:35:29,424.424 INFO    ] ================================================
[2026-08-25 17:35:29,439.439 INFO    ] Launching Daemon at Tue Aug 25 17:35:29 IST 2026
[2026-08-25 17:35:29,450.450 INFO    ] ================================================
[2026-08-25 17:35:30,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:35:30
[2026-08-25 17:35:30,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:35:30,856.856 INFO    ] Initializing speech engine...
[2026-08-25 17:35:30,870.870 INFO    ] 2026-08-25 17:35:30
[2026-08-25 17:35:31,136.136 INFO    ] 2026-08-25 17:35:31
[2026-08-25 17:35:31,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:35:31,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:35:31,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:35:31,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:35:31,632.632 INFO    ] time= 25/08/2026 17:35:31
[2026-08-25 17:35:31,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:35:31,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:35:31,884.884 INFO    ] No existing commands found in stream
[2026-08-25 17:35:36,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:35:36,909.909 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 17:35:39,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:35:39,367.367 INFO    ] Checking for system updates...
[2026-08-25 17:35:39,403.403 INFO    ] 200
[2026-08-25 17:35:39,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:39,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:39,462.462 INFO    ] No update needed
[2026-08-25 17:35:39,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 17:35:39,499.499 INFO    ] 200
[2026-08-25 17:35:39,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:39,542.542 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:35:39,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:39,601.601 INFO    ] No camera update needed
[2026-08-25 17:35:39,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:35:39,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:35:39,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:35:39,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:35:41,657.657 INFO    ] ================================================
[2026-08-25 17:35:41,672.672 INFO    ] Launching Daemon at Tue Aug 25 17:35:41 IST 2026
[2026-08-25 17:35:41,683.683 INFO    ] ================================================
[2026-08-25 17:35:42,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:35:42
[2026-08-25 17:35:42,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:35:43,104.104 INFO    ] Initializing speech engine...
[2026-08-25 17:35:43,128.128 INFO    ] 2026-08-25 17:35:43
[2026-08-25 17:35:43,401.401 INFO    ] 2026-08-25 17:35:43
[2026-08-25 17:35:43,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:35:43,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:35:43,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:35:43,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:35:43,814.814 INFO    ] time= 25/08/2026 17:35:43
[2026-08-25 17:35:43,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:35:43,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:35:44,002.002 INFO    ] No existing commands found in stream
[2026-08-25 17:35:49,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:35:49,040.040 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 17:35:51,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:35:51,121.121 INFO    ] Checking for system updates...
[2026-08-25 17:35:51,156.156 INFO    ] 200
[2026-08-25 17:35:51,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:51,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:51,213.213 INFO    ] No update needed
[2026-08-25 17:35:51,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 17:35:51,249.249 INFO    ] 200
[2026-08-25 17:35:51,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:35:51,300.300 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:35:51,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:35:51,352.352 INFO    ] No camera update needed
[2026-08-25 17:35:51,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:35:51,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:35:51,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:35:51,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:35:53,407.407 INFO    ] ================================================
[2026-08-25 17:35:53,426.426 INFO    ] Launching Daemon at Tue Aug 25 17:35:53 IST 2026
[2026-08-25 17:35:53,438.438 INFO    ] ================================================
[2026-08-25 17:35:54,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:35:54
[2026-08-25 17:35:54,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:35:54,892.892 INFO    ] Initializing speech engine...
[2026-08-25 17:35:54,917.917 INFO    ] 2026-08-25 17:35:54
[2026-08-25 17:35:55,192.192 INFO    ] 2026-08-25 17:35:55
[2026-08-25 17:35:55,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:35:55,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:35:55,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:35:55,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:35:55,630.630 INFO    ] time= 25/08/2026 17:35:55
[2026-08-25 17:35:55,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:35:55,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:35:55,720.720 INFO    ] No existing commands found in stream
[2026-08-25 17:36:00,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:36:00,750.750 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 17:36:04,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:36:04,124.124 INFO    ] Checking for system updates...
[2026-08-25 17:36:04,162.162 INFO    ] 200
[2026-08-25 17:36:04,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:04,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:36:04,225.225 INFO    ] No update needed
[2026-08-25 17:36:04,228.228 INFO    ] Checking for camera pi updates...
[2026-08-25 17:36:04,267.267 INFO    ] 200
[2026-08-25 17:36:04,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:04,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:36:04,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:36:04,376.376 INFO    ] No camera update needed
[2026-08-25 17:36:04,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:36:04,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:36:04,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:36:04,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:36:06,431.431 INFO    ] ================================================
[2026-08-25 17:36:06,446.446 INFO    ] Launching Daemon at Tue Aug 25 17:36:06 IST 2026
[2026-08-25 17:36:06,456.456 INFO    ] ================================================
[2026-08-25 17:36:07,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:36:07
[2026-08-25 17:36:07,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:36:07,911.911 INFO    ] Initializing speech engine...
[2026-08-25 17:36:07,920.920 INFO    ] 2026-08-25 17:36:07
[2026-08-25 17:36:08,173.173 INFO    ] 2026-08-25 17:36:08
[2026-08-25 17:36:08,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:36:08,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:36:08,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:36:08,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:36:08,660.660 INFO    ] time= 25/08/2026 17:36:08
[2026-08-25 17:36:08,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:36:08,749.749 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:36:08,881.881 INFO    ] No existing commands found in stream
[2026-08-25 17:36:13,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:36:13,909.909 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 17:36:18,029.029 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:36:18,032.032 INFO    ] Checking for system updates...
[2026-08-25 17:36:18,067.067 INFO    ] 200
[2026-08-25 17:36:18,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:18,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:36:18,125.125 INFO    ] No update needed
[2026-08-25 17:36:18,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 17:36:18,160.160 INFO    ] 200
[2026-08-25 17:36:18,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:18,202.202 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:36:18,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:36:18,249.249 INFO    ] No camera update needed
[2026-08-25 17:36:18,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:36:18,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:36:18,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:36:18,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:36:20,304.304 INFO    ] ================================================
[2026-08-25 17:36:20,319.319 INFO    ] Launching Daemon at Tue Aug 25 17:36:20 IST 2026
[2026-08-25 17:36:20,330.330 INFO    ] ================================================
[2026-08-25 17:36:20,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:36:20
[2026-08-25 17:36:21,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:36:21,758.758 INFO    ] Initializing speech engine...
[2026-08-25 17:36:21,770.770 INFO    ] 2026-08-25 17:36:21
[2026-08-25 17:36:22,022.022 INFO    ] 2026-08-25 17:36:22
[2026-08-25 17:36:22,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:36:22,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:36:22,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:36:22,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:36:22,507.507 INFO    ] time= 25/08/2026 17:36:22
[2026-08-25 17:36:22,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:36:22,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:36:22,722.722 INFO    ] No existing commands found in stream
[2026-08-25 17:36:27,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:36:27,742.742 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 17:36:31,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:36:31,160.160 INFO    ] Checking for system updates...
[2026-08-25 17:36:31,196.196 INFO    ] 200
[2026-08-25 17:36:31,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:31,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:36:31,254.254 INFO    ] No update needed
[2026-08-25 17:36:31,257.257 INFO    ] Checking for camera pi updates...
[2026-08-25 17:36:31,294.294 INFO    ] 200
[2026-08-25 17:36:31,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:31,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:36:31,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:36:31,397.397 INFO    ] No camera update needed
[2026-08-25 17:36:31,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:36:31,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:36:31,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:36:31,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:36:33,454.454 INFO    ] ================================================
[2026-08-25 17:36:33,469.469 INFO    ] Launching Daemon at Tue Aug 25 17:36:33 IST 2026
[2026-08-25 17:36:33,480.480 INFO    ] ================================================
[2026-08-25 17:36:34,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:36:34
[2026-08-25 17:36:34,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:36:35,096.096 INFO    ] Initializing speech engine...
[2026-08-25 17:36:35,109.109 INFO    ] 2026-08-25 17:36:35
[2026-08-25 17:36:35,390.390 INFO    ] 2026-08-25 17:36:35
[2026-08-25 17:36:35,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:36:35,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:36:35,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:36:35,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:36:35,934.934 INFO    ] time= 25/08/2026 17:36:35
[2026-08-25 17:36:35,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:36:35,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:36:36,081.081 INFO    ] No existing commands found in stream
[2026-08-25 17:36:41,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:36:41,107.107 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 17:36:44,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:36:44,498.498 INFO    ] Checking for system updates...
[2026-08-25 17:36:44,536.536 INFO    ] 200
[2026-08-25 17:36:44,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:44,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:36:44,593.593 INFO    ] No update needed
[2026-08-25 17:36:44,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 17:36:44,628.628 INFO    ] 200
[2026-08-25 17:36:44,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:44,679.679 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:36:44,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:36:44,735.735 INFO    ] No camera update needed
[2026-08-25 17:36:44,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:36:44,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:36:44,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:36:44,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:36:46,789.789 INFO    ] ================================================
[2026-08-25 17:36:46,805.805 INFO    ] Launching Daemon at Tue Aug 25 17:36:46 IST 2026
[2026-08-25 17:36:46,815.815 INFO    ] ================================================
[2026-08-25 17:36:47,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:36:47
[2026-08-25 17:36:48,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:36:48,279.279 INFO    ] Initializing speech engine...
[2026-08-25 17:36:48,285.285 INFO    ] 2026-08-25 17:36:48
[2026-08-25 17:36:48,545.545 INFO    ] 2026-08-25 17:36:48
[2026-08-25 17:36:48,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:36:48,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:36:48,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:36:48,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:36:49,016.016 INFO    ] time= 25/08/2026 17:36:48
[2026-08-25 17:36:49,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:36:49,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:36:49,234.234 INFO    ] No existing commands found in stream
[2026-08-25 17:36:54,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:36:54,264.264 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 17:36:57,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:36:57,372.372 INFO    ] Checking for system updates...
[2026-08-25 17:36:57,409.409 INFO    ] 200
[2026-08-25 17:36:57,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:57,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:36:57,468.468 INFO    ] No update needed
[2026-08-25 17:36:57,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 17:36:57,505.505 INFO    ] 200
[2026-08-25 17:36:57,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:36:57,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:36:57,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:36:57,636.636 INFO    ] No camera update needed
[2026-08-25 17:36:57,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:36:57,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:36:57,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:36:57,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:36:59,691.691 INFO    ] ================================================
[2026-08-25 17:36:59,706.706 INFO    ] Launching Daemon at Tue Aug 25 17:36:59 IST 2026
[2026-08-25 17:36:59,717.717 INFO    ] ================================================
[2026-08-25 17:37:00,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:37:00
[2026-08-25 17:37:00,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:37:01,156.156 INFO    ] Initializing speech engine...
[2026-08-25 17:37:01,179.179 INFO    ] 2026-08-25 17:37:01
[2026-08-25 17:37:01,448.448 INFO    ] 2026-08-25 17:37:01
[2026-08-25 17:37:01,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:37:01,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:37:01,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:37:01,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:37:01,912.912 INFO    ] time= 25/08/2026 17:37:01
[2026-08-25 17:37:01,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:37:01,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:37:02,054.054 INFO    ] No existing commands found in stream
[2026-08-25 17:37:07,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:37:07,067.067 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 17:37:11,531.531 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:37:11,534.534 INFO    ] Checking for system updates...
[2026-08-25 17:37:11,569.569 INFO    ] 200
[2026-08-25 17:37:11,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:37:11,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:37:11,626.626 INFO    ] No update needed
[2026-08-25 17:37:11,629.629 INFO    ] Checking for camera pi updates...
[2026-08-25 17:37:11,662.662 INFO    ] 200
[2026-08-25 17:37:11,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:37:11,710.710 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:37:11,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:37:11,766.766 INFO    ] No camera update needed
[2026-08-25 17:37:11,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:37:11,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:37:11,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:37:11,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:37:13,820.820 INFO    ] ================================================
[2026-08-25 17:37:13,836.836 INFO    ] Launching Daemon at Tue Aug 25 17:37:13 IST 2026
[2026-08-25 17:37:13,847.847 INFO    ] ================================================
[2026-08-25 17:37:14,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:37:14
[2026-08-25 17:37:15,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:37:15,286.286 INFO    ] Initializing speech engine...
[2026-08-25 17:37:15,300.300 INFO    ] 2026-08-25 17:37:15
[2026-08-25 17:37:15,565.565 INFO    ] 2026-08-25 17:37:15
[2026-08-25 17:37:15,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:37:15,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:37:15,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:37:15,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:37:15,957.957 INFO    ] time= 25/08/2026 17:37:15
[2026-08-25 17:37:15,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:37:16,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:37:16,116.116 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 17:37:16,119.119 INFO    ] Checking historical command: ID=1787659629159-0
[2026-08-25 17:37:16,173.173 INFO    ] process_and_cleanup_command: msg_id=1787659629159-0
[2026-08-25 17:37:16,183.183 INFO    ] is_command_expired: timestamp=2026-08-25T12:07:08.596Z, expiry=30s
[2026-08-25 17:37:16,357.357 INFO    ] Command removed from stream: 1787659629159-0. returning for processing...
[2026-08-25 17:37:16,410.410 INFO    ] ***** get_valid_command
[2026-08-25 17:37:16,454.454 INFO    ] {'command': 'start-order', 'timeout': '10', 'timestamp': '2026-08-25T12:07:08.596Z', 'data': '{"request_id":"start-order-1787659628595-wey4uuc3l","orderId":"TM03202401260825173617864","is_vending":false}', 'source': 'webapp'}
[2026-08-25 17:37:16,465.465 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM03202401260825173617864', 'request_id': 'start-order-1787659628595-wey4uuc3l'}
[2026-08-25 17:37:16,519.519 INFO    ] Handling start order...
[2026-08-25 17:37:16,568.568 INFO    ] handle_start_order_command
[2026-08-25 17:37:16,649.649 INFO    ] _send_start_order_success: request_id=start-order-1787659628595-wey4uuc3l, order_id=TM03202401260825173617864
[2026-08-25 17:37:16,667.667 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 17:37:16,804.804 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787659636753-0
[2026-08-25 17:37:16,810.810 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 17:37:16,813.813 INFO    ] Checking for system updates...
[2026-08-25 17:37:16,876.876 INFO    ] 200
[2026-08-25 17:37:16,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:37:16,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:37:16,944.944 INFO    ] No update needed
[2026-08-25 17:37:16,948.948 INFO    ] Checking for camera pi updates...
[2026-08-25 17:37:16,985.985 INFO    ] 200
[2026-08-25 17:37:16,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:37:17,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:37:17,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:37:17,178.178 INFO    ] No camera update needed
[2026-08-25 17:37:17,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:37:17,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:37:17,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:37:17,212.212 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 17:37:17,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:37:19,271.271 INFO    ] ================================================
[2026-08-25 17:37:19,286.286 INFO    ] Launching Daemon at Tue Aug 25 17:37:19 IST 2026
[2026-08-25 17:37:19,297.297 INFO    ] ================================================
[2026-08-25 17:37:19,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:37:19
[2026-08-25 17:37:20,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:37:20,810.810 INFO    ] Initializing speech engine...
[2026-08-25 17:37:20,820.820 INFO    ] 2026-08-25 17:37:20
[2026-08-25 17:37:21,070.070 INFO    ] 2026-08-25 17:37:21
[2026-08-25 17:37:21,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:37:21,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:37:21,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:37:21,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:37:21,564.564 INFO    ] time= 25/08/2026 17:37:21
[2026-08-25 17:37:21,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:37:21,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:37:21,787.787 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 17:37:21,842.842 INFO    ] Checking historical command: ID=1787659636753-0
[2026-08-25 17:37:21,889.889 INFO    ] process_and_cleanup_command: msg_id=1787659636753-0
[2026-08-25 17:37:21,927.927 INFO    ] is_command_expired: timestamp=2026-08-25T12:07:16.655282Z, expiry=30s
[2026-08-25 17:37:22,116.116 INFO    ] Command removed from stream: 1787659636753-0. returning for processing...
[2026-08-25 17:37:22,119.119 INFO    ] ***** get_valid_command
[2026-08-25 17:37:22,121.121 INFO    ] {'message': 'start-order success', 'status': 'success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1787659628595-wey4uuc3l', 'timestamp': '2026-08-25T12:07:16.655282Z', 'metadata_order_id': 'TM03202401260825173617864', 'imei': 'TM03202401'}
[2026-08-25 17:37:22,124.124 INFO    ] Checking historical command: ID=1787659639742-0
[2026-08-25 17:37:22,190.190 INFO    ] process_and_cleanup_command: msg_id=1787659639742-0
[2026-08-25 17:37:22,239.239 INFO    ] is_command_expired: timestamp=2026-08-25T12:07:19.226Z, expiry=30s
[2026-08-25 17:37:22,358.358 INFO    ] Command removed from stream: 1787659639742-0. returning for processing...
[2026-08-25 17:37:22,363.363 INFO    ] ***** get_valid_command
[2026-08-25 17:37:22,367.367 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1787659639226-j8zwmkadm","orderId":"TM03202401260825173617864","is_vending":false,"accessCode":"88121244"}', 'timestamp': '2026-08-25T12:07:19.226Z', 'source': 'webapp', 'timeout': '60'}
[2026-08-25 17:37:22,371.371 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '88121244', 'orderId': 'TM03202401260825173617864', 'request_id': 'process-order-1787659639226-j8zwmkadm'}
[2026-08-25 17:37:22,376.376 INFO    ] Handling process order...
[2026-08-25 17:37:22,380.380 INFO    ] Processing process-order command...
[2026-08-25 17:37:22,386.386 INFO    ] 🔍 Lock file Order ID: TM03202401260825173617864, TS: 2026-08-25 17:37:16
[2026-08-25 17:37:22,401.401 INFO    ] ✅ Order lock valid for TM03202401260825173617864
[2026-08-25 17:37:22,407.407 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 17:37:22,411.411 INFO    ] processing access code 88121244 for order TM03202401260825173617864
[2026-08-25 17:37:22,416.416 INFO    ] 🔍 Lock file Order ID: TM03202401260825173617864, TS: 2026-08-25 17:37:16
[2026-08-25 17:37:22,421.421 INFO    ] ✅ Order lock valid for TM03202401260825173617864
[2026-08-25 17:37:22,426.426 INFO    ] 2026-08-25 17:37:22
[2026-08-25 17:37:22,531.531 INFO    ] 200
[2026-08-25 17:37:22,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:37:22,589.589 INFO    ] 88121244
[2026-08-25 17:37:22,595.595 INFO    ] 2026-08-25 17:37:22
[2026-08-25 17:37:22,600.600 INFO    ] session id :942618909
[2026-08-25 17:37:22,609.609 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=88121244&imei=TM03202401&session_id=942618909
[2026-08-25 17:37:23,237.237 INFO    ] 200
[2026-08-25 17:37:23,243.243 INFO    ] {"data": {"access_code": "88121244", "order_id": "TM03202401260825173617864", "bill_amount": "60.0", "invoice_bill": "60.0", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500667", "offer_id": "", "door_id": "1", "unit_price": 40, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "tray_id": "20", "mrp": "40", "name": "Farmely Classic date Bites 20gm", "sku_total": 40}, {"offer_desc": "", "qty": 1, "skuid": "4500732", "offer_id": "", "door_id": "1", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500732-1004.png", "tray_id": "11", "mrp": "20", "name": "Maxvita Tomato Potato Chips 40gm", "sku_total": 20}], "mobile": "8310515812"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 17:37:23,249.249 INFO    ] 60
[2026-08-25 17:37:23,254.254 INFO    ] TM03202401260825173617864
[2026-08-25 17:37:23,260.260 INFO    ] 8310515812
[2026-08-25 17:37:23,266.266 INFO    ] 2026-08-25 17:37:23
[2026-08-25 17:37:23,273.273 INFO    ] Door Opening for user mobile ending with  five eight one two 
[2026-08-25 17:37:23,282.282 INFO    ] Door Opening for user mobile ending with  five eight one two 
[2026-08-25 17:37:23,288.288 INFO    ] a1a7274b4f69ef1b6ff3e0f122a0e4f1
[2026-08-25 17:37:23,299.299 INFO    ] 2026-08-25 17:37:23
[2026-08-25 17:37:23,305.305 INFO    ] playing audio file
[2026-08-25 17:37:23,327.327 INFO    ] 2026-08-25 17:37:23
[2026-08-25 17:37:23,334.334 INFO    ] 2026-08-25 17:37:23
[2026-08-25 17:37:23,340.340 INFO    ] publish_status: order_id=TM03202401260825173617864
[2026-08-25 17:37:23,345.345 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173617864
[2026-08-25 17:37:23,412.412 INFO    ] [publish_status] Message added to stream with ID: 1787659643401-0
[2026-08-25 17:37:23,473.473 INFO    ] Published to order:TM03202401260825173617864: {'server_response': '{"status": true, "data": {"bill_amount": "60.0", "mobile": "8310515812", "proposed_sku_json": [{"qty": 1, "skuid": "4500667", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "unit_price": 40, "name": "Farmely Classic date Bites 20gm", "offer_id": "", "tray_id": "20", "offer_desc": "", "mrp": "40", "door_id": "1", "sku_total": 40}, {"qty": 1, "skuid": "4500732", "image_url": "https://images.tinymart.in/product/4500732-1004.png", "unit_price": 20, "name": "Maxvita Tomato Potato Chips 40gm", "offer_id": "", "tray_id": "11", "offer_desc": "", "mrp": "20", "door_id": "1", "sku_total": 20}], "access_code": "88121244", "invoice_bill": "60.0", "order_id": "TM03202401260825173617864"}, "msg": "Order Data", "rstatus": true}', 'timestamp': '2026-08-25T12:07:23.336176Z', 'order_id': 'TM03202401260825173617864', 'server_status': 'order-started'} (ID: 1787659643401-0)
[2026-08-25 17:37:24,077.077 INFO    ] {'server_response': {'status': True, 'data': {'bill_amount': '60.0', 'mobile': '8310515812', 'proposed_sku_json': [{'qty': 1, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': 40, 'name': 'Farmely Classic date Bites 20gm', 'offer_id': '', 'tray_id': '20', 'offer_desc': '', 'mrp': '40', 'door_id': '1', 'sku_total': 40}, {'qty': 1, 'skuid': '4500732', 'image_url': 'https://images.tinymart.in/product/4500732-1004.png', 'unit_price': 20, 'name': 'Maxvita Tomato Potato Chips 40gm', 'offer_id': '', 'tray_id': '11', 'offer_desc': '', 'mrp': '20', 'door_id': '1', 'sku_total': 20}], 'access_code': '88121244', 'invoice_bill': '60.0', 'order_id': 'TM03202401260825173617864'}, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM03202401260825173617864', 'server_status': 'order-started'}
[2026-08-25 17:37:24,141.141 INFO    ] 200
[2026-08-25 17:37:24,181.181 INFO    ] {"data":{"server_response":{"status":true,"data":{"bill_amount":"60.0","mobile":"8310515812","proposed_sku_json":[{"qty":1,"skuid":"4500667","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","unit_price":40,"name":"Farmely Classic date Bites 20gm","offer_id":"","tray_id":"20","offer_desc":"","mrp":"40","door_id":"1","sku_total":40},{"qty":1,"skuid":"4500732","image_url":"https:\/\/images.tinymart.in\/product\/4500732-1004.png","unit_price":20,"name":"Maxvita Tomato Potato Chips 40gm","offer_id":"","tray_id":"11","offer_desc":"","mrp":"20","door_id":"1","sku_total":20}],"access_code":"88121244","invoice_bill":"60.0","order_id":"TM03202401260825173617864"},"msg":"Order Data","rstatus":true},"order_id":"TM03202401260825173617864","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:37:24,220.220 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': True, 'data': {'bill_amount': '60.0', 'mobile': '8310515812', 'proposed_sku_json': [{'qty': 1, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': 40, 'offer_id': '', 'name': 'Farmely Classic date Bites 20gm', 'tray_id': '20', 'mrp': '40', 'offer_desc': '', 'sku_total': 40, 'door_id': '1'}, {'qty': 1, 'skuid': '4500732', 'image_url': 'https://images.tinymart.in/product/4500732-1004.png', 'unit_price': 20, 'offer_id': '', 'name': 'Maxvita Tomato Potato Chips 40gm', 'tray_id': '11', 'mrp': '20', 'offer_desc': '', 'sku_total': 20, 'door_id': '1'}], 'access_code': '88121244', 'invoice_bill': '60.0', 'order_id': 'TM03202401260825173617864'}, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM03202401260825173617864', 'server_status': 'order-started'}}
[2026-08-25 17:37:24,237.237 INFO    ] 2026-08-25 17:37:24
[2026-08-25 17:37:24,298.298 INFO    ] 200
[2026-08-25 17:37:24,301.301 INFO    ] True
[2026-08-25 17:37:24,481.481 INFO    ] 200
[2026-08-25 17:37:24,484.484 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 17:37:24,487.487 INFO    ] {'status': 'False', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please Wait', 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}}
[2026-08-25 17:37:24,490.490 INFO    ] *** process_order ***
[2026-08-25 17:37:25,678.678 INFO    ] 200
[2026-08-25 17:37:25,681.681 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 17:37:25,683.683 INFO    ] {'status': 'True', 'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}
[2026-08-25 17:37:25,685.685 INFO    ] *** process_order ***
[2026-08-25 17:37:25,688.688 INFO    ] publish_status: order_id=TM03202401260825173617864
[2026-08-25 17:37:25,690.690 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173617864
[2026-08-25 17:37:25,776.776 INFO    ] [publish_status] Message added to stream with ID: 1787659645771-0
[2026-08-25 17:37:25,779.779 INFO    ] Published to order:TM03202401260825173617864: {'server_response': '{"status": "True", "delay": 0, "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open...", "rstatus": true, "SectionMain": {"Header": "Processing Order"}}', 'order_id': 'TM03202401260825173617864', 'server_status': 'doorOpened'} (ID: 1787659645771-0)
[2026-08-25 17:37:26,838.838 INFO    ] 2026-08-25 17:37:26
[2026-08-25 17:37:26,841.841 INFO    ] publish_status: order_id=TM03202401260825173617864
[2026-08-25 17:37:26,844.844 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173617864
[2026-08-25 17:37:26,946.946 INFO    ] [publish_status] Message added to stream with ID: 1787659646932-0
[2026-08-25 17:37:26,949.949 INFO    ] Published to order:TM03202401260825173617864: {'server_response': '{"status": "True", "delay": 0, "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Header": " Your order is under process  ", "Note": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "rstatus": true, "SectionMain": {"Header": "Processing Order"}}', 'timestamp': '2026-08-25T12:07:26.839966Z', 'order_id': 'TM03202401260825173617864', 'server_status': 'processOrder'} (ID: 1787659646932-0)
[2026-08-25 17:37:27,108.108 INFO    ] {'server_response': {'status': 'True', 'delay': 0, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'processOrder'}
[2026-08-25 17:37:27,110.110 INFO    ] 200
[2026-08-25 17:37:27,113.113 INFO    ] {"data":{"server_response":{"status":"true","delay":0,"SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Header":" Your order is under process  ","Note":""},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","rstatus":true,"SectionMain":{"Header":"Processing Order"}},"order_id":"TM03202401260825173617864","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:37:27,116.116 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'true', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'processOrder'}}
[2026-08-25 17:37:27,119.119 INFO    ] 2026-08-25 17:37:27
[2026-08-25 17:37:27,122.122 INFO    ] None
[2026-08-25 17:37:27,124.124 INFO    ] Opening Door now
[2026-08-25 17:37:27,127.127 INFO    ] Opening Door now
[2026-08-25 17:37:27,130.130 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 17:37:27,132.132 INFO    ] 2026-08-25 17:37:27
[2026-08-25 17:37:27,135.135 INFO    ] playing audio file
[2026-08-25 17:37:27,151.151 INFO    ] 2026-08-25 17:37:27
[2026-08-25 17:37:27,154.154 INFO    ] 2026-08-25 17:37:27
[2026-08-25 17:37:30,240.240 INFO    ] 200
[2026-08-25 17:37:30,242.242 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 17:37:30,246.246 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Door 1 is open now', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:33,327.327 INFO    ] 200
[2026-08-25 17:37:33,330.330 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:37:33,333.333 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:36,457.457 INFO    ] 200
[2026-08-25 17:37:36,460.460 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:37:36,463.463 INFO    ] Please close door 1
[2026-08-25 17:37:36,466.466 INFO    ] Please close door 1
[2026-08-25 17:37:36,468.468 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 17:37:36,471.471 INFO    ] 2026-08-25 17:37:36
[2026-08-25 17:37:36,474.474 INFO    ] playing audio file
[2026-08-25 17:37:36,495.495 INFO    ] 2026-08-25 17:37:36
[2026-08-25 17:37:36,501.501 INFO    ] publish_status: order_id=TM03202401260825173617864
[2026-08-25 17:37:36,503.503 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173617864
[2026-08-25 17:37:36,575.575 INFO    ] [publish_status] Message added to stream with ID: 1787659656570-0
[2026-08-25 17:37:36,578.578 INFO    ] Published to order:TM03202401260825173617864: {'server_response': '{"status": "False", "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"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}], "Header": "Pick the below items from the door"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "voiceNote": "Please close door 1", "rstatus": false, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-08-25T12:07:36.498840Z', 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'} (ID: 1787659656570-0)
[2026-08-25 17:37:37,112.112 INFO    ] {'server_response': {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'}
[2026-08-25 17:37:37,115.115 INFO    ] 200
[2026-08-25 17:37:37,118.118 INFO    ] {"data":{"server_response":{"status":"false","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"},"SectionSKU":{"skus":[{"qty":1,"name":"Farmely Classic date Bites 20gm"},{"qty":1,"name":"Maxvita Tomato Potato Chips 40gm"}],"Header":"Pick the below items from the door"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"voiceNote":"Please close door 1","rstatus":false,"SectionMain":{"Header":"Door Open"}},"order_id":"TM03202401260825173617864","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:37:37,121.121 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'false', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'}}
[2026-08-25 17:37:37,124.124 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:40,187.187 INFO    ] 200
[2026-08-25 17:37:40,190.190 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:37:40,193.193 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:43,282.282 INFO    ] 200
[2026-08-25 17:37:43,285.285 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:37:43,288.288 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:46,353.353 INFO    ] 200
[2026-08-25 17:37:46,356.356 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:37:46,359.359 INFO    ] Please close door 1
[2026-08-25 17:37:46,362.362 INFO    ] Please close door 1
[2026-08-25 17:37:46,365.365 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 17:37:46,367.367 INFO    ] 2026-08-25 17:37:46
[2026-08-25 17:37:46,370.370 INFO    ] playing audio file
[2026-08-25 17:37:46,387.387 INFO    ] 2026-08-25 17:37:46
[2026-08-25 17:37:46,390.390 INFO    ] publish_status: order_id=TM03202401260825173617864
[2026-08-25 17:37:46,393.393 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173617864
[2026-08-25 17:37:46,468.468 INFO    ] [publish_status] Message added to stream with ID: 1787659666462-0
[2026-08-25 17:37:46,471.471 INFO    ] Published to order:TM03202401260825173617864: {'server_response': '{"status": "False", "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"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}], "Header": "Pick the below items from the door"}, "error": {"umessage": "In Progress", "data": {}, "tmessage": "In Progress", "code": 20001}, "voiceNote": "Please close door 1", "rstatus": false, "SectionMain": {"Header": "Door Open"}}', 'timestamp': '2026-08-25T12:07:46.388911Z', 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'} (ID: 1787659666462-0)
[2026-08-25 17:37:47,017.017 INFO    ] {'server_response': {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'}
[2026-08-25 17:37:47,020.020 INFO    ] 200
[2026-08-25 17:37:47,022.022 INFO    ] {"data":{"server_response":{"status":"false","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"},"SectionSKU":{"skus":[{"qty":1,"name":"Farmely Classic date Bites 20gm"},{"qty":1,"name":"Maxvita Tomato Potato Chips 40gm"}],"Header":"Pick the below items from the door"},"error":{"umessage":"In Progress","data":[],"tmessage":"In Progress","code":20001},"voiceNote":"Please close door 1","rstatus":false,"SectionMain":{"Header":"Door Open"}},"order_id":"TM03202401260825173617864","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:37:47,026.026 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'false', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': [], 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'}}
[2026-08-25 17:37:47,029.029 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:50,109.109 INFO    ] 200
[2026-08-25 17:37:50,111.111 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:37:50,114.114 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:53,165.165 INFO    ] 200
[2026-08-25 17:37:53,167.167 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Farmely Classic date Bites 20gm"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:37:53,170.170 INFO    ] {'status': 'False', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Farmely Classic date Bites 20gm'}, {'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}], 'Header': 'Pick the below items from the door'}, 'error': {'umessage': 'In Progress', 'data': {}, 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}}
[2026-08-25 17:37:56,238.238 INFO    ] 200
[2026-08-25 17:37:56,241.241 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 17:37:56,244.244 INFO    ] publish_status: order_id=TM03202401260825173617864
[2026-08-25 17:37:56,247.247 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173617864
[2026-08-25 17:37:56,327.327 INFO    ] [publish_status] Message added to stream with ID: 1787659676322-0
[2026-08-25 17:37:56,330.330 INFO    ] Published to order:TM03202401260825173617864: {'server_response': '{"status": "True", "delay": 100, "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"}, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "voiceNote": "Transaction Completed", "rstatus": true, "SectionMain": {"Header": "Door Closed"}}', 'timestamp': '2026-08-25T12:07:56.242613Z', 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'} (ID: 1787659676322-0)
[2026-08-25 17:37:56,860.860 INFO    ] {'server_response': {'status': 'True', 'delay': 100, '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'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'}
[2026-08-25 17:37:56,863.863 INFO    ] 200
[2026-08-25 17:37:56,865.865 INFO    ] {"data":{"server_response":{"status":"true","delay":100,"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"},"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"voiceNote":"Transaction Completed","rstatus":true,"SectionMain":{"Header":"Door Closed"}},"order_id":"TM03202401260825173617864","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:37:56,869.869 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'true', 'rstatus': True, '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'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}}, 'order_id': 'TM03202401260825173617864', 'server_status': 'OrderStatus'}}
[2026-08-25 17:37:56,871.871 INFO    ] {'status': 'True', 'delay': 100, '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'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}}
[2026-08-25 17:37:56,874.874 INFO    ] 2026-08-25 17:37:56
[2026-08-25 17:37:56,877.877 INFO    ] Order Completed 
[2026-08-25 17:37:56,879.879 INFO    ] Order Completed 
[2026-08-25 17:37:56,882.882 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 17:37:56,885.885 INFO    ] 2026-08-25 17:37:56
[2026-08-25 17:37:56,887.887 INFO    ] playing audio file
[2026-08-25 17:37:56,905.905 INFO    ] 2026-08-25 17:37:56
[2026-08-25 17:37:56,908.908 INFO    ] {'status': 'True', 'delay': 100, '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'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}}
[2026-08-25 17:37:56,911.911 INFO    ] 2026-08-25 17:37:56
[2026-08-25 17:37:57,313.313 INFO    ] 200
[2026-08-25 17:37:57,316.316 INFO    ] {"anomaly": 3, "rstatus": true, "orderId": "TM03202401260825173617864", "skus": [{"image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "skuid": "4500713", "door_id": "", "unit_price": "20", "qty": 1, "tray_id": "12", "mrp": "20", "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms per peice", "sku_total": 20.0}, {"image_url": "https://images.tinymart.in/product/4500665-172.jpg", "skuid": "4500665", "door_id": "", "unit_price": "30", "qty": 1, "tray_id": "13", "mrp": "30", "name": "Farmely Peri Peri Makhana 14gm per peice", "sku_total": 30.0}, {"image_url": "https://images.tinymart.in/product/4500722-2079.jpeg", "skuid": "4500722", "door_id": "", "unit_price": "10", "qty": 1, "tray_id": "15", "mrp": "10", "name": "MaxVita Rice Kodubale 30gm per peice", "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "door_id": "", "unit_price": "40", "qty": 1, "tray_id": "20", "mrp": "40", "name": "Farmely Classic date Bites 20gm per peice", "sku_total": 40.0}], "res": "True", "total_amount": 100.0, "logic": "WBL"}
[2026-08-25 17:37:57,320.320 INFO    ] {'total_amount': 100.0, 'anomaly': 3, 'res': 'True', 'logic': 'WBL', 'skus': [{'qty': 1, 'skuid': '4500713', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'unit_price': '20', 'tray_id': '12', 'mrp': '20', 'door_id': '', 'sku_total': 20.0, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}, {'qty': 1, 'skuid': '4500665', 'image_url': 'https://images.tinymart.in/product/4500665-172.jpg', 'unit_price': '30', 'tray_id': '13', 'mrp': '30', 'door_id': '', 'sku_total': 30.0, 'name': 'Farmely Peri Peri Makhana 14gm per peice'}, {'qty': 1, 'skuid': '4500722', 'image_url': 'https://images.tinymart.in/product/4500722-2079.jpeg', 'unit_price': '10', 'tray_id': '15', 'mrp': '10', 'door_id': '', 'sku_total': 10.0, 'name': 'MaxVita Rice Kodubale 30gm per peice'}, {'qty': 1, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40', 'tray_id': '20', 'mrp': '40', 'door_id': '', 'sku_total': 40.0, 'name': 'Farmely Classic date Bites 20gm per peice'}], 'orderId': 'TM03202401260825173617864', 'rstatus': True}
[2026-08-25 17:37:57,323.323 INFO    ] {'total_amount': 100.0, 'anomaly': 3, 'res': 'True', 'logic': 'WBL', 'skus': [{'qty': 1, 'skuid': '4500713', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'unit_price': '20', 'tray_id': '12', 'mrp': '20', 'door_id': '', 'sku_total': 20.0, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}, {'qty': 1, 'skuid': '4500665', 'image_url': 'https://images.tinymart.in/product/4500665-172.jpg', 'unit_price': '30', 'tray_id': '13', 'mrp': '30', 'door_id': '', 'sku_total': 30.0, 'name': 'Farmely Peri Peri Makhana 14gm per peice'}, {'qty': 1, 'skuid': '4500722', 'image_url': 'https://images.tinymart.in/product/4500722-2079.jpeg', 'unit_price': '10', 'tray_id': '15', 'mrp': '10', 'door_id': '', 'sku_total': 10.0, 'name': 'MaxVita Rice Kodubale 30gm per peice'}, {'qty': 1, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40', 'tray_id': '20', 'mrp': '40', 'door_id': '', 'sku_total': 40.0, 'name': 'Farmely Classic date Bites 20gm per peice'}], 'orderId': 'TM03202401260825173617864', 'rstatus': True}
[2026-08-25 17:37:57,326.326 INFO    ] 2026-08-25 17:37:57
[2026-08-25 17:37:57,329.329 INFO    ] 2026-08-25 17:37:57
[2026-08-25 17:37:57,332.332 INFO    ] 60
[2026-08-25 17:37:57,335.335 INFO    ] 2026-08-25 17:37:57
[2026-08-25 17:37:57,337.337 INFO    ] 2026-08-25 17:37:57
[2026-08-25 17:37:57,340.340 INFO    ] Items Miss placed You had Picked Excess of 40 Your Bill Amount is 100
[2026-08-25 17:37:57,342.342 INFO    ] Items Miss placed You had Picked Excess of 40 Your Bill Amount is 100
[2026-08-25 17:37:57,345.345 INFO    ] 4b9e69dc91c2c0cc5d4d655a90ddc8c4
[2026-08-25 17:37:57,348.348 INFO    ] 2026-08-25 17:37:57
[2026-08-25 17:37:57,350.350 INFO    ] creating audio file
[2026-08-25 17:37:57,491.491 INFO    ] Calling gTTS API with 60s timeout...
[2026-08-25 17:37:58,651.651 INFO    ] gTTS API call completed successfully
[2026-08-25 17:38:02,012.012 INFO    ] 2026-08-25 17:38:02
[2026-08-25 17:38:02,016.016 INFO    ] playing audio file
[2026-08-25 17:38:02,041.041 INFO    ] 2026-08-25 17:38:02
[2026-08-25 17:38:02,052.052 INFO    ] 2026-08-25 17:38:02
[2026-08-25 17:38:02,064.064 INFO    ] publish_status: order_id=TM03202401260825173617864
[2026-08-25 17:38:02,069.069 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173617864
[2026-08-25 17:38:02,137.137 INFO    ] [publish_status] Message added to stream with ID: 1787659682131-0
[2026-08-25 17:38:02,144.144 INFO    ] Published to order:TM03202401260825173617864: {'server_response': '{"total_amount": 100.0, "anomaly": 3, "res": "True", "logic": "WBL", "skus": [{"qty": 1, "skuid": "4500713", "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "unit_price": "20", "tray_id": "12", "mrp": "20", "door_id": "", "sku_total": 20.0, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms per peice"}, {"qty": 1, "skuid": "4500665", "image_url": "https://images.tinymart.in/product/4500665-172.jpg", "unit_price": "30", "tray_id": "13", "mrp": "30", "door_id": "", "sku_total": 30.0, "name": "Farmely Peri Peri Makhana 14gm per peice"}, {"qty": 1, "skuid": "4500722", "image_url": "https://images.tinymart.in/product/4500722-2079.jpeg", "unit_price": "10", "tray_id": "15", "mrp": "10", "door_id": "", "sku_total": 10.0, "name": "MaxVita Rice Kodubale 30gm per peice"}, {"qty": 1, "skuid": "4500667", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "unit_price": "40", "tray_id": "20", "mrp": "40", "door_id": "", "sku_total": 40.0, "name": "Farmely Classic date Bites 20gm per peice"}], "orderId": "TM03202401260825173617864", "rstatus": true}', 'timestamp': '2026-08-25T12:08:02.061363Z', 'order_id': 'TM03202401260825173617864', 'server_status': 'invoiceOrder'} (ID: 1787659682131-0)
[2026-08-25 17:38:03,380.380 INFO    ] {'server_response': {'total_amount': 100.0, 'anomaly': 3, 'res': 'True', 'logic': 'WBL', 'skus': [{'qty': 1, 'skuid': '4500713', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'unit_price': '20', 'tray_id': '12', 'mrp': '20', 'door_id': '', 'sku_total': 20.0, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}, {'qty': 1, 'skuid': '4500665', 'image_url': 'https://images.tinymart.in/product/4500665-172.jpg', 'unit_price': '30', 'tray_id': '13', 'mrp': '30', 'door_id': '', 'sku_total': 30.0, 'name': 'Farmely Peri Peri Makhana 14gm per peice'}, {'qty': 1, 'skuid': '4500722', 'image_url': 'https://images.tinymart.in/product/4500722-2079.jpeg', 'unit_price': '10', 'tray_id': '15', 'mrp': '10', 'door_id': '', 'sku_total': 10.0, 'name': 'MaxVita Rice Kodubale 30gm per peice'}, {'qty': 1, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40', 'tray_id': '20', 'mrp': '40', 'door_id': '', 'sku_total': 40.0, 'name': 'Farmely Classic date Bites 20gm per peice'}], 'orderId': 'TM03202401260825173617864', 'rstatus': True}, 'order_id': 'TM03202401260825173617864', 'server_status': 'invoiceOrder'}
[2026-08-25 17:38:03,383.383 INFO    ] 200
[2026-08-25 17:38:03,386.386 INFO    ] {"data":{"server_response":{"total_amount":100,"anomaly":3,"res":"true","logic":"WBL","skus":[{"qty":1,"skuid":"4500713","image_url":"https:\/\/images.tinymart.in\/product\/4500713-9506.jpg","unit_price":"20","tray_id":"12","mrp":"20","door_id":"","sku_total":20,"name":"MaxVita Indian Style Cream and onion Potato Chips 40gms per peice"},{"qty":1,"skuid":"4500665","image_url":"https:\/\/images.tinymart.in\/product\/4500665-172.jpg","unit_price":"30","tray_id":"13","mrp":"30","door_id":"","sku_total":30,"name":"Farmely Peri Peri Makhana 14gm per peice"},{"qty":1,"skuid":"4500722","image_url":"https:\/\/images.tinymart.in\/product\/4500722-2079.jpeg","unit_price":"10","tray_id":"15","mrp":"10","door_id":"","sku_total":10,"name":"MaxVita Rice Kodubale 30gm per peice"},{"qty":1,"skuid":"4500667","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","unit_price":"40","tray_id":"20","mrp":"40","door_id":"","sku_total":40,"name":"Farmely Classic date Bites 20gm per peice"}],"orderId":"TM03202401260825173617864","rstatus":true},"order_id":"TM03202401260825173617864","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:38:03,396.396 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'total_amount': 100, 'anomaly': 3, 'res': 'true', 'orderId': 'TM03202401260825173617864', 'skus': [{'qty': 1, 'skuid': '4500713', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'unit_price': '20', 'tray_id': '12', 'mrp': '20', 'door_id': '', 'sku_total': 20, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}, {'qty': 1, 'skuid': '4500665', 'image_url': 'https://images.tinymart.in/product/4500665-172.jpg', 'unit_price': '30', 'tray_id': '13', 'mrp': '30', 'door_id': '', 'sku_total': 30, 'name': 'Farmely Peri Peri Makhana 14gm per peice'}, {'qty': 1, 'skuid': '4500722', 'image_url': 'https://images.tinymart.in/product/4500722-2079.jpeg', 'unit_price': '10', 'tray_id': '15', 'mrp': '10', 'door_id': '', 'sku_total': 10, 'name': 'MaxVita Rice Kodubale 30gm per peice'}, {'qty': 1, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40', 'tray_id': '20', 'mrp': '40', 'door_id': '', 'sku_total': 40, 'name': 'Farmely Classic date Bites 20gm per peice'}], 'logic': 'WBL', 'rstatus': True}, 'order_id': 'TM03202401260825173617864', 'server_status': 'invoiceOrder'}}
[2026-08-25 17:38:03,402.402 INFO    ] {'response': {'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'total_amount': 100, 'anomaly': 3, 'res': 'true', 'orderId': 'TM03202401260825173617864', 'skus': [{'qty': 1, 'skuid': '4500713', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'unit_price': '20', 'tray_id': '12', 'mrp': '20', 'door_id': '', 'sku_total': 20, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}, {'qty': 1, 'skuid': '4500665', 'image_url': 'https://images.tinymart.in/product/4500665-172.jpg', 'unit_price': '30', 'tray_id': '13', 'mrp': '30', 'door_id': '', 'sku_total': 30, 'name': 'Farmely Peri Peri Makhana 14gm per peice'}, {'qty': 1, 'skuid': '4500722', 'image_url': 'https://images.tinymart.in/product/4500722-2079.jpeg', 'unit_price': '10', 'tray_id': '15', 'mrp': '10', 'door_id': '', 'sku_total': 10, 'name': 'MaxVita Rice Kodubale 30gm per peice'}, {'qty': 1, 'skuid': '4500667', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'unit_price': '40', 'tray_id': '20', 'mrp': '40', 'door_id': '', 'sku_total': 40, 'name': 'Farmely Classic date Bites 20gm per peice'}], 'logic': 'WBL', 'rstatus': True}, 'order_id': 'TM03202401260825173617864', 'server_status': 'invoiceOrder'}}
[2026-08-25 17:38:03,407.407 INFO    ] 2026-08-25 17:38:03
[2026-08-25 17:38:04,099.099 INFO    ] 200
[2026-08-25 17:38:04,102.102 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "status": true}
[2026-08-25 17:38:04,105.105 INFO    ] 2026-08-25 17:38:04
[2026-08-25 17:38:04,210.210 INFO    ] 200
[2026-08-25 17:38:04,213.213 INFO    ] True
[2026-08-25 17:38:04,215.215 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825173617864
[2026-08-25 17:38:04,219.219 INFO    ] start order file deleted
[2026-08-25 17:38:04,221.221 INFO    ] Checking for system updates...
[2026-08-25 17:38:04,255.255 INFO    ] 200
[2026-08-25 17:38:04,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:04,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:38:04,313.313 INFO    ] No update needed
[2026-08-25 17:38:04,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 17:38:04,349.349 INFO    ] 200
[2026-08-25 17:38:04,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:04,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:38:04,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:38:04,451.451 INFO    ] No camera update needed
[2026-08-25 17:38:04,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:38:04,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:38:04,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:38:04,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:38:06,506.506 INFO    ] ================================================
[2026-08-25 17:38:06,521.521 INFO    ] Launching Daemon at Tue Aug 25 17:38:06 IST 2026
[2026-08-25 17:38:06,531.531 INFO    ] ================================================
[2026-08-25 17:38:07,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:38:07
[2026-08-25 17:38:07,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:38:07,990.990 INFO    ] Initializing speech engine...
[2026-08-25 17:38:07,996.996 INFO    ] 2026-08-25 17:38:07
[2026-08-25 17:38:08,243.243 INFO    ] 2026-08-25 17:38:08
[2026-08-25 17:38:08,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:38:08,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:38:08,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:38:08,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:38:08,741.741 INFO    ] time= 25/08/2026 17:38:08
[2026-08-25 17:38:08,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:38:08,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:38:08,952.952 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 17:38:09,013.013 INFO    ] Checking historical command: ID=1787659644075-0
[2026-08-25 17:38:09,057.057 INFO    ] process_and_cleanup_command: msg_id=1787659644075-0
[2026-08-25 17:38:09,080.080 INFO    ] is_command_expired: timestamp=2026-08-25T12:07:22.931Z, expiry=30s
[2026-08-25 17:38:09,230.230 INFO    ] Command 1787659644075-0 is expired (older than 30s), removing...
[2026-08-25 17:38:09,385.385 INFO    ] Deleted expired command: 1787659644075-0
[2026-08-25 17:38:09,412.412 INFO    ] Processed historical messages, no valid command available...
[2026-08-25 17:38:11,373.373 INFO    ] Received new command: ID=1787659691120-0
[2026-08-25 17:38:11,376.376 INFO    ] process_and_cleanup_command: msg_id=1787659691120-0
[2026-08-25 17:38:11,379.379 INFO    ] is_command_expired: timestamp=2026-08-25T12:08:10.034Z, expiry=30s
[2026-08-25 17:38:11,446.446 INFO    ] Command removed from stream: 1787659691120-0. returning for processing...
[2026-08-25 17:38:11,449.449 INFO    ] ***** get_valid_command
[2026-08-25 17:38:11,451.451 INFO    ] {'data': '{"request_id":"start-order-1787659690034-qcr8du4ey","orderId":"TM03202401260825173637145","is_vending":false}', 'timestamp': '2026-08-25T12:08:10.034Z', 'command': 'start-order', 'timeout': '10', 'source': 'webapp'}
[2026-08-25 17:38:11,454.454 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825173637145', 'request_id': 'start-order-1787659690034-qcr8du4ey', 'is_vending': False}
[2026-08-25 17:38:11,457.457 INFO    ] Handling start order...
[2026-08-25 17:38:11,459.459 INFO    ] handle_start_order_command
[2026-08-25 17:38:11,464.464 INFO    ] _send_start_order_success: request_id=start-order-1787659690034-qcr8du4ey, order_id=TM03202401260825173637145
[2026-08-25 17:38:11,467.467 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 17:38:11,527.527 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787659691522-0
[2026-08-25 17:38:11,529.529 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 17:38:11,531.531 INFO    ] Checking for system updates...
[2026-08-25 17:38:11,571.571 INFO    ] 200
[2026-08-25 17:38:11,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:11,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:38:11,635.635 INFO    ] No update needed
[2026-08-25 17:38:11,637.637 INFO    ] Checking for camera pi updates...
[2026-08-25 17:38:11,670.670 INFO    ] 200
[2026-08-25 17:38:11,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:11,716.716 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:38:11,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:38:11,764.764 INFO    ] No camera update needed
[2026-08-25 17:38:11,766.766 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:38:11,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:38:11,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:38:11,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:38:13,819.819 INFO    ] ================================================
[2026-08-25 17:38:13,835.835 INFO    ] Launching Daemon at Tue Aug 25 17:38:13 IST 2026
[2026-08-25 17:38:13,845.845 INFO    ] ================================================
[2026-08-25 17:38:14,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:38:14
[2026-08-25 17:38:15,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:38:15,281.281 INFO    ] Initializing speech engine...
[2026-08-25 17:38:15,286.286 INFO    ] 2026-08-25 17:38:15
[2026-08-25 17:38:15,563.563 INFO    ] 2026-08-25 17:38:15
[2026-08-25 17:38:15,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:38:15,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:38:15,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:38:16,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:38:16,090.090 INFO    ] time= 25/08/2026 17:38:16
[2026-08-25 17:38:16,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:38:16,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:38:16,249.249 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 17:38:16,298.298 INFO    ] Checking historical command: ID=1787659691522-0
[2026-08-25 17:38:16,353.353 INFO    ] process_and_cleanup_command: msg_id=1787659691522-0
[2026-08-25 17:38:16,378.378 INFO    ] is_command_expired: timestamp=2026-08-25T12:08:11.465784Z, expiry=30s
[2026-08-25 17:38:16,572.572 INFO    ] Command removed from stream: 1787659691522-0. returning for processing...
[2026-08-25 17:38:16,584.584 INFO    ] ***** get_valid_command
[2026-08-25 17:38:16,587.587 INFO    ] {'imei': 'TM03202401', 'message_type': 'command_response', 'timestamp': '2026-08-25T12:08:11.465784Z', 'metadata_request_id': 'start-order-1787659690034-qcr8du4ey', 'metadata_order_id': 'TM03202401260825173637145', 'status': 'success', 'message': 'start-order success'}
[2026-08-25 17:38:16,591.591 INFO    ] Checking historical command: ID=1787659694525-0
[2026-08-25 17:38:16,593.593 INFO    ] process_and_cleanup_command: msg_id=1787659694525-0
[2026-08-25 17:38:16,596.596 INFO    ] is_command_expired: timestamp=2026-08-25T12:08:13.347Z, expiry=30s
[2026-08-25 17:38:16,722.722 INFO    ] Command removed from stream: 1787659694525-0. returning for processing...
[2026-08-25 17:38:16,728.728 INFO    ] ***** get_valid_command
[2026-08-25 17:38:16,731.731 INFO    ] {'timestamp': '2026-08-25T12:08:13.347Z', 'command': 'process-order', 'data': '{"request_id":"process-order-1787659693346-7wzpz4z9b","orderId":"TM03202401260825173637145","is_vending":false,"accessCode":"49589181"}', 'timeout': '60', 'source': 'webapp'}
[2026-08-25 17:38:16,780.780 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1787659693346-7wzpz4z9b', 'accessCode': '49589181', 'orderId': 'TM03202401260825173637145', 'is_vending': False}
[2026-08-25 17:38:16,784.784 INFO    ] Handling process order...
[2026-08-25 17:38:16,787.787 INFO    ] Processing process-order command...
[2026-08-25 17:38:16,841.841 INFO    ] 🔍 Lock file Order ID: TM03202401260825173637145, TS: 2026-08-25 17:38:11
[2026-08-25 17:38:16,856.856 INFO    ] ✅ Order lock valid for TM03202401260825173637145
[2026-08-25 17:38:16,861.861 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 17:38:16,865.865 INFO    ] processing access code 49589181 for order TM03202401260825173637145
[2026-08-25 17:38:16,870.870 INFO    ] 🔍 Lock file Order ID: TM03202401260825173637145, TS: 2026-08-25 17:38:11
[2026-08-25 17:38:16,875.875 INFO    ] ✅ Order lock valid for TM03202401260825173637145
[2026-08-25 17:38:16,881.881 INFO    ] 2026-08-25 17:38:16
[2026-08-25 17:38:16,927.927 INFO    ] 200
[2026-08-25 17:38:16,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:16,935.935 INFO    ] 49589181
[2026-08-25 17:38:16,939.939 INFO    ] 2026-08-25 17:38:16
[2026-08-25 17:38:16,942.942 INFO    ] session id :800840867
[2026-08-25 17:38:16,945.945 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=49589181&imei=TM03202401&session_id=800840867
[2026-08-25 17:38:17,649.649 INFO    ] 200
[2026-08-25 17:38:17,654.654 INFO    ] {"data": {"access_code": "49589181", "order_id": "TM03202401260825173637145", "bill_amount": "60.0", "invoice_bill": "60.0", "proposed_sku_json": [{"offer_desc": "", "qty": 2, "skuid": "4500731", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500731-8867.png", "tray_id": "23", "mrp": "10", "name": "MaxVita Butter Elaichi cookies 46g", "sku_total": 20}, {"offer_desc": "", "qty": 1, "skuid": "4500732", "offer_id": "", "door_id": "1", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500732-1004.png", "tray_id": "11", "mrp": "20", "name": "Maxvita Tomato Potato Chips 40gm", "sku_total": 20}, {"offer_desc": "", "qty": 1, "skuid": "4500713", "offer_id": "", "door_id": "1", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "tray_id": "12", "mrp": "20", "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "sku_total": 20}], "mobile": "7806857430"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 17:38:17,659.659 INFO    ] 60
[2026-08-25 17:38:17,668.668 INFO    ] TM03202401260825173637145
[2026-08-25 17:38:17,675.675 INFO    ] 7806857430
[2026-08-25 17:38:17,680.680 INFO    ] 2026-08-25 17:38:17
[2026-08-25 17:38:17,687.687 INFO    ] Door Opening for user mobile ending with  seven four three zero 
[2026-08-25 17:38:17,692.692 INFO    ] Door Opening for user mobile ending with  seven four three zero 
[2026-08-25 17:38:17,698.698 INFO    ] 3dabbfa949572f06ca85f42ac673ed68
[2026-08-25 17:38:17,707.707 INFO    ] 2026-08-25 17:38:17
[2026-08-25 17:38:17,712.712 INFO    ] playing audio file
[2026-08-25 17:38:17,731.731 INFO    ] 2026-08-25 17:38:17
[2026-08-25 17:38:17,741.741 INFO    ] 2026-08-25 17:38:17
[2026-08-25 17:38:17,747.747 INFO    ] publish_status: order_id=TM03202401260825173637145
[2026-08-25 17:38:17,756.756 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173637145
[2026-08-25 17:38:17,826.826 INFO    ] [publish_status] Message added to stream with ID: 1787659697818-0
[2026-08-25 17:38:17,832.832 INFO    ] Published to order:TM03202401260825173637145: {'timestamp': '2026-08-25T12:08:17.742934Z', 'server_response': '{"status": true, "data": {"access_code": "49589181", "proposed_sku_json": [{"tray_id": "23", "name": "MaxVita Butter Elaichi cookies 46g", "qty": 2, "mrp": "10", "skuid": "4500731", "door_id": "1", "offer_id": "", "sku_total": 20, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500731-8867.png", "unit_price": 10}, {"tray_id": "11", "name": "Maxvita Tomato Potato Chips 40gm", "qty": 1, "mrp": "20", "skuid": "4500732", "door_id": "1", "offer_id": "", "sku_total": 20, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500732-1004.png", "unit_price": 20}, {"tray_id": "12", "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "qty": 1, "mrp": "20", "skuid": "4500713", "door_id": "1", "offer_id": "", "sku_total": 20, "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "unit_price": 20}], "mobile": "7806857430", "order_id": "TM03202401260825173637145", "bill_amount": "60.0", "invoice_bill": "60.0"}, "rstatus": true, "msg": "Order Data"}', 'order_id': 'TM03202401260825173637145', 'server_status': 'order-started'} (ID: 1787659697818-0)
[2026-08-25 17:38:18,450.450 INFO    ] {'server_response': {'status': True, 'data': {'access_code': '49589181', 'proposed_sku_json': [{'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2, 'mrp': '10', 'skuid': '4500731', 'door_id': '1', 'offer_id': '', 'sku_total': 20, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png', 'unit_price': 10}, {'tray_id': '11', 'name': 'Maxvita Tomato Potato Chips 40gm', 'qty': 1, 'mrp': '20', 'skuid': '4500732', 'door_id': '1', 'offer_id': '', 'sku_total': 20, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500732-1004.png', 'unit_price': 20}, {'tray_id': '12', 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'qty': 1, 'mrp': '20', 'skuid': '4500713', 'door_id': '1', 'offer_id': '', 'sku_total': 20, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'unit_price': 20}], 'mobile': '7806857430', 'order_id': 'TM03202401260825173637145', 'bill_amount': '60.0', 'invoice_bill': '60.0'}, 'rstatus': True, 'msg': 'Order Data'}, 'order_id': 'TM03202401260825173637145', 'server_status': 'order-started'}
[2026-08-25 17:38:18,459.459 INFO    ] 200
[2026-08-25 17:38:18,464.464 INFO    ] {"data":{"server_response":{"status":true,"data":{"access_code":"49589181","proposed_sku_json":[{"tray_id":"23","name":"MaxVita Butter Elaichi cookies 46g","qty":2,"mrp":"10","skuid":"4500731","door_id":"1","offer_id":"","sku_total":20,"offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/4500731-8867.png","unit_price":10},{"tray_id":"11","name":"Maxvita Tomato Potato Chips 40gm","qty":1,"mrp":"20","skuid":"4500732","door_id":"1","offer_id":"","sku_total":20,"offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/4500732-1004.png","unit_price":20},{"tray_id":"12","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","qty":1,"mrp":"20","skuid":"4500713","door_id":"1","offer_id":"","sku_total":20,"offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/4500713-9506.jpg","unit_price":20}],"mobile":"7806857430","order_id":"TM03202401260825173637145","bill_amount":"60.0","invoice_bill":"60.0"},"rstatus":true,"msg":"Order Data"},"order_id":"TM03202401260825173637145","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:38:18,471.471 INFO    ] {'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'msg': 'Order Data', 'data': {'access_code': '49589181', 'proposed_sku_json': [{'door_id': '1', 'sku_total': 20, 'offer_id': '', 'mrp': '10', 'skuid': '4500731', 'name': 'MaxVita Butter Elaichi cookies 46g', 'unit_price': 10, 'qty': 2, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png', 'tray_id': '23'}, {'door_id': '1', 'sku_total': 20, 'offer_id': '', 'mrp': '20', 'skuid': '4500732', 'name': 'Maxvita Tomato Potato Chips 40gm', 'unit_price': 20, 'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500732-1004.png', 'tray_id': '11'}, {'door_id': '1', 'sku_total': 20, 'offer_id': '', 'mrp': '20', 'skuid': '4500713', 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'unit_price': 20, 'qty': 1, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'tray_id': '12'}], 'mobile': '7806857430', 'order_id': 'TM03202401260825173637145', 'bill_amount': '60.0', 'invoice_bill': '60.0'}, 'status': True, 'rstatus': True}, 'order_id': 'TM03202401260825173637145', 'server_status': 'order-started'}}
[2026-08-25 17:38:18,481.481 INFO    ] 2026-08-25 17:38:18
[2026-08-25 17:38:18,600.600 INFO    ] 200
[2026-08-25 17:38:18,656.656 INFO    ] True
[2026-08-25 17:38:18,778.778 INFO    ] 200
[2026-08-25 17:38:18,780.780 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 17:38:18,783.783 INFO    ] {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False}
[2026-08-25 17:38:18,786.786 INFO    ] *** process_order ***
[2026-08-25 17:38:19,902.902 INFO    ] 200
[2026-08-25 17:38:19,904.904 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 17:38:19,907.907 INFO    ] {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False}
[2026-08-25 17:38:19,910.910 INFO    ] *** process_order ***
[2026-08-25 17:38:21,024.024 INFO    ] 200
[2026-08-25 17:38:21,027.027 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 17:38:21,030.030 INFO    ] {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False}
[2026-08-25 17:38:21,033.033 INFO    ] *** process_order ***
[2026-08-25 17:38:22,258.258 INFO    ] 200
[2026-08-25 17:38:22,260.260 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 17:38:22,263.263 INFO    ] {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True}
[2026-08-25 17:38:22,265.265 INFO    ] *** process_order ***
[2026-08-25 17:38:22,268.268 INFO    ] publish_status: order_id=TM03202401260825173637145
[2026-08-25 17:38:22,270.270 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173637145
[2026-08-25 17:38:22,359.359 INFO    ] [publish_status] Message added to stream with ID: 1787659702353-0
[2026-08-25 17:38:22,361.361 INFO    ] Published to order:TM03202401260825173637145: {'server_response': '{"SectionStatus": {"SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "Note": "", "UI_Header": ""}, "voiceNote": "Door is open...", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true}', 'order_id': 'TM03202401260825173637145', 'server_status': 'doorOpened'} (ID: 1787659702353-0)
[2026-08-25 17:38:23,421.421 INFO    ] 2026-08-25 17:38:23
[2026-08-25 17:38:23,424.424 INFO    ] publish_status: order_id=TM03202401260825173637145
[2026-08-25 17:38:23,426.426 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173637145
[2026-08-25 17:38:23,527.527 INFO    ] [publish_status] Message added to stream with ID: 1787659703521-0
[2026-08-25 17:38:23,530.530 INFO    ] Published to order:TM03202401260825173637145: {'timestamp': '2026-08-25T12:08:23.422554Z', 'server_response': '{"SectionStatus": {"UI_Header": "", "Header": " Your order is under process  ", "Note": "", "SubHeader": "Please wait while we process your order"}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true}', 'order_id': 'TM03202401260825173637145', 'server_status': 'processOrder'} (ID: 1787659703521-0)
[2026-08-25 17:38:24,108.108 INFO    ] {'server_response': {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'status': 'True', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True}, 'order_id': 'TM03202401260825173637145', 'server_status': 'processOrder'}
[2026-08-25 17:38:24,111.111 INFO    ] 200
[2026-08-25 17:38:24,113.113 INFO    ] {"data":{"server_response":{"SectionStatus":{"UI_Header":"","Header":" Your order is under process  ","Note":"","SubHeader":"Please wait while we process your order"},"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"delay":0,"status":"true","SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true},"order_id":"TM03202401260825173637145","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:38:24,116.116 INFO    ] {'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'SectionStatus': {'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': '', 'SubHeader': 'Please wait while we process your order'}, 'voiceNote': 'Please Wait', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'delay': 0}, 'order_id': 'TM03202401260825173637145', 'server_status': 'processOrder'}}
[2026-08-25 17:38:24,119.119 INFO    ] 2026-08-25 17:38:24
[2026-08-25 17:38:24,122.122 INFO    ] None
[2026-08-25 17:38:24,124.124 INFO    ] Opening Door now
[2026-08-25 17:38:24,127.127 INFO    ] Opening Door now
[2026-08-25 17:38:24,130.130 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 17:38:24,133.133 INFO    ] 2026-08-25 17:38:24
[2026-08-25 17:38:24,135.135 INFO    ] playing audio file
[2026-08-25 17:38:24,152.152 INFO    ] 2026-08-25 17:38:24
[2026-08-25 17:38:24,156.156 INFO    ] 2026-08-25 17:38:24
[2026-08-25 17:38:27,218.218 INFO    ] 200
[2026-08-25 17:38:27,220.220 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Butter Elaichi cookies 46g"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}, {"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 17:38:27,224.224 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'}, 'voiceNote': 'Door 1 is open now', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}, {'name': 'Maxvita Tomato Potato Chips 40gm', 'qty': 1}, {'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'qty': 1}]}, 'rstatus': False}
[2026-08-25 17:38:30,322.322 INFO    ] 200
[2026-08-25 17:38:30,325.325 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Butter Elaichi cookies 46g"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}, {"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:38:30,328.328 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'}, 'voiceNote': 'Please close door 1', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}, {'name': 'Maxvita Tomato Potato Chips 40gm', 'qty': 1}, {'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'qty': 1}]}, 'rstatus': False}
[2026-08-25 17:38:33,453.453 INFO    ] 200
[2026-08-25 17:38:33,456.456 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "MaxVita Butter Elaichi cookies 46g"}, {"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}, {"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:38:33,459.459 INFO    ] Please close door 1
[2026-08-25 17:38:33,461.461 INFO    ] Please close door 1
[2026-08-25 17:38:33,464.464 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 17:38:33,467.467 INFO    ] 2026-08-25 17:38:33
[2026-08-25 17:38:33,470.470 INFO    ] playing audio file
[2026-08-25 17:38:33,489.489 INFO    ] 2026-08-25 17:38:33
[2026-08-25 17:38:33,492.492 INFO    ] publish_status: order_id=TM03202401260825173637145
[2026-08-25 17:38:33,495.495 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173637145
[2026-08-25 17:38:33,587.587 INFO    ] [publish_status] Message added to stream with ID: 1787659713573-0
[2026-08-25 17:38:33,590.590 INFO    ] Published to order:TM03202401260825173637145: {'timestamp': '2026-08-25T12:08:33.490914Z', 'server_response': '{"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"}, "voiceNote": "Please close door 1", "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "SectionMain": {"Header": "Door Open"}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "MaxVita Butter Elaichi cookies 46g", "qty": 2}, {"name": "Maxvita Tomato Potato Chips 40gm", "qty": 1}, {"name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "qty": 1}]}, "rstatus": false}', 'order_id': 'TM03202401260825173637145', 'server_status': 'OrderStatus'} (ID: 1787659713573-0)
[2026-08-25 17:38:34,121.121 INFO    ] {'server_response': {'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'}, 'voiceNote': 'Please close door 1', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}, {'name': 'Maxvita Tomato Potato Chips 40gm', 'qty': 1}, {'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'qty': 1}]}, 'rstatus': False}, 'order_id': 'TM03202401260825173637145', 'server_status': 'OrderStatus'}
[2026-08-25 17:38:34,124.124 INFO    ] 200
[2026-08-25 17:38:34,127.127 INFO    ] {"data":{"server_response":{"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"},"voiceNote":"Please close door 1","error":{"tmessage":"In Progress","data":[],"umessage":"In Progress","code":20001},"SectionMain":{"Header":"Door Open"},"status":"false","SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"MaxVita Butter Elaichi cookies 46g","qty":2},{"name":"Maxvita Tomato Potato Chips 40gm","qty":1},{"name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","qty":1}]},"rstatus":false},"order_id":"TM03202401260825173637145","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:38:34,130.130 INFO    ] {'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'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'}, 'voiceNote': 'Please close door 1', 'error': {'tmessage': 'In Progress', 'data': [], 'code': 20001, 'umessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}, {'name': 'Maxvita Tomato Potato Chips 40gm', 'qty': 1}, {'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'qty': 1}]}, 'rstatus': False}, 'order_id': 'TM03202401260825173637145', 'server_status': 'OrderStatus'}}
[2026-08-25 17:38:34,133.133 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'}, 'voiceNote': 'Please close door 1', 'error': {'tmessage': 'In Progress', 'data': {}, 'umessage': 'In Progress', 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 2}, {'name': 'Maxvita Tomato Potato Chips 40gm', 'qty': 1}, {'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'qty': 1}]}, 'rstatus': False}
[2026-08-25 17:38:37,194.194 INFO    ] 200
[2026-08-25 17:38:37,197.197 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 17:38:37,200.200 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'}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True}
[2026-08-25 17:38:37,203.203 INFO    ] 2026-08-25 17:38:37
[2026-08-25 17:38:37,206.206 INFO    ] Order Completed 
[2026-08-25 17:38:37,209.209 INFO    ] Order Completed 
[2026-08-25 17:38:37,213.213 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 17:38:37,216.216 INFO    ] 2026-08-25 17:38:37
[2026-08-25 17:38:37,219.219 INFO    ] playing audio file
[2026-08-25 17:38:37,237.237 INFO    ] 2026-08-25 17:38:37
[2026-08-25 17:38:37,241.241 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'}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, 'status': 'True', 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'rstatus': True}
[2026-08-25 17:38:37,244.244 INFO    ] 2026-08-25 17:38:37
[2026-08-25 17:38:39,304.304 INFO    ] 200
[2026-08-25 17:38:39,307.307 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825173637145", "skus": [], "res": "True", "total_amount": 0, "logic": "WBL"}
[2026-08-25 17:38:39,310.310 INFO    ] {'anomaly': 0, 'rstatus': True, 'skus': [], 'res': 'True', 'total_amount': 0, 'orderId': 'TM03202401260825173637145', 'logic': 'WBL'}
[2026-08-25 17:38:39,312.312 INFO    ] {'anomaly': 0, 'rstatus': True, 'skus': [], 'res': 'True', 'total_amount': 0, 'orderId': 'TM03202401260825173637145', 'logic': 'WBL'}
[2026-08-25 17:38:39,315.315 INFO    ] 2026-08-25 17:38:39
[2026-08-25 17:38:39,317.317 INFO    ] 2026-08-25 17:38:39
[2026-08-25 17:38:39,319.319 INFO    ] 60
[2026-08-25 17:38:39,322.322 INFO    ] 2026-08-25 17:38:39
[2026-08-25 17:38:39,324.324 INFO    ] 2026-08-25 17:38:39
[2026-08-25 17:38:39,327.327 INFO    ]  Your Bill Amount is 0
[2026-08-25 17:38:39,329.329 INFO    ]  Your Bill Amount is 0
[2026-08-25 17:38:39,331.331 INFO    ] b7d9e26c3a450f82ce44338986aec566
[2026-08-25 17:38:39,334.334 INFO    ] 2026-08-25 17:38:39
[2026-08-25 17:38:39,336.336 INFO    ] playing audio file
[2026-08-25 17:38:39,353.353 INFO    ] 2026-08-25 17:38:39
[2026-08-25 17:38:39,356.356 INFO    ] 2026-08-25 17:38:39
[2026-08-25 17:38:39,359.359 INFO    ] publish_status: order_id=TM03202401260825173637145
[2026-08-25 17:38:39,362.362 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825173637145
[2026-08-25 17:38:39,429.429 INFO    ] [publish_status] Message added to stream with ID: 1787659719423-0
[2026-08-25 17:38:39,431.431 INFO    ] Published to order:TM03202401260825173637145: {'timestamp': '2026-08-25T12:08:39.357977Z', 'server_response': '{"anomaly": 0, "rstatus": true, "skus": [], "res": "True", "total_amount": 0, "orderId": "TM03202401260825173637145", "logic": "WBL"}', 'order_id': 'TM03202401260825173637145', 'server_status': 'invoiceOrder'} (ID: 1787659719423-0)
[2026-08-25 17:38:40,243.243 INFO    ] {'server_response': {'anomaly': 0, 'rstatus': True, 'skus': [], 'res': 'True', 'total_amount': 0, 'orderId': 'TM03202401260825173637145', 'logic': 'WBL'}, 'order_id': 'TM03202401260825173637145', 'server_status': 'invoiceOrder'}
[2026-08-25 17:38:40,246.246 INFO    ] 200
[2026-08-25 17:38:40,248.248 INFO    ] {"data":{"server_response":{"anomaly":0,"rstatus":true,"skus":[],"res":"true","total_amount":0,"orderId":"TM03202401260825173637145","logic":"WBL"},"order_id":"TM03202401260825173637145","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:38:40,251.251 INFO    ] {'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'anomaly': 0, 'rstatus': True, 'skus': [], 'res': 'true', 'total_amount': 0, 'orderId': 'TM03202401260825173637145', 'logic': 'WBL'}, 'order_id': 'TM03202401260825173637145', 'server_status': 'invoiceOrder'}}
[2026-08-25 17:38:40,254.254 INFO    ] {'response': {'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'msg': 'order updated successfully'}, 'data': {'server_response': {'anomaly': 0, 'rstatus': True, 'skus': [], 'res': 'true', 'total_amount': 0, 'orderId': 'TM03202401260825173637145', 'logic': 'WBL'}, 'order_id': 'TM03202401260825173637145', 'server_status': 'invoiceOrder'}}
[2026-08-25 17:38:40,257.257 INFO    ] 2026-08-25 17:38:40
[2026-08-25 17:38:44,261.261 INFO    ] 200
[2026-08-25 17:38:44,264.264 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145", "TM03202401260825173637145"], "status": true}
[2026-08-25 17:38:44,267.267 INFO    ] 2026-08-25 17:38:44
[2026-08-25 17:38:44,388.388 INFO    ] 200
[2026-08-25 17:38:44,392.392 INFO    ] True
[2026-08-25 17:38:44,394.394 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825173637145
[2026-08-25 17:38:44,398.398 INFO    ] start order file deleted
[2026-08-25 17:38:44,401.401 INFO    ] Checking for system updates...
[2026-08-25 17:38:44,446.446 INFO    ] 200
[2026-08-25 17:38:44,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:44,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:38:44,511.511 INFO    ] No update needed
[2026-08-25 17:38:44,514.514 INFO    ] Checking for camera pi updates...
[2026-08-25 17:38:44,551.551 INFO    ] 200
[2026-08-25 17:38:44,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:44,598.598 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:38:44,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:38:44,648.648 INFO    ] No camera update needed
[2026-08-25 17:38:44,650.650 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:38:44,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:38:44,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:38:44,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:38:46,710.710 INFO    ] ================================================
[2026-08-25 17:38:46,727.727 INFO    ] Launching Daemon at Tue Aug 25 17:38:46 IST 2026
[2026-08-25 17:38:46,742.742 INFO    ] ================================================
[2026-08-25 17:38:47,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:38:47
[2026-08-25 17:38:47,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:38:48,273.273 INFO    ] Initializing speech engine...
[2026-08-25 17:38:48,286.286 INFO    ] 2026-08-25 17:38:48
[2026-08-25 17:38:48,571.571 INFO    ] 2026-08-25 17:38:48
[2026-08-25 17:38:48,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:38:48,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:38:48,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:38:49,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:38:49,122.122 INFO    ] time= 25/08/2026 17:38:49
[2026-08-25 17:38:49,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:38:49,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:38:49,296.296 INFO    ] No existing commands found in stream
[2026-08-25 17:38:54,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:38:54,343.343 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 17:38:57,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:38:57,898.898 INFO    ] Checking for system updates...
[2026-08-25 17:38:57,934.934 INFO    ] 200
[2026-08-25 17:38:57,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:57,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:38:57,998.998 INFO    ] No update needed
[2026-08-25 17:38:58,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 17:38:58,033.033 INFO    ] 200
[2026-08-25 17:38:58,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:38:58,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:38:58,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:38:58,129.129 INFO    ] No camera update needed
[2026-08-25 17:38:58,131.131 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:38:58,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:38:58,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:38:58,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:39:00,183.183 INFO    ] ================================================
[2026-08-25 17:39:00,198.198 INFO    ] Launching Daemon at Tue Aug 25 17:39:00 IST 2026
[2026-08-25 17:39:00,209.209 INFO    ] ================================================
[2026-08-25 17:39:00,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:39:00
[2026-08-25 17:39:01,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:39:01,690.690 INFO    ] Initializing speech engine...
[2026-08-25 17:39:01,704.704 INFO    ] 2026-08-25 17:39:01
[2026-08-25 17:39:01,974.974 INFO    ] 2026-08-25 17:39:01
[2026-08-25 17:39:02,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:39:02,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:39:02,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:39:02,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:39:02,545.545 INFO    ] time= 25/08/2026 17:39:02
[2026-08-25 17:39:02,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:39:02,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:39:02,760.760 INFO    ] No existing commands found in stream
[2026-08-25 17:39:07,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:39:07,780.780 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 17:39:08,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:39:09,000.000 INFO    ] Checking for system updates...
[2026-08-25 17:39:09,038.038 INFO    ] 200
[2026-08-25 17:39:09,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:09,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:39:09,102.102 INFO    ] No update needed
[2026-08-25 17:39:09,104.104 INFO    ] Checking for camera pi updates...
[2026-08-25 17:39:09,138.138 INFO    ] 200
[2026-08-25 17:39:09,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:09,184.184 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:39:09,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:39:09,241.241 INFO    ] No camera update needed
[2026-08-25 17:39:09,244.244 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:39:09,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:39:09,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:39:09,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:39:11,299.299 INFO    ] ================================================
[2026-08-25 17:39:11,314.314 INFO    ] Launching Daemon at Tue Aug 25 17:39:11 IST 2026
[2026-08-25 17:39:11,325.325 INFO    ] ================================================
[2026-08-25 17:39:11,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:39:11
[2026-08-25 17:39:12,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:39:12,942.942 INFO    ] Initializing speech engine...
[2026-08-25 17:39:12,950.950 INFO    ] 2026-08-25 17:39:12
[2026-08-25 17:39:13,238.238 INFO    ] 2026-08-25 17:39:13
[2026-08-25 17:39:13,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:39:13,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:39:13,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:39:13,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:39:13,778.778 INFO    ] time= 25/08/2026 17:39:13
[2026-08-25 17:39:13,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:39:13,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:39:13,961.961 INFO    ] No existing commands found in stream
[2026-08-25 17:39:18,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:39:18,990.990 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 17:39:22,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:39:22,792.792 INFO    ] Checking for system updates...
[2026-08-25 17:39:22,833.833 INFO    ] 200
[2026-08-25 17:39:22,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:22,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:39:22,899.899 INFO    ] No update needed
[2026-08-25 17:39:22,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 17:39:22,937.937 INFO    ] 200
[2026-08-25 17:39:22,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:22,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:39:23,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:39:23,365.365 INFO    ] No camera update needed
[2026-08-25 17:39:23,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:39:23,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:39:23,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:39:23,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:39:25,423.423 INFO    ] ================================================
[2026-08-25 17:39:25,438.438 INFO    ] Launching Daemon at Tue Aug 25 17:39:25 IST 2026
[2026-08-25 17:39:25,449.449 INFO    ] ================================================
[2026-08-25 17:39:26,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:39:26
[2026-08-25 17:39:26,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:39:26,899.899 INFO    ] Initializing speech engine...
[2026-08-25 17:39:26,908.908 INFO    ] 2026-08-25 17:39:26
[2026-08-25 17:39:27,154.154 INFO    ] 2026-08-25 17:39:27
[2026-08-25 17:39:27,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:39:27,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:39:27,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:39:27,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:39:27,592.592 INFO    ] time= 25/08/2026 17:39:27
[2026-08-25 17:39:27,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:39:27,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:39:27,856.856 INFO    ] No existing commands found in stream
[2026-08-25 17:39:32,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:39:32,870.870 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 17:39:36,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:39:36,697.697 INFO    ] Checking for system updates...
[2026-08-25 17:39:36,736.736 INFO    ] 200
[2026-08-25 17:39:36,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:36,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:39:36,792.792 INFO    ] No update needed
[2026-08-25 17:39:36,795.795 INFO    ] Checking for camera pi updates...
[2026-08-25 17:39:36,829.829 INFO    ] 200
[2026-08-25 17:39:36,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:36,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:39:36,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:39:36,931.931 INFO    ] No camera update needed
[2026-08-25 17:39:36,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:39:36,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:39:36,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:39:36,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:39:38,986.986 INFO    ] ================================================
[2026-08-25 17:39:39,002.002 INFO    ] Launching Daemon at Tue Aug 25 17:39:38 IST 2026
[2026-08-25 17:39:39,013.013 INFO    ] ================================================
[2026-08-25 17:39:39,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:39:39
[2026-08-25 17:39:40,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:39:40,639.639 INFO    ] Initializing speech engine...
[2026-08-25 17:39:40,651.651 INFO    ] 2026-08-25 17:39:40
[2026-08-25 17:39:40,926.926 INFO    ] 2026-08-25 17:39:40
[2026-08-25 17:39:40,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:39:41,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:39:41,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:39:41,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:39:41,490.490 INFO    ] time= 25/08/2026 17:39:41
[2026-08-25 17:39:41,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:39:41,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:39:41,663.663 INFO    ] No existing commands found in stream
[2026-08-25 17:39:46,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:39:46,691.691 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 17:39:47,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:39:47,730.730 INFO    ] Checking for system updates...
[2026-08-25 17:39:47,771.771 INFO    ] 200
[2026-08-25 17:39:47,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:47,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:39:47,831.831 INFO    ] No update needed
[2026-08-25 17:39:47,834.834 INFO    ] Checking for camera pi updates...
[2026-08-25 17:39:47,872.872 INFO    ] 200
[2026-08-25 17:39:47,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:39:47,927.927 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:39:47,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:39:47,981.981 INFO    ] No camera update needed
[2026-08-25 17:39:47,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:39:47,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:39:47,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:39:47,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:39:50,035.035 INFO    ] ================================================
[2026-08-25 17:39:50,051.051 INFO    ] Launching Daemon at Tue Aug 25 17:39:50 IST 2026
[2026-08-25 17:39:50,062.062 INFO    ] ================================================
[2026-08-25 17:39:50,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:39:50
[2026-08-25 17:39:51,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:39:51,585.585 INFO    ] Initializing speech engine...
[2026-08-25 17:39:51,594.594 INFO    ] 2026-08-25 17:39:51
[2026-08-25 17:39:51,901.901 INFO    ] 2026-08-25 17:39:51
[2026-08-25 17:39:51,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:39:52,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:39:52,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:39:52,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:39:52,328.328 INFO    ] time= 25/08/2026 17:39:52
[2026-08-25 17:39:52,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:39:52,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:39:52,472.472 INFO    ] No existing commands found in stream
[2026-08-25 17:39:57,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:39:57,500.500 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 17:40:00,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:40:00,137.137 INFO    ] Checking for system updates...
[2026-08-25 17:40:00,172.172 INFO    ] 200
[2026-08-25 17:40:00,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:00,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:40:00,231.231 INFO    ] No update needed
[2026-08-25 17:40:00,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 17:40:00,267.267 INFO    ] 200
[2026-08-25 17:40:00,269.269 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:00,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:40:00,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:40:00,461.461 INFO    ] No camera update needed
[2026-08-25 17:40:00,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:40:00,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:40:00,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:40:00,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:40:02,529.529 INFO    ] ================================================
[2026-08-25 17:40:02,596.596 INFO    ] Launching Daemon at Tue Aug 25 17:40:02 IST 2026
[2026-08-25 17:40:02,618.618 INFO    ] ================================================
[2026-08-25 17:40:03,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:40:03
[2026-08-25 17:40:04,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:40:04,461.461 INFO    ] Initializing speech engine...
[2026-08-25 17:40:04,469.469 INFO    ] 2026-08-25 17:40:04
[2026-08-25 17:40:04,720.720 INFO    ] 2026-08-25 17:40:04
[2026-08-25 17:40:04,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:40:04,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:40:05,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:40:05,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:40:05,229.229 INFO    ] time= 25/08/2026 17:40:05
[2026-08-25 17:40:05,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:40:05,300.300 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:40:05,433.433 INFO    ] No existing commands found in stream
[2026-08-25 17:40:10,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:40:10,459.459 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 17:40:12,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:40:12,876.876 INFO    ] Checking for system updates...
[2026-08-25 17:40:12,912.912 INFO    ] 200
[2026-08-25 17:40:12,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:12,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:40:12,979.979 INFO    ] No update needed
[2026-08-25 17:40:12,981.981 INFO    ] Checking for camera pi updates...
[2026-08-25 17:40:13,015.015 INFO    ] 200
[2026-08-25 17:40:13,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:13,058.058 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:40:13,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:40:13,103.103 INFO    ] No camera update needed
[2026-08-25 17:40:13,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:40:13,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:40:13,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:40:13,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:40:15,158.158 INFO    ] ================================================
[2026-08-25 17:40:15,173.173 INFO    ] Launching Daemon at Tue Aug 25 17:40:15 IST 2026
[2026-08-25 17:40:15,184.184 INFO    ] ================================================
[2026-08-25 17:40:15,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:40:15
[2026-08-25 17:40:16,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:40:16,819.819 INFO    ] Initializing speech engine...
[2026-08-25 17:40:16,827.827 INFO    ] 2026-08-25 17:40:16
[2026-08-25 17:40:17,118.118 INFO    ] 2026-08-25 17:40:17
[2026-08-25 17:40:17,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:40:17,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:40:17,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:40:17,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:40:17,589.589 INFO    ] time= 25/08/2026 17:40:17
[2026-08-25 17:40:17,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:40:17,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:40:17,772.772 INFO    ] No existing commands found in stream
[2026-08-25 17:40:22,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:40:22,807.807 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 17:40:25,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:40:25,842.842 INFO    ] Checking for system updates...
[2026-08-25 17:40:25,878.878 INFO    ] 200
[2026-08-25 17:40:25,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:25,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:40:25,939.939 INFO    ] No update needed
[2026-08-25 17:40:25,941.941 INFO    ] Checking for camera pi updates...
[2026-08-25 17:40:25,985.985 INFO    ] 200
[2026-08-25 17:40:25,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:26,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:40:26,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:40:26,084.084 INFO    ] No camera update needed
[2026-08-25 17:40:26,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:40:26,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:40:26,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:40:26,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:40:28,142.142 INFO    ] ================================================
[2026-08-25 17:40:28,158.158 INFO    ] Launching Daemon at Tue Aug 25 17:40:28 IST 2026
[2026-08-25 17:40:28,169.169 INFO    ] ================================================
[2026-08-25 17:40:28,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:40:28
[2026-08-25 17:40:29,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:40:29,586.586 INFO    ] Initializing speech engine...
[2026-08-25 17:40:29,595.595 INFO    ] 2026-08-25 17:40:29
[2026-08-25 17:40:29,842.842 INFO    ] 2026-08-25 17:40:29
[2026-08-25 17:40:29,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:40:30,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:40:30,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:40:30,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:40:30,337.337 INFO    ] time= 25/08/2026 17:40:30
[2026-08-25 17:40:30,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:40:30,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:40:30,527.527 INFO    ] No existing commands found in stream
[2026-08-25 17:40:35,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:40:35,560.560 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 17:40:36,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:40:36,505.505 INFO    ] Checking for system updates...
[2026-08-25 17:40:36,541.541 INFO    ] 200
[2026-08-25 17:40:36,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:36,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:40:36,605.605 INFO    ] No update needed
[2026-08-25 17:40:36,608.608 INFO    ] Checking for camera pi updates...
[2026-08-25 17:40:36,645.645 INFO    ] 200
[2026-08-25 17:40:36,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:36,689.689 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:40:36,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:40:36,739.739 INFO    ] No camera update needed
[2026-08-25 17:40:36,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:40:36,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:40:36,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:40:36,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:40:38,793.793 INFO    ] ================================================
[2026-08-25 17:40:38,808.808 INFO    ] Launching Daemon at Tue Aug 25 17:40:38 IST 2026
[2026-08-25 17:40:38,818.818 INFO    ] ================================================
[2026-08-25 17:40:39,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:40:39
[2026-08-25 17:40:39,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:40:40,251.251 INFO    ] Initializing speech engine...
[2026-08-25 17:40:40,261.261 INFO    ] 2026-08-25 17:40:40
[2026-08-25 17:40:40,509.509 INFO    ] 2026-08-25 17:40:40
[2026-08-25 17:40:40,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:40:40,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:40:40,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:40:40,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:40:41,052.052 INFO    ] time= 25/08/2026 17:40:40
[2026-08-25 17:40:41,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:40:41,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:40:41,218.218 INFO    ] No existing commands found in stream
[2026-08-25 17:40:46,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:40:46,236.236 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 17:40:48,776.776 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:40:48,778.778 INFO    ] Checking for system updates...
[2026-08-25 17:40:48,814.814 INFO    ] 200
[2026-08-25 17:40:48,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:48,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:40:48,871.871 INFO    ] No update needed
[2026-08-25 17:40:48,873.873 INFO    ] Checking for camera pi updates...
[2026-08-25 17:40:48,911.911 INFO    ] 200
[2026-08-25 17:40:48,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:40:48,954.954 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:40:48,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:40:48,999.999 INFO    ] No camera update needed
[2026-08-25 17:40:49,002.002 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:40:49,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:40:49,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:40:49,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:40:51,056.056 INFO    ] ================================================
[2026-08-25 17:40:51,076.076 INFO    ] Launching Daemon at Tue Aug 25 17:40:51 IST 2026
[2026-08-25 17:40:51,088.088 INFO    ] ================================================
[2026-08-25 17:40:51,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:40:51
[2026-08-25 17:40:52,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:40:52,517.517 INFO    ] Initializing speech engine...
[2026-08-25 17:40:52,523.523 INFO    ] 2026-08-25 17:40:52
[2026-08-25 17:40:52,771.771 INFO    ] 2026-08-25 17:40:52
[2026-08-25 17:40:52,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:40:53,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:40:53,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:40:53,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:40:53,245.245 INFO    ] time= 25/08/2026 17:40:53
[2026-08-25 17:40:53,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:40:53,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:40:53,486.486 INFO    ] No existing commands found in stream
[2026-08-25 17:40:58,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:40:58,510.510 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 17:41:02,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:41:02,471.471 INFO    ] Checking for system updates...
[2026-08-25 17:41:02,510.510 INFO    ] 200
[2026-08-25 17:41:02,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:02,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:41:02,578.578 INFO    ] No update needed
[2026-08-25 17:41:02,581.581 INFO    ] Checking for camera pi updates...
[2026-08-25 17:41:02,623.623 INFO    ] 200
[2026-08-25 17:41:02,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:02,688.688 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:41:02,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:41:02,741.741 INFO    ] No camera update needed
[2026-08-25 17:41:02,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:41:02,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:41:02,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:41:02,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:41:04,800.800 INFO    ] ================================================
[2026-08-25 17:41:04,816.816 INFO    ] Launching Daemon at Tue Aug 25 17:41:04 IST 2026
[2026-08-25 17:41:04,826.826 INFO    ] ================================================
[2026-08-25 17:41:05,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:41:05
[2026-08-25 17:41:05,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:41:06,240.240 INFO    ] Initializing speech engine...
[2026-08-25 17:41:06,256.256 INFO    ] 2026-08-25 17:41:06
[2026-08-25 17:41:06,562.562 INFO    ] 2026-08-25 17:41:06
[2026-08-25 17:41:06,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:41:06,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:41:06,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:41:06,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:41:06,986.986 INFO    ] time= 25/08/2026 17:41:06
[2026-08-25 17:41:06,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:41:07,002.002 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:41:07,129.129 INFO    ] No existing commands found in stream
[2026-08-25 17:41:12,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:41:12,168.168 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 17:41:14,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:41:14,645.645 INFO    ] Checking for system updates...
[2026-08-25 17:41:14,687.687 INFO    ] 200
[2026-08-25 17:41:14,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:14,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:41:14,764.764 INFO    ] No update needed
[2026-08-25 17:41:14,767.767 INFO    ] Checking for camera pi updates...
[2026-08-25 17:41:14,802.802 INFO    ] 200
[2026-08-25 17:41:14,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:14,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:41:14,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:41:14,900.900 INFO    ] No camera update needed
[2026-08-25 17:41:14,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:41:14,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:41:14,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:41:14,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:41:16,958.958 INFO    ] ================================================
[2026-08-25 17:41:16,974.974 INFO    ] Launching Daemon at Tue Aug 25 17:41:16 IST 2026
[2026-08-25 17:41:16,985.985 INFO    ] ================================================
[2026-08-25 17:41:17,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:41:17
[2026-08-25 17:41:18,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:41:18,661.661 INFO    ] Initializing speech engine...
[2026-08-25 17:41:18,676.676 INFO    ] 2026-08-25 17:41:18
[2026-08-25 17:41:18,989.989 INFO    ] 2026-08-25 17:41:18
[2026-08-25 17:41:19,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:41:19,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:41:19,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:41:19,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:41:19,499.499 INFO    ] time= 25/08/2026 17:41:19
[2026-08-25 17:41:19,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:41:19,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:41:19,687.687 INFO    ] No existing commands found in stream
[2026-08-25 17:41:24,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:41:24,722.722 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 17:41:25,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:41:25,584.584 INFO    ] Checking for system updates...
[2026-08-25 17:41:25,621.621 INFO    ] 200
[2026-08-25 17:41:25,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:25,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:41:25,687.687 INFO    ] No update needed
[2026-08-25 17:41:25,690.690 INFO    ] Checking for camera pi updates...
[2026-08-25 17:41:25,725.725 INFO    ] 200
[2026-08-25 17:41:25,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:25,768.768 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:41:25,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:41:25,826.826 INFO    ] No camera update needed
[2026-08-25 17:41:25,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:41:25,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:41:25,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:41:25,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:41:27,880.880 INFO    ] ================================================
[2026-08-25 17:41:27,896.896 INFO    ] Launching Daemon at Tue Aug 25 17:41:27 IST 2026
[2026-08-25 17:41:27,907.907 INFO    ] ================================================
[2026-08-25 17:41:28,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:41:28
[2026-08-25 17:41:29,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:41:29,321.321 INFO    ] Initializing speech engine...
[2026-08-25 17:41:29,340.340 INFO    ] 2026-08-25 17:41:29
[2026-08-25 17:41:29,586.586 INFO    ] 2026-08-25 17:41:29
[2026-08-25 17:41:29,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:41:29,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:41:29,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:41:30,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:41:30,057.057 INFO    ] time= 25/08/2026 17:41:30
[2026-08-25 17:41:30,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:41:30,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:41:30,280.280 INFO    ] No existing commands found in stream
[2026-08-25 17:41:35,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:41:35,304.304 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 17:41:38,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:41:38,525.525 INFO    ] Checking for system updates...
[2026-08-25 17:41:38,560.560 INFO    ] 200
[2026-08-25 17:41:38,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:38,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:41:38,618.618 INFO    ] No update needed
[2026-08-25 17:41:38,621.621 INFO    ] Checking for camera pi updates...
[2026-08-25 17:41:38,654.654 INFO    ] 200
[2026-08-25 17:41:38,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:38,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:41:38,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:41:38,743.743 INFO    ] No camera update needed
[2026-08-25 17:41:38,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:41:38,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:41:38,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:41:38,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:41:40,796.796 INFO    ] ================================================
[2026-08-25 17:41:40,811.811 INFO    ] Launching Daemon at Tue Aug 25 17:41:40 IST 2026
[2026-08-25 17:41:40,822.822 INFO    ] ================================================
[2026-08-25 17:41:41,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:41:41
[2026-08-25 17:41:42,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:41:42,374.374 INFO    ] Initializing speech engine...
[2026-08-25 17:41:42,388.388 INFO    ] 2026-08-25 17:41:42
[2026-08-25 17:41:42,665.665 INFO    ] 2026-08-25 17:41:42
[2026-08-25 17:41:42,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:41:42,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:41:42,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:41:43,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:41:43,200.200 INFO    ] time= 25/08/2026 17:41:43
[2026-08-25 17:41:43,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:41:43,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:41:43,358.358 INFO    ] No existing commands found in stream
[2026-08-25 17:41:48,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:41:48,380.380 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 17:41:51,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:41:51,344.344 INFO    ] Checking for system updates...
[2026-08-25 17:41:51,386.386 INFO    ] 200
[2026-08-25 17:41:51,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:51,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:41:51,448.448 INFO    ] No update needed
[2026-08-25 17:41:51,450.450 INFO    ] Checking for camera pi updates...
[2026-08-25 17:41:51,483.483 INFO    ] 200
[2026-08-25 17:41:51,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:41:51,527.527 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:41:51,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:41:51,595.595 INFO    ] No camera update needed
[2026-08-25 17:41:51,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:41:51,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:41:51,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:41:51,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:41:53,651.651 INFO    ] ================================================
[2026-08-25 17:41:53,667.667 INFO    ] Launching Daemon at Tue Aug 25 17:41:53 IST 2026
[2026-08-25 17:41:53,677.677 INFO    ] ================================================
[2026-08-25 17:41:54,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:41:54
[2026-08-25 17:41:54,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:41:55,242.242 INFO    ] Initializing speech engine...
[2026-08-25 17:41:55,252.252 INFO    ] 2026-08-25 17:41:55
[2026-08-25 17:41:55,524.524 INFO    ] 2026-08-25 17:41:55
[2026-08-25 17:41:55,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:41:55,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:41:55,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:41:55,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:41:56,006.006 INFO    ] time= 25/08/2026 17:41:55
[2026-08-25 17:41:56,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:41:56,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:41:56,225.225 INFO    ] No existing commands found in stream
[2026-08-25 17:42:01,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:42:01,243.243 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 17:42:05,611.611 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:42:05,614.614 INFO    ] Checking for system updates...
[2026-08-25 17:42:05,649.649 INFO    ] 200
[2026-08-25 17:42:05,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:05,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:05,706.706 INFO    ] No update needed
[2026-08-25 17:42:05,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 17:42:05,747.747 INFO    ] 200
[2026-08-25 17:42:05,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:05,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:42:05,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:05,836.836 INFO    ] No camera update needed
[2026-08-25 17:42:05,838.838 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:42:05,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:42:05,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:42:05,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:42:07,891.891 INFO    ] ================================================
[2026-08-25 17:42:07,906.906 INFO    ] Launching Daemon at Tue Aug 25 17:42:07 IST 2026
[2026-08-25 17:42:07,917.917 INFO    ] ================================================
[2026-08-25 17:42:08,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:42:08
[2026-08-25 17:42:09,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:42:09,373.373 INFO    ] Initializing speech engine...
[2026-08-25 17:42:09,380.380 INFO    ] 2026-08-25 17:42:09
[2026-08-25 17:42:09,640.640 INFO    ] 2026-08-25 17:42:09
[2026-08-25 17:42:09,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:42:09,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:42:09,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:42:10,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:42:10,123.123 INFO    ] time= 25/08/2026 17:42:10
[2026-08-25 17:42:10,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:42:10,191.191 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:42:10,320.320 INFO    ] No existing commands found in stream
[2026-08-25 17:42:15,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:42:15,348.348 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 17:42:17,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:42:17,838.838 INFO    ] Checking for system updates...
[2026-08-25 17:42:17,878.878 INFO    ] 200
[2026-08-25 17:42:17,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:17,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:17,943.943 INFO    ] No update needed
[2026-08-25 17:42:17,946.946 INFO    ] Checking for camera pi updates...
[2026-08-25 17:42:17,982.982 INFO    ] 200
[2026-08-25 17:42:17,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:18,025.025 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:42:18,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:18,077.077 INFO    ] No camera update needed
[2026-08-25 17:42:18,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:42:18,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:42:18,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:42:18,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:42:20,131.131 INFO    ] ================================================
[2026-08-25 17:42:20,146.146 INFO    ] Launching Daemon at Tue Aug 25 17:42:20 IST 2026
[2026-08-25 17:42:20,156.156 INFO    ] ================================================
[2026-08-25 17:42:20,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:42:20
[2026-08-25 17:42:21,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:42:21,664.664 INFO    ] Initializing speech engine...
[2026-08-25 17:42:21,671.671 INFO    ] 2026-08-25 17:42:21
[2026-08-25 17:42:21,963.963 INFO    ] 2026-08-25 17:42:21
[2026-08-25 17:42:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:42:22,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:42:22,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:42:22,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:42:22,495.495 INFO    ] time= 25/08/2026 17:42:22
[2026-08-25 17:42:22,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:42:22,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:42:22,659.659 INFO    ] No existing commands found in stream
[2026-08-25 17:42:27,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:42:27,688.688 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 17:42:30,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:42:30,276.276 INFO    ] Checking for system updates...
[2026-08-25 17:42:30,316.316 INFO    ] 200
[2026-08-25 17:42:30,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:30,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:30,374.374 INFO    ] No update needed
[2026-08-25 17:42:30,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 17:42:30,411.411 INFO    ] 200
[2026-08-25 17:42:30,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:30,457.457 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:42:30,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:30,510.510 INFO    ] No camera update needed
[2026-08-25 17:42:30,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:42:30,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:42:30,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:42:30,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:42:32,569.569 INFO    ] ================================================
[2026-08-25 17:42:32,586.586 INFO    ] Launching Daemon at Tue Aug 25 17:42:32 IST 2026
[2026-08-25 17:42:32,598.598 INFO    ] ================================================
[2026-08-25 17:42:33,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:42:33
[2026-08-25 17:42:33,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:42:34,047.047 INFO    ] Initializing speech engine...
[2026-08-25 17:42:34,053.053 INFO    ] 2026-08-25 17:42:34
[2026-08-25 17:42:34,349.349 INFO    ] 2026-08-25 17:42:34
[2026-08-25 17:42:34,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:42:34,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:42:34,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:42:34,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:42:34,795.795 INFO    ] time= 25/08/2026 17:42:34
[2026-08-25 17:42:34,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:42:34,904.904 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:42:34,998.998 INFO    ] No existing commands found in stream
[2026-08-25 17:42:40,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:42:40,011.011 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 17:42:44,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:42:44,173.173 INFO    ] Checking for system updates...
[2026-08-25 17:42:44,209.209 INFO    ] 200
[2026-08-25 17:42:44,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:44,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:42:44,268.268 INFO    ] No update needed
[2026-08-25 17:42:44,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 17:42:44,304.304 INFO    ] 200
[2026-08-25 17:42:44,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:44,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:42:44,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:42:44,399.399 INFO    ] No camera update needed
[2026-08-25 17:42:44,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:42:44,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:42:44,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:42:44,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:42:46,453.453 INFO    ] ================================================
[2026-08-25 17:42:46,468.468 INFO    ] Launching Daemon at Tue Aug 25 17:42:46 IST 2026
[2026-08-25 17:42:46,479.479 INFO    ] ================================================
[2026-08-25 17:42:47,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:42:47
[2026-08-25 17:42:47,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:42:47,941.941 INFO    ] Initializing speech engine...
[2026-08-25 17:42:47,950.950 INFO    ] 2026-08-25 17:42:47
[2026-08-25 17:42:48,240.240 INFO    ] 2026-08-25 17:42:48
[2026-08-25 17:42:48,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:42:48,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:42:48,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:42:48,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:42:48,655.655 INFO    ] time= 25/08/2026 17:42:48
[2026-08-25 17:42:48,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:42:48,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:42:48,843.843 INFO    ] No existing commands found in stream
[2026-08-25 17:42:53,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:42:53,876.876 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 17:42:55,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:42:55,944.944 INFO    ] Checking for system updates...
[2026-08-25 17:42:55,979.979 INFO    ] 200
[2026-08-25 17:42:55,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:56,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:56,045.045 INFO    ] No update needed
[2026-08-25 17:42:56,047.047 INFO    ] Checking for camera pi updates...
[2026-08-25 17:42:56,081.081 INFO    ] 200
[2026-08-25 17:42:56,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:42:56,123.123 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:42:56,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:42:56,181.181 INFO    ] No camera update needed
[2026-08-25 17:42:56,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:42:56,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:42:56,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:42:56,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:42:58,235.235 INFO    ] ================================================
[2026-08-25 17:42:58,250.250 INFO    ] Launching Daemon at Tue Aug 25 17:42:58 IST 2026
[2026-08-25 17:42:58,260.260 INFO    ] ================================================
[2026-08-25 17:42:58,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:42:58
[2026-08-25 17:42:59,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:42:59,744.744 INFO    ] Initializing speech engine...
[2026-08-25 17:42:59,753.753 INFO    ] 2026-08-25 17:42:59
[2026-08-25 17:43:00,013.013 INFO    ] 2026-08-25 17:43:00
[2026-08-25 17:43:00,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:43:00,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:43:00,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:43:00,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:43:00,454.454 INFO    ] time= 25/08/2026 17:43:00
[2026-08-25 17:43:00,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:43:00,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:43:00,641.641 INFO    ] No existing commands found in stream
[2026-08-25 17:43:05,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:43:05,657.657 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 17:43:09,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:43:09,225.225 INFO    ] Checking for system updates...
[2026-08-25 17:43:09,264.264 INFO    ] 200
[2026-08-25 17:43:09,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:09,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:43:09,322.322 INFO    ] No update needed
[2026-08-25 17:43:09,324.324 INFO    ] Checking for camera pi updates...
[2026-08-25 17:43:09,360.360 INFO    ] 200
[2026-08-25 17:43:09,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:09,404.404 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:43:09,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:43:09,465.465 INFO    ] No camera update needed
[2026-08-25 17:43:09,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:43:09,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:43:09,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:43:09,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:43:11,519.519 INFO    ] ================================================
[2026-08-25 17:43:11,534.534 INFO    ] Launching Daemon at Tue Aug 25 17:43:11 IST 2026
[2026-08-25 17:43:11,545.545 INFO    ] ================================================
[2026-08-25 17:43:12,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:43:12
[2026-08-25 17:43:12,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:43:13,126.126 INFO    ] Initializing speech engine...
[2026-08-25 17:43:13,139.139 INFO    ] 2026-08-25 17:43:13
[2026-08-25 17:43:13,417.417 INFO    ] 2026-08-25 17:43:13
[2026-08-25 17:43:13,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:43:13,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:43:13,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:43:13,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:43:13,949.949 INFO    ] time= 25/08/2026 17:43:13
[2026-08-25 17:43:13,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:43:13,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:43:14,105.105 INFO    ] No existing commands found in stream
[2026-08-25 17:43:19,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:43:19,128.128 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 17:43:23,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:43:23,175.175 INFO    ] Checking for system updates...
[2026-08-25 17:43:23,214.214 INFO    ] 200
[2026-08-25 17:43:23,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:23,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:43:23,271.271 INFO    ] No update needed
[2026-08-25 17:43:23,273.273 INFO    ] Checking for camera pi updates...
[2026-08-25 17:43:23,307.307 INFO    ] 200
[2026-08-25 17:43:23,309.309 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:23,354.354 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:43:23,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:43:23,402.402 INFO    ] No camera update needed
[2026-08-25 17:43:23,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:43:23,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:43:23,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:43:23,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:43:25,458.458 INFO    ] ================================================
[2026-08-25 17:43:25,473.473 INFO    ] Launching Daemon at Tue Aug 25 17:43:25 IST 2026
[2026-08-25 17:43:25,484.484 INFO    ] ================================================
[2026-08-25 17:43:26,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:43:26
[2026-08-25 17:43:26,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:43:26,904.904 INFO    ] Initializing speech engine...
[2026-08-25 17:43:26,930.930 INFO    ] 2026-08-25 17:43:26
[2026-08-25 17:43:27,200.200 INFO    ] 2026-08-25 17:43:27
[2026-08-25 17:43:27,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:43:28,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:43:28,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:43:28,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:43:28,689.689 INFO    ] time= 25/08/2026 17:43:28
[2026-08-25 17:43:28,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:43:28,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:43:28,766.766 INFO    ] No existing commands found in stream
[2026-08-25 17:43:33,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:43:33,781.781 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 17:43:35,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:43:35,765.765 INFO    ] Checking for system updates...
[2026-08-25 17:43:35,802.802 INFO    ] 200
[2026-08-25 17:43:35,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:35,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:43:35,860.860 INFO    ] No update needed
[2026-08-25 17:43:35,863.863 INFO    ] Checking for camera pi updates...
[2026-08-25 17:43:35,900.900 INFO    ] 200
[2026-08-25 17:43:35,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:35,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:43:35,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:43:35,999.999 INFO    ] No camera update needed
[2026-08-25 17:43:36,001.001 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:43:36,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:43:36,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:43:36,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:43:38,054.054 INFO    ] ================================================
[2026-08-25 17:43:38,069.069 INFO    ] Launching Daemon at Tue Aug 25 17:43:38 IST 2026
[2026-08-25 17:43:38,079.079 INFO    ] ================================================
[2026-08-25 17:43:38,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:43:38
[2026-08-25 17:43:39,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:43:39,501.501 INFO    ] Initializing speech engine...
[2026-08-25 17:43:39,507.507 INFO    ] 2026-08-25 17:43:39
[2026-08-25 17:43:39,756.756 INFO    ] 2026-08-25 17:43:39
[2026-08-25 17:43:39,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:43:40,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:43:40,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:43:40,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:43:40,247.247 INFO    ] time= 25/08/2026 17:43:40
[2026-08-25 17:43:40,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:43:40,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:43:40,479.479 INFO    ] No existing commands found in stream
[2026-08-25 17:43:45,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:43:45,499.499 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 17:43:49,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:43:49,852.852 INFO    ] Checking for system updates...
[2026-08-25 17:43:49,894.894 INFO    ] 200
[2026-08-25 17:43:49,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:49,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:43:49,964.964 INFO    ] No update needed
[2026-08-25 17:43:49,968.968 INFO    ] Checking for camera pi updates...
[2026-08-25 17:43:50,010.010 INFO    ] 200
[2026-08-25 17:43:50,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:43:50,059.059 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:43:50,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:43:50,106.106 INFO    ] No camera update needed
[2026-08-25 17:43:50,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:43:50,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:43:50,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:43:50,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:43:52,164.164 INFO    ] ================================================
[2026-08-25 17:43:52,179.179 INFO    ] Launching Daemon at Tue Aug 25 17:43:52 IST 2026
[2026-08-25 17:43:52,190.190 INFO    ] ================================================
[2026-08-25 17:43:52,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:43:52
[2026-08-25 17:43:53,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:43:53,597.597 INFO    ] Initializing speech engine...
[2026-08-25 17:43:53,616.616 INFO    ] 2026-08-25 17:43:53
[2026-08-25 17:43:53,866.866 INFO    ] 2026-08-25 17:43:53
[2026-08-25 17:43:53,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:43:54,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:43:54,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:43:54,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:43:54,306.306 INFO    ] time= 25/08/2026 17:43:54
[2026-08-25 17:43:54,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:43:54,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:43:54,489.489 INFO    ] No existing commands found in stream
[2026-08-25 17:43:59,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:43:59,504.504 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 17:44:01,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:44:01,086.086 INFO    ] Checking for system updates...
[2026-08-25 17:44:01,123.123 INFO    ] 200
[2026-08-25 17:44:01,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:01,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:44:01,191.191 INFO    ] No update needed
[2026-08-25 17:44:01,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 17:44:01,228.228 INFO    ] 200
[2026-08-25 17:44:01,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:01,272.272 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:44:01,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:44:01,369.369 INFO    ] No camera update needed
[2026-08-25 17:44:01,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:44:01,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:44:01,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:44:01,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:44:03,453.453 INFO    ] ================================================
[2026-08-25 17:44:03,469.469 INFO    ] Launching Daemon at Tue Aug 25 17:44:03 IST 2026
[2026-08-25 17:44:03,480.480 INFO    ] ================================================
[2026-08-25 17:44:04,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:44:04
[2026-08-25 17:44:04,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:44:04,930.930 INFO    ] Initializing speech engine...
[2026-08-25 17:44:04,939.939 INFO    ] 2026-08-25 17:44:04
[2026-08-25 17:44:05,196.196 INFO    ] 2026-08-25 17:44:05
[2026-08-25 17:44:05,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:44:05,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:44:05,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:44:05,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:44:05,674.674 INFO    ] time= 25/08/2026 17:44:05
[2026-08-25 17:44:05,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:44:05,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:44:05,877.877 INFO    ] No existing commands found in stream
[2026-08-25 17:44:10,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:44:10,904.904 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 17:44:13,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:44:13,095.095 INFO    ] Checking for system updates...
[2026-08-25 17:44:13,156.156 INFO    ] 200
[2026-08-25 17:44:13,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:13,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:44:13,224.224 INFO    ] No update needed
[2026-08-25 17:44:13,227.227 INFO    ] Checking for camera pi updates...
[2026-08-25 17:44:13,263.263 INFO    ] 200
[2026-08-25 17:44:13,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:13,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:44:13,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:44:13,468.468 INFO    ] No camera update needed
[2026-08-25 17:44:13,471.471 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:44:13,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:44:13,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:44:13,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:44:15,530.530 INFO    ] ================================================
[2026-08-25 17:44:15,545.545 INFO    ] Launching Daemon at Tue Aug 25 17:44:15 IST 2026
[2026-08-25 17:44:15,556.556 INFO    ] ================================================
[2026-08-25 17:44:16,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:44:16
[2026-08-25 17:44:16,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:44:16,990.990 INFO    ] Initializing speech engine...
[2026-08-25 17:44:17,003.003 INFO    ] 2026-08-25 17:44:16
[2026-08-25 17:44:17,283.283 INFO    ] 2026-08-25 17:44:17
[2026-08-25 17:44:17,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:44:17,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:44:17,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:44:17,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:44:17,736.736 INFO    ] time= 25/08/2026 17:44:17
[2026-08-25 17:44:17,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:44:17,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:44:17,924.924 INFO    ] No existing commands found in stream
[2026-08-25 17:44:22,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:44:22,940.940 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 17:44:26,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:44:26,830.830 INFO    ] Checking for system updates...
[2026-08-25 17:44:26,868.868 INFO    ] 200
[2026-08-25 17:44:26,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:26,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:44:26,936.936 INFO    ] No update needed
[2026-08-25 17:44:26,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 17:44:26,978.978 INFO    ] 200
[2026-08-25 17:44:26,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:27,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:44:27,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:44:27,083.083 INFO    ] No camera update needed
[2026-08-25 17:44:27,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:44:27,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:44:27,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:44:27,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:44:29,144.144 INFO    ] ================================================
[2026-08-25 17:44:29,160.160 INFO    ] Launching Daemon at Tue Aug 25 17:44:29 IST 2026
[2026-08-25 17:44:29,171.171 INFO    ] ================================================
[2026-08-25 17:44:29,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:44:29
[2026-08-25 17:44:30,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:44:30,610.610 INFO    ] Initializing speech engine...
[2026-08-25 17:44:30,627.627 INFO    ] 2026-08-25 17:44:30
[2026-08-25 17:44:30,906.906 INFO    ] 2026-08-25 17:44:30
[2026-08-25 17:44:30,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:44:31,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:44:31,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:44:31,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:44:31,303.303 INFO    ] time= 25/08/2026 17:44:31
[2026-08-25 17:44:31,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:44:31,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:44:31,416.416 INFO    ] No existing commands found in stream
[2026-08-25 17:44:36,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:44:36,429.429 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 17:44:38,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:44:38,080.080 INFO    ] Checking for system updates...
[2026-08-25 17:44:38,115.115 INFO    ] 200
[2026-08-25 17:44:38,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:38,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:44:38,172.172 INFO    ] No update needed
[2026-08-25 17:44:38,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 17:44:38,211.211 INFO    ] 200
[2026-08-25 17:44:38,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:38,258.258 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:44:38,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:44:38,317.317 INFO    ] No camera update needed
[2026-08-25 17:44:38,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:44:38,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:44:38,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:44:38,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:44:40,374.374 INFO    ] ================================================
[2026-08-25 17:44:40,390.390 INFO    ] Launching Daemon at Tue Aug 25 17:44:40 IST 2026
[2026-08-25 17:44:40,400.400 INFO    ] ================================================
[2026-08-25 17:44:40,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:44:40
[2026-08-25 17:44:41,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:44:41,808.808 INFO    ] Initializing speech engine...
[2026-08-25 17:44:41,816.816 INFO    ] 2026-08-25 17:44:41
[2026-08-25 17:44:42,109.109 INFO    ] 2026-08-25 17:44:42
[2026-08-25 17:44:42,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:44:42,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:44:42,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:44:42,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:44:42,532.532 INFO    ] time= 25/08/2026 17:44:42
[2026-08-25 17:44:42,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:44:42,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:44:42,709.709 INFO    ] No existing commands found in stream
[2026-08-25 17:44:47,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:44:47,738.738 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 17:44:50,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:44:50,971.971 INFO    ] Checking for system updates...
[2026-08-25 17:44:51,006.006 INFO    ] 200
[2026-08-25 17:44:51,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:51,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:44:51,062.062 INFO    ] No update needed
[2026-08-25 17:44:51,065.065 INFO    ] Checking for camera pi updates...
[2026-08-25 17:44:51,099.099 INFO    ] 200
[2026-08-25 17:44:51,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:44:51,141.141 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:44:51,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:44:51,188.188 INFO    ] No camera update needed
[2026-08-25 17:44:51,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:44:51,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:44:51,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:44:51,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:44:53,245.245 INFO    ] ================================================
[2026-08-25 17:44:53,261.261 INFO    ] Launching Daemon at Tue Aug 25 17:44:53 IST 2026
[2026-08-25 17:44:53,272.272 INFO    ] ================================================
[2026-08-25 17:44:53,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:44:53
[2026-08-25 17:44:54,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:44:54,712.712 INFO    ] Initializing speech engine...
[2026-08-25 17:44:54,721.721 INFO    ] 2026-08-25 17:44:54
[2026-08-25 17:44:55,024.024 INFO    ] 2026-08-25 17:44:55
[2026-08-25 17:44:55,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:44:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:44:55,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:44:55,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:44:55,441.441 INFO    ] time= 25/08/2026 17:44:55
[2026-08-25 17:44:55,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:44:55,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:44:55,529.529 INFO    ] No existing commands found in stream
[2026-08-25 17:45:00,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:45:00,567.567 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 17:45:02,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:45:02,251.251 INFO    ] Checking for system updates...
[2026-08-25 17:45:02,297.297 INFO    ] 200
[2026-08-25 17:45:02,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:02,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:45:02,394.394 INFO    ] No update needed
[2026-08-25 17:45:02,398.398 INFO    ] Checking for camera pi updates...
[2026-08-25 17:45:02,442.442 INFO    ] 200
[2026-08-25 17:45:02,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:02,495.495 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:45:02,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:45:02,586.586 INFO    ] No camera update needed
[2026-08-25 17:45:02,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:45:02,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:45:02,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:45:02,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:45:04,647.647 INFO    ] ================================================
[2026-08-25 17:45:04,662.662 INFO    ] Launching Daemon at Tue Aug 25 17:45:04 IST 2026
[2026-08-25 17:45:04,674.674 INFO    ] ================================================
[2026-08-25 17:45:05,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:45:05
[2026-08-25 17:45:06,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:45:06,345.345 INFO    ] Initializing speech engine...
[2026-08-25 17:45:06,359.359 INFO    ] 2026-08-25 17:45:06
[2026-08-25 17:45:06,638.638 INFO    ] 2026-08-25 17:45:06
[2026-08-25 17:45:06,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:45:06,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:45:06,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:45:07,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:45:07,141.141 INFO    ] time= 25/08/2026 17:45:07
[2026-08-25 17:45:07,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:45:07,210.210 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:45:07,363.363 INFO    ] No existing commands found in stream
[2026-08-25 17:45:12,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:45:12,379.379 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 17:45:13,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:45:13,919.919 INFO    ] Checking for system updates...
[2026-08-25 17:45:13,958.958 INFO    ] 200
[2026-08-25 17:45:13,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:14,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:45:14,015.015 INFO    ] No update needed
[2026-08-25 17:45:14,018.018 INFO    ] Checking for camera pi updates...
[2026-08-25 17:45:14,059.059 INFO    ] 200
[2026-08-25 17:45:14,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:14,108.108 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:45:14,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:45:14,161.161 INFO    ] No camera update needed
[2026-08-25 17:45:14,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:45:14,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:45:14,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:45:14,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:45:16,216.216 INFO    ] ================================================
[2026-08-25 17:45:16,232.232 INFO    ] Launching Daemon at Tue Aug 25 17:45:16 IST 2026
[2026-08-25 17:45:16,243.243 INFO    ] ================================================
[2026-08-25 17:45:16,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:45:16
[2026-08-25 17:45:17,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:45:17,671.671 INFO    ] Initializing speech engine...
[2026-08-25 17:45:17,678.678 INFO    ] 2026-08-25 17:45:17
[2026-08-25 17:45:17,926.926 INFO    ] 2026-08-25 17:45:17
[2026-08-25 17:45:17,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:45:18,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:45:18,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:45:18,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:45:18,396.396 INFO    ] time= 25/08/2026 17:45:18
[2026-08-25 17:45:18,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:45:18,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:45:18,622.622 INFO    ] No existing commands found in stream
[2026-08-25 17:45:23,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:45:23,656.656 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 17:45:27,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:45:27,786.786 INFO    ] Checking for system updates...
[2026-08-25 17:45:27,826.826 INFO    ] 200
[2026-08-25 17:45:27,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:27,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:45:27,883.883 INFO    ] No update needed
[2026-08-25 17:45:27,886.886 INFO    ] Checking for camera pi updates...
[2026-08-25 17:45:27,919.919 INFO    ] 200
[2026-08-25 17:45:27,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:27,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:45:28,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:45:28,012.012 INFO    ] No camera update needed
[2026-08-25 17:45:28,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:45:28,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:45:28,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:45:28,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:45:30,069.069 INFO    ] ================================================
[2026-08-25 17:45:30,085.085 INFO    ] Launching Daemon at Tue Aug 25 17:45:30 IST 2026
[2026-08-25 17:45:30,096.096 INFO    ] ================================================
[2026-08-25 17:45:30,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:45:30
[2026-08-25 17:45:31,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:45:31,560.560 INFO    ] Initializing speech engine...
[2026-08-25 17:45:31,571.571 INFO    ] 2026-08-25 17:45:31
[2026-08-25 17:45:31,852.852 INFO    ] 2026-08-25 17:45:31
[2026-08-25 17:45:31,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:45:32,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:45:32,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:45:32,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:45:32,360.360 INFO    ] time= 25/08/2026 17:45:32
[2026-08-25 17:45:32,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:45:32,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:45:32,587.587 INFO    ] No existing commands found in stream
[2026-08-25 17:45:37,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:45:37,619.619 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-08-25 17:45:41,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:45:41,779.779 INFO    ] Checking for system updates...
[2026-08-25 17:45:41,819.819 INFO    ] 200
[2026-08-25 17:45:41,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:41,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:45:41,875.875 INFO    ] No update needed
[2026-08-25 17:45:41,878.878 INFO    ] Checking for camera pi updates...
[2026-08-25 17:45:41,911.911 INFO    ] 200
[2026-08-25 17:45:41,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:41,958.958 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:45:42,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:45:42,011.011 INFO    ] No camera update needed
[2026-08-25 17:45:42,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:45:42,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:45:42,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:45:42,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:45:44,066.066 INFO    ] ================================================
[2026-08-25 17:45:44,082.082 INFO    ] Launching Daemon at Tue Aug 25 17:45:44 IST 2026
[2026-08-25 17:45:44,093.093 INFO    ] ================================================
[2026-08-25 17:45:44,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:45:44
[2026-08-25 17:45:45,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:45:45,541.541 INFO    ] Initializing speech engine...
[2026-08-25 17:45:45,566.566 INFO    ] 2026-08-25 17:45:45
[2026-08-25 17:45:45,842.842 INFO    ] 2026-08-25 17:45:45
[2026-08-25 17:45:45,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:45:46,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:45:46,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:45:46,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:45:46,373.373 INFO    ] time= 25/08/2026 17:45:46
[2026-08-25 17:45:46,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:45:46,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:45:46,548.548 INFO    ] No existing commands found in stream
[2026-08-25 17:45:51,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:45:51,563.563 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 17:45:53,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:45:53,068.068 INFO    ] Checking for system updates...
[2026-08-25 17:45:53,111.111 INFO    ] 200
[2026-08-25 17:45:53,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:53,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:45:53,199.199 INFO    ] No update needed
[2026-08-25 17:45:53,202.202 INFO    ] Checking for camera pi updates...
[2026-08-25 17:45:53,240.240 INFO    ] 200
[2026-08-25 17:45:53,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:53,296.296 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:45:53,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:45:53,358.358 INFO    ] No camera update needed
[2026-08-25 17:45:53,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:45:53,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:45:53,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:45:53,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:45:55,413.413 INFO    ] ================================================
[2026-08-25 17:45:55,428.428 INFO    ] Launching Daemon at Tue Aug 25 17:45:55 IST 2026
[2026-08-25 17:45:55,438.438 INFO    ] ================================================
[2026-08-25 17:45:56,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:45:56
[2026-08-25 17:45:56,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:45:56,837.837 INFO    ] Initializing speech engine...
[2026-08-25 17:45:56,851.851 INFO    ] 2026-08-25 17:45:56
[2026-08-25 17:45:57,118.118 INFO    ] 2026-08-25 17:45:57
[2026-08-25 17:45:57,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:45:57,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:45:57,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:45:57,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:45:57,592.592 INFO    ] time= 25/08/2026 17:45:57
[2026-08-25 17:45:57,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:45:57,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:45:57,821.821 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 17:45:57,862.862 INFO    ] Checking historical command: ID=1787660152876-0
[2026-08-25 17:45:57,912.912 INFO    ] process_and_cleanup_command: msg_id=1787660152876-0
[2026-08-25 17:45:57,961.961 INFO    ] is_command_expired: timestamp=2026-08-25T12:15:51.964Z, expiry=30s
[2026-08-25 17:45:58,137.137 INFO    ] Command removed from stream: 1787660152876-0. returning for processing...
[2026-08-25 17:45:58,183.183 INFO    ] ***** get_valid_command
[2026-08-25 17:45:58,187.187 INFO    ] {'command': 'start-order', 'timestamp': '2026-08-25T12:15:51.964Z', 'data': '{"request_id":"start-order-1787660151964-a9mu6r3ps","orderId":"TM03202401260825174541996","is_vending":false}', 'source': 'webapp', 'timeout': '10'}
[2026-08-25 17:45:58,200.200 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787660151964-a9mu6r3ps', 'is_vending': False, 'orderId': 'TM03202401260825174541996'}
[2026-08-25 17:45:58,203.203 INFO    ] Handling start order...
[2026-08-25 17:45:58,206.206 INFO    ] handle_start_order_command
[2026-08-25 17:45:58,270.270 INFO    ] _send_start_order_success: request_id=start-order-1787660151964-a9mu6r3ps, order_id=TM03202401260825174541996
[2026-08-25 17:45:58,335.335 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 17:45:58,447.447 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787660158433-0
[2026-08-25 17:45:58,451.451 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 17:45:58,454.454 INFO    ] Checking for system updates...
[2026-08-25 17:45:58,580.580 INFO    ] 200
[2026-08-25 17:45:58,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:58,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:45:58,684.684 INFO    ] No update needed
[2026-08-25 17:45:58,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 17:45:58,735.735 INFO    ] 200
[2026-08-25 17:45:58,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:45:58,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:45:58,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:45:58,854.854 INFO    ] No camera update needed
[2026-08-25 17:45:58,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:45:58,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:45:58,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:45:58,893.893 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 17:45:58,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:46:00,960.960 INFO    ] ================================================
[2026-08-25 17:46:00,975.975 INFO    ] Launching Daemon at Tue Aug 25 17:46:00 IST 2026
[2026-08-25 17:46:00,986.986 INFO    ] ================================================
[2026-08-25 17:46:01,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:46:01
[2026-08-25 17:46:02,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:46:02,649.649 INFO    ] Initializing speech engine...
[2026-08-25 17:46:02,658.658 INFO    ] 2026-08-25 17:46:02
[2026-08-25 17:46:02,951.951 INFO    ] 2026-08-25 17:46:02
[2026-08-25 17:46:02,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:46:03,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:46:03,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:46:03,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:46:03,479.479 INFO    ] time= 25/08/2026 17:46:03
[2026-08-25 17:46:03,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:46:03,580.580 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:46:03,670.670 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 17:46:03,696.696 INFO    ] Checking historical command: ID=1787660158433-0
[2026-08-25 17:46:03,704.704 INFO    ] process_and_cleanup_command: msg_id=1787660158433-0
[2026-08-25 17:46:03,711.711 INFO    ] is_command_expired: timestamp=2026-08-25T12:15:58.282165Z, expiry=30s
[2026-08-25 17:46:03,847.847 INFO    ] Command removed from stream: 1787660158433-0. returning for processing...
[2026-08-25 17:46:03,896.896 INFO    ] ***** get_valid_command
[2026-08-25 17:46:03,946.946 INFO    ] {'metadata_order_id': 'TM03202401260825174541996', 'message': 'start-order success', 'imei': 'TM03202401', 'message_type': 'command_response', 'status': 'success', 'timestamp': '2026-08-25T12:15:58.282165Z', 'metadata_request_id': 'start-order-1787660151964-a9mu6r3ps'}
[2026-08-25 17:46:03,959.959 INFO    ] Checking historical command: ID=1787660160618-0
[2026-08-25 17:46:04,009.009 INFO    ] process_and_cleanup_command: msg_id=1787660160618-0
[2026-08-25 17:46:04,058.058 INFO    ] is_command_expired: timestamp=2026-08-25T12:15:59.799Z, expiry=30s
[2026-08-25 17:46:04,162.162 INFO    ] Command removed from stream: 1787660160618-0. returning for processing...
[2026-08-25 17:46:04,166.166 INFO    ] ***** get_valid_command
[2026-08-25 17:46:04,169.169 INFO    ] {'command': 'process-order', 'timeout': '60', 'source': 'webapp', 'timestamp': '2026-08-25T12:15:59.799Z', 'data': '{"request_id":"process-order-1787660159799-c7q28od2x","orderId":"TM03202401260825174541996","is_vending":false,"accessCode":"85336216"}'}
[2026-08-25 17:46:04,172.172 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825174541996', 'is_vending': False, 'request_id': 'process-order-1787660159799-c7q28od2x', 'accessCode': '85336216'}
[2026-08-25 17:46:04,226.226 INFO    ] Handling process order...
[2026-08-25 17:46:04,287.287 INFO    ] Processing process-order command...
[2026-08-25 17:46:04,311.311 INFO    ] 🔍 Lock file Order ID: TM03202401260825174541996, TS: 2026-08-25 17:45:58
[2026-08-25 17:46:04,324.324 INFO    ] ✅ Order lock valid for TM03202401260825174541996
[2026-08-25 17:46:04,375.375 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 17:46:04,378.378 INFO    ] processing access code 85336216 for order TM03202401260825174541996
[2026-08-25 17:46:04,382.382 INFO    ] 🔍 Lock file Order ID: TM03202401260825174541996, TS: 2026-08-25 17:45:58
[2026-08-25 17:46:04,426.426 INFO    ] ✅ Order lock valid for TM03202401260825174541996
[2026-08-25 17:46:04,440.440 INFO    ] 2026-08-25 17:46:04
[2026-08-25 17:46:04,488.488 INFO    ] 200
[2026-08-25 17:46:04,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:46:04,499.499 INFO    ] 85336216
[2026-08-25 17:46:04,548.548 INFO    ] 2026-08-25 17:46:04
[2026-08-25 17:46:04,602.602 INFO    ] session id :685605296
[2026-08-25 17:46:04,616.616 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=85336216&imei=TM03202401&session_id=685605296
[2026-08-25 17:46:05,282.282 INFO    ] 200
[2026-08-25 17:46:05,287.287 INFO    ] {"data": {"access_code": "85336216", "order_id": "TM03202401260825174541996", "bill_amount": "40.0", "invoice_bill": "40.0", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500732", "offer_id": "", "door_id": "1", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500732-1004.png", "tray_id": "11", "mrp": "20", "name": "Maxvita Tomato Potato Chips 40gm", "sku_total": 20}, {"offer_desc": "", "qty": 1, "skuid": "4500713", "offer_id": "", "door_id": "1", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "tray_id": "12", "mrp": "20", "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "sku_total": 20}], "mobile": "7806857430"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 17:46:05,293.293 INFO    ] 40
[2026-08-25 17:46:05,298.298 INFO    ] TM03202401260825174541996
[2026-08-25 17:46:05,303.303 INFO    ] 7806857430
[2026-08-25 17:46:05,309.309 INFO    ] 2026-08-25 17:46:05
[2026-08-25 17:46:05,314.314 INFO    ] Door Opening for user mobile ending with  seven four three zero 
[2026-08-25 17:46:05,318.318 INFO    ] Door Opening for user mobile ending with  seven four three zero 
[2026-08-25 17:46:05,323.323 INFO    ] 3dabbfa949572f06ca85f42ac673ed68
[2026-08-25 17:46:05,328.328 INFO    ] 2026-08-25 17:46:05
[2026-08-25 17:46:05,332.332 INFO    ] playing audio file
[2026-08-25 17:46:05,351.351 INFO    ] 2026-08-25 17:46:05
[2026-08-25 17:46:05,359.359 INFO    ] 2026-08-25 17:46:05
[2026-08-25 17:46:05,364.364 INFO    ] publish_status: order_id=TM03202401260825174541996
[2026-08-25 17:46:05,369.369 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825174541996
[2026-08-25 17:46:05,487.487 INFO    ] [publish_status] Message added to stream with ID: 1787660165472-0
[2026-08-25 17:46:05,503.503 INFO    ] Published to order:TM03202401260825174541996: {'order_id': 'TM03202401260825174541996', 'server_status': 'order-started', 'timestamp': '2026-08-25T12:16:05.360875Z', 'server_response': '{"data": {"order_id": "TM03202401260825174541996", "mobile": "7806857430", "proposed_sku_json": [{"mrp": "20", "unit_price": 20, "sku_total": 20, "door_id": "1", "name": "Maxvita Tomato Potato Chips 40gm", "tray_id": "11", "image_url": "https://images.tinymart.in/product/4500732-1004.png", "offer_id": "", "offer_desc": "", "qty": 1, "skuid": "4500732"}, {"mrp": "20", "unit_price": 20, "sku_total": 20, "door_id": "1", "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "tray_id": "12", "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "offer_id": "", "offer_desc": "", "qty": 1, "skuid": "4500713"}], "invoice_bill": "40.0", "bill_amount": "40.0", "access_code": "85336216"}, "msg": "Order Data", "status": true, "rstatus": true}'} (ID: 1787660165472-0)
[2026-08-25 17:46:06,098.098 INFO    ] {'order_id': 'TM03202401260825174541996', 'server_status': 'order-started', 'server_response': {'data': {'order_id': 'TM03202401260825174541996', 'mobile': '7806857430', 'proposed_sku_json': [{'mrp': '20', 'unit_price': 20, 'sku_total': 20, 'door_id': '1', 'name': 'Maxvita Tomato Potato Chips 40gm', 'tray_id': '11', 'image_url': 'https://images.tinymart.in/product/4500732-1004.png', 'offer_id': '', 'offer_desc': '', 'qty': 1, 'skuid': '4500732'}, {'mrp': '20', 'unit_price': 20, 'sku_total': 20, 'door_id': '1', 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'tray_id': '12', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'offer_id': '', 'offer_desc': '', 'qty': 1, 'skuid': '4500713'}], 'invoice_bill': '40.0', 'bill_amount': '40.0', 'access_code': '85336216'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}}
[2026-08-25 17:46:06,133.133 INFO    ] 200
[2026-08-25 17:46:06,179.179 INFO    ] {"data":{"order_id":"TM03202401260825174541996","server_status":"order-started","server_response":{"data":{"order_id":"TM03202401260825174541996","mobile":"7806857430","proposed_sku_json":[{"mrp":"20","unit_price":20,"sku_total":20,"door_id":"1","name":"Maxvita Tomato Potato Chips 40gm","tray_id":"11","image_url":"https:\/\/images.tinymart.in\/product\/4500732-1004.png","offer_id":"","offer_desc":"","qty":1,"skuid":"4500732"},{"mrp":"20","unit_price":20,"sku_total":20,"door_id":"1","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","tray_id":"12","image_url":"https:\/\/images.tinymart.in\/product\/4500713-9506.jpg","offer_id":"","offer_desc":"","qty":1,"skuid":"4500713"}],"invoice_bill":"40.0","bill_amount":"40.0","access_code":"85336216"},"msg":"Order Data","status":true,"rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:46:06,230.230 INFO    ] {'data': {'order_id': 'TM03202401260825174541996', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'data': {'order_id': 'TM03202401260825174541996', 'mobile': '7806857430', 'access_code': '85336216', 'bill_amount': '40.0', 'proposed_sku_json': [{'offer_desc': '', 'skuid': '4500732', 'unit_price': 20, 'door_id': '1', 'qty': 1, 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500732-1004.png', 'offer_id': '', 'tray_id': '11', 'sku_total': 20, 'name': 'Maxvita Tomato Potato Chips 40gm'}, {'offer_desc': '', 'skuid': '4500713', 'unit_price': 20, 'door_id': '1', 'qty': 1, 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'offer_id': '', 'tray_id': '12', 'sku_total': 20, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}], 'invoice_bill': '40.0'}, 'msg': 'Order Data', 'status': True}}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 17:46:06,251.251 INFO    ] 2026-08-25 17:46:06
[2026-08-25 17:46:06,316.316 INFO    ] 200
[2026-08-25 17:46:06,319.319 INFO    ] True
[2026-08-25 17:46:06,485.485 INFO    ] 200
[2026-08-25 17:46:06,488.488 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 17:46:06,491.491 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'voiceNote': 'Please Wait', 'rstatus': False}
[2026-08-25 17:46:06,494.494 INFO    ] *** process_order ***
[2026-08-25 17:46:07,716.716 INFO    ] 200
[2026-08-25 17:46:07,719.719 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 17:46:07,721.721 INFO    ] {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True}
[2026-08-25 17:46:07,724.724 INFO    ] *** process_order ***
[2026-08-25 17:46:07,727.727 INFO    ] publish_status: order_id=TM03202401260825174541996
[2026-08-25 17:46:07,729.729 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825174541996
[2026-08-25 17:46:07,820.820 INFO    ] [publish_status] Message added to stream with ID: 1787660167813-0
[2026-08-25 17:46:07,823.823 INFO    ] Published to order:TM03202401260825174541996: {'order_id': 'TM03202401260825174541996', 'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "You can pull the door now."}, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Door is open...", "rstatus": true}'} (ID: 1787660167813-0)
[2026-08-25 17:46:08,892.892 INFO    ] 2026-08-25 17:46:08
[2026-08-25 17:46:08,895.895 INFO    ] publish_status: order_id=TM03202401260825174541996
[2026-08-25 17:46:08,898.898 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825174541996
[2026-08-25 17:46:08,981.981 INFO    ] [publish_status] Message added to stream with ID: 1787660168983-0
[2026-08-25 17:46:08,984.984 INFO    ] Published to order:TM03202401260825174541996: {'order_id': 'TM03202401260825174541996', 'server_status': 'processOrder', 'timestamp': '2026-08-25T12:16:08.893890Z', 'server_response': '{"SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "status": "True", "voiceNote": "Please Wait", "rstatus": true}'} (ID: 1787660168983-0)
[2026-08-25 17:46:09,114.114 INFO    ] {'order_id': 'TM03202401260825174541996', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True', 'voiceNote': 'Please Wait', 'rstatus': True}}
[2026-08-25 17:46:09,117.117 INFO    ] 200
[2026-08-25 17:46:09,119.119 INFO    ] {"data":{"order_id":"TM03202401260825174541996","server_status":"processOrder","server_response":{"SectionStatus":{"Header":" Your order is under process  ","Note":"","UI_Header":"","SubHeader":"Please wait while we process your order"},"delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"SectionMain":{"Header":"Processing Order"},"status":"true","voiceNote":"Please Wait","rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:46:09,122.122 INFO    ] {'data': {'order_id': 'TM03202401260825174541996', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Header': ' Your order is under process  ', 'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'voiceNote': 'Please Wait', 'rstatus': True}}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 17:46:09,125.125 INFO    ] 2026-08-25 17:46:09
[2026-08-25 17:46:09,127.127 INFO    ] None
[2026-08-25 17:46:09,130.130 INFO    ] Opening Door now
[2026-08-25 17:46:09,132.132 INFO    ] Opening Door now
[2026-08-25 17:46:09,135.135 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 17:46:09,138.138 INFO    ] 2026-08-25 17:46:09
[2026-08-25 17:46:09,140.140 INFO    ] playing audio file
[2026-08-25 17:46:09,158.158 INFO    ] 2026-08-25 17:46:09
[2026-08-25 17:46:09,161.161 INFO    ] 2026-08-25 17:46:09
[2026-08-25 17:46:12,223.223 INFO    ] 200
[2026-08-25 17:46:12,226.226 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}, {"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 17:46:12,229.229 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}, {'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Door 1 is open now', 'rstatus': False}
[2026-08-25 17:46:15,295.295 INFO    ] 200
[2026-08-25 17:46:15,298.298 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}, {"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:46:15,301.301 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}, {'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-08-25 17:46:18,375.375 INFO    ] 200
[2026-08-25 17:46:18,377.377 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}, {"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 17:46:18,380.380 INFO    ] Please close door 1
[2026-08-25 17:46:18,383.383 INFO    ] Please close door 1
[2026-08-25 17:46:18,385.385 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 17:46:18,388.388 INFO    ] 2026-08-25 17:46:18
[2026-08-25 17:46:18,390.390 INFO    ] playing audio file
[2026-08-25 17:46:18,408.408 INFO    ] 2026-08-25 17:46:18
[2026-08-25 17:46:18,412.412 INFO    ] publish_status: order_id=TM03202401260825174541996
[2026-08-25 17:46:18,415.415 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825174541996
[2026-08-25 17:46:18,509.509 INFO    ] [publish_status] Message added to stream with ID: 1787660178511-0
[2026-08-25 17:46:18,511.511 INFO    ] Published to order:TM03202401260825174541996: {'order_id': 'TM03202401260825174541996', 'server_status': 'OrderStatus', 'timestamp': '2026-08-25T12:16:18.410514Z', 'server_response': '{"SectionSKU": {"skus": [{"qty": 1, "name": "Maxvita Tomato Potato Chips 40gm"}, {"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}], "Header": "Pick the below items from the door"}, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "error": {"data": {}, "umessage": "In Progress", "code": 20001, "tmessage": "In Progress"}, "SectionMain": {"Header": "Door Open"}, "status": "False", "voiceNote": "Please close door 1", "rstatus": false}'} (ID: 1787660178511-0)
[2026-08-25 17:46:19,073.073 INFO    ] {'order_id': 'TM03202401260825174541996', 'server_status': 'OrderStatus', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}, {'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}}
[2026-08-25 17:46:19,076.076 INFO    ] 200
[2026-08-25 17:46:19,079.079 INFO    ] {"data":{"order_id":"TM03202401260825174541996","server_status":"OrderStatus","server_response":{"SectionSKU":{"skus":[{"qty":1,"name":"Maxvita Tomato Potato Chips 40gm"},{"qty":1,"name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"}],"Header":"Pick the below items from the door"},"SectionStatus":{"Header":"Please Close Door 1","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"},"error":{"data":[],"umessage":"In Progress","code":20001,"tmessage":"In Progress"},"SectionMain":{"Header":"Door Open"},"status":"false","voiceNote":"Please close door 1","rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:46:19,082.082 INFO    ] {'data': {'order_id': 'TM03202401260825174541996', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}, {'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'error': {'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001}, 'voiceNote': 'Please close door 1', 'rstatus': False}}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 17:46:19,085.085 INFO    ] {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Tomato Potato Chips 40gm'}, {'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}], 'Header': 'Pick the below items from the door'}, 'SectionStatus': {'Header': 'Please Close Door 1', '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'}, 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'False', 'voiceNote': 'Please close door 1', 'rstatus': False}
[2026-08-25 17:46:22,154.154 INFO    ] 200
[2026-08-25 17:46:22,157.157 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 17:46:22,160.160 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-08-25 17:46:22,163.163 INFO    ] 2026-08-25 17:46:22
[2026-08-25 17:46:22,165.165 INFO    ] Order Completed 
[2026-08-25 17:46:22,168.168 INFO    ] Order Completed 
[2026-08-25 17:46:22,171.171 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 17:46:22,174.174 INFO    ] 2026-08-25 17:46:22
[2026-08-25 17:46:22,176.176 INFO    ] playing audio file
[2026-08-25 17:46:22,194.194 INFO    ] 2026-08-25 17:46:22
[2026-08-25 17:46:22,198.198 INFO    ] {'SectionStatus': {'Header': ' Order is complete ', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate'}, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True', 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-08-25 17:46:22,201.201 INFO    ] 2026-08-25 17:46:22
[2026-08-25 17:46:24,575.575 INFO    ] 200
[2026-08-25 17:46:24,577.577 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825174541996", "skus": [], "res": "True", "total_amount": 0, "logic": "WBL"}
[2026-08-25 17:46:24,580.580 INFO    ] {'skus': [], 'total_amount': 0, 'logic': 'WBL', 'res': 'True', 'orderId': 'TM03202401260825174541996', 'anomaly': 0, 'rstatus': True}
[2026-08-25 17:46:24,582.582 INFO    ] {'skus': [], 'total_amount': 0, 'logic': 'WBL', 'res': 'True', 'orderId': 'TM03202401260825174541996', 'anomaly': 0, 'rstatus': True}
[2026-08-25 17:46:24,585.585 INFO    ] 2026-08-25 17:46:24
[2026-08-25 17:46:24,587.587 INFO    ] 2026-08-25 17:46:24
[2026-08-25 17:46:24,589.589 INFO    ] 40
[2026-08-25 17:46:24,592.592 INFO    ] 2026-08-25 17:46:24
[2026-08-25 17:46:24,594.594 INFO    ] 2026-08-25 17:46:24
[2026-08-25 17:46:24,597.597 INFO    ]  Your Bill Amount is 0
[2026-08-25 17:46:24,600.600 INFO    ]  Your Bill Amount is 0
[2026-08-25 17:46:24,602.602 INFO    ] b7d9e26c3a450f82ce44338986aec566
[2026-08-25 17:46:24,605.605 INFO    ] 2026-08-25 17:46:24
[2026-08-25 17:46:24,607.607 INFO    ] playing audio file
[2026-08-25 17:46:24,626.626 INFO    ] 2026-08-25 17:46:24
[2026-08-25 17:46:24,629.629 INFO    ] 2026-08-25 17:46:24
[2026-08-25 17:46:24,632.632 INFO    ] publish_status: order_id=TM03202401260825174541996
[2026-08-25 17:46:24,635.635 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825174541996
[2026-08-25 17:46:24,708.708 INFO    ] [publish_status] Message added to stream with ID: 1787660184710-0
[2026-08-25 17:46:24,710.710 INFO    ] Published to order:TM03202401260825174541996: {'order_id': 'TM03202401260825174541996', 'server_status': 'invoiceOrder', 'timestamp': '2026-08-25T12:16:24.630461Z', 'server_response': '{"skus": [], "total_amount": 0, "logic": "WBL", "res": "True", "orderId": "TM03202401260825174541996", "anomaly": 0, "rstatus": true}'} (ID: 1787660184710-0)
[2026-08-25 17:46:25,563.563 INFO    ] {'order_id': 'TM03202401260825174541996', 'server_status': 'invoiceOrder', 'server_response': {'skus': [], 'total_amount': 0, 'logic': 'WBL', 'res': 'True', 'orderId': 'TM03202401260825174541996', 'anomaly': 0, 'rstatus': True}}
[2026-08-25 17:46:25,565.565 INFO    ] 200
[2026-08-25 17:46:25,568.568 INFO    ] {"data":{"order_id":"TM03202401260825174541996","server_status":"invoiceOrder","server_response":{"skus":[],"total_amount":0,"logic":"WBL","res":"true","orderId":"TM03202401260825174541996","anomaly":0,"rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 17:46:25,570.570 INFO    ] {'data': {'order_id': 'TM03202401260825174541996', 'server_status': 'invoiceOrder', 'server_response': {'skus': [], 'logic': 'WBL', 'res': 'true', 'orderId': 'TM03202401260825174541996', 'rstatus': True, 'total_amount': 0, 'anomaly': 0}}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 17:46:25,573.573 INFO    ] {'data': {'order_id': 'TM03202401260825174541996', 'server_status': 'invoiceOrder', 'server_response': {'skus': [], 'logic': 'WBL', 'res': 'true', 'orderId': 'TM03202401260825174541996', 'rstatus': True, 'total_amount': 0, 'anomaly': 0}}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 17:46:25,576.576 INFO    ] 2026-08-25 17:46:25
[2026-08-25 17:46:28,957.957 INFO    ] 200
[2026-08-25 17:46:28,960.960 INFO    ] {"orders_synced": ["TM08202201230220183652764", "TM08202201230227153633830", "TM06202304230615192111045", "TM06202304230623120159705", "TM06202304230623120333811", "TM06202304230623133658760", "TM06202304250610165735127", "TM06202304250624103203715", "TM03202401260819174013487"], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996", "TM03202401260825174541996"], "status": true}
[2026-08-25 17:46:28,963.963 INFO    ] 2026-08-25 17:46:28
[2026-08-25 17:46:29,088.088 INFO    ] 200
[2026-08-25 17:46:29,091.091 INFO    ] True
[2026-08-25 17:46:29,093.093 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825174541996
[2026-08-25 17:46:29,097.097 INFO    ] start order file deleted
[2026-08-25 17:46:29,099.099 INFO    ] Checking for system updates...
[2026-08-25 17:46:29,137.137 INFO    ] 200
[2026-08-25 17:46:29,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:46:29,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:46:29,194.194 INFO    ] No update needed
[2026-08-25 17:46:29,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 17:46:29,238.238 INFO    ] 200
[2026-08-25 17:46:29,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:46:29,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:46:29,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:46:29,338.338 INFO    ] No camera update needed
[2026-08-25 17:46:29,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:46:29,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:46:29,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:46:29,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:46:31,394.394 INFO    ] ================================================
[2026-08-25 17:46:31,410.410 INFO    ] Launching Daemon at Tue Aug 25 17:46:31 IST 2026
[2026-08-25 17:46:31,421.421 INFO    ] ================================================
[2026-08-25 17:46:32,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:46:32
[2026-08-25 17:46:32,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:46:32,946.946 INFO    ] Initializing speech engine...
[2026-08-25 17:46:32,954.954 INFO    ] 2026-08-25 17:46:32
[2026-08-25 17:46:33,237.237 INFO    ] 2026-08-25 17:46:33
[2026-08-25 17:46:33,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:46:33,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:46:33,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:46:33,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:46:33,733.733 INFO    ] time= 25/08/2026 17:46:33
[2026-08-25 17:46:33,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:46:33,817.817 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:46:33,951.951 INFO    ] No existing commands found in stream
[2026-08-25 17:46:38,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:46:38,981.981 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 17:46:39,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:46:39,925.925 INFO    ] Checking for system updates...
[2026-08-25 17:46:39,962.962 INFO    ] 200
[2026-08-25 17:46:39,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:46:40,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:46:40,021.021 INFO    ] No update needed
[2026-08-25 17:46:40,024.024 INFO    ] Checking for camera pi updates...
[2026-08-25 17:46:40,059.059 INFO    ] 200
[2026-08-25 17:46:40,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:46:40,108.108 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:46:40,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:46:40,165.165 INFO    ] No camera update needed
[2026-08-25 17:46:40,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:46:40,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:46:40,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:46:40,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:46:42,226.226 INFO    ] ================================================
[2026-08-25 17:46:42,241.241 INFO    ] Launching Daemon at Tue Aug 25 17:46:42 IST 2026
[2026-08-25 17:46:42,253.253 INFO    ] ================================================
[2026-08-25 17:46:42,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:46:42
[2026-08-25 17:46:43,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:46:43,715.715 INFO    ] Initializing speech engine...
[2026-08-25 17:46:43,722.722 INFO    ] 2026-08-25 17:46:43
[2026-08-25 17:46:43,982.982 INFO    ] 2026-08-25 17:46:43
[2026-08-25 17:46:44,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:46:44,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:46:44,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:46:44,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:46:44,478.478 INFO    ] time= 25/08/2026 17:46:44
[2026-08-25 17:46:44,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:46:44,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:46:44,685.685 INFO    ] No existing commands found in stream
[2026-08-25 17:46:49,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:46:49,703.703 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 17:46:52,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:46:52,619.619 INFO    ] Checking for system updates...
[2026-08-25 17:46:52,656.656 INFO    ] 200
[2026-08-25 17:46:52,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:46:52,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:46:52,718.718 INFO    ] No update needed
[2026-08-25 17:46:52,721.721 INFO    ] Checking for camera pi updates...
[2026-08-25 17:46:52,760.760 INFO    ] 200
[2026-08-25 17:46:52,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:46:52,803.803 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:46:52,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:46:52,862.862 INFO    ] No camera update needed
[2026-08-25 17:46:52,864.864 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:46:52,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:46:52,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:46:52,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:46:54,918.918 INFO    ] ================================================
[2026-08-25 17:46:54,933.933 INFO    ] Launching Daemon at Tue Aug 25 17:46:54 IST 2026
[2026-08-25 17:46:54,944.944 INFO    ] ================================================
[2026-08-25 17:46:55,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:46:55
[2026-08-25 17:46:56,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:46:56,616.616 INFO    ] Initializing speech engine...
[2026-08-25 17:46:56,623.623 INFO    ] 2026-08-25 17:46:56
[2026-08-25 17:46:56,909.909 INFO    ] 2026-08-25 17:46:56
[2026-08-25 17:46:57,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:46:57,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:46:57,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:46:57,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:46:57,440.440 INFO    ] time= 25/08/2026 17:46:57
[2026-08-25 17:46:57,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:46:57,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:46:57,610.610 INFO    ] No existing commands found in stream
[2026-08-25 17:47:02,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:47:02,642.642 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 17:47:05,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:47:05,022.022 INFO    ] Checking for system updates...
[2026-08-25 17:47:05,059.059 INFO    ] 200
[2026-08-25 17:47:05,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:05,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:47:05,123.123 INFO    ] No update needed
[2026-08-25 17:47:05,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 17:47:05,164.164 INFO    ] 200
[2026-08-25 17:47:05,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:05,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:47:05,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:47:05,262.262 INFO    ] No camera update needed
[2026-08-25 17:47:05,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:47:05,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:47:05,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:47:05,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:47:07,320.320 INFO    ] ================================================
[2026-08-25 17:47:07,336.336 INFO    ] Launching Daemon at Tue Aug 25 17:47:07 IST 2026
[2026-08-25 17:47:07,347.347 INFO    ] ================================================
[2026-08-25 17:47:07,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:47:07
[2026-08-25 17:47:08,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:47:08,953.953 INFO    ] Initializing speech engine...
[2026-08-25 17:47:08,968.968 INFO    ] 2026-08-25 17:47:08
[2026-08-25 17:47:09,249.249 INFO    ] 2026-08-25 17:47:09
[2026-08-25 17:47:09,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:47:09,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:47:09,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:47:09,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:47:09,795.795 INFO    ] time= 25/08/2026 17:47:09
[2026-08-25 17:47:09,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:47:09,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:47:09,956.956 INFO    ] No existing commands found in stream
[2026-08-25 17:47:14,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:47:14,979.979 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-25 17:47:17,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:47:17,882.882 INFO    ] Checking for system updates...
[2026-08-25 17:47:17,918.918 INFO    ] 200
[2026-08-25 17:47:17,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:17,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:47:17,975.975 INFO    ] No update needed
[2026-08-25 17:47:17,978.978 INFO    ] Checking for camera pi updates...
[2026-08-25 17:47:18,012.012 INFO    ] 200
[2026-08-25 17:47:18,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:18,059.059 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:47:18,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:47:18,109.109 INFO    ] No camera update needed
[2026-08-25 17:47:18,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:47:18,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:47:18,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:47:18,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:47:20,164.164 INFO    ] ================================================
[2026-08-25 17:47:20,179.179 INFO    ] Launching Daemon at Tue Aug 25 17:47:20 IST 2026
[2026-08-25 17:47:20,190.190 INFO    ] ================================================
[2026-08-25 17:47:20,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:47:20
[2026-08-25 17:47:21,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:47:21,643.643 INFO    ] Initializing speech engine...
[2026-08-25 17:47:21,653.653 INFO    ] 2026-08-25 17:47:21
[2026-08-25 17:47:21,907.907 INFO    ] 2026-08-25 17:47:21
[2026-08-25 17:47:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:47:22,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:47:22,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:47:22,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:47:22,391.391 INFO    ] time= 25/08/2026 17:47:22
[2026-08-25 17:47:22,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:47:22,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:47:22,595.595 INFO    ] No existing commands found in stream
[2026-08-25 17:47:27,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:47:27,623.623 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 17:47:31,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:47:31,441.441 INFO    ] Checking for system updates...
[2026-08-25 17:47:31,477.477 INFO    ] 200
[2026-08-25 17:47:31,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:31,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:47:31,537.537 INFO    ] No update needed
[2026-08-25 17:47:31,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 17:47:31,574.574 INFO    ] 200
[2026-08-25 17:47:31,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:31,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:47:31,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:47:31,668.668 INFO    ] No camera update needed
[2026-08-25 17:47:31,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:47:31,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:47:31,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:47:31,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:47:33,728.728 INFO    ] ================================================
[2026-08-25 17:47:33,743.743 INFO    ] Launching Daemon at Tue Aug 25 17:47:33 IST 2026
[2026-08-25 17:47:33,754.754 INFO    ] ================================================
[2026-08-25 17:47:34,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:47:34
[2026-08-25 17:47:35,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:47:35,366.366 INFO    ] Initializing speech engine...
[2026-08-25 17:47:35,378.378 INFO    ] 2026-08-25 17:47:35
[2026-08-25 17:47:35,666.666 INFO    ] 2026-08-25 17:47:35
[2026-08-25 17:47:35,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:47:35,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:47:36,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:47:36,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:47:36,212.212 INFO    ] time= 25/08/2026 17:47:36
[2026-08-25 17:47:36,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:47:36,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:47:36,390.390 INFO    ] No existing commands found in stream
[2026-08-25 17:47:41,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:47:41,424.424 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 17:47:42,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:47:42,871.871 INFO    ] Checking for system updates...
[2026-08-25 17:47:42,907.907 INFO    ] 200
[2026-08-25 17:47:42,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:42,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:47:42,964.964 INFO    ] No update needed
[2026-08-25 17:47:42,966.966 INFO    ] Checking for camera pi updates...
[2026-08-25 17:47:43,000.000 INFO    ] 200
[2026-08-25 17:47:43,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:43,044.044 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:47:43,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:47:43,105.105 INFO    ] No camera update needed
[2026-08-25 17:47:43,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:47:43,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:47:43,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:47:43,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:47:45,159.159 INFO    ] ================================================
[2026-08-25 17:47:45,174.174 INFO    ] Launching Daemon at Tue Aug 25 17:47:45 IST 2026
[2026-08-25 17:47:45,185.185 INFO    ] ================================================
[2026-08-25 17:47:45,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:47:45
[2026-08-25 17:47:46,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:47:46,719.719 INFO    ] Initializing speech engine...
[2026-08-25 17:47:46,741.741 INFO    ] 2026-08-25 17:47:46
[2026-08-25 17:47:46,996.996 INFO    ] 2026-08-25 17:47:46
[2026-08-25 17:47:47,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:47:47,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:47:47,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:47:47,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:47:47,462.462 INFO    ] time= 25/08/2026 17:47:47
[2026-08-25 17:47:47,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:47:47,565.565 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:47:47,726.726 INFO    ] No existing commands found in stream
[2026-08-25 17:47:52,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:47:52,747.747 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 17:47:55,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:47:55,501.501 INFO    ] Checking for system updates...
[2026-08-25 17:47:55,537.537 INFO    ] 200
[2026-08-25 17:47:55,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:55,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:47:55,595.595 INFO    ] No update needed
[2026-08-25 17:47:55,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 17:47:55,635.635 INFO    ] 200
[2026-08-25 17:47:55,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:47:55,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:47:55,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:47:55,730.730 INFO    ] No camera update needed
[2026-08-25 17:47:55,732.732 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:47:55,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:47:55,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:47:55,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:47:57,791.791 INFO    ] ================================================
[2026-08-25 17:47:57,807.807 INFO    ] Launching Daemon at Tue Aug 25 17:47:57 IST 2026
[2026-08-25 17:47:57,818.818 INFO    ] ================================================
[2026-08-25 17:47:58,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:47:58
[2026-08-25 17:47:58,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:47:59,273.273 INFO    ] Initializing speech engine...
[2026-08-25 17:47:59,280.280 INFO    ] 2026-08-25 17:47:59
[2026-08-25 17:47:59,526.526 INFO    ] 2026-08-25 17:47:59
[2026-08-25 17:47:59,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:47:59,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:47:59,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:47:59,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:48:00,033.033 INFO    ] time= 25/08/2026 17:47:59
[2026-08-25 17:48:00,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:48:00,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:48:00,239.239 INFO    ] No existing commands found in stream
[2026-08-25 17:48:05,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:48:05,270.270 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 17:48:07,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:48:07,197.197 INFO    ] Checking for system updates...
[2026-08-25 17:48:07,235.235 INFO    ] 200
[2026-08-25 17:48:07,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:07,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:48:07,301.301 INFO    ] No update needed
[2026-08-25 17:48:07,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 17:48:07,338.338 INFO    ] 200
[2026-08-25 17:48:07,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:07,385.385 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:48:07,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:48:07,437.437 INFO    ] No camera update needed
[2026-08-25 17:48:07,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:48:07,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:48:07,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:48:07,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:48:09,491.491 INFO    ] ================================================
[2026-08-25 17:48:09,507.507 INFO    ] Launching Daemon at Tue Aug 25 17:48:09 IST 2026
[2026-08-25 17:48:09,517.517 INFO    ] ================================================
[2026-08-25 17:48:10,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:48:10
[2026-08-25 17:48:10,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:48:11,049.049 INFO    ] Initializing speech engine...
[2026-08-25 17:48:11,068.068 INFO    ] 2026-08-25 17:48:11
[2026-08-25 17:48:11,317.317 INFO    ] 2026-08-25 17:48:11
[2026-08-25 17:48:11,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:48:11,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:48:11,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:48:11,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:48:11,798.798 INFO    ] time= 25/08/2026 17:48:11
[2026-08-25 17:48:11,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:48:11,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:48:12,023.023 INFO    ] No existing commands found in stream
[2026-08-25 17:48:17,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:48:17,051.051 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 17:48:18,027.027 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:48:18,030.030 INFO    ] Checking for system updates...
[2026-08-25 17:48:18,066.066 INFO    ] 200
[2026-08-25 17:48:18,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:18,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:48:18,123.123 INFO    ] No update needed
[2026-08-25 17:48:18,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 17:48:18,166.166 INFO    ] 200
[2026-08-25 17:48:18,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:18,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:48:18,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:48:18,259.259 INFO    ] No camera update needed
[2026-08-25 17:48:18,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:48:18,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:48:18,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:48:18,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:48:20,317.317 INFO    ] ================================================
[2026-08-25 17:48:20,333.333 INFO    ] Launching Daemon at Tue Aug 25 17:48:20 IST 2026
[2026-08-25 17:48:20,343.343 INFO    ] ================================================
[2026-08-25 17:48:20,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:48:20
[2026-08-25 17:48:21,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:48:21,815.815 INFO    ] Initializing speech engine...
[2026-08-25 17:48:21,823.823 INFO    ] 2026-08-25 17:48:21
[2026-08-25 17:48:22,079.079 INFO    ] 2026-08-25 17:48:22
[2026-08-25 17:48:22,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:48:22,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:48:22,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:48:22,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:48:22,567.567 INFO    ] time= 25/08/2026 17:48:22
[2026-08-25 17:48:22,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:48:22,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:48:22,766.766 INFO    ] No existing commands found in stream
[2026-08-25 17:48:27,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:48:27,790.790 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 17:48:28,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:48:28,856.856 INFO    ] Checking for system updates...
[2026-08-25 17:48:28,891.891 INFO    ] 200
[2026-08-25 17:48:28,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:28,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:48:28,956.956 INFO    ] No update needed
[2026-08-25 17:48:28,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 17:48:28,995.995 INFO    ] 200
[2026-08-25 17:48:28,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:29,042.042 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:48:29,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:48:29,186.186 INFO    ] No camera update needed
[2026-08-25 17:48:29,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:48:29,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:48:29,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:48:29,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:48:31,241.241 INFO    ] ================================================
[2026-08-25 17:48:31,256.256 INFO    ] Launching Daemon at Tue Aug 25 17:48:31 IST 2026
[2026-08-25 17:48:31,267.267 INFO    ] ================================================
[2026-08-25 17:48:31,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:48:31
[2026-08-25 17:48:32,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:48:32,773.773 INFO    ] Initializing speech engine...
[2026-08-25 17:48:32,788.788 INFO    ] 2026-08-25 17:48:32
[2026-08-25 17:48:33,069.069 INFO    ] 2026-08-25 17:48:33
[2026-08-25 17:48:33,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:48:33,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:48:33,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:48:33,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:48:33,628.628 INFO    ] time= 25/08/2026 17:48:33
[2026-08-25 17:48:33,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:48:33,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:48:33,828.828 INFO    ] No existing commands found in stream
[2026-08-25 17:48:38,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:48:38,861.861 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 17:48:41,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:48:41,571.571 INFO    ] Checking for system updates...
[2026-08-25 17:48:41,610.610 INFO    ] 200
[2026-08-25 17:48:41,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:41,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:48:41,672.672 INFO    ] No update needed
[2026-08-25 17:48:41,675.675 INFO    ] Checking for camera pi updates...
[2026-08-25 17:48:41,711.711 INFO    ] 200
[2026-08-25 17:48:41,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:41,755.755 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:48:41,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:48:41,803.803 INFO    ] No camera update needed
[2026-08-25 17:48:41,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:48:41,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:48:41,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:48:41,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:48:43,858.858 INFO    ] ================================================
[2026-08-25 17:48:43,873.873 INFO    ] Launching Daemon at Tue Aug 25 17:48:43 IST 2026
[2026-08-25 17:48:43,884.884 INFO    ] ================================================
[2026-08-25 17:48:44,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:48:44
[2026-08-25 17:48:45,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:48:45,341.341 INFO    ] Initializing speech engine...
[2026-08-25 17:48:45,349.349 INFO    ] 2026-08-25 17:48:45
[2026-08-25 17:48:45,609.609 INFO    ] 2026-08-25 17:48:45
[2026-08-25 17:48:45,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:48:45,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:48:45,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:48:46,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:48:46,151.151 INFO    ] time= 25/08/2026 17:48:46
[2026-08-25 17:48:46,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:48:46,179.179 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:48:46,297.297 INFO    ] No existing commands found in stream
[2026-08-25 17:48:51,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:48:51,320.320 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 17:48:55,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:48:55,320.320 INFO    ] Checking for system updates...
[2026-08-25 17:48:55,356.356 INFO    ] 200
[2026-08-25 17:48:55,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:55,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:48:55,416.416 INFO    ] No update needed
[2026-08-25 17:48:55,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 17:48:55,456.456 INFO    ] 200
[2026-08-25 17:48:55,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:48:55,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:48:55,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:48:55,556.556 INFO    ] No camera update needed
[2026-08-25 17:48:55,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:48:55,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:48:55,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:48:55,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:48:57,614.614 INFO    ] ================================================
[2026-08-25 17:48:57,629.629 INFO    ] Launching Daemon at Tue Aug 25 17:48:57 IST 2026
[2026-08-25 17:48:57,640.640 INFO    ] ================================================
[2026-08-25 17:48:58,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:48:58
[2026-08-25 17:48:58,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:48:59,097.097 INFO    ] Initializing speech engine...
[2026-08-25 17:48:59,106.106 INFO    ] 2026-08-25 17:48:59
[2026-08-25 17:48:59,360.360 INFO    ] 2026-08-25 17:48:59
[2026-08-25 17:48:59,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:48:59,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:48:59,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:48:59,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:48:59,859.859 INFO    ] time= 25/08/2026 17:48:59
[2026-08-25 17:48:59,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:48:59,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:49:00,063.063 INFO    ] No existing commands found in stream
[2026-08-25 17:49:05,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:49:05,081.081 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 17:49:08,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:49:08,020.020 INFO    ] Checking for system updates...
[2026-08-25 17:49:08,059.059 INFO    ] 200
[2026-08-25 17:49:08,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:08,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:49:08,123.123 INFO    ] No update needed
[2026-08-25 17:49:08,126.126 INFO    ] Checking for camera pi updates...
[2026-08-25 17:49:08,163.163 INFO    ] 200
[2026-08-25 17:49:08,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:08,206.206 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:49:08,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:49:08,272.272 INFO    ] No camera update needed
[2026-08-25 17:49:08,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:49:08,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:49:08,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:49:08,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:49:10,327.327 INFO    ] ================================================
[2026-08-25 17:49:10,343.343 INFO    ] Launching Daemon at Tue Aug 25 17:49:10 IST 2026
[2026-08-25 17:49:10,353.353 INFO    ] ================================================
[2026-08-25 17:49:11,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:49:11
[2026-08-25 17:49:11,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:49:11,992.992 INFO    ] Initializing speech engine...
[2026-08-25 17:49:12,004.004 INFO    ] 2026-08-25 17:49:11
[2026-08-25 17:49:12,287.287 INFO    ] 2026-08-25 17:49:12
[2026-08-25 17:49:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:49:12,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:49:12,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:49:12,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:49:12,793.793 INFO    ] time= 25/08/2026 17:49:12
[2026-08-25 17:49:12,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:49:12,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:49:12,978.978 INFO    ] No existing commands found in stream
[2026-08-25 17:49:18,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:49:18,004.004 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 17:49:18,875.875 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:49:18,878.878 INFO    ] Checking for system updates...
[2026-08-25 17:49:18,918.918 INFO    ] 200
[2026-08-25 17:49:18,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:18,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:49:18,984.984 INFO    ] No update needed
[2026-08-25 17:49:18,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 17:49:19,022.022 INFO    ] 200
[2026-08-25 17:49:19,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:19,067.067 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:49:19,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:49:19,123.123 INFO    ] No camera update needed
[2026-08-25 17:49:19,126.126 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:49:19,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:49:19,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:49:19,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:49:21,180.180 INFO    ] ================================================
[2026-08-25 17:49:21,196.196 INFO    ] Launching Daemon at Tue Aug 25 17:49:21 IST 2026
[2026-08-25 17:49:21,207.207 INFO    ] ================================================
[2026-08-25 17:49:21,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:49:21
[2026-08-25 17:49:22,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:49:22,814.814 INFO    ] Initializing speech engine...
[2026-08-25 17:49:22,826.826 INFO    ] 2026-08-25 17:49:22
[2026-08-25 17:49:23,109.109 INFO    ] 2026-08-25 17:49:23
[2026-08-25 17:49:23,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:49:23,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:49:23,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:49:23,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:49:23,593.593 INFO    ] time= 25/08/2026 17:49:23
[2026-08-25 17:49:23,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:49:23,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:49:23,816.816 INFO    ] No existing commands found in stream
[2026-08-25 17:49:28,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:49:28,832.832 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 17:49:32,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:49:32,962.962 INFO    ] Checking for system updates...
[2026-08-25 17:49:33,020.020 INFO    ] 200
[2026-08-25 17:49:33,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:33,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:49:33,080.080 INFO    ] No update needed
[2026-08-25 17:49:33,083.083 INFO    ] Checking for camera pi updates...
[2026-08-25 17:49:33,121.121 INFO    ] 200
[2026-08-25 17:49:33,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:33,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:49:33,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:49:33,216.216 INFO    ] No camera update needed
[2026-08-25 17:49:33,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:49:33,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:49:33,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:49:33,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:49:35,275.275 INFO    ] ================================================
[2026-08-25 17:49:35,290.290 INFO    ] Launching Daemon at Tue Aug 25 17:49:35 IST 2026
[2026-08-25 17:49:35,301.301 INFO    ] ================================================
[2026-08-25 17:49:35,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:49:35
[2026-08-25 17:49:36,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:49:36,816.816 INFO    ] Initializing speech engine...
[2026-08-25 17:49:36,822.822 INFO    ] 2026-08-25 17:49:36
[2026-08-25 17:49:37,084.084 INFO    ] 2026-08-25 17:49:37
[2026-08-25 17:49:37,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:49:37,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:49:37,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:49:37,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:49:37,627.627 INFO    ] time= 25/08/2026 17:49:37
[2026-08-25 17:49:37,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:49:37,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:49:37,781.781 INFO    ] No existing commands found in stream
[2026-08-25 17:49:42,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:49:42,798.798 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 17:49:47,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:49:47,068.068 INFO    ] Checking for system updates...
[2026-08-25 17:49:47,108.108 INFO    ] 200
[2026-08-25 17:49:47,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:47,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:49:47,172.172 INFO    ] No update needed
[2026-08-25 17:49:47,176.176 INFO    ] Checking for camera pi updates...
[2026-08-25 17:49:47,213.213 INFO    ] 200
[2026-08-25 17:49:47,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:47,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:49:47,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:49:47,314.314 INFO    ] No camera update needed
[2026-08-25 17:49:47,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:49:47,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:49:47,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:49:47,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:49:49,372.372 INFO    ] ================================================
[2026-08-25 17:49:49,388.388 INFO    ] Launching Daemon at Tue Aug 25 17:49:49 IST 2026
[2026-08-25 17:49:49,399.399 INFO    ] ================================================
[2026-08-25 17:49:49,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:49:49
[2026-08-25 17:49:50,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:49:50,865.865 INFO    ] Initializing speech engine...
[2026-08-25 17:49:50,871.871 INFO    ] 2026-08-25 17:49:50
[2026-08-25 17:49:51,158.158 INFO    ] 2026-08-25 17:49:51
[2026-08-25 17:49:51,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:49:51,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:49:51,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:49:51,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:49:51,539.539 INFO    ] time= 25/08/2026 17:49:51
[2026-08-25 17:49:51,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:49:51,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:49:51,633.633 INFO    ] No existing commands found in stream
[2026-08-25 17:49:56,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:49:56,655.655 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 17:49:57,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:49:57,873.873 INFO    ] Checking for system updates...
[2026-08-25 17:49:57,908.908 INFO    ] 200
[2026-08-25 17:49:57,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:57,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:49:57,970.970 INFO    ] No update needed
[2026-08-25 17:49:57,973.973 INFO    ] Checking for camera pi updates...
[2026-08-25 17:49:58,006.006 INFO    ] 200
[2026-08-25 17:49:58,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:49:58,048.048 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:49:58,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:49:58,101.101 INFO    ] No camera update needed
[2026-08-25 17:49:58,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:49:58,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:49:58,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:49:58,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:50:00,156.156 INFO    ] ================================================
[2026-08-25 17:50:00,172.172 INFO    ] Launching Daemon at Tue Aug 25 17:50:00 IST 2026
[2026-08-25 17:50:00,183.183 INFO    ] ================================================
[2026-08-25 17:50:00,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:50:00
[2026-08-25 17:50:01,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:50:01,597.597 INFO    ] Initializing speech engine...
[2026-08-25 17:50:01,605.605 INFO    ] 2026-08-25 17:50:01
[2026-08-25 17:50:01,903.903 INFO    ] 2026-08-25 17:50:01
[2026-08-25 17:50:02,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:50:02,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:50:02,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:50:02,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:50:02,599.599 INFO    ] time= 25/08/2026 17:50:02
[2026-08-25 17:50:02,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:50:02,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:50:02,683.683 INFO    ] No existing commands found in stream
[2026-08-25 17:50:07,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:50:07,696.696 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 17:50:08,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:50:08,686.686 INFO    ] Checking for system updates...
[2026-08-25 17:50:08,722.722 INFO    ] 200
[2026-08-25 17:50:08,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:08,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:08,785.785 INFO    ] No update needed
[2026-08-25 17:50:08,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 17:50:08,826.826 INFO    ] 200
[2026-08-25 17:50:08,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:08,869.869 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:50:08,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:08,929.929 INFO    ] No camera update needed
[2026-08-25 17:50:08,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:50:08,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:50:08,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:50:08,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:50:10,987.987 INFO    ] ================================================
[2026-08-25 17:50:11,003.003 INFO    ] Launching Daemon at Tue Aug 25 17:50:10 IST 2026
[2026-08-25 17:50:11,014.014 INFO    ] ================================================
[2026-08-25 17:50:11,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:50:11
[2026-08-25 17:50:12,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:50:12,637.637 INFO    ] Initializing speech engine...
[2026-08-25 17:50:12,645.645 INFO    ] 2026-08-25 17:50:12
[2026-08-25 17:50:12,962.962 INFO    ] 2026-08-25 17:50:12
[2026-08-25 17:50:13,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:50:13,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:50:13,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:50:13,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:50:13,472.472 INFO    ] time= 25/08/2026 17:50:13
[2026-08-25 17:50:13,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:50:13,513.513 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:50:13,632.632 INFO    ] No existing commands found in stream
[2026-08-25 17:50:18,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:50:18,672.672 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 17:50:21,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:50:21,520.520 INFO    ] Checking for system updates...
[2026-08-25 17:50:21,557.557 INFO    ] 200
[2026-08-25 17:50:21,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:21,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:21,616.616 INFO    ] No update needed
[2026-08-25 17:50:21,618.618 INFO    ] Checking for camera pi updates...
[2026-08-25 17:50:21,653.653 INFO    ] 200
[2026-08-25 17:50:21,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:21,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:50:21,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:21,749.749 INFO    ] No camera update needed
[2026-08-25 17:50:21,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:50:21,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:50:21,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:50:21,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:50:23,808.808 INFO    ] ================================================
[2026-08-25 17:50:23,824.824 INFO    ] Launching Daemon at Tue Aug 25 17:50:23 IST 2026
[2026-08-25 17:50:23,835.835 INFO    ] ================================================
[2026-08-25 17:50:24,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:50:24
[2026-08-25 17:50:25,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:50:25,463.463 INFO    ] Initializing speech engine...
[2026-08-25 17:50:25,476.476 INFO    ] 2026-08-25 17:50:25
[2026-08-25 17:50:25,746.746 INFO    ] 2026-08-25 17:50:25
[2026-08-25 17:50:25,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:50:26,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:50:26,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:50:26,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:50:26,293.293 INFO    ] time= 25/08/2026 17:50:26
[2026-08-25 17:50:26,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:50:26,341.341 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:50:26,478.478 INFO    ] No existing commands found in stream
[2026-08-25 17:50:31,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:50:31,508.508 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 17:50:32,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:50:32,945.945 INFO    ] Checking for system updates...
[2026-08-25 17:50:32,988.988 INFO    ] 200
[2026-08-25 17:50:32,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:33,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:33,050.050 INFO    ] No update needed
[2026-08-25 17:50:33,053.053 INFO    ] Checking for camera pi updates...
[2026-08-25 17:50:33,089.089 INFO    ] 200
[2026-08-25 17:50:33,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:33,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:50:33,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:33,289.289 INFO    ] No camera update needed
[2026-08-25 17:50:33,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:50:33,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:50:33,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:50:33,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:50:35,345.345 INFO    ] ================================================
[2026-08-25 17:50:35,360.360 INFO    ] Launching Daemon at Tue Aug 25 17:50:35 IST 2026
[2026-08-25 17:50:35,370.370 INFO    ] ================================================
[2026-08-25 17:50:35,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:50:35
[2026-08-25 17:50:36,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:50:36,795.795 INFO    ] Initializing speech engine...
[2026-08-25 17:50:36,803.803 INFO    ] 2026-08-25 17:50:36
[2026-08-25 17:50:37,051.051 INFO    ] 2026-08-25 17:50:37
[2026-08-25 17:50:37,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:50:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:50:37,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:50:37,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:50:37,535.535 INFO    ] time= 25/08/2026 17:50:37
[2026-08-25 17:50:37,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:50:37,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:50:37,774.774 INFO    ] No existing commands found in stream
[2026-08-25 17:50:42,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:50:42,789.789 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 17:50:43,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:50:43,623.623 INFO    ] Checking for system updates...
[2026-08-25 17:50:43,663.663 INFO    ] 200
[2026-08-25 17:50:43,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:43,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:43,722.722 INFO    ] No update needed
[2026-08-25 17:50:43,724.724 INFO    ] Checking for camera pi updates...
[2026-08-25 17:50:43,761.761 INFO    ] 200
[2026-08-25 17:50:43,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:43,808.808 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:50:43,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:43,859.859 INFO    ] No camera update needed
[2026-08-25 17:50:43,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:50:43,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:50:43,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:50:43,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:50:45,921.921 INFO    ] ================================================
[2026-08-25 17:50:45,937.937 INFO    ] Launching Daemon at Tue Aug 25 17:50:45 IST 2026
[2026-08-25 17:50:45,948.948 INFO    ] ================================================
[2026-08-25 17:50:46,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:50:46
[2026-08-25 17:50:47,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:50:47,372.372 INFO    ] Initializing speech engine...
[2026-08-25 17:50:47,381.381 INFO    ] 2026-08-25 17:50:47
[2026-08-25 17:50:47,626.626 INFO    ] 2026-08-25 17:50:47
[2026-08-25 17:50:47,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:50:47,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:50:47,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:50:48,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:50:48,126.126 INFO    ] time= 25/08/2026 17:50:48
[2026-08-25 17:50:48,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:50:48,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:50:48,332.332 INFO    ] No existing commands found in stream
[2026-08-25 17:50:53,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:50:53,350.350 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 17:50:54,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:50:54,522.522 INFO    ] Checking for system updates...
[2026-08-25 17:50:54,557.557 INFO    ] 200
[2026-08-25 17:50:54,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:54,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:54,614.614 INFO    ] No update needed
[2026-08-25 17:50:54,616.616 INFO    ] Checking for camera pi updates...
[2026-08-25 17:50:54,650.650 INFO    ] 200
[2026-08-25 17:50:54,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:50:54,692.692 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:50:54,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:50:54,742.742 INFO    ] No camera update needed
[2026-08-25 17:50:54,744.744 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:50:54,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:50:54,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:50:54,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:50:56,797.797 INFO    ] ================================================
[2026-08-25 17:50:56,812.812 INFO    ] Launching Daemon at Tue Aug 25 17:50:56 IST 2026
[2026-08-25 17:50:56,823.823 INFO    ] ================================================
[2026-08-25 17:50:57,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:50:57
[2026-08-25 17:50:58,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:50:58,341.341 INFO    ] Initializing speech engine...
[2026-08-25 17:50:58,364.364 INFO    ] 2026-08-25 17:50:58
[2026-08-25 17:50:58,615.615 INFO    ] 2026-08-25 17:50:58
[2026-08-25 17:50:58,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:50:58,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:50:58,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:50:59,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:50:59,101.101 INFO    ] time= 25/08/2026 17:50:59
[2026-08-25 17:50:59,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:50:59,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:50:59,332.332 INFO    ] No existing commands found in stream
[2026-08-25 17:51:04,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:51:04,344.344 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 17:51:08,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:51:08,099.099 INFO    ] Checking for system updates...
[2026-08-25 17:51:08,139.139 INFO    ] 200
[2026-08-25 17:51:08,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:08,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:08,204.204 INFO    ] No update needed
[2026-08-25 17:51:08,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 17:51:08,244.244 INFO    ] 200
[2026-08-25 17:51:08,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:08,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:51:08,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:08,335.335 INFO    ] No camera update needed
[2026-08-25 17:51:08,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:51:08,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:51:08,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:51:08,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:51:10,392.392 INFO    ] ================================================
[2026-08-25 17:51:10,407.407 INFO    ] Launching Daemon at Tue Aug 25 17:51:10 IST 2026
[2026-08-25 17:51:10,417.417 INFO    ] ================================================
[2026-08-25 17:51:10,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:51:10
[2026-08-25 17:51:11,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:51:11,829.829 INFO    ] Initializing speech engine...
[2026-08-25 17:51:11,852.852 INFO    ] 2026-08-25 17:51:11
[2026-08-25 17:51:12,107.107 INFO    ] 2026-08-25 17:51:12
[2026-08-25 17:51:12,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:51:12,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:51:12,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:51:12,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:51:12,555.555 INFO    ] time= 25/08/2026 17:51:12
[2026-08-25 17:51:12,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:51:12,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:51:12,732.732 INFO    ] No existing commands found in stream
[2026-08-25 17:51:17,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:51:17,747.747 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 17:51:21,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:51:21,159.159 INFO    ] Checking for system updates...
[2026-08-25 17:51:21,197.197 INFO    ] 200
[2026-08-25 17:51:21,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:21,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:21,256.256 INFO    ] No update needed
[2026-08-25 17:51:21,259.259 INFO    ] Checking for camera pi updates...
[2026-08-25 17:51:21,299.299 INFO    ] 200
[2026-08-25 17:51:21,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:21,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:51:21,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:21,404.404 INFO    ] No camera update needed
[2026-08-25 17:51:21,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:51:21,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:51:21,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:51:21,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:51:23,465.465 INFO    ] ================================================
[2026-08-25 17:51:23,480.480 INFO    ] Launching Daemon at Tue Aug 25 17:51:23 IST 2026
[2026-08-25 17:51:23,491.491 INFO    ] ================================================
[2026-08-25 17:51:24,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:51:24
[2026-08-25 17:51:24,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:51:24,919.919 INFO    ] Initializing speech engine...
[2026-08-25 17:51:24,933.933 INFO    ] 2026-08-25 17:51:24
[2026-08-25 17:51:25,213.213 INFO    ] 2026-08-25 17:51:25
[2026-08-25 17:51:25,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:51:25,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:51:25,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:51:25,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:51:25,612.612 INFO    ] time= 25/08/2026 17:51:25
[2026-08-25 17:51:25,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:51:25,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:51:25,740.740 INFO    ] No existing commands found in stream
[2026-08-25 17:51:30,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:51:30,756.756 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 17:51:31,378.378 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:51:31,381.381 INFO    ] Checking for system updates...
[2026-08-25 17:51:31,426.426 INFO    ] 200
[2026-08-25 17:51:31,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:31,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:31,490.490 INFO    ] No update needed
[2026-08-25 17:51:31,496.496 INFO    ] Checking for camera pi updates...
[2026-08-25 17:51:31,532.532 INFO    ] 200
[2026-08-25 17:51:31,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:31,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:51:31,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:31,633.633 INFO    ] No camera update needed
[2026-08-25 17:51:31,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:51:31,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:51:31,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:51:31,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:51:33,691.691 INFO    ] ================================================
[2026-08-25 17:51:33,706.706 INFO    ] Launching Daemon at Tue Aug 25 17:51:33 IST 2026
[2026-08-25 17:51:33,717.717 INFO    ] ================================================
[2026-08-25 17:51:34,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:51:34
[2026-08-25 17:51:34,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:51:35,178.178 INFO    ] Initializing speech engine...
[2026-08-25 17:51:35,188.188 INFO    ] 2026-08-25 17:51:35
[2026-08-25 17:51:35,439.439 INFO    ] 2026-08-25 17:51:35
[2026-08-25 17:51:35,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:51:35,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:51:35,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:51:35,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:51:35,912.912 INFO    ] time= 25/08/2026 17:51:35
[2026-08-25 17:51:35,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:51:36,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:51:36,133.133 INFO    ] No existing commands found in stream
[2026-08-25 17:51:41,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:51:41,164.164 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 17:51:43,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:51:43,862.862 INFO    ] Checking for system updates...
[2026-08-25 17:51:43,899.899 INFO    ] 200
[2026-08-25 17:51:43,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:43,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:51:43,966.966 INFO    ] No update needed
[2026-08-25 17:51:43,969.969 INFO    ] Checking for camera pi updates...
[2026-08-25 17:51:44,004.004 INFO    ] 200
[2026-08-25 17:51:44,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:44,054.054 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:51:44,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:51:44,100.100 INFO    ] No camera update needed
[2026-08-25 17:51:44,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:51:44,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:51:44,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:51:44,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:51:46,159.159 INFO    ] ================================================
[2026-08-25 17:51:46,175.175 INFO    ] Launching Daemon at Tue Aug 25 17:51:46 IST 2026
[2026-08-25 17:51:46,186.186 INFO    ] ================================================
[2026-08-25 17:51:46,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:51:46
[2026-08-25 17:51:47,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:51:47,637.637 INFO    ] Initializing speech engine...
[2026-08-25 17:51:47,664.664 INFO    ] 2026-08-25 17:51:47
[2026-08-25 17:51:47,939.939 INFO    ] 2026-08-25 17:51:47
[2026-08-25 17:51:47,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:51:48,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:51:48,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:51:48,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:51:48,366.366 INFO    ] time= 25/08/2026 17:51:48
[2026-08-25 17:51:48,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:51:48,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:51:48,541.541 INFO    ] No existing commands found in stream
[2026-08-25 17:51:53,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:51:53,569.569 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 17:51:54,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:51:54,059.059 INFO    ] Checking for system updates...
[2026-08-25 17:51:54,095.095 INFO    ] 200
[2026-08-25 17:51:54,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:54,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:54,153.153 INFO    ] No update needed
[2026-08-25 17:51:54,155.155 INFO    ] Checking for camera pi updates...
[2026-08-25 17:51:54,189.189 INFO    ] 200
[2026-08-25 17:51:54,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:51:54,233.233 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:51:54,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:51:54,281.281 INFO    ] No camera update needed
[2026-08-25 17:51:54,283.283 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:51:54,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:51:54,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:51:54,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:51:56,336.336 INFO    ] ================================================
[2026-08-25 17:51:56,351.351 INFO    ] Launching Daemon at Tue Aug 25 17:51:56 IST 2026
[2026-08-25 17:51:56,361.361 INFO    ] ================================================
[2026-08-25 17:51:56,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:51:56
[2026-08-25 17:51:57,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:51:57,800.800 INFO    ] Initializing speech engine...
[2026-08-25 17:51:57,809.809 INFO    ] 2026-08-25 17:51:57
[2026-08-25 17:51:58,109.109 INFO    ] 2026-08-25 17:51:58
[2026-08-25 17:51:58,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:51:58,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:51:58,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:51:58,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:51:58,498.498 INFO    ] time= 25/08/2026 17:51:58
[2026-08-25 17:51:58,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:51:58,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:51:58,632.632 INFO    ] No existing commands found in stream
[2026-08-25 17:52:03,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:52:03,665.665 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 17:52:04,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:52:04,310.310 INFO    ] Checking for system updates...
[2026-08-25 17:52:04,350.350 INFO    ] 200
[2026-08-25 17:52:04,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:04,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:52:04,408.408 INFO    ] No update needed
[2026-08-25 17:52:04,411.411 INFO    ] Checking for camera pi updates...
[2026-08-25 17:52:04,445.445 INFO    ] 200
[2026-08-25 17:52:04,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:04,492.492 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:52:04,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:52:04,540.540 INFO    ] No camera update needed
[2026-08-25 17:52:04,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:52:04,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:52:04,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:52:04,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:52:06,596.596 INFO    ] ================================================
[2026-08-25 17:52:06,611.611 INFO    ] Launching Daemon at Tue Aug 25 17:52:06 IST 2026
[2026-08-25 17:52:06,622.622 INFO    ] ================================================
[2026-08-25 17:52:07,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:52:07
[2026-08-25 17:52:07,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:52:08,087.087 INFO    ] Initializing speech engine...
[2026-08-25 17:52:08,093.093 INFO    ] 2026-08-25 17:52:08
[2026-08-25 17:52:08,368.368 INFO    ] 2026-08-25 17:52:08
[2026-08-25 17:52:08,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:52:08,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:52:08,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:52:08,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:52:08,898.898 INFO    ] time= 25/08/2026 17:52:08
[2026-08-25 17:52:08,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:52:08,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:52:09,038.038 INFO    ] No existing commands found in stream
[2026-08-25 17:52:14,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:52:14,062.062 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 17:52:16,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:52:16,316.316 INFO    ] Checking for system updates...
[2026-08-25 17:52:16,352.352 INFO    ] 200
[2026-08-25 17:52:16,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:16,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:52:16,411.411 INFO    ] No update needed
[2026-08-25 17:52:16,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 17:52:16,448.448 INFO    ] 200
[2026-08-25 17:52:16,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:16,493.493 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:52:16,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:52:16,538.538 INFO    ] No camera update needed
[2026-08-25 17:52:16,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:52:16,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:52:16,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:52:16,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:52:18,594.594 INFO    ] ================================================
[2026-08-25 17:52:18,609.609 INFO    ] Launching Daemon at Tue Aug 25 17:52:18 IST 2026
[2026-08-25 17:52:18,620.620 INFO    ] ================================================
[2026-08-25 17:52:19,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:52:19
[2026-08-25 17:52:19,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:52:20,277.277 INFO    ] Initializing speech engine...
[2026-08-25 17:52:20,286.286 INFO    ] 2026-08-25 17:52:20
[2026-08-25 17:52:20,592.592 INFO    ] 2026-08-25 17:52:20
[2026-08-25 17:52:20,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:52:20,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:52:20,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:52:20,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:52:21,042.042 INFO    ] time= 25/08/2026 17:52:20
[2026-08-25 17:52:21,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:52:21,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:52:21,238.238 INFO    ] No existing commands found in stream
[2026-08-25 17:52:26,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:52:26,267.267 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 17:52:28,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:52:28,493.493 INFO    ] Checking for system updates...
[2026-08-25 17:52:28,535.535 INFO    ] 200
[2026-08-25 17:52:28,538.538 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:28,540.540 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 17:52:28,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 17:52:28,592.592 INFO    ] 200
[2026-08-25 17:52:28,595.595 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:28,598.598 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 17:52:28,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:52:28,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:52:28,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:52:28,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:52:30,654.654 INFO    ] ================================================
[2026-08-25 17:52:30,669.669 INFO    ] Launching Daemon at Tue Aug 25 17:52:30 IST 2026
[2026-08-25 17:52:30,679.679 INFO    ] ================================================
[2026-08-25 17:52:31,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:52:31
[2026-08-25 17:52:32,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:52:32,438.438 INFO    ] Initializing speech engine...
[2026-08-25 17:52:32,450.450 INFO    ] 2026-08-25 17:52:32
[2026-08-25 17:52:32,777.777 INFO    ] 2026-08-25 17:52:32
[2026-08-25 17:52:32,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:52:33,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:52:33,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:52:33,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:52:33,301.301 INFO    ] time= 25/08/2026 17:52:33
[2026-08-25 17:52:33,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:52:33,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:52:33,447.447 INFO    ] No existing commands found in stream
[2026-08-25 17:52:38,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:52:38,478.478 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 17:52:39,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:52:39,583.583 INFO    ] Checking for system updates...
[2026-08-25 17:52:39,619.619 INFO    ] 200
[2026-08-25 17:52:39,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:39,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:52:39,685.685 INFO    ] No update needed
[2026-08-25 17:52:39,688.688 INFO    ] Checking for camera pi updates...
[2026-08-25 17:52:39,722.722 INFO    ] 200
[2026-08-25 17:52:39,724.724 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:39,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:52:39,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:52:39,918.918 INFO    ] No camera update needed
[2026-08-25 17:52:39,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:52:39,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:52:39,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:52:39,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:52:41,973.973 INFO    ] ================================================
[2026-08-25 17:52:41,987.987 INFO    ] Launching Daemon at Tue Aug 25 17:52:41 IST 2026
[2026-08-25 17:52:42,998.998 INFO    ] ================================================
[2026-08-25 17:52:42,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:52:42
[2026-08-25 17:52:43,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:52:43,452.452 INFO    ] Initializing speech engine...
[2026-08-25 17:52:43,457.457 INFO    ] 2026-08-25 17:52:43
[2026-08-25 17:52:43,705.705 INFO    ] 2026-08-25 17:52:43
[2026-08-25 17:52:43,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:52:43,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:52:43,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:52:44,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:52:44,200.200 INFO    ] time= 25/08/2026 17:52:44
[2026-08-25 17:52:44,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:52:44,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:52:44,402.402 INFO    ] No existing commands found in stream
[2026-08-25 17:52:49,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:52:49,424.424 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 17:52:52,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:52:52,701.701 INFO    ] Checking for system updates...
[2026-08-25 17:52:52,737.737 INFO    ] 200
[2026-08-25 17:52:52,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:52,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:52:52,795.795 INFO    ] No update needed
[2026-08-25 17:52:52,797.797 INFO    ] Checking for camera pi updates...
[2026-08-25 17:52:52,831.831 INFO    ] 200
[2026-08-25 17:52:52,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:52:52,875.875 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:52:52,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:52:52,929.929 INFO    ] No camera update needed
[2026-08-25 17:52:52,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:52:52,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:52:52,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:52:52,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:52:54,986.986 INFO    ] ================================================
[2026-08-25 17:52:55,002.002 INFO    ] Launching Daemon at Tue Aug 25 17:52:54 IST 2026
[2026-08-25 17:52:55,013.013 INFO    ] ================================================
[2026-08-25 17:52:55,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:52:55
[2026-08-25 17:52:56,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:52:56,582.582 INFO    ] Initializing speech engine...
[2026-08-25 17:52:56,594.594 INFO    ] 2026-08-25 17:52:56
[2026-08-25 17:52:56,905.905 INFO    ] 2026-08-25 17:52:56
[2026-08-25 17:52:56,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:52:57,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:52:57,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:52:57,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:52:57,406.406 INFO    ] time= 25/08/2026 17:52:57
[2026-08-25 17:52:57,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:52:57,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:52:57,566.566 INFO    ] No existing commands found in stream
[2026-08-25 17:53:02,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:53:02,599.599 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 17:53:03,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:53:03,468.468 INFO    ] Checking for system updates...
[2026-08-25 17:53:03,509.509 INFO    ] 200
[2026-08-25 17:53:03,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:03,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:03,575.575 INFO    ] No update needed
[2026-08-25 17:53:03,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 17:53:03,612.612 INFO    ] 200
[2026-08-25 17:53:03,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:03,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:53:03,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:03,715.715 INFO    ] No camera update needed
[2026-08-25 17:53:03,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:53:03,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:53:03,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:53:03,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:53:05,773.773 INFO    ] ================================================
[2026-08-25 17:53:05,789.789 INFO    ] Launching Daemon at Tue Aug 25 17:53:05 IST 2026
[2026-08-25 17:53:05,801.801 INFO    ] ================================================
[2026-08-25 17:53:06,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:53:06
[2026-08-25 17:53:06,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:53:07,226.226 INFO    ] Initializing speech engine...
[2026-08-25 17:53:07,232.232 INFO    ] 2026-08-25 17:53:07
[2026-08-25 17:53:07,524.524 INFO    ] 2026-08-25 17:53:07
[2026-08-25 17:53:07,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:53:07,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:53:07,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:53:07,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:53:07,939.939 INFO    ] time= 25/08/2026 17:53:07
[2026-08-25 17:53:07,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:53:07,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:53:08,126.126 INFO    ] No existing commands found in stream
[2026-08-25 17:53:13,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:53:13,159.159 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 17:53:15,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:53:15,855.855 INFO    ] Checking for system updates...
[2026-08-25 17:53:15,890.890 INFO    ] 200
[2026-08-25 17:53:15,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:15,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:53:15,947.947 INFO    ] No update needed
[2026-08-25 17:53:15,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 17:53:15,987.987 INFO    ] 200
[2026-08-25 17:53:15,990.990 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:16,034.034 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:53:16,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:53:16,085.085 INFO    ] No camera update needed
[2026-08-25 17:53:16,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:53:16,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:53:16,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:53:16,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:53:18,139.139 INFO    ] ================================================
[2026-08-25 17:53:18,155.155 INFO    ] Launching Daemon at Tue Aug 25 17:53:18 IST 2026
[2026-08-25 17:53:18,166.166 INFO    ] ================================================
[2026-08-25 17:53:18,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:53:18
[2026-08-25 17:53:19,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:53:19,770.770 INFO    ] Initializing speech engine...
[2026-08-25 17:53:19,784.784 INFO    ] 2026-08-25 17:53:19
[2026-08-25 17:53:20,067.067 INFO    ] 2026-08-25 17:53:20
[2026-08-25 17:53:20,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:53:20,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:53:20,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:53:20,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:53:20,608.608 INFO    ] time= 25/08/2026 17:53:20
[2026-08-25 17:53:20,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:53:20,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:53:20,757.757 INFO    ] No existing commands found in stream
[2026-08-25 17:53:25,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:53:25,796.796 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 17:53:28,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:53:28,835.835 INFO    ] Checking for system updates...
[2026-08-25 17:53:28,870.870 INFO    ] 200
[2026-08-25 17:53:28,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:28,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:28,927.927 INFO    ] No update needed
[2026-08-25 17:53:28,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 17:53:28,963.963 INFO    ] 200
[2026-08-25 17:53:28,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:29,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:53:29,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:29,085.085 INFO    ] No camera update needed
[2026-08-25 17:53:29,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:53:29,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:53:29,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:53:29,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:53:31,139.139 INFO    ] ================================================
[2026-08-25 17:53:31,155.155 INFO    ] Launching Daemon at Tue Aug 25 17:53:31 IST 2026
[2026-08-25 17:53:31,166.166 INFO    ] ================================================
[2026-08-25 17:53:31,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:53:31
[2026-08-25 17:53:32,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:53:32,666.666 INFO    ] Initializing speech engine...
[2026-08-25 17:53:32,675.675 INFO    ] 2026-08-25 17:53:32
[2026-08-25 17:53:32,927.927 INFO    ] 2026-08-25 17:53:32
[2026-08-25 17:53:32,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:53:33,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:53:33,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:53:33,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:53:33,283.283 INFO    ] time= 25/08/2026 17:53:33
[2026-08-25 17:53:33,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:53:33,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:53:33,433.433 INFO    ] No existing commands found in stream
[2026-08-25 17:53:38,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:53:38,446.446 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 17:53:39,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:53:39,583.583 INFO    ] Checking for system updates...
[2026-08-25 17:53:39,618.618 INFO    ] 200
[2026-08-25 17:53:39,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:39,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:39,676.676 INFO    ] No update needed
[2026-08-25 17:53:39,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 17:53:39,711.711 INFO    ] 200
[2026-08-25 17:53:39,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:39,758.758 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:53:39,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:39,808.808 INFO    ] No camera update needed
[2026-08-25 17:53:39,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:53:39,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:53:39,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:53:39,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:53:41,864.864 INFO    ] ================================================
[2026-08-25 17:53:41,879.879 INFO    ] Launching Daemon at Tue Aug 25 17:53:41 IST 2026
[2026-08-25 17:53:41,890.890 INFO    ] ================================================
[2026-08-25 17:53:42,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:53:42
[2026-08-25 17:53:43,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:53:43,332.332 INFO    ] Initializing speech engine...
[2026-08-25 17:53:43,352.352 INFO    ] 2026-08-25 17:53:43
[2026-08-25 17:53:43,628.628 INFO    ] 2026-08-25 17:53:43
[2026-08-25 17:53:43,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:53:43,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:53:43,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:53:44,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:53:44,045.045 INFO    ] time= 25/08/2026 17:53:44
[2026-08-25 17:53:44,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:53:44,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:53:44,238.238 INFO    ] No existing commands found in stream
[2026-08-25 17:53:49,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:53:49,267.267 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 17:53:51,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:53:51,578.578 INFO    ] Checking for system updates...
[2026-08-25 17:53:51,615.615 INFO    ] 200
[2026-08-25 17:53:51,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:51,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:51,858.858 INFO    ] No update needed
[2026-08-25 17:53:51,860.860 INFO    ] Checking for camera pi updates...
[2026-08-25 17:53:51,897.897 INFO    ] 200
[2026-08-25 17:53:51,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:53:51,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:53:52,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:53:52,004.004 INFO    ] No camera update needed
[2026-08-25 17:53:52,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:53:52,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:53:52,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:53:52,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:53:54,061.061 INFO    ] ================================================
[2026-08-25 17:53:54,077.077 INFO    ] Launching Daemon at Tue Aug 25 17:53:54 IST 2026
[2026-08-25 17:53:54,088.088 INFO    ] ================================================
[2026-08-25 17:53:54,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:53:54
[2026-08-25 17:53:55,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:53:55,692.692 INFO    ] Initializing speech engine...
[2026-08-25 17:53:55,705.705 INFO    ] 2026-08-25 17:53:55
[2026-08-25 17:53:56,017.017 INFO    ] 2026-08-25 17:53:55
[2026-08-25 17:53:56,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:53:56,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:53:56,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:53:56,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:53:56,522.522 INFO    ] time= 25/08/2026 17:53:56
[2026-08-25 17:53:56,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:53:56,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:53:56,687.687 INFO    ] No existing commands found in stream
[2026-08-25 17:54:01,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:54:01,711.711 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 17:54:05,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:54:05,042.042 INFO    ] Checking for system updates...
[2026-08-25 17:54:05,078.078 INFO    ] 200
[2026-08-25 17:54:05,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:05,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:54:05,137.137 INFO    ] No update needed
[2026-08-25 17:54:05,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 17:54:05,173.173 INFO    ] 200
[2026-08-25 17:54:05,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:05,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:54:05,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:54:05,292.292 INFO    ] No camera update needed
[2026-08-25 17:54:05,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:54:05,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:54:05,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:54:05,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:54:07,349.349 INFO    ] ================================================
[2026-08-25 17:54:07,365.365 INFO    ] Launching Daemon at Tue Aug 25 17:54:07 IST 2026
[2026-08-25 17:54:07,375.375 INFO    ] ================================================
[2026-08-25 17:54:07,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:54:07
[2026-08-25 17:54:08,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:54:08,838.838 INFO    ] Initializing speech engine...
[2026-08-25 17:54:08,844.844 INFO    ] 2026-08-25 17:54:08
[2026-08-25 17:54:09,106.106 INFO    ] 2026-08-25 17:54:09
[2026-08-25 17:54:09,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:54:09,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:54:09,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:54:09,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:54:09,604.604 INFO    ] time= 25/08/2026 17:54:09
[2026-08-25 17:54:09,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:54:09,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:54:09,807.807 INFO    ] No existing commands found in stream
[2026-08-25 17:54:14,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:54:14,825.825 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 17:54:15,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:54:15,877.877 INFO    ] Checking for system updates...
[2026-08-25 17:54:15,917.917 INFO    ] 200
[2026-08-25 17:54:15,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:15,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:54:15,984.984 INFO    ] No update needed
[2026-08-25 17:54:15,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 17:54:16,024.024 INFO    ] 200
[2026-08-25 17:54:16,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:16,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:54:16,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:54:16,126.126 INFO    ] No camera update needed
[2026-08-25 17:54:16,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:54:16,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:54:16,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:54:16,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:54:18,185.185 INFO    ] ================================================
[2026-08-25 17:54:18,200.200 INFO    ] Launching Daemon at Tue Aug 25 17:54:18 IST 2026
[2026-08-25 17:54:18,211.211 INFO    ] ================================================
[2026-08-25 17:54:18,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:54:18
[2026-08-25 17:54:19,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:54:19,619.619 INFO    ] Initializing speech engine...
[2026-08-25 17:54:19,637.637 INFO    ] 2026-08-25 17:54:19
[2026-08-25 17:54:19,890.890 INFO    ] 2026-08-25 17:54:19
[2026-08-25 17:54:19,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:54:20,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:54:20,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:54:20,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:54:20,364.364 INFO    ] time= 25/08/2026 17:54:20
[2026-08-25 17:54:20,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:54:20,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:54:20,526.526 INFO    ] No existing commands found in stream
[2026-08-25 17:54:25,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:54:25,564.564 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 17:54:27,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:54:27,866.866 INFO    ] Checking for system updates...
[2026-08-25 17:54:27,902.902 INFO    ] 200
[2026-08-25 17:54:27,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:27,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:54:27,959.959 INFO    ] No update needed
[2026-08-25 17:54:27,962.962 INFO    ] Checking for camera pi updates...
[2026-08-25 17:54:27,995.995 INFO    ] 200
[2026-08-25 17:54:27,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:28,037.037 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:54:28,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:54:28,088.088 INFO    ] No camera update needed
[2026-08-25 17:54:28,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:54:28,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:54:28,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:54:28,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:54:30,143.143 INFO    ] ================================================
[2026-08-25 17:54:30,159.159 INFO    ] Launching Daemon at Tue Aug 25 17:54:30 IST 2026
[2026-08-25 17:54:30,170.170 INFO    ] ================================================
[2026-08-25 17:54:30,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:54:30
[2026-08-25 17:54:31,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:54:31,688.688 INFO    ] Initializing speech engine...
[2026-08-25 17:54:31,713.713 INFO    ] 2026-08-25 17:54:31
[2026-08-25 17:54:32,012.012 INFO    ] 2026-08-25 17:54:31
[2026-08-25 17:54:32,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:54:32,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:54:32,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:54:32,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:54:32,520.520 INFO    ] time= 25/08/2026 17:54:32
[2026-08-25 17:54:32,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:54:32,635.635 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:54:32,779.779 INFO    ] No existing commands found in stream
[2026-08-25 17:54:37,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:54:37,798.798 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 17:54:40,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:54:40,227.227 INFO    ] Checking for system updates...
[2026-08-25 17:54:40,268.268 INFO    ] 200
[2026-08-25 17:54:40,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:40,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:54:40,328.328 INFO    ] No update needed
[2026-08-25 17:54:40,331.331 INFO    ] Checking for camera pi updates...
[2026-08-25 17:54:40,366.366 INFO    ] 200
[2026-08-25 17:54:40,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:40,410.410 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:54:40,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:54:40,479.479 INFO    ] No camera update needed
[2026-08-25 17:54:40,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:54:40,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:54:40,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:54:40,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:54:42,537.537 INFO    ] ================================================
[2026-08-25 17:54:42,552.552 INFO    ] Launching Daemon at Tue Aug 25 17:54:42 IST 2026
[2026-08-25 17:54:42,563.563 INFO    ] ================================================
[2026-08-25 17:54:43,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:54:43
[2026-08-25 17:54:43,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:54:44,063.063 INFO    ] Initializing speech engine...
[2026-08-25 17:54:44,069.069 INFO    ] 2026-08-25 17:54:44
[2026-08-25 17:54:44,335.335 INFO    ] 2026-08-25 17:54:44
[2026-08-25 17:54:44,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:54:44,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:54:44,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:54:44,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:54:44,754.754 INFO    ] time= 25/08/2026 17:54:44
[2026-08-25 17:54:44,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:54:44,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:54:44,951.951 INFO    ] No existing commands found in stream
[2026-08-25 17:54:49,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:54:49,966.966 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 17:54:53,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:54:53,440.440 INFO    ] Checking for system updates...
[2026-08-25 17:54:53,479.479 INFO    ] 200
[2026-08-25 17:54:53,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:53,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:54:53,539.539 INFO    ] No update needed
[2026-08-25 17:54:53,542.542 INFO    ] Checking for camera pi updates...
[2026-08-25 17:54:53,576.576 INFO    ] 200
[2026-08-25 17:54:53,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:54:53,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:54:53,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:54:53,778.778 INFO    ] No camera update needed
[2026-08-25 17:54:53,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:54:53,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:54:53,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:54:53,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:54:55,838.838 INFO    ] ================================================
[2026-08-25 17:54:55,854.854 INFO    ] Launching Daemon at Tue Aug 25 17:54:55 IST 2026
[2026-08-25 17:54:55,866.866 INFO    ] ================================================
[2026-08-25 17:54:56,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:54:56
[2026-08-25 17:54:57,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:54:57,538.538 INFO    ] Initializing speech engine...
[2026-08-25 17:54:57,545.545 INFO    ] 2026-08-25 17:54:57
[2026-08-25 17:54:57,832.832 INFO    ] 2026-08-25 17:54:57
[2026-08-25 17:54:57,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:54:58,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:54:58,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:54:58,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:54:58,363.363 INFO    ] time= 25/08/2026 17:54:58
[2026-08-25 17:54:58,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:54:58,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:54:58,519.519 INFO    ] No existing commands found in stream
[2026-08-25 17:55:03,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:55:03,558.558 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 17:55:04,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:55:04,972.972 INFO    ] Checking for system updates...
[2026-08-25 17:55:05,008.008 INFO    ] 200
[2026-08-25 17:55:05,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:05,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:55:05,068.068 INFO    ] No update needed
[2026-08-25 17:55:05,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 17:55:05,104.104 INFO    ] 200
[2026-08-25 17:55:05,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:05,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:55:05,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:55:05,222.222 INFO    ] No camera update needed
[2026-08-25 17:55:05,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:55:05,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:55:05,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:55:05,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:55:07,279.279 INFO    ] ================================================
[2026-08-25 17:55:07,295.295 INFO    ] Launching Daemon at Tue Aug 25 17:55:07 IST 2026
[2026-08-25 17:55:07,306.306 INFO    ] ================================================
[2026-08-25 17:55:07,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:55:07
[2026-08-25 17:55:08,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:55:08,751.751 INFO    ] Initializing speech engine...
[2026-08-25 17:55:08,766.766 INFO    ] 2026-08-25 17:55:08
[2026-08-25 17:55:09,039.039 INFO    ] 2026-08-25 17:55:09
[2026-08-25 17:55:09,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:55:09,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:55:09,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:55:09,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:55:09,531.531 INFO    ] time= 25/08/2026 17:55:09
[2026-08-25 17:55:09,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:55:09,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:55:09,724.724 INFO    ] No existing commands found in stream
[2026-08-25 17:55:14,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:55:14,739.739 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-08-25 17:55:16,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 17:55:16,771.771 INFO    ] Checking for system updates...
[2026-08-25 17:55:16,806.806 INFO    ] 200
[2026-08-25 17:55:16,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:16,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:55:16,863.863 INFO    ] No update needed
[2026-08-25 17:55:16,865.865 INFO    ] Checking for camera pi updates...
[2026-08-25 17:55:16,899.899 INFO    ] 200
[2026-08-25 17:55:16,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:16,943.943 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:55:17,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:55:17,018.018 INFO    ] No camera update needed
[2026-08-25 17:55:17,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:55:17,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:55:17,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:55:17,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:55:19,075.075 INFO    ] ================================================
[2026-08-25 17:55:19,091.091 INFO    ] Launching Daemon at Tue Aug 25 17:55:19 IST 2026
[2026-08-25 17:55:19,102.102 INFO    ] ================================================
[2026-08-25 17:55:19,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:55:19
[2026-08-25 17:55:20,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:55:20,539.539 INFO    ] Initializing speech engine...
[2026-08-25 17:55:20,545.545 INFO    ] 2026-08-25 17:55:20
[2026-08-25 17:55:20,838.838 INFO    ] 2026-08-25 17:55:20
[2026-08-25 17:55:20,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:55:21,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:55:21,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:55:21,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:55:21,247.247 INFO    ] time= 25/08/2026 17:55:21
[2026-08-25 17:55:21,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:55:21,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:55:21,409.409 INFO    ] No existing commands found in stream
[2026-08-25 17:55:26,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:55:26,442.442 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 17:55:29,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:55:29,639.639 INFO    ] Checking for system updates...
[2026-08-25 17:55:29,675.675 INFO    ] 200
[2026-08-25 17:55:29,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:29,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:55:29,733.733 INFO    ] No update needed
[2026-08-25 17:55:29,735.735 INFO    ] Checking for camera pi updates...
[2026-08-25 17:55:29,768.768 INFO    ] 200
[2026-08-25 17:55:29,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:29,811.811 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:55:29,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:55:29,889.889 INFO    ] No camera update needed
[2026-08-25 17:55:29,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:55:29,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:55:29,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:55:29,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:55:31,945.945 INFO    ] ================================================
[2026-08-25 17:55:31,968.968 INFO    ] Launching Daemon at Tue Aug 25 17:55:31 IST 2026
[2026-08-25 17:55:31,979.979 INFO    ] ================================================
[2026-08-25 17:55:32,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:55:32
[2026-08-25 17:55:33,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:55:33,411.411 INFO    ] Initializing speech engine...
[2026-08-25 17:55:33,433.433 INFO    ] 2026-08-25 17:55:33
[2026-08-25 17:55:33,701.701 INFO    ] 2026-08-25 17:55:33
[2026-08-25 17:55:33,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:55:33,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:55:33,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:55:34,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:55:34,115.115 INFO    ] time= 25/08/2026 17:55:34
[2026-08-25 17:55:34,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:55:34,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:55:34,314.314 INFO    ] No existing commands found in stream
[2026-08-25 17:55:39,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:55:39,347.347 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 17:55:41,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:55:41,719.719 INFO    ] Checking for system updates...
[2026-08-25 17:55:41,755.755 INFO    ] 200
[2026-08-25 17:55:41,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:41,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:55:41,811.811 INFO    ] No update needed
[2026-08-25 17:55:41,814.814 INFO    ] Checking for camera pi updates...
[2026-08-25 17:55:41,847.847 INFO    ] 200
[2026-08-25 17:55:41,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:41,889.889 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:55:41,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:55:41,942.942 INFO    ] No camera update needed
[2026-08-25 17:55:41,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:55:41,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:55:41,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:55:41,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:55:44,999.999 INFO    ] ================================================
[2026-08-25 17:55:44,014.014 INFO    ] Launching Daemon at Tue Aug 25 17:55:44 IST 2026
[2026-08-25 17:55:44,025.025 INFO    ] ================================================
[2026-08-25 17:55:44,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:55:44
[2026-08-25 17:55:45,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:55:45,473.473 INFO    ] Initializing speech engine...
[2026-08-25 17:55:45,481.481 INFO    ] 2026-08-25 17:55:45
[2026-08-25 17:55:45,740.740 INFO    ] 2026-08-25 17:55:45
[2026-08-25 17:55:45,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:55:46,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:55:46,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:55:46,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:55:46,224.224 INFO    ] time= 25/08/2026 17:55:46
[2026-08-25 17:55:46,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:55:46,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:55:46,434.434 INFO    ] No existing commands found in stream
[2026-08-25 17:55:51,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:55:51,453.453 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 17:55:52,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:55:52,980.980 INFO    ] Checking for system updates...
[2026-08-25 17:55:53,015.015 INFO    ] 200
[2026-08-25 17:55:53,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:53,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:55:53,072.072 INFO    ] No update needed
[2026-08-25 17:55:53,074.074 INFO    ] Checking for camera pi updates...
[2026-08-25 17:55:53,108.108 INFO    ] 200
[2026-08-25 17:55:53,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:55:53,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:55:53,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:55:53,216.216 INFO    ] No camera update needed
[2026-08-25 17:55:53,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:55:53,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:55:53,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:55:53,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:55:55,271.271 INFO    ] ================================================
[2026-08-25 17:55:55,287.287 INFO    ] Launching Daemon at Tue Aug 25 17:55:55 IST 2026
[2026-08-25 17:55:55,297.297 INFO    ] ================================================
[2026-08-25 17:55:55,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:55:55
[2026-08-25 17:55:56,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:55:56,900.900 INFO    ] Initializing speech engine...
[2026-08-25 17:55:56,908.908 INFO    ] 2026-08-25 17:55:56
[2026-08-25 17:55:57,175.175 INFO    ] 2026-08-25 17:55:57
[2026-08-25 17:55:57,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:55:57,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:55:57,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:55:57,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:55:57,742.742 INFO    ] time= 25/08/2026 17:55:57
[2026-08-25 17:55:57,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:55:57,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:55:57,909.909 INFO    ] No existing commands found in stream
[2026-08-25 17:56:02,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:56:02,940.940 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 17:56:07,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:56:07,759.759 INFO    ] Checking for system updates...
[2026-08-25 17:56:07,796.796 INFO    ] 200
[2026-08-25 17:56:07,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:07,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:56:07,854.854 INFO    ] No update needed
[2026-08-25 17:56:07,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 17:56:07,891.891 INFO    ] 200
[2026-08-25 17:56:07,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:07,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:56:07,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:56:07,998.998 INFO    ] No camera update needed
[2026-08-25 17:56:08,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:56:08,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:56:08,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:56:08,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:56:10,052.052 INFO    ] ================================================
[2026-08-25 17:56:10,067.067 INFO    ] Launching Daemon at Tue Aug 25 17:56:10 IST 2026
[2026-08-25 17:56:10,078.078 INFO    ] ================================================
[2026-08-25 17:56:10,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:56:10
[2026-08-25 17:56:11,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:56:11,496.496 INFO    ] Initializing speech engine...
[2026-08-25 17:56:11,502.502 INFO    ] 2026-08-25 17:56:11
[2026-08-25 17:56:11,760.760 INFO    ] 2026-08-25 17:56:11
[2026-08-25 17:56:11,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:56:12,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:56:12,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:56:12,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:56:12,208.208 INFO    ] time= 25/08/2026 17:56:12
[2026-08-25 17:56:12,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:56:12,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:56:12,440.440 INFO    ] No existing commands found in stream
[2026-08-25 17:56:17,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:56:17,465.465 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 17:56:18,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:56:18,253.253 INFO    ] Checking for system updates...
[2026-08-25 17:56:18,288.288 INFO    ] 200
[2026-08-25 17:56:18,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:18,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:56:18,347.347 INFO    ] No update needed
[2026-08-25 17:56:18,350.350 INFO    ] Checking for camera pi updates...
[2026-08-25 17:56:18,383.383 INFO    ] 200
[2026-08-25 17:56:18,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:18,425.425 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:56:18,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:56:18,481.481 INFO    ] No camera update needed
[2026-08-25 17:56:18,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:56:18,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:56:18,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:56:18,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:56:20,535.535 INFO    ] ================================================
[2026-08-25 17:56:20,551.551 INFO    ] Launching Daemon at Tue Aug 25 17:56:20 IST 2026
[2026-08-25 17:56:20,562.562 INFO    ] ================================================
[2026-08-25 17:56:21,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:56:21
[2026-08-25 17:56:21,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:56:22,015.015 INFO    ] Initializing speech engine...
[2026-08-25 17:56:22,024.024 INFO    ] 2026-08-25 17:56:22
[2026-08-25 17:56:22,280.280 INFO    ] 2026-08-25 17:56:22
[2026-08-25 17:56:22,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:56:22,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:56:22,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:56:22,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:56:22,774.774 INFO    ] time= 25/08/2026 17:56:22
[2026-08-25 17:56:22,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:56:22,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:56:22,957.957 INFO    ] No existing commands found in stream
[2026-08-25 17:56:27,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:56:27,987.987 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 17:56:32,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:56:32,363.363 INFO    ] Checking for system updates...
[2026-08-25 17:56:32,400.400 INFO    ] 200
[2026-08-25 17:56:32,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:32,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:56:32,464.464 INFO    ] No update needed
[2026-08-25 17:56:32,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 17:56:32,505.505 INFO    ] 200
[2026-08-25 17:56:32,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:32,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:56:32,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:56:32,625.625 INFO    ] No camera update needed
[2026-08-25 17:56:32,628.628 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:56:32,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:56:32,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:56:32,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:56:34,680.680 INFO    ] ================================================
[2026-08-25 17:56:34,696.696 INFO    ] Launching Daemon at Tue Aug 25 17:56:34 IST 2026
[2026-08-25 17:56:34,707.707 INFO    ] ================================================
[2026-08-25 17:56:35,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:56:35
[2026-08-25 17:56:35,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:56:36,146.146 INFO    ] Initializing speech engine...
[2026-08-25 17:56:36,164.164 INFO    ] 2026-08-25 17:56:36
[2026-08-25 17:56:36,417.417 INFO    ] 2026-08-25 17:56:36
[2026-08-25 17:56:36,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:56:36,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:56:36,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:56:36,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:56:36,923.923 INFO    ] time= 25/08/2026 17:56:36
[2026-08-25 17:56:36,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:56:36,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:56:37,127.127 INFO    ] No existing commands found in stream
[2026-08-25 17:56:42,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:56:42,154.154 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 17:56:43,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:56:43,519.519 INFO    ] Checking for system updates...
[2026-08-25 17:56:43,555.555 INFO    ] 200
[2026-08-25 17:56:43,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:43,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:56:43,612.612 INFO    ] No update needed
[2026-08-25 17:56:43,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 17:56:43,647.647 INFO    ] 200
[2026-08-25 17:56:43,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:43,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:56:43,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:56:43,744.744 INFO    ] No camera update needed
[2026-08-25 17:56:43,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:56:43,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:56:43,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:56:43,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:56:45,800.800 INFO    ] ================================================
[2026-08-25 17:56:45,815.815 INFO    ] Launching Daemon at Tue Aug 25 17:56:45 IST 2026
[2026-08-25 17:56:45,825.825 INFO    ] ================================================
[2026-08-25 17:56:46,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:56:46
[2026-08-25 17:56:47,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:56:47,445.445 INFO    ] Initializing speech engine...
[2026-08-25 17:56:47,452.452 INFO    ] 2026-08-25 17:56:47
[2026-08-25 17:56:47,742.742 INFO    ] 2026-08-25 17:56:47
[2026-08-25 17:56:47,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:56:48,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:56:48,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:56:48,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:56:48,292.292 INFO    ] time= 25/08/2026 17:56:48
[2026-08-25 17:56:48,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:56:48,321.321 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:56:48,455.455 INFO    ] No existing commands found in stream
[2026-08-25 17:56:53,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:56:53,487.487 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 17:56:57,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:56:57,871.871 INFO    ] Checking for system updates...
[2026-08-25 17:56:57,909.909 INFO    ] 200
[2026-08-25 17:56:57,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:57,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:56:57,973.973 INFO    ] No update needed
[2026-08-25 17:56:57,976.976 INFO    ] Checking for camera pi updates...
[2026-08-25 17:56:58,011.011 INFO    ] 200
[2026-08-25 17:56:58,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:56:58,055.055 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:56:58,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:56:58,201.201 INFO    ] No camera update needed
[2026-08-25 17:56:58,204.204 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:56:58,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:56:58,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:56:58,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:57:00,259.259 INFO    ] ================================================
[2026-08-25 17:57:00,274.274 INFO    ] Launching Daemon at Tue Aug 25 17:57:00 IST 2026
[2026-08-25 17:57:00,285.285 INFO    ] ================================================
[2026-08-25 17:57:00,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:57:00
[2026-08-25 17:57:01,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:57:02,077.077 INFO    ] Initializing speech engine...
[2026-08-25 17:57:02,087.087 INFO    ] 2026-08-25 17:57:02
[2026-08-25 17:57:02,442.442 INFO    ] 2026-08-25 17:57:02
[2026-08-25 17:57:02,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:57:02,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:57:02,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:57:02,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:57:03,029.029 INFO    ] time= 25/08/2026 17:57:02
[2026-08-25 17:57:03,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:57:03,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:57:03,193.193 INFO    ] No existing commands found in stream
[2026-08-25 17:57:08,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:57:08,216.216 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 17:57:09,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:57:09,940.940 INFO    ] Checking for system updates...
[2026-08-25 17:57:09,976.976 INFO    ] 200
[2026-08-25 17:57:09,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:10,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:57:10,034.034 INFO    ] No update needed
[2026-08-25 17:57:10,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 17:57:10,070.070 INFO    ] 200
[2026-08-25 17:57:10,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:10,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:57:10,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:57:10,159.159 INFO    ] No camera update needed
[2026-08-25 17:57:10,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:57:10,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:57:10,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:57:10,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:57:12,214.214 INFO    ] ================================================
[2026-08-25 17:57:12,230.230 INFO    ] Launching Daemon at Tue Aug 25 17:57:12 IST 2026
[2026-08-25 17:57:12,241.241 INFO    ] ================================================
[2026-08-25 17:57:12,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:57:12
[2026-08-25 17:57:13,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:57:13,839.839 INFO    ] Initializing speech engine...
[2026-08-25 17:57:13,847.847 INFO    ] 2026-08-25 17:57:13
[2026-08-25 17:57:14,130.130 INFO    ] 2026-08-25 17:57:14
[2026-08-25 17:57:14,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:57:14,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:57:14,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:57:14,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:57:14,668.668 INFO    ] time= 25/08/2026 17:57:14
[2026-08-25 17:57:14,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:57:14,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:57:14,845.845 INFO    ] No existing commands found in stream
[2026-08-25 17:57:19,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:57:19,879.879 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 17:57:23,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:57:23,838.838 INFO    ] Checking for system updates...
[2026-08-25 17:57:23,874.874 INFO    ] 200
[2026-08-25 17:57:23,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:23,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:57:23,931.931 INFO    ] No update needed
[2026-08-25 17:57:23,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 17:57:23,967.967 INFO    ] 200
[2026-08-25 17:57:23,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:24,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:57:24,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:57:24,068.068 INFO    ] No camera update needed
[2026-08-25 17:57:24,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:57:24,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:57:24,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:57:24,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:57:26,122.122 INFO    ] ================================================
[2026-08-25 17:57:26,137.137 INFO    ] Launching Daemon at Tue Aug 25 17:57:26 IST 2026
[2026-08-25 17:57:26,147.147 INFO    ] ================================================
[2026-08-25 17:57:26,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:57:26
[2026-08-25 17:57:27,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:57:27,762.762 INFO    ] Initializing speech engine...
[2026-08-25 17:57:27,776.776 INFO    ] 2026-08-25 17:57:27
[2026-08-25 17:57:28,081.081 INFO    ] 2026-08-25 17:57:28
[2026-08-25 17:57:28,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:57:28,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:57:28,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:57:28,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:57:28,589.589 INFO    ] time= 25/08/2026 17:57:28
[2026-08-25 17:57:28,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:57:28,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:57:28,759.759 INFO    ] No existing commands found in stream
[2026-08-25 17:57:33,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:57:33,793.793 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 17:57:36,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:57:36,949.949 INFO    ] Checking for system updates...
[2026-08-25 17:57:36,985.985 INFO    ] 200
[2026-08-25 17:57:36,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:37,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:57:37,045.045 INFO    ] No update needed
[2026-08-25 17:57:37,048.048 INFO    ] Checking for camera pi updates...
[2026-08-25 17:57:37,083.083 INFO    ] 200
[2026-08-25 17:57:37,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:37,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:57:37,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:57:37,190.190 INFO    ] No camera update needed
[2026-08-25 17:57:37,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:57:37,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:57:37,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:57:37,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:57:39,245.245 INFO    ] ================================================
[2026-08-25 17:57:39,259.259 INFO    ] Launching Daemon at Tue Aug 25 17:57:39 IST 2026
[2026-08-25 17:57:39,270.270 INFO    ] ================================================
[2026-08-25 17:57:39,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:57:39
[2026-08-25 17:57:40,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:57:40,728.728 INFO    ] Initializing speech engine...
[2026-08-25 17:57:40,734.734 INFO    ] 2026-08-25 17:57:40
[2026-08-25 17:57:41,009.009 INFO    ] 2026-08-25 17:57:40
[2026-08-25 17:57:41,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:57:41,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:57:41,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:57:41,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:57:41,474.474 INFO    ] time= 25/08/2026 17:57:41
[2026-08-25 17:57:41,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:57:41,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:57:41,693.693 INFO    ] No existing commands found in stream
[2026-08-25 17:57:46,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:57:46,714.714 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-08-25 17:57:47,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:57:47,959.959 INFO    ] Checking for system updates...
[2026-08-25 17:57:47,994.994 INFO    ] 200
[2026-08-25 17:57:47,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:48,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:57:48,052.052 INFO    ] No update needed
[2026-08-25 17:57:48,054.054 INFO    ] Checking for camera pi updates...
[2026-08-25 17:57:48,089.089 INFO    ] 200
[2026-08-25 17:57:48,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:48,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:57:48,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:57:48,176.176 INFO    ] No camera update needed
[2026-08-25 17:57:48,179.179 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:57:48,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:57:48,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:57:48,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:57:50,233.233 INFO    ] ================================================
[2026-08-25 17:57:50,248.248 INFO    ] Launching Daemon at Tue Aug 25 17:57:50 IST 2026
[2026-08-25 17:57:50,259.259 INFO    ] ================================================
[2026-08-25 17:57:50,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:57:50
[2026-08-25 17:57:51,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:57:51,709.709 INFO    ] Initializing speech engine...
[2026-08-25 17:57:51,715.715 INFO    ] 2026-08-25 17:57:51
[2026-08-25 17:57:51,975.975 INFO    ] 2026-08-25 17:57:51
[2026-08-25 17:57:52,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:57:52,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:57:52,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:57:52,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:57:52,521.521 INFO    ] time= 25/08/2026 17:57:52
[2026-08-25 17:57:52,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:57:52,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:57:52,711.711 INFO    ] No existing commands found in stream
[2026-08-25 17:57:57,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:57:57,750.750 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 17:57:59,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:57:59,263.263 INFO    ] Checking for system updates...
[2026-08-25 17:57:59,299.299 INFO    ] 200
[2026-08-25 17:57:59,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:59,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:57:59,361.361 INFO    ] No update needed
[2026-08-25 17:57:59,363.363 INFO    ] Checking for camera pi updates...
[2026-08-25 17:57:59,397.397 INFO    ] 200
[2026-08-25 17:57:59,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:57:59,444.444 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:57:59,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:57:59,494.494 INFO    ] No camera update needed
[2026-08-25 17:57:59,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:57:59,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:57:59,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:57:59,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:58:01,553.553 INFO    ] ================================================
[2026-08-25 17:58:01,575.575 INFO    ] Launching Daemon at Tue Aug 25 17:58:01 IST 2026
[2026-08-25 17:58:01,590.590 INFO    ] ================================================
[2026-08-25 17:58:02,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:58:02
[2026-08-25 17:58:02,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:58:03,309.309 INFO    ] Initializing speech engine...
[2026-08-25 17:58:03,315.315 INFO    ] 2026-08-25 17:58:03
[2026-08-25 17:58:03,589.589 INFO    ] 2026-08-25 17:58:03
[2026-08-25 17:58:03,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:58:03,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:58:03,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:58:04,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:58:04,137.137 INFO    ] time= 25/08/2026 17:58:04
[2026-08-25 17:58:04,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:58:04,185.185 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:58:04,306.306 INFO    ] No existing commands found in stream
[2026-08-25 17:58:09,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:58:09,340.340 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 17:58:13,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:58:13,046.046 INFO    ] Checking for system updates...
[2026-08-25 17:58:13,083.083 INFO    ] 200
[2026-08-25 17:58:13,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:13,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:58:13,142.142 INFO    ] No update needed
[2026-08-25 17:58:13,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 17:58:13,182.182 INFO    ] 200
[2026-08-25 17:58:13,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:13,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:58:13,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:58:13,274.274 INFO    ] No camera update needed
[2026-08-25 17:58:13,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:58:13,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:58:13,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:58:13,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:58:15,332.332 INFO    ] ================================================
[2026-08-25 17:58:15,348.348 INFO    ] Launching Daemon at Tue Aug 25 17:58:15 IST 2026
[2026-08-25 17:58:15,359.359 INFO    ] ================================================
[2026-08-25 17:58:15,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:58:15
[2026-08-25 17:58:16,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:58:16,774.774 INFO    ] Initializing speech engine...
[2026-08-25 17:58:16,787.787 INFO    ] 2026-08-25 17:58:16
[2026-08-25 17:58:17,072.072 INFO    ] 2026-08-25 17:58:17
[2026-08-25 17:58:17,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:58:17,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:58:17,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:58:17,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:58:17,581.581 INFO    ] time= 25/08/2026 17:58:17
[2026-08-25 17:58:17,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:58:17,671.671 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:58:17,784.784 INFO    ] No existing commands found in stream
[2026-08-25 17:58:22,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:58:22,813.813 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 17:58:23,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:58:23,527.527 INFO    ] Checking for system updates...
[2026-08-25 17:58:23,564.564 INFO    ] 200
[2026-08-25 17:58:23,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:23,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:58:23,623.623 INFO    ] No update needed
[2026-08-25 17:58:23,626.626 INFO    ] Checking for camera pi updates...
[2026-08-25 17:58:23,660.660 INFO    ] 200
[2026-08-25 17:58:23,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:23,703.703 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:58:23,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:58:23,766.766 INFO    ] No camera update needed
[2026-08-25 17:58:23,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:58:23,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:58:23,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:58:23,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:58:25,824.824 INFO    ] ================================================
[2026-08-25 17:58:25,840.840 INFO    ] Launching Daemon at Tue Aug 25 17:58:25 IST 2026
[2026-08-25 17:58:25,851.851 INFO    ] ================================================
[2026-08-25 17:58:26,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:58:26
[2026-08-25 17:58:27,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:58:27,303.303 INFO    ] Initializing speech engine...
[2026-08-25 17:58:27,308.308 INFO    ] 2026-08-25 17:58:27
[2026-08-25 17:58:27,569.569 INFO    ] 2026-08-25 17:58:27
[2026-08-25 17:58:27,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:58:27,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:58:27,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:58:28,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:58:28,109.109 INFO    ] time= 25/08/2026 17:58:28
[2026-08-25 17:58:28,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:58:28,134.134 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:58:28,264.264 INFO    ] No existing commands found in stream
[2026-08-25 17:58:33,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:58:33,279.279 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 17:58:33,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 17:58:33,784.784 INFO    ] Checking for system updates...
[2026-08-25 17:58:33,821.821 INFO    ] 200
[2026-08-25 17:58:33,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:33,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:58:33,888.888 INFO    ] No update needed
[2026-08-25 17:58:33,891.891 INFO    ] Checking for camera pi updates...
[2026-08-25 17:58:33,929.929 INFO    ] 200
[2026-08-25 17:58:33,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:33,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:58:34,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:58:34,030.030 INFO    ] No camera update needed
[2026-08-25 17:58:34,032.032 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:58:34,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:58:34,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:58:34,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:58:36,085.085 INFO    ] ================================================
[2026-08-25 17:58:36,100.100 INFO    ] Launching Daemon at Tue Aug 25 17:58:36 IST 2026
[2026-08-25 17:58:36,111.111 INFO    ] ================================================
[2026-08-25 17:58:36,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:58:36
[2026-08-25 17:58:37,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:58:37,510.510 INFO    ] Initializing speech engine...
[2026-08-25 17:58:37,518.518 INFO    ] 2026-08-25 17:58:37
[2026-08-25 17:58:37,790.790 INFO    ] 2026-08-25 17:58:37
[2026-08-25 17:58:37,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:58:38,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:58:38,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:58:38,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:58:38,272.272 INFO    ] time= 25/08/2026 17:58:38
[2026-08-25 17:58:38,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:58:38,349.349 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:58:38,474.474 INFO    ] No existing commands found in stream
[2026-08-25 17:58:43,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:58:43,489.489 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 17:58:46,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:58:46,850.850 INFO    ] Checking for system updates...
[2026-08-25 17:58:46,885.885 INFO    ] 200
[2026-08-25 17:58:46,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:46,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:58:46,943.943 INFO    ] No update needed
[2026-08-25 17:58:46,945.945 INFO    ] Checking for camera pi updates...
[2026-08-25 17:58:46,979.979 INFO    ] 200
[2026-08-25 17:58:46,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:58:47,022.022 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:58:47,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:58:47,070.070 INFO    ] No camera update needed
[2026-08-25 17:58:47,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:58:47,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:58:47,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:58:47,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:58:49,126.126 INFO    ] ================================================
[2026-08-25 17:58:49,141.141 INFO    ] Launching Daemon at Tue Aug 25 17:58:49 IST 2026
[2026-08-25 17:58:49,153.153 INFO    ] ================================================
[2026-08-25 17:58:49,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:58:49
[2026-08-25 17:58:50,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:58:50,780.780 INFO    ] Initializing speech engine...
[2026-08-25 17:58:50,787.787 INFO    ] 2026-08-25 17:58:50
[2026-08-25 17:58:51,078.078 INFO    ] 2026-08-25 17:58:51
[2026-08-25 17:58:51,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:58:51,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:58:51,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:58:51,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:58:51,624.624 INFO    ] time= 25/08/2026 17:58:51
[2026-08-25 17:58:51,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:58:51,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:58:51,769.769 INFO    ] No existing commands found in stream
[2026-08-25 17:58:56,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:58:56,800.800 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 17:58:59,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:58:59,998.998 INFO    ] Checking for system updates...
[2026-08-25 17:59:00,036.036 INFO    ] 200
[2026-08-25 17:59:00,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:00,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:00,102.102 INFO    ] No update needed
[2026-08-25 17:59:00,104.104 INFO    ] Checking for camera pi updates...
[2026-08-25 17:59:00,138.138 INFO    ] 200
[2026-08-25 17:59:00,140.140 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:00,180.180 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:59:00,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:00,335.335 INFO    ] No camera update needed
[2026-08-25 17:59:00,338.338 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:59:00,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:59:00,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:59:00,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:59:02,402.402 INFO    ] ================================================
[2026-08-25 17:59:02,424.424 INFO    ] Launching Daemon at Tue Aug 25 17:59:02 IST 2026
[2026-08-25 17:59:02,441.441 INFO    ] ================================================
[2026-08-25 17:59:03,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:59:03
[2026-08-25 17:59:03,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:59:03,944.944 INFO    ] Initializing speech engine...
[2026-08-25 17:59:03,953.953 INFO    ] 2026-08-25 17:59:03
[2026-08-25 17:59:04,203.203 INFO    ] 2026-08-25 17:59:04
[2026-08-25 17:59:04,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:59:04,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:59:04,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:59:04,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:59:04,663.663 INFO    ] time= 25/08/2026 17:59:04
[2026-08-25 17:59:04,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:59:04,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:59:04,910.910 INFO    ] No existing commands found in stream
[2026-08-25 17:59:09,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:59:09,938.938 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 17:59:10,781.781 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 17:59:10,784.784 INFO    ] Checking for system updates...
[2026-08-25 17:59:10,820.820 INFO    ] 200
[2026-08-25 17:59:10,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:10,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:10,876.876 INFO    ] No update needed
[2026-08-25 17:59:10,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 17:59:10,920.920 INFO    ] 200
[2026-08-25 17:59:10,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:10,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:59:11,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:11,018.018 INFO    ] No camera update needed
[2026-08-25 17:59:11,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:59:11,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:59:11,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:59:11,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:59:13,077.077 INFO    ] ================================================
[2026-08-25 17:59:13,092.092 INFO    ] Launching Daemon at Tue Aug 25 17:59:13 IST 2026
[2026-08-25 17:59:13,103.103 INFO    ] ================================================
[2026-08-25 17:59:13,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:59:13
[2026-08-25 17:59:14,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:59:14,696.696 INFO    ] Initializing speech engine...
[2026-08-25 17:59:14,702.702 INFO    ] 2026-08-25 17:59:14
[2026-08-25 17:59:14,973.973 INFO    ] 2026-08-25 17:59:14
[2026-08-25 17:59:15,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:59:15,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:59:15,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:59:15,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:59:15,401.401 INFO    ] time= 25/08/2026 17:59:15
[2026-08-25 17:59:15,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:59:15,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:59:15,585.585 INFO    ] No existing commands found in stream
[2026-08-25 17:59:20,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:59:20,613.613 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 17:59:21,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:59:21,367.367 INFO    ] Checking for system updates...
[2026-08-25 17:59:21,404.404 INFO    ] 200
[2026-08-25 17:59:21,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:21,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:21,461.461 INFO    ] No update needed
[2026-08-25 17:59:21,463.463 INFO    ] Checking for camera pi updates...
[2026-08-25 17:59:21,497.497 INFO    ] 200
[2026-08-25 17:59:21,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:21,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:59:21,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:21,588.588 INFO    ] No camera update needed
[2026-08-25 17:59:21,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:59:21,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:59:21,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:59:21,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:59:23,643.643 INFO    ] ================================================
[2026-08-25 17:59:23,657.657 INFO    ] Launching Daemon at Tue Aug 25 17:59:23 IST 2026
[2026-08-25 17:59:23,668.668 INFO    ] ================================================
[2026-08-25 17:59:24,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:59:24
[2026-08-25 17:59:24,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:59:25,121.121 INFO    ] Initializing speech engine...
[2026-08-25 17:59:25,129.129 INFO    ] 2026-08-25 17:59:25
[2026-08-25 17:59:25,387.387 INFO    ] 2026-08-25 17:59:25
[2026-08-25 17:59:25,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:59:25,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:59:25,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:59:25,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:59:25,875.875 INFO    ] time= 25/08/2026 17:59:25
[2026-08-25 17:59:25,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:59:25,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:59:26,080.080 INFO    ] No existing commands found in stream
[2026-08-25 17:59:31,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:59:31,096.096 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 17:59:35,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 17:59:35,115.115 INFO    ] Checking for system updates...
[2026-08-25 17:59:35,150.150 INFO    ] 200
[2026-08-25 17:59:35,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:35,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:35,207.207 INFO    ] No update needed
[2026-08-25 17:59:35,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 17:59:35,242.242 INFO    ] 200
[2026-08-25 17:59:35,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:35,285.285 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:59:35,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:35,342.342 INFO    ] No camera update needed
[2026-08-25 17:59:35,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:59:35,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:59:35,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:59:35,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:59:37,397.397 INFO    ] ================================================
[2026-08-25 17:59:37,412.412 INFO    ] Launching Daemon at Tue Aug 25 17:59:37 IST 2026
[2026-08-25 17:59:37,423.423 INFO    ] ================================================
[2026-08-25 17:59:38,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:59:38
[2026-08-25 17:59:38,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:59:38,878.878 INFO    ] Initializing speech engine...
[2026-08-25 17:59:38,885.885 INFO    ] 2026-08-25 17:59:38
[2026-08-25 17:59:39,147.147 INFO    ] 2026-08-25 17:59:39
[2026-08-25 17:59:39,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:59:39,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:59:39,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:59:39,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:59:39,638.638 INFO    ] time= 25/08/2026 17:59:39
[2026-08-25 17:59:39,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:59:39,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:59:39,843.843 INFO    ] No existing commands found in stream
[2026-08-25 17:59:44,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:59:44,868.868 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 17:59:48,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 17:59:48,174.174 INFO    ] Checking for system updates...
[2026-08-25 17:59:48,212.212 INFO    ] 200
[2026-08-25 17:59:48,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:48,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:59:48,269.269 INFO    ] No update needed
[2026-08-25 17:59:48,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 17:59:48,305.305 INFO    ] 200
[2026-08-25 17:59:48,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:48,353.353 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:59:48,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 17:59:48,412.412 INFO    ] No camera update needed
[2026-08-25 17:59:48,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:59:48,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:59:48,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:59:48,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 17:59:50,468.468 INFO    ] ================================================
[2026-08-25 17:59:50,483.483 INFO    ] Launching Daemon at Tue Aug 25 17:59:50 IST 2026
[2026-08-25 17:59:50,494.494 INFO    ] ================================================
[2026-08-25 17:59:51,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 17:59:51
[2026-08-25 17:59:51,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 17:59:51,888.888 INFO    ] Initializing speech engine...
[2026-08-25 17:59:51,902.902 INFO    ] 2026-08-25 17:59:51
[2026-08-25 17:59:52,166.166 INFO    ] 2026-08-25 17:59:52
[2026-08-25 17:59:52,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 17:59:52,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 17:59:52,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 17:59:52,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 17:59:52,665.665 INFO    ] time= 25/08/2026 17:59:52
[2026-08-25 17:59:52,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 17:59:52,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 17:59:52,880.880 INFO    ] No existing commands found in stream
[2026-08-25 17:59:57,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 17:59:57,904.904 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 17:59:58,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 17:59:58,766.766 INFO    ] Checking for system updates...
[2026-08-25 17:59:58,801.801 INFO    ] 200
[2026-08-25 17:59:58,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:58,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:58,858.858 INFO    ] No update needed
[2026-08-25 17:59:58,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 17:59:58,894.894 INFO    ] 200
[2026-08-25 17:59:58,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 17:59:58,936.936 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 17:59:58,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 17:59:58,998.998 INFO    ] No camera update needed
[2026-08-25 17:59:59,000.000 INFO    ] Script finished. Safe exiting...
[2026-08-25 17:59:59,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 17:59:59,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 17:59:59,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:00:01,053.053 INFO    ] ================================================
[2026-08-25 18:00:01,068.068 INFO    ] Launching Daemon at Tue Aug 25 18:00:01 IST 2026
[2026-08-25 18:00:01,078.078 INFO    ] ================================================
[2026-08-25 18:00:02,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:00:02
[2026-08-25 18:00:04,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:00:05,532.532 INFO    ] Initializing speech engine...
[2026-08-25 18:00:05,538.538 INFO    ] 2026-08-25 18:00:05
[2026-08-25 18:00:06,154.154 INFO    ] 2026-08-25 18:00:06
[2026-08-25 18:00:06,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:00:06,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:00:06,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:00:06,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:00:06,611.611 INFO    ] time= 25/08/2026 18:00:06
[2026-08-25 18:00:06,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:00:06,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:00:06,806.806 INFO    ] No existing commands found in stream
[2026-08-25 18:00:11,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:00:11,830.830 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 18:00:13,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:00:13,548.548 INFO    ] Checking for system updates...
[2026-08-25 18:00:13,703.703 INFO    ] 200
[2026-08-25 18:00:13,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:13,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:00:13,773.773 INFO    ] No update needed
[2026-08-25 18:00:13,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 18:00:13,809.809 INFO    ] 200
[2026-08-25 18:00:13,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:13,852.852 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:00:13,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:00:13,909.909 INFO    ] No camera update needed
[2026-08-25 18:00:13,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:00:13,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:00:13,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:00:13,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:00:15,963.963 INFO    ] ================================================
[2026-08-25 18:00:15,981.981 INFO    ] Launching Daemon at Tue Aug 25 18:00:15 IST 2026
[2026-08-25 18:00:15,993.993 INFO    ] ================================================
[2026-08-25 18:00:16,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:00:16
[2026-08-25 18:00:17,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:00:17,447.447 INFO    ] Initializing speech engine...
[2026-08-25 18:00:17,452.452 INFO    ] 2026-08-25 18:00:17
[2026-08-25 18:00:17,713.713 INFO    ] 2026-08-25 18:00:17
[2026-08-25 18:00:17,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:00:17,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:00:17,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:00:18,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:00:18,192.192 INFO    ] time= 25/08/2026 18:00:18
[2026-08-25 18:00:18,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:00:18,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:00:18,380.380 INFO    ] No existing commands found in stream
[2026-08-25 18:00:23,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:00:23,410.410 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 18:00:25,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:00:25,826.826 INFO    ] Checking for system updates...
[2026-08-25 18:00:25,862.862 INFO    ] 200
[2026-08-25 18:00:25,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:25,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:00:25,927.927 INFO    ] No update needed
[2026-08-25 18:00:25,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 18:00:25,966.966 INFO    ] 200
[2026-08-25 18:00:25,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:26,010.010 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:00:26,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:00:26,057.057 INFO    ] No camera update needed
[2026-08-25 18:00:26,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:00:26,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:00:26,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:00:26,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:00:28,115.115 INFO    ] ================================================
[2026-08-25 18:00:28,130.130 INFO    ] Launching Daemon at Tue Aug 25 18:00:28 IST 2026
[2026-08-25 18:00:28,141.141 INFO    ] ================================================
[2026-08-25 18:00:28,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:00:28
[2026-08-25 18:00:29,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:00:29,593.593 INFO    ] Initializing speech engine...
[2026-08-25 18:00:29,603.603 INFO    ] 2026-08-25 18:00:29
[2026-08-25 18:00:29,864.864 INFO    ] 2026-08-25 18:00:29
[2026-08-25 18:00:29,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:00:30,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:00:30,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:00:30,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:00:30,348.348 INFO    ] time= 25/08/2026 18:00:30
[2026-08-25 18:00:30,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:00:30,417.417 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:00:30,551.551 INFO    ] No existing commands found in stream
[2026-08-25 18:00:35,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:00:35,573.573 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 18:00:36,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:00:36,788.788 INFO    ] Checking for system updates...
[2026-08-25 18:00:36,824.824 INFO    ] 200
[2026-08-25 18:00:36,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:36,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:00:36,884.884 INFO    ] No update needed
[2026-08-25 18:00:36,887.887 INFO    ] Checking for camera pi updates...
[2026-08-25 18:00:36,931.931 INFO    ] 200
[2026-08-25 18:00:36,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:36,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:00:37,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:00:37,052.052 INFO    ] No camera update needed
[2026-08-25 18:00:37,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:00:37,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:00:37,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:00:37,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:00:39,114.114 INFO    ] ================================================
[2026-08-25 18:00:39,133.133 INFO    ] Launching Daemon at Tue Aug 25 18:00:39 IST 2026
[2026-08-25 18:00:39,144.144 INFO    ] ================================================
[2026-08-25 18:00:39,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:00:39
[2026-08-25 18:00:40,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:00:40,798.798 INFO    ] Initializing speech engine...
[2026-08-25 18:00:40,810.810 INFO    ] 2026-08-25 18:00:40
[2026-08-25 18:00:41,122.122 INFO    ] 2026-08-25 18:00:41
[2026-08-25 18:00:41,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:00:41,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:00:41,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:00:41,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:00:41,628.628 INFO    ] time= 25/08/2026 18:00:41
[2026-08-25 18:00:41,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:00:41,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:00:41,788.788 INFO    ] No existing commands found in stream
[2026-08-25 18:00:46,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:00:46,822.822 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 18:00:49,103.103 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:00:49,106.106 INFO    ] Checking for system updates...
[2026-08-25 18:00:49,142.142 INFO    ] 200
[2026-08-25 18:00:49,145.145 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:49,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:00:49,207.207 INFO    ] No update needed
[2026-08-25 18:00:49,211.211 INFO    ] Checking for camera pi updates...
[2026-08-25 18:00:49,248.248 INFO    ] 200
[2026-08-25 18:00:49,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:00:49,301.301 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:00:49,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:00:49,355.355 INFO    ] No camera update needed
[2026-08-25 18:00:49,358.358 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:00:49,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:00:49,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:00:49,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:00:51,413.413 INFO    ] ================================================
[2026-08-25 18:00:51,428.428 INFO    ] Launching Daemon at Tue Aug 25 18:00:51 IST 2026
[2026-08-25 18:00:51,438.438 INFO    ] ================================================
[2026-08-25 18:00:52,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:00:52
[2026-08-25 18:00:52,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:00:52,879.879 INFO    ] Initializing speech engine...
[2026-08-25 18:00:52,886.886 INFO    ] 2026-08-25 18:00:52
[2026-08-25 18:00:53,133.133 INFO    ] 2026-08-25 18:00:53
[2026-08-25 18:00:53,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:00:53,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:00:53,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:00:53,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:00:53,605.605 INFO    ] time= 25/08/2026 18:00:53
[2026-08-25 18:00:53,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:00:53,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:00:53,821.821 INFO    ] No existing commands found in stream
[2026-08-25 18:00:58,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:00:58,856.856 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 18:01:02,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:01:02,615.615 INFO    ] Checking for system updates...
[2026-08-25 18:01:02,660.660 INFO    ] 200
[2026-08-25 18:01:02,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:02,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:01:02,732.732 INFO    ] No update needed
[2026-08-25 18:01:02,735.735 INFO    ] Checking for camera pi updates...
[2026-08-25 18:01:02,792.792 INFO    ] 200
[2026-08-25 18:01:02,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:02,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:01:02,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:01:02,960.960 INFO    ] No camera update needed
[2026-08-25 18:01:02,964.964 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:01:02,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:01:02,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:01:02,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:01:05,022.022 INFO    ] ================================================
[2026-08-25 18:01:05,037.037 INFO    ] Launching Daemon at Tue Aug 25 18:01:05 IST 2026
[2026-08-25 18:01:05,049.049 INFO    ] ================================================
[2026-08-25 18:01:05,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:01:05
[2026-08-25 18:01:06,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:01:06,484.484 INFO    ] Initializing speech engine...
[2026-08-25 18:01:06,489.489 INFO    ] 2026-08-25 18:01:06
[2026-08-25 18:01:06,780.780 INFO    ] 2026-08-25 18:01:06
[2026-08-25 18:01:06,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:01:07,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:01:07,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:01:07,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:01:07,186.186 INFO    ] time= 25/08/2026 18:01:07
[2026-08-25 18:01:07,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:01:07,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:01:07,317.317 INFO    ] No existing commands found in stream
[2026-08-25 18:01:12,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:01:12,329.329 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 18:01:14,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:01:14,976.976 INFO    ] Checking for system updates...
[2026-08-25 18:01:15,012.012 INFO    ] 200
[2026-08-25 18:01:15,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:15,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:01:15,069.069 INFO    ] No update needed
[2026-08-25 18:01:15,071.071 INFO    ] Checking for camera pi updates...
[2026-08-25 18:01:15,108.108 INFO    ] 200
[2026-08-25 18:01:15,110.110 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:15,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:01:15,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:01:15,211.211 INFO    ] No camera update needed
[2026-08-25 18:01:15,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:01:15,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:01:15,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:01:15,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:01:17,268.268 INFO    ] ================================================
[2026-08-25 18:01:17,283.283 INFO    ] Launching Daemon at Tue Aug 25 18:01:17 IST 2026
[2026-08-25 18:01:17,295.295 INFO    ] ================================================
[2026-08-25 18:01:17,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:01:17
[2026-08-25 18:01:18,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:01:18,697.697 INFO    ] Initializing speech engine...
[2026-08-25 18:01:18,713.713 INFO    ] 2026-08-25 18:01:18
[2026-08-25 18:01:18,967.967 INFO    ] 2026-08-25 18:01:18
[2026-08-25 18:01:19,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:01:19,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:01:19,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:01:19,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:01:19,447.447 INFO    ] time= 25/08/2026 18:01:19
[2026-08-25 18:01:19,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:01:19,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:01:19,672.672 INFO    ] No existing commands found in stream
[2026-08-25 18:01:24,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:01:24,700.700 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 18:01:25,790.790 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:01:25,793.793 INFO    ] Checking for system updates...
[2026-08-25 18:01:25,828.828 INFO    ] 200
[2026-08-25 18:01:25,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:25,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:01:25,886.886 INFO    ] No update needed
[2026-08-25 18:01:25,888.888 INFO    ] Checking for camera pi updates...
[2026-08-25 18:01:25,926.926 INFO    ] 200
[2026-08-25 18:01:25,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:25,969.969 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:01:26,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:01:26,027.027 INFO    ] No camera update needed
[2026-08-25 18:01:26,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:01:26,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:01:26,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:01:26,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:01:28,083.083 INFO    ] ================================================
[2026-08-25 18:01:28,098.098 INFO    ] Launching Daemon at Tue Aug 25 18:01:28 IST 2026
[2026-08-25 18:01:28,110.110 INFO    ] ================================================
[2026-08-25 18:01:28,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:01:28
[2026-08-25 18:01:29,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:01:29,566.566 INFO    ] Initializing speech engine...
[2026-08-25 18:01:29,577.577 INFO    ] 2026-08-25 18:01:29
[2026-08-25 18:01:29,838.838 INFO    ] 2026-08-25 18:01:29
[2026-08-25 18:01:29,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:01:30,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:01:30,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:01:30,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:01:30,327.327 INFO    ] time= 25/08/2026 18:01:30
[2026-08-25 18:01:30,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:01:30,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:01:30,536.536 INFO    ] No existing commands found in stream
[2026-08-25 18:01:35,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:01:35,558.558 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 18:01:38,575.575 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:01:38,578.578 INFO    ] Checking for system updates...
[2026-08-25 18:01:38,619.619 INFO    ] 200
[2026-08-25 18:01:38,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:38,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:01:38,678.678 INFO    ] No update needed
[2026-08-25 18:01:38,681.681 INFO    ] Checking for camera pi updates...
[2026-08-25 18:01:38,716.716 INFO    ] 200
[2026-08-25 18:01:38,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:38,760.760 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:01:38,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:01:38,833.833 INFO    ] No camera update needed
[2026-08-25 18:01:38,835.835 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:01:38,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:01:38,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:01:38,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:01:40,893.893 INFO    ] ================================================
[2026-08-25 18:01:40,909.909 INFO    ] Launching Daemon at Tue Aug 25 18:01:40 IST 2026
[2026-08-25 18:01:40,920.920 INFO    ] ================================================
[2026-08-25 18:01:41,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:01:41
[2026-08-25 18:01:42,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:01:42,350.350 INFO    ] Initializing speech engine...
[2026-08-25 18:01:42,370.370 INFO    ] 2026-08-25 18:01:42
[2026-08-25 18:01:42,642.642 INFO    ] 2026-08-25 18:01:42
[2026-08-25 18:01:42,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:01:42,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:01:42,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:01:43,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:01:43,045.045 INFO    ] time= 25/08/2026 18:01:43
[2026-08-25 18:01:43,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:01:43,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:01:43,241.241 INFO    ] No existing commands found in stream
[2026-08-25 18:01:48,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:01:48,256.256 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 18:01:52,640.640 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:01:52,642.642 INFO    ] Checking for system updates...
[2026-08-25 18:01:52,678.678 INFO    ] 200
[2026-08-25 18:01:52,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:52,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:01:52,743.743 INFO    ] No update needed
[2026-08-25 18:01:52,745.745 INFO    ] Checking for camera pi updates...
[2026-08-25 18:01:52,783.783 INFO    ] 200
[2026-08-25 18:01:52,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:01:52,827.827 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:01:52,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:01:52,876.876 INFO    ] No camera update needed
[2026-08-25 18:01:52,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:01:52,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:01:52,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:01:52,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:01:54,930.930 INFO    ] ================================================
[2026-08-25 18:01:54,946.946 INFO    ] Launching Daemon at Tue Aug 25 18:01:54 IST 2026
[2026-08-25 18:01:54,958.958 INFO    ] ================================================
[2026-08-25 18:01:55,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:01:55
[2026-08-25 18:01:56,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:01:56,356.356 INFO    ] Initializing speech engine...
[2026-08-25 18:01:56,364.364 INFO    ] 2026-08-25 18:01:56
[2026-08-25 18:01:56,638.638 INFO    ] 2026-08-25 18:01:56
[2026-08-25 18:01:56,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:01:56,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:01:56,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:01:57,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:01:57,139.139 INFO    ] time= 25/08/2026 18:01:57
[2026-08-25 18:01:57,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:01:57,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:01:57,354.354 INFO    ] No existing commands found in stream
[2026-08-25 18:02:02,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:02:02,379.379 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 18:02:06,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:02:06,477.477 INFO    ] Checking for system updates...
[2026-08-25 18:02:06,513.513 INFO    ] 200
[2026-08-25 18:02:06,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:06,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:02:06,571.571 INFO    ] No update needed
[2026-08-25 18:02:06,573.573 INFO    ] Checking for camera pi updates...
[2026-08-25 18:02:06,607.607 INFO    ] 200
[2026-08-25 18:02:06,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:06,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:02:06,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:02:06,714.714 INFO    ] No camera update needed
[2026-08-25 18:02:06,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:02:06,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:02:06,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:02:06,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:02:08,768.768 INFO    ] ================================================
[2026-08-25 18:02:08,784.784 INFO    ] Launching Daemon at Tue Aug 25 18:02:08 IST 2026
[2026-08-25 18:02:08,796.796 INFO    ] ================================================
[2026-08-25 18:02:09,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:02:09
[2026-08-25 18:02:10,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:02:10,417.417 INFO    ] Initializing speech engine...
[2026-08-25 18:02:10,430.430 INFO    ] 2026-08-25 18:02:10
[2026-08-25 18:02:10,740.740 INFO    ] 2026-08-25 18:02:10
[2026-08-25 18:02:10,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:02:11,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:02:11,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:02:11,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:02:11,240.240 INFO    ] time= 25/08/2026 18:02:11
[2026-08-25 18:02:11,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:02:11,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:02:11,411.411 INFO    ] No existing commands found in stream
[2026-08-25 18:02:16,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:02:16,441.441 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 18:02:20,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:02:20,657.657 INFO    ] Checking for system updates...
[2026-08-25 18:02:20,692.692 INFO    ] 200
[2026-08-25 18:02:20,695.695 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:20,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:02:20,749.749 INFO    ] No update needed
[2026-08-25 18:02:20,751.751 INFO    ] Checking for camera pi updates...
[2026-08-25 18:02:20,785.785 INFO    ] 200
[2026-08-25 18:02:20,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:20,827.827 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:02:20,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:02:20,882.882 INFO    ] No camera update needed
[2026-08-25 18:02:20,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:02:20,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:02:20,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:02:20,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:02:22,938.938 INFO    ] ================================================
[2026-08-25 18:02:22,954.954 INFO    ] Launching Daemon at Tue Aug 25 18:02:22 IST 2026
[2026-08-25 18:02:22,965.965 INFO    ] ================================================
[2026-08-25 18:02:23,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:02:23
[2026-08-25 18:02:24,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:02:24,503.503 INFO    ] Initializing speech engine...
[2026-08-25 18:02:24,517.517 INFO    ] 2026-08-25 18:02:24
[2026-08-25 18:02:24,783.783 INFO    ] 2026-08-25 18:02:24
[2026-08-25 18:02:24,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:02:25,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:02:25,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:02:25,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:02:25,338.338 INFO    ] time= 25/08/2026 18:02:25
[2026-08-25 18:02:25,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:02:25,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:02:25,492.492 INFO    ] No existing commands found in stream
[2026-08-25 18:02:30,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:02:30,510.510 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 18:02:33,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:02:33,031.031 INFO    ] Checking for system updates...
[2026-08-25 18:02:33,072.072 INFO    ] 200
[2026-08-25 18:02:33,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:33,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:02:33,136.136 INFO    ] No update needed
[2026-08-25 18:02:33,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 18:02:33,174.174 INFO    ] 200
[2026-08-25 18:02:33,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:33,221.221 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:02:33,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:02:33,284.284 INFO    ] No camera update needed
[2026-08-25 18:02:33,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:02:33,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:02:33,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:02:33,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:02:35,340.340 INFO    ] ================================================
[2026-08-25 18:02:35,356.356 INFO    ] Launching Daemon at Tue Aug 25 18:02:35 IST 2026
[2026-08-25 18:02:35,367.367 INFO    ] ================================================
[2026-08-25 18:02:35,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:02:35
[2026-08-25 18:02:36,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:02:36,917.917 INFO    ] Initializing speech engine...
[2026-08-25 18:02:36,924.924 INFO    ] 2026-08-25 18:02:36
[2026-08-25 18:02:37,195.195 INFO    ] 2026-08-25 18:02:37
[2026-08-25 18:02:37,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:02:37,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:02:37,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:02:37,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:02:37,768.768 INFO    ] time= 25/08/2026 18:02:37
[2026-08-25 18:02:37,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:02:37,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:02:37,944.944 INFO    ] No existing commands found in stream
[2026-08-25 18:02:42,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:02:42,982.982 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 18:02:44,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:02:44,363.363 INFO    ] Checking for system updates...
[2026-08-25 18:02:44,402.402 INFO    ] 200
[2026-08-25 18:02:44,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:44,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:02:44,459.459 INFO    ] No update needed
[2026-08-25 18:02:44,461.461 INFO    ] Checking for camera pi updates...
[2026-08-25 18:02:44,498.498 INFO    ] 200
[2026-08-25 18:02:44,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:44,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:02:44,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:02:44,598.598 INFO    ] No camera update needed
[2026-08-25 18:02:44,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:02:44,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:02:44,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:02:44,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:02:46,653.653 INFO    ] ================================================
[2026-08-25 18:02:46,669.669 INFO    ] Launching Daemon at Tue Aug 25 18:02:46 IST 2026
[2026-08-25 18:02:46,680.680 INFO    ] ================================================
[2026-08-25 18:02:47,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:02:47
[2026-08-25 18:02:47,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:02:48,159.159 INFO    ] Initializing speech engine...
[2026-08-25 18:02:48,168.168 INFO    ] 2026-08-25 18:02:48
[2026-08-25 18:02:48,430.430 INFO    ] 2026-08-25 18:02:48
[2026-08-25 18:02:48,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:02:48,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:02:48,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:02:48,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:02:48,976.976 INFO    ] time= 25/08/2026 18:02:48
[2026-08-25 18:02:49,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:02:49,048.048 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:02:49,182.182 INFO    ] No existing commands found in stream
[2026-08-25 18:02:54,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:02:54,213.213 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 18:02:58,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:02:58,323.323 INFO    ] Checking for system updates...
[2026-08-25 18:02:58,359.359 INFO    ] 200
[2026-08-25 18:02:58,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:58,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:02:58,422.422 INFO    ] No update needed
[2026-08-25 18:02:58,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 18:02:58,462.462 INFO    ] 200
[2026-08-25 18:02:58,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:02:58,504.504 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:02:58,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:02:58,556.556 INFO    ] No camera update needed
[2026-08-25 18:02:58,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:02:58,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:02:58,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:02:58,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:03:00,610.610 INFO    ] ================================================
[2026-08-25 18:03:00,625.625 INFO    ] Launching Daemon at Tue Aug 25 18:03:00 IST 2026
[2026-08-25 18:03:00,636.636 INFO    ] ================================================
[2026-08-25 18:03:01,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:03:01
[2026-08-25 18:03:02,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:03:02,502.502 INFO    ] Initializing speech engine...
[2026-08-25 18:03:02,512.512 INFO    ] 2026-08-25 18:03:02
[2026-08-25 18:03:02,822.822 INFO    ] 2026-08-25 18:03:02
[2026-08-25 18:03:02,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:03:03,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:03:03,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:03:03,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:03:03,275.275 INFO    ] time= 25/08/2026 18:03:03
[2026-08-25 18:03:03,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:03:03,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:03:03,435.435 INFO    ] No existing commands found in stream
[2026-08-25 18:03:08,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:03:08,463.463 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 18:03:12,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:03:12,092.092 INFO    ] Checking for system updates...
[2026-08-25 18:03:12,131.131 INFO    ] 200
[2026-08-25 18:03:12,134.134 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:12,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:03:12,196.196 INFO    ] No update needed
[2026-08-25 18:03:12,199.199 INFO    ] Checking for camera pi updates...
[2026-08-25 18:03:12,242.242 INFO    ] 200
[2026-08-25 18:03:12,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:12,294.294 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:03:12,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:03:12,441.441 INFO    ] No camera update needed
[2026-08-25 18:03:12,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:03:12,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:03:12,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:03:12,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:03:14,502.502 INFO    ] ================================================
[2026-08-25 18:03:14,518.518 INFO    ] Launching Daemon at Tue Aug 25 18:03:14 IST 2026
[2026-08-25 18:03:14,529.529 INFO    ] ================================================
[2026-08-25 18:03:15,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:03:15
[2026-08-25 18:03:15,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:03:16,138.138 INFO    ] Initializing speech engine...
[2026-08-25 18:03:16,152.152 INFO    ] 2026-08-25 18:03:16
[2026-08-25 18:03:16,466.466 INFO    ] 2026-08-25 18:03:16
[2026-08-25 18:03:16,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:03:16,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:03:16,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:03:16,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:03:16,984.984 INFO    ] time= 25/08/2026 18:03:16
[2026-08-25 18:03:17,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:03:17,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:03:17,165.165 INFO    ] No existing commands found in stream
[2026-08-25 18:03:22,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:03:22,199.199 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 18:03:25,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:03:25,347.347 INFO    ] Checking for system updates...
[2026-08-25 18:03:25,383.383 INFO    ] 200
[2026-08-25 18:03:25,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:25,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:03:25,442.442 INFO    ] No update needed
[2026-08-25 18:03:25,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 18:03:25,487.487 INFO    ] 200
[2026-08-25 18:03:25,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:25,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:03:25,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:03:25,581.581 INFO    ] No camera update needed
[2026-08-25 18:03:25,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:03:25,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:03:25,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:03:25,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:03:27,639.639 INFO    ] ================================================
[2026-08-25 18:03:27,655.655 INFO    ] Launching Daemon at Tue Aug 25 18:03:27 IST 2026
[2026-08-25 18:03:27,667.667 INFO    ] ================================================
[2026-08-25 18:03:28,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:03:28
[2026-08-25 18:03:28,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:03:29,150.150 INFO    ] Initializing speech engine...
[2026-08-25 18:03:29,159.159 INFO    ] 2026-08-25 18:03:29
[2026-08-25 18:03:29,415.415 INFO    ] 2026-08-25 18:03:29
[2026-08-25 18:03:29,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:03:29,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:03:29,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:03:29,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:03:29,897.897 INFO    ] time= 25/08/2026 18:03:29
[2026-08-25 18:03:29,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:03:29,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:03:30,087.087 INFO    ] No existing commands found in stream
[2026-08-25 18:03:35,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:03:35,120.120 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 18:03:35,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:03:35,800.800 INFO    ] Checking for system updates...
[2026-08-25 18:03:35,836.836 INFO    ] 200
[2026-08-25 18:03:35,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:35,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:03:35,902.902 INFO    ] No update needed
[2026-08-25 18:03:35,904.904 INFO    ] Checking for camera pi updates...
[2026-08-25 18:03:35,944.944 INFO    ] 200
[2026-08-25 18:03:35,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:35,989.989 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:03:36,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:03:36,043.043 INFO    ] No camera update needed
[2026-08-25 18:03:36,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:03:36,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:03:36,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:03:36,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:03:38,102.102 INFO    ] ================================================
[2026-08-25 18:03:38,117.117 INFO    ] Launching Daemon at Tue Aug 25 18:03:38 IST 2026
[2026-08-25 18:03:38,127.127 INFO    ] ================================================
[2026-08-25 18:03:38,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:03:38
[2026-08-25 18:03:39,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:03:39,603.603 INFO    ] Initializing speech engine...
[2026-08-25 18:03:39,628.628 INFO    ] 2026-08-25 18:03:39
[2026-08-25 18:03:39,900.900 INFO    ] 2026-08-25 18:03:39
[2026-08-25 18:03:39,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:03:40,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:03:40,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:03:40,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:03:40,325.325 INFO    ] time= 25/08/2026 18:03:40
[2026-08-25 18:03:40,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:03:40,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:03:40,502.502 INFO    ] No existing commands found in stream
[2026-08-25 18:03:45,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:03:45,535.535 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 18:03:48,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:03:48,025.025 INFO    ] Checking for system updates...
[2026-08-25 18:03:48,060.060 INFO    ] 200
[2026-08-25 18:03:48,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:48,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:03:48,126.126 INFO    ] No update needed
[2026-08-25 18:03:48,128.128 INFO    ] Checking for camera pi updates...
[2026-08-25 18:03:48,167.167 INFO    ] 200
[2026-08-25 18:03:48,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:48,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:03:48,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:03:48,272.272 INFO    ] No camera update needed
[2026-08-25 18:03:48,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:03:48,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:03:48,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:03:48,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:03:50,330.330 INFO    ] ================================================
[2026-08-25 18:03:50,345.345 INFO    ] Launching Daemon at Tue Aug 25 18:03:50 IST 2026
[2026-08-25 18:03:50,355.355 INFO    ] ================================================
[2026-08-25 18:03:50,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:03:50
[2026-08-25 18:03:51,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:03:51,773.773 INFO    ] Initializing speech engine...
[2026-08-25 18:03:51,793.793 INFO    ] 2026-08-25 18:03:51
[2026-08-25 18:03:52,043.043 INFO    ] 2026-08-25 18:03:52
[2026-08-25 18:03:52,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:03:52,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:03:52,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:03:52,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:03:52,549.549 INFO    ] time= 25/08/2026 18:03:52
[2026-08-25 18:03:52,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:03:52,616.616 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:03:52,736.736 INFO    ] No existing commands found in stream
[2026-08-25 18:03:57,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:03:57,764.764 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 18:03:59,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:03:59,616.616 INFO    ] Checking for system updates...
[2026-08-25 18:03:59,657.657 INFO    ] 200
[2026-08-25 18:03:59,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:59,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:03:59,720.720 INFO    ] No update needed
[2026-08-25 18:03:59,723.723 INFO    ] Checking for camera pi updates...
[2026-08-25 18:03:59,758.758 INFO    ] 200
[2026-08-25 18:03:59,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:03:59,807.807 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:03:59,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:03:59,863.863 INFO    ] No camera update needed
[2026-08-25 18:03:59,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:03:59,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:03:59,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:03:59,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:04:01,923.923 INFO    ] ================================================
[2026-08-25 18:04:01,944.944 INFO    ] Launching Daemon at Tue Aug 25 18:04:01 IST 2026
[2026-08-25 18:04:01,959.959 INFO    ] ================================================
[2026-08-25 18:04:02,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:04:02
[2026-08-25 18:04:03,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:04:03,535.535 INFO    ] Initializing speech engine...
[2026-08-25 18:04:03,546.546 INFO    ] 2026-08-25 18:04:03
[2026-08-25 18:04:03,807.807 INFO    ] 2026-08-25 18:04:03
[2026-08-25 18:04:03,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:04:04,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:04:04,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:04:04,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:04:04,276.276 INFO    ] time= 25/08/2026 18:04:04
[2026-08-25 18:04:04,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:04:04,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:04:04,479.479 INFO    ] No existing commands found in stream
[2026-08-25 18:04:09,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:04:09,491.491 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 18:04:12,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:04:12,015.015 INFO    ] Checking for system updates...
[2026-08-25 18:04:12,054.054 INFO    ] 200
[2026-08-25 18:04:12,056.056 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:12,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:12,111.111 INFO    ] No update needed
[2026-08-25 18:04:12,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 18:04:12,147.147 INFO    ] 200
[2026-08-25 18:04:12,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:12,189.189 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:04:12,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:12,237.237 INFO    ] No camera update needed
[2026-08-25 18:04:12,240.240 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:04:12,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:04:12,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:04:12,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:04:14,292.292 INFO    ] ================================================
[2026-08-25 18:04:14,308.308 INFO    ] Launching Daemon at Tue Aug 25 18:04:14 IST 2026
[2026-08-25 18:04:14,318.318 INFO    ] ================================================
[2026-08-25 18:04:14,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:04:14
[2026-08-25 18:04:15,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:04:15,744.744 INFO    ] Initializing speech engine...
[2026-08-25 18:04:15,765.765 INFO    ] 2026-08-25 18:04:15
[2026-08-25 18:04:16,025.025 INFO    ] 2026-08-25 18:04:16
[2026-08-25 18:04:16,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:04:16,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:04:16,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:04:16,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:04:16,479.479 INFO    ] time= 25/08/2026 18:04:16
[2026-08-25 18:04:16,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:04:16,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:04:16,731.731 INFO    ] No existing commands found in stream
[2026-08-25 18:04:21,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:04:21,759.759 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 18:04:25,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:04:25,237.237 INFO    ] Checking for system updates...
[2026-08-25 18:04:25,278.278 INFO    ] 200
[2026-08-25 18:04:25,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:25,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:25,337.337 INFO    ] No update needed
[2026-08-25 18:04:25,340.340 INFO    ] Checking for camera pi updates...
[2026-08-25 18:04:25,374.374 INFO    ] 200
[2026-08-25 18:04:25,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:25,419.419 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:04:25,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:25,472.472 INFO    ] No camera update needed
[2026-08-25 18:04:25,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:04:25,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:04:25,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:04:25,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:04:27,530.530 INFO    ] ================================================
[2026-08-25 18:04:27,546.546 INFO    ] Launching Daemon at Tue Aug 25 18:04:27 IST 2026
[2026-08-25 18:04:27,556.556 INFO    ] ================================================
[2026-08-25 18:04:28,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:04:28
[2026-08-25 18:04:28,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:04:29,174.174 INFO    ] Initializing speech engine...
[2026-08-25 18:04:29,188.188 INFO    ] 2026-08-25 18:04:29
[2026-08-25 18:04:29,498.498 INFO    ] 2026-08-25 18:04:29
[2026-08-25 18:04:29,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:04:29,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:04:29,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:04:29,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:04:30,001.001 INFO    ] time= 25/08/2026 18:04:29
[2026-08-25 18:04:30,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:04:30,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:04:30,191.191 INFO    ] No existing commands found in stream
[2026-08-25 18:04:35,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:04:35,226.226 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 18:04:39,224.224 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:04:39,227.227 INFO    ] Checking for system updates...
[2026-08-25 18:04:39,263.263 INFO    ] 200
[2026-08-25 18:04:39,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:39,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:39,323.323 INFO    ] No update needed
[2026-08-25 18:04:39,326.326 INFO    ] Checking for camera pi updates...
[2026-08-25 18:04:39,363.363 INFO    ] 200
[2026-08-25 18:04:39,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:39,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:04:39,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:39,455.455 INFO    ] No camera update needed
[2026-08-25 18:04:39,457.457 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:04:39,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:04:39,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:04:39,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:04:41,509.509 INFO    ] ================================================
[2026-08-25 18:04:41,524.524 INFO    ] Launching Daemon at Tue Aug 25 18:04:41 IST 2026
[2026-08-25 18:04:41,534.534 INFO    ] ================================================
[2026-08-25 18:04:42,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:04:42
[2026-08-25 18:04:42,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:04:42,976.976 INFO    ] Initializing speech engine...
[2026-08-25 18:04:42,989.989 INFO    ] 2026-08-25 18:04:42
[2026-08-25 18:04:43,268.268 INFO    ] 2026-08-25 18:04:43
[2026-08-25 18:04:43,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:04:43,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:04:43,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:04:43,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:04:43,726.726 INFO    ] time= 25/08/2026 18:04:43
[2026-08-25 18:04:43,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:04:43,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:04:43,955.955 INFO    ] No existing commands found in stream
[2026-08-25 18:04:48,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:04:48,993.993 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 18:04:50,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:04:50,982.982 INFO    ] Checking for system updates...
[2026-08-25 18:04:51,018.018 INFO    ] 200
[2026-08-25 18:04:51,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:51,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:51,078.078 INFO    ] No update needed
[2026-08-25 18:04:51,080.080 INFO    ] Checking for camera pi updates...
[2026-08-25 18:04:51,113.113 INFO    ] 200
[2026-08-25 18:04:51,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:04:51,156.156 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:04:51,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:04:51,202.202 INFO    ] No camera update needed
[2026-08-25 18:04:51,205.205 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:04:51,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:04:51,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:04:51,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:04:53,258.258 INFO    ] ================================================
[2026-08-25 18:04:53,279.279 INFO    ] Launching Daemon at Tue Aug 25 18:04:53 IST 2026
[2026-08-25 18:04:53,290.290 INFO    ] ================================================
[2026-08-25 18:04:53,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:04:53
[2026-08-25 18:04:54,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:04:54,748.748 INFO    ] Initializing speech engine...
[2026-08-25 18:04:54,758.758 INFO    ] 2026-08-25 18:04:54
[2026-08-25 18:04:55,020.020 INFO    ] 2026-08-25 18:04:55
[2026-08-25 18:04:55,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:04:55,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:04:55,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:04:55,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:04:55,499.499 INFO    ] time= 25/08/2026 18:04:55
[2026-08-25 18:04:55,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:04:55,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:04:55,721.721 INFO    ] No existing commands found in stream
[2026-08-25 18:05:00,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:05:00,750.750 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 18:05:04,198.198 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:05:04,201.201 INFO    ] Checking for system updates...
[2026-08-25 18:05:04,236.236 INFO    ] 200
[2026-08-25 18:05:04,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:04,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:05:04,294.294 INFO    ] No update needed
[2026-08-25 18:05:04,297.297 INFO    ] Checking for camera pi updates...
[2026-08-25 18:05:04,334.334 INFO    ] 200
[2026-08-25 18:05:04,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:04,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:05:04,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:05:04,424.424 INFO    ] No camera update needed
[2026-08-25 18:05:04,426.426 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:05:04,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:05:04,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:05:04,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:05:06,482.482 INFO    ] ================================================
[2026-08-25 18:05:06,503.503 INFO    ] Launching Daemon at Tue Aug 25 18:05:06 IST 2026
[2026-08-25 18:05:06,524.524 INFO    ] ================================================
[2026-08-25 18:05:07,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:05:07
[2026-08-25 18:05:07,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:05:07,958.958 INFO    ] Initializing speech engine...
[2026-08-25 18:05:07,975.975 INFO    ] 2026-08-25 18:05:07
[2026-08-25 18:05:08,263.263 INFO    ] 2026-08-25 18:05:08
[2026-08-25 18:05:08,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:05:08,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:05:08,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:05:08,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:05:08,703.703 INFO    ] time= 25/08/2026 18:05:08
[2026-08-25 18:05:08,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:05:08,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:05:08,854.854 INFO    ] No existing commands found in stream
[2026-08-25 18:05:13,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:05:13,888.888 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 18:05:16,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:05:16,104.104 INFO    ] Checking for system updates...
[2026-08-25 18:05:16,144.144 INFO    ] 200
[2026-08-25 18:05:16,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:16,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:05:16,206.206 INFO    ] No update needed
[2026-08-25 18:05:16,208.208 INFO    ] Checking for camera pi updates...
[2026-08-25 18:05:16,246.246 INFO    ] 200
[2026-08-25 18:05:16,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:16,290.290 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:05:16,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:05:16,440.440 INFO    ] No camera update needed
[2026-08-25 18:05:16,442.442 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:05:16,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:05:16,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:05:16,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:05:18,495.495 INFO    ] ================================================
[2026-08-25 18:05:18,510.510 INFO    ] Launching Daemon at Tue Aug 25 18:05:18 IST 2026
[2026-08-25 18:05:18,520.520 INFO    ] ================================================
[2026-08-25 18:05:19,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:05:19
[2026-08-25 18:05:19,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:05:20,030.030 INFO    ] Initializing speech engine...
[2026-08-25 18:05:20,041.041 INFO    ] 2026-08-25 18:05:20
[2026-08-25 18:05:20,328.328 INFO    ] 2026-08-25 18:05:20
[2026-08-25 18:05:20,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:05:20,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:05:20,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:05:20,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:05:20,863.863 INFO    ] time= 25/08/2026 18:05:20
[2026-08-25 18:05:20,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:05:20,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:05:21,024.024 INFO    ] No existing commands found in stream
[2026-08-25 18:05:26,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:05:26,061.061 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 18:05:28,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:05:28,276.276 INFO    ] Checking for system updates...
[2026-08-25 18:05:28,312.312 INFO    ] 200
[2026-08-25 18:05:28,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:28,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:05:28,372.372 INFO    ] No update needed
[2026-08-25 18:05:28,375.375 INFO    ] Checking for camera pi updates...
[2026-08-25 18:05:28,409.409 INFO    ] 200
[2026-08-25 18:05:28,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:28,461.461 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:05:28,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:05:28,511.511 INFO    ] No camera update needed
[2026-08-25 18:05:28,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:05:28,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:05:28,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:05:28,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:05:30,566.566 INFO    ] ================================================
[2026-08-25 18:05:30,582.582 INFO    ] Launching Daemon at Tue Aug 25 18:05:30 IST 2026
[2026-08-25 18:05:30,592.592 INFO    ] ================================================
[2026-08-25 18:05:31,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:05:31
[2026-08-25 18:05:31,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:05:32,048.048 INFO    ] Initializing speech engine...
[2026-08-25 18:05:32,069.069 INFO    ] 2026-08-25 18:05:32
[2026-08-25 18:05:32,368.368 INFO    ] 2026-08-25 18:05:32
[2026-08-25 18:05:32,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:05:32,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:05:32,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:05:32,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:05:32,782.782 INFO    ] time= 25/08/2026 18:05:32
[2026-08-25 18:05:32,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:05:32,826.826 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:05:32,912.912 INFO    ] No existing commands found in stream
[2026-08-25 18:05:37,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:05:37,951.951 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 18:05:40,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:05:40,922.922 INFO    ] Checking for system updates...
[2026-08-25 18:05:40,957.957 INFO    ] 200
[2026-08-25 18:05:40,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:41,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:05:41,014.014 INFO    ] No update needed
[2026-08-25 18:05:41,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 18:05:41,052.052 INFO    ] 200
[2026-08-25 18:05:41,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:41,100.100 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:05:41,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:05:41,151.151 INFO    ] No camera update needed
[2026-08-25 18:05:41,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:05:41,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:05:41,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:05:41,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:05:43,206.206 INFO    ] ================================================
[2026-08-25 18:05:43,221.221 INFO    ] Launching Daemon at Tue Aug 25 18:05:43 IST 2026
[2026-08-25 18:05:43,232.232 INFO    ] ================================================
[2026-08-25 18:05:43,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:05:43
[2026-08-25 18:05:44,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:05:44,810.810 INFO    ] Initializing speech engine...
[2026-08-25 18:05:44,819.819 INFO    ] 2026-08-25 18:05:44
[2026-08-25 18:05:45,061.061 INFO    ] 2026-08-25 18:05:45
[2026-08-25 18:05:45,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:05:45,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:05:45,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:05:45,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:05:45,530.530 INFO    ] time= 25/08/2026 18:05:45
[2026-08-25 18:05:45,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:05:45,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:05:45,755.755 INFO    ] No existing commands found in stream
[2026-08-25 18:05:50,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:05:50,779.779 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 18:05:54,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:05:54,658.658 INFO    ] Checking for system updates...
[2026-08-25 18:05:54,709.709 INFO    ] 200
[2026-08-25 18:05:54,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:54,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:05:54,772.772 INFO    ] No update needed
[2026-08-25 18:05:54,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 18:05:54,807.807 INFO    ] 200
[2026-08-25 18:05:54,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:05:54,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:05:54,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:05:54,901.901 INFO    ] No camera update needed
[2026-08-25 18:05:54,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:05:54,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:05:54,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:05:54,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:05:56,957.957 INFO    ] ================================================
[2026-08-25 18:05:56,972.972 INFO    ] Launching Daemon at Tue Aug 25 18:05:56 IST 2026
[2026-08-25 18:05:56,983.983 INFO    ] ================================================
[2026-08-25 18:05:57,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:05:57
[2026-08-25 18:05:58,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:05:58,618.618 INFO    ] Initializing speech engine...
[2026-08-25 18:05:58,626.626 INFO    ] 2026-08-25 18:05:58
[2026-08-25 18:05:58,918.918 INFO    ] 2026-08-25 18:05:58
[2026-08-25 18:05:58,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:05:59,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:05:59,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:05:59,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:05:59,450.450 INFO    ] time= 25/08/2026 18:05:59
[2026-08-25 18:05:59,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:05:59,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:05:59,606.606 INFO    ] No existing commands found in stream
[2026-08-25 18:06:04,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:06:04,630.630 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 18:06:05,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:06:05,408.408 INFO    ] Checking for system updates...
[2026-08-25 18:06:05,457.457 INFO    ] 200
[2026-08-25 18:06:05,460.460 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:05,464.464 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 18:06:05,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 18:06:05,507.507 INFO    ] 200
[2026-08-25 18:06:05,509.509 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:05,512.512 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 18:06:05,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:06:05,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:06:05,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:06:05,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:06:07,568.568 INFO    ] ================================================
[2026-08-25 18:06:07,584.584 INFO    ] Launching Daemon at Tue Aug 25 18:06:07 IST 2026
[2026-08-25 18:06:07,596.596 INFO    ] ================================================
[2026-08-25 18:06:08,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:06:08
[2026-08-25 18:06:08,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:06:09,290.290 INFO    ] Initializing speech engine...
[2026-08-25 18:06:09,299.299 INFO    ] 2026-08-25 18:06:09
[2026-08-25 18:06:09,603.603 INFO    ] 2026-08-25 18:06:09
[2026-08-25 18:06:09,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:06:09,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:06:09,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:06:10,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:06:10,114.114 INFO    ] time= 25/08/2026 18:06:10
[2026-08-25 18:06:10,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:06:10,164.164 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:06:10,310.310 INFO    ] No existing commands found in stream
[2026-08-25 18:06:15,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:06:15,349.349 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 18:06:18,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:06:18,050.050 INFO    ] Checking for system updates...
[2026-08-25 18:06:18,092.092 INFO    ] 200
[2026-08-25 18:06:18,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:18,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:06:18,152.152 INFO    ] No update needed
[2026-08-25 18:06:18,154.154 INFO    ] Checking for camera pi updates...
[2026-08-25 18:06:18,189.189 INFO    ] 200
[2026-08-25 18:06:18,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:18,234.234 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:06:18,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:06:18,284.284 INFO    ] No camera update needed
[2026-08-25 18:06:18,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:06:18,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:06:18,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:06:18,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:06:20,344.344 INFO    ] ================================================
[2026-08-25 18:06:20,359.359 INFO    ] Launching Daemon at Tue Aug 25 18:06:20 IST 2026
[2026-08-25 18:06:20,371.371 INFO    ] ================================================
[2026-08-25 18:06:21,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:06:21
[2026-08-25 18:06:21,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:06:22,043.043 INFO    ] Initializing speech engine...
[2026-08-25 18:06:22,055.055 INFO    ] 2026-08-25 18:06:22
[2026-08-25 18:06:22,367.367 INFO    ] 2026-08-25 18:06:22
[2026-08-25 18:06:22,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:06:22,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:06:22,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:06:22,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:06:22,876.876 INFO    ] time= 25/08/2026 18:06:22
[2026-08-25 18:06:22,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:06:22,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:06:23,031.031 INFO    ] No existing commands found in stream
[2026-08-25 18:06:28,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:06:28,051.051 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 18:06:30,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:06:30,568.568 INFO    ] Checking for system updates...
[2026-08-25 18:06:30,608.608 INFO    ] 200
[2026-08-25 18:06:30,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:30,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:06:30,673.673 INFO    ] No update needed
[2026-08-25 18:06:30,675.675 INFO    ] Checking for camera pi updates...
[2026-08-25 18:06:30,714.714 INFO    ] 200
[2026-08-25 18:06:30,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:30,756.756 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:06:30,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:06:30,806.806 INFO    ] No camera update needed
[2026-08-25 18:06:30,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:06:30,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:06:30,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:06:30,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:06:32,862.862 INFO    ] ================================================
[2026-08-25 18:06:32,878.878 INFO    ] Launching Daemon at Tue Aug 25 18:06:32 IST 2026
[2026-08-25 18:06:32,889.889 INFO    ] ================================================
[2026-08-25 18:06:33,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:06:33
[2026-08-25 18:06:34,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:06:34,455.455 INFO    ] Initializing speech engine...
[2026-08-25 18:06:34,469.469 INFO    ] 2026-08-25 18:06:34
[2026-08-25 18:06:34,785.785 INFO    ] 2026-08-25 18:06:34
[2026-08-25 18:06:34,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:06:35,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:06:35,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:06:35,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:06:35,307.307 INFO    ] time= 25/08/2026 18:06:35
[2026-08-25 18:06:35,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:06:35,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:06:35,468.468 INFO    ] No existing commands found in stream
[2026-08-25 18:06:40,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:06:40,503.503 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 18:06:42,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:06:42,482.482 INFO    ] Checking for system updates...
[2026-08-25 18:06:42,520.520 INFO    ] 200
[2026-08-25 18:06:42,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:42,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:06:42,579.579 INFO    ] No update needed
[2026-08-25 18:06:42,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 18:06:42,616.616 INFO    ] 200
[2026-08-25 18:06:42,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:42,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:06:42,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:06:42,717.717 INFO    ] No camera update needed
[2026-08-25 18:06:42,720.720 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:06:42,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:06:42,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:06:42,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:06:44,778.778 INFO    ] ================================================
[2026-08-25 18:06:44,795.795 INFO    ] Launching Daemon at Tue Aug 25 18:06:44 IST 2026
[2026-08-25 18:06:44,814.814 INFO    ] ================================================
[2026-08-25 18:06:45,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:06:45
[2026-08-25 18:06:46,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:06:46,295.295 INFO    ] Initializing speech engine...
[2026-08-25 18:06:46,310.310 INFO    ] 2026-08-25 18:06:46
[2026-08-25 18:06:46,597.597 INFO    ] 2026-08-25 18:06:46
[2026-08-25 18:06:46,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:06:46,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:06:46,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:06:46,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:06:46,997.997 INFO    ] time= 25/08/2026 18:06:46
[2026-08-25 18:06:47,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:06:47,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:06:47,158.158 INFO    ] No existing commands found in stream
[2026-08-25 18:06:52,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:06:52,191.191 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 18:06:55,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:06:55,186.186 INFO    ] Checking for system updates...
[2026-08-25 18:06:55,223.223 INFO    ] 200
[2026-08-25 18:06:55,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:55,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:06:55,285.285 INFO    ] No update needed
[2026-08-25 18:06:55,287.287 INFO    ] Checking for camera pi updates...
[2026-08-25 18:06:55,322.322 INFO    ] 200
[2026-08-25 18:06:55,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:06:55,366.366 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:06:55,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:06:55,416.416 INFO    ] No camera update needed
[2026-08-25 18:06:55,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:06:55,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:06:55,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:06:55,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:06:57,475.475 INFO    ] ================================================
[2026-08-25 18:06:57,491.491 INFO    ] Launching Daemon at Tue Aug 25 18:06:57 IST 2026
[2026-08-25 18:06:57,502.502 INFO    ] ================================================
[2026-08-25 18:06:58,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:06:58
[2026-08-25 18:06:58,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:06:58,914.914 INFO    ] Initializing speech engine...
[2026-08-25 18:06:58,923.923 INFO    ] 2026-08-25 18:06:58
[2026-08-25 18:06:59,218.218 INFO    ] 2026-08-25 18:06:59
[2026-08-25 18:06:59,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:06:59,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:06:59,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:06:59,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:06:59,641.641 INFO    ] time= 25/08/2026 18:06:59
[2026-08-25 18:06:59,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:06:59,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:06:59,796.796 INFO    ] No existing commands found in stream
[2026-08-25 18:07:04,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:07:04,829.829 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 18:07:06,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:07:06,409.409 INFO    ] Checking for system updates...
[2026-08-25 18:07:06,446.446 INFO    ] 200
[2026-08-25 18:07:06,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:06,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:06,513.513 INFO    ] No update needed
[2026-08-25 18:07:06,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 18:07:06,555.555 INFO    ] 200
[2026-08-25 18:07:06,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:06,599.599 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:07:06,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:06,653.653 INFO    ] No camera update needed
[2026-08-25 18:07:06,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:07:06,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:07:06,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:07:06,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:07:08,720.720 INFO    ] ================================================
[2026-08-25 18:07:08,736.736 INFO    ] Launching Daemon at Tue Aug 25 18:07:08 IST 2026
[2026-08-25 18:07:08,828.828 INFO    ] ================================================
[2026-08-25 18:07:09,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:07:09
[2026-08-25 18:07:10,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:07:10,469.469 INFO    ] Initializing speech engine...
[2026-08-25 18:07:10,480.480 INFO    ] 2026-08-25 18:07:10
[2026-08-25 18:07:10,796.796 INFO    ] 2026-08-25 18:07:10
[2026-08-25 18:07:10,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:07:11,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:07:11,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:07:11,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:07:11,304.304 INFO    ] time= 25/08/2026 18:07:11
[2026-08-25 18:07:11,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:07:11,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:07:11,460.460 INFO    ] No existing commands found in stream
[2026-08-25 18:07:16,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:07:16,483.483 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 18:07:17,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:07:17,342.342 INFO    ] Checking for system updates...
[2026-08-25 18:07:17,378.378 INFO    ] 200
[2026-08-25 18:07:17,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:17,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:17,438.438 INFO    ] No update needed
[2026-08-25 18:07:17,440.440 INFO    ] Checking for camera pi updates...
[2026-08-25 18:07:17,476.476 INFO    ] 200
[2026-08-25 18:07:17,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:17,520.520 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:07:17,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:17,583.583 INFO    ] No camera update needed
[2026-08-25 18:07:17,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:07:17,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:07:17,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:07:17,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:07:19,644.644 INFO    ] ================================================
[2026-08-25 18:07:19,659.659 INFO    ] Launching Daemon at Tue Aug 25 18:07:19 IST 2026
[2026-08-25 18:07:19,670.670 INFO    ] ================================================
[2026-08-25 18:07:20,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:07:20
[2026-08-25 18:07:20,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:07:21,174.174 INFO    ] Initializing speech engine...
[2026-08-25 18:07:21,180.180 INFO    ] 2026-08-25 18:07:21
[2026-08-25 18:07:21,491.491 INFO    ] 2026-08-25 18:07:21
[2026-08-25 18:07:21,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:07:21,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:07:21,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:07:21,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:07:22,012.012 INFO    ] time= 25/08/2026 18:07:21
[2026-08-25 18:07:22,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:07:22,052.052 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:07:22,155.155 INFO    ] No existing commands found in stream
[2026-08-25 18:07:27,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:07:27,179.179 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 18:07:29,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:07:29,290.290 INFO    ] Checking for system updates...
[2026-08-25 18:07:29,329.329 INFO    ] 200
[2026-08-25 18:07:29,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:29,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:07:29,388.388 INFO    ] No update needed
[2026-08-25 18:07:29,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 18:07:29,430.430 INFO    ] 200
[2026-08-25 18:07:29,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:29,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:07:29,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:07:29,626.626 INFO    ] No camera update needed
[2026-08-25 18:07:29,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:07:29,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:07:29,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:07:29,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:07:31,684.684 INFO    ] ================================================
[2026-08-25 18:07:31,700.700 INFO    ] Launching Daemon at Tue Aug 25 18:07:31 IST 2026
[2026-08-25 18:07:31,711.711 INFO    ] ================================================
[2026-08-25 18:07:32,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:07:32
[2026-08-25 18:07:32,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:07:33,215.215 INFO    ] Initializing speech engine...
[2026-08-25 18:07:33,234.234 INFO    ] 2026-08-25 18:07:33
[2026-08-25 18:07:33,481.481 INFO    ] 2026-08-25 18:07:33
[2026-08-25 18:07:33,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:07:33,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:07:33,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:07:33,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:07:33,976.976 INFO    ] time= 25/08/2026 18:07:33
[2026-08-25 18:07:34,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:07:34,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:07:34,224.224 INFO    ] No existing commands found in stream
[2026-08-25 18:07:39,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:07:39,243.243 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 18:07:40,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:07:40,685.685 INFO    ] Checking for system updates...
[2026-08-25 18:07:40,724.724 INFO    ] 200
[2026-08-25 18:07:40,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:40,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:40,781.781 INFO    ] No update needed
[2026-08-25 18:07:40,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 18:07:40,816.816 INFO    ] 200
[2026-08-25 18:07:40,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:40,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:07:40,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:40,910.910 INFO    ] No camera update needed
[2026-08-25 18:07:40,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:07:40,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:07:40,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:07:40,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:07:42,964.964 INFO    ] ================================================
[2026-08-25 18:07:42,980.980 INFO    ] Launching Daemon at Tue Aug 25 18:07:42 IST 2026
[2026-08-25 18:07:42,991.991 INFO    ] ================================================
[2026-08-25 18:07:43,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:07:43
[2026-08-25 18:07:44,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:07:44,442.442 INFO    ] Initializing speech engine...
[2026-08-25 18:07:44,449.449 INFO    ] 2026-08-25 18:07:44
[2026-08-25 18:07:44,698.698 INFO    ] 2026-08-25 18:07:44
[2026-08-25 18:07:44,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:07:44,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:07:44,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:07:45,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:07:45,155.155 INFO    ] time= 25/08/2026 18:07:45
[2026-08-25 18:07:45,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:07:45,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:07:45,359.359 INFO    ] No existing commands found in stream
[2026-08-25 18:07:50,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:07:50,374.374 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 18:07:53,543.543 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:07:53,545.545 INFO    ] Checking for system updates...
[2026-08-25 18:07:53,581.581 INFO    ] 200
[2026-08-25 18:07:53,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:53,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:53,638.638 INFO    ] No update needed
[2026-08-25 18:07:53,640.640 INFO    ] Checking for camera pi updates...
[2026-08-25 18:07:53,677.677 INFO    ] 200
[2026-08-25 18:07:53,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:07:53,720.720 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:07:53,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:07:53,771.771 INFO    ] No camera update needed
[2026-08-25 18:07:53,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:07:53,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:07:53,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:07:53,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:07:55,826.826 INFO    ] ================================================
[2026-08-25 18:07:55,841.841 INFO    ] Launching Daemon at Tue Aug 25 18:07:55 IST 2026
[2026-08-25 18:07:55,852.852 INFO    ] ================================================
[2026-08-25 18:07:56,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:07:56
[2026-08-25 18:07:57,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:07:57,300.300 INFO    ] Initializing speech engine...
[2026-08-25 18:07:57,310.310 INFO    ] 2026-08-25 18:07:57
[2026-08-25 18:07:57,570.570 INFO    ] 2026-08-25 18:07:57
[2026-08-25 18:07:57,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:07:57,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:07:57,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:07:58,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:07:58,115.115 INFO    ] time= 25/08/2026 18:07:58
[2026-08-25 18:07:58,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:07:58,142.142 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:07:58,266.266 INFO    ] No existing commands found in stream
[2026-08-25 18:08:03,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:08:03,281.281 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 18:08:07,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:08:07,287.287 INFO    ] Checking for system updates...
[2026-08-25 18:08:07,323.323 INFO    ] 200
[2026-08-25 18:08:07,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:07,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:08:07,380.380 INFO    ] No update needed
[2026-08-25 18:08:07,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 18:08:07,417.417 INFO    ] 200
[2026-08-25 18:08:07,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:07,465.465 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:08:07,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:08:07,518.518 INFO    ] No camera update needed
[2026-08-25 18:08:07,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:08:07,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:08:07,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:08:07,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:08:09,577.577 INFO    ] ================================================
[2026-08-25 18:08:09,592.592 INFO    ] Launching Daemon at Tue Aug 25 18:08:09 IST 2026
[2026-08-25 18:08:09,603.603 INFO    ] ================================================
[2026-08-25 18:08:10,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:08:10
[2026-08-25 18:08:10,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:08:11,057.057 INFO    ] Initializing speech engine...
[2026-08-25 18:08:11,069.069 INFO    ] 2026-08-25 18:08:11
[2026-08-25 18:08:11,331.331 INFO    ] 2026-08-25 18:08:11
[2026-08-25 18:08:11,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:08:11,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:08:11,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:08:11,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:08:11,891.891 INFO    ] time= 25/08/2026 18:08:11
[2026-08-25 18:08:11,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:08:11,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:08:12,063.063 INFO    ] No existing commands found in stream
[2026-08-25 18:08:17,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:08:17,094.094 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 18:08:21,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:08:21,541.541 INFO    ] Checking for system updates...
[2026-08-25 18:08:21,576.576 INFO    ] 200
[2026-08-25 18:08:21,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:21,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:08:21,633.633 INFO    ] No update needed
[2026-08-25 18:08:21,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 18:08:21,669.669 INFO    ] 200
[2026-08-25 18:08:21,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:21,711.711 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:08:21,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:08:21,774.774 INFO    ] No camera update needed
[2026-08-25 18:08:21,776.776 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:08:21,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:08:21,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:08:21,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:08:23,829.829 INFO    ] ================================================
[2026-08-25 18:08:23,845.845 INFO    ] Launching Daemon at Tue Aug 25 18:08:23 IST 2026
[2026-08-25 18:08:23,856.856 INFO    ] ================================================
[2026-08-25 18:08:24,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:08:24
[2026-08-25 18:08:25,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:08:25,493.493 INFO    ] Initializing speech engine...
[2026-08-25 18:08:25,500.500 INFO    ] 2026-08-25 18:08:25
[2026-08-25 18:08:25,763.763 INFO    ] 2026-08-25 18:08:25
[2026-08-25 18:08:25,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:08:26,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:08:26,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:08:26,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:08:26,310.310 INFO    ] time= 25/08/2026 18:08:26
[2026-08-25 18:08:26,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:08:26,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:08:26,468.468 INFO    ] No existing commands found in stream
[2026-08-25 18:08:31,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:08:31,496.496 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 18:08:32,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:08:32,088.088 INFO    ] Checking for system updates...
[2026-08-25 18:08:32,126.126 INFO    ] 200
[2026-08-25 18:08:32,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:32,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:08:32,188.188 INFO    ] No update needed
[2026-08-25 18:08:32,191.191 INFO    ] Checking for camera pi updates...
[2026-08-25 18:08:32,228.228 INFO    ] 200
[2026-08-25 18:08:32,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:32,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:08:32,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:08:32,340.340 INFO    ] No camera update needed
[2026-08-25 18:08:32,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:08:32,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:08:32,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:08:32,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:08:34,399.399 INFO    ] ================================================
[2026-08-25 18:08:34,414.414 INFO    ] Launching Daemon at Tue Aug 25 18:08:34 IST 2026
[2026-08-25 18:08:34,425.425 INFO    ] ================================================
[2026-08-25 18:08:34,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:08:34
[2026-08-25 18:08:35,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:08:35,842.842 INFO    ] Initializing speech engine...
[2026-08-25 18:08:35,849.849 INFO    ] 2026-08-25 18:08:35
[2026-08-25 18:08:36,091.091 INFO    ] 2026-08-25 18:08:36
[2026-08-25 18:08:36,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:08:36,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:08:36,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:08:36,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:08:36,585.585 INFO    ] time= 25/08/2026 18:08:36
[2026-08-25 18:08:36,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:08:36,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:08:36,785.785 INFO    ] No existing commands found in stream
[2026-08-25 18:08:41,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:08:41,810.810 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 18:08:42,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:08:42,958.958 INFO    ] Checking for system updates...
[2026-08-25 18:08:42,995.995 INFO    ] 200
[2026-08-25 18:08:42,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:43,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:08:43,052.052 INFO    ] No update needed
[2026-08-25 18:08:43,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 18:08:43,089.089 INFO    ] 200
[2026-08-25 18:08:43,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:43,140.140 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:08:43,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:08:43,197.197 INFO    ] No camera update needed
[2026-08-25 18:08:43,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:08:43,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:08:43,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:08:43,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:08:45,253.253 INFO    ] ================================================
[2026-08-25 18:08:45,268.268 INFO    ] Launching Daemon at Tue Aug 25 18:08:45 IST 2026
[2026-08-25 18:08:45,281.281 INFO    ] ================================================
[2026-08-25 18:08:45,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:08:45
[2026-08-25 18:08:46,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:08:46,751.751 INFO    ] Initializing speech engine...
[2026-08-25 18:08:46,759.759 INFO    ] 2026-08-25 18:08:46
[2026-08-25 18:08:47,020.020 INFO    ] 2026-08-25 18:08:47
[2026-08-25 18:08:47,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:08:47,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:08:47,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:08:47,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:08:47,523.523 INFO    ] time= 25/08/2026 18:08:47
[2026-08-25 18:08:47,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:08:47,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:08:47,722.722 INFO    ] No existing commands found in stream
[2026-08-25 18:08:52,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:08:52,747.747 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 18:08:53,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:08:53,596.596 INFO    ] Checking for system updates...
[2026-08-25 18:08:53,635.635 INFO    ] 200
[2026-08-25 18:08:53,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:53,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:08:53,692.692 INFO    ] No update needed
[2026-08-25 18:08:53,694.694 INFO    ] Checking for camera pi updates...
[2026-08-25 18:08:53,727.727 INFO    ] 200
[2026-08-25 18:08:53,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:08:53,770.770 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:08:53,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:08:53,822.822 INFO    ] No camera update needed
[2026-08-25 18:08:53,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:08:53,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:08:53,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:08:53,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:08:55,877.877 INFO    ] ================================================
[2026-08-25 18:08:55,893.893 INFO    ] Launching Daemon at Tue Aug 25 18:08:55 IST 2026
[2026-08-25 18:08:55,904.904 INFO    ] ================================================
[2026-08-25 18:08:56,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:08:56
[2026-08-25 18:08:57,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:08:57,320.320 INFO    ] Initializing speech engine...
[2026-08-25 18:08:57,333.333 INFO    ] 2026-08-25 18:08:57
[2026-08-25 18:08:57,601.601 INFO    ] 2026-08-25 18:08:57
[2026-08-25 18:08:57,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:08:57,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:08:57,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:08:58,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:08:58,087.087 INFO    ] time= 25/08/2026 18:08:58
[2026-08-25 18:08:58,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:08:58,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:08:58,322.322 INFO    ] No existing commands found in stream
[2026-08-25 18:09:03,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:09:03,335.335 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 18:09:05,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:09:05,417.417 INFO    ] Checking for system updates...
[2026-08-25 18:09:05,453.453 INFO    ] 200
[2026-08-25 18:09:05,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:05,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:09:05,515.515 INFO    ] No update needed
[2026-08-25 18:09:05,517.517 INFO    ] Checking for camera pi updates...
[2026-08-25 18:09:05,551.551 INFO    ] 200
[2026-08-25 18:09:05,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:05,595.595 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:09:05,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:09:05,641.641 INFO    ] No camera update needed
[2026-08-25 18:09:05,643.643 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:09:05,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:09:05,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:09:05,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:09:07,697.697 INFO    ] ================================================
[2026-08-25 18:09:07,712.712 INFO    ] Launching Daemon at Tue Aug 25 18:09:07 IST 2026
[2026-08-25 18:09:07,723.723 INFO    ] ================================================
[2026-08-25 18:09:08,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:09:08
[2026-08-25 18:09:08,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:09:09,175.175 INFO    ] Initializing speech engine...
[2026-08-25 18:09:09,184.184 INFO    ] 2026-08-25 18:09:09
[2026-08-25 18:09:09,447.447 INFO    ] 2026-08-25 18:09:09
[2026-08-25 18:09:09,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:09:09,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:09:09,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:09:09,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:09:09,930.930 INFO    ] time= 25/08/2026 18:09:09
[2026-08-25 18:09:09,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:09:10,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:09:10,151.151 INFO    ] No existing commands found in stream
[2026-08-25 18:09:15,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:09:15,167.167 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 18:09:17,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:09:17,256.256 INFO    ] Checking for system updates...
[2026-08-25 18:09:17,292.292 INFO    ] 200
[2026-08-25 18:09:17,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:17,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:09:17,349.349 INFO    ] No update needed
[2026-08-25 18:09:17,351.351 INFO    ] Checking for camera pi updates...
[2026-08-25 18:09:17,387.387 INFO    ] 200
[2026-08-25 18:09:17,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:17,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:09:17,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:09:17,499.499 INFO    ] No camera update needed
[2026-08-25 18:09:17,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:09:17,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:09:17,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:09:17,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:09:19,555.555 INFO    ] ================================================
[2026-08-25 18:09:19,570.570 INFO    ] Launching Daemon at Tue Aug 25 18:09:19 IST 2026
[2026-08-25 18:09:19,584.584 INFO    ] ================================================
[2026-08-25 18:09:20,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:09:20
[2026-08-25 18:09:20,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:09:21,167.167 INFO    ] Initializing speech engine...
[2026-08-25 18:09:21,177.177 INFO    ] 2026-08-25 18:09:21
[2026-08-25 18:09:21,445.445 INFO    ] 2026-08-25 18:09:21
[2026-08-25 18:09:21,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:09:21,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:09:21,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:09:21,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:09:22,009.009 INFO    ] time= 25/08/2026 18:09:21
[2026-08-25 18:09:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:09:22,038.038 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:09:22,154.154 INFO    ] No existing commands found in stream
[2026-08-25 18:09:27,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:09:27,180.180 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 18:09:31,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:09:31,271.271 INFO    ] Checking for system updates...
[2026-08-25 18:09:31,308.308 INFO    ] 200
[2026-08-25 18:09:31,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:31,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:09:31,365.365 INFO    ] No update needed
[2026-08-25 18:09:31,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 18:09:31,404.404 INFO    ] 200
[2026-08-25 18:09:31,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:31,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:09:31,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:09:31,599.599 INFO    ] No camera update needed
[2026-08-25 18:09:31,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:09:31,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:09:31,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:09:31,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:09:33,654.654 INFO    ] ================================================
[2026-08-25 18:09:33,670.670 INFO    ] Launching Daemon at Tue Aug 25 18:09:33 IST 2026
[2026-08-25 18:09:33,681.681 INFO    ] ================================================
[2026-08-25 18:09:34,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:09:34
[2026-08-25 18:09:34,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:09:35,076.076 INFO    ] Initializing speech engine...
[2026-08-25 18:09:35,083.083 INFO    ] 2026-08-25 18:09:35
[2026-08-25 18:09:35,356.356 INFO    ] 2026-08-25 18:09:35
[2026-08-25 18:09:35,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:09:35,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:09:35,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:09:35,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:09:35,850.850 INFO    ] time= 25/08/2026 18:09:35
[2026-08-25 18:09:35,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:09:35,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:09:36,053.053 INFO    ] No existing commands found in stream
[2026-08-25 18:09:36,188.188 INFO    ] Received new command: ID=1787661576195-0
[2026-08-25 18:09:36,248.248 INFO    ] process_and_cleanup_command: msg_id=1787661576195-0
[2026-08-25 18:09:36,302.302 INFO    ] is_command_expired: timestamp=2026-08-25T12:39:35.787Z, expiry=30s
[2026-08-25 18:09:36,515.515 INFO    ] Command removed from stream: 1787661576195-0. returning for processing...
[2026-08-25 18:09:36,553.553 INFO    ] ***** get_valid_command
[2026-08-25 18:09:36,556.556 INFO    ] {'command': 'start-order', 'source': 'webapp', 'timestamp': '2026-08-25T12:39:35.787Z', 'timeout': '10', 'data': '{"request_id":"start-order-1787661575787-tyhws9d1n","orderId":"TM03202401260825180843210","is_vending":false}'}
[2026-08-25 18:09:36,562.562 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787661575787-tyhws9d1n', 'orderId': 'TM03202401260825180843210', 'is_vending': False}
[2026-08-25 18:09:36,596.596 INFO    ] Handling start order...
[2026-08-25 18:09:36,617.617 INFO    ] handle_start_order_command
[2026-08-25 18:09:36,672.672 INFO    ] _send_start_order_success: request_id=start-order-1787661575787-tyhws9d1n, order_id=TM03202401260825180843210
[2026-08-25 18:09:36,679.679 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 18:09:36,823.823 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787661576811-0
[2026-08-25 18:09:36,829.829 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 18:09:36,833.833 INFO    ] Checking for system updates...
[2026-08-25 18:09:36,882.882 INFO    ] 200
[2026-08-25 18:09:36,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:36,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:09:36,951.951 INFO    ] No update needed
[2026-08-25 18:09:36,956.956 INFO    ] Checking for camera pi updates...
[2026-08-25 18:09:36,996.996 INFO    ] 200
[2026-08-25 18:09:37,001.001 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:37,057.057 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:09:37,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:09:37,241.241 INFO    ] No camera update needed
[2026-08-25 18:09:37,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:09:37,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:09:37,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:09:37,361.361 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 18:09:37,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:09:39,416.416 INFO    ] ================================================
[2026-08-25 18:09:39,432.432 INFO    ] Launching Daemon at Tue Aug 25 18:09:39 IST 2026
[2026-08-25 18:09:39,442.442 INFO    ] ================================================
[2026-08-25 18:09:40,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:09:40
[2026-08-25 18:09:40,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:09:40,871.871 INFO    ] Initializing speech engine...
[2026-08-25 18:09:40,880.880 INFO    ] 2026-08-25 18:09:40
[2026-08-25 18:09:41,129.129 INFO    ] 2026-08-25 18:09:41
[2026-08-25 18:09:41,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:09:41,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:09:41,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:09:41,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:09:41,627.627 INFO    ] time= 25/08/2026 18:09:41
[2026-08-25 18:09:41,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:09:41,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:09:41,852.852 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 18:09:41,901.901 INFO    ] Checking historical command: ID=1787661576811-0
[2026-08-25 18:09:41,961.961 INFO    ] process_and_cleanup_command: msg_id=1787661576811-0
[2026-08-25 18:09:41,988.988 INFO    ] is_command_expired: timestamp=2026-08-25T12:39:36.676354Z, expiry=30s
[2026-08-25 18:09:42,185.185 INFO    ] Command removed from stream: 1787661576811-0. returning for processing...
[2026-08-25 18:09:42,197.197 INFO    ] ***** get_valid_command
[2026-08-25 18:09:42,200.200 INFO    ] {'metadata_request_id': 'start-order-1787661575787-tyhws9d1n', 'message_type': 'command_response', 'timestamp': '2026-08-25T12:39:36.676354Z', 'status': 'success', 'imei': 'TM03202401', 'metadata_order_id': 'TM03202401260825180843210', 'message': 'start-order success'}
[2026-08-25 18:09:42,203.203 INFO    ] Checking historical command: ID=1787661579276-0
[2026-08-25 18:09:42,206.206 INFO    ] process_and_cleanup_command: msg_id=1787661579276-0
[2026-08-25 18:09:42,278.278 INFO    ] is_command_expired: timestamp=2026-08-25T12:39:38.941Z, expiry=30s
[2026-08-25 18:09:42,389.389 INFO    ] Command removed from stream: 1787661579276-0. returning for processing...
[2026-08-25 18:09:42,392.392 INFO    ] ***** get_valid_command
[2026-08-25 18:09:42,395.395 INFO    ] {'timestamp': '2026-08-25T12:39:38.941Z', 'command': 'process-order', 'source': 'webapp', 'timeout': '60', 'data': '{"request_id":"process-order-1787661578941-06h2xbz25","orderId":"TM03202401260825180843210","is_vending":false,"accessCode":"35273856"}'}
[2026-08-25 18:09:42,447.447 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1787661578941-06h2xbz25', 'accessCode': '35273856', 'is_vending': False, 'orderId': 'TM03202401260825180843210'}
[2026-08-25 18:09:42,453.453 INFO    ] Handling process order...
[2026-08-25 18:09:42,458.458 INFO    ] Processing process-order command...
[2026-08-25 18:09:42,463.463 INFO    ] 🔍 Lock file Order ID: TM03202401260825180843210, TS: 2026-08-25 18:09:36
[2026-08-25 18:09:42,477.477 INFO    ] ✅ Order lock valid for TM03202401260825180843210
[2026-08-25 18:09:42,480.480 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 18:09:42,485.485 INFO    ] processing access code 35273856 for order TM03202401260825180843210
[2026-08-25 18:09:42,490.490 INFO    ] 🔍 Lock file Order ID: TM03202401260825180843210, TS: 2026-08-25 18:09:36
[2026-08-25 18:09:42,494.494 INFO    ] ✅ Order lock valid for TM03202401260825180843210
[2026-08-25 18:09:42,499.499 INFO    ] 2026-08-25 18:09:42
[2026-08-25 18:09:42,608.608 INFO    ] 200
[2026-08-25 18:09:42,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:09:42,655.655 INFO    ] 35273856
[2026-08-25 18:09:42,660.660 INFO    ] 2026-08-25 18:09:42
[2026-08-25 18:09:42,669.669 INFO    ] session id :465480608
[2026-08-25 18:09:42,675.675 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=35273856&imei=TM03202401&session_id=465480608
[2026-08-25 18:09:45,455.455 INFO    ] 200
[2026-08-25 18:09:45,457.457 INFO    ] {"data": {"access_code": "35273856", "order_id": "TM03202401260825180843210", "bill_amount": "75", "invoice_bill": "75", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500564", "offer_id": "", "door_id": "1", "unit_price": 35, "image_url": "https://images.tinymart.in/product/4500564-6115.jpg", "tray_id": "17", "mrp": "35", "name": "Wholy Fudgy Cakes Red Velvet 32g", "sku_total": 35}, {"offer_desc": "", "qty": 1, "skuid": "4500643", "offer_id": "", "door_id": "2", "unit_price": 40, "image_url": "https://images.tinymart.in/product/4500643-6170.webp", "tray_id": "45", "mrp": "40", "name": "Cavins Belgian chocolate 170ml spl pack", "sku_total": 40}], "mobile": "9790814462"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 18:09:45,460.460 INFO    ] 75
[2026-08-25 18:09:45,462.462 INFO    ] TM03202401260825180843210
[2026-08-25 18:09:45,464.464 INFO    ] 9790814462
[2026-08-25 18:09:45,467.467 INFO    ] 2026-08-25 18:09:45
[2026-08-25 18:09:45,469.469 INFO    ] Door Opening for user mobile ending with  four four six two 
[2026-08-25 18:09:45,471.471 INFO    ] Door Opening for user mobile ending with  four four six two 
[2026-08-25 18:09:45,474.474 INFO    ] f987c0836c167c6b20ee3cd4707149b3
[2026-08-25 18:09:45,480.480 INFO    ] 2026-08-25 18:09:45
[2026-08-25 18:09:45,482.482 INFO    ] playing audio file
[2026-08-25 18:09:45,498.498 INFO    ] 2026-08-25 18:09:45
[2026-08-25 18:09:45,501.501 INFO    ] 2026-08-25 18:09:45
[2026-08-25 18:09:45,505.505 INFO    ] publish_status: order_id=TM03202401260825180843210
[2026-08-25 18:09:45,508.508 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825180843210
[2026-08-25 18:09:45,704.704 INFO    ] [publish_status] Message added to stream with ID: 1787661585741-0
[2026-08-25 18:09:45,707.707 INFO    ] Published to order:TM03202401260825180843210: {'server_status': 'order-started', 'timestamp': '2026-08-25T12:39:45.503287Z', 'order_id': 'TM03202401260825180843210', 'server_response': '{"msg": "Order Data", "rstatus": true, "data": {"order_id": "TM03202401260825180843210", "mobile": "9790814462", "access_code": "35273856", "bill_amount": "75", "proposed_sku_json": [{"offer_desc": "", "skuid": "4500564", "name": "Wholy Fudgy Cakes Red Velvet 32g", "tray_id": "17", "qty": 1, "image_url": "https://images.tinymart.in/product/4500564-6115.jpg", "offer_id": "", "mrp": "35", "sku_total": 35, "door_id": "1", "unit_price": 35}, {"offer_desc": "", "skuid": "4500643", "name": "Cavins Belgian chocolate 170ml spl pack", "tray_id": "45", "qty": 1, "image_url": "https://images.tinymart.in/product/4500643-6170.webp", "offer_id": "", "mrp": "40", "sku_total": 40, "door_id": "2", "unit_price": 40}], "invoice_bill": "75"}, "status": true}'} (ID: 1787661585741-0)
[2026-08-25 18:09:46,235.235 INFO    ] {'server_status': 'order-started', 'order_id': 'TM03202401260825180843210', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'order_id': 'TM03202401260825180843210', 'mobile': '9790814462', 'access_code': '35273856', 'bill_amount': '75', 'proposed_sku_json': [{'offer_desc': '', 'skuid': '4500564', 'name': 'Wholy Fudgy Cakes Red Velvet 32g', 'tray_id': '17', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500564-6115.jpg', 'offer_id': '', 'mrp': '35', 'sku_total': 35, 'door_id': '1', 'unit_price': 35}, {'offer_desc': '', 'skuid': '4500643', 'name': 'Cavins Belgian chocolate 170ml spl pack', 'tray_id': '45', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500643-6170.webp', 'offer_id': '', 'mrp': '40', 'sku_total': 40, 'door_id': '2', 'unit_price': 40}], 'invoice_bill': '75'}, 'status': True}}
[2026-08-25 18:09:46,238.238 INFO    ] 200
[2026-08-25 18:09:46,241.241 INFO    ] {"data":{"server_status":"order-started","order_id":"TM03202401260825180843210","server_response":{"msg":"Order Data","rstatus":true,"data":{"order_id":"TM03202401260825180843210","mobile":"9790814462","access_code":"35273856","bill_amount":"75","proposed_sku_json":[{"offer_desc":"","skuid":"4500564","name":"Wholy Fudgy Cakes Red Velvet 32g","tray_id":"17","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500564-6115.jpg","offer_id":"","mrp":"35","sku_total":35,"door_id":"1","unit_price":35},{"offer_desc":"","skuid":"4500643","name":"Cavins Belgian chocolate 170ml spl pack","tray_id":"45","qty":1,"image_url":"https:\/\/images.tinymart.in\/product\/4500643-6170.webp","offer_id":"","mrp":"40","sku_total":40,"door_id":"2","unit_price":40}],"invoice_bill":"75"},"status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:09:46,244.244 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'order-started', 'order_id': 'TM03202401260825180843210', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'order_id': 'TM03202401260825180843210', 'mobile': '9790814462', 'access_code': '35273856', 'bill_amount': '75', 'proposed_sku_json': [{'offer_desc': '', 'skuid': '4500564', 'name': 'Wholy Fudgy Cakes Red Velvet 32g', 'tray_id': '17', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500564-6115.jpg', 'offer_id': '', 'unit_price': 35, 'mrp': '35', 'door_id': '1', 'sku_total': 35}, {'offer_desc': '', 'skuid': '4500643', 'name': 'Cavins Belgian chocolate 170ml spl pack', 'tray_id': '45', 'qty': 1, 'image_url': 'https://images.tinymart.in/product/4500643-6170.webp', 'offer_id': '', 'unit_price': 40, 'mrp': '40', 'door_id': '2', 'sku_total': 40}], 'invoice_bill': '75'}, 'status': True}}}
[2026-08-25 18:09:46,247.247 INFO    ] 2026-08-25 18:09:46
[2026-08-25 18:09:46,295.295 INFO    ] 200
[2026-08-25 18:09:46,298.298 INFO    ] True
[2026-08-25 18:09:46,476.476 INFO    ] 200
[2026-08-25 18:09:46,478.478 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 18:09:46,481.481 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-08-25 18:09:46,484.484 INFO    ] *** process_order ***
[2026-08-25 18:09:48,200.200 INFO    ] 200
[2026-08-25 18:09:48,202.202 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 18:09:48,205.205 INFO    ] {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-08-25 18:09:48,207.207 INFO    ] *** process_order ***
[2026-08-25 18:09:48,209.209 INFO    ] publish_status: order_id=TM03202401260825180843210
[2026-08-25 18:09:48,212.212 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825180843210
[2026-08-25 18:09:48,293.293 INFO    ] [publish_status] Message added to stream with ID: 1787661588331-0
[2026-08-25 18:09:48,296.296 INFO    ] Published to order:TM03202401260825180843210: {'server_status': 'doorOpened', 'order_id': 'TM03202401260825180843210', 'server_response': '{"delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "status": "True", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open..."}'} (ID: 1787661588331-0)
[2026-08-25 18:09:49,353.353 INFO    ] 2026-08-25 18:09:49
[2026-08-25 18:09:49,356.356 INFO    ] publish_status: order_id=TM03202401260825180843210
[2026-08-25 18:09:49,358.358 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825180843210
[2026-08-25 18:09:49,424.424 INFO    ] [publish_status] Message added to stream with ID: 1787661589462-0
[2026-08-25 18:09:49,427.427 INFO    ] Published to order:TM03202401260825180843210: {'server_status': 'processOrder', 'timestamp': '2026-08-25T12:39:49.354602Z', 'order_id': 'TM03202401260825180843210', 'server_response': '{"delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "rstatus": true, "SectionStatus": {"SubHeader": "Please wait while we process your order", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}'} (ID: 1787661589462-0)
[2026-08-25 18:09:49,559.559 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM03202401260825180843210', 'server_response': {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}}
[2026-08-25 18:09:49,562.562 INFO    ] 200
[2026-08-25 18:09:49,564.564 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM03202401260825180843210","server_response":{"delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","rstatus":true,"SectionStatus":{"SubHeader":"Please wait while we process your order","UI_Header":"","Note":"","Header":" Your order is under process  "},"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:09:49,567.567 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM03202401260825180843210', 'server_response': {'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'true', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}}}
[2026-08-25 18:09:49,569.569 INFO    ] 2026-08-25 18:09:49
[2026-08-25 18:09:49,571.571 INFO    ] None
[2026-08-25 18:09:49,574.574 INFO    ] Opening Door now
[2026-08-25 18:09:49,576.576 INFO    ] Opening Door now
[2026-08-25 18:09:49,578.578 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 18:09:49,581.581 INFO    ] 2026-08-25 18:09:49
[2026-08-25 18:09:49,583.583 INFO    ] playing audio file
[2026-08-25 18:09:49,599.599 INFO    ] 2026-08-25 18:09:49
[2026-08-25 18:09:49,602.602 INFO    ] 2026-08-25 18:09:49
[2026-08-25 18:09:52,700.700 INFO    ] 200
[2026-08-25 18:09:52,702.702 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Wholy Fudgy Cakes Red Velvet 32g"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 18:09:52,706.706 INFO    ] {'SectionSKU': {'skus': [{'name': 'Wholy Fudgy Cakes Red Velvet 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now'}
[2026-08-25 18:09:55,789.789 INFO    ] 200
[2026-08-25 18:09:55,792.792 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Wholy Fudgy Cakes Red Velvet 32g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 18:09:55,795.795 INFO    ] {'SectionSKU': {'skus': [{'name': 'Wholy Fudgy Cakes Red Velvet 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}
[2026-08-25 18:09:58,880.880 INFO    ] 200
[2026-08-25 18:09:58,882.882 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Wholy Fudgy Cakes Red Velvet 32g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 18:09:58,885.885 INFO    ] Please close door 1
[2026-08-25 18:09:58,888.888 INFO    ] Please close door 1
[2026-08-25 18:09:58,890.890 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 18:09:58,893.893 INFO    ] 2026-08-25 18:09:58
[2026-08-25 18:09:58,895.895 INFO    ] playing audio file
[2026-08-25 18:09:58,912.912 INFO    ] 2026-08-25 18:09:58
[2026-08-25 18:09:58,916.916 INFO    ] publish_status: order_id=TM03202401260825180843210
[2026-08-25 18:09:58,918.918 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825180843210
[2026-08-25 18:09:59,002.002 INFO    ] [publish_status] Message added to stream with ID: 1787661599040-0
[2026-08-25 18:09:59,005.005 INFO    ] Published to order:TM03202401260825180843210: {'server_status': 'OrderStatus', 'timestamp': '2026-08-25T12:39:58.914214Z', 'order_id': 'TM03202401260825180843210', 'server_response': '{"SectionSKU": {"skus": [{"name": "Wholy Fudgy Cakes Red Velvet 32g", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1"}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1"}'} (ID: 1787661599040-0)
[2026-08-25 18:09:59,566.566 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825180843210', 'server_response': {'SectionSKU': {'skus': [{'name': 'Wholy Fudgy Cakes Red Velvet 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}}
[2026-08-25 18:09:59,569.569 INFO    ] 200
[2026-08-25 18:09:59,571.571 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM03202401260825180843210","server_response":{"SectionSKU":{"skus":[{"name":"Wholy Fudgy Cakes Red Velvet 32g","qty":1}],"Header":"Pick the below items from the door"},"status":"false","rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 1"},"error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:09:59,575.575 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825180843210', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Wholy Fudgy Cakes Red Velvet 32g'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}}}
[2026-08-25 18:09:59,577.577 INFO    ] {'SectionSKU': {'skus': [{'name': 'Wholy Fudgy Cakes Red Velvet 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1'}
[2026-08-25 18:10:02,636.636 INFO    ] 200
[2026-08-25 18:10:02,639.639 INFO    ] {"SectionMain": {"Header": "Door Close"}, "rstatus": false, "SectionStatus": {"Header": "Door 1 is closed now", "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"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Wholy Fudgy Cakes Red Velvet 32g"}]}, "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "status": "False", "delay": 1000, "voiceNote": "Door 1 is closed now"}
[2026-08-25 18:10:02,643.643 INFO    ] {'delay': 1000, 'SectionSKU': {'skus': [{'name': 'Wholy Fudgy Cakes Red Velvet 32g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': 'Door 1 is closed now'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 1 is closed now'}
[2026-08-25 18:10:05,693.693 INFO    ] 200
[2026-08-25 18:10:05,695.695 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cavins Belgian chocolate 170ml spl pack"}]}, "voiceNote": "Door 2 is open now"}
[2026-08-25 18:10:05,699.699 INFO    ] {'SectionSKU': {'skus': [{'name': 'Cavins Belgian chocolate 170ml spl pack', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 2 is open now'}
[2026-08-25 18:10:08,772.772 INFO    ] 200
[2026-08-25 18:10:08,775.775 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cavins Belgian chocolate 170ml spl pack"}]}, "voiceNote": "Please close door 2"}
[2026-08-25 18:10:08,778.778 INFO    ] Please close door 2
[2026-08-25 18:10:08,780.780 INFO    ] Please close door 2
[2026-08-25 18:10:08,783.783 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-08-25 18:10:08,786.786 INFO    ] 2026-08-25 18:10:08
[2026-08-25 18:10:08,788.788 INFO    ] playing audio file
[2026-08-25 18:10:08,806.806 INFO    ] 2026-08-25 18:10:08
[2026-08-25 18:10:08,810.810 INFO    ] publish_status: order_id=TM03202401260825180843210
[2026-08-25 18:10:08,812.812 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825180843210
[2026-08-25 18:10:08,893.893 INFO    ] [publish_status] Message added to stream with ID: 1787661608931-0
[2026-08-25 18:10:08,896.896 INFO    ] Published to order:TM03202401260825180843210: {'server_status': 'OrderStatus', 'timestamp': '2026-08-25T12:40:08.808211Z', 'order_id': 'TM03202401260825180843210', 'server_response': '{"SectionSKU": {"skus": [{"name": "Cavins Belgian chocolate 170ml spl pack", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "rstatus": false, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 2"}, "error": {"tmessage": "In Progress", "umessage": "In Progress", "data": {}, "code": 20001}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 2"}'} (ID: 1787661608931-0)
[2026-08-25 18:10:09,459.459 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825180843210', 'server_response': {'SectionSKU': {'skus': [{'name': 'Cavins Belgian chocolate 170ml spl pack', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}}
[2026-08-25 18:10:09,462.462 INFO    ] 200
[2026-08-25 18:10:09,464.464 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM03202401260825180843210","server_response":{"SectionSKU":{"skus":[{"name":"Cavins Belgian chocolate 170ml spl pack","qty":1}],"Header":"Pick the below items from the door"},"status":"false","rstatus":false,"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","Header":"Please Close Door 2"},"error":{"tmessage":"In Progress","umessage":"In Progress","data":[],"code":20001},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 2"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:10:09,467.467 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825180843210', 'server_response': {'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cavins Belgian chocolate 170ml spl pack'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': [], 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}}}
[2026-08-25 18:10:09,470.470 INFO    ] {'SectionSKU': {'skus': [{'name': 'Cavins Belgian chocolate 170ml spl pack', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}
[2026-08-25 18:10:12,540.540 INFO    ] 200
[2026-08-25 18:10:12,543.543 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 2", "Note": "Please Close the door after picking up products", "UI_Header": "DOOR 2\nIS \nOPEN \nNOW", "SubHeader": "Please Pick the Products and close the door"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cavins Belgian chocolate 170ml spl pack"}]}, "voiceNote": "Please close door 2"}
[2026-08-25 18:10:12,546.546 INFO    ] {'SectionSKU': {'skus': [{'name': 'Cavins Belgian chocolate 170ml spl pack', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}
[2026-08-25 18:10:15,615.615 INFO    ] 200
[2026-08-25 18:10:15,617.617 INFO    ] {"SectionMain": {"Header": "Door Close"}, "rstatus": false, "SectionStatus": {"Header": "Door 2 is closed now", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "SubHeader": "Please wait for invoice to generate"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cavins Belgian chocolate 170ml spl pack"}]}, "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "status": "False", "delay": 1000, "voiceNote": "Door 2 is closed now"}
[2026-08-25 18:10:15,620.620 INFO    ] {'delay': 1000, 'SectionSKU': {'skus': [{'name': 'Cavins Belgian chocolate 170ml spl pack', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': 'Door 2 is closed now'}, 'error': {'tmessage': 'In Progress', 'umessage': 'In Progress', 'data': {}, 'code': 20001}, 'SectionMain': {'Header': 'Door Close'}, 'voiceNote': 'Door 2 is closed now'}
[2026-08-25 18:10:18,672.672 INFO    ] 200
[2026-08-25 18:10:18,674.674 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 18:10:18,677.677 INFO    ] publish_status: order_id=TM03202401260825180843210
[2026-08-25 18:10:18,680.680 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825180843210
[2026-08-25 18:10:18,741.741 INFO    ] [publish_status] Message added to stream with ID: 1787661618781-0
[2026-08-25 18:10:18,744.744 INFO    ] Published to order:TM03202401260825180843210: {'server_status': 'OrderStatus', 'timestamp': '2026-08-25T12:40:18.676345Z', 'order_id': 'TM03202401260825180843210', 'server_response': '{"delay": 100, "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "status": "True", "rstatus": true, "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "UI_Header": "", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": " Order is complete "}, "SectionMain": {"Header": "Door Closed"}, "voiceNote": "Transaction Completed"}'} (ID: 1787661618781-0)
[2026-08-25 18:10:19,288.288 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825180843210', 'server_response': {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}}
[2026-08-25 18:10:19,291.291 INFO    ] 200
[2026-08-25 18:10:19,293.293 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM03202401260825180843210","server_response":{"delay":100,"SectionSKU":{"skus":[],"Header":"If you like us, tell others... else tell us"},"status":"true","rstatus":true,"SectionStatus":{"SubHeader":"Please wait for invoice to generate","UI_Header":"","Note":"If any due amount, clear at https:\/\/go.tinymart.in","Header":" Order is complete "},"SectionMain":{"Header":"Door Closed"},"voiceNote":"Transaction Completed"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:10:19,296.296 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM03202401260825180843210', 'server_response': {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'status': 'true', 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}}}
[2026-08-25 18:10:19,299.299 INFO    ] {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-08-25 18:10:19,302.302 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,304.304 INFO    ] Order Completed 
[2026-08-25 18:10:19,307.307 INFO    ] Order Completed 
[2026-08-25 18:10:19,310.310 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 18:10:19,312.312 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,315.315 INFO    ] playing audio file
[2026-08-25 18:10:19,333.333 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,337.337 INFO    ] {'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-08-25 18:10:19,339.339 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,733.733 INFO    ] 200
[2026-08-25 18:10:19,736.736 INFO    ] {"anomaly": 0, "cart_offer_desc": "", "rstatus": true, "bill_amount": 35, "orderId": "TM03202401260825180843210", "skus": [{"image_url": "https://images.tinymart.in/product/4500564-6115.jpg", "qty": 1, "unit_price": "35", "door_id": "", "sku_total": 35, "tray_id": "17", "mrp": "35", "skuid": "4500564", "name": "Wholy Fudgy Cakes Red Velvet 32g per peice", "offer_id": ""}], "res": true, "imei": "TM03202401", "total_amount": 35, "order_status": "", "userId": "9790814462"}
[2026-08-25 18:10:19,739.739 INFO    ] {'anomaly': 0, 'order_status': '', 'cart_offer_desc': '', 'userId': '9790814462', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500564-6115.jpg', 'door_id': '', 'mrp': '35', 'tray_id': '17', 'qty': 1, 'name': 'Wholy Fudgy Cakes Red Velvet 32g per peice', 'unit_price': '35', 'offer_id': '', 'skuid': '4500564', 'sku_total': 35}], 'total_amount': 35, 'rstatus': True, 'imei': 'TM03202401', 'bill_amount': 35, 'orderId': 'TM03202401260825180843210', 'res': True}
[2026-08-25 18:10:19,742.742 INFO    ] {'anomaly': 0, 'order_status': '', 'cart_offer_desc': '', 'userId': '9790814462', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500564-6115.jpg', 'door_id': '', 'mrp': '35', 'tray_id': '17', 'qty': 1, 'name': 'Wholy Fudgy Cakes Red Velvet 32g per peice', 'unit_price': '35', 'offer_id': '', 'skuid': '4500564', 'sku_total': 35}], 'total_amount': 35, 'rstatus': True, 'imei': 'TM03202401', 'bill_amount': 35, 'orderId': 'TM03202401260825180843210', 'res': True}
[2026-08-25 18:10:19,745.745 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,748.748 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,750.750 INFO    ] 75
[2026-08-25 18:10:19,753.753 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,756.756 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,759.759 INFO    ]  Your Bill Amount is 35
[2026-08-25 18:10:19,762.762 INFO    ]  Your Bill Amount is 35
[2026-08-25 18:10:19,764.764 INFO    ] 6a831468b581079554833fba4fd1d5b4
[2026-08-25 18:10:19,770.770 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,773.773 INFO    ] playing audio file
[2026-08-25 18:10:19,792.792 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,796.796 INFO    ] 2026-08-25 18:10:19
[2026-08-25 18:10:19,799.799 INFO    ] publish_status: order_id=TM03202401260825180843210
[2026-08-25 18:10:19,802.802 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825180843210
[2026-08-25 18:10:19,870.870 INFO    ] [publish_status] Message added to stream with ID: 1787661619909-0
[2026-08-25 18:10:19,872.872 INFO    ] Published to order:TM03202401260825180843210: {'server_status': 'invoiceOrder', 'timestamp': '2026-08-25T12:40:19.797772Z', 'order_id': 'TM03202401260825180843210', 'server_response': '{"anomaly": 0, "order_status": "", "cart_offer_desc": "", "userId": "9790814462", "skus": [{"image_url": "https://images.tinymart.in/product/4500564-6115.jpg", "door_id": "", "mrp": "35", "tray_id": "17", "qty": 1, "name": "Wholy Fudgy Cakes Red Velvet 32g per peice", "unit_price": "35", "offer_id": "", "skuid": "4500564", "sku_total": 35}], "total_amount": 35, "rstatus": true, "imei": "TM03202401", "bill_amount": 35, "orderId": "TM03202401260825180843210", "res": true}'} (ID: 1787661619909-0)
[2026-08-25 18:10:20,613.613 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825180843210', 'server_response': {'anomaly': 0, 'order_status': '', 'cart_offer_desc': '', 'userId': '9790814462', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500564-6115.jpg', 'door_id': '', 'mrp': '35', 'tray_id': '17', 'qty': 1, 'name': 'Wholy Fudgy Cakes Red Velvet 32g per peice', 'unit_price': '35', 'offer_id': '', 'skuid': '4500564', 'sku_total': 35}], 'total_amount': 35, 'rstatus': True, 'imei': 'TM03202401', 'bill_amount': 35, 'orderId': 'TM03202401260825180843210', 'res': True}}
[2026-08-25 18:10:20,616.616 INFO    ] 200
[2026-08-25 18:10:20,618.618 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM03202401260825180843210","server_response":{"anomaly":0,"order_status":"","cart_offer_desc":"","userId":"9790814462","skus":[{"image_url":"https:\/\/images.tinymart.in\/product\/4500564-6115.jpg","door_id":"","mrp":"35","tray_id":"17","qty":1,"name":"Wholy Fudgy Cakes Red Velvet 32g per peice","unit_price":"35","offer_id":"","skuid":"4500564","sku_total":35}],"total_amount":35,"rstatus":true,"imei":"TM03202401","bill_amount":35,"orderId":"TM03202401260825180843210","res":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:10:20,621.621 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825180843210', 'server_response': {'bill_amount': 35, 'anomaly': 0, 'orderId': 'TM03202401260825180843210', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500564-6115.jpg', 'door_id': '', 'name': 'Wholy Fudgy Cakes Red Velvet 32g per peice', 'tray_id': '17', 'qty': 1, 'offer_id': '', 'mrp': '35', 'sku_total': 35, 'skuid': '4500564', 'unit_price': '35'}], 'total_amount': 35, 'userId': '9790814462', 'imei': 'TM03202401', 'rstatus': True, 'order_status': '', 'cart_offer_desc': '', 'res': True}}}
[2026-08-25 18:10:20,624.624 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'data': 'order updated successfully', 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825180843210', 'server_response': {'bill_amount': 35, 'anomaly': 0, 'orderId': 'TM03202401260825180843210', 'skus': [{'image_url': 'https://images.tinymart.in/product/4500564-6115.jpg', 'door_id': '', 'name': 'Wholy Fudgy Cakes Red Velvet 32g per peice', 'tray_id': '17', 'qty': 1, 'offer_id': '', 'mrp': '35', 'sku_total': 35, 'skuid': '4500564', 'unit_price': '35'}], 'total_amount': 35, 'userId': '9790814462', 'imei': 'TM03202401', 'rstatus': True, 'order_status': '', 'cart_offer_desc': '', 'res': True}}}
[2026-08-25 18:10:20,626.626 INFO    ] 2026-08-25 18:10:20
[2026-08-25 18:10:21,541.541 INFO    ] 200
[2026-08-25 18:10:21,543.543 INFO    ] {"orders_synced": ["TM08202201221219113218412", "TM08202201221219113450682"], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "status": true}
[2026-08-25 18:10:21,546.546 INFO    ] 2026-08-25 18:10:21
[2026-08-25 18:10:21,716.716 INFO    ] 200
[2026-08-25 18:10:21,718.718 INFO    ] True
[2026-08-25 18:10:21,721.721 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825180843210
[2026-08-25 18:10:21,725.725 INFO    ] start order file deleted
[2026-08-25 18:10:21,728.728 INFO    ] Checking for system updates...
[2026-08-25 18:10:21,774.774 INFO    ] 200
[2026-08-25 18:10:21,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:21,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:10:21,840.840 INFO    ] No update needed
[2026-08-25 18:10:21,842.842 INFO    ] Checking for camera pi updates...
[2026-08-25 18:10:21,881.881 INFO    ] 200
[2026-08-25 18:10:21,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:21,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:10:22,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:10:22,006.006 INFO    ] No camera update needed
[2026-08-25 18:10:22,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:10:22,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:10:22,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:10:22,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:10:24,063.063 INFO    ] ================================================
[2026-08-25 18:10:24,078.078 INFO    ] Launching Daemon at Tue Aug 25 18:10:24 IST 2026
[2026-08-25 18:10:24,088.088 INFO    ] ================================================
[2026-08-25 18:10:24,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:10:24
[2026-08-25 18:10:25,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:10:25,545.545 INFO    ] Initializing speech engine...
[2026-08-25 18:10:25,556.556 INFO    ] 2026-08-25 18:10:25
[2026-08-25 18:10:25,816.816 INFO    ] 2026-08-25 18:10:25
[2026-08-25 18:10:25,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:10:26,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:10:26,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:10:26,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:10:26,320.320 INFO    ] time= 25/08/2026 18:10:26
[2026-08-25 18:10:26,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:10:26,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:10:26,519.519 INFO    ] No existing commands found in stream
[2026-08-25 18:10:31,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:10:31,543.543 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 18:10:35,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:10:35,808.808 INFO    ] Checking for system updates...
[2026-08-25 18:10:35,846.846 INFO    ] 200
[2026-08-25 18:10:35,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:35,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:10:35,906.906 INFO    ] No update needed
[2026-08-25 18:10:35,908.908 INFO    ] Checking for camera pi updates...
[2026-08-25 18:10:35,941.941 INFO    ] 200
[2026-08-25 18:10:35,944.944 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:35,986.986 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:10:36,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:10:36,050.050 INFO    ] No camera update needed
[2026-08-25 18:10:36,052.052 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:10:36,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:10:36,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:10:36,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:10:38,106.106 INFO    ] ================================================
[2026-08-25 18:10:38,121.121 INFO    ] Launching Daemon at Tue Aug 25 18:10:38 IST 2026
[2026-08-25 18:10:38,131.131 INFO    ] ================================================
[2026-08-25 18:10:38,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:10:38
[2026-08-25 18:10:39,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:10:39,652.652 INFO    ] Initializing speech engine...
[2026-08-25 18:10:39,661.661 INFO    ] 2026-08-25 18:10:39
[2026-08-25 18:10:39,907.907 INFO    ] 2026-08-25 18:10:39
[2026-08-25 18:10:39,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:10:40,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:10:40,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:10:40,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:10:40,395.395 INFO    ] time= 25/08/2026 18:10:40
[2026-08-25 18:10:40,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:10:40,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:10:40,624.624 INFO    ] No existing commands found in stream
[2026-08-25 18:10:45,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:10:45,651.651 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 18:10:47,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:10:47,964.964 INFO    ] Checking for system updates...
[2026-08-25 18:10:48,002.002 INFO    ] 200
[2026-08-25 18:10:48,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:48,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:10:48,059.059 INFO    ] No update needed
[2026-08-25 18:10:48,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 18:10:48,094.094 INFO    ] 200
[2026-08-25 18:10:48,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:48,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:10:48,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:10:48,198.198 INFO    ] No camera update needed
[2026-08-25 18:10:48,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:10:48,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:10:48,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:10:48,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:10:50,252.252 INFO    ] ================================================
[2026-08-25 18:10:50,267.267 INFO    ] Launching Daemon at Tue Aug 25 18:10:50 IST 2026
[2026-08-25 18:10:50,278.278 INFO    ] ================================================
[2026-08-25 18:10:50,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:10:50
[2026-08-25 18:10:51,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:10:51,811.811 INFO    ] Initializing speech engine...
[2026-08-25 18:10:51,821.821 INFO    ] 2026-08-25 18:10:51
[2026-08-25 18:10:52,092.092 INFO    ] 2026-08-25 18:10:52
[2026-08-25 18:10:52,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:10:52,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:10:52,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:10:52,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:10:52,622.622 INFO    ] time= 25/08/2026 18:10:52
[2026-08-25 18:10:52,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:10:52,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:10:52,797.797 INFO    ] No existing commands found in stream
[2026-08-25 18:10:57,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:10:57,816.816 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 18:10:58,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:10:58,827.827 INFO    ] Checking for system updates...
[2026-08-25 18:10:58,866.866 INFO    ] 200
[2026-08-25 18:10:58,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:58,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:10:58,929.929 INFO    ] No update needed
[2026-08-25 18:10:58,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 18:10:58,968.968 INFO    ] 200
[2026-08-25 18:10:58,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:10:59,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:10:59,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:10:59,062.062 INFO    ] No camera update needed
[2026-08-25 18:10:59,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:10:59,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:10:59,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:10:59,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:11:01,119.119 INFO    ] ================================================
[2026-08-25 18:11:01,134.134 INFO    ] Launching Daemon at Tue Aug 25 18:11:01 IST 2026
[2026-08-25 18:11:01,147.147 INFO    ] ================================================
[2026-08-25 18:11:01,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:11:01
[2026-08-25 18:11:02,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:11:02,875.875 INFO    ] Initializing speech engine...
[2026-08-25 18:11:02,887.887 INFO    ] 2026-08-25 18:11:02
[2026-08-25 18:11:03,179.179 INFO    ] 2026-08-25 18:11:03
[2026-08-25 18:11:03,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:11:03,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:11:03,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:11:03,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:11:03,717.717 INFO    ] time= 25/08/2026 18:11:03
[2026-08-25 18:11:03,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:11:03,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:11:03,879.879 INFO    ] No existing commands found in stream
[2026-08-25 18:11:08,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:11:08,907.907 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 18:11:10,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:11:10,645.645 INFO    ] Checking for system updates...
[2026-08-25 18:11:10,680.680 INFO    ] 200
[2026-08-25 18:11:10,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:10,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:11:10,738.738 INFO    ] No update needed
[2026-08-25 18:11:10,740.740 INFO    ] Checking for camera pi updates...
[2026-08-25 18:11:10,774.774 INFO    ] 200
[2026-08-25 18:11:10,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:10,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:11:10,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:11:10,873.873 INFO    ] No camera update needed
[2026-08-25 18:11:10,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:11:10,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:11:10,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:11:10,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:11:12,928.928 INFO    ] ================================================
[2026-08-25 18:11:12,943.943 INFO    ] Launching Daemon at Tue Aug 25 18:11:12 IST 2026
[2026-08-25 18:11:12,954.954 INFO    ] ================================================
[2026-08-25 18:11:13,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:11:13
[2026-08-25 18:11:14,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:11:14,414.414 INFO    ] Initializing speech engine...
[2026-08-25 18:11:14,421.421 INFO    ] 2026-08-25 18:11:14
[2026-08-25 18:11:14,685.685 INFO    ] 2026-08-25 18:11:14
[2026-08-25 18:11:14,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:11:14,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:11:14,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:11:15,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:11:15,171.171 INFO    ] time= 25/08/2026 18:11:15
[2026-08-25 18:11:15,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:11:15,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:11:15,381.381 INFO    ] No existing commands found in stream
[2026-08-25 18:11:20,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:11:20,407.407 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 18:11:22,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:11:22,517.517 INFO    ] Checking for system updates...
[2026-08-25 18:11:22,553.553 INFO    ] 200
[2026-08-25 18:11:22,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:22,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:11:22,610.610 INFO    ] No update needed
[2026-08-25 18:11:22,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 18:11:22,646.646 INFO    ] 200
[2026-08-25 18:11:22,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:22,701.701 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:11:22,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:11:22,751.751 INFO    ] No camera update needed
[2026-08-25 18:11:22,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:11:22,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:11:22,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:11:22,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:11:24,806.806 INFO    ] ================================================
[2026-08-25 18:11:24,821.821 INFO    ] Launching Daemon at Tue Aug 25 18:11:24 IST 2026
[2026-08-25 18:11:24,832.832 INFO    ] ================================================
[2026-08-25 18:11:25,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:11:25
[2026-08-25 18:11:25,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:11:26,254.254 INFO    ] Initializing speech engine...
[2026-08-25 18:11:26,263.263 INFO    ] 2026-08-25 18:11:26
[2026-08-25 18:11:26,513.513 INFO    ] 2026-08-25 18:11:26
[2026-08-25 18:11:26,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:11:26,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:11:26,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:11:26,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:11:26,983.983 INFO    ] time= 25/08/2026 18:11:26
[2026-08-25 18:11:27,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:11:27,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:11:27,224.224 INFO    ] No existing commands found in stream
[2026-08-25 18:11:32,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:11:32,250.250 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 18:11:33,693.693 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:11:33,695.695 INFO    ] Checking for system updates...
[2026-08-25 18:11:33,736.736 INFO    ] 200
[2026-08-25 18:11:33,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:33,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:11:33,795.795 INFO    ] No update needed
[2026-08-25 18:11:33,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 18:11:33,838.838 INFO    ] 200
[2026-08-25 18:11:33,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:33,882.882 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:11:34,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:11:34,039.039 INFO    ] No camera update needed
[2026-08-25 18:11:34,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:11:34,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:11:34,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:11:34,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:11:36,100.100 INFO    ] ================================================
[2026-08-25 18:11:36,115.115 INFO    ] Launching Daemon at Tue Aug 25 18:11:36 IST 2026
[2026-08-25 18:11:36,126.126 INFO    ] ================================================
[2026-08-25 18:11:36,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:11:36
[2026-08-25 18:11:37,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:11:37,571.571 INFO    ] Initializing speech engine...
[2026-08-25 18:11:37,590.590 INFO    ] 2026-08-25 18:11:37
[2026-08-25 18:11:37,853.853 INFO    ] 2026-08-25 18:11:37
[2026-08-25 18:11:37,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:11:38,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:11:38,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:11:38,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:11:38,331.331 INFO    ] time= 25/08/2026 18:11:38
[2026-08-25 18:11:38,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:11:38,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:11:38,551.551 INFO    ] No existing commands found in stream
[2026-08-25 18:11:42,848.848 INFO    ] Received new command: ID=1787661702799-0
[2026-08-25 18:11:42,850.850 INFO    ] process_and_cleanup_command: msg_id=1787661702799-0
[2026-08-25 18:11:42,853.853 INFO    ] is_command_expired: timestamp=2026-08-25T12:41:42.219Z, expiry=30s
[2026-08-25 18:11:42,944.944 INFO    ] Command removed from stream: 1787661702799-0. returning for processing...
[2026-08-25 18:11:42,947.947 INFO    ] ***** get_valid_command
[2026-08-25 18:11:42,949.949 INFO    ] {'timeout': '10', 'command': 'start-order', 'timestamp': '2026-08-25T12:41:42.219Z', 'data': '{"request_id":"start-order-1787661702219-yuyqmcokv","orderId":"TM03202401260825181132245","is_vending":false}', 'source': 'webapp'}
[2026-08-25 18:11:42,952.952 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787661702219-yuyqmcokv', 'orderId': 'TM03202401260825181132245', 'is_vending': False}
[2026-08-25 18:11:42,954.954 INFO    ] Handling start order...
[2026-08-25 18:11:42,956.956 INFO    ] handle_start_order_command
[2026-08-25 18:11:42,962.962 INFO    ] _send_start_order_success: request_id=start-order-1787661702219-yuyqmcokv, order_id=TM03202401260825181132245
[2026-08-25 18:11:42,965.965 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 18:11:43,042.042 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787661703082-0
[2026-08-25 18:11:43,044.044 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 18:11:43,047.047 INFO    ] Checking for system updates...
[2026-08-25 18:11:43,092.092 INFO    ] 200
[2026-08-25 18:11:43,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:43,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:11:43,150.150 INFO    ] No update needed
[2026-08-25 18:11:43,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 18:11:43,186.186 INFO    ] 200
[2026-08-25 18:11:43,189.189 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:43,229.229 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:11:43,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:11:43,279.279 INFO    ] No camera update needed
[2026-08-25 18:11:43,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:11:43,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:11:43,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:11:43,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:11:45,333.333 INFO    ] ================================================
[2026-08-25 18:11:45,349.349 INFO    ] Launching Daemon at Tue Aug 25 18:11:45 IST 2026
[2026-08-25 18:11:45,360.360 INFO    ] ================================================
[2026-08-25 18:11:45,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:11:45
[2026-08-25 18:11:46,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:11:46,845.845 INFO    ] Initializing speech engine...
[2026-08-25 18:11:46,856.856 INFO    ] 2026-08-25 18:11:46
[2026-08-25 18:11:47,118.118 INFO    ] 2026-08-25 18:11:47
[2026-08-25 18:11:47,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:11:47,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:11:47,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:11:47,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:11:47,596.596 INFO    ] time= 25/08/2026 18:11:47
[2026-08-25 18:11:47,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:11:47,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:11:47,796.796 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 18:11:47,840.840 INFO    ] Checking historical command: ID=1787661703082-0
[2026-08-25 18:11:47,900.900 INFO    ] process_and_cleanup_command: msg_id=1787661703082-0
[2026-08-25 18:11:47,932.932 INFO    ] is_command_expired: timestamp=2026-08-25T12:41:42.963420Z, expiry=30s
[2026-08-25 18:11:48,141.141 INFO    ] Command removed from stream: 1787661703082-0. returning for processing...
[2026-08-25 18:11:48,144.144 INFO    ] ***** get_valid_command
[2026-08-25 18:11:48,156.156 INFO    ] {'timestamp': '2026-08-25T12:41:42.963420Z', 'message': 'start-order success', 'metadata_request_id': 'start-order-1787661702219-yuyqmcokv', 'metadata_order_id': 'TM03202401260825181132245', 'status': 'success', 'message_type': 'command_response', 'imei': 'TM03202401'}
[2026-08-25 18:11:48,159.159 INFO    ] Processed historical messages, no valid command available...
[2026-08-25 18:11:53,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:11:53,172.172 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 18:11:55,228.228 INFO    ] {'ex_order_id': None, 'short_order_id': None, 'environment': '9', 'sku_json': '0-0', 'last_modified_at': '2026-08-25 18:11:33', 'previous_pending': '0.0', 'invoice_balance': '0.0', 'operator_sms_sent': '0', 'order_amount': '0', 'video_url': None, 'wallet_txn_ids_json': None, 'server_response': '', 'delivery_fee': '0', 'modified_at': '2026-08-25 18:11:45', 'affiliate_name': '', 'server_status': 'init-process', 'delivery_address_id': None, 'type_of_order': 'order', 'partner_order_details': None, 'user_id': '9790814462', 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}, 'order_id': 'TM03202401260825181132245', 'command_todo': None, 'all_command_response': None, 'status': 'active', 'amount_received': '40.0', 'balance_gateway': None, 'command_request_data': None, 'delivery_details_json': None, 'pre_auth_amount': '40.0', 'short_order_expiry': None, 'command_for': None, 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":40,"image_url":"https://images.tinymart.in/product/4500643-6170.webp","door_id":"2","qty":1,"name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","unit_price":40,"skuid":"4500643","tray_id":"45","offer_id":"","offer_desc":""}],"bill_amount":40,"orderId":"TM03202401260825181132245","total_amount":40,"cart_offer_desc":"","imei":"TM03202401","userId":"9790814462"}', 'pre_auth_gateway': 'neuu_wallet', 'last_command_response': None, 'anomaly': '0', 'invoice_final_settled_amount': '0.0', 'vm_id': '1711555283773', 'created_at': '2026-08-25 18:11:45', 'receipt_id': None, 'access_code': '77591646', 'weight_based_response': None}
[2026-08-25 18:11:55,241.241 INFO    ] Checking for system updates...
[2026-08-25 18:11:55,279.279 INFO    ] 200
[2026-08-25 18:11:55,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:55,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:11:55,337.337 INFO    ] No update needed
[2026-08-25 18:11:55,340.340 INFO    ] Checking for camera pi updates...
[2026-08-25 18:11:55,375.375 INFO    ] 200
[2026-08-25 18:11:55,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:11:55,424.424 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:11:55,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:11:55,480.480 INFO    ] No camera update needed
[2026-08-25 18:11:55,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:11:55,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:11:55,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:11:55,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:11:57,537.537 INFO    ] ================================================
[2026-08-25 18:11:57,553.553 INFO    ] Launching Daemon at Tue Aug 25 18:11:57 IST 2026
[2026-08-25 18:11:57,564.564 INFO    ] ================================================
[2026-08-25 18:11:58,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:11:58
[2026-08-25 18:11:58,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:11:59,025.025 INFO    ] Initializing speech engine...
[2026-08-25 18:11:59,030.030 INFO    ] 2026-08-25 18:11:59
[2026-08-25 18:11:59,280.280 INFO    ] 2026-08-25 18:11:59
[2026-08-25 18:11:59,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:11:59,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:11:59,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:11:59,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:11:59,836.836 INFO    ] time= 25/08/2026 18:11:59
[2026-08-25 18:11:59,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:11:59,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:11:59,992.992 INFO    ] No existing commands found in stream
[2026-08-25 18:12:05,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:12:05,010.010 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 18:12:08,146.146 INFO    ] {'command_for': None, 'delivery_details_json': None, 'command_todo': None, 'short_order_expiry': None, 'modified_at': '2026-08-25 18:11:45', 'partner_order_details': None, 'receipt_id': None, 'order_amount': '0', 'server_status': 'init-process', 'status': 'active', 'last_modified_at': '2026-08-25 18:11:33', 'invoice_balance': '0.0', 'all_command_response': None, 'balance_gateway': None, 'invoice_final_settled_amount': '0.0', 'created_at': '2026-08-25 18:11:45', 'access_code': '77591646', 'sku_json': '0-0', 'wallet_txn_ids_json': None, 'anomaly': '0', 'pre_auth_gateway': 'neuu_wallet', 'previous_pending': '0.0', 'short_order_id': None, 'weight_based_response': None, 'ex_order_id': None, 'pre_auth_amount': '40.0', 'command_request_data': None, 'last_command_response': None, 'delivery_address_id': None, 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}, 'video_url': None, 'amount_received': '40.0', 'affiliate_name': '', 'user_id': '9790814462', 'operator_sms_sent': '0', 'server_response': '', 'vm_id': '1711555283773', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":40,"image_url":"https://images.tinymart.in/product/4500643-6170.webp","door_id":"2","qty":1,"name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","unit_price":40,"skuid":"4500643","tray_id":"45","offer_id":"","offer_desc":""}],"bill_amount":40,"orderId":"TM03202401260825181132245","total_amount":40,"cart_offer_desc":"","imei":"TM03202401","userId":"9790814462"}', 'order_id': 'TM03202401260825181132245', 'type_of_order': 'order', 'environment': '9', 'delivery_fee': '0'}
[2026-08-25 18:12:08,172.172 INFO    ] Checking for system updates...
[2026-08-25 18:12:08,209.209 INFO    ] 200
[2026-08-25 18:12:08,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:08,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:12:08,269.269 INFO    ] No update needed
[2026-08-25 18:12:08,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 18:12:08,305.305 INFO    ] 200
[2026-08-25 18:12:08,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:08,347.347 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:12:08,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:12:08,399.399 INFO    ] No camera update needed
[2026-08-25 18:12:08,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:12:08,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:12:08,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:12:08,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:12:10,455.455 INFO    ] ================================================
[2026-08-25 18:12:10,471.471 INFO    ] Launching Daemon at Tue Aug 25 18:12:10 IST 2026
[2026-08-25 18:12:10,482.482 INFO    ] ================================================
[2026-08-25 18:12:11,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:12:11
[2026-08-25 18:12:11,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:12:11,940.940 INFO    ] Initializing speech engine...
[2026-08-25 18:12:11,948.948 INFO    ] 2026-08-25 18:12:11
[2026-08-25 18:12:12,205.205 INFO    ] 2026-08-25 18:12:12
[2026-08-25 18:12:12,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:12:12,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:12:12,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:12:12,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:12:12,636.636 INFO    ] time= 25/08/2026 18:12:12
[2026-08-25 18:12:12,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:12:12,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:12:12,912.912 INFO    ] No existing commands found in stream
[2026-08-25 18:12:17,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:12:17,931.931 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 18:12:20,146.146 INFO    ] {'modified_at': '2026-08-25 18:11:45', 'type_of_order': 'order', 'server_response': '', 'partner_order_details': None, 'ex_order_id': None, 'short_order_id': None, 'video_url': None, 'receipt_id': None, 'weight_based_response': None, 'last_command_response': None, 'response': {'data': 'order updated', 'msg': 'order updated', 'status': True}, 'invoice_final_settled_amount': '0.0', 'anomaly': '0', 'operator_sms_sent': '0', 'access_code': '77591646', 'environment': '9', 'delivery_fee': '0', 'status': 'active', 'previous_pending': '0.0', 'server_status': 'init-process', 'all_command_response': None, 'user_id': '9790814462', 'delivery_details_json': None, 'invoice_balance': '0.0', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":40,"image_url":"https://images.tinymart.in/product/4500643-6170.webp","door_id":"2","qty":1,"name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","unit_price":40,"skuid":"4500643","tray_id":"45","offer_id":"","offer_desc":""}],"bill_amount":40,"orderId":"TM03202401260825181132245","total_amount":40,"cart_offer_desc":"","imei":"TM03202401","userId":"9790814462"}', 'amount_received': '40.0', 'command_for': None, 'pre_auth_amount': '40.0', 'command_todo': None, 'wallet_txn_ids_json': None, 'short_order_expiry': None, 'sku_json': '0-0', 'order_amount': '0', 'order_id': 'TM03202401260825181132245', 'last_modified_at': '2026-08-25 18:11:33', 'delivery_address_id': None, 'command_request_data': None, 'pre_auth_gateway': 'neuu_wallet', 'affiliate_name': '', 'balance_gateway': None, 'vm_id': '1711555283773', 'created_at': '2026-08-25 18:11:45'}
[2026-08-25 18:12:20,172.172 INFO    ] Checking for system updates...
[2026-08-25 18:12:20,208.208 INFO    ] 200
[2026-08-25 18:12:20,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:20,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:12:20,268.268 INFO    ] No update needed
[2026-08-25 18:12:20,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 18:12:20,303.303 INFO    ] 200
[2026-08-25 18:12:20,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:20,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:12:20,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:12:20,396.396 INFO    ] No camera update needed
[2026-08-25 18:12:20,399.399 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:12:20,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:12:20,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:12:20,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:12:22,450.450 INFO    ] ================================================
[2026-08-25 18:12:22,465.465 INFO    ] Launching Daemon at Tue Aug 25 18:12:22 IST 2026
[2026-08-25 18:12:22,476.476 INFO    ] ================================================
[2026-08-25 18:12:23,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:12:23
[2026-08-25 18:12:23,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:12:24,057.057 INFO    ] Initializing speech engine...
[2026-08-25 18:12:24,069.069 INFO    ] 2026-08-25 18:12:24
[2026-08-25 18:12:24,345.345 INFO    ] 2026-08-25 18:12:24
[2026-08-25 18:12:24,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:12:24,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:12:24,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:12:24,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:12:24,892.892 INFO    ] time= 25/08/2026 18:12:24
[2026-08-25 18:12:24,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:12:24,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:12:25,065.065 INFO    ] No existing commands found in stream
[2026-08-25 18:12:30,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:12:30,098.098 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 18:12:31,932.932 INFO    ] {'previous_pending': '0.0', 'access_code': '77591646', 'video_url': None, 'affiliate_name': '', 'environment': '9', 'delivery_fee': '0', 'modified_at': '2026-08-25 18:11:45', 'last_command_response': None, 'created_at': '2026-08-25 18:11:45', 'wallet_txn_ids_json': None, 'vm_id': '1711555283773', 'type_of_order': 'order', 'proposed_sku_json': '{"res":true,"skus":[{"sku_total":40,"image_url":"https://images.tinymart.in/product/4500643-6170.webp","door_id":"2","qty":1,"name":"Cavins Belgian chocolate 170ml spl pack","mrp":"40","unit_price":40,"skuid":"4500643","tray_id":"45","offer_id":"","offer_desc":""}],"bill_amount":40,"orderId":"TM03202401260825181132245","total_amount":40,"cart_offer_desc":"","imei":"TM03202401","userId":"9790814462"}', 'status': 'active', 'ex_order_id': None, 'user_id': '9790814462', 'receipt_id': None, 'invoice_balance': '0.0', 'order_amount': '0', 'pre_auth_gateway': 'neuu_wallet', 'server_response': '', 'command_for': None, 'operator_sms_sent': '0', 'anomaly': '0', 'weight_based_response': None, 'all_command_response': None, 'short_order_expiry': None, 'last_modified_at': '2026-08-25 18:11:33', 'delivery_details_json': None, 'amount_received': '40.0', 'short_order_id': None, 'delivery_address_id': None, 'invoice_final_settled_amount': '0.0', 'command_todo': None, 'response': {'data': 'order updated', 'status': True, 'msg': 'order updated'}, 'sku_json': '0-0', 'balance_gateway': None, 'pre_auth_amount': '40.0', 'command_request_data': None, 'partner_order_details': None, 'server_status': 'init-process', 'order_id': 'TM03202401260825181132245'}
[2026-08-25 18:12:31,960.960 INFO    ] Lock file expired, elapsed: 49s, order: TM03202401260825181132245
[2026-08-25 18:12:31,963.963 INFO    ] Cancelling order TM03202401260825181132245 - Error 20101: Order timed out. Please try again.
[2026-08-25 18:12:32,058.058 INFO    ] {'server_response': {'error_message': 'Order timed out. Please try again.', 'SectionStatus': {'Note': '', 'Header': 'Order Failed', 'SubHeader': '[20101] Order timed out. Please try again.'}, 'error_code': 20101}, 'server_status': 'Cancelled', 'order_id': 'TM03202401260825181132245'}
[2026-08-25 18:12:32,061.061 INFO    ] 200
[2026-08-25 18:12:32,064.064 INFO    ] {"data":{"server_response":{"error_message":"Order timed out. Please try again.","SectionStatus":{"Note":"","Header":"Order Failed","SubHeader":"[20101] Order timed out. Please try again."},"error_code":20101},"server_status":"Cancelled","order_id":"TM03202401260825181132245"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:12:32,067.067 INFO    ] {'data': {'server_response': {'error_message': 'Order timed out. Please try again.', 'SectionStatus': {'SubHeader': '[20101] Order timed out. Please try again.', 'Header': 'Order Failed', 'Note': ''}, 'error_code': 20101}, 'server_status': 'Cancelled', 'order_id': 'TM03202401260825181132245'}, 'response': {'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS'}}
[2026-08-25 18:12:32,070.070 INFO    ] Expired start-order file deleted, server response code: ORDER_EXISTS
[2026-08-25 18:12:32,073.073 INFO    ] Checking for system updates...
[2026-08-25 18:12:32,115.115 INFO    ] 200
[2026-08-25 18:12:32,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:32,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:12:32,177.177 INFO    ] No update needed
[2026-08-25 18:12:32,180.180 INFO    ] Checking for camera pi updates...
[2026-08-25 18:12:32,218.218 INFO    ] 200
[2026-08-25 18:12:32,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:32,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:12:32,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:12:32,324.324 INFO    ] No camera update needed
[2026-08-25 18:12:32,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:12:32,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:12:32,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:12:32,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:12:34,381.381 INFO    ] ================================================
[2026-08-25 18:12:34,396.396 INFO    ] Launching Daemon at Tue Aug 25 18:12:34 IST 2026
[2026-08-25 18:12:34,407.407 INFO    ] ================================================
[2026-08-25 18:12:34,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:12:34
[2026-08-25 18:12:35,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:12:35,836.836 INFO    ] Initializing speech engine...
[2026-08-25 18:12:35,843.843 INFO    ] 2026-08-25 18:12:35
[2026-08-25 18:12:36,124.124 INFO    ] 2026-08-25 18:12:36
[2026-08-25 18:12:36,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:12:36,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:12:36,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:12:36,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:12:36,605.605 INFO    ] time= 25/08/2026 18:12:36
[2026-08-25 18:12:36,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:12:36,694.694 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:12:36,829.829 INFO    ] No existing commands found in stream
[2026-08-25 18:12:41,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:12:41,864.864 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 18:12:45,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:12:45,204.204 INFO    ] Checking for system updates...
[2026-08-25 18:12:45,240.240 INFO    ] 200
[2026-08-25 18:12:45,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:45,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:12:45,299.299 INFO    ] No update needed
[2026-08-25 18:12:45,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 18:12:45,336.336 INFO    ] 200
[2026-08-25 18:12:45,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:45,379.379 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:12:45,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:12:45,432.432 INFO    ] No camera update needed
[2026-08-25 18:12:45,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:12:45,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:12:45,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:12:45,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:12:47,488.488 INFO    ] ================================================
[2026-08-25 18:12:47,503.503 INFO    ] Launching Daemon at Tue Aug 25 18:12:47 IST 2026
[2026-08-25 18:12:47,514.514 INFO    ] ================================================
[2026-08-25 18:12:48,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:12:48
[2026-08-25 18:12:48,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:12:48,919.919 INFO    ] Initializing speech engine...
[2026-08-25 18:12:48,934.934 INFO    ] 2026-08-25 18:12:48
[2026-08-25 18:12:49,214.214 INFO    ] 2026-08-25 18:12:49
[2026-08-25 18:12:49,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:12:49,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:12:49,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:12:49,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:12:49,750.750 INFO    ] time= 25/08/2026 18:12:49
[2026-08-25 18:12:49,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:12:49,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:12:49,963.963 INFO    ] No existing commands found in stream
[2026-08-25 18:12:54,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:12:54,988.988 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 18:12:58,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:12:58,008.008 INFO    ] Checking for system updates...
[2026-08-25 18:12:58,046.046 INFO    ] 200
[2026-08-25 18:12:58,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:58,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:12:58,102.102 INFO    ] No update needed
[2026-08-25 18:12:58,104.104 INFO    ] Checking for camera pi updates...
[2026-08-25 18:12:58,140.140 INFO    ] 200
[2026-08-25 18:12:58,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:12:58,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:12:58,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:12:58,236.236 INFO    ] No camera update needed
[2026-08-25 18:12:58,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:12:58,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:12:58,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:12:58,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:13:00,291.291 INFO    ] ================================================
[2026-08-25 18:13:00,306.306 INFO    ] Launching Daemon at Tue Aug 25 18:13:00 IST 2026
[2026-08-25 18:13:00,316.316 INFO    ] ================================================
[2026-08-25 18:13:00,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:13:00
[2026-08-25 18:13:01,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:13:01,894.894 INFO    ] Initializing speech engine...
[2026-08-25 18:13:01,900.900 INFO    ] 2026-08-25 18:13:01
[2026-08-25 18:13:02,265.265 INFO    ] 2026-08-25 18:13:02
[2026-08-25 18:13:02,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:13:02,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:13:02,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:13:02,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:13:02,829.829 INFO    ] time= 25/08/2026 18:13:02
[2026-08-25 18:13:02,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:13:02,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:13:02,982.982 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 18:13:03,011.011 INFO    ] Checking historical command: ID=1787661770078-0
[2026-08-25 18:13:03,049.049 INFO    ] process_and_cleanup_command: msg_id=1787661770078-0
[2026-08-25 18:13:03,102.102 INFO    ] is_command_expired: timestamp=2026-08-25T12:42:49.721Z, expiry=30s
[2026-08-25 18:13:03,280.280 INFO    ] Command removed from stream: 1787661770078-0. returning for processing...
[2026-08-25 18:13:03,309.309 INFO    ] ***** get_valid_command
[2026-08-25 18:13:03,352.352 INFO    ] {'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1787661769721-zkn9fw38s","orderId":"TM03202401260825181132245","is_vending":false}', 'timeout': '10', 'timestamp': '2026-08-25T12:42:49.721Z'}
[2026-08-25 18:13:03,356.356 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825181132245', 'request_id': 'start-order-1787661769721-zkn9fw38s', 'is_vending': False}
[2026-08-25 18:13:03,368.368 INFO    ] Handling start order...
[2026-08-25 18:13:03,371.371 INFO    ] handle_start_order_command
[2026-08-25 18:13:03,418.418 INFO    ] _send_start_order_success: request_id=start-order-1787661769721-zkn9fw38s, order_id=TM03202401260825181132245
[2026-08-25 18:13:03,478.478 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 18:13:03,561.561 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787661783594-0
[2026-08-25 18:13:03,564.564 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 18:13:03,608.608 INFO    ] Checking for system updates...
[2026-08-25 18:13:03,667.667 INFO    ] 200
[2026-08-25 18:13:03,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:03,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:13:03,813.813 INFO    ] No update needed
[2026-08-25 18:13:03,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 18:13:03,861.861 INFO    ] 200
[2026-08-25 18:13:03,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:03,916.916 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:13:03,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:13:03,971.971 INFO    ] No camera update needed
[2026-08-25 18:13:03,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:13:03,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:13:03,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:13:04,003.003 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 18:13:04,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:13:06,063.063 INFO    ] ================================================
[2026-08-25 18:13:06,079.079 INFO    ] Launching Daemon at Tue Aug 25 18:13:06 IST 2026
[2026-08-25 18:13:06,091.091 INFO    ] ================================================
[2026-08-25 18:13:06,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:13:06
[2026-08-25 18:13:07,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:13:07,561.561 INFO    ] Initializing speech engine...
[2026-08-25 18:13:07,567.567 INFO    ] 2026-08-25 18:13:07
[2026-08-25 18:13:07,827.827 INFO    ] 2026-08-25 18:13:07
[2026-08-25 18:13:07,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:13:08,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:13:08,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:13:08,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:13:08,278.278 INFO    ] time= 25/08/2026 18:13:08
[2026-08-25 18:13:08,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:13:08,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:13:08,518.518 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 18:13:08,567.567 INFO    ] Checking historical command: ID=1787661783594-0
[2026-08-25 18:13:08,622.622 INFO    ] process_and_cleanup_command: msg_id=1787661783594-0
[2026-08-25 18:13:08,659.659 INFO    ] is_command_expired: timestamp=2026-08-25T12:43:03.440899Z, expiry=30s
[2026-08-25 18:13:08,856.856 INFO    ] Command removed from stream: 1787661783594-0. returning for processing...
[2026-08-25 18:13:08,859.859 INFO    ] ***** get_valid_command
[2026-08-25 18:13:08,862.862 INFO    ] {'status': 'success', 'metadata_order_id': 'TM03202401260825181132245', 'imei': 'TM03202401', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1787661769721-zkn9fw38s', 'message': 'start-order success', 'timestamp': '2026-08-25T12:43:03.440899Z'}
[2026-08-25 18:13:08,865.865 INFO    ] Processed historical messages, no valid command available...
[2026-08-25 18:13:13,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:13:13,877.877 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 18:13:15,382.382 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:13:15,396.396 INFO    ] Checking for system updates...
[2026-08-25 18:13:15,431.431 INFO    ] 200
[2026-08-25 18:13:15,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:15,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:13:15,489.489 INFO    ] No update needed
[2026-08-25 18:13:15,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 18:13:15,524.524 INFO    ] 200
[2026-08-25 18:13:15,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:15,566.566 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:13:15,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:13:15,619.619 INFO    ] No camera update needed
[2026-08-25 18:13:15,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:13:15,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:13:15,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:13:15,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:13:17,675.675 INFO    ] ================================================
[2026-08-25 18:13:17,690.690 INFO    ] Launching Daemon at Tue Aug 25 18:13:17 IST 2026
[2026-08-25 18:13:17,702.702 INFO    ] ================================================
[2026-08-25 18:13:18,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:13:18
[2026-08-25 18:13:18,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:13:19,174.174 INFO    ] Initializing speech engine...
[2026-08-25 18:13:19,191.191 INFO    ] 2026-08-25 18:13:19
[2026-08-25 18:13:19,468.468 INFO    ] 2026-08-25 18:13:19
[2026-08-25 18:13:19,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:13:19,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:13:19,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:13:20,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:13:20,045.045 INFO    ] time= 25/08/2026 18:13:20
[2026-08-25 18:13:20,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:13:20,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:13:20,166.166 INFO    ] No existing commands found in stream
[2026-08-25 18:13:25,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:13:25,179.179 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 18:13:29,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:13:29,058.058 INFO    ] Checking for system updates...
[2026-08-25 18:13:29,094.094 INFO    ] 200
[2026-08-25 18:13:29,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:29,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:13:29,151.151 INFO    ] No update needed
[2026-08-25 18:13:29,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 18:13:29,189.189 INFO    ] 200
[2026-08-25 18:13:29,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:29,231.231 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:13:29,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:13:29,279.279 INFO    ] No camera update needed
[2026-08-25 18:13:29,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:13:29,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:13:29,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:13:29,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:13:31,337.337 INFO    ] ================================================
[2026-08-25 18:13:31,353.353 INFO    ] Launching Daemon at Tue Aug 25 18:13:31 IST 2026
[2026-08-25 18:13:31,366.366 INFO    ] ================================================
[2026-08-25 18:13:31,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:13:31
[2026-08-25 18:13:32,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:13:32,861.861 INFO    ] Initializing speech engine...
[2026-08-25 18:13:32,874.874 INFO    ] 2026-08-25 18:13:32
[2026-08-25 18:13:33,141.141 INFO    ] 2026-08-25 18:13:33
[2026-08-25 18:13:33,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:13:33,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:13:33,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:13:33,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:13:33,615.615 INFO    ] time= 25/08/2026 18:13:33
[2026-08-25 18:13:33,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:13:33,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:13:33,841.841 INFO    ] No existing commands found in stream
[2026-08-25 18:13:38,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:13:38,874.874 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 18:13:42,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:13:42,618.618 INFO    ] Checking for system updates...
[2026-08-25 18:13:42,655.655 INFO    ] 200
[2026-08-25 18:13:42,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:42,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:13:42,711.711 INFO    ] No update needed
[2026-08-25 18:13:42,713.713 INFO    ] Checking for camera pi updates...
[2026-08-25 18:13:42,746.746 INFO    ] 200
[2026-08-25 18:13:42,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:42,788.788 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:13:42,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:13:42,938.938 INFO    ] No camera update needed
[2026-08-25 18:13:42,941.941 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:13:42,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:13:42,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:13:42,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:13:44,994.994 INFO    ] ================================================
[2026-08-25 18:13:45,009.009 INFO    ] Launching Daemon at Tue Aug 25 18:13:45 IST 2026
[2026-08-25 18:13:45,020.020 INFO    ] ================================================
[2026-08-25 18:13:45,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:13:45
[2026-08-25 18:13:46,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:13:46,466.466 INFO    ] Initializing speech engine...
[2026-08-25 18:13:46,486.486 INFO    ] 2026-08-25 18:13:46
[2026-08-25 18:13:46,753.753 INFO    ] 2026-08-25 18:13:46
[2026-08-25 18:13:46,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:13:47,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:13:47,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:13:47,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:13:47,253.253 INFO    ] time= 25/08/2026 18:13:47
[2026-08-25 18:13:47,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:13:47,367.367 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:13:47,516.516 INFO    ] No existing commands found in stream
[2026-08-25 18:13:52,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:13:52,541.541 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 18:13:54,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:13:54,671.671 INFO    ] Lock file expired, elapsed: 51s, order: TM03202401260825181132245
[2026-08-25 18:13:54,673.673 INFO    ] Cancelling order TM03202401260825181132245 - Error 20101: Order timed out. Please try again.
[2026-08-25 18:13:54,748.748 INFO    ] {'order_id': 'TM03202401260825181132245', 'server_response': {'SectionStatus': {'SubHeader': '[20101] Order timed out. Please try again.', 'Header': 'Order Failed', 'Note': ''}, 'error_code': 20101, 'error_message': 'Order timed out. Please try again.'}, 'server_status': 'Cancelled'}
[2026-08-25 18:13:54,751.751 INFO    ] 200
[2026-08-25 18:13:54,753.753 INFO    ] {"data":{"order_id":"TM03202401260825181132245","server_response":{"SectionStatus":{"SubHeader":"[20101] Order timed out. Please try again.","Header":"Order Failed","Note":""},"error_code":20101,"error_message":"Order timed out. Please try again."},"server_status":"Cancelled"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 18:13:54,756.756 INFO    ] {'data': {'order_id': 'TM03202401260825181132245', 'server_response': {'SectionStatus': {'SubHeader': '[20101] Order timed out. Please try again.', 'Header': 'Order Failed', 'Note': ''}, 'error_code': 20101, 'error_message': 'Order timed out. Please try again.'}, 'server_status': 'Cancelled'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully', 'status': True}}
[2026-08-25 18:13:54,759.759 INFO    ] Expired start-order file deleted, server response code: ORDER_EXISTS
[2026-08-25 18:13:54,761.761 INFO    ] Checking for system updates...
[2026-08-25 18:13:54,796.796 INFO    ] 200
[2026-08-25 18:13:54,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:54,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:13:54,859.859 INFO    ] No update needed
[2026-08-25 18:13:54,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 18:13:54,895.895 INFO    ] 200
[2026-08-25 18:13:54,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:13:54,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:13:54,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:13:54,997.997 INFO    ] No camera update needed
[2026-08-25 18:13:54,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:13:55,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:13:55,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:13:55,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:13:57,052.052 INFO    ] ================================================
[2026-08-25 18:13:57,068.068 INFO    ] Launching Daemon at Tue Aug 25 18:13:57 IST 2026
[2026-08-25 18:13:57,079.079 INFO    ] ================================================
[2026-08-25 18:13:57,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:13:57
[2026-08-25 18:13:58,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:13:58,491.491 INFO    ] Initializing speech engine...
[2026-08-25 18:13:58,500.500 INFO    ] 2026-08-25 18:13:58
[2026-08-25 18:13:58,794.794 INFO    ] 2026-08-25 18:13:58
[2026-08-25 18:13:58,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:13:59,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:13:59,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:13:59,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:13:59,293.293 INFO    ] time= 25/08/2026 18:13:59
[2026-08-25 18:13:59,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:13:59,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:13:59,476.476 INFO    ] No existing commands found in stream
[2026-08-25 18:14:04,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:14:04,489.489 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 18:14:07,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:14:07,931.931 INFO    ] Checking for system updates...
[2026-08-25 18:14:07,967.967 INFO    ] 200
[2026-08-25 18:14:07,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:08,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:08,025.025 INFO    ] No update needed
[2026-08-25 18:14:08,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 18:14:08,061.061 INFO    ] 200
[2026-08-25 18:14:08,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:08,107.107 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:14:08,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:08,155.155 INFO    ] No camera update needed
[2026-08-25 18:14:08,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:14:08,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:14:08,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:14:08,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:14:10,210.210 INFO    ] ================================================
[2026-08-25 18:14:10,226.226 INFO    ] Launching Daemon at Tue Aug 25 18:14:10 IST 2026
[2026-08-25 18:14:10,236.236 INFO    ] ================================================
[2026-08-25 18:14:10,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:14:10
[2026-08-25 18:14:11,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:14:11,666.666 INFO    ] Initializing speech engine...
[2026-08-25 18:14:11,672.672 INFO    ] 2026-08-25 18:14:11
[2026-08-25 18:14:11,916.916 INFO    ] 2026-08-25 18:14:11
[2026-08-25 18:14:11,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:14:12,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:14:12,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:14:12,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:14:12,409.409 INFO    ] time= 25/08/2026 18:14:12
[2026-08-25 18:14:12,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:14:12,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:14:12,625.625 INFO    ] No existing commands found in stream
[2026-08-25 18:14:17,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:14:17,642.642 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 18:14:22,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:14:22,074.074 INFO    ] Checking for system updates...
[2026-08-25 18:14:22,109.109 INFO    ] 200
[2026-08-25 18:14:22,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:22,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:22,170.170 INFO    ] No update needed
[2026-08-25 18:14:22,176.176 INFO    ] Checking for camera pi updates...
[2026-08-25 18:14:22,209.209 INFO    ] 200
[2026-08-25 18:14:22,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:22,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:14:22,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:22,301.301 INFO    ] No camera update needed
[2026-08-25 18:14:22,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:14:22,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:14:22,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:14:22,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:14:24,363.363 INFO    ] ================================================
[2026-08-25 18:14:24,379.379 INFO    ] Launching Daemon at Tue Aug 25 18:14:24 IST 2026
[2026-08-25 18:14:24,390.390 INFO    ] ================================================
[2026-08-25 18:14:24,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:14:24
[2026-08-25 18:14:25,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:14:25,798.798 INFO    ] Initializing speech engine...
[2026-08-25 18:14:25,807.807 INFO    ] 2026-08-25 18:14:25
[2026-08-25 18:14:26,095.095 INFO    ] 2026-08-25 18:14:26
[2026-08-25 18:14:26,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:14:26,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:14:26,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:14:26,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:14:26,499.499 INFO    ] time= 25/08/2026 18:14:26
[2026-08-25 18:14:26,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:14:26,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:14:26,688.688 INFO    ] No existing commands found in stream
[2026-08-25 18:14:31,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:14:31,716.716 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 18:14:32,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:14:32,304.304 INFO    ] Checking for system updates...
[2026-08-25 18:14:32,345.345 INFO    ] 200
[2026-08-25 18:14:32,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:32,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:32,434.434 INFO    ] No update needed
[2026-08-25 18:14:32,437.437 INFO    ] Checking for camera pi updates...
[2026-08-25 18:14:32,478.478 INFO    ] 200
[2026-08-25 18:14:32,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:32,527.527 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:14:32,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:32,591.591 INFO    ] No camera update needed
[2026-08-25 18:14:32,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:14:32,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:14:32,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:14:32,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:14:34,645.645 INFO    ] ================================================
[2026-08-25 18:14:34,661.661 INFO    ] Launching Daemon at Tue Aug 25 18:14:34 IST 2026
[2026-08-25 18:14:34,672.672 INFO    ] ================================================
[2026-08-25 18:14:35,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:14:35
[2026-08-25 18:14:35,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:14:36,218.218 INFO    ] Initializing speech engine...
[2026-08-25 18:14:36,229.229 INFO    ] 2026-08-25 18:14:36
[2026-08-25 18:14:36,499.499 INFO    ] 2026-08-25 18:14:36
[2026-08-25 18:14:36,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:14:36,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:14:36,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:14:36,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:14:36,977.977 INFO    ] time= 25/08/2026 18:14:36
[2026-08-25 18:14:37,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:14:37,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:14:37,217.217 INFO    ] No existing commands found in stream
[2026-08-25 18:14:42,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:14:42,238.238 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 18:14:42,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:14:42,796.796 INFO    ] Checking for system updates...
[2026-08-25 18:14:42,831.831 INFO    ] 200
[2026-08-25 18:14:42,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:42,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:42,890.890 INFO    ] No update needed
[2026-08-25 18:14:42,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 18:14:42,926.926 INFO    ] 200
[2026-08-25 18:14:42,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:42,969.969 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:14:43,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:14:43,017.017 INFO    ] No camera update needed
[2026-08-25 18:14:43,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:14:43,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:14:43,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:14:43,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:14:45,075.075 INFO    ] ================================================
[2026-08-25 18:14:45,090.090 INFO    ] Launching Daemon at Tue Aug 25 18:14:45 IST 2026
[2026-08-25 18:14:45,101.101 INFO    ] ================================================
[2026-08-25 18:14:45,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:14:45
[2026-08-25 18:14:46,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:14:46,649.649 INFO    ] Initializing speech engine...
[2026-08-25 18:14:46,658.658 INFO    ] 2026-08-25 18:14:46
[2026-08-25 18:14:46,926.926 INFO    ] 2026-08-25 18:14:46
[2026-08-25 18:14:46,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:14:47,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:14:47,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:14:47,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:14:47,412.412 INFO    ] time= 25/08/2026 18:14:47
[2026-08-25 18:14:47,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:14:47,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:14:47,629.629 INFO    ] No existing commands found in stream
[2026-08-25 18:14:52,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:14:52,660.660 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 18:14:54,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:14:54,678.678 INFO    ] Checking for system updates...
[2026-08-25 18:14:54,713.713 INFO    ] 200
[2026-08-25 18:14:54,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:54,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:14:54,773.773 INFO    ] No update needed
[2026-08-25 18:14:54,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 18:14:54,809.809 INFO    ] 200
[2026-08-25 18:14:54,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:14:54,852.852 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:14:54,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:14:54,903.903 INFO    ] No camera update needed
[2026-08-25 18:14:54,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:14:54,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:14:54,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:14:54,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:14:56,960.960 INFO    ] ================================================
[2026-08-25 18:14:56,976.976 INFO    ] Launching Daemon at Tue Aug 25 18:14:56 IST 2026
[2026-08-25 18:14:56,987.987 INFO    ] ================================================
[2026-08-25 18:14:57,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:14:57
[2026-08-25 18:14:58,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:14:58,466.466 INFO    ] Initializing speech engine...
[2026-08-25 18:14:58,480.480 INFO    ] 2026-08-25 18:14:58
[2026-08-25 18:14:58,739.739 INFO    ] 2026-08-25 18:14:58
[2026-08-25 18:14:58,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:14:58,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:14:59,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:14:59,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:14:59,196.196 INFO    ] time= 25/08/2026 18:14:59
[2026-08-25 18:14:59,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:14:59,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:14:59,362.362 INFO    ] No existing commands found in stream
[2026-08-25 18:15:04,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:15:04,378.378 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 18:15:05,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:15:05,368.368 INFO    ] Checking for system updates...
[2026-08-25 18:15:05,404.404 INFO    ] 200
[2026-08-25 18:15:05,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:05,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:15:05,463.463 INFO    ] No update needed
[2026-08-25 18:15:05,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 18:15:05,499.499 INFO    ] 200
[2026-08-25 18:15:05,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:05,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:15:05,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:15:05,596.596 INFO    ] No camera update needed
[2026-08-25 18:15:05,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:15:05,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:15:05,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:15:05,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:15:07,656.656 INFO    ] ================================================
[2026-08-25 18:15:07,674.674 INFO    ] Launching Daemon at Tue Aug 25 18:15:07 IST 2026
[2026-08-25 18:15:07,686.686 INFO    ] ================================================
[2026-08-25 18:15:08,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:15:08
[2026-08-25 18:15:08,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:15:09,180.180 INFO    ] Initializing speech engine...
[2026-08-25 18:15:09,189.189 INFO    ] 2026-08-25 18:15:09
[2026-08-25 18:15:09,448.448 INFO    ] 2026-08-25 18:15:09
[2026-08-25 18:15:09,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:15:09,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:15:09,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:15:09,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:15:09,940.940 INFO    ] time= 25/08/2026 18:15:09
[2026-08-25 18:15:10,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:15:10,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:15:10,148.148 INFO    ] No existing commands found in stream
[2026-08-25 18:15:15,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:15:15,177.177 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 18:15:17,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:15:17,843.843 INFO    ] Checking for system updates...
[2026-08-25 18:15:17,879.879 INFO    ] 200
[2026-08-25 18:15:17,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:17,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:15:17,948.948 INFO    ] No update needed
[2026-08-25 18:15:17,950.950 INFO    ] Checking for camera pi updates...
[2026-08-25 18:15:17,983.983 INFO    ] 200
[2026-08-25 18:15:17,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:18,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:15:18,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:15:18,085.085 INFO    ] No camera update needed
[2026-08-25 18:15:18,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:15:18,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:15:18,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:15:18,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:15:20,140.140 INFO    ] ================================================
[2026-08-25 18:15:20,156.156 INFO    ] Launching Daemon at Tue Aug 25 18:15:20 IST 2026
[2026-08-25 18:15:20,168.168 INFO    ] ================================================
[2026-08-25 18:15:20,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:15:20
[2026-08-25 18:15:21,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:15:21,783.783 INFO    ] Initializing speech engine...
[2026-08-25 18:15:21,790.790 INFO    ] 2026-08-25 18:15:21
[2026-08-25 18:15:22,065.065 INFO    ] 2026-08-25 18:15:22
[2026-08-25 18:15:22,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:15:22,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:15:22,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:15:22,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:15:22,631.631 INFO    ] time= 25/08/2026 18:15:22
[2026-08-25 18:15:22,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:15:22,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:15:22,785.785 INFO    ] No existing commands found in stream
[2026-08-25 18:15:27,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:15:27,819.819 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 18:15:29,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:15:29,753.753 INFO    ] Checking for system updates...
[2026-08-25 18:15:29,789.789 INFO    ] 200
[2026-08-25 18:15:29,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:29,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:15:29,847.847 INFO    ] No update needed
[2026-08-25 18:15:29,850.850 INFO    ] Checking for camera pi updates...
[2026-08-25 18:15:29,884.884 INFO    ] 200
[2026-08-25 18:15:29,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:29,930.930 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:15:29,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:15:29,989.989 INFO    ] No camera update needed
[2026-08-25 18:15:29,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:15:29,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:15:29,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:15:30,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:15:32,045.045 INFO    ] ================================================
[2026-08-25 18:15:32,062.062 INFO    ] Launching Daemon at Tue Aug 25 18:15:32 IST 2026
[2026-08-25 18:15:32,074.074 INFO    ] ================================================
[2026-08-25 18:15:32,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:15:32
[2026-08-25 18:15:33,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:15:33,543.543 INFO    ] Initializing speech engine...
[2026-08-25 18:15:33,559.559 INFO    ] 2026-08-25 18:15:33
[2026-08-25 18:15:33,835.835 INFO    ] 2026-08-25 18:15:33
[2026-08-25 18:15:33,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:15:35,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:15:35,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:15:35,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:15:35,319.319 INFO    ] time= 25/08/2026 18:15:35
[2026-08-25 18:15:35,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:15:35,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:15:35,409.409 INFO    ] No existing commands found in stream
[2026-08-25 18:15:40,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:15:40,423.423 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 18:15:41,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:15:41,831.831 INFO    ] Checking for system updates...
[2026-08-25 18:15:41,866.866 INFO    ] 200
[2026-08-25 18:15:41,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:41,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:15:41,922.922 INFO    ] No update needed
[2026-08-25 18:15:41,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 18:15:41,959.959 INFO    ] 200
[2026-08-25 18:15:41,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:42,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:15:42,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:15:42,056.056 INFO    ] No camera update needed
[2026-08-25 18:15:42,058.058 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:15:42,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:15:42,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:15:42,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:15:44,110.110 INFO    ] ================================================
[2026-08-25 18:15:44,126.126 INFO    ] Launching Daemon at Tue Aug 25 18:15:44 IST 2026
[2026-08-25 18:15:44,136.136 INFO    ] ================================================
[2026-08-25 18:15:44,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:15:44
[2026-08-25 18:15:45,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:15:45,739.739 INFO    ] Initializing speech engine...
[2026-08-25 18:15:45,750.750 INFO    ] 2026-08-25 18:15:45
[2026-08-25 18:15:46,013.013 INFO    ] 2026-08-25 18:15:45
[2026-08-25 18:15:46,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:15:46,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:15:46,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:15:46,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:15:46,542.542 INFO    ] time= 25/08/2026 18:15:46
[2026-08-25 18:15:46,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:15:46,568.568 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:15:46,696.696 INFO    ] No existing commands found in stream
[2026-08-25 18:15:51,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:15:51,711.711 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 18:15:55,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:15:55,774.774 INFO    ] Checking for system updates...
[2026-08-25 18:15:55,811.811 INFO    ] 200
[2026-08-25 18:15:55,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:55,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:15:55,869.869 INFO    ] No update needed
[2026-08-25 18:15:55,871.871 INFO    ] Checking for camera pi updates...
[2026-08-25 18:15:55,904.904 INFO    ] 200
[2026-08-25 18:15:55,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:15:55,947.947 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:15:56,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:15:56,097.097 INFO    ] No camera update needed
[2026-08-25 18:15:56,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:15:56,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:15:56,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:15:56,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:15:58,155.155 INFO    ] ================================================
[2026-08-25 18:15:58,171.171 INFO    ] Launching Daemon at Tue Aug 25 18:15:58 IST 2026
[2026-08-25 18:15:58,182.182 INFO    ] ================================================
[2026-08-25 18:15:58,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:15:58
[2026-08-25 18:15:59,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:15:59,632.632 INFO    ] Initializing speech engine...
[2026-08-25 18:15:59,641.641 INFO    ] 2026-08-25 18:15:59
[2026-08-25 18:15:59,901.901 INFO    ] 2026-08-25 18:15:59
[2026-08-25 18:15:59,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:16:00,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:16:00,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:16:00,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:16:00,390.390 INFO    ] time= 25/08/2026 18:16:00
[2026-08-25 18:16:00,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:16:00,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:16:00,589.589 INFO    ] No existing commands found in stream
[2026-08-25 18:16:05,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:16:05,608.608 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 18:16:06,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:16:06,338.338 INFO    ] Checking for system updates...
[2026-08-25 18:16:06,374.374 INFO    ] 200
[2026-08-25 18:16:06,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:06,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:16:06,431.431 INFO    ] No update needed
[2026-08-25 18:16:06,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 18:16:06,468.468 INFO    ] 200
[2026-08-25 18:16:06,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:06,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:16:06,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:16:06,569.569 INFO    ] No camera update needed
[2026-08-25 18:16:06,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:16:06,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:16:06,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:16:06,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:16:08,638.638 INFO    ] ================================================
[2026-08-25 18:16:08,654.654 INFO    ] Launching Daemon at Tue Aug 25 18:16:08 IST 2026
[2026-08-25 18:16:08,665.665 INFO    ] ================================================
[2026-08-25 18:16:09,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:16:09
[2026-08-25 18:16:09,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:16:10,120.120 INFO    ] Initializing speech engine...
[2026-08-25 18:16:10,127.127 INFO    ] 2026-08-25 18:16:10
[2026-08-25 18:16:10,385.385 INFO    ] 2026-08-25 18:16:10
[2026-08-25 18:16:10,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:16:10,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:16:10,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:16:10,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:16:10,930.930 INFO    ] time= 25/08/2026 18:16:10
[2026-08-25 18:16:10,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:16:10,970.970 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:16:11,087.087 INFO    ] No existing commands found in stream
[2026-08-25 18:16:16,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:16:16,121.121 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 18:16:20,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:16:20,273.273 INFO    ] Checking for system updates...
[2026-08-25 18:16:20,310.310 INFO    ] 200
[2026-08-25 18:16:20,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:20,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:16:20,370.370 INFO    ] No update needed
[2026-08-25 18:16:20,372.372 INFO    ] Checking for camera pi updates...
[2026-08-25 18:16:20,408.408 INFO    ] 200
[2026-08-25 18:16:20,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:20,451.451 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:16:20,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:16:20,506.506 INFO    ] No camera update needed
[2026-08-25 18:16:20,508.508 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:16:20,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:16:20,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:16:20,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:16:22,564.564 INFO    ] ================================================
[2026-08-25 18:16:22,579.579 INFO    ] Launching Daemon at Tue Aug 25 18:16:22 IST 2026
[2026-08-25 18:16:22,590.590 INFO    ] ================================================
[2026-08-25 18:16:23,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:16:23
[2026-08-25 18:16:23,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:16:24,071.071 INFO    ] Initializing speech engine...
[2026-08-25 18:16:24,079.079 INFO    ] 2026-08-25 18:16:24
[2026-08-25 18:16:24,336.336 INFO    ] 2026-08-25 18:16:24
[2026-08-25 18:16:24,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:16:24,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:16:24,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:16:24,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:16:24,880.880 INFO    ] time= 25/08/2026 18:16:24
[2026-08-25 18:16:24,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:16:24,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:16:25,030.030 INFO    ] No existing commands found in stream
[2026-08-25 18:16:30,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:16:30,048.048 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 18:16:30,734.734 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:16:30,737.737 INFO    ] Checking for system updates...
[2026-08-25 18:16:30,772.772 INFO    ] 200
[2026-08-25 18:16:30,774.774 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:30,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:16:30,829.829 INFO    ] No update needed
[2026-08-25 18:16:30,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 18:16:30,865.865 INFO    ] 200
[2026-08-25 18:16:30,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:30,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:16:30,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:16:30,971.971 INFO    ] No camera update needed
[2026-08-25 18:16:30,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:16:30,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:16:30,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:16:30,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:16:33,029.029 INFO    ] ================================================
[2026-08-25 18:16:33,048.048 INFO    ] Launching Daemon at Tue Aug 25 18:16:33 IST 2026
[2026-08-25 18:16:33,060.060 INFO    ] ================================================
[2026-08-25 18:16:33,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:16:33
[2026-08-25 18:16:34,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:16:34,517.517 INFO    ] Initializing speech engine...
[2026-08-25 18:16:34,524.524 INFO    ] 2026-08-25 18:16:34
[2026-08-25 18:16:34,796.796 INFO    ] 2026-08-25 18:16:34
[2026-08-25 18:16:34,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:16:35,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:16:35,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:16:35,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:16:35,325.325 INFO    ] time= 25/08/2026 18:16:35
[2026-08-25 18:16:35,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:16:35,350.350 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:16:35,479.479 INFO    ] No existing commands found in stream
[2026-08-25 18:16:40,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:16:40,494.494 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 18:16:44,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:16:44,745.745 INFO    ] Checking for system updates...
[2026-08-25 18:16:44,784.784 INFO    ] 200
[2026-08-25 18:16:44,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:44,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:16:44,846.846 INFO    ] No update needed
[2026-08-25 18:16:44,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 18:16:44,882.882 INFO    ] 200
[2026-08-25 18:16:44,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:44,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:16:44,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:16:44,975.975 INFO    ] No camera update needed
[2026-08-25 18:16:44,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:16:44,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:16:44,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:16:44,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:16:47,031.031 INFO    ] ================================================
[2026-08-25 18:16:47,046.046 INFO    ] Launching Daemon at Tue Aug 25 18:16:47 IST 2026
[2026-08-25 18:16:47,058.058 INFO    ] ================================================
[2026-08-25 18:16:47,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:16:47
[2026-08-25 18:16:48,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:16:48,580.580 INFO    ] Initializing speech engine...
[2026-08-25 18:16:48,592.592 INFO    ] 2026-08-25 18:16:48
[2026-08-25 18:16:48,859.859 INFO    ] 2026-08-25 18:16:48
[2026-08-25 18:16:48,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:16:49,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:16:49,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:16:49,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:16:49,355.355 INFO    ] time= 25/08/2026 18:16:49
[2026-08-25 18:16:49,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:16:49,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:16:49,560.560 INFO    ] No existing commands found in stream
[2026-08-25 18:16:54,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:16:54,588.588 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 18:16:58,572.572 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:16:58,575.575 INFO    ] Checking for system updates...
[2026-08-25 18:16:58,610.610 INFO    ] 200
[2026-08-25 18:16:58,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:58,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:16:58,666.666 INFO    ] No update needed
[2026-08-25 18:16:58,668.668 INFO    ] Checking for camera pi updates...
[2026-08-25 18:16:58,702.702 INFO    ] 200
[2026-08-25 18:16:58,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:16:58,748.748 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:16:58,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:16:58,816.816 INFO    ] No camera update needed
[2026-08-25 18:16:58,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:16:58,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:16:58,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:16:58,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:17:00,872.872 INFO    ] ================================================
[2026-08-25 18:17:00,888.888 INFO    ] Launching Daemon at Tue Aug 25 18:17:00 IST 2026
[2026-08-25 18:17:00,899.899 INFO    ] ================================================
[2026-08-25 18:17:01,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:17:01
[2026-08-25 18:17:02,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:17:02,727.727 INFO    ] Initializing speech engine...
[2026-08-25 18:17:02,738.738 INFO    ] 2026-08-25 18:17:02
[2026-08-25 18:17:03,017.017 INFO    ] 2026-08-25 18:17:03
[2026-08-25 18:17:03,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:17:03,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:17:03,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:17:03,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:17:03,562.562 INFO    ] time= 25/08/2026 18:17:03
[2026-08-25 18:17:03,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:17:03,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:17:03,788.788 INFO    ] No existing commands found in stream
[2026-08-25 18:17:08,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:17:08,816.816 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 18:17:09,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:17:09,781.781 INFO    ] Checking for system updates...
[2026-08-25 18:17:09,817.817 INFO    ] 200
[2026-08-25 18:17:09,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:09,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:17:09,873.873 INFO    ] No update needed
[2026-08-25 18:17:09,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 18:17:09,913.913 INFO    ] 200
[2026-08-25 18:17:09,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:09,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:17:10,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:17:10,010.010 INFO    ] No camera update needed
[2026-08-25 18:17:10,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:17:10,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:17:10,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:17:10,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:17:12,064.064 INFO    ] ================================================
[2026-08-25 18:17:12,080.080 INFO    ] Launching Daemon at Tue Aug 25 18:17:12 IST 2026
[2026-08-25 18:17:12,092.092 INFO    ] ================================================
[2026-08-25 18:17:12,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:17:12
[2026-08-25 18:17:13,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:17:13,545.545 INFO    ] Initializing speech engine...
[2026-08-25 18:17:13,554.554 INFO    ] 2026-08-25 18:17:13
[2026-08-25 18:17:13,813.813 INFO    ] 2026-08-25 18:17:13
[2026-08-25 18:17:13,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:17:14,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:17:14,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:17:14,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:17:14,352.352 INFO    ] time= 25/08/2026 18:17:14
[2026-08-25 18:17:14,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:17:14,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:17:14,512.512 INFO    ] No existing commands found in stream
[2026-08-25 18:17:19,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:17:19,540.540 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 18:17:22,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:17:22,644.644 INFO    ] Checking for system updates...
[2026-08-25 18:17:22,683.683 INFO    ] 200
[2026-08-25 18:17:22,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:22,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:17:22,740.740 INFO    ] No update needed
[2026-08-25 18:17:22,742.742 INFO    ] Checking for camera pi updates...
[2026-08-25 18:17:22,776.776 INFO    ] 200
[2026-08-25 18:17:22,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:22,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:17:22,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:17:22,879.879 INFO    ] No camera update needed
[2026-08-25 18:17:22,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:17:22,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:17:22,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:17:22,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:17:24,935.935 INFO    ] ================================================
[2026-08-25 18:17:24,951.951 INFO    ] Launching Daemon at Tue Aug 25 18:17:24 IST 2026
[2026-08-25 18:17:24,962.962 INFO    ] ================================================
[2026-08-25 18:17:25,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:17:25
[2026-08-25 18:17:26,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:17:26,567.567 INFO    ] Initializing speech engine...
[2026-08-25 18:17:26,574.574 INFO    ] 2026-08-25 18:17:26
[2026-08-25 18:17:26,855.855 INFO    ] 2026-08-25 18:17:26
[2026-08-25 18:17:26,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:17:27,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:17:27,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:17:27,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:17:27,383.383 INFO    ] time= 25/08/2026 18:17:27
[2026-08-25 18:17:27,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:17:27,430.430 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:17:27,537.537 INFO    ] No existing commands found in stream
[2026-08-25 18:17:32,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:17:32,570.570 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 18:17:34,369.369 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:17:34,373.373 INFO    ] Checking for system updates...
[2026-08-25 18:17:34,409.409 INFO    ] 200
[2026-08-25 18:17:34,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:34,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:17:34,475.475 INFO    ] No update needed
[2026-08-25 18:17:34,478.478 INFO    ] Checking for camera pi updates...
[2026-08-25 18:17:34,514.514 INFO    ] 200
[2026-08-25 18:17:34,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:34,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:17:34,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:17:34,611.611 INFO    ] No camera update needed
[2026-08-25 18:17:34,613.613 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:17:34,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:17:34,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:17:34,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:17:36,666.666 INFO    ] ================================================
[2026-08-25 18:17:36,682.682 INFO    ] Launching Daemon at Tue Aug 25 18:17:36 IST 2026
[2026-08-25 18:17:36,693.693 INFO    ] ================================================
[2026-08-25 18:17:37,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:17:37
[2026-08-25 18:17:37,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:17:38,103.103 INFO    ] Initializing speech engine...
[2026-08-25 18:17:38,116.116 INFO    ] 2026-08-25 18:17:38
[2026-08-25 18:17:38,398.398 INFO    ] 2026-08-25 18:17:38
[2026-08-25 18:17:38,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:17:38,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:17:38,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:17:38,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:17:38,773.773 INFO    ] time= 25/08/2026 18:17:38
[2026-08-25 18:17:38,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:17:38,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:17:38,896.896 INFO    ] No existing commands found in stream
[2026-08-25 18:17:43,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:17:43,924.924 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 18:17:45,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:17:45,852.852 INFO    ] Checking for system updates...
[2026-08-25 18:17:45,887.887 INFO    ] 200
[2026-08-25 18:17:45,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:45,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:17:45,946.946 INFO    ] No update needed
[2026-08-25 18:17:45,948.948 INFO    ] Checking for camera pi updates...
[2026-08-25 18:17:45,981.981 INFO    ] 200
[2026-08-25 18:17:45,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:17:46,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:17:46,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:17:46,081.081 INFO    ] No camera update needed
[2026-08-25 18:17:46,084.084 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:17:46,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:17:46,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:17:46,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:17:48,137.137 INFO    ] ================================================
[2026-08-25 18:17:48,152.152 INFO    ] Launching Daemon at Tue Aug 25 18:17:48 IST 2026
[2026-08-25 18:17:48,164.164 INFO    ] ================================================
[2026-08-25 18:17:48,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:17:48
[2026-08-25 18:17:49,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:17:49,605.605 INFO    ] Initializing speech engine...
[2026-08-25 18:17:49,615.615 INFO    ] 2026-08-25 18:17:49
[2026-08-25 18:17:49,890.890 INFO    ] 2026-08-25 18:17:49
[2026-08-25 18:17:49,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:17:50,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:17:50,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:17:50,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:17:50,456.456 INFO    ] time= 25/08/2026 18:17:50
[2026-08-25 18:17:50,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:17:50,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:17:50,626.626 INFO    ] No existing commands found in stream
[2026-08-25 18:17:55,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:17:55,661.661 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 18:18:00,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:18:00,155.155 INFO    ] Checking for system updates...
[2026-08-25 18:18:00,197.197 INFO    ] 200
[2026-08-25 18:18:00,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:00,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:18:00,267.267 INFO    ] No update needed
[2026-08-25 18:18:00,269.269 INFO    ] Checking for camera pi updates...
[2026-08-25 18:18:00,304.304 INFO    ] 200
[2026-08-25 18:18:00,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:00,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:18:00,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:18:00,496.496 INFO    ] No camera update needed
[2026-08-25 18:18:00,499.499 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:18:00,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:18:00,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:18:00,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:18:02,560.560 INFO    ] ================================================
[2026-08-25 18:18:02,579.579 INFO    ] Launching Daemon at Tue Aug 25 18:18:02 IST 2026
[2026-08-25 18:18:02,592.592 INFO    ] ================================================
[2026-08-25 18:18:03,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:18:03
[2026-08-25 18:18:04,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:18:04,332.332 INFO    ] Initializing speech engine...
[2026-08-25 18:18:04,340.340 INFO    ] 2026-08-25 18:18:04
[2026-08-25 18:18:04,620.620 INFO    ] 2026-08-25 18:18:04
[2026-08-25 18:18:04,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:18:04,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:18:04,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:18:05,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:18:05,171.171 INFO    ] time= 25/08/2026 18:18:05
[2026-08-25 18:18:05,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:18:05,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:18:05,330.330 INFO    ] No existing commands found in stream
[2026-08-25 18:18:10,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:18:10,358.358 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 18:18:11,161.161 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:18:11,164.164 INFO    ] Checking for system updates...
[2026-08-25 18:18:11,201.201 INFO    ] 200
[2026-08-25 18:18:11,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:11,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:18:11,260.260 INFO    ] No update needed
[2026-08-25 18:18:11,263.263 INFO    ] Checking for camera pi updates...
[2026-08-25 18:18:11,301.301 INFO    ] 200
[2026-08-25 18:18:11,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:11,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:18:11,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:18:11,408.408 INFO    ] No camera update needed
[2026-08-25 18:18:11,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:18:11,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:18:11,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:18:11,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:18:13,467.467 INFO    ] ================================================
[2026-08-25 18:18:13,482.482 INFO    ] Launching Daemon at Tue Aug 25 18:18:13 IST 2026
[2026-08-25 18:18:13,493.493 INFO    ] ================================================
[2026-08-25 18:18:14,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:18:14
[2026-08-25 18:18:14,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:18:14,915.915 INFO    ] Initializing speech engine...
[2026-08-25 18:18:14,922.922 INFO    ] 2026-08-25 18:18:14
[2026-08-25 18:18:15,181.181 INFO    ] 2026-08-25 18:18:15
[2026-08-25 18:18:15,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:18:15,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:18:15,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:18:15,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:18:15,722.722 INFO    ] time= 25/08/2026 18:18:15
[2026-08-25 18:18:15,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:18:15,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:18:15,875.875 INFO    ] No existing commands found in stream
[2026-08-25 18:18:20,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:18:20,890.890 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 18:18:25,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:18:25,012.012 INFO    ] Checking for system updates...
[2026-08-25 18:18:25,051.051 INFO    ] 200
[2026-08-25 18:18:25,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:25,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:18:25,116.116 INFO    ] No update needed
[2026-08-25 18:18:25,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 18:18:25,151.151 INFO    ] 200
[2026-08-25 18:18:25,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:25,194.194 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:18:25,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:18:25,247.247 INFO    ] No camera update needed
[2026-08-25 18:18:25,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:18:25,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:18:25,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:18:25,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:18:27,303.303 INFO    ] ================================================
[2026-08-25 18:18:27,318.318 INFO    ] Launching Daemon at Tue Aug 25 18:18:27 IST 2026
[2026-08-25 18:18:27,329.329 INFO    ] ================================================
[2026-08-25 18:18:28,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:18:28
[2026-08-25 18:18:28,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:18:28,985.985 INFO    ] Initializing speech engine...
[2026-08-25 18:18:28,997.997 INFO    ] 2026-08-25 18:18:28
[2026-08-25 18:18:29,284.284 INFO    ] 2026-08-25 18:18:29
[2026-08-25 18:18:29,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:18:29,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:18:29,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:18:29,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:18:29,814.814 INFO    ] time= 25/08/2026 18:18:29
[2026-08-25 18:18:29,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:18:29,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:18:29,968.968 INFO    ] No existing commands found in stream
[2026-08-25 18:18:34,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:18:34,986.986 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 18:18:37,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:18:37,792.792 INFO    ] Checking for system updates...
[2026-08-25 18:18:37,829.829 INFO    ] 200
[2026-08-25 18:18:37,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:37,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:18:37,888.888 INFO    ] No update needed
[2026-08-25 18:18:37,890.890 INFO    ] Checking for camera pi updates...
[2026-08-25 18:18:37,925.925 INFO    ] 200
[2026-08-25 18:18:37,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:37,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:18:38,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:18:38,025.025 INFO    ] No camera update needed
[2026-08-25 18:18:38,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:18:38,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:18:38,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:18:38,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:18:40,083.083 INFO    ] ================================================
[2026-08-25 18:18:40,098.098 INFO    ] Launching Daemon at Tue Aug 25 18:18:40 IST 2026
[2026-08-25 18:18:40,109.109 INFO    ] ================================================
[2026-08-25 18:18:40,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:18:40
[2026-08-25 18:18:41,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:18:41,726.726 INFO    ] Initializing speech engine...
[2026-08-25 18:18:41,733.733 INFO    ] 2026-08-25 18:18:41
[2026-08-25 18:18:42,005.005 INFO    ] 2026-08-25 18:18:42
[2026-08-25 18:18:42,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:18:42,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:18:42,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:18:42,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:18:42,553.553 INFO    ] time= 25/08/2026 18:18:42
[2026-08-25 18:18:42,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:18:42,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:18:42,711.711 INFO    ] No existing commands found in stream
[2026-08-25 18:18:47,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:18:47,749.749 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 18:18:49,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:18:49,613.613 INFO    ] Checking for system updates...
[2026-08-25 18:18:49,650.650 INFO    ] 200
[2026-08-25 18:18:49,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:49,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:18:49,711.711 INFO    ] No update needed
[2026-08-25 18:18:49,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 18:18:49,755.755 INFO    ] 200
[2026-08-25 18:18:49,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:18:49,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:18:49,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:18:49,855.855 INFO    ] No camera update needed
[2026-08-25 18:18:49,858.858 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:18:49,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:18:49,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:18:49,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:18:51,915.915 INFO    ] ================================================
[2026-08-25 18:18:51,930.930 INFO    ] Launching Daemon at Tue Aug 25 18:18:51 IST 2026
[2026-08-25 18:18:51,940.940 INFO    ] ================================================
[2026-08-25 18:18:52,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:18:52
[2026-08-25 18:18:53,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:18:53,358.358 INFO    ] Initializing speech engine...
[2026-08-25 18:18:53,364.364 INFO    ] 2026-08-25 18:18:53
[2026-08-25 18:18:53,665.665 INFO    ] 2026-08-25 18:18:53
[2026-08-25 18:18:53,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:18:53,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:18:53,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:18:54,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:18:54,059.059 INFO    ] time= 25/08/2026 18:18:54
[2026-08-25 18:18:54,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:18:54,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:18:54,191.191 INFO    ] No existing commands found in stream
[2026-08-25 18:18:59,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:18:59,210.210 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 18:19:02,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:19:02,437.437 INFO    ] Checking for system updates...
[2026-08-25 18:19:02,479.479 INFO    ] 200
[2026-08-25 18:19:02,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:02,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:19:02,546.546 INFO    ] No update needed
[2026-08-25 18:19:02,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 18:19:02,588.588 INFO    ] 200
[2026-08-25 18:19:02,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:02,641.641 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:19:02,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:19:02,699.699 INFO    ] No camera update needed
[2026-08-25 18:19:02,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:19:02,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:19:02,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:19:02,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:19:04,758.758 INFO    ] ================================================
[2026-08-25 18:19:04,773.773 INFO    ] Launching Daemon at Tue Aug 25 18:19:04 IST 2026
[2026-08-25 18:19:04,784.784 INFO    ] ================================================
[2026-08-25 18:19:05,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:19:05
[2026-08-25 18:19:06,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:19:06,464.464 INFO    ] Initializing speech engine...
[2026-08-25 18:19:06,475.475 INFO    ] 2026-08-25 18:19:06
[2026-08-25 18:19:06,804.804 INFO    ] 2026-08-25 18:19:06
[2026-08-25 18:19:06,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:19:07,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:19:07,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:19:07,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:19:07,303.303 INFO    ] time= 25/08/2026 18:19:07
[2026-08-25 18:19:07,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:19:07,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:19:07,455.455 INFO    ] No existing commands found in stream
[2026-08-25 18:19:12,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:19:12,474.474 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 18:19:14,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:19:14,118.118 INFO    ] Checking for system updates...
[2026-08-25 18:19:14,155.155 INFO    ] 200
[2026-08-25 18:19:14,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:14,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:19:14,214.214 INFO    ] No update needed
[2026-08-25 18:19:14,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 18:19:14,250.250 INFO    ] 200
[2026-08-25 18:19:14,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:14,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:19:14,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:19:14,355.355 INFO    ] No camera update needed
[2026-08-25 18:19:14,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:19:14,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:19:14,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:19:14,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:19:16,412.412 INFO    ] ================================================
[2026-08-25 18:19:16,427.427 INFO    ] Launching Daemon at Tue Aug 25 18:19:16 IST 2026
[2026-08-25 18:19:16,439.439 INFO    ] ================================================
[2026-08-25 18:19:17,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:19:17
[2026-08-25 18:19:17,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:19:17,867.867 INFO    ] Initializing speech engine...
[2026-08-25 18:19:17,874.874 INFO    ] 2026-08-25 18:19:17
[2026-08-25 18:19:18,129.129 INFO    ] 2026-08-25 18:19:18
[2026-08-25 18:19:18,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:19:18,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:19:18,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:19:18,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:19:18,624.624 INFO    ] time= 25/08/2026 18:19:18
[2026-08-25 18:19:18,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:19:18,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:19:18,811.811 INFO    ] No existing commands found in stream
[2026-08-25 18:19:23,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:19:23,844.844 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 18:19:25,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:19:25,612.612 INFO    ] Checking for system updates...
[2026-08-25 18:19:25,649.649 INFO    ] 200
[2026-08-25 18:19:25,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:25,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:19:25,709.709 INFO    ] No update needed
[2026-08-25 18:19:25,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 18:19:25,746.746 INFO    ] 200
[2026-08-25 18:19:25,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:25,798.798 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:19:25,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:19:25,852.852 INFO    ] No camera update needed
[2026-08-25 18:19:25,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:19:25,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:19:25,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:19:25,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:19:27,911.911 INFO    ] ================================================
[2026-08-25 18:19:27,927.927 INFO    ] Launching Daemon at Tue Aug 25 18:19:27 IST 2026
[2026-08-25 18:19:27,937.937 INFO    ] ================================================
[2026-08-25 18:19:28,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:19:28
[2026-08-25 18:19:29,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:19:29,429.429 INFO    ] Initializing speech engine...
[2026-08-25 18:19:29,438.438 INFO    ] 2026-08-25 18:19:29
[2026-08-25 18:19:29,694.694 INFO    ] 2026-08-25 18:19:29
[2026-08-25 18:19:29,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:19:29,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:19:29,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:19:30,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:19:30,206.206 INFO    ] time= 25/08/2026 18:19:30
[2026-08-25 18:19:30,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:19:30,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:19:30,389.389 INFO    ] No existing commands found in stream
[2026-08-25 18:19:35,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:19:35,406.406 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 18:19:39,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:19:39,882.882 INFO    ] Checking for system updates...
[2026-08-25 18:19:39,918.918 INFO    ] 200
[2026-08-25 18:19:39,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:39,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:19:39,984.984 INFO    ] No update needed
[2026-08-25 18:19:39,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 18:19:40,020.020 INFO    ] 200
[2026-08-25 18:19:40,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:40,066.066 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:19:40,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:19:40,118.118 INFO    ] No camera update needed
[2026-08-25 18:19:40,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:19:40,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:19:40,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:19:40,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:19:42,174.174 INFO    ] ================================================
[2026-08-25 18:19:42,189.189 INFO    ] Launching Daemon at Tue Aug 25 18:19:42 IST 2026
[2026-08-25 18:19:42,200.200 INFO    ] ================================================
[2026-08-25 18:19:42,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:19:42
[2026-08-25 18:19:43,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:19:43,605.605 INFO    ] Initializing speech engine...
[2026-08-25 18:19:43,611.611 INFO    ] 2026-08-25 18:19:43
[2026-08-25 18:19:43,875.875 INFO    ] 2026-08-25 18:19:43
[2026-08-25 18:19:43,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:19:44,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:19:44,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:19:44,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:19:44,284.284 INFO    ] time= 25/08/2026 18:19:44
[2026-08-25 18:19:44,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:19:44,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:19:44,474.474 INFO    ] No existing commands found in stream
[2026-08-25 18:19:49,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:19:49,489.489 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 18:19:53,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:19:53,275.275 INFO    ] Checking for system updates...
[2026-08-25 18:19:53,310.310 INFO    ] 200
[2026-08-25 18:19:53,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:53,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:19:53,368.368 INFO    ] No update needed
[2026-08-25 18:19:53,370.370 INFO    ] Checking for camera pi updates...
[2026-08-25 18:19:53,404.404 INFO    ] 200
[2026-08-25 18:19:53,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:19:53,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:19:53,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:19:53,498.498 INFO    ] No camera update needed
[2026-08-25 18:19:53,501.501 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:19:53,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:19:53,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:19:53,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:19:55,552.552 INFO    ] ================================================
[2026-08-25 18:19:55,568.568 INFO    ] Launching Daemon at Tue Aug 25 18:19:55 IST 2026
[2026-08-25 18:19:55,579.579 INFO    ] ================================================
[2026-08-25 18:19:56,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:19:56
[2026-08-25 18:19:56,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:19:57,031.031 INFO    ] Initializing speech engine...
[2026-08-25 18:19:57,041.041 INFO    ] 2026-08-25 18:19:57
[2026-08-25 18:19:57,303.303 INFO    ] 2026-08-25 18:19:57
[2026-08-25 18:19:57,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:19:57,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:19:57,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:19:57,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:19:57,845.845 INFO    ] time= 25/08/2026 18:19:57
[2026-08-25 18:19:57,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:19:57,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:19:57,995.995 INFO    ] No existing commands found in stream
[2026-08-25 18:20:03,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:20:03,010.010 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 18:20:07,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:20:07,409.409 INFO    ] Checking for system updates...
[2026-08-25 18:20:07,450.450 INFO    ] 200
[2026-08-25 18:20:07,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:07,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:07,517.517 INFO    ] No update needed
[2026-08-25 18:20:07,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 18:20:07,552.552 INFO    ] 200
[2026-08-25 18:20:07,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:07,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:20:07,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:07,651.651 INFO    ] No camera update needed
[2026-08-25 18:20:07,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:20:07,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:20:07,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:20:07,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:20:09,706.706 INFO    ] ================================================
[2026-08-25 18:20:09,721.721 INFO    ] Launching Daemon at Tue Aug 25 18:20:09 IST 2026
[2026-08-25 18:20:09,733.733 INFO    ] ================================================
[2026-08-25 18:20:10,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:20:10
[2026-08-25 18:20:10,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:20:11,233.233 INFO    ] Initializing speech engine...
[2026-08-25 18:20:11,245.245 INFO    ] 2026-08-25 18:20:11
[2026-08-25 18:20:11,517.517 INFO    ] 2026-08-25 18:20:11
[2026-08-25 18:20:11,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:20:11,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:20:11,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:20:12,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:20:12,092.092 INFO    ] time= 25/08/2026 18:20:12
[2026-08-25 18:20:12,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:20:12,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:20:12,295.295 INFO    ] No existing commands found in stream
[2026-08-25 18:20:17,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:20:17,325.325 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-08-25 18:20:18,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:20:18,502.502 INFO    ] Checking for system updates...
[2026-08-25 18:20:18,539.539 INFO    ] 200
[2026-08-25 18:20:18,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:18,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:18,597.597 INFO    ] No update needed
[2026-08-25 18:20:18,599.599 INFO    ] Checking for camera pi updates...
[2026-08-25 18:20:18,638.638 INFO    ] 200
[2026-08-25 18:20:18,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:18,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:20:18,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:18,732.732 INFO    ] No camera update needed
[2026-08-25 18:20:18,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:20:18,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:20:18,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:20:18,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:20:20,787.787 INFO    ] ================================================
[2026-08-25 18:20:20,803.803 INFO    ] Launching Daemon at Tue Aug 25 18:20:20 IST 2026
[2026-08-25 18:20:20,813.813 INFO    ] ================================================
[2026-08-25 18:20:21,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:20:21
[2026-08-25 18:20:21,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:20:22,234.234 INFO    ] Initializing speech engine...
[2026-08-25 18:20:22,244.244 INFO    ] 2026-08-25 18:20:22
[2026-08-25 18:20:22,491.491 INFO    ] 2026-08-25 18:20:22
[2026-08-25 18:20:22,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:20:22,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:20:22,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:20:22,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:20:22,972.972 INFO    ] time= 25/08/2026 18:20:22
[2026-08-25 18:20:23,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:20:23,061.061 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:20:23,182.182 INFO    ] No existing commands found in stream
[2026-08-25 18:20:28,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:20:28,210.210 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 18:20:30,327.327 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:20:30,329.329 INFO    ] Checking for system updates...
[2026-08-25 18:20:30,369.369 INFO    ] 200
[2026-08-25 18:20:30,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:30,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:20:30,433.433 INFO    ] No update needed
[2026-08-25 18:20:30,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 18:20:30,469.469 INFO    ] 200
[2026-08-25 18:20:30,472.472 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:30,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:20:30,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:20:30,568.568 INFO    ] No camera update needed
[2026-08-25 18:20:30,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:20:30,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:20:30,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:20:30,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:20:32,626.626 INFO    ] ================================================
[2026-08-25 18:20:32,644.644 INFO    ] Launching Daemon at Tue Aug 25 18:20:32 IST 2026
[2026-08-25 18:20:32,656.656 INFO    ] ================================================
[2026-08-25 18:20:33,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:20:33
[2026-08-25 18:20:33,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:20:34,091.091 INFO    ] Initializing speech engine...
[2026-08-25 18:20:34,097.097 INFO    ] 2026-08-25 18:20:34
[2026-08-25 18:20:34,387.387 INFO    ] 2026-08-25 18:20:34
[2026-08-25 18:20:34,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:20:34,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:20:34,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:20:34,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:20:34,875.875 INFO    ] time= 25/08/2026 18:20:34
[2026-08-25 18:20:34,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:20:34,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:20:35,115.115 INFO    ] No existing commands found in stream
[2026-08-25 18:20:40,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:20:40,130.130 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 18:20:42,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:20:42,173.173 INFO    ] Checking for system updates...
[2026-08-25 18:20:42,213.213 INFO    ] 200
[2026-08-25 18:20:42,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:42,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:42,280.280 INFO    ] No update needed
[2026-08-25 18:20:42,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 18:20:42,321.321 INFO    ] 200
[2026-08-25 18:20:42,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:42,366.366 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:20:42,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:42,415.415 INFO    ] No camera update needed
[2026-08-25 18:20:42,417.417 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:20:42,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:20:42,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:20:42,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:20:44,475.475 INFO    ] ================================================
[2026-08-25 18:20:44,490.490 INFO    ] Launching Daemon at Tue Aug 25 18:20:44 IST 2026
[2026-08-25 18:20:44,501.501 INFO    ] ================================================
[2026-08-25 18:20:45,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:20:45
[2026-08-25 18:20:45,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:20:45,935.935 INFO    ] Initializing speech engine...
[2026-08-25 18:20:45,957.957 INFO    ] 2026-08-25 18:20:45
[2026-08-25 18:20:46,210.210 INFO    ] 2026-08-25 18:20:46
[2026-08-25 18:20:46,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:20:46,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:20:46,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:20:46,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:20:46,707.707 INFO    ] time= 25/08/2026 18:20:46
[2026-08-25 18:20:46,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:20:46,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:20:46,929.929 INFO    ] No existing commands found in stream
[2026-08-25 18:20:51,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:20:51,955.955 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 18:20:53,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:20:53,454.454 INFO    ] Checking for system updates...
[2026-08-25 18:20:53,494.494 INFO    ] 200
[2026-08-25 18:20:53,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:53,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:53,563.563 INFO    ] No update needed
[2026-08-25 18:20:53,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 18:20:53,604.604 INFO    ] 200
[2026-08-25 18:20:53,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:20:53,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:20:53,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:20:53,710.710 INFO    ] No camera update needed
[2026-08-25 18:20:53,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:20:53,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:20:53,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:20:53,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:20:55,768.768 INFO    ] ================================================
[2026-08-25 18:20:55,783.783 INFO    ] Launching Daemon at Tue Aug 25 18:20:55 IST 2026
[2026-08-25 18:20:55,794.794 INFO    ] ================================================
[2026-08-25 18:20:56,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:20:56
[2026-08-25 18:20:57,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:20:57,428.428 INFO    ] Initializing speech engine...
[2026-08-25 18:20:57,440.440 INFO    ] 2026-08-25 18:20:57
[2026-08-25 18:20:57,753.753 INFO    ] 2026-08-25 18:20:57
[2026-08-25 18:20:57,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:20:57,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:20:57,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:20:58,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:20:58,252.252 INFO    ] time= 25/08/2026 18:20:58
[2026-08-25 18:20:58,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:20:58,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:20:58,406.406 INFO    ] No existing commands found in stream
[2026-08-25 18:21:03,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:21:03,427.427 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 18:21:07,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:21:07,839.839 INFO    ] Checking for system updates...
[2026-08-25 18:21:07,879.879 INFO    ] 200
[2026-08-25 18:21:07,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:07,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:07,941.941 INFO    ] No update needed
[2026-08-25 18:21:07,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 18:21:07,980.980 INFO    ] 200
[2026-08-25 18:21:07,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:08,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:21:08,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:08,078.078 INFO    ] No camera update needed
[2026-08-25 18:21:08,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:21:08,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:21:08,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:21:08,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:21:10,133.133 INFO    ] ================================================
[2026-08-25 18:21:10,148.148 INFO    ] Launching Daemon at Tue Aug 25 18:21:10 IST 2026
[2026-08-25 18:21:10,159.159 INFO    ] ================================================
[2026-08-25 18:21:10,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:21:10
[2026-08-25 18:21:11,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:21:11,617.617 INFO    ] Initializing speech engine...
[2026-08-25 18:21:11,633.633 INFO    ] 2026-08-25 18:21:11
[2026-08-25 18:21:11,927.927 INFO    ] 2026-08-25 18:21:11
[2026-08-25 18:21:11,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:21:12,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:21:12,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:21:12,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:21:12,341.341 INFO    ] time= 25/08/2026 18:21:12
[2026-08-25 18:21:12,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:21:12,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:21:12,530.530 INFO    ] No existing commands found in stream
[2026-08-25 18:21:17,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:21:17,558.558 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 18:21:20,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:21:20,688.688 INFO    ] Checking for system updates...
[2026-08-25 18:21:20,725.725 INFO    ] 200
[2026-08-25 18:21:20,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:20,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:20,789.789 INFO    ] No update needed
[2026-08-25 18:21:20,791.791 INFO    ] Checking for camera pi updates...
[2026-08-25 18:21:20,826.826 INFO    ] 200
[2026-08-25 18:21:20,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:20,870.870 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:21:20,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:20,935.935 INFO    ] No camera update needed
[2026-08-25 18:21:20,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:21:20,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:21:20,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:21:20,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:21:23,994.994 INFO    ] ================================================
[2026-08-25 18:21:23,010.010 INFO    ] Launching Daemon at Tue Aug 25 18:21:23 IST 2026
[2026-08-25 18:21:23,021.021 INFO    ] ================================================
[2026-08-25 18:21:23,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:21:23
[2026-08-25 18:21:24,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:21:24,446.446 INFO    ] Initializing speech engine...
[2026-08-25 18:21:24,455.455 INFO    ] 2026-08-25 18:21:24
[2026-08-25 18:21:24,704.704 INFO    ] 2026-08-25 18:21:24
[2026-08-25 18:21:24,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:21:24,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:21:25,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:21:25,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:21:25,179.179 INFO    ] time= 25/08/2026 18:21:25
[2026-08-25 18:21:25,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:21:25,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:21:25,423.423 INFO    ] No existing commands found in stream
[2026-08-25 18:21:30,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:21:30,447.447 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 18:21:34,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:21:34,443.443 INFO    ] Checking for system updates...
[2026-08-25 18:21:34,480.480 INFO    ] 200
[2026-08-25 18:21:34,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:34,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:34,545.545 INFO    ] No update needed
[2026-08-25 18:21:34,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 18:21:34,581.581 INFO    ] 200
[2026-08-25 18:21:34,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:34,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:21:34,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:34,681.681 INFO    ] No camera update needed
[2026-08-25 18:21:34,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:21:34,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:21:34,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:21:34,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:21:36,739.739 INFO    ] ================================================
[2026-08-25 18:21:36,755.755 INFO    ] Launching Daemon at Tue Aug 25 18:21:36 IST 2026
[2026-08-25 18:21:36,766.766 INFO    ] ================================================
[2026-08-25 18:21:37,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:21:37
[2026-08-25 18:21:38,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:21:38,409.409 INFO    ] Initializing speech engine...
[2026-08-25 18:21:38,416.416 INFO    ] 2026-08-25 18:21:38
[2026-08-25 18:21:38,723.723 INFO    ] 2026-08-25 18:21:38
[2026-08-25 18:21:38,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:21:39,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:21:39,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:21:39,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:21:39,236.236 INFO    ] time= 25/08/2026 18:21:39
[2026-08-25 18:21:39,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:21:39,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:21:39,391.391 INFO    ] No existing commands found in stream
[2026-08-25 18:21:44,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:21:44,411.411 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-08-25 18:21:47,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:21:47,275.275 INFO    ] Checking for system updates...
[2026-08-25 18:21:47,311.311 INFO    ] 200
[2026-08-25 18:21:47,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:47,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:47,371.371 INFO    ] No update needed
[2026-08-25 18:21:47,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 18:21:47,408.408 INFO    ] 200
[2026-08-25 18:21:47,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:47,453.453 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:21:47,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:47,510.510 INFO    ] No camera update needed
[2026-08-25 18:21:47,512.512 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:21:47,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:21:47,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:21:47,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:21:49,570.570 INFO    ] ================================================
[2026-08-25 18:21:49,586.586 INFO    ] Launching Daemon at Tue Aug 25 18:21:49 IST 2026
[2026-08-25 18:21:49,597.597 INFO    ] ================================================
[2026-08-25 18:21:50,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:21:50
[2026-08-25 18:21:50,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:21:51,259.259 INFO    ] Initializing speech engine...
[2026-08-25 18:21:51,272.272 INFO    ] 2026-08-25 18:21:51
[2026-08-25 18:21:51,588.588 INFO    ] 2026-08-25 18:21:51
[2026-08-25 18:21:51,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:21:51,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:21:51,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:21:52,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:21:52,088.088 INFO    ] time= 25/08/2026 18:21:52
[2026-08-25 18:21:52,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:21:52,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:21:52,229.229 INFO    ] No existing commands found in stream
[2026-08-25 18:21:57,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:21:57,260.260 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 18:21:58,553.553 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:21:58,556.556 INFO    ] Checking for system updates...
[2026-08-25 18:21:58,593.593 INFO    ] 200
[2026-08-25 18:21:58,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:58,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:58,656.656 INFO    ] No update needed
[2026-08-25 18:21:58,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 18:21:58,695.695 INFO    ] 200
[2026-08-25 18:21:58,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:21:58,744.744 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:21:58,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:21:58,799.799 INFO    ] No camera update needed
[2026-08-25 18:21:58,802.802 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:21:58,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:21:58,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:21:58,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:22:00,858.858 INFO    ] ================================================
[2026-08-25 18:22:00,873.873 INFO    ] Launching Daemon at Tue Aug 25 18:22:00 IST 2026
[2026-08-25 18:22:00,885.885 INFO    ] ================================================
[2026-08-25 18:22:01,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:22:01
[2026-08-25 18:22:02,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:22:02,680.680 INFO    ] Initializing speech engine...
[2026-08-25 18:22:02,712.712 INFO    ] 2026-08-25 18:22:02
[2026-08-25 18:22:03,022.022 INFO    ] 2026-08-25 18:22:03
[2026-08-25 18:22:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:22:03,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:22:03,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:22:03,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:22:03,598.598 INFO    ] time= 25/08/2026 18:22:03
[2026-08-25 18:22:03,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:22:03,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:22:03,807.807 INFO    ] No existing commands found in stream
[2026-08-25 18:22:08,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:22:08,830.830 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 18:22:10,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:22:10,922.922 INFO    ] Checking for system updates...
[2026-08-25 18:22:10,957.957 INFO    ] 200
[2026-08-25 18:22:10,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:11,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:22:11,017.017 INFO    ] No update needed
[2026-08-25 18:22:11,020.020 INFO    ] Checking for camera pi updates...
[2026-08-25 18:22:11,059.059 INFO    ] 200
[2026-08-25 18:22:11,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:11,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:22:11,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:22:11,255.255 INFO    ] No camera update needed
[2026-08-25 18:22:11,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:22:11,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:22:11,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:22:11,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:22:13,311.311 INFO    ] ================================================
[2026-08-25 18:22:13,327.327 INFO    ] Launching Daemon at Tue Aug 25 18:22:13 IST 2026
[2026-08-25 18:22:13,339.339 INFO    ] ================================================
[2026-08-25 18:22:13,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:22:13
[2026-08-25 18:22:14,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:22:14,961.961 INFO    ] Initializing speech engine...
[2026-08-25 18:22:14,969.969 INFO    ] 2026-08-25 18:22:14
[2026-08-25 18:22:15,260.260 INFO    ] 2026-08-25 18:22:15
[2026-08-25 18:22:15,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:22:15,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:22:15,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:22:15,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:22:15,789.789 INFO    ] time= 25/08/2026 18:22:15
[2026-08-25 18:22:15,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:22:15,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:22:15,958.958 INFO    ] No existing commands found in stream
[2026-08-25 18:22:20,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:22:20,990.990 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 18:22:23,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:22:23,162.162 INFO    ] Checking for system updates...
[2026-08-25 18:22:23,197.197 INFO    ] 200
[2026-08-25 18:22:23,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:23,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:22:23,254.254 INFO    ] No update needed
[2026-08-25 18:22:23,257.257 INFO    ] Checking for camera pi updates...
[2026-08-25 18:22:23,294.294 INFO    ] 200
[2026-08-25 18:22:23,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:23,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:22:23,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:22:23,385.385 INFO    ] No camera update needed
[2026-08-25 18:22:23,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:22:23,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:22:23,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:22:23,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:22:25,441.441 INFO    ] ================================================
[2026-08-25 18:22:25,457.457 INFO    ] Launching Daemon at Tue Aug 25 18:22:25 IST 2026
[2026-08-25 18:22:25,468.468 INFO    ] ================================================
[2026-08-25 18:22:26,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:22:26
[2026-08-25 18:22:26,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:22:27,083.083 INFO    ] Initializing speech engine...
[2026-08-25 18:22:27,097.097 INFO    ] 2026-08-25 18:22:27
[2026-08-25 18:22:27,382.382 INFO    ] 2026-08-25 18:22:27
[2026-08-25 18:22:27,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:22:27,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:22:27,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:22:27,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:22:27,932.932 INFO    ] time= 25/08/2026 18:22:27
[2026-08-25 18:22:27,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:22:27,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:22:28,090.090 INFO    ] No existing commands found in stream
[2026-08-25 18:22:33,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:22:33,110.110 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 18:22:34,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:22:34,632.632 INFO    ] Checking for system updates...
[2026-08-25 18:22:34,672.672 INFO    ] 200
[2026-08-25 18:22:34,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:34,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:22:34,757.757 INFO    ] No update needed
[2026-08-25 18:22:34,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 18:22:34,797.797 INFO    ] 200
[2026-08-25 18:22:34,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:34,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:22:34,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:22:34,896.896 INFO    ] No camera update needed
[2026-08-25 18:22:34,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:22:34,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:22:34,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:22:34,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:22:36,951.951 INFO    ] ================================================
[2026-08-25 18:22:36,967.967 INFO    ] Launching Daemon at Tue Aug 25 18:22:36 IST 2026
[2026-08-25 18:22:36,978.978 INFO    ] ================================================
[2026-08-25 18:22:37,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:22:37
[2026-08-25 18:22:38,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:22:38,434.434 INFO    ] Initializing speech engine...
[2026-08-25 18:22:38,445.445 INFO    ] 2026-08-25 18:22:38
[2026-08-25 18:22:38,698.698 INFO    ] 2026-08-25 18:22:38
[2026-08-25 18:22:38,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:22:38,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:22:38,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:22:39,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:22:39,179.179 INFO    ] time= 25/08/2026 18:22:39
[2026-08-25 18:22:39,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:22:39,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:22:39,389.389 INFO    ] No existing commands found in stream
[2026-08-25 18:22:44,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:22:44,407.407 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 18:22:47,591.591 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:22:47,594.594 INFO    ] Checking for system updates...
[2026-08-25 18:22:47,632.632 INFO    ] 200
[2026-08-25 18:22:47,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:47,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:22:47,689.689 INFO    ] No update needed
[2026-08-25 18:22:47,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 18:22:47,725.725 INFO    ] 200
[2026-08-25 18:22:47,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:47,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:22:47,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:22:47,822.822 INFO    ] No camera update needed
[2026-08-25 18:22:47,824.824 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:22:47,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:22:47,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:22:47,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:22:49,879.879 INFO    ] ================================================
[2026-08-25 18:22:49,895.895 INFO    ] Launching Daemon at Tue Aug 25 18:22:49 IST 2026
[2026-08-25 18:22:49,907.907 INFO    ] ================================================
[2026-08-25 18:22:50,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:22:50
[2026-08-25 18:22:51,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:22:51,360.360 INFO    ] Initializing speech engine...
[2026-08-25 18:22:51,366.366 INFO    ] 2026-08-25 18:22:51
[2026-08-25 18:22:51,664.664 INFO    ] 2026-08-25 18:22:51
[2026-08-25 18:22:51,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:22:51,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:22:51,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:22:52,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:22:52,087.087 INFO    ] time= 25/08/2026 18:22:52
[2026-08-25 18:22:52,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:22:52,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:22:52,248.248 INFO    ] No existing commands found in stream
[2026-08-25 18:22:57,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:22:57,281.281 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 18:22:57,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:22:57,867.867 INFO    ] Checking for system updates...
[2026-08-25 18:22:57,903.903 INFO    ] 200
[2026-08-25 18:22:57,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:57,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:22:57,962.962 INFO    ] No update needed
[2026-08-25 18:22:57,965.965 INFO    ] Checking for camera pi updates...
[2026-08-25 18:22:57,999.999 INFO    ] 200
[2026-08-25 18:22:58,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:22:58,042.042 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:22:58,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:22:58,090.090 INFO    ] No camera update needed
[2026-08-25 18:22:58,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:22:58,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:22:58,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:22:58,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:23:00,145.145 INFO    ] ================================================
[2026-08-25 18:23:00,161.161 INFO    ] Launching Daemon at Tue Aug 25 18:23:00 IST 2026
[2026-08-25 18:23:00,172.172 INFO    ] ================================================
[2026-08-25 18:23:00,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:23:00
[2026-08-25 18:23:01,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:23:01,801.801 INFO    ] Initializing speech engine...
[2026-08-25 18:23:01,815.815 INFO    ] 2026-08-25 18:23:01
[2026-08-25 18:23:02,193.193 INFO    ] 2026-08-25 18:23:02
[2026-08-25 18:23:02,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:23:02,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:23:02,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:23:02,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:23:02,624.624 INFO    ] time= 25/08/2026 18:23:02
[2026-08-25 18:23:02,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:23:02,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:23:02,843.843 INFO    ] No existing commands found in stream
[2026-08-25 18:23:07,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:23:07,858.858 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 18:23:12,207.207 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:23:12,210.210 INFO    ] Checking for system updates...
[2026-08-25 18:23:12,249.249 INFO    ] 200
[2026-08-25 18:23:12,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:12,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:23:12,312.312 INFO    ] No update needed
[2026-08-25 18:23:12,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 18:23:12,348.348 INFO    ] 200
[2026-08-25 18:23:12,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:12,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:23:12,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:23:12,450.450 INFO    ] No camera update needed
[2026-08-25 18:23:12,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:23:12,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:23:12,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:23:12,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:23:14,506.506 INFO    ] ================================================
[2026-08-25 18:23:14,521.521 INFO    ] Launching Daemon at Tue Aug 25 18:23:14 IST 2026
[2026-08-25 18:23:14,532.532 INFO    ] ================================================
[2026-08-25 18:23:15,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:23:15
[2026-08-25 18:23:15,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:23:16,093.093 INFO    ] Initializing speech engine...
[2026-08-25 18:23:16,105.105 INFO    ] 2026-08-25 18:23:16
[2026-08-25 18:23:16,361.361 INFO    ] 2026-08-25 18:23:16
[2026-08-25 18:23:16,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:23:16,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:23:16,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:23:16,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:23:16,852.852 INFO    ] time= 25/08/2026 18:23:16
[2026-08-25 18:23:16,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:23:16,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:23:17,045.045 INFO    ] No existing commands found in stream
[2026-08-25 18:23:22,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:23:22,076.076 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 18:23:24,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:23:24,706.706 INFO    ] Checking for system updates...
[2026-08-25 18:23:24,742.742 INFO    ] 200
[2026-08-25 18:23:24,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:24,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:23:24,801.801 INFO    ] No update needed
[2026-08-25 18:23:24,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 18:23:24,838.838 INFO    ] 200
[2026-08-25 18:23:24,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:24,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:23:24,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:23:24,935.935 INFO    ] No camera update needed
[2026-08-25 18:23:24,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:23:24,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:23:24,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:23:24,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:23:26,991.991 INFO    ] ================================================
[2026-08-25 18:23:27,006.006 INFO    ] Launching Daemon at Tue Aug 25 18:23:27 IST 2026
[2026-08-25 18:23:27,017.017 INFO    ] ================================================
[2026-08-25 18:23:27,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:23:27
[2026-08-25 18:23:28,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:23:28,540.540 INFO    ] Initializing speech engine...
[2026-08-25 18:23:28,553.553 INFO    ] 2026-08-25 18:23:28
[2026-08-25 18:23:28,813.813 INFO    ] 2026-08-25 18:23:28
[2026-08-25 18:23:28,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:23:29,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:23:29,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:23:29,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:23:29,325.325 INFO    ] time= 25/08/2026 18:23:29
[2026-08-25 18:23:29,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:23:29,392.392 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:23:29,541.541 INFO    ] No existing commands found in stream
[2026-08-25 18:23:34,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:23:34,568.568 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 18:23:36,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:23:36,419.419 INFO    ] Checking for system updates...
[2026-08-25 18:23:36,456.456 INFO    ] 200
[2026-08-25 18:23:36,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:36,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:23:36,514.514 INFO    ] No update needed
[2026-08-25 18:23:36,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 18:23:36,553.553 INFO    ] 200
[2026-08-25 18:23:36,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:36,599.599 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:23:36,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:23:36,645.645 INFO    ] No camera update needed
[2026-08-25 18:23:36,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:23:36,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:23:36,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:23:36,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:23:38,699.699 INFO    ] ================================================
[2026-08-25 18:23:38,714.714 INFO    ] Launching Daemon at Tue Aug 25 18:23:38 IST 2026
[2026-08-25 18:23:38,725.725 INFO    ] ================================================
[2026-08-25 18:23:39,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:23:39
[2026-08-25 18:23:40,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:23:40,303.303 INFO    ] Initializing speech engine...
[2026-08-25 18:23:40,312.312 INFO    ] 2026-08-25 18:23:40
[2026-08-25 18:23:40,560.560 INFO    ] 2026-08-25 18:23:40
[2026-08-25 18:23:40,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:23:40,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:23:40,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:23:40,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:23:41,018.018 INFO    ] time= 25/08/2026 18:23:40
[2026-08-25 18:23:41,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:23:41,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:23:41,253.253 INFO    ] No existing commands found in stream
[2026-08-25 18:23:46,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:23:46,281.281 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 18:23:49,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:23:49,092.092 INFO    ] Checking for system updates...
[2026-08-25 18:23:49,127.127 INFO    ] 200
[2026-08-25 18:23:49,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:49,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:23:49,188.188 INFO    ] No update needed
[2026-08-25 18:23:49,190.190 INFO    ] Checking for camera pi updates...
[2026-08-25 18:23:49,226.226 INFO    ] 200
[2026-08-25 18:23:49,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:23:49,269.269 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:23:49,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:23:49,320.320 INFO    ] No camera update needed
[2026-08-25 18:23:49,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:23:49,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:23:49,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:23:49,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:23:51,376.376 INFO    ] ================================================
[2026-08-25 18:23:51,391.391 INFO    ] Launching Daemon at Tue Aug 25 18:23:51 IST 2026
[2026-08-25 18:23:51,402.402 INFO    ] ================================================
[2026-08-25 18:23:51,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:23:51
[2026-08-25 18:23:52,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:23:52,853.853 INFO    ] Initializing speech engine...
[2026-08-25 18:23:52,862.862 INFO    ] 2026-08-25 18:23:52
[2026-08-25 18:23:53,121.121 INFO    ] 2026-08-25 18:23:53
[2026-08-25 18:23:53,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:23:53,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:23:53,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:23:53,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:23:53,586.586 INFO    ] time= 25/08/2026 18:23:53
[2026-08-25 18:23:53,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:23:53,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:23:53,811.811 INFO    ] No existing commands found in stream
[2026-08-25 18:23:58,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:23:58,830.830 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 18:24:01,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:24:01,554.554 INFO    ] Checking for system updates...
[2026-08-25 18:24:01,598.598 INFO    ] 200
[2026-08-25 18:24:01,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:01,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:01,669.669 INFO    ] No update needed
[2026-08-25 18:24:01,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 18:24:01,710.710 INFO    ] 200
[2026-08-25 18:24:01,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:01,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:24:01,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:01,863.863 INFO    ] No camera update needed
[2026-08-25 18:24:01,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:24:01,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:24:01,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:24:01,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:24:03,939.939 INFO    ] ================================================
[2026-08-25 18:24:03,954.954 INFO    ] Launching Daemon at Tue Aug 25 18:24:03 IST 2026
[2026-08-25 18:24:03,965.965 INFO    ] ================================================
[2026-08-25 18:24:04,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:24:04
[2026-08-25 18:24:05,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:24:05,491.491 INFO    ] Initializing speech engine...
[2026-08-25 18:24:05,514.514 INFO    ] 2026-08-25 18:24:05
[2026-08-25 18:24:05,770.770 INFO    ] 2026-08-25 18:24:05
[2026-08-25 18:24:05,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:24:06,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:24:06,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:24:06,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:24:06,293.293 INFO    ] time= 25/08/2026 18:24:06
[2026-08-25 18:24:06,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:24:06,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:24:06,526.526 INFO    ] No existing commands found in stream
[2026-08-25 18:24:11,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:24:11,553.553 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 18:24:14,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:24:14,611.611 INFO    ] Checking for system updates...
[2026-08-25 18:24:14,646.646 INFO    ] 200
[2026-08-25 18:24:14,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:14,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:24:14,709.709 INFO    ] No update needed
[2026-08-25 18:24:14,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 18:24:14,748.748 INFO    ] 200
[2026-08-25 18:24:14,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:14,795.795 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:24:14,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:24:14,944.944 INFO    ] No camera update needed
[2026-08-25 18:24:14,947.947 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:24:14,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:24:14,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:24:14,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:24:17,002.002 INFO    ] ================================================
[2026-08-25 18:24:17,018.018 INFO    ] Launching Daemon at Tue Aug 25 18:24:17 IST 2026
[2026-08-25 18:24:17,029.029 INFO    ] ================================================
[2026-08-25 18:24:17,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:24:17
[2026-08-25 18:24:18,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:24:18,441.441 INFO    ] Initializing speech engine...
[2026-08-25 18:24:18,466.466 INFO    ] 2026-08-25 18:24:18
[2026-08-25 18:24:18,735.735 INFO    ] 2026-08-25 18:24:18
[2026-08-25 18:24:18,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:24:18,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:24:18,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:24:19,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:24:19,141.141 INFO    ] time= 25/08/2026 18:24:19
[2026-08-25 18:24:19,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:24:19,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:24:19,317.317 INFO    ] No existing commands found in stream
[2026-08-25 18:24:24,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:24:24,345.345 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 18:24:26,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:24:26,930.930 INFO    ] Checking for system updates...
[2026-08-25 18:24:26,975.975 INFO    ] 200
[2026-08-25 18:24:26,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:27,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:27,037.037 INFO    ] No update needed
[2026-08-25 18:24:27,040.040 INFO    ] Checking for camera pi updates...
[2026-08-25 18:24:27,073.073 INFO    ] 200
[2026-08-25 18:24:27,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:27,115.115 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:24:27,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:27,175.175 INFO    ] No camera update needed
[2026-08-25 18:24:27,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:24:27,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:24:27,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:24:27,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:24:29,230.230 INFO    ] ================================================
[2026-08-25 18:24:29,245.245 INFO    ] Launching Daemon at Tue Aug 25 18:24:29 IST 2026
[2026-08-25 18:24:29,256.256 INFO    ] ================================================
[2026-08-25 18:24:29,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:24:29
[2026-08-25 18:24:30,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:24:30,836.836 INFO    ] Initializing speech engine...
[2026-08-25 18:24:30,850.850 INFO    ] 2026-08-25 18:24:30
[2026-08-25 18:24:31,158.158 INFO    ] 2026-08-25 18:24:31
[2026-08-25 18:24:31,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:24:31,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:24:31,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:24:31,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:24:31,667.667 INFO    ] time= 25/08/2026 18:24:31
[2026-08-25 18:24:31,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:24:31,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:24:31,777.777 INFO    ] No existing commands found in stream
[2026-08-25 18:24:36,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:24:36,798.798 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 18:24:40,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:24:40,251.251 INFO    ] Checking for system updates...
[2026-08-25 18:24:40,296.296 INFO    ] 200
[2026-08-25 18:24:40,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:40,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:40,403.403 INFO    ] No update needed
[2026-08-25 18:24:40,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 18:24:40,446.446 INFO    ] 200
[2026-08-25 18:24:40,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:40,497.497 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:24:40,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:40,556.556 INFO    ] No camera update needed
[2026-08-25 18:24:40,558.558 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:24:40,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:24:40,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:24:40,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:24:42,617.617 INFO    ] ================================================
[2026-08-25 18:24:42,633.633 INFO    ] Launching Daemon at Tue Aug 25 18:24:42 IST 2026
[2026-08-25 18:24:42,645.645 INFO    ] ================================================
[2026-08-25 18:24:43,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:24:43
[2026-08-25 18:24:43,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:24:44,217.217 INFO    ] Initializing speech engine...
[2026-08-25 18:24:44,226.226 INFO    ] 2026-08-25 18:24:44
[2026-08-25 18:24:44,532.532 INFO    ] 2026-08-25 18:24:44
[2026-08-25 18:24:44,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:24:44,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:24:44,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:24:44,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:24:44,969.969 INFO    ] time= 25/08/2026 18:24:44
[2026-08-25 18:24:44,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:24:44,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:24:45,062.062 INFO    ] No existing commands found in stream
[2026-08-25 18:24:50,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:24:50,079.079 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 18:24:51,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:24:51,918.918 INFO    ] Checking for system updates...
[2026-08-25 18:24:51,952.952 INFO    ] 200
[2026-08-25 18:24:51,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:52,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:52,009.009 INFO    ] No update needed
[2026-08-25 18:24:52,011.011 INFO    ] Checking for camera pi updates...
[2026-08-25 18:24:52,048.048 INFO    ] 200
[2026-08-25 18:24:52,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:24:52,095.095 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:24:52,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:24:52,142.142 INFO    ] No camera update needed
[2026-08-25 18:24:52,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:24:52,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:24:52,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:24:52,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:24:54,197.197 INFO    ] ================================================
[2026-08-25 18:24:54,212.212 INFO    ] Launching Daemon at Tue Aug 25 18:24:54 IST 2026
[2026-08-25 18:24:54,224.224 INFO    ] ================================================
[2026-08-25 18:24:54,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:24:54
[2026-08-25 18:24:55,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:24:55,677.677 INFO    ] Initializing speech engine...
[2026-08-25 18:24:55,695.695 INFO    ] 2026-08-25 18:24:55
[2026-08-25 18:24:55,969.969 INFO    ] 2026-08-25 18:24:55
[2026-08-25 18:24:56,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:24:56,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:24:56,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:24:56,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:24:56,360.360 INFO    ] time= 25/08/2026 18:24:56
[2026-08-25 18:24:56,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:24:56,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:24:56,465.465 INFO    ] No existing commands found in stream
[2026-08-25 18:25:01,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:25:01,481.481 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 18:25:05,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:25:05,323.323 INFO    ] Checking for system updates...
[2026-08-25 18:25:05,358.358 INFO    ] 200
[2026-08-25 18:25:05,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:05,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:25:05,418.418 INFO    ] No update needed
[2026-08-25 18:25:05,420.420 INFO    ] Checking for camera pi updates...
[2026-08-25 18:25:05,463.463 INFO    ] 200
[2026-08-25 18:25:05,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:05,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:25:05,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:25:05,569.569 INFO    ] No camera update needed
[2026-08-25 18:25:05,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:25:05,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:25:05,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:25:05,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:25:07,623.623 INFO    ] ================================================
[2026-08-25 18:25:07,638.638 INFO    ] Launching Daemon at Tue Aug 25 18:25:07 IST 2026
[2026-08-25 18:25:07,649.649 INFO    ] ================================================
[2026-08-25 18:25:08,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:25:08
[2026-08-25 18:25:08,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:25:09,073.073 INFO    ] Initializing speech engine...
[2026-08-25 18:25:09,082.082 INFO    ] 2026-08-25 18:25:09
[2026-08-25 18:25:09,326.326 INFO    ] 2026-08-25 18:25:09
[2026-08-25 18:25:09,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:25:09,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:25:09,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:25:09,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:25:09,807.807 INFO    ] time= 25/08/2026 18:25:09
[2026-08-25 18:25:09,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:25:09,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:25:10,038.038 INFO    ] No existing commands found in stream
[2026-08-25 18:25:15,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:25:15,066.066 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 18:25:17,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:25:17,361.361 INFO    ] Checking for system updates...
[2026-08-25 18:25:17,397.397 INFO    ] 200
[2026-08-25 18:25:17,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:17,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:25:17,454.454 INFO    ] No update needed
[2026-08-25 18:25:17,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 18:25:17,491.491 INFO    ] 200
[2026-08-25 18:25:17,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:17,536.536 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:25:17,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:25:17,601.601 INFO    ] No camera update needed
[2026-08-25 18:25:17,604.604 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:25:17,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:25:17,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:25:17,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:25:19,656.656 INFO    ] ================================================
[2026-08-25 18:25:19,672.672 INFO    ] Launching Daemon at Tue Aug 25 18:25:19 IST 2026
[2026-08-25 18:25:19,683.683 INFO    ] ================================================
[2026-08-25 18:25:20,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:25:20
[2026-08-25 18:25:20,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:25:21,101.101 INFO    ] Initializing speech engine...
[2026-08-25 18:25:21,110.110 INFO    ] 2026-08-25 18:25:21
[2026-08-25 18:25:21,360.360 INFO    ] 2026-08-25 18:25:21
[2026-08-25 18:25:21,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:25:21,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:25:21,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:25:21,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:25:21,836.836 INFO    ] time= 25/08/2026 18:25:21
[2026-08-25 18:25:21,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:25:21,930.930 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:25:22,065.065 INFO    ] No existing commands found in stream
[2026-08-25 18:25:27,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:25:27,090.090 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 18:25:27,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:25:27,932.932 INFO    ] Checking for system updates...
[2026-08-25 18:25:27,972.972 INFO    ] 200
[2026-08-25 18:25:27,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:28,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:25:28,029.029 INFO    ] No update needed
[2026-08-25 18:25:28,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 18:25:28,065.065 INFO    ] 200
[2026-08-25 18:25:28,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:28,108.108 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:25:28,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:25:28,164.164 INFO    ] No camera update needed
[2026-08-25 18:25:28,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:25:28,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:25:28,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:25:28,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:25:30,218.218 INFO    ] ================================================
[2026-08-25 18:25:30,233.233 INFO    ] Launching Daemon at Tue Aug 25 18:25:30 IST 2026
[2026-08-25 18:25:30,243.243 INFO    ] ================================================
[2026-08-25 18:25:30,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:25:30
[2026-08-25 18:25:31,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:25:31,731.731 INFO    ] Initializing speech engine...
[2026-08-25 18:25:31,740.740 INFO    ] 2026-08-25 18:25:31
[2026-08-25 18:25:32,011.011 INFO    ] 2026-08-25 18:25:32
[2026-08-25 18:25:32,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:25:32,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:25:32,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:25:32,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:25:32,593.593 INFO    ] time= 25/08/2026 18:25:32
[2026-08-25 18:25:32,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:25:32,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:25:32,748.748 INFO    ] No existing commands found in stream
[2026-08-25 18:25:37,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:25:37,776.776 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 18:25:38,468.468 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:25:38,471.471 INFO    ] Checking for system updates...
[2026-08-25 18:25:38,510.510 INFO    ] 200
[2026-08-25 18:25:38,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:38,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:25:38,568.568 INFO    ] No update needed
[2026-08-25 18:25:38,570.570 INFO    ] Checking for camera pi updates...
[2026-08-25 18:25:38,604.604 INFO    ] 200
[2026-08-25 18:25:38,606.606 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:38,646.646 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:25:38,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:25:38,697.697 INFO    ] No camera update needed
[2026-08-25 18:25:38,700.700 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:25:38,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:25:38,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:25:38,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:25:40,756.756 INFO    ] ================================================
[2026-08-25 18:25:40,772.772 INFO    ] Launching Daemon at Tue Aug 25 18:25:40 IST 2026
[2026-08-25 18:25:40,783.783 INFO    ] ================================================
[2026-08-25 18:25:41,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:25:41
[2026-08-25 18:25:41,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:25:42,249.249 INFO    ] Initializing speech engine...
[2026-08-25 18:25:42,260.260 INFO    ] 2026-08-25 18:25:42
[2026-08-25 18:25:42,519.519 INFO    ] 2026-08-25 18:25:42
[2026-08-25 18:25:42,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:25:42,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:25:42,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:25:44,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:25:44,053.053 INFO    ] time= 25/08/2026 18:25:44
[2026-08-25 18:25:44,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:25:44,070.070 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:25:44,199.199 INFO    ] No existing commands found in stream
[2026-08-25 18:25:49,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:25:49,211.211 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 18:25:53,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:25:53,170.170 INFO    ] Checking for system updates...
[2026-08-25 18:25:53,210.210 INFO    ] 200
[2026-08-25 18:25:53,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:53,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:25:53,269.269 INFO    ] No update needed
[2026-08-25 18:25:53,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 18:25:53,309.309 INFO    ] 200
[2026-08-25 18:25:53,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:25:53,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:25:53,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:25:53,427.427 INFO    ] No camera update needed
[2026-08-25 18:25:53,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:25:53,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:25:53,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:25:53,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:25:55,482.482 INFO    ] ================================================
[2026-08-25 18:25:55,498.498 INFO    ] Launching Daemon at Tue Aug 25 18:25:55 IST 2026
[2026-08-25 18:25:55,508.508 INFO    ] ================================================
[2026-08-25 18:25:56,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:25:56
[2026-08-25 18:25:56,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:25:56,966.966 INFO    ] Initializing speech engine...
[2026-08-25 18:25:56,971.971 INFO    ] 2026-08-25 18:25:56
[2026-08-25 18:25:57,234.234 INFO    ] 2026-08-25 18:25:57
[2026-08-25 18:25:57,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:25:57,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:25:57,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:25:57,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:25:57,711.711 INFO    ] time= 25/08/2026 18:25:57
[2026-08-25 18:25:57,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:25:57,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:25:57,920.920 INFO    ] No existing commands found in stream
[2026-08-25 18:26:02,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:26:02,940.940 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 18:26:04,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:26:04,868.868 INFO    ] Checking for system updates...
[2026-08-25 18:26:04,904.904 INFO    ] 200
[2026-08-25 18:26:04,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:04,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:04,968.968 INFO    ] No update needed
[2026-08-25 18:26:04,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 18:26:05,005.005 INFO    ] 200
[2026-08-25 18:26:05,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:05,050.050 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:26:05,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:05,101.101 INFO    ] No camera update needed
[2026-08-25 18:26:05,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:26:05,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:26:05,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:26:05,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:26:07,164.164 INFO    ] ================================================
[2026-08-25 18:26:07,178.178 INFO    ] Launching Daemon at Tue Aug 25 18:26:07 IST 2026
[2026-08-25 18:26:07,189.189 INFO    ] ================================================
[2026-08-25 18:26:07,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:26:07
[2026-08-25 18:26:08,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:26:08,622.622 INFO    ] Initializing speech engine...
[2026-08-25 18:26:08,631.631 INFO    ] 2026-08-25 18:26:08
[2026-08-25 18:26:08,925.925 INFO    ] 2026-08-25 18:26:08
[2026-08-25 18:26:08,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:26:09,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:26:09,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:26:09,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:26:09,344.344 INFO    ] time= 25/08/2026 18:26:09
[2026-08-25 18:26:09,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:26:09,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:26:09,506.506 INFO    ] No existing commands found in stream
[2026-08-25 18:26:14,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:26:14,540.540 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 18:26:15,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:26:15,168.168 INFO    ] Checking for system updates...
[2026-08-25 18:26:15,208.208 INFO    ] 200
[2026-08-25 18:26:15,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:15,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:15,272.272 INFO    ] No update needed
[2026-08-25 18:26:15,274.274 INFO    ] Checking for camera pi updates...
[2026-08-25 18:26:15,312.312 INFO    ] 200
[2026-08-25 18:26:15,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:15,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:26:15,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:15,406.406 INFO    ] No camera update needed
[2026-08-25 18:26:15,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:26:15,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:26:15,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:26:15,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:26:17,460.460 INFO    ] ================================================
[2026-08-25 18:26:17,475.475 INFO    ] Launching Daemon at Tue Aug 25 18:26:17 IST 2026
[2026-08-25 18:26:17,485.485 INFO    ] ================================================
[2026-08-25 18:26:18,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:26:18
[2026-08-25 18:26:18,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:26:19,066.066 INFO    ] Initializing speech engine...
[2026-08-25 18:26:19,076.076 INFO    ] 2026-08-25 18:26:19
[2026-08-25 18:26:19,354.354 INFO    ] 2026-08-25 18:26:19
[2026-08-25 18:26:19,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:26:19,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:26:19,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:26:19,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:26:19,918.918 INFO    ] time= 25/08/2026 18:26:19
[2026-08-25 18:26:19,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:26:19,967.967 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:26:20,076.076 INFO    ] No existing commands found in stream
[2026-08-25 18:26:25,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:26:25,096.096 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 18:26:26,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:26:26,349.349 INFO    ] Checking for system updates...
[2026-08-25 18:26:26,385.385 INFO    ] 200
[2026-08-25 18:26:26,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:26,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:26:26,449.449 INFO    ] No update needed
[2026-08-25 18:26:26,451.451 INFO    ] Checking for camera pi updates...
[2026-08-25 18:26:26,488.488 INFO    ] 200
[2026-08-25 18:26:26,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:26,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:26:26,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:26:26,686.686 INFO    ] No camera update needed
[2026-08-25 18:26:26,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:26:26,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:26:26,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:26:26,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:26:28,741.741 INFO    ] ================================================
[2026-08-25 18:26:28,756.756 INFO    ] Launching Daemon at Tue Aug 25 18:26:28 IST 2026
[2026-08-25 18:26:28,767.767 INFO    ] ================================================
[2026-08-25 18:26:29,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:26:29
[2026-08-25 18:26:29,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:26:30,201.201 INFO    ] Initializing speech engine...
[2026-08-25 18:26:30,209.209 INFO    ] 2026-08-25 18:26:30
[2026-08-25 18:26:30,461.461 INFO    ] 2026-08-25 18:26:30
[2026-08-25 18:26:30,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:26:30,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:26:30,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:26:30,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:26:30,939.939 INFO    ] time= 25/08/2026 18:26:30
[2026-08-25 18:26:30,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:26:31,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:26:31,154.154 INFO    ] No existing commands found in stream
[2026-08-25 18:26:36,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:26:36,187.187 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 18:26:39,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:26:39,850.850 INFO    ] Checking for system updates...
[2026-08-25 18:26:39,888.888 INFO    ] 200
[2026-08-25 18:26:39,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:39,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:39,945.945 INFO    ] No update needed
[2026-08-25 18:26:39,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 18:26:39,984.984 INFO    ] 200
[2026-08-25 18:26:39,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:40,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:26:40,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:40,083.083 INFO    ] No camera update needed
[2026-08-25 18:26:40,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:26:40,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:26:40,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:26:40,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:26:42,142.142 INFO    ] ================================================
[2026-08-25 18:26:42,157.157 INFO    ] Launching Daemon at Tue Aug 25 18:26:42 IST 2026
[2026-08-25 18:26:42,168.168 INFO    ] ================================================
[2026-08-25 18:26:42,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:26:42
[2026-08-25 18:26:43,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:26:43,791.791 INFO    ] Initializing speech engine...
[2026-08-25 18:26:43,796.796 INFO    ] 2026-08-25 18:26:43
[2026-08-25 18:26:44,105.105 INFO    ] 2026-08-25 18:26:44
[2026-08-25 18:26:44,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:26:44,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:26:44,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:26:44,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:26:44,615.615 INFO    ] time= 25/08/2026 18:26:44
[2026-08-25 18:26:44,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:26:44,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:26:44,770.770 INFO    ] No existing commands found in stream
[2026-08-25 18:26:49,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:26:49,802.802 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 18:26:51,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:26:51,881.881 INFO    ] Checking for system updates...
[2026-08-25 18:26:51,920.920 INFO    ] 200
[2026-08-25 18:26:51,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:51,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:51,984.984 INFO    ] No update needed
[2026-08-25 18:26:51,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 18:26:52,026.026 INFO    ] 200
[2026-08-25 18:26:52,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:26:52,075.075 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:26:52,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:26:52,135.135 INFO    ] No camera update needed
[2026-08-25 18:26:52,138.138 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:26:52,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:26:52,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:26:52,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:26:54,189.189 INFO    ] ================================================
[2026-08-25 18:26:54,204.204 INFO    ] Launching Daemon at Tue Aug 25 18:26:54 IST 2026
[2026-08-25 18:26:54,215.215 INFO    ] ================================================
[2026-08-25 18:26:54,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:26:54
[2026-08-25 18:26:55,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:26:55,819.819 INFO    ] Initializing speech engine...
[2026-08-25 18:26:55,833.833 INFO    ] 2026-08-25 18:26:55
[2026-08-25 18:26:56,142.142 INFO    ] 2026-08-25 18:26:56
[2026-08-25 18:26:56,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:26:56,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:26:56,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:26:56,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:26:56,656.656 INFO    ] time= 25/08/2026 18:26:56
[2026-08-25 18:26:56,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:26:56,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:26:56,804.804 INFO    ] No existing commands found in stream
[2026-08-25 18:27:01,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:27:01,833.833 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 18:27:06,291.291 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:27:06,294.294 INFO    ] Checking for system updates...
[2026-08-25 18:27:06,336.336 INFO    ] 200
[2026-08-25 18:27:06,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:06,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:06,404.404 INFO    ] No update needed
[2026-08-25 18:27:06,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 18:27:06,441.441 INFO    ] 200
[2026-08-25 18:27:06,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:06,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:27:06,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:06,549.549 INFO    ] No camera update needed
[2026-08-25 18:27:06,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:27:06,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:27:06,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:27:06,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:27:08,608.608 INFO    ] ================================================
[2026-08-25 18:27:08,623.623 INFO    ] Launching Daemon at Tue Aug 25 18:27:08 IST 2026
[2026-08-25 18:27:08,635.635 INFO    ] ================================================
[2026-08-25 18:27:09,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:27:09
[2026-08-25 18:27:09,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:27:10,082.082 INFO    ] Initializing speech engine...
[2026-08-25 18:27:10,097.097 INFO    ] 2026-08-25 18:27:10
[2026-08-25 18:27:10,389.389 INFO    ] 2026-08-25 18:27:10
[2026-08-25 18:27:10,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:27:10,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:27:10,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:27:10,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:27:10,821.821 INFO    ] time= 25/08/2026 18:27:10
[2026-08-25 18:27:10,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:27:10,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:27:11,020.020 INFO    ] No existing commands found in stream
[2026-08-25 18:27:16,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:27:16,053.053 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 18:27:17,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:27:17,140.140 INFO    ] Checking for system updates...
[2026-08-25 18:27:17,177.177 INFO    ] 200
[2026-08-25 18:27:17,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:17,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:17,237.237 INFO    ] No update needed
[2026-08-25 18:27:17,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 18:27:17,275.275 INFO    ] 200
[2026-08-25 18:27:17,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:17,319.319 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:27:17,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:17,378.378 INFO    ] No camera update needed
[2026-08-25 18:27:17,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:27:17,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:27:17,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:27:17,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:27:19,436.436 INFO    ] ================================================
[2026-08-25 18:27:19,452.452 INFO    ] Launching Daemon at Tue Aug 25 18:27:19 IST 2026
[2026-08-25 18:27:19,463.463 INFO    ] ================================================
[2026-08-25 18:27:20,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:27:20
[2026-08-25 18:27:20,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:27:20,915.915 INFO    ] Initializing speech engine...
[2026-08-25 18:27:20,921.921 INFO    ] 2026-08-25 18:27:20
[2026-08-25 18:27:21,170.170 INFO    ] 2026-08-25 18:27:21
[2026-08-25 18:27:21,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:27:21,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:27:21,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:27:21,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:27:21,671.671 INFO    ] time= 25/08/2026 18:27:21
[2026-08-25 18:27:21,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:27:21,735.735 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:27:21,879.879 INFO    ] No existing commands found in stream
[2026-08-25 18:27:26,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:27:26,897.897 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 18:27:27,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:27:27,439.439 INFO    ] Checking for system updates...
[2026-08-25 18:27:27,474.474 INFO    ] 200
[2026-08-25 18:27:27,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:27,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:27,531.531 INFO    ] No update needed
[2026-08-25 18:27:27,534.534 INFO    ] Checking for camera pi updates...
[2026-08-25 18:27:27,572.572 INFO    ] 200
[2026-08-25 18:27:27,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:27,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:27:27,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:27,712.712 INFO    ] No camera update needed
[2026-08-25 18:27:27,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:27:27,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:27:27,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:27:27,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:27:29,770.770 INFO    ] ================================================
[2026-08-25 18:27:29,785.785 INFO    ] Launching Daemon at Tue Aug 25 18:27:29 IST 2026
[2026-08-25 18:27:29,798.798 INFO    ] ================================================
[2026-08-25 18:27:30,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:27:30
[2026-08-25 18:27:30,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:27:31,199.199 INFO    ] Initializing speech engine...
[2026-08-25 18:27:31,216.216 INFO    ] 2026-08-25 18:27:31
[2026-08-25 18:27:31,504.504 INFO    ] 2026-08-25 18:27:31
[2026-08-25 18:27:31,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:27:31,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:27:31,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:27:31,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:27:32,055.055 INFO    ] time= 25/08/2026 18:27:32
[2026-08-25 18:27:32,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:27:32,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:27:32,288.288 INFO    ] No existing commands found in stream
[2026-08-25 18:27:37,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:27:37,327.327 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 18:27:39,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:27:39,611.611 INFO    ] Checking for system updates...
[2026-08-25 18:27:39,651.651 INFO    ] 200
[2026-08-25 18:27:39,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:39,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:39,708.708 INFO    ] No update needed
[2026-08-25 18:27:39,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 18:27:39,744.744 INFO    ] 200
[2026-08-25 18:27:39,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:39,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:27:39,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:39,843.843 INFO    ] No camera update needed
[2026-08-25 18:27:39,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:27:39,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:27:39,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:27:39,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:27:41,900.900 INFO    ] ================================================
[2026-08-25 18:27:41,916.916 INFO    ] Launching Daemon at Tue Aug 25 18:27:41 IST 2026
[2026-08-25 18:27:41,927.927 INFO    ] ================================================
[2026-08-25 18:27:42,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:27:42
[2026-08-25 18:27:43,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:27:43,559.559 INFO    ] Initializing speech engine...
[2026-08-25 18:27:43,574.574 INFO    ] 2026-08-25 18:27:43
[2026-08-25 18:27:43,886.886 INFO    ] 2026-08-25 18:27:43
[2026-08-25 18:27:43,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:27:44,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:27:44,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:27:44,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:27:44,390.390 INFO    ] time= 25/08/2026 18:27:44
[2026-08-25 18:27:44,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:27:44,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:27:44,565.565 INFO    ] No existing commands found in stream
[2026-08-25 18:27:49,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:27:49,599.599 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 18:27:51,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:27:51,901.901 INFO    ] Checking for system updates...
[2026-08-25 18:27:51,940.940 INFO    ] 200
[2026-08-25 18:27:51,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:51,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:51,997.997 INFO    ] No update needed
[2026-08-25 18:27:51,999.999 INFO    ] Checking for camera pi updates...
[2026-08-25 18:27:52,032.032 INFO    ] 200
[2026-08-25 18:27:52,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:27:52,076.076 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:27:52,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:27:52,126.126 INFO    ] No camera update needed
[2026-08-25 18:27:52,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:27:52,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:27:52,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:27:52,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:27:54,180.180 INFO    ] ================================================
[2026-08-25 18:27:54,196.196 INFO    ] Launching Daemon at Tue Aug 25 18:27:54 IST 2026
[2026-08-25 18:27:54,207.207 INFO    ] ================================================
[2026-08-25 18:27:54,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:27:54
[2026-08-25 18:27:55,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:27:55,868.868 INFO    ] Initializing speech engine...
[2026-08-25 18:27:55,876.876 INFO    ] 2026-08-25 18:27:55
[2026-08-25 18:27:56,162.162 INFO    ] 2026-08-25 18:27:56
[2026-08-25 18:27:56,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:27:56,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:27:56,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:27:56,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:27:56,697.697 INFO    ] time= 25/08/2026 18:27:56
[2026-08-25 18:27:56,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:27:56,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:27:56,856.856 INFO    ] No existing commands found in stream
[2026-08-25 18:28:01,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:28:01,891.891 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 18:28:03,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:28:03,186.186 INFO    ] Checking for system updates...
[2026-08-25 18:28:03,223.223 INFO    ] 200
[2026-08-25 18:28:03,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:03,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:03,290.290 INFO    ] No update needed
[2026-08-25 18:28:03,292.292 INFO    ] Checking for camera pi updates...
[2026-08-25 18:28:03,331.331 INFO    ] 200
[2026-08-25 18:28:03,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:03,380.380 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:28:03,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:03,437.437 INFO    ] No camera update needed
[2026-08-25 18:28:03,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:28:03,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:28:03,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:28:03,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:28:05,496.496 INFO    ] ================================================
[2026-08-25 18:28:05,511.511 INFO    ] Launching Daemon at Tue Aug 25 18:28:05 IST 2026
[2026-08-25 18:28:05,522.522 INFO    ] ================================================
[2026-08-25 18:28:06,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:28:06
[2026-08-25 18:28:06,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:28:07,000.000 INFO    ] Initializing speech engine...
[2026-08-25 18:28:07,009.009 INFO    ] 2026-08-25 18:28:07
[2026-08-25 18:28:07,271.271 INFO    ] 2026-08-25 18:28:07
[2026-08-25 18:28:07,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:28:07,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:28:07,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:28:07,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:28:07,759.759 INFO    ] time= 25/08/2026 18:28:07
[2026-08-25 18:28:07,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:28:07,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:28:07,967.967 INFO    ] No existing commands found in stream
[2026-08-25 18:28:12,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:28:12,987.987 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 18:28:14,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:28:14,721.721 INFO    ] Checking for system updates...
[2026-08-25 18:28:14,756.756 INFO    ] 200
[2026-08-25 18:28:14,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:14,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:14,814.814 INFO    ] No update needed
[2026-08-25 18:28:14,816.816 INFO    ] Checking for camera pi updates...
[2026-08-25 18:28:14,850.850 INFO    ] 200
[2026-08-25 18:28:14,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:14,894.894 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:28:14,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:14,946.946 INFO    ] No camera update needed
[2026-08-25 18:28:14,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:28:14,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:28:14,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:28:14,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:28:17,005.005 INFO    ] ================================================
[2026-08-25 18:28:17,021.021 INFO    ] Launching Daemon at Tue Aug 25 18:28:17 IST 2026
[2026-08-25 18:28:17,032.032 INFO    ] ================================================
[2026-08-25 18:28:17,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:28:17
[2026-08-25 18:28:18,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:28:18,471.471 INFO    ] Initializing speech engine...
[2026-08-25 18:28:18,487.487 INFO    ] 2026-08-25 18:28:18
[2026-08-25 18:28:18,774.774 INFO    ] 2026-08-25 18:28:18
[2026-08-25 18:28:18,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:28:19,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:28:19,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:28:19,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:28:19,317.317 INFO    ] time= 25/08/2026 18:28:19
[2026-08-25 18:28:19,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:28:19,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:28:19,555.555 INFO    ] No existing commands found in stream
[2026-08-25 18:28:24,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:28:24,576.576 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 18:28:26,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:28:26,732.732 INFO    ] Checking for system updates...
[2026-08-25 18:28:26,769.769 INFO    ] 200
[2026-08-25 18:28:26,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:26,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:26,828.828 INFO    ] No update needed
[2026-08-25 18:28:26,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 18:28:26,865.865 INFO    ] 200
[2026-08-25 18:28:26,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:26,908.908 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:28:26,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:26,966.966 INFO    ] No camera update needed
[2026-08-25 18:28:26,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:28:26,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:28:26,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:28:26,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:28:29,020.020 INFO    ] ================================================
[2026-08-25 18:28:29,036.036 INFO    ] Launching Daemon at Tue Aug 25 18:28:29 IST 2026
[2026-08-25 18:28:29,047.047 INFO    ] ================================================
[2026-08-25 18:28:29,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:28:29
[2026-08-25 18:28:30,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:28:30,681.681 INFO    ] Initializing speech engine...
[2026-08-25 18:28:30,695.695 INFO    ] 2026-08-25 18:28:30
[2026-08-25 18:28:30,977.977 INFO    ] 2026-08-25 18:28:30
[2026-08-25 18:28:31,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:28:31,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:28:31,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:28:31,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:28:31,547.547 INFO    ] time= 25/08/2026 18:28:31
[2026-08-25 18:28:31,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:28:31,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:28:31,722.722 INFO    ] No existing commands found in stream
[2026-08-25 18:28:36,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:28:36,758.758 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 18:28:39,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:28:39,599.599 INFO    ] Checking for system updates...
[2026-08-25 18:28:39,636.636 INFO    ] 200
[2026-08-25 18:28:39,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:39,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:39,694.694 INFO    ] No update needed
[2026-08-25 18:28:39,697.697 INFO    ] Checking for camera pi updates...
[2026-08-25 18:28:39,730.730 INFO    ] 200
[2026-08-25 18:28:39,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:39,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:28:39,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:39,826.826 INFO    ] No camera update needed
[2026-08-25 18:28:39,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:28:39,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:28:39,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:28:39,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:28:41,882.882 INFO    ] ================================================
[2026-08-25 18:28:41,898.898 INFO    ] Launching Daemon at Tue Aug 25 18:28:41 IST 2026
[2026-08-25 18:28:41,908.908 INFO    ] ================================================
[2026-08-25 18:28:42,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:28:42
[2026-08-25 18:28:43,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:28:43,376.376 INFO    ] Initializing speech engine...
[2026-08-25 18:28:43,390.390 INFO    ] 2026-08-25 18:28:43
[2026-08-25 18:28:43,705.705 INFO    ] 2026-08-25 18:28:43
[2026-08-25 18:28:43,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:28:44,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:28:44,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:28:44,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:28:44,214.214 INFO    ] time= 25/08/2026 18:28:44
[2026-08-25 18:28:44,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:28:44,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:28:44,378.378 INFO    ] No existing commands found in stream
[2026-08-25 18:28:49,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:28:49,418.418 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 18:28:51,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:28:51,320.320 INFO    ] Checking for system updates...
[2026-08-25 18:28:51,356.356 INFO    ] 200
[2026-08-25 18:28:51,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:51,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:51,416.416 INFO    ] No update needed
[2026-08-25 18:28:51,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 18:28:51,454.454 INFO    ] 200
[2026-08-25 18:28:51,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:28:51,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:28:51,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:28:51,575.575 INFO    ] No camera update needed
[2026-08-25 18:28:51,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:28:51,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:28:51,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:28:51,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:28:53,636.636 INFO    ] ================================================
[2026-08-25 18:28:53,651.651 INFO    ] Launching Daemon at Tue Aug 25 18:28:53 IST 2026
[2026-08-25 18:28:53,662.662 INFO    ] ================================================
[2026-08-25 18:28:54,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:28:54
[2026-08-25 18:28:54,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:28:55,061.061 INFO    ] Initializing speech engine...
[2026-08-25 18:28:55,069.069 INFO    ] 2026-08-25 18:28:55
[2026-08-25 18:28:55,347.347 INFO    ] 2026-08-25 18:28:55
[2026-08-25 18:28:55,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:28:55,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:28:55,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:28:55,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:28:55,902.902 INFO    ] time= 25/08/2026 18:28:55
[2026-08-25 18:28:55,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:28:55,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:28:56,050.050 INFO    ] No existing commands found in stream
[2026-08-25 18:29:01,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:29:01,086.086 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 18:29:02,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:29:02,807.807 INFO    ] Checking for system updates...
[2026-08-25 18:29:02,842.842 INFO    ] 200
[2026-08-25 18:29:02,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:02,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:29:02,922.922 INFO    ] No update needed
[2026-08-25 18:29:02,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 18:29:02,958.958 INFO    ] 200
[2026-08-25 18:29:02,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:03,000.000 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:29:03,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:29:03,046.046 INFO    ] No camera update needed
[2026-08-25 18:29:03,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:29:03,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:29:03,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:29:03,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:29:05,102.102 INFO    ] ================================================
[2026-08-25 18:29:05,117.117 INFO    ] Launching Daemon at Tue Aug 25 18:29:05 IST 2026
[2026-08-25 18:29:05,128.128 INFO    ] ================================================
[2026-08-25 18:29:05,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:29:05
[2026-08-25 18:29:06,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:29:06,596.596 INFO    ] Initializing speech engine...
[2026-08-25 18:29:06,606.606 INFO    ] 2026-08-25 18:29:06
[2026-08-25 18:29:06,852.852 INFO    ] 2026-08-25 18:29:06
[2026-08-25 18:29:06,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:29:07,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:29:07,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:29:07,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:29:07,319.319 INFO    ] time= 25/08/2026 18:29:07
[2026-08-25 18:29:07,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:29:07,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:29:07,538.538 INFO    ] No existing commands found in stream
[2026-08-25 18:29:12,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:29:12,562.562 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 18:29:16,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:29:16,318.318 INFO    ] Checking for system updates...
[2026-08-25 18:29:16,354.354 INFO    ] 200
[2026-08-25 18:29:16,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:16,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:29:16,411.411 INFO    ] No update needed
[2026-08-25 18:29:16,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 18:29:16,458.458 INFO    ] 200
[2026-08-25 18:29:16,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:16,500.500 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:29:16,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:29:16,545.545 INFO    ] No camera update needed
[2026-08-25 18:29:16,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:29:16,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:29:16,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:29:16,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:29:18,601.601 INFO    ] ================================================
[2026-08-25 18:29:18,616.616 INFO    ] Launching Daemon at Tue Aug 25 18:29:18 IST 2026
[2026-08-25 18:29:18,626.626 INFO    ] ================================================
[2026-08-25 18:29:19,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:29:19
[2026-08-25 18:29:19,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:29:20,217.217 INFO    ] Initializing speech engine...
[2026-08-25 18:29:20,225.225 INFO    ] 2026-08-25 18:29:20
[2026-08-25 18:29:20,478.478 INFO    ] 2026-08-25 18:29:20
[2026-08-25 18:29:20,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:29:20,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:29:20,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:29:20,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:29:20,959.959 INFO    ] time= 25/08/2026 18:29:20
[2026-08-25 18:29:21,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:29:21,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:29:21,195.195 INFO    ] No existing commands found in stream
[2026-08-25 18:29:26,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:29:26,228.228 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 18:29:27,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:29:27,724.724 INFO    ] Checking for system updates...
[2026-08-25 18:29:27,760.760 INFO    ] 200
[2026-08-25 18:29:27,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:27,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:29:27,822.822 INFO    ] No update needed
[2026-08-25 18:29:27,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 18:29:27,857.857 INFO    ] 200
[2026-08-25 18:29:27,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:27,899.899 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:29:27,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:29:27,959.959 INFO    ] No camera update needed
[2026-08-25 18:29:27,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:29:27,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:29:27,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:29:27,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:29:30,013.013 INFO    ] ================================================
[2026-08-25 18:29:30,029.029 INFO    ] Launching Daemon at Tue Aug 25 18:29:30 IST 2026
[2026-08-25 18:29:30,039.039 INFO    ] ================================================
[2026-08-25 18:29:30,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:29:30
[2026-08-25 18:29:31,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:29:31,488.488 INFO    ] Initializing speech engine...
[2026-08-25 18:29:31,499.499 INFO    ] 2026-08-25 18:29:31
[2026-08-25 18:29:31,769.769 INFO    ] 2026-08-25 18:29:31
[2026-08-25 18:29:31,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:29:32,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:29:32,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:29:32,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:29:32,306.306 INFO    ] time= 25/08/2026 18:29:32
[2026-08-25 18:29:32,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:29:32,374.374 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:29:32,506.506 INFO    ] No existing commands found in stream
[2026-08-25 18:29:37,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:29:37,537.537 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 18:29:41,177.177 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:29:41,180.180 INFO    ] Checking for system updates...
[2026-08-25 18:29:41,216.216 INFO    ] 200
[2026-08-25 18:29:41,218.218 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:41,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:29:41,283.283 INFO    ] No update needed
[2026-08-25 18:29:41,286.286 INFO    ] Checking for camera pi updates...
[2026-08-25 18:29:41,323.323 INFO    ] 200
[2026-08-25 18:29:41,325.325 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:41,366.366 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:29:41,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:29:41,417.417 INFO    ] No camera update needed
[2026-08-25 18:29:41,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:29:41,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:29:41,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:29:41,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:29:43,473.473 INFO    ] ================================================
[2026-08-25 18:29:43,488.488 INFO    ] Launching Daemon at Tue Aug 25 18:29:43 IST 2026
[2026-08-25 18:29:43,498.498 INFO    ] ================================================
[2026-08-25 18:29:44,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:29:44
[2026-08-25 18:29:44,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:29:44,910.910 INFO    ] Initializing speech engine...
[2026-08-25 18:29:44,919.919 INFO    ] 2026-08-25 18:29:44
[2026-08-25 18:29:45,170.170 INFO    ] 2026-08-25 18:29:45
[2026-08-25 18:29:45,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:29:45,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:29:45,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:29:45,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:29:45,713.713 INFO    ] time= 25/08/2026 18:29:45
[2026-08-25 18:29:45,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:29:45,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:29:45,872.872 INFO    ] No existing commands found in stream
[2026-08-25 18:29:50,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:29:50,888.888 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 18:29:53,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:29:53,290.290 INFO    ] Checking for system updates...
[2026-08-25 18:29:53,325.325 INFO    ] 200
[2026-08-25 18:29:53,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:53,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:29:53,383.383 INFO    ] No update needed
[2026-08-25 18:29:53,386.386 INFO    ] Checking for camera pi updates...
[2026-08-25 18:29:53,419.419 INFO    ] 200
[2026-08-25 18:29:53,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:29:53,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:29:53,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:29:53,529.529 INFO    ] No camera update needed
[2026-08-25 18:29:53,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:29:53,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:29:53,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:29:53,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:29:55,584.584 INFO    ] ================================================
[2026-08-25 18:29:55,599.599 INFO    ] Launching Daemon at Tue Aug 25 18:29:55 IST 2026
[2026-08-25 18:29:55,610.610 INFO    ] ================================================
[2026-08-25 18:29:56,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:29:56
[2026-08-25 18:29:56,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:29:57,032.032 INFO    ] Initializing speech engine...
[2026-08-25 18:29:57,039.039 INFO    ] 2026-08-25 18:29:57
[2026-08-25 18:29:57,297.297 INFO    ] 2026-08-25 18:29:57
[2026-08-25 18:29:57,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:29:58,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:29:58,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:29:58,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:29:58,800.800 INFO    ] time= 25/08/2026 18:29:58
[2026-08-25 18:29:58,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:29:58,811.811 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:29:58,883.883 INFO    ] No existing commands found in stream
[2026-08-25 18:30:03,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:30:03,899.899 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 18:30:09,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:30:09,328.328 INFO    ] Checking for system updates...
[2026-08-25 18:30:09,364.364 INFO    ] 200
[2026-08-25 18:30:09,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:09,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:30:09,430.430 INFO    ] No update needed
[2026-08-25 18:30:09,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 18:30:09,470.470 INFO    ] 200
[2026-08-25 18:30:09,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:09,515.515 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:30:09,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:30:09,566.566 INFO    ] No camera update needed
[2026-08-25 18:30:09,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:30:09,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:30:09,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:30:09,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:30:11,626.626 INFO    ] ================================================
[2026-08-25 18:30:11,641.641 INFO    ] Launching Daemon at Tue Aug 25 18:30:11 IST 2026
[2026-08-25 18:30:11,652.652 INFO    ] ================================================
[2026-08-25 18:30:12,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:30:12
[2026-08-25 18:30:12,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:30:13,066.066 INFO    ] Initializing speech engine...
[2026-08-25 18:30:13,081.081 INFO    ] 2026-08-25 18:30:13
[2026-08-25 18:30:13,352.352 INFO    ] 2026-08-25 18:30:13
[2026-08-25 18:30:13,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:30:13,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:30:13,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:30:13,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:30:13,709.709 INFO    ] time= 25/08/2026 18:30:13
[2026-08-25 18:30:13,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:30:13,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:30:13,860.860 INFO    ] No existing commands found in stream
[2026-08-25 18:30:18,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:30:18,873.873 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 18:30:20,720.720 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:30:20,722.722 INFO    ] Checking for system updates...
[2026-08-25 18:30:20,758.758 INFO    ] 200
[2026-08-25 18:30:20,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:20,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:30:20,817.817 INFO    ] No update needed
[2026-08-25 18:30:20,819.819 INFO    ] Checking for camera pi updates...
[2026-08-25 18:30:20,853.853 INFO    ] 200
[2026-08-25 18:30:20,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:20,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:30:20,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:30:20,949.949 INFO    ] No camera update needed
[2026-08-25 18:30:20,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:30:20,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:30:20,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:30:20,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:30:23,003.003 INFO    ] ================================================
[2026-08-25 18:30:23,019.019 INFO    ] Launching Daemon at Tue Aug 25 18:30:23 IST 2026
[2026-08-25 18:30:23,030.030 INFO    ] ================================================
[2026-08-25 18:30:23,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:30:23
[2026-08-25 18:30:24,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:30:24,456.456 INFO    ] Initializing speech engine...
[2026-08-25 18:30:24,465.465 INFO    ] 2026-08-25 18:30:24
[2026-08-25 18:30:24,721.721 INFO    ] 2026-08-25 18:30:24
[2026-08-25 18:30:24,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:30:24,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:30:25,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:30:25,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:30:25,200.200 INFO    ] time= 25/08/2026 18:30:25
[2026-08-25 18:30:25,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:30:25,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:30:25,422.422 INFO    ] No existing commands found in stream
[2026-08-25 18:30:30,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:30:30,440.440 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 18:30:31,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:30:31,121.121 INFO    ] Checking for system updates...
[2026-08-25 18:30:31,157.157 INFO    ] 200
[2026-08-25 18:30:31,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:31,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:30:31,220.220 INFO    ] No update needed
[2026-08-25 18:30:31,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 18:30:31,256.256 INFO    ] 200
[2026-08-25 18:30:31,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:31,298.298 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:30:31,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:30:31,348.348 INFO    ] No camera update needed
[2026-08-25 18:30:31,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:30:31,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:30:31,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:30:31,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:30:33,406.406 INFO    ] ================================================
[2026-08-25 18:30:33,421.421 INFO    ] Launching Daemon at Tue Aug 25 18:30:33 IST 2026
[2026-08-25 18:30:33,432.432 INFO    ] ================================================
[2026-08-25 18:30:34,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:30:34
[2026-08-25 18:30:34,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:30:35,052.052 INFO    ] Initializing speech engine...
[2026-08-25 18:30:35,060.060 INFO    ] 2026-08-25 18:30:35
[2026-08-25 18:30:35,336.336 INFO    ] 2026-08-25 18:30:35
[2026-08-25 18:30:35,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:30:35,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:30:35,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:30:35,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:30:35,887.887 INFO    ] time= 25/08/2026 18:30:35
[2026-08-25 18:30:35,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:30:35,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:30:36,107.107 INFO    ] No existing commands found in stream
[2026-08-25 18:30:41,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:30:41,141.141 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 18:30:43,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:30:43,414.414 INFO    ] Checking for system updates...
[2026-08-25 18:30:43,454.454 INFO    ] 200
[2026-08-25 18:30:43,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:43,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:30:43,516.516 INFO    ] No update needed
[2026-08-25 18:30:43,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 18:30:43,556.556 INFO    ] 200
[2026-08-25 18:30:43,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:43,600.600 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:30:43,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:30:43,757.757 INFO    ] No camera update needed
[2026-08-25 18:30:43,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:30:43,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:30:43,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:30:43,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:30:45,815.815 INFO    ] ================================================
[2026-08-25 18:30:45,831.831 INFO    ] Launching Daemon at Tue Aug 25 18:30:45 IST 2026
[2026-08-25 18:30:45,842.842 INFO    ] ================================================
[2026-08-25 18:30:46,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:30:46
[2026-08-25 18:30:46,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:30:47,254.254 INFO    ] Initializing speech engine...
[2026-08-25 18:30:47,263.263 INFO    ] 2026-08-25 18:30:47
[2026-08-25 18:30:47,535.535 INFO    ] 2026-08-25 18:30:47
[2026-08-25 18:30:47,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:30:47,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:30:47,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:30:47,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:30:48,037.037 INFO    ] time= 25/08/2026 18:30:47
[2026-08-25 18:30:48,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:30:48,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:30:48,224.224 INFO    ] No existing commands found in stream
[2026-08-25 18:30:53,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:30:53,252.252 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 18:30:58,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:30:58,293.293 INFO    ] Checking for system updates...
[2026-08-25 18:30:58,330.330 INFO    ] 200
[2026-08-25 18:30:58,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:58,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:30:58,390.390 INFO    ] No update needed
[2026-08-25 18:30:58,393.393 INFO    ] Checking for camera pi updates...
[2026-08-25 18:30:58,427.427 INFO    ] 200
[2026-08-25 18:30:58,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:30:58,472.472 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:30:58,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:30:58,520.520 INFO    ] No camera update needed
[2026-08-25 18:30:58,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:30:58,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:30:58,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:30:58,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:31:00,578.578 INFO    ] ================================================
[2026-08-25 18:31:00,593.593 INFO    ] Launching Daemon at Tue Aug 25 18:31:00 IST 2026
[2026-08-25 18:31:00,604.604 INFO    ] ================================================
[2026-08-25 18:31:01,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:31:01
[2026-08-25 18:31:01,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:31:02,276.276 INFO    ] Initializing speech engine...
[2026-08-25 18:31:02,284.284 INFO    ] 2026-08-25 18:31:02
[2026-08-25 18:31:02,591.591 INFO    ] 2026-08-25 18:31:02
[2026-08-25 18:31:02,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:31:02,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:31:02,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:31:03,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:31:03,021.021 INFO    ] time= 25/08/2026 18:31:03
[2026-08-25 18:31:03,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:31:03,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:31:03,156.156 INFO    ] No existing commands found in stream
[2026-08-25 18:31:08,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:31:08,180.180 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 18:31:11,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:31:11,969.969 INFO    ] Checking for system updates...
[2026-08-25 18:31:12,006.006 INFO    ] 200
[2026-08-25 18:31:12,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:12,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:31:12,064.064 INFO    ] No update needed
[2026-08-25 18:31:12,067.067 INFO    ] Checking for camera pi updates...
[2026-08-25 18:31:12,100.100 INFO    ] 200
[2026-08-25 18:31:12,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:12,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:31:12,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:31:12,195.195 INFO    ] No camera update needed
[2026-08-25 18:31:12,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:31:12,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:31:12,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:31:12,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:31:14,255.255 INFO    ] ================================================
[2026-08-25 18:31:14,270.270 INFO    ] Launching Daemon at Tue Aug 25 18:31:14 IST 2026
[2026-08-25 18:31:14,281.281 INFO    ] ================================================
[2026-08-25 18:31:14,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:31:14
[2026-08-25 18:31:15,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:31:15,756.756 INFO    ] Initializing speech engine...
[2026-08-25 18:31:15,765.765 INFO    ] 2026-08-25 18:31:15
[2026-08-25 18:31:16,016.016 INFO    ] 2026-08-25 18:31:16
[2026-08-25 18:31:16,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:31:16,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:31:16,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:31:16,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:31:16,503.503 INFO    ] time= 25/08/2026 18:31:16
[2026-08-25 18:31:16,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:31:16,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:31:16,717.717 INFO    ] No existing commands found in stream
[2026-08-25 18:31:21,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:31:21,748.748 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 18:31:23,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:31:23,348.348 INFO    ] Checking for system updates...
[2026-08-25 18:31:23,384.384 INFO    ] 200
[2026-08-25 18:31:23,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:23,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:31:23,441.441 INFO    ] No update needed
[2026-08-25 18:31:23,444.444 INFO    ] Checking for camera pi updates...
[2026-08-25 18:31:23,477.477 INFO    ] 200
[2026-08-25 18:31:23,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:23,520.520 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:31:23,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:31:23,564.564 INFO    ] No camera update needed
[2026-08-25 18:31:23,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:31:23,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:31:23,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:31:23,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:31:25,619.619 INFO    ] ================================================
[2026-08-25 18:31:25,635.635 INFO    ] Launching Daemon at Tue Aug 25 18:31:25 IST 2026
[2026-08-25 18:31:25,647.647 INFO    ] ================================================
[2026-08-25 18:31:26,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:31:26
[2026-08-25 18:31:26,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:31:27,075.075 INFO    ] Initializing speech engine...
[2026-08-25 18:31:27,083.083 INFO    ] 2026-08-25 18:31:27
[2026-08-25 18:31:27,339.339 INFO    ] 2026-08-25 18:31:27
[2026-08-25 18:31:27,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:31:27,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:31:27,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:31:27,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:31:27,821.821 INFO    ] time= 25/08/2026 18:31:27
[2026-08-25 18:31:27,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:31:27,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:31:28,019.019 INFO    ] No existing commands found in stream
[2026-08-25 18:31:33,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:31:33,046.046 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 18:31:36,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:31:36,190.190 INFO    ] Checking for system updates...
[2026-08-25 18:31:36,227.227 INFO    ] 200
[2026-08-25 18:31:36,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:36,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:31:36,289.289 INFO    ] No update needed
[2026-08-25 18:31:36,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 18:31:36,327.327 INFO    ] 200
[2026-08-25 18:31:36,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:36,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:31:36,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:31:36,444.444 INFO    ] No camera update needed
[2026-08-25 18:31:36,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:31:36,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:31:36,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:31:36,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:31:38,498.498 INFO    ] ================================================
[2026-08-25 18:31:38,514.514 INFO    ] Launching Daemon at Tue Aug 25 18:31:38 IST 2026
[2026-08-25 18:31:38,525.525 INFO    ] ================================================
[2026-08-25 18:31:39,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:31:39
[2026-08-25 18:31:39,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:31:39,954.954 INFO    ] Initializing speech engine...
[2026-08-25 18:31:39,960.960 INFO    ] 2026-08-25 18:31:39
[2026-08-25 18:31:40,206.206 INFO    ] 2026-08-25 18:31:40
[2026-08-25 18:31:40,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:31:40,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:31:40,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:31:40,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:31:40,699.699 INFO    ] time= 25/08/2026 18:31:40
[2026-08-25 18:31:40,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:31:40,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:31:40,905.905 INFO    ] No existing commands found in stream
[2026-08-25 18:31:45,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:31:45,929.929 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 18:31:47,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:31:47,228.228 INFO    ] Checking for system updates...
[2026-08-25 18:31:47,263.263 INFO    ] 200
[2026-08-25 18:31:47,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:47,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:31:47,320.320 INFO    ] No update needed
[2026-08-25 18:31:47,322.322 INFO    ] Checking for camera pi updates...
[2026-08-25 18:31:47,363.363 INFO    ] 200
[2026-08-25 18:31:47,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:31:47,417.417 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:31:47,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:31:47,471.471 INFO    ] No camera update needed
[2026-08-25 18:31:47,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:31:47,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:31:47,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:31:47,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:31:49,526.526 INFO    ] ================================================
[2026-08-25 18:31:49,541.541 INFO    ] Launching Daemon at Tue Aug 25 18:31:49 IST 2026
[2026-08-25 18:31:49,552.552 INFO    ] ================================================
[2026-08-25 18:31:50,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:31:50
[2026-08-25 18:31:50,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:31:50,970.970 INFO    ] Initializing speech engine...
[2026-08-25 18:31:50,979.979 INFO    ] 2026-08-25 18:31:50
[2026-08-25 18:31:51,232.232 INFO    ] 2026-08-25 18:31:51
[2026-08-25 18:31:51,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:31:51,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:31:51,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:31:51,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:31:51,730.730 INFO    ] time= 25/08/2026 18:31:51
[2026-08-25 18:31:51,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:31:51,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:31:51,918.918 INFO    ] No existing commands found in stream
[2026-08-25 18:31:56,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:31:56,943.943 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 18:31:59,924.924 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:31:59,927.927 INFO    ] Checking for system updates...
[2026-08-25 18:31:59,962.962 INFO    ] 200
[2026-08-25 18:31:59,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:00,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:32:00,019.019 INFO    ] No update needed
[2026-08-25 18:32:00,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 18:32:00,063.063 INFO    ] 200
[2026-08-25 18:32:00,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:00,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:32:00,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:32:00,153.153 INFO    ] No camera update needed
[2026-08-25 18:32:00,155.155 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:32:00,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:32:00,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:32:00,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:32:02,212.212 INFO    ] ================================================
[2026-08-25 18:32:02,232.232 INFO    ] Launching Daemon at Tue Aug 25 18:32:02 IST 2026
[2026-08-25 18:32:02,248.248 INFO    ] ================================================
[2026-08-25 18:32:02,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:32:02
[2026-08-25 18:32:03,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:32:03,818.818 INFO    ] Initializing speech engine...
[2026-08-25 18:32:03,841.841 INFO    ] 2026-08-25 18:32:03
[2026-08-25 18:32:04,099.099 INFO    ] 2026-08-25 18:32:04
[2026-08-25 18:32:04,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:32:04,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:32:04,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:32:04,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:32:04,577.577 INFO    ] time= 25/08/2026 18:32:04
[2026-08-25 18:32:04,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:32:04,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:32:04,797.797 INFO    ] No existing commands found in stream
[2026-08-25 18:32:09,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:32:09,817.817 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 18:32:11,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:32:11,230.230 INFO    ] Checking for system updates...
[2026-08-25 18:32:11,270.270 INFO    ] 200
[2026-08-25 18:32:11,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:11,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:11,335.335 INFO    ] No update needed
[2026-08-25 18:32:11,337.337 INFO    ] Checking for camera pi updates...
[2026-08-25 18:32:11,371.371 INFO    ] 200
[2026-08-25 18:32:11,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:11,414.414 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:32:11,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:11,463.463 INFO    ] No camera update needed
[2026-08-25 18:32:11,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:32:11,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:32:11,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:32:11,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:32:13,521.521 INFO    ] ================================================
[2026-08-25 18:32:13,537.537 INFO    ] Launching Daemon at Tue Aug 25 18:32:13 IST 2026
[2026-08-25 18:32:13,549.549 INFO    ] ================================================
[2026-08-25 18:32:14,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:32:14
[2026-08-25 18:32:14,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:32:14,983.983 INFO    ] Initializing speech engine...
[2026-08-25 18:32:15,003.003 INFO    ] 2026-08-25 18:32:14
[2026-08-25 18:32:15,273.273 INFO    ] 2026-08-25 18:32:15
[2026-08-25 18:32:15,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:32:15,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:32:15,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:32:15,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:32:15,691.691 INFO    ] time= 25/08/2026 18:32:15
[2026-08-25 18:32:15,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:32:15,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:32:15,779.779 INFO    ] No existing commands found in stream
[2026-08-25 18:32:20,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:32:20,807.807 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 18:32:24,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:32:24,148.148 INFO    ] Checking for system updates...
[2026-08-25 18:32:24,183.183 INFO    ] 200
[2026-08-25 18:32:24,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:24,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:24,247.247 INFO    ] No update needed
[2026-08-25 18:32:24,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 18:32:24,283.283 INFO    ] 200
[2026-08-25 18:32:24,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:24,327.327 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:32:24,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:24,384.384 INFO    ] No camera update needed
[2026-08-25 18:32:24,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:32:24,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:32:24,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:32:24,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:32:26,439.439 INFO    ] ================================================
[2026-08-25 18:32:26,455.455 INFO    ] Launching Daemon at Tue Aug 25 18:32:26 IST 2026
[2026-08-25 18:32:26,467.467 INFO    ] ================================================
[2026-08-25 18:32:27,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:32:27
[2026-08-25 18:32:27,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:32:27,952.952 INFO    ] Initializing speech engine...
[2026-08-25 18:32:27,962.962 INFO    ] 2026-08-25 18:32:27
[2026-08-25 18:32:28,211.211 INFO    ] 2026-08-25 18:32:28
[2026-08-25 18:32:28,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:32:28,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:32:28,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:32:28,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:32:28,697.697 INFO    ] time= 25/08/2026 18:32:28
[2026-08-25 18:32:28,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:32:28,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:32:28,938.938 INFO    ] No existing commands found in stream
[2026-08-25 18:32:33,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:32:33,952.952 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 18:32:36,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:32:36,304.304 INFO    ] Checking for system updates...
[2026-08-25 18:32:36,340.340 INFO    ] 200
[2026-08-25 18:32:36,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:36,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:36,401.401 INFO    ] No update needed
[2026-08-25 18:32:36,404.404 INFO    ] Checking for camera pi updates...
[2026-08-25 18:32:36,446.446 INFO    ] 200
[2026-08-25 18:32:36,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:36,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:32:36,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:36,543.543 INFO    ] No camera update needed
[2026-08-25 18:32:36,546.546 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:32:36,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:32:36,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:32:36,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:32:38,600.600 INFO    ] ================================================
[2026-08-25 18:32:38,616.616 INFO    ] Launching Daemon at Tue Aug 25 18:32:38 IST 2026
[2026-08-25 18:32:38,627.627 INFO    ] ================================================
[2026-08-25 18:32:39,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:32:39
[2026-08-25 18:32:39,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:32:40,261.261 INFO    ] Initializing speech engine...
[2026-08-25 18:32:40,273.273 INFO    ] 2026-08-25 18:32:40
[2026-08-25 18:32:40,542.542 INFO    ] 2026-08-25 18:32:40
[2026-08-25 18:32:40,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:32:40,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:32:40,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:32:41,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:32:41,109.109 INFO    ] time= 25/08/2026 18:32:41
[2026-08-25 18:32:41,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:32:41,146.146 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:32:41,270.270 INFO    ] No existing commands found in stream
[2026-08-25 18:32:46,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:32:46,303.303 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 18:32:48,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:32:48,769.769 INFO    ] Checking for system updates...
[2026-08-25 18:32:48,809.809 INFO    ] 200
[2026-08-25 18:32:48,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:48,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:48,868.868 INFO    ] No update needed
[2026-08-25 18:32:48,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 18:32:48,908.908 INFO    ] 200
[2026-08-25 18:32:48,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:32:48,955.955 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:32:49,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:32:49,106.106 INFO    ] No camera update needed
[2026-08-25 18:32:49,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:32:49,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:32:49,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:32:49,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:32:51,161.161 INFO    ] ================================================
[2026-08-25 18:32:51,177.177 INFO    ] Launching Daemon at Tue Aug 25 18:32:51 IST 2026
[2026-08-25 18:32:51,188.188 INFO    ] ================================================
[2026-08-25 18:32:51,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:32:51
[2026-08-25 18:32:52,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:32:52,604.604 INFO    ] Initializing speech engine...
[2026-08-25 18:32:52,614.614 INFO    ] 2026-08-25 18:32:52
[2026-08-25 18:32:52,873.873 INFO    ] 2026-08-25 18:32:52
[2026-08-25 18:32:52,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:32:53,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:32:53,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:32:53,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:32:53,352.352 INFO    ] time= 25/08/2026 18:32:53
[2026-08-25 18:32:53,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:32:53,423.423 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:32:53,551.551 INFO    ] No existing commands found in stream
[2026-08-25 18:32:58,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:32:58,581.581 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 18:33:00,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:33:00,316.316 INFO    ] Checking for system updates...
[2026-08-25 18:33:00,352.352 INFO    ] 200
[2026-08-25 18:33:00,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:00,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:00,416.416 INFO    ] No update needed
[2026-08-25 18:33:00,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 18:33:00,455.455 INFO    ] 200
[2026-08-25 18:33:00,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:00,504.504 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:33:00,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:00,553.553 INFO    ] No camera update needed
[2026-08-25 18:33:00,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:33:00,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:33:00,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:33:00,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:33:02,631.631 INFO    ] ================================================
[2026-08-25 18:33:02,650.650 INFO    ] Launching Daemon at Tue Aug 25 18:33:02 IST 2026
[2026-08-25 18:33:02,664.664 INFO    ] ================================================
[2026-08-25 18:33:03,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:33:03
[2026-08-25 18:33:04,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:33:04,394.394 INFO    ] Initializing speech engine...
[2026-08-25 18:33:04,406.406 INFO    ] 2026-08-25 18:33:04
[2026-08-25 18:33:04,719.719 INFO    ] 2026-08-25 18:33:04
[2026-08-25 18:33:04,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:33:05,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:33:05,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:33:05,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:33:05,828.828 INFO    ] time= 25/08/2026 18:33:05
[2026-08-25 18:33:05,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:33:05,865.865 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:33:05,988.988 INFO    ] No existing commands found in stream
[2026-08-25 18:33:11,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:33:11,028.028 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 18:33:12,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:33:12,249.249 INFO    ] Checking for system updates...
[2026-08-25 18:33:12,286.286 INFO    ] 200
[2026-08-25 18:33:12,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:12,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:33:12,351.351 INFO    ] No update needed
[2026-08-25 18:33:12,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 18:33:12,390.390 INFO    ] 200
[2026-08-25 18:33:12,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:12,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:33:12,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:33:12,483.483 INFO    ] No camera update needed
[2026-08-25 18:33:12,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:33:12,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:33:12,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:33:12,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:33:14,538.538 INFO    ] ================================================
[2026-08-25 18:33:14,553.553 INFO    ] Launching Daemon at Tue Aug 25 18:33:14 IST 2026
[2026-08-25 18:33:14,563.563 INFO    ] ================================================
[2026-08-25 18:33:15,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:33:15
[2026-08-25 18:33:15,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:33:16,032.032 INFO    ] Initializing speech engine...
[2026-08-25 18:33:16,038.038 INFO    ] 2026-08-25 18:33:16
[2026-08-25 18:33:16,301.301 INFO    ] 2026-08-25 18:33:16
[2026-08-25 18:33:16,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:33:16,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:33:16,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:33:16,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:33:16,845.845 INFO    ] time= 25/08/2026 18:33:16
[2026-08-25 18:33:16,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:33:16,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:33:17,001.001 INFO    ] No existing commands found in stream
[2026-08-25 18:33:22,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:33:22,026.026 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 18:33:23,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:33:23,658.658 INFO    ] Checking for system updates...
[2026-08-25 18:33:23,699.699 INFO    ] 200
[2026-08-25 18:33:23,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:23,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:23,755.755 INFO    ] No update needed
[2026-08-25 18:33:23,758.758 INFO    ] Checking for camera pi updates...
[2026-08-25 18:33:23,795.795 INFO    ] 200
[2026-08-25 18:33:23,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:23,837.837 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:33:23,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:23,894.894 INFO    ] No camera update needed
[2026-08-25 18:33:23,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:33:23,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:33:23,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:33:23,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:33:25,949.949 INFO    ] ================================================
[2026-08-25 18:33:25,964.964 INFO    ] Launching Daemon at Tue Aug 25 18:33:25 IST 2026
[2026-08-25 18:33:25,975.975 INFO    ] ================================================
[2026-08-25 18:33:26,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:33:26
[2026-08-25 18:33:27,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:33:27,406.406 INFO    ] Initializing speech engine...
[2026-08-25 18:33:27,415.415 INFO    ] 2026-08-25 18:33:27
[2026-08-25 18:33:27,662.662 INFO    ] 2026-08-25 18:33:27
[2026-08-25 18:33:27,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:33:27,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:33:27,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:33:28,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:33:28,146.146 INFO    ] time= 25/08/2026 18:33:28
[2026-08-25 18:33:28,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:33:28,222.222 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:33:28,355.355 INFO    ] No existing commands found in stream
[2026-08-25 18:33:33,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:33:33,380.380 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 18:33:37,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:33:37,748.748 INFO    ] Checking for system updates...
[2026-08-25 18:33:37,788.788 INFO    ] 200
[2026-08-25 18:33:37,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:37,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:37,852.852 INFO    ] No update needed
[2026-08-25 18:33:37,855.855 INFO    ] Checking for camera pi updates...
[2026-08-25 18:33:37,888.888 INFO    ] 200
[2026-08-25 18:33:37,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:37,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:33:38,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:38,012.012 INFO    ] No camera update needed
[2026-08-25 18:33:38,014.014 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:33:38,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:33:38,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:33:38,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:33:40,069.069 INFO    ] ================================================
[2026-08-25 18:33:40,085.085 INFO    ] Launching Daemon at Tue Aug 25 18:33:40 IST 2026
[2026-08-25 18:33:40,097.097 INFO    ] ================================================
[2026-08-25 18:33:40,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:33:40
[2026-08-25 18:33:41,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:33:41,630.630 INFO    ] Initializing speech engine...
[2026-08-25 18:33:41,635.635 INFO    ] 2026-08-25 18:33:41
[2026-08-25 18:33:41,904.904 INFO    ] 2026-08-25 18:33:41
[2026-08-25 18:33:41,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:33:42,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:33:42,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:33:42,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:33:42,468.468 INFO    ] time= 25/08/2026 18:33:42
[2026-08-25 18:33:42,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:33:42,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:33:42,626.626 INFO    ] No existing commands found in stream
[2026-08-25 18:33:47,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:33:47,646.646 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 18:33:51,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:33:51,156.156 INFO    ] Checking for system updates...
[2026-08-25 18:33:51,193.193 INFO    ] 200
[2026-08-25 18:33:51,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:51,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:51,260.260 INFO    ] No update needed
[2026-08-25 18:33:51,263.263 INFO    ] Checking for camera pi updates...
[2026-08-25 18:33:51,302.302 INFO    ] 200
[2026-08-25 18:33:51,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:33:51,353.353 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:33:51,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:33:51,413.413 INFO    ] No camera update needed
[2026-08-25 18:33:51,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:33:51,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:33:51,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:33:51,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:33:53,473.473 INFO    ] ================================================
[2026-08-25 18:33:53,488.488 INFO    ] Launching Daemon at Tue Aug 25 18:33:53 IST 2026
[2026-08-25 18:33:53,499.499 INFO    ] ================================================
[2026-08-25 18:33:54,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:33:54
[2026-08-25 18:33:54,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:33:54,911.911 INFO    ] Initializing speech engine...
[2026-08-25 18:33:54,925.925 INFO    ] 2026-08-25 18:33:54
[2026-08-25 18:33:55,181.181 INFO    ] 2026-08-25 18:33:55
[2026-08-25 18:33:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:33:55,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:33:55,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:33:55,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:33:55,668.668 INFO    ] time= 25/08/2026 18:33:55
[2026-08-25 18:33:55,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:33:55,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:33:55,893.893 INFO    ] No existing commands found in stream
[2026-08-25 18:34:00,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:34:00,920.920 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 18:34:06,804.804 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:34:06,808.808 INFO    ] Checking for system updates...
[2026-08-25 18:34:06,851.851 INFO    ] 200
[2026-08-25 18:34:06,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:06,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:06,917.917 INFO    ] No update needed
[2026-08-25 18:34:06,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 18:34:06,959.959 INFO    ] 200
[2026-08-25 18:34:06,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:07,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:34:07,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:07,066.066 INFO    ] No camera update needed
[2026-08-25 18:34:07,069.069 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:34:07,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:34:07,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:34:07,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:34:09,125.125 INFO    ] ================================================
[2026-08-25 18:34:09,140.140 INFO    ] Launching Daemon at Tue Aug 25 18:34:09 IST 2026
[2026-08-25 18:34:09,151.151 INFO    ] ================================================
[2026-08-25 18:34:09,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:34:09
[2026-08-25 18:34:10,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:34:10,553.553 INFO    ] Initializing speech engine...
[2026-08-25 18:34:10,578.578 INFO    ] 2026-08-25 18:34:10
[2026-08-25 18:34:10,832.832 INFO    ] 2026-08-25 18:34:10
[2026-08-25 18:34:10,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:34:11,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:34:11,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:34:11,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:34:11,309.309 INFO    ] time= 25/08/2026 18:34:11
[2026-08-25 18:34:11,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:34:11,395.395 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:34:11,545.545 INFO    ] No existing commands found in stream
[2026-08-25 18:34:16,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:34:16,566.566 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 18:34:17,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:34:17,401.401 INFO    ] Checking for system updates...
[2026-08-25 18:34:17,437.437 INFO    ] 200
[2026-08-25 18:34:17,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:17,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:17,501.501 INFO    ] No update needed
[2026-08-25 18:34:17,503.503 INFO    ] Checking for camera pi updates...
[2026-08-25 18:34:17,537.537 INFO    ] 200
[2026-08-25 18:34:17,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:17,580.580 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:34:17,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:17,635.635 INFO    ] No camera update needed
[2026-08-25 18:34:17,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:34:17,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:34:17,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:34:17,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:34:19,691.691 INFO    ] ================================================
[2026-08-25 18:34:19,706.706 INFO    ] Launching Daemon at Tue Aug 25 18:34:19 IST 2026
[2026-08-25 18:34:19,716.716 INFO    ] ================================================
[2026-08-25 18:34:20,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:34:20
[2026-08-25 18:34:20,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:34:21,175.175 INFO    ] Initializing speech engine...
[2026-08-25 18:34:21,181.181 INFO    ] 2026-08-25 18:34:21
[2026-08-25 18:34:21,442.442 INFO    ] 2026-08-25 18:34:21
[2026-08-25 18:34:21,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:34:21,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:34:21,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:34:21,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:34:21,924.924 INFO    ] time= 25/08/2026 18:34:21
[2026-08-25 18:34:21,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:34:21,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:34:22,138.138 INFO    ] No existing commands found in stream
[2026-08-25 18:34:27,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:34:27,161.161 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 18:34:31,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:34:31,559.559 INFO    ] Checking for system updates...
[2026-08-25 18:34:31,597.597 INFO    ] 200
[2026-08-25 18:34:31,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:31,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:31,671.671 INFO    ] No update needed
[2026-08-25 18:34:31,674.674 INFO    ] Checking for camera pi updates...
[2026-08-25 18:34:31,709.709 INFO    ] 200
[2026-08-25 18:34:31,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:31,753.753 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:34:31,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:31,806.806 INFO    ] No camera update needed
[2026-08-25 18:34:31,809.809 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:34:31,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:34:31,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:34:31,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:34:33,865.865 INFO    ] ================================================
[2026-08-25 18:34:33,881.881 INFO    ] Launching Daemon at Tue Aug 25 18:34:33 IST 2026
[2026-08-25 18:34:33,891.891 INFO    ] ================================================
[2026-08-25 18:34:34,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:34:34
[2026-08-25 18:34:35,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:34:35,337.337 INFO    ] Initializing speech engine...
[2026-08-25 18:34:35,343.343 INFO    ] 2026-08-25 18:34:35
[2026-08-25 18:34:35,588.588 INFO    ] 2026-08-25 18:34:35
[2026-08-25 18:34:35,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:34:35,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:34:35,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:34:36,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:34:36,078.078 INFO    ] time= 25/08/2026 18:34:36
[2026-08-25 18:34:36,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:34:36,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:34:36,296.296 INFO    ] No existing commands found in stream
[2026-08-25 18:34:41,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:34:41,313.313 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 18:34:44,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:34:44,957.957 INFO    ] Checking for system updates...
[2026-08-25 18:34:44,996.996 INFO    ] 200
[2026-08-25 18:34:44,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:45,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:34:45,052.052 INFO    ] No update needed
[2026-08-25 18:34:45,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 18:34:45,089.089 INFO    ] 200
[2026-08-25 18:34:45,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:45,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:34:45,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:34:45,179.179 INFO    ] No camera update needed
[2026-08-25 18:34:45,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:34:45,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:34:45,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:34:45,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:34:47,233.233 INFO    ] ================================================
[2026-08-25 18:34:47,247.247 INFO    ] Launching Daemon at Tue Aug 25 18:34:47 IST 2026
[2026-08-25 18:34:47,258.258 INFO    ] ================================================
[2026-08-25 18:34:47,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:34:47
[2026-08-25 18:34:48,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:34:48,714.714 INFO    ] Initializing speech engine...
[2026-08-25 18:34:48,724.724 INFO    ] 2026-08-25 18:34:48
[2026-08-25 18:34:48,972.972 INFO    ] 2026-08-25 18:34:48
[2026-08-25 18:34:49,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:34:49,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:34:49,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:34:49,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:34:49,442.442 INFO    ] time= 25/08/2026 18:34:49
[2026-08-25 18:34:49,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:34:49,533.533 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:34:49,679.679 INFO    ] No existing commands found in stream
[2026-08-25 18:34:54,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:34:54,697.697 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 18:34:58,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:34:58,216.216 INFO    ] Checking for system updates...
[2026-08-25 18:34:58,251.251 INFO    ] 200
[2026-08-25 18:34:58,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:58,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:58,310.310 INFO    ] No update needed
[2026-08-25 18:34:58,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 18:34:58,359.359 INFO    ] 200
[2026-08-25 18:34:58,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:34:58,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:34:58,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:34:58,551.551 INFO    ] No camera update needed
[2026-08-25 18:34:58,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:34:58,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:34:58,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:34:58,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:35:00,606.606 INFO    ] ================================================
[2026-08-25 18:35:00,621.621 INFO    ] Launching Daemon at Tue Aug 25 18:35:00 IST 2026
[2026-08-25 18:35:00,632.632 INFO    ] ================================================
[2026-08-25 18:35:01,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:35:01
[2026-08-25 18:35:01,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:35:02,470.470 INFO    ] Initializing speech engine...
[2026-08-25 18:35:02,474.474 INFO    ] 2026-08-25 18:35:02
[2026-08-25 18:35:02,798.798 INFO    ] 2026-08-25 18:35:02
[2026-08-25 18:35:02,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:35:03,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:35:03,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:35:03,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:35:03,289.289 INFO    ] time= 25/08/2026 18:35:03
[2026-08-25 18:35:03,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:35:03,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:35:03,451.451 INFO    ] No existing commands found in stream
[2026-08-25 18:35:08,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:35:08,467.467 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 18:35:11,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:35:11,983.983 INFO    ] Checking for system updates...
[2026-08-25 18:35:12,018.018 INFO    ] 200
[2026-08-25 18:35:12,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:12,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:35:12,076.076 INFO    ] No update needed
[2026-08-25 18:35:12,078.078 INFO    ] Checking for camera pi updates...
[2026-08-25 18:35:12,118.118 INFO    ] 200
[2026-08-25 18:35:12,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:12,162.162 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:35:12,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:35:12,215.215 INFO    ] No camera update needed
[2026-08-25 18:35:12,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:35:12,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:35:12,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:35:12,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:35:14,273.273 INFO    ] ================================================
[2026-08-25 18:35:14,290.290 INFO    ] Launching Daemon at Tue Aug 25 18:35:14 IST 2026
[2026-08-25 18:35:14,301.301 INFO    ] ================================================
[2026-08-25 18:35:14,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:35:14
[2026-08-25 18:35:15,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:35:15,753.753 INFO    ] Initializing speech engine...
[2026-08-25 18:35:15,776.776 INFO    ] 2026-08-25 18:35:15
[2026-08-25 18:35:16,035.035 INFO    ] 2026-08-25 18:35:16
[2026-08-25 18:35:16,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:35:16,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:35:16,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:35:16,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:35:16,516.516 INFO    ] time= 25/08/2026 18:35:16
[2026-08-25 18:35:16,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:35:16,610.610 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:35:16,756.756 INFO    ] No existing commands found in stream
[2026-08-25 18:35:21,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:35:21,776.776 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 18:35:23,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:35:23,767.767 INFO    ] Checking for system updates...
[2026-08-25 18:35:23,803.803 INFO    ] 200
[2026-08-25 18:35:23,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:23,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:35:23,860.860 INFO    ] No update needed
[2026-08-25 18:35:23,862.862 INFO    ] Checking for camera pi updates...
[2026-08-25 18:35:23,895.895 INFO    ] 200
[2026-08-25 18:35:23,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:23,942.942 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:35:24,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:35:24,002.002 INFO    ] No camera update needed
[2026-08-25 18:35:24,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:35:24,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:35:24,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:35:24,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:35:26,056.056 INFO    ] ================================================
[2026-08-25 18:35:26,072.072 INFO    ] Launching Daemon at Tue Aug 25 18:35:26 IST 2026
[2026-08-25 18:35:26,084.084 INFO    ] ================================================
[2026-08-25 18:35:26,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:35:26
[2026-08-25 18:35:27,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:35:27,506.506 INFO    ] Initializing speech engine...
[2026-08-25 18:35:27,515.515 INFO    ] 2026-08-25 18:35:27
[2026-08-25 18:35:27,766.766 INFO    ] 2026-08-25 18:35:27
[2026-08-25 18:35:27,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:35:28,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:35:28,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:35:28,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:35:28,241.241 INFO    ] time= 25/08/2026 18:35:28
[2026-08-25 18:35:28,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:35:28,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:35:28,456.456 INFO    ] No existing commands found in stream
[2026-08-25 18:35:33,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:35:33,480.480 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 18:35:34,817.817 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:35:34,820.820 INFO    ] Checking for system updates...
[2026-08-25 18:35:34,855.855 INFO    ] 200
[2026-08-25 18:35:34,858.858 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:34,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:35:34,913.913 INFO    ] No update needed
[2026-08-25 18:35:34,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 18:35:34,949.949 INFO    ] 200
[2026-08-25 18:35:34,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:34,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:35:35,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:35:35,060.060 INFO    ] No camera update needed
[2026-08-25 18:35:35,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:35:35,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:35:35,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:35:35,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:35:37,116.116 INFO    ] ================================================
[2026-08-25 18:35:37,132.132 INFO    ] Launching Daemon at Tue Aug 25 18:35:37 IST 2026
[2026-08-25 18:35:37,143.143 INFO    ] ================================================
[2026-08-25 18:35:37,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:35:37
[2026-08-25 18:35:38,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:35:38,720.720 INFO    ] Initializing speech engine...
[2026-08-25 18:35:38,732.732 INFO    ] 2026-08-25 18:35:38
[2026-08-25 18:35:38,999.999 INFO    ] 2026-08-25 18:35:38
[2026-08-25 18:35:39,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:35:39,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:35:39,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:35:39,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:35:39,445.445 INFO    ] time= 25/08/2026 18:35:39
[2026-08-25 18:35:39,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:35:39,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:35:39,688.688 INFO    ] No existing commands found in stream
[2026-08-25 18:35:44,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:35:44,716.716 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 18:35:48,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:35:48,121.121 INFO    ] Checking for system updates...
[2026-08-25 18:35:48,157.157 INFO    ] 200
[2026-08-25 18:35:48,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:48,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:35:48,213.213 INFO    ] No update needed
[2026-08-25 18:35:48,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 18:35:48,250.250 INFO    ] 200
[2026-08-25 18:35:48,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:35:48,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:35:48,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:35:48,355.355 INFO    ] No camera update needed
[2026-08-25 18:35:48,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:35:48,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:35:48,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:35:48,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:35:50,410.410 INFO    ] ================================================
[2026-08-25 18:35:50,426.426 INFO    ] Launching Daemon at Tue Aug 25 18:35:50 IST 2026
[2026-08-25 18:35:50,438.438 INFO    ] ================================================
[2026-08-25 18:35:51,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:35:51
[2026-08-25 18:35:51,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:35:51,860.860 INFO    ] Initializing speech engine...
[2026-08-25 18:35:51,869.869 INFO    ] 2026-08-25 18:35:51
[2026-08-25 18:35:52,129.129 INFO    ] 2026-08-25 18:35:52
[2026-08-25 18:35:52,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:35:52,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:35:52,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:35:52,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:35:52,673.673 INFO    ] time= 25/08/2026 18:35:52
[2026-08-25 18:35:52,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:35:52,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:35:52,827.827 INFO    ] No existing commands found in stream
[2026-08-25 18:35:57,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:35:57,842.842 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 18:36:00,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:36:00,742.742 INFO    ] Checking for system updates...
[2026-08-25 18:36:00,777.777 INFO    ] 200
[2026-08-25 18:36:00,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:00,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:36:00,846.846 INFO    ] No update needed
[2026-08-25 18:36:00,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 18:36:00,885.885 INFO    ] 200
[2026-08-25 18:36:00,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:00,928.928 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:36:00,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:36:00,982.982 INFO    ] No camera update needed
[2026-08-25 18:36:00,984.984 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:36:00,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:36:00,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:36:00,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:36:03,041.041 INFO    ] ================================================
[2026-08-25 18:36:03,057.057 INFO    ] Launching Daemon at Tue Aug 25 18:36:03 IST 2026
[2026-08-25 18:36:03,068.068 INFO    ] ================================================
[2026-08-25 18:36:03,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:36:03
[2026-08-25 18:36:04,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:36:04,481.481 INFO    ] Initializing speech engine...
[2026-08-25 18:36:04,487.487 INFO    ] 2026-08-25 18:36:04
[2026-08-25 18:36:04,787.787 INFO    ] 2026-08-25 18:36:04
[2026-08-25 18:36:04,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:36:05,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:36:05,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:36:05,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:36:05,213.213 INFO    ] time= 25/08/2026 18:36:05
[2026-08-25 18:36:05,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:36:05,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:36:05,300.300 INFO    ] No existing commands found in stream
[2026-08-25 18:36:10,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:36:10,318.318 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 18:36:12,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:36:12,400.400 INFO    ] Checking for system updates...
[2026-08-25 18:36:12,436.436 INFO    ] 200
[2026-08-25 18:36:12,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:12,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:36:12,494.494 INFO    ] No update needed
[2026-08-25 18:36:12,496.496 INFO    ] Checking for camera pi updates...
[2026-08-25 18:36:12,533.533 INFO    ] 200
[2026-08-25 18:36:12,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:12,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:36:12,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:36:12,626.626 INFO    ] No camera update needed
[2026-08-25 18:36:12,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:36:12,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:36:12,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:36:12,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:36:14,681.681 INFO    ] ================================================
[2026-08-25 18:36:14,697.697 INFO    ] Launching Daemon at Tue Aug 25 18:36:14 IST 2026
[2026-08-25 18:36:14,708.708 INFO    ] ================================================
[2026-08-25 18:36:15,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:36:15
[2026-08-25 18:36:15,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:36:16,146.146 INFO    ] Initializing speech engine...
[2026-08-25 18:36:16,155.155 INFO    ] 2026-08-25 18:36:16
[2026-08-25 18:36:16,455.455 INFO    ] 2026-08-25 18:36:16
[2026-08-25 18:36:16,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:36:16,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:36:16,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:36:16,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:36:16,883.883 INFO    ] time= 25/08/2026 18:36:16
[2026-08-25 18:36:16,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:36:16,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:36:17,061.061 INFO    ] No existing commands found in stream
[2026-08-25 18:36:22,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:36:22,094.094 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 18:36:26,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:36:26,128.128 INFO    ] Checking for system updates...
[2026-08-25 18:36:26,168.168 INFO    ] 200
[2026-08-25 18:36:26,171.171 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:26,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:36:26,228.228 INFO    ] No update needed
[2026-08-25 18:36:26,231.231 INFO    ] Checking for camera pi updates...
[2026-08-25 18:36:26,265.265 INFO    ] 200
[2026-08-25 18:36:26,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:26,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:36:26,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:36:26,362.362 INFO    ] No camera update needed
[2026-08-25 18:36:26,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:36:26,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:36:26,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:36:26,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:36:28,423.423 INFO    ] ================================================
[2026-08-25 18:36:28,438.438 INFO    ] Launching Daemon at Tue Aug 25 18:36:28 IST 2026
[2026-08-25 18:36:28,449.449 INFO    ] ================================================
[2026-08-25 18:36:29,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:36:29
[2026-08-25 18:36:29,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:36:29,909.909 INFO    ] Initializing speech engine...
[2026-08-25 18:36:29,915.915 INFO    ] 2026-08-25 18:36:29
[2026-08-25 18:36:30,166.166 INFO    ] 2026-08-25 18:36:30
[2026-08-25 18:36:30,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:36:30,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:36:30,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:36:30,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:36:30,649.649 INFO    ] time= 25/08/2026 18:36:30
[2026-08-25 18:36:30,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:36:30,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:36:30,865.865 INFO    ] No existing commands found in stream
[2026-08-25 18:36:35,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:36:35,889.889 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 18:36:40,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:36:40,227.227 INFO    ] Checking for system updates...
[2026-08-25 18:36:40,268.268 INFO    ] 200
[2026-08-25 18:36:40,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:40,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:36:40,333.333 INFO    ] No update needed
[2026-08-25 18:36:40,336.336 INFO    ] Checking for camera pi updates...
[2026-08-25 18:36:40,376.376 INFO    ] 200
[2026-08-25 18:36:40,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:40,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:36:40,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:36:40,476.476 INFO    ] No camera update needed
[2026-08-25 18:36:40,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:36:40,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:36:40,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:36:40,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:36:42,536.536 INFO    ] ================================================
[2026-08-25 18:36:42,554.554 INFO    ] Launching Daemon at Tue Aug 25 18:36:42 IST 2026
[2026-08-25 18:36:42,566.566 INFO    ] ================================================
[2026-08-25 18:36:43,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:36:43
[2026-08-25 18:36:43,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:36:44,021.021 INFO    ] Initializing speech engine...
[2026-08-25 18:36:44,027.027 INFO    ] 2026-08-25 18:36:44
[2026-08-25 18:36:44,327.327 INFO    ] 2026-08-25 18:36:44
[2026-08-25 18:36:44,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:36:44,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:36:44,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:36:44,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:36:44,710.710 INFO    ] time= 25/08/2026 18:36:44
[2026-08-25 18:36:44,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:36:44,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:36:44,839.839 INFO    ] No existing commands found in stream
[2026-08-25 18:36:49,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:36:49,853.853 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 18:36:51,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:36:51,809.809 INFO    ] Checking for system updates...
[2026-08-25 18:36:51,844.844 INFO    ] 200
[2026-08-25 18:36:51,847.847 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:51,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:36:51,903.903 INFO    ] No update needed
[2026-08-25 18:36:51,906.906 INFO    ] Checking for camera pi updates...
[2026-08-25 18:36:51,939.939 INFO    ] 200
[2026-08-25 18:36:51,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:36:51,983.983 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:36:52,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:36:52,046.046 INFO    ] No camera update needed
[2026-08-25 18:36:52,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:36:52,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:36:52,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:36:52,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:36:54,100.100 INFO    ] ================================================
[2026-08-25 18:36:54,116.116 INFO    ] Launching Daemon at Tue Aug 25 18:36:54 IST 2026
[2026-08-25 18:36:54,127.127 INFO    ] ================================================
[2026-08-25 18:36:54,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:36:54
[2026-08-25 18:36:55,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:36:55,553.553 INFO    ] Initializing speech engine...
[2026-08-25 18:36:55,562.562 INFO    ] 2026-08-25 18:36:55
[2026-08-25 18:36:55,812.812 INFO    ] 2026-08-25 18:36:55
[2026-08-25 18:36:55,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:36:56,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:36:56,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:36:56,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:36:56,286.286 INFO    ] time= 25/08/2026 18:36:56
[2026-08-25 18:36:56,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:36:56,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:36:56,521.521 INFO    ] No existing commands found in stream
[2026-08-25 18:37:01,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:37:01,547.547 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 18:37:02,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:37:02,520.520 INFO    ] Checking for system updates...
[2026-08-25 18:37:02,563.563 INFO    ] 200
[2026-08-25 18:37:02,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:02,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:37:02,629.629 INFO    ] No update needed
[2026-08-25 18:37:02,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 18:37:02,672.672 INFO    ] 200
[2026-08-25 18:37:02,675.675 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:02,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:37:02,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:37:02,888.888 INFO    ] No camera update needed
[2026-08-25 18:37:02,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:37:02,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:37:02,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:37:02,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:37:04,949.949 INFO    ] ================================================
[2026-08-25 18:37:04,965.965 INFO    ] Launching Daemon at Tue Aug 25 18:37:04 IST 2026
[2026-08-25 18:37:04,976.976 INFO    ] ================================================
[2026-08-25 18:37:05,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:37:05
[2026-08-25 18:37:06,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:37:06,401.401 INFO    ] Initializing speech engine...
[2026-08-25 18:37:06,408.408 INFO    ] 2026-08-25 18:37:06
[2026-08-25 18:37:06,702.702 INFO    ] 2026-08-25 18:37:06
[2026-08-25 18:37:06,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:37:06,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:37:06,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:37:07,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:37:07,168.168 INFO    ] time= 25/08/2026 18:37:07
[2026-08-25 18:37:07,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:37:07,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:37:07,351.351 INFO    ] No existing commands found in stream
[2026-08-25 18:37:12,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:37:12,368.368 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 18:37:15,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:37:15,147.147 INFO    ] Checking for system updates...
[2026-08-25 18:37:15,184.184 INFO    ] 200
[2026-08-25 18:37:15,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:15,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:37:15,244.244 INFO    ] No update needed
[2026-08-25 18:37:15,248.248 INFO    ] Checking for camera pi updates...
[2026-08-25 18:37:15,283.283 INFO    ] 200
[2026-08-25 18:37:15,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:15,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:37:15,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:37:15,398.398 INFO    ] No camera update needed
[2026-08-25 18:37:15,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:37:15,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:37:15,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:37:15,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:37:17,457.457 INFO    ] ================================================
[2026-08-25 18:37:17,473.473 INFO    ] Launching Daemon at Tue Aug 25 18:37:17 IST 2026
[2026-08-25 18:37:17,485.485 INFO    ] ================================================
[2026-08-25 18:37:18,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:37:18
[2026-08-25 18:37:18,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:37:19,113.113 INFO    ] Initializing speech engine...
[2026-08-25 18:37:19,122.122 INFO    ] 2026-08-25 18:37:19
[2026-08-25 18:37:19,409.409 INFO    ] 2026-08-25 18:37:19
[2026-08-25 18:37:19,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:37:19,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:37:19,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:37:19,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:37:19,946.946 INFO    ] time= 25/08/2026 18:37:19
[2026-08-25 18:37:19,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:37:19,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:37:20,136.136 INFO    ] No existing commands found in stream
[2026-08-25 18:37:25,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:37:25,170.170 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 18:37:28,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:37:28,251.251 INFO    ] Checking for system updates...
[2026-08-25 18:37:28,291.291 INFO    ] 200
[2026-08-25 18:37:28,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:28,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:37:28,350.350 INFO    ] No update needed
[2026-08-25 18:37:28,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 18:37:28,387.387 INFO    ] 200
[2026-08-25 18:37:28,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:28,431.431 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:37:28,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:37:28,482.482 INFO    ] No camera update needed
[2026-08-25 18:37:28,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:37:28,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:37:28,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:37:28,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:37:30,541.541 INFO    ] ================================================
[2026-08-25 18:37:30,556.556 INFO    ] Launching Daemon at Tue Aug 25 18:37:30 IST 2026
[2026-08-25 18:37:30,567.567 INFO    ] ================================================
[2026-08-25 18:37:31,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:37:31
[2026-08-25 18:37:31,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:37:32,209.209 INFO    ] Initializing speech engine...
[2026-08-25 18:37:32,213.213 INFO    ] 2026-08-25 18:37:32
[2026-08-25 18:37:32,513.513 INFO    ] 2026-08-25 18:37:32
[2026-08-25 18:37:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:37:32,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:37:32,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:37:33,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:37:33,095.095 INFO    ] time= 25/08/2026 18:37:33
[2026-08-25 18:37:33,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:37:33,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:37:33,289.289 INFO    ] No existing commands found in stream
[2026-08-25 18:37:38,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:37:38,330.330 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 18:37:42,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:37:42,415.415 INFO    ] Checking for system updates...
[2026-08-25 18:37:42,458.458 INFO    ] 200
[2026-08-25 18:37:42,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:42,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:37:42,535.535 INFO    ] No update needed
[2026-08-25 18:37:42,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 18:37:42,587.587 INFO    ] 200
[2026-08-25 18:37:42,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:42,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:37:42,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:37:42,712.712 INFO    ] No camera update needed
[2026-08-25 18:37:42,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:37:42,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:37:42,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:37:42,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:37:44,771.771 INFO    ] ================================================
[2026-08-25 18:37:44,787.787 INFO    ] Launching Daemon at Tue Aug 25 18:37:44 IST 2026
[2026-08-25 18:37:44,798.798 INFO    ] ================================================
[2026-08-25 18:37:45,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:37:45
[2026-08-25 18:37:45,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:37:46,227.227 INFO    ] Initializing speech engine...
[2026-08-25 18:37:46,235.235 INFO    ] 2026-08-25 18:37:46
[2026-08-25 18:37:46,482.482 INFO    ] 2026-08-25 18:37:46
[2026-08-25 18:37:46,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:37:46,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:37:46,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:37:46,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:37:46,952.952 INFO    ] time= 25/08/2026 18:37:46
[2026-08-25 18:37:47,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:37:47,043.043 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:37:47,189.189 INFO    ] No existing commands found in stream
[2026-08-25 18:37:52,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:37:52,219.219 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 18:37:53,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:37:54,000.000 INFO    ] Checking for system updates...
[2026-08-25 18:37:54,040.040 INFO    ] 200
[2026-08-25 18:37:54,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:54,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:37:54,105.105 INFO    ] No update needed
[2026-08-25 18:37:54,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 18:37:54,162.162 INFO    ] 200
[2026-08-25 18:37:54,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:37:54,204.204 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:37:54,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:37:54,254.254 INFO    ] No camera update needed
[2026-08-25 18:37:54,257.257 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:37:54,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:37:54,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:37:54,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:37:56,311.311 INFO    ] ================================================
[2026-08-25 18:37:56,326.326 INFO    ] Launching Daemon at Tue Aug 25 18:37:56 IST 2026
[2026-08-25 18:37:56,337.337 INFO    ] ================================================
[2026-08-25 18:37:56,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:37:56
[2026-08-25 18:37:57,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:37:57,772.772 INFO    ] Initializing speech engine...
[2026-08-25 18:37:57,778.778 INFO    ] 2026-08-25 18:37:57
[2026-08-25 18:37:58,071.071 INFO    ] 2026-08-25 18:37:58
[2026-08-25 18:37:58,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:37:58,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:37:58,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:37:58,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:37:58,558.558 INFO    ] time= 25/08/2026 18:37:58
[2026-08-25 18:37:58,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:37:58,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:37:58,830.830 INFO    ] No existing commands found in stream
[2026-08-25 18:38:03,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:38:03,860.860 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 18:38:07,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:38:07,450.450 INFO    ] Checking for system updates...
[2026-08-25 18:38:07,486.486 INFO    ] 200
[2026-08-25 18:38:07,488.488 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:07,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:07,543.543 INFO    ] No update needed
[2026-08-25 18:38:07,546.546 INFO    ] Checking for camera pi updates...
[2026-08-25 18:38:07,580.580 INFO    ] 200
[2026-08-25 18:38:07,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:07,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:38:07,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:07,667.667 INFO    ] No camera update needed
[2026-08-25 18:38:07,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:38:07,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:38:07,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:38:07,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:38:09,722.722 INFO    ] ================================================
[2026-08-25 18:38:09,737.737 INFO    ] Launching Daemon at Tue Aug 25 18:38:09 IST 2026
[2026-08-25 18:38:09,747.747 INFO    ] ================================================
[2026-08-25 18:38:10,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:38:10
[2026-08-25 18:38:10,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:38:11,152.152 INFO    ] Initializing speech engine...
[2026-08-25 18:38:11,172.172 INFO    ] 2026-08-25 18:38:11
[2026-08-25 18:38:11,432.432 INFO    ] 2026-08-25 18:38:11
[2026-08-25 18:38:11,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:38:11,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:38:11,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:38:11,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:38:11,882.882 INFO    ] time= 25/08/2026 18:38:11
[2026-08-25 18:38:11,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:38:12,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:38:12,155.155 INFO    ] No existing commands found in stream
[2026-08-25 18:38:17,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:38:17,174.174 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 18:38:19,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:38:19,258.258 INFO    ] Checking for system updates...
[2026-08-25 18:38:19,293.293 INFO    ] 200
[2026-08-25 18:38:19,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:19,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:19,356.356 INFO    ] No update needed
[2026-08-25 18:38:19,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 18:38:19,392.392 INFO    ] 200
[2026-08-25 18:38:19,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:19,436.436 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:38:19,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:19,488.488 INFO    ] No camera update needed
[2026-08-25 18:38:19,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:38:19,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:38:19,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:38:19,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:38:21,543.543 INFO    ] ================================================
[2026-08-25 18:38:21,558.558 INFO    ] Launching Daemon at Tue Aug 25 18:38:21 IST 2026
[2026-08-25 18:38:21,570.570 INFO    ] ================================================
[2026-08-25 18:38:22,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:38:22
[2026-08-25 18:38:22,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:38:23,000.000 INFO    ] Initializing speech engine...
[2026-08-25 18:38:23,018.018 INFO    ] 2026-08-25 18:38:23
[2026-08-25 18:38:23,287.287 INFO    ] 2026-08-25 18:38:23
[2026-08-25 18:38:23,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:38:23,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:38:23,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:38:23,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:38:23,764.764 INFO    ] time= 25/08/2026 18:38:23
[2026-08-25 18:38:23,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:38:23,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:38:23,938.938 INFO    ] No existing commands found in stream
[2026-08-25 18:38:28,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:38:28,974.974 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 18:38:30,357.357 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:38:30,359.359 INFO    ] Checking for system updates...
[2026-08-25 18:38:30,395.395 INFO    ] 200
[2026-08-25 18:38:30,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:30,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:38:30,453.453 INFO    ] No update needed
[2026-08-25 18:38:30,456.456 INFO    ] Checking for camera pi updates...
[2026-08-25 18:38:30,492.492 INFO    ] 200
[2026-08-25 18:38:30,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:30,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:38:30,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:38:30,583.583 INFO    ] No camera update needed
[2026-08-25 18:38:30,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:38:30,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:38:30,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:38:30,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:38:32,642.642 INFO    ] ================================================
[2026-08-25 18:38:32,658.658 INFO    ] Launching Daemon at Tue Aug 25 18:38:32 IST 2026
[2026-08-25 18:38:32,670.670 INFO    ] ================================================
[2026-08-25 18:38:33,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:38:33
[2026-08-25 18:38:33,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:38:34,128.128 INFO    ] Initializing speech engine...
[2026-08-25 18:38:34,136.136 INFO    ] 2026-08-25 18:38:34
[2026-08-25 18:38:34,388.388 INFO    ] 2026-08-25 18:38:34
[2026-08-25 18:38:34,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:38:34,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:38:34,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:38:34,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:38:34,861.861 INFO    ] time= 25/08/2026 18:38:34
[2026-08-25 18:38:34,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:38:34,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:38:35,112.112 INFO    ] No existing commands found in stream
[2026-08-25 18:38:40,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:38:40,128.128 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 18:38:42,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:38:42,849.849 INFO    ] Checking for system updates...
[2026-08-25 18:38:42,885.885 INFO    ] 200
[2026-08-25 18:38:42,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:42,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:42,945.945 INFO    ] No update needed
[2026-08-25 18:38:42,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 18:38:42,985.985 INFO    ] 200
[2026-08-25 18:38:42,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:43,032.032 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:38:43,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:43,089.089 INFO    ] No camera update needed
[2026-08-25 18:38:43,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:38:43,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:38:43,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:38:43,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:38:45,145.145 INFO    ] ================================================
[2026-08-25 18:38:45,160.160 INFO    ] Launching Daemon at Tue Aug 25 18:38:45 IST 2026
[2026-08-25 18:38:45,170.170 INFO    ] ================================================
[2026-08-25 18:38:45,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:38:45
[2026-08-25 18:38:46,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:38:46,614.614 INFO    ] Initializing speech engine...
[2026-08-25 18:38:46,623.623 INFO    ] 2026-08-25 18:38:46
[2026-08-25 18:38:46,889.889 INFO    ] 2026-08-25 18:38:46
[2026-08-25 18:38:46,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:38:47,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:38:47,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:38:47,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:38:47,375.375 INFO    ] time= 25/08/2026 18:38:47
[2026-08-25 18:38:47,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:38:47,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:38:47,589.589 INFO    ] No existing commands found in stream
[2026-08-25 18:38:52,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:38:52,613.613 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 18:38:53,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:38:53,074.074 INFO    ] Checking for system updates...
[2026-08-25 18:38:53,111.111 INFO    ] 200
[2026-08-25 18:38:53,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:53,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:53,169.169 INFO    ] No update needed
[2026-08-25 18:38:53,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 18:38:53,206.206 INFO    ] 200
[2026-08-25 18:38:53,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:38:53,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:38:53,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:38:53,301.301 INFO    ] No camera update needed
[2026-08-25 18:38:53,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:38:53,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:38:53,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:38:53,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:38:55,359.359 INFO    ] ================================================
[2026-08-25 18:38:55,374.374 INFO    ] Launching Daemon at Tue Aug 25 18:38:55 IST 2026
[2026-08-25 18:38:55,384.384 INFO    ] ================================================
[2026-08-25 18:38:55,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:38:55
[2026-08-25 18:38:56,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:38:56,797.797 INFO    ] Initializing speech engine...
[2026-08-25 18:38:56,810.810 INFO    ] 2026-08-25 18:38:56
[2026-08-25 18:38:57,088.088 INFO    ] 2026-08-25 18:38:57
[2026-08-25 18:38:57,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:38:57,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:38:57,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:38:57,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:38:57,568.568 INFO    ] time= 25/08/2026 18:38:57
[2026-08-25 18:38:57,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:38:57,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:38:57,763.763 INFO    ] No existing commands found in stream
[2026-08-25 18:39:02,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:39:02,814.814 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 18:39:04,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:39:04,571.571 INFO    ] Checking for system updates...
[2026-08-25 18:39:04,606.606 INFO    ] 200
[2026-08-25 18:39:04,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:04,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:39:04,668.668 INFO    ] No update needed
[2026-08-25 18:39:04,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 18:39:04,704.704 INFO    ] 200
[2026-08-25 18:39:04,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:04,755.755 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:39:04,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:39:04,903.903 INFO    ] No camera update needed
[2026-08-25 18:39:04,906.906 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:39:04,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:39:04,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:39:04,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:39:06,959.959 INFO    ] ================================================
[2026-08-25 18:39:06,974.974 INFO    ] Launching Daemon at Tue Aug 25 18:39:06 IST 2026
[2026-08-25 18:39:06,984.984 INFO    ] ================================================
[2026-08-25 18:39:07,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:39:07
[2026-08-25 18:39:08,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:39:08,385.385 INFO    ] Initializing speech engine...
[2026-08-25 18:39:08,393.393 INFO    ] 2026-08-25 18:39:08
[2026-08-25 18:39:08,668.668 INFO    ] 2026-08-25 18:39:08
[2026-08-25 18:39:08,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:39:08,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:39:08,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:39:09,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:39:09,224.224 INFO    ] time= 25/08/2026 18:39:09
[2026-08-25 18:39:09,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:39:09,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:39:09,389.389 INFO    ] No existing commands found in stream
[2026-08-25 18:39:14,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:39:14,407.407 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 18:39:15,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:39:15,094.094 INFO    ] Checking for system updates...
[2026-08-25 18:39:15,130.130 INFO    ] 200
[2026-08-25 18:39:15,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:15,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:15,190.190 INFO    ] No update needed
[2026-08-25 18:39:15,192.192 INFO    ] Checking for camera pi updates...
[2026-08-25 18:39:15,229.229 INFO    ] 200
[2026-08-25 18:39:15,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:15,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:39:15,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:15,332.332 INFO    ] No camera update needed
[2026-08-25 18:39:15,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:39:15,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:39:15,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:39:15,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:39:17,387.387 INFO    ] ================================================
[2026-08-25 18:39:17,402.402 INFO    ] Launching Daemon at Tue Aug 25 18:39:17 IST 2026
[2026-08-25 18:39:17,413.413 INFO    ] ================================================
[2026-08-25 18:39:17,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:39:17
[2026-08-25 18:39:18,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:39:18,815.815 INFO    ] Initializing speech engine...
[2026-08-25 18:39:18,831.831 INFO    ] 2026-08-25 18:39:18
[2026-08-25 18:39:19,111.111 INFO    ] 2026-08-25 18:39:19
[2026-08-25 18:39:19,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:39:19,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:39:19,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:39:19,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:39:19,590.590 INFO    ] time= 25/08/2026 18:39:19
[2026-08-25 18:39:19,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:39:19,688.688 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:39:19,786.786 INFO    ] No existing commands found in stream
[2026-08-25 18:39:24,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:39:24,801.801 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 18:39:30,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:39:30,928.928 INFO    ] Checking for system updates...
[2026-08-25 18:39:30,964.964 INFO    ] 200
[2026-08-25 18:39:30,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:31,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:31,022.022 INFO    ] No update needed
[2026-08-25 18:39:31,025.025 INFO    ] Checking for camera pi updates...
[2026-08-25 18:39:31,058.058 INFO    ] 200
[2026-08-25 18:39:31,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:31,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:39:31,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:31,155.155 INFO    ] No camera update needed
[2026-08-25 18:39:31,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:39:31,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:39:31,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:39:31,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:39:33,214.214 INFO    ] ================================================
[2026-08-25 18:39:33,229.229 INFO    ] Launching Daemon at Tue Aug 25 18:39:33 IST 2026
[2026-08-25 18:39:33,240.240 INFO    ] ================================================
[2026-08-25 18:39:33,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:39:33
[2026-08-25 18:39:34,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:39:34,685.685 INFO    ] Initializing speech engine...
[2026-08-25 18:39:34,695.695 INFO    ] 2026-08-25 18:39:34
[2026-08-25 18:39:34,942.942 INFO    ] 2026-08-25 18:39:34
[2026-08-25 18:39:34,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:39:35,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:39:35,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:39:35,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:39:35,436.436 INFO    ] time= 25/08/2026 18:39:35
[2026-08-25 18:39:35,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:39:35,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:39:35,651.651 INFO    ] No existing commands found in stream
[2026-08-25 18:39:40,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:39:40,666.666 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-08-25 18:39:45,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:39:45,141.141 INFO    ] Checking for system updates...
[2026-08-25 18:39:45,180.180 INFO    ] 200
[2026-08-25 18:39:45,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:45,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:45,238.238 INFO    ] No update needed
[2026-08-25 18:39:45,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 18:39:45,274.274 INFO    ] 200
[2026-08-25 18:39:45,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:45,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:39:45,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:45,364.364 INFO    ] No camera update needed
[2026-08-25 18:39:45,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:39:45,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:39:45,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:39:45,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:39:47,420.420 INFO    ] ================================================
[2026-08-25 18:39:47,435.435 INFO    ] Launching Daemon at Tue Aug 25 18:39:47 IST 2026
[2026-08-25 18:39:47,445.445 INFO    ] ================================================
[2026-08-25 18:39:48,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:39:48
[2026-08-25 18:39:48,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:39:48,874.874 INFO    ] Initializing speech engine...
[2026-08-25 18:39:48,880.880 INFO    ] 2026-08-25 18:39:48
[2026-08-25 18:39:49,172.172 INFO    ] 2026-08-25 18:39:49
[2026-08-25 18:39:49,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:39:49,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:39:49,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:39:49,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:39:49,581.581 INFO    ] time= 25/08/2026 18:39:49
[2026-08-25 18:39:49,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:39:49,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:39:49,690.690 INFO    ] No existing commands found in stream
[2026-08-25 18:39:54,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:39:54,702.702 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 18:39:56,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:39:56,283.283 INFO    ] Checking for system updates...
[2026-08-25 18:39:56,319.319 INFO    ] 200
[2026-08-25 18:39:56,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:56,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:56,378.378 INFO    ] No update needed
[2026-08-25 18:39:56,381.381 INFO    ] Checking for camera pi updates...
[2026-08-25 18:39:56,418.418 INFO    ] 200
[2026-08-25 18:39:56,421.421 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:39:56,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:39:56,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:39:56,513.513 INFO    ] No camera update needed
[2026-08-25 18:39:56,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:39:56,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:39:56,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:39:56,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:39:58,567.567 INFO    ] ================================================
[2026-08-25 18:39:58,582.582 INFO    ] Launching Daemon at Tue Aug 25 18:39:58 IST 2026
[2026-08-25 18:39:58,593.593 INFO    ] ================================================
[2026-08-25 18:39:59,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:39:59
[2026-08-25 18:39:59,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:40:00,004.004 INFO    ] Initializing speech engine...
[2026-08-25 18:40:00,019.019 INFO    ] 2026-08-25 18:40:00
[2026-08-25 18:40:00,275.275 INFO    ] 2026-08-25 18:40:00
[2026-08-25 18:40:00,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:40:00,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:40:00,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:40:00,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:40:00,651.651 INFO    ] time= 25/08/2026 18:40:00
[2026-08-25 18:40:00,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:40:00,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:40:00,816.816 INFO    ] No existing commands found in stream
[2026-08-25 18:40:05,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:40:05,844.844 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 18:40:07,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:40:07,163.163 INFO    ] Checking for system updates...
[2026-08-25 18:40:07,205.205 INFO    ] 200
[2026-08-25 18:40:07,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:07,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:07,288.288 INFO    ] No update needed
[2026-08-25 18:40:07,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 18:40:07,331.331 INFO    ] 200
[2026-08-25 18:40:07,334.334 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:07,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:40:07,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:07,433.433 INFO    ] No camera update needed
[2026-08-25 18:40:07,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:40:07,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:40:07,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:40:07,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:40:09,490.490 INFO    ] ================================================
[2026-08-25 18:40:09,505.505 INFO    ] Launching Daemon at Tue Aug 25 18:40:09 IST 2026
[2026-08-25 18:40:09,516.516 INFO    ] ================================================
[2026-08-25 18:40:10,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:40:10
[2026-08-25 18:40:10,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:40:10,954.954 INFO    ] Initializing speech engine...
[2026-08-25 18:40:10,963.963 INFO    ] 2026-08-25 18:40:10
[2026-08-25 18:40:11,215.215 INFO    ] 2026-08-25 18:40:11
[2026-08-25 18:40:11,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:40:11,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:40:11,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:40:11,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:40:11,705.705 INFO    ] time= 25/08/2026 18:40:11
[2026-08-25 18:40:11,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:40:11,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:40:11,911.911 INFO    ] No existing commands found in stream
[2026-08-25 18:40:16,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:40:16,949.949 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 18:40:19,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:40:19,348.348 INFO    ] Checking for system updates...
[2026-08-25 18:40:19,384.384 INFO    ] 200
[2026-08-25 18:40:19,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:19,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:19,441.441 INFO    ] No update needed
[2026-08-25 18:40:19,444.444 INFO    ] Checking for camera pi updates...
[2026-08-25 18:40:19,477.477 INFO    ] 200
[2026-08-25 18:40:19,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:19,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:40:19,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:19,571.571 INFO    ] No camera update needed
[2026-08-25 18:40:19,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:40:19,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:40:19,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:40:19,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:40:21,628.628 INFO    ] ================================================
[2026-08-25 18:40:21,643.643 INFO    ] Launching Daemon at Tue Aug 25 18:40:21 IST 2026
[2026-08-25 18:40:21,653.653 INFO    ] ================================================
[2026-08-25 18:40:22,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:40:22
[2026-08-25 18:40:22,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:40:23,062.062 INFO    ] Initializing speech engine...
[2026-08-25 18:40:23,077.077 INFO    ] 2026-08-25 18:40:23
[2026-08-25 18:40:23,341.341 INFO    ] 2026-08-25 18:40:23
[2026-08-25 18:40:23,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:40:23,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:40:23,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:40:23,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:40:23,838.838 INFO    ] time= 25/08/2026 18:40:23
[2026-08-25 18:40:23,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:40:23,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:40:24,062.062 INFO    ] No existing commands found in stream
[2026-08-25 18:40:29,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:40:29,077.077 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 18:40:31,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:40:31,332.332 INFO    ] Checking for system updates...
[2026-08-25 18:40:31,368.368 INFO    ] 200
[2026-08-25 18:40:31,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:31,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:31,425.425 INFO    ] No update needed
[2026-08-25 18:40:31,428.428 INFO    ] Checking for camera pi updates...
[2026-08-25 18:40:31,461.461 INFO    ] 200
[2026-08-25 18:40:31,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:31,504.504 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:40:31,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:31,565.565 INFO    ] No camera update needed
[2026-08-25 18:40:31,568.568 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:40:31,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:40:31,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:40:31,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:40:33,624.624 INFO    ] ================================================
[2026-08-25 18:40:33,639.639 INFO    ] Launching Daemon at Tue Aug 25 18:40:33 IST 2026
[2026-08-25 18:40:33,650.650 INFO    ] ================================================
[2026-08-25 18:40:34,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:40:34
[2026-08-25 18:40:34,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:40:35,087.087 INFO    ] Initializing speech engine...
[2026-08-25 18:40:35,101.101 INFO    ] 2026-08-25 18:40:35
[2026-08-25 18:40:35,367.367 INFO    ] 2026-08-25 18:40:35
[2026-08-25 18:40:35,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:40:35,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:40:35,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:40:35,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:40:35,845.845 INFO    ] time= 25/08/2026 18:40:35
[2026-08-25 18:40:35,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:40:35,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:40:36,076.076 INFO    ] No existing commands found in stream
[2026-08-25 18:40:41,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:40:41,096.096 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 18:40:43,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:40:43,022.022 INFO    ] Checking for system updates...
[2026-08-25 18:40:43,057.057 INFO    ] 200
[2026-08-25 18:40:43,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:43,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:43,118.118 INFO    ] No update needed
[2026-08-25 18:40:43,121.121 INFO    ] Checking for camera pi updates...
[2026-08-25 18:40:43,154.154 INFO    ] 200
[2026-08-25 18:40:43,157.157 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:43,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:40:43,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:40:43,248.248 INFO    ] No camera update needed
[2026-08-25 18:40:43,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:40:43,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:40:43,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:40:43,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:40:45,304.304 INFO    ] ================================================
[2026-08-25 18:40:45,319.319 INFO    ] Launching Daemon at Tue Aug 25 18:40:45 IST 2026
[2026-08-25 18:40:45,330.330 INFO    ] ================================================
[2026-08-25 18:40:45,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:40:45
[2026-08-25 18:40:46,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:40:46,780.780 INFO    ] Initializing speech engine...
[2026-08-25 18:40:46,790.790 INFO    ] 2026-08-25 18:40:46
[2026-08-25 18:40:47,039.039 INFO    ] 2026-08-25 18:40:47
[2026-08-25 18:40:47,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:40:47,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:40:47,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:40:47,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:40:47,545.545 INFO    ] time= 25/08/2026 18:40:47
[2026-08-25 18:40:47,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:40:47,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:40:47,750.750 INFO    ] No existing commands found in stream
[2026-08-25 18:40:52,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:40:52,772.772 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 18:40:57,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:40:57,056.056 INFO    ] Checking for system updates...
[2026-08-25 18:40:57,091.091 INFO    ] 200
[2026-08-25 18:40:57,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:57,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:40:57,149.149 INFO    ] No update needed
[2026-08-25 18:40:57,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 18:40:57,184.184 INFO    ] 200
[2026-08-25 18:40:57,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:40:57,227.227 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:40:57,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:40:57,278.278 INFO    ] No camera update needed
[2026-08-25 18:40:57,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:40:57,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:40:57,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:40:57,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:40:59,334.334 INFO    ] ================================================
[2026-08-25 18:40:59,349.349 INFO    ] Launching Daemon at Tue Aug 25 18:40:59 IST 2026
[2026-08-25 18:40:59,360.360 INFO    ] ================================================
[2026-08-25 18:41:00,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:41:00
[2026-08-25 18:41:00,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:41:01,014.014 INFO    ] Initializing speech engine...
[2026-08-25 18:41:01,028.028 INFO    ] 2026-08-25 18:41:01
[2026-08-25 18:41:01,356.356 INFO    ] 2026-08-25 18:41:01
[2026-08-25 18:41:01,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:41:01,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:41:01,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:41:01,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:41:01,820.820 INFO    ] time= 25/08/2026 18:41:01
[2026-08-25 18:41:01,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:41:01,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:41:01,908.908 INFO    ] No existing commands found in stream
[2026-08-25 18:41:06,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:41:06,942.942 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 18:41:10,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:41:10,433.433 INFO    ] Checking for system updates...
[2026-08-25 18:41:10,468.468 INFO    ] 200
[2026-08-25 18:41:10,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:10,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:41:10,527.527 INFO    ] No update needed
[2026-08-25 18:41:10,529.529 INFO    ] Checking for camera pi updates...
[2026-08-25 18:41:10,562.562 INFO    ] 200
[2026-08-25 18:41:10,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:10,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:41:10,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:41:10,752.752 INFO    ] No camera update needed
[2026-08-25 18:41:10,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:41:10,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:41:10,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:41:10,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:41:12,808.808 INFO    ] ================================================
[2026-08-25 18:41:12,823.823 INFO    ] Launching Daemon at Tue Aug 25 18:41:12 IST 2026
[2026-08-25 18:41:12,835.835 INFO    ] ================================================
[2026-08-25 18:41:13,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:41:13
[2026-08-25 18:41:14,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:41:14,354.354 INFO    ] Initializing speech engine...
[2026-08-25 18:41:14,360.360 INFO    ] 2026-08-25 18:41:14
[2026-08-25 18:41:14,634.634 INFO    ] 2026-08-25 18:41:14
[2026-08-25 18:41:14,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:41:14,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:41:14,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:41:15,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:41:15,171.171 INFO    ] time= 25/08/2026 18:41:15
[2026-08-25 18:41:15,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:41:15,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:41:15,324.324 INFO    ] No existing commands found in stream
[2026-08-25 18:41:20,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:41:20,342.342 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 18:41:23,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:41:23,268.268 INFO    ] Checking for system updates...
[2026-08-25 18:41:23,303.303 INFO    ] 200
[2026-08-25 18:41:23,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:23,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:41:23,366.366 INFO    ] No update needed
[2026-08-25 18:41:23,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 18:41:23,402.402 INFO    ] 200
[2026-08-25 18:41:23,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:23,445.445 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:41:23,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:41:23,503.503 INFO    ] No camera update needed
[2026-08-25 18:41:23,506.506 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:41:23,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:41:23,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:41:23,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:41:25,558.558 INFO    ] ================================================
[2026-08-25 18:41:25,574.574 INFO    ] Launching Daemon at Tue Aug 25 18:41:25 IST 2026
[2026-08-25 18:41:25,585.585 INFO    ] ================================================
[2026-08-25 18:41:26,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:41:26
[2026-08-25 18:41:26,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:41:27,037.037 INFO    ] Initializing speech engine...
[2026-08-25 18:41:27,046.046 INFO    ] 2026-08-25 18:41:27
[2026-08-25 18:41:27,302.302 INFO    ] 2026-08-25 18:41:27
[2026-08-25 18:41:27,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:41:27,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:41:27,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:41:27,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:41:27,841.841 INFO    ] time= 25/08/2026 18:41:27
[2026-08-25 18:41:27,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:41:27,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:41:27,992.992 INFO    ] No existing commands found in stream
[2026-08-25 18:41:33,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:41:33,010.010 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 18:41:37,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:41:37,428.428 INFO    ] Checking for system updates...
[2026-08-25 18:41:37,466.466 INFO    ] 200
[2026-08-25 18:41:37,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:37,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:41:37,545.545 INFO    ] No update needed
[2026-08-25 18:41:37,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 18:41:37,586.586 INFO    ] 200
[2026-08-25 18:41:37,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:37,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:41:37,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:41:37,693.693 INFO    ] No camera update needed
[2026-08-25 18:41:37,696.696 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:41:37,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:41:37,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:41:37,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:41:39,752.752 INFO    ] ================================================
[2026-08-25 18:41:39,768.768 INFO    ] Launching Daemon at Tue Aug 25 18:41:39 IST 2026
[2026-08-25 18:41:39,782.782 INFO    ] ================================================
[2026-08-25 18:41:40,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:41:40
[2026-08-25 18:41:41,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:41:41,406.406 INFO    ] Initializing speech engine...
[2026-08-25 18:41:41,415.415 INFO    ] 2026-08-25 18:41:41
[2026-08-25 18:41:41,676.676 INFO    ] 2026-08-25 18:41:41
[2026-08-25 18:41:41,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:41:41,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:41:41,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:41:42,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:41:42,057.057 INFO    ] time= 25/08/2026 18:41:42
[2026-08-25 18:41:42,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:41:42,088.088 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:41:42,216.216 INFO    ] No existing commands found in stream
[2026-08-25 18:41:47,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:41:47,243.243 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 18:41:48,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:41:48,544.544 INFO    ] Checking for system updates...
[2026-08-25 18:41:48,582.582 INFO    ] 200
[2026-08-25 18:41:48,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:48,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:41:48,643.643 INFO    ] No update needed
[2026-08-25 18:41:48,645.645 INFO    ] Checking for camera pi updates...
[2026-08-25 18:41:48,683.683 INFO    ] 200
[2026-08-25 18:41:48,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:48,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:41:48,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:41:48,800.800 INFO    ] No camera update needed
[2026-08-25 18:41:48,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:41:48,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:41:48,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:41:48,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:41:50,862.862 INFO    ] ================================================
[2026-08-25 18:41:50,879.879 INFO    ] Launching Daemon at Tue Aug 25 18:41:50 IST 2026
[2026-08-25 18:41:50,891.891 INFO    ] ================================================
[2026-08-25 18:41:51,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:41:51
[2026-08-25 18:41:52,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:41:52,504.504 INFO    ] Initializing speech engine...
[2026-08-25 18:41:52,510.510 INFO    ] 2026-08-25 18:41:52
[2026-08-25 18:41:52,762.762 INFO    ] 2026-08-25 18:41:52
[2026-08-25 18:41:52,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:41:53,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:41:53,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:41:53,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:41:53,154.154 INFO    ] time= 25/08/2026 18:41:53
[2026-08-25 18:41:53,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:41:53,202.202 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:41:53,334.334 INFO    ] No existing commands found in stream
[2026-08-25 18:41:58,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:41:58,367.367 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 18:41:59,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:41:59,435.435 INFO    ] Checking for system updates...
[2026-08-25 18:41:59,471.471 INFO    ] 200
[2026-08-25 18:41:59,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:59,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:41:59,537.537 INFO    ] No update needed
[2026-08-25 18:41:59,539.539 INFO    ] Checking for camera pi updates...
[2026-08-25 18:41:59,572.572 INFO    ] 200
[2026-08-25 18:41:59,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:41:59,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:41:59,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:41:59,677.677 INFO    ] No camera update needed
[2026-08-25 18:41:59,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:41:59,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:41:59,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:41:59,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:42:01,740.740 INFO    ] ================================================
[2026-08-25 18:42:01,779.779 INFO    ] Launching Daemon at Tue Aug 25 18:42:01 IST 2026
[2026-08-25 18:42:01,798.798 INFO    ] ================================================
[2026-08-25 18:42:02,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:42:02
[2026-08-25 18:42:03,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:42:03,591.591 INFO    ] Initializing speech engine...
[2026-08-25 18:42:03,603.603 INFO    ] 2026-08-25 18:42:03
[2026-08-25 18:42:03,874.874 INFO    ] 2026-08-25 18:42:03
[2026-08-25 18:42:03,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:42:04,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:42:04,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:42:04,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:42:04,433.433 INFO    ] time= 25/08/2026 18:42:04
[2026-08-25 18:42:04,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:42:04,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:42:04,615.615 INFO    ] No existing commands found in stream
[2026-08-25 18:42:09,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:42:09,644.644 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 18:42:12,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:42:12,477.477 INFO    ] Checking for system updates...
[2026-08-25 18:42:12,513.513 INFO    ] 200
[2026-08-25 18:42:12,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:12,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:12,570.570 INFO    ] No update needed
[2026-08-25 18:42:12,573.573 INFO    ] Checking for camera pi updates...
[2026-08-25 18:42:12,607.607 INFO    ] 200
[2026-08-25 18:42:12,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:12,650.650 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:42:12,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:12,701.701 INFO    ] No camera update needed
[2026-08-25 18:42:12,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:42:12,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:42:12,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:42:12,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:42:14,755.755 INFO    ] ================================================
[2026-08-25 18:42:14,774.774 INFO    ] Launching Daemon at Tue Aug 25 18:42:14 IST 2026
[2026-08-25 18:42:14,785.785 INFO    ] ================================================
[2026-08-25 18:42:15,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:42:15
[2026-08-25 18:42:15,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:42:16,252.252 INFO    ] Initializing speech engine...
[2026-08-25 18:42:16,266.266 INFO    ] 2026-08-25 18:42:16
[2026-08-25 18:42:16,535.535 INFO    ] 2026-08-25 18:42:16
[2026-08-25 18:42:16,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:42:16,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:42:16,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:42:17,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:42:17,067.067 INFO    ] time= 25/08/2026 18:42:17
[2026-08-25 18:42:17,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:42:17,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:42:17,219.219 INFO    ] No existing commands found in stream
[2026-08-25 18:42:22,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:42:22,243.243 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 18:42:23,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:42:23,082.082 INFO    ] Checking for system updates...
[2026-08-25 18:42:23,129.129 INFO    ] 200
[2026-08-25 18:42:23,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:23,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:23,196.196 INFO    ] No update needed
[2026-08-25 18:42:23,199.199 INFO    ] Checking for camera pi updates...
[2026-08-25 18:42:23,232.232 INFO    ] 200
[2026-08-25 18:42:23,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:23,275.275 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:42:23,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:23,324.324 INFO    ] No camera update needed
[2026-08-25 18:42:23,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:42:23,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:42:23,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:42:23,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:42:25,380.380 INFO    ] ================================================
[2026-08-25 18:42:25,395.395 INFO    ] Launching Daemon at Tue Aug 25 18:42:25 IST 2026
[2026-08-25 18:42:25,405.405 INFO    ] ================================================
[2026-08-25 18:42:25,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:42:25
[2026-08-25 18:42:26,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:42:26,843.843 INFO    ] Initializing speech engine...
[2026-08-25 18:42:26,850.850 INFO    ] 2026-08-25 18:42:26
[2026-08-25 18:42:27,108.108 INFO    ] 2026-08-25 18:42:27
[2026-08-25 18:42:27,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:42:27,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:42:27,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:42:27,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:42:27,649.649 INFO    ] time= 25/08/2026 18:42:27
[2026-08-25 18:42:27,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:42:27,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:42:27,810.810 INFO    ] No existing commands found in stream
[2026-08-25 18:42:32,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:42:32,840.840 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 18:42:34,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:42:34,604.604 INFO    ] Checking for system updates...
[2026-08-25 18:42:34,643.643 INFO    ] 200
[2026-08-25 18:42:34,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:34,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:34,700.700 INFO    ] No update needed
[2026-08-25 18:42:34,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 18:42:34,739.739 INFO    ] 200
[2026-08-25 18:42:34,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:34,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:42:34,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:34,838.838 INFO    ] No camera update needed
[2026-08-25 18:42:34,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:42:34,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:42:34,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:42:34,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:42:36,893.893 INFO    ] ================================================
[2026-08-25 18:42:36,908.908 INFO    ] Launching Daemon at Tue Aug 25 18:42:36 IST 2026
[2026-08-25 18:42:36,918.918 INFO    ] ================================================
[2026-08-25 18:42:37,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:42:37
[2026-08-25 18:42:38,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:42:38,341.341 INFO    ] Initializing speech engine...
[2026-08-25 18:42:38,348.348 INFO    ] 2026-08-25 18:42:38
[2026-08-25 18:42:38,606.606 INFO    ] 2026-08-25 18:42:38
[2026-08-25 18:42:38,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:42:38,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:42:38,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:42:39,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:42:39,148.148 INFO    ] time= 25/08/2026 18:42:39
[2026-08-25 18:42:39,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:42:39,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:42:39,289.289 INFO    ] No existing commands found in stream
[2026-08-25 18:42:44,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:42:44,313.313 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 18:42:45,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:42:45,574.574 INFO    ] Checking for system updates...
[2026-08-25 18:42:45,609.609 INFO    ] 200
[2026-08-25 18:42:45,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:45,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:45,668.668 INFO    ] No update needed
[2026-08-25 18:42:45,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 18:42:45,704.704 INFO    ] 200
[2026-08-25 18:42:45,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:45,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:42:45,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:42:45,811.811 INFO    ] No camera update needed
[2026-08-25 18:42:45,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:42:45,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:42:45,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:42:45,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:42:47,866.866 INFO    ] ================================================
[2026-08-25 18:42:47,880.880 INFO    ] Launching Daemon at Tue Aug 25 18:42:47 IST 2026
[2026-08-25 18:42:47,891.891 INFO    ] ================================================
[2026-08-25 18:42:48,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:42:48
[2026-08-25 18:42:49,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:42:49,306.306 INFO    ] Initializing speech engine...
[2026-08-25 18:42:49,315.315 INFO    ] 2026-08-25 18:42:49
[2026-08-25 18:42:49,560.560 INFO    ] 2026-08-25 18:42:49
[2026-08-25 18:42:49,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:42:49,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:42:49,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:42:49,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:42:50,057.057 INFO    ] time= 25/08/2026 18:42:49
[2026-08-25 18:42:50,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:42:50,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:42:50,264.264 INFO    ] No existing commands found in stream
[2026-08-25 18:42:55,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:42:55,286.286 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 18:42:58,403.403 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:42:58,406.406 INFO    ] Checking for system updates...
[2026-08-25 18:42:58,444.444 INFO    ] 200
[2026-08-25 18:42:58,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:58,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:42:58,509.509 INFO    ] No update needed
[2026-08-25 18:42:58,511.511 INFO    ] Checking for camera pi updates...
[2026-08-25 18:42:58,544.544 INFO    ] 200
[2026-08-25 18:42:58,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:42:58,586.586 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:42:58,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:42:58,639.639 INFO    ] No camera update needed
[2026-08-25 18:42:58,641.641 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:42:58,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:42:58,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:42:58,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:43:00,696.696 INFO    ] ================================================
[2026-08-25 18:43:00,712.712 INFO    ] Launching Daemon at Tue Aug 25 18:43:00 IST 2026
[2026-08-25 18:43:00,722.722 INFO    ] ================================================
[2026-08-25 18:43:01,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:43:01
[2026-08-25 18:43:02,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:43:02,343.343 INFO    ] Initializing speech engine...
[2026-08-25 18:43:02,358.358 INFO    ] 2026-08-25 18:43:02
[2026-08-25 18:43:02,687.687 INFO    ] 2026-08-25 18:43:02
[2026-08-25 18:43:02,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:43:02,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:43:02,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:43:03,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:43:03,207.207 INFO    ] time= 25/08/2026 18:43:03
[2026-08-25 18:43:03,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:43:03,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:43:03,420.420 INFO    ] No existing commands found in stream
[2026-08-25 18:43:08,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:43:08,441.441 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 18:43:09,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:43:09,689.689 INFO    ] Checking for system updates...
[2026-08-25 18:43:09,726.726 INFO    ] 200
[2026-08-25 18:43:09,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:09,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:09,793.793 INFO    ] No update needed
[2026-08-25 18:43:09,795.795 INFO    ] Checking for camera pi updates...
[2026-08-25 18:43:09,834.834 INFO    ] 200
[2026-08-25 18:43:09,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:09,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:43:09,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:09,939.939 INFO    ] No camera update needed
[2026-08-25 18:43:09,942.942 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:43:09,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:43:09,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:43:09,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:43:12,996.996 INFO    ] ================================================
[2026-08-25 18:43:12,012.012 INFO    ] Launching Daemon at Tue Aug 25 18:43:12 IST 2026
[2026-08-25 18:43:12,023.023 INFO    ] ================================================
[2026-08-25 18:43:12,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:43:12
[2026-08-25 18:43:13,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:43:13,440.440 INFO    ] Initializing speech engine...
[2026-08-25 18:43:13,450.450 INFO    ] 2026-08-25 18:43:13
[2026-08-25 18:43:13,695.695 INFO    ] 2026-08-25 18:43:13
[2026-08-25 18:43:13,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:43:13,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:43:13,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:43:14,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:43:14,176.176 INFO    ] time= 25/08/2026 18:43:14
[2026-08-25 18:43:14,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:43:14,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:43:14,380.380 INFO    ] No existing commands found in stream
[2026-08-25 18:43:19,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:43:19,408.408 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 18:43:20,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:43:20,611.611 INFO    ] Checking for system updates...
[2026-08-25 18:43:20,647.647 INFO    ] 200
[2026-08-25 18:43:20,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:20,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:20,719.719 INFO    ] No update needed
[2026-08-25 18:43:20,721.721 INFO    ] Checking for camera pi updates...
[2026-08-25 18:43:20,755.755 INFO    ] 200
[2026-08-25 18:43:20,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:20,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:43:20,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:20,944.944 INFO    ] No camera update needed
[2026-08-25 18:43:20,947.947 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:43:20,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:43:20,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:43:20,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:43:23,002.002 INFO    ] ================================================
[2026-08-25 18:43:23,018.018 INFO    ] Launching Daemon at Tue Aug 25 18:43:23 IST 2026
[2026-08-25 18:43:23,028.028 INFO    ] ================================================
[2026-08-25 18:43:23,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:43:23
[2026-08-25 18:43:24,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:43:24,432.432 INFO    ] Initializing speech engine...
[2026-08-25 18:43:24,450.450 INFO    ] 2026-08-25 18:43:24
[2026-08-25 18:43:24,702.702 INFO    ] 2026-08-25 18:43:24
[2026-08-25 18:43:24,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:43:24,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:43:24,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:43:25,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:43:25,184.184 INFO    ] time= 25/08/2026 18:43:25
[2026-08-25 18:43:25,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:43:25,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:43:25,393.393 INFO    ] No existing commands found in stream
[2026-08-25 18:43:30,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:43:30,417.417 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 18:43:32,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:43:32,803.803 INFO    ] Checking for system updates...
[2026-08-25 18:43:32,843.843 INFO    ] 200
[2026-08-25 18:43:32,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:32,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:32,900.900 INFO    ] No update needed
[2026-08-25 18:43:32,902.902 INFO    ] Checking for camera pi updates...
[2026-08-25 18:43:32,936.936 INFO    ] 200
[2026-08-25 18:43:32,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:32,980.980 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:43:33,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:33,040.040 INFO    ] No camera update needed
[2026-08-25 18:43:33,042.042 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:43:33,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:43:33,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:43:33,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:43:35,095.095 INFO    ] ================================================
[2026-08-25 18:43:35,111.111 INFO    ] Launching Daemon at Tue Aug 25 18:43:35 IST 2026
[2026-08-25 18:43:35,122.122 INFO    ] ================================================
[2026-08-25 18:43:35,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:43:35
[2026-08-25 18:43:36,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:43:36,566.566 INFO    ] Initializing speech engine...
[2026-08-25 18:43:36,582.582 INFO    ] 2026-08-25 18:43:36
[2026-08-25 18:43:36,855.855 INFO    ] 2026-08-25 18:43:36
[2026-08-25 18:43:36,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:43:37,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:43:37,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:43:37,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:43:37,280.280 INFO    ] time= 25/08/2026 18:43:37
[2026-08-25 18:43:37,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:43:37,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:43:37,369.369 INFO    ] No existing commands found in stream
[2026-08-25 18:43:42,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:43:42,391.391 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 18:43:44,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:43:44,927.927 INFO    ] Checking for system updates...
[2026-08-25 18:43:44,963.963 INFO    ] 200
[2026-08-25 18:43:44,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:45,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:43:45,024.024 INFO    ] No update needed
[2026-08-25 18:43:45,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 18:43:45,061.061 INFO    ] 200
[2026-08-25 18:43:45,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:45,105.105 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:43:45,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:43:45,164.164 INFO    ] No camera update needed
[2026-08-25 18:43:45,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:43:45,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:43:45,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:43:45,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:43:47,221.221 INFO    ] ================================================
[2026-08-25 18:43:47,236.236 INFO    ] Launching Daemon at Tue Aug 25 18:43:47 IST 2026
[2026-08-25 18:43:47,246.246 INFO    ] ================================================
[2026-08-25 18:43:47,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:43:47
[2026-08-25 18:43:48,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:43:48,713.713 INFO    ] Initializing speech engine...
[2026-08-25 18:43:48,720.720 INFO    ] 2026-08-25 18:43:48
[2026-08-25 18:43:48,979.979 INFO    ] 2026-08-25 18:43:48
[2026-08-25 18:43:49,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:43:49,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:43:49,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:43:49,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:43:49,442.442 INFO    ] time= 25/08/2026 18:43:49
[2026-08-25 18:43:49,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:43:49,530.530 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:43:49,662.662 INFO    ] No existing commands found in stream
[2026-08-25 18:43:54,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:43:54,687.687 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 18:43:57,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:43:57,047.047 INFO    ] Checking for system updates...
[2026-08-25 18:43:57,083.083 INFO    ] 200
[2026-08-25 18:43:57,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:57,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:57,141.141 INFO    ] No update needed
[2026-08-25 18:43:57,144.144 INFO    ] Checking for camera pi updates...
[2026-08-25 18:43:57,178.178 INFO    ] 200
[2026-08-25 18:43:57,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:43:57,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:43:57,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:43:57,270.270 INFO    ] No camera update needed
[2026-08-25 18:43:57,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:43:57,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:43:57,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:43:57,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:43:59,327.327 INFO    ] ================================================
[2026-08-25 18:43:59,342.342 INFO    ] Launching Daemon at Tue Aug 25 18:43:59 IST 2026
[2026-08-25 18:43:59,353.353 INFO    ] ================================================
[2026-08-25 18:43:59,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:43:59
[2026-08-25 18:44:00,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:44:00,754.754 INFO    ] Initializing speech engine...
[2026-08-25 18:44:00,762.762 INFO    ] 2026-08-25 18:44:00
[2026-08-25 18:44:01,059.059 INFO    ] 2026-08-25 18:44:01
[2026-08-25 18:44:01,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:44:01,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:44:01,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:44:01,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:44:01,444.444 INFO    ] time= 25/08/2026 18:44:01
[2026-08-25 18:44:01,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:44:01,505.505 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:44:01,581.581 INFO    ] No existing commands found in stream
[2026-08-25 18:44:06,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:44:06,595.595 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 18:44:07,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:44:07,638.638 INFO    ] Checking for system updates...
[2026-08-25 18:44:07,677.677 INFO    ] 200
[2026-08-25 18:44:07,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:07,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:44:07,736.736 INFO    ] No update needed
[2026-08-25 18:44:07,738.738 INFO    ] Checking for camera pi updates...
[2026-08-25 18:44:07,779.779 INFO    ] 200
[2026-08-25 18:44:07,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:07,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:44:07,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:44:07,885.885 INFO    ] No camera update needed
[2026-08-25 18:44:07,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:44:07,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:44:07,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:44:07,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:44:09,941.941 INFO    ] ================================================
[2026-08-25 18:44:09,956.956 INFO    ] Launching Daemon at Tue Aug 25 18:44:09 IST 2026
[2026-08-25 18:44:09,966.966 INFO    ] ================================================
[2026-08-25 18:44:10,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:44:10
[2026-08-25 18:44:11,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:44:11,420.420 INFO    ] Initializing speech engine...
[2026-08-25 18:44:11,429.429 INFO    ] 2026-08-25 18:44:11
[2026-08-25 18:44:11,689.689 INFO    ] 2026-08-25 18:44:11
[2026-08-25 18:44:11,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:44:11,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:44:11,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:44:12,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:44:12,133.133 INFO    ] time= 25/08/2026 18:44:12
[2026-08-25 18:44:12,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:44:12,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:44:12,391.391 INFO    ] No existing commands found in stream
[2026-08-25 18:44:17,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:44:17,407.407 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 18:44:19,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:44:19,277.277 INFO    ] Checking for system updates...
[2026-08-25 18:44:19,312.312 INFO    ] 200
[2026-08-25 18:44:19,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:19,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:19,370.370 INFO    ] No update needed
[2026-08-25 18:44:19,372.372 INFO    ] Checking for camera pi updates...
[2026-08-25 18:44:19,405.405 INFO    ] 200
[2026-08-25 18:44:19,408.408 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:19,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:44:19,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:19,508.508 INFO    ] No camera update needed
[2026-08-25 18:44:19,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:44:19,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:44:19,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:44:19,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:44:21,564.564 INFO    ] ================================================
[2026-08-25 18:44:21,579.579 INFO    ] Launching Daemon at Tue Aug 25 18:44:21 IST 2026
[2026-08-25 18:44:21,590.590 INFO    ] ================================================
[2026-08-25 18:44:22,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:44:22
[2026-08-25 18:44:22,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:44:23,061.061 INFO    ] Initializing speech engine...
[2026-08-25 18:44:23,074.074 INFO    ] 2026-08-25 18:44:23
[2026-08-25 18:44:23,380.380 INFO    ] 2026-08-25 18:44:23
[2026-08-25 18:44:23,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:44:23,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:44:23,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:44:23,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:44:23,906.906 INFO    ] time= 25/08/2026 18:44:23
[2026-08-25 18:44:23,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:44:23,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:44:24,057.057 INFO    ] No existing commands found in stream
[2026-08-25 18:44:29,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:44:29,085.085 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 18:44:30,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:44:30,311.311 INFO    ] Checking for system updates...
[2026-08-25 18:44:30,346.346 INFO    ] 200
[2026-08-25 18:44:30,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:30,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:30,403.403 INFO    ] No update needed
[2026-08-25 18:44:30,405.405 INFO    ] Checking for camera pi updates...
[2026-08-25 18:44:30,439.439 INFO    ] 200
[2026-08-25 18:44:30,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:30,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:44:30,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:30,528.528 INFO    ] No camera update needed
[2026-08-25 18:44:30,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:44:30,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:44:30,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:44:30,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:44:32,589.589 INFO    ] ================================================
[2026-08-25 18:44:32,606.606 INFO    ] Launching Daemon at Tue Aug 25 18:44:32 IST 2026
[2026-08-25 18:44:32,618.618 INFO    ] ================================================
[2026-08-25 18:44:33,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:44:33
[2026-08-25 18:44:33,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:44:34,052.052 INFO    ] Initializing speech engine...
[2026-08-25 18:44:34,058.058 INFO    ] 2026-08-25 18:44:34
[2026-08-25 18:44:34,354.354 INFO    ] 2026-08-25 18:44:34
[2026-08-25 18:44:34,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:44:34,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:44:34,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:44:34,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:44:34,775.775 INFO    ] time= 25/08/2026 18:44:34
[2026-08-25 18:44:34,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:44:34,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:44:34,957.957 INFO    ] No existing commands found in stream
[2026-08-25 18:44:39,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:44:39,985.985 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 18:44:41,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:44:41,353.353 INFO    ] Checking for system updates...
[2026-08-25 18:44:41,392.392 INFO    ] 200
[2026-08-25 18:44:41,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:41,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:41,456.456 INFO    ] No update needed
[2026-08-25 18:44:41,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 18:44:41,492.492 INFO    ] 200
[2026-08-25 18:44:41,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:41,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:44:41,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:41,595.595 INFO    ] No camera update needed
[2026-08-25 18:44:41,598.598 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:44:41,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:44:41,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:44:41,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:44:43,649.649 INFO    ] ================================================
[2026-08-25 18:44:43,664.664 INFO    ] Launching Daemon at Tue Aug 25 18:44:43 IST 2026
[2026-08-25 18:44:43,675.675 INFO    ] ================================================
[2026-08-25 18:44:44,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:44:44
[2026-08-25 18:44:44,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:44:45,094.094 INFO    ] Initializing speech engine...
[2026-08-25 18:44:45,108.108 INFO    ] 2026-08-25 18:44:45
[2026-08-25 18:44:45,353.353 INFO    ] 2026-08-25 18:44:45
[2026-08-25 18:44:45,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:44:45,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:44:45,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:44:45,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:44:45,858.858 INFO    ] time= 25/08/2026 18:44:45
[2026-08-25 18:44:45,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:44:45,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:44:46,046.046 INFO    ] No existing commands found in stream
[2026-08-25 18:44:51,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:44:51,079.079 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 18:44:54,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:44:54,421.421 INFO    ] Checking for system updates...
[2026-08-25 18:44:54,457.457 INFO    ] 200
[2026-08-25 18:44:54,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:54,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:54,516.516 INFO    ] No update needed
[2026-08-25 18:44:54,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 18:44:54,551.551 INFO    ] 200
[2026-08-25 18:44:54,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:44:54,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:44:54,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:44:54,653.653 INFO    ] No camera update needed
[2026-08-25 18:44:54,655.655 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:44:54,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:44:54,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:44:54,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:44:56,710.710 INFO    ] ================================================
[2026-08-25 18:44:56,725.725 INFO    ] Launching Daemon at Tue Aug 25 18:44:56 IST 2026
[2026-08-25 18:44:56,736.736 INFO    ] ================================================
[2026-08-25 18:44:57,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:44:57
[2026-08-25 18:44:58,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:44:58,318.318 INFO    ] Initializing speech engine...
[2026-08-25 18:44:58,332.332 INFO    ] 2026-08-25 18:44:58
[2026-08-25 18:44:58,641.641 INFO    ] 2026-08-25 18:44:58
[2026-08-25 18:44:58,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:44:58,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:44:58,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:44:59,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:44:59,149.149 INFO    ] time= 25/08/2026 18:44:59
[2026-08-25 18:44:59,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:44:59,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:44:59,303.303 INFO    ] No existing commands found in stream
[2026-08-25 18:45:04,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:45:04,327.327 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 18:45:08,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:45:08,755.755 INFO    ] Checking for system updates...
[2026-08-25 18:45:08,792.792 INFO    ] 200
[2026-08-25 18:45:08,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:08,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:45:08,852.852 INFO    ] No update needed
[2026-08-25 18:45:08,855.855 INFO    ] Checking for camera pi updates...
[2026-08-25 18:45:08,891.891 INFO    ] 200
[2026-08-25 18:45:08,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:08,937.937 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:45:08,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:45:08,989.989 INFO    ] No camera update needed
[2026-08-25 18:45:08,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:45:08,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:45:08,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:45:09,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:45:11,044.044 INFO    ] ================================================
[2026-08-25 18:45:11,059.059 INFO    ] Launching Daemon at Tue Aug 25 18:45:11 IST 2026
[2026-08-25 18:45:11,069.069 INFO    ] ================================================
[2026-08-25 18:45:11,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:45:11
[2026-08-25 18:45:12,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:45:12,505.505 INFO    ] Initializing speech engine...
[2026-08-25 18:45:12,514.514 INFO    ] 2026-08-25 18:45:12
[2026-08-25 18:45:12,777.777 INFO    ] 2026-08-25 18:45:12
[2026-08-25 18:45:12,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:45:13,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:45:13,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:45:13,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:45:13,317.317 INFO    ] time= 25/08/2026 18:45:13
[2026-08-25 18:45:13,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:45:13,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:45:13,478.478 INFO    ] No existing commands found in stream
[2026-08-25 18:45:18,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:45:18,508.508 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 18:45:21,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:45:21,879.879 INFO    ] Checking for system updates...
[2026-08-25 18:45:21,918.918 INFO    ] 200
[2026-08-25 18:45:21,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:21,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:21,981.981 INFO    ] No update needed
[2026-08-25 18:45:21,984.984 INFO    ] Checking for camera pi updates...
[2026-08-25 18:45:22,018.018 INFO    ] 200
[2026-08-25 18:45:22,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:22,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:45:22,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:22,219.219 INFO    ] No camera update needed
[2026-08-25 18:45:22,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:45:22,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:45:22,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:45:22,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:45:24,276.276 INFO    ] ================================================
[2026-08-25 18:45:24,291.291 INFO    ] Launching Daemon at Tue Aug 25 18:45:24 IST 2026
[2026-08-25 18:45:24,302.302 INFO    ] ================================================
[2026-08-25 18:45:24,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:45:24
[2026-08-25 18:45:25,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:45:25,769.769 INFO    ] Initializing speech engine...
[2026-08-25 18:45:25,784.784 INFO    ] 2026-08-25 18:45:25
[2026-08-25 18:45:26,045.045 INFO    ] 2026-08-25 18:45:26
[2026-08-25 18:45:26,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:45:26,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:45:26,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:45:26,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:45:26,449.449 INFO    ] time= 25/08/2026 18:45:26
[2026-08-25 18:45:26,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:45:26,498.498 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:45:26,652.652 INFO    ] No existing commands found in stream
[2026-08-25 18:45:31,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:45:31,667.667 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 18:45:33,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:45:33,768.768 INFO    ] Checking for system updates...
[2026-08-25 18:45:33,809.809 INFO    ] 200
[2026-08-25 18:45:33,811.811 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:33,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:33,867.867 INFO    ] No update needed
[2026-08-25 18:45:33,869.869 INFO    ] Checking for camera pi updates...
[2026-08-25 18:45:33,903.903 INFO    ] 200
[2026-08-25 18:45:33,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:33,950.950 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:45:34,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:34,010.010 INFO    ] No camera update needed
[2026-08-25 18:45:34,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:45:34,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:45:34,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:45:34,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:45:36,066.066 INFO    ] ================================================
[2026-08-25 18:45:36,081.081 INFO    ] Launching Daemon at Tue Aug 25 18:45:36 IST 2026
[2026-08-25 18:45:36,092.092 INFO    ] ================================================
[2026-08-25 18:45:36,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:45:36
[2026-08-25 18:45:37,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:45:37,497.497 INFO    ] Initializing speech engine...
[2026-08-25 18:45:37,503.503 INFO    ] 2026-08-25 18:45:37
[2026-08-25 18:45:37,800.800 INFO    ] 2026-08-25 18:45:37
[2026-08-25 18:45:37,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:45:38,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:45:38,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:45:38,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:45:38,198.198 INFO    ] time= 25/08/2026 18:45:38
[2026-08-25 18:45:38,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:45:38,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:45:38,293.293 INFO    ] No existing commands found in stream
[2026-08-25 18:45:43,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:45:43,326.326 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-08-25 18:45:46,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:45:46,398.398 INFO    ] Checking for system updates...
[2026-08-25 18:45:46,438.438 INFO    ] 200
[2026-08-25 18:45:46,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:46,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:46,496.496 INFO    ] No update needed
[2026-08-25 18:45:46,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 18:45:46,536.536 INFO    ] 200
[2026-08-25 18:45:46,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:46,578.578 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:45:46,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:46,637.637 INFO    ] No camera update needed
[2026-08-25 18:45:46,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:45:46,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:45:46,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:45:46,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:45:48,692.692 INFO    ] ================================================
[2026-08-25 18:45:48,707.707 INFO    ] Launching Daemon at Tue Aug 25 18:45:48 IST 2026
[2026-08-25 18:45:48,718.718 INFO    ] ================================================
[2026-08-25 18:45:49,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:45:49
[2026-08-25 18:45:49,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:45:50,145.145 INFO    ] Initializing speech engine...
[2026-08-25 18:45:50,153.153 INFO    ] 2026-08-25 18:45:50
[2026-08-25 18:45:50,401.401 INFO    ] 2026-08-25 18:45:50
[2026-08-25 18:45:50,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:45:50,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:45:50,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:45:50,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:45:50,894.894 INFO    ] time= 25/08/2026 18:45:50
[2026-08-25 18:45:50,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:45:50,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:45:51,098.098 INFO    ] No existing commands found in stream
[2026-08-25 18:45:56,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:45:56,123.123 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 18:45:58,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:45:58,229.229 INFO    ] Checking for system updates...
[2026-08-25 18:45:58,265.265 INFO    ] 200
[2026-08-25 18:45:58,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:58,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:58,323.323 INFO    ] No update needed
[2026-08-25 18:45:58,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 18:45:58,363.363 INFO    ] 200
[2026-08-25 18:45:58,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:45:58,407.407 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:45:58,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:45:58,460.460 INFO    ] No camera update needed
[2026-08-25 18:45:58,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:45:58,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:45:58,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:45:58,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:46:00,516.516 INFO    ] ================================================
[2026-08-25 18:46:00,531.531 INFO    ] Launching Daemon at Tue Aug 25 18:46:00 IST 2026
[2026-08-25 18:46:00,542.542 INFO    ] ================================================
[2026-08-25 18:46:01,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:46:01
[2026-08-25 18:46:01,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:46:02,160.160 INFO    ] Initializing speech engine...
[2026-08-25 18:46:02,163.163 INFO    ] 2026-08-25 18:46:02
[2026-08-25 18:46:02,552.552 INFO    ] 2026-08-25 18:46:02
[2026-08-25 18:46:02,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:46:02,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:46:02,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:46:03,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:46:03,037.037 INFO    ] time= 25/08/2026 18:46:03
[2026-08-25 18:46:03,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:46:03,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:46:03,309.309 INFO    ] No existing commands found in stream
[2026-08-25 18:46:08,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:46:08,344.344 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 18:46:12,360.360 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:46:12,363.363 INFO    ] Checking for system updates...
[2026-08-25 18:46:12,401.401 INFO    ] 200
[2026-08-25 18:46:12,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:12,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:46:12,464.464 INFO    ] No update needed
[2026-08-25 18:46:12,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 18:46:12,504.504 INFO    ] 200
[2026-08-25 18:46:12,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:12,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:46:12,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:46:12,606.606 INFO    ] No camera update needed
[2026-08-25 18:46:12,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:46:12,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:46:12,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:46:12,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:46:14,664.664 INFO    ] ================================================
[2026-08-25 18:46:14,679.679 INFO    ] Launching Daemon at Tue Aug 25 18:46:14 IST 2026
[2026-08-25 18:46:14,689.689 INFO    ] ================================================
[2026-08-25 18:46:15,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:46:15
[2026-08-25 18:46:15,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:46:16,116.116 INFO    ] Initializing speech engine...
[2026-08-25 18:46:16,123.123 INFO    ] 2026-08-25 18:46:16
[2026-08-25 18:46:16,371.371 INFO    ] 2026-08-25 18:46:16
[2026-08-25 18:46:16,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:46:16,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:46:16,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:46:16,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:46:16,754.754 INFO    ] time= 25/08/2026 18:46:16
[2026-08-25 18:46:16,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:46:16,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:46:16,866.866 INFO    ] No existing commands found in stream
[2026-08-25 18:46:21,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:46:21,881.881 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 18:46:24,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:46:24,276.276 INFO    ] Checking for system updates...
[2026-08-25 18:46:24,315.315 INFO    ] 200
[2026-08-25 18:46:24,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:24,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:46:24,373.373 INFO    ] No update needed
[2026-08-25 18:46:24,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 18:46:24,412.412 INFO    ] 200
[2026-08-25 18:46:24,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:24,456.456 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:46:24,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:46:24,507.507 INFO    ] No camera update needed
[2026-08-25 18:46:24,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:46:24,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:46:24,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:46:24,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:46:26,561.561 INFO    ] ================================================
[2026-08-25 18:46:26,576.576 INFO    ] Launching Daemon at Tue Aug 25 18:46:26 IST 2026
[2026-08-25 18:46:26,587.587 INFO    ] ================================================
[2026-08-25 18:46:27,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:46:27
[2026-08-25 18:46:27,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:46:28,084.084 INFO    ] Initializing speech engine...
[2026-08-25 18:46:28,098.098 INFO    ] 2026-08-25 18:46:28
[2026-08-25 18:46:28,361.361 INFO    ] 2026-08-25 18:46:28
[2026-08-25 18:46:28,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:46:28,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:46:28,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:46:28,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:46:28,859.859 INFO    ] time= 25/08/2026 18:46:28
[2026-08-25 18:46:28,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:46:28,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:46:29,066.066 INFO    ] No existing commands found in stream
[2026-08-25 18:46:34,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:46:34,093.093 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 18:46:35,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:46:35,453.453 INFO    ] Checking for system updates...
[2026-08-25 18:46:35,489.489 INFO    ] 200
[2026-08-25 18:46:35,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:35,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:46:35,552.552 INFO    ] No update needed
[2026-08-25 18:46:35,554.554 INFO    ] Checking for camera pi updates...
[2026-08-25 18:46:35,588.588 INFO    ] 200
[2026-08-25 18:46:35,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:35,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:46:35,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:46:35,689.689 INFO    ] No camera update needed
[2026-08-25 18:46:35,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:46:35,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:46:35,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:46:35,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:46:37,746.746 INFO    ] ================================================
[2026-08-25 18:46:37,761.761 INFO    ] Launching Daemon at Tue Aug 25 18:46:37 IST 2026
[2026-08-25 18:46:37,772.772 INFO    ] ================================================
[2026-08-25 18:46:38,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:46:38
[2026-08-25 18:46:39,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:46:39,389.389 INFO    ] Initializing speech engine...
[2026-08-25 18:46:39,401.401 INFO    ] 2026-08-25 18:46:39
[2026-08-25 18:46:39,707.707 INFO    ] 2026-08-25 18:46:39
[2026-08-25 18:46:39,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:46:39,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:46:39,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:46:40,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:46:40,212.212 INFO    ] time= 25/08/2026 18:46:40
[2026-08-25 18:46:40,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:46:40,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:46:40,362.362 INFO    ] No existing commands found in stream
[2026-08-25 18:46:45,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:46:45,379.379 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 18:46:49,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:46:49,859.859 INFO    ] Checking for system updates...
[2026-08-25 18:46:49,898.898 INFO    ] 200
[2026-08-25 18:46:49,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:49,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:46:49,957.957 INFO    ] No update needed
[2026-08-25 18:46:49,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 18:46:49,996.996 INFO    ] 200
[2026-08-25 18:46:49,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:46:50,043.043 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:46:50,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:46:50,105.105 INFO    ] No camera update needed
[2026-08-25 18:46:50,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:46:50,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:46:50,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:46:50,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:46:52,159.159 INFO    ] ================================================
[2026-08-25 18:46:52,174.174 INFO    ] Launching Daemon at Tue Aug 25 18:46:52 IST 2026
[2026-08-25 18:46:52,185.185 INFO    ] ================================================
[2026-08-25 18:46:52,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:46:52
[2026-08-25 18:46:53,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:46:53,595.595 INFO    ] Initializing speech engine...
[2026-08-25 18:46:53,620.620 INFO    ] 2026-08-25 18:46:53
[2026-08-25 18:46:53,892.892 INFO    ] 2026-08-25 18:46:53
[2026-08-25 18:46:53,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:46:54,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:46:54,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:46:54,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:46:54,312.312 INFO    ] time= 25/08/2026 18:46:54
[2026-08-25 18:46:54,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:46:54,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:46:54,472.472 INFO    ] No existing commands found in stream
[2026-08-25 18:46:59,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:46:59,504.504 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 18:47:03,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:47:03,557.557 INFO    ] Checking for system updates...
[2026-08-25 18:47:03,595.595 INFO    ] 200
[2026-08-25 18:47:03,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:03,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:03,656.656 INFO    ] No update needed
[2026-08-25 18:47:03,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 18:47:03,700.700 INFO    ] 200
[2026-08-25 18:47:03,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:03,747.747 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:47:03,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:03,795.795 INFO    ] No camera update needed
[2026-08-25 18:47:03,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:47:03,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:47:03,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:47:03,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:47:05,851.851 INFO    ] ================================================
[2026-08-25 18:47:05,867.867 INFO    ] Launching Daemon at Tue Aug 25 18:47:05 IST 2026
[2026-08-25 18:47:05,877.877 INFO    ] ================================================
[2026-08-25 18:47:06,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:47:06
[2026-08-25 18:47:07,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:47:07,455.455 INFO    ] Initializing speech engine...
[2026-08-25 18:47:07,466.466 INFO    ] 2026-08-25 18:47:07
[2026-08-25 18:47:07,780.780 INFO    ] 2026-08-25 18:47:07
[2026-08-25 18:47:07,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:47:08,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:47:08,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:47:08,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:47:08,303.303 INFO    ] time= 25/08/2026 18:47:08
[2026-08-25 18:47:08,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:47:08,340.340 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:47:08,448.448 INFO    ] No existing commands found in stream
[2026-08-25 18:47:13,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:47:13,480.480 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 18:47:15,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:47:15,276.276 INFO    ] Checking for system updates...
[2026-08-25 18:47:15,312.312 INFO    ] 200
[2026-08-25 18:47:15,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:15,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:47:15,379.379 INFO    ] No update needed
[2026-08-25 18:47:15,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 18:47:15,420.420 INFO    ] 200
[2026-08-25 18:47:15,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:15,474.474 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:47:15,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:47:15,522.522 INFO    ] No camera update needed
[2026-08-25 18:47:15,525.525 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:47:15,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:47:15,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:47:15,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:47:17,579.579 INFO    ] ================================================
[2026-08-25 18:47:17,594.594 INFO    ] Launching Daemon at Tue Aug 25 18:47:17 IST 2026
[2026-08-25 18:47:17,605.605 INFO    ] ================================================
[2026-08-25 18:47:18,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:47:18
[2026-08-25 18:47:18,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:47:19,023.023 INFO    ] Initializing speech engine...
[2026-08-25 18:47:19,031.031 INFO    ] 2026-08-25 18:47:19
[2026-08-25 18:47:19,282.282 INFO    ] 2026-08-25 18:47:19
[2026-08-25 18:47:19,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:47:19,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:47:19,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:47:19,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:47:19,758.758 INFO    ] time= 25/08/2026 18:47:19
[2026-08-25 18:47:19,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:47:19,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:47:19,995.995 INFO    ] No existing commands found in stream
[2026-08-25 18:47:25,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:47:25,020.020 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 18:47:28,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:47:28,588.588 INFO    ] Checking for system updates...
[2026-08-25 18:47:28,624.624 INFO    ] 200
[2026-08-25 18:47:28,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:28,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:28,688.688 INFO    ] No update needed
[2026-08-25 18:47:28,691.691 INFO    ] Checking for camera pi updates...
[2026-08-25 18:47:28,728.728 INFO    ] 200
[2026-08-25 18:47:28,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:28,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:47:28,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:28,930.930 INFO    ] No camera update needed
[2026-08-25 18:47:28,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:47:28,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:47:28,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:47:28,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:47:30,984.984 INFO    ] ================================================
[2026-08-25 18:47:31,999.999 INFO    ] Launching Daemon at Tue Aug 25 18:47:30 IST 2026
[2026-08-25 18:47:31,009.009 INFO    ] ================================================
[2026-08-25 18:47:31,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:47:31
[2026-08-25 18:47:32,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:47:32,493.493 INFO    ] Initializing speech engine...
[2026-08-25 18:47:32,507.507 INFO    ] 2026-08-25 18:47:32
[2026-08-25 18:47:32,781.781 INFO    ] 2026-08-25 18:47:32
[2026-08-25 18:47:32,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:47:33,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:47:33,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:47:33,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:47:33,269.269 INFO    ] time= 25/08/2026 18:47:33
[2026-08-25 18:47:33,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:47:33,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:47:33,467.467 INFO    ] No existing commands found in stream
[2026-08-25 18:47:38,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:47:38,506.506 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 18:47:41,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:47:41,934.934 INFO    ] Checking for system updates...
[2026-08-25 18:47:41,973.973 INFO    ] 200
[2026-08-25 18:47:41,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:42,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:42,032.032 INFO    ] No update needed
[2026-08-25 18:47:42,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 18:47:42,068.068 INFO    ] 200
[2026-08-25 18:47:42,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:42,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:47:42,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:42,164.164 INFO    ] No camera update needed
[2026-08-25 18:47:42,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:47:42,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:47:42,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:47:42,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:47:44,221.221 INFO    ] ================================================
[2026-08-25 18:47:44,236.236 INFO    ] Launching Daemon at Tue Aug 25 18:47:44 IST 2026
[2026-08-25 18:47:44,246.246 INFO    ] ================================================
[2026-08-25 18:47:44,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:47:44
[2026-08-25 18:47:45,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:47:45,645.645 INFO    ] Initializing speech engine...
[2026-08-25 18:47:45,668.668 INFO    ] 2026-08-25 18:47:45
[2026-08-25 18:47:45,925.925 INFO    ] 2026-08-25 18:47:45
[2026-08-25 18:47:45,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:47:46,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:47:46,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:47:46,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:47:46,411.411 INFO    ] time= 25/08/2026 18:47:46
[2026-08-25 18:47:46,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:47:46,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:47:46,625.625 INFO    ] No existing commands found in stream
[2026-08-25 18:47:51,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:47:51,659.659 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 18:47:52,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:47:52,252.252 INFO    ] Checking for system updates...
[2026-08-25 18:47:52,288.288 INFO    ] 200
[2026-08-25 18:47:52,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:52,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:52,345.345 INFO    ] No update needed
[2026-08-25 18:47:52,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 18:47:52,380.380 INFO    ] 200
[2026-08-25 18:47:52,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:47:52,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:47:52,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:47:52,475.475 INFO    ] No camera update needed
[2026-08-25 18:47:52,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:47:52,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:47:52,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:47:52,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:47:54,531.531 INFO    ] ================================================
[2026-08-25 18:47:54,546.546 INFO    ] Launching Daemon at Tue Aug 25 18:47:54 IST 2026
[2026-08-25 18:47:54,556.556 INFO    ] ================================================
[2026-08-25 18:47:55,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:47:55
[2026-08-25 18:47:55,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:47:55,956.956 INFO    ] Initializing speech engine...
[2026-08-25 18:47:55,962.962 INFO    ] 2026-08-25 18:47:55
[2026-08-25 18:47:56,237.237 INFO    ] 2026-08-25 18:47:56
[2026-08-25 18:47:56,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:47:56,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:47:56,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:47:56,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:47:56,742.742 INFO    ] time= 25/08/2026 18:47:56
[2026-08-25 18:47:56,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:47:56,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:47:56,906.906 INFO    ] No existing commands found in stream
[2026-08-25 18:48:01,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:48:01,950.950 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 18:48:04,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:48:04,085.085 INFO    ] Checking for system updates...
[2026-08-25 18:48:04,124.124 INFO    ] 200
[2026-08-25 18:48:04,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:04,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:04,189.189 INFO    ] No update needed
[2026-08-25 18:48:04,191.191 INFO    ] Checking for camera pi updates...
[2026-08-25 18:48:04,228.228 INFO    ] 200
[2026-08-25 18:48:04,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:04,272.272 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:48:04,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:04,320.320 INFO    ] No camera update needed
[2026-08-25 18:48:04,322.322 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:48:04,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:48:04,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:48:04,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:48:06,377.377 INFO    ] ================================================
[2026-08-25 18:48:06,391.391 INFO    ] Launching Daemon at Tue Aug 25 18:48:06 IST 2026
[2026-08-25 18:48:06,402.402 INFO    ] ================================================
[2026-08-25 18:48:06,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:48:06
[2026-08-25 18:48:07,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:48:07,856.856 INFO    ] Initializing speech engine...
[2026-08-25 18:48:07,880.880 INFO    ] 2026-08-25 18:48:07
[2026-08-25 18:48:08,148.148 INFO    ] 2026-08-25 18:48:08
[2026-08-25 18:48:08,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:48:08,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:48:08,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:48:08,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:48:08,557.557 INFO    ] time= 25/08/2026 18:48:08
[2026-08-25 18:48:08,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:48:08,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:48:08,743.743 INFO    ] No existing commands found in stream
[2026-08-25 18:48:13,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:48:13,776.776 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 18:48:17,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:48:17,164.164 INFO    ] Checking for system updates...
[2026-08-25 18:48:17,201.201 INFO    ] 200
[2026-08-25 18:48:17,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:17,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:17,263.263 INFO    ] No update needed
[2026-08-25 18:48:17,266.266 INFO    ] Checking for camera pi updates...
[2026-08-25 18:48:17,300.300 INFO    ] 200
[2026-08-25 18:48:17,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:17,346.346 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:48:17,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:17,402.402 INFO    ] No camera update needed
[2026-08-25 18:48:17,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:48:17,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:48:17,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:48:17,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:48:19,457.457 INFO    ] ================================================
[2026-08-25 18:48:19,473.473 INFO    ] Launching Daemon at Tue Aug 25 18:48:19 IST 2026
[2026-08-25 18:48:19,484.484 INFO    ] ================================================
[2026-08-25 18:48:20,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:48:20
[2026-08-25 18:48:20,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:48:21,073.073 INFO    ] Initializing speech engine...
[2026-08-25 18:48:21,084.084 INFO    ] 2026-08-25 18:48:21
[2026-08-25 18:48:21,370.370 INFO    ] 2026-08-25 18:48:21
[2026-08-25 18:48:21,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:48:21,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:48:21,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:48:21,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:48:21,921.921 INFO    ] time= 25/08/2026 18:48:21
[2026-08-25 18:48:21,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:48:21,961.961 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:48:22,068.068 INFO    ] No existing commands found in stream
[2026-08-25 18:48:27,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:48:27,100.100 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 18:48:31,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:48:31,388.388 INFO    ] Checking for system updates...
[2026-08-25 18:48:31,427.427 INFO    ] 200
[2026-08-25 18:48:31,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:31,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:31,491.491 INFO    ] No update needed
[2026-08-25 18:48:31,494.494 INFO    ] Checking for camera pi updates...
[2026-08-25 18:48:31,531.531 INFO    ] 200
[2026-08-25 18:48:31,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:31,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:48:31,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:31,637.637 INFO    ] No camera update needed
[2026-08-25 18:48:31,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:48:31,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:48:31,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:48:31,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:48:33,696.696 INFO    ] ================================================
[2026-08-25 18:48:33,712.712 INFO    ] Launching Daemon at Tue Aug 25 18:48:33 IST 2026
[2026-08-25 18:48:33,723.723 INFO    ] ================================================
[2026-08-25 18:48:34,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:48:34
[2026-08-25 18:48:34,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:48:35,136.136 INFO    ] Initializing speech engine...
[2026-08-25 18:48:35,142.142 INFO    ] 2026-08-25 18:48:35
[2026-08-25 18:48:35,429.429 INFO    ] 2026-08-25 18:48:35
[2026-08-25 18:48:35,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:48:35,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:48:35,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:48:35,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:48:35,829.829 INFO    ] time= 25/08/2026 18:48:35
[2026-08-25 18:48:35,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:48:35,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:48:36,024.024 INFO    ] No existing commands found in stream
[2026-08-25 18:48:41,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:48:41,057.057 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 18:48:42,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:48:42,812.812 INFO    ] Checking for system updates...
[2026-08-25 18:48:42,850.850 INFO    ] 200
[2026-08-25 18:48:42,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:42,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:42,917.917 INFO    ] No update needed
[2026-08-25 18:48:42,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 18:48:42,959.959 INFO    ] 200
[2026-08-25 18:48:42,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:43,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:48:43,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:48:43,062.062 INFO    ] No camera update needed
[2026-08-25 18:48:43,065.065 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:48:43,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:48:43,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:48:43,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:48:45,123.123 INFO    ] ================================================
[2026-08-25 18:48:45,140.140 INFO    ] Launching Daemon at Tue Aug 25 18:48:45 IST 2026
[2026-08-25 18:48:45,152.152 INFO    ] ================================================
[2026-08-25 18:48:45,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:48:45
[2026-08-25 18:48:46,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:48:46,639.639 INFO    ] Initializing speech engine...
[2026-08-25 18:48:46,650.650 INFO    ] 2026-08-25 18:48:46
[2026-08-25 18:48:46,927.927 INFO    ] 2026-08-25 18:48:46
[2026-08-25 18:48:46,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:48:47,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:48:47,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:48:47,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:48:47,323.323 INFO    ] time= 25/08/2026 18:48:47
[2026-08-25 18:48:47,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:48:47,393.393 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:48:47,525.525 INFO    ] No existing commands found in stream
[2026-08-25 18:48:52,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:48:52,547.547 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 18:48:54,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:48:54,056.056 INFO    ] Checking for system updates...
[2026-08-25 18:48:54,091.091 INFO    ] 200
[2026-08-25 18:48:54,094.094 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:54,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:48:54,151.151 INFO    ] No update needed
[2026-08-25 18:48:54,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 18:48:54,189.189 INFO    ] 200
[2026-08-25 18:48:54,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:48:54,233.233 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:48:54,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:48:54,298.298 INFO    ] No camera update needed
[2026-08-25 18:48:54,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:48:54,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:48:54,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:48:54,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:48:56,352.352 INFO    ] ================================================
[2026-08-25 18:48:56,368.368 INFO    ] Launching Daemon at Tue Aug 25 18:48:56 IST 2026
[2026-08-25 18:48:56,380.380 INFO    ] ================================================
[2026-08-25 18:48:56,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:48:56
[2026-08-25 18:48:57,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:48:57,812.812 INFO    ] Initializing speech engine...
[2026-08-25 18:48:57,822.822 INFO    ] 2026-08-25 18:48:57
[2026-08-25 18:48:58,069.069 INFO    ] 2026-08-25 18:48:58
[2026-08-25 18:48:58,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:48:58,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:48:58,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:48:58,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:48:58,564.564 INFO    ] time= 25/08/2026 18:48:58
[2026-08-25 18:48:58,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:48:58,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:48:58,778.778 INFO    ] No existing commands found in stream
[2026-08-25 18:49:03,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:49:03,804.804 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 18:49:04,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:49:04,760.760 INFO    ] Checking for system updates...
[2026-08-25 18:49:04,796.796 INFO    ] 200
[2026-08-25 18:49:04,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:04,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:49:04,854.854 INFO    ] No update needed
[2026-08-25 18:49:04,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 18:49:04,890.890 INFO    ] 200
[2026-08-25 18:49:04,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:04,934.934 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:49:04,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:49:04,983.983 INFO    ] No camera update needed
[2026-08-25 18:49:04,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:49:04,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:49:04,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:49:04,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:49:07,037.037 INFO    ] ================================================
[2026-08-25 18:49:07,052.052 INFO    ] Launching Daemon at Tue Aug 25 18:49:07 IST 2026
[2026-08-25 18:49:07,063.063 INFO    ] ================================================
[2026-08-25 18:49:07,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:49:07
[2026-08-25 18:49:08,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:49:08,678.678 INFO    ] Initializing speech engine...
[2026-08-25 18:49:08,686.686 INFO    ] 2026-08-25 18:49:08
[2026-08-25 18:49:08,941.941 INFO    ] 2026-08-25 18:49:08
[2026-08-25 18:49:08,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:49:09,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:49:09,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:49:09,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:49:09,440.440 INFO    ] time= 25/08/2026 18:49:09
[2026-08-25 18:49:09,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:49:09,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:49:09,660.660 INFO    ] No existing commands found in stream
[2026-08-25 18:49:14,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:49:14,677.677 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 18:49:19,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:49:19,157.157 INFO    ] Checking for system updates...
[2026-08-25 18:49:19,192.192 INFO    ] 200
[2026-08-25 18:49:19,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:19,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:49:19,249.249 INFO    ] No update needed
[2026-08-25 18:49:19,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 18:49:19,289.289 INFO    ] 200
[2026-08-25 18:49:19,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:19,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:49:19,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:49:19,380.380 INFO    ] No camera update needed
[2026-08-25 18:49:19,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:49:19,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:49:19,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:49:19,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:49:21,434.434 INFO    ] ================================================
[2026-08-25 18:49:21,450.450 INFO    ] Launching Daemon at Tue Aug 25 18:49:21 IST 2026
[2026-08-25 18:49:21,461.461 INFO    ] ================================================
[2026-08-25 18:49:22,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:49:22
[2026-08-25 18:49:22,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:49:22,919.919 INFO    ] Initializing speech engine...
[2026-08-25 18:49:22,927.927 INFO    ] 2026-08-25 18:49:22
[2026-08-25 18:49:23,187.187 INFO    ] 2026-08-25 18:49:23
[2026-08-25 18:49:23,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:49:23,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:49:23,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:49:23,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:49:23,658.658 INFO    ] time= 25/08/2026 18:49:23
[2026-08-25 18:49:23,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:49:23,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:49:23,876.876 INFO    ] No existing commands found in stream
[2026-08-25 18:49:28,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:49:28,895.895 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 18:49:31,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:49:31,531.531 INFO    ] Checking for system updates...
[2026-08-25 18:49:31,567.567 INFO    ] 200
[2026-08-25 18:49:31,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:31,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:49:31,624.624 INFO    ] No update needed
[2026-08-25 18:49:31,627.627 INFO    ] Checking for camera pi updates...
[2026-08-25 18:49:31,660.660 INFO    ] 200
[2026-08-25 18:49:31,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:31,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:49:31,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:49:31,856.856 INFO    ] No camera update needed
[2026-08-25 18:49:31,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:49:31,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:49:31,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:49:31,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:49:33,915.915 INFO    ] ================================================
[2026-08-25 18:49:33,930.930 INFO    ] Launching Daemon at Tue Aug 25 18:49:33 IST 2026
[2026-08-25 18:49:33,941.941 INFO    ] ================================================
[2026-08-25 18:49:34,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:49:34
[2026-08-25 18:49:35,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:49:35,348.348 INFO    ] Initializing speech engine...
[2026-08-25 18:49:35,366.366 INFO    ] 2026-08-25 18:49:35
[2026-08-25 18:49:35,613.613 INFO    ] 2026-08-25 18:49:35
[2026-08-25 18:49:35,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:49:35,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:49:35,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:49:36,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:49:36,076.076 INFO    ] time= 25/08/2026 18:49:36
[2026-08-25 18:49:36,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:49:36,171.171 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:49:36,305.305 INFO    ] No existing commands found in stream
[2026-08-25 18:49:41,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:49:41,330.330 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 18:49:42,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:49:42,961.961 INFO    ] Checking for system updates...
[2026-08-25 18:49:42,996.996 INFO    ] 200
[2026-08-25 18:49:42,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:43,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:49:43,061.061 INFO    ] No update needed
[2026-08-25 18:49:43,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 18:49:43,097.097 INFO    ] 200
[2026-08-25 18:49:43,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:43,139.139 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:49:43,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:49:43,204.204 INFO    ] No camera update needed
[2026-08-25 18:49:43,206.206 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:49:43,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:49:43,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:49:43,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:49:45,258.258 INFO    ] ================================================
[2026-08-25 18:49:45,274.274 INFO    ] Launching Daemon at Tue Aug 25 18:49:45 IST 2026
[2026-08-25 18:49:45,285.285 INFO    ] ================================================
[2026-08-25 18:49:45,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:49:45
[2026-08-25 18:49:46,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:49:46,685.685 INFO    ] Initializing speech engine...
[2026-08-25 18:49:46,699.699 INFO    ] 2026-08-25 18:49:46
[2026-08-25 18:49:46,965.965 INFO    ] 2026-08-25 18:49:46
[2026-08-25 18:49:46,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:49:47,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:49:47,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:49:47,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:49:47,431.431 INFO    ] time= 25/08/2026 18:49:47
[2026-08-25 18:49:47,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:49:47,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:49:47,673.673 INFO    ] No existing commands found in stream
[2026-08-25 18:49:52,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:49:52,701.701 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 18:49:57,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:49:57,162.162 INFO    ] Checking for system updates...
[2026-08-25 18:49:57,198.198 INFO    ] 200
[2026-08-25 18:49:57,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:57,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:49:57,265.265 INFO    ] No update needed
[2026-08-25 18:49:57,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 18:49:57,302.302 INFO    ] 200
[2026-08-25 18:49:57,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:49:57,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:49:57,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:49:57,400.400 INFO    ] No camera update needed
[2026-08-25 18:49:57,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:49:57,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:49:57,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:49:57,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:49:59,457.457 INFO    ] ================================================
[2026-08-25 18:49:59,472.472 INFO    ] Launching Daemon at Tue Aug 25 18:49:59 IST 2026
[2026-08-25 18:49:59,484.484 INFO    ] ================================================
[2026-08-25 18:50:00,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:50:00
[2026-08-25 18:50:00,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:50:00,881.881 INFO    ] Initializing speech engine...
[2026-08-25 18:50:00,894.894 INFO    ] 2026-08-25 18:50:00
[2026-08-25 18:50:01,159.159 INFO    ] 2026-08-25 18:50:01
[2026-08-25 18:50:01,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:50:01,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:50:01,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:50:01,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:50:01,636.636 INFO    ] time= 25/08/2026 18:50:01
[2026-08-25 18:50:01,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:50:01,721.721 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:50:01,821.821 INFO    ] No existing commands found in stream
[2026-08-25 18:50:06,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:50:06,834.834 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 18:50:10,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:50:10,459.459 INFO    ] Checking for system updates...
[2026-08-25 18:50:10,496.496 INFO    ] 200
[2026-08-25 18:50:10,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:10,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:50:10,563.563 INFO    ] No update needed
[2026-08-25 18:50:10,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 18:50:10,604.604 INFO    ] 200
[2026-08-25 18:50:10,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:10,658.658 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:50:10,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:50:10,721.721 INFO    ] No camera update needed
[2026-08-25 18:50:10,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:50:10,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:50:10,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:50:10,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:50:12,779.779 INFO    ] ================================================
[2026-08-25 18:50:12,795.795 INFO    ] Launching Daemon at Tue Aug 25 18:50:12 IST 2026
[2026-08-25 18:50:12,806.806 INFO    ] ================================================
[2026-08-25 18:50:13,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:50:13
[2026-08-25 18:50:14,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:50:14,350.350 INFO    ] Initializing speech engine...
[2026-08-25 18:50:14,361.361 INFO    ] 2026-08-25 18:50:14
[2026-08-25 18:50:14,636.636 INFO    ] 2026-08-25 18:50:14
[2026-08-25 18:50:14,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:50:14,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:50:14,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:50:15,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:50:15,201.201 INFO    ] time= 25/08/2026 18:50:15
[2026-08-25 18:50:15,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:50:15,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:50:15,363.363 INFO    ] No existing commands found in stream
[2026-08-25 18:50:20,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:50:20,397.397 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-08-25 18:50:21,378.378 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:50:21,381.381 INFO    ] Checking for system updates...
[2026-08-25 18:50:21,418.418 INFO    ] 200
[2026-08-25 18:50:21,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:21,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:50:21,483.483 INFO    ] No update needed
[2026-08-25 18:50:21,486.486 INFO    ] Checking for camera pi updates...
[2026-08-25 18:50:21,521.521 INFO    ] 200
[2026-08-25 18:50:21,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:21,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:50:21,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:50:21,622.622 INFO    ] No camera update needed
[2026-08-25 18:50:21,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:50:21,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:50:21,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:50:21,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:50:23,678.678 INFO    ] ================================================
[2026-08-25 18:50:23,693.693 INFO    ] Launching Daemon at Tue Aug 25 18:50:23 IST 2026
[2026-08-25 18:50:23,705.705 INFO    ] ================================================
[2026-08-25 18:50:24,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:50:24
[2026-08-25 18:50:24,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:50:25,130.130 INFO    ] Initializing speech engine...
[2026-08-25 18:50:25,140.140 INFO    ] 2026-08-25 18:50:25
[2026-08-25 18:50:25,399.399 INFO    ] 2026-08-25 18:50:25
[2026-08-25 18:50:25,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:50:25,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:50:25,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:50:25,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:50:25,871.871 INFO    ] time= 25/08/2026 18:50:25
[2026-08-25 18:50:25,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:50:25,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:50:26,065.065 INFO    ] No existing commands found in stream
[2026-08-25 18:50:31,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:50:31,098.098 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 18:50:34,821.821 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:50:34,824.824 INFO    ] Checking for system updates...
[2026-08-25 18:50:34,865.865 INFO    ] 200
[2026-08-25 18:50:34,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:34,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:50:34,940.940 INFO    ] No update needed
[2026-08-25 18:50:34,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 18:50:34,984.984 INFO    ] 200
[2026-08-25 18:50:34,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:35,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:50:35,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:50:35,094.094 INFO    ] No camera update needed
[2026-08-25 18:50:35,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:50:35,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:50:35,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:50:35,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:50:37,150.150 INFO    ] ================================================
[2026-08-25 18:50:37,165.165 INFO    ] Launching Daemon at Tue Aug 25 18:50:37 IST 2026
[2026-08-25 18:50:37,176.176 INFO    ] ================================================
[2026-08-25 18:50:37,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:50:37
[2026-08-25 18:50:38,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:50:38,652.652 INFO    ] Initializing speech engine...
[2026-08-25 18:50:38,662.662 INFO    ] 2026-08-25 18:50:38
[2026-08-25 18:50:38,912.912 INFO    ] 2026-08-25 18:50:38
[2026-08-25 18:50:38,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:50:39,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:50:39,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:50:39,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:50:39,437.437 INFO    ] time= 25/08/2026 18:50:39
[2026-08-25 18:50:39,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:50:39,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:50:39,595.595 INFO    ] No existing commands found in stream
[2026-08-25 18:50:44,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:50:44,623.623 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 18:50:48,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:50:48,959.959 INFO    ] Checking for system updates...
[2026-08-25 18:50:48,995.995 INFO    ] 200
[2026-08-25 18:50:48,998.998 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:49,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:50:49,052.052 INFO    ] No update needed
[2026-08-25 18:50:49,054.054 INFO    ] Checking for camera pi updates...
[2026-08-25 18:50:49,087.087 INFO    ] 200
[2026-08-25 18:50:49,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:50:49,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:50:49,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:50:49,182.182 INFO    ] No camera update needed
[2026-08-25 18:50:49,184.184 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:50:49,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:50:49,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:50:49,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:50:51,238.238 INFO    ] ================================================
[2026-08-25 18:50:51,259.259 INFO    ] Launching Daemon at Tue Aug 25 18:50:51 IST 2026
[2026-08-25 18:50:51,271.271 INFO    ] ================================================
[2026-08-25 18:50:51,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:50:51
[2026-08-25 18:50:52,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:50:52,692.692 INFO    ] Initializing speech engine...
[2026-08-25 18:50:52,706.706 INFO    ] 2026-08-25 18:50:52
[2026-08-25 18:50:52,954.954 INFO    ] 2026-08-25 18:50:52
[2026-08-25 18:50:53,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:50:53,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:50:53,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:50:53,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:50:53,441.441 INFO    ] time= 25/08/2026 18:50:53
[2026-08-25 18:50:53,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:50:53,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:50:53,655.655 INFO    ] No existing commands found in stream
[2026-08-25 18:50:58,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:50:58,677.677 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 18:51:01,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:51:01,449.449 INFO    ] Checking for system updates...
[2026-08-25 18:51:01,515.515 INFO    ] 200
[2026-08-25 18:51:01,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:01,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:51:01,596.596 INFO    ] No update needed
[2026-08-25 18:51:01,599.599 INFO    ] Checking for camera pi updates...
[2026-08-25 18:51:01,642.642 INFO    ] 200
[2026-08-25 18:51:01,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:01,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:51:01,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:51:01,757.757 INFO    ] No camera update needed
[2026-08-25 18:51:01,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:51:01,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:51:01,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:51:01,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:51:03,817.817 INFO    ] ================================================
[2026-08-25 18:51:03,832.832 INFO    ] Launching Daemon at Tue Aug 25 18:51:03 IST 2026
[2026-08-25 18:51:03,843.843 INFO    ] ================================================
[2026-08-25 18:51:04,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:51:04
[2026-08-25 18:51:05,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:51:05,465.465 INFO    ] Initializing speech engine...
[2026-08-25 18:51:05,472.472 INFO    ] 2026-08-25 18:51:05
[2026-08-25 18:51:05,742.742 INFO    ] 2026-08-25 18:51:05
[2026-08-25 18:51:05,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:51:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:51:05,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:51:06,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:51:06,158.158 INFO    ] time= 25/08/2026 18:51:06
[2026-08-25 18:51:06,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:51:06,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:51:06,309.309 INFO    ] No existing commands found in stream
[2026-08-25 18:51:11,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:51:11,342.342 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 18:51:15,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:51:15,355.355 INFO    ] Checking for system updates...
[2026-08-25 18:51:15,391.391 INFO    ] 200
[2026-08-25 18:51:15,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:15,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:15,456.456 INFO    ] No update needed
[2026-08-25 18:51:15,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 18:51:15,493.493 INFO    ] 200
[2026-08-25 18:51:15,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:15,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:51:15,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:15,600.600 INFO    ] No camera update needed
[2026-08-25 18:51:15,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:51:15,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:51:15,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:51:15,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:51:17,658.658 INFO    ] ================================================
[2026-08-25 18:51:17,674.674 INFO    ] Launching Daemon at Tue Aug 25 18:51:17 IST 2026
[2026-08-25 18:51:17,685.685 INFO    ] ================================================
[2026-08-25 18:51:18,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:51:18
[2026-08-25 18:51:18,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:51:19,087.087 INFO    ] Initializing speech engine...
[2026-08-25 18:51:19,102.102 INFO    ] 2026-08-25 18:51:19
[2026-08-25 18:51:19,368.368 INFO    ] 2026-08-25 18:51:19
[2026-08-25 18:51:19,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:51:19,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:51:19,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:51:19,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:51:19,877.877 INFO    ] time= 25/08/2026 18:51:19
[2026-08-25 18:51:19,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:51:19,934.934 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:51:20,066.066 INFO    ] No existing commands found in stream
[2026-08-25 18:51:25,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:51:25,093.093 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 18:51:25,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:51:25,619.619 INFO    ] Checking for system updates...
[2026-08-25 18:51:25,655.655 INFO    ] 200
[2026-08-25 18:51:25,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:25,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:51:25,711.711 INFO    ] No update needed
[2026-08-25 18:51:25,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 18:51:25,752.752 INFO    ] 200
[2026-08-25 18:51:25,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:25,800.800 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:51:25,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:51:25,855.855 INFO    ] No camera update needed
[2026-08-25 18:51:25,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:51:25,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:51:25,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:51:25,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:51:27,909.909 INFO    ] ================================================
[2026-08-25 18:51:27,924.924 INFO    ] Launching Daemon at Tue Aug 25 18:51:27 IST 2026
[2026-08-25 18:51:27,936.936 INFO    ] ================================================
[2026-08-25 18:51:28,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:51:28
[2026-08-25 18:51:29,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:51:29,372.372 INFO    ] Initializing speech engine...
[2026-08-25 18:51:29,378.378 INFO    ] 2026-08-25 18:51:29
[2026-08-25 18:51:29,641.641 INFO    ] 2026-08-25 18:51:29
[2026-08-25 18:51:29,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:51:29,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:51:29,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:51:30,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:51:30,180.180 INFO    ] time= 25/08/2026 18:51:30
[2026-08-25 18:51:30,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:51:30,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:51:30,329.329 INFO    ] No existing commands found in stream
[2026-08-25 18:51:35,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:51:35,348.348 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 18:51:36,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:51:36,696.696 INFO    ] Checking for system updates...
[2026-08-25 18:51:36,735.735 INFO    ] 200
[2026-08-25 18:51:36,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:36,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:36,793.793 INFO    ] No update needed
[2026-08-25 18:51:36,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 18:51:36,837.837 INFO    ] 200
[2026-08-25 18:51:36,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:36,880.880 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:51:37,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:37,037.037 INFO    ] No camera update needed
[2026-08-25 18:51:37,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:51:37,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:51:37,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:51:37,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:51:39,094.094 INFO    ] ================================================
[2026-08-25 18:51:39,109.109 INFO    ] Launching Daemon at Tue Aug 25 18:51:39 IST 2026
[2026-08-25 18:51:39,120.120 INFO    ] ================================================
[2026-08-25 18:51:39,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:51:39
[2026-08-25 18:51:40,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:51:40,752.752 INFO    ] Initializing speech engine...
[2026-08-25 18:51:40,764.764 INFO    ] 2026-08-25 18:51:40
[2026-08-25 18:51:41,072.072 INFO    ] 2026-08-25 18:51:41
[2026-08-25 18:51:41,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:51:41,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:51:41,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:51:41,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:51:41,578.578 INFO    ] time= 25/08/2026 18:51:41
[2026-08-25 18:51:41,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:51:41,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:51:41,742.742 INFO    ] No existing commands found in stream
[2026-08-25 18:51:46,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:51:46,770.770 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 18:51:49,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:51:49,299.299 INFO    ] Checking for system updates...
[2026-08-25 18:51:49,336.336 INFO    ] 200
[2026-08-25 18:51:49,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:49,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:49,394.394 INFO    ] No update needed
[2026-08-25 18:51:49,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 18:51:49,432.432 INFO    ] 200
[2026-08-25 18:51:49,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:49,477.477 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:51:49,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:49,527.527 INFO    ] No camera update needed
[2026-08-25 18:51:49,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:51:49,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:51:49,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:51:49,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:51:51,586.586 INFO    ] ================================================
[2026-08-25 18:51:51,602.602 INFO    ] Launching Daemon at Tue Aug 25 18:51:51 IST 2026
[2026-08-25 18:51:51,613.613 INFO    ] ================================================
[2026-08-25 18:51:52,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:51:52
[2026-08-25 18:51:52,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:51:53,083.083 INFO    ] Initializing speech engine...
[2026-08-25 18:51:53,089.089 INFO    ] 2026-08-25 18:51:53
[2026-08-25 18:51:53,349.349 INFO    ] 2026-08-25 18:51:53
[2026-08-25 18:51:53,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:51:53,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:51:53,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:51:53,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:51:53,846.846 INFO    ] time= 25/08/2026 18:51:53
[2026-08-25 18:51:53,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:51:53,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:51:54,052.052 INFO    ] No existing commands found in stream
[2026-08-25 18:51:59,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:51:59,067.067 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 18:51:59,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:51:59,644.644 INFO    ] Checking for system updates...
[2026-08-25 18:51:59,680.680 INFO    ] 200
[2026-08-25 18:51:59,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:59,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:59,737.737 INFO    ] No update needed
[2026-08-25 18:51:59,740.740 INFO    ] Checking for camera pi updates...
[2026-08-25 18:51:59,777.777 INFO    ] 200
[2026-08-25 18:51:59,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:51:59,821.821 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:51:59,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:51:59,876.876 INFO    ] No camera update needed
[2026-08-25 18:51:59,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:51:59,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:51:59,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:51:59,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:52:01,934.934 INFO    ] ================================================
[2026-08-25 18:52:01,955.955 INFO    ] Launching Daemon at Tue Aug 25 18:52:01 IST 2026
[2026-08-25 18:52:01,968.968 INFO    ] ================================================
[2026-08-25 18:52:02,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:52:02
[2026-08-25 18:52:03,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:52:03,535.535 INFO    ] Initializing speech engine...
[2026-08-25 18:52:03,555.555 INFO    ] 2026-08-25 18:52:03
[2026-08-25 18:52:03,830.830 INFO    ] 2026-08-25 18:52:03
[2026-08-25 18:52:03,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:52:04,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:52:04,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:52:04,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:52:04,249.249 INFO    ] time= 25/08/2026 18:52:04
[2026-08-25 18:52:04,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:52:04,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:52:04,341.341 INFO    ] No existing commands found in stream
[2026-08-25 18:52:09,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:52:09,379.379 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 18:52:12,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:52:12,932.932 INFO    ] Checking for system updates...
[2026-08-25 18:52:12,969.969 INFO    ] 200
[2026-08-25 18:52:12,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:13,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:52:13,027.027 INFO    ] No update needed
[2026-08-25 18:52:13,029.029 INFO    ] Checking for camera pi updates...
[2026-08-25 18:52:13,069.069 INFO    ] 200
[2026-08-25 18:52:13,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:13,125.125 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:52:13,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:52:13,175.175 INFO    ] No camera update needed
[2026-08-25 18:52:13,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:52:13,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:52:13,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:52:13,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:52:15,230.230 INFO    ] ================================================
[2026-08-25 18:52:15,246.246 INFO    ] Launching Daemon at Tue Aug 25 18:52:15 IST 2026
[2026-08-25 18:52:15,257.257 INFO    ] ================================================
[2026-08-25 18:52:15,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:52:15
[2026-08-25 18:52:16,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:52:16,730.730 INFO    ] Initializing speech engine...
[2026-08-25 18:52:16,737.737 INFO    ] 2026-08-25 18:52:16
[2026-08-25 18:52:17,010.010 INFO    ] 2026-08-25 18:52:16
[2026-08-25 18:52:17,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:52:17,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:52:17,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:52:17,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:52:17,539.539 INFO    ] time= 25/08/2026 18:52:17
[2026-08-25 18:52:17,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:52:17,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:52:17,681.681 INFO    ] No existing commands found in stream
[2026-08-25 18:52:22,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:52:22,703.703 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 18:52:23,407.407 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:52:23,410.410 INFO    ] Checking for system updates...
[2026-08-25 18:52:23,445.445 INFO    ] 200
[2026-08-25 18:52:23,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:23,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:52:23,504.504 INFO    ] No update needed
[2026-08-25 18:52:23,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 18:52:23,540.540 INFO    ] 200
[2026-08-25 18:52:23,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:23,583.583 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:52:23,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:52:23,641.641 INFO    ] No camera update needed
[2026-08-25 18:52:23,644.644 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:52:23,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:52:23,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:52:23,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:52:25,698.698 INFO    ] ================================================
[2026-08-25 18:52:25,714.714 INFO    ] Launching Daemon at Tue Aug 25 18:52:25 IST 2026
[2026-08-25 18:52:25,725.725 INFO    ] ================================================
[2026-08-25 18:52:26,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:52:26
[2026-08-25 18:52:26,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:52:27,182.182 INFO    ] Initializing speech engine...
[2026-08-25 18:52:27,192.192 INFO    ] 2026-08-25 18:52:27
[2026-08-25 18:52:27,469.469 INFO    ] 2026-08-25 18:52:27
[2026-08-25 18:52:27,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:52:27,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:52:27,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:52:27,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:52:27,948.948 INFO    ] time= 25/08/2026 18:52:27
[2026-08-25 18:52:28,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:52:28,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:52:28,212.212 INFO    ] No existing commands found in stream
[2026-08-25 18:52:33,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:52:33,240.240 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 18:52:33,900.900 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:52:33,903.903 INFO    ] Checking for system updates...
[2026-08-25 18:52:33,940.940 INFO    ] 200
[2026-08-25 18:52:33,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:34,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:52:34,006.006 INFO    ] No update needed
[2026-08-25 18:52:34,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 18:52:34,043.043 INFO    ] 200
[2026-08-25 18:52:34,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:34,093.093 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:52:34,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:52:34,170.170 INFO    ] No camera update needed
[2026-08-25 18:52:34,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:52:34,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:52:34,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:52:34,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:52:36,231.231 INFO    ] ================================================
[2026-08-25 18:52:36,246.246 INFO    ] Launching Daemon at Tue Aug 25 18:52:36 IST 2026
[2026-08-25 18:52:36,257.257 INFO    ] ================================================
[2026-08-25 18:52:36,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:52:36
[2026-08-25 18:52:37,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:52:37,668.668 INFO    ] Initializing speech engine...
[2026-08-25 18:52:37,676.676 INFO    ] 2026-08-25 18:52:37
[2026-08-25 18:52:37,970.970 INFO    ] 2026-08-25 18:52:37
[2026-08-25 18:52:38,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:52:38,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:52:38,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:52:38,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:52:38,379.379 INFO    ] time= 25/08/2026 18:52:38
[2026-08-25 18:52:38,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:52:38,433.433 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:52:38,561.561 INFO    ] No existing commands found in stream
[2026-08-25 18:52:43,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:52:43,591.591 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 18:52:44,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:52:44,167.167 INFO    ] Checking for system updates...
[2026-08-25 18:52:44,208.208 INFO    ] 200
[2026-08-25 18:52:44,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:44,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:52:44,267.267 INFO    ] No update needed
[2026-08-25 18:52:44,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 18:52:44,305.305 INFO    ] 200
[2026-08-25 18:52:44,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:44,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:52:44,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:52:44,422.422 INFO    ] No camera update needed
[2026-08-25 18:52:44,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:52:44,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:52:44,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:52:44,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:52:46,479.479 INFO    ] ================================================
[2026-08-25 18:52:46,494.494 INFO    ] Launching Daemon at Tue Aug 25 18:52:46 IST 2026
[2026-08-25 18:52:46,506.506 INFO    ] ================================================
[2026-08-25 18:52:47,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:52:47
[2026-08-25 18:52:47,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:52:48,142.142 INFO    ] Initializing speech engine...
[2026-08-25 18:52:48,160.160 INFO    ] 2026-08-25 18:52:48
[2026-08-25 18:52:48,442.442 INFO    ] 2026-08-25 18:52:48
[2026-08-25 18:52:48,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:52:48,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:52:48,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:52:48,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:52:49,016.016 INFO    ] time= 25/08/2026 18:52:48
[2026-08-25 18:52:49,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:52:49,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:52:49,174.174 INFO    ] No existing commands found in stream
[2026-08-25 18:52:54,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:52:54,190.190 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 18:52:56,581.581 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:52:56,584.584 INFO    ] Checking for system updates...
[2026-08-25 18:52:56,621.621 INFO    ] 200
[2026-08-25 18:52:56,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:56,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:52:56,680.680 INFO    ] No update needed
[2026-08-25 18:52:56,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 18:52:56,717.717 INFO    ] 200
[2026-08-25 18:52:56,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:52:56,760.760 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:52:56,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:52:56,849.849 INFO    ] No camera update needed
[2026-08-25 18:52:56,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:52:56,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:52:56,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:52:56,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:52:58,904.904 INFO    ] ================================================
[2026-08-25 18:52:58,920.920 INFO    ] Launching Daemon at Tue Aug 25 18:52:58 IST 2026
[2026-08-25 18:52:58,931.931 INFO    ] ================================================
[2026-08-25 18:52:59,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:52:59
[2026-08-25 18:53:00,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:53:00,396.396 INFO    ] Initializing speech engine...
[2026-08-25 18:53:00,406.406 INFO    ] 2026-08-25 18:53:00
[2026-08-25 18:53:00,668.668 INFO    ] 2026-08-25 18:53:00
[2026-08-25 18:53:00,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:53:00,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:53:00,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:53:01,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:53:01,155.155 INFO    ] time= 25/08/2026 18:53:01
[2026-08-25 18:53:01,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:53:01,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:53:01,334.334 INFO    ] No existing commands found in stream
[2026-08-25 18:53:06,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:53:06,347.347 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 18:53:07,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:53:07,488.488 INFO    ] Checking for system updates...
[2026-08-25 18:53:07,523.523 INFO    ] 200
[2026-08-25 18:53:07,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:07,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:53:07,582.582 INFO    ] No update needed
[2026-08-25 18:53:07,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 18:53:07,617.617 INFO    ] 200
[2026-08-25 18:53:07,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:07,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:53:07,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:53:07,714.714 INFO    ] No camera update needed
[2026-08-25 18:53:07,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:53:07,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:53:07,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:53:07,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:53:09,768.768 INFO    ] ================================================
[2026-08-25 18:53:09,784.784 INFO    ] Launching Daemon at Tue Aug 25 18:53:09 IST 2026
[2026-08-25 18:53:09,795.795 INFO    ] ================================================
[2026-08-25 18:53:10,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:53:10
[2026-08-25 18:53:11,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:53:11,465.465 INFO    ] Initializing speech engine...
[2026-08-25 18:53:11,471.471 INFO    ] 2026-08-25 18:53:11
[2026-08-25 18:53:11,768.768 INFO    ] 2026-08-25 18:53:11
[2026-08-25 18:53:11,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:53:12,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:53:12,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:53:12,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:53:12,318.318 INFO    ] time= 25/08/2026 18:53:12
[2026-08-25 18:53:12,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:53:12,347.347 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:53:12,480.480 INFO    ] No existing commands found in stream
[2026-08-25 18:53:17,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:53:17,507.507 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 18:53:19,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:53:19,880.880 INFO    ] Checking for system updates...
[2026-08-25 18:53:19,917.917 INFO    ] 200
[2026-08-25 18:53:19,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:19,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:53:19,975.975 INFO    ] No update needed
[2026-08-25 18:53:19,977.977 INFO    ] Checking for camera pi updates...
[2026-08-25 18:53:20,013.013 INFO    ] 200
[2026-08-25 18:53:20,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:20,056.056 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:53:20,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:53:20,109.109 INFO    ] No camera update needed
[2026-08-25 18:53:20,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:53:20,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:53:20,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:53:20,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:53:22,165.165 INFO    ] ================================================
[2026-08-25 18:53:22,181.181 INFO    ] Launching Daemon at Tue Aug 25 18:53:22 IST 2026
[2026-08-25 18:53:22,192.192 INFO    ] ================================================
[2026-08-25 18:53:22,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:53:22
[2026-08-25 18:53:23,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:53:23,804.804 INFO    ] Initializing speech engine...
[2026-08-25 18:53:23,811.811 INFO    ] 2026-08-25 18:53:23
[2026-08-25 18:53:24,085.085 INFO    ] 2026-08-25 18:53:24
[2026-08-25 18:53:24,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:53:24,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:53:24,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:53:24,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:53:24,654.654 INFO    ] time= 25/08/2026 18:53:24
[2026-08-25 18:53:24,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:53:24,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:53:24,842.842 INFO    ] No existing commands found in stream
[2026-08-25 18:53:29,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:53:29,868.868 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 18:53:33,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:53:33,298.298 INFO    ] Checking for system updates...
[2026-08-25 18:53:33,340.340 INFO    ] 200
[2026-08-25 18:53:33,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:33,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:53:33,399.399 INFO    ] No update needed
[2026-08-25 18:53:33,402.402 INFO    ] Checking for camera pi updates...
[2026-08-25 18:53:33,441.441 INFO    ] 200
[2026-08-25 18:53:33,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:33,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:53:33,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:53:33,557.557 INFO    ] No camera update needed
[2026-08-25 18:53:33,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:53:33,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:53:33,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:53:33,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:53:35,617.617 INFO    ] ================================================
[2026-08-25 18:53:35,632.632 INFO    ] Launching Daemon at Tue Aug 25 18:53:35 IST 2026
[2026-08-25 18:53:35,645.645 INFO    ] ================================================
[2026-08-25 18:53:36,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:53:36
[2026-08-25 18:53:36,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:53:37,095.095 INFO    ] Initializing speech engine...
[2026-08-25 18:53:37,118.118 INFO    ] 2026-08-25 18:53:37
[2026-08-25 18:53:37,375.375 INFO    ] 2026-08-25 18:53:37
[2026-08-25 18:53:37,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:53:37,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:53:37,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:53:37,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:53:37,839.839 INFO    ] time= 25/08/2026 18:53:37
[2026-08-25 18:53:37,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:53:37,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:53:38,051.051 INFO    ] No existing commands found in stream
[2026-08-25 18:53:43,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:53:43,064.064 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 18:53:47,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:53:47,365.365 INFO    ] Checking for system updates...
[2026-08-25 18:53:47,401.401 INFO    ] 200
[2026-08-25 18:53:47,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:47,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:53:47,461.461 INFO    ] No update needed
[2026-08-25 18:53:47,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 18:53:47,501.501 INFO    ] 200
[2026-08-25 18:53:47,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:53:47,545.545 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:53:47,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:53:47,702.702 INFO    ] No camera update needed
[2026-08-25 18:53:47,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:53:47,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:53:47,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:53:47,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:53:49,757.757 INFO    ] ================================================
[2026-08-25 18:53:49,772.772 INFO    ] Launching Daemon at Tue Aug 25 18:53:49 IST 2026
[2026-08-25 18:53:49,783.783 INFO    ] ================================================
[2026-08-25 18:53:50,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:53:50
[2026-08-25 18:53:51,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:53:51,446.446 INFO    ] Initializing speech engine...
[2026-08-25 18:53:51,452.452 INFO    ] 2026-08-25 18:53:51
[2026-08-25 18:53:51,728.728 INFO    ] 2026-08-25 18:53:51
[2026-08-25 18:53:51,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:53:52,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:53:52,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:53:52,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:53:52,224.224 INFO    ] time= 25/08/2026 18:53:52
[2026-08-25 18:53:52,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:53:52,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:53:52,462.462 INFO    ] No existing commands found in stream
[2026-08-25 18:53:57,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:53:57,491.491 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 18:54:01,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:54:01,952.952 INFO    ] Checking for system updates...
[2026-08-25 18:54:02,001.001 INFO    ] 200
[2026-08-25 18:54:02,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:02,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:54:02,072.072 INFO    ] No update needed
[2026-08-25 18:54:02,076.076 INFO    ] Checking for camera pi updates...
[2026-08-25 18:54:02,116.116 INFO    ] 200
[2026-08-25 18:54:02,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:02,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:54:02,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:54:02,243.243 INFO    ] No camera update needed
[2026-08-25 18:54:02,247.247 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:54:02,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:54:02,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:54:02,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:54:04,308.308 INFO    ] ================================================
[2026-08-25 18:54:04,323.323 INFO    ] Launching Daemon at Tue Aug 25 18:54:04 IST 2026
[2026-08-25 18:54:04,334.334 INFO    ] ================================================
[2026-08-25 18:54:05,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:54:05
[2026-08-25 18:54:05,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:54:06,018.018 INFO    ] Initializing speech engine...
[2026-08-25 18:54:06,035.035 INFO    ] 2026-08-25 18:54:06
[2026-08-25 18:54:06,377.377 INFO    ] 2026-08-25 18:54:06
[2026-08-25 18:54:06,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:54:06,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:54:06,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:54:06,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:54:06,892.892 INFO    ] time= 25/08/2026 18:54:06
[2026-08-25 18:54:06,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:54:06,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:54:07,068.068 INFO    ] No existing commands found in stream
[2026-08-25 18:54:12,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:54:12,104.104 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 18:54:13,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:54:13,261.261 INFO    ] Checking for system updates...
[2026-08-25 18:54:13,296.296 INFO    ] 200
[2026-08-25 18:54:13,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:13,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:54:13,354.354 INFO    ] No update needed
[2026-08-25 18:54:13,356.356 INFO    ] Checking for camera pi updates...
[2026-08-25 18:54:13,389.389 INFO    ] 200
[2026-08-25 18:54:13,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:13,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:54:13,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:54:13,490.490 INFO    ] No camera update needed
[2026-08-25 18:54:13,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:54:13,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:54:13,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:54:13,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:54:15,544.544 INFO    ] ================================================
[2026-08-25 18:54:15,559.559 INFO    ] Launching Daemon at Tue Aug 25 18:54:15 IST 2026
[2026-08-25 18:54:15,570.570 INFO    ] ================================================
[2026-08-25 18:54:16,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:54:16
[2026-08-25 18:54:16,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:54:16,994.994 INFO    ] Initializing speech engine...
[2026-08-25 18:54:17,004.004 INFO    ] 2026-08-25 18:54:16
[2026-08-25 18:54:17,249.249 INFO    ] 2026-08-25 18:54:17
[2026-08-25 18:54:17,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:54:17,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:54:17,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:54:17,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:54:17,804.804 INFO    ] time= 25/08/2026 18:54:17
[2026-08-25 18:54:17,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:54:17,828.828 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:54:17,972.972 INFO    ] No existing commands found in stream
[2026-08-25 18:54:22,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:54:23,001.001 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-08-25 18:54:25,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:54:25,564.564 INFO    ] Checking for system updates...
[2026-08-25 18:54:25,600.600 INFO    ] 200
[2026-08-25 18:54:25,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:25,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:54:25,668.668 INFO    ] No update needed
[2026-08-25 18:54:25,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 18:54:25,706.706 INFO    ] 200
[2026-08-25 18:54:25,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:25,757.757 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:54:25,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:54:25,810.810 INFO    ] No camera update needed
[2026-08-25 18:54:25,813.813 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:54:25,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:54:25,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:54:25,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:54:27,869.869 INFO    ] ================================================
[2026-08-25 18:54:27,884.884 INFO    ] Launching Daemon at Tue Aug 25 18:54:27 IST 2026
[2026-08-25 18:54:27,896.896 INFO    ] ================================================
[2026-08-25 18:54:28,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:54:28
[2026-08-25 18:54:29,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:54:29,296.296 INFO    ] Initializing speech engine...
[2026-08-25 18:54:29,305.305 INFO    ] 2026-08-25 18:54:29
[2026-08-25 18:54:29,578.578 INFO    ] 2026-08-25 18:54:29
[2026-08-25 18:54:29,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:54:29,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:54:29,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:54:29,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:54:29,953.953 INFO    ] time= 25/08/2026 18:54:29
[2026-08-25 18:54:29,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:54:29,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:54:30,113.113 INFO    ] No existing commands found in stream
[2026-08-25 18:54:35,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:54:35,141.141 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 18:54:37,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:54:37,838.838 INFO    ] Checking for system updates...
[2026-08-25 18:54:37,875.875 INFO    ] 200
[2026-08-25 18:54:37,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:37,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:54:37,933.933 INFO    ] No update needed
[2026-08-25 18:54:37,936.936 INFO    ] Checking for camera pi updates...
[2026-08-25 18:54:37,969.969 INFO    ] 200
[2026-08-25 18:54:37,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:38,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:54:38,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:54:38,068.068 INFO    ] No camera update needed
[2026-08-25 18:54:38,071.071 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:54:38,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:54:38,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:54:38,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:54:40,122.122 INFO    ] ================================================
[2026-08-25 18:54:40,137.137 INFO    ] Launching Daemon at Tue Aug 25 18:54:40 IST 2026
[2026-08-25 18:54:40,148.148 INFO    ] ================================================
[2026-08-25 18:54:40,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:54:40
[2026-08-25 18:54:41,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:54:41,570.570 INFO    ] Initializing speech engine...
[2026-08-25 18:54:41,579.579 INFO    ] 2026-08-25 18:54:41
[2026-08-25 18:54:41,825.825 INFO    ] 2026-08-25 18:54:41
[2026-08-25 18:54:41,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:54:42,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:54:42,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:54:42,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:54:42,294.294 INFO    ] time= 25/08/2026 18:54:42
[2026-08-25 18:54:42,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:54:42,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:54:42,518.518 INFO    ] No existing commands found in stream
[2026-08-25 18:54:47,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:54:47,543.543 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 18:54:50,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:54:50,157.157 INFO    ] Checking for system updates...
[2026-08-25 18:54:50,198.198 INFO    ] 200
[2026-08-25 18:54:50,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:50,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:54:50,266.266 INFO    ] No update needed
[2026-08-25 18:54:50,269.269 INFO    ] Checking for camera pi updates...
[2026-08-25 18:54:50,309.309 INFO    ] 200
[2026-08-25 18:54:50,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:54:50,360.360 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:54:50,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:54:50,409.409 INFO    ] No camera update needed
[2026-08-25 18:54:50,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:54:50,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:54:50,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:54:50,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:54:52,470.470 INFO    ] ================================================
[2026-08-25 18:54:52,486.486 INFO    ] Launching Daemon at Tue Aug 25 18:54:52 IST 2026
[2026-08-25 18:54:52,497.497 INFO    ] ================================================
[2026-08-25 18:54:53,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:54:53
[2026-08-25 18:54:53,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:54:54,184.184 INFO    ] Initializing speech engine...
[2026-08-25 18:54:54,198.198 INFO    ] 2026-08-25 18:54:54
[2026-08-25 18:54:54,511.511 INFO    ] 2026-08-25 18:54:54
[2026-08-25 18:54:54,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:54:54,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:54:54,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:54:55,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:54:55,032.032 INFO    ] time= 25/08/2026 18:54:55
[2026-08-25 18:54:55,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:54:55,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:54:55,199.199 INFO    ] No existing commands found in stream
[2026-08-25 18:55:00,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:55:00,233.233 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 18:55:00,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:55:00,999.999 INFO    ] Checking for system updates...
[2026-08-25 18:55:01,034.034 INFO    ] 200
[2026-08-25 18:55:01,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:01,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:55:01,098.098 INFO    ] No update needed
[2026-08-25 18:55:01,100.100 INFO    ] Checking for camera pi updates...
[2026-08-25 18:55:01,145.145 INFO    ] 200
[2026-08-25 18:55:01,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:01,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:55:01,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:55:01,291.291 INFO    ] No camera update needed
[2026-08-25 18:55:01,295.295 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:55:01,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:55:01,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:55:01,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:55:03,375.375 INFO    ] ================================================
[2026-08-25 18:55:03,391.391 INFO    ] Launching Daemon at Tue Aug 25 18:55:03 IST 2026
[2026-08-25 18:55:03,401.401 INFO    ] ================================================
[2026-08-25 18:55:03,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:55:03
[2026-08-25 18:55:04,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:55:04,901.901 INFO    ] Initializing speech engine...
[2026-08-25 18:55:04,912.912 INFO    ] 2026-08-25 18:55:04
[2026-08-25 18:55:05,191.191 INFO    ] 2026-08-25 18:55:05
[2026-08-25 18:55:05,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:55:05,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:55:05,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:55:05,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:55:05,724.724 INFO    ] time= 25/08/2026 18:55:05
[2026-08-25 18:55:05,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:55:05,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:55:05,896.896 INFO    ] No existing commands found in stream
[2026-08-25 18:55:10,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:55:10,931.931 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 18:55:14,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:55:14,838.838 INFO    ] Checking for system updates...
[2026-08-25 18:55:14,874.874 INFO    ] 200
[2026-08-25 18:55:14,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:14,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:55:14,934.934 INFO    ] No update needed
[2026-08-25 18:55:14,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 18:55:14,974.974 INFO    ] 200
[2026-08-25 18:55:14,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:15,019.019 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:55:15,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:55:15,073.073 INFO    ] No camera update needed
[2026-08-25 18:55:15,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:55:15,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:55:15,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:55:15,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:55:17,130.130 INFO    ] ================================================
[2026-08-25 18:55:17,146.146 INFO    ] Launching Daemon at Tue Aug 25 18:55:17 IST 2026
[2026-08-25 18:55:17,157.157 INFO    ] ================================================
[2026-08-25 18:55:17,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:55:17
[2026-08-25 18:55:18,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:55:18,765.765 INFO    ] Initializing speech engine...
[2026-08-25 18:55:18,778.778 INFO    ] 2026-08-25 18:55:18
[2026-08-25 18:55:19,063.063 INFO    ] 2026-08-25 18:55:19
[2026-08-25 18:55:19,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:55:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:55:19,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:55:19,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:55:19,593.593 INFO    ] time= 25/08/2026 18:55:19
[2026-08-25 18:55:19,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:55:19,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:55:19,759.759 INFO    ] No existing commands found in stream
[2026-08-25 18:55:24,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:55:24,794.794 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 18:55:27,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:55:27,762.762 INFO    ] Checking for system updates...
[2026-08-25 18:55:27,798.798 INFO    ] 200
[2026-08-25 18:55:27,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:27,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:55:27,857.857 INFO    ] No update needed
[2026-08-25 18:55:27,860.860 INFO    ] Checking for camera pi updates...
[2026-08-25 18:55:27,898.898 INFO    ] 200
[2026-08-25 18:55:27,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:27,944.944 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:55:27,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:55:28,002.002 INFO    ] No camera update needed
[2026-08-25 18:55:28,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:55:28,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:55:28,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:55:28,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:55:30,059.059 INFO    ] ================================================
[2026-08-25 18:55:30,075.075 INFO    ] Launching Daemon at Tue Aug 25 18:55:30 IST 2026
[2026-08-25 18:55:30,086.086 INFO    ] ================================================
[2026-08-25 18:55:30,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:55:30
[2026-08-25 18:55:31,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:55:31,550.550 INFO    ] Initializing speech engine...
[2026-08-25 18:55:31,571.571 INFO    ] 2026-08-25 18:55:31
[2026-08-25 18:55:31,834.834 INFO    ] 2026-08-25 18:55:31
[2026-08-25 18:55:31,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:55:32,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:55:32,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:55:32,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:55:32,331.331 INFO    ] time= 25/08/2026 18:55:32
[2026-08-25 18:55:32,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:55:32,426.426 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:55:32,575.575 INFO    ] No existing commands found in stream
[2026-08-25 18:55:37,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:55:37,599.599 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 18:55:40,418.418 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:55:40,421.421 INFO    ] Checking for system updates...
[2026-08-25 18:55:40,457.457 INFO    ] 200
[2026-08-25 18:55:40,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:40,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:55:40,514.514 INFO    ] No update needed
[2026-08-25 18:55:40,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 18:55:40,553.553 INFO    ] 200
[2026-08-25 18:55:40,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:40,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:55:40,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:55:40,650.650 INFO    ] No camera update needed
[2026-08-25 18:55:40,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:55:40,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:55:40,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:55:40,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:55:42,705.705 INFO    ] ================================================
[2026-08-25 18:55:42,721.721 INFO    ] Launching Daemon at Tue Aug 25 18:55:42 IST 2026
[2026-08-25 18:55:42,733.733 INFO    ] ================================================
[2026-08-25 18:55:43,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:55:43
[2026-08-25 18:55:44,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:55:44,338.338 INFO    ] Initializing speech engine...
[2026-08-25 18:55:44,347.347 INFO    ] 2026-08-25 18:55:44
[2026-08-25 18:55:44,621.621 INFO    ] 2026-08-25 18:55:44
[2026-08-25 18:55:44,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:55:44,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:55:44,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:55:45,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:55:45,184.184 INFO    ] time= 25/08/2026 18:55:45
[2026-08-25 18:55:45,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:55:45,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:55:45,358.358 INFO    ] No existing commands found in stream
[2026-08-25 18:55:50,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:55:50,392.392 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 18:55:51,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:55:51,666.666 INFO    ] Checking for system updates...
[2026-08-25 18:55:51,703.703 INFO    ] 200
[2026-08-25 18:55:51,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:51,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:55:51,762.762 INFO    ] No update needed
[2026-08-25 18:55:51,765.765 INFO    ] Checking for camera pi updates...
[2026-08-25 18:55:51,799.799 INFO    ] 200
[2026-08-25 18:55:51,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:55:51,843.843 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:55:51,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:55:51,991.991 INFO    ] No camera update needed
[2026-08-25 18:55:51,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:55:51,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:55:52,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:55:52,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:55:54,049.049 INFO    ] ================================================
[2026-08-25 18:55:54,065.065 INFO    ] Launching Daemon at Tue Aug 25 18:55:54 IST 2026
[2026-08-25 18:55:55,583.583 INFO    ] ================================================
[2026-08-25 18:55:56,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:55:56
[2026-08-25 18:55:56,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:55:57,206.206 INFO    ] Initializing speech engine...
[2026-08-25 18:55:57,217.217 INFO    ] 2026-08-25 18:55:57
[2026-08-25 18:55:57,482.482 INFO    ] 2026-08-25 18:55:57
[2026-08-25 18:55:57,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:55:57,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:55:57,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:55:58,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:55:58,032.032 INFO    ] time= 25/08/2026 18:55:58
[2026-08-25 18:55:58,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:55:58,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:55:58,190.190 INFO    ] No existing commands found in stream
[2026-08-25 18:56:03,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:56:03,210.210 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 18:56:04,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:56:04,774.774 INFO    ] Checking for system updates...
[2026-08-25 18:56:04,814.814 INFO    ] 200
[2026-08-25 18:56:04,816.816 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:04,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:56:04,870.870 INFO    ] No update needed
[2026-08-25 18:56:04,873.873 INFO    ] Checking for camera pi updates...
[2026-08-25 18:56:04,906.906 INFO    ] 200
[2026-08-25 18:56:04,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:04,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:56:04,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:56:04,995.995 INFO    ] No camera update needed
[2026-08-25 18:56:04,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:56:04,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:56:05,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:56:05,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:56:07,049.049 INFO    ] ================================================
[2026-08-25 18:56:07,063.063 INFO    ] Launching Daemon at Tue Aug 25 18:56:07 IST 2026
[2026-08-25 18:56:07,074.074 INFO    ] ================================================
[2026-08-25 18:56:07,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:56:07
[2026-08-25 18:56:08,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:56:08,524.524 INFO    ] Initializing speech engine...
[2026-08-25 18:56:08,534.534 INFO    ] 2026-08-25 18:56:08
[2026-08-25 18:56:08,782.782 INFO    ] 2026-08-25 18:56:08
[2026-08-25 18:56:08,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:56:09,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:56:09,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:56:09,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:56:09,336.336 INFO    ] time= 25/08/2026 18:56:09
[2026-08-25 18:56:09,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:56:09,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:56:09,487.487 INFO    ] No existing commands found in stream
[2026-08-25 18:56:14,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:56:14,505.505 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 18:56:17,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:56:17,938.938 INFO    ] Checking for system updates...
[2026-08-25 18:56:17,974.974 INFO    ] 200
[2026-08-25 18:56:17,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:18,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:56:18,031.031 INFO    ] No update needed
[2026-08-25 18:56:18,033.033 INFO    ] Checking for camera pi updates...
[2026-08-25 18:56:18,068.068 INFO    ] 200
[2026-08-25 18:56:18,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:18,110.110 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:56:18,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:56:18,159.159 INFO    ] No camera update needed
[2026-08-25 18:56:18,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:56:18,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:56:18,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:56:18,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:56:20,216.216 INFO    ] ================================================
[2026-08-25 18:56:20,231.231 INFO    ] Launching Daemon at Tue Aug 25 18:56:20 IST 2026
[2026-08-25 18:56:20,241.241 INFO    ] ================================================
[2026-08-25 18:56:20,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:56:20
[2026-08-25 18:56:21,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:56:21,696.696 INFO    ] Initializing speech engine...
[2026-08-25 18:56:21,704.704 INFO    ] 2026-08-25 18:56:21
[2026-08-25 18:56:21,961.961 INFO    ] 2026-08-25 18:56:21
[2026-08-25 18:56:22,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:56:22,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:56:22,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:56:22,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:56:22,480.480 INFO    ] time= 25/08/2026 18:56:22
[2026-08-25 18:56:22,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:56:22,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:56:22,658.658 INFO    ] No existing commands found in stream
[2026-08-25 18:56:27,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:56:27,673.673 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 18:56:31,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:56:31,414.414 INFO    ] Checking for system updates...
[2026-08-25 18:56:31,457.457 INFO    ] 200
[2026-08-25 18:56:31,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:31,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:56:31,522.522 INFO    ] No update needed
[2026-08-25 18:56:31,525.525 INFO    ] Checking for camera pi updates...
[2026-08-25 18:56:31,560.560 INFO    ] 200
[2026-08-25 18:56:31,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:31,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:56:31,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:56:31,663.663 INFO    ] No camera update needed
[2026-08-25 18:56:31,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:56:31,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:56:31,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:56:31,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:56:33,722.722 INFO    ] ================================================
[2026-08-25 18:56:33,737.737 INFO    ] Launching Daemon at Tue Aug 25 18:56:33 IST 2026
[2026-08-25 18:56:33,748.748 INFO    ] ================================================
[2026-08-25 18:56:34,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:56:34
[2026-08-25 18:56:34,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:56:35,153.153 INFO    ] Initializing speech engine...
[2026-08-25 18:56:35,176.176 INFO    ] 2026-08-25 18:56:35
[2026-08-25 18:56:35,432.432 INFO    ] 2026-08-25 18:56:35
[2026-08-25 18:56:35,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:56:35,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:56:35,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:56:35,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:56:35,928.928 INFO    ] time= 25/08/2026 18:56:35
[2026-08-25 18:56:35,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:56:36,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:56:36,147.147 INFO    ] No existing commands found in stream
[2026-08-25 18:56:41,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:56:41,169.169 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 18:56:43,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:56:43,396.396 INFO    ] Checking for system updates...
[2026-08-25 18:56:43,433.433 INFO    ] 200
[2026-08-25 18:56:43,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:43,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:56:43,492.492 INFO    ] No update needed
[2026-08-25 18:56:43,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 18:56:43,529.529 INFO    ] 200
[2026-08-25 18:56:43,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:43,572.572 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:56:43,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:56:43,630.630 INFO    ] No camera update needed
[2026-08-25 18:56:43,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:56:43,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:56:43,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:56:43,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:56:45,686.686 INFO    ] ================================================
[2026-08-25 18:56:45,702.702 INFO    ] Launching Daemon at Tue Aug 25 18:56:45 IST 2026
[2026-08-25 18:56:45,716.716 INFO    ] ================================================
[2026-08-25 18:56:46,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:56:46
[2026-08-25 18:56:46,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:56:47,126.126 INFO    ] Initializing speech engine...
[2026-08-25 18:56:47,132.132 INFO    ] 2026-08-25 18:56:47
[2026-08-25 18:56:47,405.405 INFO    ] 2026-08-25 18:56:47
[2026-08-25 18:56:47,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:56:47,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:56:47,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:56:47,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:56:47,865.865 INFO    ] time= 25/08/2026 18:56:47
[2026-08-25 18:56:47,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:56:47,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:56:48,119.119 INFO    ] No existing commands found in stream
[2026-08-25 18:56:53,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:56:53,143.143 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 18:56:55,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 18:56:55,852.852 INFO    ] Checking for system updates...
[2026-08-25 18:56:55,910.910 INFO    ] 200
[2026-08-25 18:56:55,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:55,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:56:55,970.970 INFO    ] No update needed
[2026-08-25 18:56:55,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 18:56:56,006.006 INFO    ] 200
[2026-08-25 18:56:56,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:56:56,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:56:56,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:56:56,109.109 INFO    ] No camera update needed
[2026-08-25 18:56:56,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:56:56,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:56:56,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:56:56,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:56:58,165.165 INFO    ] ================================================
[2026-08-25 18:56:58,181.181 INFO    ] Launching Daemon at Tue Aug 25 18:56:58 IST 2026
[2026-08-25 18:56:58,192.192 INFO    ] ================================================
[2026-08-25 18:56:58,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:56:58
[2026-08-25 18:56:59,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:56:59,750.750 INFO    ] Initializing speech engine...
[2026-08-25 18:56:59,762.762 INFO    ] 2026-08-25 18:56:59
[2026-08-25 18:57:00,040.040 INFO    ] 2026-08-25 18:57:00
[2026-08-25 18:57:00,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:57:00,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:57:00,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:57:00,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:57:00,519.519 INFO    ] time= 25/08/2026 18:57:00
[2026-08-25 18:57:00,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:57:00,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:57:00,742.742 INFO    ] No existing commands found in stream
[2026-08-25 18:57:05,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:57:05,761.761 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 18:57:06,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:57:06,303.303 INFO    ] Checking for system updates...
[2026-08-25 18:57:06,341.341 INFO    ] 200
[2026-08-25 18:57:06,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:06,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:57:06,401.401 INFO    ] No update needed
[2026-08-25 18:57:06,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 18:57:06,438.438 INFO    ] 200
[2026-08-25 18:57:06,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:06,489.489 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:57:06,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:57:06,539.539 INFO    ] No camera update needed
[2026-08-25 18:57:06,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:57:06,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:57:06,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:57:06,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:57:08,598.598 INFO    ] ================================================
[2026-08-25 18:57:08,613.613 INFO    ] Launching Daemon at Tue Aug 25 18:57:08 IST 2026
[2026-08-25 18:57:08,625.625 INFO    ] ================================================
[2026-08-25 18:57:09,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:57:09
[2026-08-25 18:57:09,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:57:10,055.055 INFO    ] Initializing speech engine...
[2026-08-25 18:57:10,065.065 INFO    ] 2026-08-25 18:57:10
[2026-08-25 18:57:10,314.314 INFO    ] 2026-08-25 18:57:10
[2026-08-25 18:57:10,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:57:10,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:57:10,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:57:10,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:57:10,800.800 INFO    ] time= 25/08/2026 18:57:10
[2026-08-25 18:57:10,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:57:10,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:57:11,010.010 INFO    ] No existing commands found in stream
[2026-08-25 18:57:16,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:57:16,035.035 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 18:57:17,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:57:17,937.937 INFO    ] Checking for system updates...
[2026-08-25 18:57:17,972.972 INFO    ] 200
[2026-08-25 18:57:17,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:18,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:57:18,029.029 INFO    ] No update needed
[2026-08-25 18:57:18,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 18:57:18,065.065 INFO    ] 200
[2026-08-25 18:57:18,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:18,107.107 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:57:18,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:57:18,157.157 INFO    ] No camera update needed
[2026-08-25 18:57:18,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:57:18,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:57:18,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:57:18,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:57:20,216.216 INFO    ] ================================================
[2026-08-25 18:57:20,232.232 INFO    ] Launching Daemon at Tue Aug 25 18:57:20 IST 2026
[2026-08-25 18:57:20,243.243 INFO    ] ================================================
[2026-08-25 18:57:20,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:57:20
[2026-08-25 18:57:21,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:57:21,700.700 INFO    ] Initializing speech engine...
[2026-08-25 18:57:21,706.706 INFO    ] 2026-08-25 18:57:21
[2026-08-25 18:57:21,967.967 INFO    ] 2026-08-25 18:57:21
[2026-08-25 18:57:22,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:57:22,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:57:22,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:57:22,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:57:22,436.436 INFO    ] time= 25/08/2026 18:57:22
[2026-08-25 18:57:22,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:57:22,540.540 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:57:22,643.643 INFO    ] No existing commands found in stream
[2026-08-25 18:57:27,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:57:27,658.658 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 18:57:28,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:57:28,776.776 INFO    ] Checking for system updates...
[2026-08-25 18:57:28,811.811 INFO    ] 200
[2026-08-25 18:57:28,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:28,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:57:28,877.877 INFO    ] No update needed
[2026-08-25 18:57:28,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 18:57:28,919.919 INFO    ] 200
[2026-08-25 18:57:28,922.922 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:28,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:57:29,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:57:29,018.018 INFO    ] No camera update needed
[2026-08-25 18:57:29,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:57:29,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:57:29,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:57:29,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:57:31,079.079 INFO    ] ================================================
[2026-08-25 18:57:31,103.103 INFO    ] Launching Daemon at Tue Aug 25 18:57:31 IST 2026
[2026-08-25 18:57:31,115.115 INFO    ] ================================================
[2026-08-25 18:57:31,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:57:31
[2026-08-25 18:57:32,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:57:32,699.699 INFO    ] Initializing speech engine...
[2026-08-25 18:57:32,713.713 INFO    ] 2026-08-25 18:57:32
[2026-08-25 18:57:33,005.005 INFO    ] 2026-08-25 18:57:32
[2026-08-25 18:57:33,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:57:33,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:57:33,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:57:33,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:57:33,433.433 INFO    ] time= 25/08/2026 18:57:33
[2026-08-25 18:57:33,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:57:33,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:57:33,522.522 INFO    ] No existing commands found in stream
[2026-08-25 18:57:38,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:57:38,550.550 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 18:57:40,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:57:40,095.095 INFO    ] Checking for system updates...
[2026-08-25 18:57:40,130.130 INFO    ] 200
[2026-08-25 18:57:40,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:40,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:57:40,189.189 INFO    ] No update needed
[2026-08-25 18:57:40,191.191 INFO    ] Checking for camera pi updates...
[2026-08-25 18:57:40,228.228 INFO    ] 200
[2026-08-25 18:57:40,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:40,277.277 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:57:40,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:57:40,331.331 INFO    ] No camera update needed
[2026-08-25 18:57:40,334.334 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:57:40,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:57:40,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:57:40,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:57:42,387.387 INFO    ] ================================================
[2026-08-25 18:57:42,403.403 INFO    ] Launching Daemon at Tue Aug 25 18:57:42 IST 2026
[2026-08-25 18:57:42,415.415 INFO    ] ================================================
[2026-08-25 18:57:43,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:57:43
[2026-08-25 18:57:43,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:57:44,084.084 INFO    ] Initializing speech engine...
[2026-08-25 18:57:44,089.089 INFO    ] 2026-08-25 18:57:44
[2026-08-25 18:57:44,381.381 INFO    ] 2026-08-25 18:57:44
[2026-08-25 18:57:44,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:57:44,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:57:44,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:57:44,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:57:44,927.927 INFO    ] time= 25/08/2026 18:57:44
[2026-08-25 18:57:44,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:57:44,975.975 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:57:45,101.101 INFO    ] No existing commands found in stream
[2026-08-25 18:57:50,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:57:50,136.136 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 18:57:51,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:57:51,363.363 INFO    ] Checking for system updates...
[2026-08-25 18:57:51,401.401 INFO    ] 200
[2026-08-25 18:57:51,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:51,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:57:51,468.468 INFO    ] No update needed
[2026-08-25 18:57:51,471.471 INFO    ] Checking for camera pi updates...
[2026-08-25 18:57:51,506.506 INFO    ] 200
[2026-08-25 18:57:51,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:57:51,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:57:51,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:57:51,609.609 INFO    ] No camera update needed
[2026-08-25 18:57:51,612.612 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:57:51,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:57:51,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:57:51,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:57:53,667.667 INFO    ] ================================================
[2026-08-25 18:57:53,683.683 INFO    ] Launching Daemon at Tue Aug 25 18:57:53 IST 2026
[2026-08-25 18:57:53,694.694 INFO    ] ================================================
[2026-08-25 18:57:54,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:57:54
[2026-08-25 18:57:55,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:57:55,358.358 INFO    ] Initializing speech engine...
[2026-08-25 18:57:55,371.371 INFO    ] 2026-08-25 18:57:55
[2026-08-25 18:57:55,684.684 INFO    ] 2026-08-25 18:57:55
[2026-08-25 18:57:55,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:57:55,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:57:55,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:57:56,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:57:56,208.208 INFO    ] time= 25/08/2026 18:57:56
[2026-08-25 18:57:56,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:57:56,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:57:56,351.351 INFO    ] No existing commands found in stream
[2026-08-25 18:58:01,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:58:01,390.390 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 18:58:03,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:58:03,835.835 INFO    ] Checking for system updates...
[2026-08-25 18:58:03,876.876 INFO    ] 200
[2026-08-25 18:58:03,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:03,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:58:03,940.940 INFO    ] No update needed
[2026-08-25 18:58:03,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 18:58:03,977.977 INFO    ] 200
[2026-08-25 18:58:03,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:04,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:58:04,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:58:04,083.083 INFO    ] No camera update needed
[2026-08-25 18:58:04,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:58:04,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:58:04,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:58:04,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:58:06,137.137 INFO    ] ================================================
[2026-08-25 18:58:06,157.157 INFO    ] Launching Daemon at Tue Aug 25 18:58:06 IST 2026
[2026-08-25 18:58:06,169.169 INFO    ] ================================================
[2026-08-25 18:58:06,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:58:06
[2026-08-25 18:58:07,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:58:07,641.641 INFO    ] Initializing speech engine...
[2026-08-25 18:58:07,647.647 INFO    ] 2026-08-25 18:58:07
[2026-08-25 18:58:07,897.897 INFO    ] 2026-08-25 18:58:07
[2026-08-25 18:58:07,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:58:08,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:58:08,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:58:08,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:58:08,397.397 INFO    ] time= 25/08/2026 18:58:08
[2026-08-25 18:58:08,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:58:08,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:58:08,589.589 INFO    ] No existing commands found in stream
[2026-08-25 18:58:13,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:58:13,618.618 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 18:58:14,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:58:14,958.958 INFO    ] Checking for system updates...
[2026-08-25 18:58:14,993.993 INFO    ] 200
[2026-08-25 18:58:14,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:15,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:58:15,053.053 INFO    ] No update needed
[2026-08-25 18:58:15,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 18:58:15,090.090 INFO    ] 200
[2026-08-25 18:58:15,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:15,133.133 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:58:15,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:58:15,191.191 INFO    ] No camera update needed
[2026-08-25 18:58:15,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:58:15,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:58:15,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:58:15,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:58:17,247.247 INFO    ] ================================================
[2026-08-25 18:58:17,262.262 INFO    ] Launching Daemon at Tue Aug 25 18:58:17 IST 2026
[2026-08-25 18:58:17,273.273 INFO    ] ================================================
[2026-08-25 18:58:17,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:58:17
[2026-08-25 18:58:18,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:58:18,731.731 INFO    ] Initializing speech engine...
[2026-08-25 18:58:18,742.742 INFO    ] 2026-08-25 18:58:18
[2026-08-25 18:58:19,004.004 INFO    ] 2026-08-25 18:58:18
[2026-08-25 18:58:19,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:58:19,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:58:19,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:58:19,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:58:19,418.418 INFO    ] time= 25/08/2026 18:58:19
[2026-08-25 18:58:19,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:58:19,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:58:19,604.604 INFO    ] No existing commands found in stream
[2026-08-25 18:58:24,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:58:24,632.632 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 18:58:28,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 18:58:28,552.552 INFO    ] Checking for system updates...
[2026-08-25 18:58:28,588.588 INFO    ] 200
[2026-08-25 18:58:28,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:28,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:58:28,648.648 INFO    ] No update needed
[2026-08-25 18:58:28,650.650 INFO    ] Checking for camera pi updates...
[2026-08-25 18:58:28,684.684 INFO    ] 200
[2026-08-25 18:58:28,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:28,727.727 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:58:28,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:58:28,777.777 INFO    ] No camera update needed
[2026-08-25 18:58:28,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:58:28,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:58:28,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:58:28,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:58:30,832.832 INFO    ] ================================================
[2026-08-25 18:58:30,848.848 INFO    ] Launching Daemon at Tue Aug 25 18:58:30 IST 2026
[2026-08-25 18:58:30,858.858 INFO    ] ================================================
[2026-08-25 18:58:31,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:58:31
[2026-08-25 18:58:32,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:58:32,389.389 INFO    ] Initializing speech engine...
[2026-08-25 18:58:32,398.398 INFO    ] 2026-08-25 18:58:32
[2026-08-25 18:58:32,672.672 INFO    ] 2026-08-25 18:58:32
[2026-08-25 18:58:32,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:58:34,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:58:34,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:58:34,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:58:34,196.196 INFO    ] time= 25/08/2026 18:58:34
[2026-08-25 18:58:34,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:58:34,209.209 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:58:34,277.277 INFO    ] No existing commands found in stream
[2026-08-25 18:58:39,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:58:39,291.291 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 18:58:40,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:58:40,118.118 INFO    ] Checking for system updates...
[2026-08-25 18:58:40,154.154 INFO    ] 200
[2026-08-25 18:58:40,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:40,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:58:40,211.211 INFO    ] No update needed
[2026-08-25 18:58:40,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 18:58:40,247.247 INFO    ] 200
[2026-08-25 18:58:40,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:40,295.295 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:58:40,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:58:40,342.342 INFO    ] No camera update needed
[2026-08-25 18:58:40,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:58:40,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:58:40,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:58:40,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:58:42,400.400 INFO    ] ================================================
[2026-08-25 18:58:42,416.416 INFO    ] Launching Daemon at Tue Aug 25 18:58:42 IST 2026
[2026-08-25 18:58:42,427.427 INFO    ] ================================================
[2026-08-25 18:58:43,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:58:43
[2026-08-25 18:58:43,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:58:44,023.023 INFO    ] Initializing speech engine...
[2026-08-25 18:58:44,032.032 INFO    ] 2026-08-25 18:58:44
[2026-08-25 18:58:44,322.322 INFO    ] 2026-08-25 18:58:44
[2026-08-25 18:58:44,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:58:44,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:58:44,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:58:44,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:58:44,874.874 INFO    ] time= 25/08/2026 18:58:44
[2026-08-25 18:58:44,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:58:44,899.899 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:58:45,015.015 INFO    ] No existing commands found in stream
[2026-08-25 18:58:50,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:58:50,043.043 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 18:58:50,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:58:50,819.819 INFO    ] Checking for system updates...
[2026-08-25 18:58:50,859.859 INFO    ] 200
[2026-08-25 18:58:50,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:50,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:58:50,918.918 INFO    ] No update needed
[2026-08-25 18:58:50,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 18:58:50,958.958 INFO    ] 200
[2026-08-25 18:58:50,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:58:51,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:58:51,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:58:51,063.063 INFO    ] No camera update needed
[2026-08-25 18:58:51,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:58:51,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:58:51,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:58:51,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:58:53,120.120 INFO    ] ================================================
[2026-08-25 18:58:53,136.136 INFO    ] Launching Daemon at Tue Aug 25 18:58:53 IST 2026
[2026-08-25 18:58:53,148.148 INFO    ] ================================================
[2026-08-25 18:58:53,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:58:53
[2026-08-25 18:58:54,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:58:54,744.744 INFO    ] Initializing speech engine...
[2026-08-25 18:58:54,751.751 INFO    ] 2026-08-25 18:58:54
[2026-08-25 18:58:55,034.034 INFO    ] 2026-08-25 18:58:55
[2026-08-25 18:58:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:58:55,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:58:55,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:58:55,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:58:55,566.566 INFO    ] time= 25/08/2026 18:58:55
[2026-08-25 18:58:55,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:58:55,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:58:55,733.733 INFO    ] No existing commands found in stream
[2026-08-25 18:59:00,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:59:00,762.762 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 18:59:01,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 18:59:01,714.714 INFO    ] Checking for system updates...
[2026-08-25 18:59:01,758.758 INFO    ] 200
[2026-08-25 18:59:01,761.761 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:01,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:01,831.831 INFO    ] No update needed
[2026-08-25 18:59:01,834.834 INFO    ] Checking for camera pi updates...
[2026-08-25 18:59:01,877.877 INFO    ] 200
[2026-08-25 18:59:01,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:01,933.933 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:59:01,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:01,987.987 INFO    ] No camera update needed
[2026-08-25 18:59:01,990.990 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:59:01,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:59:02,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:59:02,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:59:04,058.058 INFO    ] ================================================
[2026-08-25 18:59:04,074.074 INFO    ] Launching Daemon at Tue Aug 25 18:59:04 IST 2026
[2026-08-25 18:59:04,084.084 INFO    ] ================================================
[2026-08-25 18:59:04,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:59:04
[2026-08-25 18:59:05,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:59:05,541.541 INFO    ] Initializing speech engine...
[2026-08-25 18:59:05,547.547 INFO    ] 2026-08-25 18:59:05
[2026-08-25 18:59:05,809.809 INFO    ] 2026-08-25 18:59:05
[2026-08-25 18:59:05,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:59:06,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:59:06,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:59:06,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:59:06,283.283 INFO    ] time= 25/08/2026 18:59:06
[2026-08-25 18:59:06,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:59:06,387.387 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:59:06,520.520 INFO    ] No existing commands found in stream
[2026-08-25 18:59:11,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:59:11,540.540 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 18:59:14,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:59:14,372.372 INFO    ] Checking for system updates...
[2026-08-25 18:59:14,407.407 INFO    ] 200
[2026-08-25 18:59:14,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:14,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:14,474.474 INFO    ] No update needed
[2026-08-25 18:59:14,477.477 INFO    ] Checking for camera pi updates...
[2026-08-25 18:59:14,513.513 INFO    ] 200
[2026-08-25 18:59:14,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:14,561.561 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:59:14,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:14,617.617 INFO    ] No camera update needed
[2026-08-25 18:59:14,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:59:14,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:59:14,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:59:14,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:59:16,673.673 INFO    ] ================================================
[2026-08-25 18:59:16,688.688 INFO    ] Launching Daemon at Tue Aug 25 18:59:16 IST 2026
[2026-08-25 18:59:16,699.699 INFO    ] ================================================
[2026-08-25 18:59:17,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:59:17
[2026-08-25 18:59:17,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:59:18,154.154 INFO    ] Initializing speech engine...
[2026-08-25 18:59:18,161.161 INFO    ] 2026-08-25 18:59:18
[2026-08-25 18:59:18,421.421 INFO    ] 2026-08-25 18:59:18
[2026-08-25 18:59:18,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:59:18,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:59:18,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:59:18,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:59:18,959.959 INFO    ] time= 25/08/2026 18:59:18
[2026-08-25 18:59:18,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:59:18,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:59:19,116.116 INFO    ] No existing commands found in stream
[2026-08-25 18:59:24,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:59:24,133.133 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 18:59:26,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 18:59:26,069.069 INFO    ] Checking for system updates...
[2026-08-25 18:59:26,111.111 INFO    ] 200
[2026-08-25 18:59:26,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:26,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:59:26,175.175 INFO    ] No update needed
[2026-08-25 18:59:26,178.178 INFO    ] Checking for camera pi updates...
[2026-08-25 18:59:26,211.211 INFO    ] 200
[2026-08-25 18:59:26,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:26,258.258 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:59:26,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 18:59:26,326.326 INFO    ] No camera update needed
[2026-08-25 18:59:26,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:59:26,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:59:26,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:59:26,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:59:28,381.381 INFO    ] ================================================
[2026-08-25 18:59:28,396.396 INFO    ] Launching Daemon at Tue Aug 25 18:59:28 IST 2026
[2026-08-25 18:59:28,408.408 INFO    ] ================================================
[2026-08-25 18:59:28,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:59:28
[2026-08-25 18:59:29,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:59:29,862.862 INFO    ] Initializing speech engine...
[2026-08-25 18:59:29,869.869 INFO    ] 2026-08-25 18:59:29
[2026-08-25 18:59:30,141.141 INFO    ] 2026-08-25 18:59:30
[2026-08-25 18:59:30,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:59:30,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:59:30,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:59:30,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:59:30,671.671 INFO    ] time= 25/08/2026 18:59:30
[2026-08-25 18:59:30,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:59:30,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:59:30,823.823 INFO    ] No existing commands found in stream
[2026-08-25 18:59:35,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:59:35,840.840 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 18:59:38,783.783 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 18:59:38,786.786 INFO    ] Checking for system updates...
[2026-08-25 18:59:38,821.821 INFO    ] 200
[2026-08-25 18:59:38,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:38,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:38,885.885 INFO    ] No update needed
[2026-08-25 18:59:38,887.887 INFO    ] Checking for camera pi updates...
[2026-08-25 18:59:38,920.920 INFO    ] 200
[2026-08-25 18:59:38,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:38,968.968 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:59:39,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:39,025.025 INFO    ] No camera update needed
[2026-08-25 18:59:39,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:59:39,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:59:39,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:59:39,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:59:41,081.081 INFO    ] ================================================
[2026-08-25 18:59:41,097.097 INFO    ] Launching Daemon at Tue Aug 25 18:59:41 IST 2026
[2026-08-25 18:59:41,108.108 INFO    ] ================================================
[2026-08-25 18:59:41,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:59:41
[2026-08-25 18:59:42,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:59:42,644.644 INFO    ] Initializing speech engine...
[2026-08-25 18:59:42,651.651 INFO    ] 2026-08-25 18:59:42
[2026-08-25 18:59:42,923.923 INFO    ] 2026-08-25 18:59:42
[2026-08-25 18:59:42,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:59:43,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:59:43,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:59:43,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:59:43,473.473 INFO    ] time= 25/08/2026 18:59:43
[2026-08-25 18:59:43,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:59:43,501.501 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:59:43,688.688 INFO    ] No existing commands found in stream
[2026-08-25 18:59:48,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 18:59:48,721.721 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 18:59:50,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 18:59:50,658.658 INFO    ] Checking for system updates...
[2026-08-25 18:59:50,695.695 INFO    ] 200
[2026-08-25 18:59:50,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:50,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:50,753.753 INFO    ] No update needed
[2026-08-25 18:59:50,755.755 INFO    ] Checking for camera pi updates...
[2026-08-25 18:59:50,792.792 INFO    ] 200
[2026-08-25 18:59:50,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 18:59:50,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 18:59:50,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 18:59:50,890.890 INFO    ] No camera update needed
[2026-08-25 18:59:50,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 18:59:50,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 18:59:50,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 18:59:50,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 18:59:52,944.944 INFO    ] ================================================
[2026-08-25 18:59:52,959.959 INFO    ] Launching Daemon at Tue Aug 25 18:59:52 IST 2026
[2026-08-25 18:59:52,971.971 INFO    ] ================================================
[2026-08-25 18:59:53,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 18:59:53
[2026-08-25 18:59:54,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 18:59:54,431.431 INFO    ] Initializing speech engine...
[2026-08-25 18:59:54,440.440 INFO    ] 2026-08-25 18:59:54
[2026-08-25 18:59:54,690.690 INFO    ] 2026-08-25 18:59:54
[2026-08-25 18:59:54,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 18:59:54,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 18:59:54,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 18:59:55,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 18:59:55,188.188 INFO    ] time= 25/08/2026 18:59:55
[2026-08-25 18:59:55,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 18:59:55,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-25 18:59:55,403.403 INFO    ] No existing commands found in stream
[2026-08-25 19:00:00,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:00:00,421.421 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 19:00:01,139.139 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:00:01,141.141 INFO    ] Checking for system updates...
[2026-08-25 19:00:01,177.177 INFO    ] 200
[2026-08-25 19:00:01,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:01,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:00:01,234.234 INFO    ] No update needed
[2026-08-25 19:00:01,236.236 INFO    ] Checking for camera pi updates...
[2026-08-25 19:00:01,273.273 INFO    ] 200
[2026-08-25 19:00:01,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:01,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:00:01,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:00:01,429.429 INFO    ] No camera update needed
[2026-08-25 19:00:01,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:00:01,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:00:01,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:00:01,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:00:03,648.648 INFO    ] ================================================
[2026-08-25 19:00:03,728.728 INFO    ] Launching Daemon at Tue Aug 25 19:00:03 IST 2026
[2026-08-25 19:00:03,788.788 INFO    ] ================================================
[2026-08-25 19:00:05,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:00:05
[2026-08-25 19:00:06,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:00:06,753.753 INFO    ] Initializing speech engine...
[2026-08-25 19:00:06,766.766 INFO    ] 2026-08-25 19:00:06
[2026-08-25 19:00:08,061.061 INFO    ] 2026-08-25 19:00:08
[2026-08-25 19:00:08,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:00:08,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:00:08,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:00:08,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:00:08,492.492 INFO    ] time= 25/08/2026 19:00:08
[2026-08-25 19:00:08,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:00:08,503.503 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:00:08,568.568 INFO    ] No existing commands found in stream
[2026-08-25 19:00:13,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:00:13,580.580 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-08-25 19:00:17,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:00:17,317.317 INFO    ] Checking for system updates...
[2026-08-25 19:00:17,355.355 INFO    ] 200
[2026-08-25 19:00:17,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:17,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:00:17,414.414 INFO    ] No update needed
[2026-08-25 19:00:17,416.416 INFO    ] Checking for camera pi updates...
[2026-08-25 19:00:17,452.452 INFO    ] 200
[2026-08-25 19:00:17,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:17,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:00:17,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:00:17,549.549 INFO    ] No camera update needed
[2026-08-25 19:00:17,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:00:17,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:00:17,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:00:17,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:00:19,605.605 INFO    ] ================================================
[2026-08-25 19:00:19,620.620 INFO    ] Launching Daemon at Tue Aug 25 19:00:19 IST 2026
[2026-08-25 19:00:19,632.632 INFO    ] ================================================
[2026-08-25 19:00:20,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:00:20
[2026-08-25 19:00:20,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:00:21,046.046 INFO    ] Initializing speech engine...
[2026-08-25 19:00:21,059.059 INFO    ] 2026-08-25 19:00:21
[2026-08-25 19:00:21,306.306 INFO    ] 2026-08-25 19:00:21
[2026-08-25 19:00:21,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:00:21,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:00:21,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:00:21,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:00:21,801.801 INFO    ] time= 25/08/2026 19:00:21
[2026-08-25 19:00:21,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:00:21,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:00:22,001.001 INFO    ] No existing commands found in stream
[2026-08-25 19:00:27,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:00:27,028.028 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 19:00:28,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:00:28,896.896 INFO    ] Checking for system updates...
[2026-08-25 19:00:28,936.936 INFO    ] 200
[2026-08-25 19:00:28,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:28,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:00:28,999.999 INFO    ] No update needed
[2026-08-25 19:00:29,002.002 INFO    ] Checking for camera pi updates...
[2026-08-25 19:00:29,036.036 INFO    ] 200
[2026-08-25 19:00:29,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:29,079.079 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:00:29,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:00:29,132.132 INFO    ] No camera update needed
[2026-08-25 19:00:29,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:00:29,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:00:29,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:00:29,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:00:31,191.191 INFO    ] ================================================
[2026-08-25 19:00:31,207.207 INFO    ] Launching Daemon at Tue Aug 25 19:00:31 IST 2026
[2026-08-25 19:00:31,219.219 INFO    ] ================================================
[2026-08-25 19:00:31,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:00:31
[2026-08-25 19:00:32,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:00:32,834.834 INFO    ] Initializing speech engine...
[2026-08-25 19:00:32,846.846 INFO    ] 2026-08-25 19:00:32
[2026-08-25 19:00:33,149.149 INFO    ] 2026-08-25 19:00:33
[2026-08-25 19:00:33,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:00:33,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:00:33,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:00:33,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:00:33,684.684 INFO    ] time= 25/08/2026 19:00:33
[2026-08-25 19:00:33,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:00:33,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:00:33,829.829 INFO    ] No existing commands found in stream
[2026-08-25 19:00:38,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:00:38,853.853 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 19:00:42,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:00:42,102.102 INFO    ] Checking for system updates...
[2026-08-25 19:00:42,138.138 INFO    ] 200
[2026-08-25 19:00:42,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:42,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:00:42,201.201 INFO    ] No update needed
[2026-08-25 19:00:42,203.203 INFO    ] Checking for camera pi updates...
[2026-08-25 19:00:42,237.237 INFO    ] 200
[2026-08-25 19:00:42,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:42,280.280 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:00:42,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:00:42,350.350 INFO    ] No camera update needed
[2026-08-25 19:00:42,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:00:42,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:00:42,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:00:42,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:00:44,404.404 INFO    ] ================================================
[2026-08-25 19:00:44,420.420 INFO    ] Launching Daemon at Tue Aug 25 19:00:44 IST 2026
[2026-08-25 19:00:44,431.431 INFO    ] ================================================
[2026-08-25 19:00:45,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:00:45
[2026-08-25 19:00:45,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:00:45,892.892 INFO    ] Initializing speech engine...
[2026-08-25 19:00:45,902.902 INFO    ] 2026-08-25 19:00:45
[2026-08-25 19:00:46,180.180 INFO    ] 2026-08-25 19:00:46
[2026-08-25 19:00:46,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:00:46,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:00:46,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:00:46,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:00:46,632.632 INFO    ] time= 25/08/2026 19:00:46
[2026-08-25 19:00:46,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:00:46,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:00:46,871.871 INFO    ] No existing commands found in stream
[2026-08-25 19:00:51,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:00:51,896.896 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 19:00:52,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:00:52,411.411 INFO    ] Checking for system updates...
[2026-08-25 19:00:52,446.446 INFO    ] 200
[2026-08-25 19:00:52,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:52,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:00:52,504.504 INFO    ] No update needed
[2026-08-25 19:00:52,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 19:00:52,543.543 INFO    ] 200
[2026-08-25 19:00:52,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:00:52,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:00:52,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:00:52,640.640 INFO    ] No camera update needed
[2026-08-25 19:00:52,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:00:52,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:00:52,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:00:52,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:00:54,695.695 INFO    ] ================================================
[2026-08-25 19:00:54,711.711 INFO    ] Launching Daemon at Tue Aug 25 19:00:54 IST 2026
[2026-08-25 19:00:54,722.722 INFO    ] ================================================
[2026-08-25 19:00:55,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:00:55
[2026-08-25 19:00:55,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:00:56,139.139 INFO    ] Initializing speech engine...
[2026-08-25 19:00:56,152.152 INFO    ] 2026-08-25 19:00:56
[2026-08-25 19:00:56,402.402 INFO    ] 2026-08-25 19:00:56
[2026-08-25 19:00:56,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:00:56,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:00:56,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:00:56,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:00:56,950.950 INFO    ] time= 25/08/2026 19:00:56
[2026-08-25 19:00:56,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:00:56,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:00:57,122.122 INFO    ] No existing commands found in stream
[2026-08-25 19:01:02,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:01:02,140.140 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 19:01:04,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:01:04,313.313 INFO    ] Checking for system updates...
[2026-08-25 19:01:04,353.353 INFO    ] 200
[2026-08-25 19:01:04,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:04,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:04,416.416 INFO    ] No update needed
[2026-08-25 19:01:04,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 19:01:04,456.456 INFO    ] 200
[2026-08-25 19:01:04,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:04,503.503 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:01:04,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:04,562.562 INFO    ] No camera update needed
[2026-08-25 19:01:04,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:01:04,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:01:04,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:01:04,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:01:06,621.621 INFO    ] ================================================
[2026-08-25 19:01:06,636.636 INFO    ] Launching Daemon at Tue Aug 25 19:01:06 IST 2026
[2026-08-25 19:01:06,647.647 INFO    ] ================================================
[2026-08-25 19:01:07,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:01:07
[2026-08-25 19:01:07,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:01:08,117.117 INFO    ] Initializing speech engine...
[2026-08-25 19:01:08,128.128 INFO    ] 2026-08-25 19:01:08
[2026-08-25 19:01:08,392.392 INFO    ] 2026-08-25 19:01:08
[2026-08-25 19:01:08,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:01:08,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:01:08,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:01:08,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:01:08,880.880 INFO    ] time= 25/08/2026 19:01:08
[2026-08-25 19:01:08,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:01:08,943.943 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:01:09,091.091 INFO    ] No existing commands found in stream
[2026-08-25 19:01:14,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:01:14,112.112 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 19:01:16,739.739 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:01:16,742.742 INFO    ] Checking for system updates...
[2026-08-25 19:01:16,782.782 INFO    ] 200
[2026-08-25 19:01:16,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:16,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:01:16,846.846 INFO    ] No update needed
[2026-08-25 19:01:16,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 19:01:16,882.882 INFO    ] 200
[2026-08-25 19:01:16,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:16,929.929 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:01:16,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:01:16,976.976 INFO    ] No camera update needed
[2026-08-25 19:01:16,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:01:16,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:01:16,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:01:16,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:01:19,031.031 INFO    ] ================================================
[2026-08-25 19:01:19,046.046 INFO    ] Launching Daemon at Tue Aug 25 19:01:19 IST 2026
[2026-08-25 19:01:19,058.058 INFO    ] ================================================
[2026-08-25 19:01:19,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:01:19
[2026-08-25 19:01:20,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:01:20,581.581 INFO    ] Initializing speech engine...
[2026-08-25 19:01:20,590.590 INFO    ] 2026-08-25 19:01:20
[2026-08-25 19:01:20,853.853 INFO    ] 2026-08-25 19:01:20
[2026-08-25 19:01:20,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:01:21,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:01:21,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:01:21,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:01:21,351.351 INFO    ] time= 25/08/2026 19:01:21
[2026-08-25 19:01:21,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:01:21,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:01:21,557.557 INFO    ] No existing commands found in stream
[2026-08-25 19:01:26,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:01:26,585.585 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 19:01:30,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:01:30,273.273 INFO    ] Checking for system updates...
[2026-08-25 19:01:30,310.310 INFO    ] 200
[2026-08-25 19:01:30,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:30,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:30,374.374 INFO    ] No update needed
[2026-08-25 19:01:30,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 19:01:30,410.410 INFO    ] 200
[2026-08-25 19:01:30,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:30,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:01:30,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:30,506.506 INFO    ] No camera update needed
[2026-08-25 19:01:30,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:01:30,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:01:30,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:01:30,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:01:32,564.564 INFO    ] ================================================
[2026-08-25 19:01:32,580.580 INFO    ] Launching Daemon at Tue Aug 25 19:01:32 IST 2026
[2026-08-25 19:01:32,591.591 INFO    ] ================================================
[2026-08-25 19:01:33,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:01:33
[2026-08-25 19:01:33,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:01:34,001.001 INFO    ] Initializing speech engine...
[2026-08-25 19:01:34,015.015 INFO    ] 2026-08-25 19:01:34
[2026-08-25 19:01:34,298.298 INFO    ] 2026-08-25 19:01:34
[2026-08-25 19:01:34,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:01:34,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:01:34,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:01:34,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:01:34,682.682 INFO    ] time= 25/08/2026 19:01:34
[2026-08-25 19:01:34,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:01:34,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:01:34,832.832 INFO    ] No existing commands found in stream
[2026-08-25 19:01:39,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:01:39,865.865 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 19:01:41,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:01:41,238.238 INFO    ] Checking for system updates...
[2026-08-25 19:01:41,275.275 INFO    ] 200
[2026-08-25 19:01:41,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:41,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:41,341.341 INFO    ] No update needed
[2026-08-25 19:01:41,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 19:01:41,378.378 INFO    ] 200
[2026-08-25 19:01:41,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:41,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:01:41,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:41,480.480 INFO    ] No camera update needed
[2026-08-25 19:01:41,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:01:41,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:01:41,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:01:41,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:01:43,539.539 INFO    ] ================================================
[2026-08-25 19:01:43,554.554 INFO    ] Launching Daemon at Tue Aug 25 19:01:43 IST 2026
[2026-08-25 19:01:43,566.566 INFO    ] ================================================
[2026-08-25 19:01:44,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:01:44
[2026-08-25 19:01:44,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:01:44,986.986 INFO    ] Initializing speech engine...
[2026-08-25 19:01:44,992.992 INFO    ] 2026-08-25 19:01:44
[2026-08-25 19:01:45,290.290 INFO    ] 2026-08-25 19:01:45
[2026-08-25 19:01:45,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:01:45,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:01:45,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:01:45,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:01:45,717.717 INFO    ] time= 25/08/2026 19:01:45
[2026-08-25 19:01:45,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:01:45,728.728 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:01:45,825.825 INFO    ] No existing commands found in stream
[2026-08-25 19:01:50,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:01:50,858.858 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 19:01:52,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:01:52,805.805 INFO    ] Checking for system updates...
[2026-08-25 19:01:52,841.841 INFO    ] 200
[2026-08-25 19:01:52,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:52,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:52,908.908 INFO    ] No update needed
[2026-08-25 19:01:52,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 19:01:52,946.946 INFO    ] 200
[2026-08-25 19:01:52,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:01:52,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:01:53,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:01:53,056.056 INFO    ] No camera update needed
[2026-08-25 19:01:53,059.059 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:01:53,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:01:53,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:01:53,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:01:55,115.115 INFO    ] ================================================
[2026-08-25 19:01:55,130.130 INFO    ] Launching Daemon at Tue Aug 25 19:01:55 IST 2026
[2026-08-25 19:01:55,142.142 INFO    ] ================================================
[2026-08-25 19:01:55,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:01:55
[2026-08-25 19:01:56,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:01:56,795.795 INFO    ] Initializing speech engine...
[2026-08-25 19:01:56,807.807 INFO    ] 2026-08-25 19:01:56
[2026-08-25 19:01:57,095.095 INFO    ] 2026-08-25 19:01:57
[2026-08-25 19:01:57,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:01:57,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:01:57,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:01:57,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:01:57,634.634 INFO    ] time= 25/08/2026 19:01:57
[2026-08-25 19:01:57,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:01:57,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:01:57,792.792 INFO    ] No existing commands found in stream
[2026-08-25 19:02:02,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:02:02,809.809 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 19:02:04,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:02:04,313.313 INFO    ] Checking for system updates...
[2026-08-25 19:02:04,353.353 INFO    ] 200
[2026-08-25 19:02:04,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:04,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:02:04,411.411 INFO    ] No update needed
[2026-08-25 19:02:04,413.413 INFO    ] Checking for camera pi updates...
[2026-08-25 19:02:04,451.451 INFO    ] 200
[2026-08-25 19:02:04,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:04,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:02:04,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:02:04,547.547 INFO    ] No camera update needed
[2026-08-25 19:02:04,550.550 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:02:04,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:02:04,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:02:04,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:02:06,602.602 INFO    ] ================================================
[2026-08-25 19:02:06,618.618 INFO    ] Launching Daemon at Tue Aug 25 19:02:06 IST 2026
[2026-08-25 19:02:06,630.630 INFO    ] ================================================
[2026-08-25 19:02:07,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:02:07
[2026-08-25 19:02:07,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:02:08,073.073 INFO    ] Initializing speech engine...
[2026-08-25 19:02:08,088.088 INFO    ] 2026-08-25 19:02:08
[2026-08-25 19:02:08,370.370 INFO    ] 2026-08-25 19:02:08
[2026-08-25 19:02:08,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:02:08,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:02:08,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:02:08,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:02:08,788.788 INFO    ] time= 25/08/2026 19:02:08
[2026-08-25 19:02:08,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:02:08,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:02:08,966.966 INFO    ] No existing commands found in stream
[2026-08-25 19:02:13,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:02:13,994.994 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 19:02:18,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:02:18,143.143 INFO    ] Checking for system updates...
[2026-08-25 19:02:18,180.180 INFO    ] 200
[2026-08-25 19:02:18,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:18,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:02:18,237.237 INFO    ] No update needed
[2026-08-25 19:02:18,239.239 INFO    ] Checking for camera pi updates...
[2026-08-25 19:02:18,273.273 INFO    ] 200
[2026-08-25 19:02:18,276.276 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:18,319.319 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:02:18,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:02:18,472.472 INFO    ] No camera update needed
[2026-08-25 19:02:18,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:02:18,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:02:18,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:02:18,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:02:20,528.528 INFO    ] ================================================
[2026-08-25 19:02:20,544.544 INFO    ] Launching Daemon at Tue Aug 25 19:02:20 IST 2026
[2026-08-25 19:02:20,555.555 INFO    ] ================================================
[2026-08-25 19:02:21,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:02:21
[2026-08-25 19:02:21,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:02:22,196.196 INFO    ] Initializing speech engine...
[2026-08-25 19:02:22,207.207 INFO    ] 2026-08-25 19:02:22
[2026-08-25 19:02:22,493.493 INFO    ] 2026-08-25 19:02:22
[2026-08-25 19:02:22,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:02:22,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:02:22,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:02:23,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:02:23,024.024 INFO    ] time= 25/08/2026 19:02:23
[2026-08-25 19:02:23,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:02:23,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:02:23,185.185 INFO    ] No existing commands found in stream
[2026-08-25 19:02:28,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:02:28,209.209 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 19:02:30,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:02:30,573.573 INFO    ] Checking for system updates...
[2026-08-25 19:02:30,610.610 INFO    ] 200
[2026-08-25 19:02:30,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:30,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:02:30,669.669 INFO    ] No update needed
[2026-08-25 19:02:30,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 19:02:30,706.706 INFO    ] 200
[2026-08-25 19:02:30,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:30,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:02:30,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:02:30,805.805 INFO    ] No camera update needed
[2026-08-25 19:02:30,808.808 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:02:30,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:02:30,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:02:30,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:02:32,864.864 INFO    ] ================================================
[2026-08-25 19:02:32,881.881 INFO    ] Launching Daemon at Tue Aug 25 19:02:32 IST 2026
[2026-08-25 19:02:32,892.892 INFO    ] ================================================
[2026-08-25 19:02:33,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:02:33
[2026-08-25 19:02:34,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:02:34,358.358 INFO    ] Initializing speech engine...
[2026-08-25 19:02:34,367.367 INFO    ] 2026-08-25 19:02:34
[2026-08-25 19:02:34,620.620 INFO    ] 2026-08-25 19:02:34
[2026-08-25 19:02:34,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:02:34,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:02:34,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:02:34,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:02:35,001.001 INFO    ] time= 25/08/2026 19:02:34
[2026-08-25 19:02:35,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:02:35,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:02:35,168.168 INFO    ] No existing commands found in stream
[2026-08-25 19:02:40,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:02:40,191.191 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 19:02:41,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:02:41,739.739 INFO    ] Checking for system updates...
[2026-08-25 19:02:41,774.774 INFO    ] 200
[2026-08-25 19:02:41,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:41,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:02:41,839.839 INFO    ] No update needed
[2026-08-25 19:02:41,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 19:02:41,875.875 INFO    ] 200
[2026-08-25 19:02:41,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:41,917.917 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:02:41,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:02:41,977.977 INFO    ] No camera update needed
[2026-08-25 19:02:41,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:02:41,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:02:41,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:02:41,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:02:44,033.033 INFO    ] ================================================
[2026-08-25 19:02:44,049.049 INFO    ] Launching Daemon at Tue Aug 25 19:02:44 IST 2026
[2026-08-25 19:02:44,061.061 INFO    ] ================================================
[2026-08-25 19:02:44,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:02:44
[2026-08-25 19:02:45,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:02:45,673.673 INFO    ] Initializing speech engine...
[2026-08-25 19:02:45,679.679 INFO    ] 2026-08-25 19:02:45
[2026-08-25 19:02:45,956.956 INFO    ] 2026-08-25 19:02:45
[2026-08-25 19:02:46,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:02:46,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:02:46,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:02:46,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:02:46,503.503 INFO    ] time= 25/08/2026 19:02:46
[2026-08-25 19:02:46,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:02:46,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:02:46,707.707 INFO    ] No existing commands found in stream
[2026-08-25 19:02:51,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:02:51,746.746 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 19:02:52,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:02:52,334.334 INFO    ] Checking for system updates...
[2026-08-25 19:02:52,371.371 INFO    ] 200
[2026-08-25 19:02:52,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:52,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:02:52,435.435 INFO    ] No update needed
[2026-08-25 19:02:52,438.438 INFO    ] Checking for camera pi updates...
[2026-08-25 19:02:52,472.472 INFO    ] 200
[2026-08-25 19:02:52,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:02:52,520.520 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:02:52,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:02:52,580.580 INFO    ] No camera update needed
[2026-08-25 19:02:52,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:02:52,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:02:52,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:02:52,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:02:54,634.634 INFO    ] ================================================
[2026-08-25 19:02:54,650.650 INFO    ] Launching Daemon at Tue Aug 25 19:02:54 IST 2026
[2026-08-25 19:02:54,661.661 INFO    ] ================================================
[2026-08-25 19:02:55,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:02:55
[2026-08-25 19:02:55,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:02:56,241.241 INFO    ] Initializing speech engine...
[2026-08-25 19:02:56,249.249 INFO    ] 2026-08-25 19:02:56
[2026-08-25 19:02:56,520.520 INFO    ] 2026-08-25 19:02:56
[2026-08-25 19:02:56,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:02:56,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:02:56,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:02:57,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:02:57,068.068 INFO    ] time= 25/08/2026 19:02:57
[2026-08-25 19:02:57,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:02:57,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:02:57,223.223 INFO    ] No existing commands found in stream
[2026-08-25 19:03:02,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:03:02,261.261 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 19:03:02,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:03:03,000.000 INFO    ] Checking for system updates...
[2026-08-25 19:03:03,036.036 INFO    ] 200
[2026-08-25 19:03:03,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:03,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:03:03,093.093 INFO    ] No update needed
[2026-08-25 19:03:03,096.096 INFO    ] Checking for camera pi updates...
[2026-08-25 19:03:03,129.129 INFO    ] 200
[2026-08-25 19:03:03,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:03,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:03:03,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:03:03,223.223 INFO    ] No camera update needed
[2026-08-25 19:03:03,225.225 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:03:03,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:03:03,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:03:03,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:03:05,278.278 INFO    ] ================================================
[2026-08-25 19:03:05,294.294 INFO    ] Launching Daemon at Tue Aug 25 19:03:05 IST 2026
[2026-08-25 19:03:05,305.305 INFO    ] ================================================
[2026-08-25 19:03:05,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:03:05
[2026-08-25 19:03:06,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:03:06,860.860 INFO    ] Initializing speech engine...
[2026-08-25 19:03:06,870.870 INFO    ] 2026-08-25 19:03:06
[2026-08-25 19:03:07,138.138 INFO    ] 2026-08-25 19:03:07
[2026-08-25 19:03:07,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:03:07,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:03:07,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:03:07,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:03:07,550.550 INFO    ] time= 25/08/2026 19:03:07
[2026-08-25 19:03:07,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:03:07,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:03:07,710.710 INFO    ] No existing commands found in stream
[2026-08-25 19:03:12,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:03:12,738.738 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 19:03:14,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:03:14,159.159 INFO    ] Checking for system updates...
[2026-08-25 19:03:14,195.195 INFO    ] 200
[2026-08-25 19:03:14,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:14,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:03:14,253.253 INFO    ] No update needed
[2026-08-25 19:03:14,255.255 INFO    ] Checking for camera pi updates...
[2026-08-25 19:03:14,289.289 INFO    ] 200
[2026-08-25 19:03:14,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:14,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:03:14,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:03:14,381.381 INFO    ] No camera update needed
[2026-08-25 19:03:14,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:03:14,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:03:14,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:03:14,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:03:16,436.436 INFO    ] ================================================
[2026-08-25 19:03:16,451.451 INFO    ] Launching Daemon at Tue Aug 25 19:03:16 IST 2026
[2026-08-25 19:03:16,462.462 INFO    ] ================================================
[2026-08-25 19:03:17,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:03:17
[2026-08-25 19:03:17,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:03:17,897.897 INFO    ] Initializing speech engine...
[2026-08-25 19:03:17,903.903 INFO    ] 2026-08-25 19:03:17
[2026-08-25 19:03:18,150.150 INFO    ] 2026-08-25 19:03:18
[2026-08-25 19:03:18,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:03:18,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:03:18,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:03:18,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:03:18,526.526 INFO    ] time= 25/08/2026 19:03:18
[2026-08-25 19:03:18,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:03:18,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:03:18,725.725 INFO    ] No existing commands found in stream
[2026-08-25 19:03:23,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:03:23,738.738 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 19:03:26,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:03:26,920.920 INFO    ] Checking for system updates...
[2026-08-25 19:03:26,959.959 INFO    ] 200
[2026-08-25 19:03:26,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:27,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:03:27,017.017 INFO    ] No update needed
[2026-08-25 19:03:27,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 19:03:27,052.052 INFO    ] 200
[2026-08-25 19:03:27,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:27,095.095 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:03:27,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:03:27,146.146 INFO    ] No camera update needed
[2026-08-25 19:03:27,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:03:27,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:03:27,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:03:27,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:03:29,201.201 INFO    ] ================================================
[2026-08-25 19:03:29,216.216 INFO    ] Launching Daemon at Tue Aug 25 19:03:29 IST 2026
[2026-08-25 19:03:29,227.227 INFO    ] ================================================
[2026-08-25 19:03:29,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:03:29
[2026-08-25 19:03:30,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:03:30,817.817 INFO    ] Initializing speech engine...
[2026-08-25 19:03:30,826.826 INFO    ] 2026-08-25 19:03:30
[2026-08-25 19:03:31,097.097 INFO    ] 2026-08-25 19:03:31
[2026-08-25 19:03:31,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:03:31,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:03:31,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:03:31,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:03:31,627.627 INFO    ] time= 25/08/2026 19:03:31
[2026-08-25 19:03:31,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:03:31,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:03:31,839.839 INFO    ] No existing commands found in stream
[2026-08-25 19:03:36,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:03:36,868.868 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 19:03:39,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:03:39,060.060 INFO    ] Checking for system updates...
[2026-08-25 19:03:39,097.097 INFO    ] 200
[2026-08-25 19:03:39,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:39,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:03:39,155.155 INFO    ] No update needed
[2026-08-25 19:03:39,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 19:03:39,196.196 INFO    ] 200
[2026-08-25 19:03:39,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:39,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:03:39,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:03:39,289.289 INFO    ] No camera update needed
[2026-08-25 19:03:39,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:03:39,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:03:39,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:03:39,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:03:41,345.345 INFO    ] ================================================
[2026-08-25 19:03:41,359.359 INFO    ] Launching Daemon at Tue Aug 25 19:03:41 IST 2026
[2026-08-25 19:03:41,370.370 INFO    ] ================================================
[2026-08-25 19:03:41,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:03:41
[2026-08-25 19:03:42,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:03:42,790.790 INFO    ] Initializing speech engine...
[2026-08-25 19:03:42,803.803 INFO    ] 2026-08-25 19:03:42
[2026-08-25 19:03:43,053.053 INFO    ] 2026-08-25 19:03:43
[2026-08-25 19:03:43,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:03:43,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:03:43,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:03:43,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:03:43,533.533 INFO    ] time= 25/08/2026 19:03:43
[2026-08-25 19:03:43,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:03:43,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:03:43,759.759 INFO    ] No existing commands found in stream
[2026-08-25 19:03:48,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:03:48,789.789 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 19:03:50,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:03:50,930.930 INFO    ] Checking for system updates...
[2026-08-25 19:03:50,966.966 INFO    ] 200
[2026-08-25 19:03:50,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:51,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:03:51,027.027 INFO    ] No update needed
[2026-08-25 19:03:51,029.029 INFO    ] Checking for camera pi updates...
[2026-08-25 19:03:51,062.062 INFO    ] 200
[2026-08-25 19:03:51,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:03:51,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:03:51,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:03:51,158.158 INFO    ] No camera update needed
[2026-08-25 19:03:51,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:03:51,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:03:51,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:03:51,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:03:53,212.212 INFO    ] ================================================
[2026-08-25 19:03:53,228.228 INFO    ] Launching Daemon at Tue Aug 25 19:03:53 IST 2026
[2026-08-25 19:03:53,239.239 INFO    ] ================================================
[2026-08-25 19:03:53,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:03:53
[2026-08-25 19:03:54,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:03:54,696.696 INFO    ] Initializing speech engine...
[2026-08-25 19:03:54,711.711 INFO    ] 2026-08-25 19:03:54
[2026-08-25 19:03:54,986.986 INFO    ] 2026-08-25 19:03:54
[2026-08-25 19:03:55,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:03:55,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:03:55,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:03:55,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:03:55,398.398 INFO    ] time= 25/08/2026 19:03:55
[2026-08-25 19:03:55,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:03:55,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:03:55,540.540 INFO    ] No existing commands found in stream
[2026-08-25 19:04:00,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:04:00,573.573 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 19:04:04,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:04:04,164.164 INFO    ] Checking for system updates...
[2026-08-25 19:04:04,201.201 INFO    ] 200
[2026-08-25 19:04:04,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:04,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:04:04,259.259 INFO    ] No update needed
[2026-08-25 19:04:04,261.261 INFO    ] Checking for camera pi updates...
[2026-08-25 19:04:04,294.294 INFO    ] 200
[2026-08-25 19:04:04,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:04,337.337 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:04:04,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:04:04,393.393 INFO    ] No camera update needed
[2026-08-25 19:04:04,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:04:04,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:04:04,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:04:04,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:04:06,448.448 INFO    ] ================================================
[2026-08-25 19:04:06,463.463 INFO    ] Launching Daemon at Tue Aug 25 19:04:06 IST 2026
[2026-08-25 19:04:06,474.474 INFO    ] ================================================
[2026-08-25 19:04:07,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:04:07
[2026-08-25 19:04:07,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:04:08,083.083 INFO    ] Initializing speech engine...
[2026-08-25 19:04:08,089.089 INFO    ] 2026-08-25 19:04:08
[2026-08-25 19:04:08,361.361 INFO    ] 2026-08-25 19:04:08
[2026-08-25 19:04:08,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:04:08,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:04:08,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:04:08,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:04:08,836.836 INFO    ] time= 25/08/2026 19:04:08
[2026-08-25 19:04:08,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:04:08,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:04:09,073.073 INFO    ] No existing commands found in stream
[2026-08-25 19:04:14,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:04:14,102.102 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 19:04:18,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:04:18,313.313 INFO    ] Checking for system updates...
[2026-08-25 19:04:18,349.349 INFO    ] 200
[2026-08-25 19:04:18,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:18,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:04:18,416.416 INFO    ] No update needed
[2026-08-25 19:04:18,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 19:04:18,453.453 INFO    ] 200
[2026-08-25 19:04:18,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:18,501.501 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:04:18,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:04:18,562.562 INFO    ] No camera update needed
[2026-08-25 19:04:18,565.565 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:04:18,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:04:18,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:04:18,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:04:20,622.622 INFO    ] ================================================
[2026-08-25 19:04:20,637.637 INFO    ] Launching Daemon at Tue Aug 25 19:04:20 IST 2026
[2026-08-25 19:04:20,648.648 INFO    ] ================================================
[2026-08-25 19:04:21,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:04:21
[2026-08-25 19:04:21,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:04:22,091.091 INFO    ] Initializing speech engine...
[2026-08-25 19:04:22,101.101 INFO    ] 2026-08-25 19:04:22
[2026-08-25 19:04:22,365.365 INFO    ] 2026-08-25 19:04:22
[2026-08-25 19:04:22,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:04:22,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:04:22,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:04:22,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:04:22,776.776 INFO    ] time= 25/08/2026 19:04:22
[2026-08-25 19:04:22,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:04:22,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:04:22,977.977 INFO    ] No existing commands found in stream
[2026-08-25 19:04:27,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:04:28,000.000 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 19:04:29,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:04:29,674.674 INFO    ] Checking for system updates...
[2026-08-25 19:04:29,709.709 INFO    ] 200
[2026-08-25 19:04:29,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:29,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:04:29,766.766 INFO    ] No update needed
[2026-08-25 19:04:29,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 19:04:29,801.801 INFO    ] 200
[2026-08-25 19:04:29,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:29,843.843 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:04:29,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:04:29,992.992 INFO    ] No camera update needed
[2026-08-25 19:04:29,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:04:29,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:04:30,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:04:30,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:04:32,049.049 INFO    ] ================================================
[2026-08-25 19:04:32,067.067 INFO    ] Launching Daemon at Tue Aug 25 19:04:32 IST 2026
[2026-08-25 19:04:32,079.079 INFO    ] ================================================
[2026-08-25 19:04:32,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:04:32
[2026-08-25 19:04:33,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:04:33,559.559 INFO    ] Initializing speech engine...
[2026-08-25 19:04:33,568.568 INFO    ] 2026-08-25 19:04:33
[2026-08-25 19:04:33,855.855 INFO    ] 2026-08-25 19:04:33
[2026-08-25 19:04:33,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:04:34,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:04:34,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:04:34,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:04:34,410.410 INFO    ] time= 25/08/2026 19:04:34
[2026-08-25 19:04:34,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:04:34,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:04:34,667.667 INFO    ] No existing commands found in stream
[2026-08-25 19:04:39,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:04:39,686.686 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 19:04:42,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:04:42,256.256 INFO    ] Checking for system updates...
[2026-08-25 19:04:42,303.303 INFO    ] 200
[2026-08-25 19:04:42,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:42,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:04:42,387.387 INFO    ] No update needed
[2026-08-25 19:04:42,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 19:04:42,450.450 INFO    ] 200
[2026-08-25 19:04:42,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:42,494.494 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:04:42,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:04:42,545.545 INFO    ] No camera update needed
[2026-08-25 19:04:42,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:04:42,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:04:42,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:04:42,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:04:44,606.606 INFO    ] ================================================
[2026-08-25 19:04:44,621.621 INFO    ] Launching Daemon at Tue Aug 25 19:04:44 IST 2026
[2026-08-25 19:04:44,632.632 INFO    ] ================================================
[2026-08-25 19:04:45,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:04:45
[2026-08-25 19:04:45,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:04:46,042.042 INFO    ] Initializing speech engine...
[2026-08-25 19:04:46,066.066 INFO    ] 2026-08-25 19:04:46
[2026-08-25 19:04:46,337.337 INFO    ] 2026-08-25 19:04:46
[2026-08-25 19:04:46,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:04:46,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:04:46,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:04:46,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:04:46,841.841 INFO    ] time= 25/08/2026 19:04:46
[2026-08-25 19:04:46,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:04:46,965.965 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:04:47,111.111 INFO    ] No existing commands found in stream
[2026-08-25 19:04:52,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:04:52,139.139 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 19:04:53,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:04:53,510.510 INFO    ] Checking for system updates...
[2026-08-25 19:04:53,546.546 INFO    ] 200
[2026-08-25 19:04:53,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:53,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:04:53,603.603 INFO    ] No update needed
[2026-08-25 19:04:53,609.609 INFO    ] Checking for camera pi updates...
[2026-08-25 19:04:53,643.643 INFO    ] 200
[2026-08-25 19:04:53,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:04:53,685.685 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:04:53,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:04:53,735.735 INFO    ] No camera update needed
[2026-08-25 19:04:53,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:04:53,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:04:53,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:04:53,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:04:55,791.791 INFO    ] ================================================
[2026-08-25 19:04:55,806.806 INFO    ] Launching Daemon at Tue Aug 25 19:04:55 IST 2026
[2026-08-25 19:04:55,817.817 INFO    ] ================================================
[2026-08-25 19:04:56,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:04:56
[2026-08-25 19:04:56,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:04:57,255.255 INFO    ] Initializing speech engine...
[2026-08-25 19:04:57,270.270 INFO    ] 2026-08-25 19:04:57
[2026-08-25 19:04:57,552.552 INFO    ] 2026-08-25 19:04:57
[2026-08-25 19:04:57,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:04:57,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:04:57,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:04:58,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:04:58,041.041 INFO    ] time= 25/08/2026 19:04:58
[2026-08-25 19:04:58,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:04:58,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:04:58,245.245 INFO    ] No existing commands found in stream
[2026-08-25 19:05:03,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:05:03,259.259 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 19:05:03,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:05:03,848.848 INFO    ] Checking for system updates...
[2026-08-25 19:05:03,883.883 INFO    ] 200
[2026-08-25 19:05:03,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:03,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:05:03,940.940 INFO    ] No update needed
[2026-08-25 19:05:03,943.943 INFO    ] Checking for camera pi updates...
[2026-08-25 19:05:03,978.978 INFO    ] 200
[2026-08-25 19:05:03,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:04,021.021 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:05:04,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:05:04,073.073 INFO    ] No camera update needed
[2026-08-25 19:05:04,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:05:04,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:05:04,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:05:04,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:05:06,131.131 INFO    ] ================================================
[2026-08-25 19:05:06,146.146 INFO    ] Launching Daemon at Tue Aug 25 19:05:06 IST 2026
[2026-08-25 19:05:06,160.160 INFO    ] ================================================
[2026-08-25 19:05:06,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:05:06
[2026-08-25 19:05:07,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:05:07,581.581 INFO    ] Initializing speech engine...
[2026-08-25 19:05:07,587.587 INFO    ] 2026-08-25 19:05:07
[2026-08-25 19:05:07,876.876 INFO    ] 2026-08-25 19:05:07
[2026-08-25 19:05:07,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:05:08,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:05:08,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:05:08,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:05:08,288.288 INFO    ] time= 25/08/2026 19:05:08
[2026-08-25 19:05:08,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:05:08,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:05:08,461.461 INFO    ] No existing commands found in stream
[2026-08-25 19:05:13,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:05:13,489.489 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 19:05:17,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:05:17,030.030 INFO    ] Checking for system updates...
[2026-08-25 19:05:17,066.066 INFO    ] 200
[2026-08-25 19:05:17,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:17,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:05:17,125.125 INFO    ] No update needed
[2026-08-25 19:05:17,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 19:05:17,161.161 INFO    ] 200
[2026-08-25 19:05:17,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:17,205.205 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:05:17,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:05:17,262.262 INFO    ] No camera update needed
[2026-08-25 19:05:17,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:05:17,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:05:17,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:05:17,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:05:19,316.316 INFO    ] ================================================
[2026-08-25 19:05:19,331.331 INFO    ] Launching Daemon at Tue Aug 25 19:05:19 IST 2026
[2026-08-25 19:05:19,342.342 INFO    ] ================================================
[2026-08-25 19:05:19,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:05:19
[2026-08-25 19:05:20,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:05:20,742.742 INFO    ] Initializing speech engine...
[2026-08-25 19:05:20,765.765 INFO    ] 2026-08-25 19:05:20
[2026-08-25 19:05:21,018.018 INFO    ] 2026-08-25 19:05:21
[2026-08-25 19:05:21,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:05:21,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:05:21,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:05:21,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:05:21,515.515 INFO    ] time= 25/08/2026 19:05:21
[2026-08-25 19:05:21,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:05:21,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:05:21,715.715 INFO    ] No existing commands found in stream
[2026-08-25 19:05:26,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:05:26,744.744 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 19:05:30,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:05:30,916.916 INFO    ] Checking for system updates...
[2026-08-25 19:05:30,951.951 INFO    ] 200
[2026-08-25 19:05:30,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:31,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:05:31,010.010 INFO    ] No update needed
[2026-08-25 19:05:31,012.012 INFO    ] Checking for camera pi updates...
[2026-08-25 19:05:31,045.045 INFO    ] 200
[2026-08-25 19:05:31,048.048 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:31,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:05:31,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:05:31,150.150 INFO    ] No camera update needed
[2026-08-25 19:05:31,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:05:31,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:05:31,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:05:31,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:05:33,207.207 INFO    ] ================================================
[2026-08-25 19:05:33,223.223 INFO    ] Launching Daemon at Tue Aug 25 19:05:33 IST 2026
[2026-08-25 19:05:33,234.234 INFO    ] ================================================
[2026-08-25 19:05:33,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:05:33
[2026-08-25 19:05:34,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:05:34,764.764 INFO    ] Initializing speech engine...
[2026-08-25 19:05:34,771.771 INFO    ] 2026-08-25 19:05:34
[2026-08-25 19:05:35,021.021 INFO    ] 2026-08-25 19:05:35
[2026-08-25 19:05:35,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:05:35,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:05:35,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:05:35,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:05:35,538.538 INFO    ] time= 25/08/2026 19:05:35
[2026-08-25 19:05:35,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:05:35,620.620 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:05:35,763.763 INFO    ] No existing commands found in stream
[2026-08-25 19:05:40,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:05:40,782.782 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 19:05:45,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:05:45,102.102 INFO    ] Checking for system updates...
[2026-08-25 19:05:45,139.139 INFO    ] 200
[2026-08-25 19:05:45,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:45,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:05:45,203.203 INFO    ] No update needed
[2026-08-25 19:05:45,206.206 INFO    ] Checking for camera pi updates...
[2026-08-25 19:05:45,244.244 INFO    ] 200
[2026-08-25 19:05:45,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:45,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:05:45,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:05:45,339.339 INFO    ] No camera update needed
[2026-08-25 19:05:45,342.342 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:05:45,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:05:45,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:05:45,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:05:47,398.398 INFO    ] ================================================
[2026-08-25 19:05:47,413.413 INFO    ] Launching Daemon at Tue Aug 25 19:05:47 IST 2026
[2026-08-25 19:05:47,423.423 INFO    ] ================================================
[2026-08-25 19:05:47,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:05:47
[2026-08-25 19:05:48,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:05:48,853.853 INFO    ] Initializing speech engine...
[2026-08-25 19:05:48,866.866 INFO    ] 2026-08-25 19:05:48
[2026-08-25 19:05:49,132.132 INFO    ] 2026-08-25 19:05:49
[2026-08-25 19:05:49,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:05:49,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:05:49,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:05:49,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:05:49,608.608 INFO    ] time= 25/08/2026 19:05:49
[2026-08-25 19:05:49,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:05:49,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:05:49,824.824 INFO    ] No existing commands found in stream
[2026-08-25 19:05:54,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:05:54,842.842 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 19:05:57,461.461 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:05:57,465.465 INFO    ] Checking for system updates...
[2026-08-25 19:05:57,533.533 INFO    ] 200
[2026-08-25 19:05:57,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:57,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:05:57,600.600 INFO    ] No update needed
[2026-08-25 19:05:57,603.603 INFO    ] Checking for camera pi updates...
[2026-08-25 19:05:57,638.638 INFO    ] 200
[2026-08-25 19:05:57,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:05:57,685.685 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:05:57,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:05:57,739.739 INFO    ] No camera update needed
[2026-08-25 19:05:57,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:05:57,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:05:57,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:05:57,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:05:59,794.794 INFO    ] ================================================
[2026-08-25 19:05:59,809.809 INFO    ] Launching Daemon at Tue Aug 25 19:05:59 IST 2026
[2026-08-25 19:05:59,821.821 INFO    ] ================================================
[2026-08-25 19:06:00,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:06:00
[2026-08-25 19:06:00,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:06:01,267.267 INFO    ] Initializing speech engine...
[2026-08-25 19:06:01,270.270 INFO    ] 2026-08-25 19:06:01
[2026-08-25 19:06:01,809.809 INFO    ] 2026-08-25 19:06:01
[2026-08-25 19:06:01,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:06:02,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:06:02,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:06:02,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:06:02,298.298 INFO    ] time= 25/08/2026 19:06:02
[2026-08-25 19:06:02,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:06:02,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:06:02,383.383 INFO    ] No existing commands found in stream
[2026-08-25 19:06:07,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:06:07,401.401 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 19:06:11,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:06:11,099.099 INFO    ] Checking for system updates...
[2026-08-25 19:06:11,139.139 INFO    ] 200
[2026-08-25 19:06:11,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:11,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:06:11,197.197 INFO    ] No update needed
[2026-08-25 19:06:11,200.200 INFO    ] Checking for camera pi updates...
[2026-08-25 19:06:11,240.240 INFO    ] 200
[2026-08-25 19:06:11,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:11,291.291 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:06:11,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:06:11,345.345 INFO    ] No camera update needed
[2026-08-25 19:06:11,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:06:11,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:06:11,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:06:11,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:06:13,404.404 INFO    ] ================================================
[2026-08-25 19:06:13,419.419 INFO    ] Launching Daemon at Tue Aug 25 19:06:13 IST 2026
[2026-08-25 19:06:13,431.431 INFO    ] ================================================
[2026-08-25 19:06:14,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:06:14
[2026-08-25 19:06:14,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:06:14,947.947 INFO    ] Initializing speech engine...
[2026-08-25 19:06:14,958.958 INFO    ] 2026-08-25 19:06:14
[2026-08-25 19:06:15,239.239 INFO    ] 2026-08-25 19:06:15
[2026-08-25 19:06:15,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:06:15,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:06:15,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:06:15,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:06:15,708.708 INFO    ] time= 25/08/2026 19:06:15
[2026-08-25 19:06:15,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:06:15,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:06:15,914.914 INFO    ] No existing commands found in stream
[2026-08-25 19:06:20,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:06:20,939.939 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 19:06:21,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:06:21,494.494 INFO    ] Checking for system updates...
[2026-08-25 19:06:21,534.534 INFO    ] 200
[2026-08-25 19:06:21,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:21,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:06:21,592.592 INFO    ] No update needed
[2026-08-25 19:06:21,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 19:06:21,628.628 INFO    ] 200
[2026-08-25 19:06:21,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:21,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:06:21,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:06:21,724.724 INFO    ] No camera update needed
[2026-08-25 19:06:21,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:06:21,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:06:21,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:06:21,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:06:23,782.782 INFO    ] ================================================
[2026-08-25 19:06:23,798.798 INFO    ] Launching Daemon at Tue Aug 25 19:06:23 IST 2026
[2026-08-25 19:06:23,810.810 INFO    ] ================================================
[2026-08-25 19:06:24,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:06:24
[2026-08-25 19:06:24,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:06:25,245.245 INFO    ] Initializing speech engine...
[2026-08-25 19:06:25,253.253 INFO    ] 2026-08-25 19:06:25
[2026-08-25 19:06:25,505.505 INFO    ] 2026-08-25 19:06:25
[2026-08-25 19:06:25,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:06:25,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:06:25,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:06:25,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:06:25,937.937 INFO    ] time= 25/08/2026 19:06:25
[2026-08-25 19:06:25,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:06:25,949.949 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:06:26,038.038 INFO    ] No existing commands found in stream
[2026-08-25 19:06:31,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:06:31,077.077 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 19:06:35,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:06:35,264.264 INFO    ] Checking for system updates...
[2026-08-25 19:06:35,305.305 INFO    ] 200
[2026-08-25 19:06:35,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:35,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:06:35,362.362 INFO    ] No update needed
[2026-08-25 19:06:35,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 19:06:35,399.399 INFO    ] 200
[2026-08-25 19:06:35,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:35,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:06:35,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:06:35,494.494 INFO    ] No camera update needed
[2026-08-25 19:06:35,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:06:35,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:06:35,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:06:35,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:06:37,550.550 INFO    ] ================================================
[2026-08-25 19:06:37,566.566 INFO    ] Launching Daemon at Tue Aug 25 19:06:37 IST 2026
[2026-08-25 19:06:37,577.577 INFO    ] ================================================
[2026-08-25 19:06:38,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:06:38
[2026-08-25 19:06:38,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:06:39,253.253 INFO    ] Initializing speech engine...
[2026-08-25 19:06:39,265.265 INFO    ] 2026-08-25 19:06:39
[2026-08-25 19:06:39,579.579 INFO    ] 2026-08-25 19:06:39
[2026-08-25 19:06:39,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:06:39,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:06:39,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:06:40,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:06:40,086.086 INFO    ] time= 25/08/2026 19:06:40
[2026-08-25 19:06:40,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:06:40,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:06:40,260.260 INFO    ] No existing commands found in stream
[2026-08-25 19:06:45,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:06:45,295.295 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 19:06:49,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:06:49,019.019 INFO    ] Checking for system updates...
[2026-08-25 19:06:49,055.055 INFO    ] 200
[2026-08-25 19:06:49,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:49,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:06:49,115.115 INFO    ] No update needed
[2026-08-25 19:06:49,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 19:06:49,151.151 INFO    ] 200
[2026-08-25 19:06:49,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:06:49,194.194 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:06:49,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:06:49,253.253 INFO    ] No camera update needed
[2026-08-25 19:06:49,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:06:49,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:06:49,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:06:49,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:06:51,308.308 INFO    ] ================================================
[2026-08-25 19:06:51,324.324 INFO    ] Launching Daemon at Tue Aug 25 19:06:51 IST 2026
[2026-08-25 19:06:51,335.335 INFO    ] ================================================
[2026-08-25 19:06:52,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:06:52
[2026-08-25 19:06:52,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:06:53,035.035 INFO    ] Initializing speech engine...
[2026-08-25 19:06:53,047.047 INFO    ] 2026-08-25 19:06:53
[2026-08-25 19:06:53,359.359 INFO    ] 2026-08-25 19:06:53
[2026-08-25 19:06:53,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:06:53,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:06:53,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:06:53,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:06:53,883.883 INFO    ] time= 25/08/2026 19:06:53
[2026-08-25 19:06:53,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:06:53,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:06:54,086.086 INFO    ] No existing commands found in stream
[2026-08-25 19:06:59,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:06:59,121.121 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 19:07:01,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:07:01,153.153 INFO    ] Checking for system updates...
[2026-08-25 19:07:01,191.191 INFO    ] 200
[2026-08-25 19:07:01,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:01,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:07:01,252.252 INFO    ] No update needed
[2026-08-25 19:07:01,254.254 INFO    ] Checking for camera pi updates...
[2026-08-25 19:07:01,293.293 INFO    ] 200
[2026-08-25 19:07:01,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:01,336.336 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:07:01,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:07:01,401.401 INFO    ] No camera update needed
[2026-08-25 19:07:01,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:07:01,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:07:01,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:07:01,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:07:03,490.490 INFO    ] ================================================
[2026-08-25 19:07:03,506.506 INFO    ] Launching Daemon at Tue Aug 25 19:07:03 IST 2026
[2026-08-25 19:07:03,517.517 INFO    ] ================================================
[2026-08-25 19:07:04,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:07:04
[2026-08-25 19:07:04,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:07:05,121.121 INFO    ] Initializing speech engine...
[2026-08-25 19:07:05,129.129 INFO    ] 2026-08-25 19:07:05
[2026-08-25 19:07:05,415.415 INFO    ] 2026-08-25 19:07:05
[2026-08-25 19:07:05,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:07:05,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:07:05,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:07:05,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:07:05,910.910 INFO    ] time= 25/08/2026 19:07:05
[2026-08-25 19:07:05,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:07:05,971.971 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:07:06,121.121 INFO    ] No existing commands found in stream
[2026-08-25 19:07:11,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:07:11,149.149 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 19:07:12,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:07:12,966.966 INFO    ] Checking for system updates...
[2026-08-25 19:07:13,005.005 INFO    ] 200
[2026-08-25 19:07:13,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:13,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:07:13,061.061 INFO    ] No update needed
[2026-08-25 19:07:13,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 19:07:13,100.100 INFO    ] 200
[2026-08-25 19:07:13,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:13,142.142 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:07:13,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:07:13,199.199 INFO    ] No camera update needed
[2026-08-25 19:07:13,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:07:13,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:07:13,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:07:13,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:07:15,254.254 INFO    ] ================================================
[2026-08-25 19:07:15,270.270 INFO    ] Launching Daemon at Tue Aug 25 19:07:15 IST 2026
[2026-08-25 19:07:15,281.281 INFO    ] ================================================
[2026-08-25 19:07:15,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:07:15
[2026-08-25 19:07:16,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:07:16,696.696 INFO    ] Initializing speech engine...
[2026-08-25 19:07:16,708.708 INFO    ] 2026-08-25 19:07:16
[2026-08-25 19:07:16,958.958 INFO    ] 2026-08-25 19:07:16
[2026-08-25 19:07:16,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:07:17,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:07:17,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:07:17,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:07:17,337.337 INFO    ] time= 25/08/2026 19:07:17
[2026-08-25 19:07:17,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:07:17,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:07:17,522.522 INFO    ] No existing commands found in stream
[2026-08-25 19:07:22,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:07:22,550.550 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 19:07:26,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:07:26,353.353 INFO    ] Checking for system updates...
[2026-08-25 19:07:26,389.389 INFO    ] 200
[2026-08-25 19:07:26,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:26,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:07:26,445.445 INFO    ] No update needed
[2026-08-25 19:07:26,448.448 INFO    ] Checking for camera pi updates...
[2026-08-25 19:07:26,481.481 INFO    ] 200
[2026-08-25 19:07:26,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:26,528.528 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:07:26,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:07:26,576.576 INFO    ] No camera update needed
[2026-08-25 19:07:26,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:07:26,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:07:26,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:07:26,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:07:28,633.633 INFO    ] ================================================
[2026-08-25 19:07:28,648.648 INFO    ] Launching Daemon at Tue Aug 25 19:07:28 IST 2026
[2026-08-25 19:07:28,659.659 INFO    ] ================================================
[2026-08-25 19:07:29,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:07:29
[2026-08-25 19:07:29,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:07:30,079.079 INFO    ] Initializing speech engine...
[2026-08-25 19:07:30,086.086 INFO    ] 2026-08-25 19:07:30
[2026-08-25 19:07:30,377.377 INFO    ] 2026-08-25 19:07:30
[2026-08-25 19:07:30,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:07:30,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:07:30,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:07:30,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:07:30,789.789 INFO    ] time= 25/08/2026 19:07:30
[2026-08-25 19:07:30,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:07:30,824.824 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:07:30,965.965 INFO    ] No existing commands found in stream
[2026-08-25 19:07:35,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:07:35,993.993 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 19:07:36,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:07:36,475.475 INFO    ] Checking for system updates...
[2026-08-25 19:07:36,511.511 INFO    ] 200
[2026-08-25 19:07:36,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:36,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:07:36,571.571 INFO    ] No update needed
[2026-08-25 19:07:36,573.573 INFO    ] Checking for camera pi updates...
[2026-08-25 19:07:36,607.607 INFO    ] 200
[2026-08-25 19:07:36,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:36,650.650 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:07:36,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:07:36,709.709 INFO    ] No camera update needed
[2026-08-25 19:07:36,711.711 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:07:36,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:07:36,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:07:36,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:07:38,763.763 INFO    ] ================================================
[2026-08-25 19:07:38,778.778 INFO    ] Launching Daemon at Tue Aug 25 19:07:38 IST 2026
[2026-08-25 19:07:38,788.788 INFO    ] ================================================
[2026-08-25 19:07:39,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:07:39
[2026-08-25 19:07:39,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:07:40,211.211 INFO    ] Initializing speech engine...
[2026-08-25 19:07:40,227.227 INFO    ] 2026-08-25 19:07:40
[2026-08-25 19:07:40,507.507 INFO    ] 2026-08-25 19:07:40
[2026-08-25 19:07:40,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:07:40,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:07:40,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:07:40,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:07:40,923.923 INFO    ] time= 25/08/2026 19:07:40
[2026-08-25 19:07:40,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:07:40,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:07:41,084.084 INFO    ] No existing commands found in stream
[2026-08-25 19:07:46,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:07:46,112.112 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 19:07:48,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:07:48,416.416 INFO    ] Checking for system updates...
[2026-08-25 19:07:48,451.451 INFO    ] 200
[2026-08-25 19:07:48,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:48,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:07:48,519.519 INFO    ] No update needed
[2026-08-25 19:07:48,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 19:07:48,558.558 INFO    ] 200
[2026-08-25 19:07:48,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:07:48,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:07:48,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:07:48,654.654 INFO    ] No camera update needed
[2026-08-25 19:07:48,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:07:48,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:07:48,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:07:48,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:07:50,710.710 INFO    ] ================================================
[2026-08-25 19:07:50,725.725 INFO    ] Launching Daemon at Tue Aug 25 19:07:50 IST 2026
[2026-08-25 19:07:50,735.735 INFO    ] ================================================
[2026-08-25 19:07:51,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:07:51
[2026-08-25 19:07:51,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:07:52,177.177 INFO    ] Initializing speech engine...
[2026-08-25 19:07:52,192.192 INFO    ] 2026-08-25 19:07:52
[2026-08-25 19:07:52,475.475 INFO    ] 2026-08-25 19:07:52
[2026-08-25 19:07:52,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:07:52,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:07:52,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:07:52,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:07:52,867.867 INFO    ] time= 25/08/2026 19:07:52
[2026-08-25 19:07:52,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:07:52,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:07:52,976.976 INFO    ] No existing commands found in stream
[2026-08-25 19:07:57,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:07:57,994.994 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 19:08:01,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:08:01,866.866 INFO    ] Checking for system updates...
[2026-08-25 19:08:01,910.910 INFO    ] 200
[2026-08-25 19:08:01,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:01,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:01,987.987 INFO    ] No update needed
[2026-08-25 19:08:01,990.990 INFO    ] Checking for camera pi updates...
[2026-08-25 19:08:02,033.033 INFO    ] 200
[2026-08-25 19:08:02,036.036 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:02,100.100 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:08:02,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:02,220.220 INFO    ] No camera update needed
[2026-08-25 19:08:02,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:08:02,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:08:02,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:08:02,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:08:04,283.283 INFO    ] ================================================
[2026-08-25 19:08:04,298.298 INFO    ] Launching Daemon at Tue Aug 25 19:08:04 IST 2026
[2026-08-25 19:08:04,309.309 INFO    ] ================================================
[2026-08-25 19:08:04,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:08:04
[2026-08-25 19:08:05,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:08:05,726.726 INFO    ] Initializing speech engine...
[2026-08-25 19:08:05,741.741 INFO    ] 2026-08-25 19:08:05
[2026-08-25 19:08:06,023.023 INFO    ] 2026-08-25 19:08:05
[2026-08-25 19:08:06,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:08:06,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:08:06,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:08:06,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:08:06,450.450 INFO    ] time= 25/08/2026 19:08:06
[2026-08-25 19:08:06,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:08:06,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:08:06,623.623 INFO    ] No existing commands found in stream
[2026-08-25 19:08:11,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:08:11,656.656 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 19:08:14,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:08:14,568.568 INFO    ] Checking for system updates...
[2026-08-25 19:08:14,604.604 INFO    ] 200
[2026-08-25 19:08:14,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:14,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:08:14,680.680 INFO    ] No update needed
[2026-08-25 19:08:14,682.682 INFO    ] Checking for camera pi updates...
[2026-08-25 19:08:14,715.715 INFO    ] 200
[2026-08-25 19:08:14,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:14,761.761 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:08:14,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:08:14,820.820 INFO    ] No camera update needed
[2026-08-25 19:08:14,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:08:14,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:08:14,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:08:14,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:08:16,875.875 INFO    ] ================================================
[2026-08-25 19:08:16,890.890 INFO    ] Launching Daemon at Tue Aug 25 19:08:16 IST 2026
[2026-08-25 19:08:16,901.901 INFO    ] ================================================
[2026-08-25 19:08:17,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:08:17
[2026-08-25 19:08:18,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:08:18,324.324 INFO    ] Initializing speech engine...
[2026-08-25 19:08:18,337.337 INFO    ] 2026-08-25 19:08:18
[2026-08-25 19:08:18,625.625 INFO    ] 2026-08-25 19:08:18
[2026-08-25 19:08:18,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:08:18,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:08:18,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:08:19,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:08:19,131.131 INFO    ] time= 25/08/2026 19:08:19
[2026-08-25 19:08:19,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:08:19,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:08:19,320.320 INFO    ] No existing commands found in stream
[2026-08-25 19:08:24,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:08:24,358.358 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 19:08:26,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:08:26,568.568 INFO    ] Checking for system updates...
[2026-08-25 19:08:26,606.606 INFO    ] 200
[2026-08-25 19:08:26,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:26,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:26,668.668 INFO    ] No update needed
[2026-08-25 19:08:26,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 19:08:26,707.707 INFO    ] 200
[2026-08-25 19:08:26,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:26,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:08:26,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:26,797.797 INFO    ] No camera update needed
[2026-08-25 19:08:26,799.799 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:08:26,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:08:26,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:08:26,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:08:28,851.851 INFO    ] ================================================
[2026-08-25 19:08:28,867.867 INFO    ] Launching Daemon at Tue Aug 25 19:08:28 IST 2026
[2026-08-25 19:08:28,877.877 INFO    ] ================================================
[2026-08-25 19:08:29,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:08:29
[2026-08-25 19:08:30,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:08:30,296.296 INFO    ] Initializing speech engine...
[2026-08-25 19:08:30,305.305 INFO    ] 2026-08-25 19:08:30
[2026-08-25 19:08:30,557.557 INFO    ] 2026-08-25 19:08:30
[2026-08-25 19:08:30,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:08:30,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:08:30,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:08:30,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:08:31,022.022 INFO    ] time= 25/08/2026 19:08:30
[2026-08-25 19:08:31,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:08:31,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:08:31,230.230 INFO    ] No existing commands found in stream
[2026-08-25 19:08:36,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:08:36,263.263 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 19:08:40,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:08:40,379.379 INFO    ] Checking for system updates...
[2026-08-25 19:08:40,415.415 INFO    ] 200
[2026-08-25 19:08:40,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:40,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:40,479.479 INFO    ] No update needed
[2026-08-25 19:08:40,482.482 INFO    ] Checking for camera pi updates...
[2026-08-25 19:08:40,516.516 INFO    ] 200
[2026-08-25 19:08:40,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:40,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:08:40,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:40,719.719 INFO    ] No camera update needed
[2026-08-25 19:08:40,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:08:40,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:08:40,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:08:40,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:08:42,777.777 INFO    ] ================================================
[2026-08-25 19:08:42,792.792 INFO    ] Launching Daemon at Tue Aug 25 19:08:42 IST 2026
[2026-08-25 19:08:42,803.803 INFO    ] ================================================
[2026-08-25 19:08:43,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:08:43
[2026-08-25 19:08:43,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:08:44,202.202 INFO    ] Initializing speech engine...
[2026-08-25 19:08:44,211.211 INFO    ] 2026-08-25 19:08:44
[2026-08-25 19:08:44,501.501 INFO    ] 2026-08-25 19:08:44
[2026-08-25 19:08:44,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:08:44,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:08:44,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:08:44,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:08:44,903.903 INFO    ] time= 25/08/2026 19:08:44
[2026-08-25 19:08:44,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:08:44,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:08:45,105.105 INFO    ] No existing commands found in stream
[2026-08-25 19:08:50,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:08:50,118.118 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 19:08:53,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:08:53,408.408 INFO    ] Checking for system updates...
[2026-08-25 19:08:53,443.443 INFO    ] 200
[2026-08-25 19:08:53,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:53,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:53,504.504 INFO    ] No update needed
[2026-08-25 19:08:53,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 19:08:53,540.540 INFO    ] 200
[2026-08-25 19:08:53,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:08:53,583.583 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:08:53,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:08:53,640.640 INFO    ] No camera update needed
[2026-08-25 19:08:53,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:08:53,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:08:53,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:08:53,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:08:55,695.695 INFO    ] ================================================
[2026-08-25 19:08:55,711.711 INFO    ] Launching Daemon at Tue Aug 25 19:08:55 IST 2026
[2026-08-25 19:08:55,722.722 INFO    ] ================================================
[2026-08-25 19:08:56,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:08:56
[2026-08-25 19:08:56,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:08:57,177.177 INFO    ] Initializing speech engine...
[2026-08-25 19:08:57,186.186 INFO    ] 2026-08-25 19:08:57
[2026-08-25 19:08:57,434.434 INFO    ] 2026-08-25 19:08:57
[2026-08-25 19:08:57,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:08:57,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:08:57,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:08:57,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:08:57,958.958 INFO    ] time= 25/08/2026 19:08:57
[2026-08-25 19:08:58,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:08:58,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:08:58,215.215 INFO    ] No existing commands found in stream
[2026-08-25 19:09:03,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:09:03,235.235 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 19:09:06,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:09:06,313.313 INFO    ] Checking for system updates...
[2026-08-25 19:09:06,349.349 INFO    ] 200
[2026-08-25 19:09:06,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:06,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:09:06,406.406 INFO    ] No update needed
[2026-08-25 19:09:06,408.408 INFO    ] Checking for camera pi updates...
[2026-08-25 19:09:06,442.442 INFO    ] 200
[2026-08-25 19:09:06,444.444 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:06,485.485 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:09:06,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:09:06,538.538 INFO    ] No camera update needed
[2026-08-25 19:09:06,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:09:06,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:09:06,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:09:06,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:09:08,594.594 INFO    ] ================================================
[2026-08-25 19:09:08,609.609 INFO    ] Launching Daemon at Tue Aug 25 19:09:08 IST 2026
[2026-08-25 19:09:08,620.620 INFO    ] ================================================
[2026-08-25 19:09:09,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:09:09
[2026-08-25 19:09:09,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:09:10,230.230 INFO    ] Initializing speech engine...
[2026-08-25 19:09:10,244.244 INFO    ] 2026-08-25 19:09:10
[2026-08-25 19:09:10,554.554 INFO    ] 2026-08-25 19:09:10
[2026-08-25 19:09:10,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:09:10,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:09:10,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:09:11,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:09:11,061.061 INFO    ] time= 25/08/2026 19:09:11
[2026-08-25 19:09:11,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:09:11,108.108 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:09:11,224.224 INFO    ] No existing commands found in stream
[2026-08-25 19:09:16,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:09:16,258.258 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 19:09:18,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:09:18,144.144 INFO    ] Checking for system updates...
[2026-08-25 19:09:18,180.180 INFO    ] 200
[2026-08-25 19:09:18,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:18,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:09:18,238.238 INFO    ] No update needed
[2026-08-25 19:09:18,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 19:09:18,277.277 INFO    ] 200
[2026-08-25 19:09:18,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:18,319.319 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:09:18,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:09:18,370.370 INFO    ] No camera update needed
[2026-08-25 19:09:18,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:09:18,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:09:18,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:09:18,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:09:20,425.425 INFO    ] ================================================
[2026-08-25 19:09:20,441.441 INFO    ] Launching Daemon at Tue Aug 25 19:09:20 IST 2026
[2026-08-25 19:09:20,451.451 INFO    ] ================================================
[2026-08-25 19:09:21,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:09:21
[2026-08-25 19:09:21,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:09:21,871.871 INFO    ] Initializing speech engine...
[2026-08-25 19:09:21,876.876 INFO    ] 2026-08-25 19:09:21
[2026-08-25 19:09:22,121.121 INFO    ] 2026-08-25 19:09:22
[2026-08-25 19:09:22,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:09:22,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:09:22,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:09:22,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:09:22,608.608 INFO    ] time= 25/08/2026 19:09:22
[2026-08-25 19:09:22,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:09:22,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:09:22,818.818 INFO    ] No existing commands found in stream
[2026-08-25 19:09:27,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:09:27,840.840 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 19:09:31,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:09:31,969.969 INFO    ] Checking for system updates...
[2026-08-25 19:09:32,015.015 INFO    ] 200
[2026-08-25 19:09:32,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:32,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:09:32,100.100 INFO    ] No update needed
[2026-08-25 19:09:32,104.104 INFO    ] Checking for camera pi updates...
[2026-08-25 19:09:32,152.152 INFO    ] 200
[2026-08-25 19:09:32,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:32,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:09:32,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:09:32,263.263 INFO    ] No camera update needed
[2026-08-25 19:09:32,266.266 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:09:32,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:09:32,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:09:32,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:09:34,323.323 INFO    ] ================================================
[2026-08-25 19:09:34,339.339 INFO    ] Launching Daemon at Tue Aug 25 19:09:34 IST 2026
[2026-08-25 19:09:34,350.350 INFO    ] ================================================
[2026-08-25 19:09:34,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:09:34
[2026-08-25 19:09:35,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:09:35,770.770 INFO    ] Initializing speech engine...
[2026-08-25 19:09:35,790.790 INFO    ] 2026-08-25 19:09:35
[2026-08-25 19:09:36,068.068 INFO    ] 2026-08-25 19:09:36
[2026-08-25 19:09:36,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:09:36,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:09:36,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:09:36,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:09:36,553.553 INFO    ] time= 25/08/2026 19:09:36
[2026-08-25 19:09:36,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:09:36,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:09:36,751.751 INFO    ] No existing commands found in stream
[2026-08-25 19:09:41,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:09:41,766.766 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 19:09:43,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:09:43,562.562 INFO    ] Checking for system updates...
[2026-08-25 19:09:43,597.597 INFO    ] 200
[2026-08-25 19:09:43,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:43,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:09:43,653.653 INFO    ] No update needed
[2026-08-25 19:09:43,656.656 INFO    ] Checking for camera pi updates...
[2026-08-25 19:09:43,689.689 INFO    ] 200
[2026-08-25 19:09:43,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:43,731.731 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:09:43,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:09:43,780.780 INFO    ] No camera update needed
[2026-08-25 19:09:43,782.782 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:09:43,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:09:43,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:09:43,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:09:45,834.834 INFO    ] ================================================
[2026-08-25 19:09:45,850.850 INFO    ] Launching Daemon at Tue Aug 25 19:09:45 IST 2026
[2026-08-25 19:09:45,862.862 INFO    ] ================================================
[2026-08-25 19:09:46,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:09:46
[2026-08-25 19:09:47,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:09:47,462.462 INFO    ] Initializing speech engine...
[2026-08-25 19:09:47,473.473 INFO    ] 2026-08-25 19:09:47
[2026-08-25 19:09:47,738.738 INFO    ] 2026-08-25 19:09:47
[2026-08-25 19:09:47,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:09:48,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:09:48,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:09:48,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:09:48,281.281 INFO    ] time= 25/08/2026 19:09:48
[2026-08-25 19:09:48,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:09:48,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:09:48,485.485 INFO    ] No existing commands found in stream
[2026-08-25 19:09:53,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:09:53,519.519 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 19:09:55,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:09:55,406.406 INFO    ] Checking for system updates...
[2026-08-25 19:09:55,442.442 INFO    ] 200
[2026-08-25 19:09:55,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:55,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:09:55,507.507 INFO    ] No update needed
[2026-08-25 19:09:55,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 19:09:55,544.544 INFO    ] 200
[2026-08-25 19:09:55,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:09:55,590.590 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:09:55,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:09:55,636.636 INFO    ] No camera update needed
[2026-08-25 19:09:55,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:09:55,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:09:55,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:09:55,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:09:57,694.694 INFO    ] ================================================
[2026-08-25 19:09:57,710.710 INFO    ] Launching Daemon at Tue Aug 25 19:09:57 IST 2026
[2026-08-25 19:09:57,721.721 INFO    ] ================================================
[2026-08-25 19:09:58,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:09:58
[2026-08-25 19:09:58,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:09:59,125.125 INFO    ] Initializing speech engine...
[2026-08-25 19:09:59,130.130 INFO    ] 2026-08-25 19:09:59
[2026-08-25 19:09:59,420.420 INFO    ] 2026-08-25 19:09:59
[2026-08-25 19:09:59,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:09:59,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:09:59,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:09:59,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:09:59,834.834 INFO    ] time= 25/08/2026 19:09:59
[2026-08-25 19:09:59,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:09:59,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:09:59,924.924 INFO    ] No existing commands found in stream
[2026-08-25 19:10:04,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:10:04,957.957 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 19:10:07,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:10:07,818.818 INFO    ] Checking for system updates...
[2026-08-25 19:10:07,856.856 INFO    ] 200
[2026-08-25 19:10:07,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:07,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:10:07,914.914 INFO    ] No update needed
[2026-08-25 19:10:07,916.916 INFO    ] Checking for camera pi updates...
[2026-08-25 19:10:07,949.949 INFO    ] 200
[2026-08-25 19:10:07,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:07,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:10:08,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:10:08,046.046 INFO    ] No camera update needed
[2026-08-25 19:10:08,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:10:08,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:10:08,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:10:08,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:10:10,103.103 INFO    ] ================================================
[2026-08-25 19:10:10,119.119 INFO    ] Launching Daemon at Tue Aug 25 19:10:10 IST 2026
[2026-08-25 19:10:10,138.138 INFO    ] ================================================
[2026-08-25 19:10:10,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:10:10
[2026-08-25 19:10:11,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:10:11,549.549 INFO    ] Initializing speech engine...
[2026-08-25 19:10:11,562.562 INFO    ] 2026-08-25 19:10:11
[2026-08-25 19:10:11,847.847 INFO    ] 2026-08-25 19:10:11
[2026-08-25 19:10:11,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:10:12,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:10:12,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:10:12,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:10:12,264.264 INFO    ] time= 25/08/2026 19:10:12
[2026-08-25 19:10:12,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:10:12,283.283 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:10:12,444.444 INFO    ] No existing commands found in stream
[2026-08-25 19:10:17,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:10:17,477.477 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-08-25 19:10:20,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:10:20,364.364 INFO    ] Checking for system updates...
[2026-08-25 19:10:20,399.399 INFO    ] 200
[2026-08-25 19:10:20,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:20,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:10:20,455.455 INFO    ] No update needed
[2026-08-25 19:10:20,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 19:10:20,498.498 INFO    ] 200
[2026-08-25 19:10:20,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:20,544.544 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:10:20,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:10:20,597.597 INFO    ] No camera update needed
[2026-08-25 19:10:20,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:10:20,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:10:20,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:10:20,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:10:22,653.653 INFO    ] ================================================
[2026-08-25 19:10:22,668.668 INFO    ] Launching Daemon at Tue Aug 25 19:10:22 IST 2026
[2026-08-25 19:10:22,678.678 INFO    ] ================================================
[2026-08-25 19:10:23,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:10:23
[2026-08-25 19:10:23,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:10:24,101.101 INFO    ] Initializing speech engine...
[2026-08-25 19:10:24,110.110 INFO    ] 2026-08-25 19:10:24
[2026-08-25 19:10:24,361.361 INFO    ] 2026-08-25 19:10:24
[2026-08-25 19:10:24,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:10:24,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:10:24,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:10:24,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:10:24,855.855 INFO    ] time= 25/08/2026 19:10:24
[2026-08-25 19:10:24,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:10:24,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:10:25,070.070 INFO    ] No existing commands found in stream
[2026-08-25 19:10:30,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:10:30,086.086 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 19:10:33,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:10:33,933.933 INFO    ] Checking for system updates...
[2026-08-25 19:10:33,969.969 INFO    ] 200
[2026-08-25 19:10:33,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:34,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:10:34,032.032 INFO    ] No update needed
[2026-08-25 19:10:34,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 19:10:34,069.069 INFO    ] 200
[2026-08-25 19:10:34,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:34,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:10:34,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:10:34,162.162 INFO    ] No camera update needed
[2026-08-25 19:10:34,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:10:34,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:10:34,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:10:34,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:10:36,219.219 INFO    ] ================================================
[2026-08-25 19:10:36,234.234 INFO    ] Launching Daemon at Tue Aug 25 19:10:36 IST 2026
[2026-08-25 19:10:36,245.245 INFO    ] ================================================
[2026-08-25 19:10:36,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:10:36
[2026-08-25 19:10:37,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:10:37,855.855 INFO    ] Initializing speech engine...
[2026-08-25 19:10:37,861.861 INFO    ] 2026-08-25 19:10:37
[2026-08-25 19:10:38,137.137 INFO    ] 2026-08-25 19:10:38
[2026-08-25 19:10:38,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:10:38,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:10:38,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:10:38,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:10:38,663.663 INFO    ] time= 25/08/2026 19:10:38
[2026-08-25 19:10:38,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:10:38,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:10:38,838.838 INFO    ] No existing commands found in stream
[2026-08-25 19:10:43,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:10:43,865.865 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 19:10:45,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:10:45,005.005 INFO    ] Checking for system updates...
[2026-08-25 19:10:45,041.041 INFO    ] 200
[2026-08-25 19:10:45,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:45,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:10:45,107.107 INFO    ] No update needed
[2026-08-25 19:10:45,109.109 INFO    ] Checking for camera pi updates...
[2026-08-25 19:10:45,143.143 INFO    ] 200
[2026-08-25 19:10:45,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:45,190.190 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:10:45,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:10:45,333.333 INFO    ] No camera update needed
[2026-08-25 19:10:45,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:10:45,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:10:45,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:10:45,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:10:47,391.391 INFO    ] ================================================
[2026-08-25 19:10:47,406.406 INFO    ] Launching Daemon at Tue Aug 25 19:10:47 IST 2026
[2026-08-25 19:10:47,417.417 INFO    ] ================================================
[2026-08-25 19:10:47,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:10:47
[2026-08-25 19:10:48,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:10:48,843.843 INFO    ] Initializing speech engine...
[2026-08-25 19:10:48,849.849 INFO    ] 2026-08-25 19:10:48
[2026-08-25 19:10:49,108.108 INFO    ] 2026-08-25 19:10:49
[2026-08-25 19:10:49,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:10:49,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:10:49,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:10:49,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:10:49,652.652 INFO    ] time= 25/08/2026 19:10:49
[2026-08-25 19:10:49,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:10:49,674.674 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:10:49,806.806 INFO    ] No existing commands found in stream
[2026-08-25 19:10:54,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:10:54,822.822 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 19:10:58,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:10:58,078.078 INFO    ] Checking for system updates...
[2026-08-25 19:10:58,113.113 INFO    ] 200
[2026-08-25 19:10:58,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:58,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:10:58,171.171 INFO    ] No update needed
[2026-08-25 19:10:58,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 19:10:58,207.207 INFO    ] 200
[2026-08-25 19:10:58,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:10:58,249.249 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:10:58,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:10:58,299.299 INFO    ] No camera update needed
[2026-08-25 19:10:58,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:10:58,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:10:58,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:10:58,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:11:00,355.355 INFO    ] ================================================
[2026-08-25 19:11:00,370.370 INFO    ] Launching Daemon at Tue Aug 25 19:11:00 IST 2026
[2026-08-25 19:11:00,381.381 INFO    ] ================================================
[2026-08-25 19:11:00,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:11:00
[2026-08-25 19:11:01,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:11:02,023.023 INFO    ] Initializing speech engine...
[2026-08-25 19:11:02,047.047 INFO    ] 2026-08-25 19:11:02
[2026-08-25 19:11:02,465.465 INFO    ] 2026-08-25 19:11:02
[2026-08-25 19:11:02,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:11:02,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:11:02,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:11:02,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:11:02,872.872 INFO    ] time= 25/08/2026 19:11:02
[2026-08-25 19:11:02,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:11:02,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:11:03,011.011 INFO    ] No existing commands found in stream
[2026-08-25 19:11:08,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:11:08,040.040 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 19:11:11,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:11:11,466.466 INFO    ] Checking for system updates...
[2026-08-25 19:11:11,504.504 INFO    ] 200
[2026-08-25 19:11:11,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:11,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:11:11,566.566 INFO    ] No update needed
[2026-08-25 19:11:11,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 19:11:11,601.601 INFO    ] 200
[2026-08-25 19:11:11,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:11,648.648 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:11:11,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:11:11,696.696 INFO    ] No camera update needed
[2026-08-25 19:11:11,699.699 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:11:11,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:11:11,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:11:11,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:11:13,750.750 INFO    ] ================================================
[2026-08-25 19:11:13,766.766 INFO    ] Launching Daemon at Tue Aug 25 19:11:13 IST 2026
[2026-08-25 19:11:13,776.776 INFO    ] ================================================
[2026-08-25 19:11:14,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:11:14
[2026-08-25 19:11:14,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:11:15,176.176 INFO    ] Initializing speech engine...
[2026-08-25 19:11:15,184.184 INFO    ] 2026-08-25 19:11:15
[2026-08-25 19:11:15,466.466 INFO    ] 2026-08-25 19:11:15
[2026-08-25 19:11:15,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:11:15,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:11:15,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:11:15,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:11:15,934.934 INFO    ] time= 25/08/2026 19:11:15
[2026-08-25 19:11:15,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:11:16,025.025 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:11:16,169.169 INFO    ] No existing commands found in stream
[2026-08-25 19:11:21,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:11:21,186.186 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 19:11:22,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:11:22,536.536 INFO    ] Checking for system updates...
[2026-08-25 19:11:22,574.574 INFO    ] 200
[2026-08-25 19:11:22,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:22,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:11:22,631.631 INFO    ] No update needed
[2026-08-25 19:11:22,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 19:11:22,671.671 INFO    ] 200
[2026-08-25 19:11:22,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:22,713.713 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:11:22,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:11:22,762.762 INFO    ] No camera update needed
[2026-08-25 19:11:22,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:11:22,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:11:22,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:11:22,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:11:24,816.816 INFO    ] ================================================
[2026-08-25 19:11:24,831.831 INFO    ] Launching Daemon at Tue Aug 25 19:11:24 IST 2026
[2026-08-25 19:11:24,842.842 INFO    ] ================================================
[2026-08-25 19:11:25,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:11:25
[2026-08-25 19:11:26,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:11:26,330.330 INFO    ] Initializing speech engine...
[2026-08-25 19:11:26,336.336 INFO    ] 2026-08-25 19:11:26
[2026-08-25 19:11:26,582.582 INFO    ] 2026-08-25 19:11:26
[2026-08-25 19:11:26,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:11:26,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:11:26,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:11:27,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:11:27,050.050 INFO    ] time= 25/08/2026 19:11:27
[2026-08-25 19:11:27,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:11:27,141.141 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:11:27,274.274 INFO    ] No existing commands found in stream
[2026-08-25 19:11:32,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:11:32,302.302 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 19:11:34,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:11:34,157.157 INFO    ] Checking for system updates...
[2026-08-25 19:11:34,192.192 INFO    ] 200
[2026-08-25 19:11:34,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:34,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:11:34,250.250 INFO    ] No update needed
[2026-08-25 19:11:34,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 19:11:34,288.288 INFO    ] 200
[2026-08-25 19:11:34,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:34,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:11:34,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:11:34,394.394 INFO    ] No camera update needed
[2026-08-25 19:11:34,396.396 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:11:34,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:11:34,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:11:34,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:11:36,448.448 INFO    ] ================================================
[2026-08-25 19:11:36,732.732 INFO    ] Launching Daemon at Tue Aug 25 19:11:36 IST 2026
[2026-08-25 19:11:36,743.743 INFO    ] ================================================
[2026-08-25 19:11:37,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:11:37
[2026-08-25 19:11:37,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:11:38,145.145 INFO    ] Initializing speech engine...
[2026-08-25 19:11:38,154.154 INFO    ] 2026-08-25 19:11:38
[2026-08-25 19:11:38,439.439 INFO    ] 2026-08-25 19:11:38
[2026-08-25 19:11:38,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:11:38,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:11:38,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:11:38,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:11:38,812.812 INFO    ] time= 25/08/2026 19:11:38
[2026-08-25 19:11:38,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:11:38,830.830 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:11:38,901.901 INFO    ] No existing commands found in stream
[2026-08-25 19:11:43,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:11:43,929.929 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 19:11:45,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:11:45,475.475 INFO    ] Checking for system updates...
[2026-08-25 19:11:45,514.514 INFO    ] 200
[2026-08-25 19:11:45,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:45,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:11:45,572.572 INFO    ] No update needed
[2026-08-25 19:11:45,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 19:11:45,611.611 INFO    ] 200
[2026-08-25 19:11:45,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:45,654.654 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:11:45,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:11:45,709.709 INFO    ] No camera update needed
[2026-08-25 19:11:45,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:11:45,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:11:45,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:11:45,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:11:47,765.765 INFO    ] ================================================
[2026-08-25 19:11:47,780.780 INFO    ] Launching Daemon at Tue Aug 25 19:11:47 IST 2026
[2026-08-25 19:11:47,791.791 INFO    ] ================================================
[2026-08-25 19:11:48,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:11:48
[2026-08-25 19:11:48,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:11:49,226.226 INFO    ] Initializing speech engine...
[2026-08-25 19:11:49,250.250 INFO    ] 2026-08-25 19:11:49
[2026-08-25 19:11:49,519.519 INFO    ] 2026-08-25 19:11:49
[2026-08-25 19:11:49,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:11:49,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:11:49,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:11:49,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:11:49,919.919 INFO    ] time= 25/08/2026 19:11:49
[2026-08-25 19:11:49,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:11:49,946.946 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:11:50,085.085 INFO    ] No existing commands found in stream
[2026-08-25 19:11:55,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:11:55,112.112 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 19:11:59,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:11:59,108.108 INFO    ] Checking for system updates...
[2026-08-25 19:11:59,150.150 INFO    ] 200
[2026-08-25 19:11:59,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:59,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:11:59,215.215 INFO    ] No update needed
[2026-08-25 19:11:59,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 19:11:59,251.251 INFO    ] 200
[2026-08-25 19:11:59,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:11:59,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:11:59,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:11:59,350.350 INFO    ] No camera update needed
[2026-08-25 19:11:59,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:11:59,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:11:59,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:11:59,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:12:01,404.404 INFO    ] ================================================
[2026-08-25 19:12:01,419.419 INFO    ] Launching Daemon at Tue Aug 25 19:12:01 IST 2026
[2026-08-25 19:12:01,429.429 INFO    ] ================================================
[2026-08-25 19:12:02,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:12:02
[2026-08-25 19:12:02,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:12:03,157.157 INFO    ] Initializing speech engine...
[2026-08-25 19:12:03,168.168 INFO    ] 2026-08-25 19:12:03
[2026-08-25 19:12:03,448.448 INFO    ] 2026-08-25 19:12:03
[2026-08-25 19:12:03,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:12:03,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:12:03,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:12:03,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:12:03,855.855 INFO    ] time= 25/08/2026 19:12:03
[2026-08-25 19:12:03,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:12:03,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:12:04,050.050 INFO    ] No existing commands found in stream
[2026-08-25 19:12:09,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:12:09,063.063 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 19:12:09,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:12:09,641.641 INFO    ] Checking for system updates...
[2026-08-25 19:12:09,677.677 INFO    ] 200
[2026-08-25 19:12:09,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:09,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:09,739.739 INFO    ] No update needed
[2026-08-25 19:12:09,742.742 INFO    ] Checking for camera pi updates...
[2026-08-25 19:12:09,776.776 INFO    ] 200
[2026-08-25 19:12:09,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:09,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:12:09,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:09,875.875 INFO    ] No camera update needed
[2026-08-25 19:12:09,878.878 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:12:09,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:12:09,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:12:09,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:12:11,931.931 INFO    ] ================================================
[2026-08-25 19:12:11,946.946 INFO    ] Launching Daemon at Tue Aug 25 19:12:11 IST 2026
[2026-08-25 19:12:11,964.964 INFO    ] ================================================
[2026-08-25 19:12:12,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:12:12
[2026-08-25 19:12:13,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:12:13,403.403 INFO    ] Initializing speech engine...
[2026-08-25 19:12:13,414.414 INFO    ] 2026-08-25 19:12:13
[2026-08-25 19:12:13,672.672 INFO    ] 2026-08-25 19:12:13
[2026-08-25 19:12:13,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:12:13,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:12:13,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:12:14,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:12:14,177.177 INFO    ] time= 25/08/2026 19:12:14
[2026-08-25 19:12:14,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:12:14,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:12:14,356.356 INFO    ] No existing commands found in stream
[2026-08-25 19:12:19,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:12:19,387.387 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 19:12:23,002.002 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:12:23,005.005 INFO    ] Checking for system updates...
[2026-08-25 19:12:23,040.040 INFO    ] 200
[2026-08-25 19:12:23,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:23,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:23,097.097 INFO    ] No update needed
[2026-08-25 19:12:23,099.099 INFO    ] Checking for camera pi updates...
[2026-08-25 19:12:23,133.133 INFO    ] 200
[2026-08-25 19:12:23,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:23,184.184 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:12:23,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:23,234.234 INFO    ] No camera update needed
[2026-08-25 19:12:23,237.237 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:12:23,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:12:23,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:12:23,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:12:25,290.290 INFO    ] ================================================
[2026-08-25 19:12:25,305.305 INFO    ] Launching Daemon at Tue Aug 25 19:12:25 IST 2026
[2026-08-25 19:12:25,315.315 INFO    ] ================================================
[2026-08-25 19:12:25,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:12:25
[2026-08-25 19:12:26,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:12:26,758.758 INFO    ] Initializing speech engine...
[2026-08-25 19:12:26,770.770 INFO    ] 2026-08-25 19:12:26
[2026-08-25 19:12:27,037.037 INFO    ] 2026-08-25 19:12:27
[2026-08-25 19:12:27,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:12:27,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:12:27,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:12:27,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:12:27,557.557 INFO    ] time= 25/08/2026 19:12:27
[2026-08-25 19:12:27,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:12:27,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:12:27,792.792 INFO    ] No existing commands found in stream
[2026-08-25 19:12:32,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:12:32,811.811 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 19:12:33,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:12:33,450.450 INFO    ] Checking for system updates...
[2026-08-25 19:12:33,489.489 INFO    ] 200
[2026-08-25 19:12:33,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:33,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:33,546.546 INFO    ] No update needed
[2026-08-25 19:12:33,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 19:12:33,585.585 INFO    ] 200
[2026-08-25 19:12:33,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:33,629.629 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:12:33,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:33,682.682 INFO    ] No camera update needed
[2026-08-25 19:12:33,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:12:33,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:12:33,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:12:33,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:12:35,738.738 INFO    ] ================================================
[2026-08-25 19:12:35,753.753 INFO    ] Launching Daemon at Tue Aug 25 19:12:35 IST 2026
[2026-08-25 19:12:35,764.764 INFO    ] ================================================
[2026-08-25 19:12:36,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:12:36
[2026-08-25 19:12:36,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:12:37,173.173 INFO    ] Initializing speech engine...
[2026-08-25 19:12:37,189.189 INFO    ] 2026-08-25 19:12:37
[2026-08-25 19:12:37,468.468 INFO    ] 2026-08-25 19:12:37
[2026-08-25 19:12:37,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:12:37,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:12:37,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:12:37,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:12:37,882.882 INFO    ] time= 25/08/2026 19:12:37
[2026-08-25 19:12:37,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:12:37,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:12:38,081.081 INFO    ] No existing commands found in stream
[2026-08-25 19:12:40,540.540 INFO    ] Received new command: ID=1787665360550-0
[2026-08-25 19:12:40,590.590 INFO    ] process_and_cleanup_command: msg_id=1787665360550-0
[2026-08-25 19:12:40,605.605 INFO    ] is_command_expired: timestamp=2026-08-25T13:42:40.842Z, expiry=30s
[2026-08-25 19:12:40,714.714 INFO    ] Command removed from stream: 1787665360550-0. returning for processing...
[2026-08-25 19:12:40,716.716 INFO    ] ***** get_valid_command
[2026-08-25 19:12:40,719.719 INFO    ] {'timeout': '10', 'source': 'webapp', 'command': 'start-order', 'data': '{"request_id":"start-order-1787665360842-a7mutqrrp","orderId":"TM03202401260825191230697","is_vending":false}', 'timestamp': '2026-08-25T13:42:40.842Z'}
[2026-08-25 19:12:40,721.721 INFO    ] ***** Parsed command data: {'is_vending': False, 'orderId': 'TM03202401260825191230697', 'request_id': 'start-order-1787665360842-a7mutqrrp'}
[2026-08-25 19:12:40,723.723 INFO    ] Handling start order...
[2026-08-25 19:12:40,726.726 INFO    ] handle_start_order_command
[2026-08-25 19:12:40,732.732 INFO    ] _send_start_order_success: request_id=start-order-1787665360842-a7mutqrrp, order_id=TM03202401260825191230697
[2026-08-25 19:12:40,735.735 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 19:12:40,812.812 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787665360841-0
[2026-08-25 19:12:40,814.814 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 19:12:40,816.816 INFO    ] Checking for system updates...
[2026-08-25 19:12:40,861.861 INFO    ] 200
[2026-08-25 19:12:40,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:40,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:40,918.918 INFO    ] No update needed
[2026-08-25 19:12:40,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 19:12:40,957.957 INFO    ] 200
[2026-08-25 19:12:40,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:40,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:12:41,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:12:41,052.052 INFO    ] No camera update needed
[2026-08-25 19:12:41,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:12:41,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:12:41,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:12:41,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:12:43,107.107 INFO    ] ================================================
[2026-08-25 19:12:43,127.127 INFO    ] Launching Daemon at Tue Aug 25 19:12:43 IST 2026
[2026-08-25 19:12:43,138.138 INFO    ] ================================================
[2026-08-25 19:12:43,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:12:43
[2026-08-25 19:12:44,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:12:44,727.727 INFO    ] Initializing speech engine...
[2026-08-25 19:12:44,740.740 INFO    ] 2026-08-25 19:12:44
[2026-08-25 19:12:45,012.012 INFO    ] 2026-08-25 19:12:45
[2026-08-25 19:12:45,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:12:45,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:12:45,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:12:45,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:12:45,568.568 INFO    ] time= 25/08/2026 19:12:45
[2026-08-25 19:12:45,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:12:45,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:12:45,732.732 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 19:12:45,797.797 INFO    ] Checking historical command: ID=1787665360841-0
[2026-08-25 19:12:45,840.840 INFO    ] process_and_cleanup_command: msg_id=1787665360841-0
[2026-08-25 19:12:45,870.870 INFO    ] is_command_expired: timestamp=2026-08-25T13:42:40.733426Z, expiry=30s
[2026-08-25 19:12:46,075.075 INFO    ] Command removed from stream: 1787665360841-0. returning for processing...
[2026-08-25 19:12:46,078.078 INFO    ] ***** get_valid_command
[2026-08-25 19:12:46,082.082 INFO    ] {'imei': 'TM03202401', 'metadata_request_id': 'start-order-1787665360842-a7mutqrrp', 'metadata_order_id': 'TM03202401260825191230697', 'message_type': 'command_response', 'status': 'success', 'timestamp': '2026-08-25T13:42:40.733426Z', 'message': 'start-order success'}
[2026-08-25 19:12:46,085.085 INFO    ] Checking historical command: ID=1787665363653-0
[2026-08-25 19:12:46,134.134 INFO    ] process_and_cleanup_command: msg_id=1787665363653-0
[2026-08-25 19:12:46,206.206 INFO    ] is_command_expired: timestamp=2026-08-25T13:42:43.892Z, expiry=30s
[2026-08-25 19:12:46,324.324 INFO    ] Command removed from stream: 1787665363653-0. returning for processing...
[2026-08-25 19:12:46,329.329 INFO    ] ***** get_valid_command
[2026-08-25 19:12:46,334.334 INFO    ] {'source': 'webapp', 'data': '{"request_id":"process-order-1787665363892-gedfdzrmy","orderId":"TM03202401260825191230697","is_vending":false,"accessCode":"14815664"}', 'timestamp': '2026-08-25T13:42:43.892Z', 'command': 'process-order', 'timeout': '60'}
[2026-08-25 19:12:46,339.339 INFO    ] ***** Parsed command data: {'is_vending': False, 'accessCode': '14815664', 'request_id': 'process-order-1787665363892-gedfdzrmy', 'orderId': 'TM03202401260825191230697'}
[2026-08-25 19:12:46,344.344 INFO    ] Handling process order...
[2026-08-25 19:12:46,349.349 INFO    ] Processing process-order command...
[2026-08-25 19:12:46,356.356 INFO    ] 🔍 Lock file Order ID: TM03202401260825191230697, TS: 2026-08-25 19:12:40
[2026-08-25 19:12:46,373.373 INFO    ] ✅ Order lock valid for TM03202401260825191230697
[2026-08-25 19:12:46,378.378 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 19:12:46,383.383 INFO    ] processing access code 14815664 for order TM03202401260825191230697
[2026-08-25 19:12:46,389.389 INFO    ] 🔍 Lock file Order ID: TM03202401260825191230697, TS: 2026-08-25 19:12:40
[2026-08-25 19:12:46,395.395 INFO    ] ✅ Order lock valid for TM03202401260825191230697
[2026-08-25 19:12:46,400.400 INFO    ] 2026-08-25 19:12:46
[2026-08-25 19:12:46,511.511 INFO    ] 200
[2026-08-25 19:12:46,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:12:46,547.547 INFO    ] 14815664
[2026-08-25 19:12:46,553.553 INFO    ] 2026-08-25 19:12:46
[2026-08-25 19:12:46,562.562 INFO    ] session id :130702544
[2026-08-25 19:12:46,570.570 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=14815664&imei=TM03202401&session_id=130702544
[2026-08-25 19:12:47,778.778 INFO    ] 200
[2026-08-25 19:12:47,787.787 INFO    ] {"data": {"access_code": "14815664", "order_id": "TM03202401260825191230697", "bill_amount": "20", "invoice_bill": "20", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500725", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "tray_id": "14", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm", "sku_total": 10}, {"offer_desc": "", "qty": 1, "skuid": "4500731", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500731-8867.png", "tray_id": "23", "mrp": "10", "name": "MaxVita Butter Elaichi cookies 46g", "sku_total": 10}], "mobile": "9382704632"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 19:12:47,799.799 INFO    ] 20
[2026-08-25 19:12:47,809.809 INFO    ] TM03202401260825191230697
[2026-08-25 19:12:47,816.816 INFO    ] 9382704632
[2026-08-25 19:12:47,850.850 INFO    ] 2026-08-25 19:12:47
[2026-08-25 19:12:47,858.858 INFO    ] Door Opening for user mobile ending with  four six three two 
[2026-08-25 19:12:47,881.881 INFO    ] Door Opening for user mobile ending with  four six three two 
[2026-08-25 19:12:47,889.889 INFO    ] f11860bcb4031e7ddbe6d90bebfd8fd6
[2026-08-25 19:12:47,897.897 INFO    ] 2026-08-25 19:12:47
[2026-08-25 19:12:47,904.904 INFO    ] playing audio file
[2026-08-25 19:12:47,927.927 INFO    ] 2026-08-25 19:12:47
[2026-08-25 19:12:47,949.949 INFO    ] 2026-08-25 19:12:47
[2026-08-25 19:12:47,963.963 INFO    ] publish_status: order_id=TM03202401260825191230697
[2026-08-25 19:12:48,004.004 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825191230697
[2026-08-25 19:12:48,127.127 INFO    ] [publish_status] Message added to stream with ID: 1787665368144-0
[2026-08-25 19:12:48,146.146 INFO    ] Published to order:TM03202401260825191230697: {'server_response': '{"msg": "Order Data", "rstatus": true, "status": true, "data": {"bill_amount": "20", "mobile": "9382704632", "invoice_bill": "20", "proposed_sku_json": [{"offer_id": "", "mrp": "10", "qty": 1, "offer_desc": "", "door_id": "1", "skuid": "4500725", "tray_id": "14", "name": "Maxvita Coconut Cookies 40gm", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "sku_total": 10}, {"offer_id": "", "mrp": "10", "qty": 1, "offer_desc": "", "door_id": "1", "skuid": "4500731", "tray_id": "23", "name": "MaxVita Butter Elaichi cookies 46g", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500731-8867.png", "sku_total": 10}], "access_code": "14815664", "order_id": "TM03202401260825191230697"}}', 'server_status': 'order-started', 'timestamp': '2026-08-25T13:42:47.958736Z', 'order_id': 'TM03202401260825191230697'} (ID: 1787665368144-0)
[2026-08-25 19:12:48,717.717 INFO    ] {'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'bill_amount': '20', 'mobile': '9382704632', 'invoice_bill': '20', 'proposed_sku_json': [{'offer_id': '', 'mrp': '10', 'qty': 1, 'offer_desc': '', 'door_id': '1', 'skuid': '4500725', 'tray_id': '14', 'name': 'Maxvita Coconut Cookies 40gm', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'sku_total': 10}, {'offer_id': '', 'mrp': '10', 'qty': 1, 'offer_desc': '', 'door_id': '1', 'skuid': '4500731', 'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500731-8867.png', 'sku_total': 10}], 'access_code': '14815664', 'order_id': 'TM03202401260825191230697'}}, 'server_status': 'order-started', 'order_id': 'TM03202401260825191230697'}
[2026-08-25 19:12:48,720.720 INFO    ] 200
[2026-08-25 19:12:48,723.723 INFO    ] {"data":{"server_response":{"msg":"Order Data","rstatus":true,"status":true,"data":{"bill_amount":"20","mobile":"9382704632","invoice_bill":"20","proposed_sku_json":[{"offer_id":"","mrp":"10","qty":1,"offer_desc":"","door_id":"1","skuid":"4500725","tray_id":"14","name":"Maxvita Coconut Cookies 40gm","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","sku_total":10},{"offer_id":"","mrp":"10","qty":1,"offer_desc":"","door_id":"1","skuid":"4500731","tray_id":"23","name":"MaxVita Butter Elaichi cookies 46g","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500731-8867.png","sku_total":10}],"access_code":"14815664","order_id":"TM03202401260825191230697"}},"server_status":"order-started","order_id":"TM03202401260825191230697"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:12:48,726.726 INFO    ] {'data': {'server_response': {'msg': 'Order Data', 'data': {'bill_amount': '20', 'mobile': '9382704632', 'invoice_bill': '20', 'proposed_sku_json': [{'offer_id': '', 'mrp': '10', 'qty': 1, 'offer_desc': '', 'door_id': '1', 'skuid': '4500725', 'tray_id': '14', 'name': 'Maxvita Coconut Cookies 40gm', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'sku_total': 10}, {'offer_id': '', 'mrp': '10', 'qty': 1, 'offer_desc': '', 'door_id': '1', 'skuid': '4500731', 'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500731-8867.png', 'sku_total': 10}], 'access_code': '14815664', 'order_id': 'TM03202401260825191230697'}, 'status': True, 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM03202401260825191230697'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 19:12:48,729.729 INFO    ] 2026-08-25 19:12:48
[2026-08-25 19:12:48,772.772 INFO    ] 200
[2026-08-25 19:12:48,776.776 INFO    ] True
[2026-08-25 19:12:48,920.920 INFO    ] 200
[2026-08-25 19:12:48,923.923 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 19:12:48,927.927 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'rstatus': False}
[2026-08-25 19:12:48,930.930 INFO    ] *** process_order ***
[2026-08-25 19:12:50,131.131 INFO    ] 200
[2026-08-25 19:12:50,133.133 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 19:12:50,137.137 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}
[2026-08-25 19:12:50,140.140 INFO    ] *** process_order ***
[2026-08-25 19:12:50,143.143 INFO    ] publish_status: order_id=TM03202401260825191230697
[2026-08-25 19:12:50,145.145 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825191230697
[2026-08-25 19:12:50,233.233 INFO    ] [publish_status] Message added to stream with ID: 1787665370262-0
[2026-08-25 19:12:50,236.236 INFO    ] Published to order:TM03202401260825191230697: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Door is open...", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "status": "True", "rstatus": true}', 'server_status': 'doorOpened', 'order_id': 'TM03202401260825191230697'} (ID: 1787665370262-0)
[2026-08-25 19:12:51,304.304 INFO    ] 2026-08-25 19:12:51
[2026-08-25 19:12:51,308.308 INFO    ] publish_status: order_id=TM03202401260825191230697
[2026-08-25 19:12:51,311.311 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825191230697
[2026-08-25 19:12:51,392.392 INFO    ] [publish_status] Message added to stream with ID: 1787665371420-0
[2026-08-25 19:12:51,397.397 INFO    ] Published to order:TM03202401260825191230697: {'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "rstatus": true, "delay": 0, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}}', 'server_status': 'processOrder', 'timestamp': '2026-08-25T13:42:51.306408Z', 'order_id': 'TM03202401260825191230697'} (ID: 1787665371420-0)
[2026-08-25 19:12:51,530.530 INFO    ] {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'rstatus': True, 'delay': 0, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825191230697'}
[2026-08-25 19:12:51,533.533 INFO    ] 200
[2026-08-25 19:12:51,535.535 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  ","UI_Header":""},"voiceNote":"Please Wait","rstatus":true,"delay":0,"status":"true","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"}},"server_status":"processOrder","order_id":"TM03202401260825191230697"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:12:51,538.538 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'true', 'rstatus': True}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825191230697'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 19:12:51,541.541 INFO    ] 2026-08-25 19:12:51
[2026-08-25 19:12:51,543.543 INFO    ] None
[2026-08-25 19:12:51,546.546 INFO    ] Opening Door now
[2026-08-25 19:12:51,548.548 INFO    ] Opening Door now
[2026-08-25 19:12:51,551.551 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 19:12:51,553.553 INFO    ] 2026-08-25 19:12:51
[2026-08-25 19:12:51,556.556 INFO    ] playing audio file
[2026-08-25 19:12:51,574.574 INFO    ] 2026-08-25 19:12:51
[2026-08-25 19:12:51,577.577 INFO    ] 2026-08-25 19:12:51
[2026-08-25 19:12:54,649.649 INFO    ] 200
[2026-08-25 19:12:54,652.652 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}, {"qty": 1, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 19:12:54,655.655 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'skus': [{'name': 'Maxvita Coconut Cookies 40gm', 'qty': 1}, {'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False}
[2026-08-25 19:12:57,790.790 INFO    ] 200
[2026-08-25 19:12:57,792.792 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}, {"qty": 1, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 19:12:57,796.796 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Maxvita Coconut Cookies 40gm', 'qty': 1}, {'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False}
[2026-08-25 19:13:00,859.859 INFO    ] 200
[2026-08-25 19:13:00,861.861 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}, {"qty": 1, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 19:13:00,864.864 INFO    ] Please close door 1
[2026-08-25 19:13:00,867.867 INFO    ] Please close door 1
[2026-08-25 19:13:00,870.870 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 19:13:00,873.873 INFO    ] 2026-08-25 19:13:00
[2026-08-25 19:13:00,875.875 INFO    ] playing audio file
[2026-08-25 19:13:00,893.893 INFO    ] 2026-08-25 19:13:00
[2026-08-25 19:13:00,897.897 INFO    ] publish_status: order_id=TM03202401260825191230697
[2026-08-25 19:13:00,899.899 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825191230697
[2026-08-25 19:13:00,990.990 INFO    ] [publish_status] Message added to stream with ID: 1787665381018-0
[2026-08-25 19:13:00,992.992 INFO    ] Published to order:TM03202401260825191230697: {'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "Maxvita Coconut Cookies 40gm", "qty": 1}, {"name": "MaxVita Butter Elaichi cookies 46g", "qty": 1}], "Header": "Pick the below items from the door"}, "status": "False", "rstatus": false}', 'server_status': 'OrderStatus', 'timestamp': '2026-08-25T13:43:00.895392Z', 'order_id': 'TM03202401260825191230697'} (ID: 1787665381018-0)
[2026-08-25 19:13:01,561.561 INFO    ] {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Maxvita Coconut Cookies 40gm', 'qty': 1}, {'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825191230697'}
[2026-08-25 19:13:01,564.564 INFO    ] 200
[2026-08-25 19:13:01,566.566 INFO    ] {"data":{"server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick the Products and close the door","Note":"Please Close the door after picking up products","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"Maxvita Coconut Cookies 40gm","qty":1},{"name":"MaxVita Butter Elaichi cookies 46g","qty":1}],"Header":"Pick the below items from the door"},"status":"false","rstatus":false},"server_status":"OrderStatus","order_id":"TM03202401260825191230697"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:13:01,569.569 INFO    ] {'data': {'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'data': [], 'code': 20001, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'rstatus': False, 'status': 'false', 'SectionSKU': {'skus': [{'name': 'Maxvita Coconut Cookies 40gm', 'qty': 1}, {'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 1}], 'Header': 'Pick the below items from the door'}}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825191230697'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 19:13:01,572.572 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Maxvita Coconut Cookies 40gm', 'qty': 1}, {'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False}
[2026-08-25 19:13:04,623.623 INFO    ] 200
[2026-08-25 19:13:04,625.625 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}, {"qty": 1, "name": "MaxVita Butter Elaichi cookies 46g"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 19:13:04,628.628 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'Maxvita Coconut Cookies 40gm', 'qty': 1}, {'name': 'MaxVita Butter Elaichi cookies 46g', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False}
[2026-08-25 19:13:07,701.701 INFO    ] 200
[2026-08-25 19:13:07,704.704 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 19:13:07,707.707 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'delay': 100, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-08-25 19:13:07,710.710 INFO    ] 2026-08-25 19:13:07
[2026-08-25 19:13:07,712.712 INFO    ] Order Completed 
[2026-08-25 19:13:07,715.715 INFO    ] Order Completed 
[2026-08-25 19:13:07,718.718 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 19:13:07,721.721 INFO    ] 2026-08-25 19:13:07
[2026-08-25 19:13:07,723.723 INFO    ] playing audio file
[2026-08-25 19:13:07,741.741 INFO    ] 2026-08-25 19:13:07
[2026-08-25 19:13:07,745.745 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete ', 'UI_Header': ''}, 'voiceNote': 'Transaction Completed', 'rstatus': True, 'delay': 100, 'status': 'True', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}}
[2026-08-25 19:13:07,748.748 INFO    ] 2026-08-25 19:13:07
[2026-08-25 19:13:08,517.517 INFO    ] 200
[2026-08-25 19:13:08,519.519 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825191230697", "skus": [{"image_url": "https://images.tinymart.in/product/4500731-8867.png", "skuid": "4500731", "door_id": "", "unit_price": "10", "qty": 1, "tray_id": "23", "mrp": "10", "name": "MaxVita Butter Elaichi cookies 46g per peice", "sku_total": 10.0}, {"image_url": "https://images.tinymart.in/product/4500725-5961.png", "skuid": "4500725", "door_id": "", "unit_price": "10", "qty": 1, "tray_id": "26", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm per peice", "sku_total": 10.0}], "res": "True", "total_amount": 20.0, "logic": "WBL"}
[2026-08-25 19:13:08,523.523 INFO    ] {'total_amount': 20.0, 'logic': 'WBL', 'orderId': 'TM03202401260825191230697', 'res': 'True', 'skus': [{'mrp': '10', 'sku_total': 10.0, 'qty': 1, 'door_id': '', 'skuid': '4500731', 'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}, {'mrp': '10', 'sku_total': 10.0, 'qty': 1, 'door_id': '', 'skuid': '4500725', 'tray_id': '26', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png'}], 'rstatus': True, 'anomaly': 0}
[2026-08-25 19:13:08,526.526 INFO    ] {'total_amount': 20.0, 'logic': 'WBL', 'orderId': 'TM03202401260825191230697', 'res': 'True', 'skus': [{'mrp': '10', 'sku_total': 10.0, 'qty': 1, 'door_id': '', 'skuid': '4500731', 'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}, {'mrp': '10', 'sku_total': 10.0, 'qty': 1, 'door_id': '', 'skuid': '4500725', 'tray_id': '26', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png'}], 'rstatus': True, 'anomaly': 0}
[2026-08-25 19:13:08,529.529 INFO    ] 2026-08-25 19:13:08
[2026-08-25 19:13:08,532.532 INFO    ] 2026-08-25 19:13:08
[2026-08-25 19:13:08,535.535 INFO    ] 20
[2026-08-25 19:13:08,538.538 INFO    ] 2026-08-25 19:13:08
[2026-08-25 19:13:08,540.540 INFO    ] 2026-08-25 19:13:08
[2026-08-25 19:13:08,543.543 INFO    ]  Your Bill Amount is 20
[2026-08-25 19:13:08,546.546 INFO    ]  Your Bill Amount is 20
[2026-08-25 19:13:08,548.548 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-08-25 19:13:08,551.551 INFO    ] 2026-08-25 19:13:08
[2026-08-25 19:13:08,553.553 INFO    ] playing audio file
[2026-08-25 19:13:08,571.571 INFO    ] 2026-08-25 19:13:08
[2026-08-25 19:13:08,575.575 INFO    ] 2026-08-25 19:13:08
[2026-08-25 19:13:08,578.578 INFO    ] publish_status: order_id=TM03202401260825191230697
[2026-08-25 19:13:08,581.581 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825191230697
[2026-08-25 19:13:08,673.673 INFO    ] [publish_status] Message added to stream with ID: 1787665388693-0
[2026-08-25 19:13:08,675.675 INFO    ] Published to order:TM03202401260825191230697: {'server_response': '{"total_amount": 20.0, "logic": "WBL", "orderId": "TM03202401260825191230697", "res": "True", "skus": [{"mrp": "10", "sku_total": 10.0, "qty": 1, "door_id": "", "skuid": "4500731", "tray_id": "23", "name": "MaxVita Butter Elaichi cookies 46g per peice", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500731-8867.png"}, {"mrp": "10", "sku_total": 10.0, "qty": 1, "door_id": "", "skuid": "4500725", "tray_id": "26", "name": "Maxvita Coconut Cookies 40gm per peice", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500725-5961.png"}], "rstatus": true, "anomaly": 0}', 'server_status': 'invoiceOrder', 'timestamp': '2026-08-25T13:43:08.576472Z', 'order_id': 'TM03202401260825191230697'} (ID: 1787665388693-0)
[2026-08-25 19:13:09,751.751 INFO    ] {'server_response': {'total_amount': 20.0, 'logic': 'WBL', 'orderId': 'TM03202401260825191230697', 'res': 'True', 'skus': [{'mrp': '10', 'sku_total': 10.0, 'qty': 1, 'door_id': '', 'skuid': '4500731', 'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}, {'mrp': '10', 'sku_total': 10.0, 'qty': 1, 'door_id': '', 'skuid': '4500725', 'tray_id': '26', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png'}], 'rstatus': True, 'anomaly': 0}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825191230697'}
[2026-08-25 19:13:09,754.754 INFO    ] 200
[2026-08-25 19:13:09,758.758 INFO    ] {"data":{"server_response":{"total_amount":20,"logic":"WBL","orderId":"TM03202401260825191230697","res":"true","skus":[{"mrp":"10","sku_total":10,"qty":1,"door_id":"","skuid":"4500731","tray_id":"23","name":"MaxVita Butter Elaichi cookies 46g per peice","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500731-8867.png"},{"mrp":"10","sku_total":10,"qty":1,"door_id":"","skuid":"4500725","tray_id":"26","name":"Maxvita Coconut Cookies 40gm per peice","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png"}],"rstatus":true,"anomaly":0},"server_status":"invoiceOrder","order_id":"TM03202401260825191230697"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:13:09,761.761 INFO    ] {'data': {'server_response': {'res': 'true', 'logic': 'WBL', 'orderId': 'TM03202401260825191230697', 'total_amount': 20, 'skus': [{'mrp': '10', 'sku_total': 10, 'qty': 1, 'door_id': '', 'skuid': '4500731', 'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}, {'mrp': '10', 'sku_total': 10, 'qty': 1, 'door_id': '', 'skuid': '4500725', 'tray_id': '26', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png'}], 'rstatus': True, 'anomaly': 0}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825191230697'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 19:13:09,763.763 INFO    ] {'data': {'server_response': {'res': 'true', 'logic': 'WBL', 'orderId': 'TM03202401260825191230697', 'total_amount': 20, 'skus': [{'mrp': '10', 'sku_total': 10, 'qty': 1, 'door_id': '', 'skuid': '4500731', 'tray_id': '23', 'name': 'MaxVita Butter Elaichi cookies 46g per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500731-8867.png'}, {'mrp': '10', 'sku_total': 10, 'qty': 1, 'door_id': '', 'skuid': '4500725', 'tray_id': '26', 'name': 'Maxvita Coconut Cookies 40gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png'}], 'rstatus': True, 'anomaly': 0}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825191230697'}, 'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}}
[2026-08-25 19:13:09,772.772 INFO    ] 2026-08-25 19:13:09
[2026-08-25 19:13:11,672.672 INFO    ] 200
[2026-08-25 19:13:11,675.675 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": ["TM03202401260825191230697_0", "TM03202401260825191230697_1"], "order_items": [], "tray_synced": ["TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697", "TM03202401260825191230697"], "status": true}
[2026-08-25 19:13:11,678.678 INFO    ] 2026-08-25 19:13:11
[2026-08-25 19:13:11,820.820 INFO    ] 200
[2026-08-25 19:13:11,823.823 INFO    ] True
[2026-08-25 19:13:11,826.826 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825191230697
[2026-08-25 19:13:11,830.830 INFO    ] start order file deleted
[2026-08-25 19:13:11,834.834 INFO    ] Checking for system updates...
[2026-08-25 19:13:11,873.873 INFO    ] 200
[2026-08-25 19:13:11,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:11,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:13:11,946.946 INFO    ] No update needed
[2026-08-25 19:13:11,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 19:13:11,996.996 INFO    ] 200
[2026-08-25 19:13:11,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:12,046.046 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:13:12,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:13:12,125.125 INFO    ] No camera update needed
[2026-08-25 19:13:12,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:13:12,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:13:12,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:13:12,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:13:14,186.186 INFO    ] ================================================
[2026-08-25 19:13:14,201.201 INFO    ] Launching Daemon at Tue Aug 25 19:13:14 IST 2026
[2026-08-25 19:13:14,212.212 INFO    ] ================================================
[2026-08-25 19:13:14,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:13:14
[2026-08-25 19:13:15,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:13:15,668.668 INFO    ] Initializing speech engine...
[2026-08-25 19:13:15,684.684 INFO    ] 2026-08-25 19:13:15
[2026-08-25 19:13:15,975.975 INFO    ] 2026-08-25 19:13:15
[2026-08-25 19:13:16,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:13:16,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:13:16,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:13:16,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:13:16,406.406 INFO    ] time= 25/08/2026 19:13:16
[2026-08-25 19:13:16,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:13:16,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:13:16,496.496 INFO    ] No existing commands found in stream
[2026-08-25 19:13:21,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:13:21,529.529 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 19:13:25,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:13:25,967.967 INFO    ] Checking for system updates...
[2026-08-25 19:13:26,002.002 INFO    ] 200
[2026-08-25 19:13:26,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:26,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:13:26,068.068 INFO    ] No update needed
[2026-08-25 19:13:26,071.071 INFO    ] Checking for camera pi updates...
[2026-08-25 19:13:26,104.104 INFO    ] 200
[2026-08-25 19:13:26,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:26,152.152 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:13:26,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:13:26,210.210 INFO    ] No camera update needed
[2026-08-25 19:13:26,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:13:26,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:13:26,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:13:26,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:13:28,267.267 INFO    ] ================================================
[2026-08-25 19:13:28,283.283 INFO    ] Launching Daemon at Tue Aug 25 19:13:28 IST 2026
[2026-08-25 19:13:28,313.313 INFO    ] ================================================
[2026-08-25 19:13:28,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:13:28
[2026-08-25 19:13:29,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:13:29,937.937 INFO    ] Initializing speech engine...
[2026-08-25 19:13:29,948.948 INFO    ] 2026-08-25 19:13:29
[2026-08-25 19:13:30,238.238 INFO    ] 2026-08-25 19:13:30
[2026-08-25 19:13:30,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:13:30,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:13:30,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:13:30,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:13:30,774.774 INFO    ] time= 25/08/2026 19:13:30
[2026-08-25 19:13:30,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:13:30,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:13:30,955.955 INFO    ] No existing commands found in stream
[2026-08-25 19:13:35,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:13:35,989.989 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 19:13:40,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:13:40,122.122 INFO    ] Checking for system updates...
[2026-08-25 19:13:40,163.163 INFO    ] 200
[2026-08-25 19:13:40,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:40,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:13:40,236.236 INFO    ] No update needed
[2026-08-25 19:13:40,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 19:13:40,274.274 INFO    ] 200
[2026-08-25 19:13:40,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:40,318.318 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:13:40,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:13:40,378.378 INFO    ] No camera update needed
[2026-08-25 19:13:40,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:13:40,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:13:40,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:13:40,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:13:42,436.436 INFO    ] ================================================
[2026-08-25 19:13:42,450.450 INFO    ] Launching Daemon at Tue Aug 25 19:13:42 IST 2026
[2026-08-25 19:13:42,461.461 INFO    ] ================================================
[2026-08-25 19:13:43,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:13:43
[2026-08-25 19:13:43,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:13:43,881.881 INFO    ] Initializing speech engine...
[2026-08-25 19:13:43,890.890 INFO    ] 2026-08-25 19:13:43
[2026-08-25 19:13:44,136.136 INFO    ] 2026-08-25 19:13:44
[2026-08-25 19:13:44,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:13:44,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:13:44,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:13:44,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:13:44,676.676 INFO    ] time= 25/08/2026 19:13:44
[2026-08-25 19:13:44,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:13:44,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:13:44,837.837 INFO    ] No existing commands found in stream
[2026-08-25 19:13:49,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:13:49,856.856 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 19:13:51,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:13:51,268.268 INFO    ] Checking for system updates...
[2026-08-25 19:13:51,304.304 INFO    ] 200
[2026-08-25 19:13:51,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:51,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:13:51,368.368 INFO    ] No update needed
[2026-08-25 19:13:51,371.371 INFO    ] Checking for camera pi updates...
[2026-08-25 19:13:51,405.405 INFO    ] 200
[2026-08-25 19:13:51,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:13:51,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:13:51,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:13:51,495.495 INFO    ] No camera update needed
[2026-08-25 19:13:51,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:13:51,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:13:51,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:13:51,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:13:53,550.550 INFO    ] ================================================
[2026-08-25 19:13:53,565.565 INFO    ] Launching Daemon at Tue Aug 25 19:13:53 IST 2026
[2026-08-25 19:13:53,576.576 INFO    ] ================================================
[2026-08-25 19:13:54,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:13:54
[2026-08-25 19:13:54,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:13:55,031.031 INFO    ] Initializing speech engine...
[2026-08-25 19:13:55,046.046 INFO    ] 2026-08-25 19:13:55
[2026-08-25 19:13:55,335.335 INFO    ] 2026-08-25 19:13:55
[2026-08-25 19:13:55,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:13:55,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:13:55,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:13:55,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:13:55,739.739 INFO    ] time= 25/08/2026 19:13:55
[2026-08-25 19:13:55,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:13:55,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:13:55,863.863 INFO    ] No existing commands found in stream
[2026-08-25 19:14:00,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:14:00,897.897 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 19:14:04,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:14:04,781.781 INFO    ] Checking for system updates...
[2026-08-25 19:14:04,820.820 INFO    ] 200
[2026-08-25 19:14:04,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:04,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:14:04,877.877 INFO    ] No update needed
[2026-08-25 19:14:04,879.879 INFO    ] Checking for camera pi updates...
[2026-08-25 19:14:04,916.916 INFO    ] 200
[2026-08-25 19:14:04,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:04,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:14:05,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:14:05,015.015 INFO    ] No camera update needed
[2026-08-25 19:14:05,018.018 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:14:05,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:14:05,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:14:05,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:14:07,071.071 INFO    ] ================================================
[2026-08-25 19:14:07,087.087 INFO    ] Launching Daemon at Tue Aug 25 19:14:07 IST 2026
[2026-08-25 19:14:07,097.097 INFO    ] ================================================
[2026-08-25 19:14:07,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:14:07
[2026-08-25 19:14:08,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:14:08,551.551 INFO    ] Initializing speech engine...
[2026-08-25 19:14:08,560.560 INFO    ] 2026-08-25 19:14:08
[2026-08-25 19:14:08,822.822 INFO    ] 2026-08-25 19:14:08
[2026-08-25 19:14:08,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:14:09,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:14:09,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:14:09,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:14:09,311.311 INFO    ] time= 25/08/2026 19:14:09
[2026-08-25 19:14:09,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:14:09,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:14:09,517.517 INFO    ] No existing commands found in stream
[2026-08-25 19:14:14,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:14:14,530.530 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 19:14:15,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:14:15,758.758 INFO    ] Checking for system updates...
[2026-08-25 19:14:15,793.793 INFO    ] 200
[2026-08-25 19:14:15,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:15,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:15,854.854 INFO    ] No update needed
[2026-08-25 19:14:15,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 19:14:15,891.891 INFO    ] 200
[2026-08-25 19:14:15,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:15,938.938 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:14:15,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:15,982.982 INFO    ] No camera update needed
[2026-08-25 19:14:15,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:14:15,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:14:15,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:14:15,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:14:18,036.036 INFO    ] ================================================
[2026-08-25 19:14:18,052.052 INFO    ] Launching Daemon at Tue Aug 25 19:14:18 IST 2026
[2026-08-25 19:14:18,063.063 INFO    ] ================================================
[2026-08-25 19:14:18,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:14:18
[2026-08-25 19:14:19,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:14:19,474.474 INFO    ] Initializing speech engine...
[2026-08-25 19:14:19,486.486 INFO    ] 2026-08-25 19:14:19
[2026-08-25 19:14:19,768.768 INFO    ] 2026-08-25 19:14:19
[2026-08-25 19:14:19,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:14:20,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:14:20,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:14:20,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:14:20,184.184 INFO    ] time= 25/08/2026 19:14:20
[2026-08-25 19:14:20,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:14:20,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:14:20,335.335 INFO    ] No existing commands found in stream
[2026-08-25 19:14:25,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:14:25,362.362 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 19:14:29,223.223 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:14:29,226.226 INFO    ] Checking for system updates...
[2026-08-25 19:14:29,265.265 INFO    ] 200
[2026-08-25 19:14:29,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:29,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:29,323.323 INFO    ] No update needed
[2026-08-25 19:14:29,325.325 INFO    ] Checking for camera pi updates...
[2026-08-25 19:14:29,362.362 INFO    ] 200
[2026-08-25 19:14:29,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:29,404.404 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:14:29,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:29,461.461 INFO    ] No camera update needed
[2026-08-25 19:14:29,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:14:29,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:14:29,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:14:29,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:14:31,515.515 INFO    ] ================================================
[2026-08-25 19:14:31,530.530 INFO    ] Launching Daemon at Tue Aug 25 19:14:31 IST 2026
[2026-08-25 19:14:31,541.541 INFO    ] ================================================
[2026-08-25 19:14:32,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:14:32
[2026-08-25 19:14:32,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:14:33,014.014 INFO    ] Initializing speech engine...
[2026-08-25 19:14:33,034.034 INFO    ] 2026-08-25 19:14:33
[2026-08-25 19:14:33,301.301 INFO    ] 2026-08-25 19:14:33
[2026-08-25 19:14:33,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:14:33,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:14:33,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:14:33,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:14:33,789.789 INFO    ] time= 25/08/2026 19:14:33
[2026-08-25 19:14:33,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:14:33,837.837 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:14:33,951.951 INFO    ] No existing commands found in stream
[2026-08-25 19:14:38,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:14:38,975.975 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 19:14:42,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:14:42,302.302 INFO    ] Checking for system updates...
[2026-08-25 19:14:42,338.338 INFO    ] 200
[2026-08-25 19:14:42,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:42,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:42,401.401 INFO    ] No update needed
[2026-08-25 19:14:42,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 19:14:42,440.440 INFO    ] 200
[2026-08-25 19:14:42,442.442 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:42,486.486 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:14:42,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:42,539.539 INFO    ] No camera update needed
[2026-08-25 19:14:42,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:14:42,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:14:42,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:14:42,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:14:44,595.595 INFO    ] ================================================
[2026-08-25 19:14:44,611.611 INFO    ] Launching Daemon at Tue Aug 25 19:14:44 IST 2026
[2026-08-25 19:14:44,621.621 INFO    ] ================================================
[2026-08-25 19:14:45,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:14:45
[2026-08-25 19:14:45,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:14:46,028.028 INFO    ] Initializing speech engine...
[2026-08-25 19:14:46,036.036 INFO    ] 2026-08-25 19:14:46
[2026-08-25 19:14:46,329.329 INFO    ] 2026-08-25 19:14:46
[2026-08-25 19:14:46,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:14:46,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:14:46,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:14:46,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:14:46,821.821 INFO    ] time= 25/08/2026 19:14:46
[2026-08-25 19:14:46,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:14:46,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:14:47,080.080 INFO    ] No existing commands found in stream
[2026-08-25 19:14:52,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:14:52,103.103 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 19:14:56,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:14:56,360.360 INFO    ] Checking for system updates...
[2026-08-25 19:14:56,396.396 INFO    ] 200
[2026-08-25 19:14:56,398.398 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:56,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:56,452.452 INFO    ] No update needed
[2026-08-25 19:14:56,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 19:14:56,488.488 INFO    ] 200
[2026-08-25 19:14:56,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:14:56,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:14:56,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:14:56,686.686 INFO    ] No camera update needed
[2026-08-25 19:14:56,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:14:56,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:14:56,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:14:56,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:14:58,740.740 INFO    ] ================================================
[2026-08-25 19:14:58,755.755 INFO    ] Launching Daemon at Tue Aug 25 19:14:58 IST 2026
[2026-08-25 19:14:58,767.767 INFO    ] ================================================
[2026-08-25 19:14:59,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:14:59
[2026-08-25 19:14:59,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:15:00,183.183 INFO    ] Initializing speech engine...
[2026-08-25 19:15:00,192.192 INFO    ] 2026-08-25 19:15:00
[2026-08-25 19:15:00,450.450 INFO    ] 2026-08-25 19:15:00
[2026-08-25 19:15:00,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:15:00,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:15:00,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:15:00,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:15:01,035.035 INFO    ] time= 25/08/2026 19:15:00
[2026-08-25 19:15:01,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:15:01,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:15:01,195.195 INFO    ] No existing commands found in stream
[2026-08-25 19:15:06,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:15:06,223.223 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 19:15:08,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:15:08,159.159 INFO    ] Checking for system updates...
[2026-08-25 19:15:08,194.194 INFO    ] 200
[2026-08-25 19:15:08,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:08,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:15:08,256.256 INFO    ] No update needed
[2026-08-25 19:15:08,259.259 INFO    ] Checking for camera pi updates...
[2026-08-25 19:15:08,292.292 INFO    ] 200
[2026-08-25 19:15:08,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:08,343.343 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:15:08,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:15:08,394.394 INFO    ] No camera update needed
[2026-08-25 19:15:08,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:15:08,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:15:08,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:15:08,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:15:10,449.449 INFO    ] ================================================
[2026-08-25 19:15:10,464.464 INFO    ] Launching Daemon at Tue Aug 25 19:15:10 IST 2026
[2026-08-25 19:15:10,475.475 INFO    ] ================================================
[2026-08-25 19:15:11,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:15:11
[2026-08-25 19:15:11,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:15:11,923.923 INFO    ] Initializing speech engine...
[2026-08-25 19:15:11,932.932 INFO    ] 2026-08-25 19:15:11
[2026-08-25 19:15:12,180.180 INFO    ] 2026-08-25 19:15:12
[2026-08-25 19:15:12,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:15:12,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:15:12,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:15:12,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:15:12,659.659 INFO    ] time= 25/08/2026 19:15:12
[2026-08-25 19:15:12,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:15:12,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:15:12,884.884 INFO    ] No existing commands found in stream
[2026-08-25 19:15:17,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:15:17,903.903 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 19:15:21,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:15:21,899.899 INFO    ] Checking for system updates...
[2026-08-25 19:15:21,935.935 INFO    ] 200
[2026-08-25 19:15:21,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:21,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:15:21,993.993 INFO    ] No update needed
[2026-08-25 19:15:21,995.995 INFO    ] Checking for camera pi updates...
[2026-08-25 19:15:22,034.034 INFO    ] 200
[2026-08-25 19:15:22,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:22,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:15:22,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:15:22,137.137 INFO    ] No camera update needed
[2026-08-25 19:15:22,140.140 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:15:22,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:15:22,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:15:22,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:15:24,194.194 INFO    ] ================================================
[2026-08-25 19:15:24,210.210 INFO    ] Launching Daemon at Tue Aug 25 19:15:24 IST 2026
[2026-08-25 19:15:24,221.221 INFO    ] ================================================
[2026-08-25 19:15:24,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:15:24
[2026-08-25 19:15:25,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:15:25,654.654 INFO    ] Initializing speech engine...
[2026-08-25 19:15:25,659.659 INFO    ] 2026-08-25 19:15:25
[2026-08-25 19:15:25,919.919 INFO    ] 2026-08-25 19:15:25
[2026-08-25 19:15:25,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:15:26,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:15:26,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:15:26,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:15:26,447.447 INFO    ] time= 25/08/2026 19:15:26
[2026-08-25 19:15:26,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:15:26,476.476 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:15:26,606.606 INFO    ] No existing commands found in stream
[2026-08-25 19:15:31,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:15:31,635.635 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 19:15:35,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:15:35,927.927 INFO    ] Checking for system updates...
[2026-08-25 19:15:35,964.964 INFO    ] 200
[2026-08-25 19:15:35,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:36,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:15:36,029.029 INFO    ] No update needed
[2026-08-25 19:15:36,032.032 INFO    ] Checking for camera pi updates...
[2026-08-25 19:15:36,067.067 INFO    ] 200
[2026-08-25 19:15:36,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:36,111.111 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:15:36,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:15:36,159.159 INFO    ] No camera update needed
[2026-08-25 19:15:36,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:15:36,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:15:36,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:15:36,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:15:38,218.218 INFO    ] ================================================
[2026-08-25 19:15:38,234.234 INFO    ] Launching Daemon at Tue Aug 25 19:15:38 IST 2026
[2026-08-25 19:15:38,245.245 INFO    ] ================================================
[2026-08-25 19:15:38,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:15:38
[2026-08-25 19:15:39,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:15:39,649.649 INFO    ] Initializing speech engine...
[2026-08-25 19:15:39,658.658 INFO    ] 2026-08-25 19:15:39
[2026-08-25 19:15:39,952.952 INFO    ] 2026-08-25 19:15:39
[2026-08-25 19:15:39,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:15:40,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:15:40,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:15:40,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:15:40,372.372 INFO    ] time= 25/08/2026 19:15:40
[2026-08-25 19:15:40,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:15:40,384.384 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:15:40,540.540 INFO    ] No existing commands found in stream
[2026-08-25 19:15:45,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:15:45,568.568 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 19:15:48,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:15:48,519.519 INFO    ] Checking for system updates...
[2026-08-25 19:15:48,558.558 INFO    ] 200
[2026-08-25 19:15:48,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:48,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:15:48,623.623 INFO    ] No update needed
[2026-08-25 19:15:48,625.625 INFO    ] Checking for camera pi updates...
[2026-08-25 19:15:48,659.659 INFO    ] 200
[2026-08-25 19:15:48,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:48,706.706 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:15:48,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:15:48,769.769 INFO    ] No camera update needed
[2026-08-25 19:15:48,772.772 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:15:48,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:15:48,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:15:48,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:15:50,824.824 INFO    ] ================================================
[2026-08-25 19:15:50,839.839 INFO    ] Launching Daemon at Tue Aug 25 19:15:50 IST 2026
[2026-08-25 19:15:50,850.850 INFO    ] ================================================
[2026-08-25 19:15:51,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:15:51
[2026-08-25 19:15:52,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:15:52,305.305 INFO    ] Initializing speech engine...
[2026-08-25 19:15:52,317.317 INFO    ] 2026-08-25 19:15:52
[2026-08-25 19:15:52,602.602 INFO    ] 2026-08-25 19:15:52
[2026-08-25 19:15:52,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:15:52,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:15:52,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:15:53,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:15:53,132.132 INFO    ] time= 25/08/2026 19:15:53
[2026-08-25 19:15:53,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:15:53,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:15:53,288.288 INFO    ] No existing commands found in stream
[2026-08-25 19:15:58,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:15:58,325.325 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 19:15:59,900.900 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:15:59,902.902 INFO    ] Checking for system updates...
[2026-08-25 19:15:59,937.937 INFO    ] 200
[2026-08-25 19:15:59,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:15:59,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:15:59,999.999 INFO    ] No update needed
[2026-08-25 19:16:00,002.002 INFO    ] Checking for camera pi updates...
[2026-08-25 19:16:00,036.036 INFO    ] 200
[2026-08-25 19:16:00,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:00,083.083 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:16:00,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:16:00,140.140 INFO    ] No camera update needed
[2026-08-25 19:16:00,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:16:00,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:16:00,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:16:00,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:16:02,197.197 INFO    ] ================================================
[2026-08-25 19:16:02,219.219 INFO    ] Launching Daemon at Tue Aug 25 19:16:02 IST 2026
[2026-08-25 19:16:02,236.236 INFO    ] ================================================
[2026-08-25 19:16:02,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:16:02
[2026-08-25 19:16:03,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:16:03,783.783 INFO    ] Initializing speech engine...
[2026-08-25 19:16:03,801.801 INFO    ] 2026-08-25 19:16:03
[2026-08-25 19:16:04,050.050 INFO    ] 2026-08-25 19:16:04
[2026-08-25 19:16:04,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:16:04,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:16:04,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:16:04,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:16:04,465.465 INFO    ] time= 25/08/2026 19:16:04
[2026-08-25 19:16:04,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:16:04,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:16:04,671.671 INFO    ] No existing commands found in stream
[2026-08-25 19:16:09,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:16:09,688.688 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 19:16:11,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:16:11,867.867 INFO    ] Checking for system updates...
[2026-08-25 19:16:11,902.902 INFO    ] 200
[2026-08-25 19:16:11,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:11,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:16:11,962.962 INFO    ] No update needed
[2026-08-25 19:16:11,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 19:16:12,001.001 INFO    ] 200
[2026-08-25 19:16:12,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:12,048.048 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:16:12,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:16:12,101.101 INFO    ] No camera update needed
[2026-08-25 19:16:12,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:16:12,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:16:12,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:16:12,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:16:14,157.157 INFO    ] ================================================
[2026-08-25 19:16:14,173.173 INFO    ] Launching Daemon at Tue Aug 25 19:16:14 IST 2026
[2026-08-25 19:16:14,184.184 INFO    ] ================================================
[2026-08-25 19:16:14,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:16:14
[2026-08-25 19:16:15,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:16:15,789.789 INFO    ] Initializing speech engine...
[2026-08-25 19:16:15,795.795 INFO    ] 2026-08-25 19:16:15
[2026-08-25 19:16:16,066.066 INFO    ] 2026-08-25 19:16:16
[2026-08-25 19:16:16,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:16:16,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:16:16,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:16:16,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:16:16,542.542 INFO    ] time= 25/08/2026 19:16:16
[2026-08-25 19:16:16,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:16:16,563.563 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:16:16,645.645 INFO    ] No existing commands found in stream
[2026-08-25 19:16:21,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:16:21,673.673 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 19:16:22,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:16:22,459.459 INFO    ] Checking for system updates...
[2026-08-25 19:16:22,498.498 INFO    ] 200
[2026-08-25 19:16:22,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:22,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:16:22,555.555 INFO    ] No update needed
[2026-08-25 19:16:22,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 19:16:22,591.591 INFO    ] 200
[2026-08-25 19:16:22,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:22,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:16:22,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:16:22,682.682 INFO    ] No camera update needed
[2026-08-25 19:16:22,684.684 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:16:22,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:16:22,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:16:22,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:16:24,736.736 INFO    ] ================================================
[2026-08-25 19:16:24,752.752 INFO    ] Launching Daemon at Tue Aug 25 19:16:24 IST 2026
[2026-08-25 19:16:24,763.763 INFO    ] ================================================
[2026-08-25 19:16:25,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:16:25
[2026-08-25 19:16:25,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:16:26,220.220 INFO    ] Initializing speech engine...
[2026-08-25 19:16:26,228.228 INFO    ] 2026-08-25 19:16:26
[2026-08-25 19:16:26,498.498 INFO    ] 2026-08-25 19:16:26
[2026-08-25 19:16:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:16:26,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:16:26,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:16:26,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:16:26,979.979 INFO    ] time= 25/08/2026 19:16:26
[2026-08-25 19:16:27,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:16:27,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:16:27,229.229 INFO    ] No existing commands found in stream
[2026-08-25 19:16:32,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:16:32,257.257 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 19:16:33,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:16:33,835.835 INFO    ] Checking for system updates...
[2026-08-25 19:16:33,878.878 INFO    ] 200
[2026-08-25 19:16:33,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:33,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:16:33,944.944 INFO    ] No update needed
[2026-08-25 19:16:33,947.947 INFO    ] Checking for camera pi updates...
[2026-08-25 19:16:33,981.981 INFO    ] 200
[2026-08-25 19:16:33,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:34,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:16:34,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:16:34,076.076 INFO    ] No camera update needed
[2026-08-25 19:16:34,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:16:34,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:16:34,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:16:34,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:16:36,140.140 INFO    ] ================================================
[2026-08-25 19:16:36,156.156 INFO    ] Launching Daemon at Tue Aug 25 19:16:36 IST 2026
[2026-08-25 19:16:36,167.167 INFO    ] ================================================
[2026-08-25 19:16:36,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:16:36
[2026-08-25 19:16:37,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:16:37,872.872 INFO    ] Initializing speech engine...
[2026-08-25 19:16:37,883.883 INFO    ] 2026-08-25 19:16:37
[2026-08-25 19:16:38,138.138 INFO    ] 2026-08-25 19:16:38
[2026-08-25 19:16:38,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:16:38,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:16:38,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:16:38,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:16:38,691.691 INFO    ] time= 25/08/2026 19:16:38
[2026-08-25 19:16:38,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:16:38,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:16:38,902.902 INFO    ] No existing commands found in stream
[2026-08-25 19:16:43,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:16:43,937.937 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 19:16:45,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:16:45,051.051 INFO    ] Checking for system updates...
[2026-08-25 19:16:45,088.088 INFO    ] 200
[2026-08-25 19:16:45,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:45,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:16:45,154.154 INFO    ] No update needed
[2026-08-25 19:16:45,157.157 INFO    ] Checking for camera pi updates...
[2026-08-25 19:16:45,195.195 INFO    ] 200
[2026-08-25 19:16:45,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:45,238.238 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:16:45,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:16:45,293.293 INFO    ] No camera update needed
[2026-08-25 19:16:45,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:16:45,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:16:45,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:16:45,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:16:47,350.350 INFO    ] ================================================
[2026-08-25 19:16:47,367.367 INFO    ] Launching Daemon at Tue Aug 25 19:16:47 IST 2026
[2026-08-25 19:16:47,379.379 INFO    ] ================================================
[2026-08-25 19:16:48,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:16:48
[2026-08-25 19:16:48,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:16:49,087.087 INFO    ] Initializing speech engine...
[2026-08-25 19:16:49,098.098 INFO    ] 2026-08-25 19:16:49
[2026-08-25 19:16:49,353.353 INFO    ] 2026-08-25 19:16:49
[2026-08-25 19:16:49,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:16:49,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:16:49,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:16:49,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:16:49,882.882 INFO    ] time= 25/08/2026 19:16:49
[2026-08-25 19:16:49,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:16:49,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:16:50,047.047 INFO    ] No existing commands found in stream
[2026-08-25 19:16:55,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:16:55,065.065 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 19:16:56,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:16:56,782.782 INFO    ] Checking for system updates...
[2026-08-25 19:16:56,820.820 INFO    ] 200
[2026-08-25 19:16:56,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:56,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:16:56,889.889 INFO    ] No update needed
[2026-08-25 19:16:56,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 19:16:56,927.927 INFO    ] 200
[2026-08-25 19:16:56,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:16:56,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:16:57,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:16:57,041.041 INFO    ] No camera update needed
[2026-08-25 19:16:57,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:16:57,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:16:57,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:16:57,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:16:59,098.098 INFO    ] ================================================
[2026-08-25 19:16:59,113.113 INFO    ] Launching Daemon at Tue Aug 25 19:16:59 IST 2026
[2026-08-25 19:16:59,124.124 INFO    ] ================================================
[2026-08-25 19:16:59,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:16:59
[2026-08-25 19:17:00,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:17:00,550.550 INFO    ] Initializing speech engine...
[2026-08-25 19:17:00,559.559 INFO    ] 2026-08-25 19:17:00
[2026-08-25 19:17:00,861.861 INFO    ] 2026-08-25 19:17:00
[2026-08-25 19:17:00,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:17:01,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:17:01,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:17:01,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:17:01,258.258 INFO    ] time= 25/08/2026 19:17:01
[2026-08-25 19:17:01,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:17:01,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:17:01,387.387 INFO    ] No existing commands found in stream
[2026-08-25 19:17:06,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:17:06,402.402 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-08-25 19:17:08,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:17:08,849.849 INFO    ] Checking for system updates...
[2026-08-25 19:17:08,885.885 INFO    ] 200
[2026-08-25 19:17:08,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:08,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:17:08,954.954 INFO    ] No update needed
[2026-08-25 19:17:08,957.957 INFO    ] Checking for camera pi updates...
[2026-08-25 19:17:08,990.990 INFO    ] 200
[2026-08-25 19:17:08,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:09,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:17:09,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:17:09,094.094 INFO    ] No camera update needed
[2026-08-25 19:17:09,097.097 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:17:09,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:17:09,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:17:09,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:17:11,149.149 INFO    ] ================================================
[2026-08-25 19:17:11,165.165 INFO    ] Launching Daemon at Tue Aug 25 19:17:11 IST 2026
[2026-08-25 19:17:11,177.177 INFO    ] ================================================
[2026-08-25 19:17:11,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:17:11
[2026-08-25 19:17:12,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:17:12,865.865 INFO    ] Initializing speech engine...
[2026-08-25 19:17:12,878.878 INFO    ] 2026-08-25 19:17:12
[2026-08-25 19:17:13,192.192 INFO    ] 2026-08-25 19:17:13
[2026-08-25 19:17:13,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:17:13,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:17:13,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:17:13,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:17:13,704.704 INFO    ] time= 25/08/2026 19:17:13
[2026-08-25 19:17:13,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:17:13,747.747 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:17:13,894.894 INFO    ] No existing commands found in stream
[2026-08-25 19:17:18,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:17:18,923.923 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 19:17:22,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:17:22,677.677 INFO    ] Checking for system updates...
[2026-08-25 19:17:22,718.718 INFO    ] 200
[2026-08-25 19:17:22,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:22,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:17:22,783.783 INFO    ] No update needed
[2026-08-25 19:17:22,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 19:17:22,819.819 INFO    ] 200
[2026-08-25 19:17:22,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:22,862.862 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:17:22,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:17:22,916.916 INFO    ] No camera update needed
[2026-08-25 19:17:22,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:17:22,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:17:22,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:17:22,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:17:24,970.970 INFO    ] ================================================
[2026-08-25 19:17:24,985.985 INFO    ] Launching Daemon at Tue Aug 25 19:17:24 IST 2026
[2026-08-25 19:17:25,997.997 INFO    ] ================================================
[2026-08-25 19:17:25,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:17:25
[2026-08-25 19:17:26,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:17:26,681.681 INFO    ] Initializing speech engine...
[2026-08-25 19:17:26,695.695 INFO    ] 2026-08-25 19:17:26
[2026-08-25 19:17:27,009.009 INFO    ] 2026-08-25 19:17:26
[2026-08-25 19:17:27,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:17:27,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:17:27,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:17:27,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:17:27,521.521 INFO    ] time= 25/08/2026 19:17:27
[2026-08-25 19:17:27,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:17:27,571.571 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:17:27,677.677 INFO    ] No existing commands found in stream
[2026-08-25 19:17:32,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:17:32,703.703 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 19:17:35,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:17:35,563.563 INFO    ] Checking for system updates...
[2026-08-25 19:17:35,601.601 INFO    ] 200
[2026-08-25 19:17:35,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:35,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:17:35,661.661 INFO    ] No update needed
[2026-08-25 19:17:35,663.663 INFO    ] Checking for camera pi updates...
[2026-08-25 19:17:35,698.698 INFO    ] 200
[2026-08-25 19:17:35,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:35,748.748 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:17:35,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:17:35,801.801 INFO    ] No camera update needed
[2026-08-25 19:17:35,804.804 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:17:35,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:17:35,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:17:35,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:17:37,862.862 INFO    ] ================================================
[2026-08-25 19:17:37,878.878 INFO    ] Launching Daemon at Tue Aug 25 19:17:37 IST 2026
[2026-08-25 19:17:37,889.889 INFO    ] ================================================
[2026-08-25 19:17:38,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:17:38
[2026-08-25 19:17:39,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:17:39,287.287 INFO    ] Initializing speech engine...
[2026-08-25 19:17:39,293.293 INFO    ] 2026-08-25 19:17:39
[2026-08-25 19:17:39,568.568 INFO    ] 2026-08-25 19:17:39
[2026-08-25 19:17:39,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:17:39,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:17:39,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:17:39,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:17:39,983.983 INFO    ] time= 25/08/2026 19:17:39
[2026-08-25 19:17:39,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:17:39,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:17:40,072.072 INFO    ] No existing commands found in stream
[2026-08-25 19:17:45,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:17:45,087.087 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 19:17:49,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:17:49,481.481 INFO    ] Checking for system updates...
[2026-08-25 19:17:49,522.522 INFO    ] 200
[2026-08-25 19:17:49,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:49,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:17:49,581.581 INFO    ] No update needed
[2026-08-25 19:17:49,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 19:17:49,623.623 INFO    ] 200
[2026-08-25 19:17:49,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:17:49,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:17:49,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:17:49,740.740 INFO    ] No camera update needed
[2026-08-25 19:17:49,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:17:49,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:17:49,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:17:49,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:17:51,799.799 INFO    ] ================================================
[2026-08-25 19:17:51,815.815 INFO    ] Launching Daemon at Tue Aug 25 19:17:51 IST 2026
[2026-08-25 19:17:51,826.826 INFO    ] ================================================
[2026-08-25 19:17:52,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:17:52
[2026-08-25 19:17:53,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:17:53,286.286 INFO    ] Initializing speech engine...
[2026-08-25 19:17:53,307.307 INFO    ] 2026-08-25 19:17:53
[2026-08-25 19:17:53,580.580 INFO    ] 2026-08-25 19:17:53
[2026-08-25 19:17:53,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:17:53,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:17:53,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:17:54,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:17:54,082.082 INFO    ] time= 25/08/2026 19:17:54
[2026-08-25 19:17:54,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:17:54,180.180 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:17:54,290.290 INFO    ] No existing commands found in stream
[2026-08-25 19:17:59,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:17:59,305.305 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 19:18:01,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:18:01,450.450 INFO    ] Checking for system updates...
[2026-08-25 19:18:01,491.491 INFO    ] 200
[2026-08-25 19:18:01,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:01,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:18:01,548.548 INFO    ] No update needed
[2026-08-25 19:18:01,550.550 INFO    ] Checking for camera pi updates...
[2026-08-25 19:18:01,587.587 INFO    ] 200
[2026-08-25 19:18:01,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:01,637.637 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:18:01,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:18:01,713.713 INFO    ] No camera update needed
[2026-08-25 19:18:01,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:18:01,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:18:01,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:18:01,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:18:03,790.790 INFO    ] ================================================
[2026-08-25 19:18:03,805.805 INFO    ] Launching Daemon at Tue Aug 25 19:18:03 IST 2026
[2026-08-25 19:18:03,817.817 INFO    ] ================================================
[2026-08-25 19:18:04,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:18:04
[2026-08-25 19:18:04,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:18:05,258.258 INFO    ] Initializing speech engine...
[2026-08-25 19:18:05,267.267 INFO    ] 2026-08-25 19:18:05
[2026-08-25 19:18:05,525.525 INFO    ] 2026-08-25 19:18:05
[2026-08-25 19:18:05,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:18:05,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:18:05,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:18:05,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:18:06,011.011 INFO    ] time= 25/08/2026 19:18:05
[2026-08-25 19:18:06,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:18:06,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:18:06,228.228 INFO    ] No existing commands found in stream
[2026-08-25 19:18:11,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:18:11,258.258 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 19:18:15,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:18:15,198.198 INFO    ] Checking for system updates...
[2026-08-25 19:18:15,233.233 INFO    ] 200
[2026-08-25 19:18:15,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:15,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:18:15,292.292 INFO    ] No update needed
[2026-08-25 19:18:15,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 19:18:15,328.328 INFO    ] 200
[2026-08-25 19:18:15,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:15,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:18:15,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:18:15,430.430 INFO    ] No camera update needed
[2026-08-25 19:18:15,432.432 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:18:15,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:18:15,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:18:15,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:18:17,488.488 INFO    ] ================================================
[2026-08-25 19:18:17,504.504 INFO    ] Launching Daemon at Tue Aug 25 19:18:17 IST 2026
[2026-08-25 19:18:17,515.515 INFO    ] ================================================
[2026-08-25 19:18:18,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:18:18
[2026-08-25 19:18:18,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:18:19,172.172 INFO    ] Initializing speech engine...
[2026-08-25 19:18:19,183.183 INFO    ] 2026-08-25 19:18:19
[2026-08-25 19:18:19,495.495 INFO    ] 2026-08-25 19:18:19
[2026-08-25 19:18:19,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:18:19,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:18:19,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:18:21,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:18:21,108.108 INFO    ] time= 25/08/2026 19:18:21
[2026-08-25 19:18:21,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:18:21,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:18:21,227.227 INFO    ] No existing commands found in stream
[2026-08-25 19:18:26,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:18:26,242.242 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 19:18:27,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:18:27,325.325 INFO    ] Checking for system updates...
[2026-08-25 19:18:27,369.369 INFO    ] 200
[2026-08-25 19:18:27,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:27,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:18:27,432.432 INFO    ] No update needed
[2026-08-25 19:18:27,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 19:18:27,480.480 INFO    ] 200
[2026-08-25 19:18:27,483.483 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:27,526.526 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:18:27,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:18:27,583.583 INFO    ] No camera update needed
[2026-08-25 19:18:27,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:18:27,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:18:27,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:18:27,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:18:29,644.644 INFO    ] ================================================
[2026-08-25 19:18:29,668.668 INFO    ] Launching Daemon at Tue Aug 25 19:18:29 IST 2026
[2026-08-25 19:18:29,680.680 INFO    ] ================================================
[2026-08-25 19:18:30,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:18:30
[2026-08-25 19:18:30,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:18:31,222.222 INFO    ] Initializing speech engine...
[2026-08-25 19:18:31,231.231 INFO    ] 2026-08-25 19:18:31
[2026-08-25 19:18:31,504.504 INFO    ] 2026-08-25 19:18:31
[2026-08-25 19:18:31,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:18:31,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:18:31,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:18:31,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:18:31,892.892 INFO    ] time= 25/08/2026 19:18:31
[2026-08-25 19:18:31,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:18:31,926.926 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:18:32,055.055 INFO    ] No existing commands found in stream
[2026-08-25 19:18:37,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:18:37,076.076 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 19:18:41,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:18:41,147.147 INFO    ] Checking for system updates...
[2026-08-25 19:18:41,185.185 INFO    ] 200
[2026-08-25 19:18:41,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:41,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:18:41,242.242 INFO    ] No update needed
[2026-08-25 19:18:41,245.245 INFO    ] Checking for camera pi updates...
[2026-08-25 19:18:41,282.282 INFO    ] 200
[2026-08-25 19:18:41,285.285 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:41,325.325 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:18:41,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:18:41,371.371 INFO    ] No camera update needed
[2026-08-25 19:18:41,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:18:41,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:18:41,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:18:41,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:18:43,426.426 INFO    ] ================================================
[2026-08-25 19:18:43,441.441 INFO    ] Launching Daemon at Tue Aug 25 19:18:43 IST 2026
[2026-08-25 19:18:43,452.452 INFO    ] ================================================
[2026-08-25 19:18:44,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:18:44
[2026-08-25 19:18:44,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:18:44,888.888 INFO    ] Initializing speech engine...
[2026-08-25 19:18:44,902.902 INFO    ] 2026-08-25 19:18:44
[2026-08-25 19:18:45,193.193 INFO    ] 2026-08-25 19:18:45
[2026-08-25 19:18:45,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:18:45,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:18:45,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:18:45,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:18:45,575.575 INFO    ] time= 25/08/2026 19:18:45
[2026-08-25 19:18:45,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:18:45,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:18:45,705.705 INFO    ] No existing commands found in stream
[2026-08-25 19:18:50,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:18:50,721.721 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 19:18:52,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:18:52,639.639 INFO    ] Checking for system updates...
[2026-08-25 19:18:52,675.675 INFO    ] 200
[2026-08-25 19:18:52,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:52,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:18:52,732.732 INFO    ] No update needed
[2026-08-25 19:18:52,734.734 INFO    ] Checking for camera pi updates...
[2026-08-25 19:18:52,767.767 INFO    ] 200
[2026-08-25 19:18:52,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:18:52,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:18:52,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:18:52,868.868 INFO    ] No camera update needed
[2026-08-25 19:18:52,870.870 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:18:52,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:18:52,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:18:52,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:18:54,923.923 INFO    ] ================================================
[2026-08-25 19:18:54,942.942 INFO    ] Launching Daemon at Tue Aug 25 19:18:54 IST 2026
[2026-08-25 19:18:54,953.953 INFO    ] ================================================
[2026-08-25 19:18:55,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:18:55
[2026-08-25 19:18:56,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:18:56,398.398 INFO    ] Initializing speech engine...
[2026-08-25 19:18:56,413.413 INFO    ] 2026-08-25 19:18:56
[2026-08-25 19:18:56,702.702 INFO    ] 2026-08-25 19:18:56
[2026-08-25 19:18:56,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:18:56,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:18:56,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:18:57,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:18:57,125.125 INFO    ] time= 25/08/2026 19:18:57
[2026-08-25 19:18:57,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:18:57,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:18:57,223.223 INFO    ] No existing commands found in stream
[2026-08-25 19:19:02,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:19:02,258.258 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 19:19:03,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:19:03,504.504 INFO    ] Checking for system updates...
[2026-08-25 19:19:03,539.539 INFO    ] 200
[2026-08-25 19:19:03,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:03,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:19:03,620.620 INFO    ] No update needed
[2026-08-25 19:19:03,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 19:19:03,656.656 INFO    ] 200
[2026-08-25 19:19:03,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:03,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:19:03,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:19:03,748.748 INFO    ] No camera update needed
[2026-08-25 19:19:03,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:19:03,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:19:03,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:19:03,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:19:05,802.802 INFO    ] ================================================
[2026-08-25 19:19:05,818.818 INFO    ] Launching Daemon at Tue Aug 25 19:19:05 IST 2026
[2026-08-25 19:19:05,830.830 INFO    ] ================================================
[2026-08-25 19:19:06,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:19:06
[2026-08-25 19:19:07,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:19:07,377.377 INFO    ] Initializing speech engine...
[2026-08-25 19:19:07,389.389 INFO    ] 2026-08-25 19:19:07
[2026-08-25 19:19:07,673.673 INFO    ] 2026-08-25 19:19:07
[2026-08-25 19:19:07,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:19:07,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:19:07,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:19:08,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:19:08,203.203 INFO    ] time= 25/08/2026 19:19:08
[2026-08-25 19:19:08,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:19:08,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:19:08,376.376 INFO    ] No existing commands found in stream
[2026-08-25 19:19:13,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:19:13,411.411 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 19:19:14,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:19:14,205.205 INFO    ] Checking for system updates...
[2026-08-25 19:19:14,243.243 INFO    ] 200
[2026-08-25 19:19:14,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:14,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:19:14,311.311 INFO    ] No update needed
[2026-08-25 19:19:14,314.314 INFO    ] Checking for camera pi updates...
[2026-08-25 19:19:14,349.349 INFO    ] 200
[2026-08-25 19:19:14,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:14,396.396 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:19:14,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:19:14,544.544 INFO    ] No camera update needed
[2026-08-25 19:19:14,547.547 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:19:14,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:19:14,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:19:14,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:19:16,603.603 INFO    ] ================================================
[2026-08-25 19:19:16,618.618 INFO    ] Launching Daemon at Tue Aug 25 19:19:16 IST 2026
[2026-08-25 19:19:16,629.629 INFO    ] ================================================
[2026-08-25 19:19:17,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:19:17
[2026-08-25 19:19:17,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:19:18,034.034 INFO    ] Initializing speech engine...
[2026-08-25 19:19:18,043.043 INFO    ] 2026-08-25 19:19:18
[2026-08-25 19:19:18,337.337 INFO    ] 2026-08-25 19:19:18
[2026-08-25 19:19:18,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:19:18,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:19:18,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:19:18,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:19:18,754.754 INFO    ] time= 25/08/2026 19:19:18
[2026-08-25 19:19:18,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:19:18,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:19:18,846.846 INFO    ] No existing commands found in stream
[2026-08-25 19:19:23,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:19:23,874.874 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 19:19:24,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:19:24,527.527 INFO    ] Checking for system updates...
[2026-08-25 19:19:24,562.562 INFO    ] 200
[2026-08-25 19:19:24,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:24,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:19:24,619.619 INFO    ] No update needed
[2026-08-25 19:19:24,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 19:19:24,655.655 INFO    ] 200
[2026-08-25 19:19:24,657.657 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:24,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:19:24,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:19:24,754.754 INFO    ] No camera update needed
[2026-08-25 19:19:24,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:19:24,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:19:24,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:19:24,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:19:26,809.809 INFO    ] ================================================
[2026-08-25 19:19:26,825.825 INFO    ] Launching Daemon at Tue Aug 25 19:19:26 IST 2026
[2026-08-25 19:19:26,836.836 INFO    ] ================================================
[2026-08-25 19:19:27,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:19:27
[2026-08-25 19:19:28,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:19:28,507.507 INFO    ] Initializing speech engine...
[2026-08-25 19:19:28,518.518 INFO    ] 2026-08-25 19:19:28
[2026-08-25 19:19:28,830.830 INFO    ] 2026-08-25 19:19:28
[2026-08-25 19:19:28,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:19:29,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:19:29,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:19:30,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:19:30,440.440 INFO    ] time= 25/08/2026 19:19:30
[2026-08-25 19:19:30,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:19:30,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:19:30,643.643 INFO    ] No existing commands found in stream
[2026-08-25 19:19:35,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:19:35,677.677 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 19:19:37,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:19:37,229.229 INFO    ] Checking for system updates...
[2026-08-25 19:19:37,270.270 INFO    ] 200
[2026-08-25 19:19:37,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:37,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:19:37,328.328 INFO    ] No update needed
[2026-08-25 19:19:37,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 19:19:37,364.364 INFO    ] 200
[2026-08-25 19:19:37,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:37,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:19:37,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:19:37,472.472 INFO    ] No camera update needed
[2026-08-25 19:19:37,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:19:37,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:19:37,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:19:37,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:19:39,528.528 INFO    ] ================================================
[2026-08-25 19:19:39,543.543 INFO    ] Launching Daemon at Tue Aug 25 19:19:39 IST 2026
[2026-08-25 19:19:39,554.554 INFO    ] ================================================
[2026-08-25 19:19:40,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:19:40
[2026-08-25 19:19:40,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:19:41,205.205 INFO    ] Initializing speech engine...
[2026-08-25 19:19:41,219.219 INFO    ] 2026-08-25 19:19:41
[2026-08-25 19:19:41,533.533 INFO    ] 2026-08-25 19:19:41
[2026-08-25 19:19:41,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:19:41,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:19:41,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:19:42,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:19:42,038.038 INFO    ] time= 25/08/2026 19:19:42
[2026-08-25 19:19:42,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:19:42,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:19:42,195.195 INFO    ] No existing commands found in stream
[2026-08-25 19:19:47,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:19:47,220.220 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 19:19:48,887.887 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:19:48,889.889 INFO    ] Checking for system updates...
[2026-08-25 19:19:48,926.926 INFO    ] 200
[2026-08-25 19:19:48,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:48,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:19:48,983.983 INFO    ] No update needed
[2026-08-25 19:19:48,985.985 INFO    ] Checking for camera pi updates...
[2026-08-25 19:19:49,019.019 INFO    ] 200
[2026-08-25 19:19:49,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:19:49,065.065 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:19:49,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:19:49,117.117 INFO    ] No camera update needed
[2026-08-25 19:19:49,120.120 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:19:49,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:19:49,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:19:49,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:19:51,173.173 INFO    ] ================================================
[2026-08-25 19:19:51,188.188 INFO    ] Launching Daemon at Tue Aug 25 19:19:51 IST 2026
[2026-08-25 19:19:51,199.199 INFO    ] ================================================
[2026-08-25 19:19:51,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:19:51
[2026-08-25 19:19:52,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:19:52,601.601 INFO    ] Initializing speech engine...
[2026-08-25 19:19:52,608.608 INFO    ] 2026-08-25 19:19:52
[2026-08-25 19:19:52,905.905 INFO    ] 2026-08-25 19:19:52
[2026-08-25 19:19:52,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:19:53,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:19:53,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:19:53,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:19:53,325.325 INFO    ] time= 25/08/2026 19:19:53
[2026-08-25 19:19:53,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:19:53,338.338 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:19:53,415.415 INFO    ] No existing commands found in stream
[2026-08-25 19:19:58,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:19:58,433.433 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 19:20:00,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:20:00,517.517 INFO    ] Checking for system updates...
[2026-08-25 19:20:00,553.553 INFO    ] 200
[2026-08-25 19:20:00,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:00,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:20:00,611.611 INFO    ] No update needed
[2026-08-25 19:20:00,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 19:20:00,647.647 INFO    ] 200
[2026-08-25 19:20:00,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:00,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:20:00,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:20:00,745.745 INFO    ] No camera update needed
[2026-08-25 19:20:00,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:20:00,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:20:00,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:20:00,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:20:02,818.818 INFO    ] ================================================
[2026-08-25 19:20:02,836.836 INFO    ] Launching Daemon at Tue Aug 25 19:20:02 IST 2026
[2026-08-25 19:20:02,851.851 INFO    ] ================================================
[2026-08-25 19:20:03,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:20:03
[2026-08-25 19:20:04,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:20:04,436.436 INFO    ] Initializing speech engine...
[2026-08-25 19:20:04,448.448 INFO    ] 2026-08-25 19:20:04
[2026-08-25 19:20:04,713.713 INFO    ] 2026-08-25 19:20:04
[2026-08-25 19:20:04,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:20:04,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:20:05,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:20:05,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:20:05,269.269 INFO    ] time= 25/08/2026 19:20:05
[2026-08-25 19:20:05,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:20:05,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:20:05,420.420 INFO    ] No existing commands found in stream
[2026-08-25 19:20:10,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:20:10,438.438 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 19:20:12,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:20:12,698.698 INFO    ] Checking for system updates...
[2026-08-25 19:20:12,737.737 INFO    ] 200
[2026-08-25 19:20:12,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:12,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:20:12,795.795 INFO    ] No update needed
[2026-08-25 19:20:12,798.798 INFO    ] Checking for camera pi updates...
[2026-08-25 19:20:12,831.831 INFO    ] 200
[2026-08-25 19:20:12,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:12,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:20:12,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:20:12,923.923 INFO    ] No camera update needed
[2026-08-25 19:20:12,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:20:12,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:20:12,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:20:12,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:20:14,979.979 INFO    ] ================================================
[2026-08-25 19:20:14,994.994 INFO    ] Launching Daemon at Tue Aug 25 19:20:14 IST 2026
[2026-08-25 19:20:15,004.004 INFO    ] ================================================
[2026-08-25 19:20:15,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:20:15
[2026-08-25 19:20:16,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:20:16,437.437 INFO    ] Initializing speech engine...
[2026-08-25 19:20:16,447.447 INFO    ] 2026-08-25 19:20:16
[2026-08-25 19:20:16,705.705 INFO    ] 2026-08-25 19:20:16
[2026-08-25 19:20:16,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:20:16,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:20:16,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:20:17,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:20:17,168.168 INFO    ] time= 25/08/2026 19:20:17
[2026-08-25 19:20:17,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:20:17,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:20:17,370.370 INFO    ] No existing commands found in stream
[2026-08-25 19:20:22,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:20:22,403.403 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 19:20:26,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:20:26,730.730 INFO    ] Checking for system updates...
[2026-08-25 19:20:26,766.766 INFO    ] 200
[2026-08-25 19:20:26,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:26,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:20:26,823.823 INFO    ] No update needed
[2026-08-25 19:20:26,826.826 INFO    ] Checking for camera pi updates...
[2026-08-25 19:20:26,860.860 INFO    ] 200
[2026-08-25 19:20:26,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:26,904.904 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:20:26,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:20:26,950.950 INFO    ] No camera update needed
[2026-08-25 19:20:26,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:20:26,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:20:26,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:20:26,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:20:29,003.003 INFO    ] ================================================
[2026-08-25 19:20:29,018.018 INFO    ] Launching Daemon at Tue Aug 25 19:20:29 IST 2026
[2026-08-25 19:20:29,029.029 INFO    ] ================================================
[2026-08-25 19:20:29,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:20:29
[2026-08-25 19:20:30,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:20:30,527.527 INFO    ] Initializing speech engine...
[2026-08-25 19:20:30,539.539 INFO    ] 2026-08-25 19:20:30
[2026-08-25 19:20:30,813.813 INFO    ] 2026-08-25 19:20:30
[2026-08-25 19:20:30,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:20:31,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:20:31,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:20:31,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:20:31,347.347 INFO    ] time= 25/08/2026 19:20:31
[2026-08-25 19:20:31,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:20:31,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:20:31,485.485 INFO    ] No existing commands found in stream
[2026-08-25 19:20:36,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:20:36,512.512 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 19:20:40,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:20:40,792.792 INFO    ] Checking for system updates...
[2026-08-25 19:20:40,832.832 INFO    ] 200
[2026-08-25 19:20:40,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:40,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:20:40,891.891 INFO    ] No update needed
[2026-08-25 19:20:40,893.893 INFO    ] Checking for camera pi updates...
[2026-08-25 19:20:40,929.929 INFO    ] 200
[2026-08-25 19:20:40,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:40,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:20:41,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:20:41,025.025 INFO    ] No camera update needed
[2026-08-25 19:20:41,027.027 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:20:41,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:20:41,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:20:41,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:20:43,081.081 INFO    ] ================================================
[2026-08-25 19:20:43,096.096 INFO    ] Launching Daemon at Tue Aug 25 19:20:43 IST 2026
[2026-08-25 19:20:43,107.107 INFO    ] ================================================
[2026-08-25 19:20:43,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:20:43
[2026-08-25 19:20:44,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:20:44,523.523 INFO    ] Initializing speech engine...
[2026-08-25 19:20:44,533.533 INFO    ] 2026-08-25 19:20:44
[2026-08-25 19:20:44,778.778 INFO    ] 2026-08-25 19:20:44
[2026-08-25 19:20:44,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:20:45,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:20:45,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:20:45,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:20:45,271.271 INFO    ] time= 25/08/2026 19:20:45
[2026-08-25 19:20:45,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:20:45,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:20:45,479.479 INFO    ] No existing commands found in stream
[2026-08-25 19:20:50,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:20:50,498.498 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 19:20:52,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:20:52,592.592 INFO    ] Checking for system updates...
[2026-08-25 19:20:52,627.627 INFO    ] 200
[2026-08-25 19:20:52,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:52,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:20:52,688.688 INFO    ] No update needed
[2026-08-25 19:20:52,691.691 INFO    ] Checking for camera pi updates...
[2026-08-25 19:20:52,725.725 INFO    ] 200
[2026-08-25 19:20:52,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:20:52,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:20:52,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:20:52,845.845 INFO    ] No camera update needed
[2026-08-25 19:20:52,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:20:52,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:20:52,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:20:52,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:20:54,901.901 INFO    ] ================================================
[2026-08-25 19:20:54,915.915 INFO    ] Launching Daemon at Tue Aug 25 19:20:54 IST 2026
[2026-08-25 19:20:54,926.926 INFO    ] ================================================
[2026-08-25 19:20:55,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:20:55
[2026-08-25 19:20:56,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:20:56,349.349 INFO    ] Initializing speech engine...
[2026-08-25 19:20:56,355.355 INFO    ] 2026-08-25 19:20:56
[2026-08-25 19:20:56,644.644 INFO    ] 2026-08-25 19:20:56
[2026-08-25 19:20:56,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:20:56,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:20:56,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:20:57,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:20:57,056.056 INFO    ] time= 25/08/2026 19:20:57
[2026-08-25 19:20:57,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:20:57,100.100 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:20:57,253.253 INFO    ] No existing commands found in stream
[2026-08-25 19:21:02,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:21:02,288.288 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 19:21:05,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:21:05,488.488 INFO    ] Checking for system updates...
[2026-08-25 19:21:05,525.525 INFO    ] 200
[2026-08-25 19:21:05,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:05,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:21:05,587.587 INFO    ] No update needed
[2026-08-25 19:21:05,589.589 INFO    ] Checking for camera pi updates...
[2026-08-25 19:21:05,626.626 INFO    ] 200
[2026-08-25 19:21:05,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:05,668.668 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:21:05,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:21:05,716.716 INFO    ] No camera update needed
[2026-08-25 19:21:05,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:21:05,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:21:05,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:21:05,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:21:07,771.771 INFO    ] ================================================
[2026-08-25 19:21:07,785.785 INFO    ] Launching Daemon at Tue Aug 25 19:21:07 IST 2026
[2026-08-25 19:21:07,796.796 INFO    ] ================================================
[2026-08-25 19:21:08,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:21:08
[2026-08-25 19:21:08,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:21:09,219.219 INFO    ] Initializing speech engine...
[2026-08-25 19:21:09,228.228 INFO    ] 2026-08-25 19:21:09
[2026-08-25 19:21:09,470.470 INFO    ] 2026-08-25 19:21:09
[2026-08-25 19:21:09,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:21:09,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:21:09,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:21:09,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:21:09,967.967 INFO    ] time= 25/08/2026 19:21:09
[2026-08-25 19:21:10,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:21:10,033.033 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:21:10,173.173 INFO    ] No existing commands found in stream
[2026-08-25 19:21:15,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:21:15,194.194 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 19:21:17,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:21:17,689.689 INFO    ] Checking for system updates...
[2026-08-25 19:21:17,728.728 INFO    ] 200
[2026-08-25 19:21:17,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:17,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:21:17,786.786 INFO    ] No update needed
[2026-08-25 19:21:17,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 19:21:17,821.821 INFO    ] 200
[2026-08-25 19:21:17,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:17,869.869 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:21:18,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:21:18,018.018 INFO    ] No camera update needed
[2026-08-25 19:21:18,020.020 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:21:18,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:21:18,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:21:18,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:21:20,074.074 INFO    ] ================================================
[2026-08-25 19:21:20,090.090 INFO    ] Launching Daemon at Tue Aug 25 19:21:20 IST 2026
[2026-08-25 19:21:20,100.100 INFO    ] ================================================
[2026-08-25 19:21:20,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:21:20
[2026-08-25 19:21:21,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:21:21,728.728 INFO    ] Initializing speech engine...
[2026-08-25 19:21:21,741.741 INFO    ] 2026-08-25 19:21:21
[2026-08-25 19:21:22,005.005 INFO    ] 2026-08-25 19:21:21
[2026-08-25 19:21:22,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:21:22,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:21:22,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:21:22,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:21:22,507.507 INFO    ] time= 25/08/2026 19:21:22
[2026-08-25 19:21:22,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:21:22,577.577 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:21:22,723.723 INFO    ] No existing commands found in stream
[2026-08-25 19:21:27,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:21:27,741.741 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 19:21:28,666.666 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:21:28,669.669 INFO    ] Checking for system updates...
[2026-08-25 19:21:28,705.705 INFO    ] 200
[2026-08-25 19:21:28,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:28,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:21:28,761.761 INFO    ] No update needed
[2026-08-25 19:21:28,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 19:21:28,797.797 INFO    ] 200
[2026-08-25 19:21:28,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:28,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:21:28,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:21:28,885.885 INFO    ] No camera update needed
[2026-08-25 19:21:28,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:21:28,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:21:28,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:21:28,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:21:30,940.940 INFO    ] ================================================
[2026-08-25 19:21:30,955.955 INFO    ] Launching Daemon at Tue Aug 25 19:21:30 IST 2026
[2026-08-25 19:21:30,966.966 INFO    ] ================================================
[2026-08-25 19:21:31,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:21:31
[2026-08-25 19:21:32,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:21:32,467.467 INFO    ] Initializing speech engine...
[2026-08-25 19:21:32,476.476 INFO    ] 2026-08-25 19:21:32
[2026-08-25 19:21:32,725.725 INFO    ] 2026-08-25 19:21:32
[2026-08-25 19:21:32,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:21:32,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:21:32,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:21:33,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:21:33,160.160 INFO    ] time= 25/08/2026 19:21:33
[2026-08-25 19:21:33,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:21:33,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:21:33,439.439 INFO    ] No existing commands found in stream
[2026-08-25 19:21:38,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:21:38,461.461 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 19:21:41,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:21:41,500.500 INFO    ] Checking for system updates...
[2026-08-25 19:21:41,536.536 INFO    ] 200
[2026-08-25 19:21:41,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:41,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:21:41,594.594 INFO    ] No update needed
[2026-08-25 19:21:41,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 19:21:41,633.633 INFO    ] 200
[2026-08-25 19:21:41,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:41,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:21:41,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:21:41,732.732 INFO    ] No camera update needed
[2026-08-25 19:21:41,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:21:41,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:21:41,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:21:41,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:21:43,786.786 INFO    ] ================================================
[2026-08-25 19:21:43,801.801 INFO    ] Launching Daemon at Tue Aug 25 19:21:43 IST 2026
[2026-08-25 19:21:43,811.811 INFO    ] ================================================
[2026-08-25 19:21:44,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:21:44
[2026-08-25 19:21:44,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:21:45,238.238 INFO    ] Initializing speech engine...
[2026-08-25 19:21:45,246.246 INFO    ] 2026-08-25 19:21:45
[2026-08-25 19:21:45,538.538 INFO    ] 2026-08-25 19:21:45
[2026-08-25 19:21:45,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:21:45,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:21:45,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:21:45,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:21:45,953.953 INFO    ] time= 25/08/2026 19:21:45
[2026-08-25 19:21:45,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:21:45,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:21:46,054.054 INFO    ] No existing commands found in stream
[2026-08-25 19:21:51,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:21:51,087.087 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 19:21:53,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:21:53,565.565 INFO    ] Checking for system updates...
[2026-08-25 19:21:53,613.613 INFO    ] 200
[2026-08-25 19:21:53,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:53,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:21:53,708.708 INFO    ] No update needed
[2026-08-25 19:21:53,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 19:21:53,762.762 INFO    ] 200
[2026-08-25 19:21:53,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:21:53,809.809 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:21:53,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:21:53,859.859 INFO    ] No camera update needed
[2026-08-25 19:21:53,861.861 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:21:53,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:21:53,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:21:53,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:21:55,913.913 INFO    ] ================================================
[2026-08-25 19:21:55,928.928 INFO    ] Launching Daemon at Tue Aug 25 19:21:55 IST 2026
[2026-08-25 19:21:55,939.939 INFO    ] ================================================
[2026-08-25 19:21:56,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:21:56
[2026-08-25 19:21:57,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:21:57,468.468 INFO    ] Initializing speech engine...
[2026-08-25 19:21:57,474.474 INFO    ] 2026-08-25 19:21:57
[2026-08-25 19:21:57,770.770 INFO    ] 2026-08-25 19:21:57
[2026-08-25 19:21:57,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:21:58,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:21:58,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:21:58,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:21:58,194.194 INFO    ] time= 25/08/2026 19:21:58
[2026-08-25 19:21:58,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:21:58,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:21:58,392.392 INFO    ] No existing commands found in stream
[2026-08-25 19:22:03,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:22:03,421.421 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 19:22:04,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:22:04,791.791 INFO    ] Checking for system updates...
[2026-08-25 19:22:04,828.828 INFO    ] 200
[2026-08-25 19:22:04,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:04,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:22:04,888.888 INFO    ] No update needed
[2026-08-25 19:22:04,891.891 INFO    ] Checking for camera pi updates...
[2026-08-25 19:22:04,937.937 INFO    ] 200
[2026-08-25 19:22:04,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:04,983.983 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:22:05,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:22:05,043.043 INFO    ] No camera update needed
[2026-08-25 19:22:05,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:22:05,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:22:05,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:22:05,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:22:07,100.100 INFO    ] ================================================
[2026-08-25 19:22:07,115.115 INFO    ] Launching Daemon at Tue Aug 25 19:22:07 IST 2026
[2026-08-25 19:22:07,125.125 INFO    ] ================================================
[2026-08-25 19:22:07,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:22:07
[2026-08-25 19:22:08,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:22:08,696.696 INFO    ] Initializing speech engine...
[2026-08-25 19:22:08,703.703 INFO    ] 2026-08-25 19:22:08
[2026-08-25 19:22:08,976.976 INFO    ] 2026-08-25 19:22:08
[2026-08-25 19:22:09,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:22:09,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:22:09,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:22:09,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:22:09,479.479 INFO    ] time= 25/08/2026 19:22:09
[2026-08-25 19:22:09,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:22:09,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:22:09,699.699 INFO    ] No existing commands found in stream
[2026-08-25 19:22:14,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:22:14,718.718 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 19:22:18,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:22:18,883.883 INFO    ] Checking for system updates...
[2026-08-25 19:22:18,921.921 INFO    ] 200
[2026-08-25 19:22:18,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:18,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:22:18,983.983 INFO    ] No update needed
[2026-08-25 19:22:18,986.986 INFO    ] Checking for camera pi updates...
[2026-08-25 19:22:19,019.019 INFO    ] 200
[2026-08-25 19:22:19,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:19,065.065 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:22:19,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:22:19,116.116 INFO    ] No camera update needed
[2026-08-25 19:22:19,118.118 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:22:19,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:22:19,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:22:19,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:22:21,172.172 INFO    ] ================================================
[2026-08-25 19:22:21,187.187 INFO    ] Launching Daemon at Tue Aug 25 19:22:21 IST 2026
[2026-08-25 19:22:21,197.197 INFO    ] ================================================
[2026-08-25 19:22:21,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:22:21
[2026-08-25 19:22:22,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:22:22,620.620 INFO    ] Initializing speech engine...
[2026-08-25 19:22:22,643.643 INFO    ] 2026-08-25 19:22:22
[2026-08-25 19:22:22,897.897 INFO    ] 2026-08-25 19:22:22
[2026-08-25 19:22:22,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:22:23,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:22:23,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:22:23,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:22:23,401.401 INFO    ] time= 25/08/2026 19:22:23
[2026-08-25 19:22:23,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:22:23,479.479 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:22:23,618.618 INFO    ] No existing commands found in stream
[2026-08-25 19:22:28,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:22:28,642.642 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 19:22:30,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:22:30,117.117 INFO    ] Checking for system updates...
[2026-08-25 19:22:30,153.153 INFO    ] 200
[2026-08-25 19:22:30,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:30,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:22:30,212.212 INFO    ] No update needed
[2026-08-25 19:22:30,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 19:22:30,251.251 INFO    ] 200
[2026-08-25 19:22:30,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:30,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:22:30,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:22:30,349.349 INFO    ] No camera update needed
[2026-08-25 19:22:30,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:22:30,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:22:30,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:22:30,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:22:32,406.406 INFO    ] ================================================
[2026-08-25 19:22:32,423.423 INFO    ] Launching Daemon at Tue Aug 25 19:22:32 IST 2026
[2026-08-25 19:22:32,435.435 INFO    ] ================================================
[2026-08-25 19:22:33,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:22:33
[2026-08-25 19:22:33,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:22:34,068.068 INFO    ] Initializing speech engine...
[2026-08-25 19:22:34,079.079 INFO    ] 2026-08-25 19:22:34
[2026-08-25 19:22:34,330.330 INFO    ] 2026-08-25 19:22:34
[2026-08-25 19:22:34,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:22:34,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:22:34,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:22:34,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:22:34,814.814 INFO    ] time= 25/08/2026 19:22:34
[2026-08-25 19:22:34,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:22:34,911.911 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:22:35,026.026 INFO    ] No existing commands found in stream
[2026-08-25 19:22:40,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:22:40,051.051 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 19:22:42,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:22:42,734.734 INFO    ] Checking for system updates...
[2026-08-25 19:22:42,769.769 INFO    ] 200
[2026-08-25 19:22:42,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:42,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:22:42,826.826 INFO    ] No update needed
[2026-08-25 19:22:42,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 19:22:42,863.863 INFO    ] 200
[2026-08-25 19:22:42,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:42,906.906 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:22:42,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:22:42,964.964 INFO    ] No camera update needed
[2026-08-25 19:22:42,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:22:42,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:22:42,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:22:42,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:22:45,020.020 INFO    ] ================================================
[2026-08-25 19:22:45,035.035 INFO    ] Launching Daemon at Tue Aug 25 19:22:45 IST 2026
[2026-08-25 19:22:45,046.046 INFO    ] ================================================
[2026-08-25 19:22:45,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:22:45
[2026-08-25 19:22:46,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:22:46,478.478 INFO    ] Initializing speech engine...
[2026-08-25 19:22:46,486.486 INFO    ] 2026-08-25 19:22:46
[2026-08-25 19:22:46,782.782 INFO    ] 2026-08-25 19:22:46
[2026-08-25 19:22:46,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:22:47,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:22:47,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:22:47,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:22:47,202.202 INFO    ] time= 25/08/2026 19:22:47
[2026-08-25 19:22:47,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:22:47,257.257 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:22:47,400.400 INFO    ] No existing commands found in stream
[2026-08-25 19:22:52,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:22:52,433.433 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 19:22:56,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:22:56,342.342 INFO    ] Checking for system updates...
[2026-08-25 19:22:56,382.382 INFO    ] 200
[2026-08-25 19:22:56,384.384 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:56,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:22:56,445.445 INFO    ] No update needed
[2026-08-25 19:22:56,448.448 INFO    ] Checking for camera pi updates...
[2026-08-25 19:22:56,485.485 INFO    ] 200
[2026-08-25 19:22:56,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:22:56,532.532 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:22:56,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:22:56,596.596 INFO    ] No camera update needed
[2026-08-25 19:22:56,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:22:56,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:22:56,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:22:56,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:22:58,651.651 INFO    ] ================================================
[2026-08-25 19:22:58,666.666 INFO    ] Launching Daemon at Tue Aug 25 19:22:58 IST 2026
[2026-08-25 19:22:58,677.677 INFO    ] ================================================
[2026-08-25 19:22:59,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:22:59
[2026-08-25 19:22:59,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:23:00,117.117 INFO    ] Initializing speech engine...
[2026-08-25 19:23:00,128.128 INFO    ] 2026-08-25 19:23:00
[2026-08-25 19:23:00,378.378 INFO    ] 2026-08-25 19:23:00
[2026-08-25 19:23:00,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:23:00,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:23:00,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:23:00,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:23:00,867.867 INFO    ] time= 25/08/2026 19:23:00
[2026-08-25 19:23:00,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:23:00,957.957 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:23:01,104.104 INFO    ] No existing commands found in stream
[2026-08-25 19:23:06,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:23:06,123.123 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 19:23:06,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:23:06,880.880 INFO    ] Checking for system updates...
[2026-08-25 19:23:06,923.923 INFO    ] 200
[2026-08-25 19:23:06,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:06,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:06,994.994 INFO    ] No update needed
[2026-08-25 19:23:06,998.998 INFO    ] Checking for camera pi updates...
[2026-08-25 19:23:07,036.036 INFO    ] 200
[2026-08-25 19:23:07,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:07,078.078 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:23:07,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:07,137.137 INFO    ] No camera update needed
[2026-08-25 19:23:07,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:23:07,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:23:07,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:23:07,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:23:09,193.193 INFO    ] ================================================
[2026-08-25 19:23:09,209.209 INFO    ] Launching Daemon at Tue Aug 25 19:23:09 IST 2026
[2026-08-25 19:23:09,223.223 INFO    ] ================================================
[2026-08-25 19:23:09,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:23:09
[2026-08-25 19:23:10,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:23:10,654.654 INFO    ] Initializing speech engine...
[2026-08-25 19:23:10,662.662 INFO    ] 2026-08-25 19:23:10
[2026-08-25 19:23:10,937.937 INFO    ] 2026-08-25 19:23:10
[2026-08-25 19:23:10,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:23:11,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:23:11,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:23:11,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:23:11,318.318 INFO    ] time= 25/08/2026 19:23:11
[2026-08-25 19:23:11,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:23:11,386.386 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:23:11,513.513 INFO    ] No existing commands found in stream
[2026-08-25 19:23:16,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:23:16,528.528 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 19:23:20,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:23:20,163.163 INFO    ] Checking for system updates...
[2026-08-25 19:23:20,200.200 INFO    ] 200
[2026-08-25 19:23:20,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:20,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:20,268.268 INFO    ] No update needed
[2026-08-25 19:23:20,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 19:23:20,315.315 INFO    ] 200
[2026-08-25 19:23:20,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:20,363.363 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:23:20,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:20,512.512 INFO    ] No camera update needed
[2026-08-25 19:23:20,514.514 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:23:20,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:23:20,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:23:20,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:23:22,570.570 INFO    ] ================================================
[2026-08-25 19:23:22,586.586 INFO    ] Launching Daemon at Tue Aug 25 19:23:22 IST 2026
[2026-08-25 19:23:22,597.597 INFO    ] ================================================
[2026-08-25 19:23:23,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:23:23
[2026-08-25 19:23:23,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:23:24,234.234 INFO    ] Initializing speech engine...
[2026-08-25 19:23:24,247.247 INFO    ] 2026-08-25 19:23:24
[2026-08-25 19:23:24,562.562 INFO    ] 2026-08-25 19:23:24
[2026-08-25 19:23:24,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:23:24,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:23:24,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:23:25,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:23:25,106.106 INFO    ] time= 25/08/2026 19:23:25
[2026-08-25 19:23:25,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:23:25,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:23:25,245.245 INFO    ] No existing commands found in stream
[2026-08-25 19:23:30,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:23:30,268.268 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 19:23:33,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:23:33,249.249 INFO    ] Checking for system updates...
[2026-08-25 19:23:33,285.285 INFO    ] 200
[2026-08-25 19:23:33,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:33,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:33,352.352 INFO    ] No update needed
[2026-08-25 19:23:33,355.355 INFO    ] Checking for camera pi updates...
[2026-08-25 19:23:33,389.389 INFO    ] 200
[2026-08-25 19:23:33,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:33,433.433 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:23:33,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:33,480.480 INFO    ] No camera update needed
[2026-08-25 19:23:33,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:23:33,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:23:33,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:23:33,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:23:35,538.538 INFO    ] ================================================
[2026-08-25 19:23:35,554.554 INFO    ] Launching Daemon at Tue Aug 25 19:23:35 IST 2026
[2026-08-25 19:23:35,565.565 INFO    ] ================================================
[2026-08-25 19:23:36,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:23:36
[2026-08-25 19:23:36,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:23:36,975.975 INFO    ] Initializing speech engine...
[2026-08-25 19:23:36,998.998 INFO    ] 2026-08-25 19:23:36
[2026-08-25 19:23:37,249.249 INFO    ] 2026-08-25 19:23:37
[2026-08-25 19:23:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:23:37,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:23:37,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:23:37,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:23:37,674.674 INFO    ] time= 25/08/2026 19:23:37
[2026-08-25 19:23:37,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:23:37,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:23:37,818.818 INFO    ] No existing commands found in stream
[2026-08-25 19:23:42,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:23:42,842.842 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 19:23:43,493.493 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:23:43,496.496 INFO    ] Checking for system updates...
[2026-08-25 19:23:43,531.531 INFO    ] 200
[2026-08-25 19:23:43,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:43,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:23:43,592.592 INFO    ] No update needed
[2026-08-25 19:23:43,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 19:23:43,631.631 INFO    ] 200
[2026-08-25 19:23:43,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:43,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:23:43,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:23:43,726.726 INFO    ] No camera update needed
[2026-08-25 19:23:43,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:23:43,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:23:43,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:23:43,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:23:45,783.783 INFO    ] ================================================
[2026-08-25 19:23:45,798.798 INFO    ] Launching Daemon at Tue Aug 25 19:23:45 IST 2026
[2026-08-25 19:23:45,810.810 INFO    ] ================================================
[2026-08-25 19:23:46,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:23:46
[2026-08-25 19:23:46,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:23:47,219.219 INFO    ] Initializing speech engine...
[2026-08-25 19:23:47,235.235 INFO    ] 2026-08-25 19:23:47
[2026-08-25 19:23:47,510.510 INFO    ] 2026-08-25 19:23:47
[2026-08-25 19:23:47,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:23:47,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:23:47,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:23:47,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:23:47,936.936 INFO    ] time= 25/08/2026 19:23:47
[2026-08-25 19:23:47,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:23:47,948.948 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:23:48,030.030 INFO    ] No existing commands found in stream
[2026-08-25 19:23:53,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:23:53,058.058 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-08-25 19:23:56,261.261 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:23:56,264.264 INFO    ] Checking for system updates...
[2026-08-25 19:23:56,301.301 INFO    ] 200
[2026-08-25 19:23:56,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:56,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:56,358.358 INFO    ] No update needed
[2026-08-25 19:23:56,360.360 INFO    ] Checking for camera pi updates...
[2026-08-25 19:23:56,398.398 INFO    ] 200
[2026-08-25 19:23:56,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:23:56,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:23:56,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:23:56,501.501 INFO    ] No camera update needed
[2026-08-25 19:23:56,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:23:56,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:23:56,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:23:56,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:23:58,560.560 INFO    ] ================================================
[2026-08-25 19:23:58,575.575 INFO    ] Launching Daemon at Tue Aug 25 19:23:58 IST 2026
[2026-08-25 19:23:58,587.587 INFO    ] ================================================
[2026-08-25 19:23:59,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:23:59
[2026-08-25 19:23:59,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:24:00,251.251 INFO    ] Initializing speech engine...
[2026-08-25 19:24:00,264.264 INFO    ] 2026-08-25 19:24:00
[2026-08-25 19:24:00,547.547 INFO    ] 2026-08-25 19:24:00
[2026-08-25 19:24:00,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:24:00,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:24:00,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:24:01,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:24:01,101.101 INFO    ] time= 25/08/2026 19:24:01
[2026-08-25 19:24:01,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:24:01,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:24:01,218.218 INFO    ] No existing commands found in stream
[2026-08-25 19:24:06,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:24:06,231.231 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-08-25 19:24:07,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:24:07,562.562 INFO    ] Checking for system updates...
[2026-08-25 19:24:07,597.597 INFO    ] 200
[2026-08-25 19:24:07,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:07,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:24:07,654.654 INFO    ] No update needed
[2026-08-25 19:24:07,656.656 INFO    ] Checking for camera pi updates...
[2026-08-25 19:24:07,690.690 INFO    ] 200
[2026-08-25 19:24:07,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:07,733.733 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:24:07,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:24:07,782.782 INFO    ] No camera update needed
[2026-08-25 19:24:07,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:24:07,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:24:07,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:24:07,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:24:09,840.840 INFO    ] ================================================
[2026-08-25 19:24:09,856.856 INFO    ] Launching Daemon at Tue Aug 25 19:24:09 IST 2026
[2026-08-25 19:24:09,867.867 INFO    ] ================================================
[2026-08-25 19:24:10,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:24:10
[2026-08-25 19:24:11,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:24:11,312.312 INFO    ] Initializing speech engine...
[2026-08-25 19:24:11,321.321 INFO    ] 2026-08-25 19:24:11
[2026-08-25 19:24:11,591.591 INFO    ] 2026-08-25 19:24:11
[2026-08-25 19:24:11,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:24:11,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:24:11,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:24:12,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:24:12,119.119 INFO    ] time= 25/08/2026 19:24:12
[2026-08-25 19:24:12,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:24:12,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:24:12,278.278 INFO    ] No existing commands found in stream
[2026-08-25 19:24:17,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:24:17,303.303 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 19:24:21,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:24:21,509.509 INFO    ] Checking for system updates...
[2026-08-25 19:24:21,546.546 INFO    ] 200
[2026-08-25 19:24:21,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:21,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:21,612.612 INFO    ] No update needed
[2026-08-25 19:24:21,614.614 INFO    ] Checking for camera pi updates...
[2026-08-25 19:24:21,652.652 INFO    ] 200
[2026-08-25 19:24:21,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:21,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:24:21,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:21,757.757 INFO    ] No camera update needed
[2026-08-25 19:24:21,760.760 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:24:21,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:24:21,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:24:21,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:24:23,816.816 INFO    ] ================================================
[2026-08-25 19:24:23,831.831 INFO    ] Launching Daemon at Tue Aug 25 19:24:23 IST 2026
[2026-08-25 19:24:23,843.843 INFO    ] ================================================
[2026-08-25 19:24:24,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:24:24
[2026-08-25 19:24:25,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:24:25,436.436 INFO    ] Initializing speech engine...
[2026-08-25 19:24:25,445.445 INFO    ] 2026-08-25 19:24:25
[2026-08-25 19:24:25,733.733 INFO    ] 2026-08-25 19:24:25
[2026-08-25 19:24:25,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:24:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:24:26,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:24:26,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:24:26,273.273 INFO    ] time= 25/08/2026 19:24:26
[2026-08-25 19:24:26,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:24:26,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:24:26,439.439 INFO    ] No existing commands found in stream
[2026-08-25 19:24:31,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:24:31,456.456 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 19:24:34,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:24:34,639.639 INFO    ] Checking for system updates...
[2026-08-25 19:24:34,676.676 INFO    ] 200
[2026-08-25 19:24:34,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:34,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:34,740.740 INFO    ] No update needed
[2026-08-25 19:24:34,742.742 INFO    ] Checking for camera pi updates...
[2026-08-25 19:24:34,780.780 INFO    ] 200
[2026-08-25 19:24:34,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:34,828.828 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:24:34,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:34,886.886 INFO    ] No camera update needed
[2026-08-25 19:24:34,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:24:34,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:24:34,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:24:34,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:24:36,942.942 INFO    ] ================================================
[2026-08-25 19:24:36,958.958 INFO    ] Launching Daemon at Tue Aug 25 19:24:36 IST 2026
[2026-08-25 19:24:36,968.968 INFO    ] ================================================
[2026-08-25 19:24:37,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:24:37
[2026-08-25 19:24:38,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:24:38,569.569 INFO    ] Initializing speech engine...
[2026-08-25 19:24:38,577.577 INFO    ] 2026-08-25 19:24:38
[2026-08-25 19:24:38,854.854 INFO    ] 2026-08-25 19:24:38
[2026-08-25 19:24:38,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:24:39,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:24:39,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:24:39,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:24:39,412.412 INFO    ] time= 25/08/2026 19:24:39
[2026-08-25 19:24:39,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:24:39,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:24:39,572.572 INFO    ] No existing commands found in stream
[2026-08-25 19:24:44,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:24:44,596.596 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 19:24:47,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:24:47,198.198 INFO    ] Checking for system updates...
[2026-08-25 19:24:47,234.234 INFO    ] 200
[2026-08-25 19:24:47,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:47,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:47,292.292 INFO    ] No update needed
[2026-08-25 19:24:47,295.295 INFO    ] Checking for camera pi updates...
[2026-08-25 19:24:47,329.329 INFO    ] 200
[2026-08-25 19:24:47,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:47,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:24:47,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:47,429.429 INFO    ] No camera update needed
[2026-08-25 19:24:47,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:24:47,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:24:47,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:24:47,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:24:49,485.485 INFO    ] ================================================
[2026-08-25 19:24:49,500.500 INFO    ] Launching Daemon at Tue Aug 25 19:24:49 IST 2026
[2026-08-25 19:24:49,510.510 INFO    ] ================================================
[2026-08-25 19:24:50,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:24:50
[2026-08-25 19:24:50,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:24:50,933.933 INFO    ] Initializing speech engine...
[2026-08-25 19:24:50,948.948 INFO    ] 2026-08-25 19:24:50
[2026-08-25 19:24:51,216.216 INFO    ] 2026-08-25 19:24:51
[2026-08-25 19:24:51,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:24:51,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:24:51,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:24:51,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:24:51,629.629 INFO    ] time= 25/08/2026 19:24:51
[2026-08-25 19:24:51,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:24:51,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:24:51,714.714 INFO    ] No existing commands found in stream
[2026-08-25 19:24:56,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:24:56,731.731 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 19:24:57,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:24:57,697.697 INFO    ] Checking for system updates...
[2026-08-25 19:24:57,733.733 INFO    ] 200
[2026-08-25 19:24:57,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:57,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:57,791.791 INFO    ] No update needed
[2026-08-25 19:24:57,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 19:24:57,828.828 INFO    ] 200
[2026-08-25 19:24:57,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:24:57,872.872 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:24:57,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:24:57,928.928 INFO    ] No camera update needed
[2026-08-25 19:24:57,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:24:57,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:24:57,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:24:57,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:24:59,985.985 INFO    ] ================================================
[2026-08-25 19:25:00,000.000 INFO    ] Launching Daemon at Tue Aug 25 19:24:59 IST 2026
[2026-08-25 19:25:00,011.011 INFO    ] ================================================
[2026-08-25 19:25:00,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:25:00
[2026-08-25 19:25:01,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:25:02,024.024 INFO    ] Initializing speech engine...
[2026-08-25 19:25:02,031.031 INFO    ] 2026-08-25 19:25:02
[2026-08-25 19:25:02,474.474 INFO    ] 2026-08-25 19:25:02
[2026-08-25 19:25:02,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:25:02,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:25:02,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:25:02,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:25:03,015.015 INFO    ] time= 25/08/2026 19:25:02
[2026-08-25 19:25:03,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:25:03,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:25:03,246.246 INFO    ] No existing commands found in stream
[2026-08-25 19:25:08,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:25:08,265.265 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 19:25:12,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:25:12,183.183 INFO    ] Checking for system updates...
[2026-08-25 19:25:12,218.218 INFO    ] 200
[2026-08-25 19:25:12,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:12,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:25:12,275.275 INFO    ] No update needed
[2026-08-25 19:25:12,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 19:25:12,311.311 INFO    ] 200
[2026-08-25 19:25:12,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:12,358.358 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:25:12,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:25:12,410.410 INFO    ] No camera update needed
[2026-08-25 19:25:12,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:25:12,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:25:12,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:25:12,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:25:14,465.465 INFO    ] ================================================
[2026-08-25 19:25:14,480.480 INFO    ] Launching Daemon at Tue Aug 25 19:25:14 IST 2026
[2026-08-25 19:25:14,491.491 INFO    ] ================================================
[2026-08-25 19:25:15,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:25:15
[2026-08-25 19:25:15,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:25:15,936.936 INFO    ] Initializing speech engine...
[2026-08-25 19:25:15,947.947 INFO    ] 2026-08-25 19:25:15
[2026-08-25 19:25:16,207.207 INFO    ] 2026-08-25 19:25:16
[2026-08-25 19:25:16,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:25:16,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:25:16,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:25:16,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:25:16,741.741 INFO    ] time= 25/08/2026 19:25:16
[2026-08-25 19:25:16,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:25:16,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:25:16,896.896 INFO    ] No existing commands found in stream
[2026-08-25 19:25:21,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:25:21,914.914 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 19:25:25,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:25:25,148.148 INFO    ] Checking for system updates...
[2026-08-25 19:25:25,183.183 INFO    ] 200
[2026-08-25 19:25:25,186.186 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:25,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:25:25,241.241 INFO    ] No update needed
[2026-08-25 19:25:25,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 19:25:25,276.276 INFO    ] 200
[2026-08-25 19:25:25,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:25,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:25:25,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:25:25,469.469 INFO    ] No camera update needed
[2026-08-25 19:25:25,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:25:25,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:25:25,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:25:25,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:25:27,525.525 INFO    ] ================================================
[2026-08-25 19:25:27,540.540 INFO    ] Launching Daemon at Tue Aug 25 19:25:27 IST 2026
[2026-08-25 19:25:27,551.551 INFO    ] ================================================
[2026-08-25 19:25:28,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:25:28
[2026-08-25 19:25:28,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:25:29,100.100 INFO    ] Initializing speech engine...
[2026-08-25 19:25:29,121.121 INFO    ] 2026-08-25 19:25:29
[2026-08-25 19:25:29,376.376 INFO    ] 2026-08-25 19:25:29
[2026-08-25 19:25:29,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:25:29,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:25:29,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:25:29,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:25:29,886.886 INFO    ] time= 25/08/2026 19:25:29
[2026-08-25 19:25:29,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:25:29,940.940 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:25:30,085.085 INFO    ] No existing commands found in stream
[2026-08-25 19:25:35,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:25:35,102.102 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 19:25:39,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:25:39,347.347 INFO    ] Checking for system updates...
[2026-08-25 19:25:39,383.383 INFO    ] 200
[2026-08-25 19:25:39,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:39,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:25:39,442.442 INFO    ] No update needed
[2026-08-25 19:25:39,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 19:25:39,479.479 INFO    ] 200
[2026-08-25 19:25:39,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:39,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:25:39,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:25:39,582.582 INFO    ] No camera update needed
[2026-08-25 19:25:39,585.585 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:25:39,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:25:39,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:25:39,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:25:41,639.639 INFO    ] ================================================
[2026-08-25 19:25:41,654.654 INFO    ] Launching Daemon at Tue Aug 25 19:25:41 IST 2026
[2026-08-25 19:25:41,665.665 INFO    ] ================================================
[2026-08-25 19:25:42,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:25:42
[2026-08-25 19:25:42,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:25:43,155.155 INFO    ] Initializing speech engine...
[2026-08-25 19:25:43,163.163 INFO    ] 2026-08-25 19:25:43
[2026-08-25 19:25:43,446.446 INFO    ] 2026-08-25 19:25:43
[2026-08-25 19:25:43,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:25:43,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:25:43,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:25:43,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:25:43,919.919 INFO    ] time= 25/08/2026 19:25:43
[2026-08-25 19:25:43,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:25:44,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:25:44,165.165 INFO    ] No existing commands found in stream
[2026-08-25 19:25:49,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:25:49,183.183 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 19:25:51,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:25:51,969.969 INFO    ] Checking for system updates...
[2026-08-25 19:25:52,005.005 INFO    ] 200
[2026-08-25 19:25:52,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:52,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:25:52,067.067 INFO    ] No update needed
[2026-08-25 19:25:52,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 19:25:52,103.103 INFO    ] 200
[2026-08-25 19:25:52,106.106 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:25:52,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:25:52,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:25:52,199.199 INFO    ] No camera update needed
[2026-08-25 19:25:52,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:25:52,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:25:52,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:25:52,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:25:54,260.260 INFO    ] ================================================
[2026-08-25 19:25:54,276.276 INFO    ] Launching Daemon at Tue Aug 25 19:25:54 IST 2026
[2026-08-25 19:25:54,286.286 INFO    ] ================================================
[2026-08-25 19:25:54,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:25:54
[2026-08-25 19:25:55,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:25:55,753.753 INFO    ] Initializing speech engine...
[2026-08-25 19:25:55,761.761 INFO    ] 2026-08-25 19:25:55
[2026-08-25 19:25:56,024.024 INFO    ] 2026-08-25 19:25:56
[2026-08-25 19:25:56,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:25:56,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:25:56,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:25:56,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:25:56,566.566 INFO    ] time= 25/08/2026 19:25:56
[2026-08-25 19:25:56,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:25:56,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:25:56,717.717 INFO    ] No existing commands found in stream
[2026-08-25 19:26:01,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:26:01,736.736 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 19:26:04,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:26:04,346.346 INFO    ] Checking for system updates...
[2026-08-25 19:26:04,382.382 INFO    ] 200
[2026-08-25 19:26:04,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:04,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:26:04,440.440 INFO    ] No update needed
[2026-08-25 19:26:04,442.442 INFO    ] Checking for camera pi updates...
[2026-08-25 19:26:04,479.479 INFO    ] 200
[2026-08-25 19:26:04,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:04,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:26:04,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:26:04,567.567 INFO    ] No camera update needed
[2026-08-25 19:26:04,569.569 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:26:04,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:26:04,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:26:04,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:26:06,621.621 INFO    ] ================================================
[2026-08-25 19:26:06,636.636 INFO    ] Launching Daemon at Tue Aug 25 19:26:06 IST 2026
[2026-08-25 19:26:06,646.646 INFO    ] ================================================
[2026-08-25 19:26:07,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:26:07
[2026-08-25 19:26:07,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:26:08,106.106 INFO    ] Initializing speech engine...
[2026-08-25 19:26:08,113.113 INFO    ] 2026-08-25 19:26:08
[2026-08-25 19:26:08,373.373 INFO    ] 2026-08-25 19:26:08
[2026-08-25 19:26:08,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:26:08,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:26:08,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:26:08,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:26:08,857.857 INFO    ] time= 25/08/2026 19:26:08
[2026-08-25 19:26:08,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:26:08,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:26:09,056.056 INFO    ] No existing commands found in stream
[2026-08-25 19:26:14,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:26:14,081.081 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 19:26:15,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:26:15,910.910 INFO    ] Checking for system updates...
[2026-08-25 19:26:15,945.945 INFO    ] 200
[2026-08-25 19:26:15,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:16,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:26:16,002.002 INFO    ] No update needed
[2026-08-25 19:26:16,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 19:26:16,038.038 INFO    ] 200
[2026-08-25 19:26:16,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:16,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:26:16,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:26:16,155.155 INFO    ] No camera update needed
[2026-08-25 19:26:16,158.158 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:26:16,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:26:16,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:26:16,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:26:18,213.213 INFO    ] ================================================
[2026-08-25 19:26:18,228.228 INFO    ] Launching Daemon at Tue Aug 25 19:26:18 IST 2026
[2026-08-25 19:26:18,238.238 INFO    ] ================================================
[2026-08-25 19:26:18,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:26:18
[2026-08-25 19:26:19,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:26:19,656.656 INFO    ] Initializing speech engine...
[2026-08-25 19:26:19,662.662 INFO    ] 2026-08-25 19:26:19
[2026-08-25 19:26:19,920.920 INFO    ] 2026-08-25 19:26:19
[2026-08-25 19:26:19,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:26:20,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:26:20,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:26:20,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:26:20,462.462 INFO    ] time= 25/08/2026 19:26:20
[2026-08-25 19:26:20,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:26:20,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:26:20,621.621 INFO    ] No existing commands found in stream
[2026-08-25 19:26:25,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:26:25,655.655 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 19:26:27,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:26:27,431.431 INFO    ] Checking for system updates...
[2026-08-25 19:26:27,467.467 INFO    ] 200
[2026-08-25 19:26:27,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:27,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:26:27,523.523 INFO    ] No update needed
[2026-08-25 19:26:27,525.525 INFO    ] Checking for camera pi updates...
[2026-08-25 19:26:27,558.558 INFO    ] 200
[2026-08-25 19:26:27,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:27,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:26:27,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:26:27,664.664 INFO    ] No camera update needed
[2026-08-25 19:26:27,666.666 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:26:27,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:26:27,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:26:27,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:26:29,717.717 INFO    ] ================================================
[2026-08-25 19:26:29,732.732 INFO    ] Launching Daemon at Tue Aug 25 19:26:29 IST 2026
[2026-08-25 19:26:29,743.743 INFO    ] ================================================
[2026-08-25 19:26:30,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:26:30
[2026-08-25 19:26:31,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:26:31,322.322 INFO    ] Initializing speech engine...
[2026-08-25 19:26:31,336.336 INFO    ] 2026-08-25 19:26:31
[2026-08-25 19:26:31,621.621 INFO    ] 2026-08-25 19:26:31
[2026-08-25 19:26:31,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:26:31,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:26:31,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:26:32,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:26:32,159.159 INFO    ] time= 25/08/2026 19:26:32
[2026-08-25 19:26:32,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:26:32,229.229 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:26:32,387.387 INFO    ] No existing commands found in stream
[2026-08-25 19:26:37,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:26:37,422.422 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 19:26:39,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:26:39,031.031 INFO    ] Checking for system updates...
[2026-08-25 19:26:39,066.066 INFO    ] 200
[2026-08-25 19:26:39,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:39,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:26:39,122.122 INFO    ] No update needed
[2026-08-25 19:26:39,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 19:26:39,158.158 INFO    ] 200
[2026-08-25 19:26:39,160.160 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:39,204.204 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:26:39,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:26:39,253.253 INFO    ] No camera update needed
[2026-08-25 19:26:39,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:26:39,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:26:39,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:26:39,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:26:41,308.308 INFO    ] ================================================
[2026-08-25 19:26:41,322.322 INFO    ] Launching Daemon at Tue Aug 25 19:26:41 IST 2026
[2026-08-25 19:26:41,333.333 INFO    ] ================================================
[2026-08-25 19:26:41,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:26:41
[2026-08-25 19:26:42,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:26:42,748.748 INFO    ] Initializing speech engine...
[2026-08-25 19:26:42,762.762 INFO    ] 2026-08-25 19:26:42
[2026-08-25 19:26:43,030.030 INFO    ] 2026-08-25 19:26:43
[2026-08-25 19:26:43,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:26:43,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:26:43,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:26:43,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:26:43,433.433 INFO    ] time= 25/08/2026 19:26:43
[2026-08-25 19:26:43,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:26:43,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:26:43,620.620 INFO    ] No existing commands found in stream
[2026-08-25 19:26:48,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:26:48,659.659 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 19:26:52,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:26:52,107.107 INFO    ] Checking for system updates...
[2026-08-25 19:26:52,142.142 INFO    ] 200
[2026-08-25 19:26:52,144.144 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:52,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:26:52,199.199 INFO    ] No update needed
[2026-08-25 19:26:52,201.201 INFO    ] Checking for camera pi updates...
[2026-08-25 19:26:52,239.239 INFO    ] 200
[2026-08-25 19:26:52,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:26:52,285.285 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:26:52,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:26:52,342.342 INFO    ] No camera update needed
[2026-08-25 19:26:52,344.344 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:26:52,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:26:52,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:26:52,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:26:54,397.397 INFO    ] ================================================
[2026-08-25 19:26:54,412.412 INFO    ] Launching Daemon at Tue Aug 25 19:26:54 IST 2026
[2026-08-25 19:26:54,422.422 INFO    ] ================================================
[2026-08-25 19:26:55,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:26:55
[2026-08-25 19:26:55,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:26:56,004.004 INFO    ] Initializing speech engine...
[2026-08-25 19:26:56,015.015 INFO    ] 2026-08-25 19:26:56
[2026-08-25 19:26:56,301.301 INFO    ] 2026-08-25 19:26:56
[2026-08-25 19:26:56,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:26:56,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:26:56,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:26:56,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:26:56,825.825 INFO    ] time= 25/08/2026 19:26:56
[2026-08-25 19:26:56,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:26:56,850.850 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:26:56,977.977 INFO    ] No existing commands found in stream
[2026-08-25 19:27:01,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:27:01,996.996 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 19:27:02,897.897 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:27:02,900.900 INFO    ] Checking for system updates...
[2026-08-25 19:27:02,942.942 INFO    ] 200
[2026-08-25 19:27:02,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:03,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:03,008.008 INFO    ] No update needed
[2026-08-25 19:27:03,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 19:27:03,046.046 INFO    ] 200
[2026-08-25 19:27:03,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:03,090.090 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:27:03,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:03,150.150 INFO    ] No camera update needed
[2026-08-25 19:27:03,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:27:03,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:27:03,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:27:03,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:27:05,204.204 INFO    ] ================================================
[2026-08-25 19:27:05,219.219 INFO    ] Launching Daemon at Tue Aug 25 19:27:05 IST 2026
[2026-08-25 19:27:05,230.230 INFO    ] ================================================
[2026-08-25 19:27:05,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:27:05
[2026-08-25 19:27:06,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:27:06,756.756 INFO    ] Initializing speech engine...
[2026-08-25 19:27:06,762.762 INFO    ] 2026-08-25 19:27:06
[2026-08-25 19:27:07,041.041 INFO    ] 2026-08-25 19:27:07
[2026-08-25 19:27:07,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:27:07,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:27:07,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:27:07,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:27:07,604.604 INFO    ] time= 25/08/2026 19:27:07
[2026-08-25 19:27:07,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:27:07,632.632 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:27:07,763.763 INFO    ] No existing commands found in stream
[2026-08-25 19:27:12,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:27:12,783.783 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 19:27:13,469.469 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:27:13,472.472 INFO    ] Checking for system updates...
[2026-08-25 19:27:13,508.508 INFO    ] 200
[2026-08-25 19:27:13,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:13,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:27:13,569.569 INFO    ] No update needed
[2026-08-25 19:27:13,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 19:27:13,612.612 INFO    ] 200
[2026-08-25 19:27:13,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:13,655.655 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:27:13,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:27:13,703.703 INFO    ] No camera update needed
[2026-08-25 19:27:13,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:27:13,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:27:13,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:27:13,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:27:15,761.761 INFO    ] ================================================
[2026-08-25 19:27:15,776.776 INFO    ] Launching Daemon at Tue Aug 25 19:27:15 IST 2026
[2026-08-25 19:27:15,787.787 INFO    ] ================================================
[2026-08-25 19:27:16,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:27:16
[2026-08-25 19:27:16,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:27:17,204.204 INFO    ] Initializing speech engine...
[2026-08-25 19:27:17,213.213 INFO    ] 2026-08-25 19:27:17
[2026-08-25 19:27:17,458.458 INFO    ] 2026-08-25 19:27:17
[2026-08-25 19:27:17,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:27:17,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:27:17,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:27:17,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:27:17,936.936 INFO    ] time= 25/08/2026 19:27:17
[2026-08-25 19:27:17,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:27:18,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:27:18,160.160 INFO    ] No existing commands found in stream
[2026-08-25 19:27:23,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:27:23,179.179 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 19:27:25,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:27:25,587.587 INFO    ] Checking for system updates...
[2026-08-25 19:27:25,623.623 INFO    ] 200
[2026-08-25 19:27:25,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:25,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:25,689.689 INFO    ] No update needed
[2026-08-25 19:27:25,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 19:27:25,730.730 INFO    ] 200
[2026-08-25 19:27:25,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:25,776.776 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:27:25,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:25,830.830 INFO    ] No camera update needed
[2026-08-25 19:27:25,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:27:25,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:27:25,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:27:25,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:27:27,886.886 INFO    ] ================================================
[2026-08-25 19:27:27,901.901 INFO    ] Launching Daemon at Tue Aug 25 19:27:27 IST 2026
[2026-08-25 19:27:27,912.912 INFO    ] ================================================
[2026-08-25 19:27:28,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:27:28
[2026-08-25 19:27:29,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:27:29,323.323 INFO    ] Initializing speech engine...
[2026-08-25 19:27:29,341.341 INFO    ] 2026-08-25 19:27:29
[2026-08-25 19:27:29,592.592 INFO    ] 2026-08-25 19:27:29
[2026-08-25 19:27:29,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:27:29,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:27:29,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:27:30,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:27:30,073.073 INFO    ] time= 25/08/2026 19:27:30
[2026-08-25 19:27:30,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:27:30,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:27:30,309.309 INFO    ] No existing commands found in stream
[2026-08-25 19:27:35,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:27:35,333.333 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 19:27:39,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:27:39,683.683 INFO    ] Checking for system updates...
[2026-08-25 19:27:39,719.719 INFO    ] 200
[2026-08-25 19:27:39,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:39,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:39,778.778 INFO    ] No update needed
[2026-08-25 19:27:39,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 19:27:39,818.818 INFO    ] 200
[2026-08-25 19:27:39,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:39,866.866 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:27:39,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:39,922.922 INFO    ] No camera update needed
[2026-08-25 19:27:39,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:27:39,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:27:39,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:27:39,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:27:41,978.978 INFO    ] ================================================
[2026-08-25 19:27:41,993.993 INFO    ] Launching Daemon at Tue Aug 25 19:27:41 IST 2026
[2026-08-25 19:27:42,004.004 INFO    ] ================================================
[2026-08-25 19:27:42,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:27:42
[2026-08-25 19:27:43,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:27:43,433.433 INFO    ] Initializing speech engine...
[2026-08-25 19:27:43,458.458 INFO    ] 2026-08-25 19:27:43
[2026-08-25 19:27:43,733.733 INFO    ] 2026-08-25 19:27:43
[2026-08-25 19:27:43,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:27:43,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:27:43,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:27:44,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:27:44,158.158 INFO    ] time= 25/08/2026 19:27:44
[2026-08-25 19:27:44,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:27:44,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:27:44,248.248 INFO    ] No existing commands found in stream
[2026-08-25 19:27:49,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:27:49,270.270 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 19:27:51,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:27:51,441.441 INFO    ] Checking for system updates...
[2026-08-25 19:27:51,483.483 INFO    ] 200
[2026-08-25 19:27:51,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:51,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:51,545.545 INFO    ] No update needed
[2026-08-25 19:27:51,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 19:27:51,580.580 INFO    ] 200
[2026-08-25 19:27:51,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:27:51,629.629 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:27:51,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:27:51,688.688 INFO    ] No camera update needed
[2026-08-25 19:27:51,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:27:51,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:27:51,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:27:51,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:27:53,742.742 INFO    ] ================================================
[2026-08-25 19:27:53,758.758 INFO    ] Launching Daemon at Tue Aug 25 19:27:53 IST 2026
[2026-08-25 19:27:53,768.768 INFO    ] ================================================
[2026-08-25 19:27:54,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:27:54
[2026-08-25 19:27:54,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:27:55,190.190 INFO    ] Initializing speech engine...
[2026-08-25 19:27:55,203.203 INFO    ] 2026-08-25 19:27:55
[2026-08-25 19:27:55,455.455 INFO    ] 2026-08-25 19:27:55
[2026-08-25 19:27:55,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:27:55,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:27:55,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:27:55,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:27:55,961.961 INFO    ] time= 25/08/2026 19:27:55
[2026-08-25 19:27:56,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:27:56,031.031 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:27:56,167.167 INFO    ] No existing commands found in stream
[2026-08-25 19:28:01,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:28:01,192.192 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 19:28:02,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:28:02,563.563 INFO    ] Checking for system updates...
[2026-08-25 19:28:02,607.607 INFO    ] 200
[2026-08-25 19:28:02,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:02,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:28:02,668.668 INFO    ] No update needed
[2026-08-25 19:28:02,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 19:28:02,720.720 INFO    ] 200
[2026-08-25 19:28:02,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:02,762.762 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:28:02,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:28:02,843.843 INFO    ] No camera update needed
[2026-08-25 19:28:02,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:28:02,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:28:02,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:28:02,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:28:04,900.900 INFO    ] ================================================
[2026-08-25 19:28:04,915.915 INFO    ] Launching Daemon at Tue Aug 25 19:28:04 IST 2026
[2026-08-25 19:28:04,925.925 INFO    ] ================================================
[2026-08-25 19:28:05,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:28:05
[2026-08-25 19:28:06,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:28:06,364.364 INFO    ] Initializing speech engine...
[2026-08-25 19:28:06,373.373 INFO    ] 2026-08-25 19:28:06
[2026-08-25 19:28:06,623.623 INFO    ] 2026-08-25 19:28:06
[2026-08-25 19:28:06,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:28:06,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:28:06,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:28:07,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:28:07,096.096 INFO    ] time= 25/08/2026 19:28:07
[2026-08-25 19:28:07,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:28:07,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:28:07,331.331 INFO    ] No existing commands found in stream
[2026-08-25 19:28:12,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:28:12,350.350 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 19:28:16,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:28:16,103.103 INFO    ] Checking for system updates...
[2026-08-25 19:28:16,139.139 INFO    ] 200
[2026-08-25 19:28:16,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:16,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:16,203.203 INFO    ] No update needed
[2026-08-25 19:28:16,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 19:28:16,242.242 INFO    ] 200
[2026-08-25 19:28:16,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:16,287.287 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:28:16,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:16,339.339 INFO    ] No camera update needed
[2026-08-25 19:28:16,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:28:16,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:28:16,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:28:16,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:28:18,393.393 INFO    ] ================================================
[2026-08-25 19:28:18,408.408 INFO    ] Launching Daemon at Tue Aug 25 19:28:18 IST 2026
[2026-08-25 19:28:18,419.419 INFO    ] ================================================
[2026-08-25 19:28:18,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:28:18
[2026-08-25 19:28:19,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:28:19,811.811 INFO    ] Initializing speech engine...
[2026-08-25 19:28:19,825.825 INFO    ] 2026-08-25 19:28:19
[2026-08-25 19:28:20,098.098 INFO    ] 2026-08-25 19:28:20
[2026-08-25 19:28:20,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:28:20,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:28:20,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:28:20,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:28:20,602.602 INFO    ] time= 25/08/2026 19:28:20
[2026-08-25 19:28:20,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:28:20,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:28:20,816.816 INFO    ] No existing commands found in stream
[2026-08-25 19:28:25,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:28:25,844.844 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 19:28:28,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:28:28,726.726 INFO    ] Checking for system updates...
[2026-08-25 19:28:28,762.762 INFO    ] 200
[2026-08-25 19:28:28,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:28,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:28,822.822 INFO    ] No update needed
[2026-08-25 19:28:28,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 19:28:28,862.862 INFO    ] 200
[2026-08-25 19:28:28,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:28,906.906 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:28:28,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:28,967.967 INFO    ] No camera update needed
[2026-08-25 19:28:28,969.969 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:28:28,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:28:28,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:28:28,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:28:31,022.022 INFO    ] ================================================
[2026-08-25 19:28:31,037.037 INFO    ] Launching Daemon at Tue Aug 25 19:28:31 IST 2026
[2026-08-25 19:28:31,048.048 INFO    ] ================================================
[2026-08-25 19:28:31,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:28:31
[2026-08-25 19:28:32,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:28:32,568.568 INFO    ] Initializing speech engine...
[2026-08-25 19:28:32,577.577 INFO    ] 2026-08-25 19:28:32
[2026-08-25 19:28:32,822.822 INFO    ] 2026-08-25 19:28:32
[2026-08-25 19:28:32,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:28:33,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:28:33,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:28:33,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:28:33,292.292 INFO    ] time= 25/08/2026 19:28:33
[2026-08-25 19:28:33,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:28:33,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:28:33,506.506 INFO    ] No existing commands found in stream
[2026-08-25 19:28:38,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:28:38,539.539 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 19:28:41,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:28:41,862.862 INFO    ] Checking for system updates...
[2026-08-25 19:28:41,898.898 INFO    ] 200
[2026-08-25 19:28:41,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:41,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:41,957.957 INFO    ] No update needed
[2026-08-25 19:28:41,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 19:28:41,993.993 INFO    ] 200
[2026-08-25 19:28:41,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:42,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:28:42,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:42,088.088 INFO    ] No camera update needed
[2026-08-25 19:28:42,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:28:42,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:28:42,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:28:42,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:28:44,147.147 INFO    ] ================================================
[2026-08-25 19:28:44,162.162 INFO    ] Launching Daemon at Tue Aug 25 19:28:44 IST 2026
[2026-08-25 19:28:44,172.172 INFO    ] ================================================
[2026-08-25 19:28:44,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:28:44
[2026-08-25 19:28:45,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:28:45,629.629 INFO    ] Initializing speech engine...
[2026-08-25 19:28:45,633.633 INFO    ] 2026-08-25 19:28:45
[2026-08-25 19:28:45,892.892 INFO    ] 2026-08-25 19:28:45
[2026-08-25 19:28:45,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:28:47,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:28:47,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:28:47,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:28:47,409.409 INFO    ] time= 25/08/2026 19:28:47
[2026-08-25 19:28:47,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:28:47,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:28:47,545.545 INFO    ] No existing commands found in stream
[2026-08-25 19:28:52,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:28:52,578.578 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 19:28:54,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:28:54,602.602 INFO    ] Checking for system updates...
[2026-08-25 19:28:54,637.637 INFO    ] 200
[2026-08-25 19:28:54,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:54,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:54,700.700 INFO    ] No update needed
[2026-08-25 19:28:54,702.702 INFO    ] Checking for camera pi updates...
[2026-08-25 19:28:54,738.738 INFO    ] 200
[2026-08-25 19:28:54,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:28:54,785.785 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:28:54,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:28:54,835.835 INFO    ] No camera update needed
[2026-08-25 19:28:54,837.837 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:28:54,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:28:54,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:28:54,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:28:56,892.892 INFO    ] ================================================
[2026-08-25 19:28:56,907.907 INFO    ] Launching Daemon at Tue Aug 25 19:28:56 IST 2026
[2026-08-25 19:28:56,918.918 INFO    ] ================================================
[2026-08-25 19:28:57,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:28:57
[2026-08-25 19:28:58,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:28:58,325.325 INFO    ] Initializing speech engine...
[2026-08-25 19:28:58,350.350 INFO    ] 2026-08-25 19:28:58
[2026-08-25 19:28:58,621.621 INFO    ] 2026-08-25 19:28:58
[2026-08-25 19:28:58,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:28:58,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:28:58,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:28:59,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:28:59,108.108 INFO    ] time= 25/08/2026 19:28:59
[2026-08-25 19:28:59,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:28:59,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:28:59,309.309 INFO    ] No existing commands found in stream
[2026-08-25 19:29:04,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:29:04,324.324 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 19:29:07,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:29:07,780.780 INFO    ] Checking for system updates...
[2026-08-25 19:29:07,816.816 INFO    ] 200
[2026-08-25 19:29:07,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:07,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:07,875.875 INFO    ] No update needed
[2026-08-25 19:29:07,878.878 INFO    ] Checking for camera pi updates...
[2026-08-25 19:29:07,912.912 INFO    ] 200
[2026-08-25 19:29:07,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:07,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:29:08,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:08,027.027 INFO    ] No camera update needed
[2026-08-25 19:29:08,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:29:08,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:29:08,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:29:08,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:29:10,086.086 INFO    ] ================================================
[2026-08-25 19:29:10,102.102 INFO    ] Launching Daemon at Tue Aug 25 19:29:10 IST 2026
[2026-08-25 19:29:10,113.113 INFO    ] ================================================
[2026-08-25 19:29:10,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:29:10
[2026-08-25 19:29:11,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:29:11,511.511 INFO    ] Initializing speech engine...
[2026-08-25 19:29:11,525.525 INFO    ] 2026-08-25 19:29:11
[2026-08-25 19:29:11,791.791 INFO    ] 2026-08-25 19:29:11
[2026-08-25 19:29:11,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:29:12,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:29:12,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:29:12,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:29:12,235.235 INFO    ] time= 25/08/2026 19:29:12
[2026-08-25 19:29:12,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:29:12,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:29:12,420.420 INFO    ] No existing commands found in stream
[2026-08-25 19:29:17,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:29:17,435.435 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 19:29:21,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:29:21,183.183 INFO    ] Checking for system updates...
[2026-08-25 19:29:21,220.220 INFO    ] 200
[2026-08-25 19:29:21,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:21,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:21,277.277 INFO    ] No update needed
[2026-08-25 19:29:21,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 19:29:21,318.318 INFO    ] 200
[2026-08-25 19:29:21,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:21,360.360 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:29:21,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:21,419.419 INFO    ] No camera update needed
[2026-08-25 19:29:21,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:29:21,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:29:21,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:29:21,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:29:23,475.475 INFO    ] ================================================
[2026-08-25 19:29:23,490.490 INFO    ] Launching Daemon at Tue Aug 25 19:29:23 IST 2026
[2026-08-25 19:29:23,501.501 INFO    ] ================================================
[2026-08-25 19:29:24,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:29:24
[2026-08-25 19:29:24,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:29:24,960.960 INFO    ] Initializing speech engine...
[2026-08-25 19:29:24,968.968 INFO    ] 2026-08-25 19:29:24
[2026-08-25 19:29:25,228.228 INFO    ] 2026-08-25 19:29:25
[2026-08-25 19:29:25,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:29:25,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:29:25,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:29:25,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:29:25,647.647 INFO    ] time= 25/08/2026 19:29:25
[2026-08-25 19:29:25,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:29:25,676.676 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:29:25,819.819 INFO    ] No existing commands found in stream
[2026-08-25 19:29:30,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:29:30,852.852 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 19:29:32,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:29:32,966.966 INFO    ] Checking for system updates...
[2026-08-25 19:29:33,010.010 INFO    ] 200
[2026-08-25 19:29:33,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:33,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:29:33,080.080 INFO    ] No update needed
[2026-08-25 19:29:33,082.082 INFO    ] Checking for camera pi updates...
[2026-08-25 19:29:33,123.123 INFO    ] 200
[2026-08-25 19:29:33,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:33,176.176 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:29:33,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:29:33,238.238 INFO    ] No camera update needed
[2026-08-25 19:29:33,241.241 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:29:33,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:29:33,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:29:33,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:29:35,299.299 INFO    ] ================================================
[2026-08-25 19:29:35,315.315 INFO    ] Launching Daemon at Tue Aug 25 19:29:35 IST 2026
[2026-08-25 19:29:35,326.326 INFO    ] ================================================
[2026-08-25 19:29:36,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:29:35
[2026-08-25 19:29:36,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:29:37,006.006 INFO    ] Initializing speech engine...
[2026-08-25 19:29:37,014.014 INFO    ] 2026-08-25 19:29:37
[2026-08-25 19:29:37,290.290 INFO    ] 2026-08-25 19:29:37
[2026-08-25 19:29:37,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:29:37,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:29:37,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:29:37,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:29:37,837.837 INFO    ] time= 25/08/2026 19:29:37
[2026-08-25 19:29:37,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:29:37,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:29:38,013.013 INFO    ] No existing commands found in stream
[2026-08-25 19:29:43,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:29:43,044.044 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-08-25 19:29:44,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:29:44,892.892 INFO    ] Checking for system updates...
[2026-08-25 19:29:44,927.927 INFO    ] 200
[2026-08-25 19:29:44,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:45,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:45,008.008 INFO    ] No update needed
[2026-08-25 19:29:45,012.012 INFO    ] Checking for camera pi updates...
[2026-08-25 19:29:45,053.053 INFO    ] 200
[2026-08-25 19:29:45,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:45,138.138 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:29:45,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:45,284.284 INFO    ] No camera update needed
[2026-08-25 19:29:45,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:29:45,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:29:45,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:29:45,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:29:47,339.339 INFO    ] ================================================
[2026-08-25 19:29:47,354.354 INFO    ] Launching Daemon at Tue Aug 25 19:29:47 IST 2026
[2026-08-25 19:29:47,365.365 INFO    ] ================================================
[2026-08-25 19:29:47,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:29:47
[2026-08-25 19:29:48,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:29:48,838.838 INFO    ] Initializing speech engine...
[2026-08-25 19:29:48,844.844 INFO    ] 2026-08-25 19:29:48
[2026-08-25 19:29:49,108.108 INFO    ] 2026-08-25 19:29:49
[2026-08-25 19:29:49,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:29:49,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:29:49,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:29:49,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:29:49,696.696 INFO    ] time= 25/08/2026 19:29:49
[2026-08-25 19:29:49,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:29:49,734.734 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:29:49,843.843 INFO    ] No existing commands found in stream
[2026-08-25 19:29:54,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:29:54,867.867 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 19:29:58,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:29:58,314.314 INFO    ] Checking for system updates...
[2026-08-25 19:29:58,363.363 INFO    ] 200
[2026-08-25 19:29:58,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:58,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:58,456.456 INFO    ] No update needed
[2026-08-25 19:29:58,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 19:29:58,499.499 INFO    ] 200
[2026-08-25 19:29:58,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:29:58,547.547 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:29:58,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:29:58,609.609 INFO    ] No camera update needed
[2026-08-25 19:29:58,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:29:58,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:29:58,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:29:58,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:30:00,664.664 INFO    ] ================================================
[2026-08-25 19:30:00,680.680 INFO    ] Launching Daemon at Tue Aug 25 19:30:00 IST 2026
[2026-08-25 19:30:00,691.691 INFO    ] ================================================
[2026-08-25 19:30:01,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:30:01
[2026-08-25 19:30:01,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:30:02,727.727 INFO    ] Initializing speech engine...
[2026-08-25 19:30:02,730.730 INFO    ] 2026-08-25 19:30:02
[2026-08-25 19:30:03,329.329 INFO    ] 2026-08-25 19:30:03
[2026-08-25 19:30:03,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:30:03,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:30:03,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:30:03,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:30:03,706.706 INFO    ] time= 25/08/2026 19:30:03
[2026-08-25 19:30:03,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:30:03,713.713 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:30:03,805.805 INFO    ] No existing commands found in stream
[2026-08-25 19:30:08,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:30:08,818.818 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 19:30:10,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:30:10,571.571 INFO    ] Checking for system updates...
[2026-08-25 19:30:10,607.607 INFO    ] 200
[2026-08-25 19:30:10,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:10,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:30:10,669.669 INFO    ] No update needed
[2026-08-25 19:30:10,672.672 INFO    ] Checking for camera pi updates...
[2026-08-25 19:30:10,705.705 INFO    ] 200
[2026-08-25 19:30:10,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:10,754.754 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:30:10,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:30:10,810.810 INFO    ] No camera update needed
[2026-08-25 19:30:10,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:30:10,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:30:10,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:30:10,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:30:12,865.865 INFO    ] ================================================
[2026-08-25 19:30:12,881.881 INFO    ] Launching Daemon at Tue Aug 25 19:30:12 IST 2026
[2026-08-25 19:30:12,893.893 INFO    ] ================================================
[2026-08-25 19:30:13,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:30:13
[2026-08-25 19:30:14,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:30:14,313.313 INFO    ] Initializing speech engine...
[2026-08-25 19:30:14,321.321 INFO    ] 2026-08-25 19:30:14
[2026-08-25 19:30:14,572.572 INFO    ] 2026-08-25 19:30:14
[2026-08-25 19:30:14,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:30:14,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:30:14,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:30:14,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:30:14,951.951 INFO    ] time= 25/08/2026 19:30:14
[2026-08-25 19:30:14,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:30:15,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:30:15,147.147 INFO    ] No existing commands found in stream
[2026-08-25 19:30:20,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:30:20,167.167 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 19:30:24,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:30:24,031.031 INFO    ] Checking for system updates...
[2026-08-25 19:30:24,070.070 INFO    ] 200
[2026-08-25 19:30:24,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:24,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:30:24,127.127 INFO    ] No update needed
[2026-08-25 19:30:24,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 19:30:24,163.163 INFO    ] 200
[2026-08-25 19:30:24,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:24,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:30:24,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:30:24,264.264 INFO    ] No camera update needed
[2026-08-25 19:30:24,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:30:24,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:30:24,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:30:24,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:30:26,319.319 INFO    ] ================================================
[2026-08-25 19:30:26,335.335 INFO    ] Launching Daemon at Tue Aug 25 19:30:26 IST 2026
[2026-08-25 19:30:26,346.346 INFO    ] ================================================
[2026-08-25 19:30:26,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:30:26
[2026-08-25 19:30:27,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:30:27,770.770 INFO    ] Initializing speech engine...
[2026-08-25 19:30:27,779.779 INFO    ] 2026-08-25 19:30:27
[2026-08-25 19:30:28,028.028 INFO    ] 2026-08-25 19:30:28
[2026-08-25 19:30:28,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:30:28,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:30:28,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:30:28,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:30:28,512.512 INFO    ] time= 25/08/2026 19:30:28
[2026-08-25 19:30:28,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:30:28,608.608 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:30:28,745.745 INFO    ] No existing commands found in stream
[2026-08-25 19:30:33,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:30:33,770.770 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 19:30:36,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:30:36,491.491 INFO    ] Checking for system updates...
[2026-08-25 19:30:36,533.533 INFO    ] 200
[2026-08-25 19:30:36,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:36,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:30:36,610.610 INFO    ] No update needed
[2026-08-25 19:30:36,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 19:30:36,648.648 INFO    ] 200
[2026-08-25 19:30:36,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:36,692.692 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:30:36,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:30:36,747.747 INFO    ] No camera update needed
[2026-08-25 19:30:36,750.750 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:30:36,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:30:36,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:30:36,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:30:38,806.806 INFO    ] ================================================
[2026-08-25 19:30:38,821.821 INFO    ] Launching Daemon at Tue Aug 25 19:30:38 IST 2026
[2026-08-25 19:30:38,832.832 INFO    ] ================================================
[2026-08-25 19:30:39,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:30:39
[2026-08-25 19:30:39,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:30:40,254.254 INFO    ] Initializing speech engine...
[2026-08-25 19:30:40,263.263 INFO    ] 2026-08-25 19:30:40
[2026-08-25 19:30:40,509.509 INFO    ] 2026-08-25 19:30:40
[2026-08-25 19:30:40,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:30:40,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:30:40,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:30:40,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:30:40,980.980 INFO    ] time= 25/08/2026 19:30:40
[2026-08-25 19:30:41,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:30:41,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:30:41,205.205 INFO    ] No existing commands found in stream
[2026-08-25 19:30:46,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:30:46,232.232 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 19:30:48,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:30:48,726.726 INFO    ] Checking for system updates...
[2026-08-25 19:30:48,761.761 INFO    ] 200
[2026-08-25 19:30:48,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:48,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:30:48,817.817 INFO    ] No update needed
[2026-08-25 19:30:48,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 19:30:48,854.854 INFO    ] 200
[2026-08-25 19:30:48,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:30:48,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:30:48,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:30:48,963.963 INFO    ] No camera update needed
[2026-08-25 19:30:48,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:30:48,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:30:48,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:30:48,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:30:51,018.018 INFO    ] ================================================
[2026-08-25 19:30:51,034.034 INFO    ] Launching Daemon at Tue Aug 25 19:30:51 IST 2026
[2026-08-25 19:30:51,046.046 INFO    ] ================================================
[2026-08-25 19:30:51,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:30:51
[2026-08-25 19:30:52,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:30:52,511.511 INFO    ] Initializing speech engine...
[2026-08-25 19:30:52,516.516 INFO    ] 2026-08-25 19:30:52
[2026-08-25 19:30:52,765.765 INFO    ] 2026-08-25 19:30:52
[2026-08-25 19:30:52,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:30:53,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:30:53,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:30:53,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:30:53,320.320 INFO    ] time= 25/08/2026 19:30:53
[2026-08-25 19:30:53,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:30:53,348.348 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:30:53,496.496 INFO    ] No existing commands found in stream
[2026-08-25 19:30:58,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:30:58,534.534 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-08-25 19:31:01,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:31:01,666.666 INFO    ] Checking for system updates...
[2026-08-25 19:31:01,703.703 INFO    ] 200
[2026-08-25 19:31:01,706.706 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:01,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:31:01,774.774 INFO    ] No update needed
[2026-08-25 19:31:01,777.777 INFO    ] Checking for camera pi updates...
[2026-08-25 19:31:01,812.812 INFO    ] 200
[2026-08-25 19:31:01,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:01,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:31:01,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:31:01,926.926 INFO    ] No camera update needed
[2026-08-25 19:31:01,930.930 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:31:01,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:31:01,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:31:01,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:31:04,005.005 INFO    ] ================================================
[2026-08-25 19:31:04,020.020 INFO    ] Launching Daemon at Tue Aug 25 19:31:04 IST 2026
[2026-08-25 19:31:04,032.032 INFO    ] ================================================
[2026-08-25 19:31:04,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:31:04
[2026-08-25 19:31:05,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:31:05,681.681 INFO    ] Initializing speech engine...
[2026-08-25 19:31:05,695.695 INFO    ] 2026-08-25 19:31:05
[2026-08-25 19:31:05,967.967 INFO    ] 2026-08-25 19:31:05
[2026-08-25 19:31:06,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:31:06,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:31:06,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:31:06,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:31:06,461.461 INFO    ] time= 25/08/2026 19:31:06
[2026-08-25 19:31:06,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:31:06,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:31:06,691.691 INFO    ] No existing commands found in stream
[2026-08-25 19:31:11,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:31:11,714.714 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 19:31:15,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:31:15,298.298 INFO    ] Checking for system updates...
[2026-08-25 19:31:15,335.335 INFO    ] 200
[2026-08-25 19:31:15,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:15,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:15,393.393 INFO    ] No update needed
[2026-08-25 19:31:15,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 19:31:15,430.430 INFO    ] 200
[2026-08-25 19:31:15,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:15,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:31:15,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:15,528.528 INFO    ] No camera update needed
[2026-08-25 19:31:15,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:31:15,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:31:15,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:31:15,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:31:17,587.587 INFO    ] ================================================
[2026-08-25 19:31:17,603.603 INFO    ] Launching Daemon at Tue Aug 25 19:31:17 IST 2026
[2026-08-25 19:31:17,614.614 INFO    ] ================================================
[2026-08-25 19:31:18,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:31:18
[2026-08-25 19:31:18,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:31:19,083.083 INFO    ] Initializing speech engine...
[2026-08-25 19:31:19,091.091 INFO    ] 2026-08-25 19:31:19
[2026-08-25 19:31:19,343.343 INFO    ] 2026-08-25 19:31:19
[2026-08-25 19:31:19,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:31:19,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:31:19,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:31:19,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:31:19,898.898 INFO    ] time= 25/08/2026 19:31:19
[2026-08-25 19:31:19,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:31:19,923.923 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:31:20,054.054 INFO    ] No existing commands found in stream
[2026-08-25 19:31:25,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:31:25,071.071 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 19:31:26,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:31:26,023.023 INFO    ] Checking for system updates...
[2026-08-25 19:31:26,059.059 INFO    ] 200
[2026-08-25 19:31:26,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:26,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:26,118.118 INFO    ] No update needed
[2026-08-25 19:31:26,120.120 INFO    ] Checking for camera pi updates...
[2026-08-25 19:31:26,159.159 INFO    ] 200
[2026-08-25 19:31:26,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:26,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:31:26,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:26,257.257 INFO    ] No camera update needed
[2026-08-25 19:31:26,260.260 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:31:26,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:31:26,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:31:26,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:31:28,317.317 INFO    ] ================================================
[2026-08-25 19:31:28,333.333 INFO    ] Launching Daemon at Tue Aug 25 19:31:28 IST 2026
[2026-08-25 19:31:28,345.345 INFO    ] ================================================
[2026-08-25 19:31:28,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:31:28
[2026-08-25 19:31:29,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:31:29,786.786 INFO    ] Initializing speech engine...
[2026-08-25 19:31:29,795.795 INFO    ] 2026-08-25 19:31:29
[2026-08-25 19:31:30,040.040 INFO    ] 2026-08-25 19:31:30
[2026-08-25 19:31:30,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:31:30,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:31:30,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:31:30,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:31:30,532.532 INFO    ] time= 25/08/2026 19:31:30
[2026-08-25 19:31:30,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:31:30,606.606 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:31:30,748.748 INFO    ] No existing commands found in stream
[2026-08-25 19:31:35,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:31:35,766.766 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 19:31:38,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:31:38,186.186 INFO    ] Checking for system updates...
[2026-08-25 19:31:38,221.221 INFO    ] 200
[2026-08-25 19:31:38,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:38,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:38,280.280 INFO    ] No update needed
[2026-08-25 19:31:38,282.282 INFO    ] Checking for camera pi updates...
[2026-08-25 19:31:38,319.319 INFO    ] 200
[2026-08-25 19:31:38,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:38,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:31:38,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:38,418.418 INFO    ] No camera update needed
[2026-08-25 19:31:38,420.420 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:31:38,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:31:38,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:31:38,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:31:40,474.474 INFO    ] ================================================
[2026-08-25 19:31:40,489.489 INFO    ] Launching Daemon at Tue Aug 25 19:31:40 IST 2026
[2026-08-25 19:31:40,500.500 INFO    ] ================================================
[2026-08-25 19:31:41,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:31:41
[2026-08-25 19:31:41,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:31:42,168.168 INFO    ] Initializing speech engine...
[2026-08-25 19:31:42,174.174 INFO    ] 2026-08-25 19:31:42
[2026-08-25 19:31:42,487.487 INFO    ] 2026-08-25 19:31:42
[2026-08-25 19:31:42,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:31:42,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:31:42,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:31:42,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:31:42,998.998 INFO    ] time= 25/08/2026 19:31:42
[2026-08-25 19:31:43,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:31:43,046.046 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:31:43,152.152 INFO    ] No existing commands found in stream
[2026-08-25 19:31:48,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:31:48,178.178 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 19:31:53,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:31:53,237.237 INFO    ] Checking for system updates...
[2026-08-25 19:31:53,279.279 INFO    ] 200
[2026-08-25 19:31:53,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:53,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:53,338.338 INFO    ] No update needed
[2026-08-25 19:31:53,341.341 INFO    ] Checking for camera pi updates...
[2026-08-25 19:31:53,376.376 INFO    ] 200
[2026-08-25 19:31:53,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:31:53,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:31:53,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:31:53,474.474 INFO    ] No camera update needed
[2026-08-25 19:31:53,477.477 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:31:53,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:31:53,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:31:53,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:31:55,534.534 INFO    ] ================================================
[2026-08-25 19:31:55,549.549 INFO    ] Launching Daemon at Tue Aug 25 19:31:55 IST 2026
[2026-08-25 19:31:55,561.561 INFO    ] ================================================
[2026-08-25 19:31:56,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:31:56
[2026-08-25 19:31:56,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:31:57,031.031 INFO    ] Initializing speech engine...
[2026-08-25 19:31:57,036.036 INFO    ] 2026-08-25 19:31:57
[2026-08-25 19:31:57,301.301 INFO    ] 2026-08-25 19:31:57
[2026-08-25 19:31:57,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:31:57,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:31:57,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:31:57,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:31:57,843.843 INFO    ] time= 25/08/2026 19:31:57
[2026-08-25 19:31:57,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:31:57,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:31:57,998.998 INFO    ] No existing commands found in stream
[2026-08-25 19:32:03,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:32:03,015.015 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 19:32:05,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:32:05,807.807 INFO    ] Checking for system updates...
[2026-08-25 19:32:05,847.847 INFO    ] 200
[2026-08-25 19:32:05,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:05,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:05,913.913 INFO    ] No update needed
[2026-08-25 19:32:05,916.916 INFO    ] Checking for camera pi updates...
[2026-08-25 19:32:05,950.950 INFO    ] 200
[2026-08-25 19:32:05,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:05,993.993 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:32:06,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:06,051.051 INFO    ] No camera update needed
[2026-08-25 19:32:06,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:32:06,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:32:06,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:32:06,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:32:08,110.110 INFO    ] ================================================
[2026-08-25 19:32:08,125.125 INFO    ] Launching Daemon at Tue Aug 25 19:32:08 IST 2026
[2026-08-25 19:32:08,136.136 INFO    ] ================================================
[2026-08-25 19:32:08,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:32:08
[2026-08-25 19:32:09,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:32:09,612.612 INFO    ] Initializing speech engine...
[2026-08-25 19:32:09,621.621 INFO    ] 2026-08-25 19:32:09
[2026-08-25 19:32:09,868.868 INFO    ] 2026-08-25 19:32:09
[2026-08-25 19:32:09,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:32:10,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:32:10,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:32:10,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:32:10,371.371 INFO    ] time= 25/08/2026 19:32:10
[2026-08-25 19:32:10,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:32:10,436.436 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:32:10,566.566 INFO    ] No existing commands found in stream
[2026-08-25 19:32:15,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:32:15,593.593 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 19:32:16,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:32:16,441.441 INFO    ] Checking for system updates...
[2026-08-25 19:32:16,484.484 INFO    ] 200
[2026-08-25 19:32:16,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:16,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:16,551.551 INFO    ] No update needed
[2026-08-25 19:32:16,553.553 INFO    ] Checking for camera pi updates...
[2026-08-25 19:32:16,592.592 INFO    ] 200
[2026-08-25 19:32:16,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:16,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:32:16,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:16,688.688 INFO    ] No camera update needed
[2026-08-25 19:32:16,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:32:16,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:32:16,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:32:16,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:32:18,744.744 INFO    ] ================================================
[2026-08-25 19:32:18,759.759 INFO    ] Launching Daemon at Tue Aug 25 19:32:18 IST 2026
[2026-08-25 19:32:18,770.770 INFO    ] ================================================
[2026-08-25 19:32:19,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:32:19
[2026-08-25 19:32:19,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:32:20,185.185 INFO    ] Initializing speech engine...
[2026-08-25 19:32:20,195.195 INFO    ] 2026-08-25 19:32:20
[2026-08-25 19:32:20,441.441 INFO    ] 2026-08-25 19:32:20
[2026-08-25 19:32:20,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:32:20,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:32:20,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:32:20,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:32:20,893.893 INFO    ] time= 25/08/2026 19:32:20
[2026-08-25 19:32:20,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:32:20,998.998 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:32:21,132.132 INFO    ] No existing commands found in stream
[2026-08-25 19:32:26,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:32:26,159.159 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 19:32:27,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:32:27,566.566 INFO    ] Checking for system updates...
[2026-08-25 19:32:27,602.602 INFO    ] 200
[2026-08-25 19:32:27,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:27,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:27,659.659 INFO    ] No update needed
[2026-08-25 19:32:27,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 19:32:27,700.700 INFO    ] 200
[2026-08-25 19:32:27,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:27,765.765 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:32:27,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:27,817.817 INFO    ] No camera update needed
[2026-08-25 19:32:27,819.819 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:32:27,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:32:27,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:32:27,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:32:29,871.871 INFO    ] ================================================
[2026-08-25 19:32:29,887.887 INFO    ] Launching Daemon at Tue Aug 25 19:32:29 IST 2026
[2026-08-25 19:32:29,897.897 INFO    ] ================================================
[2026-08-25 19:32:30,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:32:30
[2026-08-25 19:32:31,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:32:31,382.382 INFO    ] Initializing speech engine...
[2026-08-25 19:32:31,391.391 INFO    ] 2026-08-25 19:32:31
[2026-08-25 19:32:31,652.652 INFO    ] 2026-08-25 19:32:31
[2026-08-25 19:32:31,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:32:31,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:32:31,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:32:32,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:32:32,201.201 INFO    ] time= 25/08/2026 19:32:32
[2026-08-25 19:32:32,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:32:32,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:32:32,354.354 INFO    ] No existing commands found in stream
[2026-08-25 19:32:37,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:32:37,386.386 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 19:32:38,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:32:38,985.985 INFO    ] Checking for system updates...
[2026-08-25 19:32:39,021.021 INFO    ] 200
[2026-08-25 19:32:39,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:39,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:39,087.087 INFO    ] No update needed
[2026-08-25 19:32:39,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 19:32:39,127.127 INFO    ] 200
[2026-08-25 19:32:39,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:39,176.176 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:32:39,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:32:39,231.231 INFO    ] No camera update needed
[2026-08-25 19:32:39,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:32:39,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:32:39,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:32:39,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:32:41,290.290 INFO    ] ================================================
[2026-08-25 19:32:41,311.311 INFO    ] Launching Daemon at Tue Aug 25 19:32:41 IST 2026
[2026-08-25 19:32:41,322.322 INFO    ] ================================================
[2026-08-25 19:32:41,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:32:41
[2026-08-25 19:32:42,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:32:42,740.740 INFO    ] Initializing speech engine...
[2026-08-25 19:32:42,749.749 INFO    ] 2026-08-25 19:32:42
[2026-08-25 19:32:43,023.023 INFO    ] 2026-08-25 19:32:42
[2026-08-25 19:32:43,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:32:43,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:32:43,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:32:43,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:32:43,427.427 INFO    ] time= 25/08/2026 19:32:43
[2026-08-25 19:32:43,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:32:43,459.459 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:32:43,540.540 INFO    ] No existing commands found in stream
[2026-08-25 19:32:48,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:32:48,558.558 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 19:32:52,094.094 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:32:52,096.096 INFO    ] Checking for system updates...
[2026-08-25 19:32:52,133.133 INFO    ] 200
[2026-08-25 19:32:52,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:52,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:32:52,193.193 INFO    ] No update needed
[2026-08-25 19:32:52,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 19:32:52,229.229 INFO    ] 200
[2026-08-25 19:32:52,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:32:52,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:32:52,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:32:52,318.318 INFO    ] No camera update needed
[2026-08-25 19:32:52,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:32:52,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:32:52,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:32:52,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:32:54,373.373 INFO    ] ================================================
[2026-08-25 19:32:54,388.388 INFO    ] Launching Daemon at Tue Aug 25 19:32:54 IST 2026
[2026-08-25 19:32:54,399.399 INFO    ] ================================================
[2026-08-25 19:32:54,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:32:54
[2026-08-25 19:32:55,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:32:55,822.822 INFO    ] Initializing speech engine...
[2026-08-25 19:32:55,832.832 INFO    ] 2026-08-25 19:32:55
[2026-08-25 19:32:56,092.092 INFO    ] 2026-08-25 19:32:56
[2026-08-25 19:32:56,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:32:56,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:32:56,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:32:56,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:32:56,545.545 INFO    ] time= 25/08/2026 19:32:56
[2026-08-25 19:32:56,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:32:56,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:32:56,772.772 INFO    ] No existing commands found in stream
[2026-08-25 19:33:01,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:33:01,800.800 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 19:33:04,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:33:04,176.176 INFO    ] Checking for system updates...
[2026-08-25 19:33:04,211.211 INFO    ] 200
[2026-08-25 19:33:04,214.214 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:04,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:33:04,273.273 INFO    ] No update needed
[2026-08-25 19:33:04,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 19:33:04,311.311 INFO    ] 200
[2026-08-25 19:33:04,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:04,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:33:04,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:33:04,410.410 INFO    ] No camera update needed
[2026-08-25 19:33:04,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:33:04,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:33:04,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:33:04,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:33:06,464.464 INFO    ] ================================================
[2026-08-25 19:33:06,479.479 INFO    ] Launching Daemon at Tue Aug 25 19:33:06 IST 2026
[2026-08-25 19:33:06,490.490 INFO    ] ================================================
[2026-08-25 19:33:07,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:33:07
[2026-08-25 19:33:07,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:33:07,953.953 INFO    ] Initializing speech engine...
[2026-08-25 19:33:07,959.959 INFO    ] 2026-08-25 19:33:07
[2026-08-25 19:33:08,218.218 INFO    ] 2026-08-25 19:33:08
[2026-08-25 19:33:08,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:33:08,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:33:08,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:33:09,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:33:09,953.953 INFO    ] time= 25/08/2026 19:33:09
[2026-08-25 19:33:09,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:33:09,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:33:10,087.087 INFO    ] No existing commands found in stream
[2026-08-25 19:33:15,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:33:15,108.108 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 19:33:18,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:33:18,166.166 INFO    ] Checking for system updates...
[2026-08-25 19:33:18,204.204 INFO    ] 200
[2026-08-25 19:33:18,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:18,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:33:18,265.265 INFO    ] No update needed
[2026-08-25 19:33:18,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 19:33:18,303.303 INFO    ] 200
[2026-08-25 19:33:18,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:18,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:33:18,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:33:18,408.408 INFO    ] No camera update needed
[2026-08-25 19:33:18,410.410 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:33:18,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:33:18,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:33:18,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:33:20,462.462 INFO    ] ================================================
[2026-08-25 19:33:20,477.477 INFO    ] Launching Daemon at Tue Aug 25 19:33:20 IST 2026
[2026-08-25 19:33:20,488.488 INFO    ] ================================================
[2026-08-25 19:33:21,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:33:21
[2026-08-25 19:33:21,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:33:21,927.927 INFO    ] Initializing speech engine...
[2026-08-25 19:33:21,937.937 INFO    ] 2026-08-25 19:33:21
[2026-08-25 19:33:22,196.196 INFO    ] 2026-08-25 19:33:22
[2026-08-25 19:33:22,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:33:23,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:33:23,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:33:23,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:33:23,710.710 INFO    ] time= 25/08/2026 19:33:23
[2026-08-25 19:33:23,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:33:23,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:33:23,793.793 INFO    ] No existing commands found in stream
[2026-08-25 19:33:28,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:33:28,808.808 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 19:33:29,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:33:29,357.357 INFO    ] Checking for system updates...
[2026-08-25 19:33:29,392.392 INFO    ] 200
[2026-08-25 19:33:29,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:29,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:33:29,456.456 INFO    ] No update needed
[2026-08-25 19:33:29,458.458 INFO    ] Checking for camera pi updates...
[2026-08-25 19:33:29,494.494 INFO    ] 200
[2026-08-25 19:33:29,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:29,539.539 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:33:29,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:33:29,618.618 INFO    ] No camera update needed
[2026-08-25 19:33:29,620.620 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:33:29,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:33:29,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:33:29,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:33:31,676.676 INFO    ] ================================================
[2026-08-25 19:33:31,692.692 INFO    ] Launching Daemon at Tue Aug 25 19:33:31 IST 2026
[2026-08-25 19:33:31,702.702 INFO    ] ================================================
[2026-08-25 19:33:32,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:33:32
[2026-08-25 19:33:32,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:33:33,205.205 INFO    ] Initializing speech engine...
[2026-08-25 19:33:33,216.216 INFO    ] 2026-08-25 19:33:33
[2026-08-25 19:33:33,464.464 INFO    ] 2026-08-25 19:33:33
[2026-08-25 19:33:33,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:33:33,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:33:33,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:33:34,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:33:34,975.975 INFO    ] time= 25/08/2026 19:33:34
[2026-08-25 19:33:34,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:33:34,990.990 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:33:35,069.069 INFO    ] No existing commands found in stream
[2026-08-25 19:33:40,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:33:40,081.081 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 19:33:40,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:33:40,636.636 INFO    ] Checking for system updates...
[2026-08-25 19:33:40,680.680 INFO    ] 200
[2026-08-25 19:33:40,684.684 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:40,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:33:40,745.745 INFO    ] No update needed
[2026-08-25 19:33:40,749.749 INFO    ] Checking for camera pi updates...
[2026-08-25 19:33:40,784.784 INFO    ] 200
[2026-08-25 19:33:40,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:40,828.828 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:33:40,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:33:40,879.879 INFO    ] No camera update needed
[2026-08-25 19:33:40,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:33:40,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:33:40,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:33:40,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:33:42,938.938 INFO    ] ================================================
[2026-08-25 19:33:42,953.953 INFO    ] Launching Daemon at Tue Aug 25 19:33:42 IST 2026
[2026-08-25 19:33:42,963.963 INFO    ] ================================================
[2026-08-25 19:33:43,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:33:43
[2026-08-25 19:33:44,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:33:44,419.419 INFO    ] Initializing speech engine...
[2026-08-25 19:33:44,428.428 INFO    ] 2026-08-25 19:33:44
[2026-08-25 19:33:44,685.685 INFO    ] 2026-08-25 19:33:44
[2026-08-25 19:33:44,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:33:44,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:33:44,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:33:45,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:33:45,130.130 INFO    ] time= 25/08/2026 19:33:45
[2026-08-25 19:33:45,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:33:45,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:33:45,200.200 INFO    ] No existing commands found in stream
[2026-08-25 19:33:50,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:33:50,228.228 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 19:33:53,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:33:53,390.390 INFO    ] Checking for system updates...
[2026-08-25 19:33:53,430.430 INFO    ] 200
[2026-08-25 19:33:53,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:53,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:33:53,495.495 INFO    ] No update needed
[2026-08-25 19:33:53,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 19:33:53,535.535 INFO    ] 200
[2026-08-25 19:33:53,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:33:53,578.578 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:33:53,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:33:53,628.628 INFO    ] No camera update needed
[2026-08-25 19:33:53,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:33:53,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:33:53,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:33:53,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:33:55,682.682 INFO    ] ================================================
[2026-08-25 19:33:55,697.697 INFO    ] Launching Daemon at Tue Aug 25 19:33:55 IST 2026
[2026-08-25 19:33:55,708.708 INFO    ] ================================================
[2026-08-25 19:33:56,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:33:56
[2026-08-25 19:33:57,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:33:57,392.392 INFO    ] Initializing speech engine...
[2026-08-25 19:33:57,403.403 INFO    ] 2026-08-25 19:33:57
[2026-08-25 19:33:57,713.713 INFO    ] 2026-08-25 19:33:57
[2026-08-25 19:33:57,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:33:58,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:33:58,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:33:58,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:33:58,219.219 INFO    ] time= 25/08/2026 19:33:58
[2026-08-25 19:33:58,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:33:58,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:33:58,375.375 INFO    ] No existing commands found in stream
[2026-08-25 19:34:03,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:34:03,408.408 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 19:34:07,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:34:07,539.539 INFO    ] Checking for system updates...
[2026-08-25 19:34:07,577.577 INFO    ] 200
[2026-08-25 19:34:07,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:07,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:34:07,634.634 INFO    ] No update needed
[2026-08-25 19:34:07,637.637 INFO    ] Checking for camera pi updates...
[2026-08-25 19:34:07,671.671 INFO    ] 200
[2026-08-25 19:34:07,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:07,720.720 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:34:07,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:34:07,863.863 INFO    ] No camera update needed
[2026-08-25 19:34:07,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:34:07,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:34:07,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:34:07,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:34:09,919.919 INFO    ] ================================================
[2026-08-25 19:34:09,934.934 INFO    ] Launching Daemon at Tue Aug 25 19:34:09 IST 2026
[2026-08-25 19:34:09,945.945 INFO    ] ================================================
[2026-08-25 19:34:10,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:34:10
[2026-08-25 19:34:11,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:34:11,403.403 INFO    ] Initializing speech engine...
[2026-08-25 19:34:11,429.429 INFO    ] 2026-08-25 19:34:11
[2026-08-25 19:34:11,710.710 INFO    ] 2026-08-25 19:34:11
[2026-08-25 19:34:11,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:34:11,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:34:11,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:34:12,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:34:12,138.138 INFO    ] time= 25/08/2026 19:34:12
[2026-08-25 19:34:12,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:34:12,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:34:12,302.302 INFO    ] No existing commands found in stream
[2026-08-25 19:34:17,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:34:17,330.330 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 19:34:20,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:34:20,713.713 INFO    ] Checking for system updates...
[2026-08-25 19:34:20,749.749 INFO    ] 200
[2026-08-25 19:34:20,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:20,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:34:20,814.814 INFO    ] No update needed
[2026-08-25 19:34:20,817.817 INFO    ] Checking for camera pi updates...
[2026-08-25 19:34:20,850.850 INFO    ] 200
[2026-08-25 19:34:20,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:20,892.892 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:34:20,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:34:20,948.948 INFO    ] No camera update needed
[2026-08-25 19:34:20,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:34:20,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:34:20,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:34:20,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:34:23,002.002 INFO    ] ================================================
[2026-08-25 19:34:23,018.018 INFO    ] Launching Daemon at Tue Aug 25 19:34:23 IST 2026
[2026-08-25 19:34:23,029.029 INFO    ] ================================================
[2026-08-25 19:34:23,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:34:23
[2026-08-25 19:34:24,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:34:24,473.473 INFO    ] Initializing speech engine...
[2026-08-25 19:34:24,479.479 INFO    ] 2026-08-25 19:34:24
[2026-08-25 19:34:24,740.740 INFO    ] 2026-08-25 19:34:24
[2026-08-25 19:34:24,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:34:25,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:34:25,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:34:25,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:34:25,231.231 INFO    ] time= 25/08/2026 19:34:25
[2026-08-25 19:34:25,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:34:25,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:34:25,450.450 INFO    ] No existing commands found in stream
[2026-08-25 19:34:30,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:34:30,479.479 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 19:34:31,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:34:31,403.403 INFO    ] Checking for system updates...
[2026-08-25 19:34:31,442.442 INFO    ] 200
[2026-08-25 19:34:31,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:31,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:34:31,507.507 INFO    ] No update needed
[2026-08-25 19:34:31,510.510 INFO    ] Checking for camera pi updates...
[2026-08-25 19:34:31,543.543 INFO    ] 200
[2026-08-25 19:34:31,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:31,586.586 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:34:31,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:34:31,633.633 INFO    ] No camera update needed
[2026-08-25 19:34:31,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:34:31,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:34:31,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:34:31,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:34:33,689.689 INFO    ] ================================================
[2026-08-25 19:34:33,704.704 INFO    ] Launching Daemon at Tue Aug 25 19:34:33 IST 2026
[2026-08-25 19:34:33,715.715 INFO    ] ================================================
[2026-08-25 19:34:34,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:34:34
[2026-08-25 19:34:34,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:34:35,299.299 INFO    ] Initializing speech engine...
[2026-08-25 19:34:35,311.311 INFO    ] 2026-08-25 19:34:35
[2026-08-25 19:34:35,583.583 INFO    ] 2026-08-25 19:34:35
[2026-08-25 19:34:35,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:34:35,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:34:35,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:34:36,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:34:36,088.088 INFO    ] time= 25/08/2026 19:34:36
[2026-08-25 19:34:36,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:34:36,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:34:36,303.303 INFO    ] No existing commands found in stream
[2026-08-25 19:34:41,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:34:41,329.329 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 19:34:43,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:34:43,045.045 INFO    ] Checking for system updates...
[2026-08-25 19:34:43,082.082 INFO    ] 200
[2026-08-25 19:34:43,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:43,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:34:43,142.142 INFO    ] No update needed
[2026-08-25 19:34:43,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 19:34:43,180.180 INFO    ] 200
[2026-08-25 19:34:43,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:43,230.230 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:34:43,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:34:43,287.287 INFO    ] No camera update needed
[2026-08-25 19:34:43,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:34:43,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:34:43,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:34:43,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:34:45,346.346 INFO    ] ================================================
[2026-08-25 19:34:45,361.361 INFO    ] Launching Daemon at Tue Aug 25 19:34:45 IST 2026
[2026-08-25 19:34:45,372.372 INFO    ] ================================================
[2026-08-25 19:34:45,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:34:45
[2026-08-25 19:34:46,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:34:46,788.788 INFO    ] Initializing speech engine...
[2026-08-25 19:34:46,795.795 INFO    ] 2026-08-25 19:34:46
[2026-08-25 19:34:47,093.093 INFO    ] 2026-08-25 19:34:47
[2026-08-25 19:34:47,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:34:47,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:34:47,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:34:47,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:34:47,595.595 INFO    ] time= 25/08/2026 19:34:47
[2026-08-25 19:34:47,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:34:47,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:34:47,797.797 INFO    ] No existing commands found in stream
[2026-08-25 19:34:52,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:34:52,812.812 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 19:34:54,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:34:54,266.266 INFO    ] Checking for system updates...
[2026-08-25 19:34:54,302.302 INFO    ] 200
[2026-08-25 19:34:54,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:54,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:34:54,359.359 INFO    ] No update needed
[2026-08-25 19:34:54,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 19:34:54,399.399 INFO    ] 200
[2026-08-25 19:34:54,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:34:54,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:34:54,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:34:54,507.507 INFO    ] No camera update needed
[2026-08-25 19:34:54,510.510 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:34:54,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:34:54,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:34:54,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:34:56,563.563 INFO    ] ================================================
[2026-08-25 19:34:56,578.578 INFO    ] Launching Daemon at Tue Aug 25 19:34:56 IST 2026
[2026-08-25 19:34:56,588.588 INFO    ] ================================================
[2026-08-25 19:34:57,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:34:57
[2026-08-25 19:34:57,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:34:58,236.236 INFO    ] Initializing speech engine...
[2026-08-25 19:34:58,248.248 INFO    ] 2026-08-25 19:34:58
[2026-08-25 19:34:58,543.543 INFO    ] 2026-08-25 19:34:58
[2026-08-25 19:34:58,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:34:58,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:34:58,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:34:58,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:34:59,038.038 INFO    ] time= 25/08/2026 19:34:58
[2026-08-25 19:34:59,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:34:59,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:34:59,238.238 INFO    ] No existing commands found in stream
[2026-08-25 19:35:04,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:35:04,267.267 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 19:35:05,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:35:05,021.021 INFO    ] Checking for system updates...
[2026-08-25 19:35:05,058.058 INFO    ] 200
[2026-08-25 19:35:05,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:05,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:35:05,117.117 INFO    ] No update needed
[2026-08-25 19:35:05,120.120 INFO    ] Checking for camera pi updates...
[2026-08-25 19:35:05,155.155 INFO    ] 200
[2026-08-25 19:35:05,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:05,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:35:05,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:35:05,257.257 INFO    ] No camera update needed
[2026-08-25 19:35:05,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:35:05,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:35:05,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:35:05,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:35:07,314.314 INFO    ] ================================================
[2026-08-25 19:35:07,329.329 INFO    ] Launching Daemon at Tue Aug 25 19:35:07 IST 2026
[2026-08-25 19:35:07,340.340 INFO    ] ================================================
[2026-08-25 19:35:08,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:35:08
[2026-08-25 19:35:08,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:35:09,017.017 INFO    ] Initializing speech engine...
[2026-08-25 19:35:09,028.028 INFO    ] 2026-08-25 19:35:09
[2026-08-25 19:35:09,346.346 INFO    ] 2026-08-25 19:35:09
[2026-08-25 19:35:09,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:35:09,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:35:09,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:35:09,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:35:09,855.855 INFO    ] time= 25/08/2026 19:35:09
[2026-08-25 19:35:09,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:35:09,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:35:10,036.036 INFO    ] No existing commands found in stream
[2026-08-25 19:35:15,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:35:15,071.071 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 19:35:20,436.436 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:35:20,439.439 INFO    ] Checking for system updates...
[2026-08-25 19:35:20,475.475 INFO    ] 200
[2026-08-25 19:35:20,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:20,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:35:20,535.535 INFO    ] No update needed
[2026-08-25 19:35:20,537.537 INFO    ] Checking for camera pi updates...
[2026-08-25 19:35:20,576.576 INFO    ] 200
[2026-08-25 19:35:20,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:20,625.625 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:35:20,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:35:20,675.675 INFO    ] No camera update needed
[2026-08-25 19:35:20,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:35:20,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:35:20,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:35:20,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:35:22,731.731 INFO    ] ================================================
[2026-08-25 19:35:22,747.747 INFO    ] Launching Daemon at Tue Aug 25 19:35:22 IST 2026
[2026-08-25 19:35:22,758.758 INFO    ] ================================================
[2026-08-25 19:35:23,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:35:23
[2026-08-25 19:35:23,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:35:24,209.209 INFO    ] Initializing speech engine...
[2026-08-25 19:35:24,217.217 INFO    ] 2026-08-25 19:35:24
[2026-08-25 19:35:24,518.518 INFO    ] 2026-08-25 19:35:24
[2026-08-25 19:35:24,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:35:24,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:35:24,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:35:24,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:35:24,949.949 INFO    ] time= 25/08/2026 19:35:24
[2026-08-25 19:35:24,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:35:24,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:35:25,068.068 INFO    ] No existing commands found in stream
[2026-08-25 19:35:30,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:35:30,107.107 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 19:35:35,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:35:35,200.200 INFO    ] Checking for system updates...
[2026-08-25 19:35:35,236.236 INFO    ] 200
[2026-08-25 19:35:35,238.238 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:35,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:35:35,302.302 INFO    ] No update needed
[2026-08-25 19:35:35,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 19:35:35,338.338 INFO    ] 200
[2026-08-25 19:35:35,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:35,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:35:35,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:35:35,428.428 INFO    ] No camera update needed
[2026-08-25 19:35:35,430.430 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:35:35,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:35:35,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:35:35,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:35:37,483.483 INFO    ] ================================================
[2026-08-25 19:35:37,499.499 INFO    ] Launching Daemon at Tue Aug 25 19:35:37 IST 2026
[2026-08-25 19:35:37,511.511 INFO    ] ================================================
[2026-08-25 19:35:38,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:35:38
[2026-08-25 19:35:38,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:35:38,962.962 INFO    ] Initializing speech engine...
[2026-08-25 19:35:38,969.969 INFO    ] 2026-08-25 19:35:38
[2026-08-25 19:35:39,228.228 INFO    ] 2026-08-25 19:35:39
[2026-08-25 19:35:39,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:35:39,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:35:39,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:35:39,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:35:39,713.713 INFO    ] time= 25/08/2026 19:35:39
[2026-08-25 19:35:39,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:35:39,782.782 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:35:39,924.924 INFO    ] No existing commands found in stream
[2026-08-25 19:35:44,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:35:44,941.941 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 19:35:49,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:35:49,300.300 INFO    ] Checking for system updates...
[2026-08-25 19:35:49,336.336 INFO    ] 200
[2026-08-25 19:35:49,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:49,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:35:49,394.394 INFO    ] No update needed
[2026-08-25 19:35:49,397.397 INFO    ] Checking for camera pi updates...
[2026-08-25 19:35:49,432.432 INFO    ] 200
[2026-08-25 19:35:49,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:35:49,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:35:49,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:35:49,541.541 INFO    ] No camera update needed
[2026-08-25 19:35:49,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:35:49,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:35:49,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:35:49,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:35:51,599.599 INFO    ] ================================================
[2026-08-25 19:35:51,616.616 INFO    ] Launching Daemon at Tue Aug 25 19:35:51 IST 2026
[2026-08-25 19:35:51,627.627 INFO    ] ================================================
[2026-08-25 19:35:52,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:35:52
[2026-08-25 19:35:52,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:35:53,088.088 INFO    ] Initializing speech engine...
[2026-08-25 19:35:53,105.105 INFO    ] 2026-08-25 19:35:53
[2026-08-25 19:35:53,364.364 INFO    ] 2026-08-25 19:35:53
[2026-08-25 19:35:53,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:35:53,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:35:53,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:35:53,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:35:53,916.916 INFO    ] time= 25/08/2026 19:35:53
[2026-08-25 19:35:53,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:35:53,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:35:54,070.070 INFO    ] No existing commands found in stream
[2026-08-25 19:35:59,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:35:59,088.088 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-08-25 19:36:01,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:36:01,799.799 INFO    ] Checking for system updates...
[2026-08-25 19:36:01,835.835 INFO    ] 200
[2026-08-25 19:36:01,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:01,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:36:01,892.892 INFO    ] No update needed
[2026-08-25 19:36:01,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 19:36:01,927.927 INFO    ] 200
[2026-08-25 19:36:01,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:01,995.995 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:36:02,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:36:02,081.081 INFO    ] No camera update needed
[2026-08-25 19:36:02,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:36:02,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:36:02,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:36:02,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:36:04,153.153 INFO    ] ================================================
[2026-08-25 19:36:04,170.170 INFO    ] Launching Daemon at Tue Aug 25 19:36:04 IST 2026
[2026-08-25 19:36:04,181.181 INFO    ] ================================================
[2026-08-25 19:36:04,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:36:04
[2026-08-25 19:36:05,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:36:05,622.622 INFO    ] Initializing speech engine...
[2026-08-25 19:36:05,628.628 INFO    ] 2026-08-25 19:36:05
[2026-08-25 19:36:05,926.926 INFO    ] 2026-08-25 19:36:05
[2026-08-25 19:36:05,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:36:06,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:36:06,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:36:06,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:36:06,322.322 INFO    ] time= 25/08/2026 19:36:06
[2026-08-25 19:36:06,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:36:06,357.357 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:36:06,440.440 INFO    ] No existing commands found in stream
[2026-08-25 19:36:11,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:36:11,468.468 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 19:36:14,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:36:14,737.737 INFO    ] Checking for system updates...
[2026-08-25 19:36:14,777.777 INFO    ] 200
[2026-08-25 19:36:14,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:14,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:36:14,835.835 INFO    ] No update needed
[2026-08-25 19:36:14,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 19:36:14,875.875 INFO    ] 200
[2026-08-25 19:36:14,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:14,917.917 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:36:15,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:36:15,067.067 INFO    ] No camera update needed
[2026-08-25 19:36:15,069.069 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:36:15,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:36:15,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:36:15,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:36:17,123.123 INFO    ] ================================================
[2026-08-25 19:36:17,138.138 INFO    ] Launching Daemon at Tue Aug 25 19:36:17 IST 2026
[2026-08-25 19:36:17,149.149 INFO    ] ================================================
[2026-08-25 19:36:17,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:36:17
[2026-08-25 19:36:18,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:36:18,566.566 INFO    ] Initializing speech engine...
[2026-08-25 19:36:18,575.575 INFO    ] 2026-08-25 19:36:18
[2026-08-25 19:36:18,839.839 INFO    ] 2026-08-25 19:36:18
[2026-08-25 19:36:18,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:36:19,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:36:19,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:36:19,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:36:19,283.283 INFO    ] time= 25/08/2026 19:36:19
[2026-08-25 19:36:19,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:36:19,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:36:19,369.369 INFO    ] No existing commands found in stream
[2026-08-25 19:36:24,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:36:24,380.380 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 19:36:27,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:36:27,968.968 INFO    ] Checking for system updates...
[2026-08-25 19:36:28,003.003 INFO    ] 200
[2026-08-25 19:36:28,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:28,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:36:28,062.062 INFO    ] No update needed
[2026-08-25 19:36:28,065.065 INFO    ] Checking for camera pi updates...
[2026-08-25 19:36:28,099.099 INFO    ] 200
[2026-08-25 19:36:28,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:28,143.143 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:36:28,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:36:28,198.198 INFO    ] No camera update needed
[2026-08-25 19:36:28,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:36:28,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:36:28,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:36:28,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:36:30,254.254 INFO    ] ================================================
[2026-08-25 19:36:30,269.269 INFO    ] Launching Daemon at Tue Aug 25 19:36:30 IST 2026
[2026-08-25 19:36:30,280.280 INFO    ] ================================================
[2026-08-25 19:36:30,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:36:30
[2026-08-25 19:36:31,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:36:31,914.914 INFO    ] Initializing speech engine...
[2026-08-25 19:36:31,925.925 INFO    ] 2026-08-25 19:36:31
[2026-08-25 19:36:32,211.211 INFO    ] 2026-08-25 19:36:32
[2026-08-25 19:36:32,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:36:32,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:36:32,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:36:32,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:36:32,793.793 INFO    ] time= 25/08/2026 19:36:32
[2026-08-25 19:36:32,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:36:32,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:36:32,961.961 INFO    ] No existing commands found in stream
[2026-08-25 19:36:37,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:36:37,995.995 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 19:36:42,370.370 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:36:42,373.373 INFO    ] Checking for system updates...
[2026-08-25 19:36:42,410.410 INFO    ] 200
[2026-08-25 19:36:42,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:42,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:36:42,471.471 INFO    ] No update needed
[2026-08-25 19:36:42,473.473 INFO    ] Checking for camera pi updates...
[2026-08-25 19:36:42,513.513 INFO    ] 200
[2026-08-25 19:36:42,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:42,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:36:42,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:36:42,616.616 INFO    ] No camera update needed
[2026-08-25 19:36:42,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:36:42,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:36:42,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:36:42,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:36:44,673.673 INFO    ] ================================================
[2026-08-25 19:36:44,692.692 INFO    ] Launching Daemon at Tue Aug 25 19:36:44 IST 2026
[2026-08-25 19:36:44,703.703 INFO    ] ================================================
[2026-08-25 19:36:45,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:36:45
[2026-08-25 19:36:45,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:36:46,168.168 INFO    ] Initializing speech engine...
[2026-08-25 19:36:46,178.178 INFO    ] 2026-08-25 19:36:46
[2026-08-25 19:36:46,432.432 INFO    ] 2026-08-25 19:36:46
[2026-08-25 19:36:46,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:36:46,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:36:46,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:36:46,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:36:46,983.983 INFO    ] time= 25/08/2026 19:36:46
[2026-08-25 19:36:47,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:36:47,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:36:47,122.122 INFO    ] No existing commands found in stream
[2026-08-25 19:36:52,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:36:52,149.149 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 19:36:52,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:36:52,954.954 INFO    ] Checking for system updates...
[2026-08-25 19:36:52,990.990 INFO    ] 200
[2026-08-25 19:36:52,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:53,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:36:53,047.047 INFO    ] No update needed
[2026-08-25 19:36:53,050.050 INFO    ] Checking for camera pi updates...
[2026-08-25 19:36:53,083.083 INFO    ] 200
[2026-08-25 19:36:53,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:36:53,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:36:53,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:36:53,180.180 INFO    ] No camera update needed
[2026-08-25 19:36:53,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:36:53,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:36:53,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:36:53,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:36:55,236.236 INFO    ] ================================================
[2026-08-25 19:36:55,252.252 INFO    ] Launching Daemon at Tue Aug 25 19:36:55 IST 2026
[2026-08-25 19:36:55,263.263 INFO    ] ================================================
[2026-08-25 19:36:55,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:36:55
[2026-08-25 19:36:56,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:36:56,910.910 INFO    ] Initializing speech engine...
[2026-08-25 19:36:56,920.920 INFO    ] 2026-08-25 19:36:56
[2026-08-25 19:36:57,241.241 INFO    ] 2026-08-25 19:36:57
[2026-08-25 19:36:57,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:36:57,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:36:57,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:36:57,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:36:57,760.760 INFO    ] time= 25/08/2026 19:36:57
[2026-08-25 19:36:57,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:36:57,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:36:57,921.921 INFO    ] No existing commands found in stream
[2026-08-25 19:37:02,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:37:02,941.941 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 19:37:04,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:37:04,752.752 INFO    ] Checking for system updates...
[2026-08-25 19:37:04,789.789 INFO    ] 200
[2026-08-25 19:37:04,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:04,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:37:04,848.848 INFO    ] No update needed
[2026-08-25 19:37:04,850.850 INFO    ] Checking for camera pi updates...
[2026-08-25 19:37:04,885.885 INFO    ] 200
[2026-08-25 19:37:04,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:04,931.931 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:37:04,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:37:04,981.981 INFO    ] No camera update needed
[2026-08-25 19:37:04,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:37:04,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:37:04,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:37:04,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:37:07,039.039 INFO    ] ================================================
[2026-08-25 19:37:07,055.055 INFO    ] Launching Daemon at Tue Aug 25 19:37:07 IST 2026
[2026-08-25 19:37:07,065.065 INFO    ] ================================================
[2026-08-25 19:37:07,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:37:07
[2026-08-25 19:37:08,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:37:08,520.520 INFO    ] Initializing speech engine...
[2026-08-25 19:37:08,529.529 INFO    ] 2026-08-25 19:37:08
[2026-08-25 19:37:08,829.829 INFO    ] 2026-08-25 19:37:08
[2026-08-25 19:37:08,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:37:09,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:37:09,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:37:09,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:37:09,227.227 INFO    ] time= 25/08/2026 19:37:09
[2026-08-25 19:37:09,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:37:09,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:37:09,422.422 INFO    ] No existing commands found in stream
[2026-08-25 19:37:14,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:37:14,436.436 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 19:37:16,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:37:16,592.592 INFO    ] Checking for system updates...
[2026-08-25 19:37:16,627.627 INFO    ] 200
[2026-08-25 19:37:16,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:16,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:37:16,684.684 INFO    ] No update needed
[2026-08-25 19:37:16,687.687 INFO    ] Checking for camera pi updates...
[2026-08-25 19:37:16,720.720 INFO    ] 200
[2026-08-25 19:37:16,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:16,765.765 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:37:16,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:37:16,813.813 INFO    ] No camera update needed
[2026-08-25 19:37:16,815.815 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:37:16,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:37:16,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:37:16,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:37:18,867.867 INFO    ] ================================================
[2026-08-25 19:37:18,882.882 INFO    ] Launching Daemon at Tue Aug 25 19:37:18 IST 2026
[2026-08-25 19:37:18,893.893 INFO    ] ================================================
[2026-08-25 19:37:19,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:37:19
[2026-08-25 19:37:20,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:37:20,351.351 INFO    ] Initializing speech engine...
[2026-08-25 19:37:20,359.359 INFO    ] 2026-08-25 19:37:20
[2026-08-25 19:37:20,622.622 INFO    ] 2026-08-25 19:37:20
[2026-08-25 19:37:20,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:37:20,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:37:20,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:37:21,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:37:21,109.109 INFO    ] time= 25/08/2026 19:37:21
[2026-08-25 19:37:21,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:37:21,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:37:21,308.308 INFO    ] No existing commands found in stream
[2026-08-25 19:37:26,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:37:26,333.333 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 19:37:27,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:37:27,729.729 INFO    ] Checking for system updates...
[2026-08-25 19:37:27,766.766 INFO    ] 200
[2026-08-25 19:37:27,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:27,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:37:27,822.822 INFO    ] No update needed
[2026-08-25 19:37:27,825.825 INFO    ] Checking for camera pi updates...
[2026-08-25 19:37:27,862.862 INFO    ] 200
[2026-08-25 19:37:27,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:27,905.905 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:37:27,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:37:27,950.950 INFO    ] No camera update needed
[2026-08-25 19:37:27,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:37:27,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:37:27,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:37:27,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:37:30,006.006 INFO    ] ================================================
[2026-08-25 19:37:30,022.022 INFO    ] Launching Daemon at Tue Aug 25 19:37:30 IST 2026
[2026-08-25 19:37:30,032.032 INFO    ] ================================================
[2026-08-25 19:37:30,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:37:30
[2026-08-25 19:37:31,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:37:31,669.669 INFO    ] Initializing speech engine...
[2026-08-25 19:37:31,681.681 INFO    ] 2026-08-25 19:37:31
[2026-08-25 19:37:31,993.993 INFO    ] 2026-08-25 19:37:31
[2026-08-25 19:37:32,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:37:32,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:37:32,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:37:32,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:37:32,523.523 INFO    ] time= 25/08/2026 19:37:32
[2026-08-25 19:37:32,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:37:32,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:37:32,665.665 INFO    ] No existing commands found in stream
[2026-08-25 19:37:37,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:37:37,697.697 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 19:37:41,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:37:41,075.075 INFO    ] Checking for system updates...
[2026-08-25 19:37:41,110.110 INFO    ] 200
[2026-08-25 19:37:41,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:41,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:37:41,167.167 INFO    ] No update needed
[2026-08-25 19:37:41,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 19:37:41,203.203 INFO    ] 200
[2026-08-25 19:37:41,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:41,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:37:41,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:37:41,303.303 INFO    ] No camera update needed
[2026-08-25 19:37:41,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:37:41,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:37:41,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:37:41,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:37:43,358.358 INFO    ] ================================================
[2026-08-25 19:37:43,373.373 INFO    ] Launching Daemon at Tue Aug 25 19:37:43 IST 2026
[2026-08-25 19:37:43,383.383 INFO    ] ================================================
[2026-08-25 19:37:43,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:37:43
[2026-08-25 19:37:44,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:37:44,803.803 INFO    ] Initializing speech engine...
[2026-08-25 19:37:44,815.815 INFO    ] 2026-08-25 19:37:44
[2026-08-25 19:37:45,066.066 INFO    ] 2026-08-25 19:37:45
[2026-08-25 19:37:45,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:37:45,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:37:45,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:37:45,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:37:45,624.624 INFO    ] time= 25/08/2026 19:37:45
[2026-08-25 19:37:45,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:37:45,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:37:45,777.777 INFO    ] No existing commands found in stream
[2026-08-25 19:37:50,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:37:50,800.800 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 19:37:52,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:37:52,992.992 INFO    ] Checking for system updates...
[2026-08-25 19:37:53,028.028 INFO    ] 200
[2026-08-25 19:37:53,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:53,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:37:53,087.087 INFO    ] No update needed
[2026-08-25 19:37:53,089.089 INFO    ] Checking for camera pi updates...
[2026-08-25 19:37:53,123.123 INFO    ] 200
[2026-08-25 19:37:53,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:37:53,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:37:53,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:37:53,227.227 INFO    ] No camera update needed
[2026-08-25 19:37:53,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:37:53,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:37:53,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:37:53,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:37:55,286.286 INFO    ] ================================================
[2026-08-25 19:37:55,329.329 INFO    ] Launching Daemon at Tue Aug 25 19:37:55 IST 2026
[2026-08-25 19:37:55,341.341 INFO    ] ================================================
[2026-08-25 19:37:55,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:37:55
[2026-08-25 19:37:56,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:37:56,981.981 INFO    ] Initializing speech engine...
[2026-08-25 19:37:56,994.994 INFO    ] 2026-08-25 19:37:56
[2026-08-25 19:37:57,280.280 INFO    ] 2026-08-25 19:37:57
[2026-08-25 19:37:57,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:37:57,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:37:57,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:37:57,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:37:57,829.829 INFO    ] time= 25/08/2026 19:37:57
[2026-08-25 19:37:57,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:37:57,855.855 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:37:57,991.991 INFO    ] No existing commands found in stream
[2026-08-25 19:38:03,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:38:03,019.019 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 19:38:04,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:38:04,592.592 INFO    ] Checking for system updates...
[2026-08-25 19:38:04,633.633 INFO    ] 200
[2026-08-25 19:38:04,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:06,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:38:06,905.905 INFO    ] No update needed
[2026-08-25 19:38:06,908.908 INFO    ] Checking for camera pi updates...
[2026-08-25 19:38:06,949.949 INFO    ] 200
[2026-08-25 19:38:06,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:07,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:38:07,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:38:07,053.053 INFO    ] No camera update needed
[2026-08-25 19:38:07,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:38:07,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:38:07,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:38:07,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:38:09,109.109 INFO    ] ================================================
[2026-08-25 19:38:09,124.124 INFO    ] Launching Daemon at Tue Aug 25 19:38:09 IST 2026
[2026-08-25 19:38:09,135.135 INFO    ] ================================================
[2026-08-25 19:38:09,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:38:09
[2026-08-25 19:38:10,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:38:10,566.566 INFO    ] Initializing speech engine...
[2026-08-25 19:38:10,576.576 INFO    ] 2026-08-25 19:38:10
[2026-08-25 19:38:10,827.827 INFO    ] 2026-08-25 19:38:10
[2026-08-25 19:38:10,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:38:11,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:38:11,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:38:11,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:38:11,204.204 INFO    ] time= 25/08/2026 19:38:11
[2026-08-25 19:38:11,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:38:11,257.257 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:38:11,397.397 INFO    ] No existing commands found in stream
[2026-08-25 19:38:16,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:38:16,419.419 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 19:38:20,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:38:20,641.641 INFO    ] Checking for system updates...
[2026-08-25 19:38:20,677.677 INFO    ] 200
[2026-08-25 19:38:20,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:20,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:38:20,736.736 INFO    ] No update needed
[2026-08-25 19:38:20,739.739 INFO    ] Checking for camera pi updates...
[2026-08-25 19:38:20,773.773 INFO    ] 200
[2026-08-25 19:38:20,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:20,816.816 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:38:20,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:38:20,968.968 INFO    ] No camera update needed
[2026-08-25 19:38:20,970.970 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:38:20,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:38:20,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:38:20,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:38:23,025.025 INFO    ] ================================================
[2026-08-25 19:38:23,040.040 INFO    ] Launching Daemon at Tue Aug 25 19:38:23 IST 2026
[2026-08-25 19:38:23,050.050 INFO    ] ================================================
[2026-08-25 19:38:23,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:38:23
[2026-08-25 19:38:24,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:38:24,504.504 INFO    ] Initializing speech engine...
[2026-08-25 19:38:24,510.510 INFO    ] 2026-08-25 19:38:24
[2026-08-25 19:38:24,772.772 INFO    ] 2026-08-25 19:38:24
[2026-08-25 19:38:24,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:38:25,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:38:25,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:38:25,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:38:25,252.252 INFO    ] time= 25/08/2026 19:38:25
[2026-08-25 19:38:25,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:38:25,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:38:25,464.464 INFO    ] No existing commands found in stream
[2026-08-25 19:38:30,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:38:30,489.489 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 19:38:31,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:38:31,031.031 INFO    ] Checking for system updates...
[2026-08-25 19:38:31,066.066 INFO    ] 200
[2026-08-25 19:38:31,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:31,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:38:31,127.127 INFO    ] No update needed
[2026-08-25 19:38:31,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 19:38:31,164.164 INFO    ] 200
[2026-08-25 19:38:31,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:31,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:38:31,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:38:31,261.261 INFO    ] No camera update needed
[2026-08-25 19:38:31,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:38:31,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:38:31,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:38:31,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:38:33,320.320 INFO    ] ================================================
[2026-08-25 19:38:33,334.334 INFO    ] Launching Daemon at Tue Aug 25 19:38:33 IST 2026
[2026-08-25 19:38:33,345.345 INFO    ] ================================================
[2026-08-25 19:38:33,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:38:33
[2026-08-25 19:38:34,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:38:34,761.761 INFO    ] Initializing speech engine...
[2026-08-25 19:38:34,770.770 INFO    ] 2026-08-25 19:38:34
[2026-08-25 19:38:35,020.020 INFO    ] 2026-08-25 19:38:35
[2026-08-25 19:38:35,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:38:35,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:38:35,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:38:35,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:38:35,486.486 INFO    ] time= 25/08/2026 19:38:35
[2026-08-25 19:38:35,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:38:35,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:38:35,700.700 INFO    ] No existing commands found in stream
[2026-08-25 19:38:40,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:38:40,739.739 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 19:38:42,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:38:42,021.021 INFO    ] Checking for system updates...
[2026-08-25 19:38:42,057.057 INFO    ] 200
[2026-08-25 19:38:42,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:42,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:38:42,114.114 INFO    ] No update needed
[2026-08-25 19:38:42,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 19:38:42,150.150 INFO    ] 200
[2026-08-25 19:38:42,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:42,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:38:42,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:38:42,246.246 INFO    ] No camera update needed
[2026-08-25 19:38:42,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:38:42,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:38:42,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:38:42,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:38:44,300.300 INFO    ] ================================================
[2026-08-25 19:38:44,314.314 INFO    ] Launching Daemon at Tue Aug 25 19:38:44 IST 2026
[2026-08-25 19:38:44,325.325 INFO    ] ================================================
[2026-08-25 19:38:44,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:38:44
[2026-08-25 19:38:45,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:38:45,775.775 INFO    ] Initializing speech engine...
[2026-08-25 19:38:45,778.778 INFO    ] 2026-08-25 19:38:45
[2026-08-25 19:38:46,074.074 INFO    ] 2026-08-25 19:38:46
[2026-08-25 19:38:46,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:38:46,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:38:46,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:38:46,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:38:46,472.472 INFO    ] time= 25/08/2026 19:38:46
[2026-08-25 19:38:46,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:38:46,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:38:46,597.597 INFO    ] No existing commands found in stream
[2026-08-25 19:38:51,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:38:51,630.630 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 19:38:55,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:38:55,603.603 INFO    ] Checking for system updates...
[2026-08-25 19:38:55,639.639 INFO    ] 200
[2026-08-25 19:38:55,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:55,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:38:55,697.697 INFO    ] No update needed
[2026-08-25 19:38:55,699.699 INFO    ] Checking for camera pi updates...
[2026-08-25 19:38:55,733.733 INFO    ] 200
[2026-08-25 19:38:55,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:38:55,775.775 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:38:55,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:38:55,832.832 INFO    ] No camera update needed
[2026-08-25 19:38:55,834.834 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:38:55,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:38:55,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:38:55,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:38:57,886.886 INFO    ] ================================================
[2026-08-25 19:38:57,901.901 INFO    ] Launching Daemon at Tue Aug 25 19:38:57 IST 2026
[2026-08-25 19:38:57,912.912 INFO    ] ================================================
[2026-08-25 19:38:58,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:38:58
[2026-08-25 19:38:59,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:38:59,371.371 INFO    ] Initializing speech engine...
[2026-08-25 19:38:59,380.380 INFO    ] 2026-08-25 19:38:59
[2026-08-25 19:38:59,638.638 INFO    ] 2026-08-25 19:38:59
[2026-08-25 19:38:59,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:38:59,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:38:59,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:39:00,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:39:00,134.134 INFO    ] time= 25/08/2026 19:39:00
[2026-08-25 19:39:00,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:39:00,192.192 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:39:00,338.338 INFO    ] No existing commands found in stream
[2026-08-25 19:39:05,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:39:05,353.353 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 19:39:08,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:39:08,113.113 INFO    ] Checking for system updates...
[2026-08-25 19:39:08,149.149 INFO    ] 200
[2026-08-25 19:39:08,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:08,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:39:08,213.213 INFO    ] No update needed
[2026-08-25 19:39:08,216.216 INFO    ] Checking for camera pi updates...
[2026-08-25 19:39:08,254.254 INFO    ] 200
[2026-08-25 19:39:08,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:08,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:39:08,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:39:08,349.349 INFO    ] No camera update needed
[2026-08-25 19:39:08,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:39:08,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:39:08,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:39:08,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:39:10,405.405 INFO    ] ================================================
[2026-08-25 19:39:10,420.420 INFO    ] Launching Daemon at Tue Aug 25 19:39:10 IST 2026
[2026-08-25 19:39:10,431.431 INFO    ] ================================================
[2026-08-25 19:39:11,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:39:11
[2026-08-25 19:39:11,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:39:11,884.884 INFO    ] Initializing speech engine...
[2026-08-25 19:39:11,894.894 INFO    ] 2026-08-25 19:39:11
[2026-08-25 19:39:12,151.151 INFO    ] 2026-08-25 19:39:12
[2026-08-25 19:39:12,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:39:12,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:39:12,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:39:12,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:39:12,701.701 INFO    ] time= 25/08/2026 19:39:12
[2026-08-25 19:39:12,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:39:12,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:39:12,856.856 INFO    ] No existing commands found in stream
[2026-08-25 19:39:17,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:39:17,871.871 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 19:39:19,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:39:19,633.633 INFO    ] Checking for system updates...
[2026-08-25 19:39:19,670.670 INFO    ] 200
[2026-08-25 19:39:19,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:19,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:39:19,741.741 INFO    ] No update needed
[2026-08-25 19:39:19,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 19:39:19,784.784 INFO    ] 200
[2026-08-25 19:39:19,787.787 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:19,830.830 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:39:19,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:39:19,883.883 INFO    ] No camera update needed
[2026-08-25 19:39:19,885.885 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:39:19,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:39:19,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:39:19,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:39:21,942.942 INFO    ] ================================================
[2026-08-25 19:39:21,958.958 INFO    ] Launching Daemon at Tue Aug 25 19:39:21 IST 2026
[2026-08-25 19:39:21,969.969 INFO    ] ================================================
[2026-08-25 19:39:22,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:39:22
[2026-08-25 19:39:23,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:39:23,478.478 INFO    ] Initializing speech engine...
[2026-08-25 19:39:23,492.492 INFO    ] 2026-08-25 19:39:23
[2026-08-25 19:39:23,775.775 INFO    ] 2026-08-25 19:39:23
[2026-08-25 19:39:23,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:39:24,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:39:24,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:39:24,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:39:24,301.301 INFO    ] time= 25/08/2026 19:39:24
[2026-08-25 19:39:24,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:39:24,380.380 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:39:24,507.507 INFO    ] No existing commands found in stream
[2026-08-25 19:39:29,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:39:29,536.536 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 19:39:31,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:39:31,043.043 INFO    ] Checking for system updates...
[2026-08-25 19:39:31,080.080 INFO    ] 200
[2026-08-25 19:39:31,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:31,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:39:31,147.147 INFO    ] No update needed
[2026-08-25 19:39:31,150.150 INFO    ] Checking for camera pi updates...
[2026-08-25 19:39:31,189.189 INFO    ] 200
[2026-08-25 19:39:31,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:31,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:39:31,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:39:31,294.294 INFO    ] No camera update needed
[2026-08-25 19:39:31,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:39:31,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:39:31,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:39:31,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:39:33,355.355 INFO    ] ================================================
[2026-08-25 19:39:33,370.370 INFO    ] Launching Daemon at Tue Aug 25 19:39:33 IST 2026
[2026-08-25 19:39:33,380.380 INFO    ] ================================================
[2026-08-25 19:39:33,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:39:33
[2026-08-25 19:39:34,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:39:34,957.957 INFO    ] Initializing speech engine...
[2026-08-25 19:39:34,970.970 INFO    ] 2026-08-25 19:39:34
[2026-08-25 19:39:35,287.287 INFO    ] 2026-08-25 19:39:35
[2026-08-25 19:39:35,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:39:35,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:39:35,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:39:35,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:39:35,813.813 INFO    ] time= 25/08/2026 19:39:35
[2026-08-25 19:39:35,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:39:35,860.860 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:39:35,986.986 INFO    ] No existing commands found in stream
[2026-08-25 19:39:41,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:39:41,015.015 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 19:39:45,162.162 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:39:45,165.165 INFO    ] Checking for system updates...
[2026-08-25 19:39:45,207.207 INFO    ] 200
[2026-08-25 19:39:45,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:45,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:39:45,272.272 INFO    ] No update needed
[2026-08-25 19:39:45,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 19:39:45,309.309 INFO    ] 200
[2026-08-25 19:39:45,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:45,360.360 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:39:45,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:39:45,406.406 INFO    ] No camera update needed
[2026-08-25 19:39:45,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:39:45,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:39:45,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:39:45,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:39:47,467.467 INFO    ] ================================================
[2026-08-25 19:39:47,482.482 INFO    ] Launching Daemon at Tue Aug 25 19:39:47 IST 2026
[2026-08-25 19:39:47,493.493 INFO    ] ================================================
[2026-08-25 19:39:48,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:39:48
[2026-08-25 19:39:48,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:39:48,921.921 INFO    ] Initializing speech engine...
[2026-08-25 19:39:48,928.928 INFO    ] 2026-08-25 19:39:48
[2026-08-25 19:39:49,177.177 INFO    ] 2026-08-25 19:39:49
[2026-08-25 19:39:49,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:39:49,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:39:49,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:39:49,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:39:49,658.658 INFO    ] time= 25/08/2026 19:39:49
[2026-08-25 19:39:49,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:39:49,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:39:49,903.903 INFO    ] No existing commands found in stream
[2026-08-25 19:39:54,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:39:54,919.919 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 19:39:57,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:39:57,605.605 INFO    ] Checking for system updates...
[2026-08-25 19:39:57,640.640 INFO    ] 200
[2026-08-25 19:39:57,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:57,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:39:57,697.697 INFO    ] No update needed
[2026-08-25 19:39:57,699.699 INFO    ] Checking for camera pi updates...
[2026-08-25 19:39:57,732.732 INFO    ] 200
[2026-08-25 19:39:57,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:39:57,776.776 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:39:57,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:39:57,823.823 INFO    ] No camera update needed
[2026-08-25 19:39:57,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:39:57,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:39:57,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:39:57,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:39:59,879.879 INFO    ] ================================================
[2026-08-25 19:39:59,895.895 INFO    ] Launching Daemon at Tue Aug 25 19:39:59 IST 2026
[2026-08-25 19:39:59,906.906 INFO    ] ================================================
[2026-08-25 19:40:00,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:40:00
[2026-08-25 19:40:01,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:40:01,565.565 INFO    ] Initializing speech engine...
[2026-08-25 19:40:01,573.573 INFO    ] 2026-08-25 19:40:01
[2026-08-25 19:40:01,837.837 INFO    ] 2026-08-25 19:40:01
[2026-08-25 19:40:01,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:40:02,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:40:02,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:40:02,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:40:02,313.313 INFO    ] time= 25/08/2026 19:40:02
[2026-08-25 19:40:02,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:40:02,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:40:02,428.428 INFO    ] No existing commands found in stream
[2026-08-25 19:40:07,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:40:07,440.440 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 19:40:11,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:40:11,284.284 INFO    ] Checking for system updates...
[2026-08-25 19:40:11,323.323 INFO    ] 200
[2026-08-25 19:40:11,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:11,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:40:11,381.381 INFO    ] No update needed
[2026-08-25 19:40:11,383.383 INFO    ] Checking for camera pi updates...
[2026-08-25 19:40:11,420.420 INFO    ] 200
[2026-08-25 19:40:11,422.422 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:11,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:40:11,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:40:11,522.522 INFO    ] No camera update needed
[2026-08-25 19:40:11,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:40:11,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:40:11,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:40:11,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:40:13,576.576 INFO    ] ================================================
[2026-08-25 19:40:13,593.593 INFO    ] Launching Daemon at Tue Aug 25 19:40:13 IST 2026
[2026-08-25 19:40:13,603.603 INFO    ] ================================================
[2026-08-25 19:40:14,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:40:14
[2026-08-25 19:40:14,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:40:15,189.189 INFO    ] Initializing speech engine...
[2026-08-25 19:40:15,202.202 INFO    ] 2026-08-25 19:40:15
[2026-08-25 19:40:15,470.470 INFO    ] 2026-08-25 19:40:15
[2026-08-25 19:40:15,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:40:15,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:40:15,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:40:15,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:40:15,977.977 INFO    ] time= 25/08/2026 19:40:15
[2026-08-25 19:40:16,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:40:16,041.041 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:40:16,175.175 INFO    ] No existing commands found in stream
[2026-08-25 19:40:21,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:40:21,205.205 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 19:40:23,990.990 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:40:23,993.993 INFO    ] Checking for system updates...
[2026-08-25 19:40:24,028.028 INFO    ] 200
[2026-08-25 19:40:24,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:24,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:24,091.091 INFO    ] No update needed
[2026-08-25 19:40:24,093.093 INFO    ] Checking for camera pi updates...
[2026-08-25 19:40:24,126.126 INFO    ] 200
[2026-08-25 19:40:24,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:24,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:40:24,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:24,315.315 INFO    ] No camera update needed
[2026-08-25 19:40:24,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:40:24,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:40:24,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:40:24,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:40:26,370.370 INFO    ] ================================================
[2026-08-25 19:40:26,385.385 INFO    ] Launching Daemon at Tue Aug 25 19:40:26 IST 2026
[2026-08-25 19:40:26,396.396 INFO    ] ================================================
[2026-08-25 19:40:26,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:40:26
[2026-08-25 19:40:27,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:40:27,852.852 INFO    ] Initializing speech engine...
[2026-08-25 19:40:27,862.862 INFO    ] 2026-08-25 19:40:27
[2026-08-25 19:40:28,128.128 INFO    ] 2026-08-25 19:40:28
[2026-08-25 19:40:28,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:40:28,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:40:28,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:40:28,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:40:28,536.536 INFO    ] time= 25/08/2026 19:40:28
[2026-08-25 19:40:28,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:40:28,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:40:28,622.622 INFO    ] No existing commands found in stream
[2026-08-25 19:40:33,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:40:33,660.660 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 19:40:35,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:40:35,485.485 INFO    ] Checking for system updates...
[2026-08-25 19:40:35,520.520 INFO    ] 200
[2026-08-25 19:40:35,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:35,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:35,578.578 INFO    ] No update needed
[2026-08-25 19:40:35,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 19:40:35,613.613 INFO    ] 200
[2026-08-25 19:40:35,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:35,660.660 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:40:35,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:35,710.710 INFO    ] No camera update needed
[2026-08-25 19:40:35,712.712 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:40:35,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:40:35,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:40:35,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:40:37,765.765 INFO    ] ================================================
[2026-08-25 19:40:37,781.781 INFO    ] Launching Daemon at Tue Aug 25 19:40:37 IST 2026
[2026-08-25 19:40:37,792.792 INFO    ] ================================================
[2026-08-25 19:40:38,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:40:38
[2026-08-25 19:40:38,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:40:39,259.259 INFO    ] Initializing speech engine...
[2026-08-25 19:40:39,269.269 INFO    ] 2026-08-25 19:40:39
[2026-08-25 19:40:39,537.537 INFO    ] 2026-08-25 19:40:39
[2026-08-25 19:40:39,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:40:39,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:40:39,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:40:39,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:40:39,945.945 INFO    ] time= 25/08/2026 19:40:39
[2026-08-25 19:40:39,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:40:39,978.978 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:40:40,125.125 INFO    ] No existing commands found in stream
[2026-08-25 19:40:45,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:40:45,152.152 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 19:40:46,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:40:46,253.253 INFO    ] Checking for system updates...
[2026-08-25 19:40:46,292.292 INFO    ] 200
[2026-08-25 19:40:46,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:46,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:46,354.354 INFO    ] No update needed
[2026-08-25 19:40:46,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 19:40:46,391.391 INFO    ] 200
[2026-08-25 19:40:46,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:46,437.437 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:40:46,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:46,491.491 INFO    ] No camera update needed
[2026-08-25 19:40:46,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:40:46,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:40:46,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:40:46,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:40:48,546.546 INFO    ] ================================================
[2026-08-25 19:40:48,561.561 INFO    ] Launching Daemon at Tue Aug 25 19:40:48 IST 2026
[2026-08-25 19:40:48,572.572 INFO    ] ================================================
[2026-08-25 19:40:49,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:40:49
[2026-08-25 19:40:49,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:40:50,000.000 INFO    ] Initializing speech engine...
[2026-08-25 19:40:50,009.009 INFO    ] 2026-08-25 19:40:50
[2026-08-25 19:40:50,297.297 INFO    ] 2026-08-25 19:40:50
[2026-08-25 19:40:50,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:40:50,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:40:50,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:40:50,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:40:50,780.780 INFO    ] time= 25/08/2026 19:40:50
[2026-08-25 19:40:50,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:40:50,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:40:50,978.978 INFO    ] No existing commands found in stream
[2026-08-25 19:40:55,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:40:55,992.992 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 19:40:56,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:40:56,644.644 INFO    ] Checking for system updates...
[2026-08-25 19:40:56,680.680 INFO    ] 200
[2026-08-25 19:40:56,682.682 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:56,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:56,737.737 INFO    ] No update needed
[2026-08-25 19:40:56,739.739 INFO    ] Checking for camera pi updates...
[2026-08-25 19:40:56,775.775 INFO    ] 200
[2026-08-25 19:40:56,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:40:56,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:40:56,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:40:56,870.870 INFO    ] No camera update needed
[2026-08-25 19:40:56,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:40:56,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:40:56,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:40:56,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:40:58,926.926 INFO    ] ================================================
[2026-08-25 19:40:58,941.941 INFO    ] Launching Daemon at Tue Aug 25 19:40:58 IST 2026
[2026-08-25 19:40:58,952.952 INFO    ] ================================================
[2026-08-25 19:40:59,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:40:59
[2026-08-25 19:41:00,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:41:00,404.404 INFO    ] Initializing speech engine...
[2026-08-25 19:41:00,412.412 INFO    ] 2026-08-25 19:41:00
[2026-08-25 19:41:00,672.672 INFO    ] 2026-08-25 19:41:00
[2026-08-25 19:41:00,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:41:00,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:41:00,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:41:01,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:41:01,131.131 INFO    ] time= 25/08/2026 19:41:01
[2026-08-25 19:41:01,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:41:01,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:41:01,358.358 INFO    ] No existing commands found in stream
[2026-08-25 19:41:06,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:41:06,376.376 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 19:41:07,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:41:07,781.781 INFO    ] Checking for system updates...
[2026-08-25 19:41:07,817.817 INFO    ] 200
[2026-08-25 19:41:07,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:07,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:41:07,873.873 INFO    ] No update needed
[2026-08-25 19:41:07,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 19:41:07,909.909 INFO    ] 200
[2026-08-25 19:41:07,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:07,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:41:08,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:41:08,003.003 INFO    ] No camera update needed
[2026-08-25 19:41:08,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:41:08,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:41:08,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:41:08,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:41:10,060.060 INFO    ] ================================================
[2026-08-25 19:41:10,076.076 INFO    ] Launching Daemon at Tue Aug 25 19:41:10 IST 2026
[2026-08-25 19:41:10,087.087 INFO    ] ================================================
[2026-08-25 19:41:10,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:41:10
[2026-08-25 19:41:11,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:41:11,531.531 INFO    ] Initializing speech engine...
[2026-08-25 19:41:11,539.539 INFO    ] 2026-08-25 19:41:11
[2026-08-25 19:41:11,797.797 INFO    ] 2026-08-25 19:41:11
[2026-08-25 19:41:11,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:41:12,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:41:12,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:41:12,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:41:12,277.277 INFO    ] time= 25/08/2026 19:41:12
[2026-08-25 19:41:12,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:41:12,346.346 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:41:12,487.487 INFO    ] No existing commands found in stream
[2026-08-25 19:41:17,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:41:17,506.506 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 19:41:19,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:41:19,630.630 INFO    ] Checking for system updates...
[2026-08-25 19:41:19,669.669 INFO    ] 200
[2026-08-25 19:41:19,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:19,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:41:19,726.726 INFO    ] No update needed
[2026-08-25 19:41:19,729.729 INFO    ] Checking for camera pi updates...
[2026-08-25 19:41:19,766.766 INFO    ] 200
[2026-08-25 19:41:19,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:19,810.810 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:41:19,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:41:19,857.857 INFO    ] No camera update needed
[2026-08-25 19:41:19,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:41:19,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:41:19,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:41:19,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:41:21,912.912 INFO    ] ================================================
[2026-08-25 19:41:21,928.928 INFO    ] Launching Daemon at Tue Aug 25 19:41:21 IST 2026
[2026-08-25 19:41:21,939.939 INFO    ] ================================================
[2026-08-25 19:41:22,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:41:22
[2026-08-25 19:41:23,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:41:23,382.382 INFO    ] Initializing speech engine...
[2026-08-25 19:41:23,391.391 INFO    ] 2026-08-25 19:41:23
[2026-08-25 19:41:23,643.643 INFO    ] 2026-08-25 19:41:23
[2026-08-25 19:41:23,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:41:23,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:41:23,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:41:24,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:41:24,039.039 INFO    ] time= 25/08/2026 19:41:24
[2026-08-25 19:41:24,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:41:24,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:41:24,235.235 INFO    ] No existing commands found in stream
[2026-08-25 19:41:29,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:41:29,263.263 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 19:41:33,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:41:33,656.656 INFO    ] Checking for system updates...
[2026-08-25 19:41:33,693.693 INFO    ] 200
[2026-08-25 19:41:33,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:33,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:41:33,758.758 INFO    ] No update needed
[2026-08-25 19:41:33,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 19:41:33,803.803 INFO    ] 200
[2026-08-25 19:41:33,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:33,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:41:33,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:41:33,914.914 INFO    ] No camera update needed
[2026-08-25 19:41:33,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:41:33,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:41:33,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:41:33,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:41:35,973.973 INFO    ] ================================================
[2026-08-25 19:41:35,987.987 INFO    ] Launching Daemon at Tue Aug 25 19:41:35 IST 2026
[2026-08-25 19:41:36,998.998 INFO    ] ================================================
[2026-08-25 19:41:36,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:41:36
[2026-08-25 19:41:37,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:41:37,419.419 INFO    ] Initializing speech engine...
[2026-08-25 19:41:37,435.435 INFO    ] 2026-08-25 19:41:37
[2026-08-25 19:41:37,688.688 INFO    ] 2026-08-25 19:41:37
[2026-08-25 19:41:37,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:41:37,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:41:37,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:41:38,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:41:38,160.160 INFO    ] time= 25/08/2026 19:41:38
[2026-08-25 19:41:38,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:41:38,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:41:38,384.384 INFO    ] No existing commands found in stream
[2026-08-25 19:41:43,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:41:43,411.411 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-08-25 19:41:46,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:41:46,924.924 INFO    ] Checking for system updates...
[2026-08-25 19:41:46,960.960 INFO    ] 200
[2026-08-25 19:41:46,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:47,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:41:47,025.025 INFO    ] No update needed
[2026-08-25 19:41:47,028.028 INFO    ] Checking for camera pi updates...
[2026-08-25 19:41:47,063.063 INFO    ] 200
[2026-08-25 19:41:47,065.065 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:47,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:41:47,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:41:47,159.159 INFO    ] No camera update needed
[2026-08-25 19:41:47,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:41:47,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:41:47,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:41:47,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:41:49,218.218 INFO    ] ================================================
[2026-08-25 19:41:49,233.233 INFO    ] Launching Daemon at Tue Aug 25 19:41:49 IST 2026
[2026-08-25 19:41:49,244.244 INFO    ] ================================================
[2026-08-25 19:41:49,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:41:49
[2026-08-25 19:41:50,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:41:50,665.665 INFO    ] Initializing speech engine...
[2026-08-25 19:41:50,674.674 INFO    ] 2026-08-25 19:41:50
[2026-08-25 19:41:50,963.963 INFO    ] 2026-08-25 19:41:50
[2026-08-25 19:41:50,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:41:51,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:41:51,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:41:51,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:41:51,422.422 INFO    ] time= 25/08/2026 19:41:51
[2026-08-25 19:41:51,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:41:51,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:41:51,624.624 INFO    ] No existing commands found in stream
[2026-08-25 19:41:56,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:41:56,639.639 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 19:41:57,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:41:57,823.823 INFO    ] Checking for system updates...
[2026-08-25 19:41:57,870.870 INFO    ] 200
[2026-08-25 19:41:57,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:57,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:41:57,936.936 INFO    ] No update needed
[2026-08-25 19:41:57,940.940 INFO    ] Checking for camera pi updates...
[2026-08-25 19:41:57,980.980 INFO    ] 200
[2026-08-25 19:41:57,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:41:58,028.028 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:41:58,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:41:58,075.075 INFO    ] No camera update needed
[2026-08-25 19:41:58,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:41:58,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:41:58,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:41:58,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:42:00,129.129 INFO    ] ================================================
[2026-08-25 19:42:00,146.146 INFO    ] Launching Daemon at Tue Aug 25 19:42:00 IST 2026
[2026-08-25 19:42:00,156.156 INFO    ] ================================================
[2026-08-25 19:42:00,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:42:00
[2026-08-25 19:42:01,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:42:01,926.926 INFO    ] Initializing speech engine...
[2026-08-25 19:42:01,931.931 INFO    ] 2026-08-25 19:42:01
[2026-08-25 19:42:02,323.323 INFO    ] 2026-08-25 19:42:02
[2026-08-25 19:42:02,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:42:02,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:42:02,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:42:02,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:42:02,748.748 INFO    ] time= 25/08/2026 19:42:02
[2026-08-25 19:42:02,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:42:02,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:42:02,914.914 INFO    ] No existing commands found in stream
[2026-08-25 19:42:07,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:42:07,943.943 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 19:42:08,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:42:08,681.681 INFO    ] Checking for system updates...
[2026-08-25 19:42:08,716.716 INFO    ] 200
[2026-08-25 19:42:08,718.718 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:08,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:42:08,779.779 INFO    ] No update needed
[2026-08-25 19:42:08,781.781 INFO    ] Checking for camera pi updates...
[2026-08-25 19:42:08,818.818 INFO    ] 200
[2026-08-25 19:42:08,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:08,860.860 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:42:08,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:42:08,915.915 INFO    ] No camera update needed
[2026-08-25 19:42:08,917.917 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:42:08,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:42:08,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:42:08,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:42:10,969.969 INFO    ] ================================================
[2026-08-25 19:42:10,984.984 INFO    ] Launching Daemon at Tue Aug 25 19:42:10 IST 2026
[2026-08-25 19:42:11,995.995 INFO    ] ================================================
[2026-08-25 19:42:11,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:42:11
[2026-08-25 19:42:12,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:42:12,442.442 INFO    ] Initializing speech engine...
[2026-08-25 19:42:12,449.449 INFO    ] 2026-08-25 19:42:12
[2026-08-25 19:42:12,709.709 INFO    ] 2026-08-25 19:42:12
[2026-08-25 19:42:12,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:42:12,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:42:12,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:42:13,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:42:13,173.173 INFO    ] time= 25/08/2026 19:42:13
[2026-08-25 19:42:13,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:42:13,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:42:13,401.401 INFO    ] No existing commands found in stream
[2026-08-25 19:42:18,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:42:18,420.420 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 19:42:19,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:42:19,717.717 INFO    ] Checking for system updates...
[2026-08-25 19:42:19,753.753 INFO    ] 200
[2026-08-25 19:42:19,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:19,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:42:19,812.812 INFO    ] No update needed
[2026-08-25 19:42:19,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 19:42:19,849.849 INFO    ] 200
[2026-08-25 19:42:19,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:19,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:42:19,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:42:19,958.958 INFO    ] No camera update needed
[2026-08-25 19:42:19,961.961 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:42:19,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:42:19,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:42:19,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:42:22,016.016 INFO    ] ================================================
[2026-08-25 19:42:22,031.031 INFO    ] Launching Daemon at Tue Aug 25 19:42:22 IST 2026
[2026-08-25 19:42:22,041.041 INFO    ] ================================================
[2026-08-25 19:42:22,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:42:22
[2026-08-25 19:42:23,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:42:23,549.549 INFO    ] Initializing speech engine...
[2026-08-25 19:42:23,557.557 INFO    ] 2026-08-25 19:42:23
[2026-08-25 19:42:23,840.840 INFO    ] 2026-08-25 19:42:23
[2026-08-25 19:42:23,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:42:24,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:42:24,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:42:24,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:42:24,333.333 INFO    ] time= 25/08/2026 19:42:24
[2026-08-25 19:42:24,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:42:24,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:42:24,553.553 INFO    ] No existing commands found in stream
[2026-08-25 19:42:29,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:42:29,580.580 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 19:42:30,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:42:30,668.668 INFO    ] Checking for system updates...
[2026-08-25 19:42:30,706.706 INFO    ] 200
[2026-08-25 19:42:30,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:30,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:42:30,771.771 INFO    ] No update needed
[2026-08-25 19:42:30,774.774 INFO    ] Checking for camera pi updates...
[2026-08-25 19:42:30,811.811 INFO    ] 200
[2026-08-25 19:42:30,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:30,856.856 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:42:31,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:42:31,004.004 INFO    ] No camera update needed
[2026-08-25 19:42:31,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:42:31,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:42:31,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:42:31,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:42:33,060.060 INFO    ] ================================================
[2026-08-25 19:42:33,076.076 INFO    ] Launching Daemon at Tue Aug 25 19:42:33 IST 2026
[2026-08-25 19:42:33,087.087 INFO    ] ================================================
[2026-08-25 19:42:33,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:42:33
[2026-08-25 19:42:34,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:42:34,715.715 INFO    ] Initializing speech engine...
[2026-08-25 19:42:34,725.725 INFO    ] 2026-08-25 19:42:34
[2026-08-25 19:42:35,000.000 INFO    ] 2026-08-25 19:42:34
[2026-08-25 19:42:35,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:42:35,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:42:35,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:42:35,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:42:35,503.503 INFO    ] time= 25/08/2026 19:42:35
[2026-08-25 19:42:35,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:42:35,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:42:35,705.705 INFO    ] No existing commands found in stream
[2026-08-25 19:42:40,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:42:40,737.737 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 19:42:44,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:42:44,026.026 INFO    ] Checking for system updates...
[2026-08-25 19:42:44,063.063 INFO    ] 200
[2026-08-25 19:42:44,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:44,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:42:44,121.121 INFO    ] No update needed
[2026-08-25 19:42:44,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 19:42:44,163.163 INFO    ] 200
[2026-08-25 19:42:44,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:44,212.212 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:42:44,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:42:44,272.272 INFO    ] No camera update needed
[2026-08-25 19:42:44,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:42:44,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:42:44,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:42:44,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:42:46,329.329 INFO    ] ================================================
[2026-08-25 19:42:46,346.346 INFO    ] Launching Daemon at Tue Aug 25 19:42:46 IST 2026
[2026-08-25 19:42:46,357.357 INFO    ] ================================================
[2026-08-25 19:42:47,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:42:47
[2026-08-25 19:42:47,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:42:47,995.995 INFO    ] Initializing speech engine...
[2026-08-25 19:42:48,004.004 INFO    ] 2026-08-25 19:42:47
[2026-08-25 19:42:48,304.304 INFO    ] 2026-08-25 19:42:48
[2026-08-25 19:42:48,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:42:48,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:42:48,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:42:48,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:42:48,846.846 INFO    ] time= 25/08/2026 19:42:48
[2026-08-25 19:42:48,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:42:48,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:42:49,003.003 INFO    ] No existing commands found in stream
[2026-08-25 19:42:54,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:42:54,029.029 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 19:42:54,970.970 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:42:54,973.973 INFO    ] Checking for system updates...
[2026-08-25 19:42:55,010.010 INFO    ] 200
[2026-08-25 19:42:55,012.012 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:55,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:42:55,068.068 INFO    ] No update needed
[2026-08-25 19:42:55,071.071 INFO    ] Checking for camera pi updates...
[2026-08-25 19:42:55,105.105 INFO    ] 200
[2026-08-25 19:42:55,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:42:55,149.149 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:42:55,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:42:55,200.200 INFO    ] No camera update needed
[2026-08-25 19:42:55,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:42:55,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:42:55,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:42:55,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:42:57,256.256 INFO    ] ================================================
[2026-08-25 19:42:57,271.271 INFO    ] Launching Daemon at Tue Aug 25 19:42:57 IST 2026
[2026-08-25 19:42:57,282.282 INFO    ] ================================================
[2026-08-25 19:42:57,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:42:57
[2026-08-25 19:42:58,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:42:58,755.755 INFO    ] Initializing speech engine...
[2026-08-25 19:42:58,767.767 INFO    ] 2026-08-25 19:42:58
[2026-08-25 19:42:59,029.029 INFO    ] 2026-08-25 19:42:59
[2026-08-25 19:42:59,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:42:59,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:42:59,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:42:59,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:42:59,522.522 INFO    ] time= 25/08/2026 19:42:59
[2026-08-25 19:42:59,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:42:59,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:42:59,741.741 INFO    ] No existing commands found in stream
[2026-08-25 19:43:04,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:43:04,757.757 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 19:43:07,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:43:07,861.861 INFO    ] Checking for system updates...
[2026-08-25 19:43:07,899.899 INFO    ] 200
[2026-08-25 19:43:07,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:07,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:07,962.962 INFO    ] No update needed
[2026-08-25 19:43:07,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 19:43:08,008.008 INFO    ] 200
[2026-08-25 19:43:08,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:08,050.050 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:43:08,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:08,105.105 INFO    ] No camera update needed
[2026-08-25 19:43:08,107.107 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:43:08,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:43:08,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:43:08,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:43:10,159.159 INFO    ] ================================================
[2026-08-25 19:43:10,175.175 INFO    ] Launching Daemon at Tue Aug 25 19:43:10 IST 2026
[2026-08-25 19:43:10,186.186 INFO    ] ================================================
[2026-08-25 19:43:10,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:43:10
[2026-08-25 19:43:11,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:43:11,640.640 INFO    ] Initializing speech engine...
[2026-08-25 19:43:11,649.649 INFO    ] 2026-08-25 19:43:11
[2026-08-25 19:43:11,907.907 INFO    ] 2026-08-25 19:43:11
[2026-08-25 19:43:11,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:43:12,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:43:12,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:43:12,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:43:12,389.389 INFO    ] time= 25/08/2026 19:43:12
[2026-08-25 19:43:12,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:43:12,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:43:12,586.586 INFO    ] No existing commands found in stream
[2026-08-25 19:43:17,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:43:17,614.614 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 19:43:21,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:43:21,869.869 INFO    ] Checking for system updates...
[2026-08-25 19:43:21,904.904 INFO    ] 200
[2026-08-25 19:43:21,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:21,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:21,961.961 INFO    ] No update needed
[2026-08-25 19:43:21,964.964 INFO    ] Checking for camera pi updates...
[2026-08-25 19:43:21,997.997 INFO    ] 200
[2026-08-25 19:43:21,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:22,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:43:22,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:22,088.088 INFO    ] No camera update needed
[2026-08-25 19:43:22,091.091 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:43:22,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:43:22,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:43:22,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:43:24,144.144 INFO    ] ================================================
[2026-08-25 19:43:24,160.160 INFO    ] Launching Daemon at Tue Aug 25 19:43:24 IST 2026
[2026-08-25 19:43:24,171.171 INFO    ] ================================================
[2026-08-25 19:43:24,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:43:24
[2026-08-25 19:43:25,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:43:25,569.569 INFO    ] Initializing speech engine...
[2026-08-25 19:43:25,575.575 INFO    ] 2026-08-25 19:43:25
[2026-08-25 19:43:25,848.848 INFO    ] 2026-08-25 19:43:25
[2026-08-25 19:43:25,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:43:26,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:43:26,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:43:26,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:43:26,325.325 INFO    ] time= 25/08/2026 19:43:26
[2026-08-25 19:43:26,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:43:26,420.420 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:43:26,566.566 INFO    ] No existing commands found in stream
[2026-08-25 19:43:31,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:43:31,585.585 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 19:43:34,930.930 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:43:34,933.933 INFO    ] Checking for system updates...
[2026-08-25 19:43:34,968.968 INFO    ] 200
[2026-08-25 19:43:34,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:35,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:35,026.026 INFO    ] No update needed
[2026-08-25 19:43:35,028.028 INFO    ] Checking for camera pi updates...
[2026-08-25 19:43:35,061.061 INFO    ] 200
[2026-08-25 19:43:35,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:35,103.103 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:43:35,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:35,154.154 INFO    ] No camera update needed
[2026-08-25 19:43:35,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:43:35,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:43:35,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:43:35,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:43:37,210.210 INFO    ] ================================================
[2026-08-25 19:43:37,226.226 INFO    ] Launching Daemon at Tue Aug 25 19:43:37 IST 2026
[2026-08-25 19:43:37,238.238 INFO    ] ================================================
[2026-08-25 19:43:37,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:43:37
[2026-08-25 19:43:38,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:43:38,848.848 INFO    ] Initializing speech engine...
[2026-08-25 19:43:38,856.856 INFO    ] 2026-08-25 19:43:38
[2026-08-25 19:43:39,111.111 INFO    ] 2026-08-25 19:43:39
[2026-08-25 19:43:39,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:43:39,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:43:39,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:43:39,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:43:39,596.596 INFO    ] time= 25/08/2026 19:43:39
[2026-08-25 19:43:39,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:43:39,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:43:39,799.799 INFO    ] No existing commands found in stream
[2026-08-25 19:43:44,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:43:44,818.818 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 19:43:48,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:43:48,053.053 INFO    ] Checking for system updates...
[2026-08-25 19:43:48,093.093 INFO    ] 200
[2026-08-25 19:43:48,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:48,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:48,159.159 INFO    ] No update needed
[2026-08-25 19:43:48,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 19:43:48,199.199 INFO    ] 200
[2026-08-25 19:43:48,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:48,243.243 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:43:48,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:43:48,291.291 INFO    ] No camera update needed
[2026-08-25 19:43:48,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:43:48,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:43:48,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:43:48,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:43:50,349.349 INFO    ] ================================================
[2026-08-25 19:43:50,365.365 INFO    ] Launching Daemon at Tue Aug 25 19:43:50 IST 2026
[2026-08-25 19:43:50,376.376 INFO    ] ================================================
[2026-08-25 19:43:50,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:43:50
[2026-08-25 19:43:51,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:43:51,779.779 INFO    ] Initializing speech engine...
[2026-08-25 19:43:51,795.795 INFO    ] 2026-08-25 19:43:51
[2026-08-25 19:43:52,074.074 INFO    ] 2026-08-25 19:43:52
[2026-08-25 19:43:52,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:43:52,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:43:52,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:43:52,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:43:52,486.486 INFO    ] time= 25/08/2026 19:43:52
[2026-08-25 19:43:52,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:43:52,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:43:52,638.638 INFO    ] No existing commands found in stream
[2026-08-25 19:43:57,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:43:57,660.660 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 19:43:59,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:43:59,365.365 INFO    ] Checking for system updates...
[2026-08-25 19:43:59,400.400 INFO    ] 200
[2026-08-25 19:43:59,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:59,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:43:59,457.457 INFO    ] No update needed
[2026-08-25 19:43:59,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 19:43:59,492.492 INFO    ] 200
[2026-08-25 19:43:59,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:43:59,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:43:59,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:43:59,589.589 INFO    ] No camera update needed
[2026-08-25 19:43:59,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:43:59,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:43:59,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:43:59,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:44:01,643.643 INFO    ] ================================================
[2026-08-25 19:44:01,658.658 INFO    ] Launching Daemon at Tue Aug 25 19:44:01 IST 2026
[2026-08-25 19:44:01,669.669 INFO    ] ================================================
[2026-08-25 19:44:02,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:44:02
[2026-08-25 19:44:03,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:44:03,313.313 INFO    ] Initializing speech engine...
[2026-08-25 19:44:03,357.357 INFO    ] 2026-08-25 19:44:03
[2026-08-25 19:44:03,611.611 INFO    ] 2026-08-25 19:44:03
[2026-08-25 19:44:03,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:44:03,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:44:03,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:44:04,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:44:04,018.018 INFO    ] time= 25/08/2026 19:44:04
[2026-08-25 19:44:04,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:44:04,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:44:04,206.206 INFO    ] No existing commands found in stream
[2026-08-25 19:44:09,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:44:09,227.227 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 19:44:12,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:44:12,039.039 INFO    ] Checking for system updates...
[2026-08-25 19:44:12,078.078 INFO    ] 200
[2026-08-25 19:44:12,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:12,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:44:12,135.135 INFO    ] No update needed
[2026-08-25 19:44:12,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 19:44:12,177.177 INFO    ] 200
[2026-08-25 19:44:12,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:12,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:44:12,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:44:12,268.268 INFO    ] No camera update needed
[2026-08-25 19:44:12,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:44:12,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:44:12,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:44:12,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:44:14,327.327 INFO    ] ================================================
[2026-08-25 19:44:14,343.343 INFO    ] Launching Daemon at Tue Aug 25 19:44:14 IST 2026
[2026-08-25 19:44:14,354.354 INFO    ] ================================================
[2026-08-25 19:44:15,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:44:15
[2026-08-25 19:44:15,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:44:15,984.984 INFO    ] Initializing speech engine...
[2026-08-25 19:44:15,997.997 INFO    ] 2026-08-25 19:44:15
[2026-08-25 19:44:16,276.276 INFO    ] 2026-08-25 19:44:16
[2026-08-25 19:44:16,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:44:16,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:44:16,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:44:16,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:44:16,809.809 INFO    ] time= 25/08/2026 19:44:16
[2026-08-25 19:44:16,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:44:16,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:44:16,959.959 INFO    ] No existing commands found in stream
[2026-08-25 19:44:21,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:44:21,980.980 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 19:44:23,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:44:23,903.903 INFO    ] Checking for system updates...
[2026-08-25 19:44:23,939.939 INFO    ] 200
[2026-08-25 19:44:23,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:23,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:44:23,998.998 INFO    ] No update needed
[2026-08-25 19:44:24,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 19:44:24,035.035 INFO    ] 200
[2026-08-25 19:44:24,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:24,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:44:24,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:44:24,127.127 INFO    ] No camera update needed
[2026-08-25 19:44:24,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:44:24,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:44:24,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:44:24,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:44:26,183.183 INFO    ] ================================================
[2026-08-25 19:44:26,198.198 INFO    ] Launching Daemon at Tue Aug 25 19:44:26 IST 2026
[2026-08-25 19:44:26,208.208 INFO    ] ================================================
[2026-08-25 19:44:26,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:44:26
[2026-08-25 19:44:27,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:44:27,607.607 INFO    ] Initializing speech engine...
[2026-08-25 19:44:27,623.623 INFO    ] 2026-08-25 19:44:27
[2026-08-25 19:44:27,905.905 INFO    ] 2026-08-25 19:44:27
[2026-08-25 19:44:27,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:44:28,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:44:28,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:44:28,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:44:28,318.318 INFO    ] time= 25/08/2026 19:44:28
[2026-08-25 19:44:28,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:44:28,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:44:28,518.518 INFO    ] No existing commands found in stream
[2026-08-25 19:44:33,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:44:33,555.555 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 19:44:36,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:44:36,858.858 INFO    ] Checking for system updates...
[2026-08-25 19:44:36,893.893 INFO    ] 200
[2026-08-25 19:44:36,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:36,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:44:36,952.952 INFO    ] No update needed
[2026-08-25 19:44:36,954.954 INFO    ] Checking for camera pi updates...
[2026-08-25 19:44:36,987.987 INFO    ] 200
[2026-08-25 19:44:36,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:37,034.034 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:44:37,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:44:37,083.083 INFO    ] No camera update needed
[2026-08-25 19:44:37,086.086 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:44:37,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:44:37,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:44:37,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:44:39,138.138 INFO    ] ================================================
[2026-08-25 19:44:39,153.153 INFO    ] Launching Daemon at Tue Aug 25 19:44:39 IST 2026
[2026-08-25 19:44:39,163.163 INFO    ] ================================================
[2026-08-25 19:44:39,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:44:39
[2026-08-25 19:44:40,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:44:40,617.617 INFO    ] Initializing speech engine...
[2026-08-25 19:44:40,626.626 INFO    ] 2026-08-25 19:44:40
[2026-08-25 19:44:40,884.884 INFO    ] 2026-08-25 19:44:40
[2026-08-25 19:44:40,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:44:41,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:44:41,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:44:41,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:44:41,424.424 INFO    ] time= 25/08/2026 19:44:41
[2026-08-25 19:44:41,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:44:41,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:44:41,579.579 INFO    ] No existing commands found in stream
[2026-08-25 19:44:46,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:44:46,596.596 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 19:44:47,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:44:47,821.821 INFO    ] Checking for system updates...
[2026-08-25 19:44:47,859.859 INFO    ] 200
[2026-08-25 19:44:47,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:47,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:44:47,925.925 INFO    ] No update needed
[2026-08-25 19:44:47,928.928 INFO    ] Checking for camera pi updates...
[2026-08-25 19:44:47,961.961 INFO    ] 200
[2026-08-25 19:44:47,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:44:48,008.008 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:44:48,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:44:48,069.069 INFO    ] No camera update needed
[2026-08-25 19:44:48,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:44:48,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:44:48,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:44:48,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:44:50,125.125 INFO    ] ================================================
[2026-08-25 19:44:50,140.140 INFO    ] Launching Daemon at Tue Aug 25 19:44:50 IST 2026
[2026-08-25 19:44:50,150.150 INFO    ] ================================================
[2026-08-25 19:44:50,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:44:50
[2026-08-25 19:44:51,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:44:51,559.559 INFO    ] Initializing speech engine...
[2026-08-25 19:44:51,584.584 INFO    ] 2026-08-25 19:44:51
[2026-08-25 19:44:51,854.854 INFO    ] 2026-08-25 19:44:51
[2026-08-25 19:44:51,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:44:52,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:44:52,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:44:52,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:44:52,265.265 INFO    ] time= 25/08/2026 19:44:52
[2026-08-25 19:44:52,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:44:52,315.315 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:44:52,462.462 INFO    ] No existing commands found in stream
[2026-08-25 19:44:57,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:44:57,495.495 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 19:45:00,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:45:00,855.855 INFO    ] Checking for system updates...
[2026-08-25 19:45:00,890.890 INFO    ] 200
[2026-08-25 19:45:00,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:00,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:00,947.947 INFO    ] No update needed
[2026-08-25 19:45:00,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 19:45:00,986.986 INFO    ] 200
[2026-08-25 19:45:00,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:01,028.028 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:45:01,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:01,081.081 INFO    ] No camera update needed
[2026-08-25 19:45:01,083.083 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:45:01,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:45:01,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:45:01,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:45:03,164.164 INFO    ] ================================================
[2026-08-25 19:45:03,181.181 INFO    ] Launching Daemon at Tue Aug 25 19:45:03 IST 2026
[2026-08-25 19:45:03,193.193 INFO    ] ================================================
[2026-08-25 19:45:03,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:45:03
[2026-08-25 19:45:04,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:45:04,871.871 INFO    ] Initializing speech engine...
[2026-08-25 19:45:04,885.885 INFO    ] 2026-08-25 19:45:04
[2026-08-25 19:45:05,172.172 INFO    ] 2026-08-25 19:45:05
[2026-08-25 19:45:05,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:45:05,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:45:05,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:45:05,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:45:05,707.707 INFO    ] time= 25/08/2026 19:45:05
[2026-08-25 19:45:05,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:45:05,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:45:05,862.862 INFO    ] No existing commands found in stream
[2026-08-25 19:45:10,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:45:10,889.889 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 19:45:11,726.726 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:45:11,729.729 INFO    ] Checking for system updates...
[2026-08-25 19:45:11,767.767 INFO    ] 200
[2026-08-25 19:45:11,770.770 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:11,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:45:11,827.827 INFO    ] No update needed
[2026-08-25 19:45:11,830.830 INFO    ] Checking for camera pi updates...
[2026-08-25 19:45:11,865.865 INFO    ] 200
[2026-08-25 19:45:11,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:11,916.916 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:45:11,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:45:11,976.976 INFO    ] No camera update needed
[2026-08-25 19:45:11,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:45:11,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:45:11,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:45:11,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:45:14,035.035 INFO    ] ================================================
[2026-08-25 19:45:14,051.051 INFO    ] Launching Daemon at Tue Aug 25 19:45:14 IST 2026
[2026-08-25 19:45:14,061.061 INFO    ] ================================================
[2026-08-25 19:45:14,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:45:14
[2026-08-25 19:45:15,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:45:15,717.717 INFO    ] Initializing speech engine...
[2026-08-25 19:45:15,729.729 INFO    ] 2026-08-25 19:45:15
[2026-08-25 19:45:16,016.016 INFO    ] 2026-08-25 19:45:16
[2026-08-25 19:45:16,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:45:16,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:45:16,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:45:16,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:45:16,549.549 INFO    ] time= 25/08/2026 19:45:16
[2026-08-25 19:45:16,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:45:16,600.600 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:45:16,715.715 INFO    ] No existing commands found in stream
[2026-08-25 19:45:21,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:45:21,748.748 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 19:45:22,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:45:22,566.566 INFO    ] Checking for system updates...
[2026-08-25 19:45:22,601.601 INFO    ] 200
[2026-08-25 19:45:22,604.604 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:22,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:22,658.658 INFO    ] No update needed
[2026-08-25 19:45:22,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 19:45:22,694.694 INFO    ] 200
[2026-08-25 19:45:22,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:22,738.738 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:45:22,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:22,783.783 INFO    ] No camera update needed
[2026-08-25 19:45:22,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:45:22,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:45:22,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:45:22,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:45:24,839.839 INFO    ] ================================================
[2026-08-25 19:45:24,854.854 INFO    ] Launching Daemon at Tue Aug 25 19:45:24 IST 2026
[2026-08-25 19:45:24,865.865 INFO    ] ================================================
[2026-08-25 19:45:25,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:45:25
[2026-08-25 19:45:26,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:45:26,300.300 INFO    ] Initializing speech engine...
[2026-08-25 19:45:26,306.306 INFO    ] 2026-08-25 19:45:26
[2026-08-25 19:45:26,568.568 INFO    ] 2026-08-25 19:45:26
[2026-08-25 19:45:26,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:45:26,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:45:26,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:45:27,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:45:27,106.106 INFO    ] time= 25/08/2026 19:45:27
[2026-08-25 19:45:27,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:45:27,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:45:27,242.242 INFO    ] No existing commands found in stream
[2026-08-25 19:45:32,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:45:32,270.270 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 19:45:33,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:45:33,156.156 INFO    ] Checking for system updates...
[2026-08-25 19:45:33,195.195 INFO    ] 200
[2026-08-25 19:45:33,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:33,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:33,259.259 INFO    ] No update needed
[2026-08-25 19:45:33,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 19:45:33,299.299 INFO    ] 200
[2026-08-25 19:45:33,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:33,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:45:33,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:33,405.405 INFO    ] No camera update needed
[2026-08-25 19:45:33,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:45:33,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:45:33,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:45:33,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:45:35,462.462 INFO    ] ================================================
[2026-08-25 19:45:35,478.478 INFO    ] Launching Daemon at Tue Aug 25 19:45:35 IST 2026
[2026-08-25 19:45:35,489.489 INFO    ] ================================================
[2026-08-25 19:45:36,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:45:36
[2026-08-25 19:45:36,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:45:37,143.143 INFO    ] Initializing speech engine...
[2026-08-25 19:45:37,152.152 INFO    ] 2026-08-25 19:45:37
[2026-08-25 19:45:37,458.458 INFO    ] 2026-08-25 19:45:37
[2026-08-25 19:45:37,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:45:37,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:45:37,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:45:37,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:45:37,966.966 INFO    ] time= 25/08/2026 19:45:37
[2026-08-25 19:45:37,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:45:38,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:45:38,128.128 INFO    ] No existing commands found in stream
[2026-08-25 19:45:43,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:45:43,163.163 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 19:45:43,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:45:43,827.827 INFO    ] Checking for system updates...
[2026-08-25 19:45:43,865.865 INFO    ] 200
[2026-08-25 19:45:43,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:43,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:43,934.934 INFO    ] No update needed
[2026-08-25 19:45:43,937.937 INFO    ] Checking for camera pi updates...
[2026-08-25 19:45:43,972.972 INFO    ] 200
[2026-08-25 19:45:43,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:44,017.017 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:45:44,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:44,074.074 INFO    ] No camera update needed
[2026-08-25 19:45:44,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:45:44,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:45:44,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:45:44,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:45:46,132.132 INFO    ] ================================================
[2026-08-25 19:45:46,148.148 INFO    ] Launching Daemon at Tue Aug 25 19:45:46 IST 2026
[2026-08-25 19:45:46,159.159 INFO    ] ================================================
[2026-08-25 19:45:46,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:45:46
[2026-08-25 19:45:47,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:45:47,580.580 INFO    ] Initializing speech engine...
[2026-08-25 19:45:47,603.603 INFO    ] 2026-08-25 19:45:47
[2026-08-25 19:45:47,857.857 INFO    ] 2026-08-25 19:45:47
[2026-08-25 19:45:47,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:45:48,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:45:48,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:45:48,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:45:48,382.382 INFO    ] time= 25/08/2026 19:45:48
[2026-08-25 19:45:48,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:45:48,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:45:48,583.583 INFO    ] No existing commands found in stream
[2026-08-25 19:45:53,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:45:53,600.600 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 19:45:54,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:45:54,174.174 INFO    ] Checking for system updates...
[2026-08-25 19:45:54,209.209 INFO    ] 200
[2026-08-25 19:45:54,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:54,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:54,269.269 INFO    ] No update needed
[2026-08-25 19:45:54,272.272 INFO    ] Checking for camera pi updates...
[2026-08-25 19:45:54,305.305 INFO    ] 200
[2026-08-25 19:45:54,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:45:54,347.347 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:45:54,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:45:54,392.392 INFO    ] No camera update needed
[2026-08-25 19:45:54,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:45:54,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:45:54,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:45:54,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:45:56,448.448 INFO    ] ================================================
[2026-08-25 19:45:56,464.464 INFO    ] Launching Daemon at Tue Aug 25 19:45:56 IST 2026
[2026-08-25 19:45:56,475.475 INFO    ] ================================================
[2026-08-25 19:45:57,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:45:57
[2026-08-25 19:45:57,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:45:58,128.128 INFO    ] Initializing speech engine...
[2026-08-25 19:45:58,143.143 INFO    ] 2026-08-25 19:45:58
[2026-08-25 19:45:58,454.454 INFO    ] 2026-08-25 19:45:58
[2026-08-25 19:45:58,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:45:58,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:45:58,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:45:58,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:45:58,961.961 INFO    ] time= 25/08/2026 19:45:58
[2026-08-25 19:45:58,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:45:59,000.000 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:45:59,118.118 INFO    ] No existing commands found in stream
[2026-08-25 19:46:04,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:46:04,142.142 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 19:46:07,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:46:07,581.581 INFO    ] Checking for system updates...
[2026-08-25 19:46:07,621.621 INFO    ] 200
[2026-08-25 19:46:07,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:07,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:46:07,679.679 INFO    ] No update needed
[2026-08-25 19:46:07,681.681 INFO    ] Checking for camera pi updates...
[2026-08-25 19:46:07,714.714 INFO    ] 200
[2026-08-25 19:46:07,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:07,758.758 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:46:07,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:46:07,808.808 INFO    ] No camera update needed
[2026-08-25 19:46:07,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:46:07,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:46:07,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:46:07,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:46:09,863.863 INFO    ] ================================================
[2026-08-25 19:46:09,879.879 INFO    ] Launching Daemon at Tue Aug 25 19:46:09 IST 2026
[2026-08-25 19:46:09,891.891 INFO    ] ================================================
[2026-08-25 19:46:10,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:46:10
[2026-08-25 19:46:11,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:46:11,306.306 INFO    ] Initializing speech engine...
[2026-08-25 19:46:11,315.315 INFO    ] 2026-08-25 19:46:11
[2026-08-25 19:46:11,559.559 INFO    ] 2026-08-25 19:46:11
[2026-08-25 19:46:11,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:46:11,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:46:11,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:46:11,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:46:12,026.026 INFO    ] time= 25/08/2026 19:46:11
[2026-08-25 19:46:12,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:46:12,129.129 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:46:12,254.254 INFO    ] No existing commands found in stream
[2026-08-25 19:46:17,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:46:17,276.276 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 19:46:21,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:46:21,437.437 INFO    ] Checking for system updates...
[2026-08-25 19:46:21,473.473 INFO    ] 200
[2026-08-25 19:46:21,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:21,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:46:21,531.531 INFO    ] No update needed
[2026-08-25 19:46:21,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 19:46:21,567.567 INFO    ] 200
[2026-08-25 19:46:21,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:21,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:46:21,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:46:21,670.670 INFO    ] No camera update needed
[2026-08-25 19:46:21,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:46:21,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:46:21,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:46:21,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:46:23,725.725 INFO    ] ================================================
[2026-08-25 19:46:23,742.742 INFO    ] Launching Daemon at Tue Aug 25 19:46:23 IST 2026
[2026-08-25 19:46:23,753.753 INFO    ] ================================================
[2026-08-25 19:46:24,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:46:24
[2026-08-25 19:46:24,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:46:25,218.218 INFO    ] Initializing speech engine...
[2026-08-25 19:46:25,226.226 INFO    ] 2026-08-25 19:46:25
[2026-08-25 19:46:25,490.490 INFO    ] 2026-08-25 19:46:25
[2026-08-25 19:46:25,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:46:25,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:46:25,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:46:25,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:46:25,959.959 INFO    ] time= 25/08/2026 19:46:25
[2026-08-25 19:46:26,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:46:26,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:46:26,182.182 INFO    ] No existing commands found in stream
[2026-08-25 19:46:31,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:46:31,210.210 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 19:46:35,033.033 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:46:35,036.036 INFO    ] Checking for system updates...
[2026-08-25 19:46:35,074.074 INFO    ] 200
[2026-08-25 19:46:35,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:35,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:46:35,138.138 INFO    ] No update needed
[2026-08-25 19:46:35,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 19:46:35,177.177 INFO    ] 200
[2026-08-25 19:46:35,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:35,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:46:35,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:46:35,367.367 INFO    ] No camera update needed
[2026-08-25 19:46:35,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:46:35,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:46:35,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:46:35,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:46:37,425.425 INFO    ] ================================================
[2026-08-25 19:46:37,440.440 INFO    ] Launching Daemon at Tue Aug 25 19:46:37 IST 2026
[2026-08-25 19:46:37,451.451 INFO    ] ================================================
[2026-08-25 19:46:38,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:46:38
[2026-08-25 19:46:38,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:46:38,862.862 INFO    ] Initializing speech engine...
[2026-08-25 19:46:38,870.870 INFO    ] 2026-08-25 19:46:38
[2026-08-25 19:46:39,167.167 INFO    ] 2026-08-25 19:46:39
[2026-08-25 19:46:39,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:46:39,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:46:39,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:46:39,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:46:39,590.590 INFO    ] time= 25/08/2026 19:46:39
[2026-08-25 19:46:39,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:46:39,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:46:39,794.794 INFO    ] No existing commands found in stream
[2026-08-25 19:46:44,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:46:44,821.821 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 19:46:45,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:46:45,816.816 INFO    ] Checking for system updates...
[2026-08-25 19:46:45,851.851 INFO    ] 200
[2026-08-25 19:46:45,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:45,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:46:45,910.910 INFO    ] No update needed
[2026-08-25 19:46:45,912.912 INFO    ] Checking for camera pi updates...
[2026-08-25 19:46:45,946.946 INFO    ] 200
[2026-08-25 19:46:45,948.948 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:45,988.988 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:46:46,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:46:46,035.035 INFO    ] No camera update needed
[2026-08-25 19:46:46,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:46:46,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:46:46,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:46:46,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:46:48,091.091 INFO    ] ================================================
[2026-08-25 19:46:48,107.107 INFO    ] Launching Daemon at Tue Aug 25 19:46:48 IST 2026
[2026-08-25 19:46:48,118.118 INFO    ] ================================================
[2026-08-25 19:46:48,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:46:48
[2026-08-25 19:46:49,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:46:49,541.541 INFO    ] Initializing speech engine...
[2026-08-25 19:46:49,550.550 INFO    ] 2026-08-25 19:46:49
[2026-08-25 19:46:49,802.802 INFO    ] 2026-08-25 19:46:49
[2026-08-25 19:46:49,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:46:50,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:46:50,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:46:50,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:46:50,293.293 INFO    ] time= 25/08/2026 19:46:50
[2026-08-25 19:46:50,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:46:50,378.378 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:46:50,514.514 INFO    ] No existing commands found in stream
[2026-08-25 19:46:55,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:46:55,537.537 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 19:46:58,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:46:58,804.804 INFO    ] Checking for system updates...
[2026-08-25 19:46:58,839.839 INFO    ] 200
[2026-08-25 19:46:58,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:58,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:46:58,902.902 INFO    ] No update needed
[2026-08-25 19:46:58,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 19:46:58,938.938 INFO    ] 200
[2026-08-25 19:46:58,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:46:58,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:46:59,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:46:59,034.034 INFO    ] No camera update needed
[2026-08-25 19:46:59,036.036 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:46:59,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:46:59,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:46:59,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:47:01,089.089 INFO    ] ================================================
[2026-08-25 19:47:01,104.104 INFO    ] Launching Daemon at Tue Aug 25 19:47:01 IST 2026
[2026-08-25 19:47:01,115.115 INFO    ] ================================================
[2026-08-25 19:47:01,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:47:01
[2026-08-25 19:47:02,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:47:02,868.868 INFO    ] Initializing speech engine...
[2026-08-25 19:47:02,882.882 INFO    ] 2026-08-25 19:47:02
[2026-08-25 19:47:03,150.150 INFO    ] 2026-08-25 19:47:03
[2026-08-25 19:47:03,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:47:03,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:47:03,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:47:03,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:47:03,580.580 INFO    ] time= 25/08/2026 19:47:03
[2026-08-25 19:47:03,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:47:03,628.628 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:47:03,726.726 INFO    ] No existing commands found in stream
[2026-08-25 19:47:08,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:47:08,750.750 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 19:47:10,471.471 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:47:10,474.474 INFO    ] Checking for system updates...
[2026-08-25 19:47:10,514.514 INFO    ] 200
[2026-08-25 19:47:10,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:10,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:47:10,579.579 INFO    ] No update needed
[2026-08-25 19:47:10,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 19:47:10,616.616 INFO    ] 200
[2026-08-25 19:47:10,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:10,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:47:10,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:47:10,711.711 INFO    ] No camera update needed
[2026-08-25 19:47:10,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:47:10,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:47:10,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:47:10,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:47:12,770.770 INFO    ] ================================================
[2026-08-25 19:47:12,785.785 INFO    ] Launching Daemon at Tue Aug 25 19:47:12 IST 2026
[2026-08-25 19:47:12,796.796 INFO    ] ================================================
[2026-08-25 19:47:13,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:47:13
[2026-08-25 19:47:14,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:47:14,356.356 INFO    ] Initializing speech engine...
[2026-08-25 19:47:14,371.371 INFO    ] 2026-08-25 19:47:14
[2026-08-25 19:47:14,687.687 INFO    ] 2026-08-25 19:47:14
[2026-08-25 19:47:14,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:47:14,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:47:14,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:47:15,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:47:15,209.209 INFO    ] time= 25/08/2026 19:47:15
[2026-08-25 19:47:15,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:47:15,256.256 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:47:15,364.364 INFO    ] No existing commands found in stream
[2026-08-25 19:47:20,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:47:20,392.392 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-08-25 19:47:22,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:47:22,468.468 INFO    ] Checking for system updates...
[2026-08-25 19:47:22,504.504 INFO    ] 200
[2026-08-25 19:47:22,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:22,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:47:22,561.561 INFO    ] No update needed
[2026-08-25 19:47:22,564.564 INFO    ] Checking for camera pi updates...
[2026-08-25 19:47:22,597.597 INFO    ] 200
[2026-08-25 19:47:22,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:22,645.645 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:47:22,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:47:22,700.700 INFO    ] No camera update needed
[2026-08-25 19:47:22,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:47:22,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:47:22,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:47:22,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:47:24,755.755 INFO    ] ================================================
[2026-08-25 19:47:24,770.770 INFO    ] Launching Daemon at Tue Aug 25 19:47:24 IST 2026
[2026-08-25 19:47:24,781.781 INFO    ] ================================================
[2026-08-25 19:47:25,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:47:25
[2026-08-25 19:47:26,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:47:26,400.400 INFO    ] Initializing speech engine...
[2026-08-25 19:47:26,412.412 INFO    ] 2026-08-25 19:47:26
[2026-08-25 19:47:26,720.720 INFO    ] 2026-08-25 19:47:26
[2026-08-25 19:47:26,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:47:27,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:47:27,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:47:27,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:47:27,225.225 INFO    ] time= 25/08/2026 19:47:27
[2026-08-25 19:47:27,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:47:27,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:47:27,380.380 INFO    ] No existing commands found in stream
[2026-08-25 19:47:32,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:47:32,419.419 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 19:47:33,553.553 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:47:33,556.556 INFO    ] Checking for system updates...
[2026-08-25 19:47:33,597.597 INFO    ] 200
[2026-08-25 19:47:33,599.599 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:33,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:47:33,656.656 INFO    ] No update needed
[2026-08-25 19:47:33,658.658 INFO    ] Checking for camera pi updates...
[2026-08-25 19:47:33,696.696 INFO    ] 200
[2026-08-25 19:47:33,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:33,740.740 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:47:33,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:47:33,790.790 INFO    ] No camera update needed
[2026-08-25 19:47:33,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:47:33,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:47:33,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:47:33,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:47:35,848.848 INFO    ] ================================================
[2026-08-25 19:47:35,863.863 INFO    ] Launching Daemon at Tue Aug 25 19:47:35 IST 2026
[2026-08-25 19:47:35,873.873 INFO    ] ================================================
[2026-08-25 19:47:36,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:47:36
[2026-08-25 19:47:37,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:47:37,309.309 INFO    ] Initializing speech engine...
[2026-08-25 19:47:37,318.318 INFO    ] 2026-08-25 19:47:37
[2026-08-25 19:47:37,613.613 INFO    ] 2026-08-25 19:47:37
[2026-08-25 19:47:37,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:47:37,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:47:37,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:47:38,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:47:38,110.110 INFO    ] time= 25/08/2026 19:47:38
[2026-08-25 19:47:38,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:47:38,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:47:38,313.313 INFO    ] No existing commands found in stream
[2026-08-25 19:47:43,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:47:43,327.327 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 19:47:46,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:47:46,991.991 INFO    ] Checking for system updates...
[2026-08-25 19:47:47,027.027 INFO    ] 200
[2026-08-25 19:47:47,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:47,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:47:47,089.089 INFO    ] No update needed
[2026-08-25 19:47:47,091.091 INFO    ] Checking for camera pi updates...
[2026-08-25 19:47:47,124.124 INFO    ] 200
[2026-08-25 19:47:47,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:47,167.167 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:47:47,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:47:47,220.220 INFO    ] No camera update needed
[2026-08-25 19:47:47,222.222 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:47:47,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:47:47,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:47:47,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:47:49,274.274 INFO    ] ================================================
[2026-08-25 19:47:49,289.289 INFO    ] Launching Daemon at Tue Aug 25 19:47:49 IST 2026
[2026-08-25 19:47:49,299.299 INFO    ] ================================================
[2026-08-25 19:47:49,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:47:49
[2026-08-25 19:47:50,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:47:50,706.706 INFO    ] Initializing speech engine...
[2026-08-25 19:47:50,729.729 INFO    ] 2026-08-25 19:47:50
[2026-08-25 19:47:50,985.985 INFO    ] 2026-08-25 19:47:50
[2026-08-25 19:47:51,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:47:51,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:47:51,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:47:51,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:47:51,469.469 INFO    ] time= 25/08/2026 19:47:51
[2026-08-25 19:47:51,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:47:51,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:47:51,682.682 INFO    ] No existing commands found in stream
[2026-08-25 19:47:56,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:47:56,716.716 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 19:47:57,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:47:57,285.285 INFO    ] Checking for system updates...
[2026-08-25 19:47:57,320.320 INFO    ] 200
[2026-08-25 19:47:57,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:57,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:47:57,377.377 INFO    ] No update needed
[2026-08-25 19:47:57,379.379 INFO    ] Checking for camera pi updates...
[2026-08-25 19:47:57,416.416 INFO    ] 200
[2026-08-25 19:47:57,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:47:57,458.458 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:47:57,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:47:57,507.507 INFO    ] No camera update needed
[2026-08-25 19:47:57,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:47:57,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:47:57,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:47:57,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:47:59,562.562 INFO    ] ================================================
[2026-08-25 19:47:59,577.577 INFO    ] Launching Daemon at Tue Aug 25 19:47:59 IST 2026
[2026-08-25 19:47:59,587.587 INFO    ] ================================================
[2026-08-25 19:48:00,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:48:00
[2026-08-25 19:48:00,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:48:01,007.007 INFO    ] Initializing speech engine...
[2026-08-25 19:48:01,013.013 INFO    ] 2026-08-25 19:48:01
[2026-08-25 19:48:01,262.262 INFO    ] 2026-08-25 19:48:01
[2026-08-25 19:48:01,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:48:01,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:48:01,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:48:01,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:48:01,765.765 INFO    ] time= 25/08/2026 19:48:01
[2026-08-25 19:48:01,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:48:01,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:48:01,886.886 INFO    ] No existing commands found in stream
[2026-08-25 19:48:06,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:48:06,898.898 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 19:48:07,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:48:07,768.768 INFO    ] Checking for system updates...
[2026-08-25 19:48:07,804.804 INFO    ] 200
[2026-08-25 19:48:07,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:07,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:07,862.862 INFO    ] No update needed
[2026-08-25 19:48:07,865.865 INFO    ] Checking for camera pi updates...
[2026-08-25 19:48:07,899.899 INFO    ] 200
[2026-08-25 19:48:07,903.903 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:07,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:48:08,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:08,012.012 INFO    ] No camera update needed
[2026-08-25 19:48:08,015.015 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:48:08,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:48:08,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:48:08,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:48:10,072.072 INFO    ] ================================================
[2026-08-25 19:48:10,087.087 INFO    ] Launching Daemon at Tue Aug 25 19:48:10 IST 2026
[2026-08-25 19:48:10,097.097 INFO    ] ================================================
[2026-08-25 19:48:10,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:48:10
[2026-08-25 19:48:11,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:48:11,527.527 INFO    ] Initializing speech engine...
[2026-08-25 19:48:11,536.536 INFO    ] 2026-08-25 19:48:11
[2026-08-25 19:48:11,782.782 INFO    ] 2026-08-25 19:48:11
[2026-08-25 19:48:11,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:48:12,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:48:12,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:48:12,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:48:12,282.282 INFO    ] time= 25/08/2026 19:48:12
[2026-08-25 19:48:12,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:48:12,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:48:12,486.486 INFO    ] No existing commands found in stream
[2026-08-25 19:48:17,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:48:17,500.500 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 19:48:21,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:48:21,155.155 INFO    ] Checking for system updates...
[2026-08-25 19:48:21,190.190 INFO    ] 200
[2026-08-25 19:48:21,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:21,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:21,248.248 INFO    ] No update needed
[2026-08-25 19:48:21,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 19:48:21,289.289 INFO    ] 200
[2026-08-25 19:48:21,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:21,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:48:21,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:21,385.385 INFO    ] No camera update needed
[2026-08-25 19:48:21,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:48:21,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:48:21,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:48:21,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:48:23,443.443 INFO    ] ================================================
[2026-08-25 19:48:23,458.458 INFO    ] Launching Daemon at Tue Aug 25 19:48:23 IST 2026
[2026-08-25 19:48:23,469.469 INFO    ] ================================================
[2026-08-25 19:48:24,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:48:24
[2026-08-25 19:48:24,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:48:24,945.945 INFO    ] Initializing speech engine...
[2026-08-25 19:48:24,960.960 INFO    ] 2026-08-25 19:48:24
[2026-08-25 19:48:25,272.272 INFO    ] 2026-08-25 19:48:25
[2026-08-25 19:48:25,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:48:25,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:48:25,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:48:25,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:48:25,779.779 INFO    ] time= 25/08/2026 19:48:25
[2026-08-25 19:48:25,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:48:25,829.829 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:48:25,936.936 INFO    ] No existing commands found in stream
[2026-08-25 19:48:30,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:48:30,958.958 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 19:48:33,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:48:33,985.985 INFO    ] Checking for system updates...
[2026-08-25 19:48:34,022.022 INFO    ] 200
[2026-08-25 19:48:34,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:34,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:34,090.090 INFO    ] No update needed
[2026-08-25 19:48:34,093.093 INFO    ] Checking for camera pi updates...
[2026-08-25 19:48:34,127.127 INFO    ] 200
[2026-08-25 19:48:34,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:34,173.173 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:48:34,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:34,225.225 INFO    ] No camera update needed
[2026-08-25 19:48:34,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:48:34,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:48:34,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:48:34,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:48:36,285.285 INFO    ] ================================================
[2026-08-25 19:48:36,300.300 INFO    ] Launching Daemon at Tue Aug 25 19:48:36 IST 2026
[2026-08-25 19:48:36,310.310 INFO    ] ================================================
[2026-08-25 19:48:36,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:48:36
[2026-08-25 19:48:37,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:48:37,847.847 INFO    ] Initializing speech engine...
[2026-08-25 19:48:37,854.854 INFO    ] 2026-08-25 19:48:37
[2026-08-25 19:48:38,103.103 INFO    ] 2026-08-25 19:48:38
[2026-08-25 19:48:38,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:48:38,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:48:38,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:48:38,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:48:38,665.665 INFO    ] time= 25/08/2026 19:48:38
[2026-08-25 19:48:38,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:48:38,690.690 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:48:38,778.778 INFO    ] No existing commands found in stream
[2026-08-25 19:48:43,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:48:43,815.815 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 19:48:44,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:48:44,590.590 INFO    ] Checking for system updates...
[2026-08-25 19:48:44,628.628 INFO    ] 200
[2026-08-25 19:48:44,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:44,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:44,701.701 INFO    ] No update needed
[2026-08-25 19:48:44,704.704 INFO    ] Checking for camera pi updates...
[2026-08-25 19:48:44,739.739 INFO    ] 200
[2026-08-25 19:48:44,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:44,784.784 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:48:44,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:44,937.937 INFO    ] No camera update needed
[2026-08-25 19:48:44,940.940 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:48:44,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:48:44,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:48:44,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:48:47,996.996 INFO    ] ================================================
[2026-08-25 19:48:47,011.011 INFO    ] Launching Daemon at Tue Aug 25 19:48:47 IST 2026
[2026-08-25 19:48:47,022.022 INFO    ] ================================================
[2026-08-25 19:48:47,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:48:47
[2026-08-25 19:48:48,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:48:48,519.519 INFO    ] Initializing speech engine...
[2026-08-25 19:48:48,542.542 INFO    ] 2026-08-25 19:48:48
[2026-08-25 19:48:48,796.796 INFO    ] 2026-08-25 19:48:48
[2026-08-25 19:48:48,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:48:49,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:48:49,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:48:49,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:48:49,285.285 INFO    ] time= 25/08/2026 19:48:49
[2026-08-25 19:48:49,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:48:49,360.360 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:48:49,503.503 INFO    ] No existing commands found in stream
[2026-08-25 19:48:54,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:48:54,522.522 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 19:48:56,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:48:56,717.717 INFO    ] Checking for system updates...
[2026-08-25 19:48:56,753.753 INFO    ] 200
[2026-08-25 19:48:56,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:56,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:56,810.810 INFO    ] No update needed
[2026-08-25 19:48:56,813.813 INFO    ] Checking for camera pi updates...
[2026-08-25 19:48:56,851.851 INFO    ] 200
[2026-08-25 19:48:56,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:48:56,898.898 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:48:56,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:48:56,946.946 INFO    ] No camera update needed
[2026-08-25 19:48:56,948.948 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:48:56,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:48:56,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:48:56,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:48:59,001.001 INFO    ] ================================================
[2026-08-25 19:48:59,016.016 INFO    ] Launching Daemon at Tue Aug 25 19:48:59 IST 2026
[2026-08-25 19:48:59,027.027 INFO    ] ================================================
[2026-08-25 19:48:59,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:48:59
[2026-08-25 19:49:00,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:49:00,491.491 INFO    ] Initializing speech engine...
[2026-08-25 19:49:00,499.499 INFO    ] 2026-08-25 19:49:00
[2026-08-25 19:49:00,757.757 INFO    ] 2026-08-25 19:49:00
[2026-08-25 19:49:00,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:49:01,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:49:01,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:49:01,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:49:01,234.234 INFO    ] time= 25/08/2026 19:49:01
[2026-08-25 19:49:01,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:49:01,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:49:01,460.460 INFO    ] No existing commands found in stream
[2026-08-25 19:49:06,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:49:06,471.471 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 19:49:10,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:49:10,458.458 INFO    ] Checking for system updates...
[2026-08-25 19:49:10,495.495 INFO    ] 200
[2026-08-25 19:49:10,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:10,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:10,554.554 INFO    ] No update needed
[2026-08-25 19:49:10,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 19:49:10,590.590 INFO    ] 200
[2026-08-25 19:49:10,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:10,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:49:10,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:10,690.690 INFO    ] No camera update needed
[2026-08-25 19:49:10,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:49:10,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:49:10,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:49:10,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:49:12,745.745 INFO    ] ================================================
[2026-08-25 19:49:12,760.760 INFO    ] Launching Daemon at Tue Aug 25 19:49:12 IST 2026
[2026-08-25 19:49:12,771.771 INFO    ] ================================================
[2026-08-25 19:49:13,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:49:13
[2026-08-25 19:49:13,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:49:14,229.229 INFO    ] Initializing speech engine...
[2026-08-25 19:49:14,239.239 INFO    ] 2026-08-25 19:49:14
[2026-08-25 19:49:14,502.502 INFO    ] 2026-08-25 19:49:14
[2026-08-25 19:49:14,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:49:14,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:49:14,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:49:14,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:49:15,030.030 INFO    ] time= 25/08/2026 19:49:14
[2026-08-25 19:49:15,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:49:15,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:49:15,217.217 INFO    ] No existing commands found in stream
[2026-08-25 19:49:20,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:49:20,246.246 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 19:49:20,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:49:20,957.957 INFO    ] Checking for system updates...
[2026-08-25 19:49:20,992.992 INFO    ] 200
[2026-08-25 19:49:20,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:21,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:21,051.051 INFO    ] No update needed
[2026-08-25 19:49:21,053.053 INFO    ] Checking for camera pi updates...
[2026-08-25 19:49:21,087.087 INFO    ] 200
[2026-08-25 19:49:21,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:21,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:49:21,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:21,181.181 INFO    ] No camera update needed
[2026-08-25 19:49:21,183.183 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:49:21,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:49:21,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:49:21,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:49:23,238.238 INFO    ] ================================================
[2026-08-25 19:49:23,253.253 INFO    ] Launching Daemon at Tue Aug 25 19:49:23 IST 2026
[2026-08-25 19:49:23,263.263 INFO    ] ================================================
[2026-08-25 19:49:23,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:49:23
[2026-08-25 19:49:24,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:49:24,678.678 INFO    ] Initializing speech engine...
[2026-08-25 19:49:24,697.697 INFO    ] 2026-08-25 19:49:24
[2026-08-25 19:49:24,960.960 INFO    ] 2026-08-25 19:49:24
[2026-08-25 19:49:25,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:49:25,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:49:25,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:49:25,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:49:25,485.485 INFO    ] time= 25/08/2026 19:49:25
[2026-08-25 19:49:25,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:49:25,548.548 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:49:25,709.709 INFO    ] No existing commands found in stream
[2026-08-25 19:49:30,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:49:30,738.738 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 19:49:33,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:49:33,384.384 INFO    ] Checking for system updates...
[2026-08-25 19:49:33,421.421 INFO    ] 200
[2026-08-25 19:49:33,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:33,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:49:33,487.487 INFO    ] No update needed
[2026-08-25 19:49:33,489.489 INFO    ] Checking for camera pi updates...
[2026-08-25 19:49:33,523.523 INFO    ] 200
[2026-08-25 19:49:33,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:33,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:49:33,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:49:33,616.616 INFO    ] No camera update needed
[2026-08-25 19:49:33,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:49:33,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:49:33,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:49:33,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:49:35,670.670 INFO    ] ================================================
[2026-08-25 19:49:35,685.685 INFO    ] Launching Daemon at Tue Aug 25 19:49:35 IST 2026
[2026-08-25 19:49:35,696.696 INFO    ] ================================================
[2026-08-25 19:49:36,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:49:36
[2026-08-25 19:49:36,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:49:37,139.139 INFO    ] Initializing speech engine...
[2026-08-25 19:49:37,145.145 INFO    ] 2026-08-25 19:49:37
[2026-08-25 19:49:37,439.439 INFO    ] 2026-08-25 19:49:37
[2026-08-25 19:49:37,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:49:37,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:49:37,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:49:37,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:49:37,822.822 INFO    ] time= 25/08/2026 19:49:37
[2026-08-25 19:49:37,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:49:37,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:49:37,949.949 INFO    ] No existing commands found in stream
[2026-08-25 19:49:42,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:49:42,987.987 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 19:49:46,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:49:46,085.085 INFO    ] Checking for system updates...
[2026-08-25 19:49:46,139.139 INFO    ] 200
[2026-08-25 19:49:46,142.142 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:46,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:46,209.209 INFO    ] No update needed
[2026-08-25 19:49:46,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 19:49:46,256.256 INFO    ] 200
[2026-08-25 19:49:46,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:46,300.300 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:49:46,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:46,362.362 INFO    ] No camera update needed
[2026-08-25 19:49:46,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:49:46,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:49:46,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:49:46,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:49:48,426.426 INFO    ] ================================================
[2026-08-25 19:49:48,440.440 INFO    ] Launching Daemon at Tue Aug 25 19:49:48 IST 2026
[2026-08-25 19:49:48,452.452 INFO    ] ================================================
[2026-08-25 19:49:49,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:49:49
[2026-08-25 19:49:49,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:49:50,077.077 INFO    ] Initializing speech engine...
[2026-08-25 19:49:50,091.091 INFO    ] 2026-08-25 19:49:50
[2026-08-25 19:49:50,375.375 INFO    ] 2026-08-25 19:49:50
[2026-08-25 19:49:50,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:49:50,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:49:50,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:49:50,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:49:50,929.929 INFO    ] time= 25/08/2026 19:49:50
[2026-08-25 19:49:50,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:49:50,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:49:51,091.091 INFO    ] No existing commands found in stream
[2026-08-25 19:49:56,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:49:56,131.131 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 19:49:59,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:49:59,431.431 INFO    ] Checking for system updates...
[2026-08-25 19:49:59,494.494 INFO    ] 200
[2026-08-25 19:49:59,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:59,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:59,552.552 INFO    ] No update needed
[2026-08-25 19:49:59,554.554 INFO    ] Checking for camera pi updates...
[2026-08-25 19:49:59,587.587 INFO    ] 200
[2026-08-25 19:49:59,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:49:59,637.637 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:49:59,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:49:59,684.684 INFO    ] No camera update needed
[2026-08-25 19:49:59,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:49:59,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:49:59,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:49:59,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:50:01,751.751 INFO    ] ================================================
[2026-08-25 19:50:01,818.818 INFO    ] Launching Daemon at Tue Aug 25 19:50:01 IST 2026
[2026-08-25 19:50:01,862.862 INFO    ] ================================================
[2026-08-25 19:50:02,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:50:02
[2026-08-25 19:50:03,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:50:03,789.789 INFO    ] Initializing speech engine...
[2026-08-25 19:50:03,807.807 INFO    ] 2026-08-25 19:50:03
[2026-08-25 19:50:04,082.082 INFO    ] 2026-08-25 19:50:04
[2026-08-25 19:50:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:50:04,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:50:04,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:50:04,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:50:04,470.470 INFO    ] time= 25/08/2026 19:50:04
[2026-08-25 19:50:04,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:50:04,539.539 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:50:04,654.654 INFO    ] No existing commands found in stream
[2026-08-25 19:50:09,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:50:09,682.682 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 19:50:11,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:50:11,825.825 INFO    ] Checking for system updates...
[2026-08-25 19:50:12,100.100 INFO    ] 200
[2026-08-25 19:50:12,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:12,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:50:12,175.175 INFO    ] No update needed
[2026-08-25 19:50:12,178.178 INFO    ] Checking for camera pi updates...
[2026-08-25 19:50:12,213.213 INFO    ] 200
[2026-08-25 19:50:12,215.215 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:12,258.258 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:50:12,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:50:12,314.314 INFO    ] No camera update needed
[2026-08-25 19:50:12,316.316 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:50:12,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:50:12,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:50:12,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:50:14,371.371 INFO    ] ================================================
[2026-08-25 19:50:14,386.386 INFO    ] Launching Daemon at Tue Aug 25 19:50:14 IST 2026
[2026-08-25 19:50:14,397.397 INFO    ] ================================================
[2026-08-25 19:50:14,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:50:14
[2026-08-25 19:50:15,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:50:15,792.792 INFO    ] Initializing speech engine...
[2026-08-25 19:50:15,805.805 INFO    ] 2026-08-25 19:50:15
[2026-08-25 19:50:16,070.070 INFO    ] 2026-08-25 19:50:16
[2026-08-25 19:50:16,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:50:16,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:50:16,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:50:16,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:50:16,448.448 INFO    ] time= 25/08/2026 19:50:16
[2026-08-25 19:50:16,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:50:16,480.480 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:50:16,632.632 INFO    ] No existing commands found in stream
[2026-08-25 19:50:21,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:50:21,660.660 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 19:50:25,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:50:25,610.610 INFO    ] Checking for system updates...
[2026-08-25 19:50:25,646.646 INFO    ] 200
[2026-08-25 19:50:25,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:25,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:50:25,709.709 INFO    ] No update needed
[2026-08-25 19:50:25,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 19:50:25,745.745 INFO    ] 200
[2026-08-25 19:50:25,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:25,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:50:25,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:50:25,842.842 INFO    ] No camera update needed
[2026-08-25 19:50:25,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:50:25,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:50:25,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:50:25,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:50:27,901.901 INFO    ] ================================================
[2026-08-25 19:50:27,916.916 INFO    ] Launching Daemon at Tue Aug 25 19:50:27 IST 2026
[2026-08-25 19:50:27,927.927 INFO    ] ================================================
[2026-08-25 19:50:28,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:50:28
[2026-08-25 19:50:29,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:50:29,327.327 INFO    ] Initializing speech engine...
[2026-08-25 19:50:29,335.335 INFO    ] 2026-08-25 19:50:29
[2026-08-25 19:50:29,650.650 INFO    ] 2026-08-25 19:50:29
[2026-08-25 19:50:29,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:50:29,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:50:29,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:50:30,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:50:30,050.050 INFO    ] time= 25/08/2026 19:50:30
[2026-08-25 19:50:30,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:50:30,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:50:30,188.188 INFO    ] No existing commands found in stream
[2026-08-25 19:50:35,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:50:35,220.220 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 19:50:37,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:50:37,183.183 INFO    ] Checking for system updates...
[2026-08-25 19:50:37,219.219 INFO    ] 200
[2026-08-25 19:50:37,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:37,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:50:37,278.278 INFO    ] No update needed
[2026-08-25 19:50:37,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 19:50:37,313.313 INFO    ] 200
[2026-08-25 19:50:37,316.316 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:37,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:50:37,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:50:37,413.413 INFO    ] No camera update needed
[2026-08-25 19:50:37,415.415 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:50:37,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:50:37,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:50:37,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:50:39,469.469 INFO    ] ================================================
[2026-08-25 19:50:39,486.486 INFO    ] Launching Daemon at Tue Aug 25 19:50:39 IST 2026
[2026-08-25 19:50:39,498.498 INFO    ] ================================================
[2026-08-25 19:50:40,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:50:40
[2026-08-25 19:50:40,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:50:41,113.113 INFO    ] Initializing speech engine...
[2026-08-25 19:50:41,121.121 INFO    ] 2026-08-25 19:50:41
[2026-08-25 19:50:41,410.410 INFO    ] 2026-08-25 19:50:41
[2026-08-25 19:50:41,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:50:41,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:50:41,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:50:41,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:50:41,941.941 INFO    ] time= 25/08/2026 19:50:41
[2026-08-25 19:50:41,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:50:41,989.989 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:50:42,119.119 INFO    ] No existing commands found in stream
[2026-08-25 19:50:47,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:50:47,153.153 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 19:50:49,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:50:49,604.604 INFO    ] Checking for system updates...
[2026-08-25 19:50:49,641.641 INFO    ] 200
[2026-08-25 19:50:49,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:49,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:50:49,709.709 INFO    ] No update needed
[2026-08-25 19:50:49,712.712 INFO    ] Checking for camera pi updates...
[2026-08-25 19:50:49,746.746 INFO    ] 200
[2026-08-25 19:50:49,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:50:49,796.796 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:50:49,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:50:49,944.944 INFO    ] No camera update needed
[2026-08-25 19:50:49,947.947 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:50:49,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:50:49,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:50:49,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:50:52,002.002 INFO    ] ================================================
[2026-08-25 19:50:52,017.017 INFO    ] Launching Daemon at Tue Aug 25 19:50:52 IST 2026
[2026-08-25 19:50:52,027.027 INFO    ] ================================================
[2026-08-25 19:50:52,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:50:52
[2026-08-25 19:50:53,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:50:53,478.478 INFO    ] Initializing speech engine...
[2026-08-25 19:50:53,494.494 INFO    ] 2026-08-25 19:50:53
[2026-08-25 19:50:53,748.748 INFO    ] 2026-08-25 19:50:53
[2026-08-25 19:50:53,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:50:54,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:50:54,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:50:54,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:50:54,249.249 INFO    ] time= 25/08/2026 19:50:54
[2026-08-25 19:50:54,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:50:54,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:50:54,447.447 INFO    ] No existing commands found in stream
[2026-08-25 19:50:59,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:50:59,467.467 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 19:51:01,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:51:01,801.801 INFO    ] Checking for system updates...
[2026-08-25 19:51:01,842.842 INFO    ] 200
[2026-08-25 19:51:01,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:01,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:51:01,908.908 INFO    ] No update needed
[2026-08-25 19:51:01,912.912 INFO    ] Checking for camera pi updates...
[2026-08-25 19:51:01,960.960 INFO    ] 200
[2026-08-25 19:51:01,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:02,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:51:02,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:51:02,095.095 INFO    ] No camera update needed
[2026-08-25 19:51:02,098.098 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:51:02,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:51:02,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:51:02,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:51:04,157.157 INFO    ] ================================================
[2026-08-25 19:51:04,173.173 INFO    ] Launching Daemon at Tue Aug 25 19:51:04 IST 2026
[2026-08-25 19:51:04,184.184 INFO    ] ================================================
[2026-08-25 19:51:04,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:51:04
[2026-08-25 19:51:05,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:51:05,645.645 INFO    ] Initializing speech engine...
[2026-08-25 19:51:05,651.651 INFO    ] 2026-08-25 19:51:05
[2026-08-25 19:51:05,916.916 INFO    ] 2026-08-25 19:51:05
[2026-08-25 19:51:05,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:51:06,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:51:06,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:51:06,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:51:06,431.431 INFO    ] time= 25/08/2026 19:51:06
[2026-08-25 19:51:06,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:51:06,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:51:06,665.665 INFO    ] No existing commands found in stream
[2026-08-25 19:51:11,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:51:11,699.699 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 19:51:14,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:51:14,138.138 INFO    ] Checking for system updates...
[2026-08-25 19:51:14,173.173 INFO    ] 200
[2026-08-25 19:51:14,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:14,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:51:14,231.231 INFO    ] No update needed
[2026-08-25 19:51:14,234.234 INFO    ] Checking for camera pi updates...
[2026-08-25 19:51:14,267.267 INFO    ] 200
[2026-08-25 19:51:14,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:14,309.309 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:51:14,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:51:14,361.361 INFO    ] No camera update needed
[2026-08-25 19:51:14,364.364 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:51:14,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:51:14,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:51:14,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:51:16,418.418 INFO    ] ================================================
[2026-08-25 19:51:16,432.432 INFO    ] Launching Daemon at Tue Aug 25 19:51:16 IST 2026
[2026-08-25 19:51:16,443.443 INFO    ] ================================================
[2026-08-25 19:51:17,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:51:17
[2026-08-25 19:51:17,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:51:18,042.042 INFO    ] Initializing speech engine...
[2026-08-25 19:51:18,056.056 INFO    ] 2026-08-25 19:51:18
[2026-08-25 19:51:18,324.324 INFO    ] 2026-08-25 19:51:18
[2026-08-25 19:51:18,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:51:18,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:51:18,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:51:18,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:51:18,873.873 INFO    ] time= 25/08/2026 19:51:18
[2026-08-25 19:51:18,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:51:18,910.910 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:51:19,030.030 INFO    ] No existing commands found in stream
[2026-08-25 19:51:24,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:51:24,068.068 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 19:51:27,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:51:27,901.901 INFO    ] Checking for system updates...
[2026-08-25 19:51:27,936.936 INFO    ] 200
[2026-08-25 19:51:27,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:27,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:51:27,994.994 INFO    ] No update needed
[2026-08-25 19:51:27,997.997 INFO    ] Checking for camera pi updates...
[2026-08-25 19:51:28,030.030 INFO    ] 200
[2026-08-25 19:51:28,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:28,072.072 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:51:28,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:51:28,122.122 INFO    ] No camera update needed
[2026-08-25 19:51:28,125.125 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:51:28,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:51:28,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:51:28,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:51:30,177.177 INFO    ] ================================================
[2026-08-25 19:51:30,191.191 INFO    ] Launching Daemon at Tue Aug 25 19:51:30 IST 2026
[2026-08-25 19:51:30,202.202 INFO    ] ================================================
[2026-08-25 19:51:30,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:51:30
[2026-08-25 19:51:31,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:51:31,674.674 INFO    ] Initializing speech engine...
[2026-08-25 19:51:31,682.682 INFO    ] 2026-08-25 19:51:31
[2026-08-25 19:51:31,955.955 INFO    ] 2026-08-25 19:51:31
[2026-08-25 19:51:32,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:51:32,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:51:32,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:51:32,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:51:32,496.496 INFO    ] time= 25/08/2026 19:51:32
[2026-08-25 19:51:32,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:51:32,572.572 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:51:32,728.728 INFO    ] No existing commands found in stream
[2026-08-25 19:51:37,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:51:37,767.767 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 19:51:40,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:51:40,911.911 INFO    ] Checking for system updates...
[2026-08-25 19:51:40,947.947 INFO    ] 200
[2026-08-25 19:51:40,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:41,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:51:41,006.006 INFO    ] No update needed
[2026-08-25 19:51:41,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 19:51:41,042.042 INFO    ] 200
[2026-08-25 19:51:41,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:41,084.084 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:51:41,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:51:41,141.141 INFO    ] No camera update needed
[2026-08-25 19:51:41,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:51:41,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:51:41,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:51:41,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:51:43,195.195 INFO    ] ================================================
[2026-08-25 19:51:43,210.210 INFO    ] Launching Daemon at Tue Aug 25 19:51:43 IST 2026
[2026-08-25 19:51:43,220.220 INFO    ] ================================================
[2026-08-25 19:51:43,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:51:43
[2026-08-25 19:51:44,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:51:44,723.723 INFO    ] Initializing speech engine...
[2026-08-25 19:51:44,737.737 INFO    ] 2026-08-25 19:51:44
[2026-08-25 19:51:45,000.000 INFO    ] 2026-08-25 19:51:44
[2026-08-25 19:51:45,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:51:45,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:51:45,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:51:45,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:51:45,546.546 INFO    ] time= 25/08/2026 19:51:45
[2026-08-25 19:51:45,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:51:45,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:51:45,749.749 INFO    ] No existing commands found in stream
[2026-08-25 19:51:50,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:51:50,778.778 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 19:51:53,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:51:53,990.990 INFO    ] Checking for system updates...
[2026-08-25 19:51:54,025.025 INFO    ] 200
[2026-08-25 19:51:54,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:54,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:51:54,083.083 INFO    ] No update needed
[2026-08-25 19:51:54,086.086 INFO    ] Checking for camera pi updates...
[2026-08-25 19:51:54,119.119 INFO    ] 200
[2026-08-25 19:51:54,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:54,162.162 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:51:54,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:51:54,213.213 INFO    ] No camera update needed
[2026-08-25 19:51:54,215.215 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:51:54,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:51:54,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:51:54,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:51:56,267.267 INFO    ] ================================================
[2026-08-25 19:51:56,282.282 INFO    ] Launching Daemon at Tue Aug 25 19:51:56 IST 2026
[2026-08-25 19:51:56,292.292 INFO    ] ================================================
[2026-08-25 19:51:56,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:51:56
[2026-08-25 19:51:57,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:51:57,749.749 INFO    ] Initializing speech engine...
[2026-08-25 19:51:57,767.767 INFO    ] 2026-08-25 19:51:57
[2026-08-25 19:51:58,042.042 INFO    ] 2026-08-25 19:51:58
[2026-08-25 19:51:58,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:51:58,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:51:58,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:51:58,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:51:58,468.468 INFO    ] time= 25/08/2026 19:51:58
[2026-08-25 19:51:58,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:51:58,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:51:58,640.640 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 19:51:58,694.694 INFO    ] Checking historical command: ID=1787667714537-0
[2026-08-25 19:51:58,706.706 INFO    ] process_and_cleanup_command: msg_id=1787667714537-0
[2026-08-25 19:51:58,713.713 INFO    ] is_command_expired: timestamp=2026-08-25T14:21:53.327Z, expiry=30s
[2026-08-25 19:51:58,908.908 INFO    ] Command removed from stream: 1787667714537-0. returning for processing...
[2026-08-25 19:51:58,930.930 INFO    ] ***** get_valid_command
[2026-08-25 19:51:58,974.974 INFO    ] {'source': 'webapp', 'timeout': '10', 'data': '{"request_id":"start-order-1787667713327-os9do04lr","orderId":"TM03202401260825195102701","is_vending":false}', 'timestamp': '2026-08-25T14:21:53.327Z', 'command': 'start-order'}
[2026-08-25 19:51:59,037.037 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825195102701', 'is_vending': False, 'request_id': 'start-order-1787667713327-os9do04lr'}
[2026-08-25 19:51:59,070.070 INFO    ] Handling start order...
[2026-08-25 19:51:59,120.120 INFO    ] handle_start_order_command
[2026-08-25 19:51:59,193.193 INFO    ] _send_start_order_success: request_id=start-order-1787667713327-os9do04lr, order_id=TM03202401260825195102701
[2026-08-25 19:51:59,227.227 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 19:51:59,391.391 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787667719322-0
[2026-08-25 19:51:59,413.413 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 19:51:59,420.420 INFO    ] Checking for system updates...
[2026-08-25 19:51:59,484.484 INFO    ] 200
[2026-08-25 19:51:59,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:59,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:51:59,574.574 INFO    ] No update needed
[2026-08-25 19:51:59,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 19:51:59,671.671 INFO    ] 200
[2026-08-25 19:51:59,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:51:59,734.734 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:51:59,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:51:59,801.801 INFO    ] No camera update needed
[2026-08-25 19:51:59,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:51:59,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:51:59,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:51:59,834.834 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 19:51:59,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:52:01,887.887 INFO    ] ================================================
[2026-08-25 19:52:01,909.909 INFO    ] Launching Daemon at Tue Aug 25 19:52:01 IST 2026
[2026-08-25 19:52:01,926.926 INFO    ] ================================================
[2026-08-25 19:52:02,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:52:02
[2026-08-25 19:52:03,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:52:03,595.595 INFO    ] Initializing speech engine...
[2026-08-25 19:52:03,603.603 INFO    ] 2026-08-25 19:52:03
[2026-08-25 19:52:03,893.893 INFO    ] 2026-08-25 19:52:03
[2026-08-25 19:52:04,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:52:04,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:52:04,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:52:04,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:52:04,423.423 INFO    ] time= 25/08/2026 19:52:04
[2026-08-25 19:52:04,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:52:04,471.471 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:52:04,605.605 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 19:52:04,665.665 INFO    ] Checking historical command: ID=1787667719322-0
[2026-08-25 19:52:04,695.695 INFO    ] process_and_cleanup_command: msg_id=1787667719322-0
[2026-08-25 19:52:04,740.740 INFO    ] is_command_expired: timestamp=2026-08-25T14:21:59.204910Z, expiry=30s
[2026-08-25 19:52:05,002.002 INFO    ] Command removed from stream: 1787667719322-0. returning for processing...
[2026-08-25 19:52:05,043.043 INFO    ] ***** get_valid_command
[2026-08-25 19:52:05,050.050 INFO    ] {'timestamp': '2026-08-25T14:21:59.204910Z', 'message': 'start-order success', 'metadata_order_id': 'TM03202401260825195102701', 'metadata_request_id': 'start-order-1787667713327-os9do04lr', 'message_type': 'command_response', 'imei': 'TM03202401', 'status': 'success'}
[2026-08-25 19:52:05,069.069 INFO    ] Checking historical command: ID=1787667721984-0
[2026-08-25 19:52:05,104.104 INFO    ] process_and_cleanup_command: msg_id=1787667721984-0
[2026-08-25 19:52:05,107.107 INFO    ] is_command_expired: timestamp=2026-08-25T14:22:00.885Z, expiry=30s
[2026-08-25 19:52:05,187.187 INFO    ] Command removed from stream: 1787667721984-0. returning for processing...
[2026-08-25 19:52:05,192.192 INFO    ] ***** get_valid_command
[2026-08-25 19:52:05,196.196 INFO    ] {'timestamp': '2026-08-25T14:22:00.885Z', 'source': 'webapp', 'command': 'process-order', 'timeout': '60', 'data': '{"request_id":"process-order-1787667720885-pq03f4s1i","orderId":"TM03202401260825195102701","is_vending":false,"accessCode":"10935404"}'}
[2026-08-25 19:52:05,199.199 INFO    ] ***** Parsed command data: {'accessCode': '10935404', 'is_vending': False, 'request_id': 'process-order-1787667720885-pq03f4s1i', 'orderId': 'TM03202401260825195102701'}
[2026-08-25 19:52:05,228.228 INFO    ] Handling process order...
[2026-08-25 19:52:05,288.288 INFO    ] Processing process-order command...
[2026-08-25 19:52:05,319.319 INFO    ] 🔍 Lock file Order ID: TM03202401260825195102701, TS: 2026-08-25 19:51:59
[2026-08-25 19:52:05,337.337 INFO    ] ✅ Order lock valid for TM03202401260825195102701
[2026-08-25 19:52:05,342.342 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 19:52:05,351.351 INFO    ] processing access code 10935404 for order TM03202401260825195102701
[2026-08-25 19:52:05,359.359 INFO    ] 🔍 Lock file Order ID: TM03202401260825195102701, TS: 2026-08-25 19:51:59
[2026-08-25 19:52:05,365.365 INFO    ] ✅ Order lock valid for TM03202401260825195102701
[2026-08-25 19:52:05,372.372 INFO    ] 2026-08-25 19:52:05
[2026-08-25 19:52:05,424.424 INFO    ] 200
[2026-08-25 19:52:05,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:52:05,439.439 INFO    ] 10935404
[2026-08-25 19:52:05,444.444 INFO    ] 2026-08-25 19:52:05
[2026-08-25 19:52:05,450.450 INFO    ] session id :642132918
[2026-08-25 19:52:05,457.457 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=10935404&imei=TM03202401&session_id=642132918
[2026-08-25 19:52:06,683.683 INFO    ] 200
[2026-08-25 19:52:06,692.692 INFO    ] {"data": {"access_code": "10935404", "order_id": "TM03202401260825195102701", "bill_amount": "20", "invoice_bill": "20", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500726", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500726-818.jpeg", "tray_id": "19", "mrp": "10", "name": "MaxVita Crunchy Indian Mixture 30gm", "sku_total": 10}, {"offer_desc": "", "qty": 1, "skuid": "4500730", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500730-5277.png", "tray_id": "21", "mrp": "10", "name": "Maxvita Khara Boondi 28gm", "sku_total": 10}], "mobile": "9686173115"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 19:52:06,717.717 INFO    ] 20
[2026-08-25 19:52:06,722.722 INFO    ] TM03202401260825195102701
[2026-08-25 19:52:06,730.730 INFO    ] 9686173115
[2026-08-25 19:52:06,738.738 INFO    ] 2026-08-25 19:52:06
[2026-08-25 19:52:06,750.750 INFO    ] Door Opening for user mobile ending with  three one one five 
[2026-08-25 19:52:06,770.770 INFO    ] Door Opening for user mobile ending with  three one one five 
[2026-08-25 19:52:06,794.794 INFO    ] 242c4802c5e01063ef38327ed05afe84
[2026-08-25 19:52:06,879.879 INFO    ] 2026-08-25 19:52:06
[2026-08-25 19:52:06,935.935 INFO    ] playing audio file
[2026-08-25 19:52:06,969.969 INFO    ] 2026-08-25 19:52:06
[2026-08-25 19:52:06,990.990 INFO    ] 2026-08-25 19:52:06
[2026-08-25 19:52:07,004.004 INFO    ] publish_status: order_id=TM03202401260825195102701
[2026-08-25 19:52:07,014.014 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825195102701
[2026-08-25 19:52:07,084.084 INFO    ] [publish_status] Message added to stream with ID: 1787667727093-0
[2026-08-25 19:52:07,087.087 INFO    ] Published to order:TM03202401260825195102701: {'timestamp': '2026-08-25T14:22:06.994723Z', 'order_id': 'TM03202401260825195102701', 'server_status': 'order-started', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"mrp": "10", "offer_desc": "", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500726-818.jpeg", "sku_total": 10, "skuid": "4500726", "tray_id": "19", "name": "MaxVita Crunchy Indian Mixture 30gm", "qty": 1, "door_id": "1", "offer_id": ""}, {"mrp": "10", "offer_desc": "", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500730-5277.png", "sku_total": 10, "skuid": "4500730", "tray_id": "21", "name": "Maxvita Khara Boondi 28gm", "qty": 1, "door_id": "1", "offer_id": ""}], "access_code": "10935404", "bill_amount": "20", "order_id": "TM03202401260825195102701", "mobile": "9686173115", "invoice_bill": "20"}}'} (ID: 1787667727093-0)
[2026-08-25 19:52:07,591.591 INFO    ] {'order_id': 'TM03202401260825195102701', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'mrp': '10', 'offer_desc': '', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500726-818.jpeg', 'sku_total': 10, 'skuid': '4500726', 'tray_id': '19', 'name': 'MaxVita Crunchy Indian Mixture 30gm', 'qty': 1, 'door_id': '1', 'offer_id': ''}, {'mrp': '10', 'offer_desc': '', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500730-5277.png', 'sku_total': 10, 'skuid': '4500730', 'tray_id': '21', 'name': 'Maxvita Khara Boondi 28gm', 'qty': 1, 'door_id': '1', 'offer_id': ''}], 'access_code': '10935404', 'bill_amount': '20', 'order_id': 'TM03202401260825195102701', 'mobile': '9686173115', 'invoice_bill': '20'}}}
[2026-08-25 19:52:07,594.594 INFO    ] 200
[2026-08-25 19:52:07,596.596 INFO    ] {"data":{"order_id":"TM03202401260825195102701","server_status":"order-started","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"proposed_sku_json":[{"mrp":"10","offer_desc":"","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500726-818.jpeg","sku_total":10,"skuid":"4500726","tray_id":"19","name":"MaxVita Crunchy Indian Mixture 30gm","qty":1,"door_id":"1","offer_id":""},{"mrp":"10","offer_desc":"","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500730-5277.png","sku_total":10,"skuid":"4500730","tray_id":"21","name":"Maxvita Khara Boondi 28gm","qty":1,"door_id":"1","offer_id":""}],"access_code":"10935404","bill_amount":"20","order_id":"TM03202401260825195102701","mobile":"9686173115","invoice_bill":"20"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:52:07,599.599 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM03202401260825195102701', 'server_status': 'order-started', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'door_id': '1', 'tray_id': '19', 'offer_desc': '', 'name': 'MaxVita Crunchy Indian Mixture 30gm', 'image_url': 'https://images.tinymart.in/product/4500726-818.jpeg', 'sku_total': 10, 'skuid': '4500726', 'mrp': '10', 'qty': 1, 'unit_price': 10, 'offer_id': ''}, {'door_id': '1', 'tray_id': '21', 'offer_desc': '', 'name': 'Maxvita Khara Boondi 28gm', 'image_url': 'https://images.tinymart.in/product/4500730-5277.png', 'sku_total': 10, 'skuid': '4500730', 'mrp': '10', 'qty': 1, 'unit_price': 10, 'offer_id': ''}], 'access_code': '10935404', 'bill_amount': '20', 'order_id': 'TM03202401260825195102701', 'mobile': '9686173115', 'invoice_bill': '20'}}}}
[2026-08-25 19:52:07,602.602 INFO    ] 2026-08-25 19:52:07
[2026-08-25 19:52:07,643.643 INFO    ] 200
[2026-08-25 19:52:07,646.646 INFO    ] True
[2026-08-25 19:52:07,813.813 INFO    ] 200
[2026-08-25 19:52:07,816.816 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 19:52:07,819.819 INFO    ] {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-08-25 19:52:07,825.825 INFO    ] *** process_order ***
[2026-08-25 19:52:09,006.006 INFO    ] 200
[2026-08-25 19:52:09,008.008 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 19:52:09,012.012 INFO    ] {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'True'}
[2026-08-25 19:52:09,015.015 INFO    ] *** process_order ***
[2026-08-25 19:52:09,017.017 INFO    ] publish_status: order_id=TM03202401260825195102701
[2026-08-25 19:52:09,020.020 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825195102701
[2026-08-25 19:52:09,106.106 INFO    ] [publish_status] Message added to stream with ID: 1787667729113-0
[2026-08-25 19:52:09,108.108 INFO    ] Published to order:TM03202401260825195102701: {'order_id': 'TM03202401260825195102701', 'server_status': 'doorOpened', 'server_response': '{"SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open...", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "status": "True"}'} (ID: 1787667729113-0)
[2026-08-25 19:52:10,165.165 INFO    ] 2026-08-25 19:52:10
[2026-08-25 19:52:10,169.169 INFO    ] publish_status: order_id=TM03202401260825195102701
[2026-08-25 19:52:10,172.172 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825195102701
[2026-08-25 19:52:10,272.272 INFO    ] [publish_status] Message added to stream with ID: 1787667730281-0
[2026-08-25 19:52:10,275.275 INFO    ] Published to order:TM03202401260825195102701: {'timestamp': '2026-08-25T14:22:10.167365Z', 'order_id': 'TM03202401260825195102701', 'server_status': 'processOrder', 'server_response': '{"SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "status": "True"}'} (ID: 1787667730281-0)
[2026-08-25 19:52:10,438.438 INFO    ] {'order_id': 'TM03202401260825195102701', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'status': 'True'}}
[2026-08-25 19:52:10,440.440 INFO    ] 200
[2026-08-25 19:52:10,443.443 INFO    ] {"data":{"order_id":"TM03202401260825195102701","server_status":"processOrder","server_response":{"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""},"delay":0,"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"rstatus":true,"status":"true"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:52:10,446.446 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM03202401260825195102701', 'server_status': 'processOrder', 'server_response': {'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'voiceNote': 'Please Wait'}}}
[2026-08-25 19:52:10,449.449 INFO    ] 2026-08-25 19:52:10
[2026-08-25 19:52:10,451.451 INFO    ] None
[2026-08-25 19:52:10,454.454 INFO    ] Opening Door now
[2026-08-25 19:52:10,457.457 INFO    ] Opening Door now
[2026-08-25 19:52:10,459.459 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 19:52:10,462.462 INFO    ] 2026-08-25 19:52:10
[2026-08-25 19:52:10,464.464 INFO    ] playing audio file
[2026-08-25 19:52:10,481.481 INFO    ] 2026-08-25 19:52:10
[2026-08-25 19:52:10,483.483 INFO    ] 2026-08-25 19:52:10
[2026-08-25 19:52:13,546.546 INFO    ] 200
[2026-08-25 19:52:13,549.549 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MaxVita Crunchy Indian Mixture 30gm"}, {"qty": 1, "name": "Maxvita Khara Boondi 28gm"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 19:52:13,552.552 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'skus': [{'name': 'MaxVita Crunchy Indian Mixture 30gm', 'qty': 1}, {'name': 'Maxvita Khara Boondi 28gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-08-25 19:52:16,623.623 INFO    ] 200
[2026-08-25 19:52:16,626.626 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MaxVita Crunchy Indian Mixture 30gm"}, {"qty": 1, "name": "Maxvita Khara Boondi 28gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 19:52:16,630.630 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'MaxVita Crunchy Indian Mixture 30gm', 'qty': 1}, {'name': 'Maxvita Khara Boondi 28gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-08-25 19:52:19,696.696 INFO    ] 200
[2026-08-25 19:52:19,699.699 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MaxVita Crunchy Indian Mixture 30gm"}, {"qty": 1, "name": "Maxvita Khara Boondi 28gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 19:52:19,703.703 INFO    ] Please close door 1
[2026-08-25 19:52:19,707.707 INFO    ] Please close door 1
[2026-08-25 19:52:19,710.710 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 19:52:19,713.713 INFO    ] 2026-08-25 19:52:19
[2026-08-25 19:52:19,716.716 INFO    ] playing audio file
[2026-08-25 19:52:19,733.733 INFO    ] 2026-08-25 19:52:19
[2026-08-25 19:52:19,736.736 INFO    ] publish_status: order_id=TM03202401260825195102701
[2026-08-25 19:52:19,739.739 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825195102701
[2026-08-25 19:52:19,805.805 INFO    ] [publish_status] Message added to stream with ID: 1787667739813-0
[2026-08-25 19:52:19,808.808 INFO    ] Published to order:TM03202401260825195102701: {'timestamp': '2026-08-25T14:22:19.734990Z', 'order_id': 'TM03202401260825195102701', 'server_status': 'OrderStatus', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "MaxVita Crunchy Indian Mixture 30gm", "qty": 1}, {"name": "Maxvita Khara Boondi 28gm", "qty": 1}], "Header": "Pick the below items from the door"}, "rstatus": false, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False"}'} (ID: 1787667739813-0)
[2026-08-25 19:52:20,352.352 INFO    ] {'order_id': 'TM03202401260825195102701', 'server_status': 'OrderStatus', 'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'MaxVita Crunchy Indian Mixture 30gm', 'qty': 1}, {'name': 'Maxvita Khara Boondi 28gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}}
[2026-08-25 19:52:20,355.355 INFO    ] 200
[2026-08-25 19:52:20,357.357 INFO    ] {"data":{"order_id":"TM03202401260825195102701","server_status":"OrderStatus","server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"MaxVita Crunchy Indian Mixture 30gm","qty":1},{"name":"Maxvita Khara Boondi 28gm","qty":1}],"Header":"Pick the below items from the door"},"rstatus":false,"error":{"umessage":"In Progress","tmessage":"In Progress","code":20001,"data":[]},"status":"false"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:52:20,360.360 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM03202401260825195102701', 'server_status': 'OrderStatus', 'server_response': {'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'}, 'SectionMain': {'Header': 'Door Open'}, 'status': 'false', 'SectionSKU': {'skus': [{'name': 'MaxVita Crunchy Indian Mixture 30gm', 'qty': 1}, {'name': 'Maxvita Khara Boondi 28gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': []}, 'voiceNote': 'Please close door 1'}}}
[2026-08-25 19:52:20,363.363 INFO    ] {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'MaxVita Crunchy Indian Mixture 30gm', 'qty': 1}, {'name': 'Maxvita Khara Boondi 28gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-08-25 19:52:23,426.426 INFO    ] 200
[2026-08-25 19:52:23,428.428 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 19:52:23,432.432 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'status': 'True'}
[2026-08-25 19:52:23,437.437 INFO    ] 2026-08-25 19:52:23
[2026-08-25 19:52:23,440.440 INFO    ] Order Completed 
[2026-08-25 19:52:23,442.442 INFO    ] Order Completed 
[2026-08-25 19:52:23,448.448 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 19:52:23,451.451 INFO    ] 2026-08-25 19:52:23
[2026-08-25 19:52:23,455.455 INFO    ] playing audio file
[2026-08-25 19:52:23,474.474 INFO    ] 2026-08-25 19:52:23
[2026-08-25 19:52:23,478.478 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'status': 'True'}
[2026-08-25 19:52:23,481.481 INFO    ] 2026-08-25 19:52:23
[2026-08-25 19:52:25,477.477 INFO    ] 200
[2026-08-25 19:52:25,480.480 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825195102701", "skus": [{"image_url": "https://images.tinymart.in/product/4500726-818.jpeg", "skuid": "4500726", "door_id": "", "unit_price": "10", "qty": 2, "tray_id": "19", "mrp": "10", "name": "MaxVita Crunchy Indian Mixture 30gm per peice", "sku_total": 20.0}], "res": "True", "total_amount": 20.0, "logic": "WBL"}
[2026-08-25 19:52:25,483.483 INFO    ] {'skus': [{'mrp': '10', 'door_id': '', 'name': 'MaxVita Crunchy Indian Mixture 30gm per peice', 'image_url': 'https://images.tinymart.in/product/4500726-818.jpeg', 'sku_total': 20.0, 'skuid': '4500726', 'tray_id': '19', 'qty': 2, 'unit_price': '10'}], 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 20.0, 'res': 'True', 'orderId': 'TM03202401260825195102701'}
[2026-08-25 19:52:25,488.488 INFO    ] {'skus': [{'mrp': '10', 'door_id': '', 'name': 'MaxVita Crunchy Indian Mixture 30gm per peice', 'image_url': 'https://images.tinymart.in/product/4500726-818.jpeg', 'sku_total': 20.0, 'skuid': '4500726', 'tray_id': '19', 'qty': 2, 'unit_price': '10'}], 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 20.0, 'res': 'True', 'orderId': 'TM03202401260825195102701'}
[2026-08-25 19:52:25,490.490 INFO    ] 2026-08-25 19:52:25
[2026-08-25 19:52:25,495.495 INFO    ] 2026-08-25 19:52:25
[2026-08-25 19:52:25,498.498 INFO    ] 20
[2026-08-25 19:52:25,501.501 INFO    ] 2026-08-25 19:52:25
[2026-08-25 19:52:25,504.504 INFO    ] 2026-08-25 19:52:25
[2026-08-25 19:52:25,507.507 INFO    ]  Your Bill Amount is 20
[2026-08-25 19:52:25,510.510 INFO    ]  Your Bill Amount is 20
[2026-08-25 19:52:25,513.513 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-08-25 19:52:25,517.517 INFO    ] 2026-08-25 19:52:25
[2026-08-25 19:52:25,520.520 INFO    ] playing audio file
[2026-08-25 19:52:25,539.539 INFO    ] 2026-08-25 19:52:25
[2026-08-25 19:52:25,542.542 INFO    ] 2026-08-25 19:52:25
[2026-08-25 19:52:25,546.546 INFO    ] publish_status: order_id=TM03202401260825195102701
[2026-08-25 19:52:25,549.549 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825195102701
[2026-08-25 19:52:25,617.617 INFO    ] [publish_status] Message added to stream with ID: 1787667745623-0
[2026-08-25 19:52:25,620.620 INFO    ] Published to order:TM03202401260825195102701: {'timestamp': '2026-08-25T14:22:25.544176Z', 'order_id': 'TM03202401260825195102701', 'server_status': 'invoiceOrder', 'server_response': '{"skus": [{"mrp": "10", "door_id": "", "name": "MaxVita Crunchy Indian Mixture 30gm per peice", "image_url": "https://images.tinymart.in/product/4500726-818.jpeg", "sku_total": 20.0, "skuid": "4500726", "tray_id": "19", "qty": 2, "unit_price": "10"}], "logic": "WBL", "anomaly": 0, "rstatus": true, "total_amount": 20.0, "res": "True", "orderId": "TM03202401260825195102701"}'} (ID: 1787667745623-0)
[2026-08-25 19:52:26,313.313 INFO    ] {'order_id': 'TM03202401260825195102701', 'server_status': 'invoiceOrder', 'server_response': {'skus': [{'mrp': '10', 'door_id': '', 'name': 'MaxVita Crunchy Indian Mixture 30gm per peice', 'image_url': 'https://images.tinymart.in/product/4500726-818.jpeg', 'sku_total': 20.0, 'skuid': '4500726', 'tray_id': '19', 'qty': 2, 'unit_price': '10'}], 'logic': 'WBL', 'anomaly': 0, 'rstatus': True, 'total_amount': 20.0, 'res': 'True', 'orderId': 'TM03202401260825195102701'}}
[2026-08-25 19:52:26,316.316 INFO    ] 200
[2026-08-25 19:52:26,319.319 INFO    ] {"data":{"order_id":"TM03202401260825195102701","server_status":"invoiceOrder","server_response":{"skus":[{"mrp":"10","door_id":"","name":"MaxVita Crunchy Indian Mixture 30gm per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500726-818.jpeg","sku_total":20,"skuid":"4500726","tray_id":"19","qty":2,"unit_price":"10"}],"logic":"WBL","anomaly":0,"rstatus":true,"total_amount":20,"res":"true","orderId":"TM03202401260825195102701"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 19:52:26,322.322 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM03202401260825195102701', 'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'skus': [{'tray_id': '19', 'name': 'MaxVita Crunchy Indian Mixture 30gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500726-818.jpeg', 'sku_total': 20, 'skuid': '4500726', 'mrp': '10', 'qty': 2, 'door_id': ''}], 'anomaly': 0, 'rstatus': True, 'total_amount': 20, 'res': 'true', 'orderId': 'TM03202401260825195102701'}}}
[2026-08-25 19:52:26,325.325 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM03202401260825195102701', 'server_status': 'invoiceOrder', 'server_response': {'logic': 'WBL', 'skus': [{'tray_id': '19', 'name': 'MaxVita Crunchy Indian Mixture 30gm per peice', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500726-818.jpeg', 'sku_total': 20, 'skuid': '4500726', 'mrp': '10', 'qty': 2, 'door_id': ''}], 'anomaly': 0, 'rstatus': True, 'total_amount': 20, 'res': 'true', 'orderId': 'TM03202401260825195102701'}}}
[2026-08-25 19:52:26,328.328 INFO    ] 2026-08-25 19:52:26
[2026-08-25 19:52:30,209.209 INFO    ] 200
[2026-08-25 19:52:30,212.212 INFO    ] {"orders_synced": ["TM08202201230220183652764", "TM08202201230227153633830", "TM06202304230615192111045", "TM06202304230623120159705", "TM06202304230623120333811", "TM06202304230623133658760", "TM06202304250610165735127", "TM06202304250624103203715", "TM03202401260819174013487"], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": [], "order_items": [], "tray_synced": ["TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701", "TM03202401260825195102701"], "status": true}
[2026-08-25 19:52:30,217.217 INFO    ] 2026-08-25 19:52:30
[2026-08-25 19:52:30,333.333 INFO    ] 200
[2026-08-25 19:52:30,336.336 INFO    ] True
[2026-08-25 19:52:30,339.339 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825195102701
[2026-08-25 19:52:30,343.343 INFO    ] start order file deleted
[2026-08-25 19:52:30,346.346 INFO    ] Checking for system updates...
[2026-08-25 19:52:30,383.383 INFO    ] 200
[2026-08-25 19:52:30,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:52:30,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:52:30,445.445 INFO    ] No update needed
[2026-08-25 19:52:30,448.448 INFO    ] Checking for camera pi updates...
[2026-08-25 19:52:30,489.489 INFO    ] 200
[2026-08-25 19:52:30,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:52:30,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:52:30,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:52:30,593.593 INFO    ] No camera update needed
[2026-08-25 19:52:30,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:52:30,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:52:30,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:52:30,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:52:32,654.654 INFO    ] ================================================
[2026-08-25 19:52:32,674.674 INFO    ] Launching Daemon at Tue Aug 25 19:52:32 IST 2026
[2026-08-25 19:52:32,685.685 INFO    ] ================================================
[2026-08-25 19:52:33,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:52:33
[2026-08-25 19:52:33,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:52:34,170.170 INFO    ] Initializing speech engine...
[2026-08-25 19:52:34,176.176 INFO    ] 2026-08-25 19:52:34
[2026-08-25 19:52:34,446.446 INFO    ] 2026-08-25 19:52:34
[2026-08-25 19:52:34,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:52:34,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:52:34,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:52:34,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:52:34,955.955 INFO    ] time= 25/08/2026 19:52:34
[2026-08-25 19:52:34,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:52:35,053.053 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:52:35,161.161 INFO    ] No existing commands found in stream
[2026-08-25 19:52:40,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:52:40,176.176 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 19:52:41,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:52:41,810.810 INFO    ] Checking for system updates...
[2026-08-25 19:52:41,846.846 INFO    ] 200
[2026-08-25 19:52:41,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:52:41,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:52:41,910.910 INFO    ] No update needed
[2026-08-25 19:52:41,913.913 INFO    ] Checking for camera pi updates...
[2026-08-25 19:52:41,950.950 INFO    ] 200
[2026-08-25 19:52:41,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:52:41,993.993 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:52:42,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:52:42,052.052 INFO    ] No camera update needed
[2026-08-25 19:52:42,055.055 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:52:42,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:52:42,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:52:42,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:52:44,108.108 INFO    ] ================================================
[2026-08-25 19:52:44,123.123 INFO    ] Launching Daemon at Tue Aug 25 19:52:44 IST 2026
[2026-08-25 19:52:44,134.134 INFO    ] ================================================
[2026-08-25 19:52:44,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:52:44
[2026-08-25 19:52:45,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:52:45,557.557 INFO    ] Initializing speech engine...
[2026-08-25 19:52:45,563.563 INFO    ] 2026-08-25 19:52:45
[2026-08-25 19:52:45,865.865 INFO    ] 2026-08-25 19:52:45
[2026-08-25 19:52:45,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:52:46,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:52:46,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:52:46,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:52:46,258.258 INFO    ] time= 25/08/2026 19:52:46
[2026-08-25 19:52:46,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:52:46,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:52:46,401.401 INFO    ] No existing commands found in stream
[2026-08-25 19:52:51,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:52:51,429.429 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 19:52:55,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:52:55,378.378 INFO    ] Checking for system updates...
[2026-08-25 19:52:55,414.414 INFO    ] 200
[2026-08-25 19:52:55,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:52:55,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:52:55,473.473 INFO    ] No update needed
[2026-08-25 19:52:55,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 19:52:55,510.510 INFO    ] 200
[2026-08-25 19:52:55,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:52:55,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:52:55,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:52:55,703.703 INFO    ] No camera update needed
[2026-08-25 19:52:55,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:52:55,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:52:55,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:52:55,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:52:57,762.762 INFO    ] ================================================
[2026-08-25 19:52:57,778.778 INFO    ] Launching Daemon at Tue Aug 25 19:52:57 IST 2026
[2026-08-25 19:52:57,790.790 INFO    ] ================================================
[2026-08-25 19:52:58,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:52:58
[2026-08-25 19:52:58,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:52:59,217.217 INFO    ] Initializing speech engine...
[2026-08-25 19:52:59,226.226 INFO    ] 2026-08-25 19:52:59
[2026-08-25 19:52:59,474.474 INFO    ] 2026-08-25 19:52:59
[2026-08-25 19:52:59,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:52:59,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:52:59,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:52:59,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:52:59,966.966 INFO    ] time= 25/08/2026 19:52:59
[2026-08-25 19:53:00,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:53:00,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:53:00,183.183 INFO    ] No existing commands found in stream
[2026-08-25 19:53:05,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:53:05,210.210 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 19:53:08,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:53:08,508.508 INFO    ] Checking for system updates...
[2026-08-25 19:53:08,543.543 INFO    ] 200
[2026-08-25 19:53:08,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:08,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:08,600.600 INFO    ] No update needed
[2026-08-25 19:53:08,603.603 INFO    ] Checking for camera pi updates...
[2026-08-25 19:53:08,636.636 INFO    ] 200
[2026-08-25 19:53:08,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:08,689.689 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:53:08,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:08,739.739 INFO    ] No camera update needed
[2026-08-25 19:53:08,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:53:08,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:53:08,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:53:08,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:53:10,795.795 INFO    ] ================================================
[2026-08-25 19:53:10,811.811 INFO    ] Launching Daemon at Tue Aug 25 19:53:10 IST 2026
[2026-08-25 19:53:10,822.822 INFO    ] ================================================
[2026-08-25 19:53:11,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:53:11
[2026-08-25 19:53:12,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:53:12,282.282 INFO    ] Initializing speech engine...
[2026-08-25 19:53:12,293.293 INFO    ] 2026-08-25 19:53:12
[2026-08-25 19:53:12,541.541 INFO    ] 2026-08-25 19:53:12
[2026-08-25 19:53:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:53:12,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:53:12,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:53:12,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:53:13,037.037 INFO    ] time= 25/08/2026 19:53:12
[2026-08-25 19:53:13,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:53:13,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:53:13,236.236 INFO    ] No existing commands found in stream
[2026-08-25 19:53:18,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:53:18,263.263 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-08-25 19:53:19,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:53:19,877.877 INFO    ] Checking for system updates...
[2026-08-25 19:53:19,913.913 INFO    ] 200
[2026-08-25 19:53:19,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:19,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:19,970.970 INFO    ] No update needed
[2026-08-25 19:53:19,973.973 INFO    ] Checking for camera pi updates...
[2026-08-25 19:53:20,007.007 INFO    ] 200
[2026-08-25 19:53:20,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:20,050.050 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:53:20,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:20,101.101 INFO    ] No camera update needed
[2026-08-25 19:53:20,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:53:20,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:53:20,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:53:20,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:53:22,159.159 INFO    ] ================================================
[2026-08-25 19:53:22,174.174 INFO    ] Launching Daemon at Tue Aug 25 19:53:22 IST 2026
[2026-08-25 19:53:22,185.185 INFO    ] ================================================
[2026-08-25 19:53:22,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:53:22
[2026-08-25 19:53:23,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:53:23,622.622 INFO    ] Initializing speech engine...
[2026-08-25 19:53:23,631.631 INFO    ] 2026-08-25 19:53:23
[2026-08-25 19:53:23,877.877 INFO    ] 2026-08-25 19:53:23
[2026-08-25 19:53:23,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:53:24,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:53:24,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:53:24,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:53:24,357.357 INFO    ] time= 25/08/2026 19:53:24
[2026-08-25 19:53:24,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:53:24,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:53:24,587.587 INFO    ] No existing commands found in stream
[2026-08-25 19:53:29,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:53:29,608.608 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 19:53:33,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:53:33,365.365 INFO    ] Checking for system updates...
[2026-08-25 19:53:33,401.401 INFO    ] 200
[2026-08-25 19:53:33,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:33,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:33,458.458 INFO    ] No update needed
[2026-08-25 19:53:33,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 19:53:33,493.493 INFO    ] 200
[2026-08-25 19:53:33,496.496 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:33,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:53:33,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:33,596.596 INFO    ] No camera update needed
[2026-08-25 19:53:33,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:53:33,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:53:33,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:53:33,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:53:35,651.651 INFO    ] ================================================
[2026-08-25 19:53:35,667.667 INFO    ] Launching Daemon at Tue Aug 25 19:53:35 IST 2026
[2026-08-25 19:53:35,678.678 INFO    ] ================================================
[2026-08-25 19:53:36,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:53:36
[2026-08-25 19:53:36,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:53:37,176.176 INFO    ] Initializing speech engine...
[2026-08-25 19:53:37,186.186 INFO    ] 2026-08-25 19:53:37
[2026-08-25 19:53:37,442.442 INFO    ] 2026-08-25 19:53:37
[2026-08-25 19:53:37,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:53:37,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:53:37,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:53:37,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:53:37,935.935 INFO    ] time= 25/08/2026 19:53:37
[2026-08-25 19:53:37,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:53:38,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:53:38,149.149 INFO    ] No existing commands found in stream
[2026-08-25 19:53:43,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:53:43,178.178 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 19:53:46,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:53:46,316.316 INFO    ] Checking for system updates...
[2026-08-25 19:53:46,357.357 INFO    ] 200
[2026-08-25 19:53:46,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:46,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:53:46,423.423 INFO    ] No update needed
[2026-08-25 19:53:46,426.426 INFO    ] Checking for camera pi updates...
[2026-08-25 19:53:46,462.462 INFO    ] 200
[2026-08-25 19:53:46,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:46,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:53:46,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:53:46,564.564 INFO    ] No camera update needed
[2026-08-25 19:53:46,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:53:46,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:53:46,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:53:46,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:53:48,623.623 INFO    ] ================================================
[2026-08-25 19:53:48,638.638 INFO    ] Launching Daemon at Tue Aug 25 19:53:48 IST 2026
[2026-08-25 19:53:48,650.650 INFO    ] ================================================
[2026-08-25 19:53:49,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:53:49
[2026-08-25 19:53:49,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:53:50,261.261 INFO    ] Initializing speech engine...
[2026-08-25 19:53:50,272.272 INFO    ] 2026-08-25 19:53:50
[2026-08-25 19:53:50,548.548 INFO    ] 2026-08-25 19:53:50
[2026-08-25 19:53:50,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:53:50,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:53:50,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:53:51,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:53:51,094.094 INFO    ] time= 25/08/2026 19:53:51
[2026-08-25 19:53:51,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:53:51,121.121 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:53:51,248.248 INFO    ] No existing commands found in stream
[2026-08-25 19:53:56,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:53:56,266.266 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 19:53:59,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:53:59,228.228 INFO    ] Checking for system updates...
[2026-08-25 19:53:59,269.269 INFO    ] 200
[2026-08-25 19:53:59,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:59,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:59,332.332 INFO    ] No update needed
[2026-08-25 19:53:59,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 19:53:59,370.370 INFO    ] 200
[2026-08-25 19:53:59,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:53:59,417.417 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:53:59,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:53:59,476.476 INFO    ] No camera update needed
[2026-08-25 19:53:59,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:53:59,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:53:59,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:53:59,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:54:01,541.541 INFO    ] ================================================
[2026-08-25 19:54:01,560.560 INFO    ] Launching Daemon at Tue Aug 25 19:54:01 IST 2026
[2026-08-25 19:54:01,581.581 INFO    ] ================================================
[2026-08-25 19:54:02,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:54:02
[2026-08-25 19:54:02,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:54:03,203.203 INFO    ] Initializing speech engine...
[2026-08-25 19:54:03,213.213 INFO    ] 2026-08-25 19:54:03
[2026-08-25 19:54:03,462.462 INFO    ] 2026-08-25 19:54:03
[2026-08-25 19:54:03,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:54:03,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:54:03,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:54:03,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:54:03,844.844 INFO    ] time= 25/08/2026 19:54:03
[2026-08-25 19:54:03,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:54:03,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:54:04,041.041 INFO    ] No existing commands found in stream
[2026-08-25 19:54:09,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:54:09,058.058 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-08-25 19:54:11,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:54:11,887.887 INFO    ] Checking for system updates...
[2026-08-25 19:54:11,922.922 INFO    ] 200
[2026-08-25 19:54:11,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:11,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:54:11,981.981 INFO    ] No update needed
[2026-08-25 19:54:11,983.983 INFO    ] Checking for camera pi updates...
[2026-08-25 19:54:12,017.017 INFO    ] 200
[2026-08-25 19:54:12,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:12,061.061 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:54:12,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:54:12,108.108 INFO    ] No camera update needed
[2026-08-25 19:54:12,111.111 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:54:12,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:54:12,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:54:12,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:54:14,166.166 INFO    ] ================================================
[2026-08-25 19:54:14,181.181 INFO    ] Launching Daemon at Tue Aug 25 19:54:14 IST 2026
[2026-08-25 19:54:14,193.193 INFO    ] ================================================
[2026-08-25 19:54:14,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:54:14
[2026-08-25 19:54:15,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:54:15,650.650 INFO    ] Initializing speech engine...
[2026-08-25 19:54:15,659.659 INFO    ] 2026-08-25 19:54:15
[2026-08-25 19:54:15,917.917 INFO    ] 2026-08-25 19:54:15
[2026-08-25 19:54:15,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:54:16,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:54:16,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:54:16,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:54:16,400.400 INFO    ] time= 25/08/2026 19:54:16
[2026-08-25 19:54:16,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:54:16,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:54:16,610.610 INFO    ] No existing commands found in stream
[2026-08-25 19:54:21,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:54:21,629.629 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 19:54:26,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:54:26,326.326 INFO    ] Checking for system updates...
[2026-08-25 19:54:26,365.365 INFO    ] 200
[2026-08-25 19:54:26,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:26,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:54:26,422.422 INFO    ] No update needed
[2026-08-25 19:54:26,425.425 INFO    ] Checking for camera pi updates...
[2026-08-25 19:54:26,463.463 INFO    ] 200
[2026-08-25 19:54:26,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:26,523.523 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:54:26,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:54:26,575.575 INFO    ] No camera update needed
[2026-08-25 19:54:26,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:54:26,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:54:26,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:54:26,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:54:28,631.631 INFO    ] ================================================
[2026-08-25 19:54:28,647.647 INFO    ] Launching Daemon at Tue Aug 25 19:54:28 IST 2026
[2026-08-25 19:54:28,658.658 INFO    ] ================================================
[2026-08-25 19:54:29,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:54:29
[2026-08-25 19:54:29,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:54:30,061.061 INFO    ] Initializing speech engine...
[2026-08-25 19:54:30,084.084 INFO    ] 2026-08-25 19:54:30
[2026-08-25 19:54:30,339.339 INFO    ] 2026-08-25 19:54:30
[2026-08-25 19:54:30,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:54:30,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:54:30,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:54:30,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:54:30,780.780 INFO    ] time= 25/08/2026 19:54:30
[2026-08-25 19:54:30,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:54:30,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:54:31,049.049 INFO    ] No existing commands found in stream
[2026-08-25 19:54:36,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:54:36,077.077 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 19:54:39,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:54:39,016.016 INFO    ] Checking for system updates...
[2026-08-25 19:54:39,055.055 INFO    ] 200
[2026-08-25 19:54:39,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:39,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:54:39,113.113 INFO    ] No update needed
[2026-08-25 19:54:39,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 19:54:39,152.152 INFO    ] 200
[2026-08-25 19:54:39,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:39,195.195 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:54:39,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:54:39,251.251 INFO    ] No camera update needed
[2026-08-25 19:54:39,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:54:39,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:54:39,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:54:39,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:54:41,310.310 INFO    ] ================================================
[2026-08-25 19:54:41,325.325 INFO    ] Launching Daemon at Tue Aug 25 19:54:41 IST 2026
[2026-08-25 19:54:41,336.336 INFO    ] ================================================
[2026-08-25 19:54:42,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:54:41
[2026-08-25 19:54:42,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:54:42,962.962 INFO    ] Initializing speech engine...
[2026-08-25 19:54:42,968.968 INFO    ] 2026-08-25 19:54:42
[2026-08-25 19:54:43,211.211 INFO    ] 2026-08-25 19:54:43
[2026-08-25 19:54:43,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:54:43,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:54:43,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:54:43,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:54:43,710.710 INFO    ] time= 25/08/2026 19:54:43
[2026-08-25 19:54:43,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:54:43,778.778 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:54:43,903.903 INFO    ] No existing commands found in stream
[2026-08-25 19:54:48,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:54:48,931.931 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 19:54:50,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:54:50,700.700 INFO    ] Checking for system updates...
[2026-08-25 19:54:50,738.738 INFO    ] 200
[2026-08-25 19:54:50,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:50,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:54:50,802.802 INFO    ] No update needed
[2026-08-25 19:54:50,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 19:54:50,838.838 INFO    ] 200
[2026-08-25 19:54:50,840.840 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:54:50,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:54:50,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:54:50,929.929 INFO    ] No camera update needed
[2026-08-25 19:54:50,931.931 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:54:50,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:54:50,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:54:50,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:54:52,985.985 INFO    ] ================================================
[2026-08-25 19:54:53,999.999 INFO    ] Launching Daemon at Tue Aug 25 19:54:52 IST 2026
[2026-08-25 19:54:53,010.010 INFO    ] ================================================
[2026-08-25 19:54:53,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:54:53
[2026-08-25 19:54:54,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:54:54,418.418 INFO    ] Initializing speech engine...
[2026-08-25 19:54:54,427.427 INFO    ] 2026-08-25 19:54:54
[2026-08-25 19:54:54,718.718 INFO    ] 2026-08-25 19:54:54
[2026-08-25 19:54:54,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:54:54,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:54:54,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:54:55,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:54:55,132.132 INFO    ] time= 25/08/2026 19:54:55
[2026-08-25 19:54:55,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:54:55,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:54:55,238.238 INFO    ] No existing commands found in stream
[2026-08-25 19:55:00,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:55:00,277.277 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 19:55:04,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:55:04,710.710 INFO    ] Checking for system updates...
[2026-08-25 19:55:04,750.750 INFO    ] 200
[2026-08-25 19:55:04,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:04,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:55:04,813.813 INFO    ] No update needed
[2026-08-25 19:55:04,816.816 INFO    ] Checking for camera pi updates...
[2026-08-25 19:55:04,853.853 INFO    ] 200
[2026-08-25 19:55:04,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:04,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:55:04,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:55:04,942.942 INFO    ] No camera update needed
[2026-08-25 19:55:04,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:55:04,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:55:04,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:55:04,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:55:07,997.997 INFO    ] ================================================
[2026-08-25 19:55:07,013.013 INFO    ] Launching Daemon at Tue Aug 25 19:55:07 IST 2026
[2026-08-25 19:55:07,023.023 INFO    ] ================================================
[2026-08-25 19:55:07,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:55:07
[2026-08-25 19:55:08,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:55:08,472.472 INFO    ] Initializing speech engine...
[2026-08-25 19:55:08,483.483 INFO    ] 2026-08-25 19:55:08
[2026-08-25 19:55:08,736.736 INFO    ] 2026-08-25 19:55:08
[2026-08-25 19:55:08,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:55:10,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:55:10,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:55:10,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:55:10,491.491 INFO    ] time= 25/08/2026 19:55:10
[2026-08-25 19:55:10,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:55:10,500.500 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:55:10,643.643 INFO    ] No existing commands found in stream
[2026-08-25 19:55:15,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:55:15,658.658 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 19:55:16,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:55:16,775.775 INFO    ] Checking for system updates...
[2026-08-25 19:55:16,812.812 INFO    ] 200
[2026-08-25 19:55:16,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:16,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:55:16,876.876 INFO    ] No update needed
[2026-08-25 19:55:16,878.878 INFO    ] Checking for camera pi updates...
[2026-08-25 19:55:16,911.911 INFO    ] 200
[2026-08-25 19:55:16,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:16,956.956 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:55:17,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:55:17,015.015 INFO    ] No camera update needed
[2026-08-25 19:55:17,017.017 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:55:17,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:55:17,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:55:17,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:55:19,070.070 INFO    ] ================================================
[2026-08-25 19:55:19,086.086 INFO    ] Launching Daemon at Tue Aug 25 19:55:19 IST 2026
[2026-08-25 19:55:19,097.097 INFO    ] ================================================
[2026-08-25 19:55:19,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:55:19
[2026-08-25 19:55:20,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:55:20,730.730 INFO    ] Initializing speech engine...
[2026-08-25 19:55:20,737.737 INFO    ] 2026-08-25 19:55:20
[2026-08-25 19:55:21,008.008 INFO    ] 2026-08-25 19:55:21
[2026-08-25 19:55:21,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:55:21,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:55:21,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:55:21,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:55:21,527.527 INFO    ] time= 25/08/2026 19:55:21
[2026-08-25 19:55:21,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:55:21,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:55:21,717.717 INFO    ] No existing commands found in stream
[2026-08-25 19:55:26,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:55:26,742.742 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 19:55:29,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:55:29,717.717 INFO    ] Checking for system updates...
[2026-08-25 19:55:29,753.753 INFO    ] 200
[2026-08-25 19:55:29,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:29,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:55:29,821.821 INFO    ] No update needed
[2026-08-25 19:55:29,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 19:55:29,862.862 INFO    ] 200
[2026-08-25 19:55:29,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:29,910.910 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:55:29,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:55:29,963.963 INFO    ] No camera update needed
[2026-08-25 19:55:29,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:55:29,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:55:29,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:55:29,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:55:32,021.021 INFO    ] ================================================
[2026-08-25 19:55:32,038.038 INFO    ] Launching Daemon at Tue Aug 25 19:55:32 IST 2026
[2026-08-25 19:55:32,049.049 INFO    ] ================================================
[2026-08-25 19:55:32,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:55:32
[2026-08-25 19:55:33,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:55:33,510.510 INFO    ] Initializing speech engine...
[2026-08-25 19:55:33,530.530 INFO    ] 2026-08-25 19:55:33
[2026-08-25 19:55:33,779.779 INFO    ] 2026-08-25 19:55:33
[2026-08-25 19:55:33,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:55:34,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:55:34,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:55:34,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:55:34,291.291 INFO    ] time= 25/08/2026 19:55:34
[2026-08-25 19:55:34,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:55:34,359.359 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:55:34,511.511 INFO    ] No existing commands found in stream
[2026-08-25 19:55:39,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:55:39,541.541 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 19:55:43,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:55:43,340.340 INFO    ] Checking for system updates...
[2026-08-25 19:55:43,375.375 INFO    ] 200
[2026-08-25 19:55:43,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:43,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:55:43,444.444 INFO    ] No update needed
[2026-08-25 19:55:43,447.447 INFO    ] Checking for camera pi updates...
[2026-08-25 19:55:43,484.484 INFO    ] 200
[2026-08-25 19:55:43,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:43,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:55:43,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:55:43,579.579 INFO    ] No camera update needed
[2026-08-25 19:55:43,581.581 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:55:43,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:55:43,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:55:43,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:55:45,636.636 INFO    ] ================================================
[2026-08-25 19:55:45,651.651 INFO    ] Launching Daemon at Tue Aug 25 19:55:45 IST 2026
[2026-08-25 19:55:45,662.662 INFO    ] ================================================
[2026-08-25 19:55:46,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:55:46
[2026-08-25 19:55:46,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:55:47,090.090 INFO    ] Initializing speech engine...
[2026-08-25 19:55:47,112.112 INFO    ] 2026-08-25 19:55:47
[2026-08-25 19:55:47,379.379 INFO    ] 2026-08-25 19:55:47
[2026-08-25 19:55:47,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:55:47,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:55:47,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:55:47,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:55:47,758.758 INFO    ] time= 25/08/2026 19:55:47
[2026-08-25 19:55:47,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:55:47,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:55:47,884.884 INFO    ] No existing commands found in stream
[2026-08-25 19:55:52,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:55:52,899.899 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 19:55:55,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:55:55,150.150 INFO    ] Checking for system updates...
[2026-08-25 19:55:55,185.185 INFO    ] 200
[2026-08-25 19:55:55,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:55,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:55:55,249.249 INFO    ] No update needed
[2026-08-25 19:55:55,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 19:55:55,289.289 INFO    ] 200
[2026-08-25 19:55:55,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:55:55,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:55:55,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:55:55,379.379 INFO    ] No camera update needed
[2026-08-25 19:55:55,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:55:55,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:55:55,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:55:55,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:55:57,433.433 INFO    ] ================================================
[2026-08-25 19:55:57,448.448 INFO    ] Launching Daemon at Tue Aug 25 19:55:57 IST 2026
[2026-08-25 19:55:57,458.458 INFO    ] ================================================
[2026-08-25 19:55:58,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:55:58
[2026-08-25 19:55:58,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:55:59,037.037 INFO    ] Initializing speech engine...
[2026-08-25 19:55:59,049.049 INFO    ] 2026-08-25 19:55:59
[2026-08-25 19:55:59,362.362 INFO    ] 2026-08-25 19:55:59
[2026-08-25 19:55:59,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:55:59,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:55:59,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:55:59,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:55:59,871.871 INFO    ] time= 25/08/2026 19:55:59
[2026-08-25 19:55:59,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:55:59,919.919 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:56:00,035.035 INFO    ] No existing commands found in stream
[2026-08-25 19:56:05,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:56:05,063.063 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 19:56:08,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:56:08,393.393 INFO    ] Checking for system updates...
[2026-08-25 19:56:08,430.430 INFO    ] 200
[2026-08-25 19:56:08,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:08,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:56:08,495.495 INFO    ] No update needed
[2026-08-25 19:56:08,497.497 INFO    ] Checking for camera pi updates...
[2026-08-25 19:56:08,531.531 INFO    ] 200
[2026-08-25 19:56:08,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:08,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:56:08,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:56:08,621.621 INFO    ] No camera update needed
[2026-08-25 19:56:08,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:56:08,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:56:08,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:56:08,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:56:10,675.675 INFO    ] ================================================
[2026-08-25 19:56:10,690.690 INFO    ] Launching Daemon at Tue Aug 25 19:56:10 IST 2026
[2026-08-25 19:56:10,700.700 INFO    ] ================================================
[2026-08-25 19:56:11,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:56:11
[2026-08-25 19:56:11,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:56:12,117.117 INFO    ] Initializing speech engine...
[2026-08-25 19:56:12,125.125 INFO    ] 2026-08-25 19:56:12
[2026-08-25 19:56:12,373.373 INFO    ] 2026-08-25 19:56:12
[2026-08-25 19:56:12,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:56:12,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:56:12,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:56:12,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:56:12,872.872 INFO    ] time= 25/08/2026 19:56:12
[2026-08-25 19:56:12,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:56:12,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:56:13,059.059 INFO    ] No existing commands found in stream
[2026-08-25 19:56:18,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:56:18,087.087 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 19:56:22,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:56:22,448.448 INFO    ] Checking for system updates...
[2026-08-25 19:56:22,488.488 INFO    ] 200
[2026-08-25 19:56:22,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:22,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:56:22,552.552 INFO    ] No update needed
[2026-08-25 19:56:22,555.555 INFO    ] Checking for camera pi updates...
[2026-08-25 19:56:22,592.592 INFO    ] 200
[2026-08-25 19:56:22,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:22,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:56:22,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:56:22,695.695 INFO    ] No camera update needed
[2026-08-25 19:56:22,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:56:22,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:56:22,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:56:22,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:56:24,753.753 INFO    ] ================================================
[2026-08-25 19:56:24,768.768 INFO    ] Launching Daemon at Tue Aug 25 19:56:24 IST 2026
[2026-08-25 19:56:24,779.779 INFO    ] ================================================
[2026-08-25 19:56:25,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:56:25
[2026-08-25 19:56:25,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:56:26,198.198 INFO    ] Initializing speech engine...
[2026-08-25 19:56:26,207.207 INFO    ] 2026-08-25 19:56:26
[2026-08-25 19:56:26,452.452 INFO    ] 2026-08-25 19:56:26
[2026-08-25 19:56:26,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:56:26,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:56:26,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:56:26,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:56:26,926.926 INFO    ] time= 25/08/2026 19:56:26
[2026-08-25 19:56:26,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:56:27,012.012 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:56:27,141.141 INFO    ] No existing commands found in stream
[2026-08-25 19:56:32,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:56:32,170.170 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 19:56:35,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:56:35,787.787 INFO    ] Checking for system updates...
[2026-08-25 19:56:35,827.827 INFO    ] 200
[2026-08-25 19:56:35,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:35,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:56:35,892.892 INFO    ] No update needed
[2026-08-25 19:56:35,895.895 INFO    ] Checking for camera pi updates...
[2026-08-25 19:56:35,930.930 INFO    ] 200
[2026-08-25 19:56:35,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:35,976.976 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:56:36,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:56:36,037.037 INFO    ] No camera update needed
[2026-08-25 19:56:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:56:36,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:56:36,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:56:36,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:56:38,095.095 INFO    ] ================================================
[2026-08-25 19:56:38,111.111 INFO    ] Launching Daemon at Tue Aug 25 19:56:38 IST 2026
[2026-08-25 19:56:38,122.122 INFO    ] ================================================
[2026-08-25 19:56:38,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:56:38
[2026-08-25 19:56:39,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:56:39,627.627 INFO    ] Initializing speech engine...
[2026-08-25 19:56:39,633.633 INFO    ] 2026-08-25 19:56:39
[2026-08-25 19:56:39,879.879 INFO    ] 2026-08-25 19:56:39
[2026-08-25 19:56:39,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:56:40,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:56:40,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:56:40,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:56:40,358.358 INFO    ] time= 25/08/2026 19:56:40
[2026-08-25 19:56:40,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:56:40,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:56:40,577.577 INFO    ] No existing commands found in stream
[2026-08-25 19:56:45,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:56:45,602.602 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 19:56:47,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:56:47,111.111 INFO    ] Checking for system updates...
[2026-08-25 19:56:47,146.146 INFO    ] 200
[2026-08-25 19:56:47,148.148 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:47,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:56:47,228.228 INFO    ] No update needed
[2026-08-25 19:56:47,230.230 INFO    ] Checking for camera pi updates...
[2026-08-25 19:56:47,268.268 INFO    ] 200
[2026-08-25 19:56:47,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:56:47,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:56:47,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:56:47,380.380 INFO    ] No camera update needed
[2026-08-25 19:56:47,382.382 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:56:47,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:56:47,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:56:47,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:56:49,436.436 INFO    ] ================================================
[2026-08-25 19:56:49,451.451 INFO    ] Launching Daemon at Tue Aug 25 19:56:49 IST 2026
[2026-08-25 19:56:49,462.462 INFO    ] ================================================
[2026-08-25 19:56:50,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:56:50
[2026-08-25 19:56:50,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:56:50,878.878 INFO    ] Initializing speech engine...
[2026-08-25 19:56:50,885.885 INFO    ] 2026-08-25 19:56:50
[2026-08-25 19:56:51,180.180 INFO    ] 2026-08-25 19:56:51
[2026-08-25 19:56:51,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:56:51,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:56:51,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:56:51,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:56:51,675.675 INFO    ] time= 25/08/2026 19:56:51
[2026-08-25 19:56:51,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:56:51,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:56:51,873.873 INFO    ] No existing commands found in stream
[2026-08-25 19:56:56,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:56:56,903.903 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 19:57:00,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:57:00,096.096 INFO    ] Checking for system updates...
[2026-08-25 19:57:00,131.131 INFO    ] 200
[2026-08-25 19:57:00,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:00,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:57:00,195.195 INFO    ] No update needed
[2026-08-25 19:57:00,197.197 INFO    ] Checking for camera pi updates...
[2026-08-25 19:57:00,234.234 INFO    ] 200
[2026-08-25 19:57:00,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:00,282.282 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:57:00,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:57:00,332.332 INFO    ] No camera update needed
[2026-08-25 19:57:00,335.335 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:57:00,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:57:00,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:57:00,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:57:02,390.390 INFO    ] ================================================
[2026-08-25 19:57:02,410.410 INFO    ] Launching Daemon at Tue Aug 25 19:57:02 IST 2026
[2026-08-25 19:57:02,424.424 INFO    ] ================================================
[2026-08-25 19:57:03,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:57:03
[2026-08-25 19:57:03,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:57:04,229.229 INFO    ] Initializing speech engine...
[2026-08-25 19:57:04,236.236 INFO    ] 2026-08-25 19:57:04
[2026-08-25 19:57:04,549.549 INFO    ] 2026-08-25 19:57:04
[2026-08-25 19:57:04,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:57:04,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:57:04,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:57:05,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:57:05,055.055 INFO    ] time= 25/08/2026 19:57:05
[2026-08-25 19:57:05,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:57:05,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:57:05,210.210 INFO    ] No existing commands found in stream
[2026-08-25 19:57:10,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:57:10,243.243 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 19:57:12,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:57:12,237.237 INFO    ] Checking for system updates...
[2026-08-25 19:57:12,274.274 INFO    ] 200
[2026-08-25 19:57:12,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:12,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:57:12,353.353 INFO    ] No update needed
[2026-08-25 19:57:12,356.356 INFO    ] Checking for camera pi updates...
[2026-08-25 19:57:12,391.391 INFO    ] 200
[2026-08-25 19:57:12,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:12,437.437 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:57:12,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:57:12,588.588 INFO    ] No camera update needed
[2026-08-25 19:57:12,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:57:12,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:57:12,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:57:12,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:57:14,644.644 INFO    ] ================================================
[2026-08-25 19:57:14,660.660 INFO    ] Launching Daemon at Tue Aug 25 19:57:14 IST 2026
[2026-08-25 19:57:14,672.672 INFO    ] ================================================
[2026-08-25 19:57:15,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:57:15
[2026-08-25 19:57:16,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:57:16,320.320 INFO    ] Initializing speech engine...
[2026-08-25 19:57:16,330.330 INFO    ] 2026-08-25 19:57:16
[2026-08-25 19:57:16,591.591 INFO    ] 2026-08-25 19:57:16
[2026-08-25 19:57:16,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:57:16,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:57:16,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:57:17,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:57:17,149.149 INFO    ] time= 25/08/2026 19:57:17
[2026-08-25 19:57:17,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:57:17,178.178 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:57:17,337.337 INFO    ] No existing commands found in stream
[2026-08-25 19:57:22,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:57:22,380.380 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 19:57:25,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:57:25,920.920 INFO    ] Checking for system updates...
[2026-08-25 19:57:25,958.958 INFO    ] 200
[2026-08-25 19:57:25,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:26,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:57:26,024.024 INFO    ] No update needed
[2026-08-25 19:57:26,026.026 INFO    ] Checking for camera pi updates...
[2026-08-25 19:57:26,065.065 INFO    ] 200
[2026-08-25 19:57:26,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:26,114.114 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:57:26,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:57:26,168.168 INFO    ] No camera update needed
[2026-08-25 19:57:26,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:57:26,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:57:26,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:57:26,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:57:28,226.226 INFO    ] ================================================
[2026-08-25 19:57:28,242.242 INFO    ] Launching Daemon at Tue Aug 25 19:57:28 IST 2026
[2026-08-25 19:57:28,254.254 INFO    ] ================================================
[2026-08-25 19:57:28,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:57:28
[2026-08-25 19:57:29,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:57:29,799.799 INFO    ] Initializing speech engine...
[2026-08-25 19:57:29,811.811 INFO    ] 2026-08-25 19:57:29
[2026-08-25 19:57:30,103.103 INFO    ] 2026-08-25 19:57:30
[2026-08-25 19:57:30,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:57:30,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:57:30,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:57:30,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:57:30,603.603 INFO    ] time= 25/08/2026 19:57:30
[2026-08-25 19:57:30,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:57:30,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:57:30,753.753 INFO    ] No existing commands found in stream
[2026-08-25 19:57:35,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:57:35,772.772 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 19:57:39,162.162 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:57:39,165.165 INFO    ] Checking for system updates...
[2026-08-25 19:57:39,206.206 INFO    ] 200
[2026-08-25 19:57:39,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:39,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:57:39,272.272 INFO    ] No update needed
[2026-08-25 19:57:39,275.275 INFO    ] Checking for camera pi updates...
[2026-08-25 19:57:39,316.316 INFO    ] 200
[2026-08-25 19:57:39,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:39,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:57:39,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:57:39,549.549 INFO    ] No camera update needed
[2026-08-25 19:57:39,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:57:39,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:57:39,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:57:39,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:57:41,607.607 INFO    ] ================================================
[2026-08-25 19:57:41,623.623 INFO    ] Launching Daemon at Tue Aug 25 19:57:41 IST 2026
[2026-08-25 19:57:41,635.635 INFO    ] ================================================
[2026-08-25 19:57:42,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:57:42
[2026-08-25 19:57:43,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:57:43,315.315 INFO    ] Initializing speech engine...
[2026-08-25 19:57:43,323.323 INFO    ] 2026-08-25 19:57:43
[2026-08-25 19:57:43,603.603 INFO    ] 2026-08-25 19:57:43
[2026-08-25 19:57:43,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:57:43,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:57:43,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:57:44,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:57:44,091.091 INFO    ] time= 25/08/2026 19:57:44
[2026-08-25 19:57:44,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:57:44,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:57:44,304.304 INFO    ] No existing commands found in stream
[2026-08-25 19:57:49,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:57:49,321.321 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 19:57:50,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 19:57:50,603.603 INFO    ] Checking for system updates...
[2026-08-25 19:57:50,639.639 INFO    ] 200
[2026-08-25 19:57:50,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:50,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:57:50,696.696 INFO    ] No update needed
[2026-08-25 19:57:50,699.699 INFO    ] Checking for camera pi updates...
[2026-08-25 19:57:50,733.733 INFO    ] 200
[2026-08-25 19:57:50,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:57:50,778.778 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:57:50,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:57:50,843.843 INFO    ] No camera update needed
[2026-08-25 19:57:50,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:57:50,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:57:50,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:57:50,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:57:52,897.897 INFO    ] ================================================
[2026-08-25 19:57:52,912.912 INFO    ] Launching Daemon at Tue Aug 25 19:57:52 IST 2026
[2026-08-25 19:57:52,923.923 INFO    ] ================================================
[2026-08-25 19:57:53,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:57:53
[2026-08-25 19:57:54,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:57:54,477.477 INFO    ] Initializing speech engine...
[2026-08-25 19:57:54,483.483 INFO    ] 2026-08-25 19:57:54
[2026-08-25 19:57:54,770.770 INFO    ] 2026-08-25 19:57:54
[2026-08-25 19:57:54,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:57:55,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:57:55,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:57:55,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:57:55,224.224 INFO    ] time= 25/08/2026 19:57:55
[2026-08-25 19:57:55,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:57:55,342.342 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:57:55,430.430 INFO    ] No existing commands found in stream
[2026-08-25 19:58:00,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:58:00,469.469 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 19:58:04,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:58:04,250.250 INFO    ] Checking for system updates...
[2026-08-25 19:58:04,289.289 INFO    ] 200
[2026-08-25 19:58:04,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:04,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:04,352.352 INFO    ] No update needed
[2026-08-25 19:58:04,355.355 INFO    ] Checking for camera pi updates...
[2026-08-25 19:58:04,389.389 INFO    ] 200
[2026-08-25 19:58:04,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:04,432.432 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:58:04,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:04,493.493 INFO    ] No camera update needed
[2026-08-25 19:58:04,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:58:04,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:58:04,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:58:04,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:58:06,552.552 INFO    ] ================================================
[2026-08-25 19:58:06,567.567 INFO    ] Launching Daemon at Tue Aug 25 19:58:06 IST 2026
[2026-08-25 19:58:06,584.584 INFO    ] ================================================
[2026-08-25 19:58:07,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:58:07
[2026-08-25 19:58:07,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:58:07,988.988 INFO    ] Initializing speech engine...
[2026-08-25 19:58:08,010.010 INFO    ] 2026-08-25 19:58:07
[2026-08-25 19:58:08,262.262 INFO    ] 2026-08-25 19:58:08
[2026-08-25 19:58:08,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:58:08,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:58:08,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:58:08,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:58:08,758.758 INFO    ] time= 25/08/2026 19:58:08
[2026-08-25 19:58:08,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:58:08,823.823 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:58:08,972.972 INFO    ] No existing commands found in stream
[2026-08-25 19:58:13,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:58:13,989.989 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 19:58:14,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:58:14,442.442 INFO    ] Checking for system updates...
[2026-08-25 19:58:14,481.481 INFO    ] 200
[2026-08-25 19:58:14,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:14,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:58:14,538.538 INFO    ] No update needed
[2026-08-25 19:58:14,541.541 INFO    ] Checking for camera pi updates...
[2026-08-25 19:58:14,578.578 INFO    ] 200
[2026-08-25 19:58:14,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:14,625.625 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:58:14,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:58:14,683.683 INFO    ] No camera update needed
[2026-08-25 19:58:14,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:58:14,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:58:14,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:58:14,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:58:16,739.739 INFO    ] ================================================
[2026-08-25 19:58:16,755.755 INFO    ] Launching Daemon at Tue Aug 25 19:58:16 IST 2026
[2026-08-25 19:58:16,765.765 INFO    ] ================================================
[2026-08-25 19:58:17,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:58:17
[2026-08-25 19:58:17,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:58:18,176.176 INFO    ] Initializing speech engine...
[2026-08-25 19:58:18,195.195 INFO    ] 2026-08-25 19:58:18
[2026-08-25 19:58:18,441.441 INFO    ] 2026-08-25 19:58:18
[2026-08-25 19:58:18,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:58:18,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:58:18,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:58:18,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:58:18,917.917 INFO    ] time= 25/08/2026 19:58:18
[2026-08-25 19:58:18,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:58:19,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:58:19,143.143 INFO    ] No existing commands found in stream
[2026-08-25 19:58:24,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:58:24,165.165 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 19:58:26,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:58:26,517.517 INFO    ] Checking for system updates...
[2026-08-25 19:58:26,556.556 INFO    ] 200
[2026-08-25 19:58:26,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:26,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:26,613.613 INFO    ] No update needed
[2026-08-25 19:58:26,616.616 INFO    ] Checking for camera pi updates...
[2026-08-25 19:58:26,653.653 INFO    ] 200
[2026-08-25 19:58:26,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:26,697.697 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:58:26,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:26,746.746 INFO    ] No camera update needed
[2026-08-25 19:58:26,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:58:26,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:58:26,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:58:26,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:58:28,804.804 INFO    ] ================================================
[2026-08-25 19:58:28,819.819 INFO    ] Launching Daemon at Tue Aug 25 19:58:28 IST 2026
[2026-08-25 19:58:28,830.830 INFO    ] ================================================
[2026-08-25 19:58:29,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:58:29
[2026-08-25 19:58:29,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:58:30,245.245 INFO    ] Initializing speech engine...
[2026-08-25 19:58:30,253.253 INFO    ] 2026-08-25 19:58:30
[2026-08-25 19:58:30,504.504 INFO    ] 2026-08-25 19:58:30
[2026-08-25 19:58:30,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:58:30,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:58:30,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:58:30,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:58:30,878.878 INFO    ] time= 25/08/2026 19:58:30
[2026-08-25 19:58:30,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:58:30,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:58:31,072.072 INFO    ] No existing commands found in stream
[2026-08-25 19:58:36,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:58:36,092.092 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 19:58:40,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:58:40,111.111 INFO    ] Checking for system updates...
[2026-08-25 19:58:40,147.147 INFO    ] 200
[2026-08-25 19:58:40,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:40,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:40,211.211 INFO    ] No update needed
[2026-08-25 19:58:40,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 19:58:40,250.250 INFO    ] 200
[2026-08-25 19:58:40,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:40,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:58:40,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:40,366.366 INFO    ] No camera update needed
[2026-08-25 19:58:40,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:58:40,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:58:40,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:58:40,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:58:42,421.421 INFO    ] ================================================
[2026-08-25 19:58:42,436.436 INFO    ] Launching Daemon at Tue Aug 25 19:58:42 IST 2026
[2026-08-25 19:58:42,447.447 INFO    ] ================================================
[2026-08-25 19:58:43,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:58:43
[2026-08-25 19:58:43,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:58:43,867.867 INFO    ] Initializing speech engine...
[2026-08-25 19:58:43,886.886 INFO    ] 2026-08-25 19:58:43
[2026-08-25 19:58:44,176.176 INFO    ] 2026-08-25 19:58:44
[2026-08-25 19:58:44,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:58:44,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:58:44,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:58:44,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:58:44,637.637 INFO    ] time= 25/08/2026 19:58:44
[2026-08-25 19:58:44,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:58:44,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:58:44,863.863 INFO    ] No existing commands found in stream
[2026-08-25 19:58:49,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:58:49,883.883 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 19:58:51,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 19:58:51,108.108 INFO    ] Checking for system updates...
[2026-08-25 19:58:51,148.148 INFO    ] 200
[2026-08-25 19:58:51,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:51,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:51,207.207 INFO    ] No update needed
[2026-08-25 19:58:51,210.210 INFO    ] Checking for camera pi updates...
[2026-08-25 19:58:51,244.244 INFO    ] 200
[2026-08-25 19:58:51,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:58:51,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:58:51,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:58:51,338.338 INFO    ] No camera update needed
[2026-08-25 19:58:51,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:58:51,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:58:51,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:58:51,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:58:53,392.392 INFO    ] ================================================
[2026-08-25 19:58:53,407.407 INFO    ] Launching Daemon at Tue Aug 25 19:58:53 IST 2026
[2026-08-25 19:58:53,418.418 INFO    ] ================================================
[2026-08-25 19:58:54,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:58:54
[2026-08-25 19:58:54,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:58:55,028.028 INFO    ] Initializing speech engine...
[2026-08-25 19:58:55,043.043 INFO    ] 2026-08-25 19:58:55
[2026-08-25 19:58:55,328.328 INFO    ] 2026-08-25 19:58:55
[2026-08-25 19:58:55,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:58:55,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:58:55,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:58:55,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:58:55,811.811 INFO    ] time= 25/08/2026 19:58:55
[2026-08-25 19:58:55,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:58:55,887.887 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:58:56,025.025 INFO    ] No existing commands found in stream
[2026-08-25 19:59:01,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:59:01,056.056 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 19:59:04,453.453 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 19:59:04,456.456 INFO    ] Checking for system updates...
[2026-08-25 19:59:04,492.492 INFO    ] 200
[2026-08-25 19:59:04,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:04,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:59:04,556.556 INFO    ] No update needed
[2026-08-25 19:59:04,559.559 INFO    ] Checking for camera pi updates...
[2026-08-25 19:59:04,592.592 INFO    ] 200
[2026-08-25 19:59:04,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:04,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:59:04,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:59:04,692.692 INFO    ] No camera update needed
[2026-08-25 19:59:04,695.695 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:59:04,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:59:04,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:59:04,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:59:06,747.747 INFO    ] ================================================
[2026-08-25 19:59:06,763.763 INFO    ] Launching Daemon at Tue Aug 25 19:59:06 IST 2026
[2026-08-25 19:59:06,774.774 INFO    ] ================================================
[2026-08-25 19:59:07,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:59:07
[2026-08-25 19:59:07,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:59:08,229.229 INFO    ] Initializing speech engine...
[2026-08-25 19:59:08,249.249 INFO    ] 2026-08-25 19:59:08
[2026-08-25 19:59:08,514.514 INFO    ] 2026-08-25 19:59:08
[2026-08-25 19:59:08,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:59:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:59:08,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:59:08,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:59:08,927.927 INFO    ] time= 25/08/2026 19:59:08
[2026-08-25 19:59:08,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:59:08,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:59:09,017.017 INFO    ] No existing commands found in stream
[2026-08-25 19:59:14,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:59:14,055.055 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 19:59:17,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 19:59:17,882.882 INFO    ] Checking for system updates...
[2026-08-25 19:59:17,921.921 INFO    ] 200
[2026-08-25 19:59:17,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:17,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:59:17,986.986 INFO    ] No update needed
[2026-08-25 19:59:17,988.988 INFO    ] Checking for camera pi updates...
[2026-08-25 19:59:18,021.021 INFO    ] 200
[2026-08-25 19:59:18,024.024 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:18,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:59:18,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:59:18,218.218 INFO    ] No camera update needed
[2026-08-25 19:59:18,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:59:18,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:59:18,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:59:18,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:59:20,272.272 INFO    ] ================================================
[2026-08-25 19:59:20,287.287 INFO    ] Launching Daemon at Tue Aug 25 19:59:20 IST 2026
[2026-08-25 19:59:20,298.298 INFO    ] ================================================
[2026-08-25 19:59:20,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:59:20
[2026-08-25 19:59:21,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:59:21,748.748 INFO    ] Initializing speech engine...
[2026-08-25 19:59:21,758.758 INFO    ] 2026-08-25 19:59:21
[2026-08-25 19:59:22,020.020 INFO    ] 2026-08-25 19:59:22
[2026-08-25 19:59:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:59:22,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:59:22,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:59:22,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:59:22,510.510 INFO    ] time= 25/08/2026 19:59:22
[2026-08-25 19:59:22,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:59:22,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:59:22,721.721 INFO    ] No existing commands found in stream
[2026-08-25 19:59:27,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:59:27,736.736 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 19:59:29,672.672 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:59:29,675.675 INFO    ] Checking for system updates...
[2026-08-25 19:59:29,710.710 INFO    ] 200
[2026-08-25 19:59:29,713.713 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:29,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:59:29,768.768 INFO    ] No update needed
[2026-08-25 19:59:29,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 19:59:29,804.804 INFO    ] 200
[2026-08-25 19:59:29,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:29,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:59:29,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:59:29,904.904 INFO    ] No camera update needed
[2026-08-25 19:59:29,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:59:29,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:59:29,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:59:29,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:59:31,961.961 INFO    ] ================================================
[2026-08-25 19:59:31,984.984 INFO    ] Launching Daemon at Tue Aug 25 19:59:31 IST 2026
[2026-08-25 19:59:32,995.995 INFO    ] ================================================
[2026-08-25 19:59:32,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:59:32
[2026-08-25 19:59:33,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:59:33,485.485 INFO    ] Initializing speech engine...
[2026-08-25 19:59:33,509.509 INFO    ] 2026-08-25 19:59:33
[2026-08-25 19:59:33,784.784 INFO    ] 2026-08-25 19:59:33
[2026-08-25 19:59:33,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:59:34,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:59:34,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:59:34,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:59:34,207.207 INFO    ] time= 25/08/2026 19:59:34
[2026-08-25 19:59:34,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:59:34,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:59:34,367.367 INFO    ] No existing commands found in stream
[2026-08-25 19:59:39,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:59:39,395.395 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 19:59:40,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 19:59:40,826.826 INFO    ] Checking for system updates...
[2026-08-25 19:59:40,866.866 INFO    ] 200
[2026-08-25 19:59:40,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:40,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:59:40,925.925 INFO    ] No update needed
[2026-08-25 19:59:40,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 19:59:40,965.965 INFO    ] 200
[2026-08-25 19:59:40,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:41,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:59:41,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 19:59:41,059.059 INFO    ] No camera update needed
[2026-08-25 19:59:41,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:59:41,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:59:41,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:59:41,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:59:43,114.114 INFO    ] ================================================
[2026-08-25 19:59:43,129.129 INFO    ] Launching Daemon at Tue Aug 25 19:59:43 IST 2026
[2026-08-25 19:59:43,140.140 INFO    ] ================================================
[2026-08-25 19:59:43,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:59:43
[2026-08-25 19:59:44,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:59:44,573.573 INFO    ] Initializing speech engine...
[2026-08-25 19:59:44,582.582 INFO    ] 2026-08-25 19:59:44
[2026-08-25 19:59:44,839.839 INFO    ] 2026-08-25 19:59:44
[2026-08-25 19:59:44,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:59:45,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:59:45,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:59:45,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:59:45,332.332 INFO    ] time= 25/08/2026 19:59:45
[2026-08-25 19:59:45,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:59:45,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:59:45,535.535 INFO    ] No existing commands found in stream
[2026-08-25 19:59:50,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 19:59:50,557.557 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 19:59:54,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 19:59:54,483.483 INFO    ] Checking for system updates...
[2026-08-25 19:59:54,523.523 INFO    ] 200
[2026-08-25 19:59:54,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:54,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:59:54,588.588 INFO    ] No update needed
[2026-08-25 19:59:54,591.591 INFO    ] Checking for camera pi updates...
[2026-08-25 19:59:54,629.629 INFO    ] 200
[2026-08-25 19:59:54,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 19:59:54,677.677 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 19:59:54,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 19:59:54,727.727 INFO    ] No camera update needed
[2026-08-25 19:59:54,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-25 19:59:54,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 19:59:54,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 19:59:54,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 19:59:56,785.785 INFO    ] ================================================
[2026-08-25 19:59:56,800.800 INFO    ] Launching Daemon at Tue Aug 25 19:59:56 IST 2026
[2026-08-25 19:59:56,811.811 INFO    ] ================================================
[2026-08-25 19:59:57,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 19:59:57
[2026-08-25 19:59:57,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 19:59:58,263.263 INFO    ] Initializing speech engine...
[2026-08-25 19:59:58,270.270 INFO    ] 2026-08-25 19:59:58
[2026-08-25 19:59:58,516.516 INFO    ] 2026-08-25 19:59:58
[2026-08-25 19:59:58,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 19:59:58,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 19:59:58,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 19:59:58,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 19:59:58,992.992 INFO    ] time= 25/08/2026 19:59:58
[2026-08-25 19:59:59,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 19:59:59,080.080 INFO    ] Checking for existing commands in stream...
[2026-08-25 19:59:59,229.229 INFO    ] No existing commands found in stream
[2026-08-25 20:00:04,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:00:04,251.251 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 20:00:10,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:00:10,213.213 INFO    ] Checking for system updates...
[2026-08-25 20:00:10,248.248 INFO    ] 200
[2026-08-25 20:00:10,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:10,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:00:10,306.306 INFO    ] No update needed
[2026-08-25 20:00:10,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 20:00:10,345.345 INFO    ] 200
[2026-08-25 20:00:10,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:10,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:00:10,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:00:10,443.443 INFO    ] No camera update needed
[2026-08-25 20:00:10,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:00:10,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:00:10,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:00:10,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:00:12,498.498 INFO    ] ================================================
[2026-08-25 20:00:12,513.513 INFO    ] Launching Daemon at Tue Aug 25 20:00:12 IST 2026
[2026-08-25 20:00:12,524.524 INFO    ] ================================================
[2026-08-25 20:00:13,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:00:13
[2026-08-25 20:00:13,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:00:14,010.010 INFO    ] Initializing speech engine...
[2026-08-25 20:00:14,016.016 INFO    ] 2026-08-25 20:00:14
[2026-08-25 20:00:14,308.308 INFO    ] 2026-08-25 20:00:14
[2026-08-25 20:00:14,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:00:14,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:00:14,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:00:14,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:00:14,687.687 INFO    ] time= 25/08/2026 20:00:14
[2026-08-25 20:00:14,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:00:14,730.730 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:00:14,811.811 INFO    ] No existing commands found in stream
[2026-08-25 20:00:19,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:00:19,827.827 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 20:00:20,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:00:20,715.715 INFO    ] Checking for system updates...
[2026-08-25 20:00:20,751.751 INFO    ] 200
[2026-08-25 20:00:20,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:20,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:20,810.810 INFO    ] No update needed
[2026-08-25 20:00:20,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 20:00:20,850.850 INFO    ] 200
[2026-08-25 20:00:20,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:20,907.907 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:00:20,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:20,969.969 INFO    ] No camera update needed
[2026-08-25 20:00:20,972.972 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:00:20,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:00:20,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:00:20,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:00:23,028.028 INFO    ] ================================================
[2026-08-25 20:00:23,043.043 INFO    ] Launching Daemon at Tue Aug 25 20:00:23 IST 2026
[2026-08-25 20:00:23,053.053 INFO    ] ================================================
[2026-08-25 20:00:23,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:00:23
[2026-08-25 20:00:24,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:00:24,474.474 INFO    ] Initializing speech engine...
[2026-08-25 20:00:24,484.484 INFO    ] 2026-08-25 20:00:24
[2026-08-25 20:00:24,732.732 INFO    ] 2026-08-25 20:00:24
[2026-08-25 20:00:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:00:24,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:00:24,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:00:25,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:00:25,171.171 INFO    ] time= 25/08/2026 20:00:25
[2026-08-25 20:00:25,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:00:25,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:00:25,438.438 INFO    ] No existing commands found in stream
[2026-08-25 20:00:30,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:00:30,464.464 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 20:00:33,267.267 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:00:33,269.269 INFO    ] Checking for system updates...
[2026-08-25 20:00:33,305.305 INFO    ] 200
[2026-08-25 20:00:33,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:33,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:33,369.369 INFO    ] No update needed
[2026-08-25 20:00:33,371.371 INFO    ] Checking for camera pi updates...
[2026-08-25 20:00:33,404.404 INFO    ] 200
[2026-08-25 20:00:33,407.407 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:33,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:00:33,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:33,515.515 INFO    ] No camera update needed
[2026-08-25 20:00:33,518.518 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:00:33,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:00:33,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:00:33,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:00:35,572.572 INFO    ] ================================================
[2026-08-25 20:00:35,588.588 INFO    ] Launching Daemon at Tue Aug 25 20:00:35 IST 2026
[2026-08-25 20:00:35,598.598 INFO    ] ================================================
[2026-08-25 20:00:36,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:00:36
[2026-08-25 20:00:36,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:00:37,080.080 INFO    ] Initializing speech engine...
[2026-08-25 20:00:37,093.093 INFO    ] 2026-08-25 20:00:37
[2026-08-25 20:00:37,361.361 INFO    ] 2026-08-25 20:00:37
[2026-08-25 20:00:37,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:00:37,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:00:37,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:00:37,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:00:37,843.843 INFO    ] time= 25/08/2026 20:00:37
[2026-08-25 20:00:37,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:00:37,938.938 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:00:38,075.075 INFO    ] No existing commands found in stream
[2026-08-25 20:00:43,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:00:43,103.103 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 20:00:47,523.523 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:00:47,526.526 INFO    ] Checking for system updates...
[2026-08-25 20:00:47,566.566 INFO    ] 200
[2026-08-25 20:00:47,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:47,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:47,624.624 INFO    ] No update needed
[2026-08-25 20:00:47,626.626 INFO    ] Checking for camera pi updates...
[2026-08-25 20:00:47,659.659 INFO    ] 200
[2026-08-25 20:00:47,662.662 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:47,706.706 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:00:47,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:47,753.753 INFO    ] No camera update needed
[2026-08-25 20:00:47,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:00:47,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:00:47,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:00:47,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:00:49,814.814 INFO    ] ================================================
[2026-08-25 20:00:49,830.830 INFO    ] Launching Daemon at Tue Aug 25 20:00:49 IST 2026
[2026-08-25 20:00:49,840.840 INFO    ] ================================================
[2026-08-25 20:00:50,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:00:50
[2026-08-25 20:00:51,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:00:51,291.291 INFO    ] Initializing speech engine...
[2026-08-25 20:00:51,298.298 INFO    ] 2026-08-25 20:00:51
[2026-08-25 20:00:51,564.564 INFO    ] 2026-08-25 20:00:51
[2026-08-25 20:00:51,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:00:51,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:00:51,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:00:52,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:00:52,057.057 INFO    ] time= 25/08/2026 20:00:52
[2026-08-25 20:00:52,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:00:52,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:00:52,303.303 INFO    ] No existing commands found in stream
[2026-08-25 20:00:57,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:00:57,336.336 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 20:00:58,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:00:58,798.798 INFO    ] Checking for system updates...
[2026-08-25 20:00:58,835.835 INFO    ] 200
[2026-08-25 20:00:58,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:58,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:58,900.900 INFO    ] No update needed
[2026-08-25 20:00:58,905.905 INFO    ] Checking for camera pi updates...
[2026-08-25 20:00:58,942.942 INFO    ] 200
[2026-08-25 20:00:58,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:00:58,991.991 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:00:59,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:00:59,048.048 INFO    ] No camera update needed
[2026-08-25 20:00:59,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:00:59,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:00:59,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:00:59,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:01:01,103.103 INFO    ] ================================================
[2026-08-25 20:01:01,118.118 INFO    ] Launching Daemon at Tue Aug 25 20:01:01 IST 2026
[2026-08-25 20:01:01,129.129 INFO    ] ================================================
[2026-08-25 20:01:01,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:01:01
[2026-08-25 20:01:02,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:01:02,801.801 INFO    ] Initializing speech engine...
[2026-08-25 20:01:02,817.817 INFO    ] 2026-08-25 20:01:02
[2026-08-25 20:01:03,117.117 INFO    ] 2026-08-25 20:01:03
[2026-08-25 20:01:03,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:01:03,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:01:03,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:01:03,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:01:03,567.567 INFO    ] time= 25/08/2026 20:01:03
[2026-08-25 20:01:03,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:01:03,640.640 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:01:03,741.741 INFO    ] No existing commands found in stream
[2026-08-25 20:01:08,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:01:08,769.769 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 20:01:12,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:01:12,579.579 INFO    ] Checking for system updates...
[2026-08-25 20:01:12,618.618 INFO    ] 200
[2026-08-25 20:01:12,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:12,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:01:12,681.681 INFO    ] No update needed
[2026-08-25 20:01:12,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 20:01:12,720.720 INFO    ] 200
[2026-08-25 20:01:12,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:12,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:01:12,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:01:12,813.813 INFO    ] No camera update needed
[2026-08-25 20:01:12,816.816 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:01:12,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:01:12,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:01:12,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:01:14,869.869 INFO    ] ================================================
[2026-08-25 20:01:14,884.884 INFO    ] Launching Daemon at Tue Aug 25 20:01:14 IST 2026
[2026-08-25 20:01:14,895.895 INFO    ] ================================================
[2026-08-25 20:01:15,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:01:15
[2026-08-25 20:01:16,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:01:16,312.312 INFO    ] Initializing speech engine...
[2026-08-25 20:01:16,322.322 INFO    ] 2026-08-25 20:01:16
[2026-08-25 20:01:16,571.571 INFO    ] 2026-08-25 20:01:16
[2026-08-25 20:01:16,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:01:16,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:01:16,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:01:17,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:01:17,029.029 INFO    ] time= 25/08/2026 20:01:17
[2026-08-25 20:01:17,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:01:17,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:01:17,231.231 INFO    ] No existing commands found in stream
[2026-08-25 20:01:22,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:01:22,266.266 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 20:01:24,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:01:24,938.938 INFO    ] Checking for system updates...
[2026-08-25 20:01:24,976.976 INFO    ] 200
[2026-08-25 20:01:24,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:25,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:01:25,037.037 INFO    ] No update needed
[2026-08-25 20:01:25,039.039 INFO    ] Checking for camera pi updates...
[2026-08-25 20:01:25,073.073 INFO    ] 200
[2026-08-25 20:01:25,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:25,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:01:25,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:01:25,265.265 INFO    ] No camera update needed
[2026-08-25 20:01:25,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:01:25,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:01:25,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:01:25,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:01:27,321.321 INFO    ] ================================================
[2026-08-25 20:01:27,337.337 INFO    ] Launching Daemon at Tue Aug 25 20:01:27 IST 2026
[2026-08-25 20:01:27,347.347 INFO    ] ================================================
[2026-08-25 20:01:27,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:01:27
[2026-08-25 20:01:28,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:01:28,767.767 INFO    ] Initializing speech engine...
[2026-08-25 20:01:28,776.776 INFO    ] 2026-08-25 20:01:28
[2026-08-25 20:01:29,028.028 INFO    ] 2026-08-25 20:01:29
[2026-08-25 20:01:29,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:01:29,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:01:29,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:01:29,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:01:29,402.402 INFO    ] time= 25/08/2026 20:01:29
[2026-08-25 20:01:29,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:01:29,449.449 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:01:29,588.588 INFO    ] No existing commands found in stream
[2026-08-25 20:01:34,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:01:34,616.616 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 20:01:37,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:01:37,593.593 INFO    ] Checking for system updates...
[2026-08-25 20:01:37,629.629 INFO    ] 200
[2026-08-25 20:01:37,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:37,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:01:37,694.694 INFO    ] No update needed
[2026-08-25 20:01:37,697.697 INFO    ] Checking for camera pi updates...
[2026-08-25 20:01:37,735.735 INFO    ] 200
[2026-08-25 20:01:37,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:37,785.785 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:01:37,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:01:37,845.845 INFO    ] No camera update needed
[2026-08-25 20:01:37,848.848 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:01:37,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:01:37,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:01:37,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:01:39,903.903 INFO    ] ================================================
[2026-08-25 20:01:39,919.919 INFO    ] Launching Daemon at Tue Aug 25 20:01:39 IST 2026
[2026-08-25 20:01:39,930.930 INFO    ] ================================================
[2026-08-25 20:01:40,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:01:40
[2026-08-25 20:01:41,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:01:41,519.519 INFO    ] Initializing speech engine...
[2026-08-25 20:01:41,525.525 INFO    ] 2026-08-25 20:01:41
[2026-08-25 20:01:41,813.813 INFO    ] 2026-08-25 20:01:41
[2026-08-25 20:01:41,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:01:42,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:01:42,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:01:42,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:01:42,362.362 INFO    ] time= 25/08/2026 20:01:42
[2026-08-25 20:01:42,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:01:42,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:01:42,505.505 INFO    ] No existing commands found in stream
[2026-08-25 20:01:47,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:01:47,533.533 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 20:01:49,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:01:49,887.887 INFO    ] Checking for system updates...
[2026-08-25 20:01:49,923.923 INFO    ] 200
[2026-08-25 20:01:49,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:49,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:01:49,986.986 INFO    ] No update needed
[2026-08-25 20:01:49,989.989 INFO    ] Checking for camera pi updates...
[2026-08-25 20:01:50,026.026 INFO    ] 200
[2026-08-25 20:01:50,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:01:50,077.077 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:01:50,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:01:50,136.136 INFO    ] No camera update needed
[2026-08-25 20:01:50,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:01:50,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:01:50,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:01:50,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:01:52,191.191 INFO    ] ================================================
[2026-08-25 20:01:52,207.207 INFO    ] Launching Daemon at Tue Aug 25 20:01:52 IST 2026
[2026-08-25 20:01:52,218.218 INFO    ] ================================================
[2026-08-25 20:01:52,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:01:52
[2026-08-25 20:01:53,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:01:53,667.667 INFO    ] Initializing speech engine...
[2026-08-25 20:01:53,674.674 INFO    ] 2026-08-25 20:01:53
[2026-08-25 20:01:53,933.933 INFO    ] 2026-08-25 20:01:53
[2026-08-25 20:01:53,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:01:54,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:01:54,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:01:54,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:01:54,397.397 INFO    ] time= 25/08/2026 20:01:54
[2026-08-25 20:01:54,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:01:54,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:01:54,589.589 INFO    ] No existing commands found in stream
[2026-08-25 20:01:59,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:01:59,619.619 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 20:02:03,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:02:03,107.107 INFO    ] Checking for system updates...
[2026-08-25 20:02:03,146.146 INFO    ] 200
[2026-08-25 20:02:03,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:03,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:03,215.215 INFO    ] No update needed
[2026-08-25 20:02:03,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 20:02:03,256.256 INFO    ] 200
[2026-08-25 20:02:03,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:03,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:02:03,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:03,363.363 INFO    ] No camera update needed
[2026-08-25 20:02:03,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:02:03,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:02:03,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:02:03,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:02:05,422.422 INFO    ] ================================================
[2026-08-25 20:02:05,437.437 INFO    ] Launching Daemon at Tue Aug 25 20:02:05 IST 2026
[2026-08-25 20:02:05,447.447 INFO    ] ================================================
[2026-08-25 20:02:06,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:02:06
[2026-08-25 20:02:06,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:02:06,881.881 INFO    ] Initializing speech engine...
[2026-08-25 20:02:06,891.891 INFO    ] 2026-08-25 20:02:06
[2026-08-25 20:02:07,140.140 INFO    ] 2026-08-25 20:02:07
[2026-08-25 20:02:07,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:02:07,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:02:07,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:02:07,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:02:07,619.619 INFO    ] time= 25/08/2026 20:02:07
[2026-08-25 20:02:07,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:02:07,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:02:07,853.853 INFO    ] No existing commands found in stream
[2026-08-25 20:02:12,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:02:12,877.877 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 20:02:13,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:02:13,923.923 INFO    ] Checking for system updates...
[2026-08-25 20:02:13,958.958 INFO    ] 200
[2026-08-25 20:02:13,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:14,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:14,015.015 INFO    ] No update needed
[2026-08-25 20:02:14,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 20:02:14,051.051 INFO    ] 200
[2026-08-25 20:02:14,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:14,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:02:14,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:14,146.146 INFO    ] No camera update needed
[2026-08-25 20:02:14,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:02:14,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:02:14,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:02:14,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:02:16,202.202 INFO    ] ================================================
[2026-08-25 20:02:16,217.217 INFO    ] Launching Daemon at Tue Aug 25 20:02:16 IST 2026
[2026-08-25 20:02:16,228.228 INFO    ] ================================================
[2026-08-25 20:02:16,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:02:16
[2026-08-25 20:02:17,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:02:17,780.780 INFO    ] Initializing speech engine...
[2026-08-25 20:02:17,789.789 INFO    ] 2026-08-25 20:02:17
[2026-08-25 20:02:18,074.074 INFO    ] 2026-08-25 20:02:18
[2026-08-25 20:02:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:02:18,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:02:18,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:02:19,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:02:19,538.538 INFO    ] time= 25/08/2026 20:02:19
[2026-08-25 20:02:19,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:02:19,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:02:19,677.677 INFO    ] No existing commands found in stream
[2026-08-25 20:02:24,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:02:24,701.701 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 20:02:28,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:02:28,485.485 INFO    ] Checking for system updates...
[2026-08-25 20:02:28,520.520 INFO    ] 200
[2026-08-25 20:02:28,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:28,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:28,582.582 INFO    ] No update needed
[2026-08-25 20:02:28,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 20:02:28,621.621 INFO    ] 200
[2026-08-25 20:02:28,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:28,670.670 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:02:28,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:28,728.728 INFO    ] No camera update needed
[2026-08-25 20:02:28,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:02:28,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:02:28,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:02:28,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:02:30,789.789 INFO    ] ================================================
[2026-08-25 20:02:30,804.804 INFO    ] Launching Daemon at Tue Aug 25 20:02:30 IST 2026
[2026-08-25 20:02:30,815.815 INFO    ] ================================================
[2026-08-25 20:02:31,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:02:31
[2026-08-25 20:02:32,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:02:32,469.469 INFO    ] Initializing speech engine...
[2026-08-25 20:02:32,481.481 INFO    ] 2026-08-25 20:02:32
[2026-08-25 20:02:32,768.768 INFO    ] 2026-08-25 20:02:32
[2026-08-25 20:02:32,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:02:33,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:02:33,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:02:33,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:02:33,252.252 INFO    ] time= 25/08/2026 20:02:33
[2026-08-25 20:02:33,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:02:33,313.313 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:02:33,455.455 INFO    ] No existing commands found in stream
[2026-08-25 20:02:38,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:02:38,470.470 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 20:02:39,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:02:39,687.687 INFO    ] Checking for system updates...
[2026-08-25 20:02:39,726.726 INFO    ] 200
[2026-08-25 20:02:39,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:39,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:02:39,790.790 INFO    ] No update needed
[2026-08-25 20:02:39,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 20:02:39,827.827 INFO    ] 200
[2026-08-25 20:02:39,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:39,874.874 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:02:39,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:02:39,922.922 INFO    ] No camera update needed
[2026-08-25 20:02:39,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:02:39,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:02:39,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:02:39,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:02:41,978.978 INFO    ] ================================================
[2026-08-25 20:02:41,993.993 INFO    ] Launching Daemon at Tue Aug 25 20:02:41 IST 2026
[2026-08-25 20:02:42,004.004 INFO    ] ================================================
[2026-08-25 20:02:42,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:02:42
[2026-08-25 20:02:43,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:02:43,557.557 INFO    ] Initializing speech engine...
[2026-08-25 20:02:43,566.566 INFO    ] 2026-08-25 20:02:43
[2026-08-25 20:02:43,837.837 INFO    ] 2026-08-25 20:02:43
[2026-08-25 20:02:43,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:02:44,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:02:44,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:02:44,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:02:44,299.299 INFO    ] time= 25/08/2026 20:02:44
[2026-08-25 20:02:44,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:02:44,391.391 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:02:44,509.509 INFO    ] No existing commands found in stream
[2026-08-25 20:02:49,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:02:49,538.538 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 20:02:52,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:02:52,154.154 INFO    ] Checking for system updates...
[2026-08-25 20:02:52,189.189 INFO    ] 200
[2026-08-25 20:02:52,192.192 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:52,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:52,255.255 INFO    ] No update needed
[2026-08-25 20:02:52,258.258 INFO    ] Checking for camera pi updates...
[2026-08-25 20:02:52,291.291 INFO    ] 200
[2026-08-25 20:02:52,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:02:52,334.334 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:02:52,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:02:52,385.385 INFO    ] No camera update needed
[2026-08-25 20:02:52,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:02:52,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:02:52,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:02:52,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:02:54,439.439 INFO    ] ================================================
[2026-08-25 20:02:54,459.459 INFO    ] Launching Daemon at Tue Aug 25 20:02:54 IST 2026
[2026-08-25 20:02:54,471.471 INFO    ] ================================================
[2026-08-25 20:02:55,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:02:55
[2026-08-25 20:02:55,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:02:55,871.871 INFO    ] Initializing speech engine...
[2026-08-25 20:02:55,877.877 INFO    ] 2026-08-25 20:02:55
[2026-08-25 20:02:56,168.168 INFO    ] 2026-08-25 20:02:56
[2026-08-25 20:02:56,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:02:56,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:02:56,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:02:56,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:02:56,574.574 INFO    ] time= 25/08/2026 20:02:56
[2026-08-25 20:02:56,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:02:56,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:02:56,762.762 INFO    ] No existing commands found in stream
[2026-08-25 20:03:01,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:03:01,782.782 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 20:03:04,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:03:04,307.307 INFO    ] Checking for system updates...
[2026-08-25 20:03:04,346.346 INFO    ] 200
[2026-08-25 20:03:04,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:04,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:03:04,404.404 INFO    ] No update needed
[2026-08-25 20:03:04,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 20:03:04,440.440 INFO    ] 200
[2026-08-25 20:03:04,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:04,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:03:04,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:03:04,531.531 INFO    ] No camera update needed
[2026-08-25 20:03:04,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:03:04,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:03:04,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:03:04,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:03:06,586.586 INFO    ] ================================================
[2026-08-25 20:03:06,601.601 INFO    ] Launching Daemon at Tue Aug 25 20:03:06 IST 2026
[2026-08-25 20:03:06,612.612 INFO    ] ================================================
[2026-08-25 20:03:07,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:03:07
[2026-08-25 20:03:07,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:03:08,024.024 INFO    ] Initializing speech engine...
[2026-08-25 20:03:08,034.034 INFO    ] 2026-08-25 20:03:08
[2026-08-25 20:03:08,281.281 INFO    ] 2026-08-25 20:03:08
[2026-08-25 20:03:08,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:03:08,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:03:08,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:03:08,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:03:08,774.774 INFO    ] time= 25/08/2026 20:03:08
[2026-08-25 20:03:08,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:03:08,853.853 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:03:08,981.981 INFO    ] No existing commands found in stream
[2026-08-25 20:03:14,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:03:14,017.017 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 20:03:17,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:03:17,814.814 INFO    ] Checking for system updates...
[2026-08-25 20:03:17,850.850 INFO    ] 200
[2026-08-25 20:03:17,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:17,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:03:17,907.907 INFO    ] No update needed
[2026-08-25 20:03:17,909.909 INFO    ] Checking for camera pi updates...
[2026-08-25 20:03:17,942.942 INFO    ] 200
[2026-08-25 20:03:17,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:17,985.985 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:03:18,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:03:18,045.045 INFO    ] No camera update needed
[2026-08-25 20:03:18,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:03:18,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:03:18,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:03:18,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:03:20,099.099 INFO    ] ================================================
[2026-08-25 20:03:20,114.114 INFO    ] Launching Daemon at Tue Aug 25 20:03:20 IST 2026
[2026-08-25 20:03:20,125.125 INFO    ] ================================================
[2026-08-25 20:03:20,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:03:20
[2026-08-25 20:03:21,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:03:21,612.612 INFO    ] Initializing speech engine...
[2026-08-25 20:03:21,619.619 INFO    ] 2026-08-25 20:03:21
[2026-08-25 20:03:21,879.879 INFO    ] 2026-08-25 20:03:21
[2026-08-25 20:03:21,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:03:22,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:03:22,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:03:22,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:03:22,336.336 INFO    ] time= 25/08/2026 20:03:22
[2026-08-25 20:03:22,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:03:22,427.427 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:03:22,565.565 INFO    ] No existing commands found in stream
[2026-08-25 20:03:27,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:03:27,587.587 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 20:03:30,719.719 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:03:30,722.722 INFO    ] Checking for system updates...
[2026-08-25 20:03:30,760.760 INFO    ] 200
[2026-08-25 20:03:30,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:30,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:03:30,818.818 INFO    ] No update needed
[2026-08-25 20:03:30,820.820 INFO    ] Checking for camera pi updates...
[2026-08-25 20:03:30,854.854 INFO    ] 200
[2026-08-25 20:03:30,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:30,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:03:31,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:03:31,045.045 INFO    ] No camera update needed
[2026-08-25 20:03:31,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:03:31,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:03:31,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:03:31,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:03:33,103.103 INFO    ] ================================================
[2026-08-25 20:03:33,118.118 INFO    ] Launching Daemon at Tue Aug 25 20:03:33 IST 2026
[2026-08-25 20:03:33,129.129 INFO    ] ================================================
[2026-08-25 20:03:33,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:03:33
[2026-08-25 20:03:34,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:03:34,583.583 INFO    ] Initializing speech engine...
[2026-08-25 20:03:34,590.590 INFO    ] 2026-08-25 20:03:34
[2026-08-25 20:03:34,851.851 INFO    ] 2026-08-25 20:03:34
[2026-08-25 20:03:34,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:03:35,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:03:35,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:03:35,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:03:35,301.301 INFO    ] time= 25/08/2026 20:03:35
[2026-08-25 20:03:35,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:03:35,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:03:35,536.536 INFO    ] No existing commands found in stream
[2026-08-25 20:03:40,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:03:40,560.560 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 20:03:42,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:03:42,371.371 INFO    ] Checking for system updates...
[2026-08-25 20:03:42,407.407 INFO    ] 200
[2026-08-25 20:03:42,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:42,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:03:42,464.464 INFO    ] No update needed
[2026-08-25 20:03:42,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 20:03:42,500.500 INFO    ] 200
[2026-08-25 20:03:42,502.502 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:42,547.547 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:03:42,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:03:42,606.606 INFO    ] No camera update needed
[2026-08-25 20:03:42,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:03:42,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:03:42,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:03:42,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:03:44,665.665 INFO    ] ================================================
[2026-08-25 20:03:44,680.680 INFO    ] Launching Daemon at Tue Aug 25 20:03:44 IST 2026
[2026-08-25 20:03:44,691.691 INFO    ] ================================================
[2026-08-25 20:03:45,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:03:45
[2026-08-25 20:03:45,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:03:46,085.085 INFO    ] Initializing speech engine...
[2026-08-25 20:03:46,099.099 INFO    ] 2026-08-25 20:03:46
[2026-08-25 20:03:46,360.360 INFO    ] 2026-08-25 20:03:46
[2026-08-25 20:03:46,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:03:46,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:03:46,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:03:46,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:03:46,835.835 INFO    ] time= 25/08/2026 20:03:46
[2026-08-25 20:03:46,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:03:46,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:03:47,066.066 INFO    ] No existing commands found in stream
[2026-08-25 20:03:52,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:03:52,084.084 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 20:03:54,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:03:54,808.808 INFO    ] Checking for system updates...
[2026-08-25 20:03:54,843.843 INFO    ] 200
[2026-08-25 20:03:54,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:54,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:03:54,900.900 INFO    ] No update needed
[2026-08-25 20:03:54,903.903 INFO    ] Checking for camera pi updates...
[2026-08-25 20:03:54,940.940 INFO    ] 200
[2026-08-25 20:03:54,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:03:54,982.982 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:03:55,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:03:55,032.032 INFO    ] No camera update needed
[2026-08-25 20:03:55,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:03:55,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:03:55,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:03:55,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:03:57,087.087 INFO    ] ================================================
[2026-08-25 20:03:57,102.102 INFO    ] Launching Daemon at Tue Aug 25 20:03:57 IST 2026
[2026-08-25 20:03:57,113.113 INFO    ] ================================================
[2026-08-25 20:03:57,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:03:57
[2026-08-25 20:03:58,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:03:58,526.526 INFO    ] Initializing speech engine...
[2026-08-25 20:03:58,536.536 INFO    ] 2026-08-25 20:03:58
[2026-08-25 20:03:58,781.781 INFO    ] 2026-08-25 20:03:58
[2026-08-25 20:03:58,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:03:58,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:03:59,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:03:59,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:03:59,149.149 INFO    ] time= 25/08/2026 20:03:59
[2026-08-25 20:03:59,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:03:59,203.203 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:03:59,337.337 INFO    ] No existing commands found in stream
[2026-08-25 20:04:04,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:04:04,360.360 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 20:04:05,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:04:05,203.203 INFO    ] Checking for system updates...
[2026-08-25 20:04:05,238.238 INFO    ] 200
[2026-08-25 20:04:05,241.241 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:05,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:04:05,303.303 INFO    ] No update needed
[2026-08-25 20:04:05,305.305 INFO    ] Checking for camera pi updates...
[2026-08-25 20:04:05,343.343 INFO    ] 200
[2026-08-25 20:04:05,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:05,385.385 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:04:05,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:04:05,442.442 INFO    ] No camera update needed
[2026-08-25 20:04:05,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:04:05,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:04:05,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:04:05,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:04:07,496.496 INFO    ] ================================================
[2026-08-25 20:04:07,511.511 INFO    ] Launching Daemon at Tue Aug 25 20:04:07 IST 2026
[2026-08-25 20:04:07,521.521 INFO    ] ================================================
[2026-08-25 20:04:08,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:04:08
[2026-08-25 20:04:08,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:04:08,972.972 INFO    ] Initializing speech engine...
[2026-08-25 20:04:08,981.981 INFO    ] 2026-08-25 20:04:08
[2026-08-25 20:04:09,233.233 INFO    ] 2026-08-25 20:04:09
[2026-08-25 20:04:09,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:04:09,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:04:09,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:04:09,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:04:09,706.706 INFO    ] time= 25/08/2026 20:04:09
[2026-08-25 20:04:09,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:04:09,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:04:09,948.948 INFO    ] No existing commands found in stream
[2026-08-25 20:04:14,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:04:14,970.970 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 20:04:19,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:04:19,115.115 INFO    ] Checking for system updates...
[2026-08-25 20:04:19,150.150 INFO    ] 200
[2026-08-25 20:04:19,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:19,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:04:19,207.207 INFO    ] No update needed
[2026-08-25 20:04:19,210.210 INFO    ] Checking for camera pi updates...
[2026-08-25 20:04:19,253.253 INFO    ] 200
[2026-08-25 20:04:19,255.255 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:19,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:04:19,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:04:19,366.366 INFO    ] No camera update needed
[2026-08-25 20:04:19,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:04:19,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:04:19,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:04:19,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:04:21,425.425 INFO    ] ================================================
[2026-08-25 20:04:21,440.440 INFO    ] Launching Daemon at Tue Aug 25 20:04:21 IST 2026
[2026-08-25 20:04:21,451.451 INFO    ] ================================================
[2026-08-25 20:04:22,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:04:22
[2026-08-25 20:04:22,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:04:22,886.886 INFO    ] Initializing speech engine...
[2026-08-25 20:04:22,896.896 INFO    ] 2026-08-25 20:04:22
[2026-08-25 20:04:23,140.140 INFO    ] 2026-08-25 20:04:23
[2026-08-25 20:04:23,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:04:23,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:04:23,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:04:23,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:04:23,609.609 INFO    ] time= 25/08/2026 20:04:23
[2026-08-25 20:04:23,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:04:23,700.700 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:04:23,806.806 INFO    ] No existing commands found in stream
[2026-08-25 20:04:28,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:04:28,836.836 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 20:04:31,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:04:31,372.372 INFO    ] Checking for system updates...
[2026-08-25 20:04:31,410.410 INFO    ] 200
[2026-08-25 20:04:31,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:31,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:04:31,477.477 INFO    ] No update needed
[2026-08-25 20:04:31,480.480 INFO    ] Checking for camera pi updates...
[2026-08-25 20:04:31,523.523 INFO    ] 200
[2026-08-25 20:04:31,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:31,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:04:31,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:04:31,627.627 INFO    ] No camera update needed
[2026-08-25 20:04:31,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:04:31,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:04:31,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:04:31,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:04:33,684.684 INFO    ] ================================================
[2026-08-25 20:04:33,699.699 INFO    ] Launching Daemon at Tue Aug 25 20:04:33 IST 2026
[2026-08-25 20:04:33,710.710 INFO    ] ================================================
[2026-08-25 20:04:34,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:04:34
[2026-08-25 20:04:34,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:04:35,175.175 INFO    ] Initializing speech engine...
[2026-08-25 20:04:35,184.184 INFO    ] 2026-08-25 20:04:35
[2026-08-25 20:04:35,445.445 INFO    ] 2026-08-25 20:04:35
[2026-08-25 20:04:35,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:04:35,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:04:35,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:04:35,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:04:35,934.934 INFO    ] time= 25/08/2026 20:04:35
[2026-08-25 20:04:35,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:04:35,999.999 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:04:36,146.146 INFO    ] No existing commands found in stream
[2026-08-25 20:04:41,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:04:41,172.172 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 20:04:44,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:04:44,419.419 INFO    ] Checking for system updates...
[2026-08-25 20:04:44,458.458 INFO    ] 200
[2026-08-25 20:04:44,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:44,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:04:44,519.519 INFO    ] No update needed
[2026-08-25 20:04:44,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 20:04:44,555.555 INFO    ] 200
[2026-08-25 20:04:44,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:44,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:04:44,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:04:44,660.660 INFO    ] No camera update needed
[2026-08-25 20:04:44,662.662 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:04:44,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:04:44,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:04:44,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:04:46,716.716 INFO    ] ================================================
[2026-08-25 20:04:46,731.731 INFO    ] Launching Daemon at Tue Aug 25 20:04:46 IST 2026
[2026-08-25 20:04:46,742.742 INFO    ] ================================================
[2026-08-25 20:04:47,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:04:47
[2026-08-25 20:04:47,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:04:48,201.201 INFO    ] Initializing speech engine...
[2026-08-25 20:04:48,210.210 INFO    ] 2026-08-25 20:04:48
[2026-08-25 20:04:48,467.467 INFO    ] 2026-08-25 20:04:48
[2026-08-25 20:04:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:04:48,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:04:48,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:04:48,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:04:48,919.919 INFO    ] time= 25/08/2026 20:04:48
[2026-08-25 20:04:48,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:04:49,008.008 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:04:49,141.141 INFO    ] No existing commands found in stream
[2026-08-25 20:04:54,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:04:54,169.169 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 20:04:55,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:04:55,495.495 INFO    ] Checking for system updates...
[2026-08-25 20:04:55,530.530 INFO    ] 200
[2026-08-25 20:04:55,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:55,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:04:55,594.594 INFO    ] No update needed
[2026-08-25 20:04:55,596.596 INFO    ] Checking for camera pi updates...
[2026-08-25 20:04:55,630.630 INFO    ] 200
[2026-08-25 20:04:55,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:04:55,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:04:55,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:04:55,724.724 INFO    ] No camera update needed
[2026-08-25 20:04:55,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:04:55,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:04:55,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:04:55,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:04:57,780.780 INFO    ] ================================================
[2026-08-25 20:04:57,795.795 INFO    ] Launching Daemon at Tue Aug 25 20:04:57 IST 2026
[2026-08-25 20:04:57,806.806 INFO    ] ================================================
[2026-08-25 20:04:58,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:04:58
[2026-08-25 20:04:58,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:04:59,280.280 INFO    ] Initializing speech engine...
[2026-08-25 20:04:59,288.288 INFO    ] 2026-08-25 20:04:59
[2026-08-25 20:04:59,549.549 INFO    ] 2026-08-25 20:04:59
[2026-08-25 20:04:59,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:04:59,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:04:59,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:04:59,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:05:00,004.004 INFO    ] time= 25/08/2026 20:04:59
[2026-08-25 20:05:00,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:05:00,095.095 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:05:00,243.243 INFO    ] No existing commands found in stream
[2026-08-25 20:05:05,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:05:05,258.258 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 20:05:05,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:05:05,833.833 INFO    ] Checking for system updates...
[2026-08-25 20:05:05,870.870 INFO    ] 200
[2026-08-25 20:05:05,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:05,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:05:05,936.936 INFO    ] No update needed
[2026-08-25 20:05:05,938.938 INFO    ] Checking for camera pi updates...
[2026-08-25 20:05:05,975.975 INFO    ] 200
[2026-08-25 20:05:05,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:06,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:05:06,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:05:06,065.065 INFO    ] No camera update needed
[2026-08-25 20:05:06,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:05:06,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:05:06,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:05:06,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:05:08,121.121 INFO    ] ================================================
[2026-08-25 20:05:08,136.136 INFO    ] Launching Daemon at Tue Aug 25 20:05:08 IST 2026
[2026-08-25 20:05:08,146.146 INFO    ] ================================================
[2026-08-25 20:05:08,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:05:08
[2026-08-25 20:05:09,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:05:09,656.656 INFO    ] Initializing speech engine...
[2026-08-25 20:05:09,664.664 INFO    ] 2026-08-25 20:05:09
[2026-08-25 20:05:09,943.943 INFO    ] 2026-08-25 20:05:09
[2026-08-25 20:05:09,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:05:10,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:05:10,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:05:10,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:05:10,419.419 INFO    ] time= 25/08/2026 20:05:10
[2026-08-25 20:05:10,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:05:10,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:05:10,619.619 INFO    ] No existing commands found in stream
[2026-08-25 20:05:15,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:05:15,647.647 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 20:05:19,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:05:19,494.494 INFO    ] Checking for system updates...
[2026-08-25 20:05:19,535.535 INFO    ] 200
[2026-08-25 20:05:19,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:19,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:05:19,612.612 INFO    ] No update needed
[2026-08-25 20:05:19,616.616 INFO    ] Checking for camera pi updates...
[2026-08-25 20:05:19,653.653 INFO    ] 200
[2026-08-25 20:05:19,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:19,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:05:19,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:05:19,763.763 INFO    ] No camera update needed
[2026-08-25 20:05:19,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:05:19,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:05:19,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:05:19,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:05:21,818.818 INFO    ] ================================================
[2026-08-25 20:05:21,833.833 INFO    ] Launching Daemon at Tue Aug 25 20:05:21 IST 2026
[2026-08-25 20:05:21,843.843 INFO    ] ================================================
[2026-08-25 20:05:22,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:05:22
[2026-08-25 20:05:23,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:05:23,274.274 INFO    ] Initializing speech engine...
[2026-08-25 20:05:23,280.280 INFO    ] 2026-08-25 20:05:23
[2026-08-25 20:05:23,573.573 INFO    ] 2026-08-25 20:05:23
[2026-08-25 20:05:23,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:05:23,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:05:23,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:05:23,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:05:23,950.950 INFO    ] time= 25/08/2026 20:05:23
[2026-08-25 20:05:23,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:05:24,006.006 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:05:24,146.146 INFO    ] No existing commands found in stream
[2026-08-25 20:05:29,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:05:29,160.160 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 20:05:30,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:05:30,803.803 INFO    ] Checking for system updates...
[2026-08-25 20:05:30,839.839 INFO    ] 200
[2026-08-25 20:05:30,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:30,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:05:30,901.901 INFO    ] No update needed
[2026-08-25 20:05:30,903.903 INFO    ] Checking for camera pi updates...
[2026-08-25 20:05:30,942.942 INFO    ] 200
[2026-08-25 20:05:30,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:30,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:05:31,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:05:31,047.047 INFO    ] No camera update needed
[2026-08-25 20:05:31,050.050 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:05:31,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:05:31,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:05:31,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:05:33,108.108 INFO    ] ================================================
[2026-08-25 20:05:33,123.123 INFO    ] Launching Daemon at Tue Aug 25 20:05:33 IST 2026
[2026-08-25 20:05:33,133.133 INFO    ] ================================================
[2026-08-25 20:05:33,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:05:33
[2026-08-25 20:05:34,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:05:34,579.579 INFO    ] Initializing speech engine...
[2026-08-25 20:05:34,588.588 INFO    ] 2026-08-25 20:05:34
[2026-08-25 20:05:34,876.876 INFO    ] 2026-08-25 20:05:34
[2026-08-25 20:05:34,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:05:35,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:05:35,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:05:35,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:05:35,299.299 INFO    ] time= 25/08/2026 20:05:35
[2026-08-25 20:05:35,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:05:35,413.413 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:05:35,549.549 INFO    ] No existing commands found in stream
[2026-08-25 20:05:40,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:05:40,579.579 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 20:05:44,643.643 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:05:44,646.646 INFO    ] Checking for system updates...
[2026-08-25 20:05:44,697.697 INFO    ] 200
[2026-08-25 20:05:44,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:44,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:05:44,763.763 INFO    ] No update needed
[2026-08-25 20:05:44,766.766 INFO    ] Checking for camera pi updates...
[2026-08-25 20:05:44,801.801 INFO    ] 200
[2026-08-25 20:05:44,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:44,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:05:44,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:05:44,898.898 INFO    ] No camera update needed
[2026-08-25 20:05:44,901.901 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:05:44,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:05:44,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:05:44,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:05:46,955.955 INFO    ] ================================================
[2026-08-25 20:05:46,970.970 INFO    ] Launching Daemon at Tue Aug 25 20:05:46 IST 2026
[2026-08-25 20:05:46,981.981 INFO    ] ================================================
[2026-08-25 20:05:47,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:05:47
[2026-08-25 20:05:48,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:05:48,392.392 INFO    ] Initializing speech engine...
[2026-08-25 20:05:48,401.401 INFO    ] 2026-08-25 20:05:48
[2026-08-25 20:05:48,647.647 INFO    ] 2026-08-25 20:05:48
[2026-08-25 20:05:48,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:05:48,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:05:48,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:05:49,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:05:49,120.120 INFO    ] time= 25/08/2026 20:05:49
[2026-08-25 20:05:49,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:05:49,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:05:49,338.338 INFO    ] No existing commands found in stream
[2026-08-25 20:05:54,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:05:54,364.364 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 20:05:55,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:05:55,622.622 INFO    ] Checking for system updates...
[2026-08-25 20:05:55,657.657 INFO    ] 200
[2026-08-25 20:05:55,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:55,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:05:55,714.714 INFO    ] No update needed
[2026-08-25 20:05:55,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 20:05:55,763.763 INFO    ] 200
[2026-08-25 20:05:55,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:05:55,818.818 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:05:55,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:05:55,869.869 INFO    ] No camera update needed
[2026-08-25 20:05:55,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:05:55,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:05:55,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:05:55,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:05:57,927.927 INFO    ] ================================================
[2026-08-25 20:05:57,941.941 INFO    ] Launching Daemon at Tue Aug 25 20:05:57 IST 2026
[2026-08-25 20:05:57,952.952 INFO    ] ================================================
[2026-08-25 20:05:58,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:05:58
[2026-08-25 20:05:59,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:05:59,354.354 INFO    ] Initializing speech engine...
[2026-08-25 20:05:59,376.376 INFO    ] 2026-08-25 20:05:59
[2026-08-25 20:05:59,631.631 INFO    ] 2026-08-25 20:05:59
[2026-08-25 20:05:59,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:05:59,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:05:59,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:06:00,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:06:00,078.078 INFO    ] time= 25/08/2026 20:06:00
[2026-08-25 20:06:00,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:06:00,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:06:00,335.335 INFO    ] No existing commands found in stream
[2026-08-25 20:06:05,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:06:05,363.363 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 20:06:06,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:06:06,461.461 INFO    ] Checking for system updates...
[2026-08-25 20:06:06,496.496 INFO    ] 200
[2026-08-25 20:06:06,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:06,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:06,555.555 INFO    ] No update needed
[2026-08-25 20:06:06,557.557 INFO    ] Checking for camera pi updates...
[2026-08-25 20:06:06,592.592 INFO    ] 200
[2026-08-25 20:06:06,594.594 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:06,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:06:06,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:06,682.682 INFO    ] No camera update needed
[2026-08-25 20:06:06,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:06:06,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:06:06,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:06:06,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:06:08,737.737 INFO    ] ================================================
[2026-08-25 20:06:08,752.752 INFO    ] Launching Daemon at Tue Aug 25 20:06:08 IST 2026
[2026-08-25 20:06:08,762.762 INFO    ] ================================================
[2026-08-25 20:06:09,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:06:09
[2026-08-25 20:06:09,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:06:10,197.197 INFO    ] Initializing speech engine...
[2026-08-25 20:06:10,205.205 INFO    ] 2026-08-25 20:06:10
[2026-08-25 20:06:10,463.463 INFO    ] 2026-08-25 20:06:10
[2026-08-25 20:06:10,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:06:10,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:06:10,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:06:10,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:06:10,928.928 INFO    ] time= 25/08/2026 20:06:10
[2026-08-25 20:06:10,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:06:11,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:06:11,131.131 INFO    ] No existing commands found in stream
[2026-08-25 20:06:16,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:06:16,160.160 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 20:06:20,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:06:20,155.155 INFO    ] Checking for system updates...
[2026-08-25 20:06:20,199.199 INFO    ] 200
[2026-08-25 20:06:20,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:20,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:20,268.268 INFO    ] No update needed
[2026-08-25 20:06:20,271.271 INFO    ] Checking for camera pi updates...
[2026-08-25 20:06:20,305.305 INFO    ] 200
[2026-08-25 20:06:20,307.307 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:20,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:06:20,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:20,396.396 INFO    ] No camera update needed
[2026-08-25 20:06:20,398.398 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:06:20,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:06:20,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:06:20,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:06:22,451.451 INFO    ] ================================================
[2026-08-25 20:06:22,466.466 INFO    ] Launching Daemon at Tue Aug 25 20:06:22 IST 2026
[2026-08-25 20:06:22,477.477 INFO    ] ================================================
[2026-08-25 20:06:23,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:06:23
[2026-08-25 20:06:23,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:06:23,941.941 INFO    ] Initializing speech engine...
[2026-08-25 20:06:23,946.946 INFO    ] 2026-08-25 20:06:23
[2026-08-25 20:06:24,205.205 INFO    ] 2026-08-25 20:06:24
[2026-08-25 20:06:24,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:06:24,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:06:24,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:06:24,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:06:24,682.682 INFO    ] time= 25/08/2026 20:06:24
[2026-08-25 20:06:24,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:06:24,752.752 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:06:24,889.889 INFO    ] No existing commands found in stream
[2026-08-25 20:06:29,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:06:29,916.916 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 20:06:30,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:06:30,853.853 INFO    ] Checking for system updates...
[2026-08-25 20:06:30,890.890 INFO    ] 200
[2026-08-25 20:06:30,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:30,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:30,949.949 INFO    ] No update needed
[2026-08-25 20:06:30,952.952 INFO    ] Checking for camera pi updates...
[2026-08-25 20:06:30,986.986 INFO    ] 200
[2026-08-25 20:06:30,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:31,036.036 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:06:31,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:31,086.086 INFO    ] No camera update needed
[2026-08-25 20:06:31,089.089 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:06:31,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:06:31,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:06:31,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:06:33,146.146 INFO    ] ================================================
[2026-08-25 20:06:33,162.162 INFO    ] Launching Daemon at Tue Aug 25 20:06:33 IST 2026
[2026-08-25 20:06:33,172.172 INFO    ] ================================================
[2026-08-25 20:06:33,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:06:33
[2026-08-25 20:06:34,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:06:34,594.594 INFO    ] Initializing speech engine...
[2026-08-25 20:06:34,603.603 INFO    ] 2026-08-25 20:06:34
[2026-08-25 20:06:34,898.898 INFO    ] 2026-08-25 20:06:34
[2026-08-25 20:06:34,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:06:35,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:06:35,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:06:35,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:06:35,293.293 INFO    ] time= 25/08/2026 20:06:35
[2026-08-25 20:06:35,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:06:35,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:06:35,489.489 INFO    ] No existing commands found in stream
[2026-08-25 20:06:40,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:06:40,517.517 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 20:06:44,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:06:44,337.337 INFO    ] Checking for system updates...
[2026-08-25 20:06:44,373.373 INFO    ] 200
[2026-08-25 20:06:44,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:44,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:06:44,432.432 INFO    ] No update needed
[2026-08-25 20:06:44,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 20:06:44,468.468 INFO    ] 200
[2026-08-25 20:06:44,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:44,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:06:44,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:06:44,568.568 INFO    ] No camera update needed
[2026-08-25 20:06:44,571.571 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:06:44,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:06:44,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:06:44,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:06:46,624.624 INFO    ] ================================================
[2026-08-25 20:06:46,639.639 INFO    ] Launching Daemon at Tue Aug 25 20:06:46 IST 2026
[2026-08-25 20:06:46,650.650 INFO    ] ================================================
[2026-08-25 20:06:47,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:06:47
[2026-08-25 20:06:47,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:06:48,072.072 INFO    ] Initializing speech engine...
[2026-08-25 20:06:48,082.082 INFO    ] 2026-08-25 20:06:48
[2026-08-25 20:06:48,332.332 INFO    ] 2026-08-25 20:06:48
[2026-08-25 20:06:48,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:06:48,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:06:48,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:06:48,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:06:48,825.825 INFO    ] time= 25/08/2026 20:06:48
[2026-08-25 20:06:48,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:06:48,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:06:49,028.028 INFO    ] No existing commands found in stream
[2026-08-25 20:06:54,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:06:54,047.047 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 20:06:56,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:06:56,233.233 INFO    ] Checking for system updates...
[2026-08-25 20:06:56,269.269 INFO    ] 200
[2026-08-25 20:06:56,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:56,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:56,328.328 INFO    ] No update needed
[2026-08-25 20:06:56,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 20:06:56,367.367 INFO    ] 200
[2026-08-25 20:06:56,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:06:56,410.410 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:06:56,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:06:56,463.463 INFO    ] No camera update needed
[2026-08-25 20:06:56,466.466 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:06:56,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:06:56,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:06:56,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:06:58,519.519 INFO    ] ================================================
[2026-08-25 20:06:58,534.534 INFO    ] Launching Daemon at Tue Aug 25 20:06:58 IST 2026
[2026-08-25 20:06:58,545.545 INFO    ] ================================================
[2026-08-25 20:06:59,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:06:59
[2026-08-25 20:06:59,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:06:59,959.959 INFO    ] Initializing speech engine...
[2026-08-25 20:06:59,968.968 INFO    ] 2026-08-25 20:06:59
[2026-08-25 20:07:00,221.221 INFO    ] 2026-08-25 20:07:00
[2026-08-25 20:07:00,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:07:00,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:07:00,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:07:00,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:07:00,695.695 INFO    ] time= 25/08/2026 20:07:00
[2026-08-25 20:07:00,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:07:00,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:07:00,895.895 INFO    ] No existing commands found in stream
[2026-08-25 20:07:05,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:07:05,928.928 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 20:07:07,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:07:07,198.198 INFO    ] Checking for system updates...
[2026-08-25 20:07:07,234.234 INFO    ] 200
[2026-08-25 20:07:07,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:07,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:07:07,292.292 INFO    ] No update needed
[2026-08-25 20:07:07,294.294 INFO    ] Checking for camera pi updates...
[2026-08-25 20:07:07,328.328 INFO    ] 200
[2026-08-25 20:07:07,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:07,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:07:07,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:07:07,418.418 INFO    ] No camera update needed
[2026-08-25 20:07:07,421.421 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:07:07,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:07:07,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:07:07,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:07:09,472.472 INFO    ] ================================================
[2026-08-25 20:07:09,488.488 INFO    ] Launching Daemon at Tue Aug 25 20:07:09 IST 2026
[2026-08-25 20:07:09,499.499 INFO    ] ================================================
[2026-08-25 20:07:10,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:07:10
[2026-08-25 20:07:10,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:07:10,959.959 INFO    ] Initializing speech engine...
[2026-08-25 20:07:10,968.968 INFO    ] 2026-08-25 20:07:10
[2026-08-25 20:07:11,230.230 INFO    ] 2026-08-25 20:07:11
[2026-08-25 20:07:11,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:07:11,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:07:11,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:07:11,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:07:11,769.769 INFO    ] time= 25/08/2026 20:07:11
[2026-08-25 20:07:11,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:07:11,800.800 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:07:11,925.925 INFO    ] No existing commands found in stream
[2026-08-25 20:07:16,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:07:16,945.945 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 20:07:18,544.544 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:07:18,547.547 INFO    ] Checking for system updates...
[2026-08-25 20:07:18,583.583 INFO    ] 200
[2026-08-25 20:07:18,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:18,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:07:18,641.641 INFO    ] No update needed
[2026-08-25 20:07:18,644.644 INFO    ] Checking for camera pi updates...
[2026-08-25 20:07:18,677.677 INFO    ] 200
[2026-08-25 20:07:18,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:18,720.720 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:07:18,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:07:18,769.769 INFO    ] No camera update needed
[2026-08-25 20:07:18,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:07:18,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:07:18,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:07:18,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:07:20,823.823 INFO    ] ================================================
[2026-08-25 20:07:20,839.839 INFO    ] Launching Daemon at Tue Aug 25 20:07:20 IST 2026
[2026-08-25 20:07:20,849.849 INFO    ] ================================================
[2026-08-25 20:07:21,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:07:21
[2026-08-25 20:07:22,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:07:22,370.370 INFO    ] Initializing speech engine...
[2026-08-25 20:07:22,378.378 INFO    ] 2026-08-25 20:07:22
[2026-08-25 20:07:22,649.649 INFO    ] 2026-08-25 20:07:22
[2026-08-25 20:07:22,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:07:22,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:07:22,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:07:23,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:07:23,180.180 INFO    ] time= 25/08/2026 20:07:23
[2026-08-25 20:07:23,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:07:23,206.206 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:07:23,335.335 INFO    ] No existing commands found in stream
[2026-08-25 20:07:28,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:07:28,360.360 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 20:07:31,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:07:31,811.811 INFO    ] Checking for system updates...
[2026-08-25 20:07:31,849.849 INFO    ] 200
[2026-08-25 20:07:31,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:31,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:07:31,923.923 INFO    ] No update needed
[2026-08-25 20:07:31,926.926 INFO    ] Checking for camera pi updates...
[2026-08-25 20:07:31,962.962 INFO    ] 200
[2026-08-25 20:07:31,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:32,013.013 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:07:32,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:07:32,084.084 INFO    ] No camera update needed
[2026-08-25 20:07:32,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:07:32,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:07:32,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:07:32,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:07:34,142.142 INFO    ] ================================================
[2026-08-25 20:07:34,158.158 INFO    ] Launching Daemon at Tue Aug 25 20:07:34 IST 2026
[2026-08-25 20:07:34,169.169 INFO    ] ================================================
[2026-08-25 20:07:34,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:07:34
[2026-08-25 20:07:35,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:07:35,604.604 INFO    ] Initializing speech engine...
[2026-08-25 20:07:35,611.611 INFO    ] 2026-08-25 20:07:35
[2026-08-25 20:07:35,870.870 INFO    ] 2026-08-25 20:07:35
[2026-08-25 20:07:35,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:07:36,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:07:36,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:07:36,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:07:36,325.325 INFO    ] time= 25/08/2026 20:07:36
[2026-08-25 20:07:36,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:07:36,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:07:36,555.555 INFO    ] No existing commands found in stream
[2026-08-25 20:07:41,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:07:41,582.582 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 20:07:44,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:07:44,301.301 INFO    ] Checking for system updates...
[2026-08-25 20:07:44,340.340 INFO    ] 200
[2026-08-25 20:07:44,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:44,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:07:44,404.404 INFO    ] No update needed
[2026-08-25 20:07:44,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 20:07:44,444.444 INFO    ] 200
[2026-08-25 20:07:44,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:44,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:07:44,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:07:44,649.649 INFO    ] No camera update needed
[2026-08-25 20:07:44,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:07:44,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:07:44,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:07:44,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:07:46,709.709 INFO    ] ================================================
[2026-08-25 20:07:46,727.727 INFO    ] Launching Daemon at Tue Aug 25 20:07:46 IST 2026
[2026-08-25 20:07:46,738.738 INFO    ] ================================================
[2026-08-25 20:07:47,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:07:47
[2026-08-25 20:07:47,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:07:48,240.240 INFO    ] Initializing speech engine...
[2026-08-25 20:07:48,247.247 INFO    ] 2026-08-25 20:07:48
[2026-08-25 20:07:48,568.568 INFO    ] 2026-08-25 20:07:48
[2026-08-25 20:07:48,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:07:48,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:07:48,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:07:48,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:07:48,979.979 INFO    ] time= 25/08/2026 20:07:48
[2026-08-25 20:07:49,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:07:49,024.024 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:07:49,112.112 INFO    ] No existing commands found in stream
[2026-08-25 20:07:54,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:07:54,128.128 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 20:07:57,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:07:57,422.422 INFO    ] Checking for system updates...
[2026-08-25 20:07:57,458.458 INFO    ] 200
[2026-08-25 20:07:57,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:57,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:07:57,514.514 INFO    ] No update needed
[2026-08-25 20:07:57,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 20:07:57,550.550 INFO    ] 200
[2026-08-25 20:07:57,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:07:57,592.592 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:07:57,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:07:57,646.646 INFO    ] No camera update needed
[2026-08-25 20:07:57,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:07:57,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:07:57,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:07:57,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:07:59,702.702 INFO    ] ================================================
[2026-08-25 20:07:59,718.718 INFO    ] Launching Daemon at Tue Aug 25 20:07:59 IST 2026
[2026-08-25 20:07:59,729.729 INFO    ] ================================================
[2026-08-25 20:08:00,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:08:00
[2026-08-25 20:08:00,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:08:01,154.154 INFO    ] Initializing speech engine...
[2026-08-25 20:08:01,163.163 INFO    ] 2026-08-25 20:08:01
[2026-08-25 20:08:01,436.436 INFO    ] 2026-08-25 20:08:01
[2026-08-25 20:08:01,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:08:01,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:08:01,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:08:01,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:08:01,938.938 INFO    ] time= 25/08/2026 20:08:01
[2026-08-25 20:08:01,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:08:01,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:08:02,088.088 INFO    ] No existing commands found in stream
[2026-08-25 20:08:07,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:08:07,106.106 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 20:08:11,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:08:11,402.402 INFO    ] Checking for system updates...
[2026-08-25 20:08:11,444.444 INFO    ] 200
[2026-08-25 20:08:11,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:11,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:08:11,517.517 INFO    ] No update needed
[2026-08-25 20:08:11,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 20:08:11,569.569 INFO    ] 200
[2026-08-25 20:08:11,572.572 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:11,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:08:11,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:08:11,695.695 INFO    ] No camera update needed
[2026-08-25 20:08:11,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:08:11,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:08:11,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:08:11,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:08:13,755.755 INFO    ] ================================================
[2026-08-25 20:08:13,770.770 INFO    ] Launching Daemon at Tue Aug 25 20:08:13 IST 2026
[2026-08-25 20:08:13,781.781 INFO    ] ================================================
[2026-08-25 20:08:14,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:08:14
[2026-08-25 20:08:14,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:08:15,243.243 INFO    ] Initializing speech engine...
[2026-08-25 20:08:15,250.250 INFO    ] 2026-08-25 20:08:15
[2026-08-25 20:08:15,528.528 INFO    ] 2026-08-25 20:08:15
[2026-08-25 20:08:15,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:08:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:08:15,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:08:15,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:08:16,002.002 INFO    ] time= 25/08/2026 20:08:15
[2026-08-25 20:08:16,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:08:16,065.065 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:08:16,212.212 INFO    ] No existing commands found in stream
[2026-08-25 20:08:21,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:08:21,238.238 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 20:08:24,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:08:24,028.028 INFO    ] Checking for system updates...
[2026-08-25 20:08:24,063.063 INFO    ] 200
[2026-08-25 20:08:24,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:24,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:08:24,121.121 INFO    ] No update needed
[2026-08-25 20:08:24,123.123 INFO    ] Checking for camera pi updates...
[2026-08-25 20:08:24,159.159 INFO    ] 200
[2026-08-25 20:08:24,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:24,205.205 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:08:24,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:08:24,261.261 INFO    ] No camera update needed
[2026-08-25 20:08:24,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:08:24,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:08:24,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:08:24,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:08:26,316.316 INFO    ] ================================================
[2026-08-25 20:08:26,331.331 INFO    ] Launching Daemon at Tue Aug 25 20:08:26 IST 2026
[2026-08-25 20:08:26,342.342 INFO    ] ================================================
[2026-08-25 20:08:26,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:08:26
[2026-08-25 20:08:27,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:08:27,760.760 INFO    ] Initializing speech engine...
[2026-08-25 20:08:27,769.769 INFO    ] 2026-08-25 20:08:27
[2026-08-25 20:08:28,016.016 INFO    ] 2026-08-25 20:08:28
[2026-08-25 20:08:28,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:08:28,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:08:28,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:08:28,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:08:28,483.483 INFO    ] time= 25/08/2026 20:08:28
[2026-08-25 20:08:28,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:08:28,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:08:28,721.721 INFO    ] No existing commands found in stream
[2026-08-25 20:08:33,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:08:33,738.738 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 20:08:34,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:08:34,503.503 INFO    ] Checking for system updates...
[2026-08-25 20:08:34,543.543 INFO    ] 200
[2026-08-25 20:08:34,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:34,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:08:34,599.599 INFO    ] No update needed
[2026-08-25 20:08:34,602.602 INFO    ] Checking for camera pi updates...
[2026-08-25 20:08:34,638.638 INFO    ] 200
[2026-08-25 20:08:34,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:34,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:08:34,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:08:34,731.731 INFO    ] No camera update needed
[2026-08-25 20:08:34,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:08:34,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:08:34,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:08:34,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:08:36,787.787 INFO    ] ================================================
[2026-08-25 20:08:36,802.802 INFO    ] Launching Daemon at Tue Aug 25 20:08:36 IST 2026
[2026-08-25 20:08:36,813.813 INFO    ] ================================================
[2026-08-25 20:08:37,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:08:37
[2026-08-25 20:08:38,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:08:38,411.411 INFO    ] Initializing speech engine...
[2026-08-25 20:08:38,419.419 INFO    ] 2026-08-25 20:08:38
[2026-08-25 20:08:38,707.707 INFO    ] 2026-08-25 20:08:38
[2026-08-25 20:08:38,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:08:38,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:08:39,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:08:39,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:08:39,234.234 INFO    ] time= 25/08/2026 20:08:39
[2026-08-25 20:08:39,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:08:39,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:08:39,402.402 INFO    ] No existing commands found in stream
[2026-08-25 20:08:44,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:08:44,438.438 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 20:08:48,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:08:48,397.397 INFO    ] Checking for system updates...
[2026-08-25 20:08:48,434.434 INFO    ] 200
[2026-08-25 20:08:48,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:48,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:08:48,498.498 INFO    ] No update needed
[2026-08-25 20:08:48,501.501 INFO    ] Checking for camera pi updates...
[2026-08-25 20:08:48,535.535 INFO    ] 200
[2026-08-25 20:08:48,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:08:48,579.579 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:08:48,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:08:48,631.631 INFO    ] No camera update needed
[2026-08-25 20:08:48,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:08:48,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:08:48,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:08:48,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:08:50,687.687 INFO    ] ================================================
[2026-08-25 20:08:50,703.703 INFO    ] Launching Daemon at Tue Aug 25 20:08:50 IST 2026
[2026-08-25 20:08:50,714.714 INFO    ] ================================================
[2026-08-25 20:08:51,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:08:51
[2026-08-25 20:08:52,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:08:52,318.318 INFO    ] Initializing speech engine...
[2026-08-25 20:08:52,329.329 INFO    ] 2026-08-25 20:08:52
[2026-08-25 20:08:52,636.636 INFO    ] 2026-08-25 20:08:52
[2026-08-25 20:08:52,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:08:52,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:08:52,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:08:53,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:08:53,140.140 INFO    ] time= 25/08/2026 20:08:53
[2026-08-25 20:08:53,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:08:53,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:08:53,303.303 INFO    ] No existing commands found in stream
[2026-08-25 20:08:58,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:08:58,331.331 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 20:09:02,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:09:02,690.690 INFO    ] Checking for system updates...
[2026-08-25 20:09:02,746.746 INFO    ] 200
[2026-08-25 20:09:02,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:02,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:09:02,826.826 INFO    ] No update needed
[2026-08-25 20:09:02,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 20:09:02,863.863 INFO    ] 200
[2026-08-25 20:09:02,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:02,918.918 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:09:02,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:09:02,983.983 INFO    ] No camera update needed
[2026-08-25 20:09:02,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:09:02,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:09:02,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:09:03,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:09:05,045.045 INFO    ] ================================================
[2026-08-25 20:09:05,061.061 INFO    ] Launching Daemon at Tue Aug 25 20:09:05 IST 2026
[2026-08-25 20:09:05,072.072 INFO    ] ================================================
[2026-08-25 20:09:05,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:09:05
[2026-08-25 20:09:06,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:09:06,538.538 INFO    ] Initializing speech engine...
[2026-08-25 20:09:06,550.550 INFO    ] 2026-08-25 20:09:06
[2026-08-25 20:09:06,814.814 INFO    ] 2026-08-25 20:09:06
[2026-08-25 20:09:06,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:09:07,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:09:07,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:09:07,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:09:07,230.230 INFO    ] time= 25/08/2026 20:09:07
[2026-08-25 20:09:07,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:09:07,279.279 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:09:07,402.402 INFO    ] No existing commands found in stream
[2026-08-25 20:09:12,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:09:12,430.430 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 20:09:14,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:09:14,627.627 INFO    ] Checking for system updates...
[2026-08-25 20:09:14,663.663 INFO    ] 200
[2026-08-25 20:09:14,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:14,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:14,721.721 INFO    ] No update needed
[2026-08-25 20:09:14,724.724 INFO    ] Checking for camera pi updates...
[2026-08-25 20:09:14,759.759 INFO    ] 200
[2026-08-25 20:09:14,762.762 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:14,802.802 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:09:14,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:14,863.863 INFO    ] No camera update needed
[2026-08-25 20:09:14,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:09:14,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:09:14,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:09:14,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:09:16,919.919 INFO    ] ================================================
[2026-08-25 20:09:16,934.934 INFO    ] Launching Daemon at Tue Aug 25 20:09:16 IST 2026
[2026-08-25 20:09:16,945.945 INFO    ] ================================================
[2026-08-25 20:09:17,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:09:17
[2026-08-25 20:09:18,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:09:18,400.400 INFO    ] Initializing speech engine...
[2026-08-25 20:09:18,409.409 INFO    ] 2026-08-25 20:09:18
[2026-08-25 20:09:18,658.658 INFO    ] 2026-08-25 20:09:18
[2026-08-25 20:09:18,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:09:18,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:09:18,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:09:19,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:09:19,127.127 INFO    ] time= 25/08/2026 20:09:19
[2026-08-25 20:09:19,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:09:19,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:09:19,350.350 INFO    ] No existing commands found in stream
[2026-08-25 20:09:24,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:09:24,377.377 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 20:09:26,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:09:26,874.874 INFO    ] Checking for system updates...
[2026-08-25 20:09:26,909.909 INFO    ] 200
[2026-08-25 20:09:26,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:26,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:26,973.973 INFO    ] No update needed
[2026-08-25 20:09:26,975.975 INFO    ] Checking for camera pi updates...
[2026-08-25 20:09:27,009.009 INFO    ] 200
[2026-08-25 20:09:27,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:27,056.056 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:09:27,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:27,111.111 INFO    ] No camera update needed
[2026-08-25 20:09:27,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:09:27,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:09:27,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:09:27,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:09:29,166.166 INFO    ] ================================================
[2026-08-25 20:09:29,182.182 INFO    ] Launching Daemon at Tue Aug 25 20:09:29 IST 2026
[2026-08-25 20:09:29,193.193 INFO    ] ================================================
[2026-08-25 20:09:29,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:09:29
[2026-08-25 20:09:30,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:09:30,616.616 INFO    ] Initializing speech engine...
[2026-08-25 20:09:30,625.625 INFO    ] 2026-08-25 20:09:30
[2026-08-25 20:09:30,874.874 INFO    ] 2026-08-25 20:09:30
[2026-08-25 20:09:30,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:09:31,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:09:31,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:09:31,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:09:31,353.353 INFO    ] time= 25/08/2026 20:09:31
[2026-08-25 20:09:31,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:09:31,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:09:31,578.578 INFO    ] No existing commands found in stream
[2026-08-25 20:09:36,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:09:36,623.623 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 20:09:39,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:09:39,169.169 INFO    ] Checking for system updates...
[2026-08-25 20:09:39,206.206 INFO    ] 200
[2026-08-25 20:09:39,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:39,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:39,264.264 INFO    ] No update needed
[2026-08-25 20:09:39,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 20:09:39,302.302 INFO    ] 200
[2026-08-25 20:09:39,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:39,350.350 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:09:39,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:39,405.405 INFO    ] No camera update needed
[2026-08-25 20:09:39,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:09:39,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:09:39,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:09:39,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:09:41,459.459 INFO    ] ================================================
[2026-08-25 20:09:41,474.474 INFO    ] Launching Daemon at Tue Aug 25 20:09:41 IST 2026
[2026-08-25 20:09:41,485.485 INFO    ] ================================================
[2026-08-25 20:09:42,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:09:42
[2026-08-25 20:09:42,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:09:43,079.079 INFO    ] Initializing speech engine...
[2026-08-25 20:09:43,085.085 INFO    ] 2026-08-25 20:09:43
[2026-08-25 20:09:43,359.359 INFO    ] 2026-08-25 20:09:43
[2026-08-25 20:09:43,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:09:43,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:09:43,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:09:43,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:09:43,853.853 INFO    ] time= 25/08/2026 20:09:43
[2026-08-25 20:09:43,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:09:43,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:09:43,973.973 INFO    ] No existing commands found in stream
[2026-08-25 20:09:48,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:09:48,997.997 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 20:09:52,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:09:52,404.404 INFO    ] Checking for system updates...
[2026-08-25 20:09:52,444.444 INFO    ] 200
[2026-08-25 20:09:52,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:52,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:52,503.503 INFO    ] No update needed
[2026-08-25 20:09:52,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 20:09:52,540.540 INFO    ] 200
[2026-08-25 20:09:52,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:09:52,588.588 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:09:52,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:09:52,740.740 INFO    ] No camera update needed
[2026-08-25 20:09:52,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:09:52,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:09:52,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:09:52,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:09:54,797.797 INFO    ] ================================================
[2026-08-25 20:09:54,812.812 INFO    ] Launching Daemon at Tue Aug 25 20:09:54 IST 2026
[2026-08-25 20:09:54,823.823 INFO    ] ================================================
[2026-08-25 20:09:55,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:09:55
[2026-08-25 20:09:55,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:09:56,242.242 INFO    ] Initializing speech engine...
[2026-08-25 20:09:56,249.249 INFO    ] 2026-08-25 20:09:56
[2026-08-25 20:09:56,494.494 INFO    ] 2026-08-25 20:09:56
[2026-08-25 20:09:56,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:09:56,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:09:56,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:09:56,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:09:56,960.960 INFO    ] time= 25/08/2026 20:09:56
[2026-08-25 20:09:57,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:09:57,084.084 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:09:57,229.229 INFO    ] No existing commands found in stream
[2026-08-25 20:10:02,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:10:02,250.250 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 20:10:07,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:10:07,456.456 INFO    ] Checking for system updates...
[2026-08-25 20:10:07,492.492 INFO    ] 200
[2026-08-25 20:10:07,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:07,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:07,558.558 INFO    ] No update needed
[2026-08-25 20:10:07,560.560 INFO    ] Checking for camera pi updates...
[2026-08-25 20:10:07,593.593 INFO    ] 200
[2026-08-25 20:10:07,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:07,640.640 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:10:07,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:07,699.699 INFO    ] No camera update needed
[2026-08-25 20:10:07,701.701 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:10:07,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:10:07,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:10:07,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:10:09,754.754 INFO    ] ================================================
[2026-08-25 20:10:09,769.769 INFO    ] Launching Daemon at Tue Aug 25 20:10:09 IST 2026
[2026-08-25 20:10:09,780.780 INFO    ] ================================================
[2026-08-25 20:10:10,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:10:10
[2026-08-25 20:10:10,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:10:11,240.240 INFO    ] Initializing speech engine...
[2026-08-25 20:10:11,247.247 INFO    ] 2026-08-25 20:10:11
[2026-08-25 20:10:11,520.520 INFO    ] 2026-08-25 20:10:11
[2026-08-25 20:10:11,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:10:11,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:10:11,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:10:11,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:10:11,995.995 INFO    ] time= 25/08/2026 20:10:11
[2026-08-25 20:10:12,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:10:12,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:10:12,186.186 INFO    ] No existing commands found in stream
[2026-08-25 20:10:17,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:10:17,214.214 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 20:10:18,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:10:18,527.527 INFO    ] Checking for system updates...
[2026-08-25 20:10:18,562.562 INFO    ] 200
[2026-08-25 20:10:18,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:18,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:18,621.621 INFO    ] No update needed
[2026-08-25 20:10:18,623.623 INFO    ] Checking for camera pi updates...
[2026-08-25 20:10:18,657.657 INFO    ] 200
[2026-08-25 20:10:18,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:18,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:10:18,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:18,754.754 INFO    ] No camera update needed
[2026-08-25 20:10:18,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:10:18,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:10:18,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:10:18,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:10:20,810.810 INFO    ] ================================================
[2026-08-25 20:10:20,825.825 INFO    ] Launching Daemon at Tue Aug 25 20:10:20 IST 2026
[2026-08-25 20:10:20,837.837 INFO    ] ================================================
[2026-08-25 20:10:21,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:10:21
[2026-08-25 20:10:22,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:10:22,438.438 INFO    ] Initializing speech engine...
[2026-08-25 20:10:22,447.447 INFO    ] 2026-08-25 20:10:22
[2026-08-25 20:10:22,717.717 INFO    ] 2026-08-25 20:10:22
[2026-08-25 20:10:22,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:10:22,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:10:23,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:10:23,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:10:23,192.192 INFO    ] time= 25/08/2026 20:10:23
[2026-08-25 20:10:23,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:10:23,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:10:23,404.404 INFO    ] No existing commands found in stream
[2026-08-25 20:10:28,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:10:28,433.433 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 20:10:32,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:10:32,064.064 INFO    ] Checking for system updates...
[2026-08-25 20:10:32,106.106 INFO    ] 200
[2026-08-25 20:10:32,108.108 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:32,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:32,169.169 INFO    ] No update needed
[2026-08-25 20:10:32,172.172 INFO    ] Checking for camera pi updates...
[2026-08-25 20:10:32,210.210 INFO    ] 200
[2026-08-25 20:10:32,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:32,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:10:32,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:32,329.329 INFO    ] No camera update needed
[2026-08-25 20:10:32,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:10:32,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:10:32,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:10:32,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:10:34,387.387 INFO    ] ================================================
[2026-08-25 20:10:34,402.402 INFO    ] Launching Daemon at Tue Aug 25 20:10:34 IST 2026
[2026-08-25 20:10:34,413.413 INFO    ] ================================================
[2026-08-25 20:10:34,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:10:34
[2026-08-25 20:10:35,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:10:35,878.878 INFO    ] Initializing speech engine...
[2026-08-25 20:10:35,883.883 INFO    ] 2026-08-25 20:10:35
[2026-08-25 20:10:36,132.132 INFO    ] 2026-08-25 20:10:36
[2026-08-25 20:10:36,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:10:36,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:10:36,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:10:36,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:10:36,630.630 INFO    ] time= 25/08/2026 20:10:36
[2026-08-25 20:10:36,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:10:36,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:10:36,834.834 INFO    ] No existing commands found in stream
[2026-08-25 20:10:41,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:10:41,858.858 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 20:10:43,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:10:43,346.346 INFO    ] Checking for system updates...
[2026-08-25 20:10:43,391.391 INFO    ] 200
[2026-08-25 20:10:43,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:43,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:43,456.456 INFO    ] No update needed
[2026-08-25 20:10:43,459.459 INFO    ] Checking for camera pi updates...
[2026-08-25 20:10:43,496.496 INFO    ] 200
[2026-08-25 20:10:43,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:43,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:10:43,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:10:43,601.601 INFO    ] No camera update needed
[2026-08-25 20:10:43,603.603 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:10:43,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:10:43,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:10:43,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:10:45,663.663 INFO    ] ================================================
[2026-08-25 20:10:45,679.679 INFO    ] Launching Daemon at Tue Aug 25 20:10:45 IST 2026
[2026-08-25 20:10:45,689.689 INFO    ] ================================================
[2026-08-25 20:10:46,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:10:46
[2026-08-25 20:10:47,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:10:47,311.311 INFO    ] Initializing speech engine...
[2026-08-25 20:10:47,319.319 INFO    ] 2026-08-25 20:10:47
[2026-08-25 20:10:47,599.599 INFO    ] 2026-08-25 20:10:47
[2026-08-25 20:10:47,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:10:47,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:10:47,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:10:48,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:10:48,158.158 INFO    ] time= 25/08/2026 20:10:48
[2026-08-25 20:10:48,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:10:48,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:10:48,342.342 INFO    ] No existing commands found in stream
[2026-08-25 20:10:53,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:10:53,392.392 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 20:10:57,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:10:57,548.548 INFO    ] Checking for system updates...
[2026-08-25 20:10:57,587.587 INFO    ] 200
[2026-08-25 20:10:57,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:57,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:10:57,644.644 INFO    ] No update needed
[2026-08-25 20:10:57,647.647 INFO    ] Checking for camera pi updates...
[2026-08-25 20:10:57,689.689 INFO    ] 200
[2026-08-25 20:10:57,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:10:57,731.731 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:10:57,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:10:57,781.781 INFO    ] No camera update needed
[2026-08-25 20:10:57,784.784 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:10:57,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:10:57,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:10:57,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:10:59,836.836 INFO    ] ================================================
[2026-08-25 20:10:59,852.852 INFO    ] Launching Daemon at Tue Aug 25 20:10:59 IST 2026
[2026-08-25 20:10:59,862.862 INFO    ] ================================================
[2026-08-25 20:11:00,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:11:00
[2026-08-25 20:11:01,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:11:01,319.319 INFO    ] Initializing speech engine...
[2026-08-25 20:11:01,324.324 INFO    ] 2026-08-25 20:11:01
[2026-08-25 20:11:01,573.573 INFO    ] 2026-08-25 20:11:01
[2026-08-25 20:11:01,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:11:01,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:11:01,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:11:02,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:11:02,071.071 INFO    ] time= 25/08/2026 20:11:02
[2026-08-25 20:11:02,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:11:02,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:11:02,254.254 INFO    ] No existing commands found in stream
[2026-08-25 20:11:07,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:11:07,267.267 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 20:11:11,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:11:11,544.544 INFO    ] Checking for system updates...
[2026-08-25 20:11:11,580.580 INFO    ] 200
[2026-08-25 20:11:11,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:11,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:11:11,642.642 INFO    ] No update needed
[2026-08-25 20:11:11,644.644 INFO    ] Checking for camera pi updates...
[2026-08-25 20:11:11,677.677 INFO    ] 200
[2026-08-25 20:11:11,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:11,720.720 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:11:11,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:11:11,782.782 INFO    ] No camera update needed
[2026-08-25 20:11:11,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:11:11,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:11:11,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:11:11,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:11:13,837.837 INFO    ] ================================================
[2026-08-25 20:11:13,852.852 INFO    ] Launching Daemon at Tue Aug 25 20:11:13 IST 2026
[2026-08-25 20:11:13,863.863 INFO    ] ================================================
[2026-08-25 20:11:14,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:11:14
[2026-08-25 20:11:15,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:11:15,355.355 INFO    ] Initializing speech engine...
[2026-08-25 20:11:15,363.363 INFO    ] 2026-08-25 20:11:15
[2026-08-25 20:11:15,612.612 INFO    ] 2026-08-25 20:11:15
[2026-08-25 20:11:15,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:11:15,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:11:15,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:11:16,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:11:16,099.099 INFO    ] time= 25/08/2026 20:11:16
[2026-08-25 20:11:16,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:11:16,168.168 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:11:16,312.312 INFO    ] No existing commands found in stream
[2026-08-25 20:11:21,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:11:21,325.325 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 20:11:22,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:11:22,797.797 INFO    ] Checking for system updates...
[2026-08-25 20:11:22,832.832 INFO    ] 200
[2026-08-25 20:11:22,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:22,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:11:22,896.896 INFO    ] No update needed
[2026-08-25 20:11:22,899.899 INFO    ] Checking for camera pi updates...
[2026-08-25 20:11:22,933.933 INFO    ] 200
[2026-08-25 20:11:22,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:22,975.975 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:11:23,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:11:23,032.032 INFO    ] No camera update needed
[2026-08-25 20:11:23,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:11:23,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:11:23,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:11:23,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:11:25,088.088 INFO    ] ================================================
[2026-08-25 20:11:25,103.103 INFO    ] Launching Daemon at Tue Aug 25 20:11:25 IST 2026
[2026-08-25 20:11:25,113.113 INFO    ] ================================================
[2026-08-25 20:11:25,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:11:25
[2026-08-25 20:11:26,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:11:26,543.543 INFO    ] Initializing speech engine...
[2026-08-25 20:11:26,552.552 INFO    ] 2026-08-25 20:11:26
[2026-08-25 20:11:26,812.812 INFO    ] 2026-08-25 20:11:26
[2026-08-25 20:11:26,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:11:27,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:11:27,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:11:27,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:11:27,297.297 INFO    ] time= 25/08/2026 20:11:27
[2026-08-25 20:11:27,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:11:27,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:11:27,511.511 INFO    ] No existing commands found in stream
[2026-08-25 20:11:32,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:11:32,530.530 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 20:11:33,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:11:33,901.901 INFO    ] Checking for system updates...
[2026-08-25 20:11:33,936.936 INFO    ] 200
[2026-08-25 20:11:33,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:33,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:11:33,993.993 INFO    ] No update needed
[2026-08-25 20:11:33,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 20:11:34,029.029 INFO    ] 200
[2026-08-25 20:11:34,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:34,075.075 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:11:34,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:11:34,139.139 INFO    ] No camera update needed
[2026-08-25 20:11:34,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:11:34,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:11:34,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:11:34,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:11:36,203.203 INFO    ] ================================================
[2026-08-25 20:11:36,218.218 INFO    ] Launching Daemon at Tue Aug 25 20:11:36 IST 2026
[2026-08-25 20:11:36,229.229 INFO    ] ================================================
[2026-08-25 20:11:36,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:11:36
[2026-08-25 20:11:37,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:11:37,639.639 INFO    ] Initializing speech engine...
[2026-08-25 20:11:37,653.653 INFO    ] 2026-08-25 20:11:37
[2026-08-25 20:11:37,940.940 INFO    ] 2026-08-25 20:11:37
[2026-08-25 20:11:37,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:11:38,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:11:38,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:11:38,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:11:38,355.355 INFO    ] time= 25/08/2026 20:11:38
[2026-08-25 20:11:38,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:11:38,371.371 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:11:38,446.446 INFO    ] No existing commands found in stream
[2026-08-25 20:11:43,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:11:43,465.465 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 20:11:47,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:11:47,067.067 INFO    ] Checking for system updates...
[2026-08-25 20:11:47,102.102 INFO    ] 200
[2026-08-25 20:11:47,105.105 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:47,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:11:47,161.161 INFO    ] No update needed
[2026-08-25 20:11:47,166.166 INFO    ] Checking for camera pi updates...
[2026-08-25 20:11:47,199.199 INFO    ] 200
[2026-08-25 20:11:47,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:47,242.242 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:11:47,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:11:47,289.289 INFO    ] No camera update needed
[2026-08-25 20:11:47,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:11:47,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:11:47,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:11:47,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:11:49,346.346 INFO    ] ================================================
[2026-08-25 20:11:49,361.361 INFO    ] Launching Daemon at Tue Aug 25 20:11:49 IST 2026
[2026-08-25 20:11:49,371.371 INFO    ] ================================================
[2026-08-25 20:11:50,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:11:50
[2026-08-25 20:11:50,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:11:50,968.968 INFO    ] Initializing speech engine...
[2026-08-25 20:11:50,977.977 INFO    ] 2026-08-25 20:11:50
[2026-08-25 20:11:51,267.267 INFO    ] 2026-08-25 20:11:51
[2026-08-25 20:11:51,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:11:51,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:11:51,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:11:51,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:11:51,793.793 INFO    ] time= 25/08/2026 20:11:51
[2026-08-25 20:11:51,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:11:51,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:11:51,951.951 INFO    ] No existing commands found in stream
[2026-08-25 20:11:56,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:11:56,977.977 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-08-25 20:11:57,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:11:57,813.813 INFO    ] Checking for system updates...
[2026-08-25 20:11:57,852.852 INFO    ] 200
[2026-08-25 20:11:57,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:57,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:11:57,918.918 INFO    ] No update needed
[2026-08-25 20:11:57,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 20:11:57,958.958 INFO    ] 200
[2026-08-25 20:11:57,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:11:58,002.002 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:11:58,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:11:58,160.160 INFO    ] No camera update needed
[2026-08-25 20:11:58,162.162 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:11:58,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:11:58,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:11:58,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:12:00,217.217 INFO    ] ================================================
[2026-08-25 20:12:00,232.232 INFO    ] Launching Daemon at Tue Aug 25 20:12:00 IST 2026
[2026-08-25 20:12:00,242.242 INFO    ] ================================================
[2026-08-25 20:12:00,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:12:00
[2026-08-25 20:12:01,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:12:01,636.636 INFO    ] Initializing speech engine...
[2026-08-25 20:12:01,644.644 INFO    ] 2026-08-25 20:12:01
[2026-08-25 20:12:02,123.123 INFO    ] 2026-08-25 20:12:02
[2026-08-25 20:12:02,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:12:02,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:12:02,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:12:02,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:12:02,621.621 INFO    ] time= 25/08/2026 20:12:02
[2026-08-25 20:12:02,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:12:02,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:12:02,784.784 INFO    ] No existing commands found in stream
[2026-08-25 20:12:07,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:12:07,800.800 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 20:12:12,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:12:12,048.048 INFO    ] Checking for system updates...
[2026-08-25 20:12:12,084.084 INFO    ] 200
[2026-08-25 20:12:12,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:12,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:12:12,142.142 INFO    ] No update needed
[2026-08-25 20:12:12,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 20:12:12,179.179 INFO    ] 200
[2026-08-25 20:12:12,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:12,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:12:12,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:12:12,284.284 INFO    ] No camera update needed
[2026-08-25 20:12:12,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:12:12,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:12:12,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:12:12,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:12:14,341.341 INFO    ] ================================================
[2026-08-25 20:12:14,356.356 INFO    ] Launching Daemon at Tue Aug 25 20:12:14 IST 2026
[2026-08-25 20:12:14,367.367 INFO    ] ================================================
[2026-08-25 20:12:14,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:12:14
[2026-08-25 20:12:15,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:12:15,779.779 INFO    ] Initializing speech engine...
[2026-08-25 20:12:15,789.789 INFO    ] 2026-08-25 20:12:15
[2026-08-25 20:12:16,032.032 INFO    ] 2026-08-25 20:12:16
[2026-08-25 20:12:16,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:12:16,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:12:16,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:12:16,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:12:16,527.527 INFO    ] time= 25/08/2026 20:12:16
[2026-08-25 20:12:16,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:12:16,594.594 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:12:16,736.736 INFO    ] No existing commands found in stream
[2026-08-25 20:12:21,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:12:21,753.753 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 20:12:23,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:12:23,181.181 INFO    ] Checking for system updates...
[2026-08-25 20:12:23,217.217 INFO    ] 200
[2026-08-25 20:12:23,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:23,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:12:23,274.274 INFO    ] No update needed
[2026-08-25 20:12:23,276.276 INFO    ] Checking for camera pi updates...
[2026-08-25 20:12:23,310.310 INFO    ] 200
[2026-08-25 20:12:23,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:23,357.357 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:12:23,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:12:23,406.406 INFO    ] No camera update needed
[2026-08-25 20:12:23,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:12:23,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:12:23,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:12:23,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:12:25,461.461 INFO    ] ================================================
[2026-08-25 20:12:25,477.477 INFO    ] Launching Daemon at Tue Aug 25 20:12:25 IST 2026
[2026-08-25 20:12:25,488.488 INFO    ] ================================================
[2026-08-25 20:12:26,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:12:26
[2026-08-25 20:12:26,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:12:26,883.883 INFO    ] Initializing speech engine...
[2026-08-25 20:12:26,906.906 INFO    ] 2026-08-25 20:12:26
[2026-08-25 20:12:27,158.158 INFO    ] 2026-08-25 20:12:27
[2026-08-25 20:12:27,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:12:27,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:12:27,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:12:27,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:12:27,627.627 INFO    ] time= 25/08/2026 20:12:27
[2026-08-25 20:12:27,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:12:27,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:12:27,855.855 INFO    ] No existing commands found in stream
[2026-08-25 20:12:32,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:12:32,878.878 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 20:12:36,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:12:36,237.237 INFO    ] Checking for system updates...
[2026-08-25 20:12:36,273.273 INFO    ] 200
[2026-08-25 20:12:36,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:36,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:12:36,339.339 INFO    ] No update needed
[2026-08-25 20:12:36,341.341 INFO    ] Checking for camera pi updates...
[2026-08-25 20:12:36,374.374 INFO    ] 200
[2026-08-25 20:12:36,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:36,420.420 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:12:36,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:12:36,471.471 INFO    ] No camera update needed
[2026-08-25 20:12:36,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:12:36,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:12:36,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:12:36,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:12:38,529.529 INFO    ] ================================================
[2026-08-25 20:12:38,545.545 INFO    ] Launching Daemon at Tue Aug 25 20:12:38 IST 2026
[2026-08-25 20:12:38,555.555 INFO    ] ================================================
[2026-08-25 20:12:39,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:12:39
[2026-08-25 20:12:39,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:12:40,013.013 INFO    ] Initializing speech engine...
[2026-08-25 20:12:40,020.020 INFO    ] 2026-08-25 20:12:40
[2026-08-25 20:12:40,279.279 INFO    ] 2026-08-25 20:12:40
[2026-08-25 20:12:40,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:12:40,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:12:40,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:12:40,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:12:40,730.730 INFO    ] time= 25/08/2026 20:12:40
[2026-08-25 20:12:40,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:12:40,827.827 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:12:40,969.969 INFO    ] No existing commands found in stream
[2026-08-25 20:12:45,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:12:45,988.988 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 20:12:50,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:12:50,047.047 INFO    ] Checking for system updates...
[2026-08-25 20:12:50,082.082 INFO    ] 200
[2026-08-25 20:12:50,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:50,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:12:50,139.139 INFO    ] No update needed
[2026-08-25 20:12:50,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 20:12:50,174.174 INFO    ] 200
[2026-08-25 20:12:50,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:12:50,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:12:50,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:12:50,274.274 INFO    ] No camera update needed
[2026-08-25 20:12:50,277.277 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:12:50,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:12:50,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:12:50,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:12:52,329.329 INFO    ] ================================================
[2026-08-25 20:12:52,345.345 INFO    ] Launching Daemon at Tue Aug 25 20:12:52 IST 2026
[2026-08-25 20:12:52,355.355 INFO    ] ================================================
[2026-08-25 20:12:52,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:12:52
[2026-08-25 20:12:53,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:12:53,909.909 INFO    ] Initializing speech engine...
[2026-08-25 20:12:53,925.925 INFO    ] 2026-08-25 20:12:53
[2026-08-25 20:12:54,202.202 INFO    ] 2026-08-25 20:12:54
[2026-08-25 20:12:54,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:12:54,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:12:54,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:12:54,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:12:54,662.662 INFO    ] time= 25/08/2026 20:12:54
[2026-08-25 20:12:54,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:12:54,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:12:54,903.903 INFO    ] No existing commands found in stream
[2026-08-25 20:12:59,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:12:59,920.920 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 20:13:04,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:13:04,243.243 INFO    ] Checking for system updates...
[2026-08-25 20:13:04,280.280 INFO    ] 200
[2026-08-25 20:13:04,283.283 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:04,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:13:04,340.340 INFO    ] No update needed
[2026-08-25 20:13:04,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 20:13:04,384.384 INFO    ] 200
[2026-08-25 20:13:04,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:04,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:13:04,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:13:04,476.476 INFO    ] No camera update needed
[2026-08-25 20:13:04,479.479 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:13:04,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:13:04,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:13:04,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:13:06,538.538 INFO    ] ================================================
[2026-08-25 20:13:06,562.562 INFO    ] Launching Daemon at Tue Aug 25 20:13:06 IST 2026
[2026-08-25 20:13:06,576.576 INFO    ] ================================================
[2026-08-25 20:13:07,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:13:07
[2026-08-25 20:13:07,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:13:08,028.028 INFO    ] Initializing speech engine...
[2026-08-25 20:13:08,037.037 INFO    ] 2026-08-25 20:13:08
[2026-08-25 20:13:08,282.282 INFO    ] 2026-08-25 20:13:08
[2026-08-25 20:13:08,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:13:08,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:13:08,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:13:08,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:13:08,749.749 INFO    ] time= 25/08/2026 20:13:08
[2026-08-25 20:13:08,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:13:08,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:13:08,973.973 INFO    ] No existing commands found in stream
[2026-08-25 20:13:14,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:13:14,017.017 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 20:13:18,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:13:18,353.353 INFO    ] Checking for system updates...
[2026-08-25 20:13:18,389.389 INFO    ] 200
[2026-08-25 20:13:18,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:18,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:13:18,452.452 INFO    ] No update needed
[2026-08-25 20:13:18,454.454 INFO    ] Checking for camera pi updates...
[2026-08-25 20:13:18,492.492 INFO    ] 200
[2026-08-25 20:13:18,495.495 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:18,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:13:18,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:13:18,596.596 INFO    ] No camera update needed
[2026-08-25 20:13:18,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:13:18,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:13:18,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:13:18,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:13:20,654.654 INFO    ] ================================================
[2026-08-25 20:13:20,669.669 INFO    ] Launching Daemon at Tue Aug 25 20:13:20 IST 2026
[2026-08-25 20:13:20,680.680 INFO    ] ================================================
[2026-08-25 20:13:21,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:13:21
[2026-08-25 20:13:21,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:13:22,091.091 INFO    ] Initializing speech engine...
[2026-08-25 20:13:22,099.099 INFO    ] 2026-08-25 20:13:22
[2026-08-25 20:13:22,347.347 INFO    ] 2026-08-25 20:13:22
[2026-08-25 20:13:22,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:13:22,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:13:22,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:13:22,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:13:22,711.711 INFO    ] time= 25/08/2026 20:13:22
[2026-08-25 20:13:22,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:13:22,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:13:22,907.907 INFO    ] No existing commands found in stream
[2026-08-25 20:13:27,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:13:27,920.920 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 20:13:31,897.897 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:13:31,900.900 INFO    ] Checking for system updates...
[2026-08-25 20:13:31,938.938 INFO    ] 200
[2026-08-25 20:13:31,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:31,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:13:32,000.000 INFO    ] No update needed
[2026-08-25 20:13:32,003.003 INFO    ] Checking for camera pi updates...
[2026-08-25 20:13:32,041.041 INFO    ] 200
[2026-08-25 20:13:32,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:32,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:13:32,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:13:32,161.161 INFO    ] No camera update needed
[2026-08-25 20:13:32,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:13:32,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:13:32,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:13:32,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:13:34,218.218 INFO    ] ================================================
[2026-08-25 20:13:34,233.233 INFO    ] Launching Daemon at Tue Aug 25 20:13:34 IST 2026
[2026-08-25 20:13:34,243.243 INFO    ] ================================================
[2026-08-25 20:13:34,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:13:34
[2026-08-25 20:13:35,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:13:35,698.698 INFO    ] Initializing speech engine...
[2026-08-25 20:13:35,707.707 INFO    ] 2026-08-25 20:13:35
[2026-08-25 20:13:35,953.953 INFO    ] 2026-08-25 20:13:35
[2026-08-25 20:13:35,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:13:36,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:13:36,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:13:36,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:13:36,324.324 INFO    ] time= 25/08/2026 20:13:36
[2026-08-25 20:13:36,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:13:36,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:13:36,514.514 INFO    ] No existing commands found in stream
[2026-08-25 20:13:41,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:13:41,527.527 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 20:13:45,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:13:45,535.535 INFO    ] Checking for system updates...
[2026-08-25 20:13:45,572.572 INFO    ] 200
[2026-08-25 20:13:45,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:45,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:13:45,630.630 INFO    ] No update needed
[2026-08-25 20:13:45,632.632 INFO    ] Checking for camera pi updates...
[2026-08-25 20:13:45,666.666 INFO    ] 200
[2026-08-25 20:13:45,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:45,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:13:45,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:13:45,760.760 INFO    ] No camera update needed
[2026-08-25 20:13:45,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:13:45,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:13:45,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:13:45,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:13:47,814.814 INFO    ] ================================================
[2026-08-25 20:13:47,829.829 INFO    ] Launching Daemon at Tue Aug 25 20:13:47 IST 2026
[2026-08-25 20:13:47,840.840 INFO    ] ================================================
[2026-08-25 20:13:48,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:13:48
[2026-08-25 20:13:49,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:13:49,275.275 INFO    ] Initializing speech engine...
[2026-08-25 20:13:49,284.284 INFO    ] 2026-08-25 20:13:49
[2026-08-25 20:13:49,528.528 INFO    ] 2026-08-25 20:13:49
[2026-08-25 20:13:49,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:13:49,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:13:49,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:13:49,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:13:50,023.023 INFO    ] time= 25/08/2026 20:13:49
[2026-08-25 20:13:50,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:13:50,089.089 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:13:50,231.231 INFO    ] No existing commands found in stream
[2026-08-25 20:13:55,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:13:55,249.249 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 20:13:56,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:13:56,739.739 INFO    ] Checking for system updates...
[2026-08-25 20:13:56,775.775 INFO    ] 200
[2026-08-25 20:13:56,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:56,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:13:56,839.839 INFO    ] No update needed
[2026-08-25 20:13:56,842.842 INFO    ] Checking for camera pi updates...
[2026-08-25 20:13:56,876.876 INFO    ] 200
[2026-08-25 20:13:56,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:13:56,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:13:56,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:13:56,978.978 INFO    ] No camera update needed
[2026-08-25 20:13:56,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:13:56,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:13:56,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:13:56,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:13:59,034.034 INFO    ] ================================================
[2026-08-25 20:13:59,049.049 INFO    ] Launching Daemon at Tue Aug 25 20:13:59 IST 2026
[2026-08-25 20:13:59,060.060 INFO    ] ================================================
[2026-08-25 20:13:59,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:13:59
[2026-08-25 20:14:00,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:14:00,481.481 INFO    ] Initializing speech engine...
[2026-08-25 20:14:00,488.488 INFO    ] 2026-08-25 20:14:00
[2026-08-25 20:14:00,748.748 INFO    ] 2026-08-25 20:14:00
[2026-08-25 20:14:00,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:14:01,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:14:01,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:14:01,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:14:01,209.209 INFO    ] time= 25/08/2026 20:14:01
[2026-08-25 20:14:01,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:14:01,295.295 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:14:01,427.427 INFO    ] No existing commands found in stream
[2026-08-25 20:14:06,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:14:06,450.450 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 20:14:09,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:14:09,059.059 INFO    ] Checking for system updates...
[2026-08-25 20:14:09,094.094 INFO    ] 200
[2026-08-25 20:14:09,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:09,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:14:09,151.151 INFO    ] No update needed
[2026-08-25 20:14:09,153.153 INFO    ] Checking for camera pi updates...
[2026-08-25 20:14:09,189.189 INFO    ] 200
[2026-08-25 20:14:09,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:09,234.234 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:14:09,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:14:09,291.291 INFO    ] No camera update needed
[2026-08-25 20:14:09,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:14:09,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:14:09,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:14:09,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:14:11,346.346 INFO    ] ================================================
[2026-08-25 20:14:11,361.361 INFO    ] Launching Daemon at Tue Aug 25 20:14:11 IST 2026
[2026-08-25 20:14:11,372.372 INFO    ] ================================================
[2026-08-25 20:14:11,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:14:11
[2026-08-25 20:14:12,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:14:12,782.782 INFO    ] Initializing speech engine...
[2026-08-25 20:14:12,791.791 INFO    ] 2026-08-25 20:14:12
[2026-08-25 20:14:13,036.036 INFO    ] 2026-08-25 20:14:13
[2026-08-25 20:14:13,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:14:13,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:14:13,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:14:13,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:14:13,507.507 INFO    ] time= 25/08/2026 20:14:13
[2026-08-25 20:14:13,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:14:13,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:14:13,725.725 INFO    ] No existing commands found in stream
[2026-08-25 20:14:18,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:14:18,751.751 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 20:14:20,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:14:20,682.682 INFO    ] Checking for system updates...
[2026-08-25 20:14:20,717.717 INFO    ] 200
[2026-08-25 20:14:20,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:20,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:14:20,775.775 INFO    ] No update needed
[2026-08-25 20:14:20,777.777 INFO    ] Checking for camera pi updates...
[2026-08-25 20:14:20,811.811 INFO    ] 200
[2026-08-25 20:14:20,813.813 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:20,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:14:20,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:14:20,918.918 INFO    ] No camera update needed
[2026-08-25 20:14:20,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:14:20,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:14:20,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:14:20,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:14:22,974.974 INFO    ] ================================================
[2026-08-25 20:14:22,989.989 INFO    ] Launching Daemon at Tue Aug 25 20:14:22 IST 2026
[2026-08-25 20:14:23,000.000 INFO    ] ================================================
[2026-08-25 20:14:23,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:14:23
[2026-08-25 20:14:24,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:14:24,421.421 INFO    ] Initializing speech engine...
[2026-08-25 20:14:24,430.430 INFO    ] 2026-08-25 20:14:24
[2026-08-25 20:14:24,676.676 INFO    ] 2026-08-25 20:14:24
[2026-08-25 20:14:24,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:14:24,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:14:24,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:14:25,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:14:25,170.170 INFO    ] time= 25/08/2026 20:14:25
[2026-08-25 20:14:25,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:14:25,240.240 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:14:25,383.383 INFO    ] No existing commands found in stream
[2026-08-25 20:14:30,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:14:30,399.399 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 20:14:32,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:14:32,371.371 INFO    ] Checking for system updates...
[2026-08-25 20:14:32,409.409 INFO    ] 200
[2026-08-25 20:14:32,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:32,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:14:32,471.471 INFO    ] No update needed
[2026-08-25 20:14:32,474.474 INFO    ] Checking for camera pi updates...
[2026-08-25 20:14:32,509.509 INFO    ] 200
[2026-08-25 20:14:32,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:32,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:14:32,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:14:32,608.608 INFO    ] No camera update needed
[2026-08-25 20:14:32,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:14:32,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:14:32,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:14:32,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:14:34,666.666 INFO    ] ================================================
[2026-08-25 20:14:34,680.680 INFO    ] Launching Daemon at Tue Aug 25 20:14:34 IST 2026
[2026-08-25 20:14:34,691.691 INFO    ] ================================================
[2026-08-25 20:14:35,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:14:35
[2026-08-25 20:14:35,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:14:36,102.102 INFO    ] Initializing speech engine...
[2026-08-25 20:14:36,111.111 INFO    ] 2026-08-25 20:14:36
[2026-08-25 20:14:36,356.356 INFO    ] 2026-08-25 20:14:36
[2026-08-25 20:14:36,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:14:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:14:36,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:14:36,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:14:36,839.839 INFO    ] time= 25/08/2026 20:14:36
[2026-08-25 20:14:36,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:14:36,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:14:37,059.059 INFO    ] No existing commands found in stream
[2026-08-25 20:14:42,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:14:42,078.078 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 20:14:44,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:14:44,081.081 INFO    ] Checking for system updates...
[2026-08-25 20:14:44,116.116 INFO    ] 200
[2026-08-25 20:14:44,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:44,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:14:44,179.179 INFO    ] No update needed
[2026-08-25 20:14:44,182.182 INFO    ] Checking for camera pi updates...
[2026-08-25 20:14:44,218.218 INFO    ] 200
[2026-08-25 20:14:44,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:44,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:14:44,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:14:44,322.322 INFO    ] No camera update needed
[2026-08-25 20:14:44,325.325 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:14:44,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:14:44,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:14:44,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:14:46,381.381 INFO    ] ================================================
[2026-08-25 20:14:46,396.396 INFO    ] Launching Daemon at Tue Aug 25 20:14:46 IST 2026
[2026-08-25 20:14:46,406.406 INFO    ] ================================================
[2026-08-25 20:14:46,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:14:46
[2026-08-25 20:14:47,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:14:47,816.816 INFO    ] Initializing speech engine...
[2026-08-25 20:14:47,834.834 INFO    ] 2026-08-25 20:14:47
[2026-08-25 20:14:48,080.080 INFO    ] 2026-08-25 20:14:48
[2026-08-25 20:14:48,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:14:48,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:14:48,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:14:48,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:14:48,553.553 INFO    ] time= 25/08/2026 20:14:48
[2026-08-25 20:14:48,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:14:48,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:14:48,750.750 INFO    ] No existing commands found in stream
[2026-08-25 20:14:53,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:14:53,779.779 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 20:14:56,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:14:56,243.243 INFO    ] Checking for system updates...
[2026-08-25 20:14:56,279.279 INFO    ] 200
[2026-08-25 20:14:56,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:56,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:14:56,336.336 INFO    ] No update needed
[2026-08-25 20:14:56,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 20:14:56,372.372 INFO    ] 200
[2026-08-25 20:14:56,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:14:56,415.415 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:14:56,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:14:56,467.467 INFO    ] No camera update needed
[2026-08-25 20:14:56,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:14:56,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:14:56,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:14:56,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:14:58,522.522 INFO    ] ================================================
[2026-08-25 20:14:58,537.537 INFO    ] Launching Daemon at Tue Aug 25 20:14:58 IST 2026
[2026-08-25 20:14:58,548.548 INFO    ] ================================================
[2026-08-25 20:14:59,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:14:59
[2026-08-25 20:14:59,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:15:00,050.050 INFO    ] Initializing speech engine...
[2026-08-25 20:15:00,058.058 INFO    ] 2026-08-25 20:15:00
[2026-08-25 20:15:00,332.332 INFO    ] 2026-08-25 20:15:00
[2026-08-25 20:15:00,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:15:01,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:15:01,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:15:01,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:15:01,799.799 INFO    ] time= 25/08/2026 20:15:01
[2026-08-25 20:15:01,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:15:01,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:15:01,935.935 INFO    ] No existing commands found in stream
[2026-08-25 20:15:06,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:15:06,961.961 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 20:15:10,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:15:10,567.567 INFO    ] Checking for system updates...
[2026-08-25 20:15:10,606.606 INFO    ] 200
[2026-08-25 20:15:10,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:10,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:10,662.662 INFO    ] No update needed
[2026-08-25 20:15:10,664.664 INFO    ] Checking for camera pi updates...
[2026-08-25 20:15:10,698.698 INFO    ] 200
[2026-08-25 20:15:10,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:10,741.741 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:15:10,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:10,792.792 INFO    ] No camera update needed
[2026-08-25 20:15:10,795.795 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:15:10,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:15:10,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:15:10,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:15:12,847.847 INFO    ] ================================================
[2026-08-25 20:15:12,862.862 INFO    ] Launching Daemon at Tue Aug 25 20:15:12 IST 2026
[2026-08-25 20:15:12,873.873 INFO    ] ================================================
[2026-08-25 20:15:13,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:15:13
[2026-08-25 20:15:14,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:15:14,458.458 INFO    ] Initializing speech engine...
[2026-08-25 20:15:14,469.469 INFO    ] 2026-08-25 20:15:14
[2026-08-25 20:15:14,738.738 INFO    ] 2026-08-25 20:15:14
[2026-08-25 20:15:14,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:15:14,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:15:14,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:15:15,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:15:15,144.144 INFO    ] time= 25/08/2026 20:15:15
[2026-08-25 20:15:15,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:15:15,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:15:15,231.231 INFO    ] No existing commands found in stream
[2026-08-25 20:15:20,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:15:20,270.270 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 20:15:21,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:15:21,947.947 INFO    ] Checking for system updates...
[2026-08-25 20:15:21,983.983 INFO    ] 200
[2026-08-25 20:15:21,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:22,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:22,052.052 INFO    ] No update needed
[2026-08-25 20:15:22,055.055 INFO    ] Checking for camera pi updates...
[2026-08-25 20:15:22,089.089 INFO    ] 200
[2026-08-25 20:15:22,091.091 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:22,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:15:22,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:22,185.185 INFO    ] No camera update needed
[2026-08-25 20:15:22,187.187 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:15:22,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:15:22,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:15:22,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:15:24,240.240 INFO    ] ================================================
[2026-08-25 20:15:24,255.255 INFO    ] Launching Daemon at Tue Aug 25 20:15:24 IST 2026
[2026-08-25 20:15:24,265.265 INFO    ] ================================================
[2026-08-25 20:15:24,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:15:24
[2026-08-25 20:15:25,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:15:25,728.728 INFO    ] Initializing speech engine...
[2026-08-25 20:15:25,741.741 INFO    ] 2026-08-25 20:15:25
[2026-08-25 20:15:26,033.033 INFO    ] 2026-08-25 20:15:26
[2026-08-25 20:15:26,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:15:26,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:15:26,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:15:26,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:15:26,417.417 INFO    ] time= 25/08/2026 20:15:26
[2026-08-25 20:15:26,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:15:26,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:15:26,543.543 INFO    ] No existing commands found in stream
[2026-08-25 20:15:31,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:15:31,564.564 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 20:15:34,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:15:34,902.902 INFO    ] Checking for system updates...
[2026-08-25 20:15:34,939.939 INFO    ] 200
[2026-08-25 20:15:34,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:34,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:34,998.998 INFO    ] No update needed
[2026-08-25 20:15:35,001.001 INFO    ] Checking for camera pi updates...
[2026-08-25 20:15:35,035.035 INFO    ] 200
[2026-08-25 20:15:35,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:35,084.084 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:15:35,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:35,144.144 INFO    ] No camera update needed
[2026-08-25 20:15:35,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:15:35,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:15:35,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:15:35,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:15:37,203.203 INFO    ] ================================================
[2026-08-25 20:15:37,218.218 INFO    ] Launching Daemon at Tue Aug 25 20:15:37 IST 2026
[2026-08-25 20:15:37,229.229 INFO    ] ================================================
[2026-08-25 20:15:37,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:15:37
[2026-08-25 20:15:38,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:15:38,852.852 INFO    ] Initializing speech engine...
[2026-08-25 20:15:38,859.859 INFO    ] 2026-08-25 20:15:38
[2026-08-25 20:15:39,138.138 INFO    ] 2026-08-25 20:15:39
[2026-08-25 20:15:39,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:15:39,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:15:39,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:15:39,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:15:39,632.632 INFO    ] time= 25/08/2026 20:15:39
[2026-08-25 20:15:39,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:15:39,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:15:39,846.846 INFO    ] No existing commands found in stream
[2026-08-25 20:15:44,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:15:44,877.877 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 20:15:47,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:15:47,064.064 INFO    ] Checking for system updates...
[2026-08-25 20:15:47,101.101 INFO    ] 200
[2026-08-25 20:15:47,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:47,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:47,159.159 INFO    ] No update needed
[2026-08-25 20:15:47,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 20:15:47,197.197 INFO    ] 200
[2026-08-25 20:15:47,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:47,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:15:47,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:47,302.302 INFO    ] No camera update needed
[2026-08-25 20:15:47,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:15:47,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:15:47,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:15:47,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:15:49,360.360 INFO    ] ================================================
[2026-08-25 20:15:49,375.375 INFO    ] Launching Daemon at Tue Aug 25 20:15:49 IST 2026
[2026-08-25 20:15:49,386.386 INFO    ] ================================================
[2026-08-25 20:15:49,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:15:49
[2026-08-25 20:15:50,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:15:50,839.839 INFO    ] Initializing speech engine...
[2026-08-25 20:15:50,849.849 INFO    ] 2026-08-25 20:15:50
[2026-08-25 20:15:51,110.110 INFO    ] 2026-08-25 20:15:51
[2026-08-25 20:15:51,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:15:51,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:15:51,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:15:51,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:15:51,656.656 INFO    ] time= 25/08/2026 20:15:51
[2026-08-25 20:15:51,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:15:51,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:15:51,807.807 INFO    ] No existing commands found in stream
[2026-08-25 20:15:56,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:15:56,825.825 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 20:15:58,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:15:58,913.913 INFO    ] Checking for system updates...
[2026-08-25 20:15:58,949.949 INFO    ] 200
[2026-08-25 20:15:58,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:59,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:59,007.007 INFO    ] No update needed
[2026-08-25 20:15:59,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 20:15:59,042.042 INFO    ] 200
[2026-08-25 20:15:59,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:15:59,085.085 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:15:59,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:15:59,133.133 INFO    ] No camera update needed
[2026-08-25 20:15:59,135.135 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:15:59,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:15:59,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:15:59,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:16:01,188.188 INFO    ] ================================================
[2026-08-25 20:16:01,206.206 INFO    ] Launching Daemon at Tue Aug 25 20:16:01 IST 2026
[2026-08-25 20:16:01,217.217 INFO    ] ================================================
[2026-08-25 20:16:01,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:16:01
[2026-08-25 20:16:02,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:16:02,922.922 INFO    ] Initializing speech engine...
[2026-08-25 20:16:02,947.947 INFO    ] 2026-08-25 20:16:02
[2026-08-25 20:16:03,234.234 INFO    ] 2026-08-25 20:16:03
[2026-08-25 20:16:03,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:16:03,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:16:03,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:16:03,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:16:03,610.610 INFO    ] time= 25/08/2026 20:16:03
[2026-08-25 20:16:03,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:16:03,661.661 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:16:03,798.798 INFO    ] No existing commands found in stream
[2026-08-25 20:16:08,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:16:08,821.821 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 20:16:10,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:16:10,005.005 INFO    ] Checking for system updates...
[2026-08-25 20:16:10,041.041 INFO    ] 200
[2026-08-25 20:16:10,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:10,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:16:10,098.098 INFO    ] No update needed
[2026-08-25 20:16:10,100.100 INFO    ] Checking for camera pi updates...
[2026-08-25 20:16:10,134.134 INFO    ] 200
[2026-08-25 20:16:10,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:10,183.183 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:16:10,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:16:10,339.339 INFO    ] No camera update needed
[2026-08-25 20:16:10,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:16:10,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:16:10,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:16:10,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:16:12,393.393 INFO    ] ================================================
[2026-08-25 20:16:12,409.409 INFO    ] Launching Daemon at Tue Aug 25 20:16:12 IST 2026
[2026-08-25 20:16:12,420.420 INFO    ] ================================================
[2026-08-25 20:16:12,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:16:12
[2026-08-25 20:16:13,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:16:13,836.836 INFO    ] Initializing speech engine...
[2026-08-25 20:16:13,846.846 INFO    ] 2026-08-25 20:16:13
[2026-08-25 20:16:14,092.092 INFO    ] 2026-08-25 20:16:14
[2026-08-25 20:16:14,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:16:14,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:16:14,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:16:14,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:16:14,540.540 INFO    ] time= 25/08/2026 20:16:14
[2026-08-25 20:16:14,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:16:14,651.651 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:16:14,780.780 INFO    ] No existing commands found in stream
[2026-08-25 20:16:19,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:16:19,808.808 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 20:16:23,038.038 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:16:23,041.041 INFO    ] Checking for system updates...
[2026-08-25 20:16:23,076.076 INFO    ] 200
[2026-08-25 20:16:23,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:23,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:23,135.135 INFO    ] No update needed
[2026-08-25 20:16:23,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 20:16:23,171.171 INFO    ] 200
[2026-08-25 20:16:23,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:23,214.214 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:16:23,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:23,271.271 INFO    ] No camera update needed
[2026-08-25 20:16:23,274.274 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:16:23,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:16:23,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:16:23,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:16:25,328.328 INFO    ] ================================================
[2026-08-25 20:16:25,343.343 INFO    ] Launching Daemon at Tue Aug 25 20:16:25 IST 2026
[2026-08-25 20:16:25,354.354 INFO    ] ================================================
[2026-08-25 20:16:25,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:16:25
[2026-08-25 20:16:26,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:16:26,781.781 INFO    ] Initializing speech engine...
[2026-08-25 20:16:26,790.790 INFO    ] 2026-08-25 20:16:26
[2026-08-25 20:16:27,036.036 INFO    ] 2026-08-25 20:16:27
[2026-08-25 20:16:27,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:16:27,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:16:27,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:16:27,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:16:27,508.508 INFO    ] time= 25/08/2026 20:16:27
[2026-08-25 20:16:27,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:16:27,595.595 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:16:27,736.736 INFO    ] No existing commands found in stream
[2026-08-25 20:16:32,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:16:32,750.750 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 20:16:33,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:16:33,353.353 INFO    ] Checking for system updates...
[2026-08-25 20:16:33,389.389 INFO    ] 200
[2026-08-25 20:16:33,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:33,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:33,458.458 INFO    ] No update needed
[2026-08-25 20:16:33,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 20:16:33,494.494 INFO    ] 200
[2026-08-25 20:16:33,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:33,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:16:33,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:33,588.588 INFO    ] No camera update needed
[2026-08-25 20:16:33,590.590 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:16:33,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:16:33,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:16:33,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:16:35,644.644 INFO    ] ================================================
[2026-08-25 20:16:35,659.659 INFO    ] Launching Daemon at Tue Aug 25 20:16:35 IST 2026
[2026-08-25 20:16:35,670.670 INFO    ] ================================================
[2026-08-25 20:16:36,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:16:36
[2026-08-25 20:16:36,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:16:37,093.093 INFO    ] Initializing speech engine...
[2026-08-25 20:16:37,111.111 INFO    ] 2026-08-25 20:16:37
[2026-08-25 20:16:37,358.358 INFO    ] 2026-08-25 20:16:37
[2026-08-25 20:16:37,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:16:37,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:16:37,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:16:37,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:16:37,851.851 INFO    ] time= 25/08/2026 20:16:37
[2026-08-25 20:16:37,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:16:37,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:16:38,044.044 INFO    ] No existing commands found in stream
[2026-08-25 20:16:43,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:16:43,077.077 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 20:16:43,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:16:43,980.980 INFO    ] Checking for system updates...
[2026-08-25 20:16:44,016.016 INFO    ] 200
[2026-08-25 20:16:44,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:44,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:44,077.077 INFO    ] No update needed
[2026-08-25 20:16:44,080.080 INFO    ] Checking for camera pi updates...
[2026-08-25 20:16:44,114.114 INFO    ] 200
[2026-08-25 20:16:44,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:44,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:16:44,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:44,211.211 INFO    ] No camera update needed
[2026-08-25 20:16:44,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:16:44,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:16:44,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:16:44,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:16:46,268.268 INFO    ] ================================================
[2026-08-25 20:16:46,283.283 INFO    ] Launching Daemon at Tue Aug 25 20:16:46 IST 2026
[2026-08-25 20:16:46,294.294 INFO    ] ================================================
[2026-08-25 20:16:46,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:16:46
[2026-08-25 20:16:47,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:16:47,735.735 INFO    ] Initializing speech engine...
[2026-08-25 20:16:47,760.760 INFO    ] 2026-08-25 20:16:47
[2026-08-25 20:16:48,032.032 INFO    ] 2026-08-25 20:16:48
[2026-08-25 20:16:48,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:16:48,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:16:48,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:16:48,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:16:48,415.415 INFO    ] time= 25/08/2026 20:16:48
[2026-08-25 20:16:48,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:16:48,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:16:48,542.542 INFO    ] No existing commands found in stream
[2026-08-25 20:16:53,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:16:53,557.557 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 20:16:57,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:16:57,611.611 INFO    ] Checking for system updates...
[2026-08-25 20:16:57,646.646 INFO    ] 200
[2026-08-25 20:16:57,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:57,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:57,703.703 INFO    ] No update needed
[2026-08-25 20:16:57,706.706 INFO    ] Checking for camera pi updates...
[2026-08-25 20:16:57,744.744 INFO    ] 200
[2026-08-25 20:16:57,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:16:57,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:16:57,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:16:57,843.843 INFO    ] No camera update needed
[2026-08-25 20:16:57,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:16:57,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:16:57,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:16:57,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:16:59,899.899 INFO    ] ================================================
[2026-08-25 20:16:59,913.913 INFO    ] Launching Daemon at Tue Aug 25 20:16:59 IST 2026
[2026-08-25 20:16:59,924.924 INFO    ] ================================================
[2026-08-25 20:17:00,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:17:00
[2026-08-25 20:17:01,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:17:01,374.374 INFO    ] Initializing speech engine...
[2026-08-25 20:17:01,399.399 INFO    ] 2026-08-25 20:17:01
[2026-08-25 20:17:01,788.788 INFO    ] 2026-08-25 20:17:01
[2026-08-25 20:17:01,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:17:02,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:17:02,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:17:02,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:17:02,243.243 INFO    ] time= 25/08/2026 20:17:02
[2026-08-25 20:17:02,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:17:02,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:17:02,391.391 INFO    ] No existing commands found in stream
[2026-08-25 20:17:07,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:17:07,425.425 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 20:17:10,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:17:10,179.179 INFO    ] Checking for system updates...
[2026-08-25 20:17:10,218.218 INFO    ] 200
[2026-08-25 20:17:10,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:10,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:17:10,275.275 INFO    ] No update needed
[2026-08-25 20:17:10,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 20:17:10,315.315 INFO    ] 200
[2026-08-25 20:17:10,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:10,359.359 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:17:10,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:17:10,412.412 INFO    ] No camera update needed
[2026-08-25 20:17:10,414.414 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:17:10,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:17:10,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:17:10,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:17:12,467.467 INFO    ] ================================================
[2026-08-25 20:17:12,482.482 INFO    ] Launching Daemon at Tue Aug 25 20:17:12 IST 2026
[2026-08-25 20:17:12,493.493 INFO    ] ================================================
[2026-08-25 20:17:13,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:17:13
[2026-08-25 20:17:13,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:17:13,932.932 INFO    ] Initializing speech engine...
[2026-08-25 20:17:13,948.948 INFO    ] 2026-08-25 20:17:13
[2026-08-25 20:17:14,225.225 INFO    ] 2026-08-25 20:17:14
[2026-08-25 20:17:14,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:17:14,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:17:14,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:17:14,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:17:14,606.606 INFO    ] time= 25/08/2026 20:17:14
[2026-08-25 20:17:14,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:17:14,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:17:14,737.737 INFO    ] No existing commands found in stream
[2026-08-25 20:17:19,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:17:19,756.756 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 20:17:22,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:17:22,093.093 INFO    ] Checking for system updates...
[2026-08-25 20:17:22,130.130 INFO    ] 200
[2026-08-25 20:17:22,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:22,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:17:22,187.187 INFO    ] No update needed
[2026-08-25 20:17:22,190.190 INFO    ] Checking for camera pi updates...
[2026-08-25 20:17:22,223.223 INFO    ] 200
[2026-08-25 20:17:22,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:22,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:17:22,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:17:22,328.328 INFO    ] No camera update needed
[2026-08-25 20:17:22,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:17:22,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:17:22,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:17:22,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:17:24,385.385 INFO    ] ================================================
[2026-08-25 20:17:24,401.401 INFO    ] Launching Daemon at Tue Aug 25 20:17:24 IST 2026
[2026-08-25 20:17:24,413.413 INFO    ] ================================================
[2026-08-25 20:17:24,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:17:24
[2026-08-25 20:17:25,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:17:25,866.866 INFO    ] Initializing speech engine...
[2026-08-25 20:17:25,882.882 INFO    ] 2026-08-25 20:17:25
[2026-08-25 20:17:26,169.169 INFO    ] 2026-08-25 20:17:26
[2026-08-25 20:17:26,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:17:26,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:17:26,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:17:26,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:17:26,550.550 INFO    ] time= 25/08/2026 20:17:26
[2026-08-25 20:17:26,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:17:26,592.592 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:17:26,695.695 INFO    ] No existing commands found in stream
[2026-08-25 20:17:31,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:17:31,730.730 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 20:17:33,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:17:33,014.014 INFO    ] Checking for system updates...
[2026-08-25 20:17:33,050.050 INFO    ] 200
[2026-08-25 20:17:33,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:33,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:17:33,114.114 INFO    ] No update needed
[2026-08-25 20:17:33,117.117 INFO    ] Checking for camera pi updates...
[2026-08-25 20:17:33,150.150 INFO    ] 200
[2026-08-25 20:17:33,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:33,193.193 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:17:33,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:17:33,265.265 INFO    ] No camera update needed
[2026-08-25 20:17:33,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:17:33,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:17:33,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:17:33,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:17:35,320.320 INFO    ] ================================================
[2026-08-25 20:17:35,335.335 INFO    ] Launching Daemon at Tue Aug 25 20:17:35 IST 2026
[2026-08-25 20:17:35,346.346 INFO    ] ================================================
[2026-08-25 20:17:35,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:17:35
[2026-08-25 20:17:36,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:17:36,776.776 INFO    ] Initializing speech engine...
[2026-08-25 20:17:36,784.784 INFO    ] 2026-08-25 20:17:36
[2026-08-25 20:17:37,082.082 INFO    ] 2026-08-25 20:17:37
[2026-08-25 20:17:37,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:17:37,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:17:37,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:17:37,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:17:37,466.466 INFO    ] time= 25/08/2026 20:17:37
[2026-08-25 20:17:37,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:17:37,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:17:37,592.592 INFO    ] No existing commands found in stream
[2026-08-25 20:17:42,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:17:42,607.607 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 20:17:44,703.703 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:17:44,706.706 INFO    ] Checking for system updates...
[2026-08-25 20:17:44,742.742 INFO    ] 200
[2026-08-25 20:17:44,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:44,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:17:44,801.801 INFO    ] No update needed
[2026-08-25 20:17:44,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 20:17:44,840.840 INFO    ] 200
[2026-08-25 20:17:44,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:44,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:17:44,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:17:44,933.933 INFO    ] No camera update needed
[2026-08-25 20:17:44,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:17:44,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:17:44,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:17:44,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:17:46,990.990 INFO    ] ================================================
[2026-08-25 20:17:47,005.005 INFO    ] Launching Daemon at Tue Aug 25 20:17:47 IST 2026
[2026-08-25 20:17:47,017.017 INFO    ] ================================================
[2026-08-25 20:17:47,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:17:47
[2026-08-25 20:17:48,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:17:48,471.471 INFO    ] Initializing speech engine...
[2026-08-25 20:17:48,492.492 INFO    ] 2026-08-25 20:17:48
[2026-08-25 20:17:48,767.767 INFO    ] 2026-08-25 20:17:48
[2026-08-25 20:17:48,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:17:49,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:17:49,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:17:49,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:17:49,147.147 INFO    ] time= 25/08/2026 20:17:49
[2026-08-25 20:17:49,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:17:49,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:17:49,272.272 INFO    ] No existing commands found in stream
[2026-08-25 20:17:54,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:17:54,288.288 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 20:17:57,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:17:57,888.888 INFO    ] Checking for system updates...
[2026-08-25 20:17:57,924.924 INFO    ] 200
[2026-08-25 20:17:57,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:57,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:17:57,981.981 INFO    ] No update needed
[2026-08-25 20:17:57,983.983 INFO    ] Checking for camera pi updates...
[2026-08-25 20:17:58,021.021 INFO    ] 200
[2026-08-25 20:17:58,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:17:58,064.064 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:17:58,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:17:58,119.119 INFO    ] No camera update needed
[2026-08-25 20:17:58,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:17:58,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:17:58,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:17:58,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:18:00,175.175 INFO    ] ================================================
[2026-08-25 20:18:00,190.190 INFO    ] Launching Daemon at Tue Aug 25 20:18:00 IST 2026
[2026-08-25 20:18:00,201.201 INFO    ] ================================================
[2026-08-25 20:18:00,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:18:00
[2026-08-25 20:18:01,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:18:01,685.685 INFO    ] Initializing speech engine...
[2026-08-25 20:18:01,690.690 INFO    ] 2026-08-25 20:18:01
[2026-08-25 20:18:02,068.068 INFO    ] 2026-08-25 20:18:02
[2026-08-25 20:18:02,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:18:02,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:18:02,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:18:02,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:18:02,620.620 INFO    ] time= 25/08/2026 20:18:02
[2026-08-25 20:18:02,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:18:02,716.716 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:18:02,854.854 INFO    ] No existing commands found in stream
[2026-08-25 20:18:07,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:18:07,882.882 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 20:18:12,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:18:12,320.320 INFO    ] Checking for system updates...
[2026-08-25 20:18:12,355.355 INFO    ] 200
[2026-08-25 20:18:12,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:12,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:18:12,412.412 INFO    ] No update needed
[2026-08-25 20:18:12,415.415 INFO    ] Checking for camera pi updates...
[2026-08-25 20:18:12,449.449 INFO    ] 200
[2026-08-25 20:18:12,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:12,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:18:12,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:18:12,549.549 INFO    ] No camera update needed
[2026-08-25 20:18:12,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:18:12,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:18:12,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:18:12,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:18:14,604.604 INFO    ] ================================================
[2026-08-25 20:18:14,619.619 INFO    ] Launching Daemon at Tue Aug 25 20:18:14 IST 2026
[2026-08-25 20:18:14,631.631 INFO    ] ================================================
[2026-08-25 20:18:15,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:18:15
[2026-08-25 20:18:15,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:18:16,240.240 INFO    ] Initializing speech engine...
[2026-08-25 20:18:16,249.249 INFO    ] 2026-08-25 20:18:16
[2026-08-25 20:18:16,495.495 INFO    ] 2026-08-25 20:18:16
[2026-08-25 20:18:16,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:18:16,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:18:16,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:18:17,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:18:17,049.049 INFO    ] time= 25/08/2026 20:18:17
[2026-08-25 20:18:17,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:18:17,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:18:17,150.150 INFO    ] No existing commands found in stream
[2026-08-25 20:18:22,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:18:22,163.163 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 20:18:25,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:18:25,094.094 INFO    ] Checking for system updates...
[2026-08-25 20:18:25,130.130 INFO    ] 200
[2026-08-25 20:18:25,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:25,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:18:25,189.189 INFO    ] No update needed
[2026-08-25 20:18:25,191.191 INFO    ] Checking for camera pi updates...
[2026-08-25 20:18:25,225.225 INFO    ] 200
[2026-08-25 20:18:25,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:25,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:18:25,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:18:25,417.417 INFO    ] No camera update needed
[2026-08-25 20:18:25,419.419 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:18:25,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:18:25,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:18:25,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:18:27,472.472 INFO    ] ================================================
[2026-08-25 20:18:27,487.487 INFO    ] Launching Daemon at Tue Aug 25 20:18:27 IST 2026
[2026-08-25 20:18:27,498.498 INFO    ] ================================================
[2026-08-25 20:18:28,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:18:28
[2026-08-25 20:18:28,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:18:28,950.950 INFO    ] Initializing speech engine...
[2026-08-25 20:18:28,959.959 INFO    ] 2026-08-25 20:18:28
[2026-08-25 20:18:29,234.234 INFO    ] 2026-08-25 20:18:29
[2026-08-25 20:18:29,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:18:29,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:18:29,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:18:29,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:18:29,745.745 INFO    ] time= 25/08/2026 20:18:29
[2026-08-25 20:18:29,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:18:29,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:18:29,964.964 INFO    ] No existing commands found in stream
[2026-08-25 20:18:34,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:18:35,002.002 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 20:18:37,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:18:37,235.235 INFO    ] Checking for system updates...
[2026-08-25 20:18:37,271.271 INFO    ] 200
[2026-08-25 20:18:37,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:37,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:18:37,330.330 INFO    ] No update needed
[2026-08-25 20:18:37,333.333 INFO    ] Checking for camera pi updates...
[2026-08-25 20:18:37,368.368 INFO    ] 200
[2026-08-25 20:18:37,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:37,412.412 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:18:37,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:18:37,462.462 INFO    ] No camera update needed
[2026-08-25 20:18:37,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:18:37,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:18:37,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:18:37,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:18:39,522.522 INFO    ] ================================================
[2026-08-25 20:18:39,538.538 INFO    ] Launching Daemon at Tue Aug 25 20:18:39 IST 2026
[2026-08-25 20:18:39,548.548 INFO    ] ================================================
[2026-08-25 20:18:40,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:18:40
[2026-08-25 20:18:40,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:18:40,953.953 INFO    ] Initializing speech engine...
[2026-08-25 20:18:40,960.960 INFO    ] 2026-08-25 20:18:40
[2026-08-25 20:18:41,272.272 INFO    ] 2026-08-25 20:18:41
[2026-08-25 20:18:41,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:18:41,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:18:41,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:18:41,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:18:41,672.672 INFO    ] time= 25/08/2026 20:18:41
[2026-08-25 20:18:41,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:18:41,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:18:41,783.783 INFO    ] No existing commands found in stream
[2026-08-25 20:18:46,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:18:46,812.812 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 20:18:48,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:18:48,359.359 INFO    ] Checking for system updates...
[2026-08-25 20:18:48,399.399 INFO    ] 200
[2026-08-25 20:18:48,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:48,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:18:48,457.457 INFO    ] No update needed
[2026-08-25 20:18:48,460.460 INFO    ] Checking for camera pi updates...
[2026-08-25 20:18:48,498.498 INFO    ] 200
[2026-08-25 20:18:48,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:48,540.540 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:18:48,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:18:48,598.598 INFO    ] No camera update needed
[2026-08-25 20:18:48,600.600 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:18:48,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:18:48,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:18:48,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:18:50,652.652 INFO    ] ================================================
[2026-08-25 20:18:50,667.667 INFO    ] Launching Daemon at Tue Aug 25 20:18:50 IST 2026
[2026-08-25 20:18:50,678.678 INFO    ] ================================================
[2026-08-25 20:18:51,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:18:51
[2026-08-25 20:18:51,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:18:52,081.081 INFO    ] Initializing speech engine...
[2026-08-25 20:18:52,103.103 INFO    ] 2026-08-25 20:18:52
[2026-08-25 20:18:52,359.359 INFO    ] 2026-08-25 20:18:52
[2026-08-25 20:18:52,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:18:52,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:18:52,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:18:52,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:18:52,724.724 INFO    ] time= 25/08/2026 20:18:52
[2026-08-25 20:18:52,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:18:52,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:18:52,857.857 INFO    ] No existing commands found in stream
[2026-08-25 20:18:57,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:18:57,870.870 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-08-25 20:18:59,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:18:59,639.639 INFO    ] Checking for system updates...
[2026-08-25 20:18:59,676.676 INFO    ] 200
[2026-08-25 20:18:59,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:59,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:18:59,733.733 INFO    ] No update needed
[2026-08-25 20:18:59,736.736 INFO    ] Checking for camera pi updates...
[2026-08-25 20:18:59,769.769 INFO    ] 200
[2026-08-25 20:18:59,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:18:59,811.811 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:18:59,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:18:59,881.881 INFO    ] No camera update needed
[2026-08-25 20:18:59,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:18:59,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:18:59,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:18:59,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:19:01,946.946 INFO    ] ================================================
[2026-08-25 20:19:01,978.978 INFO    ] Launching Daemon at Tue Aug 25 20:19:01 IST 2026
[2026-08-25 20:19:02,002.002 INFO    ] ================================================
[2026-08-25 20:19:02,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:19:02
[2026-08-25 20:19:03,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:19:03,681.681 INFO    ] Initializing speech engine...
[2026-08-25 20:19:03,691.691 INFO    ] 2026-08-25 20:19:03
[2026-08-25 20:19:03,952.952 INFO    ] 2026-08-25 20:19:03
[2026-08-25 20:19:04,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:19:04,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:19:04,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:19:04,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:19:04,421.421 INFO    ] time= 25/08/2026 20:19:04
[2026-08-25 20:19:04,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:19:04,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:19:04,626.626 INFO    ] No existing commands found in stream
[2026-08-25 20:19:09,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:19:09,657.657 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 20:19:13,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:19:13,729.729 INFO    ] Checking for system updates...
[2026-08-25 20:19:13,765.765 INFO    ] 200
[2026-08-25 20:19:13,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:13,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:13,822.822 INFO    ] No update needed
[2026-08-25 20:19:13,825.825 INFO    ] Checking for camera pi updates...
[2026-08-25 20:19:13,858.858 INFO    ] 200
[2026-08-25 20:19:13,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:13,908.908 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:19:13,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:13,959.959 INFO    ] No camera update needed
[2026-08-25 20:19:13,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:19:13,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:19:13,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:19:13,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:19:16,019.019 INFO    ] ================================================
[2026-08-25 20:19:16,035.035 INFO    ] Launching Daemon at Tue Aug 25 20:19:16 IST 2026
[2026-08-25 20:19:16,046.046 INFO    ] ================================================
[2026-08-25 20:19:16,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:19:16
[2026-08-25 20:19:17,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:19:17,706.706 INFO    ] Initializing speech engine...
[2026-08-25 20:19:17,718.718 INFO    ] 2026-08-25 20:19:17
[2026-08-25 20:19:18,004.004 INFO    ] 2026-08-25 20:19:17
[2026-08-25 20:19:18,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:19:18,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:19:18,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:19:18,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:19:18,481.481 INFO    ] time= 25/08/2026 20:19:18
[2026-08-25 20:19:18,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:19:18,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:19:18,714.714 INFO    ] No existing commands found in stream
[2026-08-25 20:19:23,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:19:23,749.749 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 20:19:27,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:19:27,642.642 INFO    ] Checking for system updates...
[2026-08-25 20:19:27,685.685 INFO    ] 200
[2026-08-25 20:19:27,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:27,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:27,758.758 INFO    ] No update needed
[2026-08-25 20:19:27,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 20:19:27,796.796 INFO    ] 200
[2026-08-25 20:19:27,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:27,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:19:27,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:27,893.893 INFO    ] No camera update needed
[2026-08-25 20:19:27,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:19:27,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:19:27,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:19:27,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:19:29,950.950 INFO    ] ================================================
[2026-08-25 20:19:29,966.966 INFO    ] Launching Daemon at Tue Aug 25 20:19:29 IST 2026
[2026-08-25 20:19:29,977.977 INFO    ] ================================================
[2026-08-25 20:19:30,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:19:30
[2026-08-25 20:19:31,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:19:31,606.606 INFO    ] Initializing speech engine...
[2026-08-25 20:19:31,615.615 INFO    ] 2026-08-25 20:19:31
[2026-08-25 20:19:31,901.901 INFO    ] 2026-08-25 20:19:31
[2026-08-25 20:19:31,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:19:32,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:19:32,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:19:32,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:19:32,406.406 INFO    ] time= 25/08/2026 20:19:32
[2026-08-25 20:19:32,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:19:32,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:19:32,629.629 INFO    ] No existing commands found in stream
[2026-08-25 20:19:37,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:19:37,651.651 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 20:19:39,458.458 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:19:39,461.461 INFO    ] Checking for system updates...
[2026-08-25 20:19:39,497.497 INFO    ] 200
[2026-08-25 20:19:39,499.499 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:39,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:39,554.554 INFO    ] No update needed
[2026-08-25 20:19:39,557.557 INFO    ] Checking for camera pi updates...
[2026-08-25 20:19:39,590.590 INFO    ] 200
[2026-08-25 20:19:39,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:39,633.633 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:19:39,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:39,684.684 INFO    ] No camera update needed
[2026-08-25 20:19:39,687.687 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:19:39,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:19:39,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:19:39,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:19:41,740.740 INFO    ] ================================================
[2026-08-25 20:19:41,755.755 INFO    ] Launching Daemon at Tue Aug 25 20:19:41 IST 2026
[2026-08-25 20:19:41,766.766 INFO    ] ================================================
[2026-08-25 20:19:42,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:19:42
[2026-08-25 20:19:43,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:19:43,384.384 INFO    ] Initializing speech engine...
[2026-08-25 20:19:43,392.392 INFO    ] 2026-08-25 20:19:43
[2026-08-25 20:19:43,669.669 INFO    ] 2026-08-25 20:19:43
[2026-08-25 20:19:43,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:19:43,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:19:43,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:19:44,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:19:44,225.225 INFO    ] time= 25/08/2026 20:19:44
[2026-08-25 20:19:44,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:19:44,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:19:44,389.389 INFO    ] No existing commands found in stream
[2026-08-25 20:19:49,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:19:49,425.425 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-08-25 20:19:53,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:19:53,235.235 INFO    ] Checking for system updates...
[2026-08-25 20:19:53,271.271 INFO    ] 200
[2026-08-25 20:19:53,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:53,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:53,332.332 INFO    ] No update needed
[2026-08-25 20:19:53,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 20:19:53,369.369 INFO    ] 200
[2026-08-25 20:19:53,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:19:53,412.412 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:19:53,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:19:53,470.470 INFO    ] No camera update needed
[2026-08-25 20:19:53,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:19:53,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:19:53,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:19:53,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:19:55,527.527 INFO    ] ================================================
[2026-08-25 20:19:55,542.542 INFO    ] Launching Daemon at Tue Aug 25 20:19:55 IST 2026
[2026-08-25 20:19:55,553.553 INFO    ] ================================================
[2026-08-25 20:19:56,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:19:56
[2026-08-25 20:19:56,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:19:56,972.972 INFO    ] Initializing speech engine...
[2026-08-25 20:19:56,985.985 INFO    ] 2026-08-25 20:19:56
[2026-08-25 20:19:57,267.267 INFO    ] 2026-08-25 20:19:57
[2026-08-25 20:19:57,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:19:57,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:19:57,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:19:57,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:19:57,616.616 INFO    ] time= 25/08/2026 20:19:57
[2026-08-25 20:19:57,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:19:57,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:19:57,752.752 INFO    ] No existing commands found in stream
[2026-08-25 20:20:02,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:20:02,781.781 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 20:20:07,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:20:07,440.440 INFO    ] Checking for system updates...
[2026-08-25 20:20:07,478.478 INFO    ] 200
[2026-08-25 20:20:07,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:07,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:20:07,540.540 INFO    ] No update needed
[2026-08-25 20:20:07,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 20:20:07,576.576 INFO    ] 200
[2026-08-25 20:20:07,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:07,618.618 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:20:07,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:20:07,679.679 INFO    ] No camera update needed
[2026-08-25 20:20:07,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:20:07,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:20:07,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:20:07,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:20:09,736.736 INFO    ] ================================================
[2026-08-25 20:20:09,752.752 INFO    ] Launching Daemon at Tue Aug 25 20:20:09 IST 2026
[2026-08-25 20:20:09,763.763 INFO    ] ================================================
[2026-08-25 20:20:10,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:20:10
[2026-08-25 20:20:10,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:20:11,204.204 INFO    ] Initializing speech engine...
[2026-08-25 20:20:11,228.228 INFO    ] 2026-08-25 20:20:11
[2026-08-25 20:20:11,496.496 INFO    ] 2026-08-25 20:20:11
[2026-08-25 20:20:11,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:20:11,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:20:11,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:20:11,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:20:11,905.905 INFO    ] time= 25/08/2026 20:20:11
[2026-08-25 20:20:11,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:20:11,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:20:11,995.995 INFO    ] No existing commands found in stream
[2026-08-25 20:20:17,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:20:17,033.033 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 20:20:17,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:20:17,525.525 INFO    ] Checking for system updates...
[2026-08-25 20:20:17,560.560 INFO    ] 200
[2026-08-25 20:20:17,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:17,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:20:17,620.620 INFO    ] No update needed
[2026-08-25 20:20:17,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 20:20:17,656.656 INFO    ] 200
[2026-08-25 20:20:17,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:17,698.698 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:20:17,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:20:17,747.747 INFO    ] No camera update needed
[2026-08-25 20:20:17,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:20:17,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:20:17,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:20:17,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:20:19,803.803 INFO    ] ================================================
[2026-08-25 20:20:19,819.819 INFO    ] Launching Daemon at Tue Aug 25 20:20:19 IST 2026
[2026-08-25 20:20:19,831.831 INFO    ] ================================================
[2026-08-25 20:20:20,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:20:20
[2026-08-25 20:20:21,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:20:21,404.404 INFO    ] Initializing speech engine...
[2026-08-25 20:20:21,413.413 INFO    ] 2026-08-25 20:20:21
[2026-08-25 20:20:21,701.701 INFO    ] 2026-08-25 20:20:21
[2026-08-25 20:20:21,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:20:21,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:20:21,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:20:22,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:20:22,226.226 INFO    ] time= 25/08/2026 20:20:22
[2026-08-25 20:20:22,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:20:22,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:20:22,291.291 INFO    ] No existing commands found in stream
[2026-08-25 20:20:27,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:20:27,304.304 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 20:20:29,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:20:29,389.389 INFO    ] Checking for system updates...
[2026-08-25 20:20:29,425.425 INFO    ] 200
[2026-08-25 20:20:29,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:29,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:20:29,490.490 INFO    ] No update needed
[2026-08-25 20:20:29,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 20:20:29,532.532 INFO    ] 200
[2026-08-25 20:20:29,535.535 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:29,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:20:29,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:20:29,733.733 INFO    ] No camera update needed
[2026-08-25 20:20:29,736.736 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:20:29,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:20:29,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:20:29,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:20:31,791.791 INFO    ] ================================================
[2026-08-25 20:20:31,807.807 INFO    ] Launching Daemon at Tue Aug 25 20:20:31 IST 2026
[2026-08-25 20:20:31,818.818 INFO    ] ================================================
[2026-08-25 20:20:32,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:20:32
[2026-08-25 20:20:33,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:20:33,353.353 INFO    ] Initializing speech engine...
[2026-08-25 20:20:33,362.362 INFO    ] 2026-08-25 20:20:33
[2026-08-25 20:20:33,618.618 INFO    ] 2026-08-25 20:20:33
[2026-08-25 20:20:33,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:20:33,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:20:33,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:20:34,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:20:34,086.086 INFO    ] time= 25/08/2026 20:20:34
[2026-08-25 20:20:34,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:20:34,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:20:34,314.314 INFO    ] No existing commands found in stream
[2026-08-25 20:20:39,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:20:39,330.330 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 20:20:41,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:20:41,963.963 INFO    ] Checking for system updates...
[2026-08-25 20:20:42,000.000 INFO    ] 200
[2026-08-25 20:20:42,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:42,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:20:42,059.059 INFO    ] No update needed
[2026-08-25 20:20:42,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 20:20:42,095.095 INFO    ] 200
[2026-08-25 20:20:42,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:42,141.141 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:20:42,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:20:42,199.199 INFO    ] No camera update needed
[2026-08-25 20:20:42,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:20:42,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:20:42,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:20:42,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:20:44,253.253 INFO    ] ================================================
[2026-08-25 20:20:44,268.268 INFO    ] Launching Daemon at Tue Aug 25 20:20:44 IST 2026
[2026-08-25 20:20:44,279.279 INFO    ] ================================================
[2026-08-25 20:20:44,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:20:44
[2026-08-25 20:20:45,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:20:45,685.685 INFO    ] Initializing speech engine...
[2026-08-25 20:20:45,704.704 INFO    ] 2026-08-25 20:20:45
[2026-08-25 20:20:45,956.956 INFO    ] 2026-08-25 20:20:45
[2026-08-25 20:20:45,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:20:46,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:20:46,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:20:46,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:20:46,369.369 INFO    ] time= 25/08/2026 20:20:46
[2026-08-25 20:20:46,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:20:46,409.409 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:20:46,539.539 INFO    ] No existing commands found in stream
[2026-08-25 20:20:51,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:20:51,567.567 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 20:20:53,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:20:53,775.775 INFO    ] Checking for system updates...
[2026-08-25 20:20:53,811.811 INFO    ] 200
[2026-08-25 20:20:53,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:53,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:20:53,868.868 INFO    ] No update needed
[2026-08-25 20:20:53,871.871 INFO    ] Checking for camera pi updates...
[2026-08-25 20:20:53,904.904 INFO    ] 200
[2026-08-25 20:20:53,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:20:53,947.947 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:20:54,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:20:54,003.003 INFO    ] No camera update needed
[2026-08-25 20:20:54,005.005 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:20:54,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:20:54,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:20:54,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:20:56,057.057 INFO    ] ================================================
[2026-08-25 20:20:56,075.075 INFO    ] Launching Daemon at Tue Aug 25 20:20:56 IST 2026
[2026-08-25 20:20:56,087.087 INFO    ] ================================================
[2026-08-25 20:20:56,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:20:56
[2026-08-25 20:20:57,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:20:57,686.686 INFO    ] Initializing speech engine...
[2026-08-25 20:20:57,694.694 INFO    ] 2026-08-25 20:20:57
[2026-08-25 20:20:57,965.965 INFO    ] 2026-08-25 20:20:57
[2026-08-25 20:20:58,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:20:58,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:20:58,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:20:58,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:20:58,400.400 INFO    ] time= 25/08/2026 20:20:58
[2026-08-25 20:20:58,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:20:58,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:20:58,664.664 INFO    ] No existing commands found in stream
[2026-08-25 20:21:03,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:21:03,693.693 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 20:21:07,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:21:07,720.720 INFO    ] Checking for system updates...
[2026-08-25 20:21:07,756.756 INFO    ] 200
[2026-08-25 20:21:07,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:07,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:07,822.822 INFO    ] No update needed
[2026-08-25 20:21:07,825.825 INFO    ] Checking for camera pi updates...
[2026-08-25 20:21:07,859.859 INFO    ] 200
[2026-08-25 20:21:07,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:07,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:21:07,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:07,952.952 INFO    ] No camera update needed
[2026-08-25 20:21:07,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:21:07,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:21:07,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:21:07,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:21:10,012.012 INFO    ] ================================================
[2026-08-25 20:21:10,028.028 INFO    ] Launching Daemon at Tue Aug 25 20:21:10 IST 2026
[2026-08-25 20:21:10,039.039 INFO    ] ================================================
[2026-08-25 20:21:10,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:21:10
[2026-08-25 20:21:11,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:21:11,490.490 INFO    ] Initializing speech engine...
[2026-08-25 20:21:11,496.496 INFO    ] 2026-08-25 20:21:11
[2026-08-25 20:21:11,795.795 INFO    ] 2026-08-25 20:21:11
[2026-08-25 20:21:11,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:21:12,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:21:12,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:21:12,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:21:12,177.177 INFO    ] time= 25/08/2026 20:21:12
[2026-08-25 20:21:12,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:21:12,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:21:12,305.305 INFO    ] No existing commands found in stream
[2026-08-25 20:21:17,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:21:17,343.343 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 20:21:17,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:21:17,954.954 INFO    ] Checking for system updates...
[2026-08-25 20:21:17,990.990 INFO    ] 200
[2026-08-25 20:21:17,992.992 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:18,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:18,047.047 INFO    ] No update needed
[2026-08-25 20:21:18,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 20:21:18,083.083 INFO    ] 200
[2026-08-25 20:21:18,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:18,126.126 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:21:18,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:18,183.183 INFO    ] No camera update needed
[2026-08-25 20:21:18,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:21:18,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:21:18,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:21:18,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:21:20,238.238 INFO    ] ================================================
[2026-08-25 20:21:20,252.252 INFO    ] Launching Daemon at Tue Aug 25 20:21:20 IST 2026
[2026-08-25 20:21:20,263.263 INFO    ] ================================================
[2026-08-25 20:21:20,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:21:20
[2026-08-25 20:21:21,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:21:21,684.684 INFO    ] Initializing speech engine...
[2026-08-25 20:21:21,708.708 INFO    ] 2026-08-25 20:21:21
[2026-08-25 20:21:21,983.983 INFO    ] 2026-08-25 20:21:21
[2026-08-25 20:21:22,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:21:22,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:21:22,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:21:22,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:21:22,385.385 INFO    ] time= 25/08/2026 20:21:22
[2026-08-25 20:21:22,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:21:22,451.451 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:21:22,578.578 INFO    ] No existing commands found in stream
[2026-08-25 20:21:27,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:21:27,593.593 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 20:21:29,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:21:29,968.968 INFO    ] Checking for system updates...
[2026-08-25 20:21:30,004.004 INFO    ] 200
[2026-08-25 20:21:30,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:30,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:21:30,062.062 INFO    ] No update needed
[2026-08-25 20:21:30,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 20:21:30,098.098 INFO    ] 200
[2026-08-25 20:21:30,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:30,141.141 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:21:30,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:21:30,194.194 INFO    ] No camera update needed
[2026-08-25 20:21:30,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:21:30,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:21:30,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:21:30,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:21:32,252.252 INFO    ] ================================================
[2026-08-25 20:21:32,269.269 INFO    ] Launching Daemon at Tue Aug 25 20:21:32 IST 2026
[2026-08-25 20:21:32,281.281 INFO    ] ================================================
[2026-08-25 20:21:32,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:21:32
[2026-08-25 20:21:33,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:21:33,756.756 INFO    ] Initializing speech engine...
[2026-08-25 20:21:33,765.765 INFO    ] 2026-08-25 20:21:33
[2026-08-25 20:21:34,010.010 INFO    ] 2026-08-25 20:21:34
[2026-08-25 20:21:34,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:21:34,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:21:34,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:21:34,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:21:34,385.385 INFO    ] time= 25/08/2026 20:21:34
[2026-08-25 20:21:34,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:21:34,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:21:34,581.581 INFO    ] No existing commands found in stream
[2026-08-25 20:21:39,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:21:39,595.595 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 20:21:43,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:21:43,731.731 INFO    ] Checking for system updates...
[2026-08-25 20:21:43,767.767 INFO    ] 200
[2026-08-25 20:21:43,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:43,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:43,824.824 INFO    ] No update needed
[2026-08-25 20:21:43,827.827 INFO    ] Checking for camera pi updates...
[2026-08-25 20:21:43,860.860 INFO    ] 200
[2026-08-25 20:21:43,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:43,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:21:43,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:43,951.951 INFO    ] No camera update needed
[2026-08-25 20:21:43,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:21:43,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:21:43,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:21:43,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:21:46,007.007 INFO    ] ================================================
[2026-08-25 20:21:46,023.023 INFO    ] Launching Daemon at Tue Aug 25 20:21:46 IST 2026
[2026-08-25 20:21:46,035.035 INFO    ] ================================================
[2026-08-25 20:21:46,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:21:46
[2026-08-25 20:21:47,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:21:47,461.461 INFO    ] Initializing speech engine...
[2026-08-25 20:21:47,470.470 INFO    ] 2026-08-25 20:21:47
[2026-08-25 20:21:47,760.760 INFO    ] 2026-08-25 20:21:47
[2026-08-25 20:21:47,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:21:47,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:21:47,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:21:48,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:21:48,134.134 INFO    ] time= 25/08/2026 20:21:48
[2026-08-25 20:21:48,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:21:48,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:21:48,259.259 INFO    ] No existing commands found in stream
[2026-08-25 20:21:53,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:21:53,297.297 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 20:21:54,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:21:54,744.744 INFO    ] Checking for system updates...
[2026-08-25 20:21:54,779.779 INFO    ] 200
[2026-08-25 20:21:54,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:54,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:54,836.836 INFO    ] No update needed
[2026-08-25 20:21:54,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 20:21:54,873.873 INFO    ] 200
[2026-08-25 20:21:54,875.875 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:21:54,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:21:54,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:21:54,972.972 INFO    ] No camera update needed
[2026-08-25 20:21:54,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:21:54,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:21:54,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:21:54,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:21:57,026.026 INFO    ] ================================================
[2026-08-25 20:21:57,041.041 INFO    ] Launching Daemon at Tue Aug 25 20:21:57 IST 2026
[2026-08-25 20:21:57,051.051 INFO    ] ================================================
[2026-08-25 20:21:57,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:21:57
[2026-08-25 20:21:58,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:21:58,665.665 INFO    ] Initializing speech engine...
[2026-08-25 20:21:58,674.674 INFO    ] 2026-08-25 20:21:58
[2026-08-25 20:21:58,947.947 INFO    ] 2026-08-25 20:21:58
[2026-08-25 20:21:59,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:21:59,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:21:59,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:21:59,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:21:59,426.426 INFO    ] time= 25/08/2026 20:21:59
[2026-08-25 20:21:59,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:21:59,517.517 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:21:59,669.669 INFO    ] No existing commands found in stream
[2026-08-25 20:22:04,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:22:04,696.696 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 20:22:09,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:22:09,014.014 INFO    ] Checking for system updates...
[2026-08-25 20:22:09,051.051 INFO    ] 200
[2026-08-25 20:22:09,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:09,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:09,110.110 INFO    ] No update needed
[2026-08-25 20:22:09,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 20:22:09,147.147 INFO    ] 200
[2026-08-25 20:22:09,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:09,193.193 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:22:09,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:09,246.246 INFO    ] No camera update needed
[2026-08-25 20:22:09,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:22:09,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:22:09,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:22:09,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:22:11,302.302 INFO    ] ================================================
[2026-08-25 20:22:11,318.318 INFO    ] Launching Daemon at Tue Aug 25 20:22:11 IST 2026
[2026-08-25 20:22:11,329.329 INFO    ] ================================================
[2026-08-25 20:22:11,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:22:11
[2026-08-25 20:22:12,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:22:12,808.808 INFO    ] Initializing speech engine...
[2026-08-25 20:22:12,822.822 INFO    ] 2026-08-25 20:22:12
[2026-08-25 20:22:13,136.136 INFO    ] 2026-08-25 20:22:13
[2026-08-25 20:22:13,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:22:13,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:22:13,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:22:13,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:22:13,560.560 INFO    ] time= 25/08/2026 20:22:13
[2026-08-25 20:22:13,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:22:13,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:22:13,785.785 INFO    ] No existing commands found in stream
[2026-08-25 20:22:18,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:22:18,820.820 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 20:22:21,336.336 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:22:21,339.339 INFO    ] Checking for system updates...
[2026-08-25 20:22:21,376.376 INFO    ] 200
[2026-08-25 20:22:21,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:21,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:21,433.433 INFO    ] No update needed
[2026-08-25 20:22:21,435.435 INFO    ] Checking for camera pi updates...
[2026-08-25 20:22:21,472.472 INFO    ] 200
[2026-08-25 20:22:21,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:21,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:22:21,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:21,577.577 INFO    ] No camera update needed
[2026-08-25 20:22:21,579.579 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:22:21,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:22:21,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:22:21,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:22:23,632.632 INFO    ] ================================================
[2026-08-25 20:22:23,648.648 INFO    ] Launching Daemon at Tue Aug 25 20:22:23 IST 2026
[2026-08-25 20:22:23,659.659 INFO    ] ================================================
[2026-08-25 20:22:24,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:22:24
[2026-08-25 20:22:24,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:22:25,111.111 INFO    ] Initializing speech engine...
[2026-08-25 20:22:25,126.126 INFO    ] 2026-08-25 20:22:25
[2026-08-25 20:22:25,411.411 INFO    ] 2026-08-25 20:22:25
[2026-08-25 20:22:25,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:22:25,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:22:25,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:22:25,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:22:25,835.835 INFO    ] time= 25/08/2026 20:22:25
[2026-08-25 20:22:25,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:22:25,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:22:26,009.009 INFO    ] No existing commands found in stream
[2026-08-25 20:22:31,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:22:31,037.037 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 20:22:35,025.025 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:22:35,028.028 INFO    ] Checking for system updates...
[2026-08-25 20:22:35,065.065 INFO    ] 200
[2026-08-25 20:22:35,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:35,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:35,127.127 INFO    ] No update needed
[2026-08-25 20:22:35,129.129 INFO    ] Checking for camera pi updates...
[2026-08-25 20:22:35,163.163 INFO    ] 200
[2026-08-25 20:22:35,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:35,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:22:35,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:35,259.259 INFO    ] No camera update needed
[2026-08-25 20:22:35,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:22:35,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:22:35,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:22:35,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:22:37,314.314 INFO    ] ================================================
[2026-08-25 20:22:37,330.330 INFO    ] Launching Daemon at Tue Aug 25 20:22:37 IST 2026
[2026-08-25 20:22:37,342.342 INFO    ] ================================================
[2026-08-25 20:22:37,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:22:37
[2026-08-25 20:22:38,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:22:38,761.761 INFO    ] Initializing speech engine...
[2026-08-25 20:22:38,771.771 INFO    ] 2026-08-25 20:22:38
[2026-08-25 20:22:39,020.020 INFO    ] 2026-08-25 20:22:39
[2026-08-25 20:22:39,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:22:39,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:22:39,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:22:39,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:22:39,397.397 INFO    ] time= 25/08/2026 20:22:39
[2026-08-25 20:22:39,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:22:39,465.465 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:22:39,595.595 INFO    ] No existing commands found in stream
[2026-08-25 20:22:44,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:22:44,608.608 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 20:22:48,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:22:48,298.298 INFO    ] Checking for system updates...
[2026-08-25 20:22:48,334.334 INFO    ] 200
[2026-08-25 20:22:48,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:48,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:48,391.391 INFO    ] No update needed
[2026-08-25 20:22:48,394.394 INFO    ] Checking for camera pi updates...
[2026-08-25 20:22:48,427.427 INFO    ] 200
[2026-08-25 20:22:48,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:22:48,469.469 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:22:48,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:22:48,528.528 INFO    ] No camera update needed
[2026-08-25 20:22:48,530.530 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:22:48,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:22:48,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:22:48,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:22:50,584.584 INFO    ] ================================================
[2026-08-25 20:22:50,599.599 INFO    ] Launching Daemon at Tue Aug 25 20:22:50 IST 2026
[2026-08-25 20:22:50,610.610 INFO    ] ================================================
[2026-08-25 20:22:51,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:22:51
[2026-08-25 20:22:51,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:22:52,030.030 INFO    ] Initializing speech engine...
[2026-08-25 20:22:52,038.038 INFO    ] 2026-08-25 20:22:52
[2026-08-25 20:22:52,337.337 INFO    ] 2026-08-25 20:22:52
[2026-08-25 20:22:52,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:22:52,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:22:52,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:22:52,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:22:52,847.847 INFO    ] time= 25/08/2026 20:22:52
[2026-08-25 20:22:52,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:22:52,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:22:53,035.035 INFO    ] No existing commands found in stream
[2026-08-25 20:22:58,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:22:58,050.050 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 20:23:00,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:23:00,658.658 INFO    ] Checking for system updates...
[2026-08-25 20:23:00,694.694 INFO    ] 200
[2026-08-25 20:23:00,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:00,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:00,751.751 INFO    ] No update needed
[2026-08-25 20:23:00,753.753 INFO    ] Checking for camera pi updates...
[2026-08-25 20:23:00,787.787 INFO    ] 200
[2026-08-25 20:23:00,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:00,829.829 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:23:00,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:00,876.876 INFO    ] No camera update needed
[2026-08-25 20:23:00,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:23:00,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:23:00,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:23:00,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:23:02,935.935 INFO    ] ================================================
[2026-08-25 20:23:02,957.957 INFO    ] Launching Daemon at Tue Aug 25 20:23:02 IST 2026
[2026-08-25 20:23:02,973.973 INFO    ] ================================================
[2026-08-25 20:23:03,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:23:03
[2026-08-25 20:23:04,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:23:04,527.527 INFO    ] Initializing speech engine...
[2026-08-25 20:23:04,548.548 INFO    ] 2026-08-25 20:23:04
[2026-08-25 20:23:04,816.816 INFO    ] 2026-08-25 20:23:04
[2026-08-25 20:23:04,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:23:05,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:23:05,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:23:05,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:23:05,204.204 INFO    ] time= 25/08/2026 20:23:05
[2026-08-25 20:23:05,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:23:05,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:23:05,318.318 INFO    ] No existing commands found in stream
[2026-08-25 20:23:10,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:23:10,356.356 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 20:23:14,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:23:14,663.663 INFO    ] Checking for system updates...
[2026-08-25 20:23:14,698.698 INFO    ] 200
[2026-08-25 20:23:14,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:14,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:14,756.756 INFO    ] No update needed
[2026-08-25 20:23:14,758.758 INFO    ] Checking for camera pi updates...
[2026-08-25 20:23:14,792.792 INFO    ] 200
[2026-08-25 20:23:14,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:14,838.838 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:23:14,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:14,886.886 INFO    ] No camera update needed
[2026-08-25 20:23:14,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:23:14,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:23:14,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:23:14,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:23:16,940.940 INFO    ] ================================================
[2026-08-25 20:23:16,955.955 INFO    ] Launching Daemon at Tue Aug 25 20:23:16 IST 2026
[2026-08-25 20:23:16,966.966 INFO    ] ================================================
[2026-08-25 20:23:17,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:23:17
[2026-08-25 20:23:18,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:23:18,382.382 INFO    ] Initializing speech engine...
[2026-08-25 20:23:18,400.400 INFO    ] 2026-08-25 20:23:18
[2026-08-25 20:23:18,664.664 INFO    ] 2026-08-25 20:23:18
[2026-08-25 20:23:18,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:23:18,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:23:18,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:23:19,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:23:19,054.054 INFO    ] time= 25/08/2026 20:23:19
[2026-08-25 20:23:19,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:23:19,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:23:19,161.161 INFO    ] No existing commands found in stream
[2026-08-25 20:23:24,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:23:24,194.194 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 20:23:28,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:23:28,450.450 INFO    ] Checking for system updates...
[2026-08-25 20:23:28,487.487 INFO    ] 200
[2026-08-25 20:23:28,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:28,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:28,546.546 INFO    ] No update needed
[2026-08-25 20:23:28,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 20:23:28,586.586 INFO    ] 200
[2026-08-25 20:23:28,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:28,635.635 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:23:28,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:28,683.683 INFO    ] No camera update needed
[2026-08-25 20:23:28,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:23:28,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:23:28,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:23:28,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:23:30,741.741 INFO    ] ================================================
[2026-08-25 20:23:30,756.756 INFO    ] Launching Daemon at Tue Aug 25 20:23:30 IST 2026
[2026-08-25 20:23:30,766.766 INFO    ] ================================================
[2026-08-25 20:23:31,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:23:31
[2026-08-25 20:23:31,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:23:32,209.209 INFO    ] Initializing speech engine...
[2026-08-25 20:23:32,215.215 INFO    ] 2026-08-25 20:23:32
[2026-08-25 20:23:32,538.538 INFO    ] 2026-08-25 20:23:32
[2026-08-25 20:23:32,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:23:32,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:23:32,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:23:32,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:23:32,919.919 INFO    ] time= 25/08/2026 20:23:32
[2026-08-25 20:23:32,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:23:32,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:23:33,060.060 INFO    ] No existing commands found in stream
[2026-08-25 20:23:38,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:23:38,102.102 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-08-25 20:23:42,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:23:42,395.395 INFO    ] Checking for system updates...
[2026-08-25 20:23:42,434.434 INFO    ] 200
[2026-08-25 20:23:42,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:42,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:42,498.498 INFO    ] No update needed
[2026-08-25 20:23:42,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 20:23:42,534.534 INFO    ] 200
[2026-08-25 20:23:42,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:42,581.581 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:23:42,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:42,634.634 INFO    ] No camera update needed
[2026-08-25 20:23:42,636.636 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:23:42,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:23:42,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:23:42,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:23:44,689.689 INFO    ] ================================================
[2026-08-25 20:23:44,704.704 INFO    ] Launching Daemon at Tue Aug 25 20:23:44 IST 2026
[2026-08-25 20:23:44,715.715 INFO    ] ================================================
[2026-08-25 20:23:45,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:23:45
[2026-08-25 20:23:45,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:23:46,160.160 INFO    ] Initializing speech engine...
[2026-08-25 20:23:46,168.168 INFO    ] 2026-08-25 20:23:46
[2026-08-25 20:23:46,457.457 INFO    ] 2026-08-25 20:23:46
[2026-08-25 20:23:46,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:23:46,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:23:46,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:23:46,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:23:46,836.836 INFO    ] time= 25/08/2026 20:23:46
[2026-08-25 20:23:46,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:23:46,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:23:46,958.958 INFO    ] No existing commands found in stream
[2026-08-25 20:23:51,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:23:51,974.974 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 20:23:52,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:23:52,649.649 INFO    ] Checking for system updates...
[2026-08-25 20:23:52,685.685 INFO    ] 200
[2026-08-25 20:23:52,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:52,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:52,743.743 INFO    ] No update needed
[2026-08-25 20:23:52,745.745 INFO    ] Checking for camera pi updates...
[2026-08-25 20:23:52,779.779 INFO    ] 200
[2026-08-25 20:23:52,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:23:52,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:23:52,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:23:52,878.878 INFO    ] No camera update needed
[2026-08-25 20:23:52,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:23:52,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:23:52,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:23:52,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:23:54,933.933 INFO    ] ================================================
[2026-08-25 20:23:54,949.949 INFO    ] Launching Daemon at Tue Aug 25 20:23:54 IST 2026
[2026-08-25 20:23:54,959.959 INFO    ] ================================================
[2026-08-25 20:23:55,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:23:55
[2026-08-25 20:23:56,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:23:56,554.554 INFO    ] Initializing speech engine...
[2026-08-25 20:23:56,566.566 INFO    ] 2026-08-25 20:23:56
[2026-08-25 20:23:56,876.876 INFO    ] 2026-08-25 20:23:56
[2026-08-25 20:23:56,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:23:57,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:23:57,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:23:57,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:23:57,377.377 INFO    ] time= 25/08/2026 20:23:57
[2026-08-25 20:23:57,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:23:57,404.404 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:23:57,529.529 INFO    ] No existing commands found in stream
[2026-08-25 20:24:02,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:24:02,549.549 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 20:24:04,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:24:04,799.799 INFO    ] Checking for system updates...
[2026-08-25 20:24:04,836.836 INFO    ] 200
[2026-08-25 20:24:04,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:04,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:24:04,895.895 INFO    ] No update needed
[2026-08-25 20:24:04,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 20:24:04,933.933 INFO    ] 200
[2026-08-25 20:24:04,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:04,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:24:05,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:24:05,028.028 INFO    ] No camera update needed
[2026-08-25 20:24:05,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:24:05,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:24:05,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:24:05,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:24:07,088.088 INFO    ] ================================================
[2026-08-25 20:24:07,103.103 INFO    ] Launching Daemon at Tue Aug 25 20:24:07 IST 2026
[2026-08-25 20:24:07,114.114 INFO    ] ================================================
[2026-08-25 20:24:07,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:24:07
[2026-08-25 20:24:08,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:24:08,523.523 INFO    ] Initializing speech engine...
[2026-08-25 20:24:08,532.532 INFO    ] 2026-08-25 20:24:08
[2026-08-25 20:24:08,826.826 INFO    ] 2026-08-25 20:24:08
[2026-08-25 20:24:08,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:24:09,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:24:09,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:24:09,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:24:09,209.209 INFO    ] time= 25/08/2026 20:24:09
[2026-08-25 20:24:09,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:24:09,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:24:09,338.338 INFO    ] No existing commands found in stream
[2026-08-25 20:24:14,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:24:14,356.356 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 20:24:15,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:24:15,303.303 INFO    ] Checking for system updates...
[2026-08-25 20:24:15,344.344 INFO    ] 200
[2026-08-25 20:24:15,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:15,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:24:15,405.405 INFO    ] No update needed
[2026-08-25 20:24:15,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 20:24:15,443.443 INFO    ] 200
[2026-08-25 20:24:15,446.446 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:15,487.487 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:24:15,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:24:15,540.540 INFO    ] No camera update needed
[2026-08-25 20:24:15,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:24:15,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:24:15,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:24:15,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:24:17,599.599 INFO    ] ================================================
[2026-08-25 20:24:17,614.614 INFO    ] Launching Daemon at Tue Aug 25 20:24:17 IST 2026
[2026-08-25 20:24:17,625.625 INFO    ] ================================================
[2026-08-25 20:24:18,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:24:18
[2026-08-25 20:24:18,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:24:19,043.043 INFO    ] Initializing speech engine...
[2026-08-25 20:24:19,057.057 INFO    ] 2026-08-25 20:24:19
[2026-08-25 20:24:19,342.342 INFO    ] 2026-08-25 20:24:19
[2026-08-25 20:24:19,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:24:19,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:24:19,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:24:19,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:24:19,725.725 INFO    ] time= 25/08/2026 20:24:19
[2026-08-25 20:24:19,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:24:19,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:24:19,897.897 INFO    ] No existing commands found in stream
[2026-08-25 20:24:24,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:24:24,930.930 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 20:24:28,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:24:28,929.929 INFO    ] Checking for system updates...
[2026-08-25 20:24:28,966.966 INFO    ] 200
[2026-08-25 20:24:28,968.968 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:29,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:24:29,023.023 INFO    ] No update needed
[2026-08-25 20:24:29,026.026 INFO    ] Checking for camera pi updates...
[2026-08-25 20:24:29,063.063 INFO    ] 200
[2026-08-25 20:24:29,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:29,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:24:29,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:24:29,154.154 INFO    ] No camera update needed
[2026-08-25 20:24:29,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:24:29,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:24:29,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:24:29,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:24:31,209.209 INFO    ] ================================================
[2026-08-25 20:24:31,228.228 INFO    ] Launching Daemon at Tue Aug 25 20:24:31 IST 2026
[2026-08-25 20:24:31,238.238 INFO    ] ================================================
[2026-08-25 20:24:31,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:24:31
[2026-08-25 20:24:32,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:24:32,843.843 INFO    ] Initializing speech engine...
[2026-08-25 20:24:32,853.853 INFO    ] 2026-08-25 20:24:32
[2026-08-25 20:24:33,124.124 INFO    ] 2026-08-25 20:24:33
[2026-08-25 20:24:33,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:24:33,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:24:33,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:24:33,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:24:33,610.610 INFO    ] time= 25/08/2026 20:24:33
[2026-08-25 20:24:33,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:24:33,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:24:33,829.829 INFO    ] No existing commands found in stream
[2026-08-25 20:24:38,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:24:38,857.857 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 20:24:42,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:24:42,505.505 INFO    ] Checking for system updates...
[2026-08-25 20:24:42,543.543 INFO    ] 200
[2026-08-25 20:24:42,546.546 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:42,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:24:42,606.606 INFO    ] No update needed
[2026-08-25 20:24:42,609.609 INFO    ] Checking for camera pi updates...
[2026-08-25 20:24:42,649.649 INFO    ] 200
[2026-08-25 20:24:42,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:42,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:24:42,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:24:42,853.853 INFO    ] No camera update needed
[2026-08-25 20:24:42,856.856 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:24:42,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:24:42,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:24:42,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:24:44,915.915 INFO    ] ================================================
[2026-08-25 20:24:44,930.930 INFO    ] Launching Daemon at Tue Aug 25 20:24:44 IST 2026
[2026-08-25 20:24:44,942.942 INFO    ] ================================================
[2026-08-25 20:24:45,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:24:45
[2026-08-25 20:24:46,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:24:46,679.679 INFO    ] Initializing speech engine...
[2026-08-25 20:24:46,692.692 INFO    ] 2026-08-25 20:24:46
[2026-08-25 20:24:46,977.977 INFO    ] 2026-08-25 20:24:46
[2026-08-25 20:24:47,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:24:47,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:24:47,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:24:47,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:24:47,494.494 INFO    ] time= 25/08/2026 20:24:47
[2026-08-25 20:24:47,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:24:47,585.585 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:24:47,721.721 INFO    ] No existing commands found in stream
[2026-08-25 20:24:52,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:24:52,744.744 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-08-25 20:24:55,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:24:55,796.796 INFO    ] Checking for system updates...
[2026-08-25 20:24:55,833.833 INFO    ] 200
[2026-08-25 20:24:55,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:55,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:24:55,892.892 INFO    ] No update needed
[2026-08-25 20:24:55,895.895 INFO    ] Checking for camera pi updates...
[2026-08-25 20:24:55,928.928 INFO    ] 200
[2026-08-25 20:24:55,931.931 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:24:55,971.971 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:24:56,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:24:56,021.021 INFO    ] No camera update needed
[2026-08-25 20:24:56,023.023 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:24:56,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:24:56,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:24:56,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:24:58,076.076 INFO    ] ================================================
[2026-08-25 20:24:58,091.091 INFO    ] Launching Daemon at Tue Aug 25 20:24:58 IST 2026
[2026-08-25 20:24:58,101.101 INFO    ] ================================================
[2026-08-25 20:24:58,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:24:58
[2026-08-25 20:24:59,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:24:59,554.554 INFO    ] Initializing speech engine...
[2026-08-25 20:24:59,562.562 INFO    ] 2026-08-25 20:24:59
[2026-08-25 20:24:59,814.814 INFO    ] 2026-08-25 20:24:59
[2026-08-25 20:24:59,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:25:00,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:25:00,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:25:00,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:25:00,191.191 INFO    ] time= 25/08/2026 20:25:00
[2026-08-25 20:25:00,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:25:00,261.261 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:25:00,388.388 INFO    ] No existing commands found in stream
[2026-08-25 20:25:05,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:25:05,401.401 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 20:25:07,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:25:07,941.941 INFO    ] Checking for system updates...
[2026-08-25 20:25:07,976.976 INFO    ] 200
[2026-08-25 20:25:07,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:08,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:25:08,042.042 INFO    ] No update needed
[2026-08-25 20:25:08,045.045 INFO    ] Checking for camera pi updates...
[2026-08-25 20:25:08,083.083 INFO    ] 200
[2026-08-25 20:25:08,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:08,134.134 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:25:08,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:25:08,183.183 INFO    ] No camera update needed
[2026-08-25 20:25:08,186.186 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:25:08,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:25:08,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:25:08,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:25:10,241.241 INFO    ] ================================================
[2026-08-25 20:25:10,256.256 INFO    ] Launching Daemon at Tue Aug 25 20:25:10 IST 2026
[2026-08-25 20:25:10,266.266 INFO    ] ================================================
[2026-08-25 20:25:10,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:25:10
[2026-08-25 20:25:11,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:25:11,956.956 INFO    ] Initializing speech engine...
[2026-08-25 20:25:11,967.967 INFO    ] 2026-08-25 20:25:11
[2026-08-25 20:25:12,288.288 INFO    ] 2026-08-25 20:25:12
[2026-08-25 20:25:12,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:25:12,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:25:12,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:25:12,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:25:12,808.808 INFO    ] time= 25/08/2026 20:25:12
[2026-08-25 20:25:12,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:25:12,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:25:12,971.971 INFO    ] No existing commands found in stream
[2026-08-25 20:25:17,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:25:17,988.988 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-08-25 20:25:20,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:25:20,672.672 INFO    ] Checking for system updates...
[2026-08-25 20:25:20,708.708 INFO    ] 200
[2026-08-25 20:25:20,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:20,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:25:20,767.767 INFO    ] No update needed
[2026-08-25 20:25:20,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 20:25:20,803.803 INFO    ] 200
[2026-08-25 20:25:20,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:20,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:25:20,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:25:20,897.897 INFO    ] No camera update needed
[2026-08-25 20:25:20,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:25:20,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:25:20,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:25:20,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:25:22,951.951 INFO    ] ================================================
[2026-08-25 20:25:22,966.966 INFO    ] Launching Daemon at Tue Aug 25 20:25:22 IST 2026
[2026-08-25 20:25:22,977.977 INFO    ] ================================================
[2026-08-25 20:25:23,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:25:23
[2026-08-25 20:25:24,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:25:24,457.457 INFO    ] Initializing speech engine...
[2026-08-25 20:25:24,466.466 INFO    ] 2026-08-25 20:25:24
[2026-08-25 20:25:24,714.714 INFO    ] 2026-08-25 20:25:24
[2026-08-25 20:25:24,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:25:25,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:25:25,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:25:25,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:25:25,186.186 INFO    ] time= 25/08/2026 20:25:25
[2026-08-25 20:25:25,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:25:25,276.276 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:25:25,400.400 INFO    ] No existing commands found in stream
[2026-08-25 20:25:30,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:25:30,433.433 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 20:25:32,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:25:32,403.403 INFO    ] Checking for system updates...
[2026-08-25 20:25:32,446.446 INFO    ] 200
[2026-08-25 20:25:32,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:32,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:25:32,516.516 INFO    ] No update needed
[2026-08-25 20:25:32,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 20:25:32,554.554 INFO    ] 200
[2026-08-25 20:25:32,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:32,604.604 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:25:32,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:25:32,664.664 INFO    ] No camera update needed
[2026-08-25 20:25:32,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:25:32,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:25:32,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:25:32,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:25:34,725.725 INFO    ] ================================================
[2026-08-25 20:25:34,740.740 INFO    ] Launching Daemon at Tue Aug 25 20:25:34 IST 2026
[2026-08-25 20:25:34,751.751 INFO    ] ================================================
[2026-08-25 20:25:35,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:25:35
[2026-08-25 20:25:36,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:25:36,387.387 INFO    ] Initializing speech engine...
[2026-08-25 20:25:36,401.401 INFO    ] 2026-08-25 20:25:36
[2026-08-25 20:25:36,711.711 INFO    ] 2026-08-25 20:25:36
[2026-08-25 20:25:36,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:25:37,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:25:37,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:25:37,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:25:37,217.217 INFO    ] time= 25/08/2026 20:25:37
[2026-08-25 20:25:37,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:25:37,248.248 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:25:37,425.425 INFO    ] No existing commands found in stream
[2026-08-25 20:25:42,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:25:42,450.450 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-08-25 20:25:43,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:25:43,091.091 INFO    ] Checking for system updates...
[2026-08-25 20:25:43,129.129 INFO    ] 200
[2026-08-25 20:25:43,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:43,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:25:43,192.192 INFO    ] No update needed
[2026-08-25 20:25:43,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 20:25:43,237.237 INFO    ] 200
[2026-08-25 20:25:43,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:43,290.290 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:25:43,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:25:43,343.343 INFO    ] No camera update needed
[2026-08-25 20:25:43,346.346 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:25:43,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:25:43,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:25:43,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:25:45,399.399 INFO    ] ================================================
[2026-08-25 20:25:45,418.418 INFO    ] Launching Daemon at Tue Aug 25 20:25:45 IST 2026
[2026-08-25 20:25:45,429.429 INFO    ] ================================================
[2026-08-25 20:25:46,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:25:46
[2026-08-25 20:25:46,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:25:46,919.919 INFO    ] Initializing speech engine...
[2026-08-25 20:25:46,925.925 INFO    ] 2026-08-25 20:25:46
[2026-08-25 20:25:47,177.177 INFO    ] 2026-08-25 20:25:47
[2026-08-25 20:25:47,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:25:47,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:25:47,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:25:47,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:25:47,743.743 INFO    ] time= 25/08/2026 20:25:47
[2026-08-25 20:25:47,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:25:47,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:25:47,888.888 INFO    ] No existing commands found in stream
[2026-08-25 20:25:52,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:25:52,917.917 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 20:25:53,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:25:53,500.500 INFO    ] Checking for system updates...
[2026-08-25 20:25:53,539.539 INFO    ] 200
[2026-08-25 20:25:53,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:53,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:25:53,597.597 INFO    ] No update needed
[2026-08-25 20:25:53,599.599 INFO    ] Checking for camera pi updates...
[2026-08-25 20:25:53,650.650 INFO    ] 200
[2026-08-25 20:25:53,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:25:53,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:25:53,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:25:53,748.748 INFO    ] No camera update needed
[2026-08-25 20:25:53,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:25:53,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:25:53,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:25:53,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:25:55,805.805 INFO    ] ================================================
[2026-08-25 20:25:55,821.821 INFO    ] Launching Daemon at Tue Aug 25 20:25:55 IST 2026
[2026-08-25 20:25:55,832.832 INFO    ] ================================================
[2026-08-25 20:25:56,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:25:56
[2026-08-25 20:25:57,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:25:57,297.297 INFO    ] Initializing speech engine...
[2026-08-25 20:25:57,310.310 INFO    ] 2026-08-25 20:25:57
[2026-08-25 20:25:57,607.607 INFO    ] 2026-08-25 20:25:57
[2026-08-25 20:25:57,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:25:57,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:25:57,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:25:57,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:25:58,001.001 INFO    ] time= 25/08/2026 20:25:57
[2026-08-25 20:25:58,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:25:58,047.047 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:25:58,127.127 INFO    ] No existing commands found in stream
[2026-08-25 20:26:03,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:26:03,140.140 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 20:26:03,599.599 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:26:03,602.602 INFO    ] Checking for system updates...
[2026-08-25 20:26:03,637.637 INFO    ] 200
[2026-08-25 20:26:03,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:03,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:26:03,701.701 INFO    ] No update needed
[2026-08-25 20:26:03,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 20:26:03,740.740 INFO    ] 200
[2026-08-25 20:26:03,742.742 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:03,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:26:03,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:26:03,833.833 INFO    ] No camera update needed
[2026-08-25 20:26:03,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:26:03,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:26:03,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:26:03,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:26:05,889.889 INFO    ] ================================================
[2026-08-25 20:26:05,904.904 INFO    ] Launching Daemon at Tue Aug 25 20:26:05 IST 2026
[2026-08-25 20:26:05,915.915 INFO    ] ================================================
[2026-08-25 20:26:06,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:26:06
[2026-08-25 20:26:07,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:26:07,394.394 INFO    ] Initializing speech engine...
[2026-08-25 20:26:07,402.402 INFO    ] 2026-08-25 20:26:07
[2026-08-25 20:26:07,671.671 INFO    ] 2026-08-25 20:26:07
[2026-08-25 20:26:07,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:26:07,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:26:07,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:26:08,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:26:08,087.087 INFO    ] time= 25/08/2026 20:26:08
[2026-08-25 20:26:08,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:26:08,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:26:08,260.260 INFO    ] No existing commands found in stream
[2026-08-25 20:26:13,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:26:13,293.293 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 20:26:17,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:26:17,251.251 INFO    ] Checking for system updates...
[2026-08-25 20:26:17,290.290 INFO    ] 200
[2026-08-25 20:26:17,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:17,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:26:17,349.349 INFO    ] No update needed
[2026-08-25 20:26:17,352.352 INFO    ] Checking for camera pi updates...
[2026-08-25 20:26:17,389.389 INFO    ] 200
[2026-08-25 20:26:17,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:17,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:26:17,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:26:17,486.486 INFO    ] No camera update needed
[2026-08-25 20:26:17,489.489 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:26:17,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:26:17,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:26:17,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:26:19,543.543 INFO    ] ================================================
[2026-08-25 20:26:19,558.558 INFO    ] Launching Daemon at Tue Aug 25 20:26:19 IST 2026
[2026-08-25 20:26:19,568.568 INFO    ] ================================================
[2026-08-25 20:26:20,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:26:20
[2026-08-25 20:26:20,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:26:21,022.022 INFO    ] Initializing speech engine...
[2026-08-25 20:26:21,028.028 INFO    ] 2026-08-25 20:26:21
[2026-08-25 20:26:21,275.275 INFO    ] 2026-08-25 20:26:21
[2026-08-25 20:26:21,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:26:21,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:26:21,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:26:21,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:26:21,732.732 INFO    ] time= 25/08/2026 20:26:21
[2026-08-25 20:26:21,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:26:21,833.833 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:26:21,963.963 INFO    ] No existing commands found in stream
[2026-08-25 20:26:26,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:26:26,993.993 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 20:26:30,345.345 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:26:30,348.348 INFO    ] Checking for system updates...
[2026-08-25 20:26:30,384.384 INFO    ] 200
[2026-08-25 20:26:30,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:30,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:26:30,446.446 INFO    ] No update needed
[2026-08-25 20:26:30,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 20:26:30,482.482 INFO    ] 200
[2026-08-25 20:26:30,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:30,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:26:30,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:26:30,587.587 INFO    ] No camera update needed
[2026-08-25 20:26:30,589.589 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:26:30,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:26:30,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:26:30,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:26:32,644.644 INFO    ] ================================================
[2026-08-25 20:26:32,659.659 INFO    ] Launching Daemon at Tue Aug 25 20:26:32 IST 2026
[2026-08-25 20:26:32,670.670 INFO    ] ================================================
[2026-08-25 20:26:33,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:26:33
[2026-08-25 20:26:33,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:26:34,271.271 INFO    ] Initializing speech engine...
[2026-08-25 20:26:34,285.285 INFO    ] 2026-08-25 20:26:34
[2026-08-25 20:26:34,593.593 INFO    ] 2026-08-25 20:26:34
[2026-08-25 20:26:34,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:26:34,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:26:34,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:26:35,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:26:35,102.102 INFO    ] time= 25/08/2026 20:26:35
[2026-08-25 20:26:35,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:26:35,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:26:35,291.291 INFO    ] No existing commands found in stream
[2026-08-25 20:26:40,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:26:40,326.326 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 20:26:43,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:26:43,145.145 INFO    ] Checking for system updates...
[2026-08-25 20:26:43,181.181 INFO    ] 200
[2026-08-25 20:26:43,184.184 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:43,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:26:43,246.246 INFO    ] No update needed
[2026-08-25 20:26:43,249.249 INFO    ] Checking for camera pi updates...
[2026-08-25 20:26:43,287.287 INFO    ] 200
[2026-08-25 20:26:43,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:43,335.335 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:26:43,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:26:43,386.386 INFO    ] No camera update needed
[2026-08-25 20:26:43,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:26:43,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:26:43,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:26:43,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:26:45,443.443 INFO    ] ================================================
[2026-08-25 20:26:45,459.459 INFO    ] Launching Daemon at Tue Aug 25 20:26:45 IST 2026
[2026-08-25 20:26:45,469.469 INFO    ] ================================================
[2026-08-25 20:26:46,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:26:46
[2026-08-25 20:26:46,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:26:47,063.063 INFO    ] Initializing speech engine...
[2026-08-25 20:26:47,075.075 INFO    ] 2026-08-25 20:26:47
[2026-08-25 20:26:47,350.350 INFO    ] 2026-08-25 20:26:47
[2026-08-25 20:26:47,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:26:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:26:47,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:26:47,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:26:47,816.816 INFO    ] time= 25/08/2026 20:26:47
[2026-08-25 20:26:47,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:26:47,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:26:48,048.048 INFO    ] No existing commands found in stream
[2026-08-25 20:26:53,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:26:53,068.068 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 20:26:56,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:26:56,775.775 INFO    ] Checking for system updates...
[2026-08-25 20:26:56,811.811 INFO    ] 200
[2026-08-25 20:26:56,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:56,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:26:56,871.871 INFO    ] No update needed
[2026-08-25 20:26:56,874.874 INFO    ] Checking for camera pi updates...
[2026-08-25 20:26:56,908.908 INFO    ] 200
[2026-08-25 20:26:56,911.911 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:26:56,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:26:57,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:26:57,097.097 INFO    ] No camera update needed
[2026-08-25 20:26:57,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:26:57,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:26:57,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:26:57,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:26:59,152.152 INFO    ] ================================================
[2026-08-25 20:26:59,167.167 INFO    ] Launching Daemon at Tue Aug 25 20:26:59 IST 2026
[2026-08-25 20:26:59,178.178 INFO    ] ================================================
[2026-08-25 20:26:59,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:26:59
[2026-08-25 20:27:00,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:27:00,576.576 INFO    ] Initializing speech engine...
[2026-08-25 20:27:00,584.584 INFO    ] 2026-08-25 20:27:00
[2026-08-25 20:27:00,857.857 INFO    ] 2026-08-25 20:27:00
[2026-08-25 20:27:00,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:27:01,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:27:01,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:27:01,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:27:01,261.261 INFO    ] time= 25/08/2026 20:27:01
[2026-08-25 20:27:01,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:27:01,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:27:01,356.356 INFO    ] No existing commands found in stream
[2026-08-25 20:27:06,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:27:06,369.369 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 20:27:09,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:27:09,222.222 INFO    ] Checking for system updates...
[2026-08-25 20:27:09,261.261 INFO    ] 200
[2026-08-25 20:27:09,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:09,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:27:09,317.317 INFO    ] No update needed
[2026-08-25 20:27:09,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 20:27:09,357.357 INFO    ] 200
[2026-08-25 20:27:09,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:09,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:27:09,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:27:09,452.452 INFO    ] No camera update needed
[2026-08-25 20:27:09,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:27:09,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:27:09,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:27:09,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:27:11,506.506 INFO    ] ================================================
[2026-08-25 20:27:11,521.521 INFO    ] Launching Daemon at Tue Aug 25 20:27:11 IST 2026
[2026-08-25 20:27:11,532.532 INFO    ] ================================================
[2026-08-25 20:27:12,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:27:12
[2026-08-25 20:27:12,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:27:12,980.980 INFO    ] Initializing speech engine...
[2026-08-25 20:27:12,991.991 INFO    ] 2026-08-25 20:27:12
[2026-08-25 20:27:13,268.268 INFO    ] 2026-08-25 20:27:13
[2026-08-25 20:27:13,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:27:13,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:27:13,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:27:13,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:27:13,804.804 INFO    ] time= 25/08/2026 20:27:13
[2026-08-25 20:27:13,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:27:13,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:27:13,958.958 INFO    ] No existing commands found in stream
[2026-08-25 20:27:18,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:27:18,981.981 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 20:27:20,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:27:20,884.884 INFO    ] Checking for system updates...
[2026-08-25 20:27:20,921.921 INFO    ] 200
[2026-08-25 20:27:20,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:20,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:27:20,979.979 INFO    ] No update needed
[2026-08-25 20:27:20,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 20:27:21,021.021 INFO    ] 200
[2026-08-25 20:27:21,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:21,069.069 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:27:21,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:27:21,121.121 INFO    ] No camera update needed
[2026-08-25 20:27:21,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:27:21,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:27:21,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:27:21,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:27:23,180.180 INFO    ] ================================================
[2026-08-25 20:27:23,194.194 INFO    ] Launching Daemon at Tue Aug 25 20:27:23 IST 2026
[2026-08-25 20:27:23,205.205 INFO    ] ================================================
[2026-08-25 20:27:23,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:27:23
[2026-08-25 20:27:24,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:27:24,666.666 INFO    ] Initializing speech engine...
[2026-08-25 20:27:24,675.675 INFO    ] 2026-08-25 20:27:24
[2026-08-25 20:27:24,951.951 INFO    ] 2026-08-25 20:27:24
[2026-08-25 20:27:25,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:27:25,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:27:25,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:27:25,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:27:25,419.419 INFO    ] time= 25/08/2026 20:27:25
[2026-08-25 20:27:25,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:27:25,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:27:25,663.663 INFO    ] No existing commands found in stream
[2026-08-25 20:27:30,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:27:30,682.682 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 20:27:33,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:27:33,929.929 INFO    ] Checking for system updates...
[2026-08-25 20:27:33,966.966 INFO    ] 200
[2026-08-25 20:27:33,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:34,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:27:34,035.035 INFO    ] No update needed
[2026-08-25 20:27:34,037.037 INFO    ] Checking for camera pi updates...
[2026-08-25 20:27:34,071.071 INFO    ] 200
[2026-08-25 20:27:34,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:34,115.115 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:27:34,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:27:34,167.167 INFO    ] No camera update needed
[2026-08-25 20:27:34,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:27:34,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:27:34,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:27:34,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:27:36,223.223 INFO    ] ================================================
[2026-08-25 20:27:36,238.238 INFO    ] Launching Daemon at Tue Aug 25 20:27:36 IST 2026
[2026-08-25 20:27:36,249.249 INFO    ] ================================================
[2026-08-25 20:27:36,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:27:36
[2026-08-25 20:27:37,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:27:37,848.848 INFO    ] Initializing speech engine...
[2026-08-25 20:27:37,856.856 INFO    ] 2026-08-25 20:27:37
[2026-08-25 20:27:38,170.170 INFO    ] 2026-08-25 20:27:38
[2026-08-25 20:27:38,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:27:38,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:27:38,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:27:38,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:27:38,673.673 INFO    ] time= 25/08/2026 20:27:38
[2026-08-25 20:27:38,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:27:38,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:27:38,846.846 INFO    ] No existing commands found in stream
[2026-08-25 20:27:43,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:27:43,875.875 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 20:27:48,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:27:48,204.204 INFO    ] Checking for system updates...
[2026-08-25 20:27:48,242.242 INFO    ] 200
[2026-08-25 20:27:48,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:48,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:27:48,306.306 INFO    ] No update needed
[2026-08-25 20:27:48,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 20:27:48,343.343 INFO    ] 200
[2026-08-25 20:27:48,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:27:48,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:27:48,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:27:48,439.439 INFO    ] No camera update needed
[2026-08-25 20:27:48,441.441 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:27:48,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:27:48,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:27:48,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:27:50,496.496 INFO    ] ================================================
[2026-08-25 20:27:50,511.511 INFO    ] Launching Daemon at Tue Aug 25 20:27:50 IST 2026
[2026-08-25 20:27:50,522.522 INFO    ] ================================================
[2026-08-25 20:27:51,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:27:51
[2026-08-25 20:27:51,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:27:51,975.975 INFO    ] Initializing speech engine...
[2026-08-25 20:27:52,000.000 INFO    ] 2026-08-25 20:27:51
[2026-08-25 20:27:52,272.272 INFO    ] 2026-08-25 20:27:52
[2026-08-25 20:27:52,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:27:52,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:27:52,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:27:52,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:27:52,797.797 INFO    ] time= 25/08/2026 20:27:52
[2026-08-25 20:27:52,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:27:52,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:27:53,043.043 INFO    ] No existing commands found in stream
[2026-08-25 20:27:58,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:27:58,071.071 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 20:28:00,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:28:00,479.479 INFO    ] Checking for system updates...
[2026-08-25 20:28:00,515.515 INFO    ] 200
[2026-08-25 20:28:00,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:00,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:28:00,573.573 INFO    ] No update needed
[2026-08-25 20:28:00,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 20:28:00,609.609 INFO    ] 200
[2026-08-25 20:28:00,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:00,652.652 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:28:00,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:28:00,711.711 INFO    ] No camera update needed
[2026-08-25 20:28:00,714.714 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:28:00,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:28:00,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:28:00,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:28:02,767.767 INFO    ] ================================================
[2026-08-25 20:28:02,781.781 INFO    ] Launching Daemon at Tue Aug 25 20:28:02 IST 2026
[2026-08-25 20:28:02,794.794 INFO    ] ================================================
[2026-08-25 20:28:03,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:28:03
[2026-08-25 20:28:03,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:28:04,276.276 INFO    ] Initializing speech engine...
[2026-08-25 20:28:04,282.282 INFO    ] 2026-08-25 20:28:04
[2026-08-25 20:28:04,542.542 INFO    ] 2026-08-25 20:28:04
[2026-08-25 20:28:04,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:28:04,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:28:04,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:28:04,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:28:05,030.030 INFO    ] time= 25/08/2026 20:28:04
[2026-08-25 20:28:05,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:28:05,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:28:05,223.223 INFO    ] No existing commands found in stream
[2026-08-25 20:28:10,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:28:10,248.248 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-08-25 20:28:11,498.498 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:28:11,501.501 INFO    ] Checking for system updates...
[2026-08-25 20:28:11,539.539 INFO    ] 200
[2026-08-25 20:28:11,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:11,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:28:11,602.602 INFO    ] No update needed
[2026-08-25 20:28:11,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 20:28:11,638.638 INFO    ] 200
[2026-08-25 20:28:11,640.640 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:11,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:28:11,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:28:11,736.736 INFO    ] No camera update needed
[2026-08-25 20:28:11,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:28:11,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:28:11,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:28:11,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:28:13,790.790 INFO    ] ================================================
[2026-08-25 20:28:13,806.806 INFO    ] Launching Daemon at Tue Aug 25 20:28:13 IST 2026
[2026-08-25 20:28:13,816.816 INFO    ] ================================================
[2026-08-25 20:28:14,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:28:14
[2026-08-25 20:28:15,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:28:15,388.388 INFO    ] Initializing speech engine...
[2026-08-25 20:28:15,396.396 INFO    ] 2026-08-25 20:28:15
[2026-08-25 20:28:15,686.686 INFO    ] 2026-08-25 20:28:15
[2026-08-25 20:28:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:28:16,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:28:16,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:28:16,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:28:16,216.216 INFO    ] time= 25/08/2026 20:28:16
[2026-08-25 20:28:16,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:28:16,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:28:16,389.389 INFO    ] No existing commands found in stream
[2026-08-25 20:28:21,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:28:21,428.428 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 20:28:23,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:28:23,184.184 INFO    ] Checking for system updates...
[2026-08-25 20:28:23,220.220 INFO    ] 200
[2026-08-25 20:28:23,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:23,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:28:23,279.279 INFO    ] No update needed
[2026-08-25 20:28:23,281.281 INFO    ] Checking for camera pi updates...
[2026-08-25 20:28:23,316.316 INFO    ] 200
[2026-08-25 20:28:23,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:23,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:28:23,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:28:23,409.409 INFO    ] No camera update needed
[2026-08-25 20:28:23,411.411 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:28:23,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:28:23,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:28:23,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:28:25,465.465 INFO    ] ================================================
[2026-08-25 20:28:25,480.480 INFO    ] Launching Daemon at Tue Aug 25 20:28:25 IST 2026
[2026-08-25 20:28:25,491.491 INFO    ] ================================================
[2026-08-25 20:28:26,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:28:26
[2026-08-25 20:28:26,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:28:26,904.904 INFO    ] Initializing speech engine...
[2026-08-25 20:28:26,913.913 INFO    ] 2026-08-25 20:28:26
[2026-08-25 20:28:27,157.157 INFO    ] 2026-08-25 20:28:27
[2026-08-25 20:28:27,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:28:27,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:28:27,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:28:27,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:28:27,522.522 INFO    ] time= 25/08/2026 20:28:27
[2026-08-25 20:28:27,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:28:27,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:28:27,717.717 INFO    ] No existing commands found in stream
[2026-08-25 20:28:32,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:28:32,730.730 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 20:28:35,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:28:35,932.932 INFO    ] Checking for system updates...
[2026-08-25 20:28:35,967.967 INFO    ] 200
[2026-08-25 20:28:35,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:36,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:28:36,025.025 INFO    ] No update needed
[2026-08-25 20:28:36,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 20:28:36,061.061 INFO    ] 200
[2026-08-25 20:28:36,063.063 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:36,103.103 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:28:36,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:28:36,154.154 INFO    ] No camera update needed
[2026-08-25 20:28:36,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:28:36,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:28:36,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:28:36,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:28:38,208.208 INFO    ] ================================================
[2026-08-25 20:28:38,223.223 INFO    ] Launching Daemon at Tue Aug 25 20:28:38 IST 2026
[2026-08-25 20:28:38,233.233 INFO    ] ================================================
[2026-08-25 20:28:38,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:28:38
[2026-08-25 20:28:39,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:28:39,643.643 INFO    ] Initializing speech engine...
[2026-08-25 20:28:39,652.652 INFO    ] 2026-08-25 20:28:39
[2026-08-25 20:28:39,898.898 INFO    ] 2026-08-25 20:28:39
[2026-08-25 20:28:39,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:28:40,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:28:40,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:28:40,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:28:40,373.373 INFO    ] time= 25/08/2026 20:28:40
[2026-08-25 20:28:40,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:28:40,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:28:40,578.578 INFO    ] No existing commands found in stream
[2026-08-25 20:28:45,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:28:45,606.606 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 20:28:46,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:28:46,477.477 INFO    ] Checking for system updates...
[2026-08-25 20:28:46,513.513 INFO    ] 200
[2026-08-25 20:28:46,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:46,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:28:46,580.580 INFO    ] No update needed
[2026-08-25 20:28:46,582.582 INFO    ] Checking for camera pi updates...
[2026-08-25 20:28:46,619.619 INFO    ] 200
[2026-08-25 20:28:46,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:46,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:28:46,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:28:46,719.719 INFO    ] No camera update needed
[2026-08-25 20:28:46,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:28:46,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:28:46,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:28:46,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:28:48,774.774 INFO    ] ================================================
[2026-08-25 20:28:48,789.789 INFO    ] Launching Daemon at Tue Aug 25 20:28:48 IST 2026
[2026-08-25 20:28:48,800.800 INFO    ] ================================================
[2026-08-25 20:28:49,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:28:49
[2026-08-25 20:28:49,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:28:50,233.233 INFO    ] Initializing speech engine...
[2026-08-25 20:28:50,246.246 INFO    ] 2026-08-25 20:28:50
[2026-08-25 20:28:50,509.509 INFO    ] 2026-08-25 20:28:50
[2026-08-25 20:28:50,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:28:50,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:28:50,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:28:50,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:28:50,976.976 INFO    ] time= 25/08/2026 20:28:50
[2026-08-25 20:28:51,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:28:51,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:28:51,168.168 INFO    ] No existing commands found in stream
[2026-08-25 20:28:56,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:28:56,196.196 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-08-25 20:28:59,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:28:59,599.599 INFO    ] Checking for system updates...
[2026-08-25 20:28:59,635.635 INFO    ] 200
[2026-08-25 20:28:59,638.638 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:59,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:28:59,692.692 INFO    ] No update needed
[2026-08-25 20:28:59,695.695 INFO    ] Checking for camera pi updates...
[2026-08-25 20:28:59,728.728 INFO    ] 200
[2026-08-25 20:28:59,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:28:59,771.771 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:28:59,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:28:59,920.920 INFO    ] No camera update needed
[2026-08-25 20:28:59,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:28:59,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:28:59,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:28:59,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:29:01,979.979 INFO    ] ================================================
[2026-08-25 20:29:02,996.996 INFO    ] Launching Daemon at Tue Aug 25 20:29:01 IST 2026
[2026-08-25 20:29:02,014.014 INFO    ] ================================================
[2026-08-25 20:29:02,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:29:02
[2026-08-25 20:29:03,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:29:03,572.572 INFO    ] Initializing speech engine...
[2026-08-25 20:29:03,583.583 INFO    ] 2026-08-25 20:29:03
[2026-08-25 20:29:03,829.829 INFO    ] 2026-08-25 20:29:03
[2026-08-25 20:29:03,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:29:04,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:29:04,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:29:04,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:29:04,308.308 INFO    ] time= 25/08/2026 20:29:04
[2026-08-25 20:29:04,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:29:04,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:29:04,500.500 INFO    ] No existing commands found in stream
[2026-08-25 20:29:09,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:29:09,525.525 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 20:29:10,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:29:10,470.470 INFO    ] Checking for system updates...
[2026-08-25 20:29:10,505.505 INFO    ] 200
[2026-08-25 20:29:10,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:10,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:29:10,563.563 INFO    ] No update needed
[2026-08-25 20:29:10,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 20:29:10,600.600 INFO    ] 200
[2026-08-25 20:29:10,602.602 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:10,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:29:10,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:29:10,701.701 INFO    ] No camera update needed
[2026-08-25 20:29:10,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:29:10,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:29:10,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:29:10,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:29:12,755.755 INFO    ] ================================================
[2026-08-25 20:29:12,770.770 INFO    ] Launching Daemon at Tue Aug 25 20:29:12 IST 2026
[2026-08-25 20:29:12,780.780 INFO    ] ================================================
[2026-08-25 20:29:13,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:29:13
[2026-08-25 20:29:13,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:29:14,232.232 INFO    ] Initializing speech engine...
[2026-08-25 20:29:14,238.238 INFO    ] 2026-08-25 20:29:14
[2026-08-25 20:29:14,484.484 INFO    ] 2026-08-25 20:29:14
[2026-08-25 20:29:14,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:29:14,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:29:14,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:29:14,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:29:14,983.983 INFO    ] time= 25/08/2026 20:29:14
[2026-08-25 20:29:15,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:29:15,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:29:15,177.177 INFO    ] No existing commands found in stream
[2026-08-25 20:29:20,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:29:20,204.204 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 20:29:22,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:29:22,479.479 INFO    ] Checking for system updates...
[2026-08-25 20:29:22,518.518 INFO    ] 200
[2026-08-25 20:29:22,520.520 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:22,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:29:22,581.581 INFO    ] No update needed
[2026-08-25 20:29:22,583.583 INFO    ] Checking for camera pi updates...
[2026-08-25 20:29:22,617.617 INFO    ] 200
[2026-08-25 20:29:22,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:22,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:29:22,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:29:22,717.717 INFO    ] No camera update needed
[2026-08-25 20:29:22,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:29:22,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:29:22,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:29:22,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:29:24,776.776 INFO    ] ================================================
[2026-08-25 20:29:24,790.790 INFO    ] Launching Daemon at Tue Aug 25 20:29:24 IST 2026
[2026-08-25 20:29:24,801.801 INFO    ] ================================================
[2026-08-25 20:29:25,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:29:25
[2026-08-25 20:29:26,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:29:26,397.397 INFO    ] Initializing speech engine...
[2026-08-25 20:29:26,410.410 INFO    ] 2026-08-25 20:29:26
[2026-08-25 20:29:26,717.717 INFO    ] 2026-08-25 20:29:26
[2026-08-25 20:29:26,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:29:26,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:29:27,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:29:27,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:29:27,222.222 INFO    ] time= 25/08/2026 20:29:27
[2026-08-25 20:29:27,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:29:27,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:29:27,396.396 INFO    ] No existing commands found in stream
[2026-08-25 20:29:32,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:29:32,430.430 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 20:29:35,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:29:35,996.996 INFO    ] Checking for system updates...
[2026-08-25 20:29:36,031.031 INFO    ] 200
[2026-08-25 20:29:36,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:36,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:29:36,088.088 INFO    ] No update needed
[2026-08-25 20:29:36,090.090 INFO    ] Checking for camera pi updates...
[2026-08-25 20:29:36,124.124 INFO    ] 200
[2026-08-25 20:29:36,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:36,168.168 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:29:36,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:29:36,212.212 INFO    ] No camera update needed
[2026-08-25 20:29:36,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:29:36,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:29:36,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:29:36,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:29:38,266.266 INFO    ] ================================================
[2026-08-25 20:29:38,281.281 INFO    ] Launching Daemon at Tue Aug 25 20:29:38 IST 2026
[2026-08-25 20:29:38,292.292 INFO    ] ================================================
[2026-08-25 20:29:38,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:29:38
[2026-08-25 20:29:39,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:29:39,707.707 INFO    ] Initializing speech engine...
[2026-08-25 20:29:39,717.717 INFO    ] 2026-08-25 20:29:39
[2026-08-25 20:29:39,979.979 INFO    ] 2026-08-25 20:29:39
[2026-08-25 20:29:40,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:29:40,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:29:40,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:29:40,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:29:40,400.400 INFO    ] time= 25/08/2026 20:29:40
[2026-08-25 20:29:40,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:29:40,467.467 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:29:40,551.551 INFO    ] No existing commands found in stream
[2026-08-25 20:29:45,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:29:45,567.567 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-08-25 20:29:48,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:29:48,030.030 INFO    ] Checking for system updates...
[2026-08-25 20:29:48,068.068 INFO    ] 200
[2026-08-25 20:29:48,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:48,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:29:48,125.125 INFO    ] No update needed
[2026-08-25 20:29:48,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 20:29:48,161.161 INFO    ] 200
[2026-08-25 20:29:48,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:29:48,204.204 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:29:48,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:29:48,255.255 INFO    ] No camera update needed
[2026-08-25 20:29:48,258.258 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:29:48,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:29:48,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:29:48,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:29:50,309.309 INFO    ] ================================================
[2026-08-25 20:29:50,324.324 INFO    ] Launching Daemon at Tue Aug 25 20:29:50 IST 2026
[2026-08-25 20:29:50,335.335 INFO    ] ================================================
[2026-08-25 20:29:50,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:29:50
[2026-08-25 20:29:51,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:29:51,759.759 INFO    ] Initializing speech engine...
[2026-08-25 20:29:51,768.768 INFO    ] 2026-08-25 20:29:51
[2026-08-25 20:29:52,026.026 INFO    ] 2026-08-25 20:29:52
[2026-08-25 20:29:52,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:29:52,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:29:52,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:29:52,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:29:52,489.489 INFO    ] time= 25/08/2026 20:29:52
[2026-08-25 20:29:52,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:29:52,576.576 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:29:52,720.720 INFO    ] No existing commands found in stream
[2026-08-25 20:29:57,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:29:57,737.737 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 20:29:59,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:29:59,919.919 INFO    ] Checking for system updates...
[2026-08-25 20:29:59,954.954 INFO    ] 200
[2026-08-25 20:29:59,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:00,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:30:00,021.021 INFO    ] No update needed
[2026-08-25 20:30:00,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 20:30:00,060.060 INFO    ] 200
[2026-08-25 20:30:00,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:00,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:30:00,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:30:00,164.164 INFO    ] No camera update needed
[2026-08-25 20:30:00,166.166 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:30:00,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:30:00,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:30:00,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:30:02,259.259 INFO    ] ================================================
[2026-08-25 20:30:02,325.325 INFO    ] Launching Daemon at Tue Aug 25 20:30:02 IST 2026
[2026-08-25 20:30:02,356.356 INFO    ] ================================================
[2026-08-25 20:30:03,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:30:03
[2026-08-25 20:30:03,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:30:04,059.059 INFO    ] Initializing speech engine...
[2026-08-25 20:30:04,067.067 INFO    ] 2026-08-25 20:30:04
[2026-08-25 20:30:04,336.336 INFO    ] 2026-08-25 20:30:04
[2026-08-25 20:30:04,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:30:04,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:30:04,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:30:04,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:30:04,840.840 INFO    ] time= 25/08/2026 20:30:04
[2026-08-25 20:30:04,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:30:04,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:30:05,047.047 INFO    ] No existing commands found in stream
[2026-08-25 20:30:10,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:30:10,076.076 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 20:30:10,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:30:10,915.915 INFO    ] Checking for system updates...
[2026-08-25 20:30:10,952.952 INFO    ] 200
[2026-08-25 20:30:10,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:11,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:30:11,010.010 INFO    ] No update needed
[2026-08-25 20:30:11,013.013 INFO    ] Checking for camera pi updates...
[2026-08-25 20:30:11,051.051 INFO    ] 200
[2026-08-25 20:30:11,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:11,100.100 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:30:11,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:30:11,174.174 INFO    ] No camera update needed
[2026-08-25 20:30:11,177.177 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:30:11,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:30:11,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:30:11,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:30:13,232.232 INFO    ] ================================================
[2026-08-25 20:30:13,248.248 INFO    ] Launching Daemon at Tue Aug 25 20:30:13 IST 2026
[2026-08-25 20:30:13,259.259 INFO    ] ================================================
[2026-08-25 20:30:13,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:30:13
[2026-08-25 20:30:14,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:30:14,722.722 INFO    ] Initializing speech engine...
[2026-08-25 20:30:14,730.730 INFO    ] 2026-08-25 20:30:14
[2026-08-25 20:30:15,003.003 INFO    ] 2026-08-25 20:30:14
[2026-08-25 20:30:15,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:30:15,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:30:15,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:30:15,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:30:15,456.456 INFO    ] time= 25/08/2026 20:30:15
[2026-08-25 20:30:15,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:30:15,543.543 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:30:15,693.693 INFO    ] No existing commands found in stream
[2026-08-25 20:30:20,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:30:20,719.719 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 20:30:22,967.967 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:30:22,970.970 INFO    ] Checking for system updates...
[2026-08-25 20:30:23,005.005 INFO    ] 200
[2026-08-25 20:30:23,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:23,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:30:23,063.063 INFO    ] No update needed
[2026-08-25 20:30:23,065.065 INFO    ] Checking for camera pi updates...
[2026-08-25 20:30:23,099.099 INFO    ] 200
[2026-08-25 20:30:23,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:23,149.149 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:30:23,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:30:23,198.198 INFO    ] No camera update needed
[2026-08-25 20:30:23,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:30:23,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:30:23,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:30:23,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:30:25,253.253 INFO    ] ================================================
[2026-08-25 20:30:25,267.267 INFO    ] Launching Daemon at Tue Aug 25 20:30:25 IST 2026
[2026-08-25 20:30:25,278.278 INFO    ] ================================================
[2026-08-25 20:30:25,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:30:25
[2026-08-25 20:30:26,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:30:26,731.731 INFO    ] Initializing speech engine...
[2026-08-25 20:30:26,736.736 INFO    ] 2026-08-25 20:30:26
[2026-08-25 20:30:26,997.997 INFO    ] 2026-08-25 20:30:26
[2026-08-25 20:30:27,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:30:27,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:30:27,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:30:27,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:30:27,460.460 INFO    ] time= 25/08/2026 20:30:27
[2026-08-25 20:30:27,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:30:27,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:30:27,692.692 INFO    ] No existing commands found in stream
[2026-08-25 20:30:32,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:30:32,710.710 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 20:30:33,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:30:33,691.691 INFO    ] Checking for system updates...
[2026-08-25 20:30:33,727.727 INFO    ] 200
[2026-08-25 20:30:33,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:33,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:30:33,784.784 INFO    ] No update needed
[2026-08-25 20:30:33,787.787 INFO    ] Checking for camera pi updates...
[2026-08-25 20:30:33,821.821 INFO    ] 200
[2026-08-25 20:30:33,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:33,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:30:33,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:30:33,924.924 INFO    ] No camera update needed
[2026-08-25 20:30:33,927.927 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:30:33,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:30:33,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:30:33,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:30:35,979.979 INFO    ] ================================================
[2026-08-25 20:30:35,994.994 INFO    ] Launching Daemon at Tue Aug 25 20:30:35 IST 2026
[2026-08-25 20:30:36,005.005 INFO    ] ================================================
[2026-08-25 20:30:36,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:30:36
[2026-08-25 20:30:37,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:30:37,484.484 INFO    ] Initializing speech engine...
[2026-08-25 20:30:37,493.493 INFO    ] 2026-08-25 20:30:37
[2026-08-25 20:30:37,793.793 INFO    ] 2026-08-25 20:30:37
[2026-08-25 20:30:37,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:30:38,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:30:38,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:30:38,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:30:38,202.202 INFO    ] time= 25/08/2026 20:30:38
[2026-08-25 20:30:38,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:30:38,232.232 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:30:38,311.311 INFO    ] No existing commands found in stream
[2026-08-25 20:30:43,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:30:43,327.327 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 20:30:46,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:30:46,880.880 INFO    ] Checking for system updates...
[2026-08-25 20:30:46,917.917 INFO    ] 200
[2026-08-25 20:30:46,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:46,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:30:46,976.976 INFO    ] No update needed
[2026-08-25 20:30:46,979.979 INFO    ] Checking for camera pi updates...
[2026-08-25 20:30:47,012.012 INFO    ] 200
[2026-08-25 20:30:47,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:30:47,061.061 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:30:47,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:30:47,122.122 INFO    ] No camera update needed
[2026-08-25 20:30:47,124.124 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:30:47,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:30:47,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:30:47,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:30:49,177.177 INFO    ] ================================================
[2026-08-25 20:30:49,192.192 INFO    ] Launching Daemon at Tue Aug 25 20:30:49 IST 2026
[2026-08-25 20:30:49,203.203 INFO    ] ================================================
[2026-08-25 20:30:49,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:30:49
[2026-08-25 20:30:50,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:30:50,622.622 INFO    ] Initializing speech engine...
[2026-08-25 20:30:50,631.631 INFO    ] 2026-08-25 20:30:50
[2026-08-25 20:30:50,878.878 INFO    ] 2026-08-25 20:30:50
[2026-08-25 20:30:50,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:30:51,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:30:51,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:30:51,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:30:51,347.347 INFO    ] time= 25/08/2026 20:30:51
[2026-08-25 20:30:51,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:30:51,444.444 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:30:51,572.572 INFO    ] No existing commands found in stream
[2026-08-25 20:30:56,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:30:56,600.600 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 20:31:01,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:31:01,038.038 INFO    ] Checking for system updates...
[2026-08-25 20:31:01,078.078 INFO    ] 200
[2026-08-25 20:31:01,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:01,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:01,137.137 INFO    ] No update needed
[2026-08-25 20:31:01,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 20:31:01,174.174 INFO    ] 200
[2026-08-25 20:31:01,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:01,221.221 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:31:01,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:01,270.270 INFO    ] No camera update needed
[2026-08-25 20:31:01,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:31:01,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:31:01,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:31:01,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:31:03,337.337 INFO    ] ================================================
[2026-08-25 20:31:03,352.352 INFO    ] Launching Daemon at Tue Aug 25 20:31:03 IST 2026
[2026-08-25 20:31:03,363.363 INFO    ] ================================================
[2026-08-25 20:31:03,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:31:03
[2026-08-25 20:31:04,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:31:04,867.867 INFO    ] Initializing speech engine...
[2026-08-25 20:31:04,877.877 INFO    ] 2026-08-25 20:31:04
[2026-08-25 20:31:05,136.136 INFO    ] 2026-08-25 20:31:05
[2026-08-25 20:31:05,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:31:05,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:31:05,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:31:05,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:31:05,601.601 INFO    ] time= 25/08/2026 20:31:05
[2026-08-25 20:31:05,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:31:05,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:31:05,836.836 INFO    ] No existing commands found in stream
[2026-08-25 20:31:10,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:31:10,859.859 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 20:31:11,993.993 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:31:11,996.996 INFO    ] Checking for system updates...
[2026-08-25 20:31:12,032.032 INFO    ] 200
[2026-08-25 20:31:12,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:12,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:12,090.090 INFO    ] No update needed
[2026-08-25 20:31:12,092.092 INFO    ] Checking for camera pi updates...
[2026-08-25 20:31:12,125.125 INFO    ] 200
[2026-08-25 20:31:12,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:12,173.173 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:31:12,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:12,230.230 INFO    ] No camera update needed
[2026-08-25 20:31:12,232.232 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:31:12,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:31:12,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:31:12,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:31:14,286.286 INFO    ] ================================================
[2026-08-25 20:31:14,301.301 INFO    ] Launching Daemon at Tue Aug 25 20:31:14 IST 2026
[2026-08-25 20:31:14,312.312 INFO    ] ================================================
[2026-08-25 20:31:14,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:31:14
[2026-08-25 20:31:15,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:31:15,761.761 INFO    ] Initializing speech engine...
[2026-08-25 20:31:15,772.772 INFO    ] 2026-08-25 20:31:15
[2026-08-25 20:31:16,031.031 INFO    ] 2026-08-25 20:31:16
[2026-08-25 20:31:16,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:31:16,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:31:16,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:31:16,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:31:16,520.520 INFO    ] time= 25/08/2026 20:31:16
[2026-08-25 20:31:16,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:31:16,586.586 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:31:16,746.746 INFO    ] No existing commands found in stream
[2026-08-25 20:31:21,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:31:21,780.780 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 20:31:23,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:31:23,526.526 INFO    ] Checking for system updates...
[2026-08-25 20:31:23,561.561 INFO    ] 200
[2026-08-25 20:31:23,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:23,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:23,618.618 INFO    ] No update needed
[2026-08-25 20:31:23,621.621 INFO    ] Checking for camera pi updates...
[2026-08-25 20:31:23,658.658 INFO    ] 200
[2026-08-25 20:31:23,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:23,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:31:23,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:23,750.750 INFO    ] No camera update needed
[2026-08-25 20:31:23,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:31:23,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:31:23,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:31:23,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:31:25,806.806 INFO    ] ================================================
[2026-08-25 20:31:25,821.821 INFO    ] Launching Daemon at Tue Aug 25 20:31:25 IST 2026
[2026-08-25 20:31:25,832.832 INFO    ] ================================================
[2026-08-25 20:31:26,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:31:26
[2026-08-25 20:31:26,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:31:27,244.244 INFO    ] Initializing speech engine...
[2026-08-25 20:31:27,263.263 INFO    ] 2026-08-25 20:31:27
[2026-08-25 20:31:27,515.515 INFO    ] 2026-08-25 20:31:27
[2026-08-25 20:31:27,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:31:27,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:31:27,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:31:27,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:31:27,991.991 INFO    ] time= 25/08/2026 20:31:27
[2026-08-25 20:31:28,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:31:28,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:31:28,200.200 INFO    ] No existing commands found in stream
[2026-08-25 20:31:33,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:31:33,230.230 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 20:31:37,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:31:37,450.450 INFO    ] Checking for system updates...
[2026-08-25 20:31:37,491.491 INFO    ] 200
[2026-08-25 20:31:37,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:37,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:31:37,554.554 INFO    ] No update needed
[2026-08-25 20:31:37,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 20:31:37,593.593 INFO    ] 200
[2026-08-25 20:31:37,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:37,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:31:37,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:31:37,692.692 INFO    ] No camera update needed
[2026-08-25 20:31:37,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:31:37,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:31:37,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:31:37,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:31:39,746.746 INFO    ] ================================================
[2026-08-25 20:31:39,762.762 INFO    ] Launching Daemon at Tue Aug 25 20:31:39 IST 2026
[2026-08-25 20:31:39,773.773 INFO    ] ================================================
[2026-08-25 20:31:40,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:31:40
[2026-08-25 20:31:40,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:31:41,269.269 INFO    ] Initializing speech engine...
[2026-08-25 20:31:41,280.280 INFO    ] 2026-08-25 20:31:41
[2026-08-25 20:31:41,564.564 INFO    ] 2026-08-25 20:31:41
[2026-08-25 20:31:41,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:31:41,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:31:41,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:31:41,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:31:42,054.054 INFO    ] time= 25/08/2026 20:31:41
[2026-08-25 20:31:42,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:31:42,102.102 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:31:42,249.249 INFO    ] No existing commands found in stream
[2026-08-25 20:31:47,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:31:47,268.268 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 20:31:51,041.041 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:31:51,044.044 INFO    ] Checking for system updates...
[2026-08-25 20:31:51,080.080 INFO    ] 200
[2026-08-25 20:31:51,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:51,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:51,141.141 INFO    ] No update needed
[2026-08-25 20:31:51,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 20:31:51,180.180 INFO    ] 200
[2026-08-25 20:31:51,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:31:51,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:31:51,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:31:51,284.284 INFO    ] No camera update needed
[2026-08-25 20:31:51,286.286 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:31:51,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:31:51,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:31:51,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:31:53,340.340 INFO    ] ================================================
[2026-08-25 20:31:53,355.355 INFO    ] Launching Daemon at Tue Aug 25 20:31:53 IST 2026
[2026-08-25 20:31:53,366.366 INFO    ] ================================================
[2026-08-25 20:31:54,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:31:54
[2026-08-25 20:31:54,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:31:55,003.003 INFO    ] Initializing speech engine...
[2026-08-25 20:31:55,017.017 INFO    ] 2026-08-25 20:31:55
[2026-08-25 20:31:55,331.331 INFO    ] 2026-08-25 20:31:55
[2026-08-25 20:31:55,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:31:55,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:31:55,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:31:55,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:31:55,835.835 INFO    ] time= 25/08/2026 20:31:55
[2026-08-25 20:31:55,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:31:55,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:31:55,991.991 INFO    ] No existing commands found in stream
[2026-08-25 20:32:01,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:32:01,013.013 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 20:32:04,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:32:04,861.861 INFO    ] Checking for system updates...
[2026-08-25 20:32:04,898.898 INFO    ] 200
[2026-08-25 20:32:04,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:04,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:32:04,965.965 INFO    ] No update needed
[2026-08-25 20:32:04,968.968 INFO    ] Checking for camera pi updates...
[2026-08-25 20:32:05,010.010 INFO    ] 200
[2026-08-25 20:32:05,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:05,079.079 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:32:05,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:32:05,145.145 INFO    ] No camera update needed
[2026-08-25 20:32:05,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:32:05,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:32:05,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:32:05,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:32:07,203.203 INFO    ] ================================================
[2026-08-25 20:32:07,218.218 INFO    ] Launching Daemon at Tue Aug 25 20:32:07 IST 2026
[2026-08-25 20:32:07,229.229 INFO    ] ================================================
[2026-08-25 20:32:07,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:32:07
[2026-08-25 20:32:08,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:32:08,681.681 INFO    ] Initializing speech engine...
[2026-08-25 20:32:08,690.690 INFO    ] 2026-08-25 20:32:08
[2026-08-25 20:32:08,972.972 INFO    ] 2026-08-25 20:32:08
[2026-08-25 20:32:09,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:32:09,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:32:09,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:32:09,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:32:09,426.426 INFO    ] time= 25/08/2026 20:32:09
[2026-08-25 20:32:09,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:32:09,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:32:09,663.663 INFO    ] No existing commands found in stream
[2026-08-25 20:32:14,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:32:14,681.681 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 20:32:15,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:32:15,895.895 INFO    ] Checking for system updates...
[2026-08-25 20:32:15,932.932 INFO    ] 200
[2026-08-25 20:32:15,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:15,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:32:15,990.990 INFO    ] No update needed
[2026-08-25 20:32:15,993.993 INFO    ] Checking for camera pi updates...
[2026-08-25 20:32:16,030.030 INFO    ] 200
[2026-08-25 20:32:16,033.033 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:16,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:32:16,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:32:16,157.157 INFO    ] No camera update needed
[2026-08-25 20:32:16,160.160 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:32:16,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:32:16,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:32:16,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:32:18,215.215 INFO    ] ================================================
[2026-08-25 20:32:18,231.231 INFO    ] Launching Daemon at Tue Aug 25 20:32:18 IST 2026
[2026-08-25 20:32:18,242.242 INFO    ] ================================================
[2026-08-25 20:32:18,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:32:18
[2026-08-25 20:32:19,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:32:19,691.691 INFO    ] Initializing speech engine...
[2026-08-25 20:32:19,700.700 INFO    ] 2026-08-25 20:32:19
[2026-08-25 20:32:19,947.947 INFO    ] 2026-08-25 20:32:19
[2026-08-25 20:32:19,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:32:20,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:32:20,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:32:20,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:32:20,437.437 INFO    ] time= 25/08/2026 20:32:20
[2026-08-25 20:32:20,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:32:20,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:32:20,667.667 INFO    ] No existing commands found in stream
[2026-08-25 20:32:25,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:32:25,690.690 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 20:32:28,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:32:28,283.283 INFO    ] Checking for system updates...
[2026-08-25 20:32:28,318.318 INFO    ] 200
[2026-08-25 20:32:28,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:28,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:32:28,380.380 INFO    ] No update needed
[2026-08-25 20:32:28,383.383 INFO    ] Checking for camera pi updates...
[2026-08-25 20:32:28,417.417 INFO    ] 200
[2026-08-25 20:32:28,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:28,464.464 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:32:28,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:32:28,530.530 INFO    ] No camera update needed
[2026-08-25 20:32:28,533.533 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:32:28,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:32:28,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:32:28,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:32:30,588.588 INFO    ] ================================================
[2026-08-25 20:32:30,605.605 INFO    ] Launching Daemon at Tue Aug 25 20:32:30 IST 2026
[2026-08-25 20:32:30,617.617 INFO    ] ================================================
[2026-08-25 20:32:31,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:32:31
[2026-08-25 20:32:31,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:32:32,270.270 INFO    ] Initializing speech engine...
[2026-08-25 20:32:32,277.277 INFO    ] 2026-08-25 20:32:32
[2026-08-25 20:32:32,613.613 INFO    ] 2026-08-25 20:32:32
[2026-08-25 20:32:32,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:32:32,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:32:32,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:32:32,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:32:33,000.000 INFO    ] time= 25/08/2026 20:32:32
[2026-08-25 20:32:33,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:32:33,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:32:33,090.090 INFO    ] No existing commands found in stream
[2026-08-25 20:32:38,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:32:38,105.105 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 20:32:40,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:32:40,502.502 INFO    ] Checking for system updates...
[2026-08-25 20:32:40,540.540 INFO    ] 200
[2026-08-25 20:32:40,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:40,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:32:40,603.603 INFO    ] No update needed
[2026-08-25 20:32:40,605.605 INFO    ] Checking for camera pi updates...
[2026-08-25 20:32:40,647.647 INFO    ] 200
[2026-08-25 20:32:40,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:40,695.695 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:32:40,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:32:40,745.745 INFO    ] No camera update needed
[2026-08-25 20:32:40,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:32:40,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:32:40,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:32:40,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:32:42,799.799 INFO    ] ================================================
[2026-08-25 20:32:42,814.814 INFO    ] Launching Daemon at Tue Aug 25 20:32:42 IST 2026
[2026-08-25 20:32:42,825.825 INFO    ] ================================================
[2026-08-25 20:32:43,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:32:43
[2026-08-25 20:32:44,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:32:44,377.377 INFO    ] Initializing speech engine...
[2026-08-25 20:32:44,389.389 INFO    ] 2026-08-25 20:32:44
[2026-08-25 20:32:44,665.665 INFO    ] 2026-08-25 20:32:44
[2026-08-25 20:32:44,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:32:44,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:32:44,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:32:45,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:32:45,148.148 INFO    ] time= 25/08/2026 20:32:45
[2026-08-25 20:32:45,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:32:45,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:32:45,350.350 INFO    ] No existing commands found in stream
[2026-08-25 20:32:50,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:32:50,369.369 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 20:32:52,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:32:52,494.494 INFO    ] Checking for system updates...
[2026-08-25 20:32:52,530.530 INFO    ] 200
[2026-08-25 20:32:52,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:52,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:32:52,588.588 INFO    ] No update needed
[2026-08-25 20:32:52,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 20:32:52,625.625 INFO    ] 200
[2026-08-25 20:32:52,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:32:52,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:32:52,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:32:52,723.723 INFO    ] No camera update needed
[2026-08-25 20:32:52,726.726 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:32:52,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:32:52,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:32:52,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:32:54,780.780 INFO    ] ================================================
[2026-08-25 20:32:54,796.796 INFO    ] Launching Daemon at Tue Aug 25 20:32:54 IST 2026
[2026-08-25 20:32:54,807.807 INFO    ] ================================================
[2026-08-25 20:32:55,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:32:55
[2026-08-25 20:32:56,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:32:56,291.291 INFO    ] Initializing speech engine...
[2026-08-25 20:32:56,298.298 INFO    ] 2026-08-25 20:32:56
[2026-08-25 20:32:56,562.562 INFO    ] 2026-08-25 20:32:56
[2026-08-25 20:32:56,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:32:56,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:32:56,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:32:56,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:32:56,948.948 INFO    ] time= 25/08/2026 20:32:56
[2026-08-25 20:32:56,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:32:56,995.995 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:32:57,122.122 INFO    ] No existing commands found in stream
[2026-08-25 20:33:02,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:33:02,150.150 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 20:33:04,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:33:04,923.923 INFO    ] Checking for system updates...
[2026-08-25 20:33:04,959.959 INFO    ] 200
[2026-08-25 20:33:04,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:05,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:33:05,020.020 INFO    ] No update needed
[2026-08-25 20:33:05,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 20:33:05,058.058 INFO    ] 200
[2026-08-25 20:33:05,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:05,103.103 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:33:05,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:33:05,272.272 INFO    ] No camera update needed
[2026-08-25 20:33:05,275.275 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:33:05,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:33:05,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:33:05,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:33:07,331.331 INFO    ] ================================================
[2026-08-25 20:33:07,346.346 INFO    ] Launching Daemon at Tue Aug 25 20:33:07 IST 2026
[2026-08-25 20:33:07,357.357 INFO    ] ================================================
[2026-08-25 20:33:07,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:33:07
[2026-08-25 20:33:08,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:33:08,908.908 INFO    ] Initializing speech engine...
[2026-08-25 20:33:08,920.920 INFO    ] 2026-08-25 20:33:08
[2026-08-25 20:33:09,192.192 INFO    ] 2026-08-25 20:33:09
[2026-08-25 20:33:09,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:33:09,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:33:09,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:33:09,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:33:09,745.745 INFO    ] time= 25/08/2026 20:33:09
[2026-08-25 20:33:09,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:33:09,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:33:09,897.897 INFO    ] No existing commands found in stream
[2026-08-25 20:33:14,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:33:14,916.916 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 20:33:21,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:33:21,038.038 INFO    ] Checking for system updates...
[2026-08-25 20:33:21,076.076 INFO    ] 200
[2026-08-25 20:33:21,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:21,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:33:21,135.135 INFO    ] No update needed
[2026-08-25 20:33:21,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 20:33:21,172.172 INFO    ] 200
[2026-08-25 20:33:21,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:21,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:33:21,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:33:21,277.277 INFO    ] No camera update needed
[2026-08-25 20:33:21,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:33:21,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:33:21,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:33:21,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:33:23,331.331 INFO    ] ================================================
[2026-08-25 20:33:23,347.347 INFO    ] Launching Daemon at Tue Aug 25 20:33:23 IST 2026
[2026-08-25 20:33:23,357.357 INFO    ] ================================================
[2026-08-25 20:33:23,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:33:23
[2026-08-25 20:33:24,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:33:24,812.812 INFO    ] Initializing speech engine...
[2026-08-25 20:33:24,818.818 INFO    ] 2026-08-25 20:33:24
[2026-08-25 20:33:25,073.073 INFO    ] 2026-08-25 20:33:25
[2026-08-25 20:33:25,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:33:25,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:33:25,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:33:25,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:33:25,562.562 INFO    ] time= 25/08/2026 20:33:25
[2026-08-25 20:33:25,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:33:25,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:33:25,743.743 INFO    ] No existing commands found in stream
[2026-08-25 20:33:30,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:33:30,758.758 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 20:33:34,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:33:34,695.695 INFO    ] Checking for system updates...
[2026-08-25 20:33:34,735.735 INFO    ] 200
[2026-08-25 20:33:34,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:34,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:33:34,792.792 INFO    ] No update needed
[2026-08-25 20:33:34,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 20:33:34,828.828 INFO    ] 200
[2026-08-25 20:33:34,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:34,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:33:34,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:33:34,922.922 INFO    ] No camera update needed
[2026-08-25 20:33:34,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:33:34,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:33:34,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:33:34,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:33:36,985.985 INFO    ] ================================================
[2026-08-25 20:33:37,001.001 INFO    ] Launching Daemon at Tue Aug 25 20:33:36 IST 2026
[2026-08-25 20:33:37,011.011 INFO    ] ================================================
[2026-08-25 20:33:37,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:33:37
[2026-08-25 20:33:38,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:33:38,444.444 INFO    ] Initializing speech engine...
[2026-08-25 20:33:38,457.457 INFO    ] 2026-08-25 20:33:38
[2026-08-25 20:33:38,710.710 INFO    ] 2026-08-25 20:33:38
[2026-08-25 20:33:38,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:33:39,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:33:39,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:33:39,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:33:39,858.858 INFO    ] time= 25/08/2026 20:33:39
[2026-08-25 20:33:39,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:33:39,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:33:39,972.972 INFO    ] No existing commands found in stream
[2026-08-25 20:33:44,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:33:44,985.985 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 20:33:50,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:33:50,925.925 INFO    ] Checking for system updates...
[2026-08-25 20:33:50,961.961 INFO    ] 200
[2026-08-25 20:33:50,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:51,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:33:51,018.018 INFO    ] No update needed
[2026-08-25 20:33:51,021.021 INFO    ] Checking for camera pi updates...
[2026-08-25 20:33:51,055.055 INFO    ] 200
[2026-08-25 20:33:51,057.057 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:33:51,097.097 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:33:51,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:33:51,149.149 INFO    ] No camera update needed
[2026-08-25 20:33:51,152.152 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:33:51,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:33:51,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:33:51,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:33:53,205.205 INFO    ] ================================================
[2026-08-25 20:33:53,220.220 INFO    ] Launching Daemon at Tue Aug 25 20:33:53 IST 2026
[2026-08-25 20:33:53,231.231 INFO    ] ================================================
[2026-08-25 20:33:53,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:33:53
[2026-08-25 20:33:54,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:33:54,678.678 INFO    ] Initializing speech engine...
[2026-08-25 20:33:54,688.688 INFO    ] 2026-08-25 20:33:54
[2026-08-25 20:33:54,967.967 INFO    ] 2026-08-25 20:33:54
[2026-08-25 20:33:55,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:33:55,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:33:55,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:33:55,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:33:55,584.584 INFO    ] time= 25/08/2026 20:33:55
[2026-08-25 20:33:55,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:33:55,599.599 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:33:55,716.716 INFO    ] No existing commands found in stream
[2026-08-25 20:34:00,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:34:00,750.750 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 20:34:02,304.304 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:34:02,307.307 INFO    ] Checking for system updates...
[2026-08-25 20:34:02,347.347 INFO    ] 200
[2026-08-25 20:34:02,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:02,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:34:02,416.416 INFO    ] No update needed
[2026-08-25 20:34:02,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 20:34:02,460.460 INFO    ] 200
[2026-08-25 20:34:02,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:02,510.510 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:34:02,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:34:02,564.564 INFO    ] No camera update needed
[2026-08-25 20:34:02,567.567 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:34:02,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:34:02,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:34:02,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:34:04,631.631 INFO    ] ================================================
[2026-08-25 20:34:04,647.647 INFO    ] Launching Daemon at Tue Aug 25 20:34:04 IST 2026
[2026-08-25 20:34:04,658.658 INFO    ] ================================================
[2026-08-25 20:34:05,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:34:05
[2026-08-25 20:34:05,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:34:06,268.268 INFO    ] Initializing speech engine...
[2026-08-25 20:34:06,273.273 INFO    ] 2026-08-25 20:34:06
[2026-08-25 20:34:06,559.559 INFO    ] 2026-08-25 20:34:06
[2026-08-25 20:34:06,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:34:06,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:34:06,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:34:06,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:34:07,030.030 INFO    ] time= 25/08/2026 20:34:06
[2026-08-25 20:34:07,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:34:07,128.128 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:34:07,226.226 INFO    ] No existing commands found in stream
[2026-08-25 20:34:12,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:34:12,254.254 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 20:34:13,660.660 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:34:13,662.662 INFO    ] Checking for system updates...
[2026-08-25 20:34:13,697.697 INFO    ] 200
[2026-08-25 20:34:13,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:13,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:34:13,759.759 INFO    ] No update needed
[2026-08-25 20:34:13,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 20:34:13,799.799 INFO    ] 200
[2026-08-25 20:34:13,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:13,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:34:13,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:34:13,909.909 INFO    ] No camera update needed
[2026-08-25 20:34:13,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:34:13,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:34:13,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:34:13,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:34:15,967.967 INFO    ] ================================================
[2026-08-25 20:34:15,984.984 INFO    ] Launching Daemon at Tue Aug 25 20:34:15 IST 2026
[2026-08-25 20:34:16,996.996 INFO    ] ================================================
[2026-08-25 20:34:16,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:34:16
[2026-08-25 20:34:17,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:34:17,592.592 INFO    ] Initializing speech engine...
[2026-08-25 20:34:17,599.599 INFO    ] 2026-08-25 20:34:17
[2026-08-25 20:34:17,900.900 INFO    ] 2026-08-25 20:34:17
[2026-08-25 20:34:17,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:34:18,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:34:18,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:34:18,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:34:18,349.349 INFO    ] time= 25/08/2026 20:34:18
[2026-08-25 20:34:18,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:34:18,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:34:18,561.561 INFO    ] No existing commands found in stream
[2026-08-25 20:34:23,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:34:23,580.580 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 20:34:24,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:34:24,812.812 INFO    ] Checking for system updates...
[2026-08-25 20:34:24,852.852 INFO    ] 200
[2026-08-25 20:34:24,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:24,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:34:24,911.911 INFO    ] No update needed
[2026-08-25 20:34:24,914.914 INFO    ] Checking for camera pi updates...
[2026-08-25 20:34:24,948.948 INFO    ] 200
[2026-08-25 20:34:24,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:24,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:34:25,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:34:25,044.044 INFO    ] No camera update needed
[2026-08-25 20:34:25,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:34:25,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:34:25,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:34:25,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:34:27,103.103 INFO    ] ================================================
[2026-08-25 20:34:27,119.119 INFO    ] Launching Daemon at Tue Aug 25 20:34:27 IST 2026
[2026-08-25 20:34:27,130.130 INFO    ] ================================================
[2026-08-25 20:34:27,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:34:27
[2026-08-25 20:34:28,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:34:28,588.588 INFO    ] Initializing speech engine...
[2026-08-25 20:34:28,593.593 INFO    ] 2026-08-25 20:34:28
[2026-08-25 20:34:28,843.843 INFO    ] 2026-08-25 20:34:28
[2026-08-25 20:34:28,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:34:29,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:34:29,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:34:29,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:34:29,196.196 INFO    ] time= 25/08/2026 20:34:29
[2026-08-25 20:34:29,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:34:29,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:34:29,322.322 INFO    ] No existing commands found in stream
[2026-08-25 20:34:34,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:34:34,338.338 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 20:34:37,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:34:37,493.493 INFO    ] Checking for system updates...
[2026-08-25 20:34:37,529.529 INFO    ] 200
[2026-08-25 20:34:37,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:37,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:34:37,590.590 INFO    ] No update needed
[2026-08-25 20:34:37,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 20:34:37,627.627 INFO    ] 200
[2026-08-25 20:34:37,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:37,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:34:37,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:34:37,718.718 INFO    ] No camera update needed
[2026-08-25 20:34:37,721.721 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:34:37,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:34:37,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:34:37,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:34:39,776.776 INFO    ] ================================================
[2026-08-25 20:34:39,792.792 INFO    ] Launching Daemon at Tue Aug 25 20:34:39 IST 2026
[2026-08-25 20:34:39,803.803 INFO    ] ================================================
[2026-08-25 20:34:40,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:34:40
[2026-08-25 20:34:40,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:34:41,248.248 INFO    ] Initializing speech engine...
[2026-08-25 20:34:41,257.257 INFO    ] 2026-08-25 20:34:41
[2026-08-25 20:34:41,513.513 INFO    ] 2026-08-25 20:34:41
[2026-08-25 20:34:41,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:34:41,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:34:41,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:34:41,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:34:41,955.955 INFO    ] time= 25/08/2026 20:34:41
[2026-08-25 20:34:41,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:34:42,015.015 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:34:42,096.096 INFO    ] No existing commands found in stream
[2026-08-25 20:34:47,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:34:47,120.120 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 20:34:48,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:34:48,992.992 INFO    ] Checking for system updates...
[2026-08-25 20:34:49,034.034 INFO    ] 200
[2026-08-25 20:34:49,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:49,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:34:49,098.098 INFO    ] No update needed
[2026-08-25 20:34:49,101.101 INFO    ] Checking for camera pi updates...
[2026-08-25 20:34:49,137.137 INFO    ] 200
[2026-08-25 20:34:49,139.139 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:34:49,181.181 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:34:49,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:34:49,242.242 INFO    ] No camera update needed
[2026-08-25 20:34:49,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:34:49,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:34:49,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:34:49,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:34:51,299.299 INFO    ] ================================================
[2026-08-25 20:34:51,315.315 INFO    ] Launching Daemon at Tue Aug 25 20:34:51 IST 2026
[2026-08-25 20:34:51,327.327 INFO    ] ================================================
[2026-08-25 20:34:51,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:34:51
[2026-08-25 20:34:52,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:34:52,965.965 INFO    ] Initializing speech engine...
[2026-08-25 20:34:52,979.979 INFO    ] 2026-08-25 20:34:52
[2026-08-25 20:34:53,288.288 INFO    ] 2026-08-25 20:34:53
[2026-08-25 20:34:53,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:34:53,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:34:53,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:34:53,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:34:53,793.793 INFO    ] time= 25/08/2026 20:34:53
[2026-08-25 20:34:53,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:34:53,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:34:53,949.949 INFO    ] No existing commands found in stream
[2026-08-25 20:34:58,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:34:58,969.969 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 20:35:02,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:35:02,468.468 INFO    ] Checking for system updates...
[2026-08-25 20:35:02,539.539 INFO    ] 200
[2026-08-25 20:35:02,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:02,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:35:02,619.619 INFO    ] No update needed
[2026-08-25 20:35:02,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 20:35:02,667.667 INFO    ] 200
[2026-08-25 20:35:02,670.670 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:02,722.722 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:35:02,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:35:02,783.783 INFO    ] No camera update needed
[2026-08-25 20:35:02,786.786 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:35:02,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:35:02,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:35:02,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:35:04,849.849 INFO    ] ================================================
[2026-08-25 20:35:04,864.864 INFO    ] Launching Daemon at Tue Aug 25 20:35:04 IST 2026
[2026-08-25 20:35:04,875.875 INFO    ] ================================================
[2026-08-25 20:35:05,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:35:05
[2026-08-25 20:35:06,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:35:06,518.518 INFO    ] Initializing speech engine...
[2026-08-25 20:35:06,529.529 INFO    ] 2026-08-25 20:35:06
[2026-08-25 20:35:06,800.800 INFO    ] 2026-08-25 20:35:06
[2026-08-25 20:35:06,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:35:07,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:35:07,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:35:07,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:35:07,322.322 INFO    ] time= 25/08/2026 20:35:07
[2026-08-25 20:35:07,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:35:07,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:35:07,527.527 INFO    ] No existing commands found in stream
[2026-08-25 20:35:12,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:35:12,553.553 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 20:35:16,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:35:16,157.157 INFO    ] Checking for system updates...
[2026-08-25 20:35:16,196.196 INFO    ] 200
[2026-08-25 20:35:16,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:16,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:35:16,260.260 INFO    ] No update needed
[2026-08-25 20:35:16,262.262 INFO    ] Checking for camera pi updates...
[2026-08-25 20:35:16,299.299 INFO    ] 200
[2026-08-25 20:35:16,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:16,342.342 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:35:16,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:35:16,491.491 INFO    ] No camera update needed
[2026-08-25 20:35:16,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:35:16,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:35:16,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:35:16,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:35:18,546.546 INFO    ] ================================================
[2026-08-25 20:35:18,562.562 INFO    ] Launching Daemon at Tue Aug 25 20:35:18 IST 2026
[2026-08-25 20:35:18,574.574 INFO    ] ================================================
[2026-08-25 20:35:19,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:35:19
[2026-08-25 20:35:19,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:35:20,019.019 INFO    ] Initializing speech engine...
[2026-08-25 20:35:20,033.033 INFO    ] 2026-08-25 20:35:20
[2026-08-25 20:35:20,303.303 INFO    ] 2026-08-25 20:35:20
[2026-08-25 20:35:20,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:35:20,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:35:20,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:35:20,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:35:20,849.849 INFO    ] time= 25/08/2026 20:35:20
[2026-08-25 20:35:20,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:35:20,875.875 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:35:21,004.004 INFO    ] No existing commands found in stream
[2026-08-25 20:35:26,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:35:26,027.027 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 20:35:27,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:35:27,628.628 INFO    ] Checking for system updates...
[2026-08-25 20:35:27,664.664 INFO    ] 200
[2026-08-25 20:35:27,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:27,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:35:27,723.723 INFO    ] No update needed
[2026-08-25 20:35:27,725.725 INFO    ] Checking for camera pi updates...
[2026-08-25 20:35:27,761.761 INFO    ] 200
[2026-08-25 20:35:27,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:27,805.805 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:35:27,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:35:27,856.856 INFO    ] No camera update needed
[2026-08-25 20:35:27,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:35:27,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:35:27,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:35:27,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:35:29,915.915 INFO    ] ================================================
[2026-08-25 20:35:29,930.930 INFO    ] Launching Daemon at Tue Aug 25 20:35:29 IST 2026
[2026-08-25 20:35:29,941.941 INFO    ] ================================================
[2026-08-25 20:35:30,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:35:30
[2026-08-25 20:35:31,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:35:31,365.365 INFO    ] Initializing speech engine...
[2026-08-25 20:35:31,372.372 INFO    ] 2026-08-25 20:35:31
[2026-08-25 20:35:31,631.631 INFO    ] 2026-08-25 20:35:31
[2026-08-25 20:35:31,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:35:31,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:35:31,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:35:32,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:35:32,078.078 INFO    ] time= 25/08/2026 20:35:32
[2026-08-25 20:35:32,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:35:32,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:35:32,342.342 INFO    ] No existing commands found in stream
[2026-08-25 20:35:37,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:35:37,368.368 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 20:35:40,953.953 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:35:40,956.956 INFO    ] Checking for system updates...
[2026-08-25 20:35:40,995.995 INFO    ] 200
[2026-08-25 20:35:40,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:41,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:35:41,058.058 INFO    ] No update needed
[2026-08-25 20:35:41,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 20:35:41,098.098 INFO    ] 200
[2026-08-25 20:35:41,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:41,140.140 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:35:41,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:35:41,188.188 INFO    ] No camera update needed
[2026-08-25 20:35:41,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:35:41,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:35:41,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:35:41,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:35:43,243.243 INFO    ] ================================================
[2026-08-25 20:35:43,259.259 INFO    ] Launching Daemon at Tue Aug 25 20:35:43 IST 2026
[2026-08-25 20:35:43,271.271 INFO    ] ================================================
[2026-08-25 20:35:43,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:35:43
[2026-08-25 20:35:44,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:35:44,724.724 INFO    ] Initializing speech engine...
[2026-08-25 20:35:44,734.734 INFO    ] 2026-08-25 20:35:44
[2026-08-25 20:35:44,983.983 INFO    ] 2026-08-25 20:35:44
[2026-08-25 20:35:45,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:35:45,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:35:45,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:35:45,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:35:45,418.418 INFO    ] time= 25/08/2026 20:35:45
[2026-08-25 20:35:45,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:35:45,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:35:45,600.600 INFO    ] No existing commands found in stream
[2026-08-25 20:35:50,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:35:50,615.615 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 20:35:53,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:35:53,896.896 INFO    ] Checking for system updates...
[2026-08-25 20:35:53,935.935 INFO    ] 200
[2026-08-25 20:35:53,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:53,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:35:53,998.998 INFO    ] No update needed
[2026-08-25 20:35:54,000.000 INFO    ] Checking for camera pi updates...
[2026-08-25 20:35:54,034.034 INFO    ] 200
[2026-08-25 20:35:54,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:35:54,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:35:54,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:35:54,130.130 INFO    ] No camera update needed
[2026-08-25 20:35:54,132.132 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:35:54,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:35:54,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:35:54,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:35:56,189.189 INFO    ] ================================================
[2026-08-25 20:35:56,206.206 INFO    ] Launching Daemon at Tue Aug 25 20:35:56 IST 2026
[2026-08-25 20:35:56,217.217 INFO    ] ================================================
[2026-08-25 20:35:56,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:35:56
[2026-08-25 20:35:57,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:35:57,850.850 INFO    ] Initializing speech engine...
[2026-08-25 20:35:57,862.862 INFO    ] 2026-08-25 20:35:57
[2026-08-25 20:35:58,135.135 INFO    ] 2026-08-25 20:35:58
[2026-08-25 20:35:58,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:35:58,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:35:58,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:35:58,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:35:58,640.640 INFO    ] time= 25/08/2026 20:35:58
[2026-08-25 20:35:58,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:35:58,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:35:58,857.857 INFO    ] No existing commands found in stream
[2026-08-25 20:36:03,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:36:03,886.886 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 20:36:07,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:36:07,605.605 INFO    ] Checking for system updates...
[2026-08-25 20:36:07,641.641 INFO    ] 200
[2026-08-25 20:36:07,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:07,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:07,702.702 INFO    ] No update needed
[2026-08-25 20:36:07,705.705 INFO    ] Checking for camera pi updates...
[2026-08-25 20:36:07,743.743 INFO    ] 200
[2026-08-25 20:36:07,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:07,792.792 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:36:07,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:07,852.852 INFO    ] No camera update needed
[2026-08-25 20:36:07,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:36:07,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:36:07,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:36:07,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:36:09,907.907 INFO    ] ================================================
[2026-08-25 20:36:09,922.922 INFO    ] Launching Daemon at Tue Aug 25 20:36:09 IST 2026
[2026-08-25 20:36:09,933.933 INFO    ] ================================================
[2026-08-25 20:36:10,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:36:10
[2026-08-25 20:36:11,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:36:11,547.547 INFO    ] Initializing speech engine...
[2026-08-25 20:36:11,558.558 INFO    ] 2026-08-25 20:36:11
[2026-08-25 20:36:11,844.844 INFO    ] 2026-08-25 20:36:11
[2026-08-25 20:36:11,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:36:12,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:36:12,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:36:12,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:36:12,386.386 INFO    ] time= 25/08/2026 20:36:12
[2026-08-25 20:36:12,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:36:12,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:36:12,544.544 INFO    ] No existing commands found in stream
[2026-08-25 20:36:17,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:36:17,562.562 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 20:36:18,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:36:18,413.413 INFO    ] Checking for system updates...
[2026-08-25 20:36:18,450.450 INFO    ] 200
[2026-08-25 20:36:18,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:18,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:36:18,515.515 INFO    ] No update needed
[2026-08-25 20:36:18,518.518 INFO    ] Checking for camera pi updates...
[2026-08-25 20:36:18,557.557 INFO    ] 200
[2026-08-25 20:36:18,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:18,605.605 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:36:18,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:36:18,667.667 INFO    ] No camera update needed
[2026-08-25 20:36:18,669.669 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:36:18,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:36:18,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:36:18,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:36:20,721.721 INFO    ] ================================================
[2026-08-25 20:36:20,737.737 INFO    ] Launching Daemon at Tue Aug 25 20:36:20 IST 2026
[2026-08-25 20:36:20,747.747 INFO    ] ================================================
[2026-08-25 20:36:21,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:36:21
[2026-08-25 20:36:22,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:36:22,335.335 INFO    ] Initializing speech engine...
[2026-08-25 20:36:22,343.343 INFO    ] 2026-08-25 20:36:22
[2026-08-25 20:36:22,629.629 INFO    ] 2026-08-25 20:36:22
[2026-08-25 20:36:22,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:36:22,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:36:22,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:36:23,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:36:23,103.103 INFO    ] time= 25/08/2026 20:36:23
[2026-08-25 20:36:23,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:36:23,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:36:23,322.322 INFO    ] No existing commands found in stream
[2026-08-25 20:36:28,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:36:28,340.340 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 20:36:29,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:36:29,188.188 INFO    ] Checking for system updates...
[2026-08-25 20:36:29,226.226 INFO    ] 200
[2026-08-25 20:36:29,229.229 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:29,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:29,284.284 INFO    ] No update needed
[2026-08-25 20:36:29,286.286 INFO    ] Checking for camera pi updates...
[2026-08-25 20:36:29,321.321 INFO    ] 200
[2026-08-25 20:36:29,323.323 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:29,365.365 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:36:29,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:29,431.431 INFO    ] No camera update needed
[2026-08-25 20:36:29,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:36:29,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:36:29,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:36:29,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:36:31,490.490 INFO    ] ================================================
[2026-08-25 20:36:31,507.507 INFO    ] Launching Daemon at Tue Aug 25 20:36:31 IST 2026
[2026-08-25 20:36:31,519.519 INFO    ] ================================================
[2026-08-25 20:36:32,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:36:32
[2026-08-25 20:36:32,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:36:33,091.091 INFO    ] Initializing speech engine...
[2026-08-25 20:36:33,100.100 INFO    ] 2026-08-25 20:36:33
[2026-08-25 20:36:33,413.413 INFO    ] 2026-08-25 20:36:33
[2026-08-25 20:36:33,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:36:33,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:36:33,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:36:33,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:36:33,927.927 INFO    ] time= 25/08/2026 20:36:33
[2026-08-25 20:36:33,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:36:33,963.963 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:36:34,068.068 INFO    ] No existing commands found in stream
[2026-08-25 20:36:39,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:36:39,083.083 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 20:36:40,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:36:40,824.824 INFO    ] Checking for system updates...
[2026-08-25 20:36:40,861.861 INFO    ] 200
[2026-08-25 20:36:40,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:40,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:40,918.918 INFO    ] No update needed
[2026-08-25 20:36:40,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 20:36:40,955.955 INFO    ] 200
[2026-08-25 20:36:40,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:40,999.999 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:36:41,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:41,047.047 INFO    ] No camera update needed
[2026-08-25 20:36:41,049.049 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:36:41,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:36:41,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:36:41,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:36:43,101.101 INFO    ] ================================================
[2026-08-25 20:36:43,117.117 INFO    ] Launching Daemon at Tue Aug 25 20:36:43 IST 2026
[2026-08-25 20:36:43,127.127 INFO    ] ================================================
[2026-08-25 20:36:43,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:36:43
[2026-08-25 20:36:44,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:36:44,705.705 INFO    ] Initializing speech engine...
[2026-08-25 20:36:44,718.718 INFO    ] 2026-08-25 20:36:44
[2026-08-25 20:36:45,027.027 INFO    ] 2026-08-25 20:36:44
[2026-08-25 20:36:45,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:36:45,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:36:45,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:36:45,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:36:45,481.481 INFO    ] time= 25/08/2026 20:36:45
[2026-08-25 20:36:45,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:36:45,554.554 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:36:45,688.688 INFO    ] No existing commands found in stream
[2026-08-25 20:36:50,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:36:50,716.716 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 20:36:53,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:36:53,881.881 INFO    ] Checking for system updates...
[2026-08-25 20:36:53,917.917 INFO    ] 200
[2026-08-25 20:36:53,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:53,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:53,975.975 INFO    ] No update needed
[2026-08-25 20:36:53,977.977 INFO    ] Checking for camera pi updates...
[2026-08-25 20:36:54,011.011 INFO    ] 200
[2026-08-25 20:36:54,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:36:54,053.053 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:36:54,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:36:54,103.103 INFO    ] No camera update needed
[2026-08-25 20:36:54,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:36:54,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:36:54,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:36:54,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:36:56,160.160 INFO    ] ================================================
[2026-08-25 20:36:56,175.175 INFO    ] Launching Daemon at Tue Aug 25 20:36:56 IST 2026
[2026-08-25 20:36:56,186.186 INFO    ] ================================================
[2026-08-25 20:36:56,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:36:56
[2026-08-25 20:36:57,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:36:57,761.761 INFO    ] Initializing speech engine...
[2026-08-25 20:36:57,772.772 INFO    ] 2026-08-25 20:36:57
[2026-08-25 20:36:58,049.049 INFO    ] 2026-08-25 20:36:58
[2026-08-25 20:36:58,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:36:58,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:36:58,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:36:58,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:36:58,591.591 INFO    ] time= 25/08/2026 20:36:58
[2026-08-25 20:36:58,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:36:58,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:36:58,761.761 INFO    ] No existing commands found in stream
[2026-08-25 20:37:03,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:37:03,779.779 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 20:37:07,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:37:07,648.648 INFO    ] Checking for system updates...
[2026-08-25 20:37:07,684.684 INFO    ] 200
[2026-08-25 20:37:07,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:07,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:07,741.741 INFO    ] No update needed
[2026-08-25 20:37:07,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 20:37:07,777.777 INFO    ] 200
[2026-08-25 20:37:07,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:07,819.819 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:37:07,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:07,872.872 INFO    ] No camera update needed
[2026-08-25 20:37:07,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:37:07,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:37:07,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:37:07,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:37:09,927.927 INFO    ] ================================================
[2026-08-25 20:37:09,943.943 INFO    ] Launching Daemon at Tue Aug 25 20:37:09 IST 2026
[2026-08-25 20:37:09,954.954 INFO    ] ================================================
[2026-08-25 20:37:10,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:37:10
[2026-08-25 20:37:11,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:37:11,588.588 INFO    ] Initializing speech engine...
[2026-08-25 20:37:11,597.597 INFO    ] 2026-08-25 20:37:11
[2026-08-25 20:37:11,848.848 INFO    ] 2026-08-25 20:37:11
[2026-08-25 20:37:11,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:37:12,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:37:12,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:37:12,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:37:12,205.205 INFO    ] time= 25/08/2026 20:37:12
[2026-08-25 20:37:12,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:37:12,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:37:12,287.287 INFO    ] No existing commands found in stream
[2026-08-25 20:37:17,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:37:17,302.302 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 20:37:18,448.448 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:37:18,451.451 INFO    ] Checking for system updates...
[2026-08-25 20:37:18,491.491 INFO    ] 200
[2026-08-25 20:37:18,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:18,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:37:18,550.550 INFO    ] No update needed
[2026-08-25 20:37:18,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 20:37:18,587.587 INFO    ] 200
[2026-08-25 20:37:18,589.589 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:18,636.636 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:37:18,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:37:18,794.794 INFO    ] No camera update needed
[2026-08-25 20:37:18,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:37:18,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:37:18,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:37:18,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:37:20,849.849 INFO    ] ================================================
[2026-08-25 20:37:20,864.864 INFO    ] Launching Daemon at Tue Aug 25 20:37:20 IST 2026
[2026-08-25 20:37:20,875.875 INFO    ] ================================================
[2026-08-25 20:37:21,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:37:21
[2026-08-25 20:37:22,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:37:22,320.320 INFO    ] Initializing speech engine...
[2026-08-25 20:37:22,337.337 INFO    ] 2026-08-25 20:37:22
[2026-08-25 20:37:22,626.626 INFO    ] 2026-08-25 20:37:22
[2026-08-25 20:37:22,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:37:22,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:37:22,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:37:22,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:37:22,989.989 INFO    ] time= 25/08/2026 20:37:22
[2026-08-25 20:37:23,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:37:23,020.020 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:37:23,144.144 INFO    ] No existing commands found in stream
[2026-08-25 20:37:28,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:37:28,157.157 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 20:37:29,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:37:29,733.733 INFO    ] Checking for system updates...
[2026-08-25 20:37:29,770.770 INFO    ] 200
[2026-08-25 20:37:29,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:29,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:29,827.827 INFO    ] No update needed
[2026-08-25 20:37:29,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 20:37:29,863.863 INFO    ] 200
[2026-08-25 20:37:29,866.866 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:29,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:37:29,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:29,983.983 INFO    ] No camera update needed
[2026-08-25 20:37:29,985.985 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:37:29,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:37:29,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:37:29,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:37:32,038.038 INFO    ] ================================================
[2026-08-25 20:37:32,056.056 INFO    ] Launching Daemon at Tue Aug 25 20:37:32 IST 2026
[2026-08-25 20:37:32,068.068 INFO    ] ================================================
[2026-08-25 20:37:32,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:37:32
[2026-08-25 20:37:33,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:37:33,779.779 INFO    ] Initializing speech engine...
[2026-08-25 20:37:33,793.793 INFO    ] 2026-08-25 20:37:33
[2026-08-25 20:37:34,113.113 INFO    ] 2026-08-25 20:37:34
[2026-08-25 20:37:34,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:37:34,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:37:34,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:37:34,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:37:34,624.624 INFO    ] time= 25/08/2026 20:37:34
[2026-08-25 20:37:34,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:37:34,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:37:34,786.786 INFO    ] No existing commands found in stream
[2026-08-25 20:37:39,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:37:39,826.826 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 20:37:42,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:37:42,407.407 INFO    ] Checking for system updates...
[2026-08-25 20:37:42,444.444 INFO    ] 200
[2026-08-25 20:37:42,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:42,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:42,510.510 INFO    ] No update needed
[2026-08-25 20:37:42,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 20:37:42,551.551 INFO    ] 200
[2026-08-25 20:37:42,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:42,594.594 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:37:42,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:42,645.645 INFO    ] No camera update needed
[2026-08-25 20:37:42,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:37:42,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:37:42,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:37:42,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:37:44,699.699 INFO    ] ================================================
[2026-08-25 20:37:44,714.714 INFO    ] Launching Daemon at Tue Aug 25 20:37:44 IST 2026
[2026-08-25 20:37:44,726.726 INFO    ] ================================================
[2026-08-25 20:37:45,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:37:45
[2026-08-25 20:37:45,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:37:46,126.126 INFO    ] Initializing speech engine...
[2026-08-25 20:37:46,139.139 INFO    ] 2026-08-25 20:37:46
[2026-08-25 20:37:46,404.404 INFO    ] 2026-08-25 20:37:46
[2026-08-25 20:37:46,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:37:46,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:37:46,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:37:46,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:37:46,902.902 INFO    ] time= 25/08/2026 20:37:46
[2026-08-25 20:37:46,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:37:46,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:37:47,126.126 INFO    ] No existing commands found in stream
[2026-08-25 20:37:52,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:37:52,142.142 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 20:37:54,094.094 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:37:54,097.097 INFO    ] Checking for system updates...
[2026-08-25 20:37:54,133.133 INFO    ] 200
[2026-08-25 20:37:54,136.136 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:54,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:54,191.191 INFO    ] No update needed
[2026-08-25 20:37:54,193.193 INFO    ] Checking for camera pi updates...
[2026-08-25 20:37:54,230.230 INFO    ] 200
[2026-08-25 20:37:54,233.233 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:37:54,278.278 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:37:54,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:37:54,338.338 INFO    ] No camera update needed
[2026-08-25 20:37:54,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:37:54,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:37:54,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:37:54,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:37:56,401.401 INFO    ] ================================================
[2026-08-25 20:37:56,416.416 INFO    ] Launching Daemon at Tue Aug 25 20:37:56 IST 2026
[2026-08-25 20:37:56,427.427 INFO    ] ================================================
[2026-08-25 20:37:56,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:37:56
[2026-08-25 20:37:57,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:37:57,830.830 INFO    ] Initializing speech engine...
[2026-08-25 20:37:57,849.849 INFO    ] 2026-08-25 20:37:57
[2026-08-25 20:37:58,102.102 INFO    ] 2026-08-25 20:37:58
[2026-08-25 20:37:58,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:37:58,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:37:58,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:37:58,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:37:58,555.555 INFO    ] time= 25/08/2026 20:37:58
[2026-08-25 20:37:58,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:37:58,653.653 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:37:58,756.756 INFO    ] No existing commands found in stream
[2026-08-25 20:38:03,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:38:03,770.770 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 20:38:04,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:38:04,592.592 INFO    ] Checking for system updates...
[2026-08-25 20:38:04,632.632 INFO    ] 200
[2026-08-25 20:38:04,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:04,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:38:04,690.690 INFO    ] No update needed
[2026-08-25 20:38:04,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 20:38:04,730.730 INFO    ] 200
[2026-08-25 20:38:04,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:04,777.777 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:38:04,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:38:04,831.831 INFO    ] No camera update needed
[2026-08-25 20:38:04,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:38:04,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:38:04,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:38:04,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:38:06,886.886 INFO    ] ================================================
[2026-08-25 20:38:06,906.906 INFO    ] Launching Daemon at Tue Aug 25 20:38:06 IST 2026
[2026-08-25 20:38:06,920.920 INFO    ] ================================================
[2026-08-25 20:38:07,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:38:07
[2026-08-25 20:38:08,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:38:08,375.375 INFO    ] Initializing speech engine...
[2026-08-25 20:38:08,383.383 INFO    ] 2026-08-25 20:38:08
[2026-08-25 20:38:08,642.642 INFO    ] 2026-08-25 20:38:08
[2026-08-25 20:38:08,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:38:08,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:38:08,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:38:09,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:38:09,126.126 INFO    ] time= 25/08/2026 20:38:09
[2026-08-25 20:38:09,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:38:09,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:38:09,360.360 INFO    ] No existing commands found in stream
[2026-08-25 20:38:14,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:38:14,393.393 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 20:38:18,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:38:18,282.282 INFO    ] Checking for system updates...
[2026-08-25 20:38:18,322.322 INFO    ] 200
[2026-08-25 20:38:18,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:18,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:18,388.388 INFO    ] No update needed
[2026-08-25 20:38:18,391.391 INFO    ] Checking for camera pi updates...
[2026-08-25 20:38:18,426.426 INFO    ] 200
[2026-08-25 20:38:18,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:18,469.469 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:38:18,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:18,523.523 INFO    ] No camera update needed
[2026-08-25 20:38:18,526.526 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:38:18,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:38:18,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:38:18,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:38:20,580.580 INFO    ] ================================================
[2026-08-25 20:38:20,595.595 INFO    ] Launching Daemon at Tue Aug 25 20:38:20 IST 2026
[2026-08-25 20:38:20,607.607 INFO    ] ================================================
[2026-08-25 20:38:21,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:38:21
[2026-08-25 20:38:21,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:38:22,073.073 INFO    ] Initializing speech engine...
[2026-08-25 20:38:22,084.084 INFO    ] 2026-08-25 20:38:22
[2026-08-25 20:38:22,358.358 INFO    ] 2026-08-25 20:38:22
[2026-08-25 20:38:22,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:38:22,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:38:22,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:38:22,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:38:22,812.812 INFO    ] time= 25/08/2026 20:38:22
[2026-08-25 20:38:22,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:38:22,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:38:23,042.042 INFO    ] No existing commands found in stream
[2026-08-25 20:38:28,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:38:28,070.070 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 20:38:30,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:38:30,032.032 INFO    ] Checking for system updates...
[2026-08-25 20:38:30,095.095 INFO    ] 200
[2026-08-25 20:38:30,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:30,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:30,161.161 INFO    ] No update needed
[2026-08-25 20:38:30,163.163 INFO    ] Checking for camera pi updates...
[2026-08-25 20:38:30,197.197 INFO    ] 200
[2026-08-25 20:38:30,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:30,262.262 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:38:30,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:30,324.324 INFO    ] No camera update needed
[2026-08-25 20:38:30,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:38:30,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:38:30,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:38:30,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:38:32,379.379 INFO    ] ================================================
[2026-08-25 20:38:32,395.395 INFO    ] Launching Daemon at Tue Aug 25 20:38:32 IST 2026
[2026-08-25 20:38:32,405.405 INFO    ] ================================================
[2026-08-25 20:38:32,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:38:32
[2026-08-25 20:38:33,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:38:33,976.976 INFO    ] Initializing speech engine...
[2026-08-25 20:38:33,985.985 INFO    ] 2026-08-25 20:38:33
[2026-08-25 20:38:34,297.297 INFO    ] 2026-08-25 20:38:34
[2026-08-25 20:38:34,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:38:34,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:38:34,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:38:34,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:38:34,741.741 INFO    ] time= 25/08/2026 20:38:34
[2026-08-25 20:38:34,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:38:34,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:38:34,974.974 INFO    ] No existing commands found in stream
[2026-08-25 20:38:39,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:38:39,998.998 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 20:38:44,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:38:44,249.249 INFO    ] Checking for system updates...
[2026-08-25 20:38:44,289.289 INFO    ] 200
[2026-08-25 20:38:44,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:44,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:44,354.354 INFO    ] No update needed
[2026-08-25 20:38:44,356.356 INFO    ] Checking for camera pi updates...
[2026-08-25 20:38:44,394.394 INFO    ] 200
[2026-08-25 20:38:44,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:44,443.443 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:38:44,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:44,501.501 INFO    ] No camera update needed
[2026-08-25 20:38:44,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:38:44,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:38:44,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:38:44,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:38:46,556.556 INFO    ] ================================================
[2026-08-25 20:38:46,571.571 INFO    ] Launching Daemon at Tue Aug 25 20:38:46 IST 2026
[2026-08-25 20:38:46,581.581 INFO    ] ================================================
[2026-08-25 20:38:47,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:38:47
[2026-08-25 20:38:47,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:38:47,998.998 INFO    ] Initializing speech engine...
[2026-08-25 20:38:48,007.007 INFO    ] 2026-08-25 20:38:48
[2026-08-25 20:38:48,252.252 INFO    ] 2026-08-25 20:38:48
[2026-08-25 20:38:48,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:38:48,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:38:48,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:38:48,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:38:48,701.701 INFO    ] time= 25/08/2026 20:38:48
[2026-08-25 20:38:48,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:38:48,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:38:48,946.946 INFO    ] No existing commands found in stream
[2026-08-25 20:38:53,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:38:53,973.973 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 20:38:56,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:38:56,047.047 INFO    ] Checking for system updates...
[2026-08-25 20:38:56,083.083 INFO    ] 200
[2026-08-25 20:38:56,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:56,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:56,149.149 INFO    ] No update needed
[2026-08-25 20:38:56,152.152 INFO    ] Checking for camera pi updates...
[2026-08-25 20:38:56,195.195 INFO    ] 200
[2026-08-25 20:38:56,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:38:56,246.246 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:38:56,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:38:56,303.303 INFO    ] No camera update needed
[2026-08-25 20:38:56,306.306 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:38:56,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:38:56,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:38:56,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:38:58,361.361 INFO    ] ================================================
[2026-08-25 20:38:58,376.376 INFO    ] Launching Daemon at Tue Aug 25 20:38:58 IST 2026
[2026-08-25 20:38:58,387.387 INFO    ] ================================================
[2026-08-25 20:38:58,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:38:58
[2026-08-25 20:38:59,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:38:59,815.815 INFO    ] Initializing speech engine...
[2026-08-25 20:38:59,824.824 INFO    ] 2026-08-25 20:38:59
[2026-08-25 20:39:00,074.074 INFO    ] 2026-08-25 20:39:00
[2026-08-25 20:39:00,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:39:00,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:39:00,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:39:00,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:39:00,536.536 INFO    ] time= 25/08/2026 20:39:00
[2026-08-25 20:39:00,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:39:00,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:39:00,798.798 INFO    ] No existing commands found in stream
[2026-08-25 20:39:05,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:39:05,818.818 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 20:39:08,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:39:08,525.525 INFO    ] Checking for system updates...
[2026-08-25 20:39:08,560.560 INFO    ] 200
[2026-08-25 20:39:08,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:08,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:39:08,625.625 INFO    ] No update needed
[2026-08-25 20:39:08,628.628 INFO    ] Checking for camera pi updates...
[2026-08-25 20:39:08,661.661 INFO    ] 200
[2026-08-25 20:39:08,664.664 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:08,710.710 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:39:08,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:39:08,768.768 INFO    ] No camera update needed
[2026-08-25 20:39:08,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:39:08,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:39:08,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:39:08,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:39:10,825.825 INFO    ] ================================================
[2026-08-25 20:39:10,842.842 INFO    ] Launching Daemon at Tue Aug 25 20:39:10 IST 2026
[2026-08-25 20:39:10,852.852 INFO    ] ================================================
[2026-08-25 20:39:11,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:39:11
[2026-08-25 20:39:12,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:39:12,307.307 INFO    ] Initializing speech engine...
[2026-08-25 20:39:12,313.313 INFO    ] 2026-08-25 20:39:12
[2026-08-25 20:39:12,573.573 INFO    ] 2026-08-25 20:39:12
[2026-08-25 20:39:12,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:39:12,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:39:12,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:39:12,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:39:13,036.036 INFO    ] time= 25/08/2026 20:39:12
[2026-08-25 20:39:13,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:39:13,122.122 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:39:13,255.255 INFO    ] No existing commands found in stream
[2026-08-25 20:39:18,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:39:18,281.281 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 20:39:19,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:39:19,158.158 INFO    ] Checking for system updates...
[2026-08-25 20:39:19,198.198 INFO    ] 200
[2026-08-25 20:39:19,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:19,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:19,263.263 INFO    ] No update needed
[2026-08-25 20:39:19,266.266 INFO    ] Checking for camera pi updates...
[2026-08-25 20:39:19,304.304 INFO    ] 200
[2026-08-25 20:39:19,306.306 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:19,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:39:19,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:19,402.402 INFO    ] No camera update needed
[2026-08-25 20:39:19,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:39:19,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:39:19,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:39:19,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:39:21,459.459 INFO    ] ================================================
[2026-08-25 20:39:21,473.473 INFO    ] Launching Daemon at Tue Aug 25 20:39:21 IST 2026
[2026-08-25 20:39:21,484.484 INFO    ] ================================================
[2026-08-25 20:39:22,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:39:22
[2026-08-25 20:39:22,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:39:22,903.903 INFO    ] Initializing speech engine...
[2026-08-25 20:39:22,912.912 INFO    ] 2026-08-25 20:39:22
[2026-08-25 20:39:23,162.162 INFO    ] 2026-08-25 20:39:23
[2026-08-25 20:39:23,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:39:23,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:39:23,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:39:23,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:39:23,539.539 INFO    ] time= 25/08/2026 20:39:23
[2026-08-25 20:39:23,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:39:23,587.587 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:39:23,699.699 INFO    ] No existing commands found in stream
[2026-08-25 20:39:28,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:39:28,722.722 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 20:39:31,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:39:31,818.818 INFO    ] Checking for system updates...
[2026-08-25 20:39:31,853.853 INFO    ] 200
[2026-08-25 20:39:31,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:31,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:31,918.918 INFO    ] No update needed
[2026-08-25 20:39:31,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 20:39:31,953.953 INFO    ] 200
[2026-08-25 20:39:31,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:32,002.002 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:39:32,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:32,173.173 INFO    ] No camera update needed
[2026-08-25 20:39:32,176.176 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:39:32,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:39:32,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:39:32,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:39:34,236.236 INFO    ] ================================================
[2026-08-25 20:39:34,251.251 INFO    ] Launching Daemon at Tue Aug 25 20:39:34 IST 2026
[2026-08-25 20:39:34,261.261 INFO    ] ================================================
[2026-08-25 20:39:34,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:39:34
[2026-08-25 20:39:35,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:39:35,718.718 INFO    ] Initializing speech engine...
[2026-08-25 20:39:35,740.740 INFO    ] 2026-08-25 20:39:35
[2026-08-25 20:39:35,997.997 INFO    ] 2026-08-25 20:39:35
[2026-08-25 20:39:36,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:39:36,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:39:36,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:39:36,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:39:36,497.497 INFO    ] time= 25/08/2026 20:39:36
[2026-08-25 20:39:36,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:39:36,561.561 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:39:36,703.703 INFO    ] No existing commands found in stream
[2026-08-25 20:39:41,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:39:41,721.721 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 20:39:44,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:39:44,968.968 INFO    ] Checking for system updates...
[2026-08-25 20:39:45,003.003 INFO    ] 200
[2026-08-25 20:39:45,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:45,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:45,067.067 INFO    ] No update needed
[2026-08-25 20:39:45,069.069 INFO    ] Checking for camera pi updates...
[2026-08-25 20:39:45,107.107 INFO    ] 200
[2026-08-25 20:39:45,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:45,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:39:45,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:45,199.199 INFO    ] No camera update needed
[2026-08-25 20:39:45,202.202 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:39:45,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:39:45,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:39:45,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:39:47,255.255 INFO    ] ================================================
[2026-08-25 20:39:47,270.270 INFO    ] Launching Daemon at Tue Aug 25 20:39:47 IST 2026
[2026-08-25 20:39:47,280.280 INFO    ] ================================================
[2026-08-25 20:39:47,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:39:47
[2026-08-25 20:39:48,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:39:48,702.702 INFO    ] Initializing speech engine...
[2026-08-25 20:39:48,717.717 INFO    ] 2026-08-25 20:39:48
[2026-08-25 20:39:48,973.973 INFO    ] 2026-08-25 20:39:48
[2026-08-25 20:39:49,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:39:49,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:39:49,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:39:49,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:39:49,350.350 INFO    ] time= 25/08/2026 20:39:49
[2026-08-25 20:39:49,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:39:49,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:39:49,513.513 INFO    ] No existing commands found in stream
[2026-08-25 20:39:54,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:39:54,547.547 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 20:39:56,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:39:56,632.632 INFO    ] Checking for system updates...
[2026-08-25 20:39:56,669.669 INFO    ] 200
[2026-08-25 20:39:56,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:56,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:56,736.736 INFO    ] No update needed
[2026-08-25 20:39:56,739.739 INFO    ] Checking for camera pi updates...
[2026-08-25 20:39:56,778.778 INFO    ] 200
[2026-08-25 20:39:56,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:39:56,828.828 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:39:56,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:39:56,888.888 INFO    ] No camera update needed
[2026-08-25 20:39:56,891.891 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:39:56,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:39:56,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:39:56,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:39:58,944.944 INFO    ] ================================================
[2026-08-25 20:39:58,960.960 INFO    ] Launching Daemon at Tue Aug 25 20:39:58 IST 2026
[2026-08-25 20:39:58,971.971 INFO    ] ================================================
[2026-08-25 20:39:59,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:39:59
[2026-08-25 20:40:00,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:40:00,428.428 INFO    ] Initializing speech engine...
[2026-08-25 20:40:00,435.435 INFO    ] 2026-08-25 20:40:00
[2026-08-25 20:40:00,696.696 INFO    ] 2026-08-25 20:40:00
[2026-08-25 20:40:00,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:40:00,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:40:00,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:40:01,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:40:01,112.112 INFO    ] time= 25/08/2026 20:40:01
[2026-08-25 20:40:01,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:40:01,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:40:01,228.228 INFO    ] No existing commands found in stream
[2026-08-25 20:40:06,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:40:06,279.279 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 20:40:09,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:40:09,398.398 INFO    ] Checking for system updates...
[2026-08-25 20:40:09,438.438 INFO    ] 200
[2026-08-25 20:40:09,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:09,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:40:09,496.496 INFO    ] No update needed
[2026-08-25 20:40:09,499.499 INFO    ] Checking for camera pi updates...
[2026-08-25 20:40:09,537.537 INFO    ] 200
[2026-08-25 20:40:09,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:09,585.585 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:40:09,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:40:09,636.636 INFO    ] No camera update needed
[2026-08-25 20:40:09,638.638 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:40:09,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:40:09,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:40:09,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:40:11,691.691 INFO    ] ================================================
[2026-08-25 20:40:11,707.707 INFO    ] Launching Daemon at Tue Aug 25 20:40:11 IST 2026
[2026-08-25 20:40:11,718.718 INFO    ] ================================================
[2026-08-25 20:40:12,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:40:12
[2026-08-25 20:40:13,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:40:13,400.400 INFO    ] Initializing speech engine...
[2026-08-25 20:40:13,413.413 INFO    ] 2026-08-25 20:40:13
[2026-08-25 20:40:13,709.709 INFO    ] 2026-08-25 20:40:13
[2026-08-25 20:40:13,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:40:14,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:40:14,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:40:14,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:40:14,253.253 INFO    ] time= 25/08/2026 20:40:14
[2026-08-25 20:40:14,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:40:14,303.303 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:40:14,416.416 INFO    ] No existing commands found in stream
[2026-08-25 20:40:19,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:40:19,439.439 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 20:40:21,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:40:21,370.370 INFO    ] Checking for system updates...
[2026-08-25 20:40:21,408.408 INFO    ] 200
[2026-08-25 20:40:21,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:21,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:40:21,477.477 INFO    ] No update needed
[2026-08-25 20:40:21,481.481 INFO    ] Checking for camera pi updates...
[2026-08-25 20:40:21,520.520 INFO    ] 200
[2026-08-25 20:40:21,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:21,569.569 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:40:21,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:40:21,629.629 INFO    ] No camera update needed
[2026-08-25 20:40:21,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:40:21,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:40:21,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:40:21,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:40:23,689.689 INFO    ] ================================================
[2026-08-25 20:40:23,704.704 INFO    ] Launching Daemon at Tue Aug 25 20:40:23 IST 2026
[2026-08-25 20:40:23,715.715 INFO    ] ================================================
[2026-08-25 20:40:24,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:40:24
[2026-08-25 20:40:25,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:40:25,397.397 INFO    ] Initializing speech engine...
[2026-08-25 20:40:25,408.408 INFO    ] 2026-08-25 20:40:25
[2026-08-25 20:40:25,702.702 INFO    ] 2026-08-25 20:40:25
[2026-08-25 20:40:25,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:40:25,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:40:26,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:40:26,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:40:26,242.242 INFO    ] time= 25/08/2026 20:40:26
[2026-08-25 20:40:26,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:40:26,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:40:26,390.390 INFO    ] No existing commands found in stream
[2026-08-25 20:40:31,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:40:31,419.419 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 20:40:32,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:40:32,202.202 INFO    ] Checking for system updates...
[2026-08-25 20:40:32,245.245 INFO    ] 200
[2026-08-25 20:40:32,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:32,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:40:32,308.308 INFO    ] No update needed
[2026-08-25 20:40:32,311.311 INFO    ] Checking for camera pi updates...
[2026-08-25 20:40:32,346.346 INFO    ] 200
[2026-08-25 20:40:32,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:32,404.404 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:40:32,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:40:32,485.485 INFO    ] No camera update needed
[2026-08-25 20:40:32,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:40:32,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:40:32,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:40:32,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:40:34,544.544 INFO    ] ================================================
[2026-08-25 20:40:34,559.559 INFO    ] Launching Daemon at Tue Aug 25 20:40:34 IST 2026
[2026-08-25 20:40:34,570.570 INFO    ] ================================================
[2026-08-25 20:40:35,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:40:35
[2026-08-25 20:40:35,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:40:36,022.022 INFO    ] Initializing speech engine...
[2026-08-25 20:40:36,028.028 INFO    ] 2026-08-25 20:40:36
[2026-08-25 20:40:36,280.280 INFO    ] 2026-08-25 20:40:36
[2026-08-25 20:40:36,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:40:36,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:40:36,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:40:36,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:40:36,660.660 INFO    ] time= 25/08/2026 20:40:36
[2026-08-25 20:40:36,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:40:36,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:40:36,846.846 INFO    ] No existing commands found in stream
[2026-08-25 20:40:41,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:40:41,874.874 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 20:40:43,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:40:43,822.822 INFO    ] Checking for system updates...
[2026-08-25 20:40:43,858.858 INFO    ] 200
[2026-08-25 20:40:43,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:43,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:40:43,926.926 INFO    ] No update needed
[2026-08-25 20:40:43,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 20:40:43,973.973 INFO    ] 200
[2026-08-25 20:40:43,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:44,024.024 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:40:44,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:40:44,070.070 INFO    ] No camera update needed
[2026-08-25 20:40:44,073.073 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:40:44,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:40:44,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:40:44,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:40:46,130.130 INFO    ] ================================================
[2026-08-25 20:40:46,145.145 INFO    ] Launching Daemon at Tue Aug 25 20:40:46 IST 2026
[2026-08-25 20:40:46,157.157 INFO    ] ================================================
[2026-08-25 20:40:46,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:40:46
[2026-08-25 20:40:47,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:40:47,832.832 INFO    ] Initializing speech engine...
[2026-08-25 20:40:47,843.843 INFO    ] 2026-08-25 20:40:47
[2026-08-25 20:40:48,154.154 INFO    ] 2026-08-25 20:40:48
[2026-08-25 20:40:48,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:40:48,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:40:48,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:40:48,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:40:48,663.663 INFO    ] time= 25/08/2026 20:40:48
[2026-08-25 20:40:48,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:40:48,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:40:48,875.875 INFO    ] No existing commands found in stream
[2026-08-25 20:40:53,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:40:53,909.909 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 20:40:57,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:40:57,938.938 INFO    ] Checking for system updates...
[2026-08-25 20:40:57,980.980 INFO    ] 200
[2026-08-25 20:40:57,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:58,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:40:58,043.043 INFO    ] No update needed
[2026-08-25 20:40:58,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 20:40:58,081.081 INFO    ] 200
[2026-08-25 20:40:58,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:40:58,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:40:58,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:40:58,192.192 INFO    ] No camera update needed
[2026-08-25 20:40:58,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:40:58,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:40:58,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:40:58,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:41:00,246.246 INFO    ] ================================================
[2026-08-25 20:41:00,262.262 INFO    ] Launching Daemon at Tue Aug 25 20:41:00 IST 2026
[2026-08-25 20:41:00,273.273 INFO    ] ================================================
[2026-08-25 20:41:00,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:41:00
[2026-08-25 20:41:01,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:41:02,036.036 INFO    ] Initializing speech engine...
[2026-08-25 20:41:02,044.044 INFO    ] 2026-08-25 20:41:02
[2026-08-25 20:41:02,365.365 INFO    ] 2026-08-25 20:41:02
[2026-08-25 20:41:02,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:41:02,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:41:02,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:41:02,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:41:02,874.874 INFO    ] time= 25/08/2026 20:41:02
[2026-08-25 20:41:02,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:41:02,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:41:03,105.105 INFO    ] No existing commands found in stream
[2026-08-25 20:41:08,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:41:08,145.145 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 20:41:11,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:41:11,934.934 INFO    ] Checking for system updates...
[2026-08-25 20:41:11,971.971 INFO    ] 200
[2026-08-25 20:41:11,974.974 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:12,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:41:12,030.030 INFO    ] No update needed
[2026-08-25 20:41:12,033.033 INFO    ] Checking for camera pi updates...
[2026-08-25 20:41:12,072.072 INFO    ] 200
[2026-08-25 20:41:12,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:12,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:41:12,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:41:12,206.206 INFO    ] No camera update needed
[2026-08-25 20:41:12,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:41:12,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:41:12,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:41:12,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:41:14,265.265 INFO    ] ================================================
[2026-08-25 20:41:14,281.281 INFO    ] Launching Daemon at Tue Aug 25 20:41:14 IST 2026
[2026-08-25 20:41:14,292.292 INFO    ] ================================================
[2026-08-25 20:41:14,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:41:14
[2026-08-25 20:41:15,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:41:15,712.712 INFO    ] Initializing speech engine...
[2026-08-25 20:41:15,721.721 INFO    ] 2026-08-25 20:41:15
[2026-08-25 20:41:15,967.967 INFO    ] 2026-08-25 20:41:15
[2026-08-25 20:41:16,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:41:16,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:41:16,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:41:16,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:41:16,333.333 INFO    ] time= 25/08/2026 20:41:16
[2026-08-25 20:41:16,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:41:16,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:41:16,530.530 INFO    ] No existing commands found in stream
[2026-08-25 20:41:21,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:41:21,545.545 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 20:41:24,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:41:24,868.868 INFO    ] Checking for system updates...
[2026-08-25 20:41:24,904.904 INFO    ] 200
[2026-08-25 20:41:24,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:24,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:41:24,969.969 INFO    ] No update needed
[2026-08-25 20:41:24,971.971 INFO    ] Checking for camera pi updates...
[2026-08-25 20:41:25,004.004 INFO    ] 200
[2026-08-25 20:41:25,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:25,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:41:25,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:41:25,115.115 INFO    ] No camera update needed
[2026-08-25 20:41:25,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:41:25,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:41:25,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:41:25,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:41:27,171.171 INFO    ] ================================================
[2026-08-25 20:41:27,496.496 INFO    ] Launching Daemon at Tue Aug 25 20:41:27 IST 2026
[2026-08-25 20:41:27,507.507 INFO    ] ================================================
[2026-08-25 20:41:28,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:41:28
[2026-08-25 20:41:28,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:41:29,157.157 INFO    ] Initializing speech engine...
[2026-08-25 20:41:29,171.171 INFO    ] 2026-08-25 20:41:29
[2026-08-25 20:41:29,481.481 INFO    ] 2026-08-25 20:41:29
[2026-08-25 20:41:29,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:41:29,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:41:29,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:41:29,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:41:29,987.987 INFO    ] time= 25/08/2026 20:41:29
[2026-08-25 20:41:30,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:41:30,037.037 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:41:30,137.137 INFO    ] No existing commands found in stream
[2026-08-25 20:41:35,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:41:35,157.157 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 20:41:38,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:41:38,840.840 INFO    ] Checking for system updates...
[2026-08-25 20:41:38,878.878 INFO    ] 200
[2026-08-25 20:41:38,881.881 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:38,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:41:38,936.936 INFO    ] No update needed
[2026-08-25 20:41:38,939.939 INFO    ] Checking for camera pi updates...
[2026-08-25 20:41:38,977.977 INFO    ] 200
[2026-08-25 20:41:38,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:39,020.020 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:41:39,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:41:39,165.165 INFO    ] No camera update needed
[2026-08-25 20:41:39,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:41:39,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:41:39,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:41:39,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:41:41,220.220 INFO    ] ================================================
[2026-08-25 20:41:41,235.235 INFO    ] Launching Daemon at Tue Aug 25 20:41:41 IST 2026
[2026-08-25 20:41:41,246.246 INFO    ] ================================================
[2026-08-25 20:41:41,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:41:41
[2026-08-25 20:41:42,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:41:42,758.758 INFO    ] Initializing speech engine...
[2026-08-25 20:41:42,764.764 INFO    ] 2026-08-25 20:41:42
[2026-08-25 20:41:43,027.027 INFO    ] 2026-08-25 20:41:43
[2026-08-25 20:41:43,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:41:43,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:41:43,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:41:43,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:41:43,530.530 INFO    ] time= 25/08/2026 20:41:43
[2026-08-25 20:41:43,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:41:43,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:41:43,757.757 INFO    ] No existing commands found in stream
[2026-08-25 20:41:48,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:41:48,789.789 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 20:41:50,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:41:50,893.893 INFO    ] Checking for system updates...
[2026-08-25 20:41:50,934.934 INFO    ] 200
[2026-08-25 20:41:50,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:50,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:41:50,993.993 INFO    ] No update needed
[2026-08-25 20:41:50,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 20:41:51,031.031 INFO    ] 200
[2026-08-25 20:41:51,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:41:51,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:41:51,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:41:51,141.141 INFO    ] No camera update needed
[2026-08-25 20:41:51,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:41:51,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:41:51,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:41:51,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:41:53,201.201 INFO    ] ================================================
[2026-08-25 20:41:53,216.216 INFO    ] Launching Daemon at Tue Aug 25 20:41:53 IST 2026
[2026-08-25 20:41:53,227.227 INFO    ] ================================================
[2026-08-25 20:41:53,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:41:53
[2026-08-25 20:41:54,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:41:54,816.816 INFO    ] Initializing speech engine...
[2026-08-25 20:41:54,827.827 INFO    ] 2026-08-25 20:41:54
[2026-08-25 20:41:55,136.136 INFO    ] 2026-08-25 20:41:55
[2026-08-25 20:41:55,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:41:55,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:41:55,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:41:55,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:41:55,639.639 INFO    ] time= 25/08/2026 20:41:55
[2026-08-25 20:41:55,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:41:55,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:41:55,835.835 INFO    ] No existing commands found in stream
[2026-08-25 20:42:00,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:42:00,864.864 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 20:42:03,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:42:03,543.543 INFO    ] Checking for system updates...
[2026-08-25 20:42:03,581.581 INFO    ] 200
[2026-08-25 20:42:03,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:03,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:03,638.638 INFO    ] No update needed
[2026-08-25 20:42:03,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 20:42:03,680.680 INFO    ] 200
[2026-08-25 20:42:03,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:03,724.724 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:42:03,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:03,782.782 INFO    ] No camera update needed
[2026-08-25 20:42:03,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:42:03,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:42:03,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:42:03,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:42:05,838.838 INFO    ] ================================================
[2026-08-25 20:42:05,854.854 INFO    ] Launching Daemon at Tue Aug 25 20:42:05 IST 2026
[2026-08-25 20:42:05,864.864 INFO    ] ================================================
[2026-08-25 20:42:06,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:42:06
[2026-08-25 20:42:07,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:42:07,350.350 INFO    ] Initializing speech engine...
[2026-08-25 20:42:07,359.359 INFO    ] 2026-08-25 20:42:07
[2026-08-25 20:42:07,605.605 INFO    ] 2026-08-25 20:42:07
[2026-08-25 20:42:07,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:42:07,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:42:07,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:42:08,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:42:08,086.086 INFO    ] time= 25/08/2026 20:42:08
[2026-08-25 20:42:08,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:42:08,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:42:08,311.311 INFO    ] No existing commands found in stream
[2026-08-25 20:42:13,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:42:13,330.330 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 20:42:15,816.816 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:42:15,819.819 INFO    ] Checking for system updates...
[2026-08-25 20:42:15,856.856 INFO    ] 200
[2026-08-25 20:42:15,859.859 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:15,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:42:15,921.921 INFO    ] No update needed
[2026-08-25 20:42:15,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 20:42:15,963.963 INFO    ] 200
[2026-08-25 20:42:15,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:16,012.012 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:42:16,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:42:16,070.070 INFO    ] No camera update needed
[2026-08-25 20:42:16,072.072 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:42:16,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:42:16,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:42:16,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:42:18,129.129 INFO    ] ================================================
[2026-08-25 20:42:18,145.145 INFO    ] Launching Daemon at Tue Aug 25 20:42:18 IST 2026
[2026-08-25 20:42:18,155.155 INFO    ] ================================================
[2026-08-25 20:42:18,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:42:18
[2026-08-25 20:42:19,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:42:19,626.626 INFO    ] Initializing speech engine...
[2026-08-25 20:42:19,632.632 INFO    ] 2026-08-25 20:42:19
[2026-08-25 20:42:19,881.881 INFO    ] 2026-08-25 20:42:19
[2026-08-25 20:42:19,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:42:20,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:42:20,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:42:20,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:42:20,378.378 INFO    ] time= 25/08/2026 20:42:20
[2026-08-25 20:42:20,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:42:20,447.447 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:42:20,561.561 INFO    ] No existing commands found in stream
[2026-08-25 20:42:25,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:42:25,590.590 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 20:42:26,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:42:26,950.950 INFO    ] Checking for system updates...
[2026-08-25 20:42:26,986.986 INFO    ] 200
[2026-08-25 20:42:26,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:27,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:27,047.047 INFO    ] No update needed
[2026-08-25 20:42:27,050.050 INFO    ] Checking for camera pi updates...
[2026-08-25 20:42:27,083.083 INFO    ] 200
[2026-08-25 20:42:27,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:27,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:42:27,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:27,177.177 INFO    ] No camera update needed
[2026-08-25 20:42:27,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:42:27,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:42:27,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:42:27,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:42:29,233.233 INFO    ] ================================================
[2026-08-25 20:42:29,248.248 INFO    ] Launching Daemon at Tue Aug 25 20:42:29 IST 2026
[2026-08-25 20:42:29,259.259 INFO    ] ================================================
[2026-08-25 20:42:29,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:42:29
[2026-08-25 20:42:30,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:42:30,801.801 INFO    ] Initializing speech engine...
[2026-08-25 20:42:30,813.813 INFO    ] 2026-08-25 20:42:30
[2026-08-25 20:42:31,096.096 INFO    ] 2026-08-25 20:42:31
[2026-08-25 20:42:31,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:42:31,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:42:31,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:42:31,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:42:31,641.641 INFO    ] time= 25/08/2026 20:42:31
[2026-08-25 20:42:31,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:42:31,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:42:31,847.847 INFO    ] No existing commands found in stream
[2026-08-25 20:42:36,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:42:36,881.881 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 20:42:40,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:42:40,499.499 INFO    ] Checking for system updates...
[2026-08-25 20:42:40,536.536 INFO    ] 200
[2026-08-25 20:42:40,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:40,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:40,603.603 INFO    ] No update needed
[2026-08-25 20:42:40,606.606 INFO    ] Checking for camera pi updates...
[2026-08-25 20:42:40,641.641 INFO    ] 200
[2026-08-25 20:42:40,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:40,691.691 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:42:40,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:40,743.743 INFO    ] No camera update needed
[2026-08-25 20:42:40,745.745 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:42:40,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:42:40,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:42:40,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:42:42,797.797 INFO    ] ================================================
[2026-08-25 20:42:42,818.818 INFO    ] Launching Daemon at Tue Aug 25 20:42:42 IST 2026
[2026-08-25 20:42:42,829.829 INFO    ] ================================================
[2026-08-25 20:42:43,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:42:43
[2026-08-25 20:42:43,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:42:44,256.256 INFO    ] Initializing speech engine...
[2026-08-25 20:42:44,267.267 INFO    ] 2026-08-25 20:42:44
[2026-08-25 20:42:44,515.515 INFO    ] 2026-08-25 20:42:44
[2026-08-25 20:42:44,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:42:44,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:42:44,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:42:44,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:42:44,988.988 INFO    ] time= 25/08/2026 20:42:44
[2026-08-25 20:42:45,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:42:45,081.081 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:42:45,205.205 INFO    ] No existing commands found in stream
[2026-08-25 20:42:50,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:42:50,238.238 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 20:42:51,413.413 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:42:51,416.416 INFO    ] Checking for system updates...
[2026-08-25 20:42:51,453.453 INFO    ] 200
[2026-08-25 20:42:51,456.456 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:51,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:51,514.514 INFO    ] No update needed
[2026-08-25 20:42:51,517.517 INFO    ] Checking for camera pi updates...
[2026-08-25 20:42:51,551.551 INFO    ] 200
[2026-08-25 20:42:51,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:42:51,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:42:51,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:42:51,662.662 INFO    ] No camera update needed
[2026-08-25 20:42:51,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:42:51,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:42:51,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:42:51,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:42:53,718.718 INFO    ] ================================================
[2026-08-25 20:42:53,733.733 INFO    ] Launching Daemon at Tue Aug 25 20:42:53 IST 2026
[2026-08-25 20:42:53,744.744 INFO    ] ================================================
[2026-08-25 20:42:54,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:42:54
[2026-08-25 20:42:54,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:42:55,192.192 INFO    ] Initializing speech engine...
[2026-08-25 20:42:55,200.200 INFO    ] 2026-08-25 20:42:55
[2026-08-25 20:42:55,501.501 INFO    ] 2026-08-25 20:42:55
[2026-08-25 20:42:55,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:42:55,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:42:55,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:42:55,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:42:55,885.885 INFO    ] time= 25/08/2026 20:42:55
[2026-08-25 20:42:55,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:42:55,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:42:56,014.014 INFO    ] No existing commands found in stream
[2026-08-25 20:43:01,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:43:01,028.028 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 20:43:04,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:43:04,387.387 INFO    ] Checking for system updates...
[2026-08-25 20:43:04,423.423 INFO    ] 200
[2026-08-25 20:43:04,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:04,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:04,480.480 INFO    ] No update needed
[2026-08-25 20:43:04,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 20:43:04,517.517 INFO    ] 200
[2026-08-25 20:43:04,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:04,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:43:04,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:04,612.612 INFO    ] No camera update needed
[2026-08-25 20:43:04,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:43:04,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:43:04,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:43:04,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:43:06,666.666 INFO    ] ================================================
[2026-08-25 20:43:06,681.681 INFO    ] Launching Daemon at Tue Aug 25 20:43:06 IST 2026
[2026-08-25 20:43:06,692.692 INFO    ] ================================================
[2026-08-25 20:43:07,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:43:07
[2026-08-25 20:43:07,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:43:08,111.111 INFO    ] Initializing speech engine...
[2026-08-25 20:43:08,120.120 INFO    ] 2026-08-25 20:43:08
[2026-08-25 20:43:08,365.365 INFO    ] 2026-08-25 20:43:08
[2026-08-25 20:43:08,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:43:08,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:43:08,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:43:08,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:43:08,871.871 INFO    ] time= 25/08/2026 20:43:08
[2026-08-25 20:43:08,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:43:08,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:43:09,062.062 INFO    ] No existing commands found in stream
[2026-08-25 20:43:14,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:43:14,086.086 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 20:43:17,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:43:17,808.808 INFO    ] Checking for system updates...
[2026-08-25 20:43:17,847.847 INFO    ] 200
[2026-08-25 20:43:17,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:17,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:17,904.904 INFO    ] No update needed
[2026-08-25 20:43:17,907.907 INFO    ] Checking for camera pi updates...
[2026-08-25 20:43:17,952.952 INFO    ] 200
[2026-08-25 20:43:17,955.955 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:18,010.010 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:43:18,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:18,058.058 INFO    ] No camera update needed
[2026-08-25 20:43:18,061.061 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:43:18,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:43:18,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:43:18,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:43:20,114.114 INFO    ] ================================================
[2026-08-25 20:43:20,130.130 INFO    ] Launching Daemon at Tue Aug 25 20:43:20 IST 2026
[2026-08-25 20:43:20,140.140 INFO    ] ================================================
[2026-08-25 20:43:20,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:43:20
[2026-08-25 20:43:21,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:43:21,552.552 INFO    ] Initializing speech engine...
[2026-08-25 20:43:21,558.558 INFO    ] 2026-08-25 20:43:21
[2026-08-25 20:43:21,859.859 INFO    ] 2026-08-25 20:43:21
[2026-08-25 20:43:21,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:43:22,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:43:22,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:43:22,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:43:22,294.294 INFO    ] time= 25/08/2026 20:43:22
[2026-08-25 20:43:22,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:43:22,305.305 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:43:22,379.379 INFO    ] No existing commands found in stream
[2026-08-25 20:43:27,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:43:27,393.393 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-08-25 20:43:29,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:43:29,211.211 INFO    ] Checking for system updates...
[2026-08-25 20:43:29,246.246 INFO    ] 200
[2026-08-25 20:43:29,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:29,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:43:29,303.303 INFO    ] No update needed
[2026-08-25 20:43:29,305.305 INFO    ] Checking for camera pi updates...
[2026-08-25 20:43:29,340.340 INFO    ] 200
[2026-08-25 20:43:29,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:29,383.383 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:43:29,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:43:29,437.437 INFO    ] No camera update needed
[2026-08-25 20:43:29,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:43:29,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:43:29,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:43:29,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:43:31,495.495 INFO    ] ================================================
[2026-08-25 20:43:31,511.511 INFO    ] Launching Daemon at Tue Aug 25 20:43:31 IST 2026
[2026-08-25 20:43:31,523.523 INFO    ] ================================================
[2026-08-25 20:43:32,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:43:32
[2026-08-25 20:43:32,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:43:33,138.138 INFO    ] Initializing speech engine...
[2026-08-25 20:43:33,145.145 INFO    ] 2026-08-25 20:43:33
[2026-08-25 20:43:33,418.418 INFO    ] 2026-08-25 20:43:33
[2026-08-25 20:43:33,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:43:33,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:43:33,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:43:33,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:43:33,868.868 INFO    ] time= 25/08/2026 20:43:33
[2026-08-25 20:43:33,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:43:33,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:43:34,105.105 INFO    ] No existing commands found in stream
[2026-08-25 20:43:39,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:43:39,127.127 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-08-25 20:43:41,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:43:41,661.661 INFO    ] Checking for system updates...
[2026-08-25 20:43:41,701.701 INFO    ] 200
[2026-08-25 20:43:41,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:41,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:41,759.759 INFO    ] No update needed
[2026-08-25 20:43:41,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 20:43:41,795.795 INFO    ] 200
[2026-08-25 20:43:41,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:41,843.843 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:43:41,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:41,989.989 INFO    ] No camera update needed
[2026-08-25 20:43:41,991.991 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:43:41,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:43:42,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:43:42,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:43:44,045.045 INFO    ] ================================================
[2026-08-25 20:43:44,061.061 INFO    ] Launching Daemon at Tue Aug 25 20:43:44 IST 2026
[2026-08-25 20:43:44,072.072 INFO    ] ================================================
[2026-08-25 20:43:44,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:43:44
[2026-08-25 20:43:45,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:43:45,496.496 INFO    ] Initializing speech engine...
[2026-08-25 20:43:45,505.505 INFO    ] 2026-08-25 20:43:45
[2026-08-25 20:43:45,773.773 INFO    ] 2026-08-25 20:43:45
[2026-08-25 20:43:45,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:43:46,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:43:46,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:43:46,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:43:46,196.196 INFO    ] time= 25/08/2026 20:43:46
[2026-08-25 20:43:46,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:43:46,208.208 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:43:46,285.285 INFO    ] No existing commands found in stream
[2026-08-25 20:43:51,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:43:51,318.318 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 20:43:55,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:43:55,042.042 INFO    ] Checking for system updates...
[2026-08-25 20:43:55,078.078 INFO    ] 200
[2026-08-25 20:43:55,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:55,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:55,135.135 INFO    ] No update needed
[2026-08-25 20:43:55,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 20:43:55,171.171 INFO    ] 200
[2026-08-25 20:43:55,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:43:55,218.218 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:43:55,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:43:55,268.268 INFO    ] No camera update needed
[2026-08-25 20:43:55,270.270 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:43:55,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:43:55,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:43:55,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:43:57,323.323 INFO    ] ================================================
[2026-08-25 20:43:57,339.339 INFO    ] Launching Daemon at Tue Aug 25 20:43:57 IST 2026
[2026-08-25 20:43:57,351.351 INFO    ] ================================================
[2026-08-25 20:43:57,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:43:57
[2026-08-25 20:43:58,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:43:58,766.766 INFO    ] Initializing speech engine...
[2026-08-25 20:43:58,775.775 INFO    ] 2026-08-25 20:43:58
[2026-08-25 20:43:59,039.039 INFO    ] 2026-08-25 20:43:59
[2026-08-25 20:43:59,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:43:59,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:43:59,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:43:59,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:43:59,421.421 INFO    ] time= 25/08/2026 20:43:59
[2026-08-25 20:43:59,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:43:59,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:43:59,547.547 INFO    ] No existing commands found in stream
[2026-08-25 20:44:04,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:44:04,562.562 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 20:44:10,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:44:10,276.276 INFO    ] Checking for system updates...
[2026-08-25 20:44:10,311.311 INFO    ] 200
[2026-08-25 20:44:10,314.314 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:10,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:10,371.371 INFO    ] No update needed
[2026-08-25 20:44:10,373.373 INFO    ] Checking for camera pi updates...
[2026-08-25 20:44:10,407.407 INFO    ] 200
[2026-08-25 20:44:10,409.409 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:10,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:44:10,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:10,509.509 INFO    ] No camera update needed
[2026-08-25 20:44:10,511.511 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:44:10,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:44:10,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:44:10,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:44:12,565.565 INFO    ] ================================================
[2026-08-25 20:44:12,580.580 INFO    ] Launching Daemon at Tue Aug 25 20:44:12 IST 2026
[2026-08-25 20:44:12,591.591 INFO    ] ================================================
[2026-08-25 20:44:13,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:44:13
[2026-08-25 20:44:13,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:44:14,059.059 INFO    ] Initializing speech engine...
[2026-08-25 20:44:14,067.067 INFO    ] 2026-08-25 20:44:14
[2026-08-25 20:44:14,354.354 INFO    ] 2026-08-25 20:44:14
[2026-08-25 20:44:14,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:44:14,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:44:14,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:44:14,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:44:14,756.756 INFO    ] time= 25/08/2026 20:44:14
[2026-08-25 20:44:14,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:44:14,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:44:14,929.929 INFO    ] No existing commands found in stream
[2026-08-25 20:44:19,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:44:19,962.962 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 20:44:21,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:44:21,252.252 INFO    ] Checking for system updates...
[2026-08-25 20:44:21,288.288 INFO    ] 200
[2026-08-25 20:44:21,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:21,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:21,344.344 INFO    ] No update needed
[2026-08-25 20:44:21,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 20:44:21,382.382 INFO    ] 200
[2026-08-25 20:44:21,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:21,425.425 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:44:21,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:21,478.478 INFO    ] No camera update needed
[2026-08-25 20:44:21,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:44:21,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:44:21,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:44:21,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:44:23,534.534 INFO    ] ================================================
[2026-08-25 20:44:23,549.549 INFO    ] Launching Daemon at Tue Aug 25 20:44:23 IST 2026
[2026-08-25 20:44:23,560.560 INFO    ] ================================================
[2026-08-25 20:44:24,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:44:24
[2026-08-25 20:44:24,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:44:24,962.962 INFO    ] Initializing speech engine...
[2026-08-25 20:44:24,969.969 INFO    ] 2026-08-25 20:44:24
[2026-08-25 20:44:25,252.252 INFO    ] 2026-08-25 20:44:25
[2026-08-25 20:44:25,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:44:25,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:44:25,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:44:25,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:44:25,632.632 INFO    ] time= 25/08/2026 20:44:25
[2026-08-25 20:44:25,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:44:25,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:44:25,735.735 INFO    ] No existing commands found in stream
[2026-08-25 20:44:30,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:44:30,751.751 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 20:44:31,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:44:31,757.757 INFO    ] Checking for system updates...
[2026-08-25 20:44:31,796.796 INFO    ] 200
[2026-08-25 20:44:31,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:31,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:31,857.857 INFO    ] No update needed
[2026-08-25 20:44:31,859.859 INFO    ] Checking for camera pi updates...
[2026-08-25 20:44:31,897.897 INFO    ] 200
[2026-08-25 20:44:31,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:31,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:44:32,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:32,014.014 INFO    ] No camera update needed
[2026-08-25 20:44:32,016.016 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:44:32,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:44:32,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:44:32,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:44:34,071.071 INFO    ] ================================================
[2026-08-25 20:44:34,086.086 INFO    ] Launching Daemon at Tue Aug 25 20:44:34 IST 2026
[2026-08-25 20:44:34,097.097 INFO    ] ================================================
[2026-08-25 20:44:34,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:44:34
[2026-08-25 20:44:35,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:44:35,650.650 INFO    ] Initializing speech engine...
[2026-08-25 20:44:35,658.658 INFO    ] 2026-08-25 20:44:35
[2026-08-25 20:44:35,939.939 INFO    ] 2026-08-25 20:44:35
[2026-08-25 20:44:35,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:44:36,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:44:36,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:44:36,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:44:36,474.474 INFO    ] time= 25/08/2026 20:44:36
[2026-08-25 20:44:36,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:44:36,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:44:36,615.615 INFO    ] No existing commands found in stream
[2026-08-25 20:44:41,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:44:41,640.640 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 20:44:44,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:44:44,214.214 INFO    ] Checking for system updates...
[2026-08-25 20:44:44,250.250 INFO    ] 200
[2026-08-25 20:44:44,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:44,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:44,310.310 INFO    ] No update needed
[2026-08-25 20:44:44,312.312 INFO    ] Checking for camera pi updates...
[2026-08-25 20:44:44,347.347 INFO    ] 200
[2026-08-25 20:44:44,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:44,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:44:44,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:44,450.450 INFO    ] No camera update needed
[2026-08-25 20:44:44,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:44:44,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:44:44,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:44:44,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:44:46,506.506 INFO    ] ================================================
[2026-08-25 20:44:46,521.521 INFO    ] Launching Daemon at Tue Aug 25 20:44:46 IST 2026
[2026-08-25 20:44:46,532.532 INFO    ] ================================================
[2026-08-25 20:44:47,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:44:47
[2026-08-25 20:44:47,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:44:47,937.937 INFO    ] Initializing speech engine...
[2026-08-25 20:44:47,945.945 INFO    ] 2026-08-25 20:44:47
[2026-08-25 20:44:48,230.230 INFO    ] 2026-08-25 20:44:48
[2026-08-25 20:44:48,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:44:48,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:44:48,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:44:48,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:44:48,667.667 INFO    ] time= 25/08/2026 20:44:48
[2026-08-25 20:44:48,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:44:48,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:44:48,849.849 INFO    ] No existing commands found in stream
[2026-08-25 20:44:53,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:44:53,880.880 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 20:44:58,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:44:58,168.168 INFO    ] Checking for system updates...
[2026-08-25 20:44:58,207.207 INFO    ] 200
[2026-08-25 20:44:58,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:58,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:58,265.265 INFO    ] No update needed
[2026-08-25 20:44:58,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 20:44:58,305.305 INFO    ] 200
[2026-08-25 20:44:58,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:44:58,348.348 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:44:58,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:44:58,397.397 INFO    ] No camera update needed
[2026-08-25 20:44:58,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:44:58,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:44:58,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:44:58,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:45:00,457.457 INFO    ] ================================================
[2026-08-25 20:45:00,472.472 INFO    ] Launching Daemon at Tue Aug 25 20:45:00 IST 2026
[2026-08-25 20:45:00,483.483 INFO    ] ================================================
[2026-08-25 20:45:01,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:45:01
[2026-08-25 20:45:02,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:45:02,803.803 INFO    ] Initializing speech engine...
[2026-08-25 20:45:02,807.807 INFO    ] 2026-08-25 20:45:02
[2026-08-25 20:45:03,141.141 INFO    ] 2026-08-25 20:45:03
[2026-08-25 20:45:03,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:45:03,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:45:03,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:45:03,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:45:03,565.565 INFO    ] time= 25/08/2026 20:45:03
[2026-08-25 20:45:03,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:45:03,641.641 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:45:03,720.720 INFO    ] No existing commands found in stream
[2026-08-25 20:45:08,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:45:08,734.734 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 20:45:09,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:45:09,652.652 INFO    ] Checking for system updates...
[2026-08-25 20:45:09,688.688 INFO    ] 200
[2026-08-25 20:45:09,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:09,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:45:09,746.746 INFO    ] No update needed
[2026-08-25 20:45:09,749.749 INFO    ] Checking for camera pi updates...
[2026-08-25 20:45:09,782.782 INFO    ] 200
[2026-08-25 20:45:09,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:09,831.831 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:45:09,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:45:09,878.878 INFO    ] No camera update needed
[2026-08-25 20:45:09,880.880 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:45:09,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:45:09,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:45:09,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:45:11,932.932 INFO    ] ================================================
[2026-08-25 20:45:11,948.948 INFO    ] Launching Daemon at Tue Aug 25 20:45:11 IST 2026
[2026-08-25 20:45:11,959.959 INFO    ] ================================================
[2026-08-25 20:45:12,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:45:12
[2026-08-25 20:45:13,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:45:13,410.410 INFO    ] Initializing speech engine...
[2026-08-25 20:45:13,413.413 INFO    ] 2026-08-25 20:45:13
[2026-08-25 20:45:13,680.680 INFO    ] 2026-08-25 20:45:13
[2026-08-25 20:45:13,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:45:13,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:45:13,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:45:14,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:45:14,154.154 INFO    ] time= 25/08/2026 20:45:14
[2026-08-25 20:45:14,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:45:14,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:45:14,417.417 INFO    ] No existing commands found in stream
[2026-08-25 20:45:19,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:45:19,438.438 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 20:45:21,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:45:22,001.001 INFO    ] Checking for system updates...
[2026-08-25 20:45:22,036.036 INFO    ] 200
[2026-08-25 20:45:22,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:22,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:45:22,094.094 INFO    ] No update needed
[2026-08-25 20:45:22,097.097 INFO    ] Checking for camera pi updates...
[2026-08-25 20:45:22,131.131 INFO    ] 200
[2026-08-25 20:45:22,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:22,175.175 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:45:22,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:45:22,226.226 INFO    ] No camera update needed
[2026-08-25 20:45:22,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:45:22,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:45:22,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:45:22,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:45:24,289.289 INFO    ] ================================================
[2026-08-25 20:45:24,305.305 INFO    ] Launching Daemon at Tue Aug 25 20:45:24 IST 2026
[2026-08-25 20:45:24,316.316 INFO    ] ================================================
[2026-08-25 20:45:24,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:45:24
[2026-08-25 20:45:25,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:45:25,908.908 INFO    ] Initializing speech engine...
[2026-08-25 20:45:25,915.915 INFO    ] 2026-08-25 20:45:25
[2026-08-25 20:45:26,190.190 INFO    ] 2026-08-25 20:45:26
[2026-08-25 20:45:26,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:45:26,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:45:26,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:45:26,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:45:26,691.691 INFO    ] time= 25/08/2026 20:45:26
[2026-08-25 20:45:26,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:45:26,759.759 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:45:26,901.901 INFO    ] No existing commands found in stream
[2026-08-25 20:45:31,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:45:31,921.921 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 20:45:34,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:45:34,609.609 INFO    ] Checking for system updates...
[2026-08-25 20:45:34,646.646 INFO    ] 200
[2026-08-25 20:45:34,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:34,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:45:34,704.704 INFO    ] No update needed
[2026-08-25 20:45:34,707.707 INFO    ] Checking for camera pi updates...
[2026-08-25 20:45:34,742.742 INFO    ] 200
[2026-08-25 20:45:34,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:34,785.785 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:45:34,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:45:34,843.843 INFO    ] No camera update needed
[2026-08-25 20:45:34,846.846 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:45:34,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:45:34,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:45:34,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:45:36,898.898 INFO    ] ================================================
[2026-08-25 20:45:36,913.913 INFO    ] Launching Daemon at Tue Aug 25 20:45:36 IST 2026
[2026-08-25 20:45:36,924.924 INFO    ] ================================================
[2026-08-25 20:45:37,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:45:37
[2026-08-25 20:45:38,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:45:38,524.524 INFO    ] Initializing speech engine...
[2026-08-25 20:45:38,538.538 INFO    ] 2026-08-25 20:45:38
[2026-08-25 20:45:38,812.812 INFO    ] 2026-08-25 20:45:38
[2026-08-25 20:45:38,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:45:39,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:45:39,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:45:39,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:45:39,368.368 INFO    ] time= 25/08/2026 20:45:39
[2026-08-25 20:45:39,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:45:39,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:45:39,538.538 INFO    ] No existing commands found in stream
[2026-08-25 20:45:44,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:45:44,568.568 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 20:45:48,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:45:48,159.159 INFO    ] Checking for system updates...
[2026-08-25 20:45:48,195.195 INFO    ] 200
[2026-08-25 20:45:48,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:48,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:45:48,256.256 INFO    ] No update needed
[2026-08-25 20:45:48,259.259 INFO    ] Checking for camera pi updates...
[2026-08-25 20:45:48,298.298 INFO    ] 200
[2026-08-25 20:45:48,300.300 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:48,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:45:48,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:45:48,485.485 INFO    ] No camera update needed
[2026-08-25 20:45:48,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:45:48,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:45:48,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:45:48,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:45:50,540.540 INFO    ] ================================================
[2026-08-25 20:45:50,555.555 INFO    ] Launching Daemon at Tue Aug 25 20:45:50 IST 2026
[2026-08-25 20:45:50,566.566 INFO    ] ================================================
[2026-08-25 20:45:51,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:45:51
[2026-08-25 20:45:51,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:45:51,989.989 INFO    ] Initializing speech engine...
[2026-08-25 20:45:51,998.998 INFO    ] 2026-08-25 20:45:51
[2026-08-25 20:45:52,248.248 INFO    ] 2026-08-25 20:45:52
[2026-08-25 20:45:52,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:45:52,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:45:52,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:45:52,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:45:52,755.755 INFO    ] time= 25/08/2026 20:45:52
[2026-08-25 20:45:52,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:45:52,827.827 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:45:52,975.975 INFO    ] No existing commands found in stream
[2026-08-25 20:45:57,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:45:57,986.986 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 20:45:59,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:45:59,125.125 INFO    ] Checking for system updates...
[2026-08-25 20:45:59,161.161 INFO    ] 200
[2026-08-25 20:45:59,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:59,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:45:59,218.218 INFO    ] No update needed
[2026-08-25 20:45:59,220.220 INFO    ] Checking for camera pi updates...
[2026-08-25 20:45:59,254.254 INFO    ] 200
[2026-08-25 20:45:59,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:45:59,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:45:59,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:45:59,354.354 INFO    ] No camera update needed
[2026-08-25 20:45:59,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:45:59,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:45:59,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:45:59,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:46:01,416.416 INFO    ] ================================================
[2026-08-25 20:46:01,442.442 INFO    ] Launching Daemon at Tue Aug 25 20:46:01 IST 2026
[2026-08-25 20:46:01,461.461 INFO    ] ================================================
[2026-08-25 20:46:02,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:46:02
[2026-08-25 20:46:02,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:46:03,074.074 INFO    ] Initializing speech engine...
[2026-08-25 20:46:03,082.082 INFO    ] 2026-08-25 20:46:03
[2026-08-25 20:46:03,380.380 INFO    ] 2026-08-25 20:46:03
[2026-08-25 20:46:03,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:46:03,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:46:03,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:46:03,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:46:03,800.800 INFO    ] time= 25/08/2026 20:46:03
[2026-08-25 20:46:03,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:46:03,816.816 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:46:03,892.892 INFO    ] No existing commands found in stream
[2026-08-25 20:46:08,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:46:08,930.930 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 20:46:11,929.929 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:46:11,932.932 INFO    ] Checking for system updates...
[2026-08-25 20:46:11,972.972 INFO    ] 200
[2026-08-25 20:46:11,976.976 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:12,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:46:12,065.065 INFO    ] No update needed
[2026-08-25 20:46:12,068.068 INFO    ] Checking for camera pi updates...
[2026-08-25 20:46:12,101.101 INFO    ] 200
[2026-08-25 20:46:12,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:12,146.146 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:46:12,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:46:12,198.198 INFO    ] No camera update needed
[2026-08-25 20:46:12,200.200 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:46:12,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:46:12,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:46:12,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:46:14,253.253 INFO    ] ================================================
[2026-08-25 20:46:14,268.268 INFO    ] Launching Daemon at Tue Aug 25 20:46:14 IST 2026
[2026-08-25 20:46:14,279.279 INFO    ] ================================================
[2026-08-25 20:46:14,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:46:14
[2026-08-25 20:46:15,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:46:15,703.703 INFO    ] Initializing speech engine...
[2026-08-25 20:46:15,716.716 INFO    ] 2026-08-25 20:46:15
[2026-08-25 20:46:16,000.000 INFO    ] 2026-08-25 20:46:15
[2026-08-25 20:46:16,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:46:16,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:46:16,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:46:16,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:46:16,379.379 INFO    ] time= 25/08/2026 20:46:16
[2026-08-25 20:46:16,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:46:16,421.421 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:46:16,503.503 INFO    ] No existing commands found in stream
[2026-08-25 20:46:21,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:46:21,517.517 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 20:46:24,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:46:24,298.298 INFO    ] Checking for system updates...
[2026-08-25 20:46:24,334.334 INFO    ] 200
[2026-08-25 20:46:24,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:24,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:46:24,392.392 INFO    ] No update needed
[2026-08-25 20:46:24,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 20:46:24,432.432 INFO    ] 200
[2026-08-25 20:46:24,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:24,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:46:24,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:46:24,528.528 INFO    ] No camera update needed
[2026-08-25 20:46:24,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:46:24,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:46:24,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:46:24,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:46:26,587.587 INFO    ] ================================================
[2026-08-25 20:46:26,602.602 INFO    ] Launching Daemon at Tue Aug 25 20:46:26 IST 2026
[2026-08-25 20:46:26,613.613 INFO    ] ================================================
[2026-08-25 20:46:27,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:46:27
[2026-08-25 20:46:27,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:46:28,044.044 INFO    ] Initializing speech engine...
[2026-08-25 20:46:28,055.055 INFO    ] 2026-08-25 20:46:28
[2026-08-25 20:46:28,300.300 INFO    ] 2026-08-25 20:46:28
[2026-08-25 20:46:28,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:46:28,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:46:28,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:46:28,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:46:28,797.797 INFO    ] time= 25/08/2026 20:46:28
[2026-08-25 20:46:28,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:46:28,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:46:28,998.998 INFO    ] No existing commands found in stream
[2026-08-25 20:46:34,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:46:34,023.023 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 20:46:35,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:46:35,311.311 INFO    ] Checking for system updates...
[2026-08-25 20:46:35,346.346 INFO    ] 200
[2026-08-25 20:46:35,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:35,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:46:35,405.405 INFO    ] No update needed
[2026-08-25 20:46:35,408.408 INFO    ] Checking for camera pi updates...
[2026-08-25 20:46:35,440.440 INFO    ] 200
[2026-08-25 20:46:35,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:35,483.483 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:46:35,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:46:35,532.532 INFO    ] No camera update needed
[2026-08-25 20:46:35,534.534 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:46:35,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:46:35,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:46:35,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:46:37,588.588 INFO    ] ================================================
[2026-08-25 20:46:37,602.602 INFO    ] Launching Daemon at Tue Aug 25 20:46:37 IST 2026
[2026-08-25 20:46:37,616.616 INFO    ] ================================================
[2026-08-25 20:46:38,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:46:38
[2026-08-25 20:46:38,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:46:39,079.079 INFO    ] Initializing speech engine...
[2026-08-25 20:46:39,088.088 INFO    ] 2026-08-25 20:46:39
[2026-08-25 20:46:39,369.369 INFO    ] 2026-08-25 20:46:39
[2026-08-25 20:46:39,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:46:39,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:46:39,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:46:39,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:46:39,869.869 INFO    ] time= 25/08/2026 20:46:39
[2026-08-25 20:46:39,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:46:39,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:46:40,065.065 INFO    ] No existing commands found in stream
[2026-08-25 20:46:45,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:46:45,090.090 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 20:46:49,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:46:49,226.226 INFO    ] Checking for system updates...
[2026-08-25 20:46:49,263.263 INFO    ] 200
[2026-08-25 20:46:49,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:49,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:46:49,332.332 INFO    ] No update needed
[2026-08-25 20:46:49,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 20:46:49,369.369 INFO    ] 200
[2026-08-25 20:46:49,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:46:49,419.419 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:46:49,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:46:49,473.473 INFO    ] No camera update needed
[2026-08-25 20:46:49,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:46:49,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:46:49,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:46:49,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:46:51,530.530 INFO    ] ================================================
[2026-08-25 20:46:51,545.545 INFO    ] Launching Daemon at Tue Aug 25 20:46:51 IST 2026
[2026-08-25 20:46:51,556.556 INFO    ] ================================================
[2026-08-25 20:46:52,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:46:52
[2026-08-25 20:46:52,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:46:53,219.219 INFO    ] Initializing speech engine...
[2026-08-25 20:46:53,230.230 INFO    ] 2026-08-25 20:46:53
[2026-08-25 20:46:53,518.518 INFO    ] 2026-08-25 20:46:53
[2026-08-25 20:46:53,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:46:53,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:46:53,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:46:53,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:46:54,045.045 INFO    ] time= 25/08/2026 20:46:53
[2026-08-25 20:46:54,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:46:54,073.073 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:46:54,204.204 INFO    ] No existing commands found in stream
[2026-08-25 20:46:59,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:46:59,228.228 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 20:47:01,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:47:01,134.134 INFO    ] Checking for system updates...
[2026-08-25 20:47:01,170.170 INFO    ] 200
[2026-08-25 20:47:01,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:01,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:47:01,286.286 INFO    ] No update needed
[2026-08-25 20:47:01,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 20:47:01,364.364 INFO    ] 200
[2026-08-25 20:47:01,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:01,425.425 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:47:01,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:47:01,490.490 INFO    ] No camera update needed
[2026-08-25 20:47:01,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:47:01,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:47:01,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:47:01,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:47:03,556.556 INFO    ] ================================================
[2026-08-25 20:47:03,572.572 INFO    ] Launching Daemon at Tue Aug 25 20:47:03 IST 2026
[2026-08-25 20:47:03,583.583 INFO    ] ================================================
[2026-08-25 20:47:04,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:47:04
[2026-08-25 20:47:04,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:47:05,040.040 INFO    ] Initializing speech engine...
[2026-08-25 20:47:05,050.050 INFO    ] 2026-08-25 20:47:05
[2026-08-25 20:47:05,308.308 INFO    ] 2026-08-25 20:47:05
[2026-08-25 20:47:05,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:47:05,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:47:05,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:47:05,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:47:05,778.778 INFO    ] time= 25/08/2026 20:47:05
[2026-08-25 20:47:05,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:47:05,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:47:05,992.992 INFO    ] No existing commands found in stream
[2026-08-25 20:47:11,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:47:11,016.016 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 20:47:14,319.319 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:47:14,321.321 INFO    ] Checking for system updates...
[2026-08-25 20:47:14,358.358 INFO    ] 200
[2026-08-25 20:47:14,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:14,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:14,416.416 INFO    ] No update needed
[2026-08-25 20:47:14,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 20:47:14,452.452 INFO    ] 200
[2026-08-25 20:47:14,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:14,494.494 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:47:14,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:14,550.550 INFO    ] No camera update needed
[2026-08-25 20:47:14,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:47:14,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:47:14,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:47:14,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:47:16,606.606 INFO    ] ================================================
[2026-08-25 20:47:16,622.622 INFO    ] Launching Daemon at Tue Aug 25 20:47:16 IST 2026
[2026-08-25 20:47:16,633.633 INFO    ] ================================================
[2026-08-25 20:47:17,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:47:17
[2026-08-25 20:47:17,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:47:18,282.282 INFO    ] Initializing speech engine...
[2026-08-25 20:47:18,288.288 INFO    ] 2026-08-25 20:47:18
[2026-08-25 20:47:18,581.581 INFO    ] 2026-08-25 20:47:18
[2026-08-25 20:47:18,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:47:18,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:47:18,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:47:19,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:47:19,134.134 INFO    ] time= 25/08/2026 20:47:19
[2026-08-25 20:47:19,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:47:19,160.160 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:47:19,283.283 INFO    ] No existing commands found in stream
[2026-08-25 20:47:24,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:47:24,307.307 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 20:47:28,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:47:28,114.114 INFO    ] Checking for system updates...
[2026-08-25 20:47:28,152.152 INFO    ] 200
[2026-08-25 20:47:28,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:28,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:28,210.210 INFO    ] No update needed
[2026-08-25 20:47:28,213.213 INFO    ] Checking for camera pi updates...
[2026-08-25 20:47:28,253.253 INFO    ] 200
[2026-08-25 20:47:28,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:28,296.296 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:47:28,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:28,350.350 INFO    ] No camera update needed
[2026-08-25 20:47:28,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:47:28,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:47:28,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:47:28,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:47:30,405.405 INFO    ] ================================================
[2026-08-25 20:47:30,421.421 INFO    ] Launching Daemon at Tue Aug 25 20:47:30 IST 2026
[2026-08-25 20:47:30,432.432 INFO    ] ================================================
[2026-08-25 20:47:31,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:47:30
[2026-08-25 20:47:31,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:47:31,881.881 INFO    ] Initializing speech engine...
[2026-08-25 20:47:31,906.906 INFO    ] 2026-08-25 20:47:31
[2026-08-25 20:47:32,179.179 INFO    ] 2026-08-25 20:47:32
[2026-08-25 20:47:32,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:47:32,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:47:32,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:47:32,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:47:32,575.575 INFO    ] time= 25/08/2026 20:47:32
[2026-08-25 20:47:32,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:47:32,655.655 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:47:32,779.779 INFO    ] No existing commands found in stream
[2026-08-25 20:47:37,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:47:37,797.797 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 20:47:41,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:47:41,367.367 INFO    ] Checking for system updates...
[2026-08-25 20:47:41,403.403 INFO    ] 200
[2026-08-25 20:47:41,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:41,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:41,462.462 INFO    ] No update needed
[2026-08-25 20:47:41,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 20:47:41,499.499 INFO    ] 200
[2026-08-25 20:47:41,501.501 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:41,543.543 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:47:41,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:41,593.593 INFO    ] No camera update needed
[2026-08-25 20:47:41,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:47:41,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:47:41,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:47:41,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:47:43,649.649 INFO    ] ================================================
[2026-08-25 20:47:43,664.664 INFO    ] Launching Daemon at Tue Aug 25 20:47:43 IST 2026
[2026-08-25 20:47:43,675.675 INFO    ] ================================================
[2026-08-25 20:47:44,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:47:44
[2026-08-25 20:47:45,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:47:45,336.336 INFO    ] Initializing speech engine...
[2026-08-25 20:47:45,346.346 INFO    ] 2026-08-25 20:47:45
[2026-08-25 20:47:45,612.612 INFO    ] 2026-08-25 20:47:45
[2026-08-25 20:47:45,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:47:45,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:47:45,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:47:46,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:47:46,142.142 INFO    ] time= 25/08/2026 20:47:46
[2026-08-25 20:47:46,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:47:46,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:47:46,299.299 INFO    ] No existing commands found in stream
[2026-08-25 20:47:51,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:47:51,321.321 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 20:47:55,058.058 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:47:55,061.061 INFO    ] Checking for system updates...
[2026-08-25 20:47:55,097.097 INFO    ] 200
[2026-08-25 20:47:55,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:55,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:55,162.162 INFO    ] No update needed
[2026-08-25 20:47:55,164.164 INFO    ] Checking for camera pi updates...
[2026-08-25 20:47:55,197.197 INFO    ] 200
[2026-08-25 20:47:55,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:47:55,240.240 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:47:55,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:47:55,391.391 INFO    ] No camera update needed
[2026-08-25 20:47:55,394.394 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:47:55,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:47:55,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:47:55,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:47:57,449.449 INFO    ] ================================================
[2026-08-25 20:47:57,465.465 INFO    ] Launching Daemon at Tue Aug 25 20:47:57 IST 2026
[2026-08-25 20:47:57,476.476 INFO    ] ================================================
[2026-08-25 20:47:58,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:47:58
[2026-08-25 20:47:58,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:47:58,928.928 INFO    ] Initializing speech engine...
[2026-08-25 20:47:58,934.934 INFO    ] 2026-08-25 20:47:58
[2026-08-25 20:47:59,182.182 INFO    ] 2026-08-25 20:47:59
[2026-08-25 20:47:59,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:47:59,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:47:59,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:47:59,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:47:59,617.617 INFO    ] time= 25/08/2026 20:47:59
[2026-08-25 20:47:59,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:47:59,703.703 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:47:59,807.807 INFO    ] No existing commands found in stream
[2026-08-25 20:48:04,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:48:04,830.830 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 20:48:08,912.912 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:48:08,915.915 INFO    ] Checking for system updates...
[2026-08-25 20:48:08,951.951 INFO    ] 200
[2026-08-25 20:48:08,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:09,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:09,009.009 INFO    ] No update needed
[2026-08-25 20:48:09,011.011 INFO    ] Checking for camera pi updates...
[2026-08-25 20:48:09,051.051 INFO    ] 200
[2026-08-25 20:48:09,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:09,099.099 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:48:09,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:09,146.146 INFO    ] No camera update needed
[2026-08-25 20:48:09,149.149 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:48:09,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:48:09,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:48:09,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:48:11,203.203 INFO    ] ================================================
[2026-08-25 20:48:11,219.219 INFO    ] Launching Daemon at Tue Aug 25 20:48:11 IST 2026
[2026-08-25 20:48:11,231.231 INFO    ] ================================================
[2026-08-25 20:48:11,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:48:11
[2026-08-25 20:48:12,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:48:12,644.644 INFO    ] Initializing speech engine...
[2026-08-25 20:48:12,665.665 INFO    ] 2026-08-25 20:48:12
[2026-08-25 20:48:12,933.933 INFO    ] 2026-08-25 20:48:12
[2026-08-25 20:48:12,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:48:13,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:48:13,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:48:13,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:48:13,316.316 INFO    ] time= 25/08/2026 20:48:13
[2026-08-25 20:48:13,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:48:13,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:48:13,443.443 INFO    ] No existing commands found in stream
[2026-08-25 20:48:18,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:48:18,481.481 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 20:48:21,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:48:21,605.605 INFO    ] Checking for system updates...
[2026-08-25 20:48:21,640.640 INFO    ] 200
[2026-08-25 20:48:21,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:21,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:21,706.706 INFO    ] No update needed
[2026-08-25 20:48:21,708.708 INFO    ] Checking for camera pi updates...
[2026-08-25 20:48:21,741.741 INFO    ] 200
[2026-08-25 20:48:21,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:21,789.789 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:48:21,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:21,851.851 INFO    ] No camera update needed
[2026-08-25 20:48:21,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:48:21,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:48:21,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:48:21,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:48:23,907.907 INFO    ] ================================================
[2026-08-25 20:48:23,922.922 INFO    ] Launching Daemon at Tue Aug 25 20:48:23 IST 2026
[2026-08-25 20:48:23,933.933 INFO    ] ================================================
[2026-08-25 20:48:24,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:48:24
[2026-08-25 20:48:25,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:48:25,460.460 INFO    ] Initializing speech engine...
[2026-08-25 20:48:25,468.468 INFO    ] 2026-08-25 20:48:25
[2026-08-25 20:48:25,746.746 INFO    ] 2026-08-25 20:48:25
[2026-08-25 20:48:25,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:48:26,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:48:26,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:48:26,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:48:26,191.191 INFO    ] time= 25/08/2026 20:48:26
[2026-08-25 20:48:26,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:48:26,311.311 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:48:26,454.454 INFO    ] No existing commands found in stream
[2026-08-25 20:48:31,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:48:31,481.481 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 20:48:33,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:48:33,706.706 INFO    ] Checking for system updates...
[2026-08-25 20:48:33,742.742 INFO    ] 200
[2026-08-25 20:48:33,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:33,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:48:33,802.802 INFO    ] No update needed
[2026-08-25 20:48:33,805.805 INFO    ] Checking for camera pi updates...
[2026-08-25 20:48:33,839.839 INFO    ] 200
[2026-08-25 20:48:33,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:33,888.888 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:48:33,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:48:33,947.947 INFO    ] No camera update needed
[2026-08-25 20:48:33,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:48:33,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:48:33,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:48:33,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:48:36,001.001 INFO    ] ================================================
[2026-08-25 20:48:36,016.016 INFO    ] Launching Daemon at Tue Aug 25 20:48:36 IST 2026
[2026-08-25 20:48:36,027.027 INFO    ] ================================================
[2026-08-25 20:48:36,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:48:36
[2026-08-25 20:48:37,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:48:37,484.484 INFO    ] Initializing speech engine...
[2026-08-25 20:48:37,492.492 INFO    ] 2026-08-25 20:48:37
[2026-08-25 20:48:37,741.741 INFO    ] 2026-08-25 20:48:37
[2026-08-25 20:48:37,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:48:37,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:48:38,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:48:38,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:48:38,217.217 INFO    ] time= 25/08/2026 20:48:38
[2026-08-25 20:48:38,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:48:38,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:48:38,451.451 INFO    ] No existing commands found in stream
[2026-08-25 20:48:43,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:48:43,468.468 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 20:48:44,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:48:44,793.793 INFO    ] Checking for system updates...
[2026-08-25 20:48:44,828.828 INFO    ] 200
[2026-08-25 20:48:44,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:44,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:44,890.890 INFO    ] No update needed
[2026-08-25 20:48:44,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 20:48:44,928.928 INFO    ] 200
[2026-08-25 20:48:44,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:44,974.974 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:48:45,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:45,031.031 INFO    ] No camera update needed
[2026-08-25 20:48:45,033.033 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:48:45,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:48:45,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:48:45,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:48:47,086.086 INFO    ] ================================================
[2026-08-25 20:48:47,101.101 INFO    ] Launching Daemon at Tue Aug 25 20:48:47 IST 2026
[2026-08-25 20:48:47,112.112 INFO    ] ================================================
[2026-08-25 20:48:47,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:48:47
[2026-08-25 20:48:48,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:48:48,526.526 INFO    ] Initializing speech engine...
[2026-08-25 20:48:48,535.535 INFO    ] 2026-08-25 20:48:48
[2026-08-25 20:48:48,787.787 INFO    ] 2026-08-25 20:48:48
[2026-08-25 20:48:48,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:48:49,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:48:49,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:48:49,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:48:49,259.259 INFO    ] time= 25/08/2026 20:48:49
[2026-08-25 20:48:49,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:48:49,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:48:49,461.461 INFO    ] No existing commands found in stream
[2026-08-25 20:48:54,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:48:54,494.494 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 20:48:58,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:48:58,924.924 INFO    ] Checking for system updates...
[2026-08-25 20:48:58,960.960 INFO    ] 200
[2026-08-25 20:48:58,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:59,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:59,017.017 INFO    ] No update needed
[2026-08-25 20:48:59,019.019 INFO    ] Checking for camera pi updates...
[2026-08-25 20:48:59,059.059 INFO    ] 200
[2026-08-25 20:48:59,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:48:59,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:48:59,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:48:59,153.153 INFO    ] No camera update needed
[2026-08-25 20:48:59,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:48:59,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:48:59,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:48:59,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:49:01,214.214 INFO    ] ================================================
[2026-08-25 20:49:01,253.253 INFO    ] Launching Daemon at Tue Aug 25 20:49:01 IST 2026
[2026-08-25 20:49:01,287.287 INFO    ] ================================================
[2026-08-25 20:49:02,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:49:02
[2026-08-25 20:49:02,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:49:03,106.106 INFO    ] Initializing speech engine...
[2026-08-25 20:49:03,117.117 INFO    ] 2026-08-25 20:49:03
[2026-08-25 20:49:03,392.392 INFO    ] 2026-08-25 20:49:03
[2026-08-25 20:49:03,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:49:03,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:49:03,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:49:03,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:49:03,881.881 INFO    ] time= 25/08/2026 20:49:03
[2026-08-25 20:49:03,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:49:03,964.964 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:49:04,097.097 INFO    ] No existing commands found in stream
[2026-08-25 20:49:09,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:49:09,126.126 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 20:49:12,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:49:12,814.814 INFO    ] Checking for system updates...
[2026-08-25 20:49:12,850.850 INFO    ] 200
[2026-08-25 20:49:12,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:12,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:12,910.910 INFO    ] No update needed
[2026-08-25 20:49:12,913.913 INFO    ] Checking for camera pi updates...
[2026-08-25 20:49:12,949.949 INFO    ] 200
[2026-08-25 20:49:12,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:12,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:49:13,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:13,045.045 INFO    ] No camera update needed
[2026-08-25 20:49:13,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:49:13,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:49:13,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:49:13,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:49:15,099.099 INFO    ] ================================================
[2026-08-25 20:49:15,114.114 INFO    ] Launching Daemon at Tue Aug 25 20:49:15 IST 2026
[2026-08-25 20:49:15,125.125 INFO    ] ================================================
[2026-08-25 20:49:15,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:49:15
[2026-08-25 20:49:16,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:49:16,541.541 INFO    ] Initializing speech engine...
[2026-08-25 20:49:16,550.550 INFO    ] 2026-08-25 20:49:16
[2026-08-25 20:49:16,799.799 INFO    ] 2026-08-25 20:49:16
[2026-08-25 20:49:16,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:49:17,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:49:17,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:49:17,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:49:17,173.173 INFO    ] time= 25/08/2026 20:49:17
[2026-08-25 20:49:17,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:49:17,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:49:17,345.345 INFO    ] No existing commands found in stream
[2026-08-25 20:49:22,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:49:22,372.372 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 20:49:27,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:49:27,040.040 INFO    ] Checking for system updates...
[2026-08-25 20:49:27,078.078 INFO    ] 200
[2026-08-25 20:49:27,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:27,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:27,140.140 INFO    ] No update needed
[2026-08-25 20:49:27,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 20:49:27,179.179 INFO    ] 200
[2026-08-25 20:49:27,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:27,222.222 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:49:27,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:27,276.276 INFO    ] No camera update needed
[2026-08-25 20:49:27,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:49:27,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:49:27,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:49:27,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:49:29,331.331 INFO    ] ================================================
[2026-08-25 20:49:29,347.347 INFO    ] Launching Daemon at Tue Aug 25 20:49:29 IST 2026
[2026-08-25 20:49:29,358.358 INFO    ] ================================================
[2026-08-25 20:49:29,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:49:29
[2026-08-25 20:49:30,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:49:30,817.817 INFO    ] Initializing speech engine...
[2026-08-25 20:49:30,842.842 INFO    ] 2026-08-25 20:49:30
[2026-08-25 20:49:31,110.110 INFO    ] 2026-08-25 20:49:31
[2026-08-25 20:49:31,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:49:31,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:49:31,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:49:31,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:49:31,503.503 INFO    ] time= 25/08/2026 20:49:31
[2026-08-25 20:49:31,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:49:31,550.550 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:49:31,631.631 INFO    ] No existing commands found in stream
[2026-08-25 20:49:36,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:49:36,647.647 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 20:49:41,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:49:41,128.128 INFO    ] Checking for system updates...
[2026-08-25 20:49:41,163.163 INFO    ] 200
[2026-08-25 20:49:41,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:41,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:41,225.225 INFO    ] No update needed
[2026-08-25 20:49:41,227.227 INFO    ] Checking for camera pi updates...
[2026-08-25 20:49:41,264.264 INFO    ] 200
[2026-08-25 20:49:41,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:41,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:49:41,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:41,357.357 INFO    ] No camera update needed
[2026-08-25 20:49:41,359.359 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:49:41,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:49:41,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:49:41,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:49:43,413.413 INFO    ] ================================================
[2026-08-25 20:49:43,428.428 INFO    ] Launching Daemon at Tue Aug 25 20:49:43 IST 2026
[2026-08-25 20:49:43,440.440 INFO    ] ================================================
[2026-08-25 20:49:44,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:49:44
[2026-08-25 20:49:44,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:49:45,046.046 INFO    ] Initializing speech engine...
[2026-08-25 20:49:45,055.055 INFO    ] 2026-08-25 20:49:45
[2026-08-25 20:49:45,328.328 INFO    ] 2026-08-25 20:49:45
[2026-08-25 20:49:45,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:49:45,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:49:45,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:49:45,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:49:45,808.808 INFO    ] time= 25/08/2026 20:49:45
[2026-08-25 20:49:45,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:49:45,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:49:46,053.053 INFO    ] No existing commands found in stream
[2026-08-25 20:49:51,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:49:51,085.085 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 20:49:53,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:49:53,351.351 INFO    ] Checking for system updates...
[2026-08-25 20:49:53,387.387 INFO    ] 200
[2026-08-25 20:49:53,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:53,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:53,452.452 INFO    ] No update needed
[2026-08-25 20:49:53,455.455 INFO    ] Checking for camera pi updates...
[2026-08-25 20:49:53,497.497 INFO    ] 200
[2026-08-25 20:49:53,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:49:53,546.546 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:49:53,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:49:53,615.615 INFO    ] No camera update needed
[2026-08-25 20:49:53,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:49:53,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:49:53,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:49:53,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:49:55,672.672 INFO    ] ================================================
[2026-08-25 20:49:55,687.687 INFO    ] Launching Daemon at Tue Aug 25 20:49:55 IST 2026
[2026-08-25 20:49:55,698.698 INFO    ] ================================================
[2026-08-25 20:49:56,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:49:56
[2026-08-25 20:49:56,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:49:57,152.152 INFO    ] Initializing speech engine...
[2026-08-25 20:49:57,161.161 INFO    ] 2026-08-25 20:49:57
[2026-08-25 20:49:57,411.411 INFO    ] 2026-08-25 20:49:57
[2026-08-25 20:49:57,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:49:57,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:49:57,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:49:57,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:49:57,901.901 INFO    ] time= 25/08/2026 20:49:57
[2026-08-25 20:49:57,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:49:57,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:49:58,105.105 INFO    ] No existing commands found in stream
[2026-08-25 20:50:03,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:50:03,131.131 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 20:50:07,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:50:07,346.346 INFO    ] Checking for system updates...
[2026-08-25 20:50:07,382.382 INFO    ] 200
[2026-08-25 20:50:07,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:07,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:07,446.446 INFO    ] No update needed
[2026-08-25 20:50:07,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 20:50:07,486.486 INFO    ] 200
[2026-08-25 20:50:07,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:07,538.538 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:50:07,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:07,588.588 INFO    ] No camera update needed
[2026-08-25 20:50:07,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:50:07,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:50:07,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:50:07,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:50:09,646.646 INFO    ] ================================================
[2026-08-25 20:50:09,662.662 INFO    ] Launching Daemon at Tue Aug 25 20:50:09 IST 2026
[2026-08-25 20:50:09,673.673 INFO    ] ================================================
[2026-08-25 20:50:10,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:50:10
[2026-08-25 20:50:10,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:50:11,126.126 INFO    ] Initializing speech engine...
[2026-08-25 20:50:11,133.133 INFO    ] 2026-08-25 20:50:11
[2026-08-25 20:50:11,380.380 INFO    ] 2026-08-25 20:50:11
[2026-08-25 20:50:11,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:50:11,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:50:11,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:50:11,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:50:11,853.853 INFO    ] time= 25/08/2026 20:50:11
[2026-08-25 20:50:11,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:50:11,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:50:12,056.056 INFO    ] No existing commands found in stream
[2026-08-25 20:50:17,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:50:17,095.095 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 20:50:17,557.557 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:50:17,559.559 INFO    ] Checking for system updates...
[2026-08-25 20:50:17,597.597 INFO    ] 200
[2026-08-25 20:50:17,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:17,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:17,654.654 INFO    ] No update needed
[2026-08-25 20:50:17,656.656 INFO    ] Checking for camera pi updates...
[2026-08-25 20:50:17,690.690 INFO    ] 200
[2026-08-25 20:50:17,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:17,732.732 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:50:17,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:17,780.780 INFO    ] No camera update needed
[2026-08-25 20:50:17,783.783 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:50:17,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:50:17,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:50:17,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:50:19,836.836 INFO    ] ================================================
[2026-08-25 20:50:19,852.852 INFO    ] Launching Daemon at Tue Aug 25 20:50:19 IST 2026
[2026-08-25 20:50:19,863.863 INFO    ] ================================================
[2026-08-25 20:50:20,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:50:20
[2026-08-25 20:50:21,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:50:21,316.316 INFO    ] Initializing speech engine...
[2026-08-25 20:50:21,324.324 INFO    ] 2026-08-25 20:50:21
[2026-08-25 20:50:21,582.582 INFO    ] 2026-08-25 20:50:21
[2026-08-25 20:50:21,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:50:21,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:50:21,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:50:22,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:50:22,070.070 INFO    ] time= 25/08/2026 20:50:22
[2026-08-25 20:50:22,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:50:22,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:50:22,274.274 INFO    ] No existing commands found in stream
[2026-08-25 20:50:27,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:50:27,293.293 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-08-25 20:50:27,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:50:27,962.962 INFO    ] Checking for system updates...
[2026-08-25 20:50:27,998.998 INFO    ] 200
[2026-08-25 20:50:28,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:28,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:28,061.061 INFO    ] No update needed
[2026-08-25 20:50:28,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 20:50:28,097.097 INFO    ] 200
[2026-08-25 20:50:28,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:28,144.144 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:50:28,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:28,207.207 INFO    ] No camera update needed
[2026-08-25 20:50:28,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:50:28,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:50:28,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:50:28,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:50:30,260.260 INFO    ] ================================================
[2026-08-25 20:50:30,275.275 INFO    ] Launching Daemon at Tue Aug 25 20:50:30 IST 2026
[2026-08-25 20:50:30,287.287 INFO    ] ================================================
[2026-08-25 20:50:30,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:50:30
[2026-08-25 20:50:31,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:50:31,787.787 INFO    ] Initializing speech engine...
[2026-08-25 20:50:31,796.796 INFO    ] 2026-08-25 20:50:31
[2026-08-25 20:50:32,078.078 INFO    ] 2026-08-25 20:50:32
[2026-08-25 20:50:32,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:50:32,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:50:32,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:50:32,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:50:32,613.613 INFO    ] time= 25/08/2026 20:50:32
[2026-08-25 20:50:32,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:50:32,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:50:32,826.826 INFO    ] No existing commands found in stream
[2026-08-25 20:50:37,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:50:37,856.856 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 20:50:40,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:50:40,568.568 INFO    ] Checking for system updates...
[2026-08-25 20:50:40,604.604 INFO    ] 200
[2026-08-25 20:50:40,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:40,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:50:40,666.666 INFO    ] No update needed
[2026-08-25 20:50:40,668.668 INFO    ] Checking for camera pi updates...
[2026-08-25 20:50:40,702.702 INFO    ] 200
[2026-08-25 20:50:40,704.704 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:40,745.745 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:50:40,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:50:40,802.802 INFO    ] No camera update needed
[2026-08-25 20:50:40,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:50:40,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:50:40,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:50:40,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:50:42,859.859 INFO    ] ================================================
[2026-08-25 20:50:42,875.875 INFO    ] Launching Daemon at Tue Aug 25 20:50:42 IST 2026
[2026-08-25 20:50:42,885.885 INFO    ] ================================================
[2026-08-25 20:50:43,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:50:43
[2026-08-25 20:50:44,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:50:44,340.340 INFO    ] Initializing speech engine...
[2026-08-25 20:50:44,348.348 INFO    ] 2026-08-25 20:50:44
[2026-08-25 20:50:44,620.620 INFO    ] 2026-08-25 20:50:44
[2026-08-25 20:50:44,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:50:44,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:50:44,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:50:45,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:50:45,065.065 INFO    ] time= 25/08/2026 20:50:45
[2026-08-25 20:50:45,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:50:45,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:50:45,289.289 INFO    ] No existing commands found in stream
[2026-08-25 20:50:50,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:50:50,316.316 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 20:50:50,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:50:50,940.940 INFO    ] Checking for system updates...
[2026-08-25 20:50:50,975.975 INFO    ] 200
[2026-08-25 20:50:50,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:51,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:51,037.037 INFO    ] No update needed
[2026-08-25 20:50:51,039.039 INFO    ] Checking for camera pi updates...
[2026-08-25 20:50:51,072.072 INFO    ] 200
[2026-08-25 20:50:51,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:50:51,115.115 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:50:51,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:50:51,175.175 INFO    ] No camera update needed
[2026-08-25 20:50:51,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:50:51,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:50:51,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:50:51,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:50:53,231.231 INFO    ] ================================================
[2026-08-25 20:50:53,246.246 INFO    ] Launching Daemon at Tue Aug 25 20:50:53 IST 2026
[2026-08-25 20:50:53,256.256 INFO    ] ================================================
[2026-08-25 20:50:53,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:50:53
[2026-08-25 20:50:54,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:50:54,695.695 INFO    ] Initializing speech engine...
[2026-08-25 20:50:54,711.711 INFO    ] 2026-08-25 20:50:54
[2026-08-25 20:50:54,991.991 INFO    ] 2026-08-25 20:50:54
[2026-08-25 20:50:55,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:50:55,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:50:55,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:50:55,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:50:55,397.397 INFO    ] time= 25/08/2026 20:50:55
[2026-08-25 20:50:55,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:50:55,408.408 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:50:55,482.482 INFO    ] No existing commands found in stream
[2026-08-25 20:51:00,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:51:00,520.520 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 20:51:04,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:51:04,251.251 INFO    ] Checking for system updates...
[2026-08-25 20:51:04,290.290 INFO    ] 200
[2026-08-25 20:51:04,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:04,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:51:04,348.348 INFO    ] No update needed
[2026-08-25 20:51:04,350.350 INFO    ] Checking for camera pi updates...
[2026-08-25 20:51:04,384.384 INFO    ] 200
[2026-08-25 20:51:04,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:04,431.431 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:51:04,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:51:04,496.496 INFO    ] No camera update needed
[2026-08-25 20:51:04,498.498 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:51:04,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:51:04,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:51:04,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:51:06,552.552 INFO    ] ================================================
[2026-08-25 20:51:06,569.569 INFO    ] Launching Daemon at Tue Aug 25 20:51:06 IST 2026
[2026-08-25 20:51:06,580.580 INFO    ] ================================================
[2026-08-25 20:51:07,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:51:07
[2026-08-25 20:51:07,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:51:08,148.148 INFO    ] Initializing speech engine...
[2026-08-25 20:51:08,159.159 INFO    ] 2026-08-25 20:51:08
[2026-08-25 20:51:08,431.431 INFO    ] 2026-08-25 20:51:08
[2026-08-25 20:51:08,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:51:08,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:51:08,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:51:08,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:51:08,978.978 INFO    ] time= 25/08/2026 20:51:08
[2026-08-25 20:51:08,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:51:09,005.005 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:51:09,138.138 INFO    ] No existing commands found in stream
[2026-08-25 20:51:14,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:51:14,172.172 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 20:51:17,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:51:17,166.166 INFO    ] Checking for system updates...
[2026-08-25 20:51:17,205.205 INFO    ] 200
[2026-08-25 20:51:17,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:17,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:51:17,265.265 INFO    ] No update needed
[2026-08-25 20:51:17,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 20:51:17,302.302 INFO    ] 200
[2026-08-25 20:51:17,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:17,346.346 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:51:17,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:51:17,398.398 INFO    ] No camera update needed
[2026-08-25 20:51:17,401.401 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:51:17,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:51:17,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:51:17,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:51:19,455.455 INFO    ] ================================================
[2026-08-25 20:51:19,471.471 INFO    ] Launching Daemon at Tue Aug 25 20:51:19 IST 2026
[2026-08-25 20:51:19,482.482 INFO    ] ================================================
[2026-08-25 20:51:20,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:51:20
[2026-08-25 20:51:20,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:51:20,887.887 INFO    ] Initializing speech engine...
[2026-08-25 20:51:20,901.901 INFO    ] 2026-08-25 20:51:20
[2026-08-25 20:51:21,165.165 INFO    ] 2026-08-25 20:51:21
[2026-08-25 20:51:21,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:51:21,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:51:21,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:51:21,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:51:21,641.641 INFO    ] time= 25/08/2026 20:51:21
[2026-08-25 20:51:21,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:51:21,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:51:21,859.859 INFO    ] No existing commands found in stream
[2026-08-25 20:51:26,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:51:26,884.884 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 20:51:30,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:51:30,760.760 INFO    ] Checking for system updates...
[2026-08-25 20:51:30,799.799 INFO    ] 200
[2026-08-25 20:51:30,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:30,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:51:30,856.856 INFO    ] No update needed
[2026-08-25 20:51:30,858.858 INFO    ] Checking for camera pi updates...
[2026-08-25 20:51:30,892.892 INFO    ] 200
[2026-08-25 20:51:30,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:30,935.935 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:51:30,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:51:30,983.983 INFO    ] No camera update needed
[2026-08-25 20:51:30,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:51:30,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:51:30,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:51:30,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:51:33,039.039 INFO    ] ================================================
[2026-08-25 20:51:33,055.055 INFO    ] Launching Daemon at Tue Aug 25 20:51:33 IST 2026
[2026-08-25 20:51:33,065.065 INFO    ] ================================================
[2026-08-25 20:51:33,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:51:33
[2026-08-25 20:51:34,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:51:34,536.536 INFO    ] Initializing speech engine...
[2026-08-25 20:51:34,543.543 INFO    ] 2026-08-25 20:51:34
[2026-08-25 20:51:34,802.802 INFO    ] 2026-08-25 20:51:34
[2026-08-25 20:51:34,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:51:35,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:51:35,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:51:35,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:51:35,299.299 INFO    ] time= 25/08/2026 20:51:35
[2026-08-25 20:51:35,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:51:35,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:51:35,488.488 INFO    ] No existing commands found in stream
[2026-08-25 20:51:40,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:51:40,513.513 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 20:51:44,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:51:44,218.218 INFO    ] Checking for system updates...
[2026-08-25 20:51:44,255.255 INFO    ] 200
[2026-08-25 20:51:44,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:44,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:51:44,317.317 INFO    ] No update needed
[2026-08-25 20:51:44,319.319 INFO    ] Checking for camera pi updates...
[2026-08-25 20:51:44,353.353 INFO    ] 200
[2026-08-25 20:51:44,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:44,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:51:44,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:51:44,446.446 INFO    ] No camera update needed
[2026-08-25 20:51:44,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:51:44,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:51:44,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:51:44,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:51:46,500.500 INFO    ] ================================================
[2026-08-25 20:51:46,515.515 INFO    ] Launching Daemon at Tue Aug 25 20:51:46 IST 2026
[2026-08-25 20:51:46,526.526 INFO    ] ================================================
[2026-08-25 20:51:47,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:51:47
[2026-08-25 20:51:47,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:51:47,947.947 INFO    ] Initializing speech engine...
[2026-08-25 20:51:47,950.950 INFO    ] 2026-08-25 20:51:47
[2026-08-25 20:51:48,214.214 INFO    ] 2026-08-25 20:51:48
[2026-08-25 20:51:48,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:51:48,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:51:48,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:51:48,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:51:48,706.706 INFO    ] time= 25/08/2026 20:51:48
[2026-08-25 20:51:48,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:51:48,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:51:48,915.915 INFO    ] No existing commands found in stream
[2026-08-25 20:51:53,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:51:53,936.936 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 20:51:57,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:51:57,373.373 INFO    ] Checking for system updates...
[2026-08-25 20:51:57,409.409 INFO    ] 200
[2026-08-25 20:51:57,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:57,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:51:57,466.466 INFO    ] No update needed
[2026-08-25 20:51:57,468.468 INFO    ] Checking for camera pi updates...
[2026-08-25 20:51:57,506.506 INFO    ] 200
[2026-08-25 20:51:57,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:51:57,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:51:57,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:51:57,605.605 INFO    ] No camera update needed
[2026-08-25 20:51:57,607.607 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:51:57,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:51:57,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:51:57,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:51:59,660.660 INFO    ] ================================================
[2026-08-25 20:51:59,675.675 INFO    ] Launching Daemon at Tue Aug 25 20:51:59 IST 2026
[2026-08-25 20:51:59,686.686 INFO    ] ================================================
[2026-08-25 20:52:00,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:52:00
[2026-08-25 20:52:00,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:52:01,115.115 INFO    ] Initializing speech engine...
[2026-08-25 20:52:01,123.123 INFO    ] 2026-08-25 20:52:01
[2026-08-25 20:52:01,371.371 INFO    ] 2026-08-25 20:52:01
[2026-08-25 20:52:01,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:52:01,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:52:01,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:52:01,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:52:01,856.856 INFO    ] time= 25/08/2026 20:52:01
[2026-08-25 20:52:01,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:52:01,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:52:01,938.938 INFO    ] No existing commands found in stream
[2026-08-25 20:52:06,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:52:06,950.950 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 20:52:11,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:52:11,266.266 INFO    ] Checking for system updates...
[2026-08-25 20:52:11,302.302 INFO    ] 200
[2026-08-25 20:52:11,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:11,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:52:11,359.359 INFO    ] No update needed
[2026-08-25 20:52:11,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 20:52:11,395.395 INFO    ] 200
[2026-08-25 20:52:11,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:11,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:52:11,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:52:11,593.593 INFO    ] No camera update needed
[2026-08-25 20:52:11,595.595 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:52:11,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:52:11,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:52:11,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:52:13,650.650 INFO    ] ================================================
[2026-08-25 20:52:13,665.665 INFO    ] Launching Daemon at Tue Aug 25 20:52:13 IST 2026
[2026-08-25 20:52:13,676.676 INFO    ] ================================================
[2026-08-25 20:52:14,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:52:14
[2026-08-25 20:52:14,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:52:15,244.244 INFO    ] Initializing speech engine...
[2026-08-25 20:52:15,258.258 INFO    ] 2026-08-25 20:52:15
[2026-08-25 20:52:15,587.587 INFO    ] 2026-08-25 20:52:15
[2026-08-25 20:52:15,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:52:15,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:52:15,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:52:15,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:52:16,064.064 INFO    ] time= 25/08/2026 20:52:15
[2026-08-25 20:52:16,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:52:16,151.151 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:52:16,284.284 INFO    ] No existing commands found in stream
[2026-08-25 20:52:21,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:52:21,310.310 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 20:52:23,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:52:23,378.378 INFO    ] Checking for system updates...
[2026-08-25 20:52:23,414.414 INFO    ] 200
[2026-08-25 20:52:23,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:23,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:52:23,472.472 INFO    ] No update needed
[2026-08-25 20:52:23,474.474 INFO    ] Checking for camera pi updates...
[2026-08-25 20:52:23,507.507 INFO    ] 200
[2026-08-25 20:52:23,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:23,550.550 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:52:23,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:52:23,597.597 INFO    ] No camera update needed
[2026-08-25 20:52:23,599.599 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:52:23,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:52:23,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:52:23,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:52:25,653.653 INFO    ] ================================================
[2026-08-25 20:52:25,668.668 INFO    ] Launching Daemon at Tue Aug 25 20:52:25 IST 2026
[2026-08-25 20:52:25,679.679 INFO    ] ================================================
[2026-08-25 20:52:26,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:52:26
[2026-08-25 20:52:26,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:52:27,075.075 INFO    ] Initializing speech engine...
[2026-08-25 20:52:27,098.098 INFO    ] 2026-08-25 20:52:27
[2026-08-25 20:52:27,349.349 INFO    ] 2026-08-25 20:52:27
[2026-08-25 20:52:27,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:52:27,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:52:27,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:52:27,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:52:27,839.839 INFO    ] time= 25/08/2026 20:52:27
[2026-08-25 20:52:27,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:52:27,918.918 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:52:28,036.036 INFO    ] No existing commands found in stream
[2026-08-25 20:52:33,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:52:33,068.068 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 20:52:35,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:52:35,589.589 INFO    ] Checking for system updates...
[2026-08-25 20:52:35,625.625 INFO    ] 200
[2026-08-25 20:52:35,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:35,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:52:35,687.687 INFO    ] No update needed
[2026-08-25 20:52:35,689.689 INFO    ] Checking for camera pi updates...
[2026-08-25 20:52:35,722.722 INFO    ] 200
[2026-08-25 20:52:35,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:35,769.769 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:52:35,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:52:35,831.831 INFO    ] No camera update needed
[2026-08-25 20:52:35,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:52:35,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:52:35,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:52:35,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:52:37,886.886 INFO    ] ================================================
[2026-08-25 20:52:37,901.901 INFO    ] Launching Daemon at Tue Aug 25 20:52:37 IST 2026
[2026-08-25 20:52:37,911.911 INFO    ] ================================================
[2026-08-25 20:52:38,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:52:38
[2026-08-25 20:52:39,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:52:39,523.523 INFO    ] Initializing speech engine...
[2026-08-25 20:52:39,529.529 INFO    ] 2026-08-25 20:52:39
[2026-08-25 20:52:39,812.812 INFO    ] 2026-08-25 20:52:39
[2026-08-25 20:52:39,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:52:40,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:52:40,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:52:40,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:52:40,348.348 INFO    ] time= 25/08/2026 20:52:40
[2026-08-25 20:52:40,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:52:40,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:52:40,489.489 INFO    ] No existing commands found in stream
[2026-08-25 20:52:45,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:52:45,519.519 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 20:52:48,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:52:48,201.201 INFO    ] Checking for system updates...
[2026-08-25 20:52:48,241.241 INFO    ] 200
[2026-08-25 20:52:48,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:48,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:52:48,302.302 INFO    ] No update needed
[2026-08-25 20:52:48,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 20:52:48,337.337 INFO    ] 200
[2026-08-25 20:52:48,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:52:48,384.384 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:52:48,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:52:48,433.433 INFO    ] No camera update needed
[2026-08-25 20:52:48,435.435 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:52:48,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:52:48,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:52:48,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:52:50,488.488 INFO    ] ================================================
[2026-08-25 20:52:50,504.504 INFO    ] Launching Daemon at Tue Aug 25 20:52:50 IST 2026
[2026-08-25 20:52:50,516.516 INFO    ] ================================================
[2026-08-25 20:52:51,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:52:51
[2026-08-25 20:52:51,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:52:51,971.971 INFO    ] Initializing speech engine...
[2026-08-25 20:52:51,979.979 INFO    ] 2026-08-25 20:52:51
[2026-08-25 20:52:52,242.242 INFO    ] 2026-08-25 20:52:52
[2026-08-25 20:52:52,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:52:52,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:52:52,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:52:52,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:52:52,694.694 INFO    ] time= 25/08/2026 20:52:52
[2026-08-25 20:52:52,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:52:52,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:52:52,923.923 INFO    ] No existing commands found in stream
[2026-08-25 20:52:57,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:52:57,945.945 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 20:53:01,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:53:01,841.841 INFO    ] Checking for system updates...
[2026-08-25 20:53:01,900.900 INFO    ] 200
[2026-08-25 20:53:01,904.904 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:02,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:53:02,040.040 INFO    ] No update needed
[2026-08-25 20:53:02,045.045 INFO    ] Checking for camera pi updates...
[2026-08-25 20:53:02,089.089 INFO    ] 200
[2026-08-25 20:53:02,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:02,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:53:02,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:53:02,208.208 INFO    ] No camera update needed
[2026-08-25 20:53:02,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:53:02,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:53:02,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:53:02,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:53:04,274.274 INFO    ] ================================================
[2026-08-25 20:53:04,290.290 INFO    ] Launching Daemon at Tue Aug 25 20:53:04 IST 2026
[2026-08-25 20:53:04,301.301 INFO    ] ================================================
[2026-08-25 20:53:04,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:53:04
[2026-08-25 20:53:05,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:53:05,735.735 INFO    ] Initializing speech engine...
[2026-08-25 20:53:05,749.749 INFO    ] 2026-08-25 20:53:05
[2026-08-25 20:53:06,008.008 INFO    ] 2026-08-25 20:53:06
[2026-08-25 20:53:06,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:53:06,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:53:06,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:53:06,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:53:06,378.378 INFO    ] time= 25/08/2026 20:53:06
[2026-08-25 20:53:06,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:53:06,425.425 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:53:06,532.532 INFO    ] No existing commands found in stream
[2026-08-25 20:53:11,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:53:11,554.554 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 20:53:14,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:53:14,434.434 INFO    ] Checking for system updates...
[2026-08-25 20:53:14,471.471 INFO    ] 200
[2026-08-25 20:53:14,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:14,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:53:14,538.538 INFO    ] No update needed
[2026-08-25 20:53:14,541.541 INFO    ] Checking for camera pi updates...
[2026-08-25 20:53:14,581.581 INFO    ] 200
[2026-08-25 20:53:14,584.584 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:14,631.631 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:53:14,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:53:14,690.690 INFO    ] No camera update needed
[2026-08-25 20:53:14,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:53:14,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:53:14,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:53:14,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:53:16,748.748 INFO    ] ================================================
[2026-08-25 20:53:16,764.764 INFO    ] Launching Daemon at Tue Aug 25 20:53:16 IST 2026
[2026-08-25 20:53:16,776.776 INFO    ] ================================================
[2026-08-25 20:53:17,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:53:17
[2026-08-25 20:53:18,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:53:18,436.436 INFO    ] Initializing speech engine...
[2026-08-25 20:53:18,442.442 INFO    ] 2026-08-25 20:53:18
[2026-08-25 20:53:18,731.731 INFO    ] 2026-08-25 20:53:18
[2026-08-25 20:53:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:53:19,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:53:19,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:53:19,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:53:19,265.265 INFO    ] time= 25/08/2026 20:53:19
[2026-08-25 20:53:19,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:53:19,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:53:19,429.429 INFO    ] No existing commands found in stream
[2026-08-25 20:53:24,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:53:24,462.462 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 20:53:28,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:53:28,826.826 INFO    ] Checking for system updates...
[2026-08-25 20:53:28,861.861 INFO    ] 200
[2026-08-25 20:53:28,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:28,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:53:28,919.919 INFO    ] No update needed
[2026-08-25 20:53:28,921.921 INFO    ] Checking for camera pi updates...
[2026-08-25 20:53:28,960.960 INFO    ] 200
[2026-08-25 20:53:28,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:29,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:53:29,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:53:29,058.058 INFO    ] No camera update needed
[2026-08-25 20:53:29,060.060 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:53:29,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:53:29,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:53:29,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:53:31,112.112 INFO    ] ================================================
[2026-08-25 20:53:31,128.128 INFO    ] Launching Daemon at Tue Aug 25 20:53:31 IST 2026
[2026-08-25 20:53:31,139.139 INFO    ] ================================================
[2026-08-25 20:53:31,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:53:31
[2026-08-25 20:53:32,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:53:32,626.626 INFO    ] Initializing speech engine...
[2026-08-25 20:53:32,636.636 INFO    ] 2026-08-25 20:53:32
[2026-08-25 20:53:32,893.893 INFO    ] 2026-08-25 20:53:32
[2026-08-25 20:53:32,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:53:33,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:53:33,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:53:33,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:53:33,257.257 INFO    ] time= 25/08/2026 20:53:33
[2026-08-25 20:53:33,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:53:33,281.281 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:53:33,413.413 INFO    ] No existing commands found in stream
[2026-08-25 20:53:38,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:53:38,446.446 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 20:53:39,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:53:39,873.873 INFO    ] Checking for system updates...
[2026-08-25 20:53:39,920.920 INFO    ] 200
[2026-08-25 20:53:39,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:39,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:53:39,984.984 INFO    ] No update needed
[2026-08-25 20:53:39,987.987 INFO    ] Checking for camera pi updates...
[2026-08-25 20:53:40,027.027 INFO    ] 200
[2026-08-25 20:53:40,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:40,073.073 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:53:40,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:53:40,131.131 INFO    ] No camera update needed
[2026-08-25 20:53:40,134.134 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:53:40,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:53:40,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:53:40,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:53:42,193.193 INFO    ] ================================================
[2026-08-25 20:53:42,209.209 INFO    ] Launching Daemon at Tue Aug 25 20:53:42 IST 2026
[2026-08-25 20:53:42,223.223 INFO    ] ================================================
[2026-08-25 20:53:42,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:53:42
[2026-08-25 20:53:43,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:53:43,706.706 INFO    ] Initializing speech engine...
[2026-08-25 20:53:43,719.719 INFO    ] 2026-08-25 20:53:43
[2026-08-25 20:53:43,967.967 INFO    ] 2026-08-25 20:53:43
[2026-08-25 20:53:44,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:53:44,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:53:44,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:53:44,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:53:44,449.449 INFO    ] time= 25/08/2026 20:53:44
[2026-08-25 20:53:44,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:53:44,558.558 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:53:44,641.641 INFO    ] No existing commands found in stream
[2026-08-25 20:53:49,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:53:49,674.674 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 20:53:51,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:53:51,112.112 INFO    ] Checking for system updates...
[2026-08-25 20:53:51,148.148 INFO    ] 200
[2026-08-25 20:53:51,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:51,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:53:51,213.213 INFO    ] No update needed
[2026-08-25 20:53:51,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 20:53:51,249.249 INFO    ] 200
[2026-08-25 20:53:51,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:53:51,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:53:51,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:53:51,339.339 INFO    ] No camera update needed
[2026-08-25 20:53:51,341.341 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:53:51,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:53:51,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:53:51,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:53:53,396.396 INFO    ] ================================================
[2026-08-25 20:53:53,411.411 INFO    ] Launching Daemon at Tue Aug 25 20:53:53 IST 2026
[2026-08-25 20:53:53,423.423 INFO    ] ================================================
[2026-08-25 20:53:53,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:53:53
[2026-08-25 20:53:54,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:53:54,842.842 INFO    ] Initializing speech engine...
[2026-08-25 20:53:54,851.851 INFO    ] 2026-08-25 20:53:54
[2026-08-25 20:53:55,099.099 INFO    ] 2026-08-25 20:53:55
[2026-08-25 20:53:55,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:53:55,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:53:55,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:53:55,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:53:55,568.568 INFO    ] time= 25/08/2026 20:53:55
[2026-08-25 20:53:55,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:53:55,672.672 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:53:55,795.795 INFO    ] No existing commands found in stream
[2026-08-25 20:54:00,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:54:00,823.823 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 20:54:04,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:54:04,343.343 INFO    ] Checking for system updates...
[2026-08-25 20:54:04,383.383 INFO    ] 200
[2026-08-25 20:54:04,386.386 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:04,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:54:04,449.449 INFO    ] No update needed
[2026-08-25 20:54:04,452.452 INFO    ] Checking for camera pi updates...
[2026-08-25 20:54:04,490.490 INFO    ] 200
[2026-08-25 20:54:04,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:04,535.535 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:54:04,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:54:04,583.583 INFO    ] No camera update needed
[2026-08-25 20:54:04,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:54:04,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:54:04,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:54:04,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:54:06,642.642 INFO    ] ================================================
[2026-08-25 20:54:06,657.657 INFO    ] Launching Daemon at Tue Aug 25 20:54:06 IST 2026
[2026-08-25 20:54:06,669.669 INFO    ] ================================================
[2026-08-25 20:54:07,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:54:07
[2026-08-25 20:54:07,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:54:08,277.277 INFO    ] Initializing speech engine...
[2026-08-25 20:54:08,290.290 INFO    ] 2026-08-25 20:54:08
[2026-08-25 20:54:08,569.569 INFO    ] 2026-08-25 20:54:08
[2026-08-25 20:54:08,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:54:08,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:54:08,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:54:09,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:54:09,105.105 INFO    ] time= 25/08/2026 20:54:09
[2026-08-25 20:54:09,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:54:09,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:54:09,294.294 INFO    ] No existing commands found in stream
[2026-08-25 20:54:14,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:54:14,328.328 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 20:54:15,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:54:15,754.754 INFO    ] Checking for system updates...
[2026-08-25 20:54:15,789.789 INFO    ] 200
[2026-08-25 20:54:15,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:15,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:54:15,846.846 INFO    ] No update needed
[2026-08-25 20:54:15,854.854 INFO    ] Checking for camera pi updates...
[2026-08-25 20:54:15,904.904 INFO    ] 200
[2026-08-25 20:54:15,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:15,949.949 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:54:16,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:54:16,102.102 INFO    ] No camera update needed
[2026-08-25 20:54:16,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:54:16,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:54:16,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:54:16,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:54:18,160.160 INFO    ] ================================================
[2026-08-25 20:54:18,176.176 INFO    ] Launching Daemon at Tue Aug 25 20:54:18 IST 2026
[2026-08-25 20:54:18,186.186 INFO    ] ================================================
[2026-08-25 20:54:18,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:54:18
[2026-08-25 20:54:19,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:54:19,793.793 INFO    ] Initializing speech engine...
[2026-08-25 20:54:19,807.807 INFO    ] 2026-08-25 20:54:19
[2026-08-25 20:54:20,075.075 INFO    ] 2026-08-25 20:54:20
[2026-08-25 20:54:20,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:54:20,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:54:20,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:54:20,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:54:20,620.620 INFO    ] time= 25/08/2026 20:54:20
[2026-08-25 20:54:20,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:54:20,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:54:20,774.774 INFO    ] No existing commands found in stream
[2026-08-25 20:54:25,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:54:25,793.793 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-08-25 20:54:27,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:54:27,426.426 INFO    ] Checking for system updates...
[2026-08-25 20:54:27,468.468 INFO    ] 200
[2026-08-25 20:54:27,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:27,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:54:27,531.531 INFO    ] No update needed
[2026-08-25 20:54:27,534.534 INFO    ] Checking for camera pi updates...
[2026-08-25 20:54:27,568.568 INFO    ] 200
[2026-08-25 20:54:27,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:27,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:54:27,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:54:27,668.668 INFO    ] No camera update needed
[2026-08-25 20:54:27,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:54:27,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:54:27,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:54:27,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:54:29,723.723 INFO    ] ================================================
[2026-08-25 20:54:29,738.738 INFO    ] Launching Daemon at Tue Aug 25 20:54:29 IST 2026
[2026-08-25 20:54:29,749.749 INFO    ] ================================================
[2026-08-25 20:54:30,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:54:30
[2026-08-25 20:54:30,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:54:31,170.170 INFO    ] Initializing speech engine...
[2026-08-25 20:54:31,186.186 INFO    ] 2026-08-25 20:54:31
[2026-08-25 20:54:31,475.475 INFO    ] 2026-08-25 20:54:31
[2026-08-25 20:54:31,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:54:31,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:54:31,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:54:31,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:54:31,886.886 INFO    ] time= 25/08/2026 20:54:31
[2026-08-25 20:54:31,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:54:31,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:54:32,019.019 INFO    ] No existing commands found in stream
[2026-08-25 20:54:37,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:54:37,035.035 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 20:54:39,319.319 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:54:39,322.322 INFO    ] Checking for system updates...
[2026-08-25 20:54:39,362.362 INFO    ] 200
[2026-08-25 20:54:39,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:39,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:54:39,419.419 INFO    ] No update needed
[2026-08-25 20:54:39,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 20:54:39,459.459 INFO    ] 200
[2026-08-25 20:54:39,461.461 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:39,504.504 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:54:39,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:54:39,560.560 INFO    ] No camera update needed
[2026-08-25 20:54:39,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:54:39,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:54:39,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:54:39,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:54:41,614.614 INFO    ] ================================================
[2026-08-25 20:54:41,630.630 INFO    ] Launching Daemon at Tue Aug 25 20:54:41 IST 2026
[2026-08-25 20:54:41,641.641 INFO    ] ================================================
[2026-08-25 20:54:42,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:54:42
[2026-08-25 20:54:42,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:54:43,192.192 INFO    ] Initializing speech engine...
[2026-08-25 20:54:43,205.205 INFO    ] 2026-08-25 20:54:43
[2026-08-25 20:54:43,520.520 INFO    ] 2026-08-25 20:54:43
[2026-08-25 20:54:43,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:54:43,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:54:43,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:54:44,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:54:44,029.029 INFO    ] time= 25/08/2026 20:54:44
[2026-08-25 20:54:44,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:54:44,079.079 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:54:44,185.185 INFO    ] No existing commands found in stream
[2026-08-25 20:54:49,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:54:49,210.210 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 20:54:53,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:54:53,772.772 INFO    ] Checking for system updates...
[2026-08-25 20:54:53,808.808 INFO    ] 200
[2026-08-25 20:54:53,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:53,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:54:53,867.867 INFO    ] No update needed
[2026-08-25 20:54:53,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 20:54:53,903.903 INFO    ] 200
[2026-08-25 20:54:53,905.905 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:54:53,945.945 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:54:54,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:54:54,004.004 INFO    ] No camera update needed
[2026-08-25 20:54:54,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:54:54,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:54:54,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:54:54,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:54:56,066.066 INFO    ] ================================================
[2026-08-25 20:54:56,081.081 INFO    ] Launching Daemon at Tue Aug 25 20:54:56 IST 2026
[2026-08-25 20:54:56,092.092 INFO    ] ================================================
[2026-08-25 20:54:56,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:54:56
[2026-08-25 20:54:57,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:54:57,549.549 INFO    ] Initializing speech engine...
[2026-08-25 20:54:57,555.555 INFO    ] 2026-08-25 20:54:57
[2026-08-25 20:54:57,815.815 INFO    ] 2026-08-25 20:54:57
[2026-08-25 20:54:57,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:54:58,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:54:58,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:54:58,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:54:58,267.267 INFO    ] time= 25/08/2026 20:54:58
[2026-08-25 20:54:58,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:54:58,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:54:58,502.502 INFO    ] No existing commands found in stream
[2026-08-25 20:55:03,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:55:03,525.525 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-08-25 20:55:05,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:55:05,587.587 INFO    ] Checking for system updates...
[2026-08-25 20:55:05,631.631 INFO    ] 200
[2026-08-25 20:55:05,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:05,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:05,695.695 INFO    ] No update needed
[2026-08-25 20:55:05,698.698 INFO    ] Checking for camera pi updates...
[2026-08-25 20:55:05,731.731 INFO    ] 200
[2026-08-25 20:55:05,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:05,775.775 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:55:05,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:05,830.830 INFO    ] No camera update needed
[2026-08-25 20:55:05,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:55:05,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:55:05,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:55:05,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:55:07,884.884 INFO    ] ================================================
[2026-08-25 20:55:07,900.900 INFO    ] Launching Daemon at Tue Aug 25 20:55:07 IST 2026
[2026-08-25 20:55:07,911.911 INFO    ] ================================================
[2026-08-25 20:55:08,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:55:08
[2026-08-25 20:55:09,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:55:09,366.366 INFO    ] Initializing speech engine...
[2026-08-25 20:55:09,377.377 INFO    ] 2026-08-25 20:55:09
[2026-08-25 20:55:09,626.626 INFO    ] 2026-08-25 20:55:09
[2026-08-25 20:55:09,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:55:09,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:55:09,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:55:10,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:55:10,042.042 INFO    ] time= 25/08/2026 20:55:10
[2026-08-25 20:55:10,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:55:10,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:55:10,235.235 INFO    ] No existing commands found in stream
[2026-08-25 20:55:15,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:55:15,258.258 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 20:55:19,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:55:19,350.350 INFO    ] Checking for system updates...
[2026-08-25 20:55:19,385.385 INFO    ] 200
[2026-08-25 20:55:19,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:19,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:55:19,448.448 INFO    ] No update needed
[2026-08-25 20:55:19,450.450 INFO    ] Checking for camera pi updates...
[2026-08-25 20:55:19,487.487 INFO    ] 200
[2026-08-25 20:55:19,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:19,533.533 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:55:19,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:55:19,580.580 INFO    ] No camera update needed
[2026-08-25 20:55:19,583.583 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:55:19,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:55:19,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:55:19,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:55:21,635.635 INFO    ] ================================================
[2026-08-25 20:55:21,650.650 INFO    ] Launching Daemon at Tue Aug 25 20:55:21 IST 2026
[2026-08-25 20:55:21,661.661 INFO    ] ================================================
[2026-08-25 20:55:22,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:55:22
[2026-08-25 20:55:22,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:55:23,061.061 INFO    ] Initializing speech engine...
[2026-08-25 20:55:23,084.084 INFO    ] 2026-08-25 20:55:23
[2026-08-25 20:55:23,339.339 INFO    ] 2026-08-25 20:55:23
[2026-08-25 20:55:23,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:55:23,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:55:23,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:55:23,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:55:23,826.826 INFO    ] time= 25/08/2026 20:55:23
[2026-08-25 20:55:23,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:55:23,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:55:24,050.050 INFO    ] No existing commands found in stream
[2026-08-25 20:55:29,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:55:29,077.077 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 20:55:29,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:55:29,916.916 INFO    ] Checking for system updates...
[2026-08-25 20:55:29,951.951 INFO    ] 200
[2026-08-25 20:55:29,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:30,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:30,014.014 INFO    ] No update needed
[2026-08-25 20:55:30,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 20:55:30,051.051 INFO    ] 200
[2026-08-25 20:55:30,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:30,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:55:30,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:30,154.154 INFO    ] No camera update needed
[2026-08-25 20:55:30,156.156 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:55:30,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:55:30,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:55:30,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:55:32,213.213 INFO    ] ================================================
[2026-08-25 20:55:32,230.230 INFO    ] Launching Daemon at Tue Aug 25 20:55:32 IST 2026
[2026-08-25 20:55:32,243.243 INFO    ] ================================================
[2026-08-25 20:55:32,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:55:32
[2026-08-25 20:55:33,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:55:33,700.700 INFO    ] Initializing speech engine...
[2026-08-25 20:55:33,707.707 INFO    ] 2026-08-25 20:55:33
[2026-08-25 20:55:33,996.996 INFO    ] 2026-08-25 20:55:33
[2026-08-25 20:55:34,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:55:34,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:55:34,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:55:34,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:55:34,410.410 INFO    ] time= 25/08/2026 20:55:34
[2026-08-25 20:55:34,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:55:34,422.422 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:55:34,549.549 INFO    ] No existing commands found in stream
[2026-08-25 20:55:39,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:55:39,587.587 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-08-25 20:55:40,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:55:40,986.986 INFO    ] Checking for system updates...
[2026-08-25 20:55:41,021.021 INFO    ] 200
[2026-08-25 20:55:41,023.023 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:41,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:41,079.079 INFO    ] No update needed
[2026-08-25 20:55:41,081.081 INFO    ] Checking for camera pi updates...
[2026-08-25 20:55:41,118.118 INFO    ] 200
[2026-08-25 20:55:41,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:41,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:55:41,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:41,223.223 INFO    ] No camera update needed
[2026-08-25 20:55:41,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:55:41,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:55:41,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:55:41,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:55:43,281.281 INFO    ] ================================================
[2026-08-25 20:55:43,297.297 INFO    ] Launching Daemon at Tue Aug 25 20:55:43 IST 2026
[2026-08-25 20:55:43,307.307 INFO    ] ================================================
[2026-08-25 20:55:43,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:55:43
[2026-08-25 20:55:44,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:55:44,733.733 INFO    ] Initializing speech engine...
[2026-08-25 20:55:44,743.743 INFO    ] 2026-08-25 20:55:44
[2026-08-25 20:55:44,993.993 INFO    ] 2026-08-25 20:55:44
[2026-08-25 20:55:45,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:55:45,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:55:45,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:55:45,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:55:45,472.472 INFO    ] time= 25/08/2026 20:55:45
[2026-08-25 20:55:45,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:55:45,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:55:45,686.686 INFO    ] No existing commands found in stream
[2026-08-25 20:55:50,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:55:50,711.711 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 20:55:52,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:55:52,993.993 INFO    ] Checking for system updates...
[2026-08-25 20:55:53,028.028 INFO    ] 200
[2026-08-25 20:55:53,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:53,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:53,086.086 INFO    ] No update needed
[2026-08-25 20:55:53,088.088 INFO    ] Checking for camera pi updates...
[2026-08-25 20:55:53,124.124 INFO    ] 200
[2026-08-25 20:55:53,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:55:53,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:55:53,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:55:53,225.225 INFO    ] No camera update needed
[2026-08-25 20:55:53,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:55:53,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:55:53,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:55:53,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:55:55,281.281 INFO    ] ================================================
[2026-08-25 20:55:55,296.296 INFO    ] Launching Daemon at Tue Aug 25 20:55:55 IST 2026
[2026-08-25 20:55:55,307.307 INFO    ] ================================================
[2026-08-25 20:55:55,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:55:55
[2026-08-25 20:55:56,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:55:56,940.940 INFO    ] Initializing speech engine...
[2026-08-25 20:55:56,949.949 INFO    ] 2026-08-25 20:55:56
[2026-08-25 20:55:57,230.230 INFO    ] 2026-08-25 20:55:57
[2026-08-25 20:55:57,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:55:57,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:55:57,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:55:57,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:55:57,727.727 INFO    ] time= 25/08/2026 20:55:57
[2026-08-25 20:55:57,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:55:57,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:55:57,953.953 INFO    ] No existing commands found in stream
[2026-08-25 20:56:02,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:56:02,970.970 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 20:56:03,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:56:03,892.892 INFO    ] Checking for system updates...
[2026-08-25 20:56:03,929.929 INFO    ] 200
[2026-08-25 20:56:03,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:03,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:56:03,990.990 INFO    ] No update needed
[2026-08-25 20:56:03,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 20:56:04,032.032 INFO    ] 200
[2026-08-25 20:56:04,035.035 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:04,084.084 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:56:04,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:56:04,142.142 INFO    ] No camera update needed
[2026-08-25 20:56:04,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:56:04,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:56:04,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:56:04,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:56:06,206.206 INFO    ] ================================================
[2026-08-25 20:56:06,222.222 INFO    ] Launching Daemon at Tue Aug 25 20:56:06 IST 2026
[2026-08-25 20:56:06,234.234 INFO    ] ================================================
[2026-08-25 20:56:06,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:56:06
[2026-08-25 20:56:07,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:56:07,764.764 INFO    ] Initializing speech engine...
[2026-08-25 20:56:07,774.774 INFO    ] 2026-08-25 20:56:07
[2026-08-25 20:56:08,025.025 INFO    ] 2026-08-25 20:56:08
[2026-08-25 20:56:08,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:56:08,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:56:08,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:56:08,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:56:08,401.401 INFO    ] time= 25/08/2026 20:56:08
[2026-08-25 20:56:08,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:56:08,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:56:08,601.601 INFO    ] No existing commands found in stream
[2026-08-25 20:56:13,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:56:13,617.617 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 20:56:18,651.651 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:56:18,653.653 INFO    ] Checking for system updates...
[2026-08-25 20:56:18,690.690 INFO    ] 200
[2026-08-25 20:56:18,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:18,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:56:18,758.758 INFO    ] No update needed
[2026-08-25 20:56:18,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 20:56:18,796.796 INFO    ] 200
[2026-08-25 20:56:18,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:18,851.851 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:56:19,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:56:19,004.004 INFO    ] No camera update needed
[2026-08-25 20:56:19,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:56:19,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:56:19,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:56:19,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:56:21,065.065 INFO    ] ================================================
[2026-08-25 20:56:21,081.081 INFO    ] Launching Daemon at Tue Aug 25 20:56:21 IST 2026
[2026-08-25 20:56:21,093.093 INFO    ] ================================================
[2026-08-25 20:56:21,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:56:21
[2026-08-25 20:56:22,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:56:22,515.515 INFO    ] Initializing speech engine...
[2026-08-25 20:56:22,524.524 INFO    ] 2026-08-25 20:56:22
[2026-08-25 20:56:22,827.827 INFO    ] 2026-08-25 20:56:22
[2026-08-25 20:56:22,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:56:23,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:56:23,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:56:23,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:56:23,221.221 INFO    ] time= 25/08/2026 20:56:23
[2026-08-25 20:56:23,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:56:23,246.246 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:56:23,351.351 INFO    ] No existing commands found in stream
[2026-08-25 20:56:28,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:56:28,366.366 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 20:56:29,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:56:29,402.402 INFO    ] Checking for system updates...
[2026-08-25 20:56:29,439.439 INFO    ] 200
[2026-08-25 20:56:29,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:29,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:56:29,504.504 INFO    ] No update needed
[2026-08-25 20:56:29,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 20:56:29,545.545 INFO    ] 200
[2026-08-25 20:56:29,547.547 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:29,593.593 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:56:29,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:56:29,650.650 INFO    ] No camera update needed
[2026-08-25 20:56:29,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:56:29,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:56:29,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:56:29,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:56:31,709.709 INFO    ] ================================================
[2026-08-25 20:56:31,727.727 INFO    ] Launching Daemon at Tue Aug 25 20:56:31 IST 2026
[2026-08-25 20:56:31,740.740 INFO    ] ================================================
[2026-08-25 20:56:32,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:56:32
[2026-08-25 20:56:32,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:56:33,230.230 INFO    ] Initializing speech engine...
[2026-08-25 20:56:33,246.246 INFO    ] 2026-08-25 20:56:33
[2026-08-25 20:56:33,501.501 INFO    ] 2026-08-25 20:56:33
[2026-08-25 20:56:33,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:56:33,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:56:33,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:56:33,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:56:33,876.876 INFO    ] time= 25/08/2026 20:56:33
[2026-08-25 20:56:33,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:56:33,929.929 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:56:34,070.070 INFO    ] No existing commands found in stream
[2026-08-25 20:56:39,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:56:39,090.090 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 20:56:43,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:56:43,080.080 INFO    ] Checking for system updates...
[2026-08-25 20:56:43,115.115 INFO    ] 200
[2026-08-25 20:56:43,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:43,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:56:43,173.173 INFO    ] No update needed
[2026-08-25 20:56:43,175.175 INFO    ] Checking for camera pi updates...
[2026-08-25 20:56:43,209.209 INFO    ] 200
[2026-08-25 20:56:43,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:43,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:56:43,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:56:43,303.303 INFO    ] No camera update needed
[2026-08-25 20:56:43,305.305 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:56:43,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:56:43,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:56:43,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:56:45,359.359 INFO    ] ================================================
[2026-08-25 20:56:45,375.375 INFO    ] Launching Daemon at Tue Aug 25 20:56:45 IST 2026
[2026-08-25 20:56:45,386.386 INFO    ] ================================================
[2026-08-25 20:56:46,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:56:46
[2026-08-25 20:56:46,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:56:47,070.070 INFO    ] Initializing speech engine...
[2026-08-25 20:56:47,084.084 INFO    ] 2026-08-25 20:56:47
[2026-08-25 20:56:47,405.405 INFO    ] 2026-08-25 20:56:47
[2026-08-25 20:56:47,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:56:47,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:56:47,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:56:47,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:56:47,926.926 INFO    ] time= 25/08/2026 20:56:47
[2026-08-25 20:56:47,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:56:47,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:56:48,089.089 INFO    ] No existing commands found in stream
[2026-08-25 20:56:53,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:56:53,122.122 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-08-25 20:56:54,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:56:54,773.773 INFO    ] Checking for system updates...
[2026-08-25 20:56:54,809.809 INFO    ] 200
[2026-08-25 20:56:54,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:54,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:56:54,867.867 INFO    ] No update needed
[2026-08-25 20:56:54,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 20:56:54,903.903 INFO    ] 200
[2026-08-25 20:56:54,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:56:54,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:56:55,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:56:55,007.007 INFO    ] No camera update needed
[2026-08-25 20:56:55,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:56:55,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:56:55,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:56:55,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:56:57,061.061 INFO    ] ================================================
[2026-08-25 20:56:57,077.077 INFO    ] Launching Daemon at Tue Aug 25 20:56:57 IST 2026
[2026-08-25 20:56:57,094.094 INFO    ] ================================================
[2026-08-25 20:56:57,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:56:57
[2026-08-25 20:56:58,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:56:58,500.500 INFO    ] Initializing speech engine...
[2026-08-25 20:56:58,512.512 INFO    ] 2026-08-25 20:56:58
[2026-08-25 20:56:58,779.779 INFO    ] 2026-08-25 20:56:58
[2026-08-25 20:56:58,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:56:59,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:56:59,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:56:59,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:56:59,263.263 INFO    ] time= 25/08/2026 20:56:59
[2026-08-25 20:56:59,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:56:59,352.352 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:56:59,499.499 INFO    ] No existing commands found in stream
[2026-08-25 20:57:04,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:57:04,519.519 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 20:57:08,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:57:08,054.054 INFO    ] Checking for system updates...
[2026-08-25 20:57:08,094.094 INFO    ] 200
[2026-08-25 20:57:08,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:08,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:57:08,160.160 INFO    ] No update needed
[2026-08-25 20:57:08,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 20:57:08,200.200 INFO    ] 200
[2026-08-25 20:57:08,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:08,243.243 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:57:08,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:57:08,291.291 INFO    ] No camera update needed
[2026-08-25 20:57:08,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:57:08,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:57:08,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:57:08,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:57:10,356.356 INFO    ] ================================================
[2026-08-25 20:57:10,372.372 INFO    ] Launching Daemon at Tue Aug 25 20:57:10 IST 2026
[2026-08-25 20:57:10,384.384 INFO    ] ================================================
[2026-08-25 20:57:10,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:57:10
[2026-08-25 20:57:11,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:57:11,797.797 INFO    ] Initializing speech engine...
[2026-08-25 20:57:11,820.820 INFO    ] 2026-08-25 20:57:11
[2026-08-25 20:57:12,074.074 INFO    ] 2026-08-25 20:57:12
[2026-08-25 20:57:12,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:57:12,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:57:12,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:57:12,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:57:12,449.449 INFO    ] time= 25/08/2026 20:57:12
[2026-08-25 20:57:12,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:57:12,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:57:12,631.631 INFO    ] No existing commands found in stream
[2026-08-25 20:57:17,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:57:17,663.663 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 20:57:18,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:57:18,849.849 INFO    ] Checking for system updates...
[2026-08-25 20:57:18,889.889 INFO    ] 200
[2026-08-25 20:57:18,891.891 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:18,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:57:18,947.947 INFO    ] No update needed
[2026-08-25 20:57:18,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 20:57:18,983.983 INFO    ] 200
[2026-08-25 20:57:18,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:19,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:57:19,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:57:19,077.077 INFO    ] No camera update needed
[2026-08-25 20:57:19,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:57:19,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:57:19,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:57:19,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:57:21,134.134 INFO    ] ================================================
[2026-08-25 20:57:21,150.150 INFO    ] Launching Daemon at Tue Aug 25 20:57:21 IST 2026
[2026-08-25 20:57:21,161.161 INFO    ] ================================================
[2026-08-25 20:57:21,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:57:21
[2026-08-25 20:57:22,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:57:22,571.571 INFO    ] Initializing speech engine...
[2026-08-25 20:57:22,580.580 INFO    ] 2026-08-25 20:57:22
[2026-08-25 20:57:22,886.886 INFO    ] 2026-08-25 20:57:22
[2026-08-25 20:57:22,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:57:23,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:57:23,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:57:23,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:57:23,283.283 INFO    ] time= 25/08/2026 20:57:23
[2026-08-25 20:57:23,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:57:23,326.326 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:57:23,413.413 INFO    ] No existing commands found in stream
[2026-08-25 20:57:28,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:57:28,428.428 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 20:57:31,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:57:31,259.259 INFO    ] Checking for system updates...
[2026-08-25 20:57:31,299.299 INFO    ] 200
[2026-08-25 20:57:31,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:31,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:57:31,366.366 INFO    ] No update needed
[2026-08-25 20:57:31,368.368 INFO    ] Checking for camera pi updates...
[2026-08-25 20:57:31,402.402 INFO    ] 200
[2026-08-25 20:57:31,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:31,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:57:31,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:57:31,515.515 INFO    ] No camera update needed
[2026-08-25 20:57:31,517.517 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:57:31,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:57:31,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:57:31,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:57:33,571.571 INFO    ] ================================================
[2026-08-25 20:57:33,587.587 INFO    ] Launching Daemon at Tue Aug 25 20:57:33 IST 2026
[2026-08-25 20:57:33,598.598 INFO    ] ================================================
[2026-08-25 20:57:34,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:57:34
[2026-08-25 20:57:34,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:57:35,058.058 INFO    ] Initializing speech engine...
[2026-08-25 20:57:35,066.066 INFO    ] 2026-08-25 20:57:35
[2026-08-25 20:57:35,325.325 INFO    ] 2026-08-25 20:57:35
[2026-08-25 20:57:35,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:57:35,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:57:35,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:57:35,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:57:35,805.805 INFO    ] time= 25/08/2026 20:57:35
[2026-08-25 20:57:35,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:57:35,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:57:36,010.010 INFO    ] No existing commands found in stream
[2026-08-25 20:57:41,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:57:41,035.035 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 20:57:43,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:57:43,869.869 INFO    ] Checking for system updates...
[2026-08-25 20:57:43,905.905 INFO    ] 200
[2026-08-25 20:57:43,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:43,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:57:43,972.972 INFO    ] No update needed
[2026-08-25 20:57:43,974.974 INFO    ] Checking for camera pi updates...
[2026-08-25 20:57:44,011.011 INFO    ] 200
[2026-08-25 20:57:44,014.014 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:44,062.062 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:57:44,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:57:44,114.114 INFO    ] No camera update needed
[2026-08-25 20:57:44,117.117 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:57:44,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:57:44,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:57:44,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:57:46,175.175 INFO    ] ================================================
[2026-08-25 20:57:46,191.191 INFO    ] Launching Daemon at Tue Aug 25 20:57:46 IST 2026
[2026-08-25 20:57:46,203.203 INFO    ] ================================================
[2026-08-25 20:57:46,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:57:46
[2026-08-25 20:57:47,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:57:47,613.613 INFO    ] Initializing speech engine...
[2026-08-25 20:57:47,631.631 INFO    ] 2026-08-25 20:57:47
[2026-08-25 20:57:47,878.878 INFO    ] 2026-08-25 20:57:47
[2026-08-25 20:57:47,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:57:48,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:57:48,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:57:48,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:57:48,355.355 INFO    ] time= 25/08/2026 20:57:48
[2026-08-25 20:57:48,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:57:48,442.442 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:57:48,591.591 INFO    ] No existing commands found in stream
[2026-08-25 20:57:53,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:57:53,621.621 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 20:57:57,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 20:57:57,191.191 INFO    ] Checking for system updates...
[2026-08-25 20:57:57,235.235 INFO    ] 200
[2026-08-25 20:57:57,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:57,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:57:57,302.302 INFO    ] No update needed
[2026-08-25 20:57:57,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 20:57:57,338.338 INFO    ] 200
[2026-08-25 20:57:57,340.340 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:57:57,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:57:57,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:57:57,451.451 INFO    ] No camera update needed
[2026-08-25 20:57:57,454.454 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:57:57,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:57:57,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:57:57,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:57:59,509.509 INFO    ] ================================================
[2026-08-25 20:57:59,525.525 INFO    ] Launching Daemon at Tue Aug 25 20:57:59 IST 2026
[2026-08-25 20:57:59,536.536 INFO    ] ================================================
[2026-08-25 20:58:00,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:58:00
[2026-08-25 20:58:00,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:58:01,088.088 INFO    ] Initializing speech engine...
[2026-08-25 20:58:01,100.100 INFO    ] 2026-08-25 20:58:01
[2026-08-25 20:58:01,415.415 INFO    ] 2026-08-25 20:58:01
[2026-08-25 20:58:01,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:58:01,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:58:01,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:58:01,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:58:01,933.933 INFO    ] time= 25/08/2026 20:58:01
[2026-08-25 20:58:01,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:58:01,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:58:02,151.151 INFO    ] No existing commands found in stream
[2026-08-25 20:58:07,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:58:07,164.164 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 20:58:11,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:58:11,345.345 INFO    ] Checking for system updates...
[2026-08-25 20:58:11,380.380 INFO    ] 200
[2026-08-25 20:58:11,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:11,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:58:11,446.446 INFO    ] No update needed
[2026-08-25 20:58:11,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 20:58:11,483.483 INFO    ] 200
[2026-08-25 20:58:11,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:11,527.527 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:58:11,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:58:11,583.583 INFO    ] No camera update needed
[2026-08-25 20:58:11,586.586 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:58:11,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:58:11,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:58:11,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:58:13,640.640 INFO    ] ================================================
[2026-08-25 20:58:13,657.657 INFO    ] Launching Daemon at Tue Aug 25 20:58:13 IST 2026
[2026-08-25 20:58:13,668.668 INFO    ] ================================================
[2026-08-25 20:58:14,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:58:14
[2026-08-25 20:58:15,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:58:15,369.369 INFO    ] Initializing speech engine...
[2026-08-25 20:58:15,381.381 INFO    ] 2026-08-25 20:58:15
[2026-08-25 20:58:15,677.677 INFO    ] 2026-08-25 20:58:15
[2026-08-25 20:58:15,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:58:15,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:58:15,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:58:16,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:58:16,212.212 INFO    ] time= 25/08/2026 20:58:16
[2026-08-25 20:58:16,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:58:16,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:58:16,367.367 INFO    ] No existing commands found in stream
[2026-08-25 20:58:21,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:58:21,391.391 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 20:58:24,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 20:58:24,226.226 INFO    ] Checking for system updates...
[2026-08-25 20:58:24,269.269 INFO    ] 200
[2026-08-25 20:58:24,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:24,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:58:24,338.338 INFO    ] No update needed
[2026-08-25 20:58:24,341.341 INFO    ] Checking for camera pi updates...
[2026-08-25 20:58:24,376.376 INFO    ] 200
[2026-08-25 20:58:24,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:24,427.427 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:58:24,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:58:24,573.573 INFO    ] No camera update needed
[2026-08-25 20:58:24,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:58:24,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:58:24,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:58:24,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:58:26,631.631 INFO    ] ================================================
[2026-08-25 20:58:26,646.646 INFO    ] Launching Daemon at Tue Aug 25 20:58:26 IST 2026
[2026-08-25 20:58:26,658.658 INFO    ] ================================================
[2026-08-25 20:58:27,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:58:27
[2026-08-25 20:58:28,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:58:28,338.338 INFO    ] Initializing speech engine...
[2026-08-25 20:58:28,351.351 INFO    ] 2026-08-25 20:58:28
[2026-08-25 20:58:28,641.641 INFO    ] 2026-08-25 20:58:28
[2026-08-25 20:58:28,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:58:28,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:58:28,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:58:29,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:58:29,113.113 INFO    ] time= 25/08/2026 20:58:29
[2026-08-25 20:58:29,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:58:29,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:58:29,309.309 INFO    ] No existing commands found in stream
[2026-08-25 20:58:34,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:58:34,341.341 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 20:58:36,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:58:36,590.590 INFO    ] Checking for system updates...
[2026-08-25 20:58:36,631.631 INFO    ] 200
[2026-08-25 20:58:36,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:36,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:58:36,692.692 INFO    ] No update needed
[2026-08-25 20:58:36,695.695 INFO    ] Checking for camera pi updates...
[2026-08-25 20:58:36,734.734 INFO    ] 200
[2026-08-25 20:58:36,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:36,779.779 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:58:36,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:58:36,830.830 INFO    ] No camera update needed
[2026-08-25 20:58:36,833.833 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:58:36,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:58:36,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:58:36,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:58:38,890.890 INFO    ] ================================================
[2026-08-25 20:58:38,906.906 INFO    ] Launching Daemon at Tue Aug 25 20:58:38 IST 2026
[2026-08-25 20:58:38,917.917 INFO    ] ================================================
[2026-08-25 20:58:39,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:58:39
[2026-08-25 20:58:40,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:58:40,582.582 INFO    ] Initializing speech engine...
[2026-08-25 20:58:40,595.595 INFO    ] 2026-08-25 20:58:40
[2026-08-25 20:58:40,866.866 INFO    ] 2026-08-25 20:58:40
[2026-08-25 20:58:40,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:58:41,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:58:41,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:58:41,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:58:41,413.413 INFO    ] time= 25/08/2026 20:58:41
[2026-08-25 20:58:41,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:58:41,452.452 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:58:41,569.569 INFO    ] No existing commands found in stream
[2026-08-25 20:58:46,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:58:46,597.597 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 20:58:47,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:58:47,058.058 INFO    ] Checking for system updates...
[2026-08-25 20:58:47,094.094 INFO    ] 200
[2026-08-25 20:58:47,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:47,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:58:47,157.157 INFO    ] No update needed
[2026-08-25 20:58:47,159.159 INFO    ] Checking for camera pi updates...
[2026-08-25 20:58:47,197.197 INFO    ] 200
[2026-08-25 20:58:47,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:47,241.241 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:58:47,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:58:47,289.289 INFO    ] No camera update needed
[2026-08-25 20:58:47,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:58:47,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:58:47,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:58:47,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:58:49,346.346 INFO    ] ================================================
[2026-08-25 20:58:49,362.362 INFO    ] Launching Daemon at Tue Aug 25 20:58:49 IST 2026
[2026-08-25 20:58:49,372.372 INFO    ] ================================================
[2026-08-25 20:58:50,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:58:50
[2026-08-25 20:58:50,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:58:51,051.051 INFO    ] Initializing speech engine...
[2026-08-25 20:58:51,066.066 INFO    ] 2026-08-25 20:58:51
[2026-08-25 20:58:51,352.352 INFO    ] 2026-08-25 20:58:51
[2026-08-25 20:58:51,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:58:51,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:58:51,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:58:51,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:58:51,903.903 INFO    ] time= 25/08/2026 20:58:51
[2026-08-25 20:58:51,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:58:51,935.935 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:58:52,025.025 INFO    ] No existing commands found in stream
[2026-08-25 20:58:57,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:58:57,055.055 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 20:58:59,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 20:58:59,703.703 INFO    ] Checking for system updates...
[2026-08-25 20:58:59,741.741 INFO    ] 200
[2026-08-25 20:58:59,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:59,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:58:59,803.803 INFO    ] No update needed
[2026-08-25 20:58:59,806.806 INFO    ] Checking for camera pi updates...
[2026-08-25 20:58:59,841.841 INFO    ] 200
[2026-08-25 20:58:59,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:58:59,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:58:59,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:58:59,950.950 INFO    ] No camera update needed
[2026-08-25 20:58:59,953.953 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:58:59,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:58:59,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:58:59,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:59:02,014.014 INFO    ] ================================================
[2026-08-25 20:59:02,045.045 INFO    ] Launching Daemon at Tue Aug 25 20:59:02 IST 2026
[2026-08-25 20:59:02,070.070 INFO    ] ================================================
[2026-08-25 20:59:02,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:59:02
[2026-08-25 20:59:03,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:59:03,690.690 INFO    ] Initializing speech engine...
[2026-08-25 20:59:03,702.702 INFO    ] 2026-08-25 20:59:03
[2026-08-25 20:59:03,976.976 INFO    ] 2026-08-25 20:59:03
[2026-08-25 20:59:04,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:59:04,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:59:04,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:59:04,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:59:04,353.353 INFO    ] time= 25/08/2026 20:59:04
[2026-08-25 20:59:04,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:59:04,407.407 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:59:04,535.535 INFO    ] No existing commands found in stream
[2026-08-25 20:59:09,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:59:09,563.563 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 20:59:10,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:59:10,841.841 INFO    ] Checking for system updates...
[2026-08-25 20:59:10,876.876 INFO    ] 200
[2026-08-25 20:59:10,879.879 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:10,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:59:10,933.933 INFO    ] No update needed
[2026-08-25 20:59:10,936.936 INFO    ] Checking for camera pi updates...
[2026-08-25 20:59:10,970.970 INFO    ] 200
[2026-08-25 20:59:10,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:11,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:59:11,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:59:11,073.073 INFO    ] No camera update needed
[2026-08-25 20:59:11,076.076 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:59:11,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:59:11,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:59:11,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:59:13,130.130 INFO    ] ================================================
[2026-08-25 20:59:13,146.146 INFO    ] Launching Daemon at Tue Aug 25 20:59:13 IST 2026
[2026-08-25 20:59:13,157.157 INFO    ] ================================================
[2026-08-25 20:59:13,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:59:13
[2026-08-25 20:59:14,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:59:14,799.799 INFO    ] Initializing speech engine...
[2026-08-25 20:59:14,811.811 INFO    ] 2026-08-25 20:59:14
[2026-08-25 20:59:15,100.100 INFO    ] 2026-08-25 20:59:15
[2026-08-25 20:59:15,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:59:15,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:59:15,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:59:15,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:59:15,558.558 INFO    ] time= 25/08/2026 20:59:15
[2026-08-25 20:59:15,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:59:15,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:59:15,796.796 INFO    ] No existing commands found in stream
[2026-08-25 20:59:20,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:59:20,823.823 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 20:59:23,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 20:59:23,693.693 INFO    ] Checking for system updates...
[2026-08-25 20:59:23,729.729 INFO    ] 200
[2026-08-25 20:59:23,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:23,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:59:23,794.794 INFO    ] No update needed
[2026-08-25 20:59:23,796.796 INFO    ] Checking for camera pi updates...
[2026-08-25 20:59:23,830.830 INFO    ] 200
[2026-08-25 20:59:23,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:23,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:59:23,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:59:23,923.923 INFO    ] No camera update needed
[2026-08-25 20:59:23,926.926 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:59:23,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:59:23,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:59:23,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:59:25,978.978 INFO    ] ================================================
[2026-08-25 20:59:26,995.995 INFO    ] Launching Daemon at Tue Aug 25 20:59:25 IST 2026
[2026-08-25 20:59:26,007.007 INFO    ] ================================================
[2026-08-25 20:59:26,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:59:26
[2026-08-25 20:59:27,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:59:27,625.625 INFO    ] Initializing speech engine...
[2026-08-25 20:59:27,637.637 INFO    ] 2026-08-25 20:59:27
[2026-08-25 20:59:27,908.908 INFO    ] 2026-08-25 20:59:27
[2026-08-25 20:59:27,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:59:28,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:59:28,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:59:28,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:59:28,374.374 INFO    ] time= 25/08/2026 20:59:28
[2026-08-25 20:59:28,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:59:28,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:59:28,611.611 INFO    ] No existing commands found in stream
[2026-08-25 20:59:33,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:59:33,633.633 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-08-25 20:59:35,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 20:59:35,806.806 INFO    ] Checking for system updates...
[2026-08-25 20:59:35,842.842 INFO    ] 200
[2026-08-25 20:59:35,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:35,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:59:35,901.901 INFO    ] No update needed
[2026-08-25 20:59:35,903.903 INFO    ] Checking for camera pi updates...
[2026-08-25 20:59:35,937.937 INFO    ] 200
[2026-08-25 20:59:35,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:35,980.980 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:59:36,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 20:59:36,037.037 INFO    ] No camera update needed
[2026-08-25 20:59:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:59:36,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:59:36,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:59:36,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:59:38,092.092 INFO    ] ================================================
[2026-08-25 20:59:38,108.108 INFO    ] Launching Daemon at Tue Aug 25 20:59:38 IST 2026
[2026-08-25 20:59:38,119.119 INFO    ] ================================================
[2026-08-25 20:59:38,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:59:38
[2026-08-25 20:59:39,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:59:39,546.546 INFO    ] Initializing speech engine...
[2026-08-25 20:59:39,556.556 INFO    ] 2026-08-25 20:59:39
[2026-08-25 20:59:39,809.809 INFO    ] 2026-08-25 20:59:39
[2026-08-25 20:59:39,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:59:40,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:59:40,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:59:40,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:59:40,215.215 INFO    ] time= 25/08/2026 20:59:40
[2026-08-25 20:59:40,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:59:40,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:59:40,317.317 INFO    ] No existing commands found in stream
[2026-08-25 20:59:45,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:59:45,350.350 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 20:59:49,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 20:59:49,448.448 INFO    ] Checking for system updates...
[2026-08-25 20:59:49,486.486 INFO    ] 200
[2026-08-25 20:59:49,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:49,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:59:49,552.552 INFO    ] No update needed
[2026-08-25 20:59:49,555.555 INFO    ] Checking for camera pi updates...
[2026-08-25 20:59:49,594.594 INFO    ] 200
[2026-08-25 20:59:49,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 20:59:49,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 20:59:49,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 20:59:49,688.688 INFO    ] No camera update needed
[2026-08-25 20:59:49,691.691 INFO    ] Script finished. Safe exiting...
[2026-08-25 20:59:49,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 20:59:49,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 20:59:49,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 20:59:51,746.746 INFO    ] ================================================
[2026-08-25 20:59:51,761.761 INFO    ] Launching Daemon at Tue Aug 25 20:59:51 IST 2026
[2026-08-25 20:59:51,772.772 INFO    ] ================================================
[2026-08-25 20:59:52,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 20:59:52
[2026-08-25 20:59:52,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 20:59:53,221.221 INFO    ] Initializing speech engine...
[2026-08-25 20:59:53,231.231 INFO    ] 2026-08-25 20:59:53
[2026-08-25 20:59:53,492.492 INFO    ] 2026-08-25 20:59:53
[2026-08-25 20:59:53,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 20:59:53,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 20:59:53,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 20:59:53,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 20:59:53,952.952 INFO    ] time= 25/08/2026 20:59:53
[2026-08-25 20:59:54,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 20:59:54,045.045 INFO    ] Checking for existing commands in stream...
[2026-08-25 20:59:54,177.177 INFO    ] No existing commands found in stream
[2026-08-25 20:59:59,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 20:59:59,202.202 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 21:00:03,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:00:03,232.232 INFO    ] Checking for system updates...
[2026-08-25 21:00:03,373.373 INFO    ] 200
[2026-08-25 21:00:03,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:03,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:03,569.569 INFO    ] No update needed
[2026-08-25 21:00:03,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 21:00:03,673.673 INFO    ] 200
[2026-08-25 21:00:03,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:03,834.834 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:00:04,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:04,035.035 INFO    ] No camera update needed
[2026-08-25 21:00:04,038.038 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:00:04,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:00:04,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:00:04,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:00:06,221.221 INFO    ] ================================================
[2026-08-25 21:00:06,237.237 INFO    ] Launching Daemon at Tue Aug 25 21:00:06 IST 2026
[2026-08-25 21:00:06,249.249 INFO    ] ================================================
[2026-08-25 21:00:06,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:00:06
[2026-08-25 21:00:07,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:00:07,917.917 INFO    ] Initializing speech engine...
[2026-08-25 21:00:07,927.927 INFO    ] 2026-08-25 21:00:07
[2026-08-25 21:00:08,254.254 INFO    ] 2026-08-25 21:00:08
[2026-08-25 21:00:08,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:00:08,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:00:08,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:00:08,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:00:08,783.783 INFO    ] time= 25/08/2026 21:00:08
[2026-08-25 21:00:08,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:00:08,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:00:08,941.941 INFO    ] No existing commands found in stream
[2026-08-25 21:00:13,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:00:13,970.970 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 21:00:18,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:00:18,019.019 INFO    ] Checking for system updates...
[2026-08-25 21:00:18,055.055 INFO    ] 200
[2026-08-25 21:00:18,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:18,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:00:18,113.113 INFO    ] No update needed
[2026-08-25 21:00:18,116.116 INFO    ] Checking for camera pi updates...
[2026-08-25 21:00:18,151.151 INFO    ] 200
[2026-08-25 21:00:18,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:18,195.195 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:00:18,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:00:18,249.249 INFO    ] No camera update needed
[2026-08-25 21:00:18,251.251 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:00:18,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:00:18,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:00:18,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:00:20,306.306 INFO    ] ================================================
[2026-08-25 21:00:20,320.320 INFO    ] Launching Daemon at Tue Aug 25 21:00:20 IST 2026
[2026-08-25 21:00:20,331.331 INFO    ] ================================================
[2026-08-25 21:00:20,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:00:20
[2026-08-25 21:00:21,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:00:21,757.757 INFO    ] Initializing speech engine...
[2026-08-25 21:00:21,766.766 INFO    ] 2026-08-25 21:00:21
[2026-08-25 21:00:22,022.022 INFO    ] 2026-08-25 21:00:22
[2026-08-25 21:00:22,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:00:22,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:00:22,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:00:22,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:00:22,404.404 INFO    ] time= 25/08/2026 21:00:22
[2026-08-25 21:00:22,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:00:22,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:00:22,605.605 INFO    ] No existing commands found in stream
[2026-08-25 21:00:27,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:00:27,619.619 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 21:00:28,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:00:28,966.966 INFO    ] Checking for system updates...
[2026-08-25 21:00:29,003.003 INFO    ] 200
[2026-08-25 21:00:29,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:29,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:29,061.061 INFO    ] No update needed
[2026-08-25 21:00:29,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 21:00:29,099.099 INFO    ] 200
[2026-08-25 21:00:29,102.102 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:29,142.142 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:00:29,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:29,288.288 INFO    ] No camera update needed
[2026-08-25 21:00:29,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:00:29,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:00:29,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:00:29,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:00:31,347.347 INFO    ] ================================================
[2026-08-25 21:00:31,362.362 INFO    ] Launching Daemon at Tue Aug 25 21:00:31 IST 2026
[2026-08-25 21:00:31,372.372 INFO    ] ================================================
[2026-08-25 21:00:31,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:00:31
[2026-08-25 21:00:32,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:00:32,870.870 INFO    ] Initializing speech engine...
[2026-08-25 21:00:32,883.883 INFO    ] 2026-08-25 21:00:32
[2026-08-25 21:00:33,153.153 INFO    ] 2026-08-25 21:00:33
[2026-08-25 21:00:33,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:00:33,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:00:33,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:00:33,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:00:33,537.537 INFO    ] time= 25/08/2026 21:00:33
[2026-08-25 21:00:33,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:00:33,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:00:33,735.735 INFO    ] No existing commands found in stream
[2026-08-25 21:00:38,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:00:38,763.763 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 21:00:42,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:00:42,341.341 INFO    ] Checking for system updates...
[2026-08-25 21:00:42,377.377 INFO    ] 200
[2026-08-25 21:00:42,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:42,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:42,434.434 INFO    ] No update needed
[2026-08-25 21:00:42,437.437 INFO    ] Checking for camera pi updates...
[2026-08-25 21:00:42,471.471 INFO    ] 200
[2026-08-25 21:00:42,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:42,513.513 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:00:42,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:42,564.564 INFO    ] No camera update needed
[2026-08-25 21:00:42,566.566 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:00:42,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:00:42,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:00:42,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:00:44,621.621 INFO    ] ================================================
[2026-08-25 21:00:44,636.636 INFO    ] Launching Daemon at Tue Aug 25 21:00:44 IST 2026
[2026-08-25 21:00:44,647.647 INFO    ] ================================================
[2026-08-25 21:00:45,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:00:45
[2026-08-25 21:00:45,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:00:46,118.118 INFO    ] Initializing speech engine...
[2026-08-25 21:00:46,124.124 INFO    ] 2026-08-25 21:00:46
[2026-08-25 21:00:46,377.377 INFO    ] 2026-08-25 21:00:46
[2026-08-25 21:00:46,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:00:46,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:00:46,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:00:46,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:00:46,851.851 INFO    ] time= 25/08/2026 21:00:46
[2026-08-25 21:00:46,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:00:46,936.936 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:00:47,082.082 INFO    ] No existing commands found in stream
[2026-08-25 21:00:52,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:00:52,098.098 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-08-25 21:00:54,777.777 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:00:54,780.780 INFO    ] Checking for system updates...
[2026-08-25 21:00:54,817.817 INFO    ] 200
[2026-08-25 21:00:54,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:54,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:54,874.874 INFO    ] No update needed
[2026-08-25 21:00:54,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 21:00:54,911.911 INFO    ] 200
[2026-08-25 21:00:54,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:00:54,954.954 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:00:55,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:00:55,010.010 INFO    ] No camera update needed
[2026-08-25 21:00:55,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:00:55,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:00:55,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:00:55,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:00:57,068.068 INFO    ] ================================================
[2026-08-25 21:00:57,083.083 INFO    ] Launching Daemon at Tue Aug 25 21:00:57 IST 2026
[2026-08-25 21:00:57,093.093 INFO    ] ================================================
[2026-08-25 21:00:57,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:00:57
[2026-08-25 21:00:58,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:00:58,546.546 INFO    ] Initializing speech engine...
[2026-08-25 21:00:58,554.554 INFO    ] 2026-08-25 21:00:58
[2026-08-25 21:00:58,813.813 INFO    ] 2026-08-25 21:00:58
[2026-08-25 21:00:58,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:00:59,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:00:59,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:00:59,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:00:59,298.298 INFO    ] time= 25/08/2026 21:00:59
[2026-08-25 21:00:59,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:00:59,361.361 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:00:59,507.507 INFO    ] No existing commands found in stream
[2026-08-25 21:01:04,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:01:04,525.525 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 21:01:06,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:01:06,208.208 INFO    ] Checking for system updates...
[2026-08-25 21:01:06,246.246 INFO    ] 200
[2026-08-25 21:01:06,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:06,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:01:06,329.329 INFO    ] No update needed
[2026-08-25 21:01:06,332.332 INFO    ] Checking for camera pi updates...
[2026-08-25 21:01:06,374.374 INFO    ] 200
[2026-08-25 21:01:06,377.377 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:06,439.439 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:01:06,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:01:06,493.493 INFO    ] No camera update needed
[2026-08-25 21:01:06,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:01:06,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:01:06,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:01:06,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:01:08,550.550 INFO    ] ================================================
[2026-08-25 21:01:08,566.566 INFO    ] Launching Daemon at Tue Aug 25 21:01:08 IST 2026
[2026-08-25 21:01:08,576.576 INFO    ] ================================================
[2026-08-25 21:01:09,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:01:09
[2026-08-25 21:01:09,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:01:10,045.045 INFO    ] Initializing speech engine...
[2026-08-25 21:01:10,057.057 INFO    ] 2026-08-25 21:01:10
[2026-08-25 21:01:10,316.316 INFO    ] 2026-08-25 21:01:10
[2026-08-25 21:01:10,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:01:10,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:01:10,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:01:10,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:01:10,695.695 INFO    ] time= 25/08/2026 21:01:10
[2026-08-25 21:01:10,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:01:10,763.763 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:01:10,896.896 INFO    ] No existing commands found in stream
[2026-08-25 21:01:15,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:01:15,912.912 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 21:01:20,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:01:20,328.328 INFO    ] Checking for system updates...
[2026-08-25 21:01:20,370.370 INFO    ] 200
[2026-08-25 21:01:20,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:20,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:01:20,472.472 INFO    ] No update needed
[2026-08-25 21:01:20,475.475 INFO    ] Checking for camera pi updates...
[2026-08-25 21:01:20,513.513 INFO    ] 200
[2026-08-25 21:01:20,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:20,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:01:20,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:01:20,616.616 INFO    ] No camera update needed
[2026-08-25 21:01:20,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:01:20,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:01:20,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:01:20,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:01:22,672.672 INFO    ] ================================================
[2026-08-25 21:01:22,692.692 INFO    ] Launching Daemon at Tue Aug 25 21:01:22 IST 2026
[2026-08-25 21:01:22,703.703 INFO    ] ================================================
[2026-08-25 21:01:23,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:01:23
[2026-08-25 21:01:23,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:01:24,188.188 INFO    ] Initializing speech engine...
[2026-08-25 21:01:24,200.200 INFO    ] 2026-08-25 21:01:24
[2026-08-25 21:01:24,470.470 INFO    ] 2026-08-25 21:01:24
[2026-08-25 21:01:24,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:01:24,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:01:24,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:01:24,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:01:24,942.942 INFO    ] time= 25/08/2026 21:01:24
[2026-08-25 21:01:25,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:01:25,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:01:25,138.138 INFO    ] No existing commands found in stream
[2026-08-25 21:01:30,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:01:30,160.160 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 21:01:32,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:01:32,951.951 INFO    ] Checking for system updates...
[2026-08-25 21:01:32,987.987 INFO    ] 200
[2026-08-25 21:01:32,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:33,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:01:33,047.047 INFO    ] No update needed
[2026-08-25 21:01:33,050.050 INFO    ] Checking for camera pi updates...
[2026-08-25 21:01:33,084.084 INFO    ] 200
[2026-08-25 21:01:33,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:33,133.133 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:01:33,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:01:33,196.196 INFO    ] No camera update needed
[2026-08-25 21:01:33,198.198 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:01:33,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:01:33,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:01:33,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:01:35,251.251 INFO    ] ================================================
[2026-08-25 21:01:35,267.267 INFO    ] Launching Daemon at Tue Aug 25 21:01:35 IST 2026
[2026-08-25 21:01:35,277.277 INFO    ] ================================================
[2026-08-25 21:01:35,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:01:35
[2026-08-25 21:01:36,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:01:36,738.738 INFO    ] Initializing speech engine...
[2026-08-25 21:01:36,748.748 INFO    ] 2026-08-25 21:01:36
[2026-08-25 21:01:36,999.999 INFO    ] 2026-08-25 21:01:36
[2026-08-25 21:01:37,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:01:37,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:01:37,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:01:37,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:01:37,467.467 INFO    ] time= 25/08/2026 21:01:37
[2026-08-25 21:01:37,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:01:37,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:01:37,701.701 INFO    ] No existing commands found in stream
[2026-08-25 21:01:42,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:01:42,716.716 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 21:01:44,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:01:44,249.249 INFO    ] Checking for system updates...
[2026-08-25 21:01:44,286.286 INFO    ] 200
[2026-08-25 21:01:44,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:44,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:01:44,354.354 INFO    ] No update needed
[2026-08-25 21:01:44,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 21:01:44,393.393 INFO    ] 200
[2026-08-25 21:01:44,396.396 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:44,436.436 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:01:44,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:01:44,488.488 INFO    ] No camera update needed
[2026-08-25 21:01:44,490.490 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:01:44,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:01:44,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:01:44,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:01:46,545.545 INFO    ] ================================================
[2026-08-25 21:01:46,560.560 INFO    ] Launching Daemon at Tue Aug 25 21:01:46 IST 2026
[2026-08-25 21:01:46,571.571 INFO    ] ================================================
[2026-08-25 21:01:47,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:01:47
[2026-08-25 21:01:47,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:01:48,255.255 INFO    ] Initializing speech engine...
[2026-08-25 21:01:48,262.262 INFO    ] 2026-08-25 21:01:48
[2026-08-25 21:01:48,554.554 INFO    ] 2026-08-25 21:01:48
[2026-08-25 21:01:48,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:01:48,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:01:48,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:01:48,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:01:48,978.978 INFO    ] time= 25/08/2026 21:01:48
[2026-08-25 21:01:49,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:01:49,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:01:49,157.157 INFO    ] No existing commands found in stream
[2026-08-25 21:01:54,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:01:54,170.170 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 21:01:57,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:01:57,541.541 INFO    ] Checking for system updates...
[2026-08-25 21:01:57,577.577 INFO    ] 200
[2026-08-25 21:01:57,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:57,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:01:57,639.639 INFO    ] No update needed
[2026-08-25 21:01:57,642.642 INFO    ] Checking for camera pi updates...
[2026-08-25 21:01:57,677.677 INFO    ] 200
[2026-08-25 21:01:57,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:01:57,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:01:57,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:01:57,790.790 INFO    ] No camera update needed
[2026-08-25 21:01:57,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:01:57,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:01:57,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:01:57,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:01:59,846.846 INFO    ] ================================================
[2026-08-25 21:01:59,862.862 INFO    ] Launching Daemon at Tue Aug 25 21:01:59 IST 2026
[2026-08-25 21:01:59,873.873 INFO    ] ================================================
[2026-08-25 21:02:00,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:02:00
[2026-08-25 21:02:01,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:02:01,565.565 INFO    ] Initializing speech engine...
[2026-08-25 21:02:01,616.616 INFO    ] 2026-08-25 21:02:01
[2026-08-25 21:02:02,137.137 INFO    ] 2026-08-25 21:02:02
[2026-08-25 21:02:02,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:02:02,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:02:02,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:02:02,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:02:02,683.683 INFO    ] time= 25/08/2026 21:02:02
[2026-08-25 21:02:02,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:02:02,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:02:02,935.935 INFO    ] No existing commands found in stream
[2026-08-25 21:02:07,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:02:07,967.967 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 21:02:11,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:02:11,069.069 INFO    ] Checking for system updates...
[2026-08-25 21:02:11,109.109 INFO    ] 200
[2026-08-25 21:02:11,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:11,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:02:11,185.185 INFO    ] No update needed
[2026-08-25 21:02:11,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 21:02:11,221.221 INFO    ] 200
[2026-08-25 21:02:11,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:11,264.264 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:02:11,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:02:11,329.329 INFO    ] No camera update needed
[2026-08-25 21:02:11,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:02:11,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:02:11,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:02:11,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:02:13,383.383 INFO    ] ================================================
[2026-08-25 21:02:13,399.399 INFO    ] Launching Daemon at Tue Aug 25 21:02:13 IST 2026
[2026-08-25 21:02:13,410.410 INFO    ] ================================================
[2026-08-25 21:02:13,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:02:13
[2026-08-25 21:02:14,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:02:14,821.821 INFO    ] Initializing speech engine...
[2026-08-25 21:02:14,835.835 INFO    ] 2026-08-25 21:02:14
[2026-08-25 21:02:15,128.128 INFO    ] 2026-08-25 21:02:15
[2026-08-25 21:02:15,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:02:15,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:02:15,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:02:15,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:02:15,558.558 INFO    ] time= 25/08/2026 21:02:15
[2026-08-25 21:02:15,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:02:15,574.574 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:02:15,651.651 INFO    ] No existing commands found in stream
[2026-08-25 21:02:20,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:02:20,665.665 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-08-25 21:02:21,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:02:21,098.098 INFO    ] Checking for system updates...
[2026-08-25 21:02:21,134.134 INFO    ] 200
[2026-08-25 21:02:21,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:21,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:02:21,193.193 INFO    ] No update needed
[2026-08-25 21:02:21,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 21:02:21,233.233 INFO    ] 200
[2026-08-25 21:02:21,236.236 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:21,283.283 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:02:21,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:02:21,342.342 INFO    ] No camera update needed
[2026-08-25 21:02:21,345.345 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:02:21,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:02:21,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:02:21,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:02:23,403.403 INFO    ] ================================================
[2026-08-25 21:02:23,418.418 INFO    ] Launching Daemon at Tue Aug 25 21:02:23 IST 2026
[2026-08-25 21:02:23,429.429 INFO    ] ================================================
[2026-08-25 21:02:24,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:02:23
[2026-08-25 21:02:24,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:02:24,883.883 INFO    ] Initializing speech engine...
[2026-08-25 21:02:24,889.889 INFO    ] 2026-08-25 21:02:24
[2026-08-25 21:02:25,135.135 INFO    ] 2026-08-25 21:02:25
[2026-08-25 21:02:25,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:02:25,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:02:25,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:02:25,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:02:25,591.591 INFO    ] time= 25/08/2026 21:02:25
[2026-08-25 21:02:25,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:02:25,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:02:25,799.799 INFO    ] No existing commands found in stream
[2026-08-25 21:02:30,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:02:30,813.813 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 21:02:34,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:02:34,214.214 INFO    ] Checking for system updates...
[2026-08-25 21:02:34,251.251 INFO    ] 200
[2026-08-25 21:02:34,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:34,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:02:34,317.317 INFO    ] No update needed
[2026-08-25 21:02:34,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 21:02:34,353.353 INFO    ] 200
[2026-08-25 21:02:34,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:34,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:02:34,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:02:34,454.454 INFO    ] No camera update needed
[2026-08-25 21:02:34,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:02:34,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:02:34,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:02:34,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:02:36,516.516 INFO    ] ================================================
[2026-08-25 21:02:36,531.531 INFO    ] Launching Daemon at Tue Aug 25 21:02:36 IST 2026
[2026-08-25 21:02:36,542.542 INFO    ] ================================================
[2026-08-25 21:02:37,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:02:37
[2026-08-25 21:02:37,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:02:37,966.966 INFO    ] Initializing speech engine...
[2026-08-25 21:02:37,973.973 INFO    ] 2026-08-25 21:02:37
[2026-08-25 21:02:38,231.231 INFO    ] 2026-08-25 21:02:38
[2026-08-25 21:02:38,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:02:38,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:02:38,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:02:38,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:02:38,664.664 INFO    ] time= 25/08/2026 21:02:38
[2026-08-25 21:02:38,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:02:38,781.781 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:02:38,920.920 INFO    ] No existing commands found in stream
[2026-08-25 21:02:43,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:02:43,942.942 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 21:02:47,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:02:47,775.775 INFO    ] Checking for system updates...
[2026-08-25 21:02:47,812.812 INFO    ] 200
[2026-08-25 21:02:47,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:47,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:02:47,871.871 INFO    ] No update needed
[2026-08-25 21:02:47,873.873 INFO    ] Checking for camera pi updates...
[2026-08-25 21:02:47,912.912 INFO    ] 200
[2026-08-25 21:02:47,915.915 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:02:47,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:02:48,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:02:48,010.010 INFO    ] No camera update needed
[2026-08-25 21:02:48,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:02:48,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:02:48,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:02:48,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:02:50,068.068 INFO    ] ================================================
[2026-08-25 21:02:50,083.083 INFO    ] Launching Daemon at Tue Aug 25 21:02:50 IST 2026
[2026-08-25 21:02:50,094.094 INFO    ] ================================================
[2026-08-25 21:02:50,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:02:50
[2026-08-25 21:02:51,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:02:51,634.634 INFO    ] Initializing speech engine...
[2026-08-25 21:02:51,647.647 INFO    ] 2026-08-25 21:02:51
[2026-08-25 21:02:51,895.895 INFO    ] 2026-08-25 21:02:51
[2026-08-25 21:02:51,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:02:52,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:02:52,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:02:52,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:02:52,399.399 INFO    ] time= 25/08/2026 21:02:52
[2026-08-25 21:02:52,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:02:52,463.463 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:02:52,583.583 INFO    ] No existing commands found in stream
[2026-08-25 21:02:57,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:02:57,616.616 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 21:03:00,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:03:00,427.427 INFO    ] Checking for system updates...
[2026-08-25 21:03:00,463.463 INFO    ] 200
[2026-08-25 21:03:00,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:00,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:03:00,528.528 INFO    ] No update needed
[2026-08-25 21:03:00,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 21:03:00,569.569 INFO    ] 200
[2026-08-25 21:03:00,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:00,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:03:00,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:03:00,668.668 INFO    ] No camera update needed
[2026-08-25 21:03:00,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:03:00,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:03:00,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:03:00,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:03:02,727.727 INFO    ] ================================================
[2026-08-25 21:03:02,747.747 INFO    ] Launching Daemon at Tue Aug 25 21:03:02 IST 2026
[2026-08-25 21:03:02,758.758 INFO    ] ================================================
[2026-08-25 21:03:03,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:03:03
[2026-08-25 21:03:03,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:03:04,249.249 INFO    ] Initializing speech engine...
[2026-08-25 21:03:04,256.256 INFO    ] 2026-08-25 21:03:04
[2026-08-25 21:03:04,527.527 INFO    ] 2026-08-25 21:03:04
[2026-08-25 21:03:04,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:03:04,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:03:04,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:03:04,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:03:04,910.910 INFO    ] time= 25/08/2026 21:03:04
[2026-08-25 21:03:04,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:03:04,952.952 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:03:05,036.036 INFO    ] No existing commands found in stream
[2026-08-25 21:03:10,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:03:10,053.053 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 21:03:11,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:03:11,521.521 INFO    ] Checking for system updates...
[2026-08-25 21:03:11,556.556 INFO    ] 200
[2026-08-25 21:03:11,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:11,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:03:11,622.622 INFO    ] No update needed
[2026-08-25 21:03:11,625.625 INFO    ] Checking for camera pi updates...
[2026-08-25 21:03:11,658.658 INFO    ] 200
[2026-08-25 21:03:11,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:11,700.700 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:03:11,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:03:11,753.753 INFO    ] No camera update needed
[2026-08-25 21:03:11,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:03:11,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:03:11,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:03:11,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:03:13,810.810 INFO    ] ================================================
[2026-08-25 21:03:13,825.825 INFO    ] Launching Daemon at Tue Aug 25 21:03:13 IST 2026
[2026-08-25 21:03:13,835.835 INFO    ] ================================================
[2026-08-25 21:03:14,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:03:14
[2026-08-25 21:03:15,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:03:15,472.472 INFO    ] Initializing speech engine...
[2026-08-25 21:03:15,481.481 INFO    ] 2026-08-25 21:03:15
[2026-08-25 21:03:15,758.758 INFO    ] 2026-08-25 21:03:15
[2026-08-25 21:03:15,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:03:16,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:03:16,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:03:16,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:03:16,262.262 INFO    ] time= 25/08/2026 21:03:16
[2026-08-25 21:03:16,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:03:16,339.339 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:03:16,473.473 INFO    ] No existing commands found in stream
[2026-08-25 21:03:21,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:03:21,504.504 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 21:03:22,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:03:22,758.758 INFO    ] Checking for system updates...
[2026-08-25 21:03:22,794.794 INFO    ] 200
[2026-08-25 21:03:22,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:22,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:03:22,853.853 INFO    ] No update needed
[2026-08-25 21:03:22,856.856 INFO    ] Checking for camera pi updates...
[2026-08-25 21:03:22,894.894 INFO    ] 200
[2026-08-25 21:03:22,897.897 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:22,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:03:23,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:03:23,008.008 INFO    ] No camera update needed
[2026-08-25 21:03:23,011.011 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:03:23,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:03:23,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:03:23,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:03:25,066.066 INFO    ] ================================================
[2026-08-25 21:03:25,082.082 INFO    ] Launching Daemon at Tue Aug 25 21:03:25 IST 2026
[2026-08-25 21:03:25,092.092 INFO    ] ================================================
[2026-08-25 21:03:25,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:03:25
[2026-08-25 21:03:26,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:03:26,504.504 INFO    ] Initializing speech engine...
[2026-08-25 21:03:26,523.523 INFO    ] 2026-08-25 21:03:26
[2026-08-25 21:03:26,774.774 INFO    ] 2026-08-25 21:03:26
[2026-08-25 21:03:26,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:03:26,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:03:26,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:03:27,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:03:27,152.152 INFO    ] time= 25/08/2026 21:03:27
[2026-08-25 21:03:27,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:03:27,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:03:27,348.348 INFO    ] No existing commands found in stream
[2026-08-25 21:03:32,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:03:32,367.367 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 21:03:35,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:03:35,240.240 INFO    ] Checking for system updates...
[2026-08-25 21:03:35,279.279 INFO    ] 200
[2026-08-25 21:03:35,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:35,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:03:35,336.336 INFO    ] No update needed
[2026-08-25 21:03:35,339.339 INFO    ] Checking for camera pi updates...
[2026-08-25 21:03:35,376.376 INFO    ] 200
[2026-08-25 21:03:35,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:35,419.419 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:03:35,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:03:35,484.484 INFO    ] No camera update needed
[2026-08-25 21:03:35,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:03:35,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:03:35,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:03:35,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:03:37,538.538 INFO    ] ================================================
[2026-08-25 21:03:37,553.553 INFO    ] Launching Daemon at Tue Aug 25 21:03:37 IST 2026
[2026-08-25 21:03:37,564.564 INFO    ] ================================================
[2026-08-25 21:03:38,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:03:38
[2026-08-25 21:03:38,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:03:39,203.203 INFO    ] Initializing speech engine...
[2026-08-25 21:03:39,215.215 INFO    ] 2026-08-25 21:03:39
[2026-08-25 21:03:39,526.526 INFO    ] 2026-08-25 21:03:39
[2026-08-25 21:03:39,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:03:39,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:03:39,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:03:40,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:03:40,035.035 INFO    ] time= 25/08/2026 21:03:40
[2026-08-25 21:03:40,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:03:40,082.082 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:03:40,187.187 INFO    ] No existing commands found in stream
[2026-08-25 21:03:45,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:03:45,205.205 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 21:03:48,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:03:48,437.437 INFO    ] Checking for system updates...
[2026-08-25 21:03:48,475.475 INFO    ] 200
[2026-08-25 21:03:48,478.478 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:48,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:03:48,534.534 INFO    ] No update needed
[2026-08-25 21:03:48,537.537 INFO    ] Checking for camera pi updates...
[2026-08-25 21:03:48,574.574 INFO    ] 200
[2026-08-25 21:03:48,577.577 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:03:48,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:03:48,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:03:48,666.666 INFO    ] No camera update needed
[2026-08-25 21:03:48,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:03:48,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:03:48,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:03:48,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:03:50,720.720 INFO    ] ================================================
[2026-08-25 21:03:50,736.736 INFO    ] Launching Daemon at Tue Aug 25 21:03:50 IST 2026
[2026-08-25 21:03:50,747.747 INFO    ] ================================================
[2026-08-25 21:03:51,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:03:51
[2026-08-25 21:03:51,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:03:52,206.206 INFO    ] Initializing speech engine...
[2026-08-25 21:03:52,216.216 INFO    ] 2026-08-25 21:03:52
[2026-08-25 21:03:52,479.479 INFO    ] 2026-08-25 21:03:52
[2026-08-25 21:03:52,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:03:52,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:03:52,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:03:52,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:03:52,969.969 INFO    ] time= 25/08/2026 21:03:52
[2026-08-25 21:03:53,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:03:53,032.032 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:03:53,178.178 INFO    ] No existing commands found in stream
[2026-08-25 21:03:58,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:03:58,196.196 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 21:04:00,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:04:00,830.830 INFO    ] Checking for system updates...
[2026-08-25 21:04:00,870.870 INFO    ] 200
[2026-08-25 21:04:00,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:00,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:00,929.929 INFO    ] No update needed
[2026-08-25 21:04:00,931.931 INFO    ] Checking for camera pi updates...
[2026-08-25 21:04:00,965.965 INFO    ] 200
[2026-08-25 21:04:00,967.967 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:01,014.014 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:04:01,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:01,065.065 INFO    ] No camera update needed
[2026-08-25 21:04:01,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:04:01,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:04:01,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:04:01,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:04:03,126.126 INFO    ] ================================================
[2026-08-25 21:04:03,141.141 INFO    ] Launching Daemon at Tue Aug 25 21:04:03 IST 2026
[2026-08-25 21:04:03,151.151 INFO    ] ================================================
[2026-08-25 21:04:03,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:04:03
[2026-08-25 21:04:04,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:04:04,725.725 INFO    ] Initializing speech engine...
[2026-08-25 21:04:04,735.735 INFO    ] 2026-08-25 21:04:04
[2026-08-25 21:04:05,035.035 INFO    ] 2026-08-25 21:04:05
[2026-08-25 21:04:05,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:04:05,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:04:05,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:04:05,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:04:05,528.528 INFO    ] time= 25/08/2026 21:04:05
[2026-08-25 21:04:05,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:04:05,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:04:05,747.747 INFO    ] No existing commands found in stream
[2026-08-25 21:04:10,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:04:10,769.769 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 21:04:12,661.661 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:04:12,663.663 INFO    ] Checking for system updates...
[2026-08-25 21:04:12,699.699 INFO    ] 200
[2026-08-25 21:04:12,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:12,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:12,758.758 INFO    ] No update needed
[2026-08-25 21:04:12,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 21:04:12,799.799 INFO    ] 200
[2026-08-25 21:04:12,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:12,848.848 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:04:12,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:12,896.896 INFO    ] No camera update needed
[2026-08-25 21:04:12,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:04:12,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:04:12,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:04:12,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:04:14,955.955 INFO    ] ================================================
[2026-08-25 21:04:14,970.970 INFO    ] Launching Daemon at Tue Aug 25 21:04:14 IST 2026
[2026-08-25 21:04:14,981.981 INFO    ] ================================================
[2026-08-25 21:04:15,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:04:15
[2026-08-25 21:04:16,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:04:16,395.395 INFO    ] Initializing speech engine...
[2026-08-25 21:04:16,405.405 INFO    ] 2026-08-25 21:04:16
[2026-08-25 21:04:16,663.663 INFO    ] 2026-08-25 21:04:16
[2026-08-25 21:04:16,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:04:16,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:04:16,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:04:17,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:04:17,126.126 INFO    ] time= 25/08/2026 21:04:17
[2026-08-25 21:04:17,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:04:17,212.212 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:04:17,334.334 INFO    ] No existing commands found in stream
[2026-08-25 21:04:22,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:04:22,367.367 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 21:04:24,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:04:24,451.451 INFO    ] Checking for system updates...
[2026-08-25 21:04:24,487.487 INFO    ] 200
[2026-08-25 21:04:24,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:24,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:24,544.544 INFO    ] No update needed
[2026-08-25 21:04:24,547.547 INFO    ] Checking for camera pi updates...
[2026-08-25 21:04:24,581.581 INFO    ] 200
[2026-08-25 21:04:24,583.583 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:24,630.630 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:04:24,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:24,679.679 INFO    ] No camera update needed
[2026-08-25 21:04:24,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:04:24,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:04:24,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:04:24,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:04:26,734.734 INFO    ] ================================================
[2026-08-25 21:04:26,749.749 INFO    ] Launching Daemon at Tue Aug 25 21:04:26 IST 2026
[2026-08-25 21:04:26,760.760 INFO    ] ================================================
[2026-08-25 21:04:27,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:04:27
[2026-08-25 21:04:27,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:04:28,200.200 INFO    ] Initializing speech engine...
[2026-08-25 21:04:28,209.209 INFO    ] 2026-08-25 21:04:28
[2026-08-25 21:04:28,509.509 INFO    ] 2026-08-25 21:04:28
[2026-08-25 21:04:28,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:04:28,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:04:28,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:04:28,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:04:28,893.893 INFO    ] time= 25/08/2026 21:04:28
[2026-08-25 21:04:28,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:04:28,939.939 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:04:29,070.070 INFO    ] No existing commands found in stream
[2026-08-25 21:04:34,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:04:34,098.098 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 21:04:35,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:04:35,774.774 INFO    ] Checking for system updates...
[2026-08-25 21:04:35,816.816 INFO    ] 200
[2026-08-25 21:04:35,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:35,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:35,881.881 INFO    ] No update needed
[2026-08-25 21:04:35,884.884 INFO    ] Checking for camera pi updates...
[2026-08-25 21:04:35,922.922 INFO    ] 200
[2026-08-25 21:04:35,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:35,971.971 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:04:36,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:04:36,119.119 INFO    ] No camera update needed
[2026-08-25 21:04:36,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:04:36,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:04:36,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:04:36,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:04:38,174.174 INFO    ] ================================================
[2026-08-25 21:04:38,190.190 INFO    ] Launching Daemon at Tue Aug 25 21:04:38 IST 2026
[2026-08-25 21:04:38,201.201 INFO    ] ================================================
[2026-08-25 21:04:38,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:04:38
[2026-08-25 21:04:39,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:04:39,876.876 INFO    ] Initializing speech engine...
[2026-08-25 21:04:39,887.887 INFO    ] 2026-08-25 21:04:39
[2026-08-25 21:04:40,205.205 INFO    ] 2026-08-25 21:04:40
[2026-08-25 21:04:40,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:04:40,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:04:40,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:04:40,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:04:40,732.732 INFO    ] time= 25/08/2026 21:04:40
[2026-08-25 21:04:40,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:04:40,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:04:40,917.917 INFO    ] No existing commands found in stream
[2026-08-25 21:04:45,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:04:45,951.951 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 21:04:48,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:04:48,212.212 INFO    ] Checking for system updates...
[2026-08-25 21:04:48,249.249 INFO    ] 200
[2026-08-25 21:04:48,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:48,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:04:48,315.315 INFO    ] No update needed
[2026-08-25 21:04:48,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 21:04:48,350.350 INFO    ] 200
[2026-08-25 21:04:48,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:04:48,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:04:48,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:04:48,483.483 INFO    ] No camera update needed
[2026-08-25 21:04:48,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:04:48,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:04:48,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:04:48,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:04:50,538.538 INFO    ] ================================================
[2026-08-25 21:04:50,552.552 INFO    ] Launching Daemon at Tue Aug 25 21:04:50 IST 2026
[2026-08-25 21:04:50,563.563 INFO    ] ================================================
[2026-08-25 21:04:51,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:04:51
[2026-08-25 21:04:51,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:04:52,022.022 INFO    ] Initializing speech engine...
[2026-08-25 21:04:52,031.031 INFO    ] 2026-08-25 21:04:52
[2026-08-25 21:04:52,291.291 INFO    ] 2026-08-25 21:04:52
[2026-08-25 21:04:52,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:04:52,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:04:52,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:04:52,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:04:52,791.791 INFO    ] time= 25/08/2026 21:04:52
[2026-08-25 21:04:52,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:04:52,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:04:52,989.989 INFO    ] No existing commands found in stream
[2026-08-25 21:04:58,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:04:58,007.007 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 21:05:02,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:05:02,162.162 INFO    ] Checking for system updates...
[2026-08-25 21:05:02,207.207 INFO    ] 200
[2026-08-25 21:05:02,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:02,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:05:02,288.288 INFO    ] No update needed
[2026-08-25 21:05:02,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 21:05:02,340.340 INFO    ] 200
[2026-08-25 21:05:02,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:02,404.404 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:05:02,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:05:02,497.497 INFO    ] No camera update needed
[2026-08-25 21:05:02,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:05:02,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:05:02,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:05:02,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:05:04,561.561 INFO    ] ================================================
[2026-08-25 21:05:04,578.578 INFO    ] Launching Daemon at Tue Aug 25 21:05:04 IST 2026
[2026-08-25 21:05:04,588.588 INFO    ] ================================================
[2026-08-25 21:05:05,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:05:05
[2026-08-25 21:05:05,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:05:06,037.037 INFO    ] Initializing speech engine...
[2026-08-25 21:05:06,047.047 INFO    ] 2026-08-25 21:05:06
[2026-08-25 21:05:06,300.300 INFO    ] 2026-08-25 21:05:06
[2026-08-25 21:05:06,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:05:06,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:05:06,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:05:06,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:05:06,879.879 INFO    ] time= 25/08/2026 21:05:06
[2026-08-25 21:05:06,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:05:06,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:05:07,040.040 INFO    ] No existing commands found in stream
[2026-08-25 21:05:12,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:05:12,070.070 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 21:05:19,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:05:19,050.050 INFO    ] Checking for system updates...
[2026-08-25 21:05:19,093.093 INFO    ] 200
[2026-08-25 21:05:19,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:19,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:05:19,154.154 INFO    ] No update needed
[2026-08-25 21:05:19,157.157 INFO    ] Checking for camera pi updates...
[2026-08-25 21:05:19,197.197 INFO    ] 200
[2026-08-25 21:05:19,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:19,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:05:19,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:05:19,294.294 INFO    ] No camera update needed
[2026-08-25 21:05:19,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:05:19,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:05:19,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:05:19,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:05:21,351.351 INFO    ] ================================================
[2026-08-25 21:05:21,367.367 INFO    ] Launching Daemon at Tue Aug 25 21:05:21 IST 2026
[2026-08-25 21:05:21,378.378 INFO    ] ================================================
[2026-08-25 21:05:21,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:05:21
[2026-08-25 21:05:22,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:05:22,791.791 INFO    ] Initializing speech engine...
[2026-08-25 21:05:22,798.798 INFO    ] 2026-08-25 21:05:22
[2026-08-25 21:05:23,103.103 INFO    ] 2026-08-25 21:05:23
[2026-08-25 21:05:23,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:05:23,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:05:23,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:05:23,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:05:23,500.500 INFO    ] time= 25/08/2026 21:05:23
[2026-08-25 21:05:23,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:05:23,553.553 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:05:23,644.644 INFO    ] No existing commands found in stream
[2026-08-25 21:05:28,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:05:28,663.663 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 21:05:31,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:05:31,926.926 INFO    ] Checking for system updates...
[2026-08-25 21:05:31,970.970 INFO    ] 200
[2026-08-25 21:05:31,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:32,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:05:32,040.040 INFO    ] No update needed
[2026-08-25 21:05:32,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 21:05:32,080.080 INFO    ] 200
[2026-08-25 21:05:32,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:32,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:05:32,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:05:32,190.190 INFO    ] No camera update needed
[2026-08-25 21:05:32,193.193 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:05:32,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:05:32,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:05:32,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:05:34,250.250 INFO    ] ================================================
[2026-08-25 21:05:34,265.265 INFO    ] Launching Daemon at Tue Aug 25 21:05:34 IST 2026
[2026-08-25 21:05:34,275.275 INFO    ] ================================================
[2026-08-25 21:05:34,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:05:34
[2026-08-25 21:05:35,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:05:35,736.736 INFO    ] Initializing speech engine...
[2026-08-25 21:05:35,744.744 INFO    ] 2026-08-25 21:05:35
[2026-08-25 21:05:36,002.002 INFO    ] 2026-08-25 21:05:35
[2026-08-25 21:05:36,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:05:36,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:05:36,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:05:36,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:05:36,537.537 INFO    ] time= 25/08/2026 21:05:36
[2026-08-25 21:05:36,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:05:36,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:05:36,668.668 INFO    ] No existing commands found in stream
[2026-08-25 21:05:41,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:05:41,683.683 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 21:05:46,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:05:46,012.012 INFO    ] Checking for system updates...
[2026-08-25 21:05:46,052.052 INFO    ] 200
[2026-08-25 21:05:46,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:46,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:05:46,116.116 INFO    ] No update needed
[2026-08-25 21:05:46,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 21:05:46,153.153 INFO    ] 200
[2026-08-25 21:05:46,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:46,196.196 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:05:46,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:05:46,243.243 INFO    ] No camera update needed
[2026-08-25 21:05:46,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:05:46,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:05:46,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:05:46,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:05:48,299.299 INFO    ] ================================================
[2026-08-25 21:05:48,315.315 INFO    ] Launching Daemon at Tue Aug 25 21:05:48 IST 2026
[2026-08-25 21:05:48,326.326 INFO    ] ================================================
[2026-08-25 21:05:48,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:05:48
[2026-08-25 21:05:49,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:05:49,766.766 INFO    ] Initializing speech engine...
[2026-08-25 21:05:49,776.776 INFO    ] 2026-08-25 21:05:49
[2026-08-25 21:05:50,037.037 INFO    ] 2026-08-25 21:05:50
[2026-08-25 21:05:50,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:05:50,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:05:50,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:05:50,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:05:50,542.542 INFO    ] time= 25/08/2026 21:05:50
[2026-08-25 21:05:50,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:05:50,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:05:50,742.742 INFO    ] No existing commands found in stream
[2026-08-25 21:05:55,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:05:55,767.767 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 21:05:56,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:05:56,353.353 INFO    ] Checking for system updates...
[2026-08-25 21:05:56,390.390 INFO    ] 200
[2026-08-25 21:05:56,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:56,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:05:56,454.454 INFO    ] No update needed
[2026-08-25 21:05:56,457.457 INFO    ] Checking for camera pi updates...
[2026-08-25 21:05:56,491.491 INFO    ] 200
[2026-08-25 21:05:56,493.493 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:05:56,536.536 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:05:56,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:05:56,590.590 INFO    ] No camera update needed
[2026-08-25 21:05:56,592.592 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:05:56,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:05:56,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:05:56,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:05:58,646.646 INFO    ] ================================================
[2026-08-25 21:05:58,661.661 INFO    ] Launching Daemon at Tue Aug 25 21:05:58 IST 2026
[2026-08-25 21:05:58,672.672 INFO    ] ================================================
[2026-08-25 21:05:59,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:05:59
[2026-08-25 21:05:59,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:06:00,070.070 INFO    ] Initializing speech engine...
[2026-08-25 21:06:00,093.093 INFO    ] 2026-08-25 21:06:00
[2026-08-25 21:06:00,347.347 INFO    ] 2026-08-25 21:06:00
[2026-08-25 21:06:00,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:06:00,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:06:00,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:06:00,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:06:00,725.725 INFO    ] time= 25/08/2026 21:06:00
[2026-08-25 21:06:00,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:06:00,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:06:00,911.911 INFO    ] No existing commands found in stream
[2026-08-25 21:06:05,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:06:05,939.939 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 21:06:06,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:06:06,582.582 INFO    ] Checking for system updates...
[2026-08-25 21:06:06,625.625 INFO    ] 200
[2026-08-25 21:06:06,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:06,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:06,682.682 INFO    ] No update needed
[2026-08-25 21:06:06,684.684 INFO    ] Checking for camera pi updates...
[2026-08-25 21:06:06,722.722 INFO    ] 200
[2026-08-25 21:06:06,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:06,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:06:06,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:06,834.834 INFO    ] No camera update needed
[2026-08-25 21:06:06,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:06:06,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:06:06,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:06:06,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:06:08,891.891 INFO    ] ================================================
[2026-08-25 21:06:08,906.906 INFO    ] Launching Daemon at Tue Aug 25 21:06:08 IST 2026
[2026-08-25 21:06:08,918.918 INFO    ] ================================================
[2026-08-25 21:06:09,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:06:09
[2026-08-25 21:06:10,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:06:10,370.370 INFO    ] Initializing speech engine...
[2026-08-25 21:06:10,380.380 INFO    ] 2026-08-25 21:06:10
[2026-08-25 21:06:10,630.630 INFO    ] 2026-08-25 21:06:10
[2026-08-25 21:06:10,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:06:10,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:06:10,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:06:11,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:06:11,125.125 INFO    ] time= 25/08/2026 21:06:11
[2026-08-25 21:06:11,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:06:11,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:06:11,327.327 INFO    ] No existing commands found in stream
[2026-08-25 21:06:16,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:06:16,358.358 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 21:06:19,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:06:19,313.313 INFO    ] Checking for system updates...
[2026-08-25 21:06:19,350.350 INFO    ] 200
[2026-08-25 21:06:19,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:19,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:19,409.409 INFO    ] No update needed
[2026-08-25 21:06:19,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 21:06:19,446.446 INFO    ] 200
[2026-08-25 21:06:19,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:19,490.490 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:06:19,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:19,548.548 INFO    ] No camera update needed
[2026-08-25 21:06:19,551.551 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:06:19,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:06:19,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:06:19,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:06:21,608.608 INFO    ] ================================================
[2026-08-25 21:06:21,622.622 INFO    ] Launching Daemon at Tue Aug 25 21:06:21 IST 2026
[2026-08-25 21:06:21,638.638 INFO    ] ================================================
[2026-08-25 21:06:22,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:06:22
[2026-08-25 21:06:22,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:06:23,306.306 INFO    ] Initializing speech engine...
[2026-08-25 21:06:23,320.320 INFO    ] 2026-08-25 21:06:23
[2026-08-25 21:06:23,595.595 INFO    ] 2026-08-25 21:06:23
[2026-08-25 21:06:23,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:06:23,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:06:23,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:06:24,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:06:24,080.080 INFO    ] time= 25/08/2026 21:06:24
[2026-08-25 21:06:24,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:06:24,161.161 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:06:24,261.261 INFO    ] No existing commands found in stream
[2026-08-25 21:06:29,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:06:29,290.290 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 21:06:32,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:06:32,565.565 INFO    ] Checking for system updates...
[2026-08-25 21:06:32,610.610 INFO    ] 200
[2026-08-25 21:06:32,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:32,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:32,673.673 INFO    ] No update needed
[2026-08-25 21:06:32,676.676 INFO    ] Checking for camera pi updates...
[2026-08-25 21:06:32,717.717 INFO    ] 200
[2026-08-25 21:06:32,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:32,762.762 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:06:32,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:32,821.821 INFO    ] No camera update needed
[2026-08-25 21:06:32,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:06:32,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:06:32,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:06:32,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:06:34,878.878 INFO    ] ================================================
[2026-08-25 21:06:34,893.893 INFO    ] Launching Daemon at Tue Aug 25 21:06:34 IST 2026
[2026-08-25 21:06:34,903.903 INFO    ] ================================================
[2026-08-25 21:06:35,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:06:35
[2026-08-25 21:06:36,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:06:36,338.338 INFO    ] Initializing speech engine...
[2026-08-25 21:06:36,357.357 INFO    ] 2026-08-25 21:06:36
[2026-08-25 21:06:36,603.603 INFO    ] 2026-08-25 21:06:36
[2026-08-25 21:06:36,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:06:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:06:36,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:06:37,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:06:37,098.098 INFO    ] time= 25/08/2026 21:06:37
[2026-08-25 21:06:37,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:06:37,181.181 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:06:37,293.293 INFO    ] No existing commands found in stream
[2026-08-25 21:06:42,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:06:42,308.308 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 21:06:45,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:06:45,886.886 INFO    ] Checking for system updates...
[2026-08-25 21:06:45,922.922 INFO    ] 200
[2026-08-25 21:06:45,924.924 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:45,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:45,981.981 INFO    ] No update needed
[2026-08-25 21:06:45,984.984 INFO    ] Checking for camera pi updates...
[2026-08-25 21:06:46,017.017 INFO    ] 200
[2026-08-25 21:06:46,020.020 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:46,064.064 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:06:46,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:06:46,219.219 INFO    ] No camera update needed
[2026-08-25 21:06:46,221.221 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:06:46,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:06:46,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:06:46,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:06:48,274.274 INFO    ] ================================================
[2026-08-25 21:06:48,289.289 INFO    ] Launching Daemon at Tue Aug 25 21:06:48 IST 2026
[2026-08-25 21:06:48,300.300 INFO    ] ================================================
[2026-08-25 21:06:48,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:06:48
[2026-08-25 21:06:49,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:06:49,727.727 INFO    ] Initializing speech engine...
[2026-08-25 21:06:49,743.743 INFO    ] 2026-08-25 21:06:49
[2026-08-25 21:06:50,028.028 INFO    ] 2026-08-25 21:06:49
[2026-08-25 21:06:50,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:06:50,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:06:50,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:06:50,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:06:50,418.418 INFO    ] time= 25/08/2026 21:06:50
[2026-08-25 21:06:50,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:06:50,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:06:50,531.531 INFO    ] No existing commands found in stream
[2026-08-25 21:06:55,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:06:55,546.546 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 21:06:57,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:06:57,523.523 INFO    ] Checking for system updates...
[2026-08-25 21:06:57,562.562 INFO    ] 200
[2026-08-25 21:06:57,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:57,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:06:57,620.620 INFO    ] No update needed
[2026-08-25 21:06:57,622.622 INFO    ] Checking for camera pi updates...
[2026-08-25 21:06:57,655.655 INFO    ] 200
[2026-08-25 21:06:57,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:06:57,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:06:57,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:06:57,750.750 INFO    ] No camera update needed
[2026-08-25 21:06:57,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:06:57,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:06:57,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:06:57,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:06:59,807.807 INFO    ] ================================================
[2026-08-25 21:06:59,822.822 INFO    ] Launching Daemon at Tue Aug 25 21:06:59 IST 2026
[2026-08-25 21:06:59,833.833 INFO    ] ================================================
[2026-08-25 21:07:00,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:07:00
[2026-08-25 21:07:00,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:07:01,258.258 INFO    ] Initializing speech engine...
[2026-08-25 21:07:01,271.271 INFO    ] 2026-08-25 21:07:01
[2026-08-25 21:07:01,521.521 INFO    ] 2026-08-25 21:07:01
[2026-08-25 21:07:01,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:07:01,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:07:01,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:07:01,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:07:01,936.936 INFO    ] time= 25/08/2026 21:07:01
[2026-08-25 21:07:01,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:07:01,945.945 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:07:02,027.027 INFO    ] No existing commands found in stream
[2026-08-25 21:07:07,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:07:07,040.040 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 21:07:11,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:07:11,193.193 INFO    ] Checking for system updates...
[2026-08-25 21:07:11,229.229 INFO    ] 200
[2026-08-25 21:07:11,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:11,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:07:11,294.294 INFO    ] No update needed
[2026-08-25 21:07:11,297.297 INFO    ] Checking for camera pi updates...
[2026-08-25 21:07:11,330.330 INFO    ] 200
[2026-08-25 21:07:11,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:11,377.377 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:07:11,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:07:11,436.436 INFO    ] No camera update needed
[2026-08-25 21:07:11,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:07:11,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:07:11,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:07:11,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:07:13,491.491 INFO    ] ================================================
[2026-08-25 21:07:13,506.506 INFO    ] Launching Daemon at Tue Aug 25 21:07:13 IST 2026
[2026-08-25 21:07:13,517.517 INFO    ] ================================================
[2026-08-25 21:07:14,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:07:14
[2026-08-25 21:07:14,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:07:14,950.950 INFO    ] Initializing speech engine...
[2026-08-25 21:07:14,960.960 INFO    ] 2026-08-25 21:07:14
[2026-08-25 21:07:15,255.255 INFO    ] 2026-08-25 21:07:15
[2026-08-25 21:07:15,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:07:15,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:07:15,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:07:15,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:07:15,637.637 INFO    ] time= 25/08/2026 21:07:15
[2026-08-25 21:07:15,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:07:15,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:07:15,766.766 INFO    ] No existing commands found in stream
[2026-08-25 21:07:20,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:07:20,784.784 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 21:07:23,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:07:23,604.604 INFO    ] Checking for system updates...
[2026-08-25 21:07:23,640.640 INFO    ] 200
[2026-08-25 21:07:23,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:23,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:07:23,697.697 INFO    ] No update needed
[2026-08-25 21:07:23,700.700 INFO    ] Checking for camera pi updates...
[2026-08-25 21:07:23,733.733 INFO    ] 200
[2026-08-25 21:07:23,736.736 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:23,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:07:23,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:07:23,837.837 INFO    ] No camera update needed
[2026-08-25 21:07:23,839.839 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:07:23,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:07:23,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:07:23,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:07:25,893.893 INFO    ] ================================================
[2026-08-25 21:07:25,909.909 INFO    ] Launching Daemon at Tue Aug 25 21:07:25 IST 2026
[2026-08-25 21:07:25,919.919 INFO    ] ================================================
[2026-08-25 21:07:26,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:07:26
[2026-08-25 21:07:27,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:07:27,333.333 INFO    ] Initializing speech engine...
[2026-08-25 21:07:27,353.353 INFO    ] 2026-08-25 21:07:27
[2026-08-25 21:07:27,633.633 INFO    ] 2026-08-25 21:07:27
[2026-08-25 21:07:27,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:07:27,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:07:27,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:07:28,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:07:28,050.050 INFO    ] time= 25/08/2026 21:07:28
[2026-08-25 21:07:28,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:07:28,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:07:28,143.143 INFO    ] No existing commands found in stream
[2026-08-25 21:07:33,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:07:33,177.177 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 21:07:34,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:07:34,501.501 INFO    ] Checking for system updates...
[2026-08-25 21:07:34,536.536 INFO    ] 200
[2026-08-25 21:07:34,539.539 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:34,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:07:34,593.593 INFO    ] No update needed
[2026-08-25 21:07:34,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 21:07:34,633.633 INFO    ] 200
[2026-08-25 21:07:34,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:34,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:07:34,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:07:34,725.725 INFO    ] No camera update needed
[2026-08-25 21:07:34,727.727 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:07:34,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:07:34,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:07:34,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:07:36,781.781 INFO    ] ================================================
[2026-08-25 21:07:36,796.796 INFO    ] Launching Daemon at Tue Aug 25 21:07:36 IST 2026
[2026-08-25 21:07:36,807.807 INFO    ] ================================================
[2026-08-25 21:07:37,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:07:37
[2026-08-25 21:07:38,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:07:38,439.439 INFO    ] Initializing speech engine...
[2026-08-25 21:07:38,452.452 INFO    ] 2026-08-25 21:07:38
[2026-08-25 21:07:38,723.723 INFO    ] 2026-08-25 21:07:38
[2026-08-25 21:07:38,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:07:39,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:07:39,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:07:39,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:07:39,217.217 INFO    ] time= 25/08/2026 21:07:39
[2026-08-25 21:07:39,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:07:39,282.282 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:07:39,430.430 INFO    ] No existing commands found in stream
[2026-08-25 21:07:44,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:07:44,456.456 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-08-25 21:07:48,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:07:48,495.495 INFO    ] Checking for system updates...
[2026-08-25 21:07:48,535.535 INFO    ] 200
[2026-08-25 21:07:48,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:48,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:07:48,594.594 INFO    ] No update needed
[2026-08-25 21:07:48,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 21:07:48,636.636 INFO    ] 200
[2026-08-25 21:07:48,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:07:48,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:07:48,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:07:48,744.744 INFO    ] No camera update needed
[2026-08-25 21:07:48,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:07:48,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:07:48,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:07:48,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:07:50,802.802 INFO    ] ================================================
[2026-08-25 21:07:50,818.818 INFO    ] Launching Daemon at Tue Aug 25 21:07:50 IST 2026
[2026-08-25 21:07:50,829.829 INFO    ] ================================================
[2026-08-25 21:07:51,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:07:51
[2026-08-25 21:07:51,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:07:52,243.243 INFO    ] Initializing speech engine...
[2026-08-25 21:07:52,252.252 INFO    ] 2026-08-25 21:07:52
[2026-08-25 21:07:52,549.549 INFO    ] 2026-08-25 21:07:52
[2026-08-25 21:07:52,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:07:52,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:07:52,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:07:52,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:07:52,934.934 INFO    ] time= 25/08/2026 21:07:52
[2026-08-25 21:07:52,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:07:52,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:07:53,060.060 INFO    ] No existing commands found in stream
[2026-08-25 21:07:58,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:07:58,075.075 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 21:08:01,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:08:01,092.092 INFO    ] Checking for system updates...
[2026-08-25 21:08:01,127.127 INFO    ] 200
[2026-08-25 21:08:01,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:01,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:08:01,191.191 INFO    ] No update needed
[2026-08-25 21:08:01,194.194 INFO    ] Checking for camera pi updates...
[2026-08-25 21:08:01,227.227 INFO    ] 200
[2026-08-25 21:08:01,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:01,269.269 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:08:01,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:08:01,446.446 INFO    ] No camera update needed
[2026-08-25 21:08:01,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:08:01,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:08:01,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:08:01,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:08:03,506.506 INFO    ] ================================================
[2026-08-25 21:08:03,521.521 INFO    ] Launching Daemon at Tue Aug 25 21:08:03 IST 2026
[2026-08-25 21:08:03,532.532 INFO    ] ================================================
[2026-08-25 21:08:04,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:08:04
[2026-08-25 21:08:04,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:08:04,961.961 INFO    ] Initializing speech engine...
[2026-08-25 21:08:04,967.967 INFO    ] 2026-08-25 21:08:04
[2026-08-25 21:08:05,243.243 INFO    ] 2026-08-25 21:08:05
[2026-08-25 21:08:05,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:08:05,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:08:05,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:08:05,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:08:05,722.722 INFO    ] time= 25/08/2026 21:08:05
[2026-08-25 21:08:05,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:08:05,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:08:05,950.950 INFO    ] No existing commands found in stream
[2026-08-25 21:08:10,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:08:10,967.967 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 21:08:12,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:08:12,905.905 INFO    ] Checking for system updates...
[2026-08-25 21:08:12,946.946 INFO    ] 200
[2026-08-25 21:08:12,949.949 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:13,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:08:13,006.006 INFO    ] No update needed
[2026-08-25 21:08:13,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 21:08:13,042.042 INFO    ] 200
[2026-08-25 21:08:13,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:13,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:08:13,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:08:13,141.141 INFO    ] No camera update needed
[2026-08-25 21:08:13,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:08:13,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:08:13,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:08:13,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:08:15,199.199 INFO    ] ================================================
[2026-08-25 21:08:15,213.213 INFO    ] Launching Daemon at Tue Aug 25 21:08:15 IST 2026
[2026-08-25 21:08:15,224.224 INFO    ] ================================================
[2026-08-25 21:08:15,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:08:15
[2026-08-25 21:08:16,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:08:16,656.656 INFO    ] Initializing speech engine...
[2026-08-25 21:08:16,665.665 INFO    ] 2026-08-25 21:08:16
[2026-08-25 21:08:16,911.911 INFO    ] 2026-08-25 21:08:16
[2026-08-25 21:08:16,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:08:17,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:08:17,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:08:17,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:08:17,375.375 INFO    ] time= 25/08/2026 21:08:17
[2026-08-25 21:08:17,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:08:17,477.477 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:08:17,622.622 INFO    ] No existing commands found in stream
[2026-08-25 21:08:22,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:08:22,639.639 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 21:08:24,709.709 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:08:24,712.712 INFO    ] Checking for system updates...
[2026-08-25 21:08:24,747.747 INFO    ] 200
[2026-08-25 21:08:24,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:24,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:08:24,804.804 INFO    ] No update needed
[2026-08-25 21:08:24,807.807 INFO    ] Checking for camera pi updates...
[2026-08-25 21:08:24,840.840 INFO    ] 200
[2026-08-25 21:08:24,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:24,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:08:24,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:08:24,936.936 INFO    ] No camera update needed
[2026-08-25 21:08:24,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:08:24,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:08:24,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:08:24,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:08:26,991.991 INFO    ] ================================================
[2026-08-25 21:08:27,005.005 INFO    ] Launching Daemon at Tue Aug 25 21:08:27 IST 2026
[2026-08-25 21:08:27,018.018 INFO    ] ================================================
[2026-08-25 21:08:27,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:08:27
[2026-08-25 21:08:28,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:08:28,433.433 INFO    ] Initializing speech engine...
[2026-08-25 21:08:28,442.442 INFO    ] 2026-08-25 21:08:28
[2026-08-25 21:08:28,687.687 INFO    ] 2026-08-25 21:08:28
[2026-08-25 21:08:28,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:08:28,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:08:28,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:08:29,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:08:29,181.181 INFO    ] time= 25/08/2026 21:08:29
[2026-08-25 21:08:29,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:08:29,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:08:29,374.374 INFO    ] No existing commands found in stream
[2026-08-25 21:08:34,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:08:34,402.402 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 21:08:36,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:08:36,087.087 INFO    ] Checking for system updates...
[2026-08-25 21:08:36,124.124 INFO    ] 200
[2026-08-25 21:08:36,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:36,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:08:36,183.183 INFO    ] No update needed
[2026-08-25 21:08:36,185.185 INFO    ] Checking for camera pi updates...
[2026-08-25 21:08:36,218.218 INFO    ] 200
[2026-08-25 21:08:36,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:36,262.262 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:08:36,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:08:36,320.320 INFO    ] No camera update needed
[2026-08-25 21:08:36,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:08:36,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:08:36,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:08:36,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:08:38,375.375 INFO    ] ================================================
[2026-08-25 21:08:38,390.390 INFO    ] Launching Daemon at Tue Aug 25 21:08:38 IST 2026
[2026-08-25 21:08:38,400.400 INFO    ] ================================================
[2026-08-25 21:08:38,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:08:38
[2026-08-25 21:08:39,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:08:39,824.824 INFO    ] Initializing speech engine...
[2026-08-25 21:08:39,833.833 INFO    ] 2026-08-25 21:08:39
[2026-08-25 21:08:40,085.085 INFO    ] 2026-08-25 21:08:40
[2026-08-25 21:08:40,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:08:40,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:08:40,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:08:40,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:08:40,565.565 INFO    ] time= 25/08/2026 21:08:40
[2026-08-25 21:08:40,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:08:40,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:08:40,765.765 INFO    ] No existing commands found in stream
[2026-08-25 21:08:45,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:08:45,778.778 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 21:08:49,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:08:49,702.702 INFO    ] Checking for system updates...
[2026-08-25 21:08:49,738.738 INFO    ] 200
[2026-08-25 21:08:49,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:49,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:08:49,794.794 INFO    ] No update needed
[2026-08-25 21:08:49,797.797 INFO    ] Checking for camera pi updates...
[2026-08-25 21:08:49,831.831 INFO    ] 200
[2026-08-25 21:08:49,833.833 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:08:49,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:08:50,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:08:50,032.032 INFO    ] No camera update needed
[2026-08-25 21:08:50,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:08:50,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:08:50,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:08:50,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:08:52,087.087 INFO    ] ================================================
[2026-08-25 21:08:52,102.102 INFO    ] Launching Daemon at Tue Aug 25 21:08:52 IST 2026
[2026-08-25 21:08:52,113.113 INFO    ] ================================================
[2026-08-25 21:08:52,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:08:52
[2026-08-25 21:08:53,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:08:53,595.595 INFO    ] Initializing speech engine...
[2026-08-25 21:08:53,605.605 INFO    ] 2026-08-25 21:08:53
[2026-08-25 21:08:53,868.868 INFO    ] 2026-08-25 21:08:53
[2026-08-25 21:08:53,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:08:54,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:08:54,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:08:54,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:08:54,362.362 INFO    ] time= 25/08/2026 21:08:54
[2026-08-25 21:08:54,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:08:54,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:08:54,588.588 INFO    ] No existing commands found in stream
[2026-08-25 21:08:59,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:08:59,617.617 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 21:09:00,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:09:00,382.382 INFO    ] Checking for system updates...
[2026-08-25 21:09:00,423.423 INFO    ] 200
[2026-08-25 21:09:00,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:00,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:09:00,488.488 INFO    ] No update needed
[2026-08-25 21:09:00,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 21:09:00,528.528 INFO    ] 200
[2026-08-25 21:09:00,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:00,571.571 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:09:00,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:09:00,627.627 INFO    ] No camera update needed
[2026-08-25 21:09:00,629.629 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:09:00,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:09:00,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:09:00,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:09:02,686.686 INFO    ] ================================================
[2026-08-25 21:09:02,703.703 INFO    ] Launching Daemon at Tue Aug 25 21:09:02 IST 2026
[2026-08-25 21:09:02,716.716 INFO    ] ================================================
[2026-08-25 21:09:03,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:09:03
[2026-08-25 21:09:04,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:09:04,303.303 INFO    ] Initializing speech engine...
[2026-08-25 21:09:04,309.309 INFO    ] 2026-08-25 21:09:04
[2026-08-25 21:09:04,558.558 INFO    ] 2026-08-25 21:09:04
[2026-08-25 21:09:04,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:09:04,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:09:04,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:09:05,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:09:05,103.103 INFO    ] time= 25/08/2026 21:09:05
[2026-08-25 21:09:05,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:09:05,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:09:05,238.238 INFO    ] No existing commands found in stream
[2026-08-25 21:09:10,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:09:10,268.268 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 21:09:13,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:09:13,366.366 INFO    ] Checking for system updates...
[2026-08-25 21:09:13,402.402 INFO    ] 200
[2026-08-25 21:09:13,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:13,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:13,460.460 INFO    ] No update needed
[2026-08-25 21:09:13,462.462 INFO    ] Checking for camera pi updates...
[2026-08-25 21:09:13,496.496 INFO    ] 200
[2026-08-25 21:09:13,498.498 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:13,544.544 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:09:13,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:13,595.595 INFO    ] No camera update needed
[2026-08-25 21:09:13,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:09:13,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:09:13,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:09:13,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:09:15,652.652 INFO    ] ================================================
[2026-08-25 21:09:15,667.667 INFO    ] Launching Daemon at Tue Aug 25 21:09:15 IST 2026
[2026-08-25 21:09:15,678.678 INFO    ] ================================================
[2026-08-25 21:09:16,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:09:16
[2026-08-25 21:09:16,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:09:17,090.090 INFO    ] Initializing speech engine...
[2026-08-25 21:09:17,099.099 INFO    ] 2026-08-25 21:09:17
[2026-08-25 21:09:17,344.344 INFO    ] 2026-08-25 21:09:17
[2026-08-25 21:09:17,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:09:17,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:09:17,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:09:17,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:09:17,837.837 INFO    ] time= 25/08/2026 21:09:17
[2026-08-25 21:09:17,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:09:17,916.916 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:09:18,042.042 INFO    ] No existing commands found in stream
[2026-08-25 21:09:23,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:09:23,072.072 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 21:09:26,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:09:26,296.296 INFO    ] Checking for system updates...
[2026-08-25 21:09:26,333.333 INFO    ] 200
[2026-08-25 21:09:26,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:26,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:26,393.393 INFO    ] No update needed
[2026-08-25 21:09:26,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 21:09:26,430.430 INFO    ] 200
[2026-08-25 21:09:26,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:26,479.479 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:09:26,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:26,532.532 INFO    ] No camera update needed
[2026-08-25 21:09:26,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:09:26,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:09:26,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:09:26,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:09:28,591.591 INFO    ] ================================================
[2026-08-25 21:09:28,608.608 INFO    ] Launching Daemon at Tue Aug 25 21:09:28 IST 2026
[2026-08-25 21:09:28,619.619 INFO    ] ================================================
[2026-08-25 21:09:29,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:09:29
[2026-08-25 21:09:29,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:09:30,015.015 INFO    ] Initializing speech engine...
[2026-08-25 21:09:30,038.038 INFO    ] 2026-08-25 21:09:30
[2026-08-25 21:09:30,295.295 INFO    ] 2026-08-25 21:09:30
[2026-08-25 21:09:30,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:09:30,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:09:30,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:09:30,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:09:30,672.672 INFO    ] time= 25/08/2026 21:09:30
[2026-08-25 21:09:30,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:09:30,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:09:30,857.857 INFO    ] No existing commands found in stream
[2026-08-25 21:09:35,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:09:35,884.884 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 21:09:40,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:09:40,259.259 INFO    ] Checking for system updates...
[2026-08-25 21:09:40,300.300 INFO    ] 200
[2026-08-25 21:09:40,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:40,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:40,365.365 INFO    ] No update needed
[2026-08-25 21:09:40,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 21:09:40,401.401 INFO    ] 200
[2026-08-25 21:09:40,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:40,449.449 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:09:40,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:40,502.502 INFO    ] No camera update needed
[2026-08-25 21:09:40,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:09:40,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:09:40,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:09:40,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:09:42,561.561 INFO    ] ================================================
[2026-08-25 21:09:42,577.577 INFO    ] Launching Daemon at Tue Aug 25 21:09:42 IST 2026
[2026-08-25 21:09:42,587.587 INFO    ] ================================================
[2026-08-25 21:09:43,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:09:43
[2026-08-25 21:09:43,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:09:44,045.045 INFO    ] Initializing speech engine...
[2026-08-25 21:09:44,053.053 INFO    ] 2026-08-25 21:09:44
[2026-08-25 21:09:44,303.303 INFO    ] 2026-08-25 21:09:44
[2026-08-25 21:09:44,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:09:44,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:09:44,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:09:44,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:09:44,750.750 INFO    ] time= 25/08/2026 21:09:44
[2026-08-25 21:09:44,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:09:44,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:09:44,940.940 INFO    ] No existing commands found in stream
[2026-08-25 21:09:49,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:09:49,970.970 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 21:09:50,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:09:50,717.717 INFO    ] Checking for system updates...
[2026-08-25 21:09:50,754.754 INFO    ] 200
[2026-08-25 21:09:50,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:50,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:50,813.813 INFO    ] No update needed
[2026-08-25 21:09:50,816.816 INFO    ] Checking for camera pi updates...
[2026-08-25 21:09:50,854.854 INFO    ] 200
[2026-08-25 21:09:50,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:09:50,898.898 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:09:50,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:09:50,959.959 INFO    ] No camera update needed
[2026-08-25 21:09:50,962.962 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:09:50,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:09:50,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:09:50,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:09:53,019.019 INFO    ] ================================================
[2026-08-25 21:09:53,034.034 INFO    ] Launching Daemon at Tue Aug 25 21:09:53 IST 2026
[2026-08-25 21:09:53,045.045 INFO    ] ================================================
[2026-08-25 21:09:53,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:09:53
[2026-08-25 21:09:54,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:09:54,744.744 INFO    ] Initializing speech engine...
[2026-08-25 21:09:54,753.753 INFO    ] 2026-08-25 21:09:54
[2026-08-25 21:09:55,043.043 INFO    ] 2026-08-25 21:09:55
[2026-08-25 21:09:55,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:09:55,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:09:55,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:09:55,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:09:55,589.589 INFO    ] time= 25/08/2026 21:09:55
[2026-08-25 21:09:55,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:09:55,638.638 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:09:55,758.758 INFO    ] No existing commands found in stream
[2026-08-25 21:10:00,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:10:00,783.783 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 21:10:08,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:10:08,331.331 INFO    ] Checking for system updates...
[2026-08-25 21:10:08,367.367 INFO    ] 200
[2026-08-25 21:10:08,369.369 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:08,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:10:08,432.432 INFO    ] No update needed
[2026-08-25 21:10:08,434.434 INFO    ] Checking for camera pi updates...
[2026-08-25 21:10:08,472.472 INFO    ] 200
[2026-08-25 21:10:08,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:08,520.520 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:10:08,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:10:08,570.570 INFO    ] No camera update needed
[2026-08-25 21:10:08,573.573 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:10:08,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:10:08,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:10:08,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:10:10,625.625 INFO    ] ================================================
[2026-08-25 21:10:10,641.641 INFO    ] Launching Daemon at Tue Aug 25 21:10:10 IST 2026
[2026-08-25 21:10:10,653.653 INFO    ] ================================================
[2026-08-25 21:10:11,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:10:11
[2026-08-25 21:10:12,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:10:12,335.335 INFO    ] Initializing speech engine...
[2026-08-25 21:10:12,352.352 INFO    ] 2026-08-25 21:10:12
[2026-08-25 21:10:12,628.628 INFO    ] 2026-08-25 21:10:12
[2026-08-25 21:10:12,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:10:12,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:10:12,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:10:13,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:10:13,179.179 INFO    ] time= 25/08/2026 21:10:13
[2026-08-25 21:10:13,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:10:13,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:10:13,340.340 INFO    ] No existing commands found in stream
[2026-08-25 21:10:18,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:10:18,375.375 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 21:10:21,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:10:21,179.179 INFO    ] Checking for system updates...
[2026-08-25 21:10:21,221.221 INFO    ] 200
[2026-08-25 21:10:21,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:21,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:10:21,290.290 INFO    ] No update needed
[2026-08-25 21:10:21,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 21:10:21,332.332 INFO    ] 200
[2026-08-25 21:10:21,335.335 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:21,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:10:21,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:10:21,442.442 INFO    ] No camera update needed
[2026-08-25 21:10:21,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:10:21,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:10:21,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:10:21,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:10:23,496.496 INFO    ] ================================================
[2026-08-25 21:10:23,512.512 INFO    ] Launching Daemon at Tue Aug 25 21:10:23 IST 2026
[2026-08-25 21:10:23,523.523 INFO    ] ================================================
[2026-08-25 21:10:24,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:10:24
[2026-08-25 21:10:24,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:10:24,938.938 INFO    ] Initializing speech engine...
[2026-08-25 21:10:24,959.959 INFO    ] 2026-08-25 21:10:24
[2026-08-25 21:10:25,220.220 INFO    ] 2026-08-25 21:10:25
[2026-08-25 21:10:25,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:10:25,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:10:25,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:10:25,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:10:25,691.691 INFO    ] time= 25/08/2026 21:10:25
[2026-08-25 21:10:25,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:10:25,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:10:25,949.949 INFO    ] No existing commands found in stream
[2026-08-25 21:10:30,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:10:30,967.967 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-08-25 21:10:31,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:10:31,858.858 INFO    ] Checking for system updates...
[2026-08-25 21:10:31,898.898 INFO    ] 200
[2026-08-25 21:10:31,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:31,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:10:31,962.962 INFO    ] No update needed
[2026-08-25 21:10:31,965.965 INFO    ] Checking for camera pi updates...
[2026-08-25 21:10:31,998.998 INFO    ] 200
[2026-08-25 21:10:32,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:32,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:10:32,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:10:32,092.092 INFO    ] No camera update needed
[2026-08-25 21:10:32,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:10:32,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:10:32,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:10:32,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:10:34,148.148 INFO    ] ================================================
[2026-08-25 21:10:34,164.164 INFO    ] Launching Daemon at Tue Aug 25 21:10:34 IST 2026
[2026-08-25 21:10:34,176.176 INFO    ] ================================================
[2026-08-25 21:10:34,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:10:34
[2026-08-25 21:10:35,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:10:35,842.842 INFO    ] Initializing speech engine...
[2026-08-25 21:10:35,853.853 INFO    ] 2026-08-25 21:10:35
[2026-08-25 21:10:36,166.166 INFO    ] 2026-08-25 21:10:36
[2026-08-25 21:10:36,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:10:36,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:10:36,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:10:36,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:10:36,676.676 INFO    ] time= 25/08/2026 21:10:36
[2026-08-25 21:10:36,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:10:36,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:10:36,831.831 INFO    ] No existing commands found in stream
[2026-08-25 21:10:41,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:10:41,860.860 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 21:10:42,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:10:42,778.778 INFO    ] Checking for system updates...
[2026-08-25 21:10:42,833.833 INFO    ] 200
[2026-08-25 21:10:42,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:42,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:10:42,901.901 INFO    ] No update needed
[2026-08-25 21:10:42,904.904 INFO    ] Checking for camera pi updates...
[2026-08-25 21:10:42,943.943 INFO    ] 200
[2026-08-25 21:10:42,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:42,997.997 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:10:43,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:10:43,049.049 INFO    ] No camera update needed
[2026-08-25 21:10:43,051.051 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:10:43,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:10:43,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:10:43,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:10:45,104.104 INFO    ] ================================================
[2026-08-25 21:10:45,119.119 INFO    ] Launching Daemon at Tue Aug 25 21:10:45 IST 2026
[2026-08-25 21:10:45,130.130 INFO    ] ================================================
[2026-08-25 21:10:45,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:10:45
[2026-08-25 21:10:46,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:10:46,545.545 INFO    ] Initializing speech engine...
[2026-08-25 21:10:46,555.555 INFO    ] 2026-08-25 21:10:46
[2026-08-25 21:10:46,803.803 INFO    ] 2026-08-25 21:10:46
[2026-08-25 21:10:46,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:10:47,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:10:47,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:10:47,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:10:47,178.178 INFO    ] time= 25/08/2026 21:10:47
[2026-08-25 21:10:47,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:10:47,225.225 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:10:47,358.358 INFO    ] No existing commands found in stream
[2026-08-25 21:10:52,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:10:52,390.390 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 21:10:53,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:10:53,557.557 INFO    ] Checking for system updates...
[2026-08-25 21:10:53,595.595 INFO    ] 200
[2026-08-25 21:10:53,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:53,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:10:53,654.654 INFO    ] No update needed
[2026-08-25 21:10:53,657.657 INFO    ] Checking for camera pi updates...
[2026-08-25 21:10:53,691.691 INFO    ] 200
[2026-08-25 21:10:53,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:10:53,742.742 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:10:53,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:10:53,888.888 INFO    ] No camera update needed
[2026-08-25 21:10:53,890.890 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:10:53,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:10:53,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:10:53,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:10:55,943.943 INFO    ] ================================================
[2026-08-25 21:10:55,958.958 INFO    ] Launching Daemon at Tue Aug 25 21:10:55 IST 2026
[2026-08-25 21:10:55,970.970 INFO    ] ================================================
[2026-08-25 21:10:56,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:10:56
[2026-08-25 21:10:57,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:10:57,373.373 INFO    ] Initializing speech engine...
[2026-08-25 21:10:57,396.396 INFO    ] 2026-08-25 21:10:57
[2026-08-25 21:10:57,651.651 INFO    ] 2026-08-25 21:10:57
[2026-08-25 21:10:57,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:10:57,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:10:57,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:10:58,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:10:58,050.050 INFO    ] time= 25/08/2026 21:10:58
[2026-08-25 21:10:58,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:10:58,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:10:58,140.140 INFO    ] No existing commands found in stream
[2026-08-25 21:11:03,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:11:03,170.170 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 21:11:04,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:11:04,208.208 INFO    ] Checking for system updates...
[2026-08-25 21:11:04,247.247 INFO    ] 200
[2026-08-25 21:11:04,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:04,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:11:04,305.305 INFO    ] No update needed
[2026-08-25 21:11:04,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 21:11:04,341.341 INFO    ] 200
[2026-08-25 21:11:04,344.344 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:04,385.385 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:11:04,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:11:04,440.440 INFO    ] No camera update needed
[2026-08-25 21:11:04,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:11:04,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:11:04,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:11:04,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:11:06,497.497 INFO    ] ================================================
[2026-08-25 21:11:06,513.513 INFO    ] Launching Daemon at Tue Aug 25 21:11:06 IST 2026
[2026-08-25 21:11:06,523.523 INFO    ] ================================================
[2026-08-25 21:11:07,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:11:07
[2026-08-25 21:11:07,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:11:08,162.162 INFO    ] Initializing speech engine...
[2026-08-25 21:11:08,174.174 INFO    ] 2026-08-25 21:11:08
[2026-08-25 21:11:08,488.488 INFO    ] 2026-08-25 21:11:08
[2026-08-25 21:11:08,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:11:08,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:11:08,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:11:08,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:11:08,991.991 INFO    ] time= 25/08/2026 21:11:08
[2026-08-25 21:11:09,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:11:09,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:11:09,144.144 INFO    ] No existing commands found in stream
[2026-08-25 21:11:14,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:11:14,161.161 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 21:11:16,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:11:16,039.039 INFO    ] Checking for system updates...
[2026-08-25 21:11:16,077.077 INFO    ] 200
[2026-08-25 21:11:16,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:16,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:11:16,143.143 INFO    ] No update needed
[2026-08-25 21:11:16,145.145 INFO    ] Checking for camera pi updates...
[2026-08-25 21:11:16,180.180 INFO    ] 200
[2026-08-25 21:11:16,183.183 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:16,224.224 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:11:16,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:11:16,279.279 INFO    ] No camera update needed
[2026-08-25 21:11:16,282.282 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:11:16,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:11:16,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:11:16,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:11:18,338.338 INFO    ] ================================================
[2026-08-25 21:11:18,354.354 INFO    ] Launching Daemon at Tue Aug 25 21:11:18 IST 2026
[2026-08-25 21:11:18,366.366 INFO    ] ================================================
[2026-08-25 21:11:18,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:11:18
[2026-08-25 21:11:19,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:11:19,782.782 INFO    ] Initializing speech engine...
[2026-08-25 21:11:19,791.791 INFO    ] 2026-08-25 21:11:19
[2026-08-25 21:11:20,050.050 INFO    ] 2026-08-25 21:11:20
[2026-08-25 21:11:20,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:11:20,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:11:20,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:11:20,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:11:20,531.531 INFO    ] time= 25/08/2026 21:11:20
[2026-08-25 21:11:20,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:11:20,634.634 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:11:20,736.736 INFO    ] No existing commands found in stream
[2026-08-25 21:11:25,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:11:25,749.749 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 21:11:27,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:11:27,801.801 INFO    ] Checking for system updates...
[2026-08-25 21:11:27,836.836 INFO    ] 200
[2026-08-25 21:11:27,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:27,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:11:27,895.895 INFO    ] No update needed
[2026-08-25 21:11:27,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 21:11:27,935.935 INFO    ] 200
[2026-08-25 21:11:27,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:27,990.990 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:11:28,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:11:28,039.039 INFO    ] No camera update needed
[2026-08-25 21:11:28,041.041 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:11:28,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:11:28,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:11:28,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:11:30,094.094 INFO    ] ================================================
[2026-08-25 21:11:30,109.109 INFO    ] Launching Daemon at Tue Aug 25 21:11:30 IST 2026
[2026-08-25 21:11:30,121.121 INFO    ] ================================================
[2026-08-25 21:11:30,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:11:30
[2026-08-25 21:11:31,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:11:31,623.623 INFO    ] Initializing speech engine...
[2026-08-25 21:11:31,628.628 INFO    ] 2026-08-25 21:11:31
[2026-08-25 21:11:31,909.909 INFO    ] 2026-08-25 21:11:31
[2026-08-25 21:11:31,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:11:32,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:11:32,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:11:32,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:11:32,451.451 INFO    ] time= 25/08/2026 21:11:32
[2026-08-25 21:11:32,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:11:32,535.535 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:11:32,663.663 INFO    ] No existing commands found in stream
[2026-08-25 21:11:37,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:11:37,691.691 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 21:11:39,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:11:39,396.396 INFO    ] Checking for system updates...
[2026-08-25 21:11:39,431.431 INFO    ] 200
[2026-08-25 21:11:39,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:39,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:11:39,495.495 INFO    ] No update needed
[2026-08-25 21:11:39,498.498 INFO    ] Checking for camera pi updates...
[2026-08-25 21:11:39,535.535 INFO    ] 200
[2026-08-25 21:11:39,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:39,582.582 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:11:39,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:11:39,631.631 INFO    ] No camera update needed
[2026-08-25 21:11:39,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:11:39,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:11:39,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:11:39,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:11:41,687.687 INFO    ] ================================================
[2026-08-25 21:11:41,703.703 INFO    ] Launching Daemon at Tue Aug 25 21:11:41 IST 2026
[2026-08-25 21:11:41,714.714 INFO    ] ================================================
[2026-08-25 21:11:42,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:11:42
[2026-08-25 21:11:42,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:11:43,261.261 INFO    ] Initializing speech engine...
[2026-08-25 21:11:43,274.274 INFO    ] 2026-08-25 21:11:43
[2026-08-25 21:11:43,587.587 INFO    ] 2026-08-25 21:11:43
[2026-08-25 21:11:43,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:11:43,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:11:43,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:11:44,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:11:44,100.100 INFO    ] time= 25/08/2026 21:11:44
[2026-08-25 21:11:44,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:11:44,149.149 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:11:44,289.289 INFO    ] No existing commands found in stream
[2026-08-25 21:11:49,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:11:49,323.323 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 21:11:52,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:11:52,176.176 INFO    ] Checking for system updates...
[2026-08-25 21:11:52,213.213 INFO    ] 200
[2026-08-25 21:11:52,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:52,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:11:52,274.274 INFO    ] No update needed
[2026-08-25 21:11:52,277.277 INFO    ] Checking for camera pi updates...
[2026-08-25 21:11:52,315.315 INFO    ] 200
[2026-08-25 21:11:52,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:11:52,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:11:52,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:11:52,409.409 INFO    ] No camera update needed
[2026-08-25 21:11:52,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:11:52,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:11:52,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:11:52,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:11:54,473.473 INFO    ] ================================================
[2026-08-25 21:11:54,489.489 INFO    ] Launching Daemon at Tue Aug 25 21:11:54 IST 2026
[2026-08-25 21:11:54,500.500 INFO    ] ================================================
[2026-08-25 21:11:55,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:11:55
[2026-08-25 21:11:55,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:11:55,956.956 INFO    ] Initializing speech engine...
[2026-08-25 21:11:55,979.979 INFO    ] 2026-08-25 21:11:55
[2026-08-25 21:11:56,235.235 INFO    ] 2026-08-25 21:11:56
[2026-08-25 21:11:56,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:11:56,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:11:56,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:11:56,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:11:56,716.716 INFO    ] time= 25/08/2026 21:11:56
[2026-08-25 21:11:56,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:11:56,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:11:56,949.949 INFO    ] No existing commands found in stream
[2026-08-25 21:12:01,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:12:01,970.970 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-08-25 21:12:02,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:12:02,930.930 INFO    ] Checking for system updates...
[2026-08-25 21:12:02,978.978 INFO    ] 200
[2026-08-25 21:12:02,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:03,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:12:03,044.044 INFO    ] No update needed
[2026-08-25 21:12:03,047.047 INFO    ] Checking for camera pi updates...
[2026-08-25 21:12:03,092.092 INFO    ] 200
[2026-08-25 21:12:03,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:03,143.143 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:12:03,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:12:03,192.192 INFO    ] No camera update needed
[2026-08-25 21:12:03,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:12:03,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:12:03,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:12:03,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:12:05,249.249 INFO    ] ================================================
[2026-08-25 21:12:05,265.265 INFO    ] Launching Daemon at Tue Aug 25 21:12:05 IST 2026
[2026-08-25 21:12:05,276.276 INFO    ] ================================================
[2026-08-25 21:12:05,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:12:05
[2026-08-25 21:12:06,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:12:06,715.715 INFO    ] Initializing speech engine...
[2026-08-25 21:12:06,724.724 INFO    ] 2026-08-25 21:12:06
[2026-08-25 21:12:06,969.969 INFO    ] 2026-08-25 21:12:06
[2026-08-25 21:12:07,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:12:07,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:12:07,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:12:07,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:12:07,438.438 INFO    ] time= 25/08/2026 21:12:07
[2026-08-25 21:12:07,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:12:07,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:12:07,651.651 INFO    ] No existing commands found in stream
[2026-08-25 21:12:12,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:12:12,679.679 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 21:12:15,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:12:15,793.793 INFO    ] Checking for system updates...
[2026-08-25 21:12:15,832.832 INFO    ] 200
[2026-08-25 21:12:15,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:15,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:12:15,895.895 INFO    ] No update needed
[2026-08-25 21:12:15,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 21:12:15,935.935 INFO    ] 200
[2026-08-25 21:12:15,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:15,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:12:16,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:12:16,032.032 INFO    ] No camera update needed
[2026-08-25 21:12:16,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:12:16,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:12:16,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:12:16,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:12:18,087.087 INFO    ] ================================================
[2026-08-25 21:12:18,103.103 INFO    ] Launching Daemon at Tue Aug 25 21:12:18 IST 2026
[2026-08-25 21:12:18,114.114 INFO    ] ================================================
[2026-08-25 21:12:18,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:12:18
[2026-08-25 21:12:19,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:12:19,766.766 INFO    ] Initializing speech engine...
[2026-08-25 21:12:19,776.776 INFO    ] 2026-08-25 21:12:19
[2026-08-25 21:12:20,043.043 INFO    ] 2026-08-25 21:12:20
[2026-08-25 21:12:20,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:12:20,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:12:20,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:12:20,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:12:20,523.523 INFO    ] time= 25/08/2026 21:12:20
[2026-08-25 21:12:20,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:12:20,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:12:20,726.726 INFO    ] No existing commands found in stream
[2026-08-25 21:12:25,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:12:25,741.741 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 21:12:29,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:12:29,537.537 INFO    ] Checking for system updates...
[2026-08-25 21:12:29,573.573 INFO    ] 200
[2026-08-25 21:12:29,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:29,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:12:29,633.633 INFO    ] No update needed
[2026-08-25 21:12:29,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 21:12:29,670.670 INFO    ] 200
[2026-08-25 21:12:29,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:29,714.714 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:12:29,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:12:29,766.766 INFO    ] No camera update needed
[2026-08-25 21:12:29,769.769 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:12:29,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:12:29,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:12:29,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:12:31,824.824 INFO    ] ================================================
[2026-08-25 21:12:31,840.840 INFO    ] Launching Daemon at Tue Aug 25 21:12:31 IST 2026
[2026-08-25 21:12:31,853.853 INFO    ] ================================================
[2026-08-25 21:12:32,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:12:32
[2026-08-25 21:12:33,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:12:33,305.305 INFO    ] Initializing speech engine...
[2026-08-25 21:12:33,324.324 INFO    ] 2026-08-25 21:12:33
[2026-08-25 21:12:33,575.575 INFO    ] 2026-08-25 21:12:33
[2026-08-25 21:12:33,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:12:33,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:12:33,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:12:33,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:12:33,955.955 INFO    ] time= 25/08/2026 21:12:33
[2026-08-25 21:12:33,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:12:33,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:12:34,108.108 INFO    ] No existing commands found in stream
[2026-08-25 21:12:39,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:12:39,141.141 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 21:12:43,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:12:43,081.081 INFO    ] Checking for system updates...
[2026-08-25 21:12:43,121.121 INFO    ] 200
[2026-08-25 21:12:43,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:43,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:12:43,179.179 INFO    ] No update needed
[2026-08-25 21:12:43,181.181 INFO    ] Checking for camera pi updates...
[2026-08-25 21:12:43,215.215 INFO    ] 200
[2026-08-25 21:12:43,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:43,259.259 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:12:43,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:12:43,311.311 INFO    ] No camera update needed
[2026-08-25 21:12:43,339.339 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:12:43,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:12:43,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:12:43,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:12:45,395.395 INFO    ] ================================================
[2026-08-25 21:12:45,410.410 INFO    ] Launching Daemon at Tue Aug 25 21:12:45 IST 2026
[2026-08-25 21:12:45,421.421 INFO    ] ================================================
[2026-08-25 21:12:45,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:12:45
[2026-08-25 21:12:46,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:12:46,858.858 INFO    ] Initializing speech engine...
[2026-08-25 21:12:46,867.867 INFO    ] 2026-08-25 21:12:46
[2026-08-25 21:12:47,130.130 INFO    ] 2026-08-25 21:12:47
[2026-08-25 21:12:47,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:12:47,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:12:47,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:12:47,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:12:47,630.630 INFO    ] time= 25/08/2026 21:12:47
[2026-08-25 21:12:47,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:12:47,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:12:47,808.808 INFO    ] No existing commands found in stream
[2026-08-25 21:12:52,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:12:52,838.838 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 21:12:55,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:12:55,603.603 INFO    ] Checking for system updates...
[2026-08-25 21:12:55,638.638 INFO    ] 200
[2026-08-25 21:12:55,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:55,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:12:55,704.704 INFO    ] No update needed
[2026-08-25 21:12:55,706.706 INFO    ] Checking for camera pi updates...
[2026-08-25 21:12:55,744.744 INFO    ] 200
[2026-08-25 21:12:55,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:12:55,793.793 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:12:55,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:12:55,845.845 INFO    ] No camera update needed
[2026-08-25 21:12:55,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:12:55,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:12:55,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:12:55,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:12:57,902.902 INFO    ] ================================================
[2026-08-25 21:12:57,918.918 INFO    ] Launching Daemon at Tue Aug 25 21:12:57 IST 2026
[2026-08-25 21:12:57,929.929 INFO    ] ================================================
[2026-08-25 21:12:58,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:12:58
[2026-08-25 21:12:59,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:12:59,381.381 INFO    ] Initializing speech engine...
[2026-08-25 21:12:59,394.394 INFO    ] 2026-08-25 21:12:59
[2026-08-25 21:12:59,657.657 INFO    ] 2026-08-25 21:12:59
[2026-08-25 21:12:59,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:12:59,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:12:59,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:13:00,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:13:00,134.134 INFO    ] time= 25/08/2026 21:13:00
[2026-08-25 21:13:00,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:13:00,219.219 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:13:00,345.345 INFO    ] No existing commands found in stream
[2026-08-25 21:13:05,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:13:05,376.376 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 21:13:06,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:13:06,424.424 INFO    ] Checking for system updates...
[2026-08-25 21:13:06,463.463 INFO    ] 200
[2026-08-25 21:13:06,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:06,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:13:06,527.527 INFO    ] No update needed
[2026-08-25 21:13:06,529.529 INFO    ] Checking for camera pi updates...
[2026-08-25 21:13:06,563.563 INFO    ] 200
[2026-08-25 21:13:06,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:06,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:13:06,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:13:06,666.666 INFO    ] No camera update needed
[2026-08-25 21:13:06,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:13:06,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:13:06,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:13:06,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:13:08,720.720 INFO    ] ================================================
[2026-08-25 21:13:08,735.735 INFO    ] Launching Daemon at Tue Aug 25 21:13:08 IST 2026
[2026-08-25 21:13:08,746.746 INFO    ] ================================================
[2026-08-25 21:13:09,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:13:09
[2026-08-25 21:13:09,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:13:10,158.158 INFO    ] Initializing speech engine...
[2026-08-25 21:13:10,167.167 INFO    ] 2026-08-25 21:13:10
[2026-08-25 21:13:10,417.417 INFO    ] 2026-08-25 21:13:10
[2026-08-25 21:13:10,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:13:10,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:13:10,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:13:10,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:13:10,875.875 INFO    ] time= 25/08/2026 21:13:10
[2026-08-25 21:13:10,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:13:10,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:13:11,119.119 INFO    ] No existing commands found in stream
[2026-08-25 21:13:16,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:13:16,147.147 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 21:13:19,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:13:19,704.704 INFO    ] Checking for system updates...
[2026-08-25 21:13:19,742.742 INFO    ] 200
[2026-08-25 21:13:19,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:19,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:13:19,806.806 INFO    ] No update needed
[2026-08-25 21:13:19,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 21:13:19,848.848 INFO    ] 200
[2026-08-25 21:13:19,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:19,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:13:19,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:13:19,942.942 INFO    ] No camera update needed
[2026-08-25 21:13:19,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:13:19,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:13:19,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:13:19,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:13:22,997.997 INFO    ] ================================================
[2026-08-25 21:13:22,011.011 INFO    ] Launching Daemon at Tue Aug 25 21:13:22 IST 2026
[2026-08-25 21:13:22,022.022 INFO    ] ================================================
[2026-08-25 21:13:22,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:13:22
[2026-08-25 21:13:23,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:13:23,472.472 INFO    ] Initializing speech engine...
[2026-08-25 21:13:23,483.483 INFO    ] 2026-08-25 21:13:23
[2026-08-25 21:13:23,742.742 INFO    ] 2026-08-25 21:13:23
[2026-08-25 21:13:23,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:13:24,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:13:24,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:13:24,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:13:24,221.221 INFO    ] time= 25/08/2026 21:13:24
[2026-08-25 21:13:24,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:13:24,293.293 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:13:24,404.404 INFO    ] No existing commands found in stream
[2026-08-25 21:13:29,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:13:29,439.439 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-08-25 21:13:33,529.529 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:13:33,531.531 INFO    ] Checking for system updates...
[2026-08-25 21:13:33,569.569 INFO    ] 200
[2026-08-25 21:13:33,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:33,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:13:33,644.644 INFO    ] No update needed
[2026-08-25 21:13:33,646.646 INFO    ] Checking for camera pi updates...
[2026-08-25 21:13:33,683.683 INFO    ] 200
[2026-08-25 21:13:33,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:33,726.726 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:13:33,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:13:33,778.778 INFO    ] No camera update needed
[2026-08-25 21:13:33,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:13:33,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:13:33,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:13:33,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:13:35,833.833 INFO    ] ================================================
[2026-08-25 21:13:35,849.849 INFO    ] Launching Daemon at Tue Aug 25 21:13:35 IST 2026
[2026-08-25 21:13:35,859.859 INFO    ] ================================================
[2026-08-25 21:13:36,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:13:36
[2026-08-25 21:13:37,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:13:37,295.295 INFO    ] Initializing speech engine...
[2026-08-25 21:13:37,314.314 INFO    ] 2026-08-25 21:13:37
[2026-08-25 21:13:37,563.563 INFO    ] 2026-08-25 21:13:37
[2026-08-25 21:13:37,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:13:37,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:13:37,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:13:37,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:13:37,938.938 INFO    ] time= 25/08/2026 21:13:37
[2026-08-25 21:13:37,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:13:37,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:13:38,022.022 INFO    ] No existing commands found in stream
[2026-08-25 21:13:43,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:13:43,055.055 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 21:13:44,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:13:44,491.491 INFO    ] Checking for system updates...
[2026-08-25 21:13:44,531.531 INFO    ] 200
[2026-08-25 21:13:44,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:44,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:13:44,596.596 INFO    ] No update needed
[2026-08-25 21:13:44,599.599 INFO    ] Checking for camera pi updates...
[2026-08-25 21:13:44,636.636 INFO    ] 200
[2026-08-25 21:13:44,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:44,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:13:44,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:13:44,737.737 INFO    ] No camera update needed
[2026-08-25 21:13:44,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:13:44,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:13:44,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:13:44,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:13:46,793.793 INFO    ] ================================================
[2026-08-25 21:13:46,808.808 INFO    ] Launching Daemon at Tue Aug 25 21:13:46 IST 2026
[2026-08-25 21:13:46,819.819 INFO    ] ================================================
[2026-08-25 21:13:47,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:13:47
[2026-08-25 21:13:47,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:13:48,267.267 INFO    ] Initializing speech engine...
[2026-08-25 21:13:48,277.277 INFO    ] 2026-08-25 21:13:48
[2026-08-25 21:13:48,537.537 INFO    ] 2026-08-25 21:13:48
[2026-08-25 21:13:48,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:13:48,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:13:48,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:13:48,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:13:49,000.000 INFO    ] time= 25/08/2026 21:13:48
[2026-08-25 21:13:49,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:13:49,086.086 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:13:49,223.223 INFO    ] No existing commands found in stream
[2026-08-25 21:13:54,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:13:54,245.245 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-08-25 21:13:55,338.338 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:13:55,340.340 INFO    ] Checking for system updates...
[2026-08-25 21:13:55,378.378 INFO    ] 200
[2026-08-25 21:13:55,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:55,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:13:55,441.441 INFO    ] No update needed
[2026-08-25 21:13:55,443.443 INFO    ] Checking for camera pi updates...
[2026-08-25 21:13:55,479.479 INFO    ] 200
[2026-08-25 21:13:55,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:13:55,522.522 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:13:55,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:13:55,575.575 INFO    ] No camera update needed
[2026-08-25 21:13:55,578.578 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:13:55,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:13:55,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:13:55,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:13:57,632.632 INFO    ] ================================================
[2026-08-25 21:13:57,647.647 INFO    ] Launching Daemon at Tue Aug 25 21:13:57 IST 2026
[2026-08-25 21:13:57,658.658 INFO    ] ================================================
[2026-08-25 21:13:58,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:13:58
[2026-08-25 21:13:58,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:13:59,079.079 INFO    ] Initializing speech engine...
[2026-08-25 21:13:59,091.091 INFO    ] 2026-08-25 21:13:59
[2026-08-25 21:13:59,341.341 INFO    ] 2026-08-25 21:13:59
[2026-08-25 21:13:59,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:13:59,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:13:59,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:13:59,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:13:59,717.717 INFO    ] time= 25/08/2026 21:13:59
[2026-08-25 21:13:59,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:13:59,771.771 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:13:59,898.898 INFO    ] No existing commands found in stream
[2026-08-25 21:14:04,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:14:04,931.931 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 21:14:07,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:14:07,088.088 INFO    ] Checking for system updates...
[2026-08-25 21:14:07,123.123 INFO    ] 200
[2026-08-25 21:14:07,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:07,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:14:07,187.187 INFO    ] No update needed
[2026-08-25 21:14:07,190.190 INFO    ] Checking for camera pi updates...
[2026-08-25 21:14:07,226.226 INFO    ] 200
[2026-08-25 21:14:07,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:07,269.269 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:14:07,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:14:07,321.321 INFO    ] No camera update needed
[2026-08-25 21:14:07,323.323 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:14:07,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:14:07,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:14:07,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:14:09,377.377 INFO    ] ================================================
[2026-08-25 21:14:09,392.392 INFO    ] Launching Daemon at Tue Aug 25 21:14:09 IST 2026
[2026-08-25 21:14:09,403.403 INFO    ] ================================================
[2026-08-25 21:14:09,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:14:09
[2026-08-25 21:14:10,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:14:10,820.820 INFO    ] Initializing speech engine...
[2026-08-25 21:14:10,834.834 INFO    ] 2026-08-25 21:14:10
[2026-08-25 21:14:11,084.084 INFO    ] 2026-08-25 21:14:11
[2026-08-25 21:14:11,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:14:11,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:14:11,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:14:11,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:14:11,457.457 INFO    ] time= 25/08/2026 21:14:11
[2026-08-25 21:14:11,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:14:11,511.511 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:14:11,649.649 INFO    ] No existing commands found in stream
[2026-08-25 21:14:16,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:14:16,671.671 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 21:14:17,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:14:17,447.447 INFO    ] Checking for system updates...
[2026-08-25 21:14:17,483.483 INFO    ] 200
[2026-08-25 21:14:17,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:17,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:14:17,546.546 INFO    ] No update needed
[2026-08-25 21:14:17,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 21:14:17,588.588 INFO    ] 200
[2026-08-25 21:14:17,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:17,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:14:17,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:14:17,688.688 INFO    ] No camera update needed
[2026-08-25 21:14:17,690.690 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:14:17,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:14:17,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:14:17,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:14:19,742.742 INFO    ] ================================================
[2026-08-25 21:14:19,759.759 INFO    ] Launching Daemon at Tue Aug 25 21:14:19 IST 2026
[2026-08-25 21:14:19,769.769 INFO    ] ================================================
[2026-08-25 21:14:20,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:14:20
[2026-08-25 21:14:21,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:14:21,365.365 INFO    ] Initializing speech engine...
[2026-08-25 21:14:21,373.373 INFO    ] 2026-08-25 21:14:21
[2026-08-25 21:14:21,646.646 INFO    ] 2026-08-25 21:14:21
[2026-08-25 21:14:21,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:14:21,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:14:21,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:14:22,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:14:22,206.206 INFO    ] time= 25/08/2026 21:14:22
[2026-08-25 21:14:22,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:14:22,234.234 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:14:22,364.364 INFO    ] No existing commands found in stream
[2026-08-25 21:14:27,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:14:27,381.381 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 21:14:31,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:14:31,541.541 INFO    ] Checking for system updates...
[2026-08-25 21:14:31,584.584 INFO    ] 200
[2026-08-25 21:14:31,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:31,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:14:31,655.655 INFO    ] No update needed
[2026-08-25 21:14:31,658.658 INFO    ] Checking for camera pi updates...
[2026-08-25 21:14:31,693.693 INFO    ] 200
[2026-08-25 21:14:31,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:31,740.740 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:14:31,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:14:31,789.789 INFO    ] No camera update needed
[2026-08-25 21:14:31,791.791 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:14:31,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:14:31,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:14:31,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:14:33,850.850 INFO    ] ================================================
[2026-08-25 21:14:33,867.867 INFO    ] Launching Daemon at Tue Aug 25 21:14:33 IST 2026
[2026-08-25 21:14:33,879.879 INFO    ] ================================================
[2026-08-25 21:14:34,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:14:34
[2026-08-25 21:14:35,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:14:35,330.330 INFO    ] Initializing speech engine...
[2026-08-25 21:14:35,345.345 INFO    ] 2026-08-25 21:14:35
[2026-08-25 21:14:35,628.628 INFO    ] 2026-08-25 21:14:35
[2026-08-25 21:14:35,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:14:35,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:14:35,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:14:36,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:14:36,052.052 INFO    ] time= 25/08/2026 21:14:36
[2026-08-25 21:14:36,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:14:36,067.067 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:14:36,139.139 INFO    ] No existing commands found in stream
[2026-08-25 21:14:41,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:14:41,155.155 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 21:14:41,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:14:41,987.987 INFO    ] Checking for system updates...
[2026-08-25 21:14:42,026.026 INFO    ] 200
[2026-08-25 21:14:42,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:42,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:14:42,084.084 INFO    ] No update needed
[2026-08-25 21:14:42,087.087 INFO    ] Checking for camera pi updates...
[2026-08-25 21:14:42,125.125 INFO    ] 200
[2026-08-25 21:14:42,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:42,173.173 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:14:42,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:14:42,222.222 INFO    ] No camera update needed
[2026-08-25 21:14:42,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:14:42,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:14:42,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:14:42,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:14:44,278.278 INFO    ] ================================================
[2026-08-25 21:14:44,293.293 INFO    ] Launching Daemon at Tue Aug 25 21:14:44 IST 2026
[2026-08-25 21:14:44,304.304 INFO    ] ================================================
[2026-08-25 21:14:44,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:14:44
[2026-08-25 21:14:45,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:14:45,963.963 INFO    ] Initializing speech engine...
[2026-08-25 21:14:45,976.976 INFO    ] 2026-08-25 21:14:45
[2026-08-25 21:14:46,291.291 INFO    ] 2026-08-25 21:14:46
[2026-08-25 21:14:46,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:14:46,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:14:46,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:14:46,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:14:46,792.792 INFO    ] time= 25/08/2026 21:14:46
[2026-08-25 21:14:46,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:14:46,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:14:46,951.951 INFO    ] No existing commands found in stream
[2026-08-25 21:14:51,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:14:51,988.988 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 21:14:54,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:14:54,766.766 INFO    ] Checking for system updates...
[2026-08-25 21:14:54,801.801 INFO    ] 200
[2026-08-25 21:14:54,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:54,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:14:54,858.858 INFO    ] No update needed
[2026-08-25 21:14:54,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 21:14:54,897.897 INFO    ] 200
[2026-08-25 21:14:54,899.899 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:14:54,940.940 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:14:54,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:14:54,992.992 INFO    ] No camera update needed
[2026-08-25 21:14:54,994.994 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:14:54,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:14:55,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:14:55,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:14:57,047.047 INFO    ] ================================================
[2026-08-25 21:14:57,062.062 INFO    ] Launching Daemon at Tue Aug 25 21:14:57 IST 2026
[2026-08-25 21:14:57,073.073 INFO    ] ================================================
[2026-08-25 21:14:57,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:14:57
[2026-08-25 21:14:58,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:14:58,532.532 INFO    ] Initializing speech engine...
[2026-08-25 21:14:58,539.539 INFO    ] 2026-08-25 21:14:58
[2026-08-25 21:14:58,799.799 INFO    ] 2026-08-25 21:14:58
[2026-08-25 21:14:58,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:14:59,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:14:59,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:14:59,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:14:59,303.303 INFO    ] time= 25/08/2026 21:14:59
[2026-08-25 21:14:59,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:14:59,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:14:59,496.496 INFO    ] No existing commands found in stream
[2026-08-25 21:15:04,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:15:04,514.514 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 21:15:07,376.376 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:15:07,378.378 INFO    ] Checking for system updates...
[2026-08-25 21:15:07,414.414 INFO    ] 200
[2026-08-25 21:15:07,417.417 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:07,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:15:07,481.481 INFO    ] No update needed
[2026-08-25 21:15:07,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 21:15:07,520.520 INFO    ] 200
[2026-08-25 21:15:07,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:07,562.562 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:15:07,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:15:07,707.707 INFO    ] No camera update needed
[2026-08-25 21:15:07,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:15:07,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:15:07,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:15:07,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:15:09,762.762 INFO    ] ================================================
[2026-08-25 21:15:09,778.778 INFO    ] Launching Daemon at Tue Aug 25 21:15:09 IST 2026
[2026-08-25 21:15:09,789.789 INFO    ] ================================================
[2026-08-25 21:15:10,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:15:10
[2026-08-25 21:15:11,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:15:11,320.320 INFO    ] Initializing speech engine...
[2026-08-25 21:15:11,329.329 INFO    ] 2026-08-25 21:15:11
[2026-08-25 21:15:11,599.599 INFO    ] 2026-08-25 21:15:11
[2026-08-25 21:15:11,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:15:11,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:15:11,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:15:12,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:15:12,079.079 INFO    ] time= 25/08/2026 21:15:12
[2026-08-25 21:15:12,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:15:12,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:15:12,309.309 INFO    ] No existing commands found in stream
[2026-08-25 21:15:17,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:15:17,330.330 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 21:15:18,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:15:18,207.207 INFO    ] Checking for system updates...
[2026-08-25 21:15:18,246.246 INFO    ] 200
[2026-08-25 21:15:18,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:18,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:15:18,304.304 INFO    ] No update needed
[2026-08-25 21:15:18,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 21:15:18,339.339 INFO    ] 200
[2026-08-25 21:15:18,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:18,382.382 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:15:18,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:15:18,441.441 INFO    ] No camera update needed
[2026-08-25 21:15:18,443.443 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:15:18,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:15:18,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:15:18,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:15:20,496.496 INFO    ] ================================================
[2026-08-25 21:15:20,512.512 INFO    ] Launching Daemon at Tue Aug 25 21:15:20 IST 2026
[2026-08-25 21:15:20,522.522 INFO    ] ================================================
[2026-08-25 21:15:21,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:15:21
[2026-08-25 21:15:21,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:15:21,976.976 INFO    ] Initializing speech engine...
[2026-08-25 21:15:21,992.992 INFO    ] 2026-08-25 21:15:21
[2026-08-25 21:15:22,264.264 INFO    ] 2026-08-25 21:15:22
[2026-08-25 21:15:22,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:15:22,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:15:22,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:15:22,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:15:22,671.671 INFO    ] time= 25/08/2026 21:15:22
[2026-08-25 21:15:22,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:15:22,682.682 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:15:22,753.753 INFO    ] No existing commands found in stream
[2026-08-25 21:15:27,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:15:27,769.769 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-08-25 21:15:32,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:15:32,043.043 INFO    ] Checking for system updates...
[2026-08-25 21:15:32,080.080 INFO    ] 200
[2026-08-25 21:15:32,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:32,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:15:32,149.149 INFO    ] No update needed
[2026-08-25 21:15:32,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 21:15:32,194.194 INFO    ] 200
[2026-08-25 21:15:32,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:32,240.240 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:15:32,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:15:32,289.289 INFO    ] No camera update needed
[2026-08-25 21:15:32,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:15:32,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:15:32,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:15:32,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:15:34,349.349 INFO    ] ================================================
[2026-08-25 21:15:34,364.364 INFO    ] Launching Daemon at Tue Aug 25 21:15:34 IST 2026
[2026-08-25 21:15:34,374.374 INFO    ] ================================================
[2026-08-25 21:15:34,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:15:34
[2026-08-25 21:15:35,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:15:35,832.832 INFO    ] Initializing speech engine...
[2026-08-25 21:15:35,841.841 INFO    ] 2026-08-25 21:15:35
[2026-08-25 21:15:36,105.105 INFO    ] 2026-08-25 21:15:36
[2026-08-25 21:15:36,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:15:36,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:15:36,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:15:36,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:15:36,601.601 INFO    ] time= 25/08/2026 21:15:36
[2026-08-25 21:15:36,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:15:36,686.686 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:15:36,829.829 INFO    ] No existing commands found in stream
[2026-08-25 21:15:41,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:15:41,848.848 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 21:15:46,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:15:46,093.093 INFO    ] Checking for system updates...
[2026-08-25 21:15:46,131.131 INFO    ] 200
[2026-08-25 21:15:46,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:46,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:15:46,193.193 INFO    ] No update needed
[2026-08-25 21:15:46,195.195 INFO    ] Checking for camera pi updates...
[2026-08-25 21:15:46,229.229 INFO    ] 200
[2026-08-25 21:15:46,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:46,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:15:46,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:15:46,324.324 INFO    ] No camera update needed
[2026-08-25 21:15:46,326.326 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:15:46,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:15:46,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:15:46,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:15:48,378.378 INFO    ] ================================================
[2026-08-25 21:15:48,393.393 INFO    ] Launching Daemon at Tue Aug 25 21:15:48 IST 2026
[2026-08-25 21:15:48,404.404 INFO    ] ================================================
[2026-08-25 21:15:48,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:15:48
[2026-08-25 21:15:49,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:15:49,822.822 INFO    ] Initializing speech engine...
[2026-08-25 21:15:49,832.832 INFO    ] 2026-08-25 21:15:49
[2026-08-25 21:15:50,081.081 INFO    ] 2026-08-25 21:15:50
[2026-08-25 21:15:50,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:15:50,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:15:50,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:15:50,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:15:50,457.457 INFO    ] time= 25/08/2026 21:15:50
[2026-08-25 21:15:50,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:15:50,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:15:50,660.660 INFO    ] No existing commands found in stream
[2026-08-25 21:15:55,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:15:55,668.668 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 21:15:56,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:15:56,796.796 INFO    ] Checking for system updates...
[2026-08-25 21:15:56,833.833 INFO    ] 200
[2026-08-25 21:15:56,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:56,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:15:56,890.890 INFO    ] No update needed
[2026-08-25 21:15:56,892.892 INFO    ] Checking for camera pi updates...
[2026-08-25 21:15:56,926.926 INFO    ] 200
[2026-08-25 21:15:56,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:15:56,970.970 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:15:57,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:15:57,022.022 INFO    ] No camera update needed
[2026-08-25 21:15:57,025.025 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:15:57,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:15:57,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:15:57,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:15:59,077.077 INFO    ] ================================================
[2026-08-25 21:15:59,093.093 INFO    ] Launching Daemon at Tue Aug 25 21:15:59 IST 2026
[2026-08-25 21:15:59,104.104 INFO    ] ================================================
[2026-08-25 21:15:59,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:15:59
[2026-08-25 21:16:00,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:16:00,550.550 INFO    ] Initializing speech engine...
[2026-08-25 21:16:00,557.557 INFO    ] 2026-08-25 21:16:00
[2026-08-25 21:16:00,816.816 INFO    ] 2026-08-25 21:16:00
[2026-08-25 21:16:00,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:16:01,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:16:01,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:16:01,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:16:01,291.291 INFO    ] time= 25/08/2026 21:16:01
[2026-08-25 21:16:01,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:16:01,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:16:01,506.506 INFO    ] No existing commands found in stream
[2026-08-25 21:16:06,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:16:06,530.530 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 21:16:08,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:16:08,672.672 INFO    ] Checking for system updates...
[2026-08-25 21:16:08,708.708 INFO    ] 200
[2026-08-25 21:16:08,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:08,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:08,767.767 INFO    ] No update needed
[2026-08-25 21:16:08,769.769 INFO    ] Checking for camera pi updates...
[2026-08-25 21:16:08,803.803 INFO    ] 200
[2026-08-25 21:16:08,805.805 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:08,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:16:08,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:08,894.894 INFO    ] No camera update needed
[2026-08-25 21:16:08,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:16:08,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:16:08,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:16:08,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:16:10,949.949 INFO    ] ================================================
[2026-08-25 21:16:10,965.965 INFO    ] Launching Daemon at Tue Aug 25 21:16:10 IST 2026
[2026-08-25 21:16:10,976.976 INFO    ] ================================================
[2026-08-25 21:16:11,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:16:11
[2026-08-25 21:16:12,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:16:12,404.404 INFO    ] Initializing speech engine...
[2026-08-25 21:16:12,413.413 INFO    ] 2026-08-25 21:16:12
[2026-08-25 21:16:12,662.662 INFO    ] 2026-08-25 21:16:12
[2026-08-25 21:16:12,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:16:12,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:16:12,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:16:13,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:16:13,145.145 INFO    ] time= 25/08/2026 21:16:13
[2026-08-25 21:16:13,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:16:13,239.239 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:16:13,354.354 INFO    ] No existing commands found in stream
[2026-08-25 21:16:18,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:16:18,389.389 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 21:16:19,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:16:19,156.156 INFO    ] Checking for system updates...
[2026-08-25 21:16:19,195.195 INFO    ] 200
[2026-08-25 21:16:19,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:19,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:19,252.252 INFO    ] No update needed
[2026-08-25 21:16:19,254.254 INFO    ] Checking for camera pi updates...
[2026-08-25 21:16:19,288.288 INFO    ] 200
[2026-08-25 21:16:19,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:19,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:16:19,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:19,382.382 INFO    ] No camera update needed
[2026-08-25 21:16:19,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:16:19,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:16:19,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:16:19,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:16:21,439.439 INFO    ] ================================================
[2026-08-25 21:16:21,455.455 INFO    ] Launching Daemon at Tue Aug 25 21:16:21 IST 2026
[2026-08-25 21:16:21,467.467 INFO    ] ================================================
[2026-08-25 21:16:22,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:16:22
[2026-08-25 21:16:22,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:16:22,883.883 INFO    ] Initializing speech engine...
[2026-08-25 21:16:22,892.892 INFO    ] 2026-08-25 21:16:22
[2026-08-25 21:16:23,141.141 INFO    ] 2026-08-25 21:16:23
[2026-08-25 21:16:23,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:16:23,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:16:23,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:16:23,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:16:23,613.613 INFO    ] time= 25/08/2026 21:16:23
[2026-08-25 21:16:23,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:16:23,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:16:23,863.863 INFO    ] No existing commands found in stream
[2026-08-25 21:16:28,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:16:28,878.878 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 21:16:31,032.032 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:16:31,035.035 INFO    ] Checking for system updates...
[2026-08-25 21:16:31,070.070 INFO    ] 200
[2026-08-25 21:16:31,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:31,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:31,139.139 INFO    ] No update needed
[2026-08-25 21:16:31,141.141 INFO    ] Checking for camera pi updates...
[2026-08-25 21:16:31,174.174 INFO    ] 200
[2026-08-25 21:16:31,177.177 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:31,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:16:31,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:31,278.278 INFO    ] No camera update needed
[2026-08-25 21:16:31,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:16:31,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:16:31,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:16:31,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:16:33,336.336 INFO    ] ================================================
[2026-08-25 21:16:33,352.352 INFO    ] Launching Daemon at Tue Aug 25 21:16:33 IST 2026
[2026-08-25 21:16:33,363.363 INFO    ] ================================================
[2026-08-25 21:16:33,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:16:33
[2026-08-25 21:16:34,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:16:34,788.788 INFO    ] Initializing speech engine...
[2026-08-25 21:16:34,798.798 INFO    ] 2026-08-25 21:16:34
[2026-08-25 21:16:35,057.057 INFO    ] 2026-08-25 21:16:35
[2026-08-25 21:16:35,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:16:35,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:16:35,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:16:35,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:16:35,533.533 INFO    ] time= 25/08/2026 21:16:35
[2026-08-25 21:16:35,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:16:35,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:16:35,758.758 INFO    ] No existing commands found in stream
[2026-08-25 21:16:40,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:16:40,783.783 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 21:16:43,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:16:43,346.346 INFO    ] Checking for system updates...
[2026-08-25 21:16:43,385.385 INFO    ] 200
[2026-08-25 21:16:43,388.388 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:43,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:43,448.448 INFO    ] No update needed
[2026-08-25 21:16:43,450.450 INFO    ] Checking for camera pi updates...
[2026-08-25 21:16:43,487.487 INFO    ] 200
[2026-08-25 21:16:43,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:43,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:16:43,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:16:43,584.584 INFO    ] No camera update needed
[2026-08-25 21:16:43,587.587 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:16:43,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:16:43,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:16:43,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:16:45,638.638 INFO    ] ================================================
[2026-08-25 21:16:45,654.654 INFO    ] Launching Daemon at Tue Aug 25 21:16:45 IST 2026
[2026-08-25 21:16:45,666.666 INFO    ] ================================================
[2026-08-25 21:16:46,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:16:46
[2026-08-25 21:16:46,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:16:47,086.086 INFO    ] Initializing speech engine...
[2026-08-25 21:16:47,095.095 INFO    ] 2026-08-25 21:16:47
[2026-08-25 21:16:47,354.354 INFO    ] 2026-08-25 21:16:47
[2026-08-25 21:16:47,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:16:47,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:16:47,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:16:47,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:16:47,783.783 INFO    ] time= 25/08/2026 21:16:47
[2026-08-25 21:16:47,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:16:47,891.891 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:16:47,966.966 INFO    ] No existing commands found in stream
[2026-08-25 21:16:52,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:16:52,980.980 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 21:16:54,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:16:54,203.203 INFO    ] Checking for system updates...
[2026-08-25 21:16:54,243.243 INFO    ] 200
[2026-08-25 21:16:54,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:54,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:16:54,307.307 INFO    ] No update needed
[2026-08-25 21:16:54,310.310 INFO    ] Checking for camera pi updates...
[2026-08-25 21:16:54,345.345 INFO    ] 200
[2026-08-25 21:16:54,348.348 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:16:54,396.396 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:16:54,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:16:54,448.448 INFO    ] No camera update needed
[2026-08-25 21:16:54,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:16:54,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:16:54,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:16:54,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:16:56,504.504 INFO    ] ================================================
[2026-08-25 21:16:56,520.520 INFO    ] Launching Daemon at Tue Aug 25 21:16:56 IST 2026
[2026-08-25 21:16:56,532.532 INFO    ] ================================================
[2026-08-25 21:16:57,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:16:57
[2026-08-25 21:16:57,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:16:58,106.106 INFO    ] Initializing speech engine...
[2026-08-25 21:16:58,116.116 INFO    ] 2026-08-25 21:16:58
[2026-08-25 21:16:58,434.434 INFO    ] 2026-08-25 21:16:58
[2026-08-25 21:16:58,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:16:58,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:16:58,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:16:58,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:16:58,951.951 INFO    ] time= 25/08/2026 21:16:58
[2026-08-25 21:16:58,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:16:58,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:16:59,110.110 INFO    ] No existing commands found in stream
[2026-08-25 21:17:04,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:17:04,133.133 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-08-25 21:17:08,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:17:08,161.161 INFO    ] Checking for system updates...
[2026-08-25 21:17:08,198.198 INFO    ] 200
[2026-08-25 21:17:08,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:08,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:17:08,258.258 INFO    ] No update needed
[2026-08-25 21:17:08,260.260 INFO    ] Checking for camera pi updates...
[2026-08-25 21:17:08,300.300 INFO    ] 200
[2026-08-25 21:17:08,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:08,354.354 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:17:08,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:17:08,413.413 INFO    ] No camera update needed
[2026-08-25 21:17:08,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:17:08,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:17:08,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:17:08,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:17:10,472.472 INFO    ] ================================================
[2026-08-25 21:17:10,488.488 INFO    ] Launching Daemon at Tue Aug 25 21:17:10 IST 2026
[2026-08-25 21:17:10,499.499 INFO    ] ================================================
[2026-08-25 21:17:11,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:17:11
[2026-08-25 21:17:11,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:17:11,917.917 INFO    ] Initializing speech engine...
[2026-08-25 21:17:11,929.929 INFO    ] 2026-08-25 21:17:11
[2026-08-25 21:17:12,181.181 INFO    ] 2026-08-25 21:17:12
[2026-08-25 21:17:12,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:17:12,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:17:12,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:17:12,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:17:12,658.658 INFO    ] time= 25/08/2026 21:17:12
[2026-08-25 21:17:12,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:17:12,757.757 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:17:12,888.888 INFO    ] No existing commands found in stream
[2026-08-25 21:17:17,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:17:17,916.916 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 21:17:19,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:17:19,301.301 INFO    ] Checking for system updates...
[2026-08-25 21:17:19,336.336 INFO    ] 200
[2026-08-25 21:17:19,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:19,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:17:19,400.400 INFO    ] No update needed
[2026-08-25 21:17:19,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 21:17:19,441.441 INFO    ] 200
[2026-08-25 21:17:19,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:19,483.483 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:17:19,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:17:19,636.636 INFO    ] No camera update needed
[2026-08-25 21:17:19,642.642 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:17:19,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:17:19,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:17:19,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:17:21,697.697 INFO    ] ================================================
[2026-08-25 21:17:21,713.713 INFO    ] Launching Daemon at Tue Aug 25 21:17:21 IST 2026
[2026-08-25 21:17:21,725.725 INFO    ] ================================================
[2026-08-25 21:17:22,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:17:22
[2026-08-25 21:17:23,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:17:23,334.334 INFO    ] Initializing speech engine...
[2026-08-25 21:17:23,345.345 INFO    ] 2026-08-25 21:17:23
[2026-08-25 21:17:23,635.635 INFO    ] 2026-08-25 21:17:23
[2026-08-25 21:17:23,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:17:23,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:17:23,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:17:24,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:17:24,168.168 INFO    ] time= 25/08/2026 21:17:24
[2026-08-25 21:17:24,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:17:24,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:17:24,334.334 INFO    ] No existing commands found in stream
[2026-08-25 21:17:29,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:17:29,362.362 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 21:17:33,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:17:33,665.665 INFO    ] Checking for system updates...
[2026-08-25 21:17:33,706.706 INFO    ] 200
[2026-08-25 21:17:33,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:33,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:17:33,767.767 INFO    ] No update needed
[2026-08-25 21:17:33,770.770 INFO    ] Checking for camera pi updates...
[2026-08-25 21:17:33,804.804 INFO    ] 200
[2026-08-25 21:17:33,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:33,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:17:33,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:17:33,910.910 INFO    ] No camera update needed
[2026-08-25 21:17:33,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:17:33,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:17:33,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:17:33,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:17:35,965.965 INFO    ] ================================================
[2026-08-25 21:17:35,980.980 INFO    ] Launching Daemon at Tue Aug 25 21:17:35 IST 2026
[2026-08-25 21:17:35,991.991 INFO    ] ================================================
[2026-08-25 21:17:36,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:17:36
[2026-08-25 21:17:37,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:17:37,414.414 INFO    ] Initializing speech engine...
[2026-08-25 21:17:37,423.423 INFO    ] 2026-08-25 21:17:37
[2026-08-25 21:17:37,674.674 INFO    ] 2026-08-25 21:17:37
[2026-08-25 21:17:37,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:17:37,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:17:37,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:17:38,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:17:38,139.139 INFO    ] time= 25/08/2026 21:17:38
[2026-08-25 21:17:38,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:17:38,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:17:38,380.380 INFO    ] No existing commands found in stream
[2026-08-25 21:17:43,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:17:43,412.412 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 21:17:47,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:17:47,713.713 INFO    ] Checking for system updates...
[2026-08-25 21:17:47,748.748 INFO    ] 200
[2026-08-25 21:17:47,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:47,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:17:47,813.813 INFO    ] No update needed
[2026-08-25 21:17:47,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 21:17:47,848.848 INFO    ] 200
[2026-08-25 21:17:47,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:17:47,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:17:47,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:17:47,953.953 INFO    ] No camera update needed
[2026-08-25 21:17:47,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:17:47,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:17:47,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:17:47,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:17:50,011.011 INFO    ] ================================================
[2026-08-25 21:17:50,027.027 INFO    ] Launching Daemon at Tue Aug 25 21:17:50 IST 2026
[2026-08-25 21:17:50,038.038 INFO    ] ================================================
[2026-08-25 21:17:50,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:17:50
[2026-08-25 21:17:51,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:17:51,676.676 INFO    ] Initializing speech engine...
[2026-08-25 21:17:51,690.690 INFO    ] 2026-08-25 21:17:51
[2026-08-25 21:17:51,972.972 INFO    ] 2026-08-25 21:17:51
[2026-08-25 21:17:52,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:17:52,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:17:52,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:17:52,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:17:52,455.455 INFO    ] time= 25/08/2026 21:17:52
[2026-08-25 21:17:52,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:17:52,520.520 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:17:52,663.663 INFO    ] No existing commands found in stream
[2026-08-25 21:17:57,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:17:57,686.686 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 21:18:01,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:18:01,987.987 INFO    ] Checking for system updates...
[2026-08-25 21:18:02,038.038 INFO    ] 200
[2026-08-25 21:18:02,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:02,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:18:02,120.120 INFO    ] No update needed
[2026-08-25 21:18:02,123.123 INFO    ] Checking for camera pi updates...
[2026-08-25 21:18:02,160.160 INFO    ] 200
[2026-08-25 21:18:02,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:02,210.210 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:18:02,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:18:02,276.276 INFO    ] No camera update needed
[2026-08-25 21:18:02,279.279 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:18:02,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:18:02,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:18:02,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:18:04,335.335 INFO    ] ================================================
[2026-08-25 21:18:04,351.351 INFO    ] Launching Daemon at Tue Aug 25 21:18:04 IST 2026
[2026-08-25 21:18:04,362.362 INFO    ] ================================================
[2026-08-25 21:18:04,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:18:04
[2026-08-25 21:18:05,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:18:05,840.840 INFO    ] Initializing speech engine...
[2026-08-25 21:18:05,847.847 INFO    ] 2026-08-25 21:18:05
[2026-08-25 21:18:06,172.172 INFO    ] 2026-08-25 21:18:06
[2026-08-25 21:18:06,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:18:06,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:18:06,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:18:06,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:18:06,561.561 INFO    ] time= 25/08/2026 21:18:06
[2026-08-25 21:18:06,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:18:06,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:18:06,758.758 INFO    ] No existing commands found in stream
[2026-08-25 21:18:11,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:18:11,776.776 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 21:18:12,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:18:12,731.731 INFO    ] Checking for system updates...
[2026-08-25 21:18:12,766.766 INFO    ] 200
[2026-08-25 21:18:12,768.768 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:12,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:18:12,831.831 INFO    ] No update needed
[2026-08-25 21:18:12,834.834 INFO    ] Checking for camera pi updates...
[2026-08-25 21:18:12,867.867 INFO    ] 200
[2026-08-25 21:18:12,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:12,916.916 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:18:12,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:18:12,972.972 INFO    ] No camera update needed
[2026-08-25 21:18:12,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:18:12,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:18:12,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:18:12,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:18:15,026.026 INFO    ] ================================================
[2026-08-25 21:18:15,042.042 INFO    ] Launching Daemon at Tue Aug 25 21:18:15 IST 2026
[2026-08-25 21:18:15,054.054 INFO    ] ================================================
[2026-08-25 21:18:15,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:18:15
[2026-08-25 21:18:16,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:18:16,473.473 INFO    ] Initializing speech engine...
[2026-08-25 21:18:16,482.482 INFO    ] 2026-08-25 21:18:16
[2026-08-25 21:18:16,731.731 INFO    ] 2026-08-25 21:18:16
[2026-08-25 21:18:16,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:18:16,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:18:16,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:18:17,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:18:17,109.109 INFO    ] time= 25/08/2026 21:18:17
[2026-08-25 21:18:17,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:18:17,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:18:17,268.268 INFO    ] No existing commands found in stream
[2026-08-25 21:18:22,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:18:22,290.290 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 21:18:23,276.276 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:18:23,279.279 INFO    ] Checking for system updates...
[2026-08-25 21:18:23,314.314 INFO    ] 200
[2026-08-25 21:18:23,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:23,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:18:23,371.371 INFO    ] No update needed
[2026-08-25 21:18:23,374.374 INFO    ] Checking for camera pi updates...
[2026-08-25 21:18:23,412.412 INFO    ] 200
[2026-08-25 21:18:23,415.415 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:23,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:18:23,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:18:23,505.505 INFO    ] No camera update needed
[2026-08-25 21:18:23,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:18:23,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:18:23,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:18:23,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:18:25,558.558 INFO    ] ================================================
[2026-08-25 21:18:25,575.575 INFO    ] Launching Daemon at Tue Aug 25 21:18:25 IST 2026
[2026-08-25 21:18:25,586.586 INFO    ] ================================================
[2026-08-25 21:18:26,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:18:26
[2026-08-25 21:18:26,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:18:27,027.027 INFO    ] Initializing speech engine...
[2026-08-25 21:18:27,045.045 INFO    ] 2026-08-25 21:18:27
[2026-08-25 21:18:27,293.293 INFO    ] 2026-08-25 21:18:27
[2026-08-25 21:18:27,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:18:27,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:18:27,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:18:27,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:18:27,756.756 INFO    ] time= 25/08/2026 21:18:27
[2026-08-25 21:18:27,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:18:27,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:18:27,980.980 INFO    ] No existing commands found in stream
[2026-08-25 21:18:33,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:18:33,010.010 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 21:18:34,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:18:34,781.781 INFO    ] Checking for system updates...
[2026-08-25 21:18:34,820.820 INFO    ] 200
[2026-08-25 21:18:34,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:34,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:18:34,877.877 INFO    ] No update needed
[2026-08-25 21:18:34,880.880 INFO    ] Checking for camera pi updates...
[2026-08-25 21:18:34,914.914 INFO    ] 200
[2026-08-25 21:18:34,916.916 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:34,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:18:35,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:18:35,012.012 INFO    ] No camera update needed
[2026-08-25 21:18:35,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:18:35,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:18:35,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:18:35,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:18:37,072.072 INFO    ] ================================================
[2026-08-25 21:18:37,088.088 INFO    ] Launching Daemon at Tue Aug 25 21:18:37 IST 2026
[2026-08-25 21:18:37,098.098 INFO    ] ================================================
[2026-08-25 21:18:37,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:18:37
[2026-08-25 21:18:38,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:18:38,520.520 INFO    ] Initializing speech engine...
[2026-08-25 21:18:38,526.526 INFO    ] 2026-08-25 21:18:38
[2026-08-25 21:18:38,771.771 INFO    ] 2026-08-25 21:18:38
[2026-08-25 21:18:38,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:18:38,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:18:39,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:18:39,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:18:39,241.241 INFO    ] time= 25/08/2026 21:18:39
[2026-08-25 21:18:39,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:18:39,333.333 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:18:39,461.461 INFO    ] No existing commands found in stream
[2026-08-25 21:18:44,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:18:44,489.489 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 21:18:46,599.599 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:18:46,602.602 INFO    ] Checking for system updates...
[2026-08-25 21:18:46,643.643 INFO    ] 200
[2026-08-25 21:18:46,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:46,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:18:46,701.701 INFO    ] No update needed
[2026-08-25 21:18:46,703.703 INFO    ] Checking for camera pi updates...
[2026-08-25 21:18:46,740.740 INFO    ] 200
[2026-08-25 21:18:46,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:18:46,788.788 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:18:46,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:18:46,839.839 INFO    ] No camera update needed
[2026-08-25 21:18:46,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:18:46,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:18:46,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:18:46,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:18:48,894.894 INFO    ] ================================================
[2026-08-25 21:18:48,910.910 INFO    ] Launching Daemon at Tue Aug 25 21:18:48 IST 2026
[2026-08-25 21:18:48,921.921 INFO    ] ================================================
[2026-08-25 21:18:49,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:18:49
[2026-08-25 21:18:50,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:18:50,517.517 INFO    ] Initializing speech engine...
[2026-08-25 21:18:50,528.528 INFO    ] 2026-08-25 21:18:50
[2026-08-25 21:18:50,794.794 INFO    ] 2026-08-25 21:18:50
[2026-08-25 21:18:50,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:18:51,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:18:51,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:18:51,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:18:51,192.192 INFO    ] time= 25/08/2026 21:18:51
[2026-08-25 21:18:51,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:18:51,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:18:51,368.368 INFO    ] No existing commands found in stream
[2026-08-25 21:18:56,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:18:56,396.396 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 21:19:00,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:19:00,471.471 INFO    ] Checking for system updates...
[2026-08-25 21:19:00,510.510 INFO    ] 200
[2026-08-25 21:19:00,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:00,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:19:00,575.575 INFO    ] No update needed
[2026-08-25 21:19:00,577.577 INFO    ] Checking for camera pi updates...
[2026-08-25 21:19:00,611.611 INFO    ] 200
[2026-08-25 21:19:00,613.613 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:00,659.659 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:19:00,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:19:00,728.728 INFO    ] No camera update needed
[2026-08-25 21:19:00,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:19:00,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:19:00,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:19:00,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:19:02,787.787 INFO    ] ================================================
[2026-08-25 21:19:02,804.804 INFO    ] Launching Daemon at Tue Aug 25 21:19:02 IST 2026
[2026-08-25 21:19:02,816.816 INFO    ] ================================================
[2026-08-25 21:19:03,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:19:03
[2026-08-25 21:19:04,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:19:04,323.323 INFO    ] Initializing speech engine...
[2026-08-25 21:19:04,338.338 INFO    ] 2026-08-25 21:19:04
[2026-08-25 21:19:04,617.617 INFO    ] 2026-08-25 21:19:04
[2026-08-25 21:19:04,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:19:04,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:19:04,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:19:05,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:19:05,085.085 INFO    ] time= 25/08/2026 21:19:05
[2026-08-25 21:19:05,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:19:05,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:19:05,313.313 INFO    ] No existing commands found in stream
[2026-08-25 21:19:10,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:19:10,347.347 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-08-25 21:19:11,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:19:11,656.656 INFO    ] Checking for system updates...
[2026-08-25 21:19:11,691.691 INFO    ] 200
[2026-08-25 21:19:11,694.694 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:11,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:19:11,750.750 INFO    ] No update needed
[2026-08-25 21:19:11,753.753 INFO    ] Checking for camera pi updates...
[2026-08-25 21:19:11,787.787 INFO    ] 200
[2026-08-25 21:19:11,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:11,829.829 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:19:11,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:19:11,881.881 INFO    ] No camera update needed
[2026-08-25 21:19:11,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:19:11,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:19:11,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:19:11,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:19:13,938.938 INFO    ] ================================================
[2026-08-25 21:19:13,954.954 INFO    ] Launching Daemon at Tue Aug 25 21:19:13 IST 2026
[2026-08-25 21:19:13,966.966 INFO    ] ================================================
[2026-08-25 21:19:14,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:19:14
[2026-08-25 21:19:15,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:19:15,436.436 INFO    ] Initializing speech engine...
[2026-08-25 21:19:15,446.446 INFO    ] 2026-08-25 21:19:15
[2026-08-25 21:19:15,695.695 INFO    ] 2026-08-25 21:19:15
[2026-08-25 21:19:15,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:19:15,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:19:15,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:19:16,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:19:16,166.166 INFO    ] time= 25/08/2026 21:19:16
[2026-08-25 21:19:16,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:19:16,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:19:16,401.401 INFO    ] No existing commands found in stream
[2026-08-25 21:19:21,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:19:21,420.420 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 21:19:22,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:19:22,971.971 INFO    ] Checking for system updates...
[2026-08-25 21:19:23,006.006 INFO    ] 200
[2026-08-25 21:19:23,009.009 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:23,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:19:23,070.070 INFO    ] No update needed
[2026-08-25 21:19:23,072.072 INFO    ] Checking for camera pi updates...
[2026-08-25 21:19:23,109.109 INFO    ] 200
[2026-08-25 21:19:23,119.119 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:23,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:19:23,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:19:23,315.315 INFO    ] No camera update needed
[2026-08-25 21:19:23,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:19:23,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:19:23,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:19:23,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:19:25,372.372 INFO    ] ================================================
[2026-08-25 21:19:25,388.388 INFO    ] Launching Daemon at Tue Aug 25 21:19:25 IST 2026
[2026-08-25 21:19:25,398.398 INFO    ] ================================================
[2026-08-25 21:19:25,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:19:25
[2026-08-25 21:19:26,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:19:26,853.853 INFO    ] Initializing speech engine...
[2026-08-25 21:19:26,873.873 INFO    ] 2026-08-25 21:19:26
[2026-08-25 21:19:27,130.130 INFO    ] 2026-08-25 21:19:27
[2026-08-25 21:19:27,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:19:27,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:19:27,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:19:27,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:19:27,618.618 INFO    ] time= 25/08/2026 21:19:27
[2026-08-25 21:19:27,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:19:27,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:19:27,832.832 INFO    ] No existing commands found in stream
[2026-08-25 21:19:32,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:19:32,850.850 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 21:19:34,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:19:34,651.651 INFO    ] Checking for system updates...
[2026-08-25 21:19:34,688.688 INFO    ] 200
[2026-08-25 21:19:34,690.690 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:34,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:19:34,746.746 INFO    ] No update needed
[2026-08-25 21:19:34,749.749 INFO    ] Checking for camera pi updates...
[2026-08-25 21:19:34,787.787 INFO    ] 200
[2026-08-25 21:19:34,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:34,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:19:34,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:19:34,900.900 INFO    ] No camera update needed
[2026-08-25 21:19:34,903.903 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:19:34,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:19:34,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:19:34,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:19:36,959.959 INFO    ] ================================================
[2026-08-25 21:19:36,975.975 INFO    ] Launching Daemon at Tue Aug 25 21:19:36 IST 2026
[2026-08-25 21:19:36,986.986 INFO    ] ================================================
[2026-08-25 21:19:37,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:19:37
[2026-08-25 21:19:38,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:19:38,411.411 INFO    ] Initializing speech engine...
[2026-08-25 21:19:38,420.420 INFO    ] 2026-08-25 21:19:38
[2026-08-25 21:19:38,666.666 INFO    ] 2026-08-25 21:19:38
[2026-08-25 21:19:38,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:19:38,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:19:38,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:19:39,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:19:39,138.138 INFO    ] time= 25/08/2026 21:19:39
[2026-08-25 21:19:39,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:19:39,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:19:39,372.372 INFO    ] No existing commands found in stream
[2026-08-25 21:19:44,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:19:44,389.389 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 21:19:47,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:19:47,839.839 INFO    ] Checking for system updates...
[2026-08-25 21:19:47,875.875 INFO    ] 200
[2026-08-25 21:19:47,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:47,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:19:47,936.936 INFO    ] No update needed
[2026-08-25 21:19:47,939.939 INFO    ] Checking for camera pi updates...
[2026-08-25 21:19:47,972.972 INFO    ] 200
[2026-08-25 21:19:47,975.975 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:48,015.015 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:19:48,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:19:48,064.064 INFO    ] No camera update needed
[2026-08-25 21:19:48,066.066 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:19:48,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:19:48,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:19:48,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:19:50,119.119 INFO    ] ================================================
[2026-08-25 21:19:50,135.135 INFO    ] Launching Daemon at Tue Aug 25 21:19:50 IST 2026
[2026-08-25 21:19:50,145.145 INFO    ] ================================================
[2026-08-25 21:19:50,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:19:50
[2026-08-25 21:19:51,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:19:51,587.587 INFO    ] Initializing speech engine...
[2026-08-25 21:19:51,596.596 INFO    ] 2026-08-25 21:19:51
[2026-08-25 21:19:51,885.885 INFO    ] 2026-08-25 21:19:51
[2026-08-25 21:19:51,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:19:52,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:19:52,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:19:52,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:19:52,298.298 INFO    ] time= 25/08/2026 21:19:52
[2026-08-25 21:19:52,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:19:52,308.308 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:19:52,380.380 INFO    ] No existing commands found in stream
[2026-08-25 21:19:57,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:19:57,396.396 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 21:19:57,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:19:57,870.870 INFO    ] Checking for system updates...
[2026-08-25 21:19:57,908.908 INFO    ] 200
[2026-08-25 21:19:57,910.910 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:57,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:19:57,964.964 INFO    ] No update needed
[2026-08-25 21:19:57,967.967 INFO    ] Checking for camera pi updates...
[2026-08-25 21:19:58,005.005 INFO    ] 200
[2026-08-25 21:19:58,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:19:58,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:19:58,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:19:58,103.103 INFO    ] No camera update needed
[2026-08-25 21:19:58,105.105 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:19:58,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:19:58,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:19:58,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:20:00,157.157 INFO    ] ================================================
[2026-08-25 21:20:00,172.172 INFO    ] Launching Daemon at Tue Aug 25 21:20:00 IST 2026
[2026-08-25 21:20:00,183.183 INFO    ] ================================================
[2026-08-25 21:20:00,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:20:00
[2026-08-25 21:20:01,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:20:02,289.289 INFO    ] Initializing speech engine...
[2026-08-25 21:20:02,293.293 INFO    ] 2026-08-25 21:20:02
[2026-08-25 21:20:02,634.634 INFO    ] 2026-08-25 21:20:02
[2026-08-25 21:20:02,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:20:02,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:20:02,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:20:03,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:20:03,049.049 INFO    ] time= 25/08/2026 21:20:03
[2026-08-25 21:20:03,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:20:03,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:20:03,191.191 INFO    ] No existing commands found in stream
[2026-08-25 21:20:08,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:20:08,206.206 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 21:20:11,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:20:11,342.342 INFO    ] Checking for system updates...
[2026-08-25 21:20:11,377.377 INFO    ] 200
[2026-08-25 21:20:11,380.380 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:11,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:20:11,437.437 INFO    ] No update needed
[2026-08-25 21:20:11,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 21:20:11,473.473 INFO    ] 200
[2026-08-25 21:20:11,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:11,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:20:11,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:20:11,561.561 INFO    ] No camera update needed
[2026-08-25 21:20:11,564.564 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:20:11,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:20:11,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:20:11,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:20:13,617.617 INFO    ] ================================================
[2026-08-25 21:20:13,632.632 INFO    ] Launching Daemon at Tue Aug 25 21:20:13 IST 2026
[2026-08-25 21:20:13,644.644 INFO    ] ================================================
[2026-08-25 21:20:14,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:20:14
[2026-08-25 21:20:14,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:20:15,294.294 INFO    ] Initializing speech engine...
[2026-08-25 21:20:15,308.308 INFO    ] 2026-08-25 21:20:15
[2026-08-25 21:20:15,621.621 INFO    ] 2026-08-25 21:20:15
[2026-08-25 21:20:15,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:20:15,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:20:15,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:20:16,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:20:16,129.129 INFO    ] time= 25/08/2026 21:20:16
[2026-08-25 21:20:16,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:20:16,172.172 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:20:16,319.319 INFO    ] No existing commands found in stream
[2026-08-25 21:20:21,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:20:21,353.353 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 21:20:22,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:20:22,101.101 INFO    ] Checking for system updates...
[2026-08-25 21:20:22,143.143 INFO    ] 200
[2026-08-25 21:20:22,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:22,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:20:22,210.210 INFO    ] No update needed
[2026-08-25 21:20:22,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 21:20:22,249.249 INFO    ] 200
[2026-08-25 21:20:22,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:22,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:20:22,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:20:22,358.358 INFO    ] No camera update needed
[2026-08-25 21:20:22,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:20:22,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:20:22,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:20:22,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:20:24,412.412 INFO    ] ================================================
[2026-08-25 21:20:24,428.428 INFO    ] Launching Daemon at Tue Aug 25 21:20:24 IST 2026
[2026-08-25 21:20:24,439.439 INFO    ] ================================================
[2026-08-25 21:20:25,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:20:25
[2026-08-25 21:20:25,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:20:26,085.085 INFO    ] Initializing speech engine...
[2026-08-25 21:20:26,098.098 INFO    ] 2026-08-25 21:20:26
[2026-08-25 21:20:26,385.385 INFO    ] 2026-08-25 21:20:26
[2026-08-25 21:20:26,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:20:26,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:20:26,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:20:26,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:20:26,913.913 INFO    ] time= 25/08/2026 21:20:26
[2026-08-25 21:20:26,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:20:26,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:20:27,069.069 INFO    ] No existing commands found in stream
[2026-08-25 21:20:32,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:20:32,102.102 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 21:20:34,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:20:34,613.613 INFO    ] Checking for system updates...
[2026-08-25 21:20:34,649.649 INFO    ] 200
[2026-08-25 21:20:34,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:34,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:20:34,715.715 INFO    ] No update needed
[2026-08-25 21:20:34,718.718 INFO    ] Checking for camera pi updates...
[2026-08-25 21:20:34,756.756 INFO    ] 200
[2026-08-25 21:20:34,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:34,798.798 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:20:34,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:20:34,845.845 INFO    ] No camera update needed
[2026-08-25 21:20:34,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:20:34,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:20:34,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:20:34,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:20:36,900.900 INFO    ] ================================================
[2026-08-25 21:20:36,915.915 INFO    ] Launching Daemon at Tue Aug 25 21:20:36 IST 2026
[2026-08-25 21:20:36,926.926 INFO    ] ================================================
[2026-08-25 21:20:37,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:20:37
[2026-08-25 21:20:38,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:20:38,344.344 INFO    ] Initializing speech engine...
[2026-08-25 21:20:38,353.353 INFO    ] 2026-08-25 21:20:38
[2026-08-25 21:20:38,651.651 INFO    ] 2026-08-25 21:20:38
[2026-08-25 21:20:38,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:20:38,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:20:38,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:20:39,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:20:39,040.040 INFO    ] time= 25/08/2026 21:20:39
[2026-08-25 21:20:39,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:20:39,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:20:39,169.169 INFO    ] No existing commands found in stream
[2026-08-25 21:20:44,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:20:44,183.183 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 21:20:47,783.783 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:20:47,786.786 INFO    ] Checking for system updates...
[2026-08-25 21:20:47,821.821 INFO    ] 200
[2026-08-25 21:20:47,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:47,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:20:47,881.881 INFO    ] No update needed
[2026-08-25 21:20:47,883.883 INFO    ] Checking for camera pi updates...
[2026-08-25 21:20:47,918.918 INFO    ] 200
[2026-08-25 21:20:47,920.920 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:20:47,960.960 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:20:48,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:20:48,010.010 INFO    ] No camera update needed
[2026-08-25 21:20:48,012.012 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:20:48,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:20:48,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:20:48,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:20:50,064.064 INFO    ] ================================================
[2026-08-25 21:20:50,080.080 INFO    ] Launching Daemon at Tue Aug 25 21:20:50 IST 2026
[2026-08-25 21:20:50,091.091 INFO    ] ================================================
[2026-08-25 21:20:50,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:20:50
[2026-08-25 21:20:51,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:20:51,551.551 INFO    ] Initializing speech engine...
[2026-08-25 21:20:51,557.557 INFO    ] 2026-08-25 21:20:51
[2026-08-25 21:20:51,804.804 INFO    ] 2026-08-25 21:20:51
[2026-08-25 21:20:51,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:20:52,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:20:52,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:20:52,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:20:52,248.248 INFO    ] time= 25/08/2026 21:20:52
[2026-08-25 21:20:52,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:20:52,362.362 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:20:52,487.487 INFO    ] No existing commands found in stream
[2026-08-25 21:20:57,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:20:57,520.520 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 21:21:01,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:21:01,749.749 INFO    ] Checking for system updates...
[2026-08-25 21:21:01,809.809 INFO    ] 200
[2026-08-25 21:21:01,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:01,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:21:01,887.887 INFO    ] No update needed
[2026-08-25 21:21:01,890.890 INFO    ] Checking for camera pi updates...
[2026-08-25 21:21:01,931.931 INFO    ] 200
[2026-08-25 21:21:01,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:01,980.980 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:21:02,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:21:02,036.036 INFO    ] No camera update needed
[2026-08-25 21:21:02,039.039 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:21:02,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:21:02,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:21:02,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:21:04,095.095 INFO    ] ================================================
[2026-08-25 21:21:04,111.111 INFO    ] Launching Daemon at Tue Aug 25 21:21:04 IST 2026
[2026-08-25 21:21:04,122.122 INFO    ] ================================================
[2026-08-25 21:21:04,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:21:04
[2026-08-25 21:21:05,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:21:05,544.544 INFO    ] Initializing speech engine...
[2026-08-25 21:21:05,553.553 INFO    ] 2026-08-25 21:21:05
[2026-08-25 21:21:05,805.805 INFO    ] 2026-08-25 21:21:05
[2026-08-25 21:21:05,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:21:06,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:21:06,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:21:06,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:21:06,179.179 INFO    ] time= 25/08/2026 21:21:06
[2026-08-25 21:21:06,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:21:06,247.247 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:21:06,391.391 INFO    ] No existing commands found in stream
[2026-08-25 21:21:11,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:21:11,416.416 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 21:21:14,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:21:14,249.249 INFO    ] Checking for system updates...
[2026-08-25 21:21:14,290.290 INFO    ] 200
[2026-08-25 21:21:14,293.293 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:14,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:21:14,361.361 INFO    ] No update needed
[2026-08-25 21:21:14,363.363 INFO    ] Checking for camera pi updates...
[2026-08-25 21:21:14,402.402 INFO    ] 200
[2026-08-25 21:21:14,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:14,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:21:14,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:21:14,502.502 INFO    ] No camera update needed
[2026-08-25 21:21:14,505.505 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:21:14,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:21:14,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:21:14,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:21:16,563.563 INFO    ] ================================================
[2026-08-25 21:21:16,579.579 INFO    ] Launching Daemon at Tue Aug 25 21:21:16 IST 2026
[2026-08-25 21:21:16,595.595 INFO    ] ================================================
[2026-08-25 21:21:17,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:21:17
[2026-08-25 21:21:17,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:21:18,045.045 INFO    ] Initializing speech engine...
[2026-08-25 21:21:18,055.055 INFO    ] 2026-08-25 21:21:18
[2026-08-25 21:21:18,302.302 INFO    ] 2026-08-25 21:21:18
[2026-08-25 21:21:18,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:21:18,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:21:18,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:21:18,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:21:18,783.783 INFO    ] time= 25/08/2026 21:21:18
[2026-08-25 21:21:18,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:21:18,867.867 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:21:18,961.961 INFO    ] No existing commands found in stream
[2026-08-25 21:21:23,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:21:23,994.994 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-08-25 21:21:25,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:21:25,068.068 INFO    ] Checking for system updates...
[2026-08-25 21:21:25,104.104 INFO    ] 200
[2026-08-25 21:21:25,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:25,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:21:25,162.162 INFO    ] No update needed
[2026-08-25 21:21:25,165.165 INFO    ] Checking for camera pi updates...
[2026-08-25 21:21:25,202.202 INFO    ] 200
[2026-08-25 21:21:25,205.205 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:25,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:21:25,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:21:25,401.401 INFO    ] No camera update needed
[2026-08-25 21:21:25,403.403 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:21:25,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:21:25,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:21:25,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:21:27,459.459 INFO    ] ================================================
[2026-08-25 21:21:27,475.475 INFO    ] Launching Daemon at Tue Aug 25 21:21:27 IST 2026
[2026-08-25 21:21:27,487.487 INFO    ] ================================================
[2026-08-25 21:21:28,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:21:28
[2026-08-25 21:21:28,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:21:28,940.940 INFO    ] Initializing speech engine...
[2026-08-25 21:21:28,966.966 INFO    ] 2026-08-25 21:21:28
[2026-08-25 21:21:29,250.250 INFO    ] 2026-08-25 21:21:29
[2026-08-25 21:21:29,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:21:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:21:29,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:21:29,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:21:29,634.634 INFO    ] time= 25/08/2026 21:21:29
[2026-08-25 21:21:29,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:21:29,662.662 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:21:29,738.738 INFO    ] No existing commands found in stream
[2026-08-25 21:21:34,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:21:34,777.777 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-08-25 21:21:38,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:21:38,706.706 INFO    ] Checking for system updates...
[2026-08-25 21:21:38,746.746 INFO    ] 200
[2026-08-25 21:21:38,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:38,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:21:38,805.805 INFO    ] No update needed
[2026-08-25 21:21:38,807.807 INFO    ] Checking for camera pi updates...
[2026-08-25 21:21:38,843.843 INFO    ] 200
[2026-08-25 21:21:38,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:38,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:21:38,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:21:38,936.936 INFO    ] No camera update needed
[2026-08-25 21:21:38,939.939 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:21:38,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:21:38,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:21:38,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:21:41,995.995 INFO    ] ================================================
[2026-08-25 21:21:41,010.010 INFO    ] Launching Daemon at Tue Aug 25 21:21:41 IST 2026
[2026-08-25 21:21:41,022.022 INFO    ] ================================================
[2026-08-25 21:21:41,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:21:41
[2026-08-25 21:21:42,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:21:42,646.646 INFO    ] Initializing speech engine...
[2026-08-25 21:21:42,659.659 INFO    ] 2026-08-25 21:21:42
[2026-08-25 21:21:42,968.968 INFO    ] 2026-08-25 21:21:42
[2026-08-25 21:21:43,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:21:43,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:21:43,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:21:43,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:21:43,420.420 INFO    ] time= 25/08/2026 21:21:43
[2026-08-25 21:21:43,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:21:43,499.499 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:21:43,642.642 INFO    ] No existing commands found in stream
[2026-08-25 21:21:48,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:21:48,664.664 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 21:21:52,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:21:52,705.705 INFO    ] Checking for system updates...
[2026-08-25 21:21:52,741.741 INFO    ] 200
[2026-08-25 21:21:52,744.744 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:52,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:21:52,807.807 INFO    ] No update needed
[2026-08-25 21:21:52,810.810 INFO    ] Checking for camera pi updates...
[2026-08-25 21:21:52,845.845 INFO    ] 200
[2026-08-25 21:21:52,848.848 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:21:52,894.894 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:21:52,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:21:52,953.953 INFO    ] No camera update needed
[2026-08-25 21:21:52,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:21:52,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:21:52,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:21:52,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:21:55,013.013 INFO    ] ================================================
[2026-08-25 21:21:55,029.029 INFO    ] Launching Daemon at Tue Aug 25 21:21:55 IST 2026
[2026-08-25 21:21:55,040.040 INFO    ] ================================================
[2026-08-25 21:21:55,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:21:55
[2026-08-25 21:21:56,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:21:56,489.489 INFO    ] Initializing speech engine...
[2026-08-25 21:21:56,494.494 INFO    ] 2026-08-25 21:21:56
[2026-08-25 21:21:56,760.760 INFO    ] 2026-08-25 21:21:56
[2026-08-25 21:21:56,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:21:56,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:21:56,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:21:57,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:21:57,135.135 INFO    ] time= 25/08/2026 21:21:57
[2026-08-25 21:21:57,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:21:57,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:21:57,262.262 INFO    ] No existing commands found in stream
[2026-08-25 21:22:02,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:22:02,276.276 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 21:22:05,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:22:05,537.537 INFO    ] Checking for system updates...
[2026-08-25 21:22:05,573.573 INFO    ] 200
[2026-08-25 21:22:05,575.575 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:05,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:05,630.630 INFO    ] No update needed
[2026-08-25 21:22:05,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 21:22:05,669.669 INFO    ] 200
[2026-08-25 21:22:05,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:05,716.716 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:22:05,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:05,776.776 INFO    ] No camera update needed
[2026-08-25 21:22:05,778.778 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:22:05,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:22:05,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:22:05,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:22:07,831.831 INFO    ] ================================================
[2026-08-25 21:22:07,846.846 INFO    ] Launching Daemon at Tue Aug 25 21:22:07 IST 2026
[2026-08-25 21:22:07,857.857 INFO    ] ================================================
[2026-08-25 21:22:08,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:22:08
[2026-08-25 21:22:09,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:22:09,470.470 INFO    ] Initializing speech engine...
[2026-08-25 21:22:09,478.478 INFO    ] 2026-08-25 21:22:09
[2026-08-25 21:22:09,740.740 INFO    ] 2026-08-25 21:22:09
[2026-08-25 21:22:09,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:22:09,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:22:09,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:22:10,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:22:10,158.158 INFO    ] time= 25/08/2026 21:22:10
[2026-08-25 21:22:10,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:22:10,170.170 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:22:10,248.248 INFO    ] No existing commands found in stream
[2026-08-25 21:22:15,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:22:15,265.265 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 21:22:18,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:22:18,020.020 INFO    ] Checking for system updates...
[2026-08-25 21:22:18,058.058 INFO    ] 200
[2026-08-25 21:22:18,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:18,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:18,118.118 INFO    ] No update needed
[2026-08-25 21:22:18,120.120 INFO    ] Checking for camera pi updates...
[2026-08-25 21:22:18,153.153 INFO    ] 200
[2026-08-25 21:22:18,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:18,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:22:18,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:18,279.279 INFO    ] No camera update needed
[2026-08-25 21:22:18,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:22:18,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:22:18,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:22:18,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:22:20,339.339 INFO    ] ================================================
[2026-08-25 21:22:20,356.356 INFO    ] Launching Daemon at Tue Aug 25 21:22:20 IST 2026
[2026-08-25 21:22:20,367.367 INFO    ] ================================================
[2026-08-25 21:22:20,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:22:20
[2026-08-25 21:22:21,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:22:21,851.851 INFO    ] Initializing speech engine...
[2026-08-25 21:22:21,872.872 INFO    ] 2026-08-25 21:22:21
[2026-08-25 21:22:22,160.160 INFO    ] 2026-08-25 21:22:22
[2026-08-25 21:22:22,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:22:22,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:22:22,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:22:22,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:22:22,519.519 INFO    ] time= 25/08/2026 21:22:22
[2026-08-25 21:22:22,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:22:22,547.547 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:22:22,669.669 INFO    ] No existing commands found in stream
[2026-08-25 21:22:27,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:22:27,688.688 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 21:22:28,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:22:28,250.250 INFO    ] Checking for system updates...
[2026-08-25 21:22:28,285.285 INFO    ] 200
[2026-08-25 21:22:28,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:28,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:22:28,344.344 INFO    ] No update needed
[2026-08-25 21:22:28,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 21:22:28,381.381 INFO    ] 200
[2026-08-25 21:22:28,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:28,427.427 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:22:28,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:22:28,483.483 INFO    ] No camera update needed
[2026-08-25 21:22:28,486.486 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:22:28,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:22:28,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:22:28,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:22:30,541.541 INFO    ] ================================================
[2026-08-25 21:22:30,556.556 INFO    ] Launching Daemon at Tue Aug 25 21:22:30 IST 2026
[2026-08-25 21:22:30,567.567 INFO    ] ================================================
[2026-08-25 21:22:31,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:22:31
[2026-08-25 21:22:31,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:22:32,026.026 INFO    ] Initializing speech engine...
[2026-08-25 21:22:32,047.047 INFO    ] 2026-08-25 21:22:32
[2026-08-25 21:22:32,327.327 INFO    ] 2026-08-25 21:22:32
[2026-08-25 21:22:32,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:22:32,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:22:32,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:22:32,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:22:32,731.731 INFO    ] time= 25/08/2026 21:22:32
[2026-08-25 21:22:32,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:22:32,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:22:32,849.849 INFO    ] No existing commands found in stream
[2026-08-25 21:22:37,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:22:37,881.881 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 21:22:40,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:22:40,760.760 INFO    ] Checking for system updates...
[2026-08-25 21:22:40,799.799 INFO    ] 200
[2026-08-25 21:22:40,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:40,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:40,865.865 INFO    ] No update needed
[2026-08-25 21:22:40,868.868 INFO    ] Checking for camera pi updates...
[2026-08-25 21:22:40,904.904 INFO    ] 200
[2026-08-25 21:22:40,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:40,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:22:41,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:41,430.430 INFO    ] No camera update needed
[2026-08-25 21:22:41,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:22:41,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:22:41,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:22:41,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:22:43,489.489 INFO    ] ================================================
[2026-08-25 21:22:43,506.506 INFO    ] Launching Daemon at Tue Aug 25 21:22:43 IST 2026
[2026-08-25 21:22:43,518.518 INFO    ] ================================================
[2026-08-25 21:22:44,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:22:44
[2026-08-25 21:22:44,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:22:45,010.010 INFO    ] Initializing speech engine...
[2026-08-25 21:22:45,020.020 INFO    ] 2026-08-25 21:22:45
[2026-08-25 21:22:45,278.278 INFO    ] 2026-08-25 21:22:45
[2026-08-25 21:22:45,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:22:45,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:22:45,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:22:45,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:22:45,671.671 INFO    ] time= 25/08/2026 21:22:45
[2026-08-25 21:22:45,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:22:45,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:22:45,868.868 INFO    ] No existing commands found in stream
[2026-08-25 21:22:50,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:22:50,887.887 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 21:22:51,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:22:51,902.902 INFO    ] Checking for system updates...
[2026-08-25 21:22:51,937.937 INFO    ] 200
[2026-08-25 21:22:51,939.939 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:51,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:51,999.999 INFO    ] No update needed
[2026-08-25 21:22:52,002.002 INFO    ] Checking for camera pi updates...
[2026-08-25 21:22:52,035.035 INFO    ] 200
[2026-08-25 21:22:52,038.038 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:22:52,082.082 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:22:52,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:22:52,144.144 INFO    ] No camera update needed
[2026-08-25 21:22:52,146.146 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:22:52,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:22:52,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:22:52,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:22:54,200.200 INFO    ] ================================================
[2026-08-25 21:22:54,216.216 INFO    ] Launching Daemon at Tue Aug 25 21:22:54 IST 2026
[2026-08-25 21:22:54,228.228 INFO    ] ================================================
[2026-08-25 21:22:54,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:22:54
[2026-08-25 21:22:55,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:22:55,669.669 INFO    ] Initializing speech engine...
[2026-08-25 21:22:55,675.675 INFO    ] 2026-08-25 21:22:55
[2026-08-25 21:22:55,971.971 INFO    ] 2026-08-25 21:22:55
[2026-08-25 21:22:56,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:22:56,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:22:56,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:22:56,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:22:56,352.352 INFO    ] time= 25/08/2026 21:22:56
[2026-08-25 21:22:56,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:22:56,394.394 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:22:56,479.479 INFO    ] No existing commands found in stream
[2026-08-25 21:23:01,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:23:01,500.500 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 21:23:02,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:23:02,224.224 INFO    ] Checking for system updates...
[2026-08-25 21:23:02,277.277 INFO    ] 200
[2026-08-25 21:23:02,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:02,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:02,345.345 INFO    ] No update needed
[2026-08-25 21:23:02,348.348 INFO    ] Checking for camera pi updates...
[2026-08-25 21:23:02,387.387 INFO    ] 200
[2026-08-25 21:23:02,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:02,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:23:02,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:02,533.533 INFO    ] No camera update needed
[2026-08-25 21:23:02,536.536 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:23:02,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:23:02,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:23:02,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:23:04,597.597 INFO    ] ================================================
[2026-08-25 21:23:04,613.613 INFO    ] Launching Daemon at Tue Aug 25 21:23:04 IST 2026
[2026-08-25 21:23:04,624.624 INFO    ] ================================================
[2026-08-25 21:23:05,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:23:05
[2026-08-25 21:23:05,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:23:06,251.251 INFO    ] Initializing speech engine...
[2026-08-25 21:23:06,269.269 INFO    ] 2026-08-25 21:23:06
[2026-08-25 21:23:06,537.537 INFO    ] 2026-08-25 21:23:06
[2026-08-25 21:23:06,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:23:06,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:23:06,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:23:06,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:23:06,947.947 INFO    ] time= 25/08/2026 21:23:06
[2026-08-25 21:23:06,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:23:06,974.974 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:23:07,110.110 INFO    ] No existing commands found in stream
[2026-08-25 21:23:12,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:23:12,138.138 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-08-25 21:23:16,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:23:16,093.093 INFO    ] Checking for system updates...
[2026-08-25 21:23:16,128.128 INFO    ] 200
[2026-08-25 21:23:16,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:16,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:16,185.185 INFO    ] No update needed
[2026-08-25 21:23:16,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 21:23:16,228.228 INFO    ] 200
[2026-08-25 21:23:16,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:16,275.275 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:23:16,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:16,325.325 INFO    ] No camera update needed
[2026-08-25 21:23:16,328.328 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:23:16,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:23:16,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:23:16,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:23:18,380.380 INFO    ] ================================================
[2026-08-25 21:23:18,396.396 INFO    ] Launching Daemon at Tue Aug 25 21:23:18 IST 2026
[2026-08-25 21:23:18,407.407 INFO    ] ================================================
[2026-08-25 21:23:18,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:23:18
[2026-08-25 21:23:19,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:23:19,818.818 INFO    ] Initializing speech engine...
[2026-08-25 21:23:19,827.827 INFO    ] 2026-08-25 21:23:19
[2026-08-25 21:23:20,120.120 INFO    ] 2026-08-25 21:23:20
[2026-08-25 21:23:20,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:23:20,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:23:20,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:23:20,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:23:20,499.499 INFO    ] time= 25/08/2026 21:23:20
[2026-08-25 21:23:20,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:23:20,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:23:20,624.624 INFO    ] No existing commands found in stream
[2026-08-25 21:23:25,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:23:25,640.640 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 21:23:28,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:23:28,074.074 INFO    ] Checking for system updates...
[2026-08-25 21:23:28,110.110 INFO    ] 200
[2026-08-25 21:23:28,113.113 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:28,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:28,176.176 INFO    ] No update needed
[2026-08-25 21:23:28,179.179 INFO    ] Checking for camera pi updates...
[2026-08-25 21:23:28,217.217 INFO    ] 200
[2026-08-25 21:23:28,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:28,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:23:28,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:28,415.415 INFO    ] No camera update needed
[2026-08-25 21:23:28,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:23:28,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:23:28,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:23:28,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:23:30,475.475 INFO    ] ================================================
[2026-08-25 21:23:30,490.490 INFO    ] Launching Daemon at Tue Aug 25 21:23:30 IST 2026
[2026-08-25 21:23:30,501.501 INFO    ] ================================================
[2026-08-25 21:23:31,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:23:31
[2026-08-25 21:23:31,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:23:31,957.957 INFO    ] Initializing speech engine...
[2026-08-25 21:23:31,973.973 INFO    ] 2026-08-25 21:23:31
[2026-08-25 21:23:32,244.244 INFO    ] 2026-08-25 21:23:32
[2026-08-25 21:23:32,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:23:32,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:23:32,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:23:32,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:23:32,790.790 INFO    ] time= 25/08/2026 21:23:32
[2026-08-25 21:23:32,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:23:32,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:23:33,000.000 INFO    ] No existing commands found in stream
[2026-08-25 21:23:38,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:23:38,035.035 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 21:23:41,280.280 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:23:41,283.283 INFO    ] Checking for system updates...
[2026-08-25 21:23:41,324.324 INFO    ] 200
[2026-08-25 21:23:41,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:41,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:41,410.410 INFO    ] No update needed
[2026-08-25 21:23:41,413.413 INFO    ] Checking for camera pi updates...
[2026-08-25 21:23:41,455.455 INFO    ] 200
[2026-08-25 21:23:41,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:41,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:23:41,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:23:41,553.553 INFO    ] No camera update needed
[2026-08-25 21:23:41,556.556 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:23:41,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:23:41,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:23:41,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:23:43,612.612 INFO    ] ================================================
[2026-08-25 21:23:43,628.628 INFO    ] Launching Daemon at Tue Aug 25 21:23:43 IST 2026
[2026-08-25 21:23:43,639.639 INFO    ] ================================================
[2026-08-25 21:23:44,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:23:44
[2026-08-25 21:23:44,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:23:45,081.081 INFO    ] Initializing speech engine...
[2026-08-25 21:23:45,089.089 INFO    ] 2026-08-25 21:23:45
[2026-08-25 21:23:45,344.344 INFO    ] 2026-08-25 21:23:45
[2026-08-25 21:23:45,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:23:45,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:23:45,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:23:45,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:23:45,754.754 INFO    ] time= 25/08/2026 21:23:45
[2026-08-25 21:23:45,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:23:45,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:23:45,947.947 INFO    ] No existing commands found in stream
[2026-08-25 21:23:50,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:23:50,980.980 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 21:23:52,451.451 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:23:52,453.453 INFO    ] Checking for system updates...
[2026-08-25 21:23:52,489.489 INFO    ] 200
[2026-08-25 21:23:52,491.491 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:52,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:23:52,553.553 INFO    ] No update needed
[2026-08-25 21:23:52,556.556 INFO    ] Checking for camera pi updates...
[2026-08-25 21:23:52,590.590 INFO    ] 200
[2026-08-25 21:23:52,592.592 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:23:52,632.632 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:23:52,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:23:52,689.689 INFO    ] No camera update needed
[2026-08-25 21:23:52,692.692 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:23:52,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:23:52,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:23:52,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:23:54,747.747 INFO    ] ================================================
[2026-08-25 21:23:54,762.762 INFO    ] Launching Daemon at Tue Aug 25 21:23:54 IST 2026
[2026-08-25 21:23:54,774.774 INFO    ] ================================================
[2026-08-25 21:23:55,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:23:55
[2026-08-25 21:23:55,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:23:56,173.173 INFO    ] Initializing speech engine...
[2026-08-25 21:23:56,181.181 INFO    ] 2026-08-25 21:23:56
[2026-08-25 21:23:56,458.458 INFO    ] 2026-08-25 21:23:56
[2026-08-25 21:23:56,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:23:56,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:23:56,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:23:56,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:23:56,831.831 INFO    ] time= 25/08/2026 21:23:56
[2026-08-25 21:23:56,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:23:56,885.885 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:23:57,024.024 INFO    ] No existing commands found in stream
[2026-08-25 21:24:02,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:24:02,047.047 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 21:24:02,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:24:02,709.709 INFO    ] Checking for system updates...
[2026-08-25 21:24:02,751.751 INFO    ] 200
[2026-08-25 21:24:02,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:02,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:24:02,826.826 INFO    ] No update needed
[2026-08-25 21:24:02,828.828 INFO    ] Checking for camera pi updates...
[2026-08-25 21:24:02,861.861 INFO    ] 200
[2026-08-25 21:24:02,864.864 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:02,914.914 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:24:02,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:24:02,978.978 INFO    ] No camera update needed
[2026-08-25 21:24:02,980.980 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:24:02,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:24:02,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:24:02,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:24:05,040.040 INFO    ] ================================================
[2026-08-25 21:24:05,056.056 INFO    ] Launching Daemon at Tue Aug 25 21:24:05 IST 2026
[2026-08-25 21:24:05,067.067 INFO    ] ================================================
[2026-08-25 21:24:05,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:24:05
[2026-08-25 21:24:06,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:24:06,559.559 INFO    ] Initializing speech engine...
[2026-08-25 21:24:06,571.571 INFO    ] 2026-08-25 21:24:06
[2026-08-25 21:24:06,884.884 INFO    ] 2026-08-25 21:24:06
[2026-08-25 21:24:06,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:24:07,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:24:07,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:24:07,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:24:07,392.392 INFO    ] time= 25/08/2026 21:24:07
[2026-08-25 21:24:07,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:24:07,406.406 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:24:07,545.545 INFO    ] No existing commands found in stream
[2026-08-25 21:24:12,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:24:12,570.570 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 21:24:14,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:24:14,427.427 INFO    ] Checking for system updates...
[2026-08-25 21:24:14,463.463 INFO    ] 200
[2026-08-25 21:24:14,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:14,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:24:14,528.528 INFO    ] No update needed
[2026-08-25 21:24:14,530.530 INFO    ] Checking for camera pi updates...
[2026-08-25 21:24:14,564.564 INFO    ] 200
[2026-08-25 21:24:14,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:14,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:24:14,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:24:14,669.669 INFO    ] No camera update needed
[2026-08-25 21:24:14,672.672 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:24:14,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:24:14,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:24:14,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:24:16,727.727 INFO    ] ================================================
[2026-08-25 21:24:16,743.743 INFO    ] Launching Daemon at Tue Aug 25 21:24:16 IST 2026
[2026-08-25 21:24:16,754.754 INFO    ] ================================================
[2026-08-25 21:24:17,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:24:17
[2026-08-25 21:24:18,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:24:18,312.312 INFO    ] Initializing speech engine...
[2026-08-25 21:24:18,321.321 INFO    ] 2026-08-25 21:24:18
[2026-08-25 21:24:18,579.579 INFO    ] 2026-08-25 21:24:18
[2026-08-25 21:24:18,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:24:18,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:24:18,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:24:18,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:24:19,037.037 INFO    ] time= 25/08/2026 21:24:18
[2026-08-25 21:24:19,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:24:19,130.130 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:24:19,214.214 INFO    ] No existing commands found in stream
[2026-08-25 21:24:24,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:24:24,253.253 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-08-25 21:24:25,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:24:25,140.140 INFO    ] Checking for system updates...
[2026-08-25 21:24:25,179.179 INFO    ] 200
[2026-08-25 21:24:25,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:25,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:24:25,237.237 INFO    ] No update needed
[2026-08-25 21:24:25,239.239 INFO    ] Checking for camera pi updates...
[2026-08-25 21:24:25,272.272 INFO    ] 200
[2026-08-25 21:24:25,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:25,315.315 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:24:25,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:24:25,363.363 INFO    ] No camera update needed
[2026-08-25 21:24:25,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:24:25,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:24:25,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:24:25,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:24:27,418.418 INFO    ] ================================================
[2026-08-25 21:24:27,433.433 INFO    ] Launching Daemon at Tue Aug 25 21:24:27 IST 2026
[2026-08-25 21:24:27,446.446 INFO    ] ================================================
[2026-08-25 21:24:28,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:24:28
[2026-08-25 21:24:28,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:24:28,912.912 INFO    ] Initializing speech engine...
[2026-08-25 21:24:28,924.924 INFO    ] 2026-08-25 21:24:28
[2026-08-25 21:24:29,236.236 INFO    ] 2026-08-25 21:24:29
[2026-08-25 21:24:29,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:24:29,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:24:29,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:24:29,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:24:29,739.739 INFO    ] time= 25/08/2026 21:24:29
[2026-08-25 21:24:29,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:24:29,788.788 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:24:29,900.900 INFO    ] No existing commands found in stream
[2026-08-25 21:24:34,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:24:34,929.929 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 21:24:38,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:24:38,685.685 INFO    ] Checking for system updates...
[2026-08-25 21:24:38,726.726 INFO    ] 200
[2026-08-25 21:24:38,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:38,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:24:38,791.791 INFO    ] No update needed
[2026-08-25 21:24:38,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 21:24:38,827.827 INFO    ] 200
[2026-08-25 21:24:38,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:38,873.873 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:24:38,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:24:38,923.923 INFO    ] No camera update needed
[2026-08-25 21:24:38,925.925 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:24:38,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:24:38,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:24:38,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:24:40,978.978 INFO    ] ================================================
[2026-08-25 21:24:40,993.993 INFO    ] Launching Daemon at Tue Aug 25 21:24:40 IST 2026
[2026-08-25 21:24:41,005.005 INFO    ] ================================================
[2026-08-25 21:24:41,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:24:41
[2026-08-25 21:24:42,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:24:42,646.646 INFO    ] Initializing speech engine...
[2026-08-25 21:24:42,659.659 INFO    ] 2026-08-25 21:24:42
[2026-08-25 21:24:42,935.935 INFO    ] 2026-08-25 21:24:42
[2026-08-25 21:24:42,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:24:43,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:24:43,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:24:43,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:24:43,482.482 INFO    ] time= 25/08/2026 21:24:43
[2026-08-25 21:24:43,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:24:43,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:24:43,676.676 INFO    ] No existing commands found in stream
[2026-08-25 21:24:48,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:24:48,706.706 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 21:24:49,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:24:49,294.294 INFO    ] Checking for system updates...
[2026-08-25 21:24:49,335.335 INFO    ] 200
[2026-08-25 21:24:49,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:49,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:24:49,392.392 INFO    ] No update needed
[2026-08-25 21:24:49,394.394 INFO    ] Checking for camera pi updates...
[2026-08-25 21:24:49,427.427 INFO    ] 200
[2026-08-25 21:24:49,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:24:49,470.470 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:24:49,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:24:49,522.522 INFO    ] No camera update needed
[2026-08-25 21:24:49,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:24:49,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:24:49,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:24:49,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:24:51,577.577 INFO    ] ================================================
[2026-08-25 21:24:51,592.592 INFO    ] Launching Daemon at Tue Aug 25 21:24:51 IST 2026
[2026-08-25 21:24:51,603.603 INFO    ] ================================================
[2026-08-25 21:24:52,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:24:52
[2026-08-25 21:24:52,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:24:53,016.016 INFO    ] Initializing speech engine...
[2026-08-25 21:24:53,032.032 INFO    ] 2026-08-25 21:24:53
[2026-08-25 21:24:53,287.287 INFO    ] 2026-08-25 21:24:53
[2026-08-25 21:24:53,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:24:53,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:24:53,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:24:53,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:24:53,771.771 INFO    ] time= 25/08/2026 21:24:53
[2026-08-25 21:24:53,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:24:53,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:24:53,995.995 INFO    ] No existing commands found in stream
[2026-08-25 21:24:59,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:24:59,020.020 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 21:25:00,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:25:00,965.965 INFO    ] Checking for system updates...
[2026-08-25 21:25:01,005.005 INFO    ] 200
[2026-08-25 21:25:01,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:01,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:01,062.062 INFO    ] No update needed
[2026-08-25 21:25:01,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 21:25:01,098.098 INFO    ] 200
[2026-08-25 21:25:01,101.101 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:01,147.147 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:25:01,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:01,277.277 INFO    ] No camera update needed
[2026-08-25 21:25:01,280.280 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:25:01,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:25:01,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:25:01,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:25:03,348.348 INFO    ] ================================================
[2026-08-25 21:25:03,363.363 INFO    ] Launching Daemon at Tue Aug 25 21:25:03 IST 2026
[2026-08-25 21:25:03,374.374 INFO    ] ================================================
[2026-08-25 21:25:03,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:25:03
[2026-08-25 21:25:04,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:25:04,830.830 INFO    ] Initializing speech engine...
[2026-08-25 21:25:04,839.839 INFO    ] 2026-08-25 21:25:04
[2026-08-25 21:25:05,088.088 INFO    ] 2026-08-25 21:25:05
[2026-08-25 21:25:05,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:25:05,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:25:05,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:25:05,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:25:05,562.562 INFO    ] time= 25/08/2026 21:25:05
[2026-08-25 21:25:05,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:25:05,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:25:05,801.801 INFO    ] No existing commands found in stream
[2026-08-25 21:25:10,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:25:10,817.817 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 21:25:12,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:25:12,473.473 INFO    ] Checking for system updates...
[2026-08-25 21:25:12,508.508 INFO    ] 200
[2026-08-25 21:25:12,510.510 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:12,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:12,566.566 INFO    ] No update needed
[2026-08-25 21:25:12,568.568 INFO    ] Checking for camera pi updates...
[2026-08-25 21:25:12,605.605 INFO    ] 200
[2026-08-25 21:25:12,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:12,652.652 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:25:12,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:12,700.700 INFO    ] No camera update needed
[2026-08-25 21:25:12,702.702 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:25:12,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:25:12,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:25:12,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:25:14,758.758 INFO    ] ================================================
[2026-08-25 21:25:14,773.773 INFO    ] Launching Daemon at Tue Aug 25 21:25:14 IST 2026
[2026-08-25 21:25:14,784.784 INFO    ] ================================================
[2026-08-25 21:25:15,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:25:15
[2026-08-25 21:25:15,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:25:16,196.196 INFO    ] Initializing speech engine...
[2026-08-25 21:25:16,208.208 INFO    ] 2026-08-25 21:25:16
[2026-08-25 21:25:16,471.471 INFO    ] 2026-08-25 21:25:16
[2026-08-25 21:25:16,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:25:16,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:25:16,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:25:16,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:25:16,850.850 INFO    ] time= 25/08/2026 21:25:16
[2026-08-25 21:25:16,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:25:16,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:25:17,034.034 INFO    ] No existing commands found in stream
[2026-08-25 21:25:22,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:25:22,062.062 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 21:25:24,702.702 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:25:24,705.705 INFO    ] Checking for system updates...
[2026-08-25 21:25:24,744.744 INFO    ] 200
[2026-08-25 21:25:24,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:24,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:25:24,809.809 INFO    ] No update needed
[2026-08-25 21:25:24,811.811 INFO    ] Checking for camera pi updates...
[2026-08-25 21:25:24,848.848 INFO    ] 200
[2026-08-25 21:25:24,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:24,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:25:24,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:25:24,957.957 INFO    ] No camera update needed
[2026-08-25 21:25:24,959.959 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:25:24,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:25:24,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:25:24,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:25:27,013.013 INFO    ] ================================================
[2026-08-25 21:25:27,028.028 INFO    ] Launching Daemon at Tue Aug 25 21:25:27 IST 2026
[2026-08-25 21:25:27,040.040 INFO    ] ================================================
[2026-08-25 21:25:27,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:25:27
[2026-08-25 21:25:28,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:25:28,676.676 INFO    ] Initializing speech engine...
[2026-08-25 21:25:28,687.687 INFO    ] 2026-08-25 21:25:28
[2026-08-25 21:25:28,975.975 INFO    ] 2026-08-25 21:25:28
[2026-08-25 21:25:29,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:25:29,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:25:29,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:25:29,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:25:29,507.507 INFO    ] time= 25/08/2026 21:25:29
[2026-08-25 21:25:29,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:25:29,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:25:29,663.663 INFO    ] No existing commands found in stream
[2026-08-25 21:25:34,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:25:34,696.696 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-08-25 21:25:35,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:25:35,433.433 INFO    ] Checking for system updates...
[2026-08-25 21:25:35,473.473 INFO    ] 200
[2026-08-25 21:25:35,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:35,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:35,539.539 INFO    ] No update needed
[2026-08-25 21:25:35,542.542 INFO    ] Checking for camera pi updates...
[2026-08-25 21:25:35,577.577 INFO    ] 200
[2026-08-25 21:25:35,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:35,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:25:35,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:35,679.679 INFO    ] No camera update needed
[2026-08-25 21:25:35,681.681 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:25:35,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:25:35,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:25:35,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:25:37,736.736 INFO    ] ================================================
[2026-08-25 21:25:37,751.751 INFO    ] Launching Daemon at Tue Aug 25 21:25:37 IST 2026
[2026-08-25 21:25:37,762.762 INFO    ] ================================================
[2026-08-25 21:25:38,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:25:38
[2026-08-25 21:25:39,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:25:39,384.384 INFO    ] Initializing speech engine...
[2026-08-25 21:25:39,395.395 INFO    ] 2026-08-25 21:25:39
[2026-08-25 21:25:39,677.677 INFO    ] 2026-08-25 21:25:39
[2026-08-25 21:25:39,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:25:39,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:25:39,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:25:40,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:25:40,152.152 INFO    ] time= 25/08/2026 21:25:40
[2026-08-25 21:25:40,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:25:40,215.215 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:25:40,361.361 INFO    ] No existing commands found in stream
[2026-08-25 21:25:45,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:25:45,389.389 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 21:25:46,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:25:46,312.312 INFO    ] Checking for system updates...
[2026-08-25 21:25:46,349.349 INFO    ] 200
[2026-08-25 21:25:46,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:46,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:46,407.407 INFO    ] No update needed
[2026-08-25 21:25:46,410.410 INFO    ] Checking for camera pi updates...
[2026-08-25 21:25:46,448.448 INFO    ] 200
[2026-08-25 21:25:46,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:46,497.497 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:25:46,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:25:46,546.546 INFO    ] No camera update needed
[2026-08-25 21:25:46,549.549 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:25:46,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:25:46,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:25:46,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:25:48,604.604 INFO    ] ================================================
[2026-08-25 21:25:48,620.620 INFO    ] Launching Daemon at Tue Aug 25 21:25:48 IST 2026
[2026-08-25 21:25:48,631.631 INFO    ] ================================================
[2026-08-25 21:25:49,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:25:49
[2026-08-25 21:25:49,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:25:50,038.038 INFO    ] Initializing speech engine...
[2026-08-25 21:25:50,052.052 INFO    ] 2026-08-25 21:25:50
[2026-08-25 21:25:50,333.333 INFO    ] 2026-08-25 21:25:50
[2026-08-25 21:25:50,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:25:50,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:25:50,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:25:50,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:25:50,712.712 INFO    ] time= 25/08/2026 21:25:50
[2026-08-25 21:25:50,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:25:50,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:25:50,837.837 INFO    ] No existing commands found in stream
[2026-08-25 21:25:55,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:25:55,852.852 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 21:25:58,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:25:58,678.678 INFO    ] Checking for system updates...
[2026-08-25 21:25:58,715.715 INFO    ] 200
[2026-08-25 21:25:58,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:58,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:25:58,780.780 INFO    ] No update needed
[2026-08-25 21:25:58,782.782 INFO    ] Checking for camera pi updates...
[2026-08-25 21:25:58,819.819 INFO    ] 200
[2026-08-25 21:25:58,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:25:58,868.868 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:25:58,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:25:58,929.929 INFO    ] No camera update needed
[2026-08-25 21:25:58,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:25:58,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:25:58,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:25:58,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:26:00,985.985 INFO    ] ================================================
[2026-08-25 21:26:01,001.001 INFO    ] Launching Daemon at Tue Aug 25 21:26:00 IST 2026
[2026-08-25 21:26:01,011.011 INFO    ] ================================================
[2026-08-25 21:26:01,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:26:01
[2026-08-25 21:26:02,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:26:02,680.680 INFO    ] Initializing speech engine...
[2026-08-25 21:26:02,694.694 INFO    ] 2026-08-25 21:26:02
[2026-08-25 21:26:03,019.019 INFO    ] 2026-08-25 21:26:03
[2026-08-25 21:26:03,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:26:03,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:26:03,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:26:03,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:26:03,488.488 INFO    ] time= 25/08/2026 21:26:03
[2026-08-25 21:26:03,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:26:03,575.575 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:26:03,713.713 INFO    ] No existing commands found in stream
[2026-08-25 21:26:08,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:26:08,739.739 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 21:26:12,060.060 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:26:12,063.063 INFO    ] Checking for system updates...
[2026-08-25 21:26:12,108.108 INFO    ] 200
[2026-08-25 21:26:12,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:12,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:26:12,171.171 INFO    ] No update needed
[2026-08-25 21:26:12,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 21:26:12,208.208 INFO    ] 200
[2026-08-25 21:26:12,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:12,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:26:12,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:26:12,312.312 INFO    ] No camera update needed
[2026-08-25 21:26:12,315.315 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:26:12,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:26:12,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:26:12,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:26:14,371.371 INFO    ] ================================================
[2026-08-25 21:26:14,387.387 INFO    ] Launching Daemon at Tue Aug 25 21:26:14 IST 2026
[2026-08-25 21:26:14,399.399 INFO    ] ================================================
[2026-08-25 21:26:14,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:26:14
[2026-08-25 21:26:15,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:26:15,822.822 INFO    ] Initializing speech engine...
[2026-08-25 21:26:15,827.827 INFO    ] 2026-08-25 21:26:15
[2026-08-25 21:26:16,093.093 INFO    ] 2026-08-25 21:26:16
[2026-08-25 21:26:16,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:26:16,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:26:16,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:26:16,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:26:16,560.560 INFO    ] time= 25/08/2026 21:26:16
[2026-08-25 21:26:16,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:26:16,648.648 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:26:16,790.790 INFO    ] No existing commands found in stream
[2026-08-25 21:26:21,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:26:21,809.809 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 21:26:23,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:26:23,780.780 INFO    ] Checking for system updates...
[2026-08-25 21:26:23,816.816 INFO    ] 200
[2026-08-25 21:26:23,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:23,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:26:23,875.875 INFO    ] No update needed
[2026-08-25 21:26:23,877.877 INFO    ] Checking for camera pi updates...
[2026-08-25 21:26:23,911.911 INFO    ] 200
[2026-08-25 21:26:23,913.913 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:23,953.953 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:26:24,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:26:24,011.011 INFO    ] No camera update needed
[2026-08-25 21:26:24,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:26:24,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:26:24,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:26:24,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:26:26,066.066 INFO    ] ================================================
[2026-08-25 21:26:26,082.082 INFO    ] Launching Daemon at Tue Aug 25 21:26:26 IST 2026
[2026-08-25 21:26:26,094.094 INFO    ] ================================================
[2026-08-25 21:26:26,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:26:26
[2026-08-25 21:26:27,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:26:27,590.590 INFO    ] Initializing speech engine...
[2026-08-25 21:26:27,603.603 INFO    ] 2026-08-25 21:26:27
[2026-08-25 21:26:27,889.889 INFO    ] 2026-08-25 21:26:27
[2026-08-25 21:26:27,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:26:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:26:28,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:26:28,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:26:28,365.365 INFO    ] time= 25/08/2026 21:26:28
[2026-08-25 21:26:28,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:26:28,435.435 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:26:28,566.566 INFO    ] No existing commands found in stream
[2026-08-25 21:26:33,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:26:33,592.592 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 21:26:35,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:26:35,379.379 INFO    ] Checking for system updates...
[2026-08-25 21:26:35,417.417 INFO    ] 200
[2026-08-25 21:26:35,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:35,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:26:35,482.482 INFO    ] No update needed
[2026-08-25 21:26:35,485.485 INFO    ] Checking for camera pi updates...
[2026-08-25 21:26:35,523.523 INFO    ] 200
[2026-08-25 21:26:35,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:35,568.568 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:26:35,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:26:35,620.620 INFO    ] No camera update needed
[2026-08-25 21:26:35,623.623 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:26:35,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:26:35,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:26:35,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:26:37,678.678 INFO    ] ================================================
[2026-08-25 21:26:37,693.693 INFO    ] Launching Daemon at Tue Aug 25 21:26:37 IST 2026
[2026-08-25 21:26:37,704.704 INFO    ] ================================================
[2026-08-25 21:26:38,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:26:38
[2026-08-25 21:26:38,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:26:39,129.129 INFO    ] Initializing speech engine...
[2026-08-25 21:26:39,138.138 INFO    ] 2026-08-25 21:26:39
[2026-08-25 21:26:39,388.388 INFO    ] 2026-08-25 21:26:39
[2026-08-25 21:26:39,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:26:39,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:26:39,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:26:39,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:26:39,863.863 INFO    ] time= 25/08/2026 21:26:39
[2026-08-25 21:26:39,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:26:39,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:26:40,077.077 INFO    ] No existing commands found in stream
[2026-08-25 21:26:45,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:26:45,102.102 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 21:26:46,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:26:46,670.670 INFO    ] Checking for system updates...
[2026-08-25 21:26:46,706.706 INFO    ] 200
[2026-08-25 21:26:46,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:46,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:26:46,762.762 INFO    ] No update needed
[2026-08-25 21:26:46,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 21:26:46,799.799 INFO    ] 200
[2026-08-25 21:26:46,801.801 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:26:46,842.842 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:26:46,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:26:46,911.911 INFO    ] No camera update needed
[2026-08-25 21:26:46,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:26:46,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:26:46,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:26:46,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:26:48,965.965 INFO    ] ================================================
[2026-08-25 21:26:48,979.979 INFO    ] Launching Daemon at Tue Aug 25 21:26:48 IST 2026
[2026-08-25 21:26:48,990.990 INFO    ] ================================================
[2026-08-25 21:26:49,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:26:49
[2026-08-25 21:26:50,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:26:50,397.397 INFO    ] Initializing speech engine...
[2026-08-25 21:26:50,415.415 INFO    ] 2026-08-25 21:26:50
[2026-08-25 21:26:50,668.668 INFO    ] 2026-08-25 21:26:50
[2026-08-25 21:26:50,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:26:50,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:26:50,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:26:51,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:26:51,152.152 INFO    ] time= 25/08/2026 21:26:51
[2026-08-25 21:26:51,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:26:51,235.235 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:26:51,354.354 INFO    ] No existing commands found in stream
[2026-08-25 21:26:56,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:26:56,375.375 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 21:27:00,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:27:00,739.739 INFO    ] Checking for system updates...
[2026-08-25 21:27:00,775.775 INFO    ] 200
[2026-08-25 21:27:00,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:00,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:00,833.833 INFO    ] No update needed
[2026-08-25 21:27:00,836.836 INFO    ] Checking for camera pi updates...
[2026-08-25 21:27:00,870.870 INFO    ] 200
[2026-08-25 21:27:00,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:00,914.914 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:27:00,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:00,972.972 INFO    ] No camera update needed
[2026-08-25 21:27:00,975.975 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:27:00,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:27:00,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:27:00,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:27:03,031.031 INFO    ] ================================================
[2026-08-25 21:27:03,049.049 INFO    ] Launching Daemon at Tue Aug 25 21:27:03 IST 2026
[2026-08-25 21:27:03,062.062 INFO    ] ================================================
[2026-08-25 21:27:03,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:27:03
[2026-08-25 21:27:04,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:27:04,548.548 INFO    ] Initializing speech engine...
[2026-08-25 21:27:04,554.554 INFO    ] 2026-08-25 21:27:04
[2026-08-25 21:27:04,802.802 INFO    ] 2026-08-25 21:27:04
[2026-08-25 21:27:04,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:27:05,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:27:05,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:27:05,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:27:05,304.304 INFO    ] time= 25/08/2026 21:27:05
[2026-08-25 21:27:05,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:27:05,373.373 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:27:05,519.519 INFO    ] No existing commands found in stream
[2026-08-25 21:27:10,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:27:10,537.537 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 21:27:14,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:27:14,890.890 INFO    ] Checking for system updates...
[2026-08-25 21:27:14,926.926 INFO    ] 200
[2026-08-25 21:27:14,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:14,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:14,983.983 INFO    ] No update needed
[2026-08-25 21:27:14,986.986 INFO    ] Checking for camera pi updates...
[2026-08-25 21:27:15,020.020 INFO    ] 200
[2026-08-25 21:27:15,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:15,064.064 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:27:15,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:15,126.126 INFO    ] No camera update needed
[2026-08-25 21:27:15,129.129 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:27:15,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:27:15,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:27:15,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:27:17,181.181 INFO    ] ================================================
[2026-08-25 21:27:17,197.197 INFO    ] Launching Daemon at Tue Aug 25 21:27:17 IST 2026
[2026-08-25 21:27:17,208.208 INFO    ] ================================================
[2026-08-25 21:27:17,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:27:17
[2026-08-25 21:27:18,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:27:18,683.683 INFO    ] Initializing speech engine...
[2026-08-25 21:27:18,696.696 INFO    ] 2026-08-25 21:27:18
[2026-08-25 21:27:19,004.004 INFO    ] 2026-08-25 21:27:18
[2026-08-25 21:27:19,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:27:19,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:27:19,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:27:19,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:27:19,454.454 INFO    ] time= 25/08/2026 21:27:19
[2026-08-25 21:27:19,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:27:19,531.531 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:27:19,679.679 INFO    ] No existing commands found in stream
[2026-08-25 21:27:24,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:27:24,704.704 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 21:27:29,169.169 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:27:29,172.172 INFO    ] Checking for system updates...
[2026-08-25 21:27:29,208.208 INFO    ] 200
[2026-08-25 21:27:29,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:29,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:29,268.268 INFO    ] No update needed
[2026-08-25 21:27:29,270.270 INFO    ] Checking for camera pi updates...
[2026-08-25 21:27:29,305.305 INFO    ] 200
[2026-08-25 21:27:29,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:29,349.349 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:27:29,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:29,401.401 INFO    ] No camera update needed
[2026-08-25 21:27:29,404.404 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:27:29,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:27:29,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:27:29,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:27:31,460.460 INFO    ] ================================================
[2026-08-25 21:27:31,476.476 INFO    ] Launching Daemon at Tue Aug 25 21:27:31 IST 2026
[2026-08-25 21:27:31,490.490 INFO    ] ================================================
[2026-08-25 21:27:32,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:27:32
[2026-08-25 21:27:32,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:27:33,186.186 INFO    ] Initializing speech engine...
[2026-08-25 21:27:33,198.198 INFO    ] 2026-08-25 21:27:33
[2026-08-25 21:27:33,476.476 INFO    ] 2026-08-25 21:27:33
[2026-08-25 21:27:33,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:27:33,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:27:33,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:27:33,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:27:34,018.018 INFO    ] time= 25/08/2026 21:27:33
[2026-08-25 21:27:34,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:27:34,044.044 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:27:34,160.160 INFO    ] No existing commands found in stream
[2026-08-25 21:27:39,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:27:39,188.188 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-08-25 21:27:40,396.396 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:27:40,398.398 INFO    ] Checking for system updates...
[2026-08-25 21:27:40,438.438 INFO    ] 200
[2026-08-25 21:27:40,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:40,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:40,501.501 INFO    ] No update needed
[2026-08-25 21:27:40,504.504 INFO    ] Checking for camera pi updates...
[2026-08-25 21:27:40,538.538 INFO    ] 200
[2026-08-25 21:27:40,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:40,581.581 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:27:40,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:40,732.732 INFO    ] No camera update needed
[2026-08-25 21:27:40,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:27:40,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:27:40,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:27:40,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:27:42,789.789 INFO    ] ================================================
[2026-08-25 21:27:42,804.804 INFO    ] Launching Daemon at Tue Aug 25 21:27:42 IST 2026
[2026-08-25 21:27:42,815.815 INFO    ] ================================================
[2026-08-25 21:27:43,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:27:43
[2026-08-25 21:27:44,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:27:44,417.417 INFO    ] Initializing speech engine...
[2026-08-25 21:27:44,426.426 INFO    ] 2026-08-25 21:27:44
[2026-08-25 21:27:44,698.698 INFO    ] 2026-08-25 21:27:44
[2026-08-25 21:27:44,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:27:44,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:27:44,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:27:45,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:27:45,242.242 INFO    ] time= 25/08/2026 21:27:45
[2026-08-25 21:27:45,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:27:45,267.267 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:27:45,399.399 INFO    ] No existing commands found in stream
[2026-08-25 21:27:50,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:27:50,436.436 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-08-25 21:27:54,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:27:54,537.537 INFO    ] Checking for system updates...
[2026-08-25 21:27:54,574.574 INFO    ] 200
[2026-08-25 21:27:54,576.576 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:54,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:54,632.632 INFO    ] No update needed
[2026-08-25 21:27:54,635.635 INFO    ] Checking for camera pi updates...
[2026-08-25 21:27:54,669.669 INFO    ] 200
[2026-08-25 21:27:54,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:27:54,712.712 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:27:54,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:27:54,771.771 INFO    ] No camera update needed
[2026-08-25 21:27:54,773.773 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:27:54,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:27:54,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:27:54,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:27:56,827.827 INFO    ] ================================================
[2026-08-25 21:27:56,843.843 INFO    ] Launching Daemon at Tue Aug 25 21:27:56 IST 2026
[2026-08-25 21:27:56,854.854 INFO    ] ================================================
[2026-08-25 21:27:57,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:27:57
[2026-08-25 21:27:58,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:27:58,361.361 INFO    ] Initializing speech engine...
[2026-08-25 21:27:58,370.370 INFO    ] 2026-08-25 21:27:58
[2026-08-25 21:27:58,615.615 INFO    ] 2026-08-25 21:27:58
[2026-08-25 21:27:58,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:27:58,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:27:58,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:27:59,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:27:59,083.083 INFO    ] time= 25/08/2026 21:27:59
[2026-08-25 21:27:59,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:27:59,175.175 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:27:59,308.308 INFO    ] No existing commands found in stream
[2026-08-25 21:28:04,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:28:04,335.335 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 21:28:05,897.897 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:28:05,900.900 INFO    ] Checking for system updates...
[2026-08-25 21:28:05,936.936 INFO    ] 200
[2026-08-25 21:28:05,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:05,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:28:05,994.994 INFO    ] No update needed
[2026-08-25 21:28:05,996.996 INFO    ] Checking for camera pi updates...
[2026-08-25 21:28:06,029.029 INFO    ] 200
[2026-08-25 21:28:06,032.032 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:06,075.075 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:28:06,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:28:06,137.137 INFO    ] No camera update needed
[2026-08-25 21:28:06,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:28:06,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:28:06,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:28:06,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:28:08,191.191 INFO    ] ================================================
[2026-08-25 21:28:08,207.207 INFO    ] Launching Daemon at Tue Aug 25 21:28:08 IST 2026
[2026-08-25 21:28:08,217.217 INFO    ] ================================================
[2026-08-25 21:28:08,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:28:08
[2026-08-25 21:28:09,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:28:09,615.615 INFO    ] Initializing speech engine...
[2026-08-25 21:28:09,638.638 INFO    ] 2026-08-25 21:28:09
[2026-08-25 21:28:09,890.890 INFO    ] 2026-08-25 21:28:09
[2026-08-25 21:28:09,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:28:10,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:28:10,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:28:10,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:28:10,265.265 INFO    ] time= 25/08/2026 21:28:10
[2026-08-25 21:28:10,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:28:10,312.312 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:28:10,451.451 INFO    ] No existing commands found in stream
[2026-08-25 21:28:15,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:28:15,477.477 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 21:28:17,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:28:17,066.066 INFO    ] Checking for system updates...
[2026-08-25 21:28:17,101.101 INFO    ] 200
[2026-08-25 21:28:17,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:17,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:17,159.159 INFO    ] No update needed
[2026-08-25 21:28:17,161.161 INFO    ] Checking for camera pi updates...
[2026-08-25 21:28:17,198.198 INFO    ] 200
[2026-08-25 21:28:17,201.201 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:17,245.245 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:28:17,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:17,292.292 INFO    ] No camera update needed
[2026-08-25 21:28:17,294.294 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:28:17,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:28:17,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:28:17,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:28:19,347.347 INFO    ] ================================================
[2026-08-25 21:28:19,363.363 INFO    ] Launching Daemon at Tue Aug 25 21:28:19 IST 2026
[2026-08-25 21:28:19,375.375 INFO    ] ================================================
[2026-08-25 21:28:20,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:28:20
[2026-08-25 21:28:20,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:28:20,996.996 INFO    ] Initializing speech engine...
[2026-08-25 21:28:21,006.006 INFO    ] 2026-08-25 21:28:20
[2026-08-25 21:28:21,307.307 INFO    ] 2026-08-25 21:28:21
[2026-08-25 21:28:21,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:28:21,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:28:21,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:28:21,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:28:21,811.811 INFO    ] time= 25/08/2026 21:28:21
[2026-08-25 21:28:21,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:28:21,836.836 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:28:21,961.961 INFO    ] No existing commands found in stream
[2026-08-25 21:28:26,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:28:26,978.978 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 21:28:31,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:28:31,360.360 INFO    ] Checking for system updates...
[2026-08-25 21:28:31,401.401 INFO    ] 200
[2026-08-25 21:28:31,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:31,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:31,469.469 INFO    ] No update needed
[2026-08-25 21:28:31,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 21:28:31,507.507 INFO    ] 200
[2026-08-25 21:28:31,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:31,551.551 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:28:31,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:31,606.606 INFO    ] No camera update needed
[2026-08-25 21:28:31,609.609 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:28:31,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:28:31,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:28:31,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:28:33,676.676 INFO    ] ================================================
[2026-08-25 21:28:33,691.691 INFO    ] Launching Daemon at Tue Aug 25 21:28:33 IST 2026
[2026-08-25 21:28:33,703.703 INFO    ] ================================================
[2026-08-25 21:28:34,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:28:34
[2026-08-25 21:28:35,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:28:35,312.312 INFO    ] Initializing speech engine...
[2026-08-25 21:28:35,320.320 INFO    ] 2026-08-25 21:28:35
[2026-08-25 21:28:35,592.592 INFO    ] 2026-08-25 21:28:35
[2026-08-25 21:28:35,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:28:35,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:28:35,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:28:36,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:28:36,140.140 INFO    ] time= 25/08/2026 21:28:36
[2026-08-25 21:28:36,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:28:36,165.165 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:28:36,297.297 INFO    ] No existing commands found in stream
[2026-08-25 21:28:41,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:28:41,323.323 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 21:28:43,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:28:43,487.487 INFO    ] Checking for system updates...
[2026-08-25 21:28:43,523.523 INFO    ] 200
[2026-08-25 21:28:43,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:43,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:43,582.582 INFO    ] No update needed
[2026-08-25 21:28:43,585.585 INFO    ] Checking for camera pi updates...
[2026-08-25 21:28:43,620.620 INFO    ] 200
[2026-08-25 21:28:43,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:43,663.663 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:28:43,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:43,722.722 INFO    ] No camera update needed
[2026-08-25 21:28:43,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:28:43,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:28:43,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:28:43,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:28:45,778.778 INFO    ] ================================================
[2026-08-25 21:28:45,793.793 INFO    ] Launching Daemon at Tue Aug 25 21:28:45 IST 2026
[2026-08-25 21:28:45,803.803 INFO    ] ================================================
[2026-08-25 21:28:46,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:28:46
[2026-08-25 21:28:46,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:28:47,250.250 INFO    ] Initializing speech engine...
[2026-08-25 21:28:47,261.261 INFO    ] 2026-08-25 21:28:47
[2026-08-25 21:28:47,521.521 INFO    ] 2026-08-25 21:28:47
[2026-08-25 21:28:47,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:28:47,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:28:47,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:28:47,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:28:48,010.010 INFO    ] time= 25/08/2026 21:28:47
[2026-08-25 21:28:48,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:28:48,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:28:48,217.217 INFO    ] No existing commands found in stream
[2026-08-25 21:28:53,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:28:53,239.239 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-08-25 21:28:57,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:28:57,602.602 INFO    ] Checking for system updates...
[2026-08-25 21:28:57,641.641 INFO    ] 200
[2026-08-25 21:28:57,643.643 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:57,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:57,699.699 INFO    ] No update needed
[2026-08-25 21:28:57,701.701 INFO    ] Checking for camera pi updates...
[2026-08-25 21:28:57,737.737 INFO    ] 200
[2026-08-25 21:28:57,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:28:57,786.786 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:28:57,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:28:57,845.845 INFO    ] No camera update needed
[2026-08-25 21:28:57,847.847 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:28:57,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:28:57,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:28:57,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:28:59,903.903 INFO    ] ================================================
[2026-08-25 21:28:59,918.918 INFO    ] Launching Daemon at Tue Aug 25 21:28:59 IST 2026
[2026-08-25 21:28:59,928.928 INFO    ] ================================================
[2026-08-25 21:29:00,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:29:00
[2026-08-25 21:29:01,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:29:01,331.331 INFO    ] Initializing speech engine...
[2026-08-25 21:29:01,345.345 INFO    ] 2026-08-25 21:29:01
[2026-08-25 21:29:01,648.648 INFO    ] 2026-08-25 21:29:01
[2026-08-25 21:29:01,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:29:01,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:29:01,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:29:02,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:29:02,015.015 INFO    ] time= 25/08/2026 21:29:02
[2026-08-25 21:29:02,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:29:02,022.022 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:29:02,093.093 INFO    ] No existing commands found in stream
[2026-08-25 21:29:07,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:29:07,140.140 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-08-25 21:29:09,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:29:09,223.223 INFO    ] Checking for system updates...
[2026-08-25 21:29:09,260.260 INFO    ] 200
[2026-08-25 21:29:09,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:09,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:09,325.325 INFO    ] No update needed
[2026-08-25 21:29:09,327.327 INFO    ] Checking for camera pi updates...
[2026-08-25 21:29:09,361.361 INFO    ] 200
[2026-08-25 21:29:09,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:09,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:29:09,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:09,471.471 INFO    ] No camera update needed
[2026-08-25 21:29:09,473.473 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:29:09,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:29:09,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:29:09,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:29:11,526.526 INFO    ] ================================================
[2026-08-25 21:29:11,542.542 INFO    ] Launching Daemon at Tue Aug 25 21:29:11 IST 2026
[2026-08-25 21:29:11,552.552 INFO    ] ================================================
[2026-08-25 21:29:12,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:29:12
[2026-08-25 21:29:12,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:29:12,984.984 INFO    ] Initializing speech engine...
[2026-08-25 21:29:12,991.991 INFO    ] 2026-08-25 21:29:12
[2026-08-25 21:29:13,251.251 INFO    ] 2026-08-25 21:29:13
[2026-08-25 21:29:13,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:29:13,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:29:13,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:29:13,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:29:13,715.715 INFO    ] time= 25/08/2026 21:29:13
[2026-08-25 21:29:13,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:29:13,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:29:13,809.809 INFO    ] No existing commands found in stream
[2026-08-25 21:29:18,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:29:18,833.833 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 21:29:21,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:29:21,417.417 INFO    ] Checking for system updates...
[2026-08-25 21:29:21,452.452 INFO    ] 200
[2026-08-25 21:29:21,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:21,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:29:21,516.516 INFO    ] No update needed
[2026-08-25 21:29:21,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 21:29:21,558.558 INFO    ] 200
[2026-08-25 21:29:21,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:21,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:29:21,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:29:21,663.663 INFO    ] No camera update needed
[2026-08-25 21:29:21,665.665 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:29:21,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:29:21,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:29:21,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:29:23,719.719 INFO    ] ================================================
[2026-08-25 21:29:23,735.735 INFO    ] Launching Daemon at Tue Aug 25 21:29:23 IST 2026
[2026-08-25 21:29:23,745.745 INFO    ] ================================================
[2026-08-25 21:29:24,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:29:24
[2026-08-25 21:29:25,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:29:25,376.376 INFO    ] Initializing speech engine...
[2026-08-25 21:29:25,385.385 INFO    ] 2026-08-25 21:29:25
[2026-08-25 21:29:25,660.660 INFO    ] 2026-08-25 21:29:25
[2026-08-25 21:29:25,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:29:25,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:29:25,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:29:26,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:29:26,131.131 INFO    ] time= 25/08/2026 21:29:26
[2026-08-25 21:29:26,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:29:26,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:29:26,344.344 INFO    ] No existing commands found in stream
[2026-08-25 21:29:31,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:29:31,375.375 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-08-25 21:29:32,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:29:32,081.081 INFO    ] Checking for system updates...
[2026-08-25 21:29:32,127.127 INFO    ] 200
[2026-08-25 21:29:32,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:32,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:32,202.202 INFO    ] No update needed
[2026-08-25 21:29:32,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 21:29:32,243.243 INFO    ] 200
[2026-08-25 21:29:32,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:32,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:29:32,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:32,369.369 INFO    ] No camera update needed
[2026-08-25 21:29:32,372.372 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:29:32,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:29:32,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:29:32,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:29:34,433.433 INFO    ] ================================================
[2026-08-25 21:29:34,447.447 INFO    ] Launching Daemon at Tue Aug 25 21:29:34 IST 2026
[2026-08-25 21:29:34,459.459 INFO    ] ================================================
[2026-08-25 21:29:35,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:29:35
[2026-08-25 21:29:35,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:29:36,073.073 INFO    ] Initializing speech engine...
[2026-08-25 21:29:36,084.084 INFO    ] 2026-08-25 21:29:36
[2026-08-25 21:29:36,373.373 INFO    ] 2026-08-25 21:29:36
[2026-08-25 21:29:36,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:29:36,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:29:36,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:29:36,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:29:36,906.906 INFO    ] time= 25/08/2026 21:29:36
[2026-08-25 21:29:36,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:29:36,955.955 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:29:37,066.066 INFO    ] No existing commands found in stream
[2026-08-25 21:29:42,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:29:42,089.089 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 21:29:45,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:29:45,578.578 INFO    ] Checking for system updates...
[2026-08-25 21:29:45,615.615 INFO    ] 200
[2026-08-25 21:29:45,618.618 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:45,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:45,680.680 INFO    ] No update needed
[2026-08-25 21:29:45,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 21:29:45,720.720 INFO    ] 200
[2026-08-25 21:29:45,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:45,766.766 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:29:45,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:45,915.915 INFO    ] No camera update needed
[2026-08-25 21:29:45,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:29:45,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:29:45,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:29:45,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:29:47,972.972 INFO    ] ================================================
[2026-08-25 21:29:47,987.987 INFO    ] Launching Daemon at Tue Aug 25 21:29:47 IST 2026
[2026-08-25 21:29:48,999.999 INFO    ] ================================================
[2026-08-25 21:29:48,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:29:48
[2026-08-25 21:29:49,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:29:49,425.425 INFO    ] Initializing speech engine...
[2026-08-25 21:29:49,431.431 INFO    ] 2026-08-25 21:29:49
[2026-08-25 21:29:49,691.691 INFO    ] 2026-08-25 21:29:49
[2026-08-25 21:29:49,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:29:49,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:29:49,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:29:50,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:29:50,160.160 INFO    ] time= 25/08/2026 21:29:50
[2026-08-25 21:29:50,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:29:50,260.260 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:29:50,391.391 INFO    ] No existing commands found in stream
[2026-08-25 21:29:55,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:29:55,419.419 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-08-25 21:29:59,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:29:59,018.018 INFO    ] Checking for system updates...
[2026-08-25 21:29:59,055.055 INFO    ] 200
[2026-08-25 21:29:59,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:59,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:59,113.113 INFO    ] No update needed
[2026-08-25 21:29:59,116.116 INFO    ] Checking for camera pi updates...
[2026-08-25 21:29:59,154.154 INFO    ] 200
[2026-08-25 21:29:59,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:29:59,200.200 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:29:59,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:29:59,252.252 INFO    ] No camera update needed
[2026-08-25 21:29:59,255.255 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:29:59,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:29:59,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:29:59,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:30:01,313.313 INFO    ] ================================================
[2026-08-25 21:30:01,327.327 INFO    ] Launching Daemon at Tue Aug 25 21:30:01 IST 2026
[2026-08-25 21:30:01,338.338 INFO    ] ================================================
[2026-08-25 21:30:02,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:30:02
[2026-08-25 21:30:03,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:30:03,843.843 INFO    ] Initializing speech engine...
[2026-08-25 21:30:03,864.864 INFO    ] 2026-08-25 21:30:03
[2026-08-25 21:30:04,144.144 INFO    ] 2026-08-25 21:30:04
[2026-08-25 21:30:04,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:30:04,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:30:04,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:30:04,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:30:04,520.520 INFO    ] time= 25/08/2026 21:30:04
[2026-08-25 21:30:04,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:30:04,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:30:04,717.717 INFO    ] No existing commands found in stream
[2026-08-25 21:30:09,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:30:09,730.730 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 21:30:13,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:30:13,395.395 INFO    ] Checking for system updates...
[2026-08-25 21:30:13,430.430 INFO    ] 200
[2026-08-25 21:30:13,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:13,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:30:13,488.488 INFO    ] No update needed
[2026-08-25 21:30:13,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 21:30:13,525.525 INFO    ] 200
[2026-08-25 21:30:13,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:13,567.567 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:30:13,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:30:13,617.617 INFO    ] No camera update needed
[2026-08-25 21:30:13,619.619 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:30:13,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:30:13,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:30:13,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:30:15,670.670 INFO    ] ================================================
[2026-08-25 21:30:15,686.686 INFO    ] Launching Daemon at Tue Aug 25 21:30:15 IST 2026
[2026-08-25 21:30:15,697.697 INFO    ] ================================================
[2026-08-25 21:30:16,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:30:16
[2026-08-25 21:30:16,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:30:17,135.135 INFO    ] Initializing speech engine...
[2026-08-25 21:30:17,161.161 INFO    ] 2026-08-25 21:30:17
[2026-08-25 21:30:17,435.435 INFO    ] 2026-08-25 21:30:17
[2026-08-25 21:30:17,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:30:17,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:30:17,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:30:17,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:30:17,853.853 INFO    ] time= 25/08/2026 21:30:17
[2026-08-25 21:30:17,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:30:17,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:30:17,938.938 INFO    ] No existing commands found in stream
[2026-08-25 21:30:22,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:30:22,954.954 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-08-25 21:30:25,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:30:25,709.709 INFO    ] Checking for system updates...
[2026-08-25 21:30:25,745.745 INFO    ] 200
[2026-08-25 21:30:25,747.747 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:25,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:30:25,802.802 INFO    ] No update needed
[2026-08-25 21:30:25,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 21:30:25,838.838 INFO    ] 200
[2026-08-25 21:30:25,841.841 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:25,881.881 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:30:25,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:30:25,931.931 INFO    ] No camera update needed
[2026-08-25 21:30:25,933.933 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:30:25,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:30:25,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:30:25,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:30:27,986.986 INFO    ] ================================================
[2026-08-25 21:30:28,001.001 INFO    ] Launching Daemon at Tue Aug 25 21:30:27 IST 2026
[2026-08-25 21:30:28,012.012 INFO    ] ================================================
[2026-08-25 21:30:28,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:30:28
[2026-08-25 21:30:29,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:30:29,475.475 INFO    ] Initializing speech engine...
[2026-08-25 21:30:29,481.481 INFO    ] 2026-08-25 21:30:29
[2026-08-25 21:30:29,742.742 INFO    ] 2026-08-25 21:30:29
[2026-08-25 21:30:29,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:30:30,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:30:30,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:30:30,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:30:30,216.216 INFO    ] time= 25/08/2026 21:30:30
[2026-08-25 21:30:30,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:30:30,298.298 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:30:30,443.443 INFO    ] No existing commands found in stream
[2026-08-25 21:30:35,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:30:35,460.460 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 21:30:36,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:30:36,317.317 INFO    ] Checking for system updates...
[2026-08-25 21:30:36,354.354 INFO    ] 200
[2026-08-25 21:30:36,357.357 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:36,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:30:36,418.418 INFO    ] No update needed
[2026-08-25 21:30:36,421.421 INFO    ] Checking for camera pi updates...
[2026-08-25 21:30:36,454.454 INFO    ] 200
[2026-08-25 21:30:36,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:36,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:30:36,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:30:36,553.553 INFO    ] No camera update needed
[2026-08-25 21:30:36,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:30:36,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:30:36,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:30:36,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:30:38,608.608 INFO    ] ================================================
[2026-08-25 21:30:38,623.623 INFO    ] Launching Daemon at Tue Aug 25 21:30:38 IST 2026
[2026-08-25 21:30:38,635.635 INFO    ] ================================================
[2026-08-25 21:30:39,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:30:39
[2026-08-25 21:30:39,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:30:40,051.051 INFO    ] Initializing speech engine...
[2026-08-25 21:30:40,065.065 INFO    ] 2026-08-25 21:30:40
[2026-08-25 21:30:40,350.350 INFO    ] 2026-08-25 21:30:40
[2026-08-25 21:30:40,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:30:40,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:30:40,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:30:40,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:30:40,773.773 INFO    ] time= 25/08/2026 21:30:40
[2026-08-25 21:30:40,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:30:40,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:30:40,940.940 INFO    ] No existing commands found in stream
[2026-08-25 21:30:45,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:30:45,964.964 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 21:30:47,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:30:47,336.336 INFO    ] Checking for system updates...
[2026-08-25 21:30:47,372.372 INFO    ] 200
[2026-08-25 21:30:47,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:47,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:30:47,430.430 INFO    ] No update needed
[2026-08-25 21:30:47,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 21:30:47,466.466 INFO    ] 200
[2026-08-25 21:30:47,469.469 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:30:47,511.511 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:30:47,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:30:47,561.561 INFO    ] No camera update needed
[2026-08-25 21:30:47,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:30:47,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:30:47,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:30:47,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:30:49,618.618 INFO    ] ================================================
[2026-08-25 21:30:49,635.635 INFO    ] Launching Daemon at Tue Aug 25 21:30:49 IST 2026
[2026-08-25 21:30:49,645.645 INFO    ] ================================================
[2026-08-25 21:30:50,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:30:50
[2026-08-25 21:30:50,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:30:51,293.293 INFO    ] Initializing speech engine...
[2026-08-25 21:30:51,302.302 INFO    ] 2026-08-25 21:30:51
[2026-08-25 21:30:51,576.576 INFO    ] 2026-08-25 21:30:51
[2026-08-25 21:30:51,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:30:51,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:30:51,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:30:52,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:30:52,059.059 INFO    ] time= 25/08/2026 21:30:52
[2026-08-25 21:30:52,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:30:52,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:30:52,318.318 INFO    ] No existing commands found in stream
[2026-08-25 21:30:57,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:30:57,348.348 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-08-25 21:31:01,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:31:01,584.584 INFO    ] Checking for system updates...
[2026-08-25 21:31:01,634.634 INFO    ] 200
[2026-08-25 21:31:01,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:01,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:31:01,755.755 INFO    ] No update needed
[2026-08-25 21:31:01,759.759 INFO    ] Checking for camera pi updates...
[2026-08-25 21:31:01,817.817 INFO    ] 200
[2026-08-25 21:31:01,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:01,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:31:01,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:31:01,957.957 INFO    ] No camera update needed
[2026-08-25 21:31:01,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:31:01,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:31:01,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:31:01,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:31:04,018.018 INFO    ] ================================================
[2026-08-25 21:31:04,033.033 INFO    ] Launching Daemon at Tue Aug 25 21:31:04 IST 2026
[2026-08-25 21:31:04,045.045 INFO    ] ================================================
[2026-08-25 21:31:04,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:31:04
[2026-08-25 21:31:05,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:31:05,619.619 INFO    ] Initializing speech engine...
[2026-08-25 21:31:05,626.626 INFO    ] 2026-08-25 21:31:05
[2026-08-25 21:31:05,901.901 INFO    ] 2026-08-25 21:31:05
[2026-08-25 21:31:05,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:31:06,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:31:06,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:31:06,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:31:06,443.443 INFO    ] time= 25/08/2026 21:31:06
[2026-08-25 21:31:06,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:31:06,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:31:06,619.619 INFO    ] No existing commands found in stream
[2026-08-25 21:31:11,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:31:11,637.637 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-08-25 21:31:13,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:31:13,877.877 INFO    ] Checking for system updates...
[2026-08-25 21:31:13,918.918 INFO    ] 200
[2026-08-25 21:31:13,921.921 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:13,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:13,976.976 INFO    ] No update needed
[2026-08-25 21:31:13,979.979 INFO    ] Checking for camera pi updates...
[2026-08-25 21:31:14,014.014 INFO    ] 200
[2026-08-25 21:31:14,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:14,063.063 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:31:14,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:14,111.111 INFO    ] No camera update needed
[2026-08-25 21:31:14,113.113 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:31:14,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:31:14,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:31:14,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:31:16,166.166 INFO    ] ================================================
[2026-08-25 21:31:16,181.181 INFO    ] Launching Daemon at Tue Aug 25 21:31:16 IST 2026
[2026-08-25 21:31:16,192.192 INFO    ] ================================================
[2026-08-25 21:31:16,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:31:16
[2026-08-25 21:31:17,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:31:17,648.648 INFO    ] Initializing speech engine...
[2026-08-25 21:31:17,653.653 INFO    ] 2026-08-25 21:31:17
[2026-08-25 21:31:17,909.909 INFO    ] 2026-08-25 21:31:17
[2026-08-25 21:31:17,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:31:18,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:31:18,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:31:18,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:31:18,369.369 INFO    ] time= 25/08/2026 21:31:18
[2026-08-25 21:31:18,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:31:18,466.466 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:31:18,598.598 INFO    ] No existing commands found in stream
[2026-08-25 21:31:23,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:31:23,623.623 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 21:31:25,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:31:25,746.746 INFO    ] Checking for system updates...
[2026-08-25 21:31:25,781.781 INFO    ] 200
[2026-08-25 21:31:25,784.784 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:25,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:25,838.838 INFO    ] No update needed
[2026-08-25 21:31:25,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 21:31:25,877.877 INFO    ] 200
[2026-08-25 21:31:25,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:25,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:31:25,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:25,979.979 INFO    ] No camera update needed
[2026-08-25 21:31:25,982.982 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:31:25,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:31:25,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:31:25,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:31:28,035.035 INFO    ] ================================================
[2026-08-25 21:31:28,051.051 INFO    ] Launching Daemon at Tue Aug 25 21:31:28 IST 2026
[2026-08-25 21:31:28,062.062 INFO    ] ================================================
[2026-08-25 21:31:28,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:31:28
[2026-08-25 21:31:29,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:31:29,517.517 INFO    ] Initializing speech engine...
[2026-08-25 21:31:29,528.528 INFO    ] 2026-08-25 21:31:29
[2026-08-25 21:31:29,775.775 INFO    ] 2026-08-25 21:31:29
[2026-08-25 21:31:29,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:31:30,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:31:30,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:31:30,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:31:30,270.270 INFO    ] time= 25/08/2026 21:31:30
[2026-08-25 21:31:30,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:31:30,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:31:30,476.476 INFO    ] No existing commands found in stream
[2026-08-25 21:31:35,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:31:35,503.503 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-08-25 21:31:39,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:31:39,462.462 INFO    ] Checking for system updates...
[2026-08-25 21:31:39,502.502 INFO    ] 200
[2026-08-25 21:31:39,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:39,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:39,569.569 INFO    ] No update needed
[2026-08-25 21:31:39,572.572 INFO    ] Checking for camera pi updates...
[2026-08-25 21:31:39,609.609 INFO    ] 200
[2026-08-25 21:31:39,611.611 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:39,655.655 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:31:39,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:39,712.712 INFO    ] No camera update needed
[2026-08-25 21:31:39,715.715 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:31:39,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:31:39,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:31:39,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:31:41,771.771 INFO    ] ================================================
[2026-08-25 21:31:41,787.787 INFO    ] Launching Daemon at Tue Aug 25 21:31:41 IST 2026
[2026-08-25 21:31:41,797.797 INFO    ] ================================================
[2026-08-25 21:31:42,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:31:42
[2026-08-25 21:31:43,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:31:43,404.404 INFO    ] Initializing speech engine...
[2026-08-25 21:31:43,410.410 INFO    ] 2026-08-25 21:31:43
[2026-08-25 21:31:43,696.696 INFO    ] 2026-08-25 21:31:43
[2026-08-25 21:31:43,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:31:43,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:31:43,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:31:44,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:31:44,171.171 INFO    ] time= 25/08/2026 21:31:44
[2026-08-25 21:31:44,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:31:44,236.236 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:31:44,382.382 INFO    ] No existing commands found in stream
[2026-08-25 21:31:49,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:31:49,397.397 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-08-25 21:31:53,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:31:53,404.404 INFO    ] Checking for system updates...
[2026-08-25 21:31:53,440.440 INFO    ] 200
[2026-08-25 21:31:53,443.443 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:53,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:53,498.498 INFO    ] No update needed
[2026-08-25 21:31:53,501.501 INFO    ] Checking for camera pi updates...
[2026-08-25 21:31:53,536.536 INFO    ] 200
[2026-08-25 21:31:53,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:31:53,586.586 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:31:53,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:31:53,739.739 INFO    ] No camera update needed
[2026-08-25 21:31:53,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:31:53,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:31:53,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:31:53,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:31:55,794.794 INFO    ] ================================================
[2026-08-25 21:31:55,809.809 INFO    ] Launching Daemon at Tue Aug 25 21:31:55 IST 2026
[2026-08-25 21:31:55,820.820 INFO    ] ================================================
[2026-08-25 21:31:56,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:31:56
[2026-08-25 21:31:56,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:31:57,274.274 INFO    ] Initializing speech engine...
[2026-08-25 21:31:57,283.283 INFO    ] 2026-08-25 21:31:57
[2026-08-25 21:31:57,554.554 INFO    ] 2026-08-25 21:31:57
[2026-08-25 21:31:57,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:31:57,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:31:57,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:31:57,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:31:58,004.004 INFO    ] time= 25/08/2026 21:31:57
[2026-08-25 21:31:58,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:31:58,092.092 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:31:58,219.219 INFO    ] No existing commands found in stream
[2026-08-25 21:32:03,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:32:03,250.250 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 21:32:06,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:32:06,472.472 INFO    ] Checking for system updates...
[2026-08-25 21:32:06,512.512 INFO    ] 200
[2026-08-25 21:32:06,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:06,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:32:06,580.580 INFO    ] No update needed
[2026-08-25 21:32:06,583.583 INFO    ] Checking for camera pi updates...
[2026-08-25 21:32:06,619.619 INFO    ] 200
[2026-08-25 21:32:06,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:06,665.665 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:32:06,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:32:06,715.715 INFO    ] No camera update needed
[2026-08-25 21:32:06,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:32:06,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:32:06,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:32:06,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:32:08,777.777 INFO    ] ================================================
[2026-08-25 21:32:08,792.792 INFO    ] Launching Daemon at Tue Aug 25 21:32:08 IST 2026
[2026-08-25 21:32:08,803.803 INFO    ] ================================================
[2026-08-25 21:32:09,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:32:09
[2026-08-25 21:32:09,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:32:10,214.214 INFO    ] Initializing speech engine...
[2026-08-25 21:32:10,237.237 INFO    ] 2026-08-25 21:32:10
[2026-08-25 21:32:10,509.509 INFO    ] 2026-08-25 21:32:10
[2026-08-25 21:32:10,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:32:10,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:32:10,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:32:10,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:32:10,873.873 INFO    ] time= 25/08/2026 21:32:10
[2026-08-25 21:32:10,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:32:10,901.901 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:32:11,029.029 INFO    ] No existing commands found in stream
[2026-08-25 21:32:16,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:32:16,057.057 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 21:32:20,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:32:20,156.156 INFO    ] Checking for system updates...
[2026-08-25 21:32:20,193.193 INFO    ] 200
[2026-08-25 21:32:20,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:20,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:32:20,252.252 INFO    ] No update needed
[2026-08-25 21:32:20,254.254 INFO    ] Checking for camera pi updates...
[2026-08-25 21:32:20,288.288 INFO    ] 200
[2026-08-25 21:32:20,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:20,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:32:20,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:32:20,376.376 INFO    ] No camera update needed
[2026-08-25 21:32:20,378.378 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:32:20,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:32:20,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:32:20,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:32:22,431.431 INFO    ] ================================================
[2026-08-25 21:32:22,446.446 INFO    ] Launching Daemon at Tue Aug 25 21:32:22 IST 2026
[2026-08-25 21:32:22,457.457 INFO    ] ================================================
[2026-08-25 21:32:23,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:32:23
[2026-08-25 21:32:23,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:32:23,919.919 INFO    ] Initializing speech engine...
[2026-08-25 21:32:23,936.936 INFO    ] 2026-08-25 21:32:23
[2026-08-25 21:32:24,214.214 INFO    ] 2026-08-25 21:32:24
[2026-08-25 21:32:24,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:32:24,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:32:24,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:32:24,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:32:24,645.645 INFO    ] time= 25/08/2026 21:32:24
[2026-08-25 21:32:24,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:32:24,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:32:24,753.753 INFO    ] No existing commands found in stream
[2026-08-25 21:32:29,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:32:29,767.767 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 21:32:30,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:32:30,420.420 INFO    ] Checking for system updates...
[2026-08-25 21:32:30,455.455 INFO    ] 200
[2026-08-25 21:32:30,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:30,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:32:30,512.512 INFO    ] No update needed
[2026-08-25 21:32:30,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 21:32:30,553.553 INFO    ] 200
[2026-08-25 21:32:30,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:30,597.597 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:32:30,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:32:30,646.646 INFO    ] No camera update needed
[2026-08-25 21:32:30,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:32:30,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:32:30,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:32:30,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:32:32,706.706 INFO    ] ================================================
[2026-08-25 21:32:32,721.721 INFO    ] Launching Daemon at Tue Aug 25 21:32:32 IST 2026
[2026-08-25 21:32:32,732.732 INFO    ] ================================================
[2026-08-25 21:32:33,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:32:33
[2026-08-25 21:32:33,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:32:34,191.191 INFO    ] Initializing speech engine...
[2026-08-25 21:32:34,207.207 INFO    ] 2026-08-25 21:32:34
[2026-08-25 21:32:34,486.486 INFO    ] 2026-08-25 21:32:34
[2026-08-25 21:32:34,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:32:34,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:32:34,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:32:34,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:32:34,910.910 INFO    ] time= 25/08/2026 21:32:34
[2026-08-25 21:32:34,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:32:34,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:32:34,996.996 INFO    ] No existing commands found in stream
[2026-08-25 21:32:40,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:32:40,012.012 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 21:32:44,400.400 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:32:44,402.402 INFO    ] Checking for system updates...
[2026-08-25 21:32:44,438.438 INFO    ] 200
[2026-08-25 21:32:44,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:44,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:32:44,497.497 INFO    ] No update needed
[2026-08-25 21:32:44,500.500 INFO    ] Checking for camera pi updates...
[2026-08-25 21:32:44,533.533 INFO    ] 200
[2026-08-25 21:32:44,536.536 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:44,575.575 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:32:44,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:32:44,632.632 INFO    ] No camera update needed
[2026-08-25 21:32:44,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:32:44,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:32:44,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:32:44,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:32:46,688.688 INFO    ] ================================================
[2026-08-25 21:32:46,703.703 INFO    ] Launching Daemon at Tue Aug 25 21:32:46 IST 2026
[2026-08-25 21:32:46,714.714 INFO    ] ================================================
[2026-08-25 21:32:47,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:32:47
[2026-08-25 21:32:47,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:32:48,144.144 INFO    ] Initializing speech engine...
[2026-08-25 21:32:48,159.159 INFO    ] 2026-08-25 21:32:48
[2026-08-25 21:32:48,445.445 INFO    ] 2026-08-25 21:32:48
[2026-08-25 21:32:48,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:32:48,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:32:48,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:32:48,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:32:48,828.828 INFO    ] time= 25/08/2026 21:32:48
[2026-08-25 21:32:48,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:32:48,848.848 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:32:48,958.958 INFO    ] No existing commands found in stream
[2026-08-25 21:32:53,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:32:53,974.974 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 21:32:55,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:32:55,690.690 INFO    ] Checking for system updates...
[2026-08-25 21:32:55,727.727 INFO    ] 200
[2026-08-25 21:32:55,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:55,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:32:55,787.787 INFO    ] No update needed
[2026-08-25 21:32:55,790.790 INFO    ] Checking for camera pi updates...
[2026-08-25 21:32:55,825.825 INFO    ] 200
[2026-08-25 21:32:55,828.828 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:32:55,869.869 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:32:55,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:32:55,929.929 INFO    ] No camera update needed
[2026-08-25 21:32:55,932.932 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:32:55,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:32:55,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:32:55,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:32:57,988.988 INFO    ] ================================================
[2026-08-25 21:32:58,003.003 INFO    ] Launching Daemon at Tue Aug 25 21:32:57 IST 2026
[2026-08-25 21:32:58,013.013 INFO    ] ================================================
[2026-08-25 21:32:58,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:32:58
[2026-08-25 21:32:59,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:32:59,468.468 INFO    ] Initializing speech engine...
[2026-08-25 21:32:59,478.478 INFO    ] 2026-08-25 21:32:59
[2026-08-25 21:32:59,738.738 INFO    ] 2026-08-25 21:32:59
[2026-08-25 21:32:59,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:33:00,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:33:00,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:33:00,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:33:00,281.281 INFO    ] time= 25/08/2026 21:33:00
[2026-08-25 21:33:00,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:33:00,310.310 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:33:00,442.442 INFO    ] No existing commands found in stream
[2026-08-25 21:33:05,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:33:05,467.467 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 21:33:08,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:33:08,494.494 INFO    ] Checking for system updates...
[2026-08-25 21:33:08,531.531 INFO    ] 200
[2026-08-25 21:33:08,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:08,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:33:08,592.592 INFO    ] No update needed
[2026-08-25 21:33:08,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 21:33:08,629.629 INFO    ] 200
[2026-08-25 21:33:08,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:08,681.681 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:33:08,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:33:08,732.732 INFO    ] No camera update needed
[2026-08-25 21:33:08,735.735 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:33:08,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:33:08,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:33:08,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:33:10,792.792 INFO    ] ================================================
[2026-08-25 21:33:10,807.807 INFO    ] Launching Daemon at Tue Aug 25 21:33:10 IST 2026
[2026-08-25 21:33:10,818.818 INFO    ] ================================================
[2026-08-25 21:33:11,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:33:11
[2026-08-25 21:33:11,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:33:12,239.239 INFO    ] Initializing speech engine...
[2026-08-25 21:33:12,257.257 INFO    ] 2026-08-25 21:33:12
[2026-08-25 21:33:12,512.512 INFO    ] 2026-08-25 21:33:12
[2026-08-25 21:33:12,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:33:12,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:33:12,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:33:12,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:33:12,987.987 INFO    ] time= 25/08/2026 21:33:12
[2026-08-25 21:33:13,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:33:13,066.066 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:33:13,191.191 INFO    ] No existing commands found in stream
[2026-08-25 21:33:18,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:33:18,223.223 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 21:33:22,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:33:22,542.542 INFO    ] Checking for system updates...
[2026-08-25 21:33:22,578.578 INFO    ] 200
[2026-08-25 21:33:22,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:22,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:33:22,639.639 INFO    ] No update needed
[2026-08-25 21:33:22,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 21:33:22,674.674 INFO    ] 200
[2026-08-25 21:33:22,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:22,718.718 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:33:22,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:33:22,768.768 INFO    ] No camera update needed
[2026-08-25 21:33:22,771.771 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:33:22,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:33:22,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:33:22,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:33:24,825.825 INFO    ] ================================================
[2026-08-25 21:33:24,840.840 INFO    ] Launching Daemon at Tue Aug 25 21:33:24 IST 2026
[2026-08-25 21:33:24,851.851 INFO    ] ================================================
[2026-08-25 21:33:25,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:33:25
[2026-08-25 21:33:25,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:33:26,270.270 INFO    ] Initializing speech engine...
[2026-08-25 21:33:26,280.280 INFO    ] 2026-08-25 21:33:26
[2026-08-25 21:33:26,538.538 INFO    ] 2026-08-25 21:33:26
[2026-08-25 21:33:26,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:33:26,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:33:26,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:33:26,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:33:27,001.001 INFO    ] time= 25/08/2026 21:33:26
[2026-08-25 21:33:27,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:33:27,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:33:27,230.230 INFO    ] No existing commands found in stream
[2026-08-25 21:33:32,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:33:32,254.254 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 21:33:34,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:33:34,074.074 INFO    ] Checking for system updates...
[2026-08-25 21:33:34,111.111 INFO    ] 200
[2026-08-25 21:33:34,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:34,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:33:34,171.171 INFO    ] No update needed
[2026-08-25 21:33:34,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 21:33:34,207.207 INFO    ] 200
[2026-08-25 21:33:34,210.210 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:34,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:33:34,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:33:34,298.298 INFO    ] No camera update needed
[2026-08-25 21:33:34,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:33:34,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:33:34,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:33:34,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:33:36,356.356 INFO    ] ================================================
[2026-08-25 21:33:36,371.371 INFO    ] Launching Daemon at Tue Aug 25 21:33:36 IST 2026
[2026-08-25 21:33:36,383.383 INFO    ] ================================================
[2026-08-25 21:33:36,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:33:36
[2026-08-25 21:33:37,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:33:37,777.777 INFO    ] Initializing speech engine...
[2026-08-25 21:33:37,785.785 INFO    ] 2026-08-25 21:33:37
[2026-08-25 21:33:38,059.059 INFO    ] 2026-08-25 21:33:38
[2026-08-25 21:33:38,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:33:38,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:33:38,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:33:38,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:33:38,438.438 INFO    ] time= 25/08/2026 21:33:38
[2026-08-25 21:33:38,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:33:38,508.508 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:33:38,636.636 INFO    ] No existing commands found in stream
[2026-08-25 21:33:43,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:33:43,650.650 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 21:33:44,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:33:44,693.693 INFO    ] Checking for system updates...
[2026-08-25 21:33:44,729.729 INFO    ] 200
[2026-08-25 21:33:44,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:44,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:33:44,790.790 INFO    ] No update needed
[2026-08-25 21:33:44,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 21:33:44,839.839 INFO    ] 200
[2026-08-25 21:33:44,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:44,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:33:44,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:33:44,950.950 INFO    ] No camera update needed
[2026-08-25 21:33:44,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:33:44,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:33:44,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:33:44,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:33:47,008.008 INFO    ] ================================================
[2026-08-25 21:33:47,023.023 INFO    ] Launching Daemon at Tue Aug 25 21:33:47 IST 2026
[2026-08-25 21:33:47,034.034 INFO    ] ================================================
[2026-08-25 21:33:47,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:33:47
[2026-08-25 21:33:48,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:33:48,719.719 INFO    ] Initializing speech engine...
[2026-08-25 21:33:48,733.733 INFO    ] 2026-08-25 21:33:48
[2026-08-25 21:33:49,009.009 INFO    ] 2026-08-25 21:33:49
[2026-08-25 21:33:49,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:33:49,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:33:49,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:33:49,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:33:49,521.521 INFO    ] time= 25/08/2026 21:33:49
[2026-08-25 21:33:49,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:33:49,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:33:49,735.735 INFO    ] No existing commands found in stream
[2026-08-25 21:33:54,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:33:54,762.762 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 21:33:58,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:33:58,850.850 INFO    ] Checking for system updates...
[2026-08-25 21:33:58,888.888 INFO    ] 200
[2026-08-25 21:33:58,890.890 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:58,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:33:58,947.947 INFO    ] No update needed
[2026-08-25 21:33:58,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 21:33:58,983.983 INFO    ] 200
[2026-08-25 21:33:58,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:33:59,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:33:59,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:33:59,172.172 INFO    ] No camera update needed
[2026-08-25 21:33:59,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:33:59,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:33:59,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:33:59,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:34:01,228.228 INFO    ] ================================================
[2026-08-25 21:34:01,243.243 INFO    ] Launching Daemon at Tue Aug 25 21:34:01 IST 2026
[2026-08-25 21:34:01,254.254 INFO    ] ================================================
[2026-08-25 21:34:01,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:34:01
[2026-08-25 21:34:02,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:34:02,936.936 INFO    ] Initializing speech engine...
[2026-08-25 21:34:02,950.950 INFO    ] 2026-08-25 21:34:02
[2026-08-25 21:34:03,285.285 INFO    ] 2026-08-25 21:34:03
[2026-08-25 21:34:03,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:34:03,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:34:03,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:34:04,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:34:04,059.059 INFO    ] time= 25/08/2026 21:34:04
[2026-08-25 21:34:04,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:34:04,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:34:04,277.277 INFO    ] No existing commands found in stream
[2026-08-25 21:34:09,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:34:09,314.314 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 21:34:10,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:34:10,662.662 INFO    ] Checking for system updates...
[2026-08-25 21:34:10,697.697 INFO    ] 200
[2026-08-25 21:34:10,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:10,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:10,754.754 INFO    ] No update needed
[2026-08-25 21:34:10,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 21:34:10,791.791 INFO    ] 200
[2026-08-25 21:34:10,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:10,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:34:10,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:10,897.897 INFO    ] No camera update needed
[2026-08-25 21:34:10,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:34:10,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:34:10,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:34:10,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:34:12,955.955 INFO    ] ================================================
[2026-08-25 21:34:12,970.970 INFO    ] Launching Daemon at Tue Aug 25 21:34:12 IST 2026
[2026-08-25 21:34:12,982.982 INFO    ] ================================================
[2026-08-25 21:34:13,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:34:13
[2026-08-25 21:34:14,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:34:14,616.616 INFO    ] Initializing speech engine...
[2026-08-25 21:34:14,623.623 INFO    ] 2026-08-25 21:34:14
[2026-08-25 21:34:14,882.882 INFO    ] 2026-08-25 21:34:14
[2026-08-25 21:34:14,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:34:15,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:34:15,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:34:15,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:34:15,361.361 INFO    ] time= 25/08/2026 21:34:15
[2026-08-25 21:34:15,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:34:15,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:34:15,588.588 INFO    ] No existing commands found in stream
[2026-08-25 21:34:20,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:34:20,602.602 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 21:34:22,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:34:22,520.520 INFO    ] Checking for system updates...
[2026-08-25 21:34:22,556.556 INFO    ] 200
[2026-08-25 21:34:22,559.559 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:22,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:22,621.621 INFO    ] No update needed
[2026-08-25 21:34:22,623.623 INFO    ] Checking for camera pi updates...
[2026-08-25 21:34:22,657.657 INFO    ] 200
[2026-08-25 21:34:22,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:22,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:34:22,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:22,760.760 INFO    ] No camera update needed
[2026-08-25 21:34:22,763.763 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:34:22,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:34:22,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:34:22,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:34:24,816.816 INFO    ] ================================================
[2026-08-25 21:34:24,831.831 INFO    ] Launching Daemon at Tue Aug 25 21:34:24 IST 2026
[2026-08-25 21:34:24,842.842 INFO    ] ================================================
[2026-08-25 21:34:25,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:34:25
[2026-08-25 21:34:26,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:34:26,276.276 INFO    ] Initializing speech engine...
[2026-08-25 21:34:26,285.285 INFO    ] 2026-08-25 21:34:26
[2026-08-25 21:34:26,533.533 INFO    ] 2026-08-25 21:34:26
[2026-08-25 21:34:26,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:34:26,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:34:26,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:34:26,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:34:27,010.010 INFO    ] time= 25/08/2026 21:34:26
[2026-08-25 21:34:27,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:34:27,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:34:27,238.238 INFO    ] No existing commands found in stream
[2026-08-25 21:34:32,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:34:32,258.258 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 21:34:36,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:34:36,168.168 INFO    ] Checking for system updates...
[2026-08-25 21:34:36,205.205 INFO    ] 200
[2026-08-25 21:34:36,208.208 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:36,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:36,264.264 INFO    ] No update needed
[2026-08-25 21:34:36,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 21:34:36,302.302 INFO    ] 200
[2026-08-25 21:34:36,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:36,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:34:36,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:36,404.404 INFO    ] No camera update needed
[2026-08-25 21:34:36,407.407 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:34:36,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:34:36,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:34:36,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:34:38,463.463 INFO    ] ================================================
[2026-08-25 21:34:38,479.479 INFO    ] Launching Daemon at Tue Aug 25 21:34:38 IST 2026
[2026-08-25 21:34:38,490.490 INFO    ] ================================================
[2026-08-25 21:34:39,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:34:39
[2026-08-25 21:34:39,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:34:40,153.153 INFO    ] Initializing speech engine...
[2026-08-25 21:34:40,165.165 INFO    ] 2026-08-25 21:34:40
[2026-08-25 21:34:40,473.473 INFO    ] 2026-08-25 21:34:40
[2026-08-25 21:34:40,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:34:40,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:34:40,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:34:40,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:34:40,990.990 INFO    ] time= 25/08/2026 21:34:40
[2026-08-25 21:34:40,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:34:41,017.017 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:34:41,145.145 INFO    ] No existing commands found in stream
[2026-08-25 21:34:46,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:34:46,164.164 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 21:34:49,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:34:49,782.782 INFO    ] Checking for system updates...
[2026-08-25 21:34:49,818.818 INFO    ] 200
[2026-08-25 21:34:49,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:49,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:49,886.886 INFO    ] No update needed
[2026-08-25 21:34:49,889.889 INFO    ] Checking for camera pi updates...
[2026-08-25 21:34:49,933.933 INFO    ] 200
[2026-08-25 21:34:49,936.936 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:34:49,983.983 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:34:50,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:34:50,038.038 INFO    ] No camera update needed
[2026-08-25 21:34:50,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:34:50,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:34:50,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:34:50,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:34:52,097.097 INFO    ] ================================================
[2026-08-25 21:34:52,112.112 INFO    ] Launching Daemon at Tue Aug 25 21:34:52 IST 2026
[2026-08-25 21:34:52,127.127 INFO    ] ================================================
[2026-08-25 21:34:52,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:34:52
[2026-08-25 21:34:53,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:34:53,585.585 INFO    ] Initializing speech engine...
[2026-08-25 21:34:53,591.591 INFO    ] 2026-08-25 21:34:53
[2026-08-25 21:34:53,873.873 INFO    ] 2026-08-25 21:34:53
[2026-08-25 21:34:53,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:34:54,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:34:54,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:34:54,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:34:54,354.354 INFO    ] time= 25/08/2026 21:34:54
[2026-08-25 21:34:54,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:34:54,445.445 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:34:54,531.531 INFO    ] No existing commands found in stream
[2026-08-25 21:34:59,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:34:59,571.571 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 21:35:04,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:35:04,058.058 INFO    ] Checking for system updates...
[2026-08-25 21:35:04,096.096 INFO    ] 200
[2026-08-25 21:35:04,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:04,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:35:04,159.159 INFO    ] No update needed
[2026-08-25 21:35:04,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 21:35:04,196.196 INFO    ] 200
[2026-08-25 21:35:04,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:04,238.238 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:35:04,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:35:04,301.301 INFO    ] No camera update needed
[2026-08-25 21:35:04,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:35:04,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:35:04,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:35:04,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:35:06,355.355 INFO    ] ================================================
[2026-08-25 21:35:06,370.370 INFO    ] Launching Daemon at Tue Aug 25 21:35:06 IST 2026
[2026-08-25 21:35:06,380.380 INFO    ] ================================================
[2026-08-25 21:35:06,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:35:06
[2026-08-25 21:35:07,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:35:07,850.850 INFO    ] Initializing speech engine...
[2026-08-25 21:35:07,857.857 INFO    ] 2026-08-25 21:35:07
[2026-08-25 21:35:08,104.104 INFO    ] 2026-08-25 21:35:08
[2026-08-25 21:35:08,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:35:08,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:35:08,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:35:08,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:35:08,568.568 INFO    ] time= 25/08/2026 21:35:08
[2026-08-25 21:35:08,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:35:08,667.667 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:35:08,781.781 INFO    ] No existing commands found in stream
[2026-08-25 21:35:13,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:35:13,812.812 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 21:35:17,468.468 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:35:17,471.471 INFO    ] Checking for system updates...
[2026-08-25 21:35:17,508.508 INFO    ] 200
[2026-08-25 21:35:17,511.511 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:17,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:35:17,574.574 INFO    ] No update needed
[2026-08-25 21:35:17,578.578 INFO    ] Checking for camera pi updates...
[2026-08-25 21:35:17,620.620 INFO    ] 200
[2026-08-25 21:35:17,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:17,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:35:17,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:35:17,721.721 INFO    ] No camera update needed
[2026-08-25 21:35:17,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:35:17,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:35:17,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:35:17,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:35:19,779.779 INFO    ] ================================================
[2026-08-25 21:35:19,795.795 INFO    ] Launching Daemon at Tue Aug 25 21:35:19 IST 2026
[2026-08-25 21:35:19,806.806 INFO    ] ================================================
[2026-08-25 21:35:20,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:35:20
[2026-08-25 21:35:20,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:35:21,204.204 INFO    ] Initializing speech engine...
[2026-08-25 21:35:21,216.216 INFO    ] 2026-08-25 21:35:21
[2026-08-25 21:35:21,483.483 INFO    ] 2026-08-25 21:35:21
[2026-08-25 21:35:21,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:35:21,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:35:21,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:35:21,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:35:21,860.860 INFO    ] time= 25/08/2026 21:35:21
[2026-08-25 21:35:21,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:35:21,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:35:22,017.017 INFO    ] No existing commands found in stream
[2026-08-25 21:35:27,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:35:27,050.050 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-08-25 21:35:30,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:35:30,206.206 INFO    ] Checking for system updates...
[2026-08-25 21:35:30,249.249 INFO    ] 200
[2026-08-25 21:35:30,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:30,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:35:30,306.306 INFO    ] No update needed
[2026-08-25 21:35:30,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 21:35:30,342.342 INFO    ] 200
[2026-08-25 21:35:30,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:30,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:35:30,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:35:30,445.445 INFO    ] No camera update needed
[2026-08-25 21:35:30,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:35:30,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:35:30,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:35:30,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:35:32,505.505 INFO    ] ================================================
[2026-08-25 21:35:32,521.521 INFO    ] Launching Daemon at Tue Aug 25 21:35:32 IST 2026
[2026-08-25 21:35:32,534.534 INFO    ] ================================================
[2026-08-25 21:35:33,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:35:33
[2026-08-25 21:35:33,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:35:34,117.117 INFO    ] Initializing speech engine...
[2026-08-25 21:35:34,131.131 INFO    ] 2026-08-25 21:35:34
[2026-08-25 21:35:34,407.407 INFO    ] 2026-08-25 21:35:34
[2026-08-25 21:35:34,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:35:34,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:35:34,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:35:34,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:35:34,862.862 INFO    ] time= 25/08/2026 21:35:34
[2026-08-25 21:35:34,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:35:34,981.981 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:35:35,124.124 INFO    ] No existing commands found in stream
[2026-08-25 21:35:40,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:35:40,152.152 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 21:35:44,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:35:44,200.200 INFO    ] Checking for system updates...
[2026-08-25 21:35:44,237.237 INFO    ] 200
[2026-08-25 21:35:44,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:44,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:35:44,295.295 INFO    ] No update needed
[2026-08-25 21:35:44,298.298 INFO    ] Checking for camera pi updates...
[2026-08-25 21:35:44,335.335 INFO    ] 200
[2026-08-25 21:35:44,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:44,378.378 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:35:44,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:35:44,437.437 INFO    ] No camera update needed
[2026-08-25 21:35:44,440.440 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:35:44,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:35:44,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:35:44,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:35:46,491.491 INFO    ] ================================================
[2026-08-25 21:35:46,507.507 INFO    ] Launching Daemon at Tue Aug 25 21:35:46 IST 2026
[2026-08-25 21:35:46,517.517 INFO    ] ================================================
[2026-08-25 21:35:47,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:35:47
[2026-08-25 21:35:47,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:35:47,936.936 INFO    ] Initializing speech engine...
[2026-08-25 21:35:47,944.944 INFO    ] 2026-08-25 21:35:47
[2026-08-25 21:35:48,191.191 INFO    ] 2026-08-25 21:35:48
[2026-08-25 21:35:48,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:35:48,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:35:48,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:35:48,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:35:48,681.681 INFO    ] time= 25/08/2026 21:35:48
[2026-08-25 21:35:48,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:35:48,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:35:48,875.875 INFO    ] No existing commands found in stream
[2026-08-25 21:35:53,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:35:53,900.900 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 21:35:55,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:35:55,887.887 INFO    ] Checking for system updates...
[2026-08-25 21:35:55,923.923 INFO    ] 200
[2026-08-25 21:35:55,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:55,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:35:55,980.980 INFO    ] No update needed
[2026-08-25 21:35:55,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 21:35:56,016.016 INFO    ] 200
[2026-08-25 21:35:56,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:35:56,058.058 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:35:56,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:35:56,107.107 INFO    ] No camera update needed
[2026-08-25 21:35:56,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:35:56,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:35:56,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:35:56,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:35:58,163.163 INFO    ] ================================================
[2026-08-25 21:35:58,179.179 INFO    ] Launching Daemon at Tue Aug 25 21:35:58 IST 2026
[2026-08-25 21:35:58,190.190 INFO    ] ================================================
[2026-08-25 21:35:58,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:35:58
[2026-08-25 21:35:59,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:35:59,646.646 INFO    ] Initializing speech engine...
[2026-08-25 21:35:59,655.655 INFO    ] 2026-08-25 21:35:59
[2026-08-25 21:35:59,941.941 INFO    ] 2026-08-25 21:35:59
[2026-08-25 21:35:59,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:36:00,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:36:00,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:36:00,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:36:00,432.432 INFO    ] time= 25/08/2026 21:36:00
[2026-08-25 21:36:00,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:36:00,507.507 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:36:00,629.629 INFO    ] Found 1 existing command(s) in stream
[2026-08-25 21:36:00,670.670 INFO    ] Checking historical command: ID=1787673955370-0
[2026-08-25 21:36:00,730.730 INFO    ] process_and_cleanup_command: msg_id=1787673955370-0
[2026-08-25 21:36:00,779.779 INFO    ] is_command_expired: timestamp=2026-08-25T16:05:55.280Z, expiry=30s
[2026-08-25 21:36:01,001.001 INFO    ] Command removed from stream: 1787673955370-0. returning for processing...
[2026-08-25 21:36:01,005.005 INFO    ] ***** get_valid_command
[2026-08-25 21:36:01,018.018 INFO    ] {'source': 'webapp', 'data': '{"request_id":"start-order-1787673955280-h0t1gxfeu","orderId":"TM03202401260825213503660","is_vending":false}', 'timestamp': '2026-08-25T16:05:55.280Z', 'command': 'start-order', 'timeout': '10'}
[2026-08-25 21:36:01,021.021 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1787673955280-h0t1gxfeu', 'is_vending': False, 'orderId': 'TM03202401260825213503660'}
[2026-08-25 21:36:01,025.025 INFO    ] Handling start order...
[2026-08-25 21:36:01,074.074 INFO    ] handle_start_order_command
[2026-08-25 21:36:01,161.161 INFO    ] _send_start_order_success: request_id=start-order-1787673955280-h0t1gxfeu, order_id=TM03202401260825213503660
[2026-08-25 21:36:01,168.168 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM03202401
[2026-08-25 21:36:01,272.272 INFO    ] [_send_start_order_success] Message added to stream with ID: 1787673961381-0
[2026-08-25 21:36:01,277.277 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-08-25 21:36:01,282.282 INFO    ] Checking for system updates...
[2026-08-25 21:36:01,383.383 INFO    ] 200
[2026-08-25 21:36:01,433.433 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:01,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:36:01,516.516 INFO    ] No update needed
[2026-08-25 21:36:01,522.522 INFO    ] Checking for camera pi updates...
[2026-08-25 21:36:01,564.564 INFO    ] 200
[2026-08-25 21:36:01,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:01,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:36:01,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:36:01,862.862 INFO    ] No camera update needed
[2026-08-25 21:36:01,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:36:01,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:36:01,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:36:01,917.917 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-08-25 21:36:01,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:36:04,994.994 INFO    ] ================================================
[2026-08-25 21:36:04,010.010 INFO    ] Launching Daemon at Tue Aug 25 21:36:04 IST 2026
[2026-08-25 21:36:04,021.021 INFO    ] ================================================
[2026-08-25 21:36:04,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:36:04
[2026-08-25 21:36:05,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:36:05,426.426 INFO    ] Initializing speech engine...
[2026-08-25 21:36:05,448.448 INFO    ] 2026-08-25 21:36:05
[2026-08-25 21:36:05,706.706 INFO    ] 2026-08-25 21:36:05
[2026-08-25 21:36:05,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:36:05,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:36:06,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:36:06,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:36:06,189.189 INFO    ] time= 25/08/2026 21:36:06
[2026-08-25 21:36:06,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:36:06,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:36:06,379.379 INFO    ] Found 2 existing command(s) in stream
[2026-08-25 21:36:06,435.435 INFO    ] Checking historical command: ID=1787673961381-0
[2026-08-25 21:36:06,462.462 INFO    ] process_and_cleanup_command: msg_id=1787673961381-0
[2026-08-25 21:36:06,526.526 INFO    ] is_command_expired: timestamp=2026-08-25T16:06:01.162362Z, expiry=30s
[2026-08-25 21:36:06,688.688 INFO    ] Command removed from stream: 1787673961381-0. returning for processing...
[2026-08-25 21:36:06,736.736 INFO    ] ***** get_valid_command
[2026-08-25 21:36:06,771.771 INFO    ] {'metadata_order_id': 'TM03202401260825213503660', 'imei': 'TM03202401', 'timestamp': '2026-08-25T16:06:01.162362Z', 'message': 'start-order success', 'message_type': 'command_response', 'status': 'success', 'metadata_request_id': 'start-order-1787673955280-h0t1gxfeu'}
[2026-08-25 21:36:06,790.790 INFO    ] Checking historical command: ID=1787673963473-0
[2026-08-25 21:36:06,802.802 INFO    ] process_and_cleanup_command: msg_id=1787673963473-0
[2026-08-25 21:36:06,805.805 INFO    ] is_command_expired: timestamp=2026-08-25T16:06:03.392Z, expiry=30s
[2026-08-25 21:36:06,935.935 INFO    ] Command removed from stream: 1787673963473-0. returning for processing...
[2026-08-25 21:36:06,941.941 INFO    ] ***** get_valid_command
[2026-08-25 21:36:06,959.959 INFO    ] {'timestamp': '2026-08-25T16:06:03.392Z', 'command': 'process-order', 'data': '{"request_id":"process-order-1787673963392-7d3pfyxzp","orderId":"TM03202401260825213503660","is_vending":false,"accessCode":"88361658"}', 'source': 'webapp', 'timeout': '60'}
[2026-08-25 21:36:06,996.996 INFO    ] ***** Parsed command data: {'orderId': 'TM03202401260825213503660', 'request_id': 'process-order-1787673963392-7d3pfyxzp', 'accessCode': '88361658', 'is_vending': False}
[2026-08-25 21:36:06,999.999 INFO    ] Handling process order...
[2026-08-25 21:36:07,002.002 INFO    ] Processing process-order command...
[2026-08-25 21:36:07,054.054 INFO    ] 🔍 Lock file Order ID: TM03202401260825213503660, TS: 2026-08-25 21:36:01
[2026-08-25 21:36:07,070.070 INFO    ] ✅ Order lock valid for TM03202401260825213503660
[2026-08-25 21:36:07,074.074 INFO    ] Received access code in process-order, skipping PHP API call
[2026-08-25 21:36:07,078.078 INFO    ] processing access code 88361658 for order TM03202401260825213503660
[2026-08-25 21:36:07,083.083 INFO    ] 🔍 Lock file Order ID: TM03202401260825213503660, TS: 2026-08-25 21:36:01
[2026-08-25 21:36:07,088.088 INFO    ] ✅ Order lock valid for TM03202401260825213503660
[2026-08-25 21:36:07,093.093 INFO    ] 2026-08-25 21:36:07
[2026-08-25 21:36:07,198.198 INFO    ] 200
[2026-08-25 21:36:07,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:07,252.252 INFO    ] 88361658
[2026-08-25 21:36:07,259.259 INFO    ] 2026-08-25 21:36:07
[2026-08-25 21:36:07,266.266 INFO    ] session id :684025816
[2026-08-25 21:36:07,272.272 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=88361658&imei=TM03202401&session_id=684025816
[2026-08-25 21:36:08,392.392 INFO    ] 200
[2026-08-25 21:36:08,403.403 INFO    ] {"data": {"access_code": "88361658", "order_id": "TM03202401260825213503660", "bill_amount": "10", "invoice_bill": "10", "proposed_sku_json": [{"offer_desc": "", "qty": 1, "skuid": "4500725", "offer_id": "", "door_id": "1", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "tray_id": "14", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm", "sku_total": 10}], "mobile": "6383974519"}, "rstatus": true, "msg": "Order Data", "status": true}
[2026-08-25 21:36:08,410.410 INFO    ] 10
[2026-08-25 21:36:08,416.416 INFO    ] TM03202401260825213503660
[2026-08-25 21:36:08,447.447 INFO    ] 6383974519
[2026-08-25 21:36:08,452.452 INFO    ] 2026-08-25 21:36:08
[2026-08-25 21:36:08,463.463 INFO    ] Door Opening for user mobile ending with  four five one nine 
[2026-08-25 21:36:08,483.483 INFO    ] Door Opening for user mobile ending with  four five one nine 
[2026-08-25 21:36:08,490.490 INFO    ] ee6f7eb33c5f873be93b98c60d985394
[2026-08-25 21:36:08,497.497 INFO    ] 2026-08-25 21:36:08
[2026-08-25 21:36:08,531.531 INFO    ] playing audio file
[2026-08-25 21:36:08,567.567 INFO    ] 2026-08-25 21:36:08
[2026-08-25 21:36:08,581.581 INFO    ] 2026-08-25 21:36:08
[2026-08-25 21:36:08,605.605 INFO    ] publish_status: order_id=TM03202401260825213503660
[2026-08-25 21:36:08,645.645 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825213503660
[2026-08-25 21:36:08,745.745 INFO    ] [publish_status] Message added to stream with ID: 1787673968853-0
[2026-08-25 21:36:08,753.753 INFO    ] Published to order:TM03202401260825213503660: {'server_response': '{"data": {"bill_amount": "10", "access_code": "88361658", "invoice_bill": "10", "mobile": "6383974519", "proposed_sku_json": [{"qty": 1, "skuid": "4500725", "offer_id": "", "name": "Maxvita Coconut Cookies 40gm", "door_id": "1", "sku_total": 10, "image_url": "https://images.tinymart.in/product/4500725-5961.png", "offer_desc": "", "mrp": "10", "unit_price": 10, "tray_id": "14"}], "order_id": "TM03202401260825213503660"}, "status": true, "msg": "Order Data", "rstatus": true}', 'timestamp': '2026-08-25T16:06:08.588109Z', 'server_status': 'order-started', 'order_id': 'TM03202401260825213503660'} (ID: 1787673968853-0)
[2026-08-25 21:36:09,267.267 INFO    ] {'server_response': {'data': {'bill_amount': '10', 'access_code': '88361658', 'invoice_bill': '10', 'mobile': '6383974519', 'proposed_sku_json': [{'qty': 1, 'skuid': '4500725', 'offer_id': '', 'name': 'Maxvita Coconut Cookies 40gm', 'door_id': '1', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'offer_desc': '', 'mrp': '10', 'unit_price': 10, 'tray_id': '14'}], 'order_id': 'TM03202401260825213503660'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM03202401260825213503660'}
[2026-08-25 21:36:09,270.270 INFO    ] 200
[2026-08-25 21:36:09,273.273 INFO    ] {"data":{"server_response":{"data":{"bill_amount":"10","access_code":"88361658","invoice_bill":"10","mobile":"6383974519","proposed_sku_json":[{"qty":1,"skuid":"4500725","offer_id":"","name":"Maxvita Coconut Cookies 40gm","door_id":"1","sku_total":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","offer_desc":"","mrp":"10","unit_price":10,"tray_id":"14"}],"order_id":"TM03202401260825213503660"},"status":true,"msg":"Order Data","rstatus":true},"server_status":"order-started","order_id":"TM03202401260825213503660"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 21:36:09,276.276 INFO    ] {'data': {'server_response': {'data': {'bill_amount': '10', 'access_code': '88361658', 'invoice_bill': '10', 'proposed_sku_json': [{'qty': 1, 'skuid': '4500725', 'offer_id': '', 'name': 'Maxvita Coconut Cookies 40gm', 'door_id': '1', 'sku_total': 10, 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'offer_desc': '', 'tray_id': '14', 'unit_price': 10, 'mrp': '10'}], 'mobile': '6383974519', 'order_id': 'TM03202401260825213503660'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'server_status': 'order-started', 'order_id': 'TM03202401260825213503660'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 21:36:09,279.279 INFO    ] 2026-08-25 21:36:09
[2026-08-25 21:36:09,325.325 INFO    ] 200
[2026-08-25 21:36:09,329.329 INFO    ] True
[2026-08-25 21:36:09,503.503 INFO    ] 200
[2026-08-25 21:36:09,507.507 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": false, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "voiceNote": "Please Wait"}
[2026-08-25 21:36:09,512.512 INFO    ] {'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'status': 'False', 'voiceNote': 'Please Wait'}
[2026-08-25 21:36:09,515.515 INFO    ] *** process_order ***
[2026-08-25 21:36:10,718.718 INFO    ] 200
[2026-08-25 21:36:10,720.720 INFO    ] {"SectionMain": {"Header": "Processing Order"}, "rstatus": true, "SectionStatus": {"Header": " Your order is under process  ", "Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order"}, "status": "True", "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0, "voiceNote": "Please Wait"}
[2026-08-25 21:36:10,723.723 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'status': 'True', 'voiceNote': 'Please Wait'}
[2026-08-25 21:36:10,725.725 INFO    ] *** process_order ***
[2026-08-25 21:36:10,728.728 INFO    ] publish_status: order_id=TM03202401260825213503660
[2026-08-25 21:36:10,730.730 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825213503660
[2026-08-25 21:36:10,817.817 INFO    ] [publish_status] Message added to stream with ID: 1787673970944-0
[2026-08-25 21:36:10,819.819 INFO    ] Published to order:TM03202401260825213503660: {'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "status": "True", "voiceNote": "Door is open..."}', 'server_status': 'doorOpened', 'order_id': 'TM03202401260825213503660'} (ID: 1787673970944-0)
[2026-08-25 21:36:11,886.886 INFO    ] 2026-08-25 21:36:11
[2026-08-25 21:36:11,889.889 INFO    ] publish_status: order_id=TM03202401260825213503660
[2026-08-25 21:36:11,892.892 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825213503660
[2026-08-25 21:36:11,985.985 INFO    ] [publish_status] Message added to stream with ID: 1787673972103-0
[2026-08-25 21:36:11,988.988 INFO    ] Published to order:TM03202401260825213503660: {'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "status": "True", "voiceNote": "Please Wait"}', 'timestamp': '2026-08-25T16:06:11.888156Z', 'server_status': 'processOrder', 'order_id': 'TM03202401260825213503660'} (ID: 1787673972103-0)
[2026-08-25 21:36:12,110.110 INFO    ] {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0, 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'status': 'True', 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825213503660'}
[2026-08-25 21:36:12,113.113 INFO    ] 200
[2026-08-25 21:36:12,115.115 INFO    ] {"data":{"server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"rstatus":true,"SectionMain":{"Header":"Processing Order"},"delay":0,"SectionStatus":{"Note":"","UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  "},"status":"true","voiceNote":"Please Wait"},"server_status":"processOrder","order_id":"TM03202401260825213503660"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 21:36:12,118.118 INFO    ] {'data': {'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'true', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'voiceNote': 'Please Wait'}, 'server_status': 'processOrder', 'order_id': 'TM03202401260825213503660'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 21:36:12,120.120 INFO    ] 2026-08-25 21:36:12
[2026-08-25 21:36:12,123.123 INFO    ] None
[2026-08-25 21:36:12,125.125 INFO    ] Opening Door now
[2026-08-25 21:36:12,128.128 INFO    ] Opening Door now
[2026-08-25 21:36:12,131.131 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-08-25 21:36:12,133.133 INFO    ] 2026-08-25 21:36:12
[2026-08-25 21:36:12,136.136 INFO    ] playing audio file
[2026-08-25 21:36:12,153.153 INFO    ] 2026-08-25 21:36:12
[2026-08-25 21:36:12,156.156 INFO    ] 2026-08-25 21:36:12
[2026-08-25 21:36:15,247.247 INFO    ] 200
[2026-08-25 21:36:15,250.250 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Door 1 is open now"}
[2026-08-25 21:36:15,253.253 INFO    ] {'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Door 1 is open now'}
[2026-08-25 21:36:18,342.342 INFO    ] 200
[2026-08-25 21:36:18,345.345 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 21:36:18,348.348 INFO    ] {'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-08-25 21:36:21,459.459 INFO    ] 200
[2026-08-25 21:36:21,462.462 INFO    ] {"SectionMain": {"Header": "Door Open"}, "rstatus": false, "SectionStatus": {"Header": "Please Close Door 1", "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"}, "status": "False", "error": {"data": {}, "tmessage": "In Progress", "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}]}, "voiceNote": "Please close door 1"}
[2026-08-25 21:36:21,465.465 INFO    ] Please close door 1
[2026-08-25 21:36:21,467.467 INFO    ] Please close door 1
[2026-08-25 21:36:21,470.470 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-08-25 21:36:21,473.473 INFO    ] 2026-08-25 21:36:21
[2026-08-25 21:36:21,476.476 INFO    ] playing audio file
[2026-08-25 21:36:21,495.495 INFO    ] 2026-08-25 21:36:21
[2026-08-25 21:36:21,498.498 INFO    ] publish_status: order_id=TM03202401260825213503660
[2026-08-25 21:36:21,501.501 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825213503660
[2026-08-25 21:36:21,595.595 INFO    ] [publish_status] Message added to stream with ID: 1787673981722-0
[2026-08-25 21:36:21,598.598 INFO    ] Published to order:TM03202401260825213503660: {'server_response': '{"error": {"tmessage": "In Progress", "data": {}, "code": 20001, "umessage": "In Progress"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Maxvita Coconut Cookies 40gm"}], "Header": "Pick the below items from the door"}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 1"}, "status": "False", "voiceNote": "Please close door 1"}', 'timestamp': '2026-08-25T16:06:21.497059Z', 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825213503660'} (ID: 1787673981722-0)
[2026-08-25 21:36:22,132.132 INFO    ] {'server_response': {'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1'}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825213503660'}
[2026-08-25 21:36:22,135.135 INFO    ] 200
[2026-08-25 21:36:22,138.138 INFO    ] {"data":{"server_response":{"error":{"tmessage":"In Progress","data":[],"code":20001,"umessage":"In Progress"},"SectionSKU":{"skus":[{"qty":1,"name":"Maxvita Coconut Cookies 40gm"}],"Header":"Pick the below items from the door"},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 1"},"status":"false","voiceNote":"Please close door 1"},"server_status":"OrderStatus","order_id":"TM03202401260825213503660"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 21:36:22,141.141 INFO    ] {'data': {'server_response': {'error': {'tmessage': 'In Progress', 'data': [], 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'status': 'false', 'voiceNote': 'Please close door 1'}, 'server_status': 'OrderStatus', 'order_id': 'TM03202401260825213503660'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 21:36:22,144.144 INFO    ] {'error': {'tmessage': 'In Progress', 'data': {}, 'code': 20001, 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Maxvita Coconut Cookies 40gm'}], 'Header': 'Pick the below items from the door'}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 1'}, 'status': 'False', 'voiceNote': 'Please close door 1'}
[2026-08-25 21:36:25,203.203 INFO    ] 200
[2026-08-25 21:36:25,206.206 INFO    ] {"SectionMain": {"Header": "Door Closed"}, "rstatus": true, "SectionStatus": {"Header": " Order is complete ", "Note": "If any due amount, clear at https://go.tinymart.in", "UI_Header": "", "SubHeader": "Please wait for invoice to generate"}, "status": "True", "SectionSKU": {"Header": "If you like us, tell others... else tell us", "skus": []}, "delay": 100, "voiceNote": "Transaction Completed"}
[2026-08-25 21:36:25,209.209 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, '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 '}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-08-25 21:36:25,212.212 INFO    ] 2026-08-25 21:36:25
[2026-08-25 21:36:25,218.218 INFO    ] Order Completed 
[2026-08-25 21:36:25,220.220 INFO    ] Order Completed 
[2026-08-25 21:36:25,223.223 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-08-25 21:36:25,226.226 INFO    ] 2026-08-25 21:36:25
[2026-08-25 21:36:25,229.229 INFO    ] playing audio file
[2026-08-25 21:36:25,247.247 INFO    ] 2026-08-25 21:36:25
[2026-08-25 21:36:25,250.250 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100, '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 '}, 'status': 'True', 'voiceNote': 'Transaction Completed'}
[2026-08-25 21:36:25,253.253 INFO    ] 2026-08-25 21:36:25
[2026-08-25 21:36:26,907.907 INFO    ] 200
[2026-08-25 21:36:26,909.909 INFO    ] {"anomaly": 0, "rstatus": true, "orderId": "TM03202401260825213503660", "skus": [{"image_url": "https://images.tinymart.in/product/4500725-5961.png", "skuid": "4500725", "door_id": "", "unit_price": "10", "qty": 1, "tray_id": "14", "mrp": "10", "name": "Maxvita Coconut Cookies 40gm per peice", "sku_total": 10.0}], "res": "True", "total_amount": 10.0, "logic": "WBL"}
[2026-08-25 21:36:26,912.912 INFO    ] {'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'rstatus': True, 'orderId': 'TM03202401260825213503660', 'logic': 'WBL', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10.0, 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'mrp': '10', 'unit_price': '10', 'tray_id': '14'}]}
[2026-08-25 21:36:26,915.915 INFO    ] {'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'rstatus': True, 'orderId': 'TM03202401260825213503660', 'logic': 'WBL', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10.0, 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'mrp': '10', 'unit_price': '10', 'tray_id': '14'}]}
[2026-08-25 21:36:26,917.917 INFO    ] 2026-08-25 21:36:26
[2026-08-25 21:36:26,920.920 INFO    ] 2026-08-25 21:36:26
[2026-08-25 21:36:26,922.922 INFO    ] 10
[2026-08-25 21:36:26,925.925 INFO    ] 2026-08-25 21:36:26
[2026-08-25 21:36:26,928.928 INFO    ] 2026-08-25 21:36:26
[2026-08-25 21:36:26,930.930 INFO    ]  Your Bill Amount is 10
[2026-08-25 21:36:26,932.932 INFO    ]  Your Bill Amount is 10
[2026-08-25 21:36:26,935.935 INFO    ] 85bfbe5b6a8f89327a526d08bc1ad1da
[2026-08-25 21:36:26,937.937 INFO    ] 2026-08-25 21:36:26
[2026-08-25 21:36:26,940.940 INFO    ] playing audio file
[2026-08-25 21:36:26,956.956 INFO    ] 2026-08-25 21:36:26
[2026-08-25 21:36:26,960.960 INFO    ] 2026-08-25 21:36:26
[2026-08-25 21:36:26,963.963 INFO    ] publish_status: order_id=TM03202401260825213503660
[2026-08-25 21:36:26,966.966 INFO    ] [publish_status] Adding message to stream: order:TM03202401260825213503660
[2026-08-25 21:36:27,033.033 INFO    ] [publish_status] Message added to stream with ID: 1787673987160-0
[2026-08-25 21:36:27,036.036 INFO    ] Published to order:TM03202401260825213503660: {'server_response': '{"res": "True", "total_amount": 10.0, "anomaly": 0, "rstatus": true, "orderId": "TM03202401260825213503660", "logic": "WBL", "skus": [{"skuid": "4500725", "qty": 1, "sku_total": 10.0, "name": "Maxvita Coconut Cookies 40gm per peice", "door_id": "", "image_url": "https://images.tinymart.in/product/4500725-5961.png", "mrp": "10", "unit_price": "10", "tray_id": "14"}]}', 'timestamp': '2026-08-25T16:06:26.961314Z', 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825213503660'} (ID: 1787673987160-0)
[2026-08-25 21:36:27,899.899 INFO    ] {'server_response': {'res': 'True', 'total_amount': 10.0, 'anomaly': 0, 'rstatus': True, 'orderId': 'TM03202401260825213503660', 'logic': 'WBL', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10.0, 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'mrp': '10', 'unit_price': '10', 'tray_id': '14'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825213503660'}
[2026-08-25 21:36:27,902.902 INFO    ] 200
[2026-08-25 21:36:27,904.904 INFO    ] {"data":{"server_response":{"res":"true","total_amount":10,"anomaly":0,"rstatus":true,"orderId":"TM03202401260825213503660","logic":"WBL","skus":[{"skuid":"4500725","qty":1,"sku_total":10,"name":"Maxvita Coconut Cookies 40gm per peice","door_id":"","image_url":"https:\/\/images.tinymart.in\/product\/4500725-5961.png","mrp":"10","unit_price":"10","tray_id":"14"}]},"server_status":"invoiceOrder","order_id":"TM03202401260825213503660"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-08-25 21:36:27,908.908 INFO    ] {'data': {'server_response': {'res': 'true', 'total_amount': 10, 'anomaly': 0, 'rstatus': True, 'orderId': 'TM03202401260825213503660', 'logic': 'WBL', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10, 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'tray_id': '14', 'unit_price': '10', 'mrp': '10'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825213503660'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 21:36:27,911.911 INFO    ] {'data': {'server_response': {'res': 'true', 'total_amount': 10, 'anomaly': 0, 'rstatus': True, 'orderId': 'TM03202401260825213503660', 'logic': 'WBL', 'skus': [{'skuid': '4500725', 'qty': 1, 'sku_total': 10, 'name': 'Maxvita Coconut Cookies 40gm per peice', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500725-5961.png', 'tray_id': '14', 'unit_price': '10', 'mrp': '10'}]}, 'server_status': 'invoiceOrder', 'order_id': 'TM03202401260825213503660'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-08-25 21:36:27,914.914 INFO    ] 2026-08-25 21:36:27
[2026-08-25 21:36:31,051.051 INFO    ] 200
[2026-08-25 21:36:31,054.054 INFO    ] {"orders_synced": [], "orders_data_synced": [], "orders": [], "tray_sync": [], "orders_data": [], "order_items_synced": ["TM03202401260825213503660_0"], "order_items": [], "tray_synced": ["TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660", "TM03202401260825213503660"], "status": true}
[2026-08-25 21:36:31,057.057 INFO    ] 2026-08-25 21:36:31
[2026-08-25 21:36:31,186.186 INFO    ] 200
[2026-08-25 21:36:31,188.188 INFO    ] True
[2026-08-25 21:36:31,191.191 INFO    ] cleanup_start_order_file_after_processing: order_id=TM03202401260825213503660
[2026-08-25 21:36:31,195.195 INFO    ] start order file deleted
[2026-08-25 21:36:31,197.197 INFO    ] Checking for system updates...
[2026-08-25 21:36:31,240.240 INFO    ] 200
[2026-08-25 21:36:31,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:31,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:36:31,305.305 INFO    ] No update needed
[2026-08-25 21:36:31,309.309 INFO    ] Checking for camera pi updates...
[2026-08-25 21:36:31,348.348 INFO    ] 200
[2026-08-25 21:36:31,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:31,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:36:31,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:36:31,457.457 INFO    ] No camera update needed
[2026-08-25 21:36:31,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:36:31,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:36:31,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:36:31,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:36:33,520.520 INFO    ] ================================================
[2026-08-25 21:36:33,536.536 INFO    ] Launching Daemon at Tue Aug 25 21:36:33 IST 2026
[2026-08-25 21:36:33,546.546 INFO    ] ================================================
[2026-08-25 21:36:34,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:36:34
[2026-08-25 21:36:34,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:36:34,985.985 INFO    ] Initializing speech engine...
[2026-08-25 21:36:35,003.003 INFO    ] 2026-08-25 21:36:34
[2026-08-25 21:36:35,285.285 INFO    ] 2026-08-25 21:36:35
[2026-08-25 21:36:35,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:36:35,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:36:35,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:36:35,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:36:35,775.775 INFO    ] time= 25/08/2026 21:36:35
[2026-08-25 21:36:35,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:36:35,872.872 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:36:35,985.985 INFO    ] No existing commands found in stream
[2026-08-25 21:36:41,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:36:41,011.011 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 21:36:43,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:36:43,456.456 INFO    ] Checking for system updates...
[2026-08-25 21:36:43,500.500 INFO    ] 200
[2026-08-25 21:36:43,503.503 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:43,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:36:43,560.560 INFO    ] No update needed
[2026-08-25 21:36:43,563.563 INFO    ] Checking for camera pi updates...
[2026-08-25 21:36:43,606.606 INFO    ] 200
[2026-08-25 21:36:43,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:43,651.651 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:36:43,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:36:43,703.703 INFO    ] No camera update needed
[2026-08-25 21:36:43,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:36:43,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:36:43,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:36:43,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:36:45,765.765 INFO    ] ================================================
[2026-08-25 21:36:45,781.781 INFO    ] Launching Daemon at Tue Aug 25 21:36:45 IST 2026
[2026-08-25 21:36:45,792.792 INFO    ] ================================================
[2026-08-25 21:36:46,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:36:46
[2026-08-25 21:36:46,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:36:47,221.221 INFO    ] Initializing speech engine...
[2026-08-25 21:36:47,230.230 INFO    ] 2026-08-25 21:36:47
[2026-08-25 21:36:47,479.479 INFO    ] 2026-08-25 21:36:47
[2026-08-25 21:36:47,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:36:47,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:36:47,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:36:47,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:36:47,855.855 INFO    ] time= 25/08/2026 21:36:47
[2026-08-25 21:36:47,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:36:47,873.873 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:36:48,018.018 INFO    ] No existing commands found in stream
[2026-08-25 21:36:53,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:36:53,051.051 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 21:36:55,985.985 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:36:55,988.988 INFO    ] Checking for system updates...
[2026-08-25 21:36:56,024.024 INFO    ] 200
[2026-08-25 21:36:56,027.027 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:56,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:36:56,085.085 INFO    ] No update needed
[2026-08-25 21:36:56,087.087 INFO    ] Checking for camera pi updates...
[2026-08-25 21:36:56,121.121 INFO    ] 200
[2026-08-25 21:36:56,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:36:56,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:36:56,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:36:56,220.220 INFO    ] No camera update needed
[2026-08-25 21:36:56,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:36:56,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:36:56,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:36:56,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:36:58,280.280 INFO    ] ================================================
[2026-08-25 21:36:58,296.296 INFO    ] Launching Daemon at Tue Aug 25 21:36:58 IST 2026
[2026-08-25 21:36:58,308.308 INFO    ] ================================================
[2026-08-25 21:36:58,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:36:58
[2026-08-25 21:36:59,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:36:59,727.727 INFO    ] Initializing speech engine...
[2026-08-25 21:36:59,736.736 INFO    ] 2026-08-25 21:36:59
[2026-08-25 21:36:59,980.980 INFO    ] 2026-08-25 21:36:59
[2026-08-25 21:37:00,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:37:00,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:37:00,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:37:00,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:37:00,315.315 INFO    ] time= 25/08/2026 21:37:00
[2026-08-25 21:37:00,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:37:00,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:37:00,432.432 INFO    ] No existing commands found in stream
[2026-08-25 21:37:05,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:37:05,470.470 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 21:37:06,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:37:06,014.014 INFO    ] Checking for system updates...
[2026-08-25 21:37:06,049.049 INFO    ] 200
[2026-08-25 21:37:06,052.052 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:06,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:37:06,107.107 INFO    ] No update needed
[2026-08-25 21:37:06,109.109 INFO    ] Checking for camera pi updates...
[2026-08-25 21:37:06,150.150 INFO    ] 200
[2026-08-25 21:37:06,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:06,192.192 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:37:06,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:37:06,241.241 INFO    ] No camera update needed
[2026-08-25 21:37:06,243.243 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:37:06,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:37:06,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:37:06,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:37:08,297.297 INFO    ] ================================================
[2026-08-25 21:37:08,312.312 INFO    ] Launching Daemon at Tue Aug 25 21:37:08 IST 2026
[2026-08-25 21:37:08,323.323 INFO    ] ================================================
[2026-08-25 21:37:08,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:37:08
[2026-08-25 21:37:09,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:37:09,773.773 INFO    ] Initializing speech engine...
[2026-08-25 21:37:09,783.783 INFO    ] 2026-08-25 21:37:09
[2026-08-25 21:37:10,084.084 INFO    ] 2026-08-25 21:37:10
[2026-08-25 21:37:10,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:37:10,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:37:10,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:37:10,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:37:10,443.443 INFO    ] time= 25/08/2026 21:37:10
[2026-08-25 21:37:10,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:37:10,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:37:10,590.590 INFO    ] No existing commands found in stream
[2026-08-25 21:37:15,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:37:15,611.611 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-08-25 21:37:17,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:37:17,786.786 INFO    ] Checking for system updates...
[2026-08-25 21:37:17,821.821 INFO    ] 200
[2026-08-25 21:37:17,824.824 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:17,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:37:17,879.879 INFO    ] No update needed
[2026-08-25 21:37:17,882.882 INFO    ] Checking for camera pi updates...
[2026-08-25 21:37:17,916.916 INFO    ] 200
[2026-08-25 21:37:17,919.919 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:17,959.959 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:37:18,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:37:18,006.006 INFO    ] No camera update needed
[2026-08-25 21:37:18,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:37:18,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:37:18,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:37:18,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:37:20,061.061 INFO    ] ================================================
[2026-08-25 21:37:20,077.077 INFO    ] Launching Daemon at Tue Aug 25 21:37:20 IST 2026
[2026-08-25 21:37:20,088.088 INFO    ] ================================================
[2026-08-25 21:37:20,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:37:20
[2026-08-25 21:37:21,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:37:21,548.548 INFO    ] Initializing speech engine...
[2026-08-25 21:37:21,558.558 INFO    ] 2026-08-25 21:37:21
[2026-08-25 21:37:21,818.818 INFO    ] 2026-08-25 21:37:21
[2026-08-25 21:37:21,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:37:22,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:37:22,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:37:22,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:37:22,279.279 INFO    ] time= 25/08/2026 21:37:22
[2026-08-25 21:37:22,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:37:22,370.370 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:37:22,505.505 INFO    ] No existing commands found in stream
[2026-08-25 21:37:27,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:37:27,533.533 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 21:37:31,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:37:31,241.241 INFO    ] Checking for system updates...
[2026-08-25 21:37:31,278.278 INFO    ] 200
[2026-08-25 21:37:31,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:31,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:37:31,339.339 INFO    ] No update needed
[2026-08-25 21:37:31,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 21:37:31,380.380 INFO    ] 200
[2026-08-25 21:37:31,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:31,425.425 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:37:31,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:37:31,478.478 INFO    ] No camera update needed
[2026-08-25 21:37:31,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:37:31,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:37:31,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:37:31,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:37:33,536.536 INFO    ] ================================================
[2026-08-25 21:37:33,552.552 INFO    ] Launching Daemon at Tue Aug 25 21:37:33 IST 2026
[2026-08-25 21:37:33,563.563 INFO    ] ================================================
[2026-08-25 21:37:34,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:37:34
[2026-08-25 21:37:34,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:37:35,046.046 INFO    ] Initializing speech engine...
[2026-08-25 21:37:35,055.055 INFO    ] 2026-08-25 21:37:35
[2026-08-25 21:37:35,303.303 INFO    ] 2026-08-25 21:37:35
[2026-08-25 21:37:35,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:37:35,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:37:35,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:37:35,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:37:35,785.785 INFO    ] time= 25/08/2026 21:37:35
[2026-08-25 21:37:35,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:37:35,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:37:36,024.024 INFO    ] No existing commands found in stream
[2026-08-25 21:37:41,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:37:41,047.047 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 21:37:44,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:37:44,287.287 INFO    ] Checking for system updates...
[2026-08-25 21:37:44,324.324 INFO    ] 200
[2026-08-25 21:37:44,327.327 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:44,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:37:44,390.390 INFO    ] No update needed
[2026-08-25 21:37:44,392.392 INFO    ] Checking for camera pi updates...
[2026-08-25 21:37:44,426.426 INFO    ] 200
[2026-08-25 21:37:44,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:44,468.468 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:37:44,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:37:44,520.520 INFO    ] No camera update needed
[2026-08-25 21:37:44,523.523 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:37:44,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:37:44,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:37:44,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:37:46,577.577 INFO    ] ================================================
[2026-08-25 21:37:46,593.593 INFO    ] Launching Daemon at Tue Aug 25 21:37:46 IST 2026
[2026-08-25 21:37:46,603.603 INFO    ] ================================================
[2026-08-25 21:37:47,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:37:47
[2026-08-25 21:37:47,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:37:48,003.003 INFO    ] Initializing speech engine...
[2026-08-25 21:37:48,016.016 INFO    ] 2026-08-25 21:37:48
[2026-08-25 21:37:48,277.277 INFO    ] 2026-08-25 21:37:48
[2026-08-25 21:37:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:37:48,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:37:48,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:37:48,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:37:48,755.755 INFO    ] time= 25/08/2026 21:37:48
[2026-08-25 21:37:48,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:37:48,841.841 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:37:48,974.974 INFO    ] No existing commands found in stream
[2026-08-25 21:37:53,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:37:54,001.001 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-08-25 21:37:55,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:37:55,388.388 INFO    ] Checking for system updates...
[2026-08-25 21:37:55,423.423 INFO    ] 200
[2026-08-25 21:37:55,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:55,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:37:55,481.481 INFO    ] No update needed
[2026-08-25 21:37:55,483.483 INFO    ] Checking for camera pi updates...
[2026-08-25 21:37:55,517.517 INFO    ] 200
[2026-08-25 21:37:55,519.519 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:37:55,559.559 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:37:55,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:37:55,615.615 INFO    ] No camera update needed
[2026-08-25 21:37:55,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:37:55,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:37:55,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:37:55,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:37:57,675.675 INFO    ] ================================================
[2026-08-25 21:37:57,690.690 INFO    ] Launching Daemon at Tue Aug 25 21:37:57 IST 2026
[2026-08-25 21:37:57,702.702 INFO    ] ================================================
[2026-08-25 21:37:58,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:37:58
[2026-08-25 21:37:58,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:37:59,157.157 INFO    ] Initializing speech engine...
[2026-08-25 21:37:59,170.170 INFO    ] 2026-08-25 21:37:59
[2026-08-25 21:37:59,436.436 INFO    ] 2026-08-25 21:37:59
[2026-08-25 21:37:59,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:37:59,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:37:59,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:37:59,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:37:59,926.926 INFO    ] time= 25/08/2026 21:37:59
[2026-08-25 21:37:59,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:38:00,009.009 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:38:00,130.130 INFO    ] No existing commands found in stream
[2026-08-25 21:38:05,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:38:05,168.168 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 21:38:08,097.097 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:38:08,099.099 INFO    ] Checking for system updates...
[2026-08-25 21:38:08,135.135 INFO    ] 200
[2026-08-25 21:38:08,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:08,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:38:08,196.196 INFO    ] No update needed
[2026-08-25 21:38:08,198.198 INFO    ] Checking for camera pi updates...
[2026-08-25 21:38:08,232.232 INFO    ] 200
[2026-08-25 21:38:08,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:08,281.281 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:38:08,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:38:08,426.426 INFO    ] No camera update needed
[2026-08-25 21:38:08,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:38:08,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:38:08,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:38:08,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:38:10,482.482 INFO    ] ================================================
[2026-08-25 21:38:10,498.498 INFO    ] Launching Daemon at Tue Aug 25 21:38:10 IST 2026
[2026-08-25 21:38:10,509.509 INFO    ] ================================================
[2026-08-25 21:38:11,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:38:11
[2026-08-25 21:38:11,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:38:11,910.910 INFO    ] Initializing speech engine...
[2026-08-25 21:38:11,923.923 INFO    ] 2026-08-25 21:38:11
[2026-08-25 21:38:12,187.187 INFO    ] 2026-08-25 21:38:12
[2026-08-25 21:38:12,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:38:12,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:38:12,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:38:12,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:38:12,560.560 INFO    ] time= 25/08/2026 21:38:12
[2026-08-25 21:38:12,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:38:12,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:38:12,736.736 INFO    ] No existing commands found in stream
[2026-08-25 21:38:17,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:38:17,765.765 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-08-25 21:38:21,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:38:21,633.633 INFO    ] Checking for system updates...
[2026-08-25 21:38:21,669.669 INFO    ] 200
[2026-08-25 21:38:21,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:21,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:38:21,734.734 INFO    ] No update needed
[2026-08-25 21:38:21,736.736 INFO    ] Checking for camera pi updates...
[2026-08-25 21:38:21,769.769 INFO    ] 200
[2026-08-25 21:38:21,772.772 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:21,814.814 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:38:21,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:38:21,862.862 INFO    ] No camera update needed
[2026-08-25 21:38:21,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:38:21,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:38:21,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:38:21,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:38:23,918.918 INFO    ] ================================================
[2026-08-25 21:38:23,933.933 INFO    ] Launching Daemon at Tue Aug 25 21:38:23 IST 2026
[2026-08-25 21:38:23,944.944 INFO    ] ================================================
[2026-08-25 21:38:24,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:38:24
[2026-08-25 21:38:25,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:38:25,607.607 INFO    ] Initializing speech engine...
[2026-08-25 21:38:25,616.616 INFO    ] 2026-08-25 21:38:25
[2026-08-25 21:38:25,888.888 INFO    ] 2026-08-25 21:38:25
[2026-08-25 21:38:25,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:38:26,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:38:26,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:38:26,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:38:26,445.445 INFO    ] time= 25/08/2026 21:38:26
[2026-08-25 21:38:26,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:38:26,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:38:26,595.595 INFO    ] No existing commands found in stream
[2026-08-25 21:38:31,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:38:31,625.625 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 21:38:33,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:38:33,194.194 INFO    ] Checking for system updates...
[2026-08-25 21:38:33,229.229 INFO    ] 200
[2026-08-25 21:38:33,231.231 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:33,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:38:33,296.296 INFO    ] No update needed
[2026-08-25 21:38:33,299.299 INFO    ] Checking for camera pi updates...
[2026-08-25 21:38:33,339.339 INFO    ] 200
[2026-08-25 21:38:33,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:33,382.382 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:38:33,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:38:33,429.429 INFO    ] No camera update needed
[2026-08-25 21:38:33,431.431 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:38:33,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:38:33,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:38:33,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:38:35,484.484 INFO    ] ================================================
[2026-08-25 21:38:35,499.499 INFO    ] Launching Daemon at Tue Aug 25 21:38:35 IST 2026
[2026-08-25 21:38:35,510.510 INFO    ] ================================================
[2026-08-25 21:38:36,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:38:36
[2026-08-25 21:38:36,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:38:37,171.171 INFO    ] Initializing speech engine...
[2026-08-25 21:38:37,184.184 INFO    ] 2026-08-25 21:38:37
[2026-08-25 21:38:37,464.464 INFO    ] 2026-08-25 21:38:37
[2026-08-25 21:38:37,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:38:37,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:38:37,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:38:37,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:38:38,001.001 INFO    ] time= 25/08/2026 21:38:37
[2026-08-25 21:38:38,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:38:38,037.037 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:38:38,180.180 INFO    ] No existing commands found in stream
[2026-08-25 21:38:43,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:38:43,210.210 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 21:38:44,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:38:44,738.738 INFO    ] Checking for system updates...
[2026-08-25 21:38:44,779.779 INFO    ] 200
[2026-08-25 21:38:44,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:44,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:38:44,838.838 INFO    ] No update needed
[2026-08-25 21:38:44,841.841 INFO    ] Checking for camera pi updates...
[2026-08-25 21:38:44,879.879 INFO    ] 200
[2026-08-25 21:38:44,882.882 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:44,924.924 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:38:44,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:38:44,976.976 INFO    ] No camera update needed
[2026-08-25 21:38:44,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:38:44,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:38:44,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:38:44,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:38:47,034.034 INFO    ] ================================================
[2026-08-25 21:38:47,049.049 INFO    ] Launching Daemon at Tue Aug 25 21:38:47 IST 2026
[2026-08-25 21:38:47,059.059 INFO    ] ================================================
[2026-08-25 21:38:47,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:38:47
[2026-08-25 21:38:48,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:38:48,503.503 INFO    ] Initializing speech engine...
[2026-08-25 21:38:48,512.512 INFO    ] 2026-08-25 21:38:48
[2026-08-25 21:38:48,810.810 INFO    ] 2026-08-25 21:38:48
[2026-08-25 21:38:48,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:38:49,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:38:49,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:38:49,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:38:49,212.212 INFO    ] time= 25/08/2026 21:38:49
[2026-08-25 21:38:49,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:38:49,243.243 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:38:49,365.365 INFO    ] No existing commands found in stream
[2026-08-25 21:38:54,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:38:54,398.398 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 21:38:57,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:38:57,672.672 INFO    ] Checking for system updates...
[2026-08-25 21:38:57,709.709 INFO    ] 200
[2026-08-25 21:38:57,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:57,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:38:57,776.776 INFO    ] No update needed
[2026-08-25 21:38:57,779.779 INFO    ] Checking for camera pi updates...
[2026-08-25 21:38:57,817.817 INFO    ] 200
[2026-08-25 21:38:57,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:38:57,867.867 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:38:57,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:38:57,921.921 INFO    ] No camera update needed
[2026-08-25 21:38:57,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:38:57,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:38:57,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:38:57,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:38:59,979.979 INFO    ] ================================================
[2026-08-25 21:38:59,994.994 INFO    ] Launching Daemon at Tue Aug 25 21:38:59 IST 2026
[2026-08-25 21:39:00,004.004 INFO    ] ================================================
[2026-08-25 21:39:00,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:39:00
[2026-08-25 21:39:01,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:39:01,457.457 INFO    ] Initializing speech engine...
[2026-08-25 21:39:01,463.463 INFO    ] 2026-08-25 21:39:01
[2026-08-25 21:39:01,724.724 INFO    ] 2026-08-25 21:39:01
[2026-08-25 21:39:01,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:39:01,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:39:02,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:39:02,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:39:02,159.159 INFO    ] time= 25/08/2026 21:39:02
[2026-08-25 21:39:02,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:39:02,167.167 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:39:02,223.223 INFO    ] No existing commands found in stream
[2026-08-25 21:39:07,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:39:07,236.236 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 21:39:09,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:39:09,377.377 INFO    ] Checking for system updates...
[2026-08-25 21:39:09,412.412 INFO    ] 200
[2026-08-25 21:39:09,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:09,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:39:09,471.471 INFO    ] No update needed
[2026-08-25 21:39:09,473.473 INFO    ] Checking for camera pi updates...
[2026-08-25 21:39:09,507.507 INFO    ] 200
[2026-08-25 21:39:09,509.509 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:09,557.557 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:39:09,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:39:09,612.612 INFO    ] No camera update needed
[2026-08-25 21:39:09,614.614 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:39:09,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:39:09,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:39:09,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:39:11,668.668 INFO    ] ================================================
[2026-08-25 21:39:11,683.683 INFO    ] Launching Daemon at Tue Aug 25 21:39:11 IST 2026
[2026-08-25 21:39:11,693.693 INFO    ] ================================================
[2026-08-25 21:39:12,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:39:12
[2026-08-25 21:39:12,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:39:13,113.113 INFO    ] Initializing speech engine...
[2026-08-25 21:39:13,123.123 INFO    ] 2026-08-25 21:39:13
[2026-08-25 21:39:13,371.371 INFO    ] 2026-08-25 21:39:13
[2026-08-25 21:39:13,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:39:13,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:39:13,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:39:13,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:39:13,746.746 INFO    ] time= 25/08/2026 21:39:13
[2026-08-25 21:39:13,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:39:13,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:39:13,933.933 INFO    ] No existing commands found in stream
[2026-08-25 21:39:18,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:39:18,960.960 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 21:39:22,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:39:22,857.857 INFO    ] Checking for system updates...
[2026-08-25 21:39:22,892.892 INFO    ] 200
[2026-08-25 21:39:22,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:22,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:39:22,951.951 INFO    ] No update needed
[2026-08-25 21:39:22,953.953 INFO    ] Checking for camera pi updates...
[2026-08-25 21:39:22,989.989 INFO    ] 200
[2026-08-25 21:39:22,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:23,035.035 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:39:23,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:39:23,091.091 INFO    ] No camera update needed
[2026-08-25 21:39:23,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:39:23,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:39:23,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:39:23,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:39:25,146.146 INFO    ] ================================================
[2026-08-25 21:39:25,161.161 INFO    ] Launching Daemon at Tue Aug 25 21:39:25 IST 2026
[2026-08-25 21:39:25,172.172 INFO    ] ================================================
[2026-08-25 21:39:25,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:39:25
[2026-08-25 21:39:26,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:39:26,810.810 INFO    ] Initializing speech engine...
[2026-08-25 21:39:26,824.824 INFO    ] 2026-08-25 21:39:26
[2026-08-25 21:39:27,138.138 INFO    ] 2026-08-25 21:39:27
[2026-08-25 21:39:27,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:39:27,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:39:27,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:39:27,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:39:27,643.643 INFO    ] time= 25/08/2026 21:39:27
[2026-08-25 21:39:27,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:39:27,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:39:27,842.842 INFO    ] No existing commands found in stream
[2026-08-25 21:39:32,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:39:32,872.872 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 21:39:34,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:39:34,323.323 INFO    ] Checking for system updates...
[2026-08-25 21:39:34,359.359 INFO    ] 200
[2026-08-25 21:39:34,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:34,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:39:34,416.416 INFO    ] No update needed
[2026-08-25 21:39:34,420.420 INFO    ] Checking for camera pi updates...
[2026-08-25 21:39:34,454.454 INFO    ] 200
[2026-08-25 21:39:34,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:34,497.497 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:39:34,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:39:34,550.550 INFO    ] No camera update needed
[2026-08-25 21:39:34,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:39:34,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:39:34,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:39:34,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:39:36,606.606 INFO    ] ================================================
[2026-08-25 21:39:36,621.621 INFO    ] Launching Daemon at Tue Aug 25 21:39:36 IST 2026
[2026-08-25 21:39:36,632.632 INFO    ] ================================================
[2026-08-25 21:39:37,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:39:37
[2026-08-25 21:39:37,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:39:38,105.105 INFO    ] Initializing speech engine...
[2026-08-25 21:39:38,114.114 INFO    ] 2026-08-25 21:39:38
[2026-08-25 21:39:38,384.384 INFO    ] 2026-08-25 21:39:38
[2026-08-25 21:39:38,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:39:38,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:39:38,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:39:38,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:39:38,766.766 INFO    ] time= 25/08/2026 21:39:38
[2026-08-25 21:39:38,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:39:38,806.806 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:39:38,891.891 INFO    ] No existing commands found in stream
[2026-08-25 21:39:43,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:39:43,906.906 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 21:39:44,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:39:44,502.502 INFO    ] Checking for system updates...
[2026-08-25 21:39:44,537.537 INFO    ] 200
[2026-08-25 21:39:44,540.540 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:44,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:39:44,595.595 INFO    ] No update needed
[2026-08-25 21:39:44,597.597 INFO    ] Checking for camera pi updates...
[2026-08-25 21:39:44,631.631 INFO    ] 200
[2026-08-25 21:39:44,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:44,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:39:44,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:39:44,720.720 INFO    ] No camera update needed
[2026-08-25 21:39:44,722.722 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:39:44,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:39:44,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:39:44,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:39:46,777.777 INFO    ] ================================================
[2026-08-25 21:39:46,792.792 INFO    ] Launching Daemon at Tue Aug 25 21:39:46 IST 2026
[2026-08-25 21:39:46,802.802 INFO    ] ================================================
[2026-08-25 21:39:47,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:39:47
[2026-08-25 21:39:47,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:39:48,208.208 INFO    ] Initializing speech engine...
[2026-08-25 21:39:48,216.216 INFO    ] 2026-08-25 21:39:48
[2026-08-25 21:39:48,515.515 INFO    ] 2026-08-25 21:39:48
[2026-08-25 21:39:48,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:39:48,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:39:48,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:39:48,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:39:48,869.869 INFO    ] time= 25/08/2026 21:39:48
[2026-08-25 21:39:48,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:39:48,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:39:49,023.023 INFO    ] No existing commands found in stream
[2026-08-25 21:39:54,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:39:54,036.036 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 21:39:55,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:39:55,843.843 INFO    ] Checking for system updates...
[2026-08-25 21:39:55,892.892 INFO    ] 200
[2026-08-25 21:39:55,894.894 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:55,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:39:55,949.949 INFO    ] No update needed
[2026-08-25 21:39:55,951.951 INFO    ] Checking for camera pi updates...
[2026-08-25 21:39:55,984.984 INFO    ] 200
[2026-08-25 21:39:55,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:39:56,027.027 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:39:56,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:39:56,074.074 INFO    ] No camera update needed
[2026-08-25 21:39:56,077.077 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:39:56,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:39:56,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:39:56,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:39:58,129.129 INFO    ] ================================================
[2026-08-25 21:39:58,144.144 INFO    ] Launching Daemon at Tue Aug 25 21:39:58 IST 2026
[2026-08-25 21:39:58,155.155 INFO    ] ================================================
[2026-08-25 21:39:58,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:39:58
[2026-08-25 21:39:59,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:39:59,599.599 INFO    ] Initializing speech engine...
[2026-08-25 21:39:59,625.625 INFO    ] 2026-08-25 21:39:59
[2026-08-25 21:39:59,902.902 INFO    ] 2026-08-25 21:39:59
[2026-08-25 21:39:59,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:40:00,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:40:00,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:40:00,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:40:00,321.321 INFO    ] time= 25/08/2026 21:40:00
[2026-08-25 21:40:00,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:40:00,337.337 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:40:00,411.411 INFO    ] No existing commands found in stream
[2026-08-25 21:40:05,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:40:05,427.427 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 21:40:08,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:40:08,264.264 INFO    ] Checking for system updates...
[2026-08-25 21:40:08,300.300 INFO    ] 200
[2026-08-25 21:40:08,302.302 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:08,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:08,357.357 INFO    ] No update needed
[2026-08-25 21:40:08,359.359 INFO    ] Checking for camera pi updates...
[2026-08-25 21:40:08,393.393 INFO    ] 200
[2026-08-25 21:40:08,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:08,435.435 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:40:08,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:08,483.483 INFO    ] No camera update needed
[2026-08-25 21:40:08,485.485 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:40:08,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:40:08,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:40:08,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:40:10,540.540 INFO    ] ================================================
[2026-08-25 21:40:10,555.555 INFO    ] Launching Daemon at Tue Aug 25 21:40:10 IST 2026
[2026-08-25 21:40:10,566.566 INFO    ] ================================================
[2026-08-25 21:40:11,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:40:11
[2026-08-25 21:40:11,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:40:12,027.027 INFO    ] Initializing speech engine...
[2026-08-25 21:40:12,033.033 INFO    ] 2026-08-25 21:40:12
[2026-08-25 21:40:12,293.293 INFO    ] 2026-08-25 21:40:12
[2026-08-25 21:40:12,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:40:12,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:40:12,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:40:12,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:40:12,765.765 INFO    ] time= 25/08/2026 21:40:12
[2026-08-25 21:40:12,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:40:12,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:40:12,965.965 INFO    ] No existing commands found in stream
[2026-08-25 21:40:17,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:40:17,999.999 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 21:40:19,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:40:19,126.126 INFO    ] Checking for system updates...
[2026-08-25 21:40:19,161.161 INFO    ] 200
[2026-08-25 21:40:19,164.164 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:19,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:19,218.218 INFO    ] No update needed
[2026-08-25 21:40:19,221.221 INFO    ] Checking for camera pi updates...
[2026-08-25 21:40:19,254.254 INFO    ] 200
[2026-08-25 21:40:19,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:19,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:40:19,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:19,451.451 INFO    ] No camera update needed
[2026-08-25 21:40:19,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:40:19,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:40:19,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:40:19,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:40:21,507.507 INFO    ] ================================================
[2026-08-25 21:40:21,523.523 INFO    ] Launching Daemon at Tue Aug 25 21:40:21 IST 2026
[2026-08-25 21:40:21,534.534 INFO    ] ================================================
[2026-08-25 21:40:22,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:40:22
[2026-08-25 21:40:22,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:40:22,989.989 INFO    ] Initializing speech engine...
[2026-08-25 21:40:22,995.995 INFO    ] 2026-08-25 21:40:22
[2026-08-25 21:40:23,296.296 INFO    ] 2026-08-25 21:40:23
[2026-08-25 21:40:23,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:40:23,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:40:23,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:40:23,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:40:23,682.682 INFO    ] time= 25/08/2026 21:40:23
[2026-08-25 21:40:23,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:40:23,725.725 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:40:23,812.812 INFO    ] No existing commands found in stream
[2026-08-25 21:40:28,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:40:28,830.830 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 21:40:33,219.219 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:40:33,222.222 INFO    ] Checking for system updates...
[2026-08-25 21:40:33,257.257 INFO    ] 200
[2026-08-25 21:40:33,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:33,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:33,315.315 INFO    ] No update needed
[2026-08-25 21:40:33,318.318 INFO    ] Checking for camera pi updates...
[2026-08-25 21:40:33,356.356 INFO    ] 200
[2026-08-25 21:40:33,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:33,402.402 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:40:33,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:33,450.450 INFO    ] No camera update needed
[2026-08-25 21:40:33,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:40:33,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:40:33,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:40:33,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:40:35,509.509 INFO    ] ================================================
[2026-08-25 21:40:35,524.524 INFO    ] Launching Daemon at Tue Aug 25 21:40:35 IST 2026
[2026-08-25 21:40:35,535.535 INFO    ] ================================================
[2026-08-25 21:40:36,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:40:36
[2026-08-25 21:40:36,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:40:36,972.972 INFO    ] Initializing speech engine...
[2026-08-25 21:40:36,983.983 INFO    ] 2026-08-25 21:40:36
[2026-08-25 21:40:37,265.265 INFO    ] 2026-08-25 21:40:37
[2026-08-25 21:40:37,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:40:37,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:40:37,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:40:37,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:40:37,828.828 INFO    ] time= 25/08/2026 21:40:37
[2026-08-25 21:40:37,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:40:37,854.854 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:40:37,988.988 INFO    ] No existing commands found in stream
[2026-08-25 21:40:43,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:40:43,020.020 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 21:40:44,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:40:44,627.627 INFO    ] Checking for system updates...
[2026-08-25 21:40:44,663.663 INFO    ] 200
[2026-08-25 21:40:44,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:44,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:44,723.723 INFO    ] No update needed
[2026-08-25 21:40:44,726.726 INFO    ] Checking for camera pi updates...
[2026-08-25 21:40:44,761.761 INFO    ] 200
[2026-08-25 21:40:44,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:44,805.805 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:40:44,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:40:44,852.852 INFO    ] No camera update needed
[2026-08-25 21:40:44,855.855 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:40:44,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:40:44,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:40:44,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:40:46,910.910 INFO    ] ================================================
[2026-08-25 21:40:46,925.925 INFO    ] Launching Daemon at Tue Aug 25 21:40:46 IST 2026
[2026-08-25 21:40:46,936.936 INFO    ] ================================================
[2026-08-25 21:40:47,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:40:47
[2026-08-25 21:40:48,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:40:48,581.581 INFO    ] Initializing speech engine...
[2026-08-25 21:40:48,595.595 INFO    ] 2026-08-25 21:40:48
[2026-08-25 21:40:48,909.909 INFO    ] 2026-08-25 21:40:48
[2026-08-25 21:40:48,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:40:49,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:40:49,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:40:49,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:40:49,413.413 INFO    ] time= 25/08/2026 21:40:49
[2026-08-25 21:40:49,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:40:49,462.462 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:40:49,570.570 INFO    ] No existing commands found in stream
[2026-08-25 21:40:54,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:40:54,603.603 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 21:40:57,153.153 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:40:57,155.155 INFO    ] Checking for system updates...
[2026-08-25 21:40:57,192.192 INFO    ] 200
[2026-08-25 21:40:57,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:57,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:40:57,249.249 INFO    ] No update needed
[2026-08-25 21:40:57,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 21:40:57,284.284 INFO    ] 200
[2026-08-25 21:40:57,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:40:57,326.326 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:40:57,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:40:57,374.374 INFO    ] No camera update needed
[2026-08-25 21:40:57,376.376 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:40:57,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:40:57,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:40:57,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:40:59,429.429 INFO    ] ================================================
[2026-08-25 21:40:59,444.444 INFO    ] Launching Daemon at Tue Aug 25 21:40:59 IST 2026
[2026-08-25 21:40:59,455.455 INFO    ] ================================================
[2026-08-25 21:41:00,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:41:00
[2026-08-25 21:41:00,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:41:00,881.881 INFO    ] Initializing speech engine...
[2026-08-25 21:41:00,901.901 INFO    ] 2026-08-25 21:41:00
[2026-08-25 21:41:01,152.152 INFO    ] 2026-08-25 21:41:01
[2026-08-25 21:41:01,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:41:01,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:41:01,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:41:01,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:41:01,636.636 INFO    ] time= 25/08/2026 21:41:01
[2026-08-25 21:41:01,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:41:01,645.645 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:41:01,724.724 INFO    ] No existing commands found in stream
[2026-08-25 21:41:06,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:41:06,737.737 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 21:41:08,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:41:08,914.914 INFO    ] Checking for system updates...
[2026-08-25 21:41:08,949.949 INFO    ] 200
[2026-08-25 21:41:08,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:09,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:09,006.006 INFO    ] No update needed
[2026-08-25 21:41:09,009.009 INFO    ] Checking for camera pi updates...
[2026-08-25 21:41:09,043.043 INFO    ] 200
[2026-08-25 21:41:09,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:09,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:41:09,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:09,142.142 INFO    ] No camera update needed
[2026-08-25 21:41:09,144.144 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:41:09,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:41:09,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:41:09,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:41:11,200.200 INFO    ] ================================================
[2026-08-25 21:41:11,217.217 INFO    ] Launching Daemon at Tue Aug 25 21:41:11 IST 2026
[2026-08-25 21:41:11,228.228 INFO    ] ================================================
[2026-08-25 21:41:11,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:41:11
[2026-08-25 21:41:12,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:41:12,794.794 INFO    ] Initializing speech engine...
[2026-08-25 21:41:12,806.806 INFO    ] 2026-08-25 21:41:12
[2026-08-25 21:41:13,117.117 INFO    ] 2026-08-25 21:41:13
[2026-08-25 21:41:13,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:41:13,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:41:13,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:41:13,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:41:13,639.639 INFO    ] time= 25/08/2026 21:41:13
[2026-08-25 21:41:13,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:41:13,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:41:13,806.806 INFO    ] No existing commands found in stream
[2026-08-25 21:41:18,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:41:18,836.836 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 21:41:22,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:41:22,004.004 INFO    ] Checking for system updates...
[2026-08-25 21:41:22,041.041 INFO    ] 200
[2026-08-25 21:41:22,044.044 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:22,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:41:22,101.101 INFO    ] No update needed
[2026-08-25 21:41:22,103.103 INFO    ] Checking for camera pi updates...
[2026-08-25 21:41:22,138.138 INFO    ] 200
[2026-08-25 21:41:22,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:22,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:41:22,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:41:22,232.232 INFO    ] No camera update needed
[2026-08-25 21:41:22,235.235 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:41:22,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:41:22,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:41:22,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:41:24,292.292 INFO    ] ================================================
[2026-08-25 21:41:24,307.307 INFO    ] Launching Daemon at Tue Aug 25 21:41:24 IST 2026
[2026-08-25 21:41:24,318.318 INFO    ] ================================================
[2026-08-25 21:41:24,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:41:24
[2026-08-25 21:41:25,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:41:25,736.736 INFO    ] Initializing speech engine...
[2026-08-25 21:41:25,744.744 INFO    ] 2026-08-25 21:41:25
[2026-08-25 21:41:25,987.987 INFO    ] 2026-08-25 21:41:25
[2026-08-25 21:41:26,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:41:26,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:41:26,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:41:26,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:41:26,456.456 INFO    ] time= 25/08/2026 21:41:26
[2026-08-25 21:41:26,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:41:26,551.551 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:41:26,692.692 INFO    ] No existing commands found in stream
[2026-08-25 21:41:31,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:41:31,720.720 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 21:41:35,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:41:35,265.265 INFO    ] Checking for system updates...
[2026-08-25 21:41:35,300.300 INFO    ] 200
[2026-08-25 21:41:35,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:35,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:35,358.358 INFO    ] No update needed
[2026-08-25 21:41:35,361.361 INFO    ] Checking for camera pi updates...
[2026-08-25 21:41:35,395.395 INFO    ] 200
[2026-08-25 21:41:35,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:35,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:41:35,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:35,489.489 INFO    ] No camera update needed
[2026-08-25 21:41:35,491.491 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:41:35,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:41:35,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:41:35,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:41:37,543.543 INFO    ] ================================================
[2026-08-25 21:41:37,558.558 INFO    ] Launching Daemon at Tue Aug 25 21:41:37 IST 2026
[2026-08-25 21:41:37,569.569 INFO    ] ================================================
[2026-08-25 21:41:38,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:41:38
[2026-08-25 21:41:38,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:41:38,985.985 INFO    ] Initializing speech engine...
[2026-08-25 21:41:38,995.995 INFO    ] 2026-08-25 21:41:38
[2026-08-25 21:41:39,239.239 INFO    ] 2026-08-25 21:41:39
[2026-08-25 21:41:39,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:41:39,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:41:39,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:41:39,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:41:39,710.710 INFO    ] time= 25/08/2026 21:41:39
[2026-08-25 21:41:39,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:41:39,795.795 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:41:39,923.923 INFO    ] No existing commands found in stream
[2026-08-25 21:41:44,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:41:44,953.953 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 21:41:45,793.793 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:41:45,796.796 INFO    ] Checking for system updates...
[2026-08-25 21:41:45,831.831 INFO    ] 200
[2026-08-25 21:41:45,834.834 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:45,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:45,896.896 INFO    ] No update needed
[2026-08-25 21:41:45,898.898 INFO    ] Checking for camera pi updates...
[2026-08-25 21:41:45,939.939 INFO    ] 200
[2026-08-25 21:41:45,942.942 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:45,982.982 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:41:46,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:46,043.043 INFO    ] No camera update needed
[2026-08-25 21:41:46,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:41:46,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:41:46,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:41:46,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:41:48,099.099 INFO    ] ================================================
[2026-08-25 21:41:48,115.115 INFO    ] Launching Daemon at Tue Aug 25 21:41:48 IST 2026
[2026-08-25 21:41:48,126.126 INFO    ] ================================================
[2026-08-25 21:41:48,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:41:48
[2026-08-25 21:41:49,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:41:49,716.716 INFO    ] Initializing speech engine...
[2026-08-25 21:41:49,728.728 INFO    ] 2026-08-25 21:41:49
[2026-08-25 21:41:49,995.995 INFO    ] 2026-08-25 21:41:49
[2026-08-25 21:41:50,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:41:50,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:41:50,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:41:50,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:41:50,381.381 INFO    ] time= 25/08/2026 21:41:50
[2026-08-25 21:41:50,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:41:50,427.427 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:41:50,530.530 INFO    ] No existing commands found in stream
[2026-08-25 21:41:55,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:41:55,564.564 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 21:41:58,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:41:58,115.115 INFO    ] Checking for system updates...
[2026-08-25 21:41:58,150.150 INFO    ] 200
[2026-08-25 21:41:58,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:58,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:58,206.206 INFO    ] No update needed
[2026-08-25 21:41:58,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 21:41:58,241.241 INFO    ] 200
[2026-08-25 21:41:58,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:41:58,284.284 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:41:58,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:41:58,329.329 INFO    ] No camera update needed
[2026-08-25 21:41:58,331.331 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:41:58,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:41:58,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:41:58,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:42:00,383.383 INFO    ] ================================================
[2026-08-25 21:42:00,399.399 INFO    ] Launching Daemon at Tue Aug 25 21:42:00 IST 2026
[2026-08-25 21:42:00,410.410 INFO    ] ================================================
[2026-08-25 21:42:01,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:42:01
[2026-08-25 21:42:01,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:42:02,190.190 INFO    ] Initializing speech engine...
[2026-08-25 21:42:02,200.200 INFO    ] 2026-08-25 21:42:02
[2026-08-25 21:42:02,534.534 INFO    ] 2026-08-25 21:42:02
[2026-08-25 21:42:02,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:42:02,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:42:02,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:42:02,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:42:02,972.972 INFO    ] time= 25/08/2026 21:42:02
[2026-08-25 21:42:03,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:42:03,063.063 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:42:03,160.160 INFO    ] No existing commands found in stream
[2026-08-25 21:42:08,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:42:08,174.174 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 21:42:08,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:42:08,638.638 INFO    ] Checking for system updates...
[2026-08-25 21:42:08,675.675 INFO    ] 200
[2026-08-25 21:42:08,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:08,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:42:08,732.732 INFO    ] No update needed
[2026-08-25 21:42:08,735.735 INFO    ] Checking for camera pi updates...
[2026-08-25 21:42:08,768.768 INFO    ] 200
[2026-08-25 21:42:08,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:08,824.824 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:42:08,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:42:08,874.874 INFO    ] No camera update needed
[2026-08-25 21:42:08,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:42:08,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:42:08,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:42:08,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:42:10,929.929 INFO    ] ================================================
[2026-08-25 21:42:10,944.944 INFO    ] Launching Daemon at Tue Aug 25 21:42:10 IST 2026
[2026-08-25 21:42:10,956.956 INFO    ] ================================================
[2026-08-25 21:42:11,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:42:11
[2026-08-25 21:42:12,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:42:12,535.535 INFO    ] Initializing speech engine...
[2026-08-25 21:42:12,543.543 INFO    ] 2026-08-25 21:42:12
[2026-08-25 21:42:12,863.863 INFO    ] 2026-08-25 21:42:12
[2026-08-25 21:42:12,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:42:13,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:42:13,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:42:13,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:42:13,362.362 INFO    ] time= 25/08/2026 21:42:13
[2026-08-25 21:42:13,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:42:13,390.390 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:42:13,514.514 INFO    ] No existing commands found in stream
[2026-08-25 21:42:18,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:42:18,534.534 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 21:42:19,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:42:19,705.705 INFO    ] Checking for system updates...
[2026-08-25 21:42:19,746.746 INFO    ] 200
[2026-08-25 21:42:19,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:19,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:42:19,816.816 INFO    ] No update needed
[2026-08-25 21:42:19,819.819 INFO    ] Checking for camera pi updates...
[2026-08-25 21:42:19,854.854 INFO    ] 200
[2026-08-25 21:42:19,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:19,899.899 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:42:19,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:42:19,954.954 INFO    ] No camera update needed
[2026-08-25 21:42:19,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:42:19,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:42:19,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:42:19,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:42:22,013.013 INFO    ] ================================================
[2026-08-25 21:42:22,036.036 INFO    ] Launching Daemon at Tue Aug 25 21:42:22 IST 2026
[2026-08-25 21:42:22,048.048 INFO    ] ================================================
[2026-08-25 21:42:22,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:42:22
[2026-08-25 21:42:23,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:42:23,464.464 INFO    ] Initializing speech engine...
[2026-08-25 21:42:23,473.473 INFO    ] 2026-08-25 21:42:23
[2026-08-25 21:42:23,746.746 INFO    ] 2026-08-25 21:42:23
[2026-08-25 21:42:23,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:42:24,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:42:24,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:42:24,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:42:24,204.204 INFO    ] time= 25/08/2026 21:42:24
[2026-08-25 21:42:24,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:42:24,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:42:24,444.444 INFO    ] No existing commands found in stream
[2026-08-25 21:42:29,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:42:29,468.468 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 21:42:38,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:42:38,041.041 INFO    ] Checking for system updates...
[2026-08-25 21:42:38,090.090 INFO    ] 200
[2026-08-25 21:42:38,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:38,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:42:38,154.154 INFO    ] No update needed
[2026-08-25 21:42:38,157.157 INFO    ] Checking for camera pi updates...
[2026-08-25 21:42:38,191.191 INFO    ] 200
[2026-08-25 21:42:38,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:38,235.235 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:42:38,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:42:38,293.293 INFO    ] No camera update needed
[2026-08-25 21:42:38,296.296 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:42:38,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:42:38,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:42:38,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:42:40,351.351 INFO    ] ================================================
[2026-08-25 21:42:40,367.367 INFO    ] Launching Daemon at Tue Aug 25 21:42:40 IST 2026
[2026-08-25 21:42:40,379.379 INFO    ] ================================================
[2026-08-25 21:42:40,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:42:40
[2026-08-25 21:42:41,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:42:41,909.909 INFO    ] Initializing speech engine...
[2026-08-25 21:42:41,918.918 INFO    ] 2026-08-25 21:42:41
[2026-08-25 21:42:42,204.204 INFO    ] 2026-08-25 21:42:42
[2026-08-25 21:42:42,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:42:42,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:42:42,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:42:42,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:42:42,736.736 INFO    ] time= 25/08/2026 21:42:42
[2026-08-25 21:42:42,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:42:42,764.764 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:42:42,894.894 INFO    ] No existing commands found in stream
[2026-08-25 21:42:47,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:42:47,911.911 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 21:42:51,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:42:51,635.635 INFO    ] Checking for system updates...
[2026-08-25 21:42:51,684.684 INFO    ] 200
[2026-08-25 21:42:51,687.687 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:51,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:42:51,743.743 INFO    ] No update needed
[2026-08-25 21:42:51,745.745 INFO    ] Checking for camera pi updates...
[2026-08-25 21:42:51,780.780 INFO    ] 200
[2026-08-25 21:42:51,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:42:51,823.823 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:42:51,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:42:51,870.870 INFO    ] No camera update needed
[2026-08-25 21:42:51,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:42:51,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:42:51,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:42:51,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:42:53,925.925 INFO    ] ================================================
[2026-08-25 21:42:53,941.941 INFO    ] Launching Daemon at Tue Aug 25 21:42:53 IST 2026
[2026-08-25 21:42:53,952.952 INFO    ] ================================================
[2026-08-25 21:42:54,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:42:54
[2026-08-25 21:42:55,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:42:55,439.439 INFO    ] Initializing speech engine...
[2026-08-25 21:42:55,460.460 INFO    ] 2026-08-25 21:42:55
[2026-08-25 21:42:55,727.727 INFO    ] 2026-08-25 21:42:55
[2026-08-25 21:42:55,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:42:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:42:55,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:42:56,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:42:56,108.108 INFO    ] time= 25/08/2026 21:42:56
[2026-08-25 21:42:56,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:42:56,148.148 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:42:56,233.233 INFO    ] No existing commands found in stream
[2026-08-25 21:43:01,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:43:01,253.253 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 21:43:06,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:43:06,825.825 INFO    ] Checking for system updates...
[2026-08-25 21:43:06,860.860 INFO    ] 200
[2026-08-25 21:43:06,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:06,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:06,922.922 INFO    ] No update needed
[2026-08-25 21:43:06,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 21:43:06,958.958 INFO    ] 200
[2026-08-25 21:43:06,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:07,000.000 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:43:07,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:07,062.062 INFO    ] No camera update needed
[2026-08-25 21:43:07,064.064 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:43:07,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:43:07,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:43:07,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:43:09,117.117 INFO    ] ================================================
[2026-08-25 21:43:09,132.132 INFO    ] Launching Daemon at Tue Aug 25 21:43:09 IST 2026
[2026-08-25 21:43:09,143.143 INFO    ] ================================================
[2026-08-25 21:43:09,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:43:09
[2026-08-25 21:43:10,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:43:10,564.564 INFO    ] Initializing speech engine...
[2026-08-25 21:43:10,572.572 INFO    ] 2026-08-25 21:43:10
[2026-08-25 21:43:10,866.866 INFO    ] 2026-08-25 21:43:10
[2026-08-25 21:43:10,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:43:11,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:43:11,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:43:11,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:43:11,262.262 INFO    ] time= 25/08/2026 21:43:11
[2026-08-25 21:43:11,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:43:11,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:43:11,370.370 INFO    ] No existing commands found in stream
[2026-08-25 21:43:16,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:43:16,384.384 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-08-25 21:43:19,793.793 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:43:19,796.796 INFO    ] Checking for system updates...
[2026-08-25 21:43:19,836.836 INFO    ] 200
[2026-08-25 21:43:19,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:19,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:19,895.895 INFO    ] No update needed
[2026-08-25 21:43:19,897.897 INFO    ] Checking for camera pi updates...
[2026-08-25 21:43:19,931.931 INFO    ] 200
[2026-08-25 21:43:19,933.933 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:19,974.974 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:43:20,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:20,025.025 INFO    ] No camera update needed
[2026-08-25 21:43:20,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:43:20,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:43:20,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:43:20,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:43:22,080.080 INFO    ] ================================================
[2026-08-25 21:43:22,096.096 INFO    ] Launching Daemon at Tue Aug 25 21:43:22 IST 2026
[2026-08-25 21:43:22,108.108 INFO    ] ================================================
[2026-08-25 21:43:22,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:43:22
[2026-08-25 21:43:23,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:43:23,734.734 INFO    ] Initializing speech engine...
[2026-08-25 21:43:23,742.742 INFO    ] 2026-08-25 21:43:23
[2026-08-25 21:43:24,014.014 INFO    ] 2026-08-25 21:43:24
[2026-08-25 21:43:24,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:43:24,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:43:24,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:43:24,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:43:24,480.480 INFO    ] time= 25/08/2026 21:43:24
[2026-08-25 21:43:24,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:43:24,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:43:24,718.718 INFO    ] No existing commands found in stream
[2026-08-25 21:43:29,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:43:29,738.738 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 21:43:31,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:43:31,645.645 INFO    ] Checking for system updates...
[2026-08-25 21:43:31,682.682 INFO    ] 200
[2026-08-25 21:43:31,685.685 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:31,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:31,744.744 INFO    ] No update needed
[2026-08-25 21:43:31,748.748 INFO    ] Checking for camera pi updates...
[2026-08-25 21:43:31,790.790 INFO    ] 200
[2026-08-25 21:43:31,793.793 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:31,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:43:31,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:31,909.909 INFO    ] No camera update needed
[2026-08-25 21:43:31,911.911 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:43:31,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:43:31,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:43:31,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:43:33,968.968 INFO    ] ================================================
[2026-08-25 21:43:33,983.983 INFO    ] Launching Daemon at Tue Aug 25 21:43:33 IST 2026
[2026-08-25 21:43:33,994.994 INFO    ] ================================================
[2026-08-25 21:43:34,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:43:34
[2026-08-25 21:43:35,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:43:35,399.399 INFO    ] Initializing speech engine...
[2026-08-25 21:43:35,415.415 INFO    ] 2026-08-25 21:43:35
[2026-08-25 21:43:35,696.696 INFO    ] 2026-08-25 21:43:35
[2026-08-25 21:43:35,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:43:35,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:43:35,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:43:36,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:43:36,106.106 INFO    ] time= 25/08/2026 21:43:36
[2026-08-25 21:43:36,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:43:36,118.118 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:43:36,264.264 INFO    ] No existing commands found in stream
[2026-08-25 21:43:41,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:43:41,292.292 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 21:43:43,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:43:43,154.154 INFO    ] Checking for system updates...
[2026-08-25 21:43:43,193.193 INFO    ] 200
[2026-08-25 21:43:43,195.195 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:43,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:43,255.255 INFO    ] No update needed
[2026-08-25 21:43:43,258.258 INFO    ] Checking for camera pi updates...
[2026-08-25 21:43:43,292.292 INFO    ] 200
[2026-08-25 21:43:43,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:43,335.335 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:43:43,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:43:43,386.386 INFO    ] No camera update needed
[2026-08-25 21:43:43,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:43:43,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:43:43,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:43:43,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:43:45,441.441 INFO    ] ================================================
[2026-08-25 21:43:45,456.456 INFO    ] Launching Daemon at Tue Aug 25 21:43:45 IST 2026
[2026-08-25 21:43:45,467.467 INFO    ] ================================================
[2026-08-25 21:43:46,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:43:46
[2026-08-25 21:43:46,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:43:47,071.071 INFO    ] Initializing speech engine...
[2026-08-25 21:43:47,082.082 INFO    ] 2026-08-25 21:43:47
[2026-08-25 21:43:47,332.332 INFO    ] 2026-08-25 21:43:47
[2026-08-25 21:43:47,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:43:47,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:43:47,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:43:47,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:43:47,804.804 INFO    ] time= 25/08/2026 21:43:47
[2026-08-25 21:43:47,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:43:47,881.881 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:43:48,023.023 INFO    ] No existing commands found in stream
[2026-08-25 21:43:53,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:43:53,042.042 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 21:43:56,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:43:56,498.498 INFO    ] Checking for system updates...
[2026-08-25 21:43:56,534.534 INFO    ] 200
[2026-08-25 21:43:56,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:56,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:43:56,597.597 INFO    ] No update needed
[2026-08-25 21:43:56,599.599 INFO    ] Checking for camera pi updates...
[2026-08-25 21:43:56,632.632 INFO    ] 200
[2026-08-25 21:43:56,635.635 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:43:56,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:43:56,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:43:56,730.730 INFO    ] No camera update needed
[2026-08-25 21:43:56,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:43:56,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:43:56,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:43:56,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:43:58,786.786 INFO    ] ================================================
[2026-08-25 21:43:58,801.801 INFO    ] Launching Daemon at Tue Aug 25 21:43:58 IST 2026
[2026-08-25 21:43:58,812.812 INFO    ] ================================================
[2026-08-25 21:43:59,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:43:59
[2026-08-25 21:43:59,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:44:00,229.229 INFO    ] Initializing speech engine...
[2026-08-25 21:44:00,235.235 INFO    ] 2026-08-25 21:44:00
[2026-08-25 21:44:00,527.527 INFO    ] 2026-08-25 21:44:00
[2026-08-25 21:44:00,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:44:00,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:44:00,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:44:00,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:44:00,903.903 INFO    ] time= 25/08/2026 21:44:00
[2026-08-25 21:44:00,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:44:00,927.927 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:44:01,026.026 INFO    ] No existing commands found in stream
[2026-08-25 21:44:06,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:44:06,042.042 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 21:44:07,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:44:07,839.839 INFO    ] Checking for system updates...
[2026-08-25 21:44:07,874.874 INFO    ] 200
[2026-08-25 21:44:07,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:07,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:44:07,932.932 INFO    ] No update needed
[2026-08-25 21:44:07,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 21:44:07,969.969 INFO    ] 200
[2026-08-25 21:44:07,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:08,012.012 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:44:08,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:44:08,078.078 INFO    ] No camera update needed
[2026-08-25 21:44:08,080.080 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:44:08,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:44:08,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:44:08,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:44:10,135.135 INFO    ] ================================================
[2026-08-25 21:44:10,151.151 INFO    ] Launching Daemon at Tue Aug 25 21:44:10 IST 2026
[2026-08-25 21:44:10,162.162 INFO    ] ================================================
[2026-08-25 21:44:10,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:44:10
[2026-08-25 21:44:11,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:44:11,563.563 INFO    ] Initializing speech engine...
[2026-08-25 21:44:11,586.586 INFO    ] 2026-08-25 21:44:11
[2026-08-25 21:44:11,837.837 INFO    ] 2026-08-25 21:44:11
[2026-08-25 21:44:11,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:44:12,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:44:12,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:44:12,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:44:12,290.290 INFO    ] time= 25/08/2026 21:44:12
[2026-08-25 21:44:12,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:44:12,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:44:12,479.479 INFO    ] No existing commands found in stream
[2026-08-25 21:44:17,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:44:17,490.490 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 21:44:21,057.057 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:44:21,060.060 INFO    ] Checking for system updates...
[2026-08-25 21:44:21,096.096 INFO    ] 200
[2026-08-25 21:44:21,099.099 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:21,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:44:21,166.166 INFO    ] No update needed
[2026-08-25 21:44:21,169.169 INFO    ] Checking for camera pi updates...
[2026-08-25 21:44:21,204.204 INFO    ] 200
[2026-08-25 21:44:21,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:21,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:44:21,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:44:21,314.314 INFO    ] No camera update needed
[2026-08-25 21:44:21,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:44:21,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:44:21,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:44:21,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:44:23,372.372 INFO    ] ================================================
[2026-08-25 21:44:23,388.388 INFO    ] Launching Daemon at Tue Aug 25 21:44:23 IST 2026
[2026-08-25 21:44:23,399.399 INFO    ] ================================================
[2026-08-25 21:44:24,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:44:24
[2026-08-25 21:44:24,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:44:24,999.999 INFO    ] Initializing speech engine...
[2026-08-25 21:44:25,007.007 INFO    ] 2026-08-25 21:44:25
[2026-08-25 21:44:25,294.294 INFO    ] 2026-08-25 21:44:25
[2026-08-25 21:44:25,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:44:25,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:44:25,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:44:25,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:44:25,756.756 INFO    ] time= 25/08/2026 21:44:25
[2026-08-25 21:44:25,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:44:25,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:44:25,968.968 INFO    ] No existing commands found in stream
[2026-08-25 21:44:30,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:44:30,994.994 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 21:44:34,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:44:34,143.143 INFO    ] Checking for system updates...
[2026-08-25 21:44:34,179.179 INFO    ] 200
[2026-08-25 21:44:34,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:34,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:44:34,238.238 INFO    ] No update needed
[2026-08-25 21:44:34,241.241 INFO    ] Checking for camera pi updates...
[2026-08-25 21:44:34,278.278 INFO    ] 200
[2026-08-25 21:44:34,281.281 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:34,322.322 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:44:34,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:44:34,385.385 INFO    ] No camera update needed
[2026-08-25 21:44:34,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:44:34,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:44:34,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:44:34,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:44:36,444.444 INFO    ] ================================================
[2026-08-25 21:44:36,459.459 INFO    ] Launching Daemon at Tue Aug 25 21:44:36 IST 2026
[2026-08-25 21:44:36,471.471 INFO    ] ================================================
[2026-08-25 21:44:37,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:44:37
[2026-08-25 21:44:37,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:44:37,924.924 INFO    ] Initializing speech engine...
[2026-08-25 21:44:37,933.933 INFO    ] 2026-08-25 21:44:37
[2026-08-25 21:44:38,182.182 INFO    ] 2026-08-25 21:44:38
[2026-08-25 21:44:38,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:44:38,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:44:38,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:44:38,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:44:38,661.661 INFO    ] time= 25/08/2026 21:44:38
[2026-08-25 21:44:38,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:44:38,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:44:38,870.870 INFO    ] No existing commands found in stream
[2026-08-25 21:44:43,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:44:43,900.900 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 21:44:45,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:44:45,905.905 INFO    ] Checking for system updates...
[2026-08-25 21:44:45,942.942 INFO    ] 200
[2026-08-25 21:44:45,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:46,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:44:46,003.003 INFO    ] No update needed
[2026-08-25 21:44:46,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 21:44:46,040.040 INFO    ] 200
[2026-08-25 21:44:46,043.043 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:46,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:44:46,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:44:46,245.245 INFO    ] No camera update needed
[2026-08-25 21:44:46,248.248 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:44:46,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:44:46,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:44:46,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:44:48,303.303 INFO    ] ================================================
[2026-08-25 21:44:48,318.318 INFO    ] Launching Daemon at Tue Aug 25 21:44:48 IST 2026
[2026-08-25 21:44:48,329.329 INFO    ] ================================================
[2026-08-25 21:44:48,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:44:48
[2026-08-25 21:44:49,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:44:49,788.788 INFO    ] Initializing speech engine...
[2026-08-25 21:44:49,799.799 INFO    ] 2026-08-25 21:44:49
[2026-08-25 21:44:50,053.053 INFO    ] 2026-08-25 21:44:50
[2026-08-25 21:44:50,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:44:50,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:44:50,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:44:50,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:44:50,517.517 INFO    ] time= 25/08/2026 21:44:50
[2026-08-25 21:44:50,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:44:50,609.609 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:44:50,741.741 INFO    ] No existing commands found in stream
[2026-08-25 21:44:55,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:44:55,768.768 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-08-25 21:44:58,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:44:58,388.388 INFO    ] Checking for system updates...
[2026-08-25 21:44:58,425.425 INFO    ] 200
[2026-08-25 21:44:58,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:58,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:44:58,484.484 INFO    ] No update needed
[2026-08-25 21:44:58,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 21:44:58,521.521 INFO    ] 200
[2026-08-25 21:44:58,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:44:58,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:44:58,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:44:58,627.627 INFO    ] No camera update needed
[2026-08-25 21:44:58,630.630 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:44:58,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:44:58,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:44:58,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:45:00,686.686 INFO    ] ================================================
[2026-08-25 21:45:00,701.701 INFO    ] Launching Daemon at Tue Aug 25 21:45:00 IST 2026
[2026-08-25 21:45:00,712.712 INFO    ] ================================================
[2026-08-25 21:45:01,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:45:01
[2026-08-25 21:45:02,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:45:02,804.804 INFO    ] Initializing speech engine...
[2026-08-25 21:45:02,822.822 INFO    ] 2026-08-25 21:45:02
[2026-08-25 21:45:03,259.259 INFO    ] 2026-08-25 21:45:03
[2026-08-25 21:45:03,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:45:03,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:45:03,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:45:03,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:45:03,769.769 INFO    ] time= 25/08/2026 21:45:03
[2026-08-25 21:45:03,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:45:03,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:45:03,998.998 INFO    ] No existing commands found in stream
[2026-08-25 21:45:09,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:45:09,029.029 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-08-25 21:45:11,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:45:11,129.129 INFO    ] Checking for system updates...
[2026-08-25 21:45:11,165.165 INFO    ] 200
[2026-08-25 21:45:11,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:11,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:45:11,222.222 INFO    ] No update needed
[2026-08-25 21:45:11,224.224 INFO    ] Checking for camera pi updates...
[2026-08-25 21:45:11,259.259 INFO    ] 200
[2026-08-25 21:45:11,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:11,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:45:11,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:45:11,358.358 INFO    ] No camera update needed
[2026-08-25 21:45:11,361.361 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:45:11,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:45:11,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:45:11,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:45:13,413.413 INFO    ] ================================================
[2026-08-25 21:45:13,429.429 INFO    ] Launching Daemon at Tue Aug 25 21:45:13 IST 2026
[2026-08-25 21:45:13,440.440 INFO    ] ================================================
[2026-08-25 21:45:14,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:45:14
[2026-08-25 21:45:14,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:45:14,842.842 INFO    ] Initializing speech engine...
[2026-08-25 21:45:14,863.863 INFO    ] 2026-08-25 21:45:14
[2026-08-25 21:45:15,117.117 INFO    ] 2026-08-25 21:45:15
[2026-08-25 21:45:15,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:45:15,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:45:15,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:45:15,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:45:15,525.525 INFO    ] time= 25/08/2026 21:45:15
[2026-08-25 21:45:15,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:45:15,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:45:15,722.722 INFO    ] No existing commands found in stream
[2026-08-25 21:45:20,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:45:20,736.736 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 21:45:24,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:45:24,778.778 INFO    ] Checking for system updates...
[2026-08-25 21:45:24,818.818 INFO    ] 200
[2026-08-25 21:45:24,820.820 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:24,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:45:24,881.881 INFO    ] No update needed
[2026-08-25 21:45:24,883.883 INFO    ] Checking for camera pi updates...
[2026-08-25 21:45:24,920.920 INFO    ] 200
[2026-08-25 21:45:24,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:24,963.963 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:45:25,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:45:25,011.011 INFO    ] No camera update needed
[2026-08-25 21:45:25,013.013 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:45:25,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:45:25,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:45:25,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:45:27,070.070 INFO    ] ================================================
[2026-08-25 21:45:27,085.085 INFO    ] Launching Daemon at Tue Aug 25 21:45:27 IST 2026
[2026-08-25 21:45:27,095.095 INFO    ] ================================================
[2026-08-25 21:45:27,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:45:27
[2026-08-25 21:45:28,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:45:28,549.549 INFO    ] Initializing speech engine...
[2026-08-25 21:45:28,555.555 INFO    ] 2026-08-25 21:45:28
[2026-08-25 21:45:28,854.854 INFO    ] 2026-08-25 21:45:28
[2026-08-25 21:45:28,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:45:29,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:45:29,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:45:29,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:45:29,239.239 INFO    ] time= 25/08/2026 21:45:29
[2026-08-25 21:45:29,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:45:29,264.264 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:45:29,366.366 INFO    ] No existing commands found in stream
[2026-08-25 21:45:34,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:45:34,379.379 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 21:45:35,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:45:35,158.158 INFO    ] Checking for system updates...
[2026-08-25 21:45:35,193.193 INFO    ] 200
[2026-08-25 21:45:35,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:35,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:45:35,250.250 INFO    ] No update needed
[2026-08-25 21:45:35,253.253 INFO    ] Checking for camera pi updates...
[2026-08-25 21:45:35,286.286 INFO    ] 200
[2026-08-25 21:45:35,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:35,329.329 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:45:35,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:45:35,387.387 INFO    ] No camera update needed
[2026-08-25 21:45:35,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:45:35,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:45:35,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:45:35,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:45:37,442.442 INFO    ] ================================================
[2026-08-25 21:45:37,458.458 INFO    ] Launching Daemon at Tue Aug 25 21:45:37 IST 2026
[2026-08-25 21:45:37,469.469 INFO    ] ================================================
[2026-08-25 21:45:38,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:45:38
[2026-08-25 21:45:38,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:45:38,946.946 INFO    ] Initializing speech engine...
[2026-08-25 21:45:38,955.955 INFO    ] 2026-08-25 21:45:38
[2026-08-25 21:45:39,206.206 INFO    ] 2026-08-25 21:45:39
[2026-08-25 21:45:39,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:45:39,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:45:39,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:45:39,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:45:39,708.708 INFO    ] time= 25/08/2026 21:45:39
[2026-08-25 21:45:39,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:45:39,772.772 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:45:39,907.907 INFO    ] No existing commands found in stream
[2026-08-25 21:45:44,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:45:44,930.930 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 21:45:47,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:45:47,661.661 INFO    ] Checking for system updates...
[2026-08-25 21:45:47,696.696 INFO    ] 200
[2026-08-25 21:45:47,699.699 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:47,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:45:47,762.762 INFO    ] No update needed
[2026-08-25 21:45:47,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 21:45:47,798.798 INFO    ] 200
[2026-08-25 21:45:47,800.800 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:47,845.845 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:45:47,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:45:47,895.895 INFO    ] No camera update needed
[2026-08-25 21:45:47,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:45:47,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:45:47,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:45:47,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:45:49,952.952 INFO    ] ================================================
[2026-08-25 21:45:49,968.968 INFO    ] Launching Daemon at Tue Aug 25 21:45:49 IST 2026
[2026-08-25 21:45:49,980.980 INFO    ] ================================================
[2026-08-25 21:45:50,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:45:50
[2026-08-25 21:45:51,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:45:51,457.457 INFO    ] Initializing speech engine...
[2026-08-25 21:45:51,462.462 INFO    ] 2026-08-25 21:45:51
[2026-08-25 21:45:51,710.710 INFO    ] 2026-08-25 21:45:51
[2026-08-25 21:45:51,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:45:52,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:45:52,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:45:52,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:45:52,217.217 INFO    ] time= 25/08/2026 21:45:52
[2026-08-25 21:45:52,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:45:52,275.275 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:45:52,420.420 INFO    ] No existing commands found in stream
[2026-08-25 21:45:57,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:45:57,439.439 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 21:45:59,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:45:59,142.142 INFO    ] Checking for system updates...
[2026-08-25 21:45:59,180.180 INFO    ] 200
[2026-08-25 21:45:59,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:59,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:45:59,248.248 INFO    ] No update needed
[2026-08-25 21:45:59,251.251 INFO    ] Checking for camera pi updates...
[2026-08-25 21:45:59,285.285 INFO    ] 200
[2026-08-25 21:45:59,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:45:59,334.334 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:45:59,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:45:59,385.385 INFO    ] No camera update needed
[2026-08-25 21:45:59,388.388 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:45:59,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:45:59,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:45:59,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:46:01,484.484 INFO    ] ================================================
[2026-08-25 21:46:01,521.521 INFO    ] Launching Daemon at Tue Aug 25 21:46:01 IST 2026
[2026-08-25 21:46:01,544.544 INFO    ] ================================================
[2026-08-25 21:46:02,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:46:02
[2026-08-25 21:46:02,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:46:03,190.190 INFO    ] Initializing speech engine...
[2026-08-25 21:46:03,196.196 INFO    ] 2026-08-25 21:46:03
[2026-08-25 21:46:03,493.493 INFO    ] 2026-08-25 21:46:03
[2026-08-25 21:46:03,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:46:03,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:46:03,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:46:03,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:46:03,864.864 INFO    ] time= 25/08/2026 21:46:03
[2026-08-25 21:46:03,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:46:03,931.931 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:46:04,051.051 INFO    ] No existing commands found in stream
[2026-08-25 21:46:09,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:46:09,070.070 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 21:46:11,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:46:11,189.189 INFO    ] Checking for system updates...
[2026-08-25 21:46:11,225.225 INFO    ] 200
[2026-08-25 21:46:11,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:11,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:11,290.290 INFO    ] No update needed
[2026-08-25 21:46:11,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 21:46:11,331.331 INFO    ] 200
[2026-08-25 21:46:11,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:11,380.380 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:46:11,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:11,437.437 INFO    ] No camera update needed
[2026-08-25 21:46:11,439.439 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:46:11,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:46:11,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:46:11,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:46:13,492.492 INFO    ] ================================================
[2026-08-25 21:46:13,507.507 INFO    ] Launching Daemon at Tue Aug 25 21:46:13 IST 2026
[2026-08-25 21:46:13,519.519 INFO    ] ================================================
[2026-08-25 21:46:14,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:46:14
[2026-08-25 21:46:14,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:46:14,931.931 INFO    ] Initializing speech engine...
[2026-08-25 21:46:14,940.940 INFO    ] 2026-08-25 21:46:14
[2026-08-25 21:46:15,230.230 INFO    ] 2026-08-25 21:46:15
[2026-08-25 21:46:15,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:46:15,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:46:15,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:46:15,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:46:15,645.645 INFO    ] time= 25/08/2026 21:46:15
[2026-08-25 21:46:15,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:46:15,657.657 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:46:15,728.728 INFO    ] No existing commands found in stream
[2026-08-25 21:46:20,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:46:20,749.749 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 21:46:21,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:46:21,598.598 INFO    ] Checking for system updates...
[2026-08-25 21:46:21,636.636 INFO    ] 200
[2026-08-25 21:46:21,639.639 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:21,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:46:21,695.695 INFO    ] No update needed
[2026-08-25 21:46:21,697.697 INFO    ] Checking for camera pi updates...
[2026-08-25 21:46:21,736.736 INFO    ] 200
[2026-08-25 21:46:21,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:21,780.780 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:46:21,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:46:21,842.842 INFO    ] No camera update needed
[2026-08-25 21:46:21,845.845 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:46:21,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:46:21,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:46:21,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:46:23,900.900 INFO    ] ================================================
[2026-08-25 21:46:23,916.916 INFO    ] Launching Daemon at Tue Aug 25 21:46:23 IST 2026
[2026-08-25 21:46:23,927.927 INFO    ] ================================================
[2026-08-25 21:46:24,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:46:24
[2026-08-25 21:46:25,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:46:25,400.400 INFO    ] Initializing speech engine...
[2026-08-25 21:46:25,409.409 INFO    ] 2026-08-25 21:46:25
[2026-08-25 21:46:25,712.712 INFO    ] 2026-08-25 21:46:25
[2026-08-25 21:46:25,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:46:26,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:46:26,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:46:26,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:46:26,218.218 INFO    ] time= 25/08/2026 21:46:26
[2026-08-25 21:46:26,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:46:26,258.258 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:46:26,386.386 INFO    ] No existing commands found in stream
[2026-08-25 21:46:31,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:46:31,419.419 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-08-25 21:46:33,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:46:33,200.200 INFO    ] Checking for system updates...
[2026-08-25 21:46:33,237.237 INFO    ] 200
[2026-08-25 21:46:33,240.240 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:33,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:33,302.302 INFO    ] No update needed
[2026-08-25 21:46:33,305.305 INFO    ] Checking for camera pi updates...
[2026-08-25 21:46:33,343.343 INFO    ] 200
[2026-08-25 21:46:33,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:33,385.385 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:46:33,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:33,443.443 INFO    ] No camera update needed
[2026-08-25 21:46:33,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:46:33,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:46:33,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:46:33,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:46:35,499.499 INFO    ] ================================================
[2026-08-25 21:46:35,514.514 INFO    ] Launching Daemon at Tue Aug 25 21:46:35 IST 2026
[2026-08-25 21:46:35,525.525 INFO    ] ================================================
[2026-08-25 21:46:36,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:46:36
[2026-08-25 21:46:36,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:46:37,126.126 INFO    ] Initializing speech engine...
[2026-08-25 21:46:37,135.135 INFO    ] 2026-08-25 21:46:37
[2026-08-25 21:46:37,412.412 INFO    ] 2026-08-25 21:46:37
[2026-08-25 21:46:37,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:46:37,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:46:37,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:46:37,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:46:37,969.969 INFO    ] time= 25/08/2026 21:46:37
[2026-08-25 21:46:37,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:46:37,994.994 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:46:38,124.124 INFO    ] No existing commands found in stream
[2026-08-25 21:46:43,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:46:43,144.144 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 21:46:43,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:46:43,969.969 INFO    ] Checking for system updates...
[2026-08-25 21:46:44,005.005 INFO    ] 200
[2026-08-25 21:46:44,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:44,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:44,062.062 INFO    ] No update needed
[2026-08-25 21:46:44,064.064 INFO    ] Checking for camera pi updates...
[2026-08-25 21:46:44,097.097 INFO    ] 200
[2026-08-25 21:46:44,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:44,139.139 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:46:44,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:44,194.194 INFO    ] No camera update needed
[2026-08-25 21:46:44,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:46:44,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:46:44,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:46:44,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:46:46,250.250 INFO    ] ================================================
[2026-08-25 21:46:46,266.266 INFO    ] Launching Daemon at Tue Aug 25 21:46:46 IST 2026
[2026-08-25 21:46:46,276.276 INFO    ] ================================================
[2026-08-25 21:46:46,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:46:46
[2026-08-25 21:46:47,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:46:47,719.719 INFO    ] Initializing speech engine...
[2026-08-25 21:46:47,733.733 INFO    ] 2026-08-25 21:46:47
[2026-08-25 21:46:48,008.008 INFO    ] 2026-08-25 21:46:48
[2026-08-25 21:46:48,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:46:48,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:46:48,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:46:48,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:46:48,519.519 INFO    ] time= 25/08/2026 21:46:48
[2026-08-25 21:46:48,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:46:48,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:46:48,695.695 INFO    ] No existing commands found in stream
[2026-08-25 21:46:53,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:46:53,723.723 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 21:46:54,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:46:54,580.580 INFO    ] Checking for system updates...
[2026-08-25 21:46:54,617.617 INFO    ] 200
[2026-08-25 21:46:54,619.619 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:54,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:54,684.684 INFO    ] No update needed
[2026-08-25 21:46:54,687.687 INFO    ] Checking for camera pi updates...
[2026-08-25 21:46:54,721.721 INFO    ] 200
[2026-08-25 21:46:54,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:46:54,768.768 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:46:54,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:46:54,917.917 INFO    ] No camera update needed
[2026-08-25 21:46:54,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:46:54,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:46:54,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:46:54,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:46:56,972.972 INFO    ] ================================================
[2026-08-25 21:46:56,987.987 INFO    ] Launching Daemon at Tue Aug 25 21:46:56 IST 2026
[2026-08-25 21:46:57,999.999 INFO    ] ================================================
[2026-08-25 21:46:57,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:46:57
[2026-08-25 21:46:58,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:46:58,508.508 INFO    ] Initializing speech engine...
[2026-08-25 21:46:58,521.521 INFO    ] 2026-08-25 21:46:58
[2026-08-25 21:46:58,790.790 INFO    ] 2026-08-25 21:46:58
[2026-08-25 21:46:58,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:46:59,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:46:59,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:46:59,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:46:59,264.264 INFO    ] time= 25/08/2026 21:46:59
[2026-08-25 21:46:59,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:46:59,356.356 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:46:59,486.486 INFO    ] No existing commands found in stream
[2026-08-25 21:47:04,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:47:04,499.499 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 21:47:07,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:47:07,640.640 INFO    ] Checking for system updates...
[2026-08-25 21:47:07,685.685 INFO    ] 200
[2026-08-25 21:47:07,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:07,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:47:07,753.753 INFO    ] No update needed
[2026-08-25 21:47:07,757.757 INFO    ] Checking for camera pi updates...
[2026-08-25 21:47:07,793.793 INFO    ] 200
[2026-08-25 21:47:07,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:07,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:47:07,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:47:07,892.892 INFO    ] No camera update needed
[2026-08-25 21:47:07,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:47:07,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:47:07,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:47:07,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:47:09,952.952 INFO    ] ================================================
[2026-08-25 21:47:09,968.968 INFO    ] Launching Daemon at Tue Aug 25 21:47:09 IST 2026
[2026-08-25 21:47:09,980.980 INFO    ] ================================================
[2026-08-25 21:47:10,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:47:10
[2026-08-25 21:47:11,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:47:11,522.522 INFO    ] Initializing speech engine...
[2026-08-25 21:47:11,532.532 INFO    ] 2026-08-25 21:47:11
[2026-08-25 21:47:11,789.789 INFO    ] 2026-08-25 21:47:11
[2026-08-25 21:47:11,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:47:12,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:47:12,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:47:12,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:47:12,242.242 INFO    ] time= 25/08/2026 21:47:12
[2026-08-25 21:47:12,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:47:12,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:47:12,481.481 INFO    ] No existing commands found in stream
[2026-08-25 21:47:17,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:47:17,520.520 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 21:47:21,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:47:21,473.473 INFO    ] Checking for system updates...
[2026-08-25 21:47:21,537.537 INFO    ] 200
[2026-08-25 21:47:21,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:21,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:47:21,607.607 INFO    ] No update needed
[2026-08-25 21:47:21,610.610 INFO    ] Checking for camera pi updates...
[2026-08-25 21:47:21,647.647 INFO    ] 200
[2026-08-25 21:47:21,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:21,691.691 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:47:21,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:47:21,748.748 INFO    ] No camera update needed
[2026-08-25 21:47:21,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:47:21,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:47:21,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:47:21,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:47:23,813.813 INFO    ] ================================================
[2026-08-25 21:47:23,829.829 INFO    ] Launching Daemon at Tue Aug 25 21:47:23 IST 2026
[2026-08-25 21:47:23,840.840 INFO    ] ================================================
[2026-08-25 21:47:24,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:47:24
[2026-08-25 21:47:25,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:47:25,299.299 INFO    ] Initializing speech engine...
[2026-08-25 21:47:25,307.307 INFO    ] 2026-08-25 21:47:25
[2026-08-25 21:47:25,569.569 INFO    ] 2026-08-25 21:47:25
[2026-08-25 21:47:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:47:25,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:47:25,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:47:25,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:47:26,019.019 INFO    ] time= 25/08/2026 21:47:25
[2026-08-25 21:47:26,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:47:26,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:47:26,231.231 INFO    ] No existing commands found in stream
[2026-08-25 21:47:31,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:47:31,256.256 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 21:47:33,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:47:33,668.668 INFO    ] Checking for system updates...
[2026-08-25 21:47:33,708.708 INFO    ] 200
[2026-08-25 21:47:33,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:33,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:47:33,770.770 INFO    ] No update needed
[2026-08-25 21:47:33,772.772 INFO    ] Checking for camera pi updates...
[2026-08-25 21:47:33,806.806 INFO    ] 200
[2026-08-25 21:47:33,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:33,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:47:33,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:47:33,896.896 INFO    ] No camera update needed
[2026-08-25 21:47:33,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:47:33,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:47:33,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:47:33,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:47:35,953.953 INFO    ] ================================================
[2026-08-25 21:47:35,968.968 INFO    ] Launching Daemon at Tue Aug 25 21:47:35 IST 2026
[2026-08-25 21:47:35,980.980 INFO    ] ================================================
[2026-08-25 21:47:36,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:47:36
[2026-08-25 21:47:37,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:47:37,398.398 INFO    ] Initializing speech engine...
[2026-08-25 21:47:37,407.407 INFO    ] 2026-08-25 21:47:37
[2026-08-25 21:47:37,701.701 INFO    ] 2026-08-25 21:47:37
[2026-08-25 21:47:37,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:47:37,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:47:37,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:47:38,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:47:38,133.133 INFO    ] time= 25/08/2026 21:47:38
[2026-08-25 21:47:38,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:47:38,147.147 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:47:38,221.221 INFO    ] No existing commands found in stream
[2026-08-25 21:47:43,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:47:43,237.237 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 21:47:45,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:47:45,845.845 INFO    ] Checking for system updates...
[2026-08-25 21:47:45,885.885 INFO    ] 200
[2026-08-25 21:47:45,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:45,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:47:45,941.941 INFO    ] No update needed
[2026-08-25 21:47:45,944.944 INFO    ] Checking for camera pi updates...
[2026-08-25 21:47:45,978.978 INFO    ] 200
[2026-08-25 21:47:45,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:46,021.021 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:47:46,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:47:46,072.072 INFO    ] No camera update needed
[2026-08-25 21:47:46,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:47:46,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:47:46,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:47:46,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:47:48,128.128 INFO    ] ================================================
[2026-08-25 21:47:48,143.143 INFO    ] Launching Daemon at Tue Aug 25 21:47:48 IST 2026
[2026-08-25 21:47:48,154.154 INFO    ] ================================================
[2026-08-25 21:47:48,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:47:48
[2026-08-25 21:47:49,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:47:49,791.791 INFO    ] Initializing speech engine...
[2026-08-25 21:47:49,801.801 INFO    ] 2026-08-25 21:47:49
[2026-08-25 21:47:50,108.108 INFO    ] 2026-08-25 21:47:50
[2026-08-25 21:47:50,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:47:50,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:47:50,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:47:50,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:47:50,620.620 INFO    ] time= 25/08/2026 21:47:50
[2026-08-25 21:47:50,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:47:50,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:47:50,777.777 INFO    ] No existing commands found in stream
[2026-08-25 21:47:55,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:47:55,801.801 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 21:47:56,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:47:56,719.719 INFO    ] Checking for system updates...
[2026-08-25 21:47:56,756.756 INFO    ] 200
[2026-08-25 21:47:56,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:56,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:47:56,815.815 INFO    ] No update needed
[2026-08-25 21:47:56,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 21:47:56,851.851 INFO    ] 200
[2026-08-25 21:47:56,854.854 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:47:56,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:47:56,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:47:56,950.950 INFO    ] No camera update needed
[2026-08-25 21:47:56,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:47:56,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:47:56,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:47:56,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:47:59,004.004 INFO    ] ================================================
[2026-08-25 21:47:59,019.019 INFO    ] Launching Daemon at Tue Aug 25 21:47:59 IST 2026
[2026-08-25 21:47:59,030.030 INFO    ] ================================================
[2026-08-25 21:47:59,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:47:59
[2026-08-25 21:48:00,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:48:00,452.452 INFO    ] Initializing speech engine...
[2026-08-25 21:48:00,472.472 INFO    ] 2026-08-25 21:48:00
[2026-08-25 21:48:00,723.723 INFO    ] 2026-08-25 21:48:00
[2026-08-25 21:48:00,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:48:00,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:48:00,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:48:01,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:48:01,196.196 INFO    ] time= 25/08/2026 21:48:01
[2026-08-25 21:48:01,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:48:01,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:48:01,332.332 INFO    ] No existing commands found in stream
[2026-08-25 21:48:06,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:48:06,347.347 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 21:48:06,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:48:06,940.940 INFO    ] Checking for system updates...
[2026-08-25 21:48:06,978.978 INFO    ] 200
[2026-08-25 21:48:06,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:07,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:48:07,035.035 INFO    ] No update needed
[2026-08-25 21:48:07,038.038 INFO    ] Checking for camera pi updates...
[2026-08-25 21:48:07,071.071 INFO    ] 200
[2026-08-25 21:48:07,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:07,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:48:07,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:48:07,164.164 INFO    ] No camera update needed
[2026-08-25 21:48:07,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:48:07,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:48:07,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:48:07,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:48:09,221.221 INFO    ] ================================================
[2026-08-25 21:48:09,236.236 INFO    ] Launching Daemon at Tue Aug 25 21:48:09 IST 2026
[2026-08-25 21:48:09,247.247 INFO    ] ================================================
[2026-08-25 21:48:09,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:48:09
[2026-08-25 21:48:10,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:48:10,870.870 INFO    ] Initializing speech engine...
[2026-08-25 21:48:10,878.878 INFO    ] 2026-08-25 21:48:10
[2026-08-25 21:48:11,168.168 INFO    ] 2026-08-25 21:48:11
[2026-08-25 21:48:11,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:48:11,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:48:11,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:48:11,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:48:11,659.659 INFO    ] time= 25/08/2026 21:48:11
[2026-08-25 21:48:11,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:48:11,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:48:11,865.865 INFO    ] No existing commands found in stream
[2026-08-25 21:48:16,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:48:16,891.891 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 21:48:18,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:48:18,797.797 INFO    ] Checking for system updates...
[2026-08-25 21:48:18,834.834 INFO    ] 200
[2026-08-25 21:48:18,837.837 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:18,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:48:18,895.895 INFO    ] No update needed
[2026-08-25 21:48:18,897.897 INFO    ] Checking for camera pi updates...
[2026-08-25 21:48:18,932.932 INFO    ] 200
[2026-08-25 21:48:18,935.935 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:18,977.977 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:48:19,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:48:19,026.026 INFO    ] No camera update needed
[2026-08-25 21:48:19,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:48:19,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:48:19,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:48:19,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:48:21,084.084 INFO    ] ================================================
[2026-08-25 21:48:21,100.100 INFO    ] Launching Daemon at Tue Aug 25 21:48:21 IST 2026
[2026-08-25 21:48:21,111.111 INFO    ] ================================================
[2026-08-25 21:48:21,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:48:21
[2026-08-25 21:48:22,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:48:22,553.553 INFO    ] Initializing speech engine...
[2026-08-25 21:48:22,562.562 INFO    ] 2026-08-25 21:48:22
[2026-08-25 21:48:22,860.860 INFO    ] 2026-08-25 21:48:22
[2026-08-25 21:48:22,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:48:23,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:48:23,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:48:23,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:48:23,259.259 INFO    ] time= 25/08/2026 21:48:23
[2026-08-25 21:48:23,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:48:23,290.290 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:48:23,366.366 INFO    ] No existing commands found in stream
[2026-08-25 21:48:28,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:48:28,382.382 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 21:48:31,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:48:31,404.404 INFO    ] Checking for system updates...
[2026-08-25 21:48:31,442.442 INFO    ] 200
[2026-08-25 21:48:31,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:31,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:48:31,504.504 INFO    ] No update needed
[2026-08-25 21:48:31,507.507 INFO    ] Checking for camera pi updates...
[2026-08-25 21:48:31,550.550 INFO    ] 200
[2026-08-25 21:48:31,553.553 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:31,596.596 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:48:31,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:48:31,649.649 INFO    ] No camera update needed
[2026-08-25 21:48:31,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:48:31,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:48:31,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:48:31,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:48:33,706.706 INFO    ] ================================================
[2026-08-25 21:48:33,722.722 INFO    ] Launching Daemon at Tue Aug 25 21:48:33 IST 2026
[2026-08-25 21:48:33,734.734 INFO    ] ================================================
[2026-08-25 21:48:34,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:48:34
[2026-08-25 21:48:34,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:48:35,137.137 INFO    ] Initializing speech engine...
[2026-08-25 21:48:35,145.145 INFO    ] 2026-08-25 21:48:35
[2026-08-25 21:48:35,419.419 INFO    ] 2026-08-25 21:48:35
[2026-08-25 21:48:35,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:48:35,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:48:35,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:48:35,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:48:35,909.909 INFO    ] time= 25/08/2026 21:48:35
[2026-08-25 21:48:35,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:48:35,992.992 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:48:36,145.145 INFO    ] No existing commands found in stream
[2026-08-25 21:48:41,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:48:41,162.162 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 21:48:43,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:48:43,191.191 INFO    ] Checking for system updates...
[2026-08-25 21:48:43,227.227 INFO    ] 200
[2026-08-25 21:48:43,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:43,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:48:43,289.289 INFO    ] No update needed
[2026-08-25 21:48:43,291.291 INFO    ] Checking for camera pi updates...
[2026-08-25 21:48:43,329.329 INFO    ] 200
[2026-08-25 21:48:43,332.332 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:43,372.372 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:48:43,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:48:43,421.421 INFO    ] No camera update needed
[2026-08-25 21:48:43,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:48:43,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:48:43,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:48:43,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:48:45,478.478 INFO    ] ================================================
[2026-08-25 21:48:45,493.493 INFO    ] Launching Daemon at Tue Aug 25 21:48:45 IST 2026
[2026-08-25 21:48:45,504.504 INFO    ] ================================================
[2026-08-25 21:48:46,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:48:46
[2026-08-25 21:48:46,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:48:47,138.138 INFO    ] Initializing speech engine...
[2026-08-25 21:48:47,145.145 INFO    ] 2026-08-25 21:48:47
[2026-08-25 21:48:47,443.443 INFO    ] 2026-08-25 21:48:47
[2026-08-25 21:48:47,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:48:47,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:48:47,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:48:47,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:48:47,961.961 INFO    ] time= 25/08/2026 21:48:47
[2026-08-25 21:48:47,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:48:48,007.007 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:48:48,132.132 INFO    ] No existing commands found in stream
[2026-08-25 21:48:53,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:48:53,155.155 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 21:48:53,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:48:53,676.676 INFO    ] Checking for system updates...
[2026-08-25 21:48:53,712.712 INFO    ] 200
[2026-08-25 21:48:53,714.714 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:53,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:48:53,770.770 INFO    ] No update needed
[2026-08-25 21:48:53,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 21:48:53,806.806 INFO    ] 200
[2026-08-25 21:48:53,809.809 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:48:53,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:48:53,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:48:53,902.902 INFO    ] No camera update needed
[2026-08-25 21:48:53,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:48:53,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:48:53,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:48:53,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:48:55,956.956 INFO    ] ================================================
[2026-08-25 21:48:55,971.971 INFO    ] Launching Daemon at Tue Aug 25 21:48:55 IST 2026
[2026-08-25 21:48:55,982.982 INFO    ] ================================================
[2026-08-25 21:48:56,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:48:56
[2026-08-25 21:48:57,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:48:57,440.440 INFO    ] Initializing speech engine...
[2026-08-25 21:48:57,449.449 INFO    ] 2026-08-25 21:48:57
[2026-08-25 21:48:57,710.710 INFO    ] 2026-08-25 21:48:57
[2026-08-25 21:48:57,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:48:57,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:48:57,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:48:58,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:48:58,213.213 INFO    ] time= 25/08/2026 21:48:58
[2026-08-25 21:48:58,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:48:58,274.274 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:48:58,405.405 INFO    ] No existing commands found in stream
[2026-08-25 21:49:03,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:49:03,423.423 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 21:49:03,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:49:03,862.862 INFO    ] Checking for system updates...
[2026-08-25 21:49:03,898.898 INFO    ] 200
[2026-08-25 21:49:03,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:03,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:03,961.961 INFO    ] No update needed
[2026-08-25 21:49:03,963.963 INFO    ] Checking for camera pi updates...
[2026-08-25 21:49:03,997.997 INFO    ] 200
[2026-08-25 21:49:03,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:04,039.039 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:49:04,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:04,091.091 INFO    ] No camera update needed
[2026-08-25 21:49:04,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:49:04,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:49:04,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:49:04,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:49:06,150.150 INFO    ] ================================================
[2026-08-25 21:49:06,167.167 INFO    ] Launching Daemon at Tue Aug 25 21:49:06 IST 2026
[2026-08-25 21:49:06,179.179 INFO    ] ================================================
[2026-08-25 21:49:06,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:49:06
[2026-08-25 21:49:07,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:49:07,729.729 INFO    ] Initializing speech engine...
[2026-08-25 21:49:07,740.740 INFO    ] 2026-08-25 21:49:07
[2026-08-25 21:49:08,007.007 INFO    ] 2026-08-25 21:49:08
[2026-08-25 21:49:08,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:49:08,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:49:08,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:49:08,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:49:08,470.470 INFO    ] time= 25/08/2026 21:49:08
[2026-08-25 21:49:08,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:49:08,562.562 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:49:08,696.696 INFO    ] No existing commands found in stream
[2026-08-25 21:49:13,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:49:13,723.723 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-08-25 21:49:14,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:49:14,657.657 INFO    ] Checking for system updates...
[2026-08-25 21:49:14,693.693 INFO    ] 200
[2026-08-25 21:49:14,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:14,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:14,751.751 INFO    ] No update needed
[2026-08-25 21:49:14,754.754 INFO    ] Checking for camera pi updates...
[2026-08-25 21:49:14,788.788 INFO    ] 200
[2026-08-25 21:49:14,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:14,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:49:14,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:14,886.886 INFO    ] No camera update needed
[2026-08-25 21:49:14,889.889 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:49:14,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:49:14,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:49:14,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:49:16,943.943 INFO    ] ================================================
[2026-08-25 21:49:16,958.958 INFO    ] Launching Daemon at Tue Aug 25 21:49:16 IST 2026
[2026-08-25 21:49:16,969.969 INFO    ] ================================================
[2026-08-25 21:49:17,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:49:17
[2026-08-25 21:49:18,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:49:18,424.424 INFO    ] Initializing speech engine...
[2026-08-25 21:49:18,433.433 INFO    ] 2026-08-25 21:49:18
[2026-08-25 21:49:18,681.681 INFO    ] 2026-08-25 21:49:18
[2026-08-25 21:49:18,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:49:18,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:49:18,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:49:19,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:49:19,154.154 INFO    ] time= 25/08/2026 21:49:19
[2026-08-25 21:49:19,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:49:19,244.244 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:49:19,377.377 INFO    ] No existing commands found in stream
[2026-08-25 21:49:24,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:49:24,403.403 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 21:49:28,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:49:28,835.835 INFO    ] Checking for system updates...
[2026-08-25 21:49:28,870.870 INFO    ] 200
[2026-08-25 21:49:28,873.873 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:28,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:49:28,927.927 INFO    ] No update needed
[2026-08-25 21:49:28,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 21:49:28,963.963 INFO    ] 200
[2026-08-25 21:49:28,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:29,009.009 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:49:29,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:49:29,077.077 INFO    ] No camera update needed
[2026-08-25 21:49:29,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:49:29,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:49:29,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:49:29,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:49:31,132.132 INFO    ] ================================================
[2026-08-25 21:49:31,147.147 INFO    ] Launching Daemon at Tue Aug 25 21:49:31 IST 2026
[2026-08-25 21:49:31,157.157 INFO    ] ================================================
[2026-08-25 21:49:31,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:49:31
[2026-08-25 21:49:32,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:49:32,688.688 INFO    ] Initializing speech engine...
[2026-08-25 21:49:32,698.698 INFO    ] 2026-08-25 21:49:32
[2026-08-25 21:49:32,952.952 INFO    ] 2026-08-25 21:49:32
[2026-08-25 21:49:33,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:49:33,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:49:33,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:49:33,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:49:33,441.441 INFO    ] time= 25/08/2026 21:49:33
[2026-08-25 21:49:33,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:49:33,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:49:33,647.647 INFO    ] No existing commands found in stream
[2026-08-25 21:49:38,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:49:38,671.671 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-08-25 21:49:42,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:49:42,317.317 INFO    ] Checking for system updates...
[2026-08-25 21:49:42,352.352 INFO    ] 200
[2026-08-25 21:49:42,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:42,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:42,409.409 INFO    ] No update needed
[2026-08-25 21:49:42,412.412 INFO    ] Checking for camera pi updates...
[2026-08-25 21:49:42,446.446 INFO    ] 200
[2026-08-25 21:49:42,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:42,488.488 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:49:42,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:42,534.534 INFO    ] No camera update needed
[2026-08-25 21:49:42,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:49:42,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:49:42,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:49:42,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:49:44,589.589 INFO    ] ================================================
[2026-08-25 21:49:44,604.604 INFO    ] Launching Daemon at Tue Aug 25 21:49:44 IST 2026
[2026-08-25 21:49:44,615.615 INFO    ] ================================================
[2026-08-25 21:49:45,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:49:45
[2026-08-25 21:49:45,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:49:46,042.042 INFO    ] Initializing speech engine...
[2026-08-25 21:49:46,051.051 INFO    ] 2026-08-25 21:49:46
[2026-08-25 21:49:46,300.300 INFO    ] 2026-08-25 21:49:46
[2026-08-25 21:49:46,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:49:46,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:49:46,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:49:46,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:49:46,675.675 INFO    ] time= 25/08/2026 21:49:46
[2026-08-25 21:49:46,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:49:46,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:49:46,762.762 INFO    ] No existing commands found in stream
[2026-08-25 21:49:51,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:49:51,800.800 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-08-25 21:49:55,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:49:55,276.276 INFO    ] Checking for system updates...
[2026-08-25 21:49:55,314.314 INFO    ] 200
[2026-08-25 21:49:55,317.317 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:55,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:55,373.373 INFO    ] No update needed
[2026-08-25 21:49:55,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 21:49:55,416.416 INFO    ] 200
[2026-08-25 21:49:55,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:49:55,460.460 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:49:55,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:49:55,513.513 INFO    ] No camera update needed
[2026-08-25 21:49:55,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:49:55,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:49:55,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:49:55,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:49:57,569.569 INFO    ] ================================================
[2026-08-25 21:49:57,585.585 INFO    ] Launching Daemon at Tue Aug 25 21:49:57 IST 2026
[2026-08-25 21:49:57,595.595 INFO    ] ================================================
[2026-08-25 21:49:58,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:49:58
[2026-08-25 21:49:58,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:49:59,002.002 INFO    ] Initializing speech engine...
[2026-08-25 21:49:59,024.024 INFO    ] 2026-08-25 21:49:59
[2026-08-25 21:49:59,294.294 INFO    ] 2026-08-25 21:49:59
[2026-08-25 21:49:59,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:49:59,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:49:59,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:49:59,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:49:59,694.694 INFO    ] time= 25/08/2026 21:49:59
[2026-08-25 21:49:59,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:49:59,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:49:59,886.886 INFO    ] No existing commands found in stream
[2026-08-25 21:50:04,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:50:04,909.909 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 21:50:07,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:50:07,688.688 INFO    ] Checking for system updates...
[2026-08-25 21:50:07,725.725 INFO    ] 200
[2026-08-25 21:50:07,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:07,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:50:07,782.782 INFO    ] No update needed
[2026-08-25 21:50:07,784.784 INFO    ] Checking for camera pi updates...
[2026-08-25 21:50:07,819.819 INFO    ] 200
[2026-08-25 21:50:07,821.821 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:07,861.861 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:50:07,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:50:07,913.913 INFO    ] No camera update needed
[2026-08-25 21:50:07,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:50:07,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:50:07,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:50:07,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:50:09,969.969 INFO    ] ================================================
[2026-08-25 21:50:09,984.984 INFO    ] Launching Daemon at Tue Aug 25 21:50:09 IST 2026
[2026-08-25 21:50:10,995.995 INFO    ] ================================================
[2026-08-25 21:50:10,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:50:10
[2026-08-25 21:50:11,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:50:11,419.419 INFO    ] Initializing speech engine...
[2026-08-25 21:50:11,439.439 INFO    ] 2026-08-25 21:50:11
[2026-08-25 21:50:11,705.705 INFO    ] 2026-08-25 21:50:11
[2026-08-25 21:50:11,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:50:11,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:50:11,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:50:12,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:50:12,109.109 INFO    ] time= 25/08/2026 21:50:12
[2026-08-25 21:50:12,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:50:12,124.124 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:50:12,198.198 INFO    ] No existing commands found in stream
[2026-08-25 21:50:17,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:50:17,226.226 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-08-25 21:50:20,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:50:20,916.916 INFO    ] Checking for system updates...
[2026-08-25 21:50:20,951.951 INFO    ] 200
[2026-08-25 21:50:20,953.953 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:21,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:50:21,008.008 INFO    ] No update needed
[2026-08-25 21:50:21,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 21:50:21,044.044 INFO    ] 200
[2026-08-25 21:50:21,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:21,090.090 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:50:21,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:50:21,142.142 INFO    ] No camera update needed
[2026-08-25 21:50:21,145.145 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:50:21,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:50:21,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:50:21,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:50:23,199.199 INFO    ] ================================================
[2026-08-25 21:50:23,215.215 INFO    ] Launching Daemon at Tue Aug 25 21:50:23 IST 2026
[2026-08-25 21:50:23,225.225 INFO    ] ================================================
[2026-08-25 21:50:23,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:50:23
[2026-08-25 21:50:24,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:50:24,642.642 INFO    ] Initializing speech engine...
[2026-08-25 21:50:24,651.651 INFO    ] 2026-08-25 21:50:24
[2026-08-25 21:50:24,896.896 INFO    ] 2026-08-25 21:50:24
[2026-08-25 21:50:24,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:50:25,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:50:25,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:50:25,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:50:25,359.359 INFO    ] time= 25/08/2026 21:50:25
[2026-08-25 21:50:25,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:50:25,454.454 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:50:25,592.592 INFO    ] No existing commands found in stream
[2026-08-25 21:50:30,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:50:30,615.615 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 21:50:33,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:50:33,064.064 INFO    ] Checking for system updates...
[2026-08-25 21:50:33,101.101 INFO    ] 200
[2026-08-25 21:50:33,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:33,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:50:33,158.158 INFO    ] No update needed
[2026-08-25 21:50:33,161.161 INFO    ] Checking for camera pi updates...
[2026-08-25 21:50:33,194.194 INFO    ] 200
[2026-08-25 21:50:33,197.197 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:33,237.237 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:50:33,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:50:33,287.287 INFO    ] No camera update needed
[2026-08-25 21:50:33,290.290 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:50:33,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:50:33,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:50:33,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:50:35,342.342 INFO    ] ================================================
[2026-08-25 21:50:35,357.357 INFO    ] Launching Daemon at Tue Aug 25 21:50:35 IST 2026
[2026-08-25 21:50:35,368.368 INFO    ] ================================================
[2026-08-25 21:50:35,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:50:35
[2026-08-25 21:50:36,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:50:36,792.792 INFO    ] Initializing speech engine...
[2026-08-25 21:50:36,799.799 INFO    ] 2026-08-25 21:50:36
[2026-08-25 21:50:37,057.057 INFO    ] 2026-08-25 21:50:37
[2026-08-25 21:50:37,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:50:37,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:50:37,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:50:37,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:50:37,450.450 INFO    ] time= 25/08/2026 21:50:37
[2026-08-25 21:50:37,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:50:37,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:50:37,535.535 INFO    ] No existing commands found in stream
[2026-08-25 21:50:42,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:50:42,563.563 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 21:50:46,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:50:46,293.293 INFO    ] Checking for system updates...
[2026-08-25 21:50:46,328.328 INFO    ] 200
[2026-08-25 21:50:46,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:46,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:50:46,390.390 INFO    ] No update needed
[2026-08-25 21:50:46,392.392 INFO    ] Checking for camera pi updates...
[2026-08-25 21:50:46,425.425 INFO    ] 200
[2026-08-25 21:50:46,428.428 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:46,467.467 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:50:46,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:50:46,519.519 INFO    ] No camera update needed
[2026-08-25 21:50:46,521.521 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:50:46,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:50:46,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:50:46,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:50:48,573.573 INFO    ] ================================================
[2026-08-25 21:50:48,589.589 INFO    ] Launching Daemon at Tue Aug 25 21:50:48 IST 2026
[2026-08-25 21:50:48,599.599 INFO    ] ================================================
[2026-08-25 21:50:49,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:50:49
[2026-08-25 21:50:49,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:50:50,006.006 INFO    ] Initializing speech engine...
[2026-08-25 21:50:50,026.026 INFO    ] 2026-08-25 21:50:50
[2026-08-25 21:50:50,271.271 INFO    ] 2026-08-25 21:50:50
[2026-08-25 21:50:50,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:50:50,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:50:50,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:50:50,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:50:50,639.639 INFO    ] time= 25/08/2026 21:50:50
[2026-08-25 21:50:50,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:50:50,691.691 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:50:50,817.817 INFO    ] No existing commands found in stream
[2026-08-25 21:50:55,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:50:55,847.847 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 21:50:59,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:50:59,773.773 INFO    ] Checking for system updates...
[2026-08-25 21:50:59,809.809 INFO    ] 200
[2026-08-25 21:50:59,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:59,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:50:59,867.867 INFO    ] No update needed
[2026-08-25 21:50:59,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 21:50:59,905.905 INFO    ] 200
[2026-08-25 21:50:59,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:50:59,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:51:00,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:51:00,007.007 INFO    ] No camera update needed
[2026-08-25 21:51:00,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:51:00,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:51:00,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:51:00,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:51:02,067.067 INFO    ] ================================================
[2026-08-25 21:51:02,085.085 INFO    ] Launching Daemon at Tue Aug 25 21:51:02 IST 2026
[2026-08-25 21:51:02,100.100 INFO    ] ================================================
[2026-08-25 21:51:02,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:51:02
[2026-08-25 21:51:03,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:51:03,787.787 INFO    ] Initializing speech engine...
[2026-08-25 21:51:03,803.803 INFO    ] 2026-08-25 21:51:03
[2026-08-25 21:51:04,084.084 INFO    ] 2026-08-25 21:51:04
[2026-08-25 21:51:04,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:51:04,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:51:04,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:51:04,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:51:04,460.460 INFO    ] time= 25/08/2026 21:51:04
[2026-08-25 21:51:04,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:51:04,502.502 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:51:04,584.584 INFO    ] No existing commands found in stream
[2026-08-25 21:51:09,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:51:09,599.599 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 21:51:12,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:51:12,772.772 INFO    ] Checking for system updates...
[2026-08-25 21:51:12,808.808 INFO    ] 200
[2026-08-25 21:51:12,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:12,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:51:12,870.870 INFO    ] No update needed
[2026-08-25 21:51:12,872.872 INFO    ] Checking for camera pi updates...
[2026-08-25 21:51:12,906.906 INFO    ] 200
[2026-08-25 21:51:12,908.908 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:12,948.948 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:51:13,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:51:13,098.098 INFO    ] No camera update needed
[2026-08-25 21:51:13,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:51:13,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:51:13,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:51:13,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:51:15,152.152 INFO    ] ================================================
[2026-08-25 21:51:15,167.167 INFO    ] Launching Daemon at Tue Aug 25 21:51:15 IST 2026
[2026-08-25 21:51:15,178.178 INFO    ] ================================================
[2026-08-25 21:51:15,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:51:15
[2026-08-25 21:51:16,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:51:16,681.681 INFO    ] Initializing speech engine...
[2026-08-25 21:51:16,699.699 INFO    ] 2026-08-25 21:51:16
[2026-08-25 21:51:16,978.978 INFO    ] 2026-08-25 21:51:16
[2026-08-25 21:51:17,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:51:17,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:51:17,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:51:17,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:51:17,343.343 INFO    ] time= 25/08/2026 21:51:17
[2026-08-25 21:51:17,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:51:17,389.389 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:51:17,470.470 INFO    ] No existing commands found in stream
[2026-08-25 21:51:22,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:51:22,503.503 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 21:51:23,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:51:23,284.284 INFO    ] Checking for system updates...
[2026-08-25 21:51:23,319.319 INFO    ] 200
[2026-08-25 21:51:23,322.322 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:23,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:51:23,380.380 INFO    ] No update needed
[2026-08-25 21:51:23,382.382 INFO    ] Checking for camera pi updates...
[2026-08-25 21:51:23,415.415 INFO    ] 200
[2026-08-25 21:51:23,418.418 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:23,458.458 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:51:23,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:51:23,514.514 INFO    ] No camera update needed
[2026-08-25 21:51:23,516.516 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:51:23,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:51:23,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:51:23,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:51:25,568.568 INFO    ] ================================================
[2026-08-25 21:51:25,583.583 INFO    ] Launching Daemon at Tue Aug 25 21:51:25 IST 2026
[2026-08-25 21:51:25,594.594 INFO    ] ================================================
[2026-08-25 21:51:26,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:51:26
[2026-08-25 21:51:26,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:51:26,999.999 INFO    ] Initializing speech engine...
[2026-08-25 21:51:27,018.018 INFO    ] 2026-08-25 21:51:27
[2026-08-25 21:51:27,265.265 INFO    ] 2026-08-25 21:51:27
[2026-08-25 21:51:27,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:51:27,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:51:27,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:51:27,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:51:27,728.728 INFO    ] time= 25/08/2026 21:51:27
[2026-08-25 21:51:27,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:51:27,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:51:27,887.887 INFO    ] No existing commands found in stream
[2026-08-25 21:51:32,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:51:32,920.920 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 21:51:37,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:51:37,051.051 INFO    ] Checking for system updates...
[2026-08-25 21:51:37,087.087 INFO    ] 200
[2026-08-25 21:51:37,089.089 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:37,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:51:37,155.155 INFO    ] No update needed
[2026-08-25 21:51:37,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 21:51:37,200.200 INFO    ] 200
[2026-08-25 21:51:37,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:37,250.250 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:51:37,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:51:37,299.299 INFO    ] No camera update needed
[2026-08-25 21:51:37,301.301 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:51:37,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:51:37,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:51:37,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:51:39,357.357 INFO    ] ================================================
[2026-08-25 21:51:39,374.374 INFO    ] Launching Daemon at Tue Aug 25 21:51:39 IST 2026
[2026-08-25 21:51:39,386.386 INFO    ] ================================================
[2026-08-25 21:51:40,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:51:40
[2026-08-25 21:51:40,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:51:41,145.145 INFO    ] Initializing speech engine...
[2026-08-25 21:51:41,154.154 INFO    ] 2026-08-25 21:51:41
[2026-08-25 21:51:41,455.455 INFO    ] 2026-08-25 21:51:41
[2026-08-25 21:51:41,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:51:41,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:51:41,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:51:41,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:51:41,932.932 INFO    ] time= 25/08/2026 21:51:41
[2026-08-25 21:51:41,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:51:42,021.021 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:51:42,155.155 INFO    ] No existing commands found in stream
[2026-08-25 21:51:47,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:51:47,180.180 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 21:51:49,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:51:49,592.592 INFO    ] Checking for system updates...
[2026-08-25 21:51:49,631.631 INFO    ] 200
[2026-08-25 21:51:49,633.633 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:49,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:51:49,692.692 INFO    ] No update needed
[2026-08-25 21:51:49,695.695 INFO    ] Checking for camera pi updates...
[2026-08-25 21:51:49,729.729 INFO    ] 200
[2026-08-25 21:51:49,732.732 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:51:49,776.776 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:51:49,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:51:49,827.827 INFO    ] No camera update needed
[2026-08-25 21:51:49,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:51:49,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:51:49,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:51:49,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:51:51,881.881 INFO    ] ================================================
[2026-08-25 21:51:51,896.896 INFO    ] Launching Daemon at Tue Aug 25 21:51:51 IST 2026
[2026-08-25 21:51:51,907.907 INFO    ] ================================================
[2026-08-25 21:51:52,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:51:52
[2026-08-25 21:51:53,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:51:53,379.379 INFO    ] Initializing speech engine...
[2026-08-25 21:51:53,388.388 INFO    ] 2026-08-25 21:51:53
[2026-08-25 21:51:53,641.641 INFO    ] 2026-08-25 21:51:53
[2026-08-25 21:51:53,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:51:53,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:51:53,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:51:54,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:51:54,127.127 INFO    ] time= 25/08/2026 21:51:54
[2026-08-25 21:51:54,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:51:54,216.216 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:51:54,331.331 INFO    ] No existing commands found in stream
[2026-08-25 21:51:59,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:51:59,366.366 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-08-25 21:52:03,647.647 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:52:03,650.650 INFO    ] Checking for system updates...
[2026-08-25 21:52:03,686.686 INFO    ] 200
[2026-08-25 21:52:03,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:03,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:52:03,750.750 INFO    ] No update needed
[2026-08-25 21:52:03,752.752 INFO    ] Checking for camera pi updates...
[2026-08-25 21:52:03,790.790 INFO    ] 200
[2026-08-25 21:52:03,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:03,834.834 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:52:03,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:52:03,896.896 INFO    ] No camera update needed
[2026-08-25 21:52:03,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:52:03,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:52:03,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:52:03,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:52:05,951.951 INFO    ] ================================================
[2026-08-25 21:52:05,967.967 INFO    ] Launching Daemon at Tue Aug 25 21:52:05 IST 2026
[2026-08-25 21:52:05,977.977 INFO    ] ================================================
[2026-08-25 21:52:06,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:52:06
[2026-08-25 21:52:07,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:52:07,409.409 INFO    ] Initializing speech engine...
[2026-08-25 21:52:07,422.422 INFO    ] 2026-08-25 21:52:07
[2026-08-25 21:52:07,689.689 INFO    ] 2026-08-25 21:52:07
[2026-08-25 21:52:07,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:52:07,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:52:07,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:52:08,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:52:08,065.065 INFO    ] time= 25/08/2026 21:52:08
[2026-08-25 21:52:08,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:52:08,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:52:08,245.245 INFO    ] No existing commands found in stream
[2026-08-25 21:52:13,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:52:13,273.273 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 21:52:15,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:52:15,065.065 INFO    ] Checking for system updates...
[2026-08-25 21:52:15,101.101 INFO    ] 200
[2026-08-25 21:52:15,103.103 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:15,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:52:15,160.160 INFO    ] No update needed
[2026-08-25 21:52:15,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 21:52:15,196.196 INFO    ] 200
[2026-08-25 21:52:15,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:15,240.240 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:52:15,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:52:15,291.291 INFO    ] No camera update needed
[2026-08-25 21:52:15,293.293 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:52:15,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:52:15,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:52:15,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:52:17,347.347 INFO    ] ================================================
[2026-08-25 21:52:17,362.362 INFO    ] Launching Daemon at Tue Aug 25 21:52:17 IST 2026
[2026-08-25 21:52:17,374.374 INFO    ] ================================================
[2026-08-25 21:52:17,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:52:17
[2026-08-25 21:52:18,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:52:18,799.799 INFO    ] Initializing speech engine...
[2026-08-25 21:52:18,818.818 INFO    ] 2026-08-25 21:52:18
[2026-08-25 21:52:19,068.068 INFO    ] 2026-08-25 21:52:19
[2026-08-25 21:52:19,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:52:19,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:52:19,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:52:19,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:52:19,554.554 INFO    ] time= 25/08/2026 21:52:19
[2026-08-25 21:52:19,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:52:19,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:52:19,778.778 INFO    ] No existing commands found in stream
[2026-08-25 21:52:24,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:52:24,804.804 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 21:52:26,311.311 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:52:26,314.314 INFO    ] Checking for system updates...
[2026-08-25 21:52:26,349.349 INFO    ] 200
[2026-08-25 21:52:26,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:26,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:52:26,415.415 INFO    ] No update needed
[2026-08-25 21:52:26,417.417 INFO    ] Checking for camera pi updates...
[2026-08-25 21:52:26,450.450 INFO    ] 200
[2026-08-25 21:52:26,452.452 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:26,499.499 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:52:26,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:52:26,546.546 INFO    ] No camera update needed
[2026-08-25 21:52:26,548.548 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:52:26,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:52:26,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:52:26,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:52:28,601.601 INFO    ] ================================================
[2026-08-25 21:52:28,616.616 INFO    ] Launching Daemon at Tue Aug 25 21:52:28 IST 2026
[2026-08-25 21:52:28,627.627 INFO    ] ================================================
[2026-08-25 21:52:29,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:52:29
[2026-08-25 21:52:29,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:52:30,313.313 INFO    ] Initializing speech engine...
[2026-08-25 21:52:30,324.324 INFO    ] 2026-08-25 21:52:30
[2026-08-25 21:52:30,588.588 INFO    ] 2026-08-25 21:52:30
[2026-08-25 21:52:30,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:52:30,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:52:30,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:52:31,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:52:31,037.037 INFO    ] time= 25/08/2026 21:52:31
[2026-08-25 21:52:31,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:52:31,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:52:31,251.251 INFO    ] No existing commands found in stream
[2026-08-25 21:52:36,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:52:36,286.286 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 21:52:37,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:52:37,476.476 INFO    ] Checking for system updates...
[2026-08-25 21:52:37,519.519 INFO    ] 200
[2026-08-25 21:52:37,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:37,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:52:37,583.583 INFO    ] No update needed
[2026-08-25 21:52:37,586.586 INFO    ] Checking for camera pi updates...
[2026-08-25 21:52:37,620.620 INFO    ] 200
[2026-08-25 21:52:37,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:37,664.664 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:52:37,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:52:37,715.715 INFO    ] No camera update needed
[2026-08-25 21:52:37,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:52:37,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:52:37,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:52:37,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:52:39,773.773 INFO    ] ================================================
[2026-08-25 21:52:39,789.789 INFO    ] Launching Daemon at Tue Aug 25 21:52:39 IST 2026
[2026-08-25 21:52:39,800.800 INFO    ] ================================================
[2026-08-25 21:52:40,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:52:40
[2026-08-25 21:52:40,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:52:41,231.231 INFO    ] Initializing speech engine...
[2026-08-25 21:52:41,239.239 INFO    ] 2026-08-25 21:52:41
[2026-08-25 21:52:41,493.493 INFO    ] 2026-08-25 21:52:41
[2026-08-25 21:52:41,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:52:41,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:52:41,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:52:41,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:52:41,961.961 INFO    ] time= 25/08/2026 21:52:41
[2026-08-25 21:52:42,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:52:42,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:52:42,187.187 INFO    ] No existing commands found in stream
[2026-08-25 21:52:47,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:52:47,206.206 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-08-25 21:52:50,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:52:50,571.571 INFO    ] Checking for system updates...
[2026-08-25 21:52:50,607.607 INFO    ] 200
[2026-08-25 21:52:50,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:50,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:52:50,673.673 INFO    ] No update needed
[2026-08-25 21:52:50,675.675 INFO    ] Checking for camera pi updates...
[2026-08-25 21:52:50,708.708 INFO    ] 200
[2026-08-25 21:52:50,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:52:50,752.752 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:52:50,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:52:50,801.801 INFO    ] No camera update needed
[2026-08-25 21:52:50,803.803 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:52:50,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:52:50,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:52:50,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:52:52,858.858 INFO    ] ================================================
[2026-08-25 21:52:52,874.874 INFO    ] Launching Daemon at Tue Aug 25 21:52:52 IST 2026
[2026-08-25 21:52:52,886.886 INFO    ] ================================================
[2026-08-25 21:52:53,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:52:53
[2026-08-25 21:52:54,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:52:54,315.315 INFO    ] Initializing speech engine...
[2026-08-25 21:52:54,337.337 INFO    ] 2026-08-25 21:52:54
[2026-08-25 21:52:54,604.604 INFO    ] 2026-08-25 21:52:54
[2026-08-25 21:52:54,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:52:54,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:52:54,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:52:54,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:52:54,999.999 INFO    ] time= 25/08/2026 21:52:54
[2026-08-25 21:52:55,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:52:55,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:52:55,128.128 INFO    ] No existing commands found in stream
[2026-08-25 21:53:00,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:53:00,141.141 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 21:53:03,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:53:03,181.181 INFO    ] Checking for system updates...
[2026-08-25 21:53:03,236.236 INFO    ] 200
[2026-08-25 21:53:03,239.239 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:03,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:53:03,302.302 INFO    ] No update needed
[2026-08-25 21:53:03,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 21:53:03,359.359 INFO    ] 200
[2026-08-25 21:53:03,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:03,408.408 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:53:03,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:53:03,462.462 INFO    ] No camera update needed
[2026-08-25 21:53:03,464.464 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:53:03,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:53:03,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:53:03,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:53:05,518.518 INFO    ] ================================================
[2026-08-25 21:53:05,535.535 INFO    ] Launching Daemon at Tue Aug 25 21:53:05 IST 2026
[2026-08-25 21:53:05,546.546 INFO    ] ================================================
[2026-08-25 21:53:06,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:53:06
[2026-08-25 21:53:06,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:53:07,220.220 INFO    ] Initializing speech engine...
[2026-08-25 21:53:07,232.232 INFO    ] 2026-08-25 21:53:07
[2026-08-25 21:53:07,545.545 INFO    ] 2026-08-25 21:53:07
[2026-08-25 21:53:07,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:53:07,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:53:07,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:53:08,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:53:08,050.050 INFO    ] time= 25/08/2026 21:53:08
[2026-08-25 21:53:08,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:53:08,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:53:08,243.243 INFO    ] No existing commands found in stream
[2026-08-25 21:53:13,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:53:13,277.277 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 21:53:14,678.678 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:53:14,681.681 INFO    ] Checking for system updates...
[2026-08-25 21:53:14,723.723 INFO    ] 200
[2026-08-25 21:53:14,726.726 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:14,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:53:14,783.783 INFO    ] No update needed
[2026-08-25 21:53:14,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 21:53:14,823.823 INFO    ] 200
[2026-08-25 21:53:14,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:14,874.874 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:53:15,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:53:15,025.025 INFO    ] No camera update needed
[2026-08-25 21:53:15,028.028 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:53:15,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:53:15,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:53:15,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:53:17,081.081 INFO    ] ================================================
[2026-08-25 21:53:17,096.096 INFO    ] Launching Daemon at Tue Aug 25 21:53:17 IST 2026
[2026-08-25 21:53:17,107.107 INFO    ] ================================================
[2026-08-25 21:53:17,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:53:17
[2026-08-25 21:53:18,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:53:18,535.535 INFO    ] Initializing speech engine...
[2026-08-25 21:53:18,548.548 INFO    ] 2026-08-25 21:53:18
[2026-08-25 21:53:18,839.839 INFO    ] 2026-08-25 21:53:18
[2026-08-25 21:53:18,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:53:19,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:53:19,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:53:19,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:53:19,227.227 INFO    ] time= 25/08/2026 21:53:19
[2026-08-25 21:53:19,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:53:19,250.250 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:53:19,355.355 INFO    ] No existing commands found in stream
[2026-08-25 21:53:24,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:53:24,370.370 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 21:53:27,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:53:27,221.221 INFO    ] Checking for system updates...
[2026-08-25 21:53:27,262.262 INFO    ] 200
[2026-08-25 21:53:27,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:27,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:53:27,320.320 INFO    ] No update needed
[2026-08-25 21:53:27,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 21:53:27,356.356 INFO    ] 200
[2026-08-25 21:53:27,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:27,405.405 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:53:27,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:53:27,472.472 INFO    ] No camera update needed
[2026-08-25 21:53:27,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:53:27,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:53:27,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:53:27,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:53:29,528.528 INFO    ] ================================================
[2026-08-25 21:53:29,544.544 INFO    ] Launching Daemon at Tue Aug 25 21:53:29 IST 2026
[2026-08-25 21:53:29,555.555 INFO    ] ================================================
[2026-08-25 21:53:30,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:53:30
[2026-08-25 21:53:30,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:53:31,235.235 INFO    ] Initializing speech engine...
[2026-08-25 21:53:31,250.250 INFO    ] 2026-08-25 21:53:31
[2026-08-25 21:53:31,567.567 INFO    ] 2026-08-25 21:53:31
[2026-08-25 21:53:31,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:53:31,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:53:31,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:53:32,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:53:32,109.109 INFO    ] time= 25/08/2026 21:53:32
[2026-08-25 21:53:32,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:53:32,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:53:32,291.291 INFO    ] No existing commands found in stream
[2026-08-25 21:53:37,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:53:37,321.321 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-08-25 21:53:38,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:53:38,936.936 INFO    ] Checking for system updates...
[2026-08-25 21:53:38,977.977 INFO    ] 200
[2026-08-25 21:53:38,981.981 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:39,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:53:39,046.046 INFO    ] No update needed
[2026-08-25 21:53:39,049.049 INFO    ] Checking for camera pi updates...
[2026-08-25 21:53:39,083.083 INFO    ] 200
[2026-08-25 21:53:39,087.087 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:39,134.134 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:53:39,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:53:39,192.192 INFO    ] No camera update needed
[2026-08-25 21:53:39,195.195 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:53:39,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:53:39,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:53:39,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:53:41,252.252 INFO    ] ================================================
[2026-08-25 21:53:41,272.272 INFO    ] Launching Daemon at Tue Aug 25 21:53:41 IST 2026
[2026-08-25 21:53:41,283.283 INFO    ] ================================================
[2026-08-25 21:53:41,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:53:41
[2026-08-25 21:53:42,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:53:42,723.723 INFO    ] Initializing speech engine...
[2026-08-25 21:53:42,729.729 INFO    ] 2026-08-25 21:53:42
[2026-08-25 21:53:43,031.031 INFO    ] 2026-08-25 21:53:42
[2026-08-25 21:53:43,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:53:43,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:53:43,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:53:43,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:53:43,460.460 INFO    ] time= 25/08/2026 21:53:43
[2026-08-25 21:53:43,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:53:43,472.472 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:53:43,547.547 INFO    ] No existing commands found in stream
[2026-08-25 21:53:48,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:53:48,562.562 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 21:53:53,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:53:53,232.232 INFO    ] Checking for system updates...
[2026-08-25 21:53:53,274.274 INFO    ] 200
[2026-08-25 21:53:53,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:53,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:53:53,334.334 INFO    ] No update needed
[2026-08-25 21:53:53,337.337 INFO    ] Checking for camera pi updates...
[2026-08-25 21:53:53,373.373 INFO    ] 200
[2026-08-25 21:53:53,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:53:53,418.418 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:53:53,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:53:53,472.472 INFO    ] No camera update needed
[2026-08-25 21:53:53,475.475 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:53:53,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:53:53,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:53:53,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:53:55,532.532 INFO    ] ================================================
[2026-08-25 21:53:55,548.548 INFO    ] Launching Daemon at Tue Aug 25 21:53:55 IST 2026
[2026-08-25 21:53:55,560.560 INFO    ] ================================================
[2026-08-25 21:53:56,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:53:56
[2026-08-25 21:53:56,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:53:57,018.018 INFO    ] Initializing speech engine...
[2026-08-25 21:53:57,025.025 INFO    ] 2026-08-25 21:53:57
[2026-08-25 21:53:57,326.326 INFO    ] 2026-08-25 21:53:57
[2026-08-25 21:53:57,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:53:57,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:53:57,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:53:57,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:53:57,737.737 INFO    ] time= 25/08/2026 21:53:57
[2026-08-25 21:53:57,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:53:57,767.767 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:53:57,847.847 INFO    ] No existing commands found in stream
[2026-08-25 21:54:02,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:54:02,863.863 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 21:54:05,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:54:05,395.395 INFO    ] Checking for system updates...
[2026-08-25 21:54:05,433.433 INFO    ] 200
[2026-08-25 21:54:05,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:05,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:54:05,492.492 INFO    ] No update needed
[2026-08-25 21:54:05,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 21:54:05,530.530 INFO    ] 200
[2026-08-25 21:54:05,532.532 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:05,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:54:05,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:54:05,621.621 INFO    ] No camera update needed
[2026-08-25 21:54:05,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:54:05,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:54:05,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:54:05,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:54:07,685.685 INFO    ] ================================================
[2026-08-25 21:54:07,701.701 INFO    ] Launching Daemon at Tue Aug 25 21:54:07 IST 2026
[2026-08-25 21:54:07,712.712 INFO    ] ================================================
[2026-08-25 21:54:08,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:54:08
[2026-08-25 21:54:09,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:54:09,371.371 INFO    ] Initializing speech engine...
[2026-08-25 21:54:09,381.381 INFO    ] 2026-08-25 21:54:09
[2026-08-25 21:54:09,684.684 INFO    ] 2026-08-25 21:54:09
[2026-08-25 21:54:09,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:54:09,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:54:09,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:54:10,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:54:10,186.186 INFO    ] time= 25/08/2026 21:54:10
[2026-08-25 21:54:10,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:54:10,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:54:10,333.333 INFO    ] No existing commands found in stream
[2026-08-25 21:54:15,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:54:15,359.359 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 21:54:18,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:54:18,858.858 INFO    ] Checking for system updates...
[2026-08-25 21:54:18,895.895 INFO    ] 200
[2026-08-25 21:54:18,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:18,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:54:18,955.955 INFO    ] No update needed
[2026-08-25 21:54:18,958.958 INFO    ] Checking for camera pi updates...
[2026-08-25 21:54:18,993.993 INFO    ] 200
[2026-08-25 21:54:18,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:19,038.038 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:54:19,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:54:19,087.087 INFO    ] No camera update needed
[2026-08-25 21:54:19,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:54:19,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:54:19,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:54:19,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:54:21,147.147 INFO    ] ================================================
[2026-08-25 21:54:21,163.163 INFO    ] Launching Daemon at Tue Aug 25 21:54:21 IST 2026
[2026-08-25 21:54:21,174.174 INFO    ] ================================================
[2026-08-25 21:54:21,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:54:21
[2026-08-25 21:54:22,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:54:22,835.835 INFO    ] Initializing speech engine...
[2026-08-25 21:54:22,841.841 INFO    ] 2026-08-25 21:54:22
[2026-08-25 21:54:23,156.156 INFO    ] 2026-08-25 21:54:23
[2026-08-25 21:54:23,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:54:23,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:54:23,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:54:23,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:54:23,575.575 INFO    ] time= 25/08/2026 21:54:23
[2026-08-25 21:54:23,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:54:23,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:54:23,749.749 INFO    ] No existing commands found in stream
[2026-08-25 21:54:28,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:54:28,763.763 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 21:54:30,359.359 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:54:30,362.362 INFO    ] Checking for system updates...
[2026-08-25 21:54:30,399.399 INFO    ] 200
[2026-08-25 21:54:30,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:30,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:54:30,466.466 INFO    ] No update needed
[2026-08-25 21:54:30,469.469 INFO    ] Checking for camera pi updates...
[2026-08-25 21:54:30,504.504 INFO    ] 200
[2026-08-25 21:54:30,507.507 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:30,548.548 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:54:30,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:54:30,608.608 INFO    ] No camera update needed
[2026-08-25 21:54:30,610.610 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:54:30,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:54:30,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:54:30,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:54:32,667.667 INFO    ] ================================================
[2026-08-25 21:54:32,684.684 INFO    ] Launching Daemon at Tue Aug 25 21:54:32 IST 2026
[2026-08-25 21:54:32,696.696 INFO    ] ================================================
[2026-08-25 21:54:33,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:54:33
[2026-08-25 21:54:34,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:54:34,350.350 INFO    ] Initializing speech engine...
[2026-08-25 21:54:34,357.357 INFO    ] 2026-08-25 21:54:34
[2026-08-25 21:54:34,644.644 INFO    ] 2026-08-25 21:54:34
[2026-08-25 21:54:34,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:54:34,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:54:34,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:54:35,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:54:35,129.129 INFO    ] time= 25/08/2026 21:54:35
[2026-08-25 21:54:35,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:54:35,199.199 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:54:35,328.328 INFO    ] No existing commands found in stream
[2026-08-25 21:54:40,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:54:40,348.348 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 21:54:42,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:54:42,213.213 INFO    ] Checking for system updates...
[2026-08-25 21:54:42,250.250 INFO    ] 200
[2026-08-25 21:54:42,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:42,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:54:42,310.310 INFO    ] No update needed
[2026-08-25 21:54:42,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 21:54:42,347.347 INFO    ] 200
[2026-08-25 21:54:42,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:42,391.391 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:54:42,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:54:42,450.450 INFO    ] No camera update needed
[2026-08-25 21:54:42,453.453 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:54:42,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:54:42,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:54:42,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:54:44,509.509 INFO    ] ================================================
[2026-08-25 21:54:44,525.525 INFO    ] Launching Daemon at Tue Aug 25 21:54:44 IST 2026
[2026-08-25 21:54:44,536.536 INFO    ] ================================================
[2026-08-25 21:54:45,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:54:45
[2026-08-25 21:54:45,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:54:45,970.970 INFO    ] Initializing speech engine...
[2026-08-25 21:54:45,985.985 INFO    ] 2026-08-25 21:54:45
[2026-08-25 21:54:46,256.256 INFO    ] 2026-08-25 21:54:46
[2026-08-25 21:54:46,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:54:46,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:54:46,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:54:46,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:54:46,668.668 INFO    ] time= 25/08/2026 21:54:46
[2026-08-25 21:54:46,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:54:46,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:54:46,782.782 INFO    ] No existing commands found in stream
[2026-08-25 21:54:51,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:54:51,819.819 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 21:54:54,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:54:54,410.410 INFO    ] Checking for system updates...
[2026-08-25 21:54:54,451.451 INFO    ] 200
[2026-08-25 21:54:54,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:54,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:54:54,509.509 INFO    ] No update needed
[2026-08-25 21:54:54,511.511 INFO    ] Checking for camera pi updates...
[2026-08-25 21:54:54,558.558 INFO    ] 200
[2026-08-25 21:54:54,561.561 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:54:54,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:54:54,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:54:54,651.651 INFO    ] No camera update needed
[2026-08-25 21:54:54,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:54:54,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:54:54,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:54:54,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:54:56,708.708 INFO    ] ================================================
[2026-08-25 21:54:56,723.723 INFO    ] Launching Daemon at Tue Aug 25 21:54:56 IST 2026
[2026-08-25 21:54:56,734.734 INFO    ] ================================================
[2026-08-25 21:54:57,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:54:57
[2026-08-25 21:54:57,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:54:58,176.176 INFO    ] Initializing speech engine...
[2026-08-25 21:54:58,182.182 INFO    ] 2026-08-25 21:54:58
[2026-08-25 21:54:58,455.455 INFO    ] 2026-08-25 21:54:58
[2026-08-25 21:54:58,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:54:58,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:54:58,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:54:58,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:54:58,901.901 INFO    ] time= 25/08/2026 21:54:58
[2026-08-25 21:54:58,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:54:58,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:54:59,122.122 INFO    ] No existing commands found in stream
[2026-08-25 21:55:04,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:55:04,146.146 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-08-25 21:55:05,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:55:05,293.293 INFO    ] Checking for system updates...
[2026-08-25 21:55:05,328.328 INFO    ] 200
[2026-08-25 21:55:05,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:05,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:05,387.387 INFO    ] No update needed
[2026-08-25 21:55:05,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 21:55:05,427.427 INFO    ] 200
[2026-08-25 21:55:05,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:05,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:55:05,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:05,530.530 INFO    ] No camera update needed
[2026-08-25 21:55:05,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:55:05,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:55:05,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:55:05,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:55:07,586.586 INFO    ] ================================================
[2026-08-25 21:55:07,602.602 INFO    ] Launching Daemon at Tue Aug 25 21:55:07 IST 2026
[2026-08-25 21:55:07,612.612 INFO    ] ================================================
[2026-08-25 21:55:08,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:55:08
[2026-08-25 21:55:08,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:55:09,010.010 INFO    ] Initializing speech engine...
[2026-08-25 21:55:09,025.025 INFO    ] 2026-08-25 21:55:09
[2026-08-25 21:55:09,291.291 INFO    ] 2026-08-25 21:55:09
[2026-08-25 21:55:09,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:55:09,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:55:09,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:55:09,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:55:09,666.666 INFO    ] time= 25/08/2026 21:55:09
[2026-08-25 21:55:09,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:55:09,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:55:09,855.855 INFO    ] No existing commands found in stream
[2026-08-25 21:55:14,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:55:14,880.880 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 21:55:15,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:55:15,723.723 INFO    ] Checking for system updates...
[2026-08-25 21:55:15,761.761 INFO    ] 200
[2026-08-25 21:55:15,763.763 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:15,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:15,821.821 INFO    ] No update needed
[2026-08-25 21:55:15,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 21:55:15,858.858 INFO    ] 200
[2026-08-25 21:55:15,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:15,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:55:15,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:15,953.953 INFO    ] No camera update needed
[2026-08-25 21:55:15,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:55:15,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:55:15,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:55:15,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:55:18,012.012 INFO    ] ================================================
[2026-08-25 21:55:18,028.028 INFO    ] Launching Daemon at Tue Aug 25 21:55:18 IST 2026
[2026-08-25 21:55:18,038.038 INFO    ] ================================================
[2026-08-25 21:55:18,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:55:18
[2026-08-25 21:55:19,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:55:19,676.676 INFO    ] Initializing speech engine...
[2026-08-25 21:55:19,686.686 INFO    ] 2026-08-25 21:55:19
[2026-08-25 21:55:19,998.998 INFO    ] 2026-08-25 21:55:19
[2026-08-25 21:55:20,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:55:20,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:55:20,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:55:20,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:55:20,511.511 INFO    ] time= 25/08/2026 21:55:20
[2026-08-25 21:55:20,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:55:20,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:55:20,674.674 INFO    ] No existing commands found in stream
[2026-08-25 21:55:25,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:55:25,704.704 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 21:55:28,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:55:28,605.605 INFO    ] Checking for system updates...
[2026-08-25 21:55:28,641.641 INFO    ] 200
[2026-08-25 21:55:28,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:28,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:28,701.701 INFO    ] No update needed
[2026-08-25 21:55:28,704.704 INFO    ] Checking for camera pi updates...
[2026-08-25 21:55:28,748.748 INFO    ] 200
[2026-08-25 21:55:28,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:28,797.797 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:55:28,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:28,944.944 INFO    ] No camera update needed
[2026-08-25 21:55:28,947.947 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:55:28,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:55:28,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:55:28,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:55:31,003.003 INFO    ] ================================================
[2026-08-25 21:55:31,019.019 INFO    ] Launching Daemon at Tue Aug 25 21:55:31 IST 2026
[2026-08-25 21:55:31,029.029 INFO    ] ================================================
[2026-08-25 21:55:31,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:55:31
[2026-08-25 21:55:32,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:55:32,498.498 INFO    ] Initializing speech engine...
[2026-08-25 21:55:32,510.510 INFO    ] 2026-08-25 21:55:32
[2026-08-25 21:55:32,769.769 INFO    ] 2026-08-25 21:55:32
[2026-08-25 21:55:32,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:55:33,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:55:33,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:55:33,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:55:33,249.249 INFO    ] time= 25/08/2026 21:55:33
[2026-08-25 21:55:33,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:55:33,358.358 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:55:33,490.490 INFO    ] No existing commands found in stream
[2026-08-25 21:55:38,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:55:38,518.518 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 21:55:41,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:55:41,420.420 INFO    ] Checking for system updates...
[2026-08-25 21:55:41,460.460 INFO    ] 200
[2026-08-25 21:55:41,462.462 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:41,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:55:41,517.517 INFO    ] No update needed
[2026-08-25 21:55:41,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 21:55:41,558.558 INFO    ] 200
[2026-08-25 21:55:41,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:41,600.600 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:55:41,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:55:41,647.647 INFO    ] No camera update needed
[2026-08-25 21:55:41,649.649 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:55:41,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:55:41,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:55:41,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:55:43,703.703 INFO    ] ================================================
[2026-08-25 21:55:43,718.718 INFO    ] Launching Daemon at Tue Aug 25 21:55:43 IST 2026
[2026-08-25 21:55:43,729.729 INFO    ] ================================================
[2026-08-25 21:55:44,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:55:44
[2026-08-25 21:55:45,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:55:45,342.342 INFO    ] Initializing speech engine...
[2026-08-25 21:55:45,358.358 INFO    ] 2026-08-25 21:55:45
[2026-08-25 21:55:45,633.633 INFO    ] 2026-08-25 21:55:45
[2026-08-25 21:55:45,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:55:45,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:55:45,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:55:46,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:55:46,017.017 INFO    ] time= 25/08/2026 21:55:46
[2026-08-25 21:55:46,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:55:46,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:55:46,143.143 INFO    ] No existing commands found in stream
[2026-08-25 21:55:51,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:55:51,160.160 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-08-25 21:55:54,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:55:54,830.830 INFO    ] Checking for system updates...
[2026-08-25 21:55:54,866.866 INFO    ] 200
[2026-08-25 21:55:54,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:54,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:54,923.923 INFO    ] No update needed
[2026-08-25 21:55:54,925.925 INFO    ] Checking for camera pi updates...
[2026-08-25 21:55:54,959.959 INFO    ] 200
[2026-08-25 21:55:54,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:55:55,006.006 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:55:55,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:55:55,051.051 INFO    ] No camera update needed
[2026-08-25 21:55:55,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:55:55,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:55:55,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:55:55,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:55:57,106.106 INFO    ] ================================================
[2026-08-25 21:55:57,121.121 INFO    ] Launching Daemon at Tue Aug 25 21:55:57 IST 2026
[2026-08-25 21:55:57,132.132 INFO    ] ================================================
[2026-08-25 21:55:57,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:55:57
[2026-08-25 21:55:58,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:55:58,775.775 INFO    ] Initializing speech engine...
[2026-08-25 21:55:58,785.785 INFO    ] 2026-08-25 21:55:58
[2026-08-25 21:55:59,065.065 INFO    ] 2026-08-25 21:55:59
[2026-08-25 21:55:59,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:55:59,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:55:59,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:55:59,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:55:59,579.579 INFO    ] time= 25/08/2026 21:55:59
[2026-08-25 21:55:59,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:55:59,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:55:59,777.777 INFO    ] No existing commands found in stream
[2026-08-25 21:56:04,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:56:04,808.808 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-08-25 21:56:07,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:56:07,789.789 INFO    ] Checking for system updates...
[2026-08-25 21:56:07,827.827 INFO    ] 200
[2026-08-25 21:56:07,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:07,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:56:07,893.893 INFO    ] No update needed
[2026-08-25 21:56:07,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 21:56:07,934.934 INFO    ] 200
[2026-08-25 21:56:07,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:07,978.978 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:56:08,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:56:08,027.027 INFO    ] No camera update needed
[2026-08-25 21:56:08,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:56:08,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:56:08,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:56:08,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:56:10,086.086 INFO    ] ================================================
[2026-08-25 21:56:10,101.101 INFO    ] Launching Daemon at Tue Aug 25 21:56:10 IST 2026
[2026-08-25 21:56:10,112.112 INFO    ] ================================================
[2026-08-25 21:56:10,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:56:10
[2026-08-25 21:56:11,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:56:11,654.654 INFO    ] Initializing speech engine...
[2026-08-25 21:56:11,661.661 INFO    ] 2026-08-25 21:56:11
[2026-08-25 21:56:11,941.941 INFO    ] 2026-08-25 21:56:11
[2026-08-25 21:56:11,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:56:12,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:56:12,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:56:12,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:56:12,441.441 INFO    ] time= 25/08/2026 21:56:12
[2026-08-25 21:56:12,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:56:12,515.515 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:56:12,676.676 INFO    ] No existing commands found in stream
[2026-08-25 21:56:17,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:56:17,706.706 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 21:56:20,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:56:20,690.690 INFO    ] Checking for system updates...
[2026-08-25 21:56:20,727.727 INFO    ] 200
[2026-08-25 21:56:20,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:20,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:56:20,786.786 INFO    ] No update needed
[2026-08-25 21:56:20,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 21:56:20,824.824 INFO    ] 200
[2026-08-25 21:56:20,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:20,869.869 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:56:20,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:56:20,921.921 INFO    ] No camera update needed
[2026-08-25 21:56:20,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:56:20,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:56:20,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:56:20,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:56:22,978.978 INFO    ] ================================================
[2026-08-25 21:56:22,993.993 INFO    ] Launching Daemon at Tue Aug 25 21:56:22 IST 2026
[2026-08-25 21:56:23,003.003 INFO    ] ================================================
[2026-08-25 21:56:23,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:56:23
[2026-08-25 21:56:24,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:56:24,499.499 INFO    ] Initializing speech engine...
[2026-08-25 21:56:24,509.509 INFO    ] 2026-08-25 21:56:24
[2026-08-25 21:56:24,812.812 INFO    ] 2026-08-25 21:56:24
[2026-08-25 21:56:24,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:56:25,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:56:25,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:56:25,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:56:25,317.317 INFO    ] time= 25/08/2026 21:56:25
[2026-08-25 21:56:25,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:56:25,345.345 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:56:25,474.474 INFO    ] No existing commands found in stream
[2026-08-25 21:56:30,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:56:30,506.506 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 21:56:34,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:56:34,262.262 INFO    ] Checking for system updates...
[2026-08-25 21:56:34,299.299 INFO    ] 200
[2026-08-25 21:56:34,301.301 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:34,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:56:34,361.361 INFO    ] No update needed
[2026-08-25 21:56:34,363.363 INFO    ] Checking for camera pi updates...
[2026-08-25 21:56:34,397.397 INFO    ] 200
[2026-08-25 21:56:34,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:34,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:56:34,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:56:34,501.501 INFO    ] No camera update needed
[2026-08-25 21:56:34,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:56:34,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:56:34,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:56:34,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:56:36,558.558 INFO    ] ================================================
[2026-08-25 21:56:36,573.573 INFO    ] Launching Daemon at Tue Aug 25 21:56:36 IST 2026
[2026-08-25 21:56:36,583.583 INFO    ] ================================================
[2026-08-25 21:56:37,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:56:37
[2026-08-25 21:56:37,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:56:38,030.030 INFO    ] Initializing speech engine...
[2026-08-25 21:56:38,056.056 INFO    ] 2026-08-25 21:56:38
[2026-08-25 21:56:38,332.332 INFO    ] 2026-08-25 21:56:38
[2026-08-25 21:56:38,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:56:38,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:56:38,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:56:38,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:56:38,717.717 INFO    ] time= 25/08/2026 21:56:38
[2026-08-25 21:56:38,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:56:38,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:56:38,843.843 INFO    ] No existing commands found in stream
[2026-08-25 21:56:43,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:56:43,858.858 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 21:56:47,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:56:47,450.450 INFO    ] Checking for system updates...
[2026-08-25 21:56:47,489.489 INFO    ] 200
[2026-08-25 21:56:47,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:47,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:56:47,547.547 INFO    ] No update needed
[2026-08-25 21:56:47,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 21:56:47,582.582 INFO    ] 200
[2026-08-25 21:56:47,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:56:47,627.627 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:56:47,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:56:47,673.673 INFO    ] No camera update needed
[2026-08-25 21:56:47,676.676 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:56:47,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:56:47,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:56:47,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:56:49,735.735 INFO    ] ================================================
[2026-08-25 21:56:49,751.751 INFO    ] Launching Daemon at Tue Aug 25 21:56:49 IST 2026
[2026-08-25 21:56:49,761.761 INFO    ] ================================================
[2026-08-25 21:56:50,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:56:50
[2026-08-25 21:56:50,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:56:51,180.180 INFO    ] Initializing speech engine...
[2026-08-25 21:56:51,190.190 INFO    ] 2026-08-25 21:56:51
[2026-08-25 21:56:51,439.439 INFO    ] 2026-08-25 21:56:51
[2026-08-25 21:56:51,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:56:51,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:56:51,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:56:51,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:56:51,813.813 INFO    ] time= 25/08/2026 21:56:51
[2026-08-25 21:56:51,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:56:51,871.871 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:56:52,009.009 INFO    ] No existing commands found in stream
[2026-08-25 21:56:57,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:56:57,028.028 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 21:57:01,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:57:01,429.429 INFO    ] Checking for system updates...
[2026-08-25 21:57:01,486.486 INFO    ] 200
[2026-08-25 21:57:01,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:01,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:57:01,563.563 INFO    ] No update needed
[2026-08-25 21:57:01,566.566 INFO    ] Checking for camera pi updates...
[2026-08-25 21:57:01,605.605 INFO    ] 200
[2026-08-25 21:57:01,608.608 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:01,661.661 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:57:01,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:57:01,740.740 INFO    ] No camera update needed
[2026-08-25 21:57:01,743.743 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:57:01,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:57:01,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:57:01,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:57:03,801.801 INFO    ] ================================================
[2026-08-25 21:57:03,816.816 INFO    ] Launching Daemon at Tue Aug 25 21:57:03 IST 2026
[2026-08-25 21:57:03,827.827 INFO    ] ================================================
[2026-08-25 21:57:04,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:57:04
[2026-08-25 21:57:05,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:57:05,285.285 INFO    ] Initializing speech engine...
[2026-08-25 21:57:05,300.300 INFO    ] 2026-08-25 21:57:05
[2026-08-25 21:57:05,590.590 INFO    ] 2026-08-25 21:57:05
[2026-08-25 21:57:05,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:57:05,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:57:05,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:57:05,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:57:05,982.982 INFO    ] time= 25/08/2026 21:57:05
[2026-08-25 21:57:05,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:57:06,001.001 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:57:06,079.079 INFO    ] No existing commands found in stream
[2026-08-25 21:57:11,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:57:11,117.117 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 21:57:12,288.288 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:57:12,291.291 INFO    ] Checking for system updates...
[2026-08-25 21:57:12,327.327 INFO    ] 200
[2026-08-25 21:57:12,329.329 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:12,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:57:12,385.385 INFO    ] No update needed
[2026-08-25 21:57:12,388.388 INFO    ] Checking for camera pi updates...
[2026-08-25 21:57:12,421.421 INFO    ] 200
[2026-08-25 21:57:12,424.424 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:12,464.464 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:57:12,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:57:12,524.524 INFO    ] No camera update needed
[2026-08-25 21:57:12,527.527 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:57:12,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:57:12,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:57:12,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:57:14,578.578 INFO    ] ================================================
[2026-08-25 21:57:14,593.593 INFO    ] Launching Daemon at Tue Aug 25 21:57:14 IST 2026
[2026-08-25 21:57:14,604.604 INFO    ] ================================================
[2026-08-25 21:57:15,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:57:15
[2026-08-25 21:57:15,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:57:16,059.059 INFO    ] Initializing speech engine...
[2026-08-25 21:57:16,066.066 INFO    ] 2026-08-25 21:57:16
[2026-08-25 21:57:16,327.327 INFO    ] 2026-08-25 21:57:16
[2026-08-25 21:57:16,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:57:16,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:57:16,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:57:16,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:57:16,780.780 INFO    ] time= 25/08/2026 21:57:16
[2026-08-25 21:57:16,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:57:16,876.876 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:57:17,009.009 INFO    ] No existing commands found in stream
[2026-08-25 21:57:22,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:57:22,036.036 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 21:57:24,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:57:24,649.649 INFO    ] Checking for system updates...
[2026-08-25 21:57:24,685.685 INFO    ] 200
[2026-08-25 21:57:24,688.688 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:24,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:57:24,751.751 INFO    ] No update needed
[2026-08-25 21:57:24,753.753 INFO    ] Checking for camera pi updates...
[2026-08-25 21:57:24,786.786 INFO    ] 200
[2026-08-25 21:57:24,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:24,830.830 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:57:24,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:57:24,882.882 INFO    ] No camera update needed
[2026-08-25 21:57:24,884.884 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:57:24,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:57:24,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:57:24,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:57:26,938.938 INFO    ] ================================================
[2026-08-25 21:57:26,953.953 INFO    ] Launching Daemon at Tue Aug 25 21:57:26 IST 2026
[2026-08-25 21:57:26,965.965 INFO    ] ================================================
[2026-08-25 21:57:27,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:57:27
[2026-08-25 21:57:28,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:57:28,456.456 INFO    ] Initializing speech engine...
[2026-08-25 21:57:28,465.465 INFO    ] 2026-08-25 21:57:28
[2026-08-25 21:57:28,715.715 INFO    ] 2026-08-25 21:57:28
[2026-08-25 21:57:28,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:57:28,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:57:28,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:57:29,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:57:29,083.083 INFO    ] time= 25/08/2026 21:57:29
[2026-08-25 21:57:29,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:57:29,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:57:29,275.275 INFO    ] No existing commands found in stream
[2026-08-25 21:57:34,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:57:34,293.293 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 21:57:35,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:57:35,625.625 INFO    ] Checking for system updates...
[2026-08-25 21:57:35,660.660 INFO    ] 200
[2026-08-25 21:57:35,663.663 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:35,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:57:35,718.718 INFO    ] No update needed
[2026-08-25 21:57:35,720.720 INFO    ] Checking for camera pi updates...
[2026-08-25 21:57:35,754.754 INFO    ] 200
[2026-08-25 21:57:35,757.757 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:35,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:57:35,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:57:35,858.858 INFO    ] No camera update needed
[2026-08-25 21:57:35,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:57:35,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:57:35,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:57:35,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:57:37,912.912 INFO    ] ================================================
[2026-08-25 21:57:37,928.928 INFO    ] Launching Daemon at Tue Aug 25 21:57:37 IST 2026
[2026-08-25 21:57:37,938.938 INFO    ] ================================================
[2026-08-25 21:57:38,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:57:38
[2026-08-25 21:57:39,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:57:39,383.383 INFO    ] Initializing speech engine...
[2026-08-25 21:57:39,393.393 INFO    ] 2026-08-25 21:57:39
[2026-08-25 21:57:39,648.648 INFO    ] 2026-08-25 21:57:39
[2026-08-25 21:57:39,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:57:39,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:57:39,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:57:40,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:57:40,120.120 INFO    ] time= 25/08/2026 21:57:40
[2026-08-25 21:57:40,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:57:40,213.213 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:57:40,329.329 INFO    ] No existing commands found in stream
[2026-08-25 21:57:45,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:57:45,359.359 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 21:57:49,736.736 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:57:49,738.738 INFO    ] Checking for system updates...
[2026-08-25 21:57:49,775.775 INFO    ] 200
[2026-08-25 21:57:49,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:49,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:57:49,836.836 INFO    ] No update needed
[2026-08-25 21:57:49,838.838 INFO    ] Checking for camera pi updates...
[2026-08-25 21:57:49,873.873 INFO    ] 200
[2026-08-25 21:57:49,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:57:49,923.923 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:57:49,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:57:49,978.978 INFO    ] No camera update needed
[2026-08-25 21:57:49,981.981 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:57:49,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:57:49,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:57:49,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:57:52,037.037 INFO    ] ================================================
[2026-08-25 21:57:52,053.053 INFO    ] Launching Daemon at Tue Aug 25 21:57:52 IST 2026
[2026-08-25 21:57:52,064.064 INFO    ] ================================================
[2026-08-25 21:57:52,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:57:52
[2026-08-25 21:57:53,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:57:53,548.548 INFO    ] Initializing speech engine...
[2026-08-25 21:57:53,555.555 INFO    ] 2026-08-25 21:57:53
[2026-08-25 21:57:53,854.854 INFO    ] 2026-08-25 21:57:53
[2026-08-25 21:57:53,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:57:54,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:57:54,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:57:54,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:57:54,233.233 INFO    ] time= 25/08/2026 21:57:54
[2026-08-25 21:57:54,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:57:54,253.253 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:57:54,363.363 INFO    ] No existing commands found in stream
[2026-08-25 21:57:59,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:57:59,379.379 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-08-25 21:58:03,675.675 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:58:03,678.678 INFO    ] Checking for system updates...
[2026-08-25 21:58:03,713.713 INFO    ] 200
[2026-08-25 21:58:03,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:03,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:58:03,772.772 INFO    ] No update needed
[2026-08-25 21:58:03,775.775 INFO    ] Checking for camera pi updates...
[2026-08-25 21:58:03,811.811 INFO    ] 200
[2026-08-25 21:58:03,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:03,854.854 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:58:03,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:58:03,905.905 INFO    ] No camera update needed
[2026-08-25 21:58:03,907.907 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:58:03,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:58:03,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:58:03,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:58:05,961.961 INFO    ] ================================================
[2026-08-25 21:58:05,977.977 INFO    ] Launching Daemon at Tue Aug 25 21:58:05 IST 2026
[2026-08-25 21:58:05,987.987 INFO    ] ================================================
[2026-08-25 21:58:06,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:58:06
[2026-08-25 21:58:07,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:58:07,608.608 INFO    ] Initializing speech engine...
[2026-08-25 21:58:07,620.620 INFO    ] 2026-08-25 21:58:07
[2026-08-25 21:58:07,904.904 INFO    ] 2026-08-25 21:58:07
[2026-08-25 21:58:07,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:58:08,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:58:08,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:58:08,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:58:08,380.380 INFO    ] time= 25/08/2026 21:58:08
[2026-08-25 21:58:08,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:58:08,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:58:08,612.612 INFO    ] No existing commands found in stream
[2026-08-25 21:58:13,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:58:13,641.641 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 21:58:16,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:58:16,806.806 INFO    ] Checking for system updates...
[2026-08-25 21:58:16,841.841 INFO    ] 200
[2026-08-25 21:58:16,843.843 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:16,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:58:16,907.907 INFO    ] No update needed
[2026-08-25 21:58:16,909.909 INFO    ] Checking for camera pi updates...
[2026-08-25 21:58:16,942.942 INFO    ] 200
[2026-08-25 21:58:16,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:16,990.990 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:58:17,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:58:17,046.046 INFO    ] No camera update needed
[2026-08-25 21:58:17,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:58:17,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:58:17,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:58:17,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:58:19,102.102 INFO    ] ================================================
[2026-08-25 21:58:19,117.117 INFO    ] Launching Daemon at Tue Aug 25 21:58:19 IST 2026
[2026-08-25 21:58:19,131.131 INFO    ] ================================================
[2026-08-25 21:58:19,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:58:19
[2026-08-25 21:58:20,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:58:20,526.526 INFO    ] Initializing speech engine...
[2026-08-25 21:58:20,540.540 INFO    ] 2026-08-25 21:58:20
[2026-08-25 21:58:20,812.812 INFO    ] 2026-08-25 21:58:20
[2026-08-25 21:58:20,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:58:20,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:58:21,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:58:21,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:58:21,153.153 INFO    ] time= 25/08/2026 21:58:21
[2026-08-25 21:58:21,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:58:21,177.177 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:58:21,302.302 INFO    ] No existing commands found in stream
[2026-08-25 21:58:26,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:58:26,317.317 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-08-25 21:58:27,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:58:27,947.947 INFO    ] Checking for system updates...
[2026-08-25 21:58:27,982.982 INFO    ] 200
[2026-08-25 21:58:27,984.984 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:28,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:58:28,039.039 INFO    ] No update needed
[2026-08-25 21:58:28,042.042 INFO    ] Checking for camera pi updates...
[2026-08-25 21:58:28,075.075 INFO    ] 200
[2026-08-25 21:58:28,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:28,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:58:28,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:58:28,168.168 INFO    ] No camera update needed
[2026-08-25 21:58:28,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:58:28,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:58:28,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:58:28,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:58:30,224.224 INFO    ] ================================================
[2026-08-25 21:58:30,239.239 INFO    ] Launching Daemon at Tue Aug 25 21:58:30 IST 2026
[2026-08-25 21:58:30,250.250 INFO    ] ================================================
[2026-08-25 21:58:30,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:58:30
[2026-08-25 21:58:31,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:58:31,705.705 INFO    ] Initializing speech engine...
[2026-08-25 21:58:31,728.728 INFO    ] 2026-08-25 21:58:31
[2026-08-25 21:58:32,008.008 INFO    ] 2026-08-25 21:58:31
[2026-08-25 21:58:32,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:58:32,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:58:32,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:58:32,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:58:32,404.404 INFO    ] time= 25/08/2026 21:58:32
[2026-08-25 21:58:32,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:58:32,482.482 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:58:32,601.601 INFO    ] No existing commands found in stream
[2026-08-25 21:58:37,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:58:37,622.622 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-08-25 21:58:40,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 21:58:40,598.598 INFO    ] Checking for system updates...
[2026-08-25 21:58:40,635.635 INFO    ] 200
[2026-08-25 21:58:40,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:40,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:58:40,693.693 INFO    ] No update needed
[2026-08-25 21:58:40,696.696 INFO    ] Checking for camera pi updates...
[2026-08-25 21:58:40,730.730 INFO    ] 200
[2026-08-25 21:58:40,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:40,779.779 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:58:40,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:58:40,830.830 INFO    ] No camera update needed
[2026-08-25 21:58:40,832.832 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:58:40,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:58:40,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:58:40,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:58:42,887.887 INFO    ] ================================================
[2026-08-25 21:58:42,901.901 INFO    ] Launching Daemon at Tue Aug 25 21:58:42 IST 2026
[2026-08-25 21:58:42,912.912 INFO    ] ================================================
[2026-08-25 21:58:43,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:58:43
[2026-08-25 21:58:44,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:58:44,361.361 INFO    ] Initializing speech engine...
[2026-08-25 21:58:44,370.370 INFO    ] 2026-08-25 21:58:44
[2026-08-25 21:58:44,634.634 INFO    ] 2026-08-25 21:58:44
[2026-08-25 21:58:44,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:58:44,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:58:44,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:58:45,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:58:45,110.110 INFO    ] time= 25/08/2026 21:58:45
[2026-08-25 21:58:45,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:58:45,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:58:45,327.327 INFO    ] No existing commands found in stream
[2026-08-25 21:58:50,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:58:50,343.343 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 21:58:53,844.844 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:58:53,847.847 INFO    ] Checking for system updates...
[2026-08-25 21:58:53,883.883 INFO    ] 200
[2026-08-25 21:58:53,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:53,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:58:53,943.943 INFO    ] No update needed
[2026-08-25 21:58:53,945.945 INFO    ] Checking for camera pi updates...
[2026-08-25 21:58:53,982.982 INFO    ] 200
[2026-08-25 21:58:53,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:58:54,030.030 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:58:54,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:58:54,091.091 INFO    ] No camera update needed
[2026-08-25 21:58:54,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:58:54,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:58:54,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:58:54,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:58:56,147.147 INFO    ] ================================================
[2026-08-25 21:58:56,163.163 INFO    ] Launching Daemon at Tue Aug 25 21:58:56 IST 2026
[2026-08-25 21:58:56,174.174 INFO    ] ================================================
[2026-08-25 21:58:56,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:58:56
[2026-08-25 21:58:57,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:58:57,771.771 INFO    ] Initializing speech engine...
[2026-08-25 21:58:57,786.786 INFO    ] 2026-08-25 21:58:57
[2026-08-25 21:58:58,053.053 INFO    ] 2026-08-25 21:58:58
[2026-08-25 21:58:58,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:58:58,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:58:58,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:58:58,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:58:58,537.537 INFO    ] time= 25/08/2026 21:58:58
[2026-08-25 21:58:58,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:58:58,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:58:58,758.758 INFO    ] No existing commands found in stream
[2026-08-25 21:59:03,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:59:03,782.782 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-08-25 21:59:08,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 21:59:08,235.235 INFO    ] Checking for system updates...
[2026-08-25 21:59:08,270.270 INFO    ] 200
[2026-08-25 21:59:08,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:08,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:59:08,327.327 INFO    ] No update needed
[2026-08-25 21:59:08,330.330 INFO    ] Checking for camera pi updates...
[2026-08-25 21:59:08,363.363 INFO    ] 200
[2026-08-25 21:59:08,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:08,406.406 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:59:08,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:59:08,466.466 INFO    ] No camera update needed
[2026-08-25 21:59:08,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:59:08,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:59:08,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:59:08,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:59:10,522.522 INFO    ] ================================================
[2026-08-25 21:59:10,537.537 INFO    ] Launching Daemon at Tue Aug 25 21:59:10 IST 2026
[2026-08-25 21:59:10,548.548 INFO    ] ================================================
[2026-08-25 21:59:11,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:59:11
[2026-08-25 21:59:11,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:59:11,987.987 INFO    ] Initializing speech engine...
[2026-08-25 21:59:11,998.998 INFO    ] 2026-08-25 21:59:11
[2026-08-25 21:59:12,258.258 INFO    ] 2026-08-25 21:59:12
[2026-08-25 21:59:12,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:59:12,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:59:12,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:59:12,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:59:12,720.720 INFO    ] time= 25/08/2026 21:59:12
[2026-08-25 21:59:12,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:59:12,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:59:12,934.934 INFO    ] No existing commands found in stream
[2026-08-25 21:59:17,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:59:17,964.964 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 21:59:20,247.247 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 21:59:20,250.250 INFO    ] Checking for system updates...
[2026-08-25 21:59:20,285.285 INFO    ] 200
[2026-08-25 21:59:20,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:20,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:59:20,342.342 INFO    ] No update needed
[2026-08-25 21:59:20,345.345 INFO    ] Checking for camera pi updates...
[2026-08-25 21:59:20,379.379 INFO    ] 200
[2026-08-25 21:59:20,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:20,422.422 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:59:20,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:59:20,479.479 INFO    ] No camera update needed
[2026-08-25 21:59:20,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:59:20,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:59:20,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:59:20,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:59:22,537.537 INFO    ] ================================================
[2026-08-25 21:59:22,552.552 INFO    ] Launching Daemon at Tue Aug 25 21:59:22 IST 2026
[2026-08-25 21:59:22,563.563 INFO    ] ================================================
[2026-08-25 21:59:23,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:59:23
[2026-08-25 21:59:23,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:59:23,985.985 INFO    ] Initializing speech engine...
[2026-08-25 21:59:23,995.995 INFO    ] 2026-08-25 21:59:23
[2026-08-25 21:59:24,243.243 INFO    ] 2026-08-25 21:59:24
[2026-08-25 21:59:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:59:24,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:59:24,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:59:24,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:59:24,698.698 INFO    ] time= 25/08/2026 21:59:24
[2026-08-25 21:59:24,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:59:24,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:59:24,878.878 INFO    ] No existing commands found in stream
[2026-08-25 21:59:29,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:59:29,900.900 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-08-25 21:59:31,430.430 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 21:59:31,433.433 INFO    ] Checking for system updates...
[2026-08-25 21:59:31,468.468 INFO    ] 200
[2026-08-25 21:59:31,471.471 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:31,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:59:31,531.531 INFO    ] No update needed
[2026-08-25 21:59:31,534.534 INFO    ] Checking for camera pi updates...
[2026-08-25 21:59:31,570.570 INFO    ] 200
[2026-08-25 21:59:31,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:31,617.617 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:59:31,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:59:31,664.664 INFO    ] No camera update needed
[2026-08-25 21:59:31,667.667 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:59:31,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:59:31,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:59:31,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:59:33,723.723 INFO    ] ================================================
[2026-08-25 21:59:33,738.738 INFO    ] Launching Daemon at Tue Aug 25 21:59:33 IST 2026
[2026-08-25 21:59:33,748.748 INFO    ] ================================================
[2026-08-25 21:59:34,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:59:34
[2026-08-25 21:59:34,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:59:35,144.144 INFO    ] Initializing speech engine...
[2026-08-25 21:59:35,159.159 INFO    ] 2026-08-25 21:59:35
[2026-08-25 21:59:35,427.427 INFO    ] 2026-08-25 21:59:35
[2026-08-25 21:59:35,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:59:35,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:59:35,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:59:35,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:59:35,805.805 INFO    ] time= 25/08/2026 21:59:35
[2026-08-25 21:59:35,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:59:35,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:59:35,990.990 INFO    ] No existing commands found in stream
[2026-08-25 21:59:41,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:59:41,018.018 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 21:59:42,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 21:59:42,965.965 INFO    ] Checking for system updates...
[2026-08-25 21:59:43,000.000 INFO    ] 200
[2026-08-25 21:59:43,003.003 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:43,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:59:43,057.057 INFO    ] No update needed
[2026-08-25 21:59:43,060.060 INFO    ] Checking for camera pi updates...
[2026-08-25 21:59:43,093.093 INFO    ] 200
[2026-08-25 21:59:43,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:43,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:59:43,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 21:59:43,284.284 INFO    ] No camera update needed
[2026-08-25 21:59:43,287.287 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:59:43,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:59:43,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:59:43,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:59:45,341.341 INFO    ] ================================================
[2026-08-25 21:59:45,356.356 INFO    ] Launching Daemon at Tue Aug 25 21:59:45 IST 2026
[2026-08-25 21:59:45,366.366 INFO    ] ================================================
[2026-08-25 21:59:45,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:59:45
[2026-08-25 21:59:46,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:59:46,782.782 INFO    ] Initializing speech engine...
[2026-08-25 21:59:46,790.790 INFO    ] 2026-08-25 21:59:46
[2026-08-25 21:59:47,059.059 INFO    ] 2026-08-25 21:59:47
[2026-08-25 21:59:47,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:59:47,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:59:47,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:59:47,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:59:47,510.510 INFO    ] time= 25/08/2026 21:59:47
[2026-08-25 21:59:47,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:59:47,591.591 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:59:47,724.724 INFO    ] No existing commands found in stream
[2026-08-25 21:59:52,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 21:59:52,750.750 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 21:59:55,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 21:59:55,083.083 INFO    ] Checking for system updates...
[2026-08-25 21:59:55,118.118 INFO    ] 200
[2026-08-25 21:59:55,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:55,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:59:55,179.179 INFO    ] No update needed
[2026-08-25 21:59:55,181.181 INFO    ] Checking for camera pi updates...
[2026-08-25 21:59:55,215.215 INFO    ] 200
[2026-08-25 21:59:55,217.217 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 21:59:55,262.262 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 21:59:55,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 21:59:55,314.314 INFO    ] No camera update needed
[2026-08-25 21:59:55,317.317 INFO    ] Script finished. Safe exiting...
[2026-08-25 21:59:55,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 21:59:55,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 21:59:55,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 21:59:57,369.369 INFO    ] ================================================
[2026-08-25 21:59:57,384.384 INFO    ] Launching Daemon at Tue Aug 25 21:59:57 IST 2026
[2026-08-25 21:59:57,394.394 INFO    ] ================================================
[2026-08-25 21:59:58,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 21:59:58
[2026-08-25 21:59:58,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 21:59:58,997.997 INFO    ] Initializing speech engine...
[2026-08-25 21:59:59,013.013 INFO    ] 2026-08-25 21:59:59
[2026-08-25 21:59:59,315.315 INFO    ] 2026-08-25 21:59:59
[2026-08-25 21:59:59,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 21:59:59,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 21:59:59,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 21:59:59,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 21:59:59,819.819 INFO    ] time= 25/08/2026 21:59:59
[2026-08-25 21:59:59,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 21:59:59,844.844 INFO    ] Checking for existing commands in stream...
[2026-08-25 21:59:59,964.964 INFO    ] No existing commands found in stream
[2026-08-25 22:00:04,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:00:04,990.990 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 22:00:09,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:00:09,246.246 INFO    ] Checking for system updates...
[2026-08-25 22:00:09,285.285 INFO    ] 200
[2026-08-25 22:00:09,287.287 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:09,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:00:09,342.342 INFO    ] No update needed
[2026-08-25 22:00:09,344.344 INFO    ] Checking for camera pi updates...
[2026-08-25 22:00:09,377.377 INFO    ] 200
[2026-08-25 22:00:09,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:09,423.423 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:00:09,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:00:09,479.479 INFO    ] No camera update needed
[2026-08-25 22:00:09,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:00:09,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:00:09,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:00:09,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:00:11,534.534 INFO    ] ================================================
[2026-08-25 22:00:11,549.549 INFO    ] Launching Daemon at Tue Aug 25 22:00:11 IST 2026
[2026-08-25 22:00:11,559.559 INFO    ] ================================================
[2026-08-25 22:00:12,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:00:12
[2026-08-25 22:00:12,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:00:12,953.953 INFO    ] Initializing speech engine...
[2026-08-25 22:00:12,968.968 INFO    ] 2026-08-25 22:00:12
[2026-08-25 22:00:13,232.232 INFO    ] 2026-08-25 22:00:13
[2026-08-25 22:00:13,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:00:13,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:00:13,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:00:13,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:00:13,690.690 INFO    ] time= 25/08/2026 22:00:13
[2026-08-25 22:00:13,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:00:13,804.804 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:00:13,924.924 INFO    ] No existing commands found in stream
[2026-08-25 22:00:18,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:00:18,958.958 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 22:00:23,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:00:23,209.209 INFO    ] Checking for system updates...
[2026-08-25 22:00:23,245.245 INFO    ] 200
[2026-08-25 22:00:23,248.248 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:23,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:00:23,311.311 INFO    ] No update needed
[2026-08-25 22:00:23,313.313 INFO    ] Checking for camera pi updates...
[2026-08-25 22:00:23,348.348 INFO    ] 200
[2026-08-25 22:00:23,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:23,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:00:23,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:00:23,458.458 INFO    ] No camera update needed
[2026-08-25 22:00:23,461.461 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:00:23,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:00:23,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:00:23,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:00:25,517.517 INFO    ] ================================================
[2026-08-25 22:00:25,532.532 INFO    ] Launching Daemon at Tue Aug 25 22:00:25 IST 2026
[2026-08-25 22:00:25,543.543 INFO    ] ================================================
[2026-08-25 22:00:26,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:00:26
[2026-08-25 22:00:26,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:00:27,078.078 INFO    ] Initializing speech engine...
[2026-08-25 22:00:27,094.094 INFO    ] 2026-08-25 22:00:27
[2026-08-25 22:00:27,349.349 INFO    ] 2026-08-25 22:00:27
[2026-08-25 22:00:27,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:00:27,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:00:27,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:00:27,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:00:27,826.826 INFO    ] time= 25/08/2026 22:00:27
[2026-08-25 22:00:27,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:00:27,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:00:28,041.041 INFO    ] No existing commands found in stream
[2026-08-25 22:00:33,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:00:33,064.064 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-08-25 22:00:34,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:00:34,607.607 INFO    ] Checking for system updates...
[2026-08-25 22:00:34,647.647 INFO    ] 200
[2026-08-25 22:00:34,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:34,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:00:34,708.708 INFO    ] No update needed
[2026-08-25 22:00:34,710.710 INFO    ] Checking for camera pi updates...
[2026-08-25 22:00:34,748.748 INFO    ] 200
[2026-08-25 22:00:34,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:34,792.792 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:00:34,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:00:34,849.849 INFO    ] No camera update needed
[2026-08-25 22:00:34,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:00:34,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:00:34,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:00:34,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:00:36,907.907 INFO    ] ================================================
[2026-08-25 22:00:36,922.922 INFO    ] Launching Daemon at Tue Aug 25 22:00:36 IST 2026
[2026-08-25 22:00:36,933.933 INFO    ] ================================================
[2026-08-25 22:00:37,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:00:37
[2026-08-25 22:00:38,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:00:38,547.547 INFO    ] Initializing speech engine...
[2026-08-25 22:00:38,557.557 INFO    ] 2026-08-25 22:00:38
[2026-08-25 22:00:38,828.828 INFO    ] 2026-08-25 22:00:38
[2026-08-25 22:00:38,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:00:39,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:00:39,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:00:39,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:00:39,313.313 INFO    ] time= 25/08/2026 22:00:39
[2026-08-25 22:00:39,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:00:39,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:00:39,530.530 INFO    ] No existing commands found in stream
[2026-08-25 22:00:44,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:00:44,564.564 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 22:00:45,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:00:45,484.484 INFO    ] Checking for system updates...
[2026-08-25 22:00:45,524.524 INFO    ] 200
[2026-08-25 22:00:45,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:45,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:00:45,590.590 INFO    ] No update needed
[2026-08-25 22:00:45,592.592 INFO    ] Checking for camera pi updates...
[2026-08-25 22:00:45,627.627 INFO    ] 200
[2026-08-25 22:00:45,630.630 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:45,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:00:45,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:00:45,731.731 INFO    ] No camera update needed
[2026-08-25 22:00:45,733.733 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:00:45,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:00:45,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:00:45,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:00:47,788.788 INFO    ] ================================================
[2026-08-25 22:00:47,804.804 INFO    ] Launching Daemon at Tue Aug 25 22:00:47 IST 2026
[2026-08-25 22:00:47,815.815 INFO    ] ================================================
[2026-08-25 22:00:48,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:00:48
[2026-08-25 22:00:48,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:00:49,264.264 INFO    ] Initializing speech engine...
[2026-08-25 22:00:49,273.273 INFO    ] 2026-08-25 22:00:49
[2026-08-25 22:00:49,532.532 INFO    ] 2026-08-25 22:00:49
[2026-08-25 22:00:49,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:00:49,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:00:49,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:00:49,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:00:49,996.996 INFO    ] time= 25/08/2026 22:00:49
[2026-08-25 22:00:50,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:00:50,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:00:50,200.200 INFO    ] No existing commands found in stream
[2026-08-25 22:00:55,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:00:55,233.233 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-08-25 22:00:58,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:00:58,164.164 INFO    ] Checking for system updates...
[2026-08-25 22:00:58,199.199 INFO    ] 200
[2026-08-25 22:00:58,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:58,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:00:58,257.257 INFO    ] No update needed
[2026-08-25 22:00:58,259.259 INFO    ] Checking for camera pi updates...
[2026-08-25 22:00:58,296.296 INFO    ] 200
[2026-08-25 22:00:58,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:00:58,339.339 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:00:58,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:00:58,386.386 INFO    ] No camera update needed
[2026-08-25 22:00:58,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:00:58,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:00:58,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:00:58,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:01:00,441.441 INFO    ] ================================================
[2026-08-25 22:01:00,457.457 INFO    ] Launching Daemon at Tue Aug 25 22:01:00 IST 2026
[2026-08-25 22:01:00,468.468 INFO    ] ================================================
[2026-08-25 22:01:01,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:01:01
[2026-08-25 22:01:01,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:01:02,192.192 INFO    ] Initializing speech engine...
[2026-08-25 22:01:02,199.199 INFO    ] 2026-08-25 22:01:02
[2026-08-25 22:01:02,559.559 INFO    ] 2026-08-25 22:01:02
[2026-08-25 22:01:02,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:01:02,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:01:02,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:01:03,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:01:03,082.082 INFO    ] time= 25/08/2026 22:01:03
[2026-08-25 22:01:03,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:01:03,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:01:03,344.344 INFO    ] No existing commands found in stream
[2026-08-25 22:01:08,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:01:08,374.374 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 22:01:10,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:01:10,522.522 INFO    ] Checking for system updates...
[2026-08-25 22:01:10,558.558 INFO    ] 200
[2026-08-25 22:01:10,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:10,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:01:10,619.619 INFO    ] No update needed
[2026-08-25 22:01:10,621.621 INFO    ] Checking for camera pi updates...
[2026-08-25 22:01:10,655.655 INFO    ] 200
[2026-08-25 22:01:10,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:10,702.702 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:01:10,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:01:10,752.752 INFO    ] No camera update needed
[2026-08-25 22:01:10,755.755 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:01:10,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:01:10,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:01:10,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:01:12,807.807 INFO    ] ================================================
[2026-08-25 22:01:12,823.823 INFO    ] Launching Daemon at Tue Aug 25 22:01:12 IST 2026
[2026-08-25 22:01:12,833.833 INFO    ] ================================================
[2026-08-25 22:01:13,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:01:13
[2026-08-25 22:01:14,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:01:14,279.279 INFO    ] Initializing speech engine...
[2026-08-25 22:01:14,289.289 INFO    ] 2026-08-25 22:01:14
[2026-08-25 22:01:14,542.542 INFO    ] 2026-08-25 22:01:14
[2026-08-25 22:01:14,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:01:14,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:01:14,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:01:14,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:01:15,005.005 INFO    ] time= 25/08/2026 22:01:14
[2026-08-25 22:01:15,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:01:15,096.096 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:01:15,241.241 INFO    ] No existing commands found in stream
[2026-08-25 22:01:20,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:01:20,258.258 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 22:01:21,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:01:21,171.171 INFO    ] Checking for system updates...
[2026-08-25 22:01:21,206.206 INFO    ] 200
[2026-08-25 22:01:21,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:21,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:01:21,264.264 INFO    ] No update needed
[2026-08-25 22:01:21,266.266 INFO    ] Checking for camera pi updates...
[2026-08-25 22:01:21,302.302 INFO    ] 200
[2026-08-25 22:01:21,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:21,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:01:21,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:01:21,393.393 INFO    ] No camera update needed
[2026-08-25 22:01:21,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:01:21,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:01:21,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:01:21,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:01:23,448.448 INFO    ] ================================================
[2026-08-25 22:01:23,463.463 INFO    ] Launching Daemon at Tue Aug 25 22:01:23 IST 2026
[2026-08-25 22:01:23,474.474 INFO    ] ================================================
[2026-08-25 22:01:24,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:01:24
[2026-08-25 22:01:24,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:01:24,932.932 INFO    ] Initializing speech engine...
[2026-08-25 22:01:24,937.937 INFO    ] 2026-08-25 22:01:24
[2026-08-25 22:01:25,195.195 INFO    ] 2026-08-25 22:01:25
[2026-08-25 22:01:25,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:01:25,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:01:25,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:01:25,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:01:25,653.653 INFO    ] time= 25/08/2026 22:01:25
[2026-08-25 22:01:25,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:01:25,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:01:25,878.878 INFO    ] No existing commands found in stream
[2026-08-25 22:01:30,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:01:30,905.905 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 22:01:34,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:01:34,140.140 INFO    ] Checking for system updates...
[2026-08-25 22:01:34,177.177 INFO    ] 200
[2026-08-25 22:01:34,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:34,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:01:34,237.237 INFO    ] No update needed
[2026-08-25 22:01:34,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 22:01:34,275.275 INFO    ] 200
[2026-08-25 22:01:34,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:34,323.323 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:01:34,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:01:34,386.386 INFO    ] No camera update needed
[2026-08-25 22:01:34,389.389 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:01:34,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:01:34,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:01:34,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:01:36,443.443 INFO    ] ================================================
[2026-08-25 22:01:36,460.460 INFO    ] Launching Daemon at Tue Aug 25 22:01:36 IST 2026
[2026-08-25 22:01:36,470.470 INFO    ] ================================================
[2026-08-25 22:01:37,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:01:37
[2026-08-25 22:01:37,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:01:37,879.879 INFO    ] Initializing speech engine...
[2026-08-25 22:01:37,895.895 INFO    ] 2026-08-25 22:01:37
[2026-08-25 22:01:38,177.177 INFO    ] 2026-08-25 22:01:38
[2026-08-25 22:01:38,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:01:38,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:01:38,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:01:38,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:01:38,558.558 INFO    ] time= 25/08/2026 22:01:38
[2026-08-25 22:01:38,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:01:38,598.598 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:01:38,681.681 INFO    ] No existing commands found in stream
[2026-08-25 22:01:43,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:01:43,697.697 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 22:01:44,207.207 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:01:44,209.209 INFO    ] Checking for system updates...
[2026-08-25 22:01:44,245.245 INFO    ] 200
[2026-08-25 22:01:44,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:44,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:01:44,303.303 INFO    ] No update needed
[2026-08-25 22:01:44,306.306 INFO    ] Checking for camera pi updates...
[2026-08-25 22:01:44,339.339 INFO    ] 200
[2026-08-25 22:01:44,342.342 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:44,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:01:44,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:01:44,540.540 INFO    ] No camera update needed
[2026-08-25 22:01:44,542.542 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:01:44,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:01:44,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:01:44,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:01:46,595.595 INFO    ] ================================================
[2026-08-25 22:01:46,610.610 INFO    ] Launching Daemon at Tue Aug 25 22:01:46 IST 2026
[2026-08-25 22:01:46,621.621 INFO    ] ================================================
[2026-08-25 22:01:47,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:01:47
[2026-08-25 22:01:47,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:01:48,081.081 INFO    ] Initializing speech engine...
[2026-08-25 22:01:48,088.088 INFO    ] 2026-08-25 22:01:48
[2026-08-25 22:01:48,349.349 INFO    ] 2026-08-25 22:01:48
[2026-08-25 22:01:48,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:01:48,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:01:48,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:01:48,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:01:48,823.823 INFO    ] time= 25/08/2026 22:01:48
[2026-08-25 22:01:48,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:01:48,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:01:49,054.054 INFO    ] No existing commands found in stream
[2026-08-25 22:01:54,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:01:54,070.070 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-08-25 22:01:55,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:01:55,801.801 INFO    ] Checking for system updates...
[2026-08-25 22:01:55,837.837 INFO    ] 200
[2026-08-25 22:01:55,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:55,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:01:55,894.894 INFO    ] No update needed
[2026-08-25 22:01:55,897.897 INFO    ] Checking for camera pi updates...
[2026-08-25 22:01:55,934.934 INFO    ] 200
[2026-08-25 22:01:55,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:01:55,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:01:56,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:01:56,043.043 INFO    ] No camera update needed
[2026-08-25 22:01:56,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:01:56,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:01:56,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:01:56,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:01:58,100.100 INFO    ] ================================================
[2026-08-25 22:01:58,116.116 INFO    ] Launching Daemon at Tue Aug 25 22:01:58 IST 2026
[2026-08-25 22:01:58,127.127 INFO    ] ================================================
[2026-08-25 22:01:58,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:01:58
[2026-08-25 22:01:59,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:01:59,754.754 INFO    ] Initializing speech engine...
[2026-08-25 22:01:59,765.765 INFO    ] 2026-08-25 22:01:59
[2026-08-25 22:02:00,064.064 INFO    ] 2026-08-25 22:02:00
[2026-08-25 22:02:00,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:02:00,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:02:00,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:02:00,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:02:00,568.568 INFO    ] time= 25/08/2026 22:02:00
[2026-08-25 22:02:00,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:02:00,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:02:00,706.706 INFO    ] No existing commands found in stream
[2026-08-25 22:02:05,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:02:05,735.735 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 22:02:06,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:02:06,539.539 INFO    ] Checking for system updates...
[2026-08-25 22:02:06,575.575 INFO    ] 200
[2026-08-25 22:02:06,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:06,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:02:06,637.637 INFO    ] No update needed
[2026-08-25 22:02:06,639.639 INFO    ] Checking for camera pi updates...
[2026-08-25 22:02:06,676.676 INFO    ] 200
[2026-08-25 22:02:06,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:06,718.718 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:02:06,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:02:06,777.777 INFO    ] No camera update needed
[2026-08-25 22:02:06,780.780 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:02:06,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:02:06,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:02:06,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:02:08,837.837 INFO    ] ================================================
[2026-08-25 22:02:08,852.852 INFO    ] Launching Daemon at Tue Aug 25 22:02:08 IST 2026
[2026-08-25 22:02:08,864.864 INFO    ] ================================================
[2026-08-25 22:02:09,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:02:09
[2026-08-25 22:02:10,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:02:10,273.273 INFO    ] Initializing speech engine...
[2026-08-25 22:02:10,282.282 INFO    ] 2026-08-25 22:02:10
[2026-08-25 22:02:10,577.577 INFO    ] 2026-08-25 22:02:10
[2026-08-25 22:02:10,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:02:10,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:02:10,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:02:10,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:02:10,950.950 INFO    ] time= 25/08/2026 22:02:10
[2026-08-25 22:02:10,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:02:10,984.984 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:02:11,072.072 INFO    ] No existing commands found in stream
[2026-08-25 22:02:16,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:02:16,088.088 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-08-25 22:02:17,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:02:17,447.447 INFO    ] Checking for system updates...
[2026-08-25 22:02:17,484.484 INFO    ] 200
[2026-08-25 22:02:17,486.486 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:17,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:02:17,541.541 INFO    ] No update needed
[2026-08-25 22:02:17,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 22:02:17,580.580 INFO    ] 200
[2026-08-25 22:02:17,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:17,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:02:17,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:02:17,682.682 INFO    ] No camera update needed
[2026-08-25 22:02:17,685.685 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:02:17,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:02:17,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:02:17,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:02:19,738.738 INFO    ] ================================================
[2026-08-25 22:02:19,754.754 INFO    ] Launching Daemon at Tue Aug 25 22:02:19 IST 2026
[2026-08-25 22:02:19,766.766 INFO    ] ================================================
[2026-08-25 22:02:20,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:02:20
[2026-08-25 22:02:20,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:02:21,169.169 INFO    ] Initializing speech engine...
[2026-08-25 22:02:21,182.182 INFO    ] 2026-08-25 22:02:21
[2026-08-25 22:02:21,465.465 INFO    ] 2026-08-25 22:02:21
[2026-08-25 22:02:21,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:02:21,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:02:21,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:02:21,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:02:21,859.859 INFO    ] time= 25/08/2026 22:02:21
[2026-08-25 22:02:21,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:02:21,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:02:21,969.969 INFO    ] No existing commands found in stream
[2026-08-25 22:02:27,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:02:27,002.002 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 22:02:28,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:02:28,298.298 INFO    ] Checking for system updates...
[2026-08-25 22:02:28,334.334 INFO    ] 200
[2026-08-25 22:02:28,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:28,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:02:28,401.401 INFO    ] No update needed
[2026-08-25 22:02:28,403.403 INFO    ] Checking for camera pi updates...
[2026-08-25 22:02:28,439.439 INFO    ] 200
[2026-08-25 22:02:28,441.441 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:28,482.482 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:02:28,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:02:28,535.535 INFO    ] No camera update needed
[2026-08-25 22:02:28,537.537 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:02:28,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:02:28,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:02:28,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:02:30,590.590 INFO    ] ================================================
[2026-08-25 22:02:30,605.605 INFO    ] Launching Daemon at Tue Aug 25 22:02:30 IST 2026
[2026-08-25 22:02:30,616.616 INFO    ] ================================================
[2026-08-25 22:02:31,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:02:31
[2026-08-25 22:02:31,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:02:32,265.265 INFO    ] Initializing speech engine...
[2026-08-25 22:02:32,272.272 INFO    ] 2026-08-25 22:02:32
[2026-08-25 22:02:32,551.551 INFO    ] 2026-08-25 22:02:32
[2026-08-25 22:02:32,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:02:32,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:02:32,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:02:33,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:02:33,063.063 INFO    ] time= 25/08/2026 22:02:33
[2026-08-25 22:02:33,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:02:33,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:02:33,230.230 INFO    ] No existing commands found in stream
[2026-08-25 22:02:38,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:02:38,245.245 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 22:02:42,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:02:42,425.425 INFO    ] Checking for system updates...
[2026-08-25 22:02:42,461.461 INFO    ] 200
[2026-08-25 22:02:42,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:42,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:02:42,519.519 INFO    ] No update needed
[2026-08-25 22:02:42,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 22:02:42,561.561 INFO    ] 200
[2026-08-25 22:02:42,564.564 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:42,608.608 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:02:42,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:02:42,657.657 INFO    ] No camera update needed
[2026-08-25 22:02:42,660.660 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:02:42,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:02:42,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:02:42,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:02:44,712.712 INFO    ] ================================================
[2026-08-25 22:02:44,728.728 INFO    ] Launching Daemon at Tue Aug 25 22:02:44 IST 2026
[2026-08-25 22:02:44,739.739 INFO    ] ================================================
[2026-08-25 22:02:45,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:02:45
[2026-08-25 22:02:45,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:02:46,177.177 INFO    ] Initializing speech engine...
[2026-08-25 22:02:46,186.186 INFO    ] 2026-08-25 22:02:46
[2026-08-25 22:02:46,478.478 INFO    ] 2026-08-25 22:02:46
[2026-08-25 22:02:46,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:02:46,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:02:46,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:02:46,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:02:46,853.853 INFO    ] time= 25/08/2026 22:02:46
[2026-08-25 22:02:46,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:02:46,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:02:46,978.978 INFO    ] No existing commands found in stream
[2026-08-25 22:02:52,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:02:52,011.011 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 22:02:54,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:02:54,327.327 INFO    ] Checking for system updates...
[2026-08-25 22:02:54,362.362 INFO    ] 200
[2026-08-25 22:02:54,365.365 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:54,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:02:54,425.425 INFO    ] No update needed
[2026-08-25 22:02:54,427.427 INFO    ] Checking for camera pi updates...
[2026-08-25 22:02:54,461.461 INFO    ] 200
[2026-08-25 22:02:54,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:02:54,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:02:54,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:02:54,560.560 INFO    ] No camera update needed
[2026-08-25 22:02:54,563.563 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:02:54,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:02:54,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:02:54,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:02:56,623.623 INFO    ] ================================================
[2026-08-25 22:02:56,639.639 INFO    ] Launching Daemon at Tue Aug 25 22:02:56 IST 2026
[2026-08-25 22:02:56,650.650 INFO    ] ================================================
[2026-08-25 22:02:57,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:02:57
[2026-08-25 22:02:57,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:02:58,114.114 INFO    ] Initializing speech engine...
[2026-08-25 22:02:58,120.120 INFO    ] 2026-08-25 22:02:58
[2026-08-25 22:02:58,368.368 INFO    ] 2026-08-25 22:02:58
[2026-08-25 22:02:58,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:02:58,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:02:58,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:02:58,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:02:58,845.845 INFO    ] time= 25/08/2026 22:02:58
[2026-08-25 22:02:58,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:02:58,932.932 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:02:59,079.079 INFO    ] No existing commands found in stream
[2026-08-25 22:03:04,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:03:04,095.095 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 22:03:06,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:03:06,513.513 INFO    ] Checking for system updates...
[2026-08-25 22:03:06,549.549 INFO    ] 200
[2026-08-25 22:03:06,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:06,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:03:06,611.611 INFO    ] No update needed
[2026-08-25 22:03:06,613.613 INFO    ] Checking for camera pi updates...
[2026-08-25 22:03:06,647.647 INFO    ] 200
[2026-08-25 22:03:06,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:06,690.690 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:03:06,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:03:06,747.747 INFO    ] No camera update needed
[2026-08-25 22:03:06,749.749 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:03:06,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:03:06,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:03:06,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:03:08,806.806 INFO    ] ================================================
[2026-08-25 22:03:08,822.822 INFO    ] Launching Daemon at Tue Aug 25 22:03:08 IST 2026
[2026-08-25 22:03:08,834.834 INFO    ] ================================================
[2026-08-25 22:03:09,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:03:09
[2026-08-25 22:03:10,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:03:10,469.469 INFO    ] Initializing speech engine...
[2026-08-25 22:03:10,480.480 INFO    ] 2026-08-25 22:03:10
[2026-08-25 22:03:10,765.765 INFO    ] 2026-08-25 22:03:10
[2026-08-25 22:03:10,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:03:11,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:03:11,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:03:11,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:03:11,248.248 INFO    ] time= 25/08/2026 22:03:11
[2026-08-25 22:03:11,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:03:11,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:03:11,448.448 INFO    ] No existing commands found in stream
[2026-08-25 22:03:16,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:03:16,467.467 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-08-25 22:03:17,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:03:17,865.865 INFO    ] Checking for system updates...
[2026-08-25 22:03:17,909.909 INFO    ] 200
[2026-08-25 22:03:17,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:17,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:03:17,969.969 INFO    ] No update needed
[2026-08-25 22:03:17,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 22:03:18,008.008 INFO    ] 200
[2026-08-25 22:03:18,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:18,056.056 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:03:18,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:03:18,118.118 INFO    ] No camera update needed
[2026-08-25 22:03:18,121.121 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:03:18,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:03:18,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:03:18,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:03:20,179.179 INFO    ] ================================================
[2026-08-25 22:03:20,195.195 INFO    ] Launching Daemon at Tue Aug 25 22:03:20 IST 2026
[2026-08-25 22:03:20,207.207 INFO    ] ================================================
[2026-08-25 22:03:20,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:03:20
[2026-08-25 22:03:21,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:03:21,672.672 INFO    ] Initializing speech engine...
[2026-08-25 22:03:21,689.689 INFO    ] 2026-08-25 22:03:21
[2026-08-25 22:03:21,983.983 INFO    ] 2026-08-25 22:03:21
[2026-08-25 22:03:22,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:03:22,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:03:22,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:03:22,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:03:22,524.524 INFO    ] time= 25/08/2026 22:03:22
[2026-08-25 22:03:22,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:03:22,564.564 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:03:22,677.677 INFO    ] No existing commands found in stream
[2026-08-25 22:03:27,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:03:27,707.707 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-08-25 22:03:29,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:03:29,375.375 INFO    ] Checking for system updates...
[2026-08-25 22:03:29,412.412 INFO    ] 200
[2026-08-25 22:03:29,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:29,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:03:29,479.479 INFO    ] No update needed
[2026-08-25 22:03:29,482.482 INFO    ] Checking for camera pi updates...
[2026-08-25 22:03:29,520.520 INFO    ] 200
[2026-08-25 22:03:29,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:29,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:03:29,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:03:29,616.616 INFO    ] No camera update needed
[2026-08-25 22:03:29,618.618 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:03:29,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:03:29,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:03:29,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:03:31,672.672 INFO    ] ================================================
[2026-08-25 22:03:31,687.687 INFO    ] Launching Daemon at Tue Aug 25 22:03:31 IST 2026
[2026-08-25 22:03:31,698.698 INFO    ] ================================================
[2026-08-25 22:03:32,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:03:32
[2026-08-25 22:03:32,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:03:33,190.190 INFO    ] Initializing speech engine...
[2026-08-25 22:03:33,210.210 INFO    ] 2026-08-25 22:03:33
[2026-08-25 22:03:33,502.502 INFO    ] 2026-08-25 22:03:33
[2026-08-25 22:03:33,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:03:33,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:03:33,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:03:33,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:03:33,868.868 INFO    ] time= 25/08/2026 22:03:33
[2026-08-25 22:03:33,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:03:33,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:03:34,016.016 INFO    ] No existing commands found in stream
[2026-08-25 22:03:39,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:03:39,034.034 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 22:03:41,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:03:41,324.324 INFO    ] Checking for system updates...
[2026-08-25 22:03:41,361.361 INFO    ] 200
[2026-08-25 22:03:41,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:41,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:03:41,419.419 INFO    ] No update needed
[2026-08-25 22:03:41,422.422 INFO    ] Checking for camera pi updates...
[2026-08-25 22:03:41,456.456 INFO    ] 200
[2026-08-25 22:03:41,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:41,504.504 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:03:41,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:03:41,553.553 INFO    ] No camera update needed
[2026-08-25 22:03:41,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:03:41,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:03:41,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:03:41,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:03:43,609.609 INFO    ] ================================================
[2026-08-25 22:03:43,625.625 INFO    ] Launching Daemon at Tue Aug 25 22:03:43 IST 2026
[2026-08-25 22:03:43,636.636 INFO    ] ================================================
[2026-08-25 22:03:44,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:03:44
[2026-08-25 22:03:44,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:03:45,059.059 INFO    ] Initializing speech engine...
[2026-08-25 22:03:45,066.066 INFO    ] 2026-08-25 22:03:45
[2026-08-25 22:03:45,368.368 INFO    ] 2026-08-25 22:03:45
[2026-08-25 22:03:45,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:03:45,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:03:45,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:03:45,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:03:45,798.798 INFO    ] time= 25/08/2026 22:03:45
[2026-08-25 22:03:45,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:03:45,814.814 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:03:45,892.892 INFO    ] No existing commands found in stream
[2026-08-25 22:03:50,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:03:50,911.911 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 22:03:51,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:03:51,952.952 INFO    ] Checking for system updates...
[2026-08-25 22:03:51,988.988 INFO    ] 200
[2026-08-25 22:03:51,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:52,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:03:52,049.049 INFO    ] No update needed
[2026-08-25 22:03:52,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 22:03:52,086.086 INFO    ] 200
[2026-08-25 22:03:52,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:03:52,129.129 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:03:52,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:03:52,275.275 INFO    ] No camera update needed
[2026-08-25 22:03:52,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:03:52,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:03:52,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:03:52,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:03:54,330.330 INFO    ] ================================================
[2026-08-25 22:03:54,346.346 INFO    ] Launching Daemon at Tue Aug 25 22:03:54 IST 2026
[2026-08-25 22:03:54,357.357 INFO    ] ================================================
[2026-08-25 22:03:55,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:03:55
[2026-08-25 22:03:55,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:03:56,064.064 INFO    ] Initializing speech engine...
[2026-08-25 22:03:56,073.073 INFO    ] 2026-08-25 22:03:56
[2026-08-25 22:03:56,382.382 INFO    ] 2026-08-25 22:03:56
[2026-08-25 22:03:56,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:03:56,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:03:56,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:03:56,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:03:56,895.895 INFO    ] time= 25/08/2026 22:03:56
[2026-08-25 22:03:56,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:03:56,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:03:57,051.051 INFO    ] No existing commands found in stream
[2026-08-25 22:04:02,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:04:02,093.093 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 22:04:06,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:04:06,218.218 INFO    ] Checking for system updates...
[2026-08-25 22:04:06,260.260 INFO    ] 200
[2026-08-25 22:04:06,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:06,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:04:06,333.333 INFO    ] No update needed
[2026-08-25 22:04:06,336.336 INFO    ] Checking for camera pi updates...
[2026-08-25 22:04:06,370.370 INFO    ] 200
[2026-08-25 22:04:06,373.373 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:06,421.421 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:04:06,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:04:06,481.481 INFO    ] No camera update needed
[2026-08-25 22:04:06,484.484 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:04:06,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:04:06,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:04:06,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:04:08,541.541 INFO    ] ================================================
[2026-08-25 22:04:08,557.557 INFO    ] Launching Daemon at Tue Aug 25 22:04:08 IST 2026
[2026-08-25 22:04:08,568.568 INFO    ] ================================================
[2026-08-25 22:04:09,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:04:09
[2026-08-25 22:04:09,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:04:09,980.980 INFO    ] Initializing speech engine...
[2026-08-25 22:04:09,994.994 INFO    ] 2026-08-25 22:04:09
[2026-08-25 22:04:10,249.249 INFO    ] 2026-08-25 22:04:10
[2026-08-25 22:04:10,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:04:10,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:04:10,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:04:10,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:04:10,624.624 INFO    ] time= 25/08/2026 22:04:10
[2026-08-25 22:04:10,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:04:10,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:04:10,809.809 INFO    ] No existing commands found in stream
[2026-08-25 22:04:15,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:04:15,837.837 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 22:04:18,803.803 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:04:18,807.807 INFO    ] Checking for system updates...
[2026-08-25 22:04:18,849.849 INFO    ] 200
[2026-08-25 22:04:18,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:18,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:04:18,909.909 INFO    ] No update needed
[2026-08-25 22:04:18,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 22:04:18,951.951 INFO    ] 200
[2026-08-25 22:04:18,954.954 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:19,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:04:19,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:04:19,072.072 INFO    ] No camera update needed
[2026-08-25 22:04:19,075.075 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:04:19,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:04:19,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:04:19,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:04:21,133.133 INFO    ] ================================================
[2026-08-25 22:04:21,149.149 INFO    ] Launching Daemon at Tue Aug 25 22:04:21 IST 2026
[2026-08-25 22:04:21,159.159 INFO    ] ================================================
[2026-08-25 22:04:21,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:04:21
[2026-08-25 22:04:22,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:04:22,572.572 INFO    ] Initializing speech engine...
[2026-08-25 22:04:22,591.591 INFO    ] 2026-08-25 22:04:22
[2026-08-25 22:04:22,865.865 INFO    ] 2026-08-25 22:04:22
[2026-08-25 22:04:22,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:04:23,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:04:23,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:04:23,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:04:23,257.257 INFO    ] time= 25/08/2026 22:04:23
[2026-08-25 22:04:23,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:04:23,285.285 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:04:23,389.389 INFO    ] No existing commands found in stream
[2026-08-25 22:04:28,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:04:28,406.406 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 22:04:31,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:04:31,212.212 INFO    ] Checking for system updates...
[2026-08-25 22:04:31,247.247 INFO    ] 200
[2026-08-25 22:04:31,250.250 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:31,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:04:31,319.319 INFO    ] No update needed
[2026-08-25 22:04:31,321.321 INFO    ] Checking for camera pi updates...
[2026-08-25 22:04:31,358.358 INFO    ] 200
[2026-08-25 22:04:31,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:31,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:04:31,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:04:31,479.479 INFO    ] No camera update needed
[2026-08-25 22:04:31,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:04:31,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:04:31,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:04:31,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:04:33,547.547 INFO    ] ================================================
[2026-08-25 22:04:33,566.566 INFO    ] Launching Daemon at Tue Aug 25 22:04:33 IST 2026
[2026-08-25 22:04:33,580.580 INFO    ] ================================================
[2026-08-25 22:04:34,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:04:34
[2026-08-25 22:04:34,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:04:35,086.086 INFO    ] Initializing speech engine...
[2026-08-25 22:04:35,103.103 INFO    ] 2026-08-25 22:04:35
[2026-08-25 22:04:35,405.405 INFO    ] 2026-08-25 22:04:35
[2026-08-25 22:04:35,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:04:35,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:04:35,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:04:35,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:04:35,778.778 INFO    ] time= 25/08/2026 22:04:35
[2026-08-25 22:04:35,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:04:35,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:04:35,937.937 INFO    ] No existing commands found in stream
[2026-08-25 22:04:40,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:04:40,951.951 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-08-25 22:04:44,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:04:44,280.280 INFO    ] Checking for system updates...
[2026-08-25 22:04:44,329.329 INFO    ] 200
[2026-08-25 22:04:44,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:44,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:04:44,419.419 INFO    ] No update needed
[2026-08-25 22:04:44,421.421 INFO    ] Checking for camera pi updates...
[2026-08-25 22:04:44,464.464 INFO    ] 200
[2026-08-25 22:04:44,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:44,506.506 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:04:44,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:04:44,554.554 INFO    ] No camera update needed
[2026-08-25 22:04:44,559.559 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:04:44,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:04:44,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:04:44,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:04:46,612.612 INFO    ] ================================================
[2026-08-25 22:04:46,628.628 INFO    ] Launching Daemon at Tue Aug 25 22:04:46 IST 2026
[2026-08-25 22:04:46,638.638 INFO    ] ================================================
[2026-08-25 22:04:47,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:04:47
[2026-08-25 22:04:47,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:04:48,137.137 INFO    ] Initializing speech engine...
[2026-08-25 22:04:48,144.144 INFO    ] 2026-08-25 22:04:48
[2026-08-25 22:04:48,427.427 INFO    ] 2026-08-25 22:04:48
[2026-08-25 22:04:48,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:04:48,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:04:48,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:04:48,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:04:48,894.894 INFO    ] time= 25/08/2026 22:04:48
[2026-08-25 22:04:48,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:04:48,983.983 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:04:49,124.124 INFO    ] No existing commands found in stream
[2026-08-25 22:04:54,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:04:54,148.148 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 22:04:55,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:04:55,615.615 INFO    ] Checking for system updates...
[2026-08-25 22:04:55,656.656 INFO    ] 200
[2026-08-25 22:04:55,659.659 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:55,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:04:55,723.723 INFO    ] No update needed
[2026-08-25 22:04:55,726.726 INFO    ] Checking for camera pi updates...
[2026-08-25 22:04:55,761.761 INFO    ] 200
[2026-08-25 22:04:55,764.764 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:04:55,807.807 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:04:55,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:04:55,857.857 INFO    ] No camera update needed
[2026-08-25 22:04:55,859.859 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:04:55,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:04:55,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:04:55,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:04:57,915.915 INFO    ] ================================================
[2026-08-25 22:04:57,931.931 INFO    ] Launching Daemon at Tue Aug 25 22:04:57 IST 2026
[2026-08-25 22:04:57,941.941 INFO    ] ================================================
[2026-08-25 22:04:58,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:04:58
[2026-08-25 22:04:59,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:04:59,591.591 INFO    ] Initializing speech engine...
[2026-08-25 22:04:59,598.598 INFO    ] 2026-08-25 22:04:59
[2026-08-25 22:04:59,908.908 INFO    ] 2026-08-25 22:04:59
[2026-08-25 22:04:59,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:05:00,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:05:00,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:05:00,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:05:00,422.422 INFO    ] time= 25/08/2026 22:05:00
[2026-08-25 22:05:00,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:05:00,497.497 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:05:00,639.639 INFO    ] No existing commands found in stream
[2026-08-25 22:05:05,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:05:05,668.668 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 22:05:06,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:05:06,503.503 INFO    ] Checking for system updates...
[2026-08-25 22:05:06,540.540 INFO    ] 200
[2026-08-25 22:05:06,543.543 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:06,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:05:06,607.607 INFO    ] No update needed
[2026-08-25 22:05:06,610.610 INFO    ] Checking for camera pi updates...
[2026-08-25 22:05:06,645.645 INFO    ] 200
[2026-08-25 22:05:06,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:06,689.689 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:05:06,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:05:06,751.751 INFO    ] No camera update needed
[2026-08-25 22:05:06,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:05:06,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:05:06,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:05:06,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:05:08,812.812 INFO    ] ================================================
[2026-08-25 22:05:08,827.827 INFO    ] Launching Daemon at Tue Aug 25 22:05:08 IST 2026
[2026-08-25 22:05:08,838.838 INFO    ] ================================================
[2026-08-25 22:05:09,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:05:09
[2026-08-25 22:05:09,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:05:10,254.254 INFO    ] Initializing speech engine...
[2026-08-25 22:05:10,274.274 INFO    ] 2026-08-25 22:05:10
[2026-08-25 22:05:10,524.524 INFO    ] 2026-08-25 22:05:10
[2026-08-25 22:05:10,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:05:10,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:05:10,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:05:10,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:05:10,979.979 INFO    ] time= 25/08/2026 22:05:10
[2026-08-25 22:05:11,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:05:11,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:05:11,235.235 INFO    ] No existing commands found in stream
[2026-08-25 22:05:16,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:05:16,260.260 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 22:05:18,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:05:18,682.682 INFO    ] Checking for system updates...
[2026-08-25 22:05:18,719.719 INFO    ] 200
[2026-08-25 22:05:18,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:18,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:05:18,775.775 INFO    ] No update needed
[2026-08-25 22:05:18,778.778 INFO    ] Checking for camera pi updates...
[2026-08-25 22:05:18,815.815 INFO    ] 200
[2026-08-25 22:05:18,818.818 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:18,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:05:18,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:05:18,919.919 INFO    ] No camera update needed
[2026-08-25 22:05:18,921.921 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:05:18,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:05:18,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:05:18,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:05:20,974.974 INFO    ] ================================================
[2026-08-25 22:05:20,989.989 INFO    ] Launching Daemon at Tue Aug 25 22:05:20 IST 2026
[2026-08-25 22:05:21,999.999 INFO    ] ================================================
[2026-08-25 22:05:21,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:05:21
[2026-08-25 22:05:22,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:05:22,536.536 INFO    ] Initializing speech engine...
[2026-08-25 22:05:22,546.546 INFO    ] 2026-08-25 22:05:22
[2026-08-25 22:05:22,823.823 INFO    ] 2026-08-25 22:05:22
[2026-08-25 22:05:22,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:05:23,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:05:23,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:05:23,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:05:23,325.325 INFO    ] time= 25/08/2026 22:05:23
[2026-08-25 22:05:23,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:05:23,397.397 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:05:23,535.535 INFO    ] No existing commands found in stream
[2026-08-25 22:05:28,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:05:28,559.559 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-08-25 22:05:31,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:05:31,445.445 INFO    ] Checking for system updates...
[2026-08-25 22:05:31,486.486 INFO    ] 200
[2026-08-25 22:05:31,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:31,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:05:31,546.546 INFO    ] No update needed
[2026-08-25 22:05:31,548.548 INFO    ] Checking for camera pi updates...
[2026-08-25 22:05:31,587.587 INFO    ] 200
[2026-08-25 22:05:31,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:31,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:05:31,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:05:31,707.707 INFO    ] No camera update needed
[2026-08-25 22:05:31,710.710 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:05:31,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:05:31,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:05:31,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:05:33,768.768 INFO    ] ================================================
[2026-08-25 22:05:33,783.783 INFO    ] Launching Daemon at Tue Aug 25 22:05:33 IST 2026
[2026-08-25 22:05:33,794.794 INFO    ] ================================================
[2026-08-25 22:05:34,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:05:34
[2026-08-25 22:05:34,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:05:35,249.249 INFO    ] Initializing speech engine...
[2026-08-25 22:05:35,258.258 INFO    ] 2026-08-25 22:05:35
[2026-08-25 22:05:35,521.521 INFO    ] 2026-08-25 22:05:35
[2026-08-25 22:05:35,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:05:35,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:05:35,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:05:35,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:05:36,001.001 INFO    ] time= 25/08/2026 22:05:35
[2026-08-25 22:05:36,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:05:36,074.074 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:05:36,197.197 INFO    ] No existing commands found in stream
[2026-08-25 22:05:41,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:05:41,232.232 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 22:05:43,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:05:43,569.569 INFO    ] Checking for system updates...
[2026-08-25 22:05:43,610.610 INFO    ] 200
[2026-08-25 22:05:43,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:43,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:05:43,667.667 INFO    ] No update needed
[2026-08-25 22:05:43,669.669 INFO    ] Checking for camera pi updates...
[2026-08-25 22:05:43,702.702 INFO    ] 200
[2026-08-25 22:05:43,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:43,763.763 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:05:43,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:05:43,841.841 INFO    ] No camera update needed
[2026-08-25 22:05:43,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:05:43,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:05:43,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:05:43,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:05:45,900.900 INFO    ] ================================================
[2026-08-25 22:05:45,916.916 INFO    ] Launching Daemon at Tue Aug 25 22:05:45 IST 2026
[2026-08-25 22:05:45,927.927 INFO    ] ================================================
[2026-08-25 22:05:46,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:05:46
[2026-08-25 22:05:47,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:05:47,470.470 INFO    ] Initializing speech engine...
[2026-08-25 22:05:47,476.476 INFO    ] 2026-08-25 22:05:47
[2026-08-25 22:05:47,739.739 INFO    ] 2026-08-25 22:05:47
[2026-08-25 22:05:47,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:05:47,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:05:47,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:05:48,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:05:48,110.110 INFO    ] time= 25/08/2026 22:05:48
[2026-08-25 22:05:48,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:05:48,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:05:48,269.269 INFO    ] No existing commands found in stream
[2026-08-25 22:05:53,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:05:53,302.302 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 22:05:55,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:05:55,658.658 INFO    ] Checking for system updates...
[2026-08-25 22:05:55,694.694 INFO    ] 200
[2026-08-25 22:05:55,697.697 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:55,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:05:55,761.761 INFO    ] No update needed
[2026-08-25 22:05:55,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 22:05:55,803.803 INFO    ] 200
[2026-08-25 22:05:55,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:05:55,847.847 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:05:56,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:05:56,004.004 INFO    ] No camera update needed
[2026-08-25 22:05:56,007.007 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:05:56,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:05:56,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:05:56,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:05:58,062.062 INFO    ] ================================================
[2026-08-25 22:05:58,077.077 INFO    ] Launching Daemon at Tue Aug 25 22:05:58 IST 2026
[2026-08-25 22:05:58,088.088 INFO    ] ================================================
[2026-08-25 22:05:58,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:05:58
[2026-08-25 22:05:59,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:05:59,738.738 INFO    ] Initializing speech engine...
[2026-08-25 22:05:59,749.749 INFO    ] 2026-08-25 22:05:59
[2026-08-25 22:06:00,057.057 INFO    ] 2026-08-25 22:06:00
[2026-08-25 22:06:00,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:06:00,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:06:00,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:06:00,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:06:00,564.564 INFO    ] time= 25/08/2026 22:06:00
[2026-08-25 22:06:00,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:06:00,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:06:00,724.724 INFO    ] No existing commands found in stream
[2026-08-25 22:06:05,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:06:05,752.752 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-08-25 22:06:09,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:06:09,039.039 INFO    ] Checking for system updates...
[2026-08-25 22:06:09,075.075 INFO    ] 200
[2026-08-25 22:06:09,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:09,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:09,137.137 INFO    ] No update needed
[2026-08-25 22:06:09,140.140 INFO    ] Checking for camera pi updates...
[2026-08-25 22:06:09,173.173 INFO    ] 200
[2026-08-25 22:06:09,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:09,217.217 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:06:09,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:09,275.275 INFO    ] No camera update needed
[2026-08-25 22:06:09,278.278 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:06:09,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:06:09,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:06:09,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:06:11,332.332 INFO    ] ================================================
[2026-08-25 22:06:11,347.347 INFO    ] Launching Daemon at Tue Aug 25 22:06:11 IST 2026
[2026-08-25 22:06:11,358.358 INFO    ] ================================================
[2026-08-25 22:06:11,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:06:11
[2026-08-25 22:06:12,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:06:12,775.775 INFO    ] Initializing speech engine...
[2026-08-25 22:06:12,785.785 INFO    ] 2026-08-25 22:06:12
[2026-08-25 22:06:13,032.032 INFO    ] 2026-08-25 22:06:13
[2026-08-25 22:06:13,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:06:13,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:06:13,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:06:13,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:06:13,408.408 INFO    ] time= 25/08/2026 22:06:13
[2026-08-25 22:06:13,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:06:13,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:06:13,516.516 INFO    ] No existing commands found in stream
[2026-08-25 22:06:18,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:06:18,529.529 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 22:06:21,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:06:21,911.911 INFO    ] Checking for system updates...
[2026-08-25 22:06:21,948.948 INFO    ] 200
[2026-08-25 22:06:21,951.951 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:22,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:22,008.008 INFO    ] No update needed
[2026-08-25 22:06:22,011.011 INFO    ] Checking for camera pi updates...
[2026-08-25 22:06:22,050.050 INFO    ] 200
[2026-08-25 22:06:22,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:22,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:06:22,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:22,154.154 INFO    ] No camera update needed
[2026-08-25 22:06:22,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:06:22,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:06:22,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:06:22,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:06:24,214.214 INFO    ] ================================================
[2026-08-25 22:06:24,229.229 INFO    ] Launching Daemon at Tue Aug 25 22:06:24 IST 2026
[2026-08-25 22:06:24,239.239 INFO    ] ================================================
[2026-08-25 22:06:24,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:06:24
[2026-08-25 22:06:25,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:06:25,894.894 INFO    ] Initializing speech engine...
[2026-08-25 22:06:25,906.906 INFO    ] 2026-08-25 22:06:25
[2026-08-25 22:06:26,216.216 INFO    ] 2026-08-25 22:06:26
[2026-08-25 22:06:26,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:06:26,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:06:26,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:06:26,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:06:26,723.723 INFO    ] time= 25/08/2026 22:06:26
[2026-08-25 22:06:26,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:06:26,760.760 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:06:26,879.879 INFO    ] No existing commands found in stream
[2026-08-25 22:06:31,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:06:31,903.903 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 22:06:33,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:06:33,844.844 INFO    ] Checking for system updates...
[2026-08-25 22:06:33,880.880 INFO    ] 200
[2026-08-25 22:06:33,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:33,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:33,940.940 INFO    ] No update needed
[2026-08-25 22:06:33,942.942 INFO    ] Checking for camera pi updates...
[2026-08-25 22:06:33,975.975 INFO    ] 200
[2026-08-25 22:06:33,978.978 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:34,018.018 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:06:34,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:34,076.076 INFO    ] No camera update needed
[2026-08-25 22:06:34,079.079 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:06:34,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:06:34,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:06:34,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:06:36,131.131 INFO    ] ================================================
[2026-08-25 22:06:36,147.147 INFO    ] Launching Daemon at Tue Aug 25 22:06:36 IST 2026
[2026-08-25 22:06:36,158.158 INFO    ] ================================================
[2026-08-25 22:06:36,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:06:36
[2026-08-25 22:06:37,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:06:37,575.575 INFO    ] Initializing speech engine...
[2026-08-25 22:06:37,584.584 INFO    ] 2026-08-25 22:06:37
[2026-08-25 22:06:37,830.830 INFO    ] 2026-08-25 22:06:37
[2026-08-25 22:06:37,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:06:38,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:06:38,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:06:38,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:06:38,316.316 INFO    ] time= 25/08/2026 22:06:38
[2026-08-25 22:06:38,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:06:38,401.401 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:06:38,531.531 INFO    ] No existing commands found in stream
[2026-08-25 22:06:43,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:06:43,562.562 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 22:06:46,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:06:46,827.827 INFO    ] Checking for system updates...
[2026-08-25 22:06:46,863.863 INFO    ] 200
[2026-08-25 22:06:46,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:46,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:46,920.920 INFO    ] No update needed
[2026-08-25 22:06:46,922.922 INFO    ] Checking for camera pi updates...
[2026-08-25 22:06:46,956.956 INFO    ] 200
[2026-08-25 22:06:46,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:46,998.998 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:06:47,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:06:47,061.061 INFO    ] No camera update needed
[2026-08-25 22:06:47,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:06:47,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:06:47,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:06:47,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:06:49,118.118 INFO    ] ================================================
[2026-08-25 22:06:49,139.139 INFO    ] Launching Daemon at Tue Aug 25 22:06:49 IST 2026
[2026-08-25 22:06:49,149.149 INFO    ] ================================================
[2026-08-25 22:06:49,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:06:49
[2026-08-25 22:06:50,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:06:50,604.604 INFO    ] Initializing speech engine...
[2026-08-25 22:06:50,614.614 INFO    ] 2026-08-25 22:06:50
[2026-08-25 22:06:50,878.878 INFO    ] 2026-08-25 22:06:50
[2026-08-25 22:06:50,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:06:51,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:06:51,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:06:51,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:06:51,344.344 INFO    ] time= 25/08/2026 22:06:51
[2026-08-25 22:06:51,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:06:51,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:06:51,555.555 INFO    ] No existing commands found in stream
[2026-08-25 22:06:56,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:06:56,588.588 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-08-25 22:06:57,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:06:57,207.207 INFO    ] Checking for system updates...
[2026-08-25 22:06:57,242.242 INFO    ] 200
[2026-08-25 22:06:57,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:57,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:06:57,302.302 INFO    ] No update needed
[2026-08-25 22:06:57,304.304 INFO    ] Checking for camera pi updates...
[2026-08-25 22:06:57,338.338 INFO    ] 200
[2026-08-25 22:06:57,341.341 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:06:57,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:06:57,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:06:57,434.434 INFO    ] No camera update needed
[2026-08-25 22:06:57,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:06:57,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:06:57,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:06:57,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:06:59,492.492 INFO    ] ================================================
[2026-08-25 22:06:59,507.507 INFO    ] Launching Daemon at Tue Aug 25 22:06:59 IST 2026
[2026-08-25 22:06:59,517.517 INFO    ] ================================================
[2026-08-25 22:07:00,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:07:00
[2026-08-25 22:07:00,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:07:00,937.937 INFO    ] Initializing speech engine...
[2026-08-25 22:07:00,946.946 INFO    ] 2026-08-25 22:07:00
[2026-08-25 22:07:01,216.216 INFO    ] 2026-08-25 22:07:01
[2026-08-25 22:07:01,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:07:01,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:07:01,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:07:01,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:07:01,713.713 INFO    ] time= 25/08/2026 22:07:01
[2026-08-25 22:07:01,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:07:01,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:07:01,819.819 INFO    ] No existing commands found in stream
[2026-08-25 22:07:06,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:07:06,837.837 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 22:07:07,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:07:07,949.949 INFO    ] Checking for system updates...
[2026-08-25 22:07:07,985.985 INFO    ] 200
[2026-08-25 22:07:07,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:08,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:07:08,049.049 INFO    ] No update needed
[2026-08-25 22:07:08,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 22:07:08,086.086 INFO    ] 200
[2026-08-25 22:07:08,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:08,128.128 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:07:08,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:07:08,175.175 INFO    ] No camera update needed
[2026-08-25 22:07:08,178.178 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:07:08,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:07:08,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:07:08,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:07:10,232.232 INFO    ] ================================================
[2026-08-25 22:07:10,248.248 INFO    ] Launching Daemon at Tue Aug 25 22:07:10 IST 2026
[2026-08-25 22:07:10,258.258 INFO    ] ================================================
[2026-08-25 22:07:10,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:07:10
[2026-08-25 22:07:11,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:07:11,883.883 INFO    ] Initializing speech engine...
[2026-08-25 22:07:11,894.894 INFO    ] 2026-08-25 22:07:11
[2026-08-25 22:07:12,169.169 INFO    ] 2026-08-25 22:07:12
[2026-08-25 22:07:12,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:07:12,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:07:12,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:07:12,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:07:12,661.661 INFO    ] time= 25/08/2026 22:07:12
[2026-08-25 22:07:12,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:07:12,742.742 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:07:12,877.877 INFO    ] No existing commands found in stream
[2026-08-25 22:07:17,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:07:17,903.903 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 22:07:20,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:07:20,913.913 INFO    ] Checking for system updates...
[2026-08-25 22:07:20,954.954 INFO    ] 200
[2026-08-25 22:07:20,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:21,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:07:21,025.025 INFO    ] No update needed
[2026-08-25 22:07:21,028.028 INFO    ] Checking for camera pi updates...
[2026-08-25 22:07:21,063.063 INFO    ] 200
[2026-08-25 22:07:21,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:21,107.107 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:07:21,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:07:21,162.162 INFO    ] No camera update needed
[2026-08-25 22:07:21,164.164 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:07:21,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:07:21,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:07:21,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:07:23,219.219 INFO    ] ================================================
[2026-08-25 22:07:23,234.234 INFO    ] Launching Daemon at Tue Aug 25 22:07:23 IST 2026
[2026-08-25 22:07:23,244.244 INFO    ] ================================================
[2026-08-25 22:07:23,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:07:23
[2026-08-25 22:07:24,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:07:24,861.861 INFO    ] Initializing speech engine...
[2026-08-25 22:07:24,872.872 INFO    ] 2026-08-25 22:07:24
[2026-08-25 22:07:25,181.181 INFO    ] 2026-08-25 22:07:25
[2026-08-25 22:07:25,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:07:25,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:07:25,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:07:25,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:07:25,690.690 INFO    ] time= 25/08/2026 22:07:25
[2026-08-25 22:07:25,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:07:25,727.727 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:07:25,847.847 INFO    ] No existing commands found in stream
[2026-08-25 22:07:30,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:07:30,880.880 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-08-25 22:07:33,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:07:33,797.797 INFO    ] Checking for system updates...
[2026-08-25 22:07:33,833.833 INFO    ] 200
[2026-08-25 22:07:33,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:33,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:07:33,891.891 INFO    ] No update needed
[2026-08-25 22:07:33,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 22:07:33,928.928 INFO    ] 200
[2026-08-25 22:07:33,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:33,970.970 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:07:34,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:07:34,017.017 INFO    ] No camera update needed
[2026-08-25 22:07:34,019.019 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:07:34,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:07:34,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:07:34,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:07:36,075.075 INFO    ] ================================================
[2026-08-25 22:07:36,090.090 INFO    ] Launching Daemon at Tue Aug 25 22:07:36 IST 2026
[2026-08-25 22:07:36,101.101 INFO    ] ================================================
[2026-08-25 22:07:36,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:07:36
[2026-08-25 22:07:37,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:07:37,729.729 INFO    ] Initializing speech engine...
[2026-08-25 22:07:37,744.744 INFO    ] 2026-08-25 22:07:37
[2026-08-25 22:07:38,057.057 INFO    ] 2026-08-25 22:07:38
[2026-08-25 22:07:38,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:07:38,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:07:38,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:07:38,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:07:38,519.519 INFO    ] time= 25/08/2026 22:07:38
[2026-08-25 22:07:38,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:07:38,589.589 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:07:38,728.728 INFO    ] No existing commands found in stream
[2026-08-25 22:07:43,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:07:43,752.752 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 22:07:46,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:07:46,145.145 INFO    ] Checking for system updates...
[2026-08-25 22:07:46,185.185 INFO    ] 200
[2026-08-25 22:07:46,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:46,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:07:46,241.241 INFO    ] No update needed
[2026-08-25 22:07:46,244.244 INFO    ] Checking for camera pi updates...
[2026-08-25 22:07:46,277.277 INFO    ] 200
[2026-08-25 22:07:46,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:46,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:07:46,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:07:46,370.370 INFO    ] No camera update needed
[2026-08-25 22:07:46,373.373 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:07:46,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:07:46,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:07:46,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:07:48,425.425 INFO    ] ================================================
[2026-08-25 22:07:48,440.440 INFO    ] Launching Daemon at Tue Aug 25 22:07:48 IST 2026
[2026-08-25 22:07:48,450.450 INFO    ] ================================================
[2026-08-25 22:07:49,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:07:49
[2026-08-25 22:07:49,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:07:49,869.869 INFO    ] Initializing speech engine...
[2026-08-25 22:07:49,877.877 INFO    ] 2026-08-25 22:07:49
[2026-08-25 22:07:50,127.127 INFO    ] 2026-08-25 22:07:50
[2026-08-25 22:07:50,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:07:50,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:07:50,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:07:50,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:07:50,606.606 INFO    ] time= 25/08/2026 22:07:50
[2026-08-25 22:07:50,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:07:50,701.701 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:07:50,832.832 INFO    ] No existing commands found in stream
[2026-08-25 22:07:55,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:07:55,863.863 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 22:07:59,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:07:59,541.541 INFO    ] Checking for system updates...
[2026-08-25 22:07:59,576.576 INFO    ] 200
[2026-08-25 22:07:59,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:59,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:07:59,640.640 INFO    ] No update needed
[2026-08-25 22:07:59,642.642 INFO    ] Checking for camera pi updates...
[2026-08-25 22:07:59,675.675 INFO    ] 200
[2026-08-25 22:07:59,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:07:59,717.717 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:07:59,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:07:59,861.861 INFO    ] No camera update needed
[2026-08-25 22:07:59,863.863 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:07:59,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:07:59,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:07:59,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:08:01,916.916 INFO    ] ================================================
[2026-08-25 22:08:01,938.938 INFO    ] Launching Daemon at Tue Aug 25 22:08:01 IST 2026
[2026-08-25 22:08:01,953.953 INFO    ] ================================================
[2026-08-25 22:08:02,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:08:02
[2026-08-25 22:08:03,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:08:03,538.538 INFO    ] Initializing speech engine...
[2026-08-25 22:08:03,548.548 INFO    ] 2026-08-25 22:08:03
[2026-08-25 22:08:03,807.807 INFO    ] 2026-08-25 22:08:03
[2026-08-25 22:08:03,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:08:04,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:08:04,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:08:04,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:08:04,274.274 INFO    ] time= 25/08/2026 22:08:04
[2026-08-25 22:08:04,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:08:04,355.355 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:08:04,497.497 INFO    ] No existing commands found in stream
[2026-08-25 22:08:09,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:08:09,516.516 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 22:08:10,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:08:10,536.536 INFO    ] Checking for system updates...
[2026-08-25 22:08:10,571.571 INFO    ] 200
[2026-08-25 22:08:10,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:10,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:08:10,631.631 INFO    ] No update needed
[2026-08-25 22:08:10,633.633 INFO    ] Checking for camera pi updates...
[2026-08-25 22:08:10,666.666 INFO    ] 200
[2026-08-25 22:08:10,669.669 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:10,709.709 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:08:10,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:08:10,763.763 INFO    ] No camera update needed
[2026-08-25 22:08:10,765.765 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:08:10,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:08:10,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:08:10,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:08:12,822.822 INFO    ] ================================================
[2026-08-25 22:08:12,837.837 INFO    ] Launching Daemon at Tue Aug 25 22:08:12 IST 2026
[2026-08-25 22:08:12,848.848 INFO    ] ================================================
[2026-08-25 22:08:13,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:08:13
[2026-08-25 22:08:14,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:08:14,372.372 INFO    ] Initializing speech engine...
[2026-08-25 22:08:14,385.385 INFO    ] 2026-08-25 22:08:14
[2026-08-25 22:08:14,667.667 INFO    ] 2026-08-25 22:08:14
[2026-08-25 22:08:14,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:08:14,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:08:14,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:08:15,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:08:15,134.134 INFO    ] time= 25/08/2026 22:08:15
[2026-08-25 22:08:15,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:08:15,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:08:15,341.341 INFO    ] No existing commands found in stream
[2026-08-25 22:08:20,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:08:20,365.365 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 22:08:21,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:08:21,203.203 INFO    ] Checking for system updates...
[2026-08-25 22:08:21,240.240 INFO    ] 200
[2026-08-25 22:08:21,243.243 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:21,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:08:21,297.297 INFO    ] No update needed
[2026-08-25 22:08:21,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 22:08:21,337.337 INFO    ] 200
[2026-08-25 22:08:21,339.339 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:21,384.384 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:08:21,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:08:21,431.431 INFO    ] No camera update needed
[2026-08-25 22:08:21,434.434 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:08:21,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:08:21,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:08:21,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:08:23,486.486 INFO    ] ================================================
[2026-08-25 22:08:23,501.501 INFO    ] Launching Daemon at Tue Aug 25 22:08:23 IST 2026
[2026-08-25 22:08:23,512.512 INFO    ] ================================================
[2026-08-25 22:08:24,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:08:24
[2026-08-25 22:08:24,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:08:25,118.118 INFO    ] Initializing speech engine...
[2026-08-25 22:08:25,130.130 INFO    ] 2026-08-25 22:08:25
[2026-08-25 22:08:25,402.402 INFO    ] 2026-08-25 22:08:25
[2026-08-25 22:08:25,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:08:25,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:08:25,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:08:25,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:08:25,901.901 INFO    ] time= 25/08/2026 22:08:25
[2026-08-25 22:08:25,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:08:25,973.973 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:08:26,109.109 INFO    ] No existing commands found in stream
[2026-08-25 22:08:31,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:08:31,136.136 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 22:08:32,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:08:32,480.480 INFO    ] Checking for system updates...
[2026-08-25 22:08:32,526.526 INFO    ] 200
[2026-08-25 22:08:32,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:32,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:08:32,601.601 INFO    ] No update needed
[2026-08-25 22:08:32,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 22:08:32,639.639 INFO    ] 200
[2026-08-25 22:08:32,641.641 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:32,687.687 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:08:32,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:08:32,738.738 INFO    ] No camera update needed
[2026-08-25 22:08:32,740.740 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:08:32,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:08:32,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:08:32,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:08:34,796.796 INFO    ] ================================================
[2026-08-25 22:08:34,812.812 INFO    ] Launching Daemon at Tue Aug 25 22:08:34 IST 2026
[2026-08-25 22:08:34,823.823 INFO    ] ================================================
[2026-08-25 22:08:35,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:08:35
[2026-08-25 22:08:35,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:08:36,220.220 INFO    ] Initializing speech engine...
[2026-08-25 22:08:36,226.226 INFO    ] 2026-08-25 22:08:36
[2026-08-25 22:08:36,498.498 INFO    ] 2026-08-25 22:08:36
[2026-08-25 22:08:36,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:08:36,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:08:36,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:08:36,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:08:36,978.978 INFO    ] time= 25/08/2026 22:08:36
[2026-08-25 22:08:37,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:08:37,072.072 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:08:37,197.197 INFO    ] No existing commands found in stream
[2026-08-25 22:08:42,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:08:42,225.225 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 22:08:43,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:08:43,008.008 INFO    ] Checking for system updates...
[2026-08-25 22:08:43,043.043 INFO    ] 200
[2026-08-25 22:08:43,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:43,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:08:43,105.105 INFO    ] No update needed
[2026-08-25 22:08:43,107.107 INFO    ] Checking for camera pi updates...
[2026-08-25 22:08:43,140.140 INFO    ] 200
[2026-08-25 22:08:43,143.143 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:43,187.187 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:08:43,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:08:43,237.237 INFO    ] No camera update needed
[2026-08-25 22:08:43,239.239 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:08:43,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:08:43,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:08:43,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:08:45,297.297 INFO    ] ================================================
[2026-08-25 22:08:45,312.312 INFO    ] Launching Daemon at Tue Aug 25 22:08:45 IST 2026
[2026-08-25 22:08:45,323.323 INFO    ] ================================================
[2026-08-25 22:08:45,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:08:45
[2026-08-25 22:08:46,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:08:46,930.930 INFO    ] Initializing speech engine...
[2026-08-25 22:08:46,944.944 INFO    ] 2026-08-25 22:08:46
[2026-08-25 22:08:47,212.212 INFO    ] 2026-08-25 22:08:47
[2026-08-25 22:08:47,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:08:47,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:08:47,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:08:47,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:08:47,695.695 INFO    ] time= 25/08/2026 22:08:47
[2026-08-25 22:08:47,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:08:47,777.777 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:08:47,909.909 INFO    ] No existing commands found in stream
[2026-08-25 22:08:52,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:08:52,937.937 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 22:08:55,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:08:55,204.204 INFO    ] Checking for system updates...
[2026-08-25 22:08:55,244.244 INFO    ] 200
[2026-08-25 22:08:55,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:55,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:08:55,313.313 INFO    ] No update needed
[2026-08-25 22:08:55,315.315 INFO    ] Checking for camera pi updates...
[2026-08-25 22:08:55,350.350 INFO    ] 200
[2026-08-25 22:08:55,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:08:55,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:08:55,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:08:55,448.448 INFO    ] No camera update needed
[2026-08-25 22:08:55,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:08:55,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:08:55,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:08:55,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:08:57,505.505 INFO    ] ================================================
[2026-08-25 22:08:57,521.521 INFO    ] Launching Daemon at Tue Aug 25 22:08:57 IST 2026
[2026-08-25 22:08:57,533.533 INFO    ] ================================================
[2026-08-25 22:08:58,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:08:58
[2026-08-25 22:08:58,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:08:59,049.049 INFO    ] Initializing speech engine...
[2026-08-25 22:08:59,056.056 INFO    ] 2026-08-25 22:08:59
[2026-08-25 22:08:59,342.342 INFO    ] 2026-08-25 22:08:59
[2026-08-25 22:08:59,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:08:59,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:08:59,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:08:59,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:08:59,878.878 INFO    ] time= 25/08/2026 22:08:59
[2026-08-25 22:08:59,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:08:59,925.925 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:09:00,096.096 INFO    ] No existing commands found in stream
[2026-08-25 22:09:05,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:09:05,130.130 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 22:09:08,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:09:08,364.364 INFO    ] Checking for system updates...
[2026-08-25 22:09:08,403.403 INFO    ] 200
[2026-08-25 22:09:08,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:08,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:09:08,462.462 INFO    ] No update needed
[2026-08-25 22:09:08,465.465 INFO    ] Checking for camera pi updates...
[2026-08-25 22:09:08,502.502 INFO    ] 200
[2026-08-25 22:09:08,505.505 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:08,550.550 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:09:08,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:09:08,615.615 INFO    ] No camera update needed
[2026-08-25 22:09:08,617.617 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:09:08,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:09:08,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:09:08,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:09:10,672.672 INFO    ] ================================================
[2026-08-25 22:09:10,687.687 INFO    ] Launching Daemon at Tue Aug 25 22:09:10 IST 2026
[2026-08-25 22:09:10,698.698 INFO    ] ================================================
[2026-08-25 22:09:11,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:09:11
[2026-08-25 22:09:11,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:09:12,215.215 INFO    ] Initializing speech engine...
[2026-08-25 22:09:12,225.225 INFO    ] 2026-08-25 22:09:12
[2026-08-25 22:09:12,473.473 INFO    ] 2026-08-25 22:09:12
[2026-08-25 22:09:12,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:09:12,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:09:12,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:09:12,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:09:12,933.933 INFO    ] time= 25/08/2026 22:09:12
[2026-08-25 22:09:12,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:09:13,035.035 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:09:13,158.158 INFO    ] No existing commands found in stream
[2026-08-25 22:09:18,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:09:18,194.194 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 22:09:21,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:09:21,400.400 INFO    ] Checking for system updates...
[2026-08-25 22:09:21,436.436 INFO    ] 200
[2026-08-25 22:09:21,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:21,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:21,494.494 INFO    ] No update needed
[2026-08-25 22:09:21,497.497 INFO    ] Checking for camera pi updates...
[2026-08-25 22:09:21,535.535 INFO    ] 200
[2026-08-25 22:09:21,537.537 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:21,584.584 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:09:21,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:21,645.645 INFO    ] No camera update needed
[2026-08-25 22:09:21,648.648 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:09:21,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:09:21,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:09:21,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:09:23,706.706 INFO    ] ================================================
[2026-08-25 22:09:23,721.721 INFO    ] Launching Daemon at Tue Aug 25 22:09:23 IST 2026
[2026-08-25 22:09:23,732.732 INFO    ] ================================================
[2026-08-25 22:09:24,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:09:24
[2026-08-25 22:09:24,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:09:25,172.172 INFO    ] Initializing speech engine...
[2026-08-25 22:09:25,198.198 INFO    ] 2026-08-25 22:09:25
[2026-08-25 22:09:25,471.471 INFO    ] 2026-08-25 22:09:25
[2026-08-25 22:09:25,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:09:25,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:09:25,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:09:25,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:09:25,885.885 INFO    ] time= 25/08/2026 22:09:25
[2026-08-25 22:09:25,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:09:25,924.924 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:09:26,064.064 INFO    ] No existing commands found in stream
[2026-08-25 22:09:31,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:09:31,092.092 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 22:09:33,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:09:33,060.060 INFO    ] Checking for system updates...
[2026-08-25 22:09:33,095.095 INFO    ] 200
[2026-08-25 22:09:33,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:33,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:33,161.161 INFO    ] No update needed
[2026-08-25 22:09:33,164.164 INFO    ] Checking for camera pi updates...
[2026-08-25 22:09:33,200.200 INFO    ] 200
[2026-08-25 22:09:33,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:33,248.248 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:09:33,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:33,308.308 INFO    ] No camera update needed
[2026-08-25 22:09:33,310.310 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:09:33,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:09:33,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:09:33,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:09:35,364.364 INFO    ] ================================================
[2026-08-25 22:09:35,380.380 INFO    ] Launching Daemon at Tue Aug 25 22:09:35 IST 2026
[2026-08-25 22:09:35,392.392 INFO    ] ================================================
[2026-08-25 22:09:35,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:09:35
[2026-08-25 22:09:36,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:09:36,848.848 INFO    ] Initializing speech engine...
[2026-08-25 22:09:36,859.859 INFO    ] 2026-08-25 22:09:36
[2026-08-25 22:09:37,107.107 INFO    ] 2026-08-25 22:09:37
[2026-08-25 22:09:37,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:09:37,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:09:37,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:09:37,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:09:37,572.572 INFO    ] time= 25/08/2026 22:09:37
[2026-08-25 22:09:37,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:09:37,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:09:37,798.798 INFO    ] No existing commands found in stream
[2026-08-25 22:09:42,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:09:42,829.829 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-08-25 22:09:44,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:09:44,759.759 INFO    ] Checking for system updates...
[2026-08-25 22:09:44,796.796 INFO    ] 200
[2026-08-25 22:09:44,798.798 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:44,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:44,855.855 INFO    ] No update needed
[2026-08-25 22:09:44,857.857 INFO    ] Checking for camera pi updates...
[2026-08-25 22:09:44,891.891 INFO    ] 200
[2026-08-25 22:09:44,895.895 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:44,941.941 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:09:44,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:44,996.996 INFO    ] No camera update needed
[2026-08-25 22:09:44,999.999 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:09:45,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:09:45,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:09:45,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:09:47,056.056 INFO    ] ================================================
[2026-08-25 22:09:47,072.072 INFO    ] Launching Daemon at Tue Aug 25 22:09:47 IST 2026
[2026-08-25 22:09:47,084.084 INFO    ] ================================================
[2026-08-25 22:09:47,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:09:47
[2026-08-25 22:09:48,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:09:48,512.512 INFO    ] Initializing speech engine...
[2026-08-25 22:09:48,521.521 INFO    ] 2026-08-25 22:09:48
[2026-08-25 22:09:48,767.767 INFO    ] 2026-08-25 22:09:48
[2026-08-25 22:09:48,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:09:48,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:09:48,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:09:49,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:09:49,133.133 INFO    ] time= 25/08/2026 22:09:49
[2026-08-25 22:09:49,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:09:49,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:09:49,319.319 INFO    ] No existing commands found in stream
[2026-08-25 22:09:54,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:09:54,343.343 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 22:09:57,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:09:57,389.389 INFO    ] Checking for system updates...
[2026-08-25 22:09:57,428.428 INFO    ] 200
[2026-08-25 22:09:57,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:57,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:57,485.485 INFO    ] No update needed
[2026-08-25 22:09:57,488.488 INFO    ] Checking for camera pi updates...
[2026-08-25 22:09:57,521.521 INFO    ] 200
[2026-08-25 22:09:57,523.523 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:09:57,568.568 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:09:57,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:09:57,620.620 INFO    ] No camera update needed
[2026-08-25 22:09:57,622.622 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:09:57,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:09:57,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:09:57,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:09:59,676.676 INFO    ] ================================================
[2026-08-25 22:09:59,692.692 INFO    ] Launching Daemon at Tue Aug 25 22:09:59 IST 2026
[2026-08-25 22:09:59,703.703 INFO    ] ================================================
[2026-08-25 22:10:00,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:10:00
[2026-08-25 22:10:01,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:10:01,409.409 INFO    ] Initializing speech engine...
[2026-08-25 22:10:01,417.417 INFO    ] 2026-08-25 22:10:01
[2026-08-25 22:10:02,068.068 INFO    ] 2026-08-25 22:10:02
[2026-08-25 22:10:02,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:10:02,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:10:02,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:10:02,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:10:02,553.553 INFO    ] time= 25/08/2026 22:10:02
[2026-08-25 22:10:02,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:10:02,559.559 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:10:02,632.632 INFO    ] No existing commands found in stream
[2026-08-25 22:10:07,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:10:07,645.645 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 22:10:10,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:10:10,079.079 INFO    ] Checking for system updates...
[2026-08-25 22:10:10,120.120 INFO    ] 200
[2026-08-25 22:10:10,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:10,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:10,178.178 INFO    ] No update needed
[2026-08-25 22:10:10,181.181 INFO    ] Checking for camera pi updates...
[2026-08-25 22:10:10,214.214 INFO    ] 200
[2026-08-25 22:10:10,216.216 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:10,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:10:10,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:10,301.301 INFO    ] No camera update needed
[2026-08-25 22:10:10,304.304 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:10:10,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:10:10,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:10:10,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:10:12,355.355 INFO    ] ================================================
[2026-08-25 22:10:12,371.371 INFO    ] Launching Daemon at Tue Aug 25 22:10:12 IST 2026
[2026-08-25 22:10:12,383.383 INFO    ] ================================================
[2026-08-25 22:10:13,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:10:13
[2026-08-25 22:10:13,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:10:13,863.863 INFO    ] Initializing speech engine...
[2026-08-25 22:10:13,873.873 INFO    ] 2026-08-25 22:10:13
[2026-08-25 22:10:14,127.127 INFO    ] 2026-08-25 22:10:14
[2026-08-25 22:10:14,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:10:14,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:10:14,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:10:14,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:10:14,632.632 INFO    ] time= 25/08/2026 22:10:14
[2026-08-25 22:10:14,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:10:14,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:10:14,847.847 INFO    ] No existing commands found in stream
[2026-08-25 22:10:19,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:10:19,875.875 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-08-25 22:10:22,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:10:22,340.340 INFO    ] Checking for system updates...
[2026-08-25 22:10:22,379.379 INFO    ] 200
[2026-08-25 22:10:22,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:22,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:22,436.436 INFO    ] No update needed
[2026-08-25 22:10:22,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 22:10:22,474.474 INFO    ] 200
[2026-08-25 22:10:22,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:22,518.518 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:10:22,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:22,574.574 INFO    ] No camera update needed
[2026-08-25 22:10:22,577.577 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:10:22,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:10:22,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:10:22,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:10:24,634.634 INFO    ] ================================================
[2026-08-25 22:10:24,649.649 INFO    ] Launching Daemon at Tue Aug 25 22:10:24 IST 2026
[2026-08-25 22:10:24,660.660 INFO    ] ================================================
[2026-08-25 22:10:25,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:10:25
[2026-08-25 22:10:25,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:10:26,270.270 INFO    ] Initializing speech engine...
[2026-08-25 22:10:26,282.282 INFO    ] 2026-08-25 22:10:26
[2026-08-25 22:10:26,564.564 INFO    ] 2026-08-25 22:10:26
[2026-08-25 22:10:26,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:10:26,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:10:26,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:10:26,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:10:27,053.053 INFO    ] time= 25/08/2026 22:10:26
[2026-08-25 22:10:27,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:10:27,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:10:27,269.269 INFO    ] No existing commands found in stream
[2026-08-25 22:10:32,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:10:32,291.291 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-08-25 22:10:32,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:10:32,994.994 INFO    ] Checking for system updates...
[2026-08-25 22:10:33,037.037 INFO    ] 200
[2026-08-25 22:10:33,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:33,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:33,102.102 INFO    ] No update needed
[2026-08-25 22:10:33,105.105 INFO    ] Checking for camera pi updates...
[2026-08-25 22:10:33,139.139 INFO    ] 200
[2026-08-25 22:10:33,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:33,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:10:33,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:33,226.226 INFO    ] No camera update needed
[2026-08-25 22:10:33,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:10:33,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:10:33,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:10:33,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:10:35,283.283 INFO    ] ================================================
[2026-08-25 22:10:35,297.297 INFO    ] Launching Daemon at Tue Aug 25 22:10:35 IST 2026
[2026-08-25 22:10:35,308.308 INFO    ] ================================================
[2026-08-25 22:10:35,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:10:35
[2026-08-25 22:10:36,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:10:36,730.730 INFO    ] Initializing speech engine...
[2026-08-25 22:10:36,740.740 INFO    ] 2026-08-25 22:10:36
[2026-08-25 22:10:37,000.000 INFO    ] 2026-08-25 22:10:36
[2026-08-25 22:10:37,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:10:37,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:10:37,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:10:37,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:10:37,464.464 INFO    ] time= 25/08/2026 22:10:37
[2026-08-25 22:10:37,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:10:37,552.552 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:10:37,685.685 INFO    ] No existing commands found in stream
[2026-08-25 22:10:42,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:10:42,710.710 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-08-25 22:10:46,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:10:46,651.651 INFO    ] Checking for system updates...
[2026-08-25 22:10:46,694.694 INFO    ] 200
[2026-08-25 22:10:46,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:46,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:10:46,763.763 INFO    ] No update needed
[2026-08-25 22:10:46,766.766 INFO    ] Checking for camera pi updates...
[2026-08-25 22:10:46,801.801 INFO    ] 200
[2026-08-25 22:10:46,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:46,849.849 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:10:46,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:10:46,907.907 INFO    ] No camera update needed
[2026-08-25 22:10:46,909.909 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:10:46,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:10:46,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:10:46,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:10:48,962.962 INFO    ] ================================================
[2026-08-25 22:10:48,977.977 INFO    ] Launching Daemon at Tue Aug 25 22:10:48 IST 2026
[2026-08-25 22:10:48,987.987 INFO    ] ================================================
[2026-08-25 22:10:49,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:10:49
[2026-08-25 22:10:50,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:10:50,406.406 INFO    ] Initializing speech engine...
[2026-08-25 22:10:50,414.414 INFO    ] 2026-08-25 22:10:50
[2026-08-25 22:10:50,664.664 INFO    ] 2026-08-25 22:10:50
[2026-08-25 22:10:50,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:10:50,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:10:50,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:10:51,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:10:51,122.122 INFO    ] time= 25/08/2026 22:10:51
[2026-08-25 22:10:51,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:10:51,230.230 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:10:51,367.367 INFO    ] No existing commands found in stream
[2026-08-25 22:10:56,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:10:56,390.390 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 22:10:58,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:10:58,365.365 INFO    ] Checking for system updates...
[2026-08-25 22:10:58,400.400 INFO    ] 200
[2026-08-25 22:10:58,403.403 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:58,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:58,467.467 INFO    ] No update needed
[2026-08-25 22:10:58,470.470 INFO    ] Checking for camera pi updates...
[2026-08-25 22:10:58,503.503 INFO    ] 200
[2026-08-25 22:10:58,506.506 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:10:58,547.547 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:10:58,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:10:58,594.594 INFO    ] No camera update needed
[2026-08-25 22:10:58,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:10:58,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:10:58,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:10:58,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:11:00,648.648 INFO    ] ================================================
[2026-08-25 22:11:00,663.663 INFO    ] Launching Daemon at Tue Aug 25 22:11:00 IST 2026
[2026-08-25 22:11:00,674.674 INFO    ] ================================================
[2026-08-25 22:11:01,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:11:01
[2026-08-25 22:11:01,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:11:02,390.390 INFO    ] Initializing speech engine...
[2026-08-25 22:11:02,396.396 INFO    ] 2026-08-25 22:11:02
[2026-08-25 22:11:02,789.789 INFO    ] 2026-08-25 22:11:02
[2026-08-25 22:11:02,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:11:03,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:11:03,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:11:03,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:11:03,248.248 INFO    ] time= 25/08/2026 22:11:03
[2026-08-25 22:11:03,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:11:03,288.288 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:11:03,419.419 INFO    ] No existing commands found in stream
[2026-08-25 22:11:08,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:11:08,449.449 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 22:11:10,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:11:10,620.620 INFO    ] Checking for system updates...
[2026-08-25 22:11:10,657.657 INFO    ] 200
[2026-08-25 22:11:10,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:10,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:10,723.723 INFO    ] No update needed
[2026-08-25 22:11:10,726.726 INFO    ] Checking for camera pi updates...
[2026-08-25 22:11:10,764.764 INFO    ] 200
[2026-08-25 22:11:10,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:10,813.813 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:11:10,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:10,863.863 INFO    ] No camera update needed
[2026-08-25 22:11:10,866.866 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:11:10,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:11:10,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:11:10,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:11:12,919.919 INFO    ] ================================================
[2026-08-25 22:11:12,934.934 INFO    ] Launching Daemon at Tue Aug 25 22:11:12 IST 2026
[2026-08-25 22:11:12,945.945 INFO    ] ================================================
[2026-08-25 22:11:13,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:11:13
[2026-08-25 22:11:14,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:11:14,383.383 INFO    ] Initializing speech engine...
[2026-08-25 22:11:14,392.392 INFO    ] 2026-08-25 22:11:14
[2026-08-25 22:11:14,642.642 INFO    ] 2026-08-25 22:11:14
[2026-08-25 22:11:14,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:11:14,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:11:14,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:11:15,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:11:15,129.129 INFO    ] time= 25/08/2026 22:11:15
[2026-08-25 22:11:15,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:11:15,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:11:15,361.361 INFO    ] No existing commands found in stream
[2026-08-25 22:11:20,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:11:20,386.386 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 22:11:21,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:11:21,864.864 INFO    ] Checking for system updates...
[2026-08-25 22:11:21,900.900 INFO    ] 200
[2026-08-25 22:11:21,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:21,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:11:21,967.967 INFO    ] No update needed
[2026-08-25 22:11:21,970.970 INFO    ] Checking for camera pi updates...
[2026-08-25 22:11:22,008.008 INFO    ] 200
[2026-08-25 22:11:22,010.010 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:22,050.050 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:11:22,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:11:22,103.103 INFO    ] No camera update needed
[2026-08-25 22:11:22,106.106 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:11:22,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:11:22,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:11:22,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:11:24,160.160 INFO    ] ================================================
[2026-08-25 22:11:24,176.176 INFO    ] Launching Daemon at Tue Aug 25 22:11:24 IST 2026
[2026-08-25 22:11:24,187.187 INFO    ] ================================================
[2026-08-25 22:11:24,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:11:24
[2026-08-25 22:11:25,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:11:25,599.599 INFO    ] Initializing speech engine...
[2026-08-25 22:11:25,607.607 INFO    ] 2026-08-25 22:11:25
[2026-08-25 22:11:25,883.883 INFO    ] 2026-08-25 22:11:25
[2026-08-25 22:11:25,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:11:26,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:11:26,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:11:26,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:11:26,360.360 INFO    ] time= 25/08/2026 22:11:26
[2026-08-25 22:11:26,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:11:26,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:11:26,575.575 INFO    ] No existing commands found in stream
[2026-08-25 22:11:31,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:11:31,610.610 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 22:11:34,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:11:34,453.453 INFO    ] Checking for system updates...
[2026-08-25 22:11:34,489.489 INFO    ] 200
[2026-08-25 22:11:34,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:34,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:34,550.550 INFO    ] No update needed
[2026-08-25 22:11:34,552.552 INFO    ] Checking for camera pi updates...
[2026-08-25 22:11:34,588.588 INFO    ] 200
[2026-08-25 22:11:34,590.590 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:34,634.634 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:11:34,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:34,685.685 INFO    ] No camera update needed
[2026-08-25 22:11:34,688.688 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:11:34,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:11:34,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:11:34,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:11:36,745.745 INFO    ] ================================================
[2026-08-25 22:11:36,761.761 INFO    ] Launching Daemon at Tue Aug 25 22:11:36 IST 2026
[2026-08-25 22:11:36,772.772 INFO    ] ================================================
[2026-08-25 22:11:37,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:11:37
[2026-08-25 22:11:37,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:11:38,191.191 INFO    ] Initializing speech engine...
[2026-08-25 22:11:38,200.200 INFO    ] 2026-08-25 22:11:38
[2026-08-25 22:11:38,450.450 INFO    ] 2026-08-25 22:11:38
[2026-08-25 22:11:38,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:11:38,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:11:38,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:11:38,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:11:38,826.826 INFO    ] time= 25/08/2026 22:11:38
[2026-08-25 22:11:38,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:11:38,890.890 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:11:39,018.018 INFO    ] No existing commands found in stream
[2026-08-25 22:11:44,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:11:44,042.042 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 22:11:45,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:11:45,684.684 INFO    ] Checking for system updates...
[2026-08-25 22:11:45,720.720 INFO    ] 200
[2026-08-25 22:11:45,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:45,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:45,780.780 INFO    ] No update needed
[2026-08-25 22:11:45,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 22:11:45,822.822 INFO    ] 200
[2026-08-25 22:11:45,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:45,872.872 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:11:45,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:45,935.935 INFO    ] No camera update needed
[2026-08-25 22:11:45,938.938 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:11:45,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:11:45,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:11:45,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:11:47,993.993 INFO    ] ================================================
[2026-08-25 22:11:48,008.008 INFO    ] Launching Daemon at Tue Aug 25 22:11:48 IST 2026
[2026-08-25 22:11:48,019.019 INFO    ] ================================================
[2026-08-25 22:11:48,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:11:48
[2026-08-25 22:11:49,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:11:49,441.441 INFO    ] Initializing speech engine...
[2026-08-25 22:11:49,450.450 INFO    ] 2026-08-25 22:11:49
[2026-08-25 22:11:49,701.701 INFO    ] 2026-08-25 22:11:49
[2026-08-25 22:11:49,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:11:49,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:11:49,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:11:50,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:11:50,078.078 INFO    ] time= 25/08/2026 22:11:50
[2026-08-25 22:11:50,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:11:50,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:11:50,278.278 INFO    ] No existing commands found in stream
[2026-08-25 22:11:55,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:11:55,292.292 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 22:11:59,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:11:59,291.291 INFO    ] Checking for system updates...
[2026-08-25 22:11:59,327.327 INFO    ] 200
[2026-08-25 22:11:59,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:59,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:59,386.386 INFO    ] No update needed
[2026-08-25 22:11:59,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 22:11:59,427.427 INFO    ] 200
[2026-08-25 22:11:59,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:11:59,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:11:59,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:11:59,532.532 INFO    ] No camera update needed
[2026-08-25 22:11:59,535.535 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:11:59,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:11:59,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:11:59,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:12:01,588.588 INFO    ] ================================================
[2026-08-25 22:12:01,603.603 INFO    ] Launching Daemon at Tue Aug 25 22:12:01 IST 2026
[2026-08-25 22:12:01,615.615 INFO    ] ================================================
[2026-08-25 22:12:02,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:12:02
[2026-08-25 22:12:03,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:12:03,335.335 INFO    ] Initializing speech engine...
[2026-08-25 22:12:03,352.352 INFO    ] 2026-08-25 22:12:03
[2026-08-25 22:12:03,646.646 INFO    ] 2026-08-25 22:12:03
[2026-08-25 22:12:03,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:12:03,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:12:03,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:12:04,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:12:04,168.168 INFO    ] time= 25/08/2026 22:12:04
[2026-08-25 22:12:04,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:12:04,233.233 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:12:04,375.375 INFO    ] No existing commands found in stream
[2026-08-25 22:12:09,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:12:09,396.396 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 22:12:12,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:12:12,204.204 INFO    ] Checking for system updates...
[2026-08-25 22:12:12,240.240 INFO    ] 200
[2026-08-25 22:12:12,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:12,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:12:12,298.298 INFO    ] No update needed
[2026-08-25 22:12:12,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 22:12:12,334.334 INFO    ] 200
[2026-08-25 22:12:12,336.336 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:12,381.381 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:12:12,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:12:12,529.529 INFO    ] No camera update needed
[2026-08-25 22:12:12,531.531 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:12:12,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:12:12,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:12:12,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:12:14,584.584 INFO    ] ================================================
[2026-08-25 22:12:14,599.599 INFO    ] Launching Daemon at Tue Aug 25 22:12:14 IST 2026
[2026-08-25 22:12:14,611.611 INFO    ] ================================================
[2026-08-25 22:12:15,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:12:15
[2026-08-25 22:12:15,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:12:16,054.054 INFO    ] Initializing speech engine...
[2026-08-25 22:12:16,062.062 INFO    ] 2026-08-25 22:12:16
[2026-08-25 22:12:16,336.336 INFO    ] 2026-08-25 22:12:16
[2026-08-25 22:12:16,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:12:16,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:12:16,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:12:16,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:12:16,723.723 INFO    ] time= 25/08/2026 22:12:16
[2026-08-25 22:12:16,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:12:16,773.773 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:12:16,906.906 INFO    ] No existing commands found in stream
[2026-08-25 22:12:21,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:12:21,930.930 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 22:12:24,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:12:24,221.221 INFO    ] Checking for system updates...
[2026-08-25 22:12:24,256.256 INFO    ] 200
[2026-08-25 22:12:24,259.259 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:24,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:12:24,315.315 INFO    ] No update needed
[2026-08-25 22:12:24,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 22:12:24,352.352 INFO    ] 200
[2026-08-25 22:12:24,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:24,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:12:24,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:12:24,446.446 INFO    ] No camera update needed
[2026-08-25 22:12:24,449.449 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:12:24,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:12:24,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:12:24,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:12:26,501.501 INFO    ] ================================================
[2026-08-25 22:12:26,517.517 INFO    ] Launching Daemon at Tue Aug 25 22:12:26 IST 2026
[2026-08-25 22:12:26,528.528 INFO    ] ================================================
[2026-08-25 22:12:27,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:12:27
[2026-08-25 22:12:27,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:12:27,984.984 INFO    ] Initializing speech engine...
[2026-08-25 22:12:27,991.991 INFO    ] 2026-08-25 22:12:27
[2026-08-25 22:12:28,252.252 INFO    ] 2026-08-25 22:12:28
[2026-08-25 22:12:28,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:12:28,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:12:28,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:12:28,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:12:28,746.746 INFO    ] time= 25/08/2026 22:12:28
[2026-08-25 22:12:28,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:12:28,810.810 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:12:28,955.955 INFO    ] No existing commands found in stream
[2026-08-25 22:12:33,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:12:33,973.973 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 22:12:37,101.101 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:12:37,104.104 INFO    ] Checking for system updates...
[2026-08-25 22:12:37,143.143 INFO    ] 200
[2026-08-25 22:12:37,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:37,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:12:37,210.210 INFO    ] No update needed
[2026-08-25 22:12:37,212.212 INFO    ] Checking for camera pi updates...
[2026-08-25 22:12:37,250.250 INFO    ] 200
[2026-08-25 22:12:37,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:37,292.292 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:12:37,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:12:37,344.344 INFO    ] No camera update needed
[2026-08-25 22:12:37,347.347 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:12:37,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:12:37,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:12:37,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:12:39,402.402 INFO    ] ================================================
[2026-08-25 22:12:39,417.417 INFO    ] Launching Daemon at Tue Aug 25 22:12:39 IST 2026
[2026-08-25 22:12:39,429.429 INFO    ] ================================================
[2026-08-25 22:12:39,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:12:39
[2026-08-25 22:12:40,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:12:40,853.853 INFO    ] Initializing speech engine...
[2026-08-25 22:12:40,862.862 INFO    ] 2026-08-25 22:12:40
[2026-08-25 22:12:41,110.110 INFO    ] 2026-08-25 22:12:41
[2026-08-25 22:12:41,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:12:41,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:12:41,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:12:41,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:12:41,565.565 INFO    ] time= 25/08/2026 22:12:41
[2026-08-25 22:12:41,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:12:41,674.674 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:12:41,817.817 INFO    ] No existing commands found in stream
[2026-08-25 22:12:46,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:12:46,848.848 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 22:12:52,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:12:52,094.094 INFO    ] Checking for system updates...
[2026-08-25 22:12:52,130.130 INFO    ] 200
[2026-08-25 22:12:52,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:52,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:12:52,198.198 INFO    ] No update needed
[2026-08-25 22:12:52,201.201 INFO    ] Checking for camera pi updates...
[2026-08-25 22:12:52,244.244 INFO    ] 200
[2026-08-25 22:12:52,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:12:52,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:12:52,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:12:52,345.345 INFO    ] No camera update needed
[2026-08-25 22:12:52,348.348 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:12:52,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:12:52,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:12:52,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:12:54,405.405 INFO    ] ================================================
[2026-08-25 22:12:54,420.420 INFO    ] Launching Daemon at Tue Aug 25 22:12:54 IST 2026
[2026-08-25 22:12:54,432.432 INFO    ] ================================================
[2026-08-25 22:12:55,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:12:54
[2026-08-25 22:12:55,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:12:55,859.859 INFO    ] Initializing speech engine...
[2026-08-25 22:12:55,868.868 INFO    ] 2026-08-25 22:12:55
[2026-08-25 22:12:56,118.118 INFO    ] 2026-08-25 22:12:56
[2026-08-25 22:12:56,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:12:56,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:12:56,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:12:56,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:12:56,493.493 INFO    ] time= 25/08/2026 22:12:56
[2026-08-25 22:12:56,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:12:56,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:12:56,681.681 INFO    ] No existing commands found in stream
[2026-08-25 22:13:01,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:13:01,707.707 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 22:13:02,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:13:02,885.885 INFO    ] Checking for system updates...
[2026-08-25 22:13:02,925.925 INFO    ] 200
[2026-08-25 22:13:02,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:02,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:13:02,989.989 INFO    ] No update needed
[2026-08-25 22:13:02,992.992 INFO    ] Checking for camera pi updates...
[2026-08-25 22:13:03,039.039 INFO    ] 200
[2026-08-25 22:13:03,042.042 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:03,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:13:03,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:13:03,168.168 INFO    ] No camera update needed
[2026-08-25 22:13:03,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:13:03,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:13:03,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:13:03,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:13:05,236.236 INFO    ] ================================================
[2026-08-25 22:13:05,251.251 INFO    ] Launching Daemon at Tue Aug 25 22:13:05 IST 2026
[2026-08-25 22:13:05,262.262 INFO    ] ================================================
[2026-08-25 22:13:05,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:13:05
[2026-08-25 22:13:06,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:13:06,691.691 INFO    ] Initializing speech engine...
[2026-08-25 22:13:06,698.698 INFO    ] 2026-08-25 22:13:06
[2026-08-25 22:13:06,977.977 INFO    ] 2026-08-25 22:13:06
[2026-08-25 22:13:07,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:13:07,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:13:07,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:13:07,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:13:07,434.434 INFO    ] time= 25/08/2026 22:13:07
[2026-08-25 22:13:07,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:13:07,527.527 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:13:07,694.694 INFO    ] No existing commands found in stream
[2026-08-25 22:13:12,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:13:12,716.716 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 22:13:15,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:13:15,410.410 INFO    ] Checking for system updates...
[2026-08-25 22:13:15,447.447 INFO    ] 200
[2026-08-25 22:13:15,449.449 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:15,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:13:15,525.525 INFO    ] No update needed
[2026-08-25 22:13:15,527.527 INFO    ] Checking for camera pi updates...
[2026-08-25 22:13:15,562.562 INFO    ] 200
[2026-08-25 22:13:15,565.565 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:15,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:13:15,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:13:15,672.672 INFO    ] No camera update needed
[2026-08-25 22:13:15,674.674 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:13:15,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:13:15,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:13:15,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:13:17,728.728 INFO    ] ================================================
[2026-08-25 22:13:17,744.744 INFO    ] Launching Daemon at Tue Aug 25 22:13:17 IST 2026
[2026-08-25 22:13:17,755.755 INFO    ] ================================================
[2026-08-25 22:13:18,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:13:18
[2026-08-25 22:13:19,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:13:19,359.359 INFO    ] Initializing speech engine...
[2026-08-25 22:13:19,367.367 INFO    ] 2026-08-25 22:13:19
[2026-08-25 22:13:19,662.662 INFO    ] 2026-08-25 22:13:19
[2026-08-25 22:13:19,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:13:19,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:13:19,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:13:20,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:13:20,095.095 INFO    ] time= 25/08/2026 22:13:20
[2026-08-25 22:13:20,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:13:20,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:13:20,191.191 INFO    ] No existing commands found in stream
[2026-08-25 22:13:25,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:13:25,206.206 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 22:13:25,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:13:25,931.931 INFO    ] Checking for system updates...
[2026-08-25 22:13:25,966.966 INFO    ] 200
[2026-08-25 22:13:25,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:26,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:13:26,032.032 INFO    ] No update needed
[2026-08-25 22:13:26,034.034 INFO    ] Checking for camera pi updates...
[2026-08-25 22:13:26,067.067 INFO    ] 200
[2026-08-25 22:13:26,070.070 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:26,118.118 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:13:26,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:13:26,165.165 INFO    ] No camera update needed
[2026-08-25 22:13:26,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:13:26,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:13:26,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:13:26,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:13:28,219.219 INFO    ] ================================================
[2026-08-25 22:13:28,234.234 INFO    ] Launching Daemon at Tue Aug 25 22:13:28 IST 2026
[2026-08-25 22:13:28,245.245 INFO    ] ================================================
[2026-08-25 22:13:28,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:13:28
[2026-08-25 22:13:29,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:13:29,698.698 INFO    ] Initializing speech engine...
[2026-08-25 22:13:29,701.701 INFO    ] 2026-08-25 22:13:29
[2026-08-25 22:13:29,988.988 INFO    ] 2026-08-25 22:13:29
[2026-08-25 22:13:30,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:13:30,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:13:30,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:13:30,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:13:30,352.352 INFO    ] time= 25/08/2026 22:13:30
[2026-08-25 22:13:30,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:13:30,379.379 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:13:30,479.479 INFO    ] No existing commands found in stream
[2026-08-25 22:13:35,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:13:35,495.495 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 22:13:38,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:13:38,141.141 INFO    ] Checking for system updates...
[2026-08-25 22:13:38,176.176 INFO    ] 200
[2026-08-25 22:13:38,179.179 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:38,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:13:38,232.232 INFO    ] No update needed
[2026-08-25 22:13:38,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 22:13:38,268.268 INFO    ] 200
[2026-08-25 22:13:38,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:38,315.315 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:13:38,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:13:38,363.363 INFO    ] No camera update needed
[2026-08-25 22:13:38,365.365 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:13:38,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:13:38,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:13:38,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:13:40,418.418 INFO    ] ================================================
[2026-08-25 22:13:40,433.433 INFO    ] Launching Daemon at Tue Aug 25 22:13:40 IST 2026
[2026-08-25 22:13:40,443.443 INFO    ] ================================================
[2026-08-25 22:13:41,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:13:41
[2026-08-25 22:13:41,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:13:41,850.850 INFO    ] Initializing speech engine...
[2026-08-25 22:13:41,869.869 INFO    ] 2026-08-25 22:13:41
[2026-08-25 22:13:42,114.114 INFO    ] 2026-08-25 22:13:42
[2026-08-25 22:13:42,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:13:42,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:13:42,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:13:42,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:13:42,483.483 INFO    ] time= 25/08/2026 22:13:42
[2026-08-25 22:13:42,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:13:42,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:13:42,652.652 INFO    ] No existing commands found in stream
[2026-08-25 22:13:47,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:13:47,686.686 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 22:13:50,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:13:50,877.877 INFO    ] Checking for system updates...
[2026-08-25 22:13:50,912.912 INFO    ] 200
[2026-08-25 22:13:50,914.914 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:50,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:13:50,970.970 INFO    ] No update needed
[2026-08-25 22:13:50,972.972 INFO    ] Checking for camera pi updates...
[2026-08-25 22:13:51,005.005 INFO    ] 200
[2026-08-25 22:13:51,008.008 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:13:51,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:13:51,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:13:51,097.097 INFO    ] No camera update needed
[2026-08-25 22:13:51,100.100 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:13:51,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:13:51,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:13:51,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:13:53,153.153 INFO    ] ================================================
[2026-08-25 22:13:53,169.169 INFO    ] Launching Daemon at Tue Aug 25 22:13:53 IST 2026
[2026-08-25 22:13:53,181.181 INFO    ] ================================================
[2026-08-25 22:13:53,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:13:53
[2026-08-25 22:13:54,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:13:54,798.798 INFO    ] Initializing speech engine...
[2026-08-25 22:13:54,809.809 INFO    ] 2026-08-25 22:13:54
[2026-08-25 22:13:55,085.085 INFO    ] 2026-08-25 22:13:55
[2026-08-25 22:13:55,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:13:55,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:13:55,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:13:55,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:13:55,477.477 INFO    ] time= 25/08/2026 22:13:55
[2026-08-25 22:13:55,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:13:55,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:13:55,672.672 INFO    ] No existing commands found in stream
[2026-08-25 22:14:00,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:14:00,686.686 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 22:14:01,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:14:01,490.490 INFO    ] Checking for system updates...
[2026-08-25 22:14:01,528.528 INFO    ] 200
[2026-08-25 22:14:01,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:01,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:14:01,591.591 INFO    ] No update needed
[2026-08-25 22:14:01,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 22:14:01,630.630 INFO    ] 200
[2026-08-25 22:14:01,632.632 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:01,672.672 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:14:01,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:14:01,736.736 INFO    ] No camera update needed
[2026-08-25 22:14:01,739.739 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:14:01,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:14:01,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:14:01,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:14:03,793.793 INFO    ] ================================================
[2026-08-25 22:14:03,808.808 INFO    ] Launching Daemon at Tue Aug 25 22:14:03 IST 2026
[2026-08-25 22:14:03,819.819 INFO    ] ================================================
[2026-08-25 22:14:04,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:14:04
[2026-08-25 22:14:04,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:14:05,266.266 INFO    ] Initializing speech engine...
[2026-08-25 22:14:05,276.276 INFO    ] 2026-08-25 22:14:05
[2026-08-25 22:14:05,537.537 INFO    ] 2026-08-25 22:14:05
[2026-08-25 22:14:05,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:14:05,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:14:05,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:14:05,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:14:06,007.007 INFO    ] time= 25/08/2026 22:14:05
[2026-08-25 22:14:06,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:14:06,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:14:06,212.212 INFO    ] No existing commands found in stream
[2026-08-25 22:14:11,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:14:11,245.245 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-08-25 22:14:12,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:14:12,160.160 INFO    ] Checking for system updates...
[2026-08-25 22:14:12,195.195 INFO    ] 200
[2026-08-25 22:14:12,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:12,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:14:12,253.253 INFO    ] No update needed
[2026-08-25 22:14:12,256.256 INFO    ] Checking for camera pi updates...
[2026-08-25 22:14:12,293.293 INFO    ] 200
[2026-08-25 22:14:12,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:12,336.336 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:14:12,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:14:12,382.382 INFO    ] No camera update needed
[2026-08-25 22:14:12,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:14:12,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:14:12,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:14:12,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:14:14,443.443 INFO    ] ================================================
[2026-08-25 22:14:14,458.458 INFO    ] Launching Daemon at Tue Aug 25 22:14:14 IST 2026
[2026-08-25 22:14:14,470.470 INFO    ] ================================================
[2026-08-25 22:14:15,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:14:15
[2026-08-25 22:14:15,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:14:15,921.921 INFO    ] Initializing speech engine...
[2026-08-25 22:14:15,930.930 INFO    ] 2026-08-25 22:14:15
[2026-08-25 22:14:16,179.179 INFO    ] 2026-08-25 22:14:16
[2026-08-25 22:14:16,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:14:16,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:14:16,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:14:16,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:14:16,551.551 INFO    ] time= 25/08/2026 22:14:16
[2026-08-25 22:14:16,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:14:16,617.617 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:14:16,738.738 INFO    ] No existing commands found in stream
[2026-08-25 22:14:21,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:14:21,757.757 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 22:14:23,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:14:23,427.427 INFO    ] Checking for system updates...
[2026-08-25 22:14:23,462.462 INFO    ] 200
[2026-08-25 22:14:23,465.465 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:23,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:14:23,521.521 INFO    ] No update needed
[2026-08-25 22:14:23,523.523 INFO    ] Checking for camera pi updates...
[2026-08-25 22:14:23,560.560 INFO    ] 200
[2026-08-25 22:14:23,562.562 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:23,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:14:23,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:14:23,749.749 INFO    ] No camera update needed
[2026-08-25 22:14:23,752.752 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:14:23,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:14:23,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:14:23,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:14:25,813.813 INFO    ] ================================================
[2026-08-25 22:14:25,828.828 INFO    ] Launching Daemon at Tue Aug 25 22:14:25 IST 2026
[2026-08-25 22:14:25,838.838 INFO    ] ================================================
[2026-08-25 22:14:26,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:14:26
[2026-08-25 22:14:26,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:14:27,251.251 INFO    ] Initializing speech engine...
[2026-08-25 22:14:27,258.258 INFO    ] 2026-08-25 22:14:27
[2026-08-25 22:14:27,517.517 INFO    ] 2026-08-25 22:14:27
[2026-08-25 22:14:27,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:14:27,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:14:27,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:14:27,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:14:27,993.993 INFO    ] time= 25/08/2026 22:14:27
[2026-08-25 22:14:28,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:14:28,062.062 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:14:28,185.185 INFO    ] No existing commands found in stream
[2026-08-25 22:14:33,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:14:33,218.218 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-08-25 22:14:33,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:14:33,728.728 INFO    ] Checking for system updates...
[2026-08-25 22:14:33,767.767 INFO    ] 200
[2026-08-25 22:14:33,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:33,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:14:33,831.831 INFO    ] No update needed
[2026-08-25 22:14:33,834.834 INFO    ] Checking for camera pi updates...
[2026-08-25 22:14:33,869.869 INFO    ] 200
[2026-08-25 22:14:33,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:33,917.917 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:14:33,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:14:33,976.976 INFO    ] No camera update needed
[2026-08-25 22:14:33,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:14:33,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:14:33,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:14:33,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:14:36,034.034 INFO    ] ================================================
[2026-08-25 22:14:36,049.049 INFO    ] Launching Daemon at Tue Aug 25 22:14:36 IST 2026
[2026-08-25 22:14:36,060.060 INFO    ] ================================================
[2026-08-25 22:14:36,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:14:36
[2026-08-25 22:14:37,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:14:37,478.478 INFO    ] Initializing speech engine...
[2026-08-25 22:14:37,488.488 INFO    ] 2026-08-25 22:14:37
[2026-08-25 22:14:37,735.735 INFO    ] 2026-08-25 22:14:37
[2026-08-25 22:14:37,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:14:38,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:14:38,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:14:38,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:14:38,208.208 INFO    ] time= 25/08/2026 22:14:38
[2026-08-25 22:14:38,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:14:38,296.296 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:14:38,410.410 INFO    ] No existing commands found in stream
[2026-08-25 22:14:43,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:14:43,435.435 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 22:14:44,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:14:44,718.718 INFO    ] Checking for system updates...
[2026-08-25 22:14:44,756.756 INFO    ] 200
[2026-08-25 22:14:44,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:44,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:14:44,813.813 INFO    ] No update needed
[2026-08-25 22:14:44,815.815 INFO    ] Checking for camera pi updates...
[2026-08-25 22:14:44,848.848 INFO    ] 200
[2026-08-25 22:14:44,851.851 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:44,895.895 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:14:44,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:14:44,950.950 INFO    ] No camera update needed
[2026-08-25 22:14:44,952.952 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:14:44,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:14:44,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:14:44,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:14:47,004.004 INFO    ] ================================================
[2026-08-25 22:14:47,019.019 INFO    ] Launching Daemon at Tue Aug 25 22:14:47 IST 2026
[2026-08-25 22:14:47,029.029 INFO    ] ================================================
[2026-08-25 22:14:47,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:14:47
[2026-08-25 22:14:48,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:14:48,443.443 INFO    ] Initializing speech engine...
[2026-08-25 22:14:48,456.456 INFO    ] 2026-08-25 22:14:48
[2026-08-25 22:14:48,705.705 INFO    ] 2026-08-25 22:14:48
[2026-08-25 22:14:48,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:14:48,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:14:48,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:14:49,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:14:49,079.079 INFO    ] time= 25/08/2026 22:14:49
[2026-08-25 22:14:49,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:14:49,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:14:49,266.266 INFO    ] No existing commands found in stream
[2026-08-25 22:14:54,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:14:54,292.292 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 22:14:57,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:14:57,539.539 INFO    ] Checking for system updates...
[2026-08-25 22:14:57,578.578 INFO    ] 200
[2026-08-25 22:14:57,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:57,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:14:57,635.635 INFO    ] No update needed
[2026-08-25 22:14:57,637.637 INFO    ] Checking for camera pi updates...
[2026-08-25 22:14:57,675.675 INFO    ] 200
[2026-08-25 22:14:57,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:14:57,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:14:57,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:14:57,777.777 INFO    ] No camera update needed
[2026-08-25 22:14:57,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:14:57,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:14:57,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:14:57,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:14:59,830.830 INFO    ] ================================================
[2026-08-25 22:14:59,846.846 INFO    ] Launching Daemon at Tue Aug 25 22:14:59 IST 2026
[2026-08-25 22:14:59,856.856 INFO    ] ================================================
[2026-08-25 22:15:00,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:15:00
[2026-08-25 22:15:01,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:15:01,310.310 INFO    ] Initializing speech engine...
[2026-08-25 22:15:01,318.318 INFO    ] 2026-08-25 22:15:01
[2026-08-25 22:15:01,575.575 INFO    ] 2026-08-25 22:15:01
[2026-08-25 22:15:01,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:15:01,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:15:01,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:15:02,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:15:02,141.141 INFO    ] time= 25/08/2026 22:15:02
[2026-08-25 22:15:02,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:15:02,207.207 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:15:02,271.271 INFO    ] No existing commands found in stream
[2026-08-25 22:15:07,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:15:07,283.283 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 22:15:08,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:15:08,630.630 INFO    ] Checking for system updates...
[2026-08-25 22:15:08,665.665 INFO    ] 200
[2026-08-25 22:15:08,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:08,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:15:08,733.733 INFO    ] No update needed
[2026-08-25 22:15:08,736.736 INFO    ] Checking for camera pi updates...
[2026-08-25 22:15:08,774.774 INFO    ] 200
[2026-08-25 22:15:08,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:08,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:15:08,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:15:08,874.874 INFO    ] No camera update needed
[2026-08-25 22:15:08,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:15:08,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:15:08,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:15:08,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:15:10,932.932 INFO    ] ================================================
[2026-08-25 22:15:10,947.947 INFO    ] Launching Daemon at Tue Aug 25 22:15:10 IST 2026
[2026-08-25 22:15:10,958.958 INFO    ] ================================================
[2026-08-25 22:15:11,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:15:11
[2026-08-25 22:15:12,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:15:12,380.380 INFO    ] Initializing speech engine...
[2026-08-25 22:15:12,390.390 INFO    ] 2026-08-25 22:15:12
[2026-08-25 22:15:12,637.637 INFO    ] 2026-08-25 22:15:12
[2026-08-25 22:15:12,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:15:12,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:15:12,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:15:13,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:15:13,090.090 INFO    ] time= 25/08/2026 22:15:13
[2026-08-25 22:15:13,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:15:13,196.196 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:15:13,334.334 INFO    ] No existing commands found in stream
[2026-08-25 22:15:18,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:15:18,358.358 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 22:15:18,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:15:18,927.927 INFO    ] Checking for system updates...
[2026-08-25 22:15:18,967.967 INFO    ] 200
[2026-08-25 22:15:18,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:19,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:15:19,025.025 INFO    ] No update needed
[2026-08-25 22:15:19,027.027 INFO    ] Checking for camera pi updates...
[2026-08-25 22:15:19,066.066 INFO    ] 200
[2026-08-25 22:15:19,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:19,114.114 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:15:19,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:15:19,167.167 INFO    ] No camera update needed
[2026-08-25 22:15:19,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:15:19,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:15:19,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:15:19,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:15:21,225.225 INFO    ] ================================================
[2026-08-25 22:15:21,239.239 INFO    ] Launching Daemon at Tue Aug 25 22:15:21 IST 2026
[2026-08-25 22:15:21,250.250 INFO    ] ================================================
[2026-08-25 22:15:21,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:15:21
[2026-08-25 22:15:22,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:15:22,671.671 INFO    ] Initializing speech engine...
[2026-08-25 22:15:22,678.678 INFO    ] 2026-08-25 22:15:22
[2026-08-25 22:15:22,937.937 INFO    ] 2026-08-25 22:15:22
[2026-08-25 22:15:22,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:15:23,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:15:23,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:15:23,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:15:23,410.410 INFO    ] time= 25/08/2026 22:15:23
[2026-08-25 22:15:23,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:15:23,486.486 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:15:23,604.604 INFO    ] No existing commands found in stream
[2026-08-25 22:15:28,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:15:28,632.632 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 22:15:34,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:15:34,301.301 INFO    ] Checking for system updates...
[2026-08-25 22:15:34,340.340 INFO    ] 200
[2026-08-25 22:15:34,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:34,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:15:34,397.397 INFO    ] No update needed
[2026-08-25 22:15:34,399.399 INFO    ] Checking for camera pi updates...
[2026-08-25 22:15:34,437.437 INFO    ] 200
[2026-08-25 22:15:34,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:34,485.485 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:15:34,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:15:34,536.536 INFO    ] No camera update needed
[2026-08-25 22:15:34,539.539 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:15:34,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:15:34,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:15:34,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:15:36,593.593 INFO    ] ================================================
[2026-08-25 22:15:36,609.609 INFO    ] Launching Daemon at Tue Aug 25 22:15:36 IST 2026
[2026-08-25 22:15:36,620.620 INFO    ] ================================================
[2026-08-25 22:15:37,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:15:37
[2026-08-25 22:15:37,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:15:38,036.036 INFO    ] Initializing speech engine...
[2026-08-25 22:15:38,045.045 INFO    ] 2026-08-25 22:15:38
[2026-08-25 22:15:38,291.291 INFO    ] 2026-08-25 22:15:38
[2026-08-25 22:15:38,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:15:38,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:15:38,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:15:38,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:15:38,663.663 INFO    ] time= 25/08/2026 22:15:38
[2026-08-25 22:15:38,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:15:38,729.729 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:15:38,847.847 INFO    ] No existing commands found in stream
[2026-08-25 22:15:43,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:15:43,868.868 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-08-25 22:15:44,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:15:44,384.384 INFO    ] Checking for system updates...
[2026-08-25 22:15:44,429.429 INFO    ] 200
[2026-08-25 22:15:44,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:44,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:15:44,494.494 INFO    ] No update needed
[2026-08-25 22:15:44,496.496 INFO    ] Checking for camera pi updates...
[2026-08-25 22:15:44,535.535 INFO    ] 200
[2026-08-25 22:15:44,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:44,585.585 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:15:44,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:15:44,636.636 INFO    ] No camera update needed
[2026-08-25 22:15:44,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:15:44,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:15:44,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:15:44,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:15:46,690.690 INFO    ] ================================================
[2026-08-25 22:15:46,706.706 INFO    ] Launching Daemon at Tue Aug 25 22:15:46 IST 2026
[2026-08-25 22:15:46,717.717 INFO    ] ================================================
[2026-08-25 22:15:47,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:15:47
[2026-08-25 22:15:47,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:15:48,157.157 INFO    ] Initializing speech engine...
[2026-08-25 22:15:48,165.165 INFO    ] 2026-08-25 22:15:48
[2026-08-25 22:15:48,445.445 INFO    ] 2026-08-25 22:15:48
[2026-08-25 22:15:48,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:15:48,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:15:48,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:15:48,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:15:48,836.836 INFO    ] time= 25/08/2026 22:15:48
[2026-08-25 22:15:48,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:15:48,878.878 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:15:48,965.965 INFO    ] No existing commands found in stream
[2026-08-25 22:15:53,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:15:53,977.977 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 22:15:56,431.431 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:15:56,433.433 INFO    ] Checking for system updates...
[2026-08-25 22:15:56,473.473 INFO    ] 200
[2026-08-25 22:15:56,475.475 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:56,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:15:56,538.538 INFO    ] No update needed
[2026-08-25 22:15:56,541.541 INFO    ] Checking for camera pi updates...
[2026-08-25 22:15:56,575.575 INFO    ] 200
[2026-08-25 22:15:56,578.578 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:15:56,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:15:56,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:15:56,676.676 INFO    ] No camera update needed
[2026-08-25 22:15:56,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:15:56,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:15:56,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:15:56,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:15:58,734.734 INFO    ] ================================================
[2026-08-25 22:15:58,749.749 INFO    ] Launching Daemon at Tue Aug 25 22:15:58 IST 2026
[2026-08-25 22:15:58,760.760 INFO    ] ================================================
[2026-08-25 22:15:59,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:15:59
[2026-08-25 22:15:59,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:16:00,171.171 INFO    ] Initializing speech engine...
[2026-08-25 22:16:00,178.178 INFO    ] 2026-08-25 22:16:00
[2026-08-25 22:16:00,479.479 INFO    ] 2026-08-25 22:16:00
[2026-08-25 22:16:00,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:16:00,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:16:00,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:16:00,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:16:00,866.866 INFO    ] time= 25/08/2026 22:16:00
[2026-08-25 22:16:00,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:16:00,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:16:00,993.993 INFO    ] No existing commands found in stream
[2026-08-25 22:16:06,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:16:06,014.014 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-08-25 22:16:09,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:16:09,225.225 INFO    ] Checking for system updates...
[2026-08-25 22:16:09,264.264 INFO    ] 200
[2026-08-25 22:16:09,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:09,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:16:09,327.327 INFO    ] No update needed
[2026-08-25 22:16:09,329.329 INFO    ] Checking for camera pi updates...
[2026-08-25 22:16:09,365.365 INFO    ] 200
[2026-08-25 22:16:09,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:09,412.412 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:16:09,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:16:09,460.460 INFO    ] No camera update needed
[2026-08-25 22:16:09,463.463 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:16:09,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:16:09,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:16:09,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:16:11,516.516 INFO    ] ================================================
[2026-08-25 22:16:11,531.531 INFO    ] Launching Daemon at Tue Aug 25 22:16:11 IST 2026
[2026-08-25 22:16:11,541.541 INFO    ] ================================================
[2026-08-25 22:16:12,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:16:12
[2026-08-25 22:16:12,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:16:12,969.969 INFO    ] Initializing speech engine...
[2026-08-25 22:16:12,976.976 INFO    ] 2026-08-25 22:16:12
[2026-08-25 22:16:13,223.223 INFO    ] 2026-08-25 22:16:13
[2026-08-25 22:16:13,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:16:13,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:16:13,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:16:13,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:16:13,601.601 INFO    ] time= 25/08/2026 22:16:13
[2026-08-25 22:16:13,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:16:13,637.637 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:16:13,770.770 INFO    ] No existing commands found in stream
[2026-08-25 22:16:18,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:16:18,798.798 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 22:16:21,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:16:21,684.684 INFO    ] Checking for system updates...
[2026-08-25 22:16:21,720.720 INFO    ] 200
[2026-08-25 22:16:21,723.723 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:21,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:16:21,783.783 INFO    ] No update needed
[2026-08-25 22:16:21,786.786 INFO    ] Checking for camera pi updates...
[2026-08-25 22:16:21,819.819 INFO    ] 200
[2026-08-25 22:16:21,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:21,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:16:21,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:16:21,911.911 INFO    ] No camera update needed
[2026-08-25 22:16:21,913.913 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:16:21,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:16:21,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:16:21,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:16:23,967.967 INFO    ] ================================================
[2026-08-25 22:16:23,982.982 INFO    ] Launching Daemon at Tue Aug 25 22:16:23 IST 2026
[2026-08-25 22:16:23,992.992 INFO    ] ================================================
[2026-08-25 22:16:24,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:16:24
[2026-08-25 22:16:25,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:16:25,607.607 INFO    ] Initializing speech engine...
[2026-08-25 22:16:25,620.620 INFO    ] 2026-08-25 22:16:25
[2026-08-25 22:16:25,900.900 INFO    ] 2026-08-25 22:16:25
[2026-08-25 22:16:25,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:16:26,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:16:26,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:16:26,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:16:26,396.396 INFO    ] time= 25/08/2026 22:16:26
[2026-08-25 22:16:26,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:16:26,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:16:26,578.578 INFO    ] No existing commands found in stream
[2026-08-25 22:16:31,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:16:31,610.610 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 22:16:33,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:16:33,418.418 INFO    ] Checking for system updates...
[2026-08-25 22:16:33,453.453 INFO    ] 200
[2026-08-25 22:16:33,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:33,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:16:33,516.516 INFO    ] No update needed
[2026-08-25 22:16:33,519.519 INFO    ] Checking for camera pi updates...
[2026-08-25 22:16:33,555.555 INFO    ] 200
[2026-08-25 22:16:33,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:33,602.602 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:16:33,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:16:33,651.651 INFO    ] No camera update needed
[2026-08-25 22:16:33,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:16:33,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:16:33,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:16:33,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:16:35,709.709 INFO    ] ================================================
[2026-08-25 22:16:35,724.724 INFO    ] Launching Daemon at Tue Aug 25 22:16:35 IST 2026
[2026-08-25 22:16:35,736.736 INFO    ] ================================================
[2026-08-25 22:16:36,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:16:36
[2026-08-25 22:16:36,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:16:37,141.141 INFO    ] Initializing speech engine...
[2026-08-25 22:16:37,147.147 INFO    ] 2026-08-25 22:16:37
[2026-08-25 22:16:37,420.420 INFO    ] 2026-08-25 22:16:37
[2026-08-25 22:16:37,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:16:37,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:16:37,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:16:37,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:16:37,795.795 INFO    ] time= 25/08/2026 22:16:37
[2026-08-25 22:16:37,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:16:37,807.807 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:16:37,935.935 INFO    ] No existing commands found in stream
[2026-08-25 22:16:42,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:16:42,957.957 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 22:16:46,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:16:46,857.857 INFO    ] Checking for system updates...
[2026-08-25 22:16:46,896.896 INFO    ] 200
[2026-08-25 22:16:46,898.898 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:46,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:16:46,958.958 INFO    ] No update needed
[2026-08-25 22:16:46,961.961 INFO    ] Checking for camera pi updates...
[2026-08-25 22:16:47,002.002 INFO    ] 200
[2026-08-25 22:16:47,004.004 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:47,048.048 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:16:47,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:16:47,110.110 INFO    ] No camera update needed
[2026-08-25 22:16:47,112.112 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:16:47,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:16:47,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:16:47,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:16:49,165.165 INFO    ] ================================================
[2026-08-25 22:16:49,181.181 INFO    ] Launching Daemon at Tue Aug 25 22:16:49 IST 2026
[2026-08-25 22:16:49,192.192 INFO    ] ================================================
[2026-08-25 22:16:49,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:16:49
[2026-08-25 22:16:50,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:16:50,593.593 INFO    ] Initializing speech engine...
[2026-08-25 22:16:50,599.599 INFO    ] 2026-08-25 22:16:50
[2026-08-25 22:16:50,895.895 INFO    ] 2026-08-25 22:16:50
[2026-08-25 22:16:50,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:16:51,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:16:51,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:16:51,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:16:51,251.251 INFO    ] time= 25/08/2026 22:16:51
[2026-08-25 22:16:51,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:16:51,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:16:51,382.382 INFO    ] No existing commands found in stream
[2026-08-25 22:16:56,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:16:56,397.397 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 22:16:58,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:16:58,846.846 INFO    ] Checking for system updates...
[2026-08-25 22:16:58,884.884 INFO    ] 200
[2026-08-25 22:16:58,887.887 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:58,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:16:58,941.941 INFO    ] No update needed
[2026-08-25 22:16:58,944.944 INFO    ] Checking for camera pi updates...
[2026-08-25 22:16:58,978.978 INFO    ] 200
[2026-08-25 22:16:58,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:16:59,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:16:59,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:16:59,078.078 INFO    ] No camera update needed
[2026-08-25 22:16:59,081.081 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:16:59,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:16:59,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:16:59,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:17:01,134.134 INFO    ] ================================================
[2026-08-25 22:17:01,149.149 INFO    ] Launching Daemon at Tue Aug 25 22:17:01 IST 2026
[2026-08-25 22:17:01,160.160 INFO    ] ================================================
[2026-08-25 22:17:01,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:17:01
[2026-08-25 22:17:02,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:17:02,931.931 INFO    ] Initializing speech engine...
[2026-08-25 22:17:02,945.945 INFO    ] 2026-08-25 22:17:02
[2026-08-25 22:17:03,222.222 INFO    ] 2026-08-25 22:17:03
[2026-08-25 22:17:03,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:17:03,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:17:03,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:17:03,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:17:03,589.589 INFO    ] time= 25/08/2026 22:17:03
[2026-08-25 22:17:03,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:17:03,636.636 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:17:03,751.751 INFO    ] No existing commands found in stream
[2026-08-25 22:17:08,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:17:08,778.778 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 22:17:13,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:17:13,119.119 INFO    ] Checking for system updates...
[2026-08-25 22:17:13,155.155 INFO    ] 200
[2026-08-25 22:17:13,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:13,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:17:13,219.219 INFO    ] No update needed
[2026-08-25 22:17:13,221.221 INFO    ] Checking for camera pi updates...
[2026-08-25 22:17:13,255.255 INFO    ] 200
[2026-08-25 22:17:13,258.258 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:13,302.302 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:17:13,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:17:13,360.360 INFO    ] No camera update needed
[2026-08-25 22:17:13,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:17:13,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:17:13,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:17:13,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:17:15,417.417 INFO    ] ================================================
[2026-08-25 22:17:15,433.433 INFO    ] Launching Daemon at Tue Aug 25 22:17:15 IST 2026
[2026-08-25 22:17:15,445.445 INFO    ] ================================================
[2026-08-25 22:17:16,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:17:16
[2026-08-25 22:17:16,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:17:16,917.917 INFO    ] Initializing speech engine...
[2026-08-25 22:17:16,927.927 INFO    ] 2026-08-25 22:17:16
[2026-08-25 22:17:17,177.177 INFO    ] 2026-08-25 22:17:17
[2026-08-25 22:17:17,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:17:17,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:17:17,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:17:17,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:17:17,622.622 INFO    ] time= 25/08/2026 22:17:17
[2026-08-25 22:17:17,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:17:17,753.753 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:17:17,899.899 INFO    ] No existing commands found in stream
[2026-08-25 22:17:22,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:17:22,919.919 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 22:17:26,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:17:26,282.282 INFO    ] Checking for system updates...
[2026-08-25 22:17:26,321.321 INFO    ] 200
[2026-08-25 22:17:26,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:26,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:17:26,387.387 INFO    ] No update needed
[2026-08-25 22:17:26,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 22:17:26,428.428 INFO    ] 200
[2026-08-25 22:17:26,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:26,476.476 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:17:26,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:17:26,529.529 INFO    ] No camera update needed
[2026-08-25 22:17:26,532.532 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:17:26,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:17:26,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:17:26,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:17:28,585.585 INFO    ] ================================================
[2026-08-25 22:17:28,600.600 INFO    ] Launching Daemon at Tue Aug 25 22:17:28 IST 2026
[2026-08-25 22:17:28,611.611 INFO    ] ================================================
[2026-08-25 22:17:29,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:17:29
[2026-08-25 22:17:29,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:17:30,042.042 INFO    ] Initializing speech engine...
[2026-08-25 22:17:30,051.051 INFO    ] 2026-08-25 22:17:30
[2026-08-25 22:17:30,340.340 INFO    ] 2026-08-25 22:17:30
[2026-08-25 22:17:30,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:17:30,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:17:30,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:17:30,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:17:30,749.749 INFO    ] time= 25/08/2026 22:17:30
[2026-08-25 22:17:30,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:17:30,798.798 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:17:30,942.942 INFO    ] No existing commands found in stream
[2026-08-25 22:17:35,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:17:35,970.970 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 22:17:36,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:17:36,932.932 INFO    ] Checking for system updates...
[2026-08-25 22:17:36,968.968 INFO    ] 200
[2026-08-25 22:17:36,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:37,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:17:37,028.028 INFO    ] No update needed
[2026-08-25 22:17:37,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 22:17:37,069.069 INFO    ] 200
[2026-08-25 22:17:37,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:37,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:17:37,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:17:37,200.200 INFO    ] No camera update needed
[2026-08-25 22:17:37,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:17:37,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:17:37,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:17:37,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:17:39,257.257 INFO    ] ================================================
[2026-08-25 22:17:39,273.273 INFO    ] Launching Daemon at Tue Aug 25 22:17:39 IST 2026
[2026-08-25 22:17:39,283.283 INFO    ] ================================================
[2026-08-25 22:17:39,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:17:39
[2026-08-25 22:17:40,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:17:40,731.731 INFO    ] Initializing speech engine...
[2026-08-25 22:17:40,754.754 INFO    ] 2026-08-25 22:17:40
[2026-08-25 22:17:41,029.029 INFO    ] 2026-08-25 22:17:41
[2026-08-25 22:17:41,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:17:41,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:17:41,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:17:41,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:17:41,442.442 INFO    ] time= 25/08/2026 22:17:41
[2026-08-25 22:17:41,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:17:41,461.461 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:17:41,595.595 INFO    ] No existing commands found in stream
[2026-08-25 22:17:46,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:17:46,622.622 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 22:17:47,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:17:47,892.892 INFO    ] Checking for system updates...
[2026-08-25 22:17:47,930.930 INFO    ] 200
[2026-08-25 22:17:47,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:47,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:17:47,987.987 INFO    ] No update needed
[2026-08-25 22:17:47,989.989 INFO    ] Checking for camera pi updates...
[2026-08-25 22:17:48,022.022 INFO    ] 200
[2026-08-25 22:17:48,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:17:48,065.065 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:17:48,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:17:48,114.114 INFO    ] No camera update needed
[2026-08-25 22:17:48,116.116 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:17:48,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:17:48,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:17:48,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:17:50,168.168 INFO    ] ================================================
[2026-08-25 22:17:50,183.183 INFO    ] Launching Daemon at Tue Aug 25 22:17:50 IST 2026
[2026-08-25 22:17:50,194.194 INFO    ] ================================================
[2026-08-25 22:17:50,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:17:50
[2026-08-25 22:17:51,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:17:51,787.787 INFO    ] Initializing speech engine...
[2026-08-25 22:17:51,801.801 INFO    ] 2026-08-25 22:17:51
[2026-08-25 22:17:52,077.077 INFO    ] 2026-08-25 22:17:52
[2026-08-25 22:17:52,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:17:52,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:17:52,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:17:53,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:17:53,562.562 INFO    ] time= 25/08/2026 22:17:53
[2026-08-25 22:17:53,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:17:53,584.584 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:17:53,718.718 INFO    ] No existing commands found in stream
[2026-08-25 22:17:58,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:17:58,742.742 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 22:18:01,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:18:01,348.348 INFO    ] Checking for system updates...
[2026-08-25 22:18:01,425.425 INFO    ] 200
[2026-08-25 22:18:01,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:01,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:18:01,512.512 INFO    ] No update needed
[2026-08-25 22:18:01,516.516 INFO    ] Checking for camera pi updates...
[2026-08-25 22:18:01,574.574 INFO    ] 200
[2026-08-25 22:18:01,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:01,642.642 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:18:01,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:18:01,720.720 INFO    ] No camera update needed
[2026-08-25 22:18:01,723.723 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:18:01,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:18:01,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:18:01,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:18:03,803.803 INFO    ] ================================================
[2026-08-25 22:18:03,818.818 INFO    ] Launching Daemon at Tue Aug 25 22:18:03 IST 2026
[2026-08-25 22:18:03,828.828 INFO    ] ================================================
[2026-08-25 22:18:04,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:18:04
[2026-08-25 22:18:04,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:18:05,243.243 INFO    ] Initializing speech engine...
[2026-08-25 22:18:05,266.266 INFO    ] 2026-08-25 22:18:05
[2026-08-25 22:18:05,529.529 INFO    ] 2026-08-25 22:18:05
[2026-08-25 22:18:05,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:18:05,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:18:05,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:18:05,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:18:05,932.932 INFO    ] time= 25/08/2026 22:18:05
[2026-08-25 22:18:05,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:18:05,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:18:06,115.115 INFO    ] No existing commands found in stream
[2026-08-25 22:18:11,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:18:11,148.148 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 22:18:12,559.559 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:18:12,562.562 INFO    ] Checking for system updates...
[2026-08-25 22:18:12,598.598 INFO    ] 200
[2026-08-25 22:18:12,600.600 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:12,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:18:12,661.661 INFO    ] No update needed
[2026-08-25 22:18:12,663.663 INFO    ] Checking for camera pi updates...
[2026-08-25 22:18:12,697.697 INFO    ] 200
[2026-08-25 22:18:12,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:12,740.740 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:18:12,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:18:12,790.790 INFO    ] No camera update needed
[2026-08-25 22:18:12,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:18:12,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:18:12,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:18:12,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:18:14,846.846 INFO    ] ================================================
[2026-08-25 22:18:14,862.862 INFO    ] Launching Daemon at Tue Aug 25 22:18:14 IST 2026
[2026-08-25 22:18:14,872.872 INFO    ] ================================================
[2026-08-25 22:18:15,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:18:15
[2026-08-25 22:18:16,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:18:16,278.278 INFO    ] Initializing speech engine...
[2026-08-25 22:18:16,281.281 INFO    ] 2026-08-25 22:18:16
[2026-08-25 22:18:16,568.568 INFO    ] 2026-08-25 22:18:16
[2026-08-25 22:18:16,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:18:16,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:18:16,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:18:16,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:18:16,980.980 INFO    ] time= 25/08/2026 22:18:16
[2026-08-25 22:18:16,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:18:17,008.008 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:18:17,137.137 INFO    ] No existing commands found in stream
[2026-08-25 22:18:22,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:18:22,165.165 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 22:18:24,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:18:24,702.702 INFO    ] Checking for system updates...
[2026-08-25 22:18:24,737.737 INFO    ] 200
[2026-08-25 22:18:24,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:24,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:18:24,794.794 INFO    ] No update needed
[2026-08-25 22:18:24,796.796 INFO    ] Checking for camera pi updates...
[2026-08-25 22:18:24,836.836 INFO    ] 200
[2026-08-25 22:18:24,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:24,878.878 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:18:24,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:18:24,934.934 INFO    ] No camera update needed
[2026-08-25 22:18:24,936.936 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:18:24,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:18:24,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:18:24,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:18:26,990.990 INFO    ] ================================================
[2026-08-25 22:18:27,006.006 INFO    ] Launching Daemon at Tue Aug 25 22:18:27 IST 2026
[2026-08-25 22:18:27,017.017 INFO    ] ================================================
[2026-08-25 22:18:27,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:18:27
[2026-08-25 22:18:28,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:18:28,616.616 INFO    ] Initializing speech engine...
[2026-08-25 22:18:28,628.628 INFO    ] 2026-08-25 22:18:28
[2026-08-25 22:18:28,935.935 INFO    ] 2026-08-25 22:18:28
[2026-08-25 22:18:29,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:18:29,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:18:29,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:18:29,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:18:29,448.448 INFO    ] time= 25/08/2026 22:18:29
[2026-08-25 22:18:29,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:18:29,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:18:29,601.601 INFO    ] No existing commands found in stream
[2026-08-25 22:18:34,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:18:34,626.626 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 22:18:35,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:18:35,304.304 INFO    ] Checking for system updates...
[2026-08-25 22:18:35,340.340 INFO    ] 200
[2026-08-25 22:18:35,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:35,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:18:35,399.399 INFO    ] No update needed
[2026-08-25 22:18:35,402.402 INFO    ] Checking for camera pi updates...
[2026-08-25 22:18:35,436.436 INFO    ] 200
[2026-08-25 22:18:35,439.439 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:35,485.485 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:18:35,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:18:35,537.537 INFO    ] No camera update needed
[2026-08-25 22:18:35,540.540 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:18:35,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:18:35,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:18:35,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:18:37,596.596 INFO    ] ================================================
[2026-08-25 22:18:37,611.611 INFO    ] Launching Daemon at Tue Aug 25 22:18:37 IST 2026
[2026-08-25 22:18:37,622.622 INFO    ] ================================================
[2026-08-25 22:18:38,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:18:38
[2026-08-25 22:18:38,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:18:39,195.195 INFO    ] Initializing speech engine...
[2026-08-25 22:18:39,207.207 INFO    ] 2026-08-25 22:18:39
[2026-08-25 22:18:39,480.480 INFO    ] 2026-08-25 22:18:39
[2026-08-25 22:18:39,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:18:39,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:18:39,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:18:39,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:18:39,998.998 INFO    ] time= 25/08/2026 22:18:39
[2026-08-25 22:18:40,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:18:40,057.057 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:18:40,209.209 INFO    ] No existing commands found in stream
[2026-08-25 22:18:45,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:18:45,232.232 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 22:18:47,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:18:47,059.059 INFO    ] Checking for system updates...
[2026-08-25 22:18:47,095.095 INFO    ] 200
[2026-08-25 22:18:47,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:47,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:18:47,155.155 INFO    ] No update needed
[2026-08-25 22:18:47,158.158 INFO    ] Checking for camera pi updates...
[2026-08-25 22:18:47,192.192 INFO    ] 200
[2026-08-25 22:18:47,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:18:47,234.234 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:18:47,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:18:47,379.379 INFO    ] No camera update needed
[2026-08-25 22:18:47,381.381 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:18:47,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:18:47,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:18:47,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:18:49,434.434 INFO    ] ================================================
[2026-08-25 22:18:49,449.449 INFO    ] Launching Daemon at Tue Aug 25 22:18:49 IST 2026
[2026-08-25 22:18:49,459.459 INFO    ] ================================================
[2026-08-25 22:18:50,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:18:50
[2026-08-25 22:18:50,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:18:50,894.894 INFO    ] Initializing speech engine...
[2026-08-25 22:18:50,903.903 INFO    ] 2026-08-25 22:18:50
[2026-08-25 22:18:51,162.162 INFO    ] 2026-08-25 22:18:51
[2026-08-25 22:18:51,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:18:51,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:18:51,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:18:51,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:18:51,573.573 INFO    ] time= 25/08/2026 22:18:51
[2026-08-25 22:18:51,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:18:51,583.583 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:18:51,714.714 INFO    ] No existing commands found in stream
[2026-08-25 22:18:56,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:18:56,742.742 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 22:19:00,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:19:00,236.236 INFO    ] Checking for system updates...
[2026-08-25 22:19:00,275.275 INFO    ] 200
[2026-08-25 22:19:00,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:00,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:19:00,332.332 INFO    ] No update needed
[2026-08-25 22:19:00,335.335 INFO    ] Checking for camera pi updates...
[2026-08-25 22:19:00,369.369 INFO    ] 200
[2026-08-25 22:19:00,372.372 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:00,412.412 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:19:00,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:19:00,472.472 INFO    ] No camera update needed
[2026-08-25 22:19:00,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:19:00,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:19:00,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:19:00,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:19:02,547.547 INFO    ] ================================================
[2026-08-25 22:19:02,580.580 INFO    ] Launching Daemon at Tue Aug 25 22:19:02 IST 2026
[2026-08-25 22:19:02,604.604 INFO    ] ================================================
[2026-08-25 22:19:03,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:19:03
[2026-08-25 22:19:03,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:19:04,220.220 INFO    ] Initializing speech engine...
[2026-08-25 22:19:04,229.229 INFO    ] 2026-08-25 22:19:04
[2026-08-25 22:19:04,494.494 INFO    ] 2026-08-25 22:19:04
[2026-08-25 22:19:04,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:19:04,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:19:04,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:19:04,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:19:04,870.870 INFO    ] time= 25/08/2026 22:19:04
[2026-08-25 22:19:04,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:19:04,880.880 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:19:05,017.017 INFO    ] No existing commands found in stream
[2026-08-25 22:19:10,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:19:10,051.051 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 22:19:11,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:19:11,731.731 INFO    ] Checking for system updates...
[2026-08-25 22:19:11,767.767 INFO    ] 200
[2026-08-25 22:19:11,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:11,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:19:11,823.823 INFO    ] No update needed
[2026-08-25 22:19:11,826.826 INFO    ] Checking for camera pi updates...
[2026-08-25 22:19:11,860.860 INFO    ] 200
[2026-08-25 22:19:11,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:11,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:19:11,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:19:11,954.954 INFO    ] No camera update needed
[2026-08-25 22:19:11,956.956 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:19:11,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:19:11,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:19:11,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:19:14,010.010 INFO    ] ================================================
[2026-08-25 22:19:14,025.025 INFO    ] Launching Daemon at Tue Aug 25 22:19:14 IST 2026
[2026-08-25 22:19:14,036.036 INFO    ] ================================================
[2026-08-25 22:19:14,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:19:14
[2026-08-25 22:19:15,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:19:15,445.445 INFO    ] Initializing speech engine...
[2026-08-25 22:19:15,459.459 INFO    ] 2026-08-25 22:19:15
[2026-08-25 22:19:15,734.734 INFO    ] 2026-08-25 22:19:15
[2026-08-25 22:19:15,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:19:15,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:19:15,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:19:16,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:19:16,138.138 INFO    ] time= 25/08/2026 22:19:16
[2026-08-25 22:19:16,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:19:16,188.188 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:19:16,338.338 INFO    ] No existing commands found in stream
[2026-08-25 22:19:21,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:19:21,366.366 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 22:19:24,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:19:24,673.673 INFO    ] Checking for system updates...
[2026-08-25 22:19:24,708.708 INFO    ] 200
[2026-08-25 22:19:24,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:24,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:19:24,765.765 INFO    ] No update needed
[2026-08-25 22:19:24,767.767 INFO    ] Checking for camera pi updates...
[2026-08-25 22:19:24,803.803 INFO    ] 200
[2026-08-25 22:19:24,806.806 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:24,846.846 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:19:24,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:19:24,903.903 INFO    ] No camera update needed
[2026-08-25 22:19:24,905.905 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:19:24,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:19:24,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:19:24,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:19:26,960.960 INFO    ] ================================================
[2026-08-25 22:19:26,975.975 INFO    ] Launching Daemon at Tue Aug 25 22:19:26 IST 2026
[2026-08-25 22:19:26,986.986 INFO    ] ================================================
[2026-08-25 22:19:27,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:19:27
[2026-08-25 22:19:28,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:19:28,440.440 INFO    ] Initializing speech engine...
[2026-08-25 22:19:28,451.451 INFO    ] 2026-08-25 22:19:28
[2026-08-25 22:19:28,709.709 INFO    ] 2026-08-25 22:19:28
[2026-08-25 22:19:28,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:19:28,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:19:28,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:19:29,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:19:29,168.168 INFO    ] time= 25/08/2026 22:19:29
[2026-08-25 22:19:29,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:19:29,259.259 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:19:29,360.360 INFO    ] No existing commands found in stream
[2026-08-25 22:19:34,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:19:34,373.373 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 22:19:37,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:19:37,530.530 INFO    ] Checking for system updates...
[2026-08-25 22:19:37,567.567 INFO    ] 200
[2026-08-25 22:19:37,570.570 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:37,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:19:37,625.625 INFO    ] No update needed
[2026-08-25 22:19:37,628.628 INFO    ] Checking for camera pi updates...
[2026-08-25 22:19:37,662.662 INFO    ] 200
[2026-08-25 22:19:37,665.665 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:37,706.706 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:19:37,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:19:37,771.771 INFO    ] No camera update needed
[2026-08-25 22:19:37,774.774 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:19:37,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:19:37,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:19:37,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:19:39,830.830 INFO    ] ================================================
[2026-08-25 22:19:39,845.845 INFO    ] Launching Daemon at Tue Aug 25 22:19:39 IST 2026
[2026-08-25 22:19:39,855.855 INFO    ] ================================================
[2026-08-25 22:19:40,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:19:40
[2026-08-25 22:19:41,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:19:41,378.378 INFO    ] Initializing speech engine...
[2026-08-25 22:19:41,400.400 INFO    ] 2026-08-25 22:19:41
[2026-08-25 22:19:41,659.659 INFO    ] 2026-08-25 22:19:41
[2026-08-25 22:19:41,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:19:41,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:19:41,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:19:42,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:19:42,180.180 INFO    ] time= 25/08/2026 22:19:42
[2026-08-25 22:19:42,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:19:42,273.273 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:19:42,367.367 INFO    ] No existing commands found in stream
[2026-08-25 22:19:47,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:19:47,400.400 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-08-25 22:19:51,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:19:51,161.161 INFO    ] Checking for system updates...
[2026-08-25 22:19:51,196.196 INFO    ] 200
[2026-08-25 22:19:51,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:51,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:19:51,253.253 INFO    ] No update needed
[2026-08-25 22:19:51,255.255 INFO    ] Checking for camera pi updates...
[2026-08-25 22:19:51,289.289 INFO    ] 200
[2026-08-25 22:19:51,292.292 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:19:51,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:19:51,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:19:51,381.381 INFO    ] No camera update needed
[2026-08-25 22:19:51,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:19:51,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:19:51,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:19:51,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:19:53,437.437 INFO    ] ================================================
[2026-08-25 22:19:53,453.453 INFO    ] Launching Daemon at Tue Aug 25 22:19:53 IST 2026
[2026-08-25 22:19:53,463.463 INFO    ] ================================================
[2026-08-25 22:19:54,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:19:54
[2026-08-25 22:19:54,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:19:54,913.913 INFO    ] Initializing speech engine...
[2026-08-25 22:19:54,928.928 INFO    ] 2026-08-25 22:19:54
[2026-08-25 22:19:55,200.200 INFO    ] 2026-08-25 22:19:55
[2026-08-25 22:19:55,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:19:55,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:19:55,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:19:55,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:19:55,572.572 INFO    ] time= 25/08/2026 22:19:55
[2026-08-25 22:19:55,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:19:55,624.624 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:19:55,755.755 INFO    ] No existing commands found in stream
[2026-08-25 22:20:00,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:20:00,781.781 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 22:20:05,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:20:05,958.958 INFO    ] Checking for system updates...
[2026-08-25 22:20:05,994.994 INFO    ] 200
[2026-08-25 22:20:05,997.997 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:06,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:20:06,051.051 INFO    ] No update needed
[2026-08-25 22:20:06,054.054 INFO    ] Checking for camera pi updates...
[2026-08-25 22:20:06,087.087 INFO    ] 200
[2026-08-25 22:20:06,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:06,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:20:06,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:20:06,185.185 INFO    ] No camera update needed
[2026-08-25 22:20:06,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:20:06,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:20:06,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:20:06,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:20:08,240.240 INFO    ] ================================================
[2026-08-25 22:20:08,259.259 INFO    ] Launching Daemon at Tue Aug 25 22:20:08 IST 2026
[2026-08-25 22:20:08,270.270 INFO    ] ================================================
[2026-08-25 22:20:08,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:20:08
[2026-08-25 22:20:09,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:20:09,864.864 INFO    ] Initializing speech engine...
[2026-08-25 22:20:09,875.875 INFO    ] 2026-08-25 22:20:09
[2026-08-25 22:20:10,144.144 INFO    ] 2026-08-25 22:20:10
[2026-08-25 22:20:10,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:20:10,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:20:10,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:20:10,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:20:10,637.637 INFO    ] time= 25/08/2026 22:20:10
[2026-08-25 22:20:10,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:20:10,702.702 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:20:10,848.848 INFO    ] No existing commands found in stream
[2026-08-25 22:20:15,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:20:15,871.871 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 22:20:17,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:20:17,952.952 INFO    ] Checking for system updates...
[2026-08-25 22:20:17,989.989 INFO    ] 200
[2026-08-25 22:20:17,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:18,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:20:18,052.052 INFO    ] No update needed
[2026-08-25 22:20:18,054.054 INFO    ] Checking for camera pi updates...
[2026-08-25 22:20:18,087.087 INFO    ] 200
[2026-08-25 22:20:18,090.090 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:18,130.130 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:20:18,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:20:18,183.183 INFO    ] No camera update needed
[2026-08-25 22:20:18,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:20:18,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:20:18,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:20:18,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:20:20,237.237 INFO    ] ================================================
[2026-08-25 22:20:20,253.253 INFO    ] Launching Daemon at Tue Aug 25 22:20:20 IST 2026
[2026-08-25 22:20:20,263.263 INFO    ] ================================================
[2026-08-25 22:20:20,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:20:20
[2026-08-25 22:20:21,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:20:21,732.732 INFO    ] Initializing speech engine...
[2026-08-25 22:20:21,742.742 INFO    ] 2026-08-25 22:20:21
[2026-08-25 22:20:21,991.991 INFO    ] 2026-08-25 22:20:21
[2026-08-25 22:20:22,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:20:22,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:20:22,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:20:22,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:20:22,428.428 INFO    ] time= 25/08/2026 22:20:22
[2026-08-25 22:20:22,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:20:22,489.489 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:20:22,584.584 INFO    ] No existing commands found in stream
[2026-08-25 22:20:27,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:20:27,602.602 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 22:20:31,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:20:31,399.399 INFO    ] Checking for system updates...
[2026-08-25 22:20:31,435.435 INFO    ] 200
[2026-08-25 22:20:31,437.437 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:31,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:20:31,503.503 INFO    ] No update needed
[2026-08-25 22:20:31,506.506 INFO    ] Checking for camera pi updates...
[2026-08-25 22:20:31,546.546 INFO    ] 200
[2026-08-25 22:20:31,549.549 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:31,598.598 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:20:31,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:20:31,654.654 INFO    ] No camera update needed
[2026-08-25 22:20:31,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:20:31,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:20:31,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:20:31,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:20:33,716.716 INFO    ] ================================================
[2026-08-25 22:20:33,731.731 INFO    ] Launching Daemon at Tue Aug 25 22:20:33 IST 2026
[2026-08-25 22:20:33,742.742 INFO    ] ================================================
[2026-08-25 22:20:34,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:20:34
[2026-08-25 22:20:34,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:20:35,171.171 INFO    ] Initializing speech engine...
[2026-08-25 22:20:35,180.180 INFO    ] 2026-08-25 22:20:35
[2026-08-25 22:20:35,470.470 INFO    ] 2026-08-25 22:20:35
[2026-08-25 22:20:35,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:20:35,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:20:35,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:20:35,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:20:35,885.885 INFO    ] time= 25/08/2026 22:20:35
[2026-08-25 22:20:35,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:20:35,898.898 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:20:35,971.971 INFO    ] No existing commands found in stream
[2026-08-25 22:20:40,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:20:40,986.986 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 22:20:44,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:20:44,819.819 INFO    ] Checking for system updates...
[2026-08-25 22:20:44,855.855 INFO    ] 200
[2026-08-25 22:20:44,857.857 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:44,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:20:44,918.918 INFO    ] No update needed
[2026-08-25 22:20:44,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 22:20:44,954.954 INFO    ] 200
[2026-08-25 22:20:44,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:44,996.996 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:20:45,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:20:45,043.043 INFO    ] No camera update needed
[2026-08-25 22:20:45,045.045 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:20:45,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:20:45,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:20:45,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:20:47,097.097 INFO    ] ================================================
[2026-08-25 22:20:47,112.112 INFO    ] Launching Daemon at Tue Aug 25 22:20:47 IST 2026
[2026-08-25 22:20:47,123.123 INFO    ] ================================================
[2026-08-25 22:20:47,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:20:47
[2026-08-25 22:20:48,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:20:48,595.595 INFO    ] Initializing speech engine...
[2026-08-25 22:20:48,606.606 INFO    ] 2026-08-25 22:20:48
[2026-08-25 22:20:48,850.850 INFO    ] 2026-08-25 22:20:48
[2026-08-25 22:20:48,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:20:49,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:20:49,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:20:49,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:20:49,346.346 INFO    ] time= 25/08/2026 22:20:49
[2026-08-25 22:20:49,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:20:49,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:20:49,555.555 INFO    ] No existing commands found in stream
[2026-08-25 22:20:54,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:20:54,573.573 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-08-25 22:20:57,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:20:57,084.084 INFO    ] Checking for system updates...
[2026-08-25 22:20:57,121.121 INFO    ] 200
[2026-08-25 22:20:57,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:57,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:20:57,186.186 INFO    ] No update needed
[2026-08-25 22:20:57,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 22:20:57,222.222 INFO    ] 200
[2026-08-25 22:20:57,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:20:57,269.269 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:20:57,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:20:57,424.424 INFO    ] No camera update needed
[2026-08-25 22:20:57,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:20:57,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:20:57,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:20:57,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:20:59,481.481 INFO    ] ================================================
[2026-08-25 22:20:59,496.496 INFO    ] Launching Daemon at Tue Aug 25 22:20:59 IST 2026
[2026-08-25 22:20:59,507.507 INFO    ] ================================================
[2026-08-25 22:21:00,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:21:00
[2026-08-25 22:21:00,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:21:00,991.991 INFO    ] Initializing speech engine...
[2026-08-25 22:21:01,011.011 INFO    ] 2026-08-25 22:21:01
[2026-08-25 22:21:01,271.271 INFO    ] 2026-08-25 22:21:01
[2026-08-25 22:21:01,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:21:01,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:21:01,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:21:01,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:21:01,684.684 INFO    ] time= 25/08/2026 22:21:01
[2026-08-25 22:21:01,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:21:01,692.692 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:21:01,765.765 INFO    ] No existing commands found in stream
[2026-08-25 22:21:06,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:21:06,779.779 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 22:21:09,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:21:09,939.939 INFO    ] Checking for system updates...
[2026-08-25 22:21:09,977.977 INFO    ] 200
[2026-08-25 22:21:09,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:10,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:21:10,033.033 INFO    ] No update needed
[2026-08-25 22:21:10,036.036 INFO    ] Checking for camera pi updates...
[2026-08-25 22:21:10,070.070 INFO    ] 200
[2026-08-25 22:21:10,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:10,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:21:10,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:21:10,166.166 INFO    ] No camera update needed
[2026-08-25 22:21:10,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:21:10,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:21:10,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:21:10,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:21:12,220.220 INFO    ] ================================================
[2026-08-25 22:21:12,235.235 INFO    ] Launching Daemon at Tue Aug 25 22:21:12 IST 2026
[2026-08-25 22:21:12,246.246 INFO    ] ================================================
[2026-08-25 22:21:12,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:21:12
[2026-08-25 22:21:13,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:21:13,692.692 INFO    ] Initializing speech engine...
[2026-08-25 22:21:13,701.701 INFO    ] 2026-08-25 22:21:13
[2026-08-25 22:21:13,950.950 INFO    ] 2026-08-25 22:21:13
[2026-08-25 22:21:13,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:21:14,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:21:14,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:21:14,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:21:14,325.325 INFO    ] time= 25/08/2026 22:21:14
[2026-08-25 22:21:14,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:21:14,383.383 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:21:14,505.505 INFO    ] No existing commands found in stream
[2026-08-25 22:21:19,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:21:19,538.538 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 22:21:23,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:21:23,149.149 INFO    ] Checking for system updates...
[2026-08-25 22:21:23,185.185 INFO    ] 200
[2026-08-25 22:21:23,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:23,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:21:23,241.241 INFO    ] No update needed
[2026-08-25 22:21:23,243.243 INFO    ] Checking for camera pi updates...
[2026-08-25 22:21:23,277.277 INFO    ] 200
[2026-08-25 22:21:23,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:23,320.320 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:21:23,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:21:23,374.374 INFO    ] No camera update needed
[2026-08-25 22:21:23,377.377 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:21:23,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:21:23,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:21:23,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:21:25,429.429 INFO    ] ================================================
[2026-08-25 22:21:25,444.444 INFO    ] Launching Daemon at Tue Aug 25 22:21:25 IST 2026
[2026-08-25 22:21:25,455.455 INFO    ] ================================================
[2026-08-25 22:21:26,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:21:26
[2026-08-25 22:21:26,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:21:26,875.875 INFO    ] Initializing speech engine...
[2026-08-25 22:21:26,885.885 INFO    ] 2026-08-25 22:21:26
[2026-08-25 22:21:27,145.145 INFO    ] 2026-08-25 22:21:27
[2026-08-25 22:21:27,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:21:27,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:21:27,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:21:27,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:21:27,636.636 INFO    ] time= 25/08/2026 22:21:27
[2026-08-25 22:21:27,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:21:27,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:21:27,837.837 INFO    ] No existing commands found in stream
[2026-08-25 22:21:32,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:21:32,860.860 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-08-25 22:21:35,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:21:35,839.839 INFO    ] Checking for system updates...
[2026-08-25 22:21:35,875.875 INFO    ] 200
[2026-08-25 22:21:35,877.877 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:35,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:21:35,933.933 INFO    ] No update needed
[2026-08-25 22:21:35,936.936 INFO    ] Checking for camera pi updates...
[2026-08-25 22:21:35,969.969 INFO    ] 200
[2026-08-25 22:21:35,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:36,013.013 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:21:36,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:21:36,072.072 INFO    ] No camera update needed
[2026-08-25 22:21:36,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:21:36,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:21:36,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:21:36,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:21:38,129.129 INFO    ] ================================================
[2026-08-25 22:21:38,145.145 INFO    ] Launching Daemon at Tue Aug 25 22:21:38 IST 2026
[2026-08-25 22:21:38,155.155 INFO    ] ================================================
[2026-08-25 22:21:38,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:21:38
[2026-08-25 22:21:39,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:21:39,585.585 INFO    ] Initializing speech engine...
[2026-08-25 22:21:39,594.594 INFO    ] 2026-08-25 22:21:39
[2026-08-25 22:21:39,856.856 INFO    ] 2026-08-25 22:21:39
[2026-08-25 22:21:39,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:21:40,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:21:40,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:21:40,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:21:40,229.229 INFO    ] time= 25/08/2026 22:21:40
[2026-08-25 22:21:40,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:21:40,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:21:40,350.350 INFO    ] No existing commands found in stream
[2026-08-25 22:21:45,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:21:45,366.366 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-08-25 22:21:46,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:21:46,415.415 INFO    ] Checking for system updates...
[2026-08-25 22:21:46,450.450 INFO    ] 200
[2026-08-25 22:21:46,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:46,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:21:46,513.513 INFO    ] No update needed
[2026-08-25 22:21:46,515.515 INFO    ] Checking for camera pi updates...
[2026-08-25 22:21:46,552.552 INFO    ] 200
[2026-08-25 22:21:46,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:21:46,595.595 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:21:46,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:21:46,650.650 INFO    ] No camera update needed
[2026-08-25 22:21:46,652.652 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:21:46,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:21:46,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:21:46,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:21:48,705.705 INFO    ] ================================================
[2026-08-25 22:21:48,720.720 INFO    ] Launching Daemon at Tue Aug 25 22:21:48 IST 2026
[2026-08-25 22:21:48,731.731 INFO    ] ================================================
[2026-08-25 22:21:49,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:21:49
[2026-08-25 22:21:49,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:21:50,189.189 INFO    ] Initializing speech engine...
[2026-08-25 22:21:50,202.202 INFO    ] 2026-08-25 22:21:50
[2026-08-25 22:21:50,474.474 INFO    ] 2026-08-25 22:21:50
[2026-08-25 22:21:50,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:21:50,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:21:50,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:21:50,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:21:50,943.943 INFO    ] time= 25/08/2026 22:21:50
[2026-08-25 22:21:50,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:21:51,011.011 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:21:51,152.152 INFO    ] No existing commands found in stream
[2026-08-25 22:21:56,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:21:56,172.172 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 22:22:00,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:22:00,157.157 INFO    ] Checking for system updates...
[2026-08-25 22:22:00,193.193 INFO    ] 200
[2026-08-25 22:22:00,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:00,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:00,252.252 INFO    ] No update needed
[2026-08-25 22:22:00,256.256 INFO    ] Checking for camera pi updates...
[2026-08-25 22:22:00,291.291 INFO    ] 200
[2026-08-25 22:22:00,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:00,336.336 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:22:00,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:00,393.393 INFO    ] No camera update needed
[2026-08-25 22:22:00,395.395 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:22:00,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:22:00,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:22:00,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:22:02,455.455 INFO    ] ================================================
[2026-08-25 22:22:02,476.476 INFO    ] Launching Daemon at Tue Aug 25 22:22:02 IST 2026
[2026-08-25 22:22:02,488.488 INFO    ] ================================================
[2026-08-25 22:22:03,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:22:03
[2026-08-25 22:22:03,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:22:04,005.005 INFO    ] Initializing speech engine...
[2026-08-25 22:22:04,012.012 INFO    ] 2026-08-25 22:22:04
[2026-08-25 22:22:04,272.272 INFO    ] 2026-08-25 22:22:04
[2026-08-25 22:22:04,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:22:04,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:22:04,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:22:04,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:22:04,637.637 INFO    ] time= 25/08/2026 22:22:04
[2026-08-25 22:22:04,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:22:04,705.705 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:22:04,820.820 INFO    ] No existing commands found in stream
[2026-08-25 22:22:09,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:22:09,847.847 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-08-25 22:22:12,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:22:12,260.260 INFO    ] Checking for system updates...
[2026-08-25 22:22:12,296.296 INFO    ] 200
[2026-08-25 22:22:12,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:12,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:12,358.358 INFO    ] No update needed
[2026-08-25 22:22:12,360.360 INFO    ] Checking for camera pi updates...
[2026-08-25 22:22:12,393.393 INFO    ] 200
[2026-08-25 22:22:12,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:12,436.436 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:22:12,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:12,493.493 INFO    ] No camera update needed
[2026-08-25 22:22:12,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:22:12,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:22:12,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:22:12,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:22:14,549.549 INFO    ] ================================================
[2026-08-25 22:22:14,569.569 INFO    ] Launching Daemon at Tue Aug 25 22:22:14 IST 2026
[2026-08-25 22:22:14,579.579 INFO    ] ================================================
[2026-08-25 22:22:15,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:22:15
[2026-08-25 22:22:15,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:22:16,029.029 INFO    ] Initializing speech engine...
[2026-08-25 22:22:16,038.038 INFO    ] 2026-08-25 22:22:16
[2026-08-25 22:22:16,300.300 INFO    ] 2026-08-25 22:22:16
[2026-08-25 22:22:16,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:22:16,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:22:16,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:22:16,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:22:16,759.759 INFO    ] time= 25/08/2026 22:22:16
[2026-08-25 22:22:16,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:22:16,851.851 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:22:16,980.980 INFO    ] No existing commands found in stream
[2026-08-25 22:22:22,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:22:22,008.008 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 22:22:24,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:22:24,429.429 INFO    ] Checking for system updates...
[2026-08-25 22:22:24,466.466 INFO    ] 200
[2026-08-25 22:22:24,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:24,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:22:24,525.525 INFO    ] No update needed
[2026-08-25 22:22:24,528.528 INFO    ] Checking for camera pi updates...
[2026-08-25 22:22:24,565.565 INFO    ] 200
[2026-08-25 22:22:24,568.568 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:24,609.609 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:22:24,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:22:24,658.658 INFO    ] No camera update needed
[2026-08-25 22:22:24,661.661 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:22:24,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:22:24,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:22:24,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:22:26,716.716 INFO    ] ================================================
[2026-08-25 22:22:26,732.732 INFO    ] Launching Daemon at Tue Aug 25 22:22:26 IST 2026
[2026-08-25 22:22:26,742.742 INFO    ] ================================================
[2026-08-25 22:22:27,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:22:27
[2026-08-25 22:22:28,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:22:28,279.279 INFO    ] Initializing speech engine...
[2026-08-25 22:22:28,290.290 INFO    ] 2026-08-25 22:22:28
[2026-08-25 22:22:28,549.549 INFO    ] 2026-08-25 22:22:28
[2026-08-25 22:22:28,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:22:28,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:22:28,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:22:28,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:22:29,014.014 INFO    ] time= 25/08/2026 22:22:28
[2026-08-25 22:22:29,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:22:29,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:22:29,222.222 INFO    ] No existing commands found in stream
[2026-08-25 22:22:34,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:22:34,250.250 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 22:22:36,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:22:36,430.430 INFO    ] Checking for system updates...
[2026-08-25 22:22:36,465.465 INFO    ] 200
[2026-08-25 22:22:36,468.468 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:36,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:36,522.522 INFO    ] No update needed
[2026-08-25 22:22:36,525.525 INFO    ] Checking for camera pi updates...
[2026-08-25 22:22:36,561.561 INFO    ] 200
[2026-08-25 22:22:36,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:36,607.607 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:22:36,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:36,667.667 INFO    ] No camera update needed
[2026-08-25 22:22:36,670.670 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:22:36,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:22:36,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:22:36,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:22:38,722.722 INFO    ] ================================================
[2026-08-25 22:22:38,737.737 INFO    ] Launching Daemon at Tue Aug 25 22:22:38 IST 2026
[2026-08-25 22:22:38,749.749 INFO    ] ================================================
[2026-08-25 22:22:39,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:22:39
[2026-08-25 22:22:39,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:22:40,236.236 INFO    ] Initializing speech engine...
[2026-08-25 22:22:40,260.260 INFO    ] 2026-08-25 22:22:40
[2026-08-25 22:22:40,526.526 INFO    ] 2026-08-25 22:22:40
[2026-08-25 22:22:40,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:22:40,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:22:40,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:22:40,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:22:40,939.939 INFO    ] time= 25/08/2026 22:22:40
[2026-08-25 22:22:40,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:22:40,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:22:41,096.096 INFO    ] No existing commands found in stream
[2026-08-25 22:22:46,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:22:46,129.129 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 22:22:46,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:22:46,916.916 INFO    ] Checking for system updates...
[2026-08-25 22:22:46,955.955 INFO    ] 200
[2026-08-25 22:22:46,957.957 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:47,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:47,011.011 INFO    ] No update needed
[2026-08-25 22:22:47,014.014 INFO    ] Checking for camera pi updates...
[2026-08-25 22:22:47,048.048 INFO    ] 200
[2026-08-25 22:22:47,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:47,092.092 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:22:47,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:47,157.157 INFO    ] No camera update needed
[2026-08-25 22:22:47,159.159 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:22:47,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:22:47,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:22:47,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:22:49,214.214 INFO    ] ================================================
[2026-08-25 22:22:49,230.230 INFO    ] Launching Daemon at Tue Aug 25 22:22:49 IST 2026
[2026-08-25 22:22:49,241.241 INFO    ] ================================================
[2026-08-25 22:22:49,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:22:49
[2026-08-25 22:22:50,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:22:50,641.641 INFO    ] Initializing speech engine...
[2026-08-25 22:22:50,664.664 INFO    ] 2026-08-25 22:22:50
[2026-08-25 22:22:50,918.918 INFO    ] 2026-08-25 22:22:50
[2026-08-25 22:22:50,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:22:51,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:22:51,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:22:51,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:22:51,297.297 INFO    ] time= 25/08/2026 22:22:51
[2026-08-25 22:22:51,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:22:51,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:22:51,474.474 INFO    ] No existing commands found in stream
[2026-08-25 22:22:56,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:22:56,507.507 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-08-25 22:22:59,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:22:59,725.725 INFO    ] Checking for system updates...
[2026-08-25 22:22:59,762.762 INFO    ] 200
[2026-08-25 22:22:59,765.765 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:59,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:22:59,821.821 INFO    ] No update needed
[2026-08-25 22:22:59,824.824 INFO    ] Checking for camera pi updates...
[2026-08-25 22:22:59,860.860 INFO    ] 200
[2026-08-25 22:22:59,862.862 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:22:59,909.909 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:23:00,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:23:00,067.067 INFO    ] No camera update needed
[2026-08-25 22:23:00,069.069 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:23:00,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:23:00,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:23:00,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:23:02,132.132 INFO    ] ================================================
[2026-08-25 22:23:02,155.155 INFO    ] Launching Daemon at Tue Aug 25 22:23:02 IST 2026
[2026-08-25 22:23:02,170.170 INFO    ] ================================================
[2026-08-25 22:23:02,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:23:02
[2026-08-25 22:23:03,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:23:03,752.752 INFO    ] Initializing speech engine...
[2026-08-25 22:23:03,761.761 INFO    ] 2026-08-25 22:23:03
[2026-08-25 22:23:04,056.056 INFO    ] 2026-08-25 22:23:04
[2026-08-25 22:23:04,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:23:04,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:23:04,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:23:04,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:23:04,453.453 INFO    ] time= 25/08/2026 22:23:04
[2026-08-25 22:23:04,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:23:04,483.483 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:23:04,563.563 INFO    ] No existing commands found in stream
[2026-08-25 22:23:09,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:23:09,581.581 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-08-25 22:23:11,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:23:11,626.626 INFO    ] Checking for system updates...
[2026-08-25 22:23:11,665.665 INFO    ] 200
[2026-08-25 22:23:11,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:11,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:23:11,729.729 INFO    ] No update needed
[2026-08-25 22:23:11,731.731 INFO    ] Checking for camera pi updates...
[2026-08-25 22:23:11,768.768 INFO    ] 200
[2026-08-25 22:23:11,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:11,811.811 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:23:11,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:23:11,873.873 INFO    ] No camera update needed
[2026-08-25 22:23:11,876.876 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:23:11,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:23:11,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:23:11,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:23:13,929.929 INFO    ] ================================================
[2026-08-25 22:23:13,945.945 INFO    ] Launching Daemon at Tue Aug 25 22:23:13 IST 2026
[2026-08-25 22:23:13,956.956 INFO    ] ================================================
[2026-08-25 22:23:14,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:23:14
[2026-08-25 22:23:15,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:23:15,593.593 INFO    ] Initializing speech engine...
[2026-08-25 22:23:15,607.607 INFO    ] 2026-08-25 22:23:15
[2026-08-25 22:23:15,888.888 INFO    ] 2026-08-25 22:23:15
[2026-08-25 22:23:15,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:23:16,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:23:16,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:23:16,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:23:16,421.421 INFO    ] time= 25/08/2026 22:23:16
[2026-08-25 22:23:16,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:23:16,450.450 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:23:16,611.611 INFO    ] No existing commands found in stream
[2026-08-25 22:23:21,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:23:21,646.646 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 22:23:24,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:23:24,066.066 INFO    ] Checking for system updates...
[2026-08-25 22:23:24,102.102 INFO    ] 200
[2026-08-25 22:23:24,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:24,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:23:24,160.160 INFO    ] No update needed
[2026-08-25 22:23:24,162.162 INFO    ] Checking for camera pi updates...
[2026-08-25 22:23:24,196.196 INFO    ] 200
[2026-08-25 22:23:24,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:24,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:23:24,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:23:24,289.289 INFO    ] No camera update needed
[2026-08-25 22:23:24,291.291 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:23:24,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:23:24,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:23:24,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:23:26,343.343 INFO    ] ================================================
[2026-08-25 22:23:26,359.359 INFO    ] Launching Daemon at Tue Aug 25 22:23:26 IST 2026
[2026-08-25 22:23:26,370.370 INFO    ] ================================================
[2026-08-25 22:23:26,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:23:26
[2026-08-25 22:23:27,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:23:27,817.817 INFO    ] Initializing speech engine...
[2026-08-25 22:23:27,824.824 INFO    ] 2026-08-25 22:23:27
[2026-08-25 22:23:28,123.123 INFO    ] 2026-08-25 22:23:28
[2026-08-25 22:23:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:23:28,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:23:28,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:23:28,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:23:28,510.510 INFO    ] time= 25/08/2026 22:23:28
[2026-08-25 22:23:28,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:23:28,544.544 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:23:28,636.636 INFO    ] No existing commands found in stream
[2026-08-25 22:23:33,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:23:33,651.651 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 22:23:37,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:23:37,487.487 INFO    ] Checking for system updates...
[2026-08-25 22:23:37,523.523 INFO    ] 200
[2026-08-25 22:23:37,526.526 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:37,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:23:37,584.584 INFO    ] No update needed
[2026-08-25 22:23:37,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 22:23:37,625.625 INFO    ] 200
[2026-08-25 22:23:37,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:37,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:23:37,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:23:37,728.728 INFO    ] No camera update needed
[2026-08-25 22:23:37,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:23:37,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:23:37,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:23:37,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:23:39,786.786 INFO    ] ================================================
[2026-08-25 22:23:39,801.801 INFO    ] Launching Daemon at Tue Aug 25 22:23:39 IST 2026
[2026-08-25 22:23:39,812.812 INFO    ] ================================================
[2026-08-25 22:23:40,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:23:40
[2026-08-25 22:23:40,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:23:41,206.206 INFO    ] Initializing speech engine...
[2026-08-25 22:23:41,215.215 INFO    ] 2026-08-25 22:23:41
[2026-08-25 22:23:41,489.489 INFO    ] 2026-08-25 22:23:41
[2026-08-25 22:23:41,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:23:41,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:23:41,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:23:41,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:23:41,863.863 INFO    ] time= 25/08/2026 22:23:41
[2026-08-25 22:23:41,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:23:41,915.915 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:23:42,042.042 INFO    ] No existing commands found in stream
[2026-08-25 22:23:47,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:23:47,075.075 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 22:23:47,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:23:47,814.814 INFO    ] Checking for system updates...
[2026-08-25 22:23:47,851.851 INFO    ] 200
[2026-08-25 22:23:47,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:47,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:23:47,909.909 INFO    ] No update needed
[2026-08-25 22:23:47,911.911 INFO    ] Checking for camera pi updates...
[2026-08-25 22:23:47,949.949 INFO    ] 200
[2026-08-25 22:23:47,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:23:47,994.994 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:23:48,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:23:48,043.043 INFO    ] No camera update needed
[2026-08-25 22:23:48,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:23:48,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:23:48,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:23:48,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:23:50,101.101 INFO    ] ================================================
[2026-08-25 22:23:50,117.117 INFO    ] Launching Daemon at Tue Aug 25 22:23:50 IST 2026
[2026-08-25 22:23:50,128.128 INFO    ] ================================================
[2026-08-25 22:23:50,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:23:50
[2026-08-25 22:23:51,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:23:51,541.541 INFO    ] Initializing speech engine...
[2026-08-25 22:23:51,551.551 INFO    ] 2026-08-25 22:23:51
[2026-08-25 22:23:51,803.803 INFO    ] 2026-08-25 22:23:51
[2026-08-25 22:23:51,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:23:52,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:23:52,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:23:52,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:23:52,264.264 INFO    ] time= 25/08/2026 22:23:52
[2026-08-25 22:23:52,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:23:52,354.354 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:23:52,486.486 INFO    ] No existing commands found in stream
[2026-08-25 22:23:57,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:23:57,512.512 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 22:23:59,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:23:59,991.991 INFO    ] Checking for system updates...
[2026-08-25 22:24:00,028.028 INFO    ] 200
[2026-08-25 22:24:00,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:00,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:00,085.085 INFO    ] No update needed
[2026-08-25 22:24:00,087.087 INFO    ] Checking for camera pi updates...
[2026-08-25 22:24:00,125.125 INFO    ] 200
[2026-08-25 22:24:00,127.127 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:00,172.172 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:24:00,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:00,230.230 INFO    ] No camera update needed
[2026-08-25 22:24:00,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:24:00,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:24:00,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:24:00,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:24:02,288.288 INFO    ] ================================================
[2026-08-25 22:24:02,311.311 INFO    ] Launching Daemon at Tue Aug 25 22:24:02 IST 2026
[2026-08-25 22:24:02,328.328 INFO    ] ================================================
[2026-08-25 22:24:02,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:24:02
[2026-08-25 22:24:03,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:24:03,934.934 INFO    ] Initializing speech engine...
[2026-08-25 22:24:03,943.943 INFO    ] 2026-08-25 22:24:03
[2026-08-25 22:24:04,195.195 INFO    ] 2026-08-25 22:24:04
[2026-08-25 22:24:04,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:24:04,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:24:04,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:24:04,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:24:04,665.665 INFO    ] time= 25/08/2026 22:24:04
[2026-08-25 22:24:04,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:24:04,774.774 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:24:04,882.882 INFO    ] No existing commands found in stream
[2026-08-25 22:24:09,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:24:09,905.905 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 22:24:12,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:24:12,135.135 INFO    ] Checking for system updates...
[2026-08-25 22:24:12,170.170 INFO    ] 200
[2026-08-25 22:24:12,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:12,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:24:12,226.226 INFO    ] No update needed
[2026-08-25 22:24:12,229.229 INFO    ] Checking for camera pi updates...
[2026-08-25 22:24:12,262.262 INFO    ] 200
[2026-08-25 22:24:12,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:12,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:24:12,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:24:12,360.360 INFO    ] No camera update needed
[2026-08-25 22:24:12,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:24:12,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:24:12,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:24:12,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:24:14,416.416 INFO    ] ================================================
[2026-08-25 22:24:14,432.432 INFO    ] Launching Daemon at Tue Aug 25 22:24:14 IST 2026
[2026-08-25 22:24:14,446.446 INFO    ] ================================================
[2026-08-25 22:24:15,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:24:15
[2026-08-25 22:24:15,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:24:15,873.873 INFO    ] Initializing speech engine...
[2026-08-25 22:24:15,881.881 INFO    ] 2026-08-25 22:24:15
[2026-08-25 22:24:16,138.138 INFO    ] 2026-08-25 22:24:16
[2026-08-25 22:24:16,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:24:16,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:24:16,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:24:16,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:24:16,605.605 INFO    ] time= 25/08/2026 22:24:16
[2026-08-25 22:24:16,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:24:16,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:24:16,825.825 INFO    ] No existing commands found in stream
[2026-08-25 22:24:21,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:24:21,848.848 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 22:24:23,372.372 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:24:23,374.374 INFO    ] Checking for system updates...
[2026-08-25 22:24:23,413.413 INFO    ] 200
[2026-08-25 22:24:23,416.416 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:23,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:23,492.492 INFO    ] No update needed
[2026-08-25 22:24:23,495.495 INFO    ] Checking for camera pi updates...
[2026-08-25 22:24:23,530.530 INFO    ] 200
[2026-08-25 22:24:23,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:23,578.578 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:24:23,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:23,630.630 INFO    ] No camera update needed
[2026-08-25 22:24:23,633.633 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:24:23,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:24:23,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:24:23,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:24:25,689.689 INFO    ] ================================================
[2026-08-25 22:24:25,705.705 INFO    ] Launching Daemon at Tue Aug 25 22:24:25 IST 2026
[2026-08-25 22:24:25,716.716 INFO    ] ================================================
[2026-08-25 22:24:26,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:24:26
[2026-08-25 22:24:27,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:24:27,321.321 INFO    ] Initializing speech engine...
[2026-08-25 22:24:27,335.335 INFO    ] 2026-08-25 22:24:27
[2026-08-25 22:24:27,644.644 INFO    ] 2026-08-25 22:24:27
[2026-08-25 22:24:27,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:24:27,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:24:27,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:24:28,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:24:28,106.106 INFO    ] time= 25/08/2026 22:24:28
[2026-08-25 22:24:28,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:24:28,162.162 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:24:28,305.305 INFO    ] No existing commands found in stream
[2026-08-25 22:24:33,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:24:33,324.324 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 22:24:35,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:24:35,968.968 INFO    ] Checking for system updates...
[2026-08-25 22:24:36,008.008 INFO    ] 200
[2026-08-25 22:24:36,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:36,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:36,068.068 INFO    ] No update needed
[2026-08-25 22:24:36,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 22:24:36,109.109 INFO    ] 200
[2026-08-25 22:24:36,111.111 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:36,156.156 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:24:36,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:36,208.208 INFO    ] No camera update needed
[2026-08-25 22:24:36,211.211 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:24:36,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:24:36,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:24:36,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:24:38,265.265 INFO    ] ================================================
[2026-08-25 22:24:38,281.281 INFO    ] Launching Daemon at Tue Aug 25 22:24:38 IST 2026
[2026-08-25 22:24:38,293.293 INFO    ] ================================================
[2026-08-25 22:24:38,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:24:38
[2026-08-25 22:24:39,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:24:39,715.715 INFO    ] Initializing speech engine...
[2026-08-25 22:24:39,724.724 INFO    ] 2026-08-25 22:24:39
[2026-08-25 22:24:39,969.969 INFO    ] 2026-08-25 22:24:39
[2026-08-25 22:24:40,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:24:40,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:24:40,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:24:40,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:24:40,464.464 INFO    ] time= 25/08/2026 22:24:40
[2026-08-25 22:24:40,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:24:40,532.532 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:24:40,675.675 INFO    ] No existing commands found in stream
[2026-08-25 22:24:45,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:24:45,691.691 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-08-25 22:24:48,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:24:48,363.363 INFO    ] Checking for system updates...
[2026-08-25 22:24:48,397.397 INFO    ] 200
[2026-08-25 22:24:48,400.400 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:48,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:48,454.454 INFO    ] No update needed
[2026-08-25 22:24:48,457.457 INFO    ] Checking for camera pi updates...
[2026-08-25 22:24:48,490.490 INFO    ] 200
[2026-08-25 22:24:48,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:24:48,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:24:48,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:24:48,594.594 INFO    ] No camera update needed
[2026-08-25 22:24:48,597.597 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:24:48,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:24:48,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:24:48,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:24:50,651.651 INFO    ] ================================================
[2026-08-25 22:24:50,667.667 INFO    ] Launching Daemon at Tue Aug 25 22:24:50 IST 2026
[2026-08-25 22:24:50,678.678 INFO    ] ================================================
[2026-08-25 22:24:51,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:24:51
[2026-08-25 22:24:51,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:24:52,085.085 INFO    ] Initializing speech engine...
[2026-08-25 22:24:52,104.104 INFO    ] 2026-08-25 22:24:52
[2026-08-25 22:24:52,351.351 INFO    ] 2026-08-25 22:24:52
[2026-08-25 22:24:52,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:24:52,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:24:52,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:24:52,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:24:52,823.823 INFO    ] time= 25/08/2026 22:24:52
[2026-08-25 22:24:52,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:24:52,909.909 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:24:53,047.047 INFO    ] No existing commands found in stream
[2026-08-25 22:24:58,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:24:58,070.070 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 22:25:00,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:25:00,273.273 INFO    ] Checking for system updates...
[2026-08-25 22:25:00,308.308 INFO    ] 200
[2026-08-25 22:25:00,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:00,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:25:00,367.367 INFO    ] No update needed
[2026-08-25 22:25:00,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 22:25:00,403.403 INFO    ] 200
[2026-08-25 22:25:00,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:00,446.446 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:25:00,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:25:00,502.502 INFO    ] No camera update needed
[2026-08-25 22:25:00,504.504 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:25:00,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:25:00,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:25:00,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:25:02,562.562 INFO    ] ================================================
[2026-08-25 22:25:02,580.580 INFO    ] Launching Daemon at Tue Aug 25 22:25:02 IST 2026
[2026-08-25 22:25:02,593.593 INFO    ] ================================================
[2026-08-25 22:25:03,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:25:03
[2026-08-25 22:25:03,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:25:04,161.161 INFO    ] Initializing speech engine...
[2026-08-25 22:25:04,170.170 INFO    ] 2026-08-25 22:25:04
[2026-08-25 22:25:04,420.420 INFO    ] 2026-08-25 22:25:04
[2026-08-25 22:25:04,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:25:04,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:25:04,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:25:04,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:25:04,903.903 INFO    ] time= 25/08/2026 22:25:04
[2026-08-25 22:25:04,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:25:04,993.993 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:25:05,055.055 INFO    ] No existing commands found in stream
[2026-08-25 22:25:10,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:25:10,077.077 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 22:25:11,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:25:11,333.333 INFO    ] Checking for system updates...
[2026-08-25 22:25:11,369.369 INFO    ] 200
[2026-08-25 22:25:11,371.371 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:11,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:25:11,426.426 INFO    ] No update needed
[2026-08-25 22:25:11,428.428 INFO    ] Checking for camera pi updates...
[2026-08-25 22:25:11,465.465 INFO    ] 200
[2026-08-25 22:25:11,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:11,512.512 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:25:11,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:25:11,570.570 INFO    ] No camera update needed
[2026-08-25 22:25:11,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:25:11,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:25:11,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:25:11,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:25:13,627.627 INFO    ] ================================================
[2026-08-25 22:25:13,642.642 INFO    ] Launching Daemon at Tue Aug 25 22:25:13 IST 2026
[2026-08-25 22:25:13,654.654 INFO    ] ================================================
[2026-08-25 22:25:14,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:25:14
[2026-08-25 22:25:14,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:25:15,096.096 INFO    ] Initializing speech engine...
[2026-08-25 22:25:15,102.102 INFO    ] 2026-08-25 22:25:15
[2026-08-25 22:25:15,352.352 INFO    ] 2026-08-25 22:25:15
[2026-08-25 22:25:15,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:25:15,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:25:15,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:25:15,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:25:15,729.729 INFO    ] time= 25/08/2026 22:25:15
[2026-08-25 22:25:15,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:25:15,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:25:15,917.917 INFO    ] No existing commands found in stream
[2026-08-25 22:25:20,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:25:20,941.941 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 22:25:24,819.819 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:25:24,822.822 INFO    ] Checking for system updates...
[2026-08-25 22:25:24,861.861 INFO    ] 200
[2026-08-25 22:25:24,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:24,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:25:24,924.924 INFO    ] No update needed
[2026-08-25 22:25:24,927.927 INFO    ] Checking for camera pi updates...
[2026-08-25 22:25:24,961.961 INFO    ] 200
[2026-08-25 22:25:24,963.963 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:25,004.004 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:25:25,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:25:25,059.059 INFO    ] No camera update needed
[2026-08-25 22:25:25,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:25:25,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:25:25,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:25:25,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:25:27,116.116 INFO    ] ================================================
[2026-08-25 22:25:27,131.131 INFO    ] Launching Daemon at Tue Aug 25 22:25:27 IST 2026
[2026-08-25 22:25:27,141.141 INFO    ] ================================================
[2026-08-25 22:25:27,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:25:27
[2026-08-25 22:25:28,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:25:28,600.600 INFO    ] Initializing speech engine...
[2026-08-25 22:25:28,613.613 INFO    ] 2026-08-25 22:25:28
[2026-08-25 22:25:28,868.868 INFO    ] 2026-08-25 22:25:28
[2026-08-25 22:25:28,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:25:29,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:25:29,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:25:29,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:25:29,325.325 INFO    ] time= 25/08/2026 22:25:29
[2026-08-25 22:25:29,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:25:29,418.418 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:25:29,561.561 INFO    ] No existing commands found in stream
[2026-08-25 22:25:34,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:25:34,580.580 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 22:25:37,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:25:37,977.977 INFO    ] Checking for system updates...
[2026-08-25 22:25:38,012.012 INFO    ] 200
[2026-08-25 22:25:38,015.015 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:38,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:25:38,078.078 INFO    ] No update needed
[2026-08-25 22:25:38,080.080 INFO    ] Checking for camera pi updates...
[2026-08-25 22:25:38,114.114 INFO    ] 200
[2026-08-25 22:25:38,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:38,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:25:38,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:25:38,216.216 INFO    ] No camera update needed
[2026-08-25 22:25:38,218.218 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:25:38,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:25:38,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:25:38,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:25:40,270.270 INFO    ] ================================================
[2026-08-25 22:25:40,286.286 INFO    ] Launching Daemon at Tue Aug 25 22:25:40 IST 2026
[2026-08-25 22:25:40,298.298 INFO    ] ================================================
[2026-08-25 22:25:40,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:25:40
[2026-08-25 22:25:41,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:25:41,849.849 INFO    ] Initializing speech engine...
[2026-08-25 22:25:41,859.859 INFO    ] 2026-08-25 22:25:41
[2026-08-25 22:25:42,107.107 INFO    ] 2026-08-25 22:25:42
[2026-08-25 22:25:42,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:25:42,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:25:42,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:25:42,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:25:42,483.483 INFO    ] time= 25/08/2026 22:25:42
[2026-08-25 22:25:42,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:25:42,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:25:42,650.650 INFO    ] No existing commands found in stream
[2026-08-25 22:25:47,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:25:47,678.678 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-08-25 22:25:50,112.112 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:25:50,115.115 INFO    ] Checking for system updates...
[2026-08-25 22:25:50,150.150 INFO    ] 200
[2026-08-25 22:25:50,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:50,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:25:50,207.207 INFO    ] No update needed
[2026-08-25 22:25:50,209.209 INFO    ] Checking for camera pi updates...
[2026-08-25 22:25:50,242.242 INFO    ] 200
[2026-08-25 22:25:50,245.245 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:25:50,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:25:50,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:25:50,346.346 INFO    ] No camera update needed
[2026-08-25 22:25:50,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:25:50,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:25:50,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:25:50,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:25:52,400.400 INFO    ] ================================================
[2026-08-25 22:25:52,415.415 INFO    ] Launching Daemon at Tue Aug 25 22:25:52 IST 2026
[2026-08-25 22:25:52,427.427 INFO    ] ================================================
[2026-08-25 22:25:53,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:25:53
[2026-08-25 22:25:53,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:25:53,924.924 INFO    ] Initializing speech engine...
[2026-08-25 22:25:53,934.934 INFO    ] 2026-08-25 22:25:53
[2026-08-25 22:25:54,182.182 INFO    ] 2026-08-25 22:25:54
[2026-08-25 22:25:54,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:25:54,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:25:54,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:25:54,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:25:54,585.585 INFO    ] time= 25/08/2026 22:25:54
[2026-08-25 22:25:54,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:25:54,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:25:54,671.671 INFO    ] No existing commands found in stream
[2026-08-25 22:25:59,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:25:59,689.689 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 22:26:01,679.679 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:26:01,682.682 INFO    ] Checking for system updates...
[2026-08-25 22:26:01,717.717 INFO    ] 200
[2026-08-25 22:26:01,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:01,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:26:01,781.781 INFO    ] No update needed
[2026-08-25 22:26:01,783.783 INFO    ] Checking for camera pi updates...
[2026-08-25 22:26:01,820.820 INFO    ] 200
[2026-08-25 22:26:01,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:01,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:26:01,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:26:01,914.914 INFO    ] No camera update needed
[2026-08-25 22:26:01,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:26:01,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:26:01,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:26:01,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:26:03,971.971 INFO    ] ================================================
[2026-08-25 22:26:03,988.988 INFO    ] Launching Daemon at Tue Aug 25 22:26:03 IST 2026
[2026-08-25 22:26:04,998.998 INFO    ] ================================================
[2026-08-25 22:26:04,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:26:04
[2026-08-25 22:26:05,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:26:05,411.411 INFO    ] Initializing speech engine...
[2026-08-25 22:26:05,418.418 INFO    ] 2026-08-25 22:26:05
[2026-08-25 22:26:05,669.669 INFO    ] 2026-08-25 22:26:05
[2026-08-25 22:26:05,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:26:05,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:26:05,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:26:06,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:26:06,045.045 INFO    ] time= 25/08/2026 22:26:06
[2026-08-25 22:26:06,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:26:06,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:26:06,241.241 INFO    ] No existing commands found in stream
[2026-08-25 22:26:11,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:26:11,255.255 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 22:26:11,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:26:11,751.751 INFO    ] Checking for system updates...
[2026-08-25 22:26:11,791.791 INFO    ] 200
[2026-08-25 22:26:11,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:11,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:26:11,848.848 INFO    ] No update needed
[2026-08-25 22:26:11,851.851 INFO    ] Checking for camera pi updates...
[2026-08-25 22:26:11,884.884 INFO    ] 200
[2026-08-25 22:26:11,886.886 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:11,927.927 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:26:11,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:26:11,977.977 INFO    ] No camera update needed
[2026-08-25 22:26:11,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:26:11,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:26:11,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:26:11,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:26:14,034.034 INFO    ] ================================================
[2026-08-25 22:26:14,050.050 INFO    ] Launching Daemon at Tue Aug 25 22:26:14 IST 2026
[2026-08-25 22:26:14,061.061 INFO    ] ================================================
[2026-08-25 22:26:14,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:26:14
[2026-08-25 22:26:15,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:26:15,650.650 INFO    ] Initializing speech engine...
[2026-08-25 22:26:15,662.662 INFO    ] 2026-08-25 22:26:15
[2026-08-25 22:26:15,971.971 INFO    ] 2026-08-25 22:26:15
[2026-08-25 22:26:16,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:26:16,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:26:16,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:26:16,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:26:16,472.472 INFO    ] time= 25/08/2026 22:26:16
[2026-08-25 22:26:16,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:26:16,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:26:16,655.655 INFO    ] No existing commands found in stream
[2026-08-25 22:26:21,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:26:21,689.689 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 22:26:26,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:26:26,023.023 INFO    ] Checking for system updates...
[2026-08-25 22:26:26,059.059 INFO    ] 200
[2026-08-25 22:26:26,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:26,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:26:26,118.118 INFO    ] No update needed
[2026-08-25 22:26:26,121.121 INFO    ] Checking for camera pi updates...
[2026-08-25 22:26:26,159.159 INFO    ] 200
[2026-08-25 22:26:26,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:26,211.211 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:26:26,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:26:26,265.265 INFO    ] No camera update needed
[2026-08-25 22:26:26,268.268 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:26:26,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:26:26,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:26:26,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:26:28,323.323 INFO    ] ================================================
[2026-08-25 22:26:28,338.338 INFO    ] Launching Daemon at Tue Aug 25 22:26:28 IST 2026
[2026-08-25 22:26:28,349.349 INFO    ] ================================================
[2026-08-25 22:26:28,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:26:28
[2026-08-25 22:26:29,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:26:29,770.770 INFO    ] Initializing speech engine...
[2026-08-25 22:26:29,779.779 INFO    ] 2026-08-25 22:26:29
[2026-08-25 22:26:30,025.025 INFO    ] 2026-08-25 22:26:30
[2026-08-25 22:26:30,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:26:30,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:26:30,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:26:30,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:26:30,473.473 INFO    ] time= 25/08/2026 22:26:30
[2026-08-25 22:26:30,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:26:30,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:26:30,713.713 INFO    ] No existing commands found in stream
[2026-08-25 22:26:35,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:26:35,743.743 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 22:26:40,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:26:40,133.133 INFO    ] Checking for system updates...
[2026-08-25 22:26:40,169.169 INFO    ] 200
[2026-08-25 22:26:40,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:40,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:26:40,237.237 INFO    ] No update needed
[2026-08-25 22:26:40,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 22:26:40,276.276 INFO    ] 200
[2026-08-25 22:26:40,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:40,321.321 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:26:40,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:26:40,381.381 INFO    ] No camera update needed
[2026-08-25 22:26:40,384.384 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:26:40,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:26:40,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:26:40,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:26:42,448.448 INFO    ] ================================================
[2026-08-25 22:26:42,464.464 INFO    ] Launching Daemon at Tue Aug 25 22:26:42 IST 2026
[2026-08-25 22:26:42,475.475 INFO    ] ================================================
[2026-08-25 22:26:43,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:26:43
[2026-08-25 22:26:43,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:26:43,890.890 INFO    ] Initializing speech engine...
[2026-08-25 22:26:43,899.899 INFO    ] 2026-08-25 22:26:43
[2026-08-25 22:26:44,146.146 INFO    ] 2026-08-25 22:26:44
[2026-08-25 22:26:44,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:26:44,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:26:44,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:26:44,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:26:44,634.634 INFO    ] time= 25/08/2026 22:26:44
[2026-08-25 22:26:44,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:26:44,711.711 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:26:44,828.828 INFO    ] No existing commands found in stream
[2026-08-25 22:26:49,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:26:49,861.861 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 22:26:52,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:26:52,159.159 INFO    ] Checking for system updates...
[2026-08-25 22:26:52,195.195 INFO    ] 200
[2026-08-25 22:26:52,198.198 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:52,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:26:52,262.262 INFO    ] No update needed
[2026-08-25 22:26:52,265.265 INFO    ] Checking for camera pi updates...
[2026-08-25 22:26:52,305.305 INFO    ] 200
[2026-08-25 22:26:52,308.308 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:26:52,355.355 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:26:52,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:26:52,409.409 INFO    ] No camera update needed
[2026-08-25 22:26:52,412.412 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:26:52,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:26:52,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:26:52,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:26:54,474.474 INFO    ] ================================================
[2026-08-25 22:26:54,489.489 INFO    ] Launching Daemon at Tue Aug 25 22:26:54 IST 2026
[2026-08-25 22:26:54,500.500 INFO    ] ================================================
[2026-08-25 22:26:55,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:26:55
[2026-08-25 22:26:55,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:26:55,910.910 INFO    ] Initializing speech engine...
[2026-08-25 22:26:55,923.923 INFO    ] 2026-08-25 22:26:55
[2026-08-25 22:26:56,212.212 INFO    ] 2026-08-25 22:26:56
[2026-08-25 22:26:56,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:26:56,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:26:56,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:26:56,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:26:56,575.575 INFO    ] time= 25/08/2026 22:26:56
[2026-08-25 22:26:56,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:26:56,604.604 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:26:56,727.727 INFO    ] No existing commands found in stream
[2026-08-25 22:27:01,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:27:01,741.741 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-08-25 22:27:05,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:27:05,907.907 INFO    ] Checking for system updates...
[2026-08-25 22:27:05,943.943 INFO    ] 200
[2026-08-25 22:27:05,946.946 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:06,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:06,003.003 INFO    ] No update needed
[2026-08-25 22:27:06,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 22:27:06,042.042 INFO    ] 200
[2026-08-25 22:27:06,045.045 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:06,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:27:06,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:06,231.231 INFO    ] No camera update needed
[2026-08-25 22:27:06,233.233 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:27:06,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:27:06,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:27:06,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:27:08,286.286 INFO    ] ================================================
[2026-08-25 22:27:08,302.302 INFO    ] Launching Daemon at Tue Aug 25 22:27:08 IST 2026
[2026-08-25 22:27:08,314.314 INFO    ] ================================================
[2026-08-25 22:27:08,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:27:08
[2026-08-25 22:27:09,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:27:09,753.753 INFO    ] Initializing speech engine...
[2026-08-25 22:27:09,762.762 INFO    ] 2026-08-25 22:27:09
[2026-08-25 22:27:10,007.007 INFO    ] 2026-08-25 22:27:10
[2026-08-25 22:27:10,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:27:10,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:27:10,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:27:10,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:27:10,372.372 INFO    ] time= 25/08/2026 22:27:10
[2026-08-25 22:27:10,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:27:10,434.434 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:27:10,570.570 INFO    ] No existing commands found in stream
[2026-08-25 22:27:15,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:27:15,583.583 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 22:27:16,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:27:16,909.909 INFO    ] Checking for system updates...
[2026-08-25 22:27:16,945.945 INFO    ] 200
[2026-08-25 22:27:16,947.947 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:17,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:17,007.007 INFO    ] No update needed
[2026-08-25 22:27:17,010.010 INFO    ] Checking for camera pi updates...
[2026-08-25 22:27:17,043.043 INFO    ] 200
[2026-08-25 22:27:17,046.046 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:17,086.086 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:27:17,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:17,139.139 INFO    ] No camera update needed
[2026-08-25 22:27:17,142.142 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:27:17,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:27:17,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:27:17,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:27:19,195.195 INFO    ] ================================================
[2026-08-25 22:27:19,211.211 INFO    ] Launching Daemon at Tue Aug 25 22:27:19 IST 2026
[2026-08-25 22:27:19,223.223 INFO    ] ================================================
[2026-08-25 22:27:19,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:27:19
[2026-08-25 22:27:20,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:27:20,869.869 INFO    ] Initializing speech engine...
[2026-08-25 22:27:20,882.882 INFO    ] 2026-08-25 22:27:20
[2026-08-25 22:27:21,194.194 INFO    ] 2026-08-25 22:27:21
[2026-08-25 22:27:21,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:27:21,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:27:21,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:27:21,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:27:21,703.703 INFO    ] time= 25/08/2026 22:27:21
[2026-08-25 22:27:21,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:27:21,750.750 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:27:21,866.866 INFO    ] No existing commands found in stream
[2026-08-25 22:27:26,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:27:26,890.890 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 22:27:29,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:27:29,148.148 INFO    ] Checking for system updates...
[2026-08-25 22:27:29,185.185 INFO    ] 200
[2026-08-25 22:27:29,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:29,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:29,246.246 INFO    ] No update needed
[2026-08-25 22:27:29,249.249 INFO    ] Checking for camera pi updates...
[2026-08-25 22:27:29,283.283 INFO    ] 200
[2026-08-25 22:27:29,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:29,331.331 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:27:29,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:29,389.389 INFO    ] No camera update needed
[2026-08-25 22:27:29,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:27:29,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:27:29,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:27:29,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:27:31,445.445 INFO    ] ================================================
[2026-08-25 22:27:31,459.459 INFO    ] Launching Daemon at Tue Aug 25 22:27:31 IST 2026
[2026-08-25 22:27:31,470.470 INFO    ] ================================================
[2026-08-25 22:27:32,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:27:32
[2026-08-25 22:27:32,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:27:33,013.013 INFO    ] Initializing speech engine...
[2026-08-25 22:27:33,021.021 INFO    ] 2026-08-25 22:27:33
[2026-08-25 22:27:33,283.283 INFO    ] 2026-08-25 22:27:33
[2026-08-25 22:27:33,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:27:33,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:27:33,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:27:33,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:27:33,794.794 INFO    ] time= 25/08/2026 22:27:33
[2026-08-25 22:27:33,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:27:33,858.858 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:27:34,002.002 INFO    ] No existing commands found in stream
[2026-08-25 22:27:39,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:27:39,019.019 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 22:27:42,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:27:42,266.266 INFO    ] Checking for system updates...
[2026-08-25 22:27:42,302.302 INFO    ] 200
[2026-08-25 22:27:42,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:42,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:27:42,360.360 INFO    ] No update needed
[2026-08-25 22:27:42,363.363 INFO    ] Checking for camera pi updates...
[2026-08-25 22:27:42,402.402 INFO    ] 200
[2026-08-25 22:27:42,404.404 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:42,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:27:42,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:27:42,506.506 INFO    ] No camera update needed
[2026-08-25 22:27:42,509.509 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:27:42,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:27:42,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:27:42,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:27:44,561.561 INFO    ] ================================================
[2026-08-25 22:27:44,576.576 INFO    ] Launching Daemon at Tue Aug 25 22:27:44 IST 2026
[2026-08-25 22:27:44,587.587 INFO    ] ================================================
[2026-08-25 22:27:45,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:27:45
[2026-08-25 22:27:45,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:27:46,070.070 INFO    ] Initializing speech engine...
[2026-08-25 22:27:46,086.086 INFO    ] 2026-08-25 22:27:46
[2026-08-25 22:27:46,362.362 INFO    ] 2026-08-25 22:27:46
[2026-08-25 22:27:46,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:27:46,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:27:46,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:27:46,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:27:46,727.727 INFO    ] time= 25/08/2026 22:27:46
[2026-08-25 22:27:46,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:27:46,736.736 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:27:46,808.808 INFO    ] No existing commands found in stream
[2026-08-25 22:27:51,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:27:51,821.821 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-08-25 22:27:54,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:27:54,280.280 INFO    ] Checking for system updates...
[2026-08-25 22:27:54,316.316 INFO    ] 200
[2026-08-25 22:27:54,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:54,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:54,374.374 INFO    ] No update needed
[2026-08-25 22:27:54,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 22:27:54,410.410 INFO    ] 200
[2026-08-25 22:27:54,412.412 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:27:54,455.455 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:27:54,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:27:54,521.521 INFO    ] No camera update needed
[2026-08-25 22:27:54,524.524 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:27:54,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:27:54,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:27:54,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:27:56,576.576 INFO    ] ================================================
[2026-08-25 22:27:56,591.591 INFO    ] Launching Daemon at Tue Aug 25 22:27:56 IST 2026
[2026-08-25 22:27:56,603.603 INFO    ] ================================================
[2026-08-25 22:27:57,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:27:57
[2026-08-25 22:27:57,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:27:58,012.012 INFO    ] Initializing speech engine...
[2026-08-25 22:27:58,020.020 INFO    ] 2026-08-25 22:27:58
[2026-08-25 22:27:58,311.311 INFO    ] 2026-08-25 22:27:58
[2026-08-25 22:27:58,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:27:58,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:27:58,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:27:58,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:27:58,694.694 INFO    ] time= 25/08/2026 22:27:58
[2026-08-25 22:27:58,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:27:58,737.737 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:27:58,822.822 INFO    ] No existing commands found in stream
[2026-08-25 22:28:03,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:28:03,850.850 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-08-25 22:28:05,485.485 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:28:05,487.487 INFO    ] Checking for system updates...
[2026-08-25 22:28:05,526.526 INFO    ] 200
[2026-08-25 22:28:05,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:05,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:05,584.584 INFO    ] No update needed
[2026-08-25 22:28:05,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 22:28:05,620.620 INFO    ] 200
[2026-08-25 22:28:05,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:05,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:28:05,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:05,716.716 INFO    ] No camera update needed
[2026-08-25 22:28:05,718.718 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:28:05,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:28:05,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:28:05,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:28:07,772.772 INFO    ] ================================================
[2026-08-25 22:28:07,787.787 INFO    ] Launching Daemon at Tue Aug 25 22:28:07 IST 2026
[2026-08-25 22:28:07,797.797 INFO    ] ================================================
[2026-08-25 22:28:08,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:28:08
[2026-08-25 22:28:08,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:28:09,262.262 INFO    ] Initializing speech engine...
[2026-08-25 22:28:09,272.272 INFO    ] 2026-08-25 22:28:09
[2026-08-25 22:28:09,542.542 INFO    ] 2026-08-25 22:28:09
[2026-08-25 22:28:09,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:28:09,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:28:09,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:28:09,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:28:10,027.027 INFO    ] time= 25/08/2026 22:28:09
[2026-08-25 22:28:10,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:28:10,091.091 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:28:10,235.235 INFO    ] No existing commands found in stream
[2026-08-25 22:28:15,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:28:15,250.250 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 22:28:19,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:28:19,087.087 INFO    ] Checking for system updates...
[2026-08-25 22:28:19,126.126 INFO    ] 200
[2026-08-25 22:28:19,128.128 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:19,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:19,183.183 INFO    ] No update needed
[2026-08-25 22:28:19,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 22:28:19,219.219 INFO    ] 200
[2026-08-25 22:28:19,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:19,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:28:19,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:19,317.317 INFO    ] No camera update needed
[2026-08-25 22:28:19,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:28:19,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:28:19,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:28:19,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:28:21,372.372 INFO    ] ================================================
[2026-08-25 22:28:21,387.387 INFO    ] Launching Daemon at Tue Aug 25 22:28:21 IST 2026
[2026-08-25 22:28:21,398.398 INFO    ] ================================================
[2026-08-25 22:28:22,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:28:22
[2026-08-25 22:28:22,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:28:22,899.899 INFO    ] Initializing speech engine...
[2026-08-25 22:28:22,921.921 INFO    ] 2026-08-25 22:28:22
[2026-08-25 22:28:23,172.172 INFO    ] 2026-08-25 22:28:23
[2026-08-25 22:28:23,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:28:23,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:28:23,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:28:23,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:28:23,656.656 INFO    ] time= 25/08/2026 22:28:23
[2026-08-25 22:28:23,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:28:23,732.732 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:28:23,855.855 INFO    ] No existing commands found in stream
[2026-08-25 22:28:28,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:28:28,883.883 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 22:28:30,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:28:30,437.437 INFO    ] Checking for system updates...
[2026-08-25 22:28:30,473.473 INFO    ] 200
[2026-08-25 22:28:30,476.476 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:30,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:30,533.533 INFO    ] No update needed
[2026-08-25 22:28:30,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 22:28:30,570.570 INFO    ] 200
[2026-08-25 22:28:30,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:30,614.614 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:28:30,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:30,674.674 INFO    ] No camera update needed
[2026-08-25 22:28:30,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:28:30,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:28:30,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:28:30,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:28:32,734.734 INFO    ] ================================================
[2026-08-25 22:28:32,750.750 INFO    ] Launching Daemon at Tue Aug 25 22:28:32 IST 2026
[2026-08-25 22:28:32,761.761 INFO    ] ================================================
[2026-08-25 22:28:33,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:28:33
[2026-08-25 22:28:33,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:28:34,195.195 INFO    ] Initializing speech engine...
[2026-08-25 22:28:34,204.204 INFO    ] 2026-08-25 22:28:34
[2026-08-25 22:28:34,501.501 INFO    ] 2026-08-25 22:28:34
[2026-08-25 22:28:34,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:28:34,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:28:34,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:28:34,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:28:34,875.875 INFO    ] time= 25/08/2026 22:28:34
[2026-08-25 22:28:34,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:28:34,903.903 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:28:35,041.041 INFO    ] No existing commands found in stream
[2026-08-25 22:28:40,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:28:40,074.074 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 22:28:43,893.893 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:28:43,896.896 INFO    ] Checking for system updates...
[2026-08-25 22:28:43,938.938 INFO    ] 200
[2026-08-25 22:28:43,941.941 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:44,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:44,002.002 INFO    ] No update needed
[2026-08-25 22:28:44,005.005 INFO    ] Checking for camera pi updates...
[2026-08-25 22:28:44,039.039 INFO    ] 200
[2026-08-25 22:28:44,041.041 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:44,081.081 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:28:44,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:44,137.137 INFO    ] No camera update needed
[2026-08-25 22:28:44,139.139 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:28:44,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:28:44,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:28:44,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:28:46,191.191 INFO    ] ================================================
[2026-08-25 22:28:46,206.206 INFO    ] Launching Daemon at Tue Aug 25 22:28:46 IST 2026
[2026-08-25 22:28:46,217.217 INFO    ] ================================================
[2026-08-25 22:28:46,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:28:46
[2026-08-25 22:28:47,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:28:47,854.854 INFO    ] Initializing speech engine...
[2026-08-25 22:28:47,861.861 INFO    ] 2026-08-25 22:28:47
[2026-08-25 22:28:48,164.164 INFO    ] 2026-08-25 22:28:48
[2026-08-25 22:28:48,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:28:48,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:28:48,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:28:48,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:28:48,673.673 INFO    ] time= 25/08/2026 22:28:48
[2026-08-25 22:28:48,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:28:48,714.714 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:28:48,892.892 INFO    ] No existing commands found in stream
[2026-08-25 22:28:53,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:28:53,921.921 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-08-25 22:28:54,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:28:54,939.939 INFO    ] Checking for system updates...
[2026-08-25 22:28:54,977.977 INFO    ] 200
[2026-08-25 22:28:54,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:55,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:55,041.041 INFO    ] No update needed
[2026-08-25 22:28:55,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 22:28:55,076.076 INFO    ] 200
[2026-08-25 22:28:55,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:28:55,119.119 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:28:55,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:28:55,172.172 INFO    ] No camera update needed
[2026-08-25 22:28:55,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:28:55,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:28:55,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:28:55,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:28:57,228.228 INFO    ] ================================================
[2026-08-25 22:28:57,243.243 INFO    ] Launching Daemon at Tue Aug 25 22:28:57 IST 2026
[2026-08-25 22:28:57,254.254 INFO    ] ================================================
[2026-08-25 22:28:57,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:28:57
[2026-08-25 22:28:58,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:28:58,707.707 INFO    ] Initializing speech engine...
[2026-08-25 22:28:58,717.717 INFO    ] 2026-08-25 22:28:58
[2026-08-25 22:28:58,976.976 INFO    ] 2026-08-25 22:28:58
[2026-08-25 22:28:59,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:28:59,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:28:59,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:28:59,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:28:59,428.428 INFO    ] time= 25/08/2026 22:28:59
[2026-08-25 22:28:59,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:28:59,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:28:59,652.652 INFO    ] No existing commands found in stream
[2026-08-25 22:29:04,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:29:04,684.684 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-08-25 22:29:07,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:29:07,385.385 INFO    ] Checking for system updates...
[2026-08-25 22:29:07,423.423 INFO    ] 200
[2026-08-25 22:29:07,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:07,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:29:07,482.482 INFO    ] No update needed
[2026-08-25 22:29:07,485.485 INFO    ] Checking for camera pi updates...
[2026-08-25 22:29:07,520.520 INFO    ] 200
[2026-08-25 22:29:07,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:07,565.565 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:29:07,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:29:07,716.716 INFO    ] No camera update needed
[2026-08-25 22:29:07,719.719 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:29:07,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:29:07,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:29:07,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:29:09,776.776 INFO    ] ================================================
[2026-08-25 22:29:09,796.796 INFO    ] Launching Daemon at Tue Aug 25 22:29:09 IST 2026
[2026-08-25 22:29:09,807.807 INFO    ] ================================================
[2026-08-25 22:29:10,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:29:10
[2026-08-25 22:29:10,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:29:11,257.257 INFO    ] Initializing speech engine...
[2026-08-25 22:29:11,268.268 INFO    ] 2026-08-25 22:29:11
[2026-08-25 22:29:11,514.514 INFO    ] 2026-08-25 22:29:11
[2026-08-25 22:29:11,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:29:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:29:11,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:29:11,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:29:11,989.989 INFO    ] time= 25/08/2026 22:29:11
[2026-08-25 22:29:12,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:29:12,075.075 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:29:12,222.222 INFO    ] No existing commands found in stream
[2026-08-25 22:29:17,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:29:17,238.238 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 22:29:21,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:29:21,450.450 INFO    ] Checking for system updates...
[2026-08-25 22:29:21,491.491 INFO    ] 200
[2026-08-25 22:29:21,494.494 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:21,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:29:21,557.557 INFO    ] No update needed
[2026-08-25 22:29:21,560.560 INFO    ] Checking for camera pi updates...
[2026-08-25 22:29:21,593.593 INFO    ] 200
[2026-08-25 22:29:21,596.596 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:21,644.644 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:29:21,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:29:21,692.692 INFO    ] No camera update needed
[2026-08-25 22:29:21,694.694 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:29:21,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:29:21,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:29:21,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:29:23,747.747 INFO    ] ================================================
[2026-08-25 22:29:23,762.762 INFO    ] Launching Daemon at Tue Aug 25 22:29:23 IST 2026
[2026-08-25 22:29:23,773.773 INFO    ] ================================================
[2026-08-25 22:29:24,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:29:24
[2026-08-25 22:29:24,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:29:25,210.210 INFO    ] Initializing speech engine...
[2026-08-25 22:29:25,230.230 INFO    ] 2026-08-25 22:29:25
[2026-08-25 22:29:25,510.510 INFO    ] 2026-08-25 22:29:25
[2026-08-25 22:29:25,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:29:25,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:29:25,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:29:25,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:29:25,898.898 INFO    ] time= 25/08/2026 22:29:25
[2026-08-25 22:29:25,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:29:25,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:29:26,058.058 INFO    ] No existing commands found in stream
[2026-08-25 22:29:31,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:29:31,086.086 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 22:29:34,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:29:34,203.203 INFO    ] Checking for system updates...
[2026-08-25 22:29:34,244.244 INFO    ] 200
[2026-08-25 22:29:34,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:34,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:29:34,309.309 INFO    ] No update needed
[2026-08-25 22:29:34,312.312 INFO    ] Checking for camera pi updates...
[2026-08-25 22:29:34,345.345 INFO    ] 200
[2026-08-25 22:29:34,347.347 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:34,388.388 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:29:34,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:29:34,435.435 INFO    ] No camera update needed
[2026-08-25 22:29:34,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:29:34,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:29:34,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:29:34,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:29:36,491.491 INFO    ] ================================================
[2026-08-25 22:29:36,506.506 INFO    ] Launching Daemon at Tue Aug 25 22:29:36 IST 2026
[2026-08-25 22:29:36,517.517 INFO    ] ================================================
[2026-08-25 22:29:37,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:29:37
[2026-08-25 22:29:37,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:29:37,967.967 INFO    ] Initializing speech engine...
[2026-08-25 22:29:37,977.977 INFO    ] 2026-08-25 22:29:37
[2026-08-25 22:29:38,239.239 INFO    ] 2026-08-25 22:29:38
[2026-08-25 22:29:38,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:29:38,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:29:38,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:29:38,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:29:38,696.696 INFO    ] time= 25/08/2026 22:29:38
[2026-08-25 22:29:38,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:29:38,787.787 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:29:38,915.915 INFO    ] No existing commands found in stream
[2026-08-25 22:29:43,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:29:43,943.943 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-08-25 22:29:45,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:29:45,516.516 INFO    ] Checking for system updates...
[2026-08-25 22:29:45,553.553 INFO    ] 200
[2026-08-25 22:29:45,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:45,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:29:45,613.613 INFO    ] No update needed
[2026-08-25 22:29:45,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 22:29:45,649.649 INFO    ] 200
[2026-08-25 22:29:45,651.651 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:45,693.693 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:29:45,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:29:45,745.745 INFO    ] No camera update needed
[2026-08-25 22:29:45,748.748 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:29:45,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:29:45,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:29:45,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:29:47,802.802 INFO    ] ================================================
[2026-08-25 22:29:47,817.817 INFO    ] Launching Daemon at Tue Aug 25 22:29:47 IST 2026
[2026-08-25 22:29:47,828.828 INFO    ] ================================================
[2026-08-25 22:29:48,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:29:48
[2026-08-25 22:29:49,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:29:49,502.502 INFO    ] Initializing speech engine...
[2026-08-25 22:29:49,508.508 INFO    ] 2026-08-25 22:29:49
[2026-08-25 22:29:49,777.777 INFO    ] 2026-08-25 22:29:49
[2026-08-25 22:29:49,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:29:50,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:29:50,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:29:50,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:29:50,243.243 INFO    ] time= 25/08/2026 22:29:50
[2026-08-25 22:29:50,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:29:50,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:29:50,459.459 INFO    ] No existing commands found in stream
[2026-08-25 22:29:55,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:29:55,475.475 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 22:29:57,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:29:57,438.438 INFO    ] Checking for system updates...
[2026-08-25 22:29:57,474.474 INFO    ] 200
[2026-08-25 22:29:57,477.477 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:57,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:29:57,541.541 INFO    ] No update needed
[2026-08-25 22:29:57,544.544 INFO    ] Checking for camera pi updates...
[2026-08-25 22:29:57,578.578 INFO    ] 200
[2026-08-25 22:29:57,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:29:57,621.621 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:29:57,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:29:57,677.677 INFO    ] No camera update needed
[2026-08-25 22:29:57,679.679 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:29:57,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:29:57,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:29:57,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:29:59,732.732 INFO    ] ================================================
[2026-08-25 22:29:59,747.747 INFO    ] Launching Daemon at Tue Aug 25 22:29:59 IST 2026
[2026-08-25 22:29:59,758.758 INFO    ] ================================================
[2026-08-25 22:30:00,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:30:00
[2026-08-25 22:30:00,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:30:01,262.262 INFO    ] Initializing speech engine...
[2026-08-25 22:30:01,270.270 INFO    ] 2026-08-25 22:30:01
[2026-08-25 22:30:01,562.562 INFO    ] 2026-08-25 22:30:01
[2026-08-25 22:30:01,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:30:01,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:30:01,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:30:02,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:30:02,050.050 INFO    ] time= 25/08/2026 22:30:02
[2026-08-25 22:30:02,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:30:02,094.094 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:30:02,162.162 INFO    ] No existing commands found in stream
[2026-08-25 22:30:07,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:30:07,190.190 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-08-25 22:30:11,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:30:11,407.407 INFO    ] Checking for system updates...
[2026-08-25 22:30:11,442.442 INFO    ] 200
[2026-08-25 22:30:11,445.445 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:11,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:30:11,499.499 INFO    ] No update needed
[2026-08-25 22:30:11,501.501 INFO    ] Checking for camera pi updates...
[2026-08-25 22:30:11,539.539 INFO    ] 200
[2026-08-25 22:30:11,541.541 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:11,587.587 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:30:11,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:30:11,637.637 INFO    ] No camera update needed
[2026-08-25 22:30:11,640.640 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:30:11,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:30:11,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:30:11,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:30:13,693.693 INFO    ] ================================================
[2026-08-25 22:30:13,708.708 INFO    ] Launching Daemon at Tue Aug 25 22:30:13 IST 2026
[2026-08-25 22:30:13,718.718 INFO    ] ================================================
[2026-08-25 22:30:14,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:30:14
[2026-08-25 22:30:14,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:30:15,140.140 INFO    ] Initializing speech engine...
[2026-08-25 22:30:15,146.146 INFO    ] 2026-08-25 22:30:15
[2026-08-25 22:30:15,403.403 INFO    ] 2026-08-25 22:30:15
[2026-08-25 22:30:15,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:30:15,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:30:15,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:30:15,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:30:15,864.864 INFO    ] time= 25/08/2026 22:30:15
[2026-08-25 22:30:15,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:30:15,950.950 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:30:16,072.072 INFO    ] No existing commands found in stream
[2026-08-25 22:30:21,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:30:21,100.100 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 22:30:23,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:30:23,679.679 INFO    ] Checking for system updates...
[2026-08-25 22:30:23,715.715 INFO    ] 200
[2026-08-25 22:30:23,717.717 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:23,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:30:23,774.774 INFO    ] No update needed
[2026-08-25 22:30:23,777.777 INFO    ] Checking for camera pi updates...
[2026-08-25 22:30:23,815.815 INFO    ] 200
[2026-08-25 22:30:23,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:23,863.863 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:30:23,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:30:23,908.908 INFO    ] No camera update needed
[2026-08-25 22:30:23,910.910 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:30:23,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:30:23,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:30:23,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:30:25,963.963 INFO    ] ================================================
[2026-08-25 22:30:25,978.978 INFO    ] Launching Daemon at Tue Aug 25 22:30:25 IST 2026
[2026-08-25 22:30:25,989.989 INFO    ] ================================================
[2026-08-25 22:30:26,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:30:26
[2026-08-25 22:30:27,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:30:27,412.412 INFO    ] Initializing speech engine...
[2026-08-25 22:30:27,419.419 INFO    ] 2026-08-25 22:30:27
[2026-08-25 22:30:27,677.677 INFO    ] 2026-08-25 22:30:27
[2026-08-25 22:30:27,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:30:27,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:30:27,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:30:28,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:30:28,154.154 INFO    ] time= 25/08/2026 22:30:28
[2026-08-25 22:30:28,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:30:28,224.224 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:30:28,373.373 INFO    ] No existing commands found in stream
[2026-08-25 22:30:33,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:30:33,394.394 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-08-25 22:30:34,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:30:34,214.214 INFO    ] Checking for system updates...
[2026-08-25 22:30:34,250.250 INFO    ] 200
[2026-08-25 22:30:34,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:34,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:30:34,315.315 INFO    ] No update needed
[2026-08-25 22:30:34,317.317 INFO    ] Checking for camera pi updates...
[2026-08-25 22:30:34,350.350 INFO    ] 200
[2026-08-25 22:30:34,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:34,398.398 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:30:34,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:30:34,449.449 INFO    ] No camera update needed
[2026-08-25 22:30:34,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:30:34,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:30:34,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:30:34,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:30:36,504.504 INFO    ] ================================================
[2026-08-25 22:30:36,519.519 INFO    ] Launching Daemon at Tue Aug 25 22:30:36 IST 2026
[2026-08-25 22:30:36,529.529 INFO    ] ================================================
[2026-08-25 22:30:37,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:30:37
[2026-08-25 22:30:37,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:30:37,941.941 INFO    ] Initializing speech engine...
[2026-08-25 22:30:37,962.962 INFO    ] 2026-08-25 22:30:37
[2026-08-25 22:30:38,239.239 INFO    ] 2026-08-25 22:30:38
[2026-08-25 22:30:38,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:30:38,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:30:38,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:30:38,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:30:38,605.605 INFO    ] time= 25/08/2026 22:30:38
[2026-08-25 22:30:38,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:30:38,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:30:38,780.780 INFO    ] No existing commands found in stream
[2026-08-25 22:30:43,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:30:43,808.808 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 22:30:45,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:30:45,673.673 INFO    ] Checking for system updates...
[2026-08-25 22:30:45,709.709 INFO    ] 200
[2026-08-25 22:30:45,712.712 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:45,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:30:45,777.777 INFO    ] No update needed
[2026-08-25 22:30:45,780.780 INFO    ] Checking for camera pi updates...
[2026-08-25 22:30:45,816.816 INFO    ] 200
[2026-08-25 22:30:45,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:45,867.867 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:30:45,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:30:45,921.921 INFO    ] No camera update needed
[2026-08-25 22:30:45,924.924 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:30:45,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:30:45,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:30:45,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:30:47,980.980 INFO    ] ================================================
[2026-08-25 22:30:48,996.996 INFO    ] Launching Daemon at Tue Aug 25 22:30:47 IST 2026
[2026-08-25 22:30:48,006.006 INFO    ] ================================================
[2026-08-25 22:30:48,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:30:48
[2026-08-25 22:30:49,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:30:49,553.553 INFO    ] Initializing speech engine...
[2026-08-25 22:30:49,559.559 INFO    ] 2026-08-25 22:30:49
[2026-08-25 22:30:49,852.852 INFO    ] 2026-08-25 22:30:49
[2026-08-25 22:30:49,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:30:50,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:30:50,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:30:50,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:30:50,256.256 INFO    ] time= 25/08/2026 22:30:50
[2026-08-25 22:30:50,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:30:50,301.301 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:30:50,387.387 INFO    ] No existing commands found in stream
[2026-08-25 22:30:55,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:30:55,399.399 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 22:30:56,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:30:56,319.319 INFO    ] Checking for system updates...
[2026-08-25 22:30:56,356.356 INFO    ] 200
[2026-08-25 22:30:56,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:56,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:30:56,421.421 INFO    ] No update needed
[2026-08-25 22:30:56,423.423 INFO    ] Checking for camera pi updates...
[2026-08-25 22:30:56,458.458 INFO    ] 200
[2026-08-25 22:30:56,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:30:56,501.501 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:30:56,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:30:56,550.550 INFO    ] No camera update needed
[2026-08-25 22:30:56,552.552 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:30:56,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:30:56,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:30:56,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:30:58,610.610 INFO    ] ================================================
[2026-08-25 22:30:58,625.625 INFO    ] Launching Daemon at Tue Aug 25 22:30:58 IST 2026
[2026-08-25 22:30:58,635.635 INFO    ] ================================================
[2026-08-25 22:30:59,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:30:59
[2026-08-25 22:30:59,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:31:00,079.079 INFO    ] Initializing speech engine...
[2026-08-25 22:31:00,090.090 INFO    ] 2026-08-25 22:31:00
[2026-08-25 22:31:00,348.348 INFO    ] 2026-08-25 22:31:00
[2026-08-25 22:31:00,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:31:00,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:31:00,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:31:00,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:31:00,824.824 INFO    ] time= 25/08/2026 22:31:00
[2026-08-25 22:31:00,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:31:00,914.914 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:31:01,027.027 INFO    ] No existing commands found in stream
[2026-08-25 22:31:06,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:31:06,057.057 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-08-25 22:31:10,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:31:10,823.823 INFO    ] Checking for system updates...
[2026-08-25 22:31:10,861.861 INFO    ] 200
[2026-08-25 22:31:10,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:10,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:31:10,918.918 INFO    ] No update needed
[2026-08-25 22:31:10,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 22:31:10,956.956 INFO    ] 200
[2026-08-25 22:31:10,959.959 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:11,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:31:11,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:31:11,160.160 INFO    ] No camera update needed
[2026-08-25 22:31:11,163.163 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:31:11,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:31:11,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:31:11,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:31:13,214.214 INFO    ] ================================================
[2026-08-25 22:31:13,229.229 INFO    ] Launching Daemon at Tue Aug 25 22:31:13 IST 2026
[2026-08-25 22:31:13,239.239 INFO    ] ================================================
[2026-08-25 22:31:13,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:31:13
[2026-08-25 22:31:14,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:31:14,818.818 INFO    ] Initializing speech engine...
[2026-08-25 22:31:14,826.826 INFO    ] 2026-08-25 22:31:14
[2026-08-25 22:31:15,097.097 INFO    ] 2026-08-25 22:31:15
[2026-08-25 22:31:15,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:31:15,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:31:15,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:31:15,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:31:15,578.578 INFO    ] time= 25/08/2026 22:31:15
[2026-08-25 22:31:15,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:31:15,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:31:15,805.805 INFO    ] No existing commands found in stream
[2026-08-25 22:31:20,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:31:20,837.837 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-08-25 22:31:24,921.921 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:31:24,925.925 INFO    ] Checking for system updates...
[2026-08-25 22:31:24,961.961 INFO    ] 200
[2026-08-25 22:31:24,964.964 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:25,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:31:25,020.020 INFO    ] No update needed
[2026-08-25 22:31:25,022.022 INFO    ] Checking for camera pi updates...
[2026-08-25 22:31:25,059.059 INFO    ] 200
[2026-08-25 22:31:25,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:25,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:31:25,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:31:25,167.167 INFO    ] No camera update needed
[2026-08-25 22:31:25,169.169 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:31:25,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:31:25,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:31:25,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:31:27,221.221 INFO    ] ================================================
[2026-08-25 22:31:27,237.237 INFO    ] Launching Daemon at Tue Aug 25 22:31:27 IST 2026
[2026-08-25 22:31:27,247.247 INFO    ] ================================================
[2026-08-25 22:31:27,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:31:27
[2026-08-25 22:31:28,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:31:28,736.736 INFO    ] Initializing speech engine...
[2026-08-25 22:31:28,748.748 INFO    ] 2026-08-25 22:31:28
[2026-08-25 22:31:29,018.018 INFO    ] 2026-08-25 22:31:29
[2026-08-25 22:31:29,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:31:29,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:31:29,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:31:29,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:31:29,430.430 INFO    ] time= 25/08/2026 22:31:29
[2026-08-25 22:31:29,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:31:29,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:31:29,519.519 INFO    ] No existing commands found in stream
[2026-08-25 22:31:34,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:31:34,530.530 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-08-25 22:31:35,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:31:35,749.749 INFO    ] Checking for system updates...
[2026-08-25 22:31:35,788.788 INFO    ] 200
[2026-08-25 22:31:35,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:35,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:31:35,846.846 INFO    ] No update needed
[2026-08-25 22:31:35,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 22:31:35,882.882 INFO    ] 200
[2026-08-25 22:31:35,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:35,931.931 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:31:35,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:31:35,985.985 INFO    ] No camera update needed
[2026-08-25 22:31:35,988.988 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:31:35,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:31:35,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:31:36,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:31:38,045.045 INFO    ] ================================================
[2026-08-25 22:31:38,060.060 INFO    ] Launching Daemon at Tue Aug 25 22:31:38 IST 2026
[2026-08-25 22:31:38,071.071 INFO    ] ================================================
[2026-08-25 22:31:38,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:31:38
[2026-08-25 22:31:39,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:31:39,486.486 INFO    ] Initializing speech engine...
[2026-08-25 22:31:39,495.495 INFO    ] 2026-08-25 22:31:39
[2026-08-25 22:31:39,748.748 INFO    ] 2026-08-25 22:31:39
[2026-08-25 22:31:39,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:31:40,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:31:40,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:31:40,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:31:40,214.214 INFO    ] time= 25/08/2026 22:31:40
[2026-08-25 22:31:40,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:31:40,302.302 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:31:40,448.448 INFO    ] No existing commands found in stream
[2026-08-25 22:31:45,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:31:45,495.495 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 22:31:48,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:31:48,319.319 INFO    ] Checking for system updates...
[2026-08-25 22:31:48,376.376 INFO    ] 200
[2026-08-25 22:31:48,379.379 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:48,383.383 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 22:31:48,388.388 INFO    ] Checking for camera pi updates...
[2026-08-25 22:31:48,425.425 INFO    ] 200
[2026-08-25 22:31:48,428.428 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 22:31:48,430.430 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 22:31:48,433.433 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:31:48,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:31:48,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:31:48,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:31:50,489.489 INFO    ] ================================================
[2026-08-25 22:31:50,513.513 INFO    ] Launching Daemon at Tue Aug 25 22:31:50 IST 2026
[2026-08-25 22:31:50,525.525 INFO    ] ================================================
[2026-08-25 22:31:51,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:31:51
[2026-08-25 22:31:51,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:31:52,196.196 INFO    ] Initializing speech engine...
[2026-08-25 22:31:52,210.210 INFO    ] 2026-08-25 22:31:52
[2026-08-25 22:31:52,526.526 INFO    ] 2026-08-25 22:31:52
[2026-08-25 22:31:52,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:31:52,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:31:52,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:31:53,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:31:53,033.033 INFO    ] time= 25/08/2026 22:31:53
[2026-08-25 22:31:53,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:31:53,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:31:53,213.213 INFO    ] No existing commands found in stream
[2026-08-25 22:31:58,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:31:58,248.248 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 22:32:01,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:32:01,085.085 INFO    ] Checking for system updates...
[2026-08-25 22:32:01,122.122 INFO    ] 200
[2026-08-25 22:32:01,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:01,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:01,183.183 INFO    ] No update needed
[2026-08-25 22:32:01,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 22:32:01,221.221 INFO    ] 200
[2026-08-25 22:32:01,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:01,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:32:01,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:01,406.406 INFO    ] No camera update needed
[2026-08-25 22:32:01,408.408 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:32:01,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:32:01,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:32:01,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:32:03,462.462 INFO    ] ================================================
[2026-08-25 22:32:03,478.478 INFO    ] Launching Daemon at Tue Aug 25 22:32:03 IST 2026
[2026-08-25 22:32:03,490.490 INFO    ] ================================================
[2026-08-25 22:32:04,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:32:04
[2026-08-25 22:32:04,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:32:04,911.911 INFO    ] Initializing speech engine...
[2026-08-25 22:32:04,920.920 INFO    ] 2026-08-25 22:32:04
[2026-08-25 22:32:05,166.166 INFO    ] 2026-08-25 22:32:05
[2026-08-25 22:32:05,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:32:05,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:32:05,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:32:05,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:32:05,673.673 INFO    ] time= 25/08/2026 22:32:05
[2026-08-25 22:32:05,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:32:05,731.731 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:32:05,875.875 INFO    ] No existing commands found in stream
[2026-08-25 22:32:10,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:32:10,890.890 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 22:32:11,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:32:11,642.642 INFO    ] Checking for system updates...
[2026-08-25 22:32:11,679.679 INFO    ] 200
[2026-08-25 22:32:11,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:11,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:11,736.736 INFO    ] No update needed
[2026-08-25 22:32:11,739.739 INFO    ] Checking for camera pi updates...
[2026-08-25 22:32:11,777.777 INFO    ] 200
[2026-08-25 22:32:11,779.779 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:11,820.820 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:32:11,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:11,870.870 INFO    ] No camera update needed
[2026-08-25 22:32:11,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:32:11,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:32:11,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:32:11,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:32:13,926.926 INFO    ] ================================================
[2026-08-25 22:32:13,941.941 INFO    ] Launching Daemon at Tue Aug 25 22:32:13 IST 2026
[2026-08-25 22:32:13,952.952 INFO    ] ================================================
[2026-08-25 22:32:14,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:32:14
[2026-08-25 22:32:15,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:32:15,381.381 INFO    ] Initializing speech engine...
[2026-08-25 22:32:15,390.390 INFO    ] 2026-08-25 22:32:15
[2026-08-25 22:32:15,632.632 INFO    ] 2026-08-25 22:32:15
[2026-08-25 22:32:15,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:32:15,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:32:15,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:32:16,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:32:16,136.136 INFO    ] time= 25/08/2026 22:32:16
[2026-08-25 22:32:16,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:32:16,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:32:16,341.341 INFO    ] No existing commands found in stream
[2026-08-25 22:32:21,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:32:21,365.365 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 22:32:23,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:32:23,641.641 INFO    ] Checking for system updates...
[2026-08-25 22:32:23,678.678 INFO    ] 200
[2026-08-25 22:32:23,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:23,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:23,738.738 INFO    ] No update needed
[2026-08-25 22:32:23,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 22:32:23,783.783 INFO    ] 200
[2026-08-25 22:32:23,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:23,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:32:23,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:23,883.883 INFO    ] No camera update needed
[2026-08-25 22:32:23,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:32:23,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:32:23,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:32:23,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:32:25,942.942 INFO    ] ================================================
[2026-08-25 22:32:25,958.958 INFO    ] Launching Daemon at Tue Aug 25 22:32:25 IST 2026
[2026-08-25 22:32:25,969.969 INFO    ] ================================================
[2026-08-25 22:32:26,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:32:26
[2026-08-25 22:32:27,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:32:27,380.380 INFO    ] Initializing speech engine...
[2026-08-25 22:32:27,387.387 INFO    ] 2026-08-25 22:32:27
[2026-08-25 22:32:27,681.681 INFO    ] 2026-08-25 22:32:27
[2026-08-25 22:32:27,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:32:27,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:32:27,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:32:28,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:32:28,060.060 INFO    ] time= 25/08/2026 22:32:28
[2026-08-25 22:32:28,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:32:28,103.103 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:32:28,184.184 INFO    ] No existing commands found in stream
[2026-08-25 22:32:33,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:32:33,200.200 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 22:32:33,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:32:33,821.821 INFO    ] Checking for system updates...
[2026-08-25 22:32:33,858.858 INFO    ] 200
[2026-08-25 22:32:33,861.861 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:33,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:33,916.916 INFO    ] No update needed
[2026-08-25 22:32:33,918.918 INFO    ] Checking for camera pi updates...
[2026-08-25 22:32:33,956.956 INFO    ] 200
[2026-08-25 22:32:33,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:34,003.003 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:32:34,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:34,068.068 INFO    ] No camera update needed
[2026-08-25 22:32:34,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:32:34,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:32:34,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:32:34,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:32:36,126.126 INFO    ] ================================================
[2026-08-25 22:32:36,142.142 INFO    ] Launching Daemon at Tue Aug 25 22:32:36 IST 2026
[2026-08-25 22:32:36,153.153 INFO    ] ================================================
[2026-08-25 22:32:36,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:32:36
[2026-08-25 22:32:37,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:32:37,855.855 INFO    ] Initializing speech engine...
[2026-08-25 22:32:37,865.865 INFO    ] 2026-08-25 22:32:37
[2026-08-25 22:32:38,132.132 INFO    ] 2026-08-25 22:32:38
[2026-08-25 22:32:38,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:32:38,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:32:38,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:32:38,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:32:38,637.637 INFO    ] time= 25/08/2026 22:32:38
[2026-08-25 22:32:38,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:32:38,706.706 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:32:38,854.854 INFO    ] No existing commands found in stream
[2026-08-25 22:32:43,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:32:43,885.885 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-08-25 22:32:44,724.724 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:32:44,727.727 INFO    ] Checking for system updates...
[2026-08-25 22:32:44,768.768 INFO    ] 200
[2026-08-25 22:32:44,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:44,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:44,829.829 INFO    ] No update needed
[2026-08-25 22:32:44,832.832 INFO    ] Checking for camera pi updates...
[2026-08-25 22:32:44,870.870 INFO    ] 200
[2026-08-25 22:32:44,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:44,920.920 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:32:44,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:44,974.974 INFO    ] No camera update needed
[2026-08-25 22:32:44,977.977 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:32:44,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:32:44,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:32:44,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:32:47,029.029 INFO    ] ================================================
[2026-08-25 22:32:47,044.044 INFO    ] Launching Daemon at Tue Aug 25 22:32:47 IST 2026
[2026-08-25 22:32:47,054.054 INFO    ] ================================================
[2026-08-25 22:32:47,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:32:47
[2026-08-25 22:32:48,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:32:48,539.539 INFO    ] Initializing speech engine...
[2026-08-25 22:32:48,559.559 INFO    ] 2026-08-25 22:32:48
[2026-08-25 22:32:48,832.832 INFO    ] 2026-08-25 22:32:48
[2026-08-25 22:32:48,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:32:49,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:32:49,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:32:49,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:32:49,194.194 INFO    ] time= 25/08/2026 22:32:49
[2026-08-25 22:32:49,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:32:49,223.223 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:32:49,351.351 INFO    ] No existing commands found in stream
[2026-08-25 22:32:54,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:32:54,364.364 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 22:32:57,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:32:57,512.512 INFO    ] Checking for system updates...
[2026-08-25 22:32:57,551.551 INFO    ] 200
[2026-08-25 22:32:57,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:57,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:57,608.608 INFO    ] No update needed
[2026-08-25 22:32:57,611.611 INFO    ] Checking for camera pi updates...
[2026-08-25 22:32:57,645.645 INFO    ] 200
[2026-08-25 22:32:57,648.648 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:32:57,694.694 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:32:57,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:32:57,751.751 INFO    ] No camera update needed
[2026-08-25 22:32:57,753.753 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:32:57,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:32:57,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:32:57,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:32:59,805.805 INFO    ] ================================================
[2026-08-25 22:32:59,821.821 INFO    ] Launching Daemon at Tue Aug 25 22:32:59 IST 2026
[2026-08-25 22:32:59,831.831 INFO    ] ================================================
[2026-08-25 22:33:00,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:33:00
[2026-08-25 22:33:00,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:33:01,231.231 INFO    ] Initializing speech engine...
[2026-08-25 22:33:01,253.253 INFO    ] 2026-08-25 22:33:01
[2026-08-25 22:33:01,508.508 INFO    ] 2026-08-25 22:33:01
[2026-08-25 22:33:01,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:33:01,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:33:01,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:33:01,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:33:01,979.979 INFO    ] time= 25/08/2026 22:33:01
[2026-08-25 22:33:01,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:33:01,987.987 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:33:02,052.052 INFO    ] No existing commands found in stream
[2026-08-25 22:33:07,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:33:07,066.066 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 22:33:11,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:33:11,323.323 INFO    ] Checking for system updates...
[2026-08-25 22:33:11,360.360 INFO    ] 200
[2026-08-25 22:33:11,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:11,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:33:11,429.429 INFO    ] No update needed
[2026-08-25 22:33:11,432.432 INFO    ] Checking for camera pi updates...
[2026-08-25 22:33:11,470.470 INFO    ] 200
[2026-08-25 22:33:11,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:11,516.516 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:33:11,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:33:11,573.573 INFO    ] No camera update needed
[2026-08-25 22:33:11,576.576 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:33:11,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:33:11,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:33:11,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:33:13,632.632 INFO    ] ================================================
[2026-08-25 22:33:13,647.647 INFO    ] Launching Daemon at Tue Aug 25 22:33:13 IST 2026
[2026-08-25 22:33:13,659.659 INFO    ] ================================================
[2026-08-25 22:33:14,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:33:14
[2026-08-25 22:33:15,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:33:15,315.315 INFO    ] Initializing speech engine...
[2026-08-25 22:33:15,322.322 INFO    ] 2026-08-25 22:33:15
[2026-08-25 22:33:15,600.600 INFO    ] 2026-08-25 22:33:15
[2026-08-25 22:33:15,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:33:16,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:33:16,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:33:16,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:33:16,554.554 INFO    ] time= 25/08/2026 22:33:16
[2026-08-25 22:33:16,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:33:16,626.626 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:33:16,787.787 INFO    ] No existing commands found in stream
[2026-08-25 22:33:21,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:33:21,810.810 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 22:33:24,707.707 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:33:24,710.710 INFO    ] Checking for system updates...
[2026-08-25 22:33:24,752.752 INFO    ] 200
[2026-08-25 22:33:24,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:24,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:33:24,832.832 INFO    ] No update needed
[2026-08-25 22:33:24,836.836 INFO    ] Checking for camera pi updates...
[2026-08-25 22:33:24,879.879 INFO    ] 200
[2026-08-25 22:33:24,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:24,932.932 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:33:25,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:33:25,082.082 INFO    ] No camera update needed
[2026-08-25 22:33:25,085.085 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:33:25,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:33:25,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:33:25,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:33:27,143.143 INFO    ] ================================================
[2026-08-25 22:33:27,159.159 INFO    ] Launching Daemon at Tue Aug 25 22:33:27 IST 2026
[2026-08-25 22:33:27,170.170 INFO    ] ================================================
[2026-08-25 22:33:27,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:33:27
[2026-08-25 22:33:28,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:33:28,666.666 INFO    ] Initializing speech engine...
[2026-08-25 22:33:28,675.675 INFO    ] 2026-08-25 22:33:28
[2026-08-25 22:33:28,937.937 INFO    ] 2026-08-25 22:33:28
[2026-08-25 22:33:28,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:33:29,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:33:29,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:33:29,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:33:29,429.429 INFO    ] time= 25/08/2026 22:33:29
[2026-08-25 22:33:29,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:33:29,516.516 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:33:29,665.665 INFO    ] No existing commands found in stream
[2026-08-25 22:33:34,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:33:34,683.683 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 22:33:38,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:33:38,587.587 INFO    ] Checking for system updates...
[2026-08-25 22:33:38,623.623 INFO    ] 200
[2026-08-25 22:33:38,626.626 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:38,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:33:38,684.684 INFO    ] No update needed
[2026-08-25 22:33:38,687.687 INFO    ] Checking for camera pi updates...
[2026-08-25 22:33:38,722.722 INFO    ] 200
[2026-08-25 22:33:38,725.725 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:38,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:33:38,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:33:38,820.820 INFO    ] No camera update needed
[2026-08-25 22:33:38,823.823 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:33:38,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:33:38,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:33:38,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:33:40,878.878 INFO    ] ================================================
[2026-08-25 22:33:40,894.894 INFO    ] Launching Daemon at Tue Aug 25 22:33:40 IST 2026
[2026-08-25 22:33:40,905.905 INFO    ] ================================================
[2026-08-25 22:33:41,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:33:41
[2026-08-25 22:33:42,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:33:42,355.355 INFO    ] Initializing speech engine...
[2026-08-25 22:33:42,364.364 INFO    ] 2026-08-25 22:33:42
[2026-08-25 22:33:42,613.613 INFO    ] 2026-08-25 22:33:42
[2026-08-25 22:33:42,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:33:42,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:33:42,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:33:43,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:33:43,097.097 INFO    ] time= 25/08/2026 22:33:43
[2026-08-25 22:33:43,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:33:43,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:33:43,320.320 INFO    ] No existing commands found in stream
[2026-08-25 22:33:48,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:33:48,339.339 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-08-25 22:33:50,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:33:50,937.937 INFO    ] Checking for system updates...
[2026-08-25 22:33:50,980.980 INFO    ] 200
[2026-08-25 22:33:50,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:51,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:33:51,043.043 INFO    ] No update needed
[2026-08-25 22:33:51,045.045 INFO    ] Checking for camera pi updates...
[2026-08-25 22:33:51,081.081 INFO    ] 200
[2026-08-25 22:33:51,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:33:51,141.141 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:33:51,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:33:51,296.296 INFO    ] No camera update needed
[2026-08-25 22:33:51,299.299 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:33:51,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:33:51,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:33:51,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:33:53,357.357 INFO    ] ================================================
[2026-08-25 22:33:53,372.372 INFO    ] Launching Daemon at Tue Aug 25 22:33:53 IST 2026
[2026-08-25 22:33:53,384.384 INFO    ] ================================================
[2026-08-25 22:33:54,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:33:54
[2026-08-25 22:33:54,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:33:54,954.954 INFO    ] Initializing speech engine...
[2026-08-25 22:33:54,961.961 INFO    ] 2026-08-25 22:33:54
[2026-08-25 22:33:55,259.259 INFO    ] 2026-08-25 22:33:55
[2026-08-25 22:33:55,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:33:55,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:33:55,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:33:55,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:33:55,670.670 INFO    ] time= 25/08/2026 22:33:55
[2026-08-25 22:33:55,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:33:55,683.683 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:33:55,762.762 INFO    ] No existing commands found in stream
[2026-08-25 22:34:00,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:34:00,778.778 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 22:34:02,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:34:02,153.153 INFO    ] Checking for system updates...
[2026-08-25 22:34:02,193.193 INFO    ] 200
[2026-08-25 22:34:02,196.196 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:02,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:34:02,262.262 INFO    ] No update needed
[2026-08-25 22:34:02,265.265 INFO    ] Checking for camera pi updates...
[2026-08-25 22:34:02,307.307 INFO    ] 200
[2026-08-25 22:34:02,310.310 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:02,369.369 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:34:02,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:34:02,447.447 INFO    ] No camera update needed
[2026-08-25 22:34:02,452.452 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:34:02,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:34:02,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:34:02,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:34:04,526.526 INFO    ] ================================================
[2026-08-25 22:34:04,542.542 INFO    ] Launching Daemon at Tue Aug 25 22:34:04 IST 2026
[2026-08-25 22:34:04,553.553 INFO    ] ================================================
[2026-08-25 22:34:05,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:34:05
[2026-08-25 22:34:05,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:34:05,987.987 INFO    ] Initializing speech engine...
[2026-08-25 22:34:06,001.001 INFO    ] 2026-08-25 22:34:05
[2026-08-25 22:34:06,268.268 INFO    ] 2026-08-25 22:34:06
[2026-08-25 22:34:06,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:34:06,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:34:06,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:34:06,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:34:06,734.734 INFO    ] time= 25/08/2026 22:34:06
[2026-08-25 22:34:06,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:34:06,832.832 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:34:06,916.916 INFO    ] No existing commands found in stream
[2026-08-25 22:34:11,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:34:11,931.931 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 22:34:14,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:34:14,562.562 INFO    ] Checking for system updates...
[2026-08-25 22:34:14,600.600 INFO    ] 200
[2026-08-25 22:34:14,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:14,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:34:14,659.659 INFO    ] No update needed
[2026-08-25 22:34:14,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 22:34:14,695.695 INFO    ] 200
[2026-08-25 22:34:14,698.698 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:14,742.742 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:34:14,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:34:14,790.790 INFO    ] No camera update needed
[2026-08-25 22:34:14,792.792 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:34:14,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:34:14,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:34:14,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:34:16,846.846 INFO    ] ================================================
[2026-08-25 22:34:16,862.862 INFO    ] Launching Daemon at Tue Aug 25 22:34:16 IST 2026
[2026-08-25 22:34:16,873.873 INFO    ] ================================================
[2026-08-25 22:34:17,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:34:17
[2026-08-25 22:34:18,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:34:18,327.327 INFO    ] Initializing speech engine...
[2026-08-25 22:34:18,336.336 INFO    ] 2026-08-25 22:34:18
[2026-08-25 22:34:18,598.598 INFO    ] 2026-08-25 22:34:18
[2026-08-25 22:34:18,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:34:18,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:34:18,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:34:19,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:34:19,060.060 INFO    ] time= 25/08/2026 22:34:19
[2026-08-25 22:34:19,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:34:19,152.152 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:34:19,276.276 INFO    ] No existing commands found in stream
[2026-08-25 22:34:24,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:34:24,311.311 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 22:34:27,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:34:27,425.425 INFO    ] Checking for system updates...
[2026-08-25 22:34:27,464.464 INFO    ] 200
[2026-08-25 22:34:27,466.466 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:27,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:34:27,533.533 INFO    ] No update needed
[2026-08-25 22:34:27,536.536 INFO    ] Checking for camera pi updates...
[2026-08-25 22:34:27,571.571 INFO    ] 200
[2026-08-25 22:34:27,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:27,615.615 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:34:27,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:34:27,665.665 INFO    ] No camera update needed
[2026-08-25 22:34:27,668.668 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:34:27,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:34:27,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:34:27,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:34:29,722.722 INFO    ] ================================================
[2026-08-25 22:34:29,737.737 INFO    ] Launching Daemon at Tue Aug 25 22:34:29 IST 2026
[2026-08-25 22:34:29,748.748 INFO    ] ================================================
[2026-08-25 22:34:30,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:34:30
[2026-08-25 22:34:30,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:34:31,171.171 INFO    ] Initializing speech engine...
[2026-08-25 22:34:31,182.182 INFO    ] 2026-08-25 22:34:31
[2026-08-25 22:34:31,433.433 INFO    ] 2026-08-25 22:34:31
[2026-08-25 22:34:31,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:34:31,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:34:31,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:34:31,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:34:31,832.832 INFO    ] time= 25/08/2026 22:34:31
[2026-08-25 22:34:31,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:34:31,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:34:31,980.980 INFO    ] No existing commands found in stream
[2026-08-25 22:34:36,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:34:36,992.992 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 22:34:38,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:34:38,453.453 INFO    ] Checking for system updates...
[2026-08-25 22:34:38,489.489 INFO    ] 200
[2026-08-25 22:34:38,492.492 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:38,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:34:38,546.546 INFO    ] No update needed
[2026-08-25 22:34:38,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 22:34:38,585.585 INFO    ] 200
[2026-08-25 22:34:38,587.587 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:38,631.631 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:34:38,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:34:38,683.683 INFO    ] No camera update needed
[2026-08-25 22:34:38,686.686 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:34:38,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:34:38,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:34:38,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:34:40,738.738 INFO    ] ================================================
[2026-08-25 22:34:40,753.753 INFO    ] Launching Daemon at Tue Aug 25 22:34:40 IST 2026
[2026-08-25 22:34:40,763.763 INFO    ] ================================================
[2026-08-25 22:34:41,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:34:41
[2026-08-25 22:34:41,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:34:42,229.229 INFO    ] Initializing speech engine...
[2026-08-25 22:34:42,239.239 INFO    ] 2026-08-25 22:34:42
[2026-08-25 22:34:42,501.501 INFO    ] 2026-08-25 22:34:42
[2026-08-25 22:34:42,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:34:42,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:34:42,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:34:42,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:34:42,903.903 INFO    ] time= 25/08/2026 22:34:42
[2026-08-25 22:34:42,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:34:42,962.962 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:34:43,090.090 INFO    ] No existing commands found in stream
[2026-08-25 22:34:48,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:34:48,124.124 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 22:34:51,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:34:51,312.312 INFO    ] Checking for system updates...
[2026-08-25 22:34:51,347.347 INFO    ] 200
[2026-08-25 22:34:51,349.349 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:51,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:34:51,415.415 INFO    ] No update needed
[2026-08-25 22:34:51,418.418 INFO    ] Checking for camera pi updates...
[2026-08-25 22:34:51,455.455 INFO    ] 200
[2026-08-25 22:34:51,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:34:51,505.505 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:34:51,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:34:51,559.559 INFO    ] No camera update needed
[2026-08-25 22:34:51,561.561 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:34:51,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:34:51,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:34:51,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:34:53,613.613 INFO    ] ================================================
[2026-08-25 22:34:53,628.628 INFO    ] Launching Daemon at Tue Aug 25 22:34:53 IST 2026
[2026-08-25 22:34:53,642.642 INFO    ] ================================================
[2026-08-25 22:34:54,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:34:54
[2026-08-25 22:34:54,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:34:55,049.049 INFO    ] Initializing speech engine...
[2026-08-25 22:34:55,064.064 INFO    ] 2026-08-25 22:34:55
[2026-08-25 22:34:55,339.339 INFO    ] 2026-08-25 22:34:55
[2026-08-25 22:34:55,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:34:55,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:34:55,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:34:55,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:34:55,743.743 INFO    ] time= 25/08/2026 22:34:55
[2026-08-25 22:34:55,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:34:55,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:34:55,873.873 INFO    ] No existing commands found in stream
[2026-08-25 22:35:00,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:35:00,906.906 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-08-25 22:35:04,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:35:04,015.015 INFO    ] Checking for system updates...
[2026-08-25 22:35:04,051.051 INFO    ] 200
[2026-08-25 22:35:04,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:04,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:35:04,110.110 INFO    ] No update needed
[2026-08-25 22:35:04,113.113 INFO    ] Checking for camera pi updates...
[2026-08-25 22:35:04,149.149 INFO    ] 200
[2026-08-25 22:35:04,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:04,196.196 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:35:04,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:35:04,247.247 INFO    ] No camera update needed
[2026-08-25 22:35:04,250.250 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:35:04,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:35:04,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:35:04,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:35:06,304.304 INFO    ] ================================================
[2026-08-25 22:35:06,319.319 INFO    ] Launching Daemon at Tue Aug 25 22:35:06 IST 2026
[2026-08-25 22:35:06,330.330 INFO    ] ================================================
[2026-08-25 22:35:06,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:35:06
[2026-08-25 22:35:07,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:35:07,793.793 INFO    ] Initializing speech engine...
[2026-08-25 22:35:07,803.803 INFO    ] 2026-08-25 22:35:07
[2026-08-25 22:35:08,047.047 INFO    ] 2026-08-25 22:35:08
[2026-08-25 22:35:08,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:35:08,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:35:08,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:35:08,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:35:08,528.528 INFO    ] time= 25/08/2026 22:35:08
[2026-08-25 22:35:08,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:35:08,618.618 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:35:08,762.762 INFO    ] No existing commands found in stream
[2026-08-25 22:35:13,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:35:13,778.778 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 22:35:15,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:35:15,732.732 INFO    ] Checking for system updates...
[2026-08-25 22:35:15,769.769 INFO    ] 200
[2026-08-25 22:35:15,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:15,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:35:15,827.827 INFO    ] No update needed
[2026-08-25 22:35:15,829.829 INFO    ] Checking for camera pi updates...
[2026-08-25 22:35:15,865.865 INFO    ] 200
[2026-08-25 22:35:15,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:15,907.907 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:35:15,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:35:15,964.964 INFO    ] No camera update needed
[2026-08-25 22:35:15,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:35:15,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:35:15,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:35:15,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:35:18,020.020 INFO    ] ================================================
[2026-08-25 22:35:18,036.036 INFO    ] Launching Daemon at Tue Aug 25 22:35:18 IST 2026
[2026-08-25 22:35:18,047.047 INFO    ] ================================================
[2026-08-25 22:35:18,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:35:18
[2026-08-25 22:35:19,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:35:19,551.551 INFO    ] Initializing speech engine...
[2026-08-25 22:35:19,560.560 INFO    ] 2026-08-25 22:35:19
[2026-08-25 22:35:19,821.821 INFO    ] 2026-08-25 22:35:19
[2026-08-25 22:35:19,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:35:20,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:35:20,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:35:20,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:35:20,234.234 INFO    ] time= 25/08/2026 22:35:20
[2026-08-25 22:35:20,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:35:20,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:35:20,453.453 INFO    ] No existing commands found in stream
[2026-08-25 22:35:25,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:35:25,467.467 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 22:35:27,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:35:27,664.664 INFO    ] Checking for system updates...
[2026-08-25 22:35:27,703.703 INFO    ] 200
[2026-08-25 22:35:27,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:27,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:35:27,759.759 INFO    ] No update needed
[2026-08-25 22:35:27,761.761 INFO    ] Checking for camera pi updates...
[2026-08-25 22:35:27,799.799 INFO    ] 200
[2026-08-25 22:35:27,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:27,841.841 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:35:27,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:35:27,994.994 INFO    ] No camera update needed
[2026-08-25 22:35:27,997.997 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:35:27,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:35:28,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:35:28,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:35:30,048.048 INFO    ] ================================================
[2026-08-25 22:35:30,063.063 INFO    ] Launching Daemon at Tue Aug 25 22:35:30 IST 2026
[2026-08-25 22:35:30,074.074 INFO    ] ================================================
[2026-08-25 22:35:30,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:35:30
[2026-08-25 22:35:31,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:35:31,518.518 INFO    ] Initializing speech engine...
[2026-08-25 22:35:31,527.527 INFO    ] 2026-08-25 22:35:31
[2026-08-25 22:35:31,801.801 INFO    ] 2026-08-25 22:35:31
[2026-08-25 22:35:31,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:35:32,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:35:32,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:35:32,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:35:32,295.295 INFO    ] time= 25/08/2026 22:35:32
[2026-08-25 22:35:32,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:35:32,377.377 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:35:32,512.512 INFO    ] No existing commands found in stream
[2026-08-25 22:35:37,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:35:37,541.541 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-08-25 22:35:38,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:35:38,477.477 INFO    ] Checking for system updates...
[2026-08-25 22:35:38,514.514 INFO    ] 200
[2026-08-25 22:35:38,517.517 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:38,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:35:38,571.571 INFO    ] No update needed
[2026-08-25 22:35:38,574.574 INFO    ] Checking for camera pi updates...
[2026-08-25 22:35:38,607.607 INFO    ] 200
[2026-08-25 22:35:38,609.609 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:38,650.650 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:35:38,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:35:38,702.702 INFO    ] No camera update needed
[2026-08-25 22:35:38,705.705 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:35:38,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:35:38,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:35:38,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:35:40,757.757 INFO    ] ================================================
[2026-08-25 22:35:40,773.773 INFO    ] Launching Daemon at Tue Aug 25 22:35:40 IST 2026
[2026-08-25 22:35:40,784.784 INFO    ] ================================================
[2026-08-25 22:35:41,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:35:41
[2026-08-25 22:35:42,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:35:42,334.334 INFO    ] Initializing speech engine...
[2026-08-25 22:35:42,343.343 INFO    ] 2026-08-25 22:35:42
[2026-08-25 22:35:42,606.606 INFO    ] 2026-08-25 22:35:42
[2026-08-25 22:35:42,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:35:42,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:35:42,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:35:43,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:35:43,065.065 INFO    ] time= 25/08/2026 22:35:43
[2026-08-25 22:35:43,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:35:43,156.156 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:35:43,288.288 INFO    ] No existing commands found in stream
[2026-08-25 22:35:48,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:35:48,313.313 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 22:35:50,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:35:50,420.420 INFO    ] Checking for system updates...
[2026-08-25 22:35:50,456.456 INFO    ] 200
[2026-08-25 22:35:50,458.458 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:50,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:35:50,520.520 INFO    ] No update needed
[2026-08-25 22:35:50,522.522 INFO    ] Checking for camera pi updates...
[2026-08-25 22:35:50,556.556 INFO    ] 200
[2026-08-25 22:35:50,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:35:50,601.601 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:35:50,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:35:50,656.656 INFO    ] No camera update needed
[2026-08-25 22:35:50,658.658 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:35:50,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:35:50,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:35:50,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:35:52,712.712 INFO    ] ================================================
[2026-08-25 22:35:52,728.728 INFO    ] Launching Daemon at Tue Aug 25 22:35:52 IST 2026
[2026-08-25 22:35:52,738.738 INFO    ] ================================================
[2026-08-25 22:35:53,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:35:53
[2026-08-25 22:35:53,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:35:54,136.136 INFO    ] Initializing speech engine...
[2026-08-25 22:35:54,145.145 INFO    ] 2026-08-25 22:35:54
[2026-08-25 22:35:54,435.435 INFO    ] 2026-08-25 22:35:54
[2026-08-25 22:35:54,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:35:54,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:35:54,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:35:54,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:35:54,829.829 INFO    ] time= 25/08/2026 22:35:54
[2026-08-25 22:35:54,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:35:54,859.859 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:35:54,939.939 INFO    ] No existing commands found in stream
[2026-08-25 22:35:59,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:35:59,972.972 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-08-25 22:36:04,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:36:04,227.227 INFO    ] Checking for system updates...
[2026-08-25 22:36:04,265.265 INFO    ] 200
[2026-08-25 22:36:04,268.268 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:04,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:36:04,322.322 INFO    ] No update needed
[2026-08-25 22:36:04,324.324 INFO    ] Checking for camera pi updates...
[2026-08-25 22:36:04,359.359 INFO    ] 200
[2026-08-25 22:36:04,361.361 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:04,401.401 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:36:04,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:36:04,448.448 INFO    ] No camera update needed
[2026-08-25 22:36:04,450.450 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:36:04,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:36:04,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:36:04,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:36:06,503.503 INFO    ] ================================================
[2026-08-25 22:36:06,518.518 INFO    ] Launching Daemon at Tue Aug 25 22:36:06 IST 2026
[2026-08-25 22:36:06,529.529 INFO    ] ================================================
[2026-08-25 22:36:07,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:36:07
[2026-08-25 22:36:07,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:36:07,995.995 INFO    ] Initializing speech engine...
[2026-08-25 22:36:08,014.014 INFO    ] 2026-08-25 22:36:08
[2026-08-25 22:36:08,265.265 INFO    ] 2026-08-25 22:36:08
[2026-08-25 22:36:08,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:36:08,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:36:08,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:36:08,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:36:08,639.639 INFO    ] time= 25/08/2026 22:36:08
[2026-08-25 22:36:08,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:36:08,698.698 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:36:08,842.842 INFO    ] No existing commands found in stream
[2026-08-25 22:36:13,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:36:13,855.855 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-08-25 22:36:17,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:36:17,888.888 INFO    ] Checking for system updates...
[2026-08-25 22:36:17,925.925 INFO    ] 200
[2026-08-25 22:36:17,928.928 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:17,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:36:17,983.983 INFO    ] No update needed
[2026-08-25 22:36:17,985.985 INFO    ] Checking for camera pi updates...
[2026-08-25 22:36:18,019.019 INFO    ] 200
[2026-08-25 22:36:18,021.021 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:18,065.065 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:36:18,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:36:18,119.119 INFO    ] No camera update needed
[2026-08-25 22:36:18,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:36:18,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:36:18,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:36:18,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:36:20,175.175 INFO    ] ================================================
[2026-08-25 22:36:20,190.190 INFO    ] Launching Daemon at Tue Aug 25 22:36:20 IST 2026
[2026-08-25 22:36:20,201.201 INFO    ] ================================================
[2026-08-25 22:36:20,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:36:20
[2026-08-25 22:36:21,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:36:21,613.613 INFO    ] Initializing speech engine...
[2026-08-25 22:36:21,628.628 INFO    ] 2026-08-25 22:36:21
[2026-08-25 22:36:21,911.911 INFO    ] 2026-08-25 22:36:21
[2026-08-25 22:36:21,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:36:22,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:36:22,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:36:22,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:36:22,425.425 INFO    ] time= 25/08/2026 22:36:22
[2026-08-25 22:36:22,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:36:22,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:36:22,656.656 INFO    ] No existing commands found in stream
[2026-08-25 22:36:27,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:36:27,680.680 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 22:36:30,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:36:30,227.227 INFO    ] Checking for system updates...
[2026-08-25 22:36:30,263.263 INFO    ] 200
[2026-08-25 22:36:30,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:30,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:36:30,326.326 INFO    ] No update needed
[2026-08-25 22:36:30,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 22:36:30,362.362 INFO    ] 200
[2026-08-25 22:36:30,364.364 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:30,405.405 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:36:30,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:36:30,465.465 INFO    ] No camera update needed
[2026-08-25 22:36:30,468.468 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:36:30,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:36:30,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:36:30,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:36:32,523.523 INFO    ] ================================================
[2026-08-25 22:36:32,540.540 INFO    ] Launching Daemon at Tue Aug 25 22:36:32 IST 2026
[2026-08-25 22:36:32,552.552 INFO    ] ================================================
[2026-08-25 22:36:33,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:36:33
[2026-08-25 22:36:33,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:36:34,028.028 INFO    ] Initializing speech engine...
[2026-08-25 22:36:34,038.038 INFO    ] 2026-08-25 22:36:34
[2026-08-25 22:36:34,286.286 INFO    ] 2026-08-25 22:36:34
[2026-08-25 22:36:34,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:36:34,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:36:34,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:36:34,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:36:34,660.660 INFO    ] time= 25/08/2026 22:36:34
[2026-08-25 22:36:34,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:36:34,673.673 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:36:34,821.821 INFO    ] No existing commands found in stream
[2026-08-25 22:36:39,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:36:39,854.854 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-08-25 22:36:43,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:36:43,273.273 INFO    ] Checking for system updates...
[2026-08-25 22:36:43,310.310 INFO    ] 200
[2026-08-25 22:36:43,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:43,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:36:43,373.373 INFO    ] No update needed
[2026-08-25 22:36:43,376.376 INFO    ] Checking for camera pi updates...
[2026-08-25 22:36:43,410.410 INFO    ] 200
[2026-08-25 22:36:43,413.413 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:43,454.454 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:36:43,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:36:43,516.516 INFO    ] No camera update needed
[2026-08-25 22:36:43,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:36:43,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:36:43,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:36:43,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:36:45,572.572 INFO    ] ================================================
[2026-08-25 22:36:45,587.587 INFO    ] Launching Daemon at Tue Aug 25 22:36:45 IST 2026
[2026-08-25 22:36:45,598.598 INFO    ] ================================================
[2026-08-25 22:36:46,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:36:46
[2026-08-25 22:36:46,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:36:47,040.040 INFO    ] Initializing speech engine...
[2026-08-25 22:36:47,049.049 INFO    ] 2026-08-25 22:36:47
[2026-08-25 22:36:47,311.311 INFO    ] 2026-08-25 22:36:47
[2026-08-25 22:36:47,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:36:47,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:36:47,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:36:47,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:36:47,806.806 INFO    ] time= 25/08/2026 22:36:47
[2026-08-25 22:36:47,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:36:47,864.864 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:36:48,010.010 INFO    ] No existing commands found in stream
[2026-08-25 22:36:53,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:36:53,027.027 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-08-25 22:36:56,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:36:56,314.314 INFO    ] Checking for system updates...
[2026-08-25 22:36:56,351.351 INFO    ] 200
[2026-08-25 22:36:56,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:56,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:36:56,411.411 INFO    ] No update needed
[2026-08-25 22:36:56,414.414 INFO    ] Checking for camera pi updates...
[2026-08-25 22:36:56,449.449 INFO    ] 200
[2026-08-25 22:36:56,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:36:56,493.493 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:36:56,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:36:56,542.542 INFO    ] No camera update needed
[2026-08-25 22:36:56,545.545 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:36:56,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:36:56,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:36:56,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:36:58,599.599 INFO    ] ================================================
[2026-08-25 22:36:58,613.613 INFO    ] Launching Daemon at Tue Aug 25 22:36:58 IST 2026
[2026-08-25 22:36:58,625.625 INFO    ] ================================================
[2026-08-25 22:36:59,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:36:59
[2026-08-25 22:36:59,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:37:00,114.114 INFO    ] Initializing speech engine...
[2026-08-25 22:37:00,123.123 INFO    ] 2026-08-25 22:37:00
[2026-08-25 22:37:00,369.369 INFO    ] 2026-08-25 22:37:00
[2026-08-25 22:37:00,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:37:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:37:00,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:37:00,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:37:00,864.864 INFO    ] time= 25/08/2026 22:37:00
[2026-08-25 22:37:00,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:37:00,933.933 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:37:01,057.057 INFO    ] No existing commands found in stream
[2026-08-25 22:37:06,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:37:06,087.087 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 22:37:07,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:37:07,232.232 INFO    ] Checking for system updates...
[2026-08-25 22:37:07,268.268 INFO    ] 200
[2026-08-25 22:37:07,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:07,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:37:07,327.327 INFO    ] No update needed
[2026-08-25 22:37:07,329.329 INFO    ] Checking for camera pi updates...
[2026-08-25 22:37:07,365.365 INFO    ] 200
[2026-08-25 22:37:07,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:07,411.411 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:37:07,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:37:07,463.463 INFO    ] No camera update needed
[2026-08-25 22:37:07,465.465 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:37:07,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:37:07,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:37:07,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:37:09,518.518 INFO    ] ================================================
[2026-08-25 22:37:09,534.534 INFO    ] Launching Daemon at Tue Aug 25 22:37:09 IST 2026
[2026-08-25 22:37:09,546.546 INFO    ] ================================================
[2026-08-25 22:37:10,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:37:10
[2026-08-25 22:37:10,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:37:10,952.952 INFO    ] Initializing speech engine...
[2026-08-25 22:37:10,958.958 INFO    ] 2026-08-25 22:37:10
[2026-08-25 22:37:11,244.244 INFO    ] 2026-08-25 22:37:11
[2026-08-25 22:37:11,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:37:11,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:37:11,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:37:11,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:37:11,614.614 INFO    ] time= 25/08/2026 22:37:11
[2026-08-25 22:37:11,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:37:11,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:37:11,732.732 INFO    ] No existing commands found in stream
[2026-08-25 22:37:16,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:37:16,748.748 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 22:37:18,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:37:18,979.979 INFO    ] Checking for system updates...
[2026-08-25 22:37:19,015.015 INFO    ] 200
[2026-08-25 22:37:19,018.018 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:19,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:37:19,078.078 INFO    ] No update needed
[2026-08-25 22:37:19,081.081 INFO    ] Checking for camera pi updates...
[2026-08-25 22:37:19,114.114 INFO    ] 200
[2026-08-25 22:37:19,117.117 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:19,157.157 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:37:19,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:37:19,207.207 INFO    ] No camera update needed
[2026-08-25 22:37:19,209.209 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:37:19,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:37:19,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:37:19,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:37:21,261.261 INFO    ] ================================================
[2026-08-25 22:37:21,276.276 INFO    ] Launching Daemon at Tue Aug 25 22:37:21 IST 2026
[2026-08-25 22:37:21,287.287 INFO    ] ================================================
[2026-08-25 22:37:21,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:37:21
[2026-08-25 22:37:22,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:37:22,725.725 INFO    ] Initializing speech engine...
[2026-08-25 22:37:22,732.732 INFO    ] 2026-08-25 22:37:22
[2026-08-25 22:37:22,993.993 INFO    ] 2026-08-25 22:37:22
[2026-08-25 22:37:23,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:37:23,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:37:23,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:37:23,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:37:23,476.476 INFO    ] time= 25/08/2026 22:37:23
[2026-08-25 22:37:23,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:37:23,542.542 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:37:23,692.692 INFO    ] No existing commands found in stream
[2026-08-25 22:37:28,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:37:28,717.717 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 22:37:30,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:37:30,922.922 INFO    ] Checking for system updates...
[2026-08-25 22:37:30,958.958 INFO    ] 200
[2026-08-25 22:37:30,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:31,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:37:31,021.021 INFO    ] No update needed
[2026-08-25 22:37:31,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 22:37:31,057.057 INFO    ] 200
[2026-08-25 22:37:31,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:31,101.101 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:37:31,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:37:31,247.247 INFO    ] No camera update needed
[2026-08-25 22:37:31,249.249 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:37:31,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:37:31,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:37:31,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:37:33,303.303 INFO    ] ================================================
[2026-08-25 22:37:33,318.318 INFO    ] Launching Daemon at Tue Aug 25 22:37:33 IST 2026
[2026-08-25 22:37:33,329.329 INFO    ] ================================================
[2026-08-25 22:37:33,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:37:33
[2026-08-25 22:37:34,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:37:34,786.786 INFO    ] Initializing speech engine...
[2026-08-25 22:37:34,799.799 INFO    ] 2026-08-25 22:37:34
[2026-08-25 22:37:35,069.069 INFO    ] 2026-08-25 22:37:35
[2026-08-25 22:37:35,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:37:35,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:37:35,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:37:35,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:37:35,539.539 INFO    ] time= 25/08/2026 22:37:35
[2026-08-25 22:37:35,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:37:35,627.627 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:37:35,748.748 INFO    ] No existing commands found in stream
[2026-08-25 22:37:40,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:37:40,787.787 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 22:37:42,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:37:42,074.074 INFO    ] Checking for system updates...
[2026-08-25 22:37:42,111.111 INFO    ] 200
[2026-08-25 22:37:42,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:42,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:37:42,169.169 INFO    ] No update needed
[2026-08-25 22:37:42,171.171 INFO    ] Checking for camera pi updates...
[2026-08-25 22:37:42,205.205 INFO    ] 200
[2026-08-25 22:37:42,207.207 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:42,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:37:42,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:37:42,300.300 INFO    ] No camera update needed
[2026-08-25 22:37:42,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:37:42,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:37:42,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:37:42,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:37:44,354.354 INFO    ] ================================================
[2026-08-25 22:37:44,369.369 INFO    ] Launching Daemon at Tue Aug 25 22:37:44 IST 2026
[2026-08-25 22:37:44,379.379 INFO    ] ================================================
[2026-08-25 22:37:44,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:37:44
[2026-08-25 22:37:45,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:37:45,850.850 INFO    ] Initializing speech engine...
[2026-08-25 22:37:45,865.865 INFO    ] 2026-08-25 22:37:45
[2026-08-25 22:37:46,131.131 INFO    ] 2026-08-25 22:37:46
[2026-08-25 22:37:46,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:37:46,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:37:46,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:37:46,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:37:46,516.516 INFO    ] time= 25/08/2026 22:37:46
[2026-08-25 22:37:46,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:37:46,545.545 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:37:46,637.637 INFO    ] No existing commands found in stream
[2026-08-25 22:37:51,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:37:51,676.676 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 22:37:54,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:37:54,346.346 INFO    ] Checking for system updates...
[2026-08-25 22:37:54,382.382 INFO    ] 200
[2026-08-25 22:37:54,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:54,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:37:54,442.442 INFO    ] No update needed
[2026-08-25 22:37:54,445.445 INFO    ] Checking for camera pi updates...
[2026-08-25 22:37:54,482.482 INFO    ] 200
[2026-08-25 22:37:54,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:37:54,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:37:54,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:37:54,592.592 INFO    ] No camera update needed
[2026-08-25 22:37:54,594.594 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:37:54,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:37:54,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:37:54,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:37:56,648.648 INFO    ] ================================================
[2026-08-25 22:37:56,663.663 INFO    ] Launching Daemon at Tue Aug 25 22:37:56 IST 2026
[2026-08-25 22:37:56,674.674 INFO    ] ================================================
[2026-08-25 22:37:57,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:37:57
[2026-08-25 22:37:57,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:37:58,092.092 INFO    ] Initializing speech engine...
[2026-08-25 22:37:58,101.101 INFO    ] 2026-08-25 22:37:58
[2026-08-25 22:37:58,349.349 INFO    ] 2026-08-25 22:37:58
[2026-08-25 22:37:58,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:37:58,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:37:58,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:37:58,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:37:58,725.725 INFO    ] time= 25/08/2026 22:37:58
[2026-08-25 22:37:58,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:37:58,783.783 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:37:58,908.908 INFO    ] No existing commands found in stream
[2026-08-25 22:38:03,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:38:03,940.940 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-08-25 22:38:05,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:38:05,015.015 INFO    ] Checking for system updates...
[2026-08-25 22:38:05,050.050 INFO    ] 200
[2026-08-25 22:38:05,053.053 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:05,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:05,113.113 INFO    ] No update needed
[2026-08-25 22:38:05,115.115 INFO    ] Checking for camera pi updates...
[2026-08-25 22:38:05,151.151 INFO    ] 200
[2026-08-25 22:38:05,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:05,198.198 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:38:05,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:05,263.263 INFO    ] No camera update needed
[2026-08-25 22:38:05,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:38:05,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:38:05,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:38:05,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:38:07,319.319 INFO    ] ================================================
[2026-08-25 22:38:07,333.333 INFO    ] Launching Daemon at Tue Aug 25 22:38:07 IST 2026
[2026-08-25 22:38:07,344.344 INFO    ] ================================================
[2026-08-25 22:38:07,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:38:07
[2026-08-25 22:38:08,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:38:08,833.833 INFO    ] Initializing speech engine...
[2026-08-25 22:38:08,842.842 INFO    ] 2026-08-25 22:38:08
[2026-08-25 22:38:09,094.094 INFO    ] 2026-08-25 22:38:09
[2026-08-25 22:38:09,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:38:09,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:38:09,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:38:09,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:38:09,562.562 INFO    ] time= 25/08/2026 22:38:09
[2026-08-25 22:38:09,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:38:09,647.647 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:38:09,787.787 INFO    ] No existing commands found in stream
[2026-08-25 22:38:14,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:38:14,810.810 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 22:38:19,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:38:19,238.238 INFO    ] Checking for system updates...
[2026-08-25 22:38:19,277.277 INFO    ] 200
[2026-08-25 22:38:19,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:19,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:19,333.333 INFO    ] No update needed
[2026-08-25 22:38:19,336.336 INFO    ] Checking for camera pi updates...
[2026-08-25 22:38:19,374.374 INFO    ] 200
[2026-08-25 22:38:19,376.376 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:19,417.417 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:38:19,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:19,470.470 INFO    ] No camera update needed
[2026-08-25 22:38:19,472.472 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:38:19,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:38:19,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:38:19,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:38:21,526.526 INFO    ] ================================================
[2026-08-25 22:38:21,541.541 INFO    ] Launching Daemon at Tue Aug 25 22:38:21 IST 2026
[2026-08-25 22:38:21,552.552 INFO    ] ================================================
[2026-08-25 22:38:22,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:38:22
[2026-08-25 22:38:22,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:38:23,120.120 INFO    ] Initializing speech engine...
[2026-08-25 22:38:23,126.126 INFO    ] 2026-08-25 22:38:23
[2026-08-25 22:38:23,372.372 INFO    ] 2026-08-25 22:38:23
[2026-08-25 22:38:23,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:38:23,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:38:23,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:38:23,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:38:23,750.750 INFO    ] time= 25/08/2026 22:38:23
[2026-08-25 22:38:23,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:38:23,797.797 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:38:23,932.932 INFO    ] No existing commands found in stream
[2026-08-25 22:38:28,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:38:28,959.959 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-08-25 22:38:29,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:38:29,520.520 INFO    ] Checking for system updates...
[2026-08-25 22:38:29,556.556 INFO    ] 200
[2026-08-25 22:38:29,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:29,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:38:29,615.615 INFO    ] No update needed
[2026-08-25 22:38:29,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 22:38:29,651.651 INFO    ] 200
[2026-08-25 22:38:29,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:29,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:38:29,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:38:29,766.766 INFO    ] No camera update needed
[2026-08-25 22:38:29,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:38:29,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:38:29,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:38:29,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:38:31,824.824 INFO    ] ================================================
[2026-08-25 22:38:31,842.842 INFO    ] Launching Daemon at Tue Aug 25 22:38:31 IST 2026
[2026-08-25 22:38:31,856.856 INFO    ] ================================================
[2026-08-25 22:38:32,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:38:32
[2026-08-25 22:38:33,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:38:33,324.324 INFO    ] Initializing speech engine...
[2026-08-25 22:38:33,332.332 INFO    ] 2026-08-25 22:38:33
[2026-08-25 22:38:33,603.603 INFO    ] 2026-08-25 22:38:33
[2026-08-25 22:38:33,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:38:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:38:33,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:38:33,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:38:34,031.031 INFO    ] time= 25/08/2026 22:38:33
[2026-08-25 22:38:34,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:38:34,112.112 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:38:34,208.208 INFO    ] No existing commands found in stream
[2026-08-25 22:38:39,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:38:39,223.223 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-08-25 22:38:43,539.539 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:38:43,541.541 INFO    ] Checking for system updates...
[2026-08-25 22:38:43,579.579 INFO    ] 200
[2026-08-25 22:38:43,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:43,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:43,640.640 INFO    ] No update needed
[2026-08-25 22:38:43,642.642 INFO    ] Checking for camera pi updates...
[2026-08-25 22:38:43,678.678 INFO    ] 200
[2026-08-25 22:38:43,680.680 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:43,721.721 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:38:43,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:43,775.775 INFO    ] No camera update needed
[2026-08-25 22:38:43,777.777 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:38:43,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:38:43,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:38:43,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:38:45,830.830 INFO    ] ================================================
[2026-08-25 22:38:45,845.845 INFO    ] Launching Daemon at Tue Aug 25 22:38:45 IST 2026
[2026-08-25 22:38:45,856.856 INFO    ] ================================================
[2026-08-25 22:38:46,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:38:46
[2026-08-25 22:38:47,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:38:47,342.342 INFO    ] Initializing speech engine...
[2026-08-25 22:38:47,365.365 INFO    ] 2026-08-25 22:38:47
[2026-08-25 22:38:47,622.622 INFO    ] 2026-08-25 22:38:47
[2026-08-25 22:38:47,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:38:48,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:38:48,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:38:49,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:38:49,086.086 INFO    ] time= 25/08/2026 22:38:49
[2026-08-25 22:38:49,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:38:49,095.095 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:38:49,165.165 INFO    ] No existing commands found in stream
[2026-08-25 22:38:54,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:38:54,180.180 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 22:38:54,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:38:54,814.814 INFO    ] Checking for system updates...
[2026-08-25 22:38:54,849.849 INFO    ] 200
[2026-08-25 22:38:54,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:54,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:54,907.907 INFO    ] No update needed
[2026-08-25 22:38:54,909.909 INFO    ] Checking for camera pi updates...
[2026-08-25 22:38:54,943.943 INFO    ] 200
[2026-08-25 22:38:54,945.945 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:38:54,986.986 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:38:55,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:38:55,037.037 INFO    ] No camera update needed
[2026-08-25 22:38:55,040.040 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:38:55,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:38:55,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:38:55,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:38:57,093.093 INFO    ] ================================================
[2026-08-25 22:38:57,108.108 INFO    ] Launching Daemon at Tue Aug 25 22:38:57 IST 2026
[2026-08-25 22:38:57,118.118 INFO    ] ================================================
[2026-08-25 22:38:57,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:38:57
[2026-08-25 22:38:58,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:38:58,688.688 INFO    ] Initializing speech engine...
[2026-08-25 22:38:58,697.697 INFO    ] 2026-08-25 22:38:58
[2026-08-25 22:38:58,982.982 INFO    ] 2026-08-25 22:38:58
[2026-08-25 22:38:59,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:38:59,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:38:59,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:39:00,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:39:00,503.503 INFO    ] time= 25/08/2026 22:39:00
[2026-08-25 22:39:00,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:39:00,510.510 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:39:00,626.626 INFO    ] No existing commands found in stream
[2026-08-25 22:39:05,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:39:05,642.642 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-08-25 22:39:06,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:39:06,400.400 INFO    ] Checking for system updates...
[2026-08-25 22:39:06,444.444 INFO    ] 200
[2026-08-25 22:39:06,447.447 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:06,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:06,521.521 INFO    ] No update needed
[2026-08-25 22:39:06,524.524 INFO    ] Checking for camera pi updates...
[2026-08-25 22:39:06,560.560 INFO    ] 200
[2026-08-25 22:39:06,563.563 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:06,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:39:06,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:06,650.650 INFO    ] No camera update needed
[2026-08-25 22:39:06,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:39:06,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:39:06,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:39:06,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:39:08,707.707 INFO    ] ================================================
[2026-08-25 22:39:08,723.723 INFO    ] Launching Daemon at Tue Aug 25 22:39:08 IST 2026
[2026-08-25 22:39:08,734.734 INFO    ] ================================================
[2026-08-25 22:39:09,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:39:09
[2026-08-25 22:39:10,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:39:10,304.304 INFO    ] Initializing speech engine...
[2026-08-25 22:39:10,317.317 INFO    ] 2026-08-25 22:39:10
[2026-08-25 22:39:10,582.582 INFO    ] 2026-08-25 22:39:10
[2026-08-25 22:39:10,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:39:10,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:39:10,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:39:11,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:39:11,052.052 INFO    ] time= 25/08/2026 22:39:11
[2026-08-25 22:39:11,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:39:11,133.133 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:39:11,267.267 INFO    ] No existing commands found in stream
[2026-08-25 22:39:16,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:39:16,290.290 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-08-25 22:39:16,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:39:16,988.988 INFO    ] Checking for system updates...
[2026-08-25 22:39:17,027.027 INFO    ] 200
[2026-08-25 22:39:17,030.030 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:17,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:17,097.097 INFO    ] No update needed
[2026-08-25 22:39:17,100.100 INFO    ] Checking for camera pi updates...
[2026-08-25 22:39:17,135.135 INFO    ] 200
[2026-08-25 22:39:17,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:17,182.182 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:39:17,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:17,243.243 INFO    ] No camera update needed
[2026-08-25 22:39:17,246.246 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:39:17,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:39:17,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:39:17,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:39:19,300.300 INFO    ] ================================================
[2026-08-25 22:39:19,315.315 INFO    ] Launching Daemon at Tue Aug 25 22:39:19 IST 2026
[2026-08-25 22:39:19,326.326 INFO    ] ================================================
[2026-08-25 22:39:19,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:39:19
[2026-08-25 22:39:20,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:39:20,898.898 INFO    ] Initializing speech engine...
[2026-08-25 22:39:20,909.909 INFO    ] 2026-08-25 22:39:20
[2026-08-25 22:39:21,180.180 INFO    ] 2026-08-25 22:39:21
[2026-08-25 22:39:21,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:39:21,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:39:21,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:39:21,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:39:21,624.624 INFO    ] time= 25/08/2026 22:39:21
[2026-08-25 22:39:21,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:39:21,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:39:21,808.808 INFO    ] No existing commands found in stream
[2026-08-25 22:39:26,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:39:26,829.829 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 22:39:29,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:39:29,148.148 INFO    ] Checking for system updates...
[2026-08-25 22:39:29,184.184 INFO    ] 200
[2026-08-25 22:39:29,187.187 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:29,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:29,241.241 INFO    ] No update needed
[2026-08-25 22:39:29,244.244 INFO    ] Checking for camera pi updates...
[2026-08-25 22:39:29,277.277 INFO    ] 200
[2026-08-25 22:39:29,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:29,319.319 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:39:29,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:29,369.369 INFO    ] No camera update needed
[2026-08-25 22:39:29,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:39:29,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:39:29,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:39:29,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:39:31,422.422 INFO    ] ================================================
[2026-08-25 22:39:31,438.438 INFO    ] Launching Daemon at Tue Aug 25 22:39:31 IST 2026
[2026-08-25 22:39:31,450.450 INFO    ] ================================================
[2026-08-25 22:39:32,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:39:32
[2026-08-25 22:39:32,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:39:32,973.973 INFO    ] Initializing speech engine...
[2026-08-25 22:39:32,976.976 INFO    ] 2026-08-25 22:39:32
[2026-08-25 22:39:33,227.227 INFO    ] 2026-08-25 22:39:33
[2026-08-25 22:39:33,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:39:33,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:39:33,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:39:33,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:39:33,729.729 INFO    ] time= 25/08/2026 22:39:33
[2026-08-25 22:39:33,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:39:33,792.792 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:39:33,927.927 INFO    ] No existing commands found in stream
[2026-08-25 22:39:38,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:39:38,951.951 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-08-25 22:39:42,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:39:42,797.797 INFO    ] Checking for system updates...
[2026-08-25 22:39:42,835.835 INFO    ] 200
[2026-08-25 22:39:42,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:42,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:42,898.898 INFO    ] No update needed
[2026-08-25 22:39:42,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 22:39:42,934.934 INFO    ] 200
[2026-08-25 22:39:42,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:42,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:39:43,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:39:43,125.125 INFO    ] No camera update needed
[2026-08-25 22:39:43,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:39:43,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:39:43,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:39:43,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:39:45,184.184 INFO    ] ================================================
[2026-08-25 22:39:45,200.200 INFO    ] Launching Daemon at Tue Aug 25 22:39:45 IST 2026
[2026-08-25 22:39:45,211.211 INFO    ] ================================================
[2026-08-25 22:39:45,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:39:45
[2026-08-25 22:39:46,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:39:46,606.606 INFO    ] Initializing speech engine...
[2026-08-25 22:39:46,614.614 INFO    ] 2026-08-25 22:39:46
[2026-08-25 22:39:46,903.903 INFO    ] 2026-08-25 22:39:46
[2026-08-25 22:39:46,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:39:47,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:39:47,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:39:47,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:39:47,278.278 INFO    ] time= 25/08/2026 22:39:47
[2026-08-25 22:39:47,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:39:47,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:39:47,383.383 INFO    ] No existing commands found in stream
[2026-08-25 22:39:52,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:39:52,421.421 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-08-25 22:39:53,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:39:53,252.252 INFO    ] Checking for system updates...
[2026-08-25 22:39:53,288.288 INFO    ] 200
[2026-08-25 22:39:53,291.291 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:53,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:39:53,346.346 INFO    ] No update needed
[2026-08-25 22:39:53,348.348 INFO    ] Checking for camera pi updates...
[2026-08-25 22:39:53,384.384 INFO    ] 200
[2026-08-25 22:39:53,387.387 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:39:53,427.427 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:39:53,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:39:53,474.474 INFO    ] No camera update needed
[2026-08-25 22:39:53,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:39:53,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:39:53,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:39:53,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:39:55,529.529 INFO    ] ================================================
[2026-08-25 22:39:55,544.544 INFO    ] Launching Daemon at Tue Aug 25 22:39:55 IST 2026
[2026-08-25 22:39:55,555.555 INFO    ] ================================================
[2026-08-25 22:39:56,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:39:56
[2026-08-25 22:39:56,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:39:57,128.128 INFO    ] Initializing speech engine...
[2026-08-25 22:39:57,137.137 INFO    ] 2026-08-25 22:39:57
[2026-08-25 22:39:57,411.411 INFO    ] 2026-08-25 22:39:57
[2026-08-25 22:39:57,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:39:57,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:39:57,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:39:57,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:39:57,918.918 INFO    ] time= 25/08/2026 22:39:57
[2026-08-25 22:39:57,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:39:57,988.988 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:39:58,127.127 INFO    ] No existing commands found in stream
[2026-08-25 22:40:03,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:40:03,152.152 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-08-25 22:40:08,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:40:08,572.572 INFO    ] Checking for system updates...
[2026-08-25 22:40:08,614.614 INFO    ] 200
[2026-08-25 22:40:08,617.617 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:08,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:40:08,675.675 INFO    ] No update needed
[2026-08-25 22:40:08,678.678 INFO    ] Checking for camera pi updates...
[2026-08-25 22:40:08,712.712 INFO    ] 200
[2026-08-25 22:40:08,716.716 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:08,762.762 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:40:08,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:40:08,818.818 INFO    ] No camera update needed
[2026-08-25 22:40:08,821.821 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:40:08,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:40:08,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:40:08,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:40:10,879.879 INFO    ] ================================================
[2026-08-25 22:40:10,895.895 INFO    ] Launching Daemon at Tue Aug 25 22:40:10 IST 2026
[2026-08-25 22:40:10,906.906 INFO    ] ================================================
[2026-08-25 22:40:11,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:40:11
[2026-08-25 22:40:12,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:40:12,562.562 INFO    ] Initializing speech engine...
[2026-08-25 22:40:12,568.568 INFO    ] 2026-08-25 22:40:12
[2026-08-25 22:40:12,851.851 INFO    ] 2026-08-25 22:40:12
[2026-08-25 22:40:12,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:40:13,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:40:13,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:40:13,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:40:13,305.305 INFO    ] time= 25/08/2026 22:40:13
[2026-08-25 22:40:13,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:40:13,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:40:13,570.570 INFO    ] No existing commands found in stream
[2026-08-25 22:40:18,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:40:18,589.589 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-08-25 22:40:19,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:40:19,212.212 INFO    ] Checking for system updates...
[2026-08-25 22:40:19,257.257 INFO    ] 200
[2026-08-25 22:40:19,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:19,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:40:19,325.325 INFO    ] No update needed
[2026-08-25 22:40:19,328.328 INFO    ] Checking for camera pi updates...
[2026-08-25 22:40:19,364.364 INFO    ] 200
[2026-08-25 22:40:19,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:19,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:40:19,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:40:19,467.467 INFO    ] No camera update needed
[2026-08-25 22:40:19,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:40:19,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:40:19,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:40:19,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:40:21,527.527 INFO    ] ================================================
[2026-08-25 22:40:21,542.542 INFO    ] Launching Daemon at Tue Aug 25 22:40:21 IST 2026
[2026-08-25 22:40:21,554.554 INFO    ] ================================================
[2026-08-25 22:40:22,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:40:22
[2026-08-25 22:40:22,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:40:22,964.964 INFO    ] Initializing speech engine...
[2026-08-25 22:40:22,977.977 INFO    ] 2026-08-25 22:40:22
[2026-08-25 22:40:23,268.268 INFO    ] 2026-08-25 22:40:23
[2026-08-25 22:40:23,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:40:23,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:40:23,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:40:23,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:40:23,641.641 INFO    ] time= 25/08/2026 22:40:23
[2026-08-25 22:40:23,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:40:23,693.693 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:40:23,834.834 INFO    ] No existing commands found in stream
[2026-08-25 22:40:28,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:40:28,852.852 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-08-25 22:40:31,980.980 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:40:31,983.983 INFO    ] Checking for system updates...
[2026-08-25 22:40:32,022.022 INFO    ] 200
[2026-08-25 22:40:32,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:32,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:40:32,083.083 INFO    ] No update needed
[2026-08-25 22:40:32,086.086 INFO    ] Checking for camera pi updates...
[2026-08-25 22:40:32,123.123 INFO    ] 200
[2026-08-25 22:40:32,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:32,178.178 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:40:32,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:40:32,250.250 INFO    ] No camera update needed
[2026-08-25 22:40:32,253.253 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:40:32,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:40:32,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:40:32,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:40:34,309.309 INFO    ] ================================================
[2026-08-25 22:40:34,325.325 INFO    ] Launching Daemon at Tue Aug 25 22:40:34 IST 2026
[2026-08-25 22:40:34,335.335 INFO    ] ================================================
[2026-08-25 22:40:34,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:40:34
[2026-08-25 22:40:35,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:40:35,752.752 INFO    ] Initializing speech engine...
[2026-08-25 22:40:35,761.761 INFO    ] 2026-08-25 22:40:35
[2026-08-25 22:40:36,057.057 INFO    ] 2026-08-25 22:40:36
[2026-08-25 22:40:36,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:40:36,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:40:36,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:40:36,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:40:36,512.512 INFO    ] time= 25/08/2026 22:40:36
[2026-08-25 22:40:36,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:40:36,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:40:36,772.772 INFO    ] No existing commands found in stream
[2026-08-25 22:40:41,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:40:41,789.789 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 22:40:44,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:40:44,271.271 INFO    ] Checking for system updates...
[2026-08-25 22:40:44,310.310 INFO    ] 200
[2026-08-25 22:40:44,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:44,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:40:44,367.367 INFO    ] No update needed
[2026-08-25 22:40:44,369.369 INFO    ] Checking for camera pi updates...
[2026-08-25 22:40:44,403.403 INFO    ] 200
[2026-08-25 22:40:44,405.405 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:44,446.446 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:40:44,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:40:44,494.494 INFO    ] No camera update needed
[2026-08-25 22:40:44,497.497 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:40:44,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:40:44,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:40:44,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:40:46,554.554 INFO    ] ================================================
[2026-08-25 22:40:46,570.570 INFO    ] Launching Daemon at Tue Aug 25 22:40:46 IST 2026
[2026-08-25 22:40:46,582.582 INFO    ] ================================================
[2026-08-25 22:40:47,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:40:47
[2026-08-25 22:40:47,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:40:48,013.013 INFO    ] Initializing speech engine...
[2026-08-25 22:40:48,023.023 INFO    ] 2026-08-25 22:40:48
[2026-08-25 22:40:48,279.279 INFO    ] 2026-08-25 22:40:48
[2026-08-25 22:40:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:40:48,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:40:48,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:40:48,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:40:48,661.661 INFO    ] time= 25/08/2026 22:40:48
[2026-08-25 22:40:48,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:40:48,719.719 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:40:48,845.845 INFO    ] No existing commands found in stream
[2026-08-25 22:40:53,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:40:53,876.876 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 22:40:57,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:40:57,440.440 INFO    ] Checking for system updates...
[2026-08-25 22:40:57,480.480 INFO    ] 200
[2026-08-25 22:40:57,482.482 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:57,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:40:57,537.537 INFO    ] No update needed
[2026-08-25 22:40:57,540.540 INFO    ] Checking for camera pi updates...
[2026-08-25 22:40:57,577.577 INFO    ] 200
[2026-08-25 22:40:57,580.580 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:40:57,620.620 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:40:57,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:40:57,668.668 INFO    ] No camera update needed
[2026-08-25 22:40:57,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:40:57,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:40:57,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:40:57,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:40:59,725.725 INFO    ] ================================================
[2026-08-25 22:40:59,741.741 INFO    ] Launching Daemon at Tue Aug 25 22:40:59 IST 2026
[2026-08-25 22:40:59,752.752 INFO    ] ================================================
[2026-08-25 22:41:00,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:41:00
[2026-08-25 22:41:00,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:41:01,182.182 INFO    ] Initializing speech engine...
[2026-08-25 22:41:01,201.201 INFO    ] 2026-08-25 22:41:01
[2026-08-25 22:41:01,452.452 INFO    ] 2026-08-25 22:41:01
[2026-08-25 22:41:01,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:41:01,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:41:01,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:41:01,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:41:01,883.883 INFO    ] time= 25/08/2026 22:41:01
[2026-08-25 22:41:01,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:41:01,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:41:01,989.989 INFO    ] No existing commands found in stream
[2026-08-25 22:41:06,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:41:07,002.002 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-08-25 22:41:08,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:41:08,492.492 INFO    ] Checking for system updates...
[2026-08-25 22:41:08,528.528 INFO    ] 200
[2026-08-25 22:41:08,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:08,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:41:08,587.587 INFO    ] No update needed
[2026-08-25 22:41:08,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 22:41:08,626.626 INFO    ] 200
[2026-08-25 22:41:08,629.629 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:08,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:41:08,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:41:08,721.721 INFO    ] No camera update needed
[2026-08-25 22:41:08,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:41:08,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:41:08,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:41:08,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:41:10,778.778 INFO    ] ================================================
[2026-08-25 22:41:10,793.793 INFO    ] Launching Daemon at Tue Aug 25 22:41:10 IST 2026
[2026-08-25 22:41:10,804.804 INFO    ] ================================================
[2026-08-25 22:41:11,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:41:11
[2026-08-25 22:41:11,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:41:12,201.201 INFO    ] Initializing speech engine...
[2026-08-25 22:41:12,209.209 INFO    ] 2026-08-25 22:41:12
[2026-08-25 22:41:12,494.494 INFO    ] 2026-08-25 22:41:12
[2026-08-25 22:41:12,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:41:12,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:41:12,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:41:12,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:41:12,862.862 INFO    ] time= 25/08/2026 22:41:12
[2026-08-25 22:41:12,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:41:12,902.902 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:41:12,982.982 INFO    ] No existing commands found in stream
[2026-08-25 22:41:17,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:41:17,998.998 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 22:41:18,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:41:18,782.782 INFO    ] Checking for system updates...
[2026-08-25 22:41:18,817.817 INFO    ] 200
[2026-08-25 22:41:18,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:18,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:18,874.874 INFO    ] No update needed
[2026-08-25 22:41:18,876.876 INFO    ] Checking for camera pi updates...
[2026-08-25 22:41:18,910.910 INFO    ] 200
[2026-08-25 22:41:18,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:18,951.951 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:41:19,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:19,003.003 INFO    ] No camera update needed
[2026-08-25 22:41:19,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:41:19,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:41:19,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:41:19,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:41:21,058.058 INFO    ] ================================================
[2026-08-25 22:41:21,073.073 INFO    ] Launching Daemon at Tue Aug 25 22:41:21 IST 2026
[2026-08-25 22:41:21,085.085 INFO    ] ================================================
[2026-08-25 22:41:21,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:41:21
[2026-08-25 22:41:22,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:41:22,516.516 INFO    ] Initializing speech engine...
[2026-08-25 22:41:22,540.540 INFO    ] 2026-08-25 22:41:22
[2026-08-25 22:41:22,808.808 INFO    ] 2026-08-25 22:41:22
[2026-08-25 22:41:22,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:41:23,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:41:23,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:41:23,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:41:23,218.218 INFO    ] time= 25/08/2026 22:41:23
[2026-08-25 22:41:23,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:41:23,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:41:23,367.367 INFO    ] No existing commands found in stream
[2026-08-25 22:41:28,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:41:28,395.395 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 22:41:31,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:41:31,137.137 INFO    ] Checking for system updates...
[2026-08-25 22:41:31,173.173 INFO    ] 200
[2026-08-25 22:41:31,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:31,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:31,233.233 INFO    ] No update needed
[2026-08-25 22:41:31,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 22:41:31,269.269 INFO    ] 200
[2026-08-25 22:41:31,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:31,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:41:31,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:31,361.361 INFO    ] No camera update needed
[2026-08-25 22:41:31,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:41:31,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:41:31,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:41:31,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:41:33,416.416 INFO    ] ================================================
[2026-08-25 22:41:33,432.432 INFO    ] Launching Daemon at Tue Aug 25 22:41:33 IST 2026
[2026-08-25 22:41:33,443.443 INFO    ] ================================================
[2026-08-25 22:41:34,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:41:34
[2026-08-25 22:41:34,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:41:34,870.870 INFO    ] Initializing speech engine...
[2026-08-25 22:41:34,879.879 INFO    ] 2026-08-25 22:41:34
[2026-08-25 22:41:35,135.135 INFO    ] 2026-08-25 22:41:35
[2026-08-25 22:41:35,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:41:35,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:41:35,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:41:35,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:41:35,571.571 INFO    ] time= 25/08/2026 22:41:35
[2026-08-25 22:41:35,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:41:35,681.681 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:41:35,815.815 INFO    ] No existing commands found in stream
[2026-08-25 22:41:40,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:41:40,841.841 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 22:41:44,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:41:44,956.956 INFO    ] Checking for system updates...
[2026-08-25 22:41:44,992.992 INFO    ] 200
[2026-08-25 22:41:44,994.994 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:45,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:45,050.050 INFO    ] No update needed
[2026-08-25 22:41:45,053.053 INFO    ] Checking for camera pi updates...
[2026-08-25 22:41:45,090.090 INFO    ] 200
[2026-08-25 22:41:45,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:45,136.136 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:41:45,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:45,290.290 INFO    ] No camera update needed
[2026-08-25 22:41:45,292.292 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:41:45,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:41:45,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:41:45,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:41:47,345.345 INFO    ] ================================================
[2026-08-25 22:41:47,360.360 INFO    ] Launching Daemon at Tue Aug 25 22:41:47 IST 2026
[2026-08-25 22:41:47,372.372 INFO    ] ================================================
[2026-08-25 22:41:47,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:41:47
[2026-08-25 22:41:48,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:41:48,772.772 INFO    ] Initializing speech engine...
[2026-08-25 22:41:48,791.791 INFO    ] 2026-08-25 22:41:48
[2026-08-25 22:41:49,048.048 INFO    ] 2026-08-25 22:41:49
[2026-08-25 22:41:49,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:41:49,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:41:49,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:41:49,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:41:49,422.422 INFO    ] time= 25/08/2026 22:41:49
[2026-08-25 22:41:49,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:41:49,470.470 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:41:49,538.538 INFO    ] No existing commands found in stream
[2026-08-25 22:41:54,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:41:54,550.550 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 22:41:57,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:41:57,557.557 INFO    ] Checking for system updates...
[2026-08-25 22:41:57,595.595 INFO    ] 200
[2026-08-25 22:41:57,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:57,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:57,652.652 INFO    ] No update needed
[2026-08-25 22:41:57,655.655 INFO    ] Checking for camera pi updates...
[2026-08-25 22:41:57,689.689 INFO    ] 200
[2026-08-25 22:41:57,691.691 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:41:57,732.732 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:41:57,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:41:57,779.779 INFO    ] No camera update needed
[2026-08-25 22:41:57,781.781 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:41:57,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:41:57,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:41:57,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:41:59,834.834 INFO    ] ================================================
[2026-08-25 22:41:59,850.850 INFO    ] Launching Daemon at Tue Aug 25 22:41:59 IST 2026
[2026-08-25 22:41:59,863.863 INFO    ] ================================================
[2026-08-25 22:42:00,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:42:00
[2026-08-25 22:42:01,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:42:01,284.284 INFO    ] Initializing speech engine...
[2026-08-25 22:42:01,294.294 INFO    ] 2026-08-25 22:42:01
[2026-08-25 22:42:01,539.539 INFO    ] 2026-08-25 22:42:01
[2026-08-25 22:42:01,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:42:01,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:42:01,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:42:01,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:42:01,975.975 INFO    ] time= 25/08/2026 22:42:01
[2026-08-25 22:42:01,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:42:01,997.997 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:42:02,061.061 INFO    ] No existing commands found in stream
[2026-08-25 22:42:07,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:42:07,070.070 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 22:42:09,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:42:09,369.369 INFO    ] Checking for system updates...
[2026-08-25 22:42:09,404.404 INFO    ] 200
[2026-08-25 22:42:09,406.406 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:09,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:42:09,462.462 INFO    ] No update needed
[2026-08-25 22:42:09,464.464 INFO    ] Checking for camera pi updates...
[2026-08-25 22:42:09,498.498 INFO    ] 200
[2026-08-25 22:42:09,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:09,541.541 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:42:09,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:42:09,593.593 INFO    ] No camera update needed
[2026-08-25 22:42:09,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:42:09,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:42:09,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:42:09,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:42:11,647.647 INFO    ] ================================================
[2026-08-25 22:42:11,662.662 INFO    ] Launching Daemon at Tue Aug 25 22:42:11 IST 2026
[2026-08-25 22:42:11,673.673 INFO    ] ================================================
[2026-08-25 22:42:12,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:42:12
[2026-08-25 22:42:12,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:42:13,110.110 INFO    ] Initializing speech engine...
[2026-08-25 22:42:13,118.118 INFO    ] 2026-08-25 22:42:13
[2026-08-25 22:42:13,365.365 INFO    ] 2026-08-25 22:42:13
[2026-08-25 22:42:13,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:42:13,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:42:13,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:42:13,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:42:13,735.735 INFO    ] time= 25/08/2026 22:42:13
[2026-08-25 22:42:13,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:42:13,785.785 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:42:13,907.907 INFO    ] No existing commands found in stream
[2026-08-25 22:42:18,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:42:18,935.935 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 22:42:21,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:42:21,491.491 INFO    ] Checking for system updates...
[2026-08-25 22:42:21,526.526 INFO    ] 200
[2026-08-25 22:42:21,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:21,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:42:21,585.585 INFO    ] No update needed
[2026-08-25 22:42:21,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 22:42:21,624.624 INFO    ] 200
[2026-08-25 22:42:21,627.627 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:21,668.668 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:42:21,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:42:21,713.713 INFO    ] No camera update needed
[2026-08-25 22:42:21,716.716 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:42:21,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:42:21,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:42:21,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:42:23,772.772 INFO    ] ================================================
[2026-08-25 22:42:23,788.788 INFO    ] Launching Daemon at Tue Aug 25 22:42:23 IST 2026
[2026-08-25 22:42:23,798.798 INFO    ] ================================================
[2026-08-25 22:42:24,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:42:24
[2026-08-25 22:42:25,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:42:25,271.271 INFO    ] Initializing speech engine...
[2026-08-25 22:42:25,280.280 INFO    ] 2026-08-25 22:42:25
[2026-08-25 22:42:25,531.531 INFO    ] 2026-08-25 22:42:25
[2026-08-25 22:42:25,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:42:25,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:42:25,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:42:25,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:42:25,992.992 INFO    ] time= 25/08/2026 22:42:25
[2026-08-25 22:42:26,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:42:26,083.083 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:42:26,211.211 INFO    ] No existing commands found in stream
[2026-08-25 22:42:31,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:42:31,239.239 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 22:42:31,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:42:31,765.765 INFO    ] Checking for system updates...
[2026-08-25 22:42:31,802.802 INFO    ] 200
[2026-08-25 22:42:31,804.804 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:31,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:42:31,859.859 INFO    ] No update needed
[2026-08-25 22:42:31,861.861 INFO    ] Checking for camera pi updates...
[2026-08-25 22:42:31,898.898 INFO    ] 200
[2026-08-25 22:42:31,900.900 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:31,945.945 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:42:31,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:42:32,000.000 INFO    ] No camera update needed
[2026-08-25 22:42:32,003.003 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:42:32,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:42:32,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:42:32,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:42:34,060.060 INFO    ] ================================================
[2026-08-25 22:42:34,075.075 INFO    ] Launching Daemon at Tue Aug 25 22:42:34 IST 2026
[2026-08-25 22:42:34,086.086 INFO    ] ================================================
[2026-08-25 22:42:34,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:42:34
[2026-08-25 22:42:35,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:42:35,528.528 INFO    ] Initializing speech engine...
[2026-08-25 22:42:35,537.537 INFO    ] 2026-08-25 22:42:35
[2026-08-25 22:42:35,784.784 INFO    ] 2026-08-25 22:42:35
[2026-08-25 22:42:35,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:42:35,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:42:36,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:42:36,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:42:36,153.153 INFO    ] time= 25/08/2026 22:42:36
[2026-08-25 22:42:36,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:42:36,195.195 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:42:36,330.330 INFO    ] No existing commands found in stream
[2026-08-25 22:42:41,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:42:41,364.364 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 22:42:42,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:42:42,489.489 INFO    ] Checking for system updates...
[2026-08-25 22:42:42,524.524 INFO    ] 200
[2026-08-25 22:42:42,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:42,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:42:42,581.581 INFO    ] No update needed
[2026-08-25 22:42:42,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 22:42:42,619.619 INFO    ] 200
[2026-08-25 22:42:42,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:42,662.662 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:42:42,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:42:42,711.711 INFO    ] No camera update needed
[2026-08-25 22:42:42,713.713 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:42:42,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:42:42,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:42:42,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:42:44,766.766 INFO    ] ================================================
[2026-08-25 22:42:44,781.781 INFO    ] Launching Daemon at Tue Aug 25 22:42:44 IST 2026
[2026-08-25 22:42:44,791.791 INFO    ] ================================================
[2026-08-25 22:42:45,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:42:45
[2026-08-25 22:42:45,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:42:46,195.195 INFO    ] Initializing speech engine...
[2026-08-25 22:42:46,213.213 INFO    ] 2026-08-25 22:42:46
[2026-08-25 22:42:46,459.459 INFO    ] 2026-08-25 22:42:46
[2026-08-25 22:42:46,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:42:46,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:42:46,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:42:46,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:42:46,933.933 INFO    ] time= 25/08/2026 22:42:46
[2026-08-25 22:42:46,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:42:47,019.019 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:42:47,109.109 INFO    ] No existing commands found in stream
[2026-08-25 22:42:52,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:42:52,143.143 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-08-25 22:42:54,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:42:54,354.354 INFO    ] Checking for system updates...
[2026-08-25 22:42:54,389.389 INFO    ] 200
[2026-08-25 22:42:54,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:54,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:42:54,447.447 INFO    ] No update needed
[2026-08-25 22:42:54,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 22:42:54,483.483 INFO    ] 200
[2026-08-25 22:42:54,485.485 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:42:54,530.530 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:42:54,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:42:54,580.580 INFO    ] No camera update needed
[2026-08-25 22:42:54,582.582 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:42:54,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:42:54,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:42:54,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:42:56,635.635 INFO    ] ================================================
[2026-08-25 22:42:56,650.650 INFO    ] Launching Daemon at Tue Aug 25 22:42:56 IST 2026
[2026-08-25 22:42:56,661.661 INFO    ] ================================================
[2026-08-25 22:42:57,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:42:57
[2026-08-25 22:42:57,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:42:58,266.266 INFO    ] Initializing speech engine...
[2026-08-25 22:42:58,278.278 INFO    ] 2026-08-25 22:42:58
[2026-08-25 22:42:58,585.585 INFO    ] 2026-08-25 22:42:58
[2026-08-25 22:42:58,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:42:58,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:42:58,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:42:59,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:42:59,089.089 INFO    ] time= 25/08/2026 22:42:59
[2026-08-25 22:42:59,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:42:59,117.117 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:42:59,244.244 INFO    ] No existing commands found in stream
[2026-08-25 22:43:04,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:43:04,265.265 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 22:43:08,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:43:08,133.133 INFO    ] Checking for system updates...
[2026-08-25 22:43:08,172.172 INFO    ] 200
[2026-08-25 22:43:08,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:08,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:43:08,237.237 INFO    ] No update needed
[2026-08-25 22:43:08,240.240 INFO    ] Checking for camera pi updates...
[2026-08-25 22:43:08,277.277 INFO    ] 200
[2026-08-25 22:43:08,280.280 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:08,324.324 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:43:08,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:43:08,371.371 INFO    ] No camera update needed
[2026-08-25 22:43:08,374.374 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:43:08,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:43:08,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:43:08,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:43:10,429.429 INFO    ] ================================================
[2026-08-25 22:43:10,444.444 INFO    ] Launching Daemon at Tue Aug 25 22:43:10 IST 2026
[2026-08-25 22:43:10,454.454 INFO    ] ================================================
[2026-08-25 22:43:11,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:43:11
[2026-08-25 22:43:11,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:43:11,881.881 INFO    ] Initializing speech engine...
[2026-08-25 22:43:11,891.891 INFO    ] 2026-08-25 22:43:11
[2026-08-25 22:43:12,133.133 INFO    ] 2026-08-25 22:43:12
[2026-08-25 22:43:12,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:43:12,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:43:12,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:43:12,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:43:12,576.576 INFO    ] time= 25/08/2026 22:43:12
[2026-08-25 22:43:12,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:43:12,684.684 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:43:12,830.830 INFO    ] No existing commands found in stream
[2026-08-25 22:43:17,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:43:17,854.854 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 22:43:19,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:43:19,652.652 INFO    ] Checking for system updates...
[2026-08-25 22:43:19,690.690 INFO    ] 200
[2026-08-25 22:43:19,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:19,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:43:19,756.756 INFO    ] No update needed
[2026-08-25 22:43:19,758.758 INFO    ] Checking for camera pi updates...
[2026-08-25 22:43:19,792.792 INFO    ] 200
[2026-08-25 22:43:19,795.795 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:19,838.838 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:43:19,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:43:19,894.894 INFO    ] No camera update needed
[2026-08-25 22:43:19,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:43:19,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:43:19,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:43:19,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:43:21,951.951 INFO    ] ================================================
[2026-08-25 22:43:21,966.966 INFO    ] Launching Daemon at Tue Aug 25 22:43:21 IST 2026
[2026-08-25 22:43:21,977.977 INFO    ] ================================================
[2026-08-25 22:43:22,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:43:22
[2026-08-25 22:43:23,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:43:23,381.381 INFO    ] Initializing speech engine...
[2026-08-25 22:43:23,403.403 INFO    ] 2026-08-25 22:43:23
[2026-08-25 22:43:23,654.654 INFO    ] 2026-08-25 22:43:23
[2026-08-25 22:43:23,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:43:23,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:43:23,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:43:24,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:43:24,115.115 INFO    ] time= 25/08/2026 22:43:24
[2026-08-25 22:43:24,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:43:24,217.217 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:43:24,350.350 INFO    ] No existing commands found in stream
[2026-08-25 22:43:29,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:43:29,375.375 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-08-25 22:43:30,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:43:30,095.095 INFO    ] Checking for system updates...
[2026-08-25 22:43:30,131.131 INFO    ] 200
[2026-08-25 22:43:30,133.133 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:30,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:43:30,189.189 INFO    ] No update needed
[2026-08-25 22:43:30,191.191 INFO    ] Checking for camera pi updates...
[2026-08-25 22:43:30,228.228 INFO    ] 200
[2026-08-25 22:43:30,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:30,270.270 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:43:30,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:43:30,316.316 INFO    ] No camera update needed
[2026-08-25 22:43:30,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:43:30,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:43:30,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:43:30,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:43:32,373.373 INFO    ] ================================================
[2026-08-25 22:43:32,389.389 INFO    ] Launching Daemon at Tue Aug 25 22:43:32 IST 2026
[2026-08-25 22:43:32,401.401 INFO    ] ================================================
[2026-08-25 22:43:33,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:43:33
[2026-08-25 22:43:33,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:43:34,032.032 INFO    ] Initializing speech engine...
[2026-08-25 22:43:34,041.041 INFO    ] 2026-08-25 22:43:34
[2026-08-25 22:43:34,311.311 INFO    ] 2026-08-25 22:43:34
[2026-08-25 22:43:34,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:43:34,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:43:34,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:43:34,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:43:34,799.799 INFO    ] time= 25/08/2026 22:43:34
[2026-08-25 22:43:34,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:43:34,868.868 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:43:34,993.993 INFO    ] No existing commands found in stream
[2026-08-25 22:43:40,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:43:40,020.020 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 22:43:40,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:43:40,618.618 INFO    ] Checking for system updates...
[2026-08-25 22:43:40,655.655 INFO    ] 200
[2026-08-25 22:43:40,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:40,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:43:40,712.712 INFO    ] No update needed
[2026-08-25 22:43:40,714.714 INFO    ] Checking for camera pi updates...
[2026-08-25 22:43:40,749.749 INFO    ] 200
[2026-08-25 22:43:40,752.752 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:40,791.791 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:43:40,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:43:40,850.850 INFO    ] No camera update needed
[2026-08-25 22:43:40,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:43:40,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:43:40,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:43:40,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:43:42,905.905 INFO    ] ================================================
[2026-08-25 22:43:42,920.920 INFO    ] Launching Daemon at Tue Aug 25 22:43:42 IST 2026
[2026-08-25 22:43:42,930.930 INFO    ] ================================================
[2026-08-25 22:43:43,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:43:43
[2026-08-25 22:43:44,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:43:44,359.359 INFO    ] Initializing speech engine...
[2026-08-25 22:43:44,368.368 INFO    ] 2026-08-25 22:43:44
[2026-08-25 22:43:44,629.629 INFO    ] 2026-08-25 22:43:44
[2026-08-25 22:43:44,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:43:44,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:43:44,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:43:45,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:43:45,036.036 INFO    ] time= 25/08/2026 22:43:45
[2026-08-25 22:43:45,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:43:45,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:43:45,121.121 INFO    ] No existing commands found in stream
[2026-08-25 22:43:50,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:43:50,144.144 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 22:43:53,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:43:53,188.188 INFO    ] Checking for system updates...
[2026-08-25 22:43:53,223.223 INFO    ] 200
[2026-08-25 22:43:53,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:53,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:43:53,286.286 INFO    ] No update needed
[2026-08-25 22:43:53,288.288 INFO    ] Checking for camera pi updates...
[2026-08-25 22:43:53,325.325 INFO    ] 200
[2026-08-25 22:43:53,328.328 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:43:53,370.370 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:43:53,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:43:53,516.516 INFO    ] No camera update needed
[2026-08-25 22:43:53,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:43:53,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:43:53,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:43:53,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:43:55,573.573 INFO    ] ================================================
[2026-08-25 22:43:55,588.588 INFO    ] Launching Daemon at Tue Aug 25 22:43:55 IST 2026
[2026-08-25 22:43:55,599.599 INFO    ] ================================================
[2026-08-25 22:43:56,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:43:56
[2026-08-25 22:43:56,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:43:57,027.027 INFO    ] Initializing speech engine...
[2026-08-25 22:43:57,037.037 INFO    ] 2026-08-25 22:43:57
[2026-08-25 22:43:57,301.301 INFO    ] 2026-08-25 22:43:57
[2026-08-25 22:43:57,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:43:57,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:43:57,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:43:57,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:43:57,709.709 INFO    ] time= 25/08/2026 22:43:57
[2026-08-25 22:43:57,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:43:57,748.748 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:43:57,881.881 INFO    ] No existing commands found in stream
[2026-08-25 22:44:02,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:44:02,900.900 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 22:44:07,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:44:07,319.319 INFO    ] Checking for system updates...
[2026-08-25 22:44:07,355.355 INFO    ] 200
[2026-08-25 22:44:07,358.358 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:07,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:44:07,421.421 INFO    ] No update needed
[2026-08-25 22:44:07,424.424 INFO    ] Checking for camera pi updates...
[2026-08-25 22:44:07,458.458 INFO    ] 200
[2026-08-25 22:44:07,460.460 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:07,501.501 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:44:07,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:44:07,552.552 INFO    ] No camera update needed
[2026-08-25 22:44:07,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:44:07,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:44:07,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:44:07,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:44:09,607.607 INFO    ] ================================================
[2026-08-25 22:44:09,622.622 INFO    ] Launching Daemon at Tue Aug 25 22:44:09 IST 2026
[2026-08-25 22:44:09,633.633 INFO    ] ================================================
[2026-08-25 22:44:10,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:44:10
[2026-08-25 22:44:10,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:44:11,035.035 INFO    ] Initializing speech engine...
[2026-08-25 22:44:11,041.041 INFO    ] 2026-08-25 22:44:11
[2026-08-25 22:44:11,330.330 INFO    ] 2026-08-25 22:44:11
[2026-08-25 22:44:11,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:44:11,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:44:11,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:44:11,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:44:11,728.728 INFO    ] time= 25/08/2026 22:44:11
[2026-08-25 22:44:11,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:44:11,738.738 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:44:11,827.827 INFO    ] No existing commands found in stream
[2026-08-25 22:44:16,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:44:16,865.865 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-08-25 22:44:18,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:44:18,134.134 INFO    ] Checking for system updates...
[2026-08-25 22:44:18,170.170 INFO    ] 200
[2026-08-25 22:44:18,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:18,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:44:18,230.230 INFO    ] No update needed
[2026-08-25 22:44:18,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 22:44:18,268.268 INFO    ] 200
[2026-08-25 22:44:18,271.271 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:18,310.310 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:44:18,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:44:18,358.358 INFO    ] No camera update needed
[2026-08-25 22:44:18,360.360 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:44:18,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:44:18,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:44:18,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:44:20,414.414 INFO    ] ================================================
[2026-08-25 22:44:20,429.429 INFO    ] Launching Daemon at Tue Aug 25 22:44:20 IST 2026
[2026-08-25 22:44:20,440.440 INFO    ] ================================================
[2026-08-25 22:44:21,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:44:21
[2026-08-25 22:44:21,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:44:21,842.842 INFO    ] Initializing speech engine...
[2026-08-25 22:44:21,855.855 INFO    ] 2026-08-25 22:44:21
[2026-08-25 22:44:22,119.119 INFO    ] 2026-08-25 22:44:22
[2026-08-25 22:44:22,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:44:22,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:44:22,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:44:22,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:44:22,493.493 INFO    ] time= 25/08/2026 22:44:22
[2026-08-25 22:44:22,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:44:22,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:44:22,674.674 INFO    ] No existing commands found in stream
[2026-08-25 22:44:27,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:44:27,701.701 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-08-25 22:44:30,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:44:30,021.021 INFO    ] Checking for system updates...
[2026-08-25 22:44:30,059.059 INFO    ] 200
[2026-08-25 22:44:30,061.061 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:30,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:44:30,115.115 INFO    ] No update needed
[2026-08-25 22:44:30,118.118 INFO    ] Checking for camera pi updates...
[2026-08-25 22:44:30,156.156 INFO    ] 200
[2026-08-25 22:44:30,158.158 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:30,202.202 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:44:30,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:44:30,254.254 INFO    ] No camera update needed
[2026-08-25 22:44:30,256.256 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:44:30,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:44:30,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:44:30,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:44:32,310.310 INFO    ] ================================================
[2026-08-25 22:44:32,326.326 INFO    ] Launching Daemon at Tue Aug 25 22:44:32 IST 2026
[2026-08-25 22:44:32,338.338 INFO    ] ================================================
[2026-08-25 22:44:32,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:44:32
[2026-08-25 22:44:33,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:44:33,950.950 INFO    ] Initializing speech engine...
[2026-08-25 22:44:33,956.956 INFO    ] 2026-08-25 22:44:33
[2026-08-25 22:44:34,239.239 INFO    ] 2026-08-25 22:44:34
[2026-08-25 22:44:34,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:44:34,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:44:34,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:44:34,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:44:34,772.772 INFO    ] time= 25/08/2026 22:44:34
[2026-08-25 22:44:34,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:44:34,796.796 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:44:34,911.911 INFO    ] No existing commands found in stream
[2026-08-25 22:44:39,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:44:39,936.936 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 22:44:43,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:44:43,033.033 INFO    ] Checking for system updates...
[2026-08-25 22:44:43,069.069 INFO    ] 200
[2026-08-25 22:44:43,071.071 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:43,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:44:43,128.128 INFO    ] No update needed
[2026-08-25 22:44:43,130.130 INFO    ] Checking for camera pi updates...
[2026-08-25 22:44:43,166.166 INFO    ] 200
[2026-08-25 22:44:43,168.168 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:43,208.208 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:44:43,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:44:43,257.257 INFO    ] No camera update needed
[2026-08-25 22:44:43,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:44:43,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:44:43,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:44:43,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:44:45,311.311 INFO    ] ================================================
[2026-08-25 22:44:45,326.326 INFO    ] Launching Daemon at Tue Aug 25 22:44:45 IST 2026
[2026-08-25 22:44:45,337.337 INFO    ] ================================================
[2026-08-25 22:44:45,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:44:45
[2026-08-25 22:44:46,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:44:46,753.753 INFO    ] Initializing speech engine...
[2026-08-25 22:44:46,766.766 INFO    ] 2026-08-25 22:44:46
[2026-08-25 22:44:47,044.044 INFO    ] 2026-08-25 22:44:47
[2026-08-25 22:44:47,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:44:47,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:44:47,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:44:47,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:44:47,452.452 INFO    ] time= 25/08/2026 22:44:47
[2026-08-25 22:44:47,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:44:47,512.512 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:44:47,646.646 INFO    ] No existing commands found in stream
[2026-08-25 22:44:52,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:44:52,679.679 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-08-25 22:44:56,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:44:56,241.241 INFO    ] Checking for system updates...
[2026-08-25 22:44:56,277.277 INFO    ] 200
[2026-08-25 22:44:56,279.279 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:56,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:44:56,334.334 INFO    ] No update needed
[2026-08-25 22:44:56,337.337 INFO    ] Checking for camera pi updates...
[2026-08-25 22:44:56,371.371 INFO    ] 200
[2026-08-25 22:44:56,374.374 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:44:56,418.418 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:44:56,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:44:56,467.467 INFO    ] No camera update needed
[2026-08-25 22:44:56,469.469 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:44:56,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:44:56,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:44:56,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:44:58,524.524 INFO    ] ================================================
[2026-08-25 22:44:58,539.539 INFO    ] Launching Daemon at Tue Aug 25 22:44:58 IST 2026
[2026-08-25 22:44:58,549.549 INFO    ] ================================================
[2026-08-25 22:44:59,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:44:59
[2026-08-25 22:44:59,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:45:00,013.013 INFO    ] Initializing speech engine...
[2026-08-25 22:45:00,021.021 INFO    ] 2026-08-25 22:45:00
[2026-08-25 22:45:00,310.310 INFO    ] 2026-08-25 22:45:00
[2026-08-25 22:45:00,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:45:00,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:45:00,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:45:00,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:45:00,719.719 INFO    ] time= 25/08/2026 22:45:00
[2026-08-25 22:45:00,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:45:00,770.770 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:45:00,907.907 INFO    ] No existing commands found in stream
[2026-08-25 22:45:05,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:45:05,935.935 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 22:45:07,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:45:07,044.044 INFO    ] Checking for system updates...
[2026-08-25 22:45:07,080.080 INFO    ] 200
[2026-08-25 22:45:07,083.083 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:07,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:45:07,140.140 INFO    ] No update needed
[2026-08-25 22:45:07,143.143 INFO    ] Checking for camera pi updates...
[2026-08-25 22:45:07,177.177 INFO    ] 200
[2026-08-25 22:45:07,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:07,221.221 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:45:07,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:45:07,279.279 INFO    ] No camera update needed
[2026-08-25 22:45:07,281.281 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:45:07,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:45:07,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:45:07,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:45:09,339.339 INFO    ] ================================================
[2026-08-25 22:45:09,354.354 INFO    ] Launching Daemon at Tue Aug 25 22:45:09 IST 2026
[2026-08-25 22:45:09,365.365 INFO    ] ================================================
[2026-08-25 22:45:09,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:45:09
[2026-08-25 22:45:10,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:45:10,768.768 INFO    ] Initializing speech engine...
[2026-08-25 22:45:10,777.777 INFO    ] 2026-08-25 22:45:10
[2026-08-25 22:45:11,062.062 INFO    ] 2026-08-25 22:45:11
[2026-08-25 22:45:11,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:45:12,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:45:12,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:45:12,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:45:12,521.521 INFO    ] time= 25/08/2026 22:45:12
[2026-08-25 22:45:12,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:45:12,537.537 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:45:12,614.614 INFO    ] No existing commands found in stream
[2026-08-25 22:45:17,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:45:17,628.628 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 22:45:21,742.742 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:45:21,744.744 INFO    ] Checking for system updates...
[2026-08-25 22:45:21,780.780 INFO    ] 200
[2026-08-25 22:45:21,782.782 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:21,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:45:21,837.837 INFO    ] No update needed
[2026-08-25 22:45:21,839.839 INFO    ] Checking for camera pi updates...
[2026-08-25 22:45:21,873.873 INFO    ] 200
[2026-08-25 22:45:21,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:21,919.919 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:45:21,974.974 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:45:21,977.977 INFO    ] No camera update needed
[2026-08-25 22:45:21,979.979 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:45:21,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:45:21,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:45:21,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:45:24,032.032 INFO    ] ================================================
[2026-08-25 22:45:24,047.047 INFO    ] Launching Daemon at Tue Aug 25 22:45:24 IST 2026
[2026-08-25 22:45:24,058.058 INFO    ] ================================================
[2026-08-25 22:45:24,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:45:24
[2026-08-25 22:45:25,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:45:25,469.469 INFO    ] Initializing speech engine...
[2026-08-25 22:45:25,494.494 INFO    ] 2026-08-25 22:45:25
[2026-08-25 22:45:25,761.761 INFO    ] 2026-08-25 22:45:25
[2026-08-25 22:45:25,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:45:25,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:45:26,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:45:26,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:45:26,146.146 INFO    ] time= 25/08/2026 22:45:26
[2026-08-25 22:45:26,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:45:26,176.176 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:45:26,249.249 INFO    ] No existing commands found in stream
[2026-08-25 22:45:31,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:45:31,265.265 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-08-25 22:45:35,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:45:35,087.087 INFO    ] Checking for system updates...
[2026-08-25 22:45:35,122.122 INFO    ] 200
[2026-08-25 22:45:35,125.125 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:35,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:45:35,185.185 INFO    ] No update needed
[2026-08-25 22:45:35,187.187 INFO    ] Checking for camera pi updates...
[2026-08-25 22:45:35,220.220 INFO    ] 200
[2026-08-25 22:45:35,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:35,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:45:35,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:45:35,317.317 INFO    ] No camera update needed
[2026-08-25 22:45:35,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:45:35,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:45:35,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:45:35,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:45:37,372.372 INFO    ] ================================================
[2026-08-25 22:45:37,388.388 INFO    ] Launching Daemon at Tue Aug 25 22:45:37 IST 2026
[2026-08-25 22:45:37,400.400 INFO    ] ================================================
[2026-08-25 22:45:37,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:45:37
[2026-08-25 22:45:38,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:45:38,850.850 INFO    ] Initializing speech engine...
[2026-08-25 22:45:38,860.860 INFO    ] 2026-08-25 22:45:38
[2026-08-25 22:45:39,125.125 INFO    ] 2026-08-25 22:45:39
[2026-08-25 22:45:39,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:45:39,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:45:39,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:45:39,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:45:39,536.536 INFO    ] time= 25/08/2026 22:45:39
[2026-08-25 22:45:39,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:45:39,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:45:39,699.699 INFO    ] No existing commands found in stream
[2026-08-25 22:45:44,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:45:44,728.728 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 22:45:46,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:45:46,618.618 INFO    ] Checking for system updates...
[2026-08-25 22:45:46,653.653 INFO    ] 200
[2026-08-25 22:45:46,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:46,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:45:46,710.710 INFO    ] No update needed
[2026-08-25 22:45:46,712.712 INFO    ] Checking for camera pi updates...
[2026-08-25 22:45:46,745.745 INFO    ] 200
[2026-08-25 22:45:46,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:46,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:45:46,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:45:46,839.839 INFO    ] No camera update needed
[2026-08-25 22:45:46,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:45:46,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:45:46,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:45:46,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:45:48,895.895 INFO    ] ================================================
[2026-08-25 22:45:48,911.911 INFO    ] Launching Daemon at Tue Aug 25 22:45:48 IST 2026
[2026-08-25 22:45:48,922.922 INFO    ] ================================================
[2026-08-25 22:45:49,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:45:49
[2026-08-25 22:45:50,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:45:50,349.349 INFO    ] Initializing speech engine...
[2026-08-25 22:45:50,362.362 INFO    ] 2026-08-25 22:45:50
[2026-08-25 22:45:50,636.636 INFO    ] 2026-08-25 22:45:50
[2026-08-25 22:45:50,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:45:50,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:45:50,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:45:51,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:45:51,039.039 INFO    ] time= 25/08/2026 22:45:51
[2026-08-25 22:45:51,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:45:51,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:45:51,210.210 INFO    ] No existing commands found in stream
[2026-08-25 22:45:56,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:45:56,243.243 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 22:45:57,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:45:57,968.968 INFO    ] Checking for system updates...
[2026-08-25 22:45:58,004.004 INFO    ] 200
[2026-08-25 22:45:58,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:58,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:45:58,067.067 INFO    ] No update needed
[2026-08-25 22:45:58,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 22:45:58,104.104 INFO    ] 200
[2026-08-25 22:45:58,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:45:58,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:45:58,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:45:58,300.300 INFO    ] No camera update needed
[2026-08-25 22:45:58,303.303 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:45:58,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:45:58,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:45:58,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:46:00,357.357 INFO    ] ================================================
[2026-08-25 22:46:00,372.372 INFO    ] Launching Daemon at Tue Aug 25 22:46:00 IST 2026
[2026-08-25 22:46:00,383.383 INFO    ] ================================================
[2026-08-25 22:46:00,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:46:00
[2026-08-25 22:46:01,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:46:01,985.985 INFO    ] Initializing speech engine...
[2026-08-25 22:46:01,997.997 INFO    ] 2026-08-25 22:46:01
[2026-08-25 22:46:02,302.302 INFO    ] 2026-08-25 22:46:02
[2026-08-25 22:46:02,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:46:02,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:46:02,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:46:02,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:46:02,800.800 INFO    ] time= 25/08/2026 22:46:02
[2026-08-25 22:46:02,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:46:02,821.821 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:46:02,933.933 INFO    ] No existing commands found in stream
[2026-08-25 22:46:07,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:46:07,962.962 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 22:46:11,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:46:11,090.090 INFO    ] Checking for system updates...
[2026-08-25 22:46:11,126.126 INFO    ] 200
[2026-08-25 22:46:11,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:11,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:46:11,185.185 INFO    ] No update needed
[2026-08-25 22:46:11,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 22:46:11,224.224 INFO    ] 200
[2026-08-25 22:46:11,227.227 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:11,274.274 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:46:11,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:46:11,321.321 INFO    ] No camera update needed
[2026-08-25 22:46:11,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:46:11,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:46:11,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:46:11,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:46:13,379.379 INFO    ] ================================================
[2026-08-25 22:46:13,395.395 INFO    ] Launching Daemon at Tue Aug 25 22:46:13 IST 2026
[2026-08-25 22:46:13,405.405 INFO    ] ================================================
[2026-08-25 22:46:14,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:46:14
[2026-08-25 22:46:14,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:46:15,008.008 INFO    ] Initializing speech engine...
[2026-08-25 22:46:15,018.018 INFO    ] 2026-08-25 22:46:15
[2026-08-25 22:46:15,325.325 INFO    ] 2026-08-25 22:46:15
[2026-08-25 22:46:15,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:46:15,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:46:15,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:46:15,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:46:15,771.771 INFO    ] time= 25/08/2026 22:46:15
[2026-08-25 22:46:15,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:46:15,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:46:15,983.983 INFO    ] No existing commands found in stream
[2026-08-25 22:46:20,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:46:21,000.000 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-08-25 22:46:24,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:46:24,203.203 INFO    ] Checking for system updates...
[2026-08-25 22:46:24,239.239 INFO    ] 200
[2026-08-25 22:46:24,242.242 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:24,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:46:24,297.297 INFO    ] No update needed
[2026-08-25 22:46:24,300.300 INFO    ] Checking for camera pi updates...
[2026-08-25 22:46:24,334.334 INFO    ] 200
[2026-08-25 22:46:24,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:24,378.378 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:46:24,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:46:24,425.425 INFO    ] No camera update needed
[2026-08-25 22:46:24,427.427 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:46:24,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:46:24,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:46:24,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:46:26,481.481 INFO    ] ================================================
[2026-08-25 22:46:26,496.496 INFO    ] Launching Daemon at Tue Aug 25 22:46:26 IST 2026
[2026-08-25 22:46:26,507.507 INFO    ] ================================================
[2026-08-25 22:46:27,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:46:27
[2026-08-25 22:46:27,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:46:28,131.131 INFO    ] Initializing speech engine...
[2026-08-25 22:46:28,137.137 INFO    ] 2026-08-25 22:46:28
[2026-08-25 22:46:28,410.410 INFO    ] 2026-08-25 22:46:28
[2026-08-25 22:46:28,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:46:28,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:46:28,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:46:28,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:46:28,889.889 INFO    ] time= 25/08/2026 22:46:28
[2026-08-25 22:46:28,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:46:28,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:46:29,128.128 INFO    ] No existing commands found in stream
[2026-08-25 22:46:34,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:46:34,153.153 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-08-25 22:46:36,788.788 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:46:36,791.791 INFO    ] Checking for system updates...
[2026-08-25 22:46:36,827.827 INFO    ] 200
[2026-08-25 22:46:36,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:36,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:46:36,885.885 INFO    ] No update needed
[2026-08-25 22:46:36,887.887 INFO    ] Checking for camera pi updates...
[2026-08-25 22:46:36,921.921 INFO    ] 200
[2026-08-25 22:46:36,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:36,968.968 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:46:37,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:46:37,027.027 INFO    ] No camera update needed
[2026-08-25 22:46:37,030.030 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:46:37,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:46:37,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:46:37,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:46:39,083.083 INFO    ] ================================================
[2026-08-25 22:46:39,098.098 INFO    ] Launching Daemon at Tue Aug 25 22:46:39 IST 2026
[2026-08-25 22:46:39,109.109 INFO    ] ================================================
[2026-08-25 22:46:39,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:46:39
[2026-08-25 22:46:40,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:46:40,547.547 INFO    ] Initializing speech engine...
[2026-08-25 22:46:40,557.557 INFO    ] 2026-08-25 22:46:40
[2026-08-25 22:46:40,805.805 INFO    ] 2026-08-25 22:46:40
[2026-08-25 22:46:40,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:46:41,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:46:41,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:46:41,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:46:41,163.163 INFO    ] time= 25/08/2026 22:46:41
[2026-08-25 22:46:41,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:46:41,186.186 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:46:41,257.257 INFO    ] No existing commands found in stream
[2026-08-25 22:46:46,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:46:46,290.290 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-08-25 22:46:47,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:46:47,142.142 INFO    ] Checking for system updates...
[2026-08-25 22:46:47,178.178 INFO    ] 200
[2026-08-25 22:46:47,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:47,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:46:47,235.235 INFO    ] No update needed
[2026-08-25 22:46:47,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 22:46:47,271.271 INFO    ] 200
[2026-08-25 22:46:47,273.273 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:47,313.313 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:46:47,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:46:47,373.373 INFO    ] No camera update needed
[2026-08-25 22:46:47,375.375 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:46:47,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:46:47,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:46:47,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:46:49,429.429 INFO    ] ================================================
[2026-08-25 22:46:49,445.445 INFO    ] Launching Daemon at Tue Aug 25 22:46:49 IST 2026
[2026-08-25 22:46:49,456.456 INFO    ] ================================================
[2026-08-25 22:46:50,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:46:50
[2026-08-25 22:46:50,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:46:50,882.882 INFO    ] Initializing speech engine...
[2026-08-25 22:46:50,903.903 INFO    ] 2026-08-25 22:46:50
[2026-08-25 22:46:51,169.169 INFO    ] 2026-08-25 22:46:51
[2026-08-25 22:46:51,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:46:51,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:46:51,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:46:51,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:46:51,541.541 INFO    ] time= 25/08/2026 22:46:51
[2026-08-25 22:46:51,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:46:51,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:46:51,663.663 INFO    ] No existing commands found in stream
[2026-08-25 22:46:56,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:46:56,678.678 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 22:46:58,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:46:58,923.923 INFO    ] Checking for system updates...
[2026-08-25 22:46:58,958.958 INFO    ] 200
[2026-08-25 22:46:58,961.961 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:59,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:46:59,016.016 INFO    ] No update needed
[2026-08-25 22:46:59,018.018 INFO    ] Checking for camera pi updates...
[2026-08-25 22:46:59,052.052 INFO    ] 200
[2026-08-25 22:46:59,054.054 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:46:59,094.094 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:46:59,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:46:59,144.144 INFO    ] No camera update needed
[2026-08-25 22:46:59,147.147 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:46:59,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:46:59,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:46:59,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:47:01,200.200 INFO    ] ================================================
[2026-08-25 22:47:01,215.215 INFO    ] Launching Daemon at Tue Aug 25 22:47:01 IST 2026
[2026-08-25 22:47:01,226.226 INFO    ] ================================================
[2026-08-25 22:47:01,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:47:01
[2026-08-25 22:47:02,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:47:02,909.909 INFO    ] Initializing speech engine...
[2026-08-25 22:47:02,913.913 INFO    ] 2026-08-25 22:47:02
[2026-08-25 22:47:03,238.238 INFO    ] 2026-08-25 22:47:03
[2026-08-25 22:47:03,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:47:03,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:47:03,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:47:03,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:47:03,724.724 INFO    ] time= 25/08/2026 22:47:03
[2026-08-25 22:47:03,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:47:03,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:47:03,946.946 INFO    ] No existing commands found in stream
[2026-08-25 22:47:08,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:47:08,980.980 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-08-25 22:47:11,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:47:11,786.786 INFO    ] Checking for system updates...
[2026-08-25 22:47:11,827.827 INFO    ] 200
[2026-08-25 22:47:11,830.830 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:11,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:47:11,893.893 INFO    ] No update needed
[2026-08-25 22:47:11,896.896 INFO    ] Checking for camera pi updates...
[2026-08-25 22:47:11,937.937 INFO    ] 200
[2026-08-25 22:47:11,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:11,990.990 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:47:12,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:47:12,041.041 INFO    ] No camera update needed
[2026-08-25 22:47:12,044.044 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:47:12,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:47:12,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:47:12,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:47:14,105.105 INFO    ] ================================================
[2026-08-25 22:47:14,121.121 INFO    ] Launching Daemon at Tue Aug 25 22:47:14 IST 2026
[2026-08-25 22:47:14,132.132 INFO    ] ================================================
[2026-08-25 22:47:14,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:47:14
[2026-08-25 22:47:15,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:47:15,565.565 INFO    ] Initializing speech engine...
[2026-08-25 22:47:15,573.573 INFO    ] 2026-08-25 22:47:15
[2026-08-25 22:47:15,868.868 INFO    ] 2026-08-25 22:47:15
[2026-08-25 22:47:15,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:47:16,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:47:16,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:47:16,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:47:16,241.241 INFO    ] time= 25/08/2026 22:47:16
[2026-08-25 22:47:16,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:47:16,287.287 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:47:16,419.419 INFO    ] No existing commands found in stream
[2026-08-25 22:47:21,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:47:21,450.450 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 22:47:24,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:47:24,943.943 INFO    ] Checking for system updates...
[2026-08-25 22:47:24,978.978 INFO    ] 200
[2026-08-25 22:47:24,980.980 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:25,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:47:25,040.040 INFO    ] No update needed
[2026-08-25 22:47:25,042.042 INFO    ] Checking for camera pi updates...
[2026-08-25 22:47:25,076.076 INFO    ] 200
[2026-08-25 22:47:25,079.079 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:25,119.119 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:47:25,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:47:25,179.179 INFO    ] No camera update needed
[2026-08-25 22:47:25,181.181 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:47:25,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:47:25,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:47:25,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:47:27,236.236 INFO    ] ================================================
[2026-08-25 22:47:27,252.252 INFO    ] Launching Daemon at Tue Aug 25 22:47:27 IST 2026
[2026-08-25 22:47:27,263.263 INFO    ] ================================================
[2026-08-25 22:47:27,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:47:27
[2026-08-25 22:47:28,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:47:28,685.685 INFO    ] Initializing speech engine...
[2026-08-25 22:47:28,701.701 INFO    ] 2026-08-25 22:47:28
[2026-08-25 22:47:28,980.980 INFO    ] 2026-08-25 22:47:28
[2026-08-25 22:47:29,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:47:29,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:47:29,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:47:29,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:47:29,358.358 INFO    ] time= 25/08/2026 22:47:29
[2026-08-25 22:47:29,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:47:29,400.400 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:47:29,481.481 INFO    ] No existing commands found in stream
[2026-08-25 22:47:34,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:47:34,502.502 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-08-25 22:47:35,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:47:35,543.543 INFO    ] Checking for system updates...
[2026-08-25 22:47:35,578.578 INFO    ] 200
[2026-08-25 22:47:35,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:35,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:47:35,635.635 INFO    ] No update needed
[2026-08-25 22:47:35,638.638 INFO    ] Checking for camera pi updates...
[2026-08-25 22:47:35,674.674 INFO    ] 200
[2026-08-25 22:47:35,677.677 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:35,717.717 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:47:35,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:47:35,782.782 INFO    ] No camera update needed
[2026-08-25 22:47:35,785.785 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:47:35,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:47:35,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:47:35,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:47:37,837.837 INFO    ] ================================================
[2026-08-25 22:47:37,853.853 INFO    ] Launching Daemon at Tue Aug 25 22:47:37 IST 2026
[2026-08-25 22:47:37,864.864 INFO    ] ================================================
[2026-08-25 22:47:38,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:47:38
[2026-08-25 22:47:39,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:47:39,302.302 INFO    ] Initializing speech engine...
[2026-08-25 22:47:39,328.328 INFO    ] 2026-08-25 22:47:39
[2026-08-25 22:47:39,589.589 INFO    ] 2026-08-25 22:47:39
[2026-08-25 22:47:39,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:47:39,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:47:39,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:47:39,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:47:39,949.949 INFO    ] time= 25/08/2026 22:47:39
[2026-08-25 22:47:39,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:47:39,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:47:40,049.049 INFO    ] No existing commands found in stream
[2026-08-25 22:47:45,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:47:45,069.069 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 22:47:48,515.515 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:47:48,518.518 INFO    ] Checking for system updates...
[2026-08-25 22:47:48,554.554 INFO    ] 200
[2026-08-25 22:47:48,556.556 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:48,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:47:48,612.612 INFO    ] No update needed
[2026-08-25 22:47:48,615.615 INFO    ] Checking for camera pi updates...
[2026-08-25 22:47:48,652.652 INFO    ] 200
[2026-08-25 22:47:48,654.654 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:47:48,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:47:48,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:47:48,752.752 INFO    ] No camera update needed
[2026-08-25 22:47:48,754.754 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:47:48,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:47:48,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:47:48,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:47:50,810.810 INFO    ] ================================================
[2026-08-25 22:47:50,826.826 INFO    ] Launching Daemon at Tue Aug 25 22:47:50 IST 2026
[2026-08-25 22:47:50,837.837 INFO    ] ================================================
[2026-08-25 22:47:51,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:47:51
[2026-08-25 22:47:51,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:47:52,255.255 INFO    ] Initializing speech engine...
[2026-08-25 22:47:52,264.264 INFO    ] 2026-08-25 22:47:52
[2026-08-25 22:47:52,524.524 INFO    ] 2026-08-25 22:47:52
[2026-08-25 22:47:52,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:47:52,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:47:52,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:47:52,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:47:52,980.980 INFO    ] time= 25/08/2026 22:47:52
[2026-08-25 22:47:53,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:47:53,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:47:53,199.199 INFO    ] No existing commands found in stream
[2026-08-25 22:47:58,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:47:58,229.229 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 22:48:00,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:48:00,660.660 INFO    ] Checking for system updates...
[2026-08-25 22:48:00,700.700 INFO    ] 200
[2026-08-25 22:48:00,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:00,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:48:00,759.759 INFO    ] No update needed
[2026-08-25 22:48:00,762.762 INFO    ] Checking for camera pi updates...
[2026-08-25 22:48:00,796.796 INFO    ] 200
[2026-08-25 22:48:00,799.799 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:00,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:48:01,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:48:01,005.005 INFO    ] No camera update needed
[2026-08-25 22:48:01,008.008 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:48:01,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:48:01,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:48:01,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:48:03,067.067 INFO    ] ================================================
[2026-08-25 22:48:03,084.084 INFO    ] Launching Daemon at Tue Aug 25 22:48:03 IST 2026
[2026-08-25 22:48:03,094.094 INFO    ] ================================================
[2026-08-25 22:48:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:48:03
[2026-08-25 22:48:04,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:48:04,535.535 INFO    ] Initializing speech engine...
[2026-08-25 22:48:04,543.543 INFO    ] 2026-08-25 22:48:04
[2026-08-25 22:48:04,836.836 INFO    ] 2026-08-25 22:48:04
[2026-08-25 22:48:04,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:48:05,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:48:05,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:48:05,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:48:05,215.215 INFO    ] time= 25/08/2026 22:48:05
[2026-08-25 22:48:05,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:48:05,241.241 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:48:05,342.342 INFO    ] No existing commands found in stream
[2026-08-25 22:48:10,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:48:10,357.357 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-08-25 22:48:11,113.113 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:48:11,116.116 INFO    ] Checking for system updates...
[2026-08-25 22:48:11,151.151 INFO    ] 200
[2026-08-25 22:48:11,153.153 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:11,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:48:11,215.215 INFO    ] No update needed
[2026-08-25 22:48:11,217.217 INFO    ] Checking for camera pi updates...
[2026-08-25 22:48:11,251.251 INFO    ] 200
[2026-08-25 22:48:11,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:11,299.299 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:48:11,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:48:11,353.353 INFO    ] No camera update needed
[2026-08-25 22:48:11,356.356 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:48:11,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:48:11,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:48:11,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:48:13,408.408 INFO    ] ================================================
[2026-08-25 22:48:13,423.423 INFO    ] Launching Daemon at Tue Aug 25 22:48:13 IST 2026
[2026-08-25 22:48:13,435.435 INFO    ] ================================================
[2026-08-25 22:48:13,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:48:13
[2026-08-25 22:48:14,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:48:14,839.839 INFO    ] Initializing speech engine...
[2026-08-25 22:48:14,846.846 INFO    ] 2026-08-25 22:48:14
[2026-08-25 22:48:15,152.152 INFO    ] 2026-08-25 22:48:15
[2026-08-25 22:48:15,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:48:15,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:48:15,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:48:15,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:48:15,537.537 INFO    ] time= 25/08/2026 22:48:15
[2026-08-25 22:48:15,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:48:15,579.579 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:48:15,662.662 INFO    ] No existing commands found in stream
[2026-08-25 22:48:20,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:48:20,678.678 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-08-25 22:48:23,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:48:23,116.116 INFO    ] Checking for system updates...
[2026-08-25 22:48:23,152.152 INFO    ] 200
[2026-08-25 22:48:23,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:23,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:48:23,217.217 INFO    ] No update needed
[2026-08-25 22:48:23,219.219 INFO    ] Checking for camera pi updates...
[2026-08-25 22:48:23,253.253 INFO    ] 200
[2026-08-25 22:48:23,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:23,296.296 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:48:23,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:48:23,355.355 INFO    ] No camera update needed
[2026-08-25 22:48:23,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:48:23,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:48:23,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:48:23,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:48:25,409.409 INFO    ] ================================================
[2026-08-25 22:48:25,425.425 INFO    ] Launching Daemon at Tue Aug 25 22:48:25 IST 2026
[2026-08-25 22:48:25,436.436 INFO    ] ================================================
[2026-08-25 22:48:26,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:48:26
[2026-08-25 22:48:26,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:48:26,948.948 INFO    ] Initializing speech engine...
[2026-08-25 22:48:26,957.957 INFO    ] 2026-08-25 22:48:26
[2026-08-25 22:48:27,274.274 INFO    ] 2026-08-25 22:48:27
[2026-08-25 22:48:27,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:48:27,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:48:27,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:48:27,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:48:27,782.782 INFO    ] time= 25/08/2026 22:48:27
[2026-08-25 22:48:27,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:48:27,819.819 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:48:27,947.947 INFO    ] No existing commands found in stream
[2026-08-25 22:48:32,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:48:32,971.971 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 22:48:34,488.488 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:48:34,491.491 INFO    ] Checking for system updates...
[2026-08-25 22:48:34,527.527 INFO    ] 200
[2026-08-25 22:48:34,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:34,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:48:34,585.585 INFO    ] No update needed
[2026-08-25 22:48:34,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 22:48:34,621.621 INFO    ] 200
[2026-08-25 22:48:34,624.624 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:34,666.666 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:48:34,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:48:34,715.715 INFO    ] No camera update needed
[2026-08-25 22:48:34,717.717 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:48:34,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:48:34,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:48:34,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:48:36,769.769 INFO    ] ================================================
[2026-08-25 22:48:36,785.785 INFO    ] Launching Daemon at Tue Aug 25 22:48:36 IST 2026
[2026-08-25 22:48:36,796.796 INFO    ] ================================================
[2026-08-25 22:48:37,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:48:37
[2026-08-25 22:48:37,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:48:38,224.224 INFO    ] Initializing speech engine...
[2026-08-25 22:48:38,234.234 INFO    ] 2026-08-25 22:48:38
[2026-08-25 22:48:38,493.493 INFO    ] 2026-08-25 22:48:38
[2026-08-25 22:48:38,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:48:38,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:48:38,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:48:38,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:48:38,979.979 INFO    ] time= 25/08/2026 22:48:38
[2026-08-25 22:48:39,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:48:39,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:48:39,196.196 INFO    ] No existing commands found in stream
[2026-08-25 22:48:44,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:48:44,224.224 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-08-25 22:48:47,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:48:47,688.688 INFO    ] Checking for system updates...
[2026-08-25 22:48:47,726.726 INFO    ] 200
[2026-08-25 22:48:47,729.729 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:47,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:48:47,783.783 INFO    ] No update needed
[2026-08-25 22:48:47,785.785 INFO    ] Checking for camera pi updates...
[2026-08-25 22:48:47,822.822 INFO    ] 200
[2026-08-25 22:48:47,825.825 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:48:47,866.866 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:48:47,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:48:47,918.918 INFO    ] No camera update needed
[2026-08-25 22:48:47,920.920 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:48:47,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:48:47,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:48:47,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:48:49,973.973 INFO    ] ================================================
[2026-08-25 22:48:49,988.988 INFO    ] Launching Daemon at Tue Aug 25 22:48:49 IST 2026
[2026-08-25 22:48:50,000.000 INFO    ] ================================================
[2026-08-25 22:48:50,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:48:50
[2026-08-25 22:48:51,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:48:51,589.589 INFO    ] Initializing speech engine...
[2026-08-25 22:48:51,604.604 INFO    ] 2026-08-25 22:48:51
[2026-08-25 22:48:51,874.874 INFO    ] 2026-08-25 22:48:51
[2026-08-25 22:48:51,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:48:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:48:52,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:48:52,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:48:52,366.366 INFO    ] time= 25/08/2026 22:48:52
[2026-08-25 22:48:52,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:48:52,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:48:52,563.563 INFO    ] No existing commands found in stream
[2026-08-25 22:48:57,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:48:57,597.597 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 22:49:01,285.285 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:49:01,290.290 INFO    ] Checking for system updates...
[2026-08-25 22:49:01,363.363 INFO    ] 200
[2026-08-25 22:49:01,368.368 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:01,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:49:01,506.506 INFO    ] No update needed
[2026-08-25 22:49:01,511.511 INFO    ] Checking for camera pi updates...
[2026-08-25 22:49:01,570.570 INFO    ] 200
[2026-08-25 22:49:01,574.574 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:01,628.628 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:49:01,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:49:01,693.693 INFO    ] No camera update needed
[2026-08-25 22:49:01,697.697 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:49:01,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:49:01,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:49:01,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:49:03,763.763 INFO    ] ================================================
[2026-08-25 22:49:03,779.779 INFO    ] Launching Daemon at Tue Aug 25 22:49:03 IST 2026
[2026-08-25 22:49:03,790.790 INFO    ] ================================================
[2026-08-25 22:49:04,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:49:04
[2026-08-25 22:49:04,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:49:05,227.227 INFO    ] Initializing speech engine...
[2026-08-25 22:49:05,233.233 INFO    ] 2026-08-25 22:49:05
[2026-08-25 22:49:05,529.529 INFO    ] 2026-08-25 22:49:05
[2026-08-25 22:49:05,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:49:05,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:49:05,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:49:05,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:49:05,939.939 INFO    ] time= 25/08/2026 22:49:05
[2026-08-25 22:49:05,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:49:05,954.954 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:49:06,034.034 INFO    ] No existing commands found in stream
[2026-08-25 22:49:11,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:49:11,072.072 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-08-25 22:49:12,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:49:12,961.961 INFO    ] Checking for system updates...
[2026-08-25 22:49:12,998.998 INFO    ] 200
[2026-08-25 22:49:13,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:13,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:49:13,059.059 INFO    ] No update needed
[2026-08-25 22:49:13,061.061 INFO    ] Checking for camera pi updates...
[2026-08-25 22:49:13,094.094 INFO    ] 200
[2026-08-25 22:49:13,097.097 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:13,137.137 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:49:13,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:49:13,190.190 INFO    ] No camera update needed
[2026-08-25 22:49:13,192.192 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:49:13,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:49:13,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:49:13,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:49:15,247.247 INFO    ] ================================================
[2026-08-25 22:49:15,262.262 INFO    ] Launching Daemon at Tue Aug 25 22:49:15 IST 2026
[2026-08-25 22:49:15,273.273 INFO    ] ================================================
[2026-08-25 22:49:15,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:49:15
[2026-08-25 22:49:16,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:49:16,704.704 INFO    ] Initializing speech engine...
[2026-08-25 22:49:16,711.711 INFO    ] 2026-08-25 22:49:16
[2026-08-25 22:49:16,956.956 INFO    ] 2026-08-25 22:49:16
[2026-08-25 22:49:16,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:49:17,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:49:17,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:49:17,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:49:17,426.426 INFO    ] time= 25/08/2026 22:49:17
[2026-08-25 22:49:17,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:49:17,518.518 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:49:17,655.655 INFO    ] No existing commands found in stream
[2026-08-25 22:49:22,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:49:22,679.679 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-08-25 22:49:23,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:49:23,381.381 INFO    ] Checking for system updates...
[2026-08-25 22:49:23,417.417 INFO    ] 200
[2026-08-25 22:49:23,419.419 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:23,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:49:23,480.480 INFO    ] No update needed
[2026-08-25 22:49:23,482.482 INFO    ] Checking for camera pi updates...
[2026-08-25 22:49:23,515.515 INFO    ] 200
[2026-08-25 22:49:23,518.518 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:23,560.560 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:49:23,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:49:23,609.609 INFO    ] No camera update needed
[2026-08-25 22:49:23,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:49:23,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:49:23,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:49:23,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:49:25,664.664 INFO    ] ================================================
[2026-08-25 22:49:25,679.679 INFO    ] Launching Daemon at Tue Aug 25 22:49:25 IST 2026
[2026-08-25 22:49:25,690.690 INFO    ] ================================================
[2026-08-25 22:49:26,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:49:26
[2026-08-25 22:49:26,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:49:27,287.287 INFO    ] Initializing speech engine...
[2026-08-25 22:49:27,301.301 INFO    ] 2026-08-25 22:49:27
[2026-08-25 22:49:27,569.569 INFO    ] 2026-08-25 22:49:27
[2026-08-25 22:49:27,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:49:27,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:49:27,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:49:28,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:49:28,113.113 INFO    ] time= 25/08/2026 22:49:28
[2026-08-25 22:49:28,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:49:28,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:49:28,271.271 INFO    ] No existing commands found in stream
[2026-08-25 22:49:33,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:49:33,302.302 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 22:49:34,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:49:34,074.074 INFO    ] Checking for system updates...
[2026-08-25 22:49:34,110.110 INFO    ] 200
[2026-08-25 22:49:34,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:34,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:49:34,173.173 INFO    ] No update needed
[2026-08-25 22:49:34,176.176 INFO    ] Checking for camera pi updates...
[2026-08-25 22:49:34,210.210 INFO    ] 200
[2026-08-25 22:49:34,212.212 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:34,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:49:34,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:49:34,300.300 INFO    ] No camera update needed
[2026-08-25 22:49:34,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:49:34,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:49:34,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:49:34,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:49:36,362.362 INFO    ] ================================================
[2026-08-25 22:49:36,377.377 INFO    ] Launching Daemon at Tue Aug 25 22:49:36 IST 2026
[2026-08-25 22:49:36,388.388 INFO    ] ================================================
[2026-08-25 22:49:36,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:49:36
[2026-08-25 22:49:37,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:49:37,807.807 INFO    ] Initializing speech engine...
[2026-08-25 22:49:37,815.815 INFO    ] 2026-08-25 22:49:37
[2026-08-25 22:49:38,110.110 INFO    ] 2026-08-25 22:49:38
[2026-08-25 22:49:38,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:49:38,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:49:38,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:49:38,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:49:38,461.461 INFO    ] time= 25/08/2026 22:49:38
[2026-08-25 22:49:38,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:49:38,487.487 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:49:38,592.592 INFO    ] No existing commands found in stream
[2026-08-25 22:49:43,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:49:43,627.627 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-08-25 22:49:45,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:49:45,896.896 INFO    ] Checking for system updates...
[2026-08-25 22:49:45,931.931 INFO    ] 200
[2026-08-25 22:49:45,934.934 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:45,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:49:45,996.996 INFO    ] No update needed
[2026-08-25 22:49:45,998.998 INFO    ] Checking for camera pi updates...
[2026-08-25 22:49:46,036.036 INFO    ] 200
[2026-08-25 22:49:46,039.039 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:46,089.089 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:49:46,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:49:46,150.150 INFO    ] No camera update needed
[2026-08-25 22:49:46,153.153 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:49:46,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:49:46,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:49:46,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:49:48,215.215 INFO    ] ================================================
[2026-08-25 22:49:48,230.230 INFO    ] Launching Daemon at Tue Aug 25 22:49:48 IST 2026
[2026-08-25 22:49:48,242.242 INFO    ] ================================================
[2026-08-25 22:49:48,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:49:48
[2026-08-25 22:49:49,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:49:49,681.681 INFO    ] Initializing speech engine...
[2026-08-25 22:49:49,693.693 INFO    ] 2026-08-25 22:49:49
[2026-08-25 22:49:49,982.982 INFO    ] 2026-08-25 22:49:49
[2026-08-25 22:49:50,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:49:50,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:49:50,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:49:50,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:49:50,336.336 INFO    ] time= 25/08/2026 22:49:50
[2026-08-25 22:49:50,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:49:50,364.364 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:49:50,491.491 INFO    ] No existing commands found in stream
[2026-08-25 22:49:55,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:49:55,503.503 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-08-25 22:49:59,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:49:59,869.869 INFO    ] Checking for system updates...
[2026-08-25 22:49:59,906.906 INFO    ] 200
[2026-08-25 22:49:59,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:49:59,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:49:59,966.966 INFO    ] No update needed
[2026-08-25 22:49:59,968.968 INFO    ] Checking for camera pi updates...
[2026-08-25 22:50:00,003.003 INFO    ] 200
[2026-08-25 22:50:00,006.006 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:00,052.052 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:50:00,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:50:00,106.106 INFO    ] No camera update needed
[2026-08-25 22:50:00,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:50:00,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:50:00,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:50:00,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:50:02,177.177 INFO    ] ================================================
[2026-08-25 22:50:02,207.207 INFO    ] Launching Daemon at Tue Aug 25 22:50:02 IST 2026
[2026-08-25 22:50:02,229.229 INFO    ] ================================================
[2026-08-25 22:50:02,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:50:02
[2026-08-25 22:50:03,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:50:03,839.839 INFO    ] Initializing speech engine...
[2026-08-25 22:50:03,848.848 INFO    ] 2026-08-25 22:50:03
[2026-08-25 22:50:04,096.096 INFO    ] 2026-08-25 22:50:04
[2026-08-25 22:50:04,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:50:04,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:50:04,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:50:04,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:50:04,573.573 INFO    ] time= 25/08/2026 22:50:04
[2026-08-25 22:50:04,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:50:04,665.665 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:50:04,799.799 INFO    ] No existing commands found in stream
[2026-08-25 22:50:09,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:50:09,825.825 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-08-25 22:50:12,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:50:12,483.483 INFO    ] Checking for system updates...
[2026-08-25 22:50:12,519.519 INFO    ] 200
[2026-08-25 22:50:12,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:12,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:50:12,582.582 INFO    ] No update needed
[2026-08-25 22:50:12,584.584 INFO    ] Checking for camera pi updates...
[2026-08-25 22:50:12,618.618 INFO    ] 200
[2026-08-25 22:50:12,621.621 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:12,669.669 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:50:12,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:50:12,729.729 INFO    ] No camera update needed
[2026-08-25 22:50:12,731.731 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:50:12,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:50:12,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:50:12,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:50:14,786.786 INFO    ] ================================================
[2026-08-25 22:50:14,801.801 INFO    ] Launching Daemon at Tue Aug 25 22:50:14 IST 2026
[2026-08-25 22:50:14,812.812 INFO    ] ================================================
[2026-08-25 22:50:15,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:50:15
[2026-08-25 22:50:15,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:50:16,232.232 INFO    ] Initializing speech engine...
[2026-08-25 22:50:16,247.247 INFO    ] 2026-08-25 22:50:16
[2026-08-25 22:50:16,516.516 INFO    ] 2026-08-25 22:50:16
[2026-08-25 22:50:16,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:50:16,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:50:16,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:50:16,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:50:16,873.873 INFO    ] time= 25/08/2026 22:50:16
[2026-08-25 22:50:16,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:50:16,895.895 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:50:16,988.988 INFO    ] No existing commands found in stream
[2026-08-25 22:50:22,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:50:22,021.021 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-08-25 22:50:23,281.281 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:50:23,284.284 INFO    ] Checking for system updates...
[2026-08-25 22:50:23,323.323 INFO    ] 200
[2026-08-25 22:50:23,326.326 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:23,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:50:23,381.381 INFO    ] No update needed
[2026-08-25 22:50:23,384.384 INFO    ] Checking for camera pi updates...
[2026-08-25 22:50:23,418.418 INFO    ] 200
[2026-08-25 22:50:23,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:23,462.462 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:50:23,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:50:23,517.517 INFO    ] No camera update needed
[2026-08-25 22:50:23,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:50:23,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:50:23,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:50:23,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:50:25,574.574 INFO    ] ================================================
[2026-08-25 22:50:25,589.589 INFO    ] Launching Daemon at Tue Aug 25 22:50:25 IST 2026
[2026-08-25 22:50:25,600.600 INFO    ] ================================================
[2026-08-25 22:50:26,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:50:26
[2026-08-25 22:50:26,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:50:27,105.105 INFO    ] Initializing speech engine...
[2026-08-25 22:50:27,121.121 INFO    ] 2026-08-25 22:50:27
[2026-08-25 22:50:27,406.406 INFO    ] 2026-08-25 22:50:27
[2026-08-25 22:50:27,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:50:27,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:50:27,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:50:27,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:50:27,821.821 INFO    ] time= 25/08/2026 22:50:27
[2026-08-25 22:50:27,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:50:27,866.866 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:50:28,014.014 INFO    ] No existing commands found in stream
[2026-08-25 22:50:33,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:50:33,048.048 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-08-25 22:50:35,231.231 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:50:35,234.234 INFO    ] Checking for system updates...
[2026-08-25 22:50:35,269.269 INFO    ] 200
[2026-08-25 22:50:35,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:35,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:50:35,328.328 INFO    ] No update needed
[2026-08-25 22:50:35,331.331 INFO    ] Checking for camera pi updates...
[2026-08-25 22:50:35,367.367 INFO    ] 200
[2026-08-25 22:50:35,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:35,414.414 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:50:35,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:50:35,465.465 INFO    ] No camera update needed
[2026-08-25 22:50:35,467.467 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:50:35,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:50:35,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:50:35,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:50:37,520.520 INFO    ] ================================================
[2026-08-25 22:50:37,535.535 INFO    ] Launching Daemon at Tue Aug 25 22:50:37 IST 2026
[2026-08-25 22:50:37,546.546 INFO    ] ================================================
[2026-08-25 22:50:38,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:50:38
[2026-08-25 22:50:38,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:50:39,000.000 INFO    ] Initializing speech engine...
[2026-08-25 22:50:39,009.009 INFO    ] 2026-08-25 22:50:39
[2026-08-25 22:50:39,308.308 INFO    ] 2026-08-25 22:50:39
[2026-08-25 22:50:39,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:50:39,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:50:39,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:50:39,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:50:39,733.733 INFO    ] time= 25/08/2026 22:50:39
[2026-08-25 22:50:39,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:50:39,789.789 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:50:39,917.917 INFO    ] No existing commands found in stream
[2026-08-25 22:50:44,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:50:44,945.945 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 22:50:48,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:50:48,759.759 INFO    ] Checking for system updates...
[2026-08-25 22:50:48,804.804 INFO    ] 200
[2026-08-25 22:50:48,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:48,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:50:48,863.863 INFO    ] No update needed
[2026-08-25 22:50:48,866.866 INFO    ] Checking for camera pi updates...
[2026-08-25 22:50:48,904.904 INFO    ] 200
[2026-08-25 22:50:48,907.907 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:48,952.952 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:50:49,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:50:49,004.004 INFO    ] No camera update needed
[2026-08-25 22:50:49,006.006 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:50:49,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:50:49,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:50:49,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:50:51,061.061 INFO    ] ================================================
[2026-08-25 22:50:51,077.077 INFO    ] Launching Daemon at Tue Aug 25 22:50:51 IST 2026
[2026-08-25 22:50:51,088.088 INFO    ] ================================================
[2026-08-25 22:50:51,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:50:51
[2026-08-25 22:50:52,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:50:52,575.575 INFO    ] Initializing speech engine...
[2026-08-25 22:50:52,585.585 INFO    ] 2026-08-25 22:50:52
[2026-08-25 22:50:52,842.842 INFO    ] 2026-08-25 22:50:52
[2026-08-25 22:50:52,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:50:53,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:50:53,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:50:53,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:50:53,225.225 INFO    ] time= 25/08/2026 22:50:53
[2026-08-25 22:50:53,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:50:53,284.284 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:50:53,412.412 INFO    ] No existing commands found in stream
[2026-08-25 22:50:58,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:50:58,440.440 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-08-25 22:50:59,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:50:59,665.665 INFO    ] Checking for system updates...
[2026-08-25 22:50:59,701.701 INFO    ] 200
[2026-08-25 22:50:59,703.703 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:59,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:50:59,758.758 INFO    ] No update needed
[2026-08-25 22:50:59,760.760 INFO    ] Checking for camera pi updates...
[2026-08-25 22:50:59,795.795 INFO    ] 200
[2026-08-25 22:50:59,797.797 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:50:59,839.839 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:50:59,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:50:59,896.896 INFO    ] No camera update needed
[2026-08-25 22:50:59,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:50:59,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:50:59,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:50:59,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:51:01,954.954 INFO    ] ================================================
[2026-08-25 22:51:01,989.989 INFO    ] Launching Daemon at Tue Aug 25 22:51:01 IST 2026
[2026-08-25 22:51:02,009.009 INFO    ] ================================================
[2026-08-25 22:51:02,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:51:02
[2026-08-25 22:51:03,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:51:03,654.654 INFO    ] Initializing speech engine...
[2026-08-25 22:51:03,667.667 INFO    ] 2026-08-25 22:51:03
[2026-08-25 22:51:03,936.936 INFO    ] 2026-08-25 22:51:03
[2026-08-25 22:51:03,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:51:04,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:51:04,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:51:04,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:51:04,408.408 INFO    ] time= 25/08/2026 22:51:04
[2026-08-25 22:51:04,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:51:04,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:51:04,640.640 INFO    ] No existing commands found in stream
[2026-08-25 22:51:09,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:51:09,668.668 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 22:51:14,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:51:14,077.077 INFO    ] Checking for system updates...
[2026-08-25 22:51:14,113.113 INFO    ] 200
[2026-08-25 22:51:14,116.116 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:14,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:14,180.180 INFO    ] No update needed
[2026-08-25 22:51:14,182.182 INFO    ] Checking for camera pi updates...
[2026-08-25 22:51:14,216.216 INFO    ] 200
[2026-08-25 22:51:14,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:14,261.261 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:51:14,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:14,316.316 INFO    ] No camera update needed
[2026-08-25 22:51:14,318.318 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:51:14,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:51:14,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:51:14,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:51:16,372.372 INFO    ] ================================================
[2026-08-25 22:51:16,388.388 INFO    ] Launching Daemon at Tue Aug 25 22:51:16 IST 2026
[2026-08-25 22:51:16,400.400 INFO    ] ================================================
[2026-08-25 22:51:17,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:51:16
[2026-08-25 22:51:17,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:51:17,915.915 INFO    ] Initializing speech engine...
[2026-08-25 22:51:17,929.929 INFO    ] 2026-08-25 22:51:17
[2026-08-25 22:51:18,190.190 INFO    ] 2026-08-25 22:51:18
[2026-08-25 22:51:18,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:51:18,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:51:18,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:51:18,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:51:18,582.582 INFO    ] time= 25/08/2026 22:51:18
[2026-08-25 22:51:18,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:51:18,631.631 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:51:18,753.753 INFO    ] No existing commands found in stream
[2026-08-25 22:51:23,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:51:23,776.776 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 22:51:27,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:51:27,134.134 INFO    ] Checking for system updates...
[2026-08-25 22:51:27,173.173 INFO    ] 200
[2026-08-25 22:51:27,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:27,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:27,260.260 INFO    ] No update needed
[2026-08-25 22:51:27,263.263 INFO    ] Checking for camera pi updates...
[2026-08-25 22:51:27,301.301 INFO    ] 200
[2026-08-25 22:51:27,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:27,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:51:27,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:27,394.394 INFO    ] No camera update needed
[2026-08-25 22:51:27,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:51:27,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:51:27,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:51:27,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:51:29,465.465 INFO    ] ================================================
[2026-08-25 22:51:29,483.483 INFO    ] Launching Daemon at Tue Aug 25 22:51:29 IST 2026
[2026-08-25 22:51:29,496.496 INFO    ] ================================================
[2026-08-25 22:51:30,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:51:30
[2026-08-25 22:51:30,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:51:31,198.198 INFO    ] Initializing speech engine...
[2026-08-25 22:51:31,204.204 INFO    ] 2026-08-25 22:51:31
[2026-08-25 22:51:31,495.495 INFO    ] 2026-08-25 22:51:31
[2026-08-25 22:51:31,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:51:31,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:51:31,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:51:31,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:51:32,019.019 INFO    ] time= 25/08/2026 22:51:31
[2026-08-25 22:51:32,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:51:32,109.109 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:51:32,241.241 INFO    ] No existing commands found in stream
[2026-08-25 22:51:37,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:51:37,268.268 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 22:51:41,217.217 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:51:41,220.220 INFO    ] Checking for system updates...
[2026-08-25 22:51:41,257.257 INFO    ] 200
[2026-08-25 22:51:41,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:41,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:41,321.321 INFO    ] No update needed
[2026-08-25 22:51:41,324.324 INFO    ] Checking for camera pi updates...
[2026-08-25 22:51:41,368.368 INFO    ] 200
[2026-08-25 22:51:41,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:41,433.433 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:51:41,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:41,499.499 INFO    ] No camera update needed
[2026-08-25 22:51:41,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:51:41,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:51:41,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:51:41,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:51:43,560.560 INFO    ] ================================================
[2026-08-25 22:51:43,575.575 INFO    ] Launching Daemon at Tue Aug 25 22:51:43 IST 2026
[2026-08-25 22:51:43,586.586 INFO    ] ================================================
[2026-08-25 22:51:44,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:51:44
[2026-08-25 22:51:44,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:51:45,034.034 INFO    ] Initializing speech engine...
[2026-08-25 22:51:45,046.046 INFO    ] 2026-08-25 22:51:45
[2026-08-25 22:51:45,293.293 INFO    ] 2026-08-25 22:51:45
[2026-08-25 22:51:45,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:51:45,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:51:45,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:51:45,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:51:45,792.792 INFO    ] time= 25/08/2026 22:51:45
[2026-08-25 22:51:45,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:51:45,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:51:46,007.007 INFO    ] No existing commands found in stream
[2026-08-25 22:51:51,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:51:51,022.022 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 22:51:51,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:51:51,865.865 INFO    ] Checking for system updates...
[2026-08-25 22:51:51,900.900 INFO    ] 200
[2026-08-25 22:51:51,902.902 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:51,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:51,957.957 INFO    ] No update needed
[2026-08-25 22:51:51,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 22:51:51,992.992 INFO    ] 200
[2026-08-25 22:51:51,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:51:52,036.036 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:51:52,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:51:52,088.088 INFO    ] No camera update needed
[2026-08-25 22:51:52,090.090 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:51:52,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:51:52,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:51:52,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:51:54,142.142 INFO    ] ================================================
[2026-08-25 22:51:54,157.157 INFO    ] Launching Daemon at Tue Aug 25 22:51:54 IST 2026
[2026-08-25 22:51:54,168.168 INFO    ] ================================================
[2026-08-25 22:51:54,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:51:54
[2026-08-25 22:51:55,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:51:55,595.595 INFO    ] Initializing speech engine...
[2026-08-25 22:51:55,608.608 INFO    ] 2026-08-25 22:51:55
[2026-08-25 22:51:55,855.855 INFO    ] 2026-08-25 22:51:55
[2026-08-25 22:51:55,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:51:56,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:51:56,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:51:56,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:51:56,237.237 INFO    ] time= 25/08/2026 22:51:56
[2026-08-25 22:51:56,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:51:56,299.299 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:51:56,424.424 INFO    ] No existing commands found in stream
[2026-08-25 22:52:01,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:52:01,451.451 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 22:52:04,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:52:04,397.397 INFO    ] Checking for system updates...
[2026-08-25 22:52:04,433.433 INFO    ] 200
[2026-08-25 22:52:04,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:04,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:52:04,491.491 INFO    ] No update needed
[2026-08-25 22:52:04,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 22:52:04,532.532 INFO    ] 200
[2026-08-25 22:52:04,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:04,576.576 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:52:04,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:52:04,632.632 INFO    ] No camera update needed
[2026-08-25 22:52:04,635.635 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:52:04,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:52:04,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:52:04,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:52:06,687.687 INFO    ] ================================================
[2026-08-25 22:52:06,703.703 INFO    ] Launching Daemon at Tue Aug 25 22:52:06 IST 2026
[2026-08-25 22:52:06,714.714 INFO    ] ================================================
[2026-08-25 22:52:07,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:52:07
[2026-08-25 22:52:08,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:52:08,310.310 INFO    ] Initializing speech engine...
[2026-08-25 22:52:08,320.320 INFO    ] 2026-08-25 22:52:08
[2026-08-25 22:52:08,563.563 INFO    ] 2026-08-25 22:52:08
[2026-08-25 22:52:08,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:52:08,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:52:08,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:52:08,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:52:09,014.014 INFO    ] time= 25/08/2026 22:52:08
[2026-08-25 22:52:09,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:52:09,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:52:09,272.272 INFO    ] No existing commands found in stream
[2026-08-25 22:52:14,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:52:14,300.300 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-08-25 22:52:16,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:52:16,042.042 INFO    ] Checking for system updates...
[2026-08-25 22:52:16,079.079 INFO    ] 200
[2026-08-25 22:52:16,081.081 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:16,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:52:16,136.136 INFO    ] No update needed
[2026-08-25 22:52:16,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 22:52:16,172.172 INFO    ] 200
[2026-08-25 22:52:16,174.174 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:16,221.221 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:52:16,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:52:16,377.377 INFO    ] No camera update needed
[2026-08-25 22:52:16,379.379 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:52:16,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:52:16,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:52:16,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:52:18,435.435 INFO    ] ================================================
[2026-08-25 22:52:18,451.451 INFO    ] Launching Daemon at Tue Aug 25 22:52:18 IST 2026
[2026-08-25 22:52:18,463.463 INFO    ] ================================================
[2026-08-25 22:52:19,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:52:19
[2026-08-25 22:52:19,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:52:20,006.006 INFO    ] Initializing speech engine...
[2026-08-25 22:52:20,013.013 INFO    ] 2026-08-25 22:52:20
[2026-08-25 22:52:20,276.276 INFO    ] 2026-08-25 22:52:20
[2026-08-25 22:52:20,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:52:20,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:52:20,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:52:20,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:52:20,770.770 INFO    ] time= 25/08/2026 22:52:20
[2026-08-25 22:52:20,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:52:20,839.839 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:52:20,980.980 INFO    ] No existing commands found in stream
[2026-08-25 22:52:25,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:52:25,999.999 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 22:52:29,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:52:29,422.422 INFO    ] Checking for system updates...
[2026-08-25 22:52:29,464.464 INFO    ] 200
[2026-08-25 22:52:29,467.467 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:29,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:52:29,531.531 INFO    ] No update needed
[2026-08-25 22:52:29,533.533 INFO    ] Checking for camera pi updates...
[2026-08-25 22:52:29,567.567 INFO    ] 200
[2026-08-25 22:52:29,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:29,616.616 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:52:29,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:52:29,674.674 INFO    ] No camera update needed
[2026-08-25 22:52:29,677.677 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:52:29,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:52:29,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:52:29,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:52:31,737.737 INFO    ] ================================================
[2026-08-25 22:52:31,755.755 INFO    ] Launching Daemon at Tue Aug 25 22:52:31 IST 2026
[2026-08-25 22:52:31,767.767 INFO    ] ================================================
[2026-08-25 22:52:32,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:52:32
[2026-08-25 22:52:33,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:52:33,591.591 INFO    ] Initializing speech engine...
[2026-08-25 22:52:33,600.600 INFO    ] 2026-08-25 22:52:33
[2026-08-25 22:52:33,916.916 INFO    ] 2026-08-25 22:52:33
[2026-08-25 22:52:34,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:52:34,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:52:34,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:52:34,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:52:34,364.364 INFO    ] time= 25/08/2026 22:52:34
[2026-08-25 22:52:34,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:52:34,468.468 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:52:34,553.553 INFO    ] No existing commands found in stream
[2026-08-25 22:52:39,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:52:39,568.568 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 22:52:40,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:52:40,219.219 INFO    ] Checking for system updates...
[2026-08-25 22:52:40,259.259 INFO    ] 200
[2026-08-25 22:52:40,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:40,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:52:40,324.324 INFO    ] No update needed
[2026-08-25 22:52:40,327.327 INFO    ] Checking for camera pi updates...
[2026-08-25 22:52:40,360.360 INFO    ] 200
[2026-08-25 22:52:40,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:40,403.403 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:52:40,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:52:40,453.453 INFO    ] No camera update needed
[2026-08-25 22:52:40,456.456 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:52:40,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:52:40,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:52:40,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:52:42,509.509 INFO    ] ================================================
[2026-08-25 22:52:42,525.525 INFO    ] Launching Daemon at Tue Aug 25 22:52:42 IST 2026
[2026-08-25 22:52:42,536.536 INFO    ] ================================================
[2026-08-25 22:52:43,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:52:43
[2026-08-25 22:52:43,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:52:43,988.988 INFO    ] Initializing speech engine...
[2026-08-25 22:52:43,997.997 INFO    ] 2026-08-25 22:52:43
[2026-08-25 22:52:44,260.260 INFO    ] 2026-08-25 22:52:44
[2026-08-25 22:52:44,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:52:44,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:52:44,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:52:44,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:52:44,628.628 INFO    ] time= 25/08/2026 22:52:44
[2026-08-25 22:52:44,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:52:44,666.666 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:52:44,796.796 INFO    ] No existing commands found in stream
[2026-08-25 22:52:49,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:52:49,818.818 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 22:52:52,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:52:52,618.618 INFO    ] Checking for system updates...
[2026-08-25 22:52:52,658.658 INFO    ] 200
[2026-08-25 22:52:52,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:52,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:52:52,724.724 INFO    ] No update needed
[2026-08-25 22:52:52,727.727 INFO    ] Checking for camera pi updates...
[2026-08-25 22:52:52,765.765 INFO    ] 200
[2026-08-25 22:52:52,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:52:52,808.808 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:52:52,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:52:52,864.864 INFO    ] No camera update needed
[2026-08-25 22:52:52,867.867 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:52:52,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:52:52,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:52:52,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:52:54,920.920 INFO    ] ================================================
[2026-08-25 22:52:54,936.936 INFO    ] Launching Daemon at Tue Aug 25 22:52:54 IST 2026
[2026-08-25 22:52:54,947.947 INFO    ] ================================================
[2026-08-25 22:52:55,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:52:55
[2026-08-25 22:52:56,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:52:56,368.368 INFO    ] Initializing speech engine...
[2026-08-25 22:52:56,374.374 INFO    ] 2026-08-25 22:52:56
[2026-08-25 22:52:56,677.677 INFO    ] 2026-08-25 22:52:56
[2026-08-25 22:52:56,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:52:56,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:52:56,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:52:57,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:52:57,066.066 INFO    ] time= 25/08/2026 22:52:57
[2026-08-25 22:52:57,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:52:57,110.110 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:52:57,195.195 INFO    ] No existing commands found in stream
[2026-08-25 22:53:02,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:53:02,211.211 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 22:53:06,466.466 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:53:06,469.469 INFO    ] Checking for system updates...
[2026-08-25 22:53:06,510.510 INFO    ] 200
[2026-08-25 22:53:06,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:06,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:53:06,573.573 INFO    ] No update needed
[2026-08-25 22:53:06,576.576 INFO    ] Checking for camera pi updates...
[2026-08-25 22:53:06,609.609 INFO    ] 200
[2026-08-25 22:53:06,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:06,652.652 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:53:06,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:53:06,702.702 INFO    ] No camera update needed
[2026-08-25 22:53:06,704.704 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:53:06,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:53:06,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:53:06,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:53:08,760.760 INFO    ] ================================================
[2026-08-25 22:53:08,777.777 INFO    ] Launching Daemon at Tue Aug 25 22:53:08 IST 2026
[2026-08-25 22:53:08,788.788 INFO    ] ================================================
[2026-08-25 22:53:09,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:53:09
[2026-08-25 22:53:09,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:53:10,195.195 INFO    ] Initializing speech engine...
[2026-08-25 22:53:10,201.201 INFO    ] 2026-08-25 22:53:10
[2026-08-25 22:53:10,500.500 INFO    ] 2026-08-25 22:53:10
[2026-08-25 22:53:10,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:53:10,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:53:10,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:53:10,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:53:10,885.885 INFO    ] time= 25/08/2026 22:53:10
[2026-08-25 22:53:10,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:53:10,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:53:11,010.010 INFO    ] No existing commands found in stream
[2026-08-25 22:53:16,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:53:16,026.026 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-08-25 22:53:17,112.112 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:53:17,114.114 INFO    ] Checking for system updates...
[2026-08-25 22:53:17,153.153 INFO    ] 200
[2026-08-25 22:53:17,156.156 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:17,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:53:17,211.211 INFO    ] No update needed
[2026-08-25 22:53:17,214.214 INFO    ] Checking for camera pi updates...
[2026-08-25 22:53:17,247.247 INFO    ] 200
[2026-08-25 22:53:17,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:17,295.295 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:53:17,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:53:17,349.349 INFO    ] No camera update needed
[2026-08-25 22:53:17,351.351 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:53:17,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:53:17,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:53:17,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:53:19,404.404 INFO    ] ================================================
[2026-08-25 22:53:19,420.420 INFO    ] Launching Daemon at Tue Aug 25 22:53:19 IST 2026
[2026-08-25 22:53:19,431.431 INFO    ] ================================================
[2026-08-25 22:53:20,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:53:20
[2026-08-25 22:53:20,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:53:20,863.863 INFO    ] Initializing speech engine...
[2026-08-25 22:53:20,870.870 INFO    ] 2026-08-25 22:53:20
[2026-08-25 22:53:21,117.117 INFO    ] 2026-08-25 22:53:21
[2026-08-25 22:53:21,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:53:21,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:53:21,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:53:21,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:53:21,603.603 INFO    ] time= 25/08/2026 22:53:21
[2026-08-25 22:53:21,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:53:21,680.680 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:53:21,818.818 INFO    ] No existing commands found in stream
[2026-08-25 22:53:26,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:53:26,840.840 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 22:53:27,709.709 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:53:27,711.711 INFO    ] Checking for system updates...
[2026-08-25 22:53:27,748.748 INFO    ] 200
[2026-08-25 22:53:27,750.750 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:27,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:53:27,814.814 INFO    ] No update needed
[2026-08-25 22:53:27,818.818 INFO    ] Checking for camera pi updates...
[2026-08-25 22:53:27,853.853 INFO    ] 200
[2026-08-25 22:53:27,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:27,902.902 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:53:27,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:53:27,954.954 INFO    ] No camera update needed
[2026-08-25 22:53:27,957.957 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:53:27,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:53:27,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:53:27,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:53:30,014.014 INFO    ] ================================================
[2026-08-25 22:53:30,030.030 INFO    ] Launching Daemon at Tue Aug 25 22:53:30 IST 2026
[2026-08-25 22:53:30,040.040 INFO    ] ================================================
[2026-08-25 22:53:30,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:53:30
[2026-08-25 22:53:31,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:53:31,460.460 INFO    ] Initializing speech engine...
[2026-08-25 22:53:31,572.572 INFO    ] 2026-08-25 22:53:31
[2026-08-25 22:53:31,928.928 INFO    ] 2026-08-25 22:53:31
[2026-08-25 22:53:31,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:53:32,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:53:32,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:53:32,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:53:32,545.545 INFO    ] time= 25/08/2026 22:53:32
[2026-08-25 22:53:32,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:53:32,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:53:32,779.779 INFO    ] No existing commands found in stream
[2026-08-25 22:53:37,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:53:37,809.809 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 22:53:40,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:53:40,554.554 INFO    ] Checking for system updates...
[2026-08-25 22:53:40,591.591 INFO    ] 200
[2026-08-25 22:53:40,593.593 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:40,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:53:40,657.657 INFO    ] No update needed
[2026-08-25 22:53:40,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 22:53:40,698.698 INFO    ] 200
[2026-08-25 22:53:40,701.701 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:40,744.744 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:53:40,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:53:40,803.803 INFO    ] No camera update needed
[2026-08-25 22:53:40,807.807 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:53:40,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:53:40,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:53:40,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:53:42,864.864 INFO    ] ================================================
[2026-08-25 22:53:42,879.879 INFO    ] Launching Daemon at Tue Aug 25 22:53:42 IST 2026
[2026-08-25 22:53:42,891.891 INFO    ] ================================================
[2026-08-25 22:53:43,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:53:43
[2026-08-25 22:53:44,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:53:44,309.309 INFO    ] Initializing speech engine...
[2026-08-25 22:53:44,325.325 INFO    ] 2026-08-25 22:53:44
[2026-08-25 22:53:44,611.611 INFO    ] 2026-08-25 22:53:44
[2026-08-25 22:53:44,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:53:44,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:53:44,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:53:44,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:53:44,997.997 INFO    ] time= 25/08/2026 22:53:44
[2026-08-25 22:53:45,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:53:45,036.036 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:53:45,122.122 INFO    ] No existing commands found in stream
[2026-08-25 22:53:50,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:53:50,137.137 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 22:53:51,528.528 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:53:51,531.531 INFO    ] Checking for system updates...
[2026-08-25 22:53:51,567.567 INFO    ] 200
[2026-08-25 22:53:51,569.569 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:51,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:53:51,633.633 INFO    ] No update needed
[2026-08-25 22:53:51,636.636 INFO    ] Checking for camera pi updates...
[2026-08-25 22:53:51,671.671 INFO    ] 200
[2026-08-25 22:53:51,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:53:51,715.715 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:53:51,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:53:51,765.765 INFO    ] No camera update needed
[2026-08-25 22:53:51,768.768 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:53:51,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:53:51,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:53:51,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:53:53,825.825 INFO    ] ================================================
[2026-08-25 22:53:53,841.841 INFO    ] Launching Daemon at Tue Aug 25 22:53:53 IST 2026
[2026-08-25 22:53:53,852.852 INFO    ] ================================================
[2026-08-25 22:53:54,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:53:54
[2026-08-25 22:53:55,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:53:55,530.530 INFO    ] Initializing speech engine...
[2026-08-25 22:53:55,541.541 INFO    ] 2026-08-25 22:53:55
[2026-08-25 22:53:55,823.823 INFO    ] 2026-08-25 22:53:55
[2026-08-25 22:53:55,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:53:56,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:53:56,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:53:56,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:53:56,356.356 INFO    ] time= 25/08/2026 22:53:56
[2026-08-25 22:53:56,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:53:56,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:53:56,511.511 INFO    ] No existing commands found in stream
[2026-08-25 22:54:01,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:54:01,533.533 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 22:54:02,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:54:02,146.146 INFO    ] Checking for system updates...
[2026-08-25 22:54:02,984.984 INFO    ] 200
[2026-08-25 22:54:02,987.987 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:03,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:54:03,045.045 INFO    ] No update needed
[2026-08-25 22:54:03,048.048 INFO    ] Checking for camera pi updates...
[2026-08-25 22:54:03,723.723 INFO    ] 200
[2026-08-25 22:54:03,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:03,773.773 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:54:03,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:54:03,822.822 INFO    ] No camera update needed
[2026-08-25 22:54:03,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:54:03,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:54:03,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:54:03,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:54:05,886.886 INFO    ] ================================================
[2026-08-25 22:54:05,902.902 INFO    ] Launching Daemon at Tue Aug 25 22:54:05 IST 2026
[2026-08-25 22:54:05,914.914 INFO    ] ================================================
[2026-08-25 22:54:06,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:54:06
[2026-08-25 22:54:07,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:54:07,596.596 INFO    ] Initializing speech engine...
[2026-08-25 22:54:07,609.609 INFO    ] 2026-08-25 22:54:07
[2026-08-25 22:54:07,919.919 INFO    ] 2026-08-25 22:54:07
[2026-08-25 22:54:08,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:54:08,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:54:08,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:54:08,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:54:08,427.427 INFO    ] time= 25/08/2026 22:54:08
[2026-08-25 22:54:08,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:54:08,455.455 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:54:08,585.585 INFO    ] No existing commands found in stream
[2026-08-25 22:54:13,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:54:13,618.618 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 22:54:17,562.562 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:54:17,565.565 INFO    ] Checking for system updates...
[2026-08-25 22:54:17,602.602 INFO    ] 200
[2026-08-25 22:54:17,605.605 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:17,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:54:17,661.661 INFO    ] No update needed
[2026-08-25 22:54:17,664.664 INFO    ] Checking for camera pi updates...
[2026-08-25 22:54:17,702.702 INFO    ] 200
[2026-08-25 22:54:17,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:17,751.751 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:54:17,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:54:17,803.803 INFO    ] No camera update needed
[2026-08-25 22:54:17,806.806 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:54:17,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:54:17,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:54:17,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:54:19,861.861 INFO    ] ================================================
[2026-08-25 22:54:19,876.876 INFO    ] Launching Daemon at Tue Aug 25 22:54:19 IST 2026
[2026-08-25 22:54:19,887.887 INFO    ] ================================================
[2026-08-25 22:54:20,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:54:20
[2026-08-25 22:54:21,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:54:21,299.299 INFO    ] Initializing speech engine...
[2026-08-25 22:54:21,319.319 INFO    ] 2026-08-25 22:54:21
[2026-08-25 22:54:21,572.572 INFO    ] 2026-08-25 22:54:21
[2026-08-25 22:54:21,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:54:21,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:54:21,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:54:21,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:54:22,062.062 INFO    ] time= 25/08/2026 22:54:22
[2026-08-25 22:54:22,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:54:22,132.132 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:54:22,262.262 INFO    ] No existing commands found in stream
[2026-08-25 22:54:27,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:54:27,289.289 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 22:54:28,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:54:28,092.092 INFO    ] Checking for system updates...
[2026-08-25 22:54:28,127.127 INFO    ] 200
[2026-08-25 22:54:28,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:28,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:54:28,186.186 INFO    ] No update needed
[2026-08-25 22:54:28,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 22:54:28,221.221 INFO    ] 200
[2026-08-25 22:54:28,224.224 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:28,269.269 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:54:28,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:54:28,420.420 INFO    ] No camera update needed
[2026-08-25 22:54:28,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:54:28,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:54:28,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:54:28,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:54:30,475.475 INFO    ] ================================================
[2026-08-25 22:54:30,491.491 INFO    ] Launching Daemon at Tue Aug 25 22:54:30 IST 2026
[2026-08-25 22:54:30,501.501 INFO    ] ================================================
[2026-08-25 22:54:31,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:54:31
[2026-08-25 22:54:31,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:54:31,934.934 INFO    ] Initializing speech engine...
[2026-08-25 22:54:31,947.947 INFO    ] 2026-08-25 22:54:31
[2026-08-25 22:54:32,255.255 INFO    ] 2026-08-25 22:54:32
[2026-08-25 22:54:32,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:54:32,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:54:32,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:54:32,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:54:32,628.628 INFO    ] time= 25/08/2026 22:54:32
[2026-08-25 22:54:32,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:54:32,658.658 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:54:32,792.792 INFO    ] No existing commands found in stream
[2026-08-25 22:54:37,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:54:37,817.817 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 22:54:39,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:54:39,793.793 INFO    ] Checking for system updates...
[2026-08-25 22:54:39,829.829 INFO    ] 200
[2026-08-25 22:54:39,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:39,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:54:39,891.891 INFO    ] No update needed
[2026-08-25 22:54:39,893.893 INFO    ] Checking for camera pi updates...
[2026-08-25 22:54:39,928.928 INFO    ] 200
[2026-08-25 22:54:39,930.930 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:39,970.970 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:54:40,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:54:40,019.019 INFO    ] No camera update needed
[2026-08-25 22:54:40,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:54:40,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:54:40,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:54:40,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:54:42,076.076 INFO    ] ================================================
[2026-08-25 22:54:42,100.100 INFO    ] Launching Daemon at Tue Aug 25 22:54:42 IST 2026
[2026-08-25 22:54:42,111.111 INFO    ] ================================================
[2026-08-25 22:54:42,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:54:42
[2026-08-25 22:54:43,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:54:43,510.510 INFO    ] Initializing speech engine...
[2026-08-25 22:54:43,523.523 INFO    ] 2026-08-25 22:54:43
[2026-08-25 22:54:43,790.790 INFO    ] 2026-08-25 22:54:43
[2026-08-25 22:54:43,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:54:44,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:54:44,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:54:44,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:54:44,241.241 INFO    ] time= 25/08/2026 22:54:44
[2026-08-25 22:54:44,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:54:44,316.316 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:54:44,414.414 INFO    ] No existing commands found in stream
[2026-08-25 22:54:49,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:54:49,430.430 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-08-25 22:54:52,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:54:52,032.032 INFO    ] Checking for system updates...
[2026-08-25 22:54:52,066.066 INFO    ] 200
[2026-08-25 22:54:52,069.069 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:52,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:54:52,135.135 INFO    ] No update needed
[2026-08-25 22:54:52,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 22:54:52,175.175 INFO    ] 200
[2026-08-25 22:54:52,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:54:52,219.219 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:54:52,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:54:52,268.268 INFO    ] No camera update needed
[2026-08-25 22:54:52,271.271 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:54:52,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:54:52,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:54:52,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:54:54,323.323 INFO    ] ================================================
[2026-08-25 22:54:54,337.337 INFO    ] Launching Daemon at Tue Aug 25 22:54:54 IST 2026
[2026-08-25 22:54:54,348.348 INFO    ] ================================================
[2026-08-25 22:54:54,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:54:54
[2026-08-25 22:54:55,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:54:55,887.887 INFO    ] Initializing speech engine...
[2026-08-25 22:54:55,897.897 INFO    ] 2026-08-25 22:54:55
[2026-08-25 22:54:56,190.190 INFO    ] 2026-08-25 22:54:56
[2026-08-25 22:54:56,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:54:56,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:54:56,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:54:56,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:54:56,702.702 INFO    ] time= 25/08/2026 22:54:56
[2026-08-25 22:54:56,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:54:56,755.755 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:54:56,910.910 INFO    ] No existing commands found in stream
[2026-08-25 22:55:01,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:55:01,941.941 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-08-25 22:55:06,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:55:06,154.154 INFO    ] Checking for system updates...
[2026-08-25 22:55:06,191.191 INFO    ] 200
[2026-08-25 22:55:06,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:06,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:55:06,252.252 INFO    ] No update needed
[2026-08-25 22:55:06,255.255 INFO    ] Checking for camera pi updates...
[2026-08-25 22:55:06,296.296 INFO    ] 200
[2026-08-25 22:55:06,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:06,351.351 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:55:06,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:55:06,406.406 INFO    ] No camera update needed
[2026-08-25 22:55:06,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:55:06,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:55:06,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:55:06,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:55:08,465.465 INFO    ] ================================================
[2026-08-25 22:55:08,480.480 INFO    ] Launching Daemon at Tue Aug 25 22:55:08 IST 2026
[2026-08-25 22:55:08,491.491 INFO    ] ================================================
[2026-08-25 22:55:09,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:55:09
[2026-08-25 22:55:09,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:55:09,942.942 INFO    ] Initializing speech engine...
[2026-08-25 22:55:09,968.968 INFO    ] 2026-08-25 22:55:09
[2026-08-25 22:55:10,239.239 INFO    ] 2026-08-25 22:55:10
[2026-08-25 22:55:10,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:55:10,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:55:10,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:55:10,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:55:10,633.633 INFO    ] time= 25/08/2026 22:55:10
[2026-08-25 22:55:10,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:55:10,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:55:10,743.743 INFO    ] No existing commands found in stream
[2026-08-25 22:55:15,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:55:15,771.771 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-08-25 22:55:19,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:55:19,794.794 INFO    ] Checking for system updates...
[2026-08-25 22:55:19,830.830 INFO    ] 200
[2026-08-25 22:55:19,832.832 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:19,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:55:19,887.887 INFO    ] No update needed
[2026-08-25 22:55:19,889.889 INFO    ] Checking for camera pi updates...
[2026-08-25 22:55:19,926.926 INFO    ] 200
[2026-08-25 22:55:19,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:19,973.973 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:55:20,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:55:20,032.032 INFO    ] No camera update needed
[2026-08-25 22:55:20,034.034 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:55:20,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:55:20,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:55:20,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:55:22,089.089 INFO    ] ================================================
[2026-08-25 22:55:22,104.104 INFO    ] Launching Daemon at Tue Aug 25 22:55:22 IST 2026
[2026-08-25 22:55:22,114.114 INFO    ] ================================================
[2026-08-25 22:55:22,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:55:22
[2026-08-25 22:55:23,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:55:23,540.540 INFO    ] Initializing speech engine...
[2026-08-25 22:55:23,556.556 INFO    ] 2026-08-25 22:55:23
[2026-08-25 22:55:23,840.840 INFO    ] 2026-08-25 22:55:23
[2026-08-25 22:55:23,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:55:24,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:55:24,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:55:24,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:55:24,220.220 INFO    ] time= 25/08/2026 22:55:24
[2026-08-25 22:55:24,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:55:24,262.262 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:55:24,345.345 INFO    ] No existing commands found in stream
[2026-08-25 22:55:29,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:55:29,360.360 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 22:55:30,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:55:30,092.092 INFO    ] Checking for system updates...
[2026-08-25 22:55:30,127.127 INFO    ] 200
[2026-08-25 22:55:30,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:30,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:55:30,190.190 INFO    ] No update needed
[2026-08-25 22:55:30,192.192 INFO    ] Checking for camera pi updates...
[2026-08-25 22:55:30,226.226 INFO    ] 200
[2026-08-25 22:55:30,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:30,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:55:30,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:55:30,325.325 INFO    ] No camera update needed
[2026-08-25 22:55:30,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:55:30,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:55:30,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:55:30,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:55:32,380.380 INFO    ] ================================================
[2026-08-25 22:55:32,396.396 INFO    ] Launching Daemon at Tue Aug 25 22:55:32 IST 2026
[2026-08-25 22:55:32,407.407 INFO    ] ================================================
[2026-08-25 22:55:33,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:55:33
[2026-08-25 22:55:33,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:55:33,840.840 INFO    ] Initializing speech engine...
[2026-08-25 22:55:33,854.854 INFO    ] 2026-08-25 22:55:33
[2026-08-25 22:55:34,120.120 INFO    ] 2026-08-25 22:55:34
[2026-08-25 22:55:34,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:55:34,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:55:34,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:55:34,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:55:34,499.499 INFO    ] time= 25/08/2026 22:55:34
[2026-08-25 22:55:34,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:55:34,546.546 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:55:34,685.685 INFO    ] No existing commands found in stream
[2026-08-25 22:55:39,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:55:39,713.713 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 22:55:42,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:55:42,208.208 INFO    ] Checking for system updates...
[2026-08-25 22:55:42,247.247 INFO    ] 200
[2026-08-25 22:55:42,249.249 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:42,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:55:42,304.304 INFO    ] No update needed
[2026-08-25 22:55:42,307.307 INFO    ] Checking for camera pi updates...
[2026-08-25 22:55:42,341.341 INFO    ] 200
[2026-08-25 22:55:42,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:42,399.399 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:55:42,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:55:42,452.452 INFO    ] No camera update needed
[2026-08-25 22:55:42,455.455 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:55:42,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:55:42,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:55:42,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:55:44,509.509 INFO    ] ================================================
[2026-08-25 22:55:44,524.524 INFO    ] Launching Daemon at Tue Aug 25 22:55:44 IST 2026
[2026-08-25 22:55:44,535.535 INFO    ] ================================================
[2026-08-25 22:55:45,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:55:45
[2026-08-25 22:55:45,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:55:45,962.962 INFO    ] Initializing speech engine...
[2026-08-25 22:55:45,971.971 INFO    ] 2026-08-25 22:55:45
[2026-08-25 22:55:46,217.217 INFO    ] 2026-08-25 22:55:46
[2026-08-25 22:55:46,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:55:46,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:55:46,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:55:46,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:55:46,691.691 INFO    ] time= 25/08/2026 22:55:46
[2026-08-25 22:55:46,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:55:46,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:55:46,894.894 INFO    ] No existing commands found in stream
[2026-08-25 22:55:51,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:55:51,925.925 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-08-25 22:55:55,590.590 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:55:55,593.593 INFO    ] Checking for system updates...
[2026-08-25 22:55:55,628.628 INFO    ] 200
[2026-08-25 22:55:55,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:55,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:55:55,689.689 INFO    ] No update needed
[2026-08-25 22:55:55,692.692 INFO    ] Checking for camera pi updates...
[2026-08-25 22:55:55,726.726 INFO    ] 200
[2026-08-25 22:55:55,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:55:55,773.773 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:55:55,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:55:55,822.822 INFO    ] No camera update needed
[2026-08-25 22:55:55,825.825 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:55:55,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:55:55,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:55:55,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:55:57,879.879 INFO    ] ================================================
[2026-08-25 22:55:57,894.894 INFO    ] Launching Daemon at Tue Aug 25 22:55:57 IST 2026
[2026-08-25 22:55:57,904.904 INFO    ] ================================================
[2026-08-25 22:55:58,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:55:58
[2026-08-25 22:55:59,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:55:59,318.318 INFO    ] Initializing speech engine...
[2026-08-25 22:55:59,336.336 INFO    ] 2026-08-25 22:55:59
[2026-08-25 22:55:59,587.587 INFO    ] 2026-08-25 22:55:59
[2026-08-25 22:55:59,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:55:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:55:59,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:56:00,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:56:00,066.066 INFO    ] time= 25/08/2026 22:56:00
[2026-08-25 22:56:00,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:56:00,159.159 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:56:00,291.291 INFO    ] No existing commands found in stream
[2026-08-25 22:56:05,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:56:05,321.321 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-08-25 22:56:07,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:56:07,669.669 INFO    ] Checking for system updates...
[2026-08-25 22:56:07,709.709 INFO    ] 200
[2026-08-25 22:56:07,711.711 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:07,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:07,771.771 INFO    ] No update needed
[2026-08-25 22:56:07,773.773 INFO    ] Checking for camera pi updates...
[2026-08-25 22:56:07,807.807 INFO    ] 200
[2026-08-25 22:56:07,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:07,856.856 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:56:07,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:07,901.901 INFO    ] No camera update needed
[2026-08-25 22:56:07,904.904 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:56:07,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:56:07,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:56:07,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:56:09,958.958 INFO    ] ================================================
[2026-08-25 22:56:09,974.974 INFO    ] Launching Daemon at Tue Aug 25 22:56:09 IST 2026
[2026-08-25 22:56:09,985.985 INFO    ] ================================================
[2026-08-25 22:56:10,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:56:10
[2026-08-25 22:56:11,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:56:11,403.403 INFO    ] Initializing speech engine...
[2026-08-25 22:56:11,412.412 INFO    ] 2026-08-25 22:56:11
[2026-08-25 22:56:11,667.667 INFO    ] 2026-08-25 22:56:11
[2026-08-25 22:56:11,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:56:11,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:56:11,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:56:12,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:56:12,137.137 INFO    ] time= 25/08/2026 22:56:12
[2026-08-25 22:56:12,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:56:12,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:56:12,343.343 INFO    ] No existing commands found in stream
[2026-08-25 22:56:17,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:56:17,376.376 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-08-25 22:56:19,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:56:19,041.041 INFO    ] Checking for system updates...
[2026-08-25 22:56:19,076.076 INFO    ] 200
[2026-08-25 22:56:19,078.078 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:19,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:19,134.134 INFO    ] No update needed
[2026-08-25 22:56:19,137.137 INFO    ] Checking for camera pi updates...
[2026-08-25 22:56:19,170.170 INFO    ] 200
[2026-08-25 22:56:19,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:19,215.215 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:56:19,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:19,264.264 INFO    ] No camera update needed
[2026-08-25 22:56:19,267.267 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:56:19,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:56:19,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:56:19,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:56:21,322.322 INFO    ] ================================================
[2026-08-25 22:56:21,338.338 INFO    ] Launching Daemon at Tue Aug 25 22:56:21 IST 2026
[2026-08-25 22:56:21,349.349 INFO    ] ================================================
[2026-08-25 22:56:21,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:56:21
[2026-08-25 22:56:22,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:56:22,765.765 INFO    ] Initializing speech engine...
[2026-08-25 22:56:22,775.775 INFO    ] 2026-08-25 22:56:22
[2026-08-25 22:56:23,021.021 INFO    ] 2026-08-25 22:56:23
[2026-08-25 22:56:23,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:56:23,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:56:23,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:56:23,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:56:23,500.500 INFO    ] time= 25/08/2026 22:56:23
[2026-08-25 22:56:23,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:56:23,581.581 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:56:23,714.714 INFO    ] No existing commands found in stream
[2026-08-25 22:56:28,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:56:28,738.738 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-08-25 22:56:29,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:56:29,265.265 INFO    ] Checking for system updates...
[2026-08-25 22:56:29,303.303 INFO    ] 200
[2026-08-25 22:56:29,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:29,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:29,360.360 INFO    ] No update needed
[2026-08-25 22:56:29,362.362 INFO    ] Checking for camera pi updates...
[2026-08-25 22:56:29,399.399 INFO    ] 200
[2026-08-25 22:56:29,401.401 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:29,441.441 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:56:29,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:29,493.493 INFO    ] No camera update needed
[2026-08-25 22:56:29,496.496 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:56:29,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:56:29,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:56:29,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:56:31,557.557 INFO    ] ================================================
[2026-08-25 22:56:31,574.574 INFO    ] Launching Daemon at Tue Aug 25 22:56:31 IST 2026
[2026-08-25 22:56:31,585.585 INFO    ] ================================================
[2026-08-25 22:56:32,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:56:32
[2026-08-25 22:56:32,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:56:33,078.078 INFO    ] Initializing speech engine...
[2026-08-25 22:56:33,087.087 INFO    ] 2026-08-25 22:56:33
[2026-08-25 22:56:33,335.335 INFO    ] 2026-08-25 22:56:33
[2026-08-25 22:56:33,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:56:33,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:56:33,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:56:33,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:56:33,710.710 INFO    ] time= 25/08/2026 22:56:33
[2026-08-25 22:56:33,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:56:33,758.758 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:56:33,873.873 INFO    ] No existing commands found in stream
[2026-08-25 22:56:38,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:56:38,900.900 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 22:56:40,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:56:40,376.376 INFO    ] Checking for system updates...
[2026-08-25 22:56:40,412.412 INFO    ] 200
[2026-08-25 22:56:40,414.414 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:40,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:40,470.470 INFO    ] No update needed
[2026-08-25 22:56:40,472.472 INFO    ] Checking for camera pi updates...
[2026-08-25 22:56:40,505.505 INFO    ] 200
[2026-08-25 22:56:40,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:40,547.547 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:56:40,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:40,605.605 INFO    ] No camera update needed
[2026-08-25 22:56:40,608.608 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:56:40,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:56:40,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:56:40,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:56:42,659.659 INFO    ] ================================================
[2026-08-25 22:56:42,674.674 INFO    ] Launching Daemon at Tue Aug 25 22:56:42 IST 2026
[2026-08-25 22:56:42,684.684 INFO    ] ================================================
[2026-08-25 22:56:43,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:56:43
[2026-08-25 22:56:43,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:56:44,109.109 INFO    ] Initializing speech engine...
[2026-08-25 22:56:44,118.118 INFO    ] 2026-08-25 22:56:44
[2026-08-25 22:56:44,363.363 INFO    ] 2026-08-25 22:56:44
[2026-08-25 22:56:44,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:56:44,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:56:44,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:56:44,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:56:44,729.729 INFO    ] time= 25/08/2026 22:56:44
[2026-08-25 22:56:44,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:56:44,780.780 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:56:44,904.904 INFO    ] No existing commands found in stream
[2026-08-25 22:56:49,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:56:49,937.937 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-08-25 22:56:53,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:56:53,753.753 INFO    ] Checking for system updates...
[2026-08-25 22:56:53,792.792 INFO    ] 200
[2026-08-25 22:56:53,794.794 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:53,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:53,849.849 INFO    ] No update needed
[2026-08-25 22:56:53,851.851 INFO    ] Checking for camera pi updates...
[2026-08-25 22:56:53,885.885 INFO    ] 200
[2026-08-25 22:56:53,888.888 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:56:53,928.928 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:56:53,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:56:53,983.983 INFO    ] No camera update needed
[2026-08-25 22:56:53,986.986 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:56:53,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:56:53,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:56:53,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:56:56,038.038 INFO    ] ================================================
[2026-08-25 22:56:56,053.053 INFO    ] Launching Daemon at Tue Aug 25 22:56:56 IST 2026
[2026-08-25 22:56:56,064.064 INFO    ] ================================================
[2026-08-25 22:56:56,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:56:56
[2026-08-25 22:56:57,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:56:57,481.481 INFO    ] Initializing speech engine...
[2026-08-25 22:56:57,490.490 INFO    ] 2026-08-25 22:56:57
[2026-08-25 22:56:57,735.735 INFO    ] 2026-08-25 22:56:57
[2026-08-25 22:56:57,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:56:57,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:56:57,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:56:58,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:56:58,113.113 INFO    ] time= 25/08/2026 22:56:58
[2026-08-25 22:56:58,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:56:58,166.166 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:56:58,300.300 INFO    ] No existing commands found in stream
[2026-08-25 22:57:03,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:57:03,329.329 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-08-25 22:57:07,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:57:07,393.393 INFO    ] Checking for system updates...
[2026-08-25 22:57:07,428.428 INFO    ] 200
[2026-08-25 22:57:07,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:07,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:57:07,491.491 INFO    ] No update needed
[2026-08-25 22:57:07,493.493 INFO    ] Checking for camera pi updates...
[2026-08-25 22:57:07,526.526 INFO    ] 200
[2026-08-25 22:57:07,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:07,572.572 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:57:07,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:57:07,631.631 INFO    ] No camera update needed
[2026-08-25 22:57:07,634.634 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:57:07,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:57:07,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:57:07,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:57:09,686.686 INFO    ] ================================================
[2026-08-25 22:57:09,700.700 INFO    ] Launching Daemon at Tue Aug 25 22:57:09 IST 2026
[2026-08-25 22:57:09,711.711 INFO    ] ================================================
[2026-08-25 22:57:10,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:57:10
[2026-08-25 22:57:10,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:57:11,153.153 INFO    ] Initializing speech engine...
[2026-08-25 22:57:11,166.166 INFO    ] 2026-08-25 22:57:11
[2026-08-25 22:57:11,420.420 INFO    ] 2026-08-25 22:57:11
[2026-08-25 22:57:11,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:57:11,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:57:11,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:57:11,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:57:11,917.917 INFO    ] time= 25/08/2026 22:57:11
[2026-08-25 22:57:11,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:57:11,986.986 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:57:12,100.100 INFO    ] No existing commands found in stream
[2026-08-25 22:57:17,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:57:17,133.133 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 22:57:21,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:57:21,109.109 INFO    ] Checking for system updates...
[2026-08-25 22:57:21,146.146 INFO    ] 200
[2026-08-25 22:57:21,149.149 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:21,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:57:21,205.205 INFO    ] No update needed
[2026-08-25 22:57:21,207.207 INFO    ] Checking for camera pi updates...
[2026-08-25 22:57:21,249.249 INFO    ] 200
[2026-08-25 22:57:21,251.251 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:21,297.297 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:57:21,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:57:21,348.348 INFO    ] No camera update needed
[2026-08-25 22:57:21,350.350 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:57:21,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:57:21,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:57:21,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:57:23,406.406 INFO    ] ================================================
[2026-08-25 22:57:23,421.421 INFO    ] Launching Daemon at Tue Aug 25 22:57:23 IST 2026
[2026-08-25 22:57:23,431.431 INFO    ] ================================================
[2026-08-25 22:57:24,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:57:24
[2026-08-25 22:57:24,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:57:25,031.031 INFO    ] Initializing speech engine...
[2026-08-25 22:57:25,040.040 INFO    ] 2026-08-25 22:57:25
[2026-08-25 22:57:25,329.329 INFO    ] 2026-08-25 22:57:25
[2026-08-25 22:57:25,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:57:25,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:57:25,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:57:25,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:57:25,859.859 INFO    ] time= 25/08/2026 22:57:25
[2026-08-25 22:57:25,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:57:25,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:57:26,015.015 INFO    ] No existing commands found in stream
[2026-08-25 22:57:31,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:57:31,041.041 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 22:57:34,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:57:34,910.910 INFO    ] Checking for system updates...
[2026-08-25 22:57:34,947.947 INFO    ] 200
[2026-08-25 22:57:34,950.950 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:35,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:57:35,009.009 INFO    ] No update needed
[2026-08-25 22:57:35,011.011 INFO    ] Checking for camera pi updates...
[2026-08-25 22:57:35,046.046 INFO    ] 200
[2026-08-25 22:57:35,049.049 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:35,096.096 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:57:35,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:57:35,145.145 INFO    ] No camera update needed
[2026-08-25 22:57:35,148.148 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:57:35,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:57:35,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:57:35,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:57:37,208.208 INFO    ] ================================================
[2026-08-25 22:57:37,223.223 INFO    ] Launching Daemon at Tue Aug 25 22:57:37 IST 2026
[2026-08-25 22:57:37,233.233 INFO    ] ================================================
[2026-08-25 22:57:37,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:57:37
[2026-08-25 22:57:38,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:57:38,675.675 INFO    ] Initializing speech engine...
[2026-08-25 22:57:38,682.682 INFO    ] 2026-08-25 22:57:38
[2026-08-25 22:57:38,977.977 INFO    ] 2026-08-25 22:57:38
[2026-08-25 22:57:39,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:57:39,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:57:39,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:57:39,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:57:39,399.399 INFO    ] time= 25/08/2026 22:57:39
[2026-08-25 22:57:39,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:57:39,410.410 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:57:39,492.492 INFO    ] No existing commands found in stream
[2026-08-25 22:57:44,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:57:44,525.525 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 22:57:47,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 22:57:47,945.945 INFO    ] Checking for system updates...
[2026-08-25 22:57:47,986.986 INFO    ] 200
[2026-08-25 22:57:47,989.989 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:48,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:57:48,060.060 INFO    ] No update needed
[2026-08-25 22:57:48,063.063 INFO    ] Checking for camera pi updates...
[2026-08-25 22:57:48,101.101 INFO    ] 200
[2026-08-25 22:57:48,104.104 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:57:48,150.150 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:57:48,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:57:48,199.199 INFO    ] No camera update needed
[2026-08-25 22:57:48,201.201 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:57:48,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:57:48,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:57:48,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:57:50,259.259 INFO    ] ================================================
[2026-08-25 22:57:50,274.274 INFO    ] Launching Daemon at Tue Aug 25 22:57:50 IST 2026
[2026-08-25 22:57:50,284.284 INFO    ] ================================================
[2026-08-25 22:57:50,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:57:50
[2026-08-25 22:57:51,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:57:51,681.681 INFO    ] Initializing speech engine...
[2026-08-25 22:57:51,694.694 INFO    ] 2026-08-25 22:57:51
[2026-08-25 22:57:51,959.959 INFO    ] 2026-08-25 22:57:51
[2026-08-25 22:57:51,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:57:52,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:57:52,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:57:52,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:57:52,441.441 INFO    ] time= 25/08/2026 22:57:52
[2026-08-25 22:57:52,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:57:52,536.536 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:57:52,667.667 INFO    ] No existing commands found in stream
[2026-08-25 22:57:57,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:57:57,698.698 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 22:58:02,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 22:58:02,054.054 INFO    ] Checking for system updates...
[2026-08-25 22:58:02,095.095 INFO    ] 200
[2026-08-25 22:58:02,098.098 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:02,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:58:02,172.172 INFO    ] No update needed
[2026-08-25 22:58:02,176.176 INFO    ] Checking for camera pi updates...
[2026-08-25 22:58:02,216.216 INFO    ] 200
[2026-08-25 22:58:02,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:02,273.273 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:58:02,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:58:02,333.333 INFO    ] No camera update needed
[2026-08-25 22:58:02,337.337 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:58:02,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:58:02,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:58:02,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:58:04,400.400 INFO    ] ================================================
[2026-08-25 22:58:04,415.415 INFO    ] Launching Daemon at Tue Aug 25 22:58:04 IST 2026
[2026-08-25 22:58:04,425.425 INFO    ] ================================================
[2026-08-25 22:58:04,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:58:04
[2026-08-25 22:58:05,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:58:05,838.838 INFO    ] Initializing speech engine...
[2026-08-25 22:58:05,857.857 INFO    ] 2026-08-25 22:58:05
[2026-08-25 22:58:06,107.107 INFO    ] 2026-08-25 22:58:06
[2026-08-25 22:58:06,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:58:06,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:58:06,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:58:06,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:58:06,513.513 INFO    ] time= 25/08/2026 22:58:06
[2026-08-25 22:58:06,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:58:06,582.582 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:58:06,697.697 INFO    ] No existing commands found in stream
[2026-08-25 22:58:11,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:58:11,713.713 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 22:58:12,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:58:12,820.820 INFO    ] Checking for system updates...
[2026-08-25 22:58:12,857.857 INFO    ] 200
[2026-08-25 22:58:12,860.860 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:12,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:12,917.917 INFO    ] No update needed
[2026-08-25 22:58:12,920.920 INFO    ] Checking for camera pi updates...
[2026-08-25 22:58:12,953.953 INFO    ] 200
[2026-08-25 22:58:12,956.956 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:13,001.001 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:58:13,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:13,060.060 INFO    ] No camera update needed
[2026-08-25 22:58:13,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:58:13,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:58:13,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:58:13,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:58:15,116.116 INFO    ] ================================================
[2026-08-25 22:58:15,131.131 INFO    ] Launching Daemon at Tue Aug 25 22:58:15 IST 2026
[2026-08-25 22:58:15,142.142 INFO    ] ================================================
[2026-08-25 22:58:15,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:58:15
[2026-08-25 22:58:16,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:58:16,558.558 INFO    ] Initializing speech engine...
[2026-08-25 22:58:16,566.566 INFO    ] 2026-08-25 22:58:16
[2026-08-25 22:58:16,820.820 INFO    ] 2026-08-25 22:58:16
[2026-08-25 22:58:16,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:58:17,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:58:17,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:58:17,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:58:17,301.301 INFO    ] time= 25/08/2026 22:58:17
[2026-08-25 22:58:17,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:58:17,369.369 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:58:17,474.474 INFO    ] No existing commands found in stream
[2026-08-25 22:58:22,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:58:22,511.511 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 22:58:25,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:58:25,854.854 INFO    ] Checking for system updates...
[2026-08-25 22:58:25,891.891 INFO    ] 200
[2026-08-25 22:58:25,893.893 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:25,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:25,960.960 INFO    ] No update needed
[2026-08-25 22:58:25,963.963 INFO    ] Checking for camera pi updates...
[2026-08-25 22:58:25,997.997 INFO    ] 200
[2026-08-25 22:58:26,000.000 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:26,043.043 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:58:26,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:26,100.100 INFO    ] No camera update needed
[2026-08-25 22:58:26,103.103 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:58:26,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:58:26,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:58:26,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:58:28,159.159 INFO    ] ================================================
[2026-08-25 22:58:28,174.174 INFO    ] Launching Daemon at Tue Aug 25 22:58:28 IST 2026
[2026-08-25 22:58:28,185.185 INFO    ] ================================================
[2026-08-25 22:58:28,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:58:28
[2026-08-25 22:58:29,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:58:29,593.593 INFO    ] Initializing speech engine...
[2026-08-25 22:58:29,602.602 INFO    ] 2026-08-25 22:58:29
[2026-08-25 22:58:29,895.895 INFO    ] 2026-08-25 22:58:29
[2026-08-25 22:58:29,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:58:30,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:58:30,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:58:30,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:58:30,309.309 INFO    ] time= 25/08/2026 22:58:30
[2026-08-25 22:58:30,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:58:30,329.329 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:58:30,477.477 INFO    ] No existing commands found in stream
[2026-08-25 22:58:35,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:58:35,510.510 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 22:58:40,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:58:40,640.640 INFO    ] Checking for system updates...
[2026-08-25 22:58:40,678.678 INFO    ] 200
[2026-08-25 22:58:40,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:40,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:40,738.738 INFO    ] No update needed
[2026-08-25 22:58:40,740.740 INFO    ] Checking for camera pi updates...
[2026-08-25 22:58:40,778.778 INFO    ] 200
[2026-08-25 22:58:40,781.781 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:40,823.823 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:58:40,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:40,971.971 INFO    ] No camera update needed
[2026-08-25 22:58:40,974.974 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:58:40,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:58:40,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:58:40,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:58:43,030.030 INFO    ] ================================================
[2026-08-25 22:58:43,046.046 INFO    ] Launching Daemon at Tue Aug 25 22:58:43 IST 2026
[2026-08-25 22:58:43,057.057 INFO    ] ================================================
[2026-08-25 22:58:43,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:58:43
[2026-08-25 22:58:44,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:58:44,474.474 INFO    ] Initializing speech engine...
[2026-08-25 22:58:44,484.484 INFO    ] 2026-08-25 22:58:44
[2026-08-25 22:58:44,742.742 INFO    ] 2026-08-25 22:58:44
[2026-08-25 22:58:44,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:58:45,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:58:45,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:58:45,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:58:45,200.200 INFO    ] time= 25/08/2026 22:58:45
[2026-08-25 22:58:45,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:58:45,292.292 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:58:45,393.393 INFO    ] No existing commands found in stream
[2026-08-25 22:58:50,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:58:50,428.428 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 22:58:52,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 22:58:52,690.690 INFO    ] Checking for system updates...
[2026-08-25 22:58:52,725.725 INFO    ] 200
[2026-08-25 22:58:52,728.728 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:52,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:52,786.786 INFO    ] No update needed
[2026-08-25 22:58:52,789.789 INFO    ] Checking for camera pi updates...
[2026-08-25 22:58:52,826.826 INFO    ] 200
[2026-08-25 22:58:52,829.829 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:58:52,868.868 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:58:52,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:58:52,915.915 INFO    ] No camera update needed
[2026-08-25 22:58:52,918.918 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:58:52,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:58:52,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:58:52,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:58:54,970.970 INFO    ] ================================================
[2026-08-25 22:58:54,985.985 INFO    ] Launching Daemon at Tue Aug 25 22:58:54 IST 2026
[2026-08-25 22:58:55,996.996 INFO    ] ================================================
[2026-08-25 22:58:55,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:58:55
[2026-08-25 22:58:56,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:58:56,628.628 INFO    ] Initializing speech engine...
[2026-08-25 22:58:56,642.642 INFO    ] 2026-08-25 22:58:56
[2026-08-25 22:58:56,924.924 INFO    ] 2026-08-25 22:58:56
[2026-08-25 22:58:56,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:58:57,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:58:57,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:58:57,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:58:57,399.399 INFO    ] time= 25/08/2026 22:58:57
[2026-08-25 22:58:57,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:58:57,469.469 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:58:57,619.619 INFO    ] No existing commands found in stream
[2026-08-25 22:59:02,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:59:02,655.655 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-08-25 22:59:06,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:59:06,658.658 INFO    ] Checking for system updates...
[2026-08-25 22:59:06,693.693 INFO    ] 200
[2026-08-25 22:59:06,696.696 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:06,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:59:06,751.751 INFO    ] No update needed
[2026-08-25 22:59:06,753.753 INFO    ] Checking for camera pi updates...
[2026-08-25 22:59:06,787.787 INFO    ] 200
[2026-08-25 22:59:06,790.790 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:06,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:59:06,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:59:06,884.884 INFO    ] No camera update needed
[2026-08-25 22:59:06,887.887 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:59:06,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:59:06,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:59:06,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:59:08,939.939 INFO    ] ================================================
[2026-08-25 22:59:08,954.954 INFO    ] Launching Daemon at Tue Aug 25 22:59:08 IST 2026
[2026-08-25 22:59:08,965.965 INFO    ] ================================================
[2026-08-25 22:59:09,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:59:09
[2026-08-25 22:59:10,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:59:10,600.600 INFO    ] Initializing speech engine...
[2026-08-25 22:59:10,613.613 INFO    ] 2026-08-25 22:59:10
[2026-08-25 22:59:10,882.882 INFO    ] 2026-08-25 22:59:10
[2026-08-25 22:59:10,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:59:11,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:59:11,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:59:11,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:59:11,428.428 INFO    ] time= 25/08/2026 22:59:11
[2026-08-25 22:59:11,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:59:11,457.457 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:59:11,585.585 INFO    ] No existing commands found in stream
[2026-08-25 22:59:16,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:59:16,604.604 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-08-25 22:59:18,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 22:59:18,027.027 INFO    ] Checking for system updates...
[2026-08-25 22:59:18,064.064 INFO    ] 200
[2026-08-25 22:59:18,067.067 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:18,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:59:18,124.124 INFO    ] No update needed
[2026-08-25 22:59:18,127.127 INFO    ] Checking for camera pi updates...
[2026-08-25 22:59:18,162.162 INFO    ] 200
[2026-08-25 22:59:18,165.165 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:18,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:59:18,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:59:18,260.260 INFO    ] No camera update needed
[2026-08-25 22:59:18,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:59:18,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:59:18,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:59:18,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:59:20,318.318 INFO    ] ================================================
[2026-08-25 22:59:20,333.333 INFO    ] Launching Daemon at Tue Aug 25 22:59:20 IST 2026
[2026-08-25 22:59:20,343.343 INFO    ] ================================================
[2026-08-25 22:59:20,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:59:20
[2026-08-25 22:59:21,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:59:21,975.975 INFO    ] Initializing speech engine...
[2026-08-25 22:59:21,983.983 INFO    ] 2026-08-25 22:59:21
[2026-08-25 22:59:22,299.299 INFO    ] 2026-08-25 22:59:22
[2026-08-25 22:59:22,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:59:22,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:59:22,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:59:22,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:59:22,807.807 INFO    ] time= 25/08/2026 22:59:22
[2026-08-25 22:59:22,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:59:22,845.845 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:59:22,964.964 INFO    ] No existing commands found in stream
[2026-08-25 22:59:27,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:59:27,988.988 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-08-25 22:59:31,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:59:31,932.932 INFO    ] Checking for system updates...
[2026-08-25 22:59:31,975.975 INFO    ] 200
[2026-08-25 22:59:31,979.979 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:32,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:59:32,048.048 INFO    ] No update needed
[2026-08-25 22:59:32,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 22:59:32,093.093 INFO    ] 200
[2026-08-25 22:59:32,096.096 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:32,145.145 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:59:32,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:59:32,207.207 INFO    ] No camera update needed
[2026-08-25 22:59:32,210.210 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:59:32,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:59:32,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:59:32,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:59:34,270.270 INFO    ] ================================================
[2026-08-25 22:59:34,286.286 INFO    ] Launching Daemon at Tue Aug 25 22:59:34 IST 2026
[2026-08-25 22:59:34,297.297 INFO    ] ================================================
[2026-08-25 22:59:34,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:59:34
[2026-08-25 22:59:35,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:59:35,711.711 INFO    ] Initializing speech engine...
[2026-08-25 22:59:35,717.717 INFO    ] 2026-08-25 22:59:35
[2026-08-25 22:59:36,008.008 INFO    ] 2026-08-25 22:59:35
[2026-08-25 22:59:36,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:59:36,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:59:36,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:59:36,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:59:36,385.385 INFO    ] time= 25/08/2026 22:59:36
[2026-08-25 22:59:36,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:59:36,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:59:36,514.514 INFO    ] No existing commands found in stream
[2026-08-25 22:59:41,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:59:41,532.532 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 22:59:44,916.916 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 22:59:44,919.919 INFO    ] Checking for system updates...
[2026-08-25 22:59:44,969.969 INFO    ] 200
[2026-08-25 22:59:44,972.972 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:45,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:59:45,028.028 INFO    ] No update needed
[2026-08-25 22:59:45,031.031 INFO    ] Checking for camera pi updates...
[2026-08-25 22:59:45,065.065 INFO    ] 200
[2026-08-25 22:59:45,068.068 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:45,114.114 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:59:45,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 22:59:45,168.168 INFO    ] No camera update needed
[2026-08-25 22:59:45,170.170 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:59:45,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:59:45,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:59:45,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 22:59:47,225.225 INFO    ] ================================================
[2026-08-25 22:59:47,240.240 INFO    ] Launching Daemon at Tue Aug 25 22:59:47 IST 2026
[2026-08-25 22:59:47,250.250 INFO    ] ================================================
[2026-08-25 22:59:47,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 22:59:47
[2026-08-25 22:59:48,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 22:59:48,696.696 INFO    ] Initializing speech engine...
[2026-08-25 22:59:48,706.706 INFO    ] 2026-08-25 22:59:48
[2026-08-25 22:59:48,960.960 INFO    ] 2026-08-25 22:59:48
[2026-08-25 22:59:48,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 22:59:49,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 22:59:49,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 22:59:49,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 22:59:49,438.438 INFO    ] time= 25/08/2026 22:59:49
[2026-08-25 22:59:49,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 22:59:49,525.525 INFO    ] Checking for existing commands in stream...
[2026-08-25 22:59:49,659.659 INFO    ] No existing commands found in stream
[2026-08-25 22:59:54,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 22:59:54,686.686 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-08-25 22:59:57,935.935 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 22:59:57,938.938 INFO    ] Checking for system updates...
[2026-08-25 22:59:57,974.974 INFO    ] 200
[2026-08-25 22:59:57,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:58,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:59:58,032.032 INFO    ] No update needed
[2026-08-25 22:59:58,035.035 INFO    ] Checking for camera pi updates...
[2026-08-25 22:59:58,069.069 INFO    ] 200
[2026-08-25 22:59:58,072.072 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 22:59:58,113.113 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 22:59:58,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 22:59:58,166.166 INFO    ] No camera update needed
[2026-08-25 22:59:58,168.168 INFO    ] Script finished. Safe exiting...
[2026-08-25 22:59:58,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 22:59:58,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 22:59:58,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:00:00,222.222 INFO    ] ================================================
[2026-08-25 23:00:00,237.237 INFO    ] Launching Daemon at Tue Aug 25 23:00:00 IST 2026
[2026-08-25 23:00:00,248.248 INFO    ] ================================================
[2026-08-25 23:00:00,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:00:00
[2026-08-25 23:00:01,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:00:02,446.446 INFO    ] Initializing speech engine...
[2026-08-25 23:00:02,463.463 INFO    ] 2026-08-25 23:00:02
[2026-08-25 23:00:03,299.299 INFO    ] 2026-08-25 23:00:03
[2026-08-25 23:00:03,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:00:03,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:00:03,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:00:03,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:00:03,970.970 INFO    ] time= 25/08/2026 23:00:03
[2026-08-25 23:00:03,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:00:04,023.023 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:00:04,130.130 INFO    ] No existing commands found in stream
[2026-08-25 23:00:09,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:00:09,145.145 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-08-25 23:00:12,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:00:12,680.680 INFO    ] Checking for system updates...
[2026-08-25 23:00:12,717.717 INFO    ] 200
[2026-08-25 23:00:12,720.720 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:12,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:12,776.776 INFO    ] No update needed
[2026-08-25 23:00:12,779.779 INFO    ] Checking for camera pi updates...
[2026-08-25 23:00:12,812.812 INFO    ] 200
[2026-08-25 23:00:12,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:12,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:00:12,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:12,909.909 INFO    ] No camera update needed
[2026-08-25 23:00:12,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:00:12,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:00:12,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:00:12,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:00:14,964.964 INFO    ] ================================================
[2026-08-25 23:00:14,979.979 INFO    ] Launching Daemon at Tue Aug 25 23:00:14 IST 2026
[2026-08-25 23:00:14,990.990 INFO    ] ================================================
[2026-08-25 23:00:15,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:00:15
[2026-08-25 23:00:16,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:00:16,398.398 INFO    ] Initializing speech engine...
[2026-08-25 23:00:16,405.405 INFO    ] 2026-08-25 23:00:16
[2026-08-25 23:00:16,700.700 INFO    ] 2026-08-25 23:00:16
[2026-08-25 23:00:16,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:00:16,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:00:16,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:00:17,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:00:17,076.076 INFO    ] time= 25/08/2026 23:00:17
[2026-08-25 23:00:17,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:00:17,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:00:17,197.197 INFO    ] No existing commands found in stream
[2026-08-25 23:00:22,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:00:22,212.212 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 23:00:24,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:00:24,157.157 INFO    ] Checking for system updates...
[2026-08-25 23:00:24,197.197 INFO    ] 200
[2026-08-25 23:00:24,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:24,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:24,255.255 INFO    ] No update needed
[2026-08-25 23:00:24,258.258 INFO    ] Checking for camera pi updates...
[2026-08-25 23:00:24,296.296 INFO    ] 200
[2026-08-25 23:00:24,298.298 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:24,338.338 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:00:24,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:24,384.384 INFO    ] No camera update needed
[2026-08-25 23:00:24,387.387 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:00:24,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:00:24,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:00:24,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:00:26,438.438 INFO    ] ================================================
[2026-08-25 23:00:26,453.453 INFO    ] Launching Daemon at Tue Aug 25 23:00:26 IST 2026
[2026-08-25 23:00:26,463.463 INFO    ] ================================================
[2026-08-25 23:00:27,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:00:27
[2026-08-25 23:00:27,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:00:27,980.980 INFO    ] Initializing speech engine...
[2026-08-25 23:00:28,006.006 INFO    ] 2026-08-25 23:00:27
[2026-08-25 23:00:28,282.282 INFO    ] 2026-08-25 23:00:28
[2026-08-25 23:00:28,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:00:28,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:00:28,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:00:28,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:00:28,650.650 INFO    ] time= 25/08/2026 23:00:28
[2026-08-25 23:00:28,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:00:28,678.678 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:00:28,780.780 INFO    ] No existing commands found in stream
[2026-08-25 23:00:33,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:00:33,795.795 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-08-25 23:00:34,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:00:34,569.569 INFO    ] Checking for system updates...
[2026-08-25 23:00:34,608.608 INFO    ] 200
[2026-08-25 23:00:34,610.610 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:34,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:34,667.667 INFO    ] No update needed
[2026-08-25 23:00:34,670.670 INFO    ] Checking for camera pi updates...
[2026-08-25 23:00:34,704.704 INFO    ] 200
[2026-08-25 23:00:34,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:34,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:00:34,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:34,828.828 INFO    ] No camera update needed
[2026-08-25 23:00:34,831.831 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:00:34,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:00:34,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:00:34,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:00:36,886.886 INFO    ] ================================================
[2026-08-25 23:00:36,901.901 INFO    ] Launching Daemon at Tue Aug 25 23:00:36 IST 2026
[2026-08-25 23:00:36,912.912 INFO    ] ================================================
[2026-08-25 23:00:37,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:00:37
[2026-08-25 23:00:38,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:00:38,497.497 INFO    ] Initializing speech engine...
[2026-08-25 23:00:38,505.505 INFO    ] 2026-08-25 23:00:38
[2026-08-25 23:00:38,773.773 INFO    ] 2026-08-25 23:00:38
[2026-08-25 23:00:38,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:00:39,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:00:39,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:00:39,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:00:39,278.278 INFO    ] time= 25/08/2026 23:00:39
[2026-08-25 23:00:39,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:00:39,331.331 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:00:39,473.473 INFO    ] No existing commands found in stream
[2026-08-25 23:00:44,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:00:44,492.492 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 23:00:47,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:00:47,029.029 INFO    ] Checking for system updates...
[2026-08-25 23:00:47,070.070 INFO    ] 200
[2026-08-25 23:00:47,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:47,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:47,133.133 INFO    ] No update needed
[2026-08-25 23:00:47,136.136 INFO    ] Checking for camera pi updates...
[2026-08-25 23:00:47,173.173 INFO    ] 200
[2026-08-25 23:00:47,176.176 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:47,216.216 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:00:47,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:47,365.365 INFO    ] No camera update needed
[2026-08-25 23:00:47,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:00:47,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:00:47,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:00:47,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:00:49,419.419 INFO    ] ================================================
[2026-08-25 23:00:49,434.434 INFO    ] Launching Daemon at Tue Aug 25 23:00:49 IST 2026
[2026-08-25 23:00:49,444.444 INFO    ] ================================================
[2026-08-25 23:00:50,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:00:50
[2026-08-25 23:00:50,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:00:50,847.847 INFO    ] Initializing speech engine...
[2026-08-25 23:00:50,861.861 INFO    ] 2026-08-25 23:00:50
[2026-08-25 23:00:51,119.119 INFO    ] 2026-08-25 23:00:51
[2026-08-25 23:00:51,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:00:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:00:51,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:00:51,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:00:51,514.514 INFO    ] time= 25/08/2026 23:00:51
[2026-08-25 23:00:51,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:00:51,567.567 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:00:51,708.708 INFO    ] No existing commands found in stream
[2026-08-25 23:00:56,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:00:56,728.728 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 23:00:57,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:00:57,206.206 INFO    ] Checking for system updates...
[2026-08-25 23:00:57,244.244 INFO    ] 200
[2026-08-25 23:00:57,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:57,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:57,306.306 INFO    ] No update needed
[2026-08-25 23:00:57,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 23:00:57,341.341 INFO    ] 200
[2026-08-25 23:00:57,343.343 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:00:57,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:00:57,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:00:57,434.434 INFO    ] No camera update needed
[2026-08-25 23:00:57,436.436 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:00:57,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:00:57,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:00:57,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:00:59,489.489 INFO    ] ================================================
[2026-08-25 23:00:59,504.504 INFO    ] Launching Daemon at Tue Aug 25 23:00:59 IST 2026
[2026-08-25 23:00:59,514.514 INFO    ] ================================================
[2026-08-25 23:01:00,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:01:00
[2026-08-25 23:01:00,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:01:00,932.932 INFO    ] Initializing speech engine...
[2026-08-25 23:01:00,947.947 INFO    ] 2026-08-25 23:01:00
[2026-08-25 23:01:01,209.209 INFO    ] 2026-08-25 23:01:01
[2026-08-25 23:01:01,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:01:01,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:01:01,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:01:01,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:01:01,576.576 INFO    ] time= 25/08/2026 23:01:01
[2026-08-25 23:01:01,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:01:01,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:01:01,760.760 INFO    ] No existing commands found in stream
[2026-08-25 23:01:06,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:01:06,784.784 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 23:01:09,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:01:09,608.608 INFO    ] Checking for system updates...
[2026-08-25 23:01:09,647.647 INFO    ] 200
[2026-08-25 23:01:09,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:09,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:01:09,704.704 INFO    ] No update needed
[2026-08-25 23:01:09,707.707 INFO    ] Checking for camera pi updates...
[2026-08-25 23:01:09,744.744 INFO    ] 200
[2026-08-25 23:01:09,746.746 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:09,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:01:09,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:01:09,849.849 INFO    ] No camera update needed
[2026-08-25 23:01:09,852.852 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:01:09,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:01:09,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:01:09,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:01:11,905.905 INFO    ] ================================================
[2026-08-25 23:01:11,921.921 INFO    ] Launching Daemon at Tue Aug 25 23:01:11 IST 2026
[2026-08-25 23:01:11,932.932 INFO    ] ================================================
[2026-08-25 23:01:12,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:01:12
[2026-08-25 23:01:13,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:01:13,369.369 INFO    ] Initializing speech engine...
[2026-08-25 23:01:13,385.385 INFO    ] 2026-08-25 23:01:13
[2026-08-25 23:01:13,639.639 INFO    ] 2026-08-25 23:01:13
[2026-08-25 23:01:13,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:01:13,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:01:13,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:01:14,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:01:14,195.195 INFO    ] time= 25/08/2026 23:01:14
[2026-08-25 23:01:14,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:01:14,221.221 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:01:14,348.348 INFO    ] No existing commands found in stream
[2026-08-25 23:01:19,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:01:19,364.364 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-08-25 23:01:22,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:01:22,417.417 INFO    ] Checking for system updates...
[2026-08-25 23:01:22,457.457 INFO    ] 200
[2026-08-25 23:01:22,459.459 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:22,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:01:22,520.520 INFO    ] No update needed
[2026-08-25 23:01:22,522.522 INFO    ] Checking for camera pi updates...
[2026-08-25 23:01:22,556.556 INFO    ] 200
[2026-08-25 23:01:22,558.558 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:22,603.603 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:01:22,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:01:22,654.654 INFO    ] No camera update needed
[2026-08-25 23:01:22,657.657 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:01:22,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:01:22,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:01:22,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:01:24,708.708 INFO    ] ================================================
[2026-08-25 23:01:24,723.723 INFO    ] Launching Daemon at Tue Aug 25 23:01:24 IST 2026
[2026-08-25 23:01:24,733.733 INFO    ] ================================================
[2026-08-25 23:01:25,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:01:25
[2026-08-25 23:01:25,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:01:26,156.156 INFO    ] Initializing speech engine...
[2026-08-25 23:01:26,161.161 INFO    ] 2026-08-25 23:01:26
[2026-08-25 23:01:26,456.456 INFO    ] 2026-08-25 23:01:26
[2026-08-25 23:01:26,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:01:26,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:01:26,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:01:26,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:01:26,847.847 INFO    ] time= 25/08/2026 23:01:26
[2026-08-25 23:01:26,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:01:26,877.877 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:01:26,954.954 INFO    ] No existing commands found in stream
[2026-08-25 23:01:31,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:01:31,970.970 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-08-25 23:01:33,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:01:33,357.357 INFO    ] Checking for system updates...
[2026-08-25 23:01:33,393.393 INFO    ] 200
[2026-08-25 23:01:33,395.395 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:33,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:01:33,450.450 INFO    ] No update needed
[2026-08-25 23:01:33,452.452 INFO    ] Checking for camera pi updates...
[2026-08-25 23:01:33,487.487 INFO    ] 200
[2026-08-25 23:01:33,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:33,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:01:33,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:01:33,582.582 INFO    ] No camera update needed
[2026-08-25 23:01:33,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:01:33,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:01:33,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:01:33,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:01:35,636.636 INFO    ] ================================================
[2026-08-25 23:01:35,651.651 INFO    ] Launching Daemon at Tue Aug 25 23:01:35 IST 2026
[2026-08-25 23:01:35,661.661 INFO    ] ================================================
[2026-08-25 23:01:36,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:01:36
[2026-08-25 23:01:36,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:01:37,104.104 INFO    ] Initializing speech engine...
[2026-08-25 23:01:37,127.127 INFO    ] 2026-08-25 23:01:37
[2026-08-25 23:01:37,401.401 INFO    ] 2026-08-25 23:01:37
[2026-08-25 23:01:37,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:01:37,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:01:37,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:01:37,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:01:37,792.792 INFO    ] time= 25/08/2026 23:01:37
[2026-08-25 23:01:37,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:01:37,840.840 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:01:37,975.975 INFO    ] No existing commands found in stream
[2026-08-25 23:01:43,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:01:43,003.003 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 23:01:44,965.965 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:01:44,967.967 INFO    ] Checking for system updates...
[2026-08-25 23:01:45,003.003 INFO    ] 200
[2026-08-25 23:01:45,005.005 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:45,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:01:45,065.065 INFO    ] No update needed
[2026-08-25 23:01:45,068.068 INFO    ] Checking for camera pi updates...
[2026-08-25 23:01:45,105.105 INFO    ] 200
[2026-08-25 23:01:45,107.107 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:45,151.151 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:01:45,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:01:45,200.200 INFO    ] No camera update needed
[2026-08-25 23:01:45,203.203 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:01:45,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:01:45,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:01:45,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:01:47,256.256 INFO    ] ================================================
[2026-08-25 23:01:47,271.271 INFO    ] Launching Daemon at Tue Aug 25 23:01:47 IST 2026
[2026-08-25 23:01:47,282.282 INFO    ] ================================================
[2026-08-25 23:01:47,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:01:47
[2026-08-25 23:01:48,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:01:48,740.740 INFO    ] Initializing speech engine...
[2026-08-25 23:01:48,761.761 INFO    ] 2026-08-25 23:01:48
[2026-08-25 23:01:49,025.025 INFO    ] 2026-08-25 23:01:49
[2026-08-25 23:01:49,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:01:49,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:01:49,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:01:49,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:01:49,398.398 INFO    ] time= 25/08/2026 23:01:49
[2026-08-25 23:01:49,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:01:49,439.439 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:01:49,518.518 INFO    ] No existing commands found in stream
[2026-08-25 23:01:54,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:01:54,539.539 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-08-25 23:01:56,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:01:56,348.348 INFO    ] Checking for system updates...
[2026-08-25 23:01:56,383.383 INFO    ] 200
[2026-08-25 23:01:56,385.385 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:56,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:01:56,446.446 INFO    ] No update needed
[2026-08-25 23:01:56,449.449 INFO    ] Checking for camera pi updates...
[2026-08-25 23:01:56,485.485 INFO    ] 200
[2026-08-25 23:01:56,487.487 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:01:56,528.528 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:01:56,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:01:56,578.578 INFO    ] No camera update needed
[2026-08-25 23:01:56,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:01:56,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:01:56,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:01:56,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:01:58,633.633 INFO    ] ================================================
[2026-08-25 23:01:58,648.648 INFO    ] Launching Daemon at Tue Aug 25 23:01:58 IST 2026
[2026-08-25 23:01:58,659.659 INFO    ] ================================================
[2026-08-25 23:01:59,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:01:59
[2026-08-25 23:01:59,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:02:00,097.097 INFO    ] Initializing speech engine...
[2026-08-25 23:02:00,122.122 INFO    ] 2026-08-25 23:02:00
[2026-08-25 23:02:00,422.422 INFO    ] 2026-08-25 23:02:00
[2026-08-25 23:02:00,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:02:00,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:02:00,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:02:00,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:02:00,844.844 INFO    ] time= 25/08/2026 23:02:00
[2026-08-25 23:02:00,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:02:00,863.863 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:02:01,014.014 INFO    ] No existing commands found in stream
[2026-08-25 23:02:06,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:02:06,042.042 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-08-25 23:02:08,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:02:08,459.459 INFO    ] Checking for system updates...
[2026-08-25 23:02:08,495.495 INFO    ] 200
[2026-08-25 23:02:08,497.497 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:08,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:08,557.557 INFO    ] No update needed
[2026-08-25 23:02:08,559.559 INFO    ] Checking for camera pi updates...
[2026-08-25 23:02:08,592.592 INFO    ] 200
[2026-08-25 23:02:08,595.595 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:08,638.638 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:02:08,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:08,690.690 INFO    ] No camera update needed
[2026-08-25 23:02:08,693.693 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:02:08,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:02:08,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:02:08,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:02:10,745.745 INFO    ] ================================================
[2026-08-25 23:02:10,760.760 INFO    ] Launching Daemon at Tue Aug 25 23:02:10 IST 2026
[2026-08-25 23:02:10,771.771 INFO    ] ================================================
[2026-08-25 23:02:11,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:02:11
[2026-08-25 23:02:12,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:02:12,338.338 INFO    ] Initializing speech engine...
[2026-08-25 23:02:12,344.344 INFO    ] 2026-08-25 23:02:12
[2026-08-25 23:02:12,612.612 INFO    ] 2026-08-25 23:02:12
[2026-08-25 23:02:12,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:02:12,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:02:12,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:02:13,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:02:13,158.158 INFO    ] time= 25/08/2026 23:02:13
[2026-08-25 23:02:13,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:02:13,183.183 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:02:13,312.312 INFO    ] No existing commands found in stream
[2026-08-25 23:02:18,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:02:18,329.329 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-08-25 23:02:21,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:02:21,390.390 INFO    ] Checking for system updates...
[2026-08-25 23:02:21,426.426 INFO    ] 200
[2026-08-25 23:02:21,429.429 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:21,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:21,489.489 INFO    ] No update needed
[2026-08-25 23:02:21,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 23:02:21,532.532 INFO    ] 200
[2026-08-25 23:02:21,534.534 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:21,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:02:21,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:21,622.622 INFO    ] No camera update needed
[2026-08-25 23:02:21,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:02:21,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:02:21,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:02:21,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:02:23,683.683 INFO    ] ================================================
[2026-08-25 23:02:23,698.698 INFO    ] Launching Daemon at Tue Aug 25 23:02:23 IST 2026
[2026-08-25 23:02:23,709.709 INFO    ] ================================================
[2026-08-25 23:02:24,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:02:24
[2026-08-25 23:02:24,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:02:25,247.247 INFO    ] Initializing speech engine...
[2026-08-25 23:02:25,253.253 INFO    ] 2026-08-25 23:02:25
[2026-08-25 23:02:25,498.498 INFO    ] 2026-08-25 23:02:25
[2026-08-25 23:02:25,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:02:25,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:02:25,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:02:25,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:02:25,972.972 INFO    ] time= 25/08/2026 23:02:25
[2026-08-25 23:02:26,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:02:26,059.059 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:02:26,193.193 INFO    ] No existing commands found in stream
[2026-08-25 23:02:31,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:02:31,220.220 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-08-25 23:02:35,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:02:35,661.661 INFO    ] Checking for system updates...
[2026-08-25 23:02:35,697.697 INFO    ] 200
[2026-08-25 23:02:35,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:35,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:35,762.762 INFO    ] No update needed
[2026-08-25 23:02:35,764.764 INFO    ] Checking for camera pi updates...
[2026-08-25 23:02:35,801.801 INFO    ] 200
[2026-08-25 23:02:35,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:35,845.845 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:02:35,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:35,891.891 INFO    ] No camera update needed
[2026-08-25 23:02:35,893.893 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:02:35,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:02:35,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:02:35,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:02:37,947.947 INFO    ] ================================================
[2026-08-25 23:02:37,963.963 INFO    ] Launching Daemon at Tue Aug 25 23:02:37 IST 2026
[2026-08-25 23:02:37,974.974 INFO    ] ================================================
[2026-08-25 23:02:38,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:02:38
[2026-08-25 23:02:39,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:02:39,568.568 INFO    ] Initializing speech engine...
[2026-08-25 23:02:39,578.578 INFO    ] 2026-08-25 23:02:39
[2026-08-25 23:02:39,886.886 INFO    ] 2026-08-25 23:02:39
[2026-08-25 23:02:39,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:02:40,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:02:40,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:02:40,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:02:40,331.331 INFO    ] time= 25/08/2026 23:02:40
[2026-08-25 23:02:40,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:02:40,403.403 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:02:40,551.551 INFO    ] No existing commands found in stream
[2026-08-25 23:02:45,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:02:45,579.579 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 23:02:49,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:02:49,500.500 INFO    ] Checking for system updates...
[2026-08-25 23:02:49,542.542 INFO    ] 200
[2026-08-25 23:02:49,545.545 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:49,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:49,601.601 INFO    ] No update needed
[2026-08-25 23:02:49,604.604 INFO    ] Checking for camera pi updates...
[2026-08-25 23:02:49,642.642 INFO    ] 200
[2026-08-25 23:02:49,645.645 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:02:49,691.691 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:02:49,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:02:49,851.851 INFO    ] No camera update needed
[2026-08-25 23:02:49,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:02:49,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:02:49,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:02:49,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:02:51,909.909 INFO    ] ================================================
[2026-08-25 23:02:51,924.924 INFO    ] Launching Daemon at Tue Aug 25 23:02:51 IST 2026
[2026-08-25 23:02:51,935.935 INFO    ] ================================================
[2026-08-25 23:02:52,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:02:52
[2026-08-25 23:02:53,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:02:53,557.557 INFO    ] Initializing speech engine...
[2026-08-25 23:02:53,571.571 INFO    ] 2026-08-25 23:02:53
[2026-08-25 23:02:53,841.841 INFO    ] 2026-08-25 23:02:53
[2026-08-25 23:02:53,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:02:54,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:02:54,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:02:54,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:02:54,375.375 INFO    ] time= 25/08/2026 23:02:54
[2026-08-25 23:02:54,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:02:54,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:02:54,540.540 INFO    ] No existing commands found in stream
[2026-08-25 23:02:59,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:02:59,559.559 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 23:03:03,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:03:03,124.124 INFO    ] Checking for system updates...
[2026-08-25 23:03:03,170.170 INFO    ] 200
[2026-08-25 23:03:03,173.173 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:03,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:03,249.249 INFO    ] No update needed
[2026-08-25 23:03:03,252.252 INFO    ] Checking for camera pi updates...
[2026-08-25 23:03:03,307.307 INFO    ] 200
[2026-08-25 23:03:03,311.311 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:03,386.386 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:03:03,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:03,445.445 INFO    ] No camera update needed
[2026-08-25 23:03:03,448.448 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:03:03,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:03:03,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:03:03,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:03:05,502.502 INFO    ] ================================================
[2026-08-25 23:03:05,518.518 INFO    ] Launching Daemon at Tue Aug 25 23:03:05 IST 2026
[2026-08-25 23:03:05,528.528 INFO    ] ================================================
[2026-08-25 23:03:06,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:03:06
[2026-08-25 23:03:06,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:03:06,972.972 INFO    ] Initializing speech engine...
[2026-08-25 23:03:06,989.989 INFO    ] 2026-08-25 23:03:06
[2026-08-25 23:03:07,259.259 INFO    ] 2026-08-25 23:03:07
[2026-08-25 23:03:07,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:03:07,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:03:07,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:03:07,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:03:07,630.630 INFO    ] time= 25/08/2026 23:03:07
[2026-08-25 23:03:07,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:03:07,656.656 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:03:07,755.755 INFO    ] No existing commands found in stream
[2026-08-25 23:03:12,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:03:12,770.770 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-08-25 23:03:14,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:03:14,180.180 INFO    ] Checking for system updates...
[2026-08-25 23:03:14,219.219 INFO    ] 200
[2026-08-25 23:03:14,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:14,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:14,281.281 INFO    ] No update needed
[2026-08-25 23:03:14,284.284 INFO    ] Checking for camera pi updates...
[2026-08-25 23:03:14,318.318 INFO    ] 200
[2026-08-25 23:03:14,320.320 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:14,364.364 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:03:14,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:14,417.417 INFO    ] No camera update needed
[2026-08-25 23:03:14,422.422 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:03:14,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:03:14,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:03:14,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:03:16,475.475 INFO    ] ================================================
[2026-08-25 23:03:16,491.491 INFO    ] Launching Daemon at Tue Aug 25 23:03:16 IST 2026
[2026-08-25 23:03:16,502.502 INFO    ] ================================================
[2026-08-25 23:03:17,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:03:17
[2026-08-25 23:03:17,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:03:17,932.932 INFO    ] Initializing speech engine...
[2026-08-25 23:03:17,939.939 INFO    ] 2026-08-25 23:03:17
[2026-08-25 23:03:18,196.196 INFO    ] 2026-08-25 23:03:18
[2026-08-25 23:03:18,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:03:18,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:03:18,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:03:18,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:03:18,633.633 INFO    ] time= 25/08/2026 23:03:18
[2026-08-25 23:03:18,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:03:18,744.744 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:03:18,892.892 INFO    ] No existing commands found in stream
[2026-08-25 23:03:23,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:03:23,908.908 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 23:03:26,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:03:26,232.232 INFO    ] Checking for system updates...
[2026-08-25 23:03:26,269.269 INFO    ] 200
[2026-08-25 23:03:26,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:26,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:26,335.335 INFO    ] No update needed
[2026-08-25 23:03:26,338.338 INFO    ] Checking for camera pi updates...
[2026-08-25 23:03:26,372.372 INFO    ] 200
[2026-08-25 23:03:26,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:26,418.418 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:03:26,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:26,471.471 INFO    ] No camera update needed
[2026-08-25 23:03:26,474.474 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:03:26,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:03:26,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:03:26,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:03:28,529.529 INFO    ] ================================================
[2026-08-25 23:03:28,544.544 INFO    ] Launching Daemon at Tue Aug 25 23:03:28 IST 2026
[2026-08-25 23:03:28,555.555 INFO    ] ================================================
[2026-08-25 23:03:29,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:03:29
[2026-08-25 23:03:29,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:03:30,177.177 INFO    ] Initializing speech engine...
[2026-08-25 23:03:30,186.186 INFO    ] 2026-08-25 23:03:30
[2026-08-25 23:03:30,471.471 INFO    ] 2026-08-25 23:03:30
[2026-08-25 23:03:30,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:03:30,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:03:30,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:03:30,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:03:31,011.011 INFO    ] time= 25/08/2026 23:03:31
[2026-08-25 23:03:31,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:03:31,058.058 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:03:31,197.197 INFO    ] No existing commands found in stream
[2026-08-25 23:03:36,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:03:36,226.226 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-08-25 23:03:39,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:03:39,182.182 INFO    ] Checking for system updates...
[2026-08-25 23:03:39,222.222 INFO    ] 200
[2026-08-25 23:03:39,225.225 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:39,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:39,284.284 INFO    ] No update needed
[2026-08-25 23:03:39,287.287 INFO    ] Checking for camera pi updates...
[2026-08-25 23:03:39,321.321 INFO    ] 200
[2026-08-25 23:03:39,324.324 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:39,367.367 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:03:39,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:39,415.415 INFO    ] No camera update needed
[2026-08-25 23:03:39,418.418 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:03:39,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:03:39,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:03:39,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:03:41,475.475 INFO    ] ================================================
[2026-08-25 23:03:41,489.489 INFO    ] Launching Daemon at Tue Aug 25 23:03:41 IST 2026
[2026-08-25 23:03:41,500.500 INFO    ] ================================================
[2026-08-25 23:03:42,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:03:42
[2026-08-25 23:03:42,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:03:42,897.897 INFO    ] Initializing speech engine...
[2026-08-25 23:03:42,906.906 INFO    ] 2026-08-25 23:03:42
[2026-08-25 23:03:43,203.203 INFO    ] 2026-08-25 23:03:43
[2026-08-25 23:03:43,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:03:43,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:03:43,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:03:43,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:03:43,615.615 INFO    ] time= 25/08/2026 23:03:43
[2026-08-25 23:03:43,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:03:43,630.630 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:03:43,706.706 INFO    ] No existing commands found in stream
[2026-08-25 23:03:48,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:03:48,739.739 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 23:03:49,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:03:49,219.219 INFO    ] Checking for system updates...
[2026-08-25 23:03:49,257.257 INFO    ] 200
[2026-08-25 23:03:49,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:49,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:49,316.316 INFO    ] No update needed
[2026-08-25 23:03:49,318.318 INFO    ] Checking for camera pi updates...
[2026-08-25 23:03:49,351.351 INFO    ] 200
[2026-08-25 23:03:49,353.353 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:03:49,393.393 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:03:49,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:03:49,449.449 INFO    ] No camera update needed
[2026-08-25 23:03:49,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:03:49,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:03:49,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:03:49,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:03:51,505.505 INFO    ] ================================================
[2026-08-25 23:03:51,520.520 INFO    ] Launching Daemon at Tue Aug 25 23:03:51 IST 2026
[2026-08-25 23:03:51,530.530 INFO    ] ================================================
[2026-08-25 23:03:52,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:03:52
[2026-08-25 23:03:52,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:03:52,947.947 INFO    ] Initializing speech engine...
[2026-08-25 23:03:52,956.956 INFO    ] 2026-08-25 23:03:52
[2026-08-25 23:03:53,202.202 INFO    ] 2026-08-25 23:03:53
[2026-08-25 23:03:53,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:03:53,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:03:53,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:03:53,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:03:53,676.676 INFO    ] time= 25/08/2026 23:03:53
[2026-08-25 23:03:53,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:03:53,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:03:53,885.885 INFO    ] No existing commands found in stream
[2026-08-25 23:03:58,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:03:58,918.918 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-08-25 23:04:01,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:04:01,654.654 INFO    ] Checking for system updates...
[2026-08-25 23:04:01,689.689 INFO    ] 200
[2026-08-25 23:04:01,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:01,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:04:01,747.747 INFO    ] No update needed
[2026-08-25 23:04:01,749.749 INFO    ] Checking for camera pi updates...
[2026-08-25 23:04:01,783.783 INFO    ] 200
[2026-08-25 23:04:01,786.786 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:01,827.827 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:04:01,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:04:01,898.898 INFO    ] No camera update needed
[2026-08-25 23:04:01,902.902 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:04:01,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:04:01,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:04:01,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:04:03,976.976 INFO    ] ================================================
[2026-08-25 23:04:03,991.991 INFO    ] Launching Daemon at Tue Aug 25 23:04:03 IST 2026
[2026-08-25 23:04:04,002.002 INFO    ] ================================================
[2026-08-25 23:04:04,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:04:04
[2026-08-25 23:04:05,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:04:05,510.510 INFO    ] Initializing speech engine...
[2026-08-25 23:04:05,518.518 INFO    ] 2026-08-25 23:04:05
[2026-08-25 23:04:05,785.785 INFO    ] 2026-08-25 23:04:05
[2026-08-25 23:04:05,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:04:06,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:04:06,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:04:06,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:04:06,279.279 INFO    ] time= 25/08/2026 23:04:06
[2026-08-25 23:04:06,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:04:06,344.344 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:04:06,489.489 INFO    ] No existing commands found in stream
[2026-08-25 23:04:11,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:04:11,517.517 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 23:04:12,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:04:12,829.829 INFO    ] Checking for system updates...
[2026-08-25 23:04:12,865.865 INFO    ] 200
[2026-08-25 23:04:12,868.868 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:12,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:04:12,930.930 INFO    ] No update needed
[2026-08-25 23:04:12,933.933 INFO    ] Checking for camera pi updates...
[2026-08-25 23:04:12,970.970 INFO    ] 200
[2026-08-25 23:04:12,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:13,015.015 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:04:13,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:04:13,067.067 INFO    ] No camera update needed
[2026-08-25 23:04:13,070.070 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:04:13,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:04:13,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:04:13,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:04:15,124.124 INFO    ] ================================================
[2026-08-25 23:04:15,139.139 INFO    ] Launching Daemon at Tue Aug 25 23:04:15 IST 2026
[2026-08-25 23:04:15,150.150 INFO    ] ================================================
[2026-08-25 23:04:15,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:04:15
[2026-08-25 23:04:16,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:04:16,574.574 INFO    ] Initializing speech engine...
[2026-08-25 23:04:16,583.583 INFO    ] 2026-08-25 23:04:16
[2026-08-25 23:04:16,835.835 INFO    ] 2026-08-25 23:04:16
[2026-08-25 23:04:16,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:04:17,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:04:17,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:04:17,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:04:17,212.212 INFO    ] time= 25/08/2026 23:04:17
[2026-08-25 23:04:17,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:04:17,269.269 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:04:17,395.395 INFO    ] No existing commands found in stream
[2026-08-25 23:04:22,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:04:22,420.420 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 23:04:25,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:04:25,986.986 INFO    ] Checking for system updates...
[2026-08-25 23:04:26,022.022 INFO    ] 200
[2026-08-25 23:04:26,025.025 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:26,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:04:26,085.085 INFO    ] No update needed
[2026-08-25 23:04:26,088.088 INFO    ] Checking for camera pi updates...
[2026-08-25 23:04:26,121.121 INFO    ] 200
[2026-08-25 23:04:26,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:26,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:04:26,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:04:26,224.224 INFO    ] No camera update needed
[2026-08-25 23:04:26,226.226 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:04:26,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:04:26,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:04:26,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:04:28,280.280 INFO    ] ================================================
[2026-08-25 23:04:28,295.295 INFO    ] Launching Daemon at Tue Aug 25 23:04:28 IST 2026
[2026-08-25 23:04:28,306.306 INFO    ] ================================================
[2026-08-25 23:04:28,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:04:28
[2026-08-25 23:04:29,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:04:29,902.902 INFO    ] Initializing speech engine...
[2026-08-25 23:04:29,913.913 INFO    ] 2026-08-25 23:04:29
[2026-08-25 23:04:30,188.188 INFO    ] 2026-08-25 23:04:30
[2026-08-25 23:04:30,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:04:30,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:04:30,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:04:30,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:04:30,681.681 INFO    ] time= 25/08/2026 23:04:30
[2026-08-25 23:04:30,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:04:30,745.745 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:04:30,893.893 INFO    ] No existing commands found in stream
[2026-08-25 23:04:35,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:04:35,916.916 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-08-25 23:04:38,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:04:38,222.222 INFO    ] Checking for system updates...
[2026-08-25 23:04:38,258.258 INFO    ] 200
[2026-08-25 23:04:38,261.261 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:38,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:04:38,317.317 INFO    ] No update needed
[2026-08-25 23:04:38,319.319 INFO    ] Checking for camera pi updates...
[2026-08-25 23:04:38,353.353 INFO    ] 200
[2026-08-25 23:04:38,355.355 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:38,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:04:38,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:04:38,449.449 INFO    ] No camera update needed
[2026-08-25 23:04:38,451.451 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:04:38,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:04:38,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:04:38,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:04:40,504.504 INFO    ] ================================================
[2026-08-25 23:04:40,519.519 INFO    ] Launching Daemon at Tue Aug 25 23:04:40 IST 2026
[2026-08-25 23:04:40,530.530 INFO    ] ================================================
[2026-08-25 23:04:41,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:04:41
[2026-08-25 23:04:41,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:04:41,960.960 INFO    ] Initializing speech engine...
[2026-08-25 23:04:41,969.969 INFO    ] 2026-08-25 23:04:41
[2026-08-25 23:04:42,234.234 INFO    ] 2026-08-25 23:04:42
[2026-08-25 23:04:42,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:04:42,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:04:42,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:04:42,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:04:42,646.646 INFO    ] time= 25/08/2026 23:04:42
[2026-08-25 23:04:42,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:04:42,659.659 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:04:42,790.790 INFO    ] No existing commands found in stream
[2026-08-25 23:04:47,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:04:47,818.818 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-08-25 23:04:51,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:04:51,373.373 INFO    ] Checking for system updates...
[2026-08-25 23:04:51,409.409 INFO    ] 200
[2026-08-25 23:04:51,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:51,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:04:51,465.465 INFO    ] No update needed
[2026-08-25 23:04:51,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 23:04:51,501.501 INFO    ] 200
[2026-08-25 23:04:51,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:04:51,544.544 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:04:51,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:04:51,590.590 INFO    ] No camera update needed
[2026-08-25 23:04:51,593.593 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:04:51,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:04:51,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:04:51,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:04:53,645.645 INFO    ] ================================================
[2026-08-25 23:04:53,660.660 INFO    ] Launching Daemon at Tue Aug 25 23:04:53 IST 2026
[2026-08-25 23:04:53,671.671 INFO    ] ================================================
[2026-08-25 23:04:54,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:04:54
[2026-08-25 23:04:54,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:04:55,082.082 INFO    ] Initializing speech engine...
[2026-08-25 23:04:55,091.091 INFO    ] 2026-08-25 23:04:55
[2026-08-25 23:04:55,382.382 INFO    ] 2026-08-25 23:04:55
[2026-08-25 23:04:55,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:04:55,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:04:55,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:04:55,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:04:55,773.773 INFO    ] time= 25/08/2026 23:04:55
[2026-08-25 23:04:55,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:04:55,802.802 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:04:55,881.881 INFO    ] No existing commands found in stream
[2026-08-25 23:05:00,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:05:00,896.896 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-08-25 23:05:04,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:05:04,994.994 INFO    ] Checking for system updates...
[2026-08-25 23:05:05,029.029 INFO    ] 200
[2026-08-25 23:05:05,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:05,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:05,091.091 INFO    ] No update needed
[2026-08-25 23:05:05,093.093 INFO    ] Checking for camera pi updates...
[2026-08-25 23:05:05,127.127 INFO    ] 200
[2026-08-25 23:05:05,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:05,170.170 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:05:05,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:05,227.227 INFO    ] No camera update needed
[2026-08-25 23:05:05,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:05:05,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:05:05,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:05:05,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:05:07,282.282 INFO    ] ================================================
[2026-08-25 23:05:07,299.299 INFO    ] Launching Daemon at Tue Aug 25 23:05:07 IST 2026
[2026-08-25 23:05:07,311.311 INFO    ] ================================================
[2026-08-25 23:05:07,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:05:07
[2026-08-25 23:05:08,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:05:08,729.729 INFO    ] Initializing speech engine...
[2026-08-25 23:05:08,738.738 INFO    ] 2026-08-25 23:05:08
[2026-08-25 23:05:08,985.985 INFO    ] 2026-08-25 23:05:08
[2026-08-25 23:05:09,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:05:09,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:05:09,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:05:09,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:05:09,449.449 INFO    ] time= 25/08/2026 23:05:09
[2026-08-25 23:05:09,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:05:09,549.549 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:05:09,696.696 INFO    ] No existing commands found in stream
[2026-08-25 23:05:14,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:05:14,721.721 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-08-25 23:05:17,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:05:17,648.648 INFO    ] Checking for system updates...
[2026-08-25 23:05:17,689.689 INFO    ] 200
[2026-08-25 23:05:17,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:17,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:17,748.748 INFO    ] No update needed
[2026-08-25 23:05:17,751.751 INFO    ] Checking for camera pi updates...
[2026-08-25 23:05:17,786.786 INFO    ] 200
[2026-08-25 23:05:17,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:17,830.830 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:05:17,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:17,885.885 INFO    ] No camera update needed
[2026-08-25 23:05:17,888.888 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:05:17,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:05:17,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:05:17,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:05:19,945.945 INFO    ] ================================================
[2026-08-25 23:05:19,960.960 INFO    ] Launching Daemon at Tue Aug 25 23:05:19 IST 2026
[2026-08-25 23:05:19,972.972 INFO    ] ================================================
[2026-08-25 23:05:20,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:05:20
[2026-08-25 23:05:21,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:05:21,606.606 INFO    ] Initializing speech engine...
[2026-08-25 23:05:21,614.614 INFO    ] 2026-08-25 23:05:21
[2026-08-25 23:05:21,891.891 INFO    ] 2026-08-25 23:05:21
[2026-08-25 23:05:21,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:05:22,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:05:22,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:05:22,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:05:22,366.366 INFO    ] time= 25/08/2026 23:05:22
[2026-08-25 23:05:22,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:05:22,460.460 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:05:22,584.584 INFO    ] No existing commands found in stream
[2026-08-25 23:05:27,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:05:27,621.621 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 23:05:29,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:05:29,338.338 INFO    ] Checking for system updates...
[2026-08-25 23:05:29,379.379 INFO    ] 200
[2026-08-25 23:05:29,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:29,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:29,439.439 INFO    ] No update needed
[2026-08-25 23:05:29,441.441 INFO    ] Checking for camera pi updates...
[2026-08-25 23:05:29,476.476 INFO    ] 200
[2026-08-25 23:05:29,479.479 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:29,521.521 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:05:29,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:29,572.572 INFO    ] No camera update needed
[2026-08-25 23:05:29,575.575 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:05:29,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:05:29,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:05:29,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:05:31,631.631 INFO    ] ================================================
[2026-08-25 23:05:31,647.647 INFO    ] Launching Daemon at Tue Aug 25 23:05:31 IST 2026
[2026-08-25 23:05:31,658.658 INFO    ] ================================================
[2026-08-25 23:05:32,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:05:32
[2026-08-25 23:05:33,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:05:33,393.393 INFO    ] Initializing speech engine...
[2026-08-25 23:05:33,404.404 INFO    ] 2026-08-25 23:05:33
[2026-08-25 23:05:33,717.717 INFO    ] 2026-08-25 23:05:33
[2026-08-25 23:05:33,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:05:33,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:05:33,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:05:34,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:05:34,176.176 INFO    ] time= 25/08/2026 23:05:34
[2026-08-25 23:05:34,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:05:34,245.245 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:05:34,376.376 INFO    ] No existing commands found in stream
[2026-08-25 23:05:39,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:05:39,395.395 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-08-25 23:05:42,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:05:42,945.945 INFO    ] Checking for system updates...
[2026-08-25 23:05:42,982.982 INFO    ] 200
[2026-08-25 23:05:42,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:43,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:43,043.043 INFO    ] No update needed
[2026-08-25 23:05:43,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 23:05:43,081.081 INFO    ] 200
[2026-08-25 23:05:43,084.084 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:43,126.126 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:05:43,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:05:43,173.173 INFO    ] No camera update needed
[2026-08-25 23:05:43,175.175 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:05:43,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:05:43,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:05:43,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:05:45,231.231 INFO    ] ================================================
[2026-08-25 23:05:45,247.247 INFO    ] Launching Daemon at Tue Aug 25 23:05:45 IST 2026
[2026-08-25 23:05:45,258.258 INFO    ] ================================================
[2026-08-25 23:05:45,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:05:45
[2026-08-25 23:05:46,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:05:46,673.673 INFO    ] Initializing speech engine...
[2026-08-25 23:05:46,698.698 INFO    ] 2026-08-25 23:05:46
[2026-08-25 23:05:46,972.972 INFO    ] 2026-08-25 23:05:46
[2026-08-25 23:05:47,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:05:47,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:05:47,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:05:47,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:05:47,394.394 INFO    ] time= 25/08/2026 23:05:47
[2026-08-25 23:05:47,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:05:47,448.448 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:05:47,563.563 INFO    ] No existing commands found in stream
[2026-08-25 23:05:52,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:05:52,590.590 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-08-25 23:05:54,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:05:54,571.571 INFO    ] Checking for system updates...
[2026-08-25 23:05:54,609.609 INFO    ] 200
[2026-08-25 23:05:54,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:54,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:05:54,668.668 INFO    ] No update needed
[2026-08-25 23:05:54,671.671 INFO    ] Checking for camera pi updates...
[2026-08-25 23:05:54,705.705 INFO    ] 200
[2026-08-25 23:05:54,708.708 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:05:54,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:05:54,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:05:54,802.802 INFO    ] No camera update needed
[2026-08-25 23:05:54,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:05:54,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:05:54,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:05:54,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:05:56,860.860 INFO    ] ================================================
[2026-08-25 23:05:56,876.876 INFO    ] Launching Daemon at Tue Aug 25 23:05:56 IST 2026
[2026-08-25 23:05:56,888.888 INFO    ] ================================================
[2026-08-25 23:05:57,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:05:57
[2026-08-25 23:05:58,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:05:58,296.296 INFO    ] Initializing speech engine...
[2026-08-25 23:05:58,309.309 INFO    ] 2026-08-25 23:05:58
[2026-08-25 23:05:58,570.570 INFO    ] 2026-08-25 23:05:58
[2026-08-25 23:05:58,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:05:58,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:05:58,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:05:59,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:05:59,055.055 INFO    ] time= 25/08/2026 23:05:59
[2026-08-25 23:05:59,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:05:59,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:05:59,284.284 INFO    ] No existing commands found in stream
[2026-08-25 23:06:04,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:06:04,300.300 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-08-25 23:06:07,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:06:07,623.623 INFO    ] Checking for system updates...
[2026-08-25 23:06:07,658.658 INFO    ] 200
[2026-08-25 23:06:07,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:07,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:07,717.717 INFO    ] No update needed
[2026-08-25 23:06:07,719.719 INFO    ] Checking for camera pi updates...
[2026-08-25 23:06:07,752.752 INFO    ] 200
[2026-08-25 23:06:07,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:07,795.795 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:06:07,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:07,840.840 INFO    ] No camera update needed
[2026-08-25 23:06:07,843.843 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:06:07,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:06:07,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:06:07,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:06:09,897.897 INFO    ] ================================================
[2026-08-25 23:06:09,913.913 INFO    ] Launching Daemon at Tue Aug 25 23:06:09 IST 2026
[2026-08-25 23:06:09,923.923 INFO    ] ================================================
[2026-08-25 23:06:10,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:06:10
[2026-08-25 23:06:11,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:06:11,380.380 INFO    ] Initializing speech engine...
[2026-08-25 23:06:11,405.405 INFO    ] 2026-08-25 23:06:11
[2026-08-25 23:06:11,679.679 INFO    ] 2026-08-25 23:06:11
[2026-08-25 23:06:11,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:06:11,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:06:11,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:06:12,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:06:12,089.089 INFO    ] time= 25/08/2026 23:06:12
[2026-08-25 23:06:12,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:06:12,101.101 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:06:12,176.176 INFO    ] No existing commands found in stream
[2026-08-25 23:06:17,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:06:17,209.209 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-08-25 23:06:19,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:06:19,460.460 INFO    ] Checking for system updates...
[2026-08-25 23:06:19,506.506 INFO    ] 200
[2026-08-25 23:06:19,508.508 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:19,511.511 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-08-25 23:06:19,513.513 INFO    ] Checking for camera pi updates...
[2026-08-25 23:06:19,555.555 INFO    ] 200
[2026-08-25 23:06:19,565.565 INFO    ] {"state": "STATE_HEALTH_CHECK", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:19,568.568 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-08-25 23:06:19,570.570 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:06:19,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:06:19,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:06:19,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:06:21,623.623 INFO    ] ================================================
[2026-08-25 23:06:21,639.639 INFO    ] Launching Daemon at Tue Aug 25 23:06:21 IST 2026
[2026-08-25 23:06:21,650.650 INFO    ] ================================================
[2026-08-25 23:06:22,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:06:22
[2026-08-25 23:06:22,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:06:23,094.094 INFO    ] Initializing speech engine...
[2026-08-25 23:06:23,115.115 INFO    ] 2026-08-25 23:06:23
[2026-08-25 23:06:23,376.376 INFO    ] 2026-08-25 23:06:23
[2026-08-25 23:06:23,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:06:23,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:06:23,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:06:23,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:06:23,775.775 INFO    ] time= 25/08/2026 23:06:23
[2026-08-25 23:06:23,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:06:23,835.835 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:06:23,969.969 INFO    ] No existing commands found in stream
[2026-08-25 23:06:28,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:06:28,993.993 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-08-25 23:06:32,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:06:32,636.636 INFO    ] Checking for system updates...
[2026-08-25 23:06:32,678.678 INFO    ] 200
[2026-08-25 23:06:32,681.681 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:32,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:32,745.745 INFO    ] No update needed
[2026-08-25 23:06:32,748.748 INFO    ] Checking for camera pi updates...
[2026-08-25 23:06:32,789.789 INFO    ] 200
[2026-08-25 23:06:32,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:32,835.835 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:06:32,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:32,896.896 INFO    ] No camera update needed
[2026-08-25 23:06:32,899.899 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:06:32,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:06:32,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:06:32,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:06:34,955.955 INFO    ] ================================================
[2026-08-25 23:06:34,970.970 INFO    ] Launching Daemon at Tue Aug 25 23:06:34 IST 2026
[2026-08-25 23:06:34,981.981 INFO    ] ================================================
[2026-08-25 23:06:35,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:06:35
[2026-08-25 23:06:36,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:06:36,436.436 INFO    ] Initializing speech engine...
[2026-08-25 23:06:36,451.451 INFO    ] 2026-08-25 23:06:36
[2026-08-25 23:06:36,730.730 INFO    ] 2026-08-25 23:06:36
[2026-08-25 23:06:36,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:06:37,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:06:37,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:06:37,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:06:37,649.649 INFO    ] time= 25/08/2026 23:06:37
[2026-08-25 23:06:37,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:06:37,712.712 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:06:38,081.081 INFO    ] No existing commands found in stream
[2026-08-25 23:06:43,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:06:43,094.094 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 23:06:47,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:06:47,486.486 INFO    ] Checking for system updates...
[2026-08-25 23:06:47,528.528 INFO    ] 200
[2026-08-25 23:06:47,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:47,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:47,585.585 INFO    ] No update needed
[2026-08-25 23:06:47,587.587 INFO    ] Checking for camera pi updates...
[2026-08-25 23:06:47,621.621 INFO    ] 200
[2026-08-25 23:06:47,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:47,664.664 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:06:47,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:47,739.739 INFO    ] No camera update needed
[2026-08-25 23:06:47,741.741 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:06:47,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:06:47,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:06:47,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:06:49,794.794 INFO    ] ================================================
[2026-08-25 23:06:49,809.809 INFO    ] Launching Daemon at Tue Aug 25 23:06:49 IST 2026
[2026-08-25 23:06:49,821.821 INFO    ] ================================================
[2026-08-25 23:06:50,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:06:50
[2026-08-25 23:06:50,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:06:51,247.247 INFO    ] Initializing speech engine...
[2026-08-25 23:06:51,252.252 INFO    ] 2026-08-25 23:06:51
[2026-08-25 23:06:51,498.498 INFO    ] 2026-08-25 23:06:51
[2026-08-25 23:06:51,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:06:51,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:06:51,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:06:51,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:06:51,868.868 INFO    ] time= 25/08/2026 23:06:51
[2026-08-25 23:06:51,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:06:51,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:06:52,063.063 INFO    ] No existing commands found in stream
[2026-08-25 23:06:57,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:06:57,077.077 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-08-25 23:06:59,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:06:59,446.446 INFO    ] Checking for system updates...
[2026-08-25 23:06:59,482.482 INFO    ] 200
[2026-08-25 23:06:59,484.484 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:59,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:59,540.540 INFO    ] No update needed
[2026-08-25 23:06:59,543.543 INFO    ] Checking for camera pi updates...
[2026-08-25 23:06:59,583.583 INFO    ] 200
[2026-08-25 23:06:59,585.585 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:06:59,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:06:59,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:06:59,677.677 INFO    ] No camera update needed
[2026-08-25 23:06:59,680.680 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:06:59,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:06:59,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:06:59,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:07:01,733.733 INFO    ] ================================================
[2026-08-25 23:07:01,749.749 INFO    ] Launching Daemon at Tue Aug 25 23:07:01 IST 2026
[2026-08-25 23:07:01,760.760 INFO    ] ================================================
[2026-08-25 23:07:02,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:07:02
[2026-08-25 23:07:03,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:07:03,630.630 INFO    ] Initializing speech engine...
[2026-08-25 23:07:03,642.642 INFO    ] 2026-08-25 23:07:03
[2026-08-25 23:07:03,944.944 INFO    ] 2026-08-25 23:07:03
[2026-08-25 23:07:04,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:07:04,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:07:04,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:07:04,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:07:04,384.384 INFO    ] time= 25/08/2026 23:07:04
[2026-08-25 23:07:04,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:07:04,453.453 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:07:04,577.577 INFO    ] No existing commands found in stream
[2026-08-25 23:07:09,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:07:09,600.600 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-08-25 23:07:10,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:07:10,153.153 INFO    ] Checking for system updates...
[2026-08-25 23:07:10,188.188 INFO    ] 200
[2026-08-25 23:07:10,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:10,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:10,247.247 INFO    ] No update needed
[2026-08-25 23:07:10,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 23:07:10,287.287 INFO    ] 200
[2026-08-25 23:07:10,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:10,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:07:10,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:10,476.476 INFO    ] No camera update needed
[2026-08-25 23:07:10,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:07:10,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:07:10,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:07:10,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:07:12,535.535 INFO    ] ================================================
[2026-08-25 23:07:12,550.550 INFO    ] Launching Daemon at Tue Aug 25 23:07:12 IST 2026
[2026-08-25 23:07:12,560.560 INFO    ] ================================================
[2026-08-25 23:07:13,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:07:13
[2026-08-25 23:07:13,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:07:13,991.991 INFO    ] Initializing speech engine...
[2026-08-25 23:07:13,999.999 INFO    ] 2026-08-25 23:07:13
[2026-08-25 23:07:14,242.242 INFO    ] 2026-08-25 23:07:14
[2026-08-25 23:07:14,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:07:14,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:07:14,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:07:14,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:07:14,708.708 INFO    ] time= 25/08/2026 23:07:14
[2026-08-25 23:07:14,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:07:14,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:07:14,937.937 INFO    ] No existing commands found in stream
[2026-08-25 23:07:19,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:07:19,958.958 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 23:07:20,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:07:20,887.887 INFO    ] Checking for system updates...
[2026-08-25 23:07:20,922.922 INFO    ] 200
[2026-08-25 23:07:20,925.925 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:20,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:20,980.980 INFO    ] No update needed
[2026-08-25 23:07:20,982.982 INFO    ] Checking for camera pi updates...
[2026-08-25 23:07:21,015.015 INFO    ] 200
[2026-08-25 23:07:21,017.017 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:21,057.057 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:07:21,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:21,107.107 INFO    ] No camera update needed
[2026-08-25 23:07:21,109.109 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:07:21,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:07:21,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:07:21,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:07:23,161.161 INFO    ] ================================================
[2026-08-25 23:07:23,176.176 INFO    ] Launching Daemon at Tue Aug 25 23:07:23 IST 2026
[2026-08-25 23:07:23,187.187 INFO    ] ================================================
[2026-08-25 23:07:23,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:07:23
[2026-08-25 23:07:24,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:07:24,606.606 INFO    ] Initializing speech engine...
[2026-08-25 23:07:24,615.615 INFO    ] 2026-08-25 23:07:24
[2026-08-25 23:07:24,869.869 INFO    ] 2026-08-25 23:07:24
[2026-08-25 23:07:24,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:07:25,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:07:25,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:07:25,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:07:25,368.368 INFO    ] time= 25/08/2026 23:07:25
[2026-08-25 23:07:25,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:07:25,432.432 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:07:25,537.537 INFO    ] No existing commands found in stream
[2026-08-25 23:07:30,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:07:30,555.555 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-08-25 23:07:34,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:07:34,586.586 INFO    ] Checking for system updates...
[2026-08-25 23:07:34,622.622 INFO    ] 200
[2026-08-25 23:07:34,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:34,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:07:34,681.681 INFO    ] No update needed
[2026-08-25 23:07:34,683.683 INFO    ] Checking for camera pi updates...
[2026-08-25 23:07:34,720.720 INFO    ] 200
[2026-08-25 23:07:34,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:34,762.762 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:07:34,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:07:34,809.809 INFO    ] No camera update needed
[2026-08-25 23:07:34,812.812 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:07:34,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:07:34,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:07:34,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:07:36,865.865 INFO    ] ================================================
[2026-08-25 23:07:36,880.880 INFO    ] Launching Daemon at Tue Aug 25 23:07:36 IST 2026
[2026-08-25 23:07:36,891.891 INFO    ] ================================================
[2026-08-25 23:07:37,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:07:37
[2026-08-25 23:07:38,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:07:38,326.326 INFO    ] Initializing speech engine...
[2026-08-25 23:07:38,332.332 INFO    ] 2026-08-25 23:07:38
[2026-08-25 23:07:38,620.620 INFO    ] 2026-08-25 23:07:38
[2026-08-25 23:07:38,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:07:38,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:07:38,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:07:39,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:07:39,029.029 INFO    ] time= 25/08/2026 23:07:39
[2026-08-25 23:07:39,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:07:39,040.040 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:07:39,114.114 INFO    ] No existing commands found in stream
[2026-08-25 23:07:44,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:07:44,150.150 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 23:07:45,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:07:45,707.707 INFO    ] Checking for system updates...
[2026-08-25 23:07:45,748.748 INFO    ] 200
[2026-08-25 23:07:45,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:45,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:45,810.810 INFO    ] No update needed
[2026-08-25 23:07:45,813.813 INFO    ] Checking for camera pi updates...
[2026-08-25 23:07:45,852.852 INFO    ] 200
[2026-08-25 23:07:45,855.855 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:45,903.903 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:07:45,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:45,963.963 INFO    ] No camera update needed
[2026-08-25 23:07:45,966.966 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:07:45,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:07:45,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:07:45,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:07:48,023.023 INFO    ] ================================================
[2026-08-25 23:07:48,039.039 INFO    ] Launching Daemon at Tue Aug 25 23:07:48 IST 2026
[2026-08-25 23:07:48,051.051 INFO    ] ================================================
[2026-08-25 23:07:48,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:07:48
[2026-08-25 23:07:49,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:07:49,697.697 INFO    ] Initializing speech engine...
[2026-08-25 23:07:49,706.706 INFO    ] 2026-08-25 23:07:49
[2026-08-25 23:07:49,990.990 INFO    ] 2026-08-25 23:07:49
[2026-08-25 23:07:50,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:07:51,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:07:51,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:07:51,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:07:51,513.513 INFO    ] time= 25/08/2026 23:07:51
[2026-08-25 23:07:51,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:07:51,528.528 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:07:51,606.606 INFO    ] No existing commands found in stream
[2026-08-25 23:07:56,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:07:56,620.620 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 23:07:58,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:07:58,082.082 INFO    ] Checking for system updates...
[2026-08-25 23:07:58,126.126 INFO    ] 200
[2026-08-25 23:07:58,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:58,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:58,190.190 INFO    ] No update needed
[2026-08-25 23:07:58,192.192 INFO    ] Checking for camera pi updates...
[2026-08-25 23:07:58,225.225 INFO    ] 200
[2026-08-25 23:07:58,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:07:58,267.267 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:07:58,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:07:58,338.338 INFO    ] No camera update needed
[2026-08-25 23:07:58,340.340 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:07:58,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:07:58,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:07:58,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:08:00,395.395 INFO    ] ================================================
[2026-08-25 23:08:00,411.411 INFO    ] Launching Daemon at Tue Aug 25 23:08:00 IST 2026
[2026-08-25 23:08:00,423.423 INFO    ] ================================================
[2026-08-25 23:08:01,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:08:01
[2026-08-25 23:08:01,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:08:02,335.335 INFO    ] Initializing speech engine...
[2026-08-25 23:08:02,338.338 INFO    ] 2026-08-25 23:08:02
[2026-08-25 23:08:02,676.676 INFO    ] 2026-08-25 23:08:02
[2026-08-25 23:08:02,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:08:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:08:03,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:08:04,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:08:04,180.180 INFO    ] time= 25/08/2026 23:08:04
[2026-08-25 23:08:04,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:08:04,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:08:04,267.267 INFO    ] No existing commands found in stream
[2026-08-25 23:08:09,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:08:09,281.281 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 23:08:11,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:08:11,687.687 INFO    ] Checking for system updates...
[2026-08-25 23:08:11,725.725 INFO    ] 200
[2026-08-25 23:08:11,727.727 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:11,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:11,791.791 INFO    ] No update needed
[2026-08-25 23:08:11,794.794 INFO    ] Checking for camera pi updates...
[2026-08-25 23:08:11,828.828 INFO    ] 200
[2026-08-25 23:08:11,831.831 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:11,880.880 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:08:11,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:11,926.926 INFO    ] No camera update needed
[2026-08-25 23:08:11,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:08:11,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:08:11,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:08:11,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:08:13,986.986 INFO    ] ================================================
[2026-08-25 23:08:14,001.001 INFO    ] Launching Daemon at Tue Aug 25 23:08:13 IST 2026
[2026-08-25 23:08:14,013.013 INFO    ] ================================================
[2026-08-25 23:08:14,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:08:14
[2026-08-25 23:08:15,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:08:15,537.537 INFO    ] Initializing speech engine...
[2026-08-25 23:08:15,546.546 INFO    ] 2026-08-25 23:08:15
[2026-08-25 23:08:15,827.827 INFO    ] 2026-08-25 23:08:15
[2026-08-25 23:08:15,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:08:16,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:08:16,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:08:16,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:08:16,321.321 INFO    ] time= 25/08/2026 23:08:16
[2026-08-25 23:08:16,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:08:16,385.385 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:08:16,505.505 INFO    ] No existing commands found in stream
[2026-08-25 23:08:21,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:08:21,539.539 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-08-25 23:08:26,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:08:26,079.079 INFO    ] Checking for system updates...
[2026-08-25 23:08:26,116.116 INFO    ] 200
[2026-08-25 23:08:26,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:26,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:26,183.183 INFO    ] No update needed
[2026-08-25 23:08:26,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 23:08:26,226.226 INFO    ] 200
[2026-08-25 23:08:26,228.228 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:26,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:08:26,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:26,324.324 INFO    ] No camera update needed
[2026-08-25 23:08:26,327.327 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:08:26,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:08:26,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:08:26,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:08:28,383.383 INFO    ] ================================================
[2026-08-25 23:08:28,399.399 INFO    ] Launching Daemon at Tue Aug 25 23:08:28 IST 2026
[2026-08-25 23:08:28,410.410 INFO    ] ================================================
[2026-08-25 23:08:28,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:08:28
[2026-08-25 23:08:29,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:08:29,816.816 INFO    ] Initializing speech engine...
[2026-08-25 23:08:29,825.825 INFO    ] 2026-08-25 23:08:29
[2026-08-25 23:08:30,121.121 INFO    ] 2026-08-25 23:08:30
[2026-08-25 23:08:30,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:08:30,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:08:30,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:08:30,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:08:30,477.477 INFO    ] time= 25/08/2026 23:08:30
[2026-08-25 23:08:30,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:08:30,509.509 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:08:30,631.631 INFO    ] No existing commands found in stream
[2026-08-25 23:08:35,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:08:35,645.645 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-08-25 23:08:39,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:08:39,734.734 INFO    ] Checking for system updates...
[2026-08-25 23:08:39,773.773 INFO    ] 200
[2026-08-25 23:08:39,776.776 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:39,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:39,830.830 INFO    ] No update needed
[2026-08-25 23:08:39,833.833 INFO    ] Checking for camera pi updates...
[2026-08-25 23:08:39,866.866 INFO    ] 200
[2026-08-25 23:08:39,869.869 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:39,910.910 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:08:39,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:39,961.961 INFO    ] No camera update needed
[2026-08-25 23:08:39,963.963 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:08:39,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:08:39,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:08:39,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:08:42,016.016 INFO    ] ================================================
[2026-08-25 23:08:42,032.032 INFO    ] Launching Daemon at Tue Aug 25 23:08:42 IST 2026
[2026-08-25 23:08:42,043.043 INFO    ] ================================================
[2026-08-25 23:08:42,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:08:42
[2026-08-25 23:08:43,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:08:43,481.481 INFO    ] Initializing speech engine...
[2026-08-25 23:08:43,496.496 INFO    ] 2026-08-25 23:08:43
[2026-08-25 23:08:43,752.752 INFO    ] 2026-08-25 23:08:43
[2026-08-25 23:08:43,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:08:43,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:08:43,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:08:44,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:08:44,121.121 INFO    ] time= 25/08/2026 23:08:44
[2026-08-25 23:08:44,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:08:44,173.173 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:08:44,311.311 INFO    ] No existing commands found in stream
[2026-08-25 23:08:49,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:08:49,331.331 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 23:08:53,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:08:53,037.037 INFO    ] Checking for system updates...
[2026-08-25 23:08:53,072.072 INFO    ] 200
[2026-08-25 23:08:53,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:53,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:53,129.129 INFO    ] No update needed
[2026-08-25 23:08:53,131.131 INFO    ] Checking for camera pi updates...
[2026-08-25 23:08:53,165.165 INFO    ] 200
[2026-08-25 23:08:53,167.167 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:08:53,207.207 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:08:53,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:08:53,256.256 INFO    ] No camera update needed
[2026-08-25 23:08:53,259.259 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:08:53,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:08:53,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:08:53,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:08:55,316.316 INFO    ] ================================================
[2026-08-25 23:08:55,334.334 INFO    ] Launching Daemon at Tue Aug 25 23:08:55 IST 2026
[2026-08-25 23:08:55,348.348 INFO    ] ================================================
[2026-08-25 23:08:55,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:08:55
[2026-08-25 23:08:56,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:08:56,806.806 INFO    ] Initializing speech engine...
[2026-08-25 23:08:56,815.815 INFO    ] 2026-08-25 23:08:56
[2026-08-25 23:08:57,062.062 INFO    ] 2026-08-25 23:08:57
[2026-08-25 23:08:57,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:08:57,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:08:57,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:08:57,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:08:57,522.522 INFO    ] time= 25/08/2026 23:08:57
[2026-08-25 23:08:57,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:08:57,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:08:57,752.752 INFO    ] No existing commands found in stream
[2026-08-25 23:09:02,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:09:02,781.781 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-08-25 23:09:04,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:09:04,037.037 INFO    ] Checking for system updates...
[2026-08-25 23:09:04,074.074 INFO    ] 200
[2026-08-25 23:09:04,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:04,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:09:04,135.135 INFO    ] No update needed
[2026-08-25 23:09:04,138.138 INFO    ] Checking for camera pi updates...
[2026-08-25 23:09:04,177.177 INFO    ] 200
[2026-08-25 23:09:04,180.180 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:04,228.228 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:09:04,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:09:04,287.287 INFO    ] No camera update needed
[2026-08-25 23:09:04,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:09:04,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:09:04,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:09:04,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:09:06,345.345 INFO    ] ================================================
[2026-08-25 23:09:06,361.361 INFO    ] Launching Daemon at Tue Aug 25 23:09:06 IST 2026
[2026-08-25 23:09:06,372.372 INFO    ] ================================================
[2026-08-25 23:09:06,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:09:06
[2026-08-25 23:09:07,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:09:07,799.799 INFO    ] Initializing speech engine...
[2026-08-25 23:09:07,804.804 INFO    ] 2026-08-25 23:09:07
[2026-08-25 23:09:08,102.102 INFO    ] 2026-08-25 23:09:08
[2026-08-25 23:09:08,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:09:08,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:09:08,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:09:08,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:09:08,487.487 INFO    ] time= 25/08/2026 23:09:08
[2026-08-25 23:09:08,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:09:08,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:09:08,613.613 INFO    ] No existing commands found in stream
[2026-08-25 23:09:13,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:09:13,628.628 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 23:09:19,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:09:19,467.467 INFO    ] Checking for system updates...
[2026-08-25 23:09:19,502.502 INFO    ] 200
[2026-08-25 23:09:19,504.504 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:19,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:09:19,559.559 INFO    ] No update needed
[2026-08-25 23:09:19,562.562 INFO    ] Checking for camera pi updates...
[2026-08-25 23:09:19,595.595 INFO    ] 200
[2026-08-25 23:09:19,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:19,639.639 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:09:19,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:09:19,793.793 INFO    ] No camera update needed
[2026-08-25 23:09:19,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:09:19,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:09:19,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:09:19,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:09:21,847.847 INFO    ] ================================================
[2026-08-25 23:09:21,863.863 INFO    ] Launching Daemon at Tue Aug 25 23:09:21 IST 2026
[2026-08-25 23:09:21,874.874 INFO    ] ================================================
[2026-08-25 23:09:22,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:09:22
[2026-08-25 23:09:23,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:09:23,288.288 INFO    ] Initializing speech engine...
[2026-08-25 23:09:23,298.298 INFO    ] 2026-08-25 23:09:23
[2026-08-25 23:09:23,544.544 INFO    ] 2026-08-25 23:09:23
[2026-08-25 23:09:23,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:09:24,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:09:24,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:09:26,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:09:26,048.048 INFO    ] time= 25/08/2026 23:09:26
[2026-08-25 23:09:26,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:09:26,069.069 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:09:26,138.138 INFO    ] No existing commands found in stream
[2026-08-25 23:09:31,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:09:31,152.152 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 23:09:33,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:09:33,169.169 INFO    ] Checking for system updates...
[2026-08-25 23:09:33,210.210 INFO    ] 200
[2026-08-25 23:09:33,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:33,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:09:33,273.273 INFO    ] No update needed
[2026-08-25 23:09:33,276.276 INFO    ] Checking for camera pi updates...
[2026-08-25 23:09:33,309.309 INFO    ] 200
[2026-08-25 23:09:33,312.312 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:33,352.352 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:09:33,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:09:33,398.398 INFO    ] No camera update needed
[2026-08-25 23:09:33,400.400 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:09:33,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:09:33,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:09:33,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:09:35,452.452 INFO    ] ================================================
[2026-08-25 23:09:35,469.469 INFO    ] Launching Daemon at Tue Aug 25 23:09:35 IST 2026
[2026-08-25 23:09:35,480.480 INFO    ] ================================================
[2026-08-25 23:09:36,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:09:36
[2026-08-25 23:09:36,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:09:37,195.195 INFO    ] Initializing speech engine...
[2026-08-25 23:09:37,208.208 INFO    ] 2026-08-25 23:09:37
[2026-08-25 23:09:37,520.520 INFO    ] 2026-08-25 23:09:37
[2026-08-25 23:09:37,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:09:37,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:09:37,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:09:37,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:09:38,020.020 INFO    ] time= 25/08/2026 23:09:37
[2026-08-25 23:09:38,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:09:38,049.049 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:09:38,178.178 INFO    ] No existing commands found in stream
[2026-08-25 23:09:43,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:09:43,204.204 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-08-25 23:09:46,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:09:46,391.391 INFO    ] Checking for system updates...
[2026-08-25 23:09:46,429.429 INFO    ] 200
[2026-08-25 23:09:46,431.431 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:46,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:09:46,491.491 INFO    ] No update needed
[2026-08-25 23:09:46,494.494 INFO    ] Checking for camera pi updates...
[2026-08-25 23:09:46,528.528 INFO    ] 200
[2026-08-25 23:09:46,530.530 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:46,570.570 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:09:46,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:09:46,622.622 INFO    ] No camera update needed
[2026-08-25 23:09:46,624.624 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:09:46,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:09:46,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:09:46,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:09:48,676.676 INFO    ] ================================================
[2026-08-25 23:09:48,691.691 INFO    ] Launching Daemon at Tue Aug 25 23:09:48 IST 2026
[2026-08-25 23:09:48,702.702 INFO    ] ================================================
[2026-08-25 23:09:49,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:09:49
[2026-08-25 23:09:50,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:09:50,348.348 INFO    ] Initializing speech engine...
[2026-08-25 23:09:50,354.354 INFO    ] 2026-08-25 23:09:50
[2026-08-25 23:09:50,640.640 INFO    ] 2026-08-25 23:09:50
[2026-08-25 23:09:50,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:09:50,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:09:50,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:09:51,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:09:51,137.137 INFO    ] time= 25/08/2026 23:09:51
[2026-08-25 23:09:51,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:09:51,155.155 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:09:51,240.240 INFO    ] No existing commands found in stream
[2026-08-25 23:09:56,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:09:56,254.254 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 23:09:58,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:09:58,777.777 INFO    ] Checking for system updates...
[2026-08-25 23:09:58,813.813 INFO    ] 200
[2026-08-25 23:09:58,815.815 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:58,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:09:58,870.870 INFO    ] No update needed
[2026-08-25 23:09:58,873.873 INFO    ] Checking for camera pi updates...
[2026-08-25 23:09:58,907.907 INFO    ] 200
[2026-08-25 23:09:58,909.909 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:09:58,954.954 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:09:58,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:09:59,002.002 INFO    ] No camera update needed
[2026-08-25 23:09:59,004.004 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:09:59,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:09:59,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:09:59,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:10:01,056.056 INFO    ] ================================================
[2026-08-25 23:10:01,071.071 INFO    ] Launching Daemon at Tue Aug 25 23:10:01 IST 2026
[2026-08-25 23:10:01,082.082 INFO    ] ================================================
[2026-08-25 23:10:01,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:10:01
[2026-08-25 23:10:02,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:10:03,490.490 INFO    ] Initializing speech engine...
[2026-08-25 23:10:03,494.494 INFO    ] 2026-08-25 23:10:03
[2026-08-25 23:10:03,908.908 INFO    ] 2026-08-25 23:10:03
[2026-08-25 23:10:03,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:10:04,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:10:04,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:10:04,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:10:04,338.338 INFO    ] time= 25/08/2026 23:10:04
[2026-08-25 23:10:04,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:10:04,368.368 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:10:04,492.492 INFO    ] No existing commands found in stream
[2026-08-25 23:10:09,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:10:09,509.509 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-08-25 23:10:11,835.835 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:10:11,837.837 INFO    ] Checking for system updates...
[2026-08-25 23:10:11,873.873 INFO    ] 200
[2026-08-25 23:10:11,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:11,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:11,930.930 INFO    ] No update needed
[2026-08-25 23:10:11,932.932 INFO    ] Checking for camera pi updates...
[2026-08-25 23:10:11,968.968 INFO    ] 200
[2026-08-25 23:10:11,971.971 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:12,011.011 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:10:12,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:12,064.064 INFO    ] No camera update needed
[2026-08-25 23:10:12,067.067 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:10:12,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:10:12,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:10:12,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:10:14,119.119 INFO    ] ================================================
[2026-08-25 23:10:14,135.135 INFO    ] Launching Daemon at Tue Aug 25 23:10:14 IST 2026
[2026-08-25 23:10:14,146.146 INFO    ] ================================================
[2026-08-25 23:10:14,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:10:14
[2026-08-25 23:10:15,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:10:15,562.562 INFO    ] Initializing speech engine...
[2026-08-25 23:10:15,572.572 INFO    ] 2026-08-25 23:10:15
[2026-08-25 23:10:15,817.817 INFO    ] 2026-08-25 23:10:15
[2026-08-25 23:10:15,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:10:16,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:10:16,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:10:16,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:10:16,185.185 INFO    ] time= 25/08/2026 23:10:16
[2026-08-25 23:10:16,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:10:16,237.237 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:10:16,368.368 INFO    ] No existing commands found in stream
[2026-08-25 23:10:21,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:10:21,390.390 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-08-25 23:10:24,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:10:24,255.255 INFO    ] Checking for system updates...
[2026-08-25 23:10:24,294.294 INFO    ] 200
[2026-08-25 23:10:24,297.297 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:24,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:24,352.352 INFO    ] No update needed
[2026-08-25 23:10:24,355.355 INFO    ] Checking for camera pi updates...
[2026-08-25 23:10:24,388.388 INFO    ] 200
[2026-08-25 23:10:24,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:24,431.431 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:10:24,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:24,478.478 INFO    ] No camera update needed
[2026-08-25 23:10:24,480.480 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:10:24,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:10:24,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:10:24,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:10:26,533.533 INFO    ] ================================================
[2026-08-25 23:10:26,549.549 INFO    ] Launching Daemon at Tue Aug 25 23:10:26 IST 2026
[2026-08-25 23:10:26,560.560 INFO    ] ================================================
[2026-08-25 23:10:27,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:10:27
[2026-08-25 23:10:27,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:10:27,984.984 INFO    ] Initializing speech engine...
[2026-08-25 23:10:27,993.993 INFO    ] 2026-08-25 23:10:27
[2026-08-25 23:10:28,246.246 INFO    ] 2026-08-25 23:10:28
[2026-08-25 23:10:28,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:10:28,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:10:28,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:10:28,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:10:28,739.739 INFO    ] time= 25/08/2026 23:10:28
[2026-08-25 23:10:28,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:10:28,803.803 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:10:28,937.937 INFO    ] No existing commands found in stream
[2026-08-25 23:10:33,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:10:33,959.959 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-08-25 23:10:35,715.715 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:10:35,717.717 INFO    ] Checking for system updates...
[2026-08-25 23:10:35,756.756 INFO    ] 200
[2026-08-25 23:10:35,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:35,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:35,814.814 INFO    ] No update needed
[2026-08-25 23:10:35,817.817 INFO    ] Checking for camera pi updates...
[2026-08-25 23:10:35,851.851 INFO    ] 200
[2026-08-25 23:10:35,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:35,900.900 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:10:35,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:35,957.957 INFO    ] No camera update needed
[2026-08-25 23:10:35,960.960 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:10:35,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:10:35,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:10:35,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:10:38,012.012 INFO    ] ================================================
[2026-08-25 23:10:38,028.028 INFO    ] Launching Daemon at Tue Aug 25 23:10:38 IST 2026
[2026-08-25 23:10:38,039.039 INFO    ] ================================================
[2026-08-25 23:10:38,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:10:38
[2026-08-25 23:10:39,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:10:39,461.461 INFO    ] Initializing speech engine...
[2026-08-25 23:10:39,470.470 INFO    ] 2026-08-25 23:10:39
[2026-08-25 23:10:39,716.716 INFO    ] 2026-08-25 23:10:39
[2026-08-25 23:10:39,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:10:39,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:10:39,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:10:40,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:10:40,190.190 INFO    ] time= 25/08/2026 23:10:40
[2026-08-25 23:10:40,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:10:40,277.277 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:10:40,419.419 INFO    ] No existing commands found in stream
[2026-08-25 23:10:45,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:10:45,439.439 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-08-25 23:10:46,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:10:46,884.884 INFO    ] Checking for system updates...
[2026-08-25 23:10:46,920.920 INFO    ] 200
[2026-08-25 23:10:46,923.923 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:46,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:46,978.978 INFO    ] No update needed
[2026-08-25 23:10:46,981.981 INFO    ] Checking for camera pi updates...
[2026-08-25 23:10:47,014.014 INFO    ] 200
[2026-08-25 23:10:47,016.016 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:47,062.062 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:10:47,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:10:47,120.120 INFO    ] No camera update needed
[2026-08-25 23:10:47,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:10:47,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:10:47,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:10:47,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:10:49,178.178 INFO    ] ================================================
[2026-08-25 23:10:49,194.194 INFO    ] Launching Daemon at Tue Aug 25 23:10:49 IST 2026
[2026-08-25 23:10:49,204.204 INFO    ] ================================================
[2026-08-25 23:10:49,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:10:49
[2026-08-25 23:10:50,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:10:50,634.634 INFO    ] Initializing speech engine...
[2026-08-25 23:10:50,643.643 INFO    ] 2026-08-25 23:10:50
[2026-08-25 23:10:50,889.889 INFO    ] 2026-08-25 23:10:50
[2026-08-25 23:10:50,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:10:51,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:10:51,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:10:51,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:10:51,407.407 INFO    ] time= 25/08/2026 23:10:51
[2026-08-25 23:10:51,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:10:51,456.456 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:10:51,586.586 INFO    ] No existing commands found in stream
[2026-08-25 23:10:56,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:10:56,611.611 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 23:10:58,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:10:58,780.780 INFO    ] Checking for system updates...
[2026-08-25 23:10:58,816.816 INFO    ] 200
[2026-08-25 23:10:58,819.819 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:58,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:10:58,879.879 INFO    ] No update needed
[2026-08-25 23:10:58,881.881 INFO    ] Checking for camera pi updates...
[2026-08-25 23:10:58,915.915 INFO    ] 200
[2026-08-25 23:10:58,918.918 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:10:58,969.969 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:10:59,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:10:59,019.019 INFO    ] No camera update needed
[2026-08-25 23:10:59,021.021 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:10:59,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:10:59,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:10:59,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:11:01,074.074 INFO    ] ================================================
[2026-08-25 23:11:01,091.091 INFO    ] Launching Daemon at Tue Aug 25 23:11:01 IST 2026
[2026-08-25 23:11:01,102.102 INFO    ] ================================================
[2026-08-25 23:11:01,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:11:01
[2026-08-25 23:11:02,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:11:02,969.969 INFO    ] Initializing speech engine...
[2026-08-25 23:11:02,981.981 INFO    ] 2026-08-25 23:11:02
[2026-08-25 23:11:03,287.287 INFO    ] 2026-08-25 23:11:03
[2026-08-25 23:11:03,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:11:03,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:11:03,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:11:03,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:11:03,717.717 INFO    ] time= 25/08/2026 23:11:03
[2026-08-25 23:11:03,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:11:03,843.843 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:11:03,987.987 INFO    ] No existing commands found in stream
[2026-08-25 23:11:09,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:11:09,006.006 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-08-25 23:11:12,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:11:12,826.826 INFO    ] Checking for system updates...
[2026-08-25 23:11:12,861.861 INFO    ] 200
[2026-08-25 23:11:12,863.863 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:12,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:12,924.924 INFO    ] No update needed
[2026-08-25 23:11:12,926.926 INFO    ] Checking for camera pi updates...
[2026-08-25 23:11:12,966.966 INFO    ] 200
[2026-08-25 23:11:12,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:13,010.010 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:11:13,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:13,059.059 INFO    ] No camera update needed
[2026-08-25 23:11:13,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:11:13,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:11:13,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:11:13,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:11:15,114.114 INFO    ] ================================================
[2026-08-25 23:11:15,130.130 INFO    ] Launching Daemon at Tue Aug 25 23:11:15 IST 2026
[2026-08-25 23:11:15,141.141 INFO    ] ================================================
[2026-08-25 23:11:15,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:11:15
[2026-08-25 23:11:16,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:11:16,767.767 INFO    ] Initializing speech engine...
[2026-08-25 23:11:16,779.779 INFO    ] 2026-08-25 23:11:16
[2026-08-25 23:11:17,088.088 INFO    ] 2026-08-25 23:11:17
[2026-08-25 23:11:17,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:11:17,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:11:17,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:11:17,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:11:17,597.597 INFO    ] time= 25/08/2026 23:11:17
[2026-08-25 23:11:17,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:11:17,646.646 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:11:17,753.753 INFO    ] No existing commands found in stream
[2026-08-25 23:11:22,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:11:22,786.786 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 23:11:24,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:11:24,617.617 INFO    ] Checking for system updates...
[2026-08-25 23:11:24,653.653 INFO    ] 200
[2026-08-25 23:11:24,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:24,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:24,713.713 INFO    ] No update needed
[2026-08-25 23:11:24,716.716 INFO    ] Checking for camera pi updates...
[2026-08-25 23:11:24,756.756 INFO    ] 200
[2026-08-25 23:11:24,758.758 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:24,804.804 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:11:24,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:24,946.946 INFO    ] No camera update needed
[2026-08-25 23:11:24,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:11:24,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:11:24,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:11:24,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:11:27,001.001 INFO    ] ================================================
[2026-08-25 23:11:27,016.016 INFO    ] Launching Daemon at Tue Aug 25 23:11:27 IST 2026
[2026-08-25 23:11:27,028.028 INFO    ] ================================================
[2026-08-25 23:11:27,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:11:27
[2026-08-25 23:11:28,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:11:28,444.444 INFO    ] Initializing speech engine...
[2026-08-25 23:11:28,452.452 INFO    ] 2026-08-25 23:11:28
[2026-08-25 23:11:28,698.698 INFO    ] 2026-08-25 23:11:28
[2026-08-25 23:11:28,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:11:28,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:11:28,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:11:29,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:11:29,171.171 INFO    ] time= 25/08/2026 23:11:29
[2026-08-25 23:11:29,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:11:29,257.257 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:11:29,399.399 INFO    ] No existing commands found in stream
[2026-08-25 23:11:34,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:11:34,417.417 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-08-25 23:11:38,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:11:38,136.136 INFO    ] Checking for system updates...
[2026-08-25 23:11:38,172.172 INFO    ] 200
[2026-08-25 23:11:38,175.175 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:38,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:38,232.232 INFO    ] No update needed
[2026-08-25 23:11:38,235.235 INFO    ] Checking for camera pi updates...
[2026-08-25 23:11:38,269.269 INFO    ] 200
[2026-08-25 23:11:38,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:38,314.314 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:11:38,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:38,368.368 INFO    ] No camera update needed
[2026-08-25 23:11:38,371.371 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:11:38,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:11:38,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:11:38,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:11:40,426.426 INFO    ] ================================================
[2026-08-25 23:11:40,442.442 INFO    ] Launching Daemon at Tue Aug 25 23:11:40 IST 2026
[2026-08-25 23:11:40,454.454 INFO    ] ================================================
[2026-08-25 23:11:41,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:11:41
[2026-08-25 23:11:41,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:11:41,865.865 INFO    ] Initializing speech engine...
[2026-08-25 23:11:41,871.871 INFO    ] 2026-08-25 23:11:41
[2026-08-25 23:11:42,171.171 INFO    ] 2026-08-25 23:11:42
[2026-08-25 23:11:42,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:11:42,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:11:42,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:11:42,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:11:42,591.591 INFO    ] time= 25/08/2026 23:11:42
[2026-08-25 23:11:42,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:11:42,603.603 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:11:42,684.684 INFO    ] No existing commands found in stream
[2026-08-25 23:11:47,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:11:47,717.717 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-08-25 23:11:50,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:11:50,083.083 INFO    ] Checking for system updates...
[2026-08-25 23:11:50,119.119 INFO    ] 200
[2026-08-25 23:11:50,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:50,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:50,185.185 INFO    ] No update needed
[2026-08-25 23:11:50,188.188 INFO    ] Checking for camera pi updates...
[2026-08-25 23:11:50,223.223 INFO    ] 200
[2026-08-25 23:11:50,226.226 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:11:50,273.273 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:11:50,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:11:50,327.327 INFO    ] No camera update needed
[2026-08-25 23:11:50,330.330 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:11:50,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:11:50,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:11:50,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:11:52,386.386 INFO    ] ================================================
[2026-08-25 23:11:52,401.401 INFO    ] Launching Daemon at Tue Aug 25 23:11:52 IST 2026
[2026-08-25 23:11:52,412.412 INFO    ] ================================================
[2026-08-25 23:11:52,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:11:52
[2026-08-25 23:11:53,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:11:53,837.837 INFO    ] Initializing speech engine...
[2026-08-25 23:11:53,847.847 INFO    ] 2026-08-25 23:11:53
[2026-08-25 23:11:54,092.092 INFO    ] 2026-08-25 23:11:54
[2026-08-25 23:11:54,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:11:54,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:11:54,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:11:54,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:11:54,581.581 INFO    ] time= 25/08/2026 23:11:54
[2026-08-25 23:11:54,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:11:54,652.652 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:11:54,795.795 INFO    ] No existing commands found in stream
[2026-08-25 23:11:59,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:11:59,812.812 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-08-25 23:12:02,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:12:02,019.019 INFO    ] Checking for system updates...
[2026-08-25 23:12:02,059.059 INFO    ] 200
[2026-08-25 23:12:02,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:02,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:12:02,148.148 INFO    ] No update needed
[2026-08-25 23:12:02,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 23:12:02,196.196 INFO    ] 200
[2026-08-25 23:12:02,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:02,253.253 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:12:02,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:12:02,346.346 INFO    ] No camera update needed
[2026-08-25 23:12:02,349.349 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:12:02,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:12:02,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:12:02,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:12:04,407.407 INFO    ] ================================================
[2026-08-25 23:12:04,423.423 INFO    ] Launching Daemon at Tue Aug 25 23:12:04 IST 2026
[2026-08-25 23:12:04,434.434 INFO    ] ================================================
[2026-08-25 23:12:05,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:12:04
[2026-08-25 23:12:05,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:12:05,852.852 INFO    ] Initializing speech engine...
[2026-08-25 23:12:05,862.862 INFO    ] 2026-08-25 23:12:05
[2026-08-25 23:12:06,109.109 INFO    ] 2026-08-25 23:12:06
[2026-08-25 23:12:06,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:12:06,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:12:06,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:12:06,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:12:06,612.612 INFO    ] time= 25/08/2026 23:12:06
[2026-08-25 23:12:06,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:12:06,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:12:06,836.836 INFO    ] No existing commands found in stream
[2026-08-25 23:12:11,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:12:11,857.857 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 23:12:12,891.891 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:12:12,894.894 INFO    ] Checking for system updates...
[2026-08-25 23:12:12,930.930 INFO    ] 200
[2026-08-25 23:12:12,932.932 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:12,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:12:12,988.988 INFO    ] No update needed
[2026-08-25 23:12:12,990.990 INFO    ] Checking for camera pi updates...
[2026-08-25 23:12:13,024.024 INFO    ] 200
[2026-08-25 23:12:13,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:13,067.067 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:12:13,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:12:13,120.120 INFO    ] No camera update needed
[2026-08-25 23:12:13,122.122 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:12:13,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:12:13,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:12:13,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:12:15,177.177 INFO    ] ================================================
[2026-08-25 23:12:15,192.192 INFO    ] Launching Daemon at Tue Aug 25 23:12:15 IST 2026
[2026-08-25 23:12:15,203.203 INFO    ] ================================================
[2026-08-25 23:12:15,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:12:15
[2026-08-25 23:12:16,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:12:16,615.615 INFO    ] Initializing speech engine...
[2026-08-25 23:12:16,627.627 INFO    ] 2026-08-25 23:12:16
[2026-08-25 23:12:16,874.874 INFO    ] 2026-08-25 23:12:16
[2026-08-25 23:12:16,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:12:17,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:12:17,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:12:17,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:12:17,355.355 INFO    ] time= 25/08/2026 23:12:17
[2026-08-25 23:12:17,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:12:17,438.438 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:12:17,580.580 INFO    ] No existing commands found in stream
[2026-08-25 23:12:22,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:12:22,599.599 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-08-25 23:12:25,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:12:25,184.184 INFO    ] Checking for system updates...
[2026-08-25 23:12:25,219.219 INFO    ] 200
[2026-08-25 23:12:25,221.221 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:25,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:12:25,277.277 INFO    ] No update needed
[2026-08-25 23:12:25,279.279 INFO    ] Checking for camera pi updates...
[2026-08-25 23:12:25,312.312 INFO    ] 200
[2026-08-25 23:12:25,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:25,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:12:25,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:12:25,407.407 INFO    ] No camera update needed
[2026-08-25 23:12:25,409.409 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:12:25,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:12:25,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:12:25,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:12:27,464.464 INFO    ] ================================================
[2026-08-25 23:12:27,481.481 INFO    ] Launching Daemon at Tue Aug 25 23:12:27 IST 2026
[2026-08-25 23:12:27,493.493 INFO    ] ================================================
[2026-08-25 23:12:28,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:12:28
[2026-08-25 23:12:28,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:12:29,113.113 INFO    ] Initializing speech engine...
[2026-08-25 23:12:29,131.131 INFO    ] 2026-08-25 23:12:29
[2026-08-25 23:12:29,388.388 INFO    ] 2026-08-25 23:12:29
[2026-08-25 23:12:29,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:12:29,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:12:29,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:12:29,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:12:29,766.766 INFO    ] time= 25/08/2026 23:12:29
[2026-08-25 23:12:29,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:12:29,818.818 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:12:29,943.943 INFO    ] No existing commands found in stream
[2026-08-25 23:12:34,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:12:34,978.978 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-08-25 23:12:36,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:12:36,806.806 INFO    ] Checking for system updates...
[2026-08-25 23:12:36,842.842 INFO    ] 200
[2026-08-25 23:12:36,846.846 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:36,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:12:36,930.930 INFO    ] No update needed
[2026-08-25 23:12:36,934.934 INFO    ] Checking for camera pi updates...
[2026-08-25 23:12:36,999.999 INFO    ] 200
[2026-08-25 23:12:37,002.002 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:37,074.074 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:12:37,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:12:37,126.126 INFO    ] No camera update needed
[2026-08-25 23:12:37,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:12:37,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:12:37,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:12:37,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:12:39,187.187 INFO    ] ================================================
[2026-08-25 23:12:39,202.202 INFO    ] Launching Daemon at Tue Aug 25 23:12:39 IST 2026
[2026-08-25 23:12:39,215.215 INFO    ] ================================================
[2026-08-25 23:12:39,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:12:39
[2026-08-25 23:12:40,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:12:40,825.825 INFO    ] Initializing speech engine...
[2026-08-25 23:12:40,841.841 INFO    ] 2026-08-25 23:12:40
[2026-08-25 23:12:41,172.172 INFO    ] 2026-08-25 23:12:41
[2026-08-25 23:12:41,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:12:41,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:12:41,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:12:41,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:12:41,593.593 INFO    ] time= 25/08/2026 23:12:41
[2026-08-25 23:12:41,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:12:41,699.699 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:12:41,792.792 INFO    ] No existing commands found in stream
[2026-08-25 23:12:46,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:12:46,826.826 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-08-25 23:12:47,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:12:47,833.833 INFO    ] Checking for system updates...
[2026-08-25 23:12:47,870.870 INFO    ] 200
[2026-08-25 23:12:47,872.872 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:47,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:12:47,927.927 INFO    ] No update needed
[2026-08-25 23:12:47,929.929 INFO    ] Checking for camera pi updates...
[2026-08-25 23:12:47,962.962 INFO    ] 200
[2026-08-25 23:12:47,965.965 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:12:48,007.007 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:12:48,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:12:48,059.059 INFO    ] No camera update needed
[2026-08-25 23:12:48,062.062 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:12:48,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:12:48,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:12:48,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:12:50,116.116 INFO    ] ================================================
[2026-08-25 23:12:50,132.132 INFO    ] Launching Daemon at Tue Aug 25 23:12:50 IST 2026
[2026-08-25 23:12:50,143.143 INFO    ] ================================================
[2026-08-25 23:12:50,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:12:50
[2026-08-25 23:12:51,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:12:51,752.752 INFO    ] Initializing speech engine...
[2026-08-25 23:12:51,761.761 INFO    ] 2026-08-25 23:12:51
[2026-08-25 23:12:52,048.048 INFO    ] 2026-08-25 23:12:52
[2026-08-25 23:12:52,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:12:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:12:52,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:12:52,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:12:52,584.584 INFO    ] time= 25/08/2026 23:12:52
[2026-08-25 23:12:52,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:12:52,612.612 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:12:52,741.741 INFO    ] No existing commands found in stream
[2026-08-25 23:12:57,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:12:57,760.760 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 23:13:00,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:13:00,182.182 INFO    ] Checking for system updates...
[2026-08-25 23:13:00,220.220 INFO    ] 200
[2026-08-25 23:13:00,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:00,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:00,278.278 INFO    ] No update needed
[2026-08-25 23:13:00,280.280 INFO    ] Checking for camera pi updates...
[2026-08-25 23:13:00,315.315 INFO    ] 200
[2026-08-25 23:13:00,318.318 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:00,361.361 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:13:00,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:00,414.414 INFO    ] No camera update needed
[2026-08-25 23:13:00,416.416 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:13:00,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:13:00,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:13:00,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:13:02,483.483 INFO    ] ================================================
[2026-08-25 23:13:02,503.503 INFO    ] Launching Daemon at Tue Aug 25 23:13:02 IST 2026
[2026-08-25 23:13:02,520.520 INFO    ] ================================================
[2026-08-25 23:13:03,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:13:03
[2026-08-25 23:13:03,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:13:04,066.066 INFO    ] Initializing speech engine...
[2026-08-25 23:13:04,086.086 INFO    ] 2026-08-25 23:13:04
[2026-08-25 23:13:04,352.352 INFO    ] 2026-08-25 23:13:04
[2026-08-25 23:13:04,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:13:04,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:13:04,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:13:04,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:13:04,757.757 INFO    ] time= 25/08/2026 23:13:04
[2026-08-25 23:13:04,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:13:04,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:13:04,945.945 INFO    ] No existing commands found in stream
[2026-08-25 23:13:09,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:13:09,973.973 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 23:13:12,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:13:12,093.093 INFO    ] Checking for system updates...
[2026-08-25 23:13:12,129.129 INFO    ] 200
[2026-08-25 23:13:12,131.131 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:12,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:12,187.187 INFO    ] No update needed
[2026-08-25 23:13:12,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 23:13:12,232.232 INFO    ] 200
[2026-08-25 23:13:12,234.234 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:12,276.276 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:13:12,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:12,322.322 INFO    ] No camera update needed
[2026-08-25 23:13:12,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:13:12,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:13:12,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:13:12,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:13:14,376.376 INFO    ] ================================================
[2026-08-25 23:13:14,390.390 INFO    ] Launching Daemon at Tue Aug 25 23:13:14 IST 2026
[2026-08-25 23:13:14,401.401 INFO    ] ================================================
[2026-08-25 23:13:15,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:13:15
[2026-08-25 23:13:15,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:13:15,983.983 INFO    ] Initializing speech engine...
[2026-08-25 23:13:15,991.991 INFO    ] 2026-08-25 23:13:15
[2026-08-25 23:13:16,259.259 INFO    ] 2026-08-25 23:13:16
[2026-08-25 23:13:16,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:13:16,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:13:16,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:13:16,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:13:16,730.730 INFO    ] time= 25/08/2026 23:13:16
[2026-08-25 23:13:16,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:13:16,813.813 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:13:16,949.949 INFO    ] No existing commands found in stream
[2026-08-25 23:13:21,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:13:21,973.973 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-08-25 23:13:25,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:13:25,771.771 INFO    ] Checking for system updates...
[2026-08-25 23:13:25,806.806 INFO    ] 200
[2026-08-25 23:13:25,808.808 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:25,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:13:25,867.867 INFO    ] No update needed
[2026-08-25 23:13:25,870.870 INFO    ] Checking for camera pi updates...
[2026-08-25 23:13:25,904.904 INFO    ] 200
[2026-08-25 23:13:25,906.906 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:25,946.946 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:13:25,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:13:25,992.992 INFO    ] No camera update needed
[2026-08-25 23:13:25,995.995 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:13:25,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:13:26,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:13:26,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:13:28,047.047 INFO    ] ================================================
[2026-08-25 23:13:28,062.062 INFO    ] Launching Daemon at Tue Aug 25 23:13:28 IST 2026
[2026-08-25 23:13:28,073.073 INFO    ] ================================================
[2026-08-25 23:13:28,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:13:28
[2026-08-25 23:13:29,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:13:29,481.481 INFO    ] Initializing speech engine...
[2026-08-25 23:13:29,497.497 INFO    ] 2026-08-25 23:13:29
[2026-08-25 23:13:29,752.752 INFO    ] 2026-08-25 23:13:29
[2026-08-25 23:13:29,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:13:29,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:13:29,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:13:30,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:13:30,126.126 INFO    ] time= 25/08/2026 23:13:30
[2026-08-25 23:13:30,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:13:30,153.153 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:13:30,283.283 INFO    ] No existing commands found in stream
[2026-08-25 23:13:35,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:13:35,309.309 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-08-25 23:13:37,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:13:37,281.281 INFO    ] Checking for system updates...
[2026-08-25 23:13:37,330.330 INFO    ] 200
[2026-08-25 23:13:37,333.333 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:37,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:37,387.387 INFO    ] No update needed
[2026-08-25 23:13:37,390.390 INFO    ] Checking for camera pi updates...
[2026-08-25 23:13:37,423.423 INFO    ] 200
[2026-08-25 23:13:37,426.426 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:37,465.465 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:13:37,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:37,516.516 INFO    ] No camera update needed
[2026-08-25 23:13:37,519.519 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:13:37,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:13:37,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:13:37,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:13:39,570.570 INFO    ] ================================================
[2026-08-25 23:13:39,585.585 INFO    ] Launching Daemon at Tue Aug 25 23:13:39 IST 2026
[2026-08-25 23:13:39,595.595 INFO    ] ================================================
[2026-08-25 23:13:40,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:13:40
[2026-08-25 23:13:40,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:13:41,007.007 INFO    ] Initializing speech engine...
[2026-08-25 23:13:41,021.021 INFO    ] 2026-08-25 23:13:41
[2026-08-25 23:13:41,300.300 INFO    ] 2026-08-25 23:13:41
[2026-08-25 23:13:41,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:13:41,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:13:41,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:13:41,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:13:41,709.709 INFO    ] time= 25/08/2026 23:13:41
[2026-08-25 23:13:41,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:13:41,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:13:41,793.793 INFO    ] No existing commands found in stream
[2026-08-25 23:13:46,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:13:46,821.821 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 23:13:49,955.955 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:13:49,957.957 INFO    ] Checking for system updates...
[2026-08-25 23:13:49,993.993 INFO    ] 200
[2026-08-25 23:13:49,995.995 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:50,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:50,050.050 INFO    ] No update needed
[2026-08-25 23:13:50,052.052 INFO    ] Checking for camera pi updates...
[2026-08-25 23:13:50,086.086 INFO    ] 200
[2026-08-25 23:13:50,088.088 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:13:50,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:13:50,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:13:50,183.183 INFO    ] No camera update needed
[2026-08-25 23:13:50,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:13:50,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:13:50,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:13:50,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:13:52,238.238 INFO    ] ================================================
[2026-08-25 23:13:52,253.253 INFO    ] Launching Daemon at Tue Aug 25 23:13:52 IST 2026
[2026-08-25 23:13:52,264.264 INFO    ] ================================================
[2026-08-25 23:13:52,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:13:52
[2026-08-25 23:13:53,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:13:53,688.688 INFO    ] Initializing speech engine...
[2026-08-25 23:13:53,703.703 INFO    ] 2026-08-25 23:13:53
[2026-08-25 23:13:53,970.970 INFO    ] 2026-08-25 23:13:53
[2026-08-25 23:13:54,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:13:54,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:13:54,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:13:54,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:13:54,338.338 INFO    ] time= 25/08/2026 23:13:54
[2026-08-25 23:13:54,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:13:54,381.381 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:13:54,461.461 INFO    ] No existing commands found in stream
[2026-08-25 23:13:59,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:13:59,475.475 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-08-25 23:14:02,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:14:02,990.990 INFO    ] Checking for system updates...
[2026-08-25 23:14:03,028.028 INFO    ] 200
[2026-08-25 23:14:03,031.031 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:03,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:14:03,091.091 INFO    ] No update needed
[2026-08-25 23:14:03,095.095 INFO    ] Checking for camera pi updates...
[2026-08-25 23:14:03,129.129 INFO    ] 200
[2026-08-25 23:14:03,132.132 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:03,172.172 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:14:03,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:14:03,226.226 INFO    ] No camera update needed
[2026-08-25 23:14:03,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:14:03,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:14:03,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:14:03,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:14:05,282.282 INFO    ] ================================================
[2026-08-25 23:14:05,296.296 INFO    ] Launching Daemon at Tue Aug 25 23:14:05 IST 2026
[2026-08-25 23:14:05,307.307 INFO    ] ================================================
[2026-08-25 23:14:05,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:14:05
[2026-08-25 23:14:06,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:14:06,740.740 INFO    ] Initializing speech engine...
[2026-08-25 23:14:06,754.754 INFO    ] 2026-08-25 23:14:06
[2026-08-25 23:14:07,019.019 INFO    ] 2026-08-25 23:14:07
[2026-08-25 23:14:07,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:14:07,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:14:07,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:14:07,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:14:07,420.420 INFO    ] time= 25/08/2026 23:14:07
[2026-08-25 23:14:07,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:14:07,431.431 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:14:07,503.503 INFO    ] No existing commands found in stream
[2026-08-25 23:14:12,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:14:12,518.518 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-08-25 23:14:14,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:14:14,662.662 INFO    ] Checking for system updates...
[2026-08-25 23:14:14,697.697 INFO    ] 200
[2026-08-25 23:14:14,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:14,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:14:14,753.753 INFO    ] No update needed
[2026-08-25 23:14:14,756.756 INFO    ] Checking for camera pi updates...
[2026-08-25 23:14:14,789.789 INFO    ] 200
[2026-08-25 23:14:14,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:14,831.831 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:14:14,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:14:14,876.876 INFO    ] No camera update needed
[2026-08-25 23:14:14,879.879 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:14:14,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:14:14,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:14:14,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:14:16,933.933 INFO    ] ================================================
[2026-08-25 23:14:16,948.948 INFO    ] Launching Daemon at Tue Aug 25 23:14:16 IST 2026
[2026-08-25 23:14:16,959.959 INFO    ] ================================================
[2026-08-25 23:14:17,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:14:17
[2026-08-25 23:14:18,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:14:18,408.408 INFO    ] Initializing speech engine...
[2026-08-25 23:14:18,414.414 INFO    ] 2026-08-25 23:14:18
[2026-08-25 23:14:18,671.671 INFO    ] 2026-08-25 23:14:18
[2026-08-25 23:14:18,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:14:18,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:14:18,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:14:19,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:14:19,070.070 INFO    ] time= 25/08/2026 23:14:19
[2026-08-25 23:14:19,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:14:19,125.125 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:14:19,248.248 INFO    ] No existing commands found in stream
[2026-08-25 23:14:24,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:14:24,281.281 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-08-25 23:14:24,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:14:24,954.954 INFO    ] Checking for system updates...
[2026-08-25 23:14:24,990.990 INFO    ] 200
[2026-08-25 23:14:24,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:25,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:14:25,058.058 INFO    ] No update needed
[2026-08-25 23:14:25,060.060 INFO    ] Checking for camera pi updates...
[2026-08-25 23:14:25,097.097 INFO    ] 200
[2026-08-25 23:14:25,100.100 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:25,146.146 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:14:25,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:14:25,194.194 INFO    ] No camera update needed
[2026-08-25 23:14:25,197.197 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:14:25,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:14:25,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:14:25,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:14:27,251.251 INFO    ] ================================================
[2026-08-25 23:14:27,265.265 INFO    ] Launching Daemon at Tue Aug 25 23:14:27 IST 2026
[2026-08-25 23:14:27,276.276 INFO    ] ================================================
[2026-08-25 23:14:27,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:14:27
[2026-08-25 23:14:28,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:14:28,692.692 INFO    ] Initializing speech engine...
[2026-08-25 23:14:28,700.700 INFO    ] 2026-08-25 23:14:28
[2026-08-25 23:14:28,954.954 INFO    ] 2026-08-25 23:14:28
[2026-08-25 23:14:28,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:14:29,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:14:29,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:14:29,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:14:29,325.325 INFO    ] time= 25/08/2026 23:14:29
[2026-08-25 23:14:29,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:14:29,335.335 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:14:29,444.444 INFO    ] No existing commands found in stream
[2026-08-25 23:14:34,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:14:34,471.471 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-08-25 23:14:36,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:14:36,039.039 INFO    ] Checking for system updates...
[2026-08-25 23:14:36,074.074 INFO    ] 200
[2026-08-25 23:14:36,076.076 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:36,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:14:36,131.131 INFO    ] No update needed
[2026-08-25 23:14:36,134.134 INFO    ] Checking for camera pi updates...
[2026-08-25 23:14:36,167.167 INFO    ] 200
[2026-08-25 23:14:36,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:36,209.209 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:14:36,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:14:36,263.263 INFO    ] No camera update needed
[2026-08-25 23:14:36,265.265 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:14:36,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:14:36,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:14:36,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:14:38,318.318 INFO    ] ================================================
[2026-08-25 23:14:38,333.333 INFO    ] Launching Daemon at Tue Aug 25 23:14:38 IST 2026
[2026-08-25 23:14:38,344.344 INFO    ] ================================================
[2026-08-25 23:14:38,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:14:38
[2026-08-25 23:14:39,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:14:39,923.923 INFO    ] Initializing speech engine...
[2026-08-25 23:14:39,934.934 INFO    ] 2026-08-25 23:14:39
[2026-08-25 23:14:40,222.222 INFO    ] 2026-08-25 23:14:40
[2026-08-25 23:14:40,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:14:40,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:14:40,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:14:40,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:14:40,758.758 INFO    ] time= 25/08/2026 23:14:40
[2026-08-25 23:14:40,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:14:40,779.779 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:14:40,896.896 INFO    ] No existing commands found in stream
[2026-08-25 23:14:45,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:14:45,923.923 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-08-25 23:14:50,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:14:50,130.130 INFO    ] Checking for system updates...
[2026-08-25 23:14:50,166.166 INFO    ] 200
[2026-08-25 23:14:50,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:50,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:14:50,223.223 INFO    ] No update needed
[2026-08-25 23:14:50,226.226 INFO    ] Checking for camera pi updates...
[2026-08-25 23:14:50,259.259 INFO    ] 200
[2026-08-25 23:14:50,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:14:50,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:14:50,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:14:50,354.354 INFO    ] No camera update needed
[2026-08-25 23:14:50,357.357 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:14:50,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:14:50,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:14:50,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:14:52,408.408 INFO    ] ================================================
[2026-08-25 23:14:52,424.424 INFO    ] Launching Daemon at Tue Aug 25 23:14:52 IST 2026
[2026-08-25 23:14:52,435.435 INFO    ] ================================================
[2026-08-25 23:14:53,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:14:53
[2026-08-25 23:14:53,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:14:53,848.848 INFO    ] Initializing speech engine...
[2026-08-25 23:14:53,866.866 INFO    ] 2026-08-25 23:14:53
[2026-08-25 23:14:54,112.112 INFO    ] 2026-08-25 23:14:54
[2026-08-25 23:14:54,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:14:54,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:14:54,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:14:54,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:14:54,559.559 INFO    ] time= 25/08/2026 23:14:54
[2026-08-25 23:14:54,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:14:54,668.668 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:14:54,799.799 INFO    ] No existing commands found in stream
[2026-08-25 23:14:59,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:14:59,829.829 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 23:15:00,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:15:00,928.928 INFO    ] Checking for system updates...
[2026-08-25 23:15:00,963.963 INFO    ] 200
[2026-08-25 23:15:00,966.966 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:01,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:15:01,021.021 INFO    ] No update needed
[2026-08-25 23:15:01,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 23:15:01,060.060 INFO    ] 200
[2026-08-25 23:15:01,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:01,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:15:01,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:15:01,155.155 INFO    ] No camera update needed
[2026-08-25 23:15:01,157.157 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:15:01,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:15:01,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:15:01,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:15:03,220.220 INFO    ] ================================================
[2026-08-25 23:15:03,237.237 INFO    ] Launching Daemon at Tue Aug 25 23:15:03 IST 2026
[2026-08-25 23:15:03,249.249 INFO    ] ================================================
[2026-08-25 23:15:03,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:15:03
[2026-08-25 23:15:04,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:15:04,809.809 INFO    ] Initializing speech engine...
[2026-08-25 23:15:04,823.823 INFO    ] 2026-08-25 23:15:04
[2026-08-25 23:15:05,097.097 INFO    ] 2026-08-25 23:15:05
[2026-08-25 23:15:05,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:15:05,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:15:05,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:15:05,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:15:05,579.579 INFO    ] time= 25/08/2026 23:15:05
[2026-08-25 23:15:05,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:15:05,654.654 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:15:05,779.779 INFO    ] No existing commands found in stream
[2026-08-25 23:15:10,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:15:10,802.802 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-08-25 23:15:14,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:15:14,698.698 INFO    ] Checking for system updates...
[2026-08-25 23:15:14,737.737 INFO    ] 200
[2026-08-25 23:15:14,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:14,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:15:14,805.805 INFO    ] No update needed
[2026-08-25 23:15:14,807.807 INFO    ] Checking for camera pi updates...
[2026-08-25 23:15:14,840.840 INFO    ] 200
[2026-08-25 23:15:14,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:14,886.886 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:15:14,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:15:14,948.948 INFO    ] No camera update needed
[2026-08-25 23:15:14,950.950 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:15:14,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:15:14,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:15:14,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:15:17,002.002 INFO    ] ================================================
[2026-08-25 23:15:17,018.018 INFO    ] Launching Daemon at Tue Aug 25 23:15:17 IST 2026
[2026-08-25 23:15:17,029.029 INFO    ] ================================================
[2026-08-25 23:15:17,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:15:17
[2026-08-25 23:15:18,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:15:18,450.450 INFO    ] Initializing speech engine...
[2026-08-25 23:15:18,458.458 INFO    ] 2026-08-25 23:15:18
[2026-08-25 23:15:18,713.713 INFO    ] 2026-08-25 23:15:18
[2026-08-25 23:15:18,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:15:18,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:15:18,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:15:19,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:15:19,166.166 INFO    ] time= 25/08/2026 23:15:19
[2026-08-25 23:15:19,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:15:19,263.263 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:15:19,375.375 INFO    ] No existing commands found in stream
[2026-08-25 23:15:24,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:15:24,407.407 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 23:15:27,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:15:27,322.322 INFO    ] Checking for system updates...
[2026-08-25 23:15:27,361.361 INFO    ] 200
[2026-08-25 23:15:27,363.363 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:27,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:15:27,417.417 INFO    ] No update needed
[2026-08-25 23:15:27,420.420 INFO    ] Checking for camera pi updates...
[2026-08-25 23:15:27,455.455 INFO    ] 200
[2026-08-25 23:15:27,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:27,498.498 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:15:27,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:15:27,552.552 INFO    ] No camera update needed
[2026-08-25 23:15:27,555.555 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:15:27,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:15:27,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:15:27,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:15:29,609.609 INFO    ] ================================================
[2026-08-25 23:15:29,625.625 INFO    ] Launching Daemon at Tue Aug 25 23:15:29 IST 2026
[2026-08-25 23:15:29,636.636 INFO    ] ================================================
[2026-08-25 23:15:30,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:15:30
[2026-08-25 23:15:30,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:15:31,054.054 INFO    ] Initializing speech engine...
[2026-08-25 23:15:31,067.067 INFO    ] 2026-08-25 23:15:31
[2026-08-25 23:15:31,316.316 INFO    ] 2026-08-25 23:15:31
[2026-08-25 23:15:31,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:15:31,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:15:31,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:15:31,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:15:31,819.819 INFO    ] time= 25/08/2026 23:15:31
[2026-08-25 23:15:31,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:15:31,905.905 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:15:32,047.047 INFO    ] No existing commands found in stream
[2026-08-25 23:15:37,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:15:37,075.075 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-08-25 23:15:38,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:15:38,112.112 INFO    ] Checking for system updates...
[2026-08-25 23:15:38,148.148 INFO    ] 200
[2026-08-25 23:15:38,151.151 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:38,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:15:38,205.205 INFO    ] No update needed
[2026-08-25 23:15:38,208.208 INFO    ] Checking for camera pi updates...
[2026-08-25 23:15:38,242.242 INFO    ] 200
[2026-08-25 23:15:38,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:38,289.289 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:15:38,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:15:38,441.441 INFO    ] No camera update needed
[2026-08-25 23:15:38,444.444 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:15:38,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:15:38,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:15:38,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:15:40,496.496 INFO    ] ================================================
[2026-08-25 23:15:40,511.511 INFO    ] Launching Daemon at Tue Aug 25 23:15:40 IST 2026
[2026-08-25 23:15:40,523.523 INFO    ] ================================================
[2026-08-25 23:15:41,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:15:41
[2026-08-25 23:15:41,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:15:41,975.975 INFO    ] Initializing speech engine...
[2026-08-25 23:15:41,985.985 INFO    ] 2026-08-25 23:15:41
[2026-08-25 23:15:42,246.246 INFO    ] 2026-08-25 23:15:42
[2026-08-25 23:15:42,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:15:42,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:15:42,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:15:42,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:15:42,608.608 INFO    ] time= 25/08/2026 23:15:42
[2026-08-25 23:15:42,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:15:42,649.649 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:15:42,730.730 INFO    ] No existing commands found in stream
[2026-08-25 23:15:47,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:15:47,748.748 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 23:15:50,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:15:50,991.991 INFO    ] Checking for system updates...
[2026-08-25 23:15:51,026.026 INFO    ] 200
[2026-08-25 23:15:51,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:51,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:15:51,082.082 INFO    ] No update needed
[2026-08-25 23:15:51,085.085 INFO    ] Checking for camera pi updates...
[2026-08-25 23:15:51,121.121 INFO    ] 200
[2026-08-25 23:15:51,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:15:51,166.166 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:15:51,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:15:51,221.221 INFO    ] No camera update needed
[2026-08-25 23:15:51,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:15:51,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:15:51,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:15:51,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:15:53,276.276 INFO    ] ================================================
[2026-08-25 23:15:53,291.291 INFO    ] Launching Daemon at Tue Aug 25 23:15:53 IST 2026
[2026-08-25 23:15:53,302.302 INFO    ] ================================================
[2026-08-25 23:15:53,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:15:53
[2026-08-25 23:15:54,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:15:54,850.850 INFO    ] Initializing speech engine...
[2026-08-25 23:15:54,860.860 INFO    ] 2026-08-25 23:15:54
[2026-08-25 23:15:55,128.128 INFO    ] 2026-08-25 23:15:55
[2026-08-25 23:15:55,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:15:55,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:15:55,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:15:55,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:15:55,619.619 INFO    ] time= 25/08/2026 23:15:55
[2026-08-25 23:15:55,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:15:55,696.696 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:15:55,828.828 INFO    ] No existing commands found in stream
[2026-08-25 23:16:00,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:16:00,855.855 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-08-25 23:16:03,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:16:03,067.067 INFO    ] Checking for system updates...
[2026-08-25 23:16:03,114.114 INFO    ] 200
[2026-08-25 23:16:03,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:03,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:03,205.205 INFO    ] No update needed
[2026-08-25 23:16:03,208.208 INFO    ] Checking for camera pi updates...
[2026-08-25 23:16:03,264.264 INFO    ] 200
[2026-08-25 23:16:03,267.267 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:03,315.315 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:16:03,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:03,376.376 INFO    ] No camera update needed
[2026-08-25 23:16:03,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:16:03,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:16:03,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:16:03,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:16:05,441.441 INFO    ] ================================================
[2026-08-25 23:16:05,456.456 INFO    ] Launching Daemon at Tue Aug 25 23:16:05 IST 2026
[2026-08-25 23:16:05,467.467 INFO    ] ================================================
[2026-08-25 23:16:06,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:16:06
[2026-08-25 23:16:06,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:16:07,121.121 INFO    ] Initializing speech engine...
[2026-08-25 23:16:07,129.129 INFO    ] 2026-08-25 23:16:07
[2026-08-25 23:16:07,448.448 INFO    ] 2026-08-25 23:16:07
[2026-08-25 23:16:07,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:16:07,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:16:07,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:16:07,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:16:07,957.957 INFO    ] time= 25/08/2026 23:16:07
[2026-08-25 23:16:08,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:16:08,016.016 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:16:08,116.116 INFO    ] No existing commands found in stream
[2026-08-25 23:16:13,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:16:13,142.142 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-08-25 23:16:16,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:16:16,427.427 INFO    ] Checking for system updates...
[2026-08-25 23:16:16,469.469 INFO    ] 200
[2026-08-25 23:16:16,473.473 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:16,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:16,542.542 INFO    ] No update needed
[2026-08-25 23:16:16,545.545 INFO    ] Checking for camera pi updates...
[2026-08-25 23:16:16,579.579 INFO    ] 200
[2026-08-25 23:16:16,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:16,623.623 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:16:16,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:16,672.672 INFO    ] No camera update needed
[2026-08-25 23:16:16,675.675 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:16:16,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:16:16,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:16:16,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:16:18,732.732 INFO    ] ================================================
[2026-08-25 23:16:18,748.748 INFO    ] Launching Daemon at Tue Aug 25 23:16:18 IST 2026
[2026-08-25 23:16:18,759.759 INFO    ] ================================================
[2026-08-25 23:16:19,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:16:19
[2026-08-25 23:16:19,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:16:20,180.180 INFO    ] Initializing speech engine...
[2026-08-25 23:16:20,188.188 INFO    ] 2026-08-25 23:16:20
[2026-08-25 23:16:20,490.490 INFO    ] 2026-08-25 23:16:20
[2026-08-25 23:16:20,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:16:20,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:16:20,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:16:20,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:16:20,882.882 INFO    ] time= 25/08/2026 23:16:20
[2026-08-25 23:16:20,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:16:20,928.928 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:16:21,012.012 INFO    ] No existing commands found in stream
[2026-08-25 23:16:26,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:16:26,028.028 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-08-25 23:16:29,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:16:29,164.164 INFO    ] Checking for system updates...
[2026-08-25 23:16:29,206.206 INFO    ] 200
[2026-08-25 23:16:29,209.209 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:29,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:16:29,265.265 INFO    ] No update needed
[2026-08-25 23:16:29,268.268 INFO    ] Checking for camera pi updates...
[2026-08-25 23:16:29,302.302 INFO    ] 200
[2026-08-25 23:16:29,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:29,350.350 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:16:29,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:16:29,402.402 INFO    ] No camera update needed
[2026-08-25 23:16:29,405.405 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:16:29,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:16:29,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:16:29,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:16:31,461.461 INFO    ] ================================================
[2026-08-25 23:16:31,477.477 INFO    ] Launching Daemon at Tue Aug 25 23:16:31 IST 2026
[2026-08-25 23:16:31,488.488 INFO    ] ================================================
[2026-08-25 23:16:32,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:16:32
[2026-08-25 23:16:32,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:16:33,072.072 INFO    ] Initializing speech engine...
[2026-08-25 23:16:33,087.087 INFO    ] 2026-08-25 23:16:33
[2026-08-25 23:16:33,351.351 INFO    ] 2026-08-25 23:16:33
[2026-08-25 23:16:33,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:16:33,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:16:33,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:16:33,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:16:33,812.812 INFO    ] time= 25/08/2026 23:16:33
[2026-08-25 23:16:33,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:16:33,912.912 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:16:33,970.970 INFO    ] No existing commands found in stream
[2026-08-25 23:16:38,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:16:38,985.985 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-08-25 23:16:41,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:16:41,512.512 INFO    ] Checking for system updates...
[2026-08-25 23:16:41,553.553 INFO    ] 200
[2026-08-25 23:16:41,555.555 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:41,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:41,618.618 INFO    ] No update needed
[2026-08-25 23:16:41,620.620 INFO    ] Checking for camera pi updates...
[2026-08-25 23:16:41,653.653 INFO    ] 200
[2026-08-25 23:16:41,656.656 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:41,696.696 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:16:41,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:41,755.755 INFO    ] No camera update needed
[2026-08-25 23:16:41,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:16:41,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:16:41,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:16:41,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:16:43,812.812 INFO    ] ================================================
[2026-08-25 23:16:43,827.827 INFO    ] Launching Daemon at Tue Aug 25 23:16:43 IST 2026
[2026-08-25 23:16:43,838.838 INFO    ] ================================================
[2026-08-25 23:16:44,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:16:44
[2026-08-25 23:16:44,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:16:45,249.249 INFO    ] Initializing speech engine...
[2026-08-25 23:16:45,255.255 INFO    ] 2026-08-25 23:16:45
[2026-08-25 23:16:45,557.557 INFO    ] 2026-08-25 23:16:45
[2026-08-25 23:16:45,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:16:45,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:16:45,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:16:45,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:16:45,946.946 INFO    ] time= 25/08/2026 23:16:45
[2026-08-25 23:16:45,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:16:45,972.972 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:16:46,077.077 INFO    ] No existing commands found in stream
[2026-08-25 23:16:51,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:16:51,090.090 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 23:16:55,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:16:55,442.442 INFO    ] Checking for system updates...
[2026-08-25 23:16:55,478.478 INFO    ] 200
[2026-08-25 23:16:55,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:55,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:55,535.535 INFO    ] No update needed
[2026-08-25 23:16:55,538.538 INFO    ] Checking for camera pi updates...
[2026-08-25 23:16:55,576.576 INFO    ] 200
[2026-08-25 23:16:55,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:16:55,619.619 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:16:55,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:16:55,670.670 INFO    ] No camera update needed
[2026-08-25 23:16:55,673.673 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:16:55,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:16:55,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:16:55,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:16:57,725.725 INFO    ] ================================================
[2026-08-25 23:16:57,741.741 INFO    ] Launching Daemon at Tue Aug 25 23:16:57 IST 2026
[2026-08-25 23:16:57,752.752 INFO    ] ================================================
[2026-08-25 23:16:58,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:16:58
[2026-08-25 23:16:58,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:16:59,176.176 INFO    ] Initializing speech engine...
[2026-08-25 23:16:59,185.185 INFO    ] 2026-08-25 23:16:59
[2026-08-25 23:16:59,436.436 INFO    ] 2026-08-25 23:16:59
[2026-08-25 23:16:59,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:16:59,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:16:59,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:16:59,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:16:59,915.915 INFO    ] time= 25/08/2026 23:16:59
[2026-08-25 23:16:59,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:17:00,003.003 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:17:00,081.081 INFO    ] No existing commands found in stream
[2026-08-25 23:17:05,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:17:05,120.120 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-08-25 23:17:08,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:17:08,123.123 INFO    ] Checking for system updates...
[2026-08-25 23:17:08,159.159 INFO    ] 200
[2026-08-25 23:17:08,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:08,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:17:08,219.219 INFO    ] No update needed
[2026-08-25 23:17:08,221.221 INFO    ] Checking for camera pi updates...
[2026-08-25 23:17:08,259.259 INFO    ] 200
[2026-08-25 23:17:08,262.262 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:08,311.311 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:17:08,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:17:08,364.364 INFO    ] No camera update needed
[2026-08-25 23:17:08,367.367 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:17:08,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:17:08,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:17:08,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:17:10,419.419 INFO    ] ================================================
[2026-08-25 23:17:10,434.434 INFO    ] Launching Daemon at Tue Aug 25 23:17:10 IST 2026
[2026-08-25 23:17:10,446.446 INFO    ] ================================================
[2026-08-25 23:17:11,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:17:11
[2026-08-25 23:17:11,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:17:12,082.082 INFO    ] Initializing speech engine...
[2026-08-25 23:17:12,094.094 INFO    ] 2026-08-25 23:17:12
[2026-08-25 23:17:12,407.407 INFO    ] 2026-08-25 23:17:12
[2026-08-25 23:17:12,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:17:12,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:17:12,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:17:12,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:17:12,868.868 INFO    ] time= 25/08/2026 23:17:12
[2026-08-25 23:17:12,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:17:12,937.937 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:17:13,062.062 INFO    ] No existing commands found in stream
[2026-08-25 23:17:18,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:17:18,096.096 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 23:17:20,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:17:20,173.173 INFO    ] Checking for system updates...
[2026-08-25 23:17:20,210.210 INFO    ] 200
[2026-08-25 23:17:20,213.213 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:20,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:17:20,275.275 INFO    ] No update needed
[2026-08-25 23:17:20,278.278 INFO    ] Checking for camera pi updates...
[2026-08-25 23:17:20,312.312 INFO    ] 200
[2026-08-25 23:17:20,315.315 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:20,356.356 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:17:20,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:17:20,411.411 INFO    ] No camera update needed
[2026-08-25 23:17:20,413.413 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:17:20,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:17:20,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:17:20,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:17:22,470.470 INFO    ] ================================================
[2026-08-25 23:17:22,486.486 INFO    ] Launching Daemon at Tue Aug 25 23:17:22 IST 2026
[2026-08-25 23:17:22,497.497 INFO    ] ================================================
[2026-08-25 23:17:23,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:17:23
[2026-08-25 23:17:23,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:17:23,929.929 INFO    ] Initializing speech engine...
[2026-08-25 23:17:23,936.936 INFO    ] 2026-08-25 23:17:23
[2026-08-25 23:17:24,194.194 INFO    ] 2026-08-25 23:17:24
[2026-08-25 23:17:24,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:17:24,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:17:24,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:17:24,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:17:24,672.672 INFO    ] time= 25/08/2026 23:17:24
[2026-08-25 23:17:24,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:17:24,761.761 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:17:24,915.915 INFO    ] No existing commands found in stream
[2026-08-25 23:17:29,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:17:29,932.932 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-08-25 23:17:31,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:17:31,782.782 INFO    ] Checking for system updates...
[2026-08-25 23:17:31,820.820 INFO    ] 200
[2026-08-25 23:17:31,823.823 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:31,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:17:31,890.890 INFO    ] No update needed
[2026-08-25 23:17:31,894.894 INFO    ] Checking for camera pi updates...
[2026-08-25 23:17:31,935.935 INFO    ] 200
[2026-08-25 23:17:31,938.938 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:31,982.982 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:17:32,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:17:32,044.044 INFO    ] No camera update needed
[2026-08-25 23:17:32,047.047 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:17:32,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:17:32,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:17:32,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:17:34,105.105 INFO    ] ================================================
[2026-08-25 23:17:34,121.121 INFO    ] Launching Daemon at Tue Aug 25 23:17:34 IST 2026
[2026-08-25 23:17:34,132.132 INFO    ] ================================================
[2026-08-25 23:17:34,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:17:34
[2026-08-25 23:17:35,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:17:35,580.580 INFO    ] Initializing speech engine...
[2026-08-25 23:17:35,589.589 INFO    ] 2026-08-25 23:17:35
[2026-08-25 23:17:35,889.889 INFO    ] 2026-08-25 23:17:35
[2026-08-25 23:17:35,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:17:36,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:17:36,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:17:36,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:17:36,281.281 INFO    ] time= 25/08/2026 23:17:36
[2026-08-25 23:17:36,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:17:36,322.322 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:17:36,409.409 INFO    ] No existing commands found in stream
[2026-08-25 23:17:41,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:17:41,420.420 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 23:17:45,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:17:45,733.733 INFO    ] Checking for system updates...
[2026-08-25 23:17:45,769.769 INFO    ] 200
[2026-08-25 23:17:45,771.771 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:45,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:17:45,833.833 INFO    ] No update needed
[2026-08-25 23:17:45,836.836 INFO    ] Checking for camera pi updates...
[2026-08-25 23:17:45,875.875 INFO    ] 200
[2026-08-25 23:17:45,878.878 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:45,921.921 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:17:46,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:17:46,071.071 INFO    ] No camera update needed
[2026-08-25 23:17:46,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:17:46,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:17:46,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:17:46,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:17:48,130.130 INFO    ] ================================================
[2026-08-25 23:17:48,146.146 INFO    ] Launching Daemon at Tue Aug 25 23:17:48 IST 2026
[2026-08-25 23:17:48,157.157 INFO    ] ================================================
[2026-08-25 23:17:48,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:17:48
[2026-08-25 23:17:49,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:17:49,803.803 INFO    ] Initializing speech engine...
[2026-08-25 23:17:49,815.815 INFO    ] 2026-08-25 23:17:49
[2026-08-25 23:17:50,136.136 INFO    ] 2026-08-25 23:17:50
[2026-08-25 23:17:50,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:17:50,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:17:50,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:17:50,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:17:50,660.660 INFO    ] time= 25/08/2026 23:17:50
[2026-08-25 23:17:50,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:17:50,689.689 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:17:50,824.824 INFO    ] No existing commands found in stream
[2026-08-25 23:17:55,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:17:55,857.857 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-08-25 23:17:56,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:17:56,445.445 INFO    ] Checking for system updates...
[2026-08-25 23:17:56,487.487 INFO    ] 200
[2026-08-25 23:17:56,490.490 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:56,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:17:56,547.547 INFO    ] No update needed
[2026-08-25 23:17:56,549.549 INFO    ] Checking for camera pi updates...
[2026-08-25 23:17:56,583.583 INFO    ] 200
[2026-08-25 23:17:56,586.586 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:17:56,626.626 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:17:56,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:17:56,676.676 INFO    ] No camera update needed
[2026-08-25 23:17:56,678.678 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:17:56,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:17:56,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:17:56,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:17:58,732.732 INFO    ] ================================================
[2026-08-25 23:17:58,747.747 INFO    ] Launching Daemon at Tue Aug 25 23:17:58 IST 2026
[2026-08-25 23:17:58,766.766 INFO    ] ================================================
[2026-08-25 23:17:59,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:17:59
[2026-08-25 23:17:59,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:18:00,220.220 INFO    ] Initializing speech engine...
[2026-08-25 23:18:00,229.229 INFO    ] 2026-08-25 23:18:00
[2026-08-25 23:18:00,477.477 INFO    ] 2026-08-25 23:18:00
[2026-08-25 23:18:00,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:18:00,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:18:00,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:18:00,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:18:00,958.958 INFO    ] time= 25/08/2026 23:18:00
[2026-08-25 23:18:01,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:18:01,042.042 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:18:01,158.158 INFO    ] No existing commands found in stream
[2026-08-25 23:18:06,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:18:06,191.191 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-08-25 23:18:10,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:18:10,114.114 INFO    ] Checking for system updates...
[2026-08-25 23:18:10,150.150 INFO    ] 200
[2026-08-25 23:18:10,152.152 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:10,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:18:10,216.216 INFO    ] No update needed
[2026-08-25 23:18:10,218.218 INFO    ] Checking for camera pi updates...
[2026-08-25 23:18:10,251.251 INFO    ] 200
[2026-08-25 23:18:10,254.254 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:10,301.301 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:18:10,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:18:10,349.349 INFO    ] No camera update needed
[2026-08-25 23:18:10,352.352 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:18:10,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:18:10,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:18:10,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:18:12,407.407 INFO    ] ================================================
[2026-08-25 23:18:12,423.423 INFO    ] Launching Daemon at Tue Aug 25 23:18:12 IST 2026
[2026-08-25 23:18:12,434.434 INFO    ] ================================================
[2026-08-25 23:18:13,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:18:13
[2026-08-25 23:18:13,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:18:14,027.027 INFO    ] Initializing speech engine...
[2026-08-25 23:18:14,039.039 INFO    ] 2026-08-25 23:18:14
[2026-08-25 23:18:14,304.304 INFO    ] 2026-08-25 23:18:14
[2026-08-25 23:18:14,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:18:14,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:18:14,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:18:14,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:18:14,684.684 INFO    ] time= 25/08/2026 23:18:14
[2026-08-25 23:18:14,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:18:14,726.726 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:18:14,811.811 INFO    ] No existing commands found in stream
[2026-08-25 23:18:19,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:18:19,826.826 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-08-25 23:18:20,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:18:20,652.652 INFO    ] Checking for system updates...
[2026-08-25 23:18:20,690.690 INFO    ] 200
[2026-08-25 23:18:20,693.693 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:20,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:18:20,751.751 INFO    ] No update needed
[2026-08-25 23:18:20,754.754 INFO    ] Checking for camera pi updates...
[2026-08-25 23:18:20,788.788 INFO    ] 200
[2026-08-25 23:18:20,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:20,832.832 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:18:20,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:18:20,883.883 INFO    ] No camera update needed
[2026-08-25 23:18:20,886.886 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:18:20,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:18:20,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:18:20,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:18:22,943.943 INFO    ] ================================================
[2026-08-25 23:18:22,959.959 INFO    ] Launching Daemon at Tue Aug 25 23:18:22 IST 2026
[2026-08-25 23:18:22,970.970 INFO    ] ================================================
[2026-08-25 23:18:23,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:18:23
[2026-08-25 23:18:24,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:18:24,395.395 INFO    ] Initializing speech engine...
[2026-08-25 23:18:24,404.404 INFO    ] 2026-08-25 23:18:24
[2026-08-25 23:18:24,657.657 INFO    ] 2026-08-25 23:18:24
[2026-08-25 23:18:24,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:18:24,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:18:24,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:18:25,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:18:25,128.128 INFO    ] time= 25/08/2026 23:18:25
[2026-08-25 23:18:25,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:18:25,218.218 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:18:25,361.361 INFO    ] No existing commands found in stream
[2026-08-25 23:18:30,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:18:30,380.380 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-08-25 23:18:34,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:18:34,801.801 INFO    ] Checking for system updates...
[2026-08-25 23:18:34,841.841 INFO    ] 200
[2026-08-25 23:18:34,844.844 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:34,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:18:34,899.899 INFO    ] No update needed
[2026-08-25 23:18:34,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 23:18:34,934.934 INFO    ] 200
[2026-08-25 23:18:34,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:34,984.984 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:18:35,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:18:35,043.043 INFO    ] No camera update needed
[2026-08-25 23:18:35,046.046 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:18:35,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:18:35,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:18:35,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:18:37,098.098 INFO    ] ================================================
[2026-08-25 23:18:37,114.114 INFO    ] Launching Daemon at Tue Aug 25 23:18:37 IST 2026
[2026-08-25 23:18:37,125.125 INFO    ] ================================================
[2026-08-25 23:18:37,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:18:37
[2026-08-25 23:18:38,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:18:38,544.544 INFO    ] Initializing speech engine...
[2026-08-25 23:18:38,552.552 INFO    ] 2026-08-25 23:18:38
[2026-08-25 23:18:38,852.852 INFO    ] 2026-08-25 23:18:38
[2026-08-25 23:18:38,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:18:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:18:39,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:18:39,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:18:39,238.238 INFO    ] time= 25/08/2026 23:18:39
[2026-08-25 23:18:39,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:18:39,266.266 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:18:39,370.370 INFO    ] No existing commands found in stream
[2026-08-25 23:18:44,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:18:44,386.386 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-08-25 23:18:48,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:18:48,339.339 INFO    ] Checking for system updates...
[2026-08-25 23:18:48,376.376 INFO    ] 200
[2026-08-25 23:18:48,379.379 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:48,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:18:48,436.436 INFO    ] No update needed
[2026-08-25 23:18:48,439.439 INFO    ] Checking for camera pi updates...
[2026-08-25 23:18:48,478.478 INFO    ] 200
[2026-08-25 23:18:48,481.481 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:18:48,522.522 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:18:48,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:18:48,570.570 INFO    ] No camera update needed
[2026-08-25 23:18:48,572.572 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:18:48,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:18:48,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:18:48,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:18:50,629.629 INFO    ] ================================================
[2026-08-25 23:18:50,645.645 INFO    ] Launching Daemon at Tue Aug 25 23:18:50 IST 2026
[2026-08-25 23:18:50,657.657 INFO    ] ================================================
[2026-08-25 23:18:51,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:18:51
[2026-08-25 23:18:51,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:18:52,103.103 INFO    ] Initializing speech engine...
[2026-08-25 23:18:52,111.111 INFO    ] 2026-08-25 23:18:52
[2026-08-25 23:18:52,357.357 INFO    ] 2026-08-25 23:18:52
[2026-08-25 23:18:52,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:18:52,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:18:52,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:18:52,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:18:52,833.833 INFO    ] time= 25/08/2026 23:18:52
[2026-08-25 23:18:52,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:18:52,921.921 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:18:53,059.059 INFO    ] No existing commands found in stream
[2026-08-25 23:18:58,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:18:58,081.081 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-08-25 23:19:00,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:19:00,162.162 INFO    ] Checking for system updates...
[2026-08-25 23:19:00,197.197 INFO    ] 200
[2026-08-25 23:19:00,200.200 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:00,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:00,255.255 INFO    ] No update needed
[2026-08-25 23:19:00,258.258 INFO    ] Checking for camera pi updates...
[2026-08-25 23:19:00,291.291 INFO    ] 200
[2026-08-25 23:19:00,294.294 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:00,334.334 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:19:00,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:00,389.389 INFO    ] No camera update needed
[2026-08-25 23:19:00,391.391 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:19:00,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:19:00,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:19:00,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:19:02,446.446 INFO    ] ================================================
[2026-08-25 23:19:02,467.467 INFO    ] Launching Daemon at Tue Aug 25 23:19:02 IST 2026
[2026-08-25 23:19:02,485.485 INFO    ] ================================================
[2026-08-25 23:19:03,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:19:03
[2026-08-25 23:19:03,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:19:04,051.051 INFO    ] Initializing speech engine...
[2026-08-25 23:19:04,060.060 INFO    ] 2026-08-25 23:19:04
[2026-08-25 23:19:04,307.307 INFO    ] 2026-08-25 23:19:04
[2026-08-25 23:19:04,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:19:04,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:19:04,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:19:04,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:19:04,778.778 INFO    ] time= 25/08/2026 23:19:04
[2026-08-25 23:19:04,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:19:04,869.869 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:19:05,008.008 INFO    ] No existing commands found in stream
[2026-08-25 23:19:10,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:19:10,030.030 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-08-25 23:19:13,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:19:13,693.693 INFO    ] Checking for system updates...
[2026-08-25 23:19:13,732.732 INFO    ] 200
[2026-08-25 23:19:13,735.735 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:13,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:13,797.797 INFO    ] No update needed
[2026-08-25 23:19:13,800.800 INFO    ] Checking for camera pi updates...
[2026-08-25 23:19:13,837.837 INFO    ] 200
[2026-08-25 23:19:13,839.839 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:13,896.896 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:19:13,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:13,941.941 INFO    ] No camera update needed
[2026-08-25 23:19:13,943.943 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:19:13,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:19:13,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:19:13,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:19:16,996.996 INFO    ] ================================================
[2026-08-25 23:19:16,013.013 INFO    ] Launching Daemon at Tue Aug 25 23:19:16 IST 2026
[2026-08-25 23:19:16,025.025 INFO    ] ================================================
[2026-08-25 23:19:16,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:19:16
[2026-08-25 23:19:17,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:19:17,446.446 INFO    ] Initializing speech engine...
[2026-08-25 23:19:17,455.455 INFO    ] 2026-08-25 23:19:17
[2026-08-25 23:19:17,715.715 INFO    ] 2026-08-25 23:19:17
[2026-08-25 23:19:17,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:19:17,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:19:17,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:19:18,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:19:18,177.177 INFO    ] time= 25/08/2026 23:19:18
[2026-08-25 23:19:18,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:19:18,271.271 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:19:18,344.344 INFO    ] No existing commands found in stream
[2026-08-25 23:19:23,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:19:23,358.358 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-08-25 23:19:24,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:19:24,681.681 INFO    ] Checking for system updates...
[2026-08-25 23:19:24,717.717 INFO    ] 200
[2026-08-25 23:19:24,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:24,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:24,775.775 INFO    ] No update needed
[2026-08-25 23:19:24,778.778 INFO    ] Checking for camera pi updates...
[2026-08-25 23:19:24,815.815 INFO    ] 200
[2026-08-25 23:19:24,817.817 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:24,862.862 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:19:24,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:24,919.919 INFO    ] No camera update needed
[2026-08-25 23:19:24,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:19:24,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:19:24,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:19:24,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:19:26,976.976 INFO    ] ================================================
[2026-08-25 23:19:26,992.992 INFO    ] Launching Daemon at Tue Aug 25 23:19:26 IST 2026
[2026-08-25 23:19:27,003.003 INFO    ] ================================================
[2026-08-25 23:19:27,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:19:27
[2026-08-25 23:19:28,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:19:28,433.433 INFO    ] Initializing speech engine...
[2026-08-25 23:19:28,442.442 INFO    ] 2026-08-25 23:19:28
[2026-08-25 23:19:28,696.696 INFO    ] 2026-08-25 23:19:28
[2026-08-25 23:19:28,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:19:28,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:19:28,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:19:29,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:19:29,161.161 INFO    ] time= 25/08/2026 23:19:29
[2026-08-25 23:19:29,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:19:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:19:29,390.390 INFO    ] No existing commands found in stream
[2026-08-25 23:19:34,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:19:34,411.411 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-08-25 23:19:37,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:19:37,461.461 INFO    ] Checking for system updates...
[2026-08-25 23:19:37,497.497 INFO    ] 200
[2026-08-25 23:19:37,500.500 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:37,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:19:37,556.556 INFO    ] No update needed
[2026-08-25 23:19:37,558.558 INFO    ] Checking for camera pi updates...
[2026-08-25 23:19:37,596.596 INFO    ] 200
[2026-08-25 23:19:37,598.598 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:37,643.643 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:19:37,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:19:37,694.694 INFO    ] No camera update needed
[2026-08-25 23:19:37,698.698 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:19:37,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:19:37,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:19:37,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:19:39,756.756 INFO    ] ================================================
[2026-08-25 23:19:39,772.772 INFO    ] Launching Daemon at Tue Aug 25 23:19:39 IST 2026
[2026-08-25 23:19:39,784.784 INFO    ] ================================================
[2026-08-25 23:19:40,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:19:40
[2026-08-25 23:19:40,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:19:41,269.269 INFO    ] Initializing speech engine...
[2026-08-25 23:19:41,277.277 INFO    ] 2026-08-25 23:19:41
[2026-08-25 23:19:41,538.538 INFO    ] 2026-08-25 23:19:41
[2026-08-25 23:19:41,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:19:41,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:19:41,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:19:41,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:19:42,002.002 INFO    ] time= 25/08/2026 23:19:41
[2026-08-25 23:19:42,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:19:42,090.090 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:19:42,236.236 INFO    ] No existing commands found in stream
[2026-08-25 23:19:47,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:19:47,259.259 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-08-25 23:19:48,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:19:48,034.034 INFO    ] Checking for system updates...
[2026-08-25 23:19:48,070.070 INFO    ] 200
[2026-08-25 23:19:48,073.073 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:48,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:48,136.136 INFO    ] No update needed
[2026-08-25 23:19:48,139.139 INFO    ] Checking for camera pi updates...
[2026-08-25 23:19:48,175.175 INFO    ] 200
[2026-08-25 23:19:48,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:19:48,220.220 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:19:48,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:19:48,367.367 INFO    ] No camera update needed
[2026-08-25 23:19:48,370.370 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:19:48,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:19:48,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:19:48,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:19:50,425.425 INFO    ] ================================================
[2026-08-25 23:19:50,441.441 INFO    ] Launching Daemon at Tue Aug 25 23:19:50 IST 2026
[2026-08-25 23:19:50,453.453 INFO    ] ================================================
[2026-08-25 23:19:51,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:19:51
[2026-08-25 23:19:51,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:19:51,858.858 INFO    ] Initializing speech engine...
[2026-08-25 23:19:51,863.863 INFO    ] 2026-08-25 23:19:51
[2026-08-25 23:19:52,163.163 INFO    ] 2026-08-25 23:19:52
[2026-08-25 23:19:52,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:19:52,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:19:52,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:19:52,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:19:52,566.566 INFO    ] time= 25/08/2026 23:19:52
[2026-08-25 23:19:52,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:19:52,596.596 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:19:52,679.679 INFO    ] No existing commands found in stream
[2026-08-25 23:19:57,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:19:57,702.702 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-08-25 23:20:01,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:20:01,352.352 INFO    ] Checking for system updates...
[2026-08-25 23:20:01,391.391 INFO    ] 200
[2026-08-25 23:20:01,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:01,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:01,449.449 INFO    ] No update needed
[2026-08-25 23:20:01,452.452 INFO    ] Checking for camera pi updates...
[2026-08-25 23:20:01,487.487 INFO    ] 200
[2026-08-25 23:20:01,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:01,531.531 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:20:01,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:01,824.824 INFO    ] No camera update needed
[2026-08-25 23:20:01,827.827 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:20:01,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:20:01,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:20:01,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:20:03,887.887 INFO    ] ================================================
[2026-08-25 23:20:03,904.904 INFO    ] Launching Daemon at Tue Aug 25 23:20:03 IST 2026
[2026-08-25 23:20:03,917.917 INFO    ] ================================================
[2026-08-25 23:20:04,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:20:04
[2026-08-25 23:20:05,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:20:05,372.372 INFO    ] Initializing speech engine...
[2026-08-25 23:20:05,380.380 INFO    ] 2026-08-25 23:20:05
[2026-08-25 23:20:05,642.642 INFO    ] 2026-08-25 23:20:05
[2026-08-25 23:20:05,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:20:05,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:20:05,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:20:06,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:20:06,128.128 INFO    ] time= 25/08/2026 23:20:06
[2026-08-25 23:20:06,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:20:06,197.197 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:20:06,343.343 INFO    ] No existing commands found in stream
[2026-08-25 23:20:11,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:20:11,375.375 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-08-25 23:20:17,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:20:17,940.940 INFO    ] Checking for system updates...
[2026-08-25 23:20:17,979.979 INFO    ] 200
[2026-08-25 23:20:17,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:18,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:18,043.043 INFO    ] No update needed
[2026-08-25 23:20:18,046.046 INFO    ] Checking for camera pi updates...
[2026-08-25 23:20:18,079.079 INFO    ] 200
[2026-08-25 23:20:18,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:18,122.122 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:20:18,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:18,177.177 INFO    ] No camera update needed
[2026-08-25 23:20:18,180.180 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:20:18,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:20:18,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:20:18,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:20:20,233.233 INFO    ] ================================================
[2026-08-25 23:20:20,249.249 INFO    ] Launching Daemon at Tue Aug 25 23:20:20 IST 2026
[2026-08-25 23:20:20,260.260 INFO    ] ================================================
[2026-08-25 23:20:20,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:20:20
[2026-08-25 23:20:21,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:20:21,682.682 INFO    ] Initializing speech engine...
[2026-08-25 23:20:21,693.693 INFO    ] 2026-08-25 23:20:21
[2026-08-25 23:20:21,947.947 INFO    ] 2026-08-25 23:20:21
[2026-08-25 23:20:21,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:20:22,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:20:22,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:20:22,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:20:22,325.325 INFO    ] time= 25/08/2026 23:20:22
[2026-08-25 23:20:22,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:20:22,363.363 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:20:22,506.506 INFO    ] No existing commands found in stream
[2026-08-25 23:20:27,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:20:27,539.539 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 23:20:31,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:20:31,711.711 INFO    ] Checking for system updates...
[2026-08-25 23:20:31,748.748 INFO    ] 200
[2026-08-25 23:20:31,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:31,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:31,806.806 INFO    ] No update needed
[2026-08-25 23:20:31,809.809 INFO    ] Checking for camera pi updates...
[2026-08-25 23:20:31,847.847 INFO    ] 200
[2026-08-25 23:20:31,850.850 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:31,892.892 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:20:31,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:31,946.946 INFO    ] No camera update needed
[2026-08-25 23:20:31,949.949 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:20:31,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:20:31,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:20:31,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:20:34,006.006 INFO    ] ================================================
[2026-08-25 23:20:34,022.022 INFO    ] Launching Daemon at Tue Aug 25 23:20:34 IST 2026
[2026-08-25 23:20:34,033.033 INFO    ] ================================================
[2026-08-25 23:20:34,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:20:34
[2026-08-25 23:20:35,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:20:35,483.483 INFO    ] Initializing speech engine...
[2026-08-25 23:20:35,509.509 INFO    ] 2026-08-25 23:20:35
[2026-08-25 23:20:35,783.783 INFO    ] 2026-08-25 23:20:35
[2026-08-25 23:20:35,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:20:36,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:20:36,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:20:36,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:20:36,174.174 INFO    ] time= 25/08/2026 23:20:36
[2026-08-25 23:20:36,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:20:36,204.204 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:20:36,282.282 INFO    ] No existing commands found in stream
[2026-08-25 23:20:41,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:20:41,300.300 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 23:20:45,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:20:45,163.163 INFO    ] Checking for system updates...
[2026-08-25 23:20:45,201.201 INFO    ] 200
[2026-08-25 23:20:45,203.203 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:45,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:45,264.264 INFO    ] No update needed
[2026-08-25 23:20:45,267.267 INFO    ] Checking for camera pi updates...
[2026-08-25 23:20:45,300.300 INFO    ] 200
[2026-08-25 23:20:45,303.303 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:45,347.347 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:20:45,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:20:45,394.394 INFO    ] No camera update needed
[2026-08-25 23:20:45,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:20:45,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:20:45,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:20:45,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:20:47,449.449 INFO    ] ================================================
[2026-08-25 23:20:47,465.465 INFO    ] Launching Daemon at Tue Aug 25 23:20:47 IST 2026
[2026-08-25 23:20:47,477.477 INFO    ] ================================================
[2026-08-25 23:20:48,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:20:48
[2026-08-25 23:20:48,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:20:48,889.889 INFO    ] Initializing speech engine...
[2026-08-25 23:20:48,898.898 INFO    ] 2026-08-25 23:20:48
[2026-08-25 23:20:49,187.187 INFO    ] 2026-08-25 23:20:49
[2026-08-25 23:20:49,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:20:49,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:20:49,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:20:49,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:20:49,592.592 INFO    ] time= 25/08/2026 23:20:49
[2026-08-25 23:20:49,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:20:49,622.622 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:20:49,696.696 INFO    ] No existing commands found in stream
[2026-08-25 23:20:54,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:20:54,712.712 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-08-25 23:20:56,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:20:56,215.215 INFO    ] Checking for system updates...
[2026-08-25 23:20:56,250.250 INFO    ] 200
[2026-08-25 23:20:56,253.253 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:56,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:20:56,307.307 INFO    ] No update needed
[2026-08-25 23:20:56,310.310 INFO    ] Checking for camera pi updates...
[2026-08-25 23:20:56,343.343 INFO    ] 200
[2026-08-25 23:20:56,346.346 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:20:56,387.387 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:20:56,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:20:56,435.435 INFO    ] No camera update needed
[2026-08-25 23:20:56,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:20:56,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:20:56,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:20:56,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:20:58,490.490 INFO    ] ================================================
[2026-08-25 23:20:58,506.506 INFO    ] Launching Daemon at Tue Aug 25 23:20:58 IST 2026
[2026-08-25 23:20:58,517.517 INFO    ] ================================================
[2026-08-25 23:20:59,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:20:59
[2026-08-25 23:20:59,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:21:00,043.043 INFO    ] Initializing speech engine...
[2026-08-25 23:21:00,050.050 INFO    ] 2026-08-25 23:21:00
[2026-08-25 23:21:00,321.321 INFO    ] 2026-08-25 23:21:00
[2026-08-25 23:21:00,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:21:00,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:21:00,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:21:00,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:21:00,817.817 INFO    ] time= 25/08/2026 23:21:00
[2026-08-25 23:21:00,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:21:00,894.894 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:21:01,038.038 INFO    ] No existing commands found in stream
[2026-08-25 23:21:06,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:21:06,059.059 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-08-25 23:21:07,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:21:07,988.988 INFO    ] Checking for system updates...
[2026-08-25 23:21:08,026.026 INFO    ] 200
[2026-08-25 23:21:08,028.028 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:08,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:08,085.085 INFO    ] No update needed
[2026-08-25 23:21:08,088.088 INFO    ] Checking for camera pi updates...
[2026-08-25 23:21:08,127.127 INFO    ] 200
[2026-08-25 23:21:08,130.130 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:08,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:21:08,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:08,226.226 INFO    ] No camera update needed
[2026-08-25 23:21:08,228.228 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:21:08,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:21:08,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:21:08,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:21:10,281.281 INFO    ] ================================================
[2026-08-25 23:21:10,297.297 INFO    ] Launching Daemon at Tue Aug 25 23:21:10 IST 2026
[2026-08-25 23:21:10,308.308 INFO    ] ================================================
[2026-08-25 23:21:10,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:21:10
[2026-08-25 23:21:11,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:21:11,951.951 INFO    ] Initializing speech engine...
[2026-08-25 23:21:11,959.959 INFO    ] 2026-08-25 23:21:11
[2026-08-25 23:21:12,237.237 INFO    ] 2026-08-25 23:21:12
[2026-08-25 23:21:12,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:21:12,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:21:12,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:21:12,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:21:12,717.717 INFO    ] time= 25/08/2026 23:21:12
[2026-08-25 23:21:12,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:21:12,790.790 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:21:12,917.917 INFO    ] No existing commands found in stream
[2026-08-25 23:21:17,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:21:17,948.948 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-08-25 23:21:19,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:21:19,184.184 INFO    ] Checking for system updates...
[2026-08-25 23:21:19,225.225 INFO    ] 200
[2026-08-25 23:21:19,232.232 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:19,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:19,290.290 INFO    ] No update needed
[2026-08-25 23:21:19,293.293 INFO    ] Checking for camera pi updates...
[2026-08-25 23:21:19,328.328 INFO    ] 200
[2026-08-25 23:21:19,330.330 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:19,372.372 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:21:19,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:19,422.422 INFO    ] No camera update needed
[2026-08-25 23:21:19,425.425 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:21:19,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:21:19,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:21:19,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:21:21,487.487 INFO    ] ================================================
[2026-08-25 23:21:21,504.504 INFO    ] Launching Daemon at Tue Aug 25 23:21:21 IST 2026
[2026-08-25 23:21:21,516.516 INFO    ] ================================================
[2026-08-25 23:21:22,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:21:22
[2026-08-25 23:21:22,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:21:22,953.953 INFO    ] Initializing speech engine...
[2026-08-25 23:21:22,962.962 INFO    ] 2026-08-25 23:21:22
[2026-08-25 23:21:23,209.209 INFO    ] 2026-08-25 23:21:23
[2026-08-25 23:21:23,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:21:23,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:21:23,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:21:23,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:21:23,684.684 INFO    ] time= 25/08/2026 23:21:23
[2026-08-25 23:21:23,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:21:23,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:21:23,896.896 INFO    ] No existing commands found in stream
[2026-08-25 23:21:28,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:21:28,926.926 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-08-25 23:21:29,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:21:29,891.891 INFO    ] Checking for system updates...
[2026-08-25 23:21:29,926.926 INFO    ] 200
[2026-08-25 23:21:29,929.929 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:29,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:21:29,984.984 INFO    ] No update needed
[2026-08-25 23:21:29,986.986 INFO    ] Checking for camera pi updates...
[2026-08-25 23:21:30,020.020 INFO    ] 200
[2026-08-25 23:21:30,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:30,067.067 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:21:30,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:21:30,126.126 INFO    ] No camera update needed
[2026-08-25 23:21:30,128.128 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:21:30,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:21:30,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:21:30,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:21:32,182.182 INFO    ] ================================================
[2026-08-25 23:21:32,198.198 INFO    ] Launching Daemon at Tue Aug 25 23:21:32 IST 2026
[2026-08-25 23:21:32,210.210 INFO    ] ================================================
[2026-08-25 23:21:32,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:21:32
[2026-08-25 23:21:33,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:21:33,662.662 INFO    ] Initializing speech engine...
[2026-08-25 23:21:33,674.674 INFO    ] 2026-08-25 23:21:33
[2026-08-25 23:21:33,995.995 INFO    ] 2026-08-25 23:21:33
[2026-08-25 23:21:34,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:21:34,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:21:34,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:21:34,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:21:34,415.415 INFO    ] time= 25/08/2026 23:21:34
[2026-08-25 23:21:34,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:21:34,529.529 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:21:34,584.584 INFO    ] No existing commands found in stream
[2026-08-25 23:21:39,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:21:39,599.599 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-08-25 23:21:41,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:21:41,161.161 INFO    ] Checking for system updates...
[2026-08-25 23:21:41,199.199 INFO    ] 200
[2026-08-25 23:21:41,202.202 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:41,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:41,263.263 INFO    ] No update needed
[2026-08-25 23:21:41,265.265 INFO    ] Checking for camera pi updates...
[2026-08-25 23:21:41,303.303 INFO    ] 200
[2026-08-25 23:21:41,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:41,345.345 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:21:41,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:41,399.399 INFO    ] No camera update needed
[2026-08-25 23:21:41,402.402 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:21:41,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:21:41,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:21:41,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:21:43,457.457 INFO    ] ================================================
[2026-08-25 23:21:43,473.473 INFO    ] Launching Daemon at Tue Aug 25 23:21:43 IST 2026
[2026-08-25 23:21:43,484.484 INFO    ] ================================================
[2026-08-25 23:21:44,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:21:44
[2026-08-25 23:21:44,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:21:44,959.959 INFO    ] Initializing speech engine...
[2026-08-25 23:21:44,969.969 INFO    ] 2026-08-25 23:21:44
[2026-08-25 23:21:45,229.229 INFO    ] 2026-08-25 23:21:45
[2026-08-25 23:21:45,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:21:45,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:21:45,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:21:45,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:21:45,737.737 INFO    ] time= 25/08/2026 23:21:45
[2026-08-25 23:21:45,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:21:45,809.809 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:21:45,955.955 INFO    ] No existing commands found in stream
[2026-08-25 23:21:50,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:21:50,982.982 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-08-25 23:21:52,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:21:52,754.754 INFO    ] Checking for system updates...
[2026-08-25 23:21:52,790.790 INFO    ] 200
[2026-08-25 23:21:52,792.792 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:52,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:52,847.847 INFO    ] No update needed
[2026-08-25 23:21:52,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 23:21:52,882.882 INFO    ] 200
[2026-08-25 23:21:52,884.884 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:21:52,925.925 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:21:53,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:21:53,072.072 INFO    ] No camera update needed
[2026-08-25 23:21:53,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:21:53,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:21:53,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:21:53,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:21:55,129.129 INFO    ] ================================================
[2026-08-25 23:21:55,146.146 INFO    ] Launching Daemon at Tue Aug 25 23:21:55 IST 2026
[2026-08-25 23:21:55,157.157 INFO    ] ================================================
[2026-08-25 23:21:55,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:21:55
[2026-08-25 23:21:56,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:21:56,571.571 INFO    ] Initializing speech engine...
[2026-08-25 23:21:56,585.585 INFO    ] 2026-08-25 23:21:56
[2026-08-25 23:21:56,871.871 INFO    ] 2026-08-25 23:21:56
[2026-08-25 23:21:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:21:57,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:21:57,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:21:57,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:21:57,259.259 INFO    ] time= 25/08/2026 23:21:57
[2026-08-25 23:21:57,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:21:57,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:21:57,372.372 INFO    ] No existing commands found in stream
[2026-08-25 23:22:02,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:22:02,388.388 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-08-25 23:22:05,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:22:05,394.394 INFO    ] Checking for system updates...
[2026-08-25 23:22:05,429.429 INFO    ] 200
[2026-08-25 23:22:05,432.432 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:05,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:05,490.490 INFO    ] No update needed
[2026-08-25 23:22:05,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 23:22:05,526.526 INFO    ] 200
[2026-08-25 23:22:05,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:05,569.569 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:22:05,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:05,630.630 INFO    ] No camera update needed
[2026-08-25 23:22:05,632.632 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:22:05,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:22:05,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:22:05,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:22:07,685.685 INFO    ] ================================================
[2026-08-25 23:22:07,701.701 INFO    ] Launching Daemon at Tue Aug 25 23:22:07 IST 2026
[2026-08-25 23:22:07,712.712 INFO    ] ================================================
[2026-08-25 23:22:08,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:22:08
[2026-08-25 23:22:08,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:22:09,109.109 INFO    ] Initializing speech engine...
[2026-08-25 23:22:09,129.129 INFO    ] 2026-08-25 23:22:09
[2026-08-25 23:22:09,384.384 INFO    ] 2026-08-25 23:22:09
[2026-08-25 23:22:09,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:22:09,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:22:09,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:22:09,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:22:09,865.865 INFO    ] time= 25/08/2026 23:22:09
[2026-08-25 23:22:09,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:22:09,951.951 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:22:10,068.068 INFO    ] No existing commands found in stream
[2026-08-25 23:22:15,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:22:15,107.107 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-08-25 23:22:19,389.389 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:22:19,392.392 INFO    ] Checking for system updates...
[2026-08-25 23:22:19,427.427 INFO    ] 200
[2026-08-25 23:22:19,430.430 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:19,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:19,485.485 INFO    ] No update needed
[2026-08-25 23:22:19,487.487 INFO    ] Checking for camera pi updates...
[2026-08-25 23:22:19,521.521 INFO    ] 200
[2026-08-25 23:22:19,524.524 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:19,564.564 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:22:19,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:19,613.613 INFO    ] No camera update needed
[2026-08-25 23:22:19,615.615 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:22:19,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:22:19,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:22:19,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:22:21,667.667 INFO    ] ================================================
[2026-08-25 23:22:21,682.682 INFO    ] Launching Daemon at Tue Aug 25 23:22:21 IST 2026
[2026-08-25 23:22:21,694.694 INFO    ] ================================================
[2026-08-25 23:22:22,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:22:22
[2026-08-25 23:22:23,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:22:23,366.366 INFO    ] Initializing speech engine...
[2026-08-25 23:22:23,376.376 INFO    ] 2026-08-25 23:22:23
[2026-08-25 23:22:23,656.656 INFO    ] 2026-08-25 23:22:23
[2026-08-25 23:22:23,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:22:23,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:22:23,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:22:24,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:22:24,169.169 INFO    ] time= 25/08/2026 23:22:24
[2026-08-25 23:22:24,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:22:24,228.228 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:22:24,357.357 INFO    ] No existing commands found in stream
[2026-08-25 23:22:29,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:22:29,389.389 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-08-25 23:22:32,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:22:32,493.493 INFO    ] Checking for system updates...
[2026-08-25 23:22:32,539.539 INFO    ] 200
[2026-08-25 23:22:32,542.542 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:32,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:22:32,621.621 INFO    ] No update needed
[2026-08-25 23:22:32,624.624 INFO    ] Checking for camera pi updates...
[2026-08-25 23:22:32,659.659 INFO    ] 200
[2026-08-25 23:22:32,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:32,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:22:32,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:22:32,754.754 INFO    ] No camera update needed
[2026-08-25 23:22:32,757.757 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:22:32,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:22:32,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:22:32,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:22:34,811.811 INFO    ] ================================================
[2026-08-25 23:22:34,837.837 INFO    ] Launching Daemon at Tue Aug 25 23:22:34 IST 2026
[2026-08-25 23:22:34,849.849 INFO    ] ================================================
[2026-08-25 23:22:35,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:22:35
[2026-08-25 23:22:36,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:22:36,546.546 INFO    ] Initializing speech engine...
[2026-08-25 23:22:36,559.559 INFO    ] 2026-08-25 23:22:36
[2026-08-25 23:22:36,869.869 INFO    ] 2026-08-25 23:22:36
[2026-08-25 23:22:36,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:22:37,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:22:37,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:22:37,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:22:37,375.375 INFO    ] time= 25/08/2026 23:22:37
[2026-08-25 23:22:37,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:22:37,412.412 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:22:37,540.540 INFO    ] No existing commands found in stream
[2026-08-25 23:22:42,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:22:42,570.570 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-08-25 23:22:44,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:22:44,476.476 INFO    ] Checking for system updates...
[2026-08-25 23:22:44,513.513 INFO    ] 200
[2026-08-25 23:22:44,516.516 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:44,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:44,583.583 INFO    ] No update needed
[2026-08-25 23:22:44,585.585 INFO    ] Checking for camera pi updates...
[2026-08-25 23:22:44,621.621 INFO    ] 200
[2026-08-25 23:22:44,623.623 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:44,671.671 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:22:44,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:44,721.721 INFO    ] No camera update needed
[2026-08-25 23:22:44,724.724 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:22:44,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:22:44,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:22:44,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:22:46,775.775 INFO    ] ================================================
[2026-08-25 23:22:46,791.791 INFO    ] Launching Daemon at Tue Aug 25 23:22:46 IST 2026
[2026-08-25 23:22:46,801.801 INFO    ] ================================================
[2026-08-25 23:22:47,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:22:47
[2026-08-25 23:22:48,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:22:48,407.407 INFO    ] Initializing speech engine...
[2026-08-25 23:22:48,417.417 INFO    ] 2026-08-25 23:22:48
[2026-08-25 23:22:48,694.694 INFO    ] 2026-08-25 23:22:48
[2026-08-25 23:22:48,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:22:48,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:22:48,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:22:49,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:22:49,170.170 INFO    ] time= 25/08/2026 23:22:49
[2026-08-25 23:22:49,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:22:49,265.265 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:22:49,397.397 INFO    ] No existing commands found in stream
[2026-08-25 23:22:54,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:22:54,427.427 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 23:22:58,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:22:58,305.305 INFO    ] Checking for system updates...
[2026-08-25 23:22:58,342.342 INFO    ] 200
[2026-08-25 23:22:58,345.345 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:58,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:58,410.410 INFO    ] No update needed
[2026-08-25 23:22:58,413.413 INFO    ] Checking for camera pi updates...
[2026-08-25 23:22:58,448.448 INFO    ] 200
[2026-08-25 23:22:58,450.450 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:22:58,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:22:58,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:22:58,550.550 INFO    ] No camera update needed
[2026-08-25 23:22:58,553.553 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:22:58,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:22:58,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:22:58,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:23:00,608.608 INFO    ] ================================================
[2026-08-25 23:23:00,623.623 INFO    ] Launching Daemon at Tue Aug 25 23:23:00 IST 2026
[2026-08-25 23:23:00,634.634 INFO    ] ================================================
[2026-08-25 23:23:01,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:23:01
[2026-08-25 23:23:01,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:23:02,306.306 INFO    ] Initializing speech engine...
[2026-08-25 23:23:02,318.318 INFO    ] 2026-08-25 23:23:02
[2026-08-25 23:23:02,655.655 INFO    ] 2026-08-25 23:23:02
[2026-08-25 23:23:02,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:23:02,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:23:02,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:23:03,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:23:03,142.142 INFO    ] time= 25/08/2026 23:23:03
[2026-08-25 23:23:03,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:23:03,249.249 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:23:03,371.371 INFO    ] No existing commands found in stream
[2026-08-25 23:23:08,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:23:08,400.400 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-08-25 23:23:09,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:23:09,523.523 INFO    ] Checking for system updates...
[2026-08-25 23:23:09,563.563 INFO    ] 200
[2026-08-25 23:23:09,566.566 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:09,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:23:09,629.629 INFO    ] No update needed
[2026-08-25 23:23:09,631.631 INFO    ] Checking for camera pi updates...
[2026-08-25 23:23:09,665.665 INFO    ] 200
[2026-08-25 23:23:09,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:09,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:23:09,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:23:09,761.761 INFO    ] No camera update needed
[2026-08-25 23:23:09,764.764 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:23:09,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:23:09,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:23:09,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:23:11,816.816 INFO    ] ================================================
[2026-08-25 23:23:11,831.831 INFO    ] Launching Daemon at Tue Aug 25 23:23:11 IST 2026
[2026-08-25 23:23:11,842.842 INFO    ] ================================================
[2026-08-25 23:23:12,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:23:12
[2026-08-25 23:23:13,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:23:13,501.501 INFO    ] Initializing speech engine...
[2026-08-25 23:23:13,513.513 INFO    ] 2026-08-25 23:23:13
[2026-08-25 23:23:13,821.821 INFO    ] 2026-08-25 23:23:13
[2026-08-25 23:23:13,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:23:14,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:23:14,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:23:14,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:23:14,329.329 INFO    ] time= 25/08/2026 23:23:14
[2026-08-25 23:23:14,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:23:14,365.365 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:23:14,487.487 INFO    ] No existing commands found in stream
[2026-08-25 23:23:19,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:23:19,521.521 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 23:23:21,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:23:21,293.293 INFO    ] Checking for system updates...
[2026-08-25 23:23:21,328.328 INFO    ] 200
[2026-08-25 23:23:21,331.331 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:21,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:23:21,387.387 INFO    ] No update needed
[2026-08-25 23:23:21,389.389 INFO    ] Checking for camera pi updates...
[2026-08-25 23:23:21,423.423 INFO    ] 200
[2026-08-25 23:23:21,425.425 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:21,466.466 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:23:21,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:23:21,517.517 INFO    ] No camera update needed
[2026-08-25 23:23:21,520.520 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:23:21,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:23:21,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:23:21,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:23:23,572.572 INFO    ] ================================================
[2026-08-25 23:23:23,587.587 INFO    ] Launching Daemon at Tue Aug 25 23:23:23 IST 2026
[2026-08-25 23:23:23,599.599 INFO    ] ================================================
[2026-08-25 23:23:24,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:23:24
[2026-08-25 23:23:24,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:23:25,270.270 INFO    ] Initializing speech engine...
[2026-08-25 23:23:25,276.276 INFO    ] 2026-08-25 23:23:25
[2026-08-25 23:23:25,591.591 INFO    ] 2026-08-25 23:23:25
[2026-08-25 23:23:25,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:23:25,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:23:25,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:23:26,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:23:26,099.099 INFO    ] time= 25/08/2026 23:23:26
[2026-08-25 23:23:26,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:23:26,127.127 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:23:26,241.241 INFO    ] No existing commands found in stream
[2026-08-25 23:23:31,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:23:31,270.270 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 23:23:35,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:23:35,487.487 INFO    ] Checking for system updates...
[2026-08-25 23:23:35,524.524 INFO    ] 200
[2026-08-25 23:23:35,527.527 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:35,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:23:35,591.591 INFO    ] No update needed
[2026-08-25 23:23:35,593.593 INFO    ] Checking for camera pi updates...
[2026-08-25 23:23:35,628.628 INFO    ] 200
[2026-08-25 23:23:35,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:35,673.673 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:23:35,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:23:35,727.727 INFO    ] No camera update needed
[2026-08-25 23:23:35,730.730 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:23:35,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:23:35,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:23:35,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:23:37,789.789 INFO    ] ================================================
[2026-08-25 23:23:37,804.804 INFO    ] Launching Daemon at Tue Aug 25 23:23:37 IST 2026
[2026-08-25 23:23:37,815.815 INFO    ] ================================================
[2026-08-25 23:23:38,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:23:38
[2026-08-25 23:23:39,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:23:39,278.278 INFO    ] Initializing speech engine...
[2026-08-25 23:23:39,288.288 INFO    ] 2026-08-25 23:23:39
[2026-08-25 23:23:39,547.547 INFO    ] 2026-08-25 23:23:39
[2026-08-25 23:23:39,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:23:39,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:23:39,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:23:39,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:23:40,052.052 INFO    ] time= 25/08/2026 23:23:39
[2026-08-25 23:23:40,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:23:40,120.120 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:23:40,253.253 INFO    ] No existing commands found in stream
[2026-08-25 23:23:45,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:23:45,269.269 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 23:23:49,010.010 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:23:49,013.013 INFO    ] Checking for system updates...
[2026-08-25 23:23:49,055.055 INFO    ] 200
[2026-08-25 23:23:49,059.059 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:49,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:23:49,116.116 INFO    ] No update needed
[2026-08-25 23:23:49,119.119 INFO    ] Checking for camera pi updates...
[2026-08-25 23:23:49,159.159 INFO    ] 200
[2026-08-25 23:23:49,162.162 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:23:49,204.204 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:23:49,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:23:49,270.270 INFO    ] No camera update needed
[2026-08-25 23:23:49,273.273 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:23:49,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:23:49,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:23:49,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:23:51,330.330 INFO    ] ================================================
[2026-08-25 23:23:51,346.346 INFO    ] Launching Daemon at Tue Aug 25 23:23:51 IST 2026
[2026-08-25 23:23:51,357.357 INFO    ] ================================================
[2026-08-25 23:23:52,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:23:52
[2026-08-25 23:23:52,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:23:53,041.041 INFO    ] Initializing speech engine...
[2026-08-25 23:23:53,053.053 INFO    ] 2026-08-25 23:23:53
[2026-08-25 23:23:53,369.369 INFO    ] 2026-08-25 23:23:53
[2026-08-25 23:23:53,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:23:53,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:23:53,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:23:53,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:23:53,892.892 INFO    ] time= 25/08/2026 23:23:53
[2026-08-25 23:23:53,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:23:53,920.920 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:23:54,042.042 INFO    ] No existing commands found in stream
[2026-08-25 23:23:59,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:23:59,068.068 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 23:24:01,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:24:01,491.491 INFO    ] Checking for system updates...
[2026-08-25 23:24:01,546.546 INFO    ] 200
[2026-08-25 23:24:01,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:01,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:01,622.622 INFO    ] No update needed
[2026-08-25 23:24:01,626.626 INFO    ] Checking for camera pi updates...
[2026-08-25 23:24:01,669.669 INFO    ] 200
[2026-08-25 23:24:01,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:01,719.719 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:24:01,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:01,894.894 INFO    ] No camera update needed
[2026-08-25 23:24:01,898.898 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:24:01,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:24:01,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:24:01,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:24:03,964.964 INFO    ] ================================================
[2026-08-25 23:24:03,979.979 INFO    ] Launching Daemon at Tue Aug 25 23:24:03 IST 2026
[2026-08-25 23:24:03,990.990 INFO    ] ================================================
[2026-08-25 23:24:04,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:24:04
[2026-08-25 23:24:05,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:24:05,454.454 INFO    ] Initializing speech engine...
[2026-08-25 23:24:05,461.461 INFO    ] 2026-08-25 23:24:05
[2026-08-25 23:24:05,720.720 INFO    ] 2026-08-25 23:24:05
[2026-08-25 23:24:05,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:24:05,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:24:06,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:24:06,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:24:06,175.175 INFO    ] time= 25/08/2026 23:24:06
[2026-08-25 23:24:06,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:24:06,294.294 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:24:06,428.428 INFO    ] No existing commands found in stream
[2026-08-25 23:24:11,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:24:11,441.441 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-08-25 23:24:13,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:24:13,922.922 INFO    ] Checking for system updates...
[2026-08-25 23:24:13,957.957 INFO    ] 200
[2026-08-25 23:24:13,960.960 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:14,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:14,015.015 INFO    ] No update needed
[2026-08-25 23:24:14,017.017 INFO    ] Checking for camera pi updates...
[2026-08-25 23:24:14,052.052 INFO    ] 200
[2026-08-25 23:24:14,055.055 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:14,098.098 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:24:14,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:14,165.165 INFO    ] No camera update needed
[2026-08-25 23:24:14,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:24:14,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:24:14,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:24:14,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:24:16,219.219 INFO    ] ================================================
[2026-08-25 23:24:16,235.235 INFO    ] Launching Daemon at Tue Aug 25 23:24:16 IST 2026
[2026-08-25 23:24:16,247.247 INFO    ] ================================================
[2026-08-25 23:24:16,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:24:16
[2026-08-25 23:24:17,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:24:17,642.642 INFO    ] Initializing speech engine...
[2026-08-25 23:24:17,665.665 INFO    ] 2026-08-25 23:24:17
[2026-08-25 23:24:17,916.916 INFO    ] 2026-08-25 23:24:17
[2026-08-25 23:24:17,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:24:18,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:24:18,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:24:18,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:24:18,388.388 INFO    ] time= 25/08/2026 23:24:18
[2026-08-25 23:24:18,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:24:18,474.474 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:24:18,591.591 INFO    ] No existing commands found in stream
[2026-08-25 23:24:23,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:24:23,619.619 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-08-25 23:24:25,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:24:25,340.340 INFO    ] Checking for system updates...
[2026-08-25 23:24:25,376.376 INFO    ] 200
[2026-08-25 23:24:25,378.378 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:25,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:25,434.434 INFO    ] No update needed
[2026-08-25 23:24:25,436.436 INFO    ] Checking for camera pi updates...
[2026-08-25 23:24:25,471.471 INFO    ] 200
[2026-08-25 23:24:25,474.474 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:25,529.529 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:24:25,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:25,577.577 INFO    ] No camera update needed
[2026-08-25 23:24:25,580.580 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:24:25,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:24:25,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:24:25,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:24:27,632.632 INFO    ] ================================================
[2026-08-25 23:24:27,648.648 INFO    ] Launching Daemon at Tue Aug 25 23:24:27 IST 2026
[2026-08-25 23:24:27,659.659 INFO    ] ================================================
[2026-08-25 23:24:28,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:24:28
[2026-08-25 23:24:28,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:24:29,078.078 INFO    ] Initializing speech engine...
[2026-08-25 23:24:29,085.085 INFO    ] 2026-08-25 23:24:29
[2026-08-25 23:24:29,342.342 INFO    ] 2026-08-25 23:24:29
[2026-08-25 23:24:29,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:24:29,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:24:29,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:24:29,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:24:29,803.803 INFO    ] time= 25/08/2026 23:24:29
[2026-08-25 23:24:29,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:24:29,888.888 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:24:30,032.032 INFO    ] No existing commands found in stream
[2026-08-25 23:24:35,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:24:35,050.050 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 23:24:37,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:24:37,935.935 INFO    ] Checking for system updates...
[2026-08-25 23:24:37,970.970 INFO    ] 200
[2026-08-25 23:24:37,973.973 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:38,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:24:38,028.028 INFO    ] No update needed
[2026-08-25 23:24:38,030.030 INFO    ] Checking for camera pi updates...
[2026-08-25 23:24:38,064.064 INFO    ] 200
[2026-08-25 23:24:38,066.066 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:38,106.106 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:24:38,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:24:38,165.165 INFO    ] No camera update needed
[2026-08-25 23:24:38,167.167 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:24:38,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:24:38,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:24:38,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:24:40,221.221 INFO    ] ================================================
[2026-08-25 23:24:40,237.237 INFO    ] Launching Daemon at Tue Aug 25 23:24:40 IST 2026
[2026-08-25 23:24:40,248.248 INFO    ] ================================================
[2026-08-25 23:24:40,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:24:40
[2026-08-25 23:24:41,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:24:41,769.769 INFO    ] Initializing speech engine...
[2026-08-25 23:24:41,778.778 INFO    ] 2026-08-25 23:24:41
[2026-08-25 23:24:42,083.083 INFO    ] 2026-08-25 23:24:42
[2026-08-25 23:24:42,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:24:42,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:24:42,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:24:42,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:24:42,590.590 INFO    ] time= 25/08/2026 23:24:42
[2026-08-25 23:24:42,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:24:42,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:24:42,744.744 INFO    ] No existing commands found in stream
[2026-08-25 23:24:47,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:24:47,761.761 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 23:24:49,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:24:49,825.825 INFO    ] Checking for system updates...
[2026-08-25 23:24:49,862.862 INFO    ] 200
[2026-08-25 23:24:49,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:49,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:49,920.920 INFO    ] No update needed
[2026-08-25 23:24:49,922.922 INFO    ] Checking for camera pi updates...
[2026-08-25 23:24:49,955.955 INFO    ] 200
[2026-08-25 23:24:49,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:24:50,004.004 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:24:50,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:24:50,060.060 INFO    ] No camera update needed
[2026-08-25 23:24:50,063.063 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:24:50,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:24:50,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:24:50,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:24:52,115.115 INFO    ] ================================================
[2026-08-25 23:24:52,131.131 INFO    ] Launching Daemon at Tue Aug 25 23:24:52 IST 2026
[2026-08-25 23:24:52,142.142 INFO    ] ================================================
[2026-08-25 23:24:52,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:24:52
[2026-08-25 23:24:53,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:24:53,566.566 INFO    ] Initializing speech engine...
[2026-08-25 23:24:53,575.575 INFO    ] 2026-08-25 23:24:53
[2026-08-25 23:24:53,835.835 INFO    ] 2026-08-25 23:24:53
[2026-08-25 23:24:53,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:24:54,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:24:54,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:24:54,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:24:54,297.297 INFO    ] time= 25/08/2026 23:24:54
[2026-08-25 23:24:54,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:24:54,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:24:54,512.512 INFO    ] No existing commands found in stream
[2026-08-25 23:24:59,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:24:59,542.542 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-08-25 23:25:00,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:25:00,624.624 INFO    ] Checking for system updates...
[2026-08-25 23:25:00,671.671 INFO    ] 200
[2026-08-25 23:25:00,673.673 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:00,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:25:00,739.739 INFO    ] No update needed
[2026-08-25 23:25:00,741.741 INFO    ] Checking for camera pi updates...
[2026-08-25 23:25:00,775.775 INFO    ] 200
[2026-08-25 23:25:00,777.777 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:00,822.822 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:25:00,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:25:00,870.870 INFO    ] No camera update needed
[2026-08-25 23:25:00,872.872 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:25:00,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:25:00,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:25:00,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:25:02,926.926 INFO    ] ================================================
[2026-08-25 23:25:02,943.943 INFO    ] Launching Daemon at Tue Aug 25 23:25:02 IST 2026
[2026-08-25 23:25:02,954.954 INFO    ] ================================================
[2026-08-25 23:25:03,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:25:03
[2026-08-25 23:25:04,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:25:04,393.393 INFO    ] Initializing speech engine...
[2026-08-25 23:25:04,399.399 INFO    ] 2026-08-25 23:25:04
[2026-08-25 23:25:04,695.695 INFO    ] 2026-08-25 23:25:04
[2026-08-25 23:25:04,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:25:04,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:25:04,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:25:05,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:25:05,049.049 INFO    ] time= 25/08/2026 23:25:05
[2026-08-25 23:25:05,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:25:05,060.060 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:25:05,138.138 INFO    ] No existing commands found in stream
[2026-08-25 23:25:10,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:25:10,183.183 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 23:25:14,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:25:14,385.385 INFO    ] Checking for system updates...
[2026-08-25 23:25:14,421.421 INFO    ] 200
[2026-08-25 23:25:14,423.423 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:14,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:25:14,479.479 INFO    ] No update needed
[2026-08-25 23:25:14,481.481 INFO    ] Checking for camera pi updates...
[2026-08-25 23:25:14,519.519 INFO    ] 200
[2026-08-25 23:25:14,522.522 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:14,561.561 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:25:14,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:25:14,608.608 INFO    ] No camera update needed
[2026-08-25 23:25:14,611.611 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:25:14,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:25:14,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:25:14,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:25:16,664.664 INFO    ] ================================================
[2026-08-25 23:25:16,679.679 INFO    ] Launching Daemon at Tue Aug 25 23:25:16 IST 2026
[2026-08-25 23:25:16,690.690 INFO    ] ================================================
[2026-08-25 23:25:17,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:25:17
[2026-08-25 23:25:17,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:25:18,102.102 INFO    ] Initializing speech engine...
[2026-08-25 23:25:18,111.111 INFO    ] 2026-08-25 23:25:18
[2026-08-25 23:25:18,355.355 INFO    ] 2026-08-25 23:25:18
[2026-08-25 23:25:18,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:25:18,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:25:18,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:25:18,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:25:18,723.723 INFO    ] time= 25/08/2026 23:25:18
[2026-08-25 23:25:18,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:25:18,775.775 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:25:18,907.907 INFO    ] No existing commands found in stream
[2026-08-25 23:25:23,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:25:23,931.931 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-08-25 23:25:27,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:25:27,223.223 INFO    ] Checking for system updates...
[2026-08-25 23:25:27,262.262 INFO    ] 200
[2026-08-25 23:25:27,265.265 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:27,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:25:27,320.320 INFO    ] No update needed
[2026-08-25 23:25:27,323.323 INFO    ] Checking for camera pi updates...
[2026-08-25 23:25:27,360.360 INFO    ] 200
[2026-08-25 23:25:27,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:27,407.407 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:25:27,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:25:27,468.468 INFO    ] No camera update needed
[2026-08-25 23:25:27,470.470 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:25:27,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:25:27,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:25:27,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:25:29,524.524 INFO    ] ================================================
[2026-08-25 23:25:29,540.540 INFO    ] Launching Daemon at Tue Aug 25 23:25:29 IST 2026
[2026-08-25 23:25:29,550.550 INFO    ] ================================================
[2026-08-25 23:25:30,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:25:30
[2026-08-25 23:25:30,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:25:31,151.151 INFO    ] Initializing speech engine...
[2026-08-25 23:25:31,156.156 INFO    ] 2026-08-25 23:25:31
[2026-08-25 23:25:31,409.409 INFO    ] 2026-08-25 23:25:31
[2026-08-25 23:25:31,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:25:31,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:25:31,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:25:31,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:25:31,924.924 INFO    ] time= 25/08/2026 23:25:31
[2026-08-25 23:25:31,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:25:32,004.004 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:25:32,085.085 INFO    ] No existing commands found in stream
[2026-08-25 23:25:37,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:25:37,127.127 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-08-25 23:25:42,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:25:42,079.079 INFO    ] Checking for system updates...
[2026-08-25 23:25:42,118.118 INFO    ] 200
[2026-08-25 23:25:42,121.121 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:42,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:25:42,183.183 INFO    ] No update needed
[2026-08-25 23:25:42,186.186 INFO    ] Checking for camera pi updates...
[2026-08-25 23:25:42,219.219 INFO    ] 200
[2026-08-25 23:25:42,222.222 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:42,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:25:42,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:25:42,317.317 INFO    ] No camera update needed
[2026-08-25 23:25:42,320.320 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:25:42,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:25:42,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:25:42,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:25:44,377.377 INFO    ] ================================================
[2026-08-25 23:25:44,392.392 INFO    ] Launching Daemon at Tue Aug 25 23:25:44 IST 2026
[2026-08-25 23:25:44,404.404 INFO    ] ================================================
[2026-08-25 23:25:44,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:25:44
[2026-08-25 23:25:45,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:25:45,823.823 INFO    ] Initializing speech engine...
[2026-08-25 23:25:45,829.829 INFO    ] 2026-08-25 23:25:45
[2026-08-25 23:25:46,076.076 INFO    ] 2026-08-25 23:25:46
[2026-08-25 23:25:46,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:25:46,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:25:46,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:25:46,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:25:46,550.550 INFO    ] time= 25/08/2026 23:25:46
[2026-08-25 23:25:46,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:25:46,643.643 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:25:46,713.713 INFO    ] No existing commands found in stream
[2026-08-25 23:25:51,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:25:51,753.753 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-08-25 23:25:55,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:25:55,247.247 INFO    ] Checking for system updates...
[2026-08-25 23:25:55,286.286 INFO    ] 200
[2026-08-25 23:25:55,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:55,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:25:55,344.344 INFO    ] No update needed
[2026-08-25 23:25:55,347.347 INFO    ] Checking for camera pi updates...
[2026-08-25 23:25:55,380.380 INFO    ] 200
[2026-08-25 23:25:55,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:25:55,428.428 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:25:55,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:25:55,474.474 INFO    ] No camera update needed
[2026-08-25 23:25:55,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:25:55,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:25:55,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:25:55,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:25:57,529.529 INFO    ] ================================================
[2026-08-25 23:25:57,545.545 INFO    ] Launching Daemon at Tue Aug 25 23:25:57 IST 2026
[2026-08-25 23:25:57,556.556 INFO    ] ================================================
[2026-08-25 23:25:58,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:25:58
[2026-08-25 23:25:58,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:25:59,122.122 INFO    ] Initializing speech engine...
[2026-08-25 23:25:59,134.134 INFO    ] 2026-08-25 23:25:59
[2026-08-25 23:25:59,412.412 INFO    ] 2026-08-25 23:25:59
[2026-08-25 23:25:59,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:25:59,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:25:59,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:25:59,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:25:59,904.904 INFO    ] time= 25/08/2026 23:25:59
[2026-08-25 23:25:59,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:25:59,960.960 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:26:00,108.108 INFO    ] No existing commands found in stream
[2026-08-25 23:26:05,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:26:05,141.141 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-08-25 23:26:07,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:26:07,083.083 INFO    ] Checking for system updates...
[2026-08-25 23:26:07,120.120 INFO    ] 200
[2026-08-25 23:26:07,123.123 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:07,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:26:07,186.186 INFO    ] No update needed
[2026-08-25 23:26:07,189.189 INFO    ] Checking for camera pi updates...
[2026-08-25 23:26:07,227.227 INFO    ] 200
[2026-08-25 23:26:07,230.230 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:07,271.271 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:26:07,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:26:07,426.426 INFO    ] No camera update needed
[2026-08-25 23:26:07,429.429 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:26:07,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:26:07,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:26:07,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:26:09,484.484 INFO    ] ================================================
[2026-08-25 23:26:09,499.499 INFO    ] Launching Daemon at Tue Aug 25 23:26:09 IST 2026
[2026-08-25 23:26:09,510.510 INFO    ] ================================================
[2026-08-25 23:26:10,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:26:10
[2026-08-25 23:26:10,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:26:10,929.929 INFO    ] Initializing speech engine...
[2026-08-25 23:26:10,938.938 INFO    ] 2026-08-25 23:26:10
[2026-08-25 23:26:11,199.199 INFO    ] 2026-08-25 23:26:11
[2026-08-25 23:26:11,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:26:11,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:26:11,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:26:11,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:26:11,741.741 INFO    ] time= 25/08/2026 23:26:11
[2026-08-25 23:26:11,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:26:11,765.765 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:26:11,885.885 INFO    ] No existing commands found in stream
[2026-08-25 23:26:16,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:26:16,909.909 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-08-25 23:26:21,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:26:21,012.012 INFO    ] Checking for system updates...
[2026-08-25 23:26:21,057.057 INFO    ] 200
[2026-08-25 23:26:21,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:21,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:26:21,122.122 INFO    ] No update needed
[2026-08-25 23:26:21,125.125 INFO    ] Checking for camera pi updates...
[2026-08-25 23:26:21,160.160 INFO    ] 200
[2026-08-25 23:26:21,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:21,211.211 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:26:21,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:26:21,261.261 INFO    ] No camera update needed
[2026-08-25 23:26:21,263.263 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:26:21,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:26:21,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:26:21,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:26:23,319.319 INFO    ] ================================================
[2026-08-25 23:26:23,335.335 INFO    ] Launching Daemon at Tue Aug 25 23:26:23 IST 2026
[2026-08-25 23:26:23,347.347 INFO    ] ================================================
[2026-08-25 23:26:23,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:26:23
[2026-08-25 23:26:24,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:26:24,956.956 INFO    ] Initializing speech engine...
[2026-08-25 23:26:24,964.964 INFO    ] 2026-08-25 23:26:24
[2026-08-25 23:26:25,247.247 INFO    ] 2026-08-25 23:26:25
[2026-08-25 23:26:25,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:26:25,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:26:25,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:26:25,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:26:25,715.715 INFO    ] time= 25/08/2026 23:26:25
[2026-08-25 23:26:25,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:26:25,786.786 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:26:25,936.936 INFO    ] No existing commands found in stream
[2026-08-25 23:26:30,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:26:30,954.954 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 23:26:31,809.809 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:26:31,812.812 INFO    ] Checking for system updates...
[2026-08-25 23:26:31,850.850 INFO    ] 200
[2026-08-25 23:26:31,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:31,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:26:31,912.912 INFO    ] No update needed
[2026-08-25 23:26:31,915.915 INFO    ] Checking for camera pi updates...
[2026-08-25 23:26:31,959.959 INFO    ] 200
[2026-08-25 23:26:31,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:32,012.012 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:26:32,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:26:32,089.089 INFO    ] No camera update needed
[2026-08-25 23:26:32,092.092 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:26:32,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:26:32,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:26:32,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:26:34,152.152 INFO    ] ================================================
[2026-08-25 23:26:34,168.168 INFO    ] Launching Daemon at Tue Aug 25 23:26:34 IST 2026
[2026-08-25 23:26:34,179.179 INFO    ] ================================================
[2026-08-25 23:26:34,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:26:34
[2026-08-25 23:26:35,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:26:35,750.750 INFO    ] Initializing speech engine...
[2026-08-25 23:26:35,765.765 INFO    ] 2026-08-25 23:26:35
[2026-08-25 23:26:36,039.039 INFO    ] 2026-08-25 23:26:36
[2026-08-25 23:26:36,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:26:36,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:26:36,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:26:36,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:26:36,541.541 INFO    ] time= 25/08/2026 23:26:36
[2026-08-25 23:26:36,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:26:36,611.611 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:26:36,755.755 INFO    ] No existing commands found in stream
[2026-08-25 23:26:41,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:26:41,771.771 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 23:26:43,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:26:43,074.074 INFO    ] Checking for system updates...
[2026-08-25 23:26:43,109.109 INFO    ] 200
[2026-08-25 23:26:43,112.112 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:43,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:26:43,167.167 INFO    ] No update needed
[2026-08-25 23:26:43,170.170 INFO    ] Checking for camera pi updates...
[2026-08-25 23:26:43,203.203 INFO    ] 200
[2026-08-25 23:26:43,206.206 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:43,252.252 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:26:43,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:26:43,300.300 INFO    ] No camera update needed
[2026-08-25 23:26:43,302.302 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:26:43,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:26:43,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:26:43,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:26:45,355.355 INFO    ] ================================================
[2026-08-25 23:26:45,370.370 INFO    ] Launching Daemon at Tue Aug 25 23:26:45 IST 2026
[2026-08-25 23:26:45,380.380 INFO    ] ================================================
[2026-08-25 23:26:45,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:26:45
[2026-08-25 23:26:46,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:26:46,798.798 INFO    ] Initializing speech engine...
[2026-08-25 23:26:46,807.807 INFO    ] 2026-08-25 23:26:46
[2026-08-25 23:26:47,067.067 INFO    ] 2026-08-25 23:26:47
[2026-08-25 23:26:47,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:26:47,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:26:47,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:26:47,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:26:47,543.543 INFO    ] time= 25/08/2026 23:26:47
[2026-08-25 23:26:47,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:26:47,614.614 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:26:47,753.753 INFO    ] No existing commands found in stream
[2026-08-25 23:26:52,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:26:52,775.775 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-08-25 23:26:55,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:26:55,993.993 INFO    ] Checking for system updates...
[2026-08-25 23:26:56,031.031 INFO    ] 200
[2026-08-25 23:26:56,034.034 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:56,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:26:56,089.089 INFO    ] No update needed
[2026-08-25 23:26:56,092.092 INFO    ] Checking for camera pi updates...
[2026-08-25 23:26:56,126.126 INFO    ] 200
[2026-08-25 23:26:56,129.129 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:26:56,170.170 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:26:56,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:26:56,221.221 INFO    ] No camera update needed
[2026-08-25 23:26:56,224.224 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:26:56,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:26:56,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:26:56,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:26:58,277.277 INFO    ] ================================================
[2026-08-25 23:26:58,292.292 INFO    ] Launching Daemon at Tue Aug 25 23:26:58 IST 2026
[2026-08-25 23:26:58,303.303 INFO    ] ================================================
[2026-08-25 23:26:58,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:26:58
[2026-08-25 23:26:59,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:26:59,726.726 INFO    ] Initializing speech engine...
[2026-08-25 23:26:59,734.734 INFO    ] 2026-08-25 23:26:59
[2026-08-25 23:26:59,987.987 INFO    ] 2026-08-25 23:26:59
[2026-08-25 23:27:00,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:27:00,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:27:00,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:27:00,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:27:00,465.465 INFO    ] time= 25/08/2026 23:27:00
[2026-08-25 23:27:00,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:27:00,541.541 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:27:00,664.664 INFO    ] No existing commands found in stream
[2026-08-25 23:27:05,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:27:05,699.699 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-08-25 23:27:07,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:27:07,653.653 INFO    ] Checking for system updates...
[2026-08-25 23:27:07,689.689 INFO    ] 200
[2026-08-25 23:27:07,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:07,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:27:07,757.757 INFO    ] No update needed
[2026-08-25 23:27:07,759.759 INFO    ] Checking for camera pi updates...
[2026-08-25 23:27:07,794.794 INFO    ] 200
[2026-08-25 23:27:07,796.796 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:07,840.840 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:27:07,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:27:07,895.895 INFO    ] No camera update needed
[2026-08-25 23:27:07,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:27:07,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:27:07,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:27:07,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:27:09,952.952 INFO    ] ================================================
[2026-08-25 23:27:09,967.967 INFO    ] Launching Daemon at Tue Aug 25 23:27:09 IST 2026
[2026-08-25 23:27:09,978.978 INFO    ] ================================================
[2026-08-25 23:27:10,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:27:10
[2026-08-25 23:27:11,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:27:11,394.394 INFO    ] Initializing speech engine...
[2026-08-25 23:27:11,405.405 INFO    ] 2026-08-25 23:27:11
[2026-08-25 23:27:11,649.649 INFO    ] 2026-08-25 23:27:11
[2026-08-25 23:27:11,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:27:11,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:27:11,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:27:12,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:27:12,122.122 INFO    ] time= 25/08/2026 23:27:12
[2026-08-25 23:27:12,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:27:12,214.214 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:27:12,358.358 INFO    ] No existing commands found in stream
[2026-08-25 23:27:17,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:27:17,376.376 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 23:27:20,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:27:20,954.954 INFO    ] Checking for system updates...
[2026-08-25 23:27:20,993.993 INFO    ] 200
[2026-08-25 23:27:20,996.996 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:21,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:27:21,050.050 INFO    ] No update needed
[2026-08-25 23:27:21,053.053 INFO    ] Checking for camera pi updates...
[2026-08-25 23:27:21,089.089 INFO    ] 200
[2026-08-25 23:27:21,092.092 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:21,131.131 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:27:21,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:27:21,183.183 INFO    ] No camera update needed
[2026-08-25 23:27:21,185.185 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:27:21,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:27:21,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:27:21,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:27:23,239.239 INFO    ] ================================================
[2026-08-25 23:27:23,255.255 INFO    ] Launching Daemon at Tue Aug 25 23:27:23 IST 2026
[2026-08-25 23:27:23,265.265 INFO    ] ================================================
[2026-08-25 23:27:23,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:27:23
[2026-08-25 23:27:24,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:27:24,911.911 INFO    ] Initializing speech engine...
[2026-08-25 23:27:24,916.916 INFO    ] 2026-08-25 23:27:24
[2026-08-25 23:27:25,200.200 INFO    ] 2026-08-25 23:27:25
[2026-08-25 23:27:25,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:27:25,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:27:25,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:27:25,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:27:25,679.679 INFO    ] time= 25/08/2026 23:27:25
[2026-08-25 23:27:25,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:27:25,739.739 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:27:25,880.880 INFO    ] No existing commands found in stream
[2026-08-25 23:27:30,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:27:30,900.900 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 23:27:31,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:27:31,827.827 INFO    ] Checking for system updates...
[2026-08-25 23:27:31,869.869 INFO    ] 200
[2026-08-25 23:27:31,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:31,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:27:31,932.932 INFO    ] No update needed
[2026-08-25 23:27:31,935.935 INFO    ] Checking for camera pi updates...
[2026-08-25 23:27:31,974.974 INFO    ] 200
[2026-08-25 23:27:31,977.977 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:32,028.028 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:27:32,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:27:32,090.090 INFO    ] No camera update needed
[2026-08-25 23:27:32,093.093 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:27:32,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:27:32,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:27:32,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:27:34,148.148 INFO    ] ================================================
[2026-08-25 23:27:34,163.163 INFO    ] Launching Daemon at Tue Aug 25 23:27:34 IST 2026
[2026-08-25 23:27:34,173.173 INFO    ] ================================================
[2026-08-25 23:27:34,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:27:34
[2026-08-25 23:27:35,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:27:35,792.792 INFO    ] Initializing speech engine...
[2026-08-25 23:27:35,805.805 INFO    ] 2026-08-25 23:27:35
[2026-08-25 23:27:36,114.114 INFO    ] 2026-08-25 23:27:36
[2026-08-25 23:27:36,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:27:36,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:27:36,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:27:36,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:27:36,623.623 INFO    ] time= 25/08/2026 23:27:36
[2026-08-25 23:27:36,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:27:36,670.670 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:27:36,778.778 INFO    ] No existing commands found in stream
[2026-08-25 23:27:41,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:27:41,806.806 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-08-25 23:27:44,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:27:44,705.705 INFO    ] Checking for system updates...
[2026-08-25 23:27:44,742.742 INFO    ] 200
[2026-08-25 23:27:44,745.745 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:44,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:27:44,801.801 INFO    ] No update needed
[2026-08-25 23:27:44,804.804 INFO    ] Checking for camera pi updates...
[2026-08-25 23:27:44,842.842 INFO    ] 200
[2026-08-25 23:27:44,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:44,890.890 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:27:44,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:27:44,949.949 INFO    ] No camera update needed
[2026-08-25 23:27:44,951.951 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:27:44,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:27:44,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:27:44,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:27:47,007.007 INFO    ] ================================================
[2026-08-25 23:27:47,023.023 INFO    ] Launching Daemon at Tue Aug 25 23:27:47 IST 2026
[2026-08-25 23:27:47,034.034 INFO    ] ================================================
[2026-08-25 23:27:47,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:27:47
[2026-08-25 23:27:48,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:27:48,459.459 INFO    ] Initializing speech engine...
[2026-08-25 23:27:48,476.476 INFO    ] 2026-08-25 23:27:48
[2026-08-25 23:27:48,747.747 INFO    ] 2026-08-25 23:27:48
[2026-08-25 23:27:48,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:27:48,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:27:48,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:27:49,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:27:49,128.128 INFO    ] time= 25/08/2026 23:27:49
[2026-08-25 23:27:49,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:27:49,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:27:49,251.251 INFO    ] No existing commands found in stream
[2026-08-25 23:27:54,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:27:54,267.267 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 23:27:58,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:27:58,654.654 INFO    ] Checking for system updates...
[2026-08-25 23:27:58,690.690 INFO    ] 200
[2026-08-25 23:27:58,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:58,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:27:58,753.753 INFO    ] No update needed
[2026-08-25 23:27:58,755.755 INFO    ] Checking for camera pi updates...
[2026-08-25 23:27:58,788.788 INFO    ] 200
[2026-08-25 23:27:58,791.791 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:27:58,836.836 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:27:58,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:27:58,890.890 INFO    ] No camera update needed
[2026-08-25 23:27:58,892.892 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:27:58,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:27:58,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:27:58,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:28:00,943.943 INFO    ] ================================================
[2026-08-25 23:28:00,958.958 INFO    ] Launching Daemon at Tue Aug 25 23:28:00 IST 2026
[2026-08-25 23:28:00,969.969 INFO    ] ================================================
[2026-08-25 23:28:01,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:28:01
[2026-08-25 23:28:02,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:28:02,757.757 INFO    ] Initializing speech engine...
[2026-08-25 23:28:02,770.770 INFO    ] 2026-08-25 23:28:02
[2026-08-25 23:28:03,060.060 INFO    ] 2026-08-25 23:28:03
[2026-08-25 23:28:03,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:28:03,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:28:03,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:28:03,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:28:03,561.561 INFO    ] time= 25/08/2026 23:28:03
[2026-08-25 23:28:03,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:28:03,625.625 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:28:03,772.772 INFO    ] No existing commands found in stream
[2026-08-25 23:28:08,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:28:08,794.794 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-08-25 23:28:10,542.542 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:28:10,545.545 INFO    ] Checking for system updates...
[2026-08-25 23:28:10,580.580 INFO    ] 200
[2026-08-25 23:28:10,582.582 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:10,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:28:10,639.639 INFO    ] No update needed
[2026-08-25 23:28:10,641.641 INFO    ] Checking for camera pi updates...
[2026-08-25 23:28:10,675.675 INFO    ] 200
[2026-08-25 23:28:10,678.678 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:10,723.723 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:28:10,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:28:10,872.872 INFO    ] No camera update needed
[2026-08-25 23:28:10,875.875 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:28:10,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:28:10,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:28:10,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:28:12,928.928 INFO    ] ================================================
[2026-08-25 23:28:12,943.943 INFO    ] Launching Daemon at Tue Aug 25 23:28:12 IST 2026
[2026-08-25 23:28:12,955.955 INFO    ] ================================================
[2026-08-25 23:28:13,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:28:13
[2026-08-25 23:28:14,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:28:14,561.561 INFO    ] Initializing speech engine...
[2026-08-25 23:28:14,575.575 INFO    ] 2026-08-25 23:28:14
[2026-08-25 23:28:14,834.834 INFO    ] 2026-08-25 23:28:14
[2026-08-25 23:28:14,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:28:15,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:28:15,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:28:15,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:28:15,319.319 INFO    ] time= 25/08/2026 23:28:15
[2026-08-25 23:28:15,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:28:15,382.382 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:28:15,513.513 INFO    ] No existing commands found in stream
[2026-08-25 23:28:20,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:28:20,539.539 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-08-25 23:28:22,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:28:22,324.324 INFO    ] Checking for system updates...
[2026-08-25 23:28:22,360.360 INFO    ] 200
[2026-08-25 23:28:22,362.362 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:22,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:28:22,416.416 INFO    ] No update needed
[2026-08-25 23:28:22,419.419 INFO    ] Checking for camera pi updates...
[2026-08-25 23:28:22,452.452 INFO    ] 200
[2026-08-25 23:28:22,454.454 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:22,496.496 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:28:22,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:28:22,542.542 INFO    ] No camera update needed
[2026-08-25 23:28:22,544.544 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:28:22,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:28:22,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:28:22,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:28:24,598.598 INFO    ] ================================================
[2026-08-25 23:28:24,614.614 INFO    ] Launching Daemon at Tue Aug 25 23:28:24 IST 2026
[2026-08-25 23:28:24,625.625 INFO    ] ================================================
[2026-08-25 23:28:25,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:28:25
[2026-08-25 23:28:25,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:28:26,072.072 INFO    ] Initializing speech engine...
[2026-08-25 23:28:26,083.083 INFO    ] 2026-08-25 23:28:26
[2026-08-25 23:28:26,330.330 INFO    ] 2026-08-25 23:28:26
[2026-08-25 23:28:26,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:28:26,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:28:26,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:28:26,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:28:26,825.825 INFO    ] time= 25/08/2026 23:28:26
[2026-08-25 23:28:26,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:28:26,892.892 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:28:27,036.036 INFO    ] No existing commands found in stream
[2026-08-25 23:28:32,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:28:32,050.050 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-08-25 23:28:33,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:28:33,468.468 INFO    ] Checking for system updates...
[2026-08-25 23:28:33,511.511 INFO    ] 200
[2026-08-25 23:28:33,514.514 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:33,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:28:33,573.573 INFO    ] No update needed
[2026-08-25 23:28:33,575.575 INFO    ] Checking for camera pi updates...
[2026-08-25 23:28:33,613.613 INFO    ] 200
[2026-08-25 23:28:33,615.615 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:33,657.657 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:28:33,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:28:33,706.706 INFO    ] No camera update needed
[2026-08-25 23:28:33,709.709 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:28:33,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:28:33,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:28:33,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:28:35,762.762 INFO    ] ================================================
[2026-08-25 23:28:35,778.778 INFO    ] Launching Daemon at Tue Aug 25 23:28:35 IST 2026
[2026-08-25 23:28:35,789.789 INFO    ] ================================================
[2026-08-25 23:28:36,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:28:36
[2026-08-25 23:28:36,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:28:37,285.285 INFO    ] Initializing speech engine...
[2026-08-25 23:28:37,299.299 INFO    ] 2026-08-25 23:28:37
[2026-08-25 23:28:37,606.606 INFO    ] 2026-08-25 23:28:37
[2026-08-25 23:28:37,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:28:37,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:28:37,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:28:38,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:28:38,109.109 INFO    ] time= 25/08/2026 23:28:38
[2026-08-25 23:28:38,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:28:38,157.157 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:28:38,264.264 INFO    ] No existing commands found in stream
[2026-08-25 23:28:43,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:28:43,296.296 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-08-25 23:28:45,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:28:45,025.025 INFO    ] Checking for system updates...
[2026-08-25 23:28:45,071.071 INFO    ] 200
[2026-08-25 23:28:45,074.074 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:45,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:28:45,152.152 INFO    ] No update needed
[2026-08-25 23:28:45,154.154 INFO    ] Checking for camera pi updates...
[2026-08-25 23:28:45,196.196 INFO    ] 200
[2026-08-25 23:28:45,199.199 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:45,272.272 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:28:45,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:28:45,321.321 INFO    ] No camera update needed
[2026-08-25 23:28:45,324.324 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:28:45,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:28:45,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:28:45,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:28:47,378.378 INFO    ] ================================================
[2026-08-25 23:28:47,393.393 INFO    ] Launching Daemon at Tue Aug 25 23:28:47 IST 2026
[2026-08-25 23:28:47,404.404 INFO    ] ================================================
[2026-08-25 23:28:47,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:28:47
[2026-08-25 23:28:48,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:28:48,877.877 INFO    ] Initializing speech engine...
[2026-08-25 23:28:48,885.885 INFO    ] 2026-08-25 23:28:48
[2026-08-25 23:28:49,151.151 INFO    ] 2026-08-25 23:28:49
[2026-08-25 23:28:49,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:28:49,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:28:49,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:28:49,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:28:49,613.613 INFO    ] time= 25/08/2026 23:28:49
[2026-08-25 23:28:49,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:28:49,709.709 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:28:49,835.835 INFO    ] No existing commands found in stream
[2026-08-25 23:28:54,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:28:54,863.863 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 23:28:57,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:28:57,715.715 INFO    ] Checking for system updates...
[2026-08-25 23:28:57,756.756 INFO    ] 200
[2026-08-25 23:28:57,759.759 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:57,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:28:57,828.828 INFO    ] No update needed
[2026-08-25 23:28:57,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 23:28:57,868.868 INFO    ] 200
[2026-08-25 23:28:57,871.871 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:28:57,913.913 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:28:57,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:28:57,965.965 INFO    ] No camera update needed
[2026-08-25 23:28:57,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:28:57,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:28:57,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:28:57,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:29:00,024.024 INFO    ] ================================================
[2026-08-25 23:29:00,039.039 INFO    ] Launching Daemon at Tue Aug 25 23:29:00 IST 2026
[2026-08-25 23:29:00,051.051 INFO    ] ================================================
[2026-08-25 23:29:00,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:29:00
[2026-08-25 23:29:01,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:29:01,738.738 INFO    ] Initializing speech engine...
[2026-08-25 23:29:01,743.743 INFO    ] 2026-08-25 23:29:01
[2026-08-25 23:29:02,088.088 INFO    ] 2026-08-25 23:29:02
[2026-08-25 23:29:02,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:29:02,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:29:02,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:29:02,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:29:02,690.690 INFO    ] time= 25/08/2026 23:29:02
[2026-08-25 23:29:02,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:29:02,801.801 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:29:02,877.877 INFO    ] No existing commands found in stream
[2026-08-25 23:29:07,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:29:07,909.909 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-08-25 23:29:10,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:29:10,478.478 INFO    ] Checking for system updates...
[2026-08-25 23:29:10,518.518 INFO    ] 200
[2026-08-25 23:29:10,521.521 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:10,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:29:10,577.577 INFO    ] No update needed
[2026-08-25 23:29:10,580.580 INFO    ] Checking for camera pi updates...
[2026-08-25 23:29:10,613.613 INFO    ] 200
[2026-08-25 23:29:10,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:10,656.656 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:29:10,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:29:10,704.704 INFO    ] No camera update needed
[2026-08-25 23:29:10,706.706 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:29:10,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:29:10,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:29:10,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:29:12,761.761 INFO    ] ================================================
[2026-08-25 23:29:12,777.777 INFO    ] Launching Daemon at Tue Aug 25 23:29:12 IST 2026
[2026-08-25 23:29:12,788.788 INFO    ] ================================================
[2026-08-25 23:29:13,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:29:13
[2026-08-25 23:29:13,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:29:14,195.195 INFO    ] Initializing speech engine...
[2026-08-25 23:29:14,213.213 INFO    ] 2026-08-25 23:29:14
[2026-08-25 23:29:14,461.461 INFO    ] 2026-08-25 23:29:14
[2026-08-25 23:29:14,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:29:14,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:29:14,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:29:14,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:29:14,969.969 INFO    ] time= 25/08/2026 23:29:14
[2026-08-25 23:29:15,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:29:15,039.039 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:29:15,163.163 INFO    ] No existing commands found in stream
[2026-08-25 23:29:20,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:29:20,189.189 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 23:29:23,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:29:23,680.680 INFO    ] Checking for system updates...
[2026-08-25 23:29:23,716.716 INFO    ] 200
[2026-08-25 23:29:23,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:23,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:29:23,775.775 INFO    ] No update needed
[2026-08-25 23:29:23,777.777 INFO    ] Checking for camera pi updates...
[2026-08-25 23:29:23,812.812 INFO    ] 200
[2026-08-25 23:29:23,814.814 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:23,856.856 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:29:23,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:29:23,910.910 INFO    ] No camera update needed
[2026-08-25 23:29:23,912.912 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:29:23,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:29:23,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:29:23,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:29:25,968.968 INFO    ] ================================================
[2026-08-25 23:29:25,983.983 INFO    ] Launching Daemon at Tue Aug 25 23:29:25 IST 2026
[2026-08-25 23:29:25,994.994 INFO    ] ================================================
[2026-08-25 23:29:26,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:29:26
[2026-08-25 23:29:27,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:29:27,615.615 INFO    ] Initializing speech engine...
[2026-08-25 23:29:27,628.628 INFO    ] 2026-08-25 23:29:27
[2026-08-25 23:29:27,939.939 INFO    ] 2026-08-25 23:29:27
[2026-08-25 23:29:28,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:29:28,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:29:28,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:29:28,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:29:28,442.442 INFO    ] time= 25/08/2026 23:29:28
[2026-08-25 23:29:28,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:29:28,481.481 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:29:28,604.604 INFO    ] No existing commands found in stream
[2026-08-25 23:29:33,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:29:33,638.638 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-08-25 23:29:35,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:29:35,667.667 INFO    ] Checking for system updates...
[2026-08-25 23:29:35,704.704 INFO    ] 200
[2026-08-25 23:29:35,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:35,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:29:35,762.762 INFO    ] No update needed
[2026-08-25 23:29:35,765.765 INFO    ] Checking for camera pi updates...
[2026-08-25 23:29:35,800.800 INFO    ] 200
[2026-08-25 23:29:35,802.802 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:35,844.844 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:29:35,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:29:35,897.897 INFO    ] No camera update needed
[2026-08-25 23:29:35,900.900 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:29:35,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:29:35,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:29:35,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:29:37,958.958 INFO    ] ================================================
[2026-08-25 23:29:37,978.978 INFO    ] Launching Daemon at Tue Aug 25 23:29:37 IST 2026
[2026-08-25 23:29:37,989.989 INFO    ] ================================================
[2026-08-25 23:29:38,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:29:38
[2026-08-25 23:29:39,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:29:39,410.410 INFO    ] Initializing speech engine...
[2026-08-25 23:29:39,418.418 INFO    ] 2026-08-25 23:29:39
[2026-08-25 23:29:39,713.713 INFO    ] 2026-08-25 23:29:39
[2026-08-25 23:29:39,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:29:39,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:29:39,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:29:40,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:29:40,133.133 INFO    ] time= 25/08/2026 23:29:40
[2026-08-25 23:29:40,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:29:40,145.145 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:29:40,217.217 INFO    ] No existing commands found in stream
[2026-08-25 23:29:45,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:29:45,233.233 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-08-25 23:29:47,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:29:47,591.591 INFO    ] Checking for system updates...
[2026-08-25 23:29:47,629.629 INFO    ] 200
[2026-08-25 23:29:47,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:47,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:29:47,708.708 INFO    ] No update needed
[2026-08-25 23:29:47,711.711 INFO    ] Checking for camera pi updates...
[2026-08-25 23:29:47,746.746 INFO    ] 200
[2026-08-25 23:29:47,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:47,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:29:47,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:29:47,839.839 INFO    ] No camera update needed
[2026-08-25 23:29:47,842.842 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:29:47,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:29:47,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:29:47,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:29:49,897.897 INFO    ] ================================================
[2026-08-25 23:29:49,912.912 INFO    ] Launching Daemon at Tue Aug 25 23:29:49 IST 2026
[2026-08-25 23:29:49,923.923 INFO    ] ================================================
[2026-08-25 23:29:50,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:29:50
[2026-08-25 23:29:51,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:29:51,358.358 INFO    ] Initializing speech engine...
[2026-08-25 23:29:51,367.367 INFO    ] 2026-08-25 23:29:51
[2026-08-25 23:29:51,612.612 INFO    ] 2026-08-25 23:29:51
[2026-08-25 23:29:51,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:29:51,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:29:51,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:29:51,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:29:51,978.978 INFO    ] time= 25/08/2026 23:29:51
[2026-08-25 23:29:51,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:29:52,030.030 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:29:52,158.158 INFO    ] No existing commands found in stream
[2026-08-25 23:29:57,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:29:57,186.186 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-08-25 23:29:59,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:29:59,581.581 INFO    ] Checking for system updates...
[2026-08-25 23:29:59,620.620 INFO    ] 200
[2026-08-25 23:29:59,622.622 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:59,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:29:59,677.677 INFO    ] No update needed
[2026-08-25 23:29:59,679.679 INFO    ] Checking for camera pi updates...
[2026-08-25 23:29:59,712.712 INFO    ] 200
[2026-08-25 23:29:59,715.715 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:29:59,756.756 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:29:59,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:29:59,808.808 INFO    ] No camera update needed
[2026-08-25 23:29:59,810.810 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:29:59,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:29:59,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:29:59,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:30:01,899.899 INFO    ] ================================================
[2026-08-25 23:30:01,934.934 INFO    ] Launching Daemon at Tue Aug 25 23:30:01 IST 2026
[2026-08-25 23:30:02,011.011 INFO    ] ================================================
[2026-08-25 23:30:02,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:30:02
[2026-08-25 23:30:03,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:30:03,940.940 INFO    ] Initializing speech engine...
[2026-08-25 23:30:03,946.946 INFO    ] 2026-08-25 23:30:03
[2026-08-25 23:30:04,256.256 INFO    ] 2026-08-25 23:30:04
[2026-08-25 23:30:04,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:30:04,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:30:04,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:30:04,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:30:04,683.683 INFO    ] time= 25/08/2026 23:30:04
[2026-08-25 23:30:04,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:30:04,695.695 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:30:04,769.769 INFO    ] No existing commands found in stream
[2026-08-25 23:30:09,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:30:09,788.788 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 23:30:13,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:30:13,945.945 INFO    ] Checking for system updates...
[2026-08-25 23:30:13,980.980 INFO    ] 200
[2026-08-25 23:30:13,983.983 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:14,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:30:14,037.037 INFO    ] No update needed
[2026-08-25 23:30:14,040.040 INFO    ] Checking for camera pi updates...
[2026-08-25 23:30:14,073.073 INFO    ] 200
[2026-08-25 23:30:14,075.075 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:14,116.116 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:30:14,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:30:14,261.261 INFO    ] No camera update needed
[2026-08-25 23:30:14,264.264 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:30:14,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:30:14,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:30:14,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:30:16,322.322 INFO    ] ================================================
[2026-08-25 23:30:16,337.337 INFO    ] Launching Daemon at Tue Aug 25 23:30:16 IST 2026
[2026-08-25 23:30:16,348.348 INFO    ] ================================================
[2026-08-25 23:30:16,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:30:16
[2026-08-25 23:30:17,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:30:17,760.760 INFO    ] Initializing speech engine...
[2026-08-25 23:30:17,766.766 INFO    ] 2026-08-25 23:30:17
[2026-08-25 23:30:18,062.062 INFO    ] 2026-08-25 23:30:18
[2026-08-25 23:30:18,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:30:18,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:30:18,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:30:18,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:30:18,445.445 INFO    ] time= 25/08/2026 23:30:18
[2026-08-25 23:30:18,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:30:18,490.490 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:30:18,568.568 INFO    ] No existing commands found in stream
[2026-08-25 23:30:23,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:30:23,583.583 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-08-25 23:30:26,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:30:26,857.857 INFO    ] Checking for system updates...
[2026-08-25 23:30:26,893.893 INFO    ] 200
[2026-08-25 23:30:26,896.896 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:26,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:30:26,951.951 INFO    ] No update needed
[2026-08-25 23:30:26,953.953 INFO    ] Checking for camera pi updates...
[2026-08-25 23:30:26,991.991 INFO    ] 200
[2026-08-25 23:30:26,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:27,038.038 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:30:27,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:30:27,101.101 INFO    ] No camera update needed
[2026-08-25 23:30:27,104.104 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:30:27,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:30:27,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:30:27,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:30:29,155.155 INFO    ] ================================================
[2026-08-25 23:30:29,170.170 INFO    ] Launching Daemon at Tue Aug 25 23:30:29 IST 2026
[2026-08-25 23:30:29,181.181 INFO    ] ================================================
[2026-08-25 23:30:29,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:30:29
[2026-08-25 23:30:30,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:30:30,601.601 INFO    ] Initializing speech engine...
[2026-08-25 23:30:30,610.610 INFO    ] 2026-08-25 23:30:30
[2026-08-25 23:30:30,857.857 INFO    ] 2026-08-25 23:30:30
[2026-08-25 23:30:30,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:30:31,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:30:31,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:30:31,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:30:31,326.326 INFO    ] time= 25/08/2026 23:30:31
[2026-08-25 23:30:31,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:30:31,419.419 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:30:31,547.547 INFO    ] No existing commands found in stream
[2026-08-25 23:30:36,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:30:36,577.577 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 23:30:40,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:30:40,944.944 INFO    ] Checking for system updates...
[2026-08-25 23:30:40,983.983 INFO    ] 200
[2026-08-25 23:30:40,985.985 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:41,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:30:41,041.041 INFO    ] No update needed
[2026-08-25 23:30:41,043.043 INFO    ] Checking for camera pi updates...
[2026-08-25 23:30:41,078.078 INFO    ] 200
[2026-08-25 23:30:41,080.080 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:41,121.121 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:30:41,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:30:41,171.171 INFO    ] No camera update needed
[2026-08-25 23:30:41,173.173 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:30:41,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:30:41,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:30:41,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:30:43,227.227 INFO    ] ================================================
[2026-08-25 23:30:43,241.241 INFO    ] Launching Daemon at Tue Aug 25 23:30:43 IST 2026
[2026-08-25 23:30:43,252.252 INFO    ] ================================================
[2026-08-25 23:30:43,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:30:43
[2026-08-25 23:30:44,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:30:44,872.872 INFO    ] Initializing speech engine...
[2026-08-25 23:30:44,879.879 INFO    ] 2026-08-25 23:30:44
[2026-08-25 23:30:45,169.169 INFO    ] 2026-08-25 23:30:45
[2026-08-25 23:30:45,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:30:45,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:30:45,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:30:45,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:30:45,697.697 INFO    ] time= 25/08/2026 23:30:45
[2026-08-25 23:30:45,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:30:45,723.723 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:30:45,844.844 INFO    ] No existing commands found in stream
[2026-08-25 23:30:50,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:30:50,867.867 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-08-25 23:30:54,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:30:54,748.748 INFO    ] Checking for system updates...
[2026-08-25 23:30:54,785.785 INFO    ] 200
[2026-08-25 23:30:54,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:54,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:30:54,845.845 INFO    ] No update needed
[2026-08-25 23:30:54,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 23:30:54,882.882 INFO    ] 200
[2026-08-25 23:30:54,885.885 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:30:54,926.926 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:30:54,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:30:54,975.975 INFO    ] No camera update needed
[2026-08-25 23:30:54,978.978 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:30:54,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:30:54,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:30:54,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:30:57,032.032 INFO    ] ================================================
[2026-08-25 23:30:57,048.048 INFO    ] Launching Daemon at Tue Aug 25 23:30:57 IST 2026
[2026-08-25 23:30:57,059.059 INFO    ] ================================================
[2026-08-25 23:30:57,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:30:57
[2026-08-25 23:30:58,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:30:58,466.466 INFO    ] Initializing speech engine...
[2026-08-25 23:30:58,474.474 INFO    ] 2026-08-25 23:30:58
[2026-08-25 23:30:58,771.771 INFO    ] 2026-08-25 23:30:58
[2026-08-25 23:30:58,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:30:59,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:30:59,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:30:59,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:30:59,156.156 INFO    ] time= 25/08/2026 23:30:59
[2026-08-25 23:30:59,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:30:59,190.190 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:30:59,282.282 INFO    ] No existing commands found in stream
[2026-08-25 23:31:04,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:31:04,297.297 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-08-25 23:31:07,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:31:07,252.252 INFO    ] Checking for system updates...
[2026-08-25 23:31:07,287.287 INFO    ] 200
[2026-08-25 23:31:07,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:07,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:31:07,353.353 INFO    ] No update needed
[2026-08-25 23:31:07,356.356 INFO    ] Checking for camera pi updates...
[2026-08-25 23:31:07,394.394 INFO    ] 200
[2026-08-25 23:31:07,397.397 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:07,442.442 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:31:07,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:31:07,492.492 INFO    ] No camera update needed
[2026-08-25 23:31:07,494.494 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:31:07,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:31:07,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:31:07,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:31:09,547.547 INFO    ] ================================================
[2026-08-25 23:31:09,563.563 INFO    ] Launching Daemon at Tue Aug 25 23:31:09 IST 2026
[2026-08-25 23:31:09,573.573 INFO    ] ================================================
[2026-08-25 23:31:10,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:31:10
[2026-08-25 23:31:10,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:31:11,269.269 INFO    ] Initializing speech engine...
[2026-08-25 23:31:11,284.284 INFO    ] 2026-08-25 23:31:11
[2026-08-25 23:31:11,567.567 INFO    ] 2026-08-25 23:31:11
[2026-08-25 23:31:11,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:31:11,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:31:11,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:31:11,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:31:12,070.070 INFO    ] time= 25/08/2026 23:31:12
[2026-08-25 23:31:12,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:31:12,135.135 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:31:12,261.261 INFO    ] No existing commands found in stream
[2026-08-25 23:31:17,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:31:17,291.291 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 23:31:19,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:31:19,484.484 INFO    ] Checking for system updates...
[2026-08-25 23:31:19,522.522 INFO    ] 200
[2026-08-25 23:31:19,525.525 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:19,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:31:19,583.583 INFO    ] No update needed
[2026-08-25 23:31:19,586.586 INFO    ] Checking for camera pi updates...
[2026-08-25 23:31:19,622.622 INFO    ] 200
[2026-08-25 23:31:19,625.625 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:19,674.674 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:31:19,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:31:19,725.725 INFO    ] No camera update needed
[2026-08-25 23:31:19,728.728 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:31:19,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:31:19,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:31:19,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:31:21,781.781 INFO    ] ================================================
[2026-08-25 23:31:21,796.796 INFO    ] Launching Daemon at Tue Aug 25 23:31:21 IST 2026
[2026-08-25 23:31:21,807.807 INFO    ] ================================================
[2026-08-25 23:31:22,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:31:22
[2026-08-25 23:31:23,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:31:23,487.487 INFO    ] Initializing speech engine...
[2026-08-25 23:31:23,501.501 INFO    ] 2026-08-25 23:31:23
[2026-08-25 23:31:23,792.792 INFO    ] 2026-08-25 23:31:23
[2026-08-25 23:31:23,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:31:24,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:31:24,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:31:24,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:31:24,327.327 INFO    ] time= 25/08/2026 23:31:24
[2026-08-25 23:31:24,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:31:24,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:31:24,482.482 INFO    ] No existing commands found in stream
[2026-08-25 23:31:29,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:31:29,526.526 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-08-25 23:31:32,900.900 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:31:32,903.903 INFO    ] Checking for system updates...
[2026-08-25 23:31:32,940.940 INFO    ] 200
[2026-08-25 23:31:32,943.943 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:32,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:31:33,000.000 INFO    ] No update needed
[2026-08-25 23:31:33,003.003 INFO    ] Checking for camera pi updates...
[2026-08-25 23:31:33,037.037 INFO    ] 200
[2026-08-25 23:31:33,040.040 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:33,087.087 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:31:33,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:31:33,137.137 INFO    ] No camera update needed
[2026-08-25 23:31:33,143.143 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:31:33,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:31:33,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:31:33,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:31:35,196.196 INFO    ] ================================================
[2026-08-25 23:31:35,212.212 INFO    ] Launching Daemon at Tue Aug 25 23:31:35 IST 2026
[2026-08-25 23:31:35,223.223 INFO    ] ================================================
[2026-08-25 23:31:35,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:31:35
[2026-08-25 23:31:36,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:31:36,888.888 INFO    ] Initializing speech engine...
[2026-08-25 23:31:36,900.900 INFO    ] 2026-08-25 23:31:36
[2026-08-25 23:31:37,209.209 INFO    ] 2026-08-25 23:31:37
[2026-08-25 23:31:37,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:31:37,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:31:37,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:31:37,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:31:37,717.717 INFO    ] time= 25/08/2026 23:31:37
[2026-08-25 23:31:37,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:31:37,766.766 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:31:37,872.872 INFO    ] No existing commands found in stream
[2026-08-25 23:31:42,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:31:42,889.889 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-08-25 23:31:46,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:31:46,546.546 INFO    ] Checking for system updates...
[2026-08-25 23:31:46,588.588 INFO    ] 200
[2026-08-25 23:31:46,591.591 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:46,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:31:46,657.657 INFO    ] No update needed
[2026-08-25 23:31:46,660.660 INFO    ] Checking for camera pi updates...
[2026-08-25 23:31:46,699.699 INFO    ] 200
[2026-08-25 23:31:46,702.702 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:31:46,750.750 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:31:46,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:31:46,798.798 INFO    ] No camera update needed
[2026-08-25 23:31:46,801.801 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:31:46,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:31:46,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:31:46,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:31:48,856.856 INFO    ] ================================================
[2026-08-25 23:31:48,872.872 INFO    ] Launching Daemon at Tue Aug 25 23:31:48 IST 2026
[2026-08-25 23:31:48,883.883 INFO    ] ================================================
[2026-08-25 23:31:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:31:49
[2026-08-25 23:31:50,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:31:50,567.567 INFO    ] Initializing speech engine...
[2026-08-25 23:31:50,581.581 INFO    ] 2026-08-25 23:31:50
[2026-08-25 23:31:50,897.897 INFO    ] 2026-08-25 23:31:50
[2026-08-25 23:31:50,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:31:51,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:31:51,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:31:51,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:31:51,409.409 INFO    ] time= 25/08/2026 23:31:51
[2026-08-25 23:31:51,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:31:51,440.440 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:31:51,566.566 INFO    ] No existing commands found in stream
[2026-08-25 23:31:56,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:31:56,599.599 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-08-25 23:32:00,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:32:00,218.218 INFO    ] Checking for system updates...
[2026-08-25 23:32:00,260.260 INFO    ] 200
[2026-08-25 23:32:00,263.263 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:00,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:00,321.321 INFO    ] No update needed
[2026-08-25 23:32:00,324.324 INFO    ] Checking for camera pi updates...
[2026-08-25 23:32:00,364.364 INFO    ] 200
[2026-08-25 23:32:00,367.367 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:00,409.409 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:32:00,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:00,473.473 INFO    ] No camera update needed
[2026-08-25 23:32:00,476.476 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:32:00,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:32:00,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:32:00,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:32:02,542.542 INFO    ] ================================================
[2026-08-25 23:32:02,573.573 INFO    ] Launching Daemon at Tue Aug 25 23:32:02 IST 2026
[2026-08-25 23:32:02,585.585 INFO    ] ================================================
[2026-08-25 23:32:03,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:32:03
[2026-08-25 23:32:03,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:32:04,220.220 INFO    ] Initializing speech engine...
[2026-08-25 23:32:04,227.227 INFO    ] 2026-08-25 23:32:04
[2026-08-25 23:32:04,544.544 INFO    ] 2026-08-25 23:32:04
[2026-08-25 23:32:04,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:32:04,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:32:04,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:32:04,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:32:05,046.046 INFO    ] time= 25/08/2026 23:32:05
[2026-08-25 23:32:05,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:32:05,071.071 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:32:05,197.197 INFO    ] No existing commands found in stream
[2026-08-25 23:32:10,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:32:10,218.218 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-08-25 23:32:14,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:32:14,618.618 INFO    ] Checking for system updates...
[2026-08-25 23:32:14,658.658 INFO    ] 200
[2026-08-25 23:32:14,660.660 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:14,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:14,715.715 INFO    ] No update needed
[2026-08-25 23:32:14,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 23:32:14,752.752 INFO    ] 200
[2026-08-25 23:32:14,754.754 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:14,800.800 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:32:14,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:14,854.854 INFO    ] No camera update needed
[2026-08-25 23:32:14,857.857 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:32:14,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:32:14,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:32:14,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:32:16,911.911 INFO    ] ================================================
[2026-08-25 23:32:16,926.926 INFO    ] Launching Daemon at Tue Aug 25 23:32:16 IST 2026
[2026-08-25 23:32:16,937.937 INFO    ] ================================================
[2026-08-25 23:32:17,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:32:17
[2026-08-25 23:32:18,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:32:18,547.547 INFO    ] Initializing speech engine...
[2026-08-25 23:32:18,558.558 INFO    ] 2026-08-25 23:32:18
[2026-08-25 23:32:18,833.833 INFO    ] 2026-08-25 23:32:18
[2026-08-25 23:32:18,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:32:19,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:32:19,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:32:19,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:32:19,288.288 INFO    ] time= 25/08/2026 23:32:19
[2026-08-25 23:32:19,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:32:19,375.375 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:32:19,503.503 INFO    ] No existing commands found in stream
[2026-08-25 23:32:24,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:32:24,534.534 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-08-25 23:32:27,746.746 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:32:27,749.749 INFO    ] Checking for system updates...
[2026-08-25 23:32:27,786.786 INFO    ] 200
[2026-08-25 23:32:27,789.789 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:27,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:27,846.846 INFO    ] No update needed
[2026-08-25 23:32:27,848.848 INFO    ] Checking for camera pi updates...
[2026-08-25 23:32:27,890.890 INFO    ] 200
[2026-08-25 23:32:27,892.892 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:27,936.936 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:32:28,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:28,084.084 INFO    ] No camera update needed
[2026-08-25 23:32:28,087.087 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:32:28,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:32:28,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:32:28,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:32:30,143.143 INFO    ] ================================================
[2026-08-25 23:32:30,159.159 INFO    ] Launching Daemon at Tue Aug 25 23:32:30 IST 2026
[2026-08-25 23:32:30,170.170 INFO    ] ================================================
[2026-08-25 23:32:30,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:32:30
[2026-08-25 23:32:31,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:32:31,640.640 INFO    ] Initializing speech engine...
[2026-08-25 23:32:31,650.650 INFO    ] 2026-08-25 23:32:31
[2026-08-25 23:32:31,969.969 INFO    ] 2026-08-25 23:32:31
[2026-08-25 23:32:32,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:32:32,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:32:32,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:32:32,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:32:32,358.358 INFO    ] time= 25/08/2026 23:32:32
[2026-08-25 23:32:32,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:32:32,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:32:32,495.495 INFO    ] No existing commands found in stream
[2026-08-25 23:32:37,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:32:37,513.513 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-08-25 23:32:41,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:32:41,950.950 INFO    ] Checking for system updates...
[2026-08-25 23:32:41,985.985 INFO    ] 200
[2026-08-25 23:32:41,988.988 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:42,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:32:42,048.048 INFO    ] No update needed
[2026-08-25 23:32:42,051.051 INFO    ] Checking for camera pi updates...
[2026-08-25 23:32:42,084.084 INFO    ] 200
[2026-08-25 23:32:42,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:42,135.135 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:32:42,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:32:42,185.185 INFO    ] No camera update needed
[2026-08-25 23:32:42,188.188 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:32:42,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:32:42,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:32:42,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:32:44,241.241 INFO    ] ================================================
[2026-08-25 23:32:44,256.256 INFO    ] Launching Daemon at Tue Aug 25 23:32:44 IST 2026
[2026-08-25 23:32:44,267.267 INFO    ] ================================================
[2026-08-25 23:32:44,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:32:44
[2026-08-25 23:32:45,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:32:45,859.859 INFO    ] Initializing speech engine...
[2026-08-25 23:32:45,872.872 INFO    ] 2026-08-25 23:32:45
[2026-08-25 23:32:46,149.149 INFO    ] 2026-08-25 23:32:46
[2026-08-25 23:32:46,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:32:46,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:32:46,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:32:46,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:32:46,632.632 INFO    ] time= 25/08/2026 23:32:46
[2026-08-25 23:32:46,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:32:46,697.697 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:32:46,832.832 INFO    ] No existing commands found in stream
[2026-08-25 23:32:51,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:32:51,857.857 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-08-25 23:32:55,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:32:55,887.887 INFO    ] Checking for system updates...
[2026-08-25 23:32:55,923.923 INFO    ] 200
[2026-08-25 23:32:55,926.926 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:55,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:55,983.983 INFO    ] No update needed
[2026-08-25 23:32:55,986.986 INFO    ] Checking for camera pi updates...
[2026-08-25 23:32:56,020.020 INFO    ] 200
[2026-08-25 23:32:56,022.022 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:32:56,068.068 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:32:56,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:32:56,124.124 INFO    ] No camera update needed
[2026-08-25 23:32:56,127.127 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:32:56,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:32:56,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:32:56,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:32:58,183.183 INFO    ] ================================================
[2026-08-25 23:32:58,198.198 INFO    ] Launching Daemon at Tue Aug 25 23:32:58 IST 2026
[2026-08-25 23:32:58,209.209 INFO    ] ================================================
[2026-08-25 23:32:58,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:32:58
[2026-08-25 23:32:59,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:32:59,614.614 INFO    ] Initializing speech engine...
[2026-08-25 23:32:59,622.622 INFO    ] 2026-08-25 23:32:59
[2026-08-25 23:32:59,913.913 INFO    ] 2026-08-25 23:32:59
[2026-08-25 23:32:59,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:33:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:33:00,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:33:00,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:33:00,289.289 INFO    ] time= 25/08/2026 23:33:00
[2026-08-25 23:33:00,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:33:00,328.328 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:33:00,415.415 INFO    ] No existing commands found in stream
[2026-08-25 23:33:05,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:33:05,443.443 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-08-25 23:33:06,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:33:06,027.027 INFO    ] Checking for system updates...
[2026-08-25 23:33:06,073.073 INFO    ] 200
[2026-08-25 23:33:06,077.077 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:06,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:33:06,143.143 INFO    ] No update needed
[2026-08-25 23:33:06,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 23:33:06,183.183 INFO    ] 200
[2026-08-25 23:33:06,185.185 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:06,233.233 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:33:06,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:33:06,294.294 INFO    ] No camera update needed
[2026-08-25 23:33:06,297.297 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:33:06,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:33:06,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:33:06,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:33:08,349.349 INFO    ] ================================================
[2026-08-25 23:33:08,365.365 INFO    ] Launching Daemon at Tue Aug 25 23:33:08 IST 2026
[2026-08-25 23:33:08,377.377 INFO    ] ================================================
[2026-08-25 23:33:08,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:33:08
[2026-08-25 23:33:09,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:33:09,783.783 INFO    ] Initializing speech engine...
[2026-08-25 23:33:09,792.792 INFO    ] 2026-08-25 23:33:09
[2026-08-25 23:33:10,082.082 INFO    ] 2026-08-25 23:33:10
[2026-08-25 23:33:10,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:33:10,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:33:10,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:33:10,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:33:10,461.461 INFO    ] time= 25/08/2026 23:33:10
[2026-08-25 23:33:10,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:33:10,506.506 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:33:10,584.584 INFO    ] No existing commands found in stream
[2026-08-25 23:33:15,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:33:15,600.600 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-08-25 23:33:16,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:33:16,275.275 INFO    ] Checking for system updates...
[2026-08-25 23:33:16,310.310 INFO    ] 200
[2026-08-25 23:33:16,313.313 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:16,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:33:16,373.373 INFO    ] No update needed
[2026-08-25 23:33:16,375.375 INFO    ] Checking for camera pi updates...
[2026-08-25 23:33:16,408.408 INFO    ] 200
[2026-08-25 23:33:16,411.411 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:16,451.451 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:33:16,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:33:16,501.501 INFO    ] No camera update needed
[2026-08-25 23:33:16,503.503 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:33:16,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:33:16,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:33:16,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:33:18,557.557 INFO    ] ================================================
[2026-08-25 23:33:18,573.573 INFO    ] Launching Daemon at Tue Aug 25 23:33:18 IST 2026
[2026-08-25 23:33:18,584.584 INFO    ] ================================================
[2026-08-25 23:33:19,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:33:19
[2026-08-25 23:33:19,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:33:20,019.019 INFO    ] Initializing speech engine...
[2026-08-25 23:33:20,025.025 INFO    ] 2026-08-25 23:33:20
[2026-08-25 23:33:20,272.272 INFO    ] 2026-08-25 23:33:20
[2026-08-25 23:33:20,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:33:21,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:33:21,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:33:21,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:33:21,376.376 INFO    ] time= 25/08/2026 23:33:21
[2026-08-25 23:33:21,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:33:21,429.429 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:33:21,484.484 INFO    ] No existing commands found in stream
[2026-08-25 23:33:26,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:33:26,498.498 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-08-25 23:33:30,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:33:30,265.265 INFO    ] Checking for system updates...
[2026-08-25 23:33:30,302.302 INFO    ] 200
[2026-08-25 23:33:30,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:30,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:33:30,362.362 INFO    ] No update needed
[2026-08-25 23:33:30,365.365 INFO    ] Checking for camera pi updates...
[2026-08-25 23:33:30,399.399 INFO    ] 200
[2026-08-25 23:33:30,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:30,447.447 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:33:30,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:33:30,505.505 INFO    ] No camera update needed
[2026-08-25 23:33:30,507.507 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:33:30,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:33:30,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:33:30,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:33:32,562.562 INFO    ] ================================================
[2026-08-25 23:33:32,578.578 INFO    ] Launching Daemon at Tue Aug 25 23:33:32 IST 2026
[2026-08-25 23:33:32,588.588 INFO    ] ================================================
[2026-08-25 23:33:33,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:33:33
[2026-08-25 23:33:33,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:33:34,016.016 INFO    ] Initializing speech engine...
[2026-08-25 23:33:34,025.025 INFO    ] 2026-08-25 23:33:34
[2026-08-25 23:33:34,271.271 INFO    ] 2026-08-25 23:33:34
[2026-08-25 23:33:34,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:33:34,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:33:34,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:33:34,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:33:34,735.735 INFO    ] time= 25/08/2026 23:33:34
[2026-08-25 23:33:34,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:33:34,831.831 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:33:34,975.975 INFO    ] No existing commands found in stream
[2026-08-25 23:33:39,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:33:39,992.992 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-08-25 23:33:43,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:33:43,739.739 INFO    ] Checking for system updates...
[2026-08-25 23:33:43,775.775 INFO    ] 200
[2026-08-25 23:33:43,778.778 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:43,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:33:43,833.833 INFO    ] No update needed
[2026-08-25 23:33:43,836.836 INFO    ] Checking for camera pi updates...
[2026-08-25 23:33:43,878.878 INFO    ] 200
[2026-08-25 23:33:43,880.880 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:43,921.921 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:33:43,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:33:43,971.971 INFO    ] No camera update needed
[2026-08-25 23:33:43,973.973 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:33:43,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:33:43,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:33:43,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:33:46,028.028 INFO    ] ================================================
[2026-08-25 23:33:46,043.043 INFO    ] Launching Daemon at Tue Aug 25 23:33:46 IST 2026
[2026-08-25 23:33:46,054.054 INFO    ] ================================================
[2026-08-25 23:33:46,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:33:46
[2026-08-25 23:33:47,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:33:47,473.473 INFO    ] Initializing speech engine...
[2026-08-25 23:33:47,480.480 INFO    ] 2026-08-25 23:33:47
[2026-08-25 23:33:47,731.731 INFO    ] 2026-08-25 23:33:47
[2026-08-25 23:33:47,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:33:48,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:33:48,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:33:48,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:33:48,196.196 INFO    ] time= 25/08/2026 23:33:48
[2026-08-25 23:33:48,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:33:48,291.291 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:33:48,416.416 INFO    ] No existing commands found in stream
[2026-08-25 23:33:53,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:33:53,449.449 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-08-25 23:33:55,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:33:55,425.425 INFO    ] Checking for system updates...
[2026-08-25 23:33:55,461.461 INFO    ] 200
[2026-08-25 23:33:55,463.463 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:55,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:33:55,518.518 INFO    ] No update needed
[2026-08-25 23:33:55,521.521 INFO    ] Checking for camera pi updates...
[2026-08-25 23:33:55,557.557 INFO    ] 200
[2026-08-25 23:33:55,560.560 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:33:55,600.600 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:33:55,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:33:55,651.651 INFO    ] No camera update needed
[2026-08-25 23:33:55,653.653 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:33:55,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:33:55,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:33:55,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:33:57,706.706 INFO    ] ================================================
[2026-08-25 23:33:57,720.720 INFO    ] Launching Daemon at Tue Aug 25 23:33:57 IST 2026
[2026-08-25 23:33:57,731.731 INFO    ] ================================================
[2026-08-25 23:33:58,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:33:58
[2026-08-25 23:33:58,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:33:59,139.139 INFO    ] Initializing speech engine...
[2026-08-25 23:33:59,155.155 INFO    ] 2026-08-25 23:33:59
[2026-08-25 23:33:59,440.440 INFO    ] 2026-08-25 23:33:59
[2026-08-25 23:33:59,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:33:59,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:33:59,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:33:59,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:33:59,856.856 INFO    ] time= 25/08/2026 23:33:59
[2026-08-25 23:33:59,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:33:59,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:34:00,032.032 INFO    ] No existing commands found in stream
[2026-08-25 23:34:05,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:34:05,060.060 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-08-25 23:34:06,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:34:06,415.415 INFO    ] Checking for system updates...
[2026-08-25 23:34:06,450.450 INFO    ] 200
[2026-08-25 23:34:06,453.453 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:06,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:06,507.507 INFO    ] No update needed
[2026-08-25 23:34:06,509.509 INFO    ] Checking for camera pi updates...
[2026-08-25 23:34:06,546.546 INFO    ] 200
[2026-08-25 23:34:06,548.548 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:06,589.589 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:34:06,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:06,636.636 INFO    ] No camera update needed
[2026-08-25 23:34:06,639.639 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:34:06,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:34:06,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:34:06,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:34:08,691.691 INFO    ] ================================================
[2026-08-25 23:34:08,706.706 INFO    ] Launching Daemon at Tue Aug 25 23:34:08 IST 2026
[2026-08-25 23:34:08,717.717 INFO    ] ================================================
[2026-08-25 23:34:09,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:34:09
[2026-08-25 23:34:09,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:34:10,184.184 INFO    ] Initializing speech engine...
[2026-08-25 23:34:10,193.193 INFO    ] 2026-08-25 23:34:10
[2026-08-25 23:34:10,460.460 INFO    ] 2026-08-25 23:34:10
[2026-08-25 23:34:10,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:34:10,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:34:10,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:34:10,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:34:10,973.973 INFO    ] time= 25/08/2026 23:34:10
[2026-08-25 23:34:11,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:34:11,054.054 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:34:11,215.215 INFO    ] No existing commands found in stream
[2026-08-25 23:34:16,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:34:16,244.244 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-08-25 23:34:17,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:34:17,797.797 INFO    ] Checking for system updates...
[2026-08-25 23:34:17,832.832 INFO    ] 200
[2026-08-25 23:34:17,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:17,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:17,898.898 INFO    ] No update needed
[2026-08-25 23:34:17,900.900 INFO    ] Checking for camera pi updates...
[2026-08-25 23:34:17,934.934 INFO    ] 200
[2026-08-25 23:34:17,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:17,979.979 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:34:18,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:18,028.028 INFO    ] No camera update needed
[2026-08-25 23:34:18,031.031 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:34:18,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:34:18,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:34:18,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:34:20,089.089 INFO    ] ================================================
[2026-08-25 23:34:20,104.104 INFO    ] Launching Daemon at Tue Aug 25 23:34:20 IST 2026
[2026-08-25 23:34:20,115.115 INFO    ] ================================================
[2026-08-25 23:34:20,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:34:20
[2026-08-25 23:34:21,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:34:21,780.780 INFO    ] Initializing speech engine...
[2026-08-25 23:34:21,792.792 INFO    ] 2026-08-25 23:34:21
[2026-08-25 23:34:22,104.104 INFO    ] 2026-08-25 23:34:22
[2026-08-25 23:34:22,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:34:22,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:34:22,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:34:22,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:34:22,573.573 INFO    ] time= 25/08/2026 23:34:22
[2026-08-25 23:34:22,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:34:22,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:34:22,763.763 INFO    ] No existing commands found in stream
[2026-08-25 23:34:27,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:34:27,783.783 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-08-25 23:34:31,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:34:31,229.229 INFO    ] Checking for system updates...
[2026-08-25 23:34:31,272.272 INFO    ] 200
[2026-08-25 23:34:31,275.275 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:31,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:31,347.347 INFO    ] No update needed
[2026-08-25 23:34:31,350.350 INFO    ] Checking for camera pi updates...
[2026-08-25 23:34:31,391.391 INFO    ] 200
[2026-08-25 23:34:31,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:31,440.440 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:34:31,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:31,598.598 INFO    ] No camera update needed
[2026-08-25 23:34:31,601.601 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:34:31,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:34:31,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:34:31,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:34:33,663.663 INFO    ] ================================================
[2026-08-25 23:34:33,679.679 INFO    ] Launching Daemon at Tue Aug 25 23:34:33 IST 2026
[2026-08-25 23:34:33,690.690 INFO    ] ================================================
[2026-08-25 23:34:34,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:34:34
[2026-08-25 23:34:34,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:34:35,108.108 INFO    ] Initializing speech engine...
[2026-08-25 23:34:35,117.117 INFO    ] 2026-08-25 23:34:35
[2026-08-25 23:34:35,376.376 INFO    ] 2026-08-25 23:34:35
[2026-08-25 23:34:35,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:34:35,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:34:35,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:34:35,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:34:35,831.831 INFO    ] time= 25/08/2026 23:34:35
[2026-08-25 23:34:35,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:34:35,922.922 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:34:36,060.060 INFO    ] No existing commands found in stream
[2026-08-25 23:34:41,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:34:41,083.083 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 23:34:43,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:34:43,385.385 INFO    ] Checking for system updates...
[2026-08-25 23:34:43,424.424 INFO    ] 200
[2026-08-25 23:34:43,427.427 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:43,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:43,489.489 INFO    ] No update needed
[2026-08-25 23:34:43,491.491 INFO    ] Checking for camera pi updates...
[2026-08-25 23:34:43,525.525 INFO    ] 200
[2026-08-25 23:34:43,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:43,568.568 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:34:43,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:34:43,618.618 INFO    ] No camera update needed
[2026-08-25 23:34:43,621.621 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:34:43,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:34:43,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:34:43,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:34:45,675.675 INFO    ] ================================================
[2026-08-25 23:34:45,690.690 INFO    ] Launching Daemon at Tue Aug 25 23:34:45 IST 2026
[2026-08-25 23:34:45,701.701 INFO    ] ================================================
[2026-08-25 23:34:46,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:34:46
[2026-08-25 23:34:46,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:34:47,125.125 INFO    ] Initializing speech engine...
[2026-08-25 23:34:47,134.134 INFO    ] 2026-08-25 23:34:47
[2026-08-25 23:34:47,393.393 INFO    ] 2026-08-25 23:34:47
[2026-08-25 23:34:47,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:34:47,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:34:47,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:34:47,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:34:47,846.846 INFO    ] time= 25/08/2026 23:34:47
[2026-08-25 23:34:47,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:34:47,942.942 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:34:48,071.071 INFO    ] No existing commands found in stream
[2026-08-25 23:34:53,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:34:53,101.101 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 23:34:57,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:34:57,261.261 INFO    ] Checking for system updates...
[2026-08-25 23:34:57,296.296 INFO    ] 200
[2026-08-25 23:34:57,299.299 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:57,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:34:57,353.353 INFO    ] No update needed
[2026-08-25 23:34:57,356.356 INFO    ] Checking for camera pi updates...
[2026-08-25 23:34:57,389.389 INFO    ] 200
[2026-08-25 23:34:57,391.391 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:34:57,434.434 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:34:57,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:34:57,491.491 INFO    ] No camera update needed
[2026-08-25 23:34:57,493.493 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:34:57,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:34:57,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:34:57,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:34:59,545.545 INFO    ] ================================================
[2026-08-25 23:34:59,561.561 INFO    ] Launching Daemon at Tue Aug 25 23:34:59 IST 2026
[2026-08-25 23:34:59,572.572 INFO    ] ================================================
[2026-08-25 23:35:00,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:35:00
[2026-08-25 23:35:00,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:35:01,067.067 INFO    ] Initializing speech engine...
[2026-08-25 23:35:01,074.074 INFO    ] 2026-08-25 23:35:01
[2026-08-25 23:35:01,558.558 INFO    ] 2026-08-25 23:35:01
[2026-08-25 23:35:01,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:35:01,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:35:01,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:35:01,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:35:01,890.890 INFO    ] time= 25/08/2026 23:35:01
[2026-08-25 23:35:01,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:35:01,896.896 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:35:01,965.965 INFO    ] No existing commands found in stream
[2026-08-25 23:35:06,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:35:06,978.978 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-08-25 23:35:07,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:35:07,947.947 INFO    ] Checking for system updates...
[2026-08-25 23:35:07,983.983 INFO    ] 200
[2026-08-25 23:35:07,986.986 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:08,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:35:08,041.041 INFO    ] No update needed
[2026-08-25 23:35:08,044.044 INFO    ] Checking for camera pi updates...
[2026-08-25 23:35:08,083.083 INFO    ] 200
[2026-08-25 23:35:08,086.086 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:08,127.127 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:35:08,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:35:08,187.187 INFO    ] No camera update needed
[2026-08-25 23:35:08,189.189 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:35:08,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:35:08,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:35:08,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:35:10,241.241 INFO    ] ================================================
[2026-08-25 23:35:10,257.257 INFO    ] Launching Daemon at Tue Aug 25 23:35:10 IST 2026
[2026-08-25 23:35:10,268.268 INFO    ] ================================================
[2026-08-25 23:35:10,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:35:10
[2026-08-25 23:35:11,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:35:11,902.902 INFO    ] Initializing speech engine...
[2026-08-25 23:35:11,910.910 INFO    ] 2026-08-25 23:35:11
[2026-08-25 23:35:12,216.216 INFO    ] 2026-08-25 23:35:12
[2026-08-25 23:35:12,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:35:12,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:35:12,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:35:12,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:35:12,719.719 INFO    ] time= 25/08/2026 23:35:12
[2026-08-25 23:35:12,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:35:12,746.746 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:35:12,870.870 INFO    ] No existing commands found in stream
[2026-08-25 23:35:17,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:35:17,889.889 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 23:35:20,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:35:20,696.696 INFO    ] Checking for system updates...
[2026-08-25 23:35:20,737.737 INFO    ] 200
[2026-08-25 23:35:20,740.740 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:20,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:35:20,809.809 INFO    ] No update needed
[2026-08-25 23:35:20,812.812 INFO    ] Checking for camera pi updates...
[2026-08-25 23:35:20,850.850 INFO    ] 200
[2026-08-25 23:35:20,853.853 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:20,895.895 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:35:20,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:35:20,952.952 INFO    ] No camera update needed
[2026-08-25 23:35:20,954.954 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:35:20,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:35:20,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:35:20,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:35:23,010.010 INFO    ] ================================================
[2026-08-25 23:35:23,026.026 INFO    ] Launching Daemon at Tue Aug 25 23:35:23 IST 2026
[2026-08-25 23:35:23,036.036 INFO    ] ================================================
[2026-08-25 23:35:23,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:35:23
[2026-08-25 23:35:24,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:35:24,459.459 INFO    ] Initializing speech engine...
[2026-08-25 23:35:24,483.483 INFO    ] 2026-08-25 23:35:24
[2026-08-25 23:35:24,759.759 INFO    ] 2026-08-25 23:35:24
[2026-08-25 23:35:24,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:35:24,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:35:25,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:35:25,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:35:25,154.154 INFO    ] time= 25/08/2026 23:35:25
[2026-08-25 23:35:25,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:35:25,182.182 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:35:25,265.265 INFO    ] No existing commands found in stream
[2026-08-25 23:35:30,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:35:30,288.288 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 23:35:32,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:35:32,229.229 INFO    ] Checking for system updates...
[2026-08-25 23:35:32,268.268 INFO    ] 200
[2026-08-25 23:35:32,270.270 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:32,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:35:32,330.330 INFO    ] No update needed
[2026-08-25 23:35:32,333.333 INFO    ] Checking for camera pi updates...
[2026-08-25 23:35:32,373.373 INFO    ] 200
[2026-08-25 23:35:32,375.375 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:32,424.424 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:35:32,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:35:32,480.480 INFO    ] No camera update needed
[2026-08-25 23:35:32,483.483 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:35:32,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:35:32,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:35:32,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:35:34,539.539 INFO    ] ================================================
[2026-08-25 23:35:34,560.560 INFO    ] Launching Daemon at Tue Aug 25 23:35:34 IST 2026
[2026-08-25 23:35:34,571.571 INFO    ] ================================================
[2026-08-25 23:35:35,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:35:35
[2026-08-25 23:35:35,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:35:35,992.992 INFO    ] Initializing speech engine...
[2026-08-25 23:35:36,011.011 INFO    ] 2026-08-25 23:35:36
[2026-08-25 23:35:36,265.265 INFO    ] 2026-08-25 23:35:36
[2026-08-25 23:35:36,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:35:36,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:35:36,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:35:36,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:35:36,755.755 INFO    ] time= 25/08/2026 23:35:36
[2026-08-25 23:35:36,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:35:36,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:35:36,945.945 INFO    ] No existing commands found in stream
[2026-08-25 23:35:41,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:35:41,979.979 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 23:35:46,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:35:46,217.217 INFO    ] Checking for system updates...
[2026-08-25 23:35:46,254.254 INFO    ] 200
[2026-08-25 23:35:46,256.256 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:46,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:35:46,317.317 INFO    ] No update needed
[2026-08-25 23:35:46,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 23:35:46,353.353 INFO    ] 200
[2026-08-25 23:35:46,356.356 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:35:46,397.397 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:35:46,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:35:46,457.457 INFO    ] No camera update needed
[2026-08-25 23:35:46,459.459 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:35:46,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:35:46,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:35:46,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:35:48,515.515 INFO    ] ================================================
[2026-08-25 23:35:48,529.529 INFO    ] Launching Daemon at Tue Aug 25 23:35:48 IST 2026
[2026-08-25 23:35:48,540.540 INFO    ] ================================================
[2026-08-25 23:35:49,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:35:49
[2026-08-25 23:35:49,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:35:49,990.990 INFO    ] Initializing speech engine...
[2026-08-25 23:35:49,999.999 INFO    ] 2026-08-25 23:35:49
[2026-08-25 23:35:50,255.255 INFO    ] 2026-08-25 23:35:50
[2026-08-25 23:35:50,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:35:50,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:35:50,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:35:50,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:35:50,718.718 INFO    ] time= 25/08/2026 23:35:50
[2026-08-25 23:35:50,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:35:50,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:35:50,910.910 INFO    ] No existing commands found in stream
[2026-08-25 23:35:55,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:35:55,945.945 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-08-25 23:36:00,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:36:00,295.295 INFO    ] Checking for system updates...
[2026-08-25 23:36:00,334.334 INFO    ] 200
[2026-08-25 23:36:00,337.337 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:00,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:36:00,398.398 INFO    ] No update needed
[2026-08-25 23:36:00,400.400 INFO    ] Checking for camera pi updates...
[2026-08-25 23:36:00,433.433 INFO    ] 200
[2026-08-25 23:36:00,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:00,475.475 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:36:00,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:36:00,536.536 INFO    ] No camera update needed
[2026-08-25 23:36:00,538.538 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:36:00,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:36:00,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:36:00,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:36:02,614.614 INFO    ] ================================================
[2026-08-25 23:36:02,636.636 INFO    ] Launching Daemon at Tue Aug 25 23:36:02 IST 2026
[2026-08-25 23:36:02,653.653 INFO    ] ================================================
[2026-08-25 23:36:03,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:36:03
[2026-08-25 23:36:04,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:36:04,312.312 INFO    ] Initializing speech engine...
[2026-08-25 23:36:04,326.326 INFO    ] 2026-08-25 23:36:04
[2026-08-25 23:36:04,633.633 INFO    ] 2026-08-25 23:36:04
[2026-08-25 23:36:04,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:36:04,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:36:04,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:36:05,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:36:05,140.140 INFO    ] time= 25/08/2026 23:36:05
[2026-08-25 23:36:05,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:36:05,187.187 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:36:05,297.297 INFO    ] No existing commands found in stream
[2026-08-25 23:36:10,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:36:10,325.325 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-08-25 23:36:12,508.508 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:36:12,512.512 INFO    ] Checking for system updates...
[2026-08-25 23:36:12,549.549 INFO    ] 200
[2026-08-25 23:36:12,552.552 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:12,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:36:12,614.614 INFO    ] No update needed
[2026-08-25 23:36:12,617.617 INFO    ] Checking for camera pi updates...
[2026-08-25 23:36:12,655.655 INFO    ] 200
[2026-08-25 23:36:12,658.658 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:12,699.699 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:36:12,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:36:12,749.749 INFO    ] No camera update needed
[2026-08-25 23:36:12,751.751 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:36:12,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:36:12,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:36:12,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:36:14,807.807 INFO    ] ================================================
[2026-08-25 23:36:14,822.822 INFO    ] Launching Daemon at Tue Aug 25 23:36:14 IST 2026
[2026-08-25 23:36:14,833.833 INFO    ] ================================================
[2026-08-25 23:36:15,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:36:15
[2026-08-25 23:36:16,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:36:16,298.298 INFO    ] Initializing speech engine...
[2026-08-25 23:36:16,304.304 INFO    ] 2026-08-25 23:36:16
[2026-08-25 23:36:16,576.576 INFO    ] 2026-08-25 23:36:16
[2026-08-25 23:36:16,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:36:16,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:36:16,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:36:17,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:36:17,056.056 INFO    ] time= 25/08/2026 23:36:17
[2026-08-25 23:36:17,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:36:17,136.136 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:36:17,271.271 INFO    ] No existing commands found in stream
[2026-08-25 23:36:22,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:36:22,296.296 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-08-25 23:36:23,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:36:23,489.489 INFO    ] Checking for system updates...
[2026-08-25 23:36:23,528.528 INFO    ] 200
[2026-08-25 23:36:23,531.531 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:23,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:36:23,588.588 INFO    ] No update needed
[2026-08-25 23:36:23,590.590 INFO    ] Checking for camera pi updates...
[2026-08-25 23:36:23,625.625 INFO    ] 200
[2026-08-25 23:36:23,628.628 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:23,668.668 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:36:23,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:36:23,722.722 INFO    ] No camera update needed
[2026-08-25 23:36:23,725.725 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:36:23,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:36:23,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:36:23,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:36:25,779.779 INFO    ] ================================================
[2026-08-25 23:36:25,795.795 INFO    ] Launching Daemon at Tue Aug 25 23:36:25 IST 2026
[2026-08-25 23:36:25,805.805 INFO    ] ================================================
[2026-08-25 23:36:26,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:36:26
[2026-08-25 23:36:27,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:36:27,404.404 INFO    ] Initializing speech engine...
[2026-08-25 23:36:27,415.415 INFO    ] 2026-08-25 23:36:27
[2026-08-25 23:36:27,697.697 INFO    ] 2026-08-25 23:36:27
[2026-08-25 23:36:27,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:36:27,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:36:28,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:36:28,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:36:28,225.225 INFO    ] time= 25/08/2026 23:36:28
[2026-08-25 23:36:28,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:36:28,251.251 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:36:28,369.369 INFO    ] No existing commands found in stream
[2026-08-25 23:36:33,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:36:33,394.394 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-08-25 23:36:34,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:36:34,613.613 INFO    ] Checking for system updates...
[2026-08-25 23:36:34,651.651 INFO    ] 200
[2026-08-25 23:36:34,653.653 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:34,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:36:34,715.715 INFO    ] No update needed
[2026-08-25 23:36:34,717.717 INFO    ] Checking for camera pi updates...
[2026-08-25 23:36:34,753.753 INFO    ] 200
[2026-08-25 23:36:34,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:34,797.797 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:36:34,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:36:34,943.943 INFO    ] No camera update needed
[2026-08-25 23:36:34,945.945 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:36:34,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:36:34,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:36:34,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:36:37,997.997 INFO    ] ================================================
[2026-08-25 23:36:37,013.013 INFO    ] Launching Daemon at Tue Aug 25 23:36:37 IST 2026
[2026-08-25 23:36:37,023.023 INFO    ] ================================================
[2026-08-25 23:36:37,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:36:37
[2026-08-25 23:36:38,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:36:38,419.419 INFO    ] Initializing speech engine...
[2026-08-25 23:36:38,442.442 INFO    ] 2026-08-25 23:36:38
[2026-08-25 23:36:38,693.693 INFO    ] 2026-08-25 23:36:38
[2026-08-25 23:36:38,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:36:38,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:36:38,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:36:39,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:36:39,179.179 INFO    ] time= 25/08/2026 23:36:39
[2026-08-25 23:36:39,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:36:39,268.268 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:36:39,386.386 INFO    ] No existing commands found in stream
[2026-08-25 23:36:44,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:36:44,411.411 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-08-25 23:36:48,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:36:48,577.577 INFO    ] Checking for system updates...
[2026-08-25 23:36:48,613.613 INFO    ] 200
[2026-08-25 23:36:48,616.616 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:48,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:36:48,671.671 INFO    ] No update needed
[2026-08-25 23:36:48,673.673 INFO    ] Checking for camera pi updates...
[2026-08-25 23:36:48,706.706 INFO    ] 200
[2026-08-25 23:36:48,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:36:48,748.748 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:36:48,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:36:48,798.798 INFO    ] No camera update needed
[2026-08-25 23:36:48,800.800 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:36:48,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:36:48,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:36:48,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:36:50,852.852 INFO    ] ================================================
[2026-08-25 23:36:50,868.868 INFO    ] Launching Daemon at Tue Aug 25 23:36:50 IST 2026
[2026-08-25 23:36:50,878.878 INFO    ] ================================================
[2026-08-25 23:36:51,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:36:51
[2026-08-25 23:36:52,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:36:52,413.413 INFO    ] Initializing speech engine...
[2026-08-25 23:36:52,421.421 INFO    ] 2026-08-25 23:36:52
[2026-08-25 23:36:52,739.739 INFO    ] 2026-08-25 23:36:52
[2026-08-25 23:36:52,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:36:53,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:36:53,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:36:53,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:36:53,241.241 INFO    ] time= 25/08/2026 23:36:53
[2026-08-25 23:36:53,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:36:53,278.278 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:36:53,396.396 INFO    ] No existing commands found in stream
[2026-08-25 23:36:58,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:36:58,419.419 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-08-25 23:37:02,147.147 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:37:02,150.150 INFO    ] Checking for system updates...
[2026-08-25 23:37:02,191.191 INFO    ] 200
[2026-08-25 23:37:02,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:02,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:37:02,265.265 INFO    ] No update needed
[2026-08-25 23:37:02,269.269 INFO    ] Checking for camera pi updates...
[2026-08-25 23:37:02,315.315 INFO    ] 200
[2026-08-25 23:37:02,319.319 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:02,368.368 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:37:02,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:37:02,421.421 INFO    ] No camera update needed
[2026-08-25 23:37:02,424.424 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:37:02,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:37:02,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:37:02,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:37:04,483.483 INFO    ] ================================================
[2026-08-25 23:37:04,503.503 INFO    ] Launching Daemon at Tue Aug 25 23:37:04 IST 2026
[2026-08-25 23:37:04,513.513 INFO    ] ================================================
[2026-08-25 23:37:05,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:37:05
[2026-08-25 23:37:05,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:37:05,948.948 INFO    ] Initializing speech engine...
[2026-08-25 23:37:05,957.957 INFO    ] 2026-08-25 23:37:05
[2026-08-25 23:37:06,201.201 INFO    ] 2026-08-25 23:37:06
[2026-08-25 23:37:06,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:37:06,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:37:06,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:37:06,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:37:06,592.592 INFO    ] time= 25/08/2026 23:37:06
[2026-08-25 23:37:06,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:37:06,639.639 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:37:06,783.783 INFO    ] No existing commands found in stream
[2026-08-25 23:37:11,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:37:11,802.802 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-08-25 23:37:13,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:37:13,606.606 INFO    ] Checking for system updates...
[2026-08-25 23:37:13,644.644 INFO    ] 200
[2026-08-25 23:37:13,646.646 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:13,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:37:13,705.705 INFO    ] No update needed
[2026-08-25 23:37:13,708.708 INFO    ] Checking for camera pi updates...
[2026-08-25 23:37:13,741.741 INFO    ] 200
[2026-08-25 23:37:13,743.743 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:13,783.783 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:37:13,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:37:13,833.833 INFO    ] No camera update needed
[2026-08-25 23:37:13,836.836 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:37:13,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:37:13,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:37:13,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:37:15,888.888 INFO    ] ================================================
[2026-08-25 23:37:15,903.903 INFO    ] Launching Daemon at Tue Aug 25 23:37:15 IST 2026
[2026-08-25 23:37:15,914.914 INFO    ] ================================================
[2026-08-25 23:37:16,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:37:16
[2026-08-25 23:37:17,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:37:17,462.462 INFO    ] Initializing speech engine...
[2026-08-25 23:37:17,475.475 INFO    ] 2026-08-25 23:37:17
[2026-08-25 23:37:17,748.748 INFO    ] 2026-08-25 23:37:17
[2026-08-25 23:37:17,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:37:18,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:37:18,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:37:18,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:37:18,196.196 INFO    ] time= 25/08/2026 23:37:18
[2026-08-25 23:37:18,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:37:18,289.289 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:37:18,428.428 INFO    ] No existing commands found in stream
[2026-08-25 23:37:23,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:37:23,450.450 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-08-25 23:37:24,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:37:24,635.635 INFO    ] Checking for system updates...
[2026-08-25 23:37:24,671.671 INFO    ] 200
[2026-08-25 23:37:24,674.674 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:24,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:37:24,730.730 INFO    ] No update needed
[2026-08-25 23:37:24,732.732 INFO    ] Checking for camera pi updates...
[2026-08-25 23:37:24,766.766 INFO    ] 200
[2026-08-25 23:37:24,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:24,809.809 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:37:24,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:37:24,865.865 INFO    ] No camera update needed
[2026-08-25 23:37:24,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:37:24,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:37:24,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:37:24,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:37:26,922.922 INFO    ] ================================================
[2026-08-25 23:37:26,938.938 INFO    ] Launching Daemon at Tue Aug 25 23:37:26 IST 2026
[2026-08-25 23:37:26,948.948 INFO    ] ================================================
[2026-08-25 23:37:27,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:37:27
[2026-08-25 23:37:28,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:37:28,373.373 INFO    ] Initializing speech engine...
[2026-08-25 23:37:28,383.383 INFO    ] 2026-08-25 23:37:28
[2026-08-25 23:37:28,635.635 INFO    ] 2026-08-25 23:37:28
[2026-08-25 23:37:28,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:37:28,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:37:28,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:37:29,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:37:29,124.124 INFO    ] time= 25/08/2026 23:37:29
[2026-08-25 23:37:29,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:37:29,193.193 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:37:29,329.329 INFO    ] No existing commands found in stream
[2026-08-25 23:37:34,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:37:34,352.352 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-08-25 23:37:38,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:37:38,267.267 INFO    ] Checking for system updates...
[2026-08-25 23:37:38,302.302 INFO    ] 200
[2026-08-25 23:37:38,305.305 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:38,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:37:38,361.361 INFO    ] No update needed
[2026-08-25 23:37:38,363.363 INFO    ] Checking for camera pi updates...
[2026-08-25 23:37:38,396.396 INFO    ] 200
[2026-08-25 23:37:38,399.399 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:38,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:37:38,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:37:38,485.485 INFO    ] No camera update needed
[2026-08-25 23:37:38,488.488 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:37:38,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:37:38,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:37:38,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:37:40,541.541 INFO    ] ================================================
[2026-08-25 23:37:40,556.556 INFO    ] Launching Daemon at Tue Aug 25 23:37:40 IST 2026
[2026-08-25 23:37:40,567.567 INFO    ] ================================================
[2026-08-25 23:37:41,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:37:41
[2026-08-25 23:37:41,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:37:42,016.016 INFO    ] Initializing speech engine...
[2026-08-25 23:37:42,021.021 INFO    ] 2026-08-25 23:37:42
[2026-08-25 23:37:42,292.292 INFO    ] 2026-08-25 23:37:42
[2026-08-25 23:37:42,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:37:42,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:37:42,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:37:42,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:37:42,781.781 INFO    ] time= 25/08/2026 23:37:42
[2026-08-25 23:37:42,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:37:42,883.883 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:37:43,009.009 INFO    ] No existing commands found in stream
[2026-08-25 23:37:48,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:37:48,046.046 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-08-25 23:37:50,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:37:50,203.203 INFO    ] Checking for system updates...
[2026-08-25 23:37:50,242.242 INFO    ] 200
[2026-08-25 23:37:50,244.244 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:50,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:37:50,300.300 INFO    ] No update needed
[2026-08-25 23:37:50,302.302 INFO    ] Checking for camera pi updates...
[2026-08-25 23:37:50,335.335 INFO    ] 200
[2026-08-25 23:37:50,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:37:50,382.382 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:37:50,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:37:50,436.436 INFO    ] No camera update needed
[2026-08-25 23:37:50,438.438 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:37:50,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:37:50,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:37:50,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:37:52,492.492 INFO    ] ================================================
[2026-08-25 23:37:52,508.508 INFO    ] Launching Daemon at Tue Aug 25 23:37:52 IST 2026
[2026-08-25 23:37:52,518.518 INFO    ] ================================================
[2026-08-25 23:37:53,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:37:53
[2026-08-25 23:37:53,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:37:53,948.948 INFO    ] Initializing speech engine...
[2026-08-25 23:37:53,954.954 INFO    ] 2026-08-25 23:37:53
[2026-08-25 23:37:54,198.198 INFO    ] 2026-08-25 23:37:54
[2026-08-25 23:37:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:37:54,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:37:54,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:37:54,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:37:54,565.565 INFO    ] time= 25/08/2026 23:37:54
[2026-08-25 23:37:54,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:37:54,633.633 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:37:54,755.755 INFO    ] No existing commands found in stream
[2026-08-25 23:37:59,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:37:59,778.778 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-08-25 23:38:02,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:38:02,477.477 INFO    ] Checking for system updates...
[2026-08-25 23:38:02,526.526 INFO    ] 200
[2026-08-25 23:38:02,529.529 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:02,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:02,591.591 INFO    ] No update needed
[2026-08-25 23:38:02,595.595 INFO    ] Checking for camera pi updates...
[2026-08-25 23:38:02,631.631 INFO    ] 200
[2026-08-25 23:38:02,634.634 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:02,680.680 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:38:02,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:02,735.735 INFO    ] No camera update needed
[2026-08-25 23:38:02,738.738 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:38:02,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:38:02,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:38:02,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:38:04,799.799 INFO    ] ================================================
[2026-08-25 23:38:04,814.814 INFO    ] Launching Daemon at Tue Aug 25 23:38:04 IST 2026
[2026-08-25 23:38:04,826.826 INFO    ] ================================================
[2026-08-25 23:38:05,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:38:05
[2026-08-25 23:38:05,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:38:06,244.244 INFO    ] Initializing speech engine...
[2026-08-25 23:38:06,253.253 INFO    ] 2026-08-25 23:38:06
[2026-08-25 23:38:06,551.551 INFO    ] 2026-08-25 23:38:06
[2026-08-25 23:38:06,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:38:06,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:38:06,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:38:06,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:38:07,001.001 INFO    ] time= 25/08/2026 23:38:06
[2026-08-25 23:38:07,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:38:07,098.098 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:38:07,233.233 INFO    ] No existing commands found in stream
[2026-08-25 23:38:12,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:38:12,256.256 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 23:38:16,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:38:16,539.539 INFO    ] Checking for system updates...
[2026-08-25 23:38:16,576.576 INFO    ] 200
[2026-08-25 23:38:16,579.579 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:16,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:16,640.640 INFO    ] No update needed
[2026-08-25 23:38:16,642.642 INFO    ] Checking for camera pi updates...
[2026-08-25 23:38:16,680.680 INFO    ] 200
[2026-08-25 23:38:16,683.683 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:16,724.724 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:38:16,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:16,776.776 INFO    ] No camera update needed
[2026-08-25 23:38:16,779.779 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:38:16,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:38:16,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:38:16,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:38:18,834.834 INFO    ] ================================================
[2026-08-25 23:38:18,850.850 INFO    ] Launching Daemon at Tue Aug 25 23:38:18 IST 2026
[2026-08-25 23:38:18,861.861 INFO    ] ================================================
[2026-08-25 23:38:19,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:38:19
[2026-08-25 23:38:20,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:38:20,276.276 INFO    ] Initializing speech engine...
[2026-08-25 23:38:20,285.285 INFO    ] 2026-08-25 23:38:20
[2026-08-25 23:38:20,530.530 INFO    ] 2026-08-25 23:38:20
[2026-08-25 23:38:20,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:38:20,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:38:20,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:38:20,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:38:21,015.015 INFO    ] time= 25/08/2026 23:38:20
[2026-08-25 23:38:21,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:38:21,093.093 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:38:21,234.234 INFO    ] No existing commands found in stream
[2026-08-25 23:38:26,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:38:26,252.252 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-08-25 23:38:30,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:38:30,416.416 INFO    ] Checking for system updates...
[2026-08-25 23:38:30,452.452 INFO    ] 200
[2026-08-25 23:38:30,455.455 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:30,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:30,517.517 INFO    ] No update needed
[2026-08-25 23:38:30,520.520 INFO    ] Checking for camera pi updates...
[2026-08-25 23:38:30,554.554 INFO    ] 200
[2026-08-25 23:38:30,557.557 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:30,610.610 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:38:30,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:30,660.660 INFO    ] No camera update needed
[2026-08-25 23:38:30,663.663 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:38:30,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:38:30,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:38:30,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:38:32,723.723 INFO    ] ================================================
[2026-08-25 23:38:32,741.741 INFO    ] Launching Daemon at Tue Aug 25 23:38:32 IST 2026
[2026-08-25 23:38:32,753.753 INFO    ] ================================================
[2026-08-25 23:38:33,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:38:33
[2026-08-25 23:38:33,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:38:34,169.169 INFO    ] Initializing speech engine...
[2026-08-25 23:38:34,178.178 INFO    ] 2026-08-25 23:38:34
[2026-08-25 23:38:34,424.424 INFO    ] 2026-08-25 23:38:34
[2026-08-25 23:38:34,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:38:34,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:38:34,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:38:34,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:38:34,912.912 INFO    ] time= 25/08/2026 23:38:34
[2026-08-25 23:38:34,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:38:34,985.985 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:38:35,118.118 INFO    ] No existing commands found in stream
[2026-08-25 23:38:40,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:38:40,143.143 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-08-25 23:38:43,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:38:43,507.507 INFO    ] Checking for system updates...
[2026-08-25 23:38:43,542.542 INFO    ] 200
[2026-08-25 23:38:43,544.544 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:43,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:43,598.598 INFO    ] No update needed
[2026-08-25 23:38:43,601.601 INFO    ] Checking for camera pi updates...
[2026-08-25 23:38:43,633.633 INFO    ] 200
[2026-08-25 23:38:43,636.636 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:43,676.676 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:38:43,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:43,826.826 INFO    ] No camera update needed
[2026-08-25 23:38:43,828.828 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:38:43,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:38:43,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:38:43,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:38:45,880.880 INFO    ] ================================================
[2026-08-25 23:38:45,896.896 INFO    ] Launching Daemon at Tue Aug 25 23:38:45 IST 2026
[2026-08-25 23:38:45,907.907 INFO    ] ================================================
[2026-08-25 23:38:46,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:38:46
[2026-08-25 23:38:47,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:38:47,514.514 INFO    ] Initializing speech engine...
[2026-08-25 23:38:47,527.527 INFO    ] 2026-08-25 23:38:47
[2026-08-25 23:38:47,791.791 INFO    ] 2026-08-25 23:38:47
[2026-08-25 23:38:47,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:38:48,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:38:48,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:38:48,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:38:48,261.261 INFO    ] time= 25/08/2026 23:38:48
[2026-08-25 23:38:48,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:38:48,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:38:48,475.475 INFO    ] No existing commands found in stream
[2026-08-25 23:38:53,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:38:53,493.493 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-08-25 23:38:56,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:38:56,148.148 INFO    ] Checking for system updates...
[2026-08-25 23:38:56,185.185 INFO    ] 200
[2026-08-25 23:38:56,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:56,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:56,243.243 INFO    ] No update needed
[2026-08-25 23:38:56,246.246 INFO    ] Checking for camera pi updates...
[2026-08-25 23:38:56,285.285 INFO    ] 200
[2026-08-25 23:38:56,288.288 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:38:56,332.332 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:38:56,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:38:56,383.383 INFO    ] No camera update needed
[2026-08-25 23:38:56,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:38:56,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:38:56,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:38:56,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:38:58,437.437 INFO    ] ================================================
[2026-08-25 23:38:58,453.453 INFO    ] Launching Daemon at Tue Aug 25 23:38:58 IST 2026
[2026-08-25 23:38:58,464.464 INFO    ] ================================================
[2026-08-25 23:38:59,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:38:59
[2026-08-25 23:38:59,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:38:59,891.891 INFO    ] Initializing speech engine...
[2026-08-25 23:38:59,901.901 INFO    ] 2026-08-25 23:38:59
[2026-08-25 23:39:00,148.148 INFO    ] 2026-08-25 23:39:00
[2026-08-25 23:39:00,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:39:00,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:39:00,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:39:00,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:39:00,518.518 INFO    ] time= 25/08/2026 23:39:00
[2026-08-25 23:39:00,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:39:00,570.570 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:39:00,715.715 INFO    ] No existing commands found in stream
[2026-08-25 23:39:05,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:39:05,728.728 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-08-25 23:39:08,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:39:08,735.735 INFO    ] Checking for system updates...
[2026-08-25 23:39:08,771.771 INFO    ] 200
[2026-08-25 23:39:08,773.773 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:08,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:39:08,829.829 INFO    ] No update needed
[2026-08-25 23:39:08,831.831 INFO    ] Checking for camera pi updates...
[2026-08-25 23:39:08,868.868 INFO    ] 200
[2026-08-25 23:39:08,870.870 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:08,911.911 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:39:08,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:39:08,962.962 INFO    ] No camera update needed
[2026-08-25 23:39:08,965.965 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:39:08,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:39:08,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:39:08,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:39:11,018.018 INFO    ] ================================================
[2026-08-25 23:39:11,034.034 INFO    ] Launching Daemon at Tue Aug 25 23:39:11 IST 2026
[2026-08-25 23:39:11,045.045 INFO    ] ================================================
[2026-08-25 23:39:11,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:39:11
[2026-08-25 23:39:12,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:39:12,669.669 INFO    ] Initializing speech engine...
[2026-08-25 23:39:12,680.680 INFO    ] 2026-08-25 23:39:12
[2026-08-25 23:39:12,959.959 INFO    ] 2026-08-25 23:39:12
[2026-08-25 23:39:13,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:39:13,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:39:13,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:39:13,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:39:13,440.440 INFO    ] time= 25/08/2026 23:39:13
[2026-08-25 23:39:13,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:39:13,524.524 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:39:13,601.601 INFO    ] No existing commands found in stream
[2026-08-25 23:39:18,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:39:18,642.642 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 23:39:19,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:39:19,088.088 INFO    ] Checking for system updates...
[2026-08-25 23:39:19,123.123 INFO    ] 200
[2026-08-25 23:39:19,126.126 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:19,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:39:19,181.181 INFO    ] No update needed
[2026-08-25 23:39:19,183.183 INFO    ] Checking for camera pi updates...
[2026-08-25 23:39:19,220.220 INFO    ] 200
[2026-08-25 23:39:19,223.223 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:19,263.263 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:39:19,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:39:19,309.309 INFO    ] No camera update needed
[2026-08-25 23:39:19,312.312 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:39:19,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:39:19,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:39:19,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:39:21,365.365 INFO    ] ================================================
[2026-08-25 23:39:21,381.381 INFO    ] Launching Daemon at Tue Aug 25 23:39:21 IST 2026
[2026-08-25 23:39:21,392.392 INFO    ] ================================================
[2026-08-25 23:39:22,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:39:22
[2026-08-25 23:39:22,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:39:23,026.026 INFO    ] Initializing speech engine...
[2026-08-25 23:39:23,040.040 INFO    ] 2026-08-25 23:39:23
[2026-08-25 23:39:23,353.353 INFO    ] 2026-08-25 23:39:23
[2026-08-25 23:39:23,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:39:23,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:39:23,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:39:23,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:39:23,859.859 INFO    ] time= 25/08/2026 23:39:23
[2026-08-25 23:39:23,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:39:23,886.886 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:39:24,011.011 INFO    ] No existing commands found in stream
[2026-08-25 23:39:29,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:39:29,030.030 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-08-25 23:39:30,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:39:30,529.529 INFO    ] Checking for system updates...
[2026-08-25 23:39:30,564.564 INFO    ] 200
[2026-08-25 23:39:30,567.567 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:30,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:39:30,628.628 INFO    ] No update needed
[2026-08-25 23:39:30,630.630 INFO    ] Checking for camera pi updates...
[2026-08-25 23:39:30,664.664 INFO    ] 200
[2026-08-25 23:39:30,666.666 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:30,707.707 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:39:30,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:39:30,760.760 INFO    ] No camera update needed
[2026-08-25 23:39:30,762.762 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:39:30,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:39:30,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:39:30,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:39:32,816.816 INFO    ] ================================================
[2026-08-25 23:39:32,831.831 INFO    ] Launching Daemon at Tue Aug 25 23:39:32 IST 2026
[2026-08-25 23:39:32,842.842 INFO    ] ================================================
[2026-08-25 23:39:33,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:39:33
[2026-08-25 23:39:33,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:39:34,261.261 INFO    ] Initializing speech engine...
[2026-08-25 23:39:34,269.269 INFO    ] 2026-08-25 23:39:34
[2026-08-25 23:39:34,521.521 INFO    ] 2026-08-25 23:39:34
[2026-08-25 23:39:34,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:39:34,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:39:34,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:39:34,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:39:34,899.899 INFO    ] time= 25/08/2026 23:39:34
[2026-08-25 23:39:34,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:39:34,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:39:35,085.085 INFO    ] No existing commands found in stream
[2026-08-25 23:39:40,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:39:40,111.111 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-08-25 23:39:44,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:39:44,501.501 INFO    ] Checking for system updates...
[2026-08-25 23:39:44,535.535 INFO    ] 200
[2026-08-25 23:39:44,538.538 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:44,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:39:44,599.599 INFO    ] No update needed
[2026-08-25 23:39:44,601.601 INFO    ] Checking for camera pi updates...
[2026-08-25 23:39:44,635.635 INFO    ] 200
[2026-08-25 23:39:44,637.637 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:44,682.682 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:39:44,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:39:44,739.739 INFO    ] No camera update needed
[2026-08-25 23:39:44,742.742 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:39:44,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:39:44,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:39:44,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:39:46,796.796 INFO    ] ================================================
[2026-08-25 23:39:46,812.812 INFO    ] Launching Daemon at Tue Aug 25 23:39:46 IST 2026
[2026-08-25 23:39:46,824.824 INFO    ] ================================================
[2026-08-25 23:39:47,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:39:47
[2026-08-25 23:39:48,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:39:48,277.277 INFO    ] Initializing speech engine...
[2026-08-25 23:39:48,283.283 INFO    ] 2026-08-25 23:39:48
[2026-08-25 23:39:48,545.545 INFO    ] 2026-08-25 23:39:48
[2026-08-25 23:39:48,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:39:48,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:39:48,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:39:48,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:39:49,013.013 INFO    ] time= 25/08/2026 23:39:48
[2026-08-25 23:39:49,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:39:49,099.099 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:39:49,237.237 INFO    ] No existing commands found in stream
[2026-08-25 23:39:54,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:39:54,258.258 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-08-25 23:39:55,245.245 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:39:55,248.248 INFO    ] Checking for system updates...
[2026-08-25 23:39:55,283.283 INFO    ] 200
[2026-08-25 23:39:55,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:55,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:39:55,354.354 INFO    ] No update needed
[2026-08-25 23:39:55,357.357 INFO    ] Checking for camera pi updates...
[2026-08-25 23:39:55,390.390 INFO    ] 200
[2026-08-25 23:39:55,392.392 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:39:55,437.437 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:39:55,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:39:55,490.490 INFO    ] No camera update needed
[2026-08-25 23:39:55,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:39:55,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:39:55,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:39:55,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:39:57,546.546 INFO    ] ================================================
[2026-08-25 23:39:57,562.562 INFO    ] Launching Daemon at Tue Aug 25 23:39:57 IST 2026
[2026-08-25 23:39:57,573.573 INFO    ] ================================================
[2026-08-25 23:39:58,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:39:58
[2026-08-25 23:39:58,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:39:58,994.994 INFO    ] Initializing speech engine...
[2026-08-25 23:39:59,004.004 INFO    ] 2026-08-25 23:39:58
[2026-08-25 23:39:59,248.248 INFO    ] 2026-08-25 23:39:59
[2026-08-25 23:39:59,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:39:59,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:39:59,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:39:59,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:39:59,722.722 INFO    ] time= 25/08/2026 23:39:59
[2026-08-25 23:39:59,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:39:59,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:39:59,936.936 INFO    ] No existing commands found in stream
[2026-08-25 23:40:04,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:40:04,963.963 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 23:40:08,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:40:08,309.309 INFO    ] Checking for system updates...
[2026-08-25 23:40:08,348.348 INFO    ] 200
[2026-08-25 23:40:08,351.351 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:08,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:40:08,405.405 INFO    ] No update needed
[2026-08-25 23:40:08,407.407 INFO    ] Checking for camera pi updates...
[2026-08-25 23:40:08,445.445 INFO    ] 200
[2026-08-25 23:40:08,448.448 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:08,494.494 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:40:08,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:40:08,540.540 INFO    ] No camera update needed
[2026-08-25 23:40:08,543.543 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:40:08,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:40:08,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:40:08,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:40:10,598.598 INFO    ] ================================================
[2026-08-25 23:40:10,613.613 INFO    ] Launching Daemon at Tue Aug 25 23:40:10 IST 2026
[2026-08-25 23:40:10,624.624 INFO    ] ================================================
[2026-08-25 23:40:11,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:40:11
[2026-08-25 23:40:11,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:40:12,257.257 INFO    ] Initializing speech engine...
[2026-08-25 23:40:12,272.272 INFO    ] 2026-08-25 23:40:12
[2026-08-25 23:40:12,587.587 INFO    ] 2026-08-25 23:40:12
[2026-08-25 23:40:12,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:40:12,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:40:12,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:40:13,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:40:13,090.090 INFO    ] time= 25/08/2026 23:40:13
[2026-08-25 23:40:13,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:40:13,116.116 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:40:13,248.248 INFO    ] No existing commands found in stream
[2026-08-25 23:40:18,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:40:18,277.277 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-08-25 23:40:22,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:40:22,507.507 INFO    ] Checking for system updates...
[2026-08-25 23:40:22,548.548 INFO    ] 200
[2026-08-25 23:40:22,550.550 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:22,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:40:22,606.606 INFO    ] No update needed
[2026-08-25 23:40:22,608.608 INFO    ] Checking for camera pi updates...
[2026-08-25 23:40:22,641.641 INFO    ] 200
[2026-08-25 23:40:22,644.644 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:22,684.684 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:40:22,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:40:22,732.732 INFO    ] No camera update needed
[2026-08-25 23:40:22,734.734 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:40:22,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:40:22,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:40:22,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:40:24,786.786 INFO    ] ================================================
[2026-08-25 23:40:24,802.802 INFO    ] Launching Daemon at Tue Aug 25 23:40:24 IST 2026
[2026-08-25 23:40:24,813.813 INFO    ] ================================================
[2026-08-25 23:40:25,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:40:25
[2026-08-25 23:40:26,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:40:26,334.334 INFO    ] Initializing speech engine...
[2026-08-25 23:40:26,342.342 INFO    ] 2026-08-25 23:40:26
[2026-08-25 23:40:26,598.598 INFO    ] 2026-08-25 23:40:26
[2026-08-25 23:40:26,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:40:26,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:40:26,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:40:27,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:40:27,035.035 INFO    ] time= 25/08/2026 23:40:27
[2026-08-25 23:40:27,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:40:27,138.138 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:40:27,231.231 INFO    ] No existing commands found in stream
[2026-08-25 23:40:32,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:40:32,270.270 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-08-25 23:40:33,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:40:33,117.117 INFO    ] Checking for system updates...
[2026-08-25 23:40:33,157.157 INFO    ] 200
[2026-08-25 23:40:33,159.159 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:33,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:40:33,213.213 INFO    ] No update needed
[2026-08-25 23:40:33,215.215 INFO    ] Checking for camera pi updates...
[2026-08-25 23:40:33,249.249 INFO    ] 200
[2026-08-25 23:40:33,252.252 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:33,293.293 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:40:33,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:40:33,350.350 INFO    ] No camera update needed
[2026-08-25 23:40:33,353.353 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:40:33,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:40:33,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:40:33,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:40:35,408.408 INFO    ] ================================================
[2026-08-25 23:40:35,423.423 INFO    ] Launching Daemon at Tue Aug 25 23:40:35 IST 2026
[2026-08-25 23:40:35,434.434 INFO    ] ================================================
[2026-08-25 23:40:36,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:40:36
[2026-08-25 23:40:36,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:40:36,910.910 INFO    ] Initializing speech engine...
[2026-08-25 23:40:36,918.918 INFO    ] 2026-08-25 23:40:36
[2026-08-25 23:40:37,172.172 INFO    ] 2026-08-25 23:40:37
[2026-08-25 23:40:37,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:40:37,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:40:37,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:40:37,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:40:37,629.629 INFO    ] time= 25/08/2026 23:40:37
[2026-08-25 23:40:37,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:40:37,720.720 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:40:37,838.838 INFO    ] No existing commands found in stream
[2026-08-25 23:40:42,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:40:42,871.871 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-08-25 23:40:48,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:40:48,699.699 INFO    ] Checking for system updates...
[2026-08-25 23:40:48,734.734 INFO    ] 200
[2026-08-25 23:40:48,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:48,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:40:48,797.797 INFO    ] No update needed
[2026-08-25 23:40:48,800.800 INFO    ] Checking for camera pi updates...
[2026-08-25 23:40:48,833.833 INFO    ] 200
[2026-08-25 23:40:48,835.835 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:40:48,879.879 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:40:49,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:40:49,027.027 INFO    ] No camera update needed
[2026-08-25 23:40:49,029.029 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:40:49,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:40:49,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:40:49,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:40:51,083.083 INFO    ] ================================================
[2026-08-25 23:40:51,098.098 INFO    ] Launching Daemon at Tue Aug 25 23:40:51 IST 2026
[2026-08-25 23:40:51,109.109 INFO    ] ================================================
[2026-08-25 23:40:51,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:40:51
[2026-08-25 23:40:52,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:40:52,520.520 INFO    ] Initializing speech engine...
[2026-08-25 23:40:52,534.534 INFO    ] 2026-08-25 23:40:52
[2026-08-25 23:40:52,816.816 INFO    ] 2026-08-25 23:40:52
[2026-08-25 23:40:52,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:40:53,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:40:53,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:40:53,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:40:53,228.228 INFO    ] time= 25/08/2026 23:40:53
[2026-08-25 23:40:53,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:40:53,238.238 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:40:53,310.310 INFO    ] No existing commands found in stream
[2026-08-25 23:40:58,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:40:58,326.326 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-08-25 23:41:02,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:41:02,788.788 INFO    ] Checking for system updates...
[2026-08-25 23:41:02,825.825 INFO    ] 200
[2026-08-25 23:41:02,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:02,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:41:02,899.899 INFO    ] No update needed
[2026-08-25 23:41:02,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 23:41:02,938.938 INFO    ] 200
[2026-08-25 23:41:02,940.940 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:02,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:41:03,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:41:03,051.051 INFO    ] No camera update needed
[2026-08-25 23:41:03,053.053 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:41:03,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:41:03,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:41:03,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:41:05,105.105 INFO    ] ================================================
[2026-08-25 23:41:05,120.120 INFO    ] Launching Daemon at Tue Aug 25 23:41:05 IST 2026
[2026-08-25 23:41:05,131.131 INFO    ] ================================================
[2026-08-25 23:41:05,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:41:05
[2026-08-25 23:41:06,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:41:06,590.590 INFO    ] Initializing speech engine...
[2026-08-25 23:41:06,600.600 INFO    ] 2026-08-25 23:41:06
[2026-08-25 23:41:06,844.844 INFO    ] 2026-08-25 23:41:06
[2026-08-25 23:41:06,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:41:07,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:41:07,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:41:07,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:41:07,313.313 INFO    ] time= 25/08/2026 23:41:07
[2026-08-25 23:41:07,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:41:07,402.402 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:41:07,541.541 INFO    ] No existing commands found in stream
[2026-08-25 23:41:12,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:41:12,563.563 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 23:41:13,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:41:13,846.846 INFO    ] Checking for system updates...
[2026-08-25 23:41:13,881.881 INFO    ] 200
[2026-08-25 23:41:13,883.883 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:13,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:41:13,944.944 INFO    ] No update needed
[2026-08-25 23:41:13,946.946 INFO    ] Checking for camera pi updates...
[2026-08-25 23:41:13,979.979 INFO    ] 200
[2026-08-25 23:41:13,982.982 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:14,026.026 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:41:14,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:41:14,072.072 INFO    ] No camera update needed
[2026-08-25 23:41:14,074.074 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:41:14,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:41:14,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:41:14,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:41:16,128.128 INFO    ] ================================================
[2026-08-25 23:41:16,143.143 INFO    ] Launching Daemon at Tue Aug 25 23:41:16 IST 2026
[2026-08-25 23:41:16,155.155 INFO    ] ================================================
[2026-08-25 23:41:16,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:41:16
[2026-08-25 23:41:17,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:41:17,581.581 INFO    ] Initializing speech engine...
[2026-08-25 23:41:17,588.588 INFO    ] 2026-08-25 23:41:17
[2026-08-25 23:41:17,847.847 INFO    ] 2026-08-25 23:41:17
[2026-08-25 23:41:17,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:41:18,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:41:18,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:41:18,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:41:18,335.335 INFO    ] time= 25/08/2026 23:41:18
[2026-08-25 23:41:18,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:41:18,398.398 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:41:18,533.533 INFO    ] No existing commands found in stream
[2026-08-25 23:41:23,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:41:23,556.556 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 23:41:27,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:41:27,798.798 INFO    ] Checking for system updates...
[2026-08-25 23:41:27,836.836 INFO    ] 200
[2026-08-25 23:41:27,838.838 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:27,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:41:27,899.899 INFO    ] No update needed
[2026-08-25 23:41:27,901.901 INFO    ] Checking for camera pi updates...
[2026-08-25 23:41:27,934.934 INFO    ] 200
[2026-08-25 23:41:27,937.937 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:27,981.981 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:41:28,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:41:28,032.032 INFO    ] No camera update needed
[2026-08-25 23:41:28,035.035 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:41:28,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:41:28,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:41:28,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:41:30,088.088 INFO    ] ================================================
[2026-08-25 23:41:30,104.104 INFO    ] Launching Daemon at Tue Aug 25 23:41:30 IST 2026
[2026-08-25 23:41:30,114.114 INFO    ] ================================================
[2026-08-25 23:41:30,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:41:30
[2026-08-25 23:41:31,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:41:31,788.788 INFO    ] Initializing speech engine...
[2026-08-25 23:41:31,800.800 INFO    ] 2026-08-25 23:41:31
[2026-08-25 23:41:32,132.132 INFO    ] 2026-08-25 23:41:32
[2026-08-25 23:41:32,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:41:32,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:41:32,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:41:32,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:41:32,590.590 INFO    ] time= 25/08/2026 23:41:32
[2026-08-25 23:41:32,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:41:32,663.663 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:41:32,780.780 INFO    ] No existing commands found in stream
[2026-08-25 23:41:37,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:41:37,818.818 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-08-25 23:41:40,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:41:40,328.328 INFO    ] Checking for system updates...
[2026-08-25 23:41:40,363.363 INFO    ] 200
[2026-08-25 23:41:40,366.366 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:40,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:41:40,426.426 INFO    ] No update needed
[2026-08-25 23:41:40,429.429 INFO    ] Checking for camera pi updates...
[2026-08-25 23:41:40,462.462 INFO    ] 200
[2026-08-25 23:41:40,464.464 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:40,509.509 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:41:40,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:41:40,558.558 INFO    ] No camera update needed
[2026-08-25 23:41:40,560.560 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:41:40,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:41:40,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:41:40,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:41:42,614.614 INFO    ] ================================================
[2026-08-25 23:41:42,629.629 INFO    ] Launching Daemon at Tue Aug 25 23:41:42 IST 2026
[2026-08-25 23:41:42,641.641 INFO    ] ================================================
[2026-08-25 23:41:43,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:41:43
[2026-08-25 23:41:43,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:41:44,045.045 INFO    ] Initializing speech engine...
[2026-08-25 23:41:44,052.052 INFO    ] 2026-08-25 23:41:44
[2026-08-25 23:41:44,345.345 INFO    ] 2026-08-25 23:41:44
[2026-08-25 23:41:44,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:41:44,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:41:44,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:41:44,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:41:44,741.741 INFO    ] time= 25/08/2026 23:41:44
[2026-08-25 23:41:44,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:41:44,754.754 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:41:44,884.884 INFO    ] No existing commands found in stream
[2026-08-25 23:41:49,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:41:49,919.919 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-08-25 23:41:52,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:41:52,634.634 INFO    ] Checking for system updates...
[2026-08-25 23:41:52,670.670 INFO    ] 200
[2026-08-25 23:41:52,672.672 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:52,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:41:52,727.727 INFO    ] No update needed
[2026-08-25 23:41:52,730.730 INFO    ] Checking for camera pi updates...
[2026-08-25 23:41:52,767.767 INFO    ] 200
[2026-08-25 23:41:52,769.769 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:41:52,809.809 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:41:52,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:41:52,863.863 INFO    ] No camera update needed
[2026-08-25 23:41:52,865.865 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:41:52,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:41:52,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:41:52,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:41:54,916.916 INFO    ] ================================================
[2026-08-25 23:41:54,932.932 INFO    ] Launching Daemon at Tue Aug 25 23:41:54 IST 2026
[2026-08-25 23:41:54,943.943 INFO    ] ================================================
[2026-08-25 23:41:55,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:41:55
[2026-08-25 23:41:56,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:41:56,370.370 INFO    ] Initializing speech engine...
[2026-08-25 23:41:56,379.379 INFO    ] 2026-08-25 23:41:56
[2026-08-25 23:41:56,624.624 INFO    ] 2026-08-25 23:41:56
[2026-08-25 23:41:56,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:41:56,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:41:56,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:41:56,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:41:56,991.991 INFO    ] time= 25/08/2026 23:41:56
[2026-08-25 23:41:56,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:41:57,037.037 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:41:57,176.176 INFO    ] No existing commands found in stream
[2026-08-25 23:42:02,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:42:02,204.204 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-08-25 23:42:05,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:42:05,603.603 INFO    ] Checking for system updates...
[2026-08-25 23:42:05,647.647 INFO    ] 200
[2026-08-25 23:42:05,650.650 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:05,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:42:05,706.706 INFO    ] No update needed
[2026-08-25 23:42:05,709.709 INFO    ] Checking for camera pi updates...
[2026-08-25 23:42:05,748.748 INFO    ] 200
[2026-08-25 23:42:05,751.751 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:05,792.792 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:42:05,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:42:05,839.839 INFO    ] No camera update needed
[2026-08-25 23:42:05,841.841 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:42:05,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:42:05,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:42:05,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:42:07,896.896 INFO    ] ================================================
[2026-08-25 23:42:07,915.915 INFO    ] Launching Daemon at Tue Aug 25 23:42:07 IST 2026
[2026-08-25 23:42:07,927.927 INFO    ] ================================================
[2026-08-25 23:42:08,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:42:08
[2026-08-25 23:42:09,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:42:09,560.560 INFO    ] Initializing speech engine...
[2026-08-25 23:42:09,572.572 INFO    ] 2026-08-25 23:42:09
[2026-08-25 23:42:09,885.885 INFO    ] 2026-08-25 23:42:09
[2026-08-25 23:42:09,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:42:10,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:42:10,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:42:10,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:42:10,386.386 INFO    ] time= 25/08/2026 23:42:10
[2026-08-25 23:42:10,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:42:10,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:42:10,557.557 INFO    ] No existing commands found in stream
[2026-08-25 23:42:15,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:42:15,593.593 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 23:42:18,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:42:18,381.381 INFO    ] Checking for system updates...
[2026-08-25 23:42:18,418.418 INFO    ] 200
[2026-08-25 23:42:18,420.420 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:18,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:42:18,476.476 INFO    ] No update needed
[2026-08-25 23:42:18,479.479 INFO    ] Checking for camera pi updates...
[2026-08-25 23:42:18,513.513 INFO    ] 200
[2026-08-25 23:42:18,515.515 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:18,556.556 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:42:18,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:42:18,600.600 INFO    ] No camera update needed
[2026-08-25 23:42:18,602.602 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:42:18,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:42:18,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:42:18,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:42:20,656.656 INFO    ] ================================================
[2026-08-25 23:42:20,671.671 INFO    ] Launching Daemon at Tue Aug 25 23:42:20 IST 2026
[2026-08-25 23:42:20,683.683 INFO    ] ================================================
[2026-08-25 23:42:21,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:42:21
[2026-08-25 23:42:22,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:42:22,320.320 INFO    ] Initializing speech engine...
[2026-08-25 23:42:22,331.331 INFO    ] 2026-08-25 23:42:22
[2026-08-25 23:42:22,609.609 INFO    ] 2026-08-25 23:42:22
[2026-08-25 23:42:22,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:42:22,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:42:22,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:42:23,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:42:23,061.061 INFO    ] time= 25/08/2026 23:42:23
[2026-08-25 23:42:23,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:42:23,169.169 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:42:23,267.267 INFO    ] No existing commands found in stream
[2026-08-25 23:42:28,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:42:28,282.282 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-08-25 23:42:31,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:42:31,107.107 INFO    ] Checking for system updates...
[2026-08-25 23:42:31,143.143 INFO    ] 200
[2026-08-25 23:42:31,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:31,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:42:31,222.222 INFO    ] No update needed
[2026-08-25 23:42:31,224.224 INFO    ] Checking for camera pi updates...
[2026-08-25 23:42:31,258.258 INFO    ] 200
[2026-08-25 23:42:31,260.260 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:31,305.305 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:42:31,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:42:31,360.360 INFO    ] No camera update needed
[2026-08-25 23:42:31,362.362 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:42:31,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:42:31,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:42:31,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:42:33,418.418 INFO    ] ================================================
[2026-08-25 23:42:33,434.434 INFO    ] Launching Daemon at Tue Aug 25 23:42:33 IST 2026
[2026-08-25 23:42:33,445.445 INFO    ] ================================================
[2026-08-25 23:42:34,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:42:34
[2026-08-25 23:42:34,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:42:35,100.100 INFO    ] Initializing speech engine...
[2026-08-25 23:42:35,112.112 INFO    ] 2026-08-25 23:42:35
[2026-08-25 23:42:35,373.373 INFO    ] 2026-08-25 23:42:35
[2026-08-25 23:42:35,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:42:35,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:42:35,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:42:35,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:42:35,814.814 INFO    ] time= 25/08/2026 23:42:35
[2026-08-25 23:42:35,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:42:35,906.906 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:42:36,039.039 INFO    ] No existing commands found in stream
[2026-08-25 23:42:41,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:42:41,068.068 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-08-25 23:42:43,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:42:43,047.047 INFO    ] Checking for system updates...
[2026-08-25 23:42:43,082.082 INFO    ] 200
[2026-08-25 23:42:43,085.085 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:43,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:42:43,148.148 INFO    ] No update needed
[2026-08-25 23:42:43,151.151 INFO    ] Checking for camera pi updates...
[2026-08-25 23:42:43,188.188 INFO    ] 200
[2026-08-25 23:42:43,191.191 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:43,239.239 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:42:43,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:42:43,287.287 INFO    ] No camera update needed
[2026-08-25 23:42:43,289.289 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:42:43,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:42:43,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:42:43,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:42:45,342.342 INFO    ] ================================================
[2026-08-25 23:42:45,358.358 INFO    ] Launching Daemon at Tue Aug 25 23:42:45 IST 2026
[2026-08-25 23:42:45,369.369 INFO    ] ================================================
[2026-08-25 23:42:45,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:42:45
[2026-08-25 23:42:46,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:42:46,788.788 INFO    ] Initializing speech engine...
[2026-08-25 23:42:46,797.797 INFO    ] 2026-08-25 23:42:46
[2026-08-25 23:42:47,041.041 INFO    ] 2026-08-25 23:42:47
[2026-08-25 23:42:47,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:42:47,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:42:47,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:42:47,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:42:47,454.454 INFO    ] time= 25/08/2026 23:42:47
[2026-08-25 23:42:47,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:42:47,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:42:47,607.607 INFO    ] No existing commands found in stream
[2026-08-25 23:42:52,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:42:52,631.631 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-08-25 23:42:54,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:42:54,578.578 INFO    ] Checking for system updates...
[2026-08-25 23:42:54,618.618 INFO    ] 200
[2026-08-25 23:42:54,620.620 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:54,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:42:54,683.683 INFO    ] No update needed
[2026-08-25 23:42:54,685.685 INFO    ] Checking for camera pi updates...
[2026-08-25 23:42:54,719.719 INFO    ] 200
[2026-08-25 23:42:54,721.721 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:42:54,767.767 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:42:54,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:42:54,912.912 INFO    ] No camera update needed
[2026-08-25 23:42:54,915.915 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:42:54,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:42:54,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:42:54,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:42:56,969.969 INFO    ] ================================================
[2026-08-25 23:42:56,985.985 INFO    ] Launching Daemon at Tue Aug 25 23:42:56 IST 2026
[2026-08-25 23:42:57,996.996 INFO    ] ================================================
[2026-08-25 23:42:57,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:42:57
[2026-08-25 23:42:58,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:42:58,663.663 INFO    ] Initializing speech engine...
[2026-08-25 23:42:58,672.672 INFO    ] 2026-08-25 23:42:58
[2026-08-25 23:42:58,953.953 INFO    ] 2026-08-25 23:42:58
[2026-08-25 23:42:58,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:42:59,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:42:59,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:42:59,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:42:59,424.424 INFO    ] time= 25/08/2026 23:42:59
[2026-08-25 23:42:59,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:42:59,493.493 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:42:59,635.635 INFO    ] No existing commands found in stream
[2026-08-25 23:43:04,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:43:04,663.663 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-08-25 23:43:08,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:43:08,913.913 INFO    ] Checking for system updates...
[2026-08-25 23:43:08,955.955 INFO    ] 200
[2026-08-25 23:43:08,958.958 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:09,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:43:09,020.020 INFO    ] No update needed
[2026-08-25 23:43:09,023.023 INFO    ] Checking for camera pi updates...
[2026-08-25 23:43:09,062.062 INFO    ] 200
[2026-08-25 23:43:09,064.064 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:09,117.117 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:43:09,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:43:09,168.168 INFO    ] No camera update needed
[2026-08-25 23:43:09,171.171 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:43:09,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:43:09,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:43:09,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:43:11,227.227 INFO    ] ================================================
[2026-08-25 23:43:11,243.243 INFO    ] Launching Daemon at Tue Aug 25 23:43:11 IST 2026
[2026-08-25 23:43:11,254.254 INFO    ] ================================================
[2026-08-25 23:43:11,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:43:11
[2026-08-25 23:43:12,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:43:12,901.901 INFO    ] Initializing speech engine...
[2026-08-25 23:43:12,915.915 INFO    ] 2026-08-25 23:43:12
[2026-08-25 23:43:13,229.229 INFO    ] 2026-08-25 23:43:13
[2026-08-25 23:43:13,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:43:13,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:43:13,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:43:13,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:43:13,743.743 INFO    ] time= 25/08/2026 23:43:13
[2026-08-25 23:43:13,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:43:13,784.784 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:43:13,885.885 INFO    ] No existing commands found in stream
[2026-08-25 23:43:18,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:43:18,923.923 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 23:43:21,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:43:21,831.831 INFO    ] Checking for system updates...
[2026-08-25 23:43:21,873.873 INFO    ] 200
[2026-08-25 23:43:21,876.876 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:21,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:43:21,946.946 INFO    ] No update needed
[2026-08-25 23:43:21,949.949 INFO    ] Checking for camera pi updates...
[2026-08-25 23:43:21,988.988 INFO    ] 200
[2026-08-25 23:43:21,991.991 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:22,037.037 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:43:22,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:43:22,096.096 INFO    ] No camera update needed
[2026-08-25 23:43:22,099.099 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:43:22,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:43:22,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:43:22,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:43:24,155.155 INFO    ] ================================================
[2026-08-25 23:43:24,170.170 INFO    ] Launching Daemon at Tue Aug 25 23:43:24 IST 2026
[2026-08-25 23:43:24,182.182 INFO    ] ================================================
[2026-08-25 23:43:24,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:43:24
[2026-08-25 23:43:25,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:43:25,781.781 INFO    ] Initializing speech engine...
[2026-08-25 23:43:25,790.790 INFO    ] 2026-08-25 23:43:25
[2026-08-25 23:43:26,049.049 INFO    ] 2026-08-25 23:43:26
[2026-08-25 23:43:26,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:43:26,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:43:26,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:43:26,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:43:26,508.508 INFO    ] time= 25/08/2026 23:43:26
[2026-08-25 23:43:26,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:43:26,534.534 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:43:26,626.626 INFO    ] No existing commands found in stream
[2026-08-25 23:43:31,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:43:31,642.642 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 23:43:33,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:43:33,067.067 INFO    ] Checking for system updates...
[2026-08-25 23:43:33,107.107 INFO    ] 200
[2026-08-25 23:43:33,109.109 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:33,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:43:33,165.165 INFO    ] No update needed
[2026-08-25 23:43:33,167.167 INFO    ] Checking for camera pi updates...
[2026-08-25 23:43:33,208.208 INFO    ] 200
[2026-08-25 23:43:33,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:33,251.251 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:43:33,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:43:33,298.298 INFO    ] No camera update needed
[2026-08-25 23:43:33,300.300 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:43:33,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:43:33,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:43:33,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:43:35,354.354 INFO    ] ================================================
[2026-08-25 23:43:35,369.369 INFO    ] Launching Daemon at Tue Aug 25 23:43:35 IST 2026
[2026-08-25 23:43:35,381.381 INFO    ] ================================================
[2026-08-25 23:43:35,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:43:35
[2026-08-25 23:43:36,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:43:36,782.782 INFO    ] Initializing speech engine...
[2026-08-25 23:43:36,788.788 INFO    ] 2026-08-25 23:43:36
[2026-08-25 23:43:37,073.073 INFO    ] 2026-08-25 23:43:37
[2026-08-25 23:43:37,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:43:37,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:43:37,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:43:37,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:43:37,448.448 INFO    ] time= 25/08/2026 23:43:37
[2026-08-25 23:43:37,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:43:37,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:43:37,628.628 INFO    ] No existing commands found in stream
[2026-08-25 23:43:42,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:43:42,661.661 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-08-25 23:43:43,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:43:43,950.950 INFO    ] Checking for system updates...
[2026-08-25 23:43:43,991.991 INFO    ] 200
[2026-08-25 23:43:43,993.993 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:44,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:43:44,056.056 INFO    ] No update needed
[2026-08-25 23:43:44,059.059 INFO    ] Checking for camera pi updates...
[2026-08-25 23:43:44,092.092 INFO    ] 200
[2026-08-25 23:43:44,095.095 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:44,141.141 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:43:44,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:43:44,188.188 INFO    ] No camera update needed
[2026-08-25 23:43:44,190.190 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:43:44,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:43:44,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:43:44,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:43:46,246.246 INFO    ] ================================================
[2026-08-25 23:43:46,262.262 INFO    ] Launching Daemon at Tue Aug 25 23:43:46 IST 2026
[2026-08-25 23:43:46,274.274 INFO    ] ================================================
[2026-08-25 23:43:46,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:43:46
[2026-08-25 23:43:47,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:43:47,689.689 INFO    ] Initializing speech engine...
[2026-08-25 23:43:47,704.704 INFO    ] 2026-08-25 23:43:47
[2026-08-25 23:43:47,958.958 INFO    ] 2026-08-25 23:43:47
[2026-08-25 23:43:47,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:43:48,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:43:48,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:43:48,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:43:48,345.345 INFO    ] time= 25/08/2026 23:43:48
[2026-08-25 23:43:48,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:43:48,388.388 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:43:48,473.473 INFO    ] No existing commands found in stream
[2026-08-25 23:43:53,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:43:53,489.489 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 23:43:56,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:43:56,209.209 INFO    ] Checking for system updates...
[2026-08-25 23:43:56,244.244 INFO    ] 200
[2026-08-25 23:43:56,247.247 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:56,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:43:56,310.310 INFO    ] No update needed
[2026-08-25 23:43:56,312.312 INFO    ] Checking for camera pi updates...
[2026-08-25 23:43:56,350.350 INFO    ] 200
[2026-08-25 23:43:56,352.352 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:43:56,392.392 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:43:56,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:43:56,444.444 INFO    ] No camera update needed
[2026-08-25 23:43:56,446.446 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:43:56,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:43:56,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:43:56,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:43:58,499.499 INFO    ] ================================================
[2026-08-25 23:43:58,515.515 INFO    ] Launching Daemon at Tue Aug 25 23:43:58 IST 2026
[2026-08-25 23:43:58,526.526 INFO    ] ================================================
[2026-08-25 23:43:59,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:43:59
[2026-08-25 23:43:59,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:44:00,193.193 INFO    ] Initializing speech engine...
[2026-08-25 23:44:00,203.203 INFO    ] 2026-08-25 23:44:00
[2026-08-25 23:44:00,493.493 INFO    ] 2026-08-25 23:44:00
[2026-08-25 23:44:00,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:44:00,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:44:00,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:44:01,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:44:01,027.027 INFO    ] time= 25/08/2026 23:44:01
[2026-08-25 23:44:01,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:44:01,077.077 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:44:01,195.195 INFO    ] No existing commands found in stream
[2026-08-25 23:44:06,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:44:06,209.209 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-08-25 23:44:09,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:44:09,588.588 INFO    ] Checking for system updates...
[2026-08-25 23:44:09,628.628 INFO    ] 200
[2026-08-25 23:44:09,631.631 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:09,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:44:09,693.693 INFO    ] No update needed
[2026-08-25 23:44:09,696.696 INFO    ] Checking for camera pi updates...
[2026-08-25 23:44:09,730.730 INFO    ] 200
[2026-08-25 23:44:09,733.733 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:09,779.779 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:44:09,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:44:09,826.826 INFO    ] No camera update needed
[2026-08-25 23:44:09,829.829 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:44:09,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:44:09,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:44:09,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:44:11,883.883 INFO    ] ================================================
[2026-08-25 23:44:11,899.899 INFO    ] Launching Daemon at Tue Aug 25 23:44:11 IST 2026
[2026-08-25 23:44:11,911.911 INFO    ] ================================================
[2026-08-25 23:44:12,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:44:12
[2026-08-25 23:44:13,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:44:13,331.331 INFO    ] Initializing speech engine...
[2026-08-25 23:44:13,340.340 INFO    ] 2026-08-25 23:44:13
[2026-08-25 23:44:13,588.588 INFO    ] 2026-08-25 23:44:13
[2026-08-25 23:44:13,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:44:13,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:44:13,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:44:14,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:44:14,057.057 INFO    ] time= 25/08/2026 23:44:14
[2026-08-25 23:44:14,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:44:14,150.150 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:44:14,288.288 INFO    ] No existing commands found in stream
[2026-08-25 23:44:19,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:44:19,312.312 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 23:44:20,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:44:20,550.550 INFO    ] Checking for system updates...
[2026-08-25 23:44:20,586.586 INFO    ] 200
[2026-08-25 23:44:20,588.588 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:20,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:44:20,653.653 INFO    ] No update needed
[2026-08-25 23:44:20,656.656 INFO    ] Checking for camera pi updates...
[2026-08-25 23:44:20,689.689 INFO    ] 200
[2026-08-25 23:44:20,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:20,738.738 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:44:20,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:44:20,795.795 INFO    ] No camera update needed
[2026-08-25 23:44:20,797.797 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:44:20,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:44:20,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:44:20,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:44:22,851.851 INFO    ] ================================================
[2026-08-25 23:44:22,867.867 INFO    ] Launching Daemon at Tue Aug 25 23:44:22 IST 2026
[2026-08-25 23:44:22,878.878 INFO    ] ================================================
[2026-08-25 23:44:23,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:44:23
[2026-08-25 23:44:24,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:44:24,589.589 INFO    ] Initializing speech engine...
[2026-08-25 23:44:24,597.597 INFO    ] 2026-08-25 23:44:24
[2026-08-25 23:44:24,906.906 INFO    ] 2026-08-25 23:44:24
[2026-08-25 23:44:24,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:44:25,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:44:25,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:44:25,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:44:25,413.413 INFO    ] time= 25/08/2026 23:44:25
[2026-08-25 23:44:25,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:44:25,441.441 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:44:25,571.571 INFO    ] No existing commands found in stream
[2026-08-25 23:44:30,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:44:30,598.598 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 23:44:31,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:44:31,191.191 INFO    ] Checking for system updates...
[2026-08-25 23:44:31,233.233 INFO    ] 200
[2026-08-25 23:44:31,237.237 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:31,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:44:31,316.316 INFO    ] No update needed
[2026-08-25 23:44:31,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 23:44:31,367.367 INFO    ] 200
[2026-08-25 23:44:31,370.370 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:31,424.424 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:44:31,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:44:31,488.488 INFO    ] No camera update needed
[2026-08-25 23:44:31,492.492 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:44:31,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:44:31,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:44:31,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:44:33,551.551 INFO    ] ================================================
[2026-08-25 23:44:33,567.567 INFO    ] Launching Daemon at Tue Aug 25 23:44:33 IST 2026
[2026-08-25 23:44:33,578.578 INFO    ] ================================================
[2026-08-25 23:44:34,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:44:34
[2026-08-25 23:44:34,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:44:35,050.050 INFO    ] Initializing speech engine...
[2026-08-25 23:44:35,058.058 INFO    ] 2026-08-25 23:44:35
[2026-08-25 23:44:35,304.304 INFO    ] 2026-08-25 23:44:35
[2026-08-25 23:44:35,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:44:35,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:44:35,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:44:35,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:44:35,778.778 INFO    ] time= 25/08/2026 23:44:35
[2026-08-25 23:44:35,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:44:35,870.870 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:44:35,940.940 INFO    ] No existing commands found in stream
[2026-08-25 23:44:40,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:44:40,979.979 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-08-25 23:44:44,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:44:44,360.360 INFO    ] Checking for system updates...
[2026-08-25 23:44:44,400.400 INFO    ] 200
[2026-08-25 23:44:44,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:44,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:44:44,465.465 INFO    ] No update needed
[2026-08-25 23:44:44,467.467 INFO    ] Checking for camera pi updates...
[2026-08-25 23:44:44,505.505 INFO    ] 200
[2026-08-25 23:44:44,508.508 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:44,549.549 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:44:44,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:44:44,594.594 INFO    ] No camera update needed
[2026-08-25 23:44:44,596.596 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:44:44,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:44:44,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:44:44,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:44:46,652.652 INFO    ] ================================================
[2026-08-25 23:44:46,667.667 INFO    ] Launching Daemon at Tue Aug 25 23:44:46 IST 2026
[2026-08-25 23:44:46,679.679 INFO    ] ================================================
[2026-08-25 23:44:47,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:44:47
[2026-08-25 23:44:47,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:44:48,176.176 INFO    ] Initializing speech engine...
[2026-08-25 23:44:48,188.188 INFO    ] 2026-08-25 23:44:48
[2026-08-25 23:44:48,512.512 INFO    ] 2026-08-25 23:44:48
[2026-08-25 23:44:48,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:44:48,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:44:48,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:44:48,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:44:48,968.968 INFO    ] time= 25/08/2026 23:44:48
[2026-08-25 23:44:49,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:44:49,028.028 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:44:49,160.160 INFO    ] No existing commands found in stream
[2026-08-25 23:44:54,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:44:54,186.186 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-08-25 23:44:58,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:44:58,122.122 INFO    ] Checking for system updates...
[2026-08-25 23:44:58,160.160 INFO    ] 200
[2026-08-25 23:44:58,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:58,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:44:58,230.230 INFO    ] No update needed
[2026-08-25 23:44:58,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 23:44:58,272.272 INFO    ] 200
[2026-08-25 23:44:58,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:44:58,315.315 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:44:58,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:44:58,460.460 INFO    ] No camera update needed
[2026-08-25 23:44:58,462.462 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:44:58,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:44:58,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:44:58,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:45:00,515.515 INFO    ] ================================================
[2026-08-25 23:45:00,531.531 INFO    ] Launching Daemon at Tue Aug 25 23:45:00 IST 2026
[2026-08-25 23:45:00,542.542 INFO    ] ================================================
[2026-08-25 23:45:01,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:45:01
[2026-08-25 23:45:02,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:45:02,501.501 INFO    ] Initializing speech engine...
[2026-08-25 23:45:02,525.525 INFO    ] 2026-08-25 23:45:02
[2026-08-25 23:45:02,852.852 INFO    ] 2026-08-25 23:45:02
[2026-08-25 23:45:02,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:45:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:45:03,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:45:03,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:45:03,277.277 INFO    ] time= 25/08/2026 23:45:03
[2026-08-25 23:45:03,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:45:03,309.309 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:45:03,407.407 INFO    ] No existing commands found in stream
[2026-08-25 23:45:08,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:45:08,441.441 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-08-25 23:45:10,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:45:10,150.150 INFO    ] Checking for system updates...
[2026-08-25 23:45:10,186.186 INFO    ] 200
[2026-08-25 23:45:10,188.188 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:10,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:10,248.248 INFO    ] No update needed
[2026-08-25 23:45:10,250.250 INFO    ] Checking for camera pi updates...
[2026-08-25 23:45:10,287.287 INFO    ] 200
[2026-08-25 23:45:10,289.289 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:10,330.330 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:45:10,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:10,383.383 INFO    ] No camera update needed
[2026-08-25 23:45:10,386.386 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:45:10,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:45:10,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:45:10,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:45:12,440.440 INFO    ] ================================================
[2026-08-25 23:45:12,455.455 INFO    ] Launching Daemon at Tue Aug 25 23:45:12 IST 2026
[2026-08-25 23:45:12,466.466 INFO    ] ================================================
[2026-08-25 23:45:13,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:45:13
[2026-08-25 23:45:13,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:45:13,944.944 INFO    ] Initializing speech engine...
[2026-08-25 23:45:13,963.963 INFO    ] 2026-08-25 23:45:13
[2026-08-25 23:45:14,208.208 INFO    ] 2026-08-25 23:45:14
[2026-08-25 23:45:14,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:45:14,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:45:14,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:45:14,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:45:14,678.678 INFO    ] time= 25/08/2026 23:45:14
[2026-08-25 23:45:14,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:45:14,768.768 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:45:14,898.898 INFO    ] No existing commands found in stream
[2026-08-25 23:45:19,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:45:19,926.926 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 23:45:24,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:45:24,020.020 INFO    ] Checking for system updates...
[2026-08-25 23:45:24,056.056 INFO    ] 200
[2026-08-25 23:45:24,058.058 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:24,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:24,117.117 INFO    ] No update needed
[2026-08-25 23:45:24,120.120 INFO    ] Checking for camera pi updates...
[2026-08-25 23:45:24,153.153 INFO    ] 200
[2026-08-25 23:45:24,155.155 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:24,196.196 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:45:24,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:24,242.242 INFO    ] No camera update needed
[2026-08-25 23:45:24,245.245 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:45:24,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:45:24,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:45:24,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:45:26,299.299 INFO    ] ================================================
[2026-08-25 23:45:26,315.315 INFO    ] Launching Daemon at Tue Aug 25 23:45:26 IST 2026
[2026-08-25 23:45:26,326.326 INFO    ] ================================================
[2026-08-25 23:45:26,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:45:26
[2026-08-25 23:45:27,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:45:27,737.737 INFO    ] Initializing speech engine...
[2026-08-25 23:45:27,744.744 INFO    ] 2026-08-25 23:45:27
[2026-08-25 23:45:28,036.036 INFO    ] 2026-08-25 23:45:28
[2026-08-25 23:45:28,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:45:28,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:45:28,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:45:28,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:45:28,384.384 INFO    ] time= 25/08/2026 23:45:28
[2026-08-25 23:45:28,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:45:28,414.414 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:45:28,537.537 INFO    ] No existing commands found in stream
[2026-08-25 23:45:33,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:45:33,552.552 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-08-25 23:45:36,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:45:36,265.265 INFO    ] Checking for system updates...
[2026-08-25 23:45:36,301.301 INFO    ] 200
[2026-08-25 23:45:36,304.304 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:36,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:36,364.364 INFO    ] No update needed
[2026-08-25 23:45:36,367.367 INFO    ] Checking for camera pi updates...
[2026-08-25 23:45:36,400.400 INFO    ] 200
[2026-08-25 23:45:36,402.402 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:36,452.452 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:45:36,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:36,500.500 INFO    ] No camera update needed
[2026-08-25 23:45:36,502.502 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:45:36,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:45:36,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:45:36,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:45:38,558.558 INFO    ] ================================================
[2026-08-25 23:45:38,574.574 INFO    ] Launching Daemon at Tue Aug 25 23:45:38 IST 2026
[2026-08-25 23:45:38,585.585 INFO    ] ================================================
[2026-08-25 23:45:39,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:45:39
[2026-08-25 23:45:39,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:45:39,988.988 INFO    ] Initializing speech engine...
[2026-08-25 23:45:39,996.996 INFO    ] 2026-08-25 23:45:39
[2026-08-25 23:45:40,287.287 INFO    ] 2026-08-25 23:45:40
[2026-08-25 23:45:40,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:45:40,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:45:40,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:45:40,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:45:40,701.701 INFO    ] time= 25/08/2026 23:45:40
[2026-08-25 23:45:40,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:45:40,740.740 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:45:40,899.899 INFO    ] No existing commands found in stream
[2026-08-25 23:45:45,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:45:45,936.936 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-08-25 23:45:47,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:45:47,397.397 INFO    ] Checking for system updates...
[2026-08-25 23:45:47,431.431 INFO    ] 200
[2026-08-25 23:45:47,434.434 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:47,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:47,494.494 INFO    ] No update needed
[2026-08-25 23:45:47,497.497 INFO    ] Checking for camera pi updates...
[2026-08-25 23:45:47,530.530 INFO    ] 200
[2026-08-25 23:45:47,533.533 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:47,577.577 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:45:47,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:47,635.635 INFO    ] No camera update needed
[2026-08-25 23:45:47,637.637 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:45:47,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:45:47,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:45:47,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:45:49,690.690 INFO    ] ================================================
[2026-08-25 23:45:49,706.706 INFO    ] Launching Daemon at Tue Aug 25 23:45:49 IST 2026
[2026-08-25 23:45:49,717.717 INFO    ] ================================================
[2026-08-25 23:45:50,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:45:50
[2026-08-25 23:45:51,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:45:51,312.312 INFO    ] Initializing speech engine...
[2026-08-25 23:45:51,326.326 INFO    ] 2026-08-25 23:45:51
[2026-08-25 23:45:51,595.595 INFO    ] 2026-08-25 23:45:51
[2026-08-25 23:45:51,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:45:51,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:45:51,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:45:52,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:45:52,100.100 INFO    ] time= 25/08/2026 23:45:52
[2026-08-25 23:45:52,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:45:52,163.163 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:45:52,295.295 INFO    ] No existing commands found in stream
[2026-08-25 23:45:57,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:45:57,324.324 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-08-25 23:45:57,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:45:57,972.972 INFO    ] Checking for system updates...
[2026-08-25 23:45:58,008.008 INFO    ] 200
[2026-08-25 23:45:58,011.011 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:58,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:58,072.072 INFO    ] No update needed
[2026-08-25 23:45:58,075.075 INFO    ] Checking for camera pi updates...
[2026-08-25 23:45:58,112.112 INFO    ] 200
[2026-08-25 23:45:58,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:45:58,159.159 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:45:58,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:45:58,218.218 INFO    ] No camera update needed
[2026-08-25 23:45:58,220.220 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:45:58,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:45:58,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:45:58,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:46:00,271.271 INFO    ] ================================================
[2026-08-25 23:46:00,287.287 INFO    ] Launching Daemon at Tue Aug 25 23:46:00 IST 2026
[2026-08-25 23:46:00,298.298 INFO    ] ================================================
[2026-08-25 23:46:00,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:46:00
[2026-08-25 23:46:01,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:46:01,744.744 INFO    ] Initializing speech engine...
[2026-08-25 23:46:01,751.751 INFO    ] 2026-08-25 23:46:01
[2026-08-25 23:46:02,264.264 INFO    ] 2026-08-25 23:46:02
[2026-08-25 23:46:02,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:46:02,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:46:02,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:46:02,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:46:02,783.783 INFO    ] time= 25/08/2026 23:46:02
[2026-08-25 23:46:02,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:46:02,825.825 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:46:02,963.963 INFO    ] No existing commands found in stream
[2026-08-25 23:46:08,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:46:08,014.014 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-08-25 23:46:10,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:46:10,772.772 INFO    ] Checking for system updates...
[2026-08-25 23:46:10,809.809 INFO    ] 200
[2026-08-25 23:46:10,812.812 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:10,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:46:10,867.867 INFO    ] No update needed
[2026-08-25 23:46:10,869.869 INFO    ] Checking for camera pi updates...
[2026-08-25 23:46:10,909.909 INFO    ] 200
[2026-08-25 23:46:10,912.912 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:10,957.957 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:46:11,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:46:11,006.006 INFO    ] No camera update needed
[2026-08-25 23:46:11,009.009 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:46:11,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:46:11,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:46:11,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:46:13,061.061 INFO    ] ================================================
[2026-08-25 23:46:13,076.076 INFO    ] Launching Daemon at Tue Aug 25 23:46:13 IST 2026
[2026-08-25 23:46:13,087.087 INFO    ] ================================================
[2026-08-25 23:46:13,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:46:13
[2026-08-25 23:46:14,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:46:14,517.517 INFO    ] Initializing speech engine...
[2026-08-25 23:46:14,530.530 INFO    ] 2026-08-25 23:46:14
[2026-08-25 23:46:14,812.812 INFO    ] 2026-08-25 23:46:14
[2026-08-25 23:46:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:46:15,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:46:15,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:46:15,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:46:15,188.188 INFO    ] time= 25/08/2026 23:46:15
[2026-08-25 23:46:15,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:46:15,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:46:15,312.312 INFO    ] No existing commands found in stream
[2026-08-25 23:46:20,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:46:20,330.330 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-08-25 23:46:22,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:46:22,008.008 INFO    ] Checking for system updates...
[2026-08-25 23:46:22,044.044 INFO    ] 200
[2026-08-25 23:46:22,047.047 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:22,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:46:22,103.103 INFO    ] No update needed
[2026-08-25 23:46:22,106.106 INFO    ] Checking for camera pi updates...
[2026-08-25 23:46:22,143.143 INFO    ] 200
[2026-08-25 23:46:22,146.146 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:22,205.205 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:46:22,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:46:22,259.259 INFO    ] No camera update needed
[2026-08-25 23:46:22,262.262 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:46:22,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:46:22,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:46:22,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:46:24,317.317 INFO    ] ================================================
[2026-08-25 23:46:24,333.333 INFO    ] Launching Daemon at Tue Aug 25 23:46:24 IST 2026
[2026-08-25 23:46:24,344.344 INFO    ] ================================================
[2026-08-25 23:46:24,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:46:24
[2026-08-25 23:46:25,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:46:25,947.947 INFO    ] Initializing speech engine...
[2026-08-25 23:46:25,955.955 INFO    ] 2026-08-25 23:46:25
[2026-08-25 23:46:26,267.267 INFO    ] 2026-08-25 23:46:26
[2026-08-25 23:46:26,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:46:26,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:46:26,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:46:26,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:46:26,781.781 INFO    ] time= 25/08/2026 23:46:26
[2026-08-25 23:46:26,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:46:26,805.805 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:46:26,927.927 INFO    ] No existing commands found in stream
[2026-08-25 23:46:31,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:46:31,953.953 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-08-25 23:46:33,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:46:33,139.139 INFO    ] Checking for system updates...
[2026-08-25 23:46:33,175.175 INFO    ] 200
[2026-08-25 23:46:33,178.178 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:33,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:46:33,235.235 INFO    ] No update needed
[2026-08-25 23:46:33,237.237 INFO    ] Checking for camera pi updates...
[2026-08-25 23:46:33,274.274 INFO    ] 200
[2026-08-25 23:46:33,277.277 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:33,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:46:33,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:46:33,377.377 INFO    ] No camera update needed
[2026-08-25 23:46:33,380.380 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:46:33,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:46:33,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:46:33,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:46:35,433.433 INFO    ] ================================================
[2026-08-25 23:46:35,448.448 INFO    ] Launching Daemon at Tue Aug 25 23:46:35 IST 2026
[2026-08-25 23:46:35,459.459 INFO    ] ================================================
[2026-08-25 23:46:36,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:46:36
[2026-08-25 23:46:36,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:46:36,913.913 INFO    ] Initializing speech engine...
[2026-08-25 23:46:36,923.923 INFO    ] 2026-08-25 23:46:36
[2026-08-25 23:46:37,186.186 INFO    ] 2026-08-25 23:46:37
[2026-08-25 23:46:37,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:46:37,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:46:37,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:46:37,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:46:37,547.547 INFO    ] time= 25/08/2026 23:46:37
[2026-08-25 23:46:37,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:46:37,590.590 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:46:37,676.676 INFO    ] No existing commands found in stream
[2026-08-25 23:46:42,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:46:42,710.710 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 23:46:47,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:46:47,083.083 INFO    ] Checking for system updates...
[2026-08-25 23:46:47,119.119 INFO    ] 200
[2026-08-25 23:46:47,122.122 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:47,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:46:47,178.178 INFO    ] No update needed
[2026-08-25 23:46:47,180.180 INFO    ] Checking for camera pi updates...
[2026-08-25 23:46:47,216.216 INFO    ] 200
[2026-08-25 23:46:47,219.219 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:46:47,265.265 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:46:47,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:46:47,316.316 INFO    ] No camera update needed
[2026-08-25 23:46:47,319.319 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:46:47,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:46:47,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:46:47,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:46:49,371.371 INFO    ] ================================================
[2026-08-25 23:46:49,387.387 INFO    ] Launching Daemon at Tue Aug 25 23:46:49 IST 2026
[2026-08-25 23:46:49,398.398 INFO    ] ================================================
[2026-08-25 23:46:50,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:46:50
[2026-08-25 23:46:50,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:46:51,080.080 INFO    ] Initializing speech engine...
[2026-08-25 23:46:51,092.092 INFO    ] 2026-08-25 23:46:51
[2026-08-25 23:46:51,346.346 INFO    ] 2026-08-25 23:46:51
[2026-08-25 23:46:51,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:46:51,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:46:51,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:46:51,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:46:51,803.803 INFO    ] time= 25/08/2026 23:46:51
[2026-08-25 23:46:51,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:46:51,908.908 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:46:52,039.039 INFO    ] No existing commands found in stream
[2026-08-25 23:46:57,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:46:57,070.070 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-08-25 23:47:01,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:47:01,312.312 INFO    ] Checking for system updates...
[2026-08-25 23:47:01,351.351 INFO    ] 200
[2026-08-25 23:47:01,354.354 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:01,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:47:01,414.414 INFO    ] No update needed
[2026-08-25 23:47:01,416.416 INFO    ] Checking for camera pi updates...
[2026-08-25 23:47:01,454.454 INFO    ] 200
[2026-08-25 23:47:01,457.457 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:01,500.500 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:47:01,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:47:01,644.644 INFO    ] No camera update needed
[2026-08-25 23:47:01,647.647 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:47:01,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:47:01,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:47:01,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:47:03,704.704 INFO    ] ================================================
[2026-08-25 23:47:03,723.723 INFO    ] Launching Daemon at Tue Aug 25 23:47:03 IST 2026
[2026-08-25 23:47:03,739.739 INFO    ] ================================================
[2026-08-25 23:47:04,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:47:04
[2026-08-25 23:47:04,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:47:05,266.266 INFO    ] Initializing speech engine...
[2026-08-25 23:47:05,276.276 INFO    ] 2026-08-25 23:47:05
[2026-08-25 23:47:05,534.534 INFO    ] 2026-08-25 23:47:05
[2026-08-25 23:47:05,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:47:05,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:47:05,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:47:05,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:47:05,993.993 INFO    ] time= 25/08/2026 23:47:05
[2026-08-25 23:47:06,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:47:06,105.105 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:47:06,244.244 INFO    ] No existing commands found in stream
[2026-08-25 23:47:11,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:47:11,268.268 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-08-25 23:47:13,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:47:13,624.624 INFO    ] Checking for system updates...
[2026-08-25 23:47:13,664.664 INFO    ] 200
[2026-08-25 23:47:13,667.667 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:13,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:47:13,729.729 INFO    ] No update needed
[2026-08-25 23:47:13,731.731 INFO    ] Checking for camera pi updates...
[2026-08-25 23:47:13,764.764 INFO    ] 200
[2026-08-25 23:47:13,767.767 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:13,807.807 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:47:13,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:47:13,858.858 INFO    ] No camera update needed
[2026-08-25 23:47:13,860.860 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:47:13,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:47:13,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:47:13,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:47:15,914.914 INFO    ] ================================================
[2026-08-25 23:47:15,930.930 INFO    ] Launching Daemon at Tue Aug 25 23:47:15 IST 2026
[2026-08-25 23:47:15,941.941 INFO    ] ================================================
[2026-08-25 23:47:16,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:47:16
[2026-08-25 23:47:17,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:47:17,397.397 INFO    ] Initializing speech engine...
[2026-08-25 23:47:17,408.408 INFO    ] 2026-08-25 23:47:17
[2026-08-25 23:47:17,657.657 INFO    ] 2026-08-25 23:47:17
[2026-08-25 23:47:17,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:47:17,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:47:17,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:47:18,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:47:18,147.147 INFO    ] time= 25/08/2026 23:47:18
[2026-08-25 23:47:18,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:47:18,220.220 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:47:18,354.354 INFO    ] No existing commands found in stream
[2026-08-25 23:47:23,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:47:23,382.382 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 23:47:26,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:47:26,599.599 INFO    ] Checking for system updates...
[2026-08-25 23:47:26,639.639 INFO    ] 200
[2026-08-25 23:47:26,642.642 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:26,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:47:26,697.697 INFO    ] No update needed
[2026-08-25 23:47:26,699.699 INFO    ] Checking for camera pi updates...
[2026-08-25 23:47:26,738.738 INFO    ] 200
[2026-08-25 23:47:26,741.741 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:26,787.787 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:47:26,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:47:26,837.837 INFO    ] No camera update needed
[2026-08-25 23:47:26,840.840 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:47:26,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:47:26,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:47:26,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:47:28,893.893 INFO    ] ================================================
[2026-08-25 23:47:28,909.909 INFO    ] Launching Daemon at Tue Aug 25 23:47:28 IST 2026
[2026-08-25 23:47:28,920.920 INFO    ] ================================================
[2026-08-25 23:47:29,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:47:29
[2026-08-25 23:47:30,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:47:30,511.511 INFO    ] Initializing speech engine...
[2026-08-25 23:47:30,521.521 INFO    ] 2026-08-25 23:47:30
[2026-08-25 23:47:30,833.833 INFO    ] 2026-08-25 23:47:30
[2026-08-25 23:47:30,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:47:31,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:47:31,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:47:31,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:47:31,338.338 INFO    ] time= 25/08/2026 23:47:31
[2026-08-25 23:47:31,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:47:31,366.366 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:47:31,504.504 INFO    ] No existing commands found in stream
[2026-08-25 23:47:36,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:47:36,534.534 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-08-25 23:47:39,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:47:39,534.534 INFO    ] Checking for system updates...
[2026-08-25 23:47:39,570.570 INFO    ] 200
[2026-08-25 23:47:39,573.573 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:39,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:47:39,629.629 INFO    ] No update needed
[2026-08-25 23:47:39,631.631 INFO    ] Checking for camera pi updates...
[2026-08-25 23:47:39,665.665 INFO    ] 200
[2026-08-25 23:47:39,668.668 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:39,708.708 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:47:39,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:47:39,754.754 INFO    ] No camera update needed
[2026-08-25 23:47:39,756.756 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:47:39,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:47:39,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:47:39,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:47:41,809.809 INFO    ] ================================================
[2026-08-25 23:47:41,824.824 INFO    ] Launching Daemon at Tue Aug 25 23:47:41 IST 2026
[2026-08-25 23:47:41,835.835 INFO    ] ================================================
[2026-08-25 23:47:42,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:47:42
[2026-08-25 23:47:42,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:47:43,254.254 INFO    ] Initializing speech engine...
[2026-08-25 23:47:43,268.268 INFO    ] 2026-08-25 23:47:43
[2026-08-25 23:47:43,562.562 INFO    ] 2026-08-25 23:47:43
[2026-08-25 23:47:43,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:47:43,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:47:43,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:47:43,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:47:43,950.950 INFO    ] time= 25/08/2026 23:47:43
[2026-08-25 23:47:43,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:47:43,980.980 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:47:44,079.079 INFO    ] No existing commands found in stream
[2026-08-25 23:47:49,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:47:49,097.097 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-08-25 23:47:49,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:47:49,552.552 INFO    ] Checking for system updates...
[2026-08-25 23:47:49,594.594 INFO    ] 200
[2026-08-25 23:47:49,597.597 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:49,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:47:49,662.662 INFO    ] No update needed
[2026-08-25 23:47:49,665.665 INFO    ] Checking for camera pi updates...
[2026-08-25 23:47:49,704.704 INFO    ] 200
[2026-08-25 23:47:49,707.707 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:47:49,749.749 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:47:49,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:47:49,802.802 INFO    ] No camera update needed
[2026-08-25 23:47:49,805.805 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:47:49,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:47:49,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:47:49,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:47:51,860.860 INFO    ] ================================================
[2026-08-25 23:47:51,875.875 INFO    ] Launching Daemon at Tue Aug 25 23:47:51 IST 2026
[2026-08-25 23:47:51,886.886 INFO    ] ================================================
[2026-08-25 23:47:52,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:47:52
[2026-08-25 23:47:53,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:47:53,318.318 INFO    ] Initializing speech engine...
[2026-08-25 23:47:53,329.329 INFO    ] 2026-08-25 23:47:53
[2026-08-25 23:47:53,631.631 INFO    ] 2026-08-25 23:47:53
[2026-08-25 23:47:53,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:47:53,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:47:53,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:47:54,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:47:54,111.111 INFO    ] time= 25/08/2026 23:47:54
[2026-08-25 23:47:54,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:47:54,194.194 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:47:54,345.345 INFO    ] No existing commands found in stream
[2026-08-25 23:47:59,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:47:59,365.365 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-08-25 23:48:03,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:48:03,613.613 INFO    ] Checking for system updates...
[2026-08-25 23:48:03,649.649 INFO    ] 200
[2026-08-25 23:48:03,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:03,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:48:03,713.713 INFO    ] No update needed
[2026-08-25 23:48:03,716.716 INFO    ] Checking for camera pi updates...
[2026-08-25 23:48:03,753.753 INFO    ] 200
[2026-08-25 23:48:03,755.755 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:03,796.796 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:48:03,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:48:03,852.852 INFO    ] No camera update needed
[2026-08-25 23:48:03,854.854 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:48:03,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:48:03,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:48:03,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:48:05,910.910 INFO    ] ================================================
[2026-08-25 23:48:05,926.926 INFO    ] Launching Daemon at Tue Aug 25 23:48:05 IST 2026
[2026-08-25 23:48:05,938.938 INFO    ] ================================================
[2026-08-25 23:48:06,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:48:06
[2026-08-25 23:48:07,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:48:07,487.487 INFO    ] Initializing speech engine...
[2026-08-25 23:48:07,494.494 INFO    ] 2026-08-25 23:48:07
[2026-08-25 23:48:07,806.806 INFO    ] 2026-08-25 23:48:07
[2026-08-25 23:48:07,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:48:08,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:48:08,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:48:08,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:48:08,215.215 INFO    ] time= 25/08/2026 23:48:08
[2026-08-25 23:48:08,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:48:08,231.231 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:48:08,315.315 INFO    ] No existing commands found in stream
[2026-08-25 23:48:13,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:48:13,350.350 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-08-25 23:48:17,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:48:17,651.651 INFO    ] Checking for system updates...
[2026-08-25 23:48:17,702.702 INFO    ] 200
[2026-08-25 23:48:17,705.705 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:17,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:48:17,760.760 INFO    ] No update needed
[2026-08-25 23:48:17,763.763 INFO    ] Checking for camera pi updates...
[2026-08-25 23:48:17,804.804 INFO    ] 200
[2026-08-25 23:48:17,807.807 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:17,848.848 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:48:17,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:48:17,895.895 INFO    ] No camera update needed
[2026-08-25 23:48:17,897.897 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:48:17,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:48:17,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:48:17,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:48:19,950.950 INFO    ] ================================================
[2026-08-25 23:48:19,966.966 INFO    ] Launching Daemon at Tue Aug 25 23:48:19 IST 2026
[2026-08-25 23:48:19,976.976 INFO    ] ================================================
[2026-08-25 23:48:20,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:48:20
[2026-08-25 23:48:21,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:48:21,436.436 INFO    ] Initializing speech engine...
[2026-08-25 23:48:21,445.445 INFO    ] 2026-08-25 23:48:21
[2026-08-25 23:48:21,712.712 INFO    ] 2026-08-25 23:48:21
[2026-08-25 23:48:21,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:48:21,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:48:21,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:48:22,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:48:22,096.096 INFO    ] time= 25/08/2026 23:48:22
[2026-08-25 23:48:22,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:48:22,139.139 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:48:22,222.222 INFO    ] No existing commands found in stream
[2026-08-25 23:48:27,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:48:27,238.238 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-08-25 23:48:28,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:48:28,991.991 INFO    ] Checking for system updates...
[2026-08-25 23:48:29,027.027 INFO    ] 200
[2026-08-25 23:48:29,029.029 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:29,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:48:29,086.086 INFO    ] No update needed
[2026-08-25 23:48:29,088.088 INFO    ] Checking for camera pi updates...
[2026-08-25 23:48:29,122.122 INFO    ] 200
[2026-08-25 23:48:29,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:29,171.171 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:48:29,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:48:29,220.220 INFO    ] No camera update needed
[2026-08-25 23:48:29,223.223 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:48:29,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:48:29,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:48:29,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:48:31,277.277 INFO    ] ================================================
[2026-08-25 23:48:31,293.293 INFO    ] Launching Daemon at Tue Aug 25 23:48:31 IST 2026
[2026-08-25 23:48:31,305.305 INFO    ] ================================================
[2026-08-25 23:48:31,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:48:31
[2026-08-25 23:48:32,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:48:32,855.855 INFO    ] Initializing speech engine...
[2026-08-25 23:48:32,861.861 INFO    ] 2026-08-25 23:48:32
[2026-08-25 23:48:33,162.162 INFO    ] 2026-08-25 23:48:33
[2026-08-25 23:48:33,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:48:33,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:48:33,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:48:33,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:48:33,546.546 INFO    ] time= 25/08/2026 23:48:33
[2026-08-25 23:48:33,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:48:33,573.573 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:48:33,675.675 INFO    ] No existing commands found in stream
[2026-08-25 23:48:38,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:48:38,687.687 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-08-25 23:48:40,702.702 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:48:40,705.705 INFO    ] Checking for system updates...
[2026-08-25 23:48:40,746.746 INFO    ] 200
[2026-08-25 23:48:40,748.748 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:40,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:48:40,810.810 INFO    ] No update needed
[2026-08-25 23:48:40,813.813 INFO    ] Checking for camera pi updates...
[2026-08-25 23:48:40,846.846 INFO    ] 200
[2026-08-25 23:48:40,849.849 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:40,891.891 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:48:40,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:48:40,942.942 INFO    ] No camera update needed
[2026-08-25 23:48:40,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:48:40,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:48:40,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:48:40,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:48:43,996.996 INFO    ] ================================================
[2026-08-25 23:48:43,011.011 INFO    ] Launching Daemon at Tue Aug 25 23:48:43 IST 2026
[2026-08-25 23:48:43,022.022 INFO    ] ================================================
[2026-08-25 23:48:43,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:48:43
[2026-08-25 23:48:44,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:48:44,558.558 INFO    ] Initializing speech engine...
[2026-08-25 23:48:44,568.568 INFO    ] 2026-08-25 23:48:44
[2026-08-25 23:48:44,830.830 INFO    ] 2026-08-25 23:48:44
[2026-08-25 23:48:44,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:48:45,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:48:45,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:48:45,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:48:45,374.374 INFO    ] time= 25/08/2026 23:48:45
[2026-08-25 23:48:45,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:48:45,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:48:45,529.529 INFO    ] No existing commands found in stream
[2026-08-25 23:48:50,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:48:50,551.551 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-08-25 23:48:53,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:48:53,123.123 INFO    ] Checking for system updates...
[2026-08-25 23:48:53,160.160 INFO    ] 200
[2026-08-25 23:48:53,163.163 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:53,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:48:53,219.219 INFO    ] No update needed
[2026-08-25 23:48:53,222.222 INFO    ] Checking for camera pi updates...
[2026-08-25 23:48:53,255.255 INFO    ] 200
[2026-08-25 23:48:53,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:48:53,304.304 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:48:53,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:48:53,352.352 INFO    ] No camera update needed
[2026-08-25 23:48:53,354.354 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:48:53,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:48:53,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:48:53,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:48:55,408.408 INFO    ] ================================================
[2026-08-25 23:48:55,423.423 INFO    ] Launching Daemon at Tue Aug 25 23:48:55 IST 2026
[2026-08-25 23:48:55,434.434 INFO    ] ================================================
[2026-08-25 23:48:56,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:48:56
[2026-08-25 23:48:56,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:48:56,890.890 INFO    ] Initializing speech engine...
[2026-08-25 23:48:56,900.900 INFO    ] 2026-08-25 23:48:56
[2026-08-25 23:48:57,144.144 INFO    ] 2026-08-25 23:48:57
[2026-08-25 23:48:57,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:48:57,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:48:57,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:48:57,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:48:57,638.638 INFO    ] time= 25/08/2026 23:48:57
[2026-08-25 23:48:57,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:48:57,707.707 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:48:57,851.851 INFO    ] No existing commands found in stream
[2026-08-25 23:49:02,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:49:02,884.884 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-08-25 23:49:04,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:49:04,121.121 INFO    ] Checking for system updates...
[2026-08-25 23:49:04,163.163 INFO    ] 200
[2026-08-25 23:49:04,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:04,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:49:04,222.222 INFO    ] No update needed
[2026-08-25 23:49:04,225.225 INFO    ] Checking for camera pi updates...
[2026-08-25 23:49:04,263.263 INFO    ] 200
[2026-08-25 23:49:04,266.266 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:04,312.312 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:49:04,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:49:04,360.360 INFO    ] No camera update needed
[2026-08-25 23:49:04,363.363 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:49:04,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:49:04,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:49:04,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:49:06,414.414 INFO    ] ================================================
[2026-08-25 23:49:06,430.430 INFO    ] Launching Daemon at Tue Aug 25 23:49:06 IST 2026
[2026-08-25 23:49:06,440.440 INFO    ] ================================================
[2026-08-25 23:49:07,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:49:07
[2026-08-25 23:49:07,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:49:07,859.859 INFO    ] Initializing speech engine...
[2026-08-25 23:49:07,871.871 INFO    ] 2026-08-25 23:49:07
[2026-08-25 23:49:08,124.124 INFO    ] 2026-08-25 23:49:08
[2026-08-25 23:49:08,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:49:08,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:49:08,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:49:08,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:49:08,568.568 INFO    ] time= 25/08/2026 23:49:08
[2026-08-25 23:49:08,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:49:08,687.687 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:49:08,850.850 INFO    ] No existing commands found in stream
[2026-08-25 23:49:13,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:49:13,867.867 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-08-25 23:49:17,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:49:17,681.681 INFO    ] Checking for system updates...
[2026-08-25 23:49:17,717.717 INFO    ] 200
[2026-08-25 23:49:17,719.719 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:17,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:49:17,785.785 INFO    ] No update needed
[2026-08-25 23:49:17,788.788 INFO    ] Checking for camera pi updates...
[2026-08-25 23:49:17,824.824 INFO    ] 200
[2026-08-25 23:49:17,827.827 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:17,871.871 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:49:17,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:49:17,920.920 INFO    ] No camera update needed
[2026-08-25 23:49:17,922.922 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:49:17,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:49:17,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:49:17,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:49:19,975.975 INFO    ] ================================================
[2026-08-25 23:49:19,989.989 INFO    ] Launching Daemon at Tue Aug 25 23:49:19 IST 2026
[2026-08-25 23:49:20,000.000 INFO    ] ================================================
[2026-08-25 23:49:20,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:49:20
[2026-08-25 23:49:21,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:49:21,420.420 INFO    ] Initializing speech engine...
[2026-08-25 23:49:21,436.436 INFO    ] 2026-08-25 23:49:21
[2026-08-25 23:49:21,717.717 INFO    ] 2026-08-25 23:49:21
[2026-08-25 23:49:21,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:49:21,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:49:21,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:49:22,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:49:22,131.131 INFO    ] time= 25/08/2026 23:49:22
[2026-08-25 23:49:22,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:49:22,143.143 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:49:22,261.261 INFO    ] No existing commands found in stream
[2026-08-25 23:49:27,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:49:27,299.299 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-08-25 23:49:31,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:49:31,693.693 INFO    ] Checking for system updates...
[2026-08-25 23:49:31,734.734 INFO    ] 200
[2026-08-25 23:49:31,737.737 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:31,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:49:31,804.804 INFO    ] No update needed
[2026-08-25 23:49:31,808.808 INFO    ] Checking for camera pi updates...
[2026-08-25 23:49:31,853.853 INFO    ] 200
[2026-08-25 23:49:31,856.856 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:31,901.901 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:49:31,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:49:31,965.965 INFO    ] No camera update needed
[2026-08-25 23:49:31,968.968 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:49:31,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:49:31,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:49:31,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:49:34,024.024 INFO    ] ================================================
[2026-08-25 23:49:34,039.039 INFO    ] Launching Daemon at Tue Aug 25 23:49:34 IST 2026
[2026-08-25 23:49:34,050.050 INFO    ] ================================================
[2026-08-25 23:49:34,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:49:34
[2026-08-25 23:49:35,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:49:35,646.646 INFO    ] Initializing speech engine...
[2026-08-25 23:49:35,658.658 INFO    ] 2026-08-25 23:49:35
[2026-08-25 23:49:35,936.936 INFO    ] 2026-08-25 23:49:35
[2026-08-25 23:49:35,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:49:36,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:49:36,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:49:36,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:49:36,397.397 INFO    ] time= 25/08/2026 23:49:36
[2026-08-25 23:49:36,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:49:36,494.494 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:49:36,639.639 INFO    ] No existing commands found in stream
[2026-08-25 23:49:41,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:49:41,661.661 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-08-25 23:49:45,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:49:45,134.134 INFO    ] Checking for system updates...
[2026-08-25 23:49:45,169.169 INFO    ] 200
[2026-08-25 23:49:45,172.172 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:45,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:49:45,231.231 INFO    ] No update needed
[2026-08-25 23:49:45,233.233 INFO    ] Checking for camera pi updates...
[2026-08-25 23:49:45,270.270 INFO    ] 200
[2026-08-25 23:49:45,272.272 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:45,317.317 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:49:45,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:49:45,365.365 INFO    ] No camera update needed
[2026-08-25 23:49:45,368.368 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:49:45,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:49:45,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:49:45,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:49:47,420.420 INFO    ] ================================================
[2026-08-25 23:49:47,435.435 INFO    ] Launching Daemon at Tue Aug 25 23:49:47 IST 2026
[2026-08-25 23:49:47,445.445 INFO    ] ================================================
[2026-08-25 23:49:48,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:49:48
[2026-08-25 23:49:48,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:49:48,888.888 INFO    ] Initializing speech engine...
[2026-08-25 23:49:48,901.901 INFO    ] 2026-08-25 23:49:48
[2026-08-25 23:49:49,154.154 INFO    ] 2026-08-25 23:49:49
[2026-08-25 23:49:49,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:49:49,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:49:49,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:49:49,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:49:49,632.632 INFO    ] time= 25/08/2026 23:49:49
[2026-08-25 23:49:49,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:49:49,722.722 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:49:49,861.861 INFO    ] No existing commands found in stream
[2026-08-25 23:49:54,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:49:54,885.885 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-08-25 23:49:55,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:49:55,701.701 INFO    ] Checking for system updates...
[2026-08-25 23:49:55,737.737 INFO    ] 200
[2026-08-25 23:49:55,739.739 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:55,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:49:55,800.800 INFO    ] No update needed
[2026-08-25 23:49:55,802.802 INFO    ] Checking for camera pi updates...
[2026-08-25 23:49:55,840.840 INFO    ] 200
[2026-08-25 23:49:55,842.842 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:49:55,887.887 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:49:55,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:49:55,953.953 INFO    ] No camera update needed
[2026-08-25 23:49:55,955.955 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:49:55,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:49:55,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:49:55,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:49:58,011.011 INFO    ] ================================================
[2026-08-25 23:49:58,026.026 INFO    ] Launching Daemon at Tue Aug 25 23:49:58 IST 2026
[2026-08-25 23:49:58,037.037 INFO    ] ================================================
[2026-08-25 23:49:58,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:49:58
[2026-08-25 23:49:59,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:49:59,473.473 INFO    ] Initializing speech engine...
[2026-08-25 23:49:59,490.490 INFO    ] 2026-08-25 23:49:59
[2026-08-25 23:49:59,770.770 INFO    ] 2026-08-25 23:49:59
[2026-08-25 23:49:59,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:50:00,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:50:00,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:50:00,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:50:00,247.247 INFO    ] time= 25/08/2026 23:50:00
[2026-08-25 23:50:00,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:50:00,317.317 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:50:00,493.493 INFO    ] No existing commands found in stream
[2026-08-25 23:50:05,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:50:05,527.527 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-08-25 23:50:08,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:50:08,972.972 INFO    ] Checking for system updates...
[2026-08-25 23:50:09,011.011 INFO    ] 200
[2026-08-25 23:50:09,013.013 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:09,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:50:09,068.068 INFO    ] No update needed
[2026-08-25 23:50:09,070.070 INFO    ] Checking for camera pi updates...
[2026-08-25 23:50:09,112.112 INFO    ] 200
[2026-08-25 23:50:09,114.114 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:09,160.160 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:50:09,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:50:09,211.211 INFO    ] No camera update needed
[2026-08-25 23:50:09,213.213 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:50:09,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:50:09,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:50:09,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:50:11,269.269 INFO    ] ================================================
[2026-08-25 23:50:11,284.284 INFO    ] Launching Daemon at Tue Aug 25 23:50:11 IST 2026
[2026-08-25 23:50:11,295.295 INFO    ] ================================================
[2026-08-25 23:50:11,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:50:11
[2026-08-25 23:50:12,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:50:12,752.752 INFO    ] Initializing speech engine...
[2026-08-25 23:50:12,762.762 INFO    ] 2026-08-25 23:50:12
[2026-08-25 23:50:13,023.023 INFO    ] 2026-08-25 23:50:13
[2026-08-25 23:50:13,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:50:13,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:50:13,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:50:13,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:50:13,504.504 INFO    ] time= 25/08/2026 23:50:13
[2026-08-25 23:50:13,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:50:13,578.578 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:50:13,720.720 INFO    ] No existing commands found in stream
[2026-08-25 23:50:18,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:50:18,738.738 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-08-25 23:50:20,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:50:20,182.182 INFO    ] Checking for system updates...
[2026-08-25 23:50:20,217.217 INFO    ] 200
[2026-08-25 23:50:20,220.220 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:20,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:50:20,280.280 INFO    ] No update needed
[2026-08-25 23:50:20,283.283 INFO    ] Checking for camera pi updates...
[2026-08-25 23:50:20,319.319 INFO    ] 200
[2026-08-25 23:50:20,321.321 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:20,366.366 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:50:20,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:50:20,425.425 INFO    ] No camera update needed
[2026-08-25 23:50:20,428.428 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:50:20,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:50:20,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:50:20,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:50:22,481.481 INFO    ] ================================================
[2026-08-25 23:50:22,496.496 INFO    ] Launching Daemon at Tue Aug 25 23:50:22 IST 2026
[2026-08-25 23:50:22,507.507 INFO    ] ================================================
[2026-08-25 23:50:23,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:50:23
[2026-08-25 23:50:23,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:50:23,972.972 INFO    ] Initializing speech engine...
[2026-08-25 23:50:23,978.978 INFO    ] 2026-08-25 23:50:23
[2026-08-25 23:50:24,238.238 INFO    ] 2026-08-25 23:50:24
[2026-08-25 23:50:24,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:50:24,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:50:24,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:50:24,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:50:24,785.785 INFO    ] time= 25/08/2026 23:50:24
[2026-08-25 23:50:24,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:50:24,812.812 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:50:24,964.964 INFO    ] No existing commands found in stream
[2026-08-25 23:50:29,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:50:29,997.997 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-08-25 23:50:33,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:50:33,424.424 INFO    ] Checking for system updates...
[2026-08-25 23:50:33,467.467 INFO    ] 200
[2026-08-25 23:50:33,470.470 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:33,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:50:33,530.530 INFO    ] No update needed
[2026-08-25 23:50:33,532.532 INFO    ] Checking for camera pi updates...
[2026-08-25 23:50:33,569.569 INFO    ] 200
[2026-08-25 23:50:33,571.571 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:33,615.615 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:50:33,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:50:33,669.669 INFO    ] No camera update needed
[2026-08-25 23:50:33,671.671 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:50:33,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:50:33,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:50:33,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:50:35,725.725 INFO    ] ================================================
[2026-08-25 23:50:35,740.740 INFO    ] Launching Daemon at Tue Aug 25 23:50:35 IST 2026
[2026-08-25 23:50:35,751.751 INFO    ] ================================================
[2026-08-25 23:50:36,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:50:36
[2026-08-25 23:50:36,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:50:37,197.197 INFO    ] Initializing speech engine...
[2026-08-25 23:50:37,208.208 INFO    ] 2026-08-25 23:50:37
[2026-08-25 23:50:37,468.468 INFO    ] 2026-08-25 23:50:37
[2026-08-25 23:50:37,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:50:37,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:50:37,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:50:37,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:50:37,901.901 INFO    ] time= 25/08/2026 23:50:37
[2026-08-25 23:50:37,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:50:38,018.018 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:50:38,152.152 INFO    ] No existing commands found in stream
[2026-08-25 23:50:43,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:50:43,180.180 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-08-25 23:50:43,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:50:43,684.684 INFO    ] Checking for system updates...
[2026-08-25 23:50:43,720.720 INFO    ] 200
[2026-08-25 23:50:43,722.722 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:43,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:50:43,785.785 INFO    ] No update needed
[2026-08-25 23:50:43,787.787 INFO    ] Checking for camera pi updates...
[2026-08-25 23:50:43,820.820 INFO    ] 200
[2026-08-25 23:50:43,822.822 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:43,870.870 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:50:43,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:50:43,925.925 INFO    ] No camera update needed
[2026-08-25 23:50:43,928.928 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:50:43,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:50:43,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:50:43,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:50:45,981.981 INFO    ] ================================================
[2026-08-25 23:50:46,996.996 INFO    ] Launching Daemon at Tue Aug 25 23:50:45 IST 2026
[2026-08-25 23:50:46,007.007 INFO    ] ================================================
[2026-08-25 23:50:46,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:50:46
[2026-08-25 23:50:47,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:50:47,471.471 INFO    ] Initializing speech engine...
[2026-08-25 23:50:47,476.476 INFO    ] 2026-08-25 23:50:47
[2026-08-25 23:50:47,725.725 INFO    ] 2026-08-25 23:50:47
[2026-08-25 23:50:47,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:50:48,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:50:48,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:50:48,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:50:48,232.232 INFO    ] time= 25/08/2026 23:50:48
[2026-08-25 23:50:48,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:50:48,306.306 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:50:48,431.431 INFO    ] No existing commands found in stream
[2026-08-25 23:50:53,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:50:53,460.460 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-08-25 23:50:54,339.339 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:50:54,342.342 INFO    ] Checking for system updates...
[2026-08-25 23:50:54,379.379 INFO    ] 200
[2026-08-25 23:50:54,382.382 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:54,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:50:54,437.437 INFO    ] No update needed
[2026-08-25 23:50:54,440.440 INFO    ] Checking for camera pi updates...
[2026-08-25 23:50:54,478.478 INFO    ] 200
[2026-08-25 23:50:54,480.480 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:50:54,526.526 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:50:54,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:50:54,589.589 INFO    ] No camera update needed
[2026-08-25 23:50:54,591.591 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:50:54,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:50:54,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:50:54,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:50:56,643.643 INFO    ] ================================================
[2026-08-25 23:50:56,658.658 INFO    ] Launching Daemon at Tue Aug 25 23:50:56 IST 2026
[2026-08-25 23:50:56,669.669 INFO    ] ================================================
[2026-08-25 23:50:57,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:50:57
[2026-08-25 23:50:57,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:50:58,092.092 INFO    ] Initializing speech engine...
[2026-08-25 23:50:58,098.098 INFO    ] 2026-08-25 23:50:58
[2026-08-25 23:50:58,346.346 INFO    ] 2026-08-25 23:50:58
[2026-08-25 23:50:58,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:50:58,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:50:58,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:50:58,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:50:58,721.721 INFO    ] time= 25/08/2026 23:50:58
[2026-08-25 23:50:58,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:50:58,769.769 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:50:58,901.901 INFO    ] No existing commands found in stream
[2026-08-25 23:51:03,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:51:03,929.929 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-08-25 23:51:05,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:51:05,254.254 INFO    ] Checking for system updates...
[2026-08-25 23:51:05,293.293 INFO    ] 200
[2026-08-25 23:51:05,296.296 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:05,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:05,351.351 INFO    ] No update needed
[2026-08-25 23:51:05,353.353 INFO    ] Checking for camera pi updates...
[2026-08-25 23:51:05,390.390 INFO    ] 200
[2026-08-25 23:51:05,393.393 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:05,438.438 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:51:05,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:05,582.582 INFO    ] No camera update needed
[2026-08-25 23:51:05,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:51:05,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:51:05,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:51:05,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:51:07,637.637 INFO    ] ================================================
[2026-08-25 23:51:07,653.653 INFO    ] Launching Daemon at Tue Aug 25 23:51:07 IST 2026
[2026-08-25 23:51:07,664.664 INFO    ] ================================================
[2026-08-25 23:51:08,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:51:08
[2026-08-25 23:51:08,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:51:09,297.297 INFO    ] Initializing speech engine...
[2026-08-25 23:51:09,311.311 INFO    ] 2026-08-25 23:51:09
[2026-08-25 23:51:09,620.620 INFO    ] 2026-08-25 23:51:09
[2026-08-25 23:51:09,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:51:09,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:51:09,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:51:10,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:51:10,140.140 INFO    ] time= 25/08/2026 23:51:10
[2026-08-25 23:51:10,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:51:10,189.189 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:51:10,328.328 INFO    ] No existing commands found in stream
[2026-08-25 23:51:15,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:51:15,362.362 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-08-25 23:51:19,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:51:19,016.016 INFO    ] Checking for system updates...
[2026-08-25 23:51:19,057.057 INFO    ] 200
[2026-08-25 23:51:19,060.060 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:19,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:19,121.121 INFO    ] No update needed
[2026-08-25 23:51:19,124.124 INFO    ] Checking for camera pi updates...
[2026-08-25 23:51:19,158.158 INFO    ] 200
[2026-08-25 23:51:19,161.161 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:19,202.202 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:51:19,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:19,252.252 INFO    ] No camera update needed
[2026-08-25 23:51:19,254.254 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:51:19,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:51:19,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:51:19,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:51:21,311.311 INFO    ] ================================================
[2026-08-25 23:51:21,326.326 INFO    ] Launching Daemon at Tue Aug 25 23:51:21 IST 2026
[2026-08-25 23:51:21,337.337 INFO    ] ================================================
[2026-08-25 23:51:21,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:51:21
[2026-08-25 23:51:22,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:51:22,977.977 INFO    ] Initializing speech engine...
[2026-08-25 23:51:22,988.988 INFO    ] 2026-08-25 23:51:22
[2026-08-25 23:51:23,298.298 INFO    ] 2026-08-25 23:51:23
[2026-08-25 23:51:23,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:51:23,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:51:23,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:51:23,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:51:23,805.805 INFO    ] time= 25/08/2026 23:51:23
[2026-08-25 23:51:23,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:51:23,842.842 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:51:23,958.958 INFO    ] No existing commands found in stream
[2026-08-25 23:51:28,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:51:28,975.975 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-08-25 23:51:32,222.222 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:51:32,226.226 INFO    ] Checking for system updates...
[2026-08-25 23:51:32,271.271 INFO    ] 200
[2026-08-25 23:51:32,274.274 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:32,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:32,345.345 INFO    ] No update needed
[2026-08-25 23:51:32,349.349 INFO    ] Checking for camera pi updates...
[2026-08-25 23:51:32,387.387 INFO    ] 200
[2026-08-25 23:51:32,390.390 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:32,436.436 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:51:32,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:32,512.512 INFO    ] No camera update needed
[2026-08-25 23:51:32,515.515 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:51:32,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:51:32,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:51:32,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:51:34,569.569 INFO    ] ================================================
[2026-08-25 23:51:34,585.585 INFO    ] Launching Daemon at Tue Aug 25 23:51:34 IST 2026
[2026-08-25 23:51:34,596.596 INFO    ] ================================================
[2026-08-25 23:51:35,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:51:35
[2026-08-25 23:51:35,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:51:36,257.257 INFO    ] Initializing speech engine...
[2026-08-25 23:51:36,263.263 INFO    ] 2026-08-25 23:51:36
[2026-08-25 23:51:36,573.573 INFO    ] 2026-08-25 23:51:36
[2026-08-25 23:51:36,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:51:36,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:51:36,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:51:37,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:51:37,078.078 INFO    ] time= 25/08/2026 23:51:37
[2026-08-25 23:51:37,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:51:37,104.104 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:51:37,232.232 INFO    ] No existing commands found in stream
[2026-08-25 23:51:42,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:51:42,256.256 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-08-25 23:51:44,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:51:44,538.538 INFO    ] Checking for system updates...
[2026-08-25 23:51:44,578.578 INFO    ] 200
[2026-08-25 23:51:44,581.581 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:44,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:44,648.648 INFO    ] No update needed
[2026-08-25 23:51:44,651.651 INFO    ] Checking for camera pi updates...
[2026-08-25 23:51:44,689.689 INFO    ] 200
[2026-08-25 23:51:44,692.692 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:44,737.737 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:51:44,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:51:44,793.793 INFO    ] No camera update needed
[2026-08-25 23:51:44,796.796 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:51:44,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:51:44,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:51:44,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:51:46,851.851 INFO    ] ================================================
[2026-08-25 23:51:46,866.866 INFO    ] Launching Daemon at Tue Aug 25 23:51:46 IST 2026
[2026-08-25 23:51:46,877.877 INFO    ] ================================================
[2026-08-25 23:51:47,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:51:47
[2026-08-25 23:51:48,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:51:48,345.345 INFO    ] Initializing speech engine...
[2026-08-25 23:51:48,366.366 INFO    ] 2026-08-25 23:51:48
[2026-08-25 23:51:48,642.642 INFO    ] 2026-08-25 23:51:48
[2026-08-25 23:51:48,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:51:48,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:51:48,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:51:49,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:51:49,154.154 INFO    ] time= 25/08/2026 23:51:49
[2026-08-25 23:51:49,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:51:49,227.227 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:51:49,378.378 INFO    ] No existing commands found in stream
[2026-08-25 23:51:54,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:51:54,401.401 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-08-25 23:51:58,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:51:58,009.009 INFO    ] Checking for system updates...
[2026-08-25 23:51:58,048.048 INFO    ] 200
[2026-08-25 23:51:58,051.051 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:58,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:51:58,111.111 INFO    ] No update needed
[2026-08-25 23:51:58,114.114 INFO    ] Checking for camera pi updates...
[2026-08-25 23:51:58,151.151 INFO    ] 200
[2026-08-25 23:51:58,154.154 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:51:58,199.199 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:51:58,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:51:58,257.257 INFO    ] No camera update needed
[2026-08-25 23:51:58,261.261 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:51:58,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:51:58,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:51:58,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:52:00,319.319 INFO    ] ================================================
[2026-08-25 23:52:00,334.334 INFO    ] Launching Daemon at Tue Aug 25 23:52:00 IST 2026
[2026-08-25 23:52:00,345.345 INFO    ] ================================================
[2026-08-25 23:52:00,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:52:00
[2026-08-25 23:52:01,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:52:02,040.040 INFO    ] Initializing speech engine...
[2026-08-25 23:52:02,077.077 INFO    ] 2026-08-25 23:52:02
[2026-08-25 23:52:02,461.461 INFO    ] 2026-08-25 23:52:02
[2026-08-25 23:52:02,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:52:02,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:52:02,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:52:02,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:52:03,052.052 INFO    ] time= 25/08/2026 23:52:03
[2026-08-25 23:52:03,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:52:03,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:52:03,186.186 INFO    ] No existing commands found in stream
[2026-08-25 23:52:08,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:52:08,221.221 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-08-25 23:52:10,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:52:10,692.692 INFO    ] Checking for system updates...
[2026-08-25 23:52:10,727.727 INFO    ] 200
[2026-08-25 23:52:10,730.730 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:10,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:10,791.791 INFO    ] No update needed
[2026-08-25 23:52:10,793.793 INFO    ] Checking for camera pi updates...
[2026-08-25 23:52:10,842.842 INFO    ] 200
[2026-08-25 23:52:10,845.845 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:10,898.898 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:52:10,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:10,965.965 INFO    ] No camera update needed
[2026-08-25 23:52:10,967.967 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:52:10,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:52:10,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:52:10,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:52:13,023.023 INFO    ] ================================================
[2026-08-25 23:52:13,038.038 INFO    ] Launching Daemon at Tue Aug 25 23:52:13 IST 2026
[2026-08-25 23:52:13,049.049 INFO    ] ================================================
[2026-08-25 23:52:13,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:52:13
[2026-08-25 23:52:14,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:52:14,503.503 INFO    ] Initializing speech engine...
[2026-08-25 23:52:14,510.510 INFO    ] 2026-08-25 23:52:14
[2026-08-25 23:52:14,769.769 INFO    ] 2026-08-25 23:52:14
[2026-08-25 23:52:14,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:52:15,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:52:15,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:52:15,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:52:15,227.227 INFO    ] time= 25/08/2026 23:52:15
[2026-08-25 23:52:15,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:52:15,319.319 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:52:15,464.464 INFO    ] No existing commands found in stream
[2026-08-25 23:52:20,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:52:20,482.482 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-08-25 23:52:22,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:52:22,969.969 INFO    ] Checking for system updates...
[2026-08-25 23:52:23,004.004 INFO    ] 200
[2026-08-25 23:52:23,007.007 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:23,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:23,085.085 INFO    ] No update needed
[2026-08-25 23:52:23,088.088 INFO    ] Checking for camera pi updates...
[2026-08-25 23:52:23,122.122 INFO    ] 200
[2026-08-25 23:52:23,124.124 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:23,164.164 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:52:23,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:23,227.227 INFO    ] No camera update needed
[2026-08-25 23:52:23,229.229 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:52:23,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:52:23,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:52:23,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:52:25,283.283 INFO    ] ================================================
[2026-08-25 23:52:25,299.299 INFO    ] Launching Daemon at Tue Aug 25 23:52:25 IST 2026
[2026-08-25 23:52:25,310.310 INFO    ] ================================================
[2026-08-25 23:52:25,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:52:25
[2026-08-25 23:52:26,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:52:26,744.744 INFO    ] Initializing speech engine...
[2026-08-25 23:52:26,753.753 INFO    ] 2026-08-25 23:52:26
[2026-08-25 23:52:27,016.016 INFO    ] 2026-08-25 23:52:26
[2026-08-25 23:52:27,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:52:27,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:52:27,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:52:27,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:52:27,431.431 INFO    ] time= 25/08/2026 23:52:27
[2026-08-25 23:52:27,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:52:27,443.443 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:52:27,518.518 INFO    ] No existing commands found in stream
[2026-08-25 23:52:32,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:52:32,536.536 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-08-25 23:52:33,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:52:33,154.154 INFO    ] Checking for system updates...
[2026-08-25 23:52:33,191.191 INFO    ] 200
[2026-08-25 23:52:33,193.193 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:33,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:33,251.251 INFO    ] No update needed
[2026-08-25 23:52:33,253.253 INFO    ] Checking for camera pi updates...
[2026-08-25 23:52:33,288.288 INFO    ] 200
[2026-08-25 23:52:33,290.290 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:33,340.340 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:52:33,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:33,394.394 INFO    ] No camera update needed
[2026-08-25 23:52:33,397.397 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:52:33,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:52:33,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:52:33,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:52:35,452.452 INFO    ] ================================================
[2026-08-25 23:52:35,468.468 INFO    ] Launching Daemon at Tue Aug 25 23:52:35 IST 2026
[2026-08-25 23:52:35,480.480 INFO    ] ================================================
[2026-08-25 23:52:36,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:52:36
[2026-08-25 23:52:36,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:52:36,930.930 INFO    ] Initializing speech engine...
[2026-08-25 23:52:36,939.939 INFO    ] 2026-08-25 23:52:36
[2026-08-25 23:52:37,196.196 INFO    ] 2026-08-25 23:52:37
[2026-08-25 23:52:37,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:52:37,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:52:37,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:52:37,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:52:37,657.657 INFO    ] time= 25/08/2026 23:52:37
[2026-08-25 23:52:37,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:52:37,743.743 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:52:37,828.828 INFO    ] No existing commands found in stream
[2026-08-25 23:52:42,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:52:42,861.861 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-08-25 23:52:46,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:52:46,617.617 INFO    ] Checking for system updates...
[2026-08-25 23:52:46,659.659 INFO    ] 200
[2026-08-25 23:52:46,661.661 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:46,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:52:46,717.717 INFO    ] No update needed
[2026-08-25 23:52:46,720.720 INFO    ] Checking for camera pi updates...
[2026-08-25 23:52:46,753.753 INFO    ] 200
[2026-08-25 23:52:46,756.756 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:46,799.799 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:52:46,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:52:46,851.851 INFO    ] No camera update needed
[2026-08-25 23:52:46,853.853 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:52:46,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:52:46,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:52:46,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:52:48,909.909 INFO    ] ================================================
[2026-08-25 23:52:48,925.925 INFO    ] Launching Daemon at Tue Aug 25 23:52:48 IST 2026
[2026-08-25 23:52:48,937.937 INFO    ] ================================================
[2026-08-25 23:52:49,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:52:49
[2026-08-25 23:52:50,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:52:50,562.562 INFO    ] Initializing speech engine...
[2026-08-25 23:52:50,572.572 INFO    ] 2026-08-25 23:52:50
[2026-08-25 23:52:50,855.855 INFO    ] 2026-08-25 23:52:50
[2026-08-25 23:52:50,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:52:51,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:52:51,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:52:51,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:52:51,386.386 INFO    ] time= 25/08/2026 23:52:51
[2026-08-25 23:52:51,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:52:51,415.415 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:52:51,545.545 INFO    ] No existing commands found in stream
[2026-08-25 23:52:56,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:52:56,571.571 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-08-25 23:52:57,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:52:57,651.651 INFO    ] Checking for system updates...
[2026-08-25 23:52:57,687.687 INFO    ] 200
[2026-08-25 23:52:57,689.689 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:57,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:57,747.747 INFO    ] No update needed
[2026-08-25 23:52:57,750.750 INFO    ] Checking for camera pi updates...
[2026-08-25 23:52:57,783.783 INFO    ] 200
[2026-08-25 23:52:57,785.785 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:52:57,825.825 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:52:57,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:52:57,879.879 INFO    ] No camera update needed
[2026-08-25 23:52:57,881.881 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:52:57,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:52:57,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:52:57,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:52:59,935.935 INFO    ] ================================================
[2026-08-25 23:52:59,950.950 INFO    ] Launching Daemon at Tue Aug 25 23:52:59 IST 2026
[2026-08-25 23:52:59,961.961 INFO    ] ================================================
[2026-08-25 23:53:00,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:53:00
[2026-08-25 23:53:01,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:53:01,382.382 INFO    ] Initializing speech engine...
[2026-08-25 23:53:01,392.392 INFO    ] 2026-08-25 23:53:01
[2026-08-25 23:53:01,753.753 INFO    ] 2026-08-25 23:53:01
[2026-08-25 23:53:01,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:53:01,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:53:02,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:53:02,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:53:02,191.191 INFO    ] time= 25/08/2026 23:53:02
[2026-08-25 23:53:02,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:53:02,205.205 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:53:02,290.290 INFO    ] No existing commands found in stream
[2026-08-25 23:53:07,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:53:07,308.308 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-08-25 23:53:09,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:53:09,614.614 INFO    ] Checking for system updates...
[2026-08-25 23:53:09,650.650 INFO    ] 200
[2026-08-25 23:53:09,652.652 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:09,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:09,708.708 INFO    ] No update needed
[2026-08-25 23:53:09,710.710 INFO    ] Checking for camera pi updates...
[2026-08-25 23:53:09,747.747 INFO    ] 200
[2026-08-25 23:53:09,749.749 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:09,790.790 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:53:09,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:09,941.941 INFO    ] No camera update needed
[2026-08-25 23:53:09,944.944 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:53:09,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:53:09,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:53:09,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:53:12,000.000 INFO    ] ================================================
[2026-08-25 23:53:12,016.016 INFO    ] Launching Daemon at Tue Aug 25 23:53:12 IST 2026
[2026-08-25 23:53:12,027.027 INFO    ] ================================================
[2026-08-25 23:53:12,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:53:12
[2026-08-25 23:53:13,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:53:13,428.428 INFO    ] Initializing speech engine...
[2026-08-25 23:53:13,442.442 INFO    ] 2026-08-25 23:53:13
[2026-08-25 23:53:13,708.708 INFO    ] 2026-08-25 23:53:13
[2026-08-25 23:53:13,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:53:13,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:53:13,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:53:14,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:53:14,085.085 INFO    ] time= 25/08/2026 23:53:14
[2026-08-25 23:53:14,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:53:14,137.137 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:53:14,277.277 INFO    ] No existing commands found in stream
[2026-08-25 23:53:19,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:53:19,298.298 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-08-25 23:53:22,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:53:22,984.984 INFO    ] Checking for system updates...
[2026-08-25 23:53:23,023.023 INFO    ] 200
[2026-08-25 23:53:23,026.026 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:23,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:23,080.080 INFO    ] No update needed
[2026-08-25 23:53:23,082.082 INFO    ] Checking for camera pi updates...
[2026-08-25 23:53:23,116.116 INFO    ] 200
[2026-08-25 23:53:23,118.118 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:23,158.158 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:53:23,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:23,212.212 INFO    ] No camera update needed
[2026-08-25 23:53:23,214.214 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:53:23,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:53:23,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:53:23,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:53:25,266.266 INFO    ] ================================================
[2026-08-25 23:53:25,282.282 INFO    ] Launching Daemon at Tue Aug 25 23:53:25 IST 2026
[2026-08-25 23:53:25,293.293 INFO    ] ================================================
[2026-08-25 23:53:25,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:53:25
[2026-08-25 23:53:26,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:53:26,764.764 INFO    ] Initializing speech engine...
[2026-08-25 23:53:26,777.777 INFO    ] 2026-08-25 23:53:26
[2026-08-25 23:53:27,056.056 INFO    ] 2026-08-25 23:53:27
[2026-08-25 23:53:27,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:53:27,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:53:27,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:53:27,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:53:27,548.548 INFO    ] time= 25/08/2026 23:53:27
[2026-08-25 23:53:27,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:53:27,623.623 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:53:27,772.772 INFO    ] No existing commands found in stream
[2026-08-25 23:53:32,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:53:32,807.807 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-08-25 23:53:34,856.856 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:53:34,859.859 INFO    ] Checking for system updates...
[2026-08-25 23:53:34,899.899 INFO    ] 200
[2026-08-25 23:53:34,901.901 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:34,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:34,956.956 INFO    ] No update needed
[2026-08-25 23:53:34,959.959 INFO    ] Checking for camera pi updates...
[2026-08-25 23:53:34,997.997 INFO    ] 200
[2026-08-25 23:53:34,999.999 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:35,040.040 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:53:35,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:35,092.092 INFO    ] No camera update needed
[2026-08-25 23:53:35,095.095 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:53:35,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:53:35,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:53:35,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:53:37,147.147 INFO    ] ================================================
[2026-08-25 23:53:37,163.163 INFO    ] Launching Daemon at Tue Aug 25 23:53:37 IST 2026
[2026-08-25 23:53:37,174.174 INFO    ] ================================================
[2026-08-25 23:53:37,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:53:37
[2026-08-25 23:53:38,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:53:38,644.644 INFO    ] Initializing speech engine...
[2026-08-25 23:53:38,653.653 INFO    ] 2026-08-25 23:53:38
[2026-08-25 23:53:38,915.915 INFO    ] 2026-08-25 23:53:38
[2026-08-25 23:53:38,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:53:39,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:53:39,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:53:39,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:53:39,419.419 INFO    ] time= 25/08/2026 23:53:39
[2026-08-25 23:53:39,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:53:39,495.495 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:53:39,634.634 INFO    ] No existing commands found in stream
[2026-08-25 23:53:44,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:53:44,676.676 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-08-25 23:53:46,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:53:46,816.816 INFO    ] Checking for system updates...
[2026-08-25 23:53:46,862.862 INFO    ] 200
[2026-08-25 23:53:46,865.865 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:46,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:46,922.922 INFO    ] No update needed
[2026-08-25 23:53:46,924.924 INFO    ] Checking for camera pi updates...
[2026-08-25 23:53:46,959.959 INFO    ] 200
[2026-08-25 23:53:46,962.962 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:47,004.004 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:53:47,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:53:47,053.053 INFO    ] No camera update needed
[2026-08-25 23:53:47,056.056 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:53:47,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:53:47,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:53:47,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:53:49,111.111 INFO    ] ================================================
[2026-08-25 23:53:49,127.127 INFO    ] Launching Daemon at Tue Aug 25 23:53:49 IST 2026
[2026-08-25 23:53:49,138.138 INFO    ] ================================================
[2026-08-25 23:53:49,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:53:49
[2026-08-25 23:53:50,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:53:50,552.552 INFO    ] Initializing speech engine...
[2026-08-25 23:53:50,560.560 INFO    ] 2026-08-25 23:53:50
[2026-08-25 23:53:50,831.831 INFO    ] 2026-08-25 23:53:50
[2026-08-25 23:53:50,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:53:51,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:53:51,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:53:51,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:53:51,312.312 INFO    ] time= 25/08/2026 23:53:51
[2026-08-25 23:53:51,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:53:51,399.399 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:53:51,542.542 INFO    ] No existing commands found in stream
[2026-08-25 23:53:56,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:53:56,560.560 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 23:53:58,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:53:58,244.244 INFO    ] Checking for system updates...
[2026-08-25 23:53:58,279.279 INFO    ] 200
[2026-08-25 23:53:58,282.282 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:58,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:53:58,343.343 INFO    ] No update needed
[2026-08-25 23:53:58,346.346 INFO    ] Checking for camera pi updates...
[2026-08-25 23:53:58,379.379 INFO    ] 200
[2026-08-25 23:53:58,381.381 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:53:58,426.426 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:53:58,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:53:58,478.478 INFO    ] No camera update needed
[2026-08-25 23:53:58,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:53:58,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:53:58,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:53:58,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:54:00,533.533 INFO    ] ================================================
[2026-08-25 23:54:00,549.549 INFO    ] Launching Daemon at Tue Aug 25 23:54:00 IST 2026
[2026-08-25 23:54:00,561.561 INFO    ] ================================================
[2026-08-25 23:54:01,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:54:01
[2026-08-25 23:54:01,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:54:02,181.181 INFO    ] Initializing speech engine...
[2026-08-25 23:54:02,194.194 INFO    ] 2026-08-25 23:54:02
[2026-08-25 23:54:02,486.486 INFO    ] 2026-08-25 23:54:02
[2026-08-25 23:54:02,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:54:02,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:54:02,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:54:02,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:54:02,999.999 INFO    ] time= 25/08/2026 23:54:02
[2026-08-25 23:54:03,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:54:03,115.115 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:54:03,176.176 INFO    ] No existing commands found in stream
[2026-08-25 23:54:08,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:54:08,193.193 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-08-25 23:54:11,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:54:11,044.044 INFO    ] Checking for system updates...
[2026-08-25 23:54:11,080.080 INFO    ] 200
[2026-08-25 23:54:11,082.082 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:11,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:11,143.143 INFO    ] No update needed
[2026-08-25 23:54:11,146.146 INFO    ] Checking for camera pi updates...
[2026-08-25 23:54:11,178.178 INFO    ] 200
[2026-08-25 23:54:11,181.181 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:11,226.226 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:54:11,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:11,270.270 INFO    ] No camera update needed
[2026-08-25 23:54:11,272.272 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:54:11,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:54:11,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:54:11,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:54:13,326.326 INFO    ] ================================================
[2026-08-25 23:54:13,342.342 INFO    ] Launching Daemon at Tue Aug 25 23:54:13 IST 2026
[2026-08-25 23:54:13,353.353 INFO    ] ================================================
[2026-08-25 23:54:13,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:54:13
[2026-08-25 23:54:14,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:54:14,791.791 INFO    ] Initializing speech engine...
[2026-08-25 23:54:14,800.800 INFO    ] 2026-08-25 23:54:14
[2026-08-25 23:54:15,096.096 INFO    ] 2026-08-25 23:54:15
[2026-08-25 23:54:15,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:54:15,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:54:15,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:54:15,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:54:15,479.479 INFO    ] time= 25/08/2026 23:54:15
[2026-08-25 23:54:15,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:54:15,521.521 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:54:15,605.605 INFO    ] No existing commands found in stream
[2026-08-25 23:54:20,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:54:20,621.621 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-08-25 23:54:21,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:54:21,143.143 INFO    ] Checking for system updates...
[2026-08-25 23:54:21,180.180 INFO    ] 200
[2026-08-25 23:54:21,182.182 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:21,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:21,245.245 INFO    ] No update needed
[2026-08-25 23:54:21,248.248 INFO    ] Checking for camera pi updates...
[2026-08-25 23:54:21,283.283 INFO    ] 200
[2026-08-25 23:54:21,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:21,326.326 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:54:21,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:21,381.381 INFO    ] No camera update needed
[2026-08-25 23:54:21,383.383 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:54:21,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:54:21,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:54:21,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:54:23,439.439 INFO    ] ================================================
[2026-08-25 23:54:23,454.454 INFO    ] Launching Daemon at Tue Aug 25 23:54:23 IST 2026
[2026-08-25 23:54:23,465.465 INFO    ] ================================================
[2026-08-25 23:54:24,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:54:24
[2026-08-25 23:54:24,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:54:24,892.892 INFO    ] Initializing speech engine...
[2026-08-25 23:54:24,900.900 INFO    ] 2026-08-25 23:54:24
[2026-08-25 23:54:25,200.200 INFO    ] 2026-08-25 23:54:25
[2026-08-25 23:54:25,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:54:25,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:54:25,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:54:25,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:54:25,564.564 INFO    ] time= 25/08/2026 23:54:25
[2026-08-25 23:54:25,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:54:25,593.593 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:54:25,717.717 INFO    ] No existing commands found in stream
[2026-08-25 23:54:30,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:54:30,730.730 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-08-25 23:54:32,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:54:32,197.197 INFO    ] Checking for system updates...
[2026-08-25 23:54:32,243.243 INFO    ] 200
[2026-08-25 23:54:32,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:32,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:32,305.305 INFO    ] No update needed
[2026-08-25 23:54:32,308.308 INFO    ] Checking for camera pi updates...
[2026-08-25 23:54:32,347.347 INFO    ] 200
[2026-08-25 23:54:32,350.350 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:32,394.394 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:54:32,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:32,479.479 INFO    ] No camera update needed
[2026-08-25 23:54:32,482.482 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:54:32,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:54:32,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:54:32,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:54:34,537.537 INFO    ] ================================================
[2026-08-25 23:54:34,553.553 INFO    ] Launching Daemon at Tue Aug 25 23:54:34 IST 2026
[2026-08-25 23:54:34,564.564 INFO    ] ================================================
[2026-08-25 23:54:35,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:54:35
[2026-08-25 23:54:35,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:54:35,980.980 INFO    ] Initializing speech engine...
[2026-08-25 23:54:35,991.991 INFO    ] 2026-08-25 23:54:35
[2026-08-25 23:54:36,237.237 INFO    ] 2026-08-25 23:54:36
[2026-08-25 23:54:36,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:54:36,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:54:36,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:54:36,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:54:36,610.610 INFO    ] time= 25/08/2026 23:54:36
[2026-08-25 23:54:36,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:54:36,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:54:36,802.802 INFO    ] No existing commands found in stream
[2026-08-25 23:54:41,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:54:41,816.816 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-08-25 23:54:42,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:54:42,815.815 INFO    ] Checking for system updates...
[2026-08-25 23:54:42,850.850 INFO    ] 200
[2026-08-25 23:54:42,852.852 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:42,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:42,910.910 INFO    ] No update needed
[2026-08-25 23:54:42,913.913 INFO    ] Checking for camera pi updates...
[2026-08-25 23:54:42,949.949 INFO    ] 200
[2026-08-25 23:54:42,952.952 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:42,992.992 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:54:43,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:43,045.045 INFO    ] No camera update needed
[2026-08-25 23:54:43,048.048 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:54:43,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:54:43,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:54:43,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:54:45,101.101 INFO    ] ================================================
[2026-08-25 23:54:45,117.117 INFO    ] Launching Daemon at Tue Aug 25 23:54:45 IST 2026
[2026-08-25 23:54:45,128.128 INFO    ] ================================================
[2026-08-25 23:54:45,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:54:45
[2026-08-25 23:54:46,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:54:46,550.550 INFO    ] Initializing speech engine...
[2026-08-25 23:54:46,559.559 INFO    ] 2026-08-25 23:54:46
[2026-08-25 23:54:46,818.818 INFO    ] 2026-08-25 23:54:46
[2026-08-25 23:54:46,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:54:47,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:54:47,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:54:47,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:54:47,309.309 INFO    ] time= 25/08/2026 23:54:47
[2026-08-25 23:54:47,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:54:47,372.372 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:54:47,507.507 INFO    ] No existing commands found in stream
[2026-08-25 23:54:52,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:54:52,531.531 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-08-25 23:54:56,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:54:56,672.672 INFO    ] Checking for system updates...
[2026-08-25 23:54:56,707.707 INFO    ] 200
[2026-08-25 23:54:56,710.710 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:56,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:56,766.766 INFO    ] No update needed
[2026-08-25 23:54:56,768.768 INFO    ] Checking for camera pi updates...
[2026-08-25 23:54:56,801.801 INFO    ] 200
[2026-08-25 23:54:56,803.803 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:54:56,843.843 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:54:56,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:54:56,893.893 INFO    ] No camera update needed
[2026-08-25 23:54:56,895.895 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:54:56,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:54:56,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:54:56,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:54:58,948.948 INFO    ] ================================================
[2026-08-25 23:54:58,963.963 INFO    ] Launching Daemon at Tue Aug 25 23:54:58 IST 2026
[2026-08-25 23:54:58,975.975 INFO    ] ================================================
[2026-08-25 23:54:59,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:54:59
[2026-08-25 23:55:00,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:55:00,534.534 INFO    ] Initializing speech engine...
[2026-08-25 23:55:00,545.545 INFO    ] 2026-08-25 23:55:00
[2026-08-25 23:55:00,853.853 INFO    ] 2026-08-25 23:55:00
[2026-08-25 23:55:00,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:55:01,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:55:01,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:55:01,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:55:01,357.357 INFO    ] time= 25/08/2026 23:55:01
[2026-08-25 23:55:01,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:55:01,405.405 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:55:01,513.513 INFO    ] No existing commands found in stream
[2026-08-25 23:55:06,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:55:06,558.558 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-08-25 23:55:09,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:55:09,156.156 INFO    ] Checking for system updates...
[2026-08-25 23:55:09,192.192 INFO    ] 200
[2026-08-25 23:55:09,194.194 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:09,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:55:09,256.256 INFO    ] No update needed
[2026-08-25 23:55:09,258.258 INFO    ] Checking for camera pi updates...
[2026-08-25 23:55:09,292.292 INFO    ] 200
[2026-08-25 23:55:09,295.295 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:09,335.335 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:55:09,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:55:09,382.382 INFO    ] No camera update needed
[2026-08-25 23:55:09,385.385 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:55:09,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:55:09,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:55:09,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:55:11,438.438 INFO    ] ================================================
[2026-08-25 23:55:11,454.454 INFO    ] Launching Daemon at Tue Aug 25 23:55:11 IST 2026
[2026-08-25 23:55:11,465.465 INFO    ] ================================================
[2026-08-25 23:55:12,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:55:12
[2026-08-25 23:55:12,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:55:12,887.887 INFO    ] Initializing speech engine...
[2026-08-25 23:55:12,894.894 INFO    ] 2026-08-25 23:55:12
[2026-08-25 23:55:13,188.188 INFO    ] 2026-08-25 23:55:13
[2026-08-25 23:55:13,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:55:13,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:55:13,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:55:13,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:55:13,584.584 INFO    ] time= 25/08/2026 23:55:13
[2026-08-25 23:55:13,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:55:13,615.615 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:55:13,692.692 INFO    ] No existing commands found in stream
[2026-08-25 23:55:18,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:55:18,708.708 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 23:55:21,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:55:21,512.512 INFO    ] Checking for system updates...
[2026-08-25 23:55:21,549.549 INFO    ] 200
[2026-08-25 23:55:21,551.551 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:21,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:55:21,616.616 INFO    ] No update needed
[2026-08-25 23:55:21,618.618 INFO    ] Checking for camera pi updates...
[2026-08-25 23:55:21,652.652 INFO    ] 200
[2026-08-25 23:55:21,655.655 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:21,697.697 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:55:21,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:55:21,848.848 INFO    ] No camera update needed
[2026-08-25 23:55:21,851.851 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:55:21,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:55:21,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:55:21,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:55:23,909.909 INFO    ] ================================================
[2026-08-25 23:55:23,925.925 INFO    ] Launching Daemon at Tue Aug 25 23:55:23 IST 2026
[2026-08-25 23:55:23,936.936 INFO    ] ================================================
[2026-08-25 23:55:24,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:55:24
[2026-08-25 23:55:25,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:55:25,390.390 INFO    ] Initializing speech engine...
[2026-08-25 23:55:25,408.408 INFO    ] 2026-08-25 23:55:25
[2026-08-25 23:55:25,684.684 INFO    ] 2026-08-25 23:55:25
[2026-08-25 23:55:25,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:55:25,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:55:25,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:55:26,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:55:26,065.065 INFO    ] time= 25/08/2026 23:55:26
[2026-08-25 23:55:26,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:55:26,106.106 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:55:26,188.188 INFO    ] No existing commands found in stream
[2026-08-25 23:55:31,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:55:31,204.204 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-08-25 23:55:35,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:55:35,356.356 INFO    ] Checking for system updates...
[2026-08-25 23:55:35,392.392 INFO    ] 200
[2026-08-25 23:55:35,394.394 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:35,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:55:35,450.450 INFO    ] No update needed
[2026-08-25 23:55:35,452.452 INFO    ] Checking for camera pi updates...
[2026-08-25 23:55:35,486.486 INFO    ] 200
[2026-08-25 23:55:35,489.489 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:35,534.534 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:55:35,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:55:35,582.582 INFO    ] No camera update needed
[2026-08-25 23:55:35,584.584 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:55:35,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:55:35,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:55:35,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:55:37,637.637 INFO    ] ================================================
[2026-08-25 23:55:37,652.652 INFO    ] Launching Daemon at Tue Aug 25 23:55:37 IST 2026
[2026-08-25 23:55:37,664.664 INFO    ] ================================================
[2026-08-25 23:55:38,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:55:38
[2026-08-25 23:55:38,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:55:39,298.298 INFO    ] Initializing speech engine...
[2026-08-25 23:55:39,305.305 INFO    ] 2026-08-25 23:55:39
[2026-08-25 23:55:39,579.579 INFO    ] 2026-08-25 23:55:39
[2026-08-25 23:55:39,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:55:39,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:55:39,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:55:40,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:55:40,074.074 INFO    ] time= 25/08/2026 23:55:40
[2026-08-25 23:55:40,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:55:40,158.158 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:55:40,270.270 INFO    ] No existing commands found in stream
[2026-08-25 23:55:45,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:55:45,302.302 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-08-25 23:55:48,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:55:48,468.468 INFO    ] Checking for system updates...
[2026-08-25 23:55:48,509.509 INFO    ] 200
[2026-08-25 23:55:48,512.512 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:48,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:55:48,568.568 INFO    ] No update needed
[2026-08-25 23:55:48,571.571 INFO    ] Checking for camera pi updates...
[2026-08-25 23:55:48,610.610 INFO    ] 200
[2026-08-25 23:55:48,612.612 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:55:48,654.654 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:55:48,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:55:48,700.700 INFO    ] No camera update needed
[2026-08-25 23:55:48,703.703 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:55:48,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:55:48,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:55:48,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:55:50,762.762 INFO    ] ================================================
[2026-08-25 23:55:50,777.777 INFO    ] Launching Daemon at Tue Aug 25 23:55:50 IST 2026
[2026-08-25 23:55:50,788.788 INFO    ] ================================================
[2026-08-25 23:55:51,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:55:51
[2026-08-25 23:55:51,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:55:52,237.237 INFO    ] Initializing speech engine...
[2026-08-25 23:55:52,262.262 INFO    ] 2026-08-25 23:55:52
[2026-08-25 23:55:52,540.540 INFO    ] 2026-08-25 23:55:52
[2026-08-25 23:55:52,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:55:52,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:55:52,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:55:52,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:55:52,927.927 INFO    ] time= 25/08/2026 23:55:52
[2026-08-25 23:55:52,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:55:52,956.956 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:55:53,052.052 INFO    ] No existing commands found in stream
[2026-08-25 23:55:58,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:55:58,068.068 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-08-25 23:56:00,666.666 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:56:00,669.669 INFO    ] Checking for system updates...
[2026-08-25 23:56:00,706.706 INFO    ] 200
[2026-08-25 23:56:00,709.709 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:00,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:56:00,766.766 INFO    ] No update needed
[2026-08-25 23:56:00,769.769 INFO    ] Checking for camera pi updates...
[2026-08-25 23:56:00,808.808 INFO    ] 200
[2026-08-25 23:56:00,810.810 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:00,855.855 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:56:00,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:56:00,913.913 INFO    ] No camera update needed
[2026-08-25 23:56:00,916.916 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:56:00,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:56:00,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:56:00,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:56:02,977.977 INFO    ] ================================================
[2026-08-25 23:56:03,997.997 INFO    ] Launching Daemon at Tue Aug 25 23:56:02 IST 2026
[2026-08-25 23:56:03,012.012 INFO    ] ================================================
[2026-08-25 23:56:03,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:56:03
[2026-08-25 23:56:04,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:56:04,520.520 INFO    ] Initializing speech engine...
[2026-08-25 23:56:04,540.540 INFO    ] 2026-08-25 23:56:04
[2026-08-25 23:56:04,792.792 INFO    ] 2026-08-25 23:56:04
[2026-08-25 23:56:04,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:56:05,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:56:05,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:56:05,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:56:05,169.169 INFO    ] time= 25/08/2026 23:56:05
[2026-08-25 23:56:05,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:56:05,198.198 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:56:05,343.343 INFO    ] No existing commands found in stream
[2026-08-25 23:56:10,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:56:10,377.377 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-08-25 23:56:12,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:56:12,999.999 INFO    ] Checking for system updates...
[2026-08-25 23:56:13,035.035 INFO    ] 200
[2026-08-25 23:56:13,037.037 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:13,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:56:13,092.092 INFO    ] No update needed
[2026-08-25 23:56:13,094.094 INFO    ] Checking for camera pi updates...
[2026-08-25 23:56:13,134.134 INFO    ] 200
[2026-08-25 23:56:13,137.137 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:13,177.177 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:56:13,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:56:13,225.225 INFO    ] No camera update needed
[2026-08-25 23:56:13,227.227 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:56:13,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:56:13,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:56:13,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:56:15,281.281 INFO    ] ================================================
[2026-08-25 23:56:15,296.296 INFO    ] Launching Daemon at Tue Aug 25 23:56:15 IST 2026
[2026-08-25 23:56:15,307.307 INFO    ] ================================================
[2026-08-25 23:56:15,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:56:15
[2026-08-25 23:56:16,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:56:16,778.778 INFO    ] Initializing speech engine...
[2026-08-25 23:56:16,787.787 INFO    ] 2026-08-25 23:56:16
[2026-08-25 23:56:17,058.058 INFO    ] 2026-08-25 23:56:17
[2026-08-25 23:56:17,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:56:17,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:56:17,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:56:17,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:56:17,446.446 INFO    ] time= 25/08/2026 23:56:17
[2026-08-25 23:56:17,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:56:17,488.488 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:56:17,571.571 INFO    ] No existing commands found in stream
[2026-08-25 23:56:22,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:56:22,584.584 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-08-25 23:56:25,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:56:25,476.476 INFO    ] Checking for system updates...
[2026-08-25 23:56:25,511.511 INFO    ] 200
[2026-08-25 23:56:25,513.513 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:25,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:56:25,568.568 INFO    ] No update needed
[2026-08-25 23:56:25,570.570 INFO    ] Checking for camera pi updates...
[2026-08-25 23:56:25,604.604 INFO    ] 200
[2026-08-25 23:56:25,607.607 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:25,647.647 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:56:25,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:56:25,705.705 INFO    ] No camera update needed
[2026-08-25 23:56:25,708.708 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:56:25,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:56:25,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:56:25,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:56:27,763.763 INFO    ] ================================================
[2026-08-25 23:56:27,778.778 INFO    ] Launching Daemon at Tue Aug 25 23:56:27 IST 2026
[2026-08-25 23:56:27,788.788 INFO    ] ================================================
[2026-08-25 23:56:28,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:56:28
[2026-08-25 23:56:29,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:56:29,430.430 INFO    ] Initializing speech engine...
[2026-08-25 23:56:29,438.438 INFO    ] 2026-08-25 23:56:29
[2026-08-25 23:56:29,731.731 INFO    ] 2026-08-25 23:56:29
[2026-08-25 23:56:29,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:56:29,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:56:30,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:56:30,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:56:30,178.178 INFO    ] time= 25/08/2026 23:56:30
[2026-08-25 23:56:30,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:56:30,270.270 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:56:30,420.420 INFO    ] No existing commands found in stream
[2026-08-25 23:56:35,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:56:35,439.439 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-08-25 23:56:37,694.694 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:56:37,697.697 INFO    ] Checking for system updates...
[2026-08-25 23:56:37,735.735 INFO    ] 200
[2026-08-25 23:56:37,738.738 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:37,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:56:37,797.797 INFO    ] No update needed
[2026-08-25 23:56:37,799.799 INFO    ] Checking for camera pi updates...
[2026-08-25 23:56:37,833.833 INFO    ] 200
[2026-08-25 23:56:37,836.836 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:37,876.876 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:56:37,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:56:37,927.927 INFO    ] No camera update needed
[2026-08-25 23:56:37,929.929 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:56:37,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:56:37,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:56:37,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:56:39,981.981 INFO    ] ================================================
[2026-08-25 23:56:40,996.996 INFO    ] Launching Daemon at Tue Aug 25 23:56:39 IST 2026
[2026-08-25 23:56:40,007.007 INFO    ] ================================================
[2026-08-25 23:56:40,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:56:40
[2026-08-25 23:56:41,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:56:41,659.659 INFO    ] Initializing speech engine...
[2026-08-25 23:56:41,672.672 INFO    ] 2026-08-25 23:56:41
[2026-08-25 23:56:41,986.986 INFO    ] 2026-08-25 23:56:41
[2026-08-25 23:56:42,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:56:42,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:56:42,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:56:42,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:56:42,494.494 INFO    ] time= 25/08/2026 23:56:42
[2026-08-25 23:56:42,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:56:42,519.519 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:56:42,644.644 INFO    ] No existing commands found in stream
[2026-08-25 23:56:47,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:56:47,669.669 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-08-25 23:56:49,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:56:49,929.929 INFO    ] Checking for system updates...
[2026-08-25 23:56:49,966.966 INFO    ] 200
[2026-08-25 23:56:49,969.969 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:50,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:56:50,023.023 INFO    ] No update needed
[2026-08-25 23:56:50,026.026 INFO    ] Checking for camera pi updates...
[2026-08-25 23:56:50,059.059 INFO    ] 200
[2026-08-25 23:56:50,062.062 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:56:50,113.113 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:56:50,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:56:50,170.170 INFO    ] No camera update needed
[2026-08-25 23:56:50,172.172 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:56:50,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:56:50,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:56:50,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:56:52,224.224 INFO    ] ================================================
[2026-08-25 23:56:52,239.239 INFO    ] Launching Daemon at Tue Aug 25 23:56:52 IST 2026
[2026-08-25 23:56:52,250.250 INFO    ] ================================================
[2026-08-25 23:56:52,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:56:52
[2026-08-25 23:56:53,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:56:53,648.648 INFO    ] Initializing speech engine...
[2026-08-25 23:56:53,660.660 INFO    ] 2026-08-25 23:56:53
[2026-08-25 23:56:53,922.922 INFO    ] 2026-08-25 23:56:53
[2026-08-25 23:56:53,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:56:54,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:56:54,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:56:54,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:56:54,272.272 INFO    ] time= 25/08/2026 23:56:54
[2026-08-25 23:56:54,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:56:54,314.314 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:56:54,398.398 INFO    ] No existing commands found in stream
[2026-08-25 23:56:59,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:56:59,413.413 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-08-25 23:57:01,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:57:01,322.322 INFO    ] Checking for system updates...
[2026-08-25 23:57:01,357.357 INFO    ] 200
[2026-08-25 23:57:01,360.360 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:01,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:57:01,413.413 INFO    ] No update needed
[2026-08-25 23:57:01,416.416 INFO    ] Checking for camera pi updates...
[2026-08-25 23:57:01,449.449 INFO    ] 200
[2026-08-25 23:57:01,451.451 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:01,491.491 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:57:01,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:57:01,539.539 INFO    ] No camera update needed
[2026-08-25 23:57:01,541.541 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:57:01,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:57:01,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:57:01,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:57:03,596.596 INFO    ] ================================================
[2026-08-25 23:57:03,611.611 INFO    ] Launching Daemon at Tue Aug 25 23:57:03 IST 2026
[2026-08-25 23:57:03,621.621 INFO    ] ================================================
[2026-08-25 23:57:04,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:57:04
[2026-08-25 23:57:04,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:57:05,024.024 INFO    ] Initializing speech engine...
[2026-08-25 23:57:05,032.032 INFO    ] 2026-08-25 23:57:05
[2026-08-25 23:57:05,307.307 INFO    ] 2026-08-25 23:57:05
[2026-08-25 23:57:05,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:57:05,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:57:05,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:57:05,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:57:05,747.747 INFO    ] time= 25/08/2026 23:57:05
[2026-08-25 23:57:05,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:57:05,808.808 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:57:05,930.930 INFO    ] No existing commands found in stream
[2026-08-25 23:57:10,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:57:10,945.945 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-08-25 23:57:12,512.512 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:57:12,515.515 INFO    ] Checking for system updates...
[2026-08-25 23:57:12,552.552 INFO    ] 200
[2026-08-25 23:57:12,554.554 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:12,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:57:12,610.610 INFO    ] No update needed
[2026-08-25 23:57:12,612.612 INFO    ] Checking for camera pi updates...
[2026-08-25 23:57:12,646.646 INFO    ] 200
[2026-08-25 23:57:12,649.649 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:12,693.693 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:57:12,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:57:12,745.745 INFO    ] No camera update needed
[2026-08-25 23:57:12,747.747 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:57:12,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:57:12,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:57:12,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:57:14,799.799 INFO    ] ================================================
[2026-08-25 23:57:14,814.814 INFO    ] Launching Daemon at Tue Aug 25 23:57:14 IST 2026
[2026-08-25 23:57:14,825.825 INFO    ] ================================================
[2026-08-25 23:57:15,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:57:15
[2026-08-25 23:57:16,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:57:16,452.452 INFO    ] Initializing speech engine...
[2026-08-25 23:57:16,460.460 INFO    ] 2026-08-25 23:57:16
[2026-08-25 23:57:16,778.778 INFO    ] 2026-08-25 23:57:16
[2026-08-25 23:57:16,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:57:17,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:57:17,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:57:17,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:57:17,289.289 INFO    ] time= 25/08/2026 23:57:17
[2026-08-25 23:57:17,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:57:17,343.343 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:57:17,456.456 INFO    ] No existing commands found in stream
[2026-08-25 23:57:22,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:57:22,484.484 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-08-25 23:57:25,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:57:25,639.639 INFO    ] Checking for system updates...
[2026-08-25 23:57:25,676.676 INFO    ] 200
[2026-08-25 23:57:25,679.679 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:25,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:57:25,741.741 INFO    ] No update needed
[2026-08-25 23:57:25,743.743 INFO    ] Checking for camera pi updates...
[2026-08-25 23:57:25,785.785 INFO    ] 200
[2026-08-25 23:57:25,788.788 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:25,831.831 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:57:25,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:57:25,981.981 INFO    ] No camera update needed
[2026-08-25 23:57:25,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:57:25,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:57:25,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:57:25,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:57:28,036.036 INFO    ] ================================================
[2026-08-25 23:57:28,051.051 INFO    ] Launching Daemon at Tue Aug 25 23:57:28 IST 2026
[2026-08-25 23:57:28,062.062 INFO    ] ================================================
[2026-08-25 23:57:28,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:57:28
[2026-08-25 23:57:29,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:57:29,503.503 INFO    ] Initializing speech engine...
[2026-08-25 23:57:29,521.521 INFO    ] 2026-08-25 23:57:29
[2026-08-25 23:57:29,770.770 INFO    ] 2026-08-25 23:57:29
[2026-08-25 23:57:29,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:57:30,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:57:30,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:57:30,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:57:30,234.234 INFO    ] time= 25/08/2026 23:57:30
[2026-08-25 23:57:30,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:57:30,330.330 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:57:30,457.457 INFO    ] No existing commands found in stream
[2026-08-25 23:57:35,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:57:35,487.487 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-08-25 23:57:38,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:57:38,300.300 INFO    ] Checking for system updates...
[2026-08-25 23:57:38,336.336 INFO    ] 200
[2026-08-25 23:57:38,338.338 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:38,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:57:38,393.393 INFO    ] No update needed
[2026-08-25 23:57:38,396.396 INFO    ] Checking for camera pi updates...
[2026-08-25 23:57:38,433.433 INFO    ] 200
[2026-08-25 23:57:38,436.436 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:38,480.480 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:57:38,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:57:38,527.527 INFO    ] No camera update needed
[2026-08-25 23:57:38,529.529 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:57:38,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:57:38,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:57:38,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:57:40,582.582 INFO    ] ================================================
[2026-08-25 23:57:40,603.603 INFO    ] Launching Daemon at Tue Aug 25 23:57:40 IST 2026
[2026-08-25 23:57:40,613.613 INFO    ] ================================================
[2026-08-25 23:57:41,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:57:41
[2026-08-25 23:57:41,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:57:42,023.023 INFO    ] Initializing speech engine...
[2026-08-25 23:57:42,044.044 INFO    ] 2026-08-25 23:57:42
[2026-08-25 23:57:42,304.304 INFO    ] 2026-08-25 23:57:42
[2026-08-25 23:57:42,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:57:42,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:57:42,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:57:42,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:57:42,680.680 INFO    ] time= 25/08/2026 23:57:42
[2026-08-25 23:57:42,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:57:42,718.718 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:57:42,847.847 INFO    ] No existing commands found in stream
[2026-08-25 23:57:47,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:57:47,870.870 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-08-25 23:57:50,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:57:50,645.645 INFO    ] Checking for system updates...
[2026-08-25 23:57:50,684.684 INFO    ] 200
[2026-08-25 23:57:50,686.686 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:50,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:57:50,742.742 INFO    ] No update needed
[2026-08-25 23:57:50,744.744 INFO    ] Checking for camera pi updates...
[2026-08-25 23:57:50,778.778 INFO    ] 200
[2026-08-25 23:57:50,780.780 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:57:50,821.821 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:57:50,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:57:50,880.880 INFO    ] No camera update needed
[2026-08-25 23:57:50,882.882 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:57:50,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:57:50,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:57:50,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:57:52,934.934 INFO    ] ================================================
[2026-08-25 23:57:52,949.949 INFO    ] Launching Daemon at Tue Aug 25 23:57:52 IST 2026
[2026-08-25 23:57:52,960.960 INFO    ] ================================================
[2026-08-25 23:57:53,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:57:53
[2026-08-25 23:57:54,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:57:54,369.369 INFO    ] Initializing speech engine...
[2026-08-25 23:57:54,375.375 INFO    ] 2026-08-25 23:57:54
[2026-08-25 23:57:54,670.670 INFO    ] 2026-08-25 23:57:54
[2026-08-25 23:57:54,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:57:54,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:57:54,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:57:55,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:57:55,062.062 INFO    ] time= 25/08/2026 23:57:55
[2026-08-25 23:57:55,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:57:55,097.097 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:57:55,175.175 INFO    ] No existing commands found in stream
[2026-08-25 23:58:00,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:58:00,212.212 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-08-25 23:58:04,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:58:04,629.629 INFO    ] Checking for system updates...
[2026-08-25 23:58:04,669.669 INFO    ] 200
[2026-08-25 23:58:04,671.671 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:04,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:04,727.727 INFO    ] No update needed
[2026-08-25 23:58:04,729.729 INFO    ] Checking for camera pi updates...
[2026-08-25 23:58:04,764.764 INFO    ] 200
[2026-08-25 23:58:04,766.766 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:04,806.806 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:58:04,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:04,866.866 INFO    ] No camera update needed
[2026-08-25 23:58:04,868.868 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:58:04,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:58:04,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:58:04,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:58:06,920.920 INFO    ] ================================================
[2026-08-25 23:58:06,935.935 INFO    ] Launching Daemon at Tue Aug 25 23:58:06 IST 2026
[2026-08-25 23:58:06,945.945 INFO    ] ================================================
[2026-08-25 23:58:07,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:58:07
[2026-08-25 23:58:08,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:58:08,398.398 INFO    ] Initializing speech engine...
[2026-08-25 23:58:08,412.412 INFO    ] 2026-08-25 23:58:08
[2026-08-25 23:58:08,702.702 INFO    ] 2026-08-25 23:58:08
[2026-08-25 23:58:08,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:58:08,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:58:08,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:58:09,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:58:09,129.129 INFO    ] time= 25/08/2026 23:58:09
[2026-08-25 23:58:09,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:58:09,140.140 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:58:09,217.217 INFO    ] No existing commands found in stream
[2026-08-25 23:58:14,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:58:14,235.235 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-08-25 23:58:15,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:58:15,745.745 INFO    ] Checking for system updates...
[2026-08-25 23:58:15,781.781 INFO    ] 200
[2026-08-25 23:58:15,783.783 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:15,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:58:15,847.847 INFO    ] No update needed
[2026-08-25 23:58:15,849.849 INFO    ] Checking for camera pi updates...
[2026-08-25 23:58:15,886.886 INFO    ] 200
[2026-08-25 23:58:15,889.889 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:15,929.929 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:58:15,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:58:15,981.981 INFO    ] No camera update needed
[2026-08-25 23:58:15,983.983 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:58:15,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:58:15,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:58:15,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:58:18,035.035 INFO    ] ================================================
[2026-08-25 23:58:18,051.051 INFO    ] Launching Daemon at Tue Aug 25 23:58:18 IST 2026
[2026-08-25 23:58:18,061.061 INFO    ] ================================================
[2026-08-25 23:58:18,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:58:18
[2026-08-25 23:58:19,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:58:19,506.506 INFO    ] Initializing speech engine...
[2026-08-25 23:58:19,515.515 INFO    ] 2026-08-25 23:58:19
[2026-08-25 23:58:19,773.773 INFO    ] 2026-08-25 23:58:19
[2026-08-25 23:58:19,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:58:20,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:58:20,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:58:20,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:58:20,261.261 INFO    ] time= 25/08/2026 23:58:20
[2026-08-25 23:58:20,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:58:20,325.325 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:58:20,450.450 INFO    ] No existing commands found in stream
[2026-08-25 23:58:25,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:58:25,479.479 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-08-25 23:58:26,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:58:26,074.074 INFO    ] Checking for system updates...
[2026-08-25 23:58:26,112.112 INFO    ] 200
[2026-08-25 23:58:26,115.115 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:26,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:26,171.171 INFO    ] No update needed
[2026-08-25 23:58:26,174.174 INFO    ] Checking for camera pi updates...
[2026-08-25 23:58:26,208.208 INFO    ] 200
[2026-08-25 23:58:26,211.211 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:26,256.256 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:58:26,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:26,312.312 INFO    ] No camera update needed
[2026-08-25 23:58:26,314.314 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:58:26,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:58:26,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:58:26,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:58:28,367.367 INFO    ] ================================================
[2026-08-25 23:58:28,382.382 INFO    ] Launching Daemon at Tue Aug 25 23:58:28 IST 2026
[2026-08-25 23:58:28,392.392 INFO    ] ================================================
[2026-08-25 23:58:28,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:58:28
[2026-08-25 23:58:29,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:58:29,849.849 INFO    ] Initializing speech engine...
[2026-08-25 23:58:29,858.858 INFO    ] 2026-08-25 23:58:29
[2026-08-25 23:58:30,121.121 INFO    ] 2026-08-25 23:58:30
[2026-08-25 23:58:30,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:58:30,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:58:30,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:58:30,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:58:30,576.576 INFO    ] time= 25/08/2026 23:58:30
[2026-08-25 23:58:30,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:58:30,675.675 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:58:30,788.788 INFO    ] No existing commands found in stream
[2026-08-25 23:58:35,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:58:35,818.818 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-08-25 23:58:38,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:58:38,128.128 INFO    ] Checking for system updates...
[2026-08-25 23:58:38,166.166 INFO    ] 200
[2026-08-25 23:58:38,169.169 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:38,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:38,234.234 INFO    ] No update needed
[2026-08-25 23:58:38,236.236 INFO    ] Checking for camera pi updates...
[2026-08-25 23:58:38,275.275 INFO    ] 200
[2026-08-25 23:58:38,278.278 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:38,319.319 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:58:38,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:38,363.363 INFO    ] No camera update needed
[2026-08-25 23:58:38,366.366 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:58:38,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:58:38,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:58:38,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:58:40,419.419 INFO    ] ================================================
[2026-08-25 23:58:40,434.434 INFO    ] Launching Daemon at Tue Aug 25 23:58:40 IST 2026
[2026-08-25 23:58:40,444.444 INFO    ] ================================================
[2026-08-25 23:58:41,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:58:41
[2026-08-25 23:58:41,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:58:41,890.890 INFO    ] Initializing speech engine...
[2026-08-25 23:58:41,897.897 INFO    ] 2026-08-25 23:58:41
[2026-08-25 23:58:42,158.158 INFO    ] 2026-08-25 23:58:42
[2026-08-25 23:58:42,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:58:42,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:58:42,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:58:42,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:58:42,626.626 INFO    ] time= 25/08/2026 23:58:42
[2026-08-25 23:58:42,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:58:42,708.708 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:58:42,853.853 INFO    ] No existing commands found in stream
[2026-08-25 23:58:47,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:58:47,871.871 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-08-25 23:58:50,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-08-25 23:58:50,248.248 INFO    ] Checking for system updates...
[2026-08-25 23:58:50,283.283 INFO    ] 200
[2026-08-25 23:58:50,286.286 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:50,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:50,340.340 INFO    ] No update needed
[2026-08-25 23:58:50,342.342 INFO    ] Checking for camera pi updates...
[2026-08-25 23:58:50,380.380 INFO    ] 200
[2026-08-25 23:58:50,383.383 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:58:50,429.429 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:58:50,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:58:50,479.479 INFO    ] No camera update needed
[2026-08-25 23:58:50,481.481 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:58:50,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:58:50,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:58:50,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:58:52,535.535 INFO    ] ================================================
[2026-08-25 23:58:52,550.550 INFO    ] Launching Daemon at Tue Aug 25 23:58:52 IST 2026
[2026-08-25 23:58:52,560.560 INFO    ] ================================================
[2026-08-25 23:58:53,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:58:53
[2026-08-25 23:58:53,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:58:54,011.011 INFO    ] Initializing speech engine...
[2026-08-25 23:58:54,020.020 INFO    ] 2026-08-25 23:58:54
[2026-08-25 23:58:54,282.282 INFO    ] 2026-08-25 23:58:54
[2026-08-25 23:58:54,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:58:54,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:58:54,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:58:54,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:58:54,765.765 INFO    ] time= 25/08/2026 23:58:54
[2026-08-25 23:58:54,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:58:54,834.834 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:58:54,979.979 INFO    ] No existing commands found in stream
[2026-08-25 23:58:59,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:59:00,001.001 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-08-25 23:59:01,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-08-25 23:59:01,126.126 INFO    ] Checking for system updates...
[2026-08-25 23:59:01,163.163 INFO    ] 200
[2026-08-25 23:59:01,166.166 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:01,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:59:01,224.224 INFO    ] No update needed
[2026-08-25 23:59:01,227.227 INFO    ] Checking for camera pi updates...
[2026-08-25 23:59:01,262.262 INFO    ] 200
[2026-08-25 23:59:01,264.264 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:01,306.306 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:59:01,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:59:01,367.367 INFO    ] No camera update needed
[2026-08-25 23:59:01,369.369 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:59:01,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:59:01,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:59:01,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:59:03,432.432 INFO    ] ================================================
[2026-08-25 23:59:03,448.448 INFO    ] Launching Daemon at Tue Aug 25 23:59:03 IST 2026
[2026-08-25 23:59:03,459.459 INFO    ] ================================================
[2026-08-25 23:59:04,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:59:04
[2026-08-25 23:59:04,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:59:04,966.966 INFO    ] Initializing speech engine...
[2026-08-25 23:59:04,975.975 INFO    ] 2026-08-25 23:59:04
[2026-08-25 23:59:05,286.286 INFO    ] 2026-08-25 23:59:05
[2026-08-25 23:59:05,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:59:05,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:59:05,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:59:05,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:59:05,813.813 INFO    ] time= 25/08/2026 23:59:05
[2026-08-25 23:59:05,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:59:05,862.862 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:59:05,976.976 INFO    ] No existing commands found in stream
[2026-08-25 23:59:11,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:59:11,006.006 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-08-25 23:59:13,097.097 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-08-25 23:59:13,100.100 INFO    ] Checking for system updates...
[2026-08-25 23:59:13,138.138 INFO    ] 200
[2026-08-25 23:59:13,141.141 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:13,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:59:13,203.203 INFO    ] No update needed
[2026-08-25 23:59:13,205.205 INFO    ] Checking for camera pi updates...
[2026-08-25 23:59:13,244.244 INFO    ] 200
[2026-08-25 23:59:13,246.246 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:13,288.288 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:59:13,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:59:13,341.341 INFO    ] No camera update needed
[2026-08-25 23:59:13,343.343 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:59:13,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:59:13,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:59:13,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:59:15,396.396 INFO    ] ================================================
[2026-08-25 23:59:15,412.412 INFO    ] Launching Daemon at Tue Aug 25 23:59:15 IST 2026
[2026-08-25 23:59:15,422.422 INFO    ] ================================================
[2026-08-25 23:59:16,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:59:16
[2026-08-25 23:59:16,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:59:17,049.049 INFO    ] Initializing speech engine...
[2026-08-25 23:59:17,059.059 INFO    ] 2026-08-25 23:59:17
[2026-08-25 23:59:17,335.335 INFO    ] 2026-08-25 23:59:17
[2026-08-25 23:59:17,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:59:17,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:59:17,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:59:17,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:59:17,885.885 INFO    ] time= 25/08/2026 23:59:17
[2026-08-25 23:59:17,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:59:17,917.917 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:59:18,053.053 INFO    ] No existing commands found in stream
[2026-08-25 23:59:23,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:59:23,077.077 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-08-25 23:59:25,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-08-25 23:59:25,218.218 INFO    ] Checking for system updates...
[2026-08-25 23:59:25,254.254 INFO    ] 200
[2026-08-25 23:59:25,257.257 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:25,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:59:25,318.318 INFO    ] No update needed
[2026-08-25 23:59:25,320.320 INFO    ] Checking for camera pi updates...
[2026-08-25 23:59:25,357.357 INFO    ] 200
[2026-08-25 23:59:25,359.359 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:25,400.400 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:59:25,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:59:25,458.458 INFO    ] No camera update needed
[2026-08-25 23:59:25,460.460 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:59:25,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:59:25,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:59:25,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:59:27,511.511 INFO    ] ================================================
[2026-08-25 23:59:27,527.527 INFO    ] Launching Daemon at Tue Aug 25 23:59:27 IST 2026
[2026-08-25 23:59:27,537.537 INFO    ] ================================================
[2026-08-25 23:59:28,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:59:28
[2026-08-25 23:59:28,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:59:28,949.949 INFO    ] Initializing speech engine...
[2026-08-25 23:59:28,967.967 INFO    ] 2026-08-25 23:59:28
[2026-08-25 23:59:29,220.220 INFO    ] 2026-08-25 23:59:29
[2026-08-25 23:59:29,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:59:29,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:59:29,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:59:29,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:59:29,579.579 INFO    ] time= 25/08/2026 23:59:29
[2026-08-25 23:59:29,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:59:29,601.601 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:59:29,703.703 INFO    ] No existing commands found in stream
[2026-08-25 23:59:34,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:59:34,736.736 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-08-25 23:59:36,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:59:36,396.396 INFO    ] Checking for system updates...
[2026-08-25 23:59:36,432.432 INFO    ] 200
[2026-08-25 23:59:36,435.435 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:36,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:59:36,489.489 INFO    ] No update needed
[2026-08-25 23:59:36,492.492 INFO    ] Checking for camera pi updates...
[2026-08-25 23:59:36,525.525 INFO    ] 200
[2026-08-25 23:59:36,528.528 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:36,573.573 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:59:36,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-08-25 23:59:36,624.624 INFO    ] No camera update needed
[2026-08-25 23:59:36,626.626 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:59:36,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:59:36,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:59:36,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:59:38,680.680 INFO    ] ================================================
[2026-08-25 23:59:38,694.694 INFO    ] Launching Daemon at Tue Aug 25 23:59:38 IST 2026
[2026-08-25 23:59:38,705.705 INFO    ] ================================================
[2026-08-25 23:59:39,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:59:39
[2026-08-25 23:59:39,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:59:40,111.111 INFO    ] Initializing speech engine...
[2026-08-25 23:59:40,118.118 INFO    ] 2026-08-25 23:59:40
[2026-08-25 23:59:40,415.415 INFO    ] 2026-08-25 23:59:40
[2026-08-25 23:59:40,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:59:40,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:59:40,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:59:40,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:59:40,840.840 INFO    ] time= 25/08/2026 23:59:40
[2026-08-25 23:59:40,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:59:40,861.861 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:59:41,000.000 INFO    ] No existing commands found in stream
[2026-08-25 23:59:46,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:59:46,033.033 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-08-25 23:59:46,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-08-25 23:59:46,565.565 INFO    ] Checking for system updates...
[2026-08-25 23:59:46,601.601 INFO    ] 200
[2026-08-25 23:59:46,603.603 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:46,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:59:46,658.658 INFO    ] No update needed
[2026-08-25 23:59:46,661.661 INFO    ] Checking for camera pi updates...
[2026-08-25 23:59:46,698.698 INFO    ] 200
[2026-08-25 23:59:46,700.700 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:46,745.745 INFO    ] Camera IP: TMCAM03202401.local
[2026-08-25 23:59:46,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:59:46,791.791 INFO    ] No camera update needed
[2026-08-25 23:59:46,793.793 INFO    ] Script finished. Safe exiting...
[2026-08-25 23:59:46,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-08-25 23:59:46,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-08-25 23:59:46,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-08-25 23:59:48,845.845 INFO    ] ================================================
[2026-08-25 23:59:48,860.860 INFO    ] Launching Daemon at Tue Aug 25 23:59:48 IST 2026
[2026-08-25 23:59:48,870.870 INFO    ] ================================================
[2026-08-25 23:59:49,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-08-25 23:59:49
[2026-08-25 23:59:50,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-08-25 23:59:50,277.277 INFO    ] Initializing speech engine...
[2026-08-25 23:59:50,285.285 INFO    ] 2026-08-25 23:59:50
[2026-08-25 23:59:50,556.556 INFO    ] 2026-08-25 23:59:50
[2026-08-25 23:59:50,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-08-25 23:59:50,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-08-25 23:59:50,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-08-25 23:59:50,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-08-25 23:59:50,934.934 INFO    ] time= 25/08/2026 23:59:50
[2026-08-25 23:59:50,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM03202401
[2026-08-25 23:59:50,976.976 INFO    ] Checking for existing commands in stream...
[2026-08-25 23:59:51,119.119 INFO    ] No existing commands found in stream
[2026-08-25 23:59:56,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-08-25 23:59:56,147.147 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-08-25 23:59:59,823.823 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-08-25 23:59:59,826.826 INFO    ] Checking for system updates...
[2026-08-25 23:59:59,864.864 INFO    ] 200
[2026-08-25 23:59:59,867.867 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
[2026-08-25 23:59:59,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-08-25 23:59:59,928.928 INFO    ] No update needed
[2026-08-25 23:59:59,930.930 INFO    ] Checking for camera pi updates...
[2026-08-25 23:59:59,967.967 INFO    ] 200
[2026-08-25 23:59:59,970.970 INFO    ] {"state": "STATE_IDLE", "msg": "Status of machine", "status": true}
